@womp/kookie-ui 0.14.5 → 0.15.1

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 (1206) hide show
  1. package/README.md +2 -2
  2. package/components.css +711 -2741
  3. package/dist/cjs/components/_internal/base-button.d.ts.map +1 -1
  4. package/dist/cjs/components/_internal/base-button.js +1 -1
  5. package/dist/cjs/components/_internal/base-button.js.map +4 -4
  6. package/dist/cjs/components/_internal/base-button.props.d.ts +1 -8
  7. package/dist/cjs/components/_internal/base-button.props.d.ts.map +1 -1
  8. package/dist/cjs/components/_internal/base-button.props.js +1 -1
  9. package/dist/cjs/components/_internal/base-button.props.js.map +4 -4
  10. package/dist/cjs/components/_internal/base-checkbox.props.d.ts +2 -9
  11. package/dist/cjs/components/_internal/base-checkbox.props.d.ts.map +1 -1
  12. package/dist/cjs/components/_internal/base-checkbox.props.js +1 -1
  13. package/dist/cjs/components/_internal/base-checkbox.props.js.map +4 -4
  14. package/dist/cjs/components/_internal/base-menu.props.d.ts +0 -28
  15. package/dist/cjs/components/_internal/base-menu.props.d.ts.map +1 -1
  16. package/dist/cjs/components/_internal/base-menu.props.js +1 -1
  17. package/dist/cjs/components/_internal/base-menu.props.js.map +3 -3
  18. package/dist/cjs/components/_internal/base-menu.utils.d.ts +2 -9
  19. package/dist/cjs/components/_internal/base-menu.utils.d.ts.map +1 -1
  20. package/dist/cjs/components/_internal/base-menu.utils.js +1 -1
  21. package/dist/cjs/components/_internal/base-menu.utils.js.map +4 -4
  22. package/dist/cjs/components/_internal/base-radio.props.d.ts +1 -8
  23. package/dist/cjs/components/_internal/base-radio.props.d.ts.map +1 -1
  24. package/dist/cjs/components/_internal/base-radio.props.js +1 -1
  25. package/dist/cjs/components/_internal/base-radio.props.js.map +4 -4
  26. package/dist/cjs/components/_internal/base-tab-list.props.d.ts +0 -6
  27. package/dist/cjs/components/_internal/base-tab-list.props.d.ts.map +1 -1
  28. package/dist/cjs/components/_internal/base-tab-list.props.js +1 -1
  29. package/dist/cjs/components/_internal/base-tab-list.props.js.map +3 -3
  30. package/dist/cjs/components/_internal/menu-context.js +1 -1
  31. package/dist/cjs/components/_internal/menu-context.js.map +4 -4
  32. package/dist/cjs/components/_internal/pane-chrome.js +1 -1
  33. package/dist/cjs/components/_internal/pane-chrome.js.map +4 -4
  34. package/dist/cjs/components/_internal/shell-bottom.js +1 -1
  35. package/dist/cjs/components/_internal/shell-bottom.js.map +2 -2
  36. package/dist/cjs/components/_internal/shell-inspector.js +1 -1
  37. package/dist/cjs/components/_internal/shell-inspector.js.map +2 -2
  38. package/dist/cjs/components/_internal/shell-pane.d.ts +2 -3
  39. package/dist/cjs/components/_internal/shell-pane.d.ts.map +1 -1
  40. package/dist/cjs/components/_internal/shell-pane.js +1 -1
  41. package/dist/cjs/components/_internal/shell-pane.js.map +2 -2
  42. package/dist/cjs/components/_internal/shell-sidebar.d.ts +0 -4
  43. package/dist/cjs/components/_internal/shell-sidebar.d.ts.map +1 -1
  44. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  45. package/dist/cjs/components/_internal/shell-sidebar.js.map +4 -4
  46. package/dist/cjs/components/_internal/shell-store.d.ts +4 -4
  47. package/dist/cjs/components/_internal/shell-store.d.ts.map +1 -1
  48. package/dist/cjs/components/_internal/shell-store.js +1 -1
  49. package/dist/cjs/components/_internal/shell-store.js.map +1 -1
  50. package/dist/cjs/components/accordion.d.ts.map +1 -1
  51. package/dist/cjs/components/accordion.js +1 -1
  52. package/dist/cjs/components/accordion.js.map +4 -4
  53. package/dist/cjs/components/accordion.props.d.ts +4 -15
  54. package/dist/cjs/components/accordion.props.d.ts.map +1 -1
  55. package/dist/cjs/components/accordion.props.js +1 -1
  56. package/dist/cjs/components/accordion.props.js.map +4 -4
  57. package/dist/cjs/components/alert-dialog.d.ts.map +1 -1
  58. package/dist/cjs/components/alert-dialog.js +1 -1
  59. package/dist/cjs/components/alert-dialog.js.map +4 -4
  60. package/dist/cjs/components/alert-dialog.props.d.ts +0 -5
  61. package/dist/cjs/components/alert-dialog.props.d.ts.map +1 -1
  62. package/dist/cjs/components/alert-dialog.props.js +1 -1
  63. package/dist/cjs/components/alert-dialog.props.js.map +3 -3
  64. package/dist/cjs/components/avatar.d.ts.map +1 -1
  65. package/dist/cjs/components/avatar.js +1 -1
  66. package/dist/cjs/components/avatar.js.map +4 -4
  67. package/dist/cjs/components/avatar.props.d.ts +2 -17
  68. package/dist/cjs/components/avatar.props.d.ts.map +1 -1
  69. package/dist/cjs/components/avatar.props.js +1 -1
  70. package/dist/cjs/components/avatar.props.js.map +4 -4
  71. package/dist/cjs/components/badge.d.ts.map +1 -1
  72. package/dist/cjs/components/badge.js +1 -1
  73. package/dist/cjs/components/badge.js.map +4 -4
  74. package/dist/cjs/components/badge.props.d.ts +1 -16
  75. package/dist/cjs/components/badge.props.d.ts.map +1 -1
  76. package/dist/cjs/components/badge.props.js +1 -1
  77. package/dist/cjs/components/badge.props.js.map +4 -4
  78. package/dist/cjs/components/blockquote.js.map +1 -1
  79. package/dist/cjs/components/blockquote.props.d.ts +1 -1
  80. package/dist/cjs/components/blockquote.props.js +1 -1
  81. package/dist/cjs/components/blockquote.props.js.map +2 -2
  82. package/dist/cjs/components/button.d.ts +1 -38
  83. package/dist/cjs/components/button.d.ts.map +1 -1
  84. package/dist/cjs/components/button.js +2 -2
  85. package/dist/cjs/components/button.js.map +4 -4
  86. package/dist/cjs/components/button.props.js +1 -1
  87. package/dist/cjs/components/button.props.js.map +4 -4
  88. package/dist/cjs/components/card.d.ts.map +1 -1
  89. package/dist/cjs/components/card.js +1 -1
  90. package/dist/cjs/components/card.js.map +4 -4
  91. package/dist/cjs/components/card.props.d.ts +1 -8
  92. package/dist/cjs/components/card.props.d.ts.map +1 -1
  93. package/dist/cjs/components/card.props.js +1 -1
  94. package/dist/cjs/components/card.props.js.map +4 -4
  95. package/dist/cjs/components/chatbar.d.ts +1 -3
  96. package/dist/cjs/components/chatbar.d.ts.map +1 -1
  97. package/dist/cjs/components/chatbar.js +2 -2
  98. package/dist/cjs/components/chatbar.js.map +4 -4
  99. package/dist/cjs/components/checkbox-cards.d.ts.map +1 -1
  100. package/dist/cjs/components/checkbox-cards.js +1 -1
  101. package/dist/cjs/components/checkbox-cards.js.map +4 -4
  102. package/dist/cjs/components/checkbox-cards.props.d.ts +2 -10
  103. package/dist/cjs/components/checkbox-cards.props.d.ts.map +1 -1
  104. package/dist/cjs/components/checkbox-cards.props.js +1 -1
  105. package/dist/cjs/components/checkbox-cards.props.js.map +4 -4
  106. package/dist/cjs/components/checkbox-group.js +1 -1
  107. package/dist/cjs/components/checkbox-group.js.map +4 -4
  108. package/dist/cjs/components/checkbox-group.props.d.ts +2 -8
  109. package/dist/cjs/components/checkbox-group.props.d.ts.map +1 -1
  110. package/dist/cjs/components/checkbox-group.props.js +1 -1
  111. package/dist/cjs/components/checkbox-group.props.js.map +4 -4
  112. package/dist/cjs/components/checkbox.d.ts.map +1 -1
  113. package/dist/cjs/components/checkbox.js +1 -1
  114. package/dist/cjs/components/checkbox.js.map +4 -4
  115. package/dist/cjs/components/checkbox.props.js +1 -1
  116. package/dist/cjs/components/checkbox.props.js.map +4 -4
  117. package/dist/cjs/components/code.js +1 -1
  118. package/dist/cjs/components/code.js.map +2 -2
  119. package/dist/cjs/components/code.props.d.ts +1 -1
  120. package/dist/cjs/components/code.props.js +1 -1
  121. package/dist/cjs/components/code.props.js.map +2 -2
  122. package/dist/cjs/components/combobox.d.ts.map +1 -1
  123. package/dist/cjs/components/combobox.js +1 -1
  124. package/dist/cjs/components/combobox.js.map +4 -4
  125. package/dist/cjs/components/combobox.props.d.ts +1 -20
  126. package/dist/cjs/components/combobox.props.d.ts.map +1 -1
  127. package/dist/cjs/components/combobox.props.js +1 -1
  128. package/dist/cjs/components/combobox.props.js.map +4 -4
  129. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  130. package/dist/cjs/components/context-menu.js +1 -1
  131. package/dist/cjs/components/context-menu.js.map +4 -4
  132. package/dist/cjs/components/context-menu.props.js +1 -1
  133. package/dist/cjs/components/context-menu.props.js.map +3 -3
  134. package/dist/cjs/components/data-list.js.map +1 -1
  135. package/dist/cjs/components/data-list.props.js.map +1 -1
  136. package/dist/cjs/components/dialog.d.ts.map +1 -1
  137. package/dist/cjs/components/dialog.js +1 -1
  138. package/dist/cjs/components/dialog.js.map +4 -4
  139. package/dist/cjs/components/dialog.props.d.ts +0 -5
  140. package/dist/cjs/components/dialog.props.d.ts.map +1 -1
  141. package/dist/cjs/components/dialog.props.js +1 -1
  142. package/dist/cjs/components/dialog.props.js.map +3 -3
  143. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  144. package/dist/cjs/components/dropdown-menu.js +1 -1
  145. package/dist/cjs/components/dropdown-menu.js.map +4 -4
  146. package/dist/cjs/components/dropdown-menu.props.js +1 -1
  147. package/dist/cjs/components/dropdown-menu.props.js.map +3 -3
  148. package/dist/cjs/components/heading.js.map +1 -1
  149. package/dist/cjs/components/heading.props.js.map +1 -1
  150. package/dist/cjs/components/hover-card.js +1 -1
  151. package/dist/cjs/components/hover-card.js.map +4 -4
  152. package/dist/cjs/components/icon-button.d.ts +1 -1
  153. package/dist/cjs/components/icon-button.d.ts.map +1 -1
  154. package/dist/cjs/components/icon-button.js +2 -2
  155. package/dist/cjs/components/icon-button.js.map +4 -4
  156. package/dist/cjs/components/icon-button.props.js +1 -1
  157. package/dist/cjs/components/icon-button.props.js.map +4 -4
  158. package/dist/cjs/components/image.d.ts +0 -5
  159. package/dist/cjs/components/image.d.ts.map +1 -1
  160. package/dist/cjs/components/image.js +1 -1
  161. package/dist/cjs/components/image.js.map +3 -3
  162. package/dist/cjs/components/index.d.ts +0 -3
  163. package/dist/cjs/components/index.d.ts.map +1 -1
  164. package/dist/cjs/components/index.js +5 -5
  165. package/dist/cjs/components/index.js.map +4 -4
  166. package/dist/cjs/components/kbd.js +1 -1
  167. package/dist/cjs/components/kbd.js.map +4 -4
  168. package/dist/cjs/components/kbd.props.d.ts +2 -4
  169. package/dist/cjs/components/kbd.props.d.ts.map +1 -1
  170. package/dist/cjs/components/kbd.props.js +1 -1
  171. package/dist/cjs/components/kbd.props.js.map +4 -4
  172. package/dist/cjs/components/link.js +1 -1
  173. package/dist/cjs/components/link.js.map +2 -2
  174. package/dist/cjs/components/link.props.d.ts +1 -1
  175. package/dist/cjs/components/link.props.js +1 -1
  176. package/dist/cjs/components/link.props.js.map +2 -2
  177. package/dist/cjs/components/message-scroller.js +2 -2
  178. package/dist/cjs/components/message-scroller.js.map +4 -4
  179. package/dist/cjs/components/notice.js +2 -2
  180. package/dist/cjs/components/notice.js.map +4 -4
  181. package/dist/cjs/components/popover.d.ts.map +1 -1
  182. package/dist/cjs/components/popover.js +1 -1
  183. package/dist/cjs/components/popover.js.map +4 -4
  184. package/dist/cjs/components/popover.props.d.ts +0 -6
  185. package/dist/cjs/components/popover.props.d.ts.map +1 -1
  186. package/dist/cjs/components/popover.props.js +1 -1
  187. package/dist/cjs/components/popover.props.js.map +3 -3
  188. package/dist/cjs/components/progress.js.map +1 -1
  189. package/dist/cjs/components/progress.props.js.map +1 -1
  190. package/dist/cjs/components/radio-cards.d.ts.map +1 -1
  191. package/dist/cjs/components/radio-cards.js +1 -1
  192. package/dist/cjs/components/radio-cards.js.map +4 -4
  193. package/dist/cjs/components/radio-cards.props.d.ts +2 -10
  194. package/dist/cjs/components/radio-cards.props.d.ts.map +1 -1
  195. package/dist/cjs/components/radio-cards.props.js +1 -1
  196. package/dist/cjs/components/radio-cards.props.js.map +4 -4
  197. package/dist/cjs/components/radio-group.js +1 -1
  198. package/dist/cjs/components/radio-group.js.map +4 -4
  199. package/dist/cjs/components/radio-group.props.d.ts +1 -3
  200. package/dist/cjs/components/radio-group.props.d.ts.map +1 -1
  201. package/dist/cjs/components/radio-group.props.js +1 -1
  202. package/dist/cjs/components/radio-group.props.js.map +4 -4
  203. package/dist/cjs/components/radio.d.ts.map +1 -1
  204. package/dist/cjs/components/radio.js +1 -1
  205. package/dist/cjs/components/radio.js.map +4 -4
  206. package/dist/cjs/components/radio.props.js +1 -1
  207. package/dist/cjs/components/radio.props.js.map +4 -4
  208. package/dist/cjs/components/schemas/base-button.schema.d.ts +0 -7
  209. package/dist/cjs/components/schemas/base-button.schema.d.ts.map +1 -1
  210. package/dist/cjs/components/schemas/base-button.schema.js +1 -1
  211. package/dist/cjs/components/schemas/base-button.schema.js.map +2 -2
  212. package/dist/cjs/components/schemas/button.schema.d.ts +7 -73
  213. package/dist/cjs/components/schemas/button.schema.d.ts.map +1 -1
  214. package/dist/cjs/components/schemas/button.schema.js +1 -1
  215. package/dist/cjs/components/schemas/button.schema.js.map +2 -2
  216. package/dist/cjs/components/schemas/icon-button.schema.d.ts +0 -7
  217. package/dist/cjs/components/schemas/icon-button.schema.d.ts.map +1 -1
  218. package/dist/cjs/components/schemas/icon-button.schema.js +1 -1
  219. package/dist/cjs/components/schemas/icon-button.schema.js.map +2 -2
  220. package/dist/cjs/components/schemas/index.js +1 -1
  221. package/dist/cjs/components/schemas/index.js.map +2 -2
  222. package/dist/cjs/components/schemas/shell.schema.d.ts +5 -29
  223. package/dist/cjs/components/schemas/shell.schema.d.ts.map +1 -1
  224. package/dist/cjs/components/schemas/shell.schema.js +1 -1
  225. package/dist/cjs/components/schemas/shell.schema.js.map +2 -2
  226. package/dist/cjs/components/schemas/toggle-button.schema.d.ts +7 -73
  227. package/dist/cjs/components/schemas/toggle-button.schema.d.ts.map +1 -1
  228. package/dist/cjs/components/schemas/toggle-button.schema.js +1 -1
  229. package/dist/cjs/components/schemas/toggle-button.schema.js.map +2 -2
  230. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts +0 -7
  231. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts.map +1 -1
  232. package/dist/cjs/components/schemas/toggle-icon-button.schema.js +1 -1
  233. package/dist/cjs/components/schemas/toggle-icon-button.schema.js.map +2 -2
  234. package/dist/cjs/components/scroll-area.d.ts.map +1 -1
  235. package/dist/cjs/components/scroll-area.js +1 -1
  236. package/dist/cjs/components/scroll-area.js.map +4 -4
  237. package/dist/cjs/components/segmented-control.d.ts.map +1 -1
  238. package/dist/cjs/components/segmented-control.js +1 -1
  239. package/dist/cjs/components/segmented-control.js.map +4 -4
  240. package/dist/cjs/components/segmented-control.props.d.ts +0 -11
  241. package/dist/cjs/components/segmented-control.props.d.ts.map +1 -1
  242. package/dist/cjs/components/segmented-control.props.js +1 -1
  243. package/dist/cjs/components/segmented-control.props.js.map +3 -3
  244. package/dist/cjs/components/select.d.ts.map +1 -1
  245. package/dist/cjs/components/select.js +1 -1
  246. package/dist/cjs/components/select.js.map +4 -4
  247. package/dist/cjs/components/select.props.d.ts +1 -14
  248. package/dist/cjs/components/select.props.d.ts.map +1 -1
  249. package/dist/cjs/components/select.props.js +1 -1
  250. package/dist/cjs/components/select.props.js.map +4 -4
  251. package/dist/cjs/components/separator.js.map +1 -1
  252. package/dist/cjs/components/separator.props.js.map +1 -1
  253. package/dist/cjs/components/sheet.d.ts +1 -2
  254. package/dist/cjs/components/sheet.d.ts.map +1 -1
  255. package/dist/cjs/components/sheet.js +1 -1
  256. package/dist/cjs/components/sheet.js.map +4 -4
  257. package/dist/cjs/components/shell.context.js +1 -1
  258. package/dist/cjs/components/shell.context.js.map +2 -2
  259. package/dist/cjs/components/shell.hooks.js.map +1 -1
  260. package/dist/cjs/components/shell.js +1 -1
  261. package/dist/cjs/components/shell.js.map +4 -4
  262. package/dist/cjs/components/shell.types.d.ts +1 -1
  263. package/dist/cjs/components/shell.types.d.ts.map +1 -1
  264. package/dist/cjs/components/shell.types.js.map +1 -1
  265. package/dist/cjs/components/sidebar.d.ts +2 -92
  266. package/dist/cjs/components/sidebar.d.ts.map +1 -1
  267. package/dist/cjs/components/sidebar.js +1 -1
  268. package/dist/cjs/components/sidebar.js.map +4 -4
  269. package/dist/cjs/components/slider.js.map +1 -1
  270. package/dist/cjs/components/slider.props.js.map +1 -1
  271. package/dist/cjs/components/switch.d.ts.map +1 -1
  272. package/dist/cjs/components/switch.js +1 -1
  273. package/dist/cjs/components/switch.js.map +3 -3
  274. package/dist/cjs/components/switch.props.d.ts +0 -18
  275. package/dist/cjs/components/switch.props.d.ts.map +1 -1
  276. package/dist/cjs/components/switch.props.js +1 -1
  277. package/dist/cjs/components/switch.props.js.map +3 -3
  278. package/dist/cjs/components/tab-nav.d.ts.map +1 -1
  279. package/dist/cjs/components/tab-nav.js +1 -1
  280. package/dist/cjs/components/tab-nav.js.map +4 -4
  281. package/dist/cjs/components/tab-nav.props.js +1 -1
  282. package/dist/cjs/components/tab-nav.props.js.map +3 -3
  283. package/dist/cjs/components/table.js +1 -1
  284. package/dist/cjs/components/table.js.map +4 -4
  285. package/dist/cjs/components/tabs.d.ts.map +1 -1
  286. package/dist/cjs/components/tabs.js +1 -1
  287. package/dist/cjs/components/tabs.js.map +4 -4
  288. package/dist/cjs/components/tabs.props.js +1 -1
  289. package/dist/cjs/components/tabs.props.js.map +3 -3
  290. package/dist/cjs/components/text-area.d.ts.map +1 -1
  291. package/dist/cjs/components/text-area.js +1 -1
  292. package/dist/cjs/components/text-area.js.map +4 -4
  293. package/dist/cjs/components/text-area.props.d.ts +1 -12
  294. package/dist/cjs/components/text-area.props.d.ts.map +1 -1
  295. package/dist/cjs/components/text-area.props.js +1 -1
  296. package/dist/cjs/components/text-area.props.js.map +4 -4
  297. package/dist/cjs/components/text-field.d.ts.map +1 -1
  298. package/dist/cjs/components/text-field.js +2 -2
  299. package/dist/cjs/components/text-field.js.map +4 -4
  300. package/dist/cjs/components/text-field.props.d.ts +1 -12
  301. package/dist/cjs/components/text-field.props.d.ts.map +1 -1
  302. package/dist/cjs/components/text-field.props.js +1 -1
  303. package/dist/cjs/components/text-field.props.js.map +4 -4
  304. package/dist/cjs/components/text.js.map +1 -1
  305. package/dist/cjs/components/text.props.js.map +1 -1
  306. package/dist/cjs/components/theme-panel.d.ts.map +1 -1
  307. package/dist/cjs/components/theme-panel.js +3 -3
  308. package/dist/cjs/components/theme-panel.js.map +4 -4
  309. package/dist/cjs/components/theme.d.ts +0 -3
  310. package/dist/cjs/components/theme.d.ts.map +1 -1
  311. package/dist/cjs/components/theme.js +1 -1
  312. package/dist/cjs/components/theme.js.map +4 -4
  313. package/dist/cjs/components/theme.props.d.ts +1 -19
  314. package/dist/cjs/components/theme.props.d.ts.map +1 -1
  315. package/dist/cjs/components/theme.props.js +1 -1
  316. package/dist/cjs/components/theme.props.js.map +3 -3
  317. package/dist/cjs/components/toggle-button.d.ts.map +1 -1
  318. package/dist/cjs/components/toggle-button.js +3 -3
  319. package/dist/cjs/components/toggle-button.js.map +4 -4
  320. package/dist/cjs/components/toggle-icon-button.d.ts.map +1 -1
  321. package/dist/cjs/components/toggle-icon-button.js +3 -3
  322. package/dist/cjs/components/toggle-icon-button.js.map +4 -4
  323. package/dist/cjs/components/toolbar.d.ts +1 -1
  324. package/dist/cjs/components/toolbar.d.ts.map +1 -1
  325. package/dist/cjs/components/toolbar.js +2 -2
  326. package/dist/cjs/components/toolbar.js.map +4 -4
  327. package/dist/cjs/components/tooltip.js +1 -1
  328. package/dist/cjs/components/tooltip.js.map +4 -4
  329. package/dist/cjs/components/virtual-menu.js +1 -1
  330. package/dist/cjs/components/virtual-menu.js.map +4 -4
  331. package/dist/cjs/helpers/index.js +4 -4
  332. package/dist/cjs/helpers/index.js.map +3 -3
  333. package/dist/cjs/helpers/map-prop-values.d.ts +1 -4
  334. package/dist/cjs/helpers/map-prop-values.d.ts.map +1 -1
  335. package/dist/cjs/helpers/map-prop-values.js +1 -1
  336. package/dist/cjs/helpers/map-prop-values.js.map +3 -3
  337. package/dist/cjs/hooks/use-breakpoint.js.map +1 -1
  338. package/dist/cjs/hooks/use-thumb-sync.d.ts +13 -0
  339. package/dist/cjs/hooks/use-thumb-sync.d.ts.map +1 -0
  340. package/dist/cjs/hooks/use-thumb-sync.js +2 -0
  341. package/dist/cjs/hooks/use-thumb-sync.js.map +7 -0
  342. package/dist/cjs/index.js +7 -7
  343. package/dist/cjs/index.js.map +4 -4
  344. package/dist/cjs/props/color.prop.d.ts.map +1 -1
  345. package/dist/cjs/props/color.prop.js.map +2 -2
  346. package/dist/cjs/props/index.d.ts +0 -1
  347. package/dist/cjs/props/index.d.ts.map +1 -1
  348. package/dist/cjs/props/index.js +1 -1
  349. package/dist/cjs/props/index.js.map +4 -4
  350. package/dist/esm/chunk-23WDP4JG.js +2 -0
  351. package/dist/esm/chunk-23WDP4JG.js.map +7 -0
  352. package/dist/esm/{chunk-K7BWSYVP.js → chunk-2IPVLV6B.js} +2 -2
  353. package/dist/esm/chunk-2MYYU7ST.js +2 -0
  354. package/dist/esm/chunk-2MYYU7ST.js.map +7 -0
  355. package/dist/esm/{chunk-SQ4BU4GH.js → chunk-2NNB4ZZ5.js} +2 -2
  356. package/dist/esm/chunk-2NNCZM7P.js +2 -0
  357. package/dist/esm/chunk-2NNCZM7P.js.map +7 -0
  358. package/dist/esm/{chunk-5NARBZRI.js → chunk-2PO6TZ7L.js} +2 -2
  359. package/dist/esm/{chunk-5NARBZRI.js.map → chunk-2PO6TZ7L.js.map} +1 -1
  360. package/dist/esm/{chunk-JXVUTFQN.js → chunk-2XSRO44Q.js} +2 -2
  361. package/dist/esm/{chunk-Z4DTHR2S.js → chunk-34KVYDF6.js} +1 -1
  362. package/dist/esm/{chunk-Z4DTHR2S.js.map → chunk-34KVYDF6.js.map} +2 -2
  363. package/dist/esm/{chunk-KXSMY4ZF.js → chunk-35KS5AQE.js} +2 -2
  364. package/dist/esm/chunk-3OABA7AF.js +2 -0
  365. package/dist/esm/chunk-3OABA7AF.js.map +7 -0
  366. package/dist/esm/chunk-3PT3AOD5.js +2 -0
  367. package/dist/esm/chunk-3PT3AOD5.js.map +7 -0
  368. package/dist/esm/{chunk-A2XVR7GL.js → chunk-3PTKPDSA.js} +2 -2
  369. package/dist/esm/chunk-3PTKPDSA.js.map +7 -0
  370. package/dist/esm/chunk-4D7OU2UA.js +2 -0
  371. package/dist/esm/chunk-4D7OU2UA.js.map +7 -0
  372. package/dist/esm/chunk-4EBCFKNC.js +2 -0
  373. package/dist/esm/chunk-4EBCFKNC.js.map +7 -0
  374. package/dist/esm/chunk-5AHQJB6H.js +2 -0
  375. package/dist/esm/{chunk-RWN22S44.js.map → chunk-5AHQJB6H.js.map} +2 -2
  376. package/dist/esm/chunk-5GYIQIPW.js +2 -0
  377. package/dist/esm/chunk-5GYIQIPW.js.map +7 -0
  378. package/dist/esm/chunk-5PG5YGIW.js +2 -0
  379. package/dist/esm/chunk-5PG5YGIW.js.map +7 -0
  380. package/dist/esm/{chunk-34UMKY2L.js → chunk-5RHODJDJ.js} +2 -2
  381. package/dist/esm/chunk-5ROQAZ7J.js +2 -0
  382. package/dist/esm/{chunk-GMHA5CFH.js.map → chunk-5ROQAZ7J.js.map} +2 -2
  383. package/dist/esm/chunk-5SQL4ZRC.js +2 -0
  384. package/dist/esm/chunk-5SQL4ZRC.js.map +7 -0
  385. package/dist/esm/{chunk-YA5DF67M.js → chunk-5YLKKQFK.js} +1 -1
  386. package/dist/esm/chunk-5YLKKQFK.js.map +7 -0
  387. package/dist/esm/{chunk-ZQVYY7UT.js → chunk-672FI4OH.js} +2 -2
  388. package/dist/esm/{chunk-BWVYB64R.js → chunk-6ERCPRXX.js} +2 -2
  389. package/dist/esm/chunk-7BE6N3KY.js +2 -0
  390. package/dist/esm/chunk-7BE6N3KY.js.map +7 -0
  391. package/dist/esm/{chunk-PXUQEA77.js → chunk-7CBZFHSQ.js} +2 -2
  392. package/dist/esm/{chunk-LOLLL7AV.js → chunk-7UW7D77E.js} +2 -2
  393. package/dist/esm/{chunk-62CJL5G7.js → chunk-A2NG5NRN.js} +2 -2
  394. package/dist/esm/chunk-ABQHBDM4.js +2 -0
  395. package/dist/esm/chunk-ABQHBDM4.js.map +7 -0
  396. package/dist/esm/{chunk-43A5GUSI.js → chunk-AMP7O3DM.js} +2 -2
  397. package/dist/esm/{chunk-UBOOUDS4.js → chunk-AO32NT75.js} +2 -2
  398. package/dist/esm/chunk-B72RMGWZ.js +2 -0
  399. package/dist/esm/chunk-B72RMGWZ.js.map +7 -0
  400. package/dist/esm/chunk-BDOMLGLZ.js +2 -0
  401. package/dist/esm/chunk-BDOMLGLZ.js.map +7 -0
  402. package/dist/esm/{chunk-HFVD7W6R.js → chunk-BFLO4IVZ.js} +2 -2
  403. package/dist/esm/chunk-CAUFRKTK.js +2 -0
  404. package/dist/esm/chunk-CAUFRKTK.js.map +7 -0
  405. package/dist/esm/chunk-CJ4UZDW5.js +2 -0
  406. package/dist/esm/chunk-CJ4UZDW5.js.map +7 -0
  407. package/dist/esm/{chunk-O2WPAUQN.js → chunk-CL6LRPCS.js} +2 -2
  408. package/dist/esm/{chunk-UTHTSYSL.js → chunk-CMQMCGGC.js} +2 -2
  409. package/dist/esm/chunk-CMQMCGGC.js.map +7 -0
  410. package/dist/esm/chunk-DD5QHU6R.js +2 -0
  411. package/dist/esm/chunk-DD5QHU6R.js.map +7 -0
  412. package/dist/esm/chunk-DDFONGSM.js +2 -0
  413. package/dist/esm/chunk-DDFONGSM.js.map +7 -0
  414. package/dist/esm/chunk-DIGT74P3.js +2 -0
  415. package/dist/esm/chunk-DIGT74P3.js.map +7 -0
  416. package/dist/esm/{chunk-EUH5MK4Q.js → chunk-DQTJMIRO.js} +2 -2
  417. package/dist/esm/{chunk-GLERJXVS.js → chunk-DSB3TEAQ.js} +2 -2
  418. package/dist/esm/chunk-E5DJILUI.js +2 -0
  419. package/dist/esm/chunk-E5DJILUI.js.map +7 -0
  420. package/dist/esm/chunk-EJG2UNTM.js +2 -0
  421. package/dist/esm/chunk-EJG2UNTM.js.map +7 -0
  422. package/dist/esm/{chunk-HIBX2EXV.js → chunk-ELZEAEN2.js} +2 -2
  423. package/dist/esm/{chunk-IV4YJRVR.js → chunk-EVTNB4TB.js} +2 -2
  424. package/dist/esm/{chunk-LHGT24A5.js → chunk-F2XQYWBE.js} +2 -2
  425. package/dist/esm/chunk-F2XQYWBE.js.map +7 -0
  426. package/dist/esm/chunk-FK6F6ROH.js +2 -0
  427. package/dist/esm/chunk-FK6F6ROH.js.map +7 -0
  428. package/dist/esm/chunk-GS2QSZUR.js +2 -0
  429. package/dist/esm/chunk-GS2QSZUR.js.map +7 -0
  430. package/dist/esm/{chunk-SGUTNJUO.js → chunk-GVLTTTFL.js} +2 -2
  431. package/dist/esm/chunk-HI3JY3DJ.js +2 -0
  432. package/dist/esm/chunk-HI3JY3DJ.js.map +7 -0
  433. package/dist/esm/chunk-HKRQ3E3I.js +2 -0
  434. package/dist/esm/chunk-HKRQ3E3I.js.map +7 -0
  435. package/dist/esm/{chunk-CIKDGYX3.js → chunk-HVQ3SLQC.js} +2 -2
  436. package/dist/esm/chunk-I53SGTKV.js +2 -0
  437. package/dist/esm/chunk-I53SGTKV.js.map +7 -0
  438. package/dist/esm/chunk-IMYZP5OY.js +2 -0
  439. package/dist/esm/chunk-IMYZP5OY.js.map +7 -0
  440. package/dist/esm/{chunk-N6Q3L64W.js → chunk-IYFDCW7Y.js} +2 -2
  441. package/dist/esm/chunk-IYXR46Q6.js +5 -0
  442. package/dist/esm/chunk-IYXR46Q6.js.map +7 -0
  443. package/dist/esm/chunk-JGB6LNTP.js +2 -0
  444. package/dist/esm/chunk-JGB6LNTP.js.map +7 -0
  445. package/dist/esm/chunk-JLHJHYVQ.js +2 -0
  446. package/dist/esm/chunk-JLHJHYVQ.js.map +7 -0
  447. package/dist/esm/{chunk-7FC7HF76.js → chunk-JLI7WHV6.js} +2 -2
  448. package/dist/esm/{chunk-OW4KAIWF.js → chunk-JQURG6CB.js} +2 -2
  449. package/dist/esm/{chunk-EUSMN3K7.js → chunk-K5SC3CZZ.js} +2 -2
  450. package/dist/esm/{chunk-UBWRIE4C.js → chunk-K7J23OPW.js} +2 -2
  451. package/dist/esm/{chunk-SQZ5O7QS.js → chunk-KLIREDPE.js} +2 -2
  452. package/dist/esm/chunk-L6M2MI7Y.js +2 -0
  453. package/dist/esm/chunk-L6M2MI7Y.js.map +7 -0
  454. package/dist/esm/chunk-LRFAOQK6.js +2 -0
  455. package/dist/esm/chunk-LRFAOQK6.js.map +7 -0
  456. package/dist/esm/chunk-LXSARUXD.js +2 -0
  457. package/dist/esm/chunk-LXSARUXD.js.map +7 -0
  458. package/dist/esm/{chunk-ALG6R3ZX.js → chunk-MD3QCXRD.js} +2 -2
  459. package/dist/esm/chunk-MGQ4A2FI.js +2 -0
  460. package/dist/esm/{chunk-CMEKH4I5.js → chunk-MGSHX5N5.js} +2 -2
  461. package/dist/esm/chunk-MGXXNEMQ.js +2 -0
  462. package/dist/esm/chunk-MGXXNEMQ.js.map +7 -0
  463. package/dist/esm/chunk-MLJLEOZ5.js +2 -0
  464. package/dist/esm/chunk-MLJLEOZ5.js.map +7 -0
  465. package/dist/esm/chunk-MNC2O6QW.js +2 -0
  466. package/dist/esm/chunk-MNC2O6QW.js.map +7 -0
  467. package/dist/esm/chunk-MOMYWKIO.js +2 -0
  468. package/dist/esm/chunk-MOMYWKIO.js.map +7 -0
  469. package/dist/esm/{chunk-ADFUYK3U.js → chunk-MQT3YJKY.js} +2 -2
  470. package/dist/esm/chunk-MQT3YJKY.js.map +7 -0
  471. package/dist/esm/{chunk-ZE2GWHPY.js → chunk-MVW2SY4F.js} +2 -2
  472. package/dist/esm/{chunk-KJTEZVOF.js → chunk-O6K6RZXY.js} +2 -2
  473. package/dist/esm/{chunk-JUY7CBSL.js → chunk-PBFSBHBS.js} +2 -2
  474. package/dist/esm/{chunk-3HGHPAH4.js → chunk-PDBVZAUJ.js} +2 -2
  475. package/dist/esm/chunk-PRRJ4WRE.js +2 -0
  476. package/dist/esm/chunk-PRRJ4WRE.js.map +7 -0
  477. package/dist/esm/chunk-PSS45RHX.js +2 -0
  478. package/dist/esm/{chunk-4JNHUPIM.js.map → chunk-PSS45RHX.js.map} +3 -3
  479. package/dist/esm/chunk-PTEAQFHI.js +2 -0
  480. package/dist/esm/chunk-PTEAQFHI.js.map +7 -0
  481. package/dist/esm/chunk-QDW5ZG5E.js +1 -0
  482. package/dist/esm/chunk-QE2EF7A7.js +2 -0
  483. package/dist/esm/chunk-QE2EF7A7.js.map +7 -0
  484. package/dist/esm/{chunk-R2MQMCND.js → chunk-QJFAGWBO.js} +2 -2
  485. package/dist/esm/chunk-QJSSCW3B.js +2 -0
  486. package/dist/esm/chunk-QJSSCW3B.js.map +7 -0
  487. package/dist/esm/chunk-QPNYHS6A.js +2 -0
  488. package/dist/esm/chunk-QPNYHS6A.js.map +7 -0
  489. package/dist/esm/chunk-QWFFYUFH.js +2 -0
  490. package/dist/esm/chunk-QWFFYUFH.js.map +7 -0
  491. package/dist/esm/{chunk-JGR3L4SN.js → chunk-R4CN4Q3G.js} +2 -2
  492. package/dist/esm/chunk-RA4U6VVZ.js +2 -0
  493. package/dist/esm/chunk-RA4U6VVZ.js.map +7 -0
  494. package/dist/esm/{chunk-RUPET4E7.js → chunk-RVHKSNMJ.js} +2 -2
  495. package/dist/esm/{chunk-HJLBVNQE.js → chunk-RYURXQLJ.js} +2 -2
  496. package/dist/esm/{chunk-RUOOCYK4.js → chunk-S53ZQNHK.js} +2 -2
  497. package/dist/esm/chunk-SEKZGBK3.js +2 -0
  498. package/dist/esm/chunk-SEKZGBK3.js.map +7 -0
  499. package/dist/esm/{chunk-5G4WWJ4Z.js → chunk-T5DSQKKF.js} +2 -2
  500. package/dist/esm/{chunk-3XSB7YIM.js → chunk-TBZO22XK.js} +2 -2
  501. package/dist/esm/{chunk-C7UXUTUF.js → chunk-TGRRQHLQ.js} +2 -2
  502. package/dist/esm/{chunk-IVBKTHDM.js → chunk-TPHNDGSV.js} +2 -2
  503. package/dist/esm/chunk-UA6FP7HS.js +2 -0
  504. package/dist/esm/{chunk-6FLLFCBU.js → chunk-UBSLEGQZ.js} +2 -2
  505. package/dist/esm/chunk-UI2EFF6F.js +2 -0
  506. package/dist/esm/chunk-UI2EFF6F.js.map +7 -0
  507. package/dist/esm/chunk-ULSNYQOY.js +2 -0
  508. package/dist/esm/{chunk-XKBLNVOD.js.map → chunk-ULSNYQOY.js.map} +1 -1
  509. package/dist/esm/chunk-UPCRXJB2.js +2 -0
  510. package/dist/esm/chunk-UPCRXJB2.js.map +7 -0
  511. package/dist/esm/chunk-URLG45A4.js +2 -0
  512. package/dist/esm/chunk-URLG45A4.js.map +7 -0
  513. package/dist/esm/{chunk-LJXP6K5Y.js → chunk-V2TPYSZ2.js} +2 -2
  514. package/dist/esm/chunk-V7UP4SLZ.js +2 -0
  515. package/dist/esm/chunk-V7UP4SLZ.js.map +7 -0
  516. package/dist/esm/{chunk-TUKX2BRO.js → chunk-VASXAV62.js} +2 -2
  517. package/dist/esm/chunk-VASXAV62.js.map +7 -0
  518. package/dist/esm/chunk-VSSJTPBV.js +2 -0
  519. package/dist/esm/chunk-VSSJTPBV.js.map +7 -0
  520. package/dist/esm/chunk-W7VAP3WE.js +2 -0
  521. package/dist/esm/chunk-W7VAP3WE.js.map +7 -0
  522. package/dist/esm/chunk-WGNIFXUE.js +2 -0
  523. package/dist/esm/chunk-WGNIFXUE.js.map +7 -0
  524. package/dist/esm/chunk-WNSG5P3U.js +2 -0
  525. package/dist/esm/chunk-WNSG5P3U.js.map +7 -0
  526. package/dist/esm/{chunk-YLLCCUC7.js → chunk-X3UTLDGG.js} +2 -2
  527. package/dist/esm/chunk-XCDXQLWS.js +2 -0
  528. package/dist/esm/chunk-XCDXQLWS.js.map +7 -0
  529. package/dist/esm/{chunk-3UZHKW6I.js → chunk-XHF6RBOE.js} +2 -2
  530. package/dist/esm/{chunk-IPHKKZYE.js → chunk-XHKL4PG7.js} +2 -2
  531. package/dist/esm/chunk-XKAWVGBL.js +2 -0
  532. package/dist/esm/chunk-XKAWVGBL.js.map +7 -0
  533. package/dist/esm/{chunk-PAEHH3WS.js → chunk-XZ5XZS5O.js} +2 -2
  534. package/dist/esm/chunk-Y3FVBAN2.js +2 -0
  535. package/dist/esm/chunk-Y3FVBAN2.js.map +7 -0
  536. package/dist/esm/chunk-Y4IB7KDZ.js +5 -0
  537. package/dist/esm/chunk-Y4IB7KDZ.js.map +7 -0
  538. package/dist/esm/chunk-YKGLZEXX.js +2 -0
  539. package/dist/esm/{chunk-VBAXORVV.js.map → chunk-YKGLZEXX.js.map} +3 -3
  540. package/dist/esm/chunk-YSHEXVBI.js +10 -0
  541. package/dist/esm/chunk-YSHEXVBI.js.map +7 -0
  542. package/dist/esm/chunk-Z2LGVLUB.js +2 -0
  543. package/dist/esm/chunk-Z2LGVLUB.js.map +7 -0
  544. package/dist/esm/chunk-ZMFZYXLB.js +2 -0
  545. package/dist/esm/chunk-ZMFZYXLB.js.map +7 -0
  546. package/dist/esm/components/_internal/base-button.d.ts.map +1 -1
  547. package/dist/esm/components/_internal/base-button.js +1 -1
  548. package/dist/esm/components/_internal/base-button.props.d.ts +1 -8
  549. package/dist/esm/components/_internal/base-button.props.d.ts.map +1 -1
  550. package/dist/esm/components/_internal/base-button.props.js +1 -1
  551. package/dist/esm/components/_internal/base-checkbox.props.d.ts +2 -9
  552. package/dist/esm/components/_internal/base-checkbox.props.d.ts.map +1 -1
  553. package/dist/esm/components/_internal/base-checkbox.props.js +1 -1
  554. package/dist/esm/components/_internal/base-menu.props.d.ts +0 -28
  555. package/dist/esm/components/_internal/base-menu.props.d.ts.map +1 -1
  556. package/dist/esm/components/_internal/base-menu.props.js +1 -1
  557. package/dist/esm/components/_internal/base-menu.utils.d.ts +2 -9
  558. package/dist/esm/components/_internal/base-menu.utils.d.ts.map +1 -1
  559. package/dist/esm/components/_internal/base-menu.utils.js +1 -1
  560. package/dist/esm/components/_internal/base-radio.props.d.ts +1 -8
  561. package/dist/esm/components/_internal/base-radio.props.d.ts.map +1 -1
  562. package/dist/esm/components/_internal/base-radio.props.js +1 -1
  563. package/dist/esm/components/_internal/base-tab-list.props.d.ts +0 -6
  564. package/dist/esm/components/_internal/base-tab-list.props.d.ts.map +1 -1
  565. package/dist/esm/components/_internal/base-tab-list.props.js +1 -1
  566. package/dist/esm/components/_internal/menu-context.js +1 -1
  567. package/dist/esm/components/_internal/pane-chrome.js +1 -1
  568. package/dist/esm/components/_internal/shell-bottom.js +1 -1
  569. package/dist/esm/components/_internal/shell-inspector.js +1 -1
  570. package/dist/esm/components/_internal/shell-pane.d.ts +2 -3
  571. package/dist/esm/components/_internal/shell-pane.d.ts.map +1 -1
  572. package/dist/esm/components/_internal/shell-pane.js +1 -1
  573. package/dist/esm/components/_internal/shell-sidebar.d.ts +0 -4
  574. package/dist/esm/components/_internal/shell-sidebar.d.ts.map +1 -1
  575. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  576. package/dist/esm/components/_internal/shell-store.d.ts +4 -4
  577. package/dist/esm/components/_internal/shell-store.d.ts.map +1 -1
  578. package/dist/esm/components/_internal/shell-store.js +1 -1
  579. package/dist/esm/components/accordion.d.ts.map +1 -1
  580. package/dist/esm/components/accordion.js +1 -1
  581. package/dist/esm/components/accordion.props.d.ts +4 -15
  582. package/dist/esm/components/accordion.props.d.ts.map +1 -1
  583. package/dist/esm/components/accordion.props.js +1 -1
  584. package/dist/esm/components/alert-dialog.d.ts.map +1 -1
  585. package/dist/esm/components/alert-dialog.js +1 -1
  586. package/dist/esm/components/alert-dialog.props.d.ts +0 -5
  587. package/dist/esm/components/alert-dialog.props.d.ts.map +1 -1
  588. package/dist/esm/components/alert-dialog.props.js +1 -1
  589. package/dist/esm/components/avatar.d.ts.map +1 -1
  590. package/dist/esm/components/avatar.js +1 -1
  591. package/dist/esm/components/avatar.props.d.ts +2 -17
  592. package/dist/esm/components/avatar.props.d.ts.map +1 -1
  593. package/dist/esm/components/avatar.props.js +1 -1
  594. package/dist/esm/components/badge.d.ts.map +1 -1
  595. package/dist/esm/components/badge.js +1 -1
  596. package/dist/esm/components/badge.props.d.ts +1 -16
  597. package/dist/esm/components/badge.props.d.ts.map +1 -1
  598. package/dist/esm/components/badge.props.js +1 -1
  599. package/dist/esm/components/blockquote.js +1 -1
  600. package/dist/esm/components/blockquote.props.d.ts +1 -1
  601. package/dist/esm/components/blockquote.props.js +1 -1
  602. package/dist/esm/components/box.js +1 -1
  603. package/dist/esm/components/button.d.ts +1 -38
  604. package/dist/esm/components/button.d.ts.map +1 -1
  605. package/dist/esm/components/button.js +1 -1
  606. package/dist/esm/components/button.props.js +1 -1
  607. package/dist/esm/components/card.d.ts.map +1 -1
  608. package/dist/esm/components/card.js +1 -1
  609. package/dist/esm/components/card.props.d.ts +1 -8
  610. package/dist/esm/components/card.props.d.ts.map +1 -1
  611. package/dist/esm/components/card.props.js +1 -1
  612. package/dist/esm/components/chatbar.d.ts +1 -3
  613. package/dist/esm/components/chatbar.d.ts.map +1 -1
  614. package/dist/esm/components/chatbar.js +1 -1
  615. package/dist/esm/components/checkbox-cards.d.ts.map +1 -1
  616. package/dist/esm/components/checkbox-cards.js +1 -1
  617. package/dist/esm/components/checkbox-cards.props.d.ts +2 -10
  618. package/dist/esm/components/checkbox-cards.props.d.ts.map +1 -1
  619. package/dist/esm/components/checkbox-cards.props.js +1 -1
  620. package/dist/esm/components/checkbox-group.js +1 -1
  621. package/dist/esm/components/checkbox-group.props.d.ts +2 -8
  622. package/dist/esm/components/checkbox-group.props.d.ts.map +1 -1
  623. package/dist/esm/components/checkbox-group.props.js +1 -1
  624. package/dist/esm/components/checkbox.d.ts.map +1 -1
  625. package/dist/esm/components/checkbox.js +1 -1
  626. package/dist/esm/components/checkbox.props.js +1 -1
  627. package/dist/esm/components/code.js +1 -1
  628. package/dist/esm/components/code.props.d.ts +1 -1
  629. package/dist/esm/components/code.props.js +1 -1
  630. package/dist/esm/components/combobox.d.ts.map +1 -1
  631. package/dist/esm/components/combobox.js +1 -1
  632. package/dist/esm/components/combobox.props.d.ts +1 -20
  633. package/dist/esm/components/combobox.props.d.ts.map +1 -1
  634. package/dist/esm/components/combobox.props.js +1 -1
  635. package/dist/esm/components/container.js +1 -1
  636. package/dist/esm/components/context-menu.d.ts.map +1 -1
  637. package/dist/esm/components/context-menu.js +1 -1
  638. package/dist/esm/components/context-menu.props.js +1 -1
  639. package/dist/esm/components/data-list.js +1 -1
  640. package/dist/esm/components/data-list.props.js +1 -1
  641. package/dist/esm/components/dialog.d.ts.map +1 -1
  642. package/dist/esm/components/dialog.js +1 -1
  643. package/dist/esm/components/dialog.props.d.ts +0 -5
  644. package/dist/esm/components/dialog.props.d.ts.map +1 -1
  645. package/dist/esm/components/dialog.props.js +1 -1
  646. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  647. package/dist/esm/components/dropdown-menu.js +1 -1
  648. package/dist/esm/components/dropdown-menu.props.js +1 -1
  649. package/dist/esm/components/em.js +1 -1
  650. package/dist/esm/components/flex.js +1 -1
  651. package/dist/esm/components/grid.js +1 -1
  652. package/dist/esm/components/heading.js +1 -1
  653. package/dist/esm/components/heading.props.js +1 -1
  654. package/dist/esm/components/hover-card.js +1 -1
  655. package/dist/esm/components/icon-button.d.ts +1 -1
  656. package/dist/esm/components/icon-button.d.ts.map +1 -1
  657. package/dist/esm/components/icon-button.js +1 -1
  658. package/dist/esm/components/icon-button.props.js +1 -1
  659. package/dist/esm/components/image.d.ts +0 -5
  660. package/dist/esm/components/image.d.ts.map +1 -1
  661. package/dist/esm/components/image.js +1 -1
  662. package/dist/esm/components/index.d.ts +0 -3
  663. package/dist/esm/components/index.d.ts.map +1 -1
  664. package/dist/esm/components/index.js +1 -1
  665. package/dist/esm/components/inset.js +1 -1
  666. package/dist/esm/components/kbd.js +1 -1
  667. package/dist/esm/components/kbd.props.d.ts +2 -4
  668. package/dist/esm/components/kbd.props.d.ts.map +1 -1
  669. package/dist/esm/components/kbd.props.js +1 -1
  670. package/dist/esm/components/link.js +1 -1
  671. package/dist/esm/components/link.props.d.ts +1 -1
  672. package/dist/esm/components/link.props.js +1 -1
  673. package/dist/esm/components/message-scroller.js +1 -1
  674. package/dist/esm/components/navbar.js +1 -1
  675. package/dist/esm/components/notice.js +1 -1
  676. package/dist/esm/components/popover.d.ts.map +1 -1
  677. package/dist/esm/components/popover.js +1 -1
  678. package/dist/esm/components/popover.props.d.ts +0 -6
  679. package/dist/esm/components/popover.props.d.ts.map +1 -1
  680. package/dist/esm/components/popover.props.js +1 -1
  681. package/dist/esm/components/progress.js +1 -1
  682. package/dist/esm/components/progress.props.js +1 -1
  683. package/dist/esm/components/quote.js +1 -1
  684. package/dist/esm/components/radio-cards.d.ts.map +1 -1
  685. package/dist/esm/components/radio-cards.js +1 -1
  686. package/dist/esm/components/radio-cards.props.d.ts +2 -10
  687. package/dist/esm/components/radio-cards.props.d.ts.map +1 -1
  688. package/dist/esm/components/radio-cards.props.js +1 -1
  689. package/dist/esm/components/radio-group.js +1 -1
  690. package/dist/esm/components/radio-group.props.d.ts +1 -3
  691. package/dist/esm/components/radio-group.props.d.ts.map +1 -1
  692. package/dist/esm/components/radio-group.props.js +1 -1
  693. package/dist/esm/components/radio.d.ts.map +1 -1
  694. package/dist/esm/components/radio.js +1 -1
  695. package/dist/esm/components/radio.props.js +1 -1
  696. package/dist/esm/components/schemas/base-button.schema.d.ts +0 -7
  697. package/dist/esm/components/schemas/base-button.schema.d.ts.map +1 -1
  698. package/dist/esm/components/schemas/base-button.schema.js +1 -1
  699. package/dist/esm/components/schemas/button.schema.d.ts +7 -73
  700. package/dist/esm/components/schemas/button.schema.d.ts.map +1 -1
  701. package/dist/esm/components/schemas/button.schema.js +1 -1
  702. package/dist/esm/components/schemas/icon-button.schema.d.ts +0 -7
  703. package/dist/esm/components/schemas/icon-button.schema.d.ts.map +1 -1
  704. package/dist/esm/components/schemas/icon-button.schema.js +1 -1
  705. package/dist/esm/components/schemas/index.js +1 -1
  706. package/dist/esm/components/schemas/shell.schema.d.ts +5 -29
  707. package/dist/esm/components/schemas/shell.schema.d.ts.map +1 -1
  708. package/dist/esm/components/schemas/shell.schema.js +1 -1
  709. package/dist/esm/components/schemas/toggle-button.schema.d.ts +7 -73
  710. package/dist/esm/components/schemas/toggle-button.schema.d.ts.map +1 -1
  711. package/dist/esm/components/schemas/toggle-button.schema.js +1 -1
  712. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts +0 -7
  713. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts.map +1 -1
  714. package/dist/esm/components/schemas/toggle-icon-button.schema.js +1 -1
  715. package/dist/esm/components/scroll-area.d.ts.map +1 -1
  716. package/dist/esm/components/scroll-area.js +1 -1
  717. package/dist/esm/components/section.js +1 -1
  718. package/dist/esm/components/segmented-control.d.ts.map +1 -1
  719. package/dist/esm/components/segmented-control.js +1 -1
  720. package/dist/esm/components/segmented-control.props.d.ts +0 -11
  721. package/dist/esm/components/segmented-control.props.d.ts.map +1 -1
  722. package/dist/esm/components/segmented-control.props.js +1 -1
  723. package/dist/esm/components/select.d.ts.map +1 -1
  724. package/dist/esm/components/select.js +1 -1
  725. package/dist/esm/components/select.props.d.ts +1 -14
  726. package/dist/esm/components/select.props.d.ts.map +1 -1
  727. package/dist/esm/components/select.props.js +1 -1
  728. package/dist/esm/components/separator.js +1 -1
  729. package/dist/esm/components/separator.props.js +1 -1
  730. package/dist/esm/components/sheet.d.ts +1 -2
  731. package/dist/esm/components/sheet.d.ts.map +1 -1
  732. package/dist/esm/components/sheet.js +1 -1
  733. package/dist/esm/components/shell.context.js +1 -1
  734. package/dist/esm/components/shell.hooks.js +1 -1
  735. package/dist/esm/components/shell.js +1 -1
  736. package/dist/esm/components/shell.types.d.ts +1 -1
  737. package/dist/esm/components/shell.types.d.ts.map +1 -1
  738. package/dist/esm/components/shell.types.js +1 -1
  739. package/dist/esm/components/sidebar.d.ts +2 -92
  740. package/dist/esm/components/sidebar.d.ts.map +1 -1
  741. package/dist/esm/components/sidebar.js +1 -1
  742. package/dist/esm/components/skeleton.js +1 -1
  743. package/dist/esm/components/slider.js +1 -1
  744. package/dist/esm/components/slider.props.js +1 -1
  745. package/dist/esm/components/spinner.js +1 -1
  746. package/dist/esm/components/strong.js +1 -1
  747. package/dist/esm/components/switch.d.ts.map +1 -1
  748. package/dist/esm/components/switch.js +1 -1
  749. package/dist/esm/components/switch.props.d.ts +0 -18
  750. package/dist/esm/components/switch.props.d.ts.map +1 -1
  751. package/dist/esm/components/switch.props.js +1 -1
  752. package/dist/esm/components/tab-nav.d.ts.map +1 -1
  753. package/dist/esm/components/tab-nav.js +1 -1
  754. package/dist/esm/components/tab-nav.props.js +1 -1
  755. package/dist/esm/components/table.js +1 -1
  756. package/dist/esm/components/tabs.d.ts.map +1 -1
  757. package/dist/esm/components/tabs.js +1 -1
  758. package/dist/esm/components/tabs.props.js +1 -1
  759. package/dist/esm/components/text-area.d.ts.map +1 -1
  760. package/dist/esm/components/text-area.js +1 -1
  761. package/dist/esm/components/text-area.props.d.ts +1 -12
  762. package/dist/esm/components/text-area.props.d.ts.map +1 -1
  763. package/dist/esm/components/text-area.props.js +1 -1
  764. package/dist/esm/components/text-field.d.ts.map +1 -1
  765. package/dist/esm/components/text-field.js +1 -1
  766. package/dist/esm/components/text-field.props.d.ts +1 -12
  767. package/dist/esm/components/text-field.props.d.ts.map +1 -1
  768. package/dist/esm/components/text-field.props.js +1 -1
  769. package/dist/esm/components/text.js +1 -1
  770. package/dist/esm/components/text.props.js +1 -1
  771. package/dist/esm/components/theme-panel.d.ts.map +1 -1
  772. package/dist/esm/components/theme-panel.js +1 -1
  773. package/dist/esm/components/theme.d.ts +0 -3
  774. package/dist/esm/components/theme.d.ts.map +1 -1
  775. package/dist/esm/components/theme.js +1 -1
  776. package/dist/esm/components/theme.props.d.ts +1 -19
  777. package/dist/esm/components/theme.props.d.ts.map +1 -1
  778. package/dist/esm/components/theme.props.js +1 -1
  779. package/dist/esm/components/toggle-button.d.ts.map +1 -1
  780. package/dist/esm/components/toggle-button.js +1 -1
  781. package/dist/esm/components/toggle-icon-button.d.ts.map +1 -1
  782. package/dist/esm/components/toggle-icon-button.js +1 -1
  783. package/dist/esm/components/toolbar.d.ts +1 -1
  784. package/dist/esm/components/toolbar.d.ts.map +1 -1
  785. package/dist/esm/components/toolbar.js +1 -1
  786. package/dist/esm/components/tooltip.js +1 -1
  787. package/dist/esm/components/virtual-menu.js +1 -1
  788. package/dist/esm/helpers/extract-props.js +1 -1
  789. package/dist/esm/helpers/get-margin-styles.js +1 -1
  790. package/dist/esm/helpers/get-responsive-styles.js +1 -1
  791. package/dist/esm/helpers/index.js +1 -1
  792. package/dist/esm/helpers/map-prop-values.d.ts +1 -4
  793. package/dist/esm/helpers/map-prop-values.d.ts.map +1 -1
  794. package/dist/esm/helpers/map-prop-values.js +1 -1
  795. package/dist/esm/hooks/use-breakpoint.js +1 -1
  796. package/dist/esm/hooks/use-thumb-sync.d.ts +13 -0
  797. package/dist/esm/hooks/use-thumb-sync.d.ts.map +1 -0
  798. package/dist/esm/hooks/use-thumb-sync.js +2 -0
  799. package/dist/esm/index.js +1 -1
  800. package/dist/esm/props/color.prop.d.ts.map +1 -1
  801. package/dist/esm/props/color.prop.js +1 -1
  802. package/dist/esm/props/index.d.ts +0 -1
  803. package/dist/esm/props/index.d.ts.map +1 -1
  804. package/dist/esm/props/index.js +1 -1
  805. package/package.json +1 -2
  806. package/schemas/base-button.json +1 -16
  807. package/schemas/button.json +20 -233
  808. package/schemas/icon-button.json +1 -16
  809. package/schemas/index.json +53 -543
  810. package/schemas/shell-root.json +10 -0
  811. package/schemas/shell-sidebar.json +0 -29
  812. package/schemas/toggle-button.json +20 -233
  813. package/schemas/toggle-icon-button.json +1 -16
  814. package/src/components/_internal/base-button.css +7 -110
  815. package/src/components/_internal/base-button.props.ts +2 -6
  816. package/src/components/_internal/base-button.tsx +1 -6
  817. package/src/components/_internal/base-card.css +12 -54
  818. package/src/components/_internal/base-checkbox.css +9 -120
  819. package/src/components/_internal/base-checkbox.props.ts +3 -7
  820. package/src/components/_internal/base-dialog.css +5 -24
  821. package/src/components/_internal/base-menu.css +5 -44
  822. package/src/components/_internal/base-menu.props.ts +0 -20
  823. package/src/components/_internal/base-menu.utils.tsx +3 -13
  824. package/src/components/_internal/base-radio.css +8 -115
  825. package/src/components/_internal/base-radio.props.ts +2 -6
  826. package/src/components/_internal/base-sidebar-menu.css +0 -35
  827. package/src/components/_internal/base-sidebar.css +0 -37
  828. package/src/components/_internal/base-tab-list.css +8 -14
  829. package/src/components/_internal/base-tab-list.props.ts +3 -6
  830. package/src/components/_internal/shell-pane.tsx +2 -3
  831. package/src/components/_internal/shell-sidebar.tsx +5 -31
  832. package/src/components/_internal/shell-store.tsx +4 -4
  833. package/src/components/accordion.css +42 -95
  834. package/src/components/accordion.props.tsx +6 -13
  835. package/src/components/accordion.tsx +2 -6
  836. package/src/components/alert-dialog.props.tsx +0 -1
  837. package/src/components/alert-dialog.tsx +1 -13
  838. package/src/components/avatar.css +4 -31
  839. package/src/components/avatar.props.tsx +3 -13
  840. package/src/components/avatar.tsx +0 -4
  841. package/src/components/badge.css +1 -38
  842. package/src/components/badge.props.tsx +2 -12
  843. package/src/components/badge.tsx +0 -11
  844. package/src/components/blockquote.props.tsx +1 -1
  845. package/src/components/button.tsx +4 -84
  846. package/src/components/card.props.tsx +2 -6
  847. package/src/components/card.tsx +2 -3
  848. package/src/components/chatbar.css +6 -24
  849. package/src/components/chatbar.tsx +16 -31
  850. package/src/components/checkbox-cards.css +0 -1
  851. package/src/components/checkbox-cards.props.tsx +5 -9
  852. package/src/components/checkbox-cards.tsx +2 -6
  853. package/src/components/checkbox.tsx +0 -2
  854. package/src/components/code.css +20 -0
  855. package/src/components/code.props.tsx +1 -1
  856. package/src/components/combobox.css +14 -13
  857. package/src/components/combobox.props.tsx +2 -15
  858. package/src/components/combobox.tsx +7 -23
  859. package/src/components/context-menu.tsx +9 -18
  860. package/src/components/dialog.props.tsx +0 -3
  861. package/src/components/dialog.tsx +1 -13
  862. package/src/components/dropdown-menu.css +0 -21
  863. package/src/components/dropdown-menu.tsx +9 -20
  864. package/src/components/icon-button.tsx +1 -1
  865. package/src/components/image.css +2 -11
  866. package/src/components/image.tsx +2 -10
  867. package/src/components/index.css +0 -5
  868. package/src/components/index.tsx +0 -3
  869. package/src/components/kbd.css +37 -13
  870. package/src/components/kbd.props.tsx +2 -4
  871. package/src/components/link.props.tsx +1 -1
  872. package/src/components/popover.css +2 -6
  873. package/src/components/popover.props.tsx +3 -6
  874. package/src/components/popover.tsx +2 -6
  875. package/src/components/progress.css +12 -13
  876. package/src/components/radio-cards.css +0 -2
  877. package/src/components/radio-cards.props.tsx +5 -9
  878. package/src/components/radio-cards.tsx +2 -6
  879. package/src/components/radio-group.props.tsx +1 -2
  880. package/src/components/radio.tsx +1 -2
  881. package/src/components/reset.css +3 -16
  882. package/src/components/schemas/base-button.schema.ts +1 -21
  883. package/src/components/schemas/button.schema.ts +15 -94
  884. package/src/components/schemas/shell.schema.ts +2 -3
  885. package/src/components/scroll-area.css +0 -11
  886. package/src/components/scroll-area.tsx +3 -1
  887. package/src/components/segmented-control.css +11 -23
  888. package/src/components/segmented-control.props.tsx +0 -6
  889. package/src/components/segmented-control.tsx +1 -8
  890. package/src/components/select.css +81 -93
  891. package/src/components/select.props.tsx +2 -9
  892. package/src/components/select.tsx +5 -7
  893. package/src/components/sheet.css +0 -71
  894. package/src/components/sheet.tsx +5 -14
  895. package/src/components/shell.context.tsx +2 -2
  896. package/src/components/shell.css +7 -64
  897. package/src/components/shell.tsx +2 -2
  898. package/src/components/shell.types.ts +1 -1
  899. package/src/components/sidebar.css +78 -341
  900. package/src/components/sidebar.tsx +3 -244
  901. package/src/components/slider.css +12 -15
  902. package/src/components/spinner.css +2 -2
  903. package/src/components/switch.css +3 -55
  904. package/src/components/switch.props.tsx +0 -6
  905. package/src/components/switch.tsx +1 -4
  906. package/src/components/tab-nav.tsx +2 -5
  907. package/src/components/tabs.css +0 -2
  908. package/src/components/tabs.tsx +2 -5
  909. package/src/components/text-area.css +6 -13
  910. package/src/components/text-area.props.tsx +2 -9
  911. package/src/components/text-area.tsx +4 -9
  912. package/src/components/text-field.css +36 -44
  913. package/src/components/text-field.props.tsx +2 -9
  914. package/src/components/text-field.tsx +4 -9
  915. package/src/components/theme-panel.tsx +9 -13
  916. package/src/components/theme.props.tsx +1 -17
  917. package/src/components/theme.tsx +1 -26
  918. package/src/components/toggle-button.tsx +1 -1
  919. package/src/components/toggle-icon-button.tsx +6 -6
  920. package/src/components/toolbar.tsx +1 -4
  921. package/src/components/tooltip.css +1 -21
  922. package/src/helpers/map-prop-values.ts +1 -7
  923. package/src/hooks/use-thumb-sync.ts +55 -0
  924. package/src/props/color.prop.ts +1 -2
  925. package/src/props/index.ts +0 -1
  926. package/src/styles/tokens/base.css +0 -1
  927. package/src/styles/tokens/color.css +2 -32
  928. package/src/styles/tokens/constants.css +0 -90
  929. package/styles.css +963 -3146
  930. package/tokens/base.css +2 -110
  931. package/tokens.css +2 -155
  932. package/dist/cjs/components/app-bar.d.ts +0 -50
  933. package/dist/cjs/components/app-bar.d.ts.map +0 -1
  934. package/dist/cjs/components/app-bar.js +0 -2
  935. package/dist/cjs/components/app-bar.js.map +0 -7
  936. package/dist/cjs/components/callout.d.ts +0 -23
  937. package/dist/cjs/components/callout.d.ts.map +0 -1
  938. package/dist/cjs/components/callout.js +0 -2
  939. package/dist/cjs/components/callout.js.map +0 -7
  940. package/dist/cjs/components/callout.props.d.ts +0 -40
  941. package/dist/cjs/components/callout.props.d.ts.map +0 -1
  942. package/dist/cjs/components/callout.props.js +0 -2
  943. package/dist/cjs/components/callout.props.js.map +0 -7
  944. package/dist/cjs/components/sidebar.props.d.ts +0 -62
  945. package/dist/cjs/components/sidebar.props.d.ts.map +0 -1
  946. package/dist/cjs/components/sidebar.props.js +0 -2
  947. package/dist/cjs/components/sidebar.props.js.map +0 -7
  948. package/dist/cjs/components/user-card.d.ts +0 -13
  949. package/dist/cjs/components/user-card.d.ts.map +0 -1
  950. package/dist/cjs/components/user-card.js +0 -2
  951. package/dist/cjs/components/user-card.js.map +0 -7
  952. package/dist/cjs/components/user-card.props.d.ts +0 -60
  953. package/dist/cjs/components/user-card.props.d.ts.map +0 -1
  954. package/dist/cjs/components/user-card.props.js +0 -2
  955. package/dist/cjs/components/user-card.props.js.map +0 -7
  956. package/dist/cjs/helpers/parse-variant.d.ts +0 -8
  957. package/dist/cjs/helpers/parse-variant.d.ts.map +0 -1
  958. package/dist/cjs/helpers/parse-variant.js +0 -2
  959. package/dist/cjs/helpers/parse-variant.js.map +0 -7
  960. package/dist/cjs/helpers/use-deprecation-warning.d.ts +0 -10
  961. package/dist/cjs/helpers/use-deprecation-warning.d.ts.map +0 -1
  962. package/dist/cjs/helpers/use-deprecation-warning.js +0 -2
  963. package/dist/cjs/helpers/use-deprecation-warning.js.map +0 -7
  964. package/dist/esm/chunk-27SCVCQY.js +0 -2
  965. package/dist/esm/chunk-27SCVCQY.js.map +0 -7
  966. package/dist/esm/chunk-2C5WLKEZ.js +0 -2
  967. package/dist/esm/chunk-2C5WLKEZ.js.map +0 -7
  968. package/dist/esm/chunk-2DKLJMUU.js +0 -2
  969. package/dist/esm/chunk-2DKLJMUU.js.map +0 -7
  970. package/dist/esm/chunk-2EQWBT2S.js +0 -2
  971. package/dist/esm/chunk-2T74JEVN.js +0 -2
  972. package/dist/esm/chunk-2T74JEVN.js.map +0 -7
  973. package/dist/esm/chunk-3M73GWN5.js +0 -2
  974. package/dist/esm/chunk-3M73GWN5.js.map +0 -7
  975. package/dist/esm/chunk-3Q3EOUGJ.js +0 -2
  976. package/dist/esm/chunk-3Q3EOUGJ.js.map +0 -7
  977. package/dist/esm/chunk-3TIO3EMN.js +0 -2
  978. package/dist/esm/chunk-3TIO3EMN.js.map +0 -7
  979. package/dist/esm/chunk-3WCSLQNH.js +0 -2
  980. package/dist/esm/chunk-3WCSLQNH.js.map +0 -7
  981. package/dist/esm/chunk-45AMHIBO.js +0 -2
  982. package/dist/esm/chunk-45AMHIBO.js.map +0 -7
  983. package/dist/esm/chunk-47CEZJM2.js +0 -2
  984. package/dist/esm/chunk-47CEZJM2.js.map +0 -7
  985. package/dist/esm/chunk-4BPRLR6C.js +0 -2
  986. package/dist/esm/chunk-4BPRLR6C.js.map +0 -7
  987. package/dist/esm/chunk-4D5LR4H6.js +0 -2
  988. package/dist/esm/chunk-4D5LR4H6.js.map +0 -7
  989. package/dist/esm/chunk-4JNHUPIM.js +0 -2
  990. package/dist/esm/chunk-4WLDX7WZ.js +0 -2
  991. package/dist/esm/chunk-4WLDX7WZ.js.map +0 -7
  992. package/dist/esm/chunk-5JS7ADWX.js +0 -2
  993. package/dist/esm/chunk-5JS7ADWX.js.map +0 -7
  994. package/dist/esm/chunk-5T6K7VPP.js +0 -2
  995. package/dist/esm/chunk-5T6K7VPP.js.map +0 -7
  996. package/dist/esm/chunk-5TXQLK4G.js +0 -2
  997. package/dist/esm/chunk-5TXQLK4G.js.map +0 -7
  998. package/dist/esm/chunk-6JP5PIOO.js +0 -2
  999. package/dist/esm/chunk-6JP5PIOO.js.map +0 -7
  1000. package/dist/esm/chunk-7YIQV7VO.js +0 -2
  1001. package/dist/esm/chunk-7YIQV7VO.js.map +0 -7
  1002. package/dist/esm/chunk-A2XVR7GL.js.map +0 -7
  1003. package/dist/esm/chunk-ADFUYK3U.js.map +0 -7
  1004. package/dist/esm/chunk-ADXZNG4F.js +0 -2
  1005. package/dist/esm/chunk-ADXZNG4F.js.map +0 -7
  1006. package/dist/esm/chunk-ARDKQL7Q.js +0 -2
  1007. package/dist/esm/chunk-ARDKQL7Q.js.map +0 -7
  1008. package/dist/esm/chunk-AVFGMLL4.js +0 -2
  1009. package/dist/esm/chunk-AVFGMLL4.js.map +0 -7
  1010. package/dist/esm/chunk-BBMENJM3.js +0 -10
  1011. package/dist/esm/chunk-BBMENJM3.js.map +0 -7
  1012. package/dist/esm/chunk-BGVGSALM.js +0 -2
  1013. package/dist/esm/chunk-BGVGSALM.js.map +0 -7
  1014. package/dist/esm/chunk-BXX2NVQD.js +0 -5
  1015. package/dist/esm/chunk-BXX2NVQD.js.map +0 -7
  1016. package/dist/esm/chunk-C7EVYSWK.js +0 -1
  1017. package/dist/esm/chunk-CL6P54QT.js +0 -5
  1018. package/dist/esm/chunk-CL6P54QT.js.map +0 -7
  1019. package/dist/esm/chunk-CSUEZWN5.js +0 -2
  1020. package/dist/esm/chunk-CSUEZWN5.js.map +0 -7
  1021. package/dist/esm/chunk-DJA5MCJA.js +0 -2
  1022. package/dist/esm/chunk-DJA5MCJA.js.map +0 -7
  1023. package/dist/esm/chunk-DVSXWSAT.js +0 -2
  1024. package/dist/esm/chunk-DVSXWSAT.js.map +0 -7
  1025. package/dist/esm/chunk-FISGGGPC.js +0 -2
  1026. package/dist/esm/chunk-FISGGGPC.js.map +0 -7
  1027. package/dist/esm/chunk-FNB47XDO.js +0 -2
  1028. package/dist/esm/chunk-FNB47XDO.js.map +0 -7
  1029. package/dist/esm/chunk-GCUGJXI2.js +0 -2
  1030. package/dist/esm/chunk-GCUGJXI2.js.map +0 -7
  1031. package/dist/esm/chunk-GLKN32J3.js +0 -2
  1032. package/dist/esm/chunk-GLKN32J3.js.map +0 -7
  1033. package/dist/esm/chunk-GMHA5CFH.js +0 -2
  1034. package/dist/esm/chunk-GONBMSRL.js +0 -2
  1035. package/dist/esm/chunk-GONBMSRL.js.map +0 -7
  1036. package/dist/esm/chunk-GRRV4I2I.js +0 -2
  1037. package/dist/esm/chunk-GRRV4I2I.js.map +0 -7
  1038. package/dist/esm/chunk-H7LHGT44.js +0 -2
  1039. package/dist/esm/chunk-H7LHGT44.js.map +0 -7
  1040. package/dist/esm/chunk-HNO4X33C.js +0 -2
  1041. package/dist/esm/chunk-HNO4X33C.js.map +0 -7
  1042. package/dist/esm/chunk-IHRLGR6J.js +0 -2
  1043. package/dist/esm/chunk-IHRLGR6J.js.map +0 -7
  1044. package/dist/esm/chunk-IY3GKGDZ.js +0 -2
  1045. package/dist/esm/chunk-IY3GKGDZ.js.map +0 -7
  1046. package/dist/esm/chunk-JTN3KTAS.js +0 -2
  1047. package/dist/esm/chunk-JTN3KTAS.js.map +0 -7
  1048. package/dist/esm/chunk-KJC32RWT.js +0 -2
  1049. package/dist/esm/chunk-KJC32RWT.js.map +0 -7
  1050. package/dist/esm/chunk-LHGT24A5.js.map +0 -7
  1051. package/dist/esm/chunk-O2RISF37.js +0 -2
  1052. package/dist/esm/chunk-O2RISF37.js.map +0 -7
  1053. package/dist/esm/chunk-OB3MHLQL.js +0 -2
  1054. package/dist/esm/chunk-OB3MHLQL.js.map +0 -7
  1055. package/dist/esm/chunk-OJSDBLP7.js +0 -2
  1056. package/dist/esm/chunk-OJSDBLP7.js.map +0 -7
  1057. package/dist/esm/chunk-OUSDYZDE.js +0 -2
  1058. package/dist/esm/chunk-OUSDYZDE.js.map +0 -7
  1059. package/dist/esm/chunk-OVGPUFRI.js +0 -2
  1060. package/dist/esm/chunk-OVGPUFRI.js.map +0 -7
  1061. package/dist/esm/chunk-P3KYZBOB.js +0 -2
  1062. package/dist/esm/chunk-P3KYZBOB.js.map +0 -7
  1063. package/dist/esm/chunk-PLTTQFRQ.js +0 -2
  1064. package/dist/esm/chunk-PLTTQFRQ.js.map +0 -7
  1065. package/dist/esm/chunk-QXEQ2C6A.js +0 -2
  1066. package/dist/esm/chunk-QXEQ2C6A.js.map +0 -7
  1067. package/dist/esm/chunk-ROGC7K5N.js +0 -2
  1068. package/dist/esm/chunk-ROGC7K5N.js.map +0 -7
  1069. package/dist/esm/chunk-RON6FXLO.js +0 -2
  1070. package/dist/esm/chunk-RON6FXLO.js.map +0 -7
  1071. package/dist/esm/chunk-RWN22S44.js +0 -2
  1072. package/dist/esm/chunk-S3GZZXQ7.js +0 -2
  1073. package/dist/esm/chunk-S3GZZXQ7.js.map +0 -7
  1074. package/dist/esm/chunk-SIBSXKFF.js +0 -2
  1075. package/dist/esm/chunk-SIBSXKFF.js.map +0 -7
  1076. package/dist/esm/chunk-SURYYF7I.js +0 -2
  1077. package/dist/esm/chunk-SURYYF7I.js.map +0 -7
  1078. package/dist/esm/chunk-TUKX2BRO.js.map +0 -7
  1079. package/dist/esm/chunk-UE2OBZIS.js +0 -2
  1080. package/dist/esm/chunk-UE2OBZIS.js.map +0 -7
  1081. package/dist/esm/chunk-UGGAAL4V.js +0 -2
  1082. package/dist/esm/chunk-UGGAAL4V.js.map +0 -7
  1083. package/dist/esm/chunk-UK3BFTI2.js +0 -2
  1084. package/dist/esm/chunk-UK3BFTI2.js.map +0 -7
  1085. package/dist/esm/chunk-UTHTSYSL.js.map +0 -7
  1086. package/dist/esm/chunk-V3QVAXH3.js +0 -2
  1087. package/dist/esm/chunk-V3QVAXH3.js.map +0 -7
  1088. package/dist/esm/chunk-V5ZSDDVZ.js +0 -2
  1089. package/dist/esm/chunk-V5ZSDDVZ.js.map +0 -7
  1090. package/dist/esm/chunk-VBAXORVV.js +0 -2
  1091. package/dist/esm/chunk-VJUFYYKP.js +0 -2
  1092. package/dist/esm/chunk-VJUFYYKP.js.map +0 -7
  1093. package/dist/esm/chunk-VUKTURU4.js +0 -2
  1094. package/dist/esm/chunk-VUKTURU4.js.map +0 -7
  1095. package/dist/esm/chunk-WDNTAQ6G.js +0 -2
  1096. package/dist/esm/chunk-WDNTAQ6G.js.map +0 -7
  1097. package/dist/esm/chunk-WHAKQCNV.js +0 -2
  1098. package/dist/esm/chunk-WHAKQCNV.js.map +0 -7
  1099. package/dist/esm/chunk-WTXQB2EV.js +0 -2
  1100. package/dist/esm/chunk-WTXQB2EV.js.map +0 -7
  1101. package/dist/esm/chunk-XILM2OMC.js +0 -2
  1102. package/dist/esm/chunk-XILM2OMC.js.map +0 -7
  1103. package/dist/esm/chunk-XKBLNVOD.js +0 -2
  1104. package/dist/esm/chunk-YA5DF67M.js.map +0 -7
  1105. package/dist/esm/chunk-YBS2IB7Z.js +0 -2
  1106. package/dist/esm/chunk-YBS2IB7Z.js.map +0 -7
  1107. package/dist/esm/chunk-YL62I5SI.js +0 -2
  1108. package/dist/esm/chunk-ZK55O7TN.js +0 -2
  1109. package/dist/esm/chunk-ZK55O7TN.js.map +0 -7
  1110. package/dist/esm/chunk-ZVIWTYHE.js +0 -2
  1111. package/dist/esm/chunk-ZVIWTYHE.js.map +0 -7
  1112. package/dist/esm/components/app-bar.d.ts +0 -50
  1113. package/dist/esm/components/app-bar.d.ts.map +0 -1
  1114. package/dist/esm/components/app-bar.js +0 -2
  1115. package/dist/esm/components/callout.d.ts +0 -23
  1116. package/dist/esm/components/callout.d.ts.map +0 -1
  1117. package/dist/esm/components/callout.js +0 -2
  1118. package/dist/esm/components/callout.js.map +0 -7
  1119. package/dist/esm/components/callout.props.d.ts +0 -40
  1120. package/dist/esm/components/callout.props.d.ts.map +0 -1
  1121. package/dist/esm/components/callout.props.js +0 -2
  1122. package/dist/esm/components/callout.props.js.map +0 -7
  1123. package/dist/esm/components/sidebar.props.d.ts +0 -62
  1124. package/dist/esm/components/sidebar.props.d.ts.map +0 -1
  1125. package/dist/esm/components/sidebar.props.js +0 -2
  1126. package/dist/esm/components/sidebar.props.js.map +0 -7
  1127. package/dist/esm/components/user-card.d.ts +0 -13
  1128. package/dist/esm/components/user-card.d.ts.map +0 -1
  1129. package/dist/esm/components/user-card.js +0 -2
  1130. package/dist/esm/components/user-card.js.map +0 -7
  1131. package/dist/esm/components/user-card.props.d.ts +0 -60
  1132. package/dist/esm/components/user-card.props.d.ts.map +0 -1
  1133. package/dist/esm/components/user-card.props.js +0 -2
  1134. package/dist/esm/components/user-card.props.js.map +0 -7
  1135. package/dist/esm/helpers/parse-variant.d.ts +0 -8
  1136. package/dist/esm/helpers/parse-variant.d.ts.map +0 -1
  1137. package/dist/esm/helpers/parse-variant.js +0 -2
  1138. package/dist/esm/helpers/parse-variant.js.map +0 -7
  1139. package/dist/esm/helpers/use-deprecation-warning.d.ts +0 -10
  1140. package/dist/esm/helpers/use-deprecation-warning.d.ts.map +0 -1
  1141. package/dist/esm/helpers/use-deprecation-warning.js +0 -2
  1142. package/dist/esm/helpers/use-deprecation-warning.js.map +0 -7
  1143. package/src/components/animations.css +0 -155
  1144. package/src/components/app-bar.css +0 -204
  1145. package/src/components/app-bar.tsx +0 -261
  1146. package/src/components/callout.css +0 -160
  1147. package/src/components/callout.props.tsx +0 -29
  1148. package/src/components/callout.tsx +0 -120
  1149. package/src/components/sidebar.props.tsx +0 -56
  1150. package/src/components/user-card.css +0 -29
  1151. package/src/components/user-card.props.tsx +0 -46
  1152. package/src/components/user-card.tsx +0 -106
  1153. package/src/helpers/parse-variant.ts +0 -21
  1154. package/src/helpers/use-deprecation-warning.ts +0 -26
  1155. package/src/styles/tokens/transition.css +0 -189
  1156. /package/dist/esm/{chunk-K7BWSYVP.js.map → chunk-2IPVLV6B.js.map} +0 -0
  1157. /package/dist/esm/{chunk-SQ4BU4GH.js.map → chunk-2NNB4ZZ5.js.map} +0 -0
  1158. /package/dist/esm/{chunk-JXVUTFQN.js.map → chunk-2XSRO44Q.js.map} +0 -0
  1159. /package/dist/esm/{chunk-KXSMY4ZF.js.map → chunk-35KS5AQE.js.map} +0 -0
  1160. /package/dist/esm/{chunk-34UMKY2L.js.map → chunk-5RHODJDJ.js.map} +0 -0
  1161. /package/dist/esm/{chunk-ZQVYY7UT.js.map → chunk-672FI4OH.js.map} +0 -0
  1162. /package/dist/esm/{chunk-BWVYB64R.js.map → chunk-6ERCPRXX.js.map} +0 -0
  1163. /package/dist/esm/{chunk-PXUQEA77.js.map → chunk-7CBZFHSQ.js.map} +0 -0
  1164. /package/dist/esm/{chunk-LOLLL7AV.js.map → chunk-7UW7D77E.js.map} +0 -0
  1165. /package/dist/esm/{chunk-62CJL5G7.js.map → chunk-A2NG5NRN.js.map} +0 -0
  1166. /package/dist/esm/{chunk-43A5GUSI.js.map → chunk-AMP7O3DM.js.map} +0 -0
  1167. /package/dist/esm/{chunk-UBOOUDS4.js.map → chunk-AO32NT75.js.map} +0 -0
  1168. /package/dist/esm/{chunk-HFVD7W6R.js.map → chunk-BFLO4IVZ.js.map} +0 -0
  1169. /package/dist/esm/{chunk-O2WPAUQN.js.map → chunk-CL6LRPCS.js.map} +0 -0
  1170. /package/dist/esm/{chunk-EUH5MK4Q.js.map → chunk-DQTJMIRO.js.map} +0 -0
  1171. /package/dist/esm/{chunk-GLERJXVS.js.map → chunk-DSB3TEAQ.js.map} +0 -0
  1172. /package/dist/esm/{chunk-HIBX2EXV.js.map → chunk-ELZEAEN2.js.map} +0 -0
  1173. /package/dist/esm/{chunk-IV4YJRVR.js.map → chunk-EVTNB4TB.js.map} +0 -0
  1174. /package/dist/esm/{chunk-SGUTNJUO.js.map → chunk-GVLTTTFL.js.map} +0 -0
  1175. /package/dist/esm/{chunk-CIKDGYX3.js.map → chunk-HVQ3SLQC.js.map} +0 -0
  1176. /package/dist/esm/{chunk-N6Q3L64W.js.map → chunk-IYFDCW7Y.js.map} +0 -0
  1177. /package/dist/esm/{chunk-7FC7HF76.js.map → chunk-JLI7WHV6.js.map} +0 -0
  1178. /package/dist/esm/{chunk-OW4KAIWF.js.map → chunk-JQURG6CB.js.map} +0 -0
  1179. /package/dist/esm/{chunk-EUSMN3K7.js.map → chunk-K5SC3CZZ.js.map} +0 -0
  1180. /package/dist/esm/{chunk-UBWRIE4C.js.map → chunk-K7J23OPW.js.map} +0 -0
  1181. /package/dist/esm/{chunk-SQZ5O7QS.js.map → chunk-KLIREDPE.js.map} +0 -0
  1182. /package/dist/esm/{chunk-ALG6R3ZX.js.map → chunk-MD3QCXRD.js.map} +0 -0
  1183. /package/dist/esm/{chunk-2EQWBT2S.js.map → chunk-MGQ4A2FI.js.map} +0 -0
  1184. /package/dist/esm/{chunk-CMEKH4I5.js.map → chunk-MGSHX5N5.js.map} +0 -0
  1185. /package/dist/esm/{chunk-ZE2GWHPY.js.map → chunk-MVW2SY4F.js.map} +0 -0
  1186. /package/dist/esm/{chunk-KJTEZVOF.js.map → chunk-O6K6RZXY.js.map} +0 -0
  1187. /package/dist/esm/{chunk-JUY7CBSL.js.map → chunk-PBFSBHBS.js.map} +0 -0
  1188. /package/dist/esm/{chunk-3HGHPAH4.js.map → chunk-PDBVZAUJ.js.map} +0 -0
  1189. /package/dist/esm/{chunk-C7EVYSWK.js.map → chunk-QDW5ZG5E.js.map} +0 -0
  1190. /package/dist/esm/{chunk-R2MQMCND.js.map → chunk-QJFAGWBO.js.map} +0 -0
  1191. /package/dist/esm/{chunk-JGR3L4SN.js.map → chunk-R4CN4Q3G.js.map} +0 -0
  1192. /package/dist/esm/{chunk-RUPET4E7.js.map → chunk-RVHKSNMJ.js.map} +0 -0
  1193. /package/dist/esm/{chunk-HJLBVNQE.js.map → chunk-RYURXQLJ.js.map} +0 -0
  1194. /package/dist/esm/{chunk-RUOOCYK4.js.map → chunk-S53ZQNHK.js.map} +0 -0
  1195. /package/dist/esm/{chunk-5G4WWJ4Z.js.map → chunk-T5DSQKKF.js.map} +0 -0
  1196. /package/dist/esm/{chunk-3XSB7YIM.js.map → chunk-TBZO22XK.js.map} +0 -0
  1197. /package/dist/esm/{chunk-C7UXUTUF.js.map → chunk-TGRRQHLQ.js.map} +0 -0
  1198. /package/dist/esm/{chunk-IVBKTHDM.js.map → chunk-TPHNDGSV.js.map} +0 -0
  1199. /package/dist/esm/{chunk-YL62I5SI.js.map → chunk-UA6FP7HS.js.map} +0 -0
  1200. /package/dist/esm/{chunk-6FLLFCBU.js.map → chunk-UBSLEGQZ.js.map} +0 -0
  1201. /package/dist/esm/{chunk-LJXP6K5Y.js.map → chunk-V2TPYSZ2.js.map} +0 -0
  1202. /package/dist/esm/{chunk-YLLCCUC7.js.map → chunk-X3UTLDGG.js.map} +0 -0
  1203. /package/dist/esm/{chunk-3UZHKW6I.js.map → chunk-XHF6RBOE.js.map} +0 -0
  1204. /package/dist/esm/{chunk-IPHKKZYE.js.map → chunk-XHKL4PG7.js.map} +0 -0
  1205. /package/dist/esm/{chunk-PAEHH3WS.js.map → chunk-XZ5XZS5O.js.map} +0 -0
  1206. /package/dist/esm/{components/app-bar.js.map → hooks/use-thumb-sync.js.map} +0 -0
