@astryx-vue/core 0.2.3 → 0.2.4

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 (303) hide show
  1. package/THIRD_PARTY_NOTICES.md +2 -0
  2. package/dist/AlertDialog/index.js +1 -1
  3. package/dist/{AlertDialog-ovx4cBjM.js → AlertDialog-B6UeBCE7.js} +2 -2
  4. package/dist/AppShell/index.d.ts +1 -1
  5. package/dist/AppShell/index.js +1 -1
  6. package/dist/{AppShell-Dd-D4bA2.js → AppShell-CeBmB0Q9.js} +2 -2
  7. package/dist/Avatar/index.d.ts +1 -1
  8. package/dist/Avatar/index.js +1 -1
  9. package/dist/{Avatar-jmHInHwj.js → Avatar-BB4Z4LF1.js} +10 -4
  10. package/dist/AvatarGroup/index.d.ts +1 -1
  11. package/dist/Banner/index.d.ts +1 -1
  12. package/dist/BottomSheet/index.d.ts +2 -2
  13. package/dist/BottomSheet/index.js +3 -2
  14. package/dist/{BottomSheet-Dg95HB1s.js → BottomSheet-BV6vfgGu.js} +82 -22
  15. package/dist/BottomSheet-o7xw-TOi.js +153 -0
  16. package/dist/Breadcrumbs/index.d.ts +2 -2
  17. package/dist/Breadcrumbs/index.js +2 -2
  18. package/dist/{Breadcrumbs-CWGfgLNK.js → Breadcrumbs-D6G7f5WL.js} +1 -1
  19. package/dist/Button/index.d.ts +1 -1
  20. package/dist/ButtonGroup/index.d.ts +1 -1
  21. package/dist/Calendar/index.d.ts +1 -1
  22. package/dist/Calendar/index.js +1 -1
  23. package/dist/{Calendar-CnOsSjMY.js → Calendar-DmTeM7PO.js} +2 -2
  24. package/dist/Card/index.d.ts +1 -1
  25. package/dist/Carousel/index.js +1 -1
  26. package/dist/{Carousel-JA7ilqI_.js → Carousel-CIKrcA2r.js} +1 -1
  27. package/dist/Chat/index.d.ts +1 -1
  28. package/dist/Chat/index.js +1 -1
  29. package/dist/{Chat-C7WrCOE4.js → Chat-BFox3u9D.js} +1 -1
  30. package/dist/CheckboxInput/index.d.ts +1 -1
  31. package/dist/CheckboxList/index.d.ts +1 -1
  32. package/dist/CheckboxList/index.js +1 -1
  33. package/dist/{CheckboxList-CnCGnkZk.js → CheckboxList-BlPf7vPe.js} +4 -4
  34. package/dist/Citation/index.js +1 -1
  35. package/dist/{Citation-CtwrU33I.js → Citation-BG-vg9ia.js} +1 -1
  36. package/dist/ClickableCard/index.d.ts +1 -1
  37. package/dist/Code/index.d.ts +3 -3
  38. package/dist/Code/index.js +4 -4
  39. package/dist/{Code-BvefYRpx.js → Code-XnPuGxey.js} +1 -1
  40. package/dist/{CodeBlock-BZGzYeoL.js → CodeBlock-B2pnEOJY.js} +145 -15
  41. package/dist/Collapsible/index.d.ts +1 -1
  42. package/dist/CommandPalette/index.js +1 -1
  43. package/dist/{CommandPalette-BNbM9T9y.js → CommandPalette-DKgHzmJk.js} +10 -10
  44. package/dist/ComplexSelector/index.js +1 -1
  45. package/dist/{ComplexSelector-LtbLlrcj.js → ComplexSelector-Dv44FFhN.js} +1 -1
  46. package/dist/ContextMenu/index.d.ts +2 -2
  47. package/dist/ContextMenu/index.js +2 -2
  48. package/dist/{ContextMenu-DVQl0xL5.js → ContextMenu-BeJO5HYx.js} +4 -369
  49. package/dist/DateInput/index.d.ts +1 -1
  50. package/dist/DateInput/index.js +1 -1
  51. package/dist/{DateInput-zm8sNc0t.js → DateInput-D4XFAEMp.js} +3 -3
  52. package/dist/DateRangeInput/index.d.ts +1 -1
  53. package/dist/DateRangeInput/index.js +1 -1
  54. package/dist/{DateRangeInput-DlVFzrf7.js → DateRangeInput-Cp6AZfew.js} +2 -2
  55. package/dist/DateTimeInput/index.d.ts +1 -1
  56. package/dist/DateTimeInput/index.js +1 -1
  57. package/dist/{DateTimeInput-C7Z-p6Yd.js → DateTimeInput-B6MPPp76.js} +3 -3
  58. package/dist/Dialog/index.d.ts +1 -1
  59. package/dist/Divider/index.d.ts +1 -1
  60. package/dist/DropdownMenu/index.d.ts +2 -2
  61. package/dist/DropdownMenu/index.js +3 -3
  62. package/dist/{DropdownMenu-BoZChdev.js → DropdownMenu--lnUeJEG.js} +3 -3
  63. package/dist/{DropdownMenu-u1psFjis.js → DropdownMenu-6E9jFdFe.js} +4 -4
  64. package/dist/{DropdownMenuRadioItem.vue-uVM0FD2f.d.ts → DropdownMenuRadioItem.vue-CXEURBcq.d.ts} +1 -1
  65. package/dist/EmptyState/index.js +1 -1
  66. package/dist/{EmptyState-CUJdTYKV.js → EmptyState-0RWymQUS.js} +2 -2
  67. package/dist/FileInput/index.d.ts +1 -1
  68. package/dist/FileInput/index.js +1 -1
  69. package/dist/{FileInput-QdlZn7qK.js → FileInput-DuNwdbAo.js} +1 -1
  70. package/dist/Grid/index.d.ts +1 -1
  71. package/dist/Heading/index.d.ts +2 -2
  72. package/dist/Heading/index.js +1 -1
  73. package/dist/Heading-B9C3LZlS.js +94 -0
  74. package/dist/Indicator/index.d.ts +2 -2
  75. package/dist/InputGroup/index.d.ts +1 -1
  76. package/dist/Item-DrYJL1TG.js +590 -0
  77. package/dist/Lightbox/index.js +1 -1
  78. package/dist/{Lightbox-BSzfqZ-u.js → Lightbox-Br3o0SyQ.js} +1 -1
  79. package/dist/Link/index.d.ts +3 -2
  80. package/dist/Link/index.js +1 -1
  81. package/dist/Link-DCZ6922-.js +196 -0
  82. package/dist/List/index.d.ts +3 -3
  83. package/dist/List/index.js +2 -2
  84. package/dist/{ListItem-pGxvn6QJ.js → ListItem-CcRHWuEm.js} +8 -2
  85. package/dist/Markdown/index.d.ts +2 -2
  86. package/dist/Markdown/index.js +2 -2
  87. package/dist/{Markdown-B6tSqenv.js → Markdown-Bz0R3kNj.js} +274 -30
  88. package/dist/MetadataList/index.js +1 -1
  89. package/dist/{MetadataList-aN1tRn6W.js → MetadataList-CFaocx6j.js} +1 -1
  90. package/dist/MobileNav/index.js +1 -1
  91. package/dist/{MobileNavToggle-fqcSafkc.js → MobileNavToggle-Dh3uLivq.js} +1 -1
  92. package/dist/MoreMenu/index.d.ts +1 -1
  93. package/dist/MoreMenu/index.js +1 -1
  94. package/dist/{MoreMenu-B3brqdK_.js → MoreMenu-B95nRSe8.js} +2 -2
  95. package/dist/MultiSelector/index.d.ts +1 -1
  96. package/dist/MultiSelector/index.js +1 -1
  97. package/dist/{MultiSelector-BD5PMgez.js → MultiSelector-DuF5TECE.js} +4 -4
  98. package/dist/{NavDisclosure-DbYLDXK0.js → NavDisclosure-C6sPZ89n.js} +4 -1
  99. package/dist/NavHeadingSurface-Cb3x9iDx.js +287 -0
  100. package/dist/NavItem/index.d.ts +1 -1
  101. package/dist/NavMenu/index.d.ts +2 -2
  102. package/dist/NavMenu/index.js +4 -3
  103. package/dist/NavMenu-ClIgMaxE.js +176 -0
  104. package/dist/{NavMenuItem-DrwIMHKO.js → NavMenuItem-E7S8gBh-.js} +1 -1
  105. package/dist/NumberInput/index.d.ts +1 -1
  106. package/dist/NumberInput/index.js +1 -1
  107. package/dist/{NumberInput-CBeU4lEl.js → NumberInput-B4IL3s_8.js} +1 -1
  108. package/dist/Outline/index.js +1 -1
  109. package/dist/{Outline--HVMSB6i.js → Outline-DBUuchi9.js} +1 -1
  110. package/dist/OverflowList/index.d.ts +1 -1
  111. package/dist/OverflowList/index.js +1 -1
  112. package/dist/{OverflowList-FMh7r-r_.js → OverflowList-aDd_oem0.js} +3 -3
  113. package/dist/Pagination/index.d.ts +1 -1
  114. package/dist/Pagination/index.js +1 -1
  115. package/dist/{Pagination-DlIvESjx.js → Pagination-CNe9F6Fl.js} +181 -45
  116. package/dist/Popover/index.d.ts +1 -1
  117. package/dist/PowerSearch/index.d.ts +1 -1
  118. package/dist/PowerSearch/index.js +1 -1
  119. package/dist/{PowerSearch-CMG7Rb69.js → PowerSearch-C6U8Sq1Y.js} +13 -13
  120. package/dist/ProgressBar/index.d.ts +2 -2
  121. package/dist/ProgressBar/index.js +1 -1
  122. package/dist/{ProgressBar-DO9Chic6.js → ProgressBar-DF6WZNCI.js} +45 -6
  123. package/dist/Radio/index.d.ts +1 -1
  124. package/dist/RadioList/index.d.ts +1 -1
  125. package/dist/Resizable/index.js +1 -1
  126. package/dist/{Resizable-CXpvj1TZ.js → ResizeHandle-DYy0e3v9.js} +1 -1
  127. package/dist/ScrollableArea/index.d.ts +1 -1
  128. package/dist/SegmentedControl/index.d.ts +1 -1
  129. package/dist/SelectableCard/index.d.ts +1 -1
  130. package/dist/Selector/index.d.ts +1 -1
  131. package/dist/Selector/index.js +1 -1
  132. package/dist/{Selector-BpPnuWH3.js → Selector-5N-hq2nF.js} +3 -3
  133. package/dist/SideNav/index.d.ts +2 -2
  134. package/dist/SideNav/index.js +1 -1
  135. package/dist/{SideNav-D4TupqgE.js → SideNav-CT9lfspi.js} +225 -229
  136. package/dist/Stack/index.d.ts +1 -1
  137. package/dist/Stepper/index.d.ts +1 -1
  138. package/dist/Stepper/index.js +1 -1
  139. package/dist/{Stepper-H-6-T5Ps.js → Stepper-BqhVCgC-.js} +1 -1
  140. package/dist/Switch/index.d.ts +1 -1
  141. package/dist/TabList/index.d.ts +1 -1
  142. package/dist/Table/index.js +1 -1
  143. package/dist/{Table-nqA_njNz.js → Table-CsdH8fCB.js} +4 -4
  144. package/dist/Text/index.d.ts +3 -3
  145. package/dist/Text/index.js +1 -1
  146. package/dist/Text-DIzZw6FA.js +86 -0
  147. package/dist/TextArea/index.d.ts +1 -1
  148. package/dist/TextInput/index.d.ts +1 -1
  149. package/dist/Theme/index.d.ts +3 -3
  150. package/dist/Theme/index.js +2 -2
  151. package/dist/Theme-CtaUWo4g.js +1246 -0
  152. package/dist/Thumbnail/index.js +1 -1
  153. package/dist/{Thumbnail-CXb3m_Hv.js → Thumbnail-BnQwX1cQ.js} +2 -2
  154. package/dist/{TimeField-B3cndWb0.js → TimeField-Biiuv0hB.js} +1 -1
  155. package/dist/TimeInput/index.d.ts +1 -1
  156. package/dist/TimeInput/index.js +1 -1
  157. package/dist/{TimeInput-BHQ_LKGm.js → TimeInput-C9gptCOK.js} +1 -1
  158. package/dist/Timer/index.d.ts +1 -1
  159. package/dist/Timer/index.js +1 -1
  160. package/dist/{Timer-B7GV6hqd.js → Timer-kxzQx3tp.js} +1 -1
  161. package/dist/Timestamp/index.d.ts +1 -1
  162. package/dist/Timestamp/index.js +1 -1
  163. package/dist/{Timestamp-Cfuxbb3i.js → Timestamp-D7bd_nF3.js} +2 -2
  164. package/dist/ToggleButton/index.d.ts +1 -1
  165. package/dist/Token/index.d.ts +1 -1
  166. package/dist/Token/index.js +1 -1
  167. package/dist/{Token-CdVLH0_H.js → Token-D2GsI_Ei.js} +1 -1
  168. package/dist/Tokenizer/index.js +1 -1
  169. package/dist/{Tokenizer-DlD-S_8-.js → Tokenizer-rwzamZg4.js} +3 -3
  170. package/dist/Toolbar/index.d.ts +1 -1
  171. package/dist/Tooltip/index.d.ts +1 -1
  172. package/dist/Tooltip/index.js +1 -1
  173. package/dist/{Tooltip-mp0NMh_Y.js → Tooltip-C2fh9anJ.js} +23 -8
  174. package/dist/TopNav/index.d.ts +1 -1
  175. package/dist/TopNav/index.js +1 -1
  176. package/dist/{TopNav-DzV874G7.js → TopNav-arWFLTBM.js} +112 -42
  177. package/dist/TreeList/index.js +1 -1
  178. package/dist/{TreeList-DEwvlZRV.js → TreeList-C9xvMpJZ.js} +1 -1
  179. package/dist/Typeahead/index.d.ts +2 -2
  180. package/dist/Typeahead/index.js +3 -2
  181. package/dist/Typeahead-_V11btpv.js +499 -0
  182. package/dist/{TypeaheadMenu-CGvo0Tud.js → TypeaheadMenu-BEObzonz.js} +46 -10
  183. package/dist/composables/index.d.ts +2 -2
  184. package/dist/composables/index.js +4 -4
  185. package/dist/composables-CWw6t-RJ.js +520 -0
  186. package/dist/{context-DmOLCubj.js → context-CPh7kE-a.js} +58 -10
  187. package/dist/{index-BRfR0lhb.d.ts → index-12QYAbiz.d.ts} +1 -1
  188. package/dist/{index-DMQG6kdM.d.ts → index-6yB8BtEu.d.ts} +2 -2
  189. package/dist/{index-f4NGT-e2.d.ts → index-B4OOtNP8.d.ts} +3 -3
  190. package/dist/index-BBtJt5_A.d.ts +26 -0
  191. package/dist/{index-Ch6BbxCP.d.ts → index-BH9PzQ1F.d.ts} +13 -8
  192. package/dist/{index-MPcg1Pm4.d.ts → index-BKr7yvVv.d.ts} +1 -1
  193. package/dist/{index-D_UEJIU5.d.ts → index-BPwD6aBv.d.ts} +1 -1
  194. package/dist/{index-D1Twv_fL.d.ts → index-BcZI402h.d.ts} +4 -4
  195. package/dist/{index-C8wDPDcP.d.ts → index-Bi49IrAJ.d.ts} +50 -8
  196. package/dist/{index-B1x05arQ.d.ts → index-BlOIC_AM.d.ts} +1 -1
  197. package/dist/{index-C5p2NeCr.d.ts → index-Blm197N_.d.ts} +11 -2
  198. package/dist/{index-Bu3oXIIS.d.ts → index-BmmdzwT9.d.ts} +6 -0
  199. package/dist/{index-BMn9ghAX.d.ts → index-Bu0Zd1uw.d.ts} +3 -3
  200. package/dist/{index-Ctu32CLv.d.ts → index-BxhJqiZ7.d.ts} +2 -2
  201. package/dist/{index-CA6RbRWx.d.ts → index-By2mSzUA.d.ts} +1 -1
  202. package/dist/{index-HV6W3xCx.d.ts → index-Byar3h1e.d.ts} +1 -1
  203. package/dist/{index-LIyvJTW3.d.ts → index-C3GaPqvJ.d.ts} +84 -8
  204. package/dist/{index-DAiGhkNZ.d.ts → index-CFIXnk5D.d.ts} +1 -1
  205. package/dist/{index-ViSV0RBx.d.ts → index-CI9kyg74.d.ts} +12 -2
  206. package/dist/{index-C-QpeUlQ.d.ts → index-CNjbOgty.d.ts} +2 -2
  207. package/dist/{index-BB5yVIN-.d.ts → index-CUCcYKxl.d.ts} +3 -3
  208. package/dist/{index-Ca8VIE4l.d.ts → index-CVn0GBdB.d.ts} +1 -1
  209. package/dist/{index-xfkEuGLY.d.ts → index-CZeoAr0a.d.ts} +2 -2
  210. package/dist/{index-C2sfHfBw.d.ts → index-D-ezcKaY.d.ts} +3 -3
  211. package/dist/{index-BcJBLWJ0.d.ts → index-DA52oIdw.d.ts} +2 -2
  212. package/dist/{index-D7-WTV6I.d.ts → index-D_nYxnNv.d.ts} +1 -1
  213. package/dist/{index-Cm_TiLXU.d.ts → index-Dgg0bHVM.d.ts} +7 -3
  214. package/dist/index-DxR1FChm.d.ts +158 -0
  215. package/dist/{index-BTAgQRP0.d.ts → index-EtZgovdH.d.ts} +169 -81
  216. package/dist/{index-B9f1rUEv.d.ts → index-XuAAcYiP.d.ts} +1 -1
  217. package/dist/{index-D0TlUOtG.d.ts → index-YmSe1ujk.d.ts} +76 -3
  218. package/dist/{index-BMrggCw-.d.ts → index-bvr3WHvs.d.ts} +1 -1
  219. package/dist/{index-CDDMDHJM.d.ts → index-c67ca7eJ.d.ts} +1 -1
  220. package/dist/{index-D8o50qOE.d.ts → index-cL3q7O4R.d.ts} +32 -3
  221. package/dist/{index-CGZ2xi3r.d.ts → index-eshFLli0.d.ts} +40 -3
  222. package/dist/{index-DkVEBdWa.d.ts → index-fa72tWIU.d.ts} +2 -2
  223. package/dist/{index-COxy6LEW.d.ts → index-gW0HW02U.d.ts} +1 -1
  224. package/dist/{index-foQMNKZO.d.ts → index-hCpxKePE.d.ts} +49 -3
  225. package/dist/{index-DxsKyAxq.d.ts → index-vizlhXVs.d.ts} +131 -2
  226. package/dist/{index-DfgHJE7H.d.ts → index-z3uLM1O6.d.ts} +153 -24
  227. package/dist/index.d.ts +81 -80
  228. package/dist/index.js +118 -115
  229. package/dist/locale/index.d.ts +2 -2
  230. package/dist/locale/index.js +3 -3
  231. package/dist/locale-sLw5Caia.js +917 -0
  232. package/dist/{searchResultMessage-DN0HeRRB.js → searchResultMessage-CCnq-_ce.js} +1 -1
  233. package/dist/syntaxTheme-CwVEcVDk.d.ts +57 -0
  234. package/dist/{syntaxTheme-ClpWALZX.js → syntaxTheme-R7xnu5x5.js} +24 -3
  235. package/dist/{types-Bt-lSgYX.d.ts → types-D9nP_X-c.d.ts} +14 -1
  236. package/dist/{types-CAZY4Xua.d.ts → types-DGYHIu4I.d.ts} +30 -1
  237. package/dist/types-D_J66aPN.d.ts +85 -0
  238. package/dist/types-gKsEkk2g.d.ts +320 -0
  239. package/dist/{useMenuDrillIn-OaEwjK44.js → useMenuDrillIn-BgjJcY3K.js} +1 -1
  240. package/dist/useMenuPress-DUmEy4TB.js +425 -0
  241. package/dist/{composables-DDI08XFF.js → useResizable-B3ahKLoZ.js} +73 -248
  242. package/dist/useTruncation-B5qXQzAP.js +53 -0
  243. package/locales/SOURCE.json +37 -0
  244. package/locales/af-ZA.json +1482 -0
  245. package/locales/ar-SA.json +1482 -0
  246. package/locales/ca-ES.json +1482 -0
  247. package/locales/cs-CZ.json +1482 -0
  248. package/locales/da-DK.json +1482 -0
  249. package/locales/de-DE.json +1482 -0
  250. package/locales/el-GR.json +1482 -0
  251. package/locales/en.json +1646 -0
  252. package/locales/es-ES.json +1482 -0
  253. package/locales/fi-FI.json +1482 -0
  254. package/locales/fr-FR.json +1482 -0
  255. package/locales/he-IL.json +1482 -0
  256. package/locales/hu-HU.json +1482 -0
  257. package/locales/it-IT.json +1482 -0
  258. package/locales/ja-JP.json +1482 -0
  259. package/locales/ko-KR.json +1482 -0
  260. package/locales/nl-NL.json +1482 -0
  261. package/locales/no-NO.json +1482 -0
  262. package/locales/pl-PL.json +1482 -0
  263. package/locales/pt-BR.json +1482 -0
  264. package/locales/pt-PT.json +1482 -0
  265. package/locales/ro-RO.json +1482 -0
  266. package/locales/ru-RU.json +1482 -0
  267. package/locales/sr-SP.json +1482 -0
  268. package/locales/sv-SE.json +1482 -0
  269. package/locales/tr-TR.json +1482 -0
  270. package/locales/uk-UA.json +1482 -0
  271. package/locales/vi-VN.json +1482 -0
  272. package/locales/zh-CN.json +1482 -0
  273. package/locales/zh-TW.json +1482 -0
  274. package/package.json +3 -1
  275. package/styles/bottom-sheet.css +27 -0
  276. package/styles/code.css +62 -0
  277. package/styles/container-reveal.css +104 -0
  278. package/styles/heading.css +47 -0
  279. package/styles/keyboard-hint.css +28 -0
  280. package/styles/link.css +34 -0
  281. package/styles/list.css +88 -1
  282. package/styles/markdown.css +12 -0
  283. package/styles/pagination.css +30 -0
  284. package/styles/progress-bar.css +49 -0
  285. package/styles/side-nav.css +36 -1
  286. package/styles/text.css +18 -0
  287. package/styles/top-nav.css +145 -6
  288. package/styles/typeahead.css +24 -0
  289. package/styles.css +2 -0
  290. package/dist/Heading-Dugosn6j.js +0 -43
  291. package/dist/Item-C1z6gXn8.js +0 -289
  292. package/dist/Link-DqdQZ37C.js +0 -141
  293. package/dist/Text-BHVghsWo.js +0 -53
  294. package/dist/Theme-CejS9MHm.js +0 -447
  295. package/dist/Typeahead-DQ3tmqYe.js +0 -375
  296. package/dist/index-Bqb_Fyju.d.ts +0 -80
  297. package/dist/index-Dg3ZmwEg.d.ts +0 -75
  298. package/dist/locale-CCwVnyMZ.js +0 -42
  299. package/dist/syntaxTheme-Bcs1YMF7.d.ts +0 -38
  300. package/dist/types-jmqqnkKA.d.ts +0 -163
  301. package/dist/useHotkeys-dABSK1o9.js +0 -80
  302. package/dist/useLongPress-Cyxwa73s.js +0 -60
  303. package/dist/{index-BXkNZF3q.d.ts → index-IdK2g5B4.d.ts} +2 -2
