@mastra/playground-ui 51.4.0-alpha.2 → 51.4.0-alpha.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (613) hide show
  1. package/dist/{Badge-uGehUtus.js → Badge-CvgvWjuP.js} +2 -2
  2. package/dist/{Badge-uGehUtus.js.map → Badge-CvgvWjuP.js.map} +1 -1
  3. package/dist/{Badge-DcllBqFg.cjs → Badge-uc0ydYdy.cjs} +2 -2
  4. package/dist/{Badge-DcllBqFg.cjs.map → Badge-uc0ydYdy.cjs.map} +1 -1
  5. package/dist/{Button-vr_I4iME.js → Button-BsfLQEC6.js} +4 -4
  6. package/dist/{Button-vr_I4iME.js.map → Button-BsfLQEC6.js.map} +1 -1
  7. package/dist/{Button-DA5XLUon.cjs → Button-D10WB4vc.cjs} +4 -4
  8. package/dist/{Button-DA5XLUon.cjs.map → Button-D10WB4vc.cjs.map} +1 -1
  9. package/dist/{Card-BjFMX3pD.js → Card-CbNFrGXs.js} +3 -3
  10. package/dist/{Card-BjFMX3pD.js.map → Card-CbNFrGXs.js.map} +1 -1
  11. package/dist/{Card-WU2qkiHB.cjs → Card-ZR65FNl8.cjs} +3 -3
  12. package/dist/{Card-WU2qkiHB.cjs.map → Card-ZR65FNl8.cjs.map} +1 -1
  13. package/dist/{EmptyState-BLd-LJOA.js → EmptyState-CA1zVauT.js} +2 -2
  14. package/dist/{EmptyState-BLd-LJOA.js.map → EmptyState-CA1zVauT.js.map} +1 -1
  15. package/dist/{EmptyState-sff7IGrD.cjs → EmptyState-hauyLuHd.cjs} +2 -2
  16. package/dist/{EmptyState-sff7IGrD.cjs.map → EmptyState-hauyLuHd.cjs.map} +1 -1
  17. package/dist/{Notice-XR_HdGMF.js → Notice-DSUAUUYU.js} +3 -3
  18. package/dist/{Notice-XR_HdGMF.js.map → Notice-DSUAUUYU.js.map} +1 -1
  19. package/dist/{Notice-BoT3Qi4U.cjs → Notice-D_ji361h.cjs} +3 -3
  20. package/dist/{Notice-BoT3Qi4U.cjs.map → Notice-D_ji361h.cjs.map} +1 -1
  21. package/dist/{PermissionDenied-8otNeK_X.js → PermissionDenied-BqooKsXq.js} +2 -2
  22. package/dist/{PermissionDenied-8otNeK_X.js.map → PermissionDenied-BqooKsXq.js.map} +1 -1
  23. package/dist/{PermissionDenied-Dtre6Wn1.cjs → PermissionDenied-CJWG3Ieh.cjs} +2 -2
  24. package/dist/{PermissionDenied-Dtre6Wn1.cjs.map → PermissionDenied-CJWG3Ieh.cjs.map} +1 -1
  25. package/dist/{SessionExpired-h9yERVJz.cjs → SessionExpired-BB5hWYA2.cjs} +3 -3
  26. package/dist/{SessionExpired-h9yERVJz.cjs.map → SessionExpired-BB5hWYA2.cjs.map} +1 -1
  27. package/dist/{SessionExpired-sUz4q0gn.js → SessionExpired-BE9U7iZP.js} +3 -3
  28. package/dist/{SessionExpired-sUz4q0gn.js.map → SessionExpired-BE9U7iZP.js.map} +1 -1
  29. package/dist/{Txt-Df42XG5p.js → Txt-ByUf-9Ic.js} +2 -2
  30. package/dist/{Txt-Df42XG5p.js.map → Txt-ByUf-9Ic.js.map} +1 -1
  31. package/dist/{Txt-I5lK8zy7.cjs → Txt-D5Y_H2a0.cjs} +2 -2
  32. package/dist/{Txt-I5lK8zy7.cjs.map → Txt-D5Y_H2a0.cjs.map} +1 -1
  33. package/dist/{buttons-group-D01G8mAW.js → buttons-group-BjM12HPx.js} +3 -3
  34. package/dist/{buttons-group-D01G8mAW.js.map → buttons-group-BjM12HPx.js.map} +1 -1
  35. package/dist/{buttons-group-w9QHUGVh.cjs → buttons-group-Cn36DWYX.cjs} +3 -3
  36. package/dist/{buttons-group-w9QHUGVh.cjs.map → buttons-group-Cn36DWYX.cjs.map} +1 -1
  37. package/dist/{checkbox-VAUW92fg.js → checkbox-84QCxKJf.js} +2 -2
  38. package/dist/{checkbox-VAUW92fg.js.map → checkbox-84QCxKJf.js.map} +1 -1
  39. package/dist/{checkbox-CY9g_3ZS.cjs → checkbox-z-Yfud4v.cjs} +2 -2
  40. package/dist/{checkbox-CY9g_3ZS.cjs.map → checkbox-z-Yfud4v.cjs.map} +1 -1
  41. package/dist/{cn-BakJzhuv.js → cn-B4oPhFx9.js} +2 -2
  42. package/dist/{cn-BakJzhuv.js.map → cn-B4oPhFx9.js.map} +1 -1
  43. package/dist/{cn-vA5sWo9W.cjs → cn-DCPcv4xv.cjs} +2 -2
  44. package/dist/{cn-vA5sWo9W.cjs.map → cn-DCPcv4xv.cjs.map} +1 -1
  45. package/dist/{code-block-CqRQwJK9.js → code-block-CBJhDEeB.js} +6 -6
  46. package/dist/{code-block-CqRQwJK9.js.map → code-block-CBJhDEeB.js.map} +1 -1
  47. package/dist/{code-block-B1ObVVnF.cjs → code-block-fmv8bHoT.cjs} +6 -6
  48. package/dist/{code-block-B1ObVVnF.cjs.map → code-block-fmv8bHoT.cjs.map} +1 -1
  49. package/dist/{collapsible-CoBU143c.cjs → collapsible-CLPRijls.cjs} +2 -2
  50. package/dist/{collapsible-CoBU143c.cjs.map → collapsible-CLPRijls.cjs.map} +1 -1
  51. package/dist/{collapsible-D6MHpP1g.js → collapsible-igib7hFh.js} +2 -2
  52. package/dist/{collapsible-D6MHpP1g.js.map → collapsible-igib7hFh.js.map} +1 -1
  53. package/dist/{combobox-BO4NlbBt.cjs → combobox-BNAe7hQL.cjs} +4 -4
  54. package/dist/{combobox-BO4NlbBt.cjs.map → combobox-BNAe7hQL.cjs.map} +1 -1
  55. package/dist/{combobox-BRj_27N9.js → combobox-BWMi9Vvm.js} +4 -4
  56. package/dist/{combobox-BRj_27N9.js.map → combobox-BWMi9Vvm.js.map} +1 -1
  57. package/dist/{command-C24jGW8A.cjs → command-C2XK36se.cjs} +4 -4
  58. package/dist/{command-C24jGW8A.cjs.map → command-C2XK36se.cjs.map} +1 -1
  59. package/dist/{command-BB61PHOs.js → command-ehL7-lrV.js} +4 -4
  60. package/dist/{command-BB61PHOs.js.map → command-ehL7-lrV.js.map} +1 -1
  61. package/dist/components/AlertDialog.cjs.js +2 -2
  62. package/dist/components/AlertDialog.es.js +2 -2
  63. package/dist/components/Arrival.cjs.js +1 -1
  64. package/dist/components/Arrival.es.js +1 -1
  65. package/dist/components/Avatar.cjs.js +2 -2
  66. package/dist/components/Avatar.es.js +2 -2
  67. package/dist/components/Badge.cjs.js +1 -1
  68. package/dist/components/Badge.es.js +1 -1
  69. package/dist/components/BrandLoader.cjs.js +1 -1
  70. package/dist/components/BrandLoader.es.js +1 -1
  71. package/dist/components/Breadcrumb.cjs.js +1 -1
  72. package/dist/components/Breadcrumb.es.js +1 -1
  73. package/dist/components/Button.cjs.js +1 -1
  74. package/dist/components/Button.es.js +1 -1
  75. package/dist/components/ButtonsGroup.cjs.js +1 -1
  76. package/dist/components/ButtonsGroup.es.js +1 -1
  77. package/dist/components/Card.cjs.js +1 -1
  78. package/dist/components/Card.es.js +1 -1
  79. package/dist/components/ChatShell.cjs.js +2 -2
  80. package/dist/components/ChatShell.es.js +2 -2
  81. package/dist/components/Checkbox.cjs.js +1 -1
  82. package/dist/components/Checkbox.es.js +1 -1
  83. package/dist/components/ClampedText.cjs.js +3 -3
  84. package/dist/components/ClampedText.es.js +3 -3
  85. package/dist/components/CodeBlock.cjs.js +1 -1
  86. package/dist/components/CodeBlock.es.js +1 -1
  87. package/dist/components/CodeEditor.cjs.js +3 -3
  88. package/dist/components/CodeEditor.es.js +3 -3
  89. package/dist/components/Collapsible.cjs.js +1 -1
  90. package/dist/components/Collapsible.es.js +1 -1
  91. package/dist/components/Columns.cjs.js +2 -2
  92. package/dist/components/Columns.es.js +2 -2
  93. package/dist/components/Combobox.cjs.js +1 -1
  94. package/dist/components/Combobox.es.js +1 -1
  95. package/dist/components/Command.cjs.js +1 -1
  96. package/dist/components/Command.es.js +1 -1
  97. package/dist/components/CommandPalette.cjs.js +4 -4
  98. package/dist/components/CommandPalette.es.js +4 -4
  99. package/dist/components/Comment.cjs.js +4 -4
  100. package/dist/components/Comment.es.js +4 -4
  101. package/dist/components/Composer.cjs.js +2 -2
  102. package/dist/components/Composer.es.js +2 -2
  103. package/dist/components/ContextMenu.cjs.js +1 -1
  104. package/dist/components/ContextMenu.es.js +1 -1
  105. package/dist/components/CopyButton.cjs.js +1 -1
  106. package/dist/components/CopyButton.es.js +1 -1
  107. package/dist/components/DashboardCard.cjs.js +1 -1
  108. package/dist/components/DashboardCard.es.js +1 -1
  109. package/dist/components/DataCodeSection.cjs.js +1 -1
  110. package/dist/components/DataCodeSection.es.js +1 -1
  111. package/dist/components/DataDetailsPanel.cjs.js +5 -5
  112. package/dist/components/DataDetailsPanel.es.js +5 -5
  113. package/dist/components/DataFilter.cjs.js +3 -3
  114. package/dist/components/DataFilter.es.js +3 -3
  115. package/dist/components/DataKeysAndValues.cjs.js +1 -1
  116. package/dist/components/DataKeysAndValues.es.js +1 -1
  117. package/dist/components/DataList.cjs.js +4 -4
  118. package/dist/components/DataList.es.js +4 -4
  119. package/dist/components/DataPanel.cjs.js +1 -1
  120. package/dist/components/DataPanel.es.js +1 -1
  121. package/dist/components/DateRangeTimeline.cjs.js +5 -5
  122. package/dist/components/DateRangeTimeline.es.js +5 -5
  123. package/dist/components/DateTimePicker.cjs.js +6 -6
  124. package/dist/components/DateTimePicker.es.js +6 -6
  125. package/dist/components/DateTimeRangePicker.cjs.js +1 -1
  126. package/dist/components/DateTimeRangePicker.es.js +1 -1
  127. package/dist/components/Dialog.cjs.js +1 -1
  128. package/dist/components/Dialog.es.js +1 -1
  129. package/dist/components/Drawer.cjs.js +1 -1
  130. package/dist/components/Drawer.es.js +1 -1
  131. package/dist/components/DropdownMenu.cjs.js +1 -1
  132. package/dist/components/DropdownMenu.es.js +1 -1
  133. package/dist/components/EmptyState.cjs.js +1 -1
  134. package/dist/components/EmptyState.es.js +1 -1
  135. package/dist/components/Entity.cjs.js +2 -2
  136. package/dist/components/Entity.es.js +2 -2
  137. package/dist/components/EntityHeader.cjs.js +2 -2
  138. package/dist/components/EntityHeader.es.js +2 -2
  139. package/dist/components/Entry.cjs.js +1 -1
  140. package/dist/components/Entry.es.js +1 -1
  141. package/dist/components/EnvironmentVariablesEditor.cjs.js +7 -7
  142. package/dist/components/EnvironmentVariablesEditor.es.js +7 -7
  143. package/dist/components/ErrorBoundary.cjs.js +2 -2
  144. package/dist/components/ErrorBoundary.es.js +2 -2
  145. package/dist/components/FormFieldBlocks.cjs.js +5 -5
  146. package/dist/components/FormFieldBlocks.es.js +5 -5
  147. package/dist/components/Header.cjs.js +2 -2
  148. package/dist/components/Header.es.js +2 -2
  149. package/dist/components/HorizontalBars.cjs.js +1 -1
  150. package/dist/components/HorizontalBars.es.js +1 -1
  151. package/dist/components/HoverCard.cjs.js +1 -1
  152. package/dist/components/HoverCard.es.js +1 -1
  153. package/dist/components/Input.cjs.js +1 -1
  154. package/dist/components/Input.es.js +1 -1
  155. package/dist/components/InputGroup.cjs.js +1 -1
  156. package/dist/components/InputGroup.es.js +1 -1
  157. package/dist/components/ItemList.cjs.js +3 -3
  158. package/dist/components/ItemList.es.js +3 -3
  159. package/dist/components/JSONSchemaForm.cjs.js +5 -5
  160. package/dist/components/JSONSchemaForm.es.js +5 -5
  161. package/dist/components/Kbd.cjs.js +1 -1
  162. package/dist/components/Kbd.es.js +1 -1
  163. package/dist/components/KeyValueList.cjs.js +2 -2
  164. package/dist/components/KeyValueList.es.js +2 -2
  165. package/dist/components/Label.cjs.js +1 -1
  166. package/dist/components/Label.es.js +1 -1
  167. package/dist/components/ListSearch.cjs.js +1 -1
  168. package/dist/components/ListSearch.es.js +1 -1
  169. package/dist/components/Logo.cjs.js +1 -1
  170. package/dist/components/Logo.es.js +1 -1
  171. package/dist/components/LogsDataList.cjs.js +3 -2
  172. package/dist/components/LogsDataList.cjs.js.map +1 -1
  173. package/dist/components/LogsDataList.es.js +3 -2
  174. package/dist/components/LogsDataList.es.js.map +1 -1
  175. package/dist/components/MainContent.cjs.js +1 -1
  176. package/dist/components/MainContent.es.js +1 -1
  177. package/dist/components/MainHeader.cjs.js +1 -1
  178. package/dist/components/MainHeader.es.js +1 -1
  179. package/dist/components/MainSidebar.cjs.js +5 -5
  180. package/dist/components/MainSidebar.es.js +5 -5
  181. package/dist/components/MarkdownRenderer.cjs.js +1 -1
  182. package/dist/components/MarkdownRenderer.es.js +1 -1
  183. package/dist/components/MessageScroller.cjs.js +1 -1
  184. package/dist/components/MessageScroller.es.js +1 -1
  185. package/dist/components/MetricsCard.cjs.js +1 -1
  186. package/dist/components/MetricsCard.es.js +1 -1
  187. package/dist/components/MetricsFlexGrid.cjs.js +1 -1
  188. package/dist/components/MetricsFlexGrid.es.js +1 -1
  189. package/dist/components/MetricsKpiCard.cjs.js +1 -1
  190. package/dist/components/MetricsKpiCard.es.js +1 -1
  191. package/dist/components/Notice.cjs.js +1 -1
  192. package/dist/components/Notice.es.js +1 -1
  193. package/dist/components/PageHeader.cjs.js +1 -1
  194. package/dist/components/PageHeader.es.js +1 -1
  195. package/dist/components/PageLayout.cjs.js +2 -2
  196. package/dist/components/PageLayout.es.js +2 -2
  197. package/dist/components/PendingIndicator.cjs.js +1 -1
  198. package/dist/components/PendingIndicator.es.js +1 -1
  199. package/dist/components/PermissionDenied.cjs.js +1 -1
  200. package/dist/components/PermissionDenied.es.js +1 -1
  201. package/dist/components/Popover.cjs.js +1 -1
  202. package/dist/components/Popover.es.js +1 -1
  203. package/dist/components/PrevNextNav.cjs.js +2 -2
  204. package/dist/components/PrevNextNav.es.js +2 -2
  205. package/dist/components/PropertyFilter.cjs.js +5 -5
  206. package/dist/components/PropertyFilter.es.js +6 -6
  207. package/dist/components/RadioGroup.cjs.js +1 -1
  208. package/dist/components/RadioGroup.es.js +1 -1
  209. package/dist/components/RuleBuilder.cjs.js +4 -4
  210. package/dist/components/RuleBuilder.es.js +4 -4
  211. package/dist/components/SankeyChart.cjs.js +1 -1
  212. package/dist/components/SankeyChart.es.js +1 -1
  213. package/dist/components/ScatterPlotChart.cjs.js +2 -2
  214. package/dist/components/ScatterPlotChart.es.js +2 -2
  215. package/dist/components/ScrollArea.cjs.js +1 -1
  216. package/dist/components/ScrollArea.es.js +1 -1
  217. package/dist/components/Section.cjs.js +1 -1
  218. package/dist/components/Section.es.js +1 -1
  219. package/dist/components/SectionCard.cjs.js +1 -1
  220. package/dist/components/SectionCard.es.js +1 -1
  221. package/dist/components/Sections.cjs.js +1 -1
  222. package/dist/components/Sections.es.js +1 -1
  223. package/dist/components/Select.cjs.js +1 -1
  224. package/dist/components/Select.es.js +1 -1
  225. package/dist/components/SessionExpired.cjs.js +1 -1
  226. package/dist/components/SessionExpired.es.js +1 -1
  227. package/dist/components/SettingsRow.cjs.js +3 -3
  228. package/dist/components/SettingsRow.es.js +3 -3
  229. package/dist/components/Shimmer.cjs.js +1 -1
  230. package/dist/components/Shimmer.es.js +1 -1
  231. package/dist/components/SideDialog.cjs.js +6 -6
  232. package/dist/components/SideDialog.es.js +6 -6
  233. package/dist/components/Skeleton.cjs.js +1 -1
  234. package/dist/components/Skeleton.es.js +1 -1
  235. package/dist/components/Slider.cjs.js +1 -1
  236. package/dist/components/Slider.es.js +1 -1
  237. package/dist/components/Spinner.cjs.js +1 -1
  238. package/dist/components/Spinner.es.js +1 -1
  239. package/dist/components/Steps.cjs.js +2 -2
  240. package/dist/components/Steps.es.js +2 -2
  241. package/dist/components/Switch.cjs.js +1 -1
  242. package/dist/components/Switch.es.js +1 -1
  243. package/dist/components/Table.cjs.js +2 -2
  244. package/dist/components/Table.es.js +2 -2
  245. package/dist/components/Tabs.cjs.js +3 -3
  246. package/dist/components/Tabs.es.js +3 -3
  247. package/dist/components/Text.cjs.js +1 -1
  248. package/dist/components/Text.es.js +1 -1
  249. package/dist/components/Textarea.cjs.js +2 -2
  250. package/dist/components/Textarea.es.js +2 -2
  251. package/dist/components/ThemeToggle.cjs.js +1 -1
  252. package/dist/components/ThemeToggle.es.js +1 -1
  253. package/dist/components/ThreadList.cjs.js +3 -3
  254. package/dist/components/ThreadList.es.js +3 -3
  255. package/dist/components/ThreadRail.cjs.js +2 -2
  256. package/dist/components/ThreadRail.es.js +2 -2
  257. package/dist/components/Toaster.cjs.js +1 -1
  258. package/dist/components/Toaster.es.js +1 -1
  259. package/dist/components/TokenBudget.cjs.js +1 -1
  260. package/dist/components/TokenBudget.es.js +1 -1
  261. package/dist/components/Tooltip.cjs.js +1 -1
  262. package/dist/components/Tooltip.es.js +1 -1
  263. package/dist/components/Tree.cjs.js +2 -2
  264. package/dist/components/Tree.es.js +2 -2
  265. package/dist/components/Truncate.cjs.js +4 -4
  266. package/dist/components/Truncate.es.js +4 -4
  267. package/dist/components/Txt.cjs.js +1 -1
  268. package/dist/components/Txt.es.js +1 -1
  269. package/dist/components/ai/ask-user.cjs.js +4 -4
  270. package/dist/components/ai/ask-user.es.js +4 -4
  271. package/dist/components/ai/plan.cjs.js +5 -5
  272. package/dist/components/ai/plan.es.js +5 -5
  273. package/dist/components/ai/task-list.cjs.js +4 -4
  274. package/dist/components/ai/task-list.es.js +4 -4
  275. package/dist/components/ai/tool-call.cjs.js +5 -5
  276. package/dist/components/ai/tool-call.es.js +5 -5
  277. package/dist/{copy-button-BzjCqjVh.js → copy-button-BHmcGzIz.js} +3 -3
  278. package/dist/{copy-button-BzjCqjVh.js.map → copy-button-BHmcGzIz.js.map} +1 -1
  279. package/dist/{copy-button-D1BF_G8A.cjs → copy-button-BtnbaMvl.cjs} +3 -3
  280. package/dist/{copy-button-D1BF_G8A.cjs.map → copy-button-BtnbaMvl.cjs.map} +1 -1
  281. package/dist/{dashboard-card-BLg5Mx2f.js → dashboard-card-CMvUVSPF.js} +2 -2
  282. package/dist/{dashboard-card-BLg5Mx2f.js.map → dashboard-card-CMvUVSPF.js.map} +1 -1
  283. package/dist/{dashboard-card-DZiXx3hd.cjs → dashboard-card-DpHFjsWJ.cjs} +2 -2
  284. package/dist/{dashboard-card-DZiXx3hd.cjs.map → dashboard-card-DpHFjsWJ.cjs.map} +1 -1
  285. package/dist/{data-code-section-CSt_ZuUP.js → data-code-section-DN2yPgEz.js} +7 -7
  286. package/dist/{data-code-section-CSt_ZuUP.js.map → data-code-section-DN2yPgEz.js.map} +1 -1
  287. package/dist/{data-code-section-C3ZRkULz.cjs → data-code-section-Dn9smaz4.cjs} +7 -7
  288. package/dist/{data-code-section-C3ZRkULz.cjs.map → data-code-section-Dn9smaz4.cjs.map} +1 -1
  289. package/dist/{data-keys-and-values-D7lti5DL.cjs → data-keys-and-values-D1M0xPEy.cjs} +3 -3
  290. package/dist/{data-keys-and-values-D7lti5DL.cjs.map → data-keys-and-values-D1M0xPEy.cjs.map} +1 -1
  291. package/dist/{data-keys-and-values-CHJVC-r5.js → data-keys-and-values-PKPzfxve.js} +3 -3
  292. package/dist/{data-keys-and-values-CHJVC-r5.js.map → data-keys-and-values-PKPzfxve.js.map} +1 -1
  293. package/dist/{data-list-CRDewYj9.cjs → data-list-CB-W-syo.cjs} +4 -4
  294. package/dist/{data-list-CRDewYj9.cjs.map → data-list-CB-W-syo.cjs.map} +1 -1
  295. package/dist/{data-list-C3tjx5Vb.js → data-list-DX6y3EFQ.js} +4 -4
  296. package/dist/{data-list-C3tjx5Vb.js.map → data-list-DX6y3EFQ.js.map} +1 -1
  297. package/dist/{data-list-skeleton-BCrkk6wG.js → data-list-skeleton-C2R2CO9G.js} +3 -3
  298. package/dist/{data-list-skeleton-BCrkk6wG.js.map → data-list-skeleton-C2R2CO9G.js.map} +1 -1
  299. package/dist/{data-list-skeleton-CONfqzH2.cjs → data-list-skeleton-hTX1b2Au.cjs} +3 -3
  300. package/dist/{data-list-skeleton-CONfqzH2.cjs.map → data-list-skeleton-hTX1b2Au.cjs.map} +1 -1
  301. package/dist/{data-list-top-cell-DAztx3m8.cjs → data-list-top-cell-B4H5BBGd.cjs} +6 -6
  302. package/dist/{data-list-top-cell-DAztx3m8.cjs.map → data-list-top-cell-B4H5BBGd.cjs.map} +1 -1
  303. package/dist/{data-list-top-cell-hNkk6S-Q.js → data-list-top-cell-CDYczhpP.js} +6 -6
  304. package/dist/{data-list-top-cell-hNkk6S-Q.js.map → data-list-top-cell-CDYczhpP.js.map} +1 -1
  305. package/dist/{data-panel-DJpAfEsG.js → data-panel-2Da0Utgy.js} +6 -6
  306. package/dist/{data-panel-DJpAfEsG.js.map → data-panel-2Da0Utgy.js.map} +1 -1
  307. package/dist/{data-panel-DHNc5Y4L.cjs → data-panel-DEatwExN.cjs} +6 -6
  308. package/dist/{data-panel-DHNc5Y4L.cjs.map → data-panel-DEatwExN.cjs.map} +1 -1
  309. package/dist/{date-picker-DrWmUawi.cjs → date-picker-9bOZ7B2w.cjs} +2 -2
  310. package/dist/{date-picker-DrWmUawi.cjs.map → date-picker-9bOZ7B2w.cjs.map} +1 -1
  311. package/dist/{date-picker-BpKciwOX.js → date-picker-BWSg3e9G.js} +2 -2
  312. package/dist/{date-picker-BpKciwOX.js.map → date-picker-BWSg3e9G.js.map} +1 -1
  313. package/dist/{date-time-range-picker-jTRBzZDz.js → date-time-range-picker-Bz6tD9as.js} +7 -7
  314. package/dist/{date-time-range-picker-jTRBzZDz.js.map → date-time-range-picker-Bz6tD9as.js.map} +1 -1
  315. package/dist/{date-time-range-picker-BFDT_ERx.cjs → date-time-range-picker-j9nSS2HM.cjs} +7 -7
  316. package/dist/{date-time-range-picker-BFDT_ERx.cjs.map → date-time-range-picker-j9nSS2HM.cjs.map} +1 -1
  317. package/dist/{dialog-DidyN-Jy.js → dialog-CESxLg8S.js} +3 -3
  318. package/dist/{dialog-DidyN-Jy.js.map → dialog-CESxLg8S.js.map} +1 -1
  319. package/dist/{dialog-DecmYFeJ.cjs → dialog-K0q0KOOW.cjs} +3 -3
  320. package/dist/{dialog-DecmYFeJ.cjs.map → dialog-K0q0KOOW.cjs.map} +1 -1
  321. package/dist/domains/logs/components/log-details-view.cjs.js +4 -4
  322. package/dist/domains/logs/components/log-details-view.es.js +4 -4
  323. package/dist/domains/logs/components/logs-error-content.cjs.js +3 -3
  324. package/dist/domains/logs/components/logs-error-content.es.js +3 -3
  325. package/dist/domains/logs/components/logs-layout.cjs.js +1 -1
  326. package/dist/domains/logs/components/logs-layout.es.js +1 -1
  327. package/dist/domains/logs/components/logs-list-view.cjs.js +2 -2
  328. package/dist/domains/logs/components/logs-list-view.es.js +2 -2
  329. package/dist/domains/logs/components/logs-toolbar.cjs.js +2 -2
  330. package/dist/domains/logs/components/logs-toolbar.es.js +2 -2
  331. package/dist/domains/logs/components/no-logs-info.cjs.js +2 -2
  332. package/dist/domains/logs/components/no-logs-info.es.js +2 -2
  333. package/dist/domains/logs/hooks/use-logs-filter-persistence.cjs.js +1 -1
  334. package/dist/domains/logs/hooks/use-logs-filter-persistence.es.js +1 -1
  335. package/dist/domains/memory/components/flame-graph.cjs.js +1 -1
  336. package/dist/domains/memory/components/flame-graph.es.js +1 -1
  337. package/dist/domains/memory/components/memory-studio-panel.cjs.js +3 -3
  338. package/dist/domains/memory/components/memory-studio-panel.es.js +3 -3
  339. package/dist/domains/memory/components/observation-detail-view.cjs.js +4 -4
  340. package/dist/domains/memory/components/observation-detail-view.es.js +4 -4
  341. package/dist/domains/memory/components/thread-context-progress.cjs.js +1 -1
  342. package/dist/domains/memory/components/thread-context-progress.es.js +1 -1
  343. package/dist/domains/metrics/components/bar-list.cjs.js +1 -1
  344. package/dist/domains/metrics/components/bar-list.es.js +1 -1
  345. package/dist/domains/metrics/components/card-action-buttons.cjs.js +1 -1
  346. package/dist/domains/metrics/components/card-action-buttons.es.js +1 -1
  347. package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
  348. package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
  349. package/dist/domains/metrics/components/kpi-card-view.cjs.js +1 -1
  350. package/dist/domains/metrics/components/kpi-card-view.es.js +1 -1
  351. package/dist/domains/metrics/components/latency-card-view.cjs.js +4 -4
  352. package/dist/domains/metrics/components/latency-card-view.es.js +4 -4
  353. package/dist/domains/metrics/components/memory-card-view.cjs.js +5 -5
  354. package/dist/domains/metrics/components/memory-card-view.es.js +5 -5
  355. package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js +2 -2
  356. package/dist/domains/metrics/components/model-usage-cost-card-view.es.js +2 -2
  357. package/dist/domains/metrics/components/scores-card-view.cjs.js +5 -5
  358. package/dist/domains/metrics/components/scores-card-view.es.js +5 -5
  359. package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +5 -5
  360. package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +5 -5
  361. package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +4 -4
  362. package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +4 -4
  363. package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +5 -5
  364. package/dist/domains/metrics/components/traces-volume-card-view.es.js +5 -5
  365. package/dist/domains/traces/components/no-traces-info.cjs.js +1 -1
  366. package/dist/domains/traces/components/no-traces-info.es.js +1 -1
  367. package/dist/domains/traces/components/span-data-panel-view.cjs.js +7 -7
  368. package/dist/domains/traces/components/span-data-panel-view.es.js +7 -7
  369. package/dist/domains/traces/components/span-token-usage.cjs.js +2 -2
  370. package/dist/domains/traces/components/span-token-usage.es.js +2 -2
  371. package/dist/domains/traces/components/timeline-expand-col.cjs.js +2 -2
  372. package/dist/domains/traces/components/timeline-expand-col.es.js +2 -2
  373. package/dist/domains/traces/components/timeline-name-col.cjs.js +1 -1
  374. package/dist/domains/traces/components/timeline-name-col.es.js +1 -1
  375. package/dist/domains/traces/components/timeline-structure-sign.cjs.js +1 -1
  376. package/dist/domains/traces/components/timeline-structure-sign.es.js +1 -1
  377. package/dist/domains/traces/components/timeline-timing-col.cjs.js +3 -3
  378. package/dist/domains/traces/components/timeline-timing-col.es.js +3 -3
  379. package/dist/domains/traces/components/trace-columns-menu.cjs.js +5 -5
  380. package/dist/domains/traces/components/trace-columns-menu.es.js +5 -5
  381. package/dist/domains/traces/components/trace-data-panel-view.cjs.js +8 -8
  382. package/dist/domains/traces/components/trace-data-panel-view.es.js +8 -8
  383. package/dist/domains/traces/components/trace-keys-and-values.cjs.js +2 -2
  384. package/dist/domains/traces/components/trace-keys-and-values.es.js +2 -2
  385. package/dist/domains/traces/components/trace-status-value.cjs.js +1 -1
  386. package/dist/domains/traces/components/trace-status-value.es.js +1 -1
  387. package/dist/domains/traces/components/trace-timeline.cjs.js +2 -2
  388. package/dist/domains/traces/components/trace-timeline.es.js +2 -2
  389. package/dist/domains/traces/components/traces-error-content.cjs.js +2 -2
  390. package/dist/domains/traces/components/traces-error-content.es.js +2 -2
  391. package/dist/domains/traces/components/traces-layout.cjs.js +1 -1
  392. package/dist/domains/traces/components/traces-layout.es.js +1 -1
  393. package/dist/domains/traces/components/traces-list-mode-toggle.cjs.js +2 -2
  394. package/dist/domains/traces/components/traces-list-mode-toggle.es.js +2 -2
  395. package/dist/domains/traces/components/traces-list-view.cjs.js +4 -4
  396. package/dist/domains/traces/components/traces-list-view.es.js +4 -4
  397. package/dist/domains/traces/components/traces-toolbar.cjs.js +2 -2
  398. package/dist/domains/traces/components/traces-toolbar.es.js +2 -2
  399. package/dist/domains/traces/hooks/use-download-trace-json.cjs.js +1 -1
  400. package/dist/domains/traces/hooks/use-download-trace-json.es.js +1 -1
  401. package/dist/domains/traces/hooks/use-trace-filter-persistence.cjs.js +1 -1
  402. package/dist/domains/traces/hooks/use-trace-filter-persistence.es.js +1 -1
  403. package/dist/{drawer-CjRnB5XK.js → drawer-4U7L_dHA.js} +4 -4
  404. package/dist/{drawer-CjRnB5XK.js.map → drawer-4U7L_dHA.js.map} +1 -1
  405. package/dist/{drawer-CnzI7hP8.cjs → drawer-mE9CCzMI.cjs} +4 -4
  406. package/dist/{drawer-CnzI7hP8.cjs.map → drawer-mE9CCzMI.cjs.map} +1 -1
  407. package/dist/{dropdown-menu-BphqMR3z.js → dropdown-menu-BYTyEuSa.js} +2 -2
  408. package/dist/{dropdown-menu-BphqMR3z.js.map → dropdown-menu-BYTyEuSa.js.map} +1 -1
  409. package/dist/{dropdown-menu-kVO4guHl.cjs → dropdown-menu-qsDhHNES.cjs} +2 -2
  410. package/dist/{dropdown-menu-kVO4guHl.cjs.map → dropdown-menu-qsDhHNES.cjs.map} +1 -1
  411. package/dist/ee/signals/components/signals-empty-state.cjs.js +2 -2
  412. package/dist/ee/signals/components/signals-empty-state.es.js +2 -2
  413. package/dist/ee/signals/examples-pager.cjs.js +1 -1
  414. package/dist/ee/signals/examples-pager.es.js +1 -1
  415. package/dist/ee/signals/flow-card.cjs.js +2 -2
  416. package/dist/ee/signals/flow-card.es.js +2 -2
  417. package/dist/ee/signals/noise-detail-panel.cjs.js +1 -1
  418. package/dist/ee/signals/noise-detail-panel.es.js +1 -1
  419. package/dist/ee/signals/sankey-signals.cjs.js +1 -1
  420. package/dist/ee/signals/sankey-signals.es.js +1 -1
  421. package/dist/ee/signals/signal-delta-column.cjs.js +1 -1
  422. package/dist/ee/signals/signal-delta-column.es.js +1 -1
  423. package/dist/ee/signals/signal-lifelines.cjs.js +1 -1
  424. package/dist/ee/signals/signal-lifelines.es.js +1 -1
  425. package/dist/ee/signals/signals-error-state.cjs.js +1 -1
  426. package/dist/ee/signals/signals-error-state.es.js +1 -1
  427. package/dist/ee/signals/signals-loading-skeleton.cjs.js +1 -1
  428. package/dist/ee/signals/signals-loading-skeleton.es.js +1 -1
  429. package/dist/ee/signals/snapshot-timeline.cjs.js +1 -1
  430. package/dist/ee/signals/snapshot-timeline.es.js +1 -1
  431. package/dist/ee/signals/sortable-signal-headers.cjs.js +1 -1
  432. package/dist/ee/signals/sortable-signal-headers.es.js +1 -1
  433. package/dist/ee/signals/theme-detail-panel.cjs.js +2 -2
  434. package/dist/ee/signals/theme-detail-panel.es.js +2 -2
  435. package/dist/ee/signals/theme-filter-banner.cjs.js +1 -1
  436. package/dist/ee/signals/theme-filter-banner.es.js +1 -1
  437. package/dist/ee/signals/theme-trend-chart.cjs.js +1 -1
  438. package/dist/ee/signals/theme-trend-chart.es.js +1 -1
  439. package/dist/ee/signals/trace-insight-view.cjs.js +1 -1
  440. package/dist/ee/signals/trace-insight-view.es.js +1 -1
  441. package/dist/ee/signals/trace-intelligence-explainer.cjs.js +1 -1
  442. package/dist/ee/signals/trace-intelligence-explainer.es.js +1 -1
  443. package/dist/ee/signals/view-mode-tab.cjs.js +2 -2
  444. package/dist/ee/signals/view-mode-tab.es.js +2 -2
  445. package/dist/ee/topics/components/topic-trace-details-panel.cjs.js +1 -1
  446. package/dist/ee/topics/components/topic-trace-details-panel.es.js +1 -1
  447. package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +3 -3
  448. package/dist/ee/topics/components/topic-trace-summary-list.es.js +3 -3
  449. package/dist/{field-block-B63CpA4d.js → field-block-DcGeY-_x.js} +2 -2
  450. package/dist/{field-block-B63CpA4d.js.map → field-block-DcGeY-_x.js.map} +1 -1
  451. package/dist/{field-block-BcTR08I7.cjs → field-block-Dr9fbwQx.cjs} +2 -2
  452. package/dist/{field-block-BcTR08I7.cjs.map → field-block-Dr9fbwQx.cjs.map} +1 -1
  453. package/dist/hooks/use-copy-to-clipboard.cjs.js +1 -1
  454. package/dist/hooks/use-copy-to-clipboard.es.js +1 -1
  455. package/dist/{horizontal-bars-CzZr7d01.js → horizontal-bars-3vH3FLj3.js} +4 -4
  456. package/dist/{horizontal-bars-CzZr7d01.js.map → horizontal-bars-3vH3FLj3.js.map} +1 -1
  457. package/dist/{horizontal-bars-DuS2yR1g.cjs → horizontal-bars-CV2XRu4w.cjs} +4 -4
  458. package/dist/{horizontal-bars-DuS2yR1g.cjs.map → horizontal-bars-CV2XRu4w.cjs.map} +1 -1
  459. package/dist/{hover-card-DeTykyEs.js → hover-card-D2SNBhOc.js} +2 -2
  460. package/dist/{hover-card-DeTykyEs.js.map → hover-card-D2SNBhOc.js.map} +1 -1
  461. package/dist/{hover-card-CxmZKcFK.cjs → hover-card-DWUrSO_0.cjs} +2 -2
  462. package/dist/{hover-card-CxmZKcFK.cjs.map → hover-card-DWUrSO_0.cjs.map} +1 -1
  463. package/dist/icons/Icon.cjs.js +1 -1
  464. package/dist/icons/Icon.es.js +1 -1
  465. package/dist/{index-C-Lt4Bx_.cjs → index-BRtrE4oe.cjs} +2 -2
  466. package/dist/{index-C-Lt4Bx_.cjs.map → index-BRtrE4oe.cjs.map} +1 -1
  467. package/dist/{index-CSm06eOE.js → index-DsNrjFJd.js} +2 -2
  468. package/dist/{index-CSm06eOE.js.map → index-DsNrjFJd.js.map} +1 -1
  469. package/dist/{input-0R-fQTCF.cjs → input-DBrWBeUp.cjs} +3 -3
  470. package/dist/{input-0R-fQTCF.cjs.map → input-DBrWBeUp.cjs.map} +1 -1
  471. package/dist/{input-DVZ0-3KP.js → input-DNjusDwY.js} +3 -3
  472. package/dist/{input-DVZ0-3KP.js.map → input-DNjusDwY.js.map} +1 -1
  473. package/dist/{input-group-U2f3A4Ya.js → input-group-Dma0MbUM.js} +4 -4
  474. package/dist/{input-group-U2f3A4Ya.js.map → input-group-Dma0MbUM.js.map} +1 -1
  475. package/dist/{input-group-4EQi2l7H.cjs → input-group-WDZR_aql.cjs} +4 -4
  476. package/dist/{input-group-4EQi2l7H.cjs.map → input-group-WDZR_aql.cjs.map} +1 -1
  477. package/dist/{kbd-Br7kdwaB.cjs → kbd-BjdgMhkv.cjs} +2 -2
  478. package/dist/{kbd-Br7kdwaB.cjs.map → kbd-BjdgMhkv.cjs.map} +1 -1
  479. package/dist/{kbd-DE0nj4DL.js → kbd-qWtehN82.js} +2 -2
  480. package/dist/{kbd-DE0nj4DL.js.map → kbd-qWtehN82.js.map} +1 -1
  481. package/dist/{label-B-UbxfJf.cjs → label-B9ERiuZb.cjs} +3 -3
  482. package/dist/{label-B-UbxfJf.cjs.map → label-B9ERiuZb.cjs.map} +1 -1
  483. package/dist/{label-WtU3xT6v.js → label-Um4lWyRe.js} +3 -3
  484. package/dist/{label-WtU3xT6v.js.map → label-Um4lWyRe.js.map} +1 -1
  485. package/dist/{logs-data-list-D88JF2lo.cjs → logs-data-list-CTnwPG40.cjs} +3 -3
  486. package/dist/{logs-data-list-D88JF2lo.cjs.map → logs-data-list-CTnwPG40.cjs.map} +1 -1
  487. package/dist/{logs-data-list-DnAXTwr7.js → logs-data-list-btJapa0s.js} +3 -3
  488. package/dist/{logs-data-list-DnAXTwr7.js.map → logs-data-list-btJapa0s.js.map} +1 -1
  489. package/dist/{markdown-renderer-BQugZq4m.cjs → markdown-renderer-DGIzNAQY.cjs} +3 -3
  490. package/dist/{markdown-renderer-BQugZq4m.cjs.map → markdown-renderer-DGIzNAQY.cjs.map} +1 -1
  491. package/dist/{markdown-renderer-LOqipQki.js → markdown-renderer-DiJBbnYG.js} +3 -3
  492. package/dist/{markdown-renderer-LOqipQki.js.map → markdown-renderer-DiJBbnYG.js.map} +1 -1
  493. package/dist/{message-scroller-CvRVVj5l.js → message-scroller-CjQIDqkD.js} +2 -2
  494. package/dist/{message-scroller-CvRVVj5l.js.map → message-scroller-CjQIDqkD.js.map} +1 -1
  495. package/dist/{message-scroller-4dCGKzxE.cjs → message-scroller-cYL2ILK8.cjs} +2 -2
  496. package/dist/{message-scroller-4dCGKzxE.cjs.map → message-scroller-cYL2ILK8.cjs.map} +1 -1
  497. package/dist/{metrics-card-DmbKNY3U.cjs → metrics-card-B8zgHlgB.cjs} +5 -5
  498. package/dist/{metrics-card-DmbKNY3U.cjs.map → metrics-card-B8zgHlgB.cjs.map} +1 -1
  499. package/dist/{metrics-card-C0lGcxb9.js → metrics-card-BKE1UzWh.js} +5 -5
  500. package/dist/{metrics-card-C0lGcxb9.js.map → metrics-card-BKE1UzWh.js.map} +1 -1
  501. package/dist/{metrics-kpi-card-tAReOFYk.cjs → metrics-kpi-card-BNxdBdLv.cjs} +4 -4
  502. package/dist/{metrics-kpi-card-tAReOFYk.cjs.map → metrics-kpi-card-BNxdBdLv.cjs.map} +1 -1
  503. package/dist/{metrics-kpi-card-AhIw9eyu.js → metrics-kpi-card-C7mzmlmC.js} +4 -4
  504. package/dist/{metrics-kpi-card-AhIw9eyu.js.map → metrics-kpi-card-C7mzmlmC.js.map} +1 -1
  505. package/dist/{popover-jPzCxZfK.cjs → popover-BPvIo79r.cjs} +2 -2
  506. package/dist/{popover-jPzCxZfK.cjs.map → popover-BPvIo79r.cjs.map} +1 -1
  507. package/dist/{popover-QZXIaRzP.js → popover-Be-ufAIL.js} +2 -2
  508. package/dist/{popover-QZXIaRzP.js.map → popover-Be-ufAIL.js.map} +1 -1
  509. package/dist/primitives/resize-handle-indicator.cjs.js +2 -2
  510. package/dist/primitives/resize-handle-indicator.es.js +2 -2
  511. package/dist/{property-filter-applied-BtepC7PL.js → property-filter-applied-CJ9uesO_.js} +10 -10
  512. package/dist/{property-filter-applied-BtepC7PL.js.map → property-filter-applied-CJ9uesO_.js.map} +1 -1
  513. package/dist/{property-filter-applied-DjrjP7iT.cjs → property-filter-applied-kARc8nf-.cjs} +10 -10
  514. package/dist/{property-filter-applied-DjrjP7iT.cjs.map → property-filter-applied-kARc8nf-.cjs.map} +1 -1
  515. package/dist/{radio-group-CrWQwXWA.js → radio-group-BxXbAXhN.js} +2 -2
  516. package/dist/{radio-group-CrWQwXWA.js.map → radio-group-BxXbAXhN.js.map} +1 -1
  517. package/dist/{radio-group-Dqz451dG.cjs → radio-group-DERRwj68.cjs} +2 -2
  518. package/dist/{radio-group-Dqz451dG.cjs.map → radio-group-DERRwj68.cjs.map} +1 -1
  519. package/dist/resize/collapsible-panel.cjs.js +1 -1
  520. package/dist/resize/collapsible-panel.es.js +1 -1
  521. package/dist/resize/panel-drawer.cjs.js +2 -2
  522. package/dist/resize/panel-drawer.es.js +2 -2
  523. package/dist/resize/panel-group.cjs.js +1 -1
  524. package/dist/resize/panel-group.es.js +1 -1
  525. package/dist/resize/panel-icon-button.cjs.js +1 -1
  526. package/dist/resize/panel-icon-button.es.js +1 -1
  527. package/dist/resize/separator.cjs.js +1 -1
  528. package/dist/resize/separator.es.js +1 -1
  529. package/dist/{sankey-chart-CYxUnjrO.cjs → sankey-chart-7we0p2Eb.cjs} +3 -3
  530. package/dist/{sankey-chart-CYxUnjrO.cjs.map → sankey-chart-7we0p2Eb.cjs.map} +1 -1
  531. package/dist/{sankey-chart-Bc7rzi5f.js → sankey-chart-QcxO2sZz.js} +3 -3
  532. package/dist/{sankey-chart-Bc7rzi5f.js.map → sankey-chart-QcxO2sZz.js.map} +1 -1
  533. package/dist/{scroll-area-DZrEuKjC.js → scroll-area-DVSQTnjk.js} +2 -2
  534. package/dist/{scroll-area-DZrEuKjC.js.map → scroll-area-DVSQTnjk.js.map} +1 -1
  535. package/dist/{scroll-area-Dv6QagXt.cjs → scroll-area-D_-TyC0c.cjs} +2 -2
  536. package/dist/{scroll-area-Dv6QagXt.cjs.map → scroll-area-D_-TyC0c.cjs.map} +1 -1
  537. package/dist/{search-field-block-CjCIzUhN.cjs → search-field-block-CiinIsub.cjs} +6 -6
  538. package/dist/{search-field-block-CjCIzUhN.cjs.map → search-field-block-CiinIsub.cjs.map} +1 -1
  539. package/dist/{search-field-block-DoNywsJC.js → search-field-block-D51aN1d9.js} +6 -6
  540. package/dist/{search-field-block-DoNywsJC.js.map → search-field-block-D51aN1d9.js.map} +1 -1
  541. package/dist/{section-CnLkFJwn.js → section-D963QL3h.js} +3 -3
  542. package/dist/{section-CnLkFJwn.js.map → section-D963QL3h.js.map} +1 -1
  543. package/dist/{section-CVHYJHNG.cjs → section-LbaBW2X3.cjs} +3 -3
  544. package/dist/{section-CVHYJHNG.cjs.map → section-LbaBW2X3.cjs.map} +1 -1
  545. package/dist/{select-lVCJp6aH.js → select-AvBDZffY.js} +3 -3
  546. package/dist/{select-lVCJp6aH.js.map → select-AvBDZffY.js.map} +1 -1
  547. package/dist/{select-X9SZeU80.cjs → select-C_FsCxA5.cjs} +3 -3
  548. package/dist/{select-X9SZeU80.cjs.map → select-C_FsCxA5.cjs.map} +1 -1
  549. package/dist/{select-field-block-CDklwBFe.js → select-field-block-BL08N4Yh.js} +3 -3
  550. package/dist/{select-field-block-CDklwBFe.js.map → select-field-block-BL08N4Yh.js.map} +1 -1
  551. package/dist/{select-field-block-BXjwaMqJ.cjs → select-field-block-rohiMHhW.cjs} +3 -3
  552. package/dist/{select-field-block-BXjwaMqJ.cjs.map → select-field-block-rohiMHhW.cjs.map} +1 -1
  553. package/dist/{shimmer-DnvxM4ou.cjs → shimmer-BH6aBatG.cjs} +2 -2
  554. package/dist/{shimmer-DnvxM4ou.cjs.map → shimmer-BH6aBatG.cjs.map} +1 -1
  555. package/dist/{shimmer-BneX5Awd.js → shimmer-DV3ZgmuP.js} +2 -2
  556. package/dist/{shimmer-BneX5Awd.js.map → shimmer-DV3ZgmuP.js.map} +1 -1
  557. package/dist/{skeleton-C5-7V8Ni.js → skeleton-BBDs7i6c.js} +2 -2
  558. package/dist/{skeleton-C5-7V8Ni.js.map → skeleton-BBDs7i6c.js.map} +1 -1
  559. package/dist/{skeleton-C0zXt2_f.cjs → skeleton-BKcwgYBh.cjs} +2 -2
  560. package/dist/{skeleton-C0zXt2_f.cjs.map → skeleton-BKcwgYBh.cjs.map} +1 -1
  561. package/dist/{spacings-BP8L49kn.cjs → spacings-4DMCCbQZ.cjs} +4 -2
  562. package/dist/spacings-4DMCCbQZ.cjs.map +1 -0
  563. package/dist/{spacings-C87dXiT-.js → spacings-BwKLvCC2.js} +4 -2
  564. package/dist/spacings-BwKLvCC2.js.map +1 -0
  565. package/dist/{spinner-HCsQgpaP.js → spinner-BMRlaJFy.js} +3 -3
  566. package/dist/{spinner-HCsQgpaP.js.map → spinner-BMRlaJFy.js.map} +1 -1
  567. package/dist/{spinner-BBAmiRCS.cjs → spinner-B_xKBDo_.cjs} +3 -3
  568. package/dist/{spinner-BBAmiRCS.cjs.map → spinner-B_xKBDo_.cjs.map} +1 -1
  569. package/dist/src/ds/tokens/shadows.d.ts +1 -0
  570. package/dist/style.css +15 -0
  571. package/dist/{tabs-content-wBU5qmb6.cjs → tabs-content-BxToGCDw.cjs} +2 -2
  572. package/dist/{tabs-content-wBU5qmb6.cjs.map → tabs-content-BxToGCDw.cjs.map} +1 -1
  573. package/dist/{tabs-content-XUh680fO.js → tabs-content-CLgmU6S_.js} +2 -2
  574. package/dist/{tabs-content-XUh680fO.js.map → tabs-content-CLgmU6S_.js.map} +1 -1
  575. package/dist/{tabs-root-VtBc6K2q.cjs → tabs-root-BNcLC-s6.cjs} +3 -3
  576. package/dist/{tabs-root-VtBc6K2q.cjs.map → tabs-root-BNcLC-s6.cjs.map} +1 -1
  577. package/dist/{tabs-root-BBPou4QC.js → tabs-root-BnwVjJbD.js} +3 -3
  578. package/dist/{tabs-root-BBPou4QC.js.map → tabs-root-BnwVjJbD.js.map} +1 -1
  579. package/dist/{tabs-tab-DudcFE6r.cjs → tabs-tab-Ha0C9Dv3.cjs} +3 -3
  580. package/dist/{tabs-tab-DudcFE6r.cjs.map → tabs-tab-Ha0C9Dv3.cjs.map} +1 -1
  581. package/dist/{tabs-tab-mZ-Tl7-d.js → tabs-tab-Qlfs2X2g.js} +3 -3
  582. package/dist/{tabs-tab-mZ-Tl7-d.js.map → tabs-tab-Qlfs2X2g.js.map} +1 -1
  583. package/dist/{text-field-block-Ddl2tJ6D.js → text-field-block-D7vJZCzd.js} +3 -3
  584. package/dist/{text-field-block-Ddl2tJ6D.js.map → text-field-block-D7vJZCzd.js.map} +1 -1
  585. package/dist/{text-field-block-B4CvIwKh.cjs → text-field-block-Dtup2Jqm.cjs} +3 -3
  586. package/dist/{text-field-block-B4CvIwKh.cjs.map → text-field-block-Dtup2Jqm.cjs.map} +1 -1
  587. package/dist/{time-picker-CpR2IP4l.cjs → time-picker-BqIiky9G.cjs} +3 -3
  588. package/dist/{time-picker-CpR2IP4l.cjs.map → time-picker-BqIiky9G.cjs.map} +1 -1
  589. package/dist/{time-picker-63iBILK9.js → time-picker-hmmwDo2l.js} +3 -3
  590. package/dist/{time-picker-63iBILK9.js.map → time-picker-hmmwDo2l.js.map} +1 -1
  591. package/dist/{toast-Bh4WQDyj.cjs → toast-EtbZnj9b.cjs} +2 -2
  592. package/dist/{toast-Bh4WQDyj.cjs.map → toast-EtbZnj9b.cjs.map} +1 -1
  593. package/dist/{toast-BKsfnapA.js → toast-czUGO0aH.js} +2 -2
  594. package/dist/{toast-BKsfnapA.js.map → toast-czUGO0aH.js.map} +1 -1
  595. package/dist/tokens.cjs.js +1 -1
  596. package/dist/tokens.es.js +1 -1
  597. package/dist/{tooltip-CF30mRAe.js → tooltip-Bi0pDO5P.js} +2 -2
  598. package/dist/{tooltip-CF30mRAe.js.map → tooltip-Bi0pDO5P.js.map} +1 -1
  599. package/dist/{tooltip-DMOZ2oaq.cjs → tooltip-DIi_oOxO.cjs} +2 -2
  600. package/dist/{tooltip-DMOZ2oaq.cjs.map → tooltip-DIi_oOxO.cjs.map} +1 -1
  601. package/dist/{traces-data-list-c5I-8hwt.js → traces-data-list-BeSOHzvZ.js} +6 -6
  602. package/dist/{traces-data-list-c5I-8hwt.js.map → traces-data-list-BeSOHzvZ.js.map} +1 -1
  603. package/dist/{traces-data-list-COksp2d4.cjs → traces-data-list-DwwFFIeq.cjs} +6 -6
  604. package/dist/{traces-data-list-COksp2d4.cjs.map → traces-data-list-DwwFFIeq.cjs.map} +1 -1
  605. package/dist/utils/cn.cjs.js +1 -1
  606. package/dist/utils/cn.es.js +1 -1
  607. package/dist/utils/toast.cjs.js +1 -1
  608. package/dist/utils/toast.es.js +1 -1
  609. package/package.json +8 -9
  610. package/theme.css +16 -0
  611. package/CHANGELOG.md +0 -17784
  612. package/dist/spacings-BP8L49kn.cjs.map +0 -1
  613. package/dist/spacings-C87dXiT-.js.map +0 -1
