@astryx-vue/core 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (505) hide show
  1. package/dist/AlertDialog/index.js +1 -1
  2. package/dist/{AlertDialog-RAVA_cT1.js → AlertDialog-C2inDZWG.js} +5 -5
  3. package/dist/AppShell/index.js +1 -1
  4. package/dist/{AppShell-0wTvOo3H.js → AppShell-CumzH-8z.js} +3 -3
  5. package/dist/Avatar/index.js +1 -1
  6. package/dist/{Avatar-pPZ4dI_s.js → Avatar-BW0TE8t9.js} +47 -34
  7. package/dist/AvatarGroup/index.d.ts +1 -1
  8. package/dist/AvatarGroup/index.js +1 -1
  9. package/dist/{AvatarGroup-B--NQSB3.js → AvatarGroup-DLC_FFR5.js} +57 -13
  10. package/dist/Banner/index.d.ts +1 -1
  11. package/dist/Banner/index.js +1 -1
  12. package/dist/{Banner-GbGxrqQO.js → Banner-C5VAwo4D.js} +68 -34
  13. package/dist/Blockquote/index.js +1 -1
  14. package/dist/Blockquote-DRoKdcxZ.js +27 -0
  15. package/dist/BottomSheet/index.d.ts +1 -1
  16. package/dist/BottomSheet/index.js +2 -2
  17. package/dist/{BottomSheet-pt7m4CvC.js → BottomSheet-B4sc3F1S.js} +286 -140
  18. package/dist/{BottomSheet-JYMB_Ofl.js → BottomSheet-m54uCMJN.js} +20 -4
  19. package/dist/Breadcrumbs/index.d.ts +2 -2
  20. package/dist/Breadcrumbs/index.js +2 -2
  21. package/dist/Breadcrumbs-CTaz7Kh4.js +223 -0
  22. package/dist/Button/index.d.ts +1 -1
  23. package/dist/Button/index.js +1 -1
  24. package/dist/{Button-B6Hj_O_s.js → Button-ONOoHdkg.js} +25 -15
  25. package/dist/ButtonGroup/index.d.ts +1 -1
  26. package/dist/ButtonGroup/index.js +1 -1
  27. package/dist/ButtonGroup-DnkSZ9a5.js +87 -0
  28. package/dist/{ButtonTooltip-nWWrth8j.js → ButtonTooltip-CNKOQHYR.js} +7 -4
  29. package/dist/Calendar/index.d.ts +1 -1
  30. package/dist/Calendar/index.js +1 -1
  31. package/dist/{Calendar-B7vIowKq.js → Calendar-BAqzzQm2.js} +5 -5
  32. package/dist/Card/index.d.ts +2 -2
  33. package/dist/Carousel/index.js +1 -1
  34. package/dist/{Carousel-CA8zpD9v.js → Carousel-DXC22UWq.js} +4 -4
  35. package/dist/Chat/index.d.ts +1 -1
  36. package/dist/Chat/index.js +1 -1
  37. package/dist/{Chat-Bmna9EOA.js → Chat-BdJW6IX5.js} +147 -83
  38. package/dist/CheckboxIndicator/index.js +1 -1
  39. package/dist/{CheckboxIndicator-D37cm2Rh.js → CheckboxIndicator-fH4d-JE1.js} +9 -3
  40. package/dist/CheckboxInput/index.d.ts +1 -1
  41. package/dist/CheckboxInput/index.js +1 -1
  42. package/dist/{CheckboxInput-BS9J6edf.js → CheckboxInput-DJHCbwgC.js} +19 -11
  43. package/dist/CheckboxList/index.d.ts +1 -1
  44. package/dist/CheckboxList/index.js +1 -1
  45. package/dist/{CheckboxList-CX1i_jVP.js → CheckboxList-BdZIP4_J.js} +155 -38
  46. package/dist/Citation/index.js +1 -1
  47. package/dist/{Citation-Djgwa0ko.js → Citation-DbZn2vms.js} +8 -3
  48. package/dist/ClickableCard/index.d.ts +1 -1
  49. package/dist/ClickableCard/index.js +1 -1
  50. package/dist/{ClickableCard-DUsC-j03.js → ClickableCard-ChAfiw9T.js} +9 -6
  51. package/dist/Code/index.js +3 -3
  52. package/dist/{Code-XnPuGxey.js → Code-Bg7GBdxy.js} +2 -1
  53. package/dist/{CodeBlock-D0BFubut.js → CodeBlock-Caaflp7C.js} +3 -3
  54. package/dist/Collapsible/index.d.ts +1 -1
  55. package/dist/Collapsible/index.js +1 -1
  56. package/dist/{Collapsible-Cov3Pyq5.js → Collapsible-Bdj0WYpb.js} +13 -11
  57. package/dist/CommandPalette/index.d.ts +1 -1
  58. package/dist/CommandPalette/index.js +1 -1
  59. package/dist/{CommandPalette-YHsUNg3V.js → CommandPalette-C_MClfAg.js} +143 -63
  60. package/dist/ComplexSelector/index.d.ts +1 -1
  61. package/dist/ComplexSelector/index.js +1 -1
  62. package/dist/{ComplexSelector-DWLdKPGI.js → ComplexSelector-BeVQaqRf.js} +85 -20
  63. package/dist/ContextMenu/index.d.ts +2 -2
  64. package/dist/ContextMenu/index.js +2 -2
  65. package/dist/{ContextMenu-Bq9b3Ti5.js → ContextMenu-C6hPYvYz.js} +297 -179
  66. package/dist/DateInput/index.d.ts +1 -1
  67. package/dist/DateInput/index.js +1 -1
  68. package/dist/{DateInput-DT518j5E.js → DateInput-BjLdmYor.js} +567 -76
  69. package/dist/DateRangeInput/index.d.ts +1 -1
  70. package/dist/DateRangeInput/index.js +1 -1
  71. package/dist/{DateRangeInput-Bqi5tlIA.js → DateRangeInput-Br3wVEfD.js} +85 -20
  72. package/dist/DateTimeInput/index.d.ts +1 -1
  73. package/dist/DateTimeInput/index.js +1 -1
  74. package/dist/DateTimeInput-CAZBwoRe.js +562 -0
  75. package/dist/Dialog/index.d.ts +1 -1
  76. package/dist/Dialog/index.js +2 -2
  77. package/dist/{Dialog-BiOSKQso.js → Dialog-Dce4Y97V.js} +28 -11
  78. package/dist/{Dialog-FGHfDu5M.js → Dialog-fhyxB00e.js} +32 -5
  79. package/dist/Divider/index.d.ts +1 -1
  80. package/dist/Divider/index.js +1 -1
  81. package/dist/{Divider-BtwnL18I.js → Divider-mOZ6vIQw.js} +5 -1
  82. package/dist/DropdownMenu/index.d.ts +2 -2
  83. package/dist/DropdownMenu/index.js +3 -3
  84. package/dist/{DropdownMenu-CoOQVlRp.js → DropdownMenu-BdGmQVb1.js} +85 -57
  85. package/dist/{DropdownMenu-DEb2dSSP.js → DropdownMenu-BzQrNV9C.js} +479 -264
  86. package/dist/{DropdownMenuRadioItem.vue-CXEURBcq.d.ts → DropdownMenuRadioItem.vue-Qd-8Rg4Q.d.ts} +236 -230
  87. package/dist/EmptyState/index.js +1 -1
  88. package/dist/{EmptyState-C_GH7IV5.js → EmptyState-CmOQf2SH.js} +2 -2
  89. package/dist/Field/index.d.ts +4 -3
  90. package/dist/Field/index.js +4 -3
  91. package/dist/{Field-D5gUEGw4.js → Field--OEsLBfE.js} +4 -3
  92. package/dist/{FieldInfoTip-Ds-sW_jY.js → FieldInfoTip-gxsnfkZw.js} +3 -3
  93. package/dist/{FieldLabel-BNeXRuGH.js → FieldLabel-jxIiWgLw.js} +12 -7
  94. package/dist/FieldStatus/index.d.ts +1 -1
  95. package/dist/FileInput/index.d.ts +1 -1
  96. package/dist/FileInput/index.js +1 -1
  97. package/dist/{FileInput-BpdiO1V8.js → FileInput-B_pUxB0Y.js} +106 -29
  98. package/dist/FormLayout/index.d.ts +1 -1
  99. package/dist/FormLayout/index.js +1 -1
  100. package/dist/{FormLayout-D47FjiOq.js → FormLayout-B9dUB6Ps.js} +1 -1
  101. package/dist/Heading/index.d.ts +1 -1
  102. package/dist/Heading/index.js +1 -1
  103. package/dist/{Heading-BnwWEWkp.js → Heading-BzBunfN7.js} +1 -1
  104. package/dist/HoverCard/index.js +1 -1
  105. package/dist/{HoverCard-ycY50pRN.js → HoverCard-BpJhT0sn.js} +35 -22
  106. package/dist/Icon/index.d.ts +4 -4
  107. package/dist/Icon/index.js +1 -1
  108. package/dist/{Icon-bteSId7T.js → Icon-KDnUyY7f.js} +12 -20
  109. package/dist/IconButton/index.js +1 -1
  110. package/dist/{IconButton-DDNgNl7B.js → IconButton-DI-XBbtV.js} +1 -1
  111. package/dist/Indicator/index.d.ts +2 -2
  112. package/dist/Indicator/index.js +2 -1
  113. package/dist/InputClearButton-CwXPan8c.js +40 -0
  114. package/dist/InputGroup/index.d.ts +1 -1
  115. package/dist/InputGroup/index.js +2 -2
  116. package/dist/{InputGroup-CA03Smrs.js → InputGroup-DiiocoIW.js} +2 -2
  117. package/dist/InternationalizationProvider/index.d.ts +1 -1
  118. package/dist/InternationalizationProvider/index.js +1 -1
  119. package/dist/{InternationalizationProvider-DJay_w3B.js → InternationalizationProvider-kBapgKAQ.js} +5 -9
  120. package/dist/{Item-KhFKX9St.js → Item-DWMIjN8n.js} +34 -9
  121. package/dist/Kbd/index.js +1 -1
  122. package/dist/{Kbd-BB-Dw6zE.js → Kbd-CV3LO2Ge.js} +18 -2
  123. package/dist/LayerContentBoundary-CvsKxwwm.js +27 -0
  124. package/dist/LayerProvider/index.js +1 -1
  125. package/dist/{LayerProvider-D9NsQFzL.js → LayerProvider-B6zpMBWC.js} +15 -3
  126. package/dist/Layout/index.d.ts +1 -1
  127. package/dist/Layout/index.js +2 -2
  128. package/dist/{Layout-C6RHllr-.js → Layout-JJRCG7Mf.js} +1 -1
  129. package/dist/{LayoutPanel-DXOsaeQb.js → LayoutPanel-zM5vjrKS.js} +12 -8
  130. package/dist/Lightbox/index.js +1 -1
  131. package/dist/{Lightbox-DTF9EdTG.js → Lightbox-D8wyPgMK.js} +8 -6
  132. package/dist/Link/index.js +1 -1
  133. package/dist/{Link-BqHCtiyt.js → Link-DweIpOtN.js} +29 -12
  134. package/dist/List/index.d.ts +1 -1
  135. package/dist/List/index.js +2 -2
  136. package/dist/{ListItem-8RWT8XAG.js → ListItem-BQXMu1Tb.js} +1 -1
  137. package/dist/Markdown/index.d.ts +5 -2
  138. package/dist/Markdown/index.js +5 -2
  139. package/dist/Markdown/parser/index.d.ts +4 -0
  140. package/dist/Markdown/parser/index.js +3 -0
  141. package/dist/Markdown/plugin-protocol/index.d.ts +35 -0
  142. package/dist/Markdown/plugin-protocol/index.js +107 -0
  143. package/dist/Markdown/plugin-renderer/index.d.ts +31 -0
  144. package/dist/Markdown/plugin-renderer/index.js +42 -0
  145. package/dist/{Markdown-CvtN7HnF.js → Markdown-DhVfOvXk.js} +195 -484
  146. package/dist/MediaTheme-DlLqYhDy.js +433 -0
  147. package/dist/MetadataList/index.js +1 -1
  148. package/dist/{MetadataList-B-OelQlt.js → MetadataList-CEYceIlN.js} +15 -7
  149. package/dist/MobileNav/index.js +1 -1
  150. package/dist/{MobileNavToggle-DxGz0xKA.js → MobileNavToggle-pdoJFZHx.js} +52 -17
  151. package/dist/MoreMenu/index.d.ts +1 -1
  152. package/dist/MoreMenu/index.js +1 -1
  153. package/dist/{MoreMenu-Dlb7MLlW.js → MoreMenu-CFNqSRev.js} +72 -59
  154. package/dist/MultiSelector/index.d.ts +1 -1
  155. package/dist/MultiSelector/index.js +1 -1
  156. package/dist/MultiSelector-DuVatmq5.js +1456 -0
  157. package/dist/{NavDisclosure-C_fugrQ3.js → NavDisclosure-Bq9DTZLO.js} +29 -7
  158. package/dist/{NavHeadingSurface-B3yJspSN.js → NavHeadingSurface-C4v_MtkX.js} +29 -26
  159. package/dist/NavItem/index.d.ts +1 -1
  160. package/dist/NavItem/index.js +2 -2
  161. package/dist/{NavItem-BBIGSvDj.js → NavItem-BPb3yfgz.js} +17 -4
  162. package/dist/NavMenu/index.d.ts +1 -1
  163. package/dist/NavMenu/index.js +3 -3
  164. package/dist/{NavMenu-ThXguZAz.js → NavMenu-BYIDzjix.js} +42 -15
  165. package/dist/{NavMenuItem-BvJNsDFC.js → NavMenuItem-D3FO90GR.js} +14 -12
  166. package/dist/NumberInput/index.d.ts +1 -1
  167. package/dist/NumberInput/index.js +1 -1
  168. package/dist/NumberInput-B0vzOg3N.js +727 -0
  169. package/dist/Outline/index.d.ts +2 -2
  170. package/dist/Outline/index.js +2 -2
  171. package/dist/{Outline-755h-lMP.js → Outline-CfGv2F1o.js} +91 -6
  172. package/dist/OverflowList/index.d.ts +2 -2
  173. package/dist/OverflowList/index.js +1 -1
  174. package/dist/{OverflowList-NmrSMbxb.js → OverflowList-BgRLZ3dh.js} +23 -6
  175. package/dist/Pagination/index.d.ts +1 -1
  176. package/dist/Pagination/index.js +1 -1
  177. package/dist/{Pagination-DqwNQFRp.js → Pagination-Bfe12018.js} +2 -2
  178. package/dist/PickerWheel-CSwUYfes.js +69 -0
  179. package/dist/Popover/index.d.ts +1 -1
  180. package/dist/Popover/index.js +1 -1
  181. package/dist/{Popover-DJf8POzL.js → Popover-78dFjTb9.js} +20 -15
  182. package/dist/PowerSearch/index.d.ts +1 -1
  183. package/dist/PowerSearch/index.js +1 -1
  184. package/dist/{PowerSearch-DvjiPqMZ.js → PowerSearch-BoAMdFaT.js} +774 -586
  185. package/dist/ProgressBar/index.d.ts +1 -1
  186. package/dist/ProgressBar/index.js +1 -1
  187. package/dist/{ProgressBar-CVLzdoBK.js → ProgressBar-VP4JS7vm.js} +10 -7
  188. package/dist/Radio/index.d.ts +1 -1
  189. package/dist/Radio/index.js +1 -1
  190. package/dist/{RadioGroup-Bfu6JSNV.js → RadioGroup-BIipql-L.js} +94 -26
  191. package/dist/RadioList/index.d.ts +1 -1
  192. package/dist/RadioList/index.js +1 -1
  193. package/dist/{RadioList-xY1cwLdZ.js → RadioList-GyhgBg4j.js} +57 -8
  194. package/dist/Resizable/index.d.ts +1 -1
  195. package/dist/Resizable/index.js +1 -1
  196. package/dist/{ResizeHandle-q4nD_586.js → ResizeHandle-TPlUCAHD.js} +103 -50
  197. package/dist/ScrollableArea/index.d.ts +1 -1
  198. package/dist/ScrollableArea/index.js +1 -1
  199. package/dist/{ScrollableArea-D4dCJv9I.js → ScrollableArea-0u6RWtGG.js} +1 -1
  200. package/dist/SegmentedControl/index.d.ts +1 -1
  201. package/dist/SegmentedControl/index.js +1 -1
  202. package/dist/{SegmentedControl-ChHmFrrC.js → SegmentedControl-D1wWGBZo.js} +11 -5
  203. package/dist/SelectableCard/index.d.ts +1 -1
  204. package/dist/SelectableCard/index.js +1 -1
  205. package/dist/{SelectableCard-Cku4dRzc.js → SelectableCard-BEqnhPaX.js} +16 -11
  206. package/dist/Selector/index.d.ts +1 -1
  207. package/dist/Selector/index.js +1 -1
  208. package/dist/Selector-CPISLzp7.js +1049 -0
  209. package/dist/SideNav/index.d.ts +1 -1
  210. package/dist/SideNav/index.js +1 -1
  211. package/dist/{SideNav-BF8mYDxl.js → SideNav-CN2QeAtY.js} +51 -37
  212. package/dist/Slider/index.d.ts +1 -1
  213. package/dist/Slider/index.js +1 -1
  214. package/dist/{Slider-DWobsPgm.js → Slider-pdC0jpHu.js} +172 -46
  215. package/dist/Spinner/index.js +1 -1
  216. package/dist/Spinner-DdVUadii.js +200 -0
  217. package/dist/Stack/index.d.ts +1 -1
  218. package/dist/Stack/index.js +2 -2
  219. package/dist/{Stack-CTsTFfar.js → Stack-Bb_h60t3.js} +1 -1
  220. package/dist/{Stack-kQlYbbL4.js → Stack-Bp-XN9J4.js} +12 -7
  221. package/dist/StatusDot/index.d.ts +1 -1
  222. package/dist/StatusDot/index.js +1 -1
  223. package/dist/{StatusDot-BPUhMOff.js → StatusDot-BS_ohXhd.js} +8 -4
  224. package/dist/Stepper/index.js +1 -1
  225. package/dist/{Stepper-CE8dHysu.js → Stepper-CyaSRSdu.js} +101 -79
  226. package/dist/Switch/index.d.ts +1 -1
  227. package/dist/Switch/index.js +1 -1
  228. package/dist/{Switch-DaVPRxvN.js → Switch-Z2Vfiiic.js} +38 -22
  229. package/dist/TabList/index.d.ts +2 -2
  230. package/dist/TabList/index.js +1 -1
  231. package/dist/{TabList-DIkK9sgK.js → TabList-DRqP0Hrv.js} +205 -63
  232. package/dist/Table/index.d.ts +3 -3
  233. package/dist/Table/index.js +1 -1
  234. package/dist/{Table-fecqnm7P.js → Table-BcrrylMX.js} +726 -452
  235. package/dist/Text/index.d.ts +1 -1
  236. package/dist/Text/index.js +1 -1
  237. package/dist/{Text-CV3LmscH.js → Text-CmTOgYXf.js} +1 -1
  238. package/dist/TextArea/index.d.ts +1 -1
  239. package/dist/TextArea/index.js +1 -1
  240. package/dist/{TextArea-Ab5Sw60T.js → TextArea-DA9CCG_J.js} +104 -50
  241. package/dist/TextInput/index.d.ts +1 -1
  242. package/dist/TextInput/index.js +1 -1
  243. package/dist/{TextInput-zFT1_qgI.js → TextInput-CI96einV.js} +71 -38
  244. package/dist/Theme/index.d.ts +3 -3
  245. package/dist/Theme/index.js +3 -2
  246. package/dist/Theme-BbDT8B_C.js +2125 -0
  247. package/dist/Thumbnail/index.js +1 -1
  248. package/dist/{Thumbnail-C3NnJUFG.js → Thumbnail-B2ZAY59J.js} +13 -10
  249. package/dist/{TimeField-CoHDGmsP.js → TimeField-CpAgja9D.js} +297 -40
  250. package/dist/TimeInput/index.d.ts +1 -1
  251. package/dist/TimeInput/index.js +1 -1
  252. package/dist/{TimeInput-D2k3Ux3p.js → TimeInput-Bw_lHS4M.js} +78 -9
  253. package/dist/Timer/index.d.ts +1 -1
  254. package/dist/Timer/index.js +1 -1
  255. package/dist/{Timer-avMQk5DN.js → Timer-CH7GsEVu.js} +1 -1
  256. package/dist/Timestamp/index.d.ts +1 -1
  257. package/dist/Timestamp/index.js +1 -1
  258. package/dist/{Timestamp-xpQKCk0d.js → Timestamp-BFNuoTZ0.js} +5 -5
  259. package/dist/Toast/index.d.ts +1 -1
  260. package/dist/Toast/index.js +1 -1
  261. package/dist/Toast-DwnPjx6j.js +685 -0
  262. package/dist/ToggleButton/index.d.ts +1 -1
  263. package/dist/ToggleButton/index.js +1 -1
  264. package/dist/{ToggleButton-B-C-Q7XP.js → ToggleButton-cLjh9W-x.js} +5 -4
  265. package/dist/Token/index.d.ts +1 -1
  266. package/dist/Token/index.js +1 -1
  267. package/dist/{Token-DsntTYhQ.js → Token-BfS4vi__.js} +32 -17
  268. package/dist/Tokenizer/index.d.ts +1 -1
  269. package/dist/Tokenizer/index.js +1 -1
  270. package/dist/{Tokenizer-B5C_qY7t.js → Tokenizer-Ci3E5bvP.js} +107 -23
  271. package/dist/Toolbar/index.d.ts +2 -2
  272. package/dist/Toolbar/index.js +1 -1
  273. package/dist/{Toolbar-BrgvvTCk.js → Toolbar-C0pMWL4S.js} +1 -1
  274. package/dist/Tooltip/index.d.ts +1 -1
  275. package/dist/Tooltip/index.js +1 -1
  276. package/dist/{Tooltip-C4Vaqd3G.js → Tooltip-sAM8i1eO.js} +23 -19
  277. package/dist/TopNav/index.d.ts +1 -1
  278. package/dist/TopNav/index.js +1 -1
  279. package/dist/{TopNav-Ciq0l1w7.js → TopNav-gW59zp1o.js} +16 -15
  280. package/dist/TreeList/index.d.ts +1 -1
  281. package/dist/TreeList/index.js +1 -1
  282. package/dist/{TreeList-BUz-KZJd.js → TreeList-DaoI7zaH.js} +124 -41
  283. package/dist/Typeahead/index.d.ts +1 -1
  284. package/dist/Typeahead/index.js +2 -2
  285. package/dist/{Typeahead-JP9RT87x.js → Typeahead-D4JjvjK4.js} +123 -26
  286. package/dist/{TypeaheadMenu-DBW6rHeO.js → TypeaheadMenu-BQlMrfqX.js} +141 -51
  287. package/dist/{announce-Cnio10Wk.js → announce-B210eJVf.js} +17 -2
  288. package/dist/characterReferences-BJ-jLhsR.js +65 -0
  289. package/dist/characters-rcDbGt71.d.ts +29 -0
  290. package/dist/characters-wTnzjkkR.js +58 -0
  291. package/dist/{colorMode-CBgdgDSn.js → colorMode-BxqfDP4P.js} +1 -4
  292. package/dist/composables/index.d.ts +5 -4
  293. package/dist/composables/index.js +23 -18
  294. package/dist/{composables-CbKx9C1Y.js → composables-Bc02zKAO.js} +167 -197
  295. package/dist/context-B6UElI5X.js +5 -0
  296. package/dist/{context-Cfjh8te1.js → context-Cfml4jaK.js} +5 -3
  297. package/dist/{context-iABt_ueM.js → context-DWfi56sq.js} +451 -122
  298. package/dist/context-IvbU9c3T.js +8 -0
  299. package/dist/context-pjBxaMSh.js +28 -0
  300. package/dist/fieldParts--SyRZVQG.js +44 -0
  301. package/dist/fieldParts-LXpQMKE8.d.ts +27 -0
  302. package/dist/{focus-CpficIgf.js → focus-l8jVTcqd.js} +1 -1
  303. package/dist/hoverIntent-DMHGb85c.js +115 -0
  304. package/dist/{index-Cde5JvtX.d.ts → index-B-nESNam.d.ts} +8 -7
  305. package/dist/{index-CsNi1I8j.d.ts → index-B08-Uxhv.d.ts} +4 -2
  306. package/dist/{index-Cn-sSds-.d.ts → index-B56j4eI2.d.ts} +24 -1
  307. package/dist/{index-BkjSF265.d.ts → index-BEZ4ezJk.d.ts} +3 -3
  308. package/dist/{index-DeQwYJbg.d.ts → index-BNaRK-s5.d.ts} +10 -1
  309. package/dist/{index-0QGtSf3r.d.ts → index-BO9TY87G.d.ts} +3 -2
  310. package/dist/{index-IBAInumL.d.ts → index-BQEJj72c.d.ts} +23 -10
  311. package/dist/{index-D97pQbua.d.ts → index-BV2D2x_u.d.ts} +1 -1
  312. package/dist/{index-Crp3NFLW.d.ts → index-BZKgbyN9.d.ts} +1 -1
  313. package/dist/index-BkUkm6Al.d.ts +11 -0
  314. package/dist/{index-ClNU2Th8.d.ts → index-Bn-v89Vt.d.ts} +10 -6
  315. package/dist/{index-Bu8NA2SD.d.ts → index-BnEhvmdR.d.ts} +16 -7
  316. package/dist/index-Bo-ofFyg.d.ts +166 -0
  317. package/dist/{index-i0tNFWfz.d.ts → index-BqhgeAT4.d.ts} +2 -0
  318. package/dist/{index-DWh2WC8W.d.ts → index-C4Cjz6OK.d.ts} +2 -2
  319. package/dist/{index-B7yhzGUT.d.ts → index-C7sam-SB.d.ts} +2 -2
  320. package/dist/{index-BrJzFA5X.d.ts → index-C90l2rH1.d.ts} +1 -1
  321. package/dist/{index-vP0EtrJJ.d.ts → index-C9gAlDt_.d.ts} +6 -3
  322. package/dist/{index-xrzJC4wm.d.ts → index-CJ6ajsUC.d.ts} +1 -1
  323. package/dist/{index-B9e52paP.d.ts → index-CK-Dbh0f.d.ts} +1 -1
  324. package/dist/index-CKUfpmFL.d.ts +375 -0
  325. package/dist/{index-DXpSFlPG.d.ts → index-CKgBTAzC.d.ts} +4 -4
  326. package/dist/{index-gW0HW02U.d.ts → index-COxy6LEW.d.ts} +1 -1
  327. package/dist/{index-B4OOtNP8.d.ts → index-CPtDjmcX.d.ts} +3 -3
  328. package/dist/{index-12QYAbiz.d.ts → index-CRrSHbok.d.ts} +3 -2
  329. package/dist/{index-DG52Bg0W.d.ts → index-CTf3SK0b.d.ts} +6 -0
  330. package/dist/{index-BVKivP59.d.ts → index-CTjkJP4x.d.ts} +32 -3
  331. package/dist/{index-COgrQZIL.d.ts → index-CdvmnNMH.d.ts} +1 -1
  332. package/dist/{index-GI9xIV9l.d.ts → index-CikMzeab.d.ts} +2 -2
  333. package/dist/{index-DUaLJO7l.d.ts → index-CpNlPLBF.d.ts} +172 -126
  334. package/dist/{index-yT1yiiww.d.ts → index-Cs1xsHKi.d.ts} +24 -12
  335. package/dist/{index-Cyb9Du5Z.d.ts → index-CtTGt6Dv.d.ts} +1 -1
  336. package/dist/{index-Byar3h1e.d.ts → index-D05JGsT3.d.ts} +6 -3
  337. package/dist/{index-B3Fomy15.d.ts → index-D0_HsuC3.d.ts} +3 -3
  338. package/dist/{index-BgT6mH3U.d.ts → index-D7ShT2c-.d.ts} +1 -1
  339. package/dist/{index-CkKPMIeX.d.ts → index-D7XRtUTY.d.ts} +9 -0
  340. package/dist/{index-TntQsADQ.d.ts → index-DEm3kRBO.d.ts} +4 -3
  341. package/dist/{index-C2nbK2AA.d.ts → index-DLAG3m9W.d.ts} +13 -3
  342. package/dist/{index-DVmgNb78.d.ts → index-DRJZ-v1E.d.ts} +4 -4
  343. package/dist/{index-CL1T2j4y.d.ts → index-DY8Wph-A.d.ts} +3 -3
  344. package/dist/{index-B1WJxt-n.d.ts → index-DfC05uKG.d.ts} +17 -7
  345. package/dist/{index-C5e-7Obr.d.ts → index-Dj1_1t3j.d.ts} +19 -6
  346. package/dist/{index-D41_xqjs.d.ts → index-Dr4b_oji.d.ts} +20 -13
  347. package/dist/{index-CqE4Bf3Q.d.ts → index-Ds201-d2.d.ts} +16 -2
  348. package/dist/{index-DIXAzTKL.d.ts → index-DxxudRgB.d.ts} +1 -1
  349. package/dist/{index-B42oE_F-.d.ts → index-IfsSCj8J.d.ts} +18 -5
  350. package/dist/{index-XuAAcYiP.d.ts → index-f3d9cVtj.d.ts} +1 -1
  351. package/dist/{index-T2FOcOuI.d.ts → index-jOwU3YoR.d.ts} +400 -90
  352. package/dist/{index-CICeEoZV.d.ts → index-pNtfr-RW.d.ts} +1 -1
  353. package/dist/{index-BhpAUzUr.d.ts → index-unAZVFGz.d.ts} +2 -2
  354. package/dist/index.d.ts +80 -74
  355. package/dist/index.js +149 -134
  356. package/dist/inlineSize-BNe8wggI.js +66 -0
  357. package/dist/inputPresentation-BOyHkCDr.js +62 -0
  358. package/dist/interactionModality-ACpTMhak.js +44 -0
  359. package/dist/isApplePlatform-B1ju6F5B.js +27 -0
  360. package/dist/isRenderable-BnKHIqfd.js +21 -0
  361. package/dist/layerDepth-CNDh-IHb.js +181 -0
  362. package/dist/link-DuuA2eCL.js +30 -0
  363. package/dist/{loadCatalog-BGHKG_9N.d.ts → loadCatalog-DlLFZreI.d.ts} +281 -7
  364. package/dist/loadCatalog-eopw74qb.js +424 -0
  365. package/dist/locale/index.d.ts +2 -2
  366. package/dist/locale/index.js +4 -3
  367. package/dist/locale-CabGJlGp.js +343 -0
  368. package/dist/modalOutlet-CUOcrhIu.js +56 -0
  369. package/dist/optionAction-Cg7xQLUA.d.ts +6 -0
  370. package/dist/{power-search-DrDfcoL1.d.ts → power-search-gHLIYXs5.d.ts} +2 -0
  371. package/dist/protocol-DHxY0NI8.js +113 -0
  372. package/dist/protocol-RSeMzAN1.d.ts +238 -0
  373. package/dist/publicParser-B0MRoikr.d.ts +141 -0
  374. package/dist/publicParser-uHC_T0Fo.js +895 -0
  375. package/dist/resizableChannel-3vivrEcT.js +20 -0
  376. package/dist/safeUrl-CsvfcZ9m.js +54 -0
  377. package/dist/scopedProvide-C-Df7c15.js +30 -0
  378. package/dist/scrollKeyboardDelegation-D7cumnOl.js +238 -0
  379. package/dist/scrollLock-C3aT4-0z.js +102 -0
  380. package/dist/{searchResultMessage-hXXNOFJP.js → searchResultMessage-mCpJBvra.js} +5 -14
  381. package/dist/{semantic-CKH9XVqa.d.ts → semantic-BF_AjLvk.d.ts} +6 -3
  382. package/dist/slug-C65CUsf9.js +32 -0
  383. package/dist/syntaxContext-DmIfNNtb.js +4 -0
  384. package/dist/triggerVariant-BsL8jMHs.js +16 -0
  385. package/dist/{types-0Q_SJv_F.d.ts → types-Bb7OGivY.d.ts} +6 -1
  386. package/dist/{types-CwyibrRB.d.ts → types-C5GQ2KCK.d.ts} +23 -3
  387. package/dist/{types-gKsEkk2g.d.ts → types-CsqwQkf1.d.ts} +143 -10
  388. package/dist/upstreamMap-xr3gvREu.js +731 -0
  389. package/dist/{useAnchoredListbox-DwztMNjP.js → useAnchoredListbox-DGxxKHZb.js} +2 -2
  390. package/dist/{useAsyncSource-xpQovjV_.d.ts → useAsyncSource-aGzrvRkI.d.ts} +3 -0
  391. package/dist/{useClickableContainer-DyNpnSEa.js → useClickableContainer-CdGp_Cev.js} +1 -1
  392. package/dist/{useClipboard-BDfbEsWd.js → useClipboard-Dk8cS810.js} +1 -1
  393. package/dist/useHoverLayerDismiss-kYJ_NqL4.js +27 -0
  394. package/dist/{useIndicator-i1NORM7W.js → useIndicator-MZmfBWid.js} +5 -23
  395. package/dist/{useInputContainer-CpgDe2-4.js → useInputContainer-CLcYrby4.js} +1 -1
  396. package/dist/{useInputStatusIcon-DBOwxV4x.js → useInputStatusIcon-DAE7PExr.js} +1 -1
  397. package/dist/useLayerMountTarget-BmZyeKWE.js +156 -0
  398. package/dist/{useListFocus-D0iOJl39.js → useListFocus-ChxLg0b4.js} +3 -2
  399. package/dist/{useMenuDrillIn-DzKGkTho.js → useMenuDrillIn-DhUnPvKs.js} +6 -5
  400. package/dist/useMenuHover-Djreu23i.js +170 -0
  401. package/dist/useMenuPress-8foxY8z4.js +764 -0
  402. package/dist/{useMergedRefs-CfHHlCsn.js → useMergedRefs-Cb6_w93m.js} +24 -4
  403. package/dist/{useNumberField-4-dIGVed.js → useNumberField-Dk1BE3-K.js} +3 -3
  404. package/dist/useOptionActionGrid-CkJcuvaU.js +97 -0
  405. package/dist/{usePositionedLayer-Cru9_00b.js → usePositionedLayer-B7cvG-_v.js} +43 -49
  406. package/dist/usePressFeedback-BJCpjEpv.js +319 -0
  407. package/dist/{useResizable-DDwPpPe6.d.ts → useResizable-1MHPNaRD.d.ts} +19 -1
  408. package/dist/{useResizable-B3ahKLoZ.js → useResizable-I3BCiLSL.js} +72 -40
  409. package/dist/useResolvedLabelHidden-B2rlWiaI.js +30 -0
  410. package/dist/{useRestoreFocus-Djw9RUIf.js → useRestoreFocus-XEKs5-gp.js} +49 -7
  411. package/dist/useScrollOverflow-DuMoGXmm.js +67 -0
  412. package/dist/useScrollableArea-BE8b3qm7.js +222 -0
  413. package/dist/{useTimeValue-6ufHM15W.js → useTimeValue-BJd0xBhG.js} +4 -22
  414. package/dist/useTranslator-BmWt2BBt.js +35 -0
  415. package/dist/{useTypeahead-PAK8lMYz.js → useTypeahead-BvtflkRk.js} +4 -5
  416. package/dist/utils/index.d.ts +3 -0
  417. package/dist/utils/index.js +5 -0
  418. package/dist/{utils-D33VQDnk.js → utils-ClVseK2w.js} +29 -2
  419. package/dist/utils-z3Q6BGIJ.js +819 -0
  420. package/locales/SOURCE.json +1 -1
  421. package/package.json +18 -2
  422. package/reset.css +364 -1
  423. package/styles/avatar-group.css +9 -1
  424. package/styles/badge.css +8 -5
  425. package/styles/banner.css +124 -26
  426. package/styles/blockquote.css +1 -0
  427. package/styles/bordered-control.css +1 -1
  428. package/styles/bottom-sheet.css +74 -6
  429. package/styles/breadcrumbs.css +16 -2
  430. package/styles/button-group.css +3 -1
  431. package/styles/button.css +53 -11
  432. package/styles/card.css +1 -1
  433. package/styles/chat.css +16 -6
  434. package/styles/checkbox-input.css +10 -0
  435. package/styles/clickable-card.css +10 -3
  436. package/styles/collapsible.css +12 -5
  437. package/styles/command-palette.css +29 -14
  438. package/styles/complex-selector.css +22 -5
  439. package/styles/context-menu.css +3 -3
  440. package/styles/date-input.css +111 -1
  441. package/styles/dialog-header.css +4 -1
  442. package/styles/dialog.css +7 -0
  443. package/styles/dropdown-menu.css +12 -3
  444. package/styles/field.css +5 -0
  445. package/styles/form-layout.css +1 -0
  446. package/styles/heading.css +18 -8
  447. package/styles/icon.css +4 -0
  448. package/styles/kbd.css +1 -1
  449. package/styles/layer.css +72 -0
  450. package/styles/list.css +9 -2
  451. package/styles/metadata-list.css +1 -0
  452. package/styles/mobile-nav.css +4 -1
  453. package/styles/multi-selector.css +48 -1
  454. package/styles/nav-item.css +9 -2
  455. package/styles/nav-menu.css +12 -2
  456. package/styles/number-input.css +9 -1
  457. package/styles/overflow-list.css +1 -1
  458. package/styles/popover.css +2 -1
  459. package/styles/power-search.css +5 -3
  460. package/styles/pressable.css +63 -22
  461. package/styles/progress-bar.css +15 -3
  462. package/styles/radio.css +16 -0
  463. package/styles/resize-handle.css +42 -0
  464. package/styles/segmented-control.css +12 -4
  465. package/styles/selector.css +53 -1
  466. package/styles/side-nav.css +19 -0
  467. package/styles/slider.css +4 -3
  468. package/styles/spinner.css +48 -42
  469. package/styles/stepper.css +58 -4
  470. package/styles/switch.css +26 -0
  471. package/styles/tab-list.css +132 -3
  472. package/styles/table.css +88 -10
  473. package/styles/text-area.css +1 -1
  474. package/styles/text-input.css +1 -1
  475. package/styles/text.css +6 -6
  476. package/styles/thumbnail.css +11 -3
  477. package/styles/time-input.css +8 -0
  478. package/styles/toast.css +37 -3
  479. package/styles/token.css +2 -2
  480. package/styles/tokenizer.css +1 -1
  481. package/styles/toolbar.css +4 -1
  482. package/styles/tree-list.css +1 -1
  483. package/styles/typeahead.css +34 -1
  484. package/styles.css +1 -0
  485. package/dist/Blockquote-DFqBv_oJ.js +0 -18
  486. package/dist/Breadcrumbs-DIm4figq.js +0 -141
  487. package/dist/ButtonGroup-ySQWanDP.js +0 -125
  488. package/dist/DateTimeInput-A7m2O3bg.js +0 -268
  489. package/dist/MultiSelector-BtAUfQ3t.js +0 -990
  490. package/dist/NumberInput-AZ9x3oja.js +0 -473
  491. package/dist/Selector-DJ2BhUTV.js +0 -677
  492. package/dist/Spinner-9cYUCnDy.js +0 -84
  493. package/dist/Theme-CtaUWo4g.js +0 -1246
  494. package/dist/Toast-BuqIZV5z.js +0 -322
  495. package/dist/context-4PuqD1Ic.js +0 -4
  496. package/dist/context-D5-MwxnN.js +0 -4
  497. package/dist/index-BH9PzQ1F.d.ts +0 -87
  498. package/dist/link-C4_WogdF.js +0 -18
  499. package/dist/loadCatalog-CXKqEB9s.js +0 -877
  500. package/dist/locale-DgkZEMTn.js +0 -105
  501. package/dist/platform-B_9W_aHW.js +0 -33
  502. package/dist/scrollLock-BzIvIimL.js +0 -42
  503. package/dist/useMenuPress-D-FRNrBW.js +0 -573
  504. package/dist/useScrollableArea-DDk_CluT.js +0 -172
  505. /package/dist/{index-lgvUFSCO.d.ts → index-CryFtTT6.d.ts} +0 -0
