huibo-ui 0.3.0 → 0.4.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 (668) hide show
  1. package/dist/cjs/{date-helpers-904747ff.js → date-helpers-1ffddc59.js} +7 -3
  2. package/dist/cjs/date-helpers-1ffddc59.js.map +1 -0
  3. package/dist/cjs/hb-affix.cjs.entry.js +1 -1
  4. package/dist/cjs/hb-aside.cjs.entry.js +1 -1
  5. package/dist/cjs/hb-avatar.cjs.entry.js +1 -1
  6. package/dist/cjs/hb-backtop.cjs.entry.js +2 -2
  7. package/dist/cjs/hb-badge.cjs.entry.js +1 -1
  8. package/dist/cjs/hb-breadcrumb-item.cjs.entry.js +1 -1
  9. package/dist/cjs/hb-breadcrumb.cjs.entry.js +1 -1
  10. package/dist/cjs/hb-button.cjs.entry.js +2 -2
  11. package/dist/cjs/hb-calendar.cjs.entry.js +78 -10
  12. package/dist/cjs/hb-calendar.cjs.entry.js.map +1 -1
  13. package/dist/cjs/hb-card.cjs.entry.js +1 -1
  14. package/dist/cjs/hb-cascader.cjs.entry.js +270 -146
  15. package/dist/cjs/hb-cascader.cjs.entry.js.map +1 -1
  16. package/dist/cjs/hb-checkbox-group.cjs.entry.js +2 -2
  17. package/dist/cjs/hb-checkbox.cjs.entry.js +3 -3
  18. package/dist/cjs/hb-collapse-item.cjs.entry.js +1 -1
  19. package/dist/cjs/hb-collapse.cjs.entry.js +1 -1
  20. package/dist/cjs/hb-color-picker-panel.cjs.entry.js +2 -2
  21. package/dist/cjs/hb-color-picker.cjs.entry.js +91 -14
  22. package/dist/cjs/hb-color-picker.cjs.entry.js.map +1 -1
  23. package/dist/cjs/hb-config-provider.cjs.entry.js +1 -1
  24. package/dist/cjs/hb-container.cjs.entry.js +2 -2
  25. package/dist/cjs/hb-date-picker-pane.cjs.entry.js +2 -2
  26. package/dist/cjs/hb-date-picker.cjs.entry.js +85 -7
  27. package/dist/cjs/hb-date-picker.cjs.entry.js.map +1 -1
  28. package/dist/cjs/hb-date-range-picker.cjs.entry.js +3 -3
  29. package/dist/cjs/hb-date-time-picker.cjs.entry.js +3 -3
  30. package/dist/cjs/hb-descriptions.cjs.entry.js +2 -2
  31. package/dist/cjs/hb-descriptions.cjs.entry.js.map +1 -1
  32. package/dist/cjs/hb-divider.cjs.entry.js +2 -2
  33. package/dist/cjs/hb-drawer.cjs.entry.js +1 -1
  34. package/dist/cjs/hb-dropdown.cjs.entry.js +74 -6
  35. package/dist/cjs/hb-dropdown.cjs.entry.js.map +1 -1
  36. package/dist/cjs/hb-empty.cjs.entry.js +1 -1
  37. package/dist/cjs/hb-float-button.cjs.entry.js +2 -2
  38. package/dist/cjs/hb-footer.cjs.entry.js +1 -1
  39. package/dist/cjs/hb-form-item.cjs.entry.js +59 -8
  40. package/dist/cjs/hb-form-item.cjs.entry.js.map +1 -1
  41. package/dist/cjs/hb-form.cjs.entry.js +3 -3
  42. package/dist/cjs/hb-form.cjs.entry.js.map +1 -1
  43. package/dist/cjs/hb-header.cjs.entry.js +1 -1
  44. package/dist/cjs/hb-image-preview.cjs.entry.js +12 -8
  45. package/dist/cjs/hb-image-preview.cjs.entry.js.map +1 -1
  46. package/dist/cjs/hb-image.cjs.entry.js +1 -1
  47. package/dist/cjs/hb-input-number.cjs.entry.js +5 -5
  48. package/dist/cjs/hb-input-tag.cjs.entry.js +2 -2
  49. package/dist/cjs/hb-input.cjs.entry.js +39 -3
  50. package/dist/cjs/hb-input.cjs.entry.js.map +1 -1
  51. package/dist/cjs/hb-layout.cjs.entry.js +36 -14
  52. package/dist/cjs/hb-layout.cjs.entry.js.map +1 -1
  53. package/dist/cjs/hb-link.cjs.entry.js +2 -2
  54. package/dist/cjs/hb-loading.cjs.entry.js +2 -2
  55. package/dist/cjs/hb-main.cjs.entry.js +1 -1
  56. package/dist/cjs/hb-menu-item.cjs.entry.js +2 -2
  57. package/dist/cjs/hb-menu.cjs.entry.js +3 -3
  58. package/dist/cjs/hb-menu.cjs.entry.js.map +1 -1
  59. package/dist/cjs/hb-message.cjs.entry.js +2 -2
  60. package/dist/cjs/hb-notification.cjs.entry.js +2 -2
  61. package/dist/cjs/hb-page-header.cjs.entry.js +1 -1
  62. package/dist/cjs/hb-pagination.cjs.entry.js +21 -8
  63. package/dist/cjs/hb-pagination.cjs.entry.js.map +1 -1
  64. package/dist/cjs/hb-popconfirm.cjs.entry.js +37 -7
  65. package/dist/cjs/hb-popconfirm.cjs.entry.js.map +1 -1
  66. package/dist/cjs/hb-popover.cjs.entry.js +22 -2
  67. package/dist/cjs/hb-popover.cjs.entry.js.map +1 -1
  68. package/dist/cjs/hb-progress.cjs.entry.js +1 -1
  69. package/dist/cjs/hb-radio.cjs.entry.js +2 -2
  70. package/dist/cjs/hb-rate.cjs.entry.js +45 -3
  71. package/dist/cjs/hb-rate.cjs.entry.js.map +1 -1
  72. package/dist/cjs/hb-result.cjs.entry.js +1 -1
  73. package/dist/cjs/hb-row.cjs.entry.js +2 -2
  74. package/dist/cjs/hb-segmented.cjs.entry.js +39 -5
  75. package/dist/cjs/hb-segmented.cjs.entry.js.map +1 -1
  76. package/dist/cjs/hb-select.cjs.entry.js +47 -8
  77. package/dist/cjs/hb-select.cjs.entry.js.map +1 -1
  78. package/dist/cjs/hb-slider.cjs.entry.js +189 -20
  79. package/dist/cjs/hb-slider.cjs.entry.js.map +1 -1
  80. package/dist/cjs/hb-space.cjs.entry.js +2 -2
  81. package/dist/cjs/hb-statistic.cjs.entry.js +1 -1
  82. package/dist/cjs/hb-step.cjs.entry.js +1 -1
  83. package/dist/cjs/hb-steps.cjs.entry.js +30 -9
  84. package/dist/cjs/hb-steps.cjs.entry.js.map +1 -1
  85. package/dist/cjs/hb-sub-menu.cjs.entry.js +4 -4
  86. package/dist/cjs/hb-switch.cjs.entry.js +9 -4
  87. package/dist/cjs/hb-switch.cjs.entry.js.map +1 -1
  88. package/dist/cjs/hb-tab-pane.cjs.entry.js +1 -1
  89. package/dist/cjs/hb-table.cjs.entry.js +1 -1
  90. package/dist/cjs/hb-table.cjs.entry.js.map +1 -1
  91. package/dist/cjs/hb-tabs.cjs.entry.js +2 -2
  92. package/dist/cjs/hb-tag.cjs.entry.js +2 -2
  93. package/dist/cjs/hb-text.cjs.entry.js +2 -2
  94. package/dist/cjs/hb-time-picker.cjs.entry.js +4 -4
  95. package/dist/cjs/hb-time-select.cjs.entry.js +2 -2
  96. package/dist/cjs/hb-timeline.cjs.entry.js +1 -1
  97. package/dist/cjs/hb-tooltip.cjs.entry.js +18 -1
  98. package/dist/cjs/hb-tooltip.cjs.entry.js.map +1 -1
  99. package/dist/cjs/hb-transfer.cjs.entry.js +2 -2
  100. package/dist/cjs/hb-tree-select.cjs.entry.js +95 -18
  101. package/dist/cjs/hb-tree-select.cjs.entry.js.map +1 -1
  102. package/dist/cjs/hb-tree.cjs.entry.js +1 -1
  103. package/dist/cjs/hb-upload.cjs.entry.js +3 -3
  104. package/dist/cjs/hb-watermark.cjs.entry.js +1 -1
  105. package/dist/cjs/huibo-ui.cjs.js +1 -1
  106. package/dist/cjs/loader.cjs.js +1 -1
  107. package/dist/collection/collection-manifest.json +3 -3
  108. package/dist/collection/components/Affix/Affix.js +1 -1
  109. package/dist/collection/components/Avatar/Avatar.js +1 -1
  110. package/dist/collection/components/Backtop/Backtop.js +2 -2
  111. package/dist/collection/components/Badge/Badge.js +1 -1
  112. package/dist/collection/components/Breadcrumb/Breadcrumb.js +1 -1
  113. package/dist/collection/components/Breadcrumb/BreadcrumbItem.js +1 -1
  114. package/dist/collection/components/Button/Button.js +2 -2
  115. package/dist/collection/components/Calendar/Calendar.js +84 -10
  116. package/dist/collection/components/Calendar/Calendar.js.map +1 -1
  117. package/dist/collection/components/Calendar/calendar.css +16 -0
  118. package/dist/collection/components/Card/Card.js +1 -1
  119. package/dist/collection/components/Cascader/Cascader.js +374 -194
  120. package/dist/collection/components/Cascader/Cascader.js.map +1 -1
  121. package/dist/collection/components/Cascader/cascader.css +170 -16
  122. package/dist/collection/components/Checkbox/Checkbox.js +3 -3
  123. package/dist/collection/components/Checkbox/CheckboxGroup.js +2 -2
  124. package/dist/collection/components/Collapse/Collapse.js +1 -1
  125. package/dist/collection/components/Collapse/CollapseItem.js +1 -1
  126. package/dist/collection/components/ColorPicker/ColorPicker.js +92 -14
  127. package/dist/collection/components/ColorPicker/ColorPicker.js.map +1 -1
  128. package/dist/collection/components/ColorPicker/color-picker.css +13 -0
  129. package/dist/collection/components/ColorPickerPanel/ColorPickerPanel.js +2 -2
  130. package/dist/collection/components/ConfigProvider/ConfigProvider.js +1 -1
  131. package/dist/collection/components/Container/Aside.js +1 -1
  132. package/dist/collection/components/Container/Container.js +2 -2
  133. package/dist/collection/components/Container/Footer.js +1 -1
  134. package/dist/collection/components/Container/Header.js +1 -1
  135. package/dist/collection/components/Container/Main.js +1 -1
  136. package/dist/collection/components/DatePicker/DatePicker.js +89 -10
  137. package/dist/collection/components/DatePicker/DatePicker.js.map +1 -1
  138. package/dist/collection/components/DatePicker/date-picker.css +62 -2
  139. package/dist/collection/components/DatePickerPane/DatePickerPane.js +1 -1
  140. package/dist/collection/components/DateRangePicker/DateRangePicker.js +2 -2
  141. package/dist/collection/components/DateTimePicker/DateTimePicker.js +2 -2
  142. package/dist/collection/components/Descriptions/Descriptions.js +1 -1
  143. package/dist/collection/components/Descriptions/descriptions.css +22 -0
  144. package/dist/collection/components/Divider/Divider.js +2 -2
  145. package/dist/collection/components/Drawer/Drawer.js +1 -1
  146. package/dist/collection/components/Dropdown/Dropdown.js +83 -7
  147. package/dist/collection/components/Dropdown/Dropdown.js.map +1 -1
  148. package/dist/collection/components/Dropdown/dropdown.css +2 -1
  149. package/dist/collection/components/Empty/Empty.js +1 -1
  150. package/dist/collection/components/FloatButton/FloatButton.js +2 -2
  151. package/dist/collection/components/Form/Form.js +2 -2
  152. package/dist/collection/components/Form/FormItem.js +60 -9
  153. package/dist/collection/components/Form/FormItem.js.map +1 -1
  154. package/dist/collection/components/Form/form-item.css +49 -4
  155. package/dist/collection/components/Form/form.css +1 -0
  156. package/dist/collection/components/Image/Image.js +1 -1
  157. package/dist/collection/components/ImagePreview/ImagePreview.js +12 -8
  158. package/dist/collection/components/ImagePreview/ImagePreview.js.map +1 -1
  159. package/dist/collection/components/Input/Input.js +38 -2
  160. package/dist/collection/components/Input/Input.js.map +1 -1
  161. package/dist/collection/components/Input/input.css +21 -2
  162. package/dist/collection/components/InputNumber/InputNumber.js +5 -5
  163. package/dist/collection/components/InputTag/InputTag.js +2 -2
  164. package/dist/collection/components/Layout/Layout.js +87 -34
  165. package/dist/collection/components/Layout/Layout.js.map +1 -1
  166. package/dist/collection/components/Layout/Row.js +2 -2
  167. package/dist/collection/components/Layout/layout.css +524 -0
  168. package/dist/collection/components/Link/Link.js +2 -2
  169. package/dist/collection/components/Loading/Loading.js +2 -2
  170. package/dist/collection/components/Menu/Menu.js +2 -2
  171. package/dist/collection/components/Menu/MenuItem.js +2 -2
  172. package/dist/collection/components/Menu/SubMenu.js +4 -4
  173. package/dist/collection/components/Menu/menu.css +25 -0
  174. package/dist/collection/components/Message/Message.js +2 -2
  175. package/dist/collection/components/Notification/Notification.js +2 -2
  176. package/dist/collection/components/PageHeader/PageHeader.js +1 -1
  177. package/dist/collection/components/Pagination/Pagination.js +23 -7
  178. package/dist/collection/components/Pagination/Pagination.js.map +1 -1
  179. package/dist/collection/components/Pagination/pagination.css +23 -0
  180. package/dist/collection/components/Popconfirm/Popconfirm.js +44 -7
  181. package/dist/collection/components/Popconfirm/Popconfirm.js.map +1 -1
  182. package/dist/collection/components/Popover/Popover.js +29 -2
  183. package/dist/collection/components/Popover/Popover.js.map +1 -1
  184. package/dist/collection/components/Progress/Progress.js +1 -1
  185. package/dist/collection/components/Radio/Radio.js +2 -2
  186. package/dist/collection/components/Rate/Rate.js +45 -3
  187. package/dist/collection/components/Rate/Rate.js.map +1 -1
  188. package/dist/collection/components/Result/Result.js +1 -1
  189. package/dist/collection/components/Segmented/Segmented.js +51 -6
  190. package/dist/collection/components/Segmented/Segmented.js.map +1 -1
  191. package/dist/collection/components/Select/Select.js +46 -7
  192. package/dist/collection/components/Select/Select.js.map +1 -1
  193. package/dist/collection/components/Select/select.css +50 -4
  194. package/dist/collection/components/Slider/Slider.js +221 -21
  195. package/dist/collection/components/Slider/Slider.js.map +1 -1
  196. package/dist/collection/components/Slider/slider.css +58 -7
  197. package/dist/collection/components/Space/Space.js +2 -2
  198. package/dist/collection/components/Statistic/Statistic.js +1 -1
  199. package/dist/collection/components/Steps/Step.js +1 -1
  200. package/dist/collection/components/Steps/Steps.js +35 -8
  201. package/dist/collection/components/Steps/Steps.js.map +1 -1
  202. package/dist/collection/components/Switch/Switch.js +8 -3
  203. package/dist/collection/components/Switch/Switch.js.map +1 -1
  204. package/dist/collection/components/Switch/switch.css +45 -0
  205. package/dist/collection/components/Table/table.css +20 -0
  206. package/dist/collection/components/Tabs/TabPane.js +1 -1
  207. package/dist/collection/components/Tabs/Tabs.js +2 -2
  208. package/dist/collection/components/Tag/Tag.js +2 -2
  209. package/dist/collection/components/Text/Text.js +2 -2
  210. package/dist/collection/components/TimePicker/TimePicker.js +4 -4
  211. package/dist/collection/components/TimeSelect/TimeSelect.js +2 -2
  212. package/dist/collection/components/Timeline/Timeline.js +1 -1
  213. package/dist/collection/components/Tooltip/Tooltip.js +25 -2
  214. package/dist/collection/components/Tooltip/Tooltip.js.map +1 -1
  215. package/dist/collection/components/Transfer/Transfer.js +2 -2
  216. package/dist/collection/components/Tree/Tree.js +1 -1
  217. package/dist/collection/components/TreeSelect/TreeSelect.js +94 -17
  218. package/dist/collection/components/TreeSelect/TreeSelect.js.map +1 -1
  219. package/dist/collection/components/TreeSelect/tree-select.css +41 -7
  220. package/dist/collection/components/Upload/Upload.js +3 -3
  221. package/dist/collection/components/Watermark/Watermark.js +1 -1
  222. package/dist/collection/utils/date-helpers.js +6 -2
  223. package/dist/collection/utils/date-helpers.js.map +1 -1
  224. package/dist/components/hb-affix.js +1 -1
  225. package/dist/components/hb-aside.js +1 -1
  226. package/dist/components/hb-avatar.js +1 -1
  227. package/dist/components/hb-backtop.js +2 -2
  228. package/dist/components/hb-badge.js +1 -1
  229. package/dist/components/hb-breadcrumb-item.js +1 -1
  230. package/dist/components/hb-breadcrumb.js +1 -1
  231. package/dist/components/hb-button.js +2 -2
  232. package/dist/components/hb-calendar.js +80 -11
  233. package/dist/components/hb-calendar.js.map +1 -1
  234. package/dist/components/hb-card.js +1 -1
  235. package/dist/components/hb-cascader.js +273 -146
  236. package/dist/components/hb-cascader.js.map +1 -1
  237. package/dist/components/hb-checkbox-group.js +2 -2
  238. package/dist/components/hb-checkbox.js +3 -3
  239. package/dist/components/hb-collapse-item.js +1 -1
  240. package/dist/components/hb-collapse.js +1 -1
  241. package/dist/components/hb-color-picker-panel.js +2 -2
  242. package/dist/components/hb-color-picker.js +93 -15
  243. package/dist/components/hb-color-picker.js.map +1 -1
  244. package/dist/components/hb-config-provider.js +1 -1
  245. package/dist/components/hb-container.js +2 -2
  246. package/dist/components/hb-date-picker-pane.js +2 -2
  247. package/dist/components/hb-date-picker.js +87 -8
  248. package/dist/components/hb-date-picker.js.map +1 -1
  249. package/dist/components/hb-date-range-picker.js +3 -3
  250. package/dist/components/hb-date-time-picker.js +3 -3
  251. package/dist/components/hb-descriptions.js +2 -2
  252. package/dist/components/hb-descriptions.js.map +1 -1
  253. package/dist/components/hb-divider.js +2 -2
  254. package/dist/components/hb-drawer.js +1 -1
  255. package/dist/components/hb-dropdown.js +76 -7
  256. package/dist/components/hb-dropdown.js.map +1 -1
  257. package/dist/components/hb-empty.js +1 -1
  258. package/dist/components/hb-float-button.js +2 -2
  259. package/dist/components/hb-footer.js +1 -1
  260. package/dist/components/hb-form-item.js +59 -8
  261. package/dist/components/hb-form-item.js.map +1 -1
  262. package/dist/components/hb-form.js +3 -3
  263. package/dist/components/hb-form.js.map +1 -1
  264. package/dist/components/hb-header.js +1 -1
  265. package/dist/components/hb-icon.js +1 -89
  266. package/dist/components/hb-icon.js.map +1 -1
  267. package/dist/components/hb-image-preview.js +12 -8
  268. package/dist/components/hb-image-preview.js.map +1 -1
  269. package/dist/components/hb-image.js +1 -1
  270. package/dist/components/hb-input-number.js +5 -5
  271. package/dist/components/hb-input-tag.js +2 -2
  272. package/dist/components/hb-input.js +39 -3
  273. package/dist/components/hb-input.js.map +1 -1
  274. package/dist/components/hb-layout.js +36 -14
  275. package/dist/components/hb-layout.js.map +1 -1
  276. package/dist/components/hb-link.js +2 -2
  277. package/dist/components/hb-loading.js +2 -2
  278. package/dist/components/hb-main.js +1 -1
  279. package/dist/components/hb-menu-item.js +2 -2
  280. package/dist/components/hb-menu.js +3 -3
  281. package/dist/components/hb-menu.js.map +1 -1
  282. package/dist/components/hb-message.js +2 -2
  283. package/dist/components/hb-notification.js +2 -2
  284. package/dist/components/hb-page-header.js +1 -1
  285. package/dist/components/hb-pagination.js +25 -10
  286. package/dist/components/hb-pagination.js.map +1 -1
  287. package/dist/components/hb-popconfirm.js +37 -7
  288. package/dist/components/hb-popconfirm.js.map +1 -1
  289. package/dist/components/hb-popover.js +22 -2
  290. package/dist/components/hb-popover.js.map +1 -1
  291. package/dist/components/hb-progress.js +1 -1
  292. package/dist/components/hb-radio.js +2 -2
  293. package/dist/components/hb-rate.js +45 -3
  294. package/dist/components/hb-rate.js.map +1 -1
  295. package/dist/components/hb-result.js +1 -1
  296. package/dist/components/hb-row.js +2 -2
  297. package/dist/components/hb-segmented.js +41 -6
  298. package/dist/components/hb-segmented.js.map +1 -1
  299. package/dist/components/hb-select.js +47 -8
  300. package/dist/components/hb-select.js.map +1 -1
  301. package/dist/components/hb-slider.js +194 -21
  302. package/dist/components/hb-slider.js.map +1 -1
  303. package/dist/components/hb-space.js +2 -2
  304. package/dist/components/hb-statistic.js +1 -1
  305. package/dist/components/hb-step.js +1 -1
  306. package/dist/components/hb-steps.js +35 -8
  307. package/dist/components/hb-steps.js.map +1 -1
  308. package/dist/components/hb-sub-menu.js +4 -4
  309. package/dist/components/hb-switch.js +9 -4
  310. package/dist/components/hb-switch.js.map +1 -1
  311. package/dist/components/hb-tab-pane.js +1 -1
  312. package/dist/components/hb-table.js +1 -1
  313. package/dist/components/hb-table.js.map +1 -1
  314. package/dist/components/hb-tabs.js +2 -2
  315. package/dist/components/hb-tag.js +2 -2
  316. package/dist/components/hb-text.js +2 -2
  317. package/dist/components/hb-time-picker.js +4 -4
  318. package/dist/components/hb-time-select.js +2 -2
  319. package/dist/components/hb-timeline.js +1 -1
  320. package/dist/components/hb-tooltip.js +18 -1
  321. package/dist/components/hb-tooltip.js.map +1 -1
  322. package/dist/components/hb-transfer.js +2 -2
  323. package/dist/components/hb-tree-select.js +95 -18
  324. package/dist/components/hb-tree-select.js.map +1 -1
  325. package/dist/components/hb-tree.js +1 -1
  326. package/dist/components/hb-upload.js +3 -3
  327. package/dist/components/hb-watermark.js +1 -1
  328. package/dist/components/{p-cf94cbf6.js → p-08b4005c.js} +7 -3
  329. package/dist/components/p-08b4005c.js.map +1 -0
  330. package/dist/components/p-86d92faf.js +93 -0
  331. package/dist/components/p-86d92faf.js.map +1 -0
  332. package/dist/esm/{date-helpers-e4d85a67.js → date-helpers-44507189.js} +7 -3
  333. package/dist/esm/date-helpers-44507189.js.map +1 -0
  334. package/dist/esm/hb-affix.entry.js +1 -1
  335. package/dist/esm/hb-aside.entry.js +1 -1
  336. package/dist/esm/hb-avatar.entry.js +1 -1
  337. package/dist/esm/hb-backtop.entry.js +2 -2
  338. package/dist/esm/hb-badge.entry.js +1 -1
  339. package/dist/esm/hb-breadcrumb-item.entry.js +1 -1
  340. package/dist/esm/hb-breadcrumb.entry.js +1 -1
  341. package/dist/esm/hb-button.entry.js +2 -2
  342. package/dist/esm/hb-calendar.entry.js +78 -10
  343. package/dist/esm/hb-calendar.entry.js.map +1 -1
  344. package/dist/esm/hb-card.entry.js +1 -1
  345. package/dist/esm/hb-cascader.entry.js +270 -146
  346. package/dist/esm/hb-cascader.entry.js.map +1 -1
  347. package/dist/esm/hb-checkbox-group.entry.js +2 -2
  348. package/dist/esm/hb-checkbox.entry.js +3 -3
  349. package/dist/esm/hb-collapse-item.entry.js +1 -1
  350. package/dist/esm/hb-collapse.entry.js +1 -1
  351. package/dist/esm/hb-color-picker-panel.entry.js +2 -2
  352. package/dist/esm/hb-color-picker.entry.js +91 -14
  353. package/dist/esm/hb-color-picker.entry.js.map +1 -1
  354. package/dist/esm/hb-config-provider.entry.js +1 -1
  355. package/dist/esm/hb-container.entry.js +2 -2
  356. package/dist/esm/hb-date-picker-pane.entry.js +2 -2
  357. package/dist/esm/hb-date-picker.entry.js +85 -7
  358. package/dist/esm/hb-date-picker.entry.js.map +1 -1
  359. package/dist/esm/hb-date-range-picker.entry.js +3 -3
  360. package/dist/esm/hb-date-time-picker.entry.js +3 -3
  361. package/dist/esm/hb-descriptions.entry.js +2 -2
  362. package/dist/esm/hb-descriptions.entry.js.map +1 -1
  363. package/dist/esm/hb-divider.entry.js +2 -2
  364. package/dist/esm/hb-drawer.entry.js +1 -1
  365. package/dist/esm/hb-dropdown.entry.js +74 -6
  366. package/dist/esm/hb-dropdown.entry.js.map +1 -1
  367. package/dist/esm/hb-empty.entry.js +1 -1
  368. package/dist/esm/hb-float-button.entry.js +2 -2
  369. package/dist/esm/hb-footer.entry.js +1 -1
  370. package/dist/esm/hb-form-item.entry.js +59 -8
  371. package/dist/esm/hb-form-item.entry.js.map +1 -1
  372. package/dist/esm/hb-form.entry.js +3 -3
  373. package/dist/esm/hb-form.entry.js.map +1 -1
  374. package/dist/esm/hb-header.entry.js +1 -1
  375. package/dist/esm/hb-image-preview.entry.js +12 -8
  376. package/dist/esm/hb-image-preview.entry.js.map +1 -1
  377. package/dist/esm/hb-image.entry.js +1 -1
  378. package/dist/esm/hb-input-number.entry.js +5 -5
  379. package/dist/esm/hb-input-tag.entry.js +2 -2
  380. package/dist/esm/hb-input.entry.js +39 -3
  381. package/dist/esm/hb-input.entry.js.map +1 -1
  382. package/dist/esm/hb-layout.entry.js +36 -14
  383. package/dist/esm/hb-layout.entry.js.map +1 -1
  384. package/dist/esm/hb-link.entry.js +2 -2
  385. package/dist/esm/hb-loading.entry.js +2 -2
  386. package/dist/esm/hb-main.entry.js +1 -1
  387. package/dist/esm/hb-menu-item.entry.js +2 -2
  388. package/dist/esm/hb-menu.entry.js +3 -3
  389. package/dist/esm/hb-menu.entry.js.map +1 -1
  390. package/dist/esm/hb-message.entry.js +2 -2
  391. package/dist/esm/hb-notification.entry.js +2 -2
  392. package/dist/esm/hb-page-header.entry.js +1 -1
  393. package/dist/esm/hb-pagination.entry.js +21 -8
  394. package/dist/esm/hb-pagination.entry.js.map +1 -1
  395. package/dist/esm/hb-popconfirm.entry.js +37 -7
  396. package/dist/esm/hb-popconfirm.entry.js.map +1 -1
  397. package/dist/esm/hb-popover.entry.js +22 -2
  398. package/dist/esm/hb-popover.entry.js.map +1 -1
  399. package/dist/esm/hb-progress.entry.js +1 -1
  400. package/dist/esm/hb-radio.entry.js +2 -2
  401. package/dist/esm/hb-rate.entry.js +45 -3
  402. package/dist/esm/hb-rate.entry.js.map +1 -1
  403. package/dist/esm/hb-result.entry.js +1 -1
  404. package/dist/esm/hb-row.entry.js +2 -2
  405. package/dist/esm/hb-segmented.entry.js +40 -6
  406. package/dist/esm/hb-segmented.entry.js.map +1 -1
  407. package/dist/esm/hb-select.entry.js +47 -8
  408. package/dist/esm/hb-select.entry.js.map +1 -1
  409. package/dist/esm/hb-slider.entry.js +189 -20
  410. package/dist/esm/hb-slider.entry.js.map +1 -1
  411. package/dist/esm/hb-space.entry.js +2 -2
  412. package/dist/esm/hb-statistic.entry.js +1 -1
  413. package/dist/esm/hb-step.entry.js +1 -1
  414. package/dist/esm/hb-steps.entry.js +28 -7
  415. package/dist/esm/hb-steps.entry.js.map +1 -1
  416. package/dist/esm/hb-sub-menu.entry.js +4 -4
  417. package/dist/esm/hb-switch.entry.js +9 -4
  418. package/dist/esm/hb-switch.entry.js.map +1 -1
  419. package/dist/esm/hb-tab-pane.entry.js +1 -1
  420. package/dist/esm/hb-table.entry.js +1 -1
  421. package/dist/esm/hb-table.entry.js.map +1 -1
  422. package/dist/esm/hb-tabs.entry.js +2 -2
  423. package/dist/esm/hb-tag.entry.js +2 -2
  424. package/dist/esm/hb-text.entry.js +2 -2
  425. package/dist/esm/hb-time-picker.entry.js +4 -4
  426. package/dist/esm/hb-time-select.entry.js +2 -2
  427. package/dist/esm/hb-timeline.entry.js +1 -1
  428. package/dist/esm/hb-tooltip.entry.js +18 -1
  429. package/dist/esm/hb-tooltip.entry.js.map +1 -1
  430. package/dist/esm/hb-transfer.entry.js +2 -2
  431. package/dist/esm/hb-tree-select.entry.js +95 -18
  432. package/dist/esm/hb-tree-select.entry.js.map +1 -1
  433. package/dist/esm/hb-tree.entry.js +1 -1
  434. package/dist/esm/hb-upload.entry.js +3 -3
  435. package/dist/esm/hb-watermark.entry.js +1 -1
  436. package/dist/esm/huibo-ui.js +1 -1
  437. package/dist/esm/loader.js +1 -1
  438. package/dist/huibo-ui/huibo-ui.css +1 -1
  439. package/dist/huibo-ui/huibo-ui.esm.js +1 -1
  440. package/dist/huibo-ui/huibo-ui.esm.js.map +1 -1
  441. package/dist/huibo-ui/p-02f15843.entry.js +2 -0
  442. package/dist/huibo-ui/p-08b4005c.js +2 -0
  443. package/dist/huibo-ui/p-08b4005c.js.map +1 -0
  444. package/dist/huibo-ui/{p-fd19813c.entry.js → p-0d4b2997.entry.js} +2 -2
  445. package/dist/huibo-ui/{p-672076c3.entry.js → p-10f6c184.entry.js} +2 -2
  446. package/dist/huibo-ui/p-10f6c184.entry.js.map +1 -0
  447. package/dist/huibo-ui/{p-d7815b4f.entry.js → p-13010da2.entry.js} +2 -2
  448. package/dist/huibo-ui/{p-8c80a765.entry.js → p-15db24e9.entry.js} +2 -2
  449. package/dist/huibo-ui/{p-8d925e3d.entry.js → p-1b0fbe69.entry.js} +2 -2
  450. package/dist/huibo-ui/p-1f8db37a.entry.js +2 -0
  451. package/dist/huibo-ui/p-1f8db37a.entry.js.map +1 -0
  452. package/dist/huibo-ui/{p-f374d5a3.entry.js → p-20632186.entry.js} +2 -2
  453. package/dist/huibo-ui/{p-e6f2d71d.entry.js → p-20fc554b.entry.js} +2 -2
  454. package/dist/huibo-ui/{p-315feadf.entry.js → p-213b9de7.entry.js} +2 -2
  455. package/dist/huibo-ui/p-25fd7d5c.entry.js +2 -0
  456. package/dist/huibo-ui/p-25fd7d5c.entry.js.map +1 -0
  457. package/dist/huibo-ui/p-2811e603.entry.js +2 -0
  458. package/dist/huibo-ui/p-2811e603.entry.js.map +1 -0
  459. package/dist/huibo-ui/{p-64ca0980.entry.js → p-2943f5d0.entry.js} +2 -2
  460. package/dist/huibo-ui/p-2943f5d0.entry.js.map +1 -0
  461. package/dist/huibo-ui/{p-710f38de.entry.js → p-2b4556ff.entry.js} +2 -2
  462. package/dist/huibo-ui/{p-e0ab9010.entry.js → p-33de6878.entry.js} +2 -2
  463. package/dist/huibo-ui/{p-ebd04656.entry.js → p-3807da71.entry.js} +2 -2
  464. package/dist/huibo-ui/{p-6a1ec3ff.entry.js → p-3deff48c.entry.js} +2 -2
  465. package/dist/huibo-ui/{p-e2a8a396.entry.js → p-41d9c846.entry.js} +2 -2
  466. package/dist/huibo-ui/{p-0a033738.entry.js → p-47ef7a86.entry.js} +2 -2
  467. package/dist/huibo-ui/p-4d34e43e.entry.js +2 -0
  468. package/dist/huibo-ui/p-4d34e43e.entry.js.map +1 -0
  469. package/dist/huibo-ui/p-54aa2fd8.entry.js +2 -0
  470. package/dist/huibo-ui/p-54aa2fd8.entry.js.map +1 -0
  471. package/dist/huibo-ui/{p-88127de1.entry.js → p-55cd13eb.entry.js} +2 -2
  472. package/dist/huibo-ui/{p-58ebb9b3.entry.js → p-5c839288.entry.js} +2 -2
  473. package/dist/huibo-ui/{p-c1b4eacb.entry.js → p-60532a1f.entry.js} +2 -2
  474. package/dist/huibo-ui/{p-59b2e61c.entry.js → p-626b48f1.entry.js} +2 -2
  475. package/dist/huibo-ui/p-626b48f1.entry.js.map +1 -0
  476. package/dist/huibo-ui/p-639f167d.entry.js +2 -0
  477. package/dist/huibo-ui/p-639f167d.entry.js.map +1 -0
  478. package/dist/huibo-ui/{p-f1c084c5.entry.js → p-678b4212.entry.js} +2 -2
  479. package/dist/huibo-ui/p-6beb5b81.entry.js +2 -0
  480. package/dist/huibo-ui/p-6beb5b81.entry.js.map +1 -0
  481. package/dist/huibo-ui/{p-a0015341.entry.js → p-6bfeab80.entry.js} +2 -2
  482. package/dist/huibo-ui/p-6c8cf248.entry.js +2 -0
  483. package/dist/huibo-ui/p-6c8cf248.entry.js.map +1 -0
  484. package/dist/huibo-ui/{p-85f68526.entry.js → p-735bceef.entry.js} +2 -2
  485. package/dist/huibo-ui/{p-8b1ae77e.entry.js → p-746a11a3.entry.js} +2 -2
  486. package/dist/huibo-ui/p-76519752.entry.js +2 -0
  487. package/dist/huibo-ui/{p-d3939d44.entry.js → p-79af2efa.entry.js} +2 -2
  488. package/dist/huibo-ui/{p-e0768565.entry.js → p-7da14d7c.entry.js} +2 -2
  489. package/dist/huibo-ui/{p-8c987d57.entry.js → p-7f65dc36.entry.js} +2 -2
  490. package/dist/huibo-ui/{p-0e65e1bd.entry.js → p-86bdc48a.entry.js} +2 -2
  491. package/dist/huibo-ui/p-86bdc48a.entry.js.map +1 -0
  492. package/dist/huibo-ui/{p-d87fc21a.entry.js → p-88a6c905.entry.js} +2 -2
  493. package/dist/huibo-ui/{p-d64b91ef.entry.js → p-89ea1141.entry.js} +2 -2
  494. package/dist/huibo-ui/p-89ea1141.entry.js.map +1 -0
  495. package/dist/huibo-ui/p-8a202bc5.entry.js +2 -0
  496. package/dist/huibo-ui/p-8a202bc5.entry.js.map +1 -0
  497. package/dist/huibo-ui/p-8a8443b8.entry.js +2 -0
  498. package/dist/huibo-ui/p-8a8443b8.entry.js.map +1 -0
  499. package/dist/huibo-ui/p-8fd788c9.entry.js +2 -0
  500. package/dist/huibo-ui/p-8fd788c9.entry.js.map +1 -0
  501. package/dist/huibo-ui/{p-9319c650.entry.js → p-8fdbd17c.entry.js} +2 -2
  502. package/dist/huibo-ui/p-92521c31.entry.js +2 -0
  503. package/dist/huibo-ui/p-92521c31.entry.js.map +1 -0
  504. package/dist/huibo-ui/{p-c3e665f6.entry.js → p-9a5406f0.entry.js} +2 -2
  505. package/dist/huibo-ui/p-9a5406f0.entry.js.map +1 -0
  506. package/dist/huibo-ui/{p-c321c4aa.entry.js → p-a084b8e5.entry.js} +2 -2
  507. package/dist/huibo-ui/{p-5df47135.entry.js → p-a190ca89.entry.js} +2 -2
  508. package/dist/huibo-ui/{p-463de26d.entry.js → p-a8996d22.entry.js} +2 -2
  509. package/dist/huibo-ui/p-aa5e5e02.entry.js +2 -0
  510. package/dist/huibo-ui/p-aa5e5e02.entry.js.map +1 -0
  511. package/dist/huibo-ui/{p-6b381d0e.entry.js → p-ab9cf0e4.entry.js} +2 -2
  512. package/dist/huibo-ui/{p-477d8568.entry.js → p-aeae83af.entry.js} +2 -2
  513. package/dist/huibo-ui/{p-77017274.entry.js → p-af74667d.entry.js} +2 -2
  514. package/dist/huibo-ui/{p-b489a526.entry.js → p-b06c8020.entry.js} +2 -2
  515. package/dist/huibo-ui/{p-2e6584ea.entry.js → p-b468858e.entry.js} +2 -2
  516. package/dist/huibo-ui/{p-2b286698.entry.js → p-b7885d4a.entry.js} +2 -2
  517. package/dist/huibo-ui/{p-231a7335.entry.js → p-b8d87f7e.entry.js} +2 -2
  518. package/dist/huibo-ui/{p-8b027491.entry.js → p-c50ad398.entry.js} +2 -2
  519. package/dist/huibo-ui/p-c6c91664.entry.js +2 -0
  520. package/dist/huibo-ui/{p-c3e8893d.entry.js → p-c80f8ace.entry.js} +2 -2
  521. package/dist/huibo-ui/p-c80f8ace.entry.js.map +1 -0
  522. package/dist/huibo-ui/{p-476527c1.entry.js → p-c8e917db.entry.js} +2 -2
  523. package/dist/huibo-ui/p-c8e917db.entry.js.map +1 -0
  524. package/dist/huibo-ui/{p-c922d672.entry.js → p-cad57c2d.entry.js} +2 -2
  525. package/dist/huibo-ui/{p-a042e3d0.entry.js → p-ccd09d5a.entry.js} +2 -2
  526. package/dist/huibo-ui/p-d79a15b1.entry.js +2 -0
  527. package/dist/huibo-ui/p-d79a15b1.entry.js.map +1 -0
  528. package/dist/huibo-ui/{p-10c088f3.entry.js → p-d9c7c378.entry.js} +2 -2
  529. package/dist/huibo-ui/{p-80aca641.entry.js → p-dfccc7aa.entry.js} +2 -2
  530. package/dist/huibo-ui/{p-21682e92.entry.js → p-dfd144d8.entry.js} +2 -2
  531. package/dist/huibo-ui/{p-be48d2aa.entry.js → p-e039155d.entry.js} +2 -2
  532. package/dist/huibo-ui/{p-dfaf7e37.entry.js → p-e10fcfbe.entry.js} +2 -2
  533. package/dist/huibo-ui/{p-079a4130.entry.js → p-e3155cd7.entry.js} +2 -2
  534. package/dist/huibo-ui/{p-4001c08d.entry.js → p-e5cbfa9e.entry.js} +2 -2
  535. package/dist/huibo-ui/p-e5cbfa9e.entry.js.map +1 -0
  536. package/dist/huibo-ui/p-edbda423.entry.js +2 -0
  537. package/dist/huibo-ui/p-edbda423.entry.js.map +1 -0
  538. package/dist/huibo-ui/{p-465dcb4c.entry.js → p-f2c78699.entry.js} +2 -2
  539. package/dist/huibo-ui/{p-6ac242fe.entry.js → p-f4336be9.entry.js} +2 -2
  540. package/dist/huibo-ui/{p-332c8877.entry.js → p-f5969181.entry.js} +2 -2
  541. package/dist/huibo-ui/{p-f81ec512.entry.js → p-f6889710.entry.js} +2 -2
  542. package/dist/huibo-ui/{p-24ad7eec.entry.js → p-f9bb5217.entry.js} +2 -2
  543. package/dist/huibo-ui/{p-4d8b1404.entry.js → p-fd8301c6.entry.js} +2 -2
  544. package/dist/huibo-ui/{p-dd05cb2c.entry.js → p-fea20295.entry.js} +2 -2
  545. package/dist/types/components/Calendar/Calendar.d.ts +13 -1
  546. package/dist/types/components/Cascader/Cascader.d.ts +68 -90
  547. package/dist/types/components/ColorPicker/ColorPicker.d.ts +11 -0
  548. package/dist/types/components/DatePicker/DatePicker.d.ts +14 -3
  549. package/dist/types/components/Dropdown/Dropdown.d.ts +14 -1
  550. package/dist/types/components/Form/FormItem.d.ts +10 -0
  551. package/dist/types/components/ImagePreview/ImagePreview.d.ts +5 -1
  552. package/dist/types/components/Input/Input.d.ts +9 -0
  553. package/dist/types/components/Layout/Layout.d.ts +20 -10
  554. package/dist/types/components/Pagination/Pagination.d.ts +3 -0
  555. package/dist/types/components/Popconfirm/Popconfirm.d.ts +12 -0
  556. package/dist/types/components/Popover/Popover.d.ts +9 -0
  557. package/dist/types/components/Rate/Rate.d.ts +7 -0
  558. package/dist/types/components/Segmented/Segmented.d.ts +12 -1
  559. package/dist/types/components/Select/Select.d.ts +6 -0
  560. package/dist/types/components/Slider/Slider.d.ts +27 -1
  561. package/dist/types/components/Steps/Steps.d.ts +14 -6
  562. package/dist/types/components/Tooltip/Tooltip.d.ts +9 -1
  563. package/dist/types/components/TreeSelect/TreeSelect.d.ts +9 -0
  564. package/dist/types/components.d.ts +250 -94
  565. package/dist/types/utils/date-helpers.d.ts +1 -1
  566. package/package.json +8 -2
  567. package/readme.md +88 -73
  568. package/dist/cjs/date-helpers-904747ff.js.map +0 -1
  569. package/dist/components/p-cf94cbf6.js.map +0 -1
  570. package/dist/esm/date-helpers-e4d85a67.js.map +0 -1
  571. package/dist/huibo-ui/p-003cee87.entry.js +0 -2
  572. package/dist/huibo-ui/p-003cee87.entry.js.map +0 -1
  573. package/dist/huibo-ui/p-0bef78ac.entry.js +0 -2
  574. package/dist/huibo-ui/p-0bef78ac.entry.js.map +0 -1
  575. package/dist/huibo-ui/p-0e65e1bd.entry.js.map +0 -1
  576. package/dist/huibo-ui/p-0f189251.entry.js +0 -2
  577. package/dist/huibo-ui/p-0f189251.entry.js.map +0 -1
  578. package/dist/huibo-ui/p-1b5acd6d.entry.js +0 -2
  579. package/dist/huibo-ui/p-1b5acd6d.entry.js.map +0 -1
  580. package/dist/huibo-ui/p-3c7f73c8.entry.js +0 -2
  581. package/dist/huibo-ui/p-3c7f73c8.entry.js.map +0 -1
  582. package/dist/huibo-ui/p-4001c08d.entry.js.map +0 -1
  583. package/dist/huibo-ui/p-44c48246.entry.js +0 -2
  584. package/dist/huibo-ui/p-44c48246.entry.js.map +0 -1
  585. package/dist/huibo-ui/p-476527c1.entry.js.map +0 -1
  586. package/dist/huibo-ui/p-4d0dff15.entry.js +0 -2
  587. package/dist/huibo-ui/p-58d20809.entry.js +0 -2
  588. package/dist/huibo-ui/p-58d20809.entry.js.map +0 -1
  589. package/dist/huibo-ui/p-59b2e61c.entry.js.map +0 -1
  590. package/dist/huibo-ui/p-64ca0980.entry.js.map +0 -1
  591. package/dist/huibo-ui/p-672076c3.entry.js.map +0 -1
  592. package/dist/huibo-ui/p-756acbdb.entry.js +0 -2
  593. package/dist/huibo-ui/p-756acbdb.entry.js.map +0 -1
  594. package/dist/huibo-ui/p-75a93de3.entry.js +0 -2
  595. package/dist/huibo-ui/p-75a93de3.entry.js.map +0 -1
  596. package/dist/huibo-ui/p-769960f4.entry.js +0 -2
  597. package/dist/huibo-ui/p-8d615521.entry.js +0 -2
  598. package/dist/huibo-ui/p-8d615521.entry.js.map +0 -1
  599. package/dist/huibo-ui/p-953b9514.entry.js +0 -2
  600. package/dist/huibo-ui/p-ad6b0c6e.entry.js +0 -2
  601. package/dist/huibo-ui/p-ad6b0c6e.entry.js.map +0 -1
  602. package/dist/huibo-ui/p-c1a059d9.entry.js +0 -2
  603. package/dist/huibo-ui/p-c1a059d9.entry.js.map +0 -1
  604. package/dist/huibo-ui/p-c3e665f6.entry.js.map +0 -1
  605. package/dist/huibo-ui/p-c3e8893d.entry.js.map +0 -1
  606. package/dist/huibo-ui/p-cf94cbf6.js +0 -2
  607. package/dist/huibo-ui/p-cf94cbf6.js.map +0 -1
  608. package/dist/huibo-ui/p-d64b91ef.entry.js.map +0 -1
  609. package/dist/huibo-ui/p-e9490259.entry.js +0 -2
  610. package/dist/huibo-ui/p-e9490259.entry.js.map +0 -1
  611. package/dist/huibo-ui/p-ed0ff857.entry.js +0 -2
  612. package/dist/huibo-ui/p-ed0ff857.entry.js.map +0 -1
  613. package/dist/huibo-ui/p-f0ac7db5.entry.js +0 -2
  614. package/dist/huibo-ui/p-f0ac7db5.entry.js.map +0 -1
  615. /package/dist/huibo-ui/{p-4d0dff15.entry.js.map → p-02f15843.entry.js.map} +0 -0
  616. /package/dist/huibo-ui/{p-fd19813c.entry.js.map → p-0d4b2997.entry.js.map} +0 -0
  617. /package/dist/huibo-ui/{p-d7815b4f.entry.js.map → p-13010da2.entry.js.map} +0 -0
  618. /package/dist/huibo-ui/{p-8c80a765.entry.js.map → p-15db24e9.entry.js.map} +0 -0
  619. /package/dist/huibo-ui/{p-8d925e3d.entry.js.map → p-1b0fbe69.entry.js.map} +0 -0
  620. /package/dist/huibo-ui/{p-f374d5a3.entry.js.map → p-20632186.entry.js.map} +0 -0
  621. /package/dist/huibo-ui/{p-e6f2d71d.entry.js.map → p-20fc554b.entry.js.map} +0 -0
  622. /package/dist/huibo-ui/{p-315feadf.entry.js.map → p-213b9de7.entry.js.map} +0 -0
  623. /package/dist/huibo-ui/{p-710f38de.entry.js.map → p-2b4556ff.entry.js.map} +0 -0
  624. /package/dist/huibo-ui/{p-e0ab9010.entry.js.map → p-33de6878.entry.js.map} +0 -0
  625. /package/dist/huibo-ui/{p-ebd04656.entry.js.map → p-3807da71.entry.js.map} +0 -0
  626. /package/dist/huibo-ui/{p-6a1ec3ff.entry.js.map → p-3deff48c.entry.js.map} +0 -0
  627. /package/dist/huibo-ui/{p-e2a8a396.entry.js.map → p-41d9c846.entry.js.map} +0 -0
  628. /package/dist/huibo-ui/{p-0a033738.entry.js.map → p-47ef7a86.entry.js.map} +0 -0
  629. /package/dist/huibo-ui/{p-88127de1.entry.js.map → p-55cd13eb.entry.js.map} +0 -0
  630. /package/dist/huibo-ui/{p-58ebb9b3.entry.js.map → p-5c839288.entry.js.map} +0 -0
  631. /package/dist/huibo-ui/{p-c1b4eacb.entry.js.map → p-60532a1f.entry.js.map} +0 -0
  632. /package/dist/huibo-ui/{p-f1c084c5.entry.js.map → p-678b4212.entry.js.map} +0 -0
  633. /package/dist/huibo-ui/{p-a0015341.entry.js.map → p-6bfeab80.entry.js.map} +0 -0
  634. /package/dist/huibo-ui/{p-85f68526.entry.js.map → p-735bceef.entry.js.map} +0 -0
  635. /package/dist/huibo-ui/{p-8b1ae77e.entry.js.map → p-746a11a3.entry.js.map} +0 -0
  636. /package/dist/huibo-ui/{p-953b9514.entry.js.map → p-76519752.entry.js.map} +0 -0
  637. /package/dist/huibo-ui/{p-d3939d44.entry.js.map → p-79af2efa.entry.js.map} +0 -0
  638. /package/dist/huibo-ui/{p-e0768565.entry.js.map → p-7da14d7c.entry.js.map} +0 -0
  639. /package/dist/huibo-ui/{p-8c987d57.entry.js.map → p-7f65dc36.entry.js.map} +0 -0
  640. /package/dist/huibo-ui/{p-d87fc21a.entry.js.map → p-88a6c905.entry.js.map} +0 -0
  641. /package/dist/huibo-ui/{p-9319c650.entry.js.map → p-8fdbd17c.entry.js.map} +0 -0
  642. /package/dist/huibo-ui/{p-c321c4aa.entry.js.map → p-a084b8e5.entry.js.map} +0 -0
  643. /package/dist/huibo-ui/{p-5df47135.entry.js.map → p-a190ca89.entry.js.map} +0 -0
  644. /package/dist/huibo-ui/{p-463de26d.entry.js.map → p-a8996d22.entry.js.map} +0 -0
  645. /package/dist/huibo-ui/{p-6b381d0e.entry.js.map → p-ab9cf0e4.entry.js.map} +0 -0
  646. /package/dist/huibo-ui/{p-477d8568.entry.js.map → p-aeae83af.entry.js.map} +0 -0
  647. /package/dist/huibo-ui/{p-77017274.entry.js.map → p-af74667d.entry.js.map} +0 -0
  648. /package/dist/huibo-ui/{p-b489a526.entry.js.map → p-b06c8020.entry.js.map} +0 -0
  649. /package/dist/huibo-ui/{p-2e6584ea.entry.js.map → p-b468858e.entry.js.map} +0 -0
  650. /package/dist/huibo-ui/{p-2b286698.entry.js.map → p-b7885d4a.entry.js.map} +0 -0
  651. /package/dist/huibo-ui/{p-231a7335.entry.js.map → p-b8d87f7e.entry.js.map} +0 -0
  652. /package/dist/huibo-ui/{p-8b027491.entry.js.map → p-c50ad398.entry.js.map} +0 -0
  653. /package/dist/huibo-ui/{p-769960f4.entry.js.map → p-c6c91664.entry.js.map} +0 -0
  654. /package/dist/huibo-ui/{p-c922d672.entry.js.map → p-cad57c2d.entry.js.map} +0 -0
  655. /package/dist/huibo-ui/{p-a042e3d0.entry.js.map → p-ccd09d5a.entry.js.map} +0 -0
  656. /package/dist/huibo-ui/{p-10c088f3.entry.js.map → p-d9c7c378.entry.js.map} +0 -0
  657. /package/dist/huibo-ui/{p-80aca641.entry.js.map → p-dfccc7aa.entry.js.map} +0 -0
  658. /package/dist/huibo-ui/{p-21682e92.entry.js.map → p-dfd144d8.entry.js.map} +0 -0
  659. /package/dist/huibo-ui/{p-be48d2aa.entry.js.map → p-e039155d.entry.js.map} +0 -0
  660. /package/dist/huibo-ui/{p-dfaf7e37.entry.js.map → p-e10fcfbe.entry.js.map} +0 -0
  661. /package/dist/huibo-ui/{p-079a4130.entry.js.map → p-e3155cd7.entry.js.map} +0 -0
  662. /package/dist/huibo-ui/{p-465dcb4c.entry.js.map → p-f2c78699.entry.js.map} +0 -0
  663. /package/dist/huibo-ui/{p-6ac242fe.entry.js.map → p-f4336be9.entry.js.map} +0 -0
  664. /package/dist/huibo-ui/{p-332c8877.entry.js.map → p-f5969181.entry.js.map} +0 -0
  665. /package/dist/huibo-ui/{p-f81ec512.entry.js.map → p-f6889710.entry.js.map} +0 -0
  666. /package/dist/huibo-ui/{p-24ad7eec.entry.js.map → p-f9bb5217.entry.js.map} +0 -0
  667. /package/dist/huibo-ui/{p-4d8b1404.entry.js.map → p-fd8301c6.entry.js.map} +0 -0
  668. /package/dist/huibo-ui/{p-dd05cb2c.entry.js.map → p-fea20295.entry.js.map} +0 -0
