@xihan-ui/vue 1.0.0-alpha.2 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (780) hide show
  1. package/CHANGELOG.md +2615 -0
  2. package/README.md +1 -1
  3. package/dist/backgrounds.d.ts.map +1 -1
  4. package/dist/backgrounds.js +1 -5
  5. package/dist/backgrounds.js.map +1 -1
  6. package/dist/behavior.d.ts +38 -0
  7. package/dist/behavior.d.ts.map +1 -0
  8. package/dist/behavior.js +74 -0
  9. package/dist/behavior.js.map +1 -0
  10. package/dist/components/accordion/accordion.d.ts.map +1 -1
  11. package/dist/components/accordion/accordion.js +15 -2
  12. package/dist/components/accordion/accordion.js.map +1 -1
  13. package/dist/components/accordion/context.js +2 -2
  14. package/dist/components/accordion/context.js.map +1 -1
  15. package/dist/components/accordion/use-accordion.d.ts +3 -0
  16. package/dist/components/accordion/use-accordion.d.ts.map +1 -1
  17. package/dist/components/accordion/use-accordion.js +14 -3
  18. package/dist/components/accordion/use-accordion.js.map +1 -1
  19. package/dist/components/affix/context.js +1 -1
  20. package/dist/components/affix/context.js.map +1 -1
  21. package/dist/components/alert/context.js +1 -1
  22. package/dist/components/alert/context.js.map +1 -1
  23. package/dist/components/anchor/anchor.d.ts +1 -1
  24. package/dist/components/anchor/context.js +1 -1
  25. package/dist/components/anchor/context.js.map +1 -1
  26. package/dist/components/avatar/context.js +1 -1
  27. package/dist/components/avatar/context.js.map +1 -1
  28. package/dist/components/avatar-group/avatar-group.d.ts.map +1 -1
  29. package/dist/components/avatar-group/avatar-group.js +2 -1
  30. package/dist/components/avatar-group/avatar-group.js.map +1 -1
  31. package/dist/components/avatar-group/context.js +1 -1
  32. package/dist/components/avatar-group/context.js.map +1 -1
  33. package/dist/components/back-top/back-top.d.ts +1 -1
  34. package/dist/components/back-top/context.js +1 -1
  35. package/dist/components/back-top/context.js.map +1 -1
  36. package/dist/components/badge/badge.d.ts +159 -11
  37. package/dist/components/badge/badge.d.ts.map +1 -1
  38. package/dist/components/badge/badge.js +68 -8
  39. package/dist/components/badge/badge.js.map +1 -1
  40. package/dist/components/badge/context.js +15 -0
  41. package/dist/components/badge/context.js.map +1 -0
  42. package/dist/components/breadcrumb/context.js +1 -1
  43. package/dist/components/breadcrumb/context.js.map +1 -1
  44. package/dist/components/button-group/button-group.d.ts.map +1 -1
  45. package/dist/components/button-group/button-group.js +2 -1
  46. package/dist/components/button-group/button-group.js.map +1 -1
  47. package/dist/components/button.d.ts +13 -6
  48. package/dist/components/button.d.ts.map +1 -1
  49. package/dist/components/button.js +11 -2
  50. package/dist/components/button.js.map +1 -1
  51. package/dist/components/calendar/calendar.d.ts +167 -7
  52. package/dist/components/calendar/calendar.d.ts.map +1 -1
  53. package/dist/components/calendar/calendar.js +125 -16
  54. package/dist/components/calendar/calendar.js.map +1 -1
  55. package/dist/components/calendar/context.js +2 -2
  56. package/dist/components/calendar/context.js.map +1 -1
  57. package/dist/components/calendar/use-calendar.d.ts +1 -1
  58. package/dist/components/calendar/use-calendar.d.ts.map +1 -1
  59. package/dist/components/calendar/use-calendar.js +3 -2
  60. package/dist/components/calendar/use-calendar.js.map +1 -1
  61. package/dist/components/card/card.d.ts +1 -1
  62. package/dist/components/card/card.d.ts.map +1 -1
  63. package/dist/components/card/card.js +2 -1
  64. package/dist/components/card/card.js.map +1 -1
  65. package/dist/components/card/context.js +1 -1
  66. package/dist/components/card/context.js.map +1 -1
  67. package/dist/components/carousel/context.js +1 -1
  68. package/dist/components/carousel/context.js.map +1 -1
  69. package/dist/components/cascader/cascader.d.ts +7 -4
  70. package/dist/components/cascader/cascader.d.ts.map +1 -1
  71. package/dist/components/cascader/cascader.js +28 -9
  72. package/dist/components/cascader/cascader.js.map +1 -1
  73. package/dist/components/cascader/context.js +2 -2
  74. package/dist/components/cascader/context.js.map +1 -1
  75. package/dist/components/cascader/use-cascader.d.ts +4 -0
  76. package/dist/components/cascader/use-cascader.d.ts.map +1 -1
  77. package/dist/components/cascader/use-cascader.js +15 -4
  78. package/dist/components/cascader/use-cascader.js.map +1 -1
  79. package/dist/components/checkbox/checkbox.d.ts +17 -3
  80. package/dist/components/checkbox/checkbox.d.ts.map +1 -1
  81. package/dist/components/checkbox/checkbox.js +12 -2
  82. package/dist/components/checkbox/checkbox.js.map +1 -1
  83. package/dist/components/checkbox-group/context.js +2 -2
  84. package/dist/components/checkbox-group/context.js.map +1 -1
  85. package/dist/components/clipboard/context.js +1 -1
  86. package/dist/components/clipboard/context.js.map +1 -1
  87. package/dist/components/code-block/code-block.d.ts +3 -0
  88. package/dist/components/code-block/code-block.d.ts.map +1 -1
  89. package/dist/components/code-block/code-block.js +2 -0
  90. package/dist/components/code-block/code-block.js.map +1 -1
  91. package/dist/components/collapsible/collapsible.d.ts +10 -2
  92. package/dist/components/collapsible/collapsible.d.ts.map +1 -1
  93. package/dist/components/collapsible/collapsible.js +21 -3
  94. package/dist/components/collapsible/collapsible.js.map +1 -1
  95. package/dist/components/collapsible/context.js +1 -1
  96. package/dist/components/collapsible/context.js.map +1 -1
  97. package/dist/components/collapsible/use-collapsible.d.ts +4 -1
  98. package/dist/components/collapsible/use-collapsible.d.ts.map +1 -1
  99. package/dist/components/collapsible/use-collapsible.js +22 -4
  100. package/dist/components/collapsible/use-collapsible.js.map +1 -1
  101. package/dist/components/color-picker/color-picker.d.ts +16 -4
  102. package/dist/components/color-picker/color-picker.d.ts.map +1 -1
  103. package/dist/components/color-picker/color-picker.js +21 -6
  104. package/dist/components/color-picker/color-picker.js.map +1 -1
  105. package/dist/components/color-picker/context.js +2 -2
  106. package/dist/components/color-picker/context.js.map +1 -1
  107. package/dist/components/color-picker/use-color-picker.d.ts +4 -0
  108. package/dist/components/color-picker/use-color-picker.d.ts.map +1 -1
  109. package/dist/components/color-picker/use-color-picker.js +14 -3
  110. package/dist/components/color-picker/use-color-picker.js.map +1 -1
  111. package/dist/components/combobox/combobox.d.ts +15 -1
  112. package/dist/components/combobox/combobox.d.ts.map +1 -1
  113. package/dist/components/combobox/combobox.js +26 -12
  114. package/dist/components/combobox/combobox.js.map +1 -1
  115. package/dist/components/combobox/context.js +3 -3
  116. package/dist/components/combobox/context.js.map +1 -1
  117. package/dist/components/combobox/use-combobox.d.ts +4 -0
  118. package/dist/components/combobox/use-combobox.d.ts.map +1 -1
  119. package/dist/components/combobox/use-combobox.js +15 -4
  120. package/dist/components/combobox/use-combobox.js.map +1 -1
  121. package/dist/components/composer/context.js +1 -1
  122. package/dist/components/composer/context.js.map +1 -1
  123. package/dist/components/context-menu/context-menu.d.ts +45 -4
  124. package/dist/components/context-menu/context-menu.d.ts.map +1 -1
  125. package/dist/components/context-menu/context-menu.js +63 -17
  126. package/dist/components/context-menu/context-menu.js.map +1 -1
  127. package/dist/components/context-menu/context.js +5 -5
  128. package/dist/components/context-menu/context.js.map +1 -1
  129. package/dist/components/context-menu/use-context-menu.d.ts +4 -0
  130. package/dist/components/context-menu/use-context-menu.d.ts.map +1 -1
  131. package/dist/components/context-menu/use-context-menu.js +15 -4
  132. package/dist/components/context-menu/use-context-menu.js.map +1 -1
  133. package/dist/components/date-field/context.js +1 -1
  134. package/dist/components/date-field/context.js.map +1 -1
  135. package/dist/components/date-field/date-field.d.ts +38 -10
  136. package/dist/components/date-field/date-field.d.ts.map +1 -1
  137. package/dist/components/date-field/date-field.js +35 -9
  138. package/dist/components/date-field/date-field.js.map +1 -1
  139. package/dist/components/date-picker/context.js +17 -8
  140. package/dist/components/date-picker/context.js.map +1 -1
  141. package/dist/components/date-picker/date-picker.d.ts +291 -16
  142. package/dist/components/date-picker/date-picker.d.ts.map +1 -1
  143. package/dist/components/date-picker/date-picker.js +248 -36
  144. package/dist/components/date-picker/date-picker.js.map +1 -1
  145. package/dist/components/date-picker/use-date-picker.d.ts +5 -1
  146. package/dist/components/date-picker/use-date-picker.d.ts.map +1 -1
  147. package/dist/components/date-picker/use-date-picker.js +15 -4
  148. package/dist/components/date-picker/use-date-picker.js.map +1 -1
  149. package/dist/components/descriptions/context.js +1 -1
  150. package/dist/components/descriptions/context.js.map +1 -1
  151. package/dist/components/descriptions/descriptions.d.ts.map +1 -1
  152. package/dist/components/descriptions/descriptions.js +6 -4
  153. package/dist/components/descriptions/descriptions.js.map +1 -1
  154. package/dist/components/dialog/context.js +1 -1
  155. package/dist/components/dialog/context.js.map +1 -1
  156. package/dist/components/dialog/dialog.d.ts +20 -3
  157. package/dist/components/dialog/dialog.d.ts.map +1 -1
  158. package/dist/components/dialog/dialog.js +23 -6
  159. package/dist/components/dialog/dialog.js.map +1 -1
  160. package/dist/components/dialog/use-dialog.d.ts +2 -0
  161. package/dist/components/dialog/use-dialog.d.ts.map +1 -1
  162. package/dist/components/dialog/use-dialog.js +9 -4
  163. package/dist/components/dialog/use-dialog.js.map +1 -1
  164. package/dist/components/download-trigger/download-trigger.d.ts +66 -0
  165. package/dist/components/download-trigger/download-trigger.d.ts.map +1 -0
  166. package/dist/components/download-trigger/download-trigger.js +56 -0
  167. package/dist/components/download-trigger/download-trigger.js.map +1 -0
  168. package/dist/components/download-trigger/use-download-trigger.d.ts +10 -0
  169. package/dist/components/download-trigger/use-download-trigger.d.ts.map +1 -0
  170. package/dist/components/download-trigger/use-download-trigger.js +16 -0
  171. package/dist/components/download-trigger/use-download-trigger.js.map +1 -0
  172. package/dist/components/drawer/context.js +1 -1
  173. package/dist/components/drawer/context.js.map +1 -1
  174. package/dist/components/drawer/drawer.d.ts +52 -4
  175. package/dist/components/drawer/drawer.d.ts.map +1 -1
  176. package/dist/components/drawer/drawer.js +39 -7
  177. package/dist/components/drawer/drawer.js.map +1 -1
  178. package/dist/components/drawer/use-drawer.d.ts +3 -1
  179. package/dist/components/drawer/use-drawer.d.ts.map +1 -1
  180. package/dist/components/drawer/use-drawer.js +11 -5
  181. package/dist/components/drawer/use-drawer.js.map +1 -1
  182. package/dist/components/dynamic-input/context.js +2 -2
  183. package/dist/components/dynamic-input/context.js.map +1 -1
  184. package/dist/components/dynamic-input/dynamic-input.d.ts +2 -2
  185. package/dist/components/dynamic-input/dynamic-input.d.ts.map +1 -1
  186. package/dist/components/dynamic-input/dynamic-input.js +4 -4
  187. package/dist/components/dynamic-input/dynamic-input.js.map +1 -1
  188. package/dist/components/editable/context.js +1 -1
  189. package/dist/components/editable/context.js.map +1 -1
  190. package/dist/components/ellipsis/ellipsis.d.ts +1 -1
  191. package/dist/components/empty-state/context.js +1 -1
  192. package/dist/components/empty-state/context.js.map +1 -1
  193. package/dist/components/empty-state/empty-state.d.ts.map +1 -1
  194. package/dist/components/empty-state/empty-state.js +2 -1
  195. package/dist/components/empty-state/empty-state.js.map +1 -1
  196. package/dist/components/field/context.d.ts +9 -0
  197. package/dist/components/field/context.d.ts.map +1 -0
  198. package/dist/components/field/context.js +6 -2
  199. package/dist/components/field/context.js.map +1 -1
  200. package/dist/components/field/field.d.ts +35 -2
  201. package/dist/components/field/field.d.ts.map +1 -1
  202. package/dist/components/field/field.js +31 -4
  203. package/dist/components/field/field.js.map +1 -1
  204. package/dist/components/field/use-field-control.d.ts +41 -0
  205. package/dist/components/field/use-field-control.d.ts.map +1 -0
  206. package/dist/components/field/use-field-control.js +77 -0
  207. package/dist/components/field/use-field-control.js.map +1 -0
  208. package/dist/components/fieldset/context.d.ts +6 -0
  209. package/dist/components/fieldset/context.d.ts.map +1 -0
  210. package/dist/components/fieldset/context.js +15 -0
  211. package/dist/components/fieldset/context.js.map +1 -0
  212. package/dist/components/fieldset/fieldset.d.ts +57 -0
  213. package/dist/components/fieldset/fieldset.d.ts.map +1 -0
  214. package/dist/components/fieldset/fieldset.js +56 -0
  215. package/dist/components/fieldset/fieldset.js.map +1 -0
  216. package/dist/components/fieldset/use-fieldset.d.ts +10 -0
  217. package/dist/components/fieldset/use-fieldset.d.ts.map +1 -0
  218. package/dist/components/fieldset/use-fieldset.js +14 -0
  219. package/dist/components/fieldset/use-fieldset.js.map +1 -0
  220. package/dist/components/file-upload/context.js +2 -2
  221. package/dist/components/file-upload/context.js.map +1 -1
  222. package/dist/components/file-upload/file-upload.d.ts +11 -3
  223. package/dist/components/file-upload/file-upload.d.ts.map +1 -1
  224. package/dist/components/file-upload/file-upload.js +15 -3
  225. package/dist/components/file-upload/file-upload.js.map +1 -1
  226. package/dist/components/flex/flex.d.ts +10 -1
  227. package/dist/components/flex/flex.d.ts.map +1 -1
  228. package/dist/components/flex/flex.js +4 -0
  229. package/dist/components/flex/flex.js.map +1 -1
  230. package/dist/components/float-button/context.js +1 -1
  231. package/dist/components/float-button/context.js.map +1 -1
  232. package/dist/components/float-button/float-button.d.ts +2 -2
  233. package/dist/components/floating-panel/context.d.ts +6 -0
  234. package/dist/components/floating-panel/context.d.ts.map +1 -0
  235. package/dist/components/floating-panel/context.js +15 -0
  236. package/dist/components/floating-panel/context.js.map +1 -0
  237. package/dist/components/floating-panel/floating-panel.d.ts +216 -0
  238. package/dist/components/floating-panel/floating-panel.d.ts.map +1 -0
  239. package/dist/components/floating-panel/floating-panel.js +202 -0
  240. package/dist/components/floating-panel/floating-panel.js.map +1 -0
  241. package/dist/components/floating-panel/use-floating-panel.d.ts +18 -0
  242. package/dist/components/floating-panel/use-floating-panel.d.ts.map +1 -0
  243. package/dist/components/floating-panel/use-floating-panel.js +28 -0
  244. package/dist/components/floating-panel/use-floating-panel.js.map +1 -0
  245. package/dist/components/form/context.js +2 -2
  246. package/dist/components/form/context.js.map +1 -1
  247. package/dist/components/form/form.d.ts +1 -1
  248. package/dist/components/grid/context.js +1 -1
  249. package/dist/components/grid/context.js.map +1 -1
  250. package/dist/components/heatmap/context.d.ts +7 -0
  251. package/dist/components/heatmap/context.d.ts.map +1 -0
  252. package/dist/components/heatmap/context.js +32 -0
  253. package/dist/components/heatmap/context.js.map +1 -0
  254. package/dist/components/heatmap/heatmap.d.ts +352 -0
  255. package/dist/components/heatmap/heatmap.d.ts.map +1 -0
  256. package/dist/components/heatmap/heatmap.js +374 -0
  257. package/dist/components/heatmap/heatmap.js.map +1 -0
  258. package/dist/components/heatmap/use-heatmap.d.ts +13 -0
  259. package/dist/components/heatmap/use-heatmap.d.ts.map +1 -0
  260. package/dist/components/heatmap/use-heatmap.js +20 -0
  261. package/dist/components/heatmap/use-heatmap.js.map +1 -0
  262. package/dist/components/hotkeys/hotkeys.d.ts +89 -0
  263. package/dist/components/hotkeys/hotkeys.d.ts.map +1 -0
  264. package/dist/components/hotkeys/hotkeys.js +83 -0
  265. package/dist/components/hotkeys/hotkeys.js.map +1 -0
  266. package/dist/components/hotkeys/use-hotkeys.d.ts +31 -0
  267. package/dist/components/hotkeys/use-hotkeys.d.ts.map +1 -0
  268. package/dist/components/hotkeys/use-hotkeys.js +60 -0
  269. package/dist/components/hotkeys/use-hotkeys.js.map +1 -0
  270. package/dist/components/hover-card/context.js +1 -1
  271. package/dist/components/hover-card/context.js.map +1 -1
  272. package/dist/components/hover-card/hover-card.d.ts +11 -3
  273. package/dist/components/hover-card/hover-card.d.ts.map +1 -1
  274. package/dist/components/hover-card/hover-card.js +27 -11
  275. package/dist/components/hover-card/hover-card.js.map +1 -1
  276. package/dist/components/hover-card/use-hover-card.d.ts +4 -0
  277. package/dist/components/hover-card/use-hover-card.d.ts.map +1 -1
  278. package/dist/components/hover-card/use-hover-card.js +15 -4
  279. package/dist/components/hover-card/use-hover-card.js.map +1 -1
  280. package/dist/components/icon/icon.d.ts.map +1 -1
  281. package/dist/components/icon/icon.js +2 -1
  282. package/dist/components/icon/icon.js.map +1 -1
  283. package/dist/components/icon-wrapper/icon-wrapper.d.ts.map +1 -1
  284. package/dist/components/icon-wrapper/icon-wrapper.js +2 -1
  285. package/dist/components/icon-wrapper/icon-wrapper.js.map +1 -1
  286. package/dist/components/image/context.js +1 -1
  287. package/dist/components/image/context.js.map +1 -1
  288. package/dist/components/image-cropper/context.d.ts +6 -0
  289. package/dist/components/image-cropper/context.d.ts.map +1 -0
  290. package/dist/components/image-cropper/context.js +15 -0
  291. package/dist/components/image-cropper/context.js.map +1 -0
  292. package/dist/components/image-cropper/image-cropper.d.ts +195 -0
  293. package/dist/components/image-cropper/image-cropper.d.ts.map +1 -0
  294. package/dist/components/image-cropper/image-cropper.js +165 -0
  295. package/dist/components/image-cropper/image-cropper.js.map +1 -0
  296. package/dist/components/image-cropper/use-image-cropper.d.ts +15 -0
  297. package/dist/components/image-cropper/use-image-cropper.d.ts.map +1 -0
  298. package/dist/components/image-cropper/use-image-cropper.js +22 -0
  299. package/dist/components/image-cropper/use-image-cropper.js.map +1 -0
  300. package/dist/components/image-viewer/context.js +1 -1
  301. package/dist/components/image-viewer/context.js.map +1 -1
  302. package/dist/components/image-viewer/image-viewer.d.ts +13 -5
  303. package/dist/components/image-viewer/image-viewer.d.ts.map +1 -1
  304. package/dist/components/image-viewer/image-viewer.js +29 -16
  305. package/dist/components/image-viewer/image-viewer.js.map +1 -1
  306. package/dist/components/image-viewer/use-image-viewer.d.ts +2 -0
  307. package/dist/components/image-viewer/use-image-viewer.d.ts.map +1 -1
  308. package/dist/components/image-viewer/use-image-viewer.js +9 -4
  309. package/dist/components/image-viewer/use-image-viewer.js.map +1 -1
  310. package/dist/components/infinite-scroll/context.js +1 -1
  311. package/dist/components/infinite-scroll/context.js.map +1 -1
  312. package/dist/components/json-viewer/json-viewer.d.ts +129 -0
  313. package/dist/components/json-viewer/json-viewer.d.ts.map +1 -0
  314. package/dist/components/json-viewer/json-viewer.js +132 -0
  315. package/dist/components/json-viewer/json-viewer.js.map +1 -0
  316. package/dist/components/json-viewer/use-json-viewer.d.ts +13 -0
  317. package/dist/components/json-viewer/use-json-viewer.d.ts.map +1 -0
  318. package/dist/components/json-viewer/use-json-viewer.js +19 -0
  319. package/dist/components/json-viewer/use-json-viewer.js.map +1 -0
  320. package/dist/components/layout/context.js +1 -1
  321. package/dist/components/layout/context.js.map +1 -1
  322. package/dist/components/list/context.js +1 -1
  323. package/dist/components/list/context.js.map +1 -1
  324. package/dist/components/list/list.d.ts +1 -1
  325. package/dist/components/list/list.d.ts.map +1 -1
  326. package/dist/components/list/list.js +6 -4
  327. package/dist/components/list/list.js.map +1 -1
  328. package/dist/components/listbox/context.js +3 -3
  329. package/dist/components/listbox/context.js.map +1 -1
  330. package/dist/components/loading-bar/context.js +1 -1
  331. package/dist/components/loading-bar/context.js.map +1 -1
  332. package/dist/components/log/context.js +1 -1
  333. package/dist/components/log/context.js.map +1 -1
  334. package/dist/components/marquee/context.js +1 -1
  335. package/dist/components/marquee/context.js.map +1 -1
  336. package/dist/components/masonry/masonry.d.ts +41 -0
  337. package/dist/components/masonry/masonry.d.ts.map +1 -0
  338. package/dist/components/masonry/masonry.js +159 -0
  339. package/dist/components/masonry/masonry.js.map +1 -0
  340. package/dist/components/mention/context.js +2 -2
  341. package/dist/components/mention/context.js.map +1 -1
  342. package/dist/components/mention/mention.d.ts +7 -1
  343. package/dist/components/mention/mention.d.ts.map +1 -1
  344. package/dist/components/mention/mention.js +18 -8
  345. package/dist/components/mention/mention.js.map +1 -1
  346. package/dist/components/mention/use-mention.d.ts +4 -0
  347. package/dist/components/mention/use-mention.d.ts.map +1 -1
  348. package/dist/components/mention/use-mention.js +14 -3
  349. package/dist/components/mention/use-mention.js.map +1 -1
  350. package/dist/components/menu/context.d.ts +9 -1
  351. package/dist/components/menu/context.d.ts.map +1 -1
  352. package/dist/components/menu/context.js +13 -4
  353. package/dist/components/menu/context.js.map +1 -1
  354. package/dist/components/menu/menu.d.ts +72 -4
  355. package/dist/components/menu/menu.d.ts.map +1 -1
  356. package/dist/components/menu/menu.js +80 -20
  357. package/dist/components/menu/menu.js.map +1 -1
  358. package/dist/components/menu/use-menu.d.ts +4 -0
  359. package/dist/components/menu/use-menu.d.ts.map +1 -1
  360. package/dist/components/menu/use-menu.js +15 -4
  361. package/dist/components/menu/use-menu.js.map +1 -1
  362. package/dist/components/menubar/context.d.ts +21 -0
  363. package/dist/components/menubar/context.d.ts.map +1 -0
  364. package/dist/components/menubar/context.js +23 -5
  365. package/dist/components/menubar/context.js.map +1 -1
  366. package/dist/components/menubar/menubar.d.ts +128 -1
  367. package/dist/components/menubar/menubar.d.ts.map +1 -1
  368. package/dist/components/menubar/menubar.js +152 -16
  369. package/dist/components/menubar/menubar.js.map +1 -1
  370. package/dist/components/menubar/use-menubar.d.ts +2 -0
  371. package/dist/components/menubar/use-menubar.d.ts.map +1 -1
  372. package/dist/components/menubar/use-menubar.js +9 -3
  373. package/dist/components/menubar/use-menubar.js.map +1 -1
  374. package/dist/components/navigation-menu/context.js +1 -1
  375. package/dist/components/navigation-menu/context.js.map +1 -1
  376. package/dist/components/navigation-menu/navigation-menu.d.ts.map +1 -1
  377. package/dist/components/navigation-menu/navigation-menu.js +22 -3
  378. package/dist/components/navigation-menu/navigation-menu.js.map +1 -1
  379. package/dist/components/navigation-menu/use-navigation-menu.d.ts +2 -0
  380. package/dist/components/navigation-menu/use-navigation-menu.d.ts.map +1 -1
  381. package/dist/components/navigation-menu/use-navigation-menu.js +22 -2
  382. package/dist/components/navigation-menu/use-navigation-menu.js.map +1 -1
  383. package/dist/components/notification/context.d.ts +23 -0
  384. package/dist/components/notification/context.d.ts.map +1 -0
  385. package/dist/components/notification/context.js +28 -0
  386. package/dist/components/notification/context.js.map +1 -0
  387. package/dist/components/notification/notification.d.ts +249 -0
  388. package/dist/components/notification/notification.d.ts.map +1 -0
  389. package/dist/components/notification/notification.js +179 -0
  390. package/dist/components/notification/notification.js.map +1 -0
  391. package/dist/components/notification/use-notification.d.ts +14 -0
  392. package/dist/components/notification/use-notification.d.ts.map +1 -0
  393. package/dist/components/notification/use-notification.js +42 -0
  394. package/dist/components/notification/use-notification.js.map +1 -0
  395. package/dist/components/number-animation/number-animation.d.ts +1 -1
  396. package/dist/components/number-field/context.js +1 -1
  397. package/dist/components/number-field/context.js.map +1 -1
  398. package/dist/components/number-field/number-field.d.ts +23 -2
  399. package/dist/components/number-field/number-field.d.ts.map +1 -1
  400. package/dist/components/number-field/number-field.js +23 -2
  401. package/dist/components/number-field/number-field.js.map +1 -1
  402. package/dist/components/page-header/context.js +1 -1
  403. package/dist/components/page-header/context.js.map +1 -1
  404. package/dist/components/page-header/page-header.d.ts.map +1 -1
  405. package/dist/components/page-header/page-header.js +2 -1
  406. package/dist/components/page-header/page-header.js.map +1 -1
  407. package/dist/components/pagination/context.js +1 -1
  408. package/dist/components/pagination/context.js.map +1 -1
  409. package/dist/components/pagination/pagination.d.ts +58 -4
  410. package/dist/components/pagination/pagination.d.ts.map +1 -1
  411. package/dist/components/pagination/pagination.js +85 -5
  412. package/dist/components/pagination/pagination.js.map +1 -1
  413. package/dist/components/pagination/use-pagination.d.ts +12 -2
  414. package/dist/components/pagination/use-pagination.d.ts.map +1 -1
  415. package/dist/components/pagination/use-pagination.js +50 -5
  416. package/dist/components/pagination/use-pagination.js.map +1 -1
  417. package/dist/components/password-input/context.d.ts +6 -0
  418. package/dist/components/password-input/context.d.ts.map +1 -0
  419. package/dist/components/password-input/context.js +15 -0
  420. package/dist/components/password-input/context.js.map +1 -0
  421. package/dist/components/password-input/password-input.d.ts +179 -0
  422. package/dist/components/password-input/password-input.d.ts.map +1 -0
  423. package/dist/components/password-input/password-input.js +147 -0
  424. package/dist/components/password-input/password-input.js.map +1 -0
  425. package/dist/components/password-input/use-password-input.d.ts +10 -0
  426. package/dist/components/password-input/use-password-input.d.ts.map +1 -0
  427. package/dist/components/password-input/use-password-input.js +18 -0
  428. package/dist/components/password-input/use-password-input.js.map +1 -0
  429. package/dist/components/pin-input/context.js +1 -1
  430. package/dist/components/pin-input/context.js.map +1 -1
  431. package/dist/components/pin-input/pin-input.d.ts +9 -0
  432. package/dist/components/pin-input/pin-input.d.ts.map +1 -1
  433. package/dist/components/pin-input/pin-input.js +4 -0
  434. package/dist/components/pin-input/pin-input.js.map +1 -1
  435. package/dist/components/popconfirm/context.js +1 -1
  436. package/dist/components/popconfirm/context.js.map +1 -1
  437. package/dist/components/popconfirm/popconfirm.d.ts +11 -3
  438. package/dist/components/popconfirm/popconfirm.d.ts.map +1 -1
  439. package/dist/components/popconfirm/popconfirm.js +25 -11
  440. package/dist/components/popconfirm/popconfirm.js.map +1 -1
  441. package/dist/components/popconfirm/use-popconfirm.d.ts +4 -0
  442. package/dist/components/popconfirm/use-popconfirm.d.ts.map +1 -1
  443. package/dist/components/popconfirm/use-popconfirm.js +14 -3
  444. package/dist/components/popconfirm/use-popconfirm.js.map +1 -1
  445. package/dist/components/popover/context.js +1 -1
  446. package/dist/components/popover/context.js.map +1 -1
  447. package/dist/components/popover/popover.d.ts +12 -4
  448. package/dist/components/popover/popover.d.ts.map +1 -1
  449. package/dist/components/popover/popover.js +27 -11
  450. package/dist/components/popover/popover.js.map +1 -1
  451. package/dist/components/popover/use-popover.d.ts +4 -0
  452. package/dist/components/popover/use-popover.d.ts.map +1 -1
  453. package/dist/components/popover/use-popover.js +15 -4
  454. package/dist/components/popover/use-popover.js.map +1 -1
  455. package/dist/components/popselect/context.js +2 -2
  456. package/dist/components/popselect/context.js.map +1 -1
  457. package/dist/components/popselect/popselect.d.ts +30 -5
  458. package/dist/components/popselect/popselect.d.ts.map +1 -1
  459. package/dist/components/popselect/popselect.js +51 -13
  460. package/dist/components/popselect/popselect.js.map +1 -1
  461. package/dist/components/popselect/use-popselect.d.ts +6 -1
  462. package/dist/components/popselect/use-popselect.d.ts.map +1 -1
  463. package/dist/components/popselect/use-popselect.js +24 -12
  464. package/dist/components/popselect/use-popselect.js.map +1 -1
  465. package/dist/components/progress/progress.d.ts +5 -2
  466. package/dist/components/progress/progress.d.ts.map +1 -1
  467. package/dist/components/progress/progress.js +4 -1
  468. package/dist/components/progress/progress.js.map +1 -1
  469. package/dist/components/qr-code/context.js +1 -1
  470. package/dist/components/qr-code/context.js.map +1 -1
  471. package/dist/components/radio-group/context.js +2 -2
  472. package/dist/components/radio-group/context.js.map +1 -1
  473. package/dist/components/radio-group/radio-group.d.ts +9 -0
  474. package/dist/components/radio-group/radio-group.d.ts.map +1 -1
  475. package/dist/components/radio-group/radio-group.js +3 -0
  476. package/dist/components/radio-group/radio-group.js.map +1 -1
  477. package/dist/components/rating/context.js +1 -1
  478. package/dist/components/rating/context.js.map +1 -1
  479. package/dist/components/result/context.js +1 -1
  480. package/dist/components/result/context.js.map +1 -1
  481. package/dist/components/result/result.d.ts.map +1 -1
  482. package/dist/components/result/result.js +3 -1
  483. package/dist/components/result/result.js.map +1 -1
  484. package/dist/components/scroll-area/context.js +2 -2
  485. package/dist/components/scroll-area/context.js.map +1 -1
  486. package/dist/components/scroll-area/scroll-area.d.ts +28 -9
  487. package/dist/components/scroll-area/scroll-area.d.ts.map +1 -1
  488. package/dist/components/scroll-area/scroll-area.js +24 -4
  489. package/dist/components/scroll-area/scroll-area.js.map +1 -1
  490. package/dist/components/scroll-area/use-scroll-area.d.ts +10 -8
  491. package/dist/components/scroll-area/use-scroll-area.d.ts.map +1 -1
  492. package/dist/components/scroll-area/use-scroll-area.js +24 -10
  493. package/dist/components/scroll-area/use-scroll-area.js.map +1 -1
  494. package/dist/components/scrollbar/context.d.ts +7 -0
  495. package/dist/components/scrollbar/context.d.ts.map +1 -0
  496. package/dist/components/scrollbar/context.js +15 -0
  497. package/dist/components/scrollbar/context.js.map +1 -0
  498. package/dist/components/scrollbar/scrollbar.d.ts +162 -0
  499. package/dist/components/scrollbar/scrollbar.d.ts.map +1 -0
  500. package/dist/components/scrollbar/scrollbar.js +129 -0
  501. package/dist/components/scrollbar/scrollbar.js.map +1 -0
  502. package/dist/components/scrollbar/use-scrollbar.d.ts +23 -0
  503. package/dist/components/scrollbar/use-scrollbar.d.ts.map +1 -0
  504. package/dist/components/scrollbar/use-scrollbar.js +43 -0
  505. package/dist/components/scrollbar/use-scrollbar.js.map +1 -0
  506. package/dist/components/segmented/context.d.ts +13 -0
  507. package/dist/components/segmented/context.d.ts.map +1 -0
  508. package/dist/components/segmented/context.js +24 -0
  509. package/dist/components/segmented/context.js.map +1 -0
  510. package/dist/components/segmented/segmented.d.ts +185 -0
  511. package/dist/components/segmented/segmented.d.ts.map +1 -0
  512. package/dist/components/segmented/segmented.js +165 -0
  513. package/dist/components/segmented/segmented.js.map +1 -0
  514. package/dist/components/segmented/use-segmented.d.ts +15 -0
  515. package/dist/components/segmented/use-segmented.d.ts.map +1 -0
  516. package/dist/components/segmented/use-segmented.js +22 -0
  517. package/dist/components/segmented/use-segmented.js.map +1 -0
  518. package/dist/components/select/context.js +3 -3
  519. package/dist/components/select/context.js.map +1 -1
  520. package/dist/components/select/select.d.ts +26 -4
  521. package/dist/components/select/select.d.ts.map +1 -1
  522. package/dist/components/select/select.js +45 -17
  523. package/dist/components/select/select.js.map +1 -1
  524. package/dist/components/select/use-select.d.ts +4 -0
  525. package/dist/components/select/use-select.d.ts.map +1 -1
  526. package/dist/components/select/use-select.js +14 -3
  527. package/dist/components/select/use-select.js.map +1 -1
  528. package/dist/components/separator/separator.d.ts.map +1 -1
  529. package/dist/components/separator/separator.js +11 -2
  530. package/dist/components/separator/separator.js.map +1 -1
  531. package/dist/components/side-nav/context.js +2 -2
  532. package/dist/components/side-nav/context.js.map +1 -1
  533. package/dist/components/side-nav/side-nav.d.ts +6 -3
  534. package/dist/components/side-nav/side-nav.d.ts.map +1 -1
  535. package/dist/components/side-nav/side-nav.js +32 -4
  536. package/dist/components/side-nav/side-nav.js.map +1 -1
  537. package/dist/components/side-nav/use-side-nav.d.ts +5 -0
  538. package/dist/components/side-nav/use-side-nav.d.ts.map +1 -1
  539. package/dist/components/side-nav/use-side-nav.js +12 -1
  540. package/dist/components/side-nav/use-side-nav.js.map +1 -1
  541. package/dist/components/signature-pad/context.d.ts +6 -0
  542. package/dist/components/signature-pad/context.d.ts.map +1 -0
  543. package/dist/components/signature-pad/context.js +15 -0
  544. package/dist/components/signature-pad/context.js.map +1 -0
  545. package/dist/components/signature-pad/signature-pad.d.ts +108 -0
  546. package/dist/components/signature-pad/signature-pad.d.ts.map +1 -0
  547. package/dist/components/signature-pad/signature-pad.js +118 -0
  548. package/dist/components/signature-pad/signature-pad.js.map +1 -0
  549. package/dist/components/signature-pad/use-signature-pad.d.ts +14 -0
  550. package/dist/components/signature-pad/use-signature-pad.d.ts.map +1 -0
  551. package/dist/components/signature-pad/use-signature-pad.js +24 -0
  552. package/dist/components/signature-pad/use-signature-pad.js.map +1 -0
  553. package/dist/components/skeleton/context.js +1 -1
  554. package/dist/components/skeleton/context.js.map +1 -1
  555. package/dist/components/slider/context.js +2 -2
  556. package/dist/components/slider/context.js.map +1 -1
  557. package/dist/components/space/context.d.ts +10 -0
  558. package/dist/components/space/context.d.ts.map +1 -0
  559. package/dist/components/space/context.js +15 -0
  560. package/dist/components/space/context.js.map +1 -0
  561. package/dist/components/space/space.d.ts +75 -0
  562. package/dist/components/space/space.d.ts.map +1 -0
  563. package/dist/components/space/space.js +91 -0
  564. package/dist/components/space/space.js.map +1 -0
  565. package/dist/components/spinner/context.js +1 -1
  566. package/dist/components/spinner/context.js.map +1 -1
  567. package/dist/components/splitter/context.js +1 -1
  568. package/dist/components/splitter/context.js.map +1 -1
  569. package/dist/components/splitter/splitter.d.ts +1 -1
  570. package/dist/components/statistic/context.js +1 -1
  571. package/dist/components/statistic/context.js.map +1 -1
  572. package/dist/components/statistic/statistic.d.ts.map +1 -1
  573. package/dist/components/statistic/statistic.js +2 -1
  574. package/dist/components/statistic/statistic.js.map +1 -1
  575. package/dist/components/steps/context.js +2 -2
  576. package/dist/components/steps/context.js.map +1 -1
  577. package/dist/components/steps/steps.d.ts +1 -1
  578. package/dist/components/switch/switch.d.ts +9 -0
  579. package/dist/components/switch/switch.d.ts.map +1 -1
  580. package/dist/components/switch/switch.js +11 -2
  581. package/dist/components/switch/switch.js.map +1 -1
  582. package/dist/components/table/context.js +4 -4
  583. package/dist/components/table/context.js.map +1 -1
  584. package/dist/components/table/table.d.ts +70 -2
  585. package/dist/components/table/table.d.ts.map +1 -1
  586. package/dist/components/table/table.js +40 -1
  587. package/dist/components/table/table.js.map +1 -1
  588. package/dist/components/table/use-table.d.ts +1 -1
  589. package/dist/components/table/use-table.d.ts.map +1 -1
  590. package/dist/components/table/use-table.js +3 -2
  591. package/dist/components/table/use-table.js.map +1 -1
  592. package/dist/components/tabs/context.js +1 -1
  593. package/dist/components/tabs/context.js.map +1 -1
  594. package/dist/components/tag/context.d.ts +6 -0
  595. package/dist/components/tag/context.d.ts.map +1 -0
  596. package/dist/components/tag/context.js +15 -0
  597. package/dist/components/tag/context.js.map +1 -0
  598. package/dist/components/tag/tag.d.ts +71 -0
  599. package/dist/components/tag/tag.d.ts.map +1 -0
  600. package/dist/components/tag/tag.js +61 -0
  601. package/dist/components/tag/tag.js.map +1 -0
  602. package/dist/components/tag/use-tag.d.ts +10 -0
  603. package/dist/components/tag/use-tag.d.ts.map +1 -0
  604. package/dist/components/tag/use-tag.js +28 -0
  605. package/dist/components/tag/use-tag.js.map +1 -0
  606. package/dist/components/tags-input/context.js +2 -2
  607. package/dist/components/tags-input/context.js.map +1 -1
  608. package/dist/components/tags-input/tags-input.d.ts +2 -2
  609. package/dist/components/tags-input/tags-input.d.ts.map +1 -1
  610. package/dist/components/tags-input/tags-input.js +7 -1
  611. package/dist/components/tags-input/tags-input.js.map +1 -1
  612. package/dist/components/text-field/context.js +1 -1
  613. package/dist/components/text-field/context.js.map +1 -1
  614. package/dist/components/text-field/text-field.d.ts +24 -3
  615. package/dist/components/text-field/text-field.d.ts.map +1 -1
  616. package/dist/components/text-field/text-field.js +23 -4
  617. package/dist/components/text-field/text-field.js.map +1 -1
  618. package/dist/components/thread/context.d.ts +7 -0
  619. package/dist/components/thread/context.d.ts.map +1 -0
  620. package/dist/components/thread/context.js +1 -1
  621. package/dist/components/thread/context.js.map +1 -1
  622. package/dist/components/time/time.d.ts +4 -4
  623. package/dist/components/time/time.d.ts.map +1 -1
  624. package/dist/components/time/time.js.map +1 -1
  625. package/dist/components/time-field/context.js +1 -1
  626. package/dist/components/time-field/context.js.map +1 -1
  627. package/dist/components/time-field/time-field.d.ts +18 -3
  628. package/dist/components/time-field/time-field.d.ts.map +1 -1
  629. package/dist/components/time-field/time-field.js +20 -1
  630. package/dist/components/time-field/time-field.js.map +1 -1
  631. package/dist/components/time-picker/context.js +2 -2
  632. package/dist/components/time-picker/context.js.map +1 -1
  633. package/dist/components/time-picker/time-picker.d.ts +93 -6
  634. package/dist/components/time-picker/time-picker.d.ts.map +1 -1
  635. package/dist/components/time-picker/time-picker.js +89 -9
  636. package/dist/components/time-picker/time-picker.js.map +1 -1
  637. package/dist/components/time-picker/use-time-picker.d.ts +5 -0
  638. package/dist/components/time-picker/use-time-picker.d.ts.map +1 -1
  639. package/dist/components/time-picker/use-time-picker.js +17 -3
  640. package/dist/components/time-picker/use-time-picker.js.map +1 -1
  641. package/dist/components/timeline/context.js +2 -2
  642. package/dist/components/timeline/context.js.map +1 -1
  643. package/dist/components/timeline/timeline.d.ts.map +1 -1
  644. package/dist/components/timeline/timeline.js +2 -1
  645. package/dist/components/timeline/timeline.js.map +1 -1
  646. package/dist/components/timer/context.d.ts +6 -0
  647. package/dist/components/timer/context.d.ts.map +1 -0
  648. package/dist/components/timer/context.js +15 -0
  649. package/dist/components/timer/context.js.map +1 -0
  650. package/dist/components/timer/timer.d.ts +110 -0
  651. package/dist/components/timer/timer.d.ts.map +1 -0
  652. package/dist/components/timer/timer.js +139 -0
  653. package/dist/components/timer/timer.js.map +1 -0
  654. package/dist/components/timer/use-timer.d.ts +13 -0
  655. package/dist/components/timer/use-timer.d.ts.map +1 -0
  656. package/dist/components/timer/use-timer.js +19 -0
  657. package/dist/components/timer/use-timer.js.map +1 -0
  658. package/dist/components/toast/context.js +1 -1
  659. package/dist/components/toast/context.js.map +1 -1
  660. package/dist/components/toast/toast.d.ts +3 -15
  661. package/dist/components/toast/toast.d.ts.map +1 -1
  662. package/dist/components/toast/toast.js +1 -12
  663. package/dist/components/toast/toast.js.map +1 -1
  664. package/dist/components/toast/use-toast.d.ts.map +1 -1
  665. package/dist/components/toast/use-toast.js +1 -7
  666. package/dist/components/toast/use-toast.js.map +1 -1
  667. package/dist/components/toggle-group/context.js +1 -1
  668. package/dist/components/toggle-group/context.js.map +1 -1
  669. package/dist/components/toggle-group/toggle-group.d.ts +10 -1
  670. package/dist/components/toggle-group/toggle-group.d.ts.map +1 -1
  671. package/dist/components/toggle-group/toggle-group.js +4 -0
  672. package/dist/components/toggle-group/toggle-group.js.map +1 -1
  673. package/dist/components/toolbar/context.js +1 -1
  674. package/dist/components/toolbar/context.js.map +1 -1
  675. package/dist/components/tooltip/context.js +1 -1
  676. package/dist/components/tooltip/context.js.map +1 -1
  677. package/dist/components/tooltip/tooltip.d.ts +11 -3
  678. package/dist/components/tooltip/tooltip.d.ts.map +1 -1
  679. package/dist/components/tooltip/tooltip.js +31 -12
  680. package/dist/components/tooltip/tooltip.js.map +1 -1
  681. package/dist/components/tooltip/use-tooltip.d.ts +6 -0
  682. package/dist/components/tooltip/use-tooltip.d.ts.map +1 -1
  683. package/dist/components/tooltip/use-tooltip.js +36 -5
  684. package/dist/components/tooltip/use-tooltip.js.map +1 -1
  685. package/dist/components/tour/context.js +1 -1
  686. package/dist/components/tour/context.js.map +1 -1
  687. package/dist/components/tour/tour.d.ts +3 -3
  688. package/dist/components/tour/tour.d.ts.map +1 -1
  689. package/dist/components/tour/tour.js +20 -11
  690. package/dist/components/tour/tour.js.map +1 -1
  691. package/dist/components/tour/use-tour.d.ts +6 -0
  692. package/dist/components/tour/use-tour.d.ts.map +1 -1
  693. package/dist/components/tour/use-tour.js +18 -3
  694. package/dist/components/tour/use-tour.js.map +1 -1
  695. package/dist/components/transfer/context.js +3 -3
  696. package/dist/components/transfer/context.js.map +1 -1
  697. package/dist/components/transfer/transfer.d.ts +10 -10
  698. package/dist/components/transfer/transfer.d.ts.map +1 -1
  699. package/dist/components/transfer/transfer.js +8 -8
  700. package/dist/components/transfer/transfer.js.map +1 -1
  701. package/dist/components/tree/context.js +2 -2
  702. package/dist/components/tree/context.js.map +1 -1
  703. package/dist/components/tree/tree.d.ts +36 -10
  704. package/dist/components/tree/tree.d.ts.map +1 -1
  705. package/dist/components/tree/tree.js +31 -6
  706. package/dist/components/tree/tree.js.map +1 -1
  707. package/dist/components/tree-select/context.js +2 -2
  708. package/dist/components/tree-select/context.js.map +1 -1
  709. package/dist/components/tree-select/tree-select.d.ts +23 -3
  710. package/dist/components/tree-select/tree-select.d.ts.map +1 -1
  711. package/dist/components/tree-select/tree-select.js +60 -12
  712. package/dist/components/tree-select/tree-select.js.map +1 -1
  713. package/dist/components/tree-select/use-tree-select.d.ts +4 -0
  714. package/dist/components/tree-select/use-tree-select.d.ts.map +1 -1
  715. package/dist/components/tree-select/use-tree-select.js +15 -4
  716. package/dist/components/tree-select/use-tree-select.js.map +1 -1
  717. package/dist/components/typography/context.js +1 -1
  718. package/dist/components/typography/context.js.map +1 -1
  719. package/dist/components/typography/typography.d.ts.map +1 -1
  720. package/dist/components/typography/typography.js +2 -1
  721. package/dist/components/typography/typography.js.map +1 -1
  722. package/dist/components/virtualizer/context.js +1 -1
  723. package/dist/components/virtualizer/context.js.map +1 -1
  724. package/dist/components/watermark/context.js +1 -1
  725. package/dist/components/watermark/context.js.map +1 -1
  726. package/dist/config/config.d.ts +26 -10
  727. package/dist/config/config.d.ts.map +1 -1
  728. package/dist/config/config.js +42 -15
  729. package/dist/config/config.js.map +1 -1
  730. package/dist/index.d.ts +75 -29
  731. package/dist/index.js +74 -28
  732. package/dist/package.js +6 -0
  733. package/dist/package.js.map +1 -0
  734. package/dist/runtime/as-child.js +66 -0
  735. package/dist/runtime/as-child.js.map +1 -0
  736. package/dist/runtime/config-defaults.js +19 -0
  737. package/dist/runtime/config-defaults.js.map +1 -0
  738. package/dist/runtime/normalize-props.d.ts.map +1 -1
  739. package/dist/runtime/normalize-props.js +5 -1
  740. package/dist/runtime/normalize-props.js.map +1 -1
  741. package/dist/runtime/use-machine.d.ts.map +1 -1
  742. package/dist/runtime/use-machine.js +17 -1
  743. package/dist/runtime/use-machine.js.map +1 -1
  744. package/dist/runtime/use-overlay-exit.js +40 -0
  745. package/dist/runtime/use-overlay-exit.js.map +1 -0
  746. package/dist/runtime/use-scrollbars.js +66 -0
  747. package/dist/runtime/use-scrollbars.js.map +1 -0
  748. package/dist/services/dialog-service.d.ts +43 -8
  749. package/dist/services/dialog-service.d.ts.map +1 -1
  750. package/dist/services/dialog-service.js +47 -20
  751. package/dist/services/dialog-service.js.map +1 -1
  752. package/dist/services/glyph.js +93 -20
  753. package/dist/services/glyph.js.map +1 -1
  754. package/dist/services/loading-bar-service.d.ts +46 -0
  755. package/dist/services/loading-bar-service.d.ts.map +1 -0
  756. package/dist/services/loading-bar-service.js +70 -0
  757. package/dist/services/loading-bar-service.js.map +1 -0
  758. package/dist/services/mount-host.js +35 -0
  759. package/dist/services/mount-host.js.map +1 -0
  760. package/dist/services/notification-service.d.ts +46 -0
  761. package/dist/services/notification-service.d.ts.map +1 -0
  762. package/dist/services/notification-service.js +91 -0
  763. package/dist/services/notification-service.js.map +1 -0
  764. package/dist/services/service-config.js +16 -0
  765. package/dist/services/service-config.js.map +1 -0
  766. package/dist/services/toast-service.d.ts +23 -9
  767. package/dist/services/toast-service.d.ts.map +1 -1
  768. package/dist/services/toast-service.js +103 -48
  769. package/dist/services/toast-service.js.map +1 -1
  770. package/package.json +18 -14
  771. package/dist/components/toaster/context.js +0 -19
  772. package/dist/components/toaster/context.js.map +0 -1
  773. package/dist/components/toaster/toaster.d.ts +0 -135
  774. package/dist/components/toaster/toaster.d.ts.map +0 -1
  775. package/dist/components/toaster/toaster.js +0 -91
  776. package/dist/components/toaster/toaster.js.map +0 -1
  777. package/dist/components/toaster/use-toaster.d.ts +0 -15
  778. package/dist/components/toaster/use-toaster.d.ts.map +0 -1
  779. package/dist/components/toaster/use-toaster.js +0 -23
  780. package/dist/components/toaster/use-toaster.js.map +0 -1