@@ -1,8 +1,10 @@
1
+ import { t as usePressFeedback } from "./usePressFeedback-BJCpjEpv.js";
2
+ import { n as isSafeUrl } from "./safeUrl-CsvfcZ9m.js";
1
3
  import { n as useLinkComponent } from "./context-C_peZbXf.js";
2
- import { o as useAstryxMessages } from "./context-iABt_ueM.js";
4
+ import { s as useAstryxMessages } from "./context-DWfi56sq.js";
3
5
  import { t as _sfc_main$2 } from "./Badge-CjDQPF5g.js";
4
- import { s as isIconGlyph, t as _sfc_main$3 } from "./Icon-bteSId7T.js";
5
- import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, normalizeClass, normalizeStyle, onMounted, openBlock, reactive, ref, renderList, renderSlot, resolveComponent, resolveDynamicComponent, toDisplayString, toRaw, unref, useId, vShow, withCtx, withDirectives } from "vue";
6
+ import { s as isIconGlyph, t as _sfc_main$3 } from "./Icon-KDnUyY7f.js";
7
+ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeProps, normalizeClass, normalizeStyle, onMounted, openBlock, reactive, ref, renderList, renderSlot, resolveComponent, resolveDynamicComponent, toDisplayString, toRaw, unref, useAttrs, useId, useSlots, vShow, withCtx, withDirectives } from "vue";
6
8
  import "../styles/tree-list.css";