@@ -1,6 +1,6 @@
1
1
  import { n as useButtonTooltip } from "./Button-DrqeomlE.js";
2
2
  import { t as _sfc_main$1 } from "./ButtonTooltip-nWWrth8j.js";
3
- import { a as useAstryxMessages } from "./context-DmOLCubj.js";
3
+ import { o as useAstryxMessages } from "./context-CPh7kE-a.js";
4
4
  import { t as _sfc_main$2 } from "./Icon-bteSId7T.js";
5
5
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createVNode, defineComponent, openBlock, unref, useId, useTemplateRef, withModifiers } from "vue";
6
6
  //#region src/Field/StatusGlyph.vue
@@ -0,0 +1,57 @@
1
+ //#region src/Code/syntaxTheme.d.ts
2
+ declare const SYNTAX_TOKEN_KEYS: readonly ["keyword", "string", "comment", "number", "function", "type", "variable", "operator", "constant", "tag", "attribute", "property", "punctuation", "background"];
3
+ type SyntaxTokenKey = (typeof SYNTAX_TOKEN_KEYS)[number];
4
+ /**
5
+ * Diff row slots. Optional on a syntax theme. The names continue
6
+ * `--astryx-code-syntax-*`: `added` is `--astryx-code-syntax-added`.
7
+ * A theme that omits them keeps the page theme's row tints, and takes its
8
+ * own punctuation color for the markers and no extra header paint.
9
+ */
10
+ declare const DIFF_SYNTAX_TOKEN_KEYS: readonly ["added", "removed", "diff-header", "added-marker", "removed-marker"];
11
+ type SyntaxDiffTokenKey = (typeof DIFF_SYNTAX_TOKEN_KEYS)[number];
12
+ interface SyntaxThemeTokens {
13
+ 'keyword': string;
14
+ 'string': string;
15
+ 'comment': string;
16
+ 'number': string;
17
+ 'function': string;
18
+ 'type': string;
19
+ 'variable': string;
20
+ 'operator': string;
21
+ 'constant': string;
22
+ 'tag': string;
23
+ 'attribute': string;
24
+ 'property': string;
25
+ 'punctuation': string;
26
+ 'background': string;
27
+ /** Whole-row tint behind an added line. */
28
+ 'added'?: string;
29
+ /** Whole-row tint behind a removed line. */
30
+ 'removed'?: string;
31
+ /** Whole-row paint behind a hunk or file header. */
32
+ 'diff-header'?: string;
33
+ /** Line number and `+` glyph on an added row. */
34
+ 'added-marker'?: string;
35
+ /** Line number and `-` glyph on a removed row. */
36
+ 'removed-marker'?: string;
37
+ }
38
+ /** A string is used as written. A tuple is the light stop, then the dark stop. */
39
+ type SyntaxTokenValue = string | readonly [string, string];
40
+ interface SyntaxThemeDefinition {
41
+ name: string;
42
+ tokens: SyntaxThemeTokens;
43
+ }
44
+ interface SyntaxThemeInput {
45
+ name: string;
46
+ tokens: { [K in SyntaxTokenKey]: SyntaxTokenValue; } & { [K in SyntaxDiffTokenKey]?: SyntaxTokenValue; };
47
+ }
48
+ /**
49
+ * Create a syntax theme. The 14 color tokens are required.
50
+ * Diff row slots are optional and use the same `--astryx-code-syntax-*` names.
51
+ * `[light, dark]` tuples are stored as `light-dark()`.
52
+ */
53
+ declare function defineSyntaxTheme(theme: SyntaxThemeInput): SyntaxThemeDefinition;
54
+ /** GitHub Dark (GitHub Primer team), MIT. */
55
+ declare const githubDark: SyntaxThemeDefinition;
56
+ //#endregion
57
+ export { SyntaxThemeInput as a, SyntaxTokenValue as c, SyntaxThemeDefinition as i, defineSyntaxTheme as l, SYNTAX_TOKEN_KEYS as n, SyntaxThemeTokens as o, SyntaxDiffTokenKey as r, SyntaxTokenKey as s, DIFF_SYNTAX_TOKEN_KEYS as t, githubDark as u };
@@ -15,12 +15,26 @@ const SYNTAX_TOKEN_KEYS = [
15
15
  "punctuation",
16
16
  "background"
17
17
  ];