@@ -0,0 +1,139 @@
1
+ import { withXhConfig } from "../../config/config.js";
2
+ import { slotPaints } from "../../runtime/slot-content.js";
3
+ import { provideTimer, useTimerContext } from "./context.js";
4
+ import { useTimer } from "./use-timer.js";
5
+ import { defineComponent, h } from "vue";
6
+ //#region src/components/timer/timer.ts
7
+ /** 没写默认插槽时铺开的那几段:时、分、秒。要天或毫秒就自己写部件。 */
8
+ const DEFAULT_UNITS = [
9
+ "hours",
10
+ "minutes",
11
+ "seconds"
12
+ ];
13
+ const XhTimerRoot = defineComponent({
14
+ name: "XhTimerRoot",
15
+ props: {
16
+ startMs: {
17
+ type: Number,
18
+ default: void 0
19
+ },
20
+ targetMs: {
21
+ type: Number,
22
+ default: void 0
23
+ },
24
+ countdown: {
25
+ type: Boolean,
26
+ default: void 0
27
+ },
28
+ autoStart: {
29
+ type: Boolean,
30
+ default: void 0
31
+ },
32
+ interval: {
33
+ type: Number,
34
+ default: void 0
35
+ },
36
+ size: {
37
+ type: String,
38
+ default: void 0
39
+ },
40
+ translations: {
41
+ type: Object,
42
+ default: void 0
43
+ }
44
+ },
45
+ emits: {
46
+ tick: (_details) => true,
47
+ complete: (_details) => true
48
+ },
49
+ slots: Object,
50
+ setup(props, { slots, emit }) {
51
+ const ctx = useTimer(withXhConfig("timer", props), {
52
+ onTick: (details) => emit("tick", details),
53
+ onComplete: (details) => emit("complete", details)
54
+ });
55
+ provideTimer(ctx);
56
+ return () => {
57
+ const api = ctx.api.value;
58
+ const content = slots.default?.({
59
+ phase: api.phase,
60
+ value: api.value,
61
+ elapsed: api.elapsed,
62
+ running: api.running,
63
+ paused: api.paused,
64
+ completed: api.completed,
65
+ countdown: api.countdown,
66
+ segments: api.segments,
67
+ segmentText: api.segmentText,
68
+ controlAction: api.controlAction,
69
+ controlLabel: api.controlLabel,
70
+ start: api.start,
71
+ pause: api.pause,
72
+ resume: api.resume,
73
+ reset: api.reset
74
+ });
75
+ return h("div", api.getRootProps(), slotPaints(content) ? content : [renderDefaultTree()]);
76
+ };
77
+ }
78
+ });
79
+ const XhTimerArea = defineComponent({
80
+ name: "XhTimerArea",
81
+ setup(_, { slots }) {
82
+ const ctx = useTimerContext();
83
+ return () => h("div", ctx.api.value.getAreaProps(), slots.default?.());
84
+ }
85
+ });
86
+ const XhTimerItem = defineComponent({
87
+ name: "XhTimerItem",
88
+ props: { unit: {
89
+ type: String,
90
+ required: true
91
+ } },
92
+ setup(props) {
93
+ const ctx = useTimerContext();
94
+ return () => {
95
+ const api = ctx.api.value;
96
+ return h("span", api.getItemProps({ unit: props.unit }), api.segmentText(props.unit));
97
+ };
98
+ }
99
+ });
100
+ const XhTimerSeparator = defineComponent({
101
+ name: "XhTimerSeparator",
102
+ setup(_, { slots }) {
103
+ const ctx = useTimerContext();
104
+ return () => {
105
+ const content = slots.default?.();
106
+ return h("span", ctx.api.value.getSeparatorProps(), slotPaints(content) ? content : ":");
107
+ };
108
+ }
109
+ });
110
+ const XhTimerControl = defineComponent({
111
+ name: "XhTimerControl",
112
+ setup(_, { slots }) {
113
+ const ctx = useTimerContext();
114
+ return () => {
115
+ const api = ctx.api.value;
116
+ const content = slots.default?.();
117
+ return h("button", api.getControlProps(), slotPaints(content) ? content : api.controlLabel);
118
+ };
119
+ }
120
+ });
121
+ /**
122
+ * 没写默认插槽时铺开的整套结构:一个时间区,里面是时、分、秒三段与两个冒号。
123
+ * 与手写部件产出的 DOM 完全一致,要改结构就写默认插槽,行为不变。
124
+ */
125
+ function renderDefaultTree() {
126
+ const children = [];
127
+ for (const [index, unit] of DEFAULT_UNITS.entries()) {
128
+ if (index > 0) children.push(h(XhTimerSeparator, { key: `separator-${unit}` }));
129
+ children.push(h(XhTimerItem, {
130
+ key: unit,
131
+ unit
132
+ }));
133
+ }
134
+ return h(XhTimerArea, null, () => children);
135
+ }
136
+ //#endregion
137
+ export { XhTimerArea, XhTimerControl, XhTimerItem, XhTimerRoot, XhTimerSeparator };
138
+
139
+ //# sourceMappingURL=timer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timer.js","names":[],"sources":["../../../src/components/timer/timer.ts"],"sourcesContent":["import type { TimerApi, TimerSchema, TimerTranslations, TimerUnit } from '@xihan-ui/headless'\nimport type { Size } from '@xihan-ui/kernel'\nimport type { PropType, SlotsType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { slotPaints } from '../../runtime/slot-content'\nimport { provideTimer, useTimerContext } from './context'\nimport { useTimer } from './use-timer'\n\ntype TimerProps = TimerSchema['props']\n\n/** 默认插槽的载荷:当前状态与显示值、拆开的每一段,以及起停归零四个动作。 */\nexport type TimerRootSlotProps = Pick<\n TimerApi,\n 'phase' | 'value' | 'elapsed' | 'running' | 'paused' | 'completed' | 'countdown'\n | 'segments' | 'segmentText' | 'controlAction' | 'controlLabel'\n | 'start' | 'pause' | 'resume' | 'reset'\n>\n\n/** 没写默认插槽时铺开的那几段:时、分、秒。要天或毫秒就自己写部件。 */\nconst DEFAULT_UNITS: readonly TimerUnit[] = ['hours', 'minutes', 'seconds']\n\nexport const XhTimerRoot = defineComponent({\n name: 'XhTimerRoot',\n // 全部 default: undefined,缺省值由机器与 connect 决定\n props: {\n startMs: { type: Number, default: undefined },\n targetMs: { type: Number, default: undefined },\n countdown: { type: Boolean, default: undefined },\n autoStart: { type: Boolean, default: undefined },\n interval: { type: Number, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n translations: { type: Object as PropType<Partial<TimerTranslations>>, default: undefined },\n },\n // tick 携带 { value, elapsed };complete 同形,只在到点那一刻发一次\n emits: {\n tick: (_details: PayloadOf<TimerProps, 'onTick'>) => true,\n complete: (_details: PayloadOf<TimerProps, 'onComplete'>) => true,\n },\n slots: Object as SlotsType<{\n default?: (props: TimerRootSlotProps) => VNode[]\n }>,\n setup(props, { slots, emit }) {\n const ctx = useTimer(withXhConfig('timer', props) as TimerProps, {\n onTick: details => emit('tick', details),\n onComplete: details => emit('complete', details),\n })\n provideTimer(ctx)\n\n return () => {\n const api = ctx.api.value\n const content = slots.default?.({\n phase: api.phase,\n value: api.value,\n elapsed: api.elapsed,\n running: api.running,\n paused: api.paused,\n completed: api.completed,\n countdown: api.countdown,\n segments: api.segments,\n segmentText: api.segmentText,\n controlAction: api.controlAction,\n controlLabel: api.controlLabel,\n start: api.start,\n pause: api.pause,\n resume: api.resume,\n reset: api.reset,\n })\n return h(\n 'div',\n api.getRootProps() as Record<string, unknown>,\n // 插槽为空(含 v-if 落空只剩注释节点)时退回组件自己铺的时分秒\n slotPaints(content) ? content : [renderDefaultTree()],\n )\n }\n },\n})\n\nexport const XhTimerArea = defineComponent({\n name: 'XhTimerArea',\n setup(_, { slots }) {\n const ctx = useTimerContext()\n return () => h('div', ctx.api.value.getAreaProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhTimerItem = defineComponent({\n name: 'XhTimerItem',\n props: {\n unit: { type: String as PropType<TimerUnit>, required: true },\n },\n setup(props) {\n const ctx = useTimerContext()\n return () => {\n const api = ctx.api.value\n // 这一段的数字恒由组件写,作者只声明它是哪一段:写在条目里的内容留不住,\n // 下一拍就会被新的数字盖掉,Web Components 侧也是元素接管这段文本\n return h(\n 'span',\n api.getItemProps({ unit: props.unit }) as Record<string, unknown>,\n api.segmentText(props.unit),\n )\n }\n },\n})\n\nexport const XhTimerSeparator = defineComponent({\n name: 'XhTimerSeparator',\n setup(_, { slots }) {\n const ctx = useTimerContext()\n return () => {\n const content = slots.default?.()\n // 缺省是冒号,换成别的记号写进插槽即可\n return h(\n 'span',\n ctx.api.value.getSeparatorProps() as Record<string, unknown>,\n slotPaints(content) ? content : ':',\n )\n }\n },\n})\n\nexport const XhTimerControl = defineComponent({\n name: 'XhTimerControl',\n setup(_, { slots }) {\n const ctx = useTimerContext()\n return () => {\n const api = ctx.api.value\n const content = slots.default?.()\n // 用原生 button,激活交给平台;没写内容时把当前动作的名字写上去\n return h(\n 'button',\n api.getControlProps() as Record<string, unknown>,\n slotPaints(content) ? content : api.controlLabel,\n )\n }\n },\n})\n\n/**\n * 没写默认插槽时铺开的整套结构:一个时间区,里面是时、分、秒三段与两个冒号。\n * 与手写部件产出的 DOM 完全一致,要改结构就写默认插槽,行为不变。\n */\nfunction renderDefaultTree(): VNode {\n const children: VNode[] = []\n for (const [index, unit] of DEFAULT_UNITS.entries()) {\n if (index > 0)\n children.push(h(XhTimerSeparator, { key: `separator-${unit}` }))\n children.push(h(XhTimerItem, { key: unit, unit }))\n }\n return h(XhTimerArea, null, () => children)\n}\n"],"mappings":";;;;;;;AAqBA,MAAM,gBAAsC;CAAC;CAAS;CAAW;AAAS;AAE1E,MAAa,cAAc,gBAAgB;CACzC,MAAM;CAEN,OAAO;EACL,SAAS;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC5C,UAAU;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC7C,WAAW;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC/C,WAAW;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC/C,UAAU;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC7C,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;EAC3D,cAAc;GAAE,MAAM;GAAgD,SAAS,KAAA;EAAU;CAC3F;CAEA,OAAO;EACL,OAAO,aAA8C;EACrD,WAAW,aAAkD;CAC/D;CACA,OAAO;CAGP,MAAM,OAAO,EAAE,OAAO,QAAQ;EAC5B,MAAM,MAAM,SAAS,aAAa,SAAS,KAAK,GAAiB;GAC/D,SAAQ,YAAW,KAAK,QAAQ,OAAO;GACvC,aAAY,YAAW,KAAK,YAAY,OAAO;EACjD,CAAC;EACD,aAAa,GAAG;EAEhB,aAAa;GACX,MAAM,MAAM,IAAI,IAAI;GACpB,MAAM,UAAU,MAAM,UAAU;IAC9B,OAAO,IAAI;IACX,OAAO,IAAI;IACX,SAAS,IAAI;IACb,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,WAAW,IAAI;IACf,WAAW,IAAI;IACf,UAAU,IAAI;IACd,aAAa,IAAI;IACjB,eAAe,IAAI;IACnB,cAAc,IAAI;IAClB,OAAO,IAAI;IACX,OAAO,IAAI;IACX,QAAQ,IAAI;IACZ,OAAO,IAAI;GACb,CAAC;GACD,OAAO,EACL,OACA,IAAI,aAAa,GAEjB,WAAW,OAAO,IAAI,UAAU,CAAC,kBAAkB,CAAC,CACtD;EACF;CACF;AACF,CAAC;AAED,MAAa,cAAc,gBAAgB;CACzC,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU,CAAC;CAClG;AACF,CAAC;AAED,MAAa,cAAc,gBAAgB;CACzC,MAAM;CACN,OAAO,EACL,MAAM;EAAE,MAAM;EAA+B,UAAU;CAAK,EAC9D;CACA,MAAM,OAAO;EACX,MAAM,MAAM,gBAAgB;EAC5B,aAAa;GACX,MAAM,MAAM,IAAI,IAAI;GAGpB,OAAO,EACL,QACA,IAAI,aAAa,EAAE,MAAM,MAAM,KAAK,CAAC,GACrC,IAAI,YAAY,MAAM,IAAI,CAC5B;EACF;CACF;AACF,CAAC;AAED,MAAa,mBAAmB,gBAAgB;CAC9C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa;GACX,MAAM,UAAU,MAAM,UAAU;GAEhC,OAAO,EACL,QACA,IAAI,IAAI,MAAM,kBAAkB,GAChC,WAAW,OAAO,IAAI,UAAU,GAClC;EACF;CACF;AACF,CAAC;AAED,MAAa,iBAAiB,gBAAgB;CAC5C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa;GACX,MAAM,MAAM,IAAI,IAAI;GACpB,MAAM,UAAU,MAAM,UAAU;GAEhC,OAAO,EACL,UACA,IAAI,gBAAgB,GACpB,WAAW,OAAO,IAAI,UAAU,IAAI,YACtC;EACF;CACF;AACF,CAAC;;;;;AAMD,SAAS,oBAA2B;CAClC,MAAM,WAAoB,CAAC;CAC3B,KAAK,MAAM,CAAC,OAAO,SAAS,cAAc,QAAQ,GAAG;EACnD,IAAI,QAAQ,GACV,SAAS,KAAK,EAAE,kBAAkB,EAAE,KAAK,aAAa,OAAO,CAAC,CAAC;EACjE,SAAS,KAAK,EAAE,aAAa;GAAE,KAAK;GAAM;EAAK,CAAC,CAAC;CACnD;CACA,OAAO,EAAE,aAAa,YAAY,QAAQ;AAC5C"}
@@ -0,0 +1,13 @@
1
+ import { ComputedRef } from "vue";
2
+ import { TimerApi, TimerSchema } from "@xihan-ui/headless";
3
+ import { Service } from "@xihan-ui/machine";
4
+ //#region src/components/timer/use-timer.d.ts
5
+ interface TimerContext {
6
+ api: ComputedRef<TimerApi>;
7
+ /** 机器实例,供组合式调用方直接送事件。 */
8
+ service: Service<TimerSchema>;
9
+ }
10
+ declare function useTimer(props: TimerSchema['props'], handlers?: Pick<TimerSchema['props'], 'onComplete' | 'onTick'>): TimerContext;
11
+ //#endregion
12
+ export { TimerContext, useTimer };
13
+ //# sourceMappingURL=use-timer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-timer.d.ts","names":[],"sources":["../../../src/components/timer/use-timer.ts"],"mappings":";;;;UAQiB;EACf,KAAK,YAAY;;EAEjB,SAAS,QAAQ;;iBAIH,SACd,OAAO,sBACP,WAAU,KAAK,iDACd"}
@@ -0,0 +1,19 @@
1
+ import { vueNormalize } from "../../runtime/normalize-props.js";
2
+ import { useMachine } from "../../runtime/use-machine.js";
3
+ import { computed } from "vue";
4
+ import { connectTimer, timerMachine } from "@xihan-ui/headless";
5
+ //#region src/components/timer/use-timer.ts
6
+ function useTimer(props, handlers = {}) {
7
+ const service = useMachine(timerMachine, () => ({
8
+ ...props,
9
+ ...handlers
10
+ }));
11
+ return {
12
+ api: computed(() => connectTimer(service, vueNormalize)),
13
+ service
14
+ };
15
+ }
16
+ //#endregion
17
+ export { useTimer };
18
+
19
+ //# sourceMappingURL=use-timer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-timer.js","names":[],"sources":["../../../src/components/timer/use-timer.ts"],"sourcesContent":["import type { TimerApi, TimerSchema } from '@xihan-ui/headless'\nimport type { Service } from '@xihan-ui/machine'\nimport type { ComputedRef } from 'vue'\nimport { connectTimer, timerMachine } from '@xihan-ui/headless'\nimport { computed } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { useMachine } from '../../runtime/use-machine'\n\nexport interface TimerContext {\n api: ComputedRef<TimerApi>\n /** 机器实例,供组合式调用方直接送事件。 */\n service: Service<TimerSchema>\n}\n\n// 不建 scope:connect 不派生任何 id\nexport function useTimer(\n props: TimerSchema['props'],\n handlers: Pick<TimerSchema['props'], 'onComplete' | 'onTick'> = {},\n): TimerContext {\n const service = useMachine(timerMachine, () => ({ ...props, ...handlers }))\n const api = computed(() => connectTimer(service, vueNormalize))\n return { api, service }\n}\n"],"mappings":";;;;;AAeA,SAAgB,SACd,OACA,WAAgE,CAAC,GACnD;CACd,MAAM,UAAU,WAAW,qBAAqB;EAAE,GAAG;EAAO,GAAG;CAAS,EAAE;CAE1E,OAAO;EAAE,KADG,eAAe,aAAa,SAAS,YAAY,CAClD;EAAG;CAAQ;AACxB"}
@@ -1,6 +1,6 @@
1
1
  import { inject, provide } from "vue";
