@womp/kookie-ui 0.14.5 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1185) hide show
  1. package/README.md +2 -2
  2. package/components.css +711 -2741
  3. package/dist/cjs/components/_internal/base-button.d.ts.map +1 -1
  4. package/dist/cjs/components/_internal/base-button.js +1 -1
  5. package/dist/cjs/components/_internal/base-button.js.map +4 -4
  6. package/dist/cjs/components/_internal/base-button.props.d.ts +1 -8
  7. package/dist/cjs/components/_internal/base-button.props.d.ts.map +1 -1
  8. package/dist/cjs/components/_internal/base-button.props.js +1 -1
  9. package/dist/cjs/components/_internal/base-button.props.js.map +4 -4
  10. package/dist/cjs/components/_internal/base-checkbox.props.d.ts +2 -9
  11. package/dist/cjs/components/_internal/base-checkbox.props.d.ts.map +1 -1
  12. package/dist/cjs/components/_internal/base-checkbox.props.js +1 -1
  13. package/dist/cjs/components/_internal/base-checkbox.props.js.map +4 -4
  14. package/dist/cjs/components/_internal/base-menu.props.d.ts +0 -28
  15. package/dist/cjs/components/_internal/base-menu.props.d.ts.map +1 -1
  16. package/dist/cjs/components/_internal/base-menu.props.js +1 -1
  17. package/dist/cjs/components/_internal/base-menu.props.js.map +3 -3
  18. package/dist/cjs/components/_internal/base-menu.utils.d.ts +2 -9
  19. package/dist/cjs/components/_internal/base-menu.utils.d.ts.map +1 -1
  20. package/dist/cjs/components/_internal/base-menu.utils.js +1 -1
  21. package/dist/cjs/components/_internal/base-menu.utils.js.map +4 -4
  22. package/dist/cjs/components/_internal/base-radio.props.d.ts +1 -8
  23. package/dist/cjs/components/_internal/base-radio.props.d.ts.map +1 -1
  24. package/dist/cjs/components/_internal/base-radio.props.js +1 -1
  25. package/dist/cjs/components/_internal/base-radio.props.js.map +4 -4
  26. package/dist/cjs/components/_internal/base-tab-list.props.d.ts +0 -6
  27. package/dist/cjs/components/_internal/base-tab-list.props.d.ts.map +1 -1
  28. package/dist/cjs/components/_internal/base-tab-list.props.js +1 -1
  29. package/dist/cjs/components/_internal/base-tab-list.props.js.map +3 -3
  30. package/dist/cjs/components/_internal/menu-context.js +1 -1
  31. package/dist/cjs/components/_internal/menu-context.js.map +4 -4
  32. package/dist/cjs/components/_internal/shell-bottom.js +1 -1
  33. package/dist/cjs/components/_internal/shell-bottom.js.map +2 -2
  34. package/dist/cjs/components/_internal/shell-inspector.js +1 -1
  35. package/dist/cjs/components/_internal/shell-inspector.js.map +2 -2
  36. package/dist/cjs/components/_internal/shell-pane.d.ts +2 -3
  37. package/dist/cjs/components/_internal/shell-pane.d.ts.map +1 -1
  38. package/dist/cjs/components/_internal/shell-pane.js +1 -1
  39. package/dist/cjs/components/_internal/shell-pane.js.map +2 -2
  40. package/dist/cjs/components/_internal/shell-sidebar.d.ts +0 -4
  41. package/dist/cjs/components/_internal/shell-sidebar.d.ts.map +1 -1
  42. package/dist/cjs/components/_internal/shell-sidebar.js +1 -1
  43. package/dist/cjs/components/_internal/shell-sidebar.js.map +3 -3
  44. package/dist/cjs/components/_internal/shell-store.d.ts +4 -4
  45. package/dist/cjs/components/_internal/shell-store.d.ts.map +1 -1
  46. package/dist/cjs/components/_internal/shell-store.js +1 -1
  47. package/dist/cjs/components/_internal/shell-store.js.map +1 -1
  48. package/dist/cjs/components/accordion.d.ts.map +1 -1
  49. package/dist/cjs/components/accordion.js +1 -1
  50. package/dist/cjs/components/accordion.js.map +4 -4
  51. package/dist/cjs/components/accordion.props.d.ts +4 -15
  52. package/dist/cjs/components/accordion.props.d.ts.map +1 -1
  53. package/dist/cjs/components/accordion.props.js +1 -1
  54. package/dist/cjs/components/accordion.props.js.map +4 -4
  55. package/dist/cjs/components/alert-dialog.d.ts.map +1 -1
  56. package/dist/cjs/components/alert-dialog.js +1 -1
  57. package/dist/cjs/components/alert-dialog.js.map +4 -4
  58. package/dist/cjs/components/alert-dialog.props.d.ts +0 -5
  59. package/dist/cjs/components/alert-dialog.props.d.ts.map +1 -1
  60. package/dist/cjs/components/alert-dialog.props.js +1 -1
  61. package/dist/cjs/components/alert-dialog.props.js.map +3 -3
  62. package/dist/cjs/components/avatar.d.ts.map +1 -1
  63. package/dist/cjs/components/avatar.js +1 -1
  64. package/dist/cjs/components/avatar.js.map +4 -4
  65. package/dist/cjs/components/avatar.props.d.ts +2 -17
  66. package/dist/cjs/components/avatar.props.d.ts.map +1 -1
  67. package/dist/cjs/components/avatar.props.js +1 -1
  68. package/dist/cjs/components/avatar.props.js.map +4 -4
  69. package/dist/cjs/components/badge.d.ts.map +1 -1
  70. package/dist/cjs/components/badge.js +1 -1
  71. package/dist/cjs/components/badge.js.map +4 -4
  72. package/dist/cjs/components/badge.props.d.ts +1 -16
  73. package/dist/cjs/components/badge.props.d.ts.map +1 -1
  74. package/dist/cjs/components/badge.props.js +1 -1
  75. package/dist/cjs/components/badge.props.js.map +4 -4
  76. package/dist/cjs/components/blockquote.js.map +1 -1
  77. package/dist/cjs/components/blockquote.props.d.ts +1 -1
  78. package/dist/cjs/components/blockquote.props.js +1 -1
  79. package/dist/cjs/components/blockquote.props.js.map +2 -2
  80. package/dist/cjs/components/button.d.ts +1 -38
  81. package/dist/cjs/components/button.d.ts.map +1 -1
  82. package/dist/cjs/components/button.js +2 -2
  83. package/dist/cjs/components/button.js.map +4 -4
  84. package/dist/cjs/components/button.props.js +1 -1
  85. package/dist/cjs/components/button.props.js.map +4 -4
  86. package/dist/cjs/components/card.d.ts.map +1 -1
  87. package/dist/cjs/components/card.js +1 -1
  88. package/dist/cjs/components/card.js.map +4 -4
  89. package/dist/cjs/components/card.props.d.ts +1 -8
  90. package/dist/cjs/components/card.props.d.ts.map +1 -1
  91. package/dist/cjs/components/card.props.js +1 -1
  92. package/dist/cjs/components/card.props.js.map +4 -4
  93. package/dist/cjs/components/chatbar.d.ts +1 -3
  94. package/dist/cjs/components/chatbar.d.ts.map +1 -1
  95. package/dist/cjs/components/chatbar.js +2 -2
  96. package/dist/cjs/components/chatbar.js.map +4 -4
  97. package/dist/cjs/components/checkbox-cards.d.ts.map +1 -1
  98. package/dist/cjs/components/checkbox-cards.js +1 -1
  99. package/dist/cjs/components/checkbox-cards.js.map +4 -4
  100. package/dist/cjs/components/checkbox-cards.props.d.ts +2 -10
  101. package/dist/cjs/components/checkbox-cards.props.d.ts.map +1 -1
  102. package/dist/cjs/components/checkbox-cards.props.js +1 -1
  103. package/dist/cjs/components/checkbox-cards.props.js.map +4 -4
  104. package/dist/cjs/components/checkbox-group.js +1 -1
  105. package/dist/cjs/components/checkbox-group.js.map +4 -4
  106. package/dist/cjs/components/checkbox-group.props.d.ts +2 -8
  107. package/dist/cjs/components/checkbox-group.props.d.ts.map +1 -1
  108. package/dist/cjs/components/checkbox-group.props.js +1 -1
  109. package/dist/cjs/components/checkbox-group.props.js.map +4 -4
  110. package/dist/cjs/components/checkbox.d.ts.map +1 -1
  111. package/dist/cjs/components/checkbox.js +1 -1
  112. package/dist/cjs/components/checkbox.js.map +4 -4
  113. package/dist/cjs/components/checkbox.props.js +1 -1
  114. package/dist/cjs/components/checkbox.props.js.map +4 -4
  115. package/dist/cjs/components/code.js +1 -1
  116. package/dist/cjs/components/code.js.map +2 -2
  117. package/dist/cjs/components/code.props.d.ts +1 -1
  118. package/dist/cjs/components/code.props.js +1 -1
  119. package/dist/cjs/components/code.props.js.map +2 -2
  120. package/dist/cjs/components/combobox.d.ts.map +1 -1
  121. package/dist/cjs/components/combobox.js +1 -1
  122. package/dist/cjs/components/combobox.js.map +4 -4
  123. package/dist/cjs/components/combobox.props.d.ts +1 -20
  124. package/dist/cjs/components/combobox.props.d.ts.map +1 -1
  125. package/dist/cjs/components/combobox.props.js +1 -1
  126. package/dist/cjs/components/combobox.props.js.map +4 -4
  127. package/dist/cjs/components/context-menu.d.ts.map +1 -1
  128. package/dist/cjs/components/context-menu.js +1 -1
  129. package/dist/cjs/components/context-menu.js.map +4 -4
  130. package/dist/cjs/components/context-menu.props.js +1 -1
  131. package/dist/cjs/components/context-menu.props.js.map +3 -3
  132. package/dist/cjs/components/data-list.js.map +1 -1
  133. package/dist/cjs/components/data-list.props.js.map +1 -1
  134. package/dist/cjs/components/dialog.d.ts.map +1 -1
  135. package/dist/cjs/components/dialog.js +1 -1
  136. package/dist/cjs/components/dialog.js.map +4 -4
  137. package/dist/cjs/components/dialog.props.d.ts +0 -5
  138. package/dist/cjs/components/dialog.props.d.ts.map +1 -1
  139. package/dist/cjs/components/dialog.props.js +1 -1
  140. package/dist/cjs/components/dialog.props.js.map +3 -3
  141. package/dist/cjs/components/dropdown-menu.d.ts.map +1 -1
  142. package/dist/cjs/components/dropdown-menu.js +1 -1
  143. package/dist/cjs/components/dropdown-menu.js.map +4 -4
  144. package/dist/cjs/components/dropdown-menu.props.js +1 -1
  145. package/dist/cjs/components/dropdown-menu.props.js.map +3 -3
  146. package/dist/cjs/components/heading.js.map +1 -1
  147. package/dist/cjs/components/heading.props.js.map +1 -1
  148. package/dist/cjs/components/hover-card.js +1 -1
  149. package/dist/cjs/components/hover-card.js.map +4 -4
  150. package/dist/cjs/components/icon-button.d.ts +1 -1
  151. package/dist/cjs/components/icon-button.d.ts.map +1 -1
  152. package/dist/cjs/components/icon-button.js +2 -2
  153. package/dist/cjs/components/icon-button.js.map +4 -4
  154. package/dist/cjs/components/icon-button.props.js +1 -1
  155. package/dist/cjs/components/icon-button.props.js.map +4 -4
  156. package/dist/cjs/components/image.d.ts +0 -5
  157. package/dist/cjs/components/image.d.ts.map +1 -1
  158. package/dist/cjs/components/image.js +1 -1
  159. package/dist/cjs/components/image.js.map +3 -3
  160. package/dist/cjs/components/index.d.ts +0 -3
  161. package/dist/cjs/components/index.d.ts.map +1 -1
  162. package/dist/cjs/components/index.js +5 -5
  163. package/dist/cjs/components/index.js.map +4 -4
  164. package/dist/cjs/components/kbd.js +1 -1
  165. package/dist/cjs/components/kbd.js.map +4 -4
  166. package/dist/cjs/components/kbd.props.d.ts +2 -4
  167. package/dist/cjs/components/kbd.props.d.ts.map +1 -1
  168. package/dist/cjs/components/kbd.props.js +1 -1
  169. package/dist/cjs/components/kbd.props.js.map +4 -4
  170. package/dist/cjs/components/link.js +1 -1
  171. package/dist/cjs/components/link.js.map +2 -2
  172. package/dist/cjs/components/link.props.d.ts +1 -1
  173. package/dist/cjs/components/link.props.js +1 -1
  174. package/dist/cjs/components/link.props.js.map +2 -2
  175. package/dist/cjs/components/message-scroller.js +2 -2
  176. package/dist/cjs/components/message-scroller.js.map +4 -4
  177. package/dist/cjs/components/notice.js +2 -2
  178. package/dist/cjs/components/notice.js.map +4 -4
  179. package/dist/cjs/components/popover.d.ts.map +1 -1
  180. package/dist/cjs/components/popover.js +1 -1
  181. package/dist/cjs/components/popover.js.map +4 -4
  182. package/dist/cjs/components/popover.props.d.ts +0 -6
  183. package/dist/cjs/components/popover.props.d.ts.map +1 -1
  184. package/dist/cjs/components/popover.props.js +1 -1
  185. package/dist/cjs/components/popover.props.js.map +3 -3
  186. package/dist/cjs/components/progress.js.map +1 -1
  187. package/dist/cjs/components/progress.props.js.map +1 -1
  188. package/dist/cjs/components/radio-cards.d.ts.map +1 -1
  189. package/dist/cjs/components/radio-cards.js +1 -1
  190. package/dist/cjs/components/radio-cards.js.map +4 -4
  191. package/dist/cjs/components/radio-cards.props.d.ts +2 -10
  192. package/dist/cjs/components/radio-cards.props.d.ts.map +1 -1
  193. package/dist/cjs/components/radio-cards.props.js +1 -1
  194. package/dist/cjs/components/radio-cards.props.js.map +4 -4
  195. package/dist/cjs/components/radio-group.js +1 -1
  196. package/dist/cjs/components/radio-group.js.map +4 -4
  197. package/dist/cjs/components/radio-group.props.d.ts +1 -3
  198. package/dist/cjs/components/radio-group.props.d.ts.map +1 -1
  199. package/dist/cjs/components/radio-group.props.js +1 -1
  200. package/dist/cjs/components/radio-group.props.js.map +4 -4
  201. package/dist/cjs/components/radio.d.ts.map +1 -1
  202. package/dist/cjs/components/radio.js +1 -1
  203. package/dist/cjs/components/radio.js.map +4 -4
  204. package/dist/cjs/components/radio.props.js +1 -1
  205. package/dist/cjs/components/radio.props.js.map +4 -4
  206. package/dist/cjs/components/schemas/base-button.schema.d.ts +0 -7
  207. package/dist/cjs/components/schemas/base-button.schema.d.ts.map +1 -1
  208. package/dist/cjs/components/schemas/base-button.schema.js +1 -1
  209. package/dist/cjs/components/schemas/base-button.schema.js.map +2 -2
  210. package/dist/cjs/components/schemas/button.schema.d.ts +7 -73
  211. package/dist/cjs/components/schemas/button.schema.d.ts.map +1 -1
  212. package/dist/cjs/components/schemas/button.schema.js +1 -1
  213. package/dist/cjs/components/schemas/button.schema.js.map +2 -2
  214. package/dist/cjs/components/schemas/icon-button.schema.d.ts +0 -7
  215. package/dist/cjs/components/schemas/icon-button.schema.d.ts.map +1 -1
  216. package/dist/cjs/components/schemas/icon-button.schema.js +1 -1
  217. package/dist/cjs/components/schemas/icon-button.schema.js.map +2 -2
  218. package/dist/cjs/components/schemas/index.js +1 -1
  219. package/dist/cjs/components/schemas/index.js.map +2 -2
  220. package/dist/cjs/components/schemas/shell.schema.d.ts +5 -29
  221. package/dist/cjs/components/schemas/shell.schema.d.ts.map +1 -1
  222. package/dist/cjs/components/schemas/shell.schema.js +1 -1
  223. package/dist/cjs/components/schemas/shell.schema.js.map +2 -2
  224. package/dist/cjs/components/schemas/toggle-button.schema.d.ts +7 -73
  225. package/dist/cjs/components/schemas/toggle-button.schema.d.ts.map +1 -1
  226. package/dist/cjs/components/schemas/toggle-button.schema.js +1 -1
  227. package/dist/cjs/components/schemas/toggle-button.schema.js.map +2 -2
  228. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts +0 -7
  229. package/dist/cjs/components/schemas/toggle-icon-button.schema.d.ts.map +1 -1
  230. package/dist/cjs/components/schemas/toggle-icon-button.schema.js +1 -1
  231. package/dist/cjs/components/schemas/toggle-icon-button.schema.js.map +2 -2
  232. package/dist/cjs/components/segmented-control.d.ts.map +1 -1
  233. package/dist/cjs/components/segmented-control.js +1 -1
  234. package/dist/cjs/components/segmented-control.js.map +4 -4
  235. package/dist/cjs/components/segmented-control.props.d.ts +0 -11
  236. package/dist/cjs/components/segmented-control.props.d.ts.map +1 -1
  237. package/dist/cjs/components/segmented-control.props.js +1 -1
  238. package/dist/cjs/components/segmented-control.props.js.map +3 -3
  239. package/dist/cjs/components/select.d.ts.map +1 -1
  240. package/dist/cjs/components/select.js +1 -1
  241. package/dist/cjs/components/select.js.map +4 -4
  242. package/dist/cjs/components/select.props.d.ts +1 -14
  243. package/dist/cjs/components/select.props.d.ts.map +1 -1
  244. package/dist/cjs/components/select.props.js +1 -1
  245. package/dist/cjs/components/select.props.js.map +4 -4
  246. package/dist/cjs/components/separator.js.map +1 -1
  247. package/dist/cjs/components/separator.props.js.map +1 -1
  248. package/dist/cjs/components/sheet.d.ts +1 -2
  249. package/dist/cjs/components/sheet.d.ts.map +1 -1
  250. package/dist/cjs/components/sheet.js +1 -1
  251. package/dist/cjs/components/sheet.js.map +4 -4
  252. package/dist/cjs/components/shell.context.js +1 -1
  253. package/dist/cjs/components/shell.context.js.map +2 -2
  254. package/dist/cjs/components/shell.hooks.js.map +1 -1
  255. package/dist/cjs/components/shell.js +1 -1
  256. package/dist/cjs/components/shell.js.map +3 -3
  257. package/dist/cjs/components/shell.types.d.ts +1 -1
  258. package/dist/cjs/components/shell.types.d.ts.map +1 -1
  259. package/dist/cjs/components/shell.types.js.map +1 -1
  260. package/dist/cjs/components/sidebar.d.ts +2 -92
  261. package/dist/cjs/components/sidebar.d.ts.map +1 -1
  262. package/dist/cjs/components/sidebar.js +1 -1
  263. package/dist/cjs/components/sidebar.js.map +4 -4
  264. package/dist/cjs/components/slider.js.map +1 -1
  265. package/dist/cjs/components/slider.props.js.map +1 -1
  266. package/dist/cjs/components/switch.d.ts.map +1 -1
  267. package/dist/cjs/components/switch.js +1 -1
  268. package/dist/cjs/components/switch.js.map +3 -3
  269. package/dist/cjs/components/switch.props.d.ts +0 -18
  270. package/dist/cjs/components/switch.props.d.ts.map +1 -1
  271. package/dist/cjs/components/switch.props.js +1 -1
  272. package/dist/cjs/components/switch.props.js.map +3 -3
  273. package/dist/cjs/components/tab-nav.d.ts.map +1 -1
  274. package/dist/cjs/components/tab-nav.js +1 -1
  275. package/dist/cjs/components/tab-nav.js.map +4 -4
  276. package/dist/cjs/components/tab-nav.props.js +1 -1
  277. package/dist/cjs/components/tab-nav.props.js.map +3 -3
  278. package/dist/cjs/components/tabs.d.ts.map +1 -1
  279. package/dist/cjs/components/tabs.js +1 -1
  280. package/dist/cjs/components/tabs.js.map +4 -4
  281. package/dist/cjs/components/tabs.props.js +1 -1
  282. package/dist/cjs/components/tabs.props.js.map +3 -3
  283. package/dist/cjs/components/text-area.d.ts.map +1 -1
  284. package/dist/cjs/components/text-area.js +1 -1
  285. package/dist/cjs/components/text-area.js.map +4 -4
  286. package/dist/cjs/components/text-area.props.d.ts +1 -12
  287. package/dist/cjs/components/text-area.props.d.ts.map +1 -1
  288. package/dist/cjs/components/text-area.props.js +1 -1
  289. package/dist/cjs/components/text-area.props.js.map +4 -4
  290. package/dist/cjs/components/text-field.d.ts.map +1 -1
  291. package/dist/cjs/components/text-field.js +2 -2
  292. package/dist/cjs/components/text-field.js.map +4 -4
  293. package/dist/cjs/components/text-field.props.d.ts +1 -12
  294. package/dist/cjs/components/text-field.props.d.ts.map +1 -1
  295. package/dist/cjs/components/text-field.props.js +1 -1
  296. package/dist/cjs/components/text-field.props.js.map +4 -4
  297. package/dist/cjs/components/text.js.map +1 -1
  298. package/dist/cjs/components/text.props.js.map +1 -1
  299. package/dist/cjs/components/theme-panel.d.ts.map +1 -1
  300. package/dist/cjs/components/theme-panel.js +3 -3
  301. package/dist/cjs/components/theme-panel.js.map +4 -4
  302. package/dist/cjs/components/theme.d.ts +0 -3
  303. package/dist/cjs/components/theme.d.ts.map +1 -1
  304. package/dist/cjs/components/theme.js +1 -1
  305. package/dist/cjs/components/theme.js.map +4 -4
  306. package/dist/cjs/components/theme.props.d.ts +1 -19
  307. package/dist/cjs/components/theme.props.d.ts.map +1 -1
  308. package/dist/cjs/components/theme.props.js +1 -1
  309. package/dist/cjs/components/theme.props.js.map +3 -3
  310. package/dist/cjs/components/toggle-button.d.ts.map +1 -1
  311. package/dist/cjs/components/toggle-button.js +3 -3
  312. package/dist/cjs/components/toggle-button.js.map +4 -4
  313. package/dist/cjs/components/toggle-icon-button.d.ts.map +1 -1
  314. package/dist/cjs/components/toggle-icon-button.js +3 -3
  315. package/dist/cjs/components/toggle-icon-button.js.map +4 -4
  316. package/dist/cjs/components/toolbar.d.ts +1 -1
  317. package/dist/cjs/components/toolbar.d.ts.map +1 -1
  318. package/dist/cjs/components/toolbar.js +2 -2
  319. package/dist/cjs/components/toolbar.js.map +4 -4
  320. package/dist/cjs/components/tooltip.js +1 -1
  321. package/dist/cjs/components/tooltip.js.map +4 -4
  322. package/dist/cjs/components/virtual-menu.js +1 -1
  323. package/dist/cjs/components/virtual-menu.js.map +4 -4
  324. package/dist/cjs/helpers/index.js +4 -4
  325. package/dist/cjs/helpers/index.js.map +3 -3
  326. package/dist/cjs/helpers/map-prop-values.d.ts +1 -4
  327. package/dist/cjs/helpers/map-prop-values.d.ts.map +1 -1
  328. package/dist/cjs/helpers/map-prop-values.js +1 -1
  329. package/dist/cjs/helpers/map-prop-values.js.map +3 -3
  330. package/dist/cjs/hooks/use-breakpoint.js.map +1 -1
  331. package/dist/cjs/index.js +7 -7
  332. package/dist/cjs/index.js.map +4 -4
  333. package/dist/cjs/props/color.prop.d.ts.map +1 -1
  334. package/dist/cjs/props/color.prop.js.map +2 -2
  335. package/dist/cjs/props/index.d.ts +0 -1
  336. package/dist/cjs/props/index.d.ts.map +1 -1
  337. package/dist/cjs/props/index.js +1 -1
  338. package/dist/cjs/props/index.js.map +4 -4
  339. package/dist/esm/chunk-23WDP4JG.js +2 -0
  340. package/dist/esm/chunk-23WDP4JG.js.map +7 -0
  341. package/dist/esm/{chunk-K7BWSYVP.js → chunk-2IPVLV6B.js} +2 -2
  342. package/dist/esm/{chunk-SQ4BU4GH.js → chunk-2NNB4ZZ5.js} +2 -2
  343. package/dist/esm/{chunk-5NARBZRI.js → chunk-2PO6TZ7L.js} +2 -2
  344. package/dist/esm/{chunk-5NARBZRI.js.map → chunk-2PO6TZ7L.js.map} +1 -1
  345. package/dist/esm/{chunk-JXVUTFQN.js → chunk-2XSRO44Q.js} +2 -2
  346. package/dist/esm/{chunk-Z4DTHR2S.js → chunk-34KVYDF6.js} +1 -1
  347. package/dist/esm/{chunk-Z4DTHR2S.js.map → chunk-34KVYDF6.js.map} +2 -2
  348. package/dist/esm/{chunk-KXSMY4ZF.js → chunk-35KS5AQE.js} +2 -2
  349. package/dist/esm/chunk-3OABA7AF.js +2 -0
  350. package/dist/esm/chunk-3OABA7AF.js.map +7 -0
  351. package/dist/esm/chunk-3PT3AOD5.js +2 -0
  352. package/dist/esm/chunk-3PT3AOD5.js.map +7 -0
  353. package/dist/esm/{chunk-A2XVR7GL.js → chunk-3PTKPDSA.js} +2 -2
  354. package/dist/esm/chunk-3PTKPDSA.js.map +7 -0
  355. package/dist/esm/chunk-4D7OU2UA.js +2 -0
  356. package/dist/esm/chunk-4D7OU2UA.js.map +7 -0
  357. package/dist/esm/chunk-4FQLRQKJ.js +2 -0
  358. package/dist/esm/chunk-4FQLRQKJ.js.map +7 -0
  359. package/dist/esm/chunk-5AHQJB6H.js +2 -0
  360. package/dist/esm/{chunk-RWN22S44.js.map → chunk-5AHQJB6H.js.map} +2 -2
  361. package/dist/esm/chunk-5EAMAW2H.js +2 -0
  362. package/dist/esm/chunk-5EAMAW2H.js.map +7 -0
  363. package/dist/esm/chunk-5GYIQIPW.js +2 -0
  364. package/dist/esm/chunk-5GYIQIPW.js.map +7 -0
  365. package/dist/esm/chunk-5PG5YGIW.js +2 -0
  366. package/dist/esm/chunk-5PG5YGIW.js.map +7 -0
  367. package/dist/esm/{chunk-34UMKY2L.js → chunk-5RHODJDJ.js} +2 -2
  368. package/dist/esm/chunk-5ROQAZ7J.js +2 -0
  369. package/dist/esm/{chunk-GMHA5CFH.js.map → chunk-5ROQAZ7J.js.map} +2 -2
  370. package/dist/esm/chunk-5SQL4ZRC.js +2 -0
  371. package/dist/esm/chunk-5SQL4ZRC.js.map +7 -0
  372. package/dist/esm/{chunk-YA5DF67M.js → chunk-5YLKKQFK.js} +1 -1
  373. package/dist/esm/chunk-5YLKKQFK.js.map +7 -0
  374. package/dist/esm/{chunk-ZQVYY7UT.js → chunk-672FI4OH.js} +2 -2
  375. package/dist/esm/{chunk-BWVYB64R.js → chunk-6ERCPRXX.js} +2 -2
  376. package/dist/esm/chunk-7BE6N3KY.js +2 -0
  377. package/dist/esm/chunk-7BE6N3KY.js.map +7 -0
  378. package/dist/esm/{chunk-PXUQEA77.js → chunk-7CBZFHSQ.js} +2 -2
  379. package/dist/esm/{chunk-LOLLL7AV.js → chunk-7UW7D77E.js} +2 -2
  380. package/dist/esm/{chunk-62CJL5G7.js → chunk-A2NG5NRN.js} +2 -2
  381. package/dist/esm/{chunk-RUPET4E7.js → chunk-A6CDNZMT.js} +2 -2
  382. package/dist/esm/chunk-ABQHBDM4.js +2 -0
  383. package/dist/esm/chunk-ABQHBDM4.js.map +7 -0
  384. package/dist/esm/{chunk-43A5GUSI.js → chunk-AMP7O3DM.js} +2 -2
  385. package/dist/esm/{chunk-UBOOUDS4.js → chunk-AO32NT75.js} +2 -2
  386. package/dist/esm/chunk-B72RMGWZ.js +2 -0
  387. package/dist/esm/chunk-B72RMGWZ.js.map +7 -0
  388. package/dist/esm/{chunk-HFVD7W6R.js → chunk-BFLO4IVZ.js} +2 -2
  389. package/dist/esm/{chunk-SQZ5O7QS.js → chunk-BQE543O5.js} +2 -2
  390. package/dist/esm/chunk-C7JXVNMI.js +2 -0
  391. package/dist/esm/chunk-C7JXVNMI.js.map +7 -0
  392. package/dist/esm/chunk-CAUFRKTK.js +2 -0
  393. package/dist/esm/chunk-CAUFRKTK.js.map +7 -0
  394. package/dist/esm/chunk-CJ4UZDW5.js +2 -0
  395. package/dist/esm/chunk-CJ4UZDW5.js.map +7 -0
  396. package/dist/esm/{chunk-O2WPAUQN.js → chunk-CL6LRPCS.js} +2 -2
  397. package/dist/esm/chunk-CYXBQRQK.js +2 -0
  398. package/dist/esm/chunk-CYXBQRQK.js.map +7 -0
  399. package/dist/esm/chunk-DD5QHU6R.js +2 -0
  400. package/dist/esm/chunk-DD5QHU6R.js.map +7 -0
  401. package/dist/esm/chunk-DIGT74P3.js +2 -0
  402. package/dist/esm/chunk-DIGT74P3.js.map +7 -0
  403. package/dist/esm/{chunk-EUH5MK4Q.js → chunk-DQTJMIRO.js} +2 -2
  404. package/dist/esm/{chunk-GLERJXVS.js → chunk-DSB3TEAQ.js} +2 -2
  405. package/dist/esm/chunk-E5DJILUI.js +2 -0
  406. package/dist/esm/chunk-E5DJILUI.js.map +7 -0
  407. package/dist/esm/chunk-EJG2UNTM.js +2 -0
  408. package/dist/esm/chunk-EJG2UNTM.js.map +7 -0
  409. package/dist/esm/{chunk-HIBX2EXV.js → chunk-ELZEAEN2.js} +2 -2
  410. package/dist/esm/{chunk-IV4YJRVR.js → chunk-EVTNB4TB.js} +2 -2
  411. package/dist/esm/{chunk-LHGT24A5.js → chunk-F2XQYWBE.js} +2 -2
  412. package/dist/esm/chunk-F2XQYWBE.js.map +7 -0
  413. package/dist/esm/chunk-FK6F6ROH.js +2 -0
  414. package/dist/esm/chunk-FK6F6ROH.js.map +7 -0
  415. package/dist/esm/chunk-GS2QSZUR.js +2 -0
  416. package/dist/esm/chunk-GS2QSZUR.js.map +7 -0
  417. package/dist/esm/{chunk-SGUTNJUO.js → chunk-GVLTTTFL.js} +2 -2
  418. package/dist/esm/chunk-HI3JY3DJ.js +2 -0
  419. package/dist/esm/chunk-HI3JY3DJ.js.map +7 -0
  420. package/dist/esm/{chunk-CIKDGYX3.js → chunk-HVQ3SLQC.js} +2 -2
  421. package/dist/esm/chunk-I53SGTKV.js +2 -0
  422. package/dist/esm/chunk-I53SGTKV.js.map +7 -0
  423. package/dist/esm/chunk-IMYZP5OY.js +2 -0
  424. package/dist/esm/chunk-IMYZP5OY.js.map +7 -0
  425. package/dist/esm/{chunk-N6Q3L64W.js → chunk-IYFDCW7Y.js} +2 -2
  426. package/dist/esm/chunk-IYXR46Q6.js +5 -0
  427. package/dist/esm/chunk-IYXR46Q6.js.map +7 -0
  428. package/dist/esm/chunk-JGB6LNTP.js +2 -0
  429. package/dist/esm/chunk-JGB6LNTP.js.map +7 -0
  430. package/dist/esm/chunk-JLHJHYVQ.js +2 -0
  431. package/dist/esm/chunk-JLHJHYVQ.js.map +7 -0
  432. package/dist/esm/{chunk-7FC7HF76.js → chunk-JLI7WHV6.js} +2 -2
  433. package/dist/esm/{chunk-OW4KAIWF.js → chunk-JQURG6CB.js} +2 -2
  434. package/dist/esm/{chunk-GONBMSRL.js → chunk-JZD5FHSU.js} +2 -2
  435. package/dist/esm/{chunk-EUSMN3K7.js → chunk-K5SC3CZZ.js} +2 -2
  436. package/dist/esm/{chunk-UBWRIE4C.js → chunk-K7J23OPW.js} +2 -2
  437. package/dist/esm/{chunk-UTHTSYSL.js → chunk-K7XY7FLD.js} +2 -2
  438. package/dist/esm/chunk-K7XY7FLD.js.map +7 -0
  439. package/dist/esm/chunk-KA5XDSKH.js +2 -0
  440. package/dist/esm/chunk-KA5XDSKH.js.map +7 -0
  441. package/dist/esm/chunk-L6M2MI7Y.js +2 -0
  442. package/dist/esm/chunk-L6M2MI7Y.js.map +7 -0
  443. package/dist/esm/chunk-LRFAOQK6.js +2 -0
  444. package/dist/esm/chunk-LRFAOQK6.js.map +7 -0
  445. package/dist/esm/chunk-LXSARUXD.js +2 -0
  446. package/dist/esm/chunk-LXSARUXD.js.map +7 -0
  447. package/dist/esm/{chunk-ALG6R3ZX.js → chunk-MD3QCXRD.js} +2 -2
  448. package/dist/esm/chunk-MGQ4A2FI.js +2 -0
  449. package/dist/esm/{chunk-CMEKH4I5.js → chunk-MGSHX5N5.js} +2 -2
  450. package/dist/esm/chunk-MLJLEOZ5.js +2 -0
  451. package/dist/esm/chunk-MLJLEOZ5.js.map +7 -0
  452. package/dist/esm/chunk-MNC2O6QW.js +2 -0
  453. package/dist/esm/chunk-MNC2O6QW.js.map +7 -0
  454. package/dist/esm/chunk-MOMYWKIO.js +2 -0
  455. package/dist/esm/chunk-MOMYWKIO.js.map +7 -0
  456. package/dist/esm/{chunk-ADFUYK3U.js → chunk-MQT3YJKY.js} +2 -2
  457. package/dist/esm/chunk-MQT3YJKY.js.map +7 -0
  458. package/dist/esm/{chunk-ZE2GWHPY.js → chunk-MVW2SY4F.js} +2 -2
  459. package/dist/esm/{chunk-KJTEZVOF.js → chunk-O6K6RZXY.js} +2 -2
  460. package/dist/esm/{chunk-JUY7CBSL.js → chunk-PBFSBHBS.js} +2 -2
  461. package/dist/esm/{chunk-3HGHPAH4.js → chunk-PDBVZAUJ.js} +2 -2
  462. package/dist/esm/chunk-PRRJ4WRE.js +2 -0
  463. package/dist/esm/chunk-PRRJ4WRE.js.map +7 -0
  464. package/dist/esm/chunk-PSS45RHX.js +2 -0
  465. package/dist/esm/{chunk-4JNHUPIM.js.map → chunk-PSS45RHX.js.map} +3 -3
  466. package/dist/esm/chunk-PTEAQFHI.js +2 -0
  467. package/dist/esm/chunk-PTEAQFHI.js.map +7 -0
  468. package/dist/esm/chunk-QDW5ZG5E.js +1 -0
  469. package/dist/esm/chunk-QE2EF7A7.js +2 -0
  470. package/dist/esm/chunk-QE2EF7A7.js.map +7 -0
  471. package/dist/esm/{chunk-R2MQMCND.js → chunk-QJFAGWBO.js} +2 -2
  472. package/dist/esm/chunk-QJSSCW3B.js +2 -0
  473. package/dist/esm/chunk-QJSSCW3B.js.map +7 -0
  474. package/dist/esm/chunk-QPNYHS6A.js +2 -0
  475. package/dist/esm/chunk-QPNYHS6A.js.map +7 -0
  476. package/dist/esm/chunk-QWFFYUFH.js +2 -0
  477. package/dist/esm/chunk-QWFFYUFH.js.map +7 -0
  478. package/dist/esm/{chunk-JGR3L4SN.js → chunk-R4CN4Q3G.js} +2 -2
  479. package/dist/esm/chunk-RA4U6VVZ.js +2 -0
  480. package/dist/esm/chunk-RA4U6VVZ.js.map +7 -0
  481. package/dist/esm/{chunk-HJLBVNQE.js → chunk-RYURXQLJ.js} +2 -2
  482. package/dist/esm/{chunk-RUOOCYK4.js → chunk-S53ZQNHK.js} +2 -2
  483. package/dist/esm/chunk-SHFBYYEP.js +2 -0
  484. package/dist/esm/chunk-SHFBYYEP.js.map +7 -0
  485. package/dist/esm/{chunk-5G4WWJ4Z.js → chunk-T5DSQKKF.js} +2 -2
  486. package/dist/esm/{chunk-3XSB7YIM.js → chunk-TBZO22XK.js} +2 -2
  487. package/dist/esm/{chunk-C7UXUTUF.js → chunk-TGRRQHLQ.js} +2 -2
  488. package/dist/esm/{chunk-IVBKTHDM.js → chunk-TPHNDGSV.js} +2 -2
  489. package/dist/esm/chunk-TY3DIJFF.js +10 -0
  490. package/dist/esm/chunk-TY3DIJFF.js.map +7 -0
  491. package/dist/esm/chunk-UA6FP7HS.js +2 -0
  492. package/dist/esm/{chunk-6FLLFCBU.js → chunk-UBSLEGQZ.js} +2 -2
  493. package/dist/esm/chunk-UI2EFF6F.js +2 -0
  494. package/dist/esm/chunk-UI2EFF6F.js.map +7 -0
  495. package/dist/esm/chunk-ULSNYQOY.js +2 -0
  496. package/dist/esm/{chunk-XKBLNVOD.js.map → chunk-ULSNYQOY.js.map} +1 -1
  497. package/dist/esm/chunk-UPCRXJB2.js +2 -0
  498. package/dist/esm/chunk-UPCRXJB2.js.map +7 -0
  499. package/dist/esm/chunk-URLG45A4.js +2 -0
  500. package/dist/esm/chunk-URLG45A4.js.map +7 -0
  501. package/dist/esm/{chunk-LJXP6K5Y.js → chunk-V2TPYSZ2.js} +2 -2
  502. package/dist/esm/chunk-V7UP4SLZ.js +2 -0
  503. package/dist/esm/chunk-V7UP4SLZ.js.map +7 -0
  504. package/dist/esm/{chunk-TUKX2BRO.js → chunk-VASXAV62.js} +2 -2
  505. package/dist/esm/chunk-VASXAV62.js.map +7 -0
  506. package/dist/esm/chunk-VSSJTPBV.js +2 -0
  507. package/dist/esm/chunk-VSSJTPBV.js.map +7 -0
  508. package/dist/esm/chunk-W7VAP3WE.js +2 -0
  509. package/dist/esm/chunk-W7VAP3WE.js.map +7 -0
  510. package/dist/esm/chunk-WGNIFXUE.js +2 -0
  511. package/dist/esm/chunk-WGNIFXUE.js.map +7 -0
  512. package/dist/esm/chunk-WNSG5P3U.js +2 -0
  513. package/dist/esm/chunk-WNSG5P3U.js.map +7 -0
  514. package/dist/esm/{chunk-YLLCCUC7.js → chunk-X3UTLDGG.js} +2 -2
  515. package/dist/esm/chunk-XCDXQLWS.js +2 -0
  516. package/dist/esm/chunk-XCDXQLWS.js.map +7 -0
  517. package/dist/esm/{chunk-3UZHKW6I.js → chunk-XHF6RBOE.js} +2 -2
  518. package/dist/esm/{chunk-IPHKKZYE.js → chunk-XHKL4PG7.js} +2 -2
  519. package/dist/esm/chunk-XKAWVGBL.js +2 -0
  520. package/dist/esm/chunk-XKAWVGBL.js.map +7 -0
  521. package/dist/esm/{chunk-PAEHH3WS.js → chunk-XZ5XZS5O.js} +2 -2
  522. package/dist/esm/chunk-Y3FVBAN2.js +2 -0
  523. package/dist/esm/chunk-Y3FVBAN2.js.map +7 -0
  524. package/dist/esm/chunk-Y4IB7KDZ.js +5 -0
  525. package/dist/esm/chunk-Y4IB7KDZ.js.map +7 -0
  526. package/dist/esm/chunk-YKGLZEXX.js +2 -0
  527. package/dist/esm/{chunk-VBAXORVV.js.map → chunk-YKGLZEXX.js.map} +3 -3
  528. package/dist/esm/chunk-Z2LGVLUB.js +2 -0
  529. package/dist/esm/chunk-Z2LGVLUB.js.map +7 -0
  530. package/dist/esm/chunk-ZMFZYXLB.js +2 -0
  531. package/dist/esm/chunk-ZMFZYXLB.js.map +7 -0
  532. package/dist/esm/components/_internal/base-button.d.ts.map +1 -1
  533. package/dist/esm/components/_internal/base-button.js +1 -1
  534. package/dist/esm/components/_internal/base-button.props.d.ts +1 -8
  535. package/dist/esm/components/_internal/base-button.props.d.ts.map +1 -1
  536. package/dist/esm/components/_internal/base-button.props.js +1 -1
  537. package/dist/esm/components/_internal/base-checkbox.props.d.ts +2 -9
  538. package/dist/esm/components/_internal/base-checkbox.props.d.ts.map +1 -1
  539. package/dist/esm/components/_internal/base-checkbox.props.js +1 -1
  540. package/dist/esm/components/_internal/base-menu.props.d.ts +0 -28
  541. package/dist/esm/components/_internal/base-menu.props.d.ts.map +1 -1
  542. package/dist/esm/components/_internal/base-menu.props.js +1 -1
  543. package/dist/esm/components/_internal/base-menu.utils.d.ts +2 -9
  544. package/dist/esm/components/_internal/base-menu.utils.d.ts.map +1 -1
  545. package/dist/esm/components/_internal/base-menu.utils.js +1 -1
  546. package/dist/esm/components/_internal/base-radio.props.d.ts +1 -8
  547. package/dist/esm/components/_internal/base-radio.props.d.ts.map +1 -1
  548. package/dist/esm/components/_internal/base-radio.props.js +1 -1
  549. package/dist/esm/components/_internal/base-tab-list.props.d.ts +0 -6
  550. package/dist/esm/components/_internal/base-tab-list.props.d.ts.map +1 -1
  551. package/dist/esm/components/_internal/base-tab-list.props.js +1 -1
  552. package/dist/esm/components/_internal/menu-context.js +1 -1
  553. package/dist/esm/components/_internal/pane-chrome.js +1 -1
  554. package/dist/esm/components/_internal/shell-bottom.js +1 -1
  555. package/dist/esm/components/_internal/shell-inspector.js +1 -1
  556. package/dist/esm/components/_internal/shell-pane.d.ts +2 -3
  557. package/dist/esm/components/_internal/shell-pane.d.ts.map +1 -1
  558. package/dist/esm/components/_internal/shell-pane.js +1 -1
  559. package/dist/esm/components/_internal/shell-sidebar.d.ts +0 -4
  560. package/dist/esm/components/_internal/shell-sidebar.d.ts.map +1 -1
  561. package/dist/esm/components/_internal/shell-sidebar.js +1 -1
  562. package/dist/esm/components/_internal/shell-store.d.ts +4 -4
  563. package/dist/esm/components/_internal/shell-store.d.ts.map +1 -1
  564. package/dist/esm/components/_internal/shell-store.js +1 -1
  565. package/dist/esm/components/accordion.d.ts.map +1 -1
  566. package/dist/esm/components/accordion.js +1 -1
  567. package/dist/esm/components/accordion.props.d.ts +4 -15
  568. package/dist/esm/components/accordion.props.d.ts.map +1 -1
  569. package/dist/esm/components/accordion.props.js +1 -1
  570. package/dist/esm/components/alert-dialog.d.ts.map +1 -1
  571. package/dist/esm/components/alert-dialog.js +1 -1
  572. package/dist/esm/components/alert-dialog.props.d.ts +0 -5
  573. package/dist/esm/components/alert-dialog.props.d.ts.map +1 -1
  574. package/dist/esm/components/alert-dialog.props.js +1 -1
  575. package/dist/esm/components/avatar.d.ts.map +1 -1
  576. package/dist/esm/components/avatar.js +1 -1
  577. package/dist/esm/components/avatar.props.d.ts +2 -17
  578. package/dist/esm/components/avatar.props.d.ts.map +1 -1
  579. package/dist/esm/components/avatar.props.js +1 -1
  580. package/dist/esm/components/badge.d.ts.map +1 -1
  581. package/dist/esm/components/badge.js +1 -1
  582. package/dist/esm/components/badge.props.d.ts +1 -16
  583. package/dist/esm/components/badge.props.d.ts.map +1 -1
  584. package/dist/esm/components/badge.props.js +1 -1
  585. package/dist/esm/components/blockquote.js +1 -1
  586. package/dist/esm/components/blockquote.props.d.ts +1 -1
  587. package/dist/esm/components/blockquote.props.js +1 -1
  588. package/dist/esm/components/box.js +1 -1
  589. package/dist/esm/components/button.d.ts +1 -38
  590. package/dist/esm/components/button.d.ts.map +1 -1
  591. package/dist/esm/components/button.js +1 -1
  592. package/dist/esm/components/button.props.js +1 -1
  593. package/dist/esm/components/card.d.ts.map +1 -1
  594. package/dist/esm/components/card.js +1 -1
  595. package/dist/esm/components/card.props.d.ts +1 -8
  596. package/dist/esm/components/card.props.d.ts.map +1 -1
  597. package/dist/esm/components/card.props.js +1 -1
  598. package/dist/esm/components/chatbar.d.ts +1 -3
  599. package/dist/esm/components/chatbar.d.ts.map +1 -1
  600. package/dist/esm/components/chatbar.js +1 -1
  601. package/dist/esm/components/checkbox-cards.d.ts.map +1 -1
  602. package/dist/esm/components/checkbox-cards.js +1 -1
  603. package/dist/esm/components/checkbox-cards.props.d.ts +2 -10
  604. package/dist/esm/components/checkbox-cards.props.d.ts.map +1 -1
  605. package/dist/esm/components/checkbox-cards.props.js +1 -1
  606. package/dist/esm/components/checkbox-group.js +1 -1
  607. package/dist/esm/components/checkbox-group.props.d.ts +2 -8
  608. package/dist/esm/components/checkbox-group.props.d.ts.map +1 -1
  609. package/dist/esm/components/checkbox-group.props.js +1 -1
  610. package/dist/esm/components/checkbox.d.ts.map +1 -1
  611. package/dist/esm/components/checkbox.js +1 -1
  612. package/dist/esm/components/checkbox.props.js +1 -1
  613. package/dist/esm/components/code.js +1 -1
  614. package/dist/esm/components/code.props.d.ts +1 -1
  615. package/dist/esm/components/code.props.js +1 -1
  616. package/dist/esm/components/combobox.d.ts.map +1 -1
  617. package/dist/esm/components/combobox.js +1 -1
  618. package/dist/esm/components/combobox.props.d.ts +1 -20
  619. package/dist/esm/components/combobox.props.d.ts.map +1 -1
  620. package/dist/esm/components/combobox.props.js +1 -1
  621. package/dist/esm/components/container.js +1 -1
  622. package/dist/esm/components/context-menu.d.ts.map +1 -1
  623. package/dist/esm/components/context-menu.js +1 -1
  624. package/dist/esm/components/context-menu.props.js +1 -1
  625. package/dist/esm/components/data-list.js +1 -1
  626. package/dist/esm/components/data-list.props.js +1 -1
  627. package/dist/esm/components/dialog.d.ts.map +1 -1
  628. package/dist/esm/components/dialog.js +1 -1
  629. package/dist/esm/components/dialog.props.d.ts +0 -5
  630. package/dist/esm/components/dialog.props.d.ts.map +1 -1
  631. package/dist/esm/components/dialog.props.js +1 -1
  632. package/dist/esm/components/dropdown-menu.d.ts.map +1 -1
  633. package/dist/esm/components/dropdown-menu.js +1 -1
  634. package/dist/esm/components/dropdown-menu.props.js +1 -1
  635. package/dist/esm/components/em.js +1 -1
  636. package/dist/esm/components/flex.js +1 -1
  637. package/dist/esm/components/grid.js +1 -1
  638. package/dist/esm/components/heading.js +1 -1
  639. package/dist/esm/components/heading.props.js +1 -1
  640. package/dist/esm/components/hover-card.js +1 -1
  641. package/dist/esm/components/icon-button.d.ts +1 -1
  642. package/dist/esm/components/icon-button.d.ts.map +1 -1
  643. package/dist/esm/components/icon-button.js +1 -1
  644. package/dist/esm/components/icon-button.props.js +1 -1
  645. package/dist/esm/components/image.d.ts +0 -5
  646. package/dist/esm/components/image.d.ts.map +1 -1
  647. package/dist/esm/components/image.js +1 -1
  648. package/dist/esm/components/index.d.ts +0 -3
  649. package/dist/esm/components/index.d.ts.map +1 -1
  650. package/dist/esm/components/index.js +1 -1
  651. package/dist/esm/components/inset.js +1 -1
  652. package/dist/esm/components/kbd.js +1 -1
  653. package/dist/esm/components/kbd.props.d.ts +2 -4
  654. package/dist/esm/components/kbd.props.d.ts.map +1 -1
  655. package/dist/esm/components/kbd.props.js +1 -1
  656. package/dist/esm/components/link.js +1 -1
  657. package/dist/esm/components/link.props.d.ts +1 -1
  658. package/dist/esm/components/link.props.js +1 -1
  659. package/dist/esm/components/message-scroller.js +1 -1
  660. package/dist/esm/components/navbar.js +1 -1
  661. package/dist/esm/components/notice.js +1 -1
  662. package/dist/esm/components/popover.d.ts.map +1 -1
  663. package/dist/esm/components/popover.js +1 -1
  664. package/dist/esm/components/popover.props.d.ts +0 -6
  665. package/dist/esm/components/popover.props.d.ts.map +1 -1
  666. package/dist/esm/components/popover.props.js +1 -1
  667. package/dist/esm/components/progress.js +1 -1
  668. package/dist/esm/components/progress.props.js +1 -1
  669. package/dist/esm/components/quote.js +1 -1
  670. package/dist/esm/components/radio-cards.d.ts.map +1 -1
  671. package/dist/esm/components/radio-cards.js +1 -1
  672. package/dist/esm/components/radio-cards.props.d.ts +2 -10
  673. package/dist/esm/components/radio-cards.props.d.ts.map +1 -1
  674. package/dist/esm/components/radio-cards.props.js +1 -1
  675. package/dist/esm/components/radio-group.js +1 -1
  676. package/dist/esm/components/radio-group.props.d.ts +1 -3
  677. package/dist/esm/components/radio-group.props.d.ts.map +1 -1
  678. package/dist/esm/components/radio-group.props.js +1 -1
  679. package/dist/esm/components/radio.d.ts.map +1 -1
  680. package/dist/esm/components/radio.js +1 -1
  681. package/dist/esm/components/radio.props.js +1 -1
  682. package/dist/esm/components/schemas/base-button.schema.d.ts +0 -7
  683. package/dist/esm/components/schemas/base-button.schema.d.ts.map +1 -1
  684. package/dist/esm/components/schemas/base-button.schema.js +1 -1
  685. package/dist/esm/components/schemas/button.schema.d.ts +7 -73
  686. package/dist/esm/components/schemas/button.schema.d.ts.map +1 -1
  687. package/dist/esm/components/schemas/button.schema.js +1 -1
  688. package/dist/esm/components/schemas/icon-button.schema.d.ts +0 -7
  689. package/dist/esm/components/schemas/icon-button.schema.d.ts.map +1 -1
  690. package/dist/esm/components/schemas/icon-button.schema.js +1 -1
  691. package/dist/esm/components/schemas/index.js +1 -1
  692. package/dist/esm/components/schemas/shell.schema.d.ts +5 -29
  693. package/dist/esm/components/schemas/shell.schema.d.ts.map +1 -1
  694. package/dist/esm/components/schemas/shell.schema.js +1 -1
  695. package/dist/esm/components/schemas/toggle-button.schema.d.ts +7 -73
  696. package/dist/esm/components/schemas/toggle-button.schema.d.ts.map +1 -1
  697. package/dist/esm/components/schemas/toggle-button.schema.js +1 -1
  698. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts +0 -7
  699. package/dist/esm/components/schemas/toggle-icon-button.schema.d.ts.map +1 -1
  700. package/dist/esm/components/schemas/toggle-icon-button.schema.js +1 -1
  701. package/dist/esm/components/scroll-area.js +1 -1
  702. package/dist/esm/components/section.js +1 -1
  703. package/dist/esm/components/segmented-control.d.ts.map +1 -1
  704. package/dist/esm/components/segmented-control.js +1 -1
  705. package/dist/esm/components/segmented-control.props.d.ts +0 -11
  706. package/dist/esm/components/segmented-control.props.d.ts.map +1 -1
  707. package/dist/esm/components/segmented-control.props.js +1 -1
  708. package/dist/esm/components/select.d.ts.map +1 -1
  709. package/dist/esm/components/select.js +1 -1
  710. package/dist/esm/components/select.props.d.ts +1 -14
  711. package/dist/esm/components/select.props.d.ts.map +1 -1
  712. package/dist/esm/components/select.props.js +1 -1
  713. package/dist/esm/components/separator.js +1 -1
  714. package/dist/esm/components/separator.props.js +1 -1
  715. package/dist/esm/components/sheet.d.ts +1 -2
  716. package/dist/esm/components/sheet.d.ts.map +1 -1
  717. package/dist/esm/components/sheet.js +1 -1
  718. package/dist/esm/components/shell.context.js +1 -1
  719. package/dist/esm/components/shell.hooks.js +1 -1
  720. package/dist/esm/components/shell.js +1 -1
  721. package/dist/esm/components/shell.types.d.ts +1 -1
  722. package/dist/esm/components/shell.types.d.ts.map +1 -1
  723. package/dist/esm/components/shell.types.js +1 -1
  724. package/dist/esm/components/sidebar.d.ts +2 -92
  725. package/dist/esm/components/sidebar.d.ts.map +1 -1
  726. package/dist/esm/components/sidebar.js +1 -1
  727. package/dist/esm/components/skeleton.js +1 -1
  728. package/dist/esm/components/slider.js +1 -1
  729. package/dist/esm/components/slider.props.js +1 -1
  730. package/dist/esm/components/spinner.js +1 -1
  731. package/dist/esm/components/strong.js +1 -1
  732. package/dist/esm/components/switch.d.ts.map +1 -1
  733. package/dist/esm/components/switch.js +1 -1
  734. package/dist/esm/components/switch.props.d.ts +0 -18
  735. package/dist/esm/components/switch.props.d.ts.map +1 -1
  736. package/dist/esm/components/switch.props.js +1 -1
  737. package/dist/esm/components/tab-nav.d.ts.map +1 -1
  738. package/dist/esm/components/tab-nav.js +1 -1
  739. package/dist/esm/components/tab-nav.props.js +1 -1
  740. package/dist/esm/components/table.js +1 -1
  741. package/dist/esm/components/tabs.d.ts.map +1 -1
  742. package/dist/esm/components/tabs.js +1 -1
  743. package/dist/esm/components/tabs.props.js +1 -1
  744. package/dist/esm/components/text-area.d.ts.map +1 -1
  745. package/dist/esm/components/text-area.js +1 -1
  746. package/dist/esm/components/text-area.props.d.ts +1 -12
  747. package/dist/esm/components/text-area.props.d.ts.map +1 -1
  748. package/dist/esm/components/text-area.props.js +1 -1
  749. package/dist/esm/components/text-field.d.ts.map +1 -1
  750. package/dist/esm/components/text-field.js +1 -1
  751. package/dist/esm/components/text-field.props.d.ts +1 -12
  752. package/dist/esm/components/text-field.props.d.ts.map +1 -1
  753. package/dist/esm/components/text-field.props.js +1 -1
  754. package/dist/esm/components/text.js +1 -1
  755. package/dist/esm/components/text.props.js +1 -1
  756. package/dist/esm/components/theme-panel.d.ts.map +1 -1
  757. package/dist/esm/components/theme-panel.js +1 -1
  758. package/dist/esm/components/theme.d.ts +0 -3
  759. package/dist/esm/components/theme.d.ts.map +1 -1
  760. package/dist/esm/components/theme.js +1 -1
  761. package/dist/esm/components/theme.props.d.ts +1 -19
  762. package/dist/esm/components/theme.props.d.ts.map +1 -1
  763. package/dist/esm/components/theme.props.js +1 -1
  764. package/dist/esm/components/toggle-button.d.ts.map +1 -1
  765. package/dist/esm/components/toggle-button.js +1 -1
  766. package/dist/esm/components/toggle-icon-button.d.ts.map +1 -1
  767. package/dist/esm/components/toggle-icon-button.js +1 -1
  768. package/dist/esm/components/toolbar.d.ts +1 -1
  769. package/dist/esm/components/toolbar.d.ts.map +1 -1
  770. package/dist/esm/components/toolbar.js +1 -1
  771. package/dist/esm/components/tooltip.js +1 -1
  772. package/dist/esm/components/virtual-menu.js +1 -1
  773. package/dist/esm/helpers/extract-props.js +1 -1
  774. package/dist/esm/helpers/get-margin-styles.js +1 -1
  775. package/dist/esm/helpers/get-responsive-styles.js +1 -1
  776. package/dist/esm/helpers/index.js +1 -1
  777. package/dist/esm/helpers/map-prop-values.d.ts +1 -4
  778. package/dist/esm/helpers/map-prop-values.d.ts.map +1 -1
  779. package/dist/esm/helpers/map-prop-values.js +1 -1
  780. package/dist/esm/hooks/use-breakpoint.js +1 -1
  781. package/dist/esm/index.js +1 -1
  782. package/dist/esm/props/color.prop.d.ts.map +1 -1
  783. package/dist/esm/props/color.prop.js +1 -1
  784. package/dist/esm/props/index.d.ts +0 -1
  785. package/dist/esm/props/index.d.ts.map +1 -1
  786. package/dist/esm/props/index.js +1 -1
  787. package/package.json +1 -2
  788. package/schemas/base-button.json +1 -16
  789. package/schemas/button.json +20 -233
  790. package/schemas/icon-button.json +1 -16
  791. package/schemas/index.json +53 -543
  792. package/schemas/shell-root.json +10 -0
  793. package/schemas/shell-sidebar.json +0 -29
  794. package/schemas/toggle-button.json +20 -233
  795. package/schemas/toggle-icon-button.json +1 -16
  796. package/src/components/_internal/base-button.css +7 -110
  797. package/src/components/_internal/base-button.props.ts +2 -6
  798. package/src/components/_internal/base-button.tsx +1 -6
  799. package/src/components/_internal/base-card.css +12 -54
  800. package/src/components/_internal/base-checkbox.css +9 -120
  801. package/src/components/_internal/base-checkbox.props.ts +3 -7
  802. package/src/components/_internal/base-dialog.css +5 -24
  803. package/src/components/_internal/base-menu.css +5 -44
  804. package/src/components/_internal/base-menu.props.ts +0 -20
  805. package/src/components/_internal/base-menu.utils.tsx +3 -13
  806. package/src/components/_internal/base-radio.css +8 -115
  807. package/src/components/_internal/base-radio.props.ts +2 -6
  808. package/src/components/_internal/base-sidebar-menu.css +0 -35
  809. package/src/components/_internal/base-sidebar.css +0 -37
  810. package/src/components/_internal/base-tab-list.css +8 -14
  811. package/src/components/_internal/base-tab-list.props.ts +3 -6
  812. package/src/components/_internal/shell-pane.tsx +2 -3
  813. package/src/components/_internal/shell-sidebar.tsx +5 -31
  814. package/src/components/_internal/shell-store.tsx +4 -4
  815. package/src/components/accordion.css +42 -95
  816. package/src/components/accordion.props.tsx +6 -13
  817. package/src/components/accordion.tsx +2 -6
  818. package/src/components/alert-dialog.props.tsx +0 -1
  819. package/src/components/alert-dialog.tsx +1 -13
  820. package/src/components/avatar.css +4 -31
  821. package/src/components/avatar.props.tsx +3 -13
  822. package/src/components/avatar.tsx +0 -4
  823. package/src/components/badge.css +1 -38
  824. package/src/components/badge.props.tsx +2 -12
  825. package/src/components/badge.tsx +0 -11
  826. package/src/components/blockquote.props.tsx +1 -1
  827. package/src/components/button.tsx +4 -84
  828. package/src/components/card.props.tsx +2 -6
  829. package/src/components/card.tsx +2 -3
  830. package/src/components/chatbar.css +6 -24
  831. package/src/components/chatbar.tsx +16 -31
  832. package/src/components/checkbox-cards.css +0 -1
  833. package/src/components/checkbox-cards.props.tsx +5 -9
  834. package/src/components/checkbox-cards.tsx +2 -6
  835. package/src/components/checkbox.tsx +0 -2
  836. package/src/components/code.css +20 -0
  837. package/src/components/code.props.tsx +1 -1
  838. package/src/components/combobox.css +14 -13
  839. package/src/components/combobox.props.tsx +2 -15
  840. package/src/components/combobox.tsx +7 -23
  841. package/src/components/context-menu.tsx +9 -18
  842. package/src/components/dialog.props.tsx +0 -3
  843. package/src/components/dialog.tsx +1 -13
  844. package/src/components/dropdown-menu.css +0 -21
  845. package/src/components/dropdown-menu.tsx +9 -20
  846. package/src/components/icon-button.tsx +1 -1
  847. package/src/components/image.css +2 -11
  848. package/src/components/image.tsx +2 -10
  849. package/src/components/index.css +0 -5
  850. package/src/components/index.tsx +0 -3
  851. package/src/components/kbd.css +37 -13
  852. package/src/components/kbd.props.tsx +2 -4
  853. package/src/components/link.props.tsx +1 -1
  854. package/src/components/popover.css +2 -6
  855. package/src/components/popover.props.tsx +3 -6
  856. package/src/components/popover.tsx +2 -6
  857. package/src/components/progress.css +12 -13
  858. package/src/components/radio-cards.css +0 -2
  859. package/src/components/radio-cards.props.tsx +5 -9
  860. package/src/components/radio-cards.tsx +2 -6
  861. package/src/components/radio-group.props.tsx +1 -2
  862. package/src/components/radio.tsx +1 -2
  863. package/src/components/reset.css +3 -16
  864. package/src/components/schemas/base-button.schema.ts +1 -21
  865. package/src/components/schemas/button.schema.ts +15 -94
  866. package/src/components/schemas/shell.schema.ts +2 -3
  867. package/src/components/scroll-area.css +0 -11
  868. package/src/components/segmented-control.css +11 -23
  869. package/src/components/segmented-control.props.tsx +0 -6
  870. package/src/components/segmented-control.tsx +1 -8
  871. package/src/components/select.css +81 -93
  872. package/src/components/select.props.tsx +2 -9
  873. package/src/components/select.tsx +2 -7
  874. package/src/components/sheet.css +0 -71
  875. package/src/components/sheet.tsx +5 -14
  876. package/src/components/shell.context.tsx +2 -2
  877. package/src/components/shell.css +7 -64
  878. package/src/components/shell.tsx +2 -2
  879. package/src/components/shell.types.ts +1 -1
  880. package/src/components/sidebar.css +78 -341
  881. package/src/components/sidebar.tsx +3 -244
  882. package/src/components/slider.css +12 -15
  883. package/src/components/spinner.css +2 -2
  884. package/src/components/switch.css +3 -55
  885. package/src/components/switch.props.tsx +0 -6
  886. package/src/components/switch.tsx +1 -4
  887. package/src/components/tab-nav.tsx +2 -5
  888. package/src/components/tabs.css +0 -2
  889. package/src/components/tabs.tsx +2 -5
  890. package/src/components/text-area.css +6 -13
  891. package/src/components/text-area.props.tsx +2 -9
  892. package/src/components/text-area.tsx +4 -9
  893. package/src/components/text-field.css +36 -44
  894. package/src/components/text-field.props.tsx +2 -9
  895. package/src/components/text-field.tsx +4 -9
  896. package/src/components/theme-panel.tsx +9 -13
  897. package/src/components/theme.props.tsx +1 -17
  898. package/src/components/theme.tsx +1 -26
  899. package/src/components/toggle-button.tsx +1 -1
  900. package/src/components/toggle-icon-button.tsx +6 -6
  901. package/src/components/toolbar.tsx +1 -4
  902. package/src/components/tooltip.css +1 -21
  903. package/src/helpers/map-prop-values.ts +1 -7
  904. package/src/props/color.prop.ts +1 -2
  905. package/src/props/index.ts +0 -1
  906. package/src/styles/tokens/base.css +0 -1
  907. package/src/styles/tokens/color.css +2 -32
  908. package/src/styles/tokens/constants.css +0 -90
  909. package/styles.css +963 -3146
  910. package/tokens/base.css +2 -110
  911. package/tokens.css +2 -155
  912. package/dist/cjs/components/app-bar.d.ts +0 -50
  913. package/dist/cjs/components/app-bar.d.ts.map +0 -1
  914. package/dist/cjs/components/app-bar.js +0 -2
  915. package/dist/cjs/components/app-bar.js.map +0 -7
  916. package/dist/cjs/components/callout.d.ts +0 -23
  917. package/dist/cjs/components/callout.d.ts.map +0 -1
  918. package/dist/cjs/components/callout.js +0 -2
  919. package/dist/cjs/components/callout.js.map +0 -7
  920. package/dist/cjs/components/callout.props.d.ts +0 -40
  921. package/dist/cjs/components/callout.props.d.ts.map +0 -1
  922. package/dist/cjs/components/callout.props.js +0 -2
  923. package/dist/cjs/components/callout.props.js.map +0 -7
  924. package/dist/cjs/components/sidebar.props.d.ts +0 -62
  925. package/dist/cjs/components/sidebar.props.d.ts.map +0 -1
  926. package/dist/cjs/components/sidebar.props.js +0 -2
  927. package/dist/cjs/components/sidebar.props.js.map +0 -7
  928. package/dist/cjs/components/user-card.d.ts +0 -13
  929. package/dist/cjs/components/user-card.d.ts.map +0 -1
  930. package/dist/cjs/components/user-card.js +0 -2
  931. package/dist/cjs/components/user-card.js.map +0 -7
  932. package/dist/cjs/components/user-card.props.d.ts +0 -60
  933. package/dist/cjs/components/user-card.props.d.ts.map +0 -1
  934. package/dist/cjs/components/user-card.props.js +0 -2
  935. package/dist/cjs/components/user-card.props.js.map +0 -7
  936. package/dist/cjs/helpers/parse-variant.d.ts +0 -8
  937. package/dist/cjs/helpers/parse-variant.d.ts.map +0 -1
  938. package/dist/cjs/helpers/parse-variant.js +0 -2
  939. package/dist/cjs/helpers/parse-variant.js.map +0 -7
  940. package/dist/cjs/helpers/use-deprecation-warning.d.ts +0 -10
  941. package/dist/cjs/helpers/use-deprecation-warning.d.ts.map +0 -1
  942. package/dist/cjs/helpers/use-deprecation-warning.js +0 -2
  943. package/dist/cjs/helpers/use-deprecation-warning.js.map +0 -7
  944. package/dist/esm/chunk-27SCVCQY.js +0 -2
  945. package/dist/esm/chunk-27SCVCQY.js.map +0 -7
  946. package/dist/esm/chunk-2C5WLKEZ.js +0 -2
  947. package/dist/esm/chunk-2C5WLKEZ.js.map +0 -7
  948. package/dist/esm/chunk-2DKLJMUU.js +0 -2
  949. package/dist/esm/chunk-2DKLJMUU.js.map +0 -7
  950. package/dist/esm/chunk-2EQWBT2S.js +0 -2
  951. package/dist/esm/chunk-2T74JEVN.js +0 -2
  952. package/dist/esm/chunk-2T74JEVN.js.map +0 -7
  953. package/dist/esm/chunk-3M73GWN5.js +0 -2
  954. package/dist/esm/chunk-3M73GWN5.js.map +0 -7
  955. package/dist/esm/chunk-3Q3EOUGJ.js +0 -2
  956. package/dist/esm/chunk-3Q3EOUGJ.js.map +0 -7
  957. package/dist/esm/chunk-3TIO3EMN.js +0 -2
  958. package/dist/esm/chunk-3TIO3EMN.js.map +0 -7
  959. package/dist/esm/chunk-3WCSLQNH.js +0 -2
  960. package/dist/esm/chunk-3WCSLQNH.js.map +0 -7
  961. package/dist/esm/chunk-45AMHIBO.js +0 -2
  962. package/dist/esm/chunk-45AMHIBO.js.map +0 -7
  963. package/dist/esm/chunk-47CEZJM2.js +0 -2
  964. package/dist/esm/chunk-47CEZJM2.js.map +0 -7
  965. package/dist/esm/chunk-4BPRLR6C.js +0 -2
  966. package/dist/esm/chunk-4BPRLR6C.js.map +0 -7
  967. package/dist/esm/chunk-4D5LR4H6.js +0 -2
  968. package/dist/esm/chunk-4D5LR4H6.js.map +0 -7
  969. package/dist/esm/chunk-4JNHUPIM.js +0 -2
  970. package/dist/esm/chunk-4WLDX7WZ.js +0 -2
  971. package/dist/esm/chunk-4WLDX7WZ.js.map +0 -7
  972. package/dist/esm/chunk-5JS7ADWX.js +0 -2
  973. package/dist/esm/chunk-5JS7ADWX.js.map +0 -7
  974. package/dist/esm/chunk-5T6K7VPP.js +0 -2
  975. package/dist/esm/chunk-5T6K7VPP.js.map +0 -7
  976. package/dist/esm/chunk-5TXQLK4G.js +0 -2
  977. package/dist/esm/chunk-5TXQLK4G.js.map +0 -7
  978. package/dist/esm/chunk-6JP5PIOO.js +0 -2
  979. package/dist/esm/chunk-6JP5PIOO.js.map +0 -7
  980. package/dist/esm/chunk-7YIQV7VO.js +0 -2
  981. package/dist/esm/chunk-7YIQV7VO.js.map +0 -7
  982. package/dist/esm/chunk-A2XVR7GL.js.map +0 -7
  983. package/dist/esm/chunk-ADFUYK3U.js.map +0 -7
  984. package/dist/esm/chunk-ADXZNG4F.js +0 -2
  985. package/dist/esm/chunk-ADXZNG4F.js.map +0 -7
  986. package/dist/esm/chunk-ARDKQL7Q.js +0 -2
  987. package/dist/esm/chunk-ARDKQL7Q.js.map +0 -7
  988. package/dist/esm/chunk-AVFGMLL4.js +0 -2
  989. package/dist/esm/chunk-AVFGMLL4.js.map +0 -7
  990. package/dist/esm/chunk-BBMENJM3.js +0 -10
  991. package/dist/esm/chunk-BBMENJM3.js.map +0 -7
  992. package/dist/esm/chunk-BGVGSALM.js +0 -2
  993. package/dist/esm/chunk-BGVGSALM.js.map +0 -7
  994. package/dist/esm/chunk-BXX2NVQD.js +0 -5
  995. package/dist/esm/chunk-BXX2NVQD.js.map +0 -7
  996. package/dist/esm/chunk-C7EVYSWK.js +0 -1
  997. package/dist/esm/chunk-CL6P54QT.js +0 -5
  998. package/dist/esm/chunk-CL6P54QT.js.map +0 -7
  999. package/dist/esm/chunk-CSUEZWN5.js +0 -2
  1000. package/dist/esm/chunk-CSUEZWN5.js.map +0 -7
  1001. package/dist/esm/chunk-DJA5MCJA.js +0 -2
  1002. package/dist/esm/chunk-DJA5MCJA.js.map +0 -7
  1003. package/dist/esm/chunk-DVSXWSAT.js +0 -2
  1004. package/dist/esm/chunk-DVSXWSAT.js.map +0 -7
  1005. package/dist/esm/chunk-FISGGGPC.js +0 -2
  1006. package/dist/esm/chunk-FISGGGPC.js.map +0 -7
  1007. package/dist/esm/chunk-FNB47XDO.js +0 -2
  1008. package/dist/esm/chunk-FNB47XDO.js.map +0 -7
  1009. package/dist/esm/chunk-GCUGJXI2.js +0 -2
  1010. package/dist/esm/chunk-GCUGJXI2.js.map +0 -7
  1011. package/dist/esm/chunk-GLKN32J3.js +0 -2
  1012. package/dist/esm/chunk-GLKN32J3.js.map +0 -7
  1013. package/dist/esm/chunk-GMHA5CFH.js +0 -2
  1014. package/dist/esm/chunk-GRRV4I2I.js +0 -2
  1015. package/dist/esm/chunk-GRRV4I2I.js.map +0 -7
  1016. package/dist/esm/chunk-H7LHGT44.js +0 -2
  1017. package/dist/esm/chunk-H7LHGT44.js.map +0 -7
  1018. package/dist/esm/chunk-HNO4X33C.js +0 -2
  1019. package/dist/esm/chunk-HNO4X33C.js.map +0 -7
  1020. package/dist/esm/chunk-IHRLGR6J.js +0 -2
  1021. package/dist/esm/chunk-IHRLGR6J.js.map +0 -7
  1022. package/dist/esm/chunk-IY3GKGDZ.js +0 -2
  1023. package/dist/esm/chunk-IY3GKGDZ.js.map +0 -7
  1024. package/dist/esm/chunk-JTN3KTAS.js +0 -2
  1025. package/dist/esm/chunk-JTN3KTAS.js.map +0 -7
  1026. package/dist/esm/chunk-KJC32RWT.js +0 -2
  1027. package/dist/esm/chunk-KJC32RWT.js.map +0 -7
  1028. package/dist/esm/chunk-LHGT24A5.js.map +0 -7
  1029. package/dist/esm/chunk-O2RISF37.js +0 -2
  1030. package/dist/esm/chunk-O2RISF37.js.map +0 -7
  1031. package/dist/esm/chunk-OB3MHLQL.js +0 -2
  1032. package/dist/esm/chunk-OB3MHLQL.js.map +0 -7
  1033. package/dist/esm/chunk-OJSDBLP7.js +0 -2
  1034. package/dist/esm/chunk-OJSDBLP7.js.map +0 -7
  1035. package/dist/esm/chunk-OUSDYZDE.js +0 -2
  1036. package/dist/esm/chunk-OUSDYZDE.js.map +0 -7
  1037. package/dist/esm/chunk-OVGPUFRI.js +0 -2
  1038. package/dist/esm/chunk-OVGPUFRI.js.map +0 -7
  1039. package/dist/esm/chunk-P3KYZBOB.js +0 -2
  1040. package/dist/esm/chunk-P3KYZBOB.js.map +0 -7
  1041. package/dist/esm/chunk-PLTTQFRQ.js +0 -2
  1042. package/dist/esm/chunk-PLTTQFRQ.js.map +0 -7
  1043. package/dist/esm/chunk-QXEQ2C6A.js +0 -2
  1044. package/dist/esm/chunk-QXEQ2C6A.js.map +0 -7
  1045. package/dist/esm/chunk-ROGC7K5N.js +0 -2
  1046. package/dist/esm/chunk-ROGC7K5N.js.map +0 -7
  1047. package/dist/esm/chunk-RON6FXLO.js +0 -2
  1048. package/dist/esm/chunk-RON6FXLO.js.map +0 -7
  1049. package/dist/esm/chunk-RWN22S44.js +0 -2
  1050. package/dist/esm/chunk-S3GZZXQ7.js +0 -2
  1051. package/dist/esm/chunk-S3GZZXQ7.js.map +0 -7
  1052. package/dist/esm/chunk-SIBSXKFF.js +0 -2
  1053. package/dist/esm/chunk-SIBSXKFF.js.map +0 -7
  1054. package/dist/esm/chunk-SURYYF7I.js +0 -2
  1055. package/dist/esm/chunk-SURYYF7I.js.map +0 -7
  1056. package/dist/esm/chunk-TUKX2BRO.js.map +0 -7
  1057. package/dist/esm/chunk-UE2OBZIS.js +0 -2
  1058. package/dist/esm/chunk-UE2OBZIS.js.map +0 -7
  1059. package/dist/esm/chunk-UGGAAL4V.js +0 -2
  1060. package/dist/esm/chunk-UGGAAL4V.js.map +0 -7
  1061. package/dist/esm/chunk-UK3BFTI2.js +0 -2
  1062. package/dist/esm/chunk-UK3BFTI2.js.map +0 -7
  1063. package/dist/esm/chunk-UTHTSYSL.js.map +0 -7
  1064. package/dist/esm/chunk-V3QVAXH3.js +0 -2
  1065. package/dist/esm/chunk-V3QVAXH3.js.map +0 -7
  1066. package/dist/esm/chunk-V5ZSDDVZ.js +0 -2
  1067. package/dist/esm/chunk-V5ZSDDVZ.js.map +0 -7
  1068. package/dist/esm/chunk-VBAXORVV.js +0 -2
  1069. package/dist/esm/chunk-VJUFYYKP.js +0 -2
  1070. package/dist/esm/chunk-VJUFYYKP.js.map +0 -7
  1071. package/dist/esm/chunk-VUKTURU4.js +0 -2
  1072. package/dist/esm/chunk-VUKTURU4.js.map +0 -7
  1073. package/dist/esm/chunk-WDNTAQ6G.js +0 -2
  1074. package/dist/esm/chunk-WDNTAQ6G.js.map +0 -7
  1075. package/dist/esm/chunk-WHAKQCNV.js +0 -2
  1076. package/dist/esm/chunk-WHAKQCNV.js.map +0 -7
  1077. package/dist/esm/chunk-WTXQB2EV.js +0 -2
  1078. package/dist/esm/chunk-WTXQB2EV.js.map +0 -7
  1079. package/dist/esm/chunk-XILM2OMC.js +0 -2
  1080. package/dist/esm/chunk-XILM2OMC.js.map +0 -7
  1081. package/dist/esm/chunk-XKBLNVOD.js +0 -2
  1082. package/dist/esm/chunk-YA5DF67M.js.map +0 -7
  1083. package/dist/esm/chunk-YBS2IB7Z.js +0 -2
  1084. package/dist/esm/chunk-YBS2IB7Z.js.map +0 -7
  1085. package/dist/esm/chunk-YL62I5SI.js +0 -2
  1086. package/dist/esm/chunk-ZK55O7TN.js +0 -2
  1087. package/dist/esm/chunk-ZK55O7TN.js.map +0 -7
  1088. package/dist/esm/chunk-ZVIWTYHE.js +0 -2
  1089. package/dist/esm/chunk-ZVIWTYHE.js.map +0 -7
  1090. package/dist/esm/components/app-bar.d.ts +0 -50
  1091. package/dist/esm/components/app-bar.d.ts.map +0 -1
  1092. package/dist/esm/components/app-bar.js +0 -2
  1093. package/dist/esm/components/app-bar.js.map +0 -7
  1094. package/dist/esm/components/callout.d.ts +0 -23
  1095. package/dist/esm/components/callout.d.ts.map +0 -1
  1096. package/dist/esm/components/callout.js +0 -2
  1097. package/dist/esm/components/callout.js.map +0 -7
  1098. package/dist/esm/components/callout.props.d.ts +0 -40
  1099. package/dist/esm/components/callout.props.d.ts.map +0 -1
  1100. package/dist/esm/components/callout.props.js +0 -2
  1101. package/dist/esm/components/callout.props.js.map +0 -7
  1102. package/dist/esm/components/sidebar.props.d.ts +0 -62
  1103. package/dist/esm/components/sidebar.props.d.ts.map +0 -1
  1104. package/dist/esm/components/sidebar.props.js +0 -2
  1105. package/dist/esm/components/sidebar.props.js.map +0 -7
  1106. package/dist/esm/components/user-card.d.ts +0 -13
  1107. package/dist/esm/components/user-card.d.ts.map +0 -1
  1108. package/dist/esm/components/user-card.js +0 -2
  1109. package/dist/esm/components/user-card.js.map +0 -7
  1110. package/dist/esm/components/user-card.props.d.ts +0 -60
  1111. package/dist/esm/components/user-card.props.d.ts.map +0 -1
  1112. package/dist/esm/components/user-card.props.js +0 -2
  1113. package/dist/esm/components/user-card.props.js.map +0 -7
  1114. package/dist/esm/helpers/parse-variant.d.ts +0 -8
  1115. package/dist/esm/helpers/parse-variant.d.ts.map +0 -1
  1116. package/dist/esm/helpers/parse-variant.js +0 -2
  1117. package/dist/esm/helpers/parse-variant.js.map +0 -7
  1118. package/dist/esm/helpers/use-deprecation-warning.d.ts +0 -10
  1119. package/dist/esm/helpers/use-deprecation-warning.d.ts.map +0 -1
  1120. package/dist/esm/helpers/use-deprecation-warning.js +0 -2
  1121. package/dist/esm/helpers/use-deprecation-warning.js.map +0 -7
  1122. package/src/components/animations.css +0 -155
  1123. package/src/components/app-bar.css +0 -204
  1124. package/src/components/app-bar.tsx +0 -261
  1125. package/src/components/callout.css +0 -160
  1126. package/src/components/callout.props.tsx +0 -29
  1127. package/src/components/callout.tsx +0 -120
  1128. package/src/components/sidebar.props.tsx +0 -56
  1129. package/src/components/user-card.css +0 -29
  1130. package/src/components/user-card.props.tsx +0 -46
  1131. package/src/components/user-card.tsx +0 -106
  1132. package/src/helpers/parse-variant.ts +0 -21
  1133. package/src/helpers/use-deprecation-warning.ts +0 -26
  1134. package/src/styles/tokens/transition.css +0 -189
  1135. /package/dist/esm/{chunk-K7BWSYVP.js.map → chunk-2IPVLV6B.js.map} +0 -0
  1136. /package/dist/esm/{chunk-SQ4BU4GH.js.map → chunk-2NNB4ZZ5.js.map} +0 -0
  1137. /package/dist/esm/{chunk-JXVUTFQN.js.map → chunk-2XSRO44Q.js.map} +0 -0
  1138. /package/dist/esm/{chunk-KXSMY4ZF.js.map → chunk-35KS5AQE.js.map} +0 -0
  1139. /package/dist/esm/{chunk-34UMKY2L.js.map → chunk-5RHODJDJ.js.map} +0 -0
  1140. /package/dist/esm/{chunk-ZQVYY7UT.js.map → chunk-672FI4OH.js.map} +0 -0
  1141. /package/dist/esm/{chunk-BWVYB64R.js.map → chunk-6ERCPRXX.js.map} +0 -0
  1142. /package/dist/esm/{chunk-PXUQEA77.js.map → chunk-7CBZFHSQ.js.map} +0 -0
  1143. /package/dist/esm/{chunk-LOLLL7AV.js.map → chunk-7UW7D77E.js.map} +0 -0
  1144. /package/dist/esm/{chunk-62CJL5G7.js.map → chunk-A2NG5NRN.js.map} +0 -0
  1145. /package/dist/esm/{chunk-RUPET4E7.js.map → chunk-A6CDNZMT.js.map} +0 -0
  1146. /package/dist/esm/{chunk-43A5GUSI.js.map → chunk-AMP7O3DM.js.map} +0 -0
  1147. /package/dist/esm/{chunk-UBOOUDS4.js.map → chunk-AO32NT75.js.map} +0 -0
  1148. /package/dist/esm/{chunk-HFVD7W6R.js.map → chunk-BFLO4IVZ.js.map} +0 -0
  1149. /package/dist/esm/{chunk-SQZ5O7QS.js.map → chunk-BQE543O5.js.map} +0 -0
  1150. /package/dist/esm/{chunk-O2WPAUQN.js.map → chunk-CL6LRPCS.js.map} +0 -0
  1151. /package/dist/esm/{chunk-EUH5MK4Q.js.map → chunk-DQTJMIRO.js.map} +0 -0
  1152. /package/dist/esm/{chunk-GLERJXVS.js.map → chunk-DSB3TEAQ.js.map} +0 -0
  1153. /package/dist/esm/{chunk-HIBX2EXV.js.map → chunk-ELZEAEN2.js.map} +0 -0
  1154. /package/dist/esm/{chunk-IV4YJRVR.js.map → chunk-EVTNB4TB.js.map} +0 -0
  1155. /package/dist/esm/{chunk-SGUTNJUO.js.map → chunk-GVLTTTFL.js.map} +0 -0
  1156. /package/dist/esm/{chunk-CIKDGYX3.js.map → chunk-HVQ3SLQC.js.map} +0 -0
  1157. /package/dist/esm/{chunk-N6Q3L64W.js.map → chunk-IYFDCW7Y.js.map} +0 -0
  1158. /package/dist/esm/{chunk-7FC7HF76.js.map → chunk-JLI7WHV6.js.map} +0 -0
  1159. /package/dist/esm/{chunk-OW4KAIWF.js.map → chunk-JQURG6CB.js.map} +0 -0
  1160. /package/dist/esm/{chunk-GONBMSRL.js.map → chunk-JZD5FHSU.js.map} +0 -0
  1161. /package/dist/esm/{chunk-EUSMN3K7.js.map → chunk-K5SC3CZZ.js.map} +0 -0
  1162. /package/dist/esm/{chunk-UBWRIE4C.js.map → chunk-K7J23OPW.js.map} +0 -0
  1163. /package/dist/esm/{chunk-ALG6R3ZX.js.map → chunk-MD3QCXRD.js.map} +0 -0
  1164. /package/dist/esm/{chunk-2EQWBT2S.js.map → chunk-MGQ4A2FI.js.map} +0 -0
  1165. /package/dist/esm/{chunk-CMEKH4I5.js.map → chunk-MGSHX5N5.js.map} +0 -0
  1166. /package/dist/esm/{chunk-ZE2GWHPY.js.map → chunk-MVW2SY4F.js.map} +0 -0
  1167. /package/dist/esm/{chunk-KJTEZVOF.js.map → chunk-O6K6RZXY.js.map} +0 -0
  1168. /package/dist/esm/{chunk-JUY7CBSL.js.map → chunk-PBFSBHBS.js.map} +0 -0
  1169. /package/dist/esm/{chunk-3HGHPAH4.js.map → chunk-PDBVZAUJ.js.map} +0 -0
  1170. /package/dist/esm/{chunk-C7EVYSWK.js.map → chunk-QDW5ZG5E.js.map} +0 -0
  1171. /package/dist/esm/{chunk-R2MQMCND.js.map → chunk-QJFAGWBO.js.map} +0 -0
  1172. /package/dist/esm/{chunk-JGR3L4SN.js.map → chunk-R4CN4Q3G.js.map} +0 -0
  1173. /package/dist/esm/{chunk-HJLBVNQE.js.map → chunk-RYURXQLJ.js.map} +0 -0
  1174. /package/dist/esm/{chunk-RUOOCYK4.js.map → chunk-S53ZQNHK.js.map} +0 -0
  1175. /package/dist/esm/{chunk-5G4WWJ4Z.js.map → chunk-T5DSQKKF.js.map} +0 -0
  1176. /package/dist/esm/{chunk-3XSB7YIM.js.map → chunk-TBZO22XK.js.map} +0 -0
  1177. /package/dist/esm/{chunk-C7UXUTUF.js.map → chunk-TGRRQHLQ.js.map} +0 -0
  1178. /package/dist/esm/{chunk-IVBKTHDM.js.map → chunk-TPHNDGSV.js.map} +0 -0
  1179. /package/dist/esm/{chunk-YL62I5SI.js.map → chunk-UA6FP7HS.js.map} +0 -0
  1180. /package/dist/esm/{chunk-6FLLFCBU.js.map → chunk-UBSLEGQZ.js.map} +0 -0
  1181. /package/dist/esm/{chunk-LJXP6K5Y.js.map → chunk-V2TPYSZ2.js.map} +0 -0
  1182. /package/dist/esm/{chunk-YLLCCUC7.js.map → chunk-X3UTLDGG.js.map} +0 -0
  1183. /package/dist/esm/{chunk-3UZHKW6I.js.map → chunk-XHF6RBOE.js.map} +0 -0
  1184. /package/dist/esm/{chunk-IPHKKZYE.js.map → chunk-XHKL4PG7.js.map} +0 -0
  1185. /package/dist/esm/{chunk-PAEHH3WS.js.map → chunk-XZ5XZS5O.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/_internal/shell-pane.tsx", "../../../../src/hooks/use-breakpoint.ts", "../../../../src/components/shell.types.ts", "../../../../src/components/_internal/shell-store.tsx"],
4
- "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport { readBreakpoint, useBreakpoint } from '../../hooks/use-breakpoint.js';\nimport type { Breakpoint, PaneName, PresentationValue } from '../shell.types.js';\nimport {\n constantOf,\n notifyShellStore,\n tableAttributes,\n tableOf,\n usePeeking,\n useShellStore,\n useStableKey,\n warnOnce,\n type OpenChangeReason,\n type PaneEntry,\n type PaneValue,\n type Table,\n} from './shell-store.js';\n\ntype ResponsiveValue = PaneValue | Partial<Record<Breakpoint, PaneValue>>;\n\nexport type UsePaneOptions = {\n name: PaneName;\n /** The component's display name, for warnings: `Inspector`, `Sidebar`, \u2026 */\n label: string;\n /** The prop names a warning should use: `open`/`defaultOpen`, or `state`/`defaultState`. */\n propNames: { controlled: string; default: string };\n id: string | undefined;\n /** The controlled value. A responsive object is deprecated: it is resolved against the current breakpoint. */\n controlled: ResponsiveValue | undefined;\n /**\n * The uncontrolled default. A single value fixes where the pane starts. A\n * responsive object leaves the pane untouched (`auto`), with that object as\n * what it shows at each breakpoint.\n */\n defaultValue: ResponsiveValue | undefined;\n /** The pane's presentation at every breakpoint. Pass a memoised table. */\n presentationTable: Table<PresentationValue>;\n /** What an untouched pane shows where no default says otherwise. Pass a module-level function. */\n builtIn: (presentation: PresentationValue) => PaneValue;\n /** Reports a change a user made. Never called on mount or on a resize. */\n onChange: ((value: PaneValue, reason: OpenChangeReason) => void) | undefined;\n /** The value a toggle moves to. Defaults to open and closed in turn. */\n toggleNext?: (current: PaneValue, defaultHere: PaneValue | undefined) => PaneValue;\n onExpand: (() => void) | undefined;\n onCollapse: (() => void) | undefined;\n /** The pane's designed open width, published for the panes beside it. */\n size: number;\n};\n\nexport type PaneController = ReturnType<typeof usePane>;\n\nconst isMap = (value: ResponsiveValue | undefined): value is Partial<Record<Breakpoint, PaneValue>> => typeof value === 'object' && value !== null;\n\n/** The first value a responsive object states, smallest breakpoint first. */\nfunction firstStated(map: Partial<Record<Breakpoint, PaneValue>>): PaneValue {\n for (const bp of ['initial', 'xs', 'sm', 'md', 'lg', 'xl'] as const) {\n const value = map[bp];\n if (value !== undefined) return value;\n }\n return 'closed';\n}\n\n/** Everything the togglable panes share: their state, their registry entry and their callbacks. */\nexport function usePane(options: UsePaneOptions) {\n const { name, label, propNames, presentationTable, builtIn } = options;\n const store = useShellStore(`Shell.${label}`);\n const generatedId = React.useId();\n const id = options.id ?? `shell-${name}${generatedId}`;\n\n const controlled = options.controlled !== undefined;\n const controlledIsMap = isMap(options.controlled);\n if (controlledIsMap) {\n warnOnce(\n `Shell.${label}: a responsive \\`${propNames.controlled}\\` is deprecated and is removed in 1.0. ` +\n `Pass a boolean and decide it from your own state, or use \\`${propNames.default}\\` with a responsive object.`,\n );\n }\n\n // A responsive controlled value is resolved the way a responsive default\n // is: it becomes the table an untouched pane follows, so the stylesheet\n // answers it at each breakpoint (right in the server HTML, with no\n // callback on a crossing) and the app's prop is still the only writer.\n const controlledMap = controlledIsMap ? (options.controlled as Partial<Record<Breakpoint, PaneValue>>) : undefined;\n const autoSource = controlledMap ?? (isMap(options.defaultValue) ? options.defaultValue : undefined);\n const autoKey = useStableKey(autoSource);\n const [inner, setInner] = React.useState<'auto' | PaneValue>(() => (typeof options.defaultValue === 'string' ? options.defaultValue : 'auto'));\n\n // What an untouched pane shows at each breakpoint: a responsive default\n // where it states one, the pane's own default where it does not.\n const autoTable = React.useMemo(\n () => (controlledMap ? tableOf<PaneValue>(controlledMap, () => firstStated(controlledMap)) : tableOf<PaneValue>(autoSource, (bp) => builtIn(presentationTable[bp]))),\n // `autoKey` stands for the responsive object, which is usually a new literal each render.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [autoKey, controlledIsMap, presentationTable, builtIn],\n );\n\n let state: 'auto' | PaneValue = inner;\n if (controlled) state = controlledMap ? 'auto' : (options.controlled as PaneValue);\n\n // Only a pane whose answer depends on the window subscribes to it, so a\n // pane with one presentation and one default never re-renders on a resize.\n const needsBreakpoint = constantOf(presentationTable) === undefined || (state === 'auto' && constantOf(autoTable) === undefined);\n const { breakpoint, ready } = useBreakpoint(needsBreakpoint);\n\n /** A table's value now: known without the window when it holds one value, else once the breakpoint is known. */\n const now = <T,>(table: Table<T>): T | undefined => {\n const constant = constantOf(table);\n if (constant !== undefined) return constant;\n return ready ? table[breakpoint] : undefined;\n };\n\n const value: PaneValue | undefined = state === 'auto' ? now(autoTable) : state;\n const presentation = now(presentationTable);\n const overlaying = presentation === 'overlay';\n const shown = value === undefined ? undefined : value !== 'closed';\n const overlayLive = shown === true && overlaying;\n\n // Stable actions over the latest values, so the registry entry changes only\n // when a fact it carries changes.\n const defaultValue = options.defaultValue;\n const latest = React.useRef({ state, value, autoTable, defaultValue, controlled, onChange: options.onChange, toggleNext: options.toggleNext });\n React.useLayoutEffect(() => {\n latest.current = { state, value, autoTable, defaultValue, controlled, onChange: options.onChange, toggleNext: options.toggleNext };\n });\n\n /**\n * What the pane shows, and its default, at the window's breakpoint right\n * now. Asked at the moment of an action rather than taken from the last\n * render: a touched pane no longer follows the window, and a click can land\n * before the mirror has resolved after hydration.\n */\n const valueNow = React.useCallback((): PaneValue | undefined => {\n const current = latest.current;\n if (current.value !== undefined) return current.value;\n return current.state === 'auto' ? current.autoTable[readBreakpoint()] : undefined;\n }, []);\n const defaultHereNow = React.useCallback((): PaneValue | undefined => {\n const current = latest.current;\n if (typeof current.defaultValue === 'string') return current.defaultValue;\n return isMap(current.defaultValue) ? current.autoTable[readBreakpoint()] : undefined;\n }, []);\n\n const setValue = React.useCallback(\n (next: PaneValue, reason: OpenChangeReason) => {\n const current = latest.current;\n if (valueNow() === next) return;\n current.onChange?.(next, reason);\n if (!current.controlled) setInner(next);\n },\n [valueNow],\n );\n\n const toggle = React.useCallback(\n (reason: OpenChangeReason) => {\n const current = latest.current;\n const from = valueNow() ?? 'closed';\n const next = current.toggleNext ? current.toggleNext(from, defaultHereNow()) : from === 'closed' ? 'open' : 'closed';\n setValue(next, reason);\n },\n [setValue, valueNow, defaultHereNow],\n );\n\n // The pane's element, for the Root's containment and focus.\n const elementRef = React.useRef<HTMLElement | null>(null);\n const setElement = React.useCallback((node: HTMLElement | null) => {\n elementRef.current = node;\n }, []);\n\n // Registration. A layout effect so a Trigger's aria attributes and the\n // Root's containment are right before the browser paints.\n React.useLayoutEffect(() => {\n const entry: PaneEntry = {\n name,\n id,\n el: elementRef.current,\n value,\n presentation,\n presentationTable,\n overlayLive,\n size: options.size,\n setValue,\n toggle,\n };\n store.entries.set(name, entry);\n notifyShellStore(store);\n return () => {\n if (store.entries.get(name) === entry) {\n store.entries.delete(name);\n notifyShellStore(store);\n }\n };\n }, [store, name, id, value, presentation, presentationTable, overlayLive, options.size, setValue, toggle]);\n\n // onExpand/onCollapse fire when the pane's state changes and that changes\n // whether it is shown: a user's toggle, or a controlled prop. Never on\n // mount, and never because the window crossed a breakpoint.\n const callbacks = React.useRef({ onExpand: options.onExpand, onCollapse: options.onCollapse });\n React.useLayoutEffect(() => {\n callbacks.current = { onExpand: options.onExpand, onCollapse: options.onCollapse };\n });\n const previous = React.useRef({ state, shown });\n React.useEffect(() => {\n const before = previous.current;\n if (before.state !== state && before.shown !== undefined && shown !== undefined && before.shown !== shown) {\n if (shown) callbacks.current.onExpand?.();\n else callbacks.current.onCollapse?.();\n }\n previous.current = { state, shown };\n }, [state, shown]);\n\n // Development guards. Once per mount, not once per render.\n React.useLayoutEffect(() => {\n if (process.env.NODE_ENV === 'production') return;\n if (options.controlled !== undefined && options.defaultValue !== undefined) {\n console.error(`Shell.${label}: Do not pass both \\`${propNames.controlled}\\` and \\`${propNames.default}\\`. Choose one.`);\n }\n // Mount only: this is the once-per-mount guard.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n const wasControlled = React.useRef(controlled);\n React.useEffect(() => {\n if (process.env.NODE_ENV === 'production') return;\n if (wasControlled.current !== controlled) {\n console.warn(`Shell.${label}: Switching between controlled and uncontrolled \\`${propNames.controlled}\\` is not supported.`);\n wasControlled.current = controlled;\n }\n }, [controlled, label, propNames.controlled]);\n\n const peeking = usePeeking(store, name) && shown === false && !overlaying;\n\n return {\n store,\n id,\n state,\n value,\n shown,\n presentation,\n overlaying,\n overlayLive,\n peeking,\n ready,\n breakpoint,\n autoTable,\n setValue,\n toggle,\n defaultHereNow,\n setElement,\n };\n}\n\n/** The data attributes every togglable pane renders. */\nexport function paneAttributes(pane: PaneController, presentationAttributes: Record<string, string>) {\n const { state, value, presentation, shown } = pane;\n return {\n ...presentationAttributes,\n 'data-state': state === 'thin' ? 'open' : state,\n 'data-thin': state === 'thin' ? '' : undefined,\n ...(state === 'auto' ? tableAttributes('auto', pane.autoTable) : {}),\n 'data-presentation': presentation,\n 'data-mode': value === undefined ? undefined : value === 'closed' ? 'collapsed' : value === 'thin' ? 'thin' : 'expanded',\n // Kept for stylesheets written against 0.7: set while a stacked pane is open.\n 'data-open': presentation === 'stacked' && shown ? '' : undefined,\n 'data-peek': pane.peeking ? '' : undefined,\n } as const;\n}\n\n/** A pane's own presentation, as a table and as the attributes the stylesheet reads. */\nexport function usePresentationTable(presentation: Parameters<typeof tableOf<PresentationValue>>[0], fallback: PresentationValue) {\n const key = useStableKey(presentation);\n const table = React.useMemo(\n () => tableOf<PresentationValue>(presentation, () => fallback),\n // `key` stands for `presentation`, which is usually a new literal each render.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [key, fallback],\n );\n // One value is the plain `data-presentation` the pane renders anyway; several\n // are written per breakpoint, so the stylesheet can place the pane before\n // any script runs.\n const attributes = React.useMemo(() => (constantOf(table) === undefined ? tableAttributes('presentation', table) : ({} as Record<string, string>)), [table]);\n return { table, attributes };\n}\n", "'use client';\n\nimport * as React from 'react';\nimport { _BREAKPOINTS, type Breakpoint } from '../components/shell.types.js';\n\nconst QUERIES = Object.entries(_BREAKPOINTS) as Array<[Breakpoint, string]>;\n\ntype Listener = () => void;\n\n/**\n * One set of `MediaQueryList`s and one set of listeners for the whole\n * application. Every component that asks for the breakpoint used to create and\n * subscribe to its own copy of all five queries.\n */\nlet mediaQueryLists: Array<[Breakpoint, MediaQueryList]> | null = null;\nconst listeners = new Set<Listener>();\nlet cachedBreakpoint: Breakpoint | null = null;\n\nfunction getMediaQueryLists() {\n mediaQueryLists ??= QUERIES.map(([name, query]) => [name, window.matchMedia(query)] as [Breakpoint, MediaQueryList]);\n return mediaQueryLists;\n}\n\nfunction computeBreakpoint(): Breakpoint {\n // The largest matching query wins; `_BREAKPOINTS` is ordered smallest first.\n let matched: Breakpoint = 'initial';\n for (const [name, mql] of getMediaQueryLists()) {\n if (mql.matches) matched = name;\n }\n return matched;\n}\n\nfunction handleChange() {\n const next = computeBreakpoint();\n if (next === cachedBreakpoint) return;\n cachedBreakpoint = next;\n listeners.forEach((listener) => listener());\n}\n\nfunction subscribe(listener: Listener) {\n if (typeof window === 'undefined') return () => {};\n\n if (listeners.size === 0) {\n cachedBreakpoint = computeBreakpoint();\n for (const [, mql] of getMediaQueryLists()) {\n // Safari below 14 only has the deprecated listener API.\n if (typeof mql.addEventListener === 'function') mql.addEventListener('change', handleChange);\n else mql.addListener?.(handleChange);\n }\n }\n\n listeners.add(listener);\n\n return () => {\n listeners.delete(listener);\n if (listeners.size > 0) return;\n\n for (const [, mql] of getMediaQueryLists()) {\n try {\n if (typeof mql.removeEventListener === 'function') mql.removeEventListener('change', handleChange);\n else mql.removeListener?.(handleChange);\n } catch (error) {\n // Removal can throw in edge cases, e.g. the list was already torn down.\n if (process.env.NODE_ENV !== 'production') {\n console.warn('[useBreakpoint] MediaQueryList cleanup warning:', error);\n }\n }\n }\n cachedBreakpoint = null;\n };\n}\n\n/**\n * `getSnapshot` must return a referentially stable value between changes, so it\n * reads the cache that `handleChange` maintains rather than recomputing.\n */\nfunction getSnapshot(): Breakpoint {\n if (typeof window === 'undefined') return 'initial';\n cachedBreakpoint ??= computeBreakpoint();\n return cachedBreakpoint;\n}\n\nfunction getServerSnapshot(): Breakpoint {\n return 'initial';\n}\n\n/**\n * The breakpoint right now, outside React's render. For an effect that needs\n * the answer at the moment it runs rather than the one its render saw.\n */\nexport function readBreakpoint(): Breakpoint {\n if (typeof window === 'undefined') return 'initial';\n return computeBreakpoint();\n}\n\nconst getReadySnapshot = () => true;\nconst getReadyServerSnapshot = () => false;\n\nconst noopSubscribe = () => () => {};\nconst getInitialSnapshot = (): Breakpoint => 'initial';\n\n/**\n * The current breakpoint, and whether it has been resolved against a real\n * viewport yet (`false` on the server and during hydration).\n *\n * Reads through `useSyncExternalStore` rather than settling into state from an\n * effect. On a client render the very first pass already has the real\n * breakpoint, instead of rendering the whole shell at `initial` and correcting\n * it after the browser has painted.\n *\n * Pass `enabled = false` to skip the subscription (the breakpoint then reads as\n * `initial`).\n */\nexport function useBreakpoint(enabled = true): { breakpoint: Breakpoint; ready: boolean } {\n // Callers with a non-responsive value pass `enabled = false` so they neither\n // subscribe to the media queries nor re-render when the viewport crosses one.\n const breakpoint = React.useSyncExternalStore(\n enabled ? subscribe : noopSubscribe,\n enabled ? getSnapshot : getInitialSnapshot,\n getServerSnapshot,\n );\n const ready = React.useSyncExternalStore(\n enabled ? subscribe : noopSubscribe,\n getReadySnapshot,\n getReadyServerSnapshot,\n );\n\n return React.useMemo(() => ({ breakpoint, ready }), [breakpoint, ready]);\n}\n", "import type * as React from 'react';\n\nexport type PresentationValue = 'fixed' | 'overlay' | 'stacked';\n\nexport type ResponsivePresentation = PresentationValue | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', PresentationValue>>;\n\nexport type PaneMode = 'expanded' | 'collapsed';\nexport type SidebarMode = 'collapsed' | 'thin' | 'expanded';\n\nexport type ResponsiveMode = PaneMode | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', PaneMode>>;\n\nexport type ResponsiveSidebarMode = SidebarMode | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', SidebarMode>>;\n\nexport type Responsive<T> = T | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', T>>;\n\nexport type PaneSizePersistence = {\n load?: () => number | Promise<number | undefined> | undefined;\n save?: (size: number) => void | Promise<void>;\n};\n\n/**\n * Why a pane's open state changed. Since 0.8.0 only a user action is reported:\n * `toggle` for a Trigger, a handle double-click or a drag past\n * `collapseThreshold`, and `dismiss` for Escape or a press on the scrim.\n * `init`, `responsive`, `panel` and `left` are kept in the types for\n * compatibility and are never sent.\n */\nexport type PaneOpenChangeReason = 'toggle' | 'dismiss' | 'init' | 'responsive';\n\nexport interface PaneBaseProps extends React.ComponentPropsWithoutRef<'div'> {\n presentation?: ResponsivePresentation;\n expandedSize?: number;\n minSize?: number;\n maxSize?: number;\n resizable?: boolean;\n collapsible?: boolean;\n /** @deprecated Use `onOpenChange`. Still called when a user's toggle or a controlled prop changes whether the pane is shown; never on mount or when the window crosses a breakpoint. */\n onExpand?: () => void;\n /** @deprecated Use `onOpenChange`. Still called when a user's toggle or a controlled prop changes whether the pane is shown; never on mount or when the window crosses a breakpoint. */\n onCollapse?: () => void;\n onResize?: (size: number) => void;\n onResizeStart?: (size: number) => void;\n onResizeEnd?: (size: number) => void;\n /** @deprecated Removed in 1.0. Snap in your own `onSizeChange` and pass `size`. */\n snapPoints?: number[];\n /** @deprecated Removed in 1.0, with `snapPoints`. */\n snapTolerance?: number;\n /** @deprecated Removed in 1.0. Close the pane from your own `onResizeEnd`. */\n collapseThreshold?: number;\n /** @deprecated Removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`. */\n paneId?: string;\n /** @deprecated Removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`. */\n persistence?: PaneSizePersistence;\n}\n\nexport const _BREAKPOINTS = {\n xs: '(min-width: 520px)',\n sm: '(min-width: 768px)',\n md: '(min-width: 1024px)',\n lg: '(min-width: 1280px)',\n xl: '(min-width: 1640px)',\n} as const;\n\nexport type Breakpoint = 'initial' | keyof typeof _BREAKPOINTS;\n\n/** Every breakpoint, smallest first. The stylesheet's @media blocks follow this order. */\nexport const SHELL_BREAKPOINTS: readonly Breakpoint[] = ['initial', 'xs', 'sm', 'md', 'lg', 'xl'];\n\nexport type PaneTarget = 'left' | 'rail' | 'panel' | 'sidebar' | 'inspector' | 'bottom';\n\n/** The panes a Trigger can drive. `left` is the deprecated name for `rail`. */\nexport type PaneName = Exclude<PaneTarget, 'left'>;\n\n/**\n * CSS custom property key type for type-safe style objects.\n * Allows any string prefixed with '--'.\n */\nexport type CSSCustomProperty = `--${string}`;\n\n/**\n * Style object that supports CSS custom properties.\n */\nexport type CSSPropertiesWithVars = React.CSSProperties & {\n [key: CSSCustomProperty]: string | number | undefined;\n};\n", "'use client';\n\n/**\n * The Shell's state model (0.8.0), ported from kookie-ui-v2's Shell.\n *\n * - State lives on the pane. Each pane holds `auto | open | closed` (the\n * Sidebar adds `thin`). `auto` means untouched: the stylesheet decides what\n * it shows at each breakpoint, so first paint is right with no script, the\n * server and the client render the same markup, and no open-state callback\n * can fire on mount or on a resize.\n * - The one thing that crosses the Shell is a registry keyed by pane name.\n * Each pane registers what it is and how to drive it; a Trigger looks its\n * pane up, and the Root reads the set of live overlays. Nothing scans\n * children and nothing checks `displayName`.\n * - The responsive props are resolved into a table with one value per\n * breakpoint, from the props alone, with no window. The table is written to\n * the DOM as data attributes for the stylesheet, and read again in JS by the\n * mirror that sets `aria-expanded`. One table, two readers, so they agree by\n * construction.\n */\nimport * as React from 'react';\nimport { SHELL_BREAKPOINTS } from '../shell.types.js';\nimport type { Breakpoint, PaneName, PresentationValue } from '../shell.types.js';\n\n/* \u2500\u2500 Breakpoint tables \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type Table<T> = Record<Breakpoint, T>;\n\n/** What a pane shows: open, open at its thin width (Sidebar only), or closed. */\nexport type PaneValue = 'open' | 'thin' | 'closed';\n\ntype ResponsiveInput<T> = T | Partial<Record<Breakpoint, T>> | undefined;\n\nfunction isMap<T>(value: ResponsiveInput<T>): value is Partial<Record<Breakpoint, T>> {\n return typeof value === 'object' && value !== null;\n}\n\n/**\n * A responsive value at every breakpoint. A breakpoint takes the largest key\n * at or below it, the same fallback `useResponsiveValue` used; a breakpoint\n * below every key takes `fallback`.\n */\nexport function tableOf<T>(value: ResponsiveInput<T>, fallback: (bp: Breakpoint) => T): Table<T> {\n const table = {} as Table<T>;\n let carried: { value: T } | null = null;\n for (const bp of SHELL_BREAKPOINTS) {\n if (value !== undefined && !isMap(value)) {\n table[bp] = value;\n continue;\n }\n const entry = isMap(value) ? value[bp] : undefined;\n if (entry !== undefined) carried = { value: entry };\n table[bp] = carried ? carried.value : fallback(bp);\n }\n return table;\n}\n\n/** The table's one value, when it has only one. */\nexport function constantOf<T>(table: Table<T>): T | undefined {\n const first = table.initial;\n return SHELL_BREAKPOINTS.every((bp) => table[bp] === first) ? first : undefined;\n}\n\n/**\n * The table as data attributes: `data-<name>` when it holds one value, one\n * `data-<name>-<bp>` per breakpoint when it holds several. The stylesheet has\n * a rule for each spelling.\n */\nexport function tableAttributes(name: string, table: Table<string>): Record<string, string> {\n const constant = constantOf(table);\n if (constant !== undefined) return { [`data-${name}`]: constant };\n const attributes: Record<string, string> = {};\n for (const bp of SHELL_BREAKPOINTS) attributes[`data-${name}-${bp}`] = table[bp];\n return attributes;\n}\n\n/**\n * A responsive prop object is usually an inline literal, a new identity every\n * render. Keying memoisation on its contents keeps the tables, and so the\n * registry entries, stable across renders that change nothing.\n */\nexport function useStableKey(value: unknown): string {\n return typeof value === 'object' && value !== null ? JSON.stringify(value) : String(value);\n}\n\nexport const FIXED_TABLE: Table<PresentationValue> = tableOf<PresentationValue>('fixed', () => 'fixed');\n\n/* \u2500\u2500 The registry \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type OpenChangeReason = 'toggle' | 'dismiss';\n\nexport type PaneEntry = {\n name: PaneName;\n id: string;\n el: HTMLElement | null;\n /** What the pane shows now; `undefined` while an untouched pane cannot know (before the breakpoint is known). */\n value: PaneValue | undefined;\n /** How the pane is presented now, when known. */\n presentation: PresentationValue | undefined;\n /** The pane's own presentation at every breakpoint. A Panel with none of its own follows the Rail's. */\n presentationTable: Table<PresentationValue>;\n /** Open and presented as an overlay: what the scrim and Escape close, and what containment exempts. */\n overlayLive: boolean;\n /** The pane's designed open width, for panes that sit beside it when floating. */\n size: number;\n setValue: (value: PaneValue, reason: OpenChangeReason) => void;\n toggle: (reason: OpenChangeReason) => void;\n};\n\nexport type ShellStore = {\n entries: Map<PaneName, PaneEntry>;\n listeners: Set<() => void>;\n /**\n * What a subscriber reads. useSyncExternalStore needs a value that is stable\n * between notifications, and a number is; the Map, or anything derived from\n * it, would be a new identity on every read.\n */\n version: number;\n /** The pane a hovered Trigger is previewing, if any. Layout only. */\n peek: PaneName | null;\n};\n\nexport function createShellStore(): ShellStore {\n return { entries: new Map(), listeners: new Set(), version: 0, peek: null };\n}\n\nexport function notifyShellStore(store: ShellStore) {\n store.version += 1;\n for (const listener of store.listeners) listener();\n}\n\nexport function subscribeShellStore(store: ShellStore, listener: () => void) {\n store.listeners.add(listener);\n return () => {\n store.listeners.delete(listener);\n };\n}\n\nexport function setShellPeek(store: ShellStore, peek: PaneName | null) {\n if (store.peek === peek) return;\n store.peek = peek;\n notifyShellStore(store);\n}\n\nexport const ShellStoreContext = React.createContext<ShellStore | null>(null);\n\nexport function useShellStore(part: string): ShellStore {\n const store = React.useContext(ShellStoreContext);\n if (!store) throw new Error(`${part} must be used within <Shell.Root>`);\n return store;\n}\n\n/** One pane's registry entry. Re-renders only when that entry is replaced. */\nexport function usePaneEntry(store: ShellStore, name: PaneName): PaneEntry | undefined {\n const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);\n const getSnapshot = React.useCallback(() => store.entries.get(name), [store, name]);\n return React.useSyncExternalStore(subscribe, getSnapshot, () => undefined);\n}\n\n/**\n * Whether this pane is the one being previewed. A boolean per pane rather than\n * the peek target itself, so hovering one Trigger re-renders one pane, not all.\n */\nexport function usePeeking(store: ShellStore, name: PaneName): boolean {\n const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);\n return React.useSyncExternalStore(\n subscribe,\n () => store.peek === name,\n () => false,\n );\n}\n\n/* \u2500\u2500 Inset \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type InsetPaneId = 'rail' | 'panel' | 'sidebar' | 'content' | 'inspector' | 'bottom';\n\nexport const ShellInsetContext = React.createContext<{\n registerInset: (id: InsetPaneId) => void;\n unregisterInset: (id: InsetPaneId) => void;\n} | null>(null);\n\n/** Registers a pane's `inset` with the Root, which paints the backdrop while any pane is inset. */\nexport function useInsetRegistration(id: InsetPaneId, inset: boolean | undefined) {\n const ctx = React.useContext(ShellInsetContext);\n if (!ctx) throw new Error('Shell panes must be used within <Shell.Root>');\n const { registerInset, unregisterInset } = ctx;\n React.useLayoutEffect(() => {\n if (!inset) return;\n registerInset(id);\n return () => unregisterInset(id);\n }, [id, inset, registerInset, unregisterInset]);\n}\n\n/* \u2500\u2500 Development warnings \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst warned = new Set<string>();\n\n/** A deprecation warning, once per message per page load. Development only. */\nexport function warnOnce(message: string) {\n if (process.env.NODE_ENV === 'production') return;\n if (warned.has(message)) return;\n warned.add(message);\n console.warn(`[kookie-ui] ${message}`);\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["'use client';\n\nimport * as React from 'react';\nimport { readBreakpoint, useBreakpoint } from '../../hooks/use-breakpoint.js';\nimport type { Breakpoint, PaneName, PresentationValue } from '../shell.types.js';\nimport {\n constantOf,\n notifyShellStore,\n tableAttributes,\n tableOf,\n usePeeking,\n useShellStore,\n useStableKey,\n warnOnce,\n type OpenChangeReason,\n type PaneEntry,\n type PaneValue,\n type Table,\n} from './shell-store.js';\n\ntype ResponsiveValue = PaneValue | Partial<Record<Breakpoint, PaneValue>>;\n\nexport type UsePaneOptions = {\n name: PaneName;\n /** The component's display name, for warnings: `Inspector`, `Sidebar`, \u2026 */\n label: string;\n /** The prop names a warning should use: `open`/`defaultOpen`, or `state`/`defaultState`. */\n propNames: { controlled: string; default: string };\n id: string | undefined;\n /** The controlled value. A responsive object is deprecated: it is resolved against the current breakpoint. */\n controlled: ResponsiveValue | undefined;\n /**\n * The uncontrolled default. A single value fixes where the pane starts. A\n * responsive object leaves the pane untouched (`auto`), with that object as\n * what it shows at each breakpoint.\n */\n defaultValue: ResponsiveValue | undefined;\n /** The pane's presentation at every breakpoint. Pass a memoised table. */\n presentationTable: Table<PresentationValue>;\n /** What an untouched pane shows where no default says otherwise. Pass a module-level function. */\n builtIn: (presentation: PresentationValue) => PaneValue;\n /** Reports a change a user made. Never called on mount or on a resize. */\n onChange: ((value: PaneValue, reason: OpenChangeReason) => void) | undefined;\n /** The value a toggle moves to. Defaults to open and closed in turn. */\n toggleNext?: (current: PaneValue, defaultHere: PaneValue | undefined) => PaneValue;\n onExpand: (() => void) | undefined;\n onCollapse: (() => void) | undefined;\n /** The pane's designed open width, published for the panes beside it. */\n size: number;\n};\n\nexport type PaneController = ReturnType<typeof usePane>;\n\nconst isMap = (value: ResponsiveValue | undefined): value is Partial<Record<Breakpoint, PaneValue>> => typeof value === 'object' && value !== null;\n\n/** The first value a responsive object states, smallest breakpoint first. */\nfunction firstStated(map: Partial<Record<Breakpoint, PaneValue>>): PaneValue {\n for (const bp of ['initial', 'xs', 'sm', 'md', 'lg', 'xl'] as const) {\n const value = map[bp];\n if (value !== undefined) return value;\n }\n return 'closed';\n}\n\n/** Everything the togglable panes share: their state, their registry entry and their callbacks. */\nexport function usePane(options: UsePaneOptions) {\n const { name, label, propNames, presentationTable, builtIn } = options;\n const store = useShellStore(`Shell.${label}`);\n const generatedId = React.useId();\n const id = options.id ?? `shell-${name}${generatedId}`;\n\n const controlled = options.controlled !== undefined;\n const controlledIsMap = isMap(options.controlled);\n if (controlledIsMap) {\n warnOnce(\n `Shell.${label}: a responsive \\`${propNames.controlled}\\` is deprecated and is removed in 1.0. ` +\n `Pass a boolean and decide it from your own state, or use \\`${propNames.default}\\` with a responsive object.`,\n );\n }\n\n // A responsive controlled value is resolved the way a responsive default\n // is: it becomes the table an untouched pane follows, so the stylesheet\n // answers it at each breakpoint (right in the server HTML, with no\n // callback on a crossing) and the app's prop is still the only writer.\n const controlledMap = controlledIsMap ? (options.controlled as Partial<Record<Breakpoint, PaneValue>>) : undefined;\n const autoSource = controlledMap ?? (isMap(options.defaultValue) ? options.defaultValue : undefined);\n const autoKey = useStableKey(autoSource);\n const [inner, setInner] = React.useState<'auto' | PaneValue>(() => (typeof options.defaultValue === 'string' ? options.defaultValue : 'auto'));\n\n // What an untouched pane shows at each breakpoint: a responsive default\n // where it states one, the pane's own default where it does not.\n const autoTable = React.useMemo(\n () => (controlledMap ? tableOf<PaneValue>(controlledMap, () => firstStated(controlledMap)) : tableOf<PaneValue>(autoSource, (bp) => builtIn(presentationTable[bp]))),\n // `autoKey` stands for the responsive object, which is usually a new literal each render.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [autoKey, controlledIsMap, presentationTable, builtIn],\n );\n\n let state: 'auto' | PaneValue = inner;\n if (controlled) state = controlledMap ? 'auto' : (options.controlled as PaneValue);\n\n // Only a pane whose answer depends on the window subscribes to it, so a\n // pane with one presentation and one default never re-renders on a resize.\n const needsBreakpoint = constantOf(presentationTable) === undefined || (state === 'auto' && constantOf(autoTable) === undefined);\n const { breakpoint, ready } = useBreakpoint(needsBreakpoint);\n\n /** A table's value now: known without the window when it holds one value, else once the breakpoint is known. */\n const now = <T,>(table: Table<T>): T | undefined => {\n const constant = constantOf(table);\n if (constant !== undefined) return constant;\n return ready ? table[breakpoint] : undefined;\n };\n\n const value: PaneValue | undefined = state === 'auto' ? now(autoTable) : state;\n const presentation = now(presentationTable);\n const overlaying = presentation === 'overlay';\n const shown = value === undefined ? undefined : value !== 'closed';\n const overlayLive = shown === true && overlaying;\n\n // Stable actions over the latest values, so the registry entry changes only\n // when a fact it carries changes.\n const defaultValue = options.defaultValue;\n const latest = React.useRef({ state, value, autoTable, defaultValue, controlled, onChange: options.onChange, toggleNext: options.toggleNext });\n React.useLayoutEffect(() => {\n latest.current = { state, value, autoTable, defaultValue, controlled, onChange: options.onChange, toggleNext: options.toggleNext };\n });\n\n /**\n * What the pane shows, and its default, at the window's breakpoint right\n * now. Asked at the moment of an action rather than taken from the last\n * render: a touched pane no longer follows the window, and a click can land\n * before the mirror has resolved after hydration.\n */\n const valueNow = React.useCallback((): PaneValue | undefined => {\n const current = latest.current;\n if (current.value !== undefined) return current.value;\n return current.state === 'auto' ? current.autoTable[readBreakpoint()] : undefined;\n }, []);\n const defaultHereNow = React.useCallback((): PaneValue | undefined => {\n const current = latest.current;\n if (typeof current.defaultValue === 'string') return current.defaultValue;\n return isMap(current.defaultValue) ? current.autoTable[readBreakpoint()] : undefined;\n }, []);\n\n const setValue = React.useCallback(\n (next: PaneValue, reason: OpenChangeReason) => {\n const current = latest.current;\n if (valueNow() === next) return;\n current.onChange?.(next, reason);\n if (!current.controlled) setInner(next);\n },\n [valueNow],\n );\n\n const toggle = React.useCallback(\n (reason: OpenChangeReason) => {\n const current = latest.current;\n const from = valueNow() ?? 'closed';\n const next = current.toggleNext ? current.toggleNext(from, defaultHereNow()) : from === 'closed' ? 'open' : 'closed';\n setValue(next, reason);\n },\n [setValue, valueNow, defaultHereNow],\n );\n\n // The pane's element, for the Root's containment and focus.\n const elementRef = React.useRef<HTMLElement | null>(null);\n const setElement = React.useCallback((node: HTMLElement | null) => {\n elementRef.current = node;\n }, []);\n\n // Registration. A layout effect so a Trigger's aria attributes and the\n // Root's containment are right before the browser paints.\n React.useLayoutEffect(() => {\n const entry: PaneEntry = {\n name,\n id,\n el: elementRef.current,\n value,\n presentation,\n presentationTable,\n overlayLive,\n size: options.size,\n setValue,\n toggle,\n };\n store.entries.set(name, entry);\n notifyShellStore(store);\n return () => {\n if (store.entries.get(name) === entry) {\n store.entries.delete(name);\n notifyShellStore(store);\n }\n };\n }, [store, name, id, value, presentation, presentationTable, overlayLive, options.size, setValue, toggle]);\n\n // onExpand/onCollapse fire when the pane's state changes and that changes\n // whether it is shown: a user's toggle, or a controlled prop. Never on\n // mount, and never because the window crossed a breakpoint.\n const callbacks = React.useRef({ onExpand: options.onExpand, onCollapse: options.onCollapse });\n React.useLayoutEffect(() => {\n callbacks.current = { onExpand: options.onExpand, onCollapse: options.onCollapse };\n });\n const previous = React.useRef({ state, shown });\n React.useEffect(() => {\n const before = previous.current;\n if (before.state !== state && before.shown !== undefined && shown !== undefined && before.shown !== shown) {\n if (shown) callbacks.current.onExpand?.();\n else callbacks.current.onCollapse?.();\n }\n previous.current = { state, shown };\n }, [state, shown]);\n\n // Development guards. Once per mount, not once per render.\n React.useLayoutEffect(() => {\n if (process.env.NODE_ENV === 'production') return;\n if (options.controlled !== undefined && options.defaultValue !== undefined) {\n console.error(`Shell.${label}: Do not pass both \\`${propNames.controlled}\\` and \\`${propNames.default}\\`. Choose one.`);\n }\n // Mount only: this is the once-per-mount guard.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n const wasControlled = React.useRef(controlled);\n React.useEffect(() => {\n if (process.env.NODE_ENV === 'production') return;\n if (wasControlled.current !== controlled) {\n console.warn(`Shell.${label}: Switching between controlled and uncontrolled \\`${propNames.controlled}\\` is not supported.`);\n wasControlled.current = controlled;\n }\n }, [controlled, label, propNames.controlled]);\n\n const peeking = usePeeking(store, name) && shown === false && !overlaying;\n\n return {\n store,\n id,\n state,\n value,\n shown,\n presentation,\n overlaying,\n overlayLive,\n peeking,\n ready,\n breakpoint,\n autoTable,\n setValue,\n toggle,\n defaultHereNow,\n setElement,\n };\n}\n\n/** The data attributes every togglable pane renders. */\nexport function paneAttributes(pane: PaneController, presentationAttributes: Record<string, string>) {\n const { state, value, presentation, shown } = pane;\n return {\n ...presentationAttributes,\n 'data-state': state,\n ...(state === 'auto' ? tableAttributes('auto', pane.autoTable) : {}),\n 'data-presentation': presentation,\n 'data-mode': value === undefined ? undefined : value === 'closed' ? 'collapsed' : 'expanded',\n // Kept for stylesheets written against 0.7: set while a stacked pane is open.\n 'data-open': presentation === 'stacked' && shown ? '' : undefined,\n 'data-peek': pane.peeking ? '' : undefined,\n } as const;\n}\n\n/** A pane's own presentation, as a table and as the attributes the stylesheet reads. */\nexport function usePresentationTable(presentation: Parameters<typeof tableOf<PresentationValue>>[0], fallback: PresentationValue) {\n const key = useStableKey(presentation);\n const table = React.useMemo(\n () => tableOf<PresentationValue>(presentation, () => fallback),\n // `key` stands for `presentation`, which is usually a new literal each render.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [key, fallback],\n );\n // One value is the plain `data-presentation` the pane renders anyway; several\n // are written per breakpoint, so the stylesheet can place the pane before\n // any script runs.\n const attributes = React.useMemo(() => (constantOf(table) === undefined ? tableAttributes('presentation', table) : ({} as Record<string, string>)), [table]);\n return { table, attributes };\n}\n", "'use client';\n\nimport * as React from 'react';\nimport { _BREAKPOINTS, type Breakpoint } from '../components/shell.types.js';\n\nconst QUERIES = Object.entries(_BREAKPOINTS) as Array<[Breakpoint, string]>;\n\ntype Listener = () => void;\n\n/**\n * One set of `MediaQueryList`s and one set of listeners for the whole\n * application. Every component that asks for the breakpoint used to create and\n * subscribe to its own copy of all five queries.\n */\nlet mediaQueryLists: Array<[Breakpoint, MediaQueryList]> | null = null;\nconst listeners = new Set<Listener>();\nlet cachedBreakpoint: Breakpoint | null = null;\n\nfunction getMediaQueryLists() {\n mediaQueryLists ??= QUERIES.map(([name, query]) => [name, window.matchMedia(query)] as [Breakpoint, MediaQueryList]);\n return mediaQueryLists;\n}\n\nfunction computeBreakpoint(): Breakpoint {\n // The largest matching query wins; `_BREAKPOINTS` is ordered smallest first.\n let matched: Breakpoint = 'initial';\n for (const [name, mql] of getMediaQueryLists()) {\n if (mql.matches) matched = name;\n }\n return matched;\n}\n\nfunction handleChange() {\n const next = computeBreakpoint();\n if (next === cachedBreakpoint) return;\n cachedBreakpoint = next;\n listeners.forEach((listener) => listener());\n}\n\nfunction subscribe(listener: Listener) {\n if (typeof window === 'undefined') return () => {};\n\n if (listeners.size === 0) {\n cachedBreakpoint = computeBreakpoint();\n for (const [, mql] of getMediaQueryLists()) {\n // Safari below 14 only has the deprecated listener API.\n if (typeof mql.addEventListener === 'function') mql.addEventListener('change', handleChange);\n else mql.addListener?.(handleChange);\n }\n }\n\n listeners.add(listener);\n\n return () => {\n listeners.delete(listener);\n if (listeners.size > 0) return;\n\n for (const [, mql] of getMediaQueryLists()) {\n try {\n if (typeof mql.removeEventListener === 'function') mql.removeEventListener('change', handleChange);\n else mql.removeListener?.(handleChange);\n } catch (error) {\n // Removal can throw in edge cases, e.g. the list was already torn down.\n if (process.env.NODE_ENV !== 'production') {\n console.warn('[useBreakpoint] MediaQueryList cleanup warning:', error);\n }\n }\n }\n cachedBreakpoint = null;\n };\n}\n\n/**\n * `getSnapshot` must return a referentially stable value between changes, so it\n * reads the cache that `handleChange` maintains rather than recomputing.\n */\nfunction getSnapshot(): Breakpoint {\n if (typeof window === 'undefined') return 'initial';\n cachedBreakpoint ??= computeBreakpoint();\n return cachedBreakpoint;\n}\n\nfunction getServerSnapshot(): Breakpoint {\n return 'initial';\n}\n\n/**\n * The breakpoint right now, outside React's render. For an effect that needs\n * the answer at the moment it runs rather than the one its render saw.\n */\nexport function readBreakpoint(): Breakpoint {\n if (typeof window === 'undefined') return 'initial';\n return computeBreakpoint();\n}\n\nconst getReadySnapshot = () => true;\nconst getReadyServerSnapshot = () => false;\n\nconst noopSubscribe = () => () => {};\nconst getInitialSnapshot = (): Breakpoint => 'initial';\n\n/**\n * The current breakpoint, and whether it has been resolved against a real\n * viewport yet (`false` on the server and during hydration).\n *\n * Reads through `useSyncExternalStore` rather than settling into state from an\n * effect. On a client render the very first pass already has the real\n * breakpoint, instead of rendering the whole shell at `initial` and correcting\n * it after the browser has painted.\n *\n * Pass `enabled = false` to skip the subscription (the breakpoint then reads as\n * `initial`).\n */\nexport function useBreakpoint(enabled = true): { breakpoint: Breakpoint; ready: boolean } {\n // Callers with a non-responsive value pass `enabled = false` so they neither\n // subscribe to the media queries nor re-render when the viewport crosses one.\n const breakpoint = React.useSyncExternalStore(\n enabled ? subscribe : noopSubscribe,\n enabled ? getSnapshot : getInitialSnapshot,\n getServerSnapshot,\n );\n const ready = React.useSyncExternalStore(\n enabled ? subscribe : noopSubscribe,\n getReadySnapshot,\n getReadyServerSnapshot,\n );\n\n return React.useMemo(() => ({ breakpoint, ready }), [breakpoint, ready]);\n}\n", "import type * as React from 'react';\n\nexport type PresentationValue = 'fixed' | 'overlay' | 'stacked';\n\nexport type ResponsivePresentation = PresentationValue | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', PresentationValue>>;\n\nexport type PaneMode = 'expanded' | 'collapsed';\nexport type SidebarMode = 'collapsed' | 'expanded';\n\nexport type ResponsiveMode = PaneMode | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', PaneMode>>;\n\nexport type ResponsiveSidebarMode = SidebarMode | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', SidebarMode>>;\n\nexport type Responsive<T> = T | Partial<Record<'initial' | 'xs' | 'sm' | 'md' | 'lg' | 'xl', T>>;\n\nexport type PaneSizePersistence = {\n load?: () => number | Promise<number | undefined> | undefined;\n save?: (size: number) => void | Promise<void>;\n};\n\n/**\n * Why a pane's open state changed. Since 0.8.0 only a user action is reported:\n * `toggle` for a Trigger, a handle double-click or a drag past\n * `collapseThreshold`, and `dismiss` for Escape or a press on the scrim.\n * `init`, `responsive`, `panel` and `left` are kept in the types for\n * compatibility and are never sent.\n */\nexport type PaneOpenChangeReason = 'toggle' | 'dismiss' | 'init' | 'responsive';\n\nexport interface PaneBaseProps extends React.ComponentPropsWithoutRef<'div'> {\n presentation?: ResponsivePresentation;\n expandedSize?: number;\n minSize?: number;\n maxSize?: number;\n resizable?: boolean;\n collapsible?: boolean;\n /** @deprecated Use `onOpenChange`. Still called when a user's toggle or a controlled prop changes whether the pane is shown; never on mount or when the window crosses a breakpoint. */\n onExpand?: () => void;\n /** @deprecated Use `onOpenChange`. Still called when a user's toggle or a controlled prop changes whether the pane is shown; never on mount or when the window crosses a breakpoint. */\n onCollapse?: () => void;\n onResize?: (size: number) => void;\n onResizeStart?: (size: number) => void;\n onResizeEnd?: (size: number) => void;\n /** @deprecated Removed in 1.0. Snap in your own `onSizeChange` and pass `size`. */\n snapPoints?: number[];\n /** @deprecated Removed in 1.0, with `snapPoints`. */\n snapTolerance?: number;\n /** @deprecated Removed in 1.0. Close the pane from your own `onResizeEnd`. */\n collapseThreshold?: number;\n /** @deprecated Removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`. */\n paneId?: string;\n /** @deprecated Removed in 1.0. Keep the size in your own state with `size`/`onSizeChange`. */\n persistence?: PaneSizePersistence;\n}\n\nexport const _BREAKPOINTS = {\n xs: '(min-width: 520px)',\n sm: '(min-width: 768px)',\n md: '(min-width: 1024px)',\n lg: '(min-width: 1280px)',\n xl: '(min-width: 1640px)',\n} as const;\n\nexport type Breakpoint = 'initial' | keyof typeof _BREAKPOINTS;\n\n/** Every breakpoint, smallest first. The stylesheet's @media blocks follow this order. */\nexport const SHELL_BREAKPOINTS: readonly Breakpoint[] = ['initial', 'xs', 'sm', 'md', 'lg', 'xl'];\n\nexport type PaneTarget = 'left' | 'rail' | 'panel' | 'sidebar' | 'inspector' | 'bottom';\n\n/** The panes a Trigger can drive. `left` is the deprecated name for `rail`. */\nexport type PaneName = Exclude<PaneTarget, 'left'>;\n\n/**\n * CSS custom property key type for type-safe style objects.\n * Allows any string prefixed with '--'.\n */\nexport type CSSCustomProperty = `--${string}`;\n\n/**\n * Style object that supports CSS custom properties.\n */\nexport type CSSPropertiesWithVars = React.CSSProperties & {\n [key: CSSCustomProperty]: string | number | undefined;\n};\n", "'use client';\n\n/**\n * The Shell's state model (0.8.0), ported from kookie-ui-v2's Shell.\n *\n * - State lives on the pane. Each pane holds `auto | open | closed`.\n * `auto` means untouched: the stylesheet decides what\n * it shows at each breakpoint, so first paint is right with no script, the\n * server and the client render the same markup, and no open-state callback\n * can fire on mount or on a resize.\n * - The one thing that crosses the Shell is a registry keyed by pane name.\n * Each pane registers what it is and how to drive it; a Trigger looks its\n * pane up, and the Root reads the set of live overlays. Nothing scans\n * children and nothing checks `displayName`.\n * - The responsive props are resolved into a table with one value per\n * breakpoint, from the props alone, with no window. The table is written to\n * the DOM as data attributes for the stylesheet, and read again in JS by the\n * mirror that sets `aria-expanded`. One table, two readers, so they agree by\n * construction.\n */\nimport * as React from 'react';\nimport { SHELL_BREAKPOINTS } from '../shell.types.js';\nimport type { Breakpoint, PaneName, PresentationValue } from '../shell.types.js';\n\n/* \u2500\u2500 Breakpoint tables \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type Table<T> = Record<Breakpoint, T>;\n\n/** What a pane shows: open or closed. */\nexport type PaneValue = 'open' | 'closed';\n\ntype ResponsiveInput<T> = T | Partial<Record<Breakpoint, T>> | undefined;\n\nfunction isMap<T>(value: ResponsiveInput<T>): value is Partial<Record<Breakpoint, T>> {\n return typeof value === 'object' && value !== null;\n}\n\n/**\n * A responsive value at every breakpoint. A breakpoint takes the largest key\n * at or below it, the same fallback `useResponsiveValue` used; a breakpoint\n * below every key takes `fallback`.\n */\nexport function tableOf<T>(value: ResponsiveInput<T>, fallback: (bp: Breakpoint) => T): Table<T> {\n const table = {} as Table<T>;\n let carried: { value: T } | null = null;\n for (const bp of SHELL_BREAKPOINTS) {\n if (value !== undefined && !isMap(value)) {\n table[bp] = value;\n continue;\n }\n const entry = isMap(value) ? value[bp] : undefined;\n if (entry !== undefined) carried = { value: entry };\n table[bp] = carried ? carried.value : fallback(bp);\n }\n return table;\n}\n\n/** The table's one value, when it has only one. */\nexport function constantOf<T>(table: Table<T>): T | undefined {\n const first = table.initial;\n return SHELL_BREAKPOINTS.every((bp) => table[bp] === first) ? first : undefined;\n}\n\n/**\n * The table as data attributes: `data-<name>` when it holds one value, one\n * `data-<name>-<bp>` per breakpoint when it holds several. The stylesheet has\n * a rule for each spelling.\n */\nexport function tableAttributes(name: string, table: Table<string>): Record<string, string> {\n const constant = constantOf(table);\n if (constant !== undefined) return { [`data-${name}`]: constant };\n const attributes: Record<string, string> = {};\n for (const bp of SHELL_BREAKPOINTS) attributes[`data-${name}-${bp}`] = table[bp];\n return attributes;\n}\n\n/**\n * A responsive prop object is usually an inline literal, a new identity every\n * render. Keying memoisation on its contents keeps the tables, and so the\n * registry entries, stable across renders that change nothing.\n */\nexport function useStableKey(value: unknown): string {\n return typeof value === 'object' && value !== null ? JSON.stringify(value) : String(value);\n}\n\nexport const FIXED_TABLE: Table<PresentationValue> = tableOf<PresentationValue>('fixed', () => 'fixed');\n\n/* \u2500\u2500 The registry \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type OpenChangeReason = 'toggle' | 'dismiss';\n\nexport type PaneEntry = {\n name: PaneName;\n id: string;\n el: HTMLElement | null;\n /** What the pane shows now; `undefined` while an untouched pane cannot know (before the breakpoint is known). */\n value: PaneValue | undefined;\n /** How the pane is presented now, when known. */\n presentation: PresentationValue | undefined;\n /** The pane's own presentation at every breakpoint. A Panel with none of its own follows the Rail's. */\n presentationTable: Table<PresentationValue>;\n /** Open and presented as an overlay: what the scrim and Escape close, and what containment exempts. */\n overlayLive: boolean;\n /** The pane's designed open width, for panes that sit beside it when floating. */\n size: number;\n setValue: (value: PaneValue, reason: OpenChangeReason) => void;\n toggle: (reason: OpenChangeReason) => void;\n};\n\nexport type ShellStore = {\n entries: Map<PaneName, PaneEntry>;\n listeners: Set<() => void>;\n /**\n * What a subscriber reads. useSyncExternalStore needs a value that is stable\n * between notifications, and a number is; the Map, or anything derived from\n * it, would be a new identity on every read.\n */\n version: number;\n /** The pane a hovered Trigger is previewing, if any. Layout only. */\n peek: PaneName | null;\n};\n\nexport function createShellStore(): ShellStore {\n return { entries: new Map(), listeners: new Set(), version: 0, peek: null };\n}\n\nexport function notifyShellStore(store: ShellStore) {\n store.version += 1;\n for (const listener of store.listeners) listener();\n}\n\nexport function subscribeShellStore(store: ShellStore, listener: () => void) {\n store.listeners.add(listener);\n return () => {\n store.listeners.delete(listener);\n };\n}\n\nexport function setShellPeek(store: ShellStore, peek: PaneName | null) {\n if (store.peek === peek) return;\n store.peek = peek;\n notifyShellStore(store);\n}\n\nexport const ShellStoreContext = React.createContext<ShellStore | null>(null);\n\nexport function useShellStore(part: string): ShellStore {\n const store = React.useContext(ShellStoreContext);\n if (!store) throw new Error(`${part} must be used within <Shell.Root>`);\n return store;\n}\n\n/** One pane's registry entry. Re-renders only when that entry is replaced. */\nexport function usePaneEntry(store: ShellStore, name: PaneName): PaneEntry | undefined {\n const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);\n const getSnapshot = React.useCallback(() => store.entries.get(name), [store, name]);\n return React.useSyncExternalStore(subscribe, getSnapshot, () => undefined);\n}\n\n/**\n * Whether this pane is the one being previewed. A boolean per pane rather than\n * the peek target itself, so hovering one Trigger re-renders one pane, not all.\n */\nexport function usePeeking(store: ShellStore, name: PaneName): boolean {\n const subscribe = React.useCallback((listener: () => void) => subscribeShellStore(store, listener), [store]);\n return React.useSyncExternalStore(\n subscribe,\n () => store.peek === name,\n () => false,\n );\n}\n\n/* \u2500\u2500 Inset \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nexport type InsetPaneId = 'rail' | 'panel' | 'sidebar' | 'content' | 'inspector' | 'bottom';\n\nexport const ShellInsetContext = React.createContext<{\n registerInset: (id: InsetPaneId) => void;\n unregisterInset: (id: InsetPaneId) => void;\n} | null>(null);\n\n/** Registers a pane's `inset` with the Root, which paints the backdrop while any pane is inset. */\nexport function useInsetRegistration(id: InsetPaneId, inset: boolean | undefined) {\n const ctx = React.useContext(ShellInsetContext);\n if (!ctx) throw new Error('Shell panes must be used within <Shell.Root>');\n const { registerInset, unregisterInset } = ctx;\n React.useLayoutEffect(() => {\n if (!inset) return;\n registerInset(id);\n return () => unregisterInset(id);\n }, [id, inset, registerInset, unregisterInset]);\n}\n\n/* \u2500\u2500 Development warnings \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 */\n\nconst warned = new Set<string>();\n\n/** A deprecation warning, once per message per page load. Development only. */\nexport function warnOnce(message: string) {\n if (process.env.NODE_ENV === 'production') return;\n if (warned.has(message)) return;\n warned.add(message);\n console.warn(`[kookie-ui] ${message}`);\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["shell_pane_exports", "__export", "paneAttributes", "usePane", "usePresentationTable", "__toCommonJS", "React", "React", "_BREAKPOINTS", "SHELL_BREAKPOINTS", "QUERIES", "_BREAKPOINTS", "mediaQueryLists", "listeners", "cachedBreakpoint", "getMediaQueryLists", "name", "query", "computeBreakpoint", "matched", "mql", "handleChange", "next", "listener", "subscribe", "getSnapshot", "getServerSnapshot", "readBreakpoint", "getReadySnapshot", "getReadyServerSnapshot", "noopSubscribe", "getInitialSnapshot", "useBreakpoint", "enabled", "breakpoint", "ready", "React", "isMap", "value", "tableOf", "fallback", "table", "carried", "bp", "SHELL_BREAKPOINTS", "entry", "constantOf", "first", "tableAttributes", "name", "constant", "attributes", "useStableKey", "FIXED_TABLE", "notifyShellStore", "store", "listener", "subscribeShellStore", "ShellStoreContext", "useShellStore", "part", "store", "usePeeking", "store", "name", "subscribe", "listener", "subscribeShellStore", "ShellInsetContext", "isMap", "value", "firstStated", "map", "bp", "usePane", "options", "name", "label", "propNames", "presentationTable", "builtIn", "store", "useShellStore", "generatedId", "id", "controlled", "controlledIsMap", "controlledMap", "autoSource", "autoKey", "useStableKey", "inner", "setInner", "autoTable", "tableOf", "state", "needsBreakpoint", "constantOf", "breakpoint", "ready", "useBreakpoint", "now", "table", "constant", "presentation", "overlaying", "shown", "overlayLive", "defaultValue", "latest", "valueNow", "current", "readBreakpoint", "defaultHereNow", "setValue", "next", "reason", "toggle", "from", "elementRef", "setElement", "node", "entry", "notifyShellStore", "callbacks", "previous", "before", "wasControlled", "peeking", "usePeeking", "paneAttributes", "pane", "presentationAttributes", "tableAttributes", "usePresentationTable", "fallback", "key", "attributes"]
7
7
  }
@@ -16,10 +16,6 @@ type SidebarUncontrolledProps = {
16
16
  state?: never;
17
17
  };
18
18
  type SidebarPublicProps = PaneBaseProps & {
19
- /** @deprecated Thin mode is removed in 0.15.0. Use `Shell.Rail`. */
20
- thinSize?: number;
21
- /** `both` (deprecated with thin mode; `single` is the 0.15.0 behaviour) toggles through collapsed, thin and expanded; `single` between collapsed and the default. */
22
- toggleModes?: 'both' | 'single';
23
19
  size?: number | string;
24
20
  defaultSize?: number | string;
25
21
  onSizeChange?: (size: number, meta: SizeChangeMeta) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"shell-sidebar.d.ts","sourceRoot":"","sources":["../../../../src/components/_internal/shell-sidebar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAc,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAkC,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAM3F,OAAO,KAAK,EAAE,UAAU,EAAyB,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEnH,KAAK,sBAAsB,GAAG;IAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,SAAS,CAAA;CAAE,CAAC;AACvF,KAAK,sBAAsB,GAAG;IAAE,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AACnK,KAAK,wBAAwB,GAAG;IAAE,YAAY,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;IAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AACrM,KAAK,kBAAkB,GAAG,aAAa,GAAG;IACxC,oEAAoE;IACpE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qKAAqK;IACrK,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAC5D,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,CAAC,sBAAsB,GAAG,wBAAwB,CAAC,CAAC;AAExD,KAAK,gBAAgB,GAAG,KAAK,CAAC,yBAAyB,CAAC,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,OAAO,aAAa,CAAA;CAAE,CAAC;AA2BrJ,eAAO,MAAM,OAAO,EA6Id,gBAAgB,CAAC"}
1
+ {"version":3,"file":"shell-sidebar.d.ts","sourceRoot":"","sources":["../../../../src/components/_internal/shell-sidebar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,EAAc,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAkC,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAK3F,OAAO,KAAK,EAAE,UAAU,EAAyB,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEnH,KAAK,sBAAsB,GAAG;IAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,SAAS,CAAA;CAAE,CAAC;AACvF,KAAK,sBAAsB,GAAG;IAAE,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AACnK,KAAK,wBAAwB,GAAG;IAAE,YAAY,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;IAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AACrM,KAAK,kBAAkB,GAAG,aAAa,GAAG;IACxC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAC5D,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,CAAC,sBAAsB,GAAG,wBAAwB,CAAC,CAAC;AAExD,KAAK,gBAAgB,GAAG,KAAK,CAAC,yBAAyB,CAAC,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,GAAG;IAAE,MAAM,EAAE,OAAO,aAAa,CAAA;CAAE,CAAC;AAqBrJ,eAAO,MAAM,OAAO,EA8Hd,gBAAgB,CAAC"}
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var It=Object.create;var be=Object.defineProperty;var $t=Object.getOwnPropertyDescriptor;var jt=Object.getOwnPropertyNames;var Ft=Object.getPrototypeOf,Ut=Object.prototype.hasOwnProperty;var qt=(e,t)=>{for(var n in t)be(e,n,{get:t[n],enumerable:!0})},Je=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of jt(t))!Ut.call(e,o)&&o!==n&&be(e,o,{get:()=>t[o],enumerable:!(r=$t(t,o))||r.enumerable});return e};var I=(e,t,n)=>(n=e!=null?It(Ft(e)):{},Je(t||!e||!e.__esModule?be(n,"default",{value:e,enumerable:!0}):n,e)),Wt=e=>Je(be({},"__esModule",{value:!0}),e);var hn={};qt(hn,{Sidebar:()=>We});module.exports=Wt(hn);var _=I(require("react")),Bt=I(require("classnames")),Ot=require("radix-ui/internal");var Pe=I(require("react")),De=Pe.createContext(null);function Ze(){let e=Pe.useContext(De);if(!e)throw new Error("Shell.Handle must be used within a resizable pane");return e}var h=I(require("react")),et=I(require("classnames"));var re=h.forwardRef(({className:e,children:t,...n},r)=>{let{containerRef:o,controls:s,cssVarName:a,minSize:u,maxSize:c,defaultSize:p,orientation:f,edge:C,growth:x,onResize:w,onResizeStart:$,onResizeEnd:V,snapPoints:E,snapTolerance:S,collapseThreshold:k,collapsible:L,target:q,requestCollapse:K,requestToggle:A}=Ze(),B=h.useRef(null),Q=h.useCallback(l=>{B.current=l,typeof r=="function"?r(l):r&&(r.current=l)},[r]),i=h.useRef(null);h.useEffect(()=>()=>{i.current?.(),i.current=null},[]);let b=h.useCallback(()=>{let l=o.current;if(!l)return p;let y=Number.parseFloat(getComputedStyle(l).getPropertyValue(a));return Number.isFinite(y)?y:p},[o,a,p]),z=h.useCallback(()=>{let l=o.current,y=B.current,R=l?.closest(".rt-ShellRoot")?.getBoundingClientRect();if(!l||!R||!y)return c;let O=l.getBoundingClientRect(),H=y.getBoundingClientRect(),m=x(getComputedStyle(l).direction==="rtl"),v;f==="vertical"?v=m>0?R.right-O.left:O.right-R.left:v=m>0?R.bottom-O.top:O.bottom-R.top;let ee=f==="vertical"?H.width:H.height;return!(R.width>0&&R.height>0)||!Number.isFinite(v)?c:Math.max(u,Math.min(c,Math.round(v-ee)))},[o,x,c,u,f]),T=()=>{B.current?.setAttribute("aria-valuemax",String(z()))};h.useLayoutEffect(()=>{B.current?.setAttribute("aria-valuenow",String(Math.round(b())))},[b]);let D=(l,y)=>{l.style.setProperty(a,`${y}px`),B.current?.setAttribute("aria-valuenow",String(Math.round(y)))},X=q.charAt(0).toUpperCase()+q.slice(1);return h.createElement("div",{ref:Q,className:(0,et.default)("rt-ShellResizer",e),"data-orientation":f,"data-edge":C,role:"separator",tabIndex:0,"aria-label":`Resize ${X} pane`,"aria-controls":s,"aria-orientation":f,"aria-valuemin":u,"aria-valuemax":c,...n,onPointerDown:l=>{n.onPointerDown?.(l);let y=o.current;if(!y||l.defaultPrevented||l.button!==0)return;l.preventDefault();let R=l.currentTarget,O=l.pointerId;i.current?.();try{R.setPointerCapture(O)}catch{}let H=getComputedStyle(y),m=Number.parseFloat(H.getPropertyValue(a)),v=Number.isFinite(m)?m:p,ee=f==="vertical"?l.clientX:l.clientY,d=x(H.direction==="rtl"),U=z();R.setAttribute("aria-valuemax",String(U));let Y=M=>Math.min(Math.max(M,u),U);y.setAttribute("data-resizing",""),R.setAttribute("data-dragging","");let J=document.body,me=J.style.cursor,Ne=J.style.userSelect;J.style.cursor=f==="vertical"?"col-resize":"row-resize",J.style.userSelect="none",$?.(v);let te=v,Ve=v,G=0,ue=null,_e=()=>{if(G=0,ue===null)return;let M=ue;ue=null,w?.(M)},Ge=null,Ke=!1,Ht=(M,ie)=>{if(M.type===ie)Ke=!0;else if(Ke)return!1;return!0},Z=M=>{if(!Ht(M,"pointermove")||M===Ge)return;Ge=M;let ie=f==="vertical"?M.clientX:M.clientY;Ve=v+(ie-ee)*d,te=Y(Ve),D(y,te),ue=te,G||(G=requestAnimationFrame(_e))},ge=()=>{G&&cancelAnimationFrame(G),G=0;try{R.releasePointerCapture(O)}catch{}window.removeEventListener("pointermove",Z),document.removeEventListener("pointermove",Z),window.removeEventListener("mousemove",Z),document.removeEventListener("mousemove",Z),R.removeEventListener("pointermove",Z),window.removeEventListener("pointerup",j),document.removeEventListener("pointerup",j),window.removeEventListener("mouseup",j),document.removeEventListener("mouseup",j),window.removeEventListener("pointercancel",j),document.removeEventListener("pointercancel",j),window.removeEventListener("keydown",Qe),R.removeEventListener("lostpointercapture",j),y.removeAttribute("data-resizing"),R.removeAttribute("data-dragging"),J.style.cursor=me,J.style.userSelect=Ne,i.current=null},ke=!1,j=()=>{if(ke)return;if(ke=!0,G&&cancelAnimationFrame(G),_e(),L&&typeof k=="number"&&Ve<=k){D(y,v),w?.(v),ge(),K?.(),V?.(v);return}let M=te;if(E&&E.length){let ie=E.reduce((Xe,Ye)=>Math.abs(Ye-te)<Math.abs(Xe-te)?Ye:Xe,E[0]);Math.abs(ie-te)<=S&&(M=Y(ie),D(y,M),w?.(M))}V?.(M),ge()},Qe=M=>{M.key==="Escape"&&(G&&cancelAnimationFrame(G),G=0,ue=null,D(y,v),w?.(v),ke=!0,V?.(v),ge())};window.addEventListener("pointermove",Z),document.addEventListener("pointermove",Z),window.addEventListener("mousemove",Z),document.addEventListener("mousemove",Z),R.addEventListener("pointermove",Z),window.addEventListener("pointerup",j),document.addEventListener("pointerup",j),window.addEventListener("mouseup",j),document.addEventListener("mouseup",j),window.addEventListener("pointercancel",j),document.addEventListener("pointercancel",j),window.addEventListener("keydown",Qe),R.addEventListener("lostpointercapture",j),i.current=ge},onDoubleClick:l=>{n.onDoubleClick?.(l),!l.defaultPrevented&&L&&A?.()},onFocus:l=>{n.onFocus?.(l),T()},onKeyDown:l=>{n.onKeyDown?.(l);let y=o.current;if(!y||l.defaultPrevented)return;let R=b(),O=z(),H=v=>Math.min(Math.max(v,u),O),m;if(l.key==="Home")m=H(u);else if(l.key==="End")m=H(O);else{let v=f==="vertical"?l.key==="ArrowRight"?1:l.key==="ArrowLeft"?-1:0:l.key==="ArrowDown"?1:l.key==="ArrowUp"?-1:0;if(v===0)return;let ee=l.shiftKey?32:8;m=H(R+v*ee*x(getComputedStyle(y).direction==="rtl"))}l.preventDefault(),$?.(R),D(y,m),w?.(m),V?.(m)}},t)});re.displayName="Shell.Handle";var _t=h.forwardRef((e,t)=>h.createElement(re,{...e,ref:t}));_t.displayName="Shell.Panel.Handle";var ye=h.forwardRef((e,t)=>h.createElement(re,{...e,ref:t}));ye.displayName="Shell.Sidebar.Handle";var Gt=h.forwardRef((e,t)=>h.createElement(re,{...e,ref:t}));Gt.displayName="Shell.Inspector.Handle";var Kt=h.forwardRef((e,t)=>h.createElement(re,{...e,ref:t}));Kt.displayName="Shell.Bottom.Handle";var P=I(require("react"));var de=I(require("react"));var tt={xs:"(min-width: 520px)",sm:"(min-width: 768px)",md:"(min-width: 1024px)",lg:"(min-width: 1280px)",xl:"(min-width: 1640px)"},Re=["initial","xs","sm","md","lg","xl"];var Qt=Object.entries(tt),Me=null,ce=new Set,oe=null;function Le(){return Me??(Me=Qt.map(([e,t])=>[e,window.matchMedia(t)])),Me}function Se(){let e="initial";for(let[t,n]of Le())n.matches&&(e=t);return e}function ve(){let e=Se();e!==oe&&(oe=e,ce.forEach(t=>t()))}function nt(e){if(typeof window>"u")return()=>{};if(ce.size===0){oe=Se();for(let[,t]of Le())typeof t.addEventListener=="function"?t.addEventListener("change",ve):t.addListener?.(ve)}return ce.add(e),()=>{if(ce.delete(e),!(ce.size>0)){for(let[,t]of Le())try{typeof t.removeEventListener=="function"?t.removeEventListener("change",ve):t.removeListener?.(ve)}catch{}oe=null}}}function Xt(){return typeof window>"u"?"initial":(oe??(oe=Se()),oe)}function Yt(){return"initial"}function pe(){return typeof window>"u"?"initial":Se()}var Jt=()=>!0,Zt=()=>!1,rt=()=>()=>{},en=()=>"initial";function ot(e=!0){let t=de.useSyncExternalStore(e?nt:rt,e?Xt:en,Yt),n=de.useSyncExternalStore(e?nt:rt,Jt,Zt);return de.useMemo(()=>({breakpoint:t,ready:n}),[t,n])}var W=I(require("react"));function st(e){return typeof e=="object"&&e!==null}function fe(e,t){let n={},r=null;for(let o of Re){if(e!==void 0&&!st(e)){n[o]=e;continue}let s=st(e)?e[o]:void 0;s!==void 0&&(r={value:s}),n[o]=r?r.value:t(o)}return n}function le(e){let t=e.initial;return Re.every(n=>e[n]===t)?t:void 0}function Ae(e,t){let n=le(t);if(n!==void 0)return{[`data-${e}`]:n};let r={};for(let o of Re)r[`data-${e}-${o}`]=t[o];return r}function Be(e){return typeof e=="object"&&e!==null?JSON.stringify(e):String(e)}var kn=fe("fixed",()=>"fixed");function Oe(e){e.version+=1;for(let t of e.listeners)t()}function tn(e,t){return e.listeners.add(t),()=>{e.listeners.delete(t)}}var nn=W.createContext(null);function at(e){let t=W.useContext(nn);if(!t)throw new Error(`${e} must be used within <Shell.Root>`);return t}function it(e,t){let n=W.useCallback(r=>tn(e,r),[e]);return W.useSyncExternalStore(n,()=>e.peek===t,()=>!1)}var rn=W.createContext(null);function lt(e,t){let n=W.useContext(rn);if(!n)throw new Error("Shell panes must be used within <Shell.Root>");let{registerInset:r,unregisterInset:o}=n;W.useLayoutEffect(()=>{if(t)return r(e),()=>o(e)},[e,t,r,o])}var He=e=>typeof e=="object"&&e!==null;function sn(e){for(let t of["initial","xs","sm","md","lg","xl"]){let n=e[t];if(n!==void 0)return n}return"closed"}function ut(e){let{name:t,label:n,propNames:r,presentationTable:o,builtIn:s}=e,a=at(`Shell.${n}`),u=P.useId(),c=e.id??`shell-${t}${u}`,p=e.controlled!==void 0,f=He(e.controlled);f&&(`${n}${r.controlled}${r.default}`,void 0);let C=f?e.controlled:void 0,x=C??(He(e.defaultValue)?e.defaultValue:void 0),w=Be(x),[$,V]=P.useState(()=>typeof e.defaultValue=="string"?e.defaultValue:"auto"),E=P.useMemo(()=>C?fe(C,()=>sn(C)):fe(x,d=>s(o[d])),[w,f,o,s]),S=$;p&&(S=C?"auto":e.controlled);let k=le(o)===void 0||S==="auto"&&le(E)===void 0,{breakpoint:L,ready:q}=ot(k),K=d=>{let U=le(d);return U!==void 0?U:q?d[L]:void 0},A=S==="auto"?K(E):S,B=K(o),Q=B==="overlay",i=A===void 0?void 0:A!=="closed",b=i===!0&&Q,z=e.defaultValue,T=P.useRef({state:S,value:A,autoTable:E,defaultValue:z,controlled:p,onChange:e.onChange,toggleNext:e.toggleNext});P.useLayoutEffect(()=>{T.current={state:S,value:A,autoTable:E,defaultValue:z,controlled:p,onChange:e.onChange,toggleNext:e.toggleNext}});let D=P.useCallback(()=>{let d=T.current;return d.value!==void 0?d.value:d.state==="auto"?d.autoTable[pe()]:void 0},[]),X=P.useCallback(()=>{let d=T.current;return typeof d.defaultValue=="string"?d.defaultValue:He(d.defaultValue)?d.autoTable[pe()]:void 0},[]),l=P.useCallback((d,U)=>{let Y=T.current;D()!==d&&(Y.onChange?.(d,U),Y.controlled||V(d))},[D]),y=P.useCallback(d=>{let U=T.current,Y=D()??"closed",J=U.toggleNext?U.toggleNext(Y,X()):Y==="closed"?"open":"closed";l(J,d)},[l,D,X]),R=P.useRef(null),O=P.useCallback(d=>{R.current=d},[]);P.useLayoutEffect(()=>{let d={name:t,id:c,el:R.current,value:A,presentation:B,presentationTable:o,overlayLive:b,size:e.size,setValue:l,toggle:y};return a.entries.set(t,d),Oe(a),()=>{a.entries.get(t)===d&&(a.entries.delete(t),Oe(a))}},[a,t,c,A,B,o,b,e.size,l,y]);let H=P.useRef({onExpand:e.onExpand,onCollapse:e.onCollapse});P.useLayoutEffect(()=>{H.current={onExpand:e.onExpand,onCollapse:e.onCollapse}});let m=P.useRef({state:S,shown:i});P.useEffect(()=>{let d=m.current;d.state!==S&&d.shown!==void 0&&i!==void 0&&d.shown!==i&&(i?H.current.onExpand?.():H.current.onCollapse?.()),m.current={state:S,shown:i}},[S,i]),P.useLayoutEffect(()=>{},[]);let v=P.useRef(p);P.useEffect(()=>{},[p,n,r.controlled]);let ee=it(a,t)&&i===!1&&!Q;return{store:a,id:c,state:S,value:A,shown:i,presentation:B,overlaying:Q,overlayLive:b,peeking:ee,ready:q,breakpoint:L,autoTable:E,setValue:l,toggle:y,defaultHereNow:X,setElement:O}}function ct(e,t){let{state:n,value:r,presentation:o,shown:s}=e;return{...t,"data-state":n==="thin"?"open":n,"data-thin":n==="thin"?"":void 0,...n==="auto"?Ae("auto",e.autoTable):{},"data-presentation":o,"data-mode":r===void 0?void 0:r==="closed"?"collapsed":r==="thin"?"thin":"expanded","data-open":o==="stacked"&&s?"":void 0,"data-peek":e.peeking?"":void 0}}function dt(e,t){let n=Be(e),r=P.useMemo(()=>fe(e,()=>t),[n,t]),o=P.useMemo(()=>le(r)===void 0?Ae("presentation",r):{},[r]);return{table:r,attributes:o}}var g=I(require("react"));function pt(e,t="horizontal"){if(e==null)return;if(typeof e=="number"&&Number.isFinite(e))return e;let n=String(e).trim();if(!n)return;if(n.endsWith("px"))return Number.parseFloat(n);if(n.endsWith("rem")){let o=Number.parseFloat(getComputedStyle(document.documentElement).fontSize||"16")||16;return Number.parseFloat(n)*o}if(n.endsWith("%")){let o=Number.parseFloat(n),s=t==="horizontal"?document.documentElement.clientWidth||window.innerWidth||0:document.documentElement.clientHeight||window.innerHeight||0;return o/100*s}let r=Number.parseFloat(n);return Number.isFinite(r)?r:void 0}var Ie=(e,t,n)=>Math.max(t??e,Math.min(n??e,e));function ft(e){let{name:t,elementRef:n,cssVarName:r,orientation:o,minSize:s,maxSize:a,resizable:u,size:c,defaultSize:p,paneId:f,persistence:C}=e,x=g.useRef(e);g.useLayoutEffect(()=>{x.current=e});let w=g.useRef(null),$=g.useRef(0);g.useEffect(()=>()=>{w.current&&clearTimeout(w.current)},[]);let V=g.useCallback((i,b)=>{let{onSizeChange:z,sizeUpdate:T,sizeUpdateMs:D}=x.current;if(z){if(T==="debounce"){w.current&&clearTimeout(w.current),w.current=setTimeout(()=>{w.current=null,x.current.onSizeChange?.(i,b)},D);return}if(T==="throttle"){let X=Date.now();if(X-$.current<D)return;$.current=X}z(i,b)}},[]),E=g.useCallback(i=>pt(i,o==="vertical"?"horizontal":"vertical"),[o]),S=g.useRef(!1),k=g.useCallback((i,b)=>{let z=n.current;if(z){z.style.setProperty(r,`${i}px`);for(let T of z.querySelectorAll(":scope > .rt-ShellResizer"))T.setAttribute("aria-valuenow",String(Math.round(i)));b&&(S.current=!0)}},[n,r]);g.useLayoutEffect(()=>{S.current||k(e.expandedSize,!1)},[e.expandedSize,k]),g.useLayoutEffect(()=>{if(c!==void 0||p===void 0)return;let i=E(p);if(typeof i!="number"||!Number.isFinite(i))return;let b=Ie(i,s,a);k(b,!0),V(b,{reason:"init"})},[]),g.useLayoutEffect(()=>{if(c===void 0||x.current.overlayingNow())return;let i=E(c);if(typeof i!="number"||!Number.isFinite(i))return;let b=Ie(i,s,a);k(b,!0),V(b,{reason:"controlled"})},[c,s,a,e.overlaying,E,k,V]);let L=g.useMemo(()=>{if(!f||C)return C;let i=`kookie-ui:shell:${t}:${f}`;return{load:()=>{if(!(typeof window>"u"))try{let b=window.localStorage.getItem(i);return b?Number(b):void 0}catch{return}},save:b=>{if(!(typeof window>"u"))try{window.localStorage.setItem(i,String(b))}catch{}}}},[t,f,C]);g.useLayoutEffect(()=>{if(!u||!L?.load||x.current.overlayingNow())return;let i=!0,b=T=>{if(!i||typeof T!="number"||!Number.isFinite(T))return;let D=Ie(T,s,a);k(D,!0),x.current.onResize?.(D)},z=L.load();return z instanceof Promise?z.then(b).catch(T=>{}):b(z),()=>{i=!1}},[u,L,e.overlaying,k,s,a,t]);let q=g.useCallback(i=>x.current.onResize?.(i),[]),K=g.useCallback(i=>{S.current=!0,x.current.onResizeStart?.(i)},[]),A=g.useCallback(i=>{x.current.onResizeEnd?.(i),V(i,{reason:"resize"}),L?.save?.(i)},[V,L]),B=g.useCallback(()=>x.current.requestCollapse(),[]),Q=g.useCallback(()=>x.current.requestToggle(),[]);return g.useMemo(()=>({containerRef:n,controls:e.elementId,cssVarName:r,minSize:s,maxSize:a,defaultSize:e.expandedSize,orientation:o,edge:e.edge,growth:e.growth,onResize:q,onResizeStart:K,onResizeEnd:A,target:t,collapsible:e.collapsible,snapPoints:e.snapPoints,snapTolerance:e.snapTolerance??8,collapseThreshold:e.collapseThreshold,requestCollapse:B,requestToggle:Q}),[n,e.elementId,r,s,a,e.expandedSize,o,e.edge,e.growth,q,K,A,t,e.collapsible,e.snapPoints,e.snapTolerance,e.collapseThreshold,B,Q])}function mt(e,t){let n=g.Children.toArray(e),r=n.filter(s=>g.isValidElement(s)&&s.type===t),o=n.filter(s=>!(g.isValidElement(s)&&s.type===t));return{handles:r,content:o}}var gt=e=>e==="overlay"?"closed":"open";var bt=e=>e?-1:1;function Pt(e){if(!("height"in e)&&!("resizer"in e))return e;let{height:t,resizer:n,...r}=e;return r}var N=I(require("react")),Te=I(require("classnames"));var F=I(require("react")),we=I(require("classnames")),ne=require("radix-ui"),Nt=require("radix-ui/internal");var yt={asChild:{type:"boolean"}};var an=["none","small","medium","large","full"],Rt={radius:{type:"enum",values:an,default:void 0}};var ln=["1","2","3"],un=["vertical","horizontal","both"],se={...yt,size:{type:"enum",className:"rt-r-size",values:ln,default:"1",responsive:!0},...Rt,scrollbars:{type:"enum",values:un,default:"both"},fade:{type:"boolean",default:!1}};var he=I(require("react"));function vt(e){let[t,n]=he.useState(null);return he.useEffect(()=>{if(!e||!t)return;let r=0,o=()=>{r=0;let c=Math.max(0,t.scrollTop),p=Math.max(0,t.scrollHeight-t.clientHeight-t.scrollTop);t.style.setProperty("--scroll-overflow-start",`${c}px`),t.style.setProperty("--scroll-overflow-end",`${p}px`)},s=()=>{r||(r=requestAnimationFrame(o))};o(),t.addEventListener("scroll",s,{passive:!0});let a=typeof ResizeObserver>"u"?null:new ResizeObserver(s);a?.observe(t);for(let c of Array.from(t.children))a?.observe(c);let u=typeof MutationObserver>"u"?null:new MutationObserver(s);return u?.observe(t,{childList:!0}),()=>{r&&cancelAnimationFrame(r),t.removeEventListener("scroll",s),a?.disconnect(),u?.disconnect(),t.style.removeProperty("--scroll-overflow-start"),t.style.removeProperty("--scroll-overflow-end")}},[e,t]),n}function St(e){let{m:t,mx:n,my:r,mt:o,mr:s,mb:a,ml:u,...c}=e;return{m:t,mx:n,my:r,mt:o,mr:s,mb:a,ml:u,rest:c}}var cn=["initial","xs","sm","md","lg","xl"],$e=new Set(cn);function je(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var dn=new Set(["initial","xs","sm","md","lg","xl"]);function Fe(e){if(typeof e!="object"||e===null)return!1;for(let t in e)if(dn.has(t))return!0;return!1}function xe(e,t,n){return t!==void 0?t.has(n):e.includes(n)}function xt({className:e,customProperties:t,...n}){let r=Ee({allowArbitraryValues:!0,className:e,...n}),o=pn({customProperties:t,...n});return[r,o]}function Ee({allowArbitraryValues:e,value:t,className:n,propValues:r,propValueSet:o,parseValue:s=a=>a}){if(t){if(typeof t=="string")return xe(r,o,t)?ht(n,t,s):e?n:void 0;if(Fe(t)){let a=t,u=[];for(let c in a){if(!je(a,c)||!$e.has(c))continue;let p=a[c];if(p!==void 0){if(xe(r,o,p)){let f=ht(n,p,s),C=c==="initial"?f:`${c}:${f}`;u.push(C)}else if(e){let f=c==="initial"?n:`${c}:${n}`;u.push(f)}}}return u.length>0?u.join(" "):""}if(e)return n}}function ht(e,t,n){let r=e?"-":"",o=n(t),s=o?.startsWith("-"),a=s?"-":"",u=s?o?.substring(1):o;return`${a}${e}${r}${u}`}function pn({customProperties:e,value:t,propValues:n,propValueSet:r,parseValue:o=s=>s}){if(!t||typeof t=="string"&&xe(n,r,t))return;let s;if(typeof t=="string"){let a=o(t);s={};for(let u of e)s[u]=a;return s}if(Fe(t)){let a=t;for(let u in a){if(!je(a,u)||!$e.has(u))continue;let c=a[u];if(c===void 0||xe(n,r,c))continue;let p=o(c);s??(s={});for(let f of e){let C=u==="initial"?f:`${f}-${u}`;s[C]=p}}}return s??{}}function ze(...e){let t;for(let n of e)n&&(t===void 0&&(t={}),Object.assign(t,n));return t}var ae=["0","1","2","3","4","5","6","7","8","9","10","11","12","-1","-2","-3","-4","-5","-6","-7","-8","-9","-10","-11","-12"],Et={m:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-m",customProperties:["--m"]},mx:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-mx",customProperties:["--ml","--mr"]},my:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-my",customProperties:["--mt","--mb"]},mt:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-mt",customProperties:["--mt"]},mr:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-mr",customProperties:["--mr"]},mb:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-mb",customProperties:["--mb"]},ml:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-ml",customProperties:["--ml"]}};var Ct=Et.m.values,fn=new Set(Ct),zt=[{key:"m",className:"rt-r-m",customProperties:["--margin"]},{key:"mx",className:"rt-r-mx",customProperties:["--margin-left","--margin-right"]},{key:"my",className:"rt-r-my",customProperties:["--margin-top","--margin-bottom"]},{key:"mt",className:"rt-r-mt",customProperties:["--margin-top"]},{key:"mr",className:"rt-r-mr",customProperties:["--margin-right"]},{key:"mb",className:"rt-r-mb",customProperties:["--margin-bottom"]},{key:"ml",className:"rt-r-ml",customProperties:["--margin-left"]}];function wt(e){let t,n;for(let r=0;r<zt.length;r++){let{key:o,className:s,customProperties:a}=zt[r],u=e[o];if(u===void 0)continue;let[c,p]=xt({className:s,customProperties:a,propValues:Ct,propValueSet:fn,value:u});c&&(t??(t=[])).push(c),p&&(n=ze(n,p))}return[t!==void 0?t.join(" "):"",n]}var Ce=I(require("react"));function Tt(e,t){let{asChild:n,children:r}=e;if(!n)return typeof t=="function"?t(r):t;let o=Ce.Children.only(r);return Ce.cloneElement(o,{children:typeof t=="function"?t(o.props.children):t})}var Ue=F.forwardRef((e,t)=>{let{rest:n,...r}=St(e),[o,s]=wt(r),{asChild:a,children:u,className:c,style:p,type:f,scrollHideDelay:C=f!=="scroll"?0:void 0,dir:x,size:w=se.size.default,radius:$=se.radius.default,scrollbars:V=se.scrollbars.default,fade:E=se.fade.default,...S}=n,k=vt(E),L=(0,Nt.useComposedRefs)(t,k);return F.createElement(ne.ScrollArea.Root,{type:f,scrollHideDelay:C,className:(0,we.default)("rt-ScrollAreaRoot",o,c),"data-fade":E?"":void 0,style:ze(s,p),asChild:a},Tt({asChild:a,children:u},q=>F.createElement(F.Fragment,null,F.createElement(ne.ScrollArea.Viewport,{...S,ref:L,className:"rt-ScrollAreaViewport"},q),F.createElement("div",{className:"rt-ScrollAreaViewportFocusRing"}),V!=="vertical"?F.createElement(ne.ScrollArea.Scrollbar,{"data-radius":$,orientation:"horizontal",className:(0,we.default)("rt-ScrollAreaScrollbar",Ee({className:"rt-r-size",value:w,propValues:se.size.values}))},F.createElement(ne.ScrollArea.Thumb,{className:"rt-ScrollAreaThumb"})):null,V!=="horizontal"?F.createElement(ne.ScrollArea.Scrollbar,{"data-radius":$,orientation:"vertical",className:(0,we.default)("rt-ScrollAreaScrollbar",Ee({className:"rt-r-size",value:w,propValues:se.size.values}))},F.createElement(ne.ScrollArea.Thumb,{className:"rt-ScrollAreaThumb"})):null,V==="both"?F.createElement(ne.ScrollArea.Corner,{className:"rt-ScrollAreaCorner"}):null)))});Ue.displayName="ScrollArea";var Vt=N.createContext(null);function mn(){return N.useContext(Vt)}var gn=N.createContext("2");function kt({children:e,presentation:t}){let n=N.useContext(gn),r=N.useMemo(()=>({size:n,menuVariant:"soft",presentation:t}),[n,t]);return N.createElement(Vt.Provider,{value:r},e)}function qe(){let e=mn(),t=e?.size??"2",n=e?.menuVariant??"soft";return["rt-ShellPaneChrome",`rt-r-size-${t}`,`rt-menu-variant-${n}`]}var bn=N.forwardRef(({className:e,...t},n)=>{let r=qe();return N.createElement("div",{...t,ref:n,className:(0,Te.default)("rt-ShellPaneHeader","rt-SidebarHeader","rt-SidebarHeader--container",...r,e)})});bn.displayName="Shell.PaneHeader";var Pn=N.forwardRef(({className:e,...t},n)=>{let r=qe();return N.createElement("div",{...t,ref:n,className:(0,Te.default)("rt-ShellPaneFooter","rt-SidebarFooter","rt-SidebarFooter--container",...r,e)})});Pn.displayName="Shell.PaneFooter";var yn=N.forwardRef(({className:e,children:t,...n},r)=>{let o=qe();return N.createElement(Ue,{type:"hover",className:"rt-ShellScroll"},N.createElement("div",{...n,ref:r,className:(0,Te.default)("rt-BaseMenuContent","rt-SidebarContent",...o,e)},N.createElement("div",{className:"rt-BaseMenuViewport"},t)))});yn.displayName="Shell.Scroll";var Dt=e=>e==="collapsed"?"closed":e==="thin"?"thin":"open",Rn=e=>e==="closed"?"collapsed":e==="thin"?"thin":"expanded";function Mt(e){if(e===void 0)return;if(typeof e=="string")return Dt(e);let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(t[n]=Dt(r));return t}var vn={controlled:"state",default:"defaultState"},Sn={initial:"overlay",sm:"fixed"},Lt=e=>e==="closed"?"thin":e==="thin"?"open":"closed",At=(e,t)=>{let n=t==="thin"?"thin":"open";return e==="closed"?n:e===n?"closed":n},We=_.forwardRef((e,t)=>{let{className:n,presentation:r=Sn,expandedSize:o=288,minSize:s=200,maxSize:a=400,resizable:u=!1,collapsible:c=!0,onExpand:p,onCollapse:f,onResize:C,onResizeStart:x,onResizeEnd:w,snapPoints:$,snapTolerance:V,collapseThreshold:E,paneId:S,persistence:k,children:L,style:q,thinSize:K=64,toggleModes:A="both",state:B,defaultState:Q,onStateChange:i,size:b,defaultSize:z,onSizeChange:T,sizeUpdate:D,sizeUpdateMs:X=50,inset:l,id:y,...R}=e,{table:O,attributes:H}=dt(r,"fixed"),m=ut({name:"sidebar",label:"Sidebar",propNames:vn,id:y,controlled:Mt(B),defaultValue:Mt(Q),presentationTable:O,builtIn:gt,onChange:(Ne,te)=>i?.(Rn(Ne),{reason:te}),toggleNext:A==="single"?At:Lt,onExpand:p,onCollapse:f,size:o});lt("sidebar",l),(e.thinSize!==void 0||m.value==="thin")&&void 0,_.useEffect(()=>{($!==void 0||E!==void 0||S!==void 0||k!==void 0)&&void 0},[$,E,S,k]);let v=_.useRef(null),ee=(0,Ot.useComposedRefs)(t,m.setElement,v),d=ft({name:"sidebar",elementId:m.id,elementRef:v,cssVarName:"--sidebar-size",orientation:"vertical",edge:"end",growth:bt,expandedSize:o,minSize:s,maxSize:a,resizable:u,collapsible:c,size:b,defaultSize:z,onSizeChange:T,sizeUpdate:D,sizeUpdateMs:X,onResize:C,onResizeStart:x,onResizeEnd:w,snapPoints:$,snapTolerance:V,collapseThreshold:E,paneId:S,persistence:k,overlaying:m.overlaying,overlayingNow:()=>O[pe()]==="overlay",requestCollapse:()=>m.setValue("closed","toggle"),requestToggle:()=>m.toggle("toggle")}),{handles:U,content:Y}=mt(L,ye),J=u&&m.value!=="closed"&&m.value!=="thin"&&!m.overlaying?_.createElement(De.Provider,{value:d},U.length>0?U:_.createElement(re,null)):null,me=m.peeking?(A==="single"?At:Lt)("closed",m.defaultHereNow())==="thin"?`${K}px`:`var(--sidebar-size, ${o}px)`:void 0;return _.createElement("div",{...Pt(R),id:m.id,ref:ee,className:(0,Bt.default)("rt-ShellPane","rt-ShellSidebar",n),...ct(m,H),"data-inset":l||void 0,tabIndex:m.overlaying?-1:R.tabIndex,style:{...q,"--sidebar-expanded-size":`${o}px`,"--sidebar-thin-size":`${K}px`,"--sidebar-min-size":`${s}px`,"--sidebar-max-size":`${a}px`,...me?{"--peek-sidebar-width":me}:{}}},_.createElement("div",{className:"rt-ShellSidebarContent"},_.createElement(kt,null,Y)),J)});We.displayName="Shell.Sidebar";We.Handle=ye;
1
+ "use strict";"use client";var Ot=Object.create;var be=Object.defineProperty;var Ht=Object.getOwnPropertyDescriptor;var It=Object.getOwnPropertyNames;var $t=Object.getPrototypeOf,jt=Object.prototype.hasOwnProperty;var Ft=(e,t)=>{for(var n in t)be(e,n,{get:t[n],enumerable:!0})},Ye=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of It(t))!jt.call(e,o)&&o!==n&&be(e,o,{get:()=>t[o],enumerable:!(r=Ht(t,o))||r.enumerable});return e};var H=(e,t,n)=>(n=e!=null?Ot($t(e)):{},Ye(t||!e||!e.__esModule?be(n,"default",{value:e,enumerable:!0}):n,e)),Ut=e=>Ye(be({},"__esModule",{value:!0}),e);var vn={};Ft(vn,{Sidebar:()=>qe});module.exports=Ut(vn);var _=H(require("react")),Lt=H(require("classnames")),Mt=require("radix-ui/internal");var ge=H(require("react")),ke=ge.createContext(null);function Je(){let e=ge.useContext(ke);if(!e)throw new Error("Shell.Handle must be used within a resizable pane");return e}var h=H(require("react")),Ze=H(require("classnames"));var re=h.forwardRef(({className:e,children:t,...n},r)=>{let{containerRef:o,controls:s,cssVarName:a,minSize:u,maxSize:c,defaultSize:p,orientation:f,edge:z,growth:x,onResize:w,onResizeStart:I,onResizeEnd:k,snapPoints:E,snapTolerance:S,collapseThreshold:D,collapsible:B,target:U,requestCollapse:ee,requestToggle:$}=Je(),O=h.useRef(null),Q=h.useCallback(l=>{O.current=l,typeof r=="function"?r(l):r&&(r.current=l)},[r]),i=h.useRef(null);h.useEffect(()=>()=>{i.current?.(),i.current=null},[]);let b=h.useCallback(()=>{let l=o.current;if(!l)return p;let g=Number.parseFloat(getComputedStyle(l).getPropertyValue(a));return Number.isFinite(g)?g:p},[o,a,p]),C=h.useCallback(()=>{let l=o.current,g=O.current,P=l?.closest(".rt-ShellRoot")?.getBoundingClientRect();if(!l||!P||!g)return c;let v=l.getBoundingClientRect(),A=g.getBoundingClientRect(),M=x(getComputedStyle(l).direction==="rtl"),R;f==="vertical"?R=M>0?P.right-v.left:v.right-P.left:R=M>0?P.bottom-v.top:v.bottom-P.top;let Y=f==="vertical"?A.width:A.height;return!(P.width>0&&P.height>0)||!Number.isFinite(R)?c:Math.max(u,Math.min(c,Math.round(R-Y)))},[o,x,c,u,f]),T=()=>{O.current?.setAttribute("aria-valuemax",String(C()))};h.useLayoutEffect(()=>{O.current?.setAttribute("aria-valuenow",String(Math.round(b())))},[b]);let N=(l,g)=>{l.style.setProperty(a,`${g}px`),O.current?.setAttribute("aria-valuenow",String(Math.round(g)))},X=U.charAt(0).toUpperCase()+U.slice(1);return h.createElement("div",{ref:Q,className:(0,Ze.default)("rt-ShellResizer",e),"data-orientation":f,"data-edge":z,role:"separator",tabIndex:0,"aria-label":`Resize ${X} pane`,"aria-controls":s,"aria-orientation":f,"aria-valuemin":u,"aria-valuemax":c,...n,onPointerDown:l=>{n.onPointerDown?.(l);let g=o.current;if(!g||l.defaultPrevented||l.button!==0)return;l.preventDefault();let P=l.currentTarget,v=l.pointerId;i.current?.();try{P.setPointerCapture(v)}catch{}let A=getComputedStyle(g),M=Number.parseFloat(A.getPropertyValue(a)),R=Number.isFinite(M)?M:p,Y=f==="vertical"?l.clientX:l.clientY,d=x(A.direction==="rtl"),q=C();P.setAttribute("aria-valuemax",String(q));let G=L=>Math.min(Math.max(L,u),q);g.setAttribute("data-resizing",""),P.setAttribute("data-dragging","");let J=document.body,Te=J.style.cursor,At=J.style.userSelect;J.style.cursor=f==="vertical"?"col-resize":"row-resize",J.style.userSelect="none",I?.(R);let ne=R,Ne=R,K=0,ue=null,We=()=>{if(K=0,ue===null)return;let L=ue;ue=null,w?.(L)},_e=null,Ge=!1,Bt=(L,ie)=>{if(L.type===ie)Ge=!0;else if(Ge)return!1;return!0},Z=L=>{if(!Bt(L,"pointermove")||L===_e)return;_e=L;let ie=f==="vertical"?L.clientX:L.clientY;Ne=R+(ie-Y)*d,ne=G(Ne),N(g,ne),ue=ne,K||(K=requestAnimationFrame(We))},me=()=>{K&&cancelAnimationFrame(K),K=0;try{P.releasePointerCapture(v)}catch{}window.removeEventListener("pointermove",Z),document.removeEventListener("pointermove",Z),window.removeEventListener("mousemove",Z),document.removeEventListener("mousemove",Z),P.removeEventListener("pointermove",Z),window.removeEventListener("pointerup",j),document.removeEventListener("pointerup",j),window.removeEventListener("mouseup",j),document.removeEventListener("mouseup",j),window.removeEventListener("pointercancel",j),document.removeEventListener("pointercancel",j),window.removeEventListener("keydown",Ke),P.removeEventListener("lostpointercapture",j),g.removeAttribute("data-resizing"),P.removeAttribute("data-dragging"),J.style.cursor=Te,J.style.userSelect=At,i.current=null},Ve=!1,j=()=>{if(Ve)return;if(Ve=!0,K&&cancelAnimationFrame(K),We(),B&&typeof D=="number"&&Ne<=D){N(g,R),w?.(R),me(),ee?.(),k?.(R);return}let L=ne;if(E&&E.length){let ie=E.reduce((Qe,Xe)=>Math.abs(Xe-ne)<Math.abs(Qe-ne)?Xe:Qe,E[0]);Math.abs(ie-ne)<=S&&(L=G(ie),N(g,L),w?.(L))}k?.(L),me()},Ke=L=>{L.key==="Escape"&&(K&&cancelAnimationFrame(K),K=0,ue=null,N(g,R),w?.(R),Ve=!0,k?.(R),me())};window.addEventListener("pointermove",Z),document.addEventListener("pointermove",Z),window.addEventListener("mousemove",Z),document.addEventListener("mousemove",Z),P.addEventListener("pointermove",Z),window.addEventListener("pointerup",j),document.addEventListener("pointerup",j),window.addEventListener("mouseup",j),document.addEventListener("mouseup",j),window.addEventListener("pointercancel",j),document.addEventListener("pointercancel",j),window.addEventListener("keydown",Ke),P.addEventListener("lostpointercapture",j),i.current=me},onDoubleClick:l=>{n.onDoubleClick?.(l),!l.defaultPrevented&&B&&$?.()},onFocus:l=>{n.onFocus?.(l),T()},onKeyDown:l=>{n.onKeyDown?.(l);let g=o.current;if(!g||l.defaultPrevented)return;let P=b(),v=C(),A=R=>Math.min(Math.max(R,u),v),M;if(l.key==="Home")M=A(u);else if(l.key==="End")M=A(v);else{let R=f==="vertical"?l.key==="ArrowRight"?1:l.key==="ArrowLeft"?-1:0:l.key==="ArrowDown"?1:l.key==="ArrowUp"?-1:0;if(R===0)return;let Y=l.shiftKey?32:8;M=A(P+R*Y*x(getComputedStyle(g).direction==="rtl"))}l.preventDefault(),I?.(P),N(g,M),w?.(M),k?.(M)}},t)});re.displayName="Shell.Handle";var qt=h.forwardRef((e,t)=>h.createElement(re,{...e,ref:t}));qt.displayName="Shell.Panel.Handle";var ye=h.forwardRef((e,t)=>h.createElement(re,{...e,ref:t}));ye.displayName="Shell.Sidebar.Handle";var Wt=h.forwardRef((e,t)=>h.createElement(re,{...e,ref:t}));Wt.displayName="Shell.Inspector.Handle";var _t=h.forwardRef((e,t)=>h.createElement(re,{...e,ref:t}));_t.displayName="Shell.Bottom.Handle";var y=H(require("react"));var de=H(require("react"));var et={xs:"(min-width: 520px)",sm:"(min-width: 768px)",md:"(min-width: 1024px)",lg:"(min-width: 1280px)",xl:"(min-width: 1640px)"},Pe=["initial","xs","sm","md","lg","xl"];var Gt=Object.entries(et),De=null,ce=new Set,oe=null;function Le(){return De??(De=Gt.map(([e,t])=>[e,window.matchMedia(t)])),De}function ve(){let e="initial";for(let[t,n]of Le())n.matches&&(e=t);return e}function Re(){let e=ve();e!==oe&&(oe=e,ce.forEach(t=>t()))}function tt(e){if(typeof window>"u")return()=>{};if(ce.size===0){oe=ve();for(let[,t]of Le())typeof t.addEventListener=="function"?t.addEventListener("change",Re):t.addListener?.(Re)}return ce.add(e),()=>{if(ce.delete(e),!(ce.size>0)){for(let[,t]of Le())try{typeof t.removeEventListener=="function"?t.removeEventListener("change",Re):t.removeListener?.(Re)}catch{}oe=null}}}function Kt(){return typeof window>"u"?"initial":(oe??(oe=ve()),oe)}function Qt(){return"initial"}function pe(){return typeof window>"u"?"initial":ve()}var Xt=()=>!0,Yt=()=>!1,nt=()=>()=>{},Jt=()=>"initial";function rt(e=!0){let t=de.useSyncExternalStore(e?tt:nt,e?Kt:Jt,Qt),n=de.useSyncExternalStore(e?tt:nt,Xt,Yt);return de.useMemo(()=>({breakpoint:t,ready:n}),[t,n])}var W=H(require("react"));function ot(e){return typeof e=="object"&&e!==null}function fe(e,t){let n={},r=null;for(let o of Pe){if(e!==void 0&&!ot(e)){n[o]=e;continue}let s=ot(e)?e[o]:void 0;s!==void 0&&(r={value:s}),n[o]=r?r.value:t(o)}return n}function le(e){let t=e.initial;return Pe.every(n=>e[n]===t)?t:void 0}function Me(e,t){let n=le(t);if(n!==void 0)return{[`data-${e}`]:n};let r={};for(let o of Pe)r[`data-${e}-${o}`]=t[o];return r}function Ae(e){return typeof e=="object"&&e!==null?JSON.stringify(e):String(e)}var Nn=fe("fixed",()=>"fixed");function Be(e){e.version+=1;for(let t of e.listeners)t()}function Zt(e,t){return e.listeners.add(t),()=>{e.listeners.delete(t)}}var en=W.createContext(null);function st(e){let t=W.useContext(en);if(!t)throw new Error(`${e} must be used within <Shell.Root>`);return t}function at(e,t){let n=W.useCallback(r=>Zt(e,r),[e]);return W.useSyncExternalStore(n,()=>e.peek===t,()=>!1)}var tn=W.createContext(null);function it(e,t){let n=W.useContext(tn);if(!n)throw new Error("Shell panes must be used within <Shell.Root>");let{registerInset:r,unregisterInset:o}=n;W.useLayoutEffect(()=>{if(t)return r(e),()=>o(e)},[e,t,r,o])}var Oe=e=>typeof e=="object"&&e!==null;function rn(e){for(let t of["initial","xs","sm","md","lg","xl"]){let n=e[t];if(n!==void 0)return n}return"closed"}function lt(e){let{name:t,label:n,propNames:r,presentationTable:o,builtIn:s}=e,a=st(`Shell.${n}`),u=y.useId(),c=e.id??`shell-${t}${u}`,p=e.controlled!==void 0,f=Oe(e.controlled);f&&(`${n}${r.controlled}${r.default}`,void 0);let z=f?e.controlled:void 0,x=z??(Oe(e.defaultValue)?e.defaultValue:void 0),w=Ae(x),[I,k]=y.useState(()=>typeof e.defaultValue=="string"?e.defaultValue:"auto"),E=y.useMemo(()=>z?fe(z,()=>rn(z)):fe(x,d=>s(o[d])),[w,f,o,s]),S=I;p&&(S=z?"auto":e.controlled);let D=le(o)===void 0||S==="auto"&&le(E)===void 0,{breakpoint:B,ready:U}=rt(D),ee=d=>{let q=le(d);return q!==void 0?q:U?d[B]:void 0},$=S==="auto"?ee(E):S,O=ee(o),Q=O==="overlay",i=$===void 0?void 0:$!=="closed",b=i===!0&&Q,C=e.defaultValue,T=y.useRef({state:S,value:$,autoTable:E,defaultValue:C,controlled:p,onChange:e.onChange,toggleNext:e.toggleNext});y.useLayoutEffect(()=>{T.current={state:S,value:$,autoTable:E,defaultValue:C,controlled:p,onChange:e.onChange,toggleNext:e.toggleNext}});let N=y.useCallback(()=>{let d=T.current;return d.value!==void 0?d.value:d.state==="auto"?d.autoTable[pe()]:void 0},[]),X=y.useCallback(()=>{let d=T.current;return typeof d.defaultValue=="string"?d.defaultValue:Oe(d.defaultValue)?d.autoTable[pe()]:void 0},[]),l=y.useCallback((d,q)=>{let G=T.current;N()!==d&&(G.onChange?.(d,q),G.controlled||k(d))},[N]),g=y.useCallback(d=>{let q=T.current,G=N()??"closed",J=q.toggleNext?q.toggleNext(G,X()):G==="closed"?"open":"closed";l(J,d)},[l,N,X]),P=y.useRef(null),v=y.useCallback(d=>{P.current=d},[]);y.useLayoutEffect(()=>{let d={name:t,id:c,el:P.current,value:$,presentation:O,presentationTable:o,overlayLive:b,size:e.size,setValue:l,toggle:g};return a.entries.set(t,d),Be(a),()=>{a.entries.get(t)===d&&(a.entries.delete(t),Be(a))}},[a,t,c,$,O,o,b,e.size,l,g]);let A=y.useRef({onExpand:e.onExpand,onCollapse:e.onCollapse});y.useLayoutEffect(()=>{A.current={onExpand:e.onExpand,onCollapse:e.onCollapse}});let M=y.useRef({state:S,shown:i});y.useEffect(()=>{let d=M.current;d.state!==S&&d.shown!==void 0&&i!==void 0&&d.shown!==i&&(i?A.current.onExpand?.():A.current.onCollapse?.()),M.current={state:S,shown:i}},[S,i]),y.useLayoutEffect(()=>{},[]);let R=y.useRef(p);y.useEffect(()=>{},[p,n,r.controlled]);let Y=at(a,t)&&i===!1&&!Q;return{store:a,id:c,state:S,value:$,shown:i,presentation:O,overlaying:Q,overlayLive:b,peeking:Y,ready:U,breakpoint:B,autoTable:E,setValue:l,toggle:g,defaultHereNow:X,setElement:v}}function ut(e,t){let{state:n,value:r,presentation:o,shown:s}=e;return{...t,"data-state":n,...n==="auto"?Me("auto",e.autoTable):{},"data-presentation":o,"data-mode":r===void 0?void 0:r==="closed"?"collapsed":"expanded","data-open":o==="stacked"&&s?"":void 0,"data-peek":e.peeking?"":void 0}}function ct(e,t){let n=Ae(e),r=y.useMemo(()=>fe(e,()=>t),[n,t]),o=y.useMemo(()=>le(r)===void 0?Me("presentation",r):{},[r]);return{table:r,attributes:o}}var m=H(require("react"));function dt(e,t="horizontal"){if(e==null)return;if(typeof e=="number"&&Number.isFinite(e))return e;let n=String(e).trim();if(!n)return;if(n.endsWith("px"))return Number.parseFloat(n);if(n.endsWith("rem")){let o=Number.parseFloat(getComputedStyle(document.documentElement).fontSize||"16")||16;return Number.parseFloat(n)*o}if(n.endsWith("%")){let o=Number.parseFloat(n),s=t==="horizontal"?document.documentElement.clientWidth||window.innerWidth||0:document.documentElement.clientHeight||window.innerHeight||0;return o/100*s}let r=Number.parseFloat(n);return Number.isFinite(r)?r:void 0}var He=(e,t,n)=>Math.max(t??e,Math.min(n??e,e));function pt(e){let{name:t,elementRef:n,cssVarName:r,orientation:o,minSize:s,maxSize:a,resizable:u,size:c,defaultSize:p,paneId:f,persistence:z}=e,x=m.useRef(e);m.useLayoutEffect(()=>{x.current=e});let w=m.useRef(null),I=m.useRef(0);m.useEffect(()=>()=>{w.current&&clearTimeout(w.current)},[]);let k=m.useCallback((i,b)=>{let{onSizeChange:C,sizeUpdate:T,sizeUpdateMs:N}=x.current;if(C){if(T==="debounce"){w.current&&clearTimeout(w.current),w.current=setTimeout(()=>{w.current=null,x.current.onSizeChange?.(i,b)},N);return}if(T==="throttle"){let X=Date.now();if(X-I.current<N)return;I.current=X}C(i,b)}},[]),E=m.useCallback(i=>dt(i,o==="vertical"?"horizontal":"vertical"),[o]),S=m.useRef(!1),D=m.useCallback((i,b)=>{let C=n.current;if(C){C.style.setProperty(r,`${i}px`);for(let T of C.querySelectorAll(":scope > .rt-ShellResizer"))T.setAttribute("aria-valuenow",String(Math.round(i)));b&&(S.current=!0)}},[n,r]);m.useLayoutEffect(()=>{S.current||D(e.expandedSize,!1)},[e.expandedSize,D]),m.useLayoutEffect(()=>{if(c!==void 0||p===void 0)return;let i=E(p);if(typeof i!="number"||!Number.isFinite(i))return;let b=He(i,s,a);D(b,!0),k(b,{reason:"init"})},[]),m.useLayoutEffect(()=>{if(c===void 0||x.current.overlayingNow())return;let i=E(c);if(typeof i!="number"||!Number.isFinite(i))return;let b=He(i,s,a);D(b,!0),k(b,{reason:"controlled"})},[c,s,a,e.overlaying,E,D,k]);let B=m.useMemo(()=>{if(!f||z)return z;let i=`kookie-ui:shell:${t}:${f}`;return{load:()=>{if(!(typeof window>"u"))try{let b=window.localStorage.getItem(i);return b?Number(b):void 0}catch{return}},save:b=>{if(!(typeof window>"u"))try{window.localStorage.setItem(i,String(b))}catch{}}}},[t,f,z]);m.useLayoutEffect(()=>{if(!u||!B?.load||x.current.overlayingNow())return;let i=!0,b=T=>{if(!i||typeof T!="number"||!Number.isFinite(T))return;let N=He(T,s,a);D(N,!0),x.current.onResize?.(N)},C=B.load();return C instanceof Promise?C.then(b).catch(T=>{}):b(C),()=>{i=!1}},[u,B,e.overlaying,D,s,a,t]);let U=m.useCallback(i=>x.current.onResize?.(i),[]),ee=m.useCallback(i=>{S.current=!0,x.current.onResizeStart?.(i)},[]),$=m.useCallback(i=>{x.current.onResizeEnd?.(i),k(i,{reason:"resize"}),B?.save?.(i)},[k,B]),O=m.useCallback(()=>x.current.requestCollapse(),[]),Q=m.useCallback(()=>x.current.requestToggle(),[]);return m.useMemo(()=>({containerRef:n,controls:e.elementId,cssVarName:r,minSize:s,maxSize:a,defaultSize:e.expandedSize,orientation:o,edge:e.edge,growth:e.growth,onResize:U,onResizeStart:ee,onResizeEnd:$,target:t,collapsible:e.collapsible,snapPoints:e.snapPoints,snapTolerance:e.snapTolerance??8,collapseThreshold:e.collapseThreshold,requestCollapse:O,requestToggle:Q}),[n,e.elementId,r,s,a,e.expandedSize,o,e.edge,e.growth,U,ee,$,t,e.collapsible,e.snapPoints,e.snapTolerance,e.collapseThreshold,O,Q])}function ft(e,t){let n=m.Children.toArray(e),r=n.filter(s=>m.isValidElement(s)&&s.type===t),o=n.filter(s=>!(m.isValidElement(s)&&s.type===t));return{handles:r,content:o}}var mt=e=>e==="overlay"?"closed":"open";var bt=e=>e?-1:1;function gt(e){if(!("height"in e)&&!("resizer"in e))return e;let{height:t,resizer:n,...r}=e;return r}var V=H(require("react")),we=H(require("classnames"));var F=H(require("react")),ze=H(require("classnames")),te=require("radix-ui"),Tt=require("radix-ui/internal");var yt={asChild:{type:"boolean"}};var on=["none","small","medium","large","full"],Pt={radius:{type:"enum",values:on,default:void 0}};var sn=["1","2","3"],an=["vertical","horizontal","both"],se={...yt,size:{type:"enum",className:"rt-r-size",values:sn,default:"1",responsive:!0},...Pt,scrollbars:{type:"enum",values:an,default:"both"},fade:{type:"boolean",default:!1}};var Se=H(require("react"));function Rt(e){let[t,n]=Se.useState(null);return Se.useEffect(()=>{if(!e||!t)return;let r=0,o=()=>{r=0;let c=Math.max(0,t.scrollTop),p=Math.max(0,t.scrollHeight-t.clientHeight-t.scrollTop);t.style.setProperty("--scroll-overflow-start",`${c}px`),t.style.setProperty("--scroll-overflow-end",`${p}px`)},s=()=>{r||(r=requestAnimationFrame(o))};o(),t.addEventListener("scroll",s,{passive:!0});let a=typeof ResizeObserver>"u"?null:new ResizeObserver(s);a?.observe(t);for(let c of Array.from(t.children))a?.observe(c);let u=typeof MutationObserver>"u"?null:new MutationObserver(s);return u?.observe(t,{childList:!0}),()=>{r&&cancelAnimationFrame(r),t.removeEventListener("scroll",s),a?.disconnect(),u?.disconnect(),t.style.removeProperty("--scroll-overflow-start"),t.style.removeProperty("--scroll-overflow-end")}},[e,t]),n}function vt(e){let{m:t,mx:n,my:r,mt:o,mr:s,mb:a,ml:u,...c}=e;return{m:t,mx:n,my:r,mt:o,mr:s,mb:a,ml:u,rest:c}}var ln=["initial","xs","sm","md","lg","xl"],Ie=new Set(ln);function $e(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var un=new Set(["initial","xs","sm","md","lg","xl"]);function je(e){if(typeof e!="object"||e===null)return!1;for(let t in e)if(un.has(t))return!0;return!1}function he(e,t,n){return t!==void 0?t.has(n):e.includes(n)}function ht({className:e,customProperties:t,...n}){let r=xe({allowArbitraryValues:!0,className:e,...n}),o=cn({customProperties:t,...n});return[r,o]}function xe({allowArbitraryValues:e,value:t,className:n,propValues:r,propValueSet:o,parseValue:s=a=>a}){if(t){if(typeof t=="string")return he(r,o,t)?St(n,t,s):e?n:void 0;if(je(t)){let a=t,u=[];for(let c in a){if(!$e(a,c)||!Ie.has(c))continue;let p=a[c];if(p!==void 0){if(he(r,o,p)){let f=St(n,p,s),z=c==="initial"?f:`${c}:${f}`;u.push(z)}else if(e){let f=c==="initial"?n:`${c}:${n}`;u.push(f)}}}return u.length>0?u.join(" "):""}if(e)return n}}function St(e,t,n){let r=e?"-":"",o=n(t),s=o?.startsWith("-"),a=s?"-":"",u=s?o?.substring(1):o;return`${a}${e}${r}${u}`}function cn({customProperties:e,value:t,propValues:n,propValueSet:r,parseValue:o=s=>s}){if(!t||typeof t=="string"&&he(n,r,t))return;let s;if(typeof t=="string"){let a=o(t);s={};for(let u of e)s[u]=a;return s}if(je(t)){let a=t;for(let u in a){if(!$e(a,u)||!Ie.has(u))continue;let c=a[u];if(c===void 0||he(n,r,c))continue;let p=o(c);s??(s={});for(let f of e){let z=u==="initial"?f:`${f}-${u}`;s[z]=p}}}return s??{}}function Ee(...e){let t;for(let n of e)n&&(t===void 0&&(t={}),Object.assign(t,n));return t}var ae=["0","1","2","3","4","5","6","7","8","9","10","11","12","-1","-2","-3","-4","-5","-6","-7","-8","-9","-10","-11","-12"],xt={m:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-m",customProperties:["--m"]},mx:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-mx",customProperties:["--ml","--mr"]},my:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-my",customProperties:["--mt","--mb"]},mt:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-mt",customProperties:["--mt"]},mr:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-mr",customProperties:["--mr"]},mb:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-mb",customProperties:["--mb"]},ml:{type:"enum | string",values:ae,responsive:!0,className:"rt-r-ml",customProperties:["--ml"]}};var Ct=xt.m.values,dn=new Set(Ct),Et=[{key:"m",className:"rt-r-m",customProperties:["--margin"]},{key:"mx",className:"rt-r-mx",customProperties:["--margin-left","--margin-right"]},{key:"my",className:"rt-r-my",customProperties:["--margin-top","--margin-bottom"]},{key:"mt",className:"rt-r-mt",customProperties:["--margin-top"]},{key:"mr",className:"rt-r-mr",customProperties:["--margin-right"]},{key:"mb",className:"rt-r-mb",customProperties:["--margin-bottom"]},{key:"ml",className:"rt-r-ml",customProperties:["--margin-left"]}];function zt(e){let t,n;for(let r=0;r<Et.length;r++){let{key:o,className:s,customProperties:a}=Et[r],u=e[o];if(u===void 0)continue;let[c,p]=ht({className:s,customProperties:a,propValues:Ct,propValueSet:dn,value:u});c&&(t??(t=[])).push(c),p&&(n=Ee(n,p))}return[t!==void 0?t.join(" "):"",n]}var Ce=H(require("react"));function wt(e,t){let{asChild:n,children:r}=e;if(!n)return typeof t=="function"?t(r):t;let o=Ce.Children.only(r);return Ce.cloneElement(o,{children:typeof t=="function"?t(o.props.children):t})}var Fe=F.forwardRef((e,t)=>{let{rest:n,...r}=vt(e),[o,s]=zt(r),{asChild:a,children:u,className:c,style:p,type:f,scrollHideDelay:z=f!=="scroll"?0:void 0,dir:x,size:w=se.size.default,radius:I=se.radius.default,scrollbars:k=se.scrollbars.default,fade:E=se.fade.default,...S}=n,D=Rt(E),B=(0,Tt.useComposedRefs)(t,D);return F.createElement(te.ScrollArea.Root,{type:f,scrollHideDelay:z,className:(0,ze.default)("rt-ScrollAreaRoot",o,c),"data-fade":E?"":void 0,style:Ee(s,p),asChild:a},wt({asChild:a,children:u},U=>F.createElement(F.Fragment,null,F.createElement(te.ScrollArea.Viewport,{...S,ref:B,className:"rt-ScrollAreaViewport"},U),F.createElement("div",{className:"rt-ScrollAreaViewportFocusRing"}),k!=="vertical"?F.createElement(te.ScrollArea.Scrollbar,{"data-radius":I,orientation:"horizontal",className:(0,ze.default)("rt-ScrollAreaScrollbar",xe({className:"rt-r-size",value:w,propValues:se.size.values}))},F.createElement(te.ScrollArea.Thumb,{className:"rt-ScrollAreaThumb"})):null,k!=="horizontal"?F.createElement(te.ScrollArea.Scrollbar,{"data-radius":I,orientation:"vertical",className:(0,ze.default)("rt-ScrollAreaScrollbar",xe({className:"rt-r-size",value:w,propValues:se.size.values}))},F.createElement(te.ScrollArea.Thumb,{className:"rt-ScrollAreaThumb"})):null,k==="both"?F.createElement(te.ScrollArea.Corner,{className:"rt-ScrollAreaCorner"}):null)))});Fe.displayName="ScrollArea";var Nt=V.createContext(null);function pn(){return V.useContext(Nt)}var fn=V.createContext("2");function Vt({children:e,presentation:t}){let n=V.useContext(fn),r=V.useMemo(()=>({size:n,menuVariant:"soft",presentation:t}),[n,t]);return V.createElement(Nt.Provider,{value:r},e)}function Ue(){let e=pn(),t=e?.size??"2",n=e?.menuVariant??"soft";return["rt-ShellPaneChrome",`rt-r-size-${t}`,`rt-menu-variant-${n}`]}var mn=V.forwardRef(({className:e,...t},n)=>{let r=Ue();return V.createElement("div",{...t,ref:n,className:(0,we.default)("rt-ShellPaneHeader","rt-SidebarHeader","rt-SidebarHeader--container",...r,e)})});mn.displayName="Shell.PaneHeader";var bn=V.forwardRef(({className:e,...t},n)=>{let r=Ue();return V.createElement("div",{...t,ref:n,className:(0,we.default)("rt-ShellPaneFooter","rt-SidebarFooter","rt-SidebarFooter--container",...r,e)})});bn.displayName="Shell.PaneFooter";var gn=V.forwardRef(({className:e,children:t,...n},r)=>{let o=Ue();return V.createElement(Fe,{type:"hover",className:"rt-ShellScroll"},V.createElement("div",{...n,ref:r,className:(0,we.default)("rt-BaseMenuContent","rt-SidebarContent",...o,e)},V.createElement("div",{className:"rt-BaseMenuViewport"},t)))});gn.displayName="Shell.Scroll";var kt=e=>e==="collapsed"?"closed":"open",yn=e=>e==="closed"?"collapsed":"expanded";function Dt(e){if(e===void 0)return;if(typeof e=="string")return kt(e);let t={};for(let[n,r]of Object.entries(e))r!==void 0&&(t[n]=kt(r));return t}var Pn={controlled:"state",default:"defaultState"},Rn={initial:"overlay",sm:"fixed"},qe=_.forwardRef((e,t)=>{let{className:n,presentation:r=Rn,expandedSize:o=288,minSize:s=200,maxSize:a=400,resizable:u=!1,collapsible:c=!0,onExpand:p,onCollapse:f,onResize:z,onResizeStart:x,onResizeEnd:w,snapPoints:I,snapTolerance:k,collapseThreshold:E,paneId:S,persistence:D,children:B,style:U,state:ee,defaultState:$,onStateChange:O,size:Q,defaultSize:i,onSizeChange:b,sizeUpdate:C,sizeUpdateMs:T=50,inset:N,id:X,...l}=e,{table:g,attributes:P}=ct(r,"fixed"),v=lt({name:"sidebar",label:"Sidebar",propNames:Pn,id:X,controlled:Dt(ee),defaultValue:Dt($),presentationTable:g,builtIn:mt,onChange:(J,Te)=>O?.(yn(J),{reason:Te}),onExpand:p,onCollapse:f,size:o});it("sidebar",N),_.useEffect(()=>{(I!==void 0||E!==void 0||S!==void 0||D!==void 0)&&void 0},[I,E,S,D]);let A=_.useRef(null),M=(0,Mt.useComposedRefs)(t,v.setElement,A),R=pt({name:"sidebar",elementId:v.id,elementRef:A,cssVarName:"--sidebar-size",orientation:"vertical",edge:"end",growth:bt,expandedSize:o,minSize:s,maxSize:a,resizable:u,collapsible:c,size:Q,defaultSize:i,onSizeChange:b,sizeUpdate:C,sizeUpdateMs:T,onResize:z,onResizeStart:x,onResizeEnd:w,snapPoints:I,snapTolerance:k,collapseThreshold:E,paneId:S,persistence:D,overlaying:v.overlaying,overlayingNow:()=>g[pe()]==="overlay",requestCollapse:()=>v.setValue("closed","toggle"),requestToggle:()=>v.toggle("toggle")}),{handles:Y,content:d}=ft(B,ye),q=u&&v.value!=="closed"&&!v.overlaying?_.createElement(ke.Provider,{value:R},Y.length>0?Y:_.createElement(re,null)):null,G=v.peeking?`var(--sidebar-size, ${o}px)`:void 0;return _.createElement("div",{...gt(l),id:v.id,ref:M,className:(0,Lt.default)("rt-ShellPane","rt-ShellSidebar",n),...ut(v,P),"data-inset":N||void 0,tabIndex:v.overlaying?-1:l.tabIndex,style:{...U,"--sidebar-expanded-size":`${o}px`,"--sidebar-min-size":`${s}px`,"--sidebar-max-size":`${a}px`,...G?{"--peek-sidebar-width":G}:{}}},_.createElement("div",{className:"rt-ShellSidebarContent"},_.createElement(Vt,null,d)),q)});qe.displayName="Shell.Sidebar";qe.Handle=ye;
2
2
  //# sourceMappingURL=shell-sidebar.js.map