7
9
  //#region src/TreeList/TreeListItem.vue
8
10
  const _hoisted_1$1 = [
@@ -14,6 +16,8 @@ const _hoisted_1$1 = [
14
16
  "aria-selected",
15
17
  "aria-disabled",
16
18
  "aria-expanded",
19
+ "aria-labelledby",
20
+ "aria-describedby",
17
21
  "tabindex"
18
22
  ];
19
23
  const _hoisted_2$1 = ["data-span"];
@@ -39,26 +43,21 @@ const _hoisted_7 = {
39
43
  key: 1,
40
44
  class: "astryx-tree-list__icon"
41
45
  };
42
- const _hoisted_8 = { class: "astryx-tree-list__label" };
43
- const _hoisted_9 = {
44
- key: 0,
45
- class: "astryx-tree-list__description"
46
- };
47
- const _hoisted_10 = ["disabled"];
48
- const _hoisted_11 = { class: "astryx-tree-list__label" };
49
- const _hoisted_12 = {
50
- key: 0,
51
- class: "astryx-tree-list__description"
52
- };
46
+ const _hoisted_8 = ["id"];
47
+ const _hoisted_9 = ["id"];
48
+ const _hoisted_10 = [
49
+ "disabled",
50
+ "aria-labelledby",
51
+ "aria-describedby"
52
+ ];
53
+ const _hoisted_11 = ["id"];
54
+ const _hoisted_12 = ["id"];
53
55
  const _hoisted_13 = {
54
56
  key: 4,
55
57
  class: "astryx-tree-list__main"
56
58
  };
57
- const _hoisted_14 = { class: "astryx-tree-list__label" };
58
- const _hoisted_15 = {
59
- key: 0,
60
- class: "astryx-tree-list__description"
61
- };
59
+ const _hoisted_14 = ["id"];
60
+ const _hoisted_15 = ["id"];
62
61
  const _hoisted_16 = {
63
62
  key: 5,
64
63
  class: "astryx-tree-list__end"
@@ -95,8 +94,16 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
95
94
  const emit = __emit;
96
95
  const messages = useAstryxMessages();
97
96
  const linkComponent = useLinkComponent();
97
+ const labelId = useId();
98
+ const descriptionId = useId();
98
99
  /** 有链接时用的根组件,没有 provider 时还是 `<a>`。 */
99
100
  const linkRoot = computed(() => linkComponent.value == null ? "a" : toRaw(linkComponent.value));
101
+ const safeHref = computed(() => {
102
+ const href = props.item.href;
103
+ return href != null && href !== "" && isSafeUrl(href) ? href : void 0;
104
+ });
105
+ /** 新窗口打开时补上和列表行相同的关系标记。 */
106
+ const linkRel = computed(() => props.item.target === "_blank" ? "noopener noreferrer" : void 0);
100
107
  const hasChildren = computed(() => (props.item.children?.length ?? 0) > 0);
101
108
  const isExpanded = computed(() => hasChildren.value && props.expanded[props.item.id] === true);
102
109
  const reservesChevron = computed(() => !hasChildren.value && props.hasExpandableItems);
@@ -116,19 +123,26 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
116
123
  event.stopPropagation();
117
124
  emit("toggle", props.item.id);
118
125
  }
126
+ const press = usePressFeedback();
127
+ const rowPress = computed(() => {
128
+ return (props.item.onClick != null || safeHref.value != null || hasChildren.value) && props.item.isDisabled !== true ? press.pressableProps : {};
129
+ });
119
130
  return (_ctx, _cache) => {
120
131
  const _component_TreeListItem = resolveComponent("TreeListItem", true);
121
132
  return openBlock(), createElementBlock("li", {
122
- class: "astryx-tree-list__item",
133
+ class: normalizeClass(["astryx-tree-list__item", __props.item.className]),
123
134
  role: "treeitem",
124
135
  "data-tree-id": __props.item.id,
125
136
  "data-tree-disabled": __props.item.isDisabled ? "true" : void 0,
137
+ style: normalizeStyle(__props.item.style),
126
138
  "aria-level": __props.nestedLevel + 1,
127
139
  "aria-posinset": __props.posInSet,
128
140
  "aria-setsize": __props.setSize,
129
141
  "aria-selected": __props.item.isSelected || void 0,
130
142
  "aria-disabled": __props.item.isDisabled || void 0,
131
143
  "aria-expanded": hasChildren.value ? isExpanded.value : void 0,
144
+ "aria-labelledby": unref(labelId),
145
+ "aria-describedby": __props.item.description ? unref(descriptionId) : void 0,
132
146
  tabindex: __props.item.id === __props.tabbableId ? 0 : -1
133
147
  }, [
134
148
  __props.variant === "lineGuides" ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.ancestorsIsLast, (ancestorIsLast, level) => {
@@ -148,16 +162,15 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
148
162
  class: "astryx-tree-list__guide-line",
149
163
  "data-span": __props.isLast ? "last" : "full"
150
164
  }, null, 8, _hoisted_2$1)], 4)) : createCommentVNode("v-if", true)], 64)) : createCommentVNode("v-if", true),
