huibo-ui 0.3.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 (1214) hide show
  1. package/LICENSE +21 -0
  2. package/dist/cjs/a11y-802de67a.js +123 -0
  3. package/dist/cjs/a11y-802de67a.js.map +1 -0
  4. package/dist/cjs/app-globals-3a1e7e63.js +7 -0
  5. package/dist/cjs/app-globals-3a1e7e63.js.map +1 -0
  6. package/dist/cjs/click-outside-3fcc00dd.js +27 -0
  7. package/dist/cjs/click-outside-3fcc00dd.js.map +1 -0
  8. package/dist/cjs/date-helpers-904747ff.js +134 -0
  9. package/dist/cjs/date-helpers-904747ff.js.map +1 -0
  10. package/dist/cjs/hb-affix.cjs.entry.js +101 -0
  11. package/dist/cjs/hb-affix.cjs.entry.js.map +1 -0
  12. package/dist/cjs/hb-alert.cjs.entry.js +47 -0
  13. package/dist/cjs/hb-alert.cjs.entry.js.map +1 -0
  14. package/dist/cjs/hb-anchor.cjs.entry.js +46 -0
  15. package/dist/cjs/hb-anchor.cjs.entry.js.map +1 -0
  16. package/dist/cjs/hb-aside.cjs.entry.js +30 -0
  17. package/dist/cjs/hb-aside.cjs.entry.js.map +1 -0
  18. package/dist/cjs/hb-avatar.cjs.entry.js +31 -0
  19. package/dist/cjs/hb-avatar.cjs.entry.js.map +1 -0
  20. package/dist/cjs/hb-backtop.cjs.entry.js +100 -0
  21. package/dist/cjs/hb-backtop.cjs.entry.js.map +1 -0
  22. package/dist/cjs/hb-badge.cjs.entry.js +35 -0
  23. package/dist/cjs/hb-badge.cjs.entry.js.map +1 -0
  24. package/dist/cjs/hb-breadcrumb-item.cjs.entry.js +25 -0
  25. package/dist/cjs/hb-breadcrumb-item.cjs.entry.js.map +1 -0
  26. package/dist/cjs/hb-breadcrumb.cjs.entry.js +24 -0
  27. package/dist/cjs/hb-breadcrumb.cjs.entry.js.map +1 -0
  28. package/dist/cjs/hb-button.cjs.entry.js +39 -0
  29. package/dist/cjs/hb-button.cjs.entry.js.map +1 -0
  30. package/dist/cjs/hb-calendar.cjs.entry.js +90 -0
  31. package/dist/cjs/hb-calendar.cjs.entry.js.map +1 -0
  32. package/dist/cjs/hb-card.cjs.entry.js +27 -0
  33. package/dist/cjs/hb-card.cjs.entry.js.map +1 -0
  34. package/dist/cjs/hb-carousel.cjs.entry.js +150 -0
  35. package/dist/cjs/hb-carousel.cjs.entry.js.map +1 -0
  36. package/dist/cjs/hb-cascader.cjs.entry.js +413 -0
  37. package/dist/cjs/hb-cascader.cjs.entry.js.map +1 -0
  38. package/dist/cjs/hb-checkbox-group.cjs.entry.js +117 -0
  39. package/dist/cjs/hb-checkbox-group.cjs.entry.js.map +1 -0
  40. package/dist/cjs/hb-checkbox.cjs.entry.js +130 -0
  41. package/dist/cjs/hb-checkbox.cjs.entry.js.map +1 -0
  42. package/dist/cjs/hb-collapse-item.cjs.entry.js +58 -0
  43. package/dist/cjs/hb-collapse-item.cjs.entry.js.map +1 -0
  44. package/dist/cjs/hb-collapse.cjs.entry.js +41 -0
  45. package/dist/cjs/hb-collapse.cjs.entry.js.map +1 -0
  46. package/dist/cjs/hb-color-picker-panel.cjs.entry.js +86 -0
  47. package/dist/cjs/hb-color-picker-panel.cjs.entry.js.map +1 -0
  48. package/dist/cjs/hb-color-picker.cjs.entry.js +265 -0
  49. package/dist/cjs/hb-color-picker.cjs.entry.js.map +1 -0
  50. package/dist/cjs/hb-config-provider.cjs.entry.js +44 -0
  51. package/dist/cjs/hb-config-provider.cjs.entry.js.map +1 -0
  52. package/dist/cjs/hb-container.cjs.entry.js +30 -0
  53. package/dist/cjs/hb-container.cjs.entry.js.map +1 -0
  54. package/dist/cjs/hb-date-picker-pane.cjs.entry.js +150 -0
  55. package/dist/cjs/hb-date-picker-pane.cjs.entry.js.map +1 -0
  56. package/dist/cjs/hb-date-picker.cjs.entry.js +138 -0
  57. package/dist/cjs/hb-date-picker.cjs.entry.js.map +1 -0
  58. package/dist/cjs/hb-date-range-picker.cjs.entry.js +222 -0
  59. package/dist/cjs/hb-date-range-picker.cjs.entry.js.map +1 -0
  60. package/dist/cjs/hb-date-time-picker.cjs.entry.js +140 -0
  61. package/dist/cjs/hb-date-time-picker.cjs.entry.js.map +1 -0
  62. package/dist/cjs/hb-descriptions.cjs.entry.js +32 -0
  63. package/dist/cjs/hb-descriptions.cjs.entry.js.map +1 -0
  64. package/dist/cjs/hb-dialog.cjs.entry.js +114 -0
  65. package/dist/cjs/hb-dialog.cjs.entry.js.map +1 -0
  66. package/dist/cjs/hb-divider.cjs.entry.js +36 -0
  67. package/dist/cjs/hb-divider.cjs.entry.js.map +1 -0
  68. package/dist/cjs/hb-drawer.cjs.entry.js +89 -0
  69. package/dist/cjs/hb-drawer.cjs.entry.js.map +1 -0
  70. package/dist/cjs/hb-dropdown.cjs.entry.js +80 -0
  71. package/dist/cjs/hb-dropdown.cjs.entry.js.map +1 -0
  72. package/dist/cjs/hb-empty.cjs.entry.js +24 -0
  73. package/dist/cjs/hb-empty.cjs.entry.js.map +1 -0
  74. package/dist/cjs/hb-float-button.cjs.entry.js +57 -0
  75. package/dist/cjs/hb-float-button.cjs.entry.js.map +1 -0
  76. package/dist/cjs/hb-footer.cjs.entry.js +30 -0
  77. package/dist/cjs/hb-footer.cjs.entry.js.map +1 -0
  78. package/dist/cjs/hb-form-item.cjs.entry.js +112 -0
  79. package/dist/cjs/hb-form-item.cjs.entry.js.map +1 -0
  80. package/dist/cjs/hb-form.cjs.entry.js +70 -0
  81. package/dist/cjs/hb-form.cjs.entry.js.map +1 -0
  82. package/dist/cjs/hb-header.cjs.entry.js +30 -0
  83. package/dist/cjs/hb-header.cjs.entry.js.map +1 -0
  84. package/dist/cjs/hb-icon.cjs.entry.js +76 -0
  85. package/dist/cjs/hb-icon.cjs.entry.js.map +1 -0
  86. package/dist/cjs/hb-image-preview.cjs.entry.js +179 -0
  87. package/dist/cjs/hb-image-preview.cjs.entry.js.map +1 -0
  88. package/dist/cjs/hb-image.cjs.entry.js +35 -0
  89. package/dist/cjs/hb-image.cjs.entry.js.map +1 -0
  90. package/dist/cjs/hb-input-number.cjs.entry.js +169 -0
  91. package/dist/cjs/hb-input-number.cjs.entry.js.map +1 -0
  92. package/dist/cjs/hb-input-tag.cjs.entry.js +145 -0
  93. package/dist/cjs/hb-input-tag.cjs.entry.js.map +1 -0
  94. package/dist/cjs/hb-input.cjs.entry.js +252 -0
  95. package/dist/cjs/hb-input.cjs.entry.js.map +1 -0
  96. package/dist/cjs/hb-layout.cjs.entry.js +78 -0
  97. package/dist/cjs/hb-layout.cjs.entry.js.map +1 -0
  98. package/dist/cjs/hb-link.cjs.entry.js +67 -0
  99. package/dist/cjs/hb-link.cjs.entry.js.map +1 -0
  100. package/dist/cjs/hb-loading.cjs.entry.js +32 -0
  101. package/dist/cjs/hb-loading.cjs.entry.js.map +1 -0
  102. package/dist/cjs/hb-main.cjs.entry.js +22 -0
  103. package/dist/cjs/hb-main.cjs.entry.js.map +1 -0
  104. package/dist/cjs/hb-menu-item.cjs.entry.js +50 -0
  105. package/dist/cjs/hb-menu-item.cjs.entry.js.map +1 -0
  106. package/dist/cjs/hb-menu.cjs.entry.js +87 -0
  107. package/dist/cjs/hb-menu.cjs.entry.js.map +1 -0
  108. package/dist/cjs/hb-message.cjs.entry.js +48 -0
  109. package/dist/cjs/hb-message.cjs.entry.js.map +1 -0
  110. package/dist/cjs/hb-notification.cjs.entry.js +67 -0
  111. package/dist/cjs/hb-notification.cjs.entry.js.map +1 -0
  112. package/dist/cjs/hb-page-header.cjs.entry.js +37 -0
  113. package/dist/cjs/hb-page-header.cjs.entry.js.map +1 -0
  114. package/dist/cjs/hb-pagination.cjs.entry.js +107 -0
  115. package/dist/cjs/hb-pagination.cjs.entry.js.map +1 -0
  116. package/dist/cjs/hb-popconfirm.cjs.entry.js +51 -0
  117. package/dist/cjs/hb-popconfirm.cjs.entry.js.map +1 -0
  118. package/dist/cjs/hb-popover.cjs.entry.js +59 -0
  119. package/dist/cjs/hb-popover.cjs.entry.js.map +1 -0
  120. package/dist/cjs/hb-progress.cjs.entry.js +39 -0
  121. package/dist/cjs/hb-progress.cjs.entry.js.map +1 -0
  122. package/dist/cjs/hb-radio.cjs.entry.js +119 -0
  123. package/dist/cjs/hb-radio.cjs.entry.js.map +1 -0
  124. package/dist/cjs/hb-rate.cjs.entry.js +132 -0
  125. package/dist/cjs/hb-rate.cjs.entry.js.map +1 -0
  126. package/dist/cjs/hb-result.cjs.entry.js +57 -0
  127. package/dist/cjs/hb-result.cjs.entry.js.map +1 -0
  128. package/dist/cjs/hb-row.cjs.entry.js +57 -0
  129. package/dist/cjs/hb-row.cjs.entry.js.map +1 -0
  130. package/dist/cjs/hb-scrollbar.cjs.entry.js +204 -0
  131. package/dist/cjs/hb-scrollbar.cjs.entry.js.map +1 -0
  132. package/dist/cjs/hb-segmented.cjs.entry.js +43 -0
  133. package/dist/cjs/hb-segmented.cjs.entry.js.map +1 -0
  134. package/dist/cjs/hb-select.cjs.entry.js +262 -0
  135. package/dist/cjs/hb-select.cjs.entry.js.map +1 -0
  136. package/dist/cjs/hb-skeleton.cjs.entry.js +53 -0
  137. package/dist/cjs/hb-skeleton.cjs.entry.js.map +1 -0
  138. package/dist/cjs/hb-slider.cjs.entry.js +172 -0
  139. package/dist/cjs/hb-slider.cjs.entry.js.map +1 -0
  140. package/dist/cjs/hb-space.cjs.entry.js +72 -0
  141. package/dist/cjs/hb-space.cjs.entry.js.map +1 -0
  142. package/dist/cjs/hb-statistic.cjs.entry.js +66 -0
  143. package/dist/cjs/hb-statistic.cjs.entry.js.map +1 -0
  144. package/dist/cjs/hb-step.cjs.entry.js +24 -0
  145. package/dist/cjs/hb-step.cjs.entry.js.map +1 -0
  146. package/dist/cjs/hb-steps.cjs.entry.js +50 -0
  147. package/dist/cjs/hb-steps.cjs.entry.js.map +1 -0
  148. package/dist/cjs/hb-sub-menu.cjs.entry.js +70 -0
  149. package/dist/cjs/hb-sub-menu.cjs.entry.js.map +1 -0
  150. package/dist/cjs/hb-switch.cjs.entry.js +92 -0
  151. package/dist/cjs/hb-switch.cjs.entry.js.map +1 -0
  152. package/dist/cjs/hb-tab-pane.cjs.entry.js +26 -0
  153. package/dist/cjs/hb-tab-pane.cjs.entry.js.map +1 -0
  154. package/dist/cjs/hb-table.cjs.entry.js +370 -0
  155. package/dist/cjs/hb-table.cjs.entry.js.map +1 -0
  156. package/dist/cjs/hb-tabs.cjs.entry.js +115 -0
  157. package/dist/cjs/hb-tabs.cjs.entry.js.map +1 -0
  158. package/dist/cjs/hb-tag.cjs.entry.js +45 -0
  159. package/dist/cjs/hb-tag.cjs.entry.js.map +1 -0
  160. package/dist/cjs/hb-text.cjs.entry.js +60 -0
  161. package/dist/cjs/hb-text.cjs.entry.js.map +1 -0
  162. package/dist/cjs/hb-time-picker.cjs.entry.js +147 -0
  163. package/dist/cjs/hb-time-picker.cjs.entry.js.map +1 -0
  164. package/dist/cjs/hb-time-select.cjs.entry.js +145 -0
  165. package/dist/cjs/hb-time-select.cjs.entry.js.map +1 -0
  166. package/dist/cjs/hb-timeline.cjs.entry.js +30 -0
  167. package/dist/cjs/hb-timeline.cjs.entry.js.map +1 -0
  168. package/dist/cjs/hb-tooltip.cjs.entry.js +74 -0
  169. package/dist/cjs/hb-tooltip.cjs.entry.js.map +1 -0
  170. package/dist/cjs/hb-tour.cjs.entry.js +119 -0
  171. package/dist/cjs/hb-tour.cjs.entry.js.map +1 -0
  172. package/dist/cjs/hb-transfer.cjs.entry.js +173 -0
  173. package/dist/cjs/hb-transfer.cjs.entry.js.map +1 -0
  174. package/dist/cjs/hb-tree-select.cjs.entry.js +236 -0
  175. package/dist/cjs/hb-tree-select.cjs.entry.js.map +1 -0
  176. package/dist/cjs/hb-tree.cjs.entry.js +313 -0
  177. package/dist/cjs/hb-tree.cjs.entry.js.map +1 -0
  178. package/dist/cjs/hb-upload.cjs.entry.js +184 -0
  179. package/dist/cjs/hb-upload.cjs.entry.js.map +1 -0
  180. package/dist/cjs/hb-watermark.cjs.entry.js +59 -0
  181. package/dist/cjs/hb-watermark.cjs.entry.js.map +1 -0
  182. package/dist/cjs/huibo-ui.cjs.js +27 -0
  183. package/dist/cjs/huibo-ui.cjs.js.map +1 -0
  184. package/dist/cjs/index-5aa5c817.js +1915 -0
  185. package/dist/cjs/index-5aa5c817.js.map +1 -0
  186. package/dist/cjs/index.cjs.js +4 -0
  187. package/dist/cjs/index.cjs.js.map +1 -0
  188. package/dist/cjs/loader.cjs.js +17 -0
  189. package/dist/cjs/loader.cjs.js.map +1 -0
  190. package/dist/cjs/popup-manager-cde53b2f.js +83 -0
  191. package/dist/cjs/popup-manager-cde53b2f.js.map +1 -0
  192. package/dist/collection/collection-manifest.json +97 -0
  193. package/dist/collection/components/Affix/Affix.js +197 -0
  194. package/dist/collection/components/Affix/Affix.js.map +1 -0
  195. package/dist/collection/components/Affix/affix.css +15 -0
  196. package/dist/collection/components/Alert/Alert.js +193 -0
  197. package/dist/collection/components/Alert/Alert.js.map +1 -0
  198. package/dist/collection/components/Alert/alert.css +20 -0
  199. package/dist/collection/components/Anchor/Anchor.js +142 -0
  200. package/dist/collection/components/Anchor/Anchor.js.map +1 -0
  201. package/dist/collection/components/Anchor/anchor.css +53 -0
  202. package/dist/collection/components/Avatar/Avatar.js +129 -0
  203. package/dist/collection/components/Avatar/Avatar.js.map +1 -0
  204. package/dist/collection/components/Avatar/avatar.css +9 -0
  205. package/dist/collection/components/Backtop/Backtop.js +236 -0
  206. package/dist/collection/components/Backtop/Backtop.js.map +1 -0
  207. package/dist/collection/components/Backtop/backtop.css +33 -0
  208. package/dist/collection/components/Badge/Badge.js +136 -0
  209. package/dist/collection/components/Badge/Badge.js.map +1 -0
  210. package/dist/collection/components/Badge/badge.css +17 -0
  211. package/dist/collection/components/Breadcrumb/Breadcrumb.js +49 -0
  212. package/dist/collection/components/Breadcrumb/Breadcrumb.js.map +1 -0
  213. package/dist/collection/components/Breadcrumb/BreadcrumbItem.js +43 -0
  214. package/dist/collection/components/Breadcrumb/BreadcrumbItem.js.map +1 -0
  215. package/dist/collection/components/Breadcrumb/breadcrumb.css +10 -0
  216. package/dist/collection/components/Button/Button.js +144 -0
  217. package/dist/collection/components/Button/Button.js.map +1 -0
  218. package/dist/collection/components/Button/button.css +127 -0
  219. package/dist/collection/components/Calendar/Calendar.js +185 -0
  220. package/dist/collection/components/Calendar/Calendar.js.map +1 -0
  221. package/dist/collection/components/Calendar/calendar.css +101 -0
  222. package/dist/collection/components/Card/Card.js +67 -0
  223. package/dist/collection/components/Card/Card.js.map +1 -0
  224. package/dist/collection/components/Card/card.css +17 -0
  225. package/dist/collection/components/Carousel/Carousel.js +312 -0
  226. package/dist/collection/components/Carousel/Carousel.js.map +1 -0
  227. package/dist/collection/components/Carousel/carousel.css +96 -0
  228. package/dist/collection/components/Cascader/Cascader.js +773 -0
  229. package/dist/collection/components/Cascader/Cascader.js.map +1 -0
  230. package/dist/collection/components/Cascader/cascader.css +276 -0
  231. package/dist/collection/components/Checkbox/Checkbox.js +372 -0
  232. package/dist/collection/components/Checkbox/Checkbox.js.map +1 -0
  233. package/dist/collection/components/Checkbox/CheckboxGroup.js +276 -0
  234. package/dist/collection/components/Checkbox/CheckboxGroup.js.map +1 -0
  235. package/dist/collection/components/Checkbox/checkbox-group.css +17 -0
  236. package/dist/collection/components/Checkbox/checkbox.css +179 -0
  237. package/dist/collection/components/Collapse/Collapse.js +63 -0
  238. package/dist/collection/components/Collapse/Collapse.js.map +1 -0
  239. package/dist/collection/components/Collapse/CollapseItem.js +142 -0
  240. package/dist/collection/components/Collapse/CollapseItem.js.map +1 -0
  241. package/dist/collection/components/Collapse/collapse.css +2 -0
  242. package/dist/collection/components/ColorPicker/ColorPicker.js +416 -0
  243. package/dist/collection/components/ColorPicker/ColorPicker.js.map +1 -0
  244. package/dist/collection/components/ColorPicker/color-picker.css +203 -0
  245. package/dist/collection/components/ColorPickerPanel/ColorPickerPanel.js +195 -0
  246. package/dist/collection/components/ColorPickerPanel/ColorPickerPanel.js.map +1 -0
  247. package/dist/collection/components/ColorPickerPanel/color-picker-panel.css +127 -0
  248. package/dist/collection/components/ConfigProvider/ConfigProvider.js +103 -0
  249. package/dist/collection/components/ConfigProvider/ConfigProvider.js.map +1 -0
  250. package/dist/collection/components/Container/Aside.js +54 -0
  251. package/dist/collection/components/Container/Aside.js.map +1 -0
  252. package/dist/collection/components/Container/Container.js +58 -0
  253. package/dist/collection/components/Container/Container.js.map +1 -0
  254. package/dist/collection/components/Container/Footer.js +54 -0
  255. package/dist/collection/components/Container/Footer.js.map +1 -0
  256. package/dist/collection/components/Container/Header.js +54 -0
  257. package/dist/collection/components/Container/Header.js.map +1 -0
  258. package/dist/collection/components/Container/Main.js +23 -0
  259. package/dist/collection/components/Container/Main.js.map +1 -0
  260. package/dist/collection/components/Container/aside.css +15 -0
  261. package/dist/collection/components/Container/container.css +41 -0
  262. package/dist/collection/components/Container/footer.css +15 -0
  263. package/dist/collection/components/Container/header.css +15 -0
  264. package/dist/collection/components/Container/main.css +14 -0
  265. package/dist/collection/components/DatePicker/DatePicker.js +402 -0
  266. package/dist/collection/components/DatePicker/DatePicker.js.map +1 -0
  267. package/dist/collection/components/DatePicker/date-picker.css +209 -0
  268. package/dist/collection/components/DatePickerPane/DatePickerPane.js +276 -0
  269. package/dist/collection/components/DatePickerPane/DatePickerPane.js.map +1 -0
  270. package/dist/collection/components/DatePickerPane/date-picker-pane.css +140 -0
  271. package/dist/collection/components/DateRangePicker/DateRangePicker.js +438 -0
  272. package/dist/collection/components/DateRangePicker/DateRangePicker.js.map +1 -0
  273. package/dist/collection/components/DateRangePicker/date-range-picker.css +200 -0
  274. package/dist/collection/components/DateTimePicker/DateTimePicker.js +341 -0
  275. package/dist/collection/components/DateTimePicker/DateTimePicker.js.map +1 -0
  276. package/dist/collection/components/DateTimePicker/date-time-picker.css +168 -0
  277. package/dist/collection/components/Descriptions/Descriptions.js +141 -0
  278. package/dist/collection/components/Descriptions/Descriptions.js.map +1 -0
  279. package/dist/collection/components/Descriptions/descriptions.css +52 -0
  280. package/dist/collection/components/Dialog/Dialog.js +348 -0
  281. package/dist/collection/components/Dialog/Dialog.js.map +1 -0
  282. package/dist/collection/components/Dialog/dialog.css +113 -0
  283. package/dist/collection/components/Divider/Divider.js +102 -0
  284. package/dist/collection/components/Divider/Divider.js.map +1 -0
  285. package/dist/collection/components/Divider/divider.css +40 -0
  286. package/dist/collection/components/Drawer/Drawer.js +289 -0
  287. package/dist/collection/components/Drawer/Drawer.js.map +1 -0
  288. package/dist/collection/components/Drawer/drawer.css +18 -0
  289. package/dist/collection/components/Dropdown/Dropdown.js +172 -0
  290. package/dist/collection/components/Dropdown/Dropdown.js.map +1 -0
  291. package/dist/collection/components/Dropdown/dropdown.css +62 -0
  292. package/dist/collection/components/Empty/Empty.js +64 -0
  293. package/dist/collection/components/Empty/Empty.js.map +1 -0
  294. package/dist/collection/components/Empty/empty.css +6 -0
  295. package/dist/collection/components/FloatButton/FloatButton.js +223 -0
  296. package/dist/collection/components/FloatButton/FloatButton.js.map +1 -0
  297. package/dist/collection/components/FloatButton/float-button.css +101 -0
  298. package/dist/collection/components/Form/Form.js +271 -0
  299. package/dist/collection/components/Form/Form.js.map +1 -0
  300. package/dist/collection/components/Form/FormItem.js +300 -0
  301. package/dist/collection/components/Form/FormItem.js.map +1 -0
  302. package/dist/collection/components/Form/form-item.css +43 -0
  303. package/dist/collection/components/Form/form.css +15 -0
  304. package/dist/collection/components/Icon/Icon.js +162 -0
  305. package/dist/collection/components/Icon/Icon.js.map +1 -0
  306. package/dist/collection/components/Icon/icon.css +43 -0
  307. package/dist/collection/components/Image/Image.js +200 -0
  308. package/dist/collection/components/Image/Image.js.map +1 -0
  309. package/dist/collection/components/Image/image.css +7 -0
  310. package/dist/collection/components/ImagePreview/ImagePreview.js +371 -0
  311. package/dist/collection/components/ImagePreview/ImagePreview.js.map +1 -0
  312. package/dist/collection/components/ImagePreview/image-preview.css +125 -0
  313. package/dist/collection/components/Input/Input.js +717 -0
  314. package/dist/collection/components/Input/Input.js.map +1 -0
  315. package/dist/collection/components/Input/input.css +144 -0
  316. package/dist/collection/components/InputNumber/InputNumber.js +510 -0
  317. package/dist/collection/components/InputNumber/InputNumber.js.map +1 -0
  318. package/dist/collection/components/InputNumber/input-number.css +168 -0
  319. package/dist/collection/components/InputTag/InputTag.js +427 -0
  320. package/dist/collection/components/InputTag/InputTag.js.map +1 -0
  321. package/dist/collection/components/InputTag/input-tag.css +159 -0
  322. package/dist/collection/components/Layout/Layout.js +270 -0
  323. package/dist/collection/components/Layout/Layout.js.map +1 -0
  324. package/dist/collection/components/Layout/Row.js +147 -0
  325. package/dist/collection/components/Layout/Row.js.map +1 -0
  326. package/dist/collection/components/Layout/layout.css +89 -0
  327. package/dist/collection/components/Layout/row.css +56 -0
  328. package/dist/collection/components/Link/Link.js +220 -0
  329. package/dist/collection/components/Link/Link.js.map +1 -0
  330. package/dist/collection/components/Link/link.css +87 -0
  331. package/dist/collection/components/Loading/Loading.js +96 -0
  332. package/dist/collection/components/Loading/Loading.js.map +1 -0
  333. package/dist/collection/components/Loading/loading.css +58 -0
  334. package/dist/collection/components/Menu/Menu.js +246 -0
  335. package/dist/collection/components/Menu/Menu.js.map +1 -0
  336. package/dist/collection/components/Menu/MenuItem.js +128 -0
  337. package/dist/collection/components/Menu/MenuItem.js.map +1 -0
  338. package/dist/collection/components/Menu/SubMenu.js +140 -0
  339. package/dist/collection/components/Menu/SubMenu.js.map +1 -0
  340. package/dist/collection/components/Menu/menu.css +143 -0
  341. package/dist/collection/components/Message/Message.js +139 -0
  342. package/dist/collection/components/Message/Message.js.map +1 -0
  343. package/dist/collection/components/Message/show-message.js +24 -0
  344. package/dist/collection/components/Message/show-message.js.map +1 -0
  345. package/dist/collection/components/Notification/Notification.js +262 -0
  346. package/dist/collection/components/Notification/Notification.js.map +1 -0
  347. package/dist/collection/components/Notification/notification.css +160 -0
  348. package/dist/collection/components/Notification/notify.js +53 -0
  349. package/dist/collection/components/Notification/notify.js.map +1 -0
  350. package/dist/collection/components/PageHeader/PageHeader.js +139 -0
  351. package/dist/collection/components/PageHeader/PageHeader.js.map +1 -0
  352. package/dist/collection/components/PageHeader/page-header.css +39 -0
  353. package/dist/collection/components/Pagination/Pagination.js +309 -0
  354. package/dist/collection/components/Pagination/Pagination.js.map +1 -0
  355. package/dist/collection/components/Pagination/pagination.css +83 -0
  356. package/dist/collection/components/Popconfirm/Popconfirm.js +185 -0
  357. package/dist/collection/components/Popconfirm/Popconfirm.js.map +1 -0
  358. package/dist/collection/components/Popconfirm/popconfirm.css +20 -0
  359. package/dist/collection/components/Popover/Popover.js +173 -0
  360. package/dist/collection/components/Popover/Popover.js.map +1 -0
  361. package/dist/collection/components/Popover/popover.css +10 -0
  362. package/dist/collection/components/Progress/Progress.js +139 -0
  363. package/dist/collection/components/Progress/Progress.js.map +1 -0
  364. package/dist/collection/components/Progress/progress.css +5 -0
  365. package/dist/collection/components/Radio/Radio.js +338 -0
  366. package/dist/collection/components/Radio/Radio.js.map +1 -0
  367. package/dist/collection/components/Radio/radio.css +158 -0
  368. package/dist/collection/components/Rate/Rate.js +357 -0
  369. package/dist/collection/components/Rate/Rate.js.map +1 -0
  370. package/dist/collection/components/Rate/rate.css +56 -0
  371. package/dist/collection/components/Result/Result.js +146 -0
  372. package/dist/collection/components/Result/Result.js.map +1 -0
  373. package/dist/collection/components/Result/result.css +47 -0
  374. package/dist/collection/components/Scrollbar/Scrollbar.js +426 -0
  375. package/dist/collection/components/Scrollbar/Scrollbar.js.map +1 -0
  376. package/dist/collection/components/Scrollbar/scrollbar.css +85 -0
  377. package/dist/collection/components/Segmented/Segmented.js +149 -0
  378. package/dist/collection/components/Segmented/Segmented.js.map +1 -0
  379. package/dist/collection/components/Segmented/segmented.css +46 -0
  380. package/dist/collection/components/Select/Select.js +595 -0
  381. package/dist/collection/components/Select/Select.js.map +1 -0
  382. package/dist/collection/components/Select/select.css +223 -0
  383. package/dist/collection/components/Skeleton/Skeleton.js +178 -0
  384. package/dist/collection/components/Skeleton/Skeleton.js.map +1 -0
  385. package/dist/collection/components/Skeleton/skeleton.css +59 -0
  386. package/dist/collection/components/Slider/Slider.js +434 -0
  387. package/dist/collection/components/Slider/Slider.js.map +1 -0
  388. package/dist/collection/components/Slider/slider.css +141 -0
  389. package/dist/collection/components/Space/Space.js +212 -0
  390. package/dist/collection/components/Space/Space.js.map +1 -0
  391. package/dist/collection/components/Space/space.css +57 -0
  392. package/dist/collection/components/Statistic/Statistic.js +188 -0
  393. package/dist/collection/components/Statistic/Statistic.js.map +1 -0
  394. package/dist/collection/components/Statistic/statistic.css +32 -0
  395. package/dist/collection/components/Steps/Step.js +95 -0
  396. package/dist/collection/components/Steps/Step.js.map +1 -0
  397. package/dist/collection/components/Steps/Steps.js +137 -0
  398. package/dist/collection/components/Steps/Steps.js.map +1 -0
  399. package/dist/collection/components/Steps/steps.css +25 -0
  400. package/dist/collection/components/Switch/Switch.js +324 -0
  401. package/dist/collection/components/Switch/Switch.js.map +1 -0
  402. package/dist/collection/components/Switch/switch.css +85 -0
  403. package/dist/collection/components/Table/Table.js +860 -0
  404. package/dist/collection/components/Table/Table.js.map +1 -0
  405. package/dist/collection/components/Table/table.css +289 -0
  406. package/dist/collection/components/Tabs/TabPane.js +82 -0
  407. package/dist/collection/components/Tabs/TabPane.js.map +1 -0
  408. package/dist/collection/components/Tabs/Tabs.js +221 -0
  409. package/dist/collection/components/Tabs/Tabs.js.map +1 -0
  410. package/dist/collection/components/Tabs/tabs.css +66 -0
  411. package/dist/collection/components/Tag/Tag.js +167 -0
  412. package/dist/collection/components/Tag/Tag.js.map +1 -0
  413. package/dist/collection/components/Tag/tag.css +71 -0
  414. package/dist/collection/components/Text/Text.js +203 -0
  415. package/dist/collection/components/Text/Text.js.map +1 -0
  416. package/dist/collection/components/Text/text.css +61 -0
  417. package/dist/collection/components/TimePicker/TimePicker.js +348 -0
  418. package/dist/collection/components/TimePicker/TimePicker.js.map +1 -0
  419. package/dist/collection/components/TimePicker/time-picker.css +151 -0
  420. package/dist/collection/components/TimeSelect/TimeSelect.js +389 -0
  421. package/dist/collection/components/TimeSelect/TimeSelect.js.map +1 -0
  422. package/dist/collection/components/TimeSelect/time-select.css +139 -0
  423. package/dist/collection/components/Timeline/Timeline.js +79 -0
  424. package/dist/collection/components/Timeline/Timeline.js.map +1 -0
  425. package/dist/collection/components/Timeline/timeline.css +71 -0
  426. package/dist/collection/components/Tooltip/Tooltip.js +192 -0
  427. package/dist/collection/components/Tooltip/Tooltip.js.map +1 -0
  428. package/dist/collection/components/Tooltip/tooltip.css +40 -0
  429. package/dist/collection/components/Tour/Tour.js +225 -0
  430. package/dist/collection/components/Tour/Tour.js.map +1 -0
  431. package/dist/collection/components/Tour/tour.css +117 -0
  432. package/dist/collection/components/Transfer/Transfer.js +331 -0
  433. package/dist/collection/components/Transfer/Transfer.js.map +1 -0
  434. package/dist/collection/components/Transfer/transfer.css +183 -0
  435. package/dist/collection/components/Tree/Tree.js +527 -0
  436. package/dist/collection/components/Tree/Tree.js.map +1 -0
  437. package/dist/collection/components/Tree/tree.css +132 -0
  438. package/dist/collection/components/TreeSelect/TreeSelect.js +440 -0
  439. package/dist/collection/components/TreeSelect/TreeSelect.js.map +1 -0
  440. package/dist/collection/components/TreeSelect/tree-select.css +209 -0
  441. package/dist/collection/components/Upload/Upload.js +504 -0
  442. package/dist/collection/components/Upload/Upload.js.map +1 -0
  443. package/dist/collection/components/Upload/upload.css +16 -0
  444. package/dist/collection/components/Watermark/Watermark.js +205 -0
  445. package/dist/collection/components/Watermark/Watermark.js.map +1 -0
  446. package/dist/collection/components/Watermark/watermark.css +26 -0
  447. package/dist/collection/index.js +2 -0
  448. package/dist/collection/index.js.map +1 -0
  449. package/dist/collection/utils/a11y.js +130 -0
  450. package/dist/collection/utils/a11y.js.map +1 -0
  451. package/dist/collection/utils/click-outside.js +22 -0
  452. package/dist/collection/utils/click-outside.js.map +1 -0
  453. package/dist/collection/utils/date-helpers.js +120 -0
  454. package/dist/collection/utils/date-helpers.js.map +1 -0
  455. package/dist/collection/utils/form-input-base.js +48 -0
  456. package/dist/collection/utils/form-input-base.js.map +1 -0
  457. package/dist/collection/utils/popup-manager.js +75 -0
  458. package/dist/collection/utils/popup-manager.js.map +1 -0
  459. package/dist/components/hb-affix.d.ts +11 -0
  460. package/dist/components/hb-affix.js +121 -0
  461. package/dist/components/hb-affix.js.map +1 -0
  462. package/dist/components/hb-alert.d.ts +11 -0
  463. package/dist/components/hb-alert.js +70 -0
  464. package/dist/components/hb-alert.js.map +1 -0
  465. package/dist/components/hb-anchor.d.ts +11 -0
  466. package/dist/components/hb-anchor.js +66 -0
  467. package/dist/components/hb-anchor.js.map +1 -0
  468. package/dist/components/hb-aside.d.ts +11 -0
  469. package/dist/components/hb-aside.js +47 -0
  470. package/dist/components/hb-aside.js.map +1 -0
  471. package/dist/components/hb-avatar.d.ts +11 -0
  472. package/dist/components/hb-avatar.js +52 -0
  473. package/dist/components/hb-avatar.js.map +1 -0
  474. package/dist/components/hb-backtop.d.ts +11 -0
  475. package/dist/components/hb-backtop.js +122 -0
  476. package/dist/components/hb-backtop.js.map +1 -0
  477. package/dist/components/hb-badge.d.ts +11 -0
  478. package/dist/components/hb-badge.js +56 -0
  479. package/dist/components/hb-badge.js.map +1 -0
  480. package/dist/components/hb-breadcrumb-item.d.ts +11 -0
  481. package/dist/components/hb-breadcrumb-item.js +42 -0
  482. package/dist/components/hb-breadcrumb-item.js.map +1 -0
  483. package/dist/components/hb-breadcrumb.d.ts +11 -0
  484. package/dist/components/hb-breadcrumb.js +41 -0
  485. package/dist/components/hb-breadcrumb.js.map +1 -0
  486. package/dist/components/hb-button.d.ts +11 -0
  487. package/dist/components/hb-button.js +60 -0
  488. package/dist/components/hb-button.js.map +1 -0
  489. package/dist/components/hb-calendar.d.ts +11 -0
  490. package/dist/components/hb-calendar.js +113 -0
  491. package/dist/components/hb-calendar.js.map +1 -0
  492. package/dist/components/hb-card.d.ts +11 -0
  493. package/dist/components/hb-card.js +45 -0
  494. package/dist/components/hb-card.js.map +1 -0
  495. package/dist/components/hb-carousel.d.ts +11 -0
  496. package/dist/components/hb-carousel.js +178 -0
  497. package/dist/components/hb-carousel.js.map +1 -0
  498. package/dist/components/hb-cascader.d.ts +11 -0
  499. package/dist/components/hb-cascader.js +451 -0
  500. package/dist/components/hb-cascader.js.map +1 -0
  501. package/dist/components/hb-checkbox-group.d.ts +11 -0
  502. package/dist/components/hb-checkbox-group.js +145 -0
  503. package/dist/components/hb-checkbox-group.js.map +1 -0
  504. package/dist/components/hb-checkbox.d.ts +11 -0
  505. package/dist/components/hb-checkbox.js +161 -0
  506. package/dist/components/hb-checkbox.js.map +1 -0
  507. package/dist/components/hb-collapse-item.d.ts +11 -0
  508. package/dist/components/hb-collapse-item.js +81 -0
  509. package/dist/components/hb-collapse-item.js.map +1 -0
  510. package/dist/components/hb-collapse.d.ts +11 -0
  511. package/dist/components/hb-collapse.js +58 -0
  512. package/dist/components/hb-collapse.js.map +1 -0
  513. package/dist/components/hb-color-picker-panel.d.ts +11 -0
  514. package/dist/components/hb-color-picker-panel.js +109 -0
  515. package/dist/components/hb-color-picker-panel.js.map +1 -0
  516. package/dist/components/hb-color-picker.d.ts +11 -0
  517. package/dist/components/hb-color-picker.js +293 -0
  518. package/dist/components/hb-color-picker.js.map +1 -0
  519. package/dist/components/hb-config-provider.d.ts +11 -0
  520. package/dist/components/hb-config-provider.js +62 -0
  521. package/dist/components/hb-config-provider.js.map +1 -0
  522. package/dist/components/hb-container.d.ts +11 -0
  523. package/dist/components/hb-container.js +47 -0
  524. package/dist/components/hb-container.js.map +1 -0
  525. package/dist/components/hb-date-picker-pane.d.ts +11 -0
  526. package/dist/components/hb-date-picker-pane.js +172 -0
  527. package/dist/components/hb-date-picker-pane.js.map +1 -0
  528. package/dist/components/hb-date-picker.d.ts +11 -0
  529. package/dist/components/hb-date-picker.js +170 -0
  530. package/dist/components/hb-date-picker.js.map +1 -0
  531. package/dist/components/hb-date-range-picker.d.ts +11 -0
  532. package/dist/components/hb-date-range-picker.js +254 -0
  533. package/dist/components/hb-date-range-picker.js.map +1 -0
  534. package/dist/components/hb-date-time-picker.d.ts +11 -0
  535. package/dist/components/hb-date-time-picker.js +170 -0
  536. package/dist/components/hb-date-time-picker.js.map +1 -0
  537. package/dist/components/hb-descriptions.d.ts +11 -0
  538. package/dist/components/hb-descriptions.js +53 -0
  539. package/dist/components/hb-descriptions.js.map +1 -0
  540. package/dist/components/hb-dialog.d.ts +11 -0
  541. package/dist/components/hb-dialog.js +141 -0
  542. package/dist/components/hb-dialog.js.map +1 -0
  543. package/dist/components/hb-divider.d.ts +11 -0
  544. package/dist/components/hb-divider.js +55 -0
  545. package/dist/components/hb-divider.js.map +1 -0
  546. package/dist/components/hb-drawer.d.ts +11 -0
  547. package/dist/components/hb-drawer.js +116 -0
  548. package/dist/components/hb-drawer.js.map +1 -0
  549. package/dist/components/hb-dropdown.d.ts +11 -0
  550. package/dist/components/hb-dropdown.js +100 -0
  551. package/dist/components/hb-dropdown.js.map +1 -0
  552. package/dist/components/hb-empty.d.ts +11 -0
  553. package/dist/components/hb-empty.js +42 -0
  554. package/dist/components/hb-empty.js.map +1 -0
  555. package/dist/components/hb-float-button.d.ts +11 -0
  556. package/dist/components/hb-float-button.js +80 -0
  557. package/dist/components/hb-float-button.js.map +1 -0
  558. package/dist/components/hb-footer.d.ts +11 -0
  559. package/dist/components/hb-footer.js +47 -0
  560. package/dist/components/hb-footer.js.map +1 -0
  561. package/dist/components/hb-form-item.d.ts +11 -0
  562. package/dist/components/hb-form-item.js +139 -0
  563. package/dist/components/hb-form-item.js.map +1 -0
  564. package/dist/components/hb-form.d.ts +11 -0
  565. package/dist/components/hb-form.js +96 -0
  566. package/dist/components/hb-form.js.map +1 -0
  567. package/dist/components/hb-header.d.ts +11 -0
  568. package/dist/components/hb-header.js +47 -0
  569. package/dist/components/hb-header.js.map +1 -0
  570. package/dist/components/hb-icon.d.ts +11 -0
  571. package/dist/components/hb-icon.js +96 -0
  572. package/dist/components/hb-icon.js.map +1 -0
  573. package/dist/components/hb-image-preview.d.ts +11 -0
  574. package/dist/components/hb-image-preview.js +207 -0
  575. package/dist/components/hb-image-preview.js.map +1 -0
  576. package/dist/components/hb-image.d.ts +11 -0
  577. package/dist/components/hb-image.js +62 -0
  578. package/dist/components/hb-image.js.map +1 -0
  579. package/dist/components/hb-input-number.d.ts +11 -0
  580. package/dist/components/hb-input-number.js +202 -0
  581. package/dist/components/hb-input-number.js.map +1 -0
  582. package/dist/components/hb-input-tag.d.ts +11 -0
  583. package/dist/components/hb-input-tag.js +174 -0
  584. package/dist/components/hb-input-tag.js.map +1 -0
  585. package/dist/components/hb-input.d.ts +11 -0
  586. package/dist/components/hb-input.js +294 -0
  587. package/dist/components/hb-input.js.map +1 -0
  588. package/dist/components/hb-layout.d.ts +11 -0
  589. package/dist/components/hb-layout.js +103 -0
  590. package/dist/components/hb-layout.js.map +1 -0
  591. package/dist/components/hb-link.d.ts +11 -0
  592. package/dist/components/hb-link.js +89 -0
  593. package/dist/components/hb-link.js.map +1 -0
  594. package/dist/components/hb-loading.d.ts +11 -0
  595. package/dist/components/hb-loading.js +51 -0
  596. package/dist/components/hb-loading.js.map +1 -0
  597. package/dist/components/hb-main.d.ts +11 -0
  598. package/dist/components/hb-main.js +37 -0
  599. package/dist/components/hb-main.js.map +1 -0
  600. package/dist/components/hb-menu-item.d.ts +11 -0
  601. package/dist/components/hb-menu-item.js +70 -0
  602. package/dist/components/hb-menu-item.js.map +1 -0
  603. package/dist/components/hb-menu.d.ts +11 -0
  604. package/dist/components/hb-menu.js +113 -0
  605. package/dist/components/hb-menu.js.map +1 -0
  606. package/dist/components/hb-message.d.ts +11 -0
  607. package/dist/components/hb-message.js +69 -0
  608. package/dist/components/hb-message.js.map +1 -0
  609. package/dist/components/hb-notification.d.ts +11 -0
  610. package/dist/components/hb-notification.js +91 -0
  611. package/dist/components/hb-notification.js.map +1 -0
  612. package/dist/components/hb-page-header.d.ts +11 -0
  613. package/dist/components/hb-page-header.js +57 -0
  614. package/dist/components/hb-page-header.js.map +1 -0
  615. package/dist/components/hb-pagination.d.ts +11 -0
  616. package/dist/components/hb-pagination.js +134 -0
  617. package/dist/components/hb-pagination.js.map +1 -0
  618. package/dist/components/hb-popconfirm.d.ts +11 -0
  619. package/dist/components/hb-popconfirm.js +75 -0
  620. package/dist/components/hb-popconfirm.js.map +1 -0
  621. package/dist/components/hb-popover.d.ts +11 -0
  622. package/dist/components/hb-popover.js +82 -0
  623. package/dist/components/hb-popover.js.map +1 -0
  624. package/dist/components/hb-progress.d.ts +11 -0
  625. package/dist/components/hb-progress.js +60 -0
  626. package/dist/components/hb-progress.js.map +1 -0
  627. package/dist/components/hb-radio.d.ts +11 -0
  628. package/dist/components/hb-radio.js +149 -0
  629. package/dist/components/hb-radio.js.map +1 -0
  630. package/dist/components/hb-rate.d.ts +11 -0
  631. package/dist/components/hb-rate.js +161 -0
  632. package/dist/components/hb-rate.js.map +1 -0
  633. package/dist/components/hb-result.d.ts +11 -0
  634. package/dist/components/hb-result.js +77 -0
  635. package/dist/components/hb-result.js.map +1 -0
  636. package/dist/components/hb-row.d.ts +11 -0
  637. package/dist/components/hb-row.js +77 -0
  638. package/dist/components/hb-row.js.map +1 -0
  639. package/dist/components/hb-scrollbar.d.ts +11 -0
  640. package/dist/components/hb-scrollbar.js +235 -0
  641. package/dist/components/hb-scrollbar.js.map +1 -0
  642. package/dist/components/hb-segmented.d.ts +11 -0
  643. package/dist/components/hb-segmented.js +63 -0
  644. package/dist/components/hb-segmented.js.map +1 -0
  645. package/dist/components/hb-select.d.ts +11 -0
  646. package/dist/components/hb-select.js +299 -0
  647. package/dist/components/hb-select.js.map +1 -0
  648. package/dist/components/hb-skeleton.d.ts +11 -0
  649. package/dist/components/hb-skeleton.js +75 -0
  650. package/dist/components/hb-skeleton.js.map +1 -0
  651. package/dist/components/hb-slider.d.ts +11 -0
  652. package/dist/components/hb-slider.js +202 -0
  653. package/dist/components/hb-slider.js.map +1 -0
  654. package/dist/components/hb-space.d.ts +11 -0
  655. package/dist/components/hb-space.js +94 -0
  656. package/dist/components/hb-space.js.map +1 -0
  657. package/dist/components/hb-statistic.d.ts +11 -0
  658. package/dist/components/hb-statistic.js +88 -0
  659. package/dist/components/hb-statistic.js.map +1 -0
  660. package/dist/components/hb-step.d.ts +11 -0
  661. package/dist/components/hb-step.js +42 -0
  662. package/dist/components/hb-step.js.map +1 -0
  663. package/dist/components/hb-steps.d.ts +11 -0
  664. package/dist/components/hb-steps.js +71 -0
  665. package/dist/components/hb-steps.js.map +1 -0
  666. package/dist/components/hb-sub-menu.d.ts +11 -0
  667. package/dist/components/hb-sub-menu.js +91 -0
  668. package/dist/components/hb-sub-menu.js.map +1 -0
  669. package/dist/components/hb-switch.d.ts +11 -0
  670. package/dist/components/hb-switch.js +118 -0
  671. package/dist/components/hb-switch.js.map +1 -0
  672. package/dist/components/hb-tab-pane.d.ts +11 -0
  673. package/dist/components/hb-tab-pane.js +43 -0
  674. package/dist/components/hb-tab-pane.js.map +1 -0
  675. package/dist/components/hb-table.d.ts +11 -0
  676. package/dist/components/hb-table.js +412 -0
  677. package/dist/components/hb-table.js.map +1 -0
  678. package/dist/components/hb-tabs.d.ts +11 -0
  679. package/dist/components/hb-tabs.js +138 -0
  680. package/dist/components/hb-tabs.js.map +1 -0
  681. package/dist/components/hb-tag.d.ts +11 -0
  682. package/dist/components/hb-tag.js +66 -0
  683. package/dist/components/hb-tag.js.map +1 -0
  684. package/dist/components/hb-text.d.ts +11 -0
  685. package/dist/components/hb-text.js +82 -0
  686. package/dist/components/hb-text.js.map +1 -0
  687. package/dist/components/hb-time-picker.d.ts +11 -0
  688. package/dist/components/hb-time-picker.js +178 -0
  689. package/dist/components/hb-time-picker.js.map +1 -0
  690. package/dist/components/hb-time-select.d.ts +11 -0
  691. package/dist/components/hb-time-select.js +175 -0
  692. package/dist/components/hb-time-select.js.map +1 -0
  693. package/dist/components/hb-timeline.d.ts +11 -0
  694. package/dist/components/hb-timeline.js +48 -0
  695. package/dist/components/hb-timeline.js.map +1 -0
  696. package/dist/components/hb-tooltip.d.ts +11 -0
  697. package/dist/components/hb-tooltip.js +97 -0
  698. package/dist/components/hb-tooltip.js.map +1 -0
  699. package/dist/components/hb-tour.d.ts +11 -0
  700. package/dist/components/hb-tour.js +139 -0
  701. package/dist/components/hb-tour.js.map +1 -0
  702. package/dist/components/hb-transfer.d.ts +11 -0
  703. package/dist/components/hb-transfer.js +199 -0
  704. package/dist/components/hb-transfer.js.map +1 -0
  705. package/dist/components/hb-tree-select.d.ts +11 -0
  706. package/dist/components/hb-tree-select.js +263 -0
  707. package/dist/components/hb-tree-select.js.map +1 -0
  708. package/dist/components/hb-tree.d.ts +11 -0
  709. package/dist/components/hb-tree.js +344 -0
  710. package/dist/components/hb-tree.js.map +1 -0
  711. package/dist/components/hb-upload.d.ts +11 -0
  712. package/dist/components/hb-upload.js +213 -0
  713. package/dist/components/hb-upload.js.map +1 -0
  714. package/dist/components/hb-watermark.d.ts +11 -0
  715. package/dist/components/hb-watermark.js +82 -0
  716. package/dist/components/hb-watermark.js.map +1 -0
  717. package/dist/components/index.d.ts +33 -0
  718. package/dist/components/index.js +3 -0
  719. package/dist/components/index.js.map +1 -0
  720. package/dist/components/p-1407a5e8.js +1662 -0
  721. package/dist/components/p-1407a5e8.js.map +1 -0
  722. package/dist/components/p-4ef5a884.js +25 -0
  723. package/dist/components/p-4ef5a884.js.map +1 -0
  724. package/dist/components/p-cc0aeb50.js +119 -0
  725. package/dist/components/p-cc0aeb50.js.map +1 -0
  726. package/dist/components/p-cf94cbf6.js +123 -0
  727. package/dist/components/p-cf94cbf6.js.map +1 -0
  728. package/dist/components/p-ecce2b5e.js +78 -0
  729. package/dist/components/p-ecce2b5e.js.map +1 -0
  730. package/dist/esm/a11y-f9ab2964.js +119 -0
  731. package/dist/esm/a11y-f9ab2964.js.map +1 -0
  732. package/dist/esm/app-globals-0f993ce5.js +5 -0
  733. package/dist/esm/app-globals-0f993ce5.js.map +1 -0
  734. package/dist/esm/click-outside-291294f9.js +25 -0
  735. package/dist/esm/click-outside-291294f9.js.map +1 -0
  736. package/dist/esm/date-helpers-e4d85a67.js +123 -0
  737. package/dist/esm/date-helpers-e4d85a67.js.map +1 -0
  738. package/dist/esm/hb-affix.entry.js +97 -0
  739. package/dist/esm/hb-affix.entry.js.map +1 -0
  740. package/dist/esm/hb-alert.entry.js +43 -0
  741. package/dist/esm/hb-alert.entry.js.map +1 -0
  742. package/dist/esm/hb-anchor.entry.js +42 -0
  743. package/dist/esm/hb-anchor.entry.js.map +1 -0
  744. package/dist/esm/hb-aside.entry.js +26 -0
  745. package/dist/esm/hb-aside.entry.js.map +1 -0
  746. package/dist/esm/hb-avatar.entry.js +27 -0
  747. package/dist/esm/hb-avatar.entry.js.map +1 -0
  748. package/dist/esm/hb-backtop.entry.js +96 -0
  749. package/dist/esm/hb-backtop.entry.js.map +1 -0
  750. package/dist/esm/hb-badge.entry.js +31 -0
  751. package/dist/esm/hb-badge.entry.js.map +1 -0
  752. package/dist/esm/hb-breadcrumb-item.entry.js +21 -0
  753. package/dist/esm/hb-breadcrumb-item.entry.js.map +1 -0
  754. package/dist/esm/hb-breadcrumb.entry.js +20 -0
  755. package/dist/esm/hb-breadcrumb.entry.js.map +1 -0
  756. package/dist/esm/hb-button.entry.js +35 -0
  757. package/dist/esm/hb-button.entry.js.map +1 -0
  758. package/dist/esm/hb-calendar.entry.js +86 -0
  759. package/dist/esm/hb-calendar.entry.js.map +1 -0
  760. package/dist/esm/hb-card.entry.js +23 -0
  761. package/dist/esm/hb-card.entry.js.map +1 -0
  762. package/dist/esm/hb-carousel.entry.js +146 -0
  763. package/dist/esm/hb-carousel.entry.js.map +1 -0
  764. package/dist/esm/hb-cascader.entry.js +409 -0
  765. package/dist/esm/hb-cascader.entry.js.map +1 -0
  766. package/dist/esm/hb-checkbox-group.entry.js +113 -0
  767. package/dist/esm/hb-checkbox-group.entry.js.map +1 -0
  768. package/dist/esm/hb-checkbox.entry.js +126 -0
  769. package/dist/esm/hb-checkbox.entry.js.map +1 -0
  770. package/dist/esm/hb-collapse-item.entry.js +54 -0
  771. package/dist/esm/hb-collapse-item.entry.js.map +1 -0
  772. package/dist/esm/hb-collapse.entry.js +37 -0
  773. package/dist/esm/hb-collapse.entry.js.map +1 -0
  774. package/dist/esm/hb-color-picker-panel.entry.js +82 -0
  775. package/dist/esm/hb-color-picker-panel.entry.js.map +1 -0
  776. package/dist/esm/hb-color-picker.entry.js +261 -0
  777. package/dist/esm/hb-color-picker.entry.js.map +1 -0
  778. package/dist/esm/hb-config-provider.entry.js +40 -0
  779. package/dist/esm/hb-config-provider.entry.js.map +1 -0
  780. package/dist/esm/hb-container.entry.js +26 -0
  781. package/dist/esm/hb-container.entry.js.map +1 -0
  782. package/dist/esm/hb-date-picker-pane.entry.js +146 -0
  783. package/dist/esm/hb-date-picker-pane.entry.js.map +1 -0
  784. package/dist/esm/hb-date-picker.entry.js +134 -0
  785. package/dist/esm/hb-date-picker.entry.js.map +1 -0
  786. package/dist/esm/hb-date-range-picker.entry.js +218 -0
  787. package/dist/esm/hb-date-range-picker.entry.js.map +1 -0
  788. package/dist/esm/hb-date-time-picker.entry.js +136 -0
  789. package/dist/esm/hb-date-time-picker.entry.js.map +1 -0
  790. package/dist/esm/hb-descriptions.entry.js +28 -0
  791. package/dist/esm/hb-descriptions.entry.js.map +1 -0
  792. package/dist/esm/hb-dialog.entry.js +110 -0
  793. package/dist/esm/hb-dialog.entry.js.map +1 -0
  794. package/dist/esm/hb-divider.entry.js +32 -0
  795. package/dist/esm/hb-divider.entry.js.map +1 -0
  796. package/dist/esm/hb-drawer.entry.js +85 -0
  797. package/dist/esm/hb-drawer.entry.js.map +1 -0
  798. package/dist/esm/hb-dropdown.entry.js +76 -0
  799. package/dist/esm/hb-dropdown.entry.js.map +1 -0
  800. package/dist/esm/hb-empty.entry.js +20 -0
  801. package/dist/esm/hb-empty.entry.js.map +1 -0
  802. package/dist/esm/hb-float-button.entry.js +53 -0
  803. package/dist/esm/hb-float-button.entry.js.map +1 -0
  804. package/dist/esm/hb-footer.entry.js +26 -0
  805. package/dist/esm/hb-footer.entry.js.map +1 -0
  806. package/dist/esm/hb-form-item.entry.js +108 -0
  807. package/dist/esm/hb-form-item.entry.js.map +1 -0
  808. package/dist/esm/hb-form.entry.js +66 -0
  809. package/dist/esm/hb-form.entry.js.map +1 -0
  810. package/dist/esm/hb-header.entry.js +26 -0
  811. package/dist/esm/hb-header.entry.js.map +1 -0
  812. package/dist/esm/hb-icon.entry.js +72 -0
  813. package/dist/esm/hb-icon.entry.js.map +1 -0
  814. package/dist/esm/hb-image-preview.entry.js +175 -0
  815. package/dist/esm/hb-image-preview.entry.js.map +1 -0
  816. package/dist/esm/hb-image.entry.js +31 -0
  817. package/dist/esm/hb-image.entry.js.map +1 -0
  818. package/dist/esm/hb-input-number.entry.js +165 -0
  819. package/dist/esm/hb-input-number.entry.js.map +1 -0
  820. package/dist/esm/hb-input-tag.entry.js +141 -0
  821. package/dist/esm/hb-input-tag.entry.js.map +1 -0
  822. package/dist/esm/hb-input.entry.js +248 -0
  823. package/dist/esm/hb-input.entry.js.map +1 -0
  824. package/dist/esm/hb-layout.entry.js +74 -0
  825. package/dist/esm/hb-layout.entry.js.map +1 -0
  826. package/dist/esm/hb-link.entry.js +63 -0
  827. package/dist/esm/hb-link.entry.js.map +1 -0
  828. package/dist/esm/hb-loading.entry.js +28 -0
  829. package/dist/esm/hb-loading.entry.js.map +1 -0
  830. package/dist/esm/hb-main.entry.js +18 -0
  831. package/dist/esm/hb-main.entry.js.map +1 -0
  832. package/dist/esm/hb-menu-item.entry.js +46 -0
  833. package/dist/esm/hb-menu-item.entry.js.map +1 -0
  834. package/dist/esm/hb-menu.entry.js +83 -0
  835. package/dist/esm/hb-menu.entry.js.map +1 -0
  836. package/dist/esm/hb-message.entry.js +44 -0
  837. package/dist/esm/hb-message.entry.js.map +1 -0
  838. package/dist/esm/hb-notification.entry.js +63 -0
  839. package/dist/esm/hb-notification.entry.js.map +1 -0
  840. package/dist/esm/hb-page-header.entry.js +33 -0
  841. package/dist/esm/hb-page-header.entry.js.map +1 -0
  842. package/dist/esm/hb-pagination.entry.js +103 -0
  843. package/dist/esm/hb-pagination.entry.js.map +1 -0
  844. package/dist/esm/hb-popconfirm.entry.js +47 -0
  845. package/dist/esm/hb-popconfirm.entry.js.map +1 -0
  846. package/dist/esm/hb-popover.entry.js +55 -0
  847. package/dist/esm/hb-popover.entry.js.map +1 -0
  848. package/dist/esm/hb-progress.entry.js +35 -0
  849. package/dist/esm/hb-progress.entry.js.map +1 -0
  850. package/dist/esm/hb-radio.entry.js +115 -0
  851. package/dist/esm/hb-radio.entry.js.map +1 -0
  852. package/dist/esm/hb-rate.entry.js +128 -0
  853. package/dist/esm/hb-rate.entry.js.map +1 -0
  854. package/dist/esm/hb-result.entry.js +53 -0
  855. package/dist/esm/hb-result.entry.js.map +1 -0
  856. package/dist/esm/hb-row.entry.js +53 -0
  857. package/dist/esm/hb-row.entry.js.map +1 -0
  858. package/dist/esm/hb-scrollbar.entry.js +200 -0
  859. package/dist/esm/hb-scrollbar.entry.js.map +1 -0
  860. package/dist/esm/hb-segmented.entry.js +39 -0
  861. package/dist/esm/hb-segmented.entry.js.map +1 -0
  862. package/dist/esm/hb-select.entry.js +258 -0
  863. package/dist/esm/hb-select.entry.js.map +1 -0
  864. package/dist/esm/hb-skeleton.entry.js +49 -0
  865. package/dist/esm/hb-skeleton.entry.js.map +1 -0
  866. package/dist/esm/hb-slider.entry.js +168 -0
  867. package/dist/esm/hb-slider.entry.js.map +1 -0
  868. package/dist/esm/hb-space.entry.js +68 -0
  869. package/dist/esm/hb-space.entry.js.map +1 -0
  870. package/dist/esm/hb-statistic.entry.js +62 -0
  871. package/dist/esm/hb-statistic.entry.js.map +1 -0
  872. package/dist/esm/hb-step.entry.js +20 -0
  873. package/dist/esm/hb-step.entry.js.map +1 -0
  874. package/dist/esm/hb-steps.entry.js +46 -0
  875. package/dist/esm/hb-steps.entry.js.map +1 -0
  876. package/dist/esm/hb-sub-menu.entry.js +66 -0
  877. package/dist/esm/hb-sub-menu.entry.js.map +1 -0
  878. package/dist/esm/hb-switch.entry.js +88 -0
  879. package/dist/esm/hb-switch.entry.js.map +1 -0
  880. package/dist/esm/hb-tab-pane.entry.js +22 -0
  881. package/dist/esm/hb-tab-pane.entry.js.map +1 -0
  882. package/dist/esm/hb-table.entry.js +366 -0
  883. package/dist/esm/hb-table.entry.js.map +1 -0
  884. package/dist/esm/hb-tabs.entry.js +111 -0
  885. package/dist/esm/hb-tabs.entry.js.map +1 -0
  886. package/dist/esm/hb-tag.entry.js +41 -0
  887. package/dist/esm/hb-tag.entry.js.map +1 -0
  888. package/dist/esm/hb-text.entry.js +56 -0
  889. package/dist/esm/hb-text.entry.js.map +1 -0
  890. package/dist/esm/hb-time-picker.entry.js +143 -0
  891. package/dist/esm/hb-time-picker.entry.js.map +1 -0
  892. package/dist/esm/hb-time-select.entry.js +141 -0
  893. package/dist/esm/hb-time-select.entry.js.map +1 -0
  894. package/dist/esm/hb-timeline.entry.js +26 -0
  895. package/dist/esm/hb-timeline.entry.js.map +1 -0
  896. package/dist/esm/hb-tooltip.entry.js +70 -0
  897. package/dist/esm/hb-tooltip.entry.js.map +1 -0
  898. package/dist/esm/hb-tour.entry.js +115 -0
  899. package/dist/esm/hb-tour.entry.js.map +1 -0
  900. package/dist/esm/hb-transfer.entry.js +169 -0
  901. package/dist/esm/hb-transfer.entry.js.map +1 -0
  902. package/dist/esm/hb-tree-select.entry.js +232 -0
  903. package/dist/esm/hb-tree-select.entry.js.map +1 -0
  904. package/dist/esm/hb-tree.entry.js +309 -0
  905. package/dist/esm/hb-tree.entry.js.map +1 -0
  906. package/dist/esm/hb-upload.entry.js +180 -0
  907. package/dist/esm/hb-upload.entry.js.map +1 -0
  908. package/dist/esm/hb-watermark.entry.js +55 -0
  909. package/dist/esm/hb-watermark.entry.js.map +1 -0
  910. package/dist/esm/huibo-ui.js +22 -0
  911. package/dist/esm/huibo-ui.js.map +1 -0
  912. package/dist/esm/index-fdf7135e.js +1886 -0
  913. package/dist/esm/index-fdf7135e.js.map +1 -0
  914. package/dist/esm/index.js +3 -0
  915. package/dist/esm/index.js.map +1 -0
  916. package/dist/esm/loader.js +13 -0
  917. package/dist/esm/loader.js.map +1 -0
  918. package/dist/esm/popup-manager-128cc685.js +78 -0
  919. package/dist/esm/popup-manager-128cc685.js.map +1 -0
  920. package/dist/huibo-ui/huibo-ui.css +6 -0
  921. package/dist/huibo-ui/huibo-ui.esm.js +2 -0
  922. package/dist/huibo-ui/huibo-ui.esm.js.map +1 -0
  923. package/dist/huibo-ui/index.esm.js +2 -0
  924. package/dist/huibo-ui/index.esm.js.map +1 -0
  925. package/dist/huibo-ui/p-003cee87.entry.js +2 -0
  926. package/dist/huibo-ui/p-003cee87.entry.js.map +1 -0
  927. package/dist/huibo-ui/p-06ec8d02.entry.js +2 -0
  928. package/dist/huibo-ui/p-06ec8d02.entry.js.map +1 -0
  929. package/dist/huibo-ui/p-079a4130.entry.js +2 -0
  930. package/dist/huibo-ui/p-079a4130.entry.js.map +1 -0
  931. package/dist/huibo-ui/p-0a033738.entry.js +2 -0
  932. package/dist/huibo-ui/p-0a033738.entry.js.map +1 -0
  933. package/dist/huibo-ui/p-0bef78ac.entry.js +2 -0
  934. package/dist/huibo-ui/p-0bef78ac.entry.js.map +1 -0
  935. package/dist/huibo-ui/p-0e65e1bd.entry.js +2 -0
  936. package/dist/huibo-ui/p-0e65e1bd.entry.js.map +1 -0
  937. package/dist/huibo-ui/p-0f189251.entry.js +2 -0
  938. package/dist/huibo-ui/p-0f189251.entry.js.map +1 -0
  939. package/dist/huibo-ui/p-10c088f3.entry.js +2 -0
  940. package/dist/huibo-ui/p-10c088f3.entry.js.map +1 -0
  941. package/dist/huibo-ui/p-1b5acd6d.entry.js +2 -0
  942. package/dist/huibo-ui/p-1b5acd6d.entry.js.map +1 -0
  943. package/dist/huibo-ui/p-1e5abc8a.entry.js +2 -0
  944. package/dist/huibo-ui/p-1e5abc8a.entry.js.map +1 -0
  945. package/dist/huibo-ui/p-1f0b1662.entry.js +2 -0
  946. package/dist/huibo-ui/p-1f0b1662.entry.js.map +1 -0
  947. package/dist/huibo-ui/p-21682e92.entry.js +2 -0
  948. package/dist/huibo-ui/p-21682e92.entry.js.map +1 -0
  949. package/dist/huibo-ui/p-231a7335.entry.js +2 -0
  950. package/dist/huibo-ui/p-231a7335.entry.js.map +1 -0
  951. package/dist/huibo-ui/p-24ad7eec.entry.js +2 -0
  952. package/dist/huibo-ui/p-24ad7eec.entry.js.map +1 -0
  953. package/dist/huibo-ui/p-2b286698.entry.js +2 -0
  954. package/dist/huibo-ui/p-2b286698.entry.js.map +1 -0
  955. package/dist/huibo-ui/p-2e6584ea.entry.js +2 -0
  956. package/dist/huibo-ui/p-2e6584ea.entry.js.map +1 -0
  957. package/dist/huibo-ui/p-315feadf.entry.js +2 -0
  958. package/dist/huibo-ui/p-315feadf.entry.js.map +1 -0
  959. package/dist/huibo-ui/p-332c8877.entry.js +2 -0
  960. package/dist/huibo-ui/p-332c8877.entry.js.map +1 -0
  961. package/dist/huibo-ui/p-3c7f73c8.entry.js +2 -0
  962. package/dist/huibo-ui/p-3c7f73c8.entry.js.map +1 -0
  963. package/dist/huibo-ui/p-4001c08d.entry.js +2 -0
  964. package/dist/huibo-ui/p-4001c08d.entry.js.map +1 -0
  965. package/dist/huibo-ui/p-44c48246.entry.js +2 -0
  966. package/dist/huibo-ui/p-44c48246.entry.js.map +1 -0
  967. package/dist/huibo-ui/p-463de26d.entry.js +2 -0
  968. package/dist/huibo-ui/p-463de26d.entry.js.map +1 -0
  969. package/dist/huibo-ui/p-465dcb4c.entry.js +2 -0
  970. package/dist/huibo-ui/p-465dcb4c.entry.js.map +1 -0
  971. package/dist/huibo-ui/p-476527c1.entry.js +2 -0
  972. package/dist/huibo-ui/p-476527c1.entry.js.map +1 -0
  973. package/dist/huibo-ui/p-477d8568.entry.js +2 -0
  974. package/dist/huibo-ui/p-477d8568.entry.js.map +1 -0
  975. package/dist/huibo-ui/p-4d0dff15.entry.js +2 -0
  976. package/dist/huibo-ui/p-4d0dff15.entry.js.map +1 -0
  977. package/dist/huibo-ui/p-4d8b1404.entry.js +2 -0
  978. package/dist/huibo-ui/p-4d8b1404.entry.js.map +1 -0
  979. package/dist/huibo-ui/p-4ef5a884.js +2 -0
  980. package/dist/huibo-ui/p-4ef5a884.js.map +1 -0
  981. package/dist/huibo-ui/p-58d20809.entry.js +2 -0
  982. package/dist/huibo-ui/p-58d20809.entry.js.map +1 -0
  983. package/dist/huibo-ui/p-58ebb9b3.entry.js +2 -0
  984. package/dist/huibo-ui/p-58ebb9b3.entry.js.map +1 -0
  985. package/dist/huibo-ui/p-59b2e61c.entry.js +2 -0
  986. package/dist/huibo-ui/p-59b2e61c.entry.js.map +1 -0
  987. package/dist/huibo-ui/p-5df47135.entry.js +2 -0
  988. package/dist/huibo-ui/p-5df47135.entry.js.map +1 -0
  989. package/dist/huibo-ui/p-64ca0980.entry.js +2 -0
  990. package/dist/huibo-ui/p-64ca0980.entry.js.map +1 -0
  991. package/dist/huibo-ui/p-672076c3.entry.js +2 -0
  992. package/dist/huibo-ui/p-672076c3.entry.js.map +1 -0
  993. package/dist/huibo-ui/p-6a1ec3ff.entry.js +2 -0
  994. package/dist/huibo-ui/p-6a1ec3ff.entry.js.map +1 -0
  995. package/dist/huibo-ui/p-6ac242fe.entry.js +2 -0
  996. package/dist/huibo-ui/p-6ac242fe.entry.js.map +1 -0
  997. package/dist/huibo-ui/p-6b381d0e.entry.js +2 -0
  998. package/dist/huibo-ui/p-6b381d0e.entry.js.map +1 -0
  999. package/dist/huibo-ui/p-710f38de.entry.js +2 -0
  1000. package/dist/huibo-ui/p-710f38de.entry.js.map +1 -0
  1001. package/dist/huibo-ui/p-756acbdb.entry.js +2 -0
  1002. package/dist/huibo-ui/p-756acbdb.entry.js.map +1 -0
  1003. package/dist/huibo-ui/p-75a93de3.entry.js +2 -0
  1004. package/dist/huibo-ui/p-75a93de3.entry.js.map +1 -0
  1005. package/dist/huibo-ui/p-769960f4.entry.js +2 -0
  1006. package/dist/huibo-ui/p-769960f4.entry.js.map +1 -0
  1007. package/dist/huibo-ui/p-77017274.entry.js +2 -0
  1008. package/dist/huibo-ui/p-77017274.entry.js.map +1 -0
  1009. package/dist/huibo-ui/p-7f6975ad.entry.js +2 -0
  1010. package/dist/huibo-ui/p-7f6975ad.entry.js.map +1 -0
  1011. package/dist/huibo-ui/p-80aca641.entry.js +2 -0
  1012. package/dist/huibo-ui/p-80aca641.entry.js.map +1 -0
  1013. package/dist/huibo-ui/p-85f68526.entry.js +2 -0
  1014. package/dist/huibo-ui/p-85f68526.entry.js.map +1 -0
  1015. package/dist/huibo-ui/p-88127de1.entry.js +2 -0
  1016. package/dist/huibo-ui/p-88127de1.entry.js.map +1 -0
  1017. package/dist/huibo-ui/p-8b027491.entry.js +2 -0
  1018. package/dist/huibo-ui/p-8b027491.entry.js.map +1 -0
  1019. package/dist/huibo-ui/p-8b1ae77e.entry.js +2 -0
  1020. package/dist/huibo-ui/p-8b1ae77e.entry.js.map +1 -0
  1021. package/dist/huibo-ui/p-8c80a765.entry.js +2 -0
  1022. package/dist/huibo-ui/p-8c80a765.entry.js.map +1 -0
  1023. package/dist/huibo-ui/p-8c987d57.entry.js +2 -0
  1024. package/dist/huibo-ui/p-8c987d57.entry.js.map +1 -0
  1025. package/dist/huibo-ui/p-8d615521.entry.js +2 -0
  1026. package/dist/huibo-ui/p-8d615521.entry.js.map +1 -0
  1027. package/dist/huibo-ui/p-8d925e3d.entry.js +2 -0
  1028. package/dist/huibo-ui/p-8d925e3d.entry.js.map +1 -0
  1029. package/dist/huibo-ui/p-9319c650.entry.js +2 -0
  1030. package/dist/huibo-ui/p-9319c650.entry.js.map +1 -0
  1031. package/dist/huibo-ui/p-953b9514.entry.js +2 -0
  1032. package/dist/huibo-ui/p-953b9514.entry.js.map +1 -0
  1033. package/dist/huibo-ui/p-965d4d02.entry.js +2 -0
  1034. package/dist/huibo-ui/p-965d4d02.entry.js.map +1 -0
  1035. package/dist/huibo-ui/p-a0015341.entry.js +2 -0
  1036. package/dist/huibo-ui/p-a0015341.entry.js.map +1 -0
  1037. package/dist/huibo-ui/p-a042e3d0.entry.js +2 -0
  1038. package/dist/huibo-ui/p-a042e3d0.entry.js.map +1 -0
  1039. package/dist/huibo-ui/p-ad6b0c6e.entry.js +2 -0
  1040. package/dist/huibo-ui/p-ad6b0c6e.entry.js.map +1 -0
  1041. package/dist/huibo-ui/p-b489a526.entry.js +2 -0
  1042. package/dist/huibo-ui/p-b489a526.entry.js.map +1 -0
  1043. package/dist/huibo-ui/p-be48d2aa.entry.js +2 -0
  1044. package/dist/huibo-ui/p-be48d2aa.entry.js.map +1 -0
  1045. package/dist/huibo-ui/p-c1a059d9.entry.js +2 -0
  1046. package/dist/huibo-ui/p-c1a059d9.entry.js.map +1 -0
  1047. package/dist/huibo-ui/p-c1b4eacb.entry.js +2 -0
  1048. package/dist/huibo-ui/p-c1b4eacb.entry.js.map +1 -0
  1049. package/dist/huibo-ui/p-c321c4aa.entry.js +2 -0
  1050. package/dist/huibo-ui/p-c321c4aa.entry.js.map +1 -0
  1051. package/dist/huibo-ui/p-c3e665f6.entry.js +2 -0
  1052. package/dist/huibo-ui/p-c3e665f6.entry.js.map +1 -0
  1053. package/dist/huibo-ui/p-c3e8893d.entry.js +2 -0
  1054. package/dist/huibo-ui/p-c3e8893d.entry.js.map +1 -0
  1055. package/dist/huibo-ui/p-c922d672.entry.js +2 -0
  1056. package/dist/huibo-ui/p-c922d672.entry.js.map +1 -0
  1057. package/dist/huibo-ui/p-cc0aeb50.js +2 -0
  1058. package/dist/huibo-ui/p-cc0aeb50.js.map +1 -0
  1059. package/dist/huibo-ui/p-cf94cbf6.js +2 -0
  1060. package/dist/huibo-ui/p-cf94cbf6.js.map +1 -0
  1061. package/dist/huibo-ui/p-d3939d44.entry.js +2 -0
  1062. package/dist/huibo-ui/p-d3939d44.entry.js.map +1 -0
  1063. package/dist/huibo-ui/p-d64b91ef.entry.js +2 -0
  1064. package/dist/huibo-ui/p-d64b91ef.entry.js.map +1 -0
  1065. package/dist/huibo-ui/p-d7815b4f.entry.js +2 -0
  1066. package/dist/huibo-ui/p-d7815b4f.entry.js.map +1 -0
  1067. package/dist/huibo-ui/p-d87fc21a.entry.js +2 -0
  1068. package/dist/huibo-ui/p-d87fc21a.entry.js.map +1 -0
  1069. package/dist/huibo-ui/p-dd05cb2c.entry.js +2 -0
  1070. package/dist/huibo-ui/p-dd05cb2c.entry.js.map +1 -0
  1071. package/dist/huibo-ui/p-dfaf7e37.entry.js +2 -0
  1072. package/dist/huibo-ui/p-dfaf7e37.entry.js.map +1 -0
  1073. package/dist/huibo-ui/p-e004fc81.entry.js +2 -0
  1074. package/dist/huibo-ui/p-e004fc81.entry.js.map +1 -0
  1075. package/dist/huibo-ui/p-e0768565.entry.js +2 -0
  1076. package/dist/huibo-ui/p-e0768565.entry.js.map +1 -0
  1077. package/dist/huibo-ui/p-e0ab9010.entry.js +2 -0
  1078. package/dist/huibo-ui/p-e0ab9010.entry.js.map +1 -0
  1079. package/dist/huibo-ui/p-e1255160.js +2 -0
  1080. package/dist/huibo-ui/p-e1255160.js.map +1 -0
  1081. package/dist/huibo-ui/p-e2a8a396.entry.js +2 -0
  1082. package/dist/huibo-ui/p-e2a8a396.entry.js.map +1 -0
  1083. package/dist/huibo-ui/p-e36bbe6f.entry.js +2 -0
  1084. package/dist/huibo-ui/p-e36bbe6f.entry.js.map +1 -0
  1085. package/dist/huibo-ui/p-e42dfa95.js +3 -0
  1086. package/dist/huibo-ui/p-e42dfa95.js.map +1 -0
  1087. package/dist/huibo-ui/p-e6f2d71d.entry.js +2 -0
  1088. package/dist/huibo-ui/p-e6f2d71d.entry.js.map +1 -0
  1089. package/dist/huibo-ui/p-e9490259.entry.js +2 -0
  1090. package/dist/huibo-ui/p-e9490259.entry.js.map +1 -0
  1091. package/dist/huibo-ui/p-ea74fcae.entry.js +2 -0
  1092. package/dist/huibo-ui/p-ea74fcae.entry.js.map +1 -0
  1093. package/dist/huibo-ui/p-ebd04656.entry.js +2 -0
  1094. package/dist/huibo-ui/p-ebd04656.entry.js.map +1 -0
  1095. package/dist/huibo-ui/p-ecce2b5e.js +2 -0
  1096. package/dist/huibo-ui/p-ecce2b5e.js.map +1 -0
  1097. package/dist/huibo-ui/p-ed0ff857.entry.js +2 -0
  1098. package/dist/huibo-ui/p-ed0ff857.entry.js.map +1 -0
  1099. package/dist/huibo-ui/p-f0ac7db5.entry.js +2 -0
  1100. package/dist/huibo-ui/p-f0ac7db5.entry.js.map +1 -0
  1101. package/dist/huibo-ui/p-f1c084c5.entry.js +2 -0
  1102. package/dist/huibo-ui/p-f1c084c5.entry.js.map +1 -0
  1103. package/dist/huibo-ui/p-f374d5a3.entry.js +2 -0
  1104. package/dist/huibo-ui/p-f374d5a3.entry.js.map +1 -0
  1105. package/dist/huibo-ui/p-f81ec512.entry.js +2 -0
  1106. package/dist/huibo-ui/p-f81ec512.entry.js.map +1 -0
  1107. package/dist/huibo-ui/p-fd19813c.entry.js +2 -0
  1108. package/dist/huibo-ui/p-fd19813c.entry.js.map +1 -0
  1109. package/dist/index.cjs.js +1 -0
  1110. package/dist/index.js +1 -0
  1111. package/dist/types/components/Affix/Affix.d.ts +27 -0
  1112. package/dist/types/components/Alert/Alert.d.ts +23 -0
  1113. package/dist/types/components/Anchor/Anchor.d.ts +28 -0
  1114. package/dist/types/components/Avatar/Avatar.d.ts +9 -0
  1115. package/dist/types/components/Backtop/Backtop.d.ts +33 -0
  1116. package/dist/types/components/Badge/Badge.d.ts +9 -0
  1117. package/dist/types/components/Breadcrumb/Breadcrumb.d.ts +9 -0
  1118. package/dist/types/components/Breadcrumb/BreadcrumbItem.d.ts +9 -0
  1119. package/dist/types/components/Button/Button.d.ts +17 -0
  1120. package/dist/types/components/Calendar/Calendar.d.ts +35 -0
  1121. package/dist/types/components/Card/Card.d.ts +6 -0
  1122. package/dist/types/components/Carousel/Carousel.d.ts +45 -0
  1123. package/dist/types/components/Cascader/Cascader.d.ts +150 -0
  1124. package/dist/types/components/Checkbox/Checkbox.d.ts +66 -0
  1125. package/dist/types/components/Checkbox/CheckboxGroup.d.ts +46 -0
  1126. package/dist/types/components/Collapse/Collapse.d.ts +7 -0
  1127. package/dist/types/components/Collapse/CollapseItem.d.ts +17 -0
  1128. package/dist/types/components/ColorPicker/ColorPicker.d.ts +59 -0
  1129. package/dist/types/components/ColorPickerPanel/ColorPickerPanel.d.ts +35 -0
  1130. package/dist/types/components/ConfigProvider/ConfigProvider.d.ts +17 -0
  1131. package/dist/types/components/Container/Aside.d.ts +11 -0
  1132. package/dist/types/components/Container/Container.d.ts +12 -0
  1133. package/dist/types/components/Container/Footer.d.ts +11 -0
  1134. package/dist/types/components/Container/Header.d.ts +11 -0
  1135. package/dist/types/components/Container/Main.d.ts +7 -0
  1136. package/dist/types/components/DatePicker/DatePicker.d.ts +53 -0
  1137. package/dist/types/components/DatePickerPane/DatePickerPane.d.ts +40 -0
  1138. package/dist/types/components/DateRangePicker/DateRangePicker.d.ts +68 -0
  1139. package/dist/types/components/DateTimePicker/DateTimePicker.d.ts +41 -0
  1140. package/dist/types/components/Descriptions/Descriptions.d.ts +22 -0
  1141. package/dist/types/components/Dialog/Dialog.d.ts +42 -0
  1142. package/dist/types/components/Divider/Divider.d.ts +14 -0
  1143. package/dist/types/components/Drawer/Drawer.d.ts +24 -0
  1144. package/dist/types/components/Dropdown/Dropdown.d.ts +32 -0
  1145. package/dist/types/components/Empty/Empty.d.ts +5 -0
  1146. package/dist/types/components/FloatButton/FloatButton.d.ts +29 -0
  1147. package/dist/types/components/Form/Form.d.ts +41 -0
  1148. package/dist/types/components/Form/FormItem.d.ts +30 -0
  1149. package/dist/types/components/Icon/Icon.d.ts +17 -0
  1150. package/dist/types/components/Image/Image.d.ts +16 -0
  1151. package/dist/types/components/ImagePreview/ImagePreview.d.ts +59 -0
  1152. package/dist/types/components/Input/Input.d.ts +133 -0
  1153. package/dist/types/components/InputNumber/InputNumber.d.ts +89 -0
  1154. package/dist/types/components/InputTag/InputTag.d.ts +79 -0
  1155. package/dist/types/components/Layout/Layout.d.ts +48 -0
  1156. package/dist/types/components/Layout/Row.d.ts +26 -0
  1157. package/dist/types/components/Link/Link.d.ts +40 -0
  1158. package/dist/types/components/Loading/Loading.d.ts +13 -0
  1159. package/dist/types/components/Menu/Menu.d.ts +34 -0
  1160. package/dist/types/components/Menu/MenuItem.d.ts +17 -0
  1161. package/dist/types/components/Menu/SubMenu.d.ts +30 -0
  1162. package/dist/types/components/Message/Message.d.ts +20 -0
  1163. package/dist/types/components/Message/show-message.d.ts +13 -0
  1164. package/dist/types/components/Notification/Notification.d.ts +33 -0
  1165. package/dist/types/components/Notification/notify.d.ts +19 -0
  1166. package/dist/types/components/PageHeader/PageHeader.d.ts +19 -0
  1167. package/dist/types/components/Pagination/Pagination.d.ts +35 -0
  1168. package/dist/types/components/Popconfirm/Popconfirm.d.ts +20 -0
  1169. package/dist/types/components/Popover/Popover.d.ts +18 -0
  1170. package/dist/types/components/Progress/Progress.d.ts +9 -0
  1171. package/dist/types/components/Radio/Radio.d.ts +57 -0
  1172. package/dist/types/components/Rate/Rate.d.ts +64 -0
  1173. package/dist/types/components/Result/Result.d.ts +22 -0
  1174. package/dist/types/components/Scrollbar/Scrollbar.d.ts +75 -0
  1175. package/dist/types/components/Segmented/Segmented.d.ts +24 -0
  1176. package/dist/types/components/Select/Select.d.ts +100 -0
  1177. package/dist/types/components/Skeleton/Skeleton.d.ts +22 -0
  1178. package/dist/types/components/Slider/Slider.d.ts +81 -0
  1179. package/dist/types/components/Space/Space.d.ts +37 -0
  1180. package/dist/types/components/Statistic/Statistic.d.ts +25 -0
  1181. package/dist/types/components/Steps/Step.d.ts +7 -0
  1182. package/dist/types/components/Steps/Steps.d.ts +15 -0
  1183. package/dist/types/components/Switch/Switch.d.ts +58 -0
  1184. package/dist/types/components/Table/Table.d.ts +184 -0
  1185. package/dist/types/components/Tabs/TabPane.d.ts +12 -0
  1186. package/dist/types/components/Tabs/Tabs.d.ts +32 -0
  1187. package/dist/types/components/Tag/Tag.d.ts +21 -0
  1188. package/dist/types/components/Text/Text.d.ts +37 -0
  1189. package/dist/types/components/TimePicker/TimePicker.d.ts +62 -0
  1190. package/dist/types/components/TimeSelect/TimeSelect.d.ts +69 -0
  1191. package/dist/types/components/Timeline/Timeline.d.ts +16 -0
  1192. package/dist/types/components/Tooltip/Tooltip.d.ts +28 -0
  1193. package/dist/types/components/Tour/Tour.d.ts +39 -0
  1194. package/dist/types/components/Transfer/Transfer.d.ts +73 -0
  1195. package/dist/types/components/Tree/Tree.d.ts +113 -0
  1196. package/dist/types/components/TreeSelect/TreeSelect.d.ts +71 -0
  1197. package/dist/types/components/Upload/Upload.d.ts +55 -0
  1198. package/dist/types/components/Watermark/Watermark.d.ts +25 -0
  1199. package/dist/types/components.d.ts +8261 -0
  1200. package/dist/types/index.d.ts +10 -0
  1201. package/dist/types/stencil-public-runtime.d.ts +1680 -0
  1202. package/dist/types/utils/a11y.d.ts +66 -0
  1203. package/dist/types/utils/click-outside.d.ts +20 -0
  1204. package/dist/types/utils/date-helpers.d.ts +41 -0
  1205. package/dist/types/utils/form-input-base.d.ts +62 -0
  1206. package/dist/types/utils/popup-manager.d.ts +17 -0
  1207. package/loader/cdn.js +1 -0
  1208. package/loader/index.cjs.js +1 -0
  1209. package/loader/index.d.ts +24 -0
  1210. package/loader/index.es2017.js +1 -0
  1211. package/loader/index.js +2 -0
  1212. package/loader/package.json +11 -0
  1213. package/package.json +93 -0
  1214. package/readme.md +111 -0