@@ -3,7 +3,7 @@
3
3
  const jsxRuntime = require('react/jsx-runtime');
4
4
  const lucideReact = require('lucide-react');
5
5
  const icons_Icon = require('./icons/Icon.cjs.js');
6
- const EmptyState = require('./EmptyState-sff7IGrD.cjs');
6
+ const EmptyState = require('./EmptyState-hauyLuHd.cjs');
7
7
 
8
8
  function PermissionDenied({ resource, title, description, actionSlot, className }) {
9
9
  const defaultTitle = "Permission Denied";
@@ -21,4 +21,4 @@ function PermissionDenied({ resource, title, description, actionSlot, className
21
21
  }
22
22
 
23
23
  exports.PermissionDenied = PermissionDenied;
24
- //# sourceMappingURL=PermissionDenied-Dtre6Wn1.cjs.map
24
+ //# sourceMappingURL=PermissionDenied-CJWG3Ieh.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"PermissionDenied-Dtre6Wn1.cjs","sources":["../src/ds/components/PermissionDenied/PermissionDenied.tsx"],"sourcesContent":["import { ShieldX } from 'lucide-react';\nimport * as React from 'react';\nimport { Icon } from '../../icons/Icon';\nimport { EmptyState } from '../EmptyState';\n\nexport interface PermissionDeniedProps {\n /** Resource type (e.g., \"agents\", \"workflows\") */\n resource?: string;\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Optional action slot (e.g., contact admin button) */\n actionSlot?: React.ReactNode;\n /** Additional CSS classes */\n className?: string;\n}\n\nexport function PermissionDenied({ resource, title, description, actionSlot, className }: PermissionDeniedProps) {\n const defaultTitle = 'Permission Denied';\n const defaultDescription = resource\n ? `You don't have permission to access ${resource}. Contact your administrator for access.`\n : \"You don't have permission to access this resource. Contact your administrator for access.\";\n\n return (\n <EmptyState\n className={className}\n iconSlot={\n <Icon size=\"lg\" className=\"text-neutral3\">\n <ShieldX />\n </Icon>\n }\n titleSlot={title ?? defaultTitle}\n descriptionSlot={description ?? defaultDescription}\n actionSlot={actionSlot}\n />\n );\n}\n"],"names":["jsx","EmptyState","Icon","ShieldX"],"mappings":";;;;;;;AAkBO,SAAS,iBAAiB,EAAE,QAAA,EAAU,OAAO,WAAA,EAAa,UAAA,EAAY,WAAU,EAA0B;AAC/G,EAAA,MAAM,YAAA,GAAe,mBAAA;AACrB,EAAA,MAAM,kBAAA,GAAqB,QAAA,GACvB,CAAA,oCAAA,EAAuC,QAAQ,CAAA,wCAAA,CAAA,GAC/C,2FAAA;AAEJ,EAAA,uBACEA,cAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,QAAA,iCACGC,eAAA,EAAA,EAAK,IAAA,EAAK,MAAK,SAAA,EAAU,eAAA,EACxB,QAAA,kBAAAF,cAAA,CAACG,mBAAA,EAAA,EAAQ,CAAA,EACX,CAAA;AAAA,MAEF,WAAW,KAAA,IAAS,YAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,kBAAA;AAAA,MAChC;AAAA;AAAA,GACF;AAEJ;;;;"}
1
+ {"version":3,"file":"PermissionDenied-CJWG3Ieh.cjs","sources":["../src/ds/components/PermissionDenied/PermissionDenied.tsx"],"sourcesContent":["import { ShieldX } from 'lucide-react';\nimport * as React from 'react';\nimport { Icon } from '../../icons/Icon';\nimport { EmptyState } from '../EmptyState';\n\nexport interface PermissionDeniedProps {\n /** Resource type (e.g., \"agents\", \"workflows\") */\n resource?: string;\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Optional action slot (e.g., contact admin button) */\n actionSlot?: React.ReactNode;\n /** Additional CSS classes */\n className?: string;\n}\n\nexport function PermissionDenied({ resource, title, description, actionSlot, className }: PermissionDeniedProps) {\n const defaultTitle = 'Permission Denied';\n const defaultDescription = resource\n ? `You don't have permission to access ${resource}. Contact your administrator for access.`\n : \"You don't have permission to access this resource. Contact your administrator for access.\";\n\n return (\n <EmptyState\n className={className}\n iconSlot={\n <Icon size=\"lg\" className=\"text-neutral3\">\n <ShieldX />\n </Icon>\n }\n titleSlot={title ?? defaultTitle}\n descriptionSlot={description ?? defaultDescription}\n actionSlot={actionSlot}\n />\n );\n}\n"],"names":["jsx","EmptyState","Icon","ShieldX"],"mappings":";;;;;;;AAkBO,SAAS,iBAAiB,EAAE,QAAA,EAAU,OAAO,WAAA,EAAa,UAAA,EAAY,WAAU,EAA0B;AAC/G,EAAA,MAAM,YAAA,GAAe,mBAAA;AACrB,EAAA,MAAM,kBAAA,GAAqB,QAAA,GACvB,CAAA,oCAAA,EAAuC,QAAQ,CAAA,wCAAA,CAAA,GAC/C,2FAAA;AAEJ,EAAA,uBACEA,cAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,QAAA,iCACGC,eAAA,EAAA,EAAK,IAAA,EAAK,MAAK,SAAA,EAAU,eAAA,EACxB,QAAA,kBAAAF,cAAA,CAACG,mBAAA,EAAA,EAAQ,CAAA,EACX,CAAA;AAAA,MAEF,WAAW,KAAA,IAAS,YAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,kBAAA;AAAA,MAChC;AAAA;AAAA,GACF;AAEJ;;;;"}
@@ -5,8 +5,8 @@ const react = require('@mastra/react');
5
5
  const lucideReact = require('lucide-react');
6
6
  const React = require('react');
7
7
  const icons_Icon = require('./icons/Icon.cjs.js');
8
- const Button = require('./Button-DA5XLUon.cjs');
9
- const EmptyState = require('./EmptyState-sff7IGrD.cjs');
8
+ const Button = require('./Button-D10WB4vc.cjs');
9
+ const EmptyState = require('./EmptyState-hauyLuHd.cjs');
10
10
 
11
11
  function SessionExpired({ title, description, className }) {
12
12
  const [isPending, setIsPending] = React.useState(false);
@@ -44,4 +44,4 @@ function SessionExpired({ title, description, className }) {
44
44
  }
45
45
 
46
46
  exports.SessionExpired = SessionExpired;
47
- //# sourceMappingURL=SessionExpired-h9yERVJz.cjs.map
47
+ //# sourceMappingURL=SessionExpired-BB5hWYA2.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"SessionExpired-h9yERVJz.cjs","sources":["../src/ds/components/SessionExpired/SessionExpired.tsx"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { LogIn } from 'lucide-react';\nimport { useState, useCallback } from 'react';\n\nimport { Icon } from '../../icons/Icon';\nimport { Button } from '../Button';\nimport { EmptyState } from '../EmptyState';\n\nexport interface SessionExpiredProps {\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Additional CSS classes */\n className?: string;\n}\n\nexport function SessionExpired({ title, description, className }: SessionExpiredProps) {\n const [isPending, setIsPending] = useState(false);\n const client = useMastraClient();\n\n const handleLogin = useCallback(async () => {\n try {\n setIsPending(true);\n const { baseUrl = '', apiPrefix } = (client as any).options || {};\n const raw = (apiPrefix || '/api').trim();\n const prefix = (raw.startsWith('/') ? raw : `/${raw}`).replace(/\\/$/, '');\n const params = new URLSearchParams({ redirect_uri: window.location.href });\n const url = `${baseUrl}${prefix}/auth/sso/login?${params}`;\n\n const response = await fetch(url, {\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n });\n\n if (response.ok) {\n const data = await response.json();\n window.location.href = data.url;\n }\n } finally {\n setIsPending(false);\n }\n }, [client]);\n\n return (\n <EmptyState\n className={className}\n iconSlot={\n <Icon size=\"lg\" className=\"text-neutral3\">\n <LogIn />\n </Icon>\n }\n titleSlot={title ?? 'Session Expired'}\n descriptionSlot={description ?? 'Your session has expired. Please log in again to continue.'}\n actionSlot={\n <Button variant=\"default\" onClick={handleLogin} disabled={isPending}>\n {isPending ? 'Redirecting...' : 'Log in'}\n </Button>\n }\n />\n );\n}\n"],"names":["useState","useMastraClient","useCallback","jsx","EmptyState","Icon","LogIn","Button"],"mappings":";;;;;;;;;;AAiBO,SAAS,cAAA,CAAe,EAAE,KAAA,EAAO,WAAA,EAAa,WAAU,EAAwB;AACrF,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAIA,eAAS,KAAK,CAAA;AAChD,EAAA,MAAM,SAASC,qBAAA,EAAgB;AAE/B,EAAA,MAAM,WAAA,GAAcC,kBAAY,YAAY;AAC1C,IAAA,IAAI;AACF,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,MAAM,EAAE,OAAA,GAAU,EAAA,EAAI,WAAU,GAAK,MAAA,CAAe,WAAW,EAAC;AAChE,MAAA,MAAM,GAAA,GAAA,CAAO,SAAA,IAAa,MAAA,EAAQ,IAAA,EAAK;AACvC,MAAA,MAAM,MAAA,GAAA,CAAU,GAAA,CAAI,UAAA,CAAW,GAAG,CAAA,GAAI,GAAA,GAAM,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,EAAI,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA;AACxE,MAAA,MAAM,MAAA,GAAS,IAAI,eAAA,CAAgB,EAAE,cAAc,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AACzE,MAAA,MAAM,MAAM,CAAA,EAAG,OAAO,CAAA,EAAG,MAAM,mBAAmB,MAAM,CAAA,CAAA;AAExD,MAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,GAAA,EAAK;AAAA,QAChC,WAAA,EAAa,SAAA;AAAA,QACb,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAED,MAAA,IAAI,SAAS,EAAA,EAAI;AACf,QAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,IAAA,EAAK;AACjC,QAAA,MAAA,CAAO,QAAA,CAAS,OAAO,IAAA,CAAK,GAAA;AAAA,MAC9B;AAAA,IACF,CAAA,SAAE;AACA,MAAA,YAAA,CAAa,KAAK,CAAA;AAAA,IACpB;AAAA,EACF,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,uBACEC,cAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,QAAA,iCACGC,eAAA,EAAA,EAAK,IAAA,EAAK,MAAK,SAAA,EAAU,eAAA,EACxB,QAAA,kBAAAF,cAAA,CAACG,iBAAA,EAAA,EAAM,CAAA,EACT,CAAA;AAAA,MAEF,WAAW,KAAA,IAAS,iBAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,4DAAA;AAAA,MAChC,UAAA,kBACEH,cAAA,CAACI,aAAA,EAAA,EAAO,OAAA,EAAQ,SAAA,EAAU,OAAA,EAAS,WAAA,EAAa,QAAA,EAAU,SAAA,EACvD,QAAA,EAAA,SAAA,GAAY,gBAAA,GAAmB,QAAA,EAClC;AAAA;AAAA,GAEJ;AAEJ;;;;"}
1
+ {"version":3,"file":"SessionExpired-BB5hWYA2.cjs","sources":["../src/ds/components/SessionExpired/SessionExpired.tsx"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { LogIn } from 'lucide-react';\nimport { useState, useCallback } from 'react';\n\nimport { Icon } from '../../icons/Icon';\nimport { Button } from '../Button';\nimport { EmptyState } from '../EmptyState';\n\nexport interface SessionExpiredProps {\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Additional CSS classes */\n className?: string;\n}\n\nexport function SessionExpired({ title, description, className }: SessionExpiredProps) {\n const [isPending, setIsPending] = useState(false);\n const client = useMastraClient();\n\n const handleLogin = useCallback(async () => {\n try {\n setIsPending(true);\n const { baseUrl = '', apiPrefix } = (client as any).options || {};\n const raw = (apiPrefix || '/api').trim();\n const prefix = (raw.startsWith('/') ? raw : `/${raw}`).replace(/\\/$/, '');\n const params = new URLSearchParams({ redirect_uri: window.location.href });\n const url = `${baseUrl}${prefix}/auth/sso/login?${params}`;\n\n const response = await fetch(url, {\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n });\n\n if (response.ok) {\n const data = await response.json();\n window.location.href = data.url;\n }\n } finally {\n setIsPending(false);\n }\n }, [client]);\n\n return (\n <EmptyState\n className={className}\n iconSlot={\n <Icon size=\"lg\" className=\"text-neutral3\">\n <LogIn />\n </Icon>\n }\n titleSlot={title ?? 'Session Expired'}\n descriptionSlot={description ?? 'Your session has expired. Please log in again to continue.'}\n actionSlot={\n <Button variant=\"default\" onClick={handleLogin} disabled={isPending}>\n {isPending ? 'Redirecting...' : 'Log in'}\n </Button>\n }\n />\n );\n}\n"],"names":["useState","useMastraClient","useCallback","jsx","EmptyState","Icon","LogIn","Button"],"mappings":";;;;;;;;;;AAiBO,SAAS,cAAA,CAAe,EAAE,KAAA,EAAO,WAAA,EAAa,WAAU,EAAwB;AACrF,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAIA,eAAS,KAAK,CAAA;AAChD,EAAA,MAAM,SAASC,qBAAA,EAAgB;AAE/B,EAAA,MAAM,WAAA,GAAcC,kBAAY,YAAY;AAC1C,IAAA,IAAI;AACF,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,MAAM,EAAE,OAAA,GAAU,EAAA,EAAI,WAAU,GAAK,MAAA,CAAe,WAAW,EAAC;AAChE,MAAA,MAAM,GAAA,GAAA,CAAO,SAAA,IAAa,MAAA,EAAQ,IAAA,EAAK;AACvC,MAAA,MAAM,MAAA,GAAA,CAAU,GAAA,CAAI,UAAA,CAAW,GAAG,CAAA,GAAI,GAAA,GAAM,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,EAAI,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA;AACxE,MAAA,MAAM,MAAA,GAAS,IAAI,eAAA,CAAgB,EAAE,cAAc,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AACzE,MAAA,MAAM,MAAM,CAAA,EAAG,OAAO,CAAA,EAAG,MAAM,mBAAmB,MAAM,CAAA,CAAA;AAExD,MAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,GAAA,EAAK;AAAA,QAChC,WAAA,EAAa,SAAA;AAAA,QACb,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAED,MAAA,IAAI,SAAS,EAAA,EAAI;AACf,QAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,IAAA,EAAK;AACjC,QAAA,MAAA,CAAO,QAAA,CAAS,OAAO,IAAA,CAAK,GAAA;AAAA,MAC9B;AAAA,IACF,CAAA,SAAE;AACA,MAAA,YAAA,CAAa,KAAK,CAAA;AAAA,IACpB;AAAA,EACF,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,uBACEC,cAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,QAAA,iCACGC,eAAA,EAAA,EAAK,IAAA,EAAK,MAAK,SAAA,EAAU,eAAA,EACxB,QAAA,kBAAAF,cAAA,CAACG,iBAAA,EAAA,EAAM,CAAA,EACT,CAAA;AAAA,MAEF,WAAW,KAAA,IAAS,iBAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,4DAAA;AAAA,MAChC,UAAA,kBACEH,cAAA,CAACI,aAAA,EAAA,EAAO,OAAA,EAAQ,SAAA,EAAU,OAAA,EAAS,WAAA,EAAa,QAAA,EAAU,SAAA,EACvD,QAAA,EAAA,SAAA,GAAY,gBAAA,GAAmB,QAAA,EAClC;AAAA;AAAA,GAEJ;AAEJ;;;;"}
@@ -3,8 +3,8 @@ import { useMastraClient } from '@mastra/react';
3
3
  import { LogIn } from 'lucide-react';
4
4
  import { useState, useCallback } from 'react';
5
5
  import { Icon } from './icons/Icon.es.js';
6
- import { B as Button } from './Button-vr_I4iME.js';
7
- import { E as EmptyState } from './EmptyState-BLd-LJOA.js';
6
+ import { B as Button } from './Button-BsfLQEC6.js';
7
+ import { E as EmptyState } from './EmptyState-CA1zVauT.js';
8
8
 
9
9
  function SessionExpired({ title, description, className }) {
10
10
  const [isPending, setIsPending] = useState(false);
@@ -42,4 +42,4 @@ function SessionExpired({ title, description, className }) {
42
42
  }
43
43
 
44
44
  export { SessionExpired as S };
45
- //# sourceMappingURL=SessionExpired-sUz4q0gn.js.map
45
+ //# sourceMappingURL=SessionExpired-BE9U7iZP.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SessionExpired-sUz4q0gn.js","sources":["../src/ds/components/SessionExpired/SessionExpired.tsx"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { LogIn } from 'lucide-react';\nimport { useState, useCallback } from 'react';\n\nimport { Icon } from '../../icons/Icon';\nimport { Button } from '../Button';\nimport { EmptyState } from '../EmptyState';\n\nexport interface SessionExpiredProps {\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Additional CSS classes */\n className?: string;\n}\n\nexport function SessionExpired({ title, description, className }: SessionExpiredProps) {\n const [isPending, setIsPending] = useState(false);\n const client = useMastraClient();\n\n const handleLogin = useCallback(async () => {\n try {\n setIsPending(true);\n const { baseUrl = '', apiPrefix } = (client as any).options || {};\n const raw = (apiPrefix || '/api').trim();\n const prefix = (raw.startsWith('/') ? raw : `/${raw}`).replace(/\\/$/, '');\n const params = new URLSearchParams({ redirect_uri: window.location.href });\n const url = `${baseUrl}${prefix}/auth/sso/login?${params}`;\n\n const response = await fetch(url, {\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n });\n\n if (response.ok) {\n const data = await response.json();\n window.location.href = data.url;\n }\n } finally {\n setIsPending(false);\n }\n }, [client]);\n\n return (\n <EmptyState\n className={className}\n iconSlot={\n <Icon size=\"lg\" className=\"text-neutral3\">\n <LogIn />\n </Icon>\n }\n titleSlot={title ?? 'Session Expired'}\n descriptionSlot={description ?? 'Your session has expired. Please log in again to continue.'}\n actionSlot={\n <Button variant=\"default\" onClick={handleLogin} disabled={isPending}>\n {isPending ? 'Redirecting...' : 'Log in'}\n </Button>\n }\n />\n );\n}\n"],"names":[],"mappings":";;;;;;;;AAiBO,SAAS,cAAA,CAAe,EAAE,KAAA,EAAO,WAAA,EAAa,WAAU,EAAwB;AACrF,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,KAAK,CAAA;AAChD,EAAA,MAAM,SAAS,eAAA,EAAgB;AAE/B,EAAA,MAAM,WAAA,GAAc,YAAY,YAAY;AAC1C,IAAA,IAAI;AACF,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,MAAM,EAAE,OAAA,GAAU,EAAA,EAAI,WAAU,GAAK,MAAA,CAAe,WAAW,EAAC;AAChE,MAAA,MAAM,GAAA,GAAA,CAAO,SAAA,IAAa,MAAA,EAAQ,IAAA,EAAK;AACvC,MAAA,MAAM,MAAA,GAAA,CAAU,GAAA,CAAI,UAAA,CAAW,GAAG,CAAA,GAAI,GAAA,GAAM,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,EAAI,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA;AACxE,MAAA,MAAM,MAAA,GAAS,IAAI,eAAA,CAAgB,EAAE,cAAc,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AACzE,MAAA,MAAM,MAAM,CAAA,EAAG,OAAO,CAAA,EAAG,MAAM,mBAAmB,MAAM,CAAA,CAAA;AAExD,MAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,GAAA,EAAK;AAAA,QAChC,WAAA,EAAa,SAAA;AAAA,QACb,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAED,MAAA,IAAI,SAAS,EAAA,EAAI;AACf,QAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,IAAA,EAAK;AACjC,QAAA,MAAA,CAAO,QAAA,CAAS,OAAO,IAAA,CAAK,GAAA;AAAA,MAC9B;AAAA,IACF,CAAA,SAAE;AACA,MAAA,YAAA,CAAa,KAAK,CAAA;AAAA,IACpB;AAAA,EACF,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,uBACE,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,QAAA,sBACG,IAAA,EAAA,EAAK,IAAA,EAAK,MAAK,SAAA,EAAU,eAAA,EACxB,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAM,CAAA,EACT,CAAA;AAAA,MAEF,WAAW,KAAA,IAAS,iBAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,4DAAA;AAAA,MAChC,UAAA,kBACE,GAAA,CAAC,MAAA,EAAA,EAAO,OAAA,EAAQ,SAAA,EAAU,OAAA,EAAS,WAAA,EAAa,QAAA,EAAU,SAAA,EACvD,QAAA,EAAA,SAAA,GAAY,gBAAA,GAAmB,QAAA,EAClC;AAAA;AAAA,GAEJ;AAEJ;;;;"}
1
+ {"version":3,"file":"SessionExpired-BE9U7iZP.js","sources":["../src/ds/components/SessionExpired/SessionExpired.tsx"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { LogIn } from 'lucide-react';\nimport { useState, useCallback } from 'react';\n\nimport { Icon } from '../../icons/Icon';\nimport { Button } from '../Button';\nimport { EmptyState } from '../EmptyState';\n\nexport interface SessionExpiredProps {\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Additional CSS classes */\n className?: string;\n}\n\nexport function SessionExpired({ title, description, className }: SessionExpiredProps) {\n const [isPending, setIsPending] = useState(false);\n const client = useMastraClient();\n\n const handleLogin = useCallback(async () => {\n try {\n setIsPending(true);\n const { baseUrl = '', apiPrefix } = (client as any).options || {};\n const raw = (apiPrefix || '/api').trim();\n const prefix = (raw.startsWith('/') ? raw : `/${raw}`).replace(/\\/$/, '');\n const params = new URLSearchParams({ redirect_uri: window.location.href });\n const url = `${baseUrl}${prefix}/auth/sso/login?${params}`;\n\n const response = await fetch(url, {\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n });\n\n if (response.ok) {\n const data = await response.json();\n window.location.href = data.url;\n }\n } finally {\n setIsPending(false);\n }\n }, [client]);\n\n return (\n <EmptyState\n className={className}\n iconSlot={\n <Icon size=\"lg\" className=\"text-neutral3\">\n <LogIn />\n </Icon>\n }\n titleSlot={title ?? 'Session Expired'}\n descriptionSlot={description ?? 'Your session has expired. Please log in again to continue.'}\n actionSlot={\n <Button variant=\"default\" onClick={handleLogin} disabled={isPending}>\n {isPending ? 'Redirecting...' : 'Log in'}\n </Button>\n }\n />\n );\n}\n"],"names":[],"mappings":";;;;;;;;AAiBO,SAAS,cAAA,CAAe,EAAE,KAAA,EAAO,WAAA,EAAa,WAAU,EAAwB;AACrF,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,KAAK,CAAA;AAChD,EAAA,MAAM,SAAS,eAAA,EAAgB;AAE/B,EAAA,MAAM,WAAA,GAAc,YAAY,YAAY;AAC1C,IAAA,IAAI;AACF,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,MAAM,EAAE,OAAA,GAAU,EAAA,EAAI,WAAU,GAAK,MAAA,CAAe,WAAW,EAAC;AAChE,MAAA,MAAM,GAAA,GAAA,CAAO,SAAA,IAAa,MAAA,EAAQ,IAAA,EAAK;AACvC,MAAA,MAAM,MAAA,GAAA,CAAU,GAAA,CAAI,UAAA,CAAW,GAAG,CAAA,GAAI,GAAA,GAAM,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,EAAI,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA;AACxE,MAAA,MAAM,MAAA,GAAS,IAAI,eAAA,CAAgB,EAAE,cAAc,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AACzE,MAAA,MAAM,MAAM,CAAA,EAAG,OAAO,CAAA,EAAG,MAAM,mBAAmB,MAAM,CAAA,CAAA;AAExD,MAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,GAAA,EAAK;AAAA,QAChC,WAAA,EAAa,SAAA;AAAA,QACb,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAED,MAAA,IAAI,SAAS,EAAA,EAAI;AACf,QAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,IAAA,EAAK;AACjC,QAAA,MAAA,CAAO,QAAA,CAAS,OAAO,IAAA,CAAK,GAAA;AAAA,MAC9B;AAAA,IACF,CAAA,SAAE;AACA,MAAA,YAAA,CAAa,KAAK,CAAA;AAAA,IACpB;AAAA,EACF,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,uBACE,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,QAAA,sBACG,IAAA,EAAA,EAAK,IAAA,EAAK,MAAK,SAAA,EAAU,eAAA,EACxB,QAAA,kBAAA,GAAA,CAAC,KAAA,EAAA,EAAM,CAAA,EACT,CAAA;AAAA,MAEF,WAAW,KAAA,IAAS,iBAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,4DAAA;AAAA,MAChC,UAAA,kBACE,GAAA,CAAC,MAAA,EAAA,EAAO,OAAA,EAAQ,SAAA,EAAU,OAAA,EAAS,WAAA,EAAa,QAAA,EAAU,SAAA,EACvD,QAAA,EAAA,SAAA,GAAY,gBAAA,GAAmB,QAAA,EAClC;AAAA;AAAA,GAEJ;AAEJ;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { c as cn } from './cn-BakJzhuv.js';
2
+ import { c as cn } from './cn-B4oPhFx9.js';
3
3
 
4
4
  const variants = {
5
5
  // UI text sizes
@@ -23,4 +23,4 @@ const Txt = ({ as: Root = "p", className, variant = "ui-md", font, ref, ...props
23
23
  };
24
24
 
25
25
  export { Txt as T };
26
- //# sourceMappingURL=Txt-Df42XG5p.js.map
26
+ //# sourceMappingURL=Txt-ByUf-9Ic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Txt-Df42XG5p.js","sources":["../src/ds/components/Txt/Txt.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode, Ref } from 'react';\n\nimport type { FontSizes } from '../../tokens';\nimport { cn } from '@/lib/utils';\n\nexport interface TxtProps extends HTMLAttributes<HTMLDivElement | HTMLLabelElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'label' | 'div';\n ref?: Ref<HTMLElement>;\n variant?: keyof typeof FontSizes;\n font?: 'mono';\n htmlFor?: string;\n className?: string;\n title?: string;\n children?: ReactNode;\n}\n\nconst variants = {\n // UI text sizes\n 'ui-xs': 'text-ui-xs leading-ui-xs',\n 'ui-sm': 'text-ui-sm leading-ui-sm',\n 'ui-smd': 'text-ui-smd leading-ui-smd',\n 'ui-md': 'text-ui-md leading-ui-md',\n 'ui-lg': 'text-ui-lg leading-ui-lg',\n // Header sizes\n 'header-xs': 'text-header-xs leading-header-xs',\n 'header-sm': 'text-header-sm leading-header-sm',\n 'header-md': 'text-header-md leading-header-md',\n 'header-lg': 'text-header-lg leading-header-lg',\n 'header-xl': 'text-header-xl leading-header-xl',\n};\n\nconst fonts = {\n mono: 'font-mono',\n};\n\nexport const Txt = ({ as: Root = 'p', className, variant = 'ui-md', font, ref, ...props }: TxtProps) => {\n // Cast needed: `Root` is polymorphic, so TS narrows the expected ref to a single element type.\n return <Root ref={ref as never} className={cn(variants[variant], font && fonts[font], className)} {...props} />;\n};\n"],"names":[],"mappings":";;;AAgBA,MAAM,QAAA,GAAW;AAAA;AAAA,EAEf,OAAA,EAAS,0BAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA,EACT,QAAA,EAAU,4BAAA;AAAA,EACV,OAAA,EAAS,0BAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA;AAAA,EAET,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa;AACf,CAAA;AAEA,MAAM,KAAA,GAAQ;AAAA,EACZ,IAAA,EAAM;AACR,CAAA;AAEO,MAAM,GAAA,GAAM,CAAC,EAAE,EAAA,EAAI,IAAA,GAAO,GAAA,EAAK,SAAA,EAAW,OAAA,GAAU,OAAA,EAAS,IAAA,EAAM,GAAA,EAAK,GAAG,OAAM,KAAgB;AAEtG,EAAA,uBAAO,GAAA,CAAC,IAAA,EAAA,EAAK,GAAA,EAAmB,SAAA,EAAW,GAAG,QAAA,CAAS,OAAO,CAAA,EAAG,IAAA,IAAQ,MAAM,IAAI,CAAA,EAAG,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CAAA;AAC/G;;;;"}
1
+ {"version":3,"file":"Txt-ByUf-9Ic.js","sources":["../src/ds/components/Txt/Txt.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode, Ref } from 'react';\n\nimport type { FontSizes } from '../../tokens';\nimport { cn } from '@/lib/utils';\n\nexport interface TxtProps extends HTMLAttributes<HTMLDivElement | HTMLLabelElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'label' | 'div';\n ref?: Ref<HTMLElement>;\n variant?: keyof typeof FontSizes;\n font?: 'mono';\n htmlFor?: string;\n className?: string;\n title?: string;\n children?: ReactNode;\n}\n\nconst variants = {\n // UI text sizes\n 'ui-xs': 'text-ui-xs leading-ui-xs',\n 'ui-sm': 'text-ui-sm leading-ui-sm',\n 'ui-smd': 'text-ui-smd leading-ui-smd',\n 'ui-md': 'text-ui-md leading-ui-md',\n 'ui-lg': 'text-ui-lg leading-ui-lg',\n // Header sizes\n 'header-xs': 'text-header-xs leading-header-xs',\n 'header-sm': 'text-header-sm leading-header-sm',\n 'header-md': 'text-header-md leading-header-md',\n 'header-lg': 'text-header-lg leading-header-lg',\n 'header-xl': 'text-header-xl leading-header-xl',\n};\n\nconst fonts = {\n mono: 'font-mono',\n};\n\nexport const Txt = ({ as: Root = 'p', className, variant = 'ui-md', font, ref, ...props }: TxtProps) => {\n // Cast needed: `Root` is polymorphic, so TS narrows the expected ref to a single element type.\n return <Root ref={ref as never} className={cn(variants[variant], font && fonts[font], className)} {...props} />;\n};\n"],"names":[],"mappings":";;;AAgBA,MAAM,QAAA,GAAW;AAAA;AAAA,EAEf,OAAA,EAAS,0BAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA,EACT,QAAA,EAAU,4BAAA;AAAA,EACV,OAAA,EAAS,0BAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA;AAAA,EAET,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa;AACf,CAAA;AAEA,MAAM,KAAA,GAAQ;AAAA,EACZ,IAAA,EAAM;AACR,CAAA;AAEO,MAAM,GAAA,GAAM,CAAC,EAAE,EAAA,EAAI,IAAA,GAAO,GAAA,EAAK,SAAA,EAAW,OAAA,GAAU,OAAA,EAAS,IAAA,EAAM,GAAA,EAAK,GAAG,OAAM,KAAgB;AAEtG,EAAA,uBAAO,GAAA,CAAC,IAAA,EAAA,EAAK,GAAA,EAAmB,SAAA,EAAW,GAAG,QAAA,CAAS,OAAO,CAAA,EAAG,IAAA,IAAQ,MAAM,IAAI,CAAA,EAAG,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CAAA;AAC/G;;;;"}
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const jsxRuntime = require('react/jsx-runtime');
4
- const utils_cn = require('./cn-vA5sWo9W.cjs');
4
+ const utils_cn = require('./cn-DCPcv4xv.cjs');
5
5
 
6
6
  const variants = {
7
7
  // UI text sizes
@@ -25,4 +25,4 @@ const Txt = ({ as: Root = "p", className, variant = "ui-md", font, ref, ...props
25
25
  };
26
26
 
27
27
  exports.Txt = Txt;
28
- //# sourceMappingURL=Txt-I5lK8zy7.cjs.map
28
+ //# sourceMappingURL=Txt-D5Y_H2a0.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Txt-I5lK8zy7.cjs","sources":["../src/ds/components/Txt/Txt.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode, Ref } from 'react';\n\nimport type { FontSizes } from '../../tokens';\nimport { cn } from '@/lib/utils';\n\nexport interface TxtProps extends HTMLAttributes<HTMLDivElement | HTMLLabelElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'label' | 'div';\n ref?: Ref<HTMLElement>;\n variant?: keyof typeof FontSizes;\n font?: 'mono';\n htmlFor?: string;\n className?: string;\n title?: string;\n children?: ReactNode;\n}\n\nconst variants = {\n // UI text sizes\n 'ui-xs': 'text-ui-xs leading-ui-xs',\n 'ui-sm': 'text-ui-sm leading-ui-sm',\n 'ui-smd': 'text-ui-smd leading-ui-smd',\n 'ui-md': 'text-ui-md leading-ui-md',\n 'ui-lg': 'text-ui-lg leading-ui-lg',\n // Header sizes\n 'header-xs': 'text-header-xs leading-header-xs',\n 'header-sm': 'text-header-sm leading-header-sm',\n 'header-md': 'text-header-md leading-header-md',\n 'header-lg': 'text-header-lg leading-header-lg',\n 'header-xl': 'text-header-xl leading-header-xl',\n};\n\nconst fonts = {\n mono: 'font-mono',\n};\n\nexport const Txt = ({ as: Root = 'p', className, variant = 'ui-md', font, ref, ...props }: TxtProps) => {\n // Cast needed: `Root` is polymorphic, so TS narrows the expected ref to a single element type.\n return <Root ref={ref as never} className={cn(variants[variant], font && fonts[font], className)} {...props} />;\n};\n"],"names":["jsx","cn"],"mappings":";;;;;AAgBA,MAAM,QAAA,GAAW;AAAA;AAAA,EAEf,OAAA,EAAS,0BAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA,EACT,QAAA,EAAU,4BAAA;AAAA,EACV,OAAA,EAAS,0BAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA;AAAA,EAET,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa;AACf,CAAA;AAEA,MAAM,KAAA,GAAQ;AAAA,EACZ,IAAA,EAAM;AACR,CAAA;AAEO,MAAM,GAAA,GAAM,CAAC,EAAE,EAAA,EAAI,IAAA,GAAO,GAAA,EAAK,SAAA,EAAW,OAAA,GAAU,OAAA,EAAS,IAAA,EAAM,GAAA,EAAK,GAAG,OAAM,KAAgB;AAEtG,EAAA,uBAAOA,cAAA,CAAC,IAAA,EAAA,EAAK,GAAA,EAAmB,SAAA,EAAWC,YAAG,QAAA,CAAS,OAAO,CAAA,EAAG,IAAA,IAAQ,MAAM,IAAI,CAAA,EAAG,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CAAA;AAC/G;;;;"}
1
+ {"version":3,"file":"Txt-D5Y_H2a0.cjs","sources":["../src/ds/components/Txt/Txt.tsx"],"sourcesContent":["import type { HTMLAttributes, ReactNode, Ref } from 'react';\n\nimport type { FontSizes } from '../../tokens';\nimport { cn } from '@/lib/utils';\n\nexport interface TxtProps extends HTMLAttributes<HTMLDivElement | HTMLLabelElement> {\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'label' | 'div';\n ref?: Ref<HTMLElement>;\n variant?: keyof typeof FontSizes;\n font?: 'mono';\n htmlFor?: string;\n className?: string;\n title?: string;\n children?: ReactNode;\n}\n\nconst variants = {\n // UI text sizes\n 'ui-xs': 'text-ui-xs leading-ui-xs',\n 'ui-sm': 'text-ui-sm leading-ui-sm',\n 'ui-smd': 'text-ui-smd leading-ui-smd',\n 'ui-md': 'text-ui-md leading-ui-md',\n 'ui-lg': 'text-ui-lg leading-ui-lg',\n // Header sizes\n 'header-xs': 'text-header-xs leading-header-xs',\n 'header-sm': 'text-header-sm leading-header-sm',\n 'header-md': 'text-header-md leading-header-md',\n 'header-lg': 'text-header-lg leading-header-lg',\n 'header-xl': 'text-header-xl leading-header-xl',\n};\n\nconst fonts = {\n mono: 'font-mono',\n};\n\nexport const Txt = ({ as: Root = 'p', className, variant = 'ui-md', font, ref, ...props }: TxtProps) => {\n // Cast needed: `Root` is polymorphic, so TS narrows the expected ref to a single element type.\n return <Root ref={ref as never} className={cn(variants[variant], font && fonts[font], className)} {...props} />;\n};\n"],"names":["jsx","cn"],"mappings":";;;;;AAgBA,MAAM,QAAA,GAAW;AAAA;AAAA,EAEf,OAAA,EAAS,0BAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA,EACT,QAAA,EAAU,4BAAA;AAAA,EACV,OAAA,EAAS,0BAAA;AAAA,EACT,OAAA,EAAS,0BAAA;AAAA;AAAA,EAET,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa,kCAAA;AAAA,EACb,WAAA,EAAa;AACf,CAAA;AAEA,MAAM,KAAA,GAAQ;AAAA,EACZ,IAAA,EAAM;AACR,CAAA;AAEO,MAAM,GAAA,GAAM,CAAC,EAAE,EAAA,EAAI,IAAA,GAAO,GAAA,EAAK,SAAA,EAAW,OAAA,GAAU,OAAA,EAAS,IAAA,EAAM,GAAA,EAAK,GAAG,OAAM,KAAgB;AAEtG,EAAA,uBAAOA,cAAA,CAAC,IAAA,EAAA,EAAK,GAAA,EAAmB,SAAA,EAAWC,YAAG,QAAA,CAAS,OAAO,CAAA,EAAG,IAAA,IAAQ,MAAM,IAAI,CAAA,EAAG,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CAAA;AAC/G;;;;"}
@@ -1,8 +1,8 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { c as cva } from './index-CSm06eOE.js';
2
+ import { c as cva } from './index-DsNrjFJd.js';
3
3
  import * as React from 'react';
4
4
  import { controlSizeClasses } from './primitives/control-size.es.js';
5
- import { c as cn } from './cn-BakJzhuv.js';
5
+ import { c as cn } from './cn-B4oPhFx9.js';
6
6
 
7
7
  const ButtonsGroupOrientationContext = React.createContext("horizontal");
8
8
  const buttonsGroupVariants = cva(
@@ -160,4 +160,4 @@ const ButtonsGroupText = React.forwardRef(
160
160
  ButtonsGroupText.displayName = "ButtonsGroupText";
161
161
 
162
162
  export { ButtonsGroup as B, ButtonsGroupSeparator as a, ButtonsGroupText as b, buttonsGroupVariants as c };
163
- //# sourceMappingURL=buttons-group-D01G8mAW.js.map
163
+ //# sourceMappingURL=buttons-group-BjM12HPx.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buttons-group-D01G8mAW.js","sources":["../src/ds/components/ButtonsGroup/buttons-group.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport type { VariantProps } from 'class-variance-authority';\nimport * as React from 'react';\n\nimport { controlSizeClasses } from '@/ds/primitives/control-size';\nimport type { ControlSize } from '@/ds/primitives/control-size';\nimport { cn } from '@/lib/utils';\n\ntype Orientation = 'horizontal' | 'vertical';\n\nconst ButtonsGroupOrientationContext = React.createContext<Orientation>('horizontal');\n\nconst buttonsGroupVariants = cva(\n // Lift the hovered/focused segment so its full border paints over the collapsed seam (else a\n // neighbour clips a side / the seam ignores the active colour). Use `:focus-visible`, NOT\n // `:focus-within`: a mouse click leaves a plain `:focus` on a button, which would otherwise\n // keep its seam border highlighted until blur. `:has(:focus-visible)` covers a nested\n // focusable (the <input> inside an InputGroup); text inputs match :focus-visible on click too,\n // which is the wanted behaviour for a field.\n cn(\n 'flex',\n '[&>*:hover]:relative [&>*:hover]:z-10',\n '[&>*:focus-visible]:relative [&>*:focus-visible]:z-10',\n '[&>*:has(:focus-visible)]:relative [&>*:has(:focus-visible)]:z-10',\n ),\n {\n variants: {\n orientation: {\n horizontal: 'flex-row items-center',\n vertical: 'flex-col items-stretch',\n },\n spacing: {\n default: 'gap-2',\n close: 'gap-0',\n },\n },\n compoundVariants: [\n {\n orientation: 'horizontal',\n spacing: 'close',\n // Flatten inner corners. A segment rounds its right edge off having a *real* segment\n // somewhere after it (general sibling `~`, not `:not(:last-child)` and not adjacent\n // `+`). This survives non-segment children that frameworks inject between/around the\n // real ones: Base UI's trailing `<input aria-hidden>` (Select), and the visually\n // -hidden focus guards (`[data-base-ui-focus-guard]`) + positioner anchor (`[aria-owns]`)\n // a Menu/Popover inserts while OPEN — without this a DropdownMenu split-button seam\n // breaks the moment the menu opens. The same ignore-list is applied to every seam rule.\n className: cn(\n '[&>*:has(~_*:not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]))]:rounded-r-none',\n '[&>*:not(:first-child):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns])]:rounded-l-none',\n // One-line seam: `-ml-px` overlaps adjacent borders onto the same pixel. Filled\n // segments (opaque bg: default/primary/destructive buttons, the text chip) keep\n // their own border — the bg hides the neighbour's. Transparent/outline segments\n // null their left border at rest (so the neighbour's shows without doubling) and\n // reveal it on hover / keyboard-focus, where the z-10 lift paints the complete border.\n '[&>*:not([data-slot=buttons-group-separator]):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]):not(:first-child)]:-ml-px',\n '[&>*:not([data-slot=buttons-group-separator]):not([data-slot=buttons-group-text]):not([data-variant=default]):not([data-variant=primary]):not([data-variant=destructive]):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]):not(:first-child):not(:hover):not(:focus-visible):not(:has(:focus-visible))]:border-l-transparent',\n // Borderless filled variants get an inset-shadow divider.\n '[&>[data-variant=primary]:not([aria-hidden=true]):not(:first-child)]:shadow-[inset_1px_0_0_0_var(--color-border1)]',\n '[&>[data-variant=destructive]:not([aria-hidden=true]):not(:first-child)]:shadow-[inset_1px_0_0_0_var(--color-border1)]',\n // Animate only colour/bg so the seam + ring snap (no fade desynced from the z-10 drop).\n '[&>*:not([data-slot=buttons-group-separator]):not([aria-hidden=true])]:transition-[color,background-color]',\n // Group owns sizing (no consumer width classes): fill on flex/InputGroup/input,\n // content-width on a Select trigger (descendant rule beats the trigger's `w-full`).\n '[&>[data-slot=select-trigger]]:w-fit [&>[data-slot=select-trigger]]:flex-none',\n '[&>input]:flex-1',\n ),\n },\n {\n orientation: 'vertical',\n spacing: 'close',\n // Children are capsules (rounded-full); re-round the outer ends to rounded-xl and\n // flatten the touching ones. Unlike the horizontal block, these use plain structural\n // selectors (no aria-hidden / data-base-ui-focus-guard / aria-owns ignore-list): vertical\n // close-spacing is only used with plain buttons, so it never hosts a Select/DropdownMenu\n // that injects guard siblings. Mirror the horizontal ignore-list here if one ever does.\n className: cn(\n '[&>*:not(:last-child)]:rounded-b-none',\n '[&>*:not(:first-child)]:rounded-t-none',\n '[&>:first-child]:rounded-t-xl',\n '[&>:last-child]:rounded-b-xl',\n '[&>*:not([data-slot=buttons-group-separator]):not(:first-child)]:-mt-px',\n '[&>*:not([data-slot=buttons-group-separator]):not([data-slot=buttons-group-text]):not([data-variant=default]):not([data-variant=primary]):not([data-variant=destructive]):not(:first-child):not(:hover):not(:focus-visible):not(:has(:focus-visible))]:border-t-transparent',\n '[&>[data-variant=primary]:not(:first-child)]:shadow-[inset_0_1px_0_0_var(--color-border1)]',\n '[&>[data-variant=destructive]:not(:first-child)]:shadow-[inset_0_1px_0_0_var(--color-border1)]',\n '[&>*:not([data-slot=buttons-group-separator])]:transition-[color,background-color]',\n ),\n },\n ],\n defaultVariants: {\n orientation: 'horizontal',\n spacing: 'default',\n },\n },\n);\n\n// Derive variant types from cva (single source of truth) and strip `null` that cva injects.\ntype ButtonsGroupVariantsProps = VariantProps<typeof buttonsGroupVariants>;\nexport type ButtonsGroupSpacing = NonNullable<ButtonsGroupVariantsProps['spacing']>;\n\nexport type ButtonsGroupProps = React.ComponentPropsWithoutRef<'div'> & {\n orientation?: Orientation;\n spacing?: ButtonsGroupSpacing;\n};\n\nexport const ButtonsGroup = React.forwardRef<HTMLDivElement, ButtonsGroupProps>(\n ({ children, className, orientation = 'horizontal', spacing = 'default', ...props }, ref) => {\n return (\n <ButtonsGroupOrientationContext.Provider value={orientation}>\n <div\n ref={ref}\n role=\"group\"\n data-slot=\"buttons-group\"\n data-orientation={orientation}\n className={cn(buttonsGroupVariants({ orientation, spacing }), className)}\n {...props}\n >\n {children}\n </div>\n </ButtonsGroupOrientationContext.Provider>\n );\n },\n);\nButtonsGroup.displayName = 'ButtonsGroup';\n\nexport type ButtonsGroupSeparatorProps = React.ComponentPropsWithoutRef<'div'> & {\n orientation?: Orientation;\n};\n\nexport const ButtonsGroupSeparator = React.forwardRef<HTMLDivElement, ButtonsGroupSeparatorProps>(\n ({ className, orientation, ...props }, ref) => {\n const parentOrientation = React.useContext(ButtonsGroupOrientationContext);\n // Separator runs perpendicular to the group flow by default.\n const resolved = orientation ?? (parentOrientation === 'vertical' ? 'horizontal' : 'vertical');\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation={resolved}\n data-slot=\"buttons-group-separator\"\n className={cn('self-stretch bg-border1', resolved === 'vertical' ? 'w-px' : 'h-px', className)}\n {...props}\n />\n );\n },\n);\nButtonsGroupSeparator.displayName = 'ButtonsGroupSeparator';\n\nconst buttonsGroupTextVariants = cva(\n cn(\n 'inline-flex items-center justify-center border border-border1 bg-surface3 text-neutral5 select-none',\n 'shrink-0 gap-[.75em] rounded-full px-[1em] whitespace-nowrap',\n '[&>svg]:size-[1.1em] [&>svg]:opacity-50',\n ),\n {\n variants: {\n size: {\n xs: controlSizeClasses.xs,\n sm: controlSizeClasses.sm,\n md: controlSizeClasses.md,\n default: controlSizeClasses.default,\n lg: controlSizeClasses.lg,\n },\n },\n defaultVariants: {\n size: 'default',\n },\n },\n);\n\nexport type ButtonsGroupTextProps = React.ComponentPropsWithoutRef<'div'> & {\n size?: ControlSize;\n};\n\nexport const ButtonsGroupText = React.forwardRef<HTMLDivElement, ButtonsGroupTextProps>(\n ({ className, size = 'default', ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-slot=\"buttons-group-text\"\n className={cn(buttonsGroupTextVariants({ size }), className)}\n {...props}\n />\n );\n },\n);\nButtonsGroupText.displayName = 'ButtonsGroupText';\n\n// eslint-disable-next-line react-refresh/only-export-components -- exported variant helper is part of ButtonsGroup's public API\nexport { buttonsGroupVariants };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buttons-group-BjM12HPx.js","sources":["../src/ds/components/ButtonsGroup/buttons-group.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport type { VariantProps } from 'class-variance-authority';\nimport * as React from 'react';\n\nimport { controlSizeClasses } from '@/ds/primitives/control-size';\nimport type { ControlSize } from '@/ds/primitives/control-size';\nimport { cn } from '@/lib/utils';\n\ntype Orientation = 'horizontal' | 'vertical';\n\nconst ButtonsGroupOrientationContext = React.createContext<Orientation>('horizontal');\n\nconst buttonsGroupVariants = cva(\n // Lift the hovered/focused segment so its full border paints over the collapsed seam (else a\n // neighbour clips a side / the seam ignores the active colour). Use `:focus-visible`, NOT\n // `:focus-within`: a mouse click leaves a plain `:focus` on a button, which would otherwise\n // keep its seam border highlighted until blur. `:has(:focus-visible)` covers a nested\n // focusable (the <input> inside an InputGroup); text inputs match :focus-visible on click too,\n // which is the wanted behaviour for a field.\n cn(\n 'flex',\n '[&>*:hover]:relative [&>*:hover]:z-10',\n '[&>*:focus-visible]:relative [&>*:focus-visible]:z-10',\n '[&>*:has(:focus-visible)]:relative [&>*:has(:focus-visible)]:z-10',\n ),\n {\n variants: {\n orientation: {\n horizontal: 'flex-row items-center',\n vertical: 'flex-col items-stretch',\n },\n spacing: {\n default: 'gap-2',\n close: 'gap-0',\n },\n },\n compoundVariants: [\n {\n orientation: 'horizontal',\n spacing: 'close',\n // Flatten inner corners. A segment rounds its right edge off having a *real* segment\n // somewhere after it (general sibling `~`, not `:not(:last-child)` and not adjacent\n // `+`). This survives non-segment children that frameworks inject between/around the\n // real ones: Base UI's trailing `<input aria-hidden>` (Select), and the visually\n // -hidden focus guards (`[data-base-ui-focus-guard]`) + positioner anchor (`[aria-owns]`)\n // a Menu/Popover inserts while OPEN — without this a DropdownMenu split-button seam\n // breaks the moment the menu opens. The same ignore-list is applied to every seam rule.\n className: cn(\n '[&>*:has(~_*:not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]))]:rounded-r-none',\n '[&>*:not(:first-child):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns])]:rounded-l-none',\n // One-line seam: `-ml-px` overlaps adjacent borders onto the same pixel. Filled\n // segments (opaque bg: default/primary/destructive buttons, the text chip) keep\n // their own border — the bg hides the neighbour's. Transparent/outline segments\n // null their left border at rest (so the neighbour's shows without doubling) and\n // reveal it on hover / keyboard-focus, where the z-10 lift paints the complete border.\n '[&>*:not([data-slot=buttons-group-separator]):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]):not(:first-child)]:-ml-px',\n '[&>*:not([data-slot=buttons-group-separator]):not([data-slot=buttons-group-text]):not([data-variant=default]):not([data-variant=primary]):not([data-variant=destructive]):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]):not(:first-child):not(:hover):not(:focus-visible):not(:has(:focus-visible))]:border-l-transparent',\n // Borderless filled variants get an inset-shadow divider.\n '[&>[data-variant=primary]:not([aria-hidden=true]):not(:first-child)]:shadow-[inset_1px_0_0_0_var(--color-border1)]',\n '[&>[data-variant=destructive]:not([aria-hidden=true]):not(:first-child)]:shadow-[inset_1px_0_0_0_var(--color-border1)]',\n // Animate only colour/bg so the seam + ring snap (no fade desynced from the z-10 drop).\n '[&>*:not([data-slot=buttons-group-separator]):not([aria-hidden=true])]:transition-[color,background-color]',\n // Group owns sizing (no consumer width classes): fill on flex/InputGroup/input,\n // content-width on a Select trigger (descendant rule beats the trigger's `w-full`).\n '[&>[data-slot=select-trigger]]:w-fit [&>[data-slot=select-trigger]]:flex-none',\n '[&>input]:flex-1',\n ),\n },\n {\n orientation: 'vertical',\n spacing: 'close',\n // Children are capsules (rounded-full); re-round the outer ends to rounded-xl and\n // flatten the touching ones. Unlike the horizontal block, these use plain structural\n // selectors (no aria-hidden / data-base-ui-focus-guard / aria-owns ignore-list): vertical\n // close-spacing is only used with plain buttons, so it never hosts a Select/DropdownMenu\n // that injects guard siblings. Mirror the horizontal ignore-list here if one ever does.\n className: cn(\n '[&>*:not(:last-child)]:rounded-b-none',\n '[&>*:not(:first-child)]:rounded-t-none',\n '[&>:first-child]:rounded-t-xl',\n '[&>:last-child]:rounded-b-xl',\n '[&>*:not([data-slot=buttons-group-separator]):not(:first-child)]:-mt-px',\n '[&>*:not([data-slot=buttons-group-separator]):not([data-slot=buttons-group-text]):not([data-variant=default]):not([data-variant=primary]):not([data-variant=destructive]):not(:first-child):not(:hover):not(:focus-visible):not(:has(:focus-visible))]:border-t-transparent',\n '[&>[data-variant=primary]:not(:first-child)]:shadow-[inset_0_1px_0_0_var(--color-border1)]',\n '[&>[data-variant=destructive]:not(:first-child)]:shadow-[inset_0_1px_0_0_var(--color-border1)]',\n '[&>*:not([data-slot=buttons-group-separator])]:transition-[color,background-color]',\n ),\n },\n ],\n defaultVariants: {\n orientation: 'horizontal',\n spacing: 'default',\n },\n },\n);\n\n// Derive variant types from cva (single source of truth) and strip `null` that cva injects.\ntype ButtonsGroupVariantsProps = VariantProps<typeof buttonsGroupVariants>;\nexport type ButtonsGroupSpacing = NonNullable<ButtonsGroupVariantsProps['spacing']>;\n\nexport type ButtonsGroupProps = React.ComponentPropsWithoutRef<'div'> & {\n orientation?: Orientation;\n spacing?: ButtonsGroupSpacing;\n};\n\nexport const ButtonsGroup = React.forwardRef<HTMLDivElement, ButtonsGroupProps>(\n ({ children, className, orientation = 'horizontal', spacing = 'default', ...props }, ref) => {\n return (\n <ButtonsGroupOrientationContext.Provider value={orientation}>\n <div\n ref={ref}\n role=\"group\"\n data-slot=\"buttons-group\"\n data-orientation={orientation}\n className={cn(buttonsGroupVariants({ orientation, spacing }), className)}\n {...props}\n >\n {children}\n </div>\n </ButtonsGroupOrientationContext.Provider>\n );\n },\n);\nButtonsGroup.displayName = 'ButtonsGroup';\n\nexport type ButtonsGroupSeparatorProps = React.ComponentPropsWithoutRef<'div'> & {\n orientation?: Orientation;\n};\n\nexport const ButtonsGroupSeparator = React.forwardRef<HTMLDivElement, ButtonsGroupSeparatorProps>(\n ({ className, orientation, ...props }, ref) => {\n const parentOrientation = React.useContext(ButtonsGroupOrientationContext);\n // Separator runs perpendicular to the group flow by default.\n const resolved = orientation ?? (parentOrientation === 'vertical' ? 'horizontal' : 'vertical');\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation={resolved}\n data-slot=\"buttons-group-separator\"\n className={cn('self-stretch bg-border1', resolved === 'vertical' ? 'w-px' : 'h-px', className)}\n {...props}\n />\n );\n },\n);\nButtonsGroupSeparator.displayName = 'ButtonsGroupSeparator';\n\nconst buttonsGroupTextVariants = cva(\n cn(\n 'inline-flex items-center justify-center border border-border1 bg-surface3 text-neutral5 select-none',\n 'shrink-0 gap-[.75em] rounded-full px-[1em] whitespace-nowrap',\n '[&>svg]:size-[1.1em] [&>svg]:opacity-50',\n ),\n {\n variants: {\n size: {\n xs: controlSizeClasses.xs,\n sm: controlSizeClasses.sm,\n md: controlSizeClasses.md,\n default: controlSizeClasses.default,\n lg: controlSizeClasses.lg,\n },\n },\n defaultVariants: {\n size: 'default',\n },\n },\n);\n\nexport type ButtonsGroupTextProps = React.ComponentPropsWithoutRef<'div'> & {\n size?: ControlSize;\n};\n\nexport const ButtonsGroupText = React.forwardRef<HTMLDivElement, ButtonsGroupTextProps>(\n ({ className, size = 'default', ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-slot=\"buttons-group-text\"\n className={cn(buttonsGroupTextVariants({ size }), className)}\n {...props}\n />\n );\n },\n);\nButtonsGroupText.displayName = 'ButtonsGroupText';\n\n// eslint-disable-next-line react-refresh/only-export-components -- exported variant helper is part of ButtonsGroup's public API\nexport { buttonsGroupVariants };\n"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  const jsxRuntime = require('react/jsx-runtime');
4
- const index = require('./index-C-Lt4Bx_.cjs');
4
+ const index = require('./index-BRtrE4oe.cjs');
5
5
  const React = require('react');
6
6
  const primitives_controlSize = require('./primitives/control-size.cjs.js');
7
- const utils_cn = require('./cn-vA5sWo9W.cjs');
7
+ const utils_cn = require('./cn-DCPcv4xv.cjs');
8
8
 
9
9
  function _interopNamespaceDefault(e) {
10
10
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -184,4 +184,4 @@ exports.ButtonsGroup = ButtonsGroup;
184
184
  exports.ButtonsGroupSeparator = ButtonsGroupSeparator;
185
185
  exports.ButtonsGroupText = ButtonsGroupText;
186
186
  exports.buttonsGroupVariants = buttonsGroupVariants;
187
- //# sourceMappingURL=buttons-group-w9QHUGVh.cjs.map
187
+ //# sourceMappingURL=buttons-group-Cn36DWYX.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"buttons-group-w9QHUGVh.cjs","sources":["../src/ds/components/ButtonsGroup/buttons-group.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport type { VariantProps } from 'class-variance-authority';\nimport * as React from 'react';\n\nimport { controlSizeClasses } from '@/ds/primitives/control-size';\nimport type { ControlSize } from '@/ds/primitives/control-size';\nimport { cn } from '@/lib/utils';\n\ntype Orientation = 'horizontal' | 'vertical';\n\nconst ButtonsGroupOrientationContext = React.createContext<Orientation>('horizontal');\n\nconst buttonsGroupVariants = cva(\n // Lift the hovered/focused segment so its full border paints over the collapsed seam (else a\n // neighbour clips a side / the seam ignores the active colour). Use `:focus-visible`, NOT\n // `:focus-within`: a mouse click leaves a plain `:focus` on a button, which would otherwise\n // keep its seam border highlighted until blur. `:has(:focus-visible)` covers a nested\n // focusable (the <input> inside an InputGroup); text inputs match :focus-visible on click too,\n // which is the wanted behaviour for a field.\n cn(\n 'flex',\n '[&>*:hover]:relative [&>*:hover]:z-10',\n '[&>*:focus-visible]:relative [&>*:focus-visible]:z-10',\n '[&>*:has(:focus-visible)]:relative [&>*:has(:focus-visible)]:z-10',\n ),\n {\n variants: {\n orientation: {\n horizontal: 'flex-row items-center',\n vertical: 'flex-col items-stretch',\n },\n spacing: {\n default: 'gap-2',\n close: 'gap-0',\n },\n },\n compoundVariants: [\n {\n orientation: 'horizontal',\n spacing: 'close',\n // Flatten inner corners. A segment rounds its right edge off having a *real* segment\n // somewhere after it (general sibling `~`, not `:not(:last-child)` and not adjacent\n // `+`). This survives non-segment children that frameworks inject between/around the\n // real ones: Base UI's trailing `<input aria-hidden>` (Select), and the visually\n // -hidden focus guards (`[data-base-ui-focus-guard]`) + positioner anchor (`[aria-owns]`)\n // a Menu/Popover inserts while OPEN — without this a DropdownMenu split-button seam\n // breaks the moment the menu opens. The same ignore-list is applied to every seam rule.\n className: cn(\n '[&>*:has(~_*:not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]))]:rounded-r-none',\n '[&>*:not(:first-child):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns])]:rounded-l-none',\n // One-line seam: `-ml-px` overlaps adjacent borders onto the same pixel. Filled\n // segments (opaque bg: default/primary/destructive buttons, the text chip) keep\n // their own border — the bg hides the neighbour's. Transparent/outline segments\n // null their left border at rest (so the neighbour's shows without doubling) and\n // reveal it on hover / keyboard-focus, where the z-10 lift paints the complete border.\n '[&>*:not([data-slot=buttons-group-separator]):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]):not(:first-child)]:-ml-px',\n '[&>*:not([data-slot=buttons-group-separator]):not([data-slot=buttons-group-text]):not([data-variant=default]):not([data-variant=primary]):not([data-variant=destructive]):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]):not(:first-child):not(:hover):not(:focus-visible):not(:has(:focus-visible))]:border-l-transparent',\n // Borderless filled variants get an inset-shadow divider.\n '[&>[data-variant=primary]:not([aria-hidden=true]):not(:first-child)]:shadow-[inset_1px_0_0_0_var(--color-border1)]',\n '[&>[data-variant=destructive]:not([aria-hidden=true]):not(:first-child)]:shadow-[inset_1px_0_0_0_var(--color-border1)]',\n // Animate only colour/bg so the seam + ring snap (no fade desynced from the z-10 drop).\n '[&>*:not([data-slot=buttons-group-separator]):not([aria-hidden=true])]:transition-[color,background-color]',\n // Group owns sizing (no consumer width classes): fill on flex/InputGroup/input,\n // content-width on a Select trigger (descendant rule beats the trigger's `w-full`).\n '[&>[data-slot=select-trigger]]:w-fit [&>[data-slot=select-trigger]]:flex-none',\n '[&>input]:flex-1',\n ),\n },\n {\n orientation: 'vertical',\n spacing: 'close',\n // Children are capsules (rounded-full); re-round the outer ends to rounded-xl and\n // flatten the touching ones. Unlike the horizontal block, these use plain structural\n // selectors (no aria-hidden / data-base-ui-focus-guard / aria-owns ignore-list): vertical\n // close-spacing is only used with plain buttons, so it never hosts a Select/DropdownMenu\n // that injects guard siblings. Mirror the horizontal ignore-list here if one ever does.\n className: cn(\n '[&>*:not(:last-child)]:rounded-b-none',\n '[&>*:not(:first-child)]:rounded-t-none',\n '[&>:first-child]:rounded-t-xl',\n '[&>:last-child]:rounded-b-xl',\n '[&>*:not([data-slot=buttons-group-separator]):not(:first-child)]:-mt-px',\n '[&>*:not([data-slot=buttons-group-separator]):not([data-slot=buttons-group-text]):not([data-variant=default]):not([data-variant=primary]):not([data-variant=destructive]):not(:first-child):not(:hover):not(:focus-visible):not(:has(:focus-visible))]:border-t-transparent',\n '[&>[data-variant=primary]:not(:first-child)]:shadow-[inset_0_1px_0_0_var(--color-border1)]',\n '[&>[data-variant=destructive]:not(:first-child)]:shadow-[inset_0_1px_0_0_var(--color-border1)]',\n '[&>*:not([data-slot=buttons-group-separator])]:transition-[color,background-color]',\n ),\n },\n ],\n defaultVariants: {\n orientation: 'horizontal',\n spacing: 'default',\n },\n },\n);\n\n// Derive variant types from cva (single source of truth) and strip `null` that cva injects.\ntype ButtonsGroupVariantsProps = VariantProps<typeof buttonsGroupVariants>;\nexport type ButtonsGroupSpacing = NonNullable<ButtonsGroupVariantsProps['spacing']>;\n\nexport type ButtonsGroupProps = React.ComponentPropsWithoutRef<'div'> & {\n orientation?: Orientation;\n spacing?: ButtonsGroupSpacing;\n};\n\nexport const ButtonsGroup = React.forwardRef<HTMLDivElement, ButtonsGroupProps>(\n ({ children, className, orientation = 'horizontal', spacing = 'default', ...props }, ref) => {\n return (\n <ButtonsGroupOrientationContext.Provider value={orientation}>\n <div\n ref={ref}\n role=\"group\"\n data-slot=\"buttons-group\"\n data-orientation={orientation}\n className={cn(buttonsGroupVariants({ orientation, spacing }), className)}\n {...props}\n >\n {children}\n </div>\n </ButtonsGroupOrientationContext.Provider>\n );\n },\n);\nButtonsGroup.displayName = 'ButtonsGroup';\n\nexport type ButtonsGroupSeparatorProps = React.ComponentPropsWithoutRef<'div'> & {\n orientation?: Orientation;\n};\n\nexport const ButtonsGroupSeparator = React.forwardRef<HTMLDivElement, ButtonsGroupSeparatorProps>(\n ({ className, orientation, ...props }, ref) => {\n const parentOrientation = React.useContext(ButtonsGroupOrientationContext);\n // Separator runs perpendicular to the group flow by default.\n const resolved = orientation ?? (parentOrientation === 'vertical' ? 'horizontal' : 'vertical');\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation={resolved}\n data-slot=\"buttons-group-separator\"\n className={cn('self-stretch bg-border1', resolved === 'vertical' ? 'w-px' : 'h-px', className)}\n {...props}\n />\n );\n },\n);\nButtonsGroupSeparator.displayName = 'ButtonsGroupSeparator';\n\nconst buttonsGroupTextVariants = cva(\n cn(\n 'inline-flex items-center justify-center border border-border1 bg-surface3 text-neutral5 select-none',\n 'shrink-0 gap-[.75em] rounded-full px-[1em] whitespace-nowrap',\n '[&>svg]:size-[1.1em] [&>svg]:opacity-50',\n ),\n {\n variants: {\n size: {\n xs: controlSizeClasses.xs,\n sm: controlSizeClasses.sm,\n md: controlSizeClasses.md,\n default: controlSizeClasses.default,\n lg: controlSizeClasses.lg,\n },\n },\n defaultVariants: {\n size: 'default',\n },\n },\n);\n\nexport type ButtonsGroupTextProps = React.ComponentPropsWithoutRef<'div'> & {\n size?: ControlSize;\n};\n\nexport const ButtonsGroupText = React.forwardRef<HTMLDivElement, ButtonsGroupTextProps>(\n ({ className, size = 'default', ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-slot=\"buttons-group-text\"\n className={cn(buttonsGroupTextVariants({ size }), className)}\n {...props}\n />\n );\n },\n);\nButtonsGroupText.displayName = 'ButtonsGroupText';\n\n// eslint-disable-next-line react-refresh/only-export-components -- exported variant helper is part of ButtonsGroup's public API\nexport { buttonsGroupVariants };\n"],"names":["React","cva","cn","jsx","controlSizeClasses"],"mappings":"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"}
1
+ {"version":3,"file":"buttons-group-Cn36DWYX.cjs","sources":["../src/ds/components/ButtonsGroup/buttons-group.tsx"],"sourcesContent":["import { cva } from 'class-variance-authority';\nimport type { VariantProps } from 'class-variance-authority';\nimport * as React from 'react';\n\nimport { controlSizeClasses } from '@/ds/primitives/control-size';\nimport type { ControlSize } from '@/ds/primitives/control-size';\nimport { cn } from '@/lib/utils';\n\ntype Orientation = 'horizontal' | 'vertical';\n\nconst ButtonsGroupOrientationContext = React.createContext<Orientation>('horizontal');\n\nconst buttonsGroupVariants = cva(\n // Lift the hovered/focused segment so its full border paints over the collapsed seam (else a\n // neighbour clips a side / the seam ignores the active colour). Use `:focus-visible`, NOT\n // `:focus-within`: a mouse click leaves a plain `:focus` on a button, which would otherwise\n // keep its seam border highlighted until blur. `:has(:focus-visible)` covers a nested\n // focusable (the <input> inside an InputGroup); text inputs match :focus-visible on click too,\n // which is the wanted behaviour for a field.\n cn(\n 'flex',\n '[&>*:hover]:relative [&>*:hover]:z-10',\n '[&>*:focus-visible]:relative [&>*:focus-visible]:z-10',\n '[&>*:has(:focus-visible)]:relative [&>*:has(:focus-visible)]:z-10',\n ),\n {\n variants: {\n orientation: {\n horizontal: 'flex-row items-center',\n vertical: 'flex-col items-stretch',\n },\n spacing: {\n default: 'gap-2',\n close: 'gap-0',\n },\n },\n compoundVariants: [\n {\n orientation: 'horizontal',\n spacing: 'close',\n // Flatten inner corners. A segment rounds its right edge off having a *real* segment\n // somewhere after it (general sibling `~`, not `:not(:last-child)` and not adjacent\n // `+`). This survives non-segment children that frameworks inject between/around the\n // real ones: Base UI's trailing `<input aria-hidden>` (Select), and the visually\n // -hidden focus guards (`[data-base-ui-focus-guard]`) + positioner anchor (`[aria-owns]`)\n // a Menu/Popover inserts while OPEN — without this a DropdownMenu split-button seam\n // breaks the moment the menu opens. The same ignore-list is applied to every seam rule.\n className: cn(\n '[&>*:has(~_*:not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]))]:rounded-r-none',\n '[&>*:not(:first-child):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns])]:rounded-l-none',\n // One-line seam: `-ml-px` overlaps adjacent borders onto the same pixel. Filled\n // segments (opaque bg: default/primary/destructive buttons, the text chip) keep\n // their own border — the bg hides the neighbour's. Transparent/outline segments\n // null their left border at rest (so the neighbour's shows without doubling) and\n // reveal it on hover / keyboard-focus, where the z-10 lift paints the complete border.\n '[&>*:not([data-slot=buttons-group-separator]):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]):not(:first-child)]:-ml-px',\n '[&>*:not([data-slot=buttons-group-separator]):not([data-slot=buttons-group-text]):not([data-variant=default]):not([data-variant=primary]):not([data-variant=destructive]):not([aria-hidden=true]):not([data-base-ui-focus-guard]):not([aria-owns]):not(:first-child):not(:hover):not(:focus-visible):not(:has(:focus-visible))]:border-l-transparent',\n // Borderless filled variants get an inset-shadow divider.\n '[&>[data-variant=primary]:not([aria-hidden=true]):not(:first-child)]:shadow-[inset_1px_0_0_0_var(--color-border1)]',\n '[&>[data-variant=destructive]:not([aria-hidden=true]):not(:first-child)]:shadow-[inset_1px_0_0_0_var(--color-border1)]',\n // Animate only colour/bg so the seam + ring snap (no fade desynced from the z-10 drop).\n '[&>*:not([data-slot=buttons-group-separator]):not([aria-hidden=true])]:transition-[color,background-color]',\n // Group owns sizing (no consumer width classes): fill on flex/InputGroup/input,\n // content-width on a Select trigger (descendant rule beats the trigger's `w-full`).\n '[&>[data-slot=select-trigger]]:w-fit [&>[data-slot=select-trigger]]:flex-none',\n '[&>input]:flex-1',\n ),\n },\n {\n orientation: 'vertical',\n spacing: 'close',\n // Children are capsules (rounded-full); re-round the outer ends to rounded-xl and\n // flatten the touching ones. Unlike the horizontal block, these use plain structural\n // selectors (no aria-hidden / data-base-ui-focus-guard / aria-owns ignore-list): vertical\n // close-spacing is only used with plain buttons, so it never hosts a Select/DropdownMenu\n // that injects guard siblings. Mirror the horizontal ignore-list here if one ever does.\n className: cn(\n '[&>*:not(:last-child)]:rounded-b-none',\n '[&>*:not(:first-child)]:rounded-t-none',\n '[&>:first-child]:rounded-t-xl',\n '[&>:last-child]:rounded-b-xl',\n '[&>*:not([data-slot=buttons-group-separator]):not(:first-child)]:-mt-px',\n '[&>*:not([data-slot=buttons-group-separator]):not([data-slot=buttons-group-text]):not([data-variant=default]):not([data-variant=primary]):not([data-variant=destructive]):not(:first-child):not(:hover):not(:focus-visible):not(:has(:focus-visible))]:border-t-transparent',\n '[&>[data-variant=primary]:not(:first-child)]:shadow-[inset_0_1px_0_0_var(--color-border1)]',\n '[&>[data-variant=destructive]:not(:first-child)]:shadow-[inset_0_1px_0_0_var(--color-border1)]',\n '[&>*:not([data-slot=buttons-group-separator])]:transition-[color,background-color]',\n ),\n },\n ],\n defaultVariants: {\n orientation: 'horizontal',\n spacing: 'default',\n },\n },\n);\n\n// Derive variant types from cva (single source of truth) and strip `null` that cva injects.\ntype ButtonsGroupVariantsProps = VariantProps<typeof buttonsGroupVariants>;\nexport type ButtonsGroupSpacing = NonNullable<ButtonsGroupVariantsProps['spacing']>;\n\nexport type ButtonsGroupProps = React.ComponentPropsWithoutRef<'div'> & {\n orientation?: Orientation;\n spacing?: ButtonsGroupSpacing;\n};\n\nexport const ButtonsGroup = React.forwardRef<HTMLDivElement, ButtonsGroupProps>(\n ({ children, className, orientation = 'horizontal', spacing = 'default', ...props }, ref) => {\n return (\n <ButtonsGroupOrientationContext.Provider value={orientation}>\n <div\n ref={ref}\n role=\"group\"\n data-slot=\"buttons-group\"\n data-orientation={orientation}\n className={cn(buttonsGroupVariants({ orientation, spacing }), className)}\n {...props}\n >\n {children}\n </div>\n </ButtonsGroupOrientationContext.Provider>\n );\n },\n);\nButtonsGroup.displayName = 'ButtonsGroup';\n\nexport type ButtonsGroupSeparatorProps = React.ComponentPropsWithoutRef<'div'> & {\n orientation?: Orientation;\n};\n\nexport const ButtonsGroupSeparator = React.forwardRef<HTMLDivElement, ButtonsGroupSeparatorProps>(\n ({ className, orientation, ...props }, ref) => {\n const parentOrientation = React.useContext(ButtonsGroupOrientationContext);\n // Separator runs perpendicular to the group flow by default.\n const resolved = orientation ?? (parentOrientation === 'vertical' ? 'horizontal' : 'vertical');\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation={resolved}\n data-slot=\"buttons-group-separator\"\n className={cn('self-stretch bg-border1', resolved === 'vertical' ? 'w-px' : 'h-px', className)}\n {...props}\n />\n );\n },\n);\nButtonsGroupSeparator.displayName = 'ButtonsGroupSeparator';\n\nconst buttonsGroupTextVariants = cva(\n cn(\n 'inline-flex items-center justify-center border border-border1 bg-surface3 text-neutral5 select-none',\n 'shrink-0 gap-[.75em] rounded-full px-[1em] whitespace-nowrap',\n '[&>svg]:size-[1.1em] [&>svg]:opacity-50',\n ),\n {\n variants: {\n size: {\n xs: controlSizeClasses.xs,\n sm: controlSizeClasses.sm,\n md: controlSizeClasses.md,\n default: controlSizeClasses.default,\n lg: controlSizeClasses.lg,\n },\n },\n defaultVariants: {\n size: 'default',\n },\n },\n);\n\nexport type ButtonsGroupTextProps = React.ComponentPropsWithoutRef<'div'> & {\n size?: ControlSize;\n};\n\nexport const ButtonsGroupText = React.forwardRef<HTMLDivElement, ButtonsGroupTextProps>(\n ({ className, size = 'default', ...props }, ref) => {\n return (\n <div\n ref={ref}\n data-slot=\"buttons-group-text\"\n className={cn(buttonsGroupTextVariants({ size }), className)}\n {...props}\n />\n );\n },\n);\nButtonsGroupText.displayName = 'ButtonsGroupText';\n\n// eslint-disable-next-line react-refresh/only-export-components -- exported variant helper is part of ButtonsGroup's public API\nexport { buttonsGroupVariants };\n"],"names":["React","cva","cn","jsx","controlSizeClasses"],"mappings":"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"}
@@ -3,7 +3,7 @@ import { Checkbox as Checkbox$1 } from '@base-ui/react/checkbox';
3
3
  import { Check, Minus } from 'lucide-react';
4
4
  import * as React from 'react';
5
5
  import { transitions } from './primitives/transitions.es.js';
6
- import { c as cn } from './cn-BakJzhuv.js';
6
+ import { c as cn } from './cn-B4oPhFx9.js';
7
7
 
8
8
  const Checkbox = React.forwardRef(
9
9
  ({ className, checked, indeterminate, ...props }, ref) => {
@@ -85,4 +85,4 @@ function CheckboxIndicatorIcon() {
85
85
  }
86
86
 
87
87
  export { Checkbox as C };
88
- //# sourceMappingURL=checkbox-VAUW92fg.js.map
88
+ //# sourceMappingURL=checkbox-84QCxKJf.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-VAUW92fg.js","sources":["../src/ds/components/Checkbox/checkbox.tsx"],"sourcesContent":["import { Checkbox as CheckboxPrimitive } from '@base-ui/react/checkbox';\nimport { Check, Minus } from 'lucide-react';\nimport * as React from 'react';\n\nimport { transitions } from '@/ds/primitives/transitions';\nimport { cn } from '@/lib/utils';\n\n/**\n * Radix-style tri-state value for the controlled `checked` prop. Base UI splits\n * this into a strict `checked` boolean plus a separate `indeterminate` boolean —\n * we keep the Radix union here so existing consumers (which pass\n * `checked=\"indeterminate\"`) keep working without changes.\n *\n * `defaultChecked` is intentionally a plain boolean: an uncontrolled checkbox\n * cannot start \"indeterminate\" and then be toggled out of it (the indeterminate\n * state is inherently controlled), so `'indeterminate'` is not allowed there.\n */\nexport type CheckedState = boolean | 'indeterminate';\n\ntype CheckboxProps = Omit<CheckboxPrimitive.Root.Props, 'className' | 'checked'> & {\n className?: string;\n checked?: CheckedState;\n};\n\nconst Checkbox = React.forwardRef<HTMLSpanElement, CheckboxProps>(\n ({ className, checked, indeterminate, ...props }, ref) => {\n // Translate the Radix `'indeterminate'` sentinel into Base UI's dedicated\n // `indeterminate` prop while leaving `checked` as a boolean.\n const isCheckedIndeterminate = checked === 'indeterminate';\n\n return (\n <CheckboxPrimitive.Root\n ref={ref}\n checked={isCheckedIndeterminate ? false : checked}\n indeterminate={indeterminate ?? isCheckedIndeterminate}\n data-slot=\"checkbox\"\n className={cn(\n 'peer flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-[0.3125rem]',\n 'border border-neutral6/[0.06] bg-neutral6/[0.12] text-surface1 outline-hidden',\n transitions.all,\n 'hover:border-neutral6/[0.12] hover:bg-neutral6/[0.16]',\n 'active:scale-95 active:border-neutral6/[0.18] active:bg-neutral6/[0.18]',\n 'focus-visible:border-neutral5/50 focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-neutral5/55 focus-visible:outline-solid',\n 'data-[checked]:border-neutral6 data-[checked]:bg-neutral6 data-[checked]:text-surface1',\n 'data-[indeterminate]:border-neutral6 data-[indeterminate]:bg-neutral6 data-[indeterminate]:text-surface1',\n 'data-[checked]:hover:border-neutral5 data-[checked]:hover:bg-neutral5',\n 'data-[indeterminate]:hover:border-neutral5 data-[indeterminate]:hover:bg-neutral5',\n 'data-[checked]:active:border-neutral4 data-[checked]:active:bg-neutral4',\n 'data-[indeterminate]:active:border-neutral4 data-[indeterminate]:active:bg-neutral4',\n // Base UI's Checkbox.Root is a `<span>`, so `:disabled` never matches; target `data-disabled`.\n 'data-[disabled]:cursor-not-allowed data-[disabled]:border-neutral6/[0.38] data-[disabled]:bg-neutral6/[0.38] data-[disabled]:hover:border-neutral6/[0.38] data-[disabled]:hover:bg-neutral6/[0.38] data-[disabled]:active:scale-100',\n 'data-[disabled]:data-[checked]:border-neutral6/[0.38] data-[disabled]:data-[checked]:bg-neutral6/[0.38] data-[disabled]:data-[checked]:text-neutral6',\n 'data-[disabled]:data-[indeterminate]:border-neutral6/[0.38] data-[disabled]:data-[indeterminate]:bg-neutral6/[0.38] data-[disabled]:data-[indeterminate]:text-neutral6',\n className,\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n keepMounted\n className={cn(\n 'group/checkbox-indicator flex items-center justify-center text-current',\n 'scale-75 opacity-0 transition-[opacity,transform] duration-200 ease-out-custom',\n 'data-[checked]:scale-100 data-[checked]:opacity-100',\n 'data-[indeterminate]:scale-100 data-[indeterminate]:opacity-100',\n 'data-[starting-style]:scale-75 data-[starting-style]:opacity-0',\n 'data-[ending-style]:scale-75 data-[ending-style]:opacity-0',\n )}\n >\n <CheckboxIndicatorIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n },\n);\nCheckbox.displayName = 'Checkbox';\n\n/**\n * Picks the checkmark vs. the dash based on the Indicator's data attributes.\n * The Indicator stays mounted so unchecked transitions can animate out cleanly.\n */\nfunction CheckboxIndicatorIcon() {\n return (\n <>\n <Check\n className={cn(\n 'stroke-3.25 size-3 scale-95 transition-[stroke-dashoffset,transform] duration-200 ease-out-custom',\n // Lucide's check path is ~22.6 units long. Use a longer dash so the\n // final checked mark is never clipped.\n '[stroke-dasharray:28] [stroke-dashoffset:28]',\n 'group-data-[checked]/checkbox-indicator:[stroke-dashoffset:0]',\n 'group-data-[checked]/checkbox-indicator:scale-100',\n 'group-data-[indeterminate]/checkbox-indicator:hidden',\n )}\n />\n <Minus\n className={cn(\n 'stroke-3.25 hidden size-3 scale-95 transition-transform duration-200 ease-out-custom',\n 'group-data-[indeterminate]/checkbox-indicator:block',\n 'group-data-[indeterminate]/checkbox-indicator:scale-100',\n )}\n />\n </>\n );\n}\n\nexport { Checkbox };\nexport type { CheckboxProps };\n"],"names":["CheckboxPrimitive"],"mappings":";;;;;;;AAwBA,MAAM,WAAW,KAAA,CAAM,UAAA;AAAA,EACrB,CAAC,EAAE,SAAA,EAAW,OAAA,EAAS,eAAe,GAAG,KAAA,IAAS,GAAA,KAAQ;AAGxD,IAAA,MAAM,yBAAyB,OAAA,KAAY,eAAA;AAE3C,IAAA,uBACE,GAAA;AAAA,MAACA,UAAA,CAAkB,IAAA;AAAA,MAAlB;AAAA,QACC,GAAA;AAAA,QACA,OAAA,EAAS,yBAAyB,KAAA,GAAQ,OAAA;AAAA,QAC1C,eAAe,aAAA,IAAiB,sBAAA;AAAA,QAChC,WAAA,EAAU,UAAA;AAAA,QACV,SAAA,EAAW,EAAA;AAAA,UACT,0FAAA;AAAA,UACA,+EAAA;AAAA,UACA,WAAA,CAAY,GAAA;AAAA,UACZ,uDAAA;AAAA,UACA,yEAAA;AAAA,UACA,uJAAA;AAAA,UACA,wFAAA;AAAA,UACA,0GAAA;AAAA,UACA,uEAAA;AAAA,UACA,mFAAA;AAAA,UACA,yEAAA;AAAA,UACA,qFAAA;AAAA;AAAA,UAEA,qOAAA;AAAA,UACA,sJAAA;AAAA,UACA,wKAAA;AAAA,UACA;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEJ,QAAA,kBAAA,GAAA;AAAA,UAACA,UAAA,CAAkB,SAAA;AAAA,UAAlB;AAAA,YACC,WAAA,EAAW,IAAA;AAAA,YACX,SAAA,EAAW,EAAA;AAAA,cACT,wEAAA;AAAA,cACA,gFAAA;AAAA,cACA,qDAAA;AAAA,cACA,iEAAA;AAAA,cACA,gEAAA;AAAA,cACA;AAAA,aACF;AAAA,YAEA,8BAAC,qBAAA,EAAA,EAAsB;AAAA;AAAA;AACzB;AAAA,KACF;AAAA,EAEJ;AACF;AACA,QAAA,CAAS,WAAA,GAAc,UAAA;AAMvB,SAAS,qBAAA,GAAwB;AAC/B,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,mGAAA;AAAA;AAAA;AAAA,UAGA,8CAAA;AAAA,UACA,+DAAA;AAAA,UACA,mDAAA;AAAA,UACA;AAAA;AACF;AAAA,KACF;AAAA,oBACA,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,sFAAA;AAAA,UACA,qDAAA;AAAA,UACA;AAAA;AACF;AAAA;AACF,GAAA,EACF,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"checkbox-84QCxKJf.js","sources":["../src/ds/components/Checkbox/checkbox.tsx"],"sourcesContent":["import { Checkbox as CheckboxPrimitive } from '@base-ui/react/checkbox';\nimport { Check, Minus } from 'lucide-react';\nimport * as React from 'react';\n\nimport { transitions } from '@/ds/primitives/transitions';\nimport { cn } from '@/lib/utils';\n\n/**\n * Radix-style tri-state value for the controlled `checked` prop. Base UI splits\n * this into a strict `checked` boolean plus a separate `indeterminate` boolean —\n * we keep the Radix union here so existing consumers (which pass\n * `checked=\"indeterminate\"`) keep working without changes.\n *\n * `defaultChecked` is intentionally a plain boolean: an uncontrolled checkbox\n * cannot start \"indeterminate\" and then be toggled out of it (the indeterminate\n * state is inherently controlled), so `'indeterminate'` is not allowed there.\n */\nexport type CheckedState = boolean | 'indeterminate';\n\ntype CheckboxProps = Omit<CheckboxPrimitive.Root.Props, 'className' | 'checked'> & {\n className?: string;\n checked?: CheckedState;\n};\n\nconst Checkbox = React.forwardRef<HTMLSpanElement, CheckboxProps>(\n ({ className, checked, indeterminate, ...props }, ref) => {\n // Translate the Radix `'indeterminate'` sentinel into Base UI's dedicated\n // `indeterminate` prop while leaving `checked` as a boolean.\n const isCheckedIndeterminate = checked === 'indeterminate';\n\n return (\n <CheckboxPrimitive.Root\n ref={ref}\n checked={isCheckedIndeterminate ? false : checked}\n indeterminate={indeterminate ?? isCheckedIndeterminate}\n data-slot=\"checkbox\"\n className={cn(\n 'peer flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-[0.3125rem]',\n 'border border-neutral6/[0.06] bg-neutral6/[0.12] text-surface1 outline-hidden',\n transitions.all,\n 'hover:border-neutral6/[0.12] hover:bg-neutral6/[0.16]',\n 'active:scale-95 active:border-neutral6/[0.18] active:bg-neutral6/[0.18]',\n 'focus-visible:border-neutral5/50 focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-neutral5/55 focus-visible:outline-solid',\n 'data-[checked]:border-neutral6 data-[checked]:bg-neutral6 data-[checked]:text-surface1',\n 'data-[indeterminate]:border-neutral6 data-[indeterminate]:bg-neutral6 data-[indeterminate]:text-surface1',\n 'data-[checked]:hover:border-neutral5 data-[checked]:hover:bg-neutral5',\n 'data-[indeterminate]:hover:border-neutral5 data-[indeterminate]:hover:bg-neutral5',\n 'data-[checked]:active:border-neutral4 data-[checked]:active:bg-neutral4',\n 'data-[indeterminate]:active:border-neutral4 data-[indeterminate]:active:bg-neutral4',\n // Base UI's Checkbox.Root is a `<span>`, so `:disabled` never matches; target `data-disabled`.\n 'data-[disabled]:cursor-not-allowed data-[disabled]:border-neutral6/[0.38] data-[disabled]:bg-neutral6/[0.38] data-[disabled]:hover:border-neutral6/[0.38] data-[disabled]:hover:bg-neutral6/[0.38] data-[disabled]:active:scale-100',\n 'data-[disabled]:data-[checked]:border-neutral6/[0.38] data-[disabled]:data-[checked]:bg-neutral6/[0.38] data-[disabled]:data-[checked]:text-neutral6',\n 'data-[disabled]:data-[indeterminate]:border-neutral6/[0.38] data-[disabled]:data-[indeterminate]:bg-neutral6/[0.38] data-[disabled]:data-[indeterminate]:text-neutral6',\n className,\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n keepMounted\n className={cn(\n 'group/checkbox-indicator flex items-center justify-center text-current',\n 'scale-75 opacity-0 transition-[opacity,transform] duration-200 ease-out-custom',\n 'data-[checked]:scale-100 data-[checked]:opacity-100',\n 'data-[indeterminate]:scale-100 data-[indeterminate]:opacity-100',\n 'data-[starting-style]:scale-75 data-[starting-style]:opacity-0',\n 'data-[ending-style]:scale-75 data-[ending-style]:opacity-0',\n )}\n >\n <CheckboxIndicatorIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n },\n);\nCheckbox.displayName = 'Checkbox';\n\n/**\n * Picks the checkmark vs. the dash based on the Indicator's data attributes.\n * The Indicator stays mounted so unchecked transitions can animate out cleanly.\n */\nfunction CheckboxIndicatorIcon() {\n return (\n <>\n <Check\n className={cn(\n 'stroke-3.25 size-3 scale-95 transition-[stroke-dashoffset,transform] duration-200 ease-out-custom',\n // Lucide's check path is ~22.6 units long. Use a longer dash so the\n // final checked mark is never clipped.\n '[stroke-dasharray:28] [stroke-dashoffset:28]',\n 'group-data-[checked]/checkbox-indicator:[stroke-dashoffset:0]',\n 'group-data-[checked]/checkbox-indicator:scale-100',\n 'group-data-[indeterminate]/checkbox-indicator:hidden',\n )}\n />\n <Minus\n className={cn(\n 'stroke-3.25 hidden size-3 scale-95 transition-transform duration-200 ease-out-custom',\n 'group-data-[indeterminate]/checkbox-indicator:block',\n 'group-data-[indeterminate]/checkbox-indicator:scale-100',\n )}\n />\n </>\n );\n}\n\nexport { Checkbox };\nexport type { CheckboxProps };\n"],"names":["CheckboxPrimitive"],"mappings":";;;;;;;AAwBA,MAAM,WAAW,KAAA,CAAM,UAAA;AAAA,EACrB,CAAC,EAAE,SAAA,EAAW,OAAA,EAAS,eAAe,GAAG,KAAA,IAAS,GAAA,KAAQ;AAGxD,IAAA,MAAM,yBAAyB,OAAA,KAAY,eAAA;AAE3C,IAAA,uBACE,GAAA;AAAA,MAACA,UAAA,CAAkB,IAAA;AAAA,MAAlB;AAAA,QACC,GAAA;AAAA,QACA,OAAA,EAAS,yBAAyB,KAAA,GAAQ,OAAA;AAAA,QAC1C,eAAe,aAAA,IAAiB,sBAAA;AAAA,QAChC,WAAA,EAAU,UAAA;AAAA,QACV,SAAA,EAAW,EAAA;AAAA,UACT,0FAAA;AAAA,UACA,+EAAA;AAAA,UACA,WAAA,CAAY,GAAA;AAAA,UACZ,uDAAA;AAAA,UACA,yEAAA;AAAA,UACA,uJAAA;AAAA,UACA,wFAAA;AAAA,UACA,0GAAA;AAAA,UACA,uEAAA;AAAA,UACA,mFAAA;AAAA,UACA,yEAAA;AAAA,UACA,qFAAA;AAAA;AAAA,UAEA,qOAAA;AAAA,UACA,sJAAA;AAAA,UACA,wKAAA;AAAA,UACA;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEJ,QAAA,kBAAA,GAAA;AAAA,UAACA,UAAA,CAAkB,SAAA;AAAA,UAAlB;AAAA,YACC,WAAA,EAAW,IAAA;AAAA,YACX,SAAA,EAAW,EAAA;AAAA,cACT,wEAAA;AAAA,cACA,gFAAA;AAAA,cACA,qDAAA;AAAA,cACA,iEAAA;AAAA,cACA,gEAAA;AAAA,cACA;AAAA,aACF;AAAA,YAEA,8BAAC,qBAAA,EAAA,EAAsB;AAAA;AAAA;AACzB;AAAA,KACF;AAAA,EAEJ;AACF;AACA,QAAA,CAAS,WAAA,GAAc,UAAA;AAMvB,SAAS,qBAAA,GAAwB;AAC/B,EAAA,uBACE,IAAA,CAAA,QAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,mGAAA;AAAA;AAAA;AAAA,UAGA,8CAAA;AAAA,UACA,+DAAA;AAAA,UACA,mDAAA;AAAA,UACA;AAAA;AACF;AAAA,KACF;AAAA,oBACA,GAAA;AAAA,MAAC,KAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAW,EAAA;AAAA,UACT,sFAAA;AAAA,UACA,qDAAA;AAAA,UACA;AAAA;AACF;AAAA;AACF,GAAA,EACF,CAAA;AAEJ;;;;"}
@@ -5,7 +5,7 @@ const checkbox = require('@base-ui/react/checkbox');
5
5
  const lucideReact = require('lucide-react');
6
6
  const React = require('react');
7
7
  const primitives_transitions = require('./primitives/transitions.cjs.js');
8
- const utils_cn = require('./cn-vA5sWo9W.cjs');
8
+ const utils_cn = require('./cn-DCPcv4xv.cjs');
9
9
 
10
10
  function _interopNamespaceDefault(e) {
11
11
  const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } });
@@ -106,4 +106,4 @@ function CheckboxIndicatorIcon() {
106
106
  }
107
107
 
108
108
  exports.Checkbox = Checkbox;
109
- //# sourceMappingURL=checkbox-CY9g_3ZS.cjs.map
109
+ //# sourceMappingURL=checkbox-z-Yfud4v.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkbox-CY9g_3ZS.cjs","sources":["../src/ds/components/Checkbox/checkbox.tsx"],"sourcesContent":["import { Checkbox as CheckboxPrimitive } from '@base-ui/react/checkbox';\nimport { Check, Minus } from 'lucide-react';\nimport * as React from 'react';\n\nimport { transitions } from '@/ds/primitives/transitions';\nimport { cn } from '@/lib/utils';\n\n/**\n * Radix-style tri-state value for the controlled `checked` prop. Base UI splits\n * this into a strict `checked` boolean plus a separate `indeterminate` boolean —\n * we keep the Radix union here so existing consumers (which pass\n * `checked=\"indeterminate\"`) keep working without changes.\n *\n * `defaultChecked` is intentionally a plain boolean: an uncontrolled checkbox\n * cannot start \"indeterminate\" and then be toggled out of it (the indeterminate\n * state is inherently controlled), so `'indeterminate'` is not allowed there.\n */\nexport type CheckedState = boolean | 'indeterminate';\n\ntype CheckboxProps = Omit<CheckboxPrimitive.Root.Props, 'className' | 'checked'> & {\n className?: string;\n checked?: CheckedState;\n};\n\nconst Checkbox = React.forwardRef<HTMLSpanElement, CheckboxProps>(\n ({ className, checked, indeterminate, ...props }, ref) => {\n // Translate the Radix `'indeterminate'` sentinel into Base UI's dedicated\n // `indeterminate` prop while leaving `checked` as a boolean.\n const isCheckedIndeterminate = checked === 'indeterminate';\n\n return (\n <CheckboxPrimitive.Root\n ref={ref}\n checked={isCheckedIndeterminate ? false : checked}\n indeterminate={indeterminate ?? isCheckedIndeterminate}\n data-slot=\"checkbox\"\n className={cn(\n 'peer flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-[0.3125rem]',\n 'border border-neutral6/[0.06] bg-neutral6/[0.12] text-surface1 outline-hidden',\n transitions.all,\n 'hover:border-neutral6/[0.12] hover:bg-neutral6/[0.16]',\n 'active:scale-95 active:border-neutral6/[0.18] active:bg-neutral6/[0.18]',\n 'focus-visible:border-neutral5/50 focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-neutral5/55 focus-visible:outline-solid',\n 'data-[checked]:border-neutral6 data-[checked]:bg-neutral6 data-[checked]:text-surface1',\n 'data-[indeterminate]:border-neutral6 data-[indeterminate]:bg-neutral6 data-[indeterminate]:text-surface1',\n 'data-[checked]:hover:border-neutral5 data-[checked]:hover:bg-neutral5',\n 'data-[indeterminate]:hover:border-neutral5 data-[indeterminate]:hover:bg-neutral5',\n 'data-[checked]:active:border-neutral4 data-[checked]:active:bg-neutral4',\n 'data-[indeterminate]:active:border-neutral4 data-[indeterminate]:active:bg-neutral4',\n // Base UI's Checkbox.Root is a `<span>`, so `:disabled` never matches; target `data-disabled`.\n 'data-[disabled]:cursor-not-allowed data-[disabled]:border-neutral6/[0.38] data-[disabled]:bg-neutral6/[0.38] data-[disabled]:hover:border-neutral6/[0.38] data-[disabled]:hover:bg-neutral6/[0.38] data-[disabled]:active:scale-100',\n 'data-[disabled]:data-[checked]:border-neutral6/[0.38] data-[disabled]:data-[checked]:bg-neutral6/[0.38] data-[disabled]:data-[checked]:text-neutral6',\n 'data-[disabled]:data-[indeterminate]:border-neutral6/[0.38] data-[disabled]:data-[indeterminate]:bg-neutral6/[0.38] data-[disabled]:data-[indeterminate]:text-neutral6',\n className,\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n keepMounted\n className={cn(\n 'group/checkbox-indicator flex items-center justify-center text-current',\n 'scale-75 opacity-0 transition-[opacity,transform] duration-200 ease-out-custom',\n 'data-[checked]:scale-100 data-[checked]:opacity-100',\n 'data-[indeterminate]:scale-100 data-[indeterminate]:opacity-100',\n 'data-[starting-style]:scale-75 data-[starting-style]:opacity-0',\n 'data-[ending-style]:scale-75 data-[ending-style]:opacity-0',\n )}\n >\n <CheckboxIndicatorIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n },\n);\nCheckbox.displayName = 'Checkbox';\n\n/**\n * Picks the checkmark vs. the dash based on the Indicator's data attributes.\n * The Indicator stays mounted so unchecked transitions can animate out cleanly.\n */\nfunction CheckboxIndicatorIcon() {\n return (\n <>\n <Check\n className={cn(\n 'stroke-3.25 size-3 scale-95 transition-[stroke-dashoffset,transform] duration-200 ease-out-custom',\n // Lucide's check path is ~22.6 units long. Use a longer dash so the\n // final checked mark is never clipped.\n '[stroke-dasharray:28] [stroke-dashoffset:28]',\n 'group-data-[checked]/checkbox-indicator:[stroke-dashoffset:0]',\n 'group-data-[checked]/checkbox-indicator:scale-100',\n 'group-data-[indeterminate]/checkbox-indicator:hidden',\n )}\n />\n <Minus\n className={cn(\n 'stroke-3.25 hidden size-3 scale-95 transition-transform duration-200 ease-out-custom',\n 'group-data-[indeterminate]/checkbox-indicator:block',\n 'group-data-[indeterminate]/checkbox-indicator:scale-100',\n )}\n />\n </>\n );\n}\n\nexport { Checkbox };\nexport type { CheckboxProps };\n"],"names":["React","jsx","CheckboxPrimitive","cn","transitions","jsxs","Fragment","Check","Minus"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAM,WAAWA,gBAAA,CAAM,UAAA;AAAA,EACrB,CAAC,EAAE,SAAA,EAAW,OAAA,EAAS,eAAe,GAAG,KAAA,IAAS,GAAA,KAAQ;AAGxD,IAAA,MAAM,yBAAyB,OAAA,KAAY,eAAA;AAE3C,IAAA,uBACEC,cAAA;AAAA,MAACC,iBAAA,CAAkB,IAAA;AAAA,MAAlB;AAAA,QACC,GAAA;AAAA,QACA,OAAA,EAAS,yBAAyB,KAAA,GAAQ,OAAA;AAAA,QAC1C,eAAe,aAAA,IAAiB,sBAAA;AAAA,QAChC,WAAA,EAAU,UAAA;AAAA,QACV,SAAA,EAAWC,WAAA;AAAA,UACT,0FAAA;AAAA,UACA,+EAAA;AAAA,UACAC,kCAAA,CAAY,GAAA;AAAA,UACZ,uDAAA;AAAA,UACA,yEAAA;AAAA,UACA,uJAAA;AAAA,UACA,wFAAA;AAAA,UACA,0GAAA;AAAA,UACA,uEAAA;AAAA,UACA,mFAAA;AAAA,UACA,yEAAA;AAAA,UACA,qFAAA;AAAA;AAAA,UAEA,qOAAA;AAAA,UACA,sJAAA;AAAA,UACA,wKAAA;AAAA,UACA;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEJ,QAAA,kBAAAH,cAAA;AAAA,UAACC,iBAAA,CAAkB,SAAA;AAAA,UAAlB;AAAA,YACC,WAAA,EAAW,IAAA;AAAA,YACX,SAAA,EAAWC,WAAA;AAAA,cACT,wEAAA;AAAA,cACA,gFAAA;AAAA,cACA,qDAAA;AAAA,cACA,iEAAA;AAAA,cACA,gEAAA;AAAA,cACA;AAAA,aACF;AAAA,YAEA,yCAAC,qBAAA,EAAA,EAAsB;AAAA;AAAA;AACzB;AAAA,KACF;AAAA,EAEJ;AACF;AACA,QAAA,CAAS,WAAA,GAAc,UAAA;AAMvB,SAAS,qBAAA,GAAwB;AAC/B,EAAA,uBACEE,eAAA,CAAAC,mBAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAAL,cAAA;AAAA,MAACM,iBAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAWJ,WAAA;AAAA,UACT,mGAAA;AAAA;AAAA;AAAA,UAGA,8CAAA;AAAA,UACA,+DAAA;AAAA,UACA,mDAAA;AAAA,UACA;AAAA;AACF;AAAA,KACF;AAAA,oBACAF,cAAA;AAAA,MAACO,iBAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAWL,WAAA;AAAA,UACT,sFAAA;AAAA,UACA,qDAAA;AAAA,UACA;AAAA;AACF;AAAA;AACF,GAAA,EACF,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"checkbox-z-Yfud4v.cjs","sources":["../src/ds/components/Checkbox/checkbox.tsx"],"sourcesContent":["import { Checkbox as CheckboxPrimitive } from '@base-ui/react/checkbox';\nimport { Check, Minus } from 'lucide-react';\nimport * as React from 'react';\n\nimport { transitions } from '@/ds/primitives/transitions';\nimport { cn } from '@/lib/utils';\n\n/**\n * Radix-style tri-state value for the controlled `checked` prop. Base UI splits\n * this into a strict `checked` boolean plus a separate `indeterminate` boolean —\n * we keep the Radix union here so existing consumers (which pass\n * `checked=\"indeterminate\"`) keep working without changes.\n *\n * `defaultChecked` is intentionally a plain boolean: an uncontrolled checkbox\n * cannot start \"indeterminate\" and then be toggled out of it (the indeterminate\n * state is inherently controlled), so `'indeterminate'` is not allowed there.\n */\nexport type CheckedState = boolean | 'indeterminate';\n\ntype CheckboxProps = Omit<CheckboxPrimitive.Root.Props, 'className' | 'checked'> & {\n className?: string;\n checked?: CheckedState;\n};\n\nconst Checkbox = React.forwardRef<HTMLSpanElement, CheckboxProps>(\n ({ className, checked, indeterminate, ...props }, ref) => {\n // Translate the Radix `'indeterminate'` sentinel into Base UI's dedicated\n // `indeterminate` prop while leaving `checked` as a boolean.\n const isCheckedIndeterminate = checked === 'indeterminate';\n\n return (\n <CheckboxPrimitive.Root\n ref={ref}\n checked={isCheckedIndeterminate ? false : checked}\n indeterminate={indeterminate ?? isCheckedIndeterminate}\n data-slot=\"checkbox\"\n className={cn(\n 'peer flex size-4 shrink-0 cursor-pointer items-center justify-center rounded-[0.3125rem]',\n 'border border-neutral6/[0.06] bg-neutral6/[0.12] text-surface1 outline-hidden',\n transitions.all,\n 'hover:border-neutral6/[0.12] hover:bg-neutral6/[0.16]',\n 'active:scale-95 active:border-neutral6/[0.18] active:bg-neutral6/[0.18]',\n 'focus-visible:border-neutral5/50 focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-neutral5/55 focus-visible:outline-solid',\n 'data-[checked]:border-neutral6 data-[checked]:bg-neutral6 data-[checked]:text-surface1',\n 'data-[indeterminate]:border-neutral6 data-[indeterminate]:bg-neutral6 data-[indeterminate]:text-surface1',\n 'data-[checked]:hover:border-neutral5 data-[checked]:hover:bg-neutral5',\n 'data-[indeterminate]:hover:border-neutral5 data-[indeterminate]:hover:bg-neutral5',\n 'data-[checked]:active:border-neutral4 data-[checked]:active:bg-neutral4',\n 'data-[indeterminate]:active:border-neutral4 data-[indeterminate]:active:bg-neutral4',\n // Base UI's Checkbox.Root is a `<span>`, so `:disabled` never matches; target `data-disabled`.\n 'data-[disabled]:cursor-not-allowed data-[disabled]:border-neutral6/[0.38] data-[disabled]:bg-neutral6/[0.38] data-[disabled]:hover:border-neutral6/[0.38] data-[disabled]:hover:bg-neutral6/[0.38] data-[disabled]:active:scale-100',\n 'data-[disabled]:data-[checked]:border-neutral6/[0.38] data-[disabled]:data-[checked]:bg-neutral6/[0.38] data-[disabled]:data-[checked]:text-neutral6',\n 'data-[disabled]:data-[indeterminate]:border-neutral6/[0.38] data-[disabled]:data-[indeterminate]:bg-neutral6/[0.38] data-[disabled]:data-[indeterminate]:text-neutral6',\n className,\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n keepMounted\n className={cn(\n 'group/checkbox-indicator flex items-center justify-center text-current',\n 'scale-75 opacity-0 transition-[opacity,transform] duration-200 ease-out-custom',\n 'data-[checked]:scale-100 data-[checked]:opacity-100',\n 'data-[indeterminate]:scale-100 data-[indeterminate]:opacity-100',\n 'data-[starting-style]:scale-75 data-[starting-style]:opacity-0',\n 'data-[ending-style]:scale-75 data-[ending-style]:opacity-0',\n )}\n >\n <CheckboxIndicatorIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n );\n },\n);\nCheckbox.displayName = 'Checkbox';\n\n/**\n * Picks the checkmark vs. the dash based on the Indicator's data attributes.\n * The Indicator stays mounted so unchecked transitions can animate out cleanly.\n */\nfunction CheckboxIndicatorIcon() {\n return (\n <>\n <Check\n className={cn(\n 'stroke-3.25 size-3 scale-95 transition-[stroke-dashoffset,transform] duration-200 ease-out-custom',\n // Lucide's check path is ~22.6 units long. Use a longer dash so the\n // final checked mark is never clipped.\n '[stroke-dasharray:28] [stroke-dashoffset:28]',\n 'group-data-[checked]/checkbox-indicator:[stroke-dashoffset:0]',\n 'group-data-[checked]/checkbox-indicator:scale-100',\n 'group-data-[indeterminate]/checkbox-indicator:hidden',\n )}\n />\n <Minus\n className={cn(\n 'stroke-3.25 hidden size-3 scale-95 transition-transform duration-200 ease-out-custom',\n 'group-data-[indeterminate]/checkbox-indicator:block',\n 'group-data-[indeterminate]/checkbox-indicator:scale-100',\n )}\n />\n </>\n );\n}\n\nexport { Checkbox };\nexport type { CheckboxProps };\n"],"names":["React","jsx","CheckboxPrimitive","cn","transitions","jsxs","Fragment","Check","Minus"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,MAAM,WAAWA,gBAAA,CAAM,UAAA;AAAA,EACrB,CAAC,EAAE,SAAA,EAAW,OAAA,EAAS,eAAe,GAAG,KAAA,IAAS,GAAA,KAAQ;AAGxD,IAAA,MAAM,yBAAyB,OAAA,KAAY,eAAA;AAE3C,IAAA,uBACEC,cAAA;AAAA,MAACC,iBAAA,CAAkB,IAAA;AAAA,MAAlB;AAAA,QACC,GAAA;AAAA,QACA,OAAA,EAAS,yBAAyB,KAAA,GAAQ,OAAA;AAAA,QAC1C,eAAe,aAAA,IAAiB,sBAAA;AAAA,QAChC,WAAA,EAAU,UAAA;AAAA,QACV,SAAA,EAAWC,WAAA;AAAA,UACT,0FAAA;AAAA,UACA,+EAAA;AAAA,UACAC,kCAAA,CAAY,GAAA;AAAA,UACZ,uDAAA;AAAA,UACA,yEAAA;AAAA,UACA,uJAAA;AAAA,UACA,wFAAA;AAAA,UACA,0GAAA;AAAA,UACA,uEAAA;AAAA,UACA,mFAAA;AAAA,UACA,yEAAA;AAAA,UACA,qFAAA;AAAA;AAAA,UAEA,qOAAA;AAAA,UACA,sJAAA;AAAA,UACA,wKAAA;AAAA,UACA;AAAA,SACF;AAAA,QACC,GAAG,KAAA;AAAA,QAEJ,QAAA,kBAAAH,cAAA;AAAA,UAACC,iBAAA,CAAkB,SAAA;AAAA,UAAlB;AAAA,YACC,WAAA,EAAW,IAAA;AAAA,YACX,SAAA,EAAWC,WAAA;AAAA,cACT,wEAAA;AAAA,cACA,gFAAA;AAAA,cACA,qDAAA;AAAA,cACA,iEAAA;AAAA,cACA,gEAAA;AAAA,cACA;AAAA,aACF;AAAA,YAEA,yCAAC,qBAAA,EAAA,EAAsB;AAAA;AAAA;AACzB;AAAA,KACF;AAAA,EAEJ;AACF;AACA,QAAA,CAAS,WAAA,GAAc,UAAA;AAMvB,SAAS,qBAAA,GAAwB;AAC/B,EAAA,uBACEE,eAAA,CAAAC,mBAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAAL,cAAA;AAAA,MAACM,iBAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAWJ,WAAA;AAAA,UACT,mGAAA;AAAA;AAAA;AAAA,UAGA,8CAAA;AAAA,UACA,+DAAA;AAAA,UACA,mDAAA;AAAA,UACA;AAAA;AACF;AAAA,KACF;AAAA,oBACAF,cAAA;AAAA,MAACO,iBAAA;AAAA,MAAA;AAAA,QACC,SAAA,EAAWL,WAAA;AAAA,UACT,sFAAA;AAAA,UACA,qDAAA;AAAA,UACA;AAAA;AACF;AAAA;AACF,GAAA,EACF,CAAA;AAEJ;;;;"}
@@ -1,4 +1,4 @@
1
- import { B as BorderColors, C as Colors, S as Shadows, G as Glows, b as Sizes, F as FontSizes, L as LineHeights, a as BorderRadius, c as Spacings } from './spacings-C87dXiT-.js';
1
+ import { B as BorderColors, C as Colors, S as Shadows, G as Glows, b as Sizes, F as FontSizes, L as LineHeights, a as BorderRadius, c as Spacings } from './spacings-BwKLvCC2.js';
2
2
 
3
3
  function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f);}else for(f in e)e[f]&&(n&&(n+=" "),n+=f);return n}function clsx(){for(var e,t,f=0,n="",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}
4
4
 
@@ -3287,4 +3287,4 @@ function cn(...inputs) {
3287
3287
  }
3288
3288
 
3289
3289
  export { clsx as a, cn as c };
3290
- //# sourceMappingURL=cn-BakJzhuv.js.map
3290
+ //# sourceMappingURL=cn-B4oPhFx9.js.map