@mastra/playground-ui 55.0.0-alpha.5 → 55.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (493) hide show
  1. package/dist/{Button-BsHGVRjh.cjs → Button-BJOVwaxp.cjs} +13 -12
  2. package/dist/Button-BJOVwaxp.cjs.map +1 -0
  3. package/dist/{Button-DsTY88Xz.js → Button-BVGwYwHT.js} +14 -13
  4. package/dist/Button-BVGwYwHT.js.map +1 -0
  5. package/dist/{Notice-B5khVt-8.js → Notice-CMZ86f1g.js} +2 -2
  6. package/dist/{Notice-B5khVt-8.js.map → Notice-CMZ86f1g.js.map} +1 -1
  7. package/dist/{Notice-BUSAcuH-.cjs → Notice-D0Mvqvr0.cjs} +2 -2
  8. package/dist/{Notice-BUSAcuH-.cjs.map → Notice-D0Mvqvr0.cjs.map} +1 -1
  9. package/dist/{SessionExpired-C4w2ai5-.cjs → SessionExpired-CAOgb-6E.cjs} +2 -2
  10. package/dist/{SessionExpired-C4w2ai5-.cjs.map → SessionExpired-CAOgb-6E.cjs.map} +1 -1
  11. package/dist/{SessionExpired-oy5tS_51.js → SessionExpired-DSPFseGA.js} +2 -2
  12. package/dist/{SessionExpired-oy5tS_51.js.map → SessionExpired-DSPFseGA.js.map} +1 -1
  13. package/dist/{ask-user-DWUWXbS7.cjs → ask-user-DQGe7ZTv.cjs} +3 -3
  14. package/dist/{ask-user-DWUWXbS7.cjs.map → ask-user-DQGe7ZTv.cjs.map} +1 -1
  15. package/dist/{ask-user-D7MeXylO.js → ask-user-Dh9YowL4.js} +3 -3
  16. package/dist/{ask-user-D7MeXylO.js.map → ask-user-Dh9YowL4.js.map} +1 -1
  17. package/dist/{buttons-group-B5TBWfs6.js → buttons-group-CHyXDQBp.js} +5 -5
  18. package/dist/buttons-group-CHyXDQBp.js.map +1 -0
  19. package/dist/{buttons-group-PqYxKznc.cjs → buttons-group-jq7kUVlX.cjs} +5 -5
  20. package/dist/buttons-group-jq7kUVlX.cjs.map +1 -0
  21. package/dist/{checkbox-pvYvwDUy.js → checkbox-CC39oYEv.js} +5 -5
  22. package/dist/checkbox-CC39oYEv.js.map +1 -0
  23. package/dist/{checkbox-BNOCksit.cjs → checkbox-DWXCTy8y.cjs} +6 -6
  24. package/dist/checkbox-DWXCTy8y.cjs.map +1 -0
  25. package/dist/{code-block-CyHjdW02.js → code-block-BdzrmA-p.js} +5 -5
  26. package/dist/{code-block-CyHjdW02.js.map → code-block-BdzrmA-p.js.map} +1 -1
  27. package/dist/{code-block-I7b2Wt_Y.cjs → code-block-D1RequlX.cjs} +5 -5
  28. package/dist/{code-block-I7b2Wt_Y.cjs.map → code-block-D1RequlX.cjs.map} +1 -1
  29. package/dist/{code-editor-BeosH5J-.cjs → code-editor-CopnXVKT.cjs} +2 -2
  30. package/dist/{code-editor-BeosH5J-.cjs.map → code-editor-CopnXVKT.cjs.map} +1 -1
  31. package/dist/{code-editor-DPYAjQUV.js → code-editor-D7BftGSx.js} +2 -2
  32. package/dist/{code-editor-DPYAjQUV.js.map → code-editor-D7BftGSx.js.map} +1 -1
  33. package/dist/{combobox-Cg-7UwwL.cjs → combobox-DO__6QlF.cjs} +4 -5
  34. package/dist/combobox-DO__6QlF.cjs.map +1 -0
  35. package/dist/{combobox-8GoJaMs1.js → combobox-Ua6bvpM8.js} +3 -4
  36. package/dist/combobox-Ua6bvpM8.js.map +1 -0
  37. package/dist/{command-OXbUDxUu.js → command-CNKdcyyr.js} +4 -11
  38. package/dist/command-CNKdcyyr.js.map +1 -0
  39. package/dist/{command-C6cIgH_n.cjs → command-Cva4qgS9.cjs} +5 -12
  40. package/dist/command-Cva4qgS9.cjs.map +1 -0
  41. package/dist/components/AlertDialog.cjs.js +1 -1
  42. package/dist/components/AlertDialog.es.js +1 -1
  43. package/dist/components/Button.cjs.js +1 -1
  44. package/dist/components/Button.es.js +2 -2
  45. package/dist/components/ButtonsGroup.cjs.js +1 -1
  46. package/dist/components/ButtonsGroup.es.js +1 -1
  47. package/dist/components/Checkbox.cjs.js +1 -1
  48. package/dist/components/Checkbox.es.js +1 -1
  49. package/dist/components/ClampedText.cjs.js +1 -1
  50. package/dist/components/ClampedText.es.js +1 -1
  51. package/dist/components/CodeBlock.cjs.js +1 -1
  52. package/dist/components/CodeBlock.es.js +1 -1
  53. package/dist/components/CodeEditor.cjs.js +1 -1
  54. package/dist/components/CodeEditor.es.js +1 -1
  55. package/dist/components/Columns.cjs.js +1 -1
  56. package/dist/components/Columns.es.js +1 -1
  57. package/dist/components/Combobox.cjs.js +1 -1
  58. package/dist/components/Combobox.es.js +1 -1
  59. package/dist/components/Command.cjs.js +1 -1
  60. package/dist/components/Command.es.js +1 -1
  61. package/dist/components/CommandPalette.cjs.js +1 -1
  62. package/dist/components/CommandPalette.es.js +1 -1
  63. package/dist/components/Comment.cjs.js +2 -2
  64. package/dist/components/Comment.es.js +2 -2
  65. package/dist/components/CopyButton.cjs.js +1 -1
  66. package/dist/components/CopyButton.es.js +1 -1
  67. package/dist/components/DataCodeSection.cjs.js +1 -1
  68. package/dist/components/DataCodeSection.es.js +1 -1
  69. package/dist/components/DataDetailsPanel.cjs.js +3 -3
  70. package/dist/components/DataDetailsPanel.es.js +3 -3
  71. package/dist/components/DataFilter.cjs.js +2 -2
  72. package/dist/components/DataFilter.es.js +2 -2
  73. package/dist/components/DataList.cjs.js +4 -4
  74. package/dist/components/DataList.es.js +4 -4
  75. package/dist/components/DataPanel.cjs.js +1 -1
  76. package/dist/components/DataPanel.es.js +1 -1
  77. package/dist/components/DateRangeTimeline.cjs.js +1 -1
  78. package/dist/components/DateRangeTimeline.es.js +1 -1
  79. package/dist/components/DateTimePicker.cjs.js +3 -3
  80. package/dist/components/DateTimePicker.es.js +3 -3
  81. package/dist/components/DateTimeRangePicker.cjs.js +1 -1
  82. package/dist/components/DateTimeRangePicker.es.js +1 -1
  83. package/dist/components/Dialog.cjs.js +2 -2
  84. package/dist/components/Dialog.es.js +3 -3
  85. package/dist/components/Drawer.cjs.js +1 -1
  86. package/dist/components/Drawer.es.js +1 -1
  87. package/dist/components/DropdownMenu.cjs.js +1 -1
  88. package/dist/components/DropdownMenu.es.js +1 -1
  89. package/dist/components/EnvironmentVariablesEditor.cjs.js +4 -4
  90. package/dist/components/EnvironmentVariablesEditor.es.js +4 -4
  91. package/dist/components/ErrorBoundary.cjs.js +1 -1
  92. package/dist/components/ErrorBoundary.es.js +1 -1
  93. package/dist/components/FormFieldBlocks.cjs.js +3 -3
  94. package/dist/components/FormFieldBlocks.es.js +3 -3
  95. package/dist/components/Input.cjs.js +1 -1
  96. package/dist/components/Input.es.js +1 -1
  97. package/dist/components/InputGroup.cjs.js +1 -1
  98. package/dist/components/InputGroup.es.js +1 -1
  99. package/dist/components/IntegrationDialog.cjs.js +2 -2
  100. package/dist/components/IntegrationDialog.es.js +4 -4
  101. package/dist/components/IntegrationDialog.es.js.map +1 -1
  102. package/dist/components/JSONSchemaForm.cjs.js +4 -4
  103. package/dist/components/JSONSchemaForm.es.js +4 -4
  104. package/dist/components/ListSearch.cjs.js +1 -1
  105. package/dist/components/ListSearch.es.js +1 -1
  106. package/dist/components/LogsDataList.cjs.js +2 -4
  107. package/dist/components/LogsDataList.cjs.js.map +1 -1
  108. package/dist/components/LogsDataList.es.js +2 -4
  109. package/dist/components/LogsDataList.es.js.map +1 -1
  110. package/dist/components/MainSidebar.cjs.js +1 -1
  111. package/dist/components/MainSidebar.es.js +1 -1
  112. package/dist/components/MarkdownRenderer.cjs.js +1 -1
  113. package/dist/components/MarkdownRenderer.es.js +1 -1
  114. package/dist/components/Notice.cjs.js +1 -1
  115. package/dist/components/Notice.es.js +1 -1
  116. package/dist/components/PageHeader.cjs.js +1 -1
  117. package/dist/components/PageHeader.es.js +1 -1
  118. package/dist/components/PrevNextNav.cjs.js +2 -2
  119. package/dist/components/PrevNextNav.es.js +2 -2
  120. package/dist/components/PropertyFilter.cjs.js +3 -3
  121. package/dist/components/PropertyFilter.es.js +4 -4
  122. package/dist/components/RadioGroup.cjs.js +4 -4
  123. package/dist/components/RadioGroup.cjs.js.map +1 -1
  124. package/dist/components/RadioGroup.es.js +3 -3
  125. package/dist/components/RadioGroup.es.js.map +1 -1
  126. package/dist/components/RuleBuilder.cjs.js +3 -3
  127. package/dist/components/RuleBuilder.es.js +3 -3
  128. package/dist/components/Select.cjs.js +1 -1
  129. package/dist/components/Select.es.js +1 -1
  130. package/dist/components/SessionExpired.cjs.js +1 -1
  131. package/dist/components/SessionExpired.es.js +1 -1
  132. package/dist/components/SideDialog.cjs.js +4 -4
  133. package/dist/components/SideDialog.es.js +4 -4
  134. package/dist/components/Slider.cjs.js +1 -1
  135. package/dist/components/Slider.es.js +1 -1
  136. package/dist/components/Switch.cjs.js +1 -1
  137. package/dist/components/Switch.es.js +1 -1
  138. package/dist/components/Table.cjs.js +4 -3
  139. package/dist/components/Table.cjs.js.map +1 -1
  140. package/dist/components/Table.es.js +3 -2
  141. package/dist/components/Table.es.js.map +1 -1
  142. package/dist/components/Tabs.cjs.js +3 -3
  143. package/dist/components/Tabs.es.js +3 -3
  144. package/dist/components/Textarea.cjs.js +1 -1
  145. package/dist/components/Textarea.es.js +1 -1
  146. package/dist/components/ThreadList.cjs.js +1 -1
  147. package/dist/components/ThreadList.es.js +1 -1
  148. package/dist/components/Truncate.cjs.js +1 -1
  149. package/dist/components/Truncate.es.js +1 -1
  150. package/dist/components/Workflow.cjs.js +6 -6
  151. package/dist/components/Workflow.es.js +6 -6
  152. package/dist/components/ai/ask-user.cjs.js +1 -1
  153. package/dist/components/ai/ask-user.es.js +1 -1
  154. package/dist/components/ai/plan.cjs.js +2 -2
  155. package/dist/components/ai/plan.es.js +2 -2
  156. package/dist/components/ai/tool-call.cjs.js +16 -6
  157. package/dist/components/ai/tool-call.cjs.js.map +1 -1
  158. package/dist/components/ai/tool-call.es.js +17 -7
  159. package/dist/components/ai/tool-call.es.js.map +1 -1
  160. package/dist/{copy-button-BW1CfolI.js → copy-button-ChUCFd-x.js} +2 -2
  161. package/dist/{copy-button-BW1CfolI.js.map → copy-button-ChUCFd-x.js.map} +1 -1
  162. package/dist/{copy-button-CC4JTC90.cjs → copy-button-zLZfswrj.cjs} +2 -2
  163. package/dist/{copy-button-CC4JTC90.cjs.map → copy-button-zLZfswrj.cjs.map} +1 -1
  164. package/dist/{data-code-section-BWaPQ6JT.cjs → data-code-section-BLvh46xK.cjs} +6 -6
  165. package/dist/{data-code-section-BWaPQ6JT.cjs.map → data-code-section-BLvh46xK.cjs.map} +1 -1
  166. package/dist/{data-code-section-EmqjYVh1.js → data-code-section-DSelBhmP.js} +6 -6
  167. package/dist/{data-code-section-EmqjYVh1.js.map → data-code-section-DSelBhmP.js.map} +1 -1
  168. package/dist/{data-list-BSezaRoI.cjs → data-list-4_cVlINT.cjs} +3 -3
  169. package/dist/{data-list-BSezaRoI.cjs.map → data-list-4_cVlINT.cjs.map} +1 -1
  170. package/dist/{data-list-DJ7DgVuH.js → data-list-Bm70XKg_.js} +3 -3
  171. package/dist/{data-list-DJ7DgVuH.js.map → data-list-Bm70XKg_.js.map} +1 -1
  172. package/dist/{data-list-skeleton-BiletsX0.cjs → data-list-skeleton-B7flrjdA.cjs} +2 -2
  173. package/dist/{data-list-skeleton-BiletsX0.cjs.map → data-list-skeleton-B7flrjdA.cjs.map} +1 -1
  174. package/dist/{data-list-skeleton-QvifQhmC.js → data-list-skeleton-BJVs8rDE.js} +2 -2
  175. package/dist/{data-list-skeleton-QvifQhmC.js.map → data-list-skeleton-BJVs8rDE.js.map} +1 -1
  176. package/dist/{data-list-top-0BrqoQba.js → data-list-top-BeUxfGy2.js} +2 -2
  177. package/dist/{data-list-top-0BrqoQba.js.map → data-list-top-BeUxfGy2.js.map} +1 -1
  178. package/dist/{data-list-top-D8r8M8JA.cjs → data-list-top-D9zFnKEi.cjs} +2 -2
  179. package/dist/{data-list-top-D8r8M8JA.cjs.map → data-list-top-D9zFnKEi.cjs.map} +1 -1
  180. package/dist/{data-panel-C3FczohB.js → data-panel-5iuux0r_.js} +4 -4
  181. package/dist/{data-panel-C3FczohB.js.map → data-panel-5iuux0r_.js.map} +1 -1
  182. package/dist/{data-panel-KjzePv5_.cjs → data-panel-tSErqolu.cjs} +4 -4
  183. package/dist/{data-panel-KjzePv5_.cjs.map → data-panel-tSErqolu.cjs.map} +1 -1
  184. package/dist/{date-time-range-picker-DU4ynAjj.cjs → date-time-range-picker-C0J7p78l.cjs} +4 -4
  185. package/dist/{date-time-range-picker-DU4ynAjj.cjs.map → date-time-range-picker-C0J7p78l.cjs.map} +1 -1
  186. package/dist/{date-time-range-picker-CMzJwQ_s.js → date-time-range-picker-CcoU5-2_.js} +4 -4
  187. package/dist/{date-time-range-picker-CMzJwQ_s.js.map → date-time-range-picker-CcoU5-2_.js.map} +1 -1
  188. package/dist/{dialog-CUeeMxRo.cjs → dialog-B1DwyLJJ.cjs} +10 -26
  189. package/dist/dialog-B1DwyLJJ.cjs.map +1 -0
  190. package/dist/{dialog-KvPRmHPW.js → dialog-Dfrt_JCJ.js} +10 -26
  191. package/dist/dialog-Dfrt_JCJ.js.map +1 -0
  192. package/dist/domains/chat/attachments/attachment-preview-dialog.cjs.js +2 -2
  193. package/dist/domains/chat/attachments/attachment-preview-dialog.es.js +2 -2
  194. package/dist/domains/chat/components/badge-wrapper.cjs.js +1 -1
  195. package/dist/domains/chat/components/badge-wrapper.es.js +1 -1
  196. package/dist/domains/chat/components/network-choice-metadata-dialog.cjs.js +3 -3
  197. package/dist/domains/chat/components/network-choice-metadata-dialog.es.js +3 -3
  198. package/dist/domains/chat/context/chat-context.cjs.js.map +1 -1
  199. package/dist/domains/chat/context/chat-context.es.js.map +1 -1
  200. package/dist/domains/chat/messages/notification-signal-notice.cjs.js +1 -1
  201. package/dist/domains/chat/messages/notification-signal-notice.es.js +1 -1
  202. package/dist/domains/chat/messages/renderers/assistant-text-part-renderer.cjs.js +9 -1
  203. package/dist/domains/chat/messages/renderers/assistant-text-part-renderer.cjs.js.map +1 -1
  204. package/dist/domains/chat/messages/renderers/assistant-text-part-renderer.es.js +9 -1
  205. package/dist/domains/chat/messages/renderers/assistant-text-part-renderer.es.js.map +1 -1
  206. package/dist/domains/chat/messages/renderers/message-text.cjs.js +12 -4
  207. package/dist/domains/chat/messages/renderers/message-text.cjs.js.map +1 -1
  208. package/dist/domains/chat/messages/renderers/message-text.es.js +12 -4
  209. package/dist/domains/chat/messages/renderers/message-text.es.js.map +1 -1
  210. package/dist/domains/chat/messages/renderers/status-renderers.cjs.js +1 -1
  211. package/dist/domains/chat/messages/renderers/status-renderers.es.js +1 -1
  212. package/dist/domains/chat/messages/renderers/tool-part.cjs.js +1 -1
  213. package/dist/domains/chat/messages/renderers/tool-part.cjs.js.map +1 -1
  214. package/dist/domains/chat/messages/renderers/tool-part.es.js +1 -1
  215. package/dist/domains/chat/messages/renderers/tool-part.es.js.map +1 -1
  216. package/dist/domains/chat/messages/tripwire-notice.cjs.js +1 -1
  217. package/dist/domains/chat/messages/tripwire-notice.es.js +1 -1
  218. package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js +1 -1
  219. package/dist/domains/chat/tools/badges/ask-user-badge.es.js +1 -1
  220. package/dist/domains/chat/tools/badges/code-mode-badge.cjs.js +2 -2
  221. package/dist/domains/chat/tools/badges/code-mode-badge.es.js +2 -2
  222. package/dist/domains/chat/tools/badges/observation-marker-badge.cjs.js +1 -1
  223. package/dist/domains/chat/tools/badges/observation-marker-badge.es.js +1 -1
  224. package/dist/domains/chat/tools/badges/observation-renderer.cjs.js +1 -1
  225. package/dist/domains/chat/tools/badges/observation-renderer.es.js +1 -1
  226. package/dist/domains/chat/tools/badges/tool-approval-buttons.cjs.js +1 -1
  227. package/dist/domains/chat/tools/badges/tool-approval-buttons.es.js +1 -1
  228. package/dist/domains/logs/components/log-details-view.cjs.js +3 -3
  229. package/dist/domains/logs/components/log-details-view.es.js +3 -3
  230. package/dist/domains/logs/components/logs-error-content.cjs.js +1 -1
  231. package/dist/domains/logs/components/logs-error-content.es.js +1 -1
  232. package/dist/domains/logs/components/logs-list-view.cjs.js +2 -2
  233. package/dist/domains/logs/components/logs-list-view.es.js +2 -2
  234. package/dist/domains/logs/components/logs-toolbar.cjs.js +1 -1
  235. package/dist/domains/logs/components/logs-toolbar.es.js +1 -1
  236. package/dist/domains/logs/components/no-logs-info.cjs.js +1 -1
  237. package/dist/domains/logs/components/no-logs-info.es.js +1 -1
  238. package/dist/domains/memory/components/flame-graph.cjs.js +1 -1
  239. package/dist/domains/memory/components/flame-graph.es.js +1 -1
  240. package/dist/domains/memory/components/memory-studio-panel.cjs.js +1 -1
  241. package/dist/domains/memory/components/memory-studio-panel.es.js +1 -1
  242. package/dist/domains/memory/components/observation-detail-view.cjs.js +1 -1
  243. package/dist/domains/memory/components/observation-detail-view.es.js +1 -1
  244. package/dist/domains/metrics/components/card-action-buttons.cjs.js +1 -1
  245. package/dist/domains/metrics/components/card-action-buttons.es.js +1 -1
  246. package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
  247. package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
  248. package/dist/domains/metrics/components/latency-card-view.cjs.js +3 -3
  249. package/dist/domains/metrics/components/latency-card-view.es.js +3 -3
  250. package/dist/domains/metrics/components/memory-card-view.cjs.js +4 -4
  251. package/dist/domains/metrics/components/memory-card-view.es.js +4 -4
  252. package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js +1 -1
  253. package/dist/domains/metrics/components/model-usage-cost-card-view.es.js +1 -1
  254. package/dist/domains/metrics/components/scores-card-view.cjs.js +4 -4
  255. package/dist/domains/metrics/components/scores-card-view.es.js +4 -4
  256. package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +3 -3
  257. package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +3 -3
  258. package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +3 -3
  259. package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +3 -3
  260. package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +3 -3
  261. package/dist/domains/metrics/components/traces-volume-card-view.es.js +3 -3
  262. package/dist/domains/traces/components/span-data-panel-view.cjs.js +6 -6
  263. package/dist/domains/traces/components/span-data-panel-view.es.js +6 -6
  264. package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +4 -4
  265. package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +4 -4
  266. package/dist/domains/traces/components/thread-trace/thread-trace-spans-tab.cjs.js +2 -2
  267. package/dist/domains/traces/components/thread-trace/thread-trace-spans-tab.es.js +2 -2
  268. package/dist/domains/traces/components/trace-columns-menu.cjs.js +4 -4
  269. package/dist/domains/traces/components/trace-columns-menu.es.js +4 -4
  270. package/dist/domains/traces/components/trace-data-panel-view.cjs.js +9 -9
  271. package/dist/domains/traces/components/trace-data-panel-view.es.js +9 -9
  272. package/dist/domains/traces/components/trace-id-button.cjs.js +1 -1
  273. package/dist/domains/traces/components/trace-id-button.es.js +1 -1
  274. package/dist/domains/traces/components/traces-error-content.cjs.js +1 -1
  275. package/dist/domains/traces/components/traces-error-content.es.js +1 -1
  276. package/dist/domains/traces/components/traces-list-mode-toggle.cjs.js +2 -2
  277. package/dist/domains/traces/components/traces-list-mode-toggle.es.js +2 -2
  278. package/dist/domains/traces/components/traces-list-view.cjs.js +3 -3
  279. package/dist/domains/traces/components/traces-list-view.es.js +3 -3
  280. package/dist/domains/traces/components/traces-toolbar.cjs.js +1 -1
  281. package/dist/domains/traces/components/traces-toolbar.es.js +1 -1
  282. package/dist/{drawer-BXOkhFYI.cjs → drawer-Bq7j_MiM.cjs} +2 -2
  283. package/dist/{drawer-BXOkhFYI.cjs.map → drawer-Bq7j_MiM.cjs.map} +1 -1
  284. package/dist/{drawer-DUhKiF6i.js → drawer-D1m2faHU.js} +2 -2
  285. package/dist/{drawer-DUhKiF6i.js.map → drawer-D1m2faHU.js.map} +1 -1
  286. package/dist/{dropdown-menu-Bj9vR0Md.cjs → dropdown-menu-Bfh5ROWe.cjs} +6 -5
  287. package/dist/dropdown-menu-Bfh5ROWe.cjs.map +1 -0
  288. package/dist/{dropdown-menu-GAD50kMK.js → dropdown-menu-C853KwJJ.js} +5 -4
  289. package/dist/dropdown-menu-C853KwJJ.js.map +1 -0
  290. package/dist/ee/signals/components/entity-index-list.cjs.js +1 -3
  291. package/dist/ee/signals/components/entity-index-list.cjs.js.map +1 -1
  292. package/dist/ee/signals/components/entity-index-list.es.js +1 -3
  293. package/dist/ee/signals/components/entity-index-list.es.js.map +1 -1
  294. package/dist/ee/signals/components/signals-empty-state.cjs.js +1 -1
  295. package/dist/ee/signals/components/signals-empty-state.es.js +1 -1
  296. package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js +6 -7
  297. package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js.map +1 -1
  298. package/dist/ee/signals/components/trace-intelligence-entity-index.es.js +6 -7
  299. package/dist/ee/signals/components/trace-intelligence-entity-index.es.js.map +1 -1
  300. package/dist/ee/signals/examples-pager.cjs.js +1 -1
  301. package/dist/ee/signals/examples-pager.es.js +1 -1
  302. package/dist/ee/signals/noise-detail-panel.cjs.js +1 -1
  303. package/dist/ee/signals/noise-detail-panel.es.js +1 -1
  304. package/dist/ee/signals/sankey-signals.cjs.js +1 -1
  305. package/dist/ee/signals/sankey-signals.es.js +1 -1
  306. package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +4 -4
  307. package/dist/ee/signals/settings/signal-definition-form-dialog.es.js +4 -4
  308. package/dist/ee/signals/settings/trace-signal-settings.cjs.js +3 -3
  309. package/dist/ee/signals/settings/trace-signal-settings.es.js +3 -3
  310. package/dist/ee/signals/signals-error-state.cjs.js +1 -1
  311. package/dist/ee/signals/signals-error-state.es.js +1 -1
  312. package/dist/ee/signals/snapshot-timeline.cjs.js +1 -1
  313. package/dist/ee/signals/snapshot-timeline.es.js +1 -1
  314. package/dist/ee/signals/theme-detail-panel.cjs.js +1 -1
  315. package/dist/ee/signals/theme-detail-panel.es.js +1 -1
  316. package/dist/ee/signals/theme-filter-banner.cjs.js +1 -1
  317. package/dist/ee/signals/theme-filter-banner.es.js +1 -1
  318. package/dist/ee/signals/trace-insight-view.cjs.js +1 -1
  319. package/dist/ee/signals/trace-insight-view.es.js +1 -1
  320. package/dist/ee/signals/view-mode-tab.cjs.js +1 -1
  321. package/dist/ee/signals/view-mode-tab.es.js +1 -1
  322. package/dist/ee/topics/components/topic-trace-summary-list.cjs.js +3 -3
  323. package/dist/ee/topics/components/topic-trace-summary-list.es.js +3 -3
  324. package/dist/hooks/use-local-storage-state.cjs.js +35 -0
  325. package/dist/hooks/use-local-storage-state.cjs.js.map +1 -0
  326. package/dist/hooks/use-local-storage-state.d.ts +2 -0
  327. package/dist/hooks/use-local-storage-state.es.js +31 -0
  328. package/dist/hooks/use-local-storage-state.es.js.map +1 -0
  329. package/dist/{input-BXl_-87K.cjs → input-D3SUXvgI.cjs} +9 -10
  330. package/dist/input-D3SUXvgI.cjs.map +1 -0
  331. package/dist/{input-KNga7Y7g.js → input-DinpgQXj.js} +8 -9
  332. package/dist/input-DinpgQXj.js.map +1 -0
  333. package/dist/{input-group-BW3PBfmX.cjs → input-group-CBuqhxnJ.cjs} +30 -11
  334. package/dist/input-group-CBuqhxnJ.cjs.map +1 -0
  335. package/dist/{input-group-CC3FsOEL.js → input-group-Dv1YsFDZ.js} +30 -11
  336. package/dist/input-group-Dv1YsFDZ.js.map +1 -0
  337. package/dist/layout/tabbed-container.cjs.js +6 -6
  338. package/dist/layout/tabbed-container.es.js +6 -6
  339. package/dist/{list-search-D_Q34jSU.cjs → list-search-BwcO9d9M.cjs} +2 -2
  340. package/dist/{list-search-D_Q34jSU.cjs.map → list-search-BwcO9d9M.cjs.map} +1 -1
  341. package/dist/{list-search-C9wdyGVJ.js → list-search-C8FBcDpo.js} +2 -2
  342. package/dist/{list-search-C9wdyGVJ.js.map → list-search-C8FBcDpo.js.map} +1 -1
  343. package/dist/{logs-data-list-CBCCnmWl.cjs → logs-data-list-B0hzHq0b.cjs} +2 -2
  344. package/dist/{logs-data-list-CBCCnmWl.cjs.map → logs-data-list-B0hzHq0b.cjs.map} +1 -1
  345. package/dist/{logs-data-list-BEC39Y_v.js → logs-data-list-CWu83qI7.js} +2 -2
  346. package/dist/{logs-data-list-BEC39Y_v.js.map → logs-data-list-CWu83qI7.js.map} +1 -1
  347. package/dist/{markdown-renderer-Wmdi_oR8.js → markdown-renderer-Dp1fJwUB.js} +175 -8
  348. package/dist/markdown-renderer-Dp1fJwUB.js.map +1 -0
  349. package/dist/{markdown-renderer-Ds3PaLdR.cjs → markdown-renderer-hBiN_N_-.cjs} +174 -7
  350. package/dist/markdown-renderer-hBiN_N_-.cjs.map +1 -0
  351. package/dist/new/layout/app-shell.cjs.js +53 -0
  352. package/dist/new/layout/app-shell.cjs.js.map +1 -0
  353. package/dist/new/layout/app-shell.d.ts +2 -0
  354. package/dist/new/layout/app-shell.es.js +49 -0
  355. package/dist/new/layout/app-shell.es.js.map +1 -0
  356. package/dist/new/layout/page-header.cjs.js +1 -1
  357. package/dist/new/layout/page-header.es.js +1 -1
  358. package/dist/{page-header-ComQfwIQ.js → page-header-CGRV1f_f.js} +11 -7
  359. package/dist/page-header-CGRV1f_f.js.map +1 -0
  360. package/dist/{page-header-hRxyKAlN.cjs → page-header-CTdBcOWK.cjs} +11 -7
  361. package/dist/page-header-CTdBcOWK.cjs.map +1 -0
  362. package/dist/primitives/control-size.cjs.js +1 -1
  363. package/dist/primitives/control-size.cjs.js.map +1 -1
  364. package/dist/primitives/control-size.es.js +1 -1
  365. package/dist/primitives/control-size.es.js.map +1 -1
  366. package/dist/primitives/form-element.cjs.js +8 -21
  367. package/dist/primitives/form-element.cjs.js.map +1 -1
  368. package/dist/primitives/form-element.es.js +8 -20
  369. package/dist/primitives/form-element.es.js.map +1 -1
  370. package/dist/primitives/menu-item.cjs.js +7 -10
  371. package/dist/primitives/menu-item.cjs.js.map +1 -1
  372. package/dist/primitives/menu-item.es.js +7 -10
  373. package/dist/primitives/menu-item.es.js.map +1 -1
  374. package/dist/primitives/trigger-button.cjs.js +1 -1
  375. package/dist/primitives/trigger-button.es.js +1 -1
  376. package/dist/{property-filter-applied-CTcWC5Hv.js → property-filter-applied-CF-InSu-.js} +5 -5
  377. package/dist/{property-filter-applied-CTcWC5Hv.js.map → property-filter-applied-CF-InSu-.js.map} +1 -1
  378. package/dist/{property-filter-applied-DCffRXYU.cjs → property-filter-applied-D35zWa7S.cjs} +5 -5
  379. package/dist/{property-filter-applied-DCffRXYU.cjs.map → property-filter-applied-D35zWa7S.cjs.map} +1 -1
  380. package/dist/resize/panel-drawer.cjs.js +1 -1
  381. package/dist/resize/panel-drawer.es.js +1 -1
  382. package/dist/{search-field-block-BH_zDJIt.js → search-field-block-DhgD7NhZ.js} +3 -3
  383. package/dist/{search-field-block-BH_zDJIt.js.map → search-field-block-DhgD7NhZ.js.map} +1 -1
  384. package/dist/{search-field-block-WP6PODTo.cjs → search-field-block-DnJYUEGi.cjs} +3 -3
  385. package/dist/{search-field-block-WP6PODTo.cjs.map → search-field-block-DnJYUEGi.cjs.map} +1 -1
  386. package/dist/{select-VqANzntV.js → select-3GcRJGtd.js} +5 -3
  387. package/dist/select-3GcRJGtd.js.map +1 -0
  388. package/dist/{select-Dhox-EJ2.cjs → select-4dVGVp0V.cjs} +6 -4
  389. package/dist/select-4dVGVp0V.cjs.map +1 -0
  390. package/dist/{select-field-block-C3OTHj2n.js → select-field-block-BEyjBDiB.js} +2 -2
  391. package/dist/{select-field-block-C3OTHj2n.js.map → select-field-block-BEyjBDiB.js.map} +1 -1
  392. package/dist/{select-field-block-DBv-cFoz.cjs → select-field-block-By8NfJoe.cjs} +2 -2
  393. package/dist/{select-field-block-DBv-cFoz.cjs.map → select-field-block-By8NfJoe.cjs.map} +1 -1
  394. package/dist/{slider-Cx_ZwlQU.js → slider-AfRJ3a4W.js} +2 -7
  395. package/dist/slider-AfRJ3a4W.js.map +1 -0
  396. package/dist/{slider-DyNnS3a7.cjs → slider-BXYQmaQy.cjs} +3 -8
  397. package/dist/slider-BXYQmaQy.cjs.map +1 -0
  398. package/dist/src/domains/chat/context/chat-context.d.ts +2 -0
  399. package/dist/src/domains/chat/messages/renderers/message-text.d.ts +2 -1
  400. package/dist/src/domains/chat/stories/messages.stories.d.ts +1 -1
  401. package/dist/src/ds/components/Button/Button.d.ts +1 -1
  402. package/dist/src/ds/components/Checkbox/checkbox.d.ts +10 -1
  403. package/dist/src/ds/components/Combobox/combobox.d.ts +3 -2
  404. package/dist/src/ds/components/DropdownMenu/dropdown-menu.d.ts +9 -1
  405. package/dist/src/ds/components/DropdownMenu/dropdown-menu.stories.d.ts +1 -0
  406. package/dist/src/ds/components/MarkdownRenderer/markdown-renderer.d.ts +3 -1
  407. package/dist/src/ds/components/MarkdownRenderer/markdown-table.d.ts +3 -0
  408. package/dist/src/ds/components/MarkdownRenderer/table-csv.d.ts +2 -0
  409. package/dist/src/ds/components/MarkdownRenderer/table-markdown.d.ts +5 -0
  410. package/dist/src/ds/components/Select/select.d.ts +24 -2
  411. package/dist/src/ds/components/Slider/slider.d.ts +1 -1
  412. package/dist/src/ds/components/Table/Table.d.ts +1 -1
  413. package/dist/src/ds/components/ai/tool-call/tool-call-group.d.ts +2 -0
  414. package/dist/src/ds/new/layout/app-shell/app-shell.d.ts +13 -0
  415. package/dist/src/ds/new/layout/app-shell/app-shell.stories.d.ts +22 -0
  416. package/dist/src/ds/new/layout/app-shell/index.d.ts +1 -0
  417. package/dist/src/ds/primitives/form-element.d.ts +5 -6
  418. package/dist/src/ds/primitives/menu-item.d.ts +1 -0
  419. package/dist/src/hooks/use-local-storage-state.d.ts +10 -0
  420. package/dist/style.css +144 -35
  421. package/dist/{switch-CRgSw0D1.js → switch-A-j7GDcX.js} +3 -4
  422. package/dist/switch-A-j7GDcX.js.map +1 -0
  423. package/dist/{switch-CsnP5CNn.cjs → switch-BROLIeGF.cjs} +3 -4
  424. package/dist/switch-BROLIeGF.cjs.map +1 -0
  425. package/dist/{tabs-content-Bf28p8Au.cjs → tabs-content-CV7YrtD1.cjs} +4 -4
  426. package/dist/tabs-content-CV7YrtD1.cjs.map +1 -0
  427. package/dist/{tabs-content-vrO_NM42.js → tabs-content-CW6RtAEV.js} +3 -3
  428. package/dist/tabs-content-CW6RtAEV.js.map +1 -0
  429. package/dist/{tabs-root-B4G-ywup.js → tabs-root-BAy8m6GO.js} +2 -2
  430. package/dist/{tabs-root-B4G-ywup.js.map → tabs-root-BAy8m6GO.js.map} +1 -1
  431. package/dist/{tabs-root-BAJYWOrk.cjs → tabs-root-Dw7gHsnZ.cjs} +2 -2
  432. package/dist/{tabs-root-BAJYWOrk.cjs.map → tabs-root-Dw7gHsnZ.cjs.map} +1 -1
  433. package/dist/{tabs-tab-Br-jck-B.cjs → tabs-tab-CP-kzlvB.cjs} +5 -6
  434. package/dist/tabs-tab-CP-kzlvB.cjs.map +1 -0
  435. package/dist/{tabs-tab-CvlCl9kD.js → tabs-tab-K5mQhs7r.js} +6 -7
  436. package/dist/tabs-tab-K5mQhs7r.js.map +1 -0
  437. package/dist/{text-field-block-BVhQGWYw.js → text-field-block-CUN9gL4j.js} +2 -2
  438. package/dist/{text-field-block-BVhQGWYw.js.map → text-field-block-CUN9gL4j.js.map} +1 -1
  439. package/dist/{text-field-block-DBEXulUE.cjs → text-field-block-WuwrSNEX.cjs} +2 -2
  440. package/dist/{text-field-block-DBEXulUE.cjs.map → text-field-block-WuwrSNEX.cjs.map} +1 -1
  441. package/dist/{textarea-BcaFNmji.js → textarea-BCVPeJzr.js} +7 -3
  442. package/dist/textarea-BCVPeJzr.js.map +1 -0
  443. package/dist/{textarea-C_saJE6T.cjs → textarea-D9XsLoN5.cjs} +8 -4
  444. package/dist/textarea-D9XsLoN5.cjs.map +1 -0
  445. package/dist/{time-picker-CMUki2R2.cjs → time-picker-BKpmCbXS.cjs} +2 -2
  446. package/dist/{time-picker-CMUki2R2.cjs.map → time-picker-BKpmCbXS.cjs.map} +1 -1
  447. package/dist/{time-picker-CfdcBPyS.js → time-picker-SgrQvt0V.js} +2 -2
  448. package/dist/{time-picker-CfdcBPyS.js.map → time-picker-SgrQvt0V.js.map} +1 -1
  449. package/dist/{tool-call-DfLe6Hu5.js → tool-call-BlKbOYRH.js} +2 -2
  450. package/dist/{tool-call-DfLe6Hu5.js.map → tool-call-BlKbOYRH.js.map} +1 -1
  451. package/dist/{tool-call-Pi3V0LP3.cjs → tool-call-DVh_yWov.cjs} +2 -2
  452. package/dist/{tool-call-Pi3V0LP3.cjs.map → tool-call-DVh_yWov.cjs.map} +1 -1
  453. package/dist/{traces-data-list-BPrExzSX.cjs → traces-data-list-0WfYCKdc.cjs} +3 -3
  454. package/dist/{traces-data-list-BPrExzSX.cjs.map → traces-data-list-0WfYCKdc.cjs.map} +1 -1
  455. package/dist/{traces-data-list-CfW_M5yW.js → traces-data-list-BOiAOwYM.js} +3 -3
  456. package/dist/{traces-data-list-CfW_M5yW.js.map → traces-data-list-BOiAOwYM.js.map} +1 -1
  457. package/package.json +18 -8
  458. package/theme.css +12 -0
  459. package/dist/Button-BsHGVRjh.cjs.map +0 -1
  460. package/dist/Button-DsTY88Xz.js.map +0 -1
  461. package/dist/buttons-group-B5TBWfs6.js.map +0 -1
  462. package/dist/buttons-group-PqYxKznc.cjs.map +0 -1
  463. package/dist/checkbox-BNOCksit.cjs.map +0 -1
  464. package/dist/checkbox-pvYvwDUy.js.map +0 -1
  465. package/dist/combobox-8GoJaMs1.js.map +0 -1
  466. package/dist/combobox-Cg-7UwwL.cjs.map +0 -1
  467. package/dist/command-C6cIgH_n.cjs.map +0 -1
  468. package/dist/command-OXbUDxUu.js.map +0 -1
  469. package/dist/dialog-CUeeMxRo.cjs.map +0 -1
  470. package/dist/dialog-KvPRmHPW.js.map +0 -1
  471. package/dist/dropdown-menu-Bj9vR0Md.cjs.map +0 -1
  472. package/dist/dropdown-menu-GAD50kMK.js.map +0 -1
  473. package/dist/focus.css +0 -176
  474. package/dist/input-BXl_-87K.cjs.map +0 -1
  475. package/dist/input-KNga7Y7g.js.map +0 -1
  476. package/dist/input-group-BW3PBfmX.cjs.map +0 -1
  477. package/dist/input-group-CC3FsOEL.js.map +0 -1
  478. package/dist/markdown-renderer-Ds3PaLdR.cjs.map +0 -1
  479. package/dist/markdown-renderer-Wmdi_oR8.js.map +0 -1
  480. package/dist/page-header-ComQfwIQ.js.map +0 -1
  481. package/dist/page-header-hRxyKAlN.cjs.map +0 -1
  482. package/dist/select-Dhox-EJ2.cjs.map +0 -1
  483. package/dist/select-VqANzntV.js.map +0 -1
  484. package/dist/slider-Cx_ZwlQU.js.map +0 -1
  485. package/dist/slider-DyNnS3a7.cjs.map +0 -1
  486. package/dist/switch-CRgSw0D1.js.map +0 -1
  487. package/dist/switch-CsnP5CNn.cjs.map +0 -1
  488. package/dist/tabs-content-Bf28p8Au.cjs.map +0 -1
  489. package/dist/tabs-content-vrO_NM42.js.map +0 -1
  490. package/dist/tabs-tab-Br-jck-B.cjs.map +0 -1
  491. package/dist/tabs-tab-CvlCl9kD.js.map +0 -1
  492. package/dist/textarea-BcaFNmji.js.map +0 -1
  493. package/dist/textarea-C_saJE6T.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"drawer-DUhKiF6i.js","sources":["../src/ds/components/Drawer/drawer.tsx"],"sourcesContent":["import { Drawer as DrawerPrimitive } from '@base-ui/react/drawer';\nimport { cva } from 'class-variance-authority';\nimport type { VariantProps } from 'class-variance-authority';\nimport { XIcon } from 'lucide-react';\nimport * as React from 'react';\n\nimport { Button } from '@/ds/components/Button';\nimport { cn } from '@/lib/utils';\n\n// Swipe/stack transforms live in drawer.css — unreadable as Tailwind arbitrary values.\nimport './drawer.css';\n\nexport type DrawerSide = 'top' | 'right' | 'bottom' | 'left';\n\nconst drawerBackdropVariants = cva('drawer-backdrop fixed inset-0 z-50', {\n variants: {\n overlay: {\n visible: 'bg-overlay backdrop-blur-xs',\n transparent: 'bg-transparent',\n none: 'hidden',\n },\n },\n defaultVariants: {\n overlay: 'visible',\n },\n});\n\nconst drawerViewportVariants = cva('fixed z-50 flex', {\n variants: {\n side: {\n top: 'items-start justify-center',\n bottom: 'items-end justify-center',\n left: 'items-stretch justify-start',\n right: 'items-stretch justify-end',\n },\n layout: {\n default: 'inset-0',\n floating: 'p-2 sm:p-3',\n floatingOverlay: 'inset-0 p-2 sm:p-3',\n },\n },\n compoundVariants: [\n {\n side: 'right',\n layout: 'floating',\n className: 'inset-y-0 right-0 w-[calc(32rem+1.5rem)] max-w-full sm:w-[calc(32rem+2rem)]',\n },\n {\n side: 'left',\n layout: 'floating',\n className: 'inset-y-0 left-0 w-[calc(32rem+1.5rem)] max-w-full sm:w-[calc(32rem+2rem)]',\n },\n {\n side: 'bottom',\n layout: 'floating',\n className: 'inset-x-0 bottom-0 h-[calc(85dvh+1.5rem)] max-h-full sm:h-[calc(85dvh+2rem)]',\n },\n {\n side: 'top',\n layout: 'floating',\n className: 'inset-x-0 top-0 h-[calc(85dvh+1.5rem)] max-h-full sm:h-[calc(85dvh+2rem)]',\n },\n ],\n defaultVariants: {\n side: 'bottom',\n layout: 'default',\n },\n});\n\n// `drawer-popup` hooks into drawer.css for swipe/stack transforms; `::after` dims under nested drawers.\nconst drawerPopupVariants = cva(\n cn(\n 'drawer-popup group/popup relative z-50 box-border flex [touch-action:auto] flex-col overflow-y-auto overscroll-contain will-change-transform outline-none',\n 'border-border1 bg-surface3 text-neutral5 shadow-dialog',\n 'data-[swiping]:select-none',\n \"after:pointer-events-none after:absolute after:inset-0 after:bg-transparent after:transition-[background-color] after:duration-[450ms] after:content-['']\",\n 'data-[nested-drawer-open]:after:bg-black/25',\n ),\n {\n variants: {\n side: {\n bottom: '',\n top: '',\n left: '',\n right: '',\n },\n variant: {\n default: '',\n floating: 'drawer-popup-floating pointer-events-auto rounded-lg border',\n },\n },\n compoundVariants: [\n {\n side: 'bottom',\n variant: 'default',\n className:\n 'h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full -mb-12 pb-12 rounded-t-xl border-x border-t',\n },\n {\n side: 'top',\n variant: 'default',\n className:\n 'h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full -mt-12 pt-12 rounded-b-xl border-x border-b',\n },\n {\n side: 'left',\n variant: 'default',\n className: 'h-full w-[20rem] max-w-[85vw] rounded-r-xl border-y border-r',\n },\n {\n side: 'right',\n variant: 'default',\n className: 'h-full w-[20rem] max-w-[85vw] rounded-l-xl border-y border-l',\n },\n {\n side: ['left', 'right'],\n variant: 'floating',\n className:\n 'h-[calc(100dvh-1.5rem)] w-[32rem] max-w-[calc(100vw-1.5rem)] sm:h-[calc(100dvh-2rem)] sm:max-w-[calc(100vw-2rem)]',\n },\n {\n side: ['top', 'bottom'],\n variant: 'floating',\n className:\n 'max-h-[calc(85dvh-1.5rem)] w-[calc(100vw-1.5rem)] sm:max-h-[calc(85dvh-2rem)] sm:w-[calc(100vw-2rem)]',\n },\n ],\n defaultVariants: {\n side: 'bottom',\n variant: 'default',\n },\n },\n);\n\ntype DrawerBackdropVariantsProps = VariantProps<typeof drawerBackdropVariants>;\ntype DrawerViewportClassVariantsProps = VariantProps<typeof drawerViewportVariants>;\ntype DrawerPopupVariantsProps = VariantProps<typeof drawerPopupVariants>;\nexport type DrawerVariant = NonNullable<DrawerPopupVariantsProps['variant']>;\ntype DrawerViewportLayout = NonNullable<DrawerViewportClassVariantsProps['layout']>;\ntype DrawerViewportVariantsProps = Pick<DrawerViewportClassVariantsProps, 'side'> & {\n variant?: DrawerVariant;\n};\nexport type DrawerOverlay = 'auto' | NonNullable<DrawerBackdropVariantsProps['overlay']>;\n\n// `side` = anchor edge; Base UI's `swipeDirection` = dismissal gesture (bottom sheet swipes `down`).\nconst sideToSwipeDirection: Record<DrawerSide, 'up' | 'down' | 'left' | 'right'> = {\n top: 'up',\n bottom: 'down',\n left: 'left',\n right: 'right',\n};\n\ntype DrawerContextValue = {\n side: DrawerSide;\n variant: DrawerVariant;\n resolvedOverlay: NonNullable<DrawerBackdropVariantsProps['overlay']>;\n};\n\nconst resolveDrawerOverlay = (\n overlay: DrawerOverlay,\n variant: DrawerVariant,\n): NonNullable<DrawerBackdropVariantsProps['overlay']> => {\n if (overlay !== 'auto') {\n return overlay;\n }\n\n return variant === 'floating' ? 'none' : 'visible';\n};\n\nconst DrawerContext = React.createContext<DrawerContextValue>({\n side: 'bottom',\n variant: 'default',\n resolvedOverlay: 'visible',\n});\n\nconst useDrawerContext = () => React.useContext(DrawerContext);\n\nexport const useDrawerSide = () => useDrawerContext().side;\n\nconst resolveDrawerViewportLayout = (\n variant: DrawerVariant,\n overlay: NonNullable<DrawerBackdropVariantsProps['overlay']>,\n): DrawerViewportLayout => {\n if (variant !== 'floating') {\n return 'default';\n }\n\n return overlay === 'none' ? 'floating' : 'floatingOverlay';\n};\n\nexport type DrawerProps<Payload = unknown> = Omit<DrawerPrimitive.Root.Props<Payload>, 'swipeDirection'> & {\n /** Edge the drawer is anchored to. Defaults to `bottom`. */\n side?: DrawerSide;\n /** Visual treatment for the drawer panel. Defaults to `default`. */\n variant?: DrawerVariant;\n /** Backdrop behavior. `auto` renders a visible backdrop for default drawers and no backdrop for floating drawers. */\n overlay?: DrawerOverlay;\n};\n\nfunction Drawer<Payload = unknown>({\n side = 'bottom',\n variant = 'default',\n overlay = 'auto',\n modal,\n disablePointerDismissal,\n children,\n ...props\n}: DrawerProps<Payload>) {\n const resolvedOverlay = resolveDrawerOverlay(overlay, variant);\n const resolvedModal = modal ?? (resolvedOverlay === 'none' ? false : undefined);\n const resolvedDisablePointerDismissal = disablePointerDismissal ?? (resolvedOverlay === 'none' ? true : undefined);\n const contextValue = React.useMemo<DrawerContextValue>(\n () => ({ side, variant, resolvedOverlay }),\n [side, variant, resolvedOverlay],\n );\n\n return (\n <DrawerContext.Provider value={contextValue}>\n <DrawerPrimitive.Root\n swipeDirection={sideToSwipeDirection[side]}\n modal={resolvedModal}\n disablePointerDismissal={resolvedDisablePointerDismissal}\n {...props}\n >\n {children}\n </DrawerPrimitive.Root>\n </DrawerContext.Provider>\n );\n}\nDrawer.displayName = 'Drawer';\n\n// Generic (not `forwardRef`) so `handle` / `payload` stay type-safe on detached triggers.\ntype DrawerTriggerProps<Payload = unknown> = DrawerPrimitive.Trigger.Props<Payload> & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nfunction DrawerTrigger<Payload = unknown>({ asChild, children, ...props }: DrawerTriggerProps<Payload>) {\n const renderProps = asChild && React.isValidElement(children) ? { render: children as React.ReactElement } : {};\n\n return (\n <DrawerPrimitive.Trigger {...renderProps} {...props}>\n {asChild ? undefined : children}\n </DrawerPrimitive.Trigger>\n );\n}\nDrawerTrigger.displayName = 'DrawerTrigger';\n\ntype DrawerCloseProps = DrawerPrimitive.Close.Props & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nconst DrawerClose = React.forwardRef<HTMLButtonElement, DrawerCloseProps>(({ asChild, children, ...props }, ref) => {\n const renderProps = asChild && React.isValidElement(children) ? { render: children as React.ReactElement } : {};\n\n return (\n <DrawerPrimitive.Close ref={ref} {...renderProps} {...props}>\n {asChild ? undefined : children}\n </DrawerPrimitive.Close>\n );\n});\nDrawerClose.displayName = 'DrawerClose';\n\nconst DrawerPortal = DrawerPrimitive.Portal;\nconst DrawerProvider = DrawerPrimitive.Provider;\nconst DrawerIndent = DrawerPrimitive.Indent;\nconst DrawerIndentBackground = DrawerPrimitive.IndentBackground;\nconst DrawerSwipeArea = DrawerPrimitive.SwipeArea;\nconst createDrawerHandle = DrawerPrimitive.createHandle;\n// Inner region where pointer drags select text / scroll instead of swiping the drawer closed.\nconst DrawerInteractive = DrawerPrimitive.Content;\n\ntype DrawerBackdropProps = Omit<DrawerPrimitive.Backdrop.Props, 'className'> & {\n className?: string;\n} & DrawerBackdropVariantsProps;\n\n// The `drawer-backdrop` class (drawer.css) fades the overlay with the swipe gesture.\nconst DrawerBackdrop = React.forwardRef<HTMLDivElement, DrawerBackdropProps>(\n ({ className, overlay, ...props }, ref) => {\n const { resolvedOverlay } = useDrawerContext();\n const resolvedBackdropOverlay = overlay ?? resolvedOverlay;\n\n return (\n <DrawerPrimitive.Backdrop\n ref={ref}\n data-slot=\"drawer-backdrop\"\n data-overlay={resolvedBackdropOverlay}\n className={cn(drawerBackdropVariants({ overlay: resolvedBackdropOverlay }), className)}\n {...props}\n />\n );\n },\n);\nDrawerBackdrop.displayName = 'DrawerBackdrop';\n\ntype DrawerViewportProps = Omit<DrawerPrimitive.Viewport.Props, 'className'> & {\n className?: string;\n} & DrawerViewportVariantsProps;\n\n// Keep the viewport pointer-interactive: Base UI wires native drag-to-dismiss to it.\n// Floating drawers without an overlay constrain the viewport so the page behind stays interactive.\n// Floating drawers with an overlay keep a full-screen viewport so overlay-start drags stay native.\nconst DrawerViewport = React.forwardRef<HTMLDivElement, DrawerViewportProps>(\n ({ className, side, variant, ...props }, ref) => {\n const context = useDrawerContext();\n const resolvedSide = side ?? context.side;\n const resolvedVariant = variant ?? context.variant;\n const layout = resolveDrawerViewportLayout(resolvedVariant, context.resolvedOverlay);\n\n return (\n <DrawerPrimitive.Viewport\n ref={ref}\n data-slot=\"drawer-viewport\"\n data-variant={resolvedVariant}\n className={cn(drawerViewportVariants({ side: resolvedSide, layout }), className)}\n {...props}\n />\n );\n },\n);\nDrawerViewport.displayName = 'DrawerViewport';\n\ntype DrawerPopupProps = Omit<DrawerPrimitive.Popup.Props, 'className'> & {\n className?: string;\n} & DrawerPopupVariantsProps;\n\nconst DrawerPopup = React.forwardRef<HTMLDivElement, DrawerPopupProps>(\n ({ className, side, variant, ...props }, ref) => {\n const context = useDrawerContext();\n const resolvedSide = side ?? context.side;\n const resolvedVariant = variant ?? context.variant;\n\n return (\n <DrawerPrimitive.Popup\n ref={ref}\n data-slot=\"drawer-popup\"\n data-variant={resolvedVariant}\n className={cn(drawerPopupVariants({ side: resolvedSide, variant: resolvedVariant }), className)}\n {...props}\n />\n );\n },\n);\nDrawerPopup.displayName = 'DrawerPopup';\n\n// Inner-content fade while a nested drawer covers the parent. Off the popup itself so border/shadow stay crisp.\nconst nestedFadeClass = cn(\n 'transition-opacity duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] motion-reduce:duration-0',\n 'group-data-[nested-drawer-open]/popup:opacity-0',\n);\n\nconst DrawerHandleBar = () => (\n <div\n aria-hidden\n data-slot=\"drawer-handle\"\n className={cn('mx-auto my-2 h-1 w-12 shrink-0 rounded-full bg-surface5', nestedFadeClass)}\n />\n);\nDrawerHandleBar.displayName = 'DrawerHandleBar';\n\ntype DrawerFloatingSideHandleProps = {\n side: DrawerSide;\n variant: DrawerVariant;\n};\n\nconst DrawerFloatingSideHandle = ({ side, variant }: DrawerFloatingSideHandleProps) => {\n if (variant !== 'floating' || (side !== 'left' && side !== 'right')) {\n return null;\n }\n\n return (\n <div\n aria-hidden\n data-slot=\"drawer-side-handle\"\n className={cn(\n 'absolute top-1/2 z-10 flex h-20 w-5 -translate-y-1/2 cursor-ew-resize touch-none items-center justify-center select-none lg:hidden',\n side === 'right' ? '-left-2' : '-right-2',\n )}\n >\n <div className=\"bg-surface5/80 h-10 w-1 rounded-full shadow-sm\" />\n </div>\n );\n};\nDrawerFloatingSideHandle.displayName = 'DrawerFloatingSideHandle';\n\ntype DrawerContentProps = Omit<DrawerPrimitive.Popup.Props, 'className' | 'children'> & {\n className?: string;\n children?: React.ReactNode;\n /** Shows the built-in top-right close button. Defaults to `true`. */\n showCloseButton?: boolean;\n} & Pick<DrawerPopupVariantsProps, 'variant'>;\n\n// Opinionated bundle: Portal + Backdrop + Viewport + Popup, with handle on top/bottom sheets.\n// Drop to the primitives for non-modal pages, custom portal targets, or chrome outside the popup.\nconst DrawerContent = React.forwardRef<HTMLDivElement, DrawerContentProps>(\n ({ className, children, variant, showCloseButton = true, ...props }, ref) => {\n const { side, variant: contextVariant, resolvedOverlay } = useDrawerContext();\n const resolvedVariant = variant ?? contextVariant;\n const showHandle = side === 'top' || side === 'bottom';\n\n return (\n <DrawerPortal>\n {resolvedOverlay !== 'none' && <DrawerBackdrop />}\n <DrawerViewport variant={resolvedVariant}>\n <DrawerPopup ref={ref} variant={resolvedVariant} className={className} {...props}>\n {showHandle && side === 'bottom' && <DrawerHandleBar />}\n <DrawerFloatingSideHandle side={side} variant={resolvedVariant} />\n <div data-slot=\"drawer-content\" className={cn('relative flex min-h-0 flex-1 flex-col', nestedFadeClass)}>\n {showCloseButton && <DrawerDefaultCloseButton />}\n {children}\n </div>\n {showHandle && side === 'top' && <DrawerHandleBar />}\n </DrawerPopup>\n </DrawerViewport>\n </DrawerPortal>\n );\n },\n);\nDrawerContent.displayName = 'DrawerContent';\n\nconst DrawerDefaultCloseButton = () => (\n <DrawerClose asChild>\n <Button type=\"button\" variant=\"ghost\" size=\"icon-sm\" className=\"absolute top-3 right-3 z-10\" aria-label=\"Close\">\n <XIcon />\n </Button>\n </DrawerClose>\n);\nDrawerDefaultCloseButton.displayName = 'DrawerDefaultCloseButton';\n\nconst DrawerHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n data-slot=\"drawer-header\"\n className={cn('flex flex-col gap-0.5 px-3 py-2.5 pr-12 text-left', className)}\n {...props}\n />\n);\nDrawerHeader.displayName = 'DrawerHeader';\n\nconst DrawerFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n data-slot=\"drawer-footer\"\n className={cn('mt-auto flex flex-col-reverse gap-1.5 px-3 py-2.5 sm:flex-row sm:justify-end', className)}\n {...props}\n />\n);\nDrawerFooter.displayName = 'DrawerFooter';\n\nconst DrawerBody = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div data-slot=\"drawer-body\" className={cn('flex-1 px-3 py-2.5', className)} {...props} />\n);\nDrawerBody.displayName = 'DrawerBody';\n\ntype DrawerTitleProps = Omit<DrawerPrimitive.Title.Props, 'className'> & {\n className?: string;\n};\n\nconst DrawerTitle = React.forwardRef<HTMLHeadingElement, DrawerTitleProps>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Title ref={ref} className={cn('text-ui-md font-medium text-neutral6', className)} {...props} />\n));\nDrawerTitle.displayName = 'DrawerTitle';\n\ntype DrawerDescriptionProps = Omit<DrawerPrimitive.Description.Props, 'className'> & {\n className?: string;\n};\n\nconst DrawerDescription = React.forwardRef<HTMLParagraphElement, DrawerDescriptionProps>(\n ({ className, ...props }, ref) => (\n <DrawerPrimitive.Description ref={ref} className={cn('text-ui-sm text-neutral3', className)} {...props} />\n ),\n);\nDrawerDescription.displayName = 'DrawerDescription';\n\nexport {\n Drawer,\n DrawerTrigger,\n DrawerClose,\n DrawerPortal,\n DrawerBackdrop,\n DrawerViewport,\n DrawerPopup,\n DrawerContent,\n DrawerHeader,\n DrawerFooter,\n DrawerBody,\n DrawerTitle,\n DrawerDescription,\n DrawerProvider,\n DrawerIndent,\n DrawerIndentBackground,\n DrawerSwipeArea,\n DrawerInteractive,\n createDrawerHandle,\n};\n\nexport type {\n DrawerTriggerProps,\n DrawerCloseProps,\n DrawerBackdropProps,\n DrawerViewportProps,\n DrawerPopupProps,\n DrawerContentProps,\n DrawerTitleProps,\n DrawerDescriptionProps,\n};\n"],"names":["DrawerPrimitive"],"mappings":"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"}