@@ -2,114 +2,92 @@ import { h } from "@stencil/core";
2
2
  import { createClickOutsideHandler } from "../../utils/click-outside";
3
3
  /**
4
4
  * Cascader 级联选择器组件
5
- * 当一个数据集合有清晰的层级结构时,可通过级联选择器逐级查看并选择
5
+ * 当一个数据集合有清晰的层级结构时,可通过级联选择器逐级查看并选择。
6
+ * 支持单选 / 多选(multiple)、可选任意层级(checkStrictly)、搜索(filterable)、动态加载(lazy)。
6
7
  */
7
8
  export class Cascader {
8
9
  el;
9
10
  /**
10
- * 选中项绑定值
11
+ * 选中项绑定值。单选为一维路径数组(如 ['zhejiang','hangzhou']),
12
+ * 多选(multiple)为二维数组(如 [['zhejiang','ningbo'], ['jiangsu']])。
11
13
  */
12
14
  modelValue;
13
- /**
14
- * 可选项数据源
15
- */
15
+ /** 可选项数据源 */
16
16
  options = [];
17
- /**
18
- * 输入框占位文本
19
- */
17
+ /** 输入框占位文本 */
20
18
  placeholder = '请选择';
21
- /**
22
- * 是否禁用
23
- * @default false
24
- */
19
+ /** 是否禁用 */
25
20
  disabled = false;
26
- /**
27
- * 输入框尺寸
28
- */
21
+ /** 输入框尺寸 */
29
22
  size = 'default';
30
- /**
31
- * 是否可清空
32
- * @default false
33
- */
23
+ /** 是否可清空 */
34
24
  clearable = false;
35
- /**
36
- * 是否显示完整路径
37
- * @default true
38
- */
25
+ /** 是否显示完整路径(单选输入框 / 多选 tag 文本) */
39
26
  showAllLevels = true;
40
- /**
41
- * 输入框的原生属性
42
- */
27
+ /** 输入框原生属性 */
43
28
  name;
44
- /**
45
- * 输入框的原生属性
46
- */
29
+ /** 输入框原生属性 */
47
30
  inputId;
48
- /**
49
- * 分隔符
50
- * @default ' / '
51
- */
31
+ /** 路径分隔符 */
52
32
  separator = ' / ';
53
- /**
54
- * 是否动态加载子节点
55
- * @default true
56
- */
33
+ /** modelValue 是否输出完整路径(保留 AntD 兼容位) */
57
34
  emitPath = true;
58
35
  /**
59
- * 是否可搜索(filterable
60
- * 开启后下拉顶部渲染搜索输入框,输入时按 label(含所有子级)扁平化过滤,
61
- * 匹配项以完整路径展示,点击即选中其完整路径。
62
- * @default false
36
+ * 是否可搜索(filterable)。下拉顶部渲染搜索框,输入时按 label 扁平化过滤,
37
+ * 匹配项以完整路径展示,点击即选中(单选)或 toggle 勾选(多选)。
63
38
  */
64
39
  filterable = false;
65
40
  /**
66
- * 是否开启动态加载(lazy load)。开启后,展开含 children=undefined 的节点时,
67
- * 调用 load(node) 获取其子级并填充进 options,加载中显示 loading 态。
68
- * @default false
41
+ * 是否开启动态加载(lazy)。展开 children=undefined 的节点时调用 load(node) 填充子级。
69
42
  */
70
43
  lazy = false;
44
+ /** 动态加载函数(仅 lazy=true 生效) */
45
+ load;
71
46
  /**
72
- * 动态加载子节点的函数(仅在 lazy=true 时生效)。
73
- * 接收被展开的节点,返回其子节点数组(Promise)。
74
- * 加载结果会以不可变方式合并进 options 树(替换该节点 children)。
47
+ * 是否开启多选。开启后 modelValue 为二维数组,每条为一个选中路径;
48
+ * 菜单项前渲染 checkbox,输入框以 tag 列表展示选中项。
75
49
  */
76
- load;
77
- isOpen = false;
78
- inputValue = '';
79
- searchValue = '';
50
+ multiple = false;
80
51
  /**
81
- * 正在动态加载子级的节点 value 集合(用于渲染 loading 态)。
52
+ * 是否严格的选中行为(父子不关联)。
53
+ * 单选:点击任意层级(含非叶子)即选中该路径;
54
+ * 多选:勾选独立,不向下联动选中叶子、取消也不联动。
82
55
  */
83
- loadingKeys = new Set();
56
+ checkStrictly = false;
84
57
  /**
85
- * 扁平化搜索结果:每一项是一个从根到匹配节点的完整路径(用于点击选中)。
86
- * 仅在 filterable 且 searchValue 非空时使用。
58
+ * 多选时输入框最多展示的 tag 数量,超出折叠为 +N(可选)。
87
59
  */
60
+ maxTagCount;
61
+ isOpen = false;
62
+ inputValue = '';
63
+ searchValue = '';
64
+ /** 正在动态加载子级的节点 value 集合 */
65
+ loadingKeys = new Set();
66
+ /** 扁平化搜索结果:每项为根到匹配节点的完整路径 */
88
67
  filteredPaths = [];
89
68
  activePath = [];
90
- /**
91
- * 值改变事件
92
- */
69
+ /** 值改变事件:单选 emit 一维路径或 undefined;多选 emit 二维数组(可能为 []) */
93
70
  hbChange;
94
- /**
95
- * 展开节点发生变化时触发
96
- */
71
+ /** 展开节点变化时触发 */
97
72
  hbExpandChange;
98
73
  clickOutside = createClickOutsideHandler({
99
74
  host: null,
100
75
  isOpen: () => this.isOpen,
101
- onClose: () => { this.closeAndClearSearch(); },
76
+ onClose: () => {
77
+ this.closeAndClearSearch();
78
+ },
102
79
  });
103
80
  componentDidLoad() {
104
81
  this.clickOutside = createClickOutsideHandler({
105
82
  host: this.el,
106
83
  isOpen: () => this.isOpen,
107
- onClose: () => { this.closeAndClearSearch(); },
84
+ onClose: () => {
85
+ this.closeAndClearSearch();
86
+ },
108
87
  });
109
88
  this.clickOutside.connect();
110
89
  this.updateInputValue();
111
90
  }
112
- /** 关闭下拉并清空搜索态(filterable 模式下避免重开时残留搜索结果) */
113
91
  closeAndClearSearch() {
114
92
  this.isOpen = false;
115
93
  this.searchValue = '';
@@ -122,19 +100,24 @@ export class Cascader {
122
100
  this.updateInputValue();
123
101
  }
124
102
  updateInputValue() {
103
+ if (this.multiple) {
104
+ this.inputValue = '';
105
+ return;
106
+ }
125
107
  if (!this.modelValue || this.modelValue.length === 0) {
126
108
  this.inputValue = '';
127
109
  return;
128
110
  }
111
+ const mv = this.modelValue;
129
112
  if (!this.showAllLevels) {
130
- const lastValue = this.modelValue[this.modelValue.length - 1];
113
+ const lastValue = mv[mv.length - 1];
131
114
  const option = this.findOptionByValue(this.options, lastValue);
132
115
  this.inputValue = option ? option.label : '';
133
116
  return;
134
117
  }
135
118
  const labels = [];
136
119
  let currentOptions = this.options;
137
- for (const value of this.modelValue) {
120
+ for (const value of mv) {
138
121
  const option = currentOptions.find(opt => opt.value === value);
139
122
  if (option) {
140
123
  labels.push(option.label);
@@ -148,9 +131,8 @@ export class Cascader {
148
131
  }
149
132
  findOptionByValue(options, value) {
150
133
  for (const option of options) {
151
- if (option.value === value) {
134
+ if (option.value === value)
152
135
  return option;
153
- }
154
136
  if (option.children) {
155
137
  const found = this.findOptionByValue(option.children, value);
156
138
  if (found)
@@ -159,31 +141,143 @@ export class Cascader {
159
141
  }
160
142
  return null;
161
143
  }
144
+ // ===== 多选(multiple)核心算法 =====
145
+ /** 取多选 modelValue 为二维数组(非多选模式或形状不符时返回 []) */
146
+ getMultiModel() {
147
+ if (!this.multiple)
148
+ return [];
149
+ const mv = this.modelValue;
150
+ if (Array.isArray(mv) && mv.length > 0 && Array.isArray(mv[0]))
151
+ return mv;
152
+ return [];
153
+ }
154
+ /** 两条 value 路径是否完全相等 */
155
+ pathEquals(a, b) {
156
+ if (!a || a.length !== b.length)
157
+ return false;
158
+ return a.every((v, i) => v === b[i]);
159
+ }
160
+ /** 收集某节点子树下的全部叶子 value 路径(用于父子联动计算) */
161
+ collectLeafValuePaths(option, basePath) {
162
+ const currentPath = [...basePath, option.value];
163
+ const hasChildren = option.children && option.children.length > 0;
164
+ if (!hasChildren || option.leaf)
165
+ return [currentPath];
166
+ const result = [];
167
+ for (const child of option.children) {
168
+ result.push(...this.collectLeafValuePaths(child, currentPath));
169
+ }
170
+ return result;
171
+ }
172
+ /**
173
+ * 多选模式下某节点的勾选三态。
174
+ * checkStrictly:该节点路径是否在 modelValue(checked / unchecked)。
175
+ * 默认:按叶子计算 —— 全部叶子入选=checked,部分=indeterminate,无=unchecked。
176
+ */
177
+ getCheckState(option, path) {
178
+ const valuePath = [...path, option.value];
179
+ const model = this.getMultiModel();
180
+ if (this.checkStrictly) {
181
+ return model.some(p => this.pathEquals(p, valuePath)) ? 'checked' : 'unchecked';
182
+ }
183
+ const leafPaths = this.collectLeafValuePaths(option, path);
184
+ if (leafPaths.every(lp => model.some(p => this.pathEquals(p, lp))))
185
+ return 'checked';
186
+ if (leafPaths.some(lp => model.some(p => this.pathEquals(p, lp))))
187
+ return 'indeterminate';
188
+ return 'unchecked';
189
+ }
190
+ /** 多选:toggle 某节点勾选(按 checkStrictly 决定是否联动叶子) */
191
+ handleCheck(option, path) {
192
+ let model = this.getMultiModel().map(p => [...p]);
193
+ const valuePath = [...path, option.value];
194
+ if (this.checkStrictly) {
195
+ const idx = model.findIndex(p => this.pathEquals(p, valuePath));
196
+ if (idx >= 0)
197
+ model.splice(idx, 1);
198
+ else
199
+ model.push(valuePath);
200
+ }
201
+ else {
202
+ const leafPaths = this.collectLeafValuePaths(option, path);
203
+ const allIn = leafPaths.every(lp => model.some(p => this.pathEquals(p, lp)));
204
+ if (allIn) {
205
+ model = model.filter(p => !leafPaths.some(lp => this.pathEquals(lp, p)));
206
+ }
207
+ else {
208
+ for (const lp of leafPaths) {
209
+ if (!model.some(p => this.pathEquals(p, lp)))
210
+ model.push([...lp]);
211
+ }
212
+ }
213
+ }
214
+ this.modelValue = model;
215
+ this.hbChange.emit(model);
216
+ }
217
+ /** 多选输入框 tag 数据:每条选中路径 → 展示文本 + 路径 */
218
+ getDisplayTags() {
219
+ return this.getMultiModel().map(path => {
220
+ const labels = path.map(v => {
221
+ const opt = this.findOptionByValue(this.options, v);
222
+ return opt ? opt.label : String(v);
223
+ });
224
+ const label = this.showAllLevels ? labels.join(this.separator) : labels[labels.length - 1];
225
+ return { label, path };
226
+ });
227
+ }
228
+ /** 多选:删除单个 tag(移除对应路径) */
229
+ handleTagRemove = (path, e) => {
230
+ e.stopPropagation();
231
+ const model = this.getMultiModel().filter(p => !this.pathEquals(p, path));
232
+ this.modelValue = model;
233
+ this.hbChange.emit(model);
234
+ };
235
+ hasValue() {
236
+ return this.multiple ? this.getMultiModel().length > 0 : !!this.modelValue && this.modelValue.length > 0;
237
+ }
238
+ // ===== 交互 =====
162
239
  handleInputClick = () => {
163
240
  if (this.disabled)
164
241
  return;
165
242
  if (this.isOpen) {
166
- // 关闭时清空搜索态
167
243
  this.closeAndClearSearch();
168
244
  }
169
245
  else {
170
246
  this.isOpen = true;
171
247
  }
172
248
  };
173
- /** 搜索输入:仅更新 searchValue,过滤在 render 前的 @State 派生 */
249
+ /**
250
+ * 键盘交互(对齐 antd / WAI-ARIA combobox):
251
+ * Enter/Space/ArrowDown 在关闭时打开;Escape 关闭;ArrowRight/ArrowLeft 跨级导航。
252
+ */
253
+ handleKeyDown = (e) => {
254
+ if (this.disabled)
255
+ return;
256
+ const key = e.key;
257
+ if (!this.isOpen) {
258
+ if (key === 'Enter' || key === ' ' || key === 'ArrowDown') {
259
+ e.preventDefault();
260
+ this.isOpen = true;
261
+ }
262
+ return;
263
+ }
264
+ if (key === 'Escape') {
265
+ e.preventDefault();
266
+ this.closeAndClearSearch();
267
+ }
268
+ else if (key === 'Enter' && this.activePath.length > 0 && !this.multiple) {
269
+ // 选中当前路径末端叶子(若已是叶子)
270
+ e.preventDefault();
271
+ const lastValue = this.activePath[this.activePath.length - 1];
272
+ const parentPath = this.activePath.slice(0, -1);
273
+ this.handleSelect(lastValue, parentPath);
274
+ }
275
+ };
174
276
  handleSearchInput = (e) => {
175
277
  const target = e.target;
176
278
  this.searchValue = target.value;
177
279
  this.filteredPaths = this.collectFilteredPaths(this.searchValue);
178
280
  };
179
- /**
180
- * 扁平化全树搜索:把 options 深度遍历,收集所有「节点 label 含关键字」的完整路径。
181
- * 一个节点的完整路径 = 从根到该节点(含自身)的 CascaderOption 数组。
182
- * 关键字为空时返回空数组(交由正常级联视图渲染)。
183
- *
184
- * 注意:这里按 label 子串匹配(大小写不敏感),匹配任意层级的节点,
185
- * 并保留其祖先链以便点击时还原完整路径。
186
- */
187
281
  collectFilteredPaths(keyword) {
188
282
  const trimmed = keyword.trim().toLowerCase();
189
283
  if (!trimmed)
@@ -192,26 +286,36 @@ export class Cascader {
192
286
  const walk = (opts, ancestors) => {
193
287
  for (const opt of opts) {
194
288
  const currentPath = [...ancestors, opt];
195
- if (opt.label.toLowerCase().includes(trimmed)) {
289
+ if (opt.label.toLowerCase().includes(trimmed))
196
290
  results.push(currentPath);
197
- }
198
- if (opt.children && opt.children.length > 0) {
291
+ if (opt.children && opt.children.length > 0)
199
292
  walk(opt.children, currentPath);
200
- }
201
293
  }
202
294
  };
203
295
  walk(this.options, []);
204
296
  return results;
205
297
  }
206
- /** 从扁平搜索结果路径中点击叶子(或非叶子)项:直接以该路径的 value 数组作为选中值 */
298
+ /** 搜索结果点击:单选选中(叶子或 checkStrictly 任意层),多选 toggle 该路径 */
207
299
  handleSearchSelect = (path) => {
208
- const valuePath = path.map((opt) => opt.value);
300
+ const valuePath = path.map(opt => opt.value);
301
+ if (this.multiple) {
302
+ let model = this.getMultiModel().map(p => [...p]);
303
+ const idx = model.findIndex(p => this.pathEquals(p, valuePath));
304
+ if (idx >= 0)
305
+ model.splice(idx, 1);
306
+ else
307
+ model.push(valuePath);
308
+ this.modelValue = model;
309
+ this.hbChange.emit(model);
310
+ this.searchValue = '';
311
+ this.filteredPaths = [];
312
+ return;
313
+ }
209
314
  const last = path[path.length - 1];
210
315
  const isLeaf = !last.children || last.children.length === 0 || last.leaf;
211
316
  this.searchValue = '';
212
317
  this.filteredPaths = [];
213
- if (isLeaf) {
214
- // 叶子:选中并关闭
318
+ if (isLeaf || this.checkStrictly) {
215
319
  this.modelValue = valuePath;
216
320
  this.updateInputValue();
217
321
  this.hbChange.emit(valuePath);
@@ -219,21 +323,42 @@ export class Cascader {
219
323
  this.activePath = [];
220
324
  }
221
325
  else {
222
- // 非叶子:进入该路径的级联展开(便于继续选下级)
223
326
  this.activePath = valuePath;
224
327
  this.hbExpandChange.emit(valuePath);
225
328
  }
226
329
  };
227
330
  handleClear = (e) => {
228
331
  e.stopPropagation();
229
- this.modelValue = undefined;
230
- this.inputValue = '';
332
+ if (this.multiple) {
333
+ this.modelValue = [];
334
+ this.hbChange.emit([]);
335
+ }
336
+ else {
337
+ this.modelValue = undefined;
338
+ this.inputValue = '';
339
+ this.hbChange.emit(undefined);
340
+ }
231
341
  this.isOpen = false;
232
- this.hbChange.emit(undefined);
233
342
  };
234
- handleSelect = (value, path) => {
343
+ /** 菜单项点击(label 区):多选→叶子 toggle/非叶子展开;单选→handleSelect */
344
+ handleItemClick = (option, path) => {
345
+ if (this.multiple) {
346
+ const isLeaf = !option.children || option.children.length === 0 || option.leaf;
347
+ if (isLeaf) {
348
+ this.handleCheck(option, path);
349
+ }
350
+ else {
351
+ const newPath = [...path, option.value];
352
+ this.activePath = newPath;
353
+ this.hbExpandChange.emit(newPath);
354
+ }
355
+ return;
356
+ }
357
+ this.handleSelect(option.value, path);
358
+ };
359
+ /** 单选:选中(叶子或 checkStrictly 任意层)或展开 / lazy 加载 */
360
+ handleSelect(value, path) {
235
361
  const newPath = [...path, value];
236
- // Find the selected option
237
362
  let currentOptions = this.options;
238
363
  let selectedOption = null;
239
364
  for (const pathValue of newPath) {
@@ -242,21 +367,16 @@ export class Cascader {
242
367
  break;
243
368
  currentOptions = selectedOption.children || [];
244
369
  }
245
- // lazy + load:节点 children 尚未加载(children === undefined 且 leaf 未声明)→ 触发加载
246
- if (this.lazy &&
247
- this.load &&
248
- selectedOption &&
249
- selectedOption.children === undefined &&
250
- !selectedOption.leaf) {
251
- // 先展开该路径(显示 loading 态的下一级面板占位),再异步填充
370
+ // lazy + loadchildren 未加载 触发加载
371
+ if (this.lazy && this.load && selectedOption && selectedOption.children === undefined && !selectedOption.leaf) {
252
372
  this.activePath = newPath;
253
373
  this.hbExpandChange.emit(newPath);
254
374
  void this.loadChildren(selectedOption, newPath);
255
375
  return;
256
376
  }
257
- // Check if it's a leaf node
258
- if (!selectedOption || !selectedOption.children || selectedOption.children.length === 0 || selectedOption.leaf) {
259
- // Leaf node - select and close
377
+ const isLeaf = !selectedOption || !selectedOption.children || selectedOption.children.length === 0 || selectedOption.leaf;
378
+ // checkStrictly 或叶子 选中并关闭
379
+ if (this.checkStrictly || isLeaf) {
260
380
  this.modelValue = newPath;
261
381
  this.updateInputValue();
262
382
  this.hbChange.emit(newPath);
@@ -264,29 +384,20 @@ export class Cascader {
264
384
  this.activePath = [];
265
385
  }
266
386
  else {
267
- // Has children - expand to next level
387
+ // 非叶子 展开
268
388
  this.activePath = newPath;
269
389
  this.hbExpandChange.emit(newPath);
270
390
  }
271
- };
272
- /**
273
- * 动态加载某节点的子级。不可变地合并进 options 树(替换该节点 children)。
274
- * 加载中:把节点 value 加入 loadingKeys(渲染 loading 态);
275
- * 加载完成:写入 children(新数组,触发 @Watch/重渲染),移出 loadingKeys。
276
- * 若 load 返回空数组,把 children 设为 [] 以标记该节点为叶子(避免重复加载)。
277
- */
391
+ }
278
392
  async loadChildren(node, path) {
279
393
  if (!this.load)
280
394
  return;
281
- // 标记 loading
282
395
  this.loadingKeys = new Set([...this.loadingKeys, node.value]);
283
396
  try {
284
397
  const children = await this.load(node);
285
- // 不可变合并:重建 options 树,仅替换目标节点的 children。
286
398
  this.options = this.replaceOptionChildren(this.options, node.value, children);
287
399
  }
288
400
  catch (err) {
289
- // 加载失败:回退 activePath,避免卡在 loading;保持 options 不变。
290
401
  // eslint-disable-next-line no-console
291
402
  console.error('[hb-cascader] lazy load failed:', err);
292
403
  this.activePath = this.activePath.slice(0, this.activePath.indexOf(node.value) + 1);
@@ -296,46 +407,52 @@ export class Cascader {
296
407
  next.delete(node.value);
297
408
  this.loadingKeys = next;
298
409
  }
299
- // 重新校验该路径是否还能继续展开(叶子情况则收起下一级面板)
300
410
  void path;
301
411
  void node;
302
412
  }
303
- /**
304
- * 不可变地替换 options 树中 value===targetValue 节点的 children 字段。
305
- * 返回一棵全新的 options 树(不修改原数组与原节点对象)。
306
- */
307
413
  replaceOptionChildren(options, targetValue, newChildren) {
308
- return options.map((opt) => {
309
- if (opt.value === targetValue) {
414
+ return options.map(opt => {
415
+ if (opt.value === targetValue)
310
416
  return { ...opt, children: newChildren };
311
- }
312
417
  if (opt.children && opt.children.length > 0) {
313
418
  return { ...opt, children: this.replaceOptionChildren(opt.children, targetValue, newChildren) };
314
419
  }
315
420
  return opt;
316
421
  });
317
422
  }
423
+ // ===== render =====
318
424
  render() {
319
- return (h("div", { key: 'c842622737b0464fca8807b2e6e673de26e66f6c', class: {
425
+ return (h("div", { key: '1a9caab72a8d1fc2b0db2e173b4a748fc45ff276', class: {
320
426
  'hb-cascader': true,
321
427
  'hb-cascader--open': this.isOpen,
322
428
  'hb-cascader--disabled': this.disabled,
429
+ 'hb-cascader--multiple': this.multiple,
323
430
  [`hb-cascader--${this.size}`]: true,
324
- } }, h("div", { key: '23279bca07ba9263b6b7daa87fcc6ecf89cfa707', class: "hb-cascader__input-wrapper", onClick: this.handleInputClick }, h("input", { key: '56253203d0684b374ee755d669ce1ef61eebb2e2', type: "text", id: this.inputId, name: this.name, class: "hb-cascader__input", placeholder: this.placeholder, value: this.inputValue, disabled: this.disabled, readonly: true, role: "combobox", "aria-haspopup": "listbox", "aria-expanded": this.isOpen ? 'true' : 'false' }), h("span", { key: '27eb1713ab7eabc760652d60d48960685dfdb0ce', class: "hb-cascader__suffix" }, this.clearable && this.modelValue && this.modelValue.length > 0 && (h("span", { key: '26c75b651d82806019f514e9dc030df394419e46', class: "hb-cascader__clear", role: "button", "aria-label": "\u6E05\u7A7A", onClick: this.handleClear }, "\u00D7")), h("span", { key: '01cc98144fa2cf70fcc7588efadd7bbeea17738b', class: "hb-cascader__arrow" }, "\u25BC"))), this.isOpen && (h("div", { key: '23a6230933ffaf0ee98c2c70a8dc9a8444be0555', class: "hb-cascader__dropdown" }, this.filterable && (h("div", { key: '628a293edf4d2f22975801e2e9155f46a5cf90fa', class: "hb-cascader__search" }, h("input", { key: 'bedac6a61a99b8a64d27eaf95880ff4891c33f04', type: "text", class: "hb-cascader__search-input", placeholder: "\u641C\u7D22", value: this.searchValue, onInput: this.handleSearchInput, "aria-label": "\u641C\u7D22\u9009\u9879" }))), this.filterable && this.searchValue.trim() !== '' ? (this.renderSearchResults()) : (h("div", { class: "hb-cascader__menus", role: "listbox", "aria-multiselectable": "false" }, this.renderCascaderMenus()))))));
431
+ } }, h("div", { key: '7a9d75ec8c3352681630a89b4a10704b5b16803d', class: "hb-cascader__input-wrapper", onClick: this.handleInputClick }, this.multiple &&
432
+ this.getDisplayTags()
433
+ .slice(0, this.maxTagCount === undefined ? undefined : this.maxTagCount)
434
+ .map(tag => (h("span", { class: "hb-cascader__tag" }, h("span", { class: "hb-cascader__tag-label" }, tag.label), !this.disabled && (h("span", { class: "hb-cascader__tag-close", role: "button", "aria-label": "\u5220\u9664", tabindex: 0, onClick: e => this.handleTagRemove(tag.path, e), onKeyDown: e => {
435
+ if (e.key === 'Enter' || e.key === ' ') {
436
+ e.preventDefault();
437
+ this.handleTagRemove(tag.path, e);
438
+ }
439
+ } }, h("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": 2, "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("path", { d: "M6 6l12 12M18 6L6 18" }))))))), this.multiple && this.maxTagCount !== undefined && this.getDisplayTags().length > this.maxTagCount && (h("span", { key: '9cf422ddb7983b98702921a6f0ea0d39050f0809', class: "hb-cascader__tag-overflow" }, "+", this.getDisplayTags().length - this.maxTagCount)), h("input", { key: 'e7d65af511b4cbd1ceb04e1a5d3b5c49675f35d7', type: "text", id: this.inputId, name: this.name, class: "hb-cascader__input", placeholder: this.hasValue() ? '' : this.placeholder, value: this.multiple ? '' : this.inputValue, disabled: this.disabled, readonly: true, role: "combobox", "aria-haspopup": "listbox", "aria-expanded": this.isOpen ? 'true' : 'false', onKeyDown: this.handleKeyDown }), h("span", { key: '8a12e6b4fc1f9c4e837804b6000991f9fc0a7777', class: "hb-cascader__suffix" }, this.clearable && this.hasValue() && (h("span", { key: '58f85ec90ae02f51e5feff247238a2fdf4c972cc', class: "hb-cascader__clear", role: "button", "aria-label": "\u6E05\u7A7A", tabindex: 0, onClick: this.handleClear, onKeyDown: e => {
440
+ if (e.key === 'Enter' || e.key === ' ') {
441
+ e.preventDefault();
442
+ this.handleClear(e);
443
+ }
444
+ } }, h("svg", { key: '276124b46eab355e251f9f28b83d595a752a26a6', viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": 2, "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, h("path", { key: '3233726965c70fe312cf6b18986a3a45daddfa94', d: "M6 6l12 12M18 6L6 18" })))), h("span", { key: '5da5ecd851b2ae748d64a637c67c85c017e4044f', class: "hb-cascader__arrow", "aria-hidden": "true" }, h("svg", { key: '259fa6408e33a8566c3cd4b2c555594f277c0158', viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": 2, "stroke-linecap": "round", "stroke-linejoin": "round" }, h("path", { key: '2ab1e510baa70268de00e17b13bc52f582927182', d: "M6 9l6 6 6-6" }))))), this.isOpen && (h("div", { key: 'bb89f5c9c8dec2bc41eed6963aab25197673dee3', class: "hb-cascader__dropdown" }, this.filterable && (h("div", { key: 'd8a3b255c88bf6267588eea3313814f3b37c781f', class: "hb-cascader__search" }, h("input", { key: '1f9830abe864388f075b9b70a9b3c07def27aeda', type: "text", class: "hb-cascader__search-input", placeholder: "\u641C\u7D22", value: this.searchValue, onInput: this.handleSearchInput, "aria-label": "\u641C\u7D22\u9009\u9879" }))), this.filterable && this.searchValue.trim() !== '' ? (this.renderSearchResults()) : (h("div", { class: "hb-cascader__menus", role: "listbox", "aria-multiselectable": this.multiple ? 'true' : 'false' }, this.renderCascaderMenus()))))));
325
445
  }
326
446
  renderCascaderMenus() {
327
447
  const menus = [];
328
448
  let currentOptions = this.options;
329
449
  let currentPath = [];
330
- // Render first level
331
450
  menus.push(this.renderMenu(currentOptions, currentPath));
332
- // Render active path levels
333
451
  for (let i = 0; i < this.activePath.length; i++) {
334
452
  const pathValue = this.activePath[i];
335
453
  const option = currentOptions.find(opt => opt.value === pathValue);
336
454
  if (!option)
337
455
  break;
338
- // lazy 加载中:节点 children 尚未填充 → 渲染 loading 面板
339
456
  if (option.children === undefined && this.loadingKeys.has(option.value)) {
340
457
  menus.push(this.renderLoadingMenu());
341
458
  break;
@@ -351,49 +468,56 @@ export class Cascader {
351
468
  }
352
469
  return menus;
353
470
  }
354
- /** lazy 加载中渲染的面板:一个 loading 占位提示 */
355
471
  renderLoadingMenu() {
356
472
  return (h("ul", { class: "hb-cascader__menu-list hb-cascader__menu-list--loading", role: "status", "aria-live": "polite" }, h("li", { class: "hb-cascader__menu-item hb-cascader__menu-item--loading" }, h("span", { class: "hb-cascader__menu-item-label" }, "\u52A0\u8F7D\u4E2D\u2026"))));
357
473
  }
358
- /**
359
- * 渲染扁平化搜索结果:每一项展示完整路径(label 用 separator 连接),点击选中完整路径。
360
- * 无匹配时渲染空状态。
361
- */
362
474
  renderSearchResults() {
363
475
  if (this.filteredPaths.length === 0) {
364
476
  return (h("div", { class: "hb-cascader__search-empty", role: "status" }, "\u65E0\u5339\u914D\u6570\u636E"));
365
477
  }
366
- return (h("div", { class: "hb-cascader__search-results", role: "listbox", "aria-label": "\u641C\u7D22\u7ED3\u679C" }, this.filteredPaths.map((path) => {
367
- const labelPath = path.map((opt) => opt.label).join(this.separator);
368
- const valuePath = path.map((opt) => opt.value);
478
+ return (h("div", { class: "hb-cascader__search-results", role: "listbox", "aria-label": "\u641C\u7D22\u7ED3\u679C" }, this.filteredPaths.map(path => {
479
+ const labelPath = path.map(opt => opt.label).join(this.separator);
480
+ const valuePath = path.map(opt => opt.value);
369
481
  const last = path[path.length - 1];
370
482
  const disabled = !!last.disabled;
371
- // 当前选中判断:路径 value 与 modelValue 完全一致
372
- const selected = !!this.modelValue &&
373
- this.modelValue.length === valuePath.length &&
374
- valuePath.every((v, idx) => this.modelValue && this.modelValue[idx] === v);
483
+ const selected = this.multiple
484
+ ? this.getMultiModel().some(p => this.pathEquals(p, valuePath))
485
+ : !!this.modelValue && this.pathEquals(this.modelValue, valuePath);
375
486
  return (h("div", { class: {
376
487
  'hb-cascader__search-item': true,
377
488
  'hb-cascader__search-item--selected': selected,
378
489
  'hb-cascader__search-item--disabled': disabled,
379
- }, role: "option", "aria-selected": selected ? 'true' : 'false', "aria-disabled": disabled ? 'true' : undefined, onClick: () => !disabled && this.handleSearchSelect(path) }, labelPath));
490
+ }, role: "option", "aria-selected": selected ? 'true' : 'false', "aria-disabled": disabled ? 'true' : undefined, onClick: () => !disabled && this.handleSearchSelect(path) }, this.multiple && (h("span", { class: "hb-cascader__menu-item-checkbox", "data-state": selected ? 'checked' : 'unchecked', role: "checkbox", "aria-checked": selected ? 'true' : 'false' })), labelPath));
380
491
  })));
381
492
  }
382
493
  renderMenu(options, path) {
383
- if (!options || options.length === 0) {
494
+ if (!options || options.length === 0)
384
495
  return null;
385
- }
386
- return (h("ul", { class: "hb-cascader__menu-list", role: "group" }, options.map((option) => {
387
- const isSelected = path.length > 0 && path[path.length - 1] === option.value;
388
- const isInPath = this.modelValue && path.length > 0 &&
389
- path.every((val, idx) => this.modelValue && this.modelValue[idx] === val) &&
496
+ return (h("ul", { class: "hb-cascader__menu-list", role: "group" }, options.map(option => {
497
+ const checkState = this.getCheckState(option, path);
498
+ // 单选高亮:路径在当前 modelValue
499
+ const isSelected = !this.multiple &&
500
+ path.length > 0 &&
501
+ !!this.modelValue &&
502
+ path.every((val, idx) => this.modelValue[idx] === val) &&
390
503
  this.modelValue.length === path.length + 1 &&
391
504
  this.modelValue[path.length] === option.value;
505
+ const showArrow = this.loadingKeys.has(option.value)
506
+ ? false
507
+ : (option.children && option.children.length > 0) || (this.lazy && option.children === undefined && !option.leaf);
392
508
  return (h("li", { class: {
393
509
  'hb-cascader__menu-item': true,
394
- 'hb-cascader__menu-item--selected': isSelected || isInPath,
510
+ 'hb-cascader__menu-item--selected': isSelected,
395
511
  'hb-cascader__menu-item--disabled': option.disabled,
396
- }, role: "option", "aria-selected": (isSelected || isInPath) ? 'true' : 'false', "aria-disabled": option.disabled ? 'true' : undefined, onClick: () => !option.disabled && this.handleSelect(option.value, path) }, h("span", { class: "hb-cascader__menu-item-label" }, option.label), this.loadingKeys.has(option.value) ? (h("span", { class: "hb-cascader__menu-item-loading", "aria-hidden": "true" }, "\u27F3")) : (option.children && option.children.length > 0) || (this.lazy && option.children === undefined && !option.leaf) ? (h("span", { class: "hb-cascader__menu-item-arrow" }, "\u25B6")) : null));
512
+ }, role: "option", "aria-selected": isSelected ? 'true' : 'false', "aria-disabled": option.disabled ? 'true' : undefined, onClick: () => !option.disabled && this.handleItemClick(option, path) }, this.multiple && (h("span", { class: {
513
+ 'hb-cascader__menu-item-checkbox': true,
514
+ 'hb-cascader__menu-item-checkbox--checked': checkState === 'checked',
515
+ 'hb-cascader__menu-item-checkbox--indeterminate': checkState === 'indeterminate',
516
+ }, "data-state": checkState, role: "checkbox", "aria-checked": checkState === 'indeterminate' ? 'mixed' : checkState === 'checked' ? 'true' : 'false', onClick: e => {
517
+ e.stopPropagation();
518
+ if (!option.disabled)
519
+ this.handleCheck(option, path);
520
+ } })), h("span", { class: "hb-cascader__menu-item-label" }, option.label), this.loadingKeys.has(option.value) ? (h("span", { class: "hb-cascader__menu-item-loading", "aria-hidden": "true" }, h("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": 2, "stroke-linecap": "round", "stroke-linejoin": "round", class: "hb-cascader__menu-item-loading-svg" }, h("path", { d: "M12 5V2L8 6l4 4V7a5 5 0 1 1-5 5H5a7 7 0 1 0 7-7z" })))) : showArrow ? (h("span", { class: "hb-cascader__menu-item-arrow", "aria-hidden": "true" }, h("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": 2, "stroke-linecap": "round", "stroke-linejoin": "round" }, h("path", { d: "M9 6l6 6-6 6" })))) : null));
397
521
  })));
398
522
  }
399
523
  static get is() { return "hb-cascader"; }
@@ -414,15 +538,21 @@ export class Cascader {
414
538
  "type": "unknown",
415
539
  "mutable": true,
416
540
  "complexType": {
417
- "original": "(string | number)[]",
418
- "resolved": "(string | number)[]",
419
- "references": {}
541
+ "original": "ValuePath | ValuePath[]",
542
+ "resolved": "(string | number)[] | ValuePath[]",
543
+ "references": {
544
+ "ValuePath": {
545
+ "location": "local",
546
+ "path": "/Users/vscoderwhy/Desktop/product/web-common/huibo-ui/src/components/Cascader/Cascader.tsx",
547
+ "id": "src/components/Cascader/Cascader.tsx::ValuePath"
548
+ }
549
+ }
420
550
  },
421
551
  "required": false,
422
552
  "optional": true,
423
553
  "docs": {
424
554
  "tags": [],
425
- "text": "\u9009\u4E2D\u9879\u7ED1\u5B9A\u503C"
555
+ "text": "\u9009\u4E2D\u9879\u7ED1\u5B9A\u503C\u3002\u5355\u9009\u4E3A\u4E00\u7EF4\u8DEF\u5F84\u6570\u7EC4\uFF08\u5982 ['zhejiang','hangzhou']\uFF09\uFF0C\n\u591A\u9009\uFF08multiple\uFF09\u4E3A\u4E8C\u7EF4\u6570\u7EC4\uFF08\u5982 [['zhejiang','ningbo'], ['jiangsu']]\uFF09\u3002"
426
556
  },
427
557
  "getter": false,
428
558
  "setter": false
@@ -482,10 +612,7 @@ export class Cascader {
482
612
  "required": false,
483
613
  "optional": false,
484
614
  "docs": {
485
- "tags": [{
486
- "name": "default",
487
- "text": "false"
488
- }],
615
+ "tags": [],
489
616
  "text": "\u662F\u5426\u7981\u7528"
490
617
  },
491
618
  "getter": false,
@@ -525,10 +652,7 @@ export class Cascader {
525
652
  "required": false,
526
653
  "optional": false,
527
654
  "docs": {
528
- "tags": [{
529
- "name": "default",
530
- "text": "false"
531
- }],
655
+ "tags": [],
532
656
  "text": "\u662F\u5426\u53EF\u6E05\u7A7A"
533
657
  },
534
658
  "getter": false,
@@ -548,11 +672,8 @@ export class Cascader {
548
672
  "required": false,
549
673
  "optional": false,
550
674
  "docs": {
551
- "tags": [{
552
- "name": "default",
553
- "text": "true"
554
- }],
555
- "text": "\u662F\u5426\u663E\u793A\u5B8C\u6574\u8DEF\u5F84"
675
+ "tags": [],
676
+ "text": "\u662F\u5426\u663E\u793A\u5B8C\u6574\u8DEF\u5F84\uFF08\u5355\u9009\u8F93\u5165\u6846 / \u591A\u9009 tag \u6587\u672C\uFF09"
556
677
  },
557
678
  "getter": false,
558
679
  "setter": false,
@@ -572,7 +693,7 @@ export class Cascader {
572
693
  "optional": true,
573
694
  "docs": {
574
695
  "tags": [],
575
- "text": "\u8F93\u5165\u6846\u7684\u539F\u751F\u5C5E\u6027"
696
+ "text": "\u8F93\u5165\u6846\u539F\u751F\u5C5E\u6027"
576
697
  },
577
698
  "getter": false,
578
699
  "setter": false,
@@ -591,7 +712,7 @@ export class Cascader {
591
712
  "optional": true,
592
713
  "docs": {
593
714
  "tags": [],
594
- "text": "\u8F93\u5165\u6846\u7684\u539F\u751F\u5C5E\u6027"
715
+ "text": "\u8F93\u5165\u6846\u539F\u751F\u5C5E\u6027"
595
716
  },
596
717
  "getter": false,
597
718
  "setter": false,
@@ -609,11 +730,8 @@ export class Cascader {
609
730
  "required": false,
610
731
  "optional": false,
611
732
  "docs": {
612
- "tags": [{
613
- "name": "default",
614
- "text": "' / '"
615
- }],
616
- "text": "\u5206\u9694\u7B26"
733
+ "tags": [],
734
+ "text": "\u8DEF\u5F84\u5206\u9694\u7B26"
617
735
  },
618
736
  "getter": false,
619
737
  "setter": false,
@@ -632,11 +750,8 @@ export class Cascader {
632
750
  "required": false,
633
751
  "optional": false,
634
752
  "docs": {
635
- "tags": [{
636
- "name": "default",
637
- "text": "true"
638
- }],
639
- "text": "\u662F\u5426\u52A8\u6001\u52A0\u8F7D\u5B50\u8282\u70B9"
753
+ "tags": [],
754
+ "text": "modelValue \u662F\u5426\u8F93\u51FA\u5B8C\u6574\u8DEF\u5F84\uFF08\u4FDD\u7559 AntD \u517C\u5BB9\u4F4D\uFF09"
640
755
  },
641
756
  "getter": false,
642
757
  "setter": false,
@@ -655,11 +770,8 @@ export class Cascader {
655
770
  "required": false,
656
771
  "optional": false,
657
772
  "docs": {
658
- "tags": [{
659
- "name": "default",
660
- "text": "false"
661
- }],
662
- "text": "\u662F\u5426\u53EF\u641C\u7D22\uFF08filterable\uFF09\n\u5F00\u542F\u540E\u4E0B\u62C9\u9876\u90E8\u6E32\u67D3\u641C\u7D22\u8F93\u5165\u6846\uFF0C\u8F93\u5165\u65F6\u6309 label\uFF08\u542B\u6240\u6709\u5B50\u7EA7\uFF09\u6241\u5E73\u5316\u8FC7\u6EE4\uFF0C\n\u5339\u914D\u9879\u4EE5\u5B8C\u6574\u8DEF\u5F84\u5C55\u793A\uFF0C\u70B9\u51FB\u5373\u9009\u4E2D\u5176\u5B8C\u6574\u8DEF\u5F84\u3002"
773
+ "tags": [],
774
+ "text": "\u662F\u5426\u53EF\u641C\u7D22\uFF08filterable\uFF09\u3002\u4E0B\u62C9\u9876\u90E8\u6E32\u67D3\u641C\u7D22\u6846\uFF0C\u8F93\u5165\u65F6\u6309 label \u6241\u5E73\u5316\u8FC7\u6EE4\uFF0C\n\u5339\u914D\u9879\u4EE5\u5B8C\u6574\u8DEF\u5F84\u5C55\u793A\uFF0C\u70B9\u51FB\u5373\u9009\u4E2D\uFF08\u5355\u9009\uFF09\u6216 toggle \u52FE\u9009\uFF08\u591A\u9009\uFF09\u3002"
663
775
  },
664
776
  "getter": false,
665
777
  "setter": false,
@@ -678,11 +790,8 @@ export class Cascader {
678
790
  "required": false,
679
791
  "optional": false,
680
792
  "docs": {
681
- "tags": [{
682
- "name": "default",
683
- "text": "false"
684
- }],
685
- "text": "\u662F\u5426\u5F00\u542F\u52A8\u6001\u52A0\u8F7D\uFF08lazy load\uFF09\u3002\u5F00\u542F\u540E\uFF0C\u5C55\u5F00\u542B children=undefined \u7684\u8282\u70B9\u65F6\uFF0C\n\u8C03\u7528 load(node) \u83B7\u53D6\u5176\u5B50\u7EA7\u5E76\u586B\u5145\u8FDB options\uFF0C\u52A0\u8F7D\u4E2D\u663E\u793A loading \u6001\u3002"
793
+ "tags": [],
794
+ "text": "\u662F\u5426\u5F00\u542F\u52A8\u6001\u52A0\u8F7D\uFF08lazy\uFF09\u3002\u5C55\u5F00 children=undefined \u7684\u8282\u70B9\u65F6\u8C03\u7528 load(node) \u586B\u5145\u5B50\u7EA7\u3002"
686
795
  },
687
796
  "getter": false,
688
797
  "setter": false,
@@ -712,10 +821,69 @@ export class Cascader {
712
821
  "optional": true,
713
822
  "docs": {
714
823
  "tags": [],
715
- "text": "\u52A8\u6001\u52A0\u8F7D\u5B50\u8282\u70B9\u7684\u51FD\u6570\uFF08\u4EC5\u5728 lazy=true \u65F6\u751F\u6548\uFF09\u3002\n\u63A5\u6536\u88AB\u5C55\u5F00\u7684\u8282\u70B9\uFF0C\u8FD4\u56DE\u5176\u5B50\u8282\u70B9\u6570\u7EC4\uFF08Promise\uFF09\u3002\n\u52A0\u8F7D\u7ED3\u679C\u4F1A\u4EE5\u4E0D\u53EF\u53D8\u65B9\u5F0F\u5408\u5E76\u8FDB options \u6811\uFF08\u66FF\u6362\u8BE5\u8282\u70B9 children\uFF09\u3002"
824
+ "text": "\u52A8\u6001\u52A0\u8F7D\u51FD\u6570\uFF08\u4EC5 lazy=true \u751F\u6548\uFF09"
716
825
  },
717
826
  "getter": false,
718
827
  "setter": false
828
+ },
829
+ "multiple": {
830
+ "type": "boolean",
831
+ "mutable": false,
832
+ "complexType": {
833
+ "original": "boolean",
834
+ "resolved": "boolean",
835
+ "references": {}
836
+ },
837
+ "required": false,
838
+ "optional": false,
839
+ "docs": {
840
+ "tags": [],
841
+ "text": "\u662F\u5426\u5F00\u542F\u591A\u9009\u3002\u5F00\u542F\u540E modelValue \u4E3A\u4E8C\u7EF4\u6570\u7EC4\uFF0C\u6BCF\u6761\u4E3A\u4E00\u4E2A\u9009\u4E2D\u8DEF\u5F84\uFF1B\n\u83DC\u5355\u9879\u524D\u6E32\u67D3 checkbox\uFF0C\u8F93\u5165\u6846\u4EE5 tag \u5217\u8868\u5C55\u793A\u9009\u4E2D\u9879\u3002"
842
+ },
843
+ "getter": false,
844
+ "setter": false,
845
+ "attribute": "multiple",
846
+ "reflect": false,
847
+ "defaultValue": "false"
848
+ },
849
+ "checkStrictly": {
850
+ "type": "boolean",
851
+ "mutable": false,
852
+ "complexType": {
853
+ "original": "boolean",
854
+ "resolved": "boolean",
855
+ "references": {}
856
+ },
857
+ "required": false,
858
+ "optional": false,
859
+ "docs": {
860
+ "tags": [],
861
+ "text": "\u662F\u5426\u4E25\u683C\u7684\u9009\u4E2D\u884C\u4E3A\uFF08\u7236\u5B50\u4E0D\u5173\u8054\uFF09\u3002\n\u5355\u9009\uFF1A\u70B9\u51FB\u4EFB\u610F\u5C42\u7EA7\uFF08\u542B\u975E\u53F6\u5B50\uFF09\u5373\u9009\u4E2D\u8BE5\u8DEF\u5F84\uFF1B\n\u591A\u9009\uFF1A\u52FE\u9009\u72EC\u7ACB\uFF0C\u4E0D\u5411\u4E0B\u8054\u52A8\u9009\u4E2D\u53F6\u5B50\u3001\u53D6\u6D88\u4E5F\u4E0D\u8054\u52A8\u3002"
862
+ },
863
+ "getter": false,
864
+ "setter": false,
865
+ "attribute": "check-strictly",
866
+ "reflect": false,
867
+ "defaultValue": "false"
868
+ },
869
+ "maxTagCount": {
870
+ "type": "number",
871
+ "mutable": false,
872
+ "complexType": {
873
+ "original": "number",
874
+ "resolved": "number",
875
+ "references": {}
876
+ },
877
+ "required": false,
878
+ "optional": true,
879
+ "docs": {
880
+ "tags": [],
881
+ "text": "\u591A\u9009\u65F6\u8F93\u5165\u6846\u6700\u591A\u5C55\u793A\u7684 tag \u6570\u91CF\uFF0C\u8D85\u51FA\u6298\u53E0\u4E3A +N\uFF08\u53EF\u9009\uFF09\u3002"
882
+ },
883
+ "getter": false,
884
+ "setter": false,
885
+ "attribute": "max-tag-count",
886
+ "reflect": false
719
887
  }
720
888
  };
721
889
  }
@@ -738,12 +906,18 @@ export class Cascader {
738
906
  "composed": true,
739
907
  "docs": {
740
908
  "tags": [],
741
- "text": "\u503C\u6539\u53D8\u4E8B\u4EF6"
909
+ "text": "\u503C\u6539\u53D8\u4E8B\u4EF6\uFF1A\u5355\u9009 emit \u4E00\u7EF4\u8DEF\u5F84\u6216 undefined\uFF1B\u591A\u9009 emit \u4E8C\u7EF4\u6570\u7EC4\uFF08\u53EF\u80FD\u4E3A []\uFF09"
742
910
  },
743
911
  "complexType": {
744
- "original": "(string | number)[] | undefined",
745
- "resolved": "(string | number)[]",
746
- "references": {}
912
+ "original": "ValuePath | ValuePath[] | undefined",
913
+ "resolved": "(string | number)[] | ValuePath[]",
914
+ "references": {
915
+ "ValuePath": {
916
+ "location": "local",
917
+ "path": "/Users/vscoderwhy/Desktop/product/web-common/huibo-ui/src/components/Cascader/Cascader.tsx",
918
+ "id": "src/components/Cascader/Cascader.tsx::ValuePath"
919
+ }
920
+ }
747
921
  }
748
922
  }, {
749
923
  "method": "hbExpandChange",
@@ -753,12 +927,18 @@ export class Cascader {
753
927
  "composed": true,
754
928
  "docs": {
755
929
  "tags": [],
756
- "text": "\u5C55\u5F00\u8282\u70B9\u53D1\u751F\u53D8\u5316\u65F6\u89E6\u53D1"
930
+ "text": "\u5C55\u5F00\u8282\u70B9\u53D8\u5316\u65F6\u89E6\u53D1"
757
931
  },
758
932
  "complexType": {
759
- "original": "(string | number)[]",
933
+ "original": "ValuePath",
760
934
  "resolved": "(string | number)[]",
761
- "references": {}
935
+ "references": {
936
+ "ValuePath": {
937
+ "location": "local",
938
+ "path": "/Users/vscoderwhy/Desktop/product/web-common/huibo-ui/src/components/Cascader/Cascader.tsx",
939
+ "id": "src/components/Cascader/Cascader.tsx::ValuePath"
940
+ }
941
+ }
762
942
  }
763
943
  }];
764
944
  }