18
+ /**
19
+ * Diff row slots. Optional on a syntax theme. The names continue
20
+ * `--astryx-code-syntax-*`: `added` is `--astryx-code-syntax-added`.
21
+ * A theme that omits them keeps the page theme's row tints, and takes its
22
+ * own punctuation color for the markers and no extra header paint.
23
+ */
24
+ const DIFF_SYNTAX_TOKEN_KEYS = [
25
+ "added",
26
+ "removed",
27
+ "diff-header",
28
+ "added-marker",
29
+ "removed-marker"
30
+ ];
18
31
  function resolveSyntaxToken(value) {
19
32
  if (typeof value === "string") return value;
20
33
  return `light-dark(${value[0]}, ${value[1]})`;
21
34
  }
22
35
  /**
23
- * Create a syntax theme. All 14 tokens are required.
36
+ * Create a syntax theme. The 14 color tokens are required.
37
+ * Diff row slots are optional and use the same `--astryx-code-syntax-*` names.
24
38
  * `[light, dark]` tuples are stored as `light-dark()`.
25
39
  */
26
40
  function defineSyntaxTheme(theme) {
@@ -31,6 +45,10 @@ function defineSyntaxTheme(theme) {
31
45
  const value = theme.tokens[key];
32
46
  if (value != null) tokens[key] = resolveSyntaxToken(value);
33
47
  }
48
+ for (const key of DIFF_SYNTAX_TOKEN_KEYS) {
49
+ const value = theme.tokens[key];
50
+ if (value != null) tokens[key] = resolveSyntaxToken(value);
51
+ }
34
52
  return {
35
53
  name: theme.name,
36
54
  tokens
@@ -66,10 +84,13 @@ function syntaxThemeStyle(theme) {
66
84
  const blue = value & 255;
67
85
  if ((red * 299 + green * 587 + blue * 114) / 1e3 < 140) style["--astryx-code-block-border"] = "rgb(255 255 255 / 12%)";
68
86
  for (const [key, color] of Object.entries(theme.tokens)) {
69
- if (key === "background") continue;
87
+ if (key === "background" || color == null) continue;
70
88
  style[`--astryx-code-syntax-${key}`] = color;
71
89
  }
90
+ if (theme.tokens["added-marker"] == null) style["--astryx-code-syntax-added-marker"] = "var(--astryx-code-syntax-punctuation)";
91
+ if (theme.tokens["removed-marker"] == null) style["--astryx-code-syntax-removed-marker"] = "var(--astryx-code-syntax-punctuation)";
92
+ if (theme.tokens["diff-header"] == null) style["--astryx-code-syntax-diff-header"] = "transparent";
72
93
  return style;
73
94
  }
74
95
  //#endregion
75
- export { syntaxThemeStyle as i, defineSyntaxTheme as n, githubDark as r, SYNTAX_TOKEN_KEYS as t };
96
+ export { syntaxThemeStyle as a, githubDark as i, SYNTAX_TOKEN_KEYS as n, defineSyntaxTheme as r, DIFF_SYNTAX_TOKEN_KEYS as t };
@@ -7,6 +7,8 @@ type TextWrap = 'wrap' | 'nowrap' | 'balance' | 'pretty';
7
7
  type TextWordBreak = 'normal' | 'break-word' | 'break-all';
8
8
  type TextDisplay = 'block' | 'inline';
9
9
  type TextAs = 'span' | 'p' | 'div' | 'label';
10
+ type TextJustify = 'start' | 'center' | 'end';
11
+ type TextTruncateTooltip = boolean | 'above' | 'below' | 'start' | 'end';
10
12
  interface TextProps {
11
13
  /**
12
14
  * Semantic text type. Determines size, weight, and line-height.
@@ -54,12 +56,23 @@ interface TextProps {
54
56
  * @default 'span'
55
57
  */
56
58
  as?: TextAs;
59
+ /**
60
+ * Text alignment. `start` and `end` follow the writing direction.
61
+ * @default 'start'
62
+ */
63
+ justify?: TextJustify;
57
64
  /**
58
65
  * Maximum lines before truncation. 0 means no truncation.
59
66
  * A positive value forces block layout so the ellipsis has a width.
60
67
  * @default 0
61
68
  */
62
69
  maxLines?: number;
70
+ /**
71
+ * 截断之后要不要把全文放进提示。`true` 出现在上方,方位字符串指定位置,`false` 关掉。
72
+ * 没被截断时不会弹出。
73
+ * @default true
74
+ */
75
+ hasTruncateTooltip?: TextTruncateTooltip;
63
76
  }
64
77
  //#endregion
65
- export { TextSize as a, TextWordBreak as c, TextProps as i, TextWrap as l, TextColor as n, TextType as o, TextDisplay as r, TextWeight as s, TextAs as t };
78
+ export { TextProps as a, TextType as c, TextWrap as d, TextJustify as i, TextWeight as l, TextColor as n, TextSize as o, TextDisplay as r, TextTruncateTooltip as s, TextAs as t, TextWordBreak as u };
@@ -1,5 +1,24 @@
1
1
  import { Component, MaybeRefOrGetter, VNodeChild } from "vue";
2
2
  //#region src/List/types.d.ts
3
+ /** 滑动露出的一侧。`leading` 是往行内末尾拖,`trailing` 是往行内开头拖。 */
4
+ type ItemSwipeSide = 'leading' | 'trailing';
5
+ /** `reveal` 松手后停开;`commit` 越过阈值就滑出并触发最外侧,一侧只适合一个操作。 */
6
+ type ItemSwipeBehavior = 'reveal' | 'commit';
7
+ /** 横滑露出的一个操作。数组里越靠后越靠外。 */
8
+ interface ItemSwipeAction {
9
+ id?: string;
10
+ label: string;
11
+ icon?: Component;
12
+ onActivate: () => void;
13
+ isDisabled?: boolean;
14
+ variant?: 'neutral' | 'accent' | 'destructive';
15
+ /** 触发后行停在滑出的位置,不再弹回。行本身不会被删掉。 */
16
+ hasRemoval?: boolean;
17
+ }
18
+ interface ItemSwipeActions {
19
+ leading?: ItemSwipeAction[];
20
+ trailing?: ItemSwipeAction[];
21
+ }
3
22
  /**
4
23
  * Spacing density for list rows.
5
24
  *
@@ -124,6 +143,16 @@ interface ListItemProps {
124
143
  * @default false
125
144
  */
126
145
  isSelected?: boolean;
146
+ /**
147
+ * 触摸横滑露出的操作。鼠标不会开始这次拖动。
148
+ * 每个操作还要在行自己的内容里能点到,否则键盘和鼠标够不着。
149
+ */
150
+ swipeActions?: ItemSwipeActions;
151
+ /**
152
+ * 松手之后怎么收场。
153
+ * @default 'reveal'
154
+ */
155
+ swipeBehavior?: ItemSwipeBehavior;
127
156
  }
128
157
  interface ListItemSlots {
129
158
  /** Leading content before the label: an icon, an avatar, a checkbox. */
@@ -178,4 +207,4 @@ interface ItemSlots extends ListItemSlots {
178
207
  marker?: () => VNodeChild;
179
208
  }
180
209
  //#endregion
181
- export { ItemLayout as a, ItemTarget as c, ListEdgeCompensation as d, ListItemProps as f, ListSlots as g, ListProps as h, ItemLabel as i, ItemText as l, ListMarkerStyle as m, ItemDensity as n, ItemProps as o, ListItemSlots as p, ItemElement as r, ItemSlots as s, ItemAlign as t, ListDensity as u };
210
+ export { ListItemSlots as _, ItemLayout as a, ListSlots as b, ItemSwipeAction as c, ItemSwipeSide as d, ItemTarget as f, ListItemProps as g, ListEdgeCompensation as h, ItemLabel as i, ItemSwipeActions as l, ListDensity as m, ItemDensity as n, ItemProps as o, ItemText as p, ItemElement as r, ItemSlots as s, ItemAlign as t, ItemSwipeBehavior as u, ListMarkerStyle as v, ListProps as y };
@@ -0,0 +1,85 @@
1
+ import { l as TextWeight, o as TextSize } from "./types-D9nP_X-c.js";
2
+ import { Component } from "vue";
3
+ //#region src/Link/types.d.ts
4
+ type LinkColor = 'primary' | 'secondary' | 'accent' | 'inherit';
5
+ type LinkSize = TextSize;
6
+ type LinkWeight = TextWeight;
7
+ /** Custom root used instead of `<a>` when `href` is set. Pass `RouterLink` or another component that accepts `href` and `to`. */
8
+ type LinkRoot = string | Component;
9
+ interface LinkProps {
10
+ /**
11
+ * Custom root used instead of `<a>` when `href` is set and the link is enabled.
12
+ * The component receives `href` and `to`. Disabled links stay a plain anchor.
13
+ */
14
+ as?: LinkRoot;
15
+ /**
16
+ * Accessible name. Set this when the visible content is not the name,
17
+ * for example an icon-only link. It replaces the link text for assistive technology.
18
+ */
19
+ label?: string;
20
+ /**
21
+ * Link destination URL.
22
+ */
23
+ href?: string;
24
+ /**
25
+ * Whether the link opens in a new tab and shows an external indicator.
26
+ * @default false
27
+ */
28
+ isExternalLink?: boolean;
29
+ /**
30
+ * Screen-reader text after an external link. Defaults to the current locale.
31
+ */
32
+ newTabLabel?: string;
33
+ /**
34
+ * Whether the link always shows an underline.
35
+ * @default false
36
+ */
37
+ hasUnderline?: boolean;
38
+ /**
39
+ * Text color.
40
+ * @default 'accent'
41
+ */
42
+ color?: LinkColor;
43
+ /**
44
+ * Whether the link is disabled.
45
+ * @default false
46
+ */
47
+ isDisabled?: boolean;
48
+ /**
49
+ * HTML target attribute.
50
+ */
51
+ target?: string;
52
+ /**
53
+ * HTML rel attribute.
54
+ */
55
+ rel?: string;
56
+ /**
57
+ * Causes the browser to download the linked URL.
58
+ */
59
+ download?: string | boolean;
60
+ /**
61
+ * Tooltip text shown on hover and keyboard focus.
62
+ */
63
+ tooltip?: string;
64
+ /**
65
+ * Whether the link stands alone, rather than sitting inside body text.
66
+ * Applies body font size and line height.
67
+ * @default false
68
+ */
69
+ isStandalone?: boolean;
70
+ /**
71
+ * Font size. Uses the same steps as Text.
72
+ */
73
+ size?: LinkSize;
74
+ /**
75
+ * Font weight. `normal` is the same as `regular`.
76
+ */
77
+ weight?: LinkWeight;
78
+ /**
79
+ * Maximum lines before the label truncates. `0` does not truncate.
80
+ * @default 0
81
+ */
82
+ maxLines?: number;
83
+ }
84
+ //#endregion
85
+ export { LinkWeight as a, LinkSize as i, LinkProps as n, LinkRoot as r, LinkColor as t };
@@ -0,0 +1,320 @@
1
+ import { i as SyntaxThemeDefinition } from "./syntaxTheme-CwVEcVDk.js";
2
+ import { t as SemanticIconMap } from "./semantic-CKH9XVqa.js";
3
+ import { Component } from "vue";
4
+ //#region src/Indicator/types.d.ts
5
+ /**
6
+ * Each family owns its own states.
7
+ *
8
+ * A radio is only chosen or not. A checkbox can also be partial. Keeping the
9
+ * families apart means a radio graphic is never asked to draw a mixed state.
10
+ */
11
+ interface IndicatorFamilyMap {
12
+ singleSelection: 'unchecked' | 'checked';
13
+ multiSelection: 'unchecked' | 'checked' | 'indeterminate';
14
+ }
15
+ type IndicatorFamily = keyof IndicatorFamilyMap & string;
16
+ type IndicatorState<F extends IndicatorFamily = IndicatorFamily> = IndicatorFamilyMap[F];
17
+ /** Matches the control sizes of the inputs that draw these graphics. */
18
+ type IndicatorSize = 'sm' | 'md';
19
+ /**
20
+ * Which edge of a row the mark sits on.
21
+ *
22
+ * Logical, not physical: start is the left edge in left-to-right text.
23
+ * The row decides this. The graphic itself has no position.
24
+ */
25
+ type IndicatorPosition = 'start' | 'end';
26
+ /**
27
+ * Props every indicator accepts.
28
+ *
29
+ * The graphic is decorative. The control that draws it keeps the input, the
30
+ * role, the accessible name, and the keyboard. Hover and focus reach the
31
+ * graphic through the `astryx-indicator-scope` class on that control, not
32
+ * through a prop.
33
+ */
34
+ interface IndicatorProps<F extends IndicatorFamily = IndicatorFamily> {
35
+ /** Which state to draw. The family decides which states exist. */
36
+ state: IndicatorState<F>;
37
+ /**
38
+ * Control size. `sm` is 20px and `md` is 24px.
39
+ * @default 'md'
40
+ */
41
+ size?: IndicatorSize;
42
+ /**
43
+ * Whether the owning control is disabled. Visual only.
44
+ * @default false
45
+ */
46
+ isDisabled?: boolean;
47
+ }
48
+ /** A component that can stand in for one indicator name. */
49
+ type IndicatorComponent<F extends IndicatorFamily = IndicatorFamily> = Component<IndicatorProps<F>>;
50
+ /**
51
+ * Names a theme can replace.
52
+ *
53
+ * Packages can add names by augmenting this interface. Core has no default
54
+ * for a name it does not know, so `getIndicator` returns undefined for those
55
+ * and the caller supplies the fallback.
56
+ */
57
+ interface IndicatorMap {
58
+ /** The mark on a chosen option. A check by default, and nothing when unchosen. */
59
+ check: 'singleSelection';
60
+ /** The circle of a radio. */
61
+ radio: 'singleSelection';
62
+ /** The box of a checkbox, including the partial state. */
63
+ checkbox: 'multiSelection';
64
+ }
65
+ type IndicatorName = keyof IndicatorMap & string;
66
+ type CoreIndicatorName = 'check' | 'checkbox' | 'radio';
67
+ /**
68
+ * Theme overrides, keyed by indicator name.
69
+ *
70
+ * One entry replaces that graphic everywhere it is drawn. Mapping `check` to
71
+ * the radio graphic turns every single-selection mark into a radio.
72
+ */
73
+ interface IndicatorRegistry {
74
+ check?: IndicatorComponent<'singleSelection'>;
75
+ radio?: IndicatorComponent<'singleSelection'>;
76
+ checkbox?: IndicatorComponent<'multiSelection'>;
77
+ [name: string]: Component | undefined;
78
+ }
79
+ //#endregion
80
+ //#region src/Theme/expandColorScale.d.ts
81
+ /**
82
+ * Palette seed for `defineTheme({ color })`.
83
+ *
84
+ * `accent` is one hex, or a light stop then a dark stop. Omit it to recolor
85
+ * only the neutrals. `neutralStyle` is how much of the seed hue stays in
86
+ * those neutrals. `high` contrast pulls text and borders further apart.
87
+ */
88
+ interface ColorScaleConfig {
89
+ accent?: string | readonly [light: string, dark: string];
90
+ /** @default 'cool' */
91
+ neutralStyle?: 'warm' | 'cool' | 'neutral';
92
+ /** @default 'standard' */
93
+ contrast?: 'standard' | 'high';
94
+ }
95
+ type ColorScaleTokens = Record<string, string>;
96
+ /**
97
+ * Semantic color tokens derived from an accent.
98
+ *
99
+ * Status colors, chart colors, and on-dark / on-light stay out of this map.
100
+ * `--color-accent-muted`, `--color-text-accent`, and `--color-icon-accent`
101
+ * point at `var(--color-accent)`. `--color-on-accent` is baked from the seed,
102
+ * because the contrast pick cannot be expressed as a CSS reference.
103
+ *
104
+ * Names are the upstream names. `defineTheme()` adds the `--astryx-` prefix.
105
+ */
106
+ declare function expandColorScale(config?: ColorScaleConfig): ColorScaleTokens;
107
+ //#endregion
108
+ //#region src/Theme/expandMotionScale.d.ts
109
+ /**
110
+ * Duration scale. `min` is `base × ratio`, `max` is `base / ratio`,
111
+ * both rounded to 5ms. `slow` is optional. `easing` sets `--ease-standard`.
112
+ */
113
+ interface MotionScaleConfig {
114
+ /** Micro-interactions, in ms. */
115
+ fast: number;
116
+ /** Enter and exit, in ms. */
117
+ medium: number;
118
+ /** Continuous motion, in ms. */
119
+ slow?: number;
120
+ /**
121
+ * Neighbor ratio. Typical range is 0.65–0.85.
122
+ * Neutral uses 0.75.
123
+ */
124
+ ratio: number;
125
+ /** Optional `--ease-standard` curve. */
126
+ easing?: string;
127
+ }
128
+ type MotionScaleTokens = Record<string, string>;
129
+ /** `--duration-*` and an optional `--ease-standard`. */
130
+ declare function expandMotionScale(config: MotionScaleConfig): MotionScaleTokens;
131
+ //#endregion
132
+ //#region src/Theme/expandRadiusScale.d.ts
133
+ /**
134
+ * Radius scale. `none` stays 0 and `full` stays 9999px.
135
+ * The steps are inner ×1, element ×2, container ×3, page and chat ×7.
136
+ */
137
+ interface RadiusScaleConfig {
138
+ /** Base unit in px. */
139
+ base: number;
140
+ /** Multiplier for every step except none and full. 0 makes those corners square. */
141
+ multiplier: number;
142
+ }
143
+ type RadiusScaleTokens = Record<string, string>;
144
+ /** `--radius-*` tokens. Names are unprefixed; `defineTheme()` adds `--astryx-`. */
145
+ declare function expandRadiusScale(config: RadiusScaleConfig): RadiusScaleTokens;
146
+ //#endregion
147
+ //#region src/Theme/expandTypeScale.d.ts
148
+ /** Per-level heading weights. Values are CSS font-weight values. */
149
+ type HeadingWeightOverrides = Partial<Record<1 | 2 | 3 | 4 | 5 | 6, string>>;
150
+ /** Per-role text weights. Extra keys are kept for a theme's own roles. */
151
+ type TextWeightOverrides = Partial<Record<string, string>>;
152
+ /**
153
+ * Geometric type scale. `base` is the body size in px. `ratio` is the step.
154
+ * Size at a step is `round(base × ratio^step)`.
155
+ */
156
+ interface TypeScaleConfig {
157
+ base: number;
158
+ ratio: number;
159
+ weights?: {
160
+ heading?: HeadingWeightOverrides;
161
+ text?: TextWeightOverrides;
162
+ };
163
+ }
164
+ type TypeScaleTokens = Record<string, string>;
165
+ /**
166
+ * Raw `--font-size-*` steps, then heading and text roles.
167
+ *
168
+ * Sizes on the roles point at the raw steps with `var()`. Line heights are
169
+ * unitless ratios snapped onto a 4px grid. Weights point at `--font-weight-*`.
170
+ */
171
+ declare function expandTypeScale(config: TypeScaleConfig): TypeScaleTokens;
172
+ //#endregion
173
+ //#region src/Theme/types.d.ts
174
+ /** Color mode for a theme subtree. `system` follows the page and the OS. */
175
+ type ThemeMode = 'light' | 'dark' | 'system';
176
+ /**
177
+ * A token value.
178
+ *
179
+ * A string is used as written. A two-item tuple is the light stop, then the
180
+ * dark stop, and becomes `light-dark()`.
181
+ */
182
+ type ThemeTokenValue = string | readonly [string, string];
183
+ /** CSS custom properties for a theme. Keys may omit the `--astryx-` prefix. */
184
+ type ThemeTokens = Record<string, ThemeTokenValue>;
185
+ /** Token overrides for one inverted surface. */
186
+ interface ThemeSurfaceInput {
187
+ tokens?: ThemeTokens;
188
+ }
189
+ /**
190
+ * CSS declarations for one component state.
191
+ *
192
+ * A key that starts with `:` is a pseudo-class, for example `:hover`.
193
+ * `:hover` is the enabled control: disabled and `aria-disabled` elements skip it.
194
+ */
195
+ type StyleOverrides = Record<string, string | Record<string, string>>;
196
+ /**
197
+ * Per-component style overrides.
198
+ *
199
+ * `base` matches the component root. `variant:secondary` matches that variant.
200
+ * `variant:destructive+size:sm` matches both at once.
201
+ * Component names are the public names, such as `button` or `radio-indicator`.
202
+ */
203
+ type ComponentStyleMap = Record<string, Record<string, StyleOverrides>>;
204
+ /** One font role. Heading inherits body family and fallbacks when it omits them. */
205
+ interface TypographyRole {
206
+ /** Primary family name. A name with spaces is quoted. */
207
+ family?: string;
208
+ /** Fallback stack, already written as CSS. */
209
+ fallbacks?: string;
210
+ /** Default weight name (`semibold`) or a CSS font-weight value. */
211
+ weight?: string;
212
+ /** Heading levels 1–6. Ignored on body and code. */
213
+ weights?: Partial<Record<1 | 2 | 3 | 4 | 5 | 6, string>>;
214
+ }
215
+ /**
216
+ * Fonts and the type scale.
217
+ *
218
+ * Loading the family is the caller's job. This only writes the tokens.
219
+ */
220
+ interface TypographyConfig {
221
+ scale?: TypeScaleConfig;
222
+ body?: TypographyRole;
223
+ /** Family and fallbacks fall back to `body` when omitted. */
224
+ heading?: TypographyRole;
225
+ code?: TypographyRole;
226
+ }
227
+ interface DefineThemeInput {
228
+ /** Theme name. Used as `data-astryx-theme`. */
229
+ name: string;
230
+ /** Semantic token overrides. These win over generated values, token by token. */
231
+ tokens?: ThemeTokens;
232
+ /**
233
+ * Accent palette. Neutrals, surfaces, text, icons, and borders come from the
234
+ * seed. Explicit `tokens` still win.
235
+ */
236
+ color?: ColorScaleConfig;
237
+ /** Fonts and a type scale from `base` and `ratio`. */
238
+ typography?: TypographyConfig;
239
+ /** Radius steps from a base pixel size and a multiplier. */
240
+ radius?: RadiusScaleConfig;
241
+ /** Duration steps from fast, medium, slow, and a ratio. */
242
+ motion?: MotionScaleConfig;
243
+ /**
244
+ * Component style overrides, scoped to this theme name.
245
+ * `Theme` injects the compiled sheet. `css` on the result is that sheet.
246
+ */
247
+ components?: ComponentStyleMap;
248
+ /** Another theme to start from. This theme's own values win. */
249
+ extends?: ThemeDefinition;
250
+ /** Syntax colors for code in this subtree, unless a SyntaxTheme is closer. */
251
+ syntax?: SyntaxThemeDefinition;
252
+ /** Extra tokens for content on a dark surface. */
253
+ onDark?: ThemeSurfaceInput;
254
+ /** Extra tokens for content on a light surface. */
255
+ onLight?: ThemeSurfaceInput;
256
+ /**
257
+ * Semantic icon name to Iconify id.
258
+ *
259
+ * Entries replace the built-in map by name and merge with the theme this
260
+ * one extends. A name that is not listed keeps the built-in id.
261
+ */
262
+ icons?: SemanticIconMap;
263
+ /**
264
+ * Indicator graphics, replaced by name.
265
+ *
266
+ * One entry reaches every control that draws that indicator. Entries merge
267
+ * with the theme this one extends.
268
+ */
269
+ indicators?: IndicatorRegistry;
270
+ }
271
+ interface ThemeDefinition {
272
+ name: string;
273
+ /** Token values already written as CSS. */
274
+ tokens: Readonly<Record<string, string>>;
275
+ /** Extra tokens applied by MediaTheme when the surface is dark. */
276
+ onDark: Readonly<Record<string, string>>;
277
+ /** Extra tokens applied by MediaTheme when the surface is light. */
278
+ onLight: Readonly<Record<string, string>>;
279
+ syntax?: SyntaxThemeDefinition;
280
+ /** Semantic icon overrides. Absent when this theme does not set any. */
281
+ icons?: SemanticIconMap;
282
+ /** Indicator overrides. Absent when this theme does not set any. */
283
+ indicators?: IndicatorRegistry;
284
+ /**
285
+ * Merged component style map. Present when this theme or its base sets one.
286
+ * A child theme starts from this map.
287
+ */
288
+ components?: ComponentStyleMap;
289
+ /**
290
+ * Compiled component rules, scoped to `[data-astryx-theme="<name>"]`
291
+ * and placed in the `astryx.overrides` layer.
292
+ */
293
+ css?: string;
294
+ readonly __astryxTheme: true;
295
+ }
296
+ interface ThemeProps {
297
+ /** Theme from `defineTheme()`. */
298
+ theme: ThemeDefinition;
299
+ /**
300
+ * Color mode for this subtree.
301
+ * @default 'system'
302
+ */
303
+ mode?: ThemeMode;
304
+ }
305
+ /** Surface luminance, `auto` to measure it, or `off` to leave the page theme. */
306
+ type MediaThemeMode = 'dark' | 'light' | 'auto' | 'off';
307
+ interface MediaThemeProps {
308
+ /**
309
+ * Which surface the children sit on.
310
+ * `auto` measures the parent. `off` keeps the surrounding theme.
311
+ */
312
+ mode: MediaThemeMode;
313
+ /**
314
+ * Side used by `auto` before the surface can be measured, and when it cannot.
315
+ * @default 'dark'
316
+ */
317
+ fallback?: 'dark' | 'light';
318
+ }
319
+ //#endregion
320
+ export { IndicatorRegistry as A, IndicatorComponent as C, IndicatorName as D, IndicatorMap as E, IndicatorState as M, IndicatorPosition as O, CoreIndicatorName as S, IndicatorFamilyMap as T, expandRadiusScale as _, StyleOverrides as a, ColorScaleConfig as b, ThemeProps as c, ThemeTokens as d, TypographyConfig as f, RadiusScaleConfig as g, expandTypeScale as h, MediaThemeProps as i, IndicatorSize as j, IndicatorProps as k, ThemeSurfaceInput as l, TypeScaleConfig as m, DefineThemeInput as n, ThemeDefinition as o, TypographyRole as p, MediaThemeMode as r, ThemeMode as s, ComponentStyleMap as t, ThemeTokenValue as u, MotionScaleConfig as v, IndicatorFamily as w, expandColorScale as x, expandMotionScale as y };
@@ -1,5 +1,5 @@
1
1
  import { t as _sfc_main$4 } from "./Icon-bteSId7T.js";
2
- import { t as _sfc_main$5 } from "./Item-C1z6gXn8.js";
2
+ import { t as _sfc_main$5 } from "./Item-DrYJL1TG.js";
3
3
  import { t as _sfc_main$6 } from "./CheckboxIndicator-D37cm2Rh.js";
4
4
  import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createSlots, createTextVNode, createVNode, defineComponent, inject, mergeModels, openBlock, provide, ref, renderSlot, toDisplayString, unref, useModel, useSlots, watch, withCtx } from "vue";
5
5
  import "../styles/dropdown-menu.css";