151
- createElementVNode("div", _hoisted_3, [createCommentVNode(" eslint-disable-next-line vue-a11y/click-events-have-key-events, vue-a11y/no-static-element-interactions -- 键盘由外层 role=\"tree\" 处理,这一层只接指针点击。 "), createElementVNode("div", {
165
+ createElementVNode("div", _hoisted_3, [createCommentVNode(" eslint-disable-next-line vue-a11y/click-events-have-key-events, vue-a11y/no-static-element-interactions -- 键盘由外层 role=\"tree\" 处理,这一层只接指针点击。 "), createElementVNode("div", mergeProps({
152
166
  class: "astryx-tree-list__content",
153
167
  "data-density": __props.density,
154
168
  "data-selected": __props.item.isSelected || void 0,
155
169
  "data-disabled": __props.item.isDisabled || void 0,
156
- "data-interactive": __props.item.onClick != null || __props.item.href != null || hasChildren.value || void 0,
170
+ "data-interactive": __props.item.onClick != null || safeHref.value != null || hasChildren.value || void 0,
157
171
  "data-guide-inset": __props.variant === "lineGuides" && __props.nestedLevel > 0 && !reservesChevron.value || void 0,
158
- style: normalizeStyle({ "--_tree-indent": indent.value }),
159
- onClick: onRowClick
160
- }, [
172
+ style: { "--_tree-indent": indent.value }
173
+ }, rowPress.value, { onClick: onRowClick }), [
161
174
  hasChildren.value ? (openBlock(), createElementBlock("button", {
162
175
  key: 0,
163
176
  type: "button",
@@ -182,28 +195,57 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
182
195
  class: normalizeClass(__props.item.icon),
183
196
  "aria-hidden": "true"
184
197
  }, null, 2)]))])) : createCommentVNode("v-if", true),
185
- __props.item.href ? (openBlock(), createBlock(resolveDynamicComponent(linkRoot.value), {
198
+ safeHref.value ? (openBlock(), createBlock(resolveDynamicComponent(linkRoot.value), {
186
199
  key: 2,
187
200
  class: "astryx-tree-list__action",
188
- href: __props.item.href,
189
- to: linkRoot.value === "a" ? void 0 : __props.item.href,
201
+ href: safeHref.value,
202
+ to: linkRoot.value === "a" ? void 0 : safeHref.value,
190
203
  target: __props.item.target,
204
+ rel: linkRel.value,
205
+ "aria-labelledby": unref(labelId),
206
+ "aria-describedby": __props.item.description ? unref(descriptionId) : void 0,
191
207
  tabindex: "-1"
192
208
  }, {
193
- default: withCtx(() => [createElementVNode("span", _hoisted_8, toDisplayString(__props.item.label), 1), __props.item.description ? (openBlock(), createElementBlock("span", _hoisted_9, toDisplayString(__props.item.description), 1)) : createCommentVNode("v-if", true)]),
209
+ default: withCtx(() => [createElementVNode("span", {
210
+ id: unref(labelId),
211
+ class: "astryx-tree-list__label"
212
+ }, toDisplayString(__props.item.label), 9, _hoisted_8), __props.item.description ? (openBlock(), createElementBlock("span", {
213
+ key: 0,
214
+ id: unref(descriptionId),
215
+ class: "astryx-tree-list__description"
216
+ }, toDisplayString(__props.item.description), 9, _hoisted_9)) : createCommentVNode("v-if", true)]),
194
217
  _: 1
195
218
  }, 8, [
196
219
  "href",
197
220
  "to",
198
- "target"
221
+ "target",
222
+ "rel",
223
+ "aria-labelledby",
224
+ "aria-describedby"
199
225
  ])) : __props.item.onClick ? (openBlock(), createElementBlock("button", {
200
226
  key: 3,
201
227
  type: "button",
202
228
  class: "astryx-tree-list__action",
203
229
  disabled: __props.item.isDisabled,
230
+ "aria-labelledby": unref(labelId),
231
+ "aria-describedby": __props.item.description ? unref(descriptionId) : void 0,
204
232
  tabindex: "-1",
205
233
  onClick: _cache[0] || (_cache[0] = ($event) => __props.item.onClick($event))
206
- }, [createElementVNode("span", _hoisted_11, toDisplayString(__props.item.label), 1), __props.item.description ? (openBlock(), createElementBlock("span", _hoisted_12, toDisplayString(__props.item.description), 1)) : createCommentVNode("v-if", true)], 8, _hoisted_10)) : (openBlock(), createElementBlock("span", _hoisted_13, [createElementVNode("span", _hoisted_14, toDisplayString(__props.item.label), 1), __props.item.description ? (openBlock(), createElementBlock("span", _hoisted_15, toDisplayString(__props.item.description), 1)) : createCommentVNode("v-if", true)])),
234
+ }, [createElementVNode("span", {
235
+ id: unref(labelId),
236
+ class: "astryx-tree-list__label"
237
+ }, toDisplayString(__props.item.label), 9, _hoisted_11), __props.item.description ? (openBlock(), createElementBlock("span", {
238
+ key: 0,
239
+ id: unref(descriptionId),
240
+ class: "astryx-tree-list__description"
241
+ }, toDisplayString(__props.item.description), 9, _hoisted_12)) : createCommentVNode("v-if", true)], 8, _hoisted_10)) : (openBlock(), createElementBlock("span", _hoisted_13, [createElementVNode("span", {
242
+ id: unref(labelId),
243
+ class: "astryx-tree-list__label"
244
+ }, toDisplayString(__props.item.label), 9, _hoisted_14), __props.item.description ? (openBlock(), createElementBlock("span", {
245
+ key: 0,
246
+ id: unref(descriptionId),
247
+ class: "astryx-tree-list__description"
248
+ }, toDisplayString(__props.item.description), 9, _hoisted_15)) : createCommentVNode("v-if", true)])),
207
249
  __props.item.badge || __props.item.endIcon ? (openBlock(), createElementBlock("span", _hoisted_16, [__props.item.badge ? (openBlock(), createBlock(_sfc_main$2, { key: 0 }, {
208
250
  default: withCtx(() => [createTextVNode(toDisplayString(__props.item.badge), 1)]),
209
251
  _: 1
@@ -215,7 +257,7 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
215
257
  class: normalizeClass(__props.item.endIcon),
216
258
  "aria-hidden": "true"
217
259
  }, null, 2)])) : createCommentVNode("v-if", true)])) : createCommentVNode("v-if", true)
218
- ], 12, _hoisted_4)]),
260
+ ], 16, _hoisted_4)]),
219
261
  hasChildren.value && isExpanded.value ? (openBlock(), createElementBlock("ul", _hoisted_18, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.item.children, (child, index) => {
220
262
  return openBlock(), createBlock(_component_TreeListItem, {
221
263
  key: child.id,
@@ -245,7 +287,7 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
245
287
  "set-size"
246
288
  ]);
247
289
  }), 128))])) : createCommentVNode("v-if", true)
