@womp/kookie-ui 0.13.3 → 0.14.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 (968) hide show
  1. package/components.css +1052 -302
  2. package/dist/cjs/components/_internal/base-button.js +1 -1
  3. package/dist/cjs/components/_internal/base-button.js.map +4 -4
  4. package/dist/cjs/components/_internal/base-button.props.d.ts +4 -2
  5. package/dist/cjs/components/_internal/base-button.props.d.ts.map +1 -1
  6. package/dist/cjs/components/_internal/base-button.props.js +1 -1
  7. package/dist/cjs/components/_internal/base-button.props.js.map +4 -4
  8. package/dist/cjs/components/_internal/base-checkbox.props.d.ts +4 -2
  9. package/dist/cjs/components/_internal/base-checkbox.props.d.ts.map +1 -1
  10. package/dist/cjs/components/_internal/base-checkbox.props.js +1 -1
  11. package/dist/cjs/components/_internal/base-checkbox.props.js.map +4 -4
  12. package/dist/cjs/components/_internal/base-menu.props.d.ts +2 -2
  13. package/dist/cjs/components/_internal/base-menu.props.js +1 -1
  14. package/dist/cjs/components/_internal/base-menu.props.js.map +2 -2
  15. package/dist/cjs/components/_internal/base-menu.utils.js +1 -1
  16. package/dist/cjs/components/_internal/base-menu.utils.js.map +4 -4
  17. package/dist/cjs/components/_internal/base-radio.props.d.ts +4 -2
  18. package/dist/cjs/components/_internal/base-radio.props.d.ts.map +1 -1
  19. package/dist/cjs/components/_internal/base-radio.props.js +1 -1
  20. package/dist/cjs/components/_internal/base-radio.props.js.map +4 -4
  21. package/dist/cjs/components/_internal/base-tab-list.props.d.ts +7 -1
  22. package/dist/cjs/components/_internal/base-tab-list.props.d.ts.map +1 -1
  23. package/dist/cjs/components/_internal/base-tab-list.props.js +1 -1
  24. package/dist/cjs/components/_internal/base-tab-list.props.js.map +2 -2
  25. package/dist/cjs/components/_internal/menu-context.js +1 -1
  26. package/dist/cjs/components/_internal/menu-context.js.map +2 -2
  27. package/dist/cjs/components/_internal/pane-chrome.d.ts +47 -0
  28. package/dist/cjs/components/_internal/pane-chrome.d.ts.map +1 -0
  29. package/dist/cjs/components/_internal/pane-chrome.js +2 -0
  30. package/dist/cjs/components/_internal/pane-chrome.js.map +7 -0
  31. package/dist/cjs/components/_internal/shell-sidebar.d.ts +2 -1
  32. package/dist/cjs/components/_internal/shell-sidebar.d.ts.map +1 -1
  33. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  34. package/dist/cjs/components/_internal/shell-sidebar.js.map +4 -4
  35. package/dist/cjs/components/accordion.js +1 -1
  36. package/dist/cjs/components/accordion.js.map +4 -4
  37. package/dist/cjs/components/accordion.props.d.ts +5 -3
  38. package/dist/cjs/components/accordion.props.d.ts.map +1 -1
  39. package/dist/cjs/components/accordion.props.js +1 -1
  40. package/dist/cjs/components/accordion.props.js.map +4 -4
  41. package/dist/cjs/components/alert-dialog.js +1 -1
  42. package/dist/cjs/components/alert-dialog.js.map +2 -2
  43. package/dist/cjs/components/app-bar.d.ts +1 -0
  44. package/dist/cjs/components/app-bar.d.ts.map +1 -1
  45. package/dist/cjs/components/app-bar.js +1 -1
  46. package/dist/cjs/components/app-bar.js.map +4 -4
  47. package/dist/cjs/components/avatar.js +1 -1
  48. package/dist/cjs/components/avatar.js.map +4 -4
  49. package/dist/cjs/components/avatar.props.d.ts +4 -2
  50. package/dist/cjs/components/avatar.props.d.ts.map +1 -1
  51. package/dist/cjs/components/avatar.props.js +1 -1
  52. package/dist/cjs/components/avatar.props.js.map +4 -4
  53. package/dist/cjs/components/badge.js +1 -1
  54. package/dist/cjs/components/badge.js.map +4 -4
  55. package/dist/cjs/components/badge.props.d.ts +4 -2
  56. package/dist/cjs/components/badge.props.d.ts.map +1 -1
  57. package/dist/cjs/components/badge.props.js +1 -1
  58. package/dist/cjs/components/badge.props.js.map +4 -4
  59. package/dist/cjs/components/blockquote.js +1 -1
  60. package/dist/cjs/components/blockquote.js.map +1 -1
  61. package/dist/cjs/components/blockquote.props.js +1 -1
  62. package/dist/cjs/components/blockquote.props.js.map +1 -1
  63. package/dist/cjs/components/button.d.ts +5 -0
  64. package/dist/cjs/components/button.d.ts.map +1 -1
  65. package/dist/cjs/components/button.js +4 -1
  66. package/dist/cjs/components/button.js.map +4 -4
  67. package/dist/cjs/components/button.props.js +1 -1
  68. package/dist/cjs/components/button.props.js.map +4 -4
  69. package/dist/cjs/components/callout.d.ts +1 -0
  70. package/dist/cjs/components/callout.d.ts.map +1 -1
  71. package/dist/cjs/components/callout.js +1 -1
  72. package/dist/cjs/components/callout.js.map +4 -4
  73. package/dist/cjs/components/callout.props.d.ts +4 -2
  74. package/dist/cjs/components/callout.props.d.ts.map +1 -1
  75. package/dist/cjs/components/callout.props.js +1 -1
  76. package/dist/cjs/components/callout.props.js.map +4 -4
  77. package/dist/cjs/components/card.js +1 -1
  78. package/dist/cjs/components/card.js.map +4 -4
  79. package/dist/cjs/components/card.props.d.ts +4 -2
  80. package/dist/cjs/components/card.props.d.ts.map +1 -1
  81. package/dist/cjs/components/card.props.js +1 -1
  82. package/dist/cjs/components/card.props.js.map +4 -4
  83. package/dist/cjs/components/chatbar.d.ts +2 -1
  84. package/dist/cjs/components/chatbar.d.ts.map +1 -1
  85. package/dist/cjs/components/chatbar.js +2 -2
  86. package/dist/cjs/components/chatbar.js.map +4 -4
  87. package/dist/cjs/components/checkbox-cards.d.ts.map +1 -1
  88. package/dist/cjs/components/checkbox-cards.js +1 -1
  89. package/dist/cjs/components/checkbox-cards.js.map +4 -4
  90. package/dist/cjs/components/checkbox-cards.props.d.ts +10 -2
  91. package/dist/cjs/components/checkbox-cards.props.d.ts.map +1 -1
  92. package/dist/cjs/components/checkbox-cards.props.js +1 -1
  93. package/dist/cjs/components/checkbox-cards.props.js.map +4 -4
  94. package/dist/cjs/components/checkbox-group.js +1 -1
  95. package/dist/cjs/components/checkbox-group.js.map +4 -4
  96. package/dist/cjs/components/checkbox-group.props.d.ts +3 -2
  97. package/dist/cjs/components/checkbox-group.props.d.ts.map +1 -1
  98. package/dist/cjs/components/checkbox-group.props.js +1 -1
  99. package/dist/cjs/components/checkbox-group.props.js.map +4 -4
  100. package/dist/cjs/components/checkbox.js +1 -1
  101. package/dist/cjs/components/checkbox.js.map +4 -4
  102. package/dist/cjs/components/checkbox.props.js +1 -1
  103. package/dist/cjs/components/checkbox.props.js.map +4 -4
  104. package/dist/cjs/components/code.js +1 -1
  105. package/dist/cjs/components/code.js.map +3 -3
  106. package/dist/cjs/components/code.props.js +1 -1
  107. package/dist/cjs/components/code.props.js.map +3 -3
  108. package/dist/cjs/components/combobox.d.ts +0 -16
  109. package/dist/cjs/components/combobox.d.ts.map +1 -1
  110. package/dist/cjs/components/combobox.js +1 -1
  111. package/dist/cjs/components/combobox.js.map +4 -4
  112. package/dist/cjs/components/combobox.props.d.ts +6 -4
  113. package/dist/cjs/components/combobox.props.d.ts.map +1 -1
  114. package/dist/cjs/components/combobox.props.js +1 -1
  115. package/dist/cjs/components/combobox.props.js.map +4 -4
  116. package/dist/cjs/components/context-menu.d.ts +2 -1
  117. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  118. package/dist/cjs/components/context-menu.js +1 -1
  119. package/dist/cjs/components/context-menu.js.map +4 -4
  120. package/dist/cjs/components/context-menu.props.js +1 -1
  121. package/dist/cjs/components/context-menu.props.js.map +2 -2
  122. package/dist/cjs/components/data-list.js +1 -1
  123. package/dist/cjs/components/data-list.js.map +1 -1
  124. package/dist/cjs/components/data-list.props.js +1 -1
  125. package/dist/cjs/components/data-list.props.js.map +1 -1
  126. package/dist/cjs/components/dialog.js +1 -1
  127. package/dist/cjs/components/dialog.js.map +2 -2
  128. package/dist/cjs/components/dropdown-menu.d.ts +2 -1
  129. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  130. package/dist/cjs/components/dropdown-menu.js +1 -1
  131. package/dist/cjs/components/dropdown-menu.js.map +4 -4
  132. package/dist/cjs/components/dropdown-menu.props.js +1 -1
  133. package/dist/cjs/components/dropdown-menu.props.js.map +2 -2
  134. package/dist/cjs/components/heading.js +1 -1
  135. package/dist/cjs/components/heading.js.map +1 -1
  136. package/dist/cjs/components/heading.props.js +1 -1
  137. package/dist/cjs/components/heading.props.js.map +1 -1
  138. package/dist/cjs/components/hover-card.js +1 -1
  139. package/dist/cjs/components/hover-card.js.map +2 -2
  140. package/dist/cjs/components/icon-button.d.ts +2 -1
  141. package/dist/cjs/components/icon-button.d.ts.map +1 -1
  142. package/dist/cjs/components/icon-button.js +2 -2
  143. package/dist/cjs/components/icon-button.js.map +4 -4
  144. package/dist/cjs/components/icon-button.props.js +1 -1
  145. package/dist/cjs/components/icon-button.props.js.map +4 -4
  146. package/dist/cjs/components/index.js +5 -5
  147. package/dist/cjs/components/index.js.map +4 -4
  148. package/dist/cjs/components/kbd.js +1 -1
  149. package/dist/cjs/components/kbd.js.map +4 -4
  150. package/dist/cjs/components/kbd.props.d.ts +4 -2
  151. package/dist/cjs/components/kbd.props.d.ts.map +1 -1
  152. package/dist/cjs/components/kbd.props.js +1 -1
  153. package/dist/cjs/components/kbd.props.js.map +4 -4
  154. package/dist/cjs/components/link.js +1 -1
  155. package/dist/cjs/components/link.js.map +1 -1
  156. package/dist/cjs/components/link.props.js +1 -1
  157. package/dist/cjs/components/link.props.js.map +1 -1
  158. package/dist/cjs/components/message-scroller.js +2 -2
  159. package/dist/cjs/components/message-scroller.js.map +4 -4
  160. package/dist/cjs/components/navbar.js +1 -1
  161. package/dist/cjs/components/navbar.js.map +2 -2
  162. package/dist/cjs/components/navbar.props.d.ts +1 -1
  163. package/dist/cjs/components/navbar.props.js +1 -1
  164. package/dist/cjs/components/navbar.props.js.map +2 -2
  165. package/dist/cjs/components/notice.js +2 -2
  166. package/dist/cjs/components/notice.js.map +4 -4
  167. package/dist/cjs/components/popover.d.ts.map +1 -1
  168. package/dist/cjs/components/popover.js +1 -1
  169. package/dist/cjs/components/popover.js.map +4 -4
  170. package/dist/cjs/components/popover.props.d.ts +6 -0
  171. package/dist/cjs/components/popover.props.d.ts.map +1 -1
  172. package/dist/cjs/components/popover.props.js +1 -1
  173. package/dist/cjs/components/popover.props.js.map +2 -2
  174. package/dist/cjs/components/progress.js +1 -1
  175. package/dist/cjs/components/progress.js.map +1 -1
  176. package/dist/cjs/components/progress.props.js +1 -1
  177. package/dist/cjs/components/progress.props.js.map +1 -1
  178. package/dist/cjs/components/radio-cards.d.ts.map +1 -1
  179. package/dist/cjs/components/radio-cards.js +1 -1
  180. package/dist/cjs/components/radio-cards.js.map +4 -4
  181. package/dist/cjs/components/radio-cards.props.d.ts +10 -2
  182. package/dist/cjs/components/radio-cards.props.d.ts.map +1 -1
  183. package/dist/cjs/components/radio-cards.props.js +1 -1
  184. package/dist/cjs/components/radio-cards.props.js.map +4 -4
  185. package/dist/cjs/components/radio-group.js +1 -1
  186. package/dist/cjs/components/radio-group.js.map +4 -4
  187. package/dist/cjs/components/radio-group.props.d.ts +4 -2
  188. package/dist/cjs/components/radio-group.props.d.ts.map +1 -1
  189. package/dist/cjs/components/radio-group.props.js +1 -1
  190. package/dist/cjs/components/radio-group.props.js.map +4 -4
  191. package/dist/cjs/components/radio.js +1 -1
  192. package/dist/cjs/components/radio.js.map +4 -4
  193. package/dist/cjs/components/radio.props.js +1 -1
  194. package/dist/cjs/components/radio.props.js.map +4 -4
  195. package/dist/cjs/components/schemas/base-button.schema.d.ts +2 -1
  196. package/dist/cjs/components/schemas/base-button.schema.d.ts.map +1 -1
  197. package/dist/cjs/components/schemas/base-button.schema.js +1 -1
  198. package/dist/cjs/components/schemas/base-button.schema.js.map +2 -2
  199. package/dist/cjs/components/schemas/button.schema.d.ts +2 -1
  200. package/dist/cjs/components/schemas/button.schema.d.ts.map +1 -1
  201. package/dist/cjs/components/schemas/button.schema.js +1 -1
  202. package/dist/cjs/components/schemas/button.schema.js.map +2 -2
  203. package/dist/cjs/components/schemas/icon-button.schema.d.ts +2 -1
  204. package/dist/cjs/components/schemas/icon-button.schema.d.ts.map +1 -1
  205. package/dist/cjs/components/schemas/icon-button.schema.js +1 -1
  206. package/dist/cjs/components/schemas/icon-button.schema.js.map +2 -2
  207. package/dist/cjs/components/schemas/index.js +1 -1
  208. package/dist/cjs/components/schemas/index.js.map +2 -2
  209. package/dist/cjs/components/schemas/toggle-button.schema.d.ts +2 -1
  210. package/dist/cjs/components/schemas/toggle-button.schema.d.ts.map +1 -1
  211. package/dist/cjs/components/schemas/toggle-button.schema.js +1 -1
  212. package/dist/cjs/components/schemas/toggle-button.schema.js.map +2 -2
  213. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts +2 -1
  214. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts.map +1 -1
  215. package/dist/cjs/components/schemas/toggle-icon-button.schema.js +1 -1
  216. package/dist/cjs/components/schemas/toggle-icon-button.schema.js.map +2 -2
  217. package/dist/cjs/components/segmented-control.d.ts.map +1 -1
  218. package/dist/cjs/components/segmented-control.js +1 -1
  219. package/dist/cjs/components/segmented-control.js.map +4 -4
  220. package/dist/cjs/components/segmented-control.props.d.ts +5 -1
  221. package/dist/cjs/components/segmented-control.props.d.ts.map +1 -1
  222. package/dist/cjs/components/segmented-control.props.js +1 -1
  223. package/dist/cjs/components/segmented-control.props.js.map +2 -2
  224. package/dist/cjs/components/select.d.ts.map +1 -1
  225. package/dist/cjs/components/select.js +1 -1
  226. package/dist/cjs/components/select.js.map +4 -4
  227. package/dist/cjs/components/select.props.d.ts +11 -5
  228. package/dist/cjs/components/select.props.d.ts.map +1 -1
  229. package/dist/cjs/components/select.props.js +1 -1
  230. package/dist/cjs/components/select.props.js.map +4 -4
  231. package/dist/cjs/components/separator.js +1 -1
  232. package/dist/cjs/components/separator.js.map +1 -1
  233. package/dist/cjs/components/separator.props.js +1 -1
  234. package/dist/cjs/components/separator.props.js.map +1 -1
  235. package/dist/cjs/components/sheet.js +1 -1
  236. package/dist/cjs/components/sheet.js.map +2 -2
  237. package/dist/cjs/components/shell.d.ts +5 -1
  238. package/dist/cjs/components/shell.d.ts.map +1 -1
  239. package/dist/cjs/components/shell.js +1 -1
  240. package/dist/cjs/components/shell.js.map +4 -4
  241. package/dist/cjs/components/sidebar.d.ts +4 -0
  242. package/dist/cjs/components/sidebar.d.ts.map +1 -1
  243. package/dist/cjs/components/sidebar.js +1 -1
  244. package/dist/cjs/components/sidebar.js.map +4 -4
  245. package/dist/cjs/components/sidebar.props.d.ts +1 -0
  246. package/dist/cjs/components/sidebar.props.d.ts.map +1 -1
  247. package/dist/cjs/components/sidebar.props.js +1 -1
  248. package/dist/cjs/components/sidebar.props.js.map +2 -2
  249. package/dist/cjs/components/slider.js +1 -1
  250. package/dist/cjs/components/slider.js.map +1 -1
  251. package/dist/cjs/components/slider.props.js +1 -1
  252. package/dist/cjs/components/slider.props.js.map +1 -1
  253. package/dist/cjs/components/switch.js +1 -1
  254. package/dist/cjs/components/switch.js.map +1 -1
  255. package/dist/cjs/components/switch.props.js +1 -1
  256. package/dist/cjs/components/switch.props.js.map +1 -1
  257. package/dist/cjs/components/tab-nav.d.ts.map +1 -1
  258. package/dist/cjs/components/tab-nav.js +1 -1
  259. package/dist/cjs/components/tab-nav.js.map +4 -4
  260. package/dist/cjs/components/tab-nav.props.js +1 -1
  261. package/dist/cjs/components/tab-nav.props.js.map +2 -2
  262. package/dist/cjs/components/tabs.d.ts.map +1 -1
  263. package/dist/cjs/components/tabs.js +1 -1
  264. package/dist/cjs/components/tabs.js.map +4 -4
  265. package/dist/cjs/components/tabs.props.js +1 -1
  266. package/dist/cjs/components/tabs.props.js.map +2 -2
  267. package/dist/cjs/components/text-area.d.ts.map +1 -1
  268. package/dist/cjs/components/text-area.js +1 -1
  269. package/dist/cjs/components/text-area.js.map +4 -4
  270. package/dist/cjs/components/text-area.props.d.ts +6 -4
  271. package/dist/cjs/components/text-area.props.d.ts.map +1 -1
  272. package/dist/cjs/components/text-area.props.js +1 -1
  273. package/dist/cjs/components/text-area.props.js.map +4 -4
  274. package/dist/cjs/components/text-field.d.ts.map +1 -1
  275. package/dist/cjs/components/text-field.js +2 -2
  276. package/dist/cjs/components/text-field.js.map +4 -4
  277. package/dist/cjs/components/text-field.props.d.ts +6 -4
  278. package/dist/cjs/components/text-field.props.d.ts.map +1 -1
  279. package/dist/cjs/components/text-field.props.js +1 -1
  280. package/dist/cjs/components/text-field.props.js.map +4 -4
  281. package/dist/cjs/components/text.js +1 -1
  282. package/dist/cjs/components/text.js.map +1 -1
  283. package/dist/cjs/components/text.props.js +1 -1
  284. package/dist/cjs/components/text.props.js.map +1 -1
  285. package/dist/cjs/components/theme-panel.js +3 -3
  286. package/dist/cjs/components/theme-panel.js.map +4 -4
  287. package/dist/cjs/components/theme.js +1 -1
  288. package/dist/cjs/components/theme.js.map +2 -2
  289. package/dist/cjs/components/theme.props.d.ts +4 -4
  290. package/dist/cjs/components/theme.props.js +1 -1
  291. package/dist/cjs/components/theme.props.js.map +2 -2
  292. package/dist/cjs/components/toggle-button.d.ts.map +1 -1
  293. package/dist/cjs/components/toggle-button.js +5 -2
  294. package/dist/cjs/components/toggle-button.js.map +4 -4
  295. package/dist/cjs/components/toggle-icon-button.d.ts +2 -1
  296. package/dist/cjs/components/toggle-icon-button.d.ts.map +1 -1
  297. package/dist/cjs/components/toggle-icon-button.js +3 -3
  298. package/dist/cjs/components/toggle-icon-button.js.map +4 -4
  299. package/dist/cjs/components/toolbar.js +2 -2
  300. package/dist/cjs/components/toolbar.js.map +4 -4
  301. package/dist/cjs/components/tooltip.js +1 -1
  302. package/dist/cjs/components/tooltip.js.map +2 -2
  303. package/dist/cjs/components/user-card.d.ts +1 -0
  304. package/dist/cjs/components/user-card.d.ts.map +1 -1
  305. package/dist/cjs/components/user-card.js +1 -1
  306. package/dist/cjs/components/user-card.js.map +4 -4
  307. package/dist/cjs/components/user-card.props.d.ts +5 -3
  308. package/dist/cjs/components/user-card.props.d.ts.map +1 -1
  309. package/dist/cjs/components/user-card.props.js +1 -1
  310. package/dist/cjs/components/user-card.props.js.map +4 -4
  311. package/dist/cjs/components/virtual-menu.js +1 -1
  312. package/dist/cjs/components/virtual-menu.js.map +2 -2
  313. package/dist/cjs/helpers/parse-variant.d.ts +8 -0
  314. package/dist/cjs/helpers/parse-variant.d.ts.map +1 -0
  315. package/dist/cjs/helpers/parse-variant.js +2 -0
  316. package/dist/cjs/helpers/parse-variant.js.map +7 -0
  317. package/dist/cjs/helpers/warn-deprecated.d.ts +7 -0
  318. package/dist/cjs/helpers/warn-deprecated.d.ts.map +1 -0
  319. package/dist/cjs/helpers/warn-deprecated.js +2 -0
  320. package/dist/cjs/helpers/warn-deprecated.js.map +7 -0
  321. package/dist/cjs/index.js +7 -7
  322. package/dist/cjs/index.js.map +4 -4
  323. package/dist/cjs/props/color.prop.d.ts +8 -1
  324. package/dist/cjs/props/color.prop.d.ts.map +1 -1
  325. package/dist/cjs/props/color.prop.js +1 -1
  326. package/dist/cjs/props/color.prop.js.map +3 -3
  327. package/dist/cjs/props/index.js +1 -1
  328. package/dist/cjs/props/index.js.map +4 -4
  329. package/dist/esm/chunk-27SCVCQY.js +2 -0
  330. package/dist/esm/chunk-27SCVCQY.js.map +7 -0
  331. package/dist/esm/chunk-2C5WLKEZ.js +2 -0
  332. package/dist/esm/chunk-2C5WLKEZ.js.map +7 -0
  333. package/dist/esm/chunk-2D5QJ6MX.js +2 -0
  334. package/dist/esm/chunk-2D5QJ6MX.js.map +7 -0
  335. package/dist/esm/chunk-2DKLJMUU.js +2 -0
  336. package/dist/esm/chunk-2DKLJMUU.js.map +7 -0
  337. package/dist/esm/chunk-2T74JEVN.js +2 -0
  338. package/dist/esm/chunk-2T74JEVN.js.map +7 -0
  339. package/dist/esm/{chunk-XVYTOZES.js → chunk-34UMKY2L.js} +2 -2
  340. package/dist/esm/chunk-3DEZMXFF.js +5 -0
  341. package/dist/esm/chunk-3DEZMXFF.js.map +7 -0
  342. package/dist/esm/{chunk-4XKK32M4.js → chunk-3HGHPAH4.js} +2 -2
  343. package/dist/esm/chunk-3M73GWN5.js +2 -0
  344. package/dist/esm/chunk-3M73GWN5.js.map +7 -0
  345. package/dist/esm/{chunk-C34HCTGS.js → chunk-3Q3EOUGJ.js} +2 -2
  346. package/dist/esm/chunk-3TIO3EMN.js +2 -0
  347. package/dist/esm/chunk-3TIO3EMN.js.map +7 -0
  348. package/dist/esm/{chunk-4ME6O27S.js → chunk-3UZHKW6I.js} +2 -2
  349. package/dist/esm/{chunk-AF6XKU3W.js → chunk-3WCSLQNH.js} +2 -2
  350. package/dist/esm/{chunk-DD6SJPOU.js → chunk-45AMHIBO.js} +2 -2
  351. package/dist/esm/chunk-47CEZJM2.js +2 -0
  352. package/dist/esm/chunk-47CEZJM2.js.map +7 -0
  353. package/dist/esm/chunk-4BPRLR6C.js +2 -0
  354. package/dist/esm/chunk-4BPRLR6C.js.map +7 -0
  355. package/dist/esm/{chunk-54JFIP5S.js → chunk-4D5LR4H6.js} +2 -2
  356. package/dist/esm/chunk-4D5LR4H6.js.map +7 -0
  357. package/dist/esm/{chunk-CIYF56YS.js → chunk-4JNHUPIM.js} +2 -2
  358. package/dist/esm/chunk-4WLDX7WZ.js +2 -0
  359. package/dist/esm/chunk-4WLDX7WZ.js.map +7 -0
  360. package/dist/esm/{chunk-OJU5GCDZ.js → chunk-5G4WWJ4Z.js} +2 -2
  361. package/dist/esm/chunk-5JS7ADWX.js +2 -0
  362. package/dist/esm/chunk-5JS7ADWX.js.map +7 -0
  363. package/dist/esm/{chunk-AGNIFHOE.js → chunk-62CJL5G7.js} +2 -2
  364. package/dist/esm/{chunk-Y5RCH23Z.js → chunk-6JP5PIOO.js} +2 -2
  365. package/dist/esm/{chunk-ZO7TTWJI.js → chunk-77TGP2LO.js} +2 -2
  366. package/dist/esm/chunk-7B6CIVAF.js +2 -0
  367. package/dist/esm/chunk-7B6CIVAF.js.map +7 -0
  368. package/dist/esm/chunk-7YIQV7VO.js +2 -0
  369. package/dist/esm/chunk-7YIQV7VO.js.map +7 -0
  370. package/dist/esm/chunk-7ZOGH5NT.js +2 -0
  371. package/dist/esm/chunk-7ZOGH5NT.js.map +7 -0
  372. package/dist/esm/chunk-AVFGMLL4.js +2 -0
  373. package/dist/esm/chunk-AVFGMLL4.js.map +7 -0
  374. package/dist/esm/{chunk-4LDVSTXI.js → chunk-BKES3M4Y.js} +2 -2
  375. package/dist/esm/chunk-BOFVKXUV.js +2 -0
  376. package/dist/esm/chunk-BOFVKXUV.js.map +7 -0
  377. package/dist/esm/{chunk-VX6ARMWP.js → chunk-C7UXUTUF.js} +2 -2
  378. package/dist/esm/{chunk-2I7QRVJ5.js → chunk-CIKDGYX3.js} +2 -2
  379. package/dist/esm/chunk-CL6P54QT.js +5 -0
  380. package/dist/esm/chunk-CL6P54QT.js.map +7 -0
  381. package/dist/esm/{chunk-5XV4QEP5.js → chunk-CMEKH4I5.js} +2 -2
  382. package/dist/esm/chunk-CSUEZWN5.js +2 -0
  383. package/dist/esm/chunk-CSUEZWN5.js.map +7 -0
  384. package/dist/esm/{chunk-JUJYMZ2F.js → chunk-DJA5MCJA.js} +2 -2
  385. package/dist/esm/chunk-DVSXWSAT.js +2 -0
  386. package/dist/esm/chunk-DVSXWSAT.js.map +7 -0
  387. package/dist/esm/chunk-E7LJHM3S.js +2 -0
  388. package/dist/esm/chunk-E7LJHM3S.js.map +7 -0
  389. package/dist/esm/{chunk-4YFJWXL2.js → chunk-EUSMN3K7.js} +2 -2
  390. package/dist/esm/{chunk-VICP2RNA.js → chunk-FISGGGPC.js} +2 -2
  391. package/dist/esm/chunk-FNB47XDO.js +2 -0
  392. package/dist/esm/chunk-FNB47XDO.js.map +7 -0
  393. package/dist/esm/{chunk-KFR3CK24.js → chunk-GLKN32J3.js} +2 -2
  394. package/dist/esm/{chunk-COWZAUZR.js → chunk-GONBMSRL.js} +2 -2
  395. package/dist/esm/chunk-GRRV4I2I.js +2 -0
  396. package/dist/esm/chunk-GRRV4I2I.js.map +7 -0
  397. package/dist/esm/chunk-H7LHGT44.js +2 -0
  398. package/dist/esm/chunk-H7LHGT44.js.map +7 -0
  399. package/dist/esm/{chunk-GO7OHBHW.js → chunk-HFVD7W6R.js} +2 -2
  400. package/dist/esm/{chunk-SAJY4H6J.js → chunk-HIBX2EXV.js} +2 -2
  401. package/dist/esm/{chunk-VZSQATP6.js → chunk-HJLBVNQE.js} +2 -2
  402. package/dist/esm/{chunk-JDGJSNWT.js → chunk-HNO4X33C.js} +2 -2
  403. package/dist/esm/chunk-IHRLGR6J.js +2 -0
  404. package/dist/esm/chunk-IHRLGR6J.js.map +7 -0
  405. package/dist/esm/{chunk-E67CIG6A.js → chunk-IPHKKZYE.js} +2 -2
  406. package/dist/esm/{chunk-7R73ISNJ.js → chunk-IQU6EELI.js} +3 -3
  407. package/dist/esm/{chunk-PZ7OYATT.js → chunk-IV4YJRVR.js} +2 -2
  408. package/dist/esm/{chunk-S5C5YRBS.js → chunk-IVBKTHDM.js} +2 -2
  409. package/dist/esm/chunk-IY3GKGDZ.js +2 -0
  410. package/dist/esm/chunk-IY3GKGDZ.js.map +7 -0
  411. package/dist/esm/chunk-JTN3KTAS.js +2 -0
  412. package/dist/esm/chunk-JTN3KTAS.js.map +7 -0
  413. package/dist/esm/{chunk-RNTCHVFI.js → chunk-JXVUTFQN.js} +2 -2
  414. package/dist/esm/{chunk-VR7ZAFYN.js → chunk-K7BWSYVP.js} +2 -2
  415. package/dist/esm/{chunk-2CMM7MEL.js → chunk-KJC32RWT.js} +2 -2
  416. package/dist/esm/{chunk-2CMM7MEL.js.map → chunk-KJC32RWT.js.map} +2 -2
  417. package/dist/esm/{chunk-5WRCK4R7.js → chunk-KJTEZVOF.js} +2 -2
  418. package/dist/esm/{chunk-OGXZHAQL.js → chunk-KXSMY4ZF.js} +2 -2
  419. package/dist/esm/{chunk-MS5J4MF6.js → chunk-LJXP6K5Y.js} +2 -2
  420. package/dist/esm/{chunk-CSKZZOI2.js → chunk-N6Q3L64W.js} +2 -2
  421. package/dist/esm/chunk-O2RISF37.js +2 -0
  422. package/dist/esm/chunk-O2RISF37.js.map +7 -0
  423. package/dist/esm/{chunk-YBSRX63K.js → chunk-O2WPAUQN.js} +2 -2
  424. package/dist/esm/{chunk-HJU4I34X.js → chunk-OB3MHLQL.js} +2 -2
  425. package/dist/esm/chunk-OJSDBLP7.js +2 -0
  426. package/dist/esm/chunk-OJSDBLP7.js.map +7 -0
  427. package/dist/esm/chunk-OUSDYZDE.js +2 -0
  428. package/dist/esm/chunk-OUSDYZDE.js.map +7 -0
  429. package/dist/esm/chunk-OVGPUFRI.js +2 -0
  430. package/dist/esm/chunk-OVGPUFRI.js.map +7 -0
  431. package/dist/esm/{chunk-NIIEIZKQ.js → chunk-OW4KAIWF.js} +2 -2
  432. package/dist/esm/{chunk-HF5WY5YE.js → chunk-PAEHH3WS.js} +2 -2
  433. package/dist/esm/chunk-PLTTQFRQ.js +2 -0
  434. package/dist/esm/chunk-PLTTQFRQ.js.map +7 -0
  435. package/dist/esm/{chunk-FHOCUZDR.js → chunk-PXUQEA77.js} +2 -2
  436. package/dist/esm/{chunk-7UHKEJ7Q.js → chunk-R2MQMCND.js} +2 -2
  437. package/dist/esm/{chunk-64PFYID5.js → chunk-RAVFUI7W.js} +2 -2
  438. package/dist/esm/chunk-ROGC7K5N.js +2 -0
  439. package/dist/esm/chunk-ROGC7K5N.js.map +7 -0
  440. package/dist/esm/chunk-RON6FXLO.js +2 -0
  441. package/dist/esm/chunk-RON6FXLO.js.map +7 -0
  442. package/dist/esm/{chunk-CDG5WH4U.js → chunk-RUOOCYK4.js} +2 -2
  443. package/dist/esm/{chunk-36A5BYCN.js → chunk-RUPET4E7.js} +2 -2
  444. package/dist/esm/chunk-RWN22S44.js +2 -0
  445. package/dist/esm/{chunk-7NVLCYCL.js → chunk-S3GZZXQ7.js} +2 -2
  446. package/dist/esm/{chunk-N4GTDLRD.js → chunk-SGUTNJUO.js} +2 -2
  447. package/dist/esm/chunk-SIBSXKFF.js +2 -0
  448. package/dist/esm/chunk-SIBSXKFF.js.map +7 -0
  449. package/dist/esm/{chunk-GL5QTWYI.js → chunk-SQ4BU4GH.js} +2 -2
  450. package/dist/esm/chunk-SQZ5O7QS.js +2 -0
  451. package/dist/esm/chunk-SQZ5O7QS.js.map +7 -0
  452. package/dist/esm/chunk-SURYYF7I.js +2 -0
  453. package/dist/esm/chunk-SURYYF7I.js.map +7 -0
  454. package/dist/esm/{chunk-KOFEFBB3.js → chunk-T6Z4JUH6.js} +2 -2
  455. package/dist/esm/{chunk-67MKPTZJ.js → chunk-TCEQ5VVE.js} +2 -2
  456. package/dist/esm/{chunk-ESPWYN5C.js → chunk-TZ5MZQUB.js} +2 -2
  457. package/dist/esm/{chunk-CRSHBENJ.js → chunk-UBWRIE4C.js} +2 -2
  458. package/dist/esm/chunk-UE2OBZIS.js +2 -0
  459. package/dist/esm/chunk-UE2OBZIS.js.map +7 -0
  460. package/dist/esm/{chunk-ZOY43B55.js → chunk-UK3BFTI2.js} +2 -2
  461. package/dist/esm/chunk-UTHTSYSL.js +2 -0
  462. package/dist/esm/chunk-UTHTSYSL.js.map +7 -0
  463. package/dist/esm/chunk-V3QVAXH3.js +2 -0
  464. package/dist/esm/chunk-V3QVAXH3.js.map +7 -0
  465. package/dist/esm/{chunk-KJUDZCYK.js → chunk-VBAXORVV.js} +2 -2
  466. package/dist/esm/chunk-VJUFYYKP.js +2 -0
  467. package/dist/esm/{chunk-FC2DBBJ3.js.map → chunk-VJUFYYKP.js.map} +2 -2
  468. package/dist/esm/{chunk-OTXCKEWT.js → chunk-VJXHEDCE.js} +2 -2
  469. package/dist/esm/{chunk-IHK3H2OM.js → chunk-VUKTURU4.js} +2 -2
  470. package/dist/esm/{chunk-NQ3D3UXZ.js → chunk-VV67KTKA.js} +2 -2
  471. package/dist/esm/chunk-WDNTAQ6G.js +2 -0
  472. package/dist/esm/chunk-WDNTAQ6G.js.map +7 -0
  473. package/dist/esm/chunk-WHAKQCNV.js +2 -0
  474. package/dist/esm/chunk-WHAKQCNV.js.map +7 -0
  475. package/dist/esm/chunk-WTXQB2EV.js +2 -0
  476. package/dist/esm/chunk-WTXQB2EV.js.map +7 -0
  477. package/dist/esm/chunk-WXBTPEFO.js +2 -0
  478. package/dist/esm/chunk-WXBTPEFO.js.map +7 -0
  479. package/dist/esm/chunk-XILM2OMC.js +2 -0
  480. package/dist/esm/chunk-XILM2OMC.js.map +7 -0
  481. package/dist/esm/chunk-YBS2IB7Z.js +2 -0
  482. package/dist/esm/chunk-YBS2IB7Z.js.map +7 -0
  483. package/dist/esm/chunk-YDPCJO5G.js +2 -0
  484. package/dist/esm/chunk-YDPCJO5G.js.map +7 -0
  485. package/dist/esm/chunk-YIK4ACXS.js +2 -0
  486. package/dist/esm/chunk-YIK4ACXS.js.map +7 -0
  487. package/dist/esm/chunk-YL62I5SI.js +2 -0
  488. package/dist/esm/{chunk-2OSGPH7E.js → chunk-YLLCCUC7.js} +2 -2
  489. package/dist/esm/{chunk-ZNK6AH2G.js → chunk-Z4DTHR2S.js} +2 -2
  490. package/dist/esm/{chunk-ZNK6AH2G.js.map → chunk-Z4DTHR2S.js.map} +3 -3
  491. package/dist/esm/{chunk-OMGZG52I.js → chunk-ZE2GWHPY.js} +2 -2
  492. package/dist/esm/{chunk-AGSSWWFI.js → chunk-ZK55O7TN.js} +2 -2
  493. package/dist/esm/{chunk-YAQBIO2B.js → chunk-ZQVYY7UT.js} +2 -2
  494. package/dist/esm/chunk-ZVIWTYHE.js +2 -0
  495. package/dist/esm/chunk-ZVIWTYHE.js.map +7 -0
  496. package/dist/esm/components/_internal/base-button.js +1 -1
  497. package/dist/esm/components/_internal/base-button.props.d.ts +4 -2
  498. package/dist/esm/components/_internal/base-button.props.d.ts.map +1 -1
  499. package/dist/esm/components/_internal/base-button.props.js +1 -1
  500. package/dist/esm/components/_internal/base-checkbox.props.d.ts +4 -2
  501. package/dist/esm/components/_internal/base-checkbox.props.d.ts.map +1 -1
  502. package/dist/esm/components/_internal/base-checkbox.props.js +1 -1
  503. package/dist/esm/components/_internal/base-menu.props.d.ts +2 -2
  504. package/dist/esm/components/_internal/base-menu.props.js +1 -1
  505. package/dist/esm/components/_internal/base-menu.utils.js +1 -1
  506. package/dist/esm/components/_internal/base-radio.props.d.ts +4 -2
  507. package/dist/esm/components/_internal/base-radio.props.d.ts.map +1 -1
  508. package/dist/esm/components/_internal/base-radio.props.js +1 -1
  509. package/dist/esm/components/_internal/base-tab-list.props.d.ts +7 -1
  510. package/dist/esm/components/_internal/base-tab-list.props.d.ts.map +1 -1
  511. package/dist/esm/components/_internal/base-tab-list.props.js +1 -1
  512. package/dist/esm/components/_internal/menu-context.js +1 -1
  513. package/dist/esm/components/_internal/pane-chrome.d.ts +47 -0
  514. package/dist/esm/components/_internal/pane-chrome.d.ts.map +1 -0
  515. package/dist/esm/components/_internal/pane-chrome.js +2 -0
  516. package/dist/esm/components/_internal/pane-chrome.js.map +7 -0
  517. package/dist/esm/components/_internal/shell-bottom.js +1 -1
  518. package/dist/esm/components/_internal/shell-inspector.js +1 -1
  519. package/dist/esm/components/_internal/shell-sidebar.d.ts +2 -1
  520. package/dist/esm/components/_internal/shell-sidebar.d.ts.map +1 -1
  521. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  522. package/dist/esm/components/accordion.js +1 -1
  523. package/dist/esm/components/accordion.props.d.ts +5 -3
  524. package/dist/esm/components/accordion.props.d.ts.map +1 -1
  525. package/dist/esm/components/accordion.props.js +1 -1
  526. package/dist/esm/components/alert-dialog.js +1 -1
  527. package/dist/esm/components/app-bar.d.ts +1 -0
  528. package/dist/esm/components/app-bar.d.ts.map +1 -1
  529. package/dist/esm/components/app-bar.js +1 -1
  530. package/dist/esm/components/avatar.js +1 -1
  531. package/dist/esm/components/avatar.props.d.ts +4 -2
  532. package/dist/esm/components/avatar.props.d.ts.map +1 -1
  533. package/dist/esm/components/avatar.props.js +1 -1
  534. package/dist/esm/components/badge.js +1 -1
  535. package/dist/esm/components/badge.props.d.ts +4 -2
  536. package/dist/esm/components/badge.props.d.ts.map +1 -1
  537. package/dist/esm/components/badge.props.js +1 -1
  538. package/dist/esm/components/blockquote.js +1 -1
  539. package/dist/esm/components/blockquote.props.js +1 -1
  540. package/dist/esm/components/box.js +1 -1
  541. package/dist/esm/components/button.d.ts +5 -0
  542. package/dist/esm/components/button.d.ts.map +1 -1
  543. package/dist/esm/components/button.js +1 -1
  544. package/dist/esm/components/button.props.js +1 -1
  545. package/dist/esm/components/callout.d.ts +1 -0
  546. package/dist/esm/components/callout.d.ts.map +1 -1
  547. package/dist/esm/components/callout.js +1 -1
  548. package/dist/esm/components/callout.props.d.ts +4 -2
  549. package/dist/esm/components/callout.props.d.ts.map +1 -1
  550. package/dist/esm/components/callout.props.js +1 -1
  551. package/dist/esm/components/card.js +1 -1
  552. package/dist/esm/components/card.props.d.ts +4 -2
  553. package/dist/esm/components/card.props.d.ts.map +1 -1
  554. package/dist/esm/components/card.props.js +1 -1
  555. package/dist/esm/components/chatbar.d.ts +2 -1
  556. package/dist/esm/components/chatbar.d.ts.map +1 -1
  557. package/dist/esm/components/chatbar.js +1 -1
  558. package/dist/esm/components/checkbox-cards.d.ts.map +1 -1
  559. package/dist/esm/components/checkbox-cards.js +1 -1
  560. package/dist/esm/components/checkbox-cards.props.d.ts +10 -2
  561. package/dist/esm/components/checkbox-cards.props.d.ts.map +1 -1
  562. package/dist/esm/components/checkbox-cards.props.js +1 -1
  563. package/dist/esm/components/checkbox-group.js +1 -1
  564. package/dist/esm/components/checkbox-group.props.d.ts +3 -2
  565. package/dist/esm/components/checkbox-group.props.d.ts.map +1 -1
  566. package/dist/esm/components/checkbox-group.props.js +1 -1
  567. package/dist/esm/components/checkbox.js +1 -1
  568. package/dist/esm/components/checkbox.props.js +1 -1
  569. package/dist/esm/components/code.js +1 -1
  570. package/dist/esm/components/code.props.js +1 -1
  571. package/dist/esm/components/combobox.d.ts +0 -16
  572. package/dist/esm/components/combobox.d.ts.map +1 -1
  573. package/dist/esm/components/combobox.js +1 -1
  574. package/dist/esm/components/combobox.props.d.ts +6 -4
  575. package/dist/esm/components/combobox.props.d.ts.map +1 -1
  576. package/dist/esm/components/combobox.props.js +1 -1
  577. package/dist/esm/components/container.js +1 -1
  578. package/dist/esm/components/context-menu.d.ts +2 -1
  579. package/dist/esm/components/context-menu.d.ts.map +1 -1
  580. package/dist/esm/components/context-menu.js +1 -1
  581. package/dist/esm/components/context-menu.props.js +1 -1
  582. package/dist/esm/components/data-list.js +1 -1
  583. package/dist/esm/components/data-list.props.js +1 -1
  584. package/dist/esm/components/dialog.js +1 -1
  585. package/dist/esm/components/dropdown-menu.d.ts +2 -1
  586. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  587. package/dist/esm/components/dropdown-menu.js +1 -1
  588. package/dist/esm/components/dropdown-menu.props.js +1 -1
  589. package/dist/esm/components/flex.js +1 -1
  590. package/dist/esm/components/grid.js +1 -1
  591. package/dist/esm/components/heading.js +1 -1
  592. package/dist/esm/components/heading.props.js +1 -1
  593. package/dist/esm/components/hover-card.js +1 -1
  594. package/dist/esm/components/icon-button.d.ts +2 -1
  595. package/dist/esm/components/icon-button.d.ts.map +1 -1
  596. package/dist/esm/components/icon-button.js +1 -1
  597. package/dist/esm/components/icon-button.props.js +1 -1
  598. package/dist/esm/components/image.js +1 -1
  599. package/dist/esm/components/index.js +1 -1
  600. package/dist/esm/components/inset.js +1 -1
  601. package/dist/esm/components/kbd.js +1 -1
  602. package/dist/esm/components/kbd.props.d.ts +4 -2
  603. package/dist/esm/components/kbd.props.d.ts.map +1 -1
  604. package/dist/esm/components/kbd.props.js +1 -1
  605. package/dist/esm/components/link.js +1 -1
  606. package/dist/esm/components/link.props.js +1 -1
  607. package/dist/esm/components/message-scroller.js +1 -1
  608. package/dist/esm/components/navbar.js +1 -1
  609. package/dist/esm/components/navbar.props.d.ts +1 -1
  610. package/dist/esm/components/navbar.props.js +1 -1
  611. package/dist/esm/components/notice.js +1 -1
  612. package/dist/esm/components/popover.d.ts.map +1 -1
  613. package/dist/esm/components/popover.js +1 -1
  614. package/dist/esm/components/popover.props.d.ts +6 -0
  615. package/dist/esm/components/popover.props.d.ts.map +1 -1
  616. package/dist/esm/components/popover.props.js +1 -1
  617. package/dist/esm/components/progress.js +1 -1
  618. package/dist/esm/components/progress.props.js +1 -1
  619. package/dist/esm/components/radio-cards.d.ts.map +1 -1
  620. package/dist/esm/components/radio-cards.js +1 -1
  621. package/dist/esm/components/radio-cards.props.d.ts +10 -2
  622. package/dist/esm/components/radio-cards.props.d.ts.map +1 -1
  623. package/dist/esm/components/radio-cards.props.js +1 -1
  624. package/dist/esm/components/radio-group.js +1 -1
  625. package/dist/esm/components/radio-group.props.d.ts +4 -2
  626. package/dist/esm/components/radio-group.props.d.ts.map +1 -1
  627. package/dist/esm/components/radio-group.props.js +1 -1
  628. package/dist/esm/components/radio.js +1 -1
  629. package/dist/esm/components/radio.props.js +1 -1
  630. package/dist/esm/components/schemas/base-button.schema.d.ts +2 -1
  631. package/dist/esm/components/schemas/base-button.schema.d.ts.map +1 -1
  632. package/dist/esm/components/schemas/base-button.schema.js +1 -1
  633. package/dist/esm/components/schemas/button.schema.d.ts +2 -1
  634. package/dist/esm/components/schemas/button.schema.d.ts.map +1 -1
  635. package/dist/esm/components/schemas/button.schema.js +1 -1
  636. package/dist/esm/components/schemas/icon-button.schema.d.ts +2 -1
  637. package/dist/esm/components/schemas/icon-button.schema.d.ts.map +1 -1
  638. package/dist/esm/components/schemas/icon-button.schema.js +1 -1
  639. package/dist/esm/components/schemas/index.js +1 -1
  640. package/dist/esm/components/schemas/toggle-button.schema.d.ts +2 -1
  641. package/dist/esm/components/schemas/toggle-button.schema.d.ts.map +1 -1
  642. package/dist/esm/components/schemas/toggle-button.schema.js +1 -1
  643. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts +2 -1
  644. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts.map +1 -1
  645. package/dist/esm/components/schemas/toggle-icon-button.schema.js +1 -1
  646. package/dist/esm/components/scroll-area.js +1 -1
  647. package/dist/esm/components/section.js +1 -1
  648. package/dist/esm/components/segmented-control.d.ts.map +1 -1
  649. package/dist/esm/components/segmented-control.js +1 -1
  650. package/dist/esm/components/segmented-control.props.d.ts +5 -1
  651. package/dist/esm/components/segmented-control.props.d.ts.map +1 -1
  652. package/dist/esm/components/segmented-control.props.js +1 -1
  653. package/dist/esm/components/select.d.ts.map +1 -1
  654. package/dist/esm/components/select.js +1 -1
  655. package/dist/esm/components/select.props.d.ts +11 -5
  656. package/dist/esm/components/select.props.d.ts.map +1 -1
  657. package/dist/esm/components/select.props.js +1 -1
  658. package/dist/esm/components/separator.js +1 -1
  659. package/dist/esm/components/separator.props.js +1 -1
  660. package/dist/esm/components/sheet.js +1 -1
  661. package/dist/esm/components/shell.d.ts +5 -1
  662. package/dist/esm/components/shell.d.ts.map +1 -1
  663. package/dist/esm/components/shell.js +1 -1
  664. package/dist/esm/components/sidebar.d.ts +4 -0
  665. package/dist/esm/components/sidebar.d.ts.map +1 -1
  666. package/dist/esm/components/sidebar.js +1 -1
  667. package/dist/esm/components/sidebar.props.d.ts +1 -0
  668. package/dist/esm/components/sidebar.props.d.ts.map +1 -1
  669. package/dist/esm/components/sidebar.props.js +1 -1
  670. package/dist/esm/components/skeleton.js +1 -1
  671. package/dist/esm/components/slider.js +1 -1
  672. package/dist/esm/components/slider.props.js +1 -1
  673. package/dist/esm/components/spinner.js +1 -1
  674. package/dist/esm/components/switch.js +1 -1
  675. package/dist/esm/components/switch.props.js +1 -1
  676. package/dist/esm/components/tab-nav.d.ts.map +1 -1
  677. package/dist/esm/components/tab-nav.js +1 -1
  678. package/dist/esm/components/tab-nav.props.js +1 -1
  679. package/dist/esm/components/table.js +1 -1
  680. package/dist/esm/components/tabs.d.ts.map +1 -1
  681. package/dist/esm/components/tabs.js +1 -1
  682. package/dist/esm/components/tabs.props.js +1 -1
  683. package/dist/esm/components/text-area.d.ts.map +1 -1
  684. package/dist/esm/components/text-area.js +1 -1
  685. package/dist/esm/components/text-area.props.d.ts +6 -4
  686. package/dist/esm/components/text-area.props.d.ts.map +1 -1
  687. package/dist/esm/components/text-area.props.js +1 -1
  688. package/dist/esm/components/text-field.d.ts.map +1 -1
  689. package/dist/esm/components/text-field.js +1 -1
  690. package/dist/esm/components/text-field.props.d.ts +6 -4
  691. package/dist/esm/components/text-field.props.d.ts.map +1 -1
  692. package/dist/esm/components/text-field.props.js +1 -1
  693. package/dist/esm/components/text.js +1 -1
  694. package/dist/esm/components/text.props.js +1 -1
  695. package/dist/esm/components/theme-panel.js +1 -1
  696. package/dist/esm/components/theme.js +1 -1
  697. package/dist/esm/components/theme.props.d.ts +4 -4
  698. package/dist/esm/components/theme.props.js +1 -1
  699. package/dist/esm/components/toggle-button.d.ts.map +1 -1
  700. package/dist/esm/components/toggle-button.js +1 -1
  701. package/dist/esm/components/toggle-icon-button.d.ts +2 -1
  702. package/dist/esm/components/toggle-icon-button.d.ts.map +1 -1
  703. package/dist/esm/components/toggle-icon-button.js +1 -1
  704. package/dist/esm/components/toolbar.js +1 -1
  705. package/dist/esm/components/tooltip.js +1 -1
  706. package/dist/esm/components/user-card.d.ts +1 -0
  707. package/dist/esm/components/user-card.d.ts.map +1 -1
  708. package/dist/esm/components/user-card.js +1 -1
  709. package/dist/esm/components/user-card.props.d.ts +5 -3
  710. package/dist/esm/components/user-card.props.d.ts.map +1 -1
  711. package/dist/esm/components/user-card.props.js +1 -1
  712. package/dist/esm/components/virtual-menu.js +1 -1
  713. package/dist/esm/helpers/index.js +1 -1
  714. package/dist/esm/helpers/parse-variant.d.ts +8 -0
  715. package/dist/esm/helpers/parse-variant.d.ts.map +1 -0
  716. package/dist/esm/helpers/parse-variant.js +2 -0
  717. package/dist/esm/helpers/parse-variant.js.map +7 -0
  718. package/dist/esm/helpers/warn-deprecated.d.ts +7 -0
  719. package/dist/esm/helpers/warn-deprecated.d.ts.map +1 -0
  720. package/dist/esm/helpers/warn-deprecated.js +2 -0
  721. package/dist/esm/helpers/warn-deprecated.js.map +7 -0
  722. package/dist/esm/index.js +1 -1
  723. package/dist/esm/props/color.prop.d.ts +8 -1
  724. package/dist/esm/props/color.prop.d.ts.map +1 -1
  725. package/dist/esm/props/color.prop.js +1 -1
  726. package/dist/esm/props/index.js +1 -1
  727. package/package.json +1 -1
  728. package/schemas/base-button.json +4 -3
  729. package/schemas/button.json +4 -3
  730. package/schemas/icon-button.json +4 -3
  731. package/schemas/index.json +20 -15
  732. package/schemas/toggle-button.json +4 -3
  733. package/schemas/toggle-icon-button.json +4 -3
  734. package/src/components/_internal/base-button.css +7 -7
  735. package/src/components/_internal/base-button.props.ts +4 -3
  736. package/src/components/_internal/base-card.css +2 -2
  737. package/src/components/_internal/base-checkbox.css +4 -4
  738. package/src/components/_internal/base-checkbox.props.ts +3 -2
  739. package/src/components/_internal/base-menu.css +33 -0
  740. package/src/components/_internal/base-menu.props.ts +1 -1
  741. package/src/components/_internal/base-radio.css +4 -4
  742. package/src/components/_internal/base-radio.props.ts +3 -2
  743. package/src/components/_internal/base-tab-list.css +42 -0
  744. package/src/components/_internal/base-tab-list.props.ts +4 -1
  745. package/src/components/_internal/pane-chrome.tsx +90 -0
  746. package/src/components/_internal/shell-sidebar.tsx +13 -2
  747. package/src/components/accordion.css +5 -5
  748. package/src/components/accordion.props.tsx +3 -2
  749. package/src/components/app-bar.tsx +5 -0
  750. package/src/components/avatar.css +7 -7
  751. package/src/components/avatar.props.tsx +5 -4
  752. package/src/components/badge.css +8 -8
  753. package/src/components/badge.props.tsx +5 -4
  754. package/src/components/button.css +1 -1
  755. package/src/components/button.tsx +37 -2
  756. package/src/components/callout.css +7 -7
  757. package/src/components/callout.props.tsx +5 -4
  758. package/src/components/callout.tsx +5 -0
  759. package/src/components/card.props.tsx +3 -2
  760. package/src/components/chatbar.css +4 -4
  761. package/src/components/chatbar.tsx +4 -2
  762. package/src/components/checkbox-cards.props.tsx +8 -2
  763. package/src/components/checkbox-cards.tsx +5 -1
  764. package/src/components/code.props.tsx +2 -2
  765. package/src/components/combobox.props.tsx +9 -6
  766. package/src/components/combobox.tsx +10 -2
  767. package/src/components/context-menu.tsx +4 -0
  768. package/src/components/dropdown-menu.tsx +4 -0
  769. package/src/components/heading.css +1 -1
  770. package/src/components/icon-button.tsx +4 -48
  771. package/src/components/kbd.css +24 -24
  772. package/src/components/kbd.props.tsx +4 -2
  773. package/src/components/navbar.css +4 -0
  774. package/src/components/navbar.props.tsx +1 -1
  775. package/src/components/popover.props.tsx +3 -0
  776. package/src/components/popover.tsx +5 -1
  777. package/src/components/radio-cards.props.tsx +8 -2
  778. package/src/components/radio-cards.tsx +5 -1
  779. package/src/components/radio-group.props.tsx +5 -2
  780. package/src/components/schemas/base-button.schema.ts +3 -3
  781. package/src/components/segmented-control.props.tsx +4 -5
  782. package/src/components/segmented-control.tsx +12 -0
  783. package/src/components/select.css +37 -4
  784. package/src/components/select.props.tsx +9 -9
  785. package/src/components/select.tsx +8 -2
  786. package/src/components/shell.css +6 -0
  787. package/src/components/shell.tsx +24 -3
  788. package/src/components/sidebar.css +185 -62
  789. package/src/components/sidebar.props.tsx +1 -0
  790. package/src/components/sidebar.tsx +19 -13
  791. package/src/components/tab-nav.tsx +6 -2
  792. package/src/components/tabs.tsx +6 -2
  793. package/src/components/text-area.css +18 -5
  794. package/src/components/text-area.props.tsx +6 -4
  795. package/src/components/text-area.tsx +5 -1
  796. package/src/components/text-field.css +36 -3
  797. package/src/components/text-field.props.tsx +6 -4
  798. package/src/components/text-field.tsx +5 -1
  799. package/src/components/theme.props.tsx +4 -4
  800. package/src/components/toggle-button.tsx +19 -4
  801. package/src/components/toggle-icon-button.tsx +6 -60
  802. package/src/components/user-card.props.tsx +8 -5
  803. package/src/components/user-card.tsx +5 -0
  804. package/src/helpers/parse-variant.ts +21 -0
  805. package/src/helpers/warn-deprecated.ts +13 -0
  806. package/src/props/color.prop.ts +13 -0
  807. package/src/styles/tokens/constants.css +46 -27
  808. package/src/styles/tokens/typography.css +2 -0
  809. package/styles.css +1086 -318
  810. package/tokens/base.css +1 -0
  811. package/tokens.css +34 -16
  812. package/dist/esm/chunk-3KSGRY6I.js +0 -2
  813. package/dist/esm/chunk-3KSGRY6I.js.map +0 -7
  814. package/dist/esm/chunk-3OELU3EO.js +0 -2
  815. package/dist/esm/chunk-3OELU3EO.js.map +0 -7
  816. package/dist/esm/chunk-4WVNMGI5.js +0 -2
  817. package/dist/esm/chunk-4WVNMGI5.js.map +0 -7
  818. package/dist/esm/chunk-54JFIP5S.js.map +0 -7
  819. package/dist/esm/chunk-5SNHUVDA.js +0 -2
  820. package/dist/esm/chunk-667BKCUG.js +0 -2
  821. package/dist/esm/chunk-667BKCUG.js.map +0 -7
  822. package/dist/esm/chunk-72AHPGPN.js +0 -2
  823. package/dist/esm/chunk-72AHPGPN.js.map +0 -7
  824. package/dist/esm/chunk-7E2BPXIP.js +0 -2
  825. package/dist/esm/chunk-7E2BPXIP.js.map +0 -7
  826. package/dist/esm/chunk-7FS2VDHO.js +0 -5
  827. package/dist/esm/chunk-7FS2VDHO.js.map +0 -7
  828. package/dist/esm/chunk-7RUVID3O.js +0 -2
  829. package/dist/esm/chunk-7RUVID3O.js.map +0 -7
  830. package/dist/esm/chunk-ALWNS44Q.js +0 -5
  831. package/dist/esm/chunk-ALWNS44Q.js.map +0 -7
  832. package/dist/esm/chunk-ARIV4AT5.js +0 -2
  833. package/dist/esm/chunk-ARIV4AT5.js.map +0 -7
  834. package/dist/esm/chunk-CET7V3FZ.js +0 -2
  835. package/dist/esm/chunk-CET7V3FZ.js.map +0 -7
  836. package/dist/esm/chunk-CFNESRYI.js +0 -2
  837. package/dist/esm/chunk-CFNESRYI.js.map +0 -7
  838. package/dist/esm/chunk-CKMMUHKE.js +0 -2
  839. package/dist/esm/chunk-CKMMUHKE.js.map +0 -7
  840. package/dist/esm/chunk-CLMOWP5T.js +0 -2
  841. package/dist/esm/chunk-CLMOWP5T.js.map +0 -7
  842. package/dist/esm/chunk-EBQZ3Z22.js +0 -2
  843. package/dist/esm/chunk-EBQZ3Z22.js.map +0 -7
  844. package/dist/esm/chunk-EDKQURDU.js +0 -2
  845. package/dist/esm/chunk-EDKQURDU.js.map +0 -7
  846. package/dist/esm/chunk-EPTYNVCU.js +0 -2
  847. package/dist/esm/chunk-EPTYNVCU.js.map +0 -7
  848. package/dist/esm/chunk-EPX34Y7S.js +0 -2
  849. package/dist/esm/chunk-EPX34Y7S.js.map +0 -7
  850. package/dist/esm/chunk-F6V7GBNQ.js +0 -2
  851. package/dist/esm/chunk-F6V7GBNQ.js.map +0 -7
  852. package/dist/esm/chunk-FC2DBBJ3.js +0 -2
  853. package/dist/esm/chunk-FG7XM7KJ.js +0 -2
  854. package/dist/esm/chunk-FG7XM7KJ.js.map +0 -7
  855. package/dist/esm/chunk-JFWMAYEH.js +0 -2
  856. package/dist/esm/chunk-JFWMAYEH.js.map +0 -7
  857. package/dist/esm/chunk-K3UAS7RW.js +0 -2
  858. package/dist/esm/chunk-K3UAS7RW.js.map +0 -7
  859. package/dist/esm/chunk-KZWNGWIM.js +0 -2
  860. package/dist/esm/chunk-KZWNGWIM.js.map +0 -7
  861. package/dist/esm/chunk-KZYFTDGO.js +0 -2
  862. package/dist/esm/chunk-KZYFTDGO.js.map +0 -7
  863. package/dist/esm/chunk-MJOXEUBT.js +0 -2
  864. package/dist/esm/chunk-MJOXEUBT.js.map +0 -7
  865. package/dist/esm/chunk-MN3XALXD.js +0 -2
  866. package/dist/esm/chunk-MN3XALXD.js.map +0 -7
  867. package/dist/esm/chunk-NJ7S43EK.js +0 -2
  868. package/dist/esm/chunk-NJ7S43EK.js.map +0 -7
  869. package/dist/esm/chunk-OGVKSYLL.js +0 -2
  870. package/dist/esm/chunk-OGVKSYLL.js.map +0 -7
  871. package/dist/esm/chunk-OO652UQW.js +0 -2
  872. package/dist/esm/chunk-OO652UQW.js.map +0 -7
  873. package/dist/esm/chunk-OWMA6GTG.js +0 -2
  874. package/dist/esm/chunk-OWMA6GTG.js.map +0 -7
  875. package/dist/esm/chunk-P2NZLSAD.js +0 -2
  876. package/dist/esm/chunk-P2NZLSAD.js.map +0 -7
  877. package/dist/esm/chunk-PHZNRO3D.js +0 -2
  878. package/dist/esm/chunk-PHZNRO3D.js.map +0 -7
  879. package/dist/esm/chunk-PLYOBXAF.js +0 -2
  880. package/dist/esm/chunk-PLYOBXAF.js.map +0 -7
  881. package/dist/esm/chunk-QFPHEY77.js +0 -2
  882. package/dist/esm/chunk-QFPHEY77.js.map +0 -7
  883. package/dist/esm/chunk-QQ62LO3X.js +0 -2
  884. package/dist/esm/chunk-QQ62LO3X.js.map +0 -7
  885. package/dist/esm/chunk-RDAMYQFF.js +0 -2
  886. package/dist/esm/chunk-RDAMYQFF.js.map +0 -7
  887. package/dist/esm/chunk-ROSWI2CL.js +0 -2
  888. package/dist/esm/chunk-ROSWI2CL.js.map +0 -7
  889. package/dist/esm/chunk-TIT3QMV7.js +0 -2
  890. package/dist/esm/chunk-TIT3QMV7.js.map +0 -7
  891. package/dist/esm/chunk-TVV6IHBN.js +0 -2
  892. package/dist/esm/chunk-TVV6IHBN.js.map +0 -7
  893. package/dist/esm/chunk-VDTB4JG3.js +0 -2
  894. package/dist/esm/chunk-VDTB4JG3.js.map +0 -7
  895. package/dist/esm/chunk-VLTXI4A7.js +0 -2
  896. package/dist/esm/chunk-VLTXI4A7.js.map +0 -7
  897. package/dist/esm/chunk-VNH7BJOA.js +0 -2
  898. package/dist/esm/chunk-VNH7BJOA.js.map +0 -7
  899. package/dist/esm/chunk-WBMCZ4Z3.js +0 -2
  900. package/dist/esm/chunk-WBMCZ4Z3.js.map +0 -7
  901. package/dist/esm/chunk-WGYUWEQV.js +0 -2
  902. package/dist/esm/chunk-WMGIFPI2.js +0 -2
  903. package/dist/esm/chunk-WMGIFPI2.js.map +0 -7
  904. package/dist/esm/chunk-XYVLQDGR.js +0 -2
  905. package/dist/esm/chunk-XYVLQDGR.js.map +0 -7
  906. package/dist/esm/chunk-Y3A6ZU24.js +0 -2
  907. package/dist/esm/chunk-Y3A6ZU24.js.map +0 -7
  908. /package/dist/esm/{chunk-XVYTOZES.js.map → chunk-34UMKY2L.js.map} +0 -0
  909. /package/dist/esm/{chunk-4XKK32M4.js.map → chunk-3HGHPAH4.js.map} +0 -0
  910. /package/dist/esm/{chunk-C34HCTGS.js.map → chunk-3Q3EOUGJ.js.map} +0 -0
  911. /package/dist/esm/{chunk-4ME6O27S.js.map → chunk-3UZHKW6I.js.map} +0 -0
  912. /package/dist/esm/{chunk-AF6XKU3W.js.map → chunk-3WCSLQNH.js.map} +0 -0
  913. /package/dist/esm/{chunk-DD6SJPOU.js.map → chunk-45AMHIBO.js.map} +0 -0
  914. /package/dist/esm/{chunk-CIYF56YS.js.map → chunk-4JNHUPIM.js.map} +0 -0
  915. /package/dist/esm/{chunk-OJU5GCDZ.js.map → chunk-5G4WWJ4Z.js.map} +0 -0
  916. /package/dist/esm/{chunk-AGNIFHOE.js.map → chunk-62CJL5G7.js.map} +0 -0
  917. /package/dist/esm/{chunk-Y5RCH23Z.js.map → chunk-6JP5PIOO.js.map} +0 -0
  918. /package/dist/esm/{chunk-ZO7TTWJI.js.map → chunk-77TGP2LO.js.map} +0 -0
  919. /package/dist/esm/{chunk-4LDVSTXI.js.map → chunk-BKES3M4Y.js.map} +0 -0
  920. /package/dist/esm/{chunk-VX6ARMWP.js.map → chunk-C7UXUTUF.js.map} +0 -0
  921. /package/dist/esm/{chunk-2I7QRVJ5.js.map → chunk-CIKDGYX3.js.map} +0 -0
  922. /package/dist/esm/{chunk-5XV4QEP5.js.map → chunk-CMEKH4I5.js.map} +0 -0
  923. /package/dist/esm/{chunk-JUJYMZ2F.js.map → chunk-DJA5MCJA.js.map} +0 -0
  924. /package/dist/esm/{chunk-4YFJWXL2.js.map → chunk-EUSMN3K7.js.map} +0 -0
  925. /package/dist/esm/{chunk-VICP2RNA.js.map → chunk-FISGGGPC.js.map} +0 -0
  926. /package/dist/esm/{chunk-KFR3CK24.js.map → chunk-GLKN32J3.js.map} +0 -0
  927. /package/dist/esm/{chunk-COWZAUZR.js.map → chunk-GONBMSRL.js.map} +0 -0
  928. /package/dist/esm/{chunk-GO7OHBHW.js.map → chunk-HFVD7W6R.js.map} +0 -0
  929. /package/dist/esm/{chunk-SAJY4H6J.js.map → chunk-HIBX2EXV.js.map} +0 -0
  930. /package/dist/esm/{chunk-VZSQATP6.js.map → chunk-HJLBVNQE.js.map} +0 -0
  931. /package/dist/esm/{chunk-JDGJSNWT.js.map → chunk-HNO4X33C.js.map} +0 -0
  932. /package/dist/esm/{chunk-E67CIG6A.js.map → chunk-IPHKKZYE.js.map} +0 -0
  933. /package/dist/esm/{chunk-7R73ISNJ.js.map → chunk-IQU6EELI.js.map} +0 -0
  934. /package/dist/esm/{chunk-PZ7OYATT.js.map → chunk-IV4YJRVR.js.map} +0 -0
  935. /package/dist/esm/{chunk-S5C5YRBS.js.map → chunk-IVBKTHDM.js.map} +0 -0
  936. /package/dist/esm/{chunk-RNTCHVFI.js.map → chunk-JXVUTFQN.js.map} +0 -0
  937. /package/dist/esm/{chunk-VR7ZAFYN.js.map → chunk-K7BWSYVP.js.map} +0 -0
  938. /package/dist/esm/{chunk-5WRCK4R7.js.map → chunk-KJTEZVOF.js.map} +0 -0
  939. /package/dist/esm/{chunk-OGXZHAQL.js.map → chunk-KXSMY4ZF.js.map} +0 -0
  940. /package/dist/esm/{chunk-MS5J4MF6.js.map → chunk-LJXP6K5Y.js.map} +0 -0
  941. /package/dist/esm/{chunk-CSKZZOI2.js.map → chunk-N6Q3L64W.js.map} +0 -0
  942. /package/dist/esm/{chunk-YBSRX63K.js.map → chunk-O2WPAUQN.js.map} +0 -0
  943. /package/dist/esm/{chunk-HJU4I34X.js.map → chunk-OB3MHLQL.js.map} +0 -0
  944. /package/dist/esm/{chunk-NIIEIZKQ.js.map → chunk-OW4KAIWF.js.map} +0 -0
  945. /package/dist/esm/{chunk-HF5WY5YE.js.map → chunk-PAEHH3WS.js.map} +0 -0
  946. /package/dist/esm/{chunk-FHOCUZDR.js.map → chunk-PXUQEA77.js.map} +0 -0
  947. /package/dist/esm/{chunk-7UHKEJ7Q.js.map → chunk-R2MQMCND.js.map} +0 -0
  948. /package/dist/esm/{chunk-64PFYID5.js.map → chunk-RAVFUI7W.js.map} +0 -0
  949. /package/dist/esm/{chunk-CDG5WH4U.js.map → chunk-RUOOCYK4.js.map} +0 -0
  950. /package/dist/esm/{chunk-36A5BYCN.js.map → chunk-RUPET4E7.js.map} +0 -0
  951. /package/dist/esm/{chunk-WGYUWEQV.js.map → chunk-RWN22S44.js.map} +0 -0
  952. /package/dist/esm/{chunk-7NVLCYCL.js.map → chunk-S3GZZXQ7.js.map} +0 -0
  953. /package/dist/esm/{chunk-N4GTDLRD.js.map → chunk-SGUTNJUO.js.map} +0 -0
  954. /package/dist/esm/{chunk-GL5QTWYI.js.map → chunk-SQ4BU4GH.js.map} +0 -0
  955. /package/dist/esm/{chunk-KOFEFBB3.js.map → chunk-T6Z4JUH6.js.map} +0 -0
  956. /package/dist/esm/{chunk-67MKPTZJ.js.map → chunk-TCEQ5VVE.js.map} +0 -0
  957. /package/dist/esm/{chunk-ESPWYN5C.js.map → chunk-TZ5MZQUB.js.map} +0 -0
  958. /package/dist/esm/{chunk-CRSHBENJ.js.map → chunk-UBWRIE4C.js.map} +0 -0
  959. /package/dist/esm/{chunk-ZOY43B55.js.map → chunk-UK3BFTI2.js.map} +0 -0
  960. /package/dist/esm/{chunk-KJUDZCYK.js.map → chunk-VBAXORVV.js.map} +0 -0
  961. /package/dist/esm/{chunk-OTXCKEWT.js.map → chunk-VJXHEDCE.js.map} +0 -0
  962. /package/dist/esm/{chunk-IHK3H2OM.js.map → chunk-VUKTURU4.js.map} +0 -0
  963. /package/dist/esm/{chunk-NQ3D3UXZ.js.map → chunk-VV67KTKA.js.map} +0 -0
  964. /package/dist/esm/{chunk-5SNHUVDA.js.map → chunk-YL62I5SI.js.map} +0 -0
  965. /package/dist/esm/{chunk-2OSGPH7E.js.map → chunk-YLLCCUC7.js.map} +0 -0
  966. /package/dist/esm/{chunk-OMGZG52I.js.map → chunk-ZE2GWHPY.js.map} +0 -0
  967. /package/dist/esm/{chunk-AGSSWWFI.js.map → chunk-ZK55O7TN.js.map} +0 -0
  968. /package/dist/esm/{chunk-YAQBIO2B.js.map → chunk-ZQVYY7UT.js.map} +0 -0
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/tab-nav.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nimport classNames from 'classnames';\nimport { NavigationMenu } from 'radix-ui';\n\nimport { tabNavRootPropDefs } from './tab-nav.props.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { getSubtree } from '../helpers/get-subtree.js';\nimport { marginPropDefs } from '../props/margin.props.js';\n\nimport type { tabNavLinkPropDefs } from './tab-nav.props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype TabNavRootElement = React.ElementRef<typeof NavigationMenu.Root>;\ntype TabNavRootElementProps = ComponentPropsWithout<'nav', RemovedProps>;\ntype TabNavOwnProps = GetPropDefTypes<typeof tabNavRootPropDefs>;\ninterface TabNavRootProps\n extends Omit<TabNavRootElementProps, 'defaultValue' | 'dir' | 'color'>,\n MarginProps,\n TabNavOwnProps {}\nconst TabNavRoot = React.forwardRef<TabNavRootElement, TabNavRootProps>((props, forwardedRef) => {\n const { children, className, color, panelBackground, ...rootProps } = extractProps(\n props,\n tabNavRootPropDefs,\n marginPropDefs,\n );\n return (\n <NavigationMenu.Root\n className=\"rt-TabNavRoot\"\n data-accent-color={color}\n {...rootProps}\n asChild={false}\n ref={forwardedRef}\n >\n <NavigationMenu.List\n className={classNames('rt-reset', 'rt-BaseTabList', 'rt-TabNavList', className)}\n data-panel-background={panelBackground}\n >\n {children}\n </NavigationMenu.List>\n </NavigationMenu.Root>\n );\n});\nTabNavRoot.displayName = 'TabNav.Root';\n\ntype TabNavLinkElement = React.ElementRef<typeof NavigationMenu.Link>;\ntype TabNavLinkOwnProps = GetPropDefTypes<typeof tabNavLinkPropDefs>;\ninterface TabNavLinkProps\n extends ComponentPropsWithout<typeof NavigationMenu.Link, RemovedProps | 'onSelect'>,\n TabNavLinkOwnProps {}\nconst TabNavLink = React.forwardRef<TabNavLinkElement, TabNavLinkProps>((props, forwardedRef) => {\n const { asChild, children, className, active, ...linkProps } = props;\n\n return (\n <NavigationMenu.Item className=\"rt-TabNavItem\">\n <NavigationMenu.Link\n {...linkProps}\n ref={forwardedRef}\n className={classNames('rt-reset', 'rt-BaseTabListTrigger', 'rt-TabNavLink', className)}\n onSelect={undefined}\n asChild={asChild}\n aria-current={active ? 'page' : undefined}\n data-active={active || undefined}\n >\n {getSubtree({ asChild, children }, (children) => (\n <>\n <span className=\"rt-BaseTabListTriggerInner rt-TabNavLinkInner\">{children}</span>\n <span className=\"rt-BaseTabListTriggerInnerHidden rt-TabNavLinkInnerHidden\">\n {children}\n </span>\n </>\n ))}\n </NavigationMenu.Link>\n </NavigationMenu.Item>\n );\n});\nTabNavLink.displayName = 'TabNav.Link';\n\nexport { TabNavRoot as Root, TabNavLink as Link };\nexport type { TabNavRootProps as RootProps, TabNavLinkProps as LinkProps };\n"],
5
- "mappings": "wMAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,SAAAC,IAAA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,kBAAAC,MAAsB,WAmB/B,IAAMC,EAAmB,aAA+C,CAACC,EAAOC,IAAiB,CAC/F,GAAM,CAAE,SAAAC,EAAU,UAAAC,EAAW,MAAAC,EAAO,gBAAAC,EAAiB,GAAGC,CAAU,EAAIC,EACpEP,EACAQ,EACAC,CACF,EACA,OACE,gBAACC,EAAe,KAAf,CACC,UAAU,gBACV,oBAAmBN,EAClB,GAAGE,EACJ,QAAS,GACT,IAAKL,GAEL,gBAACS,EAAe,KAAf,CACC,UAAWC,EAAW,WAAY,iBAAkB,gBAAiBR,CAAS,EAC9E,wBAAuBE,GAEtBH,CACH,CACF,CAEJ,CAAC,EACDH,EAAW,YAAc,cAOzB,IAAMa,EAAmB,aAA+C,CAACZ,EAAOC,IAAiB,CAC/F,GAAM,CAAE,QAAAY,EAAS,SAAAX,EAAU,UAAAC,EAAW,OAAAW,EAAQ,GAAGC,CAAU,EAAIf,EAE/D,OACE,gBAACU,EAAe,KAAf,CAAoB,UAAU,iBAC7B,gBAACA,EAAe,KAAf,CACE,GAAGK,EACJ,IAAKd,EACL,UAAWU,EAAW,WAAY,wBAAyB,gBAAiBR,CAAS,EACrF,SAAU,OACV,QAASU,EACT,eAAcC,EAAS,OAAS,OAChC,cAAaA,GAAU,QAEtBE,EAAW,CAAE,QAAAH,EAAS,SAAAX,CAAS,EAAIA,GAClC,gCACE,gBAAC,QAAK,UAAU,iDAAiDA,CAAS,EAC1E,gBAAC,QAAK,UAAU,6DACbA,CACH,CACF,CACD,CACH,CACF,CAEJ,CAAC,EACDU,EAAW,YAAc",
6
- "names": ["tab_nav_exports", "__export", "TabNavLink", "TabNavRoot", "React", "classNames", "NavigationMenu", "TabNavRoot", "props", "forwardedRef", "children", "className", "color", "panelBackground", "rootProps", "extractProps", "baseTabListPropDefs", "marginPropDefs", "NavigationMenu", "classNames", "TabNavLink", "asChild", "active", "linkProps", "getSubtree"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as p}from"./chunk-FD2TR343.js";import{a as t}from"./chunk-WYADYDPN.js";import{a as s}from"./chunk-ZE2KAVXW.js";import{b as r}from"./chunk-ZWZGUBL4.js";import{a as o}from"./chunk-NZJGC6ZW.js";import{d as e}from"./chunk-ZNK6AH2G.js";var a=["1","2","3","4","5","6","7","8","9"],i=["solid","soft","outline","ghost"],P={...o,size:{type:"enum",className:"rt-r-size",values:a,responsive:!0},variant:{type:"enum",className:"rt-variant",values:i,default:"soft"},...p,...e,...r,...s,...t};export{P as a};
2
- //# sourceMappingURL=chunk-KZWNGWIM.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/code.props.tsx"],
4
- "sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { accentColorPropDef } from '../props/color.prop.js';\nimport { emphasisPropDef } from '../props/emphasis.prop.js';\nimport { textWrapPropDef } from '../props/text-wrap.prop.js';\nimport { truncatePropDef } from '../props/truncate.prop.js';\nimport { weightPropDef } from '../props/weight.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4', '5', '6', '7', '8', '9'] as const;\nconst variants = ['solid', 'soft', 'outline', 'ghost'] as const;\n\nconst codePropDefs = {\n ...asChildPropDef,\n size: {\n type: 'enum',\n className: 'rt-r-size',\n values: sizes,\n responsive: true,\n },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'soft' },\n ...weightPropDef,\n ...accentColorPropDef,\n ...emphasisPropDef,\n ...truncatePropDef,\n ...textWrapPropDef,\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n};\n\nexport { codePropDefs };\n"],
5
- "mappings": "gPASA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,GAAG,EACpDC,EAAW,CAAC,QAAS,OAAQ,UAAW,OAAO,EAE/CC,EAAe,CACnB,GAAGC,EACH,KAAM,CACJ,KAAM,OACN,UAAW,YACX,OAAQH,EACR,WAAY,EACd,EACA,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,MAAO,EACpF,GAAGG,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,EACH,GAAGC,CACL",
6
- "names": ["sizes", "variants", "codePropDefs", "asChildPropDef", "weightPropDef", "accentColorPropDef", "emphasisPropDef", "truncatePropDef", "textWrapPropDef"]
7
- }
@@ -1,2 +0,0 @@
1
- import{z as e}from"zod";var t=e.object({as:e.string().optional().describe("HTML element type to render as"),asChild:e.boolean().optional().describe("Merge props with child element instead of rendering wrapper"),size:e.union([e.enum(["1","2","3","4"]),e.object({initial:e.enum(["1","2","3","4"]).optional(),sm:e.enum(["1","2","3","4"]).optional(),md:e.enum(["1","2","3","4"]).optional(),lg:e.enum(["1","2","3","4"]).optional(),xl:e.enum(["1","2","3","4"]).optional()})]).default("2").describe("Button size for responsive design and interface density"),variant:e.enum(["classic","solid","soft","surface","outline","ghost","override"]).default("solid").describe("Visual variant that determines the button's appearance and context"),color:e.enum(["tomato","red","ruby","crimson","pink","plum","purple","violet","iris","indigo","blue","cyan","teal","jade","green","grass","brown","orange","sky","mint","lime","yellow","amber","gold","bronze","gray"]).optional().describe("Accent color for the button"),radius:e.enum(["none","small","medium","large","full"]).optional().describe("Border radius for the button"),loading:e.boolean().optional().default(!1).describe("Loading state that shows a spinner and disables interaction"),fullWidth:e.boolean().optional().default(!1).describe("Full width mode that expands the button to fill its container"),material:e.enum(["solid","translucent"]).optional().describe("Material type for visual rendering and depth effects"),panelBackground:e.enum(["solid","translucent"]).optional().describe("Panel background type (deprecated - use material instead)"),flush:e.boolean().optional().default(!1).describe("Flush mode that removes visual padding for seamless text integration"),disabled:e.boolean().optional().default(!1).describe("Disabled state"),type:e.enum(["button","submit","reset"]).optional().describe("Type attribute for form buttons"),className:e.string().optional().describe("Additional CSS class name"),style:e.record(e.string(),e.union([e.string(),e.number()])).optional().describe("Inline styles"),onClick:e.function().optional().describe("Click handler"),onFocus:e.function().optional().describe("Focus handler"),onBlur:e.function().optional().describe("Blur handler"),onMouseEnter:e.function().optional().describe("Mouse enter handler"),onMouseLeave:e.function().optional().describe("Mouse leave handler"),onKeyDown:e.function().optional().describe("Key down handler"),onKeyUp:e.function().optional().describe("Key up handler"),onSubmit:e.function().optional().describe("Form submission handler"),tabIndex:e.number().optional().describe("Tab index for keyboard navigation"),"aria-label":e.string().optional().describe("ARIA label for accessibility"),"aria-labelledby":e.string().optional().describe("ARIA labelled by reference"),"aria-describedby":e.string().optional().describe("ARIA described by reference"),"aria-expanded":e.boolean().optional().describe("ARIA expanded state"),"aria-pressed":e.boolean().optional().describe("ARIA pressed state"),"aria-current":e.union([e.boolean(),e.enum(["page","step","location","date","time"])]).optional().describe("ARIA current state"),"aria-controls":e.string().optional().describe("ARIA controls reference"),"aria-owns":e.string().optional().describe("ARIA owns reference"),"data-*":e.record(e.string(),e.string()).optional().describe("Data attributes"),id:e.string().optional().describe("ID attribute"),title:e.string().optional().describe("Title attribute for tooltip"),role:e.string().optional().describe("Role attribute"),children:e.any().optional().describe("Children elements")}).strict();function i(n){return n}export{t as a,i as b};
2
- //# sourceMappingURL=chunk-KZYFTDGO.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/schemas/base-button.schema.ts"],
4
- "sourcesContent": ["import { z } from 'zod';\n\n/**\n * BaseButton Zod schema - Single source of truth for all button component props\n *\n * This schema defines the core button functionality used by Button, IconButton,\n * ToggleButton, and ToggleIconButton components. It ensures consistency across\n * the design system and provides machine-readable validation.\n *\n * @example\n * ```tsx\n * // Basic validation\n * const props = BaseButtonSchema.parse({ size: '2', variant: 'solid' });\n *\n * // With responsive props\n * const responsiveProps = BaseButtonSchema.parse({\n * size: { initial: '1', sm: '2', md: '3' },\n * variant: 'solid'\n * });\n * ```\n */\nexport const BaseButtonSchema = z\n .object({\n /**\n * Polymorphic rendering - render as different HTML elements\n * @default 'button'\n */\n as: z.string().optional().describe('HTML element type to render as'),\n\n /**\n * Use asChild to merge props with child element\n * @default false\n */\n asChild: z\n .boolean()\n .optional()\n .describe('Merge props with child element instead of rendering wrapper'),\n\n /**\n * Button size for responsive design and interface density\n * Supports responsive objects: { initial: '1', sm: '2', md: '3', lg: '4' }\n * @default '2'\n */\n size: z\n .union([\n z.enum(['1', '2', '3', '4']),\n z.object({\n initial: z.enum(['1', '2', '3', '4']).optional(),\n sm: z.enum(['1', '2', '3', '4']).optional(),\n md: z.enum(['1', '2', '3', '4']).optional(),\n lg: z.enum(['1', '2', '3', '4']).optional(),\n xl: z.enum(['1', '2', '3', '4']).optional(),\n }),\n ])\n .default('2')\n .describe('Button size for responsive design and interface density'),\n\n /**\n * Visual variant that determines the button's appearance and context\n * @default 'solid'\n */\n variant: z\n .enum(['classic', 'solid', 'soft', 'surface', 'outline', 'ghost', 'override'])\n .default('solid')\n .describe(\"Visual variant that determines the button's appearance and context\"),\n\n /**\n * Accent color for the button\n */\n color: z\n .enum([\n 'tomato',\n 'red',\n 'ruby',\n 'crimson',\n 'pink',\n 'plum',\n 'purple',\n 'violet',\n 'iris',\n 'indigo',\n 'blue',\n 'cyan',\n 'teal',\n 'jade',\n 'green',\n 'grass',\n 'brown',\n 'orange',\n 'sky',\n 'mint',\n 'lime',\n 'yellow',\n 'amber',\n 'gold',\n 'bronze',\n 'gray',\n ])\n .optional()\n .describe('Accent color for the button'),\n\n /**\n * Border radius for the button\n */\n radius: z\n .enum(['none', 'small', 'medium', 'large', 'full'])\n .optional()\n .describe('Border radius for the button'),\n\n /**\n * Loading state that shows a spinner and disables interaction\n * Automatically sets disabled=true and provides accessibility announcements\n * @default false\n */\n loading: z\n .boolean()\n .optional()\n .default(false)\n .describe('Loading state that shows a spinner and disables interaction'),\n\n /**\n * Full width mode that expands the button to fill its container\n * Useful for mobile layouts and form submissions\n * @default false\n */\n fullWidth: z\n .boolean()\n .optional()\n .default(false)\n .describe('Full width mode that expands the button to fill its container'),\n\n /**\n * Material type for visual rendering and depth effects\n * Controls how the button renders its visual elements\n */\n material: z\n .enum(['solid', 'translucent'])\n .optional()\n .describe('Material type for visual rendering and depth effects'),\n\n /**\n * Panel background type (deprecated)\n * @deprecated Use `material` prop instead. This prop will be removed in a future version.\n */\n panelBackground: z\n .enum(['solid', 'translucent'])\n .optional()\n .describe('Panel background type (deprecated - use material instead)'),\n\n /**\n * Flush mode that removes visual padding for seamless text integration\n * Only effective with ghost variant\n * @default false\n */\n flush: z\n .boolean()\n .optional()\n .default(false)\n .describe('Flush mode that removes visual padding for seamless text integration'),\n\n /**\n * Disabled state\n * @default false\n */\n disabled: z.boolean().optional().default(false).describe('Disabled state'),\n\n /**\n * Type attribute for form buttons\n * @default 'button'\n */\n type: z\n .enum(['button', 'submit', 'reset'])\n .optional()\n .describe('Type attribute for form buttons'),\n\n /**\n * Additional CSS class name\n */\n className: z.string().optional().describe('Additional CSS class name'),\n\n /**\n * Inline styles\n */\n style: z\n .record(z.string(), z.union([z.string(), z.number()]))\n .optional()\n .describe('Inline styles'),\n\n /**\n * Click handler\n */\n onClick: z.function().optional().describe('Click handler'),\n\n /**\n * Focus handler\n */\n onFocus: z.function().optional().describe('Focus handler'),\n\n /**\n * Blur handler\n */\n onBlur: z.function().optional().describe('Blur handler'),\n\n /**\n * Mouse enter handler\n */\n onMouseEnter: z.function().optional().describe('Mouse enter handler'),\n\n /**\n * Mouse leave handler\n */\n onMouseLeave: z.function().optional().describe('Mouse leave handler'),\n\n /**\n * Key down handler\n */\n onKeyDown: z.function().optional().describe('Key down handler'),\n\n /**\n * Key up handler\n */\n onKeyUp: z.function().optional().describe('Key up handler'),\n\n /**\n * Form submission handler\n */\n onSubmit: z.function().optional().describe('Form submission handler'),\n\n /**\n * Tab index for keyboard navigation\n */\n tabIndex: z.number().optional().describe('Tab index for keyboard navigation'),\n\n /**\n * ARIA label for accessibility\n */\n 'aria-label': z.string().optional().describe('ARIA label for accessibility'),\n\n /**\n * ARIA labelled by reference\n */\n 'aria-labelledby': z.string().optional().describe('ARIA labelled by reference'),\n\n /**\n * ARIA described by reference\n */\n 'aria-describedby': z.string().optional().describe('ARIA described by reference'),\n\n /**\n * ARIA expanded state\n */\n 'aria-expanded': z.boolean().optional().describe('ARIA expanded state'),\n\n /**\n * ARIA pressed state\n */\n 'aria-pressed': z.boolean().optional().describe('ARIA pressed state'),\n\n /**\n * ARIA current state\n */\n 'aria-current': z\n .union([z.boolean(), z.enum(['page', 'step', 'location', 'date', 'time'])])\n .optional()\n .describe('ARIA current state'),\n\n /**\n * ARIA controls reference\n */\n 'aria-controls': z.string().optional().describe('ARIA controls reference'),\n\n /**\n * ARIA owns reference\n */\n 'aria-owns': z.string().optional().describe('ARIA owns reference'),\n\n /**\n * Data attributes\n */\n 'data-*': z.record(z.string(), z.string()).optional().describe('Data attributes'),\n\n /**\n * ID attribute\n */\n id: z.string().optional().describe('ID attribute'),\n\n /**\n * Title attribute for tooltip\n */\n title: z.string().optional().describe('Title attribute for tooltip'),\n\n /**\n * Role attribute\n */\n role: z.string().optional().describe('Role attribute'),\n\n /**\n * Children elements\n */\n children: z.any().optional().describe('Children elements'),\n })\n .strict();\n\n/**\n * Type derived from BaseButton Zod schema\n * This ensures type safety and consistency with the schema\n */\nexport type BaseButtonProps = z.infer<typeof BaseButtonSchema>;\n\n/**\n * Development-only helper to validate and normalize props\n * This function should only be used in development mode\n *\n * @param props - Props to validate and normalize\n * @returns Validated and normalized props\n *\n * @example\n * ```tsx\n * // In development, this will validate props and show helpful errors\n * const validatedProps = parseBaseButtonProps({ size: 'invalid', variant: 'solid' });\n * // Throws: \"Invalid enum value. Expected '1' | '2' | '3' | '4', received 'invalid'\"\n * ```\n */\nexport function parseBaseButtonProps(props: unknown): BaseButtonProps {\n if (process.env.NODE_ENV === 'development') {\n return BaseButtonSchema.parse(props);\n }\n return props as BaseButtonProps;\n}\n"],
5
- "mappings": "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",
6
- "names": ["z", "BaseButtonSchema", "parseBaseButtonProps", "props"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as we}from"./chunk-2EQWBT2S.js";import{a as xe,b as He}from"./chunk-ADXZNG4F.js";import{a as ze}from"./chunk-ROSWI2CL.js";import{a as Le}from"./chunk-YAQBIO2B.js";import{a as Te}from"./chunk-AGNIFHOE.js";import{a as Re,b as ne}from"./chunk-HCNO7PX6.js";import{a as re,b as se,c as ie}from"./chunk-GMHA5CFH.js";import{e as oe,f as he,h as Pe,i as Q,j as ve,k as le,l as ae,n as ge,o as Y}from"./chunk-A2XVR7GL.js";import{a as be,b as Se}from"./chunk-BZZXXZ3O.js";import{a as me}from"./chunk-HWQ3NTJP.js";import{a as _,b as Ee,c as Ce,d as ye,g as Me}from"./chunk-3J6AUDID.js";import{a as fe}from"./chunk-3XSB7YIM.js";import{a as Ve}from"./chunk-OS3FCYZY.js";var Ke={};Ve(Ke,{Bottom:()=>Le,Content:()=>Fe,Header:()=>Oe,Inspector:()=>Te,Left:()=>Ae,Panel:()=>pe,Rail:()=>De,Root:()=>Ie,Sidebar:()=>ze,Trigger:()=>Be,useResponsivePresentation:()=>we,useShell:()=>He,useSidebarMode:()=>xe});import*as e from"react";import $ from"classnames";import{useComposedRefs as ue}from"radix-ui/internal";var ce=0;function Ne(r){ce=Math.max(0,ce+r);let s=document.documentElement;ce>0?s.setAttribute("data-rt-shell-lock",""):s.removeAttribute("data-rt-shell-lock")}var de="data-rt-shell-inert",Ue=30;function K(r,s){return s===null||s===r||s===r.body||s===r.documentElement}function ke(r,s,i){for(let d of r.querySelectorAll("[data-shell-trigger][aria-controls]"))if(!(d.getAttribute("aria-controls")!==s||d.closest("[inert]"))&&!(i&&!i.some(h=>h.contains(d))))return d;return null}var Ie=e.forwardRef(({className:r,children:s,height:i="full",style:d,onKeyDown:h,onFocus:I,...H},w)=>{let[u]=e.useState(he),m=e.useCallback(t=>Pe(u,t),[u]);e.useSyncExternalStore(m,()=>u.version,()=>0);let p=e.useRef(null),b=ue(w,p),[S,E]=e.useState(()=>new Set),T=e.useCallback(t=>{E(n=>n.has(t)?n:new Set(n).add(t))},[]),C=e.useCallback(t=>{E(n=>{if(!n.has(t))return n;let l=new Set(n);return l.delete(t),l})},[]),P=e.useMemo(()=>({registerInset:T,unregisterInset:C}),[T,C]),f=e.useCallback(()=>{for(let t of u.entries.values())t.overlayLive&&t.setValue("closed","dismiss")},[u]),g=e.useCallback(()=>[...u.entries.values()].filter(t=>t.overlayLive&&t.el).map(t=>({name:t.name,id:t.id,el:t.el})),[u]),v=[...u.entries.values()].filter(t=>t.overlayLive&&t.el).length,B=i!=="full"&&i!=="auto",y=e.useCallback(()=>{let t=p.current;if(!t)return;let n=g().map(l=>l.el);for(let l of t.children){if(!(l instanceof HTMLElement)||l.classList.contains("rt-ShellScrim"))continue;let a=n.some(M=>l===M||l.contains(M));n.length===0||a?l.hasAttribute(de)&&(l.removeAttribute(de),l.inert=!1):l.inert||(l.setAttribute(de,""),l.inert=!0)}},[g]),N=e.useRef(null),O=e.useRef([]),q=e.useRef(null),A=e.useRef(!1),z=e.useRef(0),D=e.useCallback(()=>{z.current&&cancelAnimationFrame(z.current),z.current=0},[]),j=e.useCallback((t,n)=>{D();let l=0,a=()=>{if(z.current=0,!!t.isConnected){if(n(t.ownerDocument.activeElement)){t.focus({preventScroll:!0});return}l+=1,l<Ue&&(z.current=requestAnimationFrame(a))}};z.current=requestAnimationFrame(a)},[D]);e.useEffect(()=>()=>{D(),A.current&&(A.current=!1,Ne(-1))},[D]),e.useEffect(()=>{let t=p.current;if(!t)return;let n=t.ownerDocument,l=g(),a=l.map(o=>o.el),M=!B&&l.length>0;M!==A.current&&(A.current=M,Ne(M?1:-1));let U=O.current;O.current=l;let k=U.filter(o=>{if(a.includes(o.el))return!1;let c=u.entries.get(o.name);return!o.el.isConnected||!c||c.el!==o.el||c.value==="closed"}),F=o=>o!==null&&k.some(c=>c.el.contains(o));if(U.length===0&&l.length>0){let o=n.activeElement,c=o instanceof HTMLElement&&!K(n,o)&&!a.some(R=>R.contains(o))?o:null;if(c&&!t.contains(c)){let R=q.current;R&&R.isConnected&&!a.some(J=>J.contains(R))&&(c=R)}N.current=c}if(y(),l.length===0){let o=N.current;if(N.current=null,k.length===0)return;let R=(L=>L!==null&&L.isConnected&&!L.closest("[inert]")&&!F(L))(o)?o:null;for(let L of k)R??(R=ke(n,L.id));if(!R)return;let J=L=>K(n,L)||F(L);J(n.activeElement)?R.focus({preventScroll:!0}):j(R,J);return}if(k.length>0){let o=n.activeElement;if(K(n,o)||F(o)){let c=null;for(let R of k)c??(c=ke(n,R.id,a));(c??a[a.length-1]).focus({preventScroll:!0})}}let W=a.filter(o=>!U.some(c=>c.el===o)),te=n.activeElement;W.length>0&&!a.some(o=>o.contains(te))&&(W[0].focus({preventScroll:!0}),j(W[0],o=>K(n,o)||o instanceof Element&&o.closest("[inert]")!==null))}),e.useEffect(()=>{let t=p.current;if(!t||v===0||typeof MutationObserver>"u")return;let n=new MutationObserver(y);return n.observe(t,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["inert"]}),()=>n.disconnect()},[v,y]);let G=t=>{h?.(t),!(t.key!=="Escape"||t.defaultPrevented||v===0)&&(f(),t.stopPropagation())};e.useEffect(()=>{let t=p.current;if(!t||v===0)return;let n=t.ownerDocument,l=a=>{a.key!=="Escape"||a.defaultPrevented||!K(n,a.target)||f()};return n.addEventListener("keydown",l),()=>n.removeEventListener("keydown",l)},[v,f]);let Z=t=>{I?.(t),t.target instanceof HTMLElement&&p.current?.contains(t.target)&&(q.current=t.target)},x=u.entries.get("rail"),X=x!==void 0&&x.value!==void 0&&x.value!=="closed"?S.has("rail")?`calc(${x.size}px + 2 * var(--shell-inset-gap))`:`${x.size}px`:void 0,V=i==="full"?{}:i==="auto"?{height:"auto"}:typeof i=="number"?{height:`${i}px`}:{height:i};return e.createElement(ve.Provider,{value:u},e.createElement(ge.Provider,{value:P},e.createElement("div",{...H,ref:b,className:$("rt-ShellRoot",r),"data-height":i==="auto"?"auto":void 0,"data-has-inset":S.size>0||void 0,"data-overlay-live":v>0||void 0,onKeyDown:G,onFocus:Z,style:{...V,...X?{"--shell-rail-offset":X}:{},...d}},s,e.createElement("div",{className:"rt-ShellScrim","aria-hidden":!0,onClick:f}))))});Ie.displayName="Shell.Root";var Oe=e.forwardRef(({className:r,height:s=64,style:i,...d},h)=>e.createElement("header",{...d,ref:h,className:$("rt-ShellHeader",r),style:{...i,"--shell-header-height":`${s}px`}}));Oe.displayName="Shell.Header";var Ae=e.forwardRef(({children:r},s)=>(e.useEffect(()=>{},[]),e.createElement(e.Fragment,null,r)));Ae.displayName="Shell.Left";var We={controlled:"open",default:"defaultOpen"},De=e.forwardRef((r,s)=>{let{className:i,presentation:d,expandedSize:h=64,collapsible:I,onExpand:H,onCollapse:w,children:u,style:m,open:p,defaultOpen:b,onOpenChange:S,inset:E,id:T,...C}=r,{table:P,attributes:f}=ie(d,"fixed"),g=re({name:"rail",label:"Rail",propNames:We,id:T,controlled:_(p),defaultValue:_(b),presentationTable:P,builtIn:Ee,onChange:(B,y)=>S?.(B!=="closed",{reason:y}),onExpand:H,onCollapse:w,size:h});Y("rail",E);let v=ue(s,g.setElement);return e.createElement("div",{...C,id:g.id,ref:v,className:$("rt-ShellPane","rt-ShellRail",i),...se(g,f),"data-inset":E||void 0,tabIndex:g.overlaying?-1:C.tabIndex,style:{...m,"--rail-size":`${h}px`}},e.createElement("div",{className:"rt-ShellRailContent"},u))});De.displayName="Shell.Rail";var _e={controlled:"open",default:"defaultOpen"},pe=e.forwardRef((r,s)=>{let{className:i,presentation:d,defaultOpen:h,open:I,onOpenChange:H,size:w,defaultSize:u,expandedSize:m=288,minSize:p=100,maxSize:b=800,resizable:S=!1,collapsible:E=!0,onExpand:T,onCollapse:C,onResize:P,onResizeStart:f,onResizeEnd:g,snapPoints:v,snapTolerance:B,collapseThreshold:y,paneId:N,persistence:O,children:q,style:A,onSizeChange:z,sizeUpdate:D,sizeUpdateMs:j=50,inset:G,id:Z,...x}=r,ee=le("Shell.Panel"),X=ae(ee,"rail"),V=ie(d,"fixed"),t=d===void 0,n=t?X?.presentationTable??oe:V.table,l=t?{"data-presentation-follows":""}:V.attributes,a=re({name:"panel",label:"Panel",propNames:_e,id:Z,controlled:_(I),defaultValue:_(h),presentationTable:n,builtIn:Ce,onChange:(o,c)=>H?.(o!=="closed",{reason:c}),onExpand:T,onCollapse:C,size:m});Y("panel",G),e.useEffect(()=>{(v!==void 0||y!==void 0||N!==void 0||O!==void 0)&&void 0},[v,y,N,O]);let M=e.useRef(null),U=ue(s,a.setElement,M),k=be({name:"panel",elementId:a.id,elementRef:M,cssVarName:"--panel-size",orientation:"vertical",edge:"end",growth:ye,expandedSize:m,minSize:p,maxSize:b,resizable:S,collapsible:E,size:w,defaultSize:u,onSizeChange:z,sizeUpdate:D,sizeUpdateMs:j,onResize:P,onResizeStart:f,onResizeEnd:g,snapPoints:v,snapTolerance:B,collapseThreshold:y,paneId:N,persistence:O,overlaying:a.overlaying,overlayingNow:()=>(t?ee.entries.get("rail")?.presentationTable??oe:V.table)[fe()]==="overlay",requestCollapse:()=>a.setValue("closed","toggle"),requestToggle:()=>a.toggle("toggle")}),{handles:F,content:W}=Se(q,ne),te=S&&a.shown!==!1&&!a.overlaying?e.createElement(me.Provider,{value:k},F.length>0?F:e.createElement(Re,null)):null;return e.createElement("div",{...Me(x),id:a.id,ref:U,className:$("rt-ShellPane","rt-ShellPanel",i),...se(a,l),"data-inset":G||void 0,tabIndex:a.overlaying?-1:x.tabIndex,style:{...A,"--panel-expanded-size":`${m}px`}},e.createElement("div",{className:"rt-ShellPanelContent"},W),te)});pe.displayName="Shell.Panel";pe.Handle=ne;var Fe=e.forwardRef(({className:r,inset:s,...i},d)=>(Y("content",s),e.createElement("main",{...i,ref:d,className:$("rt-ShellContent",r),"data-inset":s||void 0})));Fe.displayName="Shell.Content";var Be=e.forwardRef(({target:r,action:s="toggle",peekOnHover:i,onClick:d,onMouseEnter:h,onMouseLeave:I,children:H,...w},u)=>{let m=le("Shell.Trigger");e.useEffect(()=>{r==="left"&&void 0,i&&void 0},[r,i]);let p=r==="left"?"rail":r,b=ae(m,p),S=b?.value===void 0?void 0:b.value!=="closed",E=P=>{if(d?.(P),P.defaultPrevented)return;let f=m.entries.get(p);f&&(m.peek===p&&Q(m,null),s==="toggle"?f.toggle("toggle"):s==="expand"?f.setValue("open","toggle"):f.setValue("closed","toggle"))},T=P=>{if(h?.(P),!i)return;let f=m.entries.get(p);f&&f.value==="closed"&&f.presentation!=="overlay"&&Q(m,p)},C=P=>{I?.(P),i&&m.peek===p&&Q(m,null)};return e.createElement("button",{type:"button","aria-controls":b?.id,"aria-expanded":S,...w,ref:u,onClick:E,onMouseEnter:T,onMouseLeave:C,"data-shell-trigger":r,"data-shell-action":s},H)});Be.displayName="Shell.Trigger";export{Ie as a,Oe as b,Ae as c,De as d,pe as e,Fe as f,Be as g,Ke as h};
2
- //# sourceMappingURL=chunk-MJOXEUBT.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/shell.tsx"],
4
- "sourcesContent": ["/**\n * Shell: the app frame.\n *\n * Since 0.8.0 the Shell is built on kookie-ui-v2's model, behind v1's API:\n *\n * - The Root is a CSS grid and renders its children as given, in JSX order.\n * Each pane claims its own grid area, so the Root never scans or reorders\n * children, any child renders, and a pane mounted after the Root works.\n * - State lives on each pane: `auto` (untouched), `open` or `closed`, and the\n * Sidebar's `thin`. An untouched pane follows the window, resolved by the\n * stylesheet, so first paint needs no script and no open-state callback\n * fires on mount or on a resize.\n * - A pane is one element at every width. `overlay` is a posture of that\n * element, not a Sheet swapped in: crossing a breakpoint keeps its scroll\n * position, its focus and its children's state.\n * - The Root owns what an overlay needs: one scrim, `inert` on everything\n * else, focus moved in and returned, Escape, and a scroll lock.\n * - Nothing links panes to each other. A Rail closing no longer closes the\n * Panel; an app that wants that writes it in `onOpenChange`.\n */\n'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { useComposedRefs } from 'radix-ui/internal';\nimport { PaneResizeContext } from './_internal/shell-resize.js';\nimport { PaneHandle, PanelHandle } from './_internal/shell-handles.js';\nimport { Sidebar } from './_internal/shell-sidebar.js';\nimport { Bottom } from './_internal/shell-bottom.js';\nimport { Inspector } from './_internal/shell-inspector.js';\nimport { usePane, paneAttributes, usePresentationTable } from './_internal/shell-pane.js';\nimport { splitHandles, useResizablePane } from './_internal/shell-resizable.js';\nimport {\n FIXED_TABLE,\n ShellInsetContext,\n ShellStoreContext,\n createShellStore,\n setShellPeek,\n subscribeShellStore,\n useInsetRegistration,\n usePaneEntry,\n useShellStore,\n warnOnce,\n type InsetPaneId,\n} from './_internal/shell-store.js';\nimport { navigationRest, detailRest, toPaneValue, startAnchoredGrowth, withoutRemovedPaneProps } from './_internal/shell-rest.js';\nimport { useShell, useSidebarMode } from './shell.context.js';\nimport { useResponsivePresentation } from './shell.hooks.js';\nimport { readBreakpoint } from '../hooks/use-breakpoint.js';\nimport type { Breakpoint, CSSPropertiesWithVars, PaneBaseProps, PaneMode, PaneName, PaneTarget, ResponsivePresentation, SidebarMode } from './shell.types.js';\n\n/* \u2500\u2500 Root \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\u2500 */\n\nexport interface ShellRootProps extends React.ComponentPropsWithoutRef<'div'> {\n children: React.ReactNode;\n height?: 'full' | 'auto' | string | number;\n}\n\n/**\n * Every Shell with a live overlay holds the page still, counted across Shells,\n * through an attribute the stylesheet reads. Saving and restoring the\n * document's inline `overflow` would fight any other scroll lock on the page.\n */\nlet pageLockHolders = 0;\nfunction updatePageLock(delta: 1 | -1) {\n pageLockHolders = Math.max(0, pageLockHolders + delta);\n const doc = document.documentElement;\n if (pageLockHolders > 0) doc.setAttribute('data-rt-shell-lock', '');\n else doc.removeAttribute('data-rt-shell-lock');\n}\n\n/** Marks a child the Root made inert, so closing removes only what the Root added. */\nconst INERT_MARK = 'data-rt-shell-inert';\n\n/** How many frames a focus rescue watches after an overlay opens or closes. */\nconst RESCUE_FRAMES = 30;\n\n/** Focus that is nowhere useful: the document, or nothing at all. */\nfunction isNowhere(doc: Document, el: Element | EventTarget | null): boolean {\n return el === null || el === doc || el === doc.body || el === doc.documentElement;\n}\n\n/** A Trigger that drives the pane with this id and can take focus, optionally only inside `within`. */\nfunction triggerFor(doc: Document, id: string, within?: HTMLElement[]): HTMLElement | null {\n for (const el of doc.querySelectorAll<HTMLElement>('[data-shell-trigger][aria-controls]')) {\n if (el.getAttribute('aria-controls') !== id || el.closest('[inert]')) continue;\n if (within && !within.some((pane) => pane.contains(el))) continue;\n return el;\n }\n return null;\n}\n\ntype LivePane = { name: PaneName; id: string; el: HTMLElement };\n\nconst Root = React.forwardRef<HTMLDivElement, ShellRootProps>(({ className, children, height = 'full', style, onKeyDown, onFocus, ...props }, ref) => {\n const [store] = React.useState(createShellStore);\n const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);\n // Subscribed for the re-render, not for a value: a pane opening or closing\n // must bring the Root back so containment and the scrim follow it.\n React.useSyncExternalStore(\n subscribe,\n () => store.version,\n () => 0,\n );\n\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const composedRef = useComposedRefs(ref, rootRef);\n\n // Inset: the Root paints the backdrop while any pane is inset.\n const [insetPanes, setInsetPanes] = React.useState<ReadonlySet<InsetPaneId>>(() => new Set());\n const registerInset = React.useCallback((id: InsetPaneId) => {\n setInsetPanes((prev) => (prev.has(id) ? prev : new Set(prev).add(id)));\n }, []);\n const unregisterInset = React.useCallback((id: InsetPaneId) => {\n setInsetPanes((prev) => {\n if (!prev.has(id)) return prev;\n const next = new Set(prev);\n next.delete(id);\n return next;\n });\n }, []);\n const insetContext = React.useMemo(() => ({ registerInset, unregisterInset }), [registerInset, unregisterInset]);\n\n const closeOverlays = React.useCallback(() => {\n for (const entry of store.entries.values()) {\n if (entry.overlayLive) entry.setValue('closed', 'dismiss');\n }\n }, [store]);\n\n const livePanes = React.useCallback(\n (): LivePane[] => [...store.entries.values()].filter((entry) => entry.overlayLive && entry.el).map((entry) => ({ name: entry.name, id: entry.id, el: entry.el as HTMLElement })),\n [store],\n );\n const liveCount = [...store.entries.values()].filter((entry) => entry.overlayLive && entry.el).length;\n\n // A Shell given a height of its own sits inside a page, and its overlays\n // cover only its box: it holds no page lock. `full` is the page, and\n // `auto` grows with its content, so its overlays are placed on the window.\n const contained = height !== 'full' && height !== 'auto';\n\n /*\n * Containment is the Root's, not the pane's. Only the Root can see every live\n * overlay and every child at once. A per-pane effect, given two overlays,\n * inerts the other live overlay and restores values the other effect wrote,\n * which can leave the whole frame inert for good.\n *\n * Exempt are the scrim and each root child that CONTAINS a live overlay, so\n * a pane wrapped in a plain element is not inerted with its wrapper. A child\n * the Root inerts is marked, and closing clears only marked children, so\n * `inert` the app sets on a child is the app's before, during and after.\n */\n const contain = React.useCallback(() => {\n const rootEl = rootRef.current;\n if (!rootEl) return;\n const liveEls = livePanes().map((pane) => pane.el);\n for (const child of rootEl.children) {\n if (!(child instanceof HTMLElement) || child.classList.contains('rt-ShellScrim')) continue;\n const holdsLive = liveEls.some((el) => child === el || child.contains(el));\n if (liveEls.length === 0 || holdsLive) {\n if (child.hasAttribute(INERT_MARK)) {\n child.removeAttribute(INERT_MARK);\n child.inert = false;\n }\n } else if (!child.inert) {\n child.setAttribute(INERT_MARK, '');\n child.inert = true;\n }\n }\n }, [livePanes]);\n\n const returnFocusTo = React.useRef<HTMLElement | null>(null);\n const lastLive = React.useRef<LivePane[]>([]);\n const lastFocusInRoot = React.useRef<HTMLElement | null>(null);\n const holdsLock = React.useRef(false);\n\n /*\n * Focus can be taken away after the commit that moved it: a menu that\n * opened or closed a pane restores focus to its own trigger when it\n * finishes closing, which may be inert or hidden by then. For a few frames\n * after an overlay opens or closes, focus that ends up nowhere useful is\n * put back where it belongs.\n */\n const rescueFrame = React.useRef(0);\n const cancelRescue = React.useCallback(() => {\n if (rescueFrame.current) cancelAnimationFrame(rescueFrame.current);\n rescueFrame.current = 0;\n }, []);\n const rescueFocus = React.useCallback(\n (target: HTMLElement, lost: (active: Element | null) => boolean) => {\n cancelRescue();\n let frames = 0;\n const tick = () => {\n rescueFrame.current = 0;\n if (!target.isConnected) return;\n if (lost(target.ownerDocument.activeElement)) {\n target.focus({ preventScroll: true });\n return;\n }\n frames += 1;\n if (frames < RESCUE_FRAMES) rescueFrame.current = requestAnimationFrame(tick);\n };\n rescueFrame.current = requestAnimationFrame(tick);\n },\n [cancelRescue],\n );\n\n React.useEffect(\n () => () => {\n cancelRescue();\n if (holdsLock.current) {\n holdsLock.current = false;\n updatePageLock(-1);\n }\n },\n [cancelRescue],\n );\n\n // No dependency array, on purpose: a pane opening or closing is a render\n // of this component, and so is a child appearing through the Root.\n React.useEffect(() => {\n const rootEl = rootRef.current;\n if (!rootEl) return;\n const doc = rootEl.ownerDocument;\n const live = livePanes();\n const liveEls = live.map((pane) => pane.el);\n\n const wantsLock = !contained && live.length > 0;\n if (wantsLock !== holdsLock.current) {\n holdsLock.current = wantsLock;\n updatePageLock(wantsLock ? 1 : -1);\n }\n\n const previous = lastLive.current;\n lastLive.current = live;\n // A pane that left the live set because it closed, as opposed to one\n // that is still open but stopped being an overlay at a breakpoint.\n const closed = previous.filter((pane) => {\n if (liveEls.includes(pane.el)) return false;\n const entry = store.entries.get(pane.name);\n return !pane.el.isConnected || !entry || entry.el !== pane.el || entry.value === 'closed';\n });\n const inClosed = (active: Element | null) => active !== null && closed.some((pane) => pane.el.contains(active));\n\n // The return target is taken on the opening edge, before inerting: inerting\n // the subtree that holds the trigger blurs it. Focus already inside the\n // overlay (a pane that became one at a breakpoint) is no place to return\n // to, and an opener in a portal (a menu item) goes away with its menu, so\n // the last place focus held inside the frame stands in for it.\n if (previous.length === 0 && live.length > 0) {\n const active = doc.activeElement;\n let target = active instanceof HTMLElement && !isNowhere(doc, active) && !liveEls.some((el) => el.contains(active)) ? active : null;\n if (target && !rootEl.contains(target)) {\n const inRoot = lastFocusInRoot.current;\n if (inRoot && inRoot.isConnected && !liveEls.some((el) => el.contains(inRoot))) target = inRoot;\n }\n returnFocusTo.current = target;\n }\n\n contain();\n\n if (live.length === 0) {\n const before = returnFocusTo.current;\n returnFocusTo.current = null;\n // Every overlay that left only stopped being one: focus stays where it is.\n if (closed.length === 0) return;\n const usable = (el: HTMLElement | null) => el !== null && el.isConnected && !el.closest('[inert]') && !inClosed(el);\n let target = usable(before) ? before : null;\n for (const pane of closed) target ??= triggerFor(doc, pane.id);\n if (!target) return;\n const lost = (active: Element | null) => isNowhere(doc, active) || inClosed(active);\n if (lost(doc.activeElement)) target.focus({ preventScroll: true });\n else rescueFocus(target, lost);\n return;\n }\n\n // Some overlays closed while others stay: focus left in a closed one goes\n // to the Trigger that opened it, if a live pane holds it, or to the pane\n // on top.\n if (closed.length > 0) {\n const active = doc.activeElement;\n if (isNowhere(doc, active) || inClosed(active)) {\n let target: HTMLElement | null = null;\n for (const pane of closed) target ??= triggerFor(doc, pane.id, liveEls);\n (target ?? liveEls[liveEls.length - 1]).focus({ preventScroll: true });\n }\n }\n\n // Focus moves in on the opening edge and nowhere else, and only when it\n // is not already somewhere the user put it inside the live set.\n const opened = liveEls.filter((el) => !previous.some((pane) => pane.el === el));\n const active = doc.activeElement;\n if (opened.length > 0 && !liveEls.some((el) => el.contains(active))) {\n opened[0].focus({ preventScroll: true });\n rescueFocus(opened[0], (now) => isNowhere(doc, now) || (now instanceof Element && now.closest('[inert]') !== null));\n }\n });\n\n // A child that appears through its own state while an overlay is live does\n // not render the Root, so the Root watches its children while one is.\n React.useEffect(() => {\n const rootEl = rootRef.current;\n if (!rootEl || liveCount === 0 || typeof MutationObserver === 'undefined') return;\n const observer = new MutationObserver(contain);\n observer.observe(rootEl, { childList: true, subtree: true, attributes: true, attributeFilter: ['inert'] });\n return () => observer.disconnect();\n }, [liveCount, contain]);\n\n /*\n * Escape closes the overlays. It is handled as a React event on the Root, so\n * a component inside a pane that answers Escape in its own onKeyDown runs\n * first, and its preventDefault() or stopPropagation() keeps the pane open.\n * When the Root closes something it stops the event there, so a React\n * Escape handler above the Shell does not act on it too. A layer that\n * listens on the document in the capture phase (Radix dialogs, menus and\n * popovers) answers first and calls preventDefault() when it closes, so an\n * enclosing Kookie Dialog closes before a Shell inside it is asked.\n */\n const handleKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n onKeyDown?.(event);\n if (event.key !== 'Escape' || event.defaultPrevented || liveCount === 0) return;\n closeOverlays();\n event.stopPropagation();\n };\n\n // With focus on the document itself (a pane closed under it, or a menu that\n // closed and took focus with it), the Root never sees the key. While an\n // overlay is live the document answers that one case.\n React.useEffect(() => {\n const rootEl = rootRef.current;\n if (!rootEl || liveCount === 0) return;\n const doc = rootEl.ownerDocument;\n const onDocumentKeyDown = (event: KeyboardEvent) => {\n if (event.key !== 'Escape' || event.defaultPrevented || !isNowhere(doc, event.target)) return;\n closeOverlays();\n };\n doc.addEventListener('keydown', onDocumentKeyDown);\n return () => doc.removeEventListener('keydown', onDocumentKeyDown);\n }, [liveCount, closeOverlays]);\n\n const handleFocus = (event: React.FocusEvent<HTMLDivElement>) => {\n onFocus?.(event);\n if (event.target instanceof HTMLElement && rootRef.current?.contains(event.target)) lastFocusInRoot.current = event.target;\n };\n\n // A floating Panel sits beside the Rail when the Rail is showing, and\n // beside its card when the Rail is inset.\n const rail = store.entries.get('rail');\n const railShown = rail !== undefined && rail.value !== undefined && rail.value !== 'closed';\n const railOffset = railShown ? (insetPanes.has('rail') ? `calc(${rail.size}px + 2 * var(--shell-inset-gap))` : `${rail.size}px`) : undefined;\n\n // `full` writes no inline height: the stylesheet states it as 100vh with a\n // 100dvh override where supported, and an inline value would beat both.\n const heightStyle: React.CSSProperties = height === 'full' ? {} : height === 'auto' ? { height: 'auto' } : typeof height === 'number' ? { height: `${height}px` } : { height };\n\n return (\n <ShellStoreContext.Provider value={store}>\n <ShellInsetContext.Provider value={insetContext}>\n {/* The Root is not a widget: it hears Escape bubbling up from the panes,\n after their own handlers, to close the overlays. */}\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions */}\n <div\n {...props}\n ref={composedRef}\n className={classNames('rt-ShellRoot', className)}\n data-height={height === 'auto' ? 'auto' : undefined}\n data-has-inset={insetPanes.size > 0 || undefined}\n data-overlay-live={liveCount > 0 || undefined}\n onKeyDown={handleKeyDown}\n onFocus={handleFocus}\n style={{ ...heightStyle, ...(railOffset ? ({ '--shell-rail-offset': railOffset } as CSSPropertiesWithVars) : {}), ...style }}\n >\n {children}\n {/* Root-owned and always mounted. The stylesheet shows it while an\n overlay is live; containment takes the rest of the frame out of\n the accessibility tree, so the scrim itself is hidden from it. */}\n <div className=\"rt-ShellScrim\" aria-hidden onClick={closeOverlays} />\n </div>\n </ShellInsetContext.Provider>\n </ShellStoreContext.Provider>\n );\n});\nRoot.displayName = 'Shell.Root';\n\n/* \u2500\u2500 Header \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\ninterface ShellHeaderProps extends React.ComponentPropsWithoutRef<'header'> {\n height?: number;\n}\n\nconst Header = React.forwardRef<HTMLElement, ShellHeaderProps>(({ className, height = 64, style, ...props }, ref) => (\n <header\n {...props}\n ref={ref}\n className={classNames('rt-ShellHeader', className)}\n style={\n {\n ...style,\n '--shell-header-height': `${height}px`,\n } as CSSPropertiesWithVars\n }\n />\n));\nHeader.displayName = 'Shell.Header';\n\n/* \u2500\u2500 Left (deprecated) \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\ninterface LeftProps extends React.ComponentPropsWithoutRef<'div'> {\n presentation?: ResponsivePresentation;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean, meta: { reason: 'init' | 'toggle' | 'panel' | 'responsive' | 'dismiss' }) => void;\n collapsible?: boolean;\n onExpand?: () => void;\n onCollapse?: () => void;\n inset?: boolean;\n}\n\n/**\n * @deprecated The Root no longer wraps the Rail and Panel in a Left\n * container: each is its own pane. `Shell.Left` renders its children and\n * ignores its own props. Removed in 1.0.\n */\nconst Left = React.forwardRef<HTMLDivElement, LeftProps>(({ children }, _ref) => {\n React.useEffect(() => {\n warnOnce('Shell.Left is deprecated and is removed in 1.0. Render Shell.Rail and Shell.Panel directly in Shell.Root.');\n }, []);\n return <>{children}</>;\n});\nLeft.displayName = 'Shell.Left';\n\n/* \u2500\u2500 Rail \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\u2500 */\n\ntype RailOpenChangeMeta = { reason: 'init' | 'toggle' | 'responsive' | 'panel' | 'dismiss' };\n\ntype RailControlledProps = { open: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: RailOpenChangeMeta) => void; defaultOpen?: never };\ntype RailUncontrolledProps = { defaultOpen?: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: RailOpenChangeMeta) => void; open?: never };\n\ntype RailProps = React.ComponentPropsWithoutRef<'div'> & {\n presentation?: ResponsivePresentation;\n expandedSize?: number;\n collapsible?: boolean;\n /** @deprecated Use `onOpenChange`. */\n onExpand?: () => void;\n /** @deprecated Use `onOpenChange`. */\n onCollapse?: () => void;\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n} & (RailControlledProps | RailUncontrolledProps);\n\nconst RAIL_PROP_NAMES = { controlled: 'open', default: 'defaultOpen' };\n\nconst Rail = React.forwardRef<HTMLDivElement, RailProps>((props, ref) => {\n const { className, presentation, expandedSize = 64, collapsible: _collapsible, onExpand, onCollapse, children, style, open, defaultOpen, onOpenChange, inset, id, ...domProps } = props;\n const { table, attributes } = usePresentationTable(presentation, 'fixed');\n const pane = usePane({\n name: 'rail',\n label: 'Rail',\n propNames: RAIL_PROP_NAMES,\n id,\n controlled: toPaneValue(open),\n defaultValue: toPaneValue(defaultOpen),\n presentationTable: table,\n builtIn: navigationRest,\n onChange: (value, reason) => onOpenChange?.(value !== 'closed', { reason }),\n onExpand,\n onCollapse,\n size: expandedSize,\n });\n useInsetRegistration('rail', inset);\n const composedRef = useComposedRefs(ref, pane.setElement);\n\n return (\n <div\n {...domProps}\n id={pane.id}\n ref={composedRef}\n className={classNames('rt-ShellPane', 'rt-ShellRail', className)}\n {...paneAttributes(pane, attributes)}\n data-inset={inset || undefined}\n tabIndex={pane.overlaying ? -1 : domProps.tabIndex}\n style={{ ...style, '--rail-size': `${expandedSize}px` } as CSSPropertiesWithVars}\n >\n <div className=\"rt-ShellRailContent\">{children}</div>\n </div>\n );\n});\nRail.displayName = 'Shell.Rail';\n\n/* \u2500\u2500 Panel \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\ntype HandleComponent = React.ForwardRefExoticComponent<React.ComponentPropsWithoutRef<'div'> & React.RefAttributes<HTMLDivElement>>;\n\ntype PanelOpenChangeMeta = { reason: 'toggle' | 'left' | 'init' | 'responsive' | 'dismiss' };\ntype PanelControlledProps = { open: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: PanelOpenChangeMeta) => void; defaultOpen?: never };\ntype PanelUncontrolledProps = { defaultOpen?: boolean | Partial<Record<Breakpoint, boolean>>; onOpenChange?: (open: boolean, meta: PanelOpenChangeMeta) => void; open?: never };\n\ntype PanelSizeControlledProps = { size: number | string; defaultSize?: never };\ntype PanelSizeUncontrolledProps = { defaultSize?: number | string; size?: never };\n\ntype PanelSizeChangeMeta = { reason: 'init' | 'resize' | 'controlled' };\ntype PanelPublicProps = PaneBaseProps &\n (PanelControlledProps | PanelUncontrolledProps) &\n (PanelSizeControlledProps | PanelSizeUncontrolledProps) & {\n onSizeChange?: (size: number, meta: PanelSizeChangeMeta) => void;\n sizeUpdate?: 'throttle' | 'debounce';\n sizeUpdateMs?: number;\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n };\ntype PanelComponent = React.ForwardRefExoticComponent<PanelPublicProps & React.RefAttributes<HTMLDivElement>> & {\n Handle: HandleComponent;\n};\n\nconst PANEL_PROP_NAMES = { controlled: 'open', default: 'defaultOpen' };\n\n/**\n * A Panel with a `presentation` of its own uses it. One without follows the\n * Rail rendered before it, which is how 0.7 placed a Panel; the stylesheet\n * reads the Rail's attributes for the first paint and the registry carries\n * the Rail's table for the JS mirror.\n */\nconst Panel = React.forwardRef<HTMLDivElement, PanelPublicProps>((props, ref) => {\n const {\n className,\n presentation,\n defaultOpen,\n open,\n onOpenChange,\n size,\n defaultSize,\n expandedSize = 288,\n minSize = 100,\n maxSize = 800,\n resizable = false,\n collapsible = true,\n onExpand,\n onCollapse,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n children,\n style,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs = 50,\n inset,\n id,\n ...domProps\n } = props;\n const store = useShellStore('Shell.Panel');\n const rail = usePaneEntry(store, 'rail');\n const own = usePresentationTable(presentation, 'fixed');\n const followsRail = presentation === undefined;\n const presentationTable = followsRail ? (rail?.presentationTable ?? FIXED_TABLE) : own.table;\n const presentationAttributes = followsRail ? { 'data-presentation-follows': '' } : own.attributes;\n\n const pane = usePane({\n name: 'panel',\n label: 'Panel',\n propNames: PANEL_PROP_NAMES,\n id,\n controlled: toPaneValue(open),\n defaultValue: toPaneValue(defaultOpen),\n presentationTable,\n builtIn: detailRest,\n onChange: (value, reason) => onOpenChange?.(value !== 'closed', { reason }),\n onExpand,\n onCollapse,\n size: expandedSize,\n });\n useInsetRegistration('panel', inset);\n\n React.useEffect(() => {\n if (snapPoints !== undefined || collapseThreshold !== undefined || paneId !== undefined || persistence !== undefined) {\n warnOnce('Shell.Panel: `snapPoints`, `collapseThreshold`, `paneId` and `persistence` are deprecated and are removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`.');\n }\n }, [snapPoints, collapseThreshold, paneId, persistence]);\n\n const elementRef = React.useRef<HTMLElement | null>(null);\n const composedRef = useComposedRefs(ref, pane.setElement, elementRef);\n\n const resize = useResizablePane({\n name: 'panel',\n elementId: pane.id,\n elementRef,\n cssVarName: '--panel-size',\n orientation: 'vertical',\n edge: 'end',\n growth: startAnchoredGrowth,\n expandedSize,\n minSize,\n maxSize,\n resizable,\n collapsible,\n size,\n defaultSize,\n onSizeChange,\n sizeUpdate,\n sizeUpdateMs,\n onResize,\n onResizeStart,\n onResizeEnd,\n snapPoints,\n snapTolerance,\n collapseThreshold,\n paneId,\n persistence,\n overlaying: pane.overlaying,\n // Asked when the effect runs: the Rail registers its table after this\n // Panel first renders, so the render's answer can be out of date.\n overlayingNow: () => {\n const table = followsRail ? (store.entries.get('rail')?.presentationTable ?? FIXED_TABLE) : own.table;\n return table[readBreakpoint()] === 'overlay';\n },\n requestCollapse: () => pane.setValue('closed', 'toggle'),\n requestToggle: () => pane.toggle('toggle'),\n });\n\n const { handles, content } = splitHandles(children, PanelHandle);\n const handle = resizable && pane.shown !== false && !pane.overlaying ? <PaneResizeContext.Provider value={resize}>{handles.length > 0 ? handles : <PaneHandle />}</PaneResizeContext.Provider> : null;\n\n return (\n <div\n {...withoutRemovedPaneProps(domProps)}\n id={pane.id}\n ref={composedRef}\n className={classNames('rt-ShellPane', 'rt-ShellPanel', className)}\n {...paneAttributes(pane, presentationAttributes)}\n data-inset={inset || undefined}\n tabIndex={pane.overlaying ? -1 : domProps.tabIndex}\n style={\n {\n ...style,\n '--panel-expanded-size': `${expandedSize}px`,\n } as CSSPropertiesWithVars\n }\n >\n <div className=\"rt-ShellPanelContent\">{content}</div>\n {handle}\n </div>\n );\n}) as PanelComponent;\nPanel.displayName = 'Shell.Panel';\nPanel.Handle = PanelHandle;\n\n/* \u2500\u2500 Content \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\ninterface ShellContentProps extends React.ComponentPropsWithoutRef<'main'> {\n /** When true, adds margin and triggers the gray backdrop on the Shell. */\n inset?: boolean;\n}\n\nconst Content = React.forwardRef<HTMLElement, ShellContentProps>(({ className, inset, ...props }, ref) => {\n useInsetRegistration('content', inset);\n return <main {...props} ref={ref} className={classNames('rt-ShellContent', className)} data-inset={inset || undefined} />;\n});\nContent.displayName = 'Shell.Content';\n\n/* \u2500\u2500 Trigger \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\ntype TriggerAction = 'toggle' | 'expand' | 'collapse';\n\ninterface TriggerProps extends React.ComponentPropsWithoutRef<'button'> {\n target: PaneTarget;\n action?: TriggerAction;\n /**\n * Whether to show a preview of the target pane on hover while it is closed\n * and not an overlay. Defaults to false.\n *\n * @deprecated Removed in 1.0. A preview reachable only by mouse hover has no\n * keyboard or touch equivalent; open the pane instead.\n */\n peekOnHover?: boolean;\n}\n\n/**\n * A button that drives a pane by name, through the registry. It sets\n * `aria-controls` and `aria-expanded` (left off while an untouched pane\n * cannot know its state yet), renders `type=\"button\"`, and runs the\n * consumer's `onClick` first: calling `preventDefault()` there cancels it.\n */\nconst Trigger = React.forwardRef<HTMLButtonElement, TriggerProps>(({ target, action = 'toggle', peekOnHover, onClick, onMouseEnter, onMouseLeave, children, ...props }, ref) => {\n const store = useShellStore('Shell.Trigger');\n React.useEffect(() => {\n if (target === 'left') warnOnce('Shell.Trigger target=\"left\" is deprecated and is removed in 1.0. Use target=\"rail\".');\n if (peekOnHover) warnOnce('Shell.Trigger: `peekOnHover` is deprecated and is removed in 1.0.');\n }, [target, peekOnHover]);\n const name: PaneName = target === 'left' ? 'rail' : target;\n // Subscribes to its own pane only.\n const entry = usePaneEntry(store, name);\n const shown = entry?.value === undefined ? undefined : entry.value !== 'closed';\n\n const handleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n onClick?.(event);\n if (event.defaultPrevented) return;\n const current = store.entries.get(name);\n if (!current) return;\n if (store.peek === name) setShellPeek(store, null);\n if (action === 'toggle') current.toggle('toggle');\n else if (action === 'expand') current.setValue('open', 'toggle');\n else current.setValue('closed', 'toggle');\n };\n\n const handleMouseEnter = (event: React.MouseEvent<HTMLButtonElement>) => {\n onMouseEnter?.(event);\n if (!peekOnHover) return;\n const current = store.entries.get(name);\n if (current && current.value === 'closed' && current.presentation !== 'overlay') setShellPeek(store, name);\n };\n\n const handleMouseLeave = (event: React.MouseEvent<HTMLButtonElement>) => {\n onMouseLeave?.(event);\n if (peekOnHover && store.peek === name) setShellPeek(store, null);\n };\n\n return (\n <button\n // A button's default type is `submit`. Stated before the spread, so a consumer's own wins.\n type=\"button\"\n aria-controls={entry?.id}\n aria-expanded={shown}\n {...props}\n ref={ref}\n onClick={handleClick}\n onMouseEnter={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n data-shell-trigger={target}\n data-shell-action={action}\n >\n {children}\n </button>\n );\n});\nTrigger.displayName = 'Shell.Trigger';\n\n// Exports\nexport {\n Root,\n Header,\n Left,\n Rail,\n Panel,\n Sidebar,\n Content,\n Inspector,\n Bottom,\n Trigger,\n useShell,\n useSidebarMode,\n useResponsivePresentation,\n type PaneMode,\n type SidebarMode,\n type ResponsivePresentation,\n type PaneTarget,\n type TriggerAction,\n};\n"],
5
- "mappings": "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",
6
- "names": ["shell_exports", "__export", "Bottom", "Content", "Header", "Inspector", "Left", "Panel", "Rail", "Root", "Sidebar", "Trigger", "useResponsivePresentation", "useShell", "useSidebarMode", "React", "classNames", "useComposedRefs", "pageLockHolders", "updatePageLock", "delta", "doc", "INERT_MARK", "RESCUE_FRAMES", "isNowhere", "el", "triggerFor", "id", "within", "pane", "Root", "className", "children", "height", "style", "onKeyDown", "onFocus", "props", "ref", "store", "createShellStore", "subscribe", "listener", "subscribeShellStore", "rootRef", "composedRef", "useComposedRefs", "insetPanes", "setInsetPanes", "registerInset", "prev", "unregisterInset", "next", "insetContext", "closeOverlays", "entry", "livePanes", "liveCount", "contained", "contain", "rootEl", "liveEls", "child", "holdsLive", "returnFocusTo", "lastLive", "lastFocusInRoot", "holdsLock", "rescueFrame", "cancelRescue", "rescueFocus", "target", "lost", "frames", "tick", "live", "wantsLock", "previous", "closed", "inClosed", "active", "inRoot", "before", "opened", "now", "observer", "handleKeyDown", "event", "onDocumentKeyDown", "handleFocus", "rail", "railOffset", "heightStyle", "ShellStoreContext", "ShellInsetContext", "classNames", "Header", "Left", "_ref", "RAIL_PROP_NAMES", "Rail", "presentation", "expandedSize", "_collapsible", "onExpand", "onCollapse", "open", "defaultOpen", "onOpenChange", "inset", "domProps", "table", "attributes", "usePresentationTable", "usePane", "toPaneValue", "navigationRest", "value", "reason", "useInsetRegistration", "paneAttributes", "PANEL_PROP_NAMES", "Panel", "size", "defaultSize", "minSize", "maxSize", "resizable", "collapsible", "onResize", "onResizeStart", "onResizeEnd", "snapPoints", "snapTolerance", "collapseThreshold", "paneId", "persistence", "onSizeChange", "sizeUpdate", "sizeUpdateMs", "useShellStore", "usePaneEntry", "own", "followsRail", "presentationTable", "FIXED_TABLE", "presentationAttributes", "detailRest", "elementRef", "resize", "useResizablePane", "startAnchoredGrowth", "readBreakpoint", "handles", "content", "splitHandles", "PanelHandle", "handle", "PaneResizeContext", "PaneHandle", "withoutRemovedPaneProps", "Content", "Trigger", "action", "peekOnHover", "onClick", "onMouseEnter", "onMouseLeave", "name", "shown", "handleClick", "current", "setShellPeek", "handleMouseEnter", "handleMouseLeave"]
7
- }
@@ -1,2 +0,0 @@
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-ZNK6AH2G.js";var o=["1","2","3"],a=["classic","surface","soft","ghost","outline"],n=["solid","translucent"],p=["solid","translucent"],b={size:{type:"enum",className:"rt-r-size",values:o,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:a,default:"surface"},error:{type:"boolean",default:!1},errorMessage:{type:"string",default:void 0},isInvalid:{type:"boolean",default:!1},required:{type:"boolean",default:!1},"aria-describedby":{type:"string",default:void 0},"aria-labelledby":{type:"string",default:void 0},...r,...s,panelBackground:{type:"enum",values:n,default:void 0},material:{type:"enum",values:p,default:void 0}},i=["left","right"],c={side:{type:"enum",values:i},...r,gap:t.gap,px:e.px,pl:e.pl,pr:e.pr};export{b as a,c as b};
2
- //# sourceMappingURL=chunk-MN3XALXD.js.map
@@ -1,7 +0,0 @@
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'] as const;\nconst variants = ['classic', 'surface', 'soft', 'ghost', 'outline'] as const;\nconst panelBackgrounds = ['solid', 'translucent'] 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: 'surface' },\n // Error and validation props\n error: { type: 'boolean', default: false },\n errorMessage: { type: 'string', default: undefined },\n isInvalid: { type: 'boolean', default: false },\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 panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\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 isInvalid: PropDef<boolean>;\n required: PropDef<boolean>;\n 'aria-describedby': PropDef<string | undefined>;\n 'aria-labelledby': PropDef<string | undefined>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | 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,GAAG,EACtBC,EAAW,CAAC,UAAW,UAAW,OAAQ,QAAS,SAAS,EAC5DC,EAAmB,CAAC,QAAS,aAAa,EAC1CC,EAAY,CAAC,QAAS,aAAa,EAEnCC,EAAwB,CAC5B,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQJ,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EAEvF,MAAO,CAAE,KAAM,UAAW,QAAS,EAAM,EACzC,aAAc,CAAE,KAAM,SAAU,QAAS,MAAU,EACnD,UAAW,CAAE,KAAM,UAAW,QAAS,EAAM,EAC7C,SAAU,CAAE,KAAM,UAAW,QAAS,EAAM,EAE5C,mBAAoB,CAAE,KAAM,SAAU,QAAS,MAAU,EACzD,kBAAmB,CAAE,KAAM,SAAU,QAAS,MAAU,EACxD,GAAGI,EACH,GAAGC,EACH,gBAAiB,CAAE,KAAM,OAAQ,OAAQJ,EAAkB,QAAS,MAAU,EAC9E,SAAU,CAAE,KAAM,OAAQ,OAAQC,EAAW,QAAS,MAAU,CAClE,EAaMI,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", "panelBackgrounds", "materials", "textFieldRootPropDefs", "colorPropDef", "radiusPropDef", "sides", "textFieldSlotPropDefs", "flexPropDefs", "paddingPropDefs"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as s}from"./chunk-VK7RNXUO.js";import{a as n}from"./chunk-EPX34Y7S.js";import*as e from"react";import{Toggle as f}from"radix-ui";var m=e.forwardRef(({pressed:o,onPressedChange:r,defaultPressed:a,children:t,...g},p)=>{let l=e.useCallback(()=>typeof t=="string"?t:e.isValidElement(t)&&typeof t.props?.children=="string"?t.props.children:"Toggle button",[t]),{handlePressedChange:u}=s({pressed:o,onPressedChange:r,getAccessibleName:l,componentName:"ToggleButton"});return e.createElement(f.Root,{pressed:o,onPressedChange:u,defaultPressed:a,asChild:!0},e.createElement(n,{...g,ref:p},t))});m.displayName="ToggleButton";export{m as a};
2
- //# sourceMappingURL=chunk-NJ7S43EK.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 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';\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 */\ninterface ToggleButtonProps extends React.ComponentPropsWithoutRef<typeof Button> {\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 /**\n * Extract accessible name from button content for announcements.\n * This ensures screen readers announce meaningful state changes.\n */\n const getAccessibleName = React.useCallback(() => {\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 }, [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: '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
- "mappings": "gFAAA,UAAYA,MAAW,QACvB,OAAS,UAAAC,MAAc,WAgEvB,IAAMC,EAAqB,aAAmD,CAAC,CAAE,QAAAC,EAAS,gBAAAC,EAAiB,eAAAC,EAAgB,SAAAC,EAAU,GAAGC,CAAY,EAAGC,IAAiB,CAKtK,IAAMC,EAA0B,cAAY,IACtC,OAAOH,GAAa,SAAiBA,EAC/B,iBAAeA,CAAQ,GAAK,OAAQA,EAAS,OAAe,UAAa,SACzEA,EAAS,MAAc,SAE1B,gBACN,CAACA,CAAQ,CAAC,EAGP,CAAE,oBAAAI,CAAoB,EAAIC,EAAe,CAC7C,QAAAR,EACA,gBAAAC,EACA,kBAAAK,EACA,cAAe,cACjB,CAAC,EAID,OACE,gBAACG,EAAO,KAAP,CAAY,QAAST,EAAS,gBAAiBO,EAAqB,eAAgBL,EAAgB,QAAO,IAC1G,gBAACQ,EAAA,CAAQ,GAAGN,EAAa,IAAKC,GAC3BF,CACH,CACF,CAEJ,CAAC,EACDJ,EAAa,YAAc",
6
- "names": ["React", "Toggle", "ToggleButton", "pressed", "onPressedChange", "defaultPressed", "children", "buttonProps", "forwardedRef", "getAccessibleName", "handlePressedChange", "useToggleState", "Toggle", "Button"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as e}from"./chunk-NZJGC6ZW.js";import{d as s}from"./chunk-ZNK6AH2G.js";var a=["1","2","3"],t=["soft","surface","outline","classic"],n=["solid","translucent"],o=["solid","translucent"],u={...e,size:{type:"enum",className:"rt-r-size",values:a,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:t,default:"soft"},...s,material:{type:"enum",values:o,default:void 0},panelBackground:{type:"enum",values:n,default:void 0}};export{u as a};
2
- //# sourceMappingURL=chunk-OGVKSYLL.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/callout.props.tsx"],
4
- "sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { accentColorPropDef } from '../props/color.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3'] as const;\nconst variants = ['soft', 'surface', 'outline', 'classic'] as const;\nconst panelBackgrounds = ['solid', 'translucent'] as const;\nconst materials = ['solid', 'translucent'] as const;\n\nconst calloutRootPropDefs = {\n ...asChildPropDef,\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'soft' },\n ...accentColorPropDef,\n material: { type: 'enum', values: materials, default: undefined },\n /**\n * @deprecated Use `material` prop instead. This prop will be removed in a future version.\n */\n panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n material: PropDef<(typeof materials)[number] | undefined>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n};\n\nexport { calloutRootPropDefs };\n"],
5
- "mappings": "gFAKA,IAAMA,EAAQ,CAAC,IAAK,IAAK,GAAG,EACtBC,EAAW,CAAC,OAAQ,UAAW,UAAW,SAAS,EACnDC,EAAmB,CAAC,QAAS,aAAa,EAC1CC,EAAY,CAAC,QAAS,aAAa,EAEnCC,EAAsB,CAC1B,GAAGC,EACH,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQL,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,MAAO,EACpF,GAAGK,EACH,SAAU,CAAE,KAAM,OAAQ,OAAQH,EAAW,QAAS,MAAU,EAIhE,gBAAiB,CAAE,KAAM,OAAQ,OAAQD,EAAkB,QAAS,MAAU,CAChF",
6
- "names": ["sizes", "variants", "panelBackgrounds", "materials", "calloutRootPropDefs", "asChildPropDef", "accentColorPropDef"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as e}from"./chunk-NZJGC6ZW.js";var s=["1","2","3","4","5"],a=["surface","outline","classic","ghost","soft"],t=["solid","translucent"],n=["solid","translucent"],r={...e,size:{type:"enum",className:"rt-r-size",values:s,default:"1",responsive:!0},variant:{type:"enum",className:"rt-variant",values:a,default:"outline"},panelBackground:{type:"enum",values:t,default:void 0},material:{type:"enum",values:n,default:void 0},flush:{type:"boolean",default:!1},inset:{type:"boolean",default:!1}};export{r as a};
2
- //# sourceMappingURL=chunk-OO652UQW.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/card.props.tsx"],
4
- "sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4', '5'] as const;\nconst variants = ['surface', 'outline', 'classic', 'ghost', 'soft'] as const;\nconst panelBackgrounds = ['solid', 'translucent'] as const;\nconst materials = ['solid', 'translucent'] as const;\n\nconst cardPropDefs = {\n ...asChildPropDef,\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '1', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'outline' },\n panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\n material: { type: 'enum', values: materials, default: undefined },\n flush: { type: 'boolean', default: false },\n inset: { type: 'boolean', default: false },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n material: PropDef<(typeof materials)[number] | undefined>;\n flush: PropDef<boolean>;\n inset: PropDef<boolean>;\n};\n\nexport { cardPropDefs };\n"],
5
- "mappings": "wCAIA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,IAAK,GAAG,EAChCC,EAAW,CAAC,UAAW,UAAW,UAAW,QAAS,MAAM,EAC5DC,EAAmB,CAAC,QAAS,aAAa,EAC1CC,EAAY,CAAC,QAAS,aAAa,EAEnCC,EAAe,CACnB,GAAGC,EACH,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQL,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,gBAAiB,CAAE,KAAM,OAAQ,OAAQC,EAAkB,QAAS,MAAU,EAC9E,SAAU,CAAE,KAAM,OAAQ,OAAQC,EAAW,QAAS,MAAU,EAChE,MAAO,CAAE,KAAM,UAAW,QAAS,EAAM,EACzC,MAAO,CAAE,KAAM,UAAW,QAAS,EAAM,CAC3C",
6
- "names": ["sizes", "variants", "panelBackgrounds", "materials", "cardPropDefs", "asChildPropDef"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as e}from"./chunk-HAGKI7NA.js";import{a as s}from"./chunk-NZJGC6ZW.js";import{c as o}from"./chunk-ZNK6AH2G.js";var r=["1","2","3","4","5","6","7","8","9","10","11","12"],a=["outline","classic","ghost","soft","surface"],t=["solid","translucent"],u={...s,size:{type:"enum",className:"rt-r-size",values:r,default:"2",responsive:!0},variant:{type:"enum",className:"rt-variant",values:a,default:"surface"},panelBackground:{type:"enum",values:t,default:void 0},...o,columns:{...e.columns,default:"repeat(auto-fit, minmax(160px, 1fr))"},gap:{...e.gap,default:"4"}};export{u as a};
2
- //# sourceMappingURL=chunk-OWMA6GTG.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/radio-cards.props.tsx"],
4
- "sourcesContent": ["import { asChildPropDef } from '../props/as-child.prop.js';\nimport { colorPropDef } from '../props/color.prop.js';\nimport { gridPropDefs } from './grid.props.js';\n\nimport type { PropDef } from '../props/prop-def.js';\n\nconst sizes = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'] as const;\nconst variants = ['outline', 'classic', 'ghost', 'soft', 'surface'] as const;\nconst panelBackgrounds = ['solid', 'translucent'] as const;\n\nconst radioCardsRootPropDefs = {\n ...asChildPropDef,\n size: { type: 'enum', className: 'rt-r-size', values: sizes, default: '2', responsive: true },\n variant: { type: 'enum', className: 'rt-variant', values: variants, default: 'surface' },\n panelBackground: { type: 'enum', values: panelBackgrounds, default: undefined },\n ...colorPropDef,\n columns: { ...gridPropDefs.columns, default: 'repeat(auto-fit, minmax(160px, 1fr))' },\n gap: { ...gridPropDefs.gap, default: '4' },\n} satisfies {\n size: PropDef<(typeof sizes)[number]>;\n variant: PropDef<(typeof variants)[number]>;\n panelBackground: PropDef<(typeof panelBackgrounds)[number] | undefined>;\n columns: PropDef<(typeof gridPropDefs.columns.values)[number]>;\n gap: PropDef<(typeof gridPropDefs.gap.values)[number]>;\n};\n\nexport { radioCardsRootPropDefs };\n"],
5
- "mappings": "wHAMA,IAAMA,EAAQ,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,IAAI,EACtEC,EAAW,CAAC,UAAW,UAAW,QAAS,OAAQ,SAAS,EAC5DC,EAAmB,CAAC,QAAS,aAAa,EAE1CC,EAAyB,CAC7B,GAAGC,EACH,KAAM,CAAE,KAAM,OAAQ,UAAW,YAAa,OAAQJ,EAAO,QAAS,IAAK,WAAY,EAAK,EAC5F,QAAS,CAAE,KAAM,OAAQ,UAAW,aAAc,OAAQC,EAAU,QAAS,SAAU,EACvF,gBAAiB,CAAE,KAAM,OAAQ,OAAQC,EAAkB,QAAS,MAAU,EAC9E,GAAGG,EACH,QAAS,CAAE,GAAGC,EAAa,QAAS,QAAS,sCAAuC,EACpF,IAAK,CAAE,GAAGA,EAAa,IAAK,QAAS,GAAI,CAC3C",
6
- "names": ["sizes", "variants", "panelBackgrounds", "radioCardsRootPropDefs", "asChildPropDef", "colorPropDef", "gridPropDefs"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as V}from"./chunk-COWZAUZR.js";import{b as oe,c as ne,d as K,e as re,f as te}from"./chunk-IX5HIHVI.js";import{a as ee}from"./chunk-MJJ7XDIP.js";import{c as W}from"./chunk-GL5QTWYI.js";import{b as L,c as z}from"./chunk-VICP2RNA.js";import{a as x}from"./chunk-5TXQLK4G.js";import{b as y,c as E,d as H,e as U,f as Y}from"./chunk-3KSGRY6I.js";import{b as N,c as B,d as q,e as k,f as O}from"./chunk-ZOY43B55.js";import{a as T}from"./chunk-6FLLFCBU.js";import{a as P,b,c as X,d as $,e as G,f as J,g as Q,h as Z,i as _}from"./chunk-JSW6J6RS.js";import{a as Te}from"./chunk-OS3FCYZY.js";var Ge={};Te(Ge,{CheckboxItem:()=>Me,Content:()=>de,Group:()=>me,Item:()=>ce,Label:()=>le,RadioGroup:()=>we,RadioItem:()=>De,Root:()=>pe,Separator:()=>Re,Sub:()=>fe,SubContent:()=>ge,SubTrigger:()=>Pe,Trigger:()=>ue,TriggerIcon:()=>ve});import*as e from"react";import d from"classnames";import{DropdownMenu as u,Slot as xe}from"radix-ui";import{useCallbackRef as ae}from"radix-ui/internal";var ie=e.createContext(!1),pe=o=>{let{open:n,defaultOpen:r=!1,onOpenChange:p}=o,[a,t]=e.useState(r),i=n??a,s=ae(p),l=e.useCallback(m=>{t(m),s(m)},[s]);return e.createElement(ie.Provider,{value:i},e.createElement(u.Root,{...o,onOpenChange:l}))};pe.displayName="DropdownMenu.Root";var ue=e.forwardRef(({children:o,...n},r)=>e.createElement(u.Trigger,{...n,ref:r,asChild:!0},ee(o)));ue.displayName="DropdownMenu.Trigger";var A=e.createContext({}),Ee={ltr:"ArrowLeft",rtl:"ArrowRight"},Ne={ltr:"ArrowRight",rtl:"ArrowLeft"};function Be(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 de=e.forwardRef((o,n)=>{let r=L();x(o.panelBackground);let p=B(o.material,o.panelBackground,r),{size:a=y.size.default,variant:t=y.variant.default}=o,{className:i,children:s,color:l,container:m,forceMount:w,material:c,panelBackground:S,submenuBehavior:v,virtualized:I=!1,onEscapeKeyDown:R,onKeyDown:h,...g}=T(o,y),D=l||r.accentColor,f=N(v,"cascade"),F=f==="drill-down",Ie=e.useContext(ie),C=X(),he=M=>{R?.(M),!(M.defaultPrevented||!F||C.getDepth()===0)&&(M.preventDefault(),C.pop("keyboard"))},ye=M=>{h?.(M),!(M.defaultPrevented||!F||C.getDepth()===0)&&(Be(M.target)||M.key===Ee[se(M.currentTarget)]&&(M.preventDefault(),C.pop("keyboard")))},Se=e.useMemo(()=>({size:a,variant:t,color:D,material:p}),[a,t,D,p]),j=e.createElement(W,{size:a},e.createElement(A.Provider,{value:Se},e.createElement($,{store:C,behavior:f,open:Ie},s)));return e.createElement(u.Portal,{container:m,forceMount:w},e.createElement(z,{asChild:!0},e.createElement(u.Content,{"data-accent-color":D,"data-material":p,"data-panel-background":p,align:"start",sideOffset:4,collisionPadding:10,...g,onEscapeKeyDown:he,onKeyDown:ye,asChild:!1,ref:n,className:d("rt-PopperContent","rt-BaseMenuContent","rt-DropdownMenuContent",i)},I?e.createElement("div",{className:d("rt-BaseMenuViewport","rt-DropdownMenuViewport","rt-virtualized")},j):e.createElement(V,{type:"auto",scrollbars:"vertical"},e.createElement("div",{className:d("rt-BaseMenuViewport","rt-DropdownMenuViewport")},j)))))});de.displayName="DropdownMenu.Content";var le=e.forwardRef(({className:o,...n},r)=>e.useContext(P)?e.createElement(u.Label,{...n,asChild:!1,ref:r,className:d("rt-BaseMenuLabel","rt-DropdownMenuLabel",o)}):null);le.displayName="DropdownMenu.Label";var ce=e.forwardRef((o,n)=>{let{className:r,children:p,color:a=H.color.default,shortcut:t,...i}=o;return e.useContext(P)?e.createElement(u.Item,{"data-accent-color":a,"aria-keyshortcuts":t?k(t):void 0,...i,ref:n,className:d("rt-reset","rt-BaseMenuItem","rt-DropdownMenuItem",r)},e.createElement(xe.Slottable,null,p),t&&e.createElement(O,{shortcut:t,className:"rt-DropdownMenuShortcut"})):null});ce.displayName="DropdownMenu.Item";var me=e.forwardRef(({className:o,...n},r)=>e.createElement(u.Group,{...n,asChild:!1,ref:r,className:d("rt-BaseMenuGroup","rt-DropdownMenuGroup",o)}));me.displayName="DropdownMenu.Group";var we=e.forwardRef(({className:o,...n},r)=>e.createElement(u.RadioGroup,{...n,asChild:!1,ref:r,className:d("rt-BaseMenuRadioGroup","rt-DropdownMenuRadioGroup",o)}));we.displayName="DropdownMenu.RadioGroup";var De=e.forwardRef((o,n)=>{let{children:r,className:p,color:a=Y.color.default,...t}=o;return e.useContext(P)?e.createElement(u.RadioItem,{...t,asChild:!1,ref:n,"data-accent-color":a,className:d("rt-BaseMenuItem","rt-BaseMenuRadioItem","rt-DropdownMenuItem","rt-DropdownMenuRadioItem",p)},r,e.createElement(u.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator"},e.createElement(te,{className:"rt-BaseMenuItemIndicatorIcon rt-DropdownMenuItemIndicatorIcon"}))):null});De.displayName="DropdownMenu.RadioItem";var Me=e.forwardRef((o,n)=>{let{children:r,className:p,shortcut:a,color:t=U.color.default,...i}=o;return e.useContext(P)?e.createElement(u.CheckboxItem,{"aria-keyshortcuts":a?k(a):void 0,...i,asChild:!1,ref:n,"data-accent-color":t,className:d("rt-BaseMenuItem","rt-BaseMenuCheckboxItem","rt-DropdownMenuItem","rt-DropdownMenuCheckboxItem",p)},r,e.createElement(u.ItemIndicator,{className:"rt-BaseMenuItemIndicator rt-DropdownMenuItemIndicator"},e.createElement(oe,{className:"rt-BaseMenuItemIndicatorIcon rt-DropdownMenuItemIndicatorIcon"})),a&&e.createElement(O,{shortcut:a,className:"rt-DropdownMenuShortcut"})):null});Me.displayName="DropdownMenu.CheckboxItem";var fe=({label:o="Back",open:n,defaultOpen:r,onOpenChange:p,children:a})=>{let t=b(),i=e.useId(),s=e.useMemo(()=>({id:i,label:o}),[i,o]),l=G(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 w=ae(p),c=e.useRef(l);return e.useEffect(()=>{!t||c.current===l||(c.current=l,w(l))},[t,l,w]),e.createElement(Z.Provider,{value:s},e.createElement(u.Sub,{open:n,defaultOpen:r,onOpenChange:t?void 0:p},a))};fe.displayName="DropdownMenu.Sub";var Pe=e.forwardRef((o,n)=>{let{className:r,children:p,onKeyDown:a,...t}=o,i=b(),s=_(),l=e.useContext(P);if(i&&s){if(!l)return null;let m=c=>{c.preventDefault(),i.push(s.id)},w=c=>{a?.(c),!(c.defaultPrevented||t.disabled)&&c.key===Ne[se(c.currentTarget)]&&(c.preventDefault(),i.push(s.id,"keyboard"))};return e.createElement(u.Item,{"aria-haspopup":"menu",...t,"data-drill-down-trigger":s.id,"data-drill-down-name":t.textValue,onSelect:m,onKeyDown:w,ref:n,className:d("rt-reset","rt-BaseMenuItem","rt-BaseMenuSubTrigger","rt-DropdownMenuItem","rt-DropdownMenuSubTrigger","rt-DropdownMenuDrillDownSubTrigger",r)},p,e.createElement("div",{className:"rt-BaseMenuShortcut rt-DropdownMenuShortcut"},e.createElement(K,{className:"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubTriggerIcon"})))}return e.createElement(u.SubTrigger,{...t,onKeyDown:a,asChild:!1,ref:n,className:d("rt-BaseMenuItem","rt-BaseMenuSubTrigger","rt-DropdownMenuItem","rt-DropdownMenuSubTrigger",r)},p,e.createElement("div",{className:"rt-BaseMenuShortcut rt-DropdownMenuShortcut"},e.createElement(K,{className:"rt-BaseMenuSubTriggerIcon rt-DropdownMenuSubTriggerIcon"})))});Pe.displayName="DropdownMenu.SubTrigger";var Re=e.forwardRef(({className:o,...n},r)=>e.useContext(P)?e.createElement(u.Separator,{...n,asChild:!1,ref:r,className:d("rt-BaseMenuSeparator","rt-DropdownMenuSeparator",o)}):null);Re.displayName="DropdownMenu.Separator";function ke({label:o,name:n}){let r=b(),p=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(u.Item,{"aria-label":t,textValue:a||"Back",onSelect:p,className:d("rt-reset","rt-BaseMenuItem","rt-DropdownMenuItem","rt-DropdownMenuDrillDownBackItem")},e.createElement(re,{className:"rt-BaseMenuSubTriggerIcon rt-DropdownMenuDrillDownBackIcon"}),e.createElement("span",{className:"rt-DropdownMenuDrillDownBackLabel"},o))}function Oe(o){let{loop:n,onEscapeKeyDown:r,onPointerDownOutside:p,onFocusOutside:a,onInteractOutside:t,sideOffset:i,alignOffset:s,avoidCollisions:l,collisionBoundary:m,collisionPadding:w,arrowPadding:c,sticky:S,hideWhenDetached:v,updatePositionStrategy:I,...R}=o;return R}var ge=e.forwardRef((o,n)=>{let r=b(),p=_();return r&&p?e.createElement(be,{...o,ref:n,store:r,sub:p}):e.createElement(Ce,{...o,ref:n})});ge.displayName="DropdownMenu.SubContent";var Ce=e.forwardRef((o,n)=>{let r=e.useContext(A),p=L();x(o.panelBackground);let a=o.size??r.size,t=o.variant??r.variant,i=o.color??r.color,s=o.material??o.panelBackground??r.material??B(void 0,void 0,p),{className:l,children:m,container:w,forceMount:c,color:S,material:v,panelBackground:I,virtualized:R=!1,...h}=T({...o,size:a,variant:t},E),g=N(a,E.size.default),D=e.useMemo(()=>({size:a,variant:t,color:i,material:s}),[a,t,i,s]),f=e.createElement(W,{size:a},e.createElement(A.Provider,{value:D},m));return e.createElement(u.Portal,{container:w,forceMount:c},e.createElement(z,{asChild:!0},e.createElement(u.SubContent,{"data-accent-color":i,"data-material":s,"data-panel-background":s,alignOffset:q(g,p.scaling),sideOffset:1,collisionPadding:10,...h,asChild:!1,ref:n,className:d("rt-PopperContent","rt-BaseMenuContent","rt-BaseMenuSubContent","rt-DropdownMenuContent","rt-DropdownMenuSubContent",l)},R?e.createElement("div",{className:d("rt-BaseMenuViewport","rt-DropdownMenuViewport","rt-virtualized")},f):e.createElement(V,{type:"auto",scrollbars:"vertical"},e.createElement("div",{className:d("rt-BaseMenuViewport","rt-DropdownMenuViewport")},f)))))});Ce.displayName="DropdownMenu.CascadeSubContent";var be=e.forwardRef(({store:o,sub:n,...r},p)=>{let a=G(o,n.id),t=J(o,n.id),i=Q(a==="top"?o:null);if(a==="closed")return null;let{className:s,children:l,container:m,forceMount:w,virtualized:c,size:S,variant:v,color:I,material:R,panelBackground:h,...g}=Oe(r),D=a==="top",f=t?.name||(typeof n.label=="string"?n.label:"");return e.createElement("div",{role:"group","aria-label":f||void 0,...g,ref:p,"data-drill-down-panel":n.id,"data-drill-down-active":D?!0:void 0,"data-animation-direction":D?i??void 0:void 0,className:d("rt-DropdownMenuDrillDownPanel",s)},D&&e.createElement(e.Fragment,null,e.createElement(ke,{label:n.label,name:f}),e.createElement(u.Separator,{className:"rt-BaseMenuSeparator rt-DropdownMenuSeparator"})),e.createElement(P.Provider,{value:D},l))});be.displayName="DropdownMenu.DrillDownPanel";var ve=e.forwardRef(({className:o,...n},r)=>e.createElement(ne,{...n,ref:r,className:d("rt-DropdownMenuTriggerIcon",o)}));ve.displayName="DropdownMenu.TriggerIcon";export{pe as a,ue as b,de as c,le as d,ce as e,me as f,we as g,De as h,Me as i,fe as j,Pe as k,Re as l,ge as m,ve as n,Ge as o};
2
- //# sourceMappingURL=chunk-P2NZLSAD.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/dropdown-menu.tsx"],
4
- "sourcesContent": ["'use client';\n\nimport * as React from 'react';\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';\nimport { useDeprecatedPanelBackgroundWarning } from '../helpers/use-deprecation-warning.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 variant?: DropdownMenuSurfaceProps['variant'];\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 useDeprecatedPanelBackgroundWarning(props.panelBackground);\n\n const material = resolveMenuMaterial(props.material, props.panelBackground, themeContext);\n const {\n size = dropdownMenuContentPropDefs.size.default,\n variant = dropdownMenuContentPropDefs.variant.default,\n } = props;\n const {\n className,\n children,\n color,\n container,\n forceMount,\n material: _material,\n panelBackground: _panelBackground,\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, variant, color: resolvedColor, material }),\n [size, variant, 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 data-panel-background={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-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 useDeprecatedPanelBackgroundWarning(props.panelBackground);\n\n // A submenu inherits the parent surface, and its own props win.\n const size = props.size ?? parent.size;\n const variant = props.variant ?? parent.variant;\n const color = props.color ?? parent.color;\n const material =\n props.material ?? props.panelBackground ?? parent.material ?? resolveMenuMaterial(undefined, undefined, themeContext);\n\n const {\n className,\n children,\n container,\n forceMount,\n color: _color,\n material: _material,\n panelBackground: _panelBackground,\n virtualized = false,\n ...subContentProps\n } = extractProps({ ...props, size, variant }, dropdownMenuSubContentPropDefs);\n\n const scalarSize = useResolvedResponsiveValue(size, dropdownMenuSubContentPropDefs.size.default);\n\n const contextValue = React.useMemo(\n () => ({ size, variant, color, material }),\n [size, variant, 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 data-panel-background={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-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 variant: _variant,\n color: _color,\n material: _material,\n panelBackground: _panelBackground,\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};\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", "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", "useDeprecatedPanelBackgroundWarning", "material", "resolveMenuMaterial", "size", "baseMenuContentPropDefs", "variant", "className", "color", "container", "forceMount", "_material", "_panelBackground", "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", "_variant", "panelProps", "isTop", "DropdownMenuTriggerIcon", "ChevronDownIcon"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as v}from"./chunk-VX6ARMWP.js";import{a as f}from"./chunk-667BKCUG.js";import{a as d,e as l,f as u,g as R}from"./chunk-V32EP3S7.js";import{b as P}from"./chunk-IX5HIHVI.js";import{b}from"./chunk-VICP2RNA.js";import{a as k}from"./chunk-F6V7GBNQ.js";import{a as h}from"./chunk-GSTOGDAJ.js";import{a as m}from"./chunk-6FLLFCBU.js";import{a as z}from"./chunk-OS3FCYZY.js";var _={};z(_,{Item:()=>N,Root:()=>I});import*as o from"react";import x from"classnames";import{Context as D}from"radix-ui/internal";var y="CheckboxCards",[S]=D.createContextScope(y,[d]),G=d(),[B,E]=S(y),I=o.forwardRef((r,s)=>{let a=b(),c=r.panelBackground??a.panelBackground,{__scopeCheckboxCards:t,className:p,color:e,panelBackground:C,...i}=m(r,f,h),n=G(t);return o.createElement(B,{scope:t,size:r.size,variant:r.variant},o.createElement(v,{asChild:!0},o.createElement(l,{...n,"data-accent-color":e,"data-panel-background":c,...i,ref:s,className:x("rt-CheckboxCardsRoot",p)})))});I.displayName="CheckboxCards.Root";var N=o.forwardRef(({__scopeCheckboxCards:r,children:s,className:a,style:c,...t},p)=>{let e=E("CheckboxCardsItem",r),C=G(r),{className:i}=m({size:e?.size,variant:e?.variant||"solid"},k),n=e?.variant?`rt-variant-${e.variant}`:void 0,g=e?.size?`rt-r-size-${e.size}`:void 0;return o.createElement("label",{className:x("rt-BaseCard","rt-CheckboxCardsItem",n,g,a),style:c},s,o.createElement(u,{...C,...t,ref:p,className:x("rt-reset","rt-BaseCheckboxRoot","rt-CheckboxCardCheckbox",i)},o.createElement(R,{...C,asChild:!0,className:"rt-BaseCheckboxIndicator"},o.createElement(P,null))))});N.displayName="CheckboxCards.Item";export{I as a,N as b,_ as c};
2
- //# sourceMappingURL=chunk-PHZNRO3D.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/checkbox-cards.tsx"],
4
- "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { Context } from 'radix-ui/internal';\n\nimport * as CheckboxGroupPrimitive from './checkbox-group.primitive.js';\nimport { createCheckboxGroupScope } from './checkbox-group.primitive.js';\nimport { checkboxCardsRootPropDefs } from './checkbox-cards.props.js';\nimport { baseCheckboxPropDefs } from './_internal/base-checkbox.props.js';\nimport { Grid } from './grid.js';\nimport { ThickCheckIcon } from './icons.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { useThemeContext } from './theme.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { Responsive, GetPropDefTypes } from '../props/prop-def.js';\n\nconst CHECKBOX_CARD_GROUP_NAME = 'CheckboxCards';\n\ntype ScopedProps<P> = P & { __scopeCheckboxCards?: Context.Scope };\nconst [createCheckboxCardsContext] = Context.createContextScope(CHECKBOX_CARD_GROUP_NAME, [\n createCheckboxGroupScope,\n]);\nconst useCheckboxGroupScope = createCheckboxGroupScope();\n\ntype CheckboxCardsContextValue = {\n size?: Responsive<(typeof checkboxCardsRootPropDefs.size.values)[number]>;\n variant?: (typeof checkboxCardsRootPropDefs.variant.values)[number];\n};\n\nconst [CheckboxCardsProvider, useCheckboxCardsContext] =\n createCheckboxCardsContext<CheckboxCardsContextValue>(CHECKBOX_CARD_GROUP_NAME);\n\ntype CheckboxCardsRootElement = React.ElementRef<typeof CheckboxGroupPrimitive.Root>;\ntype CheckboxCardsRootOwnProps = GetPropDefTypes<typeof checkboxCardsRootPropDefs>;\ninterface CheckboxCardsRootProps\n extends ComponentPropsWithout<\n typeof CheckboxGroupPrimitive.Root,\n 'asChild' | 'color' | 'defaultChecked'\n >,\n MarginProps,\n CheckboxCardsRootOwnProps {}\nconst CheckboxCardsRoot = React.forwardRef<CheckboxCardsRootElement, CheckboxCardsRootProps>(\n (props: ScopedProps<CheckboxCardsRootProps>, forwardedRef) => {\n const themeContext = useThemeContext();\n const panelBackground = props.panelBackground ?? themeContext.panelBackground;\n const {\n __scopeCheckboxCards,\n className,\n color,\n panelBackground: _,\n ...rootProps\n } = extractProps(props, checkboxCardsRootPropDefs, marginPropDefs);\n const checkboxGroupScope = useCheckboxGroupScope(__scopeCheckboxCards);\n return (\n <CheckboxCardsProvider\n scope={__scopeCheckboxCards}\n size={props.size}\n variant={props.variant}\n >\n <Grid asChild>\n <CheckboxGroupPrimitive.Root\n {...checkboxGroupScope}\n data-accent-color={color}\n data-panel-background={panelBackground}\n {...rootProps}\n ref={forwardedRef}\n className={classNames('rt-CheckboxCardsRoot', className)}\n />\n </Grid>\n </CheckboxCardsProvider>\n );\n },\n);\nCheckboxCardsRoot.displayName = 'CheckboxCards.Root';\n\ntype CheckboxCardsItemElement = React.ElementRef<typeof CheckboxGroupPrimitive.Item>;\ninterface CheckboxCardsItemProps\n extends ComponentPropsWithout<typeof CheckboxGroupPrimitive.Item, RemovedProps>,\n MarginProps {}\nconst CheckboxCardsItem = React.forwardRef<\n CheckboxCardsItemElement,\n ScopedProps<CheckboxCardsItemProps>\n>(({ __scopeCheckboxCards, children, className, style, ...props }, forwardedRef) => {\n const context = useCheckboxCardsContext('CheckboxCardsItem', __scopeCheckboxCards);\n const checkboxGroupScope = useCheckboxGroupScope(__scopeCheckboxCards);\n\n const { className: checkboxClassName } = extractProps(\n // Pass size and variant values from the context to generate styles\n {\n size: context?.size,\n variant: context?.variant || 'solid',\n },\n // Pass size & variant prop defs to allow it to be extracted\n baseCheckboxPropDefs,\n );\n const variantClass = context?.variant ? `rt-variant-${context.variant}` : undefined;\n const sizeClass = context?.size ? `rt-r-size-${context.size}` : undefined;\n\n return (\n <label\n className={classNames(\n 'rt-BaseCard',\n 'rt-CheckboxCardsItem',\n variantClass,\n sizeClass,\n className,\n )}\n style={style}\n >\n {children}\n <CheckboxGroupPrimitive.Item\n {...checkboxGroupScope}\n {...props}\n ref={forwardedRef}\n className={classNames(\n 'rt-reset',\n 'rt-BaseCheckboxRoot',\n 'rt-CheckboxCardCheckbox',\n checkboxClassName,\n )}\n >\n <CheckboxGroupPrimitive.Indicator\n {...checkboxGroupScope}\n asChild\n className=\"rt-BaseCheckboxIndicator\"\n >\n <ThickCheckIcon />\n </CheckboxGroupPrimitive.Indicator>\n </CheckboxGroupPrimitive.Item>\n </label>\n );\n});\nCheckboxCardsItem.displayName = 'CheckboxCards.Item';\n\nexport { CheckboxCardsRoot as Root, CheckboxCardsItem as Item };\nexport type { CheckboxCardsRootProps as RootProps, CheckboxCardsItemProps as ItemProps };\n"],
5
- "mappings": "wXAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,UAAAE,EAAA,SAAAC,IAEA,UAAYC,MAAW,QACvB,OAAOC,MAAgB,aACvB,OAAS,WAAAC,MAAe,oBAgBxB,IAAMC,EAA2B,gBAG3B,CAACC,CAA0B,EAAIC,EAAQ,mBAAmBF,EAA0B,CACxFG,CACF,CAAC,EACKC,EAAwBD,EAAyB,EAOjD,CAACE,EAAuBC,CAAuB,EACnDL,EAAsDD,CAAwB,EAW1EO,EAA0B,aAC9B,CAACC,EAA4CC,IAAiB,CAC5D,IAAMC,EAAeC,EAAgB,EAC/BC,EAAkBJ,EAAM,iBAAmBE,EAAa,gBACxD,CACJ,qBAAAG,EACA,UAAAC,EACA,MAAAC,EACA,gBAAiBC,EACjB,GAAGC,CACL,EAAIC,EAAaV,EAAOW,EAA2BC,CAAc,EAC3DC,EAAqBjB,EAAsBS,CAAoB,EACrE,OACE,gBAACR,EAAA,CACC,MAAOQ,EACP,KAAML,EAAM,KACZ,QAASA,EAAM,SAEf,gBAACc,EAAA,CAAK,QAAO,IACX,gBAAwBC,EAAvB,CACE,GAAGF,EACJ,oBAAmBN,EACnB,wBAAuBH,EACtB,GAAGK,EACJ,IAAKR,EACL,UAAWe,EAAW,uBAAwBV,CAAS,EACzD,CACF,CACF,CAEJ,CACF,EACAP,EAAkB,YAAc,qBAMhC,IAAMkB,EAA0B,aAG9B,CAAC,CAAE,qBAAAZ,EAAsB,SAAAa,EAAU,UAAAZ,EAAW,MAAAa,EAAO,GAAGnB,CAAM,EAAGC,IAAiB,CAClF,IAAMmB,EAAUtB,EAAwB,oBAAqBO,CAAoB,EAC3EQ,EAAqBjB,EAAsBS,CAAoB,EAE/D,CAAE,UAAWgB,CAAkB,EAAIX,EAEvC,CACE,KAAMU,GAAS,KACf,QAASA,GAAS,SAAW,OAC/B,EAEAE,CACF,EACMC,EAAeH,GAAS,QAAU,cAAcA,EAAQ,OAAO,GAAK,OACpEI,EAAYJ,GAAS,KAAO,aAAaA,EAAQ,IAAI,GAAK,OAEhE,OACE,gBAAC,SACC,UAAWJ,EACT,cACA,uBACAO,EACAC,EACAlB,CACF,EACA,MAAOa,GAEND,EACD,gBAAwBO,EAAvB,CACE,GAAGZ,EACH,GAAGb,EACJ,IAAKC,EACL,UAAWe,EACT,WACA,sBACA,0BACAK,CACF,GAEA,gBAAwBK,EAAvB,CACE,GAAGb,EACJ,QAAO,GACP,UAAU,4BAEV,gBAACc,EAAA,IAAe,CAClB,CACF,CACF,CAEJ,CAAC,EACDV,EAAkB,YAAc",
6
- "names": ["checkbox_cards_exports", "__export", "CheckboxCardsItem", "CheckboxCardsRoot", "React", "classNames", "Context", "CHECKBOX_CARD_GROUP_NAME", "createCheckboxCardsContext", "Context", "createCheckboxGroupScope", "useCheckboxGroupScope", "CheckboxCardsProvider", "useCheckboxCardsContext", "CheckboxCardsRoot", "props", "forwardedRef", "themeContext", "useThemeContext", "panelBackground", "__scopeCheckboxCards", "className", "color", "_", "rootProps", "extractProps", "checkboxCardsRootPropDefs", "marginPropDefs", "checkboxGroupScope", "Grid", "Root", "classNames", "CheckboxCardsItem", "children", "style", "context", "checkboxClassName", "baseCheckboxPropDefs", "variantClass", "sizeClass", "Item", "Indicator", "ThickCheckIcon"]
7
- }
@@ -1,2 +0,0 @@
1
- import{a as l}from"./chunk-4WVNMGI5.js";import{a as f}from"./chunk-HJU4I34X.js";import{a as d}from"./chunk-PS6NEG5A.js";import{a as o}from"./chunk-5WRCK4R7.js";import{a as c}from"./chunk-JDGJSNWT.js";import{b as m}from"./chunk-VICP2RNA.js";import{a as t}from"./chunk-FHOCUZDR.js";import{a as i}from"./chunk-GSTOGDAJ.js";import{a as p}from"./chunk-6FLLFCBU.js";import*as r from"react";import M from"classnames";var N=r.forwardRef((e,u)=>{let C=m(),P=e.panelBackground??C.panelBackground,{asChild:s,children:y,className:v,src:g,fallback:h,name:x,description:n,avatarVariant:z,radius:U,color:k,panelBackground:b,flush:R,...T}=p(e,l,i),B={1:{avatar:"1",name:"1",description:"0"},2:{avatar:"2",name:"2",description:"1"},3:{avatar:"3",name:"3",description:"2"},4:{avatar:"4",name:"4",description:"3"}},D=e.size||"2",a=B[D],w=r.createElement(t,{align:"center",gap:"3"},r.createElement(f,{size:a.avatar,variant:z,radius:U,src:g,fallback:h,color:k}),r.createElement(t,{direction:"column",gap:"0",style:{minWidth:0}},r.createElement(o,{size:a.name,weight:"medium",truncate:!0},x),n&&r.createElement(o,{size:a.description,emphasis:"medium",truncate:!0},n)));return r.createElement(c,{...T,asChild:s,size:e.size,variant:e.variant,panelBackground:P,flush:R,ref:u,className:M("rt-UserCard",v)},d({asChild:s,children:y},w))});N.displayName="UserCard";export{N as a};
2
- //# sourceMappingURL=chunk-PLYOBXAF.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/components/user-card.tsx"],
4
- "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport classNames from 'classnames';\n\nimport { userCardPropDefs } from './user-card.props.js';\nimport { Avatar } from './avatar.js';\nimport { Card } from './card.js';\nimport { Text } from './text.js';\nimport { Flex } from './flex.js';\nimport { extractProps } from '../helpers/extract-props.js';\nimport { getSubtree } from '../helpers/get-subtree.js';\nimport { marginPropDefs } from '../props/margin.props.js';\nimport { useThemeContext } from './theme.js';\n\nimport type { ComponentPropsWithout, RemovedProps } from '../helpers/component-props.js';\nimport type { MarginProps } from '../props/margin.props.js';\nimport type { GetPropDefTypes } from '../props/prop-def.js';\n\ntype UserCardOwnProps = GetPropDefTypes<typeof userCardPropDefs>;\n\ntype UserCardElement = React.ElementRef<'div'>;\ninterface UserCardProps\n extends ComponentPropsWithout<'div', RemovedProps>,\n MarginProps,\n UserCardOwnProps {}\n\nconst UserCard = React.forwardRef<UserCardElement, UserCardProps>((props, forwardedRef) => {\n const themeContext = useThemeContext();\n const resolvedPanelBackground = props.panelBackground ?? themeContext.panelBackground;\n\n const {\n asChild,\n children,\n className,\n src,\n fallback,\n name,\n description,\n avatarVariant,\n radius,\n color,\n panelBackground,\n flush,\n ...restProps\n } = extractProps(props, userCardPropDefs, marginPropDefs);\n\n // Size mappings for avatar and text\n const sizeMap = {\n '1': { avatar: '1', name: '1', description: '0' },\n '2': { avatar: '2', name: '2', description: '1' },\n '3': { avatar: '3', name: '3', description: '2' },\n '4': { avatar: '4', name: '4', description: '3' },\n } as const;\n\n const currentSize = props.size || '2';\n const sizes = sizeMap[currentSize as keyof typeof sizeMap];\n\n const content = (\n <Flex align=\"center\" gap=\"3\">\n <Avatar\n size={sizes.avatar as any}\n variant={avatarVariant}\n radius={radius}\n src={src}\n fallback={fallback!}\n color={color}\n />\n <Flex direction=\"column\" gap=\"0\" style={{ minWidth: 0 }}>\n <Text size={sizes.name as any} weight=\"medium\" truncate>\n {name}\n </Text>\n {description && (\n <Text size={sizes.description as any} emphasis=\"medium\" truncate>\n {description}\n </Text>\n )}\n </Flex>\n </Flex>\n );\n\n return (\n <Card\n {...restProps}\n asChild={asChild}\n size={props.size}\n variant={props.variant}\n panelBackground={resolvedPanelBackground}\n flush={flush}\n ref={forwardedRef}\n className={classNames('rt-UserCard', className)}\n >\n {getSubtree({ asChild, children }, content)}\n </Card>\n );\n});\n\nUserCard.displayName = 'UserCard';\n\nexport { UserCard };\nexport type { UserCardProps };\n"],
5
- "mappings": "wWAEA,UAAYA,MAAW,QACvB,OAAOC,MAAgB,aAwBvB,IAAMC,EAAiB,aAA2C,CAACC,EAAOC,IAAiB,CACzF,IAAMC,EAAeC,EAAgB,EAC/BC,EAA0BJ,EAAM,iBAAmBE,EAAa,gBAEhE,CACJ,QAAAG,EACA,SAAAC,EACA,UAAAC,EACA,IAAAC,EACA,SAAAC,EACA,KAAAC,EACA,YAAAC,EACA,cAAAC,EACA,OAAAC,EACA,MAAAC,EACA,gBAAAC,EACA,MAAAC,EACA,GAAGC,CACL,EAAIC,EAAalB,EAAOmB,EAAkBC,CAAc,EAGlDC,EAAU,CACd,EAAK,CAAE,OAAQ,IAAK,KAAM,IAAK,YAAa,GAAI,EAChD,EAAK,CAAE,OAAQ,IAAK,KAAM,IAAK,YAAa,GAAI,EAChD,EAAK,CAAE,OAAQ,IAAK,KAAM,IAAK,YAAa,GAAI,EAChD,EAAK,CAAE,OAAQ,IAAK,KAAM,IAAK,YAAa,GAAI,CAClD,EAEMC,EAActB,EAAM,MAAQ,IAC5BuB,EAAQF,EAAQC,CAAmC,EAEnDE,EACJ,gBAACC,EAAA,CAAK,MAAM,SAAS,IAAI,KACvB,gBAACC,EAAA,CACC,KAAMH,EAAM,OACZ,QAASX,EACT,OAAQC,EACR,IAAKL,EACL,SAAUC,EACV,MAAOK,EACT,EACA,gBAACW,EAAA,CAAK,UAAU,SAAS,IAAI,IAAI,MAAO,CAAE,SAAU,CAAE,GACpD,gBAACE,EAAA,CAAK,KAAMJ,EAAM,KAAa,OAAO,SAAS,SAAQ,IACpDb,CACH,EACCC,GACC,gBAACgB,EAAA,CAAK,KAAMJ,EAAM,YAAoB,SAAS,SAAS,SAAQ,IAC7DZ,CACH,CAEJ,CACF,EAGF,OACE,gBAACiB,EAAA,CACE,GAAGX,EACJ,QAASZ,EACT,KAAML,EAAM,KACZ,QAASA,EAAM,QACf,gBAAiBI,EACjB,MAAOY,EACP,IAAKf,EACL,UAAW4B,EAAW,cAAetB,CAAS,GAE7CuB,EAAW,CAAE,QAAAzB,EAAS,SAAAC,CAAS,EAAGkB,CAAO,CAC5C,CAEJ,CAAC,EAEDzB,EAAS,YAAc",
6
- "names": ["React", "classNames", "UserCard", "props", "forwardedRef", "themeContext", "useThemeContext", "resolvedPanelBackground", "asChild", "children", "className", "src", "fallback", "name", "description", "avatarVariant", "radius", "color", "panelBackground", "flush", "restProps", "extractProps", "userCardPropDefs", "marginPropDefs", "sizeMap", "currentSize", "sizes", "content", "Flex", "Avatar", "Text", "Card", "classNames", "getSubtree"]
7
- }
@@ -1,2 +0,0 @@
1
- import{b as s}from"./chunk-KRJTW535.js";import{a as e}from"./chunk-NZJGC6ZW.js";import{a as t,d as a}from"./chunk-ZNK6AH2G.js";var o=["1","2","3","4","5","6","7","8","9","10","11","12"],n=["classic","solid","soft","surface","outline"],r=["solid","translucent"],u=["solid","translucent"],f=["cover","contain","fill","scale-down","none"],p={...e,size:{type:"enum",className:"rt-r-size",values:o,default:"3",responsive:!0},variant:{type:"enum",className:"rt-variant",values:n,default:"soft"},...a,...s,fallback:{type:"ReactNode",required:!0},material:{type:"enum",values:u,default:void 0},panelBackground:{type:"enum",values:r,default:void 0},status:{type:"enum",values:t,default:void 0},badge:{type:"ReactNode",default:void 0},fit:{type:"enum",className:"rt-r-fit",values:f,default:"cover",responsive:!0}};export{p as a};
2
- //# sourceMappingURL=chunk-QFPHEY77.js.map