@robot-admin/naive-ui-components 0.17.3 → 0.17.4

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 (99) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/C_FormSearch.css +52 -52
  3. package/dist/C_FormSearch2.cjs +1 -1
  4. package/dist/C_FormSearch2.js +1 -1
  5. package/dist/C_Table.base.css +47 -36
  6. package/dist/C_Table.css +47 -36
  7. package/dist/C_Table.d.cts +1 -1
  8. package/dist/C_Table.d.ts +1 -1
  9. package/dist/C_Tree.css +23 -23
  10. package/dist/C_Tree2.cjs +1 -1
  11. package/dist/C_Tree2.js +1 -1
  12. package/dist/constants.d.cts +3 -3
  13. package/dist/constants.d.ts +3 -3
  14. package/dist/constants2.d.cts +2 -2
  15. package/dist/constants2.d.ts +2 -2
  16. package/dist/constants3.d.cts +2 -2
  17. package/dist/constants3.d.ts +2 -2
  18. package/dist/constants4.d.cts +5 -5
  19. package/dist/constants4.d.ts +5 -5
  20. package/dist/data.d.cts +5 -5
  21. package/dist/data.d.ts +5 -5
  22. package/dist/helpers.cjs +1 -1
  23. package/dist/helpers.js +1 -1
  24. package/dist/index.d.cts +1 -1
  25. package/dist/index.d.ts +1 -1
  26. package/dist/index.vue.d.cts +4 -4
  27. package/dist/index.vue.d.ts +4 -4
  28. package/dist/index10.vue.d.ts +2 -2
  29. package/dist/index11.vue.d.cts +2 -2
  30. package/dist/index11.vue.d.ts +4 -4
  31. package/dist/index12.vue.d.cts +4 -4
  32. package/dist/index13.vue.d.ts +1 -1
  33. package/dist/index14.vue.d.cts +1 -1
  34. package/dist/index14.vue.d.ts +7 -7
  35. package/dist/index15.vue.d.cts +7 -7
  36. package/dist/index15.vue.d.ts +2 -2
  37. package/dist/index16.vue.d.cts +2 -2
  38. package/dist/index18.vue.d.ts +4 -4
  39. package/dist/index19.vue.d.cts +4 -4
  40. package/dist/index19.vue.d.ts +3 -3
  41. package/dist/index2.vue.d.cts +2 -2
  42. package/dist/index2.vue.d.ts +2 -2
  43. package/dist/index21.vue.d.cts +3 -3
  44. package/dist/index21.vue.d.ts +3 -3
  45. package/dist/index22.vue.d.cts +2 -2
  46. package/dist/index22.vue.d.ts +2 -2
  47. package/dist/index23.vue.d.cts +1 -1
  48. package/dist/index23.vue.d.ts +1 -1
  49. package/dist/index25.vue.d.cts +4 -4
  50. package/dist/index25.vue.d.ts +4 -4
  51. package/dist/index28.vue.d.cts +4 -4
  52. package/dist/index28.vue.d.ts +4 -4
  53. package/dist/index3.vue.d.cts +5 -5
  54. package/dist/index3.vue.d.ts +5 -5
  55. package/dist/index4.vue.d.cts +3 -3
  56. package/dist/index5.vue.d.ts +2 -2
  57. package/dist/index6.vue.d.cts +2 -2
  58. package/dist/index6.vue.d.ts +1 -1
  59. package/dist/index7.vue.d.cts +1 -1
  60. package/dist/index7.vue.d.ts +2 -2
  61. package/dist/index8.vue.d.cts +2 -2
  62. package/dist/index8.vue.d.ts +1 -1
  63. package/dist/index9.vue.d.cts +1 -1
  64. package/dist/mapUtils.d.cts +1 -1
  65. package/dist/mapUtils.d.ts +1 -1
  66. package/dist/style.css +122 -111
  67. package/dist/useCropperCore.d.cts +3 -3
  68. package/dist/useCropperCore.d.ts +3 -3
  69. package/dist/useDraggableLayout.d.cts +5 -5
  70. package/dist/useDraggableLayout.d.ts +5 -5
  71. package/dist/useDynamicFormState.d.cts +3 -2
  72. package/dist/useDynamicFormState.d.ts +3 -2
  73. package/dist/useEdgeInteraction.d.cts +2 -2
  74. package/dist/useEdgeInteraction.d.ts +2 -2
  75. package/dist/useFullscreen.d.cts +3 -3
  76. package/dist/useFullscreen.d.ts +3 -3
  77. package/dist/useInfiniteScroll.d.cts +2 -2
  78. package/dist/useInfiniteScroll.d.ts +2 -2
  79. package/dist/useQRCode.d.cts +2 -2
  80. package/dist/useQRCode.d.ts +2 -2
  81. package/dist/useSearchState.d.cts +2 -2
  82. package/dist/useSearchState.d.ts +2 -2
  83. package/dist/useSignatureHistory.d.cts +3 -3
  84. package/dist/useSignatureHistory.d.ts +3 -3
  85. package/dist/useSplitResize.d.cts +1 -1
  86. package/dist/useSplitResize.d.ts +1 -1
  87. package/dist/useTableQuery.cjs +1 -1
  88. package/dist/useTableQuery.d.cts +533 -507
  89. package/dist/useTableQuery.d.ts +533 -507
  90. package/dist/useTableQuery.js +1 -1
  91. package/dist/useTimeSelection.d.cts +2 -2
  92. package/dist/useTimeSelection.d.ts +2 -2
  93. package/dist/useWorkflowValidation.d.cts +4 -4
  94. package/dist/useWorkflowValidation.d.ts +4 -4
  95. package/dist/verification.d.cts +6 -6
  96. package/dist/verification.d.ts +6 -6
  97. package/docs/guides/usage.en.md +8 -0
  98. package/docs/guides/usage.md +30 -0
  99. package/package.json +1 -1