248
- ], 8, _hoisted_1$1);
290
+ ], 14, _hoisted_1$1);
249
291
  };
250
292
  }
251
293
  });
@@ -291,6 +333,17 @@ function useTreeFocus(options) {
291
333
  if (options.getLevel != null) return options.getLevel(item);
292
334
  return Number(item.getAttribute("aria-level") ?? "1");
293
335
  }
336
+ /** typeahead 用的名字。指明时只读标签,否则用整行文字。 */
337
+ function matchText(item) {
338
+ if (options.matchLabelledBy === true) {
339
+ const ids = item.getAttribute("aria-labelledby")?.split(/\s+/).filter(Boolean) ?? [];
340
+ if (ids.length > 0) {
341
+ const doc = item.ownerDocument;
342
+ return ids.map((id) => doc.getElementById(id)?.textContent ?? "").join(" ").trim().toLowerCase();
343
+ }
344
+ }
345
+ return (item.textContent ?? "").trim().toLowerCase();
346
+ }
294
347
  /** 树节点的 id:优先 `data-tree-id`,退回元素自己的 `id`。 */
295
348
  function idOf(item) {
296
349
  const id = item.dataset.treeId ?? item.id;
@@ -334,7 +387,7 @@ function useTreeFocus(options) {
334
387
  typeahead.buffer = "";
335
388
  }, TYPEAHEAD_RESET_MS);