1
+ {"version":3,"file":"drawer-D1m2faHU.js","sources":["../src/ds/components/Drawer/drawer.tsx"],"sourcesContent":["import { Drawer as DrawerPrimitive } from '@base-ui/react/drawer';\nimport { cva } from 'class-variance-authority';\nimport type { VariantProps } from 'class-variance-authority';\nimport { XIcon } from 'lucide-react';\nimport * as React from 'react';\n\nimport { Button } from '@/ds/components/Button';\nimport { cn } from '@/lib/utils';\n\n// Swipe/stack transforms live in drawer.css — unreadable as Tailwind arbitrary values.\nimport './drawer.css';\n\nexport type DrawerSide = 'top' | 'right' | 'bottom' | 'left';\n\nconst drawerBackdropVariants = cva('drawer-backdrop fixed inset-0 z-50', {\n variants: {\n overlay: {\n visible: 'bg-overlay backdrop-blur-xs',\n transparent: 'bg-transparent',\n none: 'hidden',\n },\n },\n defaultVariants: {\n overlay: 'visible',\n },\n});\n\nconst drawerViewportVariants = cva('fixed z-50 flex', {\n variants: {\n side: {\n top: 'items-start justify-center',\n bottom: 'items-end justify-center',\n left: 'items-stretch justify-start',\n right: 'items-stretch justify-end',\n },\n layout: {\n default: 'inset-0',\n floating: 'p-2 sm:p-3',\n floatingOverlay: 'inset-0 p-2 sm:p-3',\n },\n },\n compoundVariants: [\n {\n side: 'right',\n layout: 'floating',\n className: 'inset-y-0 right-0 w-[calc(32rem+1.5rem)] max-w-full sm:w-[calc(32rem+2rem)]',\n },\n {\n side: 'left',\n layout: 'floating',\n className: 'inset-y-0 left-0 w-[calc(32rem+1.5rem)] max-w-full sm:w-[calc(32rem+2rem)]',\n },\n {\n side: 'bottom',\n layout: 'floating',\n className: 'inset-x-0 bottom-0 h-[calc(85dvh+1.5rem)] max-h-full sm:h-[calc(85dvh+2rem)]',\n },\n {\n side: 'top',\n layout: 'floating',\n className: 'inset-x-0 top-0 h-[calc(85dvh+1.5rem)] max-h-full sm:h-[calc(85dvh+2rem)]',\n },\n ],\n defaultVariants: {\n side: 'bottom',\n layout: 'default',\n },\n});\n\n// `drawer-popup` hooks into drawer.css for swipe/stack transforms; `::after` dims under nested drawers.\nconst drawerPopupVariants = cva(\n cn(\n 'drawer-popup group/popup relative z-50 box-border flex [touch-action:auto] flex-col overflow-y-auto overscroll-contain will-change-transform outline-none',\n 'border-border1 bg-surface3 text-neutral5 shadow-dialog',\n 'data-[swiping]:select-none',\n \"after:pointer-events-none after:absolute after:inset-0 after:bg-transparent after:transition-[background-color] after:duration-[450ms] after:content-['']\",\n 'data-[nested-drawer-open]:after:bg-black/25',\n ),\n {\n variants: {\n side: {\n bottom: '',\n top: '',\n left: '',\n right: '',\n },\n variant: {\n default: '',\n floating: 'drawer-popup-floating pointer-events-auto rounded-lg border',\n },\n },\n compoundVariants: [\n {\n side: 'bottom',\n variant: 'default',\n className:\n 'h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full -mb-12 pb-12 rounded-t-xl border-x border-t',\n },\n {\n side: 'top',\n variant: 'default',\n className:\n 'h-[var(--drawer-height,auto)] max-h-[calc(85vh_+_3rem)] w-full -mt-12 pt-12 rounded-b-xl border-x border-b',\n },\n {\n side: 'left',\n variant: 'default',\n className: 'h-full w-[20rem] max-w-[85vw] rounded-r-xl border-y border-r',\n },\n {\n side: 'right',\n variant: 'default',\n className: 'h-full w-[20rem] max-w-[85vw] rounded-l-xl border-y border-l',\n },\n {\n side: ['left', 'right'],\n variant: 'floating',\n className:\n 'h-[calc(100dvh-1.5rem)] w-[32rem] max-w-[calc(100vw-1.5rem)] sm:h-[calc(100dvh-2rem)] sm:max-w-[calc(100vw-2rem)]',\n },\n {\n side: ['top', 'bottom'],\n variant: 'floating',\n className:\n 'max-h-[calc(85dvh-1.5rem)] w-[calc(100vw-1.5rem)] sm:max-h-[calc(85dvh-2rem)] sm:w-[calc(100vw-2rem)]',\n },\n ],\n defaultVariants: {\n side: 'bottom',\n variant: 'default',\n },\n },\n);\n\ntype DrawerBackdropVariantsProps = VariantProps<typeof drawerBackdropVariants>;\ntype DrawerViewportClassVariantsProps = VariantProps<typeof drawerViewportVariants>;\ntype DrawerPopupVariantsProps = VariantProps<typeof drawerPopupVariants>;\nexport type DrawerVariant = NonNullable<DrawerPopupVariantsProps['variant']>;\ntype DrawerViewportLayout = NonNullable<DrawerViewportClassVariantsProps['layout']>;\ntype DrawerViewportVariantsProps = Pick<DrawerViewportClassVariantsProps, 'side'> & {\n variant?: DrawerVariant;\n};\nexport type DrawerOverlay = 'auto' | NonNullable<DrawerBackdropVariantsProps['overlay']>;\n\n// `side` = anchor edge; Base UI's `swipeDirection` = dismissal gesture (bottom sheet swipes `down`).\nconst sideToSwipeDirection: Record<DrawerSide, 'up' | 'down' | 'left' | 'right'> = {\n top: 'up',\n bottom: 'down',\n left: 'left',\n right: 'right',\n};\n\ntype DrawerContextValue = {\n side: DrawerSide;\n variant: DrawerVariant;\n resolvedOverlay: NonNullable<DrawerBackdropVariantsProps['overlay']>;\n};\n\nconst resolveDrawerOverlay = (\n overlay: DrawerOverlay,\n variant: DrawerVariant,\n): NonNullable<DrawerBackdropVariantsProps['overlay']> => {\n if (overlay !== 'auto') {\n return overlay;\n }\n\n return variant === 'floating' ? 'none' : 'visible';\n};\n\nconst DrawerContext = React.createContext<DrawerContextValue>({\n side: 'bottom',\n variant: 'default',\n resolvedOverlay: 'visible',\n});\n\nconst useDrawerContext = () => React.useContext(DrawerContext);\n\nexport const useDrawerSide = () => useDrawerContext().side;\n\nconst resolveDrawerViewportLayout = (\n variant: DrawerVariant,\n overlay: NonNullable<DrawerBackdropVariantsProps['overlay']>,\n): DrawerViewportLayout => {\n if (variant !== 'floating') {\n return 'default';\n }\n\n return overlay === 'none' ? 'floating' : 'floatingOverlay';\n};\n\nexport type DrawerProps<Payload = unknown> = Omit<DrawerPrimitive.Root.Props<Payload>, 'swipeDirection'> & {\n /** Edge the drawer is anchored to. Defaults to `bottom`. */\n side?: DrawerSide;\n /** Visual treatment for the drawer panel. Defaults to `default`. */\n variant?: DrawerVariant;\n /** Backdrop behavior. `auto` renders a visible backdrop for default drawers and no backdrop for floating drawers. */\n overlay?: DrawerOverlay;\n};\n\nfunction Drawer<Payload = unknown>({\n side = 'bottom',\n variant = 'default',\n overlay = 'auto',\n modal,\n disablePointerDismissal,\n children,\n ...props\n}: DrawerProps<Payload>) {\n const resolvedOverlay = resolveDrawerOverlay(overlay, variant);\n const resolvedModal = modal ?? (resolvedOverlay === 'none' ? false : undefined);\n const resolvedDisablePointerDismissal = disablePointerDismissal ?? (resolvedOverlay === 'none' ? true : undefined);\n const contextValue = React.useMemo<DrawerContextValue>(\n () => ({ side, variant, resolvedOverlay }),\n [side, variant, resolvedOverlay],\n );\n\n return (\n <DrawerContext.Provider value={contextValue}>\n <DrawerPrimitive.Root\n swipeDirection={sideToSwipeDirection[side]}\n modal={resolvedModal}\n disablePointerDismissal={resolvedDisablePointerDismissal}\n {...props}\n >\n {children}\n </DrawerPrimitive.Root>\n </DrawerContext.Provider>\n );\n}\nDrawer.displayName = 'Drawer';\n\n// Generic (not `forwardRef`) so `handle` / `payload` stay type-safe on detached triggers.\ntype DrawerTriggerProps<Payload = unknown> = DrawerPrimitive.Trigger.Props<Payload> & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nfunction DrawerTrigger<Payload = unknown>({ asChild, children, ...props }: DrawerTriggerProps<Payload>) {\n const renderProps = asChild && React.isValidElement(children) ? { render: children as React.ReactElement } : {};\n\n return (\n <DrawerPrimitive.Trigger {...renderProps} {...props}>\n {asChild ? undefined : children}\n </DrawerPrimitive.Trigger>\n );\n}\nDrawerTrigger.displayName = 'DrawerTrigger';\n\ntype DrawerCloseProps = DrawerPrimitive.Close.Props & {\n /** @deprecated Use Base UI's native `render` prop instead for stronger composition typing. */\n asChild?: boolean;\n};\n\nconst DrawerClose = React.forwardRef<HTMLButtonElement, DrawerCloseProps>(({ asChild, children, ...props }, ref) => {\n const renderProps = asChild && React.isValidElement(children) ? { render: children as React.ReactElement } : {};\n\n return (\n <DrawerPrimitive.Close ref={ref} {...renderProps} {...props}>\n {asChild ? undefined : children}\n </DrawerPrimitive.Close>\n );\n});\nDrawerClose.displayName = 'DrawerClose';\n\nconst DrawerPortal = DrawerPrimitive.Portal;\nconst DrawerProvider = DrawerPrimitive.Provider;\nconst DrawerIndent = DrawerPrimitive.Indent;\nconst DrawerIndentBackground = DrawerPrimitive.IndentBackground;\nconst DrawerSwipeArea = DrawerPrimitive.SwipeArea;\nconst createDrawerHandle = DrawerPrimitive.createHandle;\n// Inner region where pointer drags select text / scroll instead of swiping the drawer closed.\nconst DrawerInteractive = DrawerPrimitive.Content;\n\ntype DrawerBackdropProps = Omit<DrawerPrimitive.Backdrop.Props, 'className'> & {\n className?: string;\n} & DrawerBackdropVariantsProps;\n\n// The `drawer-backdrop` class (drawer.css) fades the overlay with the swipe gesture.\nconst DrawerBackdrop = React.forwardRef<HTMLDivElement, DrawerBackdropProps>(\n ({ className, overlay, ...props }, ref) => {\n const { resolvedOverlay } = useDrawerContext();\n const resolvedBackdropOverlay = overlay ?? resolvedOverlay;\n\n return (\n <DrawerPrimitive.Backdrop\n ref={ref}\n data-slot=\"drawer-backdrop\"\n data-overlay={resolvedBackdropOverlay}\n className={cn(drawerBackdropVariants({ overlay: resolvedBackdropOverlay }), className)}\n {...props}\n />\n );\n },\n);\nDrawerBackdrop.displayName = 'DrawerBackdrop';\n\ntype DrawerViewportProps = Omit<DrawerPrimitive.Viewport.Props, 'className'> & {\n className?: string;\n} & DrawerViewportVariantsProps;\n\n// Keep the viewport pointer-interactive: Base UI wires native drag-to-dismiss to it.\n// Floating drawers without an overlay constrain the viewport so the page behind stays interactive.\n// Floating drawers with an overlay keep a full-screen viewport so overlay-start drags stay native.\nconst DrawerViewport = React.forwardRef<HTMLDivElement, DrawerViewportProps>(\n ({ className, side, variant, ...props }, ref) => {\n const context = useDrawerContext();\n const resolvedSide = side ?? context.side;\n const resolvedVariant = variant ?? context.variant;\n const layout = resolveDrawerViewportLayout(resolvedVariant, context.resolvedOverlay);\n\n return (\n <DrawerPrimitive.Viewport\n ref={ref}\n data-slot=\"drawer-viewport\"\n data-variant={resolvedVariant}\n className={cn(drawerViewportVariants({ side: resolvedSide, layout }), className)}\n {...props}\n />\n );\n },\n);\nDrawerViewport.displayName = 'DrawerViewport';\n\ntype DrawerPopupProps = Omit<DrawerPrimitive.Popup.Props, 'className'> & {\n className?: string;\n} & DrawerPopupVariantsProps;\n\nconst DrawerPopup = React.forwardRef<HTMLDivElement, DrawerPopupProps>(\n ({ className, side, variant, ...props }, ref) => {\n const context = useDrawerContext();\n const resolvedSide = side ?? context.side;\n const resolvedVariant = variant ?? context.variant;\n\n return (\n <DrawerPrimitive.Popup\n ref={ref}\n data-slot=\"drawer-popup\"\n data-variant={resolvedVariant}\n className={cn(drawerPopupVariants({ side: resolvedSide, variant: resolvedVariant }), className)}\n {...props}\n />\n );\n },\n);\nDrawerPopup.displayName = 'DrawerPopup';\n\n// Inner-content fade while a nested drawer covers the parent. Off the popup itself so border/shadow stay crisp.\nconst nestedFadeClass = cn(\n 'transition-opacity duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] motion-reduce:duration-0',\n 'group-data-[nested-drawer-open]/popup:opacity-0',\n);\n\nconst DrawerHandleBar = () => (\n <div\n aria-hidden\n data-slot=\"drawer-handle\"\n className={cn('mx-auto my-2 h-1 w-12 shrink-0 rounded-full bg-surface5', nestedFadeClass)}\n />\n);\nDrawerHandleBar.displayName = 'DrawerHandleBar';\n\ntype DrawerFloatingSideHandleProps = {\n side: DrawerSide;\n variant: DrawerVariant;\n};\n\nconst DrawerFloatingSideHandle = ({ side, variant }: DrawerFloatingSideHandleProps) => {\n if (variant !== 'floating' || (side !== 'left' && side !== 'right')) {\n return null;\n }\n\n return (\n <div\n aria-hidden\n data-slot=\"drawer-side-handle\"\n className={cn(\n 'absolute top-1/2 z-10 flex h-20 w-5 -translate-y-1/2 cursor-ew-resize touch-none items-center justify-center select-none lg:hidden',\n side === 'right' ? '-left-2' : '-right-2',\n )}\n >\n <div className=\"bg-surface5/80 h-10 w-1 rounded-full shadow-sm\" />\n </div>\n );\n};\nDrawerFloatingSideHandle.displayName = 'DrawerFloatingSideHandle';\n\ntype DrawerContentProps = Omit<DrawerPrimitive.Popup.Props, 'className' | 'children'> & {\n className?: string;\n children?: React.ReactNode;\n /** Shows the built-in top-right close button. Defaults to `true`. */\n showCloseButton?: boolean;\n} & Pick<DrawerPopupVariantsProps, 'variant'>;\n\n// Opinionated bundle: Portal + Backdrop + Viewport + Popup, with handle on top/bottom sheets.\n// Drop to the primitives for non-modal pages, custom portal targets, or chrome outside the popup.\nconst DrawerContent = React.forwardRef<HTMLDivElement, DrawerContentProps>(\n ({ className, children, variant, showCloseButton = true, ...props }, ref) => {\n const { side, variant: contextVariant, resolvedOverlay } = useDrawerContext();\n const resolvedVariant = variant ?? contextVariant;\n const showHandle = side === 'top' || side === 'bottom';\n\n return (\n <DrawerPortal>\n {resolvedOverlay !== 'none' && <DrawerBackdrop />}\n <DrawerViewport variant={resolvedVariant}>\n <DrawerPopup ref={ref} variant={resolvedVariant} className={className} {...props}>\n {showHandle && side === 'bottom' && <DrawerHandleBar />}\n <DrawerFloatingSideHandle side={side} variant={resolvedVariant} />\n <div data-slot=\"drawer-content\" className={cn('relative flex min-h-0 flex-1 flex-col', nestedFadeClass)}>\n {showCloseButton && <DrawerDefaultCloseButton />}\n {children}\n </div>\n {showHandle && side === 'top' && <DrawerHandleBar />}\n </DrawerPopup>\n </DrawerViewport>\n </DrawerPortal>\n );\n },\n);\nDrawerContent.displayName = 'DrawerContent';\n\nconst DrawerDefaultCloseButton = () => (\n <DrawerClose asChild>\n <Button type=\"button\" variant=\"ghost\" size=\"icon-sm\" className=\"absolute top-3 right-3 z-10\" aria-label=\"Close\">\n <XIcon />\n </Button>\n </DrawerClose>\n);\nDrawerDefaultCloseButton.displayName = 'DrawerDefaultCloseButton';\n\nconst DrawerHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n data-slot=\"drawer-header\"\n className={cn('flex flex-col gap-0.5 px-3 py-2.5 pr-12 text-left', className)}\n {...props}\n />\n);\nDrawerHeader.displayName = 'DrawerHeader';\n\nconst DrawerFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n data-slot=\"drawer-footer\"\n className={cn('mt-auto flex flex-col-reverse gap-1.5 px-3 py-2.5 sm:flex-row sm:justify-end', className)}\n {...props}\n />\n);\nDrawerFooter.displayName = 'DrawerFooter';\n\nconst DrawerBody = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (\n <div data-slot=\"drawer-body\" className={cn('flex-1 px-3 py-2.5', className)} {...props} />\n);\nDrawerBody.displayName = 'DrawerBody';\n\ntype DrawerTitleProps = Omit<DrawerPrimitive.Title.Props, 'className'> & {\n className?: string;\n};\n\nconst DrawerTitle = React.forwardRef<HTMLHeadingElement, DrawerTitleProps>(({ className, ...props }, ref) => (\n <DrawerPrimitive.Title ref={ref} className={cn('text-ui-md font-medium text-neutral6', className)} {...props} />\n));\nDrawerTitle.displayName = 'DrawerTitle';\n\ntype DrawerDescriptionProps = Omit<DrawerPrimitive.Description.Props, 'className'> & {\n className?: string;\n};\n\nconst DrawerDescription = React.forwardRef<HTMLParagraphElement, DrawerDescriptionProps>(\n ({ className, ...props }, ref) => (\n <DrawerPrimitive.Description ref={ref} className={cn('text-ui-sm text-neutral3', className)} {...props} />\n ),\n);\nDrawerDescription.displayName = 'DrawerDescription';\n\nexport {\n Drawer,\n DrawerTrigger,\n DrawerClose,\n DrawerPortal,\n DrawerBackdrop,\n DrawerViewport,\n DrawerPopup,\n DrawerContent,\n DrawerHeader,\n DrawerFooter,\n DrawerBody,\n DrawerTitle,\n DrawerDescription,\n DrawerProvider,\n DrawerIndent,\n DrawerIndentBackground,\n DrawerSwipeArea,\n DrawerInteractive,\n createDrawerHandle,\n};\n\nexport type {\n DrawerTriggerProps,\n DrawerCloseProps,\n DrawerBackdropProps,\n DrawerViewportProps,\n DrawerPopupProps,\n DrawerContentProps,\n DrawerTitleProps,\n DrawerDescriptionProps,\n};\n"],"names":["DrawerPrimitive"],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  'use strict';
2
2
 
3
- require('./focus.css');const jsxRuntime = require('react/jsx-runtime');
3
+ const jsxRuntime = require('react/jsx-runtime');
4
4
  const menu = require('@base-ui/react/menu');
5
5
  const lucideReact = require('lucide-react');
6
6
  const React = require('react');
7
7
  const primitives_floating = require('./primitives/floating.cjs.js');
8
- ;/* empty css */
9
8
  const primitives_menuItem = require('./primitives/menu-item.cjs.js');
10
9
  const primitives_portalContainer = require('./primitives/portal-container.cjs.js');
11
10
  const primitives_triggerButton = require('./primitives/trigger-button.cjs.js');
@@ -110,6 +109,7 @@ const DropdownMenuContent = React__namespace.forwardRef(
110
109
  ({
111
110
  className,
112
111
  container,
112
+ size = "default",
113
113
  align = "start",
114
114
  alignOffset = 0,
115
115
  side = "bottom",
@@ -144,7 +144,7 @@ const DropdownMenuContent = React__namespace.forwardRef(
144
144
  {
145
145
  ref,
146
146
  "data-slot": "dropdown-menu-content",
147
- className: utils_cn.cn(primitives_menuItem.menuPopupClass, className),
147
+ className: utils_cn.cn(primitives_menuItem.menuPopupClass, size === "sm" && "rounded-md p-0.5", className),
148
148
  ...props
149
149
  }
150
150
  ) }) });
