@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
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { FilterBarExpression, FilterBarGroup, FilterBarItem, FilterBarLogic } from './types';
|
|
2
|
+
export type FilterBarValueInput = FilterBarItem[] | FilterBarExpression;
|
|
3
|
+
export declare const ROOT_GROUP_ID = "root";
|
|
4
|
+
export declare const normalize: (value: FilterBarValueInput) => FilterBarExpression;
|
|
5
|
+
/** Hands back the shape the consumer gave us: flat arrays only ever contain items. */
|
|
6
|
+
export declare const denormalize: (expr: FilterBarExpression, flat: boolean) => FilterBarValueInput;
|
|
7
|
+
export type FlatEntry = {
|
|
8
|
+
item: FilterBarItem;
|
|
9
|
+
groupId?: string;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Items in document order (pre-order, depth-first), each tagged with the group it lives
|
|
13
|
+
* in. A group's leaves sit where its advanced chip sits in the bar, so arrow navigation
|
|
14
|
+
* walks the bar left to right.
|
|
15
|
+
*/
|
|
16
|
+
export declare const flattenItems: (expr: FilterBarExpression) => FlatEntry[];
|
|
17
|
+
export declare const findGroup: (expr: FilterBarExpression, groupId: string) => FilterBarGroup | undefined;
|
|
18
|
+
export declare const findItem: (expr: FilterBarExpression, itemId: string) => FlatEntry | undefined;
|
|
19
|
+
/** Nesting level of a group: root-level groups are at depth 1; `0` when not found. */
|
|
20
|
+
export declare const groupDepth: (expr: FilterBarExpression, groupId: string) => number;
|
|
21
|
+
/** Number of leaf conditions under a group, at any depth. */
|
|
22
|
+
export declare const countLeaves: (group: FilterBarGroup) => number;
|
|
23
|
+
/** Ids of a group and every node below it. */
|
|
24
|
+
export declare const collectIds: (group: FilterBarGroup) => string[];
|
|
25
|
+
export declare const updateItem: (expr: FilterBarExpression, itemId: string, patch: Partial<Omit<FilterBarItem, "id">>) => FilterBarExpression;
|
|
26
|
+
/** Removes an item or a group by id at any depth. Groups left empty are kept (see `pruneEmptyGroups`). */
|
|
27
|
+
export declare const removeNode: (expr: FilterBarExpression, id: string) => FilterBarExpression;
|
|
28
|
+
export declare const removeNodes: (expr: FilterBarExpression, ids: Iterable<string>) => FilterBarExpression;
|
|
29
|
+
/** Drops every group with no leaf left, bottom-up. */
|
|
30
|
+
export declare const pruneEmptyGroups: (expr: FilterBarExpression) => FilterBarExpression;
|
|
31
|
+
export declare const insertItem: (expr: FilterBarExpression, groupId: string | undefined, item: FilterBarItem) => FilterBarExpression;
|
|
32
|
+
export declare const setGroupLogic: (expr: FilterBarExpression, groupId: string, logic: FilterBarLogic) => FilterBarExpression;
|
|
33
|
+
/** Appends a group to the root, or inside `parentId`. */
|
|
34
|
+
export declare const createGroup: (expr: FilterBarExpression, parentId: string | undefined, group: FilterBarGroup) => FilterBarExpression;
|
|
35
|
+
/** Drops removable items at any depth and every group that ends up empty; pinned items stay. */
|
|
36
|
+
export declare const clearRemovable: (expr: FilterBarExpression, pinned: ReadonlySet<string>) => FilterBarExpression;
|
|
@@ -1,18 +1,31 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
+
import { FilterBarAdvancedChip } from './filter-bar-advanced-chip';
|
|
2
3
|
import { FilterBarChip } from './filter-bar-chip';
|
|
3
4
|
import { FilterBarInput } from './filter-bar-input';
|
|
4
|
-
import { FilterBarField, FilterBarItem, FilterBarOperator } from './types';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
operators: FilterBarOperator[];
|
|
5
|
+
import { FilterBarExpression, FilterBarField, FilterBarItem, FilterBarOperator } from './types';
|
|
6
|
+
type FilterBarValueProps = {
|
|
7
|
+
/** Flat list of filters, implicitly joined with `and`. Advanced filters are never offered. */
|
|
8
8
|
value: FilterBarItem[];
|
|
9
9
|
onValueChange: (items: FilterBarItem[]) => void;
|
|
10
|
+
} | {
|
|
11
|
+
/**
|
|
12
|
+
* Tree of filters and groups. Root nodes are joined with `and`; each root group renders
|
|
13
|
+
* as one "Advanced filter" chip whose popover edits the nested `and` / `or` logic.
|
|
14
|
+
*/
|
|
15
|
+
value: FilterBarExpression;
|
|
16
|
+
onValueChange: (expression: FilterBarExpression) => void;
|
|
17
|
+
};
|
|
18
|
+
export type FilterBarProps = FilterBarValueProps & {
|
|
19
|
+
fields: FilterBarField[];
|
|
20
|
+
operators: FilterBarOperator[];
|
|
10
21
|
/**
|
|
11
22
|
* Id given to a newly added item. Defaults to a random id. Consumers that rebuild `value` from
|
|
12
23
|
* their own store (URL, query params…) should return the id they will rebuild it with, so the
|
|
13
24
|
* draft chip and the committed chip are the same element.
|
|
14
25
|
*/
|
|
15
26
|
createItemId?: (fieldId: string) => string;
|
|
27
|
+
/** How deep advanced-filter groups may nest (root-level group = 1). Defaults to 3. */
|
|
28
|
+
maxDepth?: number;
|
|
16
29
|
'aria-label'?: string;
|
|
17
30
|
/** Accessible label of the trailing "remove every filter" button. */
|
|
18
31
|
clearLabel?: string;
|
|
@@ -24,21 +37,28 @@ export type FilterBarProps = {
|
|
|
24
37
|
* single typeahead input, rendered as inline editable chips. Domain-agnostic —
|
|
25
38
|
* fields, operators and values are plain strings supplied by the consumer.
|
|
26
39
|
*
|
|
40
|
+
* Pass a `FilterBarExpression` as `value` to enable Linear-style advanced filters:
|
|
41
|
+
* the input offers "Advanced filter…", which adds one chip whose popover hosts a
|
|
42
|
+
* recursive rule builder (`and` / `or` connectors, nested groups). The bar itself
|
|
43
|
+
* stays flat. A flat `FilterBarItem[]` stays flat.
|
|
44
|
+
*
|
|
27
45
|
* @example
|
|
28
46
|
* <FilterBar value={items} onValueChange={setItems} fields={fields} operators={DEFAULT_FILTER_OPERATORS}>
|
|
29
47
|
* <FilterBar.Chips />
|
|
30
48
|
* <FilterBar.Input />
|
|
31
49
|
* </FilterBar>
|
|
32
50
|
*/
|
|
33
|
-
export declare function FilterBar({ fields, operators, value, onValueChange, createItemId, 'aria-label': ariaLabel, clearLabel, className, children, }: FilterBarProps): import("react").JSX.Element;
|
|
51
|
+
export declare function FilterBar({ fields, operators, value, onValueChange, createItemId, maxDepth, 'aria-label': ariaLabel, clearLabel, className, children, }: FilterBarProps): import("react").JSX.Element;
|
|
34
52
|
export declare namespace FilterBar {
|
|
35
53
|
var Chips: typeof FilterBarChips;
|
|
36
54
|
var Chip: typeof FilterBarChip;
|
|
55
|
+
var AdvancedChip: typeof FilterBarAdvancedChip;
|
|
37
56
|
var Input: typeof FilterBarInput;
|
|
38
57
|
}
|
|
39
58
|
/**
|
|
40
|
-
* Default layout: one editable chip per item,
|
|
41
|
-
*
|
|
59
|
+
* Default layout: one editable chip per root item, one "Advanced filter" chip per root
|
|
60
|
+
* group, in order, then the chip of the filter being built in the bar's input (which
|
|
61
|
+
* becomes the last item's chip once committed).
|
|
42
62
|
*/
|
|
43
63
|
export declare function FilterBarChips({ renderChip }: FilterBarChipsProps): import("react").JSX.Element;
|
|
44
64
|
export type FilterBarChipsProps = {
|
|
@@ -48,3 +68,4 @@ export type FilterBarChipsProps = {
|
|
|
48
68
|
*/
|
|
49
69
|
renderChip?: (item: FilterBarItem) => ReactNode;
|
|
50
70
|
};
|
|
71
|
+
export {};
|
|
@@ -4,7 +4,10 @@ export default meta;
|
|
|
4
4
|
type Story = StoryObj;
|
|
5
5
|
export declare const Default: Story;
|
|
6
6
|
export declare const WithPrefilledFilters: Story;
|
|
7
|
+
export declare const FreeText: Story;
|
|
7
8
|
export declare const LazyValues: Story;
|
|
8
9
|
export declare const LockedChip: Story;
|
|
9
10
|
export declare const CustomLayout: Story;
|
|
10
11
|
export declare const KeyboardOnly: Story;
|
|
12
|
+
export declare const WithAdvancedFilter: Story;
|
|
13
|
+
export declare const BuildAdvancedFilterFromKeyboard: Story;
|
|
@@ -4,5 +4,10 @@ export { FilterBarChip, FilterBarChipField, FilterBarChipOperator, FilterBarChip
|
|
|
4
4
|
export type { FilterBarChipProps } from './filter-bar-chip';
|
|
5
5
|
export { FilterBarInput } from './filter-bar-input';
|
|
6
6
|
export type { FilterBarInputProps } from './filter-bar-input';
|
|
7
|
+
export { FilterBarAdvancedChip } from './filter-bar-advanced-chip';
|
|
8
|
+
export type { FilterBarAdvancedChipProps } from './filter-bar-advanced-chip';
|
|
9
|
+
export { FilterBarGroupEditor, FilterBarLogicToggle } from './filter-bar-group-editor';
|
|
10
|
+
export type { FilterBarGroupEditorProps, FilterBarLogicToggleProps } from './filter-bar-group-editor';
|
|
7
11
|
export { DEFAULT_FILTER_OPERATORS } from './default-operators';
|
|
8
|
-
export
|
|
12
|
+
export { isFilterBarGroup } from './types';
|
|
13
|
+
export type { FilterBarArity, FilterBarDraft, FilterBarExpression, FilterBarField, FilterBarFieldType, FilterBarGroup, FilterBarItem, FilterBarLogic, FilterBarNode, FilterBarOperator, FilterBarOption, FilterBarScalar, FilterBarSegment, FilterBarSuggestionsContext, FilterBarSuggestionsResolver, FilterBarValue, } from './types';
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { LucideIcon } from 'lucide-react';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
2
3
|
/** How many values an operator takes: `none` (is empty), `one` (default) or `many` (string[]). */
|
|
3
4
|
export type FilterBarArity = 'none' | 'one' | 'many';
|
|
4
5
|
export type FilterBarOperator = {
|
|
@@ -9,6 +10,8 @@ export type FilterBarOperator = {
|
|
|
9
10
|
export type FilterBarOption = {
|
|
10
11
|
value: string;
|
|
11
12
|
label?: string;
|
|
13
|
+
/** Leading node (avatar, swatch, icon) rendered before the label in value lists. */
|
|
14
|
+
start?: ReactNode;
|
|
12
15
|
};
|
|
13
16
|
export type FilterBarSuggestionsContext = {
|
|
14
17
|
query: string;
|
|
@@ -49,6 +52,13 @@ export type FilterBarField = {
|
|
|
49
52
|
strict?: boolean;
|
|
50
53
|
/** Never offered in the input's field step; existing chips for it still render with the field label. */
|
|
51
54
|
hidden?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Free-text entry point. The field stays offered in the input's field step whatever the
|
|
57
|
+
* query, so typed text never dead-ends on "No matching field"; picking it with text typed
|
|
58
|
+
* commits that text as the value under the field's first operator, skipping both steps.
|
|
59
|
+
* List it first to make it the default landing option.
|
|
60
|
+
*/
|
|
61
|
+
search?: boolean;
|
|
52
62
|
};
|
|
53
63
|
export type FilterBarItem = {
|
|
54
64
|
id: string;
|
|
@@ -56,6 +66,28 @@ export type FilterBarItem = {
|
|
|
56
66
|
operatorId: string;
|
|
57
67
|
value: FilterBarValue;
|
|
58
68
|
};
|
|
69
|
+
export type FilterBarLogic = 'and' | 'or';
|
|
70
|
+
/**
|
|
71
|
+
* Sub-filters joined by a single logic connector. Groups nest recursively (bounded by the
|
|
72
|
+
* bar's `maxDepth`); a root-level group renders as one "Advanced filter" chip whose popover
|
|
73
|
+
* edits the whole subtree.
|
|
74
|
+
*/
|
|
75
|
+
export type FilterBarGroup = {
|
|
76
|
+
id: string;
|
|
77
|
+
kind: 'group';
|
|
78
|
+
logic: FilterBarLogic;
|
|
79
|
+
nodes: FilterBarNode[];
|
|
80
|
+
};
|
|
81
|
+
export type FilterBarNode = FilterBarItem | FilterBarGroup;
|
|
82
|
+
/**
|
|
83
|
+
* Tree-shaped value: root nodes joined by `logic`, groups nest their own. The bar itself
|
|
84
|
+
* always joins root nodes with `'and'`; `logic` is kept on the type for symmetry with groups.
|
|
85
|
+
*/
|
|
86
|
+
export type FilterBarExpression = {
|
|
87
|
+
logic: FilterBarLogic;
|
|
88
|
+
nodes: FilterBarNode[];
|
|
89
|
+
};
|
|
90
|
+
export declare const isFilterBarGroup: (node: FilterBarNode) => node is FilterBarGroup;
|
|
59
91
|
/**
|
|
60
92
|
* The filter being built in the typeahead input. Its `id` is kept when it becomes an
|
|
61
93
|
* item, so the chip rendered for the draft is the very node the committed chip lands on.
|
|
@@ -66,6 +98,8 @@ export type FilterBarDraft = {
|
|
|
66
98
|
operatorId?: string;
|
|
67
99
|
/** What the draft chip showed before this step, so only the new segments animate in. */
|
|
68
100
|
from: DraftStage;
|
|
101
|
+
/** Group the draft is being built inside; `undefined` = root. */
|
|
102
|
+
groupId?: string;
|
|
69
103
|
};
|
|
70
104
|
/** How far a draft had progressed: nothing yet, its field, or its field and operator. */
|
|
71
105
|
export type DraftStage = 'none' | 'field' | 'operator';
|
|
@@ -77,5 +111,7 @@ export type FilterBarCommit = {
|
|
|
77
111
|
item: FilterBarItem;
|
|
78
112
|
from: DraftStage;
|
|
79
113
|
glint: boolean;
|
|
114
|
+
/** Group the item was committed into; `undefined` = root. */
|
|
115
|
+
groupId?: string;
|
|
80
116
|
};
|
|
81
117
|
export type FilterBarSegment = 'field' | 'operator' | 'value' | 'remove';
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface PageLayoutProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
/** Left side of the page header row. */
|
|
5
|
+
breadcrumbs?: ReactNode;
|
|
6
|
+
/** Right side of the page header row. */
|
|
7
|
+
headerActions?: ReactNode;
|
|
8
|
+
/** Controls pinned between the header and the scrollable body (search, filters, toggles…). */
|
|
9
|
+
actionRow?: ReactNode;
|
|
10
|
+
/** `container` pads the body (default); `fit` lets the body fill the page edge to edge. */
|
|
11
|
+
variant?: 'container' | 'fit';
|
|
12
|
+
}
|
|
13
|
+
export declare function PageLayout({ children, breadcrumbs, headerActions, actionRow, variant, }: PageLayoutProps): import("react").JSX.Element;
|
|
@@ -4,5 +4,4 @@ declare const meta: Meta<typeof PageLayout>;
|
|
|
4
4
|
export default meta;
|
|
5
5
|
type Story = StoryObj<typeof PageLayout>;
|
|
6
6
|
export declare const FullPage: Story;
|
|
7
|
-
export declare const
|
|
8
|
-
export declare const CenteredEmptyState: Story;
|
|
7
|
+
export declare const Empty: Story;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { EmptyStateProps } from '../EmptyState';
|
|
1
2
|
import * as React from 'react';
|
|
2
3
|
export interface PermissionDeniedProps {
|
|
3
4
|
/** Resource type (e.g., "agents", "workflows") */
|
|
@@ -10,5 +11,6 @@ export interface PermissionDeniedProps {
|
|
|
10
11
|
actionSlot?: React.ReactNode;
|
|
11
12
|
/** Additional CSS classes */
|
|
12
13
|
className?: string;
|
|
14
|
+
variant?: EmptyStateProps['variant'];
|
|
13
15
|
}
|
|
14
|
-
export declare function PermissionDenied({ resource, title, description, actionSlot, className }: PermissionDeniedProps): React.JSX.Element;
|
|
16
|
+
export declare function PermissionDenied({ resource, title, description, actionSlot, className, variant, }: PermissionDeniedProps): React.JSX.Element;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { EmptyStateProps } from '../EmptyState';
|
|
1
2
|
export interface SessionExpiredProps {
|
|
2
3
|
/** Custom title override */
|
|
3
4
|
title?: string;
|
|
@@ -5,5 +6,6 @@ export interface SessionExpiredProps {
|
|
|
5
6
|
description?: string;
|
|
6
7
|
/** Additional CSS classes */
|
|
7
8
|
className?: string;
|
|
9
|
+
variant?: EmptyStateProps['variant'];
|
|
8
10
|
}
|
|
9
|
-
export declare function SessionExpired({ title, description, className }: SessionExpiredProps): import("react").JSX.Element;
|
|
11
|
+
export declare function SessionExpired({ title, description, className, variant }: SessionExpiredProps): import("react").JSX.Element;
|
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { VariantProps } from 'class-variance-authority';
|
|
2
2
|
import { ComponentPropsWithoutRef } from 'react';
|
|
3
3
|
declare const spinnerVariants: (props?: ({
|
|
4
|
-
size?: "sm" | "md" | null | undefined;
|
|
4
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
5
5
|
variant?: "default" | "pulse" | null | undefined;
|
|
6
6
|
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
7
7
|
type SpinnerVariantsProps = VariantProps<typeof spinnerVariants>;
|
|
8
8
|
export type SpinnerVariant = NonNullable<SpinnerVariantsProps['variant']>;
|
|
9
9
|
export type SpinnerSize = NonNullable<SpinnerVariantsProps['size']>;
|
|
10
|
-
export type SpinnerProps = Omit<ComponentPropsWithoutRef<'svg'>, 'color' | 'size'> & SpinnerVariantsProps
|
|
11
|
-
|
|
10
|
+
export type SpinnerProps = Omit<ComponentPropsWithoutRef<'svg'>, 'color' | 'size' | 'fill'> & SpinnerVariantsProps & {
|
|
11
|
+
/** Center the spinner in the full height of its parent — the parent must have a definite height. */
|
|
12
|
+
fill?: boolean;
|
|
13
|
+
};
|
|
14
|
+
declare function Spinner({ className, size, variant, fill, 'aria-label': ariaLabel, role, ...props }: SpinnerProps): import("react").JSX.Element;
|
|
12
15
|
export { Spinner };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ComponentProps, ReactNode } from 'react';
|
|
2
2
|
import { Button } from '../../Button';
|
|
3
|
+
import { Txt } from '../../Txt';
|
|
3
4
|
export type AskUserSelectionMode = 'single_select' | 'multi_select';
|
|
4
5
|
export type AskUserAnswer = string | string[];
|
|
5
6
|
export interface AskUserOption {
|
|
@@ -16,16 +17,21 @@ export interface AskUserResult {
|
|
|
16
17
|
isError?: boolean;
|
|
17
18
|
}
|
|
18
19
|
export declare const AskUserContainer: ({ className, ...props }: ComponentProps<"div">) => import("react").JSX.Element;
|
|
19
|
-
export declare const
|
|
20
|
-
export declare const
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
export declare const AskUserLabel: ({ children, className, ...props }: ComponentProps<"div">) => import("react").JSX.Element;
|
|
21
|
+
export declare const AskUserBody: ({ className, ...props }: ComponentProps<"div">) => import("react").JSX.Element;
|
|
22
|
+
export declare const AskUserQuestion: ({ className, ...props }: ComponentProps<typeof Txt>) => import("react").JSX.Element;
|
|
23
|
+
export interface AskUserOptionRowProps extends Omit<ComponentProps<'label'>, 'children'> {
|
|
24
|
+
control: ReactNode;
|
|
23
25
|
label: string;
|
|
24
26
|
description?: string;
|
|
27
|
+
disabled?: boolean;
|
|
25
28
|
}
|
|
26
|
-
export declare const
|
|
27
|
-
export
|
|
28
|
-
|
|
29
|
+
export declare const AskUserOptionRow: ({ control, label, description, disabled, className, ...props }: AskUserOptionRowProps) => import("react").JSX.Element;
|
|
30
|
+
export type AskUserSubmitProps = Omit<ComponentProps<typeof Button>, 'children'> & {
|
|
31
|
+
children?: ReactNode;
|
|
32
|
+
};
|
|
33
|
+
export declare const AskUserSubmit: ({ children, ...props }: AskUserSubmitProps) => import("react").JSX.Element;
|
|
34
|
+
export declare const AskUserPending: ({ children, ...props }: ComponentProps<typeof Txt>) => import("react").JSX.Element;
|
|
29
35
|
export interface AskUserOutputProps extends ComponentProps<'div'> {
|
|
30
36
|
result: AskUserResult;
|
|
31
37
|
}
|
|
@@ -39,4 +45,3 @@ export interface AskUserProps extends Omit<ComponentProps<typeof AskUserContaine
|
|
|
39
45
|
footer?: ReactNode;
|
|
40
46
|
}
|
|
41
47
|
export declare const AskUser: ({ payload, ...props }: AskUserProps) => import("react").JSX.Element;
|
|
42
|
-
export {};
|
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
import { ComponentPropsWithRef, ReactNode } from 'react';
|
|
2
|
-
export interface AppShellFrameProps {
|
|
3
|
-
children: ReactNode;
|
|
4
|
-
className: string;
|
|
5
|
-
}
|
|
6
2
|
export interface AppShellProps extends Omit<ComponentPropsWithRef<'div'>, 'children'> {
|
|
7
3
|
children: ReactNode;
|
|
8
|
-
mainLabel: string;
|
|
9
4
|
mobileHeader?: ReactNode;
|
|
10
|
-
|
|
11
|
-
routeHeader?: ReactNode;
|
|
5
|
+
sidebar?: ReactNode;
|
|
12
6
|
}
|
|
13
|
-
export declare function AppShell({ children, className,
|
|
7
|
+
export declare function AppShell({ children, className, mobileHeader, ref, sidebar, ...props }: AppShellProps): import("react").JSX.Element;
|