@womp/kookie-ui 0.6.2 → 0.7.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 (775) hide show
  1. package/components.css +195 -577
  2. package/dist/cjs/components/_internal/base-button.js +1 -1
  3. package/dist/cjs/components/_internal/base-button.js.map +4 -4
  4. package/dist/cjs/components/_internal/base-button.props.d.ts +2 -7
  5. package/dist/cjs/components/_internal/base-button.props.d.ts.map +1 -1
  6. package/dist/cjs/components/_internal/base-button.props.js +1 -1
  7. package/dist/cjs/components/_internal/base-button.props.js.map +4 -4
  8. package/dist/cjs/components/_internal/base-checkbox.props.d.ts +0 -5
  9. package/dist/cjs/components/_internal/base-checkbox.props.d.ts.map +1 -1
  10. package/dist/cjs/components/_internal/base-checkbox.props.js +1 -1
  11. package/dist/cjs/components/_internal/base-checkbox.props.js.map +4 -4
  12. package/dist/cjs/components/_internal/base-menu.props.d.ts +0 -10
  13. package/dist/cjs/components/_internal/base-menu.props.d.ts.map +1 -1
  14. package/dist/cjs/components/_internal/base-menu.props.js +1 -1
  15. package/dist/cjs/components/_internal/base-menu.props.js.map +4 -4
  16. package/dist/cjs/components/_internal/base-radio.props.d.ts +0 -5
  17. package/dist/cjs/components/_internal/base-radio.props.d.ts.map +1 -1
  18. package/dist/cjs/components/_internal/base-radio.props.js +1 -1
  19. package/dist/cjs/components/_internal/base-radio.props.js.map +4 -4
  20. package/dist/cjs/components/_internal/base-tab-list.props.d.ts +0 -5
  21. package/dist/cjs/components/_internal/base-tab-list.props.d.ts.map +1 -1
  22. package/dist/cjs/components/_internal/base-tab-list.props.js +1 -1
  23. package/dist/cjs/components/_internal/base-tab-list.props.js.map +4 -4
  24. package/dist/cjs/components/_internal/menu-context.js.map +1 -1
  25. package/dist/cjs/components/_internal/shell-bottom.js +1 -1
  26. package/dist/cjs/components/_internal/shell-bottom.js.map +4 -4
  27. package/dist/cjs/components/_internal/shell-inspector.js +1 -1
  28. package/dist/cjs/components/_internal/shell-inspector.js.map +4 -4
  29. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  30. package/dist/cjs/components/_internal/shell-sidebar.js.map +4 -4
  31. package/dist/cjs/components/accordion.js +1 -1
  32. package/dist/cjs/components/accordion.js.map +4 -4
  33. package/dist/cjs/components/accordion.props.d.ts +0 -6
  34. package/dist/cjs/components/accordion.props.d.ts.map +1 -1
  35. package/dist/cjs/components/accordion.props.js +1 -1
  36. package/dist/cjs/components/accordion.props.js.map +4 -4
  37. package/dist/cjs/components/alert-dialog.js +1 -1
  38. package/dist/cjs/components/alert-dialog.js.map +4 -4
  39. package/dist/cjs/components/avatar.js +1 -1
  40. package/dist/cjs/components/avatar.js.map +4 -4
  41. package/dist/cjs/components/avatar.props.d.ts +0 -5
  42. package/dist/cjs/components/avatar.props.d.ts.map +1 -1
  43. package/dist/cjs/components/avatar.props.js +1 -1
  44. package/dist/cjs/components/avatar.props.js.map +4 -4
  45. package/dist/cjs/components/badge.js +1 -1
  46. package/dist/cjs/components/badge.js.map +4 -4
  47. package/dist/cjs/components/badge.props.d.ts +0 -5
  48. package/dist/cjs/components/badge.props.d.ts.map +1 -1
  49. package/dist/cjs/components/badge.props.js +1 -1
  50. package/dist/cjs/components/badge.props.js.map +4 -4
  51. package/dist/cjs/components/blockquote.js +1 -1
  52. package/dist/cjs/components/blockquote.js.map +4 -4
  53. package/dist/cjs/components/blockquote.props.d.ts +3 -2
  54. package/dist/cjs/components/blockquote.props.d.ts.map +1 -1
  55. package/dist/cjs/components/blockquote.props.js +1 -1
  56. package/dist/cjs/components/blockquote.props.js.map +4 -4
  57. package/dist/cjs/components/button.js +1 -1
  58. package/dist/cjs/components/button.js.map +4 -4
  59. package/dist/cjs/components/button.props.js +1 -1
  60. package/dist/cjs/components/button.props.js.map +4 -4
  61. package/dist/cjs/components/callout.js +1 -1
  62. package/dist/cjs/components/callout.js.map +4 -4
  63. package/dist/cjs/components/callout.props.d.ts +0 -5
  64. package/dist/cjs/components/callout.props.d.ts.map +1 -1
  65. package/dist/cjs/components/callout.props.js +1 -1
  66. package/dist/cjs/components/callout.props.js.map +4 -4
  67. package/dist/cjs/components/chatbar.d.ts.map +1 -1
  68. package/dist/cjs/components/chatbar.js +2 -2
  69. package/dist/cjs/components/chatbar.js.map +4 -4
  70. package/dist/cjs/components/checkbox-cards.d.ts.map +1 -1
  71. package/dist/cjs/components/checkbox-cards.js +1 -1
  72. package/dist/cjs/components/checkbox-cards.js.map +4 -4
  73. package/dist/cjs/components/checkbox-cards.props.d.ts +0 -5
  74. package/dist/cjs/components/checkbox-cards.props.d.ts.map +1 -1
  75. package/dist/cjs/components/checkbox-cards.props.js +1 -1
  76. package/dist/cjs/components/checkbox-cards.props.js.map +4 -4
  77. package/dist/cjs/components/checkbox-group.d.ts.map +1 -1
  78. package/dist/cjs/components/checkbox-group.js +1 -1
  79. package/dist/cjs/components/checkbox-group.js.map +4 -4
  80. package/dist/cjs/components/checkbox-group.props.d.ts +0 -5
  81. package/dist/cjs/components/checkbox-group.props.d.ts.map +1 -1
  82. package/dist/cjs/components/checkbox-group.props.js +1 -1
  83. package/dist/cjs/components/checkbox-group.props.js.map +4 -4
  84. package/dist/cjs/components/checkbox.js +1 -1
  85. package/dist/cjs/components/checkbox.js.map +4 -4
  86. package/dist/cjs/components/checkbox.props.js +1 -1
  87. package/dist/cjs/components/checkbox.props.js.map +4 -4
  88. package/dist/cjs/components/code.js +1 -1
  89. package/dist/cjs/components/code.js.map +4 -4
  90. package/dist/cjs/components/code.props.d.ts +3 -2
  91. package/dist/cjs/components/code.props.d.ts.map +1 -1
  92. package/dist/cjs/components/code.props.js +1 -1
  93. package/dist/cjs/components/code.props.js.map +4 -4
  94. package/dist/cjs/components/combobox.d.ts.map +1 -1
  95. package/dist/cjs/components/combobox.js +1 -1
  96. package/dist/cjs/components/combobox.js.map +4 -4
  97. package/dist/cjs/components/combobox.props.d.ts +1 -11
  98. package/dist/cjs/components/combobox.props.d.ts.map +1 -1
  99. package/dist/cjs/components/combobox.props.js +1 -1
  100. package/dist/cjs/components/combobox.props.js.map +4 -4
  101. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  102. package/dist/cjs/components/context-menu.js +1 -1
  103. package/dist/cjs/components/context-menu.js.map +4 -4
  104. package/dist/cjs/components/context-menu.props.js +1 -1
  105. package/dist/cjs/components/context-menu.props.js.map +4 -4
  106. package/dist/cjs/components/data-list.js +1 -1
  107. package/dist/cjs/components/data-list.js.map +4 -4
  108. package/dist/cjs/components/data-list.props.d.ts +4 -3
  109. package/dist/cjs/components/data-list.props.d.ts.map +1 -1
  110. package/dist/cjs/components/data-list.props.js +1 -1
  111. package/dist/cjs/components/data-list.props.js.map +4 -4
  112. package/dist/cjs/components/dialog.js +1 -1
  113. package/dist/cjs/components/dialog.js.map +4 -4
  114. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  115. package/dist/cjs/components/dropdown-menu.js +1 -1
  116. package/dist/cjs/components/dropdown-menu.js.map +4 -4
  117. package/dist/cjs/components/dropdown-menu.props.js +1 -1
  118. package/dist/cjs/components/dropdown-menu.props.js.map +4 -4
  119. package/dist/cjs/components/heading.js +1 -1
  120. package/dist/cjs/components/heading.js.map +4 -4
  121. package/dist/cjs/components/heading.props.d.ts +3 -2
  122. package/dist/cjs/components/heading.props.d.ts.map +1 -1
  123. package/dist/cjs/components/heading.props.js +1 -1
  124. package/dist/cjs/components/heading.props.js.map +4 -4
  125. package/dist/cjs/components/hover-card.js.map +1 -1
  126. package/dist/cjs/components/icon-button.js +2 -2
  127. package/dist/cjs/components/icon-button.js.map +4 -4
  128. package/dist/cjs/components/icon-button.props.js +1 -1
  129. package/dist/cjs/components/icon-button.props.js.map +4 -4
  130. package/dist/cjs/components/index.js +5 -5
  131. package/dist/cjs/components/index.js.map +4 -4
  132. package/dist/cjs/components/link.js +1 -1
  133. package/dist/cjs/components/link.js.map +4 -4
  134. package/dist/cjs/components/link.props.d.ts +0 -5
  135. package/dist/cjs/components/link.props.d.ts.map +1 -1
  136. package/dist/cjs/components/link.props.js +1 -1
  137. package/dist/cjs/components/link.props.js.map +4 -4
  138. package/dist/cjs/components/popover.js.map +1 -1
  139. package/dist/cjs/components/progress.js +1 -1
  140. package/dist/cjs/components/progress.js.map +4 -4
  141. package/dist/cjs/components/progress.props.d.ts +0 -5
  142. package/dist/cjs/components/progress.props.d.ts.map +1 -1
  143. package/dist/cjs/components/progress.props.js +1 -1
  144. package/dist/cjs/components/progress.props.js.map +4 -4
  145. package/dist/cjs/components/radio-cards.js +1 -1
  146. package/dist/cjs/components/radio-cards.js.map +4 -4
  147. package/dist/cjs/components/radio-cards.props.d.ts +0 -5
  148. package/dist/cjs/components/radio-cards.props.d.ts.map +1 -1
  149. package/dist/cjs/components/radio-cards.props.js +1 -1
  150. package/dist/cjs/components/radio-cards.props.js.map +4 -4
  151. package/dist/cjs/components/radio-group.d.ts.map +1 -1
  152. package/dist/cjs/components/radio-group.js +1 -1
  153. package/dist/cjs/components/radio-group.js.map +4 -4
  154. package/dist/cjs/components/radio-group.props.d.ts +0 -5
  155. package/dist/cjs/components/radio-group.props.d.ts.map +1 -1
  156. package/dist/cjs/components/radio-group.props.js +1 -1
  157. package/dist/cjs/components/radio-group.props.js.map +4 -4
  158. package/dist/cjs/components/radio.js +1 -1
  159. package/dist/cjs/components/radio.js.map +4 -4
  160. package/dist/cjs/components/radio.props.js +1 -1
  161. package/dist/cjs/components/radio.props.js.map +4 -4
  162. package/dist/cjs/components/schemas/base-button.schema.d.ts +0 -1
  163. package/dist/cjs/components/schemas/base-button.schema.d.ts.map +1 -1
  164. package/dist/cjs/components/schemas/base-button.schema.js +1 -1
  165. package/dist/cjs/components/schemas/base-button.schema.js.map +2 -2
  166. package/dist/cjs/components/schemas/button.schema.d.ts +0 -1
  167. package/dist/cjs/components/schemas/button.schema.d.ts.map +1 -1
  168. package/dist/cjs/components/schemas/button.schema.js +1 -1
  169. package/dist/cjs/components/schemas/button.schema.js.map +2 -2
  170. package/dist/cjs/components/schemas/icon-button.schema.d.ts +0 -1
  171. package/dist/cjs/components/schemas/icon-button.schema.d.ts.map +1 -1
  172. package/dist/cjs/components/schemas/icon-button.schema.js +1 -1
  173. package/dist/cjs/components/schemas/icon-button.schema.js.map +2 -2
  174. package/dist/cjs/components/schemas/index.js +1 -1
  175. package/dist/cjs/components/schemas/index.js.map +2 -2
  176. package/dist/cjs/components/schemas/toggle-button.schema.d.ts +0 -1
  177. package/dist/cjs/components/schemas/toggle-button.schema.d.ts.map +1 -1
  178. package/dist/cjs/components/schemas/toggle-button.schema.js +1 -1
  179. package/dist/cjs/components/schemas/toggle-button.schema.js.map +2 -2
  180. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts +0 -1
  181. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts.map +1 -1
  182. package/dist/cjs/components/schemas/toggle-icon-button.schema.js +1 -1
  183. package/dist/cjs/components/schemas/toggle-icon-button.schema.js.map +2 -2
  184. package/dist/cjs/components/select.js +1 -1
  185. package/dist/cjs/components/select.js.map +4 -4
  186. package/dist/cjs/components/select.props.d.ts +0 -5
  187. package/dist/cjs/components/select.props.d.ts.map +1 -1
  188. package/dist/cjs/components/select.props.js +1 -1
  189. package/dist/cjs/components/select.props.js.map +4 -4
  190. package/dist/cjs/components/separator.js.map +1 -1
  191. package/dist/cjs/components/separator.props.js.map +1 -1
  192. package/dist/cjs/components/sheet.js +1 -1
  193. package/dist/cjs/components/sheet.js.map +4 -4
  194. package/dist/cjs/components/shell.js +1 -1
  195. package/dist/cjs/components/shell.js.map +4 -4
  196. package/dist/cjs/components/sidebar.d.ts +0 -1
  197. package/dist/cjs/components/sidebar.d.ts.map +1 -1
  198. package/dist/cjs/components/sidebar.js +1 -1
  199. package/dist/cjs/components/sidebar.js.map +4 -4
  200. package/dist/cjs/components/sidebar.props.d.ts +0 -5
  201. package/dist/cjs/components/sidebar.props.d.ts.map +1 -1
  202. package/dist/cjs/components/sidebar.props.js +1 -1
  203. package/dist/cjs/components/sidebar.props.js.map +4 -4
  204. package/dist/cjs/components/slider.js +1 -1
  205. package/dist/cjs/components/slider.js.map +4 -4
  206. package/dist/cjs/components/slider.props.d.ts +0 -5
  207. package/dist/cjs/components/slider.props.d.ts.map +1 -1
  208. package/dist/cjs/components/slider.props.js +1 -1
  209. package/dist/cjs/components/slider.props.js.map +4 -4
  210. package/dist/cjs/components/switch.d.ts.map +1 -1
  211. package/dist/cjs/components/switch.js +1 -1
  212. package/dist/cjs/components/switch.js.map +4 -4
  213. package/dist/cjs/components/switch.props.d.ts +0 -5
  214. package/dist/cjs/components/switch.props.d.ts.map +1 -1
  215. package/dist/cjs/components/switch.props.js +1 -1
  216. package/dist/cjs/components/switch.props.js.map +4 -4
  217. package/dist/cjs/components/tab-nav.js +1 -1
  218. package/dist/cjs/components/tab-nav.js.map +4 -4
  219. package/dist/cjs/components/tab-nav.props.js +1 -1
  220. package/dist/cjs/components/tab-nav.props.js.map +4 -4
  221. package/dist/cjs/components/tabs.js +1 -1
  222. package/dist/cjs/components/tabs.js.map +4 -4
  223. package/dist/cjs/components/tabs.props.js +1 -1
  224. package/dist/cjs/components/tabs.props.js.map +4 -4
  225. package/dist/cjs/components/text-area.js.map +1 -1
  226. package/dist/cjs/components/text-area.props.js.map +1 -1
  227. package/dist/cjs/components/text-field.js.map +1 -1
  228. package/dist/cjs/components/text-field.props.js.map +1 -1
  229. package/dist/cjs/components/text.js +1 -1
  230. package/dist/cjs/components/text.js.map +4 -4
  231. package/dist/cjs/components/text.props.d.ts +3 -2
  232. package/dist/cjs/components/text.props.d.ts.map +1 -1
  233. package/dist/cjs/components/text.props.js +1 -1
  234. package/dist/cjs/components/text.props.js.map +4 -4
  235. package/dist/cjs/components/theme-panel.js +3 -3
  236. package/dist/cjs/components/theme-panel.js.map +4 -4
  237. package/dist/cjs/components/theme.js.map +1 -1
  238. package/dist/cjs/components/theme.props.js.map +1 -1
  239. package/dist/cjs/components/toggle-button.js +2 -2
  240. package/dist/cjs/components/toggle-button.js.map +4 -4
  241. package/dist/cjs/components/toggle-icon-button.js +3 -3
  242. package/dist/cjs/components/toggle-icon-button.js.map +4 -4
  243. package/dist/cjs/components/toolbar.js +1 -1
  244. package/dist/cjs/components/toolbar.js.map +4 -4
  245. package/dist/cjs/components/tooltip.js +1 -1
  246. package/dist/cjs/components/tooltip.js.map +4 -4
  247. package/dist/cjs/components/user-card.d.ts.map +1 -1
  248. package/dist/cjs/components/user-card.js +1 -1
  249. package/dist/cjs/components/user-card.js.map +4 -4
  250. package/dist/cjs/components/user-card.props.d.ts +0 -5
  251. package/dist/cjs/components/user-card.props.d.ts.map +1 -1
  252. package/dist/cjs/components/user-card.props.js +1 -1
  253. package/dist/cjs/components/user-card.props.js.map +4 -4
  254. package/dist/cjs/components/virtual-menu.js.map +1 -1
  255. package/dist/cjs/index.js +5 -5
  256. package/dist/cjs/index.js.map +4 -4
  257. package/dist/cjs/props/color.prop.js.map +1 -1
  258. package/dist/cjs/props/emphasis.prop.d.ts +11 -0
  259. package/dist/cjs/props/emphasis.prop.d.ts.map +1 -0
  260. package/dist/cjs/props/emphasis.prop.js +2 -0
  261. package/dist/cjs/props/emphasis.prop.js.map +7 -0
  262. package/dist/cjs/props/index.d.ts +1 -1
  263. package/dist/cjs/props/index.d.ts.map +1 -1
  264. package/dist/cjs/props/index.js +1 -1
  265. package/dist/cjs/props/index.js.map +4 -4
  266. package/dist/esm/chunk-2264DHUW.js +2 -0
  267. package/dist/esm/{chunk-UIRSGVJG.js.map → chunk-2264DHUW.js.map} +2 -2
  268. package/dist/esm/chunk-2CMM7MEL.js +2 -0
  269. package/dist/esm/chunk-2CMM7MEL.js.map +7 -0
  270. package/dist/esm/chunk-2I7QRVJ5.js +2 -0
  271. package/dist/esm/chunk-2I7QRVJ5.js.map +7 -0
  272. package/dist/esm/{chunk-5BYHEYO6.js → chunk-2SZZ75RJ.js} +2 -2
  273. package/dist/esm/chunk-3KSGRY6I.js +2 -0
  274. package/dist/esm/chunk-3KSGRY6I.js.map +7 -0
  275. package/dist/esm/chunk-4NTGF22C.js +2 -0
  276. package/dist/esm/chunk-4NTGF22C.js.map +7 -0
  277. package/dist/esm/chunk-4WVNMGI5.js +2 -0
  278. package/dist/esm/chunk-4WVNMGI5.js.map +7 -0
  279. package/dist/esm/chunk-4XKK32M4.js +2 -0
  280. package/dist/esm/chunk-4XKK32M4.js.map +7 -0
  281. package/dist/esm/chunk-5SNHUVDA.js +2 -0
  282. package/dist/esm/{chunk-H7ST535H.js → chunk-5WRCK4R7.js} +2 -2
  283. package/dist/esm/chunk-5XV4QEP5.js +2 -0
  284. package/dist/esm/chunk-5XV4QEP5.js.map +7 -0
  285. package/dist/esm/chunk-667BKCUG.js +2 -0
  286. package/dist/esm/chunk-667BKCUG.js.map +7 -0
  287. package/dist/esm/{chunk-MHPPVJDB.js → chunk-67MKPTZJ.js} +2 -2
  288. package/dist/esm/{chunk-SZTZ2XLI.js → chunk-7EWFBWBS.js} +2 -2
  289. package/dist/esm/{chunk-SZTZ2XLI.js.map → chunk-7EWFBWBS.js.map} +2 -2
  290. package/dist/esm/chunk-AF6XKU3W.js +2 -0
  291. package/dist/esm/chunk-AF6XKU3W.js.map +7 -0
  292. package/dist/esm/chunk-AGSSWWFI.js +2 -0
  293. package/dist/esm/chunk-AGSSWWFI.js.map +7 -0
  294. package/dist/esm/{chunk-CQNPBTM5.js → chunk-ALWNS44Q.js} +2 -2
  295. package/dist/esm/{chunk-GYBLXQ4R.js → chunk-CDG5WH4U.js} +2 -2
  296. package/dist/esm/{chunk-RLPKKCBL.js → chunk-CEIK5U6C.js} +2 -2
  297. package/dist/esm/{chunk-HBR42MIX.js → chunk-CESYMTJQ.js} +2 -2
  298. package/dist/esm/chunk-CFNESRYI.js +2 -0
  299. package/dist/esm/chunk-CFNESRYI.js.map +7 -0
  300. package/dist/esm/{chunk-P7IAHW4V.js → chunk-CIYF56YS.js} +2 -2
  301. package/dist/esm/chunk-CJ27XP5Z.js +2 -0
  302. package/dist/esm/chunk-CJ27XP5Z.js.map +7 -0
  303. package/dist/esm/{chunk-SPIU5JYC.js → chunk-CKMMUHKE.js} +2 -2
  304. package/dist/esm/{chunk-SESAEJ6W.js → chunk-CLMOWP5T.js} +2 -2
  305. package/dist/esm/{chunk-DUHJVT64.js → chunk-CRSHBENJ.js} +2 -2
  306. package/dist/esm/{chunk-L6PVH3RM.js → chunk-DSJY5RI3.js} +2 -2
  307. package/dist/esm/chunk-EBQZ3Z22.js +2 -0
  308. package/dist/esm/chunk-EBQZ3Z22.js.map +7 -0
  309. package/dist/esm/{chunk-ADBLURLJ.js → chunk-ECXGQQJB.js} +2 -2
  310. package/dist/esm/chunk-EDKQURDU.js +2 -0
  311. package/dist/esm/chunk-EDKQURDU.js.map +7 -0
  312. package/dist/esm/{chunk-ZXZOH63L.js → chunk-EE2IH2GL.js} +2 -2
  313. package/dist/esm/{chunk-NMKPFUNP.js → chunk-EPTYNVCU.js} +2 -2
  314. package/dist/esm/chunk-F6V7GBNQ.js +2 -0
  315. package/dist/esm/chunk-F6V7GBNQ.js.map +7 -0
  316. package/dist/esm/{chunk-YMUGKYGW.js → chunk-GAV3NHYL.js} +2 -2
  317. package/dist/esm/{chunk-TOOSHJOA.js → chunk-GO7OHBHW.js} +2 -2
  318. package/dist/esm/{chunk-MBCBP73P.js → chunk-HJU4I34X.js} +2 -2
  319. package/dist/esm/{chunk-TS623UPD.js → chunk-IFM4EMZB.js} +2 -2
  320. package/dist/esm/chunk-JFWMAYEH.js +2 -0
  321. package/dist/esm/chunk-JFWMAYEH.js.map +7 -0
  322. package/dist/esm/{chunk-2TIADHPD.js → chunk-K3UAS7RW.js} +2 -2
  323. package/dist/esm/chunk-KCWESYMR.js +2 -0
  324. package/dist/esm/chunk-KCWESYMR.js.map +7 -0
  325. package/dist/esm/{chunk-VA4CTVQL.js → chunk-KFR3CK24.js} +2 -2
  326. package/dist/esm/chunk-KJUDZCYK.js +2 -0
  327. package/dist/esm/{chunk-SO67YEVQ.js.map → chunk-KJUDZCYK.js.map} +2 -2
  328. package/dist/esm/{chunk-P5OSU4NX.js → chunk-KMPE7TJ6.js} +2 -2
  329. package/dist/esm/{chunk-WXP6MMUB.js → chunk-KOFEFBB3.js} +2 -2
  330. package/dist/esm/chunk-KZWNGWIM.js +2 -0
  331. package/dist/esm/chunk-KZWNGWIM.js.map +7 -0
  332. package/dist/esm/chunk-KZYFTDGO.js +2 -0
  333. package/dist/esm/chunk-KZYFTDGO.js.map +7 -0
  334. package/dist/esm/chunk-L3BWTV7I.js +2 -0
  335. package/dist/esm/chunk-L3BWTV7I.js.map +7 -0
  336. package/dist/esm/{chunk-7ESHXHHO.js → chunk-M6DJRFJZ.js} +2 -2
  337. package/dist/esm/{chunk-OYF6YXH7.js → chunk-MCPRXVKZ.js} +2 -2
  338. package/dist/esm/{chunk-JBO5YOUM.js → chunk-MEO7MJMQ.js} +2 -2
  339. package/dist/esm/{chunk-YVBCDTTD.js → chunk-MN3XALXD.js} +2 -2
  340. package/dist/esm/{chunk-F7IYL2VW.js → chunk-MS5J4MF6.js} +2 -2
  341. package/dist/esm/{chunk-HW324FK3.js → chunk-MTOLKA6S.js} +2 -2
  342. package/dist/esm/{chunk-MBE2YSBU.js → chunk-N4GTDLRD.js} +2 -2
  343. package/dist/esm/chunk-NIIEIZKQ.js +2 -0
  344. package/dist/esm/chunk-NIIEIZKQ.js.map +7 -0
  345. package/dist/esm/{chunk-FIB3XATL.js → chunk-O2U6RJTB.js} +3 -3
  346. package/dist/esm/{chunk-FIB3XATL.js.map → chunk-O2U6RJTB.js.map} +2 -2
  347. package/dist/esm/{chunk-VNPNEJI6.js → chunk-OFUNVHZ5.js} +2 -2
  348. package/dist/esm/chunk-OGVKSYLL.js +2 -0
  349. package/dist/esm/chunk-OGVKSYLL.js.map +7 -0
  350. package/dist/esm/chunk-OJU5GCDZ.js +2 -0
  351. package/dist/esm/chunk-OJU5GCDZ.js.map +7 -0
  352. package/dist/esm/{chunk-3OBXZUFJ.js → chunk-OLAWVEAI.js} +2 -2
  353. package/dist/esm/{chunk-UWT6TE5D.js → chunk-OTXCKEWT.js} +2 -2
  354. package/dist/esm/chunk-OWMA6GTG.js +2 -0
  355. package/dist/esm/chunk-OWMA6GTG.js.map +7 -0
  356. package/dist/esm/chunk-PZ7OYATT.js +2 -0
  357. package/dist/esm/chunk-PZ7OYATT.js.map +7 -0
  358. package/dist/esm/chunk-QFPHEY77.js +2 -0
  359. package/dist/esm/chunk-QFPHEY77.js.map +7 -0
  360. package/dist/esm/chunk-QQ62LO3X.js +2 -0
  361. package/dist/esm/chunk-QQ62LO3X.js.map +7 -0
  362. package/dist/esm/{chunk-LAOMR7SE.js → chunk-QWVU2TW4.js} +2 -2
  363. package/dist/esm/{chunk-LAOMR7SE.js.map → chunk-QWVU2TW4.js.map} +3 -3
  364. package/dist/esm/chunk-RDAMYQFF.js +2 -0
  365. package/dist/esm/chunk-RDAMYQFF.js.map +7 -0
  366. package/dist/esm/{chunk-UFI53QUC.js → chunk-RNTCHVFI.js} +2 -2
  367. package/dist/esm/{chunk-DXL6V2A5.js → chunk-SEY4NA45.js} +2 -2
  368. package/dist/esm/chunk-V27ZAN3E.js +2 -0
  369. package/dist/esm/chunk-V27ZAN3E.js.map +7 -0
  370. package/dist/esm/{chunk-37OGSEQR.js → chunk-VBI3AWPT.js} +2 -2
  371. package/dist/esm/{chunk-56TS6OKQ.js → chunk-VHECAEUP.js} +2 -2
  372. package/dist/esm/chunk-VLTXI4A7.js +2 -0
  373. package/dist/esm/chunk-VLTXI4A7.js.map +7 -0
  374. package/dist/esm/{chunk-T4UHUQFJ.js → chunk-VNH7BJOA.js} +2 -2
  375. package/dist/esm/{chunk-IEWCQU2S.js → chunk-VR7ZAFYN.js} +2 -2
  376. package/dist/esm/chunk-VZSQATP6.js +2 -0
  377. package/dist/esm/{chunk-666GX7O5.js.map → chunk-VZSQATP6.js.map} +2 -2
  378. package/dist/esm/{chunk-DMJJM5IS.js → chunk-W2FOBR5Q.js} +2 -2
  379. package/dist/esm/chunk-WGYUWEQV.js +2 -0
  380. package/dist/esm/chunk-WGYUWEQV.js.map +7 -0
  381. package/dist/esm/{chunk-UUUZXUIP.js → chunk-WHFJ4JUN.js} +2 -2
  382. package/dist/esm/chunk-WMGIFPI2.js +2 -0
  383. package/dist/esm/chunk-WMGIFPI2.js.map +7 -0
  384. package/dist/esm/chunk-WXQIIKWV.js +2 -0
  385. package/dist/esm/chunk-WXQIIKWV.js.map +7 -0
  386. package/dist/esm/{chunk-HIKVMKYQ.js → chunk-X7V3V3W4.js} +2 -2
  387. package/dist/esm/{chunk-DX5JJYMZ.js → chunk-XYVLQDGR.js} +2 -2
  388. package/dist/esm/{chunk-3R7XMRV5.js → chunk-Y5RCH23Z.js} +2 -2
  389. package/dist/esm/{chunk-OWAUCLRT.js → chunk-YBSRX63K.js} +2 -2
  390. package/dist/esm/{chunk-66ZLZAAJ.js → chunk-ZNK6AH2G.js} +1 -1
  391. package/dist/esm/{chunk-66ZLZAAJ.js.map → chunk-ZNK6AH2G.js.map} +1 -1
  392. package/dist/esm/{chunk-KPBG7CIL.js → chunk-ZO7TTWJI.js} +2 -2
  393. package/dist/esm/chunk-ZWZGUBL4.js +2 -0
  394. package/dist/esm/chunk-ZWZGUBL4.js.map +7 -0
  395. package/dist/esm/components/_internal/base-button.js +1 -1
  396. package/dist/esm/components/_internal/base-button.props.d.ts +2 -7
  397. package/dist/esm/components/_internal/base-button.props.d.ts.map +1 -1
  398. package/dist/esm/components/_internal/base-button.props.js +1 -1
  399. package/dist/esm/components/_internal/base-checkbox.props.d.ts +0 -5
  400. package/dist/esm/components/_internal/base-checkbox.props.d.ts.map +1 -1
  401. package/dist/esm/components/_internal/base-checkbox.props.js +1 -1
  402. package/dist/esm/components/_internal/base-menu.props.d.ts +0 -10
  403. package/dist/esm/components/_internal/base-menu.props.d.ts.map +1 -1
  404. package/dist/esm/components/_internal/base-menu.props.js +1 -1
  405. package/dist/esm/components/_internal/base-radio.props.d.ts +0 -5
  406. package/dist/esm/components/_internal/base-radio.props.d.ts.map +1 -1
  407. package/dist/esm/components/_internal/base-radio.props.js +1 -1
  408. package/dist/esm/components/_internal/base-tab-list.props.d.ts +0 -5
  409. package/dist/esm/components/_internal/base-tab-list.props.d.ts.map +1 -1
  410. package/dist/esm/components/_internal/base-tab-list.props.js +1 -1
  411. package/dist/esm/components/_internal/menu-context.js +1 -1
  412. package/dist/esm/components/_internal/shell-bottom.js +1 -1
  413. package/dist/esm/components/_internal/shell-inspector.js +1 -1
  414. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  415. package/dist/esm/components/accordion.js +1 -1
  416. package/dist/esm/components/accordion.props.d.ts +0 -6
  417. package/dist/esm/components/accordion.props.d.ts.map +1 -1
  418. package/dist/esm/components/accordion.props.js +1 -1
  419. package/dist/esm/components/alert-dialog.js +1 -1
  420. package/dist/esm/components/avatar.js +1 -1
  421. package/dist/esm/components/avatar.props.d.ts +0 -5
  422. package/dist/esm/components/avatar.props.d.ts.map +1 -1
  423. package/dist/esm/components/avatar.props.js +1 -1
  424. package/dist/esm/components/badge.js +1 -1
  425. package/dist/esm/components/badge.props.d.ts +0 -5
  426. package/dist/esm/components/badge.props.d.ts.map +1 -1
  427. package/dist/esm/components/badge.props.js +1 -1
  428. package/dist/esm/components/blockquote.js +1 -1
  429. package/dist/esm/components/blockquote.props.d.ts +3 -2
  430. package/dist/esm/components/blockquote.props.d.ts.map +1 -1
  431. package/dist/esm/components/blockquote.props.js +1 -1
  432. package/dist/esm/components/button.js +1 -1
  433. package/dist/esm/components/button.props.js +1 -1
  434. package/dist/esm/components/callout.js +1 -1
  435. package/dist/esm/components/callout.props.d.ts +0 -5
  436. package/dist/esm/components/callout.props.d.ts.map +1 -1
  437. package/dist/esm/components/callout.props.js +1 -1
  438. package/dist/esm/components/chatbar.d.ts.map +1 -1
  439. package/dist/esm/components/chatbar.js +1 -1
  440. package/dist/esm/components/checkbox-cards.d.ts.map +1 -1
  441. package/dist/esm/components/checkbox-cards.js +1 -1
  442. package/dist/esm/components/checkbox-cards.props.d.ts +0 -5
  443. package/dist/esm/components/checkbox-cards.props.d.ts.map +1 -1
  444. package/dist/esm/components/checkbox-cards.props.js +1 -1
  445. package/dist/esm/components/checkbox-group.d.ts.map +1 -1
  446. package/dist/esm/components/checkbox-group.js +1 -1
  447. package/dist/esm/components/checkbox-group.props.d.ts +0 -5
  448. package/dist/esm/components/checkbox-group.props.d.ts.map +1 -1
  449. package/dist/esm/components/checkbox-group.props.js +1 -1
  450. package/dist/esm/components/checkbox.js +1 -1
  451. package/dist/esm/components/checkbox.props.js +1 -1
  452. package/dist/esm/components/code.js +1 -1
  453. package/dist/esm/components/code.props.d.ts +3 -2
  454. package/dist/esm/components/code.props.d.ts.map +1 -1
  455. package/dist/esm/components/code.props.js +1 -1
  456. package/dist/esm/components/combobox.d.ts.map +1 -1
  457. package/dist/esm/components/combobox.js +1 -1
  458. package/dist/esm/components/combobox.props.d.ts +1 -11
  459. package/dist/esm/components/combobox.props.d.ts.map +1 -1
  460. package/dist/esm/components/combobox.props.js +1 -1
  461. package/dist/esm/components/context-menu.d.ts.map +1 -1
  462. package/dist/esm/components/context-menu.js +1 -1
  463. package/dist/esm/components/context-menu.props.js +1 -1
  464. package/dist/esm/components/data-list.js +1 -1
  465. package/dist/esm/components/data-list.props.d.ts +4 -3
  466. package/dist/esm/components/data-list.props.d.ts.map +1 -1
  467. package/dist/esm/components/data-list.props.js +1 -1
  468. package/dist/esm/components/dialog.js +1 -1
  469. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  470. package/dist/esm/components/dropdown-menu.js +1 -1
  471. package/dist/esm/components/dropdown-menu.props.js +1 -1
  472. package/dist/esm/components/heading.js +1 -1
  473. package/dist/esm/components/heading.props.d.ts +3 -2
  474. package/dist/esm/components/heading.props.d.ts.map +1 -1
  475. package/dist/esm/components/heading.props.js +1 -1
  476. package/dist/esm/components/hover-card.js +1 -1
  477. package/dist/esm/components/icon-button.js +1 -1
  478. package/dist/esm/components/icon-button.props.js +1 -1
  479. package/dist/esm/components/index.js +1 -1
  480. package/dist/esm/components/link.js +1 -1
  481. package/dist/esm/components/link.props.d.ts +0 -5
  482. package/dist/esm/components/link.props.d.ts.map +1 -1
  483. package/dist/esm/components/link.props.js +1 -1
  484. package/dist/esm/components/popover.js +1 -1
  485. package/dist/esm/components/progress.js +1 -1
  486. package/dist/esm/components/progress.props.d.ts +0 -5
  487. package/dist/esm/components/progress.props.d.ts.map +1 -1
  488. package/dist/esm/components/progress.props.js +1 -1
  489. package/dist/esm/components/radio-cards.js +1 -1
  490. package/dist/esm/components/radio-cards.props.d.ts +0 -5
  491. package/dist/esm/components/radio-cards.props.d.ts.map +1 -1
  492. package/dist/esm/components/radio-cards.props.js +1 -1
  493. package/dist/esm/components/radio-group.d.ts.map +1 -1
  494. package/dist/esm/components/radio-group.js +1 -1
  495. package/dist/esm/components/radio-group.props.d.ts +0 -5
  496. package/dist/esm/components/radio-group.props.d.ts.map +1 -1
  497. package/dist/esm/components/radio-group.props.js +1 -1
  498. package/dist/esm/components/radio.js +1 -1
  499. package/dist/esm/components/radio.props.js +1 -1
  500. package/dist/esm/components/schemas/base-button.schema.d.ts +0 -1
  501. package/dist/esm/components/schemas/base-button.schema.d.ts.map +1 -1
  502. package/dist/esm/components/schemas/base-button.schema.js +1 -1
  503. package/dist/esm/components/schemas/button.schema.d.ts +0 -1
  504. package/dist/esm/components/schemas/button.schema.d.ts.map +1 -1
  505. package/dist/esm/components/schemas/button.schema.js +1 -1
  506. package/dist/esm/components/schemas/icon-button.schema.d.ts +0 -1
  507. package/dist/esm/components/schemas/icon-button.schema.d.ts.map +1 -1
  508. package/dist/esm/components/schemas/icon-button.schema.js +1 -1
  509. package/dist/esm/components/schemas/index.js +1 -1
  510. package/dist/esm/components/schemas/toggle-button.schema.d.ts +0 -1
  511. package/dist/esm/components/schemas/toggle-button.schema.d.ts.map +1 -1
  512. package/dist/esm/components/schemas/toggle-button.schema.js +1 -1
  513. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts +0 -1
  514. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts.map +1 -1
  515. package/dist/esm/components/schemas/toggle-icon-button.schema.js +1 -1
  516. package/dist/esm/components/select.js +1 -1
  517. package/dist/esm/components/select.props.d.ts +0 -5
  518. package/dist/esm/components/select.props.d.ts.map +1 -1
  519. package/dist/esm/components/select.props.js +1 -1
  520. package/dist/esm/components/separator.js +1 -1
  521. package/dist/esm/components/separator.props.js +1 -1
  522. package/dist/esm/components/sheet.js +1 -1
  523. package/dist/esm/components/shell.js +1 -1
  524. package/dist/esm/components/sidebar.d.ts +0 -1
  525. package/dist/esm/components/sidebar.d.ts.map +1 -1
  526. package/dist/esm/components/sidebar.js +1 -1
  527. package/dist/esm/components/sidebar.props.d.ts +0 -5
  528. package/dist/esm/components/sidebar.props.d.ts.map +1 -1
  529. package/dist/esm/components/sidebar.props.js +1 -1
  530. package/dist/esm/components/slider.js +1 -1
  531. package/dist/esm/components/slider.props.d.ts +0 -5
  532. package/dist/esm/components/slider.props.d.ts.map +1 -1
  533. package/dist/esm/components/slider.props.js +1 -1
  534. package/dist/esm/components/switch.d.ts.map +1 -1
  535. package/dist/esm/components/switch.js +1 -1
  536. package/dist/esm/components/switch.props.d.ts +0 -5
  537. package/dist/esm/components/switch.props.d.ts.map +1 -1
  538. package/dist/esm/components/switch.props.js +1 -1
  539. package/dist/esm/components/tab-nav.js +1 -1
  540. package/dist/esm/components/tab-nav.props.js +1 -1
  541. package/dist/esm/components/tabs.js +1 -1
  542. package/dist/esm/components/tabs.props.js +1 -1
  543. package/dist/esm/components/text-area.js +1 -1
  544. package/dist/esm/components/text-area.props.js +1 -1
  545. package/dist/esm/components/text-field.js +1 -1
  546. package/dist/esm/components/text-field.props.js +1 -1
  547. package/dist/esm/components/text.js +1 -1
  548. package/dist/esm/components/text.props.d.ts +3 -2
  549. package/dist/esm/components/text.props.d.ts.map +1 -1
  550. package/dist/esm/components/text.props.js +1 -1
  551. package/dist/esm/components/theme-panel.js +1 -1
  552. package/dist/esm/components/theme.js +1 -1
  553. package/dist/esm/components/theme.props.js +1 -1
  554. package/dist/esm/components/toggle-button.js +1 -1
  555. package/dist/esm/components/toggle-icon-button.js +1 -1
  556. package/dist/esm/components/toolbar.js +1 -1
  557. package/dist/esm/components/tooltip.js +1 -1
  558. package/dist/esm/components/user-card.d.ts.map +1 -1
  559. package/dist/esm/components/user-card.js +1 -1
  560. package/dist/esm/components/user-card.props.d.ts +0 -5
  561. package/dist/esm/components/user-card.props.d.ts.map +1 -1
  562. package/dist/esm/components/user-card.props.js +1 -1
  563. package/dist/esm/components/virtual-menu.js +1 -1
  564. package/dist/esm/index.js +1 -1
  565. package/dist/esm/props/color.prop.js +1 -1
  566. package/dist/esm/props/emphasis.prop.d.ts +11 -0
  567. package/dist/esm/props/emphasis.prop.d.ts.map +1 -0
  568. package/dist/esm/props/emphasis.prop.js +2 -0
  569. package/dist/esm/props/index.d.ts +1 -1
  570. package/dist/esm/props/index.d.ts.map +1 -1
  571. package/dist/esm/props/index.js +1 -1
  572. package/package.json +1 -1
  573. package/schemas/base-button.json +0 -5
  574. package/schemas/button.json +0 -5
  575. package/schemas/icon-button.json +0 -5
  576. package/schemas/index.json +0 -25
  577. package/schemas/toggle-button.json +0 -5
  578. package/schemas/toggle-icon-button.json +0 -5
  579. package/src/components/_internal/base-button.css +14 -69
  580. package/src/components/_internal/base-button.props.ts +2 -4
  581. package/src/components/_internal/base-checkbox.css +9 -63
  582. package/src/components/_internal/base-checkbox.props.ts +0 -2
  583. package/src/components/_internal/base-menu.css +7 -59
  584. package/src/components/_internal/base-menu.props.ts +0 -2
  585. package/src/components/_internal/base-radio.css +9 -46
  586. package/src/components/_internal/base-radio.props.ts +0 -2
  587. package/src/components/_internal/base-sidebar-menu.css +3 -3
  588. package/src/components/_internal/base-tab-list.css +1 -7
  589. package/src/components/_internal/base-tab-list.props.ts +0 -2
  590. package/src/components/accordion.css +4 -62
  591. package/src/components/accordion.props.tsx +0 -3
  592. package/src/components/avatar.css +10 -61
  593. package/src/components/avatar.props.tsx +0 -2
  594. package/src/components/badge.css +7 -32
  595. package/src/components/badge.props.tsx +0 -2
  596. package/src/components/blockquote.props.tsx +2 -2
  597. package/src/components/callout.css +5 -25
  598. package/src/components/callout.props.tsx +0 -2
  599. package/src/components/chatbar.tsx +6 -3
  600. package/src/components/checkbox-cards.props.tsx +0 -2
  601. package/src/components/checkbox-cards.tsx +1 -4
  602. package/src/components/checkbox-group.tsx +0 -2
  603. package/src/components/code.css +36 -36
  604. package/src/components/code.props.tsx +2 -2
  605. package/src/components/combobox.css +4 -10
  606. package/src/components/combobox.props.tsx +1 -5
  607. package/src/components/combobox.tsx +4 -8
  608. package/src/components/context-menu.tsx +5 -8
  609. package/src/components/data-list.css +14 -9
  610. package/src/components/data-list.props.tsx +5 -2
  611. package/src/components/dropdown-menu.tsx +5 -9
  612. package/src/components/heading.css +16 -5
  613. package/src/components/heading.props.tsx +2 -2
  614. package/src/components/link.css +3 -4
  615. package/src/components/link.props.tsx +0 -2
  616. package/src/components/progress.css +3 -10
  617. package/src/components/progress.props.tsx +0 -2
  618. package/src/components/radio-cards.css +1 -4
  619. package/src/components/radio-cards.props.tsx +0 -2
  620. package/src/components/radio-group.props.tsx +0 -2
  621. package/src/components/radio-group.tsx +0 -2
  622. package/src/components/schemas/base-button.schema.ts +0 -10
  623. package/src/components/select.css +13 -96
  624. package/src/components/select.props.tsx +0 -2
  625. package/src/components/sheet.tsx +2 -2
  626. package/src/components/sidebar.css +21 -115
  627. package/src/components/sidebar.props.tsx +0 -2
  628. package/src/components/sidebar.tsx +2 -5
  629. package/src/components/slider.css +4 -37
  630. package/src/components/slider.props.tsx +0 -2
  631. package/src/components/slider.tsx +1 -1
  632. package/src/components/switch.css +4 -23
  633. package/src/components/switch.props.tsx +0 -2
  634. package/src/components/switch.tsx +1 -3
  635. package/src/components/text.css +16 -5
  636. package/src/components/text.props.tsx +2 -2
  637. package/src/components/theme-panel.tsx +1 -1
  638. package/src/components/user-card.props.tsx +0 -2
  639. package/src/components/user-card.tsx +1 -2
  640. package/src/props/color.prop.ts +1 -1
  641. package/src/props/emphasis.prop.ts +19 -0
  642. package/src/props/index.ts +1 -1
  643. package/src/styles/tokens/color.css +109 -0
  644. package/src/styles/tokens/constants.css +0 -1
  645. package/styles.css +405 -734
  646. package/tokens/base.css +204 -150
  647. package/tokens.css +204 -151
  648. package/dist/cjs/props/high-contrast.prop.d.ts +0 -9
  649. package/dist/cjs/props/high-contrast.prop.d.ts.map +0 -1
  650. package/dist/cjs/props/high-contrast.prop.js +0 -2
  651. package/dist/cjs/props/high-contrast.prop.js.map +0 -7
  652. package/dist/esm/chunk-3DC63EZP.js +0 -2
  653. package/dist/esm/chunk-3DC63EZP.js.map +0 -7
  654. package/dist/esm/chunk-4SMJ7D4S.js +0 -2
  655. package/dist/esm/chunk-4SMJ7D4S.js.map +0 -7
  656. package/dist/esm/chunk-4TCXI3L3.js +0 -2
  657. package/dist/esm/chunk-4TCXI3L3.js.map +0 -7
  658. package/dist/esm/chunk-5MNBQROW.js +0 -2
  659. package/dist/esm/chunk-5MNBQROW.js.map +0 -7
  660. package/dist/esm/chunk-666GX7O5.js +0 -2
  661. package/dist/esm/chunk-6HEAF5IT.js +0 -2
  662. package/dist/esm/chunk-6HEAF5IT.js.map +0 -7
  663. package/dist/esm/chunk-A3NH376A.js +0 -2
  664. package/dist/esm/chunk-A3NH376A.js.map +0 -7
  665. package/dist/esm/chunk-BI7W34WW.js +0 -2
  666. package/dist/esm/chunk-BI7W34WW.js.map +0 -7
  667. package/dist/esm/chunk-CBR3VIRS.js +0 -2
  668. package/dist/esm/chunk-CBR3VIRS.js.map +0 -7
  669. package/dist/esm/chunk-D2AZAGGP.js +0 -2
  670. package/dist/esm/chunk-D2AZAGGP.js.map +0 -7
  671. package/dist/esm/chunk-DCAZPMOB.js +0 -2
  672. package/dist/esm/chunk-DCAZPMOB.js.map +0 -7
  673. package/dist/esm/chunk-DQAUX5ZL.js +0 -2
  674. package/dist/esm/chunk-DQAUX5ZL.js.map +0 -7
  675. package/dist/esm/chunk-F7IUK2I2.js +0 -2
  676. package/dist/esm/chunk-FLBLS7M4.js +0 -2
  677. package/dist/esm/chunk-FLBLS7M4.js.map +0 -7
  678. package/dist/esm/chunk-GSIE6SUD.js +0 -2
  679. package/dist/esm/chunk-GSIE6SUD.js.map +0 -7
  680. package/dist/esm/chunk-HOHUDTTL.js +0 -2
  681. package/dist/esm/chunk-HOHUDTTL.js.map +0 -7
  682. package/dist/esm/chunk-HUKPWYG2.js +0 -2
  683. package/dist/esm/chunk-HUKPWYG2.js.map +0 -7
  684. package/dist/esm/chunk-IDYHZIS6.js +0 -2
  685. package/dist/esm/chunk-IDYHZIS6.js.map +0 -7
  686. package/dist/esm/chunk-IGQRZCAI.js +0 -2
  687. package/dist/esm/chunk-IGQRZCAI.js.map +0 -7
  688. package/dist/esm/chunk-ILRJA7FU.js +0 -2
  689. package/dist/esm/chunk-ILRJA7FU.js.map +0 -7
  690. package/dist/esm/chunk-KTAFIHJY.js +0 -2
  691. package/dist/esm/chunk-KTAFIHJY.js.map +0 -7
  692. package/dist/esm/chunk-MCQAJV4K.js +0 -2
  693. package/dist/esm/chunk-MCQAJV4K.js.map +0 -7
  694. package/dist/esm/chunk-MJ47O7KH.js +0 -2
  695. package/dist/esm/chunk-MJ47O7KH.js.map +0 -7
  696. package/dist/esm/chunk-N2B7TWIP.js +0 -2
  697. package/dist/esm/chunk-N2B7TWIP.js.map +0 -7
  698. package/dist/esm/chunk-NKEJTTIL.js +0 -2
  699. package/dist/esm/chunk-NKEJTTIL.js.map +0 -7
  700. package/dist/esm/chunk-PTS6QYQW.js +0 -2
  701. package/dist/esm/chunk-PTS6QYQW.js.map +0 -7
  702. package/dist/esm/chunk-SO67YEVQ.js +0 -2
  703. package/dist/esm/chunk-T2FZN7G3.js +0 -2
  704. package/dist/esm/chunk-T2FZN7G3.js.map +0 -7
  705. package/dist/esm/chunk-TBJ6L4NL.js +0 -2
  706. package/dist/esm/chunk-TBJ6L4NL.js.map +0 -7
  707. package/dist/esm/chunk-TGN5ZJU5.js +0 -2
  708. package/dist/esm/chunk-TGN5ZJU5.js.map +0 -7
  709. package/dist/esm/chunk-UIRSGVJG.js +0 -2
  710. package/dist/esm/chunk-UMX5MGLG.js +0 -2
  711. package/dist/esm/chunk-UMX5MGLG.js.map +0 -7
  712. package/dist/esm/chunk-WR7YLY46.js +0 -2
  713. package/dist/esm/chunk-WR7YLY46.js.map +0 -7
  714. package/dist/esm/chunk-WZETC7WV.js +0 -2
  715. package/dist/esm/chunk-WZETC7WV.js.map +0 -7
  716. package/dist/esm/chunk-XGGLYV5D.js +0 -2
  717. package/dist/esm/chunk-XGGLYV5D.js.map +0 -7
  718. package/dist/esm/chunk-XKASPWCJ.js +0 -2
  719. package/dist/esm/chunk-XKASPWCJ.js.map +0 -7
  720. package/dist/esm/chunk-ZRKE3NVU.js +0 -2
  721. package/dist/esm/chunk-ZRKE3NVU.js.map +0 -7
  722. package/dist/esm/chunk-ZWYYPFZW.js +0 -2
  723. package/dist/esm/chunk-ZWYYPFZW.js.map +0 -7
  724. package/dist/esm/props/high-contrast.prop.d.ts +0 -9
  725. package/dist/esm/props/high-contrast.prop.d.ts.map +0 -1
  726. package/dist/esm/props/high-contrast.prop.js +0 -2
  727. package/src/props/high-contrast.prop.ts +0 -13
  728. /package/dist/esm/{chunk-5BYHEYO6.js.map → chunk-2SZZ75RJ.js.map} +0 -0
  729. /package/dist/esm/{chunk-F7IUK2I2.js.map → chunk-5SNHUVDA.js.map} +0 -0
  730. /package/dist/esm/{chunk-H7ST535H.js.map → chunk-5WRCK4R7.js.map} +0 -0
  731. /package/dist/esm/{chunk-MHPPVJDB.js.map → chunk-67MKPTZJ.js.map} +0 -0
  732. /package/dist/esm/{chunk-CQNPBTM5.js.map → chunk-ALWNS44Q.js.map} +0 -0
  733. /package/dist/esm/{chunk-GYBLXQ4R.js.map → chunk-CDG5WH4U.js.map} +0 -0
  734. /package/dist/esm/{chunk-RLPKKCBL.js.map → chunk-CEIK5U6C.js.map} +0 -0
  735. /package/dist/esm/{chunk-HBR42MIX.js.map → chunk-CESYMTJQ.js.map} +0 -0
  736. /package/dist/esm/{chunk-P7IAHW4V.js.map → chunk-CIYF56YS.js.map} +0 -0
  737. /package/dist/esm/{chunk-SPIU5JYC.js.map → chunk-CKMMUHKE.js.map} +0 -0
  738. /package/dist/esm/{chunk-SESAEJ6W.js.map → chunk-CLMOWP5T.js.map} +0 -0
  739. /package/dist/esm/{chunk-DUHJVT64.js.map → chunk-CRSHBENJ.js.map} +0 -0
  740. /package/dist/esm/{chunk-L6PVH3RM.js.map → chunk-DSJY5RI3.js.map} +0 -0
  741. /package/dist/esm/{chunk-ADBLURLJ.js.map → chunk-ECXGQQJB.js.map} +0 -0
  742. /package/dist/esm/{chunk-ZXZOH63L.js.map → chunk-EE2IH2GL.js.map} +0 -0
  743. /package/dist/esm/{chunk-NMKPFUNP.js.map → chunk-EPTYNVCU.js.map} +0 -0
  744. /package/dist/esm/{chunk-YMUGKYGW.js.map → chunk-GAV3NHYL.js.map} +0 -0
  745. /package/dist/esm/{chunk-TOOSHJOA.js.map → chunk-GO7OHBHW.js.map} +0 -0
  746. /package/dist/esm/{chunk-MBCBP73P.js.map → chunk-HJU4I34X.js.map} +0 -0
  747. /package/dist/esm/{chunk-TS623UPD.js.map → chunk-IFM4EMZB.js.map} +0 -0
  748. /package/dist/esm/{chunk-2TIADHPD.js.map → chunk-K3UAS7RW.js.map} +0 -0
  749. /package/dist/esm/{chunk-VA4CTVQL.js.map → chunk-KFR3CK24.js.map} +0 -0
  750. /package/dist/esm/{chunk-P5OSU4NX.js.map → chunk-KMPE7TJ6.js.map} +0 -0
  751. /package/dist/esm/{chunk-WXP6MMUB.js.map → chunk-KOFEFBB3.js.map} +0 -0
  752. /package/dist/esm/{chunk-7ESHXHHO.js.map → chunk-M6DJRFJZ.js.map} +0 -0
  753. /package/dist/esm/{chunk-OYF6YXH7.js.map → chunk-MCPRXVKZ.js.map} +0 -0
  754. /package/dist/esm/{chunk-JBO5YOUM.js.map → chunk-MEO7MJMQ.js.map} +0 -0
  755. /package/dist/esm/{chunk-YVBCDTTD.js.map → chunk-MN3XALXD.js.map} +0 -0
  756. /package/dist/esm/{chunk-F7IYL2VW.js.map → chunk-MS5J4MF6.js.map} +0 -0
  757. /package/dist/esm/{chunk-HW324FK3.js.map → chunk-MTOLKA6S.js.map} +0 -0
  758. /package/dist/esm/{chunk-MBE2YSBU.js.map → chunk-N4GTDLRD.js.map} +0 -0
  759. /package/dist/esm/{chunk-VNPNEJI6.js.map → chunk-OFUNVHZ5.js.map} +0 -0
  760. /package/dist/esm/{chunk-3OBXZUFJ.js.map → chunk-OLAWVEAI.js.map} +0 -0
  761. /package/dist/esm/{chunk-UWT6TE5D.js.map → chunk-OTXCKEWT.js.map} +0 -0
  762. /package/dist/esm/{chunk-UFI53QUC.js.map → chunk-RNTCHVFI.js.map} +0 -0
  763. /package/dist/esm/{chunk-DXL6V2A5.js.map → chunk-SEY4NA45.js.map} +0 -0
  764. /package/dist/esm/{chunk-37OGSEQR.js.map → chunk-VBI3AWPT.js.map} +0 -0
  765. /package/dist/esm/{chunk-56TS6OKQ.js.map → chunk-VHECAEUP.js.map} +0 -0
  766. /package/dist/esm/{chunk-T4UHUQFJ.js.map → chunk-VNH7BJOA.js.map} +0 -0
  767. /package/dist/esm/{chunk-IEWCQU2S.js.map → chunk-VR7ZAFYN.js.map} +0 -0
  768. /package/dist/esm/{chunk-DMJJM5IS.js.map → chunk-W2FOBR5Q.js.map} +0 -0
  769. /package/dist/esm/{chunk-UUUZXUIP.js.map → chunk-WHFJ4JUN.js.map} +0 -0
  770. /package/dist/esm/{chunk-HIKVMKYQ.js.map → chunk-X7V3V3W4.js.map} +0 -0
  771. /package/dist/esm/{chunk-DX5JJYMZ.js.map → chunk-XYVLQDGR.js.map} +0 -0
  772. /package/dist/esm/{chunk-3R7XMRV5.js.map → chunk-Y5RCH23Z.js.map} +0 -0
  773. /package/dist/esm/{chunk-OWAUCLRT.js.map → chunk-YBSRX63K.js.map} +0 -0
  774. /package/dist/esm/{chunk-KPBG7CIL.js.map → chunk-ZO7TTWJI.js.map} +0 -0
  775. /package/dist/esm/props/{high-contrast.prop.js.map → emphasis.prop.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/sidebar.tsx"],
4
+ "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Slot } from './slot.js';\nimport * as Accordion from '@radix-ui/react-accordion';\nimport * as DropdownMenu from './dropdown-menu.js';\nimport * as Popover from './popover.js';\n\nimport { sidebarPropDefs } from './sidebar.props.js';\nimport { useThemeContext } from './theme.js';\n// import { IconButton } from './icon-button.js';\nimport { ScrollArea } from './scroll-area.js';\nimport { Separator } from './separator.js';\nimport { ThickChevronRightIcon } from './icons.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { Kbd } from './kbd.js';\nimport { Badge } from './badge.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\nimport type { BadgeProps } from './badge.js';\n\n// Badge configuration type for sidebar menu buttons\ntype BadgeConfig = {\n content: React.ReactNode;\n variant?: BadgeProps['variant'];\n size?: BadgeProps['size'];\n color?: BadgeProps['color'];\n radius?: BadgeProps['radius'];\n};\n\n// Internal presentational context (not exported) for size/menu variant\ntype SidebarVisualContextValue = {\n size: '1' | '2' | '3';\n menuVariant: 'solid' | 'soft';\n presentation?: 'thin' | 'expanded';\n color?: string;\n};\nconst SidebarVisualContext = React.createContext<SidebarVisualContextValue | null>(null);\nfunction useSidebarVisual() {\n return React.useContext(SidebarVisualContext);\n}\n\n// Sidebar is now independent of Shell - no integration needed\n\n// Main Sidebar component\ntype SidebarOwnProps = GetPropDefTypes<typeof sidebarPropDefs>;\ninterface SidebarProps extends ComponentPropsWithout<'div', RemovedProps>, SidebarOwnProps {\n /**\n * Presentational mode independent of Shell.\n * 'thin' renders a rail-style sidebar, 'expanded' renders a panel-style sidebar.\n * If both `presentation` and `layout` are provided, `presentation` takes precedence.\n */\n presentation?: 'thin' | 'expanded';\n}\n\nconst Sidebar = React.forwardRef<HTMLDivElement, SidebarProps>((props, forwardedRef) => {\n const themeContext = useThemeContext();\n\n const {\n size = sidebarPropDefs.size.default,\n variant = sidebarPropDefs.variant.default,\n menuVariant = sidebarPropDefs.menuVariant.default,\n layout = sidebarPropDefs.layout.default,\n presentation,\n // type = sidebarPropDefs.type.default,\n // side = sidebarPropDefs.side.default,\n // collapsible = sidebarPropDefs.collapsible.default,\n panelBackground,\n color,\n } = props;\n\n const { className, children, ...rootProps } = extractProps(props, sidebarPropDefs);\n // Remove internal-only props from DOM\n const { asChild: _, panelBackground: __, presentation: ___, ...safeRootProps } = rootProps;\n const resolvedColor = color || themeContext.accentColor;\n\n // Resolve layout (default to 'panel'). `presentation` takes precedence over `layout`.\n const resolvedLayout = presentation === 'thin' ? 'rail' : presentation === 'expanded' ? 'panel' : layout || 'panel';\n\n // Update context with current props - we'll pass the resolved values\n const resolvedSize = typeof size === 'object' ? size.initial || '2' : size;\n const visualContextValue = React.useMemo(\n () => ({ size: resolvedSize, menuVariant, presentation, color: resolvedColor }),\n [resolvedSize, menuVariant, presentation, resolvedColor],\n );\n return (\n <div {...safeRootProps} ref={forwardedRef} data-accent-color={resolvedColor} className={classNames('rt-SidebarRoot', className)}>\n <SidebarVisualContext.Provider value={visualContextValue}>\n <div\n className={classNames('rt-SidebarContainer', `rt-variant-${variant}`, `rt-r-size-${resolvedSize}`, `rt-menu-variant-${menuVariant}`, resolvedLayout && `rt-layout-${resolvedLayout}`)}\n data-accent-color={resolvedColor}\n data-panel-background={panelBackground}\n data-presentation={presentation}\n data-layout={resolvedLayout}\n >\n {children}\n </div>\n </SidebarVisualContext.Provider>\n </div>\n );\n});\nSidebar.displayName = 'Sidebar.Root';\n\n// Sidebar content area\ninterface SidebarContentProps extends React.ComponentPropsWithoutRef<'div'> {\n id?: string;\n role?: 'navigation' | 'none';\n 'aria-label'?: string;\n}\n\nconst SidebarContent = React.forwardRef<HTMLDivElement, SidebarContentProps>(\n ({ className, children, role = 'navigation', 'aria-label': ariaLabel = 'Main navigation', id, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const size = visual?.size ?? '2';\n const menuVariant = visual?.menuVariant ?? 'soft';\n\n return (\n <ScrollArea type=\"hover\">\n <div\n {...props}\n ref={forwardedRef}\n id={id}\n role={role}\n aria-label={ariaLabel}\n className={classNames('rt-BaseMenuContent', 'rt-SidebarContent', `rt-r-size-${size}`, `rt-menu-variant-${menuVariant}`, className)}\n >\n <div className=\"rt-BaseMenuViewport\">{children}</div>\n </div>\n </ScrollArea>\n );\n },\n);\nSidebarContent.displayName = 'Sidebar.Content';\n\n// Sidebar header\ninterface SidebarHeaderProps extends React.ComponentPropsWithoutRef<'div'> {\n /**\n * Whether to use the default flex container layout.\n * @default true\n */\n asContainer?: boolean;\n}\n\nconst SidebarHeader = React.forwardRef<HTMLDivElement, SidebarHeaderProps>(({ className, asContainer = true, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const size = visual?.size ?? '2';\n const menuVariant = visual?.menuVariant ?? 'soft';\n\n return (\n <div\n {...props}\n ref={forwardedRef}\n className={classNames(\n 'rt-SidebarHeader',\n `rt-r-size-${size}`,\n `rt-menu-variant-${menuVariant}`,\n {\n 'rt-SidebarHeader--container': asContainer,\n },\n className,\n )}\n />\n );\n});\nSidebarHeader.displayName = 'Sidebar.Header';\n\n// Sidebar footer\ninterface SidebarFooterProps extends React.ComponentPropsWithoutRef<'div'> {\n /**\n * Whether to use the default flex container layout.\n * @default true\n */\n asContainer?: boolean;\n}\n\nconst SidebarFooter = React.forwardRef<HTMLDivElement, SidebarFooterProps>(({ className, asContainer = true, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const size = visual?.size ?? '2';\n const menuVariant = visual?.menuVariant ?? 'soft';\n\n return (\n <div\n {...props}\n ref={forwardedRef}\n className={classNames(\n 'rt-SidebarFooter',\n `rt-r-size-${size}`,\n `rt-menu-variant-${menuVariant}`,\n {\n 'rt-SidebarFooter--container': asContainer,\n },\n className,\n )}\n />\n );\n});\nSidebarFooter.displayName = 'Sidebar.Footer';\n\n// Sidebar trigger button\n// removed Trigger in presentational-only Sidebar\n\n// Removed SidebarInset - not needed\n\n// Sidebar separator\ninterface SidebarSeparatorProps extends ComponentPropsWithout<typeof Separator, RemovedProps> {}\n\nconst SidebarSeparator = React.forwardRef<React.ComponentRef<typeof Separator>, SidebarSeparatorProps>(({ className, ...props }, forwardedRef) => (\n <Separator {...props} ref={forwardedRef} className={classNames('rt-SidebarSeparator', className)} />\n));\nSidebarSeparator.displayName = 'Sidebar.Separator';\n\n// Menu components - reusing dropdown menu structure\ninterface SidebarMenuProps extends React.ComponentPropsWithoutRef<'ul'> {}\n\nconst SidebarMenu = React.forwardRef<HTMLUListElement, SidebarMenuProps>(({ className, ...props }, forwardedRef) => (\n <ul {...props} ref={forwardedRef} role=\"menu\" className={classNames('rt-SidebarMenu', className)} />\n));\nSidebarMenu.displayName = 'Sidebar.Menu';\n\ninterface SidebarMenuItemProps extends React.ComponentPropsWithoutRef<'li'> {}\n\nconst SidebarMenuItem = React.forwardRef<HTMLLIElement, SidebarMenuItemProps>(({ className, ...props }, forwardedRef) => (\n <li {...props} ref={forwardedRef} className={classNames('rt-SidebarMenuItem', className)} />\n));\nSidebarMenuItem.displayName = 'Sidebar.MenuItem';\n\ninterface SidebarMenuButtonProps extends React.ComponentPropsWithoutRef<'button'> {\n asChild?: boolean;\n isActive?: boolean;\n shortcut?: React.ReactNode;\n badge?: string | BadgeConfig;\n}\n\n// Extracted to module scope to avoid re-creation on every render\nfunction separateIconsAndLabels(node: React.ReactNode): { icons: React.ReactNode[]; labels: React.ReactNode[] } {\n const icons: React.ReactNode[] = [];\n const labels: React.ReactNode[] = [];\n\n React.Children.forEach(node, (child) => {\n if (typeof child === 'string' || typeof child === 'number') {\n labels.push(<span key={labels.length} className=\"rt-SidebarMenuLabel\">{child}</span>);\n } else if (React.isValidElement(child)) {\n const el = child as React.ReactElement<any>;\n if (el.type === 'svg' || (el.props && el.props.icon) || (typeof el.type === 'function' && ((el.type as any).displayName?.includes('Icon') || (el.type as any).name?.includes('Icon')))) {\n icons.push(child);\n } else {\n labels.push(child);\n }\n } else if (child) {\n labels.push(child);\n }\n });\n\n return { icons, labels };\n}\n\nfunction wrapTextNodes(node: React.ReactNode): React.ReactNode {\n if (typeof node === 'string' || typeof node === 'number') {\n return <span className=\"rt-SidebarMenuLabel\">{node}</span>;\n }\n if (Array.isArray(node)) {\n return node.map((child, index) => <React.Fragment key={index}>{wrapTextNodes(child)}</React.Fragment>);\n }\n if (React.isValidElement(node)) {\n const el = node as React.ReactElement<any>;\n const className: string = (el.props && (el.props as any).className) || '';\n const isAlreadyLabel = typeof el.type === 'string' && className.split(' ').includes('rt-SidebarMenuLabel');\n if (isAlreadyLabel) return el;\n const newChildren = wrapTextNodes((el.props as any)?.children);\n return React.cloneElement(el, { ...(el.props as any) }, newChildren);\n }\n return node;\n}\n\nconst SidebarMenuButton = React.forwardRef<HTMLButtonElement, SidebarMenuButtonProps>(\n ({ asChild = false, isActive = false, shortcut, badge, className, children, onKeyDown, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const sidebarSize = visual?.size ?? '2';\n const isThinMode = visual?.presentation === 'thin';\n\n const Comp = asChild ? Slot : 'button';\n\n const { onClick } = props;\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLButtonElement>) => {\n switch (event.key) {\n case 'Enter':\n case ' ':\n event.preventDefault();\n if (onClick) onClick(event as any);\n break;\n case 'ArrowDown': {\n event.preventDefault();\n // Focus next menu item\n const nextItem = (event.currentTarget as HTMLElement).nextElementSibling?.querySelector('[role=\"menuitem\"]') as HTMLElement;\n if (nextItem) nextItem.focus();\n break;\n }\n case 'ArrowUp': {\n event.preventDefault();\n // Focus previous menu item\n const prevItem = (event.currentTarget as HTMLElement).previousElementSibling?.querySelector('[role=\"menuitem\"]') as HTMLElement;\n if (prevItem) prevItem.focus();\n break;\n }\n }\n onKeyDown?.(event);\n },\n [onClick, onKeyDown],\n );\n\n // Memoize child processing to avoid re-traversal on every render\n const processedChildren = React.useMemo(() => wrapTextNodes(children), [children]);\n\n // For thin mode, separate icons into a wrapper for targeted background styling\n const { icons, labels } = React.useMemo(\n () => isThinMode ? separateIconsAndLabels(children) : { icons: [] as React.ReactNode[], labels: [] as React.ReactNode[] },\n [isThinMode, children],\n );\n\n // When rendering asChild, Slot expects a single child element. We still want to\n // append optional badge/shortcut inside that element so they render with Link.\n const slottedChildren = React.useMemo(() => {\n if (!asChild) return null;\n try {\n const onlyChild = React.Children.only(processedChildren as React.ReactElement<any>) as React.ReactElement<any>;\n const originalInnerChildren = (onlyChild.props as any)?.children;\n const enhancedInnerChildren = (\n <>\n {originalInnerChildren}\n {badge && (\n <div className=\"rt-SidebarMenuBadge\">\n {typeof badge === 'string' ? (\n <Badge size={sidebarSize} variant=\"soft\">\n {badge}\n </Badge>\n ) : (\n <Badge size={badge.size || sidebarSize} variant={badge.variant || 'soft'} color={badge.color} radius={badge.radius}>\n {badge.content}\n </Badge>\n )}\n </div>\n )}\n {shortcut && (\n <div className=\"rt-BaseMenuShortcut rt-SidebarMenuShortcut\">\n <Kbd size={sidebarSize}>{shortcut}</Kbd>\n </div>\n )}\n </>\n );\n return React.cloneElement(onlyChild, { ...(onlyChild.props as any) }, enhancedInnerChildren);\n } catch {\n // Fallback: if multiple children were passed incorrectly, just return processedChildren\n return processedChildren as React.ReactNode;\n }\n }, [asChild, processedChildren, badge, shortcut, sidebarSize]);\n\n return (\n <Comp\n {...props}\n ref={forwardedRef}\n role=\"menuitem\"\n aria-current={isActive ? 'page' : undefined}\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-SidebarMenuButton', className)}\n data-active={isActive || undefined}\n onKeyDown={handleKeyDown}\n >\n {asChild ? (\n slottedChildren\n ) : isThinMode && icons.length > 0 ? (\n <>\n <span className=\"rt-SidebarMenuIconWrapper\">{icons}</span>\n {labels.map((label, index) => (\n <React.Fragment key={index}>\n {typeof label === 'string' || typeof label === 'number' ? (\n <span className=\"rt-SidebarMenuLabel\">{label}</span>\n ) : (\n label\n )}\n </React.Fragment>\n ))}\n </>\n ) : (\n <>\n {processedChildren}\n {badge && (\n <div className=\"rt-SidebarMenuBadge\">\n {typeof badge === 'string' ? (\n <Badge size={sidebarSize} variant=\"soft\">\n {badge}\n </Badge>\n ) : (\n <Badge size={badge.size || sidebarSize} variant={badge.variant || 'soft'} color={badge.color} radius={badge.radius}>\n {badge.content}\n </Badge>\n )}\n </div>\n )}\n {shortcut && (\n <div className=\"rt-BaseMenuShortcut rt-SidebarMenuShortcut\">\n <Kbd size={sidebarSize}>{shortcut}</Kbd>\n </div>\n )}\n </>\n )}\n </Comp>\n );\n },\n);\nSidebarMenuButton.displayName = 'Sidebar.MenuButton';\n\n// Sub-menu components: Accordion in expanded, Dropdown in thin\nconst SidebarSubMenuModeContext = React.createContext<'accordion' | 'dropdown'>('accordion');\ninterface SidebarMenuSubProps extends React.ComponentPropsWithoutRef<'div'> {\n defaultOpen?: boolean;\n}\n\nconst SidebarMenuSub = React.forwardRef<HTMLDivElement, SidebarMenuSubProps>(({ defaultOpen = false, children, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const mode: 'accordion' | 'dropdown' = visual?.presentation === 'thin' ? 'dropdown' : 'accordion';\n\n if (mode === 'dropdown') {\n return (\n <div {...props} ref={forwardedRef}>\n <DropdownMenu.Root>\n <SidebarSubMenuModeContext.Provider value=\"dropdown\">{children}</SidebarSubMenuModeContext.Provider>\n </DropdownMenu.Root>\n </div>\n );\n }\n\n return (\n <div {...props} ref={forwardedRef}>\n <SidebarSubMenuModeContext.Provider value=\"accordion\">\n <Accordion.Root type=\"single\" collapsible defaultValue={defaultOpen ? 'item' : undefined}>\n <Accordion.Item value=\"item\">{children}</Accordion.Item>\n </Accordion.Root>\n </SidebarSubMenuModeContext.Provider>\n </div>\n );\n});\nSidebarMenuSub.displayName = 'Sidebar.MenuSub';\n\ninterface SidebarMenuSubTriggerProps extends React.ComponentPropsWithoutRef<typeof Accordion.Trigger> {\n asChild?: boolean;\n}\n\nconst SidebarMenuSubTrigger = React.forwardRef<React.ElementRef<typeof Accordion.Trigger>, SidebarMenuSubTriggerProps>(\n ({ asChild = false, className, children, ...props }, forwardedRef) => {\n const mode = React.useContext(SidebarSubMenuModeContext);\n\n if (mode === 'dropdown') {\n return (\n <DropdownMenu.Trigger>\n <button\n {...(props as any)}\n ref={forwardedRef as any}\n type=\"button\"\n role=\"menuitem\"\n aria-haspopup=\"menu\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-SidebarMenuButton', 'rt-SidebarMenuSubTrigger', className)}\n >\n {children}\n </button>\n </DropdownMenu.Trigger>\n );\n }\n\n return (\n <Accordion.Header asChild>\n <div>\n <Accordion.Trigger\n {...props}\n ref={forwardedRef}\n asChild={asChild}\n role=\"menuitem\"\n aria-haspopup=\"true\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-SidebarMenuButton', 'rt-SidebarMenuSubTrigger', className)}\n >\n {asChild ? (\n children\n ) : (\n <>\n {children}\n <ThickChevronRightIcon className={classNames('rt-BaseMenuSubTriggerIcon', 'rt-SidebarMenuSubTriggerIcon')} />\n </>\n )}\n </Accordion.Trigger>\n </div>\n </Accordion.Header>\n );\n },\n);\nSidebarMenuSubTrigger.displayName = 'Sidebar.MenuSubTrigger';\n\ninterface SidebarMenuSubContentProps extends React.ComponentPropsWithoutRef<typeof Accordion.Content> {}\n\nconst SidebarMenuSubContent = React.forwardRef<React.ElementRef<typeof Accordion.Content>, SidebarMenuSubContentProps>(({ className, children, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const mode = React.useContext(SidebarSubMenuModeContext);\n\n if (mode === 'dropdown') {\n const unwrapMenuButton = (node: React.ReactNode): React.ReactNode => {\n if (Array.isArray(node)) {\n return node.map((n, i) => <React.Fragment key={i}>{unwrapMenuButton(n)}</React.Fragment>);\n }\n if (React.isValidElement(node)) {\n const typeDisplay = (node.type as any)?.displayName;\n if (typeDisplay === 'Sidebar.MenuButton') {\n return (node.props as any)?.children;\n }\n const child = (node.props as any)?.children;\n if (child !== undefined) {\n return React.cloneElement(node as any, { ...(node.props as any), children: unwrapMenuButton(child) });\n }\n }\n return node;\n };\n\n const normalized = React.Children.map(children as React.ReactNode, (child, index) => {\n if (React.isValidElement(child) && (child.type as any)?.displayName === 'Sidebar.MenuItem') {\n const itemChildren = (child.props as any)?.children;\n const content = unwrapMenuButton(itemChildren);\n return (\n <DropdownMenu.Item key={index} asChild>\n {content as any}\n </DropdownMenu.Item>\n );\n }\n // Fallback: wrap raw nodes too for consistent menu styling\n return (\n <DropdownMenu.Item key={index} asChild>\n {unwrapMenuButton(child) as any}\n </DropdownMenu.Item>\n );\n });\n\n // DropdownMenu only supports sizes 1 and 2, so map size 3 to 2\n const dropdownSize = visual?.size === '3' ? '2' : visual?.size;\n return (\n <DropdownMenu.Content size={dropdownSize} variant={visual?.menuVariant} className={classNames(className)}>\n <DropdownMenu.Group>{normalized}</DropdownMenu.Group>\n </DropdownMenu.Content>\n );\n }\n\n return (\n <Accordion.Content {...props} ref={forwardedRef} className={classNames('rt-SidebarMenuSubContent', className)}>\n <div className=\"rt-SidebarMenuSubList\">{children}</div>\n </Accordion.Content>\n );\n});\nSidebarMenuSubContent.displayName = 'Sidebar.MenuSubContent';\n\n// Group components\ninterface SidebarGroupProps extends React.ComponentPropsWithoutRef<'div'> {}\n\nconst SidebarGroup = React.forwardRef<HTMLDivElement, SidebarGroupProps>(({ className, ...props }, forwardedRef) => (\n <div {...props} ref={forwardedRef} className={classNames('rt-BaseMenuGroup', 'rt-SidebarGroup', className)} />\n));\nSidebarGroup.displayName = 'Sidebar.Group';\n\ninterface SidebarGroupLabelProps extends React.ComponentPropsWithoutRef<'div'> {\n asChild?: boolean;\n}\n\nconst SidebarGroupLabel = React.forwardRef<HTMLDivElement, SidebarGroupLabelProps>(({ asChild = false, className, ...props }, forwardedRef) => {\n const Comp = asChild ? Slot : 'div';\n\n return <Comp {...props} ref={forwardedRef} role=\"group\" className={classNames('rt-BaseMenuLabel', 'rt-SidebarGroupLabel', className)} />;\n});\nSidebarGroupLabel.displayName = 'Sidebar.GroupLabel';\n\ninterface SidebarGroupContentProps extends React.ComponentPropsWithoutRef<'div'> {}\n\nconst SidebarGroupContent = React.forwardRef<HTMLDivElement, SidebarGroupContentProps>(({ className, ...props }, forwardedRef) => (\n <div {...props} ref={forwardedRef} className={classNames('rt-SidebarGroupContent', className)} />\n));\nSidebarGroupContent.displayName = 'Sidebar.GroupContent';\n\n// Search component: inline input in expanded, popover trigger in thin\ninterface SidebarSearchProps extends React.ComponentPropsWithoutRef<'div'> {\n value: string;\n onValueChange: (value: string) => void;\n placeholder?: string;\n children?: React.ReactNode;\n}\n\nconst SearchIcon = ({ className }: { className?: string }) => (\n <svg className={className} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <circle cx=\"11\" cy=\"11\" r=\"8\" />\n <line x1=\"21\" y1=\"21\" x2=\"16.65\" y2=\"16.65\" />\n </svg>\n);\n\nconst ClearIcon = ({ className }: { className?: string }) => (\n <svg className={className} width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\" aria-hidden=\"true\">\n <line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\" />\n <line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\" />\n </svg>\n);\n\nconst SidebarSearch = React.forwardRef<HTMLDivElement, SidebarSearchProps>(\n ({ value, onValueChange, placeholder = 'Search...', children, className, ...props }, forwardedRef) => {\n const visual = useSidebarVisual();\n const isThin = visual?.presentation === 'thin';\n const inputRef = React.useRef<HTMLInputElement>(null);\n const popoverRef = React.useRef<HTMLDivElement>(null);\n const searchId = React.useId();\n const resultsId = `${searchId}-results`;\n\n // Stable refs for values used in callbacks \u2014 avoids recreating handlers on every keystroke\n const valueRef = React.useRef(value);\n valueRef.current = value;\n const onValueChangeRef = React.useRef(onValueChange);\n onValueChangeRef.current = onValueChange;\n\n // Derive a clean aria-label from placeholder (strip trailing dots/ellipsis)\n const searchLabel = placeholder.replace(/\\.+$/, '');\n\n const handleKeyDown = React.useCallback(\n (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Escape' && valueRef.current) {\n e.preventDefault();\n e.stopPropagation();\n onValueChangeRef.current('');\n inputRef.current?.focus();\n }\n },\n [],\n );\n\n // Arrow key navigation within the popover (input \u2194 results)\n const handlePopoverKeyDown = React.useCallback(\n (e: React.KeyboardEvent<HTMLDivElement>) => {\n const container = popoverRef.current;\n if (!container) return;\n\n const resultsGroup = container.querySelector('[role=\"group\"]');\n if (!resultsGroup) return;\n\n const items = Array.from(\n resultsGroup.querySelectorAll<HTMLElement>('a, button'),\n );\n if (items.length === 0) return;\n\n const active = document.activeElement as HTMLElement;\n const isOnInput = active === inputRef.current;\n const currentIndex = items.indexOf(active);\n\n // Typing while a result is focused \u2192 redirect focus to input\n if (\n e.key.length === 1 &&\n !e.ctrlKey &&\n !e.metaKey &&\n !e.altKey &&\n !isOnInput &&\n currentIndex !== -1\n ) {\n inputRef.current?.focus();\n return;\n }\n\n switch (e.key) {\n case 'ArrowDown': {\n e.preventDefault();\n if (isOnInput || currentIndex === -1) {\n items[0]?.focus();\n } else if (currentIndex < items.length - 1) {\n items[currentIndex + 1]?.focus();\n }\n break;\n }\n case 'ArrowUp': {\n e.preventDefault();\n if (currentIndex <= 0) {\n inputRef.current?.focus();\n } else {\n items[currentIndex - 1]?.focus();\n }\n break;\n }\n case 'Home': {\n // Only intercept when focused on a result, not the input (where Home moves cursor)\n if (!isOnInput) {\n e.preventDefault();\n items[0]?.focus();\n }\n break;\n }\n case 'End': {\n if (!isOnInput) {\n e.preventDefault();\n items[items.length - 1]?.focus();\n }\n break;\n }\n }\n },\n [],\n );\n\n if (isThin) {\n return (\n <div {...props} ref={forwardedRef} className={classNames('rt-SidebarSearch', 'rt-SidebarSearch--thin', className)}>\n <Popover.Root>\n <Popover.Trigger>\n <button\n type=\"button\"\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-SidebarMenuButton', 'rt-SidebarSearchTrigger')}\n aria-label={searchLabel}\n >\n <span className=\"rt-SidebarMenuIconWrapper\">\n <SearchIcon />\n </span>\n <span className=\"rt-SidebarMenuLabel\">Search</span>\n </button>\n </Popover.Trigger>\n <Popover.Content side=\"right\" align=\"start\" size=\"2\" width=\"280px\" aria-label={searchLabel}>\n {/* eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions -- keyDown manages arrow-key navigation between input and results, which is accessibility-enhancing */}\n <div\n ref={popoverRef}\n className=\"rt-SidebarSearchPopover\"\n role=\"search\"\n onKeyDown={handlePopoverKeyDown}\n >\n <div className=\"rt-SidebarSearchInputWrapper\">\n <SearchIcon className=\"rt-SidebarSearchIcon\" />\n <input\n ref={inputRef}\n type=\"search\"\n className=\"rt-SidebarSearchInput\"\n value={value}\n onChange={(e) => onValueChange(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n aria-label={searchLabel}\n aria-controls={children ? resultsId : undefined}\n // eslint-disable-next-line jsx-a11y/no-autofocus -- intentional: popover opens on user action, focusing the input is expected UX\n autoFocus\n />\n {value && (\n <button\n type=\"button\"\n className=\"rt-reset rt-SidebarSearchClear\"\n onClick={() => {\n onValueChange('');\n inputRef.current?.focus();\n }}\n aria-label=\"Clear search\"\n >\n <ClearIcon />\n </button>\n )}\n </div>\n {children && (\n <div id={resultsId} role=\"group\" aria-label=\"Search results\">\n {children}\n </div>\n )}\n </div>\n </Popover.Content>\n </Popover.Root>\n </div>\n );\n }\n\n // Expanded mode: inline input\n return (\n <div {...props} ref={forwardedRef} className={classNames('rt-SidebarSearch', 'rt-SidebarSearch--expanded', className)} role=\"search\">\n <div className=\"rt-SidebarSearchInputWrapper\">\n <SearchIcon className=\"rt-SidebarSearchIcon\" />\n <input\n ref={inputRef}\n type=\"search\"\n className=\"rt-SidebarSearchInput\"\n value={value}\n onChange={(e) => onValueChange(e.target.value)}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n aria-label={searchLabel}\n />\n {value && (\n <button\n type=\"button\"\n className=\"rt-reset rt-SidebarSearchClear\"\n onClick={() => {\n onValueChange('');\n inputRef.current?.focus();\n }}\n aria-label=\"Clear search\"\n >\n <ClearIcon />\n </button>\n )}\n </div>\n </div>\n );\n },\n);\nSidebarSearch.displayName = 'Sidebar.Search';\n\n// Export all components following shadcn's pattern\nexport {\n Sidebar as Root,\n SidebarContent as Content,\n SidebarHeader as Header,\n SidebarFooter as Footer,\n SidebarSeparator as Separator,\n SidebarMenu as Menu,\n SidebarMenuItem as MenuItem,\n SidebarMenuButton as MenuButton,\n SidebarMenuSub as MenuSub,\n SidebarMenuSubTrigger as MenuSubTrigger,\n SidebarMenuSubContent as MenuSubContent,\n SidebarGroup as Group,\n SidebarGroupLabel as GroupLabel,\n SidebarGroupContent as GroupContent,\n SidebarSearch as Search,\n};\n\n/**\n * Enhanced Sidebar Header and Footer Usage Examples:\n *\n * 1. Simple default container (backwards compatible):\n * <Sidebar.Header>\n * <Logo />\n * <span>App Name</span>\n * </Sidebar.Header>\n *\n * 2. Custom flex layout:\n * <Sidebar.Header className=\"rt-justify-between rt-gap-3\">\n * <Logo />\n * <Sidebar.MenuButton>\n * <SettingsIcon />\n * </Sidebar.MenuButton>\n * </Sidebar.Header>\n *\n * 3. Column layout for multiple rows:\n * <Sidebar.Header className=\"rt-flex-col rt-gap-2\" asContainer={false}>\n * <div className=\"rt-flex rt-items-center rt-gap-2\">\n * <Logo />\n * <span>App Name</span>\n * </div>\n * <Sidebar.MenuButton>\n * <UserAvatar />\n * <span>John Doe</span>\n * </Sidebar.MenuButton>\n * </Sidebar.Header>\n *\n * 4. Interactive footer with menu button:\n * <Sidebar.Footer>\n * <Sidebar.MenuButton>\n * <UserIcon />\n * <span>Settings</span>\n * <ChevronUpIcon />\n * </Sidebar.MenuButton>\n * </Sidebar.Footer>\n *\n * 5. Custom footer layout:\n * <Sidebar.Footer className=\"rt-justify-between\">\n * <span>v1.0.0</span>\n * <Sidebar.MenuButton>\n * <HelpIcon />\n * </Sidebar.MenuButton>\n * </Sidebar.Footer>\n *\n * Available utility classes:\n * - Layout: rt-flex-row, rt-flex-col\n * - Alignment: rt-items-center, rt-items-start, rt-items-end\n * - Justification: rt-justify-between, rt-justify-center, rt-justify-start, rt-justify-end\n * - Gap: rt-gap-1, rt-gap-2, rt-gap-3, rt-gap-4\n */\n\nexport type { SidebarProps as RootProps, SidebarContentProps as ContentProps, SidebarHeaderProps as HeaderProps, SidebarFooterProps as FooterProps, BadgeConfig };\n"],
5
+ "mappings": "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",
6
+ "names": ["sidebar_exports", "__export", "SidebarContent", "SidebarFooter", "SidebarGroup", "SidebarGroupContent", "SidebarGroupLabel", "SidebarHeader", "SidebarMenu", "SidebarMenuButton", "SidebarMenuItem", "SidebarMenuSub", "SidebarMenuSubContent", "SidebarMenuSubTrigger", "Sidebar", "SidebarSearch", "SidebarSeparator", "React", "classNames", "Accordion", "SidebarVisualContext", "useSidebarVisual", "Sidebar", "props", "forwardedRef", "themeContext", "useThemeContext", "size", "sidebarPropDefs", "variant", "menuVariant", "layout", "presentation", "panelBackground", "color", "className", "children", "rootProps", "extractProps", "_", "__", "___", "safeRootProps", "resolvedColor", "resolvedLayout", "resolvedSize", "visualContextValue", "classNames", "SidebarContent", "role", "ariaLabel", "id", "visual", "ScrollArea", "SidebarHeader", "asContainer", "SidebarFooter", "SidebarSeparator", "Separator", "SidebarMenu", "SidebarMenuItem", "separateIconsAndLabels", "node", "icons", "labels", "child", "el", "wrapTextNodes", "index", "newChildren", "SidebarMenuButton", "asChild", "isActive", "shortcut", "badge", "onKeyDown", "sidebarSize", "isThinMode", "Comp", "Slot", "onClick", "handleKeyDown", "event", "nextItem", "prevItem", "processedChildren", "slottedChildren", "onlyChild", "originalInnerChildren", "enhancedInnerChildren", "Badge", "Kbd", "label", "SidebarSubMenuModeContext", "SidebarMenuSub", "defaultOpen", "DropdownMenuRoot", "SidebarMenuSubTrigger", "DropdownMenuTrigger", "ThickChevronRightIcon", "SidebarMenuSubContent", "unwrapMenuButton", "n", "i", "normalized", "itemChildren", "content", "DropdownMenuItem", "dropdownSize", "DropdownMenuContent", "DropdownMenuGroup", "SidebarGroup", "SidebarGroupLabel", "SidebarGroupContent", "SearchIcon", "ClearIcon", "SidebarSearch", "value", "onValueChange", "placeholder", "isThin", "inputRef", "popoverRef", "resultsId", "valueRef", "onValueChangeRef", "searchLabel", "e", "handlePopoverKeyDown", "container", "resultsGroup", "items", "active", "isOnInput", "currentIndex", "PopoverRoot", "PopoverTrigger", "PopoverContent"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as s}from"./chunk-FLBLS7M4.js";import{a as C}from"./chunk-H7ST535H.js";import{a as u,b as c}from"./chunk-5T6K7VPP.js";import{a as m}from"./chunk-GSTOGDAJ.js";import{a as i}from"./chunk-6FLLFCBU.js";import{a as N}from"./chunk-OS3FCYZY.js";var g={};N(g,{Icon:()=>f,Root:()=>R,Text:()=>d});import*as o from"react";import p from"classnames";import{Slot as h}from"radix-ui";var P=o.createContext({}),R=o.forwardRef((t,a)=>{let{size:e=s.size.default,live:r="polite",role:x="status",variant:n}=t,{asChild:v,children:y,className:T,color:l,panelBackground:I,material:E,...w}=i(t,s,m),z=v?h.Root:"div";return o.createElement(z,{"data-accent-color":l,"data-panel-background":I,"data-material":E,...w,...{role:x,"aria-live":r,"aria-atomic":!0},className:p("rt-CalloutRoot",T),ref:a},o.createElement(P.Provider,{value:o.useMemo(()=>({size:e,variant:n,color:l}),[e,n,l])},y))});R.displayName="Callout.Root";var f=o.forwardRef(({className:t,...a},e)=>o.createElement("div",{...a,className:p("rt-CalloutIcon",t),ref:e}));f.displayName="Callout.Icon";var d=o.forwardRef(({className:t,...a},e)=>{let{size:r}=o.useContext(P);return o.createElement(C,{as:"p",size:u(r,c),...a,asChild:!1,ref:e,className:p("rt-CalloutText",t)})});d.displayName="Callout.Text";export{R as a,f as b,d as c,g as d};
2
- //# sourceMappingURL=chunk-SPIU5JYC.js.map
1
+ import{a as s}from"./chunk-OGVKSYLL.js";import{a as C}from"./chunk-5WRCK4R7.js";import{a as u,b as c}from"./chunk-5T6K7VPP.js";import{a as m}from"./chunk-GSTOGDAJ.js";import{a as i}from"./chunk-6FLLFCBU.js";import{a as N}from"./chunk-OS3FCYZY.js";var g={};N(g,{Icon:()=>f,Root:()=>R,Text:()=>d});import*as o from"react";import p from"classnames";import{Slot as h}from"radix-ui";var P=o.createContext({}),R=o.forwardRef((t,a)=>{let{size:e=s.size.default,live:r="polite",role:x="status",variant:n}=t,{asChild:v,children:y,className:T,color:l,panelBackground:I,material:E,...w}=i(t,s,m),z=v?h.Root:"div";return o.createElement(z,{"data-accent-color":l,"data-panel-background":I,"data-material":E,...w,...{role:x,"aria-live":r,"aria-atomic":!0},className:p("rt-CalloutRoot",T),ref:a},o.createElement(P.Provider,{value:o.useMemo(()=>({size:e,variant:n,color:l}),[e,n,l])},y))});R.displayName="Callout.Root";var f=o.forwardRef(({className:t,...a},e)=>o.createElement("div",{...a,className:p("rt-CalloutIcon",t),ref:e}));f.displayName="Callout.Icon";var d=o.forwardRef(({className:t,...a},e)=>{let{size:r}=o.useContext(P);return o.createElement(C,{as:"p",size:u(r,c),...a,asChild:!1,ref:e,className:p("rt-CalloutText",t)})});d.displayName="Callout.Text";export{R as a,f as b,d as c,g as d};
2
+ //# sourceMappingURL=chunk-CKMMUHKE.js.map
@@ -1,2 +1,2 @@
1
- import{b as r}from"./chunk-KRJTW535.js";import{c as e}from"./chunk-66ZLZAAJ.js";var a=["1","2","3"],s=["classic","surface","soft","outline","ghost"],n=["none","vertical","horizontal","both"],t=["solid","translucent"],o=["solid","translucent"],f={size:{type:"enum",className:"rt-r-size",values:a,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:s,default:"surface"},resize:{type:"enum",className:"rt-r-resize",values:n,responsive:!0},panelBackground:{type:"enum",values:t,default:void 0},material:{type:"enum",values:o,default:void 0},error:{type:"boolean",default:!1},errorMessage:{type:"string",default:void 0},isInvalid:{type:"boolean",default:!1},required:{type:"boolean",default:!1},"aria-describedby":{type:"string",default:void 0},"aria-labelledby":{type:"string",default:void 0},...e,...r};export{f as a};
2
- //# sourceMappingURL=chunk-SESAEJ6W.js.map
1
+ import{b as r}from"./chunk-KRJTW535.js";import{c as e}from"./chunk-ZNK6AH2G.js";var a=["1","2","3"],s=["classic","surface","soft","outline","ghost"],n=["none","vertical","horizontal","both"],t=["solid","translucent"],o=["solid","translucent"],f={size:{type:"enum",className:"rt-r-size",values:a,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:s,default:"surface"},resize:{type:"enum",className:"rt-r-resize",values:n,responsive:!0},panelBackground:{type:"enum",values:t,default:void 0},material:{type:"enum",values:o,default:void 0},error:{type:"boolean",default:!1},errorMessage:{type:"string",default:void 0},isInvalid:{type:"boolean",default:!1},required:{type:"boolean",default:!1},"aria-describedby":{type:"string",default:void 0},"aria-labelledby":{type:"string",default:void 0},...e,...r};export{f as a};
2
+ //# sourceMappingURL=chunk-CLMOWP5T.js.map
@@ -1,2 +1,2 @@
1
- import{c as e}from"./chunk-66ZLZAAJ.js";var o=["horizontal","vertical"],t=["1","2","3","4"],a={orientation:{type:"enum",className:"rt-r-orientation",values:o,default:"horizontal",responsive:!0},size:{type:"enum",className:"rt-r-size",values:t,default:"1",responsive:!0},color:{...e.color,default:"gray"},decorative:{type:"boolean",default:!0},light:{type:"boolean",className:"rt-light",default:!1}};export{a};
2
- //# sourceMappingURL=chunk-DUHJVT64.js.map
1
+ import{c as e}from"./chunk-ZNK6AH2G.js";var o=["horizontal","vertical"],t=["1","2","3","4"],a={orientation:{type:"enum",className:"rt-r-orientation",values:o,default:"horizontal",responsive:!0},size:{type:"enum",className:"rt-r-size",values:t,default:"1",responsive:!0},color:{...e.color,default:"gray"},decorative:{type:"boolean",default:!0},light:{type:"boolean",className:"rt-light",default:!1}};export{a};
2
+ //# sourceMappingURL=chunk-CRSHBENJ.js.map
@@ -1,2 +1,2 @@
1
- import{a as v}from"./chunk-MHANZINI.js";import{a as C}from"./chunk-TOOSHJOA.js";import{a as g}from"./chunk-MJJ7XDIP.js";import{a as y}from"./chunk-H7ST535H.js";import{a as u}from"./chunk-GCUGJXI2.js";import{c as d}from"./chunk-DXL6V2A5.js";import{a as P}from"./chunk-5TXQLK4G.js";import{a as n}from"./chunk-6FLLFCBU.js";import{a as O}from"./chunk-OS3FCYZY.js";var I={};O(I,{Close:()=>k,Content:()=>E,Description:()=>B,Root:()=>R,Title:()=>h,Trigger:()=>T});import*as e from"react";import S from"classnames";import{Dialog as r}from"radix-ui";var R=t=>e.createElement(r.Root,{...t,modal:!0});R.displayName="Dialog.Root";var T=e.forwardRef(({children:t,...o},a)=>e.createElement(r.Trigger,{...o,ref:a,asChild:!0},g(t)));T.displayName="Dialog.Trigger";var{align:A,panelBackground:K,material:_,...j}=u,q={align:A},z={panelBackground:K},F={material:_},E=e.forwardRef(({align:t,...o},a)=>{let{className:x}=n({align:t},q),{panelBackground:N}=n({panelBackground:o.panelBackground},z),{material:b}=n({material:o.material},F);P(o.panelBackground);let m=b??N,{className:M,forceMount:w,container:H,panelBackground:V,material:$,...W}=n(o,j),c=e.useRef(null),L=e.useMemo(()=>i=>{c.current=i,typeof a=="function"?a(i):a&&(a.current=i)},[a]);return v(),e.useEffect(()=>{if(typeof window>"u")return;let i=c.current;if(!i)return;let l=i.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(l.length===0)return;let p=l[0],D=l[l.length-1],f=s=>{s.key==="Tab"&&(s.shiftKey?document.activeElement===p&&(s.preventDefault(),D.focus()):document.activeElement===D&&(s.preventDefault(),p.focus()))};return i.addEventListener("keydown",f),p.focus(),()=>{i.removeEventListener("keydown",f)}},[]),e.createElement(r.Portal,{container:H,forceMount:w},e.createElement(d,{asChild:!0},e.createElement(r.Overlay,{className:"rt-BaseDialogOverlay rt-DialogOverlay"},e.createElement("div",{className:"rt-BaseDialogScroll rt-DialogScroll"},e.createElement("div",{className:`rt-BaseDialogScrollPadding rt-DialogScrollPadding ${x}`},e.createElement(r.Content,{...W,ref:L,className:S("rt-BaseDialogContent","rt-DialogContent",M),"data-material":m,"data-panel-background":m,tabIndex:-1,role:"dialog","aria-modal":"true",onCloseAutoFocus:i=>{i.preventDefault(),document.body.style.pointerEvents=""}}),e.createElement("div",{"aria-live":"polite","aria-atomic":"true",className:"rt-sr-only",id:"dialog-announcement"}))))))});E.displayName="Dialog.Content";var h=e.forwardRef((t,o)=>e.createElement(r.Title,{asChild:!0},e.createElement(C,{size:"5",mb:"3",trim:"start",...t,asChild:!1,ref:o})));h.displayName="Dialog.Title";var B=e.forwardRef((t,o)=>e.createElement(r.Description,{asChild:!0},e.createElement(y,{as:"p",size:"3",...t,asChild:!1,ref:o})));B.displayName="Dialog.Description";var k=e.forwardRef(({children:t,...o},a)=>e.createElement(r.Close,{...o,ref:a,asChild:!0},g(t)));k.displayName="Dialog.Close";export{R as a,T as b,E as c,h as d,B as e,k as f,I as g};
2
- //# sourceMappingURL=chunk-L6PVH3RM.js.map
1
+ import{a as v}from"./chunk-MHANZINI.js";import{a as C}from"./chunk-GO7OHBHW.js";import{a as g}from"./chunk-MJJ7XDIP.js";import{a as y}from"./chunk-5WRCK4R7.js";import{a as u}from"./chunk-GCUGJXI2.js";import{c as d}from"./chunk-SEY4NA45.js";import{a as P}from"./chunk-5TXQLK4G.js";import{a as n}from"./chunk-6FLLFCBU.js";import{a as O}from"./chunk-OS3FCYZY.js";var I={};O(I,{Close:()=>k,Content:()=>E,Description:()=>B,Root:()=>R,Title:()=>h,Trigger:()=>T});import*as e from"react";import S from"classnames";import{Dialog as r}from"radix-ui";var R=t=>e.createElement(r.Root,{...t,modal:!0});R.displayName="Dialog.Root";var T=e.forwardRef(({children:t,...o},a)=>e.createElement(r.Trigger,{...o,ref:a,asChild:!0},g(t)));T.displayName="Dialog.Trigger";var{align:A,panelBackground:K,material:_,...j}=u,q={align:A},z={panelBackground:K},F={material:_},E=e.forwardRef(({align:t,...o},a)=>{let{className:x}=n({align:t},q),{panelBackground:N}=n({panelBackground:o.panelBackground},z),{material:b}=n({material:o.material},F);P(o.panelBackground);let m=b??N,{className:M,forceMount:w,container:H,panelBackground:V,material:$,...W}=n(o,j),c=e.useRef(null),L=e.useMemo(()=>i=>{c.current=i,typeof a=="function"?a(i):a&&(a.current=i)},[a]);return v(),e.useEffect(()=>{if(typeof window>"u")return;let i=c.current;if(!i)return;let l=i.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');if(l.length===0)return;let p=l[0],D=l[l.length-1],f=s=>{s.key==="Tab"&&(s.shiftKey?document.activeElement===p&&(s.preventDefault(),D.focus()):document.activeElement===D&&(s.preventDefault(),p.focus()))};return i.addEventListener("keydown",f),p.focus(),()=>{i.removeEventListener("keydown",f)}},[]),e.createElement(r.Portal,{container:H,forceMount:w},e.createElement(d,{asChild:!0},e.createElement(r.Overlay,{className:"rt-BaseDialogOverlay rt-DialogOverlay"},e.createElement("div",{className:"rt-BaseDialogScroll rt-DialogScroll"},e.createElement("div",{className:`rt-BaseDialogScrollPadding rt-DialogScrollPadding ${x}`},e.createElement(r.Content,{...W,ref:L,className:S("rt-BaseDialogContent","rt-DialogContent",M),"data-material":m,"data-panel-background":m,tabIndex:-1,role:"dialog","aria-modal":"true",onCloseAutoFocus:i=>{i.preventDefault(),document.body.style.pointerEvents=""}}),e.createElement("div",{"aria-live":"polite","aria-atomic":"true",className:"rt-sr-only",id:"dialog-announcement"}))))))});E.displayName="Dialog.Content";var h=e.forwardRef((t,o)=>e.createElement(r.Title,{asChild:!0},e.createElement(C,{size:"5",mb:"3",trim:"start",...t,asChild:!1,ref:o})));h.displayName="Dialog.Title";var B=e.forwardRef((t,o)=>e.createElement(r.Description,{asChild:!0},e.createElement(y,{as:"p",size:"3",...t,asChild:!1,ref:o})));B.displayName="Dialog.Description";var k=e.forwardRef(({children:t,...o},a)=>e.createElement(r.Close,{...o,ref:a,asChild:!0},g(t)));k.displayName="Dialog.Close";export{R as a,T as b,E as c,h as d,B as e,k as f,I as g};
2
+ //# sourceMappingURL=chunk-DSJY5RI3.js.map
@@ -0,0 +1,2 @@
1
+ import{b as o}from"./chunk-KRJTW535.js";import{c as e}from"./chunk-ZNK6AH2G.js";var a=["1","2","3"],l={size:{type:"enum",className:"rt-r-size",values:a,default:"2",responsive:!0}},t=["classic","surface","soft","outline","ghost"],p={variant:{type:"enum",className:"rt-variant",values:t,default:"surface"},panelBackground:{type:"enum",className:"rt-panel-background",values:["solid","translucent"]},error:{type:"boolean"},loading:{type:"boolean"},disabled:{type:"boolean"},readOnly:{type:"boolean"},...e,...o,placeholder:{type:"ReactNode"}},r=["solid","soft"],i={variant:{type:"enum",className:"rt-variant",values:r,default:"solid"},...e};export{l as a,p as b,i as c};
2
+ //# sourceMappingURL=chunk-EBQZ3Z22.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/select.props.tsx"],
4
+ "sourcesContent": ["import type React from 'react';\n\nimport { colorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3'] as const;\n\nconst selectRootPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n};\n\nconst triggerVariants = ['classic', 'surface', 'soft', 'outline', 'ghost'] as const;\n\nconst selectTriggerPropDefs = {\n variant: { type: 'enum', className: 'rt-variant', values: triggerVariants, default: 'surface' },\n panelBackground: {\n type: 'enum',\n className: 'rt-panel-background',\n values: ['solid', 'translucent'],\n },\n error: { type: 'boolean' },\n loading: { type: 'boolean' },\n disabled: { type: 'boolean' },\n readOnly: { type: 'boolean' },\n ...colorPropDef,\n ...radiusPropDef,\n placeholder: { type: 'ReactNode' },\n} satisfies {\n variant: PropDef<(typeof triggerVariants)[number]>;\n panelBackground: PropDef<'solid' | 'translucent'>;\n error: PropDef<boolean>;\n loading: PropDef<boolean>;\n disabled: PropDef<boolean>;\n readOnly: PropDef<boolean>;\n placeholder: PropDef<React.ReactNode>;\n};\n\nconst contentVariants = ['solid', 'soft'] as const;\n\nconst selectContentPropDefs = {\n variant: { type: 'enum', className: 'rt-variant', values: contentVariants, default: 'solid' },\n ...colorPropDef,\n} satisfies {\n variant: PropDef<(typeof contentVariants)[number]>;\n};\n\nexport { selectRootPropDefs, selectTriggerPropDefs, selectContentPropDefs };\n"],
5
+ "mappings": "gFAOA,IAAMA,EAAQ,CAAC,IAAK,IAAK,GAAG,EAEtBC,EAAqB,CACzB,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQD,EAAO,QAAS,IAAK,WAAY,EAAK,CAC9F,EAIME,EAAkB,CAAC,UAAW,UAAW,OAAQ,UAAW,OAAO,EAEnEC,EAAwB,CAC5B,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQD,EAAiB,QAAS,SAAU,EAC9F,gBAAiB,CACf,KAAM,OACN,UAAW,sBACX,OAAQ,CAAC,QAAS,aAAa,CACjC,EACA,MAAO,CAAE,KAAM,SAAU,EACzB,QAAS,CAAE,KAAM,SAAU,EAC3B,SAAU,CAAE,KAAM,SAAU,EAC5B,SAAU,CAAE,KAAM,SAAU,EAC5B,GAAGE,EACH,GAAGC,EACH,YAAa,CAAE,KAAM,WAAY,CACnC,EAUMC,EAAkB,CAAC,QAAS,MAAM,EAElCC,EAAwB,CAC5B,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQD,EAAiB,QAAS,OAAQ,EAC5F,GAAGF,CACL",
6
+ "names": ["sizes", "selectRootPropDefs", "triggerVariants", "selectTriggerPropDefs", "colorPropDef", "radiusPropDef", "contentVariants", "selectContentPropDefs"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{b as E,d as L}from"./chunk-37OGSEQR.js";import{b as N}from"./chunk-DXL6V2A5.js";import*as e from"react";import S from"classnames";import{useVirtualizer as J}from"@tanstack/react-virtual";var Q=e.memo(function({label:r,isHighlighted:o,id:u,style:x,tabIndex:y,"data-highlighted":m,"data-index":p,onMouseEnter:f,onMouseLeave:v,onClick:h,onKeyDown:g}){return e.createElement("div",{id:u,role:"menuitem",className:S("rt-reset","rt-BaseMenuItem","rt-VirtualMenuItem"),style:x,tabIndex:y,"data-highlighted":m,"data-index":p,onMouseEnter:f,onMouseLeave:v,onClick:h,onKeyDown:g},r)},(n,r)=>!(n.label!==r.label||n["data-highlighted"]!==r["data-highlighted"]||n.style.height!==r.style.height||n.style.transform!==r.style.transform||n.tabIndex!==r.tabIndex||n.id!==r.id));function w({items:n,itemLabel:r,renderItem:o,size:u,estimatedItemSize:x,overscan:y=5,onSelect:m,className:p,style:f,"aria-label":v}){let h=e.useId(),g=e.useRef(null),[T,l]=e.useState(-1),{isInsideMenu:K,size:P,itemHeight:$}=L(),{scaling:k}=N(),I=x??(u?E(u,k):$??E(P??"2",k));if(!r&&!o)throw new Error("VirtualMenu requires either itemLabel or renderItem prop");let A=e.useMemo(()=>r?typeof r=="function"?r:t=>t[r]:null,[r]),c=e.useMemo(()=>n.length===0||T<0?-1:Math.min(T,n.length-1),[T,n.length]),B=e.useMemo(()=>typeof I=="function"?I:()=>I,[I]),M=J({count:n.length,getScrollElement:()=>g.current,estimateSize:B,overscan:y}),j=M.getVirtualItems(),R=e.useRef(n),b=e.useRef(m);R.current=n,b.current=m;let d=e.useRef(M.scrollToIndex);d.current=M.scrollToIndex;let H=e.useRef(c);H.current=c;let q=e.useCallback(t=>{let s=t.currentTarget.dataset.index;s!=null&&l(Number(s))},[]),O=e.useCallback(t=>{let s=t.currentTarget.dataset.index;if(s!=null){let a=Number(s),i=R.current;a>=0&&a<i.length&&b.current?.(i[a],a)}},[]),U=e.useCallback(()=>{},[]),W=e.useCallback(t=>{if(t.key==="Enter"||t.key===" "){t.preventDefault();let s=t.currentTarget.dataset.index;if(s!=null){let a=Number(s),i=R.current;a>=0&&a<i.length&&b.current?.(i[a],a)}}},[]),Y=e.useCallback(t=>{let s=R.current,a=H.current;switch(t.key){case"ArrowDown":{t.preventDefault();let i=a<s.length-1?a+1:0;l(i),d.current(i,{align:"auto"});break}case"ArrowUp":{t.preventDefault();let i=a>0?a-1:s.length-1;l(i),d.current(i,{align:"auto"});break}case"Home":{t.preventDefault(),l(0),d.current(0,{align:"start"});break}case"End":{t.preventDefault();let i=s.length-1;l(i),d.current(i,{align:"end"});break}case"Enter":case" ":{t.preventDefault(),a>=0&&a<s.length&&b.current?.(s[a],a);break}case"Tab":{t.preventDefault();break}case"Escape":{t.currentTarget.blur();break}}},[]),V=e.useCallback(t=>`${h}-item-${t}`,[h]),_=e.useMemo(()=>({overflow:"auto",position:"relative",...f}),[f]),C=M.getTotalSize(),F=e.useMemo(()=>({height:`${C}px`,width:"100%",position:"relative"}),[C]);return e.createElement("div",{ref:g,role:K?"group":"menu","aria-label":v,"aria-activedescendant":c>=0?V(c):void 0,tabIndex:0,onKeyDown:Y,className:S("rt-VirtualMenuRoot",p),style:_},e.createElement("div",{className:"rt-VirtualMenuViewport",style:F},j.map(t=>{let s=n[t.index],a=t.index,i=c===a,G={height:t.size,transform:`translateY(${t.start}px)`},D={id:V(a),isHighlighted:i,style:G,tabIndex:i?0:-1,"data-highlighted":i?!0:void 0,"data-index":a,onMouseEnter:q,onMouseLeave:U,onClick:O,onKeyDown:W};return o?e.createElement(o,{key:t.key,item:s,index:a,...D}):e.createElement(Q,{key:t.key,label:A(s),...D})})))}w.displayName="VirtualMenu";var z=e.forwardRef(({className:n,children:r,...o},u)=>e.createElement("div",{ref:u,role:"menuitem",className:S("rt-reset","rt-BaseMenuItem","rt-VirtualMenuItem",n),...o},r));z.displayName="VirtualMenu.Item";var X=e.memo(z,(n,r)=>{let o=n.style,u=r.style;return!(o?.height!==u?.height||o?.transform!==u?.transform||n["data-highlighted"]!==r["data-highlighted"]||n.tabIndex!==r.tabIndex||n.id!==r.id||n.className!==r.className||n.children!==r.children)}),re=Object.assign(w,{Item:X});export{re as a};
2
- //# sourceMappingURL=chunk-ADBLURLJ.js.map
1
+ import{b as E,d as L}from"./chunk-VBI3AWPT.js";import{b as N}from"./chunk-SEY4NA45.js";import*as e from"react";import S from"classnames";import{useVirtualizer as J}from"@tanstack/react-virtual";var Q=e.memo(function({label:r,isHighlighted:o,id:u,style:x,tabIndex:y,"data-highlighted":m,"data-index":p,onMouseEnter:f,onMouseLeave:v,onClick:h,onKeyDown:g}){return e.createElement("div",{id:u,role:"menuitem",className:S("rt-reset","rt-BaseMenuItem","rt-VirtualMenuItem"),style:x,tabIndex:y,"data-highlighted":m,"data-index":p,onMouseEnter:f,onMouseLeave:v,onClick:h,onKeyDown:g},r)},(n,r)=>!(n.label!==r.label||n["data-highlighted"]!==r["data-highlighted"]||n.style.height!==r.style.height||n.style.transform!==r.style.transform||n.tabIndex!==r.tabIndex||n.id!==r.id));function w({items:n,itemLabel:r,renderItem:o,size:u,estimatedItemSize:x,overscan:y=5,onSelect:m,className:p,style:f,"aria-label":v}){let h=e.useId(),g=e.useRef(null),[T,l]=e.useState(-1),{isInsideMenu:K,size:P,itemHeight:$}=L(),{scaling:k}=N(),I=x??(u?E(u,k):$??E(P??"2",k));if(!r&&!o)throw new Error("VirtualMenu requires either itemLabel or renderItem prop");let A=e.useMemo(()=>r?typeof r=="function"?r:t=>t[r]:null,[r]),c=e.useMemo(()=>n.length===0||T<0?-1:Math.min(T,n.length-1),[T,n.length]),B=e.useMemo(()=>typeof I=="function"?I:()=>I,[I]),M=J({count:n.length,getScrollElement:()=>g.current,estimateSize:B,overscan:y}),j=M.getVirtualItems(),R=e.useRef(n),b=e.useRef(m);R.current=n,b.current=m;let d=e.useRef(M.scrollToIndex);d.current=M.scrollToIndex;let H=e.useRef(c);H.current=c;let q=e.useCallback(t=>{let s=t.currentTarget.dataset.index;s!=null&&l(Number(s))},[]),O=e.useCallback(t=>{let s=t.currentTarget.dataset.index;if(s!=null){let a=Number(s),i=R.current;a>=0&&a<i.length&&b.current?.(i[a],a)}},[]),U=e.useCallback(()=>{},[]),W=e.useCallback(t=>{if(t.key==="Enter"||t.key===" "){t.preventDefault();let s=t.currentTarget.dataset.index;if(s!=null){let a=Number(s),i=R.current;a>=0&&a<i.length&&b.current?.(i[a],a)}}},[]),Y=e.useCallback(t=>{let s=R.current,a=H.current;switch(t.key){case"ArrowDown":{t.preventDefault();let i=a<s.length-1?a+1:0;l(i),d.current(i,{align:"auto"});break}case"ArrowUp":{t.preventDefault();let i=a>0?a-1:s.length-1;l(i),d.current(i,{align:"auto"});break}case"Home":{t.preventDefault(),l(0),d.current(0,{align:"start"});break}case"End":{t.preventDefault();let i=s.length-1;l(i),d.current(i,{align:"end"});break}case"Enter":case" ":{t.preventDefault(),a>=0&&a<s.length&&b.current?.(s[a],a);break}case"Tab":{t.preventDefault();break}case"Escape":{t.currentTarget.blur();break}}},[]),V=e.useCallback(t=>`${h}-item-${t}`,[h]),_=e.useMemo(()=>({overflow:"auto",position:"relative",...f}),[f]),C=M.getTotalSize(),F=e.useMemo(()=>({height:`${C}px`,width:"100%",position:"relative"}),[C]);return e.createElement("div",{ref:g,role:K?"group":"menu","aria-label":v,"aria-activedescendant":c>=0?V(c):void 0,tabIndex:0,onKeyDown:Y,className:S("rt-VirtualMenuRoot",p),style:_},e.createElement("div",{className:"rt-VirtualMenuViewport",style:F},j.map(t=>{let s=n[t.index],a=t.index,i=c===a,G={height:t.size,transform:`translateY(${t.start}px)`},D={id:V(a),isHighlighted:i,style:G,tabIndex:i?0:-1,"data-highlighted":i?!0:void 0,"data-index":a,onMouseEnter:q,onMouseLeave:U,onClick:O,onKeyDown:W};return o?e.createElement(o,{key:t.key,item:s,index:a,...D}):e.createElement(Q,{key:t.key,label:A(s),...D})})))}w.displayName="VirtualMenu";var z=e.forwardRef(({className:n,children:r,...o},u)=>e.createElement("div",{ref:u,role:"menuitem",className:S("rt-reset","rt-BaseMenuItem","rt-VirtualMenuItem",n),...o},r));z.displayName="VirtualMenu.Item";var X=e.memo(z,(n,r)=>{let o=n.style,u=r.style;return!(o?.height!==u?.height||o?.transform!==u?.transform||n["data-highlighted"]!==r["data-highlighted"]||n.tabIndex!==r.tabIndex||n.id!==r.id||n.className!==r.className||n.children!==r.children)}),re=Object.assign(w,{Item:X});export{re as a};
2
+ //# sourceMappingURL=chunk-ECXGQQJB.js.map
@@ -0,0 +1,2 @@
1
+ import{b as r}from"./chunk-KRJTW535.js";import{a as e}from"./chunk-NZJGC6ZW.js";import{c as o}from"./chunk-ZNK6AH2G.js";var a=["1","2","3","4"],n=["classic","soft","surface","outline","ghost"],s=["solid","translucent"],f={...e,size:{type:"enum",className:"rt-r-size",values:a,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:n,default:"surface"},...o,...r,material:{type:"enum",values:s,default:void 0},panelBackground:{type:"enum",values:s,default:void 0},flush:{type:"boolean",default:!1}},l={...e},c={...e},d={...e},u={...e};export{f as a,l as b,c,d,u as e};
2
+ //# sourceMappingURL=chunk-EDKQURDU.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/accordion.props.tsx"],
4
+ "sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { colorPropDef } from '../props/color.prop.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\nconst variants = ['classic', 'soft', 'surface', 'outline', 'ghost'] as const;\nconst panelBackgrounds = ['solid', 'translucent'] as const;\n\nconst accordionRootPropDefs = {\n ...asChildPropDef,\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'surface' },\n ...colorPropDef,\n ...radiusPropDef,\n material: { type: 'enum', values: panelBackgrounds, default: undefined },\n /**\n * @deprecated Use `material` prop instead. This prop will be removed in a future version.\n */\n panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\n flush: { type: 'boolean', default: false },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n material: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n flush: PropDef<boolean>;\n};\n\nconst accordionItemPropDefs = {\n ...asChildPropDef,\n} satisfies {\n asChild: PropDef<boolean>;\n};\n\nconst accordionHeaderPropDefs = {\n ...asChildPropDef,\n} satisfies {\n asChild: PropDef<boolean>;\n};\n\nconst accordionTriggerPropDefs = {\n ...asChildPropDef,\n} satisfies {\n asChild: PropDef<boolean>;\n};\n\nconst accordionContentPropDefs = {\n ...asChildPropDef,\n} satisfies {\n asChild: PropDef<boolean>;\n};\n\nexport {\n accordionRootPropDefs,\n accordionItemPropDefs,\n accordionHeaderPropDefs,\n accordionTriggerPropDefs,\n accordionContentPropDefs,\n};\n\nexport type AccordionRootOwnProps = {\n size?: (typeof sizes)[number];\n variant?: (typeof variants)[number];\n color?: string;\n radius?: string;\n material?: (typeof panelBackgrounds)[number];\n panelBackground?: (typeof panelBackgrounds)[number];\n flush?: boolean;\n};\n\nexport type AccordionItemOwnProps = {\n asChild?: boolean;\n};\n\nexport type AccordionHeaderOwnProps = {\n asChild?: boolean;\n};\n\nexport type AccordionTriggerOwnProps = {\n asChild?: boolean;\n};\n\nexport type AccordionContentOwnProps = {\n asChild?: boolean;\n};\n"],
5
+ "mappings": "wHAMA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAC3BC,EAAW,CAAC,UAAW,OAAQ,UAAW,UAAW,OAAO,EAC5DC,EAAmB,CAAC,QAAS,aAAa,EAE1CC,EAAwB,CAC5B,GAAGC,EACH,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQJ,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,GAAGI,EACH,GAAGC,EACH,SAAU,CAAE,KAAM,OAAQ,OAAQJ,EAAkB,QAAS,MAAU,EAIvE,gBAAiB,CAAE,KAAM,OAAQ,OAAQA,EAAkB,QAAS,MAAU,EAC9E,MAAO,CAAE,KAAM,UAAW,QAAS,EAAM,CAC3C,EAQMK,EAAwB,CAC5B,GAAGH,CACL,EAIMI,EAA0B,CAC9B,GAAGJ,CACL,EAIMK,EAA2B,CAC/B,GAAGL,CACL,EAIMM,EAA2B,CAC/B,GAAGN,CACL",
6
+ "names": ["sizes", "variants", "panelBackgrounds", "accordionRootPropDefs", "asChildPropDef", "colorPropDef", "radiusPropDef", "accordionItemPropDefs", "accordionHeaderPropDefs", "accordionTriggerPropDefs", "accordionContentPropDefs"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as ze}from"./chunk-2LYX5S7H.js";import{a as ce,c as ue,d as fe}from"./chunk-LAOMR7SE.js";import{a as ye,c as Pe}from"./chunk-5LXFJMFB.js";import{h as pe,n as be,p as Se,r as me,t as Re,v as he}from"./chunk-SNHEJU2S.js";import{a as ge,c as E}from"./chunk-TLWTUKKL.js";import{b as ve}from"./chunk-CECQNGUL.js";import{a as Me}from"./chunk-NNO7M466.js";import{a as le}from"./chunk-AGAQC4HH.js";import*as t from"react";import qe from"classnames";var Ke=["className","children","state","defaultState","onStateChange","thinSize","toggleModes","size","defaultSize","onSizeChange","sizeUpdate","sizeUpdateMs","style","inset"],Ce=t.forwardRef((_,S)=>{let{className:xe,presentation:Ee={initial:"overlay",md:"fixed"},expandedSize:d=288,minSize:l=200,maxSize:c=400,resizable:w=!1,collapsible:we=!0,onExpand:W,onCollapse:j,onResize:T,onResizeStart:Te,onResizeEnd:ke,snapPoints:Ne,snapTolerance:De,collapseThreshold:Ve,paneId:k,persistence:N,children:Ie,style:He,thinSize:p=64,toggleModes:R,state:u,defaultState:h,onStateChange:F,size:q,defaultSize:K,onSizeChange:D,sizeUpdate:V,sizeUpdateMs:I=50,inset:H}=_,Oe=ve(_,Ke),{sidebarMode:a,setSidebarMode:O}=pe(),{currentBreakpointReady:m}=be(),{peekTarget:$}=Se(),{togglePane:$e,setSidebarToggleComputer:y}=me(),{setHasSidebar:L}=Re(),{registerInset:Y,unregisterInset:G}=he();t.useLayoutEffect(()=>{if(H)return Y("sidebar"),()=>G("sidebar")},[H,Y,G]);let U=ye(Ee),b=U==="overlay",Le=U==="stacked",s=t.useRef(null),Ue=t.useCallback(e=>{s.current=e,typeof S=="function"?S(e):S&&(S.current=e)},[S]),J=t.Children.toArray(Ie),Q=J.filter(e=>t.isValidElement(e)&&e.type===E),X=J.filter(e=>!(t.isValidElement(e)&&e.type===E)),f=t.useRef(null);t.useEffect(()=>()=>{f.current&&(clearTimeout(f.current),f.current=null)},[D,V,I]);let P=t.useMemo(()=>{let e=D,n=V,r=I??50;if(!e)return()=>{};if(n==="debounce")return(o,i)=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{e(o,i),f.current=null},r)};if(n==="throttle"){let o=0;return(i,Fe)=>{let de=Date.now();de-o>=r&&(o=de,e(i,Fe))}}return(o,i)=>e(o,i)},[D,V,I]),Ae=t.useId();t.useEffect(()=>(L(!0),()=>{L(!1)}),[L,Ae]);let M=t.useRef(null);t.useEffect(()=>{let e=typeof u<"u";if(M.current===null){M.current=e;return}M.current!==e&&(console.warn("Shell.Sidebar: Switching between controlled and uncontrolled `state` is not supported."),M.current=e)},[u]);let g=t.useRef(F),Z=t.useRef(u);t.useLayoutEffect(()=>{g.current=F,Z.current=u});let Be=typeof u=="object"&&u!==null,{resolvedControlled:v,resolvedDefault:ee}=Pe({controlledValue:u,defaultValue:h,currentValue:a,setValue:O,breakpointReady:m,controlledIsResponsive:Be,onResponsiveChange:e=>g.current?.(e,{reason:"responsive"}),onInit:e=>g.current?.(e,{reason:"init"})}),te=t.useRef(null),ne=t.useRef(void 0);t.useEffect(()=>{let e=a,n=te.current,o=ne.current!==v;n!==null&&n!==e&&(!(typeof Z.current<"u")||!o&&e!==v)&&g.current?.(e,{reason:"toggle"}),te.current=e,ne.current=v},[a,v]);let re=t.useRef(W),oe=t.useRef(j);t.useLayoutEffect(()=>{re.current=W,oe.current=j});let z=t.useRef(null),ae=t.useRef(!1);t.useEffect(()=>{let e=a;if(!m){z.current=e;return}if(!ae.current){ae.current=!0,z.current=e;return}let n=z.current;n!==null&&n!==e&&(n==="collapsed"&&e!=="collapsed"?re.current?.():e==="collapsed"&&oe.current?.(),z.current=e)},[a,m]);let se=a!=="collapsed",C=t.useMemo(()=>{if(!k||N)return N;let e=`kookie-ui:shell:sidebar:${k}`;return{load:()=>{if(!(typeof window>"u"))try{let r=window.localStorage.getItem(e);return r?Number(r):void 0}catch{return}},save:r=>{if(!(typeof window>"u"))try{window.localStorage.setItem(e,String(r))}catch{}}}},[k,N]);t.useEffect(()=>{let e=!0;return(async()=>{if(!w||!C?.load||b)return;let n=await C.load();e&&typeof n=="number"&&s.current&&(s.current.style.setProperty("--sidebar-size",`${n}px`),T?.(n))})(),()=>{e=!1}},[w,C,T,b]);let x=t.useCallback(()=>{let e=ee??(typeof h=="string"?h:void 0)??"expanded";return e==="thin"||e==="expanded"?e:"expanded"},[ee,h]);t.useEffect(()=>{if(!y)return;let e=R??"both";return y(r=>{if(e==="both")return r==="collapsed"?"thin":r==="thin"?"expanded":"collapsed";let o=x();return r==="collapsed"?o:r===o?"collapsed":o}),()=>{y?.(r=>r==="collapsed"?"thin":r==="thin"?"expanded":"collapsed")}},[y,R,x]);let ie=t.useRef(d),_e=t.useRef("expanded");t.useEffect(()=>{a!=="collapsed"&&(_e.current=a,ie.current=a==="thin"?p:d)},[a,p,d]);let We=w&&!b&&a==="expanded"?t.createElement(Me.Provider,{value:{containerRef:s,cssVarName:"--sidebar-size",minSize:l,maxSize:c,defaultSize:d,orientation:"vertical",edge:"end",computeNext:(e,n,r)=>{let o=getComputedStyle(s.current).direction==="rtl",i=e-n;return r+(o?-i:i)},onResize:T,onResizeStart:Te,onResizeEnd:e=>{ke?.(e),P(e,{reason:"resize"}),C?.save?.(e)},target:"sidebar",collapsible:we,snapPoints:Ne,snapTolerance:De??8,collapseThreshold:Ve,requestCollapse:()=>O("collapsed"),requestToggle:()=>$e("sidebar")}},Q.length>0?Q.map((e,n)=>t.cloneElement(e,{key:e.key??n})):t.createElement(ge,null)):null,A=t.useCallback(e=>ze(e,"horizontal"),[]);t.useEffect(()=>{if(s.current&&typeof q>"u"&&typeof K<"u"){let e=A(K);if(typeof e=="number"&&Number.isFinite(e)){let o=Math.min((typeof c=="number"?c:void 0)??e,Math.max((typeof l=="number"?l:void 0)??e,e));s.current.style.setProperty("--sidebar-size",`${o}px`),P(o,{reason:"init"})}}},[]);let B=q;t.useEffect(()=>{if(!s.current||typeof B>"u")return;let e=A(B);if(typeof e=="number"&&Number.isFinite(e)){let o=Math.min((typeof c=="number"?c:void 0)??e,Math.max((typeof l=="number"?l:void 0)??e,e));s.current.style.setProperty("--sidebar-size",`${o}px`),P(o,{reason:"controlled"})}},[B,l,c,A,P]);let je=t.useMemo(()=>{if(!($==="sidebar"&&a==="collapsed"&&!b))return;let e=R??"both",n=a,r;if(e==="both")r=n==="collapsed"?"thin":n==="thin"?"expanded":"collapsed";else{let o=x();r=n==="collapsed"?o:"collapsed"}return r==="thin"?{"--peek-sidebar-width":`${p}px`}:{"--peek-sidebar-width":`var(--sidebar-size, ${d}px)`}},[$,a,b,R,x,p,d]);if(b){let e=a!=="collapsed";return t.createElement(ce,{open:e,onOpenChange:n=>O(n?"expanded":"collapsed")},t.createElement(ue,{side:"start",style:{padding:0},"aria-label":"Navigation","aria-describedby":void 0,width:{initial:`${e?a==="thin"?p:d:ie.current}px`}},t.createElement(le,null,t.createElement(fe,null,"Navigation")),X))}return t.createElement("div",{...Oe,ref:Ue,className:qe("rt-ShellSidebar",xe),"data-mode":a,"data-peek":$==="sidebar"||void 0,"data-presentation":m?U:void 0,"data-open":m&&Le&&se||void 0,"data-inset":H||void 0,style:{...He,"--sidebar-size":`${d}px`,"--sidebar-thin-size":`${p}px`,"--sidebar-min-size":`${l}px`,"--sidebar-max-size":`${c}px`,...je}},t.createElement("div",{className:"rt-ShellSidebarContent","data-visible":se||void 0},X),We)});Ce.displayName="Shell.Sidebar";Ce.Handle=E;export{Ce as a};
2
- //# sourceMappingURL=chunk-ZXZOH63L.js.map
1
+ import{a as ze}from"./chunk-2LYX5S7H.js";import{a as ce,c as ue,d as fe}from"./chunk-QWVU2TW4.js";import{a as ye,c as Pe}from"./chunk-5LXFJMFB.js";import{h as pe,n as be,p as Se,r as me,t as Re,v as he}from"./chunk-SNHEJU2S.js";import{a as ge,c as E}from"./chunk-TLWTUKKL.js";import{b as ve}from"./chunk-CECQNGUL.js";import{a as Me}from"./chunk-NNO7M466.js";import{a as le}from"./chunk-AGAQC4HH.js";import*as t from"react";import qe from"classnames";var Ke=["className","children","state","defaultState","onStateChange","thinSize","toggleModes","size","defaultSize","onSizeChange","sizeUpdate","sizeUpdateMs","style","inset"],Ce=t.forwardRef((_,S)=>{let{className:xe,presentation:Ee={initial:"overlay",md:"fixed"},expandedSize:d=288,minSize:l=200,maxSize:c=400,resizable:w=!1,collapsible:we=!0,onExpand:W,onCollapse:j,onResize:T,onResizeStart:Te,onResizeEnd:ke,snapPoints:Ne,snapTolerance:De,collapseThreshold:Ve,paneId:k,persistence:N,children:Ie,style:He,thinSize:p=64,toggleModes:R,state:u,defaultState:h,onStateChange:F,size:q,defaultSize:K,onSizeChange:D,sizeUpdate:V,sizeUpdateMs:I=50,inset:H}=_,Oe=ve(_,Ke),{sidebarMode:a,setSidebarMode:O}=pe(),{currentBreakpointReady:m}=be(),{peekTarget:$}=Se(),{togglePane:$e,setSidebarToggleComputer:y}=me(),{setHasSidebar:L}=Re(),{registerInset:Y,unregisterInset:G}=he();t.useLayoutEffect(()=>{if(H)return Y("sidebar"),()=>G("sidebar")},[H,Y,G]);let U=ye(Ee),b=U==="overlay",Le=U==="stacked",s=t.useRef(null),Ue=t.useCallback(e=>{s.current=e,typeof S=="function"?S(e):S&&(S.current=e)},[S]),J=t.Children.toArray(Ie),Q=J.filter(e=>t.isValidElement(e)&&e.type===E),X=J.filter(e=>!(t.isValidElement(e)&&e.type===E)),f=t.useRef(null);t.useEffect(()=>()=>{f.current&&(clearTimeout(f.current),f.current=null)},[D,V,I]);let P=t.useMemo(()=>{let e=D,n=V,r=I??50;if(!e)return()=>{};if(n==="debounce")return(o,i)=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{e(o,i),f.current=null},r)};if(n==="throttle"){let o=0;return(i,Fe)=>{let de=Date.now();de-o>=r&&(o=de,e(i,Fe))}}return(o,i)=>e(o,i)},[D,V,I]),Ae=t.useId();t.useEffect(()=>(L(!0),()=>{L(!1)}),[L,Ae]);let M=t.useRef(null);t.useEffect(()=>{let e=typeof u<"u";if(M.current===null){M.current=e;return}M.current!==e&&(console.warn("Shell.Sidebar: Switching between controlled and uncontrolled `state` is not supported."),M.current=e)},[u]);let g=t.useRef(F),Z=t.useRef(u);t.useLayoutEffect(()=>{g.current=F,Z.current=u});let Be=typeof u=="object"&&u!==null,{resolvedControlled:v,resolvedDefault:ee}=Pe({controlledValue:u,defaultValue:h,currentValue:a,setValue:O,breakpointReady:m,controlledIsResponsive:Be,onResponsiveChange:e=>g.current?.(e,{reason:"responsive"}),onInit:e=>g.current?.(e,{reason:"init"})}),te=t.useRef(null),ne=t.useRef(void 0);t.useEffect(()=>{let e=a,n=te.current,o=ne.current!==v;n!==null&&n!==e&&(!(typeof Z.current<"u")||!o&&e!==v)&&g.current?.(e,{reason:"toggle"}),te.current=e,ne.current=v},[a,v]);let re=t.useRef(W),oe=t.useRef(j);t.useLayoutEffect(()=>{re.current=W,oe.current=j});let z=t.useRef(null),ae=t.useRef(!1);t.useEffect(()=>{let e=a;if(!m){z.current=e;return}if(!ae.current){ae.current=!0,z.current=e;return}let n=z.current;n!==null&&n!==e&&(n==="collapsed"&&e!=="collapsed"?re.current?.():e==="collapsed"&&oe.current?.(),z.current=e)},[a,m]);let se=a!=="collapsed",C=t.useMemo(()=>{if(!k||N)return N;let e=`kookie-ui:shell:sidebar:${k}`;return{load:()=>{if(!(typeof window>"u"))try{let r=window.localStorage.getItem(e);return r?Number(r):void 0}catch{return}},save:r=>{if(!(typeof window>"u"))try{window.localStorage.setItem(e,String(r))}catch{}}}},[k,N]);t.useEffect(()=>{let e=!0;return(async()=>{if(!w||!C?.load||b)return;let n=await C.load();e&&typeof n=="number"&&s.current&&(s.current.style.setProperty("--sidebar-size",`${n}px`),T?.(n))})(),()=>{e=!1}},[w,C,T,b]);let x=t.useCallback(()=>{let e=ee??(typeof h=="string"?h:void 0)??"expanded";return e==="thin"||e==="expanded"?e:"expanded"},[ee,h]);t.useEffect(()=>{if(!y)return;let e=R??"both";return y(r=>{if(e==="both")return r==="collapsed"?"thin":r==="thin"?"expanded":"collapsed";let o=x();return r==="collapsed"?o:r===o?"collapsed":o}),()=>{y?.(r=>r==="collapsed"?"thin":r==="thin"?"expanded":"collapsed")}},[y,R,x]);let ie=t.useRef(d),_e=t.useRef("expanded");t.useEffect(()=>{a!=="collapsed"&&(_e.current=a,ie.current=a==="thin"?p:d)},[a,p,d]);let We=w&&!b&&a==="expanded"?t.createElement(Me.Provider,{value:{containerRef:s,cssVarName:"--sidebar-size",minSize:l,maxSize:c,defaultSize:d,orientation:"vertical",edge:"end",computeNext:(e,n,r)=>{let o=getComputedStyle(s.current).direction==="rtl",i=e-n;return r+(o?-i:i)},onResize:T,onResizeStart:Te,onResizeEnd:e=>{ke?.(e),P(e,{reason:"resize"}),C?.save?.(e)},target:"sidebar",collapsible:we,snapPoints:Ne,snapTolerance:De??8,collapseThreshold:Ve,requestCollapse:()=>O("collapsed"),requestToggle:()=>$e("sidebar")}},Q.length>0?Q.map((e,n)=>t.cloneElement(e,{key:e.key??n})):t.createElement(ge,null)):null,A=t.useCallback(e=>ze(e,"horizontal"),[]);t.useEffect(()=>{if(s.current&&typeof q>"u"&&typeof K<"u"){let e=A(K);if(typeof e=="number"&&Number.isFinite(e)){let o=Math.min((typeof c=="number"?c:void 0)??e,Math.max((typeof l=="number"?l:void 0)??e,e));s.current.style.setProperty("--sidebar-size",`${o}px`),P(o,{reason:"init"})}}},[]);let B=q;t.useEffect(()=>{if(!s.current||typeof B>"u")return;let e=A(B);if(typeof e=="number"&&Number.isFinite(e)){let o=Math.min((typeof c=="number"?c:void 0)??e,Math.max((typeof l=="number"?l:void 0)??e,e));s.current.style.setProperty("--sidebar-size",`${o}px`),P(o,{reason:"controlled"})}},[B,l,c,A,P]);let je=t.useMemo(()=>{if(!($==="sidebar"&&a==="collapsed"&&!b))return;let e=R??"both",n=a,r;if(e==="both")r=n==="collapsed"?"thin":n==="thin"?"expanded":"collapsed";else{let o=x();r=n==="collapsed"?o:"collapsed"}return r==="thin"?{"--peek-sidebar-width":`${p}px`}:{"--peek-sidebar-width":`var(--sidebar-size, ${d}px)`}},[$,a,b,R,x,p,d]);if(b){let e=a!=="collapsed";return t.createElement(ce,{open:e,onOpenChange:n=>O(n?"expanded":"collapsed")},t.createElement(ue,{side:"start",style:{padding:0},"aria-label":"Navigation","aria-describedby":void 0,width:{initial:`${e?a==="thin"?p:d:ie.current}px`}},t.createElement(le,null,t.createElement(fe,null,"Navigation")),X))}return t.createElement("div",{...Oe,ref:Ue,className:qe("rt-ShellSidebar",xe),"data-mode":a,"data-peek":$==="sidebar"||void 0,"data-presentation":m?U:void 0,"data-open":m&&Le&&se||void 0,"data-inset":H||void 0,style:{...He,"--sidebar-size":`${d}px`,"--sidebar-thin-size":`${p}px`,"--sidebar-min-size":`${l}px`,"--sidebar-max-size":`${c}px`,...je}},t.createElement("div",{className:"rt-ShellSidebarContent","data-visible":se||void 0},X),We)});Ce.displayName="Shell.Sidebar";Ce.Handle=E;export{Ce as a};
2
+ //# sourceMappingURL=chunk-EE2IH2GL.js.map
@@ -1,2 +1,2 @@
1
- import{a as c}from"./chunk-SESAEJ6W.js";import{a as d}from"./chunk-GSTOGDAJ.js";import{a as l}from"./chunk-6FLLFCBU.js";import*as e from"react";import T from"classnames";var M=e.forwardRef((m,f)=>{let{className:x,color:y,radius:b,panelBackground:u,material:P,style:v,...r}=l(m,c,d),i=P||u,t=e.useId(),{"aria-describedby":o,"aria-labelledby":p}=r,s=r.error||r.isInvalid,n=e.useMemo(()=>{let a=[];return r.errorMessage&&a.push(t),o&&a.push(o),a.length>0?a.join(" "):void 0},[r.errorMessage,o,t]),A=e.useMemo(()=>({"aria-invalid":s,"aria-describedby":n,"aria-labelledby":p}),[s,n,p]),{error:R,errorMessage:D,isInvalid:I,required:h,"aria-describedby":N,"aria-labelledby":j,...g}=r;return e.createElement("div",{"data-accent-color":y,"data-radius":b,"data-panel-background":i,"data-material":i,className:T("rt-TextAreaRoot",x,{"rt-error":s}),style:v},e.createElement("textarea",{className:"rt-reset rt-TextAreaInput",ref:f,...g,...A}),r.errorMessage&&e.createElement("div",{id:t,className:"rt-TextAreaErrorMessage",role:"alert","aria-live":"polite"},r.errorMessage))});M.displayName="TextArea";export{M as a};
2
- //# sourceMappingURL=chunk-NMKPFUNP.js.map
1
+ import{a as c}from"./chunk-CLMOWP5T.js";import{a as d}from"./chunk-GSTOGDAJ.js";import{a as l}from"./chunk-6FLLFCBU.js";import*as e from"react";import T from"classnames";var M=e.forwardRef((m,f)=>{let{className:x,color:y,radius:b,panelBackground:u,material:P,style:v,...r}=l(m,c,d),i=P||u,t=e.useId(),{"aria-describedby":o,"aria-labelledby":p}=r,s=r.error||r.isInvalid,n=e.useMemo(()=>{let a=[];return r.errorMessage&&a.push(t),o&&a.push(o),a.length>0?a.join(" "):void 0},[r.errorMessage,o,t]),A=e.useMemo(()=>({"aria-invalid":s,"aria-describedby":n,"aria-labelledby":p}),[s,n,p]),{error:R,errorMessage:D,isInvalid:I,required:h,"aria-describedby":N,"aria-labelledby":j,...g}=r;return e.createElement("div",{"data-accent-color":y,"data-radius":b,"data-panel-background":i,"data-material":i,className:T("rt-TextAreaRoot",x,{"rt-error":s}),style:v},e.createElement("textarea",{className:"rt-reset rt-TextAreaInput",ref:f,...g,...A}),r.errorMessage&&e.createElement("div",{id:t,className:"rt-TextAreaErrorMessage",role:"alert","aria-live":"polite"},r.errorMessage))});M.displayName="TextArea";export{M as a};
2
+ //# sourceMappingURL=chunk-EPTYNVCU.js.map
@@ -0,0 +1,2 @@
1
+ import{c as e}from"./chunk-ZNK6AH2G.js";var s=["1","2","3","4","5","6","7","8","9","10","11","12"],t=["classic","solid","soft","outline","surface"],a=["solid","translucent"],o={size:{type:"enum",className:"rt-r-size",values:s,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:t,default:"solid"},material:{type:"enum",values:a,default:void 0},...e};export{o as a};
2
+ //# sourceMappingURL=chunk-F6V7GBNQ.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/_internal/base-checkbox.props.ts"],
4
+ "sourcesContent": ["import { colorPropDef } from '../../props/color.prop.js';\n\nimport type { PropDef } from '../../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'] as const;\nconst variants = ['classic', 'solid', 'soft', 'outline', 'surface'] as const;\nconst materials = ['solid', 'translucent'] as const;\n\nconst baseCheckboxPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'solid' },\n material: { type: 'enum', values: materials, default: undefined },\n ...colorPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n material: PropDef<(typeof materials)[number] | undefined>;\n};\n\nexport { baseCheckboxPropDefs };\n"],
5
+ "mappings": "wCAIA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAI,EACtEC,EAAW,CAAC,UAAW,QAAS,OAAQ,UAAW,SAAS,EAC5DC,EAAY,CAAC,QAAS,aAAa,EAEnCC,EAAuB,CAC3B,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQH,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,OAAQ,EACrF,SAAU,CAAE,KAAM,OAAQ,OAAQC,EAAW,QAAS,MAAU,EAChE,GAAGE,CACL",
6
+ "names": ["sizes", "variants", "materials", "baseCheckboxPropDefs", "colorPropDef"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as f}from"./chunk-2N2AQNJH.js";import{a as d}from"./chunk-3OBXZUFJ.js";import{a as p}from"./chunk-HIKVMKYQ.js";import*as r from"react";import h from"classnames";var w=r.forwardRef(({className:b,style:s,tooltip:a,tooltipSide:m="top",tooltipAlign:B="center",tooltipDelayDuration:y,tooltipDisableHoverableContent:g,overrideStyles:e,...v},O)=>{let{tooltipId:R,hasTooltip:S,accessibilityProps:P}=f(a),u=r.useMemo(()=>{if(!e)return;let c={},o=(n,t)=>{t!==void 0&&(c[n]=t)},i=(n,t)=>{t&&(o(`--button-override-${n}color`,t.color),o(`--button-override-${n}background`,t.background),o(`--button-override-${n}background-color`,t.backgroundColor),o(`--button-override-${n}box-shadow`,t.boxShadow),o(`--button-override-${n}filter`,t.filter),o(`--button-override-${n}outline`,t.outline),o(`--button-override-${n}outline-offset`,t.outlineOffset),o(`--button-override-${n}opacity`,t.opacity))};return i("",e.normal),i("hover-",e.hover),i("active-",e.active),i("pressed-",e.pressed),i("open-",e.open),i("disabled-",e.disabled),e.focus&&(o("--button-override-focus-outline",e.focus.outline),o("--button-override-focus-outline-offset",e.focus.outlineOffset)),c},[e]),C=r.useMemo(()=>u?{...u,...s}:s,[u,s]),l=r.createElement(p,{...v,...P,ref:O,className:h("rt-Button",b),style:C});return S?r.createElement(d,{content:a,side:m,align:B,delayDuration:y,disableHoverableContent:g,id:R},l):l});w.displayName="Button";export{w as a};
2
- //# sourceMappingURL=chunk-YMUGKYGW.js.map
1
+ import{a as f}from"./chunk-2N2AQNJH.js";import{a as d}from"./chunk-OLAWVEAI.js";import{a as p}from"./chunk-X7V3V3W4.js";import*as r from"react";import h from"classnames";var w=r.forwardRef(({className:b,style:s,tooltip:a,tooltipSide:m="top",tooltipAlign:B="center",tooltipDelayDuration:y,tooltipDisableHoverableContent:g,overrideStyles:e,...v},O)=>{let{tooltipId:R,hasTooltip:S,accessibilityProps:P}=f(a),u=r.useMemo(()=>{if(!e)return;let c={},o=(n,t)=>{t!==void 0&&(c[n]=t)},i=(n,t)=>{t&&(o(`--button-override-${n}color`,t.color),o(`--button-override-${n}background`,t.background),o(`--button-override-${n}background-color`,t.backgroundColor),o(`--button-override-${n}box-shadow`,t.boxShadow),o(`--button-override-${n}filter`,t.filter),o(`--button-override-${n}outline`,t.outline),o(`--button-override-${n}outline-offset`,t.outlineOffset),o(`--button-override-${n}opacity`,t.opacity))};return i("",e.normal),i("hover-",e.hover),i("active-",e.active),i("pressed-",e.pressed),i("open-",e.open),i("disabled-",e.disabled),e.focus&&(o("--button-override-focus-outline",e.focus.outline),o("--button-override-focus-outline-offset",e.focus.outlineOffset)),c},[e]),C=r.useMemo(()=>u?{...u,...s}:s,[u,s]),l=r.createElement(p,{...v,...P,ref:O,className:h("rt-Button",b),style:C});return S?r.createElement(d,{content:a,side:m,align:B,delayDuration:y,disableHoverableContent:g,id:R},l):l});w.displayName="Button";export{w as a};
2
+ //# sourceMappingURL=chunk-GAV3NHYL.js.map
@@ -1,2 +1,2 @@
1
- import{a as m}from"./chunk-N2B7TWIP.js";import{a as i}from"./chunk-GSTOGDAJ.js";import{a as n}from"./chunk-6FLLFCBU.js";import*as o from"react";import{Slot as g}from"radix-ui";var h={...m,...i},c=o.memo(o.forwardRef((d,e)=>{let{children:p,className:r,asChild:P,as:H="h1",color:t,...s}=n(d,h),a=r?`rt-Heading ${r}`:"rt-Heading";return P?o.createElement(g.Root,{"data-accent-color":t,...s,ref:e,className:a},p):o.createElement(H,{"data-accent-color":t,...s,ref:e,className:a},p)}));c.displayName="Heading";export{c as a};
2
- //# sourceMappingURL=chunk-TOOSHJOA.js.map
1
+ import{a as m}from"./chunk-PZ7OYATT.js";import{a as i}from"./chunk-GSTOGDAJ.js";import{a as n}from"./chunk-6FLLFCBU.js";import*as o from"react";import{Slot as g}from"radix-ui";var h={...m,...i},c=o.memo(o.forwardRef((d,e)=>{let{children:p,className:r,asChild:P,as:H="h1",color:t,...s}=n(d,h),a=r?`rt-Heading ${r}`:"rt-Heading";return P?o.createElement(g.Root,{"data-accent-color":t,...s,ref:e,className:a},p):o.createElement(H,{"data-accent-color":t,...s,ref:e,className:a},p)}));c.displayName="Heading";export{c as a};
2
+ //# sourceMappingURL=chunk-GO7OHBHW.js.map
@@ -1,2 +1,2 @@
1
- import{a as u}from"./chunk-PS6NEG5A.js";import{a as f}from"./chunk-TBJ6L4NL.js";import{a as v}from"./chunk-GSTOGDAJ.js";import{a as c}from"./chunk-6FLLFCBU.js";import*as a from"react";import A from"classnames";import{Avatar as m}from"radix-ui";var N=a.forwardRef((e,s)=>{let{asChild:r,children:t,className:o,style:p,color:l,radius:n,material:P,panelBackground:y,status:i,badge:d,...b}=c(e,f,v),R=r&&t!=null&&a.isValidElement(t)&&(t.props.disabled===!0||t.props["data-disabled"]===!0),h=d!==void 0||i!==void 0;return a.createElement(m.Root,{"data-accent-color":l,"data-radius":n,"data-material":P,"data-panel-background":y,"data-disabled":R||void 0,"data-has-indicator":h||void 0,className:A("rt-reset","rt-AvatarRoot",o),style:p,asChild:r},u({asChild:r,children:t},a.createElement(g,{ref:s,...b})),d!==void 0?a.createElement("span",{className:"rt-AvatarBadge"},d):i!==void 0?a.createElement("span",{className:"rt-AvatarStatus","data-accent-color":i}):null)});N.displayName="Avatar";var g=a.memo(a.forwardRef(({fallback:e,onLoadingStatusChange:s,...r},t)=>{let[o,p]=a.useState("idle"),l=a.useCallback(n=>{s?.(n),p(n)},[s]);return a.createElement(a.Fragment,null,o==="idle"||o==="loading"?a.createElement("span",{className:"rt-AvatarFallback"}):null,o==="error"?a.createElement(m.Fallback,{className:A("rt-AvatarFallback",{"rt-one-letter":typeof e=="string"&&e.length===1,"rt-two-letters":typeof e=="string"&&e.length===2}),delayMs:0},e):null,a.createElement(m.Image,{ref:t,className:"rt-AvatarImage",...r,onLoadingStatusChange:l}))}));g.displayName="AvatarImpl";export{N as a};
2
- //# sourceMappingURL=chunk-MBCBP73P.js.map
1
+ import{a as u}from"./chunk-PS6NEG5A.js";import{a as f}from"./chunk-QFPHEY77.js";import{a as v}from"./chunk-GSTOGDAJ.js";import{a as c}from"./chunk-6FLLFCBU.js";import*as a from"react";import A from"classnames";import{Avatar as m}from"radix-ui";var N=a.forwardRef((e,s)=>{let{asChild:r,children:t,className:o,style:p,color:l,radius:n,material:P,panelBackground:y,status:i,badge:d,...b}=c(e,f,v),R=r&&t!=null&&a.isValidElement(t)&&(t.props.disabled===!0||t.props["data-disabled"]===!0),h=d!==void 0||i!==void 0;return a.createElement(m.Root,{"data-accent-color":l,"data-radius":n,"data-material":P,"data-panel-background":y,"data-disabled":R||void 0,"data-has-indicator":h||void 0,className:A("rt-reset","rt-AvatarRoot",o),style:p,asChild:r},u({asChild:r,children:t},a.createElement(g,{ref:s,...b})),d!==void 0?a.createElement("span",{className:"rt-AvatarBadge"},d):i!==void 0?a.createElement("span",{className:"rt-AvatarStatus","data-accent-color":i}):null)});N.displayName="Avatar";var g=a.memo(a.forwardRef(({fallback:e,onLoadingStatusChange:s,...r},t)=>{let[o,p]=a.useState("idle"),l=a.useCallback(n=>{s?.(n),p(n)},[s]);return a.createElement(a.Fragment,null,o==="idle"||o==="loading"?a.createElement("span",{className:"rt-AvatarFallback"}):null,o==="error"?a.createElement(m.Fallback,{className:A("rt-AvatarFallback",{"rt-one-letter":typeof e=="string"&&e.length===1,"rt-two-letters":typeof e=="string"&&e.length===2}),delayMs:0},e):null,a.createElement(m.Image,{ref:t,className:"rt-AvatarImage",...r,onLoadingStatusChange:l}))}));g.displayName="AvatarImpl";export{N as a};
2
+ //# sourceMappingURL=chunk-HJU4I34X.js.map
@@ -1,2 +1,2 @@
1
- import{a as R}from"./chunk-GSIE6SUD.js";import{a as m}from"./chunk-HSAG7C53.js";import{b as p}from"./chunk-DXL6V2A5.js";import{a as n}from"./chunk-GSTOGDAJ.js";import{a as d}from"./chunk-6FLLFCBU.js";import{a as v}from"./chunk-OS3FCYZY.js";var x={};v(x,{Item:()=>l,Root:()=>P});import*as o from"react";import C from"classnames";import{RadioGroup as f}from"radix-ui";var c=o.createContext(void 0),y=()=>o.useContext(c),P=o.forwardRef((e,r)=>{let a=p(),t=e.panelBackground??a.panelBackground,{className:s,color:i,panelBackground:I,...u}=d(e,R,n);return o.createElement(c.Provider,{value:{size:e.size,variant:e.variant}},o.createElement(m,{asChild:!0},o.createElement(f.Root,{"data-accent-color":i,"data-panel-background":t,...u,ref:r,className:C("rt-RadioCardsRoot",s)})))});P.displayName="RadioCards.Root";var l=o.forwardRef(({className:e,...r},a)=>{let t=y(),s=t?.variant?`rt-variant-${t.variant}`:void 0,i=t?.size?`rt-r-size-${t.size}`:void 0;return o.createElement(f.Item,{...r,asChild:!1,ref:a,className:C("rt-reset","rt-BaseCard","rt-RadioCardsItem",s,i,e)})});l.displayName="RadioCards.Item";export{P as a,l as b,x as c};
2
- //# sourceMappingURL=chunk-TS623UPD.js.map
1
+ import{a as R}from"./chunk-OWMA6GTG.js";import{a as m}from"./chunk-HSAG7C53.js";import{b as p}from"./chunk-SEY4NA45.js";import{a as n}from"./chunk-GSTOGDAJ.js";import{a as d}from"./chunk-6FLLFCBU.js";import{a as v}from"./chunk-OS3FCYZY.js";var x={};v(x,{Item:()=>l,Root:()=>P});import*as o from"react";import C from"classnames";import{RadioGroup as f}from"radix-ui";var c=o.createContext(void 0),y=()=>o.useContext(c),P=o.forwardRef((e,r)=>{let a=p(),t=e.panelBackground??a.panelBackground,{className:s,color:i,panelBackground:I,...u}=d(e,R,n);return o.createElement(c.Provider,{value:{size:e.size,variant:e.variant}},o.createElement(m,{asChild:!0},o.createElement(f.Root,{"data-accent-color":i,"data-panel-background":t,...u,ref:r,className:C("rt-RadioCardsRoot",s)})))});P.displayName="RadioCards.Root";var l=o.forwardRef(({className:e,...r},a)=>{let t=y(),s=t?.variant?`rt-variant-${t.variant}`:void 0,i=t?.size?`rt-r-size-${t.size}`:void 0;return o.createElement(f.Item,{...r,asChild:!1,ref:a,className:C("rt-reset","rt-BaseCard","rt-RadioCardsItem",s,i,e)})});l.displayName="RadioCards.Item";export{P as a,l as b,x as c};
2
+ //# sourceMappingURL=chunk-IFM4EMZB.js.map
@@ -0,0 +1,2 @@
1
+ import{b as o}from"./chunk-KRJTW535.js";import{a as e}from"./chunk-NZJGC6ZW.js";import{d as a}from"./chunk-ZNK6AH2G.js";var s=["1","2","3","4"],t=["classic","solid","soft","surface","outline","ghost","override"],n=["solid","translucent"],r=["solid","translucent"],u={...e,size:{type:"enum",className:"rt-r-size",values:s,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:t,default:"solid"},...a,...o,loading:{type:"boolean",className:"rt-loading",default:!1},fullWidth:{type:"boolean",className:"rt-full-width",default:!1},material:{type:"enum",values:r,default:void 0},panelBackground:{type:"enum",values:n,default:void 0},flush:{type:"boolean",default:!1}};export{u as a};
2
+ //# sourceMappingURL=chunk-JFWMAYEH.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/_internal/base-button.props.ts"],
4
+ "sourcesContent": ["import { asChildPropDef } from '../../props/as-child.prop.js';\nimport { accentColorPropDef } from '../../props/color.prop.js';\nimport { radiusPropDef } from '../../props/radius.prop.js';\n\nimport type { PropDef } from '../../props/prop-def.js';\n\n/**\n * Available button sizes for responsive design\n * Size 1: 24px - Compact for toolbars and dense interfaces\n * Size 2: 32px - Standard for most interface contexts\n * Size 3: 40px - Large for important actions and mobile touch targets\n * Size 4: 48px - Extra large for hero sections and maximum impact\n */\nconst sizes = ['1', '2', '3', '4'] as const;\n\n/**\n * Available button variants for different visual contexts\n * - classic: Premium, sophisticated appearance\n * - solid: Primary actions that should be noticed first\n * - soft: Content-heavy interfaces, natural integration\n * - surface: Elevated appearance with subtle depth\n * - outline: Secondary actions that support primary actions\n * - ghost: Utility functions that don't compete for attention\n */\nconst variants = ['classic', 'solid', 'soft', 'surface', 'outline', 'ghost', 'override'] as const;\n\n/**\n * Available panel background options (deprecated)\n * @deprecated Use `materials` instead\n */\nconst panelBackgrounds = ['solid', 'translucent'] as const;\n\n/**\n * Available material options for visual rendering\n * - solid: Opaque backgrounds and borders\n * - translucent: Elevated effects with depth and visual separation\n */\nconst materials = ['solid', 'translucent'] as const;\n\n/**\n * Base button prop definitions that define the component's API\n * \n * These props are used by all button variants (Button, IconButton, etc.)\n * to ensure consistent behavior and styling across the design system.\n * \n * Key features:\n * - Responsive sizing with mobile-first approach\n * - Six visual variants for different interface contexts\n * - Comprehensive color system with semantic meanings\n * - Loading states with automatic accessibility\n * - Material system for visual depth and elevation\n * - Polymorphic rendering support via asChild\n * \n * @example\n * ```tsx\n * // Basic button with default props\n * <BaseButton>Click me</BaseButton>\n * \n * // Button with custom size and variant\n * <BaseButton size=\"3\" variant=\"solid\">Primary Action</BaseButton>\n * \n * // Button with loading state\n * <BaseButton loading>Processing...</BaseButton>\n * \n * // Button with translucent material\n * <BaseButton material=\"translucent\">Elevated Button</BaseButton>\n * ```\n */\nconst baseButtonPropDefs = {\n ...asChildPropDef,\n /**\n * Button size for responsive design and interface density\n * Supports responsive objects: { initial: '1', sm: '2', md: '3', lg: '4' }\n */\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n /**\n * Visual variant that determines the button's appearance and context\n */\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'solid' },\n ...accentColorPropDef,\n ...radiusPropDef,\n /**\n * Loading state that shows a spinner and disables interaction\n * Automatically sets disabled=true and provides accessibility announcements\n */\n loading: { type: 'boolean', className: 'rt-loading', default: false },\n /**\n * Full width mode that expands the button to fill its container\n * Useful for mobile layouts and form submissions\n */\n fullWidth: { type: 'boolean', className: 'rt-full-width', default: false },\n /**\n * Material type for visual rendering and depth effects\n * Controls how the button renders its visual elements\n */\n material: { type: 'enum', values: materials, default: undefined },\n /**\n * Panel background type (deprecated)\n * @deprecated Use `material` prop instead. This prop will be removed in a future version.\n */\n panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\n /**\n * Flush mode that removes visual padding for seamless text integration\n * Only effective with ghost variant\n */\n flush: { type: 'boolean', default: false },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n loading: PropDef<boolean>;\n fullWidth: PropDef<boolean>;\n material: PropDef<(typeof materials)[number] | undefined>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n flush: PropDef<boolean>;\n};\n\nexport { baseButtonPropDefs };\n"],
5
+ "mappings": "wHAaA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAW3BC,EAAW,CAAC,UAAW,QAAS,OAAQ,UAAW,UAAW,QAAS,UAAU,EAMjFC,EAAmB,CAAC,QAAS,aAAa,EAO1CC,EAAY,CAAC,QAAS,aAAa,EA+BnCC,EAAqB,CACzB,GAAGC,EAKH,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQL,EAAO,QAAS,IAAK,WAAY,EAAK,EAI5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,OAAQ,EACrF,GAAGK,EACH,GAAGC,EAKH,QAAS,CAAE,KAAM,UAAW,UAAW,aAAc,QAAS,EAAM,EAKpE,UAAW,CAAE,KAAM,UAAW,UAAW,gBAAiB,QAAS,EAAM,EAKzE,SAAU,CAAE,KAAM,OAAQ,OAAQJ,EAAW,QAAS,MAAU,EAKhE,gBAAiB,CAAE,KAAM,OAAQ,OAAQD,EAAkB,QAAS,MAAU,EAK9E,MAAO,CAAE,KAAM,UAAW,QAAS,EAAM,CAC3C",
6
+ "names": ["sizes", "variants", "panelBackgrounds", "materials", "baseButtonPropDefs", "asChildPropDef", "accentColorPropDef", "radiusPropDef"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as b}from"./chunk-PS6NEG5A.js";import{a as v}from"./chunk-GSTOGDAJ.js";import{a as N}from"./chunk-6FLLFCBU.js";import{a as f}from"./chunk-CBR3VIRS.js";import{a as P}from"./chunk-OS3FCYZY.js";var d={};P(d,{Link:()=>l,Root:()=>c});import*as a from"react";import T from"classnames";import{NavigationMenu as t}from"radix-ui";var c=a.forwardRef((r,n)=>{let{children:e,className:s,color:p,panelBackground:o,...i}=N(r,f,v);return a.createElement(t.Root,{className:"rt-TabNavRoot","data-accent-color":p,...i,asChild:!1,ref:n},a.createElement(t.List,{className:T("rt-reset","rt-BaseTabList","rt-TabNavList",s),"data-panel-background":o},e))});c.displayName="TabNav.Root";var l=a.forwardRef((r,n)=>{let{asChild:e,children:s,className:p,active:o,...i}=r;return a.createElement(t.Item,{className:"rt-TabNavItem"},a.createElement(t.Link,{...i,ref:n,className:T("rt-reset","rt-BaseTabListTrigger","rt-TabNavLink",p),onSelect:void 0,asChild:e,"aria-current":o?"page":void 0,"data-active":o||void 0},b({asChild:e,children:s},m=>a.createElement(a.Fragment,null,a.createElement("span",{className:"rt-BaseTabListTriggerInner rt-TabNavLinkInner"},m),a.createElement("span",{className:"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden"},m)))))});l.displayName="TabNav.Link";export{c as a,l as b,d as c};
2
- //# sourceMappingURL=chunk-2TIADHPD.js.map
1
+ import{a as b}from"./chunk-PS6NEG5A.js";import{a as v}from"./chunk-GSTOGDAJ.js";import{a as N}from"./chunk-6FLLFCBU.js";import{a as f}from"./chunk-CFNESRYI.js";import{a as P}from"./chunk-OS3FCYZY.js";var d={};P(d,{Link:()=>l,Root:()=>c});import*as a from"react";import T from"classnames";import{NavigationMenu as t}from"radix-ui";var c=a.forwardRef((r,n)=>{let{children:e,className:s,color:p,panelBackground:o,...i}=N(r,f,v);return a.createElement(t.Root,{className:"rt-TabNavRoot","data-accent-color":p,...i,asChild:!1,ref:n},a.createElement(t.List,{className:T("rt-reset","rt-BaseTabList","rt-TabNavList",s),"data-panel-background":o},e))});c.displayName="TabNav.Root";var l=a.forwardRef((r,n)=>{let{asChild:e,children:s,className:p,active:o,...i}=r;return a.createElement(t.Item,{className:"rt-TabNavItem"},a.createElement(t.Link,{...i,ref:n,className:T("rt-reset","rt-BaseTabListTrigger","rt-TabNavLink",p),onSelect:void 0,asChild:e,"aria-current":o?"page":void 0,"data-active":o||void 0},b({asChild:e,children:s},m=>a.createElement(a.Fragment,null,a.createElement("span",{className:"rt-BaseTabListTriggerInner rt-TabNavLinkInner"},m),a.createElement("span",{className:"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden"},m)))))});l.displayName="TabNav.Link";export{c as a,l as b,d as c};
2
+ //# sourceMappingURL=chunk-K3UAS7RW.js.map
@@ -0,0 +1,2 @@
1
+ import{a as re,b as ae}from"./chunk-WHFJ4JUN.js";import{a as A,b as te,c as k}from"./chunk-RDAMYQFF.js";import{b as ee,c as oe}from"./chunk-IX5HIHVI.js";import{a as Z}from"./chunk-MJJ7XDIP.js";import{b as X,c as Y}from"./chunk-SEY4NA45.js";import{c as J}from"./chunk-FWB47YCH.js";import{a as Q}from"./chunk-AGAQC4HH.js";import{a as U}from"./chunk-5TXQLK4G.js";import{a as $}from"./chunk-GSTOGDAJ.js";import{a as M}from"./chunk-6FLLFCBU.js";import{a as Ie}from"./chunk-OS3FCYZY.js";var Me={};Ie(Me,{Content:()=>xe,Empty:()=>Re,Group:()=>ve,Input:()=>ge,Item:()=>Se,Label:()=>he,List:()=>Pe,Root:()=>de,Separator:()=>ye,Trigger:()=>Ce,Value:()=>fe});import*as e from"react";import u from"classnames";import{Popover as ne}from"radix-ui";import{useCallbackRef as H,useComposedRefs as ie,useControllableState as W,useLayoutEffect as K}from"radix-ui/internal";import{Command as L,useCommandState as se}from"cmdk";var Ne={size:A.size},Le={size:k.size},le=new Set;function we(o){le.has(o)||(le.add(o),console.warn(o))}function ke(o){let r=o,t=new Set;return{get:()=>r,set:a=>{Object.is(a,r)||(r=a,t.forEach(n=>n()))},subscribe:a=>(t.add(a),()=>{t.delete(a)})}}var me=e.createContext(null),B=o=>{let r=e.useContext(me);if(!r)throw new Error(`Combobox.${o} must be used within Combobox.Root`);return r},ce=e.createContext(null),be=e.createContext(null),pe=e.createContext(null),ue=()=>e.useContext(pe);function De(o){let r=o.getAttribute("aria-label")?.trim();if(r)return r;let t=o.getAttribute("aria-labelledby");if(t){let n=t.split(/\s+/).map(s=>o.ownerDocument.getElementById(s)?.textContent?.trim()).filter(Boolean).join(" ");if(n)return n}let a=o.labels;if(a&&a.length>0){let n=Array.from(a).map(s=>s.textContent?.trim()).filter(Boolean).join(" ");if(n)return n}}var de=o=>{let{children:r,size:t=A.size.default,value:a,defaultValue:n=null,onValueChange:s,open:l,defaultOpen:d=!1,onOpenChange:m,placeholder:p="Select an option",searchPlaceholder:C="Search...",searchValue:c,defaultSearchValue:T="",onSearchValueChange:E,filter:g,shouldFilter:R=!0,loop:f=!0,disabled:v,resetSearchOnSelect:x=!0,resetSearchOnClose:b=!0,color:h,displayValue:y,...S}=o,[I,N]=W({prop:l,defaultProp:d,onChange:m}),[V,w]=W({prop:a,defaultProp:n,onChange:s}),[P,i]=W({prop:c,defaultProp:T,onChange:E}),F=typeof y=="function"?y(V):y,[D]=e.useState(()=>ke(V));K(()=>{D.set(V)},[D,V]);let z=H(O=>{N(O),!O&&b&&i("")}),q=H(O=>{w(O),N(!1),x&&i("")}),G=e.useRef(null),_=e.useCallback(()=>G.current?De(G.current):void 0,[]),Ve=e.useMemo(()=>({value:V,displayValue:F,setOpen:z,size:t,placeholder:p,searchPlaceholder:C,disabled:v,color:h,loop:f,shouldFilter:R,filter:g,triggerRef:G,getTriggerLabel:_}),[V,F,z,t,p,C,v,h,f,R,g,_]),Ee=e.useMemo(()=>({value:P,setValue:i}),[P,i]),Te=e.useMemo(()=>({store:D,onSelect:q,disabled:v}),[D,q,v]);return e.createElement(me.Provider,{value:Ve},e.createElement(ce.Provider,{value:Ee},e.createElement(be.Provider,{value:Te},e.createElement(re,{open:I,onOpenChange:z,...S},r))))};de.displayName="Combobox.Root";var Ce=e.forwardRef((o,r)=>{let t=B("Trigger"),{children:a,className:n,placeholder:s,disabled:l,readOnly:d,error:m,loading:p,color:C,radius:c,material:T,onClick:E,onKeyDown:g,type:R,...f}=M({size:t.size,...o},Ne,te,$),{panelBackground:v}=o,x=T??v,b=l??t.disabled,h=C??t.color,y=!!(d||p),S=t.value==null&&t.displayValue==null,I=ie(r,t.triggerRef),{getTriggerLabel:N}=t;e.useEffect(()=>{},[N]);let V=i=>{E?.(i),y&&i.preventDefault()},w=i=>{g?.(i),!(i.defaultPrevented||y||b)&&i.key==="ArrowDown"&&(i.preventDefault(),t.setOpen(!0))},P=e.createElement(e.Fragment,null,e.createElement("span",{className:"rt-SelectTriggerInner"},e.createElement("span",{className:"rt-ComboboxValue"},t.displayValue??t.value??s??t.placeholder)),p?e.createElement("div",{className:"rt-SelectIcon rt-SelectLoadingIcon","aria-hidden":"true"},e.createElement("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},e.createElement("circle",{cx:"8",cy:"8",r:"7",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeDasharray:"32",strokeDashoffset:"32",className:"rt-SelectLoadingIconCircle"}))):e.createElement(oe,{className:"rt-SelectIcon"}));return e.createElement(ae,{disabled:b},e.createElement("button",{"data-accent-color":h,"data-radius":c,"data-panel-background":x,"data-material":x,"data-error":m,"data-loading":p,"data-disabled":b||void 0,"data-read-only":d||void 0,"data-placeholder":S?"":void 0,...f,role:"combobox","aria-disabled":b||void 0,"aria-readonly":d||void 0,"aria-invalid":m||void 0,"aria-busy":p||void 0,type:R??"button",disabled:b,onClick:V,onKeyDown:w,ref:I,className:u("rt-reset","rt-SelectTrigger","rt-ComboboxTrigger",n)},a?Z(a):P))});Ce.displayName="Combobox.Trigger";var fe=e.forwardRef(({placeholder:o,children:r,className:t,...a},n)=>{let s=B("Value"),l=s.displayValue??s.value??void 0;return e.createElement("span",{...a,ref:n,className:u("rt-ComboboxValue",t)},l??r??o??s.placeholder)});fe.displayName="Combobox.Value";function Oe(){let o=se(n=>n.filtered.count),r=se(n=>n.search),[t,a]=e.useState("");return e.useEffect(()=>{let n=r?o===0?"No results":`${o} result${o===1?"":"s"}`:"",s=window.setTimeout(()=>a(n),r?400:0);return()=>window.clearTimeout(s)},[o,r]),e.createElement(Q,{role:"status","aria-live":"polite","aria-atomic":"true"},t)}var xe=e.forwardRef((o,r)=>{let t=B("Content"),a=X();U(o.panelBackground);let n=o.material??o.panelBackground??a.material??a.panelBackground,s=o.size??t.size??k.size.default,l=o.variant??k.variant.default,{className:d,children:m,color:p,forceMount:C,container:c,material:T,panelBackground:E,onOpenAutoFocus:g,"aria-label":R,"aria-labelledby":f,...v}=M({...o,size:s,variant:l},k),x=p||t.color||a.accentColor,{getTriggerLabel:b}=t,[h,y]=e.useState(b);K(()=>{if(h!==void 0)return;let P=b();P!==void 0&&y(P)},[b,h]);let S=o["aria-label"]??h,I=e.useMemo(()=>({variant:l,sizeClassName:M({size:s},Le).className||void 0,color:x,material:n,label:S}),[l,s,x,n,S]),N=e.useRef(null),V=P=>{if(g?.(P),P.defaultPrevented)return;let i=N.current;if(!i||i.querySelector("[cmdk-input]"))return;P.preventDefault(),(i.querySelector("[cmdk-list]")??i).focus({preventScroll:!0})},w=t.value?.trim()||void 0;return e.createElement(ne.Portal,{container:c,forceMount:C?!0:void 0},e.createElement(Y,{asChild:!0},e.createElement(ne.Content,{"data-accent-color":x,"data-material":n,"data-panel-background":n,align:"start",sideOffset:4,collisionPadding:10,"aria-label":f?void 0:S,"aria-labelledby":f,...v,forceMount:C?!0:void 0,onOpenAutoFocus:V,ref:r,className:u("rt-PopperContent","rt-BaseMenuContent","rt-ComboboxContent",d)},e.createElement(pe.Provider,{value:I},e.createElement(L,{ref:N,loop:t.loop,shouldFilter:t.shouldFilter,filter:t.filter,label:S,defaultValue:w,className:"rt-ComboboxCommand"},m,e.createElement(Oe,null))))))});xe.displayName="Combobox.Content";var ge=e.forwardRef(({className:o,startAdornment:r,endAdornment:t,placeholder:a,variant:n,value:s,onValueChange:l,...d},m)=>{let p=B("Input"),C=e.useContext(ce),c=ue(),T=c?.variant??"solid",E=n??(T==="solid"?"surface":"soft"),g=s??C?.value??"",R=l??C?.setValue,f=e.createElement("div",{className:u("rt-TextFieldRoot","rt-ComboboxInputRoot",c?.sizeClassName,`rt-variant-${E}`),"data-accent-color":c?.color,"data-material":c?.material,"data-panel-background":c?.material},r?e.createElement("div",{className:"rt-TextFieldSlot"},r):null,e.createElement(L.Input,{...d,ref:m,value:g,onValueChange:R,placeholder:a??p.searchPlaceholder,className:u("rt-reset","rt-TextFieldInput",o)}),t?e.createElement("div",{className:"rt-TextFieldSlot","data-side":"right"},t):null);return c?e.createElement("div",{className:"rt-ComboboxSearch"},f):f});ge.displayName="Combobox.Input";var Pe=e.forwardRef(({className:o,children:r,label:t,...a},n)=>{let s=ue();return e.createElement("div",{className:"rt-ComboboxScrollArea"},e.createElement("div",{className:u("rt-BaseMenuViewport","rt-ComboboxViewport")},e.createElement(L.List,{...a,label:t??s?.label,ref:n,className:u("rt-ComboboxList",o)},r)))});Pe.displayName="Combobox.List";var Re=e.forwardRef(({className:o,...r},t)=>e.createElement(L.Empty,{...r,ref:t,className:u("rt-ComboboxEmpty",o)}));Re.displayName="Combobox.Empty";var ve=e.forwardRef(({className:o,...r},t)=>e.createElement(L.Group,{...r,ref:t,className:u("rt-BaseMenuGroup","rt-ComboboxGroup",o)}));ve.displayName="Combobox.Group";var he=e.forwardRef(({className:o,id:r,...t},a)=>{let n=e.useId(),s=r??n,l=e.useRef(null),d=ie(a,l);return K(()=>{let m=l.current?.closest("[cmdk-group-items]");if(!(!m||m.hasAttribute("aria-labelledby")))return m.setAttribute("aria-labelledby",s),()=>{m.getAttribute("aria-labelledby")===s&&m.removeAttribute("aria-labelledby")}},[s]),e.createElement("div",{...t,id:s,ref:d,className:u("rt-BaseMenuLabel","rt-ComboboxLabel",o)})});he.displayName="Combobox.Label";var ye=e.forwardRef(({className:o,...r},t)=>e.createElement(L.Separator,{...r,ref:t,className:u("rt-BaseMenuSeparator","rt-ComboboxSeparator",o)}));ye.displayName="Combobox.Separator";function j(o){return o==null||typeof o=="boolean"?"":typeof o=="string"||typeof o=="number"?String(o):Array.isArray(o)?o.map(j).join(""):e.isValidElement(o)?j(o.props.children):""}var Se=e.forwardRef(({className:o,children:r,label:t,value:a,disabled:n,onSelect:s,keywords:l,...d},m)=>{let p=e.useContext(be);if(!p)throw new Error("Combobox.Item must be used within Combobox.Root");let{store:C,onSelect:c,disabled:T}=p,E=a??(typeof r=="string"?r.trim():void 0),g=()=>E!==void 0&&C.get()===E,R=e.useSyncExternalStore(C.subscribe,g,g),f=H(s),v=e.useCallback(S=>{let I=a??S;c(I),f(I)},[a,c,f]),x=(t??j(r)).replace(/\s+/g," ").trim(),b=x?l?[x,...l]:[x]:l,h=b?b.join("\0"):"",y=n??T??!1;return e.createElement(L.Item,{key:h,...d,value:a,keywords:b,"aria-checked":R,disabled:y||void 0,ref:m,onSelect:v,className:u("rt-reset","rt-BaseMenuItem","rt-ComboboxItem",o)},R?e.createElement("span",{className:u("rt-BaseMenuItemIndicator","rt-ComboboxItemIndicator")},e.createElement(ee,{className:u("rt-BaseMenuItemIndicatorIcon","rt-ComboboxItemIndicatorIcon")})):null,e.createElement(J,null,r))});Se.displayName="Combobox.Item";export{de as a,Ce as b,fe as c,xe as d,ge as e,Pe as f,Re as g,ve as h,he as i,ye as j,Se as k,Me as l};
2
+ //# sourceMappingURL=chunk-KCWESYMR.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/combobox.tsx"],
4
+ "sourcesContent": ["'use client';\n\n/**\n * Combobox: Radix Popover for positioning, dismissal and focus; cmdk for search,\n * filtering and keyboard navigation.\n *\n * Render path. State is split so an interaction re-renders only what reads it:\n * - `ComboboxContext` (Trigger, Value, Content): config and the selected value.\n * Open state is not in it, so opening and closing re-render no consumer.\n * - `ComboboxSearchContext` (Input only): the search text.\n * - `ComboboxItemContext` (Items): stable values only. Items read \"am I selected\"\n * from a store through `useSyncExternalStore`, so a selection re-renders the old\n * and the new selected item, not all N.\n *\n * Highlight. cmdk's `data-selected` is the single highlight source, driven by both\n * the pointer and the keyboard. There is no separate CSS `:hover` highlight, so two\n * items are never lit at once and Enter always picks the lit item.\n */\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Popover as PopoverPrimitive } from 'radix-ui';\nimport { useCallbackRef, useComposedRefs, useControllableState, useLayoutEffect } from 'radix-ui/internal';\nimport { Command as CommandPrimitive, useCommandState } from 'cmdk';\n\nimport { extractProps } from '../helpers/extract-props.js';\nimport { useDeprecatedPanelBackgroundWarning } from '../helpers/use-deprecation-warning.js';\nimport { comboboxRootPropDefs, comboboxTriggerPropDefs, comboboxContentPropDefs } from './combobox.props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { ChevronDownIcon, ThickCheckIcon } from './icons.js';\nimport { Theme, useThemeContext } from './theme.js';\nimport { requireReactElement } from '../helpers/require-react-element.js';\nimport * as Popover from './popover.js';\nimport { Slottable } from './slot.js';\nimport { VisuallyHidden } from './visually-hidden.js';\n\nimport type { textFieldRootPropDefs } from './text-field.props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TextFieldVariant = (typeof textFieldRootPropDefs.variant.values)[number];\ntype ComboboxValue = string | null;\ntype CommandFilter = (value: string, search: string, keywords?: string[]) => number;\n\n// Hoisted so extractProps' compiled prop-def cache (keyed by object identity) hits.\nconst triggerSizingPropDefs = { size: comboboxRootPropDefs.size };\nconst contentSizePropDefs = { size: comboboxContentPropDefs.size };\n\nconst warned = new Set<string>();\nfunction warnOnce(message: string) {\n if (warned.has(message)) return;\n warned.add(message);\n console.warn(message);\n}\n\n// ============================================================================\n// Selection store\n// ============================================================================\n\ninterface SelectionStore {\n get: () => ComboboxValue;\n set: (value: ComboboxValue) => void;\n subscribe: (listener: () => void) => () => void;\n}\n\nfunction createSelectionStore(initial: ComboboxValue): SelectionStore {\n let current = initial;\n const listeners = new Set<() => void>();\n return {\n get: () => current,\n set: (next) => {\n if (Object.is(next, current)) return;\n current = next;\n listeners.forEach((listener) => listener());\n },\n subscribe: (listener) => {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n };\n },\n };\n}\n\n// ============================================================================\n// Contexts\n// ============================================================================\n\ninterface ComboboxContextValue {\n value: ComboboxValue;\n displayValue?: string;\n setOpen: (open: boolean) => void;\n size?: ComboboxRootOwnProps['size'];\n placeholder?: string;\n searchPlaceholder?: string;\n disabled?: boolean;\n color?: string;\n loop: boolean;\n shouldFilter: boolean;\n filter?: CommandFilter;\n triggerRef: React.RefObject<HTMLButtonElement | null>;\n /** Reads the trigger's accessible name from the DOM (aria-label, aria-labelledby or <label>). */\n getTriggerLabel: () => string | undefined;\n}\n\nconst ComboboxContext = React.createContext<ComboboxContextValue | null>(null);\n\nconst useComboboxContext = (componentName: string) => {\n const ctx = React.useContext(ComboboxContext);\n if (!ctx) {\n throw new Error(`Combobox.${componentName} must be used within Combobox.Root`);\n }\n return ctx;\n};\n\ninterface ComboboxSearchContextValue {\n value: string;\n setValue: (value: string) => void;\n}\n\nconst ComboboxSearchContext = React.createContext<ComboboxSearchContextValue | null>(null);\n\ninterface ComboboxItemContextValue {\n store: SelectionStore;\n onSelect: (value: string) => void;\n disabled?: boolean;\n}\n\nconst ComboboxItemContext = React.createContext<ComboboxItemContextValue | null>(null);\n\n/** Values resolved by Content and read by Input and List. */\ninterface ComboboxContentContextValue {\n variant: 'solid' | 'soft';\n sizeClassName?: string;\n color?: string;\n material?: string;\n label?: string;\n}\n\nconst ComboboxContentContext = React.createContext<ComboboxContentContextValue | null>(null);\n\nconst useComboboxContentContext = () => React.useContext(ComboboxContentContext);\n\n// ============================================================================\n// Root\n// ============================================================================\n\ntype ComboboxRootOwnProps = GetPropDefTypes<typeof comboboxRootPropDefs> & {\n value?: ComboboxValue;\n defaultValue?: ComboboxValue;\n onValueChange?: (value: ComboboxValue) => void;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n placeholder?: string;\n searchPlaceholder?: string;\n searchValue?: string;\n defaultSearchValue?: string;\n onSearchValueChange?: (value: string) => void;\n filter?: CommandFilter;\n shouldFilter?: boolean;\n loop?: boolean;\n disabled?: boolean;\n /** Clear the search text when an option is selected. Defaults to true. */\n resetSearchOnSelect?: boolean;\n /** Clear the search text when the popup is dismissed without a selection. Defaults to true. */\n resetSearchOnClose?: boolean;\n color?: (typeof comboboxTriggerPropDefs.color.values)[number];\n /**\n * Text shown in the trigger for the selected value. Without it the raw value is shown.\n * Can be a string or a function that receives the current value. Pass a stable\n * function (module scope or `useCallback`): an inline function runs on every render.\n * @example displayValue={(v) => items.find(i => i.value === v)?.label}\n */\n displayValue?: string | ((value: ComboboxValue) => string | undefined);\n};\n\ntype PopoverRootProps = React.ComponentPropsWithoutRef<typeof Popover.Root>;\ninterface ComboboxRootProps extends PopoverRootProps, ComboboxRootOwnProps {}\n\nfunction readElementLabel(el: HTMLElement): string | undefined {\n const ariaLabel = el.getAttribute('aria-label')?.trim();\n if (ariaLabel) return ariaLabel;\n\n const labelledBy = el.getAttribute('aria-labelledby');\n if (labelledBy) {\n const text = labelledBy\n .split(/\\s+/)\n .map((id) => el.ownerDocument.getElementById(id)?.textContent?.trim())\n .filter(Boolean)\n .join(' ');\n if (text) return text;\n }\n\n const labels = (el as HTMLButtonElement).labels;\n if (labels && labels.length > 0) {\n const text = Array.from(labels)\n .map((label) => label.textContent?.trim())\n .filter(Boolean)\n .join(' ');\n if (text) return text;\n }\n\n return undefined;\n}\n\nconst ComboboxRoot: React.FC<ComboboxRootProps> = (props) => {\n const {\n children,\n size = comboboxRootPropDefs.size.default,\n value: valueProp,\n defaultValue = null,\n onValueChange,\n open: openProp,\n defaultOpen = false,\n onOpenChange,\n placeholder = 'Select an option',\n searchPlaceholder = 'Search...',\n searchValue: searchValueProp,\n defaultSearchValue = '',\n onSearchValueChange,\n filter,\n shouldFilter = true,\n loop = true,\n disabled,\n resetSearchOnSelect = true,\n resetSearchOnClose = true,\n color,\n displayValue: displayValueProp,\n ...rootProps\n } = props;\n\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: onOpenChange,\n });\n\n const [value, setValue] = useControllableState<ComboboxValue>({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n });\n\n const [searchValue, setSearchValue] = useControllableState<string>({\n prop: searchValueProp,\n defaultProp: defaultSearchValue,\n onChange: onSearchValueChange,\n });\n\n const resolvedDisplayValue = typeof displayValueProp === 'function' ? displayValueProp(value) : displayValueProp;\n\n // Items subscribe to this store instead of the context, so a selection\n // re-renders only the items whose selected state flips.\n const [store] = React.useState(() => createSelectionStore(value));\n useLayoutEffect(() => {\n store.set(value);\n }, [store, value]);\n\n // The radix setters change identity whenever their controlled prop changes.\n // Reading them through callback refs keeps these handlers stable, so the\n // contexts below do not change on every keystroke or selection.\n const handleOpenChange = useCallbackRef((nextOpen: boolean) => {\n setOpen(nextOpen);\n if (!nextOpen && resetSearchOnClose) setSearchValue('');\n });\n\n const onSelect = useCallbackRef((nextValue: string) => {\n setValue(nextValue);\n setOpen(false);\n if (resetSearchOnSelect) setSearchValue('');\n });\n\n const triggerRef = React.useRef<HTMLButtonElement | null>(null);\n const getTriggerLabel = React.useCallback(() => (triggerRef.current ? readElementLabel(triggerRef.current) : undefined), []);\n\n const contextValue = React.useMemo<ComboboxContextValue>(\n () => ({\n value,\n displayValue: resolvedDisplayValue,\n setOpen: handleOpenChange,\n size,\n placeholder,\n searchPlaceholder,\n disabled,\n color,\n loop,\n shouldFilter,\n filter,\n triggerRef,\n getTriggerLabel,\n }),\n [value, resolvedDisplayValue, handleOpenChange, size, placeholder, searchPlaceholder, disabled, color, loop, shouldFilter, filter, getTriggerLabel],\n );\n\n const searchContextValue = React.useMemo<ComboboxSearchContextValue>(() => ({ value: searchValue, setValue: setSearchValue }), [searchValue, setSearchValue]);\n\n const itemContextValue = React.useMemo<ComboboxItemContextValue>(() => ({ store, onSelect, disabled }), [store, onSelect, disabled]);\n\n return (\n <ComboboxContext.Provider value={contextValue}>\n <ComboboxSearchContext.Provider value={searchContextValue}>\n <ComboboxItemContext.Provider value={itemContextValue}>\n <Popover.Root open={open} onOpenChange={handleOpenChange} {...rootProps}>\n {children}\n </Popover.Root>\n </ComboboxItemContext.Provider>\n </ComboboxSearchContext.Provider>\n </ComboboxContext.Provider>\n );\n};\nComboboxRoot.displayName = 'Combobox.Root';\n\n// ============================================================================\n// Trigger\n// ============================================================================\n\ntype ComboboxTriggerElement = HTMLButtonElement;\ntype ComboboxTriggerOwnProps = GetPropDefTypes<typeof comboboxTriggerPropDefs>;\ntype NativeTriggerProps = Omit<React.ComponentPropsWithoutRef<'button'>, 'color'>;\ninterface ComboboxTriggerProps extends NativeTriggerProps, MarginProps, ComboboxTriggerOwnProps {}\n\nconst ComboboxTrigger = React.forwardRef<ComboboxTriggerElement, ComboboxTriggerProps>((props, forwardedRef) => {\n const ctx = useComboboxContext('Trigger');\n\n const {\n children,\n className,\n placeholder,\n disabled,\n readOnly,\n error,\n loading,\n color,\n radius,\n material,\n onClick,\n onKeyDown,\n type: buttonType,\n ...triggerProps\n } = extractProps({ size: ctx.size, ...props }, triggerSizingPropDefs, comboboxTriggerPropDefs, marginPropDefs);\n\n // `panelBackground` has a className prop def, so extractProps strips it.\n const { panelBackground } = props;\n const resolvedMaterial = material ?? panelBackground;\n const isDisabled = disabled ?? ctx.disabled;\n const resolvedColor = color ?? ctx.color;\n // Read-only and loading triggers stay focusable but do not open.\n const isBlocked = Boolean(readOnly || loading);\n const isPlaceholder = ctx.value == null && ctx.displayValue == null;\n\n const composedRef = useComposedRefs(forwardedRef, ctx.triggerRef);\n\n const { getTriggerLabel } = ctx;\n React.useEffect(() => {\n if (process.env.NODE_ENV === 'production') return;\n if (!getTriggerLabel()) {\n warnOnce(\n 'Combobox.Trigger has no accessible name. The combobox role does not take its name from its content. Add `aria-label`, `aria-labelledby`, or a `<label htmlFor>` that points at the trigger.',\n );\n }\n }, [getTriggerLabel]);\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n onClick?.(event);\n // Radix skips its open toggle when the event is default-prevented.\n if (isBlocked) event.preventDefault();\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || isBlocked || isDisabled) return;\n if (event.key === 'ArrowDown') {\n event.preventDefault();\n ctx.setOpen(true);\n }\n };\n\n const defaultContent = (\n <>\n <span className=\"rt-SelectTriggerInner\">\n <span className=\"rt-ComboboxValue\">{ctx.displayValue ?? ctx.value ?? placeholder ?? ctx.placeholder}</span>\n </span>\n {loading ? (\n <div className=\"rt-SelectIcon rt-SelectLoadingIcon\" aria-hidden=\"true\">\n <svg width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\n <circle\n cx=\"8\"\n cy=\"8\"\n r=\"7\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeDasharray=\"32\"\n strokeDashoffset=\"32\"\n className=\"rt-SelectLoadingIconCircle\"\n />\n </svg>\n </div>\n ) : (\n <ChevronDownIcon className=\"rt-SelectIcon\" />\n )}\n </>\n );\n\n // Radix Popover.Trigger supplies aria-expanded, aria-controls (the popup id) and\n // aria-haspopup=\"dialog\", which matches the Popover dialog this opens.\n return (\n <Popover.Trigger disabled={isDisabled}>\n <button\n data-accent-color={resolvedColor}\n data-radius={radius}\n data-panel-background={resolvedMaterial}\n data-material={resolvedMaterial}\n data-error={error}\n data-loading={loading}\n data-disabled={isDisabled || undefined}\n data-read-only={readOnly || undefined}\n data-placeholder={isPlaceholder ? '' : undefined}\n {...triggerProps}\n // eslint-disable-next-line jsx-a11y/role-has-required-aria-props -- Popover.Trigger (Slot) adds aria-expanded and aria-controls\n role=\"combobox\"\n aria-disabled={isDisabled || undefined}\n aria-readonly={readOnly || undefined}\n aria-invalid={error || undefined}\n aria-busy={loading || undefined}\n type={buttonType ?? 'button'}\n disabled={isDisabled}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n ref={composedRef}\n className={classNames('rt-reset', 'rt-SelectTrigger', 'rt-ComboboxTrigger', className)}\n >\n {children ? requireReactElement(children) : defaultContent}\n </button>\n </Popover.Trigger>\n );\n});\nComboboxTrigger.displayName = 'Combobox.Trigger';\n\n// ============================================================================\n// Value (standalone, for custom trigger layouts)\n// ============================================================================\n\ntype ComboboxValueElement = HTMLSpanElement;\ninterface ComboboxValueProps extends React.ComponentPropsWithoutRef<'span'> {\n placeholder?: string;\n}\n\nconst ComboboxValue = React.forwardRef<ComboboxValueElement, ComboboxValueProps>(({ placeholder, children, className, ...valueProps }, forwardedRef) => {\n const ctx = useComboboxContext('Value');\n const display = ctx.displayValue ?? ctx.value ?? undefined;\n return (\n <span {...valueProps} ref={forwardedRef} className={classNames('rt-ComboboxValue', className)}>\n {display ?? children ?? placeholder ?? ctx.placeholder}\n </span>\n );\n});\nComboboxValue.displayName = 'Combobox.Value';\n\n// ============================================================================\n// Content\n// ============================================================================\n\ntype ComboboxContentElement = React.ElementRef<typeof PopoverPrimitive.Content>;\ntype ComboboxContentOwnProps = GetPropDefTypes<typeof comboboxContentPropDefs> & {\n container?: React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Portal>['container'];\n};\ninterface ComboboxContentProps extends Omit<ComponentPropsWithout<typeof PopoverPrimitive.Content, RemovedProps>, 'size'>, ComboboxContentOwnProps {}\n\n/** Announces the filtered result count to screen readers after typing settles. */\nfunction ComboboxAnnouncer() {\n const count = useCommandState((state) => state.filtered.count);\n const search = useCommandState((state) => state.search);\n const [message, setMessage] = React.useState('');\n\n React.useEffect(() => {\n const next = !search ? '' : count === 0 ? 'No results' : `${count} result${count === 1 ? '' : 's'}`;\n const timeout = window.setTimeout(() => setMessage(next), search ? 400 : 0);\n return () => window.clearTimeout(timeout);\n }, [count, search]);\n\n return (\n <VisuallyHidden role=\"status\" aria-live=\"polite\" aria-atomic=\"true\">\n {message}\n </VisuallyHidden>\n );\n}\n\nconst ComboboxContent = React.forwardRef<ComboboxContentElement, ComboboxContentProps>((props, forwardedRef) => {\n const ctx = useComboboxContext('Content');\n const themeContext = useThemeContext();\n\n useDeprecatedPanelBackgroundWarning(props.panelBackground);\n\n const material = props.material ?? props.panelBackground ?? themeContext.material ?? themeContext.panelBackground;\n const size = props.size ?? ctx.size ?? comboboxContentPropDefs.size.default;\n const variant = props.variant ?? comboboxContentPropDefs.variant.default;\n\n const {\n className,\n children,\n color,\n forceMount,\n container,\n material: _material,\n panelBackground: _panelBackground,\n onOpenAutoFocus,\n 'aria-label': _ariaLabel,\n 'aria-labelledby': ariaLabelledByProp,\n ...contentProps\n } = extractProps({ ...props, size, variant }, comboboxContentPropDefs);\n\n const resolvedColor = color || ctx.color || themeContext.accentColor;\n\n\n // The trigger's name labels the popup, the search field and the listbox.\n // Read once per mount (the content remounts on every open); fall back to a\n // layout effect when the trigger was not attached yet (defaultOpen, forceMount).\n const { getTriggerLabel } = ctx;\n const [triggerLabel, setTriggerLabel] = React.useState(getTriggerLabel);\n useLayoutEffect(() => {\n if (triggerLabel !== undefined) return;\n const label = getTriggerLabel();\n if (label !== undefined) setTriggerLabel(label);\n }, [getTriggerLabel, triggerLabel]);\n\n const label = props['aria-label'] ?? triggerLabel;\n\n const contentContextValue = React.useMemo<ComboboxContentContextValue>(\n () => ({\n variant,\n // Responsive-aware size class for the search field (never String() a responsive object).\n sizeClassName: extractProps({ size }, contentSizePropDefs).className || undefined,\n color: resolvedColor,\n material,\n label,\n }),\n [variant, size, resolvedColor, material, label],\n );\n\n const commandRef = React.useRef<HTMLDivElement>(null);\n\n // Without a search field, focus would land on the popup itself, outside cmdk's\n // keydown handler. Focus the listbox instead so arrow keys and Enter work.\n const handleOpenAutoFocus = (event: Event) => {\n onOpenAutoFocus?.(event);\n if (event.defaultPrevented) return;\n const command = commandRef.current;\n if (!command || command.querySelector('[cmdk-input]')) return;\n event.preventDefault();\n const list = command.querySelector<HTMLElement>('[cmdk-list]');\n (list ?? command).focus({ preventScroll: true });\n };\n\n // Start the highlight on the selected option (cmdk trims item values).\n const initialHighlight = ctx.value?.trim() || undefined;\n\n return (\n <PopoverPrimitive.Portal container={container} forceMount={forceMount ? true : undefined}>\n <Theme asChild>\n <PopoverPrimitive.Content\n data-accent-color={resolvedColor}\n data-material={material}\n data-panel-background={material}\n align=\"start\"\n sideOffset={4}\n collisionPadding={10}\n aria-label={ariaLabelledByProp ? undefined : label}\n aria-labelledby={ariaLabelledByProp}\n {...contentProps}\n forceMount={forceMount ? true : undefined}\n onOpenAutoFocus={handleOpenAutoFocus}\n ref={forwardedRef}\n className={classNames('rt-PopperContent', 'rt-BaseMenuContent', 'rt-ComboboxContent', className)}\n >\n <ComboboxContentContext.Provider value={contentContextValue}>\n <CommandPrimitive\n ref={commandRef}\n loop={ctx.loop}\n shouldFilter={ctx.shouldFilter}\n filter={ctx.filter}\n label={label}\n defaultValue={initialHighlight}\n className=\"rt-ComboboxCommand\"\n >\n {children}\n <ComboboxAnnouncer />\n </CommandPrimitive>\n </ComboboxContentContext.Provider>\n </PopoverPrimitive.Content>\n </Theme>\n </PopoverPrimitive.Portal>\n );\n});\nComboboxContent.displayName = 'Combobox.Content';\n\n// ============================================================================\n// Input\n// ============================================================================\n\ntype ComboboxInputElement = React.ElementRef<typeof CommandPrimitive.Input>;\ninterface ComboboxInputProps extends Omit<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>, 'value' | 'onValueChange'> {\n startAdornment?: React.ReactNode;\n endAdornment?: React.ReactNode;\n variant?: TextFieldVariant;\n value?: string;\n onValueChange?: (value: string) => void;\n}\n\nconst ComboboxInput = React.forwardRef<ComboboxInputElement, ComboboxInputProps>(\n ({ className, startAdornment, endAdornment, placeholder, variant: inputVariant, value, onValueChange, ...inputProps }, forwardedRef) => {\n const ctx = useComboboxContext('Input');\n const search = React.useContext(ComboboxSearchContext);\n const contentContext = useComboboxContentContext();\n\n const contentVariant = contentContext?.variant ?? 'solid';\n const textFieldVariant = inputVariant ?? (contentVariant === 'solid' ? 'surface' : 'soft');\n\n // The search text lives in Root; only this component subscribes to it.\n const searchValue = value ?? search?.value ?? '';\n const handleSearchChange = onValueChange ?? search?.setValue;\n\n const inputField = (\n <div\n className={classNames('rt-TextFieldRoot', 'rt-ComboboxInputRoot', contentContext?.sizeClassName, `rt-variant-${textFieldVariant}`)}\n data-accent-color={contentContext?.color}\n data-material={contentContext?.material}\n data-panel-background={contentContext?.material}\n >\n {startAdornment ? <div className=\"rt-TextFieldSlot\">{startAdornment}</div> : null}\n <CommandPrimitive.Input\n {...inputProps}\n ref={forwardedRef}\n value={searchValue}\n onValueChange={handleSearchChange}\n placeholder={placeholder ?? ctx.searchPlaceholder}\n className={classNames('rt-reset', 'rt-TextFieldInput', className)}\n />\n {endAdornment ? (\n <div className=\"rt-TextFieldSlot\" data-side=\"right\">\n {endAdornment}\n </div>\n ) : null}\n </div>\n );\n\n return contentContext ? <div className=\"rt-ComboboxSearch\">{inputField}</div> : inputField;\n },\n);\nComboboxInput.displayName = 'Combobox.Input';\n\n// ============================================================================\n// List\n// ============================================================================\n\ntype ComboboxListElement = React.ElementRef<typeof CommandPrimitive.List>;\ninterface ComboboxListProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.List> {}\n\n// cmdk's List owns its id (referenced by the input's aria-controls), role and\n// aria-label (set from `label`), so none of them are overridden here.\nconst ComboboxList = React.forwardRef<ComboboxListElement, ComboboxListProps>(({ className, children, label, ...listProps }, forwardedRef) => {\n const contentContext = useComboboxContentContext();\n return (\n <div className=\"rt-ComboboxScrollArea\">\n <div className={classNames('rt-BaseMenuViewport', 'rt-ComboboxViewport')}>\n <CommandPrimitive.List {...listProps} label={label ?? contentContext?.label} ref={forwardedRef} className={classNames('rt-ComboboxList', className)}>\n {children}\n </CommandPrimitive.List>\n </div>\n </div>\n );\n});\nComboboxList.displayName = 'Combobox.List';\n\n// ============================================================================\n// Empty\n// ============================================================================\n\ntype ComboboxEmptyElement = React.ElementRef<typeof CommandPrimitive.Empty>;\ninterface ComboboxEmptyProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty> {}\n\nconst ComboboxEmpty = React.forwardRef<ComboboxEmptyElement, ComboboxEmptyProps>(({ className, ...emptyProps }, forwardedRef) => (\n <CommandPrimitive.Empty {...emptyProps} ref={forwardedRef} className={classNames('rt-ComboboxEmpty', className)} />\n));\nComboboxEmpty.displayName = 'Combobox.Empty';\n\n// ============================================================================\n// Group\n// ============================================================================\n\ntype ComboboxGroupElement = React.ElementRef<typeof CommandPrimitive.Group>;\ninterface ComboboxGroupProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group> {}\n\nconst ComboboxGroup = React.forwardRef<ComboboxGroupElement, ComboboxGroupProps>(({ className, ...groupProps }, forwardedRef) => (\n <CommandPrimitive.Group {...groupProps} ref={forwardedRef} className={classNames('rt-BaseMenuGroup', 'rt-ComboboxGroup', className)} />\n));\nComboboxGroup.displayName = 'Combobox.Group';\n\n// ============================================================================\n// Label\n// ============================================================================\n\ntype ComboboxLabelElement = React.ElementRef<'div'>;\ninterface ComboboxLabelProps extends React.ComponentPropsWithoutRef<'div'> {}\n\nconst ComboboxLabel = React.forwardRef<ComboboxLabelElement, ComboboxLabelProps>(({ className, id: idProp, ...labelProps }, forwardedRef) => {\n const generatedId = React.useId();\n const id = idProp ?? generatedId;\n const localRef = React.useRef<HTMLDivElement>(null);\n const composedRef = useComposedRefs(forwardedRef, localRef);\n\n // cmdk renders the group's role=\"group\" element itself and gives no way to\n // label it from a child, so name it after this label when inside a Group.\n useLayoutEffect(() => {\n const group = localRef.current?.closest('[cmdk-group-items]');\n if (!group || group.hasAttribute('aria-labelledby')) return;\n group.setAttribute('aria-labelledby', id);\n return () => {\n if (group.getAttribute('aria-labelledby') === id) group.removeAttribute('aria-labelledby');\n };\n }, [id]);\n\n return <div {...labelProps} id={id} ref={composedRef} className={classNames('rt-BaseMenuLabel', 'rt-ComboboxLabel', className)} />;\n});\nComboboxLabel.displayName = 'Combobox.Label';\n\n// ============================================================================\n// Separator\n// ============================================================================\n\ntype ComboboxSeparatorElement = React.ElementRef<typeof CommandPrimitive.Separator>;\ninterface ComboboxSeparatorProps extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator> {}\n\nconst ComboboxSeparator = React.forwardRef<ComboboxSeparatorElement, ComboboxSeparatorProps>(({ className, ...separatorProps }, forwardedRef) => (\n <CommandPrimitive.Separator {...separatorProps} ref={forwardedRef} className={classNames('rt-BaseMenuSeparator', 'rt-ComboboxSeparator', className)} />\n));\nComboboxSeparator.displayName = 'Combobox.Separator';\n\n// ============================================================================\n// Item\n// ============================================================================\n\n/** Plain text of a React node tree, used as the item's search text. */\nfunction getNodeText(node: React.ReactNode): string {\n if (node == null || typeof node === 'boolean') return '';\n if (typeof node === 'string' || typeof node === 'number') return String(node);\n if (Array.isArray(node)) return node.map(getNodeText).join('');\n if (React.isValidElement<{ children?: React.ReactNode }>(node)) return getNodeText(node.props.children);\n return '';\n}\n\ntype ComboboxItemElement = React.ElementRef<typeof CommandPrimitive.Item>;\ninterface ComboboxItemProps extends Omit<React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>, 'keywords' | 'onSelect'> {\n /**\n * Text matched by search. Defaults to the text of `children`. Set it when the\n * children are components whose text is not in the JSX (it cannot be read).\n */\n label?: string;\n /** Additional keywords for search filtering. */\n keywords?: string[];\n /** Called when the item is selected. */\n onSelect?: (value: string) => void;\n}\n\nconst ComboboxItem = React.forwardRef<ComboboxItemElement, ComboboxItemProps>(\n ({ className, children, label, value, disabled, onSelect, keywords, ...itemProps }, forwardedRef) => {\n const itemContext = React.useContext(ComboboxItemContext);\n if (!itemContext) {\n throw new Error('Combobox.Item must be used within Combobox.Root');\n }\n const { store, onSelect: onSelectFromRoot, disabled: rootDisabled } = itemContext;\n\n // Without `value`, cmdk uses the trimmed text of string children.\n const itemValue = value ?? (typeof children === 'string' ? children.trim() : undefined);\n const getIsSelected = () => itemValue !== undefined && store.get() === itemValue;\n const isSelected = React.useSyncExternalStore(store.subscribe, getIsSelected, getIsSelected);\n\n const onSelectProp = useCallbackRef(onSelect);\n // cmdk passes its resolved value (the `value` prop, or the text when `value` is omitted).\n const handleSelect = React.useCallback(\n (resolvedValue: string) => {\n const nextValue = value ?? resolvedValue;\n onSelectFromRoot(nextValue);\n onSelectProp(nextValue);\n },\n [value, onSelectFromRoot, onSelectProp],\n );\n\n // cmdk matches only `value` and `keywords`, so add the visible text as a keyword.\n const text = (label ?? getNodeText(children)).replace(/\\s+/g, ' ').trim();\n const searchKeywords = text ? (keywords ? [text, ...keywords] : [text]) : keywords;\n // cmdk stores keywords only when `value` changes. Remount the cmdk item when\n // they change so a new label or keyword list is picked up.\n const keywordsKey = searchKeywords ? searchKeywords.join('\u0000') : '';\n\n const isDisabled = disabled ?? rootDisabled ?? false;\n\n return (\n <CommandPrimitive.Item\n key={keywordsKey}\n {...itemProps}\n value={value}\n keywords={searchKeywords}\n // cmdk owns aria-selected (the highlighted option); the chosen option is aria-checked.\n aria-checked={isSelected}\n disabled={isDisabled || undefined}\n ref={forwardedRef}\n onSelect={handleSelect}\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-ComboboxItem', className)}\n >\n {isSelected ? (\n <span className={classNames('rt-BaseMenuItemIndicator', 'rt-ComboboxItemIndicator')}>\n <ThickCheckIcon className={classNames('rt-BaseMenuItemIndicatorIcon', 'rt-ComboboxItemIndicatorIcon')} />\n </span>\n ) : null}\n <Slottable>{children}</Slottable>\n </CommandPrimitive.Item>\n );\n },\n);\nComboboxItem.displayName = 'Combobox.Item';\n\n// ============================================================================\n// Exports\n// ============================================================================\n\nexport {\n ComboboxRoot as Root,\n ComboboxTrigger as Trigger,\n ComboboxValue as Value,\n ComboboxContent as Content,\n ComboboxInput as Input,\n ComboboxList as List,\n ComboboxEmpty as Empty,\n ComboboxGroup as Group,\n ComboboxLabel as Label,\n ComboboxSeparator as Separator,\n ComboboxItem as Item,\n};\n\nexport type {\n ComboboxRootProps as RootProps,\n ComboboxTriggerProps as TriggerProps,\n ComboboxValueProps as ValueProps,\n ComboboxContentProps as ContentProps,\n ComboboxInputProps as InputProps,\n ComboboxListProps as ListProps,\n ComboboxEmptyProps as EmptyProps,\n ComboboxGroupProps as GroupProps,\n ComboboxLabelProps as LabelProps,\n ComboboxSeparatorProps as SeparatorProps,\n ComboboxItemProps as ItemProps,\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["combobox_exports", "__export", "ComboboxContent", "ComboboxEmpty", "ComboboxGroup", "ComboboxInput", "ComboboxItem", "ComboboxLabel", "ComboboxList", "ComboboxRoot", "ComboboxSeparator", "ComboboxTrigger", "ComboboxValue", "React", "classNames", "PopoverPrimitive", "useCallbackRef", "useComposedRefs", "useControllableState", "useLayoutEffect", "CommandPrimitive", "useCommandState", "triggerSizingPropDefs", "comboboxRootPropDefs", "contentSizePropDefs", "comboboxContentPropDefs", "warned", "warnOnce", "message", "createSelectionStore", "initial", "current", "listeners", "next", "listener", "ComboboxContext", "useComboboxContext", "componentName", "ctx", "ComboboxSearchContext", "ComboboxItemContext", "ComboboxContentContext", "useComboboxContentContext", "readElementLabel", "el", "ariaLabel", "labelledBy", "text", "id", "labels", "label", "ComboboxRoot", "props", "children", "size", "valueProp", "defaultValue", "onValueChange", "openProp", "defaultOpen", "onOpenChange", "placeholder", "searchPlaceholder", "searchValueProp", "defaultSearchValue", "onSearchValueChange", "filter", "shouldFilter", "loop", "disabled", "resetSearchOnSelect", "resetSearchOnClose", "color", "displayValueProp", "rootProps", "open", "setOpen", "useControllableState", "value", "setValue", "searchValue", "setSearchValue", "resolvedDisplayValue", "store", "useLayoutEffect", "handleOpenChange", "useCallbackRef", "nextOpen", "onSelect", "nextValue", "triggerRef", "getTriggerLabel", "contextValue", "searchContextValue", "itemContextValue", "PopoverRoot", "ComboboxTrigger", "forwardedRef", "className", "readOnly", "error", "loading", "radius", "material", "onClick", "onKeyDown", "buttonType", "triggerProps", "extractProps", "comboboxTriggerPropDefs", "marginPropDefs", "panelBackground", "resolvedMaterial", "isDisabled", "resolvedColor", "isBlocked", "isPlaceholder", "composedRef", "useComposedRefs", "handleClick", "event", "handleKeyDown", "defaultContent", "ChevronDownIcon", "PopoverTrigger", "classNames", "requireReactElement", "ComboboxValue", "valueProps", "display", "ComboboxAnnouncer", "count", "useCommandState", "state", "search", "setMessage", "timeout", "VisuallyHidden", "ComboboxContent", "themeContext", "useThemeContext", "useDeprecatedPanelBackgroundWarning", "variant", "forceMount", "container", "_material", "_panelBackground", "onOpenAutoFocus", "_ariaLabel", "ariaLabelledByProp", "contentProps", "triggerLabel", "setTriggerLabel", "contentContextValue", "commandRef", "handleOpenAutoFocus", "command", "initialHighlight", "PopoverPrimitive", "Theme", "CommandPrimitive", "ComboboxInput", "startAdornment", "endAdornment", "inputVariant", "inputProps", "contentContext", "contentVariant", "textFieldVariant", "handleSearchChange", "inputField", "ComboboxList", "listProps", "ComboboxEmpty", "emptyProps", "ComboboxGroup", "groupProps", "ComboboxLabel", "idProp", "labelProps", "generatedId", "localRef", "group", "ComboboxSeparator", "separatorProps", "getNodeText", "node", "ComboboxItem", "keywords", "itemProps", "itemContext", "onSelectFromRoot", "rootDisabled", "itemValue", "getIsSelected", "isSelected", "onSelectProp", "handleSelect", "resolvedValue", "searchKeywords", "keywordsKey", "ThickCheckIcon", "Slottable"]
7
+ }