2
2
  //#region src/components/toast/context.ts
3
- const KEY = Symbol("xh-toast");
3
+ const KEY = Symbol.for("xh-toast");
4
4
  function provideToast(ctx) {
5
5
  provide(KEY, ctx);
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/toast/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { ToastContext } from './use-toast'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<ToastContext> = Symbol('xh-toast')\n\nexport function provideToast(ctx: ToastContext): void {\n provide(KEY, ctx)\n}\n\nexport function useToastContext(): ToastContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Toast 部件必须用在 XhToastRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAkC,OAAO,UAAU;AAEzD,SAAgB,aAAa,KAAyB;CACpD,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,kBAAgC;CAC9C,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,iCAAiC;CACnD,OAAO;AACT"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/toast/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { ToastContext } from './use-toast'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<ToastContext> = Symbol.for('xh-toast')\n\nexport function provideToast(ctx: ToastContext): void {\n provide(KEY, ctx)\n}\n\nexport function useToastContext(): ToastContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Toast 部件必须用在 XhToastRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAkC,OAAO,IAAI,UAAU;AAE7D,SAAgB,aAAa,KAAyB;CACpD,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,kBAAgC;CAC9C,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,iCAAiC;CACnD,OAAO;AACT"}
@@ -14,10 +14,6 @@ declare const XhToastRoot: import("vue").DefineComponent<import("vue").ExtractPr
14
14
  type: StringConstructor;
