import{a as e,c as t,i as n}from"./preload-helper-B45gAKPr.js";import{pn as r,t as i}from"./iframe-CMLjY6eW.js";import{n as a,t as o}from"./TreeMultiSelect-Codlm2j5.js";import{n as s,t as c}from"./treeStoryFixtures-Cd984L7t.js";var l=e({BalancedColumns:()=>v,Basic:()=>h,MixedSelection:()=>_,ParentCompression:()=>g,RightEdgeColumns:()=>y,__namedExportsOrder:()=>b,default:()=>m});function u({initialValue:e={},label:t=`TreeMultiSelect`,description:n,optionsLayout:r=`tree`,nodes:i=c}){let[a,s]=(0,d.useState)(e);return(0,f.jsxs)(`div`,{style:{display:`grid`,gap:12,maxWidth:520},children:[(0,f.jsx)(o,{label:t,description:n,nodes:i,value:a,onChange:s,optionsLayout:r}),(0,f.jsxs)(`div`,{style:{fontSize:`var(--font-size-sm)`,color:`var(--content-1)`},children:[`Текущее значение: `,JSON.stringify(a)]})]})}var d,f,p,m,h,g,_,v,y,b,x=n((()=>{d=t(r(),1),a(),s(),f=i(),p=Array.from({length:66},(e,t)=>{let n=String(t+1).padStart(2,`0`),r=`D${n}`;return{id:`DIVISION:${r}`,codeKey:`DIVISION`,value:r,label:`Дивизион ${n}`,code:r,searchText:`${r} Дивизион ${n}`}}),m={title:`Shared/UI/TreeMultiSelect`,component:o,parameters:{atomicCanvas:!0,layout:`padded`},args:{label:`Выбор узлов`,description:`Мультивыбор с канонизацией subtree в ближайший parent.`,nodes:c,value:{},onChange:()=>{}},argTypes:{nodes:{control:!1},value:{control:!1},onChange:{control:!1}}},h={render:()=>(0,f.jsx)(u,{initialValue:{OWNER:[`P0001`]}})},g={render:()=>(0,f.jsx)(u,{label:`Компрессия parent`,description:`Когда выбран весь subtree, наружу может уйти только родительский узел.`,initialValue:{REGION:[`R01`]}})},_={render:()=>(0,f.jsx)(u,{label:`Смешанный выбор`,description:`Пример mixed frontier по соседним уровням.`,initialValue:{BRANCH:[`B0101`],OWNER:[`P0004`]}})},v={render:()=>(0,f.jsx)(u,{label:`Все уровни в столбцах`,description:`Popover подбирает число столбцов по количеству опций и доступному viewport.`,optionsLayout:`columns`,initialValue:{BRANCH:[`B0101`]}})},y={render:()=>(0,f.jsx)(`div`,{style:{display:`flex`,minHeight:`calc(100vh - 32px)`,alignItems:`center`,justifyContent:`flex-end`},children:(0,f.jsx)(`div`,{style:{width:260},children:(0,f.jsx)(u,{label:`Контрол у правой границы`,description:`Popover для 66 опций должен сравнить вертикальные и горизонтальные стороны и остаться внутри viewport.`,optionsLayout:`columns`,nodes:p})})})},h.parameters={...h.parameters,docs:{...h.parameters?.docs,source:{originalSource:`{
  render: () => <StatefulTreeMultiSelect initialValue={{
    OWNER: ["P0001"]
  }} />
}`,...h.parameters?.docs?.source}}},g.parameters={...g.parameters,docs:{...g.parameters?.docs,source:{originalSource:`{
  render: () => <StatefulTreeMultiSelect label="Компрессия parent" description="Когда выбран весь subtree, наружу может уйти только родительский узел." initialValue={{
    REGION: ["R01"]
  }} />
}`,...g.parameters?.docs?.source}}},_.parameters={..._.parameters,docs:{..._.parameters?.docs,source:{originalSource:`{
  render: () => <StatefulTreeMultiSelect label="Смешанный выбор" description="Пример mixed frontier по соседним уровням." initialValue={{
    BRANCH: ["B0101"],
    OWNER: ["P0004"]
  }} />
}`,..._.parameters?.docs?.source}}},v.parameters={...v.parameters,docs:{...v.parameters?.docs,source:{originalSource:`{
  render: () => <StatefulTreeMultiSelect label="Все уровни в столбцах" description="Popover подбирает число столбцов по количеству опций и доступному viewport." optionsLayout="columns" initialValue={{
    BRANCH: ["B0101"]
  }} />
}`,...v.parameters?.docs?.source}}},y.parameters={...y.parameters,docs:{...y.parameters?.docs,source:{originalSource:`{
  render: () => <div style={{
    display: "flex",
    minHeight: "calc(100vh - 32px)",
    alignItems: "center",
    justifyContent: "flex-end"
  }}>
            <div style={{
      width: 260
    }}>
                <StatefulTreeMultiSelect label="Контрол у правой границы" description="Popover для 66 опций должен сравнить вертикальные и горизонтальные стороны и остаться внутри viewport." optionsLayout="columns" nodes={rightEdgeTreeNodes} />
            </div>
        </div>
}`,...y.parameters?.docs?.source}}},b=[`Basic`,`ParentCompression`,`MixedSelection`,`BalancedColumns`,`RightEdgeColumns`]}));x();export{v as BalancedColumns,h as Basic,_ as MixedSelection,g as ParentCompression,y as RightEdgeColumns,b as __namedExportsOrder,m as default,x as n,l as t};