@pantograph/vue 0.30.7 → 0.30.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/ActionButton/ActionButton.d.ts +6 -6
  2. package/dist/Base/BaseButton/BaseButton.d.ts +1 -1
  3. package/dist/Button/Button.d.ts +6 -6
  4. package/dist/Chip/Chip.d.ts +1 -1
  5. package/dist/ChipGroup/ChipGroup.d.ts +1 -1
  6. package/dist/Combobox/Combobox.d.ts +18 -18
  7. package/dist/Combobox/index.js +95 -95
  8. package/dist/Combobox/index.umd.cjs +1 -1
  9. package/dist/Comment/CommentActions.d.ts +8 -8
  10. package/dist/Comment/CommentEditor.d.ts +16 -16
  11. package/dist/Comment/CommentMention.d.ts +34 -34
  12. package/dist/Comment/CommentReactions.d.ts +4 -4
  13. package/dist/Comment/index.js +2 -0
  14. package/dist/Comment/index.umd.cjs +1 -1
  15. package/dist/DataTable/DataTable.d.ts +7 -1
  16. package/dist/DataTable/components/DataTableHeaderCell.d.ts +6 -6
  17. package/dist/DataTable/index.js +908 -882
  18. package/dist/DataTable/index.umd.cjs +1 -1
  19. package/dist/DataTable/types/index.d.ts +6 -0
  20. package/dist/DataTable/utils/index.d.ts +1 -0
  21. package/dist/DataTable/utils/useCol.d.ts +1 -2
  22. package/dist/DataTable/utils/useRow.d.ts +9 -0
  23. package/dist/FloatButton/FloatButton.d.ts +6 -6
  24. package/dist/Form/Form.d.ts +1 -1
  25. package/dist/GOPicker/GOPicker.d.ts +4 -110
  26. package/dist/GOPicker/GOPicker.model.d.ts +26 -1
  27. package/dist/GOPicker/index.js +210 -185
  28. package/dist/GOPicker/index.umd.cjs +1 -1
  29. package/dist/IconButton/IconButton.d.ts +6 -6
  30. package/dist/Progress/Progress.d.ts +1 -1
  31. package/dist/Tree/Tree.d.ts +7 -6
  32. package/dist/Tree/Tree.model.d.ts +1 -1
  33. package/dist/Tree/index.js +1 -1
  34. package/dist/Tree/index.umd.cjs +1 -1
  35. package/dist/Tree/utils.d.ts +1 -1
  36. package/dist/Upload/Upload.d.ts +1 -1
  37. package/dist/index-CUuaEiq_.js +1 -0
  38. package/dist/index-_lrD3ofV.js +741 -0
  39. package/dist/index.js +1 -1
  40. package/dist/index.umd.cjs +1 -1
  41. package/dist/style/index.css +1 -1
  42. package/dist/use/index.js +2 -2
  43. package/dist/use/index.umd.cjs +1 -1
  44. package/package.json +2 -2
  45. package/dist/index-DBiL8Htz.js +0 -1
  46. package/dist/index-Y3XMSR_o.js +0 -740
@@ -99,8 +99,8 @@ declare function __VLS_template(): {
99
99
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
100
100
  click: (...args: any[]) => void;
101
101
  }, string, {
102
- color: import('..').ButtonColor;
103
102
  type: import('..').ButtonType;
103
+ color: import('..').ButtonColor;
104
104
  htmlType: "reset" | "submit" | "button";
105
105
  disabled: boolean;
106
106
  }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
@@ -124,13 +124,13 @@ declare function __VLS_template(): {
124
124
  $nextTick: typeof import('vue').nextTick;
125
125
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
126
126
  } & Readonly<{
127
- color: import('..').ButtonColor;
128
127
  type: import('..').ButtonType;
128
+ color: import('..').ButtonColor;
129
129
  htmlType: "reset" | "submit" | "button";
130
130
  disabled: boolean;
131
131
  }> & Omit<Readonly<BaseButtonProps> & Readonly<{
132
132
  onClick?: ((...args: any[]) => any) | undefined;
133
- }>, "blur" | "focus" | ("color" | "type" | "htmlType" | "disabled")> & import('vue').ShallowUnwrapRef<{
133
+ }>, "blur" | "focus" | ("type" | "color" | "htmlType" | "disabled")> & import('vue').ShallowUnwrapRef<{
134
134
  focus(): void;
135
135
  blur(): void;
136
136
  }> & {} & import('vue').ComponentCustomProperties & {} & {
@@ -238,8 +238,8 @@ declare const __VLS_component: import('vue').DefineComponent<Partial<Omit<BaseBu
238
238
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
239
239
  click: (...args: any[]) => void;
240
240
  }, string, {
241
- color: import('..').ButtonColor;
242
241
  type: import('..').ButtonType;
242
+ color: import('..').ButtonColor;
243
243
  htmlType: "reset" | "submit" | "button";
244
244
  disabled: boolean;
245
245
  }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