336
389
  const query = typeahead.buffer;
337
- const match = [...list.slice(currentIndex + 1), ...list.slice(0, currentIndex + 1)].find((item) => !disabled(item) && (item.textContent ?? "").trim().toLowerCase().startsWith(query));
390
+ const match = [...list.slice(currentIndex + 1), ...list.slice(0, currentIndex + 1)].find((item) => !disabled(item) && matchText(item).startsWith(query));
338
391
  if (match != null) {
339
392
  event.preventDefault();
340
393
  focusItem(match);
@@ -440,7 +493,30 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
440
493
  },
441
494
  setup(__props) {
442
495
  const props = __props;
496
+ const attrs = useAttrs();
497
+ const slots = useSlots();
443
498
  const headerId = `astryx-tree-list-${useId()}`;
499
+ const hasHeader = computed(() => props.header != null || slots.header != null);
500
+ const rootAttrs = computed(() => {
501
+ const rest = {};
502
+ for (const [key, value] of Object.entries(attrs)) {
503
+ if (key === "class" || key === "style" || key === "onKeydown" || key === "onKeyDown") continue;
504
+ if (key === "aria-label" || key === "aria-labelledby") continue;
505
+ rest[key] = value;
506
+ }
507
+ return rest;
508
+ });
509
+ const treeLabel = computed(() => {
510
+ if (hasHeader.value) return void 0;
511
+ const fromAttr = attrs["aria-label"];
512
+ if (typeof fromAttr === "string") return fromAttr;
513
+ return props.label;
514
+ });
515
+ const treeLabelledBy = computed(() => {
516
+ if (hasHeader.value) return headerId;
517
+ const fromAttr = attrs["aria-labelledby"];
518
+ return typeof fromAttr === "string" ? fromAttr : void 0;
519
+ });
444
520
  const expanded = reactive({});
445
521
  function walk(items, visit) {
446
522
  for (const item of items) {
@@ -490,6 +566,7 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
490
566
  const tabbableId = computed(() => initialTabbable(props.items));
491
567
  const { treeRef, handleKeyDown, handleFocus } = useTreeFocus({
492
568
  hasRovingTabIndex: true,
569
+ matchLabelledBy: true,
493
570
  onToggleExpand: toggle,
494
571
  onActivate: (current) => {
495
572
  const candidates = current.querySelectorAll("a[href], button:not([data-tree-toggle])");
@@ -500,17 +577,23 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
500
577
  return false;
501
578
  }
502
579
  });
580
+ function callKeydown(listener, event) {
581
+ if (typeof listener === "function") listener(event);
582
+ else if (Array.isArray(listener)) listener.forEach((entry) => callKeydown(entry, event));
583
+ }
503
584
  function onKeyDown(event) {
585
+ callKeydown(attrs.onKeydown ?? attrs.onKeyDown, event);
586
+ if (event.defaultPrevented) return;
504
587
  if (treeRef.value != null && event.target instanceof Node && treeRef.value.contains(event.target)) handleKeyDown(event);
505
588
  }
506
589
  return (_ctx, _cache) => {
507
- return openBlock(), createElementBlock(Fragment, null, [createCommentVNode(" eslint-disable-next-line vue-a11y/no-static-element-interactions -- 方向键从内部 role=\"tree\" 冒泡上来,这一层只负责转发给树的键盘逻辑。 "), createElementVNode("div", {
508
- class: normalizeClass(["astryx-tree-list", _ctx.$attrs.class]),
509
- style: normalizeStyle(_ctx.$attrs.style),
590
+ return openBlock(), createElementBlock(Fragment, null, [createCommentVNode(" eslint-disable-next-line vue-a11y/no-static-element-interactions -- 方向键从内部 role=\"tree\" 冒泡上来,这一层只负责转发给树的键盘逻辑。 "), createElementVNode("div", mergeProps(rootAttrs.value, {
591
+ class: ["astryx-tree-list", unref(attrs).class],
592
+ style: unref(attrs).style,
510
593
  "data-density": __props.density,
511
594
  "data-variant": __props.variant,
512
595
  onKeydown: onKeyDown
513
- }, [__props.header || _ctx.$slots.header ? (openBlock(), createElementBlock("div", {
596
+ }), [hasHeader.value ? (openBlock(), createElementBlock("div", {
514
597
  key: 0,
515
598
  id: headerId,
516
599
  class: "astryx-tree-list__header"
@@ -519,8 +602,8 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
519
602
  ref: treeRef,
520
603
  class: "astryx-tree-list__list",
521
604
  role: "tree",
522
- "aria-label": __props.header || _ctx.$slots.header ? void 0 : __props.label,
523
- "aria-labelledby": __props.header || _ctx.$slots.header ? headerId : void 0,
605
+ "aria-label": treeLabel.value,
606
+ "aria-labelledby": treeLabelledBy.value,
524
607
  onFocus: _cache[0] || (_cache[0] = (...args) => unref(handleFocus) && unref(handleFocus)(...args))
525
608
  }, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.items, (item, index) => {
526
609
  return openBlock(), createBlock(_sfc_main$1, {
@@ -548,7 +631,7 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
548
631
  "pos-in-set",
549
632
  "set-size"
550
633
  ]);
551
- }), 128))], 40, _hoisted_2)], 46, _hoisted_1)], 2112);
634
+ }), 128))], 40, _hoisted_2)], 16, _hoisted_1)], 2112);
552
635
  };