15
15
  default: undefined;
16
16
  };
17
- description: {
18
- type: StringConstructor;
19
- default: undefined;
20
- };
21
17
  type: {
22
18
  type: PropType<ToastType>;
23
19
  default: undefined;
@@ -56,10 +52,6 @@ declare const XhToastRoot: import("vue").DefineComponent<import("vue").ExtractPr
56
52
  type: StringConstructor;
57
53
  default: undefined;
58
54
  };
59
- description: {
60
- type: StringConstructor;
61
- default: undefined;
62
- };
63
55
  type: {
64
56
  type: PropType<ToastType>;
65
57
  default: undefined;
@@ -90,22 +82,18 @@ declare const XhToastRoot: import("vue").DefineComponent<import("vue").ExtractPr
90
82
  }>, {
91
83
  type: ToastType;
92
84
  title: string;
93
- closable: boolean;
94
85
  translations: Partial<ToastTranslations>;
86
+ closable: boolean;
95
87
  duration: number;
96
- id: string;
97
- description: string;
98
88
  removeDelay: number;
99
89
  pauseOnPageIdle: boolean;
90
+ id: string;
100
91
  }, SlotsType<{
101
92
  default?: (props: ToastRootSlotProps) => VNode[];
102
93
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
103
94
  declare const XhToastTitle: import("vue").DefineComponent<{}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
104
95
  [key: string]: any;
105
96
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
106
- declare const XhToastDescription: import("vue").DefineComponent<{}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
107
- [key: string]: any;
108
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
109
97
  declare const XhToastActionTrigger: import("vue").DefineComponent<{}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
110
98
  [key: string]: any;
111
99
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -113,5 +101,5 @@ declare const XhToastCloseTrigger: import("vue").DefineComponent<{}, () => VNode
113
101
  [key: string]: any;
114
102
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
115
103
  //#endregion
116
- export { ToastRootSlotProps, XhToastActionTrigger, XhToastCloseTrigger, XhToastDescription, XhToastRoot, XhToastTitle };
104
+ export { ToastRootSlotProps, XhToastActionTrigger, XhToastCloseTrigger, XhToastRoot, XhToastTitle };
117
105
  //# sourceMappingURL=toast.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toast.d.ts","names":[],"sources":["../../../src/components/toast/toast.ts"],"mappings":";;;;KAQK,aAAa;;KAGN,qBAAqB,KAC/B;cAIW,2BAAW,8BAAA;;;;;;;;;;;;;;IAQI,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;IAKD,MAAA,SAAS,QAAQ;;;;;;EAIrB,kBAAA,UAAA,UAAU;EACjB,SAAA,UAAA,UAAU;;;;;;;;;;;;;;;IAVP,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;IAKD,MAAA,SAAS,QAAQ;;;;;;;;;;;;;;;;;EAQvC,WAAC,OAAO,uBAAuB;kCAsB3C;cAEW,4BAAY,0BAAA,oBAAA,4BAAA;;8BAWvB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,kCAAkB,0BAAA,oBAAA,4BAAA;;8BAU7B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,oCAAoB,0BAAA,oBAAA,4BAAA;;8BAO/B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,mCAAmB,0BAAA,oBAAA,4BAAA;;8BAM9B,qCAAA,iDAAA,aAAA,eAAA,oDAAA"}
1
+ {"version":3,"file":"toast.d.ts","names":[],"sources":["../../../src/components/toast/toast.ts"],"mappings":";;;;KAQK,aAAa;;KAGN,qBAAqB,KAC/B;cAIW,2BAAW,8BAAA;;;;;;;;;;IAOI,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;IAKD,MAAA,SAAS,QAAQ;;;;;;EAIrB,kBAAA,UAAA,UAAU;EACjB,SAAA,UAAA,UAAU;;;;;;;;;;;IAVP,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;IAKD,MAAA,SAAS,QAAQ;;;;;;;;;;;;;;;;EAQvC,WAAC,OAAO,uBAAuB;kCAsB3C;cAEW,4BAAY,0BAAA,oBAAA,4BAAA;;8BAWvB,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,oCAAoB,0BAAA,oBAAA,4BAAA;;8BAO/B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,mCAAmB,0BAAA,oBAAA,4BAAA;;8BAM9B,qCAAA,iDAAA,aAAA,eAAA,oDAAA"}
@@ -14,10 +14,6 @@ const XhToastRoot = defineComponent({
14
14
  type: String,
15
15
  default: void 0
16
16
  },
17
- description: {
18
- type: String,
19
- default: void 0
20
- },
21
17
  type: {
22
18
  type: String,
23
19
  default: void 0
@@ -76,13 +72,6 @@ const XhToastTitle = defineComponent({
76
72
  return () => h("div", ctx.api.value.getTitleProps(), slots.default ? slots.default() : ctx.api.value.title);
77
73
  }
78
74
  });
79
- const XhToastDescription = defineComponent({
80
- name: "XhToastDescription",
81
- setup(_, { slots }) {
82
- const ctx = useToastContext();
83
- return () => h("div", ctx.api.value.getDescriptionProps(), slots.default ? slots.default() : ctx.api.value.description);
84
- }
85
- });
86
75
  const XhToastActionTrigger = defineComponent({
87
76
  name: "XhToastActionTrigger",
88
77
  setup(_, { slots }) {
@@ -98,6 +87,6 @@ const XhToastCloseTrigger = defineComponent({
98
87
  }
99
88
  });
100
89
  //#endregion
101
- export { XhToastActionTrigger, XhToastCloseTrigger, XhToastDescription, XhToastRoot, XhToastTitle };
90
+ export { XhToastActionTrigger, XhToastCloseTrigger, XhToastRoot, XhToastTitle };
102
91
 
103
92
  //# sourceMappingURL=toast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","names":[],"sources":["../../../src/components/toast/toast.ts"],"sourcesContent":["import type { ToastApi, ToastSchema, ToastTranslations, ToastType } from '@xihan-ui/headless'\nimport type { PropType, SlotsType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { provideToast, useToastContext } from './context'\nimport { useToast } from './use-toast'\n\ntype ToastProps = ToastSchema['props']\n\n/** 默认插槽的载荷:这一条的身份、状态、计时剩余与生命周期方法。 */\nexport type ToastRootSlotProps = Pick<\n ToastApi,\n 'id' | 'status' | 'type' | 'paused' | 'remaining' | 'dismiss' | 'pause' | 'resume'\n>\n\nexport const XhToastRoot = defineComponent({\n name: 'XhToastRoot',\n // 缺省值由 connect 与机器给出,这里一律 default: undefined\n props: {\n // 队列身份,不是 DOM id;不给则回落到实例的 scope id\n id: { type: String, default: undefined },\n title: { type: String, default: undefined },\n description: { type: String, default: undefined },\n type: { type: String as PropType<ToastType>, default: undefined },\n duration: { type: Number, default: undefined },\n removeDelay: { type: Number, default: undefined },\n closable: { type: Boolean, default: undefined },\n pauseOnPageIdle: { type: Boolean, default: undefined },\n translations: { type: Object as PropType<Partial<ToastTranslations>>, default: undefined },\n },\n // status-change 携带 { id, status },action 携带 { id }\n emits: {\n 'status-change': (_details: PayloadOf<ToastProps, 'onStatusChange'>) => true,\n 'action': (_details: PayloadOf<ToastProps, 'onAction'>) => true,\n },\n slots: Object as SlotsType<{\n default?: (props: ToastRootSlotProps) => VNode[]\n }>,\n setup(props, { slots, emit }) {\n const notifyStatus: ToastProps['onStatusChange'] = (details) => {\n emit('status-change', details)\n }\n const notifyAction: ToastProps['onAction'] = (details) => {\n emit('action', details)\n }\n const ctx = useToast(withXhConfig('toast', props) as ToastProps, notifyStatus, notifyAction)\n provideToast(ctx)\n return () => h('div', ctx.api.value.getRootProps() as Record<string, unknown>, slots.default?.({\n id: ctx.api.value.id,\n status: ctx.api.value.status,\n type: ctx.api.value.type,\n paused: ctx.api.value.paused,\n remaining: ctx.api.value.remaining,\n dismiss: ctx.api.value.dismiss,\n pause: ctx.api.value.pause,\n resume: ctx.api.value.resume,\n }))\n },\n})\n\nexport const XhToastTitle = defineComponent({\n name: 'XhToastTitle',\n setup(_, { slots }) {\n const ctx = useToastContext()\n // 渲染为 div 而非标题标签;无插槽内容时用 title prop 兜底\n return () => h(\n 'div',\n ctx.api.value.getTitleProps() as Record<string, unknown>,\n slots.default ? slots.default() : ctx.api.value.title,\n )\n },\n})\n\nexport const XhToastDescription = defineComponent({\n name: 'XhToastDescription',\n setup(_, { slots }) {\n const ctx = useToastContext()\n return () => h(\n 'div',\n ctx.api.value.getDescriptionProps() as Record<string, unknown>,\n slots.default ? slots.default() : ctx.api.value.description,\n )\n },\n})\n\nexport const XhToastActionTrigger = defineComponent({\n name: 'XhToastActionTrigger',\n setup(_, { slots }) {\n const ctx = useToastContext()\n // 原生 <button>,激活行为交给平台\n return () => h('button', ctx.api.value.getActionTriggerProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhToastCloseTrigger = defineComponent({\n name: 'XhToastCloseTrigger',\n setup(_, { slots }) {\n const ctx = useToastContext()\n return () => h('button', ctx.api.value.getCloseTriggerProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":";;;;;AAgBA,MAAa,cAAc,gBAAgB;CACzC,MAAM;CAEN,OAAO;EAEL,IAAI;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EACvC,OAAO;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC1C,aAAa;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAChD,MAAM;GAAE,MAAM;GAA+B,SAAS,KAAA;EAAU;EAChE,UAAU;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC7C,aAAa;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAChD,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC9C,iBAAiB;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EACrD,cAAc;GAAE,MAAM;GAAgD,SAAS,KAAA;EAAU;CAC3F;CAEA,OAAO;EACL,kBAAkB,aAAsD;EACxE,WAAW,aAAgD;CAC7D;CACA,OAAO;CAGP,MAAM,OAAO,EAAE,OAAO,QAAQ;EAC5B,MAAM,gBAA8C,YAAY;GAC9D,KAAK,iBAAiB,OAAO;EAC/B;EACA,MAAM,gBAAwC,YAAY;GACxD,KAAK,UAAU,OAAO;EACxB;EACA,MAAM,MAAM,SAAS,aAAa,SAAS,KAAK,GAAiB,cAAc,YAAY;EAC3F,aAAa,GAAG;EAChB,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU;GAC7F,IAAI,IAAI,IAAI,MAAM;GAClB,QAAQ,IAAI,IAAI,MAAM;GACtB,MAAM,IAAI,IAAI,MAAM;GACpB,QAAQ,IAAI,IAAI,MAAM;GACtB,WAAW,IAAI,IAAI,MAAM;GACzB,SAAS,IAAI,IAAI,MAAM;GACvB,OAAO,IAAI,IAAI,MAAM;GACrB,QAAQ,IAAI,IAAI,MAAM;EACxB,CAAC,CAAC;CACJ;AACF,CAAC;AAED,MAAa,eAAe,gBAAgB;CAC1C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAE5B,aAAa,EACX,OACA,IAAI,IAAI,MAAM,cAAc,GAC5B,MAAM,UAAU,MAAM,QAAQ,IAAI,IAAI,IAAI,MAAM,KAClD;CACF;AACF,CAAC;AAED,MAAa,qBAAqB,gBAAgB;CAChD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EACX,OACA,IAAI,IAAI,MAAM,oBAAoB,GAClC,MAAM,UAAU,MAAM,QAAQ,IAAI,IAAI,IAAI,MAAM,WAClD;CACF;AACF,CAAC;AAED,MAAa,uBAAuB,gBAAgB;CAClD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAE5B,aAAa,EAAE,UAAU,IAAI,IAAI,MAAM,sBAAsB,GAA8B,MAAM,UAAU,CAAC;CAC9G;AACF,CAAC;AAED,MAAa,sBAAsB,gBAAgB;CACjD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EAAE,UAAU,IAAI,IAAI,MAAM,qBAAqB,GAA8B,MAAM,UAAU,CAAC;CAC7G;AACF,CAAC"}
1
+ {"version":3,"file":"toast.js","names":[],"sources":["../../../src/components/toast/toast.ts"],"sourcesContent":["import type { ToastApi, ToastSchema, ToastTranslations, ToastType } from '@xihan-ui/headless'\nimport type { PropType, SlotsType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h } from 'vue'\nimport { withXhConfig } from '../../config/config'\nimport { provideToast, useToastContext } from './context'\nimport { useToast } from './use-toast'\n\ntype ToastProps = ToastSchema['props']\n\n/** 默认插槽的载荷:这一条的身份、状态、计时剩余与生命周期方法。 */\nexport type ToastRootSlotProps = Pick<\n ToastApi,\n 'id' | 'status' | 'type' | 'paused' | 'remaining' | 'dismiss' | 'pause' | 'resume'\n>\n\nexport const XhToastRoot = defineComponent({\n name: 'XhToastRoot',\n // 缺省值由 connect 与机器给出,这里一律 default: undefined\n props: {\n // 队列身份,不是 DOM id;不给则回落到实例的 scope id\n id: { type: String, default: undefined },\n title: { type: String, default: undefined },\n type: { type: String as PropType<ToastType>, default: undefined },\n duration: { type: Number, default: undefined },\n removeDelay: { type: Number, default: undefined },\n closable: { type: Boolean, default: undefined },\n pauseOnPageIdle: { type: Boolean, default: undefined },\n translations: { type: Object as PropType<Partial<ToastTranslations>>, default: undefined },\n },\n // status-change 携带 { id, status },action 携带 { id }\n emits: {\n 'status-change': (_details: PayloadOf<ToastProps, 'onStatusChange'>) => true,\n 'action': (_details: PayloadOf<ToastProps, 'onAction'>) => true,\n },\n slots: Object as SlotsType<{\n default?: (props: ToastRootSlotProps) => VNode[]\n }>,\n setup(props, { slots, emit }) {\n const notifyStatus: ToastProps['onStatusChange'] = (details) => {\n emit('status-change', details)\n }\n const notifyAction: ToastProps['onAction'] = (details) => {\n emit('action', details)\n }\n const ctx = useToast(withXhConfig('toast', props) as ToastProps, notifyStatus, notifyAction)\n provideToast(ctx)\n return () => h('div', ctx.api.value.getRootProps() as Record<string, unknown>, slots.default?.({\n id: ctx.api.value.id,\n status: ctx.api.value.status,\n type: ctx.api.value.type,\n paused: ctx.api.value.paused,\n remaining: ctx.api.value.remaining,\n dismiss: ctx.api.value.dismiss,\n pause: ctx.api.value.pause,\n resume: ctx.api.value.resume,\n }))\n },\n})\n\nexport const XhToastTitle = defineComponent({\n name: 'XhToastTitle',\n setup(_, { slots }) {\n const ctx = useToastContext()\n // 渲染为 div 而非标题标签;无插槽内容时用 title prop 兜底\n return () => h(\n 'div',\n ctx.api.value.getTitleProps() as Record<string, unknown>,\n slots.default ? slots.default() : ctx.api.value.title,\n )\n },\n})\n\nexport const XhToastActionTrigger = defineComponent({\n name: 'XhToastActionTrigger',\n setup(_, { slots }) {\n const ctx = useToastContext()\n // 原生 <button>,激活行为交给平台\n return () => h('button', ctx.api.value.getActionTriggerProps() as Record<string, unknown>, slots.default?.())\n },\n})\n\nexport const XhToastCloseTrigger = defineComponent({\n name: 'XhToastCloseTrigger',\n setup(_, { slots }) {\n const ctx = useToastContext()\n return () => h('button', ctx.api.value.getCloseTriggerProps() as Record<string, unknown>, slots.default?.())\n },\n})\n"],"mappings":";;;;;AAgBA,MAAa,cAAc,gBAAgB;CACzC,MAAM;CAEN,OAAO;EAEL,IAAI;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EACvC,OAAO;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC1C,MAAM;GAAE,MAAM;GAA+B,SAAS,KAAA;EAAU;EAChE,UAAU;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAC7C,aAAa;GAAE,MAAM;GAAQ,SAAS,KAAA;EAAU;EAChD,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC9C,iBAAiB;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EACrD,cAAc;GAAE,MAAM;GAAgD,SAAS,KAAA;EAAU;CAC3F;CAEA,OAAO;EACL,kBAAkB,aAAsD;EACxE,WAAW,aAAgD;CAC7D;CACA,OAAO;CAGP,MAAM,OAAO,EAAE,OAAO,QAAQ;EAC5B,MAAM,gBAA8C,YAAY;GAC9D,KAAK,iBAAiB,OAAO;EAC/B;EACA,MAAM,gBAAwC,YAAY;GACxD,KAAK,UAAU,OAAO;EACxB;EACA,MAAM,MAAM,SAAS,aAAa,SAAS,KAAK,GAAiB,cAAc,YAAY;EAC3F,aAAa,GAAG;EAChB,aAAa,EAAE,OAAO,IAAI,IAAI,MAAM,aAAa,GAA8B,MAAM,UAAU;GAC7F,IAAI,IAAI,IAAI,MAAM;GAClB,QAAQ,IAAI,IAAI,MAAM;GACtB,MAAM,IAAI,IAAI,MAAM;GACpB,QAAQ,IAAI,IAAI,MAAM;GACtB,WAAW,IAAI,IAAI,MAAM;GACzB,SAAS,IAAI,IAAI,MAAM;GACvB,OAAO,IAAI,IAAI,MAAM;GACrB,QAAQ,IAAI,IAAI,MAAM;EACxB,CAAC,CAAC;CACJ;AACF,CAAC;AAED,MAAa,eAAe,gBAAgB;CAC1C,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAE5B,aAAa,EACX,OACA,IAAI,IAAI,MAAM,cAAc,GAC5B,MAAM,UAAU,MAAM,QAAQ,IAAI,IAAI,IAAI,MAAM,KAClD;CACF;AACF,CAAC;AAED,MAAa,uBAAuB,gBAAgB;CAClD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAE5B,aAAa,EAAE,UAAU,IAAI,IAAI,MAAM,sBAAsB,GAA8B,MAAM,UAAU,CAAC;CAC9G;AACF,CAAC;AAED,MAAa,sBAAsB,gBAAgB;CACjD,MAAM;CACN,MAAM,GAAG,EAAE,SAAS;EAClB,MAAM,MAAM,gBAAgB;EAC5B,aAAa,EAAE,UAAU,IAAI,IAAI,MAAM,qBAAqB,GAA8B,MAAM,UAAU,CAAC;CAC7G;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-toast.d.ts","names":[],"sources":["../../../src/components/toast/use-toast.ts"],"mappings":";;;UAQiB;EACf,KAAK,YAAY;;iBAGH,SACd,OAAO,sBACP,iBAAiB,wCACjB,WAAW,mCACV"}
1
+ {"version":3,"file":"use-toast.d.ts","names":[],"sources":["../../../src/components/toast/use-toast.ts"],"mappings":";;;UAOiB;EACf,KAAK,YAAY;;iBAGH,SACd,OAAO,sBACP,iBAAiB,wCACjB,WAAW,mCACV"}
@@ -1,18 +1,12 @@
1
1
  import { vueNormalize } from "../../runtime/normalize-props.js";
2
2
  import { useMachine } from "../../runtime/use-machine.js";
3
- import { useToasterContextOptional } from "../toaster/context.js";
4
3
  import { computed } from "vue";
5
4
  import { connectToast, toastMachine } from "@xihan-ui/headless";
6
5
  //#region src/components/toast/use-toast.ts
7
6
  function useToast(props, onStatusChange, onAction) {
8
- const toaster = useToasterContextOptional();
9
- const notifyStatus = (details) => {
10
- onStatusChange?.(details);
11
- if (details.status === "unmounted") toaster?.dismiss(details.id);
12
- };
13
7
  const service = useMachine(toastMachine, () => ({
14
8
  ...props,
15
- onStatusChange: notifyStatus,
9
+ onStatusChange,
16
10
  onAction
17
11
  }));
18
12
  return { api: computed(() => connectToast(service, vueNormalize)) };
@@ -1 +1 @@
1
- {"version":3,"file":"use-toast.js","names":[],"sources":["../../../src/components/toast/use-toast.ts"],"sourcesContent":["import type { ToastApi, ToastSchema } from '@xihan-ui/headless'\nimport type { ComputedRef } from 'vue'\nimport { connectToast, toastMachine } from '@xihan-ui/headless'\nimport { computed } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { useMachine } from '../../runtime/use-machine'\nimport { useToasterContextOptional } from '../toaster/context'\n\nexport interface ToastContext {\n api: ComputedRef<ToastApi>\n}\n\nexport function useToast(\n props: ToastSchema['props'],\n onStatusChange?: ToastSchema['props']['onStatusChange'],\n onAction?: ToastSchema['props']['onAction'],\n): ToastContext {\n // 退场后由适配器回队列删记录;外层无队列时注入为 null\n const toaster = useToasterContextOptional()\n const notifyStatus: ToastSchema['props']['onStatusChange'] = (details) => {\n onStatusChange?.(details)\n if (details.status === 'unmounted')\n toaster?.dismiss(details.id)\n }\n const service = useMachine(toastMachine, () => ({ ...props, onStatusChange: notifyStatus, onAction }))\n const api = computed(() => connectToast(service, vueNormalize))\n return { api }\n}\n"],"mappings":";;;;;;AAYA,SAAgB,SACd,OACA,gBACA,UACc;CAEd,MAAM,UAAU,0BAA0B;CAC1C,MAAM,gBAAwD,YAAY;EACxE,iBAAiB,OAAO;EACxB,IAAI,QAAQ,WAAW,aACrB,SAAS,QAAQ,QAAQ,EAAE;CAC/B;CACA,MAAM,UAAU,WAAW,qBAAqB;EAAE,GAAG;EAAO,gBAAgB;EAAc;CAAS,EAAE;CAErG,OAAO,EAAE,KADG,eAAe,aAAa,SAAS,YAAY,CAClD,EAAE;AACf"}
1
+ {"version":3,"file":"use-toast.js","names":[],"sources":["../../../src/components/toast/use-toast.ts"],"sourcesContent":["import type { ToastApi, ToastSchema } from '@xihan-ui/headless'\nimport type { ComputedRef } from 'vue'\nimport { connectToast, toastMachine } from '@xihan-ui/headless'\nimport { computed } from 'vue'\nimport { vueNormalize } from '../../runtime/normalize-props'\nimport { useMachine } from '../../runtime/use-machine'\n\nexport interface ToastContext {\n api: ComputedRef<ToastApi>\n}\n\nexport function useToast(\n props: ToastSchema['props'],\n onStatusChange?: ToastSchema['props']['onStatusChange'],\n onAction?: ToastSchema['props']['onAction'],\n): ToastContext {\n const service = useMachine(toastMachine, () => ({ ...props, onStatusChange, onAction }))\n const api = computed(() => connectToast(service, vueNormalize))\n return { api }\n}\n"],"mappings":";;;;;AAWA,SAAgB,SACd,OACA,gBACA,UACc;CACd,MAAM,UAAU,WAAW,qBAAqB;EAAE,GAAG;EAAO;EAAgB;CAAS,EAAE;CAEvF,OAAO,EAAE,KADG,eAAe,aAAa,SAAS,YAAY,CAClD,EAAE;AACf"}
@@ -1,6 +1,6 @@
1
1
  import { inject, provide } from "vue";
2
2
  //#region src/components/toggle-group/context.ts
3
- const KEY = Symbol("xh-toggle-group");
3
+ const KEY = Symbol.for("xh-toggle-group");
4
4
  function provideToggleGroup(ctx) {
5
5
  provide(KEY, ctx);
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/toggle-group/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { ToggleGroupContext } from './use-toggle-group'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<ToggleGroupContext> = Symbol('xh-toggle-group')\n\nexport function provideToggleGroup(ctx: ToggleGroupContext): void {\n provide(KEY, ctx)\n}\n\nexport function useToggleGroupContext(): ToggleGroupContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] ToggleGroup 部件必须用在 XhToggleGroupRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAwC,OAAO,iBAAiB;AAEtE,SAAgB,mBAAmB,KAA+B;CAChE,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,wBAA4C;CAC1D,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,6CAA6C;CAC/D,OAAO;AACT"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/toggle-group/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { ToggleGroupContext } from './use-toggle-group'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<ToggleGroupContext> = Symbol.for('xh-toggle-group')\n\nexport function provideToggleGroup(ctx: ToggleGroupContext): void {\n provide(KEY, ctx)\n}\n\nexport function useToggleGroupContext(): ToggleGroupContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] ToggleGroup 部件必须用在 XhToggleGroupRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAwC,OAAO,IAAI,iBAAiB;AAE1E,SAAgB,mBAAmB,KAA+B;CAChE,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,wBAA4C;CAC1D,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,6CAA6C;CAC/D,OAAO;AACT"}
@@ -1,7 +1,7 @@
1
1
  import { PayloadOf } from "../../runtime/payload.js";
2
2
  import { PropType, VNode } from "vue";
3
3
  import { ToggleGroupNode, ToggleGroupSchema, ToggleGroupValue } from "@xihan-ui/headless";
4
- import { Direction, Orientation } from "@xihan-ui/kernel";
4
+ import { Direction, Orientation, Size } from "@xihan-ui/kernel";
5
5
  //#region src/components/toggle-group/toggle-group.d.ts
6
6
  type ToggleGroupProps = ToggleGroupSchema['props'];
7
7
  declare const XhToggleGroupRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
@@ -29,6 +29,10 @@ declare const XhToggleGroupRoot: import("vue").DefineComponent<import("vue").Ext
29
29
  type: BooleanConstructor;
30
30
  default: undefined;
31
31
  };
32
+ size: {
33
+ type: PropType<Size>;
34
+ default: undefined;
35
+ };
32
36
  orientation: {
33
37
  type: PropType<Orientation>;
34
38
  default: undefined;
@@ -75,6 +79,10 @@ declare const XhToggleGroupRoot: import("vue").DefineComponent<import("vue").Ext
75
79
  type: BooleanConstructor;
76
80
  default: undefined;
77
81
  };
82
+ size: {
83
+ type: PropType<Size>;
84
+ default: undefined;
85
+ };
78
86
  orientation: {
79
87
  type: PropType<Orientation>;
80
88
  default: undefined;
@@ -101,6 +109,7 @@ declare const XhToggleGroupRoot: import("vue").DefineComponent<import("vue").Ext
101
109
  defaultValue: ToggleGroupValue;
102
110
  orientation: Orientation;
103
111
  dir: Direction;
112
+ size: Size;
104
113
  disabled: boolean;
105
114
  loop: boolean;
106
115
  disallowEmpty: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-group.d.ts","names":[],"sources":["../../../src/components/toggle-group/toggle-group.ts"],"mappings":";;;;;KAQK,mBAAmB;cAEX,iCAAiB,8BAAA;;IAIG,MAAA,SAAS;;;;IACJ,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;;;;;;;;;;;;;IAInB,MAAA,SAAS;;;;IACjB,MAAA,SAAS;;;;;;;;;;;;;;EAML,iBAAA,UAAA,UAAU;EACZ,iBAAA,QAAA,UAAU;;;IAdN,MAAA,SAAS;;;;IACJ,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;;;;;;;;;;;;;IAInB,MAAA,SAAS;;;;IACjB,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;qCA0BlC;cAEW,iCAAiB,8BAAA;;;;;;;;;;;;;;;;;;;;;;qCAmC5B"}
1
+ {"version":3,"file":"toggle-group.d.ts","names":[],"sources":["../../../src/components/toggle-group/toggle-group.ts"],"mappings":";;;;;KAQK,mBAAmB;cAEX,iCAAiB,8BAAA;;IAIG,MAAA,SAAS;;;;IACJ,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;;;;;;;;;;;;;IAI1B,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;IACjB,MAAA,SAAS;;;;;;;;;;;;;;EAML,iBAAA,UAAA,UAAU;EACZ,iBAAA,QAAA,UAAU;;;IAfN,MAAA,SAAS;;;;IACJ,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;;;;;;;;;;;;;IAI1B,MAAA,SAAS;;;;IACF,MAAA,SAAS;;;;IACjB,MAAA,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;qCA0BlC;cAEW,iCAAiB,8BAAA;;;;;;;;;;;;;;;;;;;;;;qCAmC5B"}
@@ -29,6 +29,10 @@ const XhToggleGroupRoot = defineComponent({
29
29
  type: Boolean,
30
30
  default: void 0
31
31
  },
32
+ size: {
33
+ type: String,
34
+ default: void 0
35
+ },
32
36
  orientation: {
33
37
  type: String,
34
38
  default: void 0
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-group.js","names":[],"sources":["../../../src/components/toggle-group/toggle-group.ts"],"sourcesContent":["import type { ToggleGroupNode, ToggleGroupNodeMeta, ToggleGroupSchema, ToggleGroupValue } from '@xihan-ui/headless'\nimport type { Direction, Orientation } from '@xihan-ui/kernel'\nimport type { PropType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h, onBeforeUnmount, ref, watch } from 'vue'\nimport { provideToggleGroup, useToggleGroupContext } from './context'\nimport { useToggleGroup } from './use-toggle-group'\n\ntype ToggleGroupProps = ToggleGroupSchema['props']\n\nexport const XhToggleGroupRoot = defineComponent({\n name: 'XhToggleGroupRoot',\n // 全部 default: undefined,缺省值由 connect 决定\n props: {\n collection: { type: Array as PropType<ToggleGroupNode[]>, default: undefined },\n value: { type: [String, Array] as PropType<ToggleGroupValue>, default: undefined },\n defaultValue: { type: [String, Array] as PropType<ToggleGroupValue>, default: undefined },\n multiple: { type: Boolean, default: undefined },\n disabled: { type: Boolean, default: undefined },\n disallowEmpty: { type: Boolean, default: undefined },\n orientation: { type: String as PropType<Orientation>, default: undefined },\n dir: { type: String as PropType<Direction>, default: undefined },\n loop: { type: Boolean, default: undefined },\n rovingFocus: { type: Boolean, default: undefined },\n },\n // value-change 携带 { value },update:value 携带裸值;裸值形态跟随 multiple,单选为字符串、多选为数组\n emits: {\n 'value-change': (_details: PayloadOf<ToggleGroupProps, 'onValueChange'>) => true,\n 'update:value': (_value: PayloadOf<ToggleGroupProps, 'onValueChange'>['value']) => true,\n },\n setup(props, { slots, emit }) {\n const notify: ToggleGroupProps['onValueChange'] = (details) => {\n emit('value-change', details)\n emit('update:value', details.value)\n }\n const ctx = useToggleGroup(props as ToggleGroupProps, notify)\n provideToggleGroup(ctx)\n return () => h(\n 'div',\n ctx.api.value.getRootProps() as Record<string, unknown>,\n slots.default\n ? slots.default()\n : props.collection\n ? renderDefaultTree(ctx.api.value.collection, slots.item)\n : [],\n )\n },\n})\n\nexport const XhToggleGroupItem = defineComponent({\n name: 'XhToggleGroupItem',\n props: {\n value: { type: String, required: true },\n // 缺省交给 connect 回 collection 里查,写死 false 会盖掉数据里的禁用\n disabled: { type: Boolean, default: undefined },\n },\n setup(props, { slots }) {\n const ctx = useToggleGroupContext()\n // 本条目持有焦点时,value 变更重报焦点条目,卸载时上报整组失焦\n const itemEl = ref<HTMLElement | null>(null)\n watch(() => props.value, (next, prev) => {\n if (next === prev)\n return\n const { service } = ctx\n if (service.getStatus() !== 'Started')\n return\n if (itemEl.value && service.scope.getActiveElement() === itemEl.value)\n service.send({ type: 'ITEM.FOCUS', value: next })\n })\n onBeforeUnmount(() => {\n const { service } = ctx\n if (service.getStatus() !== 'Started')\n return\n // 按「本节点当下正持有焦点」判定,不按 value 比对\n if (itemEl.value && service.scope.getActiveElement() === itemEl.value)\n service.send({ type: 'GROUP.BLUR' })\n })\n // 用原生 button,激活交给平台\n return () => h(\n 'button',\n { ...ctx.api.value.getItemProps({ value: props.value, disabled: props.disabled }) as Record<string, unknown>, ref: itemEl },\n slots.default?.(),\n )\n },\n})\n\n/**\n * 没写默认插槽时按 collection 铺开的整套结构,作者只交数据。\n * 与手写部件产出的 DOM 完全一致,要改结构就写默认插槽,行为不变。\n * 条目底下没有文本部件,文字直接落在条目里。\n */\nfunction renderDefaultTree(\n collection: readonly ToggleGroupNodeMeta[],\n itemSlot?: (node: ToggleGroupNodeMeta) => VNode[],\n): VNode[] {\n return collection.map(node => h(\n XhToggleGroupItem,\n { key: node.value, value: node.value },\n () => itemSlot?.(node) ?? node.label,\n ))\n}\n"],"mappings":";;;;AAUA,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CAEN,OAAO;EACL,YAAY;GAAE,MAAM;GAAsC,SAAS,KAAA;EAAU;EAC7E,OAAO;GAAE,MAAM,CAAC,QAAQ,KAAK;GAAiC,SAAS,KAAA;EAAU;EACjF,cAAc;GAAE,MAAM,CAAC,QAAQ,KAAK;GAAiC,SAAS,KAAA;EAAU;EACxF,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC9C,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC9C,eAAe;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EACnD,aAAa;GAAE,MAAM;GAAiC,SAAS,KAAA;EAAU;EACzE,KAAK;GAAE,MAAM;GAA+B,SAAS,KAAA;EAAU;EAC/D,MAAM;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC1C,aAAa;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;CACnD;CAEA,OAAO;EACL,iBAAiB,aAA2D;EAC5E,iBAAiB,WAAkE;CACrF;CACA,MAAM,OAAO,EAAE,OAAO,QAAQ;EAC5B,MAAM,UAA6C,YAAY;GAC7D,KAAK,gBAAgB,OAAO;GAC5B,KAAK,gBAAgB,QAAQ,KAAK;EACpC;EACA,MAAM,MAAM,eAAe,OAA2B,MAAM;EAC5D,mBAAmB,GAAG;EACtB,aAAa,EACX,OACA,IAAI,IAAI,MAAM,aAAa,GAC3B,MAAM,UACF,MAAM,QAAQ,IACd,MAAM,aACJ,kBAAkB,IAAI,IAAI,MAAM,YAAY,MAAM,IAAI,IACtD,CAAC,CACT;CACF;AACF,CAAC;AAED,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CACN,OAAO;EACL,OAAO;GAAE,MAAM;GAAQ,UAAU;EAAK;EAEtC,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;CAChD;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,sBAAsB;EAElC,MAAM,SAAS,IAAwB,IAAI;EAC3C,YAAY,MAAM,QAAQ,MAAM,SAAS;GACvC,IAAI,SAAS,MACX;GACF,MAAM,EAAE,YAAY;GACpB,IAAI,QAAQ,UAAU,MAAM,WAC1B;GACF,IAAI,OAAO,SAAS,QAAQ,MAAM,iBAAiB,MAAM,OAAO,OAC9D,QAAQ,KAAK;IAAE,MAAM;IAAc,OAAO;GAAK,CAAC;EACpD,CAAC;EACD,sBAAsB;GACpB,MAAM,EAAE,YAAY;GACpB,IAAI,QAAQ,UAAU,MAAM,WAC1B;GAEF,IAAI,OAAO,SAAS,QAAQ,MAAM,iBAAiB,MAAM,OAAO,OAC9D,QAAQ,KAAK,EAAE,MAAM,aAAa,CAAC;EACvC,CAAC;EAED,aAAa,EACX,UACA;GAAE,GAAG,IAAI,IAAI,MAAM,aAAa;IAAE,OAAO,MAAM;IAAO,UAAU,MAAM;GAAS,CAAC;GAA8B,KAAK;EAAO,GAC1H,MAAM,UAAU,CAClB;CACF;AACF,CAAC;;;;;;AAOD,SAAS,kBACP,YACA,UACS;CACT,OAAO,WAAW,KAAI,SAAQ,EAC5B,mBACA;EAAE,KAAK,KAAK;EAAO,OAAO,KAAK;CAAM,SAC/B,WAAW,IAAI,KAAK,KAAK,KACjC,CAAC;AACH"}
1
+ {"version":3,"file":"toggle-group.js","names":[],"sources":["../../../src/components/toggle-group/toggle-group.ts"],"sourcesContent":["import type { ToggleGroupNode, ToggleGroupNodeMeta, ToggleGroupSchema, ToggleGroupValue } from '@xihan-ui/headless'\nimport type { Direction, Orientation, Size } from '@xihan-ui/kernel'\nimport type { PropType, VNode } from 'vue'\nimport type { PayloadOf } from '../../runtime/payload'\nimport { defineComponent, h, onBeforeUnmount, ref, watch } from 'vue'\nimport { provideToggleGroup, useToggleGroupContext } from './context'\nimport { useToggleGroup } from './use-toggle-group'\n\ntype ToggleGroupProps = ToggleGroupSchema['props']\n\nexport const XhToggleGroupRoot = defineComponent({\n name: 'XhToggleGroupRoot',\n // 全部 default: undefined,缺省值由 connect 决定\n props: {\n collection: { type: Array as PropType<ToggleGroupNode[]>, default: undefined },\n value: { type: [String, Array] as PropType<ToggleGroupValue>, default: undefined },\n defaultValue: { type: [String, Array] as PropType<ToggleGroupValue>, default: undefined },\n multiple: { type: Boolean, default: undefined },\n disabled: { type: Boolean, default: undefined },\n disallowEmpty: { type: Boolean, default: undefined },\n size: { type: String as PropType<Size>, default: undefined },\n orientation: { type: String as PropType<Orientation>, default: undefined },\n dir: { type: String as PropType<Direction>, default: undefined },\n loop: { type: Boolean, default: undefined },\n rovingFocus: { type: Boolean, default: undefined },\n },\n // value-change 携带 { value },update:value 携带裸值;裸值形态跟随 multiple,单选为字符串、多选为数组\n emits: {\n 'value-change': (_details: PayloadOf<ToggleGroupProps, 'onValueChange'>) => true,\n 'update:value': (_value: PayloadOf<ToggleGroupProps, 'onValueChange'>['value']) => true,\n },\n setup(props, { slots, emit }) {\n const notify: ToggleGroupProps['onValueChange'] = (details) => {\n emit('value-change', details)\n emit('update:value', details.value)\n }\n const ctx = useToggleGroup(props as ToggleGroupProps, notify)\n provideToggleGroup(ctx)\n return () => h(\n 'div',\n ctx.api.value.getRootProps() as Record<string, unknown>,\n slots.default\n ? slots.default()\n : props.collection\n ? renderDefaultTree(ctx.api.value.collection, slots.item)\n : [],\n )\n },\n})\n\nexport const XhToggleGroupItem = defineComponent({\n name: 'XhToggleGroupItem',\n props: {\n value: { type: String, required: true },\n // 缺省交给 connect 回 collection 里查,写死 false 会盖掉数据里的禁用\n disabled: { type: Boolean, default: undefined },\n },\n setup(props, { slots }) {\n const ctx = useToggleGroupContext()\n // 本条目持有焦点时,value 变更重报焦点条目,卸载时上报整组失焦\n const itemEl = ref<HTMLElement | null>(null)\n watch(() => props.value, (next, prev) => {\n if (next === prev)\n return\n const { service } = ctx\n if (service.getStatus() !== 'Started')\n return\n if (itemEl.value && service.scope.getActiveElement() === itemEl.value)\n service.send({ type: 'ITEM.FOCUS', value: next })\n })\n onBeforeUnmount(() => {\n const { service } = ctx\n if (service.getStatus() !== 'Started')\n return\n // 按「本节点当下正持有焦点」判定,不按 value 比对\n if (itemEl.value && service.scope.getActiveElement() === itemEl.value)\n service.send({ type: 'GROUP.BLUR' })\n })\n // 用原生 button,激活交给平台\n return () => h(\n 'button',\n { ...ctx.api.value.getItemProps({ value: props.value, disabled: props.disabled }) as Record<string, unknown>, ref: itemEl },\n slots.default?.(),\n )\n },\n})\n\n/**\n * 没写默认插槽时按 collection 铺开的整套结构,作者只交数据。\n * 与手写部件产出的 DOM 完全一致,要改结构就写默认插槽,行为不变。\n * 条目底下没有文本部件,文字直接落在条目里。\n */\nfunction renderDefaultTree(\n collection: readonly ToggleGroupNodeMeta[],\n itemSlot?: (node: ToggleGroupNodeMeta) => VNode[],\n): VNode[] {\n return collection.map(node => h(\n XhToggleGroupItem,\n { key: node.value, value: node.value },\n () => itemSlot?.(node) ?? node.label,\n ))\n}\n"],"mappings":";;;;AAUA,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CAEN,OAAO;EACL,YAAY;GAAE,MAAM;GAAsC,SAAS,KAAA;EAAU;EAC7E,OAAO;GAAE,MAAM,CAAC,QAAQ,KAAK;GAAiC,SAAS,KAAA;EAAU;EACjF,cAAc;GAAE,MAAM,CAAC,QAAQ,KAAK;GAAiC,SAAS,KAAA;EAAU;EACxF,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC9C,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC9C,eAAe;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EACnD,MAAM;GAAE,MAAM;GAA0B,SAAS,KAAA;EAAU;EAC3D,aAAa;GAAE,MAAM;GAAiC,SAAS,KAAA;EAAU;EACzE,KAAK;GAAE,MAAM;GAA+B,SAAS,KAAA;EAAU;EAC/D,MAAM;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;EAC1C,aAAa;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;CACnD;CAEA,OAAO;EACL,iBAAiB,aAA2D;EAC5E,iBAAiB,WAAkE;CACrF;CACA,MAAM,OAAO,EAAE,OAAO,QAAQ;EAC5B,MAAM,UAA6C,YAAY;GAC7D,KAAK,gBAAgB,OAAO;GAC5B,KAAK,gBAAgB,QAAQ,KAAK;EACpC;EACA,MAAM,MAAM,eAAe,OAA2B,MAAM;EAC5D,mBAAmB,GAAG;EACtB,aAAa,EACX,OACA,IAAI,IAAI,MAAM,aAAa,GAC3B,MAAM,UACF,MAAM,QAAQ,IACd,MAAM,aACJ,kBAAkB,IAAI,IAAI,MAAM,YAAY,MAAM,IAAI,IACtD,CAAC,CACT;CACF;AACF,CAAC;AAED,MAAa,oBAAoB,gBAAgB;CAC/C,MAAM;CACN,OAAO;EACL,OAAO;GAAE,MAAM;GAAQ,UAAU;EAAK;EAEtC,UAAU;GAAE,MAAM;GAAS,SAAS,KAAA;EAAU;CAChD;CACA,MAAM,OAAO,EAAE,SAAS;EACtB,MAAM,MAAM,sBAAsB;EAElC,MAAM,SAAS,IAAwB,IAAI;EAC3C,YAAY,MAAM,QAAQ,MAAM,SAAS;GACvC,IAAI,SAAS,MACX;GACF,MAAM,EAAE,YAAY;GACpB,IAAI,QAAQ,UAAU,MAAM,WAC1B;GACF,IAAI,OAAO,SAAS,QAAQ,MAAM,iBAAiB,MAAM,OAAO,OAC9D,QAAQ,KAAK;IAAE,MAAM;IAAc,OAAO;GAAK,CAAC;EACpD,CAAC;EACD,sBAAsB;GACpB,MAAM,EAAE,YAAY;GACpB,IAAI,QAAQ,UAAU,MAAM,WAC1B;GAEF,IAAI,OAAO,SAAS,QAAQ,MAAM,iBAAiB,MAAM,OAAO,OAC9D,QAAQ,KAAK,EAAE,MAAM,aAAa,CAAC;EACvC,CAAC;EAED,aAAa,EACX,UACA;GAAE,GAAG,IAAI,IAAI,MAAM,aAAa;IAAE,OAAO,MAAM;IAAO,UAAU,MAAM;GAAS,CAAC;GAA8B,KAAK;EAAO,GAC1H,MAAM,UAAU,CAClB;CACF;AACF,CAAC;;;;;;AAOD,SAAS,kBACP,YACA,UACS;CACT,OAAO,WAAW,KAAI,SAAQ,EAC5B,mBACA;EAAE,KAAK,KAAK;EAAO,OAAO,KAAK;CAAM,SAC/B,WAAW,IAAI,KAAK,KAAK,KACjC,CAAC;AACH"}
@@ -1,6 +1,6 @@
1
1
  import { inject, provide } from "vue";
2
2
  //#region src/components/toolbar/context.ts
3
- const KEY = Symbol("xh-toolbar");
3
+ const KEY = Symbol.for("xh-toolbar");
4
4
  function provideToolbar(ctx) {
5
5
  provide(KEY, ctx);
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/toolbar/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { ToolbarContext } from './use-toolbar'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<ToolbarContext> = Symbol('xh-toolbar')\n\nexport function provideToolbar(ctx: ToolbarContext): void {\n provide(KEY, ctx)\n}\n\nexport function useToolbarContext(): ToolbarContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Toolbar 部件必须用在 XhToolbarRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAoC,OAAO,YAAY;AAE7D,SAAgB,eAAe,KAA2B;CACxD,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,oBAAoC;CAClD,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,qCAAqC;CACvD,OAAO;AACT"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/toolbar/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { ToolbarContext } from './use-toolbar'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<ToolbarContext> = Symbol.for('xh-toolbar')\n\nexport function provideToolbar(ctx: ToolbarContext): void {\n provide(KEY, ctx)\n}\n\nexport function useToolbarContext(): ToolbarContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Toolbar 部件必须用在 XhToolbarRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAoC,OAAO,IAAI,YAAY;AAEjE,SAAgB,eAAe,KAA2B;CACxD,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,oBAAoC;CAClD,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,qCAAqC;CACvD,OAAO;AACT"}
@@ -1,6 +1,6 @@
1
1
  import { inject, provide } from "vue";
2
2
  //#region src/components/tooltip/context.ts
3
- const KEY = Symbol("xh-tooltip");
3
+ const KEY = Symbol.for("xh-tooltip");
4
4
  function provideTooltip(ctx) {
5
5
  provide(KEY, ctx);
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/tooltip/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { TooltipContext } from './use-tooltip'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<TooltipContext> = Symbol('xh-tooltip')\n\nexport function provideTooltip(ctx: TooltipContext): void {\n provide(KEY, ctx)\n}\n\nexport function useTooltipContext(): TooltipContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Tooltip 部件必须用在 XhTooltipRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAoC,OAAO,YAAY;AAE7D,SAAgB,eAAe,KAA2B;CACxD,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,oBAAoC;CAClD,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,qCAAqC;CACvD,OAAO;AACT"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/tooltip/context.ts"],"sourcesContent":["import type { InjectionKey } from 'vue'\nimport type { TooltipContext } from './use-tooltip'\nimport { inject, provide } from 'vue'\n\nconst KEY: InjectionKey<TooltipContext> = Symbol.for('xh-tooltip')\n\nexport function provideTooltip(ctx: TooltipContext): void {\n provide(KEY, ctx)\n}\n\nexport function useTooltipContext(): TooltipContext {\n const ctx = inject(KEY, null)\n if (!ctx)\n throw new Error('[xh] Tooltip 部件必须用在 XhTooltipRoot 内')\n return ctx\n}\n"],"mappings":";;AAIA,MAAM,MAAoC,OAAO,IAAI,YAAY;AAEjE,SAAgB,eAAe,KAA2B;CACxD,QAAQ,KAAK,GAAG;AAClB;AAEA,SAAgB,oBAAoC;CAClD,MAAM,MAAM,OAAO,KAAK,IAAI;CAC5B,IAAI,CAAC,KACH,MAAM,IAAI,MAAM,qCAAqC;CACvD,OAAO;AACT"}
@@ -80,18 +80,26 @@ declare const XhTooltipRoot: import("vue").DefineComponent<import("vue").Extract
80
80
  tone: Tone;
81
81
  size: Size;
82
82
  disabled: boolean;
83
+ offset: number;
83
84
  open: boolean;
84
85
  defaultOpen: boolean;
85
- offset: number;
86
86
  placement: Placement;
87
87
  openDelay: number;
88
88
  closeDelay: number;
89
89
  }, SlotsType<{
90
90
  default?: (props: TooltipRootSlotProps) => VNode[];
91
91
  }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
92
- declare const XhTooltipTrigger: import("vue").DefineComponent<{}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
92
+ declare const XhTooltipTrigger: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
93
+ /** 借用作者的子节点当触发器,不再渲染自己的包裹元素;子节点须恰好一个。 */
94
+ asChild: BooleanConstructor;
95
+ }>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
93
96
  [key: string]: any;
94
- }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
97
+ }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
98
+ /** 借用作者的子节点当触发器,不再渲染自己的包裹元素;子节点须恰好一个。 */
99
+ asChild: BooleanConstructor;
100
+ }>> & Readonly<{}>, {
101
+ asChild: boolean;
102
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
95
103
  declare const XhTooltipPositioner: import("vue").DefineComponent<{}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
96
104
  [key: string]: any;
97
105
  }>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","names":[],"sources":["../../../src/components/tooltip/tooltip.ts"],"mappings":";;;;;KAQK,eAAe;;KAGR,uBAAuB,KAAK;cAE3B,6BAAa,8BAAA;;;;;;;IAKO,MAAA,SAAS;;;;;;;;;;;;;;;;;IAKd,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;;;EAIP,gBAAA,UAAA,UAAU;EACb,gBAAA,OAAA,UAAU;;;;;;;;IAXJ,MAAA,SAAS;;;;;;;;;;;;;;;;;IAKd,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;;;;;;;;;;;;;;EAQvB,WAAC,OAAO,yBAAyB;kCAW7C;cAEW,gCAAgB,0BAAA,oBAAA,4BAAA;;8BAS3B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,mCAAmB,0BAAA,oBAAA,4BAAA;;8BAS9B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,gCAAgB,0BAAA,oBAAA,4BAAA;;8BAM3B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,8BAAc,0BAAA,oBAAA,4BAAA;;8BAMzB,qCAAA,iDAAA,aAAA,eAAA,oDAAA"}
1
+ {"version":3,"file":"tooltip.d.ts","names":[],"sources":["../../../src/components/tooltip/tooltip.ts"],"mappings":";;;;;KASK,eAAe;;KAGR,uBAAuB,KAAK;cAE3B,6BAAa,8BAAA;;;;;;;IAKO,MAAA,SAAS;;;;;;;;;;;;;;;;;IAKd,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;;;EAIP,gBAAA,UAAA,UAAU;EACb,gBAAA,OAAA,UAAU;;;;;;;;IAXJ,MAAA,SAAS;;;;;;;;;;;;;;;;;IAKd,MAAA,SAAS;;;;IACT,MAAA,SAAS;;;;;;;;;;;;;;;;;EAQvB,WAAC,OAAO,yBAAyB;kCAW7C;cAEW,gCAAgB,8BAAA;;;;;;;;;;qCAuB3B;cAEW,mCAAmB,0BAAA,oBAAA,4BAAA;;8BAc9B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,gCAAgB,0BAAA,oBAAA,4BAAA;;8BAY3B,qCAAA,iDAAA,aAAA,eAAA,oDAAA;cAEW,8BAAc,0BAAA,oBAAA,4BAAA;;8BAMzB,qCAAA,iDAAA,aAAA,eAAA,oDAAA"}
@@ -1,6 +1,7 @@
1
+ import { mergeIntoChild } from "../../runtime/as-child.js";
1
2
  import { provideTooltip, useTooltipContext } from "./context.js";
2
3
  import { useTooltip } from "./use-tooltip.js";
3
- import { defineComponent, h } from "vue";
4
+ import { Teleport, defineComponent, h, mergeProps } from "vue";
4
5
  //#region src/components/tooltip/tooltip.ts
5
6
  const XhTooltipRoot = defineComponent({
6
7
  name: "XhTooltipRoot",
@@ -56,33 +57,51 @@ const XhTooltipRoot = defineComponent({
56
57
  });
57
58
  const XhTooltipTrigger = defineComponent({
58
59
  name: "XhTooltipTrigger",
59
- setup(_, { slots }) {
60
+ props: {
61
+ /** 借用作者的子节点当触发器,不再渲染自己的包裹元素;子节点须恰好一个。 */
62
+ asChild: Boolean },
63
+ setup(props, { slots }) {
60
64
  const ctx = useTooltipContext();
61
- return () => h("button", {
62
- ...ctx.api.value.getTriggerProps(),
63
- ref: (el) => {
64
- ctx.triggerRef.value = el;
65
+ return () => {
66
+ const attrs = {
67
+ ...ctx.api.value.getTriggerProps(),
68
+ ref: (el) => {
69
+ ctx.triggerRef.value = el;
70
+ }
71
+ };
72
+ const children = slots.default?.();
73
+ if (props.asChild) {
74
+ const merged = mergeIntoChild(children, attrs, "tooltip");
75
+ if (merged) return merged;
65
76
  }
66
- }, slots.default?.());
77
+ return h("button", attrs, children);
78
+ };
67
79
  }
68
80
  });
69
81
  const XhTooltipPositioner = defineComponent({
70
82
  name: "XhTooltipPositioner",
71
- setup(_, { slots }) {
83
+ inheritAttrs: false,
84
+ setup(_, { slots, attrs }) {
72
85
  const ctx = useTooltipContext();
73
- return () => h("div", {
74
- ...ctx.api.value.getPositionerProps(),
86
+ return () => h(Teleport, { to: ctx.portalTarget.value }, [h("div", {
87
+ ...mergeProps(ctx.api.value.getPositionerProps(), attrs),
75
88
  ref: (el) => {
76
89
  ctx.positionerRef.value = el;
77
90
  }
78
- }, slots.default?.());
91
+ }, slots.default?.())]);
79
92
  }
80
93
  });
81
94
  const XhTooltipContent = defineComponent({
82
95
  name: "XhTooltipContent",
83
96
  setup(_, { slots }) {
84
97
  const ctx = useTooltipContext();
85
- return () => h("div", ctx.api.value.getContentProps(), slots.default?.());
98
+ return () => h("div", {
99
+ ...ctx.api.value.getContentProps(),
100
+ style: ctx.visible.value ? void 0 : { display: "none" },
101
+ ref: (el) => {
102
+ ctx.contentRef.value = el;
103
+ }
104
+ }, slots.default?.());
86
105
  }
87
106
  });
88
107
  const XhTooltipArrow = defineComponent({