@mastra/playground-ui 56.0.0 → 57.0.0-alpha.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.
- package/dist/{EmptyState-CdRjFB06.cjs → EmptyState-0MgNiP40.cjs} +11 -5
- package/dist/EmptyState-0MgNiP40.cjs.map +1 -0
- package/dist/{EmptyState-UWXhBp5U.js → EmptyState-CiZVWvpH.js} +11 -5
- package/dist/EmptyState-CiZVWvpH.js.map +1 -0
- package/dist/ErrorState-C7-4A-rB.cjs +21 -0
- package/dist/ErrorState-C7-4A-rB.cjs.map +1 -0
- package/dist/ErrorState-l5gg5Nzw.js +19 -0
- package/dist/ErrorState-l5gg5Nzw.js.map +1 -0
- package/dist/Header-BVnFQlzE.js +31 -0
- package/dist/Header-BVnFQlzE.js.map +1 -0
- package/dist/Header-CGjhJ0nQ.cjs +36 -0
- package/dist/Header-CGjhJ0nQ.cjs.map +1 -0
- package/dist/{PermissionDenied-Dz5qXpQj.cjs → PermissionDenied-CwLIzjpC.cjs} +11 -6
- package/dist/PermissionDenied-CwLIzjpC.cjs.map +1 -0
- package/dist/{PermissionDenied-B6TSGolC.js → PermissionDenied-DPM04x0a.js} +11 -6
- package/dist/PermissionDenied-DPM04x0a.js.map +1 -0
- package/dist/{SessionExpired-CF0BGNo_.cjs → SessionExpired-07Lz91i3.cjs} +4 -5
- package/dist/SessionExpired-07Lz91i3.cjs.map +1 -0
- package/dist/{SessionExpired-Bq5LcsDu.js → SessionExpired-CnJ8zr5Y.js} +4 -5
- package/dist/SessionExpired-CnJ8zr5Y.js.map +1 -0
- package/dist/ask-user-B_O3GEjY.cjs +216 -0
- package/dist/ask-user-B_O3GEjY.cjs.map +1 -0
- package/dist/ask-user-gT9rODOe.js +206 -0
- package/dist/ask-user-gT9rODOe.js.map +1 -0
- package/dist/{combobox-BWM3VH-n.cjs → combobox-BTZyTiyL.cjs} +3 -4
- package/dist/{combobox-BWM3VH-n.cjs.map → combobox-BTZyTiyL.cjs.map} +1 -1
- package/dist/{combobox-D7xJFZuO.js → combobox-B_gv8nUN.js} +2 -3
- package/dist/{combobox-D7xJFZuO.js.map → combobox-B_gv8nUN.js.map} +1 -1
- package/dist/components/ActionRow.cjs.js +38 -0
- package/dist/components/ActionRow.cjs.js.map +1 -0
- package/dist/components/ActionRow.d.ts +2 -0
- package/dist/components/ActionRow.es.js +34 -0
- package/dist/components/ActionRow.es.js.map +1 -0
- package/dist/components/Combobox.cjs.js +1 -1
- package/dist/components/Combobox.es.js +1 -1
- package/dist/components/Comment.cjs.js +2 -3
- package/dist/components/Comment.cjs.js.map +1 -1
- package/dist/components/Comment.es.js +1 -2
- package/dist/components/Comment.es.js.map +1 -1
- package/dist/components/DataCodeSection.cjs.js +1 -1
- package/dist/components/DataCodeSection.es.js +1 -1
- package/dist/components/DataDetailsPanel.cjs.js +2 -2
- package/dist/components/DataDetailsPanel.cjs.js.map +1 -1
- package/dist/components/DataDetailsPanel.es.js +2 -2
- package/dist/components/DataDetailsPanel.es.js.map +1 -1
- package/dist/components/DataPanel.cjs.js +1 -1
- package/dist/components/DataPanel.es.js +1 -1
- package/dist/components/DateTimePicker.cjs.js +1 -1
- package/dist/components/DateTimePicker.es.js +1 -1
- package/dist/components/DateTimeRangePicker.cjs.js +1 -1
- package/dist/components/DateTimeRangePicker.es.js +1 -1
- package/dist/components/EmptyState.cjs.js +1 -1
- package/dist/components/EmptyState.es.js +1 -1
- package/dist/components/EnvironmentVariablesEditor.cjs.js +7 -8
- package/dist/components/EnvironmentVariablesEditor.cjs.js.map +1 -1
- package/dist/components/EnvironmentVariablesEditor.es.js +1 -2
- package/dist/components/EnvironmentVariablesEditor.es.js.map +1 -1
- package/dist/components/ErrorState.cjs.js +1 -1
- package/dist/components/ErrorState.es.js +1 -1
- package/dist/components/FilterBar.cjs.js +490 -38
- package/dist/components/FilterBar.cjs.js.map +1 -1
- package/dist/components/FilterBar.es.js +490 -42
- package/dist/components/FilterBar.es.js.map +1 -1
- package/dist/components/FormFieldBlocks.cjs.js +11 -12
- package/dist/components/FormFieldBlocks.cjs.js.map +1 -1
- package/dist/components/FormFieldBlocks.es.js +4 -5
- package/dist/components/FormFieldBlocks.es.js.map +1 -1
- package/dist/components/Header.cjs.js +6 -31
- package/dist/components/Header.cjs.js.map +1 -1
- package/dist/components/Header.es.js +1 -30
- package/dist/components/Header.es.js.map +1 -1
- package/dist/components/IntegrationDialog.cjs.js +1 -1
- package/dist/components/IntegrationDialog.es.js +1 -1
- package/dist/components/JSONSchemaForm.cjs.js +2 -2
- package/dist/components/JSONSchemaForm.es.js +2 -2
- package/dist/components/ListSearch.cjs.js +1 -1
- package/dist/components/ListSearch.es.js +1 -1
- package/dist/components/LogsDataList.cjs.js +2 -0
- package/dist/components/LogsDataList.cjs.js.map +1 -1
- package/dist/components/LogsDataList.es.js +2 -0
- package/dist/components/LogsDataList.es.js.map +1 -1
- package/dist/components/Message.cjs.js +1 -1
- package/dist/components/Message.es.js +2 -2
- package/dist/components/MetricsCard.cjs.js +1 -1
- package/dist/components/MetricsCard.es.js +1 -1
- package/dist/components/MetricsKpiCard.cjs.js +1 -1
- package/dist/components/MetricsKpiCard.es.js +1 -1
- package/dist/components/PageLayout.cjs.js +30 -8
- package/dist/components/PageLayout.cjs.js.map +1 -1
- package/dist/components/PageLayout.es.js +32 -3
- package/dist/components/PageLayout.es.js.map +1 -1
- package/dist/components/PermissionDenied.cjs.js +1 -1
- package/dist/components/PermissionDenied.es.js +1 -1
- package/dist/components/PropertyFilter.cjs.js +2 -2
- package/dist/components/PropertyFilter.es.js +3 -3
- package/dist/components/RadioGroup.cjs.js +3 -56
- package/dist/components/RadioGroup.cjs.js.map +1 -1
- package/dist/components/RadioGroup.es.js +1 -39
- package/dist/components/RadioGroup.es.js.map +1 -1
- package/dist/components/SessionExpired.cjs.js +1 -1
- package/dist/components/SessionExpired.es.js +1 -1
- package/dist/components/SideDialog.cjs.js +10 -2
- package/dist/components/SideDialog.cjs.js.map +1 -1
- package/dist/components/SideDialog.es.js +10 -2
- package/dist/components/SideDialog.es.js.map +1 -1
- package/dist/components/Spinner.cjs.js +1 -1
- package/dist/components/Spinner.es.js +1 -1
- package/dist/components/Steps.cjs.js +1 -1
- package/dist/components/Steps.es.js +1 -1
- package/dist/components/Workflow.cjs.js +6 -6
- package/dist/components/Workflow.cjs.js.map +1 -1
- package/dist/components/Workflow.es.js +6 -6
- package/dist/components/Workflow.es.js.map +1 -1
- package/dist/components/ai/ask-user.cjs.js +4 -3
- package/dist/components/ai/ask-user.cjs.js.map +1 -1
- package/dist/components/ai/ask-user.es.js +1 -1
- package/dist/components/ai/tool-call.cjs.js +1 -1
- package/dist/components/ai/tool-call.es.js +2 -2
- package/dist/{data-code-section-qujvEc6j.cjs → data-code-section-Dpd2hzmU.cjs} +4 -4
- package/dist/{data-code-section-qujvEc6j.cjs.map → data-code-section-Dpd2hzmU.cjs.map} +1 -1
- package/dist/{data-code-section-DKz9Okaz.js → data-code-section-O-DRRO6N.js} +4 -4
- package/dist/{data-code-section-DKz9Okaz.js.map → data-code-section-O-DRRO6N.js.map} +1 -1
- package/dist/{data-panel-CWjgS1Gh.js → data-panel-CDJMMCvz.js} +3 -3
- package/dist/{data-panel-CWjgS1Gh.js.map → data-panel-CDJMMCvz.js.map} +1 -1
- package/dist/{data-panel-CWZJKBeW.cjs → data-panel-DNPcL38C.cjs} +3 -3
- package/dist/{data-panel-CWZJKBeW.cjs.map → data-panel-DNPcL38C.cjs.map} +1 -1
- package/dist/{date-time-range-picker-BcjLbkGu.js → date-time-range-picker-B-C-PPI4.js} +2 -3
- package/dist/{date-time-range-picker-BcjLbkGu.js.map → date-time-range-picker-B-C-PPI4.js.map} +1 -1
- package/dist/{date-time-range-picker-C6hjZswK.cjs → date-time-range-picker-D_mHYCx_.cjs} +3 -4
- package/dist/{date-time-range-picker-C6hjZswK.cjs.map → date-time-range-picker-D_mHYCx_.cjs.map} +1 -1
- package/dist/domains/chat/components/badge-wrapper.cjs.js +1 -1
- package/dist/domains/chat/components/badge-wrapper.es.js +1 -1
- package/dist/domains/chat/components/loading-badge.cjs.js +1 -1
- package/dist/domains/chat/components/loading-badge.es.js +1 -1
- package/dist/domains/chat/messages/reasoning.cjs.js +1 -1
- package/dist/domains/chat/messages/reasoning.cjs.js.map +1 -1
- package/dist/domains/chat/messages/reasoning.es.js +1 -1
- package/dist/domains/chat/messages/reasoning.es.js.map +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js +2 -2
- package/dist/domains/chat/tools/badges/ask-user-badge.cjs.js.map +1 -1
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js +2 -2
- package/dist/domains/chat/tools/badges/ask-user-badge.es.js.map +1 -1
- package/dist/domains/logs/components/logs-error-content.cjs.js +4 -7
- package/dist/domains/logs/components/logs-error-content.cjs.js.map +1 -1
- package/dist/domains/logs/components/logs-error-content.es.js +4 -7
- package/dist/domains/logs/components/logs-error-content.es.js.map +1 -1
- package/dist/domains/logs/components/logs-toolbar.cjs.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.cjs.js.map +1 -1
- package/dist/domains/logs/components/logs-toolbar.es.js +1 -1
- package/dist/domains/logs/components/logs-toolbar.es.js.map +1 -1
- package/dist/domains/logs/components/no-logs-info.cjs.js +5 -5
- package/dist/domains/logs/components/no-logs-info.cjs.js.map +1 -1
- package/dist/domains/logs/components/no-logs-info.es.js +6 -6
- package/dist/domains/logs/components/no-logs-info.es.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.cjs.js +6 -6
- package/dist/domains/memory/components/flame-graph.cjs.js.map +1 -1
- package/dist/domains/memory/components/flame-graph.es.js +6 -6
- package/dist/domains/memory/components/flame-graph.es.js.map +1 -1
- package/dist/domains/memory/components/observation-detail-view.cjs.js +10 -11
- package/dist/domains/memory/components/observation-detail-view.cjs.js.map +1 -1
- package/dist/domains/memory/components/observation-detail-view.es.js +10 -11
- package/dist/domains/memory/components/observation-detail-view.es.js.map +1 -1
- package/dist/domains/metrics/components/date-range-selector.cjs.js +1 -1
- package/dist/domains/metrics/components/date-range-selector.es.js +1 -1
- package/dist/domains/metrics/components/kpi-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/kpi-card-view.es.js +1 -1
- package/dist/domains/metrics/components/latency-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/latency-card-view.es.js +1 -1
- package/dist/domains/metrics/components/memory-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/memory-card-view.es.js +1 -1
- package/dist/domains/metrics/components/model-usage-cost-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/model-usage-cost-card-view.es.js +1 -1
- package/dist/domains/metrics/components/scores-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/scores-card-view.es.js +1 -1
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/token-usage-by-agent-card-view.es.js +1 -1
- package/dist/domains/metrics/components/token-usage-timeline-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/token-usage-timeline-card-view.es.js +1 -1
- package/dist/domains/metrics/components/traces-volume-card-view.cjs.js +1 -1
- package/dist/domains/metrics/components/traces-volume-card-view.es.js +1 -1
- package/dist/domains/traces/components/no-traces-info.cjs.js +2 -3
- package/dist/domains/traces/components/no-traces-info.cjs.js.map +1 -1
- package/dist/domains/traces/components/no-traces-info.es.js +2 -3
- package/dist/domains/traces/components/no-traces-info.es.js.map +1 -1
- package/dist/domains/traces/components/span-data-panel-view.cjs.js +1 -1
- package/dist/domains/traces/components/span-data-panel-view.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-error-renderer.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-error-renderer.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-input-renderers.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-input-renderers.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-output-renderers.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-output-renderers.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-messages.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-messages.es.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-primitives.cjs.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-primitives.es.js +1 -1
- package/dist/domains/traces/components/span-payload/span-payload-tool.cjs.js +2 -2
- package/dist/domains/traces/components/span-payload/span-payload-tool.es.js +2 -2
- package/dist/domains/traces/components/span-summary-description.cjs.js +1 -1
- package/dist/domains/traces/components/span-summary-description.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-details.es.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.cjs.js +1 -1
- package/dist/domains/traces/components/thread-trace/thread-trace-messages.es.js +1 -1
- package/dist/domains/traces/components/trace-columns-menu.cjs.js +4 -4
- package/dist/domains/traces/components/trace-columns-menu.cjs.js.map +1 -1
- package/dist/domains/traces/components/trace-columns-menu.es.js +2 -2
- package/dist/domains/traces/components/trace-data-panel-view.cjs.js +2 -2
- package/dist/domains/traces/components/trace-data-panel-view.es.js +2 -2
- package/dist/domains/traces/components/trace-id-button.cjs.js +1 -1
- package/dist/domains/traces/components/trace-id-button.es.js +1 -1
- package/dist/domains/traces/components/trace-summary-description.cjs.js +1 -1
- package/dist/domains/traces/components/trace-summary-description.es.js +1 -1
- package/dist/domains/traces/components/trace-time-range-chip.cjs.js +2 -2
- package/dist/domains/traces/components/trace-time-range-chip.es.js +2 -2
- package/dist/domains/traces/components/traces-error-content.cjs.js +3 -3
- package/dist/domains/traces/components/traces-error-content.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-error-content.es.js +3 -3
- package/dist/domains/traces/components/traces-error-content.es.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js +2 -0
- package/dist/domains/traces/components/traces-page-skeleton.cjs.js.map +1 -1
- package/dist/domains/traces/components/traces-page-skeleton.es.js +2 -0
- package/dist/domains/traces/components/traces-page-skeleton.es.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-url-state.cjs.js +4 -2
- package/dist/domains/traces/hooks/use-trace-url-state.cjs.js.map +1 -1
- package/dist/domains/traces/hooks/use-trace-url-state.es.js +5 -3
- package/dist/domains/traces/hooks/use-trace-url-state.es.js.map +1 -1
- package/dist/domains/traces/trace-filters.cjs.js +92 -11
- package/dist/domains/traces/trace-filters.cjs.js.map +1 -1
- package/dist/domains/traces/trace-filters.es.js +87 -13
- package/dist/domains/traces/trace-filters.es.js.map +1 -1
- package/dist/domains/traces/trace-query-filters.cjs.js +76 -45
- package/dist/domains/traces/trace-query-filters.cjs.js.map +1 -1
- package/dist/domains/traces/trace-query-filters.es.js +76 -46
- package/dist/domains/traces/trace-query-filters.es.js.map +1 -1
- package/dist/domains/traces.cjs.js +7 -0
- package/dist/domains/traces.cjs.js.map +1 -1
- package/dist/domains/traces.es.js +2 -2
- package/dist/ee/signals/components/entity-index-list.cjs.js +2 -0
- package/dist/ee/signals/components/entity-index-list.cjs.js.map +1 -1
- package/dist/ee/signals/components/entity-index-list.es.js +2 -0
- package/dist/ee/signals/components/entity-index-list.es.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.cjs.js +5 -7
- package/dist/ee/signals/components/trace-intelligence-entity-detail.cjs.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-detail.es.js +5 -7
- package/dist/ee/signals/components/trace-intelligence-entity-detail.es.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js +11 -13
- package/dist/ee/signals/components/trace-intelligence-entity-index.cjs.js.map +1 -1
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js +12 -14
- package/dist/ee/signals/components/trace-intelligence-entity-index.es.js.map +1 -1
- package/dist/ee/signals/sankey-signals.cjs.js +2 -2
- package/dist/ee/signals/sankey-signals.cjs.js.map +1 -1
- package/dist/ee/signals/sankey-signals.es.js +2 -2
- package/dist/ee/signals/sankey-signals.es.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js +10 -11
- package/dist/ee/signals/settings/signal-definition-form-dialog.cjs.js.map +1 -1
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js +3 -4
- package/dist/ee/signals/settings/signal-definition-form-dialog.es.js.map +1 -1
- package/dist/ee/topics/components/topics-layout.cjs.js +1 -1
- package/dist/ee/topics/components/topics-layout.cjs.js.map +1 -1
- package/dist/ee/topics/components/topics-layout.es.js +1 -1
- package/dist/ee/topics/components/topics-layout.es.js.map +1 -1
- package/dist/{field-block-DWkbNcsV.js → field-error-id-BLxISyNV.js} +4 -2
- package/dist/field-error-id-BLxISyNV.js.map +1 -0
- package/dist/{field-block-Dy1IaWbv.cjs → field-error-id-CXi0XkjZ.cjs} +4 -1
- package/dist/field-error-id-CXi0XkjZ.cjs.map +1 -0
- package/dist/{filter-bar-chip-BxI0NgEz.cjs → filter-bar-chip-D-IRgccJ.cjs} +296 -65
- package/dist/filter-bar-chip-D-IRgccJ.cjs.map +1 -0
- package/dist/{filter-bar-chip-C-JxWUU8.js → filter-bar-chip-luoMVy8-.js} +293 -67
- package/dist/filter-bar-chip-luoMVy8-.js.map +1 -0
- package/dist/filter-bar-chip.css +33 -1
- package/dist/layout/tabbed-container.cjs.js +2 -2
- package/dist/layout/tabbed-container.es.js +2 -2
- package/dist/{list-search-vyxsZMAK.cjs → list-search-BEDvqI5f.cjs} +2 -2
- package/dist/{list-search-vyxsZMAK.cjs.map → list-search-BEDvqI5f.cjs.map} +1 -1
- package/dist/{list-search-BTW0Neuc.js → list-search-BcOawrgy.js} +2 -2
- package/dist/{list-search-BTW0Neuc.js.map → list-search-BcOawrgy.js.map} +1 -1
- package/dist/{message-BrwbcLPi.js → message-Cs8NW-MR.js} +2 -2
- package/dist/{message-BrwbcLPi.js.map → message-Cs8NW-MR.js.map} +1 -1
- package/dist/{message-CszposMZ.cjs → message-D9b33Pf_.cjs} +2 -2
- package/dist/{message-CszposMZ.cjs.map → message-D9b33Pf_.cjs.map} +1 -1
- package/dist/{metrics-card-BUJxiwec.cjs → metrics-card-D-VjFkUM.cjs} +3 -3
- package/dist/{metrics-card-BUJxiwec.cjs.map → metrics-card-D-VjFkUM.cjs.map} +1 -1
- package/dist/{metrics-card-BlBt1WHw.js → metrics-card-jjLRvic4.js} +3 -3
- package/dist/{metrics-card-BlBt1WHw.js.map → metrics-card-jjLRvic4.js.map} +1 -1
- package/dist/{metrics-kpi-card-CBSNmtc5.js → metrics-kpi-card-CY6F7nTX.js} +2 -2
- package/dist/{metrics-kpi-card-CBSNmtc5.js.map → metrics-kpi-card-CY6F7nTX.js.map} +1 -1
- package/dist/{metrics-kpi-card-CgqmNcEC.cjs → metrics-kpi-card-krK6uG7U.cjs} +2 -2
- package/dist/{metrics-kpi-card-CgqmNcEC.cjs.map → metrics-kpi-card-krK6uG7U.cjs.map} +1 -1
- package/dist/new/layout/app-shell.cjs.js +23 -28
- package/dist/new/layout/app-shell.cjs.js.map +1 -1
- package/dist/new/layout/app-shell.es.js +23 -28
- package/dist/new/layout/app-shell.es.js.map +1 -1
- package/dist/{property-filter-applied-BmxCPe2d.cjs → property-filter-applied-CAiO4FBw.cjs} +2 -2
- package/dist/{property-filter-applied-BmxCPe2d.cjs.map → property-filter-applied-CAiO4FBw.cjs.map} +1 -1
- package/dist/{property-filter-applied-BBiUbtr0.js → property-filter-applied-MIKU9okW.js} +2 -2
- package/dist/{property-filter-applied-BBiUbtr0.js.map → property-filter-applied-MIKU9okW.js.map} +1 -1
- package/dist/radio-group-BdEPWGzi.cjs +62 -0
- package/dist/radio-group-BdEPWGzi.cjs.map +1 -0
- package/dist/radio-group-CFZXUXZ5.js +40 -0
- package/dist/radio-group-CFZXUXZ5.js.map +1 -0
- package/dist/{search-field-block-D0PUUCAE.cjs → search-field-block-DAdvPs1N.cjs} +8 -9
- package/dist/{search-field-block-D0PUUCAE.cjs.map → search-field-block-DAdvPs1N.cjs.map} +1 -1
- package/dist/{search-field-block-B5vUVTpl.js → search-field-block-DjN9AgLw.js} +2 -3
- package/dist/{search-field-block-B5vUVTpl.js.map → search-field-block-DjN9AgLw.js.map} +1 -1
- package/dist/{select-field-block-W2u2WmN3.cjs → select-field-block-7EHxArfT.cjs} +8 -9
- package/dist/{select-field-block-W2u2WmN3.cjs.map → select-field-block-7EHxArfT.cjs.map} +1 -1
- package/dist/{select-field-block-Bu7UXI2H.js → select-field-block-CBte2DyW.js} +2 -3
- package/dist/{select-field-block-Bu7UXI2H.js.map → select-field-block-CBte2DyW.js.map} +1 -1
- package/dist/{span-payload-primitives-DnRsP93D.cjs → span-payload-primitives-BLKf0qn0.cjs} +2 -2
- package/dist/{span-payload-primitives-DnRsP93D.cjs.map → span-payload-primitives-BLKf0qn0.cjs.map} +1 -1
- package/dist/{span-payload-primitives-sbxk4CHC.js → span-payload-primitives-CDLOoJfp.js} +2 -2
- package/dist/{span-payload-primitives-sbxk4CHC.js.map → span-payload-primitives-CDLOoJfp.js.map} +1 -1
- package/dist/{spinner-CqP-NaB2.cjs → spinner-BCpN7LL9.cjs} +9 -3
- package/dist/spinner-BCpN7LL9.cjs.map +1 -0
- package/dist/{spinner-D2C2DYw8.js → spinner-ylbE0TJA.js} +9 -3
- package/dist/spinner-ylbE0TJA.js.map +1 -0
- package/dist/src/domains/traces/components/traces-error-content.d.ts +2 -2
- package/dist/src/domains/traces/hooks/use-trace-url-state.d.ts +5 -3
- package/dist/src/domains/traces/trace-filters.d.ts +19 -4
- package/dist/src/domains/traces/trace-query-filters.d.ts +13 -1
- package/dist/src/ds/components/ActionRow/action-row.d.ts +9 -0
- package/dist/src/ds/components/ActionRow/action-row.stories.d.ts +8 -0
- package/dist/src/ds/components/ActionRow/index.d.ts +5 -0
- package/dist/src/ds/components/ButtonsGroup/buttons-group.stories.d.ts +7 -5
- package/dist/src/ds/components/EmptyState/EmptyState.d.ts +8 -2
- package/dist/src/ds/components/EmptyState/empty-state.stories.d.ts +1 -0
- package/dist/src/ds/components/ErrorState/ErrorState.d.ts +3 -1
- package/dist/src/ds/components/ErrorState/error-state.stories.d.ts +1 -0
- package/dist/src/ds/components/FilterBar/filter-bar-advanced-chip.d.ts +10 -0
- package/dist/src/ds/components/FilterBar/filter-bar-context.d.ts +46 -9
- package/dist/src/ds/components/FilterBar/filter-bar-group-editor.d.ts +25 -0
- package/dist/src/ds/components/FilterBar/filter-bar-input.d.ts +8 -1
- package/dist/src/ds/components/FilterBar/filter-bar-option-list.d.ts +5 -0
- package/dist/src/ds/components/FilterBar/filter-bar-tree.d.ts +36 -0
- package/dist/src/ds/components/FilterBar/filter-bar.d.ts +28 -7
- package/dist/src/ds/components/FilterBar/filter-bar.stories.d.ts +3 -0
- package/dist/src/ds/components/FilterBar/index.d.ts +6 -1
- package/dist/src/ds/components/FilterBar/types.d.ts +36 -0
- package/dist/src/ds/components/FilterBar/use-settle-on-leave.d.ts +2 -0
- package/dist/src/ds/components/PageLayout/index.d.ts +1 -2
- package/dist/src/ds/components/PageLayout/page-layout.d.ts +13 -11
- package/dist/src/ds/components/PageLayout/page-layout.stories.d.ts +1 -2
- package/dist/src/ds/components/PermissionDenied/PermissionDenied.d.ts +3 -1
- package/dist/src/ds/components/PermissionDenied/permission-denied.stories.d.ts +1 -0
- package/dist/src/ds/components/SessionExpired/SessionExpired.d.ts +3 -1
- package/dist/src/ds/components/SessionExpired/session-expired.stories.d.ts +1 -0
- package/dist/src/ds/components/Spinner/spinner.d.ts +6 -3
- package/dist/src/ds/components/Spinner/spinner.stories.d.ts +1 -0
- package/dist/src/ds/components/ai/ask-user/ask-user.d.ts +13 -8
- package/dist/src/ds/new/layout/app-shell/app-shell.d.ts +2 -8
- package/dist/src/ds/new/layout/app-shell/app-shell.stories.d.ts +0 -1
- package/dist/style.css +42 -92
- package/dist/{text-field-block--EUJKlY_.js → text-field-block-DBesvdaa.js} +2 -3
- package/dist/{text-field-block--EUJKlY_.js.map → text-field-block-DBesvdaa.js.map} +1 -1
- package/dist/{text-field-block-BLpLWmu8.cjs → text-field-block-DUMc8MTJ.cjs} +8 -9
- package/dist/{text-field-block-BLpLWmu8.cjs.map → text-field-block-DUMc8MTJ.cjs.map} +1 -1
- package/dist/{tool-call-K147tCug.js → tool-call-Du8XIzfo.js} +2 -2
- package/dist/{tool-call-K147tCug.js.map → tool-call-Du8XIzfo.js.map} +1 -1
- package/dist/{tool-call-CMRvRE-v.cjs → tool-call-ZKSbU3LR.cjs} +2 -2
- package/dist/{tool-call-CMRvRE-v.cjs.map → tool-call-ZKSbU3LR.cjs.map} +1 -1
- package/dist/types-CIPrYAzY.js +9 -0
- package/dist/types-CIPrYAzY.js.map +1 -0
- package/dist/types-Ns4ZNp-g.cjs +12 -0
- package/dist/types-Ns4ZNp-g.cjs.map +1 -0
- package/package.json +6 -6
- package/dist/EmptyState-CdRjFB06.cjs.map +0 -1
- package/dist/EmptyState-UWXhBp5U.js.map +0 -1
- package/dist/ErrorState-B3uTRAEd.cjs +0 -16
- package/dist/ErrorState-B3uTRAEd.cjs.map +0 -1
- package/dist/ErrorState-DqRx8Dw_.js +0 -14
- package/dist/ErrorState-DqRx8Dw_.js.map +0 -1
- package/dist/PermissionDenied-B6TSGolC.js.map +0 -1
- package/dist/PermissionDenied-Dz5qXpQj.cjs.map +0 -1
- package/dist/SessionExpired-Bq5LcsDu.js.map +0 -1
- package/dist/SessionExpired-CF0BGNo_.cjs.map +0 -1
- package/dist/ask-user-CS2e6Re4.cjs +0 -147
- package/dist/ask-user-CS2e6Re4.cjs.map +0 -1
- package/dist/ask-user-gS3Y1bCc.js +0 -138
- package/dist/ask-user-gS3Y1bCc.js.map +0 -1
- package/dist/components/MainContent.cjs.js +0 -81
- package/dist/components/MainContent.cjs.js.map +0 -1
- package/dist/components/MainContent.d.ts +0 -2
- package/dist/components/MainContent.es.js +0 -75
- package/dist/components/MainContent.es.js.map +0 -1
- package/dist/field-block-DWkbNcsV.js.map +0 -1
- package/dist/field-block-Dy1IaWbv.cjs.map +0 -1
- package/dist/field-error-id-B3Z2Zu5y.cjs +0 -6
- package/dist/field-error-id-B3Z2Zu5y.cjs.map +0 -1
- package/dist/field-error-id-D3yg1nBh.js +0 -4
- package/dist/field-error-id-D3yg1nBh.js.map +0 -1
- package/dist/filter-bar-chip-BxI0NgEz.cjs.map +0 -1
- package/dist/filter-bar-chip-C-JxWUU8.js.map +0 -1
- package/dist/new/layout/page-shell.cjs.js +0 -34
- package/dist/new/layout/page-shell.cjs.js.map +0 -1
- package/dist/new/layout/page-shell.d.ts +0 -2
- package/dist/new/layout/page-shell.es.js +0 -30
- package/dist/new/layout/page-shell.es.js.map +0 -1
- package/dist/no-data-page-layout-DcVPjj-J.js +0 -9
- package/dist/no-data-page-layout-DcVPjj-J.js.map +0 -1
- package/dist/no-data-page-layout-Drzbg_w8.cjs +0 -11
- package/dist/no-data-page-layout-Drzbg_w8.cjs.map +0 -1
- package/dist/page-heading-context-D3yjYoJE.js +0 -9
- package/dist/page-heading-context-D3yjYoJE.js.map +0 -1
- package/dist/page-heading-context-Du-CpxAx.cjs +0 -12
- package/dist/page-heading-context-Du-CpxAx.cjs.map +0 -1
- package/dist/page-layout-C9ifD9Q8.cjs +0 -99
- package/dist/page-layout-C9ifD9Q8.cjs.map +0 -1
- package/dist/page-layout-xcM8IR-B.js +0 -97
- package/dist/page-layout-xcM8IR-B.js.map +0 -1
- package/dist/spinner-CqP-NaB2.cjs.map +0 -1
- package/dist/spinner-D2C2DYw8.js.map +0 -1
- package/dist/src/ds/components/MainContent/index.d.ts +0 -1
- package/dist/src/ds/components/MainContent/main-content.d.ts +0 -21
- package/dist/src/ds/components/MainContent/main-content.stories.d.ts +0 -10
- package/dist/src/ds/components/PageLayout/no-data-page-layout.d.ts +0 -6
- package/dist/src/ds/components/PageLayout/page-heading-context.d.ts +0 -2
- package/dist/src/ds/components/PageLayout/page-layout-column.d.ts +0 -5
- package/dist/src/ds/components/PageLayout/page-layout-main-area.d.ts +0 -7
- package/dist/src/ds/components/PageLayout/page-layout-root.d.ts +0 -7
- package/dist/src/ds/components/PageLayout/page-layout-row.d.ts +0 -11
- package/dist/src/ds/components/PageLayout/page-layout-top-area.d.ts +0 -5
- package/dist/src/ds/new/layout/page-shell/index.d.ts +0 -1
- package/dist/src/ds/new/layout/page-shell/page-shell.d.ts +0 -24
- package/dist/src/ds/new/layout/page-shell/page-shell.stories.d.ts +0 -63
|
@@ -1,22 +1,24 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
const jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
const lucideReact = require('lucide-react');
|
|
4
5
|
const utils_cn = require('./cn-DG0X1KEP.cjs');
|
|
5
6
|
|
|
6
7
|
function EmptyState({
|
|
7
|
-
iconSlot,
|
|
8
|
+
iconSlot = /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleSlashIcon, {}),
|
|
8
9
|
titleSlot,
|
|
9
10
|
descriptionSlot,
|
|
10
11
|
actionSlot,
|
|
11
12
|
className,
|
|
12
|
-
as: HeadingTag = "h3"
|
|
13
|
+
as: HeadingTag = "h3",
|
|
14
|
+
variant = "inline"
|
|
13
15
|
}) {
|
|
14
|
-
|
|
16
|
+
const content = /* @__PURE__ */ jsxRuntime.jsxs(
|
|
15
17
|
"div",
|
|
16
18
|
{
|
|
17
19
|
className: utils_cn.cn(
|
|
18
20
|
"flex flex-col items-center justify-center px-4 py-6 text-center",
|
|
19
|
-
"duration-normal
|
|
21
|
+
"transition-opacity duration-normal ease-out-custom",
|
|
20
22
|
className
|
|
21
23
|
),
|
|
22
24
|
children: [
|
|
@@ -27,7 +29,11 @@ function EmptyState({
|
|
|
27
29
|
]
|
|
28
30
|
}
|
|
29
31
|
);
|
|
32
|
+
if (variant === "fill") {
|
|
33
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "empty-state-fill", className: "flex h-full items-center-safe justify-center-safe", children: content });
|
|
34
|
+
}
|
|
35
|
+
return content;
|
|
30
36
|
}
|
|
31
37
|
|
|
32
38
|
exports.EmptyState = EmptyState;
|
|
33
|
-
//# sourceMappingURL=EmptyState-
|
|
39
|
+
//# sourceMappingURL=EmptyState-0MgNiP40.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmptyState-0MgNiP40.cjs","sources":["../src/ds/components/EmptyState/EmptyState.tsx"],"sourcesContent":["import { CircleSlashIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\n\nexport type EmptyStateProps = {\n /** Defaults to a circle-slash icon. Pass `null` to render no icon. */\n iconSlot?: React.ReactNode;\n titleSlot: React.ReactNode;\n descriptionSlot?: React.ReactNode;\n actionSlot?: React.ReactNode;\n className?: string;\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n /**\n * `inline` (default) renders the block in place.\n * `fill` centers it in the full height of its parent — the parent must have a definite height.\n */\n variant?: 'inline' | 'fill';\n};\n\nexport function EmptyState({\n iconSlot = <CircleSlashIcon />,\n titleSlot,\n descriptionSlot,\n actionSlot,\n className,\n as: HeadingTag = 'h3',\n variant = 'inline',\n}: EmptyStateProps) {\n const content = (\n <div\n className={cn(\n 'flex flex-col items-center justify-center px-4 py-6 text-center',\n 'transition-opacity duration-normal ease-out-custom',\n className,\n )}\n >\n {iconSlot && <div className=\"mb-3\">{iconSlot}</div>}\n <HeadingTag className=\"text-subheading text-foreground\">{titleSlot}</HeadingTag>\n {descriptionSlot && <p className=\"text-caption text-muted-foreground mt-1.5 max-w-md\">{descriptionSlot}</p>}\n {actionSlot && <div className=\"mt-4\">{actionSlot}</div>}\n </div>\n );\n\n if (variant === 'fill') {\n return (\n <div data-slot=\"empty-state-fill\" className=\"flex h-full items-center-safe justify-center-safe\">\n {content}\n </div>\n );\n }\n\n return content;\n}\n"],"names":["CircleSlashIcon","jsxs","cn","jsx"],"mappings":";;;;;;AAmBO,SAAS,UAAA,CAAW;AAAA,EACzB,QAAA,kCAAYA,2BAAA,EAAA,EAAgB,CAAA;AAAA,EAC5B,SAAA;AAAA,EACA,eAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,IAAI,UAAA,GAAa,IAAA;AAAA,EACjB,OAAA,GAAU;AACZ,CAAA,EAAoB;AAClB,EAAA,MAAM,OAAA,mBACJC,eAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAWC,WAAA;AAAA,QACT,iEAAA;AAAA,QACA,oDAAA;AAAA,QACA;AAAA,OACF;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,QAAA,oBAAYC,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EAAQ,QAAA,EAAA,QAAA,EAAS,CAAA;AAAA,wBAC7CA,cAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,iCAAA,EAAmC,QAAA,EAAA,SAAA,EAAU,CAAA;AAAA,QAClE,eAAA,oBAAmBA,cAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,sDAAsD,QAAA,EAAA,eAAA,EAAgB,CAAA;AAAA,QACtG,UAAA,oBAAcA,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,QAAQ,QAAA,EAAA,UAAA,EAAW;AAAA;AAAA;AAAA,GACnD;AAGF,EAAA,IAAI,YAAY,MAAA,EAAQ;AACtB,IAAA,sCACG,KAAA,EAAA,EAAI,WAAA,EAAU,kBAAA,EAAmB,SAAA,EAAU,qDACzC,QAAA,EAAA,OAAA,EACH,CAAA;AAAA,EAEJ;AAEA,EAAA,OAAO,OAAA;AACT;;;;"}
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { CircleSlashIcon } from 'lucide-react';
|
|
2
3
|
import { c as cn } from './cn-65Adrsfj.js';
|
|
3
4
|
|
|
4
5
|
function EmptyState({
|
|
5
|
-
iconSlot,
|
|
6
|
+
iconSlot = /* @__PURE__ */ jsx(CircleSlashIcon, {}),
|
|
6
7
|
titleSlot,
|
|
7
8
|
descriptionSlot,
|
|
8
9
|
actionSlot,
|
|
9
10
|
className,
|
|
10
|
-
as: HeadingTag = "h3"
|
|
11
|
+
as: HeadingTag = "h3",
|
|
12
|
+
variant = "inline"
|
|
11
13
|
}) {
|
|
12
|
-
|
|
14
|
+
const content = /* @__PURE__ */ jsxs(
|
|
13
15
|
"div",
|
|
14
16
|
{
|
|
15
17
|
className: cn(
|
|
16
18
|
"flex flex-col items-center justify-center px-4 py-6 text-center",
|
|
17
|
-
"duration-normal
|
|
19
|
+
"transition-opacity duration-normal ease-out-custom",
|
|
18
20
|
className
|
|
19
21
|
),
|
|
20
22
|
children: [
|
|
@@ -25,7 +27,11 @@ function EmptyState({
|
|
|
25
27
|
]
|
|
26
28
|
}
|
|
27
29
|
);
|
|
30
|
+
if (variant === "fill") {
|
|
31
|
+
return /* @__PURE__ */ jsx("div", { "data-slot": "empty-state-fill", className: "flex h-full items-center-safe justify-center-safe", children: content });
|
|
32
|
+
}
|
|
33
|
+
return content;
|
|
28
34
|
}
|
|
29
35
|
|
|
30
36
|
export { EmptyState as E };
|
|
31
|
-
//# sourceMappingURL=EmptyState-
|
|
37
|
+
//# sourceMappingURL=EmptyState-CiZVWvpH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmptyState-CiZVWvpH.js","sources":["../src/ds/components/EmptyState/EmptyState.tsx"],"sourcesContent":["import { CircleSlashIcon } from 'lucide-react';\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\n\nexport type EmptyStateProps = {\n /** Defaults to a circle-slash icon. Pass `null` to render no icon. */\n iconSlot?: React.ReactNode;\n titleSlot: React.ReactNode;\n descriptionSlot?: React.ReactNode;\n actionSlot?: React.ReactNode;\n className?: string;\n as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n /**\n * `inline` (default) renders the block in place.\n * `fill` centers it in the full height of its parent — the parent must have a definite height.\n */\n variant?: 'inline' | 'fill';\n};\n\nexport function EmptyState({\n iconSlot = <CircleSlashIcon />,\n titleSlot,\n descriptionSlot,\n actionSlot,\n className,\n as: HeadingTag = 'h3',\n variant = 'inline',\n}: EmptyStateProps) {\n const content = (\n <div\n className={cn(\n 'flex flex-col items-center justify-center px-4 py-6 text-center',\n 'transition-opacity duration-normal ease-out-custom',\n className,\n )}\n >\n {iconSlot && <div className=\"mb-3\">{iconSlot}</div>}\n <HeadingTag className=\"text-subheading text-foreground\">{titleSlot}</HeadingTag>\n {descriptionSlot && <p className=\"text-caption text-muted-foreground mt-1.5 max-w-md\">{descriptionSlot}</p>}\n {actionSlot && <div className=\"mt-4\">{actionSlot}</div>}\n </div>\n );\n\n if (variant === 'fill') {\n return (\n <div data-slot=\"empty-state-fill\" className=\"flex h-full items-center-safe justify-center-safe\">\n {content}\n </div>\n );\n }\n\n return content;\n}\n"],"names":[],"mappings":";;;;AAmBO,SAAS,UAAA,CAAW;AAAA,EACzB,QAAA,uBAAY,eAAA,EAAA,EAAgB,CAAA;AAAA,EAC5B,SAAA;AAAA,EACA,eAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,IAAI,UAAA,GAAa,IAAA;AAAA,EACjB,OAAA,GAAU;AACZ,CAAA,EAAoB;AAClB,EAAA,MAAM,OAAA,mBACJ,IAAA;AAAA,IAAC,KAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,iEAAA;AAAA,QACA,oDAAA;AAAA,QACA;AAAA,OACF;AAAA,MAEC,QAAA,EAAA;AAAA,QAAA,QAAA,oBAAY,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,MAAA,EAAQ,QAAA,EAAA,QAAA,EAAS,CAAA;AAAA,wBAC7C,GAAA,CAAC,UAAA,EAAA,EAAW,SAAA,EAAU,iCAAA,EAAmC,QAAA,EAAA,SAAA,EAAU,CAAA;AAAA,QAClE,eAAA,oBAAmB,GAAA,CAAC,GAAA,EAAA,EAAE,SAAA,EAAU,sDAAsD,QAAA,EAAA,eAAA,EAAgB,CAAA;AAAA,QACtG,UAAA,oBAAc,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,QAAQ,QAAA,EAAA,UAAA,EAAW;AAAA;AAAA;AAAA,GACnD;AAGF,EAAA,IAAI,YAAY,MAAA,EAAQ;AACtB,IAAA,2BACG,KAAA,EAAA,EAAI,WAAA,EAAU,kBAAA,EAAmB,SAAA,EAAU,qDACzC,QAAA,EAAA,OAAA,EACH,CAAA;AAAA,EAEJ;AAEA,EAAA,OAAO,OAAA;AACT;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
const lucideReact = require('lucide-react');
|
|
5
|
+
const EmptyState = require('./EmptyState-0MgNiP40.cjs');
|
|
6
|
+
|
|
7
|
+
function ErrorState({ title, message, action, variant }) {
|
|
8
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9
|
+
EmptyState.EmptyState,
|
|
10
|
+
{
|
|
11
|
+
iconSlot: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleXIcon, { className: "size-8 text-red-900" }),
|
|
12
|
+
titleSlot: title,
|
|
13
|
+
descriptionSlot: message,
|
|
14
|
+
actionSlot: action,
|
|
15
|
+
variant
|
|
16
|
+
}
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
exports.ErrorState = ErrorState;
|
|
21
|
+
//# sourceMappingURL=ErrorState-C7-4A-rB.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorState-C7-4A-rB.cjs","sources":["../src/ds/components/ErrorState/ErrorState.tsx"],"sourcesContent":["import { CircleXIcon } from 'lucide-react';\nimport { EmptyState } from '@/ds/components/EmptyState';\nimport type { EmptyStateProps } from '@/ds/components/EmptyState';\n\nexport type ErrorStateProps = {\n title: string;\n message: string;\n action?: React.ReactNode;\n variant?: EmptyStateProps['variant'];\n};\n\nexport function ErrorState({ title, message, action, variant }: ErrorStateProps) {\n return (\n <EmptyState\n iconSlot={<CircleXIcon className=\"size-8 text-red-900\" />}\n titleSlot={title}\n descriptionSlot={message}\n actionSlot={action}\n variant={variant}\n />\n );\n}\n"],"names":["jsx","EmptyState","CircleXIcon"],"mappings":";;;;;;AAWO,SAAS,WAAW,EAAE,KAAA,EAAO,OAAA,EAAS,MAAA,EAAQ,SAAQ,EAAoB;AAC/E,EAAA,uBACEA,cAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACC,QAAA,kBAAUD,cAAA,CAACE,uBAAA,EAAA,EAAY,SAAA,EAAU,qBAAA,EAAsB,CAAA;AAAA,MACvD,SAAA,EAAW,KAAA;AAAA,MACX,eAAA,EAAiB,OAAA;AAAA,MACjB,UAAA,EAAY,MAAA;AAAA,MACZ;AAAA;AAAA,GACF;AAEJ;;;;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { CircleXIcon } from 'lucide-react';
|
|
3
|
+
import { E as EmptyState } from './EmptyState-CiZVWvpH.js';
|
|
4
|
+
|
|
5
|
+
function ErrorState({ title, message, action, variant }) {
|
|
6
|
+
return /* @__PURE__ */ jsx(
|
|
7
|
+
EmptyState,
|
|
8
|
+
{
|
|
9
|
+
iconSlot: /* @__PURE__ */ jsx(CircleXIcon, { className: "size-8 text-red-900" }),
|
|
10
|
+
titleSlot: title,
|
|
11
|
+
descriptionSlot: message,
|
|
12
|
+
actionSlot: action,
|
|
13
|
+
variant
|
|
14
|
+
}
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { ErrorState as E };
|
|
19
|
+
//# sourceMappingURL=ErrorState-l5gg5Nzw.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ErrorState-l5gg5Nzw.js","sources":["../src/ds/components/ErrorState/ErrorState.tsx"],"sourcesContent":["import { CircleXIcon } from 'lucide-react';\nimport { EmptyState } from '@/ds/components/EmptyState';\nimport type { EmptyStateProps } from '@/ds/components/EmptyState';\n\nexport type ErrorStateProps = {\n title: string;\n message: string;\n action?: React.ReactNode;\n variant?: EmptyStateProps['variant'];\n};\n\nexport function ErrorState({ title, message, action, variant }: ErrorStateProps) {\n return (\n <EmptyState\n iconSlot={<CircleXIcon className=\"size-8 text-red-900\" />}\n titleSlot={title}\n descriptionSlot={message}\n actionSlot={action}\n variant={variant}\n />\n );\n}\n"],"names":[],"mappings":";;;;AAWO,SAAS,WAAW,EAAE,KAAA,EAAO,OAAA,EAAS,MAAA,EAAQ,SAAQ,EAAoB;AAC/E,EAAA,uBACE,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,QAAA,kBAAU,GAAA,CAAC,WAAA,EAAA,EAAY,SAAA,EAAU,qBAAA,EAAsB,CAAA;AAAA,MACvD,SAAA,EAAW,KAAA;AAAA,MACX,eAAA,EAAiB,OAAA;AAAA,MACjB,UAAA,EAAY,MAAA;AAAA,MACZ;AAAA;AAAA,GACF;AAEJ;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { T as Txt } from './Txt-DTh3Pa_a.js';
|
|
3
|
+
import { c as cn } from './cn-65Adrsfj.js';
|
|
4
|
+
|
|
5
|
+
const Header = ({ children, border = true, className }) => {
|
|
6
|
+
return /* @__PURE__ */ jsx(
|
|
7
|
+
"header",
|
|
8
|
+
{
|
|
9
|
+
className: cn(
|
|
10
|
+
"z-50 flex h-header-default w-full items-center gap-2 bg-transparent px-2",
|
|
11
|
+
{
|
|
12
|
+
"border-b border-border": border
|
|
13
|
+
},
|
|
14
|
+
className
|
|
15
|
+
),
|
|
16
|
+
children
|
|
17
|
+
}
|
|
18
|
+
);
|
|
19
|
+
};
|
|
20
|
+
const HeaderTitle = ({ children }) => {
|
|
21
|
+
return /* @__PURE__ */ jsx(Txt, { as: "h1", variant: "body", tone: "ink", className: "flex items-center gap-2", children });
|
|
22
|
+
};
|
|
23
|
+
const HeaderAction = ({ children }) => {
|
|
24
|
+
return /* @__PURE__ */ jsx("div", { className: "ml-auto flex items-center gap-3", children });
|
|
25
|
+
};
|
|
26
|
+
const HeaderGroup = ({ children }) => {
|
|
27
|
+
return /* @__PURE__ */ jsx("div", { className: "flex items-center gap-2", children });
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export { Header as H, HeaderAction as a, HeaderGroup as b, HeaderTitle as c };
|
|
31
|
+
//# sourceMappingURL=Header-BVnFQlzE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Header-BVnFQlzE.js","sources":["../src/ds/components/Header/Header.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Txt } from '../Txt';\nimport { cn } from '@/lib/utils';\n\nexport interface HeaderProps {\n children?: React.ReactNode;\n border?: boolean;\n className?: string;\n}\n\nexport const Header = ({ children, border = true, className }: HeaderProps) => {\n return (\n <header\n className={cn(\n 'z-50 flex h-header-default w-full items-center gap-2 bg-transparent px-2',\n {\n 'border-b border-border': border,\n },\n className,\n )}\n >\n {children}\n </header>\n );\n};\n\nexport const HeaderTitle = ({ children }: HeaderProps) => {\n return (\n <Txt as=\"h1\" variant=\"body\" tone=\"ink\" className=\"flex items-center gap-2\">\n {children}\n </Txt>\n );\n};\n\nexport const HeaderAction = ({ children }: HeaderProps) => {\n return <div className=\"ml-auto flex items-center gap-3\">{children}</div>;\n};\n\nexport const HeaderGroup = ({ children }: HeaderProps) => {\n return <div className=\"flex items-center gap-2\">{children}</div>;\n};\n"],"names":[],"mappings":";;;;AAWO,MAAM,SAAS,CAAC,EAAE,UAAU,MAAA,GAAS,IAAA,EAAM,WAAU,KAAmB;AAC7E,EAAA,uBACE,GAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAW,EAAA;AAAA,QACT,0EAAA;AAAA,QACA;AAAA,UACE,wBAAA,EAA0B;AAAA,SAC5B;AAAA,QACA;AAAA,OACF;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ;AAEO,MAAM,WAAA,GAAc,CAAC,EAAE,QAAA,EAAS,KAAmB;AACxD,EAAA,uBACE,GAAA,CAAC,GAAA,EAAA,EAAI,EAAA,EAAG,IAAA,EAAK,OAAA,EAAQ,QAAO,IAAA,EAAK,KAAA,EAAM,SAAA,EAAU,yBAAA,EAC9C,QAAA,EACH,CAAA;AAEJ;AAEO,MAAM,YAAA,GAAe,CAAC,EAAE,QAAA,EAAS,KAAmB;AACzD,EAAA,uBAAO,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,iCAAA,EAAmC,QAAA,EAAS,CAAA;AACpE;AAEO,MAAM,WAAA,GAAc,CAAC,EAAE,QAAA,EAAS,KAAmB;AACxD,EAAA,uBAAO,GAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yBAAA,EAA2B,QAAA,EAAS,CAAA;AAC5D;;;;"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
const Txt = require('./Txt-B4-2nLaI.cjs');
|
|
5
|
+
const utils_cn = require('./cn-DG0X1KEP.cjs');
|
|
6
|
+
|
|
7
|
+
const Header = ({ children, border = true, className }) => {
|
|
8
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
9
|
+
"header",
|
|
10
|
+
{
|
|
11
|
+
className: utils_cn.cn(
|
|
12
|
+
"z-50 flex h-header-default w-full items-center gap-2 bg-transparent px-2",
|
|
13
|
+
{
|
|
14
|
+
"border-b border-border": border
|
|
15
|
+
},
|
|
16
|
+
className
|
|
17
|
+
),
|
|
18
|
+
children
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
};
|
|
22
|
+
const HeaderTitle = ({ children }) => {
|
|
23
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "h1", variant: "body", tone: "ink", className: "flex items-center gap-2", children });
|
|
24
|
+
};
|
|
25
|
+
const HeaderAction = ({ children }) => {
|
|
26
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "ml-auto flex items-center gap-3", children });
|
|
27
|
+
};
|
|
28
|
+
const HeaderGroup = ({ children }) => {
|
|
29
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2", children });
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
exports.Header = Header;
|
|
33
|
+
exports.HeaderAction = HeaderAction;
|
|
34
|
+
exports.HeaderGroup = HeaderGroup;
|
|
35
|
+
exports.HeaderTitle = HeaderTitle;
|
|
36
|
+
//# sourceMappingURL=Header-CGjhJ0nQ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Header-CGjhJ0nQ.cjs","sources":["../src/ds/components/Header/Header.tsx"],"sourcesContent":["import React from 'react';\n\nimport { Txt } from '../Txt';\nimport { cn } from '@/lib/utils';\n\nexport interface HeaderProps {\n children?: React.ReactNode;\n border?: boolean;\n className?: string;\n}\n\nexport const Header = ({ children, border = true, className }: HeaderProps) => {\n return (\n <header\n className={cn(\n 'z-50 flex h-header-default w-full items-center gap-2 bg-transparent px-2',\n {\n 'border-b border-border': border,\n },\n className,\n )}\n >\n {children}\n </header>\n );\n};\n\nexport const HeaderTitle = ({ children }: HeaderProps) => {\n return (\n <Txt as=\"h1\" variant=\"body\" tone=\"ink\" className=\"flex items-center gap-2\">\n {children}\n </Txt>\n );\n};\n\nexport const HeaderAction = ({ children }: HeaderProps) => {\n return <div className=\"ml-auto flex items-center gap-3\">{children}</div>;\n};\n\nexport const HeaderGroup = ({ children }: HeaderProps) => {\n return <div className=\"flex items-center gap-2\">{children}</div>;\n};\n"],"names":["jsx","cn","Txt"],"mappings":";;;;;;AAWO,MAAM,SAAS,CAAC,EAAE,UAAU,MAAA,GAAS,IAAA,EAAM,WAAU,KAAmB;AAC7E,EAAA,uBACEA,cAAA;AAAA,IAAC,QAAA;AAAA,IAAA;AAAA,MACC,SAAA,EAAWC,WAAA;AAAA,QACT,0EAAA;AAAA,QACA;AAAA,UACE,wBAAA,EAA0B;AAAA,SAC5B;AAAA,QACA;AAAA,OACF;AAAA,MAEC;AAAA;AAAA,GACH;AAEJ;AAEO,MAAM,WAAA,GAAc,CAAC,EAAE,QAAA,EAAS,KAAmB;AACxD,EAAA,uBACED,cAAA,CAACE,OAAA,EAAA,EAAI,EAAA,EAAG,IAAA,EAAK,OAAA,EAAQ,QAAO,IAAA,EAAK,KAAA,EAAM,SAAA,EAAU,yBAAA,EAC9C,QAAA,EACH,CAAA;AAEJ;AAEO,MAAM,YAAA,GAAe,CAAC,EAAE,QAAA,EAAS,KAAmB;AACzD,EAAA,uBAAOF,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,iCAAA,EAAmC,QAAA,EAAS,CAAA;AACpE;AAEO,MAAM,WAAA,GAAc,CAAC,EAAE,QAAA,EAAS,KAAmB;AACxD,EAAA,uBAAOA,cAAA,CAAC,KAAA,EAAA,EAAI,SAAA,EAAU,yBAAA,EAA2B,QAAA,EAAS,CAAA;AAC5D;;;;;;;"}
|
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
const jsxRuntime = require('react/jsx-runtime');
|
|
4
|
-
const
|
|
5
|
-
const icons_Icon = require('./icons/Icon.cjs.js');
|
|
6
|
-
const EmptyState = require('./EmptyState-CdRjFB06.cjs');
|
|
4
|
+
const EmptyState = require('./EmptyState-0MgNiP40.cjs');
|
|
7
5
|
|
|
8
|
-
function PermissionDenied({
|
|
6
|
+
function PermissionDenied({
|
|
7
|
+
resource,
|
|
8
|
+
title,
|
|
9
|
+
description,
|
|
10
|
+
actionSlot,
|
|
11
|
+
className,
|
|
12
|
+
variant
|
|
13
|
+
}) {
|
|
9
14
|
const defaultTitle = "Permission Denied";
|
|
10
15
|
const defaultDescription = resource ? `You don't have permission to access ${resource}. Contact your administrator for access.` : "You don't have permission to access this resource. Contact your administrator for access.";
|
|
11
16
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
12
17
|
EmptyState.EmptyState,
|
|
13
18
|
{
|
|
14
19
|
className,
|
|
15
|
-
|
|
20
|
+
variant,
|
|
16
21
|
titleSlot: title ?? defaultTitle,
|
|
17
22
|
descriptionSlot: description ?? defaultDescription,
|
|
18
23
|
actionSlot
|
|
@@ -21,4 +26,4 @@ function PermissionDenied({ resource, title, description, actionSlot, className
|
|
|
21
26
|
}
|
|
22
27
|
|
|
23
28
|
exports.PermissionDenied = PermissionDenied;
|
|
24
|
-
//# sourceMappingURL=PermissionDenied-
|
|
29
|
+
//# sourceMappingURL=PermissionDenied-CwLIzjpC.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PermissionDenied-CwLIzjpC.cjs","sources":["../src/ds/components/PermissionDenied/PermissionDenied.tsx"],"sourcesContent":["import { ShieldX } from 'lucide-react';\nimport * as React from 'react';\nimport { Icon } from '../../icons/Icon';\nimport { EmptyState } from '../EmptyState';\nimport type { EmptyStateProps } from '../EmptyState';\n\nexport interface PermissionDeniedProps {\n /** Resource type (e.g., \"agents\", \"workflows\") */\n resource?: string;\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Optional action slot (e.g., contact admin button) */\n actionSlot?: React.ReactNode;\n /** Additional CSS classes */\n className?: string;\n variant?: EmptyStateProps['variant'];\n}\n\nexport function PermissionDenied({\n resource,\n title,\n description,\n actionSlot,\n className,\n variant,\n}: PermissionDeniedProps) {\n const defaultTitle = 'Permission Denied';\n const defaultDescription = resource\n ? `You don't have permission to access ${resource}. Contact your administrator for access.`\n : \"You don't have permission to access this resource. Contact your administrator for access.\";\n\n return (\n <EmptyState\n className={className}\n variant={variant}\n titleSlot={title ?? defaultTitle}\n descriptionSlot={description ?? defaultDescription}\n actionSlot={actionSlot}\n />\n );\n}\n"],"names":["jsx","EmptyState"],"mappings":";;;;;AAoBO,SAAS,gBAAA,CAAiB;AAAA,EAC/B,QAAA;AAAA,EACA,KAAA;AAAA,EACA,WAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA;AACF,CAAA,EAA0B;AACxB,EAAA,MAAM,YAAA,GAAe,mBAAA;AACrB,EAAA,MAAM,kBAAA,GAAqB,QAAA,GACvB,CAAA,oCAAA,EAAuC,QAAQ,CAAA,wCAAA,CAAA,GAC/C,2FAAA;AAEJ,EAAA,uBACEA,cAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAW,KAAA,IAAS,YAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,kBAAA;AAAA,MAChC;AAAA;AAAA,GACF;AAEJ;;;;"}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
3
|
-
import { Icon } from './icons/Icon.es.js';
|
|
4
|
-
import { E as EmptyState } from './EmptyState-UWXhBp5U.js';
|
|
2
|
+
import { E as EmptyState } from './EmptyState-CiZVWvpH.js';
|
|
5
3
|
|
|
6
|
-
function PermissionDenied({
|
|
4
|
+
function PermissionDenied({
|
|
5
|
+
resource,
|
|
6
|
+
title,
|
|
7
|
+
description,
|
|
8
|
+
actionSlot,
|
|
9
|
+
className,
|
|
10
|
+
variant
|
|
11
|
+
}) {
|
|
7
12
|
const defaultTitle = "Permission Denied";
|
|
8
13
|
const defaultDescription = resource ? `You don't have permission to access ${resource}. Contact your administrator for access.` : "You don't have permission to access this resource. Contact your administrator for access.";
|
|
9
14
|
return /* @__PURE__ */ jsx(
|
|
10
15
|
EmptyState,
|
|
11
16
|
{
|
|
12
17
|
className,
|
|
13
|
-
|
|
18
|
+
variant,
|
|
14
19
|
titleSlot: title ?? defaultTitle,
|
|
15
20
|
descriptionSlot: description ?? defaultDescription,
|
|
16
21
|
actionSlot
|
|
@@ -19,4 +24,4 @@ function PermissionDenied({ resource, title, description, actionSlot, className
|
|
|
19
24
|
}
|
|
20
25
|
|
|
21
26
|
export { PermissionDenied as P };
|
|
22
|
-
//# sourceMappingURL=PermissionDenied-
|
|
27
|
+
//# sourceMappingURL=PermissionDenied-DPM04x0a.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PermissionDenied-DPM04x0a.js","sources":["../src/ds/components/PermissionDenied/PermissionDenied.tsx"],"sourcesContent":["import { ShieldX } from 'lucide-react';\nimport * as React from 'react';\nimport { Icon } from '../../icons/Icon';\nimport { EmptyState } from '../EmptyState';\nimport type { EmptyStateProps } from '../EmptyState';\n\nexport interface PermissionDeniedProps {\n /** Resource type (e.g., \"agents\", \"workflows\") */\n resource?: string;\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Optional action slot (e.g., contact admin button) */\n actionSlot?: React.ReactNode;\n /** Additional CSS classes */\n className?: string;\n variant?: EmptyStateProps['variant'];\n}\n\nexport function PermissionDenied({\n resource,\n title,\n description,\n actionSlot,\n className,\n variant,\n}: PermissionDeniedProps) {\n const defaultTitle = 'Permission Denied';\n const defaultDescription = resource\n ? `You don't have permission to access ${resource}. Contact your administrator for access.`\n : \"You don't have permission to access this resource. Contact your administrator for access.\";\n\n return (\n <EmptyState\n className={className}\n variant={variant}\n titleSlot={title ?? defaultTitle}\n descriptionSlot={description ?? defaultDescription}\n actionSlot={actionSlot}\n />\n );\n}\n"],"names":[],"mappings":";;;AAoBO,SAAS,gBAAA,CAAiB;AAAA,EAC/B,QAAA;AAAA,EACA,KAAA;AAAA,EACA,WAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA;AACF,CAAA,EAA0B;AACxB,EAAA,MAAM,YAAA,GAAe,mBAAA;AACrB,EAAA,MAAM,kBAAA,GAAqB,QAAA,GACvB,CAAA,oCAAA,EAAuC,QAAQ,CAAA,wCAAA,CAAA,GAC/C,2FAAA;AAEJ,EAAA,uBACE,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAW,KAAA,IAAS,YAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,kBAAA;AAAA,MAChC;AAAA;AAAA,GACF;AAEJ;;;;"}
|
|
@@ -4,11 +4,10 @@ const jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
const react = require('@mastra/react');
|
|
5
5
|
const lucideReact = require('lucide-react');
|
|
6
6
|
const React = require('react');
|
|
7
|
-
const icons_Icon = require('./icons/Icon.cjs.js');
|
|
8
7
|
const Button = require('./Button-CVewl8nT.cjs');
|
|
9
|
-
const EmptyState = require('./EmptyState-
|
|
8
|
+
const EmptyState = require('./EmptyState-0MgNiP40.cjs');
|
|
10
9
|
|
|
11
|
-
function SessionExpired({ title, description, className }) {
|
|
10
|
+
function SessionExpired({ title, description, className, variant }) {
|
|
12
11
|
const [isPending, setIsPending] = React.useState(false);
|
|
13
12
|
const client = react.useMastraClient();
|
|
14
13
|
const handleLogin = React.useCallback(async () => {
|
|
@@ -35,7 +34,7 @@ function SessionExpired({ title, description, className }) {
|
|
|
35
34
|
EmptyState.EmptyState,
|
|
36
35
|
{
|
|
37
36
|
className,
|
|
38
|
-
|
|
37
|
+
variant,
|
|
39
38
|
titleSlot: title ?? "Session Expired",
|
|
40
39
|
descriptionSlot: description ?? "Your session has expired. Please log in again to continue.",
|
|
41
40
|
actionSlot: /* @__PURE__ */ jsxRuntime.jsx(Button.Button, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.LogIn, {}), variant: "default", onClick: handleLogin, disabled: isPending, children: isPending ? "Redirecting..." : "Log in" })
|
|
@@ -44,4 +43,4 @@ function SessionExpired({ title, description, className }) {
|
|
|
44
43
|
}
|
|
45
44
|
|
|
46
45
|
exports.SessionExpired = SessionExpired;
|
|
47
|
-
//# sourceMappingURL=SessionExpired-
|
|
46
|
+
//# sourceMappingURL=SessionExpired-07Lz91i3.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionExpired-07Lz91i3.cjs","sources":["../src/ds/components/SessionExpired/SessionExpired.tsx"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { LogIn } from 'lucide-react';\nimport { useState, useCallback } from 'react';\n\nimport { Icon } from '../../icons/Icon';\nimport { Button } from '../Button';\nimport { EmptyState } from '../EmptyState';\nimport type { EmptyStateProps } from '../EmptyState';\n\nexport interface SessionExpiredProps {\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Additional CSS classes */\n className?: string;\n variant?: EmptyStateProps['variant'];\n}\n\nexport function SessionExpired({ title, description, className, variant }: SessionExpiredProps) {\n const [isPending, setIsPending] = useState(false);\n const client = useMastraClient();\n\n const handleLogin = useCallback(async () => {\n try {\n setIsPending(true);\n const { baseUrl = '', apiPrefix } = (client as any).options || {};\n const raw = (apiPrefix || '/api').trim();\n const prefix = (raw.startsWith('/') ? raw : `/${raw}`).replace(/\\/$/, '');\n const params = new URLSearchParams({ redirect_uri: window.location.href });\n const url = `${baseUrl}${prefix}/auth/sso/login?${params}`;\n\n const response = await fetch(url, {\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n });\n\n if (response.ok) {\n const data = await response.json();\n window.location.href = data.url;\n }\n } finally {\n setIsPending(false);\n }\n }, [client]);\n\n return (\n <EmptyState\n className={className}\n variant={variant}\n titleSlot={title ?? 'Session Expired'}\n descriptionSlot={description ?? 'Your session has expired. Please log in again to continue.'}\n actionSlot={\n <Button icon={<LogIn />} variant=\"default\" onClick={handleLogin} disabled={isPending}>\n {isPending ? 'Redirecting...' : 'Log in'}\n </Button>\n }\n />\n );\n}\n"],"names":["useState","useMastraClient","useCallback","jsx","EmptyState","Button","LogIn"],"mappings":";;;;;;;;;AAmBO,SAAS,eAAe,EAAE,KAAA,EAAO,WAAA,EAAa,SAAA,EAAW,SAAQ,EAAwB;AAC9F,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAIA,eAAS,KAAK,CAAA;AAChD,EAAA,MAAM,SAASC,qBAAA,EAAgB;AAE/B,EAAA,MAAM,WAAA,GAAcC,kBAAY,YAAY;AAC1C,IAAA,IAAI;AACF,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,MAAM,EAAE,OAAA,GAAU,EAAA,EAAI,WAAU,GAAK,MAAA,CAAe,WAAW,EAAC;AAChE,MAAA,MAAM,GAAA,GAAA,CAAO,SAAA,IAAa,MAAA,EAAQ,IAAA,EAAK;AACvC,MAAA,MAAM,MAAA,GAAA,CAAU,GAAA,CAAI,UAAA,CAAW,GAAG,CAAA,GAAI,GAAA,GAAM,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,EAAI,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA;AACxE,MAAA,MAAM,MAAA,GAAS,IAAI,eAAA,CAAgB,EAAE,cAAc,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AACzE,MAAA,MAAM,MAAM,CAAA,EAAG,OAAO,CAAA,EAAG,MAAM,mBAAmB,MAAM,CAAA,CAAA;AAExD,MAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,GAAA,EAAK;AAAA,QAChC,WAAA,EAAa,SAAA;AAAA,QACb,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAED,MAAA,IAAI,SAAS,EAAA,EAAI;AACf,QAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,IAAA,EAAK;AACjC,QAAA,MAAA,CAAO,QAAA,CAAS,OAAO,IAAA,CAAK,GAAA;AAAA,MAC9B;AAAA,IACF,CAAA,SAAE;AACA,MAAA,YAAA,CAAa,KAAK,CAAA;AAAA,IACpB;AAAA,EACF,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,uBACEC,cAAA;AAAA,IAACC,qBAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAW,KAAA,IAAS,iBAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,4DAAA;AAAA,MAChC,UAAA,kBACED,cAAA,CAACE,aAAA,EAAA,EAAO,IAAA,iCAAOC,iBAAA,EAAA,EAAM,CAAA,EAAI,OAAA,EAAQ,SAAA,EAAU,SAAS,WAAA,EAAa,QAAA,EAAU,SAAA,EACxE,QAAA,EAAA,SAAA,GAAY,mBAAmB,QAAA,EAClC;AAAA;AAAA,GAEJ;AAEJ;;;;"}
|
|
@@ -2,11 +2,10 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { useMastraClient } from '@mastra/react';
|
|
3
3
|
import { LogIn } from 'lucide-react';
|
|
4
4
|
import { useState, useCallback } from 'react';
|
|
5
|
-
import { Icon } from './icons/Icon.es.js';
|
|
6
5
|
import { B as Button } from './Button-cWcBEd-G.js';
|
|
7
|
-
import { E as EmptyState } from './EmptyState-
|
|
6
|
+
import { E as EmptyState } from './EmptyState-CiZVWvpH.js';
|
|
8
7
|
|
|
9
|
-
function SessionExpired({ title, description, className }) {
|
|
8
|
+
function SessionExpired({ title, description, className, variant }) {
|
|
10
9
|
const [isPending, setIsPending] = useState(false);
|
|
11
10
|
const client = useMastraClient();
|
|
12
11
|
const handleLogin = useCallback(async () => {
|
|
@@ -33,7 +32,7 @@ function SessionExpired({ title, description, className }) {
|
|
|
33
32
|
EmptyState,
|
|
34
33
|
{
|
|
35
34
|
className,
|
|
36
|
-
|
|
35
|
+
variant,
|
|
37
36
|
titleSlot: title ?? "Session Expired",
|
|
38
37
|
descriptionSlot: description ?? "Your session has expired. Please log in again to continue.",
|
|
39
38
|
actionSlot: /* @__PURE__ */ jsx(Button, { icon: /* @__PURE__ */ jsx(LogIn, {}), variant: "default", onClick: handleLogin, disabled: isPending, children: isPending ? "Redirecting..." : "Log in" })
|
|
@@ -42,4 +41,4 @@ function SessionExpired({ title, description, className }) {
|
|
|
42
41
|
}
|
|
43
42
|
|
|
44
43
|
export { SessionExpired as S };
|
|
45
|
-
//# sourceMappingURL=SessionExpired-
|
|
44
|
+
//# sourceMappingURL=SessionExpired-CnJ8zr5Y.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SessionExpired-CnJ8zr5Y.js","sources":["../src/ds/components/SessionExpired/SessionExpired.tsx"],"sourcesContent":["import { useMastraClient } from '@mastra/react';\nimport { LogIn } from 'lucide-react';\nimport { useState, useCallback } from 'react';\n\nimport { Icon } from '../../icons/Icon';\nimport { Button } from '../Button';\nimport { EmptyState } from '../EmptyState';\nimport type { EmptyStateProps } from '../EmptyState';\n\nexport interface SessionExpiredProps {\n /** Custom title override */\n title?: string;\n /** Custom description override */\n description?: string;\n /** Additional CSS classes */\n className?: string;\n variant?: EmptyStateProps['variant'];\n}\n\nexport function SessionExpired({ title, description, className, variant }: SessionExpiredProps) {\n const [isPending, setIsPending] = useState(false);\n const client = useMastraClient();\n\n const handleLogin = useCallback(async () => {\n try {\n setIsPending(true);\n const { baseUrl = '', apiPrefix } = (client as any).options || {};\n const raw = (apiPrefix || '/api').trim();\n const prefix = (raw.startsWith('/') ? raw : `/${raw}`).replace(/\\/$/, '');\n const params = new URLSearchParams({ redirect_uri: window.location.href });\n const url = `${baseUrl}${prefix}/auth/sso/login?${params}`;\n\n const response = await fetch(url, {\n credentials: 'include',\n headers: { 'Content-Type': 'application/json' },\n });\n\n if (response.ok) {\n const data = await response.json();\n window.location.href = data.url;\n }\n } finally {\n setIsPending(false);\n }\n }, [client]);\n\n return (\n <EmptyState\n className={className}\n variant={variant}\n titleSlot={title ?? 'Session Expired'}\n descriptionSlot={description ?? 'Your session has expired. Please log in again to continue.'}\n actionSlot={\n <Button icon={<LogIn />} variant=\"default\" onClick={handleLogin} disabled={isPending}>\n {isPending ? 'Redirecting...' : 'Log in'}\n </Button>\n }\n />\n );\n}\n"],"names":[],"mappings":";;;;;;;AAmBO,SAAS,eAAe,EAAE,KAAA,EAAO,WAAA,EAAa,SAAA,EAAW,SAAQ,EAAwB;AAC9F,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAS,KAAK,CAAA;AAChD,EAAA,MAAM,SAAS,eAAA,EAAgB;AAE/B,EAAA,MAAM,WAAA,GAAc,YAAY,YAAY;AAC1C,IAAA,IAAI;AACF,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,MAAM,EAAE,OAAA,GAAU,EAAA,EAAI,WAAU,GAAK,MAAA,CAAe,WAAW,EAAC;AAChE,MAAA,MAAM,GAAA,GAAA,CAAO,SAAA,IAAa,MAAA,EAAQ,IAAA,EAAK;AACvC,MAAA,MAAM,MAAA,GAAA,CAAU,GAAA,CAAI,UAAA,CAAW,GAAG,CAAA,GAAI,GAAA,GAAM,CAAA,CAAA,EAAI,GAAG,CAAA,CAAA,EAAI,OAAA,CAAQ,KAAA,EAAO,EAAE,CAAA;AACxE,MAAA,MAAM,MAAA,GAAS,IAAI,eAAA,CAAgB,EAAE,cAAc,MAAA,CAAO,QAAA,CAAS,MAAM,CAAA;AACzE,MAAA,MAAM,MAAM,CAAA,EAAG,OAAO,CAAA,EAAG,MAAM,mBAAmB,MAAM,CAAA,CAAA;AAExD,MAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,GAAA,EAAK;AAAA,QAChC,WAAA,EAAa,SAAA;AAAA,QACb,OAAA,EAAS,EAAE,cAAA,EAAgB,kBAAA;AAAmB,OAC/C,CAAA;AAED,MAAA,IAAI,SAAS,EAAA,EAAI;AACf,QAAA,MAAM,IAAA,GAAO,MAAM,QAAA,CAAS,IAAA,EAAK;AACjC,QAAA,MAAA,CAAO,QAAA,CAAS,OAAO,IAAA,CAAK,GAAA;AAAA,MAC9B;AAAA,IACF,CAAA,SAAE;AACA,MAAA,YAAA,CAAa,KAAK,CAAA;AAAA,IACpB;AAAA,EACF,CAAA,EAAG,CAAC,MAAM,CAAC,CAAA;AAEX,EAAA,uBACE,GAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MACC,SAAA;AAAA,MACA,OAAA;AAAA,MACA,WAAW,KAAA,IAAS,iBAAA;AAAA,MACpB,iBAAiB,WAAA,IAAe,4DAAA;AAAA,MAChC,UAAA,kBACE,GAAA,CAAC,MAAA,EAAA,EAAO,IAAA,sBAAO,KAAA,EAAA,EAAM,CAAA,EAAI,OAAA,EAAQ,SAAA,EAAU,SAAS,WAAA,EAAa,QAAA,EAAU,SAAA,EACxE,QAAA,EAAA,SAAA,GAAY,mBAAmB,QAAA,EAClC;AAAA;AAAA,GAEJ;AAEJ;;;;"}
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
const lucideReact = require('lucide-react');
|
|
5
|
+
const React = require('react');
|
|
6
|
+
const Badge = require('./Badge-BEeYtjmv.cjs');
|
|
7
|
+
const Button = require('./Button-CVewl8nT.cjs');
|
|
8
|
+
const checkbox = require('./checkbox-CI8JtZKS.cjs');
|
|
9
|
+
const input = require('./input-CDLMprJS.cjs');
|
|
10
|
+
const radioGroup = require('./radio-group-BdEPWGzi.cjs');
|
|
11
|
+
const Txt = require('./Txt-B4-2nLaI.cjs');
|
|
12
|
+
const icons_Icon = require('./icons/Icon.cjs.js');
|
|
13
|
+
const primitives_raisedSurface = require('./primitives/raised-surface.cjs.js');
|
|
14
|
+
const utils_cn = require('./cn-DG0X1KEP.cjs');
|
|
15
|
+
|
|
16
|
+
const AskUserContainer = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
17
|
+
"div",
|
|
18
|
+
{
|
|
19
|
+
"data-slot": "ask-user",
|
|
20
|
+
className: utils_cn.cn(primitives_raisedSurface.raisedSurfaceStyle, "w-full overflow-hidden rounded-xl", className),
|
|
21
|
+
...props
|
|
22
|
+
}
|
|
23
|
+
);
|
|
24
|
+
const AskUserLabel = ({ children = "Question", className, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-slot": "ask-user-label", className: utils_cn.cn("flex min-h-10 items-center gap-2 px-4 pt-3", className), ...props, children: [
|
|
25
|
+
/* @__PURE__ */ jsxRuntime.jsx(icons_Icon.Icon, { size: "xs", className: "text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.MessageCircleQuestion, {}) }),
|
|
26
|
+
/* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "span", variant: "caption", tone: "muted", children })
|
|
27
|
+
] });
|
|
28
|
+
const AskUserBody = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "ask-user-body", className: utils_cn.cn("px-4 pt-1 pb-4", className), ...props });
|
|
29
|
+
const AskUserQuestion = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "p", variant: "subheading", tone: "ink", ...props, className: utils_cn.cn("mb-3", className) });
|
|
30
|
+
const AskUserOptionRow = ({
|
|
31
|
+
control,
|
|
32
|
+
label,
|
|
33
|
+
description,
|
|
34
|
+
disabled = false,
|
|
35
|
+
className,
|
|
36
|
+
...props
|
|
37
|
+
}) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
38
|
+
"label",
|
|
39
|
+
{
|
|
40
|
+
"aria-disabled": disabled || void 0,
|
|
41
|
+
className: utils_cn.cn(
|
|
42
|
+
"state-layer flex items-start gap-2.5 rounded-lg bg-fill px-3 py-2",
|
|
43
|
+
disabled ? "cursor-not-allowed opacity-50" : "cursor-pointer",
|
|
44
|
+
className
|
|
45
|
+
),
|
|
46
|
+
...props,
|
|
47
|
+
children: [
|
|
48
|
+
control,
|
|
49
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "grid gap-0.5", children: [
|
|
50
|
+
/* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "span", variant: "body", tone: "ink", children: label }),
|
|
51
|
+
description ? /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "span", variant: "caption", tone: "muted", children: description }) : null
|
|
52
|
+
] })
|
|
53
|
+
]
|
|
54
|
+
}
|
|
55
|
+
);
|
|
56
|
+
const AskUserSubmit = ({ children = "Submit answer", ...props }) => /* @__PURE__ */ jsxRuntime.jsx(Button.Button, { icon: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, {}), type: "button", size: "sm", variant: "primary", ...props, children });
|
|
57
|
+
const AskUserPending = ({ children = "Submitting…", ...props }) => /* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "span", role: "status", variant: "caption", tone: "muted", ...props, children });
|
|
58
|
+
const AskUserOutput = ({ result, className, ...props }) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
59
|
+
"div",
|
|
60
|
+
{
|
|
61
|
+
"data-slot": "ask-user-output",
|
|
62
|
+
role: result.isError ? "alert" : "status",
|
|
63
|
+
className: utils_cn.cn("grid gap-2 rounded-lg bg-fill p-3", className),
|
|
64
|
+
...props,
|
|
65
|
+
children: [
|
|
66
|
+
/* @__PURE__ */ jsxRuntime.jsx(Badge.Badge, { size: "xs", variant: result.isError ? "red" : "green", className: "justify-self-start", children: result.isError ? "Error" : "Answered" }),
|
|
67
|
+
/* @__PURE__ */ jsxRuntime.jsx(Txt.Txt, { as: "p", variant: "body", tone: "ink", className: utils_cn.cn(result.isError && "text-error"), children: result.content })
|
|
68
|
+
]
|
|
69
|
+
}
|
|
70
|
+
);
|
|
71
|
+
const validOptions = (options) => options?.filter(
|
|
72
|
+
(option) => Boolean(option && typeof option.label === "string" && option.label)
|
|
73
|
+
) ?? [];
|
|
74
|
+
const AskUserInput = ({
|
|
75
|
+
payload,
|
|
76
|
+
options,
|
|
77
|
+
result,
|
|
78
|
+
isAnswered = false,
|
|
79
|
+
isSubmitting = false,
|
|
80
|
+
onSubmit,
|
|
81
|
+
footer,
|
|
82
|
+
...props
|
|
83
|
+
}) => {
|
|
84
|
+
const fieldId = React.useId();
|
|
85
|
+
const [text, setText] = React.useState("");
|
|
86
|
+
const [selected, setSelected] = React.useState([]);
|
|
87
|
+
if (result || isAnswered) {
|
|
88
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(AskUserContainer, { "data-testid": "ask-user", ...props, children: [
|
|
89
|
+
/* @__PURE__ */ jsxRuntime.jsx(AskUserLabel, {}),
|
|
90
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AskUserBody, { children: [
|
|
91
|
+
/* @__PURE__ */ jsxRuntime.jsx(AskUserQuestion, { children: payload.question }),
|
|
92
|
+
result ? /* @__PURE__ */ jsxRuntime.jsx(AskUserOutput, { result }) : /* @__PURE__ */ jsxRuntime.jsx(Badge.Badge, { variant: "green", children: "Answered" })
|
|
93
|
+
] })
|
|
94
|
+
] });
|
|
95
|
+
}
|
|
96
|
+
const submitText = () => {
|
|
97
|
+
const answer = text.trim();
|
|
98
|
+
if (answer && !isSubmitting) onSubmit(answer);
|
|
99
|
+
};
|
|
100
|
+
const handleTextKeyDown = (event) => {
|
|
101
|
+
if (event.key === "Enter") {
|
|
102
|
+
event.preventDefault();
|
|
103
|
+
submitText();
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
if (options.length === 0) {
|
|
107
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(AskUserContainer, { "data-testid": "ask-user", ...props, children: [
|
|
108
|
+
/* @__PURE__ */ jsxRuntime.jsx(AskUserLabel, {}),
|
|
109
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AskUserBody, { children: [
|
|
110
|
+
/* @__PURE__ */ jsxRuntime.jsx(AskUserQuestion, { as: "label", htmlFor: fieldId, className: "mb-2 block", children: payload.question }),
|
|
111
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
112
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
113
|
+
input.Input,
|
|
114
|
+
{
|
|
115
|
+
id: fieldId,
|
|
116
|
+
value: text,
|
|
117
|
+
onChange: (event) => setText(event.target.value),
|
|
118
|
+
onKeyDown: handleTextKeyDown,
|
|
119
|
+
placeholder: "Type your answer...",
|
|
120
|
+
disabled: isSubmitting,
|
|
121
|
+
size: "sm"
|
|
122
|
+
}
|
|
123
|
+
),
|
|
124
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
125
|
+
AskUserSubmit,
|
|
126
|
+
{
|
|
127
|
+
className: "shrink-0 whitespace-nowrap",
|
|
128
|
+
disabled: isSubmitting || !text.trim(),
|
|
129
|
+
onClick: submitText
|
|
130
|
+
}
|
|
131
|
+
)
|
|
132
|
+
] }),
|
|
133
|
+
isSubmitting ? /* @__PURE__ */ jsxRuntime.jsx(AskUserPending, { className: "mt-2 block" }) : null,
|
|
134
|
+
footer
|
|
135
|
+
] })
|
|
136
|
+
] });
|
|
137
|
+
}
|
|
138
|
+
const isMulti = payload.selectionMode === "multi_select";
|
|
139
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(AskUserContainer, { "data-testid": "ask-user", ...props, children: [
|
|
140
|
+
/* @__PURE__ */ jsxRuntime.jsx(AskUserLabel, {}),
|
|
141
|
+
/* @__PURE__ */ jsxRuntime.jsxs(AskUserBody, { children: [
|
|
142
|
+
/* @__PURE__ */ jsxRuntime.jsx(AskUserQuestion, { id: fieldId, children: payload.question }),
|
|
143
|
+
isMulti ? /* @__PURE__ */ jsxRuntime.jsxs("div", { role: "group", "aria-labelledby": fieldId, className: "grid gap-2", children: [
|
|
144
|
+
options.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
145
|
+
AskUserOptionRow,
|
|
146
|
+
{
|
|
147
|
+
label: option.label,
|
|
148
|
+
description: option.description,
|
|
149
|
+
disabled: isSubmitting,
|
|
150
|
+
control: /* @__PURE__ */ jsxRuntime.jsx(
|
|
151
|
+
checkbox.Checkbox,
|
|
152
|
+
{
|
|
153
|
+
className: "mt-0.5",
|
|
154
|
+
disabled: isSubmitting,
|
|
155
|
+
checked: selected.includes(option.label),
|
|
156
|
+
onCheckedChange: () => setSelected(
|
|
157
|
+
(current) => current.includes(option.label) ? current.filter((selectedLabel) => selectedLabel !== option.label) : [...current, option.label]
|
|
158
|
+
)
|
|
159
|
+
}
|
|
160
|
+
)
|
|
161
|
+
},
|
|
162
|
+
option.label
|
|
163
|
+
)),
|
|
164
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
165
|
+
AskUserSubmit,
|
|
166
|
+
{
|
|
167
|
+
className: "mt-1 justify-self-start",
|
|
168
|
+
disabled: isSubmitting || selected.length === 0,
|
|
169
|
+
onClick: () => onSubmit(selected),
|
|
170
|
+
children: "Submit answer"
|
|
171
|
+
}
|
|
172
|
+
)
|
|
173
|
+
] }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
174
|
+
radioGroup.RadioGroup,
|
|
175
|
+
{
|
|
176
|
+
"aria-labelledby": fieldId,
|
|
177
|
+
disabled: isSubmitting,
|
|
178
|
+
value: selected[0] ?? null,
|
|
179
|
+
onValueChange: (value) => {
|
|
180
|
+
const label = String(value);
|
|
181
|
+
setSelected([label]);
|
|
182
|
+
onSubmit(label);
|
|
183
|
+
},
|
|
184
|
+
children: options.map((option) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
185
|
+
AskUserOptionRow,
|
|
186
|
+
{
|
|
187
|
+
label: option.label,
|
|
188
|
+
description: option.description,
|
|
189
|
+
disabled: isSubmitting,
|
|
190
|
+
control: /* @__PURE__ */ jsxRuntime.jsx(radioGroup.RadioGroupItem, { className: "mt-0.5", value: option.label })
|
|
191
|
+
},
|
|
192
|
+
option.label
|
|
193
|
+
))
|
|
194
|
+
}
|
|
195
|
+
),
|
|
196
|
+
isSubmitting ? /* @__PURE__ */ jsxRuntime.jsx(AskUserPending, { className: "mt-3 block" }) : null,
|
|
197
|
+
footer
|
|
198
|
+
] })
|
|
199
|
+
] });
|
|
200
|
+
};
|
|
201
|
+
const AskUser = ({ payload, ...props }) => {
|
|
202
|
+
const options = validOptions(payload.options);
|
|
203
|
+
const payloadKey = JSON.stringify([payload.question, options.map((option) => option.label), payload.selectionMode]);
|
|
204
|
+
return /* @__PURE__ */ jsxRuntime.jsx(AskUserInput, { payload, options, ...props }, payloadKey);
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
exports.AskUser = AskUser;
|
|
208
|
+
exports.AskUserBody = AskUserBody;
|
|
209
|
+
exports.AskUserContainer = AskUserContainer;
|
|
210
|
+
exports.AskUserLabel = AskUserLabel;
|
|
211
|
+
exports.AskUserOptionRow = AskUserOptionRow;
|
|
212
|
+
exports.AskUserOutput = AskUserOutput;
|
|
213
|
+
exports.AskUserPending = AskUserPending;
|
|
214
|
+
exports.AskUserQuestion = AskUserQuestion;
|
|
215
|
+
exports.AskUserSubmit = AskUserSubmit;
|
|
216
|
+
//# sourceMappingURL=ask-user-B_O3GEjY.cjs.map
|