553
636
  }
554
637
  });
@@ -1,2 +1,2 @@
1
- import { a as TypeaheadEmits, c as TypeaheadSize, i as BaseTypeaheadProps, l as TypeaheadSlots, n as _default$1, o as TypeaheadItemProps, r as _default, s as TypeaheadProps, t as _default$2, u as TypeaheadStatus } from "../index-Bu8NA2SD.js";
1
+ import { a as TypeaheadEmits, c as TypeaheadSize, i as BaseTypeaheadProps, l as TypeaheadSlots, n as _default$1, o as TypeaheadItemProps, r as _default, s as TypeaheadProps, t as _default$2, u as TypeaheadStatus } from "../index-BnEhvmdR.js";
2
2
  export { _default as BaseTypeahead, type BaseTypeaheadProps, _default$1 as Typeahead, type TypeaheadEmits, _default$2 as TypeaheadItem, type TypeaheadItemProps, type TypeaheadProps, type TypeaheadSize, type TypeaheadSlots, type TypeaheadStatus };
@@ -1,3 +1,3 @@
1
- import { n as _sfc_main$2 } from "../TypeaheadMenu-DBW6rHeO.js";
2
- import { n as _sfc_main, t as _sfc_main$1 } from "../Typeahead-JP9RT87x.js";
1
+ import { n as _sfc_main$2 } from "../TypeaheadMenu-BQlMrfqX.js";
2
+ import { n as _sfc_main, t as _sfc_main$1 } from "../Typeahead-D4JjvjK4.js";
3
3
  export { _sfc_main as BaseTypeahead, _sfc_main$1 as Typeahead, _sfc_main$2 as TypeaheadItem };
@@ -1,13 +1,17 @@
1
- import { n as useButtonTooltip } from "./Button-B6Hj_O_s.js";
2
- import { t as _sfc_main$2 } from "./ButtonTooltip-nWWrth8j.js";
3
- import { o as useAstryxMessages } from "./context-iABt_ueM.js";
1
+ import { n as useButtonTooltip } from "./Button-ONOoHdkg.js";
2
+ import { t as _sfc_main$2 } from "./ButtonTooltip-CNKOQHYR.js";
3
+ import { a as isImeKeyEvent } from "./layerDepth-CNDh-IHb.js";
4
+ import { s as useAstryxMessages } from "./context-DWfi56sq.js";
5
+ import { t as useResolvedLabelHidden } from "./useResolvedLabelHidden-B2rlWiaI.js";
4
6
  import { t as useScrollbars } from "./useScrollbars-C2NJ6Qwq.js";
5
- import { t as _sfc_main$3 } from "./Spinner-9cYUCnDy.js";
6
- import { t as _sfc_main$4 } from "./Field-D5gUEGw4.js";
7
- import { t as _sfc_main$5 } from "./Token-DsntTYhQ.js";
8
- import { n as useAnchoredListbox, t as scrollOptionIntoView } from "./useAnchoredListbox-DwztMNjP.js";
9
- import { r as useTypeaheadMenu, t as _sfc_main$6 } from "./TypeaheadMenu-DBW6rHeO.js";
10
- import { Fragment, Teleport, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, inject, mergeProps, nextTick, normalizeClass, normalizeStyle, onMounted, openBlock, provide, ref, renderSlot, toDisplayString, unref, useAttrs, useId, useTemplateRef, vShow, watch, withCtx, withDirectives } from "vue";
7
+ import { t as _sfc_main$3 } from "./Spinner-DdVUadii.js";
8
+ import { t as _sfc_main$4 } from "./Field--OEsLBfE.js";
9
+ import { t as useFieldPartStyling } from "./fieldParts--SyRZVQG.js";
10
+ import { t as _sfc_main$5 } from "./Token-BfS4vi__.js";
11
+ import { n as useAnchoredListbox, t as scrollOptionIntoView } from "./useAnchoredListbox-DGxxKHZb.js";
12
+ import { i as useTypeaheadMenu, r as useLatchedOptionGrid, t as _sfc_main$6 } from "./TypeaheadMenu-BQlMrfqX.js";
13
+ import { Fragment, Teleport, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createVNode, defineComponent, inject, mergeProps, nextTick, normalizeClass, normalizeStyle, onMounted, openBlock, provide, ref, renderSlot, resolveDynamicComponent, toDisplayString, unref, useAttrs, useId, useTemplateRef, vShow, watch, withCtx, withDirectives } from "vue";
14
+ import "../styles/layer.css";
11
15
  import "../styles/visually-hidden-utility.css";
12
16
  import "../styles/typeahead.css";
13
17
  //#region src/Typeahead/context.ts
@@ -34,6 +38,7 @@ const _hoisted_2 = [
34
38
  "aria-disabled",
35
39
  "aria-expanded",
36
40
  "aria-controls",
41
+ "aria-haspopup",
37
42
  "aria-label",
38
43
  "aria-labelledby",
39
44
  "aria-activedescendant",
@@ -45,6 +50,7 @@ const _hoisted_4 = ["id"];
45
50
  const _hoisted_5 = ["name", "value"];
46
51
  const _hoisted_6 = [
47
52
  "id",
53
+ "role",
48
54
  "aria-label",
49
55
  "data-placement"
50
56
  ];
@@ -94,7 +100,21 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
94
100
  default: false
95
101
  },
96
102
  name: {},
97
- inputTabIndex: {}
103
+ inputTabIndex: {},
104
+ controlClass: { type: [
105
+ Boolean,
106
+ null,
107
+ String,
108
+ Object,
109
+ Array
110
+ ] },
111
+ controlStyle: { type: [
112
+ Boolean,
113
+ null,
114
+ String,
115
+ Object,
116
+ Array
117
+ ] }
98
118
  },