@@ -263,13 +263,13 @@ declare const __VLS_component: import('vue').DefineComponent<Partial<Omit<BaseBu
263
263
  $nextTick: typeof import('vue').nextTick;
264
264
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
265
265
  } & Readonly<{
266
- color: import('..').ButtonColor;
267
266
  type: import('..').ButtonType;
267
+ color: import('..').ButtonColor;
268
268
  htmlType: "reset" | "submit" | "button";
269
269
  disabled: boolean;
270
270
  }> & Omit<Readonly<BaseButtonProps> & Readonly<{
271
271
  onClick?: ((...args: any[]) => any) | undefined;
272
- }>, "blur" | "focus" | ("color" | "type" | "htmlType" | "disabled")> & import('vue').ShallowUnwrapRef<{
272
+ }>, "blur" | "focus" | ("type" | "color" | "htmlType" | "disabled")> & import('vue').ShallowUnwrapRef<{
273
273
  focus(): void;
274
274
  blur(): void;
275
275
  }> & {} & import('vue').ComponentCustomProperties & {} & {
@@ -7,9 +7,9 @@ declare function __VLS_template(): {
7
7
  };
8
8
  type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
9
9
  declare const __VLS_component: import('vue').DefineComponent<ProgressProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ProgressProps> & Readonly<{}>, {
10
- color: import('./Progress.model').ProgressColor;
11
10
  type: import('./Progress.model').ProgressType;
12
11
  size: import('./Progress.model').ProgressSize;
12
+ color: import('./Progress.model').ProgressColor;
13
13
  strokeLinecap: "butt" | "round" | "square";
14
14
  duration: number;
15
15
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
@@ -1,3 +1,4 @@
1
+ import { Ref } from 'vue';
1
2
  import { default as Sortable } from '@pantograph/sortable';
2
3
  import { TreeNodeType, TreeProps, TreeItem, TreeDragEvent, TreeSlots } from './Tree.model';
3
4
  declare function __VLS_template(): {
@@ -11,11 +12,11 @@ declare const __VLS_component: import('vue').DefineComponent<TreeProps, {
11
12
  disabled: import('vue').ComputedRef<boolean | undefined>;
12
13
  props: TreeProps;
13
14
  dir: import('vue').ComputedRef<import('..').Direction | undefined>;
14
- expandedKeys: import('vue').Ref<string[]>;
15
+ expandedKeys: Ref<string[] | undefined>;
15
16
  model: import('vue').WritableComputedRef<string[]>;
16
- checked: import('vue').Ref<string[]>;
17
- dragging: import('vue').Ref<boolean>;
18
- scrollContainerRef: import('vue').Ref<any>;
17
+ checked: Ref<string[]>;
18
+ dragging: Ref<boolean>;
19
+ scrollContainerRef: Ref<any>;
19
20
  onExpandKey: (node: TreeItem) => void;
20
21
  getLevel: (node: TreeItem) => number;
21
22
  getNodeField: <T>(node: object, field: keyof TreeNodeType) => T;
@@ -41,9 +42,9 @@ declare const __VLS_component: import('vue').DefineComponent<TreeProps, {
41
42
  }) => any;
42
43
  "update:modelValue": (value: string[]) => any;
43
44
  expand: (node: object | TreeNodeType, expanded: boolean) => any;
45
+ check: (node: object | TreeNodeType, checked: boolean, checkedKeys: string[]) => any;
44
46
  "update:expandedKeys": (value: string[]) => any;
45
47
  "update:checkedKeys": (value: string[]) => any;
46
- check: (node: object | TreeNodeType, checked: boolean, checkedKeys: string[]) => any;
47
48
  dragStart: (event: TreeDragEvent) => any;
48
49
  dragEnd: (event: TreeDragEvent) => any;
49
50
  choose: (event: Sortable.SortableEvent) => any;
@@ -56,9 +57,9 @@ declare const __VLS_component: import('vue').DefineComponent<TreeProps, {
56
57
  }) => any) | undefined;
57
58
  "onUpdate:modelValue"?: ((value: string[]) => any) | undefined;
58
59
  onExpand?: ((node: object | TreeNodeType, expanded: boolean) => any) | undefined;
60
+ onCheck?: ((node: object | TreeNodeType, checked: boolean, checkedKeys: string[]) => any) | undefined;
59
61
  "onUpdate:expandedKeys"?: ((value: string[]) => any) | undefined;
60
62
  "onUpdate:checkedKeys"?: ((value: string[]) => any) | undefined;
61
- onCheck?: ((node: object | TreeNodeType, checked: boolean, checkedKeys: string[]) => any) | undefined;
62
63
  onDragStart?: ((event: TreeDragEvent) => any) | undefined;
63
64
  onDragEnd?: ((event: TreeDragEvent) => any) | undefined;
64
65
  onChoose?: ((event: Sortable.SortableEvent) => any) | undefined;
@@ -118,7 +118,7 @@ export interface Context {
118
118
  disabled: ComputedRef<boolean | undefined>;
119
119
  props: TreeProps;
120
120
  dir: ComputedRef<Direction | undefined>;
121
- expandedKeys: Ref<string[]>;
121
+ expandedKeys: Ref<string[] | undefined>;
122
122
  model: WritableComputedRef<string[]>;
123
123
  checked: Ref<string[]>;
124
124
  dragging: Ref<boolean>;
@@ -1,4 +1,4 @@
1
- import { _ as o, T as t, a as T, b as i, c as p, d, _ as n, i as l, p as m } from "../index-Y3XMSR_o.js";
1
+ import { _ as o, T as t, a as T, b as i, c as p, d, _ as n, i as l, p as m } from "../index-_lrD3ofV.js";
2
2
  import "@pantograph/utils-vue";
3
3
  import "@pantograph/utils";
4
4
  export {
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../index-DBiL8Htz.js");require("@pantograph/utils-vue");require("@pantograph/utils");exports.Tree=e._sfc_main;exports.TreeGaps=e.TreeGaps;exports.TreeNode=e._sfc_main$1;exports.TreeNodePlugin=e.TreeNodePlugin;exports.TreePlugin=e.TreePlugin;exports.TreeSizes=e.TreeSizes;exports.default=e._sfc_main;exports.injectTreeContext=e.injectTreeContext;exports.provideTreeContext=e.provideTreeContext;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../index-CUuaEiq_.js");require("@pantograph/utils-vue");require("@pantograph/utils");exports.Tree=e._sfc_main;exports.TreeGaps=e.TreeGaps;exports.TreeNode=e._sfc_main$1;exports.TreeNodePlugin=e.TreeNodePlugin;exports.TreePlugin=e.TreePlugin;exports.TreeSizes=e.TreeSizes;exports.default=e._sfc_main;exports.injectTreeContext=e.injectTreeContext;exports.provideTreeContext=e.provideTreeContext;
@@ -16,7 +16,7 @@ export declare function flattenByParentKeys<T = FlattenItem>({ getValue, getDisa
16
16
  }): T[];
17
17
  export declare const useFlattenTreeData: <T extends FlattenItem = FlattenItem>({ getData, getExpandedKeys, getValue, getDisabled, getChildren, isFlatten, getExtra, }: {
18
18
  getData: () => MaybeRef<object[]>;
19
- getExpandedKeys: () => MaybeRef<string[]>;
19
+ getExpandedKeys: () => MaybeRef<string[] | undefined>;
20
20
  getValue: (node?: object) => string;
21
21
  getExtra?: (node?: object) => object | undefined;
22
22
  getDisabled: (node?: object) => boolean | undefined;
@@ -154,7 +154,7 @@ declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<Up
154
154
  onPreview?: ((value: import('./types').UploadFile) => any) | undefined;
155
155
  onCreateRequest?: ((value: import('./types').UploadFile) => any) | undefined;
156
156
  onResetRequest?: ((value: import('./types').UploadFile) => any) | undefined;
157
- }>, "props" | "slots" | "attrs" | "emit" | "fileList" | "remove" | "resetRequest" | ("type" | "size" | "disabled" | "multiple" | "go" | "uploadOnSelect" | "listType") | "addFiles" | "getAccept" | "progressSize" | "goSize" | "canRunUpload"> & import('vue').ShallowUnwrapRef<{
157
+ }>, "props" | "slots" | "attrs" | "emit" | "remove" | "fileList" | "resetRequest" | ("type" | "size" | "disabled" | "multiple" | "go" | "uploadOnSelect" | "listType") | "addFiles" | "getAccept" | "progressSize" | "goSize" | "canRunUpload"> & import('vue').ShallowUnwrapRef<{
158
158
  addFiles: (files: File[]) => void;
159
159
  fileList: import('vue').Ref<import('./types').UploadFile[]>;
160
160
  getAccept: import('vue').ComputedRef<string | undefined>;
@@ -0,0 +1 @@
1
+ "use strict";const n=require("vue"),o=require("@pantograph/utils"),me=require("reka-ui"),xe=require("class-variance-authority"),B=require("es-toolkit"),Oe=require("@pantograph/sortable"),ne=require("@pantograph/utils-vue"),Be=require("./IndentLevel.vue_vue_type_style_index_0_lang-ra2hBDxs.js"),Fe=require("./Icon.vue_vue_type_style_index_0_lang-DOQsa_aO.js"),De=require("./Checkbox.vue_vue_type_style_index_0_lang-BfiCl2A5.js"),qe=require("./ConfigProvider/index.umd.cjs"),Ge=require("./ScrollContainer.vue_vue_type_style_index_0_lang-Br7-ZHr3.js"),Me=require("./isArray-Bin_5of_.js");require("./IndentLevel/index.umd.cjs");const Se=require("./index-4j_iV_pN.js"),we=["sm","md","lg"],he={none:"gap-none",sm:"gap-sm",md:"gap-md",lg:"gap-lg"},[Te,Pe]=me.createContext("Tree"),ye=n.defineComponent({...o.getComponentOptions("TreeNode"),__name:"TreeNode",props:{node:{}},setup(E){const i=E,G=n.useAttrs(),e=n.useSlots(),r=Te(),z=xe.cva(r.prefixes.node,{variants:{disabled:o.generateVariantClassList("disabled",r.prefixes.node),active:o.generateVariantClassList("active",r.prefixes.node)}}),_=s=>r.getNodeChildren(s,!0,!1),K=n.computed(()=>_(i.node)),M=n.computed(()=>r.props.draggable?i.node._draggable??!0:!1),m=n.computed(()=>!!(r.disabled.value||i.node._disabled)),I=n.computed(()=>i.node._dragging??!1),C=n.computed(()=>!I.value&&(r.expandedKeys.value??[]).includes(i.node._key)),S=n.computed(()=>!I.value&&!r.dragging.value&&r.props.showLine?$.value?"all":"before":!1),W=n.computed(()=>r.getIsSelected(i.node)),A=n.computed(()=>r.getIsChecked(i.node)),w=s=>r.onCheck(i.node,!!s),T=n.computed(()=>r.getLevel(i.node)),$=n.computed(()=>{var s,u;return!!((s=K.value)!=null&&s.length||(u=r.props)!=null&&u.lazyLoad&&!i.node._leaf)}),H=n.computed(()=>({...i.node,selected:W.value,checked:A.value,disabled:m.value,expanded:C.value,unFocusable:!0})),a=()=>{m.value||r.onSelect(i.node,!W.value)},d=()=>{const s=()=>{var V,v,J,O,x,Q,P,L;const u=[];if((V=r.props)!=null&&V.draggable){let f=null;r.dragging.value||(f=n.h(Fe._sfc_main,{icon:"tabler:grip-vertical",size:r.iconSize.value,class:r.prefixes.draggableIcon})),u.push(n.h("span",{class:r.prefixes.draggable},f))}u.push(n.h(Be._sfc_main,{level:T.value,children:$.value,size:r.indentSize.value,expanded:C.value,showLine:S.value,dir:r.props.dir,class:o.getBemElement(r.prefixes.node,"indent"),loading:i.node._loading,"branch-icon":i.node._switcherIcon??((v=r.props)==null?void 0:v.switcherIcon),"no-rotate-branch":i.node._noRotateSwitcherIcon??((J=r.props)==null?void 0:J.noRotateSwitcherIcon),onToggleExpand:f=>{f.stopPropagation(),r.onExpandKey(i.node)}},()=>{var f;return[(f=e.switcherIcon)==null?void 0:f.call(e,H.value)]})),(O=r.props)!=null&&O.checkable&&u.push(n.h(De._sfc_main,{unExtendParent:!0,size:r.iconSize.value,modelValue:A.value,"onUpdate:modelValue":w,disabled:m.value,onClick:f=>f.stopPropagation()}));const y=(x=e.default)==null?void 0:x.call(e,H.value);return ne.isEmptyElement(y)?u.push(n.h("div",{class:o.getBemElement(r.prefixes.node,"title")},i.node._title)):u.push(y),n.h("div",{...G,"data-key":(Q=r.props)!=null&&Q.draggable?i.node._key:void 0,"data-level":(P=r.props)!=null&&P.draggable?T.value:void 0,"data-draggable":(L=r.props)!=null&&L.draggable?!m.value&&M.value:void 0,class:o.normCls(z({disabled:m.value,active:W.value}),i.node.class??""),onClick:a},u)};return r.props.focusable?n.h(me.RovingFocusItem,{asChild:!0,tabStopId:i.node._key},s):s()};return(s,u)=>(n.openBlock(),n.createBlock(d))}}),re=E=>B.isString(E);function Ne({getValue:E,getDisabled:i,arr:G,getChildren:e,getExtra:r,allowNoValidKey:z}){const _=[],K=(M,m)=>{M.forEach(I=>{const C=e(I,m),S=E(I,m,C);if(re(S)||z!=null&&z(I,m,C))_.push({...typeof I=="object"?I:{_item:I},_parentKeys:m,_key:S,_disabled:!!i(I),_hasChildren:!!(C!=null&&C.length),...(r==null?void 0:r(I))??{}}),C!=null&&C.length&&K(C,[...m??[],S]);else throw"every node must provide a valid key"})};return K(G),_}const $e=({getData:E,getExpandedKeys:i,getValue:G,getDisabled:e,getChildren:r,isFlatten:z,getExtra:_})=>{const K=n.computed(()=>z?n.unref(E()):Ne({arr:n.unref(E()),getChildren:r,getValue:G,getDisabled:e,getExtra:_})),M=n.computed(()=>{const a=n.unref(i())??[];return K.value.filter(d=>{var s,u;return!d._parentKeys||((u=(s=d._parentKeys)==null?void 0:s.every)==null?void 0:u.call(s,y=>a.includes(y)))})}),m=(a,d=!1,s=!0)=>{const u=a==null?void 0:a._key;return!re(u)||!a?[]:K.value.filter(y=>{var V;if(d){const v=B.last(y._parentKeys??[]);return v&&v===u}return(V=y._parentKeys)==null?void 0:V.includes(u)}).filter(y=>y&&(!s||!(y!=null&&y._disabled)))},I=()=>K.value.filter(a=>!a._parentKeys),C=a=>a?m(a,!0,!1):I(),S=a=>re(a)?K.value.find(d=>d._key===a):void 0,W=a=>{const d=S(B.last(a._parentKeys??[]));return C(d).findIndex(s=>s._key===a._key)},A=a=>{const d=n.unref(a);return d&&Me.isArray(d)?B.cloneDeep(d):[]},w=(a,d)=>{const s=m(a);if(s!=null&&s.length)return s.some(u=>$(u,d,!1)===!0)},T=(a,d)=>{const s=m(a);return s!=null&&s.length?s.every(u=>$(u,d,!1)===!0):!1},$=(a,d,s=!1)=>{const u=A(d),y=a==null?void 0:a._key;if(!s&&!a._disabled&&!u.includes(y)){const V=m(a);if(V!=null&&V.length)return T(a,d)?!0:w(a,d)?"indeterminate":!1}return u.includes(y)};return{flattenData:K,visibleFlattenData:M,getNodeChildren:m,getNodeByValue:S,getNodeIndexInScope:W,getChildrenOrRootNodes:C,isSomeChildrenSelected:w,isAllChildrenSelected:T,isSelected:$,getRootNodes:I,selectValue:(a,d,s,u,y,V)=>{let v=A(s);if(re(a._key)&&!a._disabled)if(y){if(d?v.push(a._key):v=v.filter(J=>a._key!==J),!u){const O=m(a).map(k=>k._key),x=v.map(S).filter(k=>k&&k._parentKeys);d||x.push(a);const P=B.uniq(B.flattenDeep(x.map(k=>k._parentKeys))).filter(k=>re(k)&&k!==a._key).filter(re).map(S).filter(Boolean),L=[],f=[];P.forEach(k=>{const oe=k==null?void 0:k._key;T(k,v)?L.push(oe):f.push(oe)}),d?L.push(...O):f.push(...O),v.push(...L),v=v.filter(k=>!f.includes(k))}}else V==="replace"?d&&(v=[a._key]):d?v=[a._key]:v=[];return B.uniq(v)}}},je=n.defineComponent({__name:"TreePlaceholder",props:{level:{},size:{},indentSize:{},branchIcon:{},children:{type:Boolean}},setup(E){return(i,G)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(n.unref(Be._sfc_main),{level:i.level,expanded:!1,branchIcon:i.branchIcon,children:i.children,size:i.indentSize},null,8,["level","branchIcon","children","size"]),n.createElementVNode("div",{class:n.normalizeClass(n.unref(o.sortPlaceholderVariantsClass)({size:i.size}))},null,2)],64))}}),Ke=n.defineComponent({...o.getComponentOptions("Tree"),__name:"Tree",props:{selectionBehavior:{default:"toggle"},class:{},size:{},gap:{},dir:{},data:{},flattenData:{type:Boolean},modelValue:{},checkedKeys:{},expandedKeys:{},multiple:{type:Boolean},checkable:{type:Boolean},selectable:{type:Boolean},defaultExpandAll:{type:Boolean},showLine:{type:Boolean},inlineNode:{type:Boolean},lazyLoad:{type:Boolean},getLoading:{},getNoRotateSwitcherIcon:{},getTitle:{},getLeaf:{},getDraggable:{},getKey:{},getSwitcherIcon:{},getDisabled:{},getChildren:{},groupName:{},sortableProps:{},focusable:{type:Boolean,default:!0},checkStrictly:{type:Boolean,default:void 0},syncCheckboxAndSelect:{type:Boolean},virtual:{type:[Boolean,Object]},scrollContainerProps:{},outerVirtualScroll:{type:Boolean},switcherIcon:{},noRotateSwitcherIcon:{type:Boolean},draggable:{type:Boolean},disabled:{type:Boolean,default:void 0}},emits:["update:modelValue","update:expandedKeys","update:checkedKeys","change","expand","select","check","dragStart","dragEnd","choose","unchoose"],setup(E,{expose:i,emit:G}){const e=E,r=G,z=n.useSlots(),_=o.getBemBlock("tree"),K=o.getBemElement(_,"node"),M=o.getBemElement(K,"group"),m=o.getBemElement(K,"draggable"),I=o.getBemElement(m,"icon"),C=o.getBemElement(M,"list"),S={node:K,group:M,draggable:m,draggableIcon:I,groupList:C},W=xe.cva(_,{variants:{size:o.generateVariantClassList(we,_),gap:o.generateVariantClassList(he,_),selectable:o.generateVariantClassList("selectable",_),disabled:o.generateVariantClassList("disabled",_),inlineNode:o.generateVariantClassList("inline-node",_),dragging:o.generateVariantClassList("dragging",_)}}),A={getLoading:o.createOptionGetterFunc({key:"loading",getter:e.getLoading,noReturnOption:!0}),getNoRotateSwitcherIcon:o.createOptionGetterFunc({key:"noRotateSwitcherIcon",getter:e.getNoRotateSwitcherIcon,noReturnOption:!0}),getTitle:o.createOptionGetterFunc({key:"title",getter:e.getTitle,noReturnOption:!0}),getLeaf:o.createOptionGetterFunc({key:"leaf",getter:e.getLeaf,noReturnOption:!0}),getDraggable:o.createOptionGetterFunc({key:"draggable",getter:e.getDraggable,noReturnOption:!0}),getKey:o.createOptionGetterFunc({key:"key",getter:e.getKey,noReturnOption:!0}),getSwitcherIcon:o.createOptionGetterFunc({key:"switcherIcon",getter:e.getSwitcherIcon,noReturnOption:!0}),getDisabled:o.createOptionGetterFunc({key:"disabled",getter:e.getDisabled,noReturnOption:!0}),getChildren:o.createOptionGetterFunc({key:"children",getter:e.getChildren,noReturnOption:!0})},w=(t,c)=>{var F;const p=`get${c[0].toUpperCase()+c.slice(1)}`;return(F=A[p])==null?void 0:F.call(A,t)},T=ne.useVModel(e,"expandedKeys",r,{defaultValue:[],passive:e.expandedKeys===void 0}),{flattenData:$,visibleFlattenData:H,getNodeByValue:a,getChildrenOrRootNodes:d,getNodeIndexInScope:s,isSelected:u,getNodeChildren:y,selectValue:V,getRootNodes:v}=$e({isFlatten:e.flattenData,getData:()=>e.data,getExpandedKeys:()=>T,getValue:t=>w(t,"key"),getDisabled:t=>w(t,"disabled"),getChildren:t=>w(t,"children"),getExtra:t=>({_switcherIcon:w(t,"switcherIcon"),_title:w(t,"title"),_draggable:w(t,"draggable"),_leaf:w(t,"leaf"),_loading:w(t,"loading"),_noRotateSwitcherIcon:w(t,"noRotateSwitcherIcon")})}),J=()=>$.value.filter(t=>t==null?void 0:t._hasChildren).map(t=>t._key);n.watch(()=>e.defaultExpandAll,(t,c)=>{t&&!c&&(T.value=J())},{immediate:!0});const O=n.ref(e.modelValue??[]);n.watch(()=>e.modelValue,()=>{O.value=e.modelValue??[],e.syncCheckboxAndSelect&&(P.value=e.modelValue??[])},{deep:!0});const x=n.computed({get(){return O.value},set(t){t&&(e.modelValue||(O.value=t),r("update:modelValue",t))}}),Q=n.ref(e.checkedKeys??[]);n.watch(()=>e.checkedKeys,()=>{Q.value=e.checkedKeys??[],e.syncCheckboxAndSelect&&(x.value=e.checkedKeys??[])},{deep:!0});const P=n.computed({get(){return Q.value},set(t){e.checkedKeys||(Q.value=t),r("update:checkedKeys",t)}}),{getDisabled:L,getSize:f}=ne.useFormInput({defaults:{size:"md"},exports:["getDisabled","getSize"]}),k=t=>!!u(t,x,!0),oe=t=>u(t,P,e.checkStrictly),ve=(t,c)=>{if(e.selectable&&!L.value){const p=V(t,c,x,!!(e.syncCheckboxAndSelect?e.checkStrictly:e.checkStrictly!==!1),e.multiple,e.selectionBehavior);B.isEqual(p,x.value)||(x.value=p,r("select",t,c,p),r("change",{modelValue:x.value,checkedKeys:P.value}),e.syncCheckboxAndSelect&&(P.value=p,r("check",t,c,p)))}},Ve=(t,c)=>{if(e.checkable&&!L.value){const p=V(t,c,P,!!e.checkStrictly,!0);B.isEqual(p,P.value)||(P.value=p,r("check",t,c,P.value),r("change",{modelValue:x.value,checkedKeys:P.value}),e.syncCheckboxAndSelect&&(x.value=p,r("select",t,c,p)))}},ae=t=>{let c=!0,p=B.cloneDeep(T.value??[]);p.includes(t._key)?(p=p.filter(F=>F!==t._key),c=!1):(p=B.uniq([...p,t._key]),c=!0),T.value=p,r("expand",t,c)},de=n.computed(()=>{if(e.gap){if(typeof e.gap=="number")return`${e.gap}px`;if(!Object.keys(he).includes(e.gap))return e.gap}}),se=n.ref(!1),{getDir:ze}=qe.useConfig(),X=ze(),_e=n.computed(()=>{switch(f.value){case"sm":return"2xsm";case"lg":return"sm";default:return"xsm"}}),Re=n.computed(()=>f.value==="sm"?"2xsm":"xsm"),ke=t=>{var c;return(((c=t==null?void 0:t._parentKeys)==null?void 0:c.length)??0)+1},ue=n.ref(),be={iconSize:Re,disabled:L,props:e,expandedKeys:T,model:x,dir:X,checked:P,onExpandKey:ae,onSelect:ve,onCheck:Ve,scrollContainerRef:ue,getNodeChildren:y,getNodeField:w,getIsSelected:k,getIsChecked:oe,getLevel:ke,dragging:se,indentSize:_e,prefixes:S};Pe(be);const ge=n.ref();if(e.draggable){let t,c;const p=h=>{const g=h.getAttribute("data-key");if(g)return a(g)},F=o.getBemModifier(o.getBemElement(_,"dragging_item"),f.value),N=()=>{var h;(h=t==null?void 0:t.destroy)==null||h.call(t),t=void 0},Z=async()=>{let h,g,j,U,D;const fe=l=>({...l,node:g,oldParents:j,newParents:U,oldIndex:h,oldDraggableIndex:h,newIndex:D,newDraggableIndex:D}),Ie=(l,ee)=>{if(l){const R=()=>{const ie=ke(g),b=!!(g!=null&&g._hasChildren);return{size:f.value,level:ie,children:b,indentSize:_e.value,branchIcon:(g?g._switcherIcon??(e==null?void 0:e.switcherIcon):e==null?void 0:e.switcherIcon)??"tabler:chevron-left"}},q=document.createElement("div"),te=l.getBoundingClientRect();q.style.width=te.width?`${te.width}px`:"100%",q.style.height=te.height?`${te.height}px`:"100%",q.classList.add(o.getBemElement(_,o.sortPlaceholderCls));const le=R();return ee&&(le.level=ee),n.render(n.h(je,le),q),q}};t?N():ge.value&&(t=new Oe(ge.value,{...B.omit(e.sortableProps||{},["onMove"]),group:B.isFunction(e.groupName)?e.groupName():e.groupName??o.usePCId(_),filter:"[data-draggable=false]",tree:!0,draggable:`.${S.node}`,handle:`.${S.node} .${S.draggable} .${S.draggableIcon}`,dataIdAttr:"data-key",dragClass:F,onChoose(l){var ee;if(g=p(l==null?void 0:l.item),j=(ee=g==null?void 0:g._parentKeys)==null?void 0:ee.map(a).filter(Boolean),g){if(j!=null&&j.length){const R=B.last(j);R&&(h=y(R,!0,!1).findIndex(q=>q._key===g._key))}else h=v().findIndex(R=>R._key===g._key);g._dragging=!0}r("choose",l)},onUnchoose(l){g&&(g._dragging=!1),r("unchoose",l)},onStart(l){g!=null&&g._key&&(T.value??[]).includes(g._key)&&(c=g,ae(c)),se.value=!0,r("dragStart",fe(l))},onEnd(l){se.value=!1,c&&(ae(c),c=void 0),r("dragEnd",fe(l)),h=j=D=U=g=void 0},onMove(l,ee){var te,le,ie;if(D=U=void 0,l.draggedTreeItemParent){const b=p(l==null?void 0:l.draggedTreeItemParent);b&&(U=[...((te=b==null?void 0:b._parentKeys)==null?void 0:te.map(a).filter(Boolean))??[],b],(le=y(b,!0,!1))!=null&&le.length&&!(T.value??[]).includes(b._key)&&ae(b))}const R=l.draggedTreeItemLevel??1;if(!l.draggedTreeItemBefore)D=0;else if(l.draggedTreeItemBefore){if(l.draggedTreeItemBefore.level===R){const b=p(l.draggedTreeItemBefore);b&&(D=s(b)+1)}else if(l.draggedTreeItemBefore.level<R)D=0;else if(l.draggedTreeItemBefore.level>R){if(!l.draggedTreeItemAfter||l.draggedTreeItemAfter.level<R){const b=B.last(U??[]);D=d(b).length}else if(l.draggedTreeItemAfter.level===R){const b=p(l.draggedTreeItemAfter);b&&(D=s(b))}}}const q=fe(l);B.isFunction((ie=e.sortableProps)==null?void 0:ie.onMove)&&e.sortableProps.onMove(q,ee)},getPlaceholder(l){return Ie(l==null?void 0:l.item)},getPlaceholderOnMove(l){return Ie(l==null?void 0:l.dragged,l.draggedTreeItemLevel||1)}}))};n.onMounted(Z),n.onBeforeUnmount(N)}const Ee={none:0,sm:4,md:6,lg:8},Le=n.computed(()=>({get count(){return H.value.length??0},getScrollElement:()=>{var t;return(t=ue.value)==null?void 0:t.container.viewportElement},estimateSize:()=>Se.systemSizesMap[e.size]??Se.systemSizesMap.md,overscan:5,get gap(){return Ee[de.value??f.value]??de.value??f.value??0}}));let pe,Y;if(e.virtual)if(typeof e.virtual=="object")pe=e.virtual;else{const{virtualizer:t,...c}=ne.useVirtualScroll(Le);pe=t,Y=c}const Ce=n.computed(()=>{var t;return e.virtual?(((t=n.unref(pe))==null?void 0:t.getVirtualItems())??[]).map(c=>H.value[c.index]):H.value}),ce=n.shallowRef(),Ae=()=>{var c;const t=()=>{const p=()=>{var Z;const N=(Z=z.default)==null?void 0:Z.call(z,{items:Ce.value});return ne.isEmptyElement(N)?Ce.value.map(h=>n.h(ye,{key:h._key,node:h},{default:z.node,switcherIcon:z.switcherIcon})):N},F=()=>n.h("div",{dir:X.value,role:"tree",class:o.normCls(W({size:f.value,gap:e.gap??f.value,selectable:e.selectable,disabled:L.value,inlineNode:e.inlineNode,dragging:se.value}),e.class),style:{"--ptc-tree-gap":de.value,...e.virtual?(Y==null?void 0:Y.containerStyles.value)??{}:{}},ref:ge},p());return e.focusable?n.h(me.RovingFocusGroup,{orientation:"vertical",asChild:!0,currentTabStopId:ce.value,"onUpdate:currentTabStopId":N=>{ce.value=N},onKeyup:N=>{var Z;if(ce.value!==void 0){const h=a(ce.value);if(h){const g=!!(h._hasChildren||e!=null&&e.lazyLoad&&!h._leaf);if((N.key==="ArrowRight"||N.key==="ArrowLeft")&&g){const U=!(h._dragging??!1)&&(T.value??[]).includes(h._key);(U&&(X.value==="rtl"&&N.key==="ArrowRight"||X.value==="ltr"&&N.key==="ArrowLeft")||!U&&(X.value==="ltr"&&N.key==="ArrowRight"||X.value==="rtl"&&N.key==="ArrowLeft"))&&ae(h)}N.key==="Enter"&&ve(h,!((Z=x.value)!=null&&Z.includes(h._key)))}}}},F):F()};return e.virtual&&!e.outerVirtualScroll?n.h(Ge._sfc_main,{...e.scrollContainerProps,ref:ue,dir:X.value,wrapProps:{...((c=e.scrollContainerProps)==null?void 0:c.wrapProps)??{},style:(Y==null?void 0:Y.scrollWrapperStyles.value)??{}}},t):t()};return i(be),(t,c)=>(n.openBlock(),n.createBlock(Ae))}}),Ue=ne.installComponent(Ke,o.getComponentName("Tree")),We=ne.installComponent(ye,o.getComponentName("TreeNode"));exports.TreeGaps=he;exports.TreeNodePlugin=We;exports.TreePlugin=Ue;exports.TreeSizes=we;exports._sfc_main=Ke;exports._sfc_main$1=ye;exports.flattenByParentKeys=Ne;exports.injectTreeContext=Te;exports.provideTreeContext=Pe;