package/dist/C_Table.css CHANGED
@@ -1554,17 +1554,17 @@ to {
1554
1554
  .ms[data-v-b1927095]{margin-inline-start:1rem;}
1555
1555
  .px[data-v-b1927095]{padding-left:1rem;padding-right:1rem;}
1556
1556
 
1557
- .column-management-tab .search-row[data-v-92119048] {
1557
+ .column-management-tab .search-row[data-v-a40b0e07] {
1558
1558
  display: flex;
1559
1559
  align-items: center;
1560
1560
  gap: 12px;
1561
1561
  margin-bottom: 12px;
1562
1562
  }
1563
- .column-management-tab .search-row .search-input[data-v-92119048] {
1563
+ .column-management-tab .search-row .search-input[data-v-a40b0e07] {
1564
1564
  flex: 1;
1565
1565
  min-width: 0;
1566
1566
  }
1567
- .column-management-tab .search-row .resizable-control[data-v-92119048] {
1567
+ .column-management-tab .search-row .resizable-control[data-v-a40b0e07] {
1568
1568
  display: flex;
1569
1569
  align-items: center;
1570
1570
  flex-shrink: 0;
@@ -1574,7 +1574,7 @@ to {
1574
1574
  border-radius: 6px;
1575
1575
  white-space: nowrap;
1576
1576
  }
1577
- .column-management-tab .top-actions-bar[data-v-92119048] {
1577
+ .column-management-tab .top-actions-bar[data-v-a40b0e07] {
1578
1578
  display: flex;
1579
1579
  justify-content: space-between;
1580
1580
  align-items: center;
@@ -1583,13 +1583,13 @@ to {
1583
1583
  background: var(--n-color-target);
1584
1584
  border-radius: 6px;
1585
1585
  }
1586
- .column-management-tab .top-actions-bar .stats-info[data-v-92119048] {
1586
+ .column-management-tab .top-actions-bar .stats-info[data-v-a40b0e07] {
1587
1587
  flex: 1;
1588
1588
  }
1589
- .column-management-tab .top-actions-bar .quick-actions[data-v-92119048] {
1589
+ .column-management-tab .top-actions-bar .quick-actions[data-v-a40b0e07] {
1590
1590
  flex-shrink: 0;
1591
1591
  }
1592
- .column-management-tab .column-list .column-item[data-v-92119048] {
1592
+ .column-management-tab .column-list .column-item[data-v-a40b0e07] {
1593
1593
  display: flex;
1594
1594
  align-items: center;
1595
1595
  justify-content: space-between;
@@ -1600,44 +1600,44 @@ to {
1600
1600
  cursor: move;
1601
1601
  transition: all 0.2s ease;
1602
1602
  }
1603
- .column-management-tab .column-list .column-item[data-v-92119048]:hover {
1603
+ .column-management-tab .column-list .column-item[data-v-a40b0e07]:hover {
1604
1604
  background: var(--n-color-target);
1605
1605
  }
1606
- .column-management-tab .column-list .column-item.disabled[data-v-92119048] {
1606
+ .column-management-tab .column-list .column-item.disabled[data-v-a40b0e07] {
1607
1607
  opacity: 0.6;
1608
1608
  cursor: not-allowed;
1609
1609
  }
1610
- .column-management-tab .column-list .column-item.fixed-left[data-v-92119048] {
1610
+ .column-management-tab .column-list .column-item.fixed-left[data-v-a40b0e07] {
1611
1611
  background: rgba(24, 160, 88, 0.08);
1612
1612
  }
1613
- .column-management-tab .column-list .column-item.fixed-right[data-v-92119048] {
1613
+ .column-management-tab .column-list .column-item.fixed-right[data-v-a40b0e07] {
1614
1614
  background: rgba(240, 138, 0, 0.08);
1615
1615
  }
1616
- .column-management-tab .column-list .column-item .column-info[data-v-92119048] {
1616
+ .column-management-tab .column-list .column-item .column-info[data-v-a40b0e07] {
1617
1617
  display: flex;
1618
1618
  align-items: center;
1619
1619
  flex: 1;
1620
1620
  gap: 10px;
1621
1621
  min-width: 0;
1622
1622
  }
1623
- .column-management-tab .column-list .column-item .column-info .column-controls[data-v-92119048] {
1623
+ .column-management-tab .column-list .column-item .column-info .column-controls[data-v-a40b0e07] {
1624
1624
  display: flex;
1625
1625
  align-items: center;
1626
1626
  gap: 8px;
1627
1627
  flex-shrink: 0;
1628
1628
  }
1629
- .column-management-tab .column-list .column-item .column-info .column-controls .drag-handle[data-v-92119048] {
1629
+ .column-management-tab .column-list .column-item .column-info .column-controls .drag-handle[data-v-a40b0e07] {
1630
1630
  color: var(--n-text-color-3);
1631
1631
  cursor: grab;
1632
1632
  }
1633
- .column-management-tab .column-list .column-item .column-info .column-controls .drag-handle[data-v-92119048]:active {
1633
+ .column-management-tab .column-list .column-item .column-info .column-controls .drag-handle[data-v-a40b0e07]:active {
1634
1634
  cursor: grabbing;
1635
1635
  }
1636
- .column-management-tab .column-list .column-item .column-info .column-controls .drag-handle.disabled[data-v-92119048] {
1636
+ .column-management-tab .column-list .column-item .column-info .column-controls .drag-handle.disabled[data-v-a40b0e07] {
1637
1637
  cursor: not-allowed;
1638
1638
  opacity: 0.3;
1639
1639
  }
1640
- .column-management-tab .column-list .column-item .column-info .column-details[data-v-92119048] {
1640
+ .column-management-tab .column-list .column-item .column-info .column-details[data-v-a40b0e07] {
1641
1641
  display: flex;
1642
1642
  flex-direction: column;
1643
1643
  gap: 4px;
@@ -1645,49 +1645,60 @@ to {
1645
1645
  min-width: 0;
1646
1646
  overflow: hidden;
1647
1647
  }
1648
- .column-management-tab .column-list .column-item .column-actions[data-v-92119048] {
1648
+ .column-management-tab .column-list .column-item .column-actions[data-v-a40b0e07] {
1649
1649
  display: flex;
1650
1650
  align-items: center;
1651
1651
  gap: 6px;
1652
1652
  flex-shrink: 0;
1653
1653
  }
1654
- .column-management-tab .column-list .column-item .column-actions .drag-controls[data-v-92119048] {
1654
+ .column-management-tab .column-list .column-item .column-actions .drag-controls[data-v-a40b0e07] {
1655
1655
  display: flex;
1656
1656
  flex-direction: column;
1657
1657
  gap: 2px;
1658
1658
  }
1659
- .column-management-tab .column-list .column-item .column-actions .drag-controls .c-icon[data-v-92119048] {
1659
+ .column-management-tab .column-list .column-item .column-actions .drag-controls .c-icon[data-v-a40b0e07] {
1660
1660
  opacity: 0.6;
1661
1661
  transition: all 0.2s ease;
1662
1662
  }
1663
- .column-management-tab .column-list .column-item .column-actions .drag-controls .c-icon[data-v-92119048]:not(.disabled):hover {
1663
+ .column-management-tab .column-list .column-item .column-actions .drag-controls .c-icon[data-v-a40b0e07]:not(.disabled):hover {
1664
1664
  opacity: 1;
1665
1665
  transform: scale(1.15);
1666
1666
  }
1667
- .column-management-tab .column-list .column-item .column-actions .drag-controls .c-icon.disabled[data-v-92119048] {
1667
+ .column-management-tab .column-list .column-item .column-actions .drag-controls .c-icon.disabled[data-v-a40b0e07] {
1668
1668
  opacity: 0.3;
1669
1669
  cursor: not-allowed;
1670
1670
  }
1671
- .column-management-tab .column-list .column-item .column-actions .c-icon[data-v-92119048] {
1671
+ .column-management-tab .column-list .column-item .column-actions .c-icon[data-v-a40b0e07] {
1672
1672
  transition: all 0.2s ease;
1673
1673
  }
1674
- .column-management-tab .column-list .column-item .column-actions .c-icon[data-v-92119048]:hover {
1674
+ .column-management-tab .column-list .column-item .column-actions .c-icon[data-v-a40b0e07]:hover {
1675
1675
  transform: scale(1.15);
1676
1676
  }
1677
1677
 
1678
1678
  /* layer: default */
1679
- .visible[data-v-92119048]{visibility:visible;}
1680
- .fixed[data-v-92119048]{position:fixed;}
1681
- .mb-4[data-v-92119048]{margin-bottom:1rem;}
1682
- .flex[data-v-92119048]{display:flex;}
1683
- .table[data-v-92119048]{display:table;}
1684
- .scale-110[data-v-92119048]{--un-scale-x:1.1;--un-scale-y:1.1;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
1685
- .cursor-pointer[data-v-92119048]{cursor:pointer;}
1686
- .justify-end[data-v-92119048]{justify-content:flex-end;}
1687
- .justify-center[data-v-92119048]{justify-content:center;}
1688
- .rd[data-v-92119048]{border-radius:0.25rem;}
1689
- .px[data-v-92119048]{padding-left:1rem;padding-right:1rem;}
1690
- .accent-blue-500[data-v-92119048]{--un-accent-opacity:1;accent-color:rgb(59 130 246 / var(--un-accent-opacity));}
1679
+ .visible[data-v-a40b0e07]{visibility:visible;}
1680
+ .fixed[data-v-a40b0e07]{position:fixed;}
1681
+ .mb-2[data-v-a40b0e07]{margin-bottom:0.5rem;}
1682
+ .mb-4[data-v-a40b0e07]{margin-bottom:1rem;}
1683
+ .ml-2[data-v-a40b0e07]{margin-left:0.5rem;}
1684
+ .flex[data-v-a40b0e07]{display:flex;}
1685
+ .table[data-v-a40b0e07]{display:table;}
1686
+ .scale-110[data-v-a40b0e07]{--un-scale-x:1.1;--un-scale-y:1.1;transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z));}
1687
+ .cursor-pointer[data-v-a40b0e07]{cursor:pointer;}
1688
+ .items-center[data-v-a40b0e07]{align-items:center;}
1689
+ .justify-end[data-v-a40b0e07]{justify-content:flex-end;}
1690
+ .justify-center[data-v-a40b0e07]{justify-content:center;}
1691
+ .rd[data-v-a40b0e07]{border-radius:0.25rem;}
1692
+ .bg-gray-50[data-v-a40b0e07]{--un-bg-opacity:1;background-color:rgb(249 250 251 / var(--un-bg-opacity));}
1693
+ .p-4[data-v-a40b0e07]{padding:1rem;}
1694
+ .px[data-v-a40b0e07]{padding-left:1rem;padding-right:1rem;}
1695
+ .py-8[data-v-a40b0e07]{padding-top:2rem;padding-bottom:2rem;}
1696
+ .text-center[data-v-a40b0e07]{text-align:center;}
1697
+ .text-sm[data-v-a40b0e07]{font-size:0.875rem;line-height:1.25rem;}
1698
+ .text-gray-400[data-v-a40b0e07]{--un-text-opacity:1;color:rgb(156 163 175 / var(--un-text-opacity));}
1699
+ .text-gray-500[data-v-a40b0e07]{--un-text-opacity:1;color:rgb(107 114 128 / var(--un-text-opacity));}
1700
+ .text-gray-600[data-v-a40b0e07]{--un-text-opacity:1;color:rgb(75 85 99 / var(--un-text-opacity));}
1701
+ .accent-blue-500[data-v-a40b0e07]{--un-accent-opacity:1;accent-color:rgb(59 130 246 / var(--un-accent-opacity));}
1691
1702
 
1692
1703
  .c-table-wrapper[data-v-f168596c] {
1693
1704
  --c-table-border-color: var(--border-color, #e5e7eb);
@@ -1,3 +1,3 @@
1
- import { $ as MaybeRefLike, $t as printPresets, At as ExpandConfig, B as useRowEdit, Bt as exportTableData, Ct as useTableGlobalConfig, Dt as DisplayConfig, Et as CrudBinding, F as useCellEdit, Ft as TreeConfig, G as _default, Gt as RowDragConfig, H as defineTableColumns, Ht as UseCrossPageSelectionOptions, I as usePagination, It as VirtualScrollConfig, J as ChildSelectionState, Jt as useRowDrag, K as ApiFunction, Kt as UseRowDragOptions, L as useTableActions, Lt as createEditModeChecker, Mt as SummaryConfig, Nt as TableConfig, Ot as EditConfig, P as useModalEdit, Pt as ToolbarConfig, Q as EditMode, Qt as PrintWatermarkOptions, R as useTableExpand, Rt as resolveConfig, St as mergeGlobalConfig, Tt as ColumnDragConfig, U as defineTableConfig, Ut as UseCrossPageSelectionReturn, V as useTableColumns, Vt as CrossPageSelectionConfig, W as validateTableRowKeys, Wt as useCrossPageSelection, X as CustomAction, Xt as DynamicRowsReturn, Y as ColumnWithKey, Yt as DynamicRowsOptions, Z as DataRecord, Zt as useDynamicRows, _t as FormatterConfig, at as SelectOption, bt as TableGlobalConfig, ct as TableColumn, dt as TableProps, en as usePrintWatermark, et as NormalTableColumn, ft as TableRowKey, gt as ColumnFormatter, ht as UseTableExpandReturn, i as useTableQuery, it as RowAction, jt as SelectionConfig, kt as ErrorConfig, lt as TableEmits, mt as UseTableExpandOptions, n as TableQueryResult, nt as ParentChildLinkMode, ot as SimpleTableActions, pt as TableRowKeyIssue, q as BuiltInTableColumn, qt as UseRowDragReturn, r as UseTableQueryOptions, rt as RenderFunction, st as StrictTableColumn, t as TableQueryContext, tt as PaginationConfig, ut as TableInstance, vt as FormatterType, wt as BatchActionsConfig, xt as applyFormatter, yt as TABLE_GLOBAL_CONFIG_KEY, z as useTableManager, zt as ExportConfig } from "./useTableQuery.cjs";
1
+ import { $ as PaginationConfig, $t as printPresets, At as resolveConfig, B as defineTableColumns, Bt as useTableGlobalConfig, Ct as SelectionConfig, Dt as TreeConfig, Et as ToolbarConfig, F as useCellEdit, Ft as FormatterType, G as BuiltInTableColumn, Gt as RowDragConfig, H as validateTableRowKeys, Ht as UseCrossPageSelectionOptions, I as usePagination, It as TABLE_GLOBAL_CONFIG_KEY, J as CustomAction, Jt as useRowDrag, K as ChildSelectionState, Kt as UseRowDragOptions, L as useTableActions, Lt as TableGlobalConfig, Mt as exportTableData, Nt as ColumnFormatter, Ot as VirtualScrollConfig, P as useModalEdit, Pt as FormatterConfig, Q as NormalTableColumn, Qt as PrintWatermarkOptions, R as useTableExpand, Rt as applyFormatter, St as ExpandConfig, Tt as TableConfig, U as _default, Ut as UseCrossPageSelectionReturn, V as defineTableConfig, Vt as CrossPageSelectionConfig, W as ApiFunction, Wt as useCrossPageSelection, X as EditMode, Xt as DynamicRowsReturn, Y as DataRecord, Yt as DynamicRowsOptions, Z as MaybeRefLike, Zt as useDynamicRows, _t as ColumnDragConfig, at as StrictTableColumn, bt as EditConfig, ct as TableInstance, dt as TableRowKeyIssue, en as usePrintWatermark, et as ParentChildLinkMode, ft as UseTableExpandOptions, gt as BatchActionsConfig, ht as useRowEdit, i as useTableQuery, it as SimpleTableActions, jt as ExportConfig, kt as createEditModeChecker, lt as TableProps, mt as useTableManager, n as TableQueryResult, nt as RowAction, ot as TableColumn, pt as UseTableExpandReturn, q as ColumnWithKey, qt as UseRowDragReturn, r as UseTableQueryOptions, rt as SelectOption, st as TableEmits, t as TableQueryContext, tt as RenderFunction, ut as TableRowKey, vt as CrudBinding, wt as SummaryConfig, xt as ErrorConfig, yt as DisplayConfig, z as useTableColumns, zt as mergeGlobalConfig } from "./useTableQuery.cjs";
2
2
  import { r as resolveComponentDensity, t as ComponentDensity } from "./density.cjs";
3
3
  export { type ApiFunction, type BatchActionsConfig, type BuiltInTableColumn, _default as C_Table, type ChildSelectionState, type ColumnDragConfig, type ColumnFormatter, type ColumnWithKey, type ComponentDensity, type CrossPageSelectionConfig, type CrudBinding, type CustomAction, type DataRecord, type DisplayConfig, type DynamicRowsOptions, type DynamicRowsReturn, type EditConfig, type EditMode, type ErrorConfig, type ExpandConfig, type ExportConfig, type FormatterConfig, type FormatterType, type MaybeRefLike, type NormalTableColumn, type PaginationConfig, type ParentChildLinkMode, type PrintWatermarkOptions, type RenderFunction, type RowAction, type RowDragConfig, type SelectOption, type SimpleTableActions, type StrictTableColumn, type SummaryConfig, TABLE_GLOBAL_CONFIG_KEY, type TableColumn, type TableConfig, type TableEmits, type TableGlobalConfig, type TableInstance, type TableProps, type TableQueryContext, type TableQueryResult, type TableRowKey, type TableRowKeyIssue, type SelectionConfig as TableSelectionConfig, type ToolbarConfig, type TreeConfig, type UseCrossPageSelectionOptions, type UseCrossPageSelectionReturn, type UseRowDragOptions, type UseRowDragReturn, type UseTableExpandOptions, type UseTableExpandReturn, type UseTableQueryOptions, type VirtualScrollConfig, applyFormatter, createEditModeChecker, defineTableColumns, defineTableConfig, exportTableData, mergeGlobalConfig, printPresets, resolveComponentDensity, resolveConfig, useCellEdit, useCrossPageSelection, useDynamicRows, useModalEdit, usePagination, usePrintWatermark, useRowDrag, useRowEdit, useTableActions, useTableColumns, useTableExpand, useTableGlobalConfig, useTableManager, useTableQuery, validateTableRowKeys };
package/dist/C_Table.d.ts CHANGED
@@ -2,7 +2,7 @@ import "./presets.js";
2
2
  import "./useEdgeInteraction.js";
3
3
  import "./public.js";
4
4
  import "./index4.vue.js";
5
- import { $ as MaybeRefLike, $t as printPresets, At as ExpandConfig, B as useRowEdit, Bt as exportTableData, Ct as useTableGlobalConfig, Dt as DisplayConfig, Et as CrudBinding, F as useCellEdit, Ft as TreeConfig, G as _default, Gt as RowDragConfig, H as defineTableColumns, Ht as UseCrossPageSelectionOptions, I as usePagination, It as VirtualScrollConfig, J as ChildSelectionState, Jt as useRowDrag, K as ApiFunction, Kt as UseRowDragOptions, L as useTableActions, Lt as createEditModeChecker, Mt as SummaryConfig, Nt as TableConfig, Ot as EditConfig, P as useModalEdit, Pt as ToolbarConfig, Q as EditMode, Qt as PrintWatermarkOptions, R as useTableExpand, Rt as resolveConfig, St as mergeGlobalConfig, Tt as ColumnDragConfig, U as defineTableConfig, Ut as UseCrossPageSelectionReturn, V as useTableColumns, Vt as CrossPageSelectionConfig, W as validateTableRowKeys, Wt as useCrossPageSelection, X as CustomAction, Xt as DynamicRowsReturn, Y as ColumnWithKey, Yt as DynamicRowsOptions, Z as DataRecord, Zt as useDynamicRows, _t as FormatterConfig, at as SelectOption, bt as TableGlobalConfig, ct as TableColumn, dt as TableProps, en as usePrintWatermark, et as NormalTableColumn, ft as TableRowKey, gt as ColumnFormatter, ht as UseTableExpandReturn, i as useTableQuery, it as RowAction, jt as SelectionConfig, kt as ErrorConfig, lt as TableEmits, mt as UseTableExpandOptions, n as TableQueryResult, nt as ParentChildLinkMode, ot as SimpleTableActions, pt as TableRowKeyIssue, q as BuiltInTableColumn, qt as UseRowDragReturn, r as UseTableQueryOptions, rt as RenderFunction, st as StrictTableColumn, t as TableQueryContext, tt as PaginationConfig, ut as TableInstance, vt as FormatterType, wt as BatchActionsConfig, xt as applyFormatter, yt as TABLE_GLOBAL_CONFIG_KEY, z as useTableManager, zt as ExportConfig } from "./useTableQuery.js";
5
+ import { $ as PaginationConfig, $t as printPresets, At as resolveConfig, B as defineTableColumns, Bt as useTableGlobalConfig, Ct as SelectionConfig, Dt as TreeConfig, Et as ToolbarConfig, F as useCellEdit, Ft as FormatterType, G as BuiltInTableColumn, Gt as RowDragConfig, H as validateTableRowKeys, Ht as UseCrossPageSelectionOptions, I as usePagination, It as TABLE_GLOBAL_CONFIG_KEY, J as CustomAction, Jt as useRowDrag, K as ChildSelectionState, Kt as UseRowDragOptions, L as useTableActions, Lt as TableGlobalConfig, Mt as exportTableData, Nt as ColumnFormatter, Ot as VirtualScrollConfig, P as useModalEdit, Pt as FormatterConfig, Q as NormalTableColumn, Qt as PrintWatermarkOptions, R as useTableExpand, Rt as applyFormatter, St as ExpandConfig, Tt as TableConfig, U as _default, Ut as UseCrossPageSelectionReturn, V as defineTableConfig, Vt as CrossPageSelectionConfig, W as ApiFunction, Wt as useCrossPageSelection, X as EditMode, Xt as DynamicRowsReturn, Y as DataRecord, Yt as DynamicRowsOptions, Z as MaybeRefLike, Zt as useDynamicRows, _t as ColumnDragConfig, at as StrictTableColumn, bt as EditConfig, ct as TableInstance, dt as TableRowKeyIssue, en as usePrintWatermark, et as ParentChildLinkMode, ft as UseTableExpandOptions, gt as BatchActionsConfig, ht as useRowEdit, i as useTableQuery, it as SimpleTableActions, jt as ExportConfig, kt as createEditModeChecker, lt as TableProps, mt as useTableManager, n as TableQueryResult, nt as RowAction, ot as TableColumn, pt as UseTableExpandReturn, q as ColumnWithKey, qt as UseRowDragReturn, r as UseTableQueryOptions, rt as SelectOption, st as TableEmits, t as TableQueryContext, tt as RenderFunction, ut as TableRowKey, vt as CrudBinding, wt as SummaryConfig, xt as ErrorConfig, yt as DisplayConfig, z as useTableColumns, zt as mergeGlobalConfig } from "./useTableQuery.js";
6
6
  import "./useDraggableLayout.js";
7
7
  import "./useDynamicFormState.js";
8
8
  import { r as resolveComponentDensity, t as ComponentDensity } from "./density.js";
package/dist/C_Tree.css CHANGED
@@ -1,6 +1,6 @@
1
1
  :root{--c-primary: var(--primary-color, #2080f0);--c-primary-hover: var(--primary-color-hover, #4098fc);--c-primary-pressed: var(--primary-color-pressed, #1060c9);--c-success: var(--success-color, #18a058);--c-warning: var(--warning-color, #f0a020);--c-error: var(--error-color, #d03050);--c-info: var(--info-color, #2080f0);--c-bg-body: var(--body-color, #ffffff);--c-bg-card: var(--card-color, #ffffff);--c-bg-surface: var(--popover-color, #ffffff);--c-text-1: var(--text-color-1, #262626);--c-text-2: var(--text-color-2, #525252);--c-text-3: var(--text-color-3, #a3a3a3);--c-text-4: var(--text-color-4, #c0c0c0);--c-border: var(--border-color, #e5e7eb);--c-radius-sm: var(--border-radius-small, 4px);--c-radius: var(--border-radius, 6px);--c-transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);--c-transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);--c-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);--c-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);--c-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1)}
2
2
 
3
- .c-tree[data-v-0673677b] {
3
+ .c-tree[data-v-76801f3f] {
4
4
  --c-tree-padding: 12px;
5
5
  --c-tree-gap: 10px;
6
6
  display: flex;
@@ -10,15 +10,15 @@
10
10
  height: 100%;
11
11
  gap: var(--c-tree-gap);
12
12
  }
13
- .c-tree--compact[data-v-0673677b] {
13
+ .c-tree--compact[data-v-76801f3f] {
14
14
  --c-tree-padding: 8px;
15
15
  --c-tree-gap: 8px;
16
16
  }
17
- .c-tree--comfortable[data-v-0673677b] {
17
+ .c-tree--comfortable[data-v-76801f3f] {
18
18
  --c-tree-padding: 16px;
19
19
  --c-tree-gap: 14px;
20
20
  }
21
- .c-tree .c-tree-toolbar[data-v-0673677b] {
21
+ .c-tree .c-tree-toolbar[data-v-76801f3f] {
22
22
  display: flex;
23
23
  flex-wrap: wrap;
24
24
  align-items: center;
@@ -28,21 +28,21 @@
28
28
  border-radius: var(--c-tree-radius);
29
29
  flex-shrink: 0;
30
30
  }
31
- .c-tree .toolbar-left[data-v-0673677b] {
31
+ .c-tree .toolbar-left[data-v-76801f3f] {
32
32
  flex: 1 1 140px;
33
33
  min-width: 0;
34
34
  }
35
- .c-tree .toolbar-left .search-input[data-v-0673677b] {
35
+ .c-tree .toolbar-left .search-input[data-v-76801f3f] {
36
36
  width: 100%;
37
37
  }
38
- .c-tree .toolbar-right[data-v-0673677b] {
38
+ .c-tree .toolbar-right[data-v-76801f3f] {
39
39
  display: flex;
40
40
  flex-wrap: wrap;
41
41
  align-items: center;
42
42
  gap: 6px;
43
43
  margin-left: auto;
44
44
  }
45
- .c-tree .c-tree-container[data-v-0673677b] {
45
+ .c-tree .c-tree-container[data-v-76801f3f] {
46
46
  flex: 1 1 auto;
47
47
  min-width: 0;
48
48
  min-height: 0;
@@ -52,33 +52,33 @@
52
52
  overflow: auto;
53
53
  scrollbar-width: thin;
54
54
  }
55
- .c-tree--virtual .c-tree-container[data-v-0673677b] {
55
+ .c-tree--virtual .c-tree-container[data-v-76801f3f] {
56
56
  overflow: hidden;
57
57
  }
58
- .c-tree--virtual .tree-instance[data-v-0673677b] {
58
+ .c-tree--virtual .tree-instance[data-v-76801f3f] {
59
59
  height: 100%;
60
60
  }
61
- .c-tree[data-v-0673677b] .n-tree-node-content,
62
- .c-tree[data-v-0673677b] .n-tree-node-content__text {
61
+ .c-tree[data-v-76801f3f] .n-tree-node-content,
62
+ .c-tree[data-v-76801f3f] .n-tree-node-content__text {
63
63
  min-width: 0;
64
64
  }
65
- .c-tree[data-v-0673677b] .c-tree-node-label {
65
+ .c-tree[data-v-76801f3f] .c-tree-node-label {
66
66
  display: flex;
67
67
  align-items: center;
68
68
  min-width: 0;
69
69
  width: 100%;
70
70
  gap: 6px;
71
71
  }
72
- .c-tree[data-v-0673677b] .c-tree-node-title {
72
+ .c-tree[data-v-76801f3f] .c-tree-node-title {
73
73
  overflow: hidden;
74
74
  white-space: nowrap;
75
75
  text-overflow: ellipsis;
76
76
  }
77
- .c-tree[data-v-0673677b] .c-tree-node-status,
78
- .c-tree[data-v-0673677b] .c-tree-node-icon {
77
+ .c-tree[data-v-76801f3f] .c-tree-node-status,
78
+ .c-tree[data-v-76801f3f] .c-tree-node-icon {
79
79
  flex-shrink: 0;
80
80
  }
81
- .c-tree[data-v-0673677b] .tree-actions {
81
+ .c-tree[data-v-76801f3f] .tree-actions {
82
82
  display: inline-flex;
83
83
  align-items: center;
84
84
  gap: 2px;
@@ -86,21 +86,21 @@
86
86
  opacity: 0;
87
87
  transition: opacity 0.15s ease;
88
88
  }
89
- .c-tree[data-v-0673677b] .n-tree-node:hover .tree-actions,
90
- .c-tree[data-v-0673677b] .n-tree-node:focus-within .tree-actions,
91
- .c-tree[data-v-0673677b] .tree-actions:focus-within {
89
+ .c-tree[data-v-76801f3f] .n-tree-node:hover .tree-actions,
90
+ .c-tree[data-v-76801f3f] .n-tree-node:focus-within .tree-actions,
91
+ .c-tree[data-v-76801f3f] .tree-actions:focus-within {
92
92
  opacity: 1;
93
93
  }
94
94
  @media (hover: none), (max-width: 640px) {
95
- .c-tree[data-v-0673677b] .tree-actions {
95
+ .c-tree[data-v-76801f3f] .tree-actions {
96
96
  opacity: 1;
97
97
  }
98
98
  }
99
99
  @media (prefers-reduced-motion: reduce) {
100
- .c-tree[data-v-0673677b] .tree-actions {
100
+ .c-tree[data-v-76801f3f] .tree-actions {
101
101
  transition: none;
102
102
  }
103
103
  }
104
104
 
105
105
  /* layer: default */
106
- .filter[data-v-0673677b]{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
106
+ .filter[data-v-76801f3f]{filter:var(--un-blur) var(--un-brightness) var(--un-contrast) var(--un-drop-shadow) var(--un-grayscale) var(--un-hue-rotate) var(--un-invert) var(--un-saturate) var(--un-sepia);}
package/dist/C_Tree2.cjs CHANGED
@@ -1 +1 @@
1
- require(`./chunk.cjs`);const e=require(`./density.cjs`),t=require(`./C_Icon2.cjs`),n=require(`./export-helper.cjs`);let r=require(`vue`),i=require(`naive-ui`);const a={menu:{draggable:!0,showLine:!0,iconConfig:{typeMap:{directory:`mdi:folder`,menu:`mdi:file-document`,button:`mdi:button-cursor`}},actions:[{key:`add`,text:`新增子菜单`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该菜单吗?`}]},file:{draggable:!1,showLine:!1,iconConfig:{typeMap:{folder:`mdi:folder`,file:`mdi:file-document`,image:`mdi:file-image`,video:`mdi:file-video`,audio:`mdi:file-music`}},actions:[{key:`open`,text:`打开`,icon:`mdi:folder-open`,type:`primary`},{key:`rename`,text:`重命名`,icon:`mdi:rename-box`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该文件吗?`}]},org:{draggable:!1,showLine:!0,iconConfig:{typeMap:{department:`mdi:domain`,user:`mdi:account`,manager:`mdi:account-tie`}},actions:[{key:`add`,text:`新增下级`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`}]},custom:{}},o=e=>typeof e==`string`||typeof e==`number`,s=e=>!!e&&typeof e==`object`;function c(e,t,n,r){let i=new Map,a=new Set,c=new WeakSet,l=[],u=e=>{for(let t=e.length-1;t>=0;t--)l.push(e[t])};for(u(e);l.length;){let e=l.pop();if(!s(e)||c.has(e))continue;c.add(e);let d=e[t],f=o(d);f&&!i.has(d)&&i.set(d,e);let p=r?r(e):e[n];Array.isArray(p)&&p.length&&(f&&a.add(d),u(p))}return{nodes:i,expandableKeys:[...a]}}function l(n,o,s={}){let l=(0,r.computed)(()=>n.treeProps??{}),u=(0,r.computed)(()=>a[n.mode??`custom`]),d=(0,r.computed)(()=>n.draggable??l.value.draggable??u.value.draggable??!1),f=(0,r.computed)(()=>n.showLine??l.value.showLine??u.value.showLine??!0),p=(0,r.computed)(()=>({...u.value,...n,draggable:d.value,showLine:f.value,iconConfig:{default:`mdi:circle-outline`,...u.value.iconConfig,...n.iconConfig,typeMap:{...u.value.iconConfig?.typeMap,...n.iconConfig?.typeMap},colorMap:{...u.value.iconConfig?.colorMap,...n.iconConfig?.colorMap}},actions:n.actions??u.value.actions??[]})),m=(0,r.computed)(()=>n.keyField??l.value.keyField??`id`),h=(0,r.computed)(()=>n.labelField??l.value.labelField??`name`),g=(0,r.computed)(()=>n.childrenField??l.value.childrenField??`children`),_=(0,r.computed)(()=>c(n.data,m.value,g.value,l.value.getChildren)),v=()=>n.defaultExpandAll??l.value.defaultExpandAll??!1,y=(0,r.ref)(v()),b=e=>{let t=`default${e}Keys`;return[...n[t]??l.value[t]??[]]},x=(0,r.ref)(v()?_.value.expandableKeys:b(`Expanded`)),S=(0,r.ref)(b(`Selected`)),C=(0,r.ref)(b(`Checked`)),w=(0,r.computed)({get:()=>n.expandedKeys??l.value.expandedKeys??x.value,set:e=>M(e)}),T=(0,r.computed)({get:()=>n.selectedKeys??l.value.selectedKeys??S.value,set:e=>N(e)}),E=(0,r.computed)({get:()=>n.checkedKeys??l.value.checkedKeys??C.value,set:e=>P(e)}),D=(0,r.ref)(``),O=(0,r.computed)({get:()=>n.searchPattern??l.value.pattern??D.value,set:e=>{D.value=e,o(`update:searchPattern`,e)}}),k=(0,r.computed)(()=>{let e=_.value.expandableKeys,t=new Set(w.value);return e.length>0&&e.every(e=>t.has(e))});(0,r.watch)(()=>_.value.expandableKeys,e=>{y.value&&(x.value=[...e])}),(0,r.watch)(v,e=>{y.value=e,e&&(x.value=[..._.value.expandableKeys])});for(let[e,t]of[[`Expanded`,x],[`Selected`,S],[`Checked`,C]]){let i=`default${e}Keys`;(0,r.watch)(()=>n[i]??l.value[i],n=>{l.value.watchProps?.includes(i)&&(t.value=e===`Expanded`&&v()?[..._.value.expandableKeys]:[...n??[]])})}let A=e=>e.map(e=>_.value.nodes.get(e)??null),j=(e,t)=>{let n=l.value[e],r=Array.isArray(n)?n:[n];for(let e of r)typeof e==`function`&&e(...t)},M=(e,t=A(e),n={node:null,action:`expand`})=>{n.action!==`filter`&&(y.value=!1),x.value=[...e],o(`update:expandedKeys`,e,t,n),j(`onUpdateExpandedKeys`,[e,t,n]),j(`onUpdate:expandedKeys`,[e,t,n])},N=(e,t=A(e),n={node:t[0]??null,action:e.length?`select`:`unselect`})=>{S.value=[...e],o(`update:selectedKeys`,e,t,n),o(`node-select`,t[0]??null,e),j(`onUpdateSelectedKeys`,[e,t,n]),j(`onUpdate:selectedKeys`,[e,t,n])},P=(e,t=A(e),n={node:null,action:e.length?`check`:`uncheck`})=>{C.value=[...e],o(`update:checkedKeys`,e,t,n),j(`onUpdateCheckedKeys`,[e,t,n]),j(`onUpdate:checkedKeys`,[e,t,n])},F=(0,r.computed)(()=>_.value.nodes.get(T.value[0])??null),I=e=>{if(s.prefix)return s.prefix(e);if(l.value.renderPrefix)return l.value.renderPrefix(e);if(typeof e.option.prefix==`function`)return e.option.prefix();let i=e.option,a=p.value.iconConfig,o=typeof i.type==`string`?i.type:``,c=i[n.iconField??`icon`];return(0,r.h)(t.t,{name:typeof c==`string`?c:a.typeMap[o]??a.default,size:16,color:a.colorMap[o]??`currentColor`,class:`c-tree-node-icon`})},L=e=>{if(s.label)return s.label(e);if(l.value.renderLabel)return l.value.renderLabel(e);let t=String(e.option[h.value]??``);return(0,r.h)(`span`,{class:`c-tree-node-label`},[(0,r.h)(`span`,{class:`c-tree-node-title`,title:t},t),...(n.statusConfigs??[]).flatMap(t=>{let n=e.option[t.field],a=typeof n==`number`||typeof n==`string`?t.values[n]:void 0;return a?.text?[(0,r.h)(i.NTag,{type:a.type,size:`small`,class:`c-tree-node-status`},{default:()=>a.text})]:[]})])},R=(e,t)=>{e===`add`?o(`add`,t):o(`node-action`,e,t)},z=e=>{if(s.suffix)return s.suffix(e);if(l.value.renderSuffix)return l.value.renderSuffix(e);if(typeof e.option.suffix==`function`)return e.option.suffix();let n=e.option,a=p.value.actions.filter(e=>!e.show||e.show(n));return a.length?(0,r.h)(`span`,{class:`tree-actions`,onClick:e=>e.stopPropagation()},a.map(e=>{let a=a=>(0,r.h)(i.NButton,{size:`tiny`,type:e.type??`default`,quaternary:!0,disabled:!!(l.value.disabled||n[l.value.disabledField??`disabled`]),"aria-label":e.text||e.key,title:e.text,onClick:t=>{t.stopPropagation(),a||R(e.key,n)}},{icon:()=>(0,r.h)(t.t,{name:e.icon,size:14})});return e.confirm?(0,r.h)(i.NPopconfirm,{onPositiveClick:()=>R(e.key,n)},{trigger:()=>a(!0),default:()=>e.confirm}):a(!1)})):null},B=!0;(0,r.getCurrentScope)()&&(0,r.onScopeDispose)(()=>{B=!1});let V=(0,r.computed)(()=>{let e=l.value.onLoad;if(e)return async t=>{try{return await e(t)}catch(e){let n=t[m.value],i=typeof n==`string`||typeof n==`number`?_.value.nodes.get(n):void 0;return B&&i&&(0,r.toRaw)(i)===(0,r.toRaw)(t)&&o(`load-error`,e,t),!1}}}),H=(0,r.computed)(()=>{if(!n.data.length)return!1;let e=O.value;if(!l.value.virtualScroll||!e||l.value.showIrrelevantNodes!==!1)return!0;let t=e.toLowerCase(),r=l.value.filter??((e,n)=>{let r=n[h.value];return typeof r==`string`&&r.toLowerCase().includes(t)});for(let t of _.value.nodes.values())if(r(e,t))return!0;return!1}),U=(0,r.shallowRef)(),W=(0,r.computed)(()=>e.t(n.density)),G=(0,r.computed)(()=>({...l.value,data:n.data,virtualScroll:!!(l.value.virtualScroll&&H.value),keyField:m.value,labelField:h.value,childrenField:g.value,draggable:p.value.draggable,showLine:p.value.showLine,blockLine:l.value.blockLine??!0,blockNode:l.value.blockNode??!0,pattern:O.value,expandedKeys:w.value,selectedKeys:T.value,checkedKeys:E.value,renderPrefix:I,renderLabel:L,renderSuffix:z,themeOverrides:{nodeHeight:n.density===`compact`?`28px`:n.density===`comfortable`?`40px`:`34px`,nodeWrapperPadding:`0`,...l.value.themeOverrides},onLoad:V.value,onUpdateExpandedKeys:void 0,onUpdateSelectedKeys:void 0,onUpdateCheckedKeys:void 0,"onUpdate:expandedKeys":M,"onUpdate:selectedKeys":N,"onUpdate:checkedKeys":P,onDrop:e=>{o(`node-drop`,e),j(`onDrop`,[e])}})),K=()=>k.value?J():q(),q=()=>{M([..._.value.expandableKeys]),y.value=!0},J=()=>M([],[],{node:null,action:`collapse`}),Y=()=>o(`add`),X=()=>o(`refresh`),Z={expandAll:q,collapseAll:J,selectNode:e=>N([e]),clearSelection:()=>N([]),setCheckedKeys:e=>P([...e]),clearChecked:()=>P([]),getSelectedNode:()=>F.value,getCheckedData:()=>U.value?.getCheckedData()??{keys:[...E.value],options:A(E.value)},getIndeterminateData:()=>U.value?.getIndeterminateData()??{keys:[],options:[]},scrollTo:(...e)=>{let t=U.value?.scrollTo;t?.(...e)},expandedKeys:w,selectedKeys:T,checkedKeys:E};return{internalSearchPattern:D,expandedKeys:w,selectedKeys:T,checkedKeys:E,isAllExpanded:k,treeData:(0,r.computed)(()=>n.data),currentSearchPattern:O,renderPrefix:I,renderLabel:L,renderSuffix:z,treeBindings:G,treeRef:U,density:W,toggleExpandAll:K,handleExpandedKeysChange:M,handleSelectedKeysChange:N,handleCheckedKeysChange:P,handleDrop:e=>o(`node-drop`,e),handleAdd:Y,handleRefresh:X,expose:Z}}const u={key:0,class:`c-tree-toolbar`},d={class:`toolbar-left`},f={class:`toolbar-right`},p={class:`c-tree-container`},m=(0,r.defineComponent)({name:`C_Tree`,__name:`index`,props:{data:{},mode:{default:`custom`},treeProps:{},density:{default:`default`},keyField:{},labelField:{},childrenField:{},searchPattern:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`搜索...`},draggable:{type:Boolean,default:void 0},showLine:{type:Boolean,default:void 0},showToolbar:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},addText:{default:`新增`},refreshable:{type:Boolean,default:!0},iconField:{},iconConfig:{},statusConfigs:{},actions:{},defaultExpandAll:{type:Boolean,default:void 0},defaultExpandedKeys:{},defaultSelectedKeys:{},defaultCheckedKeys:{},expandedKeys:{},selectedKeys:{},checkedKeys:{}},emits:[`update:searchPattern`,`update:expandedKeys`,`update:selectedKeys`,`update:checkedKeys`,`node-select`,`node-action`,`node-drop`,`load-error`,`add`,`refresh`],setup(e,{expose:n,emit:a}){let o=e,s=a,c=(0,r.useSlots)(),m=(0,i.useThemeVars)(),h=(0,r.computed)(()=>({"--c-tree-border":m.value.borderColor,"--c-tree-surface":m.value.actionColor,"--c-tree-radius":m.value.borderRadius})),{currentSearchPattern:g,isAllExpanded:_,treeBindings:v,treeRef:y,density:b,toggleExpandAll:x,handleAdd:S,handleRefresh:C,expose:w}=l(o,s,c);return n(w),(n,a)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)([`c-tree`,[`c-tree--${(0,r.unref)(b).density}`,{"c-tree--virtual":(0,r.unref)(v).virtualScroll}]]),style:(0,r.normalizeStyle)(h.value)},[e.showToolbar?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,u,[(0,r.createElementVNode)(`div`,d,[e.searchable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NInput),{key:0,value:(0,r.unref)(g),"onUpdate:value":a[0]||=e=>(0,r.isRef)(g)?g.value=e:null,size:(0,r.unref)(b).size,placeholder:e.searchPlaceholder,"input-props":{"aria-label":`搜索树节点`},clearable:``,class:`search-input`},{prefix:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:magnify`,size:16})]),_:1},8,[`value`,`size`,`placeholder`])):(0,r.createCommentVNode)(`v-if`,!0)]),(0,r.createElementVNode)(`div`,f,[(0,r.renderSlot)(n.$slots,`toolbar-actions`,{},()=>[e.addable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:0,type:`primary`,size:(0,r.unref)(b).size,onClick:a[1]||=e=>(0,r.unref)(S)()},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:plus`,size:16})]),default:(0,r.withCtx)(()=>[(0,r.createTextVNode)(` `+(0,r.toDisplayString)(e.addText),1)]),_:1},8,[`size`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createVNode)((0,r.unref)(i.NButton),{size:(0,r.unref)(b).size,disabled:!e.data.length,"aria-pressed":(0,r.unref)(_),onClick:(0,r.unref)(x)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:file-tree`,size:16})]),default:(0,r.withCtx)(()=>[(0,r.createTextVNode)(` `+(0,r.toDisplayString)((0,r.unref)(_)?`收起全部`:`展开全部`),1)]),_:1},8,[`size`,`disabled`,`aria-pressed`,`onClick`]),e.refreshable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:1,size:(0,r.unref)(b).size,onClick:(0,r.unref)(C)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:refresh`,size:16})]),default:(0,r.withCtx)(()=>[a[2]||=(0,r.createTextVNode)(` 刷新 `,-1)]),_:1},8,[`size`,`onClick`])):(0,r.createCommentVNode)(`v-if`,!0)],!0)])])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createElementVNode)(`div`,p,[(0,r.createVNode)((0,r.unref)(i.NTree),(0,r.mergeProps)({ref_key:`treeRef`,ref:y},(0,r.unref)(v),{class:`tree-instance`}),(0,r.createSlots)({_:2},[n.$slots.empty?{name:`empty`,fn:(0,r.withCtx)(()=>[(0,r.renderSlot)(n.$slots,`empty`,{},void 0,!0)]),key:`0`}:void 0]),1040)])],6))}});var h=n.t(m,[[`__scopeId`,`data-v-0673677b`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return h}});
1
+ require(`./chunk.cjs`);const e=require(`./density.cjs`),t=require(`./C_Icon2.cjs`),n=require(`./export-helper.cjs`);let r=require(`vue`),i=require(`naive-ui`);const a={menu:{draggable:!0,showLine:!0,iconConfig:{typeMap:{directory:`mdi:folder`,menu:`mdi:file-document`,button:`mdi:button-cursor`}},actions:[{key:`add`,text:`新增子菜单`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该菜单吗?`}]},file:{draggable:!1,showLine:!1,iconConfig:{typeMap:{folder:`mdi:folder`,file:`mdi:file-document`,image:`mdi:file-image`,video:`mdi:file-video`,audio:`mdi:file-music`}},actions:[{key:`open`,text:`打开`,icon:`mdi:folder-open`,type:`primary`},{key:`rename`,text:`重命名`,icon:`mdi:rename-box`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该文件吗?`}]},org:{draggable:!1,showLine:!0,iconConfig:{typeMap:{department:`mdi:domain`,user:`mdi:account`,manager:`mdi:account-tie`}},actions:[{key:`add`,text:`新增下级`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`}]},custom:{}},o=e=>typeof e==`string`||typeof e==`number`,s=e=>!!e&&typeof e==`object`;function c(e,t,n,r){let i=new Map,a=new Set,c=new WeakSet,l=[],u=e=>{for(let t=e.length-1;t>=0;t--)l.push(e[t])};for(u(e);l.length;){let e=l.pop();if(!s(e)||c.has(e))continue;c.add(e);let d=e[t],f=o(d);f&&!i.has(d)&&i.set(d,e);let p=r?r(e):e[n];Array.isArray(p)&&p.length&&(f&&a.add(d),u(p))}return{nodes:i,expandableKeys:[...a]}}function l(n,o,s={}){let l=(0,r.computed)(()=>n.treeProps??{}),u=(0,r.computed)(()=>a[n.mode??`custom`]),d=(0,r.computed)(()=>n.draggable??l.value.draggable??u.value.draggable??!1),f=(0,r.computed)(()=>n.showLine??l.value.showLine??u.value.showLine??!0),p=(0,r.computed)(()=>({...u.value,...n,draggable:d.value,showLine:f.value,iconConfig:{default:`mdi:circle-outline`,...u.value.iconConfig,...n.iconConfig,typeMap:{...u.value.iconConfig?.typeMap,...n.iconConfig?.typeMap},colorMap:{...u.value.iconConfig?.colorMap,...n.iconConfig?.colorMap}},actions:n.actions??u.value.actions??[]})),m=(0,r.computed)(()=>n.keyField??l.value.keyField??`id`),h=(0,r.computed)(()=>n.labelField??l.value.labelField??`name`),g=(0,r.computed)(()=>n.childrenField??l.value.childrenField??`children`),_=(0,r.computed)(()=>c(n.data,m.value,g.value,l.value.getChildren)),v=()=>n.defaultExpandAll??l.value.defaultExpandAll??!1,y=(0,r.ref)(v()),b=e=>{let t=`default${e}Keys`;return[...n[t]??l.value[t]??[]]},x=(0,r.ref)(v()?_.value.expandableKeys:b(`Expanded`)),S=(0,r.ref)(b(`Selected`)),C=(0,r.ref)(b(`Checked`)),w=(0,r.computed)({get:()=>n.expandedKeys??l.value.expandedKeys??x.value,set:e=>M(e)}),T=(0,r.computed)({get:()=>n.selectedKeys??l.value.selectedKeys??S.value,set:e=>N(e)}),E=(0,r.computed)({get:()=>n.checkedKeys??l.value.checkedKeys??C.value,set:e=>P(e)}),D=(0,r.ref)(``),O=(0,r.computed)({get:()=>n.searchPattern??l.value.pattern??D.value,set:e=>{D.value=e,o(`update:searchPattern`,e)}}),k=(0,r.computed)(()=>{let e=_.value.expandableKeys,t=new Set(w.value);return e.length>0&&e.every(e=>t.has(e))});(0,r.watch)(()=>_.value.expandableKeys,e=>{y.value&&(x.value=[...e])}),(0,r.watch)(v,e=>{y.value=e,e&&(x.value=[..._.value.expandableKeys])});for(let[e,t]of[[`Expanded`,x],[`Selected`,S],[`Checked`,C]]){let i=`default${e}Keys`;(0,r.watch)(()=>n[i]??l.value[i],n=>{l.value.watchProps?.includes(i)&&(t.value=e===`Expanded`&&v()?[..._.value.expandableKeys]:[...n??[]])})}let A=e=>e.map(e=>_.value.nodes.get(e)??null),j=(e,t)=>{let n=l.value[e],r=Array.isArray(n)?n:[n];for(let e of r)typeof e==`function`&&e(...t)},M=(e,t=A(e),n={node:null,action:`expand`})=>{n.action!==`filter`&&(y.value=!1),x.value=[...e],o(`update:expandedKeys`,e,t,n),j(`onUpdateExpandedKeys`,[e,t,n]),j(`onUpdate:expandedKeys`,[e,t,n])},N=(e,t=A(e),n={node:t[0]??null,action:e.length?`select`:`unselect`})=>{S.value=[...e],o(`update:selectedKeys`,e,t,n),o(`node-select`,t[0]??null,e),j(`onUpdateSelectedKeys`,[e,t,n]),j(`onUpdate:selectedKeys`,[e,t,n])},P=(e,t=A(e),n={node:null,action:e.length?`check`:`uncheck`})=>{C.value=[...e],o(`update:checkedKeys`,e,t,n),j(`onUpdateCheckedKeys`,[e,t,n]),j(`onUpdate:checkedKeys`,[e,t,n])},F=(0,r.computed)(()=>_.value.nodes.get(T.value[0])??null),I=e=>{if(s.prefix)return s.prefix(e);if(l.value.renderPrefix)return l.value.renderPrefix(e);if(typeof e.option.prefix==`function`)return e.option.prefix();let i=e.option,a=p.value.iconConfig,o=typeof i.type==`string`?i.type:``,c=i[n.iconField??`icon`];return(0,r.h)(t.t,{name:typeof c==`string`?c:a.typeMap[o]??a.default,size:16,color:a.colorMap[o]??`currentColor`,class:`c-tree-node-icon`})},L=e=>{if(s.label)return s.label(e);if(l.value.renderLabel)return l.value.renderLabel(e);let t=String(e.option[h.value]??``);return(0,r.h)(`span`,{class:`c-tree-node-label`},[(0,r.h)(`span`,{class:`c-tree-node-title`,title:t},t),...(n.statusConfigs??[]).flatMap(t=>{let n=e.option[t.field],a=typeof n==`number`||typeof n==`string`?t.values[n]:void 0;return a?.text?[(0,r.h)(i.NTag,{type:a.type,size:`small`,class:`c-tree-node-status`},{default:()=>a.text})]:[]})])},R=(e,t)=>{e===`add`?o(`add`,t):o(`node-action`,e,t)},z=e=>{if(s.suffix)return s.suffix(e);if(l.value.renderSuffix)return l.value.renderSuffix(e);if(typeof e.option.suffix==`function`)return e.option.suffix();let n=e.option,a=p.value.actions.filter(e=>!e.show||e.show(n));return a.length?(0,r.h)(`span`,{class:`tree-actions`,onClick:e=>e.stopPropagation()},a.map(e=>{let a=a=>(0,r.h)(i.NButton,{size:`tiny`,type:e.type??`default`,quaternary:!0,disabled:!!(l.value.disabled||n[l.value.disabledField??`disabled`]),"aria-label":e.text||e.key,title:e.text,onClick:t=>{t.stopPropagation(),a||R(e.key,n)}},{icon:()=>(0,r.h)(t.t,{name:e.icon,size:14})});return e.confirm?(0,r.h)(i.NPopconfirm,{onPositiveClick:()=>R(e.key,n)},{trigger:()=>a(!0),default:()=>e.confirm}):a(!1)})):null},B=!0;(0,r.getCurrentScope)()&&(0,r.onScopeDispose)(()=>{B=!1});let V=(0,r.computed)(()=>{let e=l.value.onLoad;if(e)return async t=>{try{return await e(t)}catch(e){let n=t[m.value],i=typeof n==`string`||typeof n==`number`?_.value.nodes.get(n):void 0;return B&&i&&(0,r.toRaw)(i)===(0,r.toRaw)(t)&&o(`load-error`,e,t),!1}}}),H=(0,r.computed)(()=>{if(!n.data.length)return!1;let e=O.value;if(!l.value.virtualScroll||!e||l.value.showIrrelevantNodes!==!1)return!0;let t=e.toLowerCase(),r=l.value.filter??((e,n)=>{let r=n[h.value];return typeof r==`string`&&r.toLowerCase().includes(t)});for(let t of _.value.nodes.values())if(r(e,t))return!0;return!1}),U=(0,r.shallowRef)(),W=(0,r.computed)(()=>e.t(n.density)),G=(0,r.computed)(()=>({...l.value,data:n.data,virtualScroll:!!(l.value.virtualScroll&&H.value),keyField:m.value,labelField:h.value,childrenField:g.value,draggable:p.value.draggable,showLine:p.value.showLine,blockLine:l.value.blockLine??!0,blockNode:l.value.blockNode??!0,pattern:O.value,expandedKeys:w.value,selectedKeys:T.value,checkedKeys:E.value,renderPrefix:I,renderLabel:L,renderSuffix:z,themeOverrides:{nodeHeight:n.density===`compact`?`28px`:n.density===`comfortable`?`40px`:`34px`,nodeWrapperPadding:`0`,...l.value.themeOverrides},onLoad:V.value,onUpdateExpandedKeys:void 0,onUpdateSelectedKeys:void 0,onUpdateCheckedKeys:void 0,"onUpdate:expandedKeys":M,"onUpdate:selectedKeys":N,"onUpdate:checkedKeys":P,onDrop:e=>{o(`node-drop`,e),j(`onDrop`,[e])}})),K=()=>k.value?J():q(),q=()=>{M([..._.value.expandableKeys]),y.value=!0},J=()=>M([],[],{node:null,action:`collapse`}),Y=()=>o(`add`),X=()=>o(`refresh`),Z={expandAll:q,collapseAll:J,selectNode:e=>N([e]),clearSelection:()=>N([]),setCheckedKeys:e=>P([...e]),clearChecked:()=>P([]),getSelectedNode:()=>F.value,getCheckedData:()=>U.value?.getCheckedData()??{keys:[...E.value],options:A(E.value)},getIndeterminateData:()=>U.value?.getIndeterminateData()??{keys:[],options:[]},scrollTo:(...e)=>{let t=U.value?.scrollTo;t?.(...e)},expandedKeys:w,selectedKeys:T,checkedKeys:E};return{internalSearchPattern:D,expandedKeys:w,selectedKeys:T,checkedKeys:E,isAllExpanded:k,treeData:(0,r.computed)(()=>n.data),currentSearchPattern:O,renderPrefix:I,renderLabel:L,renderSuffix:z,treeBindings:G,treeRef:U,density:W,toggleExpandAll:K,handleExpandedKeysChange:M,handleSelectedKeysChange:N,handleCheckedKeysChange:P,handleDrop:e=>o(`node-drop`,e),handleAdd:Y,handleRefresh:X,expose:Z}}const u={key:0,class:`c-tree-toolbar`},d={class:`toolbar-left`},f={class:`toolbar-right`},p={class:`c-tree-container`},m=(0,r.defineComponent)({name:`C_Tree`,__name:`index`,props:{data:{},mode:{default:`custom`},treeProps:{},density:{default:`default`},keyField:{},labelField:{},childrenField:{},searchPattern:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`搜索...`},draggable:{type:Boolean,default:void 0},showLine:{type:Boolean,default:void 0},showToolbar:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},addText:{default:`新增`},refreshable:{type:Boolean,default:!0},iconField:{},iconConfig:{},statusConfigs:{},actions:{},defaultExpandAll:{type:Boolean,default:void 0},defaultExpandedKeys:{},defaultSelectedKeys:{},defaultCheckedKeys:{},expandedKeys:{},selectedKeys:{},checkedKeys:{}},emits:[`update:searchPattern`,`update:expandedKeys`,`update:selectedKeys`,`update:checkedKeys`,`node-select`,`node-action`,`node-drop`,`load-error`,`add`,`refresh`],setup(e,{expose:n,emit:a}){let o=e,s=a,c=(0,r.useSlots)(),m=(0,i.useThemeVars)(),h=(0,r.computed)(()=>({"--c-tree-border":m.value.borderColor,"--c-tree-surface":m.value.actionColor,"--c-tree-radius":m.value.borderRadius})),{currentSearchPattern:g,isAllExpanded:_,treeBindings:v,treeRef:y,density:b,toggleExpandAll:x,handleAdd:S,handleRefresh:C,expose:w}=l(o,s,c);return n(w),(n,a)=>((0,r.openBlock)(),(0,r.createElementBlock)(`div`,{class:(0,r.normalizeClass)([`c-tree`,[`c-tree--${(0,r.unref)(b).density}`,{"c-tree--virtual":(0,r.unref)(v).virtualScroll}]]),style:(0,r.normalizeStyle)(h.value)},[e.showToolbar?((0,r.openBlock)(),(0,r.createElementBlock)(`div`,u,[(0,r.createElementVNode)(`div`,d,[e.searchable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NInput),{key:0,value:(0,r.unref)(g),"onUpdate:value":a[0]||=e=>(0,r.isRef)(g)?g.value=e:null,size:(0,r.unref)(b).size,placeholder:e.searchPlaceholder,"input-props":{"aria-label":`搜索树节点`},clearable:``,class:`search-input`},{prefix:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:magnify`,size:16})]),_:1},8,[`value`,`size`,`placeholder`])):(0,r.createCommentVNode)(`v-if`,!0)]),(0,r.createElementVNode)(`div`,f,[(0,r.renderSlot)(n.$slots,`toolbar-actions`,{},()=>[e.addable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:0,type:`primary`,size:(0,r.unref)(b).size,onClick:a[1]||=e=>(0,r.unref)(S)()},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:plus`,size:16})]),default:(0,r.withCtx)(()=>[(0,r.createTextVNode)(` `+(0,r.toDisplayString)(e.addText),1)]),_:1},8,[`size`])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createVNode)((0,r.unref)(i.NButton),{size:(0,r.unref)(b).size,disabled:!e.data.length,"aria-pressed":(0,r.unref)(_),onClick:(0,r.unref)(x)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:file-tree`,size:16})]),default:(0,r.withCtx)(()=>[(0,r.createTextVNode)(` `+(0,r.toDisplayString)((0,r.unref)(_)?`收起全部`:`展开全部`),1)]),_:1},8,[`size`,`disabled`,`aria-pressed`,`onClick`]),e.refreshable?((0,r.openBlock)(),(0,r.createBlock)((0,r.unref)(i.NButton),{key:1,size:(0,r.unref)(b).size,onClick:(0,r.unref)(C)},{icon:(0,r.withCtx)(()=>[(0,r.createVNode)(t.t,{name:`mdi:refresh`,size:16})]),default:(0,r.withCtx)(()=>[a[2]||=(0,r.createTextVNode)(` 刷新 `,-1)]),_:1},8,[`size`,`onClick`])):(0,r.createCommentVNode)(`v-if`,!0)],!0)])])):(0,r.createCommentVNode)(`v-if`,!0),(0,r.createElementVNode)(`div`,p,[(0,r.createVNode)((0,r.unref)(i.NTree),(0,r.mergeProps)({ref_key:`treeRef`,ref:y},(0,r.unref)(v),{class:`tree-instance`}),(0,r.createSlots)({_:2},[n.$slots.empty?{name:`empty`,fn:(0,r.withCtx)(()=>[(0,r.renderSlot)(n.$slots,`empty`,{},void 0,!0)]),key:`0`}:void 0]),1040)])],6))}});var h=n.t(m,[[`__scopeId`,`data-v-76801f3f`]]);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return h}});
package/dist/C_Tree2.js CHANGED
@@ -1 +1 @@
1
- import{t as e}from"./density.js";import{t}from"./C_Icon2.js";import{t as n}from"./export-helper.js";import{computed as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,createSlots as c,createTextVNode as l,createVNode as u,defineComponent as d,getCurrentScope as f,h as p,isRef as m,mergeProps as h,normalizeClass as g,normalizeStyle as _,onScopeDispose as v,openBlock as y,ref as b,renderSlot as x,shallowRef as S,toDisplayString as C,toRaw as w,unref as T,useSlots as E,watch as D,withCtx as O}from"vue";import{NButton as k,NInput as A,NPopconfirm as j,NTag as M,NTree as N,useThemeVars as P}from"naive-ui";const F={menu:{draggable:!0,showLine:!0,iconConfig:{typeMap:{directory:`mdi:folder`,menu:`mdi:file-document`,button:`mdi:button-cursor`}},actions:[{key:`add`,text:`新增子菜单`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该菜单吗?`}]},file:{draggable:!1,showLine:!1,iconConfig:{typeMap:{folder:`mdi:folder`,file:`mdi:file-document`,image:`mdi:file-image`,video:`mdi:file-video`,audio:`mdi:file-music`}},actions:[{key:`open`,text:`打开`,icon:`mdi:folder-open`,type:`primary`},{key:`rename`,text:`重命名`,icon:`mdi:rename-box`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该文件吗?`}]},org:{draggable:!1,showLine:!0,iconConfig:{typeMap:{department:`mdi:domain`,user:`mdi:account`,manager:`mdi:account-tie`}},actions:[{key:`add`,text:`新增下级`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`}]},custom:{}},I=e=>typeof e==`string`||typeof e==`number`,L=e=>!!e&&typeof e==`object`;function R(e,t,n,r){let i=new Map,a=new Set,o=new WeakSet,s=[],c=e=>{for(let t=e.length-1;t>=0;t--)s.push(e[t])};for(c(e);s.length;){let e=s.pop();if(!L(e)||o.has(e))continue;o.add(e);let l=e[t],u=I(l);u&&!i.has(l)&&i.set(l,e);let d=r?r(e):e[n];Array.isArray(d)&&d.length&&(u&&a.add(l),c(d))}return{nodes:i,expandableKeys:[...a]}}function z(n,i,a={}){let o=r(()=>n.treeProps??{}),s=r(()=>F[n.mode??`custom`]),c=r(()=>n.draggable??o.value.draggable??s.value.draggable??!1),l=r(()=>n.showLine??o.value.showLine??s.value.showLine??!0),u=r(()=>({...s.value,...n,draggable:c.value,showLine:l.value,iconConfig:{default:`mdi:circle-outline`,...s.value.iconConfig,...n.iconConfig,typeMap:{...s.value.iconConfig?.typeMap,...n.iconConfig?.typeMap},colorMap:{...s.value.iconConfig?.colorMap,...n.iconConfig?.colorMap}},actions:n.actions??s.value.actions??[]})),d=r(()=>n.keyField??o.value.keyField??`id`),m=r(()=>n.labelField??o.value.labelField??`name`),h=r(()=>n.childrenField??o.value.childrenField??`children`),g=r(()=>R(n.data,d.value,h.value,o.value.getChildren)),_=()=>n.defaultExpandAll??o.value.defaultExpandAll??!1,y=b(_()),x=e=>{let t=`default${e}Keys`;return[...n[t]??o.value[t]??[]]},C=b(_()?g.value.expandableKeys:x(`Expanded`)),T=b(x(`Selected`)),E=b(x(`Checked`)),O=r({get:()=>n.expandedKeys??o.value.expandedKeys??C.value,set:e=>V(e)}),A=r({get:()=>n.selectedKeys??o.value.selectedKeys??T.value,set:e=>H(e)}),N=r({get:()=>n.checkedKeys??o.value.checkedKeys??E.value,set:e=>U(e)}),P=b(``),I=r({get:()=>n.searchPattern??o.value.pattern??P.value,set:e=>{P.value=e,i(`update:searchPattern`,e)}}),L=r(()=>{let e=g.value.expandableKeys,t=new Set(O.value);return e.length>0&&e.every(e=>t.has(e))});D(()=>g.value.expandableKeys,e=>{y.value&&(C.value=[...e])}),D(_,e=>{y.value=e,e&&(C.value=[...g.value.expandableKeys])});for(let[e,t]of[[`Expanded`,C],[`Selected`,T],[`Checked`,E]]){let r=`default${e}Keys`;D(()=>n[r]??o.value[r],n=>{o.value.watchProps?.includes(r)&&(t.value=e===`Expanded`&&_()?[...g.value.expandableKeys]:[...n??[]])})}let z=e=>e.map(e=>g.value.nodes.get(e)??null),B=(e,t)=>{let n=o.value[e],r=Array.isArray(n)?n:[n];for(let e of r)typeof e==`function`&&e(...t)},V=(e,t=z(e),n={node:null,action:`expand`})=>{n.action!==`filter`&&(y.value=!1),C.value=[...e],i(`update:expandedKeys`,e,t,n),B(`onUpdateExpandedKeys`,[e,t,n]),B(`onUpdate:expandedKeys`,[e,t,n])},H=(e,t=z(e),n={node:t[0]??null,action:e.length?`select`:`unselect`})=>{T.value=[...e],i(`update:selectedKeys`,e,t,n),i(`node-select`,t[0]??null,e),B(`onUpdateSelectedKeys`,[e,t,n]),B(`onUpdate:selectedKeys`,[e,t,n])},U=(e,t=z(e),n={node:null,action:e.length?`check`:`uncheck`})=>{E.value=[...e],i(`update:checkedKeys`,e,t,n),B(`onUpdateCheckedKeys`,[e,t,n]),B(`onUpdate:checkedKeys`,[e,t,n])},W=r(()=>g.value.nodes.get(A.value[0])??null),G=e=>{if(a.prefix)return a.prefix(e);if(o.value.renderPrefix)return o.value.renderPrefix(e);if(typeof e.option.prefix==`function`)return e.option.prefix();let r=e.option,i=u.value.iconConfig,s=typeof r.type==`string`?r.type:``,c=r[n.iconField??`icon`];return p(t,{name:typeof c==`string`?c:i.typeMap[s]??i.default,size:16,color:i.colorMap[s]??`currentColor`,class:`c-tree-node-icon`})},K=e=>{if(a.label)return a.label(e);if(o.value.renderLabel)return o.value.renderLabel(e);let t=String(e.option[m.value]??``);return p(`span`,{class:`c-tree-node-label`},[p(`span`,{class:`c-tree-node-title`,title:t},t),...(n.statusConfigs??[]).flatMap(t=>{let n=e.option[t.field],r=typeof n==`number`||typeof n==`string`?t.values[n]:void 0;return r?.text?[p(M,{type:r.type,size:`small`,class:`c-tree-node-status`},{default:()=>r.text})]:[]})])},q=(e,t)=>{e===`add`?i(`add`,t):i(`node-action`,e,t)},J=e=>{if(a.suffix)return a.suffix(e);if(o.value.renderSuffix)return o.value.renderSuffix(e);if(typeof e.option.suffix==`function`)return e.option.suffix();let n=e.option,r=u.value.actions.filter(e=>!e.show||e.show(n));return r.length?p(`span`,{class:`tree-actions`,onClick:e=>e.stopPropagation()},r.map(e=>{let r=r=>p(k,{size:`tiny`,type:e.type??`default`,quaternary:!0,disabled:!!(o.value.disabled||n[o.value.disabledField??`disabled`]),"aria-label":e.text||e.key,title:e.text,onClick:t=>{t.stopPropagation(),r||q(e.key,n)}},{icon:()=>p(t,{name:e.icon,size:14})});return e.confirm?p(j,{onPositiveClick:()=>q(e.key,n)},{trigger:()=>r(!0),default:()=>e.confirm}):r(!1)})):null},Y=!0;f()&&v(()=>{Y=!1});let X=r(()=>{let e=o.value.onLoad;if(e)return async t=>{try{return await e(t)}catch(e){let n=t[d.value],r=typeof n==`string`||typeof n==`number`?g.value.nodes.get(n):void 0;return Y&&r&&w(r)===w(t)&&i(`load-error`,e,t),!1}}}),ee=r(()=>{if(!n.data.length)return!1;let e=I.value;if(!o.value.virtualScroll||!e||o.value.showIrrelevantNodes!==!1)return!0;let t=e.toLowerCase(),r=o.value.filter??((e,n)=>{let r=n[m.value];return typeof r==`string`&&r.toLowerCase().includes(t)});for(let t of g.value.nodes.values())if(r(e,t))return!0;return!1}),Z=S(),te=r(()=>e(n.density)),ne=r(()=>({...o.value,data:n.data,virtualScroll:!!(o.value.virtualScroll&&ee.value),keyField:d.value,labelField:m.value,childrenField:h.value,draggable:u.value.draggable,showLine:u.value.showLine,blockLine:o.value.blockLine??!0,blockNode:o.value.blockNode??!0,pattern:I.value,expandedKeys:O.value,selectedKeys:A.value,checkedKeys:N.value,renderPrefix:G,renderLabel:K,renderSuffix:J,themeOverrides:{nodeHeight:n.density===`compact`?`28px`:n.density===`comfortable`?`40px`:`34px`,nodeWrapperPadding:`0`,...o.value.themeOverrides},onLoad:X.value,onUpdateExpandedKeys:void 0,onUpdateSelectedKeys:void 0,onUpdateCheckedKeys:void 0,"onUpdate:expandedKeys":V,"onUpdate:selectedKeys":H,"onUpdate:checkedKeys":U,onDrop:e=>{i(`node-drop`,e),B(`onDrop`,[e])}})),re=()=>L.value?$():Q(),Q=()=>{V([...g.value.expandableKeys]),y.value=!0},$=()=>V([],[],{node:null,action:`collapse`}),ie=()=>i(`add`),ae=()=>i(`refresh`),oe={expandAll:Q,collapseAll:$,selectNode:e=>H([e]),clearSelection:()=>H([]),setCheckedKeys:e=>U([...e]),clearChecked:()=>U([]),getSelectedNode:()=>W.value,getCheckedData:()=>Z.value?.getCheckedData()??{keys:[...N.value],options:z(N.value)},getIndeterminateData:()=>Z.value?.getIndeterminateData()??{keys:[],options:[]},scrollTo:(...e)=>{let t=Z.value?.scrollTo;t?.(...e)},expandedKeys:O,selectedKeys:A,checkedKeys:N};return{internalSearchPattern:P,expandedKeys:O,selectedKeys:A,checkedKeys:N,isAllExpanded:L,treeData:r(()=>n.data),currentSearchPattern:I,renderPrefix:G,renderLabel:K,renderSuffix:J,treeBindings:ne,treeRef:Z,density:te,toggleExpandAll:re,handleExpandedKeysChange:V,handleSelectedKeysChange:H,handleCheckedKeysChange:U,handleDrop:e=>i(`node-drop`,e),handleAdd:ie,handleRefresh:ae,expose:oe}}const B={key:0,class:`c-tree-toolbar`},V={class:`toolbar-left`},H={class:`toolbar-right`},U={class:`c-tree-container`};var W=n(d({name:`C_Tree`,__name:`index`,props:{data:{},mode:{default:`custom`},treeProps:{},density:{default:`default`},keyField:{},labelField:{},childrenField:{},searchPattern:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`搜索...`},draggable:{type:Boolean,default:void 0},showLine:{type:Boolean,default:void 0},showToolbar:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},addText:{default:`新增`},refreshable:{type:Boolean,default:!0},iconField:{},iconConfig:{},statusConfigs:{},actions:{},defaultExpandAll:{type:Boolean,default:void 0},defaultExpandedKeys:{},defaultSelectedKeys:{},defaultCheckedKeys:{},expandedKeys:{},selectedKeys:{},checkedKeys:{}},emits:[`update:searchPattern`,`update:expandedKeys`,`update:selectedKeys`,`update:checkedKeys`,`node-select`,`node-action`,`node-drop`,`load-error`,`add`,`refresh`],setup(e,{expose:n,emit:d}){let f=e,p=d,v=E(),b=P(),S=r(()=>({"--c-tree-border":b.value.borderColor,"--c-tree-surface":b.value.actionColor,"--c-tree-radius":b.value.borderRadius})),{currentSearchPattern:w,isAllExpanded:D,treeBindings:j,treeRef:M,density:F,toggleExpandAll:I,handleAdd:L,handleRefresh:R,expose:W}=z(f,p,v);return n(W),(n,r)=>(y(),o(`div`,{class:g([`c-tree`,[`c-tree--${T(F).density}`,{"c-tree--virtual":T(j).virtualScroll}]]),style:_(S.value)},[e.showToolbar?(y(),o(`div`,B,[s(`div`,V,[e.searchable?(y(),i(T(A),{key:0,value:T(w),"onUpdate:value":r[0]||=e=>m(w)?w.value=e:null,size:T(F).size,placeholder:e.searchPlaceholder,"input-props":{"aria-label":`搜索树节点`},clearable:``,class:`search-input`},{prefix:O(()=>[u(t,{name:`mdi:magnify`,size:16})]),_:1},8,[`value`,`size`,`placeholder`])):a(`v-if`,!0)]),s(`div`,H,[x(n.$slots,`toolbar-actions`,{},()=>[e.addable?(y(),i(T(k),{key:0,type:`primary`,size:T(F).size,onClick:r[1]||=e=>T(L)()},{icon:O(()=>[u(t,{name:`mdi:plus`,size:16})]),default:O(()=>[l(` `+C(e.addText),1)]),_:1},8,[`size`])):a(`v-if`,!0),u(T(k),{size:T(F).size,disabled:!e.data.length,"aria-pressed":T(D),onClick:T(I)},{icon:O(()=>[u(t,{name:`mdi:file-tree`,size:16})]),default:O(()=>[l(` `+C(T(D)?`收起全部`:`展开全部`),1)]),_:1},8,[`size`,`disabled`,`aria-pressed`,`onClick`]),e.refreshable?(y(),i(T(k),{key:1,size:T(F).size,onClick:T(R)},{icon:O(()=>[u(t,{name:`mdi:refresh`,size:16})]),default:O(()=>[r[2]||=l(` 刷新 `,-1)]),_:1},8,[`size`,`onClick`])):a(`v-if`,!0)],!0)])])):a(`v-if`,!0),s(`div`,U,[u(T(N),h({ref_key:`treeRef`,ref:M},T(j),{class:`tree-instance`}),c({_:2},[n.$slots.empty?{name:`empty`,fn:O(()=>[x(n.$slots,`empty`,{},void 0,!0)]),key:`0`}:void 0]),1040)])],6))}}),[[`__scopeId`,`data-v-0673677b`]]);export{z as n,F as r,W as t};
1
+ import{t as e}from"./density.js";import{t}from"./C_Icon2.js";import{t as n}from"./export-helper.js";import{computed as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,createSlots as c,createTextVNode as l,createVNode as u,defineComponent as d,getCurrentScope as f,h as p,isRef as m,mergeProps as h,normalizeClass as g,normalizeStyle as _,onScopeDispose as v,openBlock as y,ref as b,renderSlot as x,shallowRef as S,toDisplayString as C,toRaw as w,unref as T,useSlots as E,watch as D,withCtx as O}from"vue";import{NButton as k,NInput as A,NPopconfirm as j,NTag as M,NTree as N,useThemeVars as P}from"naive-ui";const F={menu:{draggable:!0,showLine:!0,iconConfig:{typeMap:{directory:`mdi:folder`,menu:`mdi:file-document`,button:`mdi:button-cursor`}},actions:[{key:`add`,text:`新增子菜单`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该菜单吗?`}]},file:{draggable:!1,showLine:!1,iconConfig:{typeMap:{folder:`mdi:folder`,file:`mdi:file-document`,image:`mdi:file-image`,video:`mdi:file-video`,audio:`mdi:file-music`}},actions:[{key:`open`,text:`打开`,icon:`mdi:folder-open`,type:`primary`},{key:`rename`,text:`重命名`,icon:`mdi:rename-box`,type:`info`},{key:`delete`,text:`删除`,icon:`mdi:delete`,type:`error`,confirm:`确认删除该文件吗?`}]},org:{draggable:!1,showLine:!0,iconConfig:{typeMap:{department:`mdi:domain`,user:`mdi:account`,manager:`mdi:account-tie`}},actions:[{key:`add`,text:`新增下级`,icon:`mdi:plus`,type:`primary`},{key:`edit`,text:`编辑`,icon:`mdi:pencil`,type:`info`}]},custom:{}},I=e=>typeof e==`string`||typeof e==`number`,L=e=>!!e&&typeof e==`object`;function R(e,t,n,r){let i=new Map,a=new Set,o=new WeakSet,s=[],c=e=>{for(let t=e.length-1;t>=0;t--)s.push(e[t])};for(c(e);s.length;){let e=s.pop();if(!L(e)||o.has(e))continue;o.add(e);let l=e[t],u=I(l);u&&!i.has(l)&&i.set(l,e);let d=r?r(e):e[n];Array.isArray(d)&&d.length&&(u&&a.add(l),c(d))}return{nodes:i,expandableKeys:[...a]}}function z(n,i,a={}){let o=r(()=>n.treeProps??{}),s=r(()=>F[n.mode??`custom`]),c=r(()=>n.draggable??o.value.draggable??s.value.draggable??!1),l=r(()=>n.showLine??o.value.showLine??s.value.showLine??!0),u=r(()=>({...s.value,...n,draggable:c.value,showLine:l.value,iconConfig:{default:`mdi:circle-outline`,...s.value.iconConfig,...n.iconConfig,typeMap:{...s.value.iconConfig?.typeMap,...n.iconConfig?.typeMap},colorMap:{...s.value.iconConfig?.colorMap,...n.iconConfig?.colorMap}},actions:n.actions??s.value.actions??[]})),d=r(()=>n.keyField??o.value.keyField??`id`),m=r(()=>n.labelField??o.value.labelField??`name`),h=r(()=>n.childrenField??o.value.childrenField??`children`),g=r(()=>R(n.data,d.value,h.value,o.value.getChildren)),_=()=>n.defaultExpandAll??o.value.defaultExpandAll??!1,y=b(_()),x=e=>{let t=`default${e}Keys`;return[...n[t]??o.value[t]??[]]},C=b(_()?g.value.expandableKeys:x(`Expanded`)),T=b(x(`Selected`)),E=b(x(`Checked`)),O=r({get:()=>n.expandedKeys??o.value.expandedKeys??C.value,set:e=>V(e)}),A=r({get:()=>n.selectedKeys??o.value.selectedKeys??T.value,set:e=>H(e)}),N=r({get:()=>n.checkedKeys??o.value.checkedKeys??E.value,set:e=>U(e)}),P=b(``),I=r({get:()=>n.searchPattern??o.value.pattern??P.value,set:e=>{P.value=e,i(`update:searchPattern`,e)}}),L=r(()=>{let e=g.value.expandableKeys,t=new Set(O.value);return e.length>0&&e.every(e=>t.has(e))});D(()=>g.value.expandableKeys,e=>{y.value&&(C.value=[...e])}),D(_,e=>{y.value=e,e&&(C.value=[...g.value.expandableKeys])});for(let[e,t]of[[`Expanded`,C],[`Selected`,T],[`Checked`,E]]){let r=`default${e}Keys`;D(()=>n[r]??o.value[r],n=>{o.value.watchProps?.includes(r)&&(t.value=e===`Expanded`&&_()?[...g.value.expandableKeys]:[...n??[]])})}let z=e=>e.map(e=>g.value.nodes.get(e)??null),B=(e,t)=>{let n=o.value[e],r=Array.isArray(n)?n:[n];for(let e of r)typeof e==`function`&&e(...t)},V=(e,t=z(e),n={node:null,action:`expand`})=>{n.action!==`filter`&&(y.value=!1),C.value=[...e],i(`update:expandedKeys`,e,t,n),B(`onUpdateExpandedKeys`,[e,t,n]),B(`onUpdate:expandedKeys`,[e,t,n])},H=(e,t=z(e),n={node:t[0]??null,action:e.length?`select`:`unselect`})=>{T.value=[...e],i(`update:selectedKeys`,e,t,n),i(`node-select`,t[0]??null,e),B(`onUpdateSelectedKeys`,[e,t,n]),B(`onUpdate:selectedKeys`,[e,t,n])},U=(e,t=z(e),n={node:null,action:e.length?`check`:`uncheck`})=>{E.value=[...e],i(`update:checkedKeys`,e,t,n),B(`onUpdateCheckedKeys`,[e,t,n]),B(`onUpdate:checkedKeys`,[e,t,n])},W=r(()=>g.value.nodes.get(A.value[0])??null),G=e=>{if(a.prefix)return a.prefix(e);if(o.value.renderPrefix)return o.value.renderPrefix(e);if(typeof e.option.prefix==`function`)return e.option.prefix();let r=e.option,i=u.value.iconConfig,s=typeof r.type==`string`?r.type:``,c=r[n.iconField??`icon`];return p(t,{name:typeof c==`string`?c:i.typeMap[s]??i.default,size:16,color:i.colorMap[s]??`currentColor`,class:`c-tree-node-icon`})},K=e=>{if(a.label)return a.label(e);if(o.value.renderLabel)return o.value.renderLabel(e);let t=String(e.option[m.value]??``);return p(`span`,{class:`c-tree-node-label`},[p(`span`,{class:`c-tree-node-title`,title:t},t),...(n.statusConfigs??[]).flatMap(t=>{let n=e.option[t.field],r=typeof n==`number`||typeof n==`string`?t.values[n]:void 0;return r?.text?[p(M,{type:r.type,size:`small`,class:`c-tree-node-status`},{default:()=>r.text})]:[]})])},q=(e,t)=>{e===`add`?i(`add`,t):i(`node-action`,e,t)},J=e=>{if(a.suffix)return a.suffix(e);if(o.value.renderSuffix)return o.value.renderSuffix(e);if(typeof e.option.suffix==`function`)return e.option.suffix();let n=e.option,r=u.value.actions.filter(e=>!e.show||e.show(n));return r.length?p(`span`,{class:`tree-actions`,onClick:e=>e.stopPropagation()},r.map(e=>{let r=r=>p(k,{size:`tiny`,type:e.type??`default`,quaternary:!0,disabled:!!(o.value.disabled||n[o.value.disabledField??`disabled`]),"aria-label":e.text||e.key,title:e.text,onClick:t=>{t.stopPropagation(),r||q(e.key,n)}},{icon:()=>p(t,{name:e.icon,size:14})});return e.confirm?p(j,{onPositiveClick:()=>q(e.key,n)},{trigger:()=>r(!0),default:()=>e.confirm}):r(!1)})):null},Y=!0;f()&&v(()=>{Y=!1});let X=r(()=>{let e=o.value.onLoad;if(e)return async t=>{try{return await e(t)}catch(e){let n=t[d.value],r=typeof n==`string`||typeof n==`number`?g.value.nodes.get(n):void 0;return Y&&r&&w(r)===w(t)&&i(`load-error`,e,t),!1}}}),ee=r(()=>{if(!n.data.length)return!1;let e=I.value;if(!o.value.virtualScroll||!e||o.value.showIrrelevantNodes!==!1)return!0;let t=e.toLowerCase(),r=o.value.filter??((e,n)=>{let r=n[m.value];return typeof r==`string`&&r.toLowerCase().includes(t)});for(let t of g.value.nodes.values())if(r(e,t))return!0;return!1}),Z=S(),te=r(()=>e(n.density)),ne=r(()=>({...o.value,data:n.data,virtualScroll:!!(o.value.virtualScroll&&ee.value),keyField:d.value,labelField:m.value,childrenField:h.value,draggable:u.value.draggable,showLine:u.value.showLine,blockLine:o.value.blockLine??!0,blockNode:o.value.blockNode??!0,pattern:I.value,expandedKeys:O.value,selectedKeys:A.value,checkedKeys:N.value,renderPrefix:G,renderLabel:K,renderSuffix:J,themeOverrides:{nodeHeight:n.density===`compact`?`28px`:n.density===`comfortable`?`40px`:`34px`,nodeWrapperPadding:`0`,...o.value.themeOverrides},onLoad:X.value,onUpdateExpandedKeys:void 0,onUpdateSelectedKeys:void 0,onUpdateCheckedKeys:void 0,"onUpdate:expandedKeys":V,"onUpdate:selectedKeys":H,"onUpdate:checkedKeys":U,onDrop:e=>{i(`node-drop`,e),B(`onDrop`,[e])}})),re=()=>L.value?$():Q(),Q=()=>{V([...g.value.expandableKeys]),y.value=!0},$=()=>V([],[],{node:null,action:`collapse`}),ie=()=>i(`add`),ae=()=>i(`refresh`),oe={expandAll:Q,collapseAll:$,selectNode:e=>H([e]),clearSelection:()=>H([]),setCheckedKeys:e=>U([...e]),clearChecked:()=>U([]),getSelectedNode:()=>W.value,getCheckedData:()=>Z.value?.getCheckedData()??{keys:[...N.value],options:z(N.value)},getIndeterminateData:()=>Z.value?.getIndeterminateData()??{keys:[],options:[]},scrollTo:(...e)=>{let t=Z.value?.scrollTo;t?.(...e)},expandedKeys:O,selectedKeys:A,checkedKeys:N};return{internalSearchPattern:P,expandedKeys:O,selectedKeys:A,checkedKeys:N,isAllExpanded:L,treeData:r(()=>n.data),currentSearchPattern:I,renderPrefix:G,renderLabel:K,renderSuffix:J,treeBindings:ne,treeRef:Z,density:te,toggleExpandAll:re,handleExpandedKeysChange:V,handleSelectedKeysChange:H,handleCheckedKeysChange:U,handleDrop:e=>i(`node-drop`,e),handleAdd:ie,handleRefresh:ae,expose:oe}}const B={key:0,class:`c-tree-toolbar`},V={class:`toolbar-left`},H={class:`toolbar-right`},U={class:`c-tree-container`};var W=n(d({name:`C_Tree`,__name:`index`,props:{data:{},mode:{default:`custom`},treeProps:{},density:{default:`default`},keyField:{},labelField:{},childrenField:{},searchPattern:{},searchable:{type:Boolean,default:!0},searchPlaceholder:{default:`搜索...`},draggable:{type:Boolean,default:void 0},showLine:{type:Boolean,default:void 0},showToolbar:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},addText:{default:`新增`},refreshable:{type:Boolean,default:!0},iconField:{},iconConfig:{},statusConfigs:{},actions:{},defaultExpandAll:{type:Boolean,default:void 0},defaultExpandedKeys:{},defaultSelectedKeys:{},defaultCheckedKeys:{},expandedKeys:{},selectedKeys:{},checkedKeys:{}},emits:[`update:searchPattern`,`update:expandedKeys`,`update:selectedKeys`,`update:checkedKeys`,`node-select`,`node-action`,`node-drop`,`load-error`,`add`,`refresh`],setup(e,{expose:n,emit:d}){let f=e,p=d,v=E(),b=P(),S=r(()=>({"--c-tree-border":b.value.borderColor,"--c-tree-surface":b.value.actionColor,"--c-tree-radius":b.value.borderRadius})),{currentSearchPattern:w,isAllExpanded:D,treeBindings:j,treeRef:M,density:F,toggleExpandAll:I,handleAdd:L,handleRefresh:R,expose:W}=z(f,p,v);return n(W),(n,r)=>(y(),o(`div`,{class:g([`c-tree`,[`c-tree--${T(F).density}`,{"c-tree--virtual":T(j).virtualScroll}]]),style:_(S.value)},[e.showToolbar?(y(),o(`div`,B,[s(`div`,V,[e.searchable?(y(),i(T(A),{key:0,value:T(w),"onUpdate:value":r[0]||=e=>m(w)?w.value=e:null,size:T(F).size,placeholder:e.searchPlaceholder,"input-props":{"aria-label":`搜索树节点`},clearable:``,class:`search-input`},{prefix:O(()=>[u(t,{name:`mdi:magnify`,size:16})]),_:1},8,[`value`,`size`,`placeholder`])):a(`v-if`,!0)]),s(`div`,H,[x(n.$slots,`toolbar-actions`,{},()=>[e.addable?(y(),i(T(k),{key:0,type:`primary`,size:T(F).size,onClick:r[1]||=e=>T(L)()},{icon:O(()=>[u(t,{name:`mdi:plus`,size:16})]),default:O(()=>[l(` `+C(e.addText),1)]),_:1},8,[`size`])):a(`v-if`,!0),u(T(k),{size:T(F).size,disabled:!e.data.length,"aria-pressed":T(D),onClick:T(I)},{icon:O(()=>[u(t,{name:`mdi:file-tree`,size:16})]),default:O(()=>[l(` `+C(T(D)?`收起全部`:`展开全部`),1)]),_:1},8,[`size`,`disabled`,`aria-pressed`,`onClick`]),e.refreshable?(y(),i(T(k),{key:1,size:T(F).size,onClick:T(R)},{icon:O(()=>[u(t,{name:`mdi:refresh`,size:16})]),default:O(()=>[r[2]||=l(` 刷新 `,-1)]),_:1},8,[`size`,`onClick`])):a(`v-if`,!0)],!0)])])):a(`v-if`,!0),s(`div`,U,[u(T(N),h({ref_key:`treeRef`,ref:M},T(j),{class:`tree-instance`}),c({_:2},[n.$slots.empty?{name:`empty`,fn:O(()=>[x(n.$slots,`empty`,{},void 0,!0)]),key:`0`}:void 0]),1040)])],6))}}),[[`__scopeId`,`data-v-76801f3f`]]);export{z as n,F as r,W as t};
@@ -108,17 +108,17 @@ interface CronEmits {
108
108
  //#endregion
109
109
  //#region src/components/C_Cron/index.vue.d.ts
110
110
  declare const __VLS_export: vue.DefineComponent<CronProps, CronExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
111
- "update:modelValue": (value: string) => any;
112
111
  change: (value: string) => any;
112
+ "update:modelValue": (value: string) => any;
113
113
  "validation-change": (result: CronValidation) => any;
114
114
  }, string, vue.PublicProps, Readonly<CronProps> & Readonly<{
115
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
116
115
  onChange?: ((value: string) => any) | undefined;
116
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
117
117
  "onValidation-change"?: ((result: CronValidation) => any) | undefined;
118
118
  }>, {
119
119
  disabled: boolean;
120
- showTemplates: boolean;
121
120
  showPreview: boolean;
121
+ showTemplates: boolean;
122
122
  showSecond: boolean;
123
123
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
124
124
  declare const _default: typeof __VLS_export;
@@ -108,17 +108,17 @@ interface CronEmits {
108
108
  //#endregion
109
109
  //#region src/components/C_Cron/index.vue.d.ts
110
110
  declare const __VLS_export: vue.DefineComponent<CronProps, CronExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
111
- "update:modelValue": (value: string) => any;
112
111
  change: (value: string) => any;
112
+ "update:modelValue": (value: string) => any;
113
113
  "validation-change": (result: CronValidation) => any;
114
114
  }, string, vue.PublicProps, Readonly<CronProps> & Readonly<{
115
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
116
115
  onChange?: ((value: string) => any) | undefined;
116
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
117
117
  "onValidation-change"?: ((result: CronValidation) => any) | undefined;
118
118
  }>, {
119
119
  disabled: boolean;
120
- showTemplates: boolean;
121
120
  showPreview: boolean;
121
+ showTemplates: boolean;
122
122
  showSecond: boolean;
123
123
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
124
124
  declare const _default: typeof __VLS_export;
@@ -125,12 +125,12 @@ interface FormulaEditorExpose {
125
125
  //#endregion
126
126
  //#region src/components/C_FormulaEditor/index.vue.d.ts
127
127
  declare const __VLS_export: vue.DefineComponent<FormulaEditorProps, FormulaEditorExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
128
- "update:modelValue": (value: string) => any;
129
128
  change: (value: string) => any;
129
+ "update:modelValue": (value: string) => any;
130
130
  "validation-change": (result: FormulaValidation) => any;
131
131
  }, string, vue.PublicProps, Readonly<FormulaEditorProps> & Readonly<{
132
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
133
132
  onChange?: ((value: string) => any) | undefined;
133
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
134
134
  "onValidation-change"?: ((result: FormulaValidation) => any) | undefined;
135
135
  }>, {
136
136
  disabled: boolean;
@@ -125,12 +125,12 @@ interface FormulaEditorExpose {
125
125
  //#endregion
126
126
  //#region src/components/C_FormulaEditor/index.vue.d.ts
127
127
  declare const __VLS_export: vue.DefineComponent<FormulaEditorProps, FormulaEditorExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
128
- "update:modelValue": (value: string) => any;
129
128
  change: (value: string) => any;
129
+ "update:modelValue": (value: string) => any;
130
130
  "validation-change": (result: FormulaValidation) => any;
131
131
  }, string, vue.PublicProps, Readonly<FormulaEditorProps> & Readonly<{
132
- "onUpdate:modelValue"?: ((value: string) => any) | undefined;
133
132
  onChange?: ((value: string) => any) | undefined;
133
+ "onUpdate:modelValue"?: ((value: string) => any) | undefined;
134
134
  "onValidation-change"?: ((result: FormulaValidation) => any) | undefined;
135
135
  }>, {
136
136
  disabled: boolean;
@@ -209,8 +209,8 @@ interface NotificationCenterExpose {
209
209
  //#region src/components/C_NotificationCenter/index.vue.d.ts
210
210
  declare const __VLS_export: vue.DefineComponent<NotificationCenterProps, NotificationCenterExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
211
211
  delete: (ids: string[]) => any;
212
- itemClick: (message: NotificationMessage) => any;
213
212
  read: (ids: string[]) => any;
213
+ itemClick: (message: NotificationMessage) => any;
214
214
  allRead: (category?: NotificationCategory | undefined) => any;
215
215
  unreadChange: (count: number) => any;
216
216
  wsStatusChange: (status: WSConnectionStatus) => any;
@@ -219,8 +219,8 @@ declare const __VLS_export: vue.DefineComponent<NotificationCenterProps, Notific
219
219
  viewAll: () => any;
220
220
  }, string, vue.PublicProps, Readonly<NotificationCenterProps> & Readonly<{
221
221
  onDelete?: ((ids: string[]) => any) | undefined;
222
- onItemClick?: ((message: NotificationMessage) => any) | undefined;
223
222
  onRead?: ((ids: string[]) => any) | undefined;
223
+ onItemClick?: ((message: NotificationMessage) => any) | undefined;
224
224
  onAllRead?: ((category?: NotificationCategory | undefined) => any) | undefined;
225
225
  onUnreadChange?: ((count: number) => any) | undefined;
226
226
  onWsStatusChange?: ((status: WSConnectionStatus) => any) | undefined;
@@ -209,8 +209,8 @@ interface NotificationCenterExpose {
209
209
  //#region src/components/C_NotificationCenter/index.vue.d.ts
210
210
  declare const __VLS_export: vue.DefineComponent<NotificationCenterProps, NotificationCenterExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
211
211
  delete: (ids: string[]) => any;
212
- itemClick: (message: NotificationMessage) => any;
213
212
  read: (ids: string[]) => any;
213
+ itemClick: (message: NotificationMessage) => any;
214
214
  allRead: (category?: NotificationCategory | undefined) => any;
215
215
  unreadChange: (count: number) => any;
216
216
  wsStatusChange: (status: WSConnectionStatus) => any;
@@ -219,8 +219,8 @@ declare const __VLS_export: vue.DefineComponent<NotificationCenterProps, Notific
219
219
  viewAll: () => any;
220
220
  }, string, vue.PublicProps, Readonly<NotificationCenterProps> & Readonly<{
221
221
  onDelete?: ((ids: string[]) => any) | undefined;
222
- onItemClick?: ((message: NotificationMessage) => any) | undefined;
223
222
  onRead?: ((ids: string[]) => any) | undefined;
223
+ onItemClick?: ((message: NotificationMessage) => any) | undefined;
224
224
  onAllRead?: ((category?: NotificationCategory | undefined) => any) | undefined;
225
225
  onUnreadChange?: ((count: number) => any) | undefined;
226
226
  onWsStatusChange?: ((status: WSConnectionStatus) => any) | undefined;
@@ -196,32 +196,32 @@ type __VLS_Slots = {} & {
196
196
  area?: (props: typeof __VLS_11) => any;
197
197
  };
198
198
  declare const __VLS_base: vue.DefineComponent<UploadProps, UploadExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
199
+ success: (file: UploadFileItem, response: unknown) => any;
199
200
  change: (fileList: UploadFileItem[]) => any;
200
201
  error: (file: UploadFileItem, error: Error) => any;
201
202
  progress: (file: UploadFileItem, percent: number) => any;
202
- success: (file: UploadFileItem, response: unknown) => any;
203
203
  remove: (file: UploadFileItem) => any;
204
204
  finish: (fileList: UploadFileItem[]) => any;
205
205
  exceed: (files: File[], fileList: UploadFileItem[]) => any;
206
206
  }, string, vue.PublicProps, Readonly<UploadProps> & Readonly<{
207
+ onSuccess?: ((file: UploadFileItem, response: unknown) => any) | undefined;
207
208
  onChange?: ((fileList: UploadFileItem[]) => any) | undefined;
208
209
  onError?: ((file: UploadFileItem, error: Error) => any) | undefined;
209
210
  onProgress?: ((file: UploadFileItem, percent: number) => any) | undefined;
210
- onSuccess?: ((file: UploadFileItem, response: unknown) => any) | undefined;
211
211
  onRemove?: ((file: UploadFileItem) => any) | undefined;
212
212
  onFinish?: ((fileList: UploadFileItem[]) => any) | undefined;
213
213
  onExceed?: ((files: File[], fileList: UploadFileItem[]) => any) | undefined;
214
214
  }>, {
215
- data: Record<string, unknown>;
216
- maxSize: number;
217
215
  disabled: boolean;
216
+ maxSize: number;
217
+ data: Record<string, unknown>;
218
+ draggable: boolean;
218
219
  action: string;
219
220
  headers: Record<string, string>;
220
221
  multiple: boolean;
221
222
  directory: boolean;
222
223
  accept: string;
223
224
  maxCount: number;
224
- draggable: boolean;
225
225
  pasteable: boolean;
226
226
  chunked: boolean;
227
227
  chunkSize: number;