@falcon-ui/falcon-ui 1.0.0

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 (289) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +182 -0
  3. package/cjs/JsBarcode-BlUjuVmB.cjs +3519 -0
  4. package/cjs/JsBarcode-BlUjuVmB.cjs.map +1 -0
  5. package/cjs/chunk-D4y6LrGi.cjs +40 -0
  6. package/cjs/components/JsBarcode-BOXEZn4Q.cjs +3519 -0
  7. package/cjs/components/JsBarcode-BOXEZn4Q.cjs.map +1 -0
  8. package/cjs/components/barcode/JsBarcode-BOXEZn4Q.cjs +3519 -0
  9. package/cjs/components/barcode/JsBarcode-BOXEZn4Q.cjs.map +1 -0
  10. package/cjs/components/barcode/chunk-D4y6LrGi.cjs +40 -0
  11. package/cjs/components/barcode/index.cjs +211 -0
  12. package/cjs/components/barcode/index.cjs.map +1 -0
  13. package/cjs/components/barcode/src/JsBarcode-BOXEZn4Q.cjs +3519 -0
  14. package/cjs/components/barcode/src/JsBarcode-BOXEZn4Q.cjs.map +1 -0
  15. package/cjs/components/barcode/src/barcode.cjs +102 -0
  16. package/cjs/components/barcode/src/barcode.cjs.map +1 -0
  17. package/cjs/components/barcode/src/barcode.vue.cjs +200 -0
  18. package/cjs/components/barcode/src/barcode.vue.cjs.map +1 -0
  19. package/cjs/components/barcode/src/chunk-D4y6LrGi.cjs +40 -0
  20. package/cjs/components/button/index.cjs +135 -0
  21. package/cjs/components/button/index.cjs.map +1 -0
  22. package/cjs/components/button/src/button.cjs +16 -0
  23. package/cjs/components/button/src/button.cjs.map +1 -0
  24. package/cjs/components/button/src/button.vue.cjs +124 -0
  25. package/cjs/components/button/src/button.vue.cjs.map +1 -0
  26. package/cjs/components/chunk-D4y6LrGi.cjs +40 -0
  27. package/cjs/components/date-picker/index.cjs +164 -0
  28. package/cjs/components/date-picker/index.cjs.map +1 -0
  29. package/cjs/components/date-picker/src/date-picker.cjs +25 -0
  30. package/cjs/components/date-picker/src/date-picker.cjs.map +1 -0
  31. package/cjs/components/date-picker/src/date-picker.vue.cjs +153 -0
  32. package/cjs/components/date-picker/src/date-picker.vue.cjs.map +1 -0
  33. package/cjs/components/dialog/index.cjs +346 -0
  34. package/cjs/components/dialog/index.cjs.map +1 -0
  35. package/cjs/components/dialog/src/dialog.cjs +40 -0
  36. package/cjs/components/dialog/src/dialog.cjs.map +1 -0
  37. package/cjs/components/dialog/src/dialog.vue.cjs +343 -0
  38. package/cjs/components/dialog/src/dialog.vue.cjs.map +1 -0
  39. package/cjs/components/index.cjs +9450 -0
  40. package/cjs/components/index.cjs.map +1 -0
  41. package/cjs/components/input/index.cjs +175 -0
  42. package/cjs/components/input/index.cjs.map +1 -0
  43. package/cjs/components/input/src/input.cjs +27 -0
  44. package/cjs/components/input/src/input.cjs.map +1 -0
  45. package/cjs/components/input/src/input.vue.cjs +164 -0
  46. package/cjs/components/input/src/input.vue.cjs.map +1 -0
  47. package/cjs/components/input-number/index.cjs +374 -0
  48. package/cjs/components/input-number/index.cjs.map +1 -0
  49. package/cjs/components/input-number/src/input-number.cjs +48 -0
  50. package/cjs/components/input-number/src/input-number.cjs.map +1 -0
  51. package/cjs/components/input-number/src/input-number.vue.cjs +363 -0
  52. package/cjs/components/input-number/src/input-number.vue.cjs.map +1 -0
  53. package/cjs/components/input-search/index.cjs +286 -0
  54. package/cjs/components/input-search/index.cjs.map +1 -0
  55. package/cjs/components/input-search/src/input-search.cjs +55 -0
  56. package/cjs/components/input-search/src/input-search.cjs.map +1 -0
  57. package/cjs/components/input-search/src/input-search.vue.cjs +275 -0
  58. package/cjs/components/input-search/src/input-search.vue.cjs.map +1 -0
  59. package/cjs/components/qr-code/index.cjs +1975 -0
  60. package/cjs/components/qr-code/index.cjs.map +1 -0
  61. package/cjs/components/qr-code/src/qr-code.cjs +63 -0
  62. package/cjs/components/qr-code/src/qr-code.cjs.map +1 -0
  63. package/cjs/components/qr-code/src/qr-code.vue.cjs +1964 -0
  64. package/cjs/components/qr-code/src/qr-code.vue.cjs.map +1 -0
  65. package/cjs/components/radial-menu/index.cjs +983 -0
  66. package/cjs/components/radial-menu/index.cjs.map +1 -0
  67. package/cjs/components/radial-menu/src/radial-menu.cjs +96 -0
  68. package/cjs/components/radial-menu/src/radial-menu.cjs.map +1 -0
  69. package/cjs/components/radial-menu/src/radial-menu.vue.cjs +921 -0
  70. package/cjs/components/radial-menu/src/radial-menu.vue.cjs.map +1 -0
  71. package/cjs/components/select/index.cjs +163 -0
  72. package/cjs/components/select/index.cjs.map +1 -0
  73. package/cjs/components/select/src/select.cjs +16 -0
  74. package/cjs/components/select/src/select.cjs.map +1 -0
  75. package/cjs/components/select/src/select.vue.cjs +152 -0
  76. package/cjs/components/select/src/select.vue.cjs.map +1 -0
  77. package/cjs/components/table/index.cjs +3351 -0
  78. package/cjs/components/table/index.cjs.map +1 -0
  79. package/cjs/components/table/src/table.cjs +62 -0
  80. package/cjs/components/table/src/table.cjs.map +1 -0
  81. package/cjs/components/table/src/table.vue.cjs +3085 -0
  82. package/cjs/components/table/src/table.vue.cjs.map +1 -0
  83. package/cjs/dialog-CJU00aEV.cjs +614 -0
  84. package/cjs/dialog-CJU00aEV.cjs.map +1 -0
  85. package/cjs/dialog-DcH26KbE.cjs +2 -0
  86. package/cjs/hooks/dialog-DpYPBcKV.cjs +266 -0
  87. package/cjs/hooks/dialog-DpYPBcKV.cjs.map +1 -0
  88. package/cjs/hooks/hooks-D2Jaq5kO.cjs +328 -0
  89. package/cjs/hooks/hooks-D2Jaq5kO.cjs.map +1 -0
  90. package/cjs/hooks/index.cjs +8 -0
  91. package/cjs/icons/index.cjs +86 -0
  92. package/cjs/icons/index.cjs.map +1 -0
  93. package/cjs/index.cjs +9141 -0
  94. package/cjs/index.cjs.map +1 -0
  95. package/cjs/utils/index.cjs +69 -0
  96. package/cjs/utils/index.cjs.map +1 -0
  97. package/esm/JsBarcode-kVJER62m.js +3514 -0
  98. package/esm/JsBarcode-kVJER62m.js.map +1 -0
  99. package/esm/chunk-BuRq7rDw.js +23 -0
  100. package/esm/components/JsBarcode-CzzxrEd_.js +3514 -0
  101. package/esm/components/JsBarcode-CzzxrEd_.js.map +1 -0
  102. package/esm/components/barcode/JsBarcode-C5ux6wsb.js +3514 -0
  103. package/esm/components/barcode/JsBarcode-C5ux6wsb.js.map +1 -0
  104. package/esm/components/barcode/chunk--em_ddB3.js +23 -0
  105. package/esm/components/barcode/index.mjs +204 -0
  106. package/esm/components/barcode/index.mjs.map +1 -0
  107. package/esm/components/barcode/src/JsBarcode-C5ux6wsb.js +3514 -0
  108. package/esm/components/barcode/src/JsBarcode-C5ux6wsb.js.map +1 -0
  109. package/esm/components/barcode/src/barcode.mjs +98 -0
  110. package/esm/components/barcode/src/barcode.mjs.map +1 -0
  111. package/esm/components/barcode/src/barcode.vue.mjs +194 -0
  112. package/esm/components/barcode/src/barcode.vue.mjs.map +1 -0
  113. package/esm/components/barcode/src/chunk--em_ddB3.js +23 -0
  114. package/esm/components/button/index.mjs +126 -0
  115. package/esm/components/button/index.mjs.map +1 -0
  116. package/esm/components/button/src/button.mjs +14 -0
  117. package/esm/components/button/src/button.mjs.map +1 -0
  118. package/esm/components/button/src/button.vue.mjs +117 -0
  119. package/esm/components/button/src/button.vue.mjs.map +1 -0
  120. package/esm/components/chunk-BuRq7rDw.js +23 -0
  121. package/esm/components/date-picker/index.mjs +155 -0
  122. package/esm/components/date-picker/index.mjs.map +1 -0
  123. package/esm/components/date-picker/src/date-picker.mjs +23 -0
  124. package/esm/components/date-picker/src/date-picker.mjs.map +1 -0
  125. package/esm/components/date-picker/src/date-picker.vue.mjs +146 -0
  126. package/esm/components/date-picker/src/date-picker.vue.mjs.map +1 -0
  127. package/esm/components/dialog/index.mjs +335 -0
  128. package/esm/components/dialog/index.mjs.map +1 -0
  129. package/esm/components/dialog/src/dialog.mjs +38 -0
  130. package/esm/components/dialog/src/dialog.mjs.map +1 -0
  131. package/esm/components/dialog/src/dialog.vue.mjs +334 -0
  132. package/esm/components/dialog/src/dialog.vue.mjs.map +1 -0
  133. package/esm/components/index.mjs +9386 -0
  134. package/esm/components/index.mjs.map +1 -0
  135. package/esm/components/input/index.mjs +166 -0
  136. package/esm/components/input/index.mjs.map +1 -0
  137. package/esm/components/input/src/input.mjs +25 -0
  138. package/esm/components/input/src/input.mjs.map +1 -0
  139. package/esm/components/input/src/input.vue.mjs +157 -0
  140. package/esm/components/input/src/input.vue.mjs.map +1 -0
  141. package/esm/components/input-number/index.mjs +365 -0
  142. package/esm/components/input-number/index.mjs.map +1 -0
  143. package/esm/components/input-number/src/input-number.mjs +45 -0
  144. package/esm/components/input-number/src/input-number.mjs.map +1 -0
  145. package/esm/components/input-number/src/input-number.vue.mjs +356 -0
  146. package/esm/components/input-number/src/input-number.vue.mjs.map +1 -0
  147. package/esm/components/input-search/index.mjs +277 -0
  148. package/esm/components/input-search/index.mjs.map +1 -0
  149. package/esm/components/input-search/src/input-search.mjs +53 -0
  150. package/esm/components/input-search/src/input-search.mjs.map +1 -0
  151. package/esm/components/input-search/src/input-search.vue.mjs +268 -0
  152. package/esm/components/input-search/src/input-search.vue.mjs.map +1 -0
  153. package/esm/components/qr-code/index.mjs +1967 -0
  154. package/esm/components/qr-code/index.mjs.map +1 -0
  155. package/esm/components/qr-code/src/qr-code.mjs +59 -0
  156. package/esm/components/qr-code/src/qr-code.mjs.map +1 -0
  157. package/esm/components/qr-code/src/qr-code.vue.mjs +1958 -0
  158. package/esm/components/qr-code/src/qr-code.vue.mjs.map +1 -0
  159. package/esm/components/radial-menu/index.mjs +974 -0
  160. package/esm/components/radial-menu/index.mjs.map +1 -0
  161. package/esm/components/radial-menu/src/radial-menu.mjs +94 -0
  162. package/esm/components/radial-menu/src/radial-menu.mjs.map +1 -0
  163. package/esm/components/radial-menu/src/radial-menu.vue.mjs +916 -0
  164. package/esm/components/radial-menu/src/radial-menu.vue.mjs.map +1 -0
  165. package/esm/components/select/index.mjs +154 -0
  166. package/esm/components/select/index.mjs.map +1 -0
  167. package/esm/components/select/src/select.mjs +14 -0
  168. package/esm/components/select/src/select.mjs.map +1 -0
  169. package/esm/components/select/src/select.vue.mjs +145 -0
  170. package/esm/components/select/src/select.vue.mjs.map +1 -0
  171. package/esm/components/table/index.mjs +3342 -0
  172. package/esm/components/table/index.mjs.map +1 -0
  173. package/esm/components/table/src/table.mjs +60 -0
  174. package/esm/components/table/src/table.mjs.map +1 -0
  175. package/esm/components/table/src/table.vue.mjs +3080 -0
  176. package/esm/components/table/src/table.vue.mjs.map +1 -0
  177. package/esm/dialog-Cm3Px-Bu.js +537 -0
  178. package/esm/dialog-Cm3Px-Bu.js.map +1 -0
  179. package/esm/dialog-CzZm50XM.js +2 -0
  180. package/esm/hooks/dialog-d4SMZWbw.js +261 -0
  181. package/esm/hooks/dialog-d4SMZWbw.js.map +1 -0
  182. package/esm/hooks/hooks-DdjieG2I.js +281 -0
  183. package/esm/hooks/hooks-DdjieG2I.js.map +1 -0
  184. package/esm/hooks/index.mjs +2 -0
  185. package/esm/icons/index.mjs +79 -0
  186. package/esm/icons/index.mjs.map +1 -0
  187. package/esm/index.mjs +9065 -0
  188. package/esm/index.mjs.map +1 -0
  189. package/esm/utils/index.mjs +65 -0
  190. package/esm/utils/index.mjs.map +1 -0
  191. package/global.d.ts +39 -0
  192. package/package.json +131 -0
  193. package/theme/index.css +1 -0
  194. package/theme/index.scss +16 -0
  195. package/theme/src/barcode.scss +14 -0
  196. package/theme/src/button.scss +65 -0
  197. package/theme/src/date-picker.scss +87 -0
  198. package/theme/src/dialog.scss +146 -0
  199. package/theme/src/ep-vars.scss +11 -0
  200. package/theme/src/input-number.scss +66 -0
  201. package/theme/src/input-search.scss +78 -0
  202. package/theme/src/input.scss +66 -0
  203. package/theme/src/mixins/bem.scss +35 -0
  204. package/theme/src/mixins/color.scss +8 -0
  205. package/theme/src/qr-code.scss +23 -0
  206. package/theme/src/radial-menu.scss +346 -0
  207. package/theme/src/select.scss +44 -0
  208. package/theme/src/table.scss +143 -0
  209. package/theme/src/tokens.scss +26 -0
  210. package/theme/src/tree-select.scss +45 -0
  211. package/theme/src/tree.scss +369 -0
  212. package/types/components/barcode/index.d.ts +183 -0
  213. package/types/components/barcode/src/barcode.d.ts +147 -0
  214. package/types/components/barcode/src/barcode.vue.d.ts +184 -0
  215. package/types/components/button/index.d.ts +135 -0
  216. package/types/components/button/src/button.d.ts +33 -0
  217. package/types/components/button/src/button.vue.d.ts +138 -0
  218. package/types/components/date-picker/index.d.ts +508 -0
  219. package/types/components/date-picker/src/date-picker.d.ts +35 -0
  220. package/types/components/date-picker/src/date-picker.vue.d.ts +509 -0
  221. package/types/components/dialog/index.d.ts +630 -0
  222. package/types/components/dialog/src/dialog.d.ts +70 -0
  223. package/types/components/dialog/src/dialog.vue.d.ts +257 -0
  224. package/types/components/index.d.ts +27 -0
  225. package/types/components/input/index.d.ts +233 -0
  226. package/types/components/input/src/input.d.ts +65 -0
  227. package/types/components/input/src/input.vue.d.ts +239 -0
  228. package/types/components/input-number/index.d.ts +713 -0
  229. package/types/components/input-number/src/input-number.d.ts +101 -0
  230. package/types/components/input-number/src/input-number.vue.d.ts +283 -0
  231. package/types/components/input-search/index.d.ts +113 -0
  232. package/types/components/input-search/src/input-search.d.ts +128 -0
  233. package/types/components/input-search/src/input-search.vue.d.ts +114 -0
  234. package/types/components/qr-code/index.d.ts +109 -0
  235. package/types/components/qr-code/src/qr-code.d.ts +93 -0
  236. package/types/components/qr-code/src/qr-code.vue.d.ts +109 -0
  237. package/types/components/radial-menu/index.d.ts +499 -0
  238. package/types/components/radial-menu/src/radial-menu-item.d.ts +40 -0
  239. package/types/components/radial-menu/src/radial-menu-item.vue.d.ts +95 -0
  240. package/types/components/radial-menu/src/radial-menu.d.ts +92 -0
  241. package/types/components/radial-menu/src/radial-menu.vue.d.ts +200 -0
  242. package/types/components/radial-menu/src/types.d.ts +48 -0
  243. package/types/components/radial-menu/src/use-radial-menu-items.d.ts +19 -0
  244. package/types/components/radial-menu/src/use-radial-menu-keyboard.d.ts +17 -0
  245. package/types/components/radial-menu/src/use-radial-menu-position.d.ts +45 -0
  246. package/types/components/radial-menu/src/use-radial-menu-shortcut.d.ts +8 -0
  247. package/types/components/radial-menu/src/use-radial-menu-state.d.ts +15 -0
  248. package/types/components/select/index.d.ts +5 -0
  249. package/types/components/select/src/select.d.ts +30 -0
  250. package/types/components/select/src/select.vue.d.ts +25 -0
  251. package/types/components/table/index.d.ts +8 -0
  252. package/types/components/table/src/editor-registry.d.ts +24 -0
  253. package/types/components/table/src/proxy-data.d.ts +10 -0
  254. package/types/components/table/src/table-editor.d.ts +18 -0
  255. package/types/components/table/src/table-editor.vue.d.ts +43 -0
  256. package/types/components/table/src/table.d.ts +179 -0
  257. package/types/components/table/src/table.vue.d.ts +121 -0
  258. package/types/components/tree/index.d.ts +5 -0
  259. package/types/components/tree/src/tree-node.vue.d.ts +88 -0
  260. package/types/components/tree/src/tree-types.d.ts +90 -0
  261. package/types/components/tree/src/tree.d.ts +448 -0
  262. package/types/components/tree/src/tree.vue.d.ts +301 -0
  263. package/types/components/tree/src/use-tree-check-conduct.d.ts +43 -0
  264. package/types/components/tree/src/use-tree-checked-state.d.ts +34 -0
  265. package/types/components/tree/src/use-tree-drag.d.ts +45 -0
  266. package/types/components/tree/src/use-tree-expanded-state.d.ts +41 -0
  267. package/types/components/tree/src/use-tree-keyboard.d.ts +21 -0
  268. package/types/components/tree/src/use-tree-load.d.ts +25 -0
  269. package/types/components/tree/src/use-tree-scroll.d.ts +17 -0
  270. package/types/components/tree/src/use-tree-selected-state.d.ts +29 -0
  271. package/types/components/tree-select/index.d.ts +5 -0
  272. package/types/components/tree-select/src/tree-select.d.ts +26 -0
  273. package/types/components/tree-select/src/tree-select.vue.d.ts +25 -0
  274. package/types/falcon-ui/index.d.ts +8 -0
  275. package/types/hooks/index.d.ts +3 -0
  276. package/types/hooks/src/use-clearable-state.d.ts +10 -0
  277. package/types/hooks/src/use-component.d.ts +15 -0
  278. package/types/hooks/src/use-dialog.d.ts +49 -0
  279. package/types/icons/index.d.ts +1 -0
  280. package/types/icons/src/components/holder-outlined.vue.d.ts +3 -0
  281. package/types/icons/src/components/index.d.ts +3 -0
  282. package/types/icons/src/components/minus-square-outlined.vue.d.ts +3 -0
  283. package/types/icons/src/components/plus-square-outlined.vue.d.ts +3 -0
  284. package/types/utils/index.d.ts +3 -0
  285. package/types/utils/src/bem.d.ts +11 -0
  286. package/types/utils/src/component.d.ts +6 -0
  287. package/types/utils/src/install.d.ts +5 -0
  288. package/umd/falcon-ui.umd.js +13297 -0
  289. package/umd/falcon-ui.umd.js.map +1 -0
