import{n as e,r as t}from"./rolldown-runtime-C0FnF6B9.js";import{n}from"./iframe-GrlyTB2d.js";import{n as r,t as i}from"./useODataTreeData-BQfuMLsY.js";import{n as a,t as o}from"./TreeSelect-aSPP6LzM.js";import{a as s,c,i as l,l as u,n as d,o as f,s as p}from"./odataStoryFixtures-BH1suo55.js";function m({label:e,description:t,disabled:n,size:i,placeholder:a,query:s,defaultQuery:c,onQuery:l,value:u,onChange:d,odata:f,segments:p,model:m,clearable:g,defaultExpandedCodeKeys:_}){let v=r({odata:f,segments:p,model:m});return(0,h.jsx)(o,{label:e,description:t,disabled:n||v.isLoading,size:i,placeholder:a??v.placeholder,nodes:v.nodes,value:u,onChange:d,query:s,defaultQuery:c,onQuery:l,defaultExpandedCodeKeys:_,isLoading:v.isLoading,error:v.isError?`Ошибка загрузки`:void 0,clearable:g})}var h;function g(){return(g=e((()=>{i(),a(),h=n(),m.__docgenInfo={description:``,methods:[],displayName:`ODataTreeSelect`,props:{model:{required:!1,tsType:{name:`ODataDependentBaseProps["model"]`,raw:`ODataDependentBaseProps["model"]`},description:``},placeholder:{required:!1,tsType:{name:`string`},description:``},query:{required:!1,tsType:{name:`string`},description:``},defaultQuery:{required:!1,tsType:{name:`string`},description:``},onQuery:{required:!1,tsType:{name:`signature`,type:`function`,raw:`(value: string) => void`,signature:{arguments:[{type:{name:`string`},name:`value`}],return:{name:`void`}}},description:``},clearable:{required:!1,tsType:{name:`boolean`},description:``},defaultExpandedCodeKeys:{required:!1,tsType:{name:`unknown`},description:`Ключи OData-уровней, раскрываемых после появления загруженных узлов.
Настройка влияет только на представление и не изменяет OData-запросы.`}},composes:[`Omit`]}})))()}var _=t({Basic:()=>S,ErrorState:()=>E,LoadingState:()=>T,OnlySecondLevelExpanded:()=>w,SelectParent:()=>C,__namedExportsOrder:()=>D,default:()=>x});function v(e){let[,t]=b();return(0,y.jsxs)(`div`,{style:{display:`grid`,gap:12,maxWidth:520},children:[(0,y.jsx)(m,{...e,onChange:n=>{e.onChange(n),t({value:n})}}),(0,y.jsxs)(`div`,{style:{fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[`Текущее значение: `,e.value?`${e.value.codeKey}=${e.value.value}`:`пусто`]})]})}var y,b,x,S,C,w,T,E,D;function O(){return(O=e((()=>{l(),g(),y=n(),{useArgs:b}=__STORYBOOK_MODULE_PREVIEW_API__,x={title:`Shared/UI/ODataTreeSelect`,component:m,decorators:[u],beforeEach:s,parameters:{atomicCanvas:!0,layout:`padded`,odataMockMode:`success`},args:{label:`OData дерево`,description:`Single-select поверх одной OData-цепочки.`,odata:d,segments:c,value:void 0,onChange:()=>{}},argTypes:{label:{description:`Заголовок поля.`,control:`text`},description:{description:`Описание под полем.`,control:`text`},placeholder:{description:`Текст без выбранного узла.`,control:`text`},odata:{description:`Конфигурация OData-источника.`,control:!1},segments:{description:`Конфигурация уровней OData-дерева.`,control:!1},model:{description:`Опциональная модель OData-коллекции.`,control:!1},value:{description:`Выбранный узел в формате codeKey/value.`,control:!1},onChange:{description:`Вызывается при выборе узла.`,control:!1},query:{description:`Контролируемый текст поиска.`,control:`text`},defaultQuery:{description:`Начальный текст поиска в uncontrolled-режиме.`,control:`text`},onQuery:{description:`Вызывается при вводе поисковой строки.`,control:!1},clearable:{description:`Показывает действие очистки выбора.`,control:`boolean`},defaultExpandedCodeKeys:{description:`Ключи уровней, раскрываемых после загрузки.`,control:!1},disabled:{description:`Блокирует взаимодействие с полем.`,control:`boolean`},size:{description:`Размер поля и подписей.`,control:`select`,options:[`xs`,`sm`,`md`,`lg`,`xl`]}}},S={render:function(e){return(0,y.jsx)(v,{...e})},args:{value:{codeKey:`OWNER`,value:p.owner}}},C={render:function(e){return(0,y.jsx)(v,{...e})},args:{label:`Выбор родителя`,description:`Проверка выбора узла верхнего уровня из OData-дерева.`,value:{codeKey:`REGION`,value:p.region}}},w={render:function(e){return(0,y.jsx)(v,{...e})},args:{label:`Раскрывается только второй уровень`,description:`REGION остаётся закрытым. После его ручного открытия узлы BRANCH уже раскрыты по умолчанию.`,defaultExpandedCodeKeys:[`BRANCH`]}},T={parameters:{odataMockMode:`loading`},render:function(e){return(0,y.jsx)(v,{...e})},args:{odata:f.loading,description:`Сценарий загрузки дерева.`}},E={parameters:{odataMockMode:`metadataError`},render:function(e){return(0,y.jsx)(v,{...e})},args:{odata:f.metadataError,description:`Сценарий ошибки metadata дерева.`}},S.parameters={...S.parameters,docs:{...S.parameters?.docs,source:{originalSource:`{
  render: function Render(args) {
    return <ODataTreeSelectStoryCanvas {...args} />;
  },
  args: {
    value: {
      codeKey: "OWNER",
      value: storyValues.owner
    }
  }
}`,...S.parameters?.docs?.source}}},C.parameters={...C.parameters,docs:{...C.parameters?.docs,source:{originalSource:`{
  render: function Render(args) {
    return <ODataTreeSelectStoryCanvas {...args} />;
  },
  args: {
    label: "Выбор родителя",
    description: "Проверка выбора узла верхнего уровня из OData-дерева.",
    value: {
      codeKey: "REGION",
      value: storyValues.region
    }
  }
}`,...C.parameters?.docs?.source}}},w.parameters={...w.parameters,docs:{...w.parameters?.docs,source:{originalSource:`{
  render: function Render(args) {
    return <ODataTreeSelectStoryCanvas {...args} />;
  },
  args: {
    label: "Раскрывается только второй уровень",
    description: "REGION остаётся закрытым. После его ручного открытия узлы BRANCH уже раскрыты по умолчанию.",
    defaultExpandedCodeKeys: ["BRANCH"]
  }
}`,...w.parameters?.docs?.source}}},T.parameters={...T.parameters,docs:{...T.parameters?.docs,source:{originalSource:`{
  parameters: {
    odataMockMode: "loading"
  },
  render: function Render(args) {
    return <ODataTreeSelectStoryCanvas {...args} />;
  },
  args: {
    odata: odataStoryOData.loading,
    description: "Сценарий загрузки дерева."
  }
}`,...T.parameters?.docs?.source}}},E.parameters={...E.parameters,docs:{...E.parameters?.docs,source:{originalSource:`{
  parameters: {
    odataMockMode: "metadataError"
  },
  render: function Render(args) {
    return <ODataTreeSelectStoryCanvas {...args} />;
  },
  args: {
    odata: odataStoryOData.metadataError,
    description: "Сценарий ошибки metadata дерева."
  }
}`,...E.parameters?.docs?.source}}},D=[`Basic`,`SelectParent`,`OnlySecondLevelExpanded`,`LoadingState`,`ErrorState`]})))()}export{w as a,_ as i,E as n,C as o,T as r,O as s,S as t};