99
119
  emits: [
100
120
  "update:modelValue",
@@ -275,8 +295,16 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
275
295
  * 外面的 keydown 先跑,它 preventDefault 就不再走内部导航。
276
296
  * 顺序靠模板里 `v-bind` 写在 `@keydown` 前面保证。
277
297
  */
298
+ const optionGrid = useLatchedOptionGrid({
299
+ entries: () => menu.entries.value,
300
+ isOpen: () => menu.combobox.isOpen.value,
301
+ activeIndex: menu.combobox.activeIndex,
302
+ getListbox: () => listboxRef.value,
303
+ listboxId: () => listboxId.value
304
+ });
278
305
  function onKeydown(event) {
279
- if (event.defaultPrevented) return;
306
+ if (event.defaultPrevented || isImeKeyEvent(event)) return;
307
+ if (optionGrid.actionGrid.onKeyDown(event)) return;
280
308
  menu.onKeyDown(event);
281
309
  }
282
310
  function onControlClick(event) {
@@ -306,11 +334,17 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
306
334
  createElementVNode("div", { class: normalizeClass(["astryx-typeahead", [`size-${props.size}`, { "astryx-typeahead--bare": !hasChrome }]]) }, [createCommentVNode(" eslint-disable-next-line vue-a11y/click-events-have-key-events, vue-a11y/no-static-element-interactions -- 点空白处只是把焦点交给组合框;键盘用户直接 Tab 到输入框。 "), createElementVNode("div", {
307
335
  ref_key: "controlRef",
308
336
  ref: controlRef,
309
- class: normalizeClass(["astryx-typeahead-control", [`status-${props.status}`, {
310
- "is-open": unref(menu).combobox.isOpen.value,
311
- "is-disabled": props.disabled,
312
- "is-bare": !hasChrome
313
- }]]),
337
+ class: normalizeClass(["astryx-typeahead-control", [
338
+ unref(attrs).class,
339
+ props.controlClass,
340
+ `status-${props.status}`,
341
+ {
342
+ "is-open": unref(menu).combobox.isOpen.value,
343
+ "is-disabled": props.disabled,
344
+ "is-bare": !hasChrome
345
+ }
346
+ ]]),
347
+ style: normalizeStyle([unref(attrs).style, props.controlStyle]),
314
348
  onClick: onControlClick,
315
349
  onPointerenter: _cache[0] || (_cache[0] = (...args) => unref(disabledTooltip).onPointerEnter && unref(disabledTooltip).onPointerEnter(...args)),
316
350
  onPointerleave: _cache[1] || (_cache[1] = (...args) => unref(disabledTooltip).onPointerLeave && unref(disabledTooltip).onPointerLeave(...args))
@@ -346,10 +380,11 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
346
380
  "aria-disabled": focusableDisabled.value ? "true" : void 0,
347
381
  "aria-expanded": unref(menu).combobox.isOpen.value,
348
382
  "aria-controls": listboxId.value,
383
+ "aria-haspopup": unref(optionGrid).popupKind.value,
349
384
  "aria-label": ariaLabel.value,
350
385
  "aria-labelledby": labelledBy.value,
351
386
  "aria-autocomplete": "list",
352
- "aria-activedescendant": unref(menu).activeId.value ? `${listboxId.value}-option-${unref(menu).combobox.activeIndex.value}` : void 0,
387
+ "aria-activedescendant": unref(optionGrid).gridMode.value ? unref(optionGrid).actionGrid.activeDescendant.value : unref(menu).activeId.value ? `${listboxId.value}-option-${unref(menu).combobox.activeIndex.value}` : void 0,
353
388
  "aria-describedby": describedBy.value,
354
389
  "aria-required": props.required || void 0,
355
390
  onInput,
@@ -392,7 +427,7 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
392
427
  name: props.name,
393
428
  value: selected.value?.id ?? ""
394
429
  }, null, 8, _hoisted_5)) : createCommentVNode("v-if", true)
395
- ], 34)], 2),
430
+ ], 38)], 2),
396
431
  showsDisabledMessage.value ? (openBlock(), createBlock(_sfc_main$2, {
397
432
  key: 0,
398
433
  id: disabledTooltipId.value,
@@ -413,8 +448,8 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
413
448
  id: listboxId.value,
414
449
  ref_key: "listboxRef",
415
450
  ref: listboxRef,
416
- class: "astryx-typeahead-listbox",
417
- role: "listbox",
451
+ class: "astryx-typeahead-listbox astryx-layer",
452
+ role: unref(optionGrid).gridMode.value ? "grid" : "listbox",
418
453
  "aria-label": unref(messages).typeahead.results,
419
454
  "data-placement": unref(anchored).position.value.placement,
420
455
  style: normalizeStyle(unref(anchored).style.value),
@@ -426,9 +461,12 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
426
461
  description: entry.description,
427
462
  disabled: entry.disabled,
428
463
  group: entry.group,
464
+ action: entry.action,
429
465
  selected: optionSelected(entry.item.id)
430
466
  })),
431
467
  "active-index": unref(menu).combobox.activeIndex.value,
468
+ grid: unref(optionGrid).gridMode.value,
469
+ "action-index": unref(optionGrid).actionGrid.column.value === "action" ? unref(menu).combobox.activeIndex.value : -1,
432
470
  status: unref(menu).status.value,
433
471
  "listbox-id": listboxId.value,
434
472
  "empty-text": emptyText.value,
@@ -451,6 +489,8 @@ const _sfc_main$1 = /*@__PURE__*/ defineComponent({
451
489
  } : void 0]), 1032, [
452
490
  "entries",
453
491
  "active-index",
492
+ "grid",
493
+ "action-index",
454
494
  "status",
455
495
  "listbox-id",
456
496
  "empty-text",
@@ -471,6 +511,7 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
471
511
  modelValue: { default: null },
472
512
  searchSource: {},
473
513
  label: {},
514
+ isLabelHidden: { type: Boolean },
474
515
  labelHidden: {
475
516
  type: Boolean,
476
517
  default: false
@@ -518,7 +559,36 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
518
559
  default: false
519
560
  },
520
561
  name: {},
521
- width: {}
562
+ width: {},
563
+ startIcon: {},
564
+ containerClass: { type: [
565
+ Boolean,
566
+ null,
567
+ String,
568
+ Object,
569
+ Array
570
+ ] },
571
+ containerStyle: { type: [
572
+ Boolean,
573
+ null,
574
+ String,
575
+ Object,
576
+ Array
577
+ ] },
578
+ controlClass: { type: [
579
+ Boolean,
580
+ null,
581
+ String,
582
+ Object,
583
+ Array
584
+ ] },
585
+ controlStyle: { type: [
586
+ Boolean,
587
+ null,
588
+ String,
589
+ Object,
590
+ Array
591
+ ] }
522
592
  },
523
593
  emits: [
524
594
  "update:modelValue",
@@ -531,6 +601,25 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
531
601
  const props = __props;
532
602
  const emit = __emit;
533
603
  const attrs = useAttrs();
604
+ const parts = useFieldPartStyling({
605
+ component: "Typeahead",
606
+ props,
607
+ attrs,
608
+ reservedAttrs: [
609
+ "id",
610
+ "role",
611
+ "aria-label",
612
+ "aria-labelledby",
613
+ "aria-describedby",
614
+ "aria-expanded",
615
+ "aria-controls",
616
+ "aria-haspopup",
617
+ "aria-activedescendant",
618
+ "aria-autocomplete",
619
+ "aria-disabled",
620
+ "aria-required"
621
+ ]
622
+ });
534
623
  provide(typeaheadChromeKey, true);
535
624
  const inputId = `astryx-typeahead-${useId()}`;
536
625
  const base = useTemplateRef("base");
@@ -543,6 +632,8 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
543
632
  const showsClear = computed(() => props.hasClear && props.clearable);
544
633
  /** 两个名字任一为真就在聚焦时先展开。 */
545
634
  const showsEntriesOnFocus = computed(() => props.hasEntriesOnFocus || props.showOnFocus);
635
+ /** 正名 isLabelHidden,旧名 labelHidden 任一为真就藏起标签。 */
636
+ const hideLabel = useResolvedLabelHidden(() => props.isLabelHidden, () => props.labelHidden);
546
637
  const emptySearchText = computed(() => props.emptySearchText ?? props.emptyText);
547
638
  const fieldStatus = computed(() => {
548
639
  if (!props.statusMessage || props.status === "default") return void 0;
@@ -557,12 +648,13 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
557
648
  });
558
649
  return (_ctx, _cache) => {
559
650
  return openBlock(), createBlock(_sfc_main$4, {
560
- class: normalizeClass(["astryx-typeahead", [`size-${props.size}`]]),
651
+ class: normalizeClass(["astryx-typeahead", [unref(parts).containerClass.value, `size-${props.size}`]]),
652
+ style: normalizeStyle(unref(parts).containerStyle.value),
561
653
  label: props.label,
562
654
  "input-id": inputId,
563
655
  description: props.description,
564
656
  "label-tooltip": props.labelTooltip,
565
- "is-label-hidden": props.labelHidden,
657
+ "is-label-hidden": unref(hideLabel),
566
658
  "is-disabled": props.disabled,
567
659
  "is-required": props.required,
568
660
  "is-optional": props.optional,
@@ -572,7 +664,9 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
572
664
  default: withCtx((field) => [createVNode(_sfc_main$1, mergeProps({
573
665
  ref_key: "base",
574
666
  ref: base
575
- }, unref(attrs), {
667
+ }, unref(parts).forwardedAttrs(), {
668
+ "control-class": unref(parts).controlClass(),
669
+ "control-style": unref(parts).controlStyle(),
576
670
  "model-value": props.modelValue,
577
671
  "search-source": props.searchSource,
578
672
  "input-id": field.inputId,
@@ -597,9 +691,9 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
597
691
  onChangeQuery: _cache[3] || (_cache[3] = ($event) => emit("changeQuery", $event)),
598
692
  onOpenChange: _cache[4] || (_cache[4] = ($event) => emit("openChange", $event))
599
693
  }), createSlots({ _: 2 }, [
600
- _ctx.$slots.icon ? {
694
+ _ctx.$slots.icon || props.startIcon ? {
601
695
  name: "icon",
602
- fn: withCtx(() => [renderSlot(_ctx.$slots, "icon")]),
696
+ fn: withCtx(() => [renderSlot(_ctx.$slots, "icon", {}, () => [(openBlock(), createBlock(resolveDynamicComponent(props.startIcon)))])]),
603
697
  key: "0"
604
698
  } : void 0,
605
699
  _ctx.$slots.item ? {
@@ -617,6 +711,8 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
617
711
  key: "2"
618
712
  } : void 0
619
713
  ]), 1040, [
714
+ "control-class",
715
+ "control-style",
620
716
  "model-value",
621
717
  "search-source",
622
718
  "input-id",
@@ -639,6 +735,7 @@ const _sfc_main = /*@__PURE__*/ defineComponent({
639
735
  _: 3
640
736
  }, 8, [
641
737
  "class",
738
+ "style",
642
739
  "label",
643
740
  "description",
644
741
  "label-tooltip",