import{n as e,r as t}from"./rolldown-runtime-C0FnF6B9.js";import{n,t as r}from"./circle-check-CEAfOwEY.js";import{i,n as a,r as o,t as s}from"./info-DAnq7Q2v.js";import{n as c,t as l}from"./triangle-alert-BQEKW-L1.js";import{i as u,n as d,r as f}from"./iframe-GrlyTB2d.js";import{n as p,t as m}from"./StateSelect-DWIPmUIR.js";var h,g;function _(){return(_=e((()=>{u(),h=[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M8 12h8`,key:`1wcyev`}]],g=f(`circle-minus`,h)})))()}var v=t({Controlled:()=>C,PaletteOnly:()=>T,WithMeta:()=>w,__namedExportsOrder:()=>E,default:()=>S}),y,b,x,S,C,w,T,E;function D(){return(D=e((()=>{c(),n(),a(),_(),i(),p(),y=d(),{useArgs:b}=__STORYBOOK_MODULE_PREVIEW_API__,{fn:x}=__STORYBOOK_MODULE_TEST__,S={title:`Shared/UI/StateSelect`,component:m,args:{label:`Состояние`,description:`Выберите визуальный статус.`,placeholder:`Выберите значение`,value:`information`,onChange:x(),disabled:!1,size:`md`},parameters:{atomicCanvas:!0,layout:`padded`},argTypes:{label:{description:`Заголовок поля выбора состояния.`,control:`text`},description:{description:`Описание под заголовком.`,control:`text`},placeholder:{description:`Текст, когда значение не выбрано.`,control:`text`},value:{description:`Текущее состояние.`,control:`select`,options:[``,`none`,`information`,`success`,`warning`,`error`]},onChange:{description:`Вызывается при выборе состояния.`,control:!1},options:{description:`Кастомный набор доступных состояний.`,control:!1},stateMeta:{description:`Кастомные иконки и подписи для значений.`,control:!1},disabled:{description:`Блокирует взаимодействие с полем.`,control:`boolean`},clearable:{description:`Показывает действие очистки выбранного состояния.`,control:`boolean`},size:{description:`Размер поля и подписей.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},C={render:function(e){let[,t]=b();return(0,y.jsx)(m,{...e,value:e.value??`information`,onChange:n=>{e.onChange(n),t({value:n})}})}},w={render:function(e){let[,t]=b();return(0,y.jsx)(m,{...e,value:e.value??`warning`,onChange:n=>{e.onChange(n),t({value:n})},stateMeta:{none:{label:`Без статуса`,icon:(0,y.jsx)(g,{})},information:{label:`Инфо`,icon:(0,y.jsx)(s,{})},success:{label:`Успех`,icon:(0,y.jsx)(r,{})},warning:{label:`Предупреждение`,icon:(0,y.jsx)(l,{})},error:{label:`Ошибка`,icon:(0,y.jsx)(o,{})}}})},args:{value:`warning`}},T={render:function(e){let[,t]=b();return(0,y.jsx)(m,{...e,value:e.value??`none`,onChange:n=>{e.onChange(n),t({value:n})},options:[`none`,`success`,`error`]})},args:{options:[`none`,`success`,`error`],value:`none`}},C.parameters={...C.parameters,docs:{...C.parameters?.docs,source:{originalSource:`{
  render: function Render(args) {
    const [, updateArgs] = useArgs<StateSelectProps>();
    return <StateSelect {...args} value={args.value ?? "information"} onChange={value => {
      args.onChange(value);
      updateArgs({
        value
      });
    }} />;
  }
}`,...C.parameters?.docs?.source}}},w.parameters={...w.parameters,docs:{...w.parameters?.docs,source:{originalSource:`{
  render: function Render(args) {
    const [, updateArgs] = useArgs<StateSelectProps>();
    return <StateSelect {...args} value={args.value ?? "warning"} onChange={value => {
      args.onChange(value);
      updateArgs({
        value
      });
    }} stateMeta={{
      none: {
        label: "Без статуса",
        icon: <MinusCircleIcon />
      },
      information: {
        label: "Инфо",
        icon: <InfoIcon />
      },
      success: {
        label: "Успех",
        icon: <CheckCircle2Icon />
      },
      warning: {
        label: "Предупреждение",
        icon: <AlertTriangleIcon />
      },
      error: {
        label: "Ошибка",
        icon: <XCircleIcon />
      }
    }} />;
  },
  args: {
    value: "warning"
  }
}`,...w.parameters?.docs?.source}}},T.parameters={...T.parameters,docs:{...T.parameters?.docs,source:{originalSource:`{
  render: function Render(args) {
    const [, updateArgs] = useArgs<StateSelectProps>();
    return <StateSelect {...args} value={args.value ?? "none"} onChange={value => {
      args.onChange(value);
      updateArgs({
        value
      });
    }} options={["none", "success", "error"]} />;
  },
  args: {
    options: ["none", "success", "error"],
    value: "none"
  }
}`,...T.parameters?.docs?.source}}},E=[`Controlled`,`WithMeta`,`PaletteOnly`]})))()}export{D as a,w as i,T as n,v as r,C as t};