@@ -0,0 +1,2 @@
1
+ import{a as p}from"./chunk-MLJLEOZ5.js";import{a as m}from"./chunk-UBSLEGQZ.js";import{a as l}from"./chunk-GSTOGDAJ.js";import{a as y}from"./chunk-OS3FCYZY.js";var b={};y(b,{Item:()=>f,Root:()=>g});import*as e from"react";import i from"classnames";import{ToggleGroup as d}from"radix-ui";import{useControllableState as h}from"radix-ui/internal";var g=e.forwardRef((o,t)=>{let{className:r,children:a,radius:n,value:P,defaultValue:u,onValueChange:C,material:c,...S}=m(o,p,l),R=c,[v,I]=h({prop:P,onChange:C,defaultProp:u??""});return e.createElement(d.Root,{"data-disabled":o.disabled||void 0,"data-radius":n,"data-material":R,ref:t,className:i("rt-SegmentedControlRoot",r),onValueChange:s=>{s&&I(s)},...S,type:"single",value:v,asChild:!1,disabled:!!o.disabled},a,e.createElement("div",{className:"rt-SegmentedControlIndicator"}))});g.displayName="SegmentedControl.Root";var f=e.forwardRef(({children:o,className:t,iconOnly:r,...a},n)=>e.createElement(d.Item,{ref:n,className:i("rt-reset","rt-SegmentedControlItem",t),"data-icon-only":r||void 0,...a,disabled:!1,asChild:!1},e.createElement("span",{className:"rt-SegmentedControlItemSeparator"}),e.createElement("span",{className:"rt-SegmentedControlItemLabel"},e.createElement("span",{className:"rt-SegmentedControlItemLabelActive"},o),e.createElement("span",{className:"rt-SegmentedControlItemLabelInactive","aria-hidden":!0},o))));f.displayName="SegmentedControl.Item";export{g as a,f as b,b as c};
2
+ //# sourceMappingURL=chunk-23WDP4JG.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/segmented-control.tsx"],
4
+ "sourcesContent": ["'use client';\n\nimport { warnDeprecated } from '../helpers/warn-deprecated.js';\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { ToggleGroup as ToggleGroupPrimitive } from 'radix-ui';\nimport { useControllableState } from 'radix-ui/internal';\n\nimport { segmentedControlRootPropDefs } from './segmented-control.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\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 SegmentedControlRootOwnProps = GetPropDefTypes<typeof segmentedControlRootPropDefs>;\n\ninterface SegmentedControlRootProps\n extends ComponentPropsWithout<'div', RemovedProps | 'dir'>,\n SegmentedControlRootOwnProps,\n MarginProps {\n value?: string;\n defaultValue?: string;\n onValueChange?(value: string): void;\n}\n\nconst SegmentedControlRoot = React.forwardRef<HTMLDivElement, SegmentedControlRootProps>(\n (props, forwardedRef) => {\n const {\n className,\n children,\n radius,\n value: valueProp,\n defaultValue: defaultValueProp,\n onValueChange: onValueChangeProp,\n material: materialProp,\n ...rootProps\n } = extractProps(props, segmentedControlRootPropDefs, marginPropDefs);\n const material = materialProp;\n\n\n const [value, setValue] = useControllableState({\n prop: valueProp,\n onChange: onValueChangeProp,\n defaultProp: defaultValueProp ?? '',\n });\n\n return (\n <ToggleGroupPrimitive.Root\n data-disabled={props.disabled || undefined}\n data-radius={radius}\n data-material={material}\n ref={forwardedRef}\n className={classNames('rt-SegmentedControlRoot', className)}\n onValueChange={(value) => {\n if (value) {\n setValue(value);\n }\n }}\n {...rootProps}\n type=\"single\"\n value={value}\n asChild={false}\n disabled={!!props.disabled}\n >\n {children}\n <div className=\"rt-SegmentedControlIndicator\" />\n </ToggleGroupPrimitive.Root>\n );\n },\n);\n\nSegmentedControlRoot.displayName = 'SegmentedControl.Root';\n\ninterface SegmentedControlItemOwnProps {\n value: string;\n /** When true, applies fixed square width for icon-only segments */\n iconOnly?: boolean;\n}\n\ninterface SegmentedControlItemProps\n extends ComponentPropsWithout<\n typeof ToggleGroupPrimitive.Item,\n RemovedProps | 'disabled' | 'type' | 'value'\n >,\n SegmentedControlItemOwnProps {}\n\nconst SegmentedControlItem = React.forwardRef<HTMLButtonElement, SegmentedControlItemProps>(\n ({ children, className, iconOnly, ...props }, forwardedRef) => (\n <ToggleGroupPrimitive.Item\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-SegmentedControlItem', className)}\n data-icon-only={iconOnly || undefined}\n {...props}\n disabled={false}\n asChild={false}\n >\n <span className=\"rt-SegmentedControlItemSeparator\" />\n <span className=\"rt-SegmentedControlItemLabel\">\n <span className=\"rt-SegmentedControlItemLabelActive\">{children}</span>\n <span className=\"rt-SegmentedControlItemLabelInactive\" aria-hidden>\n {children}\n </span>\n </span>\n </ToggleGroupPrimitive.Item>\n ),\n);\n\nSegmentedControlItem.displayName = 'SegmentedControl.Item';\n\nexport { SegmentedControlRoot as Root, SegmentedControlItem as Item };\nexport type { SegmentedControlRootProps as RootProps, SegmentedControlItemProps as ItemProps };\n"],
5
+ "mappings": "gKAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,SAAAC,IAGA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,eAAeC,MAA4B,WACpD,OAAS,wBAAAC,MAA4B,oBAqBrC,IAAMC,EAA6B,aACjC,CAACC,EAAOC,IAAiB,CACvB,GAAM,CACJ,UAAAC,EACA,SAAAC,EACA,OAAAC,EACA,MAAOC,EACP,aAAcC,EACd,cAAeC,EACf,SAAUC,EACV,GAAGC,CACL,EAAIC,EAAaV,EAAOW,EAA8BC,CAAc,EAC9DC,EAAWL,EAGX,CAACM,EAAOC,CAAQ,EAAIC,EAAqB,CAC7C,KAAMX,EACN,SAAUE,EACV,YAAaD,GAAoB,EACnC,CAAC,EAED,OACE,gBAACW,EAAqB,KAArB,CACC,gBAAejB,EAAM,UAAY,OACjC,cAAaI,EACb,gBAAeS,EACf,IAAKZ,EACL,UAAWiB,EAAW,0BAA2BhB,CAAS,EAC1D,cAAgBY,GAAU,CACpBA,GACFC,EAASD,CAAK,CAElB,EACC,GAAGL,EACJ,KAAK,SACL,MAAOK,EACP,QAAS,GACT,SAAU,CAAC,CAACd,EAAM,UAEjBG,EACD,gBAAC,OAAI,UAAU,+BAA+B,CAChD,CAEJ,CACF,EAEAJ,EAAqB,YAAc,wBAenC,IAAMoB,EAA6B,aACjC,CAAC,CAAE,SAAAhB,EAAU,UAAAD,EAAW,SAAAkB,EAAU,GAAGpB,CAAM,EAAGC,IAC5C,gBAACgB,EAAqB,KAArB,CACC,IAAKhB,EACL,UAAWiB,EAAW,WAAY,0BAA2BhB,CAAS,EACtE,iBAAgBkB,GAAY,OAC3B,GAAGpB,EACJ,SAAU,GACV,QAAS,IAET,gBAAC,QAAK,UAAU,mCAAmC,EACnD,gBAAC,QAAK,UAAU,gCACd,gBAAC,QAAK,UAAU,sCAAsCG,CAAS,EAC/D,gBAAC,QAAK,UAAU,uCAAuC,cAAW,IAC/DA,CACH,CACF,CACF,CAEJ,EAEAgB,EAAqB,YAAc",
6
+ "names": ["segmented_control_exports", "__export", "SegmentedControlItem", "SegmentedControlRoot", "React", "classNames", "ToggleGroupPrimitive", "useControllableState", "SegmentedControlRoot", "props", "forwardedRef", "className", "children", "radius", "valueProp", "defaultValueProp", "onValueChangeProp", "materialProp", "rootProps", "extractProps", "segmentedControlRootPropDefs", "marginPropDefs", "material", "value", "setValue", "useControllableState", "ToggleGroupPrimitive", "classNames", "SegmentedControlItem", "iconOnly"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as p}from"./chunk-UBWRIE4C.js";import{a as o}from"./chunk-6FLLFCBU.js";import{a as e}from"./chunk-GSTOGDAJ.js";import*as r from"react";import i from"classnames";var P=r.forwardRef((t,a)=>{let{className:s,color:m,decorative:n,...f}=o(t,p,e);return r.createElement("span",{"data-accent-color":m,role:n?void 0:"separator",...f,ref:a,className:i("rt-Separator",s)})});P.displayName="Separator";export{P as a};
2
- //# sourceMappingURL=chunk-K7BWSYVP.js.map
1
+ import{a as p}from"./chunk-K7J23OPW.js";import{a as o}from"./chunk-UBSLEGQZ.js";import{a as e}from"./chunk-GSTOGDAJ.js";import*as r from"react";import i from"classnames";var P=r.forwardRef((t,a)=>{let{className:s,color:m,decorative:n,...f}=o(t,p,e);return r.createElement("span",{"data-accent-color":m,role:n?void 0:"separator",...f,ref:a,className:i("rt-Separator",s)})});P.displayName="Separator";export{P as a};
2
+ //# sourceMappingURL=chunk-2IPVLV6B.js.map
@@ -0,0 +1,2 @@
1
+ import{a as A}from"./chunk-X3UTLDGG.js";import{b as V,d as L,f as O}from"./chunk-IX5HIHVI.js";import{a as W}from"./chunk-MJJ7XDIP.js";import{c as T}from"./chunk-2NNB4ZZ5.js";import{b as y,c as g}from"./chunk-PRRJ4WRE.js";import{a as N}from"./chunk-HKRQ3E3I.js";import{c as C,d as k,e as z,f as D}from"./chunk-HI3JY3DJ.js";import{b as I,c as b,d as v,e as S,f as h}from"./chunk-FK6F6ROH.js";import{a as R}from"./chunk-UBSLEGQZ.js";import{a as te}from"./chunk-OS3FCYZY.js";var oe={};te(oe,{CheckboxItem:()=>U,Content:()=>F,Group:()=>H,Item:()=>K,Label:()=>q,RadioGroup:()=>J,RadioItem:()=>Q,Root:()=>_,Separator:()=>$,Sub:()=>X,SubContent:()=>Z,SubTrigger:()=>Y,Trigger:()=>j,Virtual:()=>A});import*as e from"react";import u from"classnames";import{ContextMenu as a,Slot as G}from"radix-ui";var _=t=>e.createElement(a.Root,{...t});_.displayName="ContextMenu.Root";var j=e.forwardRef(({children:t,...n},o)=>e.createElement(a.Trigger,{...n,ref:o,asChild:!0},W(t)));j.displayName="ContextMenu.Trigger";var E=e.createContext({}),F=e.forwardRef((t,n)=>{let o=y(),i=b(t.material,o),{size:r=C.size.default}=t,{className:s,children:m,color:l,container:x,forceMount:M,material:w,submenuBehavior:ee,virtualized:B=!1,...d}=R(t,C),p=l||o.accentColor,P=I(r,C.size.default),f=e.useMemo(()=>({size:r,color:p,material:i}),[r,p,i]),c=e.createElement(T,{size:r},e.createElement(E.Provider,{value:f},m));return e.createElement(a.Portal,{container:x,forceMount:M},e.createElement(g,{asChild:!0},e.createElement(a.Content,{"data-accent-color":p,"data-material":i,alignOffset:v(P,o.scaling),collisionPadding:10,...d,asChild:!1,ref:n,className:u("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-ContextMenuContent",s)},B?e.createElement("div",{className:u("rt-BaseMenuViewport","rt-ContextMenuViewport","rt-virtualized")},c):e.createElement(N,{type:"auto",scrollbars:"vertical"},e.createElement("div",{className:u("rt-BaseMenuViewport","rt-ContextMenuViewport")},c)))))});F.displayName="ContextMenu.Content";var q=e.forwardRef(({className:t,...n},o)=>e.createElement(a.Label,{...n,asChild:!1,ref:o,className:u("rt-BaseMenuLabel","rt-ContextMenuLabel",t)}));q.displayName="ContextMenu.Label";var K=e.forwardRef((t,n)=>{let{className:o,children:i,color:r=k.color.default,shortcut:s,...m}=t;return e.createElement(a.Item,{"data-accent-color":r,"aria-keyshortcuts":s?S(s):void 0,...m,ref:n,className:u("rt-reset","rt-BaseMenuItem","rt-ContextMenuItem",o)},e.createElement(G.Slottable,null,i),s&&e.createElement(h,{shortcut:s,className:"rt-ContextMenuShortcut"}))});K.displayName="ContextMenu.Item";var H=e.forwardRef(({className:t,...n},o)=>e.createElement(a.Group,{...n,asChild:!1,ref:o,className:u("rt-BaseMenuGroup","rt-ContextMenuGroup",t)}));H.displayName="ContextMenu.Group";var J=e.forwardRef(({className:t,...n},o)=>e.createElement(a.RadioGroup,{...n,asChild:!1,ref:o,className:u("rt-BaseMenuRadioGroup","rt-ContextMenuRadioGroup",t)}));J.displayName="ContextMenu.RadioGroup";var Q=e.forwardRef((t,n)=>{let{children:o,className:i,color:r=D.color.default,...s}=t;return e.createElement(a.RadioItem,{...s,asChild:!1,ref:n,"data-accent-color":r,className:u("rt-BaseMenuItem","rt-BaseMenuRadioItem","rt-ContextMenuItem","rt-ContextMenuRadioItem",i)},e.createElement(G.Slottable,null,o),e.createElement(a.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-ContextMenuItemIndicator"},e.createElement(O,{className:"rt-BaseMenuItemIndicatorIcon rt-ContextMenuItemIndicatorIcon"})))});Q.displayName="ContextMenu.RadioItem";var U=e.forwardRef((t,n)=>{let{children:o,className:i,shortcut:r,color:s=z.color.default,...m}=t;return e.createElement(a.CheckboxItem,{"aria-keyshortcuts":r?S(r):void 0,...m,asChild:!1,ref:n,"data-accent-color":s,className:u("rt-BaseMenuItem","rt-BaseMenuCheckboxItem","rt-ContextMenuItem","rt-ContextMenuCheckboxItem",i)},e.createElement(G.Slottable,null,o),e.createElement(a.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-ContextMenuItemIndicator"},e.createElement(V,{className:"rt-BaseMenuItemIndicatorIcon rt-ContextMenuItemIndicatorIcon"})),r&&e.createElement(h,{shortcut:r,className:"rt-ContextMenuShortcut"}))});U.displayName="ContextMenu.CheckboxItem";var X=t=>e.createElement(a.Sub,{...t});X.displayName="ContextMenu.Sub";var Y=e.forwardRef((t,n)=>{let{className:o,children:i,...r}=t;return e.createElement(a.SubTrigger,{...r,asChild:!1,ref:n,className:u("rt-BaseMenuItem","rt-BaseMenuSubTrigger","rt-ContextMenuItem","rt-ContextMenuSubTrigger",o)},i,e.createElement("div",{className:"rt-BaseMenuShortcut rt-ContextMenuShortcut"},e.createElement(L,{className:"rt-BaseMenuSubTriggerIcon rt-ContextMenuSubTriggerIcon"})))});Y.displayName="ContextMenu.SubTrigger";var Z=e.forwardRef((t,n)=>{let o=e.useContext(E),i=y(),r=t.size??o.size,s=t.color??o.color,m=t.material??o.material??b(void 0,i),{className:l,children:x,container:M,forceMount:w,color:ee,material:B,virtualized:d=!1,...p}=R({...t,size:r},C),P=I(r,C.size.default),f=e.useMemo(()=>({size:r,color:s,material:m}),[r,s,m]),c=e.createElement(T,{size:r},e.createElement(E.Provider,{value:f},x));return e.createElement(a.Portal,{container:M,forceMount:w},e.createElement(g,{asChild:!0},e.createElement(a.SubContent,{"data-accent-color":s,"data-material":m,alignOffset:v(P,i.scaling),sideOffset:1,collisionPadding:10,...p,asChild:!1,ref:n,className:u("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-BaseMenuSubContent","rt-ContextMenuContent","rt-ContextMenuSubContent",l)},d?e.createElement("div",{className:u("rt-BaseMenuViewport","rt-ContextMenuViewport","rt-virtualized")},c):e.createElement(N,{type:"auto",scrollbars:"vertical"},e.createElement("div",{className:u("rt-BaseMenuViewport","rt-ContextMenuViewport")},c)))))});Z.displayName="ContextMenu.SubContent";var $=e.forwardRef(({className:t,...n},o)=>e.createElement(a.Separator,{...n,asChild:!1,ref:o,className:u("rt-BaseMenuSeparator","rt-ContextMenuSeparator",t)}));$.displayName="ContextMenu.Separator";export{_ as a,j as b,F as c,q as d,K as e,H as f,J as g,Q as h,U as i,X as j,Y as k,Z as l,$ as m,oe as n};
2
+ //# sourceMappingURL=chunk-2MYYU7ST.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/context-menu.tsx"],
4
+ "sourcesContent": ["/**\n * Context Menu component that provides right-click menu functionality.\n * Requires client-side rendering due to event handling and portal usage.\n */\n'use client';\n\nimport { warnDeprecated } from '../helpers/warn-deprecated.js';\nimport * as React from 'react';\nimport { VirtualMenu } from './virtual-menu.js';\nimport classNames from 'classnames';\nimport { ContextMenu as ContextMenuPrimitive, Slot } from 'radix-ui';\n\nimport { ScrollArea } from './scroll-area.js';\nimport {\n contextMenuContentPropDefs,\n contextMenuSubContentPropDefs,\n contextMenuItemPropDefs,\n contextMenuCheckboxItemPropDefs,\n contextMenuRadioItemPropDefs,\n} from './context-menu.props.js';\nimport { Theme, useThemeContext } from './theme.js';\nimport { ThickCheckIcon, ThickChevronRightIcon, ThickDotIcon } from './icons.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { requireReactElement } from '../helpers/require-react-element.js';\nimport { MenuProvider } from './_internal/menu-context.js';\nimport {\n MenuShortcut,\n getMenuAlignOffset,\n resolveMenuMaterial,\n toAriaKeyShortcuts,\n useResolvedResponsiveValue,\n} from './_internal/base-menu.utils.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes, Responsive } from '../props/prop-def.js';\n\ninterface ContextMenuRootProps\n extends React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Root> {}\nconst ContextMenuRoot: React.FC<ContextMenuRootProps> = (props) => (\n <ContextMenuPrimitive.Root {...props} />\n);\nContextMenuRoot.displayName = 'ContextMenu.Root';\n\ntype ContextMenuTriggerElement = React.ElementRef<typeof ContextMenuPrimitive.Trigger>;\ninterface ContextMenuTriggerProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.Trigger, RemovedProps> {}\nconst ContextMenuTrigger = React.forwardRef<ContextMenuTriggerElement, ContextMenuTriggerProps>(\n ({ children, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Trigger {...props} ref={forwardedRef} asChild>\n {requireReactElement(children)}\n </ContextMenuPrimitive.Trigger>\n ),\n);\nContextMenuTrigger.displayName = 'ContextMenu.Trigger';\n\n/** Visual props shared by Content and SubContent. */\ntype ContextMenuSurfaceProps = GetPropDefTypes<typeof contextMenuContentPropDefs>;\n\ntype ContextMenuContentContextValue = {\n size?: ContextMenuSurfaceProps['size'];\n color?: ContextMenuSurfaceProps['color'];\n material?: ContextMenuSurfaceProps['material'];\n};\nconst ContextMenuContentContext = React.createContext<ContextMenuContentContextValue>({});\ntype ContextMenuContentElement = React.ElementRef<typeof ContextMenuPrimitive.Content>;\ninterface ContextMenuContentProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.Content, RemovedProps>,\n ContextMenuSurfaceProps {\n container?: React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Portal>['container'];\n /**\n * When true, skips the ScrollArea wrapper to allow VirtualMenu to handle its own scrolling.\n * Use this when rendering virtualized lists inside the context menu.\n */\n virtualized?: boolean;\n /**\n * @deprecated Has no effect. ContextMenu submenus always cascade.\n */\n submenuBehavior?: Responsive<'cascade' | 'drill-down'>;\n}\nconst ContextMenuContent = React.forwardRef<ContextMenuContentElement, ContextMenuContentProps>(\n (props, forwardedRef) => {\n const themeContext = useThemeContext();\n\n\n const material = resolveMenuMaterial(props.material, themeContext);\n const {\n size = contextMenuContentPropDefs.size.default,\n } = props;\n const {\n className,\n children,\n color,\n container,\n forceMount,\n material: _material,\n submenuBehavior: _submenuBehavior,\n virtualized = false,\n ...contentProps\n } = extractProps(props, contextMenuContentPropDefs);\n\n const resolvedColor = color || themeContext.accentColor;\n const scalarSize = useResolvedResponsiveValue(size, contextMenuContentPropDefs.size.default);\n\n const contextValue = React.useMemo(\n () => ({ size, color: resolvedColor, material }),\n [size, resolvedColor, material],\n );\n\n const body = (\n <MenuProvider size={size}>\n <ContextMenuContentContext.Provider value={contextValue}>{children}</ContextMenuContentContext.Provider>\n </MenuProvider>\n );\n\n return (\n <ContextMenuPrimitive.Portal container={container} forceMount={forceMount}>\n <Theme asChild>\n <ContextMenuPrimitive.Content\n data-accent-color={resolvedColor}\n data-material={material}\n alignOffset={getMenuAlignOffset(scalarSize, themeContext.scaling)}\n collisionPadding={10}\n {...contentProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-PopperContent',\n 'rt-BaseMenuContent',\n 'rt-variant-soft',\n 'rt-ContextMenuContent',\n className,\n )}\n >\n {virtualized ? (\n <div className={classNames('rt-BaseMenuViewport', 'rt-ContextMenuViewport', 'rt-virtualized')}>\n {body}\n </div>\n ) : (\n <ScrollArea type=\"auto\" scrollbars=\"vertical\">\n <div className={classNames('rt-BaseMenuViewport', 'rt-ContextMenuViewport')}>{body}</div>\n </ScrollArea>\n )}\n </ContextMenuPrimitive.Content>\n </Theme>\n </ContextMenuPrimitive.Portal>\n );\n },\n);\nContextMenuContent.displayName = 'ContextMenu.Content';\n\ntype ContextMenuLabelElement = React.ElementRef<typeof ContextMenuPrimitive.Label>;\ninterface ContextMenuLabelProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.Label, RemovedProps> {}\nconst ContextMenuLabel = React.forwardRef<ContextMenuLabelElement, ContextMenuLabelProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Label\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuLabel', 'rt-ContextMenuLabel', className)}\n />\n ),\n);\nContextMenuLabel.displayName = 'ContextMenu.Label';\n\ntype ContextMenuItemElement = React.ElementRef<typeof ContextMenuPrimitive.Item>;\ntype ContextMenuItemOwnProps = GetPropDefTypes<typeof contextMenuItemPropDefs>;\ninterface ContextMenuItemProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.Item, RemovedProps>,\n ContextMenuItemOwnProps {}\nconst ContextMenuItem = React.forwardRef<ContextMenuItemElement, ContextMenuItemProps>(\n (props, forwardedRef) => {\n const {\n className,\n children,\n color = contextMenuItemPropDefs.color.default,\n shortcut,\n ...itemProps\n } = props;\n return (\n <ContextMenuPrimitive.Item\n data-accent-color={color}\n aria-keyshortcuts={shortcut ? toAriaKeyShortcuts(shortcut) : undefined}\n {...itemProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-ContextMenuItem', className)}\n >\n <Slot.Slottable>{children}</Slot.Slottable>\n {shortcut && <MenuShortcut shortcut={shortcut} className=\"rt-ContextMenuShortcut\" />}\n </ContextMenuPrimitive.Item>\n );\n },\n);\nContextMenuItem.displayName = 'ContextMenu.Item';\n\ntype ContextMenuGroupElement = React.ElementRef<typeof ContextMenuPrimitive.Group>;\ninterface ContextMenuGroupProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.Group, RemovedProps> {}\nconst ContextMenuGroup = React.forwardRef<ContextMenuGroupElement, ContextMenuGroupProps>(\n ({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Group\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuGroup', 'rt-ContextMenuGroup', className)}\n />\n ),\n);\nContextMenuGroup.displayName = 'ContextMenu.Group';\n\ntype ContextMenuRadioGroupElement = React.ElementRef<typeof ContextMenuPrimitive.RadioGroup>;\ninterface ContextMenuRadioGroupProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.RadioGroup, RemovedProps> {}\nconst ContextMenuRadioGroup = React.forwardRef<\n ContextMenuRadioGroupElement,\n ContextMenuRadioGroupProps\n>(({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.RadioGroup\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuRadioGroup', 'rt-ContextMenuRadioGroup', className)}\n />\n));\nContextMenuRadioGroup.displayName = 'ContextMenu.RadioGroup';\n\ntype ContextMenuRadioItemElement = React.ElementRef<typeof ContextMenuPrimitive.RadioItem>;\ntype ContextMenuRadioItemOwnProps = GetPropDefTypes<typeof contextMenuRadioItemPropDefs>;\ninterface ContextMenuRadioItemProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.RadioItem, RemovedProps>,\n ContextMenuRadioItemOwnProps {}\nconst ContextMenuRadioItem = React.forwardRef<\n ContextMenuRadioItemElement,\n ContextMenuRadioItemProps\n>((props, forwardedRef) => {\n const {\n children,\n className,\n color = contextMenuRadioItemPropDefs.color.default,\n ...itemProps\n } = props;\n return (\n <ContextMenuPrimitive.RadioItem\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n data-accent-color={color}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuRadioItem',\n 'rt-ContextMenuItem',\n 'rt-ContextMenuRadioItem',\n className,\n )}\n >\n <Slot.Slottable>{children}</Slot.Slottable>\n <ContextMenuPrimitive.ItemIndicator className=\"rt-BaseMenuItemIndicator rt-ContextMenuItemIndicator\">\n <ThickDotIcon className=\"rt-BaseMenuItemIndicatorIcon rt-ContextMenuItemIndicatorIcon\" />\n </ContextMenuPrimitive.ItemIndicator>\n </ContextMenuPrimitive.RadioItem>\n );\n});\nContextMenuRadioItem.displayName = 'ContextMenu.RadioItem';\n\ntype ContextMenuCheckboxItemElement = React.ElementRef<typeof ContextMenuPrimitive.CheckboxItem>;\ntype ContextMenuCheckboxItemOwnProps = GetPropDefTypes<typeof contextMenuCheckboxItemPropDefs>;\ninterface ContextMenuCheckboxItemProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.CheckboxItem, RemovedProps>,\n ContextMenuCheckboxItemOwnProps {}\nconst ContextMenuCheckboxItem = React.forwardRef<\n ContextMenuCheckboxItemElement,\n ContextMenuCheckboxItemProps\n>((props, forwardedRef) => {\n const {\n children,\n className,\n shortcut,\n color = contextMenuCheckboxItemPropDefs.color.default,\n ...itemProps\n } = props;\n return (\n <ContextMenuPrimitive.CheckboxItem\n aria-keyshortcuts={shortcut ? toAriaKeyShortcuts(shortcut) : undefined}\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n data-accent-color={color}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuCheckboxItem',\n 'rt-ContextMenuItem',\n 'rt-ContextMenuCheckboxItem',\n className,\n )}\n >\n <Slot.Slottable>{children}</Slot.Slottable>\n <ContextMenuPrimitive.ItemIndicator className=\"rt-BaseMenuItemIndicator rt-ContextMenuItemIndicator\">\n <ThickCheckIcon className=\"rt-BaseMenuItemIndicatorIcon rt-ContextMenuItemIndicatorIcon\" />\n </ContextMenuPrimitive.ItemIndicator>\n {shortcut && <MenuShortcut shortcut={shortcut} className=\"rt-ContextMenuShortcut\" />}\n </ContextMenuPrimitive.CheckboxItem>\n );\n});\nContextMenuCheckboxItem.displayName = 'ContextMenu.CheckboxItem';\n\ninterface ContextMenuSubProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.Sub, RemovedProps> {}\nconst ContextMenuSub: React.FC<ContextMenuSubProps> = (props) => (\n <ContextMenuPrimitive.Sub {...props} />\n);\nContextMenuSub.displayName = 'ContextMenu.Sub';\n\ntype ContextMenuSubTriggerElement = React.ElementRef<typeof ContextMenuPrimitive.SubTrigger>;\ninterface ContextMenuSubTriggerProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.SubTrigger, RemovedProps> {}\nconst ContextMenuSubTrigger = React.forwardRef<\n ContextMenuSubTriggerElement,\n ContextMenuSubTriggerProps\n>((props, forwardedRef) => {\n const { className, children, ...subTriggerProps } = props;\n return (\n <ContextMenuPrimitive.SubTrigger\n {...subTriggerProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuSubTrigger',\n 'rt-ContextMenuItem',\n 'rt-ContextMenuSubTrigger',\n className,\n )}\n >\n {children}\n <div className=\"rt-BaseMenuShortcut rt-ContextMenuShortcut\">\n <ThickChevronRightIcon className=\"rt-BaseMenuSubTriggerIcon rt-ContextMenuSubTriggerIcon\" />\n </div>\n </ContextMenuPrimitive.SubTrigger>\n );\n});\nContextMenuSubTrigger.displayName = 'ContextMenu.SubTrigger';\n\ntype ContextMenuSubContentElement = React.ElementRef<typeof ContextMenuPrimitive.SubContent>;\ninterface ContextMenuSubContentProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.SubContent, RemovedProps>,\n ContextMenuSurfaceProps {\n container?: React.ComponentPropsWithoutRef<typeof ContextMenuPrimitive.Portal>['container'];\n /**\n * When true, skips the ScrollArea wrapper to allow VirtualMenu to handle its own scrolling.\n */\n virtualized?: boolean;\n}\nconst ContextMenuSubContent = React.forwardRef<\n ContextMenuSubContentElement,\n ContextMenuSubContentProps\n>((props, forwardedRef) => {\n const parent = React.useContext(ContextMenuContentContext);\n const themeContext = useThemeContext();\n\n\n // A submenu inherits the parent surface, and its own props win.\n const size = props.size ?? parent.size;\n const color = props.color ?? parent.color;\n const material =\n props.material ?? parent.material ?? resolveMenuMaterial(undefined, themeContext);\n\n const {\n className,\n children,\n container,\n forceMount,\n color: _color,\n material: _material,\n virtualized = false,\n ...subContentProps\n } = extractProps({ ...props, size }, contextMenuSubContentPropDefs);\n\n const scalarSize = useResolvedResponsiveValue(size, contextMenuSubContentPropDefs.size.default);\n\n const contextValue = React.useMemo(\n () => ({ size, color, material }),\n [size, color, material],\n );\n\n const body = (\n <MenuProvider size={size}>\n <ContextMenuContentContext.Provider value={contextValue}>{children}</ContextMenuContentContext.Provider>\n </MenuProvider>\n );\n\n return (\n <ContextMenuPrimitive.Portal container={container} forceMount={forceMount}>\n <Theme asChild>\n <ContextMenuPrimitive.SubContent\n data-accent-color={color}\n data-material={material}\n alignOffset={getMenuAlignOffset(scalarSize, themeContext.scaling)}\n // Side offset accounts for the outer solid box-shadow\n sideOffset={1}\n collisionPadding={10}\n {...subContentProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-PopperContent',\n 'rt-BaseMenuContent',\n 'rt-variant-soft',\n 'rt-BaseMenuSubContent',\n 'rt-ContextMenuContent',\n 'rt-ContextMenuSubContent',\n className,\n )}\n >\n {virtualized ? (\n <div className={classNames('rt-BaseMenuViewport', 'rt-ContextMenuViewport', 'rt-virtualized')}>\n {body}\n </div>\n ) : (\n <ScrollArea type=\"auto\" scrollbars=\"vertical\">\n <div className={classNames('rt-BaseMenuViewport', 'rt-ContextMenuViewport')}>{body}</div>\n </ScrollArea>\n )}\n </ContextMenuPrimitive.SubContent>\n </Theme>\n </ContextMenuPrimitive.Portal>\n );\n});\nContextMenuSubContent.displayName = 'ContextMenu.SubContent';\n\ntype ContextMenuSeparatorElement = React.ElementRef<typeof ContextMenuPrimitive.Separator>;\ninterface ContextMenuSeparatorProps\n extends ComponentPropsWithout<typeof ContextMenuPrimitive.Separator, RemovedProps> {}\nconst ContextMenuSeparator = React.forwardRef<\n ContextMenuSeparatorElement,\n ContextMenuSeparatorProps\n>(({ className, ...props }, forwardedRef) => (\n <ContextMenuPrimitive.Separator\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuSeparator', 'rt-ContextMenuSeparator', className)}\n />\n));\nContextMenuSeparator.displayName = 'ContextMenu.Separator';\n\nexport {\n ContextMenuRoot as Root,\n ContextMenuTrigger as Trigger,\n ContextMenuContent as Content,\n ContextMenuLabel as Label,\n ContextMenuItem as Item,\n ContextMenuGroup as Group,\n ContextMenuRadioGroup as RadioGroup,\n ContextMenuRadioItem as RadioItem,\n ContextMenuCheckboxItem as CheckboxItem,\n ContextMenuSub as Sub,\n ContextMenuSubTrigger as SubTrigger,\n ContextMenuSubContent as SubContent,\n ContextMenuSeparator as Separator,\n VirtualMenu as Virtual,\n};\n\nexport type {\n ContextMenuRootProps as RootProps,\n ContextMenuTriggerProps as TriggerProps,\n ContextMenuContentProps as ContentProps,\n ContextMenuLabelProps as LabelProps,\n ContextMenuItemProps as ItemProps,\n ContextMenuGroupProps as GroupProps,\n ContextMenuRadioGroupProps as RadioGroupProps,\n ContextMenuRadioItemProps as RadioItemProps,\n ContextMenuCheckboxItemProps as CheckboxItemProps,\n ContextMenuSubProps as SubProps,\n ContextMenuSubTriggerProps as SubTriggerProps,\n ContextMenuSubContentProps as SubContentProps,\n ContextMenuSeparatorProps as SeparatorProps,\n};\n"],
5
+ "mappings": "udAAA,IAAAA,GAAA,GAAAC,GAAAD,GAAA,kBAAAE,EAAA,YAAAC,EAAA,UAAAC,EAAA,SAAAC,EAAA,UAAAC,EAAA,eAAAC,EAAA,cAAAC,EAAA,SAAAC,EAAA,cAAAC,EAAA,QAAAC,EAAA,eAAAC,EAAA,eAAAC,EAAA,YAAAC,EAAA,YAAAC,IAOA,UAAYC,MAAW,QAEvB,OAAOC,MAAgB,aACvB,OAAS,eAAeC,EAAsB,QAAAC,MAAY,WA4B1D,IAAMC,EAAmDC,GACvD,gBAACC,EAAqB,KAArB,CAA2B,GAAGD,EAAO,EAExCD,EAAgB,YAAc,mBAK9B,IAAMG,EAA2B,aAC/B,CAAC,CAAE,SAAAC,EAAU,GAAGH,CAAM,EAAGI,IACvB,gBAACH,EAAqB,QAArB,CAA8B,GAAGD,EAAO,IAAKI,EAAc,QAAO,IAChEC,EAAoBF,CAAQ,CAC/B,CAEJ,EACAD,EAAmB,YAAc,sBAUjC,IAAMI,EAAkC,gBAA8C,CAAC,CAAC,EAgBlFC,EAA2B,aAC/B,CAACP,EAAOI,IAAiB,CACvB,IAAMI,EAAeC,EAAgB,EAG/BC,EAAWC,EAAoBX,EAAM,SAAUQ,CAAY,EAC3D,CACJ,KAAAI,EAAOC,EAA2B,KAAK,OACzC,EAAIb,EACE,CACJ,UAAAc,EACA,SAAAX,EACA,MAAAY,EACA,UAAAC,EACA,WAAAC,EACA,SAAUC,EACV,gBAAiBC,GACjB,YAAAC,EAAc,GACd,GAAGC,CACL,EAAIC,EAAatB,EAAOa,CAA0B,EAE5CU,EAAgBR,GAASP,EAAa,YACtCgB,EAAaC,EAA2Bb,EAAMC,EAA2B,KAAK,OAAO,EAErFa,EAAqB,UACzB,KAAO,CAAE,KAAAd,EAAM,MAAOW,EAAe,SAAAb,CAAS,GAC9C,CAACE,EAAMW,EAAeb,CAAQ,CAChC,EAEMiB,EACJ,gBAACC,EAAA,CAAa,KAAMhB,GAClB,gBAACN,EAA0B,SAA1B,CAAmC,MAAOoB,GAAevB,CAAS,CACrE,EAGF,OACE,gBAACF,EAAqB,OAArB,CAA4B,UAAWe,EAAW,WAAYC,GAC7D,gBAACY,EAAA,CAAM,QAAO,IACZ,gBAAC5B,EAAqB,QAArB,CACC,oBAAmBsB,EACnB,gBAAeb,EACf,YAAaoB,EAAmBN,EAAYhB,EAAa,OAAO,EAChE,iBAAkB,GACjB,GAAGa,EACJ,QAAS,GACT,IAAKjB,EACL,UAAW2B,EACT,mBACA,qBACJ,kBACI,wBACAjB,CACF,GAECM,EACC,gBAAC,OAAI,UAAWW,EAAW,sBAAuB,yBAA0B,gBAAgB,GACzFJ,CACH,EAEA,gBAACK,EAAA,CAAW,KAAK,OAAO,WAAW,YACjC,gBAAC,OAAI,UAAWD,EAAW,sBAAuB,wBAAwB,GAAIJ,CAAK,CACrF,CAEJ,CACF,CACF,CAEJ,CACF,EACApB,EAAmB,YAAc,sBAKjC,IAAM0B,EAAyB,aAC7B,CAAC,CAAE,UAAAnB,EAAW,GAAGd,CAAM,EAAGI,IACxB,gBAACH,EAAqB,MAArB,CACE,GAAGD,EACJ,QAAS,GACT,IAAKI,EACL,UAAW2B,EAAW,mBAAoB,sBAAuBjB,CAAS,EAC5E,CAEJ,EACAmB,EAAiB,YAAc,oBAO/B,IAAMC,EAAwB,aAC5B,CAAClC,EAAOI,IAAiB,CACvB,GAAM,CACJ,UAAAU,EACA,SAAAX,EACA,MAAAY,EAAQoB,EAAwB,MAAM,QACtC,SAAAC,EACA,GAAGC,CACL,EAAIrC,EACJ,OACE,gBAACC,EAAqB,KAArB,CACC,oBAAmBc,EACnB,oBAAmBqB,EAAWE,EAAmBF,CAAQ,EAAI,OAC5D,GAAGC,EACJ,IAAKjC,EACL,UAAW2B,EAAW,WAAY,kBAAmB,qBAAsBjB,CAAS,GAEpF,gBAACyB,EAAK,UAAL,KAAgBpC,CAAS,EACzBiC,GAAY,gBAACI,EAAA,CAAa,SAAUJ,EAAU,UAAU,yBAAyB,CACpF,CAEJ,CACF,EACAF,EAAgB,YAAc,mBAK9B,IAAMO,EAAyB,aAC7B,CAAC,CAAE,UAAA3B,EAAW,GAAGd,CAAM,EAAGI,IACxB,gBAACH,EAAqB,MAArB,CACE,GAAGD,EACJ,QAAS,GACT,IAAKI,EACL,UAAW2B,EAAW,mBAAoB,sBAAuBjB,CAAS,EAC5E,CAEJ,EACA2B,EAAiB,YAAc,oBAK/B,IAAMC,EAA8B,aAGlC,CAAC,CAAE,UAAA5B,EAAW,GAAGd,CAAM,EAAGI,IAC1B,gBAACH,EAAqB,WAArB,CACE,GAAGD,EACJ,QAAS,GACT,IAAKI,EACL,UAAW2B,EAAW,wBAAyB,2BAA4BjB,CAAS,EACtF,CACD,EACD4B,EAAsB,YAAc,yBAOpC,IAAMC,EAA6B,aAGjC,CAAC3C,EAAOI,IAAiB,CACzB,GAAM,CACJ,SAAAD,EACA,UAAAW,EACA,MAAAC,EAAQ6B,EAA6B,MAAM,QAC3C,GAAGP,CACL,EAAIrC,EACJ,OACE,gBAACC,EAAqB,UAArB,CACE,GAAGoC,EACJ,QAAS,GACT,IAAKjC,EACL,oBAAmBW,EACnB,UAAWgB,EACT,kBACA,uBACA,qBACA,0BACAjB,CACF,GAEA,gBAACyB,EAAK,UAAL,KAAgBpC,CAAS,EAC1B,gBAACF,EAAqB,cAArB,CAAmC,UAAU,wDAC5C,gBAAC4C,EAAA,CAAa,UAAU,+DAA+D,CACzF,CACF,CAEJ,CAAC,EACDF,EAAqB,YAAc,wBAOnC,IAAMG,EAAgC,aAGpC,CAAC9C,EAAOI,IAAiB,CACzB,GAAM,CACJ,SAAAD,EACA,UAAAW,EACA,SAAAsB,EACA,MAAArB,EAAQgC,EAAgC,MAAM,QAC9C,GAAGV,CACL,EAAIrC,EACJ,OACE,gBAACC,EAAqB,aAArB,CACC,oBAAmBmC,EAAWE,EAAmBF,CAAQ,EAAI,OAC5D,GAAGC,EACJ,QAAS,GACT,IAAKjC,EACL,oBAAmBW,EACnB,UAAWgB,EACT,kBACA,0BACA,qBACA,6BACAjB,CACF,GAEA,gBAACyB,EAAK,UAAL,KAAgBpC,CAAS,EAC1B,gBAACF,EAAqB,cAArB,CAAmC,UAAU,wDAC5C,gBAAC+C,EAAA,CAAe,UAAU,+DAA+D,CAC3F,EACCZ,GAAY,gBAACI,EAAA,CAAa,SAAUJ,EAAU,UAAU,yBAAyB,CACpF,CAEJ,CAAC,EACDU,EAAwB,YAAc,2BAItC,IAAMG,EAAiDjD,GACrD,gBAACC,EAAqB,IAArB,CAA0B,GAAGD,EAAO,EAEvCiD,EAAe,YAAc,kBAK7B,IAAMC,EAA8B,aAGlC,CAAClD,EAAOI,IAAiB,CACzB,GAAM,CAAE,UAAAU,EAAW,SAAAX,EAAU,GAAGgD,CAAgB,EAAInD,EACpD,OACE,gBAACC,EAAqB,WAArB,CACE,GAAGkD,EACJ,QAAS,GACT,IAAK/C,EACL,UAAW2B,EACT,kBACA,wBACA,qBACA,2BACAjB,CACF,GAECX,EACD,gBAAC,OAAI,UAAU,8CACb,gBAACiD,EAAA,CAAsB,UAAU,yDAAyD,CAC5F,CACF,CAEJ,CAAC,EACDF,EAAsB,YAAc,yBAYpC,IAAMG,EAA8B,aAGlC,CAACrD,EAAOI,IAAiB,CACzB,IAAMkD,EAAe,aAAWhD,CAAyB,EACnDE,EAAeC,EAAgB,EAI/BG,EAAOZ,EAAM,MAAQsD,EAAO,KAC5BvC,EAAQf,EAAM,OAASsD,EAAO,MAC9B5C,EACJV,EAAM,UAAYsD,EAAO,UAAY3C,EAAoB,OAAWH,CAAY,EAE5E,CACJ,UAAAM,EACA,SAAAX,EACA,UAAAa,EACA,WAAAC,EACA,MAAOsC,GACP,SAAUrC,EACV,YAAAE,EAAc,GACd,GAAGoC,CACL,EAAIlC,EAAa,CAAE,GAAGtB,EAAO,KAAAY,CAAK,EAAGC,CAA6B,EAE5DW,EAAaC,EAA2Bb,EAAMC,EAA8B,KAAK,OAAO,EAExFa,EAAqB,UACzB,KAAO,CAAE,KAAAd,EAAM,MAAAG,EAAO,SAAAL,CAAS,GAC/B,CAACE,EAAMG,EAAOL,CAAQ,CACxB,EAEMiB,EACJ,gBAACC,EAAA,CAAa,KAAMhB,GAClB,gBAACN,EAA0B,SAA1B,CAAmC,MAAOoB,GAAevB,CAAS,CACrE,EAGF,OACE,gBAACF,EAAqB,OAArB,CAA4B,UAAWe,EAAW,WAAYC,GAC7D,gBAACY,EAAA,CAAM,QAAO,IACZ,gBAAC5B,EAAqB,WAArB,CACC,oBAAmBc,EACnB,gBAAeL,EACf,YAAaoB,EAAmBN,EAAYhB,EAAa,OAAO,EAEhE,WAAY,EACZ,iBAAkB,GACjB,GAAGgD,EACJ,QAAS,GACT,IAAKpD,EACL,UAAW2B,EACT,mBACA,qBACF,kBACE,wBACA,wBACA,2BACAjB,CACF,GAECM,EACC,gBAAC,OAAI,UAAWW,EAAW,sBAAuB,yBAA0B,gBAAgB,GACzFJ,CACH,EAEA,gBAACK,EAAA,CAAW,KAAK,OAAO,WAAW,YACjC,gBAAC,OAAI,UAAWD,EAAW,sBAAuB,wBAAwB,GAAIJ,CAAK,CACrF,CAEJ,CACF,CACF,CAEJ,CAAC,EACD0B,EAAsB,YAAc,yBAKpC,IAAMI,EAA6B,aAGjC,CAAC,CAAE,UAAA3C,EAAW,GAAGd,CAAM,EAAGI,IAC1B,gBAACH,EAAqB,UAArB,CACE,GAAGD,EACJ,QAAS,GACT,IAAKI,EACL,UAAW2B,EAAW,uBAAwB,0BAA2BjB,CAAS,EACpF,CACD,EACD2C,EAAqB,YAAc",
6
+ "names": ["context_menu_exports", "__export", "ContextMenuCheckboxItem", "ContextMenuContent", "ContextMenuGroup", "ContextMenuItem", "ContextMenuLabel", "ContextMenuRadioGroup", "ContextMenuRadioItem", "ContextMenuRoot", "ContextMenuSeparator", "ContextMenuSub", "ContextMenuSubContent", "ContextMenuSubTrigger", "ContextMenuTrigger", "VirtualMenu", "React", "classNames", "ContextMenuPrimitive", "Slot", "ContextMenuRoot", "props", "ContextMenuPrimitive", "ContextMenuTrigger", "children", "forwardedRef", "requireReactElement", "ContextMenuContentContext", "ContextMenuContent", "themeContext", "useThemeContext", "material", "resolveMenuMaterial", "size", "baseMenuSubContentPropDefs", "className", "color", "container", "forceMount", "_material", "_submenuBehavior", "virtualized", "contentProps", "extractProps", "resolvedColor", "scalarSize", "useResolvedResponsiveValue", "contextValue", "body", "MenuProvider", "Theme", "getMenuAlignOffset", "classNames", "ScrollArea", "ContextMenuLabel", "ContextMenuItem", "baseMenuItemPropDefs", "shortcut", "itemProps", "toAriaKeyShortcuts", "Slot", "MenuShortcut", "ContextMenuGroup", "ContextMenuRadioGroup", "ContextMenuRadioItem", "baseMenuRadioItemPropDefs", "ThickDotIcon", "ContextMenuCheckboxItem", "baseMenuCheckboxItemPropDefs", "ThickCheckIcon", "ContextMenuSub", "ContextMenuSubTrigger", "subTriggerProps", "ThickChevronRightIcon", "ContextMenuSubContent", "parent", "_color", "subContentProps", "ContextMenuSeparator"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{b as u}from"./chunk-FISGGGPC.js";import{b as r}from"./chunk-UK3BFTI2.js";import*as e from"react";var s=e.createContext({isInsideMenu:!1}),p={1:24,2:32};function a(o,t){let n=t?parseFloat(t)/100:1;return p[o]*(Number.isFinite(n)?n:1)}function f({children:o,size:t}){let n=r(t,void 0),{scaling:c}=u(),i=n?a(n,c):void 0,d=e.useMemo(()=>({isInsideMenu:!0,size:n,itemHeight:i}),[n,i]);return e.createElement(s.Provider,{value:d},o)}function l(){return e.useContext(s)}export{p as a,a as b,f as c,l as d};
2
- //# sourceMappingURL=chunk-SQ4BU4GH.js.map
1
+ import{b as u}from"./chunk-PRRJ4WRE.js";import{b as r}from"./chunk-FK6F6ROH.js";import*as e from"react";var s=e.createContext({isInsideMenu:!1}),p={1:24,2:32};function a(o,t){let n=t?parseFloat(t)/100:1;return p[o]*(Number.isFinite(n)?n:1)}function f({children:o,size:t}){let n=r(t,void 0),{scaling:c}=u(),i=n?a(n,c):void 0,d=e.useMemo(()=>({isInsideMenu:!0,size:n,itemHeight:i}),[n,i]);return e.createElement(s.Provider,{value:d},o)}function l(){return e.useContext(s)}export{p as a,a as b,f as c,l as d};
2
+ //# sourceMappingURL=chunk-2NNB4ZZ5.js.map
@@ -0,0 +1,2 @@
1
+ import{a as ne}from"./chunk-X3UTLDGG.js";import{b as Q,c as Z,d as z,e as ee,f as oe}from"./chunk-IX5HIHVI.js";import{a as J}from"./chunk-MJJ7XDIP.js";import{c as L}from"./chunk-2NNB4ZZ5.js";import{b as O,c as G}from"./chunk-PRRJ4WRE.js";import{a as _}from"./chunk-HKRQ3E3I.js";import{b as y,c as S,d as A,e as F,f as j}from"./chunk-HI3JY3DJ.js";import{b as T,c as x,d as H,e as E,f as N}from"./chunk-FK6F6ROH.js";import{a as h}from"./chunk-UBSLEGQZ.js";import{a as P,b as I,c as U,d as Y,e as B,f as q,g as X,h as $,i as k}from"./chunk-JSW6J6RS.js";import{a as ye}from"./chunk-OS3FCYZY.js";var ke={};ye(ke,{CheckboxItem:()=>we,Content:()=>pe,Group:()=>le,Item:()=>de,Label:()=>ue,RadioGroup:()=>ce,RadioItem:()=>me,Root:()=>ae,Separator:()=>fe,Sub:()=>De,SubContent:()=>Pe,SubTrigger:()=>Me,Trigger:()=>ie,TriggerIcon:()=>ge,Virtual:()=>ne});import*as e from"react";import u from"classnames";import{DropdownMenu as p,Slot as Se}from"radix-ui";import{useCallbackRef as re}from"radix-ui/internal";var te=e.createContext(!1),ae=o=>{let{open:n,defaultOpen:r=!1,onOpenChange:s}=o,[a,t]=e.useState(r),i=n??a,d=re(s),l=e.useCallback(m=>{t(m),d(m)},[d]);return e.createElement(te.Provider,{value:i},e.createElement(p.Root,{...o,onOpenChange:l}))};ae.displayName="DropdownMenu.Root";var ie=e.forwardRef(({children:o,...n},r)=>e.createElement(p.Trigger,{...n,ref:r,asChild:!0},J(o)));ie.displayName="DropdownMenu.Trigger";var K=e.createContext({}),Te={ltr:"ArrowLeft",rtl:"ArrowRight"},xe={ltr:"ArrowRight",rtl:"ArrowLeft"};function Ee(o){return o instanceof HTMLElement&&(o.isContentEditable||o.tagName==="INPUT"||o.tagName==="TEXTAREA")}function se(o){return o?.closest("[dir]")?.getAttribute("dir")==="rtl"?"rtl":"ltr"}var pe=e.forwardRef((o,n)=>{let r=O(),s=x(o.material,r),{size:a=y.size.default}=o,{className:t,children:i,color:d,container:l,forceMount:m,material:M,submenuBehavior:c,virtualized:v=!1,onEscapeKeyDown:C,onKeyDown:g,...R}=h(o,y),w=d||r.accentColor,f=T(c,"cascade"),W=f==="drill-down",be=e.useContext(te),b=U(),Ie=D=>{C?.(D),!(D.defaultPrevented||!W||b.getDepth()===0)&&(D.preventDefault(),b.pop("keyboard"))},ve=D=>{g?.(D),!(D.defaultPrevented||!W||b.getDepth()===0)&&(Ee(D.target)||D.key===Te[se(D.currentTarget)]&&(D.preventDefault(),b.pop("keyboard")))},he=e.useMemo(()=>({size:a,color:w,material:s}),[a,w,s]),V=e.createElement(L,{size:a},e.createElement(K.Provider,{value:he},e.createElement(Y,{store:b,behavior:f,open:be},i)));return e.createElement(p.Portal,{container:l,forceMount:m},e.createElement(G,{asChild:!0},e.createElement(p.Content,{"data-accent-color":w,"data-material":s,align:"start",sideOffset:4,collisionPadding:10,...R,onEscapeKeyDown:Ie,onKeyDown:ve,asChild:!1,ref:n,className:u("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-DropdownMenuContent",t)},v?e.createElement("div",{className:u("rt-BaseMenuViewport","rt-DropdownMenuViewport","rt-virtualized")},V):e.createElement(_,{type:"auto",scrollbars:"vertical"},e.createElement("div",{className:u("rt-BaseMenuViewport","rt-DropdownMenuViewport")},V)))))});pe.displayName="DropdownMenu.Content";var ue=e.forwardRef(({className:o,...n},r)=>e.useContext(P)?e.createElement(p.Label,{...n,asChild:!1,ref:r,className:u("rt-BaseMenuLabel","rt-DropdownMenuLabel",o)}):null);ue.displayName="DropdownMenu.Label";var de=e.forwardRef((o,n)=>{let{className:r,children:s,color:a=A.color.default,shortcut:t,...i}=o;return e.useContext(P)?e.createElement(p.Item,{"data-accent-color":a,"aria-keyshortcuts":t?E(t):void 0,...i,ref:n,className:u("rt-reset","rt-BaseMenuItem","rt-DropdownMenuItem",r)},e.createElement(Se.Slottable,null,s),t&&e.createElement(N,{shortcut:t,className:"rt-DropdownMenuShortcut"})):null});de.displayName="DropdownMenu.Item";var le=e.forwardRef(({className:o,...n},r)=>e.createElement(p.Group,{...n,asChild:!1,ref:r,className:u("rt-BaseMenuGroup","rt-DropdownMenuGroup",o)}));le.displayName="DropdownMenu.Group";var ce=e.forwardRef(({className:o,...n},r)=>e.createElement(p.RadioGroup,{...n,asChild:!1,ref:r,className:u("rt-BaseMenuRadioGroup","rt-DropdownMenuRadioGroup",o)}));ce.displayName="DropdownMenu.RadioGroup";var me=e.forwardRef((o,n)=>{let{children:r,className:s,color:a=j.color.default,...t}=o;return e.useContext(P)?e.createElement(p.RadioItem,{...t,asChild:!1,ref:n,"data-accent-color":a,className:u("rt-BaseMenuItem","rt-BaseMenuRadioItem","rt-DropdownMenuItem","rt-DropdownMenuRadioItem",s)},r,e.createElement(p.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator"},e.createElement(oe,{className:"rt-BaseMenuItemIndicatorIcon rt-DropdownMenuItemIndicatorIcon"}))):null});me.displayName="DropdownMenu.RadioItem";var we=e.forwardRef((o,n)=>{let{children:r,className:s,shortcut:a,color:t=F.color.default,...i}=o;return e.useContext(P)?e.createElement(p.CheckboxItem,{"aria-keyshortcuts":a?E(a):void 0,...i,asChild:!1,ref:n,"data-accent-color":t,className:u("rt-BaseMenuItem","rt-BaseMenuCheckboxItem","rt-DropdownMenuItem","rt-DropdownMenuCheckboxItem",s)},r,e.createElement(p.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator"},e.createElement(Q,{className:"rt-BaseMenuItemIndicatorIcon rt-DropdownMenuItemIndicatorIcon"})),a&&e.createElement(N,{shortcut:a,className:"rt-DropdownMenuShortcut"})):null});we.displayName="DropdownMenu.CheckboxItem";var De=({label:o="Back",open:n,defaultOpen:r,onOpenChange:s,children:a})=>{let t=I(),i=e.useId(),d=e.useMemo(()=>({id:i,label:o}),[i,o]),l=B(t,i)!=="closed";e.useLayoutEffect(()=>{!t||n===void 0||(n&&!t.isOpen(i)?t.push(i,null):!n&&t.isOpen(i)&&t.close(i))},[t,n,i]);let m=e.useRef(r);e.useLayoutEffect(()=>{t&&m.current&&n===void 0&&t.push(i,null)},[]);let M=re(s),c=e.useRef(l);return e.useEffect(()=>{!t||c.current===l||(c.current=l,M(l))},[t,l,M]),e.createElement($.Provider,{value:d},e.createElement(p.Sub,{open:n,defaultOpen:r,onOpenChange:t?void 0:s},a))};De.displayName="DropdownMenu.Sub";var Me=e.forwardRef((o,n)=>{let{className:r,children:s,onKeyDown:a,...t}=o,i=I(),d=k(),l=e.useContext(P);if(i&&d){if(!l)return null;let m=c=>{c.preventDefault(),i.push(d.id)},M=c=>{a?.(c),!(c.defaultPrevented||t.disabled)&&c.key===xe[se(c.currentTarget)]&&(c.preventDefault(),i.push(d.id,"keyboard"))};return e.createElement(p.Item,{"aria-haspopup":"menu",...t,"data-drill-down-trigger":d.id,"data-drill-down-name":t.textValue,onSelect:m,onKeyDown:M,ref:n,className:u("rt-reset","rt-BaseMenuItem","rt-BaseMenuSubTrigger","rt-DropdownMenuItem","rt-DropdownMenuSubTrigger","rt-DropdownMenuDrillDownSubTrigger",r)},s,e.createElement("div",{className:"rt-BaseMenuShortcut rt-DropdownMenuShortcut"},e.createElement(z,{className:"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubTriggerIcon"})))}return e.createElement(p.SubTrigger,{...t,onKeyDown:a,asChild:!1,ref:n,className:u("rt-BaseMenuItem","rt-BaseMenuSubTrigger","rt-DropdownMenuItem","rt-DropdownMenuSubTrigger",r)},s,e.createElement("div",{className:"rt-BaseMenuShortcut rt-DropdownMenuShortcut"},e.createElement(z,{className:"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubTriggerIcon"})))});Me.displayName="DropdownMenu.SubTrigger";var fe=e.forwardRef(({className:o,...n},r)=>e.useContext(P)?e.createElement(p.Separator,{...n,asChild:!1,ref:r,className:u("rt-BaseMenuSeparator","rt-DropdownMenuSeparator",o)}):null);fe.displayName="DropdownMenu.Separator";function Ne({label:o,name:n}){let r=I(),s=e.useCallback(i=>{i.preventDefault(),r?.pop()},[r]),a=typeof o=="string"?o:n,t=a&&a!=="Back"?`Back from ${a}`:void 0;return e.createElement(p.Item,{"aria-label":t,textValue:a||"Back",onSelect:s,className:u("rt-reset","rt-BaseMenuItem","rt-DropdownMenuItem","rt-DropdownMenuDrillDownBackItem")},e.createElement(ee,{className:"rt-BaseMenuSubTriggerIcon rt-DropdownMenuDrillDownBackIcon"}),e.createElement("span",{className:"rt-DropdownMenuDrillDownBackLabel"},o))}function Be(o){let{loop:n,onEscapeKeyDown:r,onPointerDownOutside:s,onFocusOutside:a,onInteractOutside:t,sideOffset:i,alignOffset:d,avoidCollisions:l,collisionBoundary:m,collisionPadding:M,arrowPadding:c,sticky:v,hideWhenDetached:C,updatePositionStrategy:g,...R}=o;return R}var Pe=e.forwardRef((o,n)=>{let r=I(),s=k();return r&&s?e.createElement(Ce,{...o,ref:n,store:r,sub:s}):e.createElement(Re,{...o,ref:n})});Pe.displayName="DropdownMenu.SubContent";var Re=e.forwardRef((o,n)=>{let r=e.useContext(K),s=O(),a=o.size??r.size,t=o.color??r.color,i=o.material??r.material??x(void 0,s),{className:d,children:l,container:m,forceMount:M,color:c,material:v,virtualized:C=!1,...g}=h({...o,size:a},S),R=T(a,S.size.default),w=e.useMemo(()=>({size:a,color:t,material:i}),[a,t,i]),f=e.createElement(L,{size:a},e.createElement(K.Provider,{value:w},l));return e.createElement(p.Portal,{container:m,forceMount:M},e.createElement(G,{asChild:!0},e.createElement(p.SubContent,{"data-accent-color":t,"data-material":i,alignOffset:H(R,s.scaling),sideOffset:1,collisionPadding:10,...g,asChild:!1,ref:n,className:u("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-BaseMenuSubContent","rt-DropdownMenuContent","rt-DropdownMenuSubContent",d)},C?e.createElement("div",{className:u("rt-BaseMenuViewport","rt-DropdownMenuViewport","rt-virtualized")},f):e.createElement(_,{type:"auto",scrollbars:"vertical"},e.createElement("div",{className:u("rt-BaseMenuViewport","rt-DropdownMenuViewport")},f)))))});Re.displayName="DropdownMenu.CascadeSubContent";var Ce=e.forwardRef(({store:o,sub:n,...r},s)=>{let a=B(o,n.id),t=q(o,n.id),i=X(a==="top"?o:null);if(a==="closed")return null;let{className:d,children:l,container:m,forceMount:M,virtualized:c,size:v,color:C,material:g,...R}=Be(r),w=a==="top",f=t?.name||(typeof n.label=="string"?n.label:"");return e.createElement("div",{role:"group","aria-label":f||void 0,...R,ref:s,"data-drill-down-panel":n.id,"data-drill-down-active":w?!0:void 0,"data-animation-direction":w?i??void 0:void 0,className:u("rt-DropdownMenuDrillDownPanel",d)},w&&e.createElement(e.Fragment,null,e.createElement(Ne,{label:n.label,name:f}),e.createElement(p.Separator,{className:"rt-BaseMenuSeparator rt-DropdownMenuSeparator"})),e.createElement(P.Provider,{value:w},l))});Ce.displayName="DropdownMenu.DrillDownPanel";var ge=e.forwardRef(({className:o,...n},r)=>e.createElement(Z,{...n,ref:r,className:u("rt-DropdownMenuTriggerIcon",o)}));ge.displayName="DropdownMenu.TriggerIcon";export{ae as a,ie as b,pe as c,ue as d,de as e,le as f,ce as g,me as h,we as i,De as j,Me as k,fe as l,Pe as m,ge as n,ke as o};
2
+ //# sourceMappingURL=chunk-2NNCZM7P.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/dropdown-menu.tsx"],
4
+ "sourcesContent": ["'use client';\n\nimport { warnDeprecated } from '../helpers/warn-deprecated.js';\nimport * as React from 'react';\nimport { VirtualMenu } from './virtual-menu.js';\nimport classNames from 'classnames';\nimport { DropdownMenu as DropdownMenuPrimitive, Slot } from 'radix-ui';\nimport { useCallbackRef } from 'radix-ui/internal';\n\nimport { ScrollArea } from './scroll-area.js';\nimport {\n dropdownMenuContentPropDefs,\n dropdownMenuSubContentPropDefs,\n dropdownMenuItemPropDefs,\n dropdownMenuCheckboxItemPropDefs,\n dropdownMenuRadioItemPropDefs,\n} from './dropdown-menu.props.js';\nimport { Theme, useThemeContext } from './theme.js';\nimport { ChevronDownIcon, ThickCheckIcon, ThickChevronLeftIcon, ThickChevronRightIcon, ThickDotIcon } from './icons.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport {\n DrillDownLevelContext,\n DrillDownRoot,\n SubContext,\n useCreateDrillDownStore,\n useDrillDownDirection,\n useDrillDownStore,\n usePanelPosition,\n useStackEntry,\n useSubContext,\n} from './_internal/dropdown-menu-drill-down.js';\nimport { MenuProvider } from './_internal/menu-context.js';\nimport {\n MenuShortcut,\n getMenuAlignOffset,\n resolveMenuMaterial,\n toAriaKeyShortcuts,\n useResolvedResponsiveValue,\n} from './_internal/base-menu.utils.js';\nimport { requireReactElement } from '../helpers/require-react-element.js';\n\nimport type { SubmenuBehavior } from './_internal/dropdown-menu-drill-down.js';\nimport type { IconProps } from './icons.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes, Responsive } from '../props/prop-def.js';\n\n/**\n * Open state of the menu, mirrored from Root so Content can reset drill-down\n * navigation when a force-mounted menu opens again.\n */\nconst DropdownMenuOpenContext = React.createContext(false);\n\ninterface DropdownMenuRootProps\n extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Root> {}\nconst DropdownMenuRoot: React.FC<DropdownMenuRootProps> = (props) => {\n const { open: openProp, defaultOpen = false, onOpenChange } = props;\n const [uncontrolledOpen, setUncontrolledOpen] = React.useState(defaultOpen);\n const open = openProp ?? uncontrolledOpen;\n\n const handleOpenChangeProp = useCallbackRef(onOpenChange);\n const handleOpenChange = React.useCallback(\n (next: boolean) => {\n setUncontrolledOpen(next);\n handleOpenChangeProp(next);\n },\n [handleOpenChangeProp],\n );\n\n return (\n <DropdownMenuOpenContext.Provider value={open}>\n <DropdownMenuPrimitive.Root {...props} onOpenChange={handleOpenChange} />\n </DropdownMenuOpenContext.Provider>\n );\n};\nDropdownMenuRoot.displayName = 'DropdownMenu.Root';\n\ntype DropdownMenuTriggerElement = React.ElementRef<typeof DropdownMenuPrimitive.Trigger>;\ninterface DropdownMenuTriggerProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Trigger, RemovedProps> {}\nconst DropdownMenuTrigger = React.forwardRef<DropdownMenuTriggerElement, DropdownMenuTriggerProps>(\n ({ children, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Trigger {...props} ref={forwardedRef} asChild>\n {requireReactElement(children)}\n </DropdownMenuPrimitive.Trigger>\n ),\n);\nDropdownMenuTrigger.displayName = 'DropdownMenu.Trigger';\n\n/** Visual props shared by Content and SubContent. */\ntype DropdownMenuSurfaceProps = GetPropDefTypes<typeof dropdownMenuSubContentPropDefs>;\n\ntype DropdownMenuContentContextValue = {\n size?: DropdownMenuSurfaceProps['size'];\n color?: DropdownMenuSurfaceProps['color'];\n material?: DropdownMenuSurfaceProps['material'];\n};\nconst DropdownMenuContentContext = React.createContext<DropdownMenuContentContextValue>({});\n\n/** Keys that navigate back one drill-down level, by writing direction. */\nconst BACK_KEYS = { ltr: 'ArrowLeft', rtl: 'ArrowRight' } as const;\nconst FORWARD_KEYS = { ltr: 'ArrowRight', rtl: 'ArrowLeft' } as const;\n\nfunction isTextEntryTarget(target: EventTarget | null) {\n return (\n target instanceof HTMLElement &&\n (target.isContentEditable || target.tagName === 'INPUT' || target.tagName === 'TEXTAREA')\n );\n}\n\nfunction getDirection(element: HTMLElement | null): 'ltr' | 'rtl' {\n return element?.closest('[dir]')?.getAttribute('dir') === 'rtl' ? 'rtl' : 'ltr';\n}\n\ntype DropdownMenuContentElement = React.ElementRef<typeof DropdownMenuPrimitive.Content>;\ninterface DropdownMenuContentProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Content, RemovedProps>,\n DropdownMenuSurfaceProps {\n container?: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Portal>['container'];\n /**\n * Controls how submenus behave.\n * - `cascade`: Default cascading behavior where submenus open to the side (portal-based)\n * - `drill-down`: Mobile-friendly behavior where submenus replace the content inline\n * Supports responsive values: `{ initial: 'drill-down', md: 'cascade' }`\n */\n submenuBehavior?: Responsive<SubmenuBehavior>;\n /**\n * When true, skips the ScrollArea wrapper to allow VirtualMenu to handle its own scrolling.\n * Use this when rendering virtualized lists inside the dropdown.\n */\n virtualized?: boolean;\n}\nconst DropdownMenuContent = React.forwardRef<DropdownMenuContentElement, DropdownMenuContentProps>(\n (props, forwardedRef) => {\n const themeContext = useThemeContext();\n\n\n const material = resolveMenuMaterial(props.material, themeContext);\n const {\n size = dropdownMenuContentPropDefs.size.default,\n } = props;\n const {\n className,\n children,\n color,\n container,\n forceMount,\n material: _material,\n submenuBehavior,\n virtualized = false,\n onEscapeKeyDown,\n onKeyDown,\n ...contentProps\n } = extractProps(props, dropdownMenuContentPropDefs);\n\n const resolvedColor = color || themeContext.accentColor;\n const behavior = useResolvedResponsiveValue<SubmenuBehavior>(submenuBehavior, 'cascade');\n const isDrillDown = behavior === 'drill-down';\n const open = React.useContext(DropdownMenuOpenContext);\n const drillDownStore = useCreateDrillDownStore();\n\n // Escape goes back one drill-down level before it closes the menu.\n const handleEscapeKeyDown = (event: KeyboardEvent) => {\n onEscapeKeyDown?.(event);\n if (event.defaultPrevented || !isDrillDown || drillDownStore.getDepth() === 0) return;\n event.preventDefault();\n drillDownStore.pop('keyboard');\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || !isDrillDown || drillDownStore.getDepth() === 0) return;\n if (isTextEntryTarget(event.target)) return;\n if (event.key === BACK_KEYS[getDirection(event.currentTarget)]) {\n event.preventDefault();\n drillDownStore.pop('keyboard');\n }\n };\n\n const contextValue = React.useMemo(\n () => ({ size, color: resolvedColor, material }),\n [size, resolvedColor, material],\n );\n\n const contentBody = (\n <MenuProvider size={size}>\n <DropdownMenuContentContext.Provider value={contextValue}>\n <DrillDownRoot store={drillDownStore} behavior={behavior} open={open}>\n {children}\n </DrillDownRoot>\n </DropdownMenuContentContext.Provider>\n </MenuProvider>\n );\n\n return (\n <DropdownMenuPrimitive.Portal container={container} forceMount={forceMount}>\n <Theme asChild>\n <DropdownMenuPrimitive.Content\n data-accent-color={resolvedColor}\n data-material={material}\n align=\"start\"\n sideOffset={4}\n collisionPadding={10}\n {...contentProps}\n onEscapeKeyDown={handleEscapeKeyDown}\n onKeyDown={handleKeyDown}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-PopperContent',\n 'rt-BaseMenuContent',\n 'rt-variant-soft',\n 'rt-DropdownMenuContent',\n className,\n )}\n >\n {virtualized ? (\n <div className={classNames('rt-BaseMenuViewport', 'rt-DropdownMenuViewport', 'rt-virtualized')}>\n {contentBody}\n </div>\n ) : (\n <ScrollArea type=\"auto\" scrollbars=\"vertical\">\n <div className={classNames('rt-BaseMenuViewport', 'rt-DropdownMenuViewport')}>\n {contentBody}\n </div>\n </ScrollArea>\n )}\n </DropdownMenuPrimitive.Content>\n </Theme>\n </DropdownMenuPrimitive.Portal>\n );\n },\n);\nDropdownMenuContent.displayName = 'DropdownMenu.Content';\n\ntype DropdownMenuLabelElement = React.ElementRef<typeof DropdownMenuPrimitive.Label>;\ninterface DropdownMenuLabelProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Label, RemovedProps> {}\nconst DropdownMenuLabel = React.forwardRef<DropdownMenuLabelElement, DropdownMenuLabelProps>(\n ({ className, ...props }, forwardedRef) => {\n if (!React.useContext(DrillDownLevelContext)) return null;\n return (\n <DropdownMenuPrimitive.Label\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuLabel', 'rt-DropdownMenuLabel', className)}\n />\n );\n },\n);\nDropdownMenuLabel.displayName = 'DropdownMenu.Label';\n\ntype DropdownMenuItemElement = React.ElementRef<typeof DropdownMenuPrimitive.Item>;\ntype DropdownMenuItemOwnProps = GetPropDefTypes<typeof dropdownMenuItemPropDefs>;\ninterface DropdownMenuItemProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Item, RemovedProps>,\n DropdownMenuItemOwnProps {}\nconst DropdownMenuItem = React.forwardRef<DropdownMenuItemElement, DropdownMenuItemProps>(\n (props, forwardedRef) => {\n const {\n className,\n children,\n color = dropdownMenuItemPropDefs.color.default,\n shortcut,\n ...itemProps\n } = props;\n // In drill-down mode, items of levels that are not on screen do not mount.\n if (!React.useContext(DrillDownLevelContext)) return null;\n return (\n <DropdownMenuPrimitive.Item\n data-accent-color={color}\n aria-keyshortcuts={shortcut ? toAriaKeyShortcuts(shortcut) : undefined}\n {...itemProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseMenuItem', 'rt-DropdownMenuItem', className)}\n >\n <Slot.Slottable>{children}</Slot.Slottable>\n {shortcut && <MenuShortcut shortcut={shortcut} className=\"rt-DropdownMenuShortcut\" />}\n </DropdownMenuPrimitive.Item>\n );\n },\n);\nDropdownMenuItem.displayName = 'DropdownMenu.Item';\n\ntype DropdownMenuGroupElement = React.ElementRef<typeof DropdownMenuPrimitive.Group>;\ninterface DropdownMenuGroupProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Group, RemovedProps> {}\nconst DropdownMenuGroup = React.forwardRef<DropdownMenuGroupElement, DropdownMenuGroupProps>(\n ({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.Group\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuGroup', 'rt-DropdownMenuGroup', className)}\n />\n ),\n);\nDropdownMenuGroup.displayName = 'DropdownMenu.Group';\n\ntype DropdownMenuRadioGroupElement = React.ElementRef<typeof DropdownMenuPrimitive.RadioGroup>;\ninterface DropdownMenuRadioGroupProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.RadioGroup, RemovedProps> {}\nconst DropdownMenuRadioGroup = React.forwardRef<\n DropdownMenuRadioGroupElement,\n DropdownMenuRadioGroupProps\n>(({ className, ...props }, forwardedRef) => (\n <DropdownMenuPrimitive.RadioGroup\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuRadioGroup', 'rt-DropdownMenuRadioGroup', className)}\n />\n));\nDropdownMenuRadioGroup.displayName = 'DropdownMenu.RadioGroup';\n\ntype DropdownMenuRadioItemElement = React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>;\ntype DropdownMenuRadioItemOwnProps = GetPropDefTypes<typeof dropdownMenuRadioItemPropDefs>;\ninterface DropdownMenuRadioItemProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.RadioItem, RemovedProps>,\n DropdownMenuRadioItemOwnProps {}\nconst DropdownMenuRadioItem = React.forwardRef<\n DropdownMenuRadioItemElement,\n DropdownMenuRadioItemProps\n>((props, forwardedRef) => {\n const {\n children,\n className,\n color = dropdownMenuRadioItemPropDefs.color.default,\n ...itemProps\n } = props;\n if (!React.useContext(DrillDownLevelContext)) return null;\n return (\n <DropdownMenuPrimitive.RadioItem\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n data-accent-color={color}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuRadioItem',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuRadioItem',\n className,\n )}\n >\n {children}\n <DropdownMenuPrimitive.ItemIndicator className=\"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator\">\n <ThickDotIcon className=\"rt-BaseMenuItemIndicatorIcon rt-DropdownMenuItemIndicatorIcon\" />\n </DropdownMenuPrimitive.ItemIndicator>\n </DropdownMenuPrimitive.RadioItem>\n );\n});\nDropdownMenuRadioItem.displayName = 'DropdownMenu.RadioItem';\n\ntype DropdownMenuCheckboxItemElement = React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>;\ntype DropdownMenuCheckboxItemOwnProps = GetPropDefTypes<typeof dropdownMenuCheckboxItemPropDefs>;\ninterface DropdownMenuCheckboxItemProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.CheckboxItem, RemovedProps>,\n DropdownMenuCheckboxItemOwnProps {}\nconst DropdownMenuCheckboxItem = React.forwardRef<\n DropdownMenuCheckboxItemElement,\n DropdownMenuCheckboxItemProps\n>((props, forwardedRef) => {\n const {\n children,\n className,\n shortcut,\n color = dropdownMenuCheckboxItemPropDefs.color.default,\n ...itemProps\n } = props;\n if (!React.useContext(DrillDownLevelContext)) return null;\n return (\n <DropdownMenuPrimitive.CheckboxItem\n aria-keyshortcuts={shortcut ? toAriaKeyShortcuts(shortcut) : undefined}\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n data-accent-color={color}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuCheckboxItem',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuCheckboxItem',\n className,\n )}\n >\n {children}\n <DropdownMenuPrimitive.ItemIndicator className=\"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator\">\n <ThickCheckIcon className=\"rt-BaseMenuItemIndicatorIcon rt-DropdownMenuItemIndicatorIcon\" />\n </DropdownMenuPrimitive.ItemIndicator>\n {shortcut && <MenuShortcut shortcut={shortcut} className=\"rt-DropdownMenuShortcut\" />}\n </DropdownMenuPrimitive.CheckboxItem>\n );\n});\nDropdownMenuCheckboxItem.displayName = 'DropdownMenu.CheckboxItem';\n\ninterface DropdownMenuSubProps\n extends React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Sub> {\n /**\n * Label displayed in the back button when using drill-down mode.\n * If not provided, defaults to \"Back\".\n */\n label?: React.ReactNode;\n}\nconst DropdownMenuSub: React.FC<DropdownMenuSubProps> = ({\n label = 'Back',\n open,\n defaultOpen,\n onOpenChange,\n children,\n}) => {\n const drillDownStore = useDrillDownStore();\n const id = React.useId();\n const subContextValue = React.useMemo(() => ({ id, label }), [id, label]);\n const isOpenInDrillDown = usePanelPosition(drillDownStore, id) !== 'closed';\n\n // Drill-down: `open` and `defaultOpen` drive the stack; the stack drives\n // `onOpenChange`. A controlled `open` is applied when it changes.\n React.useLayoutEffect(() => {\n if (!drillDownStore || open === undefined) return;\n if (open && !drillDownStore.isOpen(id)) drillDownStore.push(id, null);\n else if (!open && drillDownStore.isOpen(id)) drillDownStore.close(id);\n }, [drillDownStore, open, id]);\n\n const defaultOpenRef = React.useRef(defaultOpen);\n React.useLayoutEffect(() => {\n if (drillDownStore && defaultOpenRef.current && open === undefined) drillDownStore.push(id, null);\n // Only on mount, like an uncontrolled default.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const handleOpenChange = useCallbackRef(onOpenChange);\n const wasOpenRef = React.useRef(isOpenInDrillDown);\n React.useEffect(() => {\n if (!drillDownStore || wasOpenRef.current === isOpenInDrillDown) return;\n wasOpenRef.current = isOpenInDrillDown;\n handleOpenChange(isOpenInDrillDown);\n }, [drillDownStore, isOpenInDrillDown, handleOpenChange]);\n\n // Radix Sub stays mounted in both behaviors so switching behavior does not\n // remount the subtree. It only renders context; in drill-down its trigger\n // and content are never rendered, so it reports no open changes of its own.\n return (\n <SubContext.Provider value={subContextValue}>\n <DropdownMenuPrimitive.Sub\n open={open}\n defaultOpen={defaultOpen}\n onOpenChange={drillDownStore ? undefined : onOpenChange}\n >\n {children}\n </DropdownMenuPrimitive.Sub>\n </SubContext.Provider>\n );\n};\nDropdownMenuSub.displayName = 'DropdownMenu.Sub';\n\ntype DropdownMenuSubTriggerElement = React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>;\ninterface DropdownMenuSubTriggerProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.SubTrigger, RemovedProps> {}\nconst DropdownMenuSubTrigger = React.forwardRef<\n DropdownMenuSubTriggerElement,\n DropdownMenuSubTriggerProps\n>((props, forwardedRef) => {\n const { className, children, onKeyDown, ...subTriggerProps } = props;\n const drillDownStore = useDrillDownStore();\n const subContext = useSubContext();\n const isLevelVisible = React.useContext(DrillDownLevelContext);\n\n if (drillDownStore && subContext) {\n if (!isLevelVisible) return null;\n\n const handleSelect = (event: Event) => {\n // Navigating does not close the menu.\n event.preventDefault();\n drillDownStore.push(subContext.id);\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(event);\n if (event.defaultPrevented || subTriggerProps.disabled) return;\n if (event.key === FORWARD_KEYS[getDirection(event.currentTarget)]) {\n event.preventDefault();\n drillDownStore.push(subContext.id, 'keyboard');\n }\n };\n\n return (\n <DropdownMenuPrimitive.Item\n aria-haspopup=\"menu\"\n {...subTriggerProps}\n data-drill-down-trigger={subContext.id}\n data-drill-down-name={subTriggerProps.textValue}\n onSelect={handleSelect}\n onKeyDown={handleKeyDown}\n ref={forwardedRef}\n className={classNames(\n 'rt-reset',\n 'rt-BaseMenuItem',\n 'rt-BaseMenuSubTrigger',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuSubTrigger',\n 'rt-DropdownMenuDrillDownSubTrigger',\n className,\n )}\n >\n {children}\n <div className=\"rt-BaseMenuShortcut rt-DropdownMenuShortcut\">\n <ThickChevronRightIcon className=\"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubTriggerIcon\" />\n </div>\n </DropdownMenuPrimitive.Item>\n );\n }\n\n return (\n <DropdownMenuPrimitive.SubTrigger\n {...subTriggerProps}\n onKeyDown={onKeyDown}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-BaseMenuItem',\n 'rt-BaseMenuSubTrigger',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuSubTrigger',\n className,\n )}\n >\n {children}\n <div className=\"rt-BaseMenuShortcut rt-DropdownMenuShortcut\">\n <ThickChevronRightIcon className=\"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubTriggerIcon\" />\n </div>\n </DropdownMenuPrimitive.SubTrigger>\n );\n});\nDropdownMenuSubTrigger.displayName = 'DropdownMenu.SubTrigger';\n\ntype DropdownMenuSeparatorElement = React.ElementRef<typeof DropdownMenuPrimitive.Separator>;\ninterface DropdownMenuSeparatorProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.Separator, RemovedProps> {}\nconst DropdownMenuSeparator = React.forwardRef<\n DropdownMenuSeparatorElement,\n DropdownMenuSeparatorProps\n>(({ className, ...props }, forwardedRef) => {\n if (!React.useContext(DrillDownLevelContext)) return null;\n return (\n <DropdownMenuPrimitive.Separator\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuSeparator', 'rt-DropdownMenuSeparator', className)}\n />\n );\n});\nDropdownMenuSeparator.displayName = 'DropdownMenu.Separator';\n\n/** The row at the top of a drill-down panel that returns to the parent level. */\nfunction DrillDownBackItem({ label, name }: { label: React.ReactNode; name: string }) {\n const drillDownStore = useDrillDownStore();\n\n const handleSelect = React.useCallback(\n (event: Event) => {\n // Navigating does not close the menu.\n event.preventDefault();\n drillDownStore?.pop();\n },\n [drillDownStore],\n );\n\n // The visible label is often the submenu title, so the accessible name says\n // what the row does while still containing the visible text.\n const labelText = typeof label === 'string' ? label : name;\n const ariaLabel = labelText && labelText !== 'Back' ? `Back from ${labelText}` : undefined;\n\n return (\n <DropdownMenuPrimitive.Item\n aria-label={ariaLabel}\n textValue={labelText || 'Back'}\n onSelect={handleSelect}\n className={classNames(\n 'rt-reset',\n 'rt-BaseMenuItem',\n 'rt-DropdownMenuItem',\n 'rt-DropdownMenuDrillDownBackItem',\n )}\n >\n <ThickChevronLeftIcon className=\"rt-BaseMenuSubTriggerIcon rt-DropdownMenuDrillDownBackIcon\" />\n <span className=\"rt-DropdownMenuDrillDownBackLabel\">{label}</span>\n </DropdownMenuPrimitive.Item>\n );\n}\n\n/** Radix positioning and layer props that have no meaning for an inline drill-down panel. */\ntype PopperOnlyProps =\n | 'loop'\n | 'onEscapeKeyDown'\n | 'onPointerDownOutside'\n | 'onFocusOutside'\n | 'onInteractOutside'\n | 'sideOffset'\n | 'alignOffset'\n | 'avoidCollisions'\n | 'collisionBoundary'\n | 'collisionPadding'\n | 'arrowPadding'\n | 'sticky'\n | 'hideWhenDetached'\n | 'updatePositionStrategy';\n\nfunction omitPopperProps<T extends Record<string, unknown>>(props: T): Omit<T, PopperOnlyProps> {\n const {\n loop: _loop,\n onEscapeKeyDown: _onEscapeKeyDown,\n onPointerDownOutside: _onPointerDownOutside,\n onFocusOutside: _onFocusOutside,\n onInteractOutside: _onInteractOutside,\n sideOffset: _sideOffset,\n alignOffset: _alignOffset,\n avoidCollisions: _avoidCollisions,\n collisionBoundary: _collisionBoundary,\n collisionPadding: _collisionPadding,\n arrowPadding: _arrowPadding,\n sticky: _sticky,\n hideWhenDetached: _hideWhenDetached,\n updatePositionStrategy: _updatePositionStrategy,\n ...rest\n } = props;\n return rest;\n}\n\ntype DropdownMenuSubContentElement = React.ElementRef<typeof DropdownMenuPrimitive.SubContent>;\ninterface DropdownMenuSubContentProps\n extends ComponentPropsWithout<typeof DropdownMenuPrimitive.SubContent, RemovedProps>,\n DropdownMenuSurfaceProps {\n container?: React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Portal>['container'];\n /**\n * When true, skips the ScrollArea wrapper so a VirtualMenu can handle its own\n * scrolling. Applies to cascade submenus; a drill-down panel scrolls with the\n * root content.\n */\n virtualized?: boolean;\n}\nconst DropdownMenuSubContent = React.forwardRef<\n DropdownMenuSubContentElement,\n DropdownMenuSubContentProps\n>((props, forwardedRef) => {\n const drillDownStore = useDrillDownStore();\n const subContext = useSubContext();\n\n if (drillDownStore && subContext) {\n return (\n <DrillDownPanel {...props} ref={forwardedRef} store={drillDownStore} sub={subContext} />\n );\n }\n return <CascadeSubContent {...props} ref={forwardedRef} />;\n});\nDropdownMenuSubContent.displayName = 'DropdownMenu.SubContent';\n\nconst CascadeSubContent = React.forwardRef<DropdownMenuSubContentElement, DropdownMenuSubContentProps>(\n (props, forwardedRef) => {\n const parent = React.useContext(DropdownMenuContentContext);\n const themeContext = useThemeContext();\n\n\n // A submenu inherits the parent surface, and its own props win.\n const size = props.size ?? parent.size;\n const color = props.color ?? parent.color;\n const material =\n props.material ?? parent.material ?? resolveMenuMaterial(undefined, themeContext);\n\n const {\n className,\n children,\n container,\n forceMount,\n color: _color,\n material: _material,\n virtualized = false,\n ...subContentProps\n } = extractProps({ ...props, size }, dropdownMenuSubContentPropDefs);\n\n const scalarSize = useResolvedResponsiveValue(size, dropdownMenuSubContentPropDefs.size.default);\n\n const contextValue = React.useMemo(\n () => ({ size, color, material }),\n [size, color, material],\n );\n\n const body = (\n <MenuProvider size={size}>\n <DropdownMenuContentContext.Provider value={contextValue}>{children}</DropdownMenuContentContext.Provider>\n </MenuProvider>\n );\n\n return (\n <DropdownMenuPrimitive.Portal container={container} forceMount={forceMount}>\n <Theme asChild>\n <DropdownMenuPrimitive.SubContent\n data-accent-color={color}\n data-material={material}\n alignOffset={getMenuAlignOffset(scalarSize, themeContext.scaling)}\n // Side offset accounts for the outer solid box-shadow\n sideOffset={1}\n collisionPadding={10}\n {...subContentProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-PopperContent',\n 'rt-BaseMenuContent',\n 'rt-variant-soft',\n 'rt-BaseMenuSubContent',\n 'rt-DropdownMenuContent',\n 'rt-DropdownMenuSubContent',\n className,\n )}\n >\n {virtualized ? (\n <div className={classNames('rt-BaseMenuViewport', 'rt-DropdownMenuViewport', 'rt-virtualized')}>\n {body}\n </div>\n ) : (\n <ScrollArea type=\"auto\" scrollbars=\"vertical\">\n <div className={classNames('rt-BaseMenuViewport', 'rt-DropdownMenuViewport')}>{body}</div>\n </ScrollArea>\n )}\n </DropdownMenuPrimitive.SubContent>\n </Theme>\n </DropdownMenuPrimitive.Portal>\n );\n },\n);\nCascadeSubContent.displayName = 'DropdownMenu.CascadeSubContent';\n\ninterface DrillDownPanelProps extends DropdownMenuSubContentProps {\n store: NonNullable<ReturnType<typeof useDrillDownStore>>;\n sub: NonNullable<ReturnType<typeof useSubContext>>;\n}\n\n/**\n * A submenu rendered inline in drill-down mode. It mounts its children only\n * while it is on the navigation stack, and shows its own items only while it\n * is the top level; deeper panels inside it stay mounted.\n */\nconst DrillDownPanel = React.forwardRef<DropdownMenuSubContentElement, DrillDownPanelProps>(\n ({ store, sub, ...props }, forwardedRef) => {\n const position = usePanelPosition(store, sub.id);\n const entry = useStackEntry(store, sub.id);\n const direction = useDrillDownDirection(position === 'top' ? store : null);\n\n if (position === 'closed') return null;\n\n const {\n className,\n children,\n container: _container,\n forceMount: _forceMount,\n virtualized: _virtualized,\n size: _size,\n color: _color,\n material: _material,\n ...panelProps\n } = omitPopperProps(props);\n\n const isTop = position === 'top';\n const name = entry?.name || (typeof sub.label === 'string' ? sub.label : '');\n\n return (\n <div\n role=\"group\"\n aria-label={name || undefined}\n {...panelProps}\n ref={forwardedRef}\n data-drill-down-panel={sub.id}\n data-drill-down-active={isTop ? true : undefined}\n data-animation-direction={isTop ? (direction ?? undefined) : undefined}\n className={classNames('rt-DropdownMenuDrillDownPanel', className)}\n >\n {isTop && (\n <>\n <DrillDownBackItem label={sub.label} name={name} />\n <DropdownMenuPrimitive.Separator className=\"rt-BaseMenuSeparator rt-DropdownMenuSeparator\" />\n </>\n )}\n <DrillDownLevelContext.Provider value={isTop}>{children}</DrillDownLevelContext.Provider>\n </div>\n );\n },\n);\nDrillDownPanel.displayName = 'DropdownMenu.DrillDownPanel';\n\ntype DropdownMenuTriggerIconElement = React.ElementRef<'svg'>;\ninterface DropdownMenuTriggerIconProps extends IconProps {}\nconst DropdownMenuTriggerIcon = React.forwardRef<\n DropdownMenuTriggerIconElement,\n DropdownMenuTriggerIconProps\n>(({ className, ...props }, forwardedRef) => (\n <ChevronDownIcon\n {...props}\n ref={forwardedRef}\n className={classNames('rt-DropdownMenuTriggerIcon', className)}\n />\n));\nDropdownMenuTriggerIcon.displayName = 'DropdownMenu.TriggerIcon';\n\nexport {\n DropdownMenuRoot as Root,\n DropdownMenuTrigger as Trigger,\n DropdownMenuTriggerIcon as TriggerIcon,\n DropdownMenuContent as Content,\n DropdownMenuLabel as Label,\n DropdownMenuItem as Item,\n DropdownMenuGroup as Group,\n DropdownMenuRadioGroup as RadioGroup,\n DropdownMenuRadioItem as RadioItem,\n DropdownMenuCheckboxItem as CheckboxItem,\n DropdownMenuSub as Sub,\n DropdownMenuSubTrigger as SubTrigger,\n DropdownMenuSubContent as SubContent,\n DropdownMenuSeparator as Separator,\n VirtualMenu as Virtual,\n};\n\nexport type {\n DropdownMenuRootProps as RootProps,\n DropdownMenuTriggerProps as TriggerProps,\n DropdownMenuTriggerIconProps as TriggerIconProps,\n DropdownMenuContentProps as ContentProps,\n DropdownMenuLabelProps as LabelProps,\n DropdownMenuItemProps as ItemProps,\n DropdownMenuGroupProps as GroupProps,\n DropdownMenuRadioGroupProps as RadioGroupProps,\n DropdownMenuRadioItemProps as RadioItemProps,\n DropdownMenuCheckboxItemProps as CheckboxItemProps,\n DropdownMenuSubProps as SubProps,\n DropdownMenuSubTriggerProps as SubTriggerProps,\n DropdownMenuSubContentProps as SubContentProps,\n DropdownMenuSeparatorProps as SeparatorProps,\n SubmenuBehavior,\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["dropdown_menu_exports", "__export", "DropdownMenuCheckboxItem", "DropdownMenuContent", "DropdownMenuGroup", "DropdownMenuItem", "DropdownMenuLabel", "DropdownMenuRadioGroup", "DropdownMenuRadioItem", "DropdownMenuRoot", "DropdownMenuSeparator", "DropdownMenuSub", "DropdownMenuSubContent", "DropdownMenuSubTrigger", "DropdownMenuTrigger", "DropdownMenuTriggerIcon", "VirtualMenu", "React", "classNames", "DropdownMenuPrimitive", "Slot", "useCallbackRef", "DropdownMenuOpenContext", "DropdownMenuRoot", "props", "openProp", "defaultOpen", "onOpenChange", "uncontrolledOpen", "setUncontrolledOpen", "open", "handleOpenChangeProp", "useCallbackRef", "handleOpenChange", "next", "DropdownMenuPrimitive", "DropdownMenuTrigger", "children", "forwardedRef", "requireReactElement", "DropdownMenuContentContext", "BACK_KEYS", "FORWARD_KEYS", "isTextEntryTarget", "target", "getDirection", "element", "DropdownMenuContent", "themeContext", "useThemeContext", "material", "resolveMenuMaterial", "size", "baseMenuContentPropDefs", "className", "color", "container", "forceMount", "_material", "submenuBehavior", "virtualized", "onEscapeKeyDown", "onKeyDown", "contentProps", "extractProps", "resolvedColor", "behavior", "useResolvedResponsiveValue", "isDrillDown", "drillDownStore", "useCreateDrillDownStore", "handleEscapeKeyDown", "event", "handleKeyDown", "contextValue", "contentBody", "MenuProvider", "DrillDownRoot", "Theme", "classNames", "ScrollArea", "DropdownMenuLabel", "DrillDownLevelContext", "DropdownMenuItem", "baseMenuItemPropDefs", "shortcut", "itemProps", "toAriaKeyShortcuts", "Slot", "MenuShortcut", "DropdownMenuGroup", "DropdownMenuRadioGroup", "DropdownMenuRadioItem", "baseMenuRadioItemPropDefs", "ThickDotIcon", "DropdownMenuCheckboxItem", "baseMenuCheckboxItemPropDefs", "ThickCheckIcon", "DropdownMenuSub", "label", "useDrillDownStore", "id", "subContextValue", "isOpenInDrillDown", "usePanelPosition", "defaultOpenRef", "wasOpenRef", "SubContext", "DropdownMenuSubTrigger", "subTriggerProps", "subContext", "useSubContext", "isLevelVisible", "handleSelect", "ThickChevronRightIcon", "DropdownMenuSeparator", "DrillDownBackItem", "name", "labelText", "ariaLabel", "ThickChevronLeftIcon", "omitPopperProps", "_loop", "_onEscapeKeyDown", "_onPointerDownOutside", "_onFocusOutside", "_onInteractOutside", "_sideOffset", "_alignOffset", "_avoidCollisions", "_collisionBoundary", "_collisionPadding", "_arrowPadding", "_sticky", "_hideWhenDetached", "_updatePositionStrategy", "rest", "DropdownMenuSubContent", "DrillDownPanel", "CascadeSubContent", "parent", "_color", "subContentProps", "baseMenuSubContentPropDefs", "scalarSize", "body", "getMenuAlignOffset", "store", "sub", "position", "entry", "useStackEntry", "direction", "useDrillDownDirection", "_container", "_forceMount", "_virtualized", "_size", "panelProps", "isTop", "DropdownMenuTriggerIcon", "ChevronDownIcon"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{a as u}from"./chunk-VK7RNXUO.js";import{a as l}from"./chunk-BXX2NVQD.js";import*as e from"react";import{Toggle as B}from"radix-ui";var d=e.forwardRef(({pressed:a,onPressedChange:g,defaultPressed:p,children:t,...s},f)=>{let{"aria-label":r,"aria-labelledby":o,iconOnly:i}=s,n=e.useRef(null);e.useEffect(()=>{n.current=null},[o]);let c=e.useCallback(()=>r||(o?(n.current===null&&(n.current=document.getElementById(o)?.textContent||"Toggle button"),n.current):typeof t=="string"?t:e.isValidElement(t)&&typeof t.props?.children=="string"?t.props.children:"Toggle button"),[r,o,t]),{handlePressedChange:m}=u({pressed:a,onPressedChange:g,getAccessibleName:c,componentName:i?"ToggleIconButton":"ToggleButton"});return e.createElement(B.Root,{pressed:a,onPressedChange:m,defaultPressed:p,asChild:!0},e.createElement(l,{...s,ref:f},t))});d.displayName="ToggleButton";export{d as a};
2
- //# sourceMappingURL=chunk-5NARBZRI.js.map
1
+ import{a as u}from"./chunk-VK7RNXUO.js";import{a as l}from"./chunk-Y4IB7KDZ.js";import*as e from"react";import{Toggle as B}from"radix-ui";var d=e.forwardRef(({pressed:a,onPressedChange:g,defaultPressed:p,children:t,...s},f)=>{let{"aria-label":r,"aria-labelledby":o,iconOnly:i}=s,n=e.useRef(null);e.useEffect(()=>{n.current=null},[o]);let c=e.useCallback(()=>r||(o?(n.current===null&&(n.current=document.getElementById(o)?.textContent||"Toggle button"),n.current):typeof t=="string"?t:e.isValidElement(t)&&typeof t.props?.children=="string"?t.props.children:"Toggle button"),[r,o,t]),{handlePressedChange:m}=u({pressed:a,onPressedChange:g,getAccessibleName:c,componentName:i?"ToggleIconButton":"ToggleButton"});return e.createElement(B.Root,{pressed:a,onPressedChange:m,defaultPressed:p,asChild:!0},e.createElement(l,{...s,ref:f},t))});d.displayName="ToggleButton";export{d as a};
2
+ //# sourceMappingURL=chunk-2PO6TZ7L.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/components/toggle-button.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport { Toggle } from 'radix-ui';\nimport { Button } from './button.js';\nimport { useToggleState } from '../hooks/use-toggle-state.js';\nimport type { ButtonProps, ButtonRankProps } from './button.js';\n\n/**\n * ToggleButton props that extend Button with toggle-specific functionality\n *\n * The ToggleButton component provides a button that can be pressed/unpressed\n * with proper accessibility announcements and state management.\n */\ntype ToggleButtonProps = Omit<ButtonProps<'button'>, 'as' | 'variant' | 'emphasis'> &\n ButtonRankProps & {\n /** Controlled pressed state */\n pressed?: boolean;\n /** Callback when pressed state changes */\n onPressedChange?: (pressed: boolean) => void;\n /** Default pressed state for uncontrolled usage */\n defaultPressed?: boolean;\n};\n\ntype ToggleButtonElement = React.ElementRef<typeof Button>;\n\n/**\n * ToggleButton component for buttons that can be pressed/unpressed\n *\n * The ToggleButton component extends Button with toggle functionality using\n * Radix UI's Toggle primitive. It provides proper accessibility announcements,\n * controlled/uncontrolled state management, and seamless integration with\n * the existing Button component.\n *\n * Key features:\n * - Controlled and uncontrolled state management\n * - Live accessibility announcements for screen readers\n * - Automatic state validation and warnings\n * - Seamless integration with Button props and styling\n * - Proper ARIA attributes for toggle functionality\n *\n * @example\n * ```tsx\n * // Uncontrolled toggle button\n * <ToggleButton defaultPressed={false}>\n * Toggle Me\n * </ToggleButton>\n *\n * // Controlled toggle button\n * const [pressed, setPressed] = React.useState(false);\n * <ToggleButton\n * pressed={pressed}\n * onPressedChange={setPressed}\n * >\n * {pressed ? 'On' : 'Off'}\n * </ToggleButton>\n *\n * // Toggle button with all Button props\n * <ToggleButton\n * variant=\"solid\"\n * size=\"3\"\n * color=\"blue\"\n * pressed={isActive}\n * onPressedChange={setIsActive}\n * >\n * {isActive ? 'Active' : 'Inactive'}\n * </ToggleButton>\n * ```\n */\nconst ToggleButton = React.forwardRef<ToggleButtonElement, ToggleButtonProps>(({ pressed, onPressedChange, defaultPressed, children, ...buttonProps }, forwardedRef) => {\n const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, iconOnly } = buttonProps;\n\n // The label behind aria-labelledby is read once per id, not on every press.\n const cachedLabelRef = React.useRef<string | null>(null);\n React.useEffect(() => {\n cachedLabelRef.current = null;\n }, [ariaLabelledBy]);\n\n /**\n * The name announced when the pressed state changes: aria-label, then the label\n * aria-labelledby points at, then visible text.\n */\n const getAccessibleName = React.useCallback(() => {\n if (ariaLabel) return ariaLabel;\n if (ariaLabelledBy) {\n if (cachedLabelRef.current === null) {\n cachedLabelRef.current = document.getElementById(ariaLabelledBy)?.textContent || 'Toggle button';\n }\n return cachedLabelRef.current;\n }\n if (typeof children === 'string') return children;\n if (React.isValidElement(children) && typeof (children.props as any)?.children === 'string') {\n return (children.props as any).children;\n }\n return 'Toggle button';\n }, [ariaLabel, ariaLabelledBy, children]);\n\n // Use shared toggle state hook for accessibility announcements and warnings\n const { handlePressedChange } = useToggleState({\n pressed,\n onPressedChange,\n getAccessibleName,\n componentName: iconOnly ? 'ToggleIconButton' : 'ToggleButton',\n });\n\n // Render the toggle button using Radix UI's Toggle primitive\n // This provides proper ARIA attributes and keyboard navigation\n return (\n <Toggle.Root pressed={pressed} onPressedChange={handlePressedChange} defaultPressed={defaultPressed} asChild>\n <Button {...buttonProps} ref={forwardedRef}>\n {children}\n </Button>\n </Toggle.Root>\n );\n});\nToggleButton.displayName = 'ToggleButton';\n\nexport { ToggleButton };\nexport type { ToggleButtonProps };\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nimport { Toggle } from 'radix-ui';\nimport { Button } from './button.js';\nimport type { ButtonProps, ButtonRankProps } from './button.js';\nimport { useToggleState } from '../hooks/use-toggle-state.js';\n\n/**\n * ToggleButton props that extend Button with toggle-specific functionality\n *\n * The ToggleButton component provides a button that can be pressed/unpressed\n * with proper accessibility announcements and state management.\n */\ntype ToggleButtonProps = Omit<ButtonProps<'button'>, 'as' | 'variant' | 'emphasis'> &\n ButtonRankProps & {\n /** Controlled pressed state */\n pressed?: boolean;\n /** Callback when pressed state changes */\n onPressedChange?: (pressed: boolean) => void;\n /** Default pressed state for uncontrolled usage */\n defaultPressed?: boolean;\n};\n\ntype ToggleButtonElement = React.ElementRef<typeof Button>;\n\n/**\n * ToggleButton component for buttons that can be pressed/unpressed\n *\n * The ToggleButton component extends Button with toggle functionality using\n * Radix UI's Toggle primitive. It provides proper accessibility announcements,\n * controlled/uncontrolled state management, and seamless integration with\n * the existing Button component.\n *\n * Key features:\n * - Controlled and uncontrolled state management\n * - Live accessibility announcements for screen readers\n * - Automatic state validation and warnings\n * - Seamless integration with Button props and styling\n * - Proper ARIA attributes for toggle functionality\n *\n * @example\n * ```tsx\n * // Uncontrolled toggle button\n * <ToggleButton defaultPressed={false}>\n * Toggle Me\n * </ToggleButton>\n *\n * // Controlled toggle button\n * const [pressed, setPressed] = React.useState(false);\n * <ToggleButton\n * pressed={pressed}\n * onPressedChange={setPressed}\n * >\n * {pressed ? 'On' : 'Off'}\n * </ToggleButton>\n *\n * // Toggle button with all Button props\n * <ToggleButton\n * variant=\"solid\"\n * size=\"3\"\n * color=\"blue\"\n * pressed={isActive}\n * onPressedChange={setIsActive}\n * >\n * {isActive ? 'Active' : 'Inactive'}\n * </ToggleButton>\n * ```\n */\nconst ToggleButton = React.forwardRef<ToggleButtonElement, ToggleButtonProps>(({ pressed, onPressedChange, defaultPressed, children, ...buttonProps }, forwardedRef) => {\n const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, iconOnly } = buttonProps;\n\n // The label behind aria-labelledby is read once per id, not on every press.\n const cachedLabelRef = React.useRef<string | null>(null);\n React.useEffect(() => {\n cachedLabelRef.current = null;\n }, [ariaLabelledBy]);\n\n /**\n * The name announced when the pressed state changes: aria-label, then the label\n * aria-labelledby points at, then visible text.\n */\n const getAccessibleName = React.useCallback(() => {\n if (ariaLabel) return ariaLabel;\n if (ariaLabelledBy) {\n if (cachedLabelRef.current === null) {\n cachedLabelRef.current = document.getElementById(ariaLabelledBy)?.textContent || 'Toggle button';\n }\n return cachedLabelRef.current;\n }\n if (typeof children === 'string') return children;\n if (React.isValidElement(children) && typeof (children.props as any)?.children === 'string') {\n return (children.props as any).children;\n }\n return 'Toggle button';\n }, [ariaLabel, ariaLabelledBy, children]);\n\n // Use shared toggle state hook for accessibility announcements and warnings\n const { handlePressedChange } = useToggleState({\n pressed,\n onPressedChange,\n getAccessibleName,\n componentName: iconOnly ? 'ToggleIconButton' : 'ToggleButton',\n });\n\n // Render the toggle button using Radix UI's Toggle primitive\n // This provides proper ARIA attributes and keyboard navigation\n return (\n <Toggle.Root pressed={pressed} onPressedChange={handlePressedChange} defaultPressed={defaultPressed} asChild>\n <Button {...buttonProps} ref={forwardedRef}>\n {children}\n </Button>\n </Toggle.Root>\n );\n});\nToggleButton.displayName = 'ToggleButton';\n\nexport { ToggleButton };\nexport type { ToggleButtonProps };\n"],
5
5
  "mappings": "gFAAA,UAAYA,MAAW,QACvB,OAAS,UAAAC,MAAc,WAkEvB,IAAMC,EAAqB,aAAmD,CAAC,CAAE,QAAAC,EAAS,gBAAAC,EAAiB,eAAAC,EAAgB,SAAAC,EAAU,GAAGC,CAAY,EAAGC,IAAiB,CACtK,GAAM,CAAE,aAAcC,EAAW,kBAAmBC,EAAgB,SAAAC,CAAS,EAAIJ,EAG3EK,EAAuB,SAAsB,IAAI,EACjD,YAAU,IAAM,CACpBA,EAAe,QAAU,IAC3B,EAAG,CAACF,CAAc,CAAC,EAMnB,IAAMG,EAA0B,cAAY,IACtCJ,IACAC,GACEE,EAAe,UAAY,OAC7BA,EAAe,QAAU,SAAS,eAAeF,CAAc,GAAG,aAAe,iBAE5EE,EAAe,SAEpB,OAAON,GAAa,SAAiBA,EAC/B,iBAAeA,CAAQ,GAAK,OAAQA,EAAS,OAAe,UAAa,SACzEA,EAAS,MAAc,SAE1B,iBACN,CAACG,EAAWC,EAAgBJ,CAAQ,CAAC,EAGlC,CAAE,oBAAAQ,CAAoB,EAAIC,EAAe,CAC7C,QAAAZ,EACA,gBAAAC,EACA,kBAAAS,EACA,cAAeF,EAAW,mBAAqB,cACjD,CAAC,EAID,OACE,gBAACK,EAAO,KAAP,CAAY,QAASb,EAAS,gBAAiBW,EAAqB,eAAgBT,EAAgB,QAAO,IAC1G,gBAACY,EAAA,CAAQ,GAAGV,EAAa,IAAKC,GAC3BF,CACH,CACF,CAEJ,CAAC,EACDJ,EAAa,YAAc",
6
6
  "names": ["React", "Toggle", "ToggleButton", "pressed", "onPressedChange", "defaultPressed", "children", "buttonProps", "forwardedRef", "ariaLabel", "ariaLabelledBy", "iconOnly", "cachedLabelRef", "getAccessibleName", "handlePressedChange", "useToggleState", "Toggle", "Button"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{a as L,b as l,c as n}from"./chunk-OW4KAIWF.js";import{a as m}from"./chunk-KJTEZVOF.js";import{a as r}from"./chunk-6FLLFCBU.js";import{a as i}from"./chunk-GSTOGDAJ.js";import{a as R}from"./chunk-OS3FCYZY.js";var y={};R(y,{Item:()=>P,Label:()=>d,Root:()=>D,Value:()=>f});import p from"classnames";import*as t from"react";var D=t.forwardRef((a,e)=>{let{className:s,...o}=r(a,L,i);return t.createElement(m,{asChild:!0},t.createElement("dl",{...o,ref:e,className:p("rt-DataListRoot",s)}))});D.displayName="DataList.Root";var P=t.forwardRef((a,e)=>{let{className:s,...o}=r(a,l);return t.createElement("div",{...o,ref:e,className:p("rt-DataListItem",s)})});P.displayName="DataList.Item";var d=t.forwardRef((a,e)=>{let{className:s,color:o,...c}=r(a,n);return t.createElement("dt",{...c,"data-accent-color":o,ref:e,className:p("rt-DataListLabel",s)})});d.displayName="DataList.Label";var f=t.forwardRef(({children:a,className:e,...s},o)=>t.createElement("dd",{...s,ref:o,className:p(e,"rt-DataListValue")},a));f.displayName="DataList.Value";export{D as a,P as b,d as c,f as d,y as e};
2
- //# sourceMappingURL=chunk-JXVUTFQN.js.map
1
+ import{a as L,b as l,c as n}from"./chunk-JQURG6CB.js";import{a as m}from"./chunk-O6K6RZXY.js";import{a as r}from"./chunk-UBSLEGQZ.js";import{a as i}from"./chunk-GSTOGDAJ.js";import{a as R}from"./chunk-OS3FCYZY.js";var y={};R(y,{Item:()=>P,Label:()=>d,Root:()=>D,Value:()=>f});import p from"classnames";import*as t from"react";var D=t.forwardRef((a,e)=>{let{className:s,...o}=r(a,L,i);return t.createElement(m,{asChild:!0},t.createElement("dl",{...o,ref:e,className:p("rt-DataListRoot",s)}))});D.displayName="DataList.Root";var P=t.forwardRef((a,e)=>{let{className:s,...o}=r(a,l);return t.createElement("div",{...o,ref:e,className:p("rt-DataListItem",s)})});P.displayName="DataList.Item";var d=t.forwardRef((a,e)=>{let{className:s,color:o,...c}=r(a,n);return t.createElement("dt",{...c,"data-accent-color":o,ref:e,className:p("rt-DataListLabel",s)})});d.displayName="DataList.Label";var f=t.forwardRef(({children:a,className:e,...s},o)=>t.createElement("dd",{...s,ref:o,className:p(e,"rt-DataListValue")},a));f.displayName="DataList.Value";export{D as a,P as b,d as c,f as d,y as e};
2
+ //# sourceMappingURL=chunk-2XSRO44Q.js.map
@@ -1,2 +1,2 @@
1
1
  var o=["gray","gold","bronze","brown","yellow","amber","orange","tomato","red","ruby","crimson","pink","plum","purple","violet","iris","indigo","blue","cyan","teal","jade","green","grass","lime","mint","sky"],e=["auto","gray","mauve","slate","sage","olive","sand"],r={color:{type:"enum",values:o,default:void 0}},s={color:{type:"enum",values:o,default:""}},t={color:{type:"enum",values:o,default:"gray"}};export{o as a,e as b,r as c,s as d,t as e};
2
- //# sourceMappingURL=chunk-Z4DTHR2S.js.map
2
+ //# sourceMappingURL=chunk-34KVYDF6.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/props/color.prop.ts"],
4
- "sourcesContent": ["import type { PropDef } from './prop-def.js';\n\n// prettier-ignore\nconst accentColors = ['gray', 'gold', 'bronze', 'brown', 'yellow', 'amber', 'orange', 'tomato', 'red', 'ruby', 'crimson', 'pink', 'plum', 'purple', 'violet', 'iris', 'indigo', 'blue', 'cyan', 'teal', 'jade', 'green', 'grass', 'lime', 'mint', 'sky'] as const;\n\nconst grayColors = ['auto', 'gray', 'mauve', 'slate', 'sage', 'olive', 'sand'] as const;\n\nconst colorPropDef = {\n color: {\n type: 'enum',\n values: accentColors,\n default: undefined as (typeof accentColors)[number] | undefined,\n },\n} satisfies {\n color: PropDef<(typeof accentColors)[number]>;\n};\n\n// 1. When used on components that compose Text, sets the color of the text to the current accent.\n// 2. Re-declares the accent role tokens (`--accent-ink`, `--accent-solid`, ...) that descendants read.\nconst accentColorPropDef = {\n color: {\n type: 'enum',\n values: accentColors,\n default: '' as (typeof accentColors)[number],\n },\n} satisfies {\n color: PropDef<(typeof accentColors)[number]>;\n};\n\n// For components whose colour comes from their content (Badge, Avatar, Code, Callout,\n// UserCard): they rest gray, and `color` picks a category when it means something.\nconst grayAccentColorPropDef = {\n color: {\n type: 'enum',\n values: accentColors,\n default: 'gray' as (typeof accentColors)[number],\n },\n} satisfies {\n color: PropDef<(typeof accentColors)[number]>;\n};\n\nexport {\n accentColorPropDef,\n grayAccentColorPropDef,\n colorPropDef,\n //\n accentColors,\n grayColors,\n};\n"],
5
- "mappings": "AAGA,IAAMA,EAAe,CAAC,OAAQ,OAAQ,SAAU,QAAS,SAAU,QAAS,SAAU,SAAU,MAAO,OAAQ,UAAW,OAAQ,OAAQ,SAAU,SAAU,OAAQ,SAAU,OAAQ,OAAQ,OAAQ,OAAQ,QAAS,QAAS,OAAQ,OAAQ,KAAK,EAEjPC,EAAa,CAAC,OAAQ,OAAQ,QAAS,QAAS,OAAQ,QAAS,MAAM,EAEvEC,EAAe,CACnB,MAAO,CACL,KAAM,OACN,OAAQF,EACR,QAAS,MACX,CACF,EAMMG,EAAqB,CACzB,MAAO,CACL,KAAM,OACN,OAAQH,EACR,QAAS,EACX,CACF,EAMMI,EAAyB,CAC7B,MAAO,CACL,KAAM,OACN,OAAQJ,EACR,QAAS,MACX,CACF",
4
+ "sourcesContent": ["import type { PropDef } from './prop-def.js';\n\n// prettier-ignore\nconst accentColors = ['gray', 'gold', 'bronze', 'brown', 'yellow', 'amber', 'orange', 'tomato', 'red', 'ruby', 'crimson', 'pink', 'plum', 'purple', 'violet', 'iris', 'indigo', 'blue', 'cyan', 'teal', 'jade', 'green', 'grass', 'lime', 'mint', 'sky'] as const;\n\nconst grayColors = ['auto', 'gray', 'mauve', 'slate', 'sage', 'olive', 'sand'] as const;\n\nconst colorPropDef = {\n color: {\n type: 'enum',\n values: accentColors,\n default: undefined as (typeof accentColors)[number] | undefined,\n },\n} satisfies {\n color: PropDef<(typeof accentColors)[number]>;\n};\n\n// 1. When used on components that compose Text, sets the color of the text to the current accent.\n// 2. Re-declares the accent role tokens (`--accent-ink`, `--accent-solid`, ...) that descendants read.\nconst accentColorPropDef = {\n color: {\n type: 'enum',\n values: accentColors,\n default: '' as (typeof accentColors)[number],\n },\n} satisfies {\n color: PropDef<(typeof accentColors)[number]>;\n};\n\n// For components whose colour comes from their content (Badge, Avatar, Code): they rest gray, and `color` picks a category when it means something.\nconst grayAccentColorPropDef = {\n color: {\n type: 'enum',\n values: accentColors,\n default: 'gray' as (typeof accentColors)[number],\n },\n} satisfies {\n color: PropDef<(typeof accentColors)[number]>;\n};\n\nexport {\n accentColorPropDef,\n grayAccentColorPropDef,\n colorPropDef,\n //\n accentColors,\n grayColors,\n};\n"],
5
+ "mappings": "AAGA,IAAMA,EAAe,CAAC,OAAQ,OAAQ,SAAU,QAAS,SAAU,QAAS,SAAU,SAAU,MAAO,OAAQ,UAAW,OAAQ,OAAQ,SAAU,SAAU,OAAQ,SAAU,OAAQ,OAAQ,OAAQ,OAAQ,QAAS,QAAS,OAAQ,OAAQ,KAAK,EAEjPC,EAAa,CAAC,OAAQ,OAAQ,QAAS,QAAS,OAAQ,QAAS,MAAM,EAEvEC,EAAe,CACnB,MAAO,CACL,KAAM,OACN,OAAQF,EACR,QAAS,MACX,CACF,EAMMG,EAAqB,CACzB,MAAO,CACL,KAAM,OACN,OAAQH,EACR,QAAS,EACX,CACF,EAKMI,EAAyB,CAC7B,MAAO,CACL,KAAM,OACN,OAAQJ,EACR,QAAS,MACX,CACF",
6
6
  "names": ["accentColors", "grayColors", "colorPropDef", "accentColorPropDef", "grayAccentColorPropDef"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{a as p}from"./chunk-NIX6Z3JG.js";import{a as t}from"./chunk-K53W3ELO.js";import{a as r}from"./chunk-6FLLFCBU.js";import{a as e}from"./chunk-GSTOGDAJ.js";import*as o from"react";import f from"classnames";import{Slot as P}from"radix-ui";var l=o.forwardRef((s,m)=>{let{asChild:i,className:n,...c}=r(s,p,t,e),a=i?P.Root:"section";return o.createElement(a,{...c,ref:m,className:f("rt-Section",n)})});l.displayName="Section";export{l as a};
2
- //# sourceMappingURL=chunk-KXSMY4ZF.js.map
1
+ import{a as p}from"./chunk-NIX6Z3JG.js";import{a as t}from"./chunk-K53W3ELO.js";import{a as r}from"./chunk-UBSLEGQZ.js";import{a as e}from"./chunk-GSTOGDAJ.js";import*as o from"react";import f from"classnames";import{Slot as P}from"radix-ui";var l=o.forwardRef((s,m)=>{let{asChild:i,className:n,...c}=r(s,p,t,e),a=i?P.Root:"section";return o.createElement(a,{...c,ref:m,className:f("rt-Section",n)})});l.displayName="Section";export{l as a};
2
+ //# sourceMappingURL=chunk-35KS5AQE.js.map
@@ -0,0 +1,2 @@
1
+ import{a as T}from"./chunk-TPHNDGSV.js";import{a as N}from"./chunk-GFOSP3PZ.js";import{a as H}from"./chunk-K53W3ELO.js";import{a as w}from"./chunk-VX44UTQ5.js";import{a as x}from"./chunk-ERGJN7FJ.js";import{a as S}from"./chunk-UBSLEGQZ.js";import{a as D}from"./chunk-GSTOGDAJ.js";import*as e from"react";import M from"classnames";var Q=e.forwardRef((o,r)=>{let k=typeof o.width=="number"?o.width:void 0,j=typeof o.height=="number"?o.height:void 0,a="fill"in o&&o.fill===!0,{as:f="img",asChild:U,fill:V,className:h,style:i,loading:W="lazy",alt:O,src:s,placeholder:n,showSkeleton:z=!1,loadingAriaLabel:A="Loading image...",errorAriaLabel:F="Failed to load image",radius:G,caption:y,onLoad:u,onError:P,..._}=S(o,N,D,x,w,H),q=f!=="img"?{width:k,height:j,...a?{fill:!0}:{}}:{},[l,m]=e.useState("loading"),[B,p]=e.useState(!!n),I=e.useRef(null),J=e.useCallback(t=>{m("loaded"),p(!1),u?.(t)},[u]),K=e.useCallback(t=>{m("error"),p(!1),P?.(t)},[P]);if(e.useEffect(()=>{let t=I.current;t&&t.complete&&t.naturalWidth>0&&(m("loaded"),p(!1))},[s]),!s)return console.warn("Image component: src prop is required"),null;let c=l==="loading",d=l==="error",v=l==="loaded",g=a?{display:"block",opacity:v?1:0}:{width:"100%",height:"100%",display:"block",opacity:v?1:0},E=e.createElement(f,{ref:t=>{I.current=t,typeof r=="function"?r(t):r&&(r.current=t)},loading:W,style:a?g:{...g,position:"relative",zIndex:1},className:M("rt-reset","rt-Image"),alt:O,src:s,"data-radius":G,onLoad:J,onError:K,"aria-busy":c,"aria-invalid":d,"aria-describedby":d?"image-error":void 0,...q,..._}),R=c&&e.createElement("div",{className:"rt-sr-only","aria-live":"polite",role:"status"},A),L=d&&e.createElement("div",{id:"image-error",className:"rt-sr-only","aria-live":"polite",role:"alert"},F),b=z&&c&&e.createElement(T,{width:"100%",height:"100%",style:{position:"absolute",inset:0}}),C=n&&B&&e.createElement("img",{style:{...g,position:"absolute",inset:0,filter:"blur(4px)",opacity:.7,zIndex:0},className:M("rt-reset","rt-Image","rt-Image--placeholder"),alt:"",src:n});if(!y){let t=a?{position:"absolute",inset:0,...i}:{position:"relative",...i};return e.createElement("div",{className:h,style:t},R,L,b,C,E)}return e.createElement("div",{className:h,style:{display:"flex",flexDirection:"column",...i}},e.createElement("div",{style:{position:"relative",flex:"1 1 0%",minHeight:0}},R,L,b,C,E),e.createElement("div",{className:"rt-Image-caption",style:{flex:"0 0 auto"}},y))});Q.displayName="Image";export{Q as a};
2
+ //# sourceMappingURL=chunk-3OABA7AF.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/image.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\n\nimport { imagePropDefs } from './image.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { widthPropDefs } from '../props/width.props.js';\nimport { heightPropDefs } from '../props/height.props.js';\nimport { layoutPropDefs } from '../props/layout.props.js';\nimport { Skeleton } from './skeleton.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { WidthProps } from '../props/width.props.js';\nimport type { HeightProps } from '../props/height.props.js';\nimport type { LayoutProps } from '../props/layout.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype ImageElement = React.ElementRef<'img'>;\n\ntype ImageOwnProps = GetPropDefTypes<typeof imagePropDefs> & {\n /**\n * Native loading behavior for the image\n * @default 'lazy'\n */\n loading?: 'eager' | 'lazy';\n /**\n * Placeholder image URL to show while the main image is loading (LQIP pattern)\n */\n placeholder?: string;\n /**\n * Shows a skeleton placeholder while loading\n */\n showSkeleton?: boolean;\n /**\n * Callback fired when the image successfully loads\n */\n onLoad?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Callback fired when the image fails to load\n */\n onError?: (event: React.SyntheticEvent<HTMLImageElement>) => void;\n /**\n * Alternative text for the image (required for accessibility)\n */\n alt: string;\n /**\n * Image source URL\n */\n src: string;\n /**\n * When true, the image will fill its parent container (for Next.js Image compatibility).\n * Parent must have `position: relative` and defined dimensions.\n */\n fill?: boolean;\n};\n\ninterface CommonImageProps\n extends MarginProps,\n WidthProps,\n HeightProps,\n LayoutProps,\n ImageOwnProps {}\n\ntype ImageImgProps = { as?: 'img' } & ComponentPropsWithout<'img', RemovedProps | 'color' | 'width' | 'height' | 'alt'>;\ntype ImageComponentProps = { as: React.ComponentType<any> } & Record<string, any>;\ntype ImageProps = CommonImageProps & (ImageImgProps | ImageComponentProps);\n\n/**\n * Image component for displaying images with enhanced loading states and accessibility.\n *\n * Supports polymorphic rendering via the `as` prop for Next.js Image compatibility.\n *\n * @example\n * ```tsx\n * // Basic usage\n * <Image src=\"/photo.jpg\" alt=\"Team photo\" />\n *\n * // With Next.js Image (fixed dimensions)\n * import NextImage from 'next/image';\n * <Image as={NextImage} src=\"/photo.jpg\" alt=\"...\" width={400} height={300} />\n *\n * // With Next.js Image (fill mode - parent needs position: relative and dimensions)\n * <div style={{ position: 'relative', width: '100%', aspectRatio: '16/9' }}>\n * <Image as={NextImage} src=\"/photo.jpg\" alt=\"...\" fill />\n * </div>\n *\n * // With placeholder and skeleton\n * <Image\n * src=\"/high-res.jpg\"\n * placeholder=\"/low-res.jpg\"\n * showSkeleton\n * alt=\"Product showcase\"\n * />\n *\n * // With caption\n * <Image\n * src=\"/chart.png\"\n * alt=\"Sales data visualization\"\n * caption=\"Q3 2024 Sales Performance\"\n * />\n * ```\n */\nconst Image = React.forwardRef<ImageElement, ImageProps>((props, forwardedRef) => {\n // Extract native width/height before extractProps consumes them (for Next.js Image compatibility)\n const nativeWidth = typeof props.width === 'number' ? props.width : undefined;\n const nativeHeight = typeof props.height === 'number' ? props.height : undefined;\n // Check if fill prop is used (for Next.js Image compatibility)\n const hasFill = 'fill' in props && props.fill === true;\n\n const {\n as: Component = 'img',\n asChild: _asChild, // Extract to prevent passing to DOM element\n fill: _fill, // Extract to prevent passing to native img element (only used for custom components)\n className,\n style,\n loading = 'lazy',\n alt,\n src,\n placeholder,\n showSkeleton = false,\n loadingAriaLabel = 'Loading image...',\n errorAriaLabel = 'Failed to load image',\n radius,\n caption,\n onLoad: userOnLoad,\n onError: userOnError,\n ...restProps\n } = extractProps(\n props,\n imagePropDefs,\n marginPropDefs,\n widthPropDefs,\n heightPropDefs,\n layoutPropDefs,\n );\n\n // When using a custom component (like Next.js Image), pass native width/height and fill\n const isCustomComponent = Component !== 'img';\n const componentDimensionProps = isCustomComponent\n ? { width: nativeWidth, height: nativeHeight, ...(hasFill ? { fill: true } : {}) }\n : {};\n\n const [loadingState, setLoadingState] = React.useState<'loading' | 'loaded' | 'error'>('loading');\n const [showPlaceholder, setShowPlaceholder] = React.useState(!!placeholder);\n const imgRef = React.useRef<HTMLImageElement>(null);\n\n const handleLoad = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n userOnLoad?.(event);\n },\n [userOnLoad],\n );\n\n const handleError = React.useCallback(\n (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoadingState('error');\n setShowPlaceholder(false);\n userOnError?.(event);\n },\n [userOnError],\n );\n\n // Check if image is already cached\n React.useEffect(() => {\n const img = imgRef.current;\n if (img && img.complete && img.naturalWidth > 0) {\n setLoadingState('loaded');\n setShowPlaceholder(false);\n }\n }, [src]);\n\n if (!src) {\n console.warn('Image component: src prop is required');\n return null;\n }\n\n const isLoading = loadingState === 'loading';\n const isError = loadingState === 'error';\n const isLoaded = loadingState === 'loaded';\n\n // When using fill (Next.js Image), don't add dimension/position styles as Next.js handles them\n const imgStyle: React.CSSProperties = hasFill\n ? {\n display: 'block',\n opacity: isLoaded ? 1 : 0,\n }\n : {\n width: '100%',\n height: '100%',\n display: 'block',\n opacity: isLoaded ? 1 : 0,\n };\n\n const mergeRefs = (node: HTMLImageElement | null) => {\n (imgRef as React.RefObject<HTMLImageElement | null>).current = node;\n if (typeof forwardedRef === 'function') {\n forwardedRef(node);\n } else if (forwardedRef) {\n forwardedRef.current = node;\n }\n };\n\n const imageElement = (\n <Component\n ref={mergeRefs}\n loading={loading}\n style={hasFill ? imgStyle : { ...imgStyle, position: 'relative', zIndex: 1 }}\n className={classNames('rt-reset', 'rt-Image')}\n alt={alt}\n src={src}\n data-radius={radius}\n onLoad={handleLoad}\n onError={handleError}\n aria-busy={isLoading}\n aria-invalid={isError}\n aria-describedby={isError ? 'image-error' : undefined}\n {...componentDimensionProps}\n {...restProps}\n />\n );\n\n const loadingAnnouncement = isLoading && (\n <div className=\"rt-sr-only\" aria-live=\"polite\" role=\"status\">\n {loadingAriaLabel}\n </div>\n );\n\n const errorAnnouncement = isError && (\n <div id=\"image-error\" className=\"rt-sr-only\" aria-live=\"polite\" role=\"alert\">\n {errorAriaLabel}\n </div>\n );\n\n const skeletonElement = showSkeleton && isLoading && (\n <Skeleton width=\"100%\" height=\"100%\" style={{ position: 'absolute', inset: 0 }} />\n );\n\n const placeholderElement = placeholder && showPlaceholder && (\n <img\n style={{\n ...imgStyle,\n position: 'absolute',\n inset: 0,\n filter: 'blur(4px)',\n opacity: 0.7,\n zIndex: 0,\n }}\n className={classNames('rt-reset', 'rt-Image', 'rt-Image--placeholder')}\n alt=\"\"\n src={placeholder}\n />\n );\n\n // Simple flat structure when no caption\n if (!caption) {\n // When using fill, wrapper uses absolute positioning to fill the nearest positioned ancestor\n const wrapperStyle: React.CSSProperties = hasFill\n ? { position: 'absolute', inset: 0, ...style }\n : { position: 'relative', ...style };\n return (\n <div className={className} style={wrapperStyle}>\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n );\n }\n\n // Flexbox structure when caption is present\n return (\n <div\n className={className}\n style={{\n display: 'flex',\n flexDirection: 'column',\n ...style,\n }}\n >\n <div\n style={{\n position: 'relative',\n flex: '1 1 0%',\n minHeight: 0,\n }}\n >\n {loadingAnnouncement}\n {errorAnnouncement}\n {skeletonElement}\n {placeholderElement}\n {imageElement}\n </div>\n\n <div className=\"rt-Image-caption\" style={{ flex: '0 0 auto' }}>\n {caption}\n </div>\n </div>\n );\n});\n\nImage.displayName = 'Image';\n\nexport { Image };\nexport type { ImageProps };\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "classNames", "Image", "props", "forwardedRef", "nativeWidth", "nativeHeight", "hasFill", "Component", "_asChild", "_fill", "className", "style", "loading", "alt", "src", "placeholder", "showSkeleton", "loadingAriaLabel", "errorAriaLabel", "radius", "caption", "userOnLoad", "userOnError", "restProps", "extractProps", "imagePropDefs", "marginPropDefs", "widthPropDefs", "heightPropDefs", "layoutPropDefs", "componentDimensionProps", "loadingState", "setLoadingState", "showPlaceholder", "setShowPlaceholder", "imgRef", "handleLoad", "event", "handleError", "img", "isLoading", "isError", "isLoaded", "imgStyle", "imageElement", "node", "classNames", "loadingAnnouncement", "errorAnnouncement", "skeletonElement", "Skeleton", "placeholderElement", "wrapperStyle"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{a as t}from"./chunk-SMGDH54W.js";import{a as e}from"./chunk-TTFUM47A.js";import{b as s}from"./chunk-KRJTW535.js";import{c as r}from"./chunk-34KVYDF6.js";var o=["1","2","3","4"],a=["raised","surface","soft","ghost","outline"],i=["solid","translucent"],d={size:{type:"enum",className:"rt-r-size",values:o,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:a,default:"raised"},error:{type:"boolean",default:!1},errorMessage:{type:"string",default:void 0},required:{type:"boolean",default:!1},"aria-describedby":{type:"string",default:void 0},"aria-labelledby":{type:"string",default:void 0},...r,...s,material:{type:"enum",values:i,default:void 0}},p=["left","right"],b={side:{type:"enum",values:p},...r,gap:t.gap,px:e.px,pl:e.pl,pr:e.pr};export{d as a,b};
2
+ //# sourceMappingURL=chunk-3PT3AOD5.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/text-field.props.tsx"],
4
+ "sourcesContent": ["import { colorPropDef } from '../props/color.prop.js';\nimport { paddingPropDefs } from '../props/padding.props.js';\nimport { radiusPropDef } from '../props/radius.prop.js';\nimport { flexPropDefs } from './flex.props.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4'] as const;\nconst variants = ['raised', 'surface', 'soft', 'ghost', 'outline'] as const;\nconst materials = ['solid', 'translucent'] as const;\n\nconst textFieldRootPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'raised' },\n // Error and validation props\n error: { type: 'boolean', default: false },\n errorMessage: { type: 'string', default: undefined },\n required: { type: 'boolean', default: false },\n // Accessibility props\n 'aria-describedby': { type: 'string', default: undefined },\n 'aria-labelledby': { type: 'string', default: undefined },\n ...colorPropDef,\n ...radiusPropDef,\n material: { type: 'enum', values: materials, default: undefined },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n error: PropDef<boolean>;\n errorMessage: PropDef<string | undefined>;\n required: PropDef<boolean>;\n 'aria-describedby': PropDef<string | undefined>;\n 'aria-labelledby': PropDef<string | undefined>;\n material: PropDef<(typeof materials)[number] | undefined>;\n};\n\nconst sides = ['left', 'right'] as const;\n\nconst textFieldSlotPropDefs = {\n side: { type: 'enum', values: sides },\n ...colorPropDef,\n gap: flexPropDefs.gap,\n px: paddingPropDefs.px,\n pl: paddingPropDefs.pl,\n pr: paddingPropDefs.pr,\n} satisfies {\n side: PropDef<(typeof sides)[number]>;\n gap: typeof flexPropDefs.gap;\n px: typeof paddingPropDefs.px;\n pl: typeof paddingPropDefs.pl;\n pr: typeof paddingPropDefs.pr;\n};\n\n/** Scrubbing props for TextField.Slot - handled separately from PropDef system */\ninterface TextFieldSlotScrubProps {\n /** Enable scrubbing behavior on this slot */\n scrub?: boolean;\n /** Current value (required for min/max clamping to work correctly) */\n scrubValue?: number;\n /** Base value change per movement unit (default: 1) */\n scrubStep?: number;\n /** Pixels of movement per step - higher = less sensitive (default: 1) */\n scrubSensitivity?: number;\n /** Minimum allowed value */\n scrubMin?: number;\n /** Maximum allowed value */\n scrubMax?: number;\n /** Step multiplier when Shift is held (default: 10) */\n scrubShiftMultiplier?: number;\n /** Step multiplier when Alt/Option is held (default: 0.1) */\n scrubAltMultiplier?: number;\n /**\n * Callback fired during scrubbing with the value delta\n * @param delta - The change in value\n * @param isChanging - true while dragging, false when released\n */\n onScrub?: (delta: number, isChanging: boolean) => void;\n}\n\nexport type { TextFieldSlotScrubProps };\n\nexport { textFieldRootPropDefs, textFieldSlotPropDefs };\n"],
5
+ "mappings": "gKAOA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,GAAG,EAC3BC,EAAW,CAAC,SAAU,UAAW,OAAQ,QAAS,SAAS,EAC3DC,EAAY,CAAC,QAAS,aAAa,EAEnCC,EAAwB,CAC5B,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQH,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,QAAS,EAEtF,MAAO,CAAE,KAAM,UAAW,QAAS,EAAM,EACzC,aAAc,CAAE,KAAM,SAAU,QAAS,MAAU,EACnD,SAAU,CAAE,KAAM,UAAW,QAAS,EAAM,EAE5C,mBAAoB,CAAE,KAAM,SAAU,QAAS,MAAU,EACzD,kBAAmB,CAAE,KAAM,SAAU,QAAS,MAAU,EACxD,GAAGG,EACH,GAAGC,EACH,SAAU,CAAE,KAAM,OAAQ,OAAQH,EAAW,QAAS,MAAU,CAClE,EAWMI,EAAQ,CAAC,OAAQ,OAAO,EAExBC,EAAwB,CAC5B,KAAM,CAAE,KAAM,OAAQ,OAAQD,CAAM,EACpC,GAAGF,EACH,IAAKI,EAAa,IAClB,GAAIC,EAAgB,GACpB,GAAIA,EAAgB,GACpB,GAAIA,EAAgB,EACtB",
6
+ "names": ["sizes", "variants", "materials", "textFieldRootPropDefs", "colorPropDef", "radiusPropDef", "sides", "textFieldSlotPropDefs", "flexPropDefs", "paddingPropDefs"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{b as s}from"./chunk-YA5DF67M.js";import*as r from"react";function l(e){return typeof e=="object"&&e!==null}function p(e,n){let t={},o=null;for(let i of s){if(e!==void 0&&!l(e)){t[i]=e;continue}let a=l(e)?e[i]:void 0;a!==void 0&&(o={value:a}),t[i]=o?o.value:n(i)}return t}function d(e){let n=e.initial;return s.every(t=>e[t]===n)?n:void 0}function h(e,n){let t=d(n);if(t!==void 0)return{[`data-${e}`]:t};let o={};for(let i of s)o[`data-${e}-${i}`]=n[i];return o}function P(e){return typeof e=="object"&&e!==null?JSON.stringify(e):String(e)}var T=p("fixed",()=>"fixed");function g(){return{entries:new Map,listeners:new Set,version:0,peek:null}}function f(e){e.version+=1;for(let n of e.listeners)n()}function c(e,n){return e.listeners.add(n),()=>{e.listeners.delete(n)}}function R(e,n){e.peek!==n&&(e.peek=n,f(e))}var S=r.createContext(null);function y(e){let n=r.useContext(S);if(!n)throw new Error(`${e} must be used within <Shell.Root>`);return n}function I(e,n){let t=r.useCallback(i=>c(e,i),[e]),o=r.useCallback(()=>e.entries.get(n),[e,n]);return r.useSyncExternalStore(t,o,()=>{})}function k(e,n){let t=r.useCallback(o=>c(e,o),[e]);return r.useSyncExternalStore(t,()=>e.peek===n,()=>!1)}var b=r.createContext(null);function m(e,n){let t=r.useContext(b);if(!t)throw new Error("Shell panes must be used within <Shell.Root>");let{registerInset:o,unregisterInset:i}=t;r.useLayoutEffect(()=>{if(n)return o(e),()=>i(e)},[e,n,o,i])}var u=new Set;function v(e){}export{p as a,d as b,h as c,P as d,T as e,g as f,f as g,c as h,R as i,S as j,y as k,I as l,k as m,b as n,m as o,v as p};
2
- //# sourceMappingURL=chunk-A2XVR7GL.js.map
1
+ import{b as s}from"./chunk-5YLKKQFK.js";import*as r from"react";function l(e){return typeof e=="object"&&e!==null}function p(e,n){let t={},o=null;for(let i of s){if(e!==void 0&&!l(e)){t[i]=e;continue}let a=l(e)?e[i]:void 0;a!==void 0&&(o={value:a}),t[i]=o?o.value:n(i)}return t}function d(e){let n=e.initial;return s.every(t=>e[t]===n)?n:void 0}function h(e,n){let t=d(n);if(t!==void 0)return{[`data-${e}`]:t};let o={};for(let i of s)o[`data-${e}-${i}`]=n[i];return o}function P(e){return typeof e=="object"&&e!==null?JSON.stringify(e):String(e)}var T=p("fixed",()=>"fixed");function g(){return{entries:new Map,listeners:new Set,version:0,peek:null}}function f(e){e.version+=1;for(let n of e.listeners)n()}function c(e,n){return e.listeners.add(n),()=>{e.listeners.delete(n)}}function R(e,n){e.peek!==n&&(e.peek=n,f(e))}var S=r.createContext(null);function y(e){let n=r.useContext(S);if(!n)throw new Error(`${e} must be used within <Shell.Root>`);return n}function I(e,n){let t=r.useCallback(i=>c(e,i),[e]),o=r.useCallback(()=>e.entries.get(n),[e,n]);return r.useSyncExternalStore(t,o,()=>{})}function k(e,n){let t=r.useCallback(o=>c(e,o),[e]);return r.useSyncExternalStore(t,()=>e.peek===n,()=>!1)}var b=r.createContext(null);function m(e,n){let t=r.useContext(b);if(!t)throw new Error("Shell panes must be used within <Shell.Root>");let{registerInset:o,unregisterInset:i}=t;r.useLayoutEffect(()=>{if(n)return o(e),()=>i(e)},[e,n,o,i])}var u=new Set;function v(e){}export{p as a,d as b,h as c,P as d,T as e,g as f,f as g,c as h,R as i,S as j,y as k,I as l,k as m,b as n,m as o,v as p};
2
+ //# sourceMappingURL=chunk-3PTKPDSA.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/_internal/shell-store.tsx"],
4
+ "sourcesContent": ["'use client';\n\n/**\n * The Shell's state model (0.8.0), ported from kookie-ui-v2's Shell.\n *\n * - State lives on the pane. Each pane holds `auto | open | closed`.\n * `auto` means untouched: the stylesheet decides what\n * it shows at each breakpoint, so first paint is right with no script, the\n * server and the client render the same markup, and no open-state callback\n * can fire on mount or on a resize.\n * - The one thing that crosses the Shell is a registry keyed by pane name.\n * Each pane registers what it is and how to drive it; a Trigger looks its\n * pane up, and the Root reads the set of live overlays. Nothing scans\n * children and nothing checks `displayName`.\n * - The responsive props are resolved into a table with one value per\n * breakpoint, from the props alone, with no window. The table is written to\n * the DOM as data attributes for the stylesheet, and read again in JS by the\n * mirror that sets `aria-expanded`. One table, two readers, so they agree by\n * construction.\n */\nimport * as React from 'react';\nimport { SHELL_BREAKPOINTS } from '../shell.types.js';\nimport type { Breakpoint, PaneName, PresentationValue } from '../shell.types.js';\n\n/* \u2500\u2500 Breakpoint tables \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type Table<T> = Record<Breakpoint, T>;\n\n/** What a pane shows: open or closed. */\nexport type PaneValue = 'open' | 'closed';\n\ntype ResponsiveInput<T> = T | Partial<Record<Breakpoint, T>> | undefined;\n\nfunction isMap<T>(value: ResponsiveInput<T>): value is Partial<Record<Breakpoint, T>> {\n return typeof value === 'object' && value !== null;\n}\n\n/**\n * A responsive value at every breakpoint. A breakpoint takes the largest key\n * at or below it, the same fallback `useResponsiveValue` used; a breakpoint\n * below every key takes `fallback`.\n */\nexport function tableOf<T>(value: ResponsiveInput<T>, fallback: (bp: Breakpoint) => T): Table<T> {\n const table = {} as Table<T>;\n let carried: { value: T } | null = null;\n for (const bp of SHELL_BREAKPOINTS) {\n if (value !== undefined && !isMap(value)) {\n table[bp] = value;\n continue;\n }\n const entry = isMap(value) ? value[bp] : undefined;\n if (entry !== undefined) carried = { value: entry };\n table[bp] = carried ? carried.value : fallback(bp);\n }\n return table;\n}\n\n/** The table's one value, when it has only one. */\nexport function constantOf<T>(table: Table<T>): T | undefined {\n const first = table.initial;\n return SHELL_BREAKPOINTS.every((bp) => table[bp] === first) ? first : undefined;\n}\n\n/**\n * The table as data attributes: `data-<name>` when it holds one value, one\n * `data-<name>-<bp>` per breakpoint when it holds several. The stylesheet has\n * a rule for each spelling.\n */\nexport function tableAttributes(name: string, table: Table<string>): Record<string, string> {\n const constant = constantOf(table);\n if (constant !== undefined) return { [`data-${name}`]: constant };\n const attributes: Record<string, string> = {};\n for (const bp of SHELL_BREAKPOINTS) attributes[`data-${name}-${bp}`] = table[bp];\n return attributes;\n}\n\n/**\n * A responsive prop object is usually an inline literal, a new identity every\n * render. Keying memoisation on its contents keeps the tables, and so the\n * registry entries, stable across renders that change nothing.\n */\nexport function useStableKey(value: unknown): string {\n return typeof value === 'object' && value !== null ? JSON.stringify(value) : String(value);\n}\n\nexport const FIXED_TABLE: Table<PresentationValue> = tableOf<PresentationValue>('fixed', () => 'fixed');\n\n/* \u2500\u2500 The registry \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type OpenChangeReason = 'toggle' | 'dismiss';\n\nexport type PaneEntry = {\n name: PaneName;\n id: string;\n el: HTMLElement | null;\n /** What the pane shows now; `undefined` while an untouched pane cannot know (before the breakpoint is known). */\n value: PaneValue | undefined;\n /** How the pane is presented now, when known. */\n presentation: PresentationValue | undefined;\n /** The pane's own presentation at every breakpoint. A Panel with none of its own follows the Rail's. */\n presentationTable: Table<PresentationValue>;\n /** Open and presented as an overlay: what the scrim and Escape close, and what containment exempts. */\n overlayLive: boolean;\n /** The pane's designed open width, for panes that sit beside it when floating. */\n size: number;\n setValue: (value: PaneValue, reason: OpenChangeReason) => void;\n toggle: (reason: OpenChangeReason) => void;\n};\n\nexport type ShellStore = {\n entries: Map<PaneName, PaneEntry>;\n listeners: Set<() => void>;\n /**\n * What a subscriber reads. useSyncExternalStore needs a value that is stable\n * between notifications, and a number is; the Map, or anything derived from\n * it, would be a new identity on every read.\n */\n version: number;\n /** The pane a hovered Trigger is previewing, if any. Layout only. */\n peek: PaneName | null;\n};\n\nexport function createShellStore(): ShellStore {\n return { entries: new Map(), listeners: new Set(), version: 0, peek: null };\n}\n\nexport function notifyShellStore(store: ShellStore) {\n store.version += 1;\n for (const listener of store.listeners) listener();\n}\n\nexport function subscribeShellStore(store: ShellStore, listener: () => void) {\n store.listeners.add(listener);\n return () => {\n store.listeners.delete(listener);\n };\n}\n\nexport function setShellPeek(store: ShellStore, peek: PaneName | null) {\n if (store.peek === peek) return;\n store.peek = peek;\n notifyShellStore(store);\n}\n\nexport const ShellStoreContext = React.createContext<ShellStore | null>(null);\n\nexport function useShellStore(part: string): ShellStore {\n const store = React.useContext(ShellStoreContext);\n if (!store) throw new Error(`${part} must be used within <Shell.Root>`);\n return store;\n}\n\n/** One pane's registry entry. Re-renders only when that entry is replaced. */\nexport function usePaneEntry(store: ShellStore, name: PaneName): PaneEntry | undefined {\n const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);\n const getSnapshot = React.useCallback(() => store.entries.get(name), [store, name]);\n return React.useSyncExternalStore(subscribe, getSnapshot, () => undefined);\n}\n\n/**\n * Whether this pane is the one being previewed. A boolean per pane rather than\n * the peek target itself, so hovering one Trigger re-renders one pane, not all.\n */\nexport function usePeeking(store: ShellStore, name: PaneName): boolean {\n const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);\n return React.useSyncExternalStore(\n subscribe,\n () => store.peek === name,\n () => false,\n );\n}\n\n/* \u2500\u2500 Inset \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type InsetPaneId = 'rail' | 'panel' | 'sidebar' | 'content' | 'inspector' | 'bottom';\n\nexport const ShellInsetContext = React.createContext<{\n registerInset: (id: InsetPaneId) => void;\n unregisterInset: (id: InsetPaneId) => void;\n} | null>(null);\n\n/** Registers a pane's `inset` with the Root, which paints the backdrop while any pane is inset. */\nexport function useInsetRegistration(id: InsetPaneId, inset: boolean | undefined) {\n const ctx = React.useContext(ShellInsetContext);\n if (!ctx) throw new Error('Shell panes must be used within <Shell.Root>');\n const { registerInset, unregisterInset } = ctx;\n React.useLayoutEffect(() => {\n if (!inset) return;\n registerInset(id);\n return () => unregisterInset(id);\n }, [id, inset, registerInset, unregisterInset]);\n}\n\n/* \u2500\u2500 Development warnings \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst warned = new Set<string>();\n\n/** A deprecation warning, once per message per page load. Development only. */\nexport function warnOnce(message: string) {\n if (process.env.NODE_ENV === 'production') return;\n if (warned.has(message)) return;\n warned.add(message);\n console.warn(`[kookie-ui] ${message}`);\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "isMap", "value", "tableOf", "fallback", "table", "carried", "bp", "SHELL_BREAKPOINTS", "entry", "constantOf", "first", "tableAttributes", "name", "constant", "attributes", "useStableKey", "FIXED_TABLE", "createShellStore", "notifyShellStore", "store", "listener", "subscribeShellStore", "setShellPeek", "peek", "ShellStoreContext", "useShellStore", "part", "usePaneEntry", "subscribe", "getSnapshot", "usePeeking", "ShellInsetContext", "useInsetRegistration", "id", "inset", "ctx", "registerInset", "unregisterInset", "warned", "warnOnce", "message"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{c as e}from"./chunk-34KVYDF6.js";var s=["1","2","3"],r=["raised","solid","soft","outline","surface"],o={size:{type:"enum",className:"rt-r-size",values:s,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:r,default:"raised"},...e};export{o as a};
2
+ //# sourceMappingURL=chunk-4D7OU2UA.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/_internal/base-radio.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'] as const;\nconst variants = ['raised', 'solid', 'soft', 'outline', 'surface'] as const;\n\nconst baseRadioPropDefs = {\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'raised' },\n ...colorPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { baseRadioPropDefs };\n"],
5
+ "mappings": "wCAIA,IAAMA,EAAQ,CAAC,IAAK,IAAK,GAAG,EACtBC,EAAW,CAAC,SAAU,QAAS,OAAQ,UAAW,SAAS,EAE3DC,EAAoB,CACxB,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQF,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,QAAS,EACtF,GAAGE,CACL",
6
+ "names": ["sizes", "variants", "baseRadioPropDefs", "colorPropDef"]
7
+ }
@@ -0,0 +1,2 @@
1
+ import{a as S,b as N,c as b}from"./chunk-UPCRXJB2.js";import{b as I,c as T}from"./chunk-IX5HIHVI.js";import{b as v,c as y}from"./chunk-PRRJ4WRE.js";import{a as h}from"./chunk-DDFONGSM.js";import{a as u}from"./chunk-UBSLEGQZ.js";import{a as g}from"./chunk-GSTOGDAJ.js";import{a as W}from"./chunk-OS3FCYZY.js";var O={};W(O,{Content:()=>E,Group:()=>G,Item:()=>L,Label:()=>D,Root:()=>x,Separator:()=>V,Trigger:()=>w});import*as e from"react";import s from"classnames";import{Select as a,ScrollArea as P}from"radix-ui";var R=e.createContext({}),x=r=>{let{children:o,size:t=S.size.default,...l}=r;return e.createElement(a.Root,{...l},e.createElement(R.Provider,{value:e.useMemo(()=>({size:t}),[t])},o))};x.displayName="Select.Root";var w=e.forwardRef((r,o)=>{let t=e.useContext(R),{children:l,className:i,color:n,radius:f,placeholder:d,error:p,loading:c,disabled:m,readOnly:C,material:z,...M}=u({size:t?.size,...r},{size:S.size},N,g),A=e.useMemo(()=>({"aria-invalid":p||void 0,"aria-busy":c||void 0,"aria-disabled":m||void 0,"aria-readonly":C||void 0}),[p,c,m,C]);return e.createElement(a.Trigger,{asChild:!0},e.createElement("button",{"data-accent-color":n,"data-radius":f,"data-material":z,"data-error":p,"data-loading":c,...M,...A,ref:o,className:s("rt-reset","rt-SelectTrigger",i)},e.createElement("span",{className:"rt-SelectTriggerInner"},e.createElement(a.Value,{placeholder:d},l)),e.createElement(a.Icon,{asChild:!0},c?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(T,{className:"rt-SelectIcon"}))))});w.displayName="Select.Trigger";var E=e.forwardRef((r,o)=>{let t=e.useContext(R),{className:l,children:i,color:n,container:f,...d}=u({size:t?.size,...r},{size:S.size},b),p=v(),c=n||p.accentColor,m=h();return e.createElement(a.Portal,{container:f},e.createElement(y,{asChild:!0},e.createElement(a.Content,{"data-accent-color":c,sideOffset:4,...d,asChild:!1,ref:o,className:s("rt-PopperContent","rt-BaseMenuContent","rt-variant-soft","rt-SelectContent",l)},e.createElement(P.Root,{type:"auto",className:"rt-ScrollAreaRoot"},e.createElement(a.Viewport,{asChild:!0,className:s("rt-BaseMenuViewport","rt-SelectViewport")},e.createElement(P.Viewport,{ref:m,className:"rt-ScrollAreaViewport",style:{overflowY:void 0}},i)),e.createElement(P.Scrollbar,{className:"rt-ScrollAreaScrollbar rt-r-size-1",orientation:"vertical"},e.createElement(P.Thumb,{className:"rt-ScrollAreaThumb"}))))))});E.displayName="Select.Content";var L=e.forwardRef((r,o)=>{let{className:t,children:l,...i}=r,n=typeof l!="string";return e.createElement(a.Item,{...i,asChild:!1,ref:o,className:s("rt-reset","rt-BaseMenuItem","rt-SelectItem",{"rt-SelectItemRich":n},t)},e.createElement(a.ItemIndicator,{className:"rt-SelectItemIndicator"},e.createElement(I,{className:"rt-SelectItemIndicatorIcon"})),e.createElement(a.ItemText,null,l))});L.displayName="Select.Item";var G=e.forwardRef(({className:r,...o},t)=>e.createElement(a.Group,{...o,asChild:!1,ref:t,className:s("rt-SelectGroup",r)}));G.displayName="Select.Group";var D=e.forwardRef(({className:r,...o},t)=>e.createElement(a.Label,{...o,asChild:!1,ref:t,className:s("rt-BaseMenuLabel","rt-SelectLabel",r)}));D.displayName="Select.Label";var V=e.forwardRef(({className:r,...o},t)=>e.createElement(a.Separator,{...o,asChild:!1,ref:t,className:s("rt-BaseMenuSeparator","rt-SelectSeparator",r)}));V.displayName="Select.Separator";export{x as a,w as b,E as c,L as d,G as e,D as f,V as g,O as h};
2
+ //# sourceMappingURL=chunk-4EBCFKNC.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/components/select.tsx"],
4
+ "sourcesContent": ["'use client';\n\nimport { warnDeprecated } from '../helpers/warn-deprecated.js';\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Select as SelectPrimitive, ScrollArea as ScrollAreaPrimitive } from 'radix-ui';\n\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { ChevronDownIcon, ThickCheckIcon } from './icons.js';\nimport {\n selectRootPropDefs,\n selectTriggerPropDefs,\n selectContentPropDefs,\n} from './select.props.js';\nimport { useThemeContext, Theme } from './theme.js';\nimport { useThumbSync } from '../hooks/use-thumb-sync.js';\n\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\n\ntype SelectRootOwnProps = GetPropDefTypes<typeof selectRootPropDefs>;\n\ntype SelectContextValue = SelectRootOwnProps;\nconst SelectContext = React.createContext<SelectContextValue>({});\n\ninterface SelectRootProps extends SelectPrimitive.SelectProps, SelectContextValue {}\nconst SelectRoot: React.FC<SelectRootProps> = (props) => {\n const { children, size = selectRootPropDefs.size.default, ...rootProps } = props;\n return (\n <SelectPrimitive.Root {...rootProps}>\n <SelectContext.Provider value={React.useMemo(() => ({ size }), [size])}>\n {children}\n </SelectContext.Provider>\n </SelectPrimitive.Root>\n );\n};\nSelectRoot.displayName = 'Select.Root';\n\ntype SelectTriggerElement = React.ElementRef<typeof SelectPrimitive.Trigger>;\ntype SelectTriggerOwnProps = GetPropDefTypes<typeof selectTriggerPropDefs>;\ninterface SelectTriggerProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Trigger, RemovedProps>,\n MarginProps,\n SelectTriggerOwnProps {}\nconst SelectTrigger = React.forwardRef<SelectTriggerElement, SelectTriggerProps>(\n (props, forwardedRef) => {\n const context = React.useContext(SelectContext);\n const {\n children,\n className,\n color,\n radius,\n placeholder,\n error,\n loading,\n disabled,\n readOnly,\n material,\n ...triggerProps\n } = extractProps(\n // Pass size value from the context to generate styles\n { size: context?.size, ...props },\n // Pass size prop def to allow it to be extracted\n { size: selectRootPropDefs.size },\n selectTriggerPropDefs,\n marginPropDefs,\n );\n\n\n const ariaProps = React.useMemo(\n () => ({\n 'aria-invalid': error || undefined,\n 'aria-busy': loading || undefined,\n 'aria-disabled': disabled || undefined,\n 'aria-readonly': readOnly || undefined,\n }),\n [error, loading, disabled, readOnly],\n );\n\n return (\n <SelectPrimitive.Trigger asChild>\n <button\n data-accent-color={color}\n data-radius={radius}\n data-material={material}\n data-error={error}\n data-loading={loading}\n {...triggerProps}\n {...ariaProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-SelectTrigger', className)}\n >\n <span className=\"rt-SelectTriggerInner\">\n <SelectPrimitive.Value placeholder={placeholder}>{children}</SelectPrimitive.Value>\n </span>\n <SelectPrimitive.Icon asChild>\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 </SelectPrimitive.Icon>\n </button>\n </SelectPrimitive.Trigger>\n );\n },\n);\nSelectTrigger.displayName = 'Select.Trigger';\n\ntype SelectContentElement = React.ElementRef<typeof SelectPrimitive.Content>;\ntype SelectContentOwnProps = GetPropDefTypes<typeof selectContentPropDefs>;\ninterface SelectContentProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Content, RemovedProps>,\n SelectContentOwnProps {\n container?: React.ComponentPropsWithoutRef<typeof SelectPrimitive.Portal>['container'];\n}\nconst SelectContent = React.forwardRef<SelectContentElement, SelectContentProps>(\n (props, forwardedRef) => {\n const context = React.useContext(SelectContext);\n const { className, children, color, container, ...contentProps } = extractProps(\n // Pass size value from the context to generate styles\n { size: context?.size, ...props },\n // Pass size prop def to allow it to be extracted\n { size: selectRootPropDefs.size },\n selectContentPropDefs,\n );\n const themeContext = useThemeContext();\n const resolvedColor = color || themeContext.accentColor;\n const setThumbViewport = useThumbSync<HTMLDivElement>();\n return (\n <SelectPrimitive.Portal container={container}>\n <Theme asChild>\n <SelectPrimitive.Content\n data-accent-color={resolvedColor}\n sideOffset={4}\n {...contentProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-PopperContent',\n 'rt-BaseMenuContent',\n 'rt-variant-soft',\n 'rt-SelectContent',\n className,\n )}\n >\n <ScrollAreaPrimitive.Root type=\"auto\" className=\"rt-ScrollAreaRoot\">\n <SelectPrimitive.Viewport\n asChild\n className={classNames('rt-BaseMenuViewport', 'rt-SelectViewport')}\n >\n <ScrollAreaPrimitive.Viewport\n ref={setThumbViewport}\n className=\"rt-ScrollAreaViewport\"\n style={{ overflowY: undefined }}\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n </SelectPrimitive.Viewport>\n <ScrollAreaPrimitive.Scrollbar\n className=\"rt-ScrollAreaScrollbar rt-r-size-1\"\n orientation=\"vertical\"\n >\n <ScrollAreaPrimitive.Thumb className=\"rt-ScrollAreaThumb\" />\n </ScrollAreaPrimitive.Scrollbar>\n </ScrollAreaPrimitive.Root>\n </SelectPrimitive.Content>\n </Theme>\n </SelectPrimitive.Portal>\n );\n },\n);\nSelectContent.displayName = 'Select.Content';\n\ntype SelectItemElement = React.ElementRef<typeof SelectPrimitive.Item>;\ninterface SelectItemProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Item, RemovedProps> {}\nconst SelectItem = React.forwardRef<SelectItemElement, SelectItemProps>((props, forwardedRef) => {\n const { className, children, ...itemProps } = props;\n\n // Detect if this is rich content (not just a string)\n const isRichContent = typeof children !== 'string';\n\n return (\n <SelectPrimitive.Item\n {...itemProps}\n asChild={false}\n ref={forwardedRef}\n className={classNames(\n 'rt-reset',\n 'rt-BaseMenuItem',\n 'rt-SelectItem',\n { 'rt-SelectItemRich': isRichContent },\n className,\n )}\n >\n <SelectPrimitive.ItemIndicator className=\"rt-SelectItemIndicator\">\n <ThickCheckIcon className=\"rt-SelectItemIndicatorIcon\" />\n </SelectPrimitive.ItemIndicator>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n );\n});\nSelectItem.displayName = 'Select.Item';\n\ntype SelectGroupElement = React.ElementRef<typeof SelectPrimitive.Group>;\ninterface SelectGroupProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Group, RemovedProps> {}\nconst SelectGroup = React.forwardRef<SelectGroupElement, SelectGroupProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Group\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-SelectGroup', className)}\n />\n ),\n);\nSelectGroup.displayName = 'Select.Group';\n\ntype SelectLabelElement = React.ElementRef<typeof SelectPrimitive.Label>;\ninterface SelectLabelProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Label, RemovedProps> {}\nconst SelectLabel = React.forwardRef<SelectLabelElement, SelectLabelProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Label\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuLabel', 'rt-SelectLabel', className)}\n />\n ),\n);\nSelectLabel.displayName = 'Select.Label';\n\ntype SelectSeparatorElement = React.ElementRef<typeof SelectPrimitive.Separator>;\ninterface SelectSeparatorProps\n extends ComponentPropsWithout<typeof SelectPrimitive.Separator, RemovedProps> {}\nconst SelectSeparator = React.forwardRef<SelectSeparatorElement, SelectSeparatorProps>(\n ({ className, ...props }, forwardedRef) => (\n <SelectPrimitive.Separator\n {...props}\n asChild={false}\n ref={forwardedRef}\n className={classNames('rt-BaseMenuSeparator', 'rt-SelectSeparator', className)}\n />\n ),\n);\nSelectSeparator.displayName = 'Select.Separator';\n\nexport {\n SelectRoot as Root,\n SelectTrigger as Trigger,\n SelectContent as Content,\n SelectItem as Item,\n SelectGroup as Group,\n SelectLabel as Label,\n SelectSeparator as Separator,\n};\n\nexport type {\n SelectRootProps as RootProps,\n SelectTriggerProps as TriggerProps,\n SelectContentProps as ContentProps,\n SelectItemProps as ItemProps,\n SelectGroupProps as GroupProps,\n SelectLabelProps as LabelProps,\n SelectSeparatorProps as SeparatorProps,\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["select_exports", "__export", "SelectContent", "SelectGroup", "SelectItem", "SelectLabel", "SelectRoot", "SelectSeparator", "SelectTrigger", "React", "classNames", "SelectPrimitive", "ScrollAreaPrimitive", "SelectContext", "SelectRoot", "props", "children", "size", "selectRootPropDefs", "rootProps", "SelectPrimitive", "SelectTrigger", "forwardedRef", "context", "className", "color", "radius", "placeholder", "error", "loading", "disabled", "readOnly", "material", "triggerProps", "extractProps", "selectTriggerPropDefs", "marginPropDefs", "ariaProps", "classNames", "ChevronDownIcon", "SelectContent", "container", "contentProps", "selectContentPropDefs", "themeContext", "useThemeContext", "resolvedColor", "setThumbViewport", "useThumbSync", "Theme", "ScrollAreaPrimitive", "SelectItem", "itemProps", "isRichContent", "ThickCheckIcon", "SelectGroup", "SelectLabel", "SelectSeparator"]
7
+ }