@@ -152,7 +152,7 @@ const DropdownMenuContent = React__namespace.forwardRef(
152
152
  );
153
153
  DropdownMenuContent.displayName = "DropdownMenuContent";
154
154
  const DropdownMenuItem = React__namespace.forwardRef(
155
- ({ className, inset, variant = "default", onSelect, onClick, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
155
+ ({ className, inset, variant = "default", size = "default", onSelect, onClick, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
156
156
  menu.Menu.Item,
157
157
  {
158
158
  ref,
@@ -164,6 +164,7 @@ const DropdownMenuItem = React__namespace.forwardRef(
164
164
  },
165
165
  className: utils_cn.cn(
166
166
  variant === "destructive" ? primitives_menuItem.menuItemDestructiveClass : primitives_menuItem.menuItemClass,
167
+ size === "sm" && "h-form-xs gap-2 rounded-sm py-1 text-ui-xs leading-none",
167
168
  inset && primitives_menuItem.menuItemInsetClass,
168
169
  className
169
170
  ),
@@ -223,4 +224,4 @@ DropdownMenu.SubTrigger = DropdownMenuSubTrigger;
223
224
  DropdownMenu.RadioGroup = DropdownMenuRadioGroup;
224
225
 
225
226
  exports.DropdownMenu = DropdownMenu;
226
- //# sourceMappingURL=dropdown-menu-Bj9vR0Md.cjs.map
227
+ //# sourceMappingURL=dropdown-menu-Bfh5ROWe.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-menu-Bfh5ROWe.cjs","sources":["../src/ds/components/DropdownMenu/dropdown-menu.tsx"],"sourcesContent":["import { Menu as MenuPrimitive } from '@base-ui/react/menu';\nimport type { MenuPopupProps, MenuPositionerProps } from '@base-ui/react/menu';\nimport { CheckIcon, ChevronDown } from 'lucide-react';\nimport * as React from 'react';\nimport { FLOATING_POSITION_METHOD } from '@/ds/primitives/floating';\nimport {\n MENU_SIDE_OFFSET,\n menuItemCheckClass,\n menuItemClass,\n menuItemDestructiveClass,\n menuItemInsetClass,\n menuItemTrailingIconClass,\n menuLabelClass,\n menuPopupClass,\n menuPositionerClass,\n menuSeparatorClass,\n menuShortcutClass,\n} from '@/ds/primitives/menu-item';\nimport { usePortalContainer } from '@/ds/primitives/portal-container';\nimport { resolveTriggerRender } from '@/ds/primitives/trigger-button';\nimport type { TriggerButtonProps } from '@/ds/primitives/trigger-button';\nimport { cn } from '@/lib/utils';\n\nconst DropdownMenuRoot = MenuPrimitive.Root;\n\nconst DropdownMenuGroup = MenuPrimitive.Group;\n\nconst DropdownMenuPortal = MenuPrimitive.Portal;\n\nconst DropdownMenuSub = MenuPrimitive.SubmenuRoot;\n\nconst DropdownMenuRadioGroup = MenuPrimitive.RadioGroup;\n\nexport type DropdownMenuTriggerProps = Omit<MenuPrimitive.Trigger.Props, 'className'> & TriggerButtonProps;\n\n/**\n * The button that opens the menu. Renders a design-system `<Button>` by\n * default, so it takes Button's `variant` / `size` / `tooltip`. Pass `render`\n * to project the behavior onto your own element (then the look is yours).\n */\nconst DropdownMenuTrigger = React.forwardRef<HTMLButtonElement, DropdownMenuTriggerProps>(\n ({ className, asChild, render, children, variant, size, tooltip, ...props }, ref) => {\n const resolved = resolveTriggerRender({ render, asChild, children, variant, size, tooltip, className });\n\n return (\n <MenuPrimitive.Trigger ref={ref} className={resolved.className} render={resolved.render} {...props}>\n {resolved.children}\n </MenuPrimitive.Trigger>\n );\n },\n);\nDropdownMenuTrigger.displayName = 'DropdownMenuTrigger';\n\ntype DropdownMenuSubTriggerProps = MenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n};\n\nconst DropdownMenuSubTrigger = React.forwardRef<HTMLDivElement, DropdownMenuSubTriggerProps>(\n ({ className, inset, children, ...props }, ref) => (\n <MenuPrimitive.SubmenuTrigger\n ref={ref}\n className={cn(\n menuItemClass,\n 'data-[popup-open]:bg-neutral6/5 data-[popup-open]:text-neutral6',\n inset && menuItemInsetClass,\n className,\n )}\n {...props}\n >\n {children}\n <span className={cn(menuItemTrailingIconClass, 'opacity-50')}>\n <ChevronDown className=\"-rotate-90\" />\n </span>\n </MenuPrimitive.SubmenuTrigger>\n ),\n);\nDropdownMenuSubTrigger.displayName = 'DropdownMenuSubTrigger';\n\ntype DropdownMenuContentPositionerProps = Omit<MenuPositionerProps, keyof MenuPopupProps>;\n\ntype DropdownMenuSubContentProps = MenuPopupProps & DropdownMenuContentPositionerProps;\n\nconst DropdownMenuSubContent = React.forwardRef<HTMLDivElement, DropdownMenuSubContentProps>(\n (\n {\n className,\n align = 'start',\n alignOffset = -4,\n side = 'right',\n sideOffset = MENU_SIDE_OFFSET,\n anchor,\n positionMethod = FLOATING_POSITION_METHOD,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n collisionAvoidance,\n ...props\n },\n ref,\n ) => {\n // Default to the nearest SideDialog/Drawer popup so the submenu stays\n // interactive inside a modal drawer.\n const resolvedContainer = usePortalContainer();\n const positionerProps: DropdownMenuContentPositionerProps = {\n align,\n alignOffset,\n side,\n sideOffset,\n anchor,\n positionMethod,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n collisionAvoidance,\n };\n\n return (\n <MenuPrimitive.Portal container={resolvedContainer}>\n <MenuPrimitive.Positioner className={menuPositionerClass} {...positionerProps}>\n <MenuPrimitive.Popup\n ref={ref}\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(menuPopupClass, className)}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n );\n },\n);\nDropdownMenuSubContent.displayName = 'DropdownMenuSubContent';\n\ntype DropdownMenuContentProps = MenuPopupProps &\n DropdownMenuContentPositionerProps & {\n container?: HTMLElement;\n size?: 'default' | 'sm';\n };\n\nconst DropdownMenuContent = React.forwardRef<HTMLDivElement, DropdownMenuContentProps>(\n (\n {\n className,\n container,\n size = 'default',\n align = 'start',\n alignOffset = 0,\n side = 'bottom',\n sideOffset = MENU_SIDE_OFFSET,\n anchor,\n positionMethod = FLOATING_POSITION_METHOD,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n collisionAvoidance,\n ...props\n },\n ref,\n ) => {\n // Default to the nearest SideDialog/Drawer popup so the menu stays\n // interactive inside a modal drawer; an explicit `container` still wins.\n const resolvedContainer = usePortalContainer(container);\n const positionerProps: DropdownMenuContentPositionerProps = {\n align,\n alignOffset,\n side,\n sideOffset,\n anchor,\n positionMethod,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n collisionAvoidance,\n };\n\n return (\n <MenuPrimitive.Portal container={resolvedContainer}>\n <MenuPrimitive.Positioner className={menuPositionerClass} {...positionerProps}>\n <MenuPrimitive.Popup\n ref={ref}\n data-slot=\"dropdown-menu-content\"\n className={cn(menuPopupClass, size === 'sm' && 'rounded-md p-0.5', className)}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n );\n },\n);\nDropdownMenuContent.displayName = 'DropdownMenuContent';\n\ntype DropdownMenuItemProps = MenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n size?: 'default' | 'sm';\n /** Alias for `onClick`, kept for compatibility with the previous Radix API. */\n onSelect?: MenuPrimitive.Item.Props['onClick'];\n};\n\nconst DropdownMenuItem = React.forwardRef<HTMLDivElement, DropdownMenuItemProps>(\n ({ className, inset, variant = 'default', size = 'default', onSelect, onClick, ...props }, ref) => (\n <MenuPrimitive.Item\n ref={ref}\n data-inset={inset ? '' : undefined}\n data-variant={variant}\n onClick={event => {\n onClick?.(event);\n onSelect?.(event);\n }}\n className={cn(\n variant === 'destructive' ? menuItemDestructiveClass : menuItemClass,\n size === 'sm' && 'h-form-xs gap-2 rounded-sm py-1 text-ui-xs leading-none',\n inset && menuItemInsetClass,\n className,\n )}\n {...props}\n />\n ),\n);\nDropdownMenuItem.displayName = 'DropdownMenuItem';\n\nconst DropdownMenuCheckboxItem = React.forwardRef<HTMLDivElement, MenuPrimitive.CheckboxItem.Props>(\n ({ className, children, checked, ...props }, ref) => (\n <MenuPrimitive.CheckboxItem ref={ref} className={cn(menuItemClass, className)} checked={checked} {...props}>\n {children}\n <MenuPrimitive.CheckboxItemIndicator className={menuItemCheckClass}>\n <CheckIcon />\n </MenuPrimitive.CheckboxItemIndicator>\n </MenuPrimitive.CheckboxItem>\n ),\n);\nDropdownMenuCheckboxItem.displayName = 'DropdownMenuCheckboxItem';\n\nconst DropdownMenuRadioItem = React.forwardRef<HTMLDivElement, MenuPrimitive.RadioItem.Props>(\n ({ className, children, ...props }, ref) => (\n <MenuPrimitive.RadioItem ref={ref} className={cn(menuItemClass, className)} {...props}>\n {children}\n <MenuPrimitive.RadioItemIndicator className={menuItemCheckClass}>\n <CheckIcon />\n </MenuPrimitive.RadioItemIndicator>\n </MenuPrimitive.RadioItem>\n ),\n);\nDropdownMenuRadioItem.displayName = 'DropdownMenuRadioItem';\n\ntype DropdownMenuLabelProps = React.HTMLAttributes<HTMLDivElement> & {\n inset?: boolean;\n};\n\nconst DropdownMenuLabel = React.forwardRef<HTMLDivElement, DropdownMenuLabelProps>(\n ({ className, inset, ...props }, ref) => (\n <div ref={ref} className={cn(menuLabelClass, inset && menuItemInsetClass, className)} {...props} />\n ),\n);\nDropdownMenuLabel.displayName = 'DropdownMenuLabel';\n\nconst DropdownMenuSeparator = React.forwardRef<HTMLDivElement, MenuPrimitive.Separator.Props>(\n ({ className, ...props }, ref) => (\n <MenuPrimitive.Separator ref={ref} className={cn(menuSeparatorClass, className)} {...props} />\n ),\n);\nDropdownMenuSeparator.displayName = 'DropdownMenuSeparator';\n\nconst DropdownMenuShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {\n return <span className={cn(menuShortcutClass, className)} {...props} />;\n};\nDropdownMenuShortcut.displayName = 'DropdownMenuShortcut';\n\n/**\n *\n * Right now, these are the props mostly used for the menu\n * if we find out, consumers need more props, we can just extend it\n * with componentProps\n */\nfunction DropdownMenu({\n open,\n defaultOpen,\n onOpenChange,\n children,\n modal,\n}: {\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: MenuPrimitive.Root.Props['onOpenChange'];\n children: React.ReactNode;\n modal?: boolean;\n}) {\n return (\n <DropdownMenuRoot modal={modal} open={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n {children}\n </DropdownMenuRoot>\n );\n}\n\nDropdownMenu.Trigger = DropdownMenuTrigger;\nDropdownMenu.Content = DropdownMenuContent;\nDropdownMenu.Group = DropdownMenuGroup;\nDropdownMenu.Portal = DropdownMenuPortal;\nDropdownMenu.Item = DropdownMenuItem;\nDropdownMenu.CheckboxItem = DropdownMenuCheckboxItem;\nDropdownMenu.RadioItem = DropdownMenuRadioItem;\nDropdownMenu.Label = DropdownMenuLabel;\nDropdownMenu.Separator = DropdownMenuSeparator;\nDropdownMenu.Shortcut = DropdownMenuShortcut;\nDropdownMenu.Sub = DropdownMenuSub;\nDropdownMenu.SubContent = DropdownMenuSubContent;\nDropdownMenu.SubTrigger = DropdownMenuSubTrigger;\nDropdownMenu.RadioGroup = DropdownMenuRadioGroup;\n\nexport { DropdownMenu };\n"],"names":["MenuPrimitive","React","resolveTriggerRender","jsx","jsxs","cn","menuItemClass","menuItemInsetClass","menuItemTrailingIconClass","ChevronDown","MENU_SIDE_OFFSET","FLOATING_POSITION_METHOD","usePortalContainer","menuPositionerClass","menuPopupClass","menuItemDestructiveClass","menuItemCheckClass","CheckIcon","menuLabelClass","menuSeparatorClass","menuShortcutClass"],"mappings":"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"}
@@ -3,7 +3,6 @@ import { Menu } from '@base-ui/react/menu';
3
3
  import { ChevronDown, CheckIcon } from 'lucide-react';
4
4
  import * as React from 'react';
5
5
  import { FLOATING_POSITION_METHOD } from './primitives/floating.es.js';
6
- import './focus.css';/* empty css */
7
6
  import { menuItemTrailingIconClass, menuItemInsetClass, menuItemClass, MENU_SIDE_OFFSET, menuPositionerClass, menuPopupClass, menuItemDestructiveClass, menuItemCheckClass, menuLabelClass, menuSeparatorClass, menuShortcutClass } from './primitives/menu-item.es.js';
8
7
  import { usePortalContainer } from './primitives/portal-container.es.js';
9
8
  import { resolveTriggerRender } from './primitives/trigger-button.es.js';
@@ -89,6 +88,7 @@ const DropdownMenuContent = React.forwardRef(
89
88
  ({
90
89
  className,
91
90
  container,
91
+ size = "default",
92
92
  align = "start",
93
93
  alignOffset = 0,
94
94
  side = "bottom",
@@ -123,7 +123,7 @@ const DropdownMenuContent = React.forwardRef(
123
123
  {
124
124
  ref,
125
125
  "data-slot": "dropdown-menu-content",
126
- className: cn(menuPopupClass, className),
126
+ className: cn(menuPopupClass, size === "sm" && "rounded-md p-0.5", className),
127
127
  ...props
128
128
  }
129
129
  ) }) });
@@ -131,7 +131,7 @@ const DropdownMenuContent = React.forwardRef(
131
131
  );
132
132
  DropdownMenuContent.displayName = "DropdownMenuContent";
133
133
  const DropdownMenuItem = React.forwardRef(
134
- ({ className, inset, variant = "default", onSelect, onClick, ...props }, ref) => /* @__PURE__ */ jsx(
134
+ ({ className, inset, variant = "default", size = "default", onSelect, onClick, ...props }, ref) => /* @__PURE__ */ jsx(
135
135
  Menu.Item,
136
136
  {
137
137
  ref,
@@ -143,6 +143,7 @@ const DropdownMenuItem = React.forwardRef(
143
143
  },
144
144
  className: cn(
145
145
  variant === "destructive" ? menuItemDestructiveClass : menuItemClass,
146
+ size === "sm" && "h-form-xs gap-2 rounded-sm py-1 text-ui-xs leading-none",
146
147
  inset && menuItemInsetClass,
147
148
  className
148
149
  ),
@@ -202,4 +203,4 @@ DropdownMenu.SubTrigger = DropdownMenuSubTrigger;
202
203
  DropdownMenu.RadioGroup = DropdownMenuRadioGroup;
203
204
 
204
205
  export { DropdownMenu as D };
205
- //# sourceMappingURL=dropdown-menu-GAD50kMK.js.map
206
+ //# sourceMappingURL=dropdown-menu-C853KwJJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-menu-C853KwJJ.js","sources":["../src/ds/components/DropdownMenu/dropdown-menu.tsx"],"sourcesContent":["import { Menu as MenuPrimitive } from '@base-ui/react/menu';\nimport type { MenuPopupProps, MenuPositionerProps } from '@base-ui/react/menu';\nimport { CheckIcon, ChevronDown } from 'lucide-react';\nimport * as React from 'react';\nimport { FLOATING_POSITION_METHOD } from '@/ds/primitives/floating';\nimport {\n MENU_SIDE_OFFSET,\n menuItemCheckClass,\n menuItemClass,\n menuItemDestructiveClass,\n menuItemInsetClass,\n menuItemTrailingIconClass,\n menuLabelClass,\n menuPopupClass,\n menuPositionerClass,\n menuSeparatorClass,\n menuShortcutClass,\n} from '@/ds/primitives/menu-item';\nimport { usePortalContainer } from '@/ds/primitives/portal-container';\nimport { resolveTriggerRender } from '@/ds/primitives/trigger-button';\nimport type { TriggerButtonProps } from '@/ds/primitives/trigger-button';\nimport { cn } from '@/lib/utils';\n\nconst DropdownMenuRoot = MenuPrimitive.Root;\n\nconst DropdownMenuGroup = MenuPrimitive.Group;\n\nconst DropdownMenuPortal = MenuPrimitive.Portal;\n\nconst DropdownMenuSub = MenuPrimitive.SubmenuRoot;\n\nconst DropdownMenuRadioGroup = MenuPrimitive.RadioGroup;\n\nexport type DropdownMenuTriggerProps = Omit<MenuPrimitive.Trigger.Props, 'className'> & TriggerButtonProps;\n\n/**\n * The button that opens the menu. Renders a design-system `<Button>` by\n * default, so it takes Button's `variant` / `size` / `tooltip`. Pass `render`\n * to project the behavior onto your own element (then the look is yours).\n */\nconst DropdownMenuTrigger = React.forwardRef<HTMLButtonElement, DropdownMenuTriggerProps>(\n ({ className, asChild, render, children, variant, size, tooltip, ...props }, ref) => {\n const resolved = resolveTriggerRender({ render, asChild, children, variant, size, tooltip, className });\n\n return (\n <MenuPrimitive.Trigger ref={ref} className={resolved.className} render={resolved.render} {...props}>\n {resolved.children}\n </MenuPrimitive.Trigger>\n );\n },\n);\nDropdownMenuTrigger.displayName = 'DropdownMenuTrigger';\n\ntype DropdownMenuSubTriggerProps = MenuPrimitive.SubmenuTrigger.Props & {\n inset?: boolean;\n};\n\nconst DropdownMenuSubTrigger = React.forwardRef<HTMLDivElement, DropdownMenuSubTriggerProps>(\n ({ className, inset, children, ...props }, ref) => (\n <MenuPrimitive.SubmenuTrigger\n ref={ref}\n className={cn(\n menuItemClass,\n 'data-[popup-open]:bg-neutral6/5 data-[popup-open]:text-neutral6',\n inset && menuItemInsetClass,\n className,\n )}\n {...props}\n >\n {children}\n <span className={cn(menuItemTrailingIconClass, 'opacity-50')}>\n <ChevronDown className=\"-rotate-90\" />\n </span>\n </MenuPrimitive.SubmenuTrigger>\n ),\n);\nDropdownMenuSubTrigger.displayName = 'DropdownMenuSubTrigger';\n\ntype DropdownMenuContentPositionerProps = Omit<MenuPositionerProps, keyof MenuPopupProps>;\n\ntype DropdownMenuSubContentProps = MenuPopupProps & DropdownMenuContentPositionerProps;\n\nconst DropdownMenuSubContent = React.forwardRef<HTMLDivElement, DropdownMenuSubContentProps>(\n (\n {\n className,\n align = 'start',\n alignOffset = -4,\n side = 'right',\n sideOffset = MENU_SIDE_OFFSET,\n anchor,\n positionMethod = FLOATING_POSITION_METHOD,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n collisionAvoidance,\n ...props\n },\n ref,\n ) => {\n // Default to the nearest SideDialog/Drawer popup so the submenu stays\n // interactive inside a modal drawer.\n const resolvedContainer = usePortalContainer();\n const positionerProps: DropdownMenuContentPositionerProps = {\n align,\n alignOffset,\n side,\n sideOffset,\n anchor,\n positionMethod,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n collisionAvoidance,\n };\n\n return (\n <MenuPrimitive.Portal container={resolvedContainer}>\n <MenuPrimitive.Positioner className={menuPositionerClass} {...positionerProps}>\n <MenuPrimitive.Popup\n ref={ref}\n data-slot=\"dropdown-menu-sub-content\"\n className={cn(menuPopupClass, className)}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n );\n },\n);\nDropdownMenuSubContent.displayName = 'DropdownMenuSubContent';\n\ntype DropdownMenuContentProps = MenuPopupProps &\n DropdownMenuContentPositionerProps & {\n container?: HTMLElement;\n size?: 'default' | 'sm';\n };\n\nconst DropdownMenuContent = React.forwardRef<HTMLDivElement, DropdownMenuContentProps>(\n (\n {\n className,\n container,\n size = 'default',\n align = 'start',\n alignOffset = 0,\n side = 'bottom',\n sideOffset = MENU_SIDE_OFFSET,\n anchor,\n positionMethod = FLOATING_POSITION_METHOD,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n collisionAvoidance,\n ...props\n },\n ref,\n ) => {\n // Default to the nearest SideDialog/Drawer popup so the menu stays\n // interactive inside a modal drawer; an explicit `container` still wins.\n const resolvedContainer = usePortalContainer(container);\n const positionerProps: DropdownMenuContentPositionerProps = {\n align,\n alignOffset,\n side,\n sideOffset,\n anchor,\n positionMethod,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n collisionAvoidance,\n };\n\n return (\n <MenuPrimitive.Portal container={resolvedContainer}>\n <MenuPrimitive.Positioner className={menuPositionerClass} {...positionerProps}>\n <MenuPrimitive.Popup\n ref={ref}\n data-slot=\"dropdown-menu-content\"\n className={cn(menuPopupClass, size === 'sm' && 'rounded-md p-0.5', className)}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPrimitive.Portal>\n );\n },\n);\nDropdownMenuContent.displayName = 'DropdownMenuContent';\n\ntype DropdownMenuItemProps = MenuPrimitive.Item.Props & {\n inset?: boolean;\n variant?: 'default' | 'destructive';\n size?: 'default' | 'sm';\n /** Alias for `onClick`, kept for compatibility with the previous Radix API. */\n onSelect?: MenuPrimitive.Item.Props['onClick'];\n};\n\nconst DropdownMenuItem = React.forwardRef<HTMLDivElement, DropdownMenuItemProps>(\n ({ className, inset, variant = 'default', size = 'default', onSelect, onClick, ...props }, ref) => (\n <MenuPrimitive.Item\n ref={ref}\n data-inset={inset ? '' : undefined}\n data-variant={variant}\n onClick={event => {\n onClick?.(event);\n onSelect?.(event);\n }}\n className={cn(\n variant === 'destructive' ? menuItemDestructiveClass : menuItemClass,\n size === 'sm' && 'h-form-xs gap-2 rounded-sm py-1 text-ui-xs leading-none',\n inset && menuItemInsetClass,\n className,\n )}\n {...props}\n />\n ),\n);\nDropdownMenuItem.displayName = 'DropdownMenuItem';\n\nconst DropdownMenuCheckboxItem = React.forwardRef<HTMLDivElement, MenuPrimitive.CheckboxItem.Props>(\n ({ className, children, checked, ...props }, ref) => (\n <MenuPrimitive.CheckboxItem ref={ref} className={cn(menuItemClass, className)} checked={checked} {...props}>\n {children}\n <MenuPrimitive.CheckboxItemIndicator className={menuItemCheckClass}>\n <CheckIcon />\n </MenuPrimitive.CheckboxItemIndicator>\n </MenuPrimitive.CheckboxItem>\n ),\n);\nDropdownMenuCheckboxItem.displayName = 'DropdownMenuCheckboxItem';\n\nconst DropdownMenuRadioItem = React.forwardRef<HTMLDivElement, MenuPrimitive.RadioItem.Props>(\n ({ className, children, ...props }, ref) => (\n <MenuPrimitive.RadioItem ref={ref} className={cn(menuItemClass, className)} {...props}>\n {children}\n <MenuPrimitive.RadioItemIndicator className={menuItemCheckClass}>\n <CheckIcon />\n </MenuPrimitive.RadioItemIndicator>\n </MenuPrimitive.RadioItem>\n ),\n);\nDropdownMenuRadioItem.displayName = 'DropdownMenuRadioItem';\n\ntype DropdownMenuLabelProps = React.HTMLAttributes<HTMLDivElement> & {\n inset?: boolean;\n};\n\nconst DropdownMenuLabel = React.forwardRef<HTMLDivElement, DropdownMenuLabelProps>(\n ({ className, inset, ...props }, ref) => (\n <div ref={ref} className={cn(menuLabelClass, inset && menuItemInsetClass, className)} {...props} />\n ),\n);\nDropdownMenuLabel.displayName = 'DropdownMenuLabel';\n\nconst DropdownMenuSeparator = React.forwardRef<HTMLDivElement, MenuPrimitive.Separator.Props>(\n ({ className, ...props }, ref) => (\n <MenuPrimitive.Separator ref={ref} className={cn(menuSeparatorClass, className)} {...props} />\n ),\n);\nDropdownMenuSeparator.displayName = 'DropdownMenuSeparator';\n\nconst DropdownMenuShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {\n return <span className={cn(menuShortcutClass, className)} {...props} />;\n};\nDropdownMenuShortcut.displayName = 'DropdownMenuShortcut';\n\n/**\n *\n * Right now, these are the props mostly used for the menu\n * if we find out, consumers need more props, we can just extend it\n * with componentProps\n */\nfunction DropdownMenu({\n open,\n defaultOpen,\n onOpenChange,\n children,\n modal,\n}: {\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: MenuPrimitive.Root.Props['onOpenChange'];\n children: React.ReactNode;\n modal?: boolean;\n}) {\n return (\n <DropdownMenuRoot modal={modal} open={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n {children}\n </DropdownMenuRoot>\n );\n}\n\nDropdownMenu.Trigger = DropdownMenuTrigger;\nDropdownMenu.Content = DropdownMenuContent;\nDropdownMenu.Group = DropdownMenuGroup;\nDropdownMenu.Portal = DropdownMenuPortal;\nDropdownMenu.Item = DropdownMenuItem;\nDropdownMenu.CheckboxItem = DropdownMenuCheckboxItem;\nDropdownMenu.RadioItem = DropdownMenuRadioItem;\nDropdownMenu.Label = DropdownMenuLabel;\nDropdownMenu.Separator = DropdownMenuSeparator;\nDropdownMenu.Shortcut = DropdownMenuShortcut;\nDropdownMenu.Sub = DropdownMenuSub;\nDropdownMenu.SubContent = DropdownMenuSubContent;\nDropdownMenu.SubTrigger = DropdownMenuSubTrigger;\nDropdownMenu.RadioGroup = DropdownMenuRadioGroup;\n\nexport { DropdownMenu };\n"],"names":["MenuPrimitive"],"mappings":";;;;;;;;;;AAuBA,MAAM,mBAAmBA,IAAA,CAAc,IAAA;AAEvC,MAAM,oBAAoBA,IAAA,CAAc,KAAA;AAExC,MAAM,qBAAqBA,IAAA,CAAc,MAAA;AAEzC,MAAM,kBAAkBA,IAAA,CAAc,WAAA;AAEtC,MAAM,yBAAyBA,IAAA,CAAc,UAAA;AAS7C,MAAM,sBAAsB,KAAA,CAAM,UAAA;AAAA,EAChC,CAAC,EAAE,SAAA,EAAW,OAAA,EAAS,MAAA,EAAQ,QAAA,EAAU,OAAA,EAAS,IAAA,EAAM,OAAA,EAAS,GAAG,KAAA,EAAM,EAAG,GAAA,KAAQ;AACnF,IAAA,MAAM,QAAA,GAAW,oBAAA,CAAqB,EAAE,MAAA,EAAQ,OAAA,EAAS,UAAU,OAAA,EAAS,IAAA,EAAM,OAAA,EAAS,SAAA,EAAW,CAAA;AAEtG,IAAA,uBACE,GAAA,CAACA,IAAA,CAAc,OAAA,EAAd,EAAsB,KAAU,SAAA,EAAW,QAAA,CAAS,SAAA,EAAW,MAAA,EAAQ,QAAA,CAAS,MAAA,EAAS,GAAG,KAAA,EAC1F,mBAAS,QAAA,EACZ,CAAA;AAAA,EAEJ;AACF,CAAA;AACA,mBAAA,CAAoB,WAAA,GAAc,qBAAA;AAMlC,MAAM,yBAAyB,KAAA,CAAM,UAAA;AAAA,EACnC,CAAC,EAAE,SAAA,EAAW,KAAA,EAAO,UAAU,GAAG,KAAA,IAAS,GAAA,qBACzC,IAAA;AAAA,IAACA,IAAA,CAAc,cAAA;AAAA,IAAd;AAAA,MACC,GAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,aAAA;AAAA,QACA,iEAAA;AAAA,QACA,KAAA,IAAS,kBAAA;AAAA,QACT;AAAA,OACF;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,QAAA;AAAA,wBACD,GAAA,CAAC,MAAA,EAAA,EAAK,SAAA,EAAW,EAAA,CAAG,yBAAA,EAA2B,YAAY,CAAA,EACzD,QAAA,kBAAA,GAAA,CAAC,WAAA,EAAA,EAAY,SAAA,EAAU,YAAA,EAAa,CAAA,EACtC;AAAA;AAAA;AAAA;AAGN,CAAA;AACA,sBAAA,CAAuB,WAAA,GAAc,wBAAA;AAMrC,MAAM,yBAAyB,KAAA,CAAM,UAAA;AAAA,EACnC,CACE;AAAA,IACE,SAAA;AAAA,IACA,KAAA,GAAQ,OAAA;AAAA,IACR,WAAA,GAAc,EAAA;AAAA,IACd,IAAA,GAAO,OAAA;AAAA,IACP,UAAA,GAAa,gBAAA;AAAA,IACb,MAAA;AAAA,IACA,cAAA,GAAiB,wBAAA;AAAA,IACjB,iBAAA;AAAA,IACA,gBAAA;AAAA,IACA,MAAA;AAAA,IACA,YAAA;AAAA,IACA,qBAAA;AAAA,IACA,kBAAA;AAAA,IACA,GAAG;AAAA,KAEL,GAAA,KACG;AAGH,IAAA,MAAM,oBAAoB,kBAAA,EAAmB;AAC7C,IAAA,MAAM,eAAA,GAAsD;AAAA,MAC1D,KAAA;AAAA,MACA,WAAA;AAAA,MACA,IAAA;AAAA,MACA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,cAAA;AAAA,MACA,iBAAA;AAAA,MACA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,YAAA;AAAA,MACA,qBAAA;AAAA,MACA;AAAA,KACF;AAEA,IAAA,uBACE,GAAA,CAACA,IAAA,CAAc,MAAA,EAAd,EAAqB,SAAA,EAAW,iBAAA,EAC/B,QAAA,kBAAA,GAAA,CAACA,IAAA,CAAc,UAAA,EAAd,EAAyB,SAAA,EAAW,mBAAA,EAAsB,GAAG,eAAA,EAC5D,QAAA,kBAAA,GAAA;AAAA,MAACA,IAAA,CAAc,KAAA;AAAA,MAAd;AAAA,QACC,GAAA;AAAA,QACA,WAAA,EAAU,2BAAA;AAAA,QACV,SAAA,EAAW,EAAA,CAAG,cAAA,EAAgB,SAAS,CAAA;AAAA,QACtC,GAAG;AAAA;AAAA,OAER,CAAA,EACF,CAAA;AAAA,EAEJ;AACF,CAAA;AACA,sBAAA,CAAuB,WAAA,GAAc,wBAAA;AAQrC,MAAM,sBAAsB,KAAA,CAAM,UAAA;AAAA,EAChC,CACE;AAAA,IACE,SAAA;AAAA,IACA,SAAA;AAAA,IACA,IAAA,GAAO,SAAA;AAAA,IACP,KAAA,GAAQ,OAAA;AAAA,IACR,WAAA,GAAc,CAAA;AAAA,IACd,IAAA,GAAO,QAAA;AAAA,IACP,UAAA,GAAa,gBAAA;AAAA,IACb,MAAA;AAAA,IACA,cAAA,GAAiB,wBAAA;AAAA,IACjB,iBAAA;AAAA,IACA,gBAAA;AAAA,IACA,MAAA;AAAA,IACA,YAAA;AAAA,IACA,qBAAA;AAAA,IACA,kBAAA;AAAA,IACA,GAAG;AAAA,KAEL,GAAA,KACG;AAGH,IAAA,MAAM,iBAAA,GAAoB,mBAAmB,SAAS,CAAA;AACtD,IAAA,MAAM,eAAA,GAAsD;AAAA,MAC1D,KAAA;AAAA,MACA,WAAA;AAAA,MACA,IAAA;AAAA,MACA,UAAA;AAAA,MACA,MAAA;AAAA,MACA,cAAA;AAAA,MACA,iBAAA;AAAA,MACA,gBAAA;AAAA,MACA,MAAA;AAAA,MACA,YAAA;AAAA,MACA,qBAAA;AAAA,MACA;AAAA,KACF;AAEA,IAAA,uBACE,GAAA,CAACA,IAAA,CAAc,MAAA,EAAd,EAAqB,SAAA,EAAW,iBAAA,EAC/B,QAAA,kBAAA,GAAA,CAACA,IAAA,CAAc,UAAA,EAAd,EAAyB,SAAA,EAAW,mBAAA,EAAsB,GAAG,eAAA,EAC5D,QAAA,kBAAA,GAAA;AAAA,MAACA,IAAA,CAAc,KAAA;AAAA,MAAd;AAAA,QACC,GAAA;AAAA,QACA,WAAA,EAAU,uBAAA;AAAA,QACV,WAAW,EAAA,CAAG,cAAA,EAAgB,IAAA,KAAS,IAAA,IAAQ,oBAAoB,SAAS,CAAA;AAAA,QAC3E,GAAG;AAAA;AAAA,OAER,CAAA,EACF,CAAA;AAAA,EAEJ;AACF,CAAA;AACA,mBAAA,CAAoB,WAAA,GAAc,qBAAA;AAUlC,MAAM,mBAAmB,KAAA,CAAM,UAAA;AAAA,EAC7B,CAAC,EAAE,SAAA,EAAW,KAAA,EAAO,OAAA,GAAU,SAAA,EAAW,IAAA,GAAO,SAAA,EAAW,QAAA,EAAU,OAAA,EAAS,GAAG,KAAA,IAAS,GAAA,qBACzF,GAAA;AAAA,IAACA,IAAA,CAAc,IAAA;AAAA,IAAd;AAAA,MACC,GAAA;AAAA,MACA,YAAA,EAAY,QAAQ,EAAA,GAAK,MAAA;AAAA,MACzB,cAAA,EAAc,OAAA;AAAA,MACd,SAAS,CAAA,KAAA,KAAS;AAChB,QAAA,OAAA,GAAU,KAAK,CAAA;AACf,QAAA,QAAA,GAAW,KAAK,CAAA;AAAA,MAClB,CAAA;AAAA,MACA,SAAA,EAAW,EAAA;AAAA,QACT,OAAA,KAAY,gBAAgB,wBAAA,GAA2B,aAAA;AAAA,QACvD,SAAS,IAAA,IAAQ,yDAAA;AAAA,QACjB,KAAA,IAAS,kBAAA;AAAA,QACT;AAAA,OACF;AAAA,MACC,GAAG;AAAA;AAAA;AAGV,CAAA;AACA,gBAAA,CAAiB,WAAA,GAAc,kBAAA;AAE/B,MAAM,2BAA2B,KAAA,CAAM,UAAA;AAAA,EACrC,CAAC,EAAE,SAAA,EAAW,QAAA,EAAU,SAAS,GAAG,KAAA,IAAS,GAAA,qBAC3C,IAAA,CAACA,KAAc,YAAA,EAAd,EAA2B,KAAU,SAAA,EAAW,EAAA,CAAG,eAAe,SAAS,CAAA,EAAG,OAAA,EAAmB,GAAG,KAAA,EAClG,QAAA,EAAA;AAAA,IAAA,QAAA;AAAA,oBACD,GAAA,CAACA,KAAc,qBAAA,EAAd,EAAoC,WAAW,kBAAA,EAC9C,QAAA,kBAAA,GAAA,CAAC,aAAU,CAAA,EACb;AAAA,GAAA,EACF;AAEJ,CAAA;AACA,wBAAA,CAAyB,WAAA,GAAc,0BAAA;AAEvC,MAAM,wBAAwB,KAAA,CAAM,UAAA;AAAA,EAClC,CAAC,EAAE,SAAA,EAAW,UAAU,GAAG,KAAA,IAAS,GAAA,qBAClC,IAAA,CAACA,KAAc,SAAA,EAAd,EAAwB,KAAU,SAAA,EAAW,EAAA,CAAG,eAAe,SAAS,CAAA,EAAI,GAAG,KAAA,EAC7E,QAAA,EAAA;AAAA,IAAA,QAAA;AAAA,oBACD,GAAA,CAACA,KAAc,kBAAA,EAAd,EAAiC,WAAW,kBAAA,EAC3C,QAAA,kBAAA,GAAA,CAAC,aAAU,CAAA,EACb;AAAA,GAAA,EACF;AAEJ,CAAA;AACA,qBAAA,CAAsB,WAAA,GAAc,uBAAA;AAMpC,MAAM,oBAAoB,KAAA,CAAM,UAAA;AAAA,EAC9B,CAAC,EAAE,SAAA,EAAW,OAAO,GAAG,KAAA,IAAS,GAAA,qBAC/B,GAAA,CAAC,SAAI,GAAA,EAAU,SAAA,EAAW,GAAG,cAAA,EAAgB,KAAA,IAAS,oBAAoB,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO;AAErG,CAAA;AACA,iBAAA,CAAkB,WAAA,GAAc,mBAAA;AAEhC,MAAM,wBAAwB,KAAA,CAAM,UAAA;AAAA,EAClC,CAAC,EAAE,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,wBACxB,GAAA,CAACA,IAAA,CAAc,SAAA,EAAd,EAAwB,KAAU,SAAA,EAAW,EAAA,CAAG,oBAAoB,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO;AAEhG,CAAA;AACA,qBAAA,CAAsB,WAAA,GAAc,uBAAA;AAEpC,MAAM,uBAAuB,CAAC,EAAE,SAAA,EAAW,GAAG,OAAM,KAA6C;AAC/F,EAAA,uBAAO,GAAA,CAAC,UAAK,SAAA,EAAW,EAAA,CAAG,mBAAmB,SAAS,CAAA,EAAI,GAAG,KAAA,EAAO,CAAA;AACvE,CAAA;AACA,oBAAA,CAAqB,WAAA,GAAc,sBAAA;AAQnC,SAAS,YAAA,CAAa;AAAA,EACpB,IAAA;AAAA,EACA,WAAA;AAAA,EACA,YAAA;AAAA,EACA,QAAA;AAAA,EACA;AACF,CAAA,EAMG;AACD,EAAA,2BACG,gBAAA,EAAA,EAAiB,KAAA,EAAc,IAAA,EAAY,WAAA,EAA0B,cACnE,QAAA,EACH,CAAA;AAEJ;AAEA,YAAA,CAAa,OAAA,GAAU,mBAAA;AACvB,YAAA,CAAa,OAAA,GAAU,mBAAA;AACvB,YAAA,CAAa,KAAA,GAAQ,iBAAA;AACrB,YAAA,CAAa,MAAA,GAAS,kBAAA;AACtB,YAAA,CAAa,IAAA,GAAO,gBAAA;AACpB,YAAA,CAAa,YAAA,GAAe,wBAAA;AAC5B,YAAA,CAAa,SAAA,GAAY,qBAAA;AACzB,YAAA,CAAa,KAAA,GAAQ,iBAAA;AACrB,YAAA,CAAa,SAAA,GAAY,qBAAA;AACzB,YAAA,CAAa,QAAA,GAAW,oBAAA;AACxB,YAAA,CAAa,GAAA,GAAM,eAAA;AACnB,YAAA,CAAa,UAAA,GAAa,sBAAA;AAC1B,YAAA,CAAa,UAAA,GAAa,sBAAA;AAC1B,YAAA,CAAa,UAAA,GAAa,sBAAA;;;;"}
@@ -5,9 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const jsxRuntime = require('react/jsx-runtime');
6
6
  const ee_signals_components_entityIndexModel = require('./entity-index-model.cjs.js');
7
7
  const Badge = require('../../../Badge-B-LKnrNk.cjs');
8
- const dataList = require('../../../data-list-BSezaRoI.cjs');
9
- require('react');
10
- require('../../../keyboard/keyboard-shortcuts-context.cjs.js');
8
+ const dataList = require('../../../data-list-4_cVlINT.cjs');
11
9
 
12
10
  const columns = "minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)";
13
11
  function Status({ entity }) {
@@ -1 +1 @@
1
- {"version":3,"file":"entity-index-list.cjs.js","sources":["../../../../src/ee/signals/components/entity-index-list.tsx"],"sourcesContent":["import type { ThemeLearningEntity } from '@mastra/client-js';\n\nimport { entityIndexMetadata, entityStatusLabel } from './entity-index-model';\nimport { Badge } from '@/ds/components/Badge';\nimport { DataList } from '@/ds/components/DataList';\nimport type { LinkComponent } from '@/ds/types/link-component';\n\nconst columns = 'minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)';\n\nexport interface EntityIndexListProps {\n entities: readonly ThemeLearningEntity[];\n hasSearch: boolean;\n getEntityHref: (entity: ThemeLearningEntity) => string;\n LinkComponent: LinkComponent;\n}\n\nfunction Status({ entity }: { entity: ThemeLearningEntity }) {\n const label = entityStatusLabel(entity.status);\n const variant = entity.status === 'ready' ? 'green' : entity.status === 'processing' ? 'blue' : 'neutral';\n return (\n <Badge variant={variant} size=\"sm\" indicator={entity.status === undefined ? undefined : 'dot'}>\n {label}\n </Badge>\n );\n}\n\nexport function EntityIndexList({ entities, hasSearch, getEntityHref, LinkComponent }: EntityIndexListProps) {\n return (\n <section aria-label=\"Trace Intelligence entities\" className=\"min-h-0\">\n <DataList columns={columns} fit=\"container\">\n <DataList.Top>\n <DataList.TopCell>Entity</DataList.TopCell>\n <DataList.TopCell>Traces</DataList.TopCell>\n <DataList.TopCell>Signals set</DataList.TopCell>\n <DataList.TopCell>Status</DataList.TopCell>\n <DataList.TopCell>Updated</DataList.TopCell>\n </DataList.Top>\n {entities.length === 0 && hasSearch ? <DataList.NoMatch message=\"No entities match your search\" /> : null}\n {entities.map(entity => {\n const metadata = entityIndexMetadata(entity);\n return (\n <DataList.RowLink\n key={`${entity.entityType}:${entity.entityId}`}\n to={getEntityHref(entity)}\n LinkComponent={LinkComponent}\n className=\"min-w-0\"\n >\n <DataList.Cell className=\"min-w-0 overflow-visible text-left\">\n <span className=\"sr-only\">Open entity {entity.entityId}</span>\n <span aria-hidden=\"true\" className=\"block overflow-clip text-ellipsis whitespace-nowrap\">\n {entity.entityId}\n </span>\n </DataList.Cell>\n <DataList.NumberCell>{metadata.traceCount}</DataList.NumberCell>\n <DataList.Cell>{metadata.signalsSet}</DataList.Cell>\n <DataList.Cell>\n <Status entity={entity} />\n </DataList.Cell>\n <DataList.Cell title={entity.updatedAt}>{metadata.updatedAt}</DataList.Cell>\n </DataList.RowLink>\n );\n })}\n </DataList>\n </section>\n );\n}\n"],"names":["entityStatusLabel","jsx","Badge","jsxs","DataList","entityIndexMetadata"],"mappings":"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"}
1
+ {"version":3,"file":"entity-index-list.cjs.js","sources":["../../../../src/ee/signals/components/entity-index-list.tsx"],"sourcesContent":["import type { ThemeLearningEntity } from '@mastra/client-js';\n\nimport { entityIndexMetadata, entityStatusLabel } from './entity-index-model';\nimport { Badge } from '@/ds/components/Badge';\nimport { DataList } from '@/ds/components/DataList';\nimport type { LinkComponent } from '@/ds/types/link-component';\n\nconst columns = 'minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)';\n\nexport interface EntityIndexListProps {\n entities: readonly ThemeLearningEntity[];\n hasSearch: boolean;\n getEntityHref: (entity: ThemeLearningEntity) => string;\n LinkComponent: LinkComponent;\n}\n\nfunction Status({ entity }: { entity: ThemeLearningEntity }) {\n const label = entityStatusLabel(entity.status);\n const variant = entity.status === 'ready' ? 'green' : entity.status === 'processing' ? 'blue' : 'neutral';\n return (\n <Badge variant={variant} size=\"sm\" indicator={entity.status === undefined ? undefined : 'dot'}>\n {label}\n </Badge>\n );\n}\n\nexport function EntityIndexList({ entities, hasSearch, getEntityHref, LinkComponent }: EntityIndexListProps) {\n return (\n <section aria-label=\"Trace Intelligence entities\" className=\"min-h-0\">\n <DataList columns={columns} fit=\"container\">\n <DataList.Top>\n <DataList.TopCell>Entity</DataList.TopCell>\n <DataList.TopCell>Traces</DataList.TopCell>\n <DataList.TopCell>Signals set</DataList.TopCell>\n <DataList.TopCell>Status</DataList.TopCell>\n <DataList.TopCell>Updated</DataList.TopCell>\n </DataList.Top>\n {entities.length === 0 && hasSearch ? <DataList.NoMatch message=\"No entities match your search\" /> : null}\n {entities.map(entity => {\n const metadata = entityIndexMetadata(entity);\n return (\n <DataList.RowLink\n key={`${entity.entityType}:${entity.entityId}`}\n to={getEntityHref(entity)}\n LinkComponent={LinkComponent}\n className=\"min-w-0\"\n >\n <DataList.Cell className=\"min-w-0 overflow-visible text-left\">\n <span className=\"sr-only\">Open entity {entity.entityId}</span>\n <span aria-hidden=\"true\" className=\"block overflow-clip text-ellipsis whitespace-nowrap\">\n {entity.entityId}\n </span>\n </DataList.Cell>\n <DataList.NumberCell>{metadata.traceCount}</DataList.NumberCell>\n <DataList.Cell>{metadata.signalsSet}</DataList.Cell>\n <DataList.Cell>\n <Status entity={entity} />\n </DataList.Cell>\n <DataList.Cell title={entity.updatedAt}>{metadata.updatedAt}</DataList.Cell>\n </DataList.RowLink>\n );\n })}\n </DataList>\n </section>\n );\n}\n"],"names":["entityStatusLabel","jsx","Badge","jsxs","DataList","entityIndexMetadata"],"mappings":"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"}
@@ -1,9 +1,7 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { entityIndexMetadata, entityStatusLabel } from './entity-index-model.es.js';
3
3
  import { B as Badge } from '../../../Badge-BqVBVHGc.js';
4
- import { D as DataList } from '../../../data-list-DJ7DgVuH.js';
5
- import 'react';
6
- import '../../../keyboard/keyboard-shortcuts-context.es.js';
4
+ import { D as DataList } from '../../../data-list-Bm70XKg_.js';
7
5
 
8
6
  const columns = "minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)";
9
7
  function Status({ entity }) {
@@ -1 +1 @@
1
- {"version":3,"file":"entity-index-list.es.js","sources":["../../../../src/ee/signals/components/entity-index-list.tsx"],"sourcesContent":["import type { ThemeLearningEntity } from '@mastra/client-js';\n\nimport { entityIndexMetadata, entityStatusLabel } from './entity-index-model';\nimport { Badge } from '@/ds/components/Badge';\nimport { DataList } from '@/ds/components/DataList';\nimport type { LinkComponent } from '@/ds/types/link-component';\n\nconst columns = 'minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)';\n\nexport interface EntityIndexListProps {\n entities: readonly ThemeLearningEntity[];\n hasSearch: boolean;\n getEntityHref: (entity: ThemeLearningEntity) => string;\n LinkComponent: LinkComponent;\n}\n\nfunction Status({ entity }: { entity: ThemeLearningEntity }) {\n const label = entityStatusLabel(entity.status);\n const variant = entity.status === 'ready' ? 'green' : entity.status === 'processing' ? 'blue' : 'neutral';\n return (\n <Badge variant={variant} size=\"sm\" indicator={entity.status === undefined ? undefined : 'dot'}>\n {label}\n </Badge>\n );\n}\n\nexport function EntityIndexList({ entities, hasSearch, getEntityHref, LinkComponent }: EntityIndexListProps) {\n return (\n <section aria-label=\"Trace Intelligence entities\" className=\"min-h-0\">\n <DataList columns={columns} fit=\"container\">\n <DataList.Top>\n <DataList.TopCell>Entity</DataList.TopCell>\n <DataList.TopCell>Traces</DataList.TopCell>\n <DataList.TopCell>Signals set</DataList.TopCell>\n <DataList.TopCell>Status</DataList.TopCell>\n <DataList.TopCell>Updated</DataList.TopCell>\n </DataList.Top>\n {entities.length === 0 && hasSearch ? <DataList.NoMatch message=\"No entities match your search\" /> : null}\n {entities.map(entity => {\n const metadata = entityIndexMetadata(entity);\n return (\n <DataList.RowLink\n key={`${entity.entityType}:${entity.entityId}`}\n to={getEntityHref(entity)}\n LinkComponent={LinkComponent}\n className=\"min-w-0\"\n >\n <DataList.Cell className=\"min-w-0 overflow-visible text-left\">\n <span className=\"sr-only\">Open entity {entity.entityId}</span>\n <span aria-hidden=\"true\" className=\"block overflow-clip text-ellipsis whitespace-nowrap\">\n {entity.entityId}\n </span>\n </DataList.Cell>\n <DataList.NumberCell>{metadata.traceCount}</DataList.NumberCell>\n <DataList.Cell>{metadata.signalsSet}</DataList.Cell>\n <DataList.Cell>\n <Status entity={entity} />\n </DataList.Cell>\n <DataList.Cell title={entity.updatedAt}>{metadata.updatedAt}</DataList.Cell>\n </DataList.RowLink>\n );\n })}\n </DataList>\n </section>\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-index-list.es.js","sources":["../../../../src/ee/signals/components/entity-index-list.tsx"],"sourcesContent":["import type { ThemeLearningEntity } from '@mastra/client-js';\n\nimport { entityIndexMetadata, entityStatusLabel } from './entity-index-model';\nimport { Badge } from '@/ds/components/Badge';\nimport { DataList } from '@/ds/components/DataList';\nimport type { LinkComponent } from '@/ds/types/link-component';\n\nconst columns = 'minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)';\n\nexport interface EntityIndexListProps {\n entities: readonly ThemeLearningEntity[];\n hasSearch: boolean;\n getEntityHref: (entity: ThemeLearningEntity) => string;\n LinkComponent: LinkComponent;\n}\n\nfunction Status({ entity }: { entity: ThemeLearningEntity }) {\n const label = entityStatusLabel(entity.status);\n const variant = entity.status === 'ready' ? 'green' : entity.status === 'processing' ? 'blue' : 'neutral';\n return (\n <Badge variant={variant} size=\"sm\" indicator={entity.status === undefined ? undefined : 'dot'}>\n {label}\n </Badge>\n );\n}\n\nexport function EntityIndexList({ entities, hasSearch, getEntityHref, LinkComponent }: EntityIndexListProps) {\n return (\n <section aria-label=\"Trace Intelligence entities\" className=\"min-h-0\">\n <DataList columns={columns} fit=\"container\">\n <DataList.Top>\n <DataList.TopCell>Entity</DataList.TopCell>\n <DataList.TopCell>Traces</DataList.TopCell>\n <DataList.TopCell>Signals set</DataList.TopCell>\n <DataList.TopCell>Status</DataList.TopCell>\n <DataList.TopCell>Updated</DataList.TopCell>\n </DataList.Top>\n {entities.length === 0 && hasSearch ? <DataList.NoMatch message=\"No entities match your search\" /> : null}\n {entities.map(entity => {\n const metadata = entityIndexMetadata(entity);\n return (\n <DataList.RowLink\n key={`${entity.entityType}:${entity.entityId}`}\n to={getEntityHref(entity)}\n LinkComponent={LinkComponent}\n className=\"min-w-0\"\n >\n <DataList.Cell className=\"min-w-0 overflow-visible text-left\">\n <span className=\"sr-only\">Open entity {entity.entityId}</span>\n <span aria-hidden=\"true\" className=\"block overflow-clip text-ellipsis whitespace-nowrap\">\n {entity.entityId}\n </span>\n </DataList.Cell>\n <DataList.NumberCell>{metadata.traceCount}</DataList.NumberCell>\n <DataList.Cell>{metadata.signalsSet}</DataList.Cell>\n <DataList.Cell>\n <Status entity={entity} />\n </DataList.Cell>\n <DataList.Cell title={entity.updatedAt}>{metadata.updatedAt}</DataList.Cell>\n </DataList.RowLink>\n );\n })}\n </DataList>\n </section>\n );\n}\n"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  require('../../../signals-empty-state.css');const jsxRuntime = require('react/jsx-runtime');
6
6
  const lucideReact = require('lucide-react');
7
- const Button = require('../../../Button-BsHGVRjh.cjs');
7
+ const Button = require('../../../Button-BJOVwaxp.cjs');
8
8
  const Card = require('../../../Card-DZjvLsN9.cjs');
9
9
  const sankeyColor = require('../../../sankeyColor-DHE7ggh8.cjs');
10
10
  const ee_signals_signalColors = require('../signal-colors.cjs.js');
@@ -1,6 +1,6 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import { CpuIcon, ExternalLink } from 'lucide-react';
3
- import { B as Button } from '../../../Button-DsTY88Xz.js';
3
+ import { B as Button } from '../../../Button-BVGwYwHT.js';
4
4
  import { C as Card } from '../../../Card-DYmiv8Dx.js';
5
5
  import { n as nodeColor } from '../../../sankeyColor-BoMbAWtq.js';
6
6
  import { getSignalHue } from '../signal-colors.es.js';
@@ -13,17 +13,16 @@ const ee_signals_traceIntelligenceExplainer = require('../trace-intelligence-exp
13
13
  const ee_signals_components_entityIndexCompactGrid = require('./entity-index-compact-grid.cjs.js');
14
14
  const ee_signals_components_entityIndexList = require('./entity-index-list.cjs.js');
15
15
  const ee_signals_components_entityIndexModel = require('./entity-index-model.cjs.js');
16
- const Button = require('../../../Button-BsHGVRjh.cjs');
17
- const buttonsGroup = require('../../../buttons-group-PqYxKznc.cjs');
18
- const dataListSkeleton = require('../../../data-list-skeleton-BiletsX0.cjs');
19
- require('../../../keyboard/keyboard-shortcuts-context.cjs.js');
16
+ const Button = require('../../../Button-BJOVwaxp.cjs');
17
+ const buttonsGroup = require('../../../buttons-group-jq7kUVlX.cjs');
18
+ const dataListSkeleton = require('../../../data-list-skeleton-B7flrjdA.cjs');
20
19
  const EmptyState = require('../../../EmptyState--bOUm8JU.cjs');
21
20
  const ErrorState = require('../../../ErrorState-DvsG3RMz.cjs');
22
- const listSearch = require('../../../list-search-D_Q34jSU.cjs');
21
+ const listSearch = require('../../../list-search-BwcO9d9M.cjs');
23
22
  const noDataPageLayout = require('../../../no-data-page-layout-BrqtWTU9.cjs');
24
23
  const PermissionDenied = require('../../../PermissionDenied-Dge5a7OX.cjs');
25
- const select = require('../../../select-Dhox-EJ2.cjs');
26
- const SessionExpired = require('../../../SessionExpired-C4w2ai5-.cjs');
24
+ const select = require('../../../select-4dVGVp0V.cjs');
25
+ const SessionExpired = require('../../../SessionExpired-CAOgb-6E.cjs');
27
26
  const utils_queryUtils = require('../../../utils/query-utils.cjs.js');
28
27
 
29
28
  const listColumns = "minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)";
@@ -1 +1 @@
1
- {"version":3,"file":"trace-intelligence-entity-index.cjs.js","sources":["../../../../src/ee/signals/components/trace-intelligence-entity-index.tsx"],"sourcesContent":["import type { SignalCatalogEntry, ThemeLearningEntity } from '@mastra/client-js';\nimport { Columns2, List, CircleSlashIcon } from 'lucide-react';\nimport { useState, type ReactNode } from 'react';\n\nimport { useThemeEntities } from '../hooks';\nimport { TraceSignalSettingsButton, TraceSignalSettingsPanel } from '../settings/trace-signal-settings';\nimport { TraceIntelligenceExplainer } from '../trace-intelligence-explainer';\nimport { useTraceIntelligence } from '../use-trace-intelligence';\nimport { EntityIndexCompactGrid } from './entity-index-compact-grid';\nimport { EntityIndexList } from './entity-index-list';\nimport { filterAndSortEntities } from './entity-index-model';\nimport type { TraceIntelligenceEntitySort, TraceIntelligenceEntityView } from './entity-index-model';\nimport { Button } from '@/ds/components/Button';\nimport { ButtonsGroup } from '@/ds/components/ButtonsGroup';\nimport { DataListSkeleton } from '@/ds/components/DataList';\nimport { EmptyState } from '@/ds/components/EmptyState';\nimport { ErrorState } from '@/ds/components/ErrorState';\nimport { ListSearch } from '@/ds/components/ListSearch';\nimport { NoDataPageLayout, PageLayout } from '@/ds/components/PageLayout';\nimport { PermissionDenied } from '@/ds/components/PermissionDenied';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/ds/components/Select';\nimport { SessionExpired } from '@/ds/components/SessionExpired';\nimport { is401UnauthorizedError, is403ForbiddenError } from '@/utils/errors';\n\nexport type { TraceIntelligenceEntitySort, TraceIntelligenceEntityView } from './entity-index-model';\n\nconst listColumns = 'minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)';\n\nexport interface TraceIntelligenceEntityIndexProps {\n entityType: string;\n search: string;\n sort: TraceIntelligenceEntitySort;\n view: TraceIntelligenceEntityView;\n onSearchChange: (search: string) => void;\n onSortChange: (sort: TraceIntelligenceEntitySort) => void;\n onViewChange: (view: TraceIntelligenceEntityView) => void;\n getEntityHref: (entity: ThemeLearningEntity) => string;\n headerAction?: ReactNode;\n}\n\nfunction EntityIndexError({ error }: { error: Error }) {\n if (is401UnauthorizedError(error)) {\n return (\n <NoDataPageLayout>\n <SessionExpired />\n </NoDataPageLayout>\n );\n }\n if (is403ForbiddenError(error)) {\n return (\n <NoDataPageLayout>\n <PermissionDenied resource=\"Trace Intelligence\" />\n </NoDataPageLayout>\n );\n }\n return (\n <NoDataPageLayout>\n <ErrorState title=\"Failed to load Trace Intelligence\" message={error.message} />\n </NoDataPageLayout>\n );\n}\n\nfunction EntityIndexControls({\n search,\n sort,\n view,\n onSearchChange,\n onSortChange,\n onViewChange,\n headerAction,\n signalCatalog,\n}: Pick<\n TraceIntelligenceEntityIndexProps,\n 'search' | 'sort' | 'view' | 'onSearchChange' | 'onSortChange' | 'onViewChange' | 'headerAction'\n> & { signalCatalog: readonly SignalCatalogEntry[] }) {\n return (\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center\">\n <div className=\"max-w-120 flex-1\">\n <ListSearch\n value={search}\n onSearch={onSearchChange}\n label=\"Filter entities\"\n placeholder=\"Filter by entity identifier\"\n />\n </div>\n <div className=\"flex items-center justify-between gap-2 sm:ml-auto sm:justify-end\">\n <TraceIntelligenceExplainer signalCatalog={signalCatalog} />\n <Select<TraceIntelligenceEntitySort> value={sort} onValueChange={onSortChange}>\n <SelectTrigger aria-label=\"Sort entities\" size=\"md\" variant=\"ghost\" className=\"w-auto\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent align=\"end\">\n <SelectItem value=\"default\">Default order</SelectItem>\n <SelectItem value=\"entity-asc\">Entity: A–Z</SelectItem>\n <SelectItem value=\"entity-desc\">Entity: Z–A</SelectItem>\n </SelectContent>\n </Select>\n {headerAction}\n <ButtonsGroup spacing=\"close\" aria-label=\"Entities view\">\n <Button\n type=\"button\"\n variant={view === 'list' ? 'primary' : 'outline'}\n size=\"icon-md\"\n tooltip=\"List view\"\n aria-pressed={view === 'list'}\n onClick={() => onViewChange('list')}\n >\n <List />\n </Button>\n <Button\n type=\"button\"\n variant={view === 'compact' ? 'primary' : 'outline'}\n size=\"icon-md\"\n tooltip=\"Compact view\"\n aria-pressed={view === 'compact'}\n onClick={() => onViewChange('compact')}\n >\n <Columns2 />\n </Button>\n </ButtonsGroup>\n </div>\n </div>\n );\n}\n\nexport function TraceIntelligenceEntityIndex({\n entityType,\n search,\n sort,\n view,\n onSearchChange,\n onSortChange,\n onViewChange,\n getEntityHref,\n headerAction,\n}: TraceIntelligenceEntityIndexProps) {\n const entitiesQuery = useThemeEntities(entityType);\n const { LinkComponent, signalCatalog: contextSignalCatalog, signalManagement } = useTraceIntelligence();\n const [settingsOpen, setSettingsOpen] = useState(false);\n\n if (entitiesQuery.error) return <EntityIndexError error={entitiesQuery.error} />;\n\n const sourceEntities = entitiesQuery.data?.entities ?? [];\n const signalCatalog =\n sourceEntities.find(entity => entity.signalCatalog?.length)?.signalCatalog ?? contextSignalCatalog;\n const entities = filterAndSortEntities(sourceEntities, search, sort);\n const hasSearch = search.trim().length > 0;\n let body = (\n <EntityIndexList\n entities={entities}\n hasSearch={hasSearch}\n getEntityHref={getEntityHref}\n LinkComponent={LinkComponent}\n />\n );\n if (entitiesQuery.isPending) {\n body = (\n <div role=\"status\" aria-label=\"Loading Trace Intelligence entities\">\n <DataListSkeleton columns={listColumns} />\n </div>\n );\n } else if (entitiesQuery.data.entities.length === 0 && !hasSearch) {\n body = (\n <EmptyState\n iconSlot={<CircleSlashIcon aria-hidden=\"true\" />}\n titleSlot=\"No Trace Intelligence entities yet\"\n descriptionSlot=\"Entities appear after Trace Intelligence begins collecting generated signal data.\"\n />\n );\n } else if (view === 'compact') {\n body = (\n <EntityIndexCompactGrid\n entities={entities}\n hasSearch={hasSearch}\n getEntityHref={getEntityHref}\n LinkComponent={LinkComponent}\n />\n );\n }\n\n return (\n <PageLayout width=\"narrow\" height=\"full\" className=\"max-w-7xl grid-rows-[auto_minmax(0,1fr)] content-normal\">\n <PageLayout.TopArea>\n <EntityIndexControls\n search={search}\n sort={sort}\n view={view}\n onSearchChange={onSearchChange}\n onSortChange={onSortChange}\n onViewChange={onViewChange}\n signalCatalog={signalCatalog}\n headerAction={\n headerAction || signalManagement ? (\n <>\n {headerAction}\n {signalManagement ? (\n <TraceSignalSettingsButton open={settingsOpen} onClick={() => setSettingsOpen(open => !open)} />\n ) : null}\n </>\n ) : undefined\n }\n />\n </PageLayout.TopArea>\n <div\n className={\n settingsOpen\n ? 'grid max-h-full min-h-0 grid-cols-1 items-start gap-4 lg:grid-cols-[1fr_1fr]'\n : 'grid min-h-0 grid-cols-1'\n }\n >\n <div className=\"min-h-0 min-w-0\">{body}</div>\n {settingsOpen ? <TraceSignalSettingsPanel onClose={() => setSettingsOpen(false)} /> : null}\n </div>\n </PageLayout>\n );\n}\n"],"names":["is401UnauthorizedError","jsx","NoDataPageLayout","SessionExpired","is403ForbiddenError","PermissionDenied","ErrorState","jsxs","ListSearch","TraceIntelligenceExplainer","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","ButtonsGroup","Button","List","Columns2","useThemeEntities","useTraceIntelligence","useState","filterAndSortEntities","EntityIndexList","DataListSkeleton","EmptyState","CircleSlashIcon","EntityIndexCompactGrid","PageLayout","Fragment","TraceSignalSettingsButton","TraceSignalSettingsPanel"],"mappings":"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"}
1
+ {"version":3,"file":"trace-intelligence-entity-index.cjs.js","sources":["../../../../src/ee/signals/components/trace-intelligence-entity-index.tsx"],"sourcesContent":["import type { SignalCatalogEntry, ThemeLearningEntity } from '@mastra/client-js';\nimport { Columns2, List, CircleSlashIcon } from 'lucide-react';\nimport { useState, type ReactNode } from 'react';\n\nimport { useThemeEntities } from '../hooks';\nimport { TraceSignalSettingsButton, TraceSignalSettingsPanel } from '../settings/trace-signal-settings';\nimport { TraceIntelligenceExplainer } from '../trace-intelligence-explainer';\nimport { useTraceIntelligence } from '../use-trace-intelligence';\nimport { EntityIndexCompactGrid } from './entity-index-compact-grid';\nimport { EntityIndexList } from './entity-index-list';\nimport { filterAndSortEntities } from './entity-index-model';\nimport type { TraceIntelligenceEntitySort, TraceIntelligenceEntityView } from './entity-index-model';\nimport { Button } from '@/ds/components/Button';\nimport { ButtonsGroup } from '@/ds/components/ButtonsGroup';\nimport { DataListSkeleton } from '@/ds/components/DataList';\nimport { EmptyState } from '@/ds/components/EmptyState';\nimport { ErrorState } from '@/ds/components/ErrorState';\nimport { ListSearch } from '@/ds/components/ListSearch';\nimport { NoDataPageLayout, PageLayout } from '@/ds/components/PageLayout';\nimport { PermissionDenied } from '@/ds/components/PermissionDenied';\nimport { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/ds/components/Select';\nimport { SessionExpired } from '@/ds/components/SessionExpired';\nimport { is401UnauthorizedError, is403ForbiddenError } from '@/utils/errors';\n\nexport type { TraceIntelligenceEntitySort, TraceIntelligenceEntityView } from './entity-index-model';\n\nconst listColumns = 'minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)';\n\nexport interface TraceIntelligenceEntityIndexProps {\n entityType: string;\n search: string;\n sort: TraceIntelligenceEntitySort;\n view: TraceIntelligenceEntityView;\n onSearchChange: (search: string) => void;\n onSortChange: (sort: TraceIntelligenceEntitySort) => void;\n onViewChange: (view: TraceIntelligenceEntityView) => void;\n getEntityHref: (entity: ThemeLearningEntity) => string;\n headerAction?: ReactNode;\n}\n\nfunction EntityIndexError({ error }: { error: Error }) {\n if (is401UnauthorizedError(error)) {\n return (\n <NoDataPageLayout>\n <SessionExpired />\n </NoDataPageLayout>\n );\n }\n if (is403ForbiddenError(error)) {\n return (\n <NoDataPageLayout>\n <PermissionDenied resource=\"Trace Intelligence\" />\n </NoDataPageLayout>\n );\n }\n return (\n <NoDataPageLayout>\n <ErrorState title=\"Failed to load Trace Intelligence\" message={error.message} />\n </NoDataPageLayout>\n );\n}\n\nfunction EntityIndexControls({\n search,\n sort,\n view,\n onSearchChange,\n onSortChange,\n onViewChange,\n headerAction,\n signalCatalog,\n}: Pick<\n TraceIntelligenceEntityIndexProps,\n 'search' | 'sort' | 'view' | 'onSearchChange' | 'onSortChange' | 'onViewChange' | 'headerAction'\n> & { signalCatalog: readonly SignalCatalogEntry[] }) {\n return (\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-center\">\n <div className=\"max-w-120 flex-1\">\n <ListSearch\n value={search}\n onSearch={onSearchChange}\n label=\"Filter entities\"\n placeholder=\"Filter by entity identifier\"\n />\n </div>\n <div className=\"flex items-center justify-between gap-2 sm:ml-auto sm:justify-end\">\n <TraceIntelligenceExplainer signalCatalog={signalCatalog} />\n <Select<TraceIntelligenceEntitySort> value={sort} onValueChange={onSortChange}>\n <SelectTrigger aria-label=\"Sort entities\" size=\"md\" variant=\"ghost\" className=\"w-auto\">\n <SelectValue />\n </SelectTrigger>\n <SelectContent align=\"end\">\n <SelectItem value=\"default\">Default order</SelectItem>\n <SelectItem value=\"entity-asc\">Entity: A–Z</SelectItem>\n <SelectItem value=\"entity-desc\">Entity: Z–A</SelectItem>\n </SelectContent>\n </Select>\n {headerAction}\n <ButtonsGroup spacing=\"close\" aria-label=\"Entities view\">\n <Button\n type=\"button\"\n variant={view === 'list' ? 'primary' : 'outline'}\n size=\"icon-md\"\n tooltip=\"List view\"\n aria-pressed={view === 'list'}\n onClick={() => onViewChange('list')}\n >\n <List />\n </Button>\n <Button\n type=\"button\"\n variant={view === 'compact' ? 'primary' : 'outline'}\n size=\"icon-md\"\n tooltip=\"Compact view\"\n aria-pressed={view === 'compact'}\n onClick={() => onViewChange('compact')}\n >\n <Columns2 />\n </Button>\n </ButtonsGroup>\n </div>\n </div>\n );\n}\n\nexport function TraceIntelligenceEntityIndex({\n entityType,\n search,\n sort,\n view,\n onSearchChange,\n onSortChange,\n onViewChange,\n getEntityHref,\n headerAction,\n}: TraceIntelligenceEntityIndexProps) {\n const entitiesQuery = useThemeEntities(entityType);\n const { LinkComponent, signalCatalog: contextSignalCatalog, signalManagement } = useTraceIntelligence();\n const [settingsOpen, setSettingsOpen] = useState(false);\n\n if (entitiesQuery.error) return <EntityIndexError error={entitiesQuery.error} />;\n\n const sourceEntities = entitiesQuery.data?.entities ?? [];\n const signalCatalog =\n sourceEntities.find(entity => entity.signalCatalog?.length)?.signalCatalog ?? contextSignalCatalog;\n const entities = filterAndSortEntities(sourceEntities, search, sort);\n const hasSearch = search.trim().length > 0;\n let body = (\n <EntityIndexList\n entities={entities}\n hasSearch={hasSearch}\n getEntityHref={getEntityHref}\n LinkComponent={LinkComponent}\n />\n );\n if (entitiesQuery.isPending) {\n body = (\n <div role=\"status\" aria-label=\"Loading Trace Intelligence entities\">\n <DataListSkeleton columns={listColumns} />\n </div>\n );\n } else if (entitiesQuery.data.entities.length === 0 && !hasSearch) {\n body = (\n <EmptyState\n iconSlot={<CircleSlashIcon aria-hidden=\"true\" />}\n titleSlot=\"No Trace Intelligence entities yet\"\n descriptionSlot=\"Entities appear after Trace Intelligence begins collecting generated signal data.\"\n />\n );\n } else if (view === 'compact') {\n body = (\n <EntityIndexCompactGrid\n entities={entities}\n hasSearch={hasSearch}\n getEntityHref={getEntityHref}\n LinkComponent={LinkComponent}\n />\n );\n }\n\n return (\n <PageLayout width=\"narrow\" height=\"full\" className=\"max-w-7xl grid-rows-[auto_minmax(0,1fr)] content-normal\">\n <PageLayout.TopArea>\n <EntityIndexControls\n search={search}\n sort={sort}\n view={view}\n onSearchChange={onSearchChange}\n onSortChange={onSortChange}\n onViewChange={onViewChange}\n signalCatalog={signalCatalog}\n headerAction={\n headerAction || signalManagement ? (\n <>\n {headerAction}\n {signalManagement ? (\n <TraceSignalSettingsButton open={settingsOpen} onClick={() => setSettingsOpen(open => !open)} />\n ) : null}\n </>\n ) : undefined\n }\n />\n </PageLayout.TopArea>\n <div\n className={\n settingsOpen\n ? 'grid max-h-full min-h-0 grid-cols-1 items-start gap-4 lg:grid-cols-[1fr_1fr]'\n : 'grid min-h-0 grid-cols-1'\n }\n >\n <div className=\"min-h-0 min-w-0\">{body}</div>\n {settingsOpen ? <TraceSignalSettingsPanel onClose={() => setSettingsOpen(false)} /> : null}\n </div>\n </PageLayout>\n );\n}\n"],"names":["is401UnauthorizedError","jsx","NoDataPageLayout","SessionExpired","is403ForbiddenError","PermissionDenied","ErrorState","jsxs","ListSearch","TraceIntelligenceExplainer","Select","SelectTrigger","SelectValue","SelectContent","SelectItem","ButtonsGroup","Button","List","Columns2","useThemeEntities","useTraceIntelligence","useState","filterAndSortEntities","EntityIndexList","DataListSkeleton","EmptyState","CircleSlashIcon","EntityIndexCompactGrid","PageLayout","Fragment","TraceSignalSettingsButton","TraceSignalSettingsPanel"],"mappings":"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"}
@@ -9,17 +9,16 @@ import { TraceIntelligenceExplainer } from '../trace-intelligence-explainer.es.j
9
9
  import { EntityIndexCompactGrid } from './entity-index-compact-grid.es.js';
10
10
  import { EntityIndexList } from './entity-index-list.es.js';
11
11
  import { filterAndSortEntities } from './entity-index-model.es.js';
12
- import { B as Button } from '../../../Button-DsTY88Xz.js';
13
- import { B as ButtonsGroup } from '../../../buttons-group-B5TBWfs6.js';
14
- import { D as DataListSkeleton } from '../../../data-list-skeleton-QvifQhmC.js';
15
- import '../../../keyboard/keyboard-shortcuts-context.es.js';
12
+ import { B as Button } from '../../../Button-BVGwYwHT.js';
13
+ import { B as ButtonsGroup } from '../../../buttons-group-CHyXDQBp.js';
14
+ import { D as DataListSkeleton } from '../../../data-list-skeleton-BJVs8rDE.js';
16
15
  import { E as EmptyState } from '../../../EmptyState-CLoSRKxC.js';
17
16
  import { E as ErrorState } from '../../../ErrorState-t59EAa55.js';
18
- import { L as ListSearch } from '../../../list-search-C9wdyGVJ.js';
17
+ import { L as ListSearch } from '../../../list-search-C8FBcDpo.js';
19
18
  import { P as PageLayout, N as NoDataPageLayout } from '../../../no-data-page-layout-BHmXbQix.js';
20
19
  import { P as PermissionDenied } from '../../../PermissionDenied-BmAbJ1Xn.js';
21
- import { S as Select, d as SelectTrigger, e as SelectValue, a as SelectContent, c as SelectItem } from '../../../select-VqANzntV.js';
22
- import { S as SessionExpired } from '../../../SessionExpired-oy5tS_51.js';
20
+ import { S as Select, d as SelectTrigger, e as SelectValue, a as SelectContent, c as SelectItem } from '../../../select-3GcRJGtd.js';
21
+ import { S as SessionExpired } from '../../../SessionExpired-DSPFseGA.js';
23
22
  import { is401UnauthorizedError, is403ForbiddenError } from '../../../utils/query-utils.es.js';
24
23
 
25
24
  const listColumns = "minmax(12rem,1.5fr) minmax(7rem,0.6fr) minmax(8rem,0.7fr) minmax(8rem,0.7fr) minmax(12rem,1fr)";