@@ -0,0 +1 @@
1
+ {"file":"hb-timeline.entry.js","mappings":";;AAAA,MAAM,WAAW,GAAG,gqPAAgqP,CAAC;AACrrP,yBAAe,WAAW;;MCMb,QAAQ;;;;;IAEX,IAAI,GAAmC,MAAM,CAAC;;IAG9C,KAAK,GAAmB,EAAE,CAAC;IAEnC,MAAM;QACJ,QACE,4DAAK,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,gBAAgB,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,IACrE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,MACtB,WACE,KAAK,EAAE;gBACL,mBAAmB,EAAE,IAAI;gBACzB,0BAA0B,EAAE,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;gBACpE,yBAAyB,EAAE,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;aACpE,IAED,WAAK,KAAK,EAAC,sBAAsB,IAC/B,WAAK,KAAK,EAAC,2BAA2B,IAAE,IAAI,CAAC,OAAO,CAAO,EAC1D,IAAI,CAAC,IAAI,IAAI,WAAK,KAAK,EAAC,mBAAmB,IAAE,IAAI,CAAC,IAAI,CAAO,CAC1D,EACN,WAAK,KAAK,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,qBAAqB,IAAI,CAAC,KAAK,IAAI,MAAM,EAAE,GAAG,IAAI,EAAE,GAAQ,CACjG,CACP,CAAC,CACE,EACN;KACH;;;;;;","names":[],"sources":["src/components/Timeline/timeline.css?tag=hb-timeline&encapsulation=shadow","src/components/Timeline/Timeline.tsx"],"sourcesContent":[":host { display: block; }\n.hb-timeline { position: relative; padding: var(--hb-spacing-sm) 0; }\n\n/* 左右两侧共享的竖线(left/right 模式) */\n.hb-timeline--left { padding-left: 20px; }\n.hb-timeline--right { padding-right: 20px; }\n.hb-timeline--left::before,\n.hb-timeline--right::before {\n content: '';\n position: absolute;\n top: var(--hb-spacing-sm);\n bottom: var(--hb-spacing-sm);\n width: 2px;\n background: var(--hb-color-border-secondary);\n}\n.hb-timeline--left::before { left: 5px; }\n.hb-timeline--right::before { right: 5px; }\n\n/* 交替模式:竖线居中 */\n.hb-timeline--alternate::before {\n content: '';\n position: absolute;\n top: var(--hb-spacing-sm);\n bottom: var(--hb-spacing-sm);\n left: 50%;\n transform: translateX(-50%);\n width: 2px;\n background: var(--hb-color-border-secondary);\n}\n\n.hb-timeline__item {\n position: relative;\n padding-bottom: var(--hb-spacing-md);\n display: flex;\n align-items: flex-start;\n}\n/* left 模式:内容在右 */\n.hb-timeline--left .hb-timeline__item { padding-left: 18px; }\n.hb-timeline--left .hb-timeline__dot { position: absolute; left: -18px; top: 4px; }\n\n/* right 模式:内容在左 */\n.hb-timeline--right .hb-timeline__item { justify-content: flex-end; padding-right: 18px; }\n.hb-timeline--right .hb-timeline__dot { position: absolute; right: -18px; top: 4px; }\n\n/* alternate 模式:左右交替 */\n.hb-timeline--alternate .hb-timeline__item { width: 50%; }\n.hb-timeline--alternate .hb-timeline__item--left { left: 0; padding-right: 24px; text-align: right; }\n.hb-timeline--alternate .hb-timeline__item--right { margin-left: 50%; padding-left: 24px; }\n.hb-timeline--alternate .hb-timeline__dot {\n position: absolute;\n top: 4px;\n}\n.hb-timeline--alternate .hb-timeline__item--left .hb-timeline__dot { right: -7px; }\n.hb-timeline--alternate .hb-timeline__item--right .hb-timeline__dot { left: -7px; }\n\n.hb-timeline__content { min-width: 0; }\n.hb-timeline__content-text { font-size: var(--hb-font-size-sm); color: var(--hb-color-text); }\n.hb-timeline__time { font-size: var(--hb-font-size-xs); color: var(--hb-color-text-secondary); margin-top: 2px; }\n\n.hb-timeline__dot {\n width: 10px;\n height: 10px;\n border-radius: 50%;\n flex-shrink: 0;\n border: 2px solid var(--hb-color-bg-container);\n z-index: 1;\n}\n.hb-timeline__dot--blue { background: var(--hb-color-primary); }\n.hb-timeline__dot--green { background: var(--hb-color-success); }\n.hb-timeline__dot--red { background: var(--hb-color-danger); }\n.hb-timeline__dot--gray { background: var(--hb-color-text-quaternary); }\n","import { Component, h, Prop } from '@stencil/core';\n\n/**\n * Timeline 时间线组件\n * 按竖线渲染每个 item 的圆点 + 内容 + 时间,支持左/右/交替三种模式\n */\n@Component({ tag: 'hb-timeline', styleUrl: 'timeline.css', shadow: true })\nexport class Timeline {\n /** 时间线模式 */\n @Prop() mode: 'left' | 'alternate' | 'right' = 'left';\n\n /** 时间线节点数组 */\n @Prop() items: TimelineItem[] = [];\n\n render() {\n return (\n <div class={{ 'hb-timeline': true, [`hb-timeline--${this.mode}`]: true }}>\n {this.items.map((item, i) => (\n <div\n class={{\n 'hb-timeline__item': true,\n 'hb-timeline__item--right': this.mode === 'alternate' && i % 2 === 1,\n 'hb-timeline__item--left': this.mode === 'alternate' && i % 2 === 0,\n }}\n >\n <div class=\"hb-timeline__content\">\n <div class=\"hb-timeline__content-text\">{item.content}</div>\n {item.time && <div class=\"hb-timeline__time\">{item.time}</div>}\n </div>\n <div class={{ 'hb-timeline__dot': true, [`hb-timeline__dot--${item.color || 'blue'}`]: true }}></div>\n </div>\n ))}\n </div>\n );\n }\n}\n\nexport interface TimelineItem {\n content: string;\n time?: string;\n color?: 'blue' | 'green' | 'red' | 'gray';\n}\n"],"version":3}
@@ -0,0 +1,70 @@
1
+ import { r as registerInstance, g as getElement, h } from './index-fdf7135e.js';
2
+ import { c as computePosition, g as getNextZIndex } from './popup-manager-128cc685.js';
3
+
4
+ const tooltipCss = "/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{border:0 solid;box-sizing:border-box;margin:0;padding:0}::file-selector-button{appearance:button;background-color:#0000;border:0 solid;border-radius:0;box-sizing:border-box;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;margin:0;margin-inline-end:4px;opacity:1;padding:0}:host,html{-webkit-text-size-adjust:100%;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);line-height:1.5;tab-size:4;-webkit-tap-highlight-color:transparent}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-size:1em;font-variation-settings:var(--default-mono-font-variation-settings,normal)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}button,input,optgroup,select,textarea{background-color:#0000;border-radius:0;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex;padding-block:0}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}} /*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */@layer properties{}@layer base{}@layer components;.hb-tooltip__trigger,:host{display:inline-block}.hb-tooltip__popup{background-color:var(--hb-p-gray-800);border-radius:var(--hb-border-radius-sm);box-shadow:var(--hb-box-shadow);color:#fff;font-size:var(--hb-font-size-sm);pointer-events:auto;word-wrap:break-word;animation:hb-tooltip-fade-in .15s ease-out;line-height:1.4;max-width:300px;padding:6px 12px;position:fixed}.hb-tooltip__arrow{background-color:var(--hb-p-gray-800);height:8px;position:absolute;transform:rotate(45deg);width:8px}.hb-tooltip__content{position:relative;z-index:1}@keyframes hb-tooltip-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}";
5
+ const HbTooltipStyle0 = tooltipCss;
6
+
7
+ const Tooltip = class {
8
+ constructor(hostRef) {
9
+ registerInstance(this, hostRef);
10
+ }
11
+ get el() { return getElement(this); }
12
+ /** 提示文字 */
13
+ content = '';
14
+ /** 弹出位置 */
15
+ placement = 'top';
16
+ /** 触发方式 */
17
+ trigger = 'hover';
18
+ /** 是否禁用 */
19
+ disabled = false;
20
+ /** 是否显示箭头 */
21
+ showArrow = true;
22
+ visible = false;
23
+ popupStyle = {};
24
+ triggerRef;
25
+ popupRef;
26
+ hideTimer;
27
+ show = () => {
28
+ if (this.disabled)
29
+ return;
30
+ clearTimeout(this.hideTimer);
31
+ this.visible = true;
32
+ requestAnimationFrame(() => this.updatePosition());
33
+ };
34
+ hide = () => {
35
+ this.hideTimer = setTimeout(() => { this.visible = false; }, 100);
36
+ };
37
+ toggle = () => {
38
+ if (this.disabled)
39
+ return;
40
+ if (this.visible) {
41
+ this.hide();
42
+ }
43
+ else {
44
+ this.show();
45
+ }
46
+ };
47
+ updatePosition() {
48
+ if (!this.triggerRef || !this.popupRef)
49
+ return;
50
+ const triggerRect = this.triggerRef.getBoundingClientRect();
51
+ const { width, height } = this.popupRef.getBoundingClientRect();
52
+ const pos = computePosition(triggerRect, width, height, this.placement, 8);
53
+ this.popupStyle = {
54
+ top: `${pos.top}px`,
55
+ left: `${pos.left}px`,
56
+ zIndex: String(getNextZIndex()),
57
+ };
58
+ }
59
+ render() {
60
+ const triggerEvents = this.trigger === 'hover'
61
+ ? { onMouseEnter: this.show, onMouseLeave: this.hide }
62
+ : { onClick: this.toggle };
63
+ return (h("div", { key: 'e98d79b104fc92f63d77cbd87c490d84e0646c64', class: "hb-tooltip", ...triggerEvents }, h("div", { key: '74088a95833070259d447d57e03a894f20d0e044', ref: (el) => { this.triggerRef = el; }, class: "hb-tooltip__trigger" }, h("slot", { key: 'ce84437a1fedd763630764a5627763a4601d195e' })), this.visible && (h("div", { key: '1b5b74c439a5925c3cf10fc552369bd83354fcf4', ref: (el) => { this.popupRef = el; }, class: "hb-tooltip__popup", style: this.popupStyle, onMouseEnter: () => this.trigger === 'hover' && this.show(), onMouseLeave: () => this.trigger === 'hover' && this.hide() }, this.showArrow && h("div", { key: '73b08948dcc030a487a0d0f11afbb2fb4bcbdc51', class: "hb-tooltip__arrow" }), h("div", { key: '564f396c5eb5e3cb5bffe7dc8ec956c54bfc484d', class: "hb-tooltip__content" }, this.content)))));
64
+ }
65
+ };
66
+ Tooltip.style = HbTooltipStyle0;
67
+
68
+ export { Tooltip as hb_tooltip };
69
+
70
+ //# sourceMappingURL=hb-tooltip.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"hb-tooltip.entry.js","mappings":"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","names":[],"sources":["src/components/Tooltip/tooltip.css?tag=hb-tooltip&encapsulation=shadow","src/components/Tooltip/Tooltip.tsx"],"sourcesContent":[":host {\n display: inline-block;\n}\n\n.hb-tooltip__trigger {\n display: inline-block;\n}\n\n.hb-tooltip__popup {\n position: fixed;\n padding: 6px 12px;\n border-radius: var(--hb-border-radius-sm);\n background-color: var(--hb-p-gray-800);\n color: #fff;\n font-size: var(--hb-font-size-sm);\n line-height: 1.4;\n pointer-events: auto;\n box-shadow: var(--hb-box-shadow);\n animation: hb-tooltip-fade-in 0.15s ease-out;\n max-width: 300px;\n word-wrap: break-word;\n}\n\n.hb-tooltip__arrow {\n position: absolute;\n width: 8px;\n height: 8px;\n background-color: var(--hb-p-gray-800);\n transform: rotate(45deg);\n}\n\n.hb-tooltip__content {\n position: relative;\n z-index: 1;\n}\n\n@keyframes hb-tooltip-fade-in {\n from { opacity: 0; transform: scale(0.95); }\n to { opacity: 1; transform: scale(1); }\n}\n","import { Component, h, Prop, State, Element } from '@stencil/core';\nimport { computePosition, getNextZIndex, Placement } from '../../utils/popup-manager';\n\n/**\n * Tooltip 文字提示组件\n * 鼠标悬停或点击时显示提示文字\n */\n@Component({\n tag: 'hb-tooltip',\n styleUrl: 'tooltip.css',\n shadow: true,\n})\nexport class Tooltip {\n @Element() el: HTMLElement;\n\n /** 提示文字 */\n @Prop() content: string = '';\n\n /** 弹出位置 */\n @Prop() placement: Placement = 'top';\n\n /** 触发方式 */\n @Prop() trigger: 'hover' | 'click' = 'hover';\n\n /** 是否禁用 */\n @Prop() disabled: boolean = false;\n\n /** 是否显示箭头 */\n @Prop() showArrow: boolean = true;\n\n @State() visible: boolean = false;\n @State() popupStyle: Record<string, string> = {};\n\n private triggerRef?: HTMLElement;\n private popupRef?: HTMLDivElement;\n private hideTimer?: ReturnType<typeof setTimeout>;\n\n private show = () => {\n if (this.disabled) return;\n clearTimeout(this.hideTimer);\n this.visible = true;\n requestAnimationFrame(() => this.updatePosition());\n };\n\n private hide = () => {\n this.hideTimer = setTimeout(() => { this.visible = false; }, 100);\n };\n\n private toggle = () => {\n if (this.disabled) return;\n if (this.visible) {\n this.hide();\n } else {\n this.show();\n }\n };\n\n private updatePosition() {\n if (!this.triggerRef || !this.popupRef) return;\n const triggerRect = this.triggerRef.getBoundingClientRect();\n const { width, height } = this.popupRef.getBoundingClientRect();\n const pos = computePosition(triggerRect, width, height, this.placement, 8);\n this.popupStyle = {\n top: `${pos.top}px`,\n left: `${pos.left}px`,\n zIndex: String(getNextZIndex()),\n };\n }\n\n render() {\n const triggerEvents = this.trigger === 'hover'\n ? { onMouseEnter: this.show, onMouseLeave: this.hide }\n : { onClick: this.toggle };\n\n return (\n <div class=\"hb-tooltip\" {...triggerEvents}>\n <div\n ref={(el: any) => { this.triggerRef = el; }}\n class=\"hb-tooltip__trigger\"\n >\n <slot />\n </div>\n {this.visible && (\n <div\n ref={(el: any) => { this.popupRef = el; }}\n class=\"hb-tooltip__popup\"\n style={this.popupStyle}\n onMouseEnter={() => this.trigger === 'hover' && this.show()}\n onMouseLeave={() => this.trigger === 'hover' && this.hide()}\n >\n {this.showArrow && <div class=\"hb-tooltip__arrow\" />}\n <div class=\"hb-tooltip__content\">{this.content}</div>\n </div>\n )}\n </div>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,115 @@
1
+ import { r as registerInstance, c as createEvent, g as getElement, h } from './index-fdf7135e.js';
2
+
3
+ const tourCss = "/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{border:0 solid;box-sizing:border-box;margin:0;padding:0}::file-selector-button{appearance:button;background-color:#0000;border:0 solid;border-radius:0;box-sizing:border-box;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;margin:0;margin-inline-end:4px;opacity:1;padding:0}:host,html{-webkit-text-size-adjust:100%;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);line-height:1.5;tab-size:4;-webkit-tap-highlight-color:transparent}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-size:1em;font-variation-settings:var(--default-mono-font-variation-settings,normal)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}button,input,optgroup,select,textarea{background-color:#0000;border-radius:0;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex;padding-block:0}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}} /*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */@layer properties{}@layer base{}@layer components;:host{display:block}.hb-tour{inset:0;pointer-events:auto;position:fixed;z-index:var(--hb-z-index-popover)}.hb-tour__mask{background:0 0;cursor:default;inset:0;position:absolute}.hb-tour__card{background-color:var(--hb-color-bg-elevated);border-radius:var(--hb-border-radius-base);box-shadow:var(--hb-box-shadow-lg);color:var(--hb-color-text);font-size:var(--hb-font-size-sm);max-width:calc(100vw - 32px);padding:var(--hb-spacing-lg);position:absolute;width:340px;z-index:1}.hb-tour__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--hb-spacing-sm)}.hb-tour__title{color:var(--hb-color-text-primary);font-size:var(--hb-font-size-lg);font-weight:600}.hb-tour__close{align-items:center;background:0 0;border:none;border-radius:50%;color:var(--hb-color-text-tertiary);cursor:pointer;display:inline-flex;font-size:18px;height:24px;justify-content:center;line-height:1;transition:background-color var(--hb-transition-duration),color var(--hb-transition-duration);width:24px}.hb-tour__close:hover{background-color:var(--hb-color-fill-tertiary);color:var(--hb-color-text-secondary)}.hb-tour__body{color:var(--hb-color-text-secondary);line-height:1.6;margin-bottom:var(--hb-spacing-lg)}.hb-tour__footer{align-items:center;display:flex;justify-content:space-between}.hb-tour__indicator{color:var(--hb-color-text-tertiary);font-size:var(--hb-font-size-xs)}.hb-tour__actions{gap:var(--hb-spacing-xs)}.hb-tour__actions,.hb-tour__btn{align-items:center;display:inline-flex}.hb-tour__btn{background-color:var(--hb-color-bg-elevated);border:1px solid var(--hb-color-border);border-radius:var(--hb-border-radius-base);color:var(--hb-color-text);cursor:pointer;font-size:var(--hb-font-size-sm);height:32px;justify-content:center;padding:0 var(--hb-spacing-lg);transition:all var(--hb-transition-duration)}.hb-tour__btn:hover{border-color:var(--hb-color-primary-border);color:var(--hb-color-primary)}.hb-tour__btn--next{background-color:var(--hb-color-primary);border-color:var(--hb-color-primary);color:var(--hb-color-text-inverse)}.hb-tour__btn--next:hover{background-color:var(--hb-color-primary-hover);border-color:var(--hb-color-primary-hover);color:var(--hb-color-text-inverse)}@property --tw-rotate-x{syntax:\"*\";inherits:false}@property --tw-rotate-y{syntax:\"*\";inherits:false}@property --tw-rotate-z{syntax:\"*\";inherits:false}@property --tw-skew-x{syntax:\"*\";inherits:false}@property --tw-skew-y{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}";
4
+ const HbTourStyle0 = tourCss;
5
+
6
+ const Tour = class {
7
+ constructor(hostRef) {
8
+ registerInstance(this, hostRef);
9
+ this.hbChange = createEvent(this, "hbChange", 7);
10
+ this.hbClose = createEvent(this, "hbClose", 7);
11
+ }
12
+ get el() { return getElement(this); }
13
+ /** 是否显示(受控) */
14
+ visible = false;
15
+ /** 步骤列表 */
16
+ steps = [];
17
+ /** 当前步骤索引 */
18
+ current = 0;
19
+ /** 步骤变化事件,detail 为新 current */
20
+ hbChange;
21
+ /** 关闭事件 */
22
+ hbClose;
23
+ targetRect = null;
24
+ get currentStep() {
25
+ return this.steps[this.current];
26
+ }
27
+ get isLast() {
28
+ return this.current >= this.steps.length - 1;
29
+ }
30
+ get isFirst() {
31
+ return this.current <= 0;
32
+ }
33
+ componentDidRender() {
34
+ this.updateTargetRect();
35
+ }
36
+ componentDidUpdate() {
37
+ this.updateTargetRect();
38
+ }
39
+ updateTargetRect() {
40
+ const step = this.currentStep;
41
+ if (!step || !this.visible) {
42
+ this.targetRect = null;
43
+ return;
44
+ }
45
+ const targetEl = document.querySelector(step.target);
46
+ if (targetEl) {
47
+ this.targetRect = targetEl.getBoundingClientRect();
48
+ }
49
+ else {
50
+ this.targetRect = null;
51
+ }
52
+ }
53
+ goNext = () => {
54
+ if (this.isLast) {
55
+ this.finish();
56
+ return;
57
+ }
58
+ this.current = this.current + 1;
59
+ this.hbChange.emit(this.current);
60
+ };
61
+ goPrev = () => {
62
+ if (this.isFirst)
63
+ return;
64
+ this.current = this.current - 1;
65
+ this.hbChange.emit(this.current);
66
+ };
67
+ finish = () => {
68
+ this.visible = false;
69
+ this.hbClose.emit();
70
+ };
71
+ cardStyle() {
72
+ const rect = this.targetRect;
73
+ // jsdom 下 getBoundingClientRect 返回 0 尺寸,提供兜底位置
74
+ if (rect && (rect.width > 0 || rect.height > 0)) {
75
+ return {
76
+ left: `${rect.right + 12}px`,
77
+ top: `${rect.top}px`,
78
+ };
79
+ }
80
+ return { left: '50%', top: '50%', transform: 'translate(-50%, -50%)' };
81
+ }
82
+ maskStyle() {
83
+ const rect = this.targetRect;
84
+ if (rect && (rect.width > 0 || rect.height > 0)) {
85
+ // 4 段 box-shadow 实现镂空遮罩
86
+ const top = rect.top;
87
+ const right = window.innerWidth - rect.right;
88
+ const bottom = window.innerHeight - rect.bottom;
89
+ const left = rect.left;
90
+ return {
91
+ boxShadow: [
92
+ `0 0 0 9999px var(--hb-color-bg-mask)`,
93
+ `${left}px ${bottom}px 0 ${right}px transparent`,
94
+ `${left}px ${top}px 0 ${right}px transparent`,
95
+ `0 ${bottom}px 0 ${right}px transparent`,
96
+ `0 ${top}px 0 ${left}px transparent`,
97
+ ].join(', '),
98
+ };
99
+ }
100
+ return { background: 'var(--hb-color-bg-mask)' };
101
+ }
102
+ render() {
103
+ if (!this.visible || this.steps.length === 0)
104
+ return null;
105
+ const step = this.currentStep;
106
+ if (!step)
107
+ return null;
108
+ return (h("div", { class: "hb-tour" }, h("div", { class: "hb-tour__mask", style: this.maskStyle(), onClick: this.finish }), h("div", { class: "hb-tour__card", style: this.cardStyle(), role: "dialog", "aria-modal": "true" }, h("div", { class: "hb-tour__header" }, h("span", { class: "hb-tour__title" }, step.title), h("button", { type: "button", class: "hb-tour__close", onClick: this.finish, "aria-label": "\u5173\u95ED" }, "\u00D7")), h("div", { class: "hb-tour__body" }, step.description), h("div", { class: "hb-tour__footer" }, h("span", { class: "hb-tour__indicator" }, this.current + 1, " / ", this.steps.length), h("div", { class: "hb-tour__actions" }, !this.isFirst && (h("button", { type: "button", class: "hb-tour__btn hb-tour__btn--prev", onClick: this.goPrev }, "\u4E0A\u4E00\u6B65")), h("button", { type: "button", class: "hb-tour__btn hb-tour__btn--next", onClick: this.goNext }, this.isLast ? '完成' : '下一步'))))));
109
+ }
110
+ };
111
+ Tour.style = HbTourStyle0;
112
+
113
+ export { Tour as hb_tour };
114
+
115
+ //# sourceMappingURL=hb-tour.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"hb-tour.entry.js","mappings":"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","names":[],"sources":["src/components/Tour/tour.css?tag=hb-tour&encapsulation=shadow","src/components/Tour/Tour.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.hb-tour {\n position: fixed;\n inset: 0;\n z-index: var(--hb-z-index-popover);\n pointer-events: auto;\n}\n\n/* 镂空遮罩(box-shadow 多段方案;jsdom 下退化为纯色遮罩) */\n.hb-tour__mask {\n position: absolute;\n inset: 0;\n background: transparent;\n cursor: default;\n}\n\n.hb-tour__card {\n position: absolute;\n width: 340px;\n max-width: calc(100vw - 32px);\n padding: var(--hb-spacing-lg);\n background-color: var(--hb-color-bg-elevated);\n border-radius: var(--hb-border-radius-base);\n box-shadow: var(--hb-box-shadow-lg);\n color: var(--hb-color-text);\n font-size: var(--hb-font-size-sm);\n z-index: 1;\n}\n\n.hb-tour__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n margin-bottom: var(--hb-spacing-sm);\n}\n\n.hb-tour__title {\n font-size: var(--hb-font-size-lg);\n font-weight: 600;\n color: var(--hb-color-text-primary);\n}\n\n.hb-tour__close {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 24px;\n height: 24px;\n border: none;\n background: transparent;\n color: var(--hb-color-text-tertiary);\n cursor: pointer;\n font-size: 18px;\n line-height: 1;\n border-radius: 50%;\n transition: background-color var(--hb-transition-duration), color var(--hb-transition-duration);\n}\n.hb-tour__close:hover {\n background-color: var(--hb-color-fill-tertiary);\n color: var(--hb-color-text-secondary);\n}\n\n.hb-tour__body {\n color: var(--hb-color-text-secondary);\n line-height: 1.6;\n margin-bottom: var(--hb-spacing-lg);\n}\n\n.hb-tour__footer {\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.hb-tour__indicator {\n color: var(--hb-color-text-tertiary);\n font-size: var(--hb-font-size-xs);\n}\n\n.hb-tour__actions {\n display: inline-flex;\n align-items: center;\n gap: var(--hb-spacing-xs);\n}\n\n.hb-tour__btn {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n height: 32px;\n padding: 0 var(--hb-spacing-lg);\n font-size: var(--hb-font-size-sm);\n border-radius: var(--hb-border-radius-base);\n border: 1px solid var(--hb-color-border);\n background-color: var(--hb-color-bg-elevated);\n color: var(--hb-color-text);\n cursor: pointer;\n transition: all var(--hb-transition-duration);\n}\n.hb-tour__btn:hover {\n color: var(--hb-color-primary);\n border-color: var(--hb-color-primary-border);\n}\n\n.hb-tour__btn--next {\n background-color: var(--hb-color-primary);\n border-color: var(--hb-color-primary);\n color: var(--hb-color-text-inverse);\n}\n.hb-tour__btn--next:hover {\n background-color: var(--hb-color-primary-hover);\n border-color: var(--hb-color-primary-hover);\n color: var(--hb-color-text-inverse);\n}\n","import { Component, h, Prop, Event, EventEmitter, State, Element } from '@stencil/core';\n\nexport interface TourStep {\n /** 目标元素 CSS selector */\n target: string;\n /** 步骤标题 */\n title: string;\n /** 步骤描述 */\n description: string;\n}\n\n/**\n * Tour 引导组件\n * 通过遮罩 + 高亮卡片引导用户关注页面元素。\n */\n@Component({\n tag: 'hb-tour',\n styleUrl: 'tour.css',\n shadow: true,\n})\nexport class Tour {\n @Element() el: HTMLElement;\n\n /** 是否显示(受控) */\n @Prop({ mutable: true }) visible: boolean = false;\n\n /** 步骤列表 */\n @Prop() steps: TourStep[] = [];\n\n /** 当前步骤索引 */\n @Prop({ mutable: true }) current: number = 0;\n\n /** 步骤变化事件,detail 为新 current */\n @Event() hbChange: EventEmitter<number>;\n\n /** 关闭事件 */\n @Event() hbClose: EventEmitter<void>;\n\n @State() private targetRect: DOMRect | null = null;\n\n private get currentStep(): TourStep | undefined {\n return this.steps[this.current];\n }\n\n private get isLast(): boolean {\n return this.current >= this.steps.length - 1;\n }\n\n private get isFirst(): boolean {\n return this.current <= 0;\n }\n\n componentDidRender() {\n this.updateTargetRect();\n }\n\n componentDidUpdate() {\n this.updateTargetRect();\n }\n\n private updateTargetRect() {\n const step = this.currentStep;\n if (!step || !this.visible) {\n this.targetRect = null;\n return;\n }\n const targetEl = document.querySelector(step.target) as HTMLElement | null;\n if (targetEl) {\n this.targetRect = targetEl.getBoundingClientRect();\n } else {\n this.targetRect = null;\n }\n }\n\n private goNext = () => {\n if (this.isLast) {\n this.finish();\n return;\n }\n this.current = this.current + 1;\n this.hbChange.emit(this.current);\n };\n\n private goPrev = () => {\n if (this.isFirst) return;\n this.current = this.current - 1;\n this.hbChange.emit(this.current);\n };\n\n private finish = () => {\n this.visible = false;\n this.hbClose.emit();\n };\n\n private cardStyle(): Record<string, string> {\n const rect = this.targetRect;\n // jsdom 下 getBoundingClientRect 返回 0 尺寸,提供兜底位置\n if (rect && (rect.width > 0 || rect.height > 0)) {\n return {\n left: `${rect.right + 12}px`,\n top: `${rect.top}px`,\n };\n }\n return { left: '50%', top: '50%', transform: 'translate(-50%, -50%)' };\n }\n\n private maskStyle(): Record<string, string> {\n const rect = this.targetRect;\n if (rect && (rect.width > 0 || rect.height > 0)) {\n // 4 段 box-shadow 实现镂空遮罩\n const top = rect.top;\n const right = window.innerWidth - rect.right;\n const bottom = window.innerHeight - rect.bottom;\n const left = rect.left;\n return {\n boxShadow: [\n `0 0 0 9999px var(--hb-color-bg-mask)`,\n `${left}px ${bottom}px 0 ${right}px transparent`,\n `${left}px ${top}px 0 ${right}px transparent`,\n `0 ${bottom}px 0 ${right}px transparent`,\n `0 ${top}px 0 ${left}px transparent`,\n ].join(', '),\n };\n }\n return { background: 'var(--hb-color-bg-mask)' };\n }\n\n render() {\n if (!this.visible || this.steps.length === 0) return null;\n\n const step = this.currentStep;\n if (!step) return null;\n\n return (\n <div class=\"hb-tour\">\n <div\n class=\"hb-tour__mask\"\n style={this.maskStyle()}\n onClick={this.finish}\n />\n <div\n class=\"hb-tour__card\"\n style={this.cardStyle()}\n role=\"dialog\"\n aria-modal=\"true\"\n >\n <div class=\"hb-tour__header\">\n <span class=\"hb-tour__title\">{step.title}</span>\n <button\n type=\"button\"\n class=\"hb-tour__close\"\n onClick={this.finish}\n aria-label=\"关闭\"\n >\n ×\n </button>\n </div>\n <div class=\"hb-tour__body\">{step.description}</div>\n <div class=\"hb-tour__footer\">\n <span class=\"hb-tour__indicator\">\n {this.current + 1} / {this.steps.length}\n </span>\n <div class=\"hb-tour__actions\">\n {!this.isFirst && (\n <button type=\"button\" class=\"hb-tour__btn hb-tour__btn--prev\" onClick={this.goPrev}>\n 上一步\n </button>\n )}\n <button type=\"button\" class=\"hb-tour__btn hb-tour__btn--next\" onClick={this.goNext}>\n {this.isLast ? '完成' : '下一步'}\n </button>\n </div>\n </div>\n </div>\n </div>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,169 @@
1
+ import { r as registerInstance, c as createEvent, h } from './index-fdf7135e.js';
2
+
3
+ const transferCss = "/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{border:0 solid;box-sizing:border-box;margin:0;padding:0}::file-selector-button{appearance:button;background-color:#0000;border:0 solid;border-radius:0;box-sizing:border-box;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;margin:0;margin-inline-end:4px;opacity:1;padding:0}:host,html{-webkit-text-size-adjust:100%;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);line-height:1.5;tab-size:4;-webkit-tap-highlight-color:transparent}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-size:1em;font-variation-settings:var(--default-mono-font-variation-settings,normal)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}button,input,optgroup,select,textarea{background-color:#0000;border-radius:0;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex;padding-block:0}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}} /*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */@layer properties{}@layer base{}@layer components;:host{display:block}.hb-transfer{align-items:stretch;color:var(--hb-color-text-regular,#606266);display:flex;font-size:14px;gap:12px}.hb-transfer--disabled{cursor:not-allowed;opacity:.6}.hb-transfer__panel{background-color:var(--hb-color-white,#fff);border:1px solid var(--hb-border-color,#dcdfe6);border-radius:4px;display:flex;flex-direction:column;max-height:100%;overflow:hidden;width:220px}.hb-transfer__panel--disabled,.hb-transfer__panel-header{background-color:var(--hb-fill-color-light,#f5f7fa)}.hb-transfer__panel-header{align-items:center;border-bottom:1px solid var(--hb-border-color-lighter,#ebeef5);display:flex;justify-content:space-between;padding:8px 12px}.hb-transfer__check-all{align-items:center;cursor:pointer;display:inline-flex;gap:6px;-webkit-user-select:none;user-select:none}.hb-transfer__check-all-input{cursor:pointer;margin:0}.hb-transfer__panel-title{color:var(--hb-color-text-primary,#303133);font-weight:600}.hb-transfer__panel-filter{border-bottom:1px solid var(--hb-border-color-lighter,#ebeef5);padding:8px}.hb-transfer__filter-input{border:1px solid var(--hb-border-color,#dcdfe6);border-radius:4px;box-sizing:border-box;color:var(--hb-color-text-regular,#606266);font-size:13px;outline:none;padding:6px 10px;transition:border-color .2s;width:100%}.hb-transfer__filter-input:focus{border-color:var(--hb-color-primary)}.hb-transfer__filter-input:disabled{background-color:var(--hb-fill-color-light,#f5f7fa);cursor:not-allowed}.hb-transfer__panel-body{flex:1;max-height:246px;min-height:120px;overflow-y:auto;padding:4px 0}.hb-transfer__empty{align-items:center;color:var(--hb-color-text-placeholder,#c0c4cc);display:flex;font-size:13px;height:100%;justify-content:center;min-height:120px}.hb-transfer__item{align-items:center;cursor:pointer;display:flex;gap:8px;padding:6px 12px;transition:background-color .2s;-webkit-user-select:none;user-select:none}.hb-transfer__item:hover:not(.hb-transfer__item--disabled){background-color:var(--hb-fill-color-light,#f5f7fa)}.hb-transfer__item--checked{color:var(--hb-color-primary)}.hb-transfer__item--disabled{color:var(--hb-color-text-placeholder,#c0c4cc);cursor:not-allowed}.hb-transfer__item-input{cursor:pointer;margin:0}.hb-transfer__item-input:disabled{cursor:not-allowed}.hb-transfer__item-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hb-transfer__operations{align-items:center;align-self:center;display:flex;flex-direction:column;gap:8px;justify-content:center}.hb-transfer__operation-btn{align-items:center;background-color:var(--hb-color-white,#fff);border:1px solid var(--hb-border-color,#dcdfe6);border-radius:4px;color:var(--hb-color-text-regular,#606266);cursor:pointer;display:inline-flex;font-size:18px;height:32px;justify-content:center;line-height:1;transition:all .2s;width:36px}.hb-transfer__operation-btn:hover:not(:disabled){border-color:var(--hb-color-primary);color:var(--hb-color-primary)}.hb-transfer__operation-btn:disabled{background-color:var(--hb-fill-color-light,#f5f7fa);color:var(--hb-color-text-placeholder,#c0c4cc);cursor:not-allowed}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"<percentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"<length>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}";
4
+ const HbTransferStyle0 = transferCss;
5
+
6
+ const Transfer = class {
7
+ constructor(hostRef) {
8
+ registerInstance(this, hostRef);
9
+ this.hbChange = createEvent(this, "hbChange", 7);
10
+ }
11
+ /**
12
+ * 数据源
13
+ */
14
+ data = [];
15
+ /**
16
+ * 右侧(目标列表)的 keys
17
+ */
18
+ targetKeys = [];
19
+ /**
20
+ * 两侧已勾选的 keys
21
+ */
22
+ selectedKeys = [];
23
+ /**
24
+ * 标题,[源列表标题, 目标列表标题]
25
+ * @default ['源列表', '目标列表']
26
+ */
27
+ titles = ['源列表', '目标列表'];
28
+ /**
29
+ * 是否禁用
30
+ * @default false
31
+ */
32
+ disabled = false;
33
+ /**
34
+ * 是否显示搜索框
35
+ * @default false
36
+ */
37
+ filterable = false;
38
+ /**
39
+ * 右侧列表变化事件
40
+ */
41
+ hbChange;
42
+ leftFilter = '';
43
+ rightFilter = '';
44
+ handleSelectedKeysChange() {
45
+ /* 触发重渲染 */
46
+ }
47
+ /** 左侧列表:key 不在 targetKeys 中 */
48
+ get leftList() {
49
+ return this.data.filter((item) => !this.targetKeys.includes(item.key));
50
+ }
51
+ /** 右侧列表:key 在 targetKeys 中 */
52
+ get rightList() {
53
+ const targetSet = new Set(this.targetKeys);
54
+ return this.data.filter((item) => targetSet.has(item.key));
55
+ }
56
+ /** 当前列表项是否被勾选 */
57
+ isSelected(key) {
58
+ return this.selectedKeys.includes(key);
59
+ }
60
+ /** 切换某项的勾选状态 */
61
+ toggleItem = (item) => {
62
+ if (this.disabled || item.disabled)
63
+ return;
64
+ const isSelected = this.isSelected(item.key);
65
+ this.selectedKeys = isSelected
66
+ ? this.selectedKeys.filter((k) => k !== item.key)
67
+ : [...this.selectedKeys, item.key];
68
+ };
69
+ /** 获取某侧可勾选(非 disabled)的全部 keys */
70
+ getSelectableKeys(list) {
71
+ return list.filter((item) => !item.disabled).map((item) => item.key);
72
+ }
73
+ /** 计算某侧全选 checkbox 状态:'all' | 'none' | 'indeterminate' */
74
+ getCheckAllState(list) {
75
+ const selectableKeys = this.getSelectableKeys(list);
76
+ if (selectableKeys.length === 0)
77
+ return 'none';
78
+ const selectedCount = selectableKeys.filter((k) => this.isSelected(k)).length;
79
+ if (selectedCount === 0)
80
+ return 'none';
81
+ if (selectedCount === selectableKeys.length)
82
+ return 'all';
83
+ return 'indeterminate';
84
+ }
85
+ /** 切换某侧全选 */
86
+ toggleCheckAll = (list) => {
87
+ if (this.disabled)
88
+ return;
89
+ const selectableKeys = this.getSelectableKeys(list);
90
+ const state = this.getCheckAllState(list);
91
+ if (state === 'all') {
92
+ // 取消该侧全部勾选
93
+ this.selectedKeys = this.selectedKeys.filter((k) => !selectableKeys.includes(k));
94
+ }
95
+ else {
96
+ // 勾选该侧全部(合并去重)
97
+ const merged = new Set([...this.selectedKeys, ...selectableKeys]);
98
+ this.selectedKeys = Array.from(merged);
99
+ }
100
+ };
101
+ /** 向右移动:把左侧已勾选的项移到右侧 */
102
+ moveToRight = () => {
103
+ if (this.disabled)
104
+ return;
105
+ const leftSelected = this.leftList
106
+ .filter((item) => this.isSelected(item.key) && !item.disabled)
107
+ .map((item) => item.key);
108
+ if (leftSelected.length === 0)
109
+ return;
110
+ // 合并到 targetKeys(保持 data 中的顺序)
111
+ const targetSet = new Set([...this.targetKeys, ...leftSelected]);
112
+ this.targetKeys = this.data
113
+ .filter((item) => targetSet.has(item.key))
114
+ .map((item) => item.key);
115
+ // 清除已移动项的勾选
116
+ this.selectedKeys = this.selectedKeys.filter((k) => !leftSelected.includes(k));
117
+ this.hbChange.emit({ targetKeys: this.targetKeys });
118
+ };
119
+ /** 向左移动:把右侧已勾选的项移回左侧 */
120
+ moveToLeft = () => {
121
+ if (this.disabled)
122
+ return;
123
+ const rightSelected = this.rightList
124
+ .filter((item) => this.isSelected(item.key) && !item.disabled)
125
+ .map((item) => item.key);
126
+ if (rightSelected.length === 0)
127
+ return;
128
+ const removeSet = new Set(rightSelected);
129
+ this.targetKeys = this.targetKeys.filter((k) => !removeSet.has(k));
130
+ // 清除已移动项的勾选
131
+ this.selectedKeys = this.selectedKeys.filter((k) => !removeSet.has(k));
132
+ this.hbChange.emit({ targetKeys: this.targetKeys });
133
+ };
134
+ /** 列表项过滤 */
135
+ filterList(list, keyword) {
136
+ if (!keyword)
137
+ return list;
138
+ const lower = keyword.toLowerCase();
139
+ return list.filter((item) => item.title.toLowerCase().includes(lower));
140
+ }
141
+ renderList = (list, title, filterValue, onFilter) => {
142
+ const filteredList = this.filterList(list, filterValue);
143
+ const selectableKeys = this.getSelectableKeys(list);
144
+ const selectedCount = selectableKeys.filter((k) => this.isSelected(k)).length;
145
+ const checkAllState = this.getCheckAllState(list);
146
+ return (h("div", { class: { 'hb-transfer__panel': true, 'hb-transfer__panel--disabled': this.disabled } }, h("div", { class: "hb-transfer__panel-header" }, h("label", { class: "hb-transfer__check-all" }, h("input", { type: "checkbox", class: "hb-transfer__check-all-input", checked: checkAllState === 'all', disabled: this.disabled || selectableKeys.length === 0, onChange: () => this.toggleCheckAll(list) }), h("span", null, selectedCount > 0 ? `${selectedCount}/` : '', selectableKeys.length, " \u9879")), h("span", { class: "hb-transfer__panel-title" }, title)), this.filterable && (h("div", { class: "hb-transfer__panel-filter" }, h("input", { type: "text", class: "hb-transfer__filter-input", placeholder: "\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9", value: filterValue, disabled: this.disabled, onInput: onFilter }))), h("div", { class: "hb-transfer__panel-body" }, filteredList.length === 0 ? (h("div", { class: "hb-transfer__empty" }, "\u65E0\u6570\u636E")) : (filteredList.map((item) => (h("label", { class: {
147
+ 'hb-transfer__item': true,
148
+ 'hb-transfer__item--checked': this.isSelected(item.key),
149
+ 'hb-transfer__item--disabled': this.disabled || !!item.disabled,
150
+ } }, h("input", { type: "checkbox", class: "hb-transfer__item-input", checked: this.isSelected(item.key), disabled: this.disabled || !!item.disabled, onChange: () => this.toggleItem(item) }), h("span", { class: "hb-transfer__item-title" }, item.title))))))));
151
+ };
152
+ render() {
153
+ const leftCheckAllState = this.getCheckAllState(this.leftList);
154
+ const rightCheckAllState = this.getCheckAllState(this.rightList);
155
+ return (h("div", { key: 'e8b42f296636c208e67adb4dfd105f72ccd96406', class: { 'hb-transfer': true, 'hb-transfer--disabled': this.disabled } }, this.renderList(this.leftList, this.titles[0], this.leftFilter, (e) => {
156
+ this.leftFilter = e.target.value;
157
+ }), h("div", { key: 'fbb9d1ab5a4782e2d7be4e5ba8b6d2378cf5dd4f', class: "hb-transfer__operations" }, h("button", { key: '8c598127a30fc7cc82711ccbc5ae695363f20eeb', type: "button", class: "hb-transfer__operation-btn", disabled: this.disabled || rightCheckAllState === 'none', onClick: this.moveToLeft, "aria-label": "\u5411\u5DE6\u79FB\u52A8" }, "\u2039"), h("button", { key: '95ab5ae8b686fc032a7e88e4d798d0190a7163ed', type: "button", class: "hb-transfer__operation-btn", disabled: this.disabled || leftCheckAllState === 'none', onClick: this.moveToRight, "aria-label": "\u5411\u53F3\u79FB\u52A8" }, "\u203A")), this.renderList(this.rightList, this.titles[1], this.rightFilter, (e) => {
158
+ this.rightFilter = e.target.value;
159
+ })));
160
+ }
161
+ static get watchers() { return {
162
+ "selectedKeys": ["handleSelectedKeysChange"]
163
+ }; }
164
+ };
165
+ Transfer.style = HbTransferStyle0;
166
+
167
+ export { Transfer as hb_transfer };
168
+
169
+ //# sourceMappingURL=hb-transfer.entry.js.map
@@ -0,0 +1 @@
1
+ {"file":"hb-transfer.entry.js","mappings":"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","names":[],"sources":["src/components/Transfer/transfer.css?tag=hb-transfer&encapsulation=shadow","src/components/Transfer/Transfer.tsx"],"sourcesContent":[":host {\n display: block;\n}\n\n.hb-transfer {\n display: flex;\n align-items: stretch;\n gap: 12px;\n font-size: 14px;\n color: var(--hb-color-text-regular, #606266);\n}\n\n.hb-transfer--disabled {\n opacity: 0.6;\n cursor: not-allowed;\n}\n\n/* 单栏 */\n.hb-transfer__panel {\n display: flex;\n flex-direction: column;\n width: 220px;\n max-height: 100%;\n border: 1px solid var(--hb-border-color, #dcdfe6);\n border-radius: 4px;\n background-color: var(--hb-color-white, #ffffff);\n overflow: hidden;\n}\n\n.hb-transfer__panel--disabled {\n background-color: var(--hb-fill-color-light, #f5f7fa);\n}\n\n/* 头部:全选 + 标题 */\n.hb-transfer__panel-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n border-bottom: 1px solid var(--hb-border-color-lighter, #ebeef5);\n background-color: var(--hb-fill-color-light, #f5f7fa);\n}\n\n.hb-transfer__check-all {\n display: inline-flex;\n align-items: center;\n gap: 6px;\n cursor: pointer;\n user-select: none;\n}\n\n.hb-transfer__check-all-input {\n margin: 0;\n cursor: pointer;\n}\n\n.hb-transfer__panel-title {\n font-weight: 600;\n color: var(--hb-color-text-primary, #303133);\n}\n\n/* 搜索框 */\n.hb-transfer__panel-filter {\n padding: 8px;\n border-bottom: 1px solid var(--hb-border-color-lighter, #ebeef5);\n}\n\n.hb-transfer__filter-input {\n width: 100%;\n box-sizing: border-box;\n padding: 6px 10px;\n font-size: 13px;\n color: var(--hb-color-text-regular, #606266);\n border: 1px solid var(--hb-border-color, #dcdfe6);\n border-radius: 4px;\n outline: none;\n transition: border-color 0.2s;\n}\n\n.hb-transfer__filter-input:focus {\n border-color: var(--hb-color-primary);\n}\n\n.hb-transfer__filter-input:disabled {\n background-color: var(--hb-fill-color-light, #f5f7fa);\n cursor: not-allowed;\n}\n\n/* 列表主体 */\n.hb-transfer__panel-body {\n flex: 1;\n min-height: 120px;\n max-height: 246px;\n overflow-y: auto;\n padding: 4px 0;\n}\n\n.hb-transfer__empty {\n display: flex;\n align-items: center;\n justify-content: center;\n height: 100%;\n min-height: 120px;\n color: var(--hb-color-text-placeholder, #c0c4cc);\n font-size: 13px;\n}\n\n/* 列表项 */\n.hb-transfer__item {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 6px 12px;\n cursor: pointer;\n transition: background-color 0.2s;\n user-select: none;\n}\n\n.hb-transfer__item:hover:not(.hb-transfer__item--disabled) {\n background-color: var(--hb-fill-color-light, #f5f7fa);\n}\n\n.hb-transfer__item--checked {\n color: var(--hb-color-primary);\n}\n\n.hb-transfer__item--disabled {\n cursor: not-allowed;\n color: var(--hb-color-text-placeholder, #c0c4cc);\n}\n\n.hb-transfer__item-input {\n margin: 0;\n cursor: pointer;\n}\n\n.hb-transfer__item-input:disabled {\n cursor: not-allowed;\n}\n\n.hb-transfer__item-title {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* 中间操作按钮区 */\n.hb-transfer__operations {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 8px;\n align-self: center;\n}\n\n.hb-transfer__operation-btn {\n width: 36px;\n height: 32px;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n font-size: 18px;\n line-height: 1;\n color: var(--hb-color-text-regular, #606266);\n background-color: var(--hb-color-white, #ffffff);\n border: 1px solid var(--hb-border-color, #dcdfe6);\n border-radius: 4px;\n cursor: pointer;\n transition: all 0.2s;\n}\n\n.hb-transfer__operation-btn:hover:not(:disabled) {\n color: var(--hb-color-primary);\n border-color: var(--hb-color-primary);\n}\n\n.hb-transfer__operation-btn:disabled {\n color: var(--hb-color-text-placeholder, #c0c4cc);\n background-color: var(--hb-fill-color-light, #f5f7fa);\n cursor: not-allowed;\n}\n","import { Component, h, Prop, Event, EventEmitter, State, Watch } from '@stencil/core';\n\n/**\n * Transfer 数据项\n */\nexport interface TransferDataItem {\n key: string;\n title: string;\n disabled?: boolean;\n}\n\n/**\n * Transfer 穿梭框组件\n * 双栏列表选择,勾选项后通过中间按钮在两栏间移动\n */\n@Component({\n tag: 'hb-transfer',\n styleUrl: 'transfer.css',\n shadow: true,\n})\nexport class Transfer {\n /**\n * 数据源\n */\n @Prop() data: TransferDataItem[] = [];\n\n /**\n * 右侧(目标列表)的 keys\n */\n @Prop({ mutable: true }) targetKeys: string[] = [];\n\n /**\n * 两侧已勾选的 keys\n */\n @Prop({ mutable: true }) selectedKeys: string[] = [];\n\n /**\n * 标题,[源列表标题, 目标列表标题]\n * @default ['源列表', '目标列表']\n */\n @Prop() titles: [string, string] = ['源列表', '目标列表'];\n\n /**\n * 是否禁用\n * @default false\n */\n @Prop() disabled: boolean = false;\n\n /**\n * 是否显示搜索框\n * @default false\n */\n @Prop() filterable: boolean = false;\n\n /**\n * 右侧列表变化事件\n */\n @Event() hbChange: EventEmitter<{ targetKeys: string[] }>;\n\n @State() leftFilter: string = '';\n @State() rightFilter: string = '';\n\n @Watch('selectedKeys')\n handleSelectedKeysChange() {\n /* 触发重渲染 */\n }\n\n /** 左侧列表:key 不在 targetKeys 中 */\n private get leftList(): TransferDataItem[] {\n return this.data.filter((item) => !this.targetKeys.includes(item.key));\n }\n\n /** 右侧列表:key 在 targetKeys 中 */\n private get rightList(): TransferDataItem[] {\n const targetSet = new Set(this.targetKeys);\n return this.data.filter((item) => targetSet.has(item.key));\n }\n\n /** 当前列表项是否被勾选 */\n private isSelected(key: string): boolean {\n return this.selectedKeys.includes(key);\n }\n\n /** 切换某项的勾选状态 */\n private toggleItem = (item: TransferDataItem) => {\n if (this.disabled || item.disabled) return;\n const isSelected = this.isSelected(item.key);\n this.selectedKeys = isSelected\n ? this.selectedKeys.filter((k) => k !== item.key)\n : [...this.selectedKeys, item.key];\n };\n\n /** 获取某侧可勾选(非 disabled)的全部 keys */\n private getSelectableKeys(list: TransferDataItem[]): string[] {\n return list.filter((item) => !item.disabled).map((item) => item.key);\n }\n\n /** 计算某侧全选 checkbox 状态:'all' | 'none' | 'indeterminate' */\n private getCheckAllState(list: TransferDataItem[]): 'all' | 'none' | 'indeterminate' {\n const selectableKeys = this.getSelectableKeys(list);\n if (selectableKeys.length === 0) return 'none';\n const selectedCount = selectableKeys.filter((k) => this.isSelected(k)).length;\n if (selectedCount === 0) return 'none';\n if (selectedCount === selectableKeys.length) return 'all';\n return 'indeterminate';\n }\n\n /** 切换某侧全选 */\n private toggleCheckAll = (list: TransferDataItem[]) => {\n if (this.disabled) return;\n const selectableKeys = this.getSelectableKeys(list);\n const state = this.getCheckAllState(list);\n if (state === 'all') {\n // 取消该侧全部勾选\n this.selectedKeys = this.selectedKeys.filter((k) => !selectableKeys.includes(k));\n } else {\n // 勾选该侧全部(合并去重)\n const merged = new Set([...this.selectedKeys, ...selectableKeys]);\n this.selectedKeys = Array.from(merged);\n }\n };\n\n /** 向右移动:把左侧已勾选的项移到右侧 */\n private moveToRight = () => {\n if (this.disabled) return;\n const leftSelected = this.leftList\n .filter((item) => this.isSelected(item.key) && !item.disabled)\n .map((item) => item.key);\n if (leftSelected.length === 0) return;\n // 合并到 targetKeys(保持 data 中的顺序)\n const targetSet = new Set([...this.targetKeys, ...leftSelected]);\n this.targetKeys = this.data\n .filter((item) => targetSet.has(item.key))\n .map((item) => item.key);\n // 清除已移动项的勾选\n this.selectedKeys = this.selectedKeys.filter((k) => !leftSelected.includes(k));\n this.hbChange.emit({ targetKeys: this.targetKeys });\n };\n\n /** 向左移动:把右侧已勾选的项移回左侧 */\n private moveToLeft = () => {\n if (this.disabled) return;\n const rightSelected = this.rightList\n .filter((item) => this.isSelected(item.key) && !item.disabled)\n .map((item) => item.key);\n if (rightSelected.length === 0) return;\n const removeSet = new Set(rightSelected);\n this.targetKeys = this.targetKeys.filter((k) => !removeSet.has(k));\n // 清除已移动项的勾选\n this.selectedKeys = this.selectedKeys.filter((k) => !removeSet.has(k));\n this.hbChange.emit({ targetKeys: this.targetKeys });\n };\n\n /** 列表项过滤 */\n private filterList(list: TransferDataItem[], keyword: string): TransferDataItem[] {\n if (!keyword) return list;\n const lower = keyword.toLowerCase();\n return list.filter((item) => item.title.toLowerCase().includes(lower));\n }\n\n private renderList = (\n list: TransferDataItem[],\n title: string,\n filterValue: string,\n onFilter: (e: Event) => void,\n ) => {\n const filteredList = this.filterList(list, filterValue);\n const selectableKeys = this.getSelectableKeys(list);\n const selectedCount = selectableKeys.filter((k) => this.isSelected(k)).length;\n const checkAllState = this.getCheckAllState(list);\n\n return (\n <div class={{ 'hb-transfer__panel': true, 'hb-transfer__panel--disabled': this.disabled }}>\n <div class=\"hb-transfer__panel-header\">\n <label class=\"hb-transfer__check-all\">\n <input\n type=\"checkbox\"\n class=\"hb-transfer__check-all-input\"\n checked={checkAllState === 'all'}\n disabled={this.disabled || selectableKeys.length === 0}\n onChange={() => this.toggleCheckAll(list)}\n />\n <span>{selectedCount > 0 ? `${selectedCount}/` : ''}{selectableKeys.length} 项</span>\n </label>\n <span class=\"hb-transfer__panel-title\">{title}</span>\n </div>\n\n {this.filterable && (\n <div class=\"hb-transfer__panel-filter\">\n <input\n type=\"text\"\n class=\"hb-transfer__filter-input\"\n placeholder=\"请输入搜索内容\"\n value={filterValue}\n disabled={this.disabled}\n onInput={onFilter}\n />\n </div>\n )}\n\n <div class=\"hb-transfer__panel-body\">\n {filteredList.length === 0 ? (\n <div class=\"hb-transfer__empty\">无数据</div>\n ) : (\n filteredList.map((item) => (\n <label\n class={{\n 'hb-transfer__item': true,\n 'hb-transfer__item--checked': this.isSelected(item.key),\n 'hb-transfer__item--disabled': this.disabled || !!item.disabled,\n }}\n >\n <input\n type=\"checkbox\"\n class=\"hb-transfer__item-input\"\n checked={this.isSelected(item.key)}\n disabled={this.disabled || !!item.disabled}\n onChange={() => this.toggleItem(item)}\n />\n <span class=\"hb-transfer__item-title\">{item.title}</span>\n </label>\n ))\n )}\n </div>\n </div>\n );\n };\n\n render() {\n const leftCheckAllState = this.getCheckAllState(this.leftList);\n const rightCheckAllState = this.getCheckAllState(this.rightList);\n\n return (\n <div class={{ 'hb-transfer': true, 'hb-transfer--disabled': this.disabled }}>\n {this.renderList(\n this.leftList,\n this.titles[0],\n this.leftFilter,\n (e) => {\n this.leftFilter = (e.target as HTMLInputElement).value;\n },\n )}\n\n <div class=\"hb-transfer__operations\">\n <button\n type=\"button\"\n class=\"hb-transfer__operation-btn\"\n disabled={this.disabled || rightCheckAllState === 'none'}\n onClick={this.moveToLeft}\n aria-label=\"向左移动\"\n >\n ‹\n </button>\n <button\n type=\"button\"\n class=\"hb-transfer__operation-btn\"\n disabled={this.disabled || leftCheckAllState === 'none'}\n onClick={this.moveToRight}\n aria-label=\"向右移动\"\n >\n ›\n </button>\n </div>\n\n {this.renderList(\n this.rightList,\n this.titles[1],\n this.rightFilter,\n (e) => {\n this.rightFilter = (e.target as HTMLInputElement).value;\n },\n )}\n </div>\n );\n }\n}\n"],"version":3}