@@ -0,0 +1,448 @@
1
+ import type { Component, ComponentPublicInstance, CSSProperties, ExtractPublicPropTypes, PropType } from 'vue';
2
+ import type { TreeClassValue, TreeData, TreeIndex, TreeKey, TreeNode, TreeNodeClassName, TreeNodeClassNameInfo, TreeNodeModel, TreeNodeProps, TreeSemanticDOM, TreeSemanticRecord, TreeShowLine, TreeShowLineOptions, TreeSwitcherIconMode } from './tree-types';
3
+ export interface TreeCheckedKeysObject {
4
+ checked: TreeKey[];
5
+ halfChecked: TreeKey[];
6
+ }
7
+ export type TreeCheckedKeys = TreeKey[] | TreeCheckedKeysObject;
8
+ export type TreeLoadData = (node: TreeNode) => Promise<unknown>;
9
+ export type TreeSwitcherLoadingIcon = Component;
10
+ export type TreeFilterTreeNode = (node: TreeNode) => boolean;
11
+ export type TreeAllowDropType = 'prev' | 'inner' | 'next';
12
+ export type TreeNodeDropType = 'before' | 'after' | 'inner' | 'none';
13
+ export type TreeAllowDrag = (node: TreeNode) => boolean;
14
+ export type TreeAllowDrop = (draggingNode: TreeNode, dropNode: TreeNode, type: TreeAllowDropType) => boolean;
15
+ export type TreeInteractionEvent = MouseEvent | KeyboardEvent;
16
+ export type TreeScrollAlign = 'top' | 'bottom' | 'auto';
17
+ export interface TreeScrollToOptions {
18
+ key: TreeKey;
19
+ align?: TreeScrollAlign;
20
+ offset?: number;
21
+ }
22
+ export interface TreeExpose {
23
+ scrollTo: (options: TreeScrollToOptions) => void;
24
+ }
25
+ export interface TreeInteractionStateConfig {
26
+ disabledKeys?: TreeKey[];
27
+ unselectableKeys?: TreeKey[];
28
+ disabledCheckboxKeys?: TreeKey[];
29
+ hiddenCheckboxKeys?: TreeKey[];
30
+ }
31
+ export interface TreeInteractionStateSets {
32
+ disabledKeySet: Set<TreeKey>;
33
+ unselectableKeySet: Set<TreeKey>;
34
+ disabledCheckboxKeySet: Set<TreeKey>;
35
+ hiddenCheckboxKeySet: Set<TreeKey>;
36
+ }
37
+ /**
38
+ * Tree 语义化样式回调接收当前组件公开 props 快照。
39
+ */
40
+ export interface TreeSemanticInfo {
41
+ props: TreeProps;
42
+ }
43
+ interface TreeClassNamesResolver {
44
+ (info: TreeSemanticInfo): TreeSemanticRecord<TreeClassValue>;
45
+ }
46
+ interface TreeStylesResolver {
47
+ (info: TreeSemanticInfo): TreeSemanticRecord<CSSProperties>;
48
+ }
49
+ export type TreeClassNames = TreeSemanticRecord<TreeClassValue> | TreeClassNamesResolver;
50
+ export type TreeStyles = TreeSemanticRecord<CSSProperties> | TreeStylesResolver;
51
+ /**
52
+ * 首版使用稳定的默认字段映射,保证常规树数据可直接渲染。
53
+ */
54
+ export declare const treeNodePropsDefaults: Required<TreeNodeProps>;
55
+ /**
56
+ * 阶段 3 在基础树结构之外,正式开放默认展开与受控展开相关契约。
57
+ */
58
+ export declare const treeProps: {
59
+ readonly data: {
60
+ readonly type: PropType<TreeData[]>;
61
+ readonly default: () => never[];
62
+ };
63
+ readonly showLine: {
64
+ readonly type: PropType<TreeShowLine>;
65
+ readonly default: false;
66
+ };
67
+ readonly switcherIcon: {
68
+ readonly type: PropType<TreeSwitcherIconMode>;
69
+ readonly default: "arrow";
70
+ };
71
+ readonly switcherLoadingIcon: {
72
+ readonly type: PropType<TreeSwitcherLoadingIcon>;
73
+ readonly default: import("vue").DefineComponent<{}, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
74
+ };
75
+ readonly selectable: {
76
+ readonly type: BooleanConstructor;
77
+ readonly default: true;
78
+ };
79
+ readonly multiple: {
80
+ readonly type: BooleanConstructor;
81
+ readonly default: false;
82
+ };
83
+ readonly checkable: {
84
+ readonly type: BooleanConstructor;
85
+ readonly default: false;
86
+ };
87
+ readonly checkStrictly: {
88
+ readonly type: BooleanConstructor;
89
+ readonly default: false;
90
+ };
91
+ readonly props: {
92
+ readonly type: PropType<TreeNodeProps>;
93
+ readonly default: () => {
94
+ label: string;
95
+ children: string;
96
+ isLeaf: string;
97
+ };
98
+ };
99
+ readonly classNames: {
100
+ readonly type: PropType<TreeClassNames>;
101
+ };
102
+ readonly nodeClassName: {
103
+ readonly type: PropType<TreeNodeClassName>;
104
+ };
105
+ readonly styles: {
106
+ readonly type: PropType<TreeStyles>;
107
+ };
108
+ readonly defaultExpandAll: {
109
+ readonly type: BooleanConstructor;
110
+ readonly default: false;
111
+ };
112
+ readonly defaultExpandedKeys: {
113
+ readonly type: PropType<TreeKey[]>;
114
+ };
115
+ readonly expandedKeys: {
116
+ readonly type: PropType<TreeKey[]>;
117
+ };
118
+ readonly autoExpandParent: {
119
+ readonly type: BooleanConstructor;
120
+ readonly default: false;
121
+ };
122
+ readonly defaultExpandParent: {
123
+ readonly type: BooleanConstructor;
124
+ readonly default: true;
125
+ };
126
+ readonly accordion: {
127
+ readonly type: BooleanConstructor;
128
+ readonly default: false;
129
+ };
130
+ readonly defaultSelectedKeys: {
131
+ readonly type: PropType<TreeKey[]>;
132
+ };
133
+ readonly selectedKeys: {
134
+ readonly type: PropType<TreeKey[]>;
135
+ };
136
+ readonly disabledKeys: {
137
+ readonly type: PropType<TreeKey[]>;
138
+ };
139
+ readonly unselectableKeys: {
140
+ readonly type: PropType<TreeKey[]>;
141
+ };
142
+ readonly defaultCheckedKeys: {
143
+ readonly type: PropType<TreeKey[]>;
144
+ };
145
+ readonly checkedKeys: {
146
+ readonly type: PropType<TreeCheckedKeys>;
147
+ };
148
+ readonly disabledCheckboxKeys: {
149
+ readonly type: PropType<TreeKey[]>;
150
+ };
151
+ readonly hiddenCheckboxKeys: {
152
+ readonly type: PropType<TreeKey[]>;
153
+ };
154
+ readonly loadData: {
155
+ readonly type: PropType<TreeLoadData>;
156
+ };
157
+ readonly loadedKeys: {
158
+ readonly type: PropType<TreeKey[]>;
159
+ };
160
+ readonly draggable: {
161
+ readonly type: BooleanConstructor;
162
+ readonly default: false;
163
+ };
164
+ readonly allowDrag: {
165
+ readonly type: PropType<TreeAllowDrag>;
166
+ };
167
+ readonly allowDrop: {
168
+ readonly type: PropType<TreeAllowDrop>;
169
+ };
170
+ readonly filterTreeNode: {
171
+ readonly type: PropType<TreeFilterTreeNode>;
172
+ };
173
+ };
174
+ export type TreeProps = ExtractPublicPropTypes<typeof treeProps>;
175
+ /**
176
+ * 树节点展开事件统一返回本次节点状态与当前源展开键集合。
177
+ */
178
+ export interface TreeExpandEvent {
179
+ expanded: boolean;
180
+ node: TreeData;
181
+ key: TreeKey;
182
+ expandedKeys: TreeKey[];
183
+ }
184
+ /**
185
+ * 树节点选中事件统一返回当前节点结果与最新选中集合。
186
+ */
187
+ export interface TreeSelectEvent {
188
+ selected: boolean;
189
+ node: TreeNode;
190
+ selectedNodes: TreeNode[];
191
+ key: TreeKey;
192
+ event: TreeInteractionEvent;
193
+ }
194
+ /**
195
+ * 树节点勾选事件统一返回当前节点结果与最新勾选集合。
196
+ */
197
+ export interface TreeCheckEvent {
198
+ checked: boolean;
199
+ node: TreeNode;
200
+ checkedNodes: TreeNode[];
201
+ halfCheckedKeys: TreeKey[];
202
+ key: TreeKey;
203
+ event: TreeInteractionEvent;
204
+ }
205
+ /**
206
+ * 树节点异步加载完成事件统一返回当前节点与最新已加载键集合。
207
+ */
208
+ export interface TreeLoadEvent {
209
+ node: TreeNode;
210
+ key: TreeKey;
211
+ loadedKeys: TreeKey[];
212
+ }
213
+ /**
214
+ * 节点组件实例通过 Vue public instance 向外暴露。
215
+ */
216
+ export type TreeNodeInstance = ComponentPublicInstance | null;
217
+ export type TreeExpandedNode = TreeNode & {
218
+ expanded: boolean;
219
+ };
220
+ /**
221
+ * `node-click` 事件固定采用 Element Plus 风格的多参数出参。
222
+ */
223
+ export type TreeNodeClickArgs = [
224
+ data: TreeData,
225
+ node: TreeNode,
226
+ component: TreeNodeInstance,
227
+ event: TreeInteractionEvent
228
+ ];
229
+ /**
230
+ * `dblclick` 事件固定采用 Element Plus 风格的多参数出参。
231
+ */
232
+ export type TreeNodeDblclickArgs = [
233
+ data: TreeData,
234
+ node: TreeNode,
235
+ component: TreeNodeInstance,
236
+ event: MouseEvent
237
+ ];
238
+ export type TreeNodeRightClickArgs = [
239
+ data: TreeData,
240
+ node: TreeNode,
241
+ component: TreeNodeInstance,
242
+ event: MouseEvent
243
+ ];
244
+ /**
245
+ * `node-expand` / `node-collapse` 事件固定采用 Element Plus 风格的多参数出参。
246
+ */
247
+ export type TreeNodeToggleArgs = [
248
+ data: TreeData,
249
+ node: TreeExpandedNode,
250
+ instance: TreeNodeInstance
251
+ ];
252
+ /**
253
+ * `select` 事件固定采用双参数出参。
254
+ */
255
+ export type TreeSelectArgs = [selectedKeys: TreeKey[], event: TreeSelectEvent];
256
+ /**
257
+ * `check` 事件固定采用双参数出参。
258
+ */
259
+ export type TreeCheckArgs = [checkedKeys: TreeCheckedKeys, event: TreeCheckEvent];
260
+ /**
261
+ * `load` 事件固定采用双参数出参。
262
+ */
263
+ export type TreeLoadArgs = [loadedKeys: TreeKey[], event: TreeLoadEvent];
264
+ /**
265
+ * `node-drag-start` 事件对齐 Element Plus 多参数出参。
266
+ */
267
+ export type TreeNodeDragStartArgs = [node: TreeNode, event: DragEvent];
268
+ /**
269
+ * `node-drag-enter` / `node-drag-over` / `node-drag-leave` 事件对齐 Element Plus。
270
+ */
271
+ export type TreeNodeDragTargetArgs = [draggingNode: TreeNode, dropNode: TreeNode, event: DragEvent];
272
+ /**
273
+ * `node-drag-end` 事件对齐 Element Plus。
274
+ */
275
+ export type TreeNodeDragEndArgs = [
276
+ draggingNode: TreeNode,
277
+ dropNode: TreeNode | null,
278
+ dropType: TreeNodeDropType,
279
+ event: DragEvent
280
+ ];
281
+ /**
282
+ * `node-drop` 仅在非 none 落点触发。
283
+ */
284
+ export type TreeNodeDropArgs = [
285
+ draggingNode: TreeNode,
286
+ dropNode: TreeNode,
287
+ dropType: Exclude<TreeNodeDropType, 'none'>,
288
+ event: DragEvent
289
+ ];
290
+ /**
291
+ * 判断当前值是否为树组件允许使用的节点键类型。
292
+ */
293
+ export declare const isTreeKey: (value: unknown) => value is TreeKey;
294
+ /**
295
+ * 判断当前值是否为 `{ checked, halfChecked }` 形态的勾选结果对象。
296
+ */
297
+ export declare const isTreeCheckedKeysObject: (value: unknown) => value is TreeCheckedKeysObject;
298
+ /**
299
+ * 判断当前值是否满足树组件允许的勾选结果输入形态。
300
+ */
301
+ export declare const isTreeCheckedKeys: (value: unknown) => value is TreeCheckedKeys;
302
+ /**
303
+ * 阶段 3 正式开放展开状态双向同步与展开事件。
304
+ */
305
+ export declare const treeEmits: {
306
+ /**
307
+ * 请求外部同步当前源展开键集合。
308
+ */
309
+ readonly 'update:expandedKeys': (value: TreeKey[]) => boolean;
310
+ /**
311
+ * 请求外部同步当前源选中键集合。
312
+ */
313
+ readonly 'update:selectedKeys': (value: TreeKey[]) => boolean;
314
+ /**
315
+ * 请求外部同步当前源勾选键集合。
316
+ */
317
+ readonly 'update:checkedKeys': (value: TreeCheckedKeys) => boolean;
318
+ /**
319
+ * 请求外部同步当前已完成异步加载的节点键集合。
320
+ */
321
+ readonly 'update:loadedKeys': (value: TreeKey[]) => boolean;
322
+ /**
323
+ * 节点展开状态切换后抛出当前节点的展开结果。
324
+ */
325
+ readonly expand: (event: TreeExpandEvent) => boolean;
326
+ /**
327
+ * 节点被点击时抛出节点数据、节点对象、组件实例与鼠标事件。
328
+ */
329
+ readonly 'node-click': (data: TreeData, node: TreeNode, component: TreeNodeInstance, event: TreeInteractionEvent) => boolean;
330
+ /**
331
+ * 节点内容区被双击时抛出节点数据、节点对象、组件实例与鼠标事件。
332
+ */
333
+ readonly dblclick: (data: TreeData, node: TreeNode, component: TreeNodeInstance, event: MouseEvent) => boolean;
334
+ readonly 'right-click': (data: TreeData, node: TreeNode, component: TreeNodeInstance, event: MouseEvent) => boolean;
335
+ /**
336
+ * 节点被选中或取消选中时抛出最新选中结果。
337
+ */
338
+ readonly select: (selectedKeys: TreeKey[], event: TreeSelectEvent) => boolean;
339
+ /**
340
+ * 节点复选框勾选状态切换后抛出当前勾选结果。
341
+ */
342
+ readonly check: (checkedKeys: TreeCheckedKeys, event: TreeCheckEvent) => boolean;
343
+ /**
344
+ * 节点异步加载完成后抛出最新已加载结果。
345
+ */
346
+ readonly load: (loadedKeys: TreeKey[], event: TreeLoadEvent) => boolean;
347
+ /**
348
+ * 节点被用户展开时抛出切换后的节点对象与组件实例。
349
+ */
350
+ readonly 'node-expand': (data: TreeData, node: TreeExpandedNode, instance: TreeNodeInstance) => boolean;
351
+ /**
352
+ * 节点被用户收起时抛出切换后的节点对象与组件实例。
353
+ */
354
+ readonly 'node-collapse': (data: TreeData, node: TreeExpandedNode, instance: TreeNodeInstance) => boolean;
355
+ /**
356
+ * 节点开始拖拽时抛出拖拽源节点。
357
+ */
358
+ readonly 'node-drag-start': (node: TreeNode, event: DragEvent) => boolean;
359
+ /**
360
+ * 拖拽进入节点落点区域时抛出当前拖拽源和目标节点。
361
+ */
362
+ readonly 'node-drag-enter': (draggingNode: TreeNode, dropNode: TreeNode, event: DragEvent) => boolean;
363
+ /**
364
+ * 拖拽悬停在节点落点区域时抛出当前拖拽源和目标节点。
365
+ */
366
+ readonly 'node-drag-over': (draggingNode: TreeNode, dropNode: TreeNode, event: DragEvent) => boolean;
367
+ /**
368
+ * 拖拽离开节点落点区域时抛出当前拖拽源和目标节点。
369
+ */
370
+ readonly 'node-drag-leave': (draggingNode: TreeNode, dropNode: TreeNode, event: DragEvent) => boolean;
371
+ /**
372
+ * 节点拖拽结束时抛出拖拽源、目标和投放类型。
373
+ */
374
+ readonly 'node-drag-end': (draggingNode: TreeNode, dropNode: TreeNode | null, dropType: TreeNodeDropType, event: DragEvent) => boolean;
375
+ /**
376
+ * 节点成功投放时抛出拖拽源、目标和投放类型。
377
+ */
378
+ readonly 'node-drop': (draggingNode: TreeNode, dropNode: TreeNode, dropType: "inner" | "before" | "after", event: DragEvent) => boolean;
379
+ };
380
+ export type TreeEmits = typeof treeEmits;
381
+ /**
382
+ * 将用户传入的部分映射与默认映射合并,统一生成内部字段配置。
383
+ */
384
+ export declare const resolveTreeNodePropsConfig: (propsConfig?: TreeNodeProps) => Required<TreeNodeProps>;
385
+ /**
386
+ * 将单个原始节点转换为内部标准化节点。
387
+ */
388
+ export declare const normalizeTreeNode: (rawNode: TreeData, level: number, propsConfig?: TreeNodeProps, interactionStateSets?: TreeInteractionStateSets, parent?: TreeNodeModel | null, isLastSibling?: boolean, lineTrackEnds?: boolean[]) => TreeNodeModel;
389
+ /**
390
+ * 在递归树结构之外,同时建立扁平索引,供后续阶段复用。
391
+ */
392
+ export declare const buildTreeIndex: (data: TreeData[], propsConfig?: TreeNodeProps, interactionStateConfig?: TreeInteractionStateConfig) => TreeIndex;
393
+ /**
394
+ * 过滤无效、重复或已从树结构中移除的展开键。
395
+ */
396
+ export declare const filterTreeExpandedKeys: (keys: TreeKey[] | undefined, keyNodeMap: Map<TreeKey, TreeNodeModel>) => TreeKey[];
397
+ export declare const normalizeAccordionExpandedKeys: (expandedKeys: TreeKey[], parentKeyMap: Map<TreeKey, TreeKey | null>) => TreeKey[];
398
+ /**
399
+ * 过滤无效、重复或已从树结构中移除的选中键。
400
+ */
401
+ export declare const filterTreeSelectedKeys: (keys: TreeKey[] | undefined, keyNodeMap: Map<TreeKey, TreeNodeModel>) => TreeKey[];
402
+ /**
403
+ * 过滤无效、重复或已从树结构中移除的勾选键。
404
+ */
405
+ export declare const filterTreeCheckedKeys: (keys: TreeKey[] | undefined, keyNodeMap: Map<TreeKey, TreeNodeModel>) => TreeKey[];
406
+ /**
407
+ * 过滤无效、重复或已从树结构中移除的异步加载完成键。
408
+ */
409
+ export declare const filterTreeLoadedKeys: (keys: TreeKey[] | undefined, keyNodeMap: Map<TreeKey, TreeNodeModel>) => TreeKey[];
410
+ /**
411
+ * 清理集合中已经失效的节点键,供非受控状态在数据更新后裁剪缓存。
412
+ */
413
+ export declare const pruneTreeKeySet: (keys: Set<TreeKey>, keyNodeMap: Map<TreeKey, TreeNodeModel>) => Set<TreeKey>;
414
+ /**
415
+ * 收集当前树中所有可展开节点的 key,供 `defaultExpandAll` 初始化使用。
416
+ */
417
+ export declare const collectExpandableTreeKeys: (nodes: TreeNodeModel[]) => TreeKey[];
418
+ /**
419
+ * 基于父节点索引补齐源展开键的全部祖先节点键。
420
+ */
421
+ export declare const collectAncestorExpandedKeys: (sourceExpandedKeys: TreeKey[], parentKeyMap: Map<TreeKey, TreeKey | null>) => Set<TreeKey>;
422
+ /**
423
+ * 根据源展开键生成最终用于渲染的展开集合,可按需补齐祖先节点。
424
+ */
425
+ export declare const createEffectiveExpandedKeySet: ({ sourceExpandedKeys, parentKeyMap, includeAncestorKeys, accordion }: {
426
+ sourceExpandedKeys: TreeKey[];
427
+ parentKeyMap: Map<TreeKey, TreeKey | null>;
428
+ includeAncestorKeys: boolean;
429
+ accordion?: boolean;
430
+ }) => Set<TreeKey>;
431
+ interface CreateTreeEventNodeOptions {
432
+ node: TreeNodeModel;
433
+ resolveExpanded?: undefined;
434
+ }
435
+ interface CreateExpandedTreeEventNodeOptions {
436
+ node: TreeNodeModel;
437
+ resolveExpanded: (nodeKey: TreeKey) => boolean;
438
+ }
439
+ /**
440
+ * 根据内部节点模型构造对外事件节点对象,并按需附带展开状态。
441
+ */
442
+ export declare function createTreeEventNode(options: CreateExpandedTreeEventNodeOptions): TreeExpandedNode;
443
+ export declare function createTreeEventNode(options: CreateTreeEventNodeOptions): TreeNode;
444
+ /**
445
+ * 统一解析对象形式和工厂函数形式的语义化记录。
446
+ */
447
+ export declare const resolveTreeSemanticRecord: <T>(source: TreeSemanticRecord<T> | ((info: TreeSemanticInfo) => TreeSemanticRecord<T>) | undefined, info: TreeSemanticInfo) => TreeSemanticRecord<T>;
448
+ export type { TreeClassValue, TreeData, TreeIndex, TreeKey, TreeNode, TreeNodeClassName, TreeNodeClassNameInfo, TreeNodeModel, TreeNodeProps, TreeSemanticDOM, TreeSemanticRecord, TreeShowLine, TreeShowLineOptions, TreeSwitcherIconMode };