@flanksource/clicky-ui 0.2.2 → 0.2.3
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/NOTICE.md +516 -0
- package/README.md +12 -13
- package/dist/clicky.cjs +7 -0
- package/dist/clicky.cjs.map +1 -0
- package/dist/clicky.d.ts +1 -1
- package/dist/clicky.d.ts.map +1 -1
- package/dist/clicky.js +4 -2
- package/dist/components/DateField.cjs +17 -0
- package/dist/components/DateField.cjs.map +1 -0
- package/dist/components/DateField.d.ts +35 -0
- package/dist/components/DateField.d.ts.map +1 -0
- package/dist/components/DateField.js +17 -0
- package/dist/components/DateField.js.map +1 -0
- package/dist/components/DatePicker.cjs +65 -0
- package/dist/components/DatePicker.cjs.map +1 -0
- package/dist/components/DatePicker.d.ts.map +1 -1
- package/dist/components/DatePicker.js +3 -1
- package/dist/components/DatePicker.js.map +1 -1
- package/dist/components/DateTimePicker.cjs +85 -0
- package/dist/components/DateTimePicker.cjs.map +1 -0
- package/dist/components/DateTimePicker.d.ts.map +1 -1
- package/dist/components/DateTimePicker.js +2 -1
- package/dist/components/DateTimePicker.js.map +1 -1
- package/dist/components/FilterBar.cjs +2120 -0
- package/dist/components/FilterBar.cjs.map +1 -0
- package/dist/components/FilterBar.d.ts +86 -4
- package/dist/components/FilterBar.d.ts.map +1 -1
- package/dist/components/FilterBar.js +716 -281
- package/dist/components/FilterBar.js.map +1 -1
- package/dist/components/MultiSelect.cjs +139 -0
- package/dist/components/MultiSelect.cjs.map +1 -0
- package/dist/components/MultiSelect.d.ts +12 -0
- package/dist/components/MultiSelect.d.ts.map +1 -1
- package/dist/components/MultiSelect.js +3 -7
- package/dist/components/MultiSelect.js.map +1 -1
- package/dist/components/RangeSlider.cjs +92 -0
- package/dist/components/RangeSlider.cjs.map +1 -0
- package/dist/components/TimeRange.cjs +698 -0
- package/dist/components/TimeRange.cjs.map +1 -0
- package/dist/components/TimeRange.d.ts +69 -0
- package/dist/components/TimeRange.d.ts.map +1 -0
- package/dist/components/TimeRange.js +698 -0
- package/dist/components/TimeRange.js.map +1 -0
- package/dist/components/button.cjs +126 -0
- package/dist/components/button.cjs.map +1 -0
- package/dist/components/button.d.ts +6 -0
- package/dist/components/button.d.ts.map +1 -1
- package/dist/components/button.js.map +1 -1
- package/dist/components/density-switcher.cjs +35 -0
- package/dist/components/density-switcher.cjs.map +1 -0
- package/dist/components/density-switcher.d.ts +3 -0
- package/dist/components/density-switcher.d.ts.map +1 -1
- package/dist/components/density-switcher.js +6 -3
- package/dist/components/density-switcher.js.map +1 -1
- package/dist/components/icon-menu-picker.cjs +183 -0
- package/dist/components/icon-menu-picker.cjs.map +1 -0
- package/dist/components/icon-menu-picker.d.ts +2 -1
- package/dist/components/icon-menu-picker.d.ts.map +1 -1
- package/dist/components/icon-menu-picker.js +7 -16
- package/dist/components/icon-menu-picker.js.map +1 -1
- package/dist/components/select.cjs +40 -0
- package/dist/components/select.cjs.map +1 -0
- package/dist/components/select.d.ts.map +1 -1
- package/dist/components/select.js +2 -1
- package/dist/components/select.js.map +1 -1
- package/dist/components/theme-switcher.cjs +45 -0
- package/dist/components/theme-switcher.cjs.map +1 -0
- package/dist/components/theme-switcher.d.ts +3 -0
- package/dist/components/theme-switcher.d.ts.map +1 -1
- package/dist/components/theme-switcher.js +7 -4
- package/dist/components/theme-switcher.js.map +1 -1
- package/dist/components.cjs +39 -0
- package/dist/components.cjs.map +1 -0
- package/dist/components.d.ts +3 -0
- package/dist/components.d.ts.map +1 -1
- package/dist/components.js +6 -0
- package/dist/components.js.map +1 -1
- package/dist/data/AnsiHtml.cjs +71 -0
- package/dist/data/AnsiHtml.cjs.map +1 -0
- package/dist/data/AnsiHtml.d.ts +3 -0
- package/dist/data/AnsiHtml.d.ts.map +1 -1
- package/dist/data/AnsiHtml.js.map +1 -1
- package/dist/data/Avatar.cjs +201 -0
- package/dist/data/Avatar.cjs.map +1 -0
- package/dist/data/Avatar.d.ts +10 -0
- package/dist/data/Avatar.d.ts.map +1 -1
- package/dist/data/Avatar.js.map +1 -1
- package/dist/data/AvatarBadge.cjs +104 -0
- package/dist/data/AvatarBadge.cjs.map +1 -0
- package/dist/data/AvatarBadge.d.ts +2 -2
- package/dist/data/AvatarBadge.d.ts.map +1 -1
- package/dist/data/AvatarBadge.js +1 -1
- package/dist/data/AvatarBadge.js.map +1 -1
- package/dist/data/Badge.cjs +679 -0
- package/dist/data/Badge.cjs.map +1 -0
- package/dist/data/Badge.d.ts +26 -2
- package/dist/data/Badge.d.ts.map +1 -1
- package/dist/data/Badge.js +14 -2
- package/dist/data/Badge.js.map +1 -1
- package/dist/data/Clicky.cjs +1965 -0
- package/dist/data/Clicky.cjs.map +1 -0
- package/dist/data/Clicky.d.ts +48 -1
- package/dist/data/Clicky.d.ts.map +1 -1
- package/dist/data/Clicky.js +123 -118
- package/dist/data/Clicky.js.map +1 -1
- package/dist/data/CodeBlock.cjs +72 -0
- package/dist/data/CodeBlock.cjs.map +1 -0
- package/dist/data/CodeBlock.d.ts +14 -0
- package/dist/data/CodeBlock.d.ts.map +1 -0
- package/dist/data/CodeBlock.js +72 -0
- package/dist/data/CodeBlock.js.map +1 -0
- package/dist/data/DataTable.cjs +1735 -0
- package/dist/data/DataTable.cjs.map +1 -0
- package/dist/data/DataTable.d.ts +153 -3
- package/dist/data/DataTable.d.ts.map +1 -1
- package/dist/data/DataTable.js +464 -193
- package/dist/data/DataTable.js.map +1 -1
- package/dist/data/FilterPill.cjs +175 -0
- package/dist/data/FilterPill.cjs.map +1 -0
- package/dist/data/FilterPill.d.ts +12 -1
- package/dist/data/FilterPill.d.ts.map +1 -1
- package/dist/data/FilterPill.js +47 -25
- package/dist/data/FilterPill.js.map +1 -1
- package/dist/data/Gauge.cjs +75 -0
- package/dist/data/Gauge.cjs.map +1 -0
- package/dist/data/Gauge.d.ts +2 -1
- package/dist/data/Gauge.d.ts.map +1 -1
- package/dist/data/Gauge.js +13 -1
- package/dist/data/Gauge.js.map +1 -1
- package/dist/data/Icon.cjs +129 -0
- package/dist/data/Icon.cjs.map +1 -0
- package/dist/data/Icon.d.ts +28 -12
- package/dist/data/Icon.d.ts.map +1 -1
- package/dist/data/Icon.js +51 -37
- package/dist/data/Icon.js.map +1 -1
- package/dist/data/JsonView.cjs +74 -0
- package/dist/data/JsonView.cjs.map +1 -0
- package/dist/data/JsonView.d.ts +4 -0
- package/dist/data/JsonView.d.ts.map +1 -1
- package/dist/data/JsonView.js.map +1 -1
- package/dist/data/KeyValueList.cjs +33 -0
- package/dist/data/KeyValueList.cjs.map +1 -0
- package/dist/data/LogViewer.cjs +46 -0
- package/dist/data/LogViewer.cjs.map +1 -0
- package/dist/data/LogViewer.d.ts +6 -0
- package/dist/data/LogViewer.d.ts.map +1 -1
- package/dist/data/LogViewer.js.map +1 -1
- package/dist/data/LogsTable.cjs +452 -0
- package/dist/data/LogsTable.cjs.map +1 -0
- package/dist/data/LogsTable.d.ts +5 -6
- package/dist/data/LogsTable.d.ts.map +1 -1
- package/dist/data/LogsTable.js +88 -216
- package/dist/data/LogsTable.js.map +1 -1
- package/dist/data/Markdown.cjs +81 -0
- package/dist/data/Markdown.cjs.map +1 -0
- package/dist/data/Markdown.d.ts +2 -0
- package/dist/data/Markdown.d.ts.map +1 -1
- package/dist/data/Markdown.js.map +1 -1
- package/dist/data/MatrixTable.cjs +164 -0
- package/dist/data/MatrixTable.cjs.map +1 -0
- package/dist/data/MethodBadge.cjs +18 -0
- package/dist/data/MethodBadge.cjs.map +1 -0
- package/dist/data/MethodBadge.d.ts +2 -0
- package/dist/data/MethodBadge.d.ts.map +1 -1
- package/dist/data/MethodBadge.js.map +1 -1
- package/dist/data/ProgressBar.cjs +34 -0
- package/dist/data/ProgressBar.cjs.map +1 -0
- package/dist/data/ProgressBar.d.ts +7 -0
- package/dist/data/ProgressBar.d.ts.map +1 -1
- package/dist/data/ProgressBar.js.map +1 -1
- package/dist/data/Properties.cjs +146 -0
- package/dist/data/Properties.cjs.map +1 -0
- package/dist/data/Properties.d.ts +63 -0
- package/dist/data/Properties.d.ts.map +1 -0
- package/dist/data/Properties.js +146 -0
- package/dist/data/Properties.js.map +1 -0
- package/dist/data/SignedDeltaBar.cjs +58 -0
- package/dist/data/SignedDeltaBar.cjs.map +1 -0
- package/dist/data/SignedDeltaBar.d.ts +25 -0
- package/dist/data/SignedDeltaBar.d.ts.map +1 -0
- package/dist/data/SignedDeltaBar.js +58 -0
- package/dist/data/SignedDeltaBar.js.map +1 -0
- package/dist/data/SortableHeader.cjs +33 -0
- package/dist/data/SortableHeader.cjs.map +1 -0
- package/dist/data/SortableHeader.d.ts +6 -0
- package/dist/data/SortableHeader.d.ts.map +1 -1
- package/dist/data/SortableHeader.js.map +1 -1
- package/dist/data/TabButton.cjs +45 -0
- package/dist/data/TabButton.cjs.map +1 -0
- package/dist/data/TabButton.d.ts +9 -1
- package/dist/data/TabButton.d.ts.map +1 -1
- package/dist/data/TabButton.js +1 -1
- package/dist/data/TabButton.js.map +1 -1
- package/dist/data/Tree.cjs +240 -0
- package/dist/data/Tree.cjs.map +1 -0
- package/dist/data/Tree.d.ts +5 -0
- package/dist/data/Tree.d.ts.map +1 -1
- package/dist/data/Tree.js +8 -4
- package/dist/data/Tree.js.map +1 -1
- package/dist/data/TreeGroupHeader.cjs +43 -0
- package/dist/data/TreeGroupHeader.cjs.map +1 -0
- package/dist/data/TreeGroupHeader.d.ts +8 -1
- package/dist/data/TreeGroupHeader.d.ts.map +1 -1
- package/dist/data/TreeGroupHeader.js +4 -2
- package/dist/data/TreeGroupHeader.js.map +1 -1
- package/dist/data/TreeNode.cjs +109 -0
- package/dist/data/TreeNode.cjs.map +1 -0
- package/dist/data/TreeNode.d.ts.map +1 -1
- package/dist/data/TreeNode.js +11 -2
- package/dist/data/TreeNode.js.map +1 -1
- package/dist/data/cells/StatusDot.cjs +38 -0
- package/dist/data/cells/StatusDot.cjs.map +1 -0
- package/dist/data/cells/TagList.cjs +332 -0
- package/dist/data/cells/TagList.cjs.map +1 -0
- package/dist/data/cells/TagList.d.ts +15 -1
- package/dist/data/cells/TagList.d.ts.map +1 -1
- package/dist/data/cells/TagList.js +92 -17
- package/dist/data/cells/TagList.js.map +1 -1
- package/dist/data/cells/Timestamp.cjs +195 -0
- package/dist/data/cells/Timestamp.cjs.map +1 -0
- package/dist/data/cells/Timestamp.d.ts +12 -2
- package/dist/data/cells/Timestamp.d.ts.map +1 -1
- package/dist/data/cells/Timestamp.js +51 -2
- package/dist/data/cells/Timestamp.js.map +1 -1
- package/dist/data/cells/status-mapping.cjs +44 -0
- package/dist/data/cells/status-mapping.cjs.map +1 -0
- package/dist/data/code-highlight.cjs +115 -0
- package/dist/data/code-highlight.cjs.map +1 -0
- package/dist/data/code-highlight.d.ts +2 -2
- package/dist/data/code-highlight.d.ts.map +1 -1
- package/dist/data/code-highlight.js +73 -8
- package/dist/data/code-highlight.js.map +1 -1
- package/dist/data/diagnostics/DiagnosticsDetailPanel.cjs +446 -0
- package/dist/data/diagnostics/DiagnosticsDetailPanel.cjs.map +1 -0
- package/dist/data/diagnostics/DiagnosticsDetailPanel.d.ts +4 -0
- package/dist/data/diagnostics/DiagnosticsDetailPanel.d.ts.map +1 -1
- package/dist/data/diagnostics/DiagnosticsDetailPanel.js +11 -10
- package/dist/data/diagnostics/DiagnosticsDetailPanel.js.map +1 -1
- package/dist/data/diagnostics/DiagnosticsTree.cjs +81 -0
- package/dist/data/diagnostics/DiagnosticsTree.cjs.map +1 -0
- package/dist/data/diagnostics/DiagnosticsTree.d.ts +4 -0
- package/dist/data/diagnostics/DiagnosticsTree.d.ts.map +1 -1
- package/dist/data/diagnostics/DiagnosticsTree.js +6 -3
- package/dist/data/diagnostics/DiagnosticsTree.js.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.cjs +166 -0
- package/dist/data/diagnostics/ErrorDetails.cjs.map +1 -0
- package/dist/data/diagnostics/ErrorDetails.d.ts.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.js +15 -6
- package/dist/data/diagnostics/ErrorDetails.js.map +1 -1
- package/dist/data/diagnostics/GoroutineCard.cjs +78 -0
- package/dist/data/diagnostics/GoroutineCard.cjs.map +1 -0
- package/dist/data/diagnostics/GoroutineCard.d.ts.map +1 -1
- package/dist/data/diagnostics/GoroutineCard.js +4 -1
- package/dist/data/diagnostics/GoroutineCard.js.map +1 -1
- package/dist/data/diagnostics/JvmStackTrace.cjs +32 -0
- package/dist/data/diagnostics/JvmStackTrace.cjs.map +1 -0
- package/dist/data/diagnostics/JvmStackTrace.d.ts.map +1 -1
- package/dist/data/diagnostics/JvmStackTrace.js +8 -2
- package/dist/data/diagnostics/JvmStackTrace.js.map +1 -1
- package/dist/data/diagnostics/RenderedStackTrace.cjs +240 -0
- package/dist/data/diagnostics/RenderedStackTrace.cjs.map +1 -0
- package/dist/data/diagnostics/RenderedStackTrace.d.ts +11 -0
- package/dist/data/diagnostics/RenderedStackTrace.d.ts.map +1 -1
- package/dist/data/diagnostics/RenderedStackTrace.js +9 -4
- package/dist/data/diagnostics/RenderedStackTrace.js.map +1 -1
- package/dist/data/diagnostics/ThreadCard.cjs +78 -0
- package/dist/data/diagnostics/ThreadCard.cjs.map +1 -0
- package/dist/data/diagnostics/error-diagnostics.cjs +108 -0
- package/dist/data/diagnostics/error-diagnostics.cjs.map +1 -0
- package/dist/data/diagnostics/jvm-stacktrace.cjs +190 -0
- package/dist/data/diagnostics/jvm-stacktrace.cjs.map +1 -0
- package/dist/data/diagnostics/stacktrace-parse.cjs +87 -0
- package/dist/data/diagnostics/stacktrace-parse.cjs.map +1 -0
- package/dist/data/diagnostics/stacktrace.cjs +119 -0
- package/dist/data/diagnostics/stacktrace.cjs.map +1 -0
- package/dist/data/diagnostics/utils.cjs +65 -0
- package/dist/data/diagnostics/utils.cjs.map +1 -0
- package/dist/data/diagnostics/utils.d.ts +2 -1
- package/dist/data/diagnostics/utils.d.ts.map +1 -1
- package/dist/data/diagnostics/utils.js +12 -6
- package/dist/data/diagnostics/utils.js.map +1 -1
- package/dist/data/har/HarPanel.cjs +175 -0
- package/dist/data/har/HarPanel.cjs.map +1 -0
- package/dist/data/har/HarPanel.d.ts +4 -0
- package/dist/data/har/HarPanel.d.ts.map +1 -1
- package/dist/data/har/HarPanel.js.map +1 -1
- package/dist/data/html-utils.cjs +14 -0
- package/dist/data/html-utils.cjs.map +1 -0
- package/dist/data/html-utils.d.ts +3 -0
- package/dist/data/html-utils.d.ts.map +1 -0
- package/dist/data/html-utils.js +14 -0
- package/dist/data/html-utils.js.map +1 -0
- package/dist/data/properties-utils.cjs +7 -0
- package/dist/data/properties-utils.cjs.map +1 -0
- package/dist/data/properties-utils.d.ts +2 -0
- package/dist/data/properties-utils.d.ts.map +1 -0
- package/dist/data/properties-utils.js +7 -0
- package/dist/data/properties-utils.js.map +1 -0
- package/dist/data.cjs +868 -0
- package/dist/data.cjs.map +1 -0
- package/dist/data.d.ts +6 -1
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +759 -0
- package/dist/data.js.map +1 -1
- package/dist/hooks/use-density.cjs +63 -0
- package/dist/hooks/use-density.cjs.map +1 -0
- package/dist/hooks/use-density.d.ts +11 -0
- package/dist/hooks/use-density.d.ts.map +1 -1
- package/dist/hooks/use-density.js +10 -1
- package/dist/hooks/use-density.js.map +1 -1
- package/dist/hooks/use-history-route.cjs +31 -0
- package/dist/hooks/use-history-route.cjs.map +1 -0
- package/dist/hooks/use-sort.cjs +42 -0
- package/dist/hooks/use-sort.cjs.map +1 -0
- package/dist/hooks/use-theme.cjs +90 -0
- package/dist/hooks/use-theme.cjs.map +1 -0
- package/dist/hooks/use-theme.d.ts +2 -0
- package/dist/hooks/use-theme.d.ts.map +1 -1
- package/dist/hooks/use-theme.js +23 -1
- package/dist/hooks/use-theme.js.map +1 -1
- package/dist/hooks.cjs +16 -0
- package/dist/hooks.cjs.map +1 -0
- package/dist/hooks.d.ts +1 -1
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +3 -1
- package/dist/icons/changeIconAliases.cjs +66 -0
- package/dist/icons/changeIconAliases.cjs.map +1 -0
- package/dist/icons/changeIconAliases.d.ts +17 -0
- package/dist/icons/changeIconAliases.d.ts.map +1 -0
- package/dist/icons/changeIconAliases.js +66 -0
- package/dist/icons/changeIconAliases.js.map +1 -0
- package/dist/icons/components/UiActivity.cjs +10 -0
- package/dist/icons/components/UiActivity.cjs.map +1 -0
- package/dist/icons/components/UiActivity.d.ts +9 -0
- package/dist/icons/components/UiActivity.d.ts.map +1 -0
- package/dist/icons/components/UiActivity.js +10 -0
- package/dist/icons/components/UiActivity.js.map +1 -0
- package/dist/icons/components/UiAdd.cjs +15 -0
- package/dist/icons/components/UiAdd.cjs.map +1 -0
- package/dist/icons/components/UiAdd.d.ts +15 -0
- package/dist/icons/components/UiAdd.d.ts.map +1 -0
- package/dist/icons/components/UiAdd.js +15 -0
- package/dist/icons/components/UiAdd.js.map +1 -0
- package/dist/icons/components/UiArchive.cjs +15 -0
- package/dist/icons/components/UiArchive.cjs.map +1 -0
- package/dist/icons/components/UiArchive.d.ts +15 -0
- package/dist/icons/components/UiArchive.d.ts.map +1 -0
- package/dist/icons/components/UiArchive.js +15 -0
- package/dist/icons/components/UiArchive.js.map +1 -0
- package/dist/icons/components/UiArray.cjs +13 -0
- package/dist/icons/components/UiArray.cjs.map +1 -0
- package/dist/icons/components/UiArray.d.ts +9 -0
- package/dist/icons/components/UiArray.d.ts.map +1 -0
- package/dist/icons/components/UiArray.js +13 -0
- package/dist/icons/components/UiArray.js.map +1 -0
- package/dist/icons/components/UiArrowDown.cjs +15 -0
- package/dist/icons/components/UiArrowDown.cjs.map +1 -0
- package/dist/icons/components/UiArrowDown.d.ts +15 -0
- package/dist/icons/components/UiArrowDown.d.ts.map +1 -0
- package/dist/icons/components/UiArrowDown.js +15 -0
- package/dist/icons/components/UiArrowDown.js.map +1 -0
- package/dist/icons/components/UiArrowDownRight.cjs +10 -0
- package/dist/icons/components/UiArrowDownRight.cjs.map +1 -0
- package/dist/icons/components/UiArrowDownRight.d.ts +9 -0
- package/dist/icons/components/UiArrowDownRight.d.ts.map +1 -0
- package/dist/icons/components/UiArrowDownRight.js +10 -0
- package/dist/icons/components/UiArrowDownRight.js.map +1 -0
- package/dist/icons/components/UiArrowLeft.cjs +15 -0
- package/dist/icons/components/UiArrowLeft.cjs.map +1 -0
- package/dist/icons/components/UiArrowLeft.d.ts +15 -0
- package/dist/icons/components/UiArrowLeft.d.ts.map +1 -0
- package/dist/icons/components/UiArrowLeft.js +15 -0
- package/dist/icons/components/UiArrowLeft.js.map +1 -0
- package/dist/icons/components/UiArrowRight.cjs +15 -0
- package/dist/icons/components/UiArrowRight.cjs.map +1 -0
- package/dist/icons/components/UiArrowRight.d.ts +15 -0
- package/dist/icons/components/UiArrowRight.d.ts.map +1 -0
- package/dist/icons/components/UiArrowRight.js +15 -0
- package/dist/icons/components/UiArrowRight.js.map +1 -0
- package/dist/icons/components/UiArrowUp.cjs +15 -0
- package/dist/icons/components/UiArrowUp.cjs.map +1 -0
- package/dist/icons/components/UiArrowUp.d.ts +15 -0
- package/dist/icons/components/UiArrowUp.d.ts.map +1 -0
- package/dist/icons/components/UiArrowUp.js +15 -0
- package/dist/icons/components/UiArrowUp.js.map +1 -0
- package/dist/icons/components/UiArrowUpRight.cjs +10 -0
- package/dist/icons/components/UiArrowUpRight.cjs.map +1 -0
- package/dist/icons/components/UiArrowUpRight.d.ts +9 -0
- package/dist/icons/components/UiArrowUpRight.d.ts.map +1 -0
- package/dist/icons/components/UiArrowUpRight.js +10 -0
- package/dist/icons/components/UiArrowUpRight.js.map +1 -0
- package/dist/icons/components/UiAsyncFn.cjs +10 -0
- package/dist/icons/components/UiAsyncFn.cjs.map +1 -0
- package/dist/icons/components/UiAsyncFn.d.ts +9 -0
- package/dist/icons/components/UiAsyncFn.d.ts.map +1 -0
- package/dist/icons/components/UiAsyncFn.js +10 -0
- package/dist/icons/components/UiAsyncFn.js.map +1 -0
- package/dist/icons/components/UiAt.cjs +15 -0
- package/dist/icons/components/UiAt.cjs.map +1 -0
- package/dist/icons/components/UiAt.d.ts +15 -0
- package/dist/icons/components/UiAt.d.ts.map +1 -0
- package/dist/icons/components/UiAt.js +15 -0
- package/dist/icons/components/UiAt.js.map +1 -0
- package/dist/icons/components/UiBeaker.cjs +15 -0
- package/dist/icons/components/UiBeaker.cjs.map +1 -0
- package/dist/icons/components/UiBeaker.d.ts +15 -0
- package/dist/icons/components/UiBeaker.d.ts.map +1 -0
- package/dist/icons/components/UiBeaker.js +15 -0
- package/dist/icons/components/UiBeaker.js.map +1 -0
- package/dist/icons/components/UiBell.cjs +15 -0
- package/dist/icons/components/UiBell.cjs.map +1 -0
- package/dist/icons/components/UiBell.d.ts +15 -0
- package/dist/icons/components/UiBell.d.ts.map +1 -0
- package/dist/icons/components/UiBell.js +15 -0
- package/dist/icons/components/UiBell.js.map +1 -0
- package/dist/icons/components/UiBellSlash.cjs +15 -0
- package/dist/icons/components/UiBellSlash.cjs.map +1 -0
- package/dist/icons/components/UiBellSlash.d.ts +15 -0
- package/dist/icons/components/UiBellSlash.d.ts.map +1 -0
- package/dist/icons/components/UiBellSlash.js +15 -0
- package/dist/icons/components/UiBellSlash.js.map +1 -0
- package/dist/icons/components/UiBinary.cjs +15 -0
- package/dist/icons/components/UiBinary.cjs.map +1 -0
- package/dist/icons/components/UiBinary.d.ts +15 -0
- package/dist/icons/components/UiBinary.d.ts.map +1 -0
- package/dist/icons/components/UiBinary.js +15 -0
- package/dist/icons/components/UiBinary.js.map +1 -0
- package/dist/icons/components/UiBox.cjs +15 -0
- package/dist/icons/components/UiBox.cjs.map +1 -0
- package/dist/icons/components/UiBox.d.ts +15 -0
- package/dist/icons/components/UiBox.d.ts.map +1 -0
- package/dist/icons/components/UiBox.js +15 -0
- package/dist/icons/components/UiBox.js.map +1 -0
- package/dist/icons/components/UiBoxes.cjs +19 -0
- package/dist/icons/components/UiBoxes.cjs.map +1 -0
- package/dist/icons/components/UiBoxes.d.ts +15 -0
- package/dist/icons/components/UiBoxes.d.ts.map +1 -0
- package/dist/icons/components/UiBoxes.js +19 -0
- package/dist/icons/components/UiBoxes.js.map +1 -0
- package/dist/icons/components/UiBraces.cjs +10 -0
- package/dist/icons/components/UiBraces.cjs.map +1 -0
- package/dist/icons/components/UiBraces.d.ts +9 -0
- package/dist/icons/components/UiBraces.d.ts.map +1 -0
- package/dist/icons/components/UiBraces.js +10 -0
- package/dist/icons/components/UiBraces.js.map +1 -0
- package/dist/icons/components/UiBrain.cjs +15 -0
- package/dist/icons/components/UiBrain.cjs.map +1 -0
- package/dist/icons/components/UiBrain.d.ts +15 -0
- package/dist/icons/components/UiBrain.d.ts.map +1 -0
- package/dist/icons/components/UiBrain.js +15 -0
- package/dist/icons/components/UiBrain.js.map +1 -0
- package/dist/icons/components/UiBroadcast.cjs +15 -0
- package/dist/icons/components/UiBroadcast.cjs.map +1 -0
- package/dist/icons/components/UiBroadcast.d.ts +15 -0
- package/dist/icons/components/UiBroadcast.d.ts.map +1 -0
- package/dist/icons/components/UiBroadcast.js +15 -0
- package/dist/icons/components/UiBroadcast.js.map +1 -0
- package/dist/icons/components/UiBug.cjs +15 -0
- package/dist/icons/components/UiBug.cjs.map +1 -0
- package/dist/icons/components/UiBug.d.ts +15 -0
- package/dist/icons/components/UiBug.d.ts.map +1 -0
- package/dist/icons/components/UiBug.js +15 -0
- package/dist/icons/components/UiBug.js.map +1 -0
- package/dist/icons/components/UiCalculator.cjs +13 -0
- package/dist/icons/components/UiCalculator.cjs.map +1 -0
- package/dist/icons/components/UiCalculator.d.ts +9 -0
- package/dist/icons/components/UiCalculator.d.ts.map +1 -0
- package/dist/icons/components/UiCalculator.js +13 -0
- package/dist/icons/components/UiCalculator.js.map +1 -0
- package/dist/icons/components/UiCalendar.cjs +15 -0
- package/dist/icons/components/UiCalendar.cjs.map +1 -0
- package/dist/icons/components/UiCalendar.d.ts +15 -0
- package/dist/icons/components/UiCalendar.d.ts.map +1 -0
- package/dist/icons/components/UiCalendar.js +15 -0
- package/dist/icons/components/UiCalendar.js.map +1 -0
- package/dist/icons/components/UiCalendarBlank.cjs +15 -0
- package/dist/icons/components/UiCalendarBlank.cjs.map +1 -0
- package/dist/icons/components/UiCalendarBlank.d.ts +15 -0
- package/dist/icons/components/UiCalendarBlank.d.ts.map +1 -0
- package/dist/icons/components/UiCalendarBlank.js +15 -0
- package/dist/icons/components/UiCalendarBlank.js.map +1 -0
- package/dist/icons/components/UiCamera.cjs +15 -0
- package/dist/icons/components/UiCamera.cjs.map +1 -0
- package/dist/icons/components/UiCamera.d.ts +15 -0
- package/dist/icons/components/UiCamera.d.ts.map +1 -0
- package/dist/icons/components/UiCamera.js +15 -0
- package/dist/icons/components/UiCamera.js.map +1 -0
- package/dist/icons/components/UiCancel.cjs +15 -0
- package/dist/icons/components/UiCancel.cjs.map +1 -0
- package/dist/icons/components/UiCancel.d.ts +15 -0
- package/dist/icons/components/UiCancel.d.ts.map +1 -0
- package/dist/icons/components/UiCancel.js +15 -0
- package/dist/icons/components/UiCancel.js.map +1 -0
- package/dist/icons/components/UiChartBar.cjs +15 -0
- package/dist/icons/components/UiChartBar.cjs.map +1 -0
- package/dist/icons/components/UiChartBar.d.ts +15 -0
- package/dist/icons/components/UiChartBar.d.ts.map +1 -0
- package/dist/icons/components/UiChartBar.js +15 -0
- package/dist/icons/components/UiChartBar.js.map +1 -0
- package/dist/icons/components/UiChartPie.cjs +15 -0
- package/dist/icons/components/UiChartPie.cjs.map +1 -0
- package/dist/icons/components/UiChartPie.d.ts +15 -0
- package/dist/icons/components/UiChartPie.d.ts.map +1 -0
- package/dist/icons/components/UiChartPie.js +15 -0
- package/dist/icons/components/UiChartPie.js.map +1 -0
- package/dist/icons/components/UiCheck.cjs +23 -0
- package/dist/icons/components/UiCheck.cjs.map +1 -0
- package/dist/icons/components/UiCheck.d.ts +17 -0
- package/dist/icons/components/UiCheck.d.ts.map +1 -0
- package/dist/icons/components/UiCheck.js +23 -0
- package/dist/icons/components/UiCheck.js.map +1 -0
- package/dist/icons/components/UiChevronDown.cjs +15 -0
- package/dist/icons/components/UiChevronDown.cjs.map +1 -0
- package/dist/icons/components/UiChevronDown.d.ts +15 -0
- package/dist/icons/components/UiChevronDown.d.ts.map +1 -0
- package/dist/icons/components/UiChevronDown.js +15 -0
- package/dist/icons/components/UiChevronDown.js.map +1 -0
- package/dist/icons/components/UiChevronRight.cjs +15 -0
- package/dist/icons/components/UiChevronRight.cjs.map +1 -0
- package/dist/icons/components/UiChevronRight.d.ts +15 -0
- package/dist/icons/components/UiChevronRight.d.ts.map +1 -0
- package/dist/icons/components/UiChevronRight.js +15 -0
- package/dist/icons/components/UiChevronRight.js.map +1 -0
- package/dist/icons/components/UiChevronUp.cjs +15 -0
- package/dist/icons/components/UiChevronUp.cjs.map +1 -0
- package/dist/icons/components/UiChevronUp.d.ts +15 -0
- package/dist/icons/components/UiChevronUp.d.ts.map +1 -0
- package/dist/icons/components/UiChevronUp.js +15 -0
- package/dist/icons/components/UiChevronUp.js.map +1 -0
- package/dist/icons/components/UiChevronsDown.cjs +15 -0
- package/dist/icons/components/UiChevronsDown.cjs.map +1 -0
- package/dist/icons/components/UiChevronsDown.d.ts +15 -0
- package/dist/icons/components/UiChevronsDown.d.ts.map +1 -0
- package/dist/icons/components/UiChevronsDown.js +15 -0
- package/dist/icons/components/UiChevronsDown.js.map +1 -0
- package/dist/icons/components/UiChevronsUp.cjs +15 -0
- package/dist/icons/components/UiChevronsUp.cjs.map +1 -0
- package/dist/icons/components/UiChevronsUp.d.ts +15 -0
- package/dist/icons/components/UiChevronsUp.d.ts.map +1 -0
- package/dist/icons/components/UiChevronsUp.js +15 -0
- package/dist/icons/components/UiChevronsUp.js.map +1 -0
- package/dist/icons/components/UiChip.cjs +15 -0
- package/dist/icons/components/UiChip.cjs.map +1 -0
- package/dist/icons/components/UiChip.d.ts +15 -0
- package/dist/icons/components/UiChip.d.ts.map +1 -0
- package/dist/icons/components/UiChip.js +15 -0
- package/dist/icons/components/UiChip.js.map +1 -0
- package/dist/icons/components/UiCircleFilled.cjs +15 -0
- package/dist/icons/components/UiCircleFilled.cjs.map +1 -0
- package/dist/icons/components/UiCircleFilled.d.ts +15 -0
- package/dist/icons/components/UiCircleFilled.d.ts.map +1 -0
- package/dist/icons/components/UiCircleFilled.js +15 -0
- package/dist/icons/components/UiCircleFilled.js.map +1 -0
- package/dist/icons/components/UiCircleOutline.cjs +15 -0
- package/dist/icons/components/UiCircleOutline.cjs.map +1 -0
- package/dist/icons/components/UiCircleOutline.d.ts +15 -0
- package/dist/icons/components/UiCircleOutline.d.ts.map +1 -0
- package/dist/icons/components/UiCircleOutline.js +15 -0
- package/dist/icons/components/UiCircleOutline.js.map +1 -0
- package/dist/icons/components/UiCircleX.cjs +23 -0
- package/dist/icons/components/UiCircleX.cjs.map +1 -0
- package/dist/icons/components/UiCircleX.d.ts +17 -0
- package/dist/icons/components/UiCircleX.d.ts.map +1 -0
- package/dist/icons/components/UiCircleX.js +23 -0
- package/dist/icons/components/UiCircleX.js.map +1 -0
- package/dist/icons/components/UiClass.cjs +13 -0
- package/dist/icons/components/UiClass.cjs.map +1 -0
- package/dist/icons/components/UiClass.d.ts +9 -0
- package/dist/icons/components/UiClass.d.ts.map +1 -0
- package/dist/icons/components/UiClass.js +13 -0
- package/dist/icons/components/UiClass.js.map +1 -0
- package/dist/icons/components/UiClock.cjs +15 -0
- package/dist/icons/components/UiClock.cjs.map +1 -0
- package/dist/icons/components/UiClock.d.ts +15 -0
- package/dist/icons/components/UiClock.d.ts.map +1 -0
- package/dist/icons/components/UiClock.js +15 -0
- package/dist/icons/components/UiClock.js.map +1 -0
- package/dist/icons/components/UiClose.cjs +15 -0
- package/dist/icons/components/UiClose.cjs.map +1 -0
- package/dist/icons/components/UiClose.d.ts +15 -0
- package/dist/icons/components/UiClose.d.ts.map +1 -0
- package/dist/icons/components/UiClose.js +15 -0
- package/dist/icons/components/UiClose.js.map +1 -0
- package/dist/icons/components/UiCloud.cjs +15 -0
- package/dist/icons/components/UiCloud.cjs.map +1 -0
- package/dist/icons/components/UiCloud.d.ts +15 -0
- package/dist/icons/components/UiCloud.d.ts.map +1 -0
- package/dist/icons/components/UiCloud.js +15 -0
- package/dist/icons/components/UiCloud.js.map +1 -0
- package/dist/icons/components/UiCloudDownload.cjs +15 -0
- package/dist/icons/components/UiCloudDownload.cjs.map +1 -0
- package/dist/icons/components/UiCloudDownload.d.ts +15 -0
- package/dist/icons/components/UiCloudDownload.d.ts.map +1 -0
- package/dist/icons/components/UiCloudDownload.js +15 -0
- package/dist/icons/components/UiCloudDownload.js.map +1 -0
- package/dist/icons/components/UiCode2.cjs +15 -0
- package/dist/icons/components/UiCode2.cjs.map +1 -0
- package/dist/icons/components/UiCode2.d.ts +15 -0
- package/dist/icons/components/UiCode2.d.ts.map +1 -0
- package/dist/icons/components/UiCode2.js +15 -0
- package/dist/icons/components/UiCode2.js.map +1 -0
- package/dist/icons/components/UiCog.cjs +15 -0
- package/dist/icons/components/UiCog.cjs.map +1 -0
- package/dist/icons/components/UiCog.d.ts +15 -0
- package/dist/icons/components/UiCog.d.ts.map +1 -0
- package/dist/icons/components/UiCog.js +15 -0
- package/dist/icons/components/UiCog.js.map +1 -0
- package/dist/icons/components/UiCollapseAll.cjs +13 -0
- package/dist/icons/components/UiCollapseAll.cjs.map +1 -0
- package/dist/icons/components/UiCollapseAll.d.ts +9 -0
- package/dist/icons/components/UiCollapseAll.d.ts.map +1 -0
- package/dist/icons/components/UiCollapseAll.js +13 -0
- package/dist/icons/components/UiCollapseAll.js.map +1 -0
- package/dist/icons/components/UiColumns.cjs +15 -0
- package/dist/icons/components/UiColumns.cjs.map +1 -0
- package/dist/icons/components/UiColumns.d.ts +15 -0
- package/dist/icons/components/UiColumns.d.ts.map +1 -0
- package/dist/icons/components/UiColumns.js +15 -0
- package/dist/icons/components/UiColumns.js.map +1 -0
- package/dist/icons/components/UiCommand.cjs +15 -0
- package/dist/icons/components/UiCommand.cjs.map +1 -0
- package/dist/icons/components/UiCommand.d.ts +15 -0
- package/dist/icons/components/UiCommand.d.ts.map +1 -0
- package/dist/icons/components/UiCommand.js +15 -0
- package/dist/icons/components/UiCommand.js.map +1 -0
- package/dist/icons/components/UiComment.cjs +16 -0
- package/dist/icons/components/UiComment.cjs.map +1 -0
- package/dist/icons/components/UiComment.d.ts +9 -0
- package/dist/icons/components/UiComment.d.ts.map +1 -0
- package/dist/icons/components/UiComment.js +16 -0
- package/dist/icons/components/UiComment.js.map +1 -0
- package/dist/icons/components/UiConfig.cjs +15 -0
- package/dist/icons/components/UiConfig.cjs.map +1 -0
- package/dist/icons/components/UiConfig.d.ts +15 -0
- package/dist/icons/components/UiConfig.d.ts.map +1 -0
- package/dist/icons/components/UiConfig.js +15 -0
- package/dist/icons/components/UiConfig.js.map +1 -0
- package/dist/icons/components/UiConstant.cjs +14 -0
- package/dist/icons/components/UiConstant.cjs.map +1 -0
- package/dist/icons/components/UiConstant.d.ts +9 -0
- package/dist/icons/components/UiConstant.d.ts.map +1 -0
- package/dist/icons/components/UiConstant.js +14 -0
- package/dist/icons/components/UiConstant.js.map +1 -0
- package/dist/icons/components/UiConstructor.cjs +15 -0
- package/dist/icons/components/UiConstructor.cjs.map +1 -0
- package/dist/icons/components/UiConstructor.d.ts +9 -0
- package/dist/icons/components/UiConstructor.d.ts.map +1 -0
- package/dist/icons/components/UiConstructor.js +15 -0
- package/dist/icons/components/UiConstructor.js.map +1 -0
- package/dist/icons/components/UiCopy.cjs +15 -0
- package/dist/icons/components/UiCopy.cjs.map +1 -0
- package/dist/icons/components/UiCopy.d.ts +15 -0
- package/dist/icons/components/UiCopy.d.ts.map +1 -0
- package/dist/icons/components/UiCopy.js +15 -0
- package/dist/icons/components/UiCopy.js.map +1 -0
- package/dist/icons/components/UiDatabase.cjs +257 -0
- package/dist/icons/components/UiDatabase.cjs.map +1 -0
- package/dist/icons/components/UiDatabase.d.ts +147 -0
- package/dist/icons/components/UiDatabase.d.ts.map +1 -0
- package/dist/icons/components/UiDatabase.js +257 -0
- package/dist/icons/components/UiDatabase.js.map +1 -0
- package/dist/icons/components/UiDatabaseZap.cjs +14 -0
- package/dist/icons/components/UiDatabaseZap.cjs.map +1 -0
- package/dist/icons/components/UiDatabaseZap.d.ts +9 -0
- package/dist/icons/components/UiDatabaseZap.d.ts.map +1 -0
- package/dist/icons/components/UiDatabaseZap.js +14 -0
- package/dist/icons/components/UiDatabaseZap.js.map +1 -0
- package/dist/icons/components/UiDebug.cjs +15 -0
- package/dist/icons/components/UiDebug.cjs.map +1 -0
- package/dist/icons/components/UiDebug.d.ts +15 -0
- package/dist/icons/components/UiDebug.d.ts.map +1 -0
- package/dist/icons/components/UiDebug.js +15 -0
- package/dist/icons/components/UiDebug.js.map +1 -0
- package/dist/icons/components/UiDebugSmall.cjs +10 -0
- package/dist/icons/components/UiDebugSmall.cjs.map +1 -0
- package/dist/icons/components/UiDebugSmall.d.ts +9 -0
- package/dist/icons/components/UiDebugSmall.d.ts.map +1 -0
- package/dist/icons/components/UiDebugSmall.js +10 -0
- package/dist/icons/components/UiDebugSmall.js.map +1 -0
- package/dist/icons/components/UiDebugStepOver.cjs +10 -0
- package/dist/icons/components/UiDebugStepOver.cjs.map +1 -0
- package/dist/icons/components/UiDebugStepOver.d.ts +9 -0
- package/dist/icons/components/UiDebugStepOver.d.ts.map +1 -0
- package/dist/icons/components/UiDebugStepOver.js +10 -0
- package/dist/icons/components/UiDebugStepOver.js.map +1 -0
- package/dist/icons/components/UiDecorator.cjs +13 -0
- package/dist/icons/components/UiDecorator.cjs.map +1 -0
- package/dist/icons/components/UiDecorator.d.ts +9 -0
- package/dist/icons/components/UiDecorator.d.ts.map +1 -0
- package/dist/icons/components/UiDecorator.js +13 -0
- package/dist/icons/components/UiDecorator.js.map +1 -0
- package/dist/icons/components/UiDesktop.cjs +15 -0
- package/dist/icons/components/UiDesktop.cjs.map +1 -0
- package/dist/icons/components/UiDesktop.d.ts +15 -0
- package/dist/icons/components/UiDesktop.d.ts.map +1 -0
- package/dist/icons/components/UiDesktop.js +15 -0
- package/dist/icons/components/UiDesktop.js.map +1 -0
- package/dist/icons/components/UiDiff.cjs +10 -0
- package/dist/icons/components/UiDiff.cjs.map +1 -0
- package/dist/icons/components/UiDiff.d.ts +9 -0
- package/dist/icons/components/UiDiff.d.ts.map +1 -0
- package/dist/icons/components/UiDiff.js +10 -0
- package/dist/icons/components/UiDiff.js.map +1 -0
- package/dist/icons/components/UiDotsVertical.cjs +15 -0
- package/dist/icons/components/UiDotsVertical.cjs.map +1 -0
- package/dist/icons/components/UiDotsVertical.d.ts +15 -0
- package/dist/icons/components/UiDotsVertical.d.ts.map +1 -0
- package/dist/icons/components/UiDotsVertical.js +15 -0
- package/dist/icons/components/UiDotsVertical.js.map +1 -0
- package/dist/icons/components/UiDownload.cjs +15 -0
- package/dist/icons/components/UiDownload.cjs.map +1 -0
- package/dist/icons/components/UiDownload.d.ts +15 -0
- package/dist/icons/components/UiDownload.d.ts.map +1 -0
- package/dist/icons/components/UiDownload.js +15 -0
- package/dist/icons/components/UiDownload.js.map +1 -0
- package/dist/icons/components/UiEdit.cjs +15 -0
- package/dist/icons/components/UiEdit.cjs.map +1 -0
- package/dist/icons/components/UiEdit.d.ts +15 -0
- package/dist/icons/components/UiEdit.d.ts.map +1 -0
- package/dist/icons/components/UiEdit.js +15 -0
- package/dist/icons/components/UiEdit.js.map +1 -0
- package/dist/icons/components/UiEllipsis.cjs +15 -0
- package/dist/icons/components/UiEllipsis.cjs.map +1 -0
- package/dist/icons/components/UiEllipsis.d.ts +15 -0
- package/dist/icons/components/UiEllipsis.d.ts.map +1 -0
- package/dist/icons/components/UiEllipsis.js +15 -0
- package/dist/icons/components/UiEllipsis.js.map +1 -0
- package/dist/icons/components/UiEndpoint.cjs +10 -0
- package/dist/icons/components/UiEndpoint.cjs.map +1 -0
- package/dist/icons/components/UiEndpoint.d.ts +9 -0
- package/dist/icons/components/UiEndpoint.d.ts.map +1 -0
- package/dist/icons/components/UiEndpoint.js +10 -0
- package/dist/icons/components/UiEndpoint.js.map +1 -0
- package/dist/icons/components/UiEnum.cjs +13 -0
- package/dist/icons/components/UiEnum.cjs.map +1 -0
- package/dist/icons/components/UiEnum.d.ts +9 -0
- package/dist/icons/components/UiEnum.d.ts.map +1 -0
- package/dist/icons/components/UiEnum.js +13 -0
- package/dist/icons/components/UiEnum.js.map +1 -0
- package/dist/icons/components/UiEnumMember.cjs +19 -0
- package/dist/icons/components/UiEnumMember.cjs.map +1 -0
- package/dist/icons/components/UiEnumMember.d.ts +9 -0
- package/dist/icons/components/UiEnumMember.d.ts.map +1 -0
- package/dist/icons/components/UiEnumMember.js +19 -0
- package/dist/icons/components/UiEnumMember.js.map +1 -0
- package/dist/icons/components/UiEnvelope.cjs +15 -0
- package/dist/icons/components/UiEnvelope.cjs.map +1 -0
- package/dist/icons/components/UiEnvelope.d.ts +15 -0
- package/dist/icons/components/UiEnvelope.d.ts.map +1 -0
- package/dist/icons/components/UiEnvelope.js +15 -0
- package/dist/icons/components/UiEnvelope.js.map +1 -0
- package/dist/icons/components/UiError.cjs +14 -0
- package/dist/icons/components/UiError.cjs.map +1 -0
- package/dist/icons/components/UiError.d.ts +10 -0
- package/dist/icons/components/UiError.d.ts.map +1 -0
- package/dist/icons/components/UiError.js +14 -0
- package/dist/icons/components/UiError.js.map +1 -0
- package/dist/icons/components/UiEvent.cjs +13 -0
- package/dist/icons/components/UiEvent.cjs.map +1 -0
- package/dist/icons/components/UiEvent.d.ts +9 -0
- package/dist/icons/components/UiEvent.d.ts.map +1 -0
- package/dist/icons/components/UiEvent.js +13 -0
- package/dist/icons/components/UiEvent.js.map +1 -0
- package/dist/icons/components/UiExpandAll.cjs +13 -0
- package/dist/icons/components/UiExpandAll.cjs.map +1 -0
- package/dist/icons/components/UiExpandAll.d.ts +9 -0
- package/dist/icons/components/UiExpandAll.d.ts.map +1 -0
- package/dist/icons/components/UiExpandAll.js +13 -0
- package/dist/icons/components/UiExpandAll.js.map +1 -0
- package/dist/icons/components/UiExport.cjs +13 -0
- package/dist/icons/components/UiExport.cjs.map +1 -0
- package/dist/icons/components/UiExport.d.ts +9 -0
- package/dist/icons/components/UiExport.d.ts.map +1 -0
- package/dist/icons/components/UiExport.js +13 -0
- package/dist/icons/components/UiExport.js.map +1 -0
- package/dist/icons/components/UiExternalLink.cjs +10 -0
- package/dist/icons/components/UiExternalLink.cjs.map +1 -0
- package/dist/icons/components/UiExternalLink.d.ts +9 -0
- package/dist/icons/components/UiExternalLink.d.ts.map +1 -0
- package/dist/icons/components/UiExternalLink.js +10 -0
- package/dist/icons/components/UiExternalLink.js.map +1 -0
- package/dist/icons/components/UiEye.cjs +15 -0
- package/dist/icons/components/UiEye.cjs.map +1 -0
- package/dist/icons/components/UiEye.d.ts +15 -0
- package/dist/icons/components/UiEye.d.ts.map +1 -0
- package/dist/icons/components/UiEye.js +15 -0
- package/dist/icons/components/UiEye.js.map +1 -0
- package/dist/icons/components/UiEyeClosed.cjs +15 -0
- package/dist/icons/components/UiEyeClosed.cjs.map +1 -0
- package/dist/icons/components/UiEyeClosed.d.ts +15 -0
- package/dist/icons/components/UiEyeClosed.d.ts.map +1 -0
- package/dist/icons/components/UiEyeClosed.js +15 -0
- package/dist/icons/components/UiEyeClosed.js.map +1 -0
- package/dist/icons/components/UiField.cjs +13 -0
- package/dist/icons/components/UiField.cjs.map +1 -0
- package/dist/icons/components/UiField.d.ts +9 -0
- package/dist/icons/components/UiField.d.ts.map +1 -0
- package/dist/icons/components/UiField.js +13 -0
- package/dist/icons/components/UiField.js.map +1 -0
- package/dist/icons/components/UiFile.cjs +15 -0
- package/dist/icons/components/UiFile.cjs.map +1 -0
- package/dist/icons/components/UiFile.d.ts +15 -0
- package/dist/icons/components/UiFile.d.ts.map +1 -0
- package/dist/icons/components/UiFile.js +15 -0
- package/dist/icons/components/UiFile.js.map +1 -0
- package/dist/icons/components/UiFileCode.cjs +15 -0
- package/dist/icons/components/UiFileCode.cjs.map +1 -0
- package/dist/icons/components/UiFileCode.d.ts +15 -0
- package/dist/icons/components/UiFileCode.d.ts.map +1 -0
- package/dist/icons/components/UiFileCode.js +15 -0
- package/dist/icons/components/UiFileCode.js.map +1 -0
- package/dist/icons/components/UiFileCog.cjs +13 -0
- package/dist/icons/components/UiFileCog.cjs.map +1 -0
- package/dist/icons/components/UiFileCog.d.ts +9 -0
- package/dist/icons/components/UiFileCog.d.ts.map +1 -0
- package/dist/icons/components/UiFileCog.js +13 -0
- package/dist/icons/components/UiFileCog.js.map +1 -0
- package/dist/icons/components/UiFileJson.cjs +13 -0
- package/dist/icons/components/UiFileJson.cjs.map +1 -0
- package/dist/icons/components/UiFileJson.d.ts +9 -0
- package/dist/icons/components/UiFileJson.d.ts.map +1 -0
- package/dist/icons/components/UiFileJson.js +13 -0
- package/dist/icons/components/UiFileJson.js.map +1 -0
- package/dist/icons/components/UiFileSearch.cjs +15 -0
- package/dist/icons/components/UiFileSearch.cjs.map +1 -0
- package/dist/icons/components/UiFileSearch.d.ts +9 -0
- package/dist/icons/components/UiFileSearch.d.ts.map +1 -0
- package/dist/icons/components/UiFileSearch.js +15 -0
- package/dist/icons/components/UiFileSearch.js.map +1 -0
- package/dist/icons/components/UiFileSpreadsheet.cjs +13 -0
- package/dist/icons/components/UiFileSpreadsheet.cjs.map +1 -0
- package/dist/icons/components/UiFileSpreadsheet.d.ts +9 -0
- package/dist/icons/components/UiFileSpreadsheet.d.ts.map +1 -0
- package/dist/icons/components/UiFileSpreadsheet.js +13 -0
- package/dist/icons/components/UiFileSpreadsheet.js.map +1 -0
- package/dist/icons/components/UiFileText.cjs +15 -0
- package/dist/icons/components/UiFileText.cjs.map +1 -0
- package/dist/icons/components/UiFileText.d.ts +15 -0
- package/dist/icons/components/UiFileText.d.ts.map +1 -0
- package/dist/icons/components/UiFileText.js +15 -0
- package/dist/icons/components/UiFileText.js.map +1 -0
- package/dist/icons/components/UiFileType.cjs +13 -0
- package/dist/icons/components/UiFileType.cjs.map +1 -0
- package/dist/icons/components/UiFileType.d.ts +9 -0
- package/dist/icons/components/UiFileType.d.ts.map +1 -0
- package/dist/icons/components/UiFileType.js +13 -0
- package/dist/icons/components/UiFileType.js.map +1 -0
- package/dist/icons/components/UiFilter.cjs +15 -0
- package/dist/icons/components/UiFilter.cjs.map +1 -0
- package/dist/icons/components/UiFilter.d.ts +15 -0
- package/dist/icons/components/UiFilter.d.ts.map +1 -0
- package/dist/icons/components/UiFilter.js +15 -0
- package/dist/icons/components/UiFilter.js.map +1 -0
- package/dist/icons/components/UiFingerprint.cjs +15 -0
- package/dist/icons/components/UiFingerprint.cjs.map +1 -0
- package/dist/icons/components/UiFingerprint.d.ts +15 -0
- package/dist/icons/components/UiFingerprint.d.ts.map +1 -0
- package/dist/icons/components/UiFingerprint.js +15 -0
- package/dist/icons/components/UiFingerprint.js.map +1 -0
- package/dist/icons/components/UiFolder.cjs +15 -0
- package/dist/icons/components/UiFolder.cjs.map +1 -0
- package/dist/icons/components/UiFolder.d.ts +15 -0
- package/dist/icons/components/UiFolder.d.ts.map +1 -0
- package/dist/icons/components/UiFolder.js +15 -0
- package/dist/icons/components/UiFolder.js.map +1 -0
- package/dist/icons/components/UiFolderGit.cjs +15 -0
- package/dist/icons/components/UiFolderGit.cjs.map +1 -0
- package/dist/icons/components/UiFolderGit.d.ts +15 -0
- package/dist/icons/components/UiFolderGit.d.ts.map +1 -0
- package/dist/icons/components/UiFolderGit.js +15 -0
- package/dist/icons/components/UiFolderGit.js.map +1 -0
- package/dist/icons/components/UiFolderGit2.cjs +24 -0
- package/dist/icons/components/UiFolderGit2.cjs.map +1 -0
- package/dist/icons/components/UiFolderGit2.d.ts +15 -0
- package/dist/icons/components/UiFolderGit2.d.ts.map +1 -0
- package/dist/icons/components/UiFolderGit2.js +24 -0
- package/dist/icons/components/UiFolderGit2.js.map +1 -0
- package/dist/icons/components/UiForm.cjs +15 -0
- package/dist/icons/components/UiForm.cjs.map +1 -0
- package/dist/icons/components/UiForm.d.ts +15 -0
- package/dist/icons/components/UiForm.d.ts.map +1 -0
- package/dist/icons/components/UiForm.js +15 -0
- package/dist/icons/components/UiForm.js.map +1 -0
- package/dist/icons/components/UiFullscreen.cjs +15 -0
- package/dist/icons/components/UiFullscreen.cjs.map +1 -0
- package/dist/icons/components/UiFullscreen.d.ts +15 -0
- package/dist/icons/components/UiFullscreen.d.ts.map +1 -0
- package/dist/icons/components/UiFullscreen.js +15 -0
- package/dist/icons/components/UiFullscreen.js.map +1 -0
- package/dist/icons/components/UiFunction.cjs +13 -0
- package/dist/icons/components/UiFunction.cjs.map +1 -0
- package/dist/icons/components/UiFunction.d.ts +9 -0
- package/dist/icons/components/UiFunction.d.ts.map +1 -0
- package/dist/icons/components/UiFunction.js +13 -0
- package/dist/icons/components/UiFunction.js.map +1 -0
- package/dist/icons/components/UiFunctionSquare.cjs +18 -0
- package/dist/icons/components/UiFunctionSquare.cjs.map +1 -0
- package/dist/icons/components/UiFunctionSquare.d.ts +15 -0
- package/dist/icons/components/UiFunctionSquare.d.ts.map +1 -0
- package/dist/icons/components/UiFunctionSquare.js +18 -0
- package/dist/icons/components/UiFunctionSquare.js.map +1 -0
- package/dist/icons/components/UiFunnelData.cjs +15 -0
- package/dist/icons/components/UiFunnelData.cjs.map +1 -0
- package/dist/icons/components/UiFunnelData.d.ts +15 -0
- package/dist/icons/components/UiFunnelData.d.ts.map +1 -0
- package/dist/icons/components/UiFunnelData.js +15 -0
- package/dist/icons/components/UiFunnelData.js.map +1 -0
- package/dist/icons/components/UiGitBranch.cjs +15 -0
- package/dist/icons/components/UiGitBranch.cjs.map +1 -0
- package/dist/icons/components/UiGitBranch.d.ts +15 -0
- package/dist/icons/components/UiGitBranch.d.ts.map +1 -0
- package/dist/icons/components/UiGitBranch.js +15 -0
- package/dist/icons/components/UiGitBranch.js.map +1 -0
- package/dist/icons/components/UiGitGraph.cjs +15 -0
- package/dist/icons/components/UiGitGraph.cjs.map +1 -0
- package/dist/icons/components/UiGitGraph.d.ts +15 -0
- package/dist/icons/components/UiGitGraph.d.ts.map +1 -0
- package/dist/icons/components/UiGitGraph.js +15 -0
- package/dist/icons/components/UiGitGraph.js.map +1 -0
- package/dist/icons/components/UiGitMerge.cjs +15 -0
- package/dist/icons/components/UiGitMerge.cjs.map +1 -0
- package/dist/icons/components/UiGitMerge.d.ts +15 -0
- package/dist/icons/components/UiGitMerge.d.ts.map +1 -0
- package/dist/icons/components/UiGitMerge.js +15 -0
- package/dist/icons/components/UiGitMerge.js.map +1 -0
- package/dist/icons/components/UiGitPr.cjs +15 -0
- package/dist/icons/components/UiGitPr.cjs.map +1 -0
- package/dist/icons/components/UiGitPr.d.ts +15 -0
- package/dist/icons/components/UiGitPr.d.ts.map +1 -0
- package/dist/icons/components/UiGitPr.js +15 -0
- package/dist/icons/components/UiGitPr.js.map +1 -0
- package/dist/icons/components/UiGlobe.cjs +10 -0
- package/dist/icons/components/UiGlobe.cjs.map +1 -0
- package/dist/icons/components/UiGlobe.d.ts +9 -0
- package/dist/icons/components/UiGlobe.d.ts.map +1 -0
- package/dist/icons/components/UiGlobe.js +10 -0
- package/dist/icons/components/UiGlobe.js.map +1 -0
- package/dist/icons/components/UiGraph.cjs +15 -0
- package/dist/icons/components/UiGraph.cjs.map +1 -0
- package/dist/icons/components/UiGraph.d.ts +15 -0
- package/dist/icons/components/UiGraph.d.ts.map +1 -0
- package/dist/icons/components/UiGraph.js +15 -0
- package/dist/icons/components/UiGraph.js.map +1 -0
- package/dist/icons/components/UiGrid.cjs +15 -0
- package/dist/icons/components/UiGrid.cjs.map +1 -0
- package/dist/icons/components/UiGrid.d.ts +15 -0
- package/dist/icons/components/UiGrid.d.ts.map +1 -0
- package/dist/icons/components/UiGrid.js +15 -0
- package/dist/icons/components/UiGrid.js.map +1 -0
- package/dist/icons/components/UiHardDrive.cjs +10 -0
- package/dist/icons/components/UiHardDrive.cjs.map +1 -0
- package/dist/icons/components/UiHardDrive.d.ts +9 -0
- package/dist/icons/components/UiHardDrive.d.ts.map +1 -0
- package/dist/icons/components/UiHardDrive.js +10 -0
- package/dist/icons/components/UiHardDrive.js.map +1 -0
- package/dist/icons/components/UiHistory.cjs +15 -0
- package/dist/icons/components/UiHistory.cjs.map +1 -0
- package/dist/icons/components/UiHistory.d.ts +15 -0
- package/dist/icons/components/UiHistory.d.ts.map +1 -0
- package/dist/icons/components/UiHistory.js +15 -0
- package/dist/icons/components/UiHistory.js.map +1 -0
- package/dist/icons/components/UiHome.cjs +15 -0
- package/dist/icons/components/UiHome.cjs.map +1 -0
- package/dist/icons/components/UiHome.d.ts +15 -0
- package/dist/icons/components/UiHome.d.ts.map +1 -0
- package/dist/icons/components/UiHome.js +15 -0
- package/dist/icons/components/UiHome.js.map +1 -0
- package/dist/icons/components/UiHourglass.cjs +15 -0
- package/dist/icons/components/UiHourglass.cjs.map +1 -0
- package/dist/icons/components/UiHourglass.d.ts +15 -0
- package/dist/icons/components/UiHourglass.d.ts.map +1 -0
- package/dist/icons/components/UiHourglass.js +15 -0
- package/dist/icons/components/UiHourglass.js.map +1 -0
- package/dist/icons/components/UiHubot.cjs +15 -0
- package/dist/icons/components/UiHubot.cjs.map +1 -0
- package/dist/icons/components/UiHubot.d.ts +15 -0
- package/dist/icons/components/UiHubot.d.ts.map +1 -0
- package/dist/icons/components/UiHubot.js +15 -0
- package/dist/icons/components/UiHubot.js.map +1 -0
- package/dist/icons/components/UiImage.cjs +15 -0
- package/dist/icons/components/UiImage.cjs.map +1 -0
- package/dist/icons/components/UiImage.d.ts +15 -0
- package/dist/icons/components/UiImage.d.ts.map +1 -0
- package/dist/icons/components/UiImage.js +15 -0
- package/dist/icons/components/UiImage.js.map +1 -0
- package/dist/icons/components/UiImport.cjs +13 -0
- package/dist/icons/components/UiImport.cjs.map +1 -0
- package/dist/icons/components/UiImport.d.ts +9 -0
- package/dist/icons/components/UiImport.d.ts.map +1 -0
- package/dist/icons/components/UiImport.js +13 -0
- package/dist/icons/components/UiImport.js.map +1 -0
- package/dist/icons/components/UiInbox.cjs +15 -0
- package/dist/icons/components/UiInbox.cjs.map +1 -0
- package/dist/icons/components/UiInbox.d.ts +15 -0
- package/dist/icons/components/UiInbox.d.ts.map +1 -0
- package/dist/icons/components/UiInbox.js +15 -0
- package/dist/icons/components/UiInbox.js.map +1 -0
- package/dist/icons/components/UiInfo.cjs +23 -0
- package/dist/icons/components/UiInfo.cjs.map +1 -0
- package/dist/icons/components/UiInfo.d.ts +17 -0
- package/dist/icons/components/UiInfo.d.ts.map +1 -0
- package/dist/icons/components/UiInfo.js +23 -0
- package/dist/icons/components/UiInfo.js.map +1 -0
- package/dist/icons/components/UiInsightAvailability.cjs +15 -0
- package/dist/icons/components/UiInsightAvailability.cjs.map +1 -0
- package/dist/icons/components/UiInsightAvailability.d.ts +15 -0
- package/dist/icons/components/UiInsightAvailability.d.ts.map +1 -0
- package/dist/icons/components/UiInsightAvailability.js +15 -0
- package/dist/icons/components/UiInsightAvailability.js.map +1 -0
- package/dist/icons/components/UiInsightCompliance.cjs +10 -0
- package/dist/icons/components/UiInsightCompliance.cjs.map +1 -0
- package/dist/icons/components/UiInsightCompliance.d.ts +9 -0
- package/dist/icons/components/UiInsightCompliance.d.ts.map +1 -0
- package/dist/icons/components/UiInsightCompliance.js +10 -0
- package/dist/icons/components/UiInsightCompliance.js.map +1 -0
- package/dist/icons/components/UiInsightCost.cjs +15 -0
- package/dist/icons/components/UiInsightCost.cjs.map +1 -0
- package/dist/icons/components/UiInsightCost.d.ts +15 -0
- package/dist/icons/components/UiInsightCost.d.ts.map +1 -0
- package/dist/icons/components/UiInsightCost.js +15 -0
- package/dist/icons/components/UiInsightCost.js.map +1 -0
- package/dist/icons/components/UiInsightIntegration.cjs +10 -0
- package/dist/icons/components/UiInsightIntegration.cjs.map +1 -0
- package/dist/icons/components/UiInsightIntegration.d.ts +9 -0
- package/dist/icons/components/UiInsightIntegration.d.ts.map +1 -0
- package/dist/icons/components/UiInsightIntegration.js +10 -0
- package/dist/icons/components/UiInsightIntegration.js.map +1 -0
- package/dist/icons/components/UiInsightPerformance.cjs +15 -0
- package/dist/icons/components/UiInsightPerformance.cjs.map +1 -0
- package/dist/icons/components/UiInsightPerformance.d.ts +15 -0
- package/dist/icons/components/UiInsightPerformance.d.ts.map +1 -0
- package/dist/icons/components/UiInsightPerformance.js +15 -0
- package/dist/icons/components/UiInsightPerformance.js.map +1 -0
- package/dist/icons/components/UiInsightRecommendation.cjs +15 -0
- package/dist/icons/components/UiInsightRecommendation.cjs.map +1 -0
- package/dist/icons/components/UiInsightRecommendation.d.ts +15 -0
- package/dist/icons/components/UiInsightRecommendation.d.ts.map +1 -0
- package/dist/icons/components/UiInsightRecommendation.js +15 -0
- package/dist/icons/components/UiInsightRecommendation.js.map +1 -0
- package/dist/icons/components/UiInsightReliability.cjs +15 -0
- package/dist/icons/components/UiInsightReliability.cjs.map +1 -0
- package/dist/icons/components/UiInsightReliability.d.ts +15 -0
- package/dist/icons/components/UiInsightReliability.d.ts.map +1 -0
- package/dist/icons/components/UiInsightReliability.js +15 -0
- package/dist/icons/components/UiInsightReliability.js.map +1 -0
- package/dist/icons/components/UiInsightSecurity.cjs +15 -0
- package/dist/icons/components/UiInsightSecurity.cjs.map +1 -0
- package/dist/icons/components/UiInsightSecurity.d.ts +15 -0
- package/dist/icons/components/UiInsightSecurity.d.ts.map +1 -0
- package/dist/icons/components/UiInsightSecurity.js +15 -0
- package/dist/icons/components/UiInsightSecurity.js.map +1 -0
- package/dist/icons/components/UiInsightTechnicalDebt.cjs +15 -0
- package/dist/icons/components/UiInsightTechnicalDebt.cjs.map +1 -0
- package/dist/icons/components/UiInsightTechnicalDebt.d.ts +15 -0
- package/dist/icons/components/UiInsightTechnicalDebt.d.ts.map +1 -0
- package/dist/icons/components/UiInsightTechnicalDebt.js +15 -0
- package/dist/icons/components/UiInsightTechnicalDebt.js.map +1 -0
- package/dist/icons/components/UiInterface.cjs +13 -0
- package/dist/icons/components/UiInterface.cjs.map +1 -0
- package/dist/icons/components/UiInterface.d.ts +9 -0
- package/dist/icons/components/UiInterface.d.ts.map +1 -0
- package/dist/icons/components/UiInterface.js +13 -0
- package/dist/icons/components/UiInterface.js.map +1 -0
- package/dist/icons/components/UiJson.cjs +10 -0
- package/dist/icons/components/UiJson.cjs.map +1 -0
- package/dist/icons/components/UiJson.d.ts +9 -0
- package/dist/icons/components/UiJson.d.ts.map +1 -0
- package/dist/icons/components/UiJson.js +10 -0
- package/dist/icons/components/UiJson.js.map +1 -0
- package/dist/icons/components/UiKanban.cjs +15 -0
- package/dist/icons/components/UiKanban.cjs.map +1 -0
- package/dist/icons/components/UiKanban.d.ts +15 -0
- package/dist/icons/components/UiKanban.d.ts.map +1 -0
- package/dist/icons/components/UiKanban.js +15 -0
- package/dist/icons/components/UiKanban.js.map +1 -0
- package/dist/icons/components/UiKey.cjs +15 -0
- package/dist/icons/components/UiKey.cjs.map +1 -0
- package/dist/icons/components/UiKey.d.ts +15 -0
- package/dist/icons/components/UiKey.d.ts.map +1 -0
- package/dist/icons/components/UiKey.js +15 -0
- package/dist/icons/components/UiKey.js.map +1 -0
- package/dist/icons/components/UiKeyword.cjs +10 -0
- package/dist/icons/components/UiKeyword.cjs.map +1 -0
- package/dist/icons/components/UiKeyword.d.ts +9 -0
- package/dist/icons/components/UiKeyword.d.ts.map +1 -0
- package/dist/icons/components/UiKeyword.js +10 -0
- package/dist/icons/components/UiKeyword.js.map +1 -0
- package/dist/icons/components/UiLambda.cjs +13 -0
- package/dist/icons/components/UiLambda.cjs.map +1 -0
- package/dist/icons/components/UiLambda.d.ts +9 -0
- package/dist/icons/components/UiLambda.d.ts.map +1 -0
- package/dist/icons/components/UiLambda.js +13 -0
- package/dist/icons/components/UiLambda.js.map +1 -0
- package/dist/icons/components/UiLayers.cjs +14 -0
- package/dist/icons/components/UiLayers.cjs.map +1 -0
- package/dist/icons/components/UiLayers.d.ts +9 -0
- package/dist/icons/components/UiLayers.d.ts.map +1 -0
- package/dist/icons/components/UiLayers.js +14 -0
- package/dist/icons/components/UiLayers.js.map +1 -0
- package/dist/icons/components/UiLayoutDashboard.cjs +15 -0
- package/dist/icons/components/UiLayoutDashboard.cjs.map +1 -0
- package/dist/icons/components/UiLayoutDashboard.d.ts +15 -0
- package/dist/icons/components/UiLayoutDashboard.d.ts.map +1 -0
- package/dist/icons/components/UiLayoutDashboard.js +15 -0
- package/dist/icons/components/UiLayoutDashboard.js.map +1 -0
- package/dist/icons/components/UiLightbulb.cjs +15 -0
- package/dist/icons/components/UiLightbulb.cjs.map +1 -0
- package/dist/icons/components/UiLightbulb.d.ts +15 -0
- package/dist/icons/components/UiLightbulb.d.ts.map +1 -0
- package/dist/icons/components/UiLightbulb.js +15 -0
- package/dist/icons/components/UiLightbulb.js.map +1 -0
- package/dist/icons/components/UiLink.cjs +15 -0
- package/dist/icons/components/UiLink.cjs.map +1 -0
- package/dist/icons/components/UiLink.d.ts +15 -0
- package/dist/icons/components/UiLink.d.ts.map +1 -0
- package/dist/icons/components/UiLink.js +15 -0
- package/dist/icons/components/UiLink.js.map +1 -0
- package/dist/icons/components/UiLinkExternal.cjs +15 -0
- package/dist/icons/components/UiLinkExternal.cjs.map +1 -0
- package/dist/icons/components/UiLinkExternal.d.ts +15 -0
- package/dist/icons/components/UiLinkExternal.d.ts.map +1 -0
- package/dist/icons/components/UiLinkExternal.js +15 -0
- package/dist/icons/components/UiLinkExternal.js.map +1 -0
- package/dist/icons/components/UiListDashes.cjs +15 -0
- package/dist/icons/components/UiListDashes.cjs.map +1 -0
- package/dist/icons/components/UiListDashes.d.ts +15 -0
- package/dist/icons/components/UiListDashes.d.ts.map +1 -0
- package/dist/icons/components/UiListDashes.js +15 -0
- package/dist/icons/components/UiListDashes.js.map +1 -0
- package/dist/icons/components/UiListFlat.cjs +15 -0
- package/dist/icons/components/UiListFlat.cjs.map +1 -0
- package/dist/icons/components/UiListFlat.d.ts +15 -0
- package/dist/icons/components/UiListFlat.d.ts.map +1 -0
- package/dist/icons/components/UiListFlat.js +15 -0
- package/dist/icons/components/UiListFlat.js.map +1 -0
- package/dist/icons/components/UiListOrdered.cjs +10 -0
- package/dist/icons/components/UiListOrdered.cjs.map +1 -0
- package/dist/icons/components/UiListOrdered.d.ts +9 -0
- package/dist/icons/components/UiListOrdered.d.ts.map +1 -0
- package/dist/icons/components/UiListOrdered.js +10 -0
- package/dist/icons/components/UiListOrdered.js.map +1 -0
- package/dist/icons/components/UiListTree.cjs +15 -0
- package/dist/icons/components/UiListTree.cjs.map +1 -0
- package/dist/icons/components/UiListTree.d.ts +15 -0
- package/dist/icons/components/UiListTree.d.ts.map +1 -0
- package/dist/icons/components/UiListTree.js +15 -0
- package/dist/icons/components/UiListTree.js.map +1 -0
- package/dist/icons/components/UiLoader.cjs +23 -0
- package/dist/icons/components/UiLoader.cjs.map +1 -0
- package/dist/icons/components/UiLoader.d.ts +17 -0
- package/dist/icons/components/UiLoader.d.ts.map +1 -0
- package/dist/icons/components/UiLoader.js +23 -0
- package/dist/icons/components/UiLoader.js.map +1 -0
- package/dist/icons/components/UiLocation.cjs +15 -0
- package/dist/icons/components/UiLocation.cjs.map +1 -0
- package/dist/icons/components/UiLocation.d.ts +15 -0
- package/dist/icons/components/UiLocation.d.ts.map +1 -0
- package/dist/icons/components/UiLocation.js +15 -0
- package/dist/icons/components/UiLocation.js.map +1 -0
- package/dist/icons/components/UiLock.cjs +15 -0
- package/dist/icons/components/UiLock.cjs.map +1 -0
- package/dist/icons/components/UiLock.d.ts +15 -0
- package/dist/icons/components/UiLock.d.ts.map +1 -0
- package/dist/icons/components/UiLock.js +15 -0
- package/dist/icons/components/UiLock.js.map +1 -0
- package/dist/icons/components/UiLockOpen.cjs +15 -0
- package/dist/icons/components/UiLockOpen.cjs.map +1 -0
- package/dist/icons/components/UiLockOpen.d.ts +15 -0
- package/dist/icons/components/UiLockOpen.d.ts.map +1 -0
- package/dist/icons/components/UiLockOpen.js +15 -0
- package/dist/icons/components/UiLockOpen.js.map +1 -0
- package/dist/icons/components/UiMagicWand.cjs +15 -0
- package/dist/icons/components/UiMagicWand.cjs.map +1 -0
- package/dist/icons/components/UiMagicWand.d.ts +15 -0
- package/dist/icons/components/UiMagicWand.d.ts.map +1 -0
- package/dist/icons/components/UiMagicWand.js +15 -0
- package/dist/icons/components/UiMagicWand.js.map +1 -0
- package/dist/icons/components/UiMarkdown.cjs +13 -0
- package/dist/icons/components/UiMarkdown.cjs.map +1 -0
- package/dist/icons/components/UiMarkdown.d.ts +9 -0
- package/dist/icons/components/UiMarkdown.d.ts.map +1 -0
- package/dist/icons/components/UiMarkdown.js +13 -0
- package/dist/icons/components/UiMarkdown.js.map +1 -0
- package/dist/icons/components/UiMemoryStick.cjs +13 -0
- package/dist/icons/components/UiMemoryStick.cjs.map +1 -0
- package/dist/icons/components/UiMemoryStick.d.ts +9 -0
- package/dist/icons/components/UiMemoryStick.d.ts.map +1 -0
- package/dist/icons/components/UiMemoryStick.js +13 -0
- package/dist/icons/components/UiMemoryStick.js.map +1 -0
- package/dist/icons/components/UiMenu.cjs +15 -0
- package/dist/icons/components/UiMenu.cjs.map +1 -0
- package/dist/icons/components/UiMenu.d.ts +15 -0
- package/dist/icons/components/UiMenu.d.ts.map +1 -0
- package/dist/icons/components/UiMenu.js +15 -0
- package/dist/icons/components/UiMenu.js.map +1 -0
- package/dist/icons/components/UiMethod.cjs +13 -0
- package/dist/icons/components/UiMethod.cjs.map +1 -0
- package/dist/icons/components/UiMethod.d.ts +9 -0
- package/dist/icons/components/UiMethod.d.ts.map +1 -0
- package/dist/icons/components/UiMethod.js +13 -0
- package/dist/icons/components/UiMethod.js.map +1 -0
- package/dist/icons/components/UiModule.cjs +14 -0
- package/dist/icons/components/UiModule.cjs.map +1 -0
- package/dist/icons/components/UiModule.d.ts +9 -0
- package/dist/icons/components/UiModule.d.ts.map +1 -0
- package/dist/icons/components/UiModule.js +14 -0
- package/dist/icons/components/UiModule.js.map +1 -0
- package/dist/icons/components/UiMoon.cjs +15 -0
- package/dist/icons/components/UiMoon.cjs.map +1 -0
- package/dist/icons/components/UiMoon.d.ts +15 -0
- package/dist/icons/components/UiMoon.d.ts.map +1 -0
- package/dist/icons/components/UiMoon.js +15 -0
- package/dist/icons/components/UiMoon.js.map +1 -0
- package/dist/icons/components/UiNamespace.cjs +16 -0
- package/dist/icons/components/UiNamespace.cjs.map +1 -0
- package/dist/icons/components/UiNamespace.d.ts +9 -0
- package/dist/icons/components/UiNamespace.d.ts.map +1 -0
- package/dist/icons/components/UiNamespace.js +16 -0
- package/dist/icons/components/UiNamespace.js.map +1 -0
- package/dist/icons/components/UiNetwork.cjs +15 -0
- package/dist/icons/components/UiNetwork.cjs.map +1 -0
- package/dist/icons/components/UiNetwork.d.ts +15 -0
- package/dist/icons/components/UiNetwork.d.ts.map +1 -0
- package/dist/icons/components/UiNetwork.js +15 -0
- package/dist/icons/components/UiNetwork.js.map +1 -0
- package/dist/icons/components/UiNull.cjs +14 -0
- package/dist/icons/components/UiNull.cjs.map +1 -0
- package/dist/icons/components/UiNull.d.ts +9 -0
- package/dist/icons/components/UiNull.d.ts.map +1 -0
- package/dist/icons/components/UiNull.js +14 -0
- package/dist/icons/components/UiNull.js.map +1 -0
- package/dist/icons/components/UiNumeric.cjs +14 -0
- package/dist/icons/components/UiNumeric.cjs.map +1 -0
- package/dist/icons/components/UiNumeric.d.ts +9 -0
- package/dist/icons/components/UiNumeric.d.ts.map +1 -0
- package/dist/icons/components/UiNumeric.js +14 -0
- package/dist/icons/components/UiNumeric.js.map +1 -0
- package/dist/icons/components/UiObject.cjs +13 -0
- package/dist/icons/components/UiObject.cjs.map +1 -0
- package/dist/icons/components/UiObject.d.ts +9 -0
- package/dist/icons/components/UiObject.d.ts.map +1 -0
- package/dist/icons/components/UiObject.js +13 -0
- package/dist/icons/components/UiObject.js.map +1 -0
- package/dist/icons/components/UiOperator.cjs +10 -0
- package/dist/icons/components/UiOperator.cjs.map +1 -0
- package/dist/icons/components/UiOperator.d.ts +9 -0
- package/dist/icons/components/UiOperator.d.ts.map +1 -0
- package/dist/icons/components/UiOperator.js +10 -0
- package/dist/icons/components/UiOperator.js.map +1 -0
- package/dist/icons/components/UiOrganization.cjs +103 -0
- package/dist/icons/components/UiOrganization.cjs.map +1 -0
- package/dist/icons/components/UiOrganization.d.ts +63 -0
- package/dist/icons/components/UiOrganization.d.ts.map +1 -0
- package/dist/icons/components/UiOrganization.js +103 -0
- package/dist/icons/components/UiOrganization.js.map +1 -0
- package/dist/icons/components/UiPackage.cjs +15 -0
- package/dist/icons/components/UiPackage.cjs.map +1 -0
- package/dist/icons/components/UiPackage.d.ts +15 -0
- package/dist/icons/components/UiPackage.d.ts.map +1 -0
- package/dist/icons/components/UiPackage.js +15 -0
- package/dist/icons/components/UiPackage.js.map +1 -0
- package/dist/icons/components/UiParameter.cjs +13 -0
- package/dist/icons/components/UiParameter.cjs.map +1 -0
- package/dist/icons/components/UiParameter.d.ts +9 -0
- package/dist/icons/components/UiParameter.d.ts.map +1 -0
- package/dist/icons/components/UiParameter.js +13 -0
- package/dist/icons/components/UiParameter.js.map +1 -0
- package/dist/icons/components/UiPass.cjs +23 -0
- package/dist/icons/components/UiPass.cjs.map +1 -0
- package/dist/icons/components/UiPass.d.ts +17 -0
- package/dist/icons/components/UiPass.d.ts.map +1 -0
- package/dist/icons/components/UiPass.js +23 -0
- package/dist/icons/components/UiPass.js.map +1 -0
- package/dist/icons/components/UiPause.cjs +13 -0
- package/dist/icons/components/UiPause.cjs.map +1 -0
- package/dist/icons/components/UiPause.d.ts +9 -0
- package/dist/icons/components/UiPause.d.ts.map +1 -0
- package/dist/icons/components/UiPause.js +13 -0
- package/dist/icons/components/UiPause.js.map +1 -0
- package/dist/icons/components/UiPhone.cjs +15 -0
- package/dist/icons/components/UiPhone.cjs.map +1 -0
- package/dist/icons/components/UiPhone.d.ts +15 -0
- package/dist/icons/components/UiPhone.d.ts.map +1 -0
- package/dist/icons/components/UiPhone.js +15 -0
- package/dist/icons/components/UiPhone.js.map +1 -0
- package/dist/icons/components/UiPlay.cjs +10 -0
- package/dist/icons/components/UiPlay.cjs.map +1 -0
- package/dist/icons/components/UiPlay.d.ts +9 -0
- package/dist/icons/components/UiPlay.d.ts.map +1 -0
- package/dist/icons/components/UiPlay.js +10 -0
- package/dist/icons/components/UiPlay.js.map +1 -0
- package/dist/icons/components/UiPlayCircle.cjs +15 -0
- package/dist/icons/components/UiPlayCircle.cjs.map +1 -0
- package/dist/icons/components/UiPlayCircle.d.ts +15 -0
- package/dist/icons/components/UiPlayCircle.d.ts.map +1 -0
- package/dist/icons/components/UiPlayCircle.js +15 -0
- package/dist/icons/components/UiPlayCircle.js.map +1 -0
- package/dist/icons/components/UiPlaybook.cjs +10 -0
- package/dist/icons/components/UiPlaybook.cjs.map +1 -0
- package/dist/icons/components/UiPlaybook.d.ts +9 -0
- package/dist/icons/components/UiPlaybook.d.ts.map +1 -0
- package/dist/icons/components/UiPlaybook.js +10 -0
- package/dist/icons/components/UiPlaybook.js.map +1 -0
- package/dist/icons/components/UiPlug.cjs +10 -0
- package/dist/icons/components/UiPlug.cjs.map +1 -0
- package/dist/icons/components/UiPlug.d.ts +9 -0
- package/dist/icons/components/UiPlug.d.ts.map +1 -0
- package/dist/icons/components/UiPlug.js +10 -0
- package/dist/icons/components/UiPlug.js.map +1 -0
- package/dist/icons/components/UiProperty.cjs +13 -0
- package/dist/icons/components/UiProperty.cjs.map +1 -0
- package/dist/icons/components/UiProperty.d.ts +9 -0
- package/dist/icons/components/UiProperty.d.ts.map +1 -0
- package/dist/icons/components/UiProperty.js +13 -0
- package/dist/icons/components/UiProperty.js.map +1 -0
- package/dist/icons/components/UiPulse.cjs +15 -0
- package/dist/icons/components/UiPulse.cjs.map +1 -0
- package/dist/icons/components/UiPulse.d.ts +15 -0
- package/dist/icons/components/UiPulse.d.ts.map +1 -0
- package/dist/icons/components/UiPulse.js +15 -0
- package/dist/icons/components/UiPulse.js.map +1 -0
- package/dist/icons/components/UiPuzzle.cjs +15 -0
- package/dist/icons/components/UiPuzzle.cjs.map +1 -0
- package/dist/icons/components/UiPuzzle.d.ts +15 -0
- package/dist/icons/components/UiPuzzle.d.ts.map +1 -0
- package/dist/icons/components/UiPuzzle.js +15 -0
- package/dist/icons/components/UiPuzzle.js.map +1 -0
- package/dist/icons/components/UiQuestion.cjs +15 -0
- package/dist/icons/components/UiQuestion.cjs.map +1 -0
- package/dist/icons/components/UiQuestion.d.ts +15 -0
- package/dist/icons/components/UiQuestion.d.ts.map +1 -0
- package/dist/icons/components/UiQuestion.js +15 -0
- package/dist/icons/components/UiQuestion.js.map +1 -0
- package/dist/icons/components/UiQueue.cjs +15 -0
- package/dist/icons/components/UiQueue.cjs.map +1 -0
- package/dist/icons/components/UiQueue.d.ts +15 -0
- package/dist/icons/components/UiQueue.d.ts.map +1 -0
- package/dist/icons/components/UiQueue.js +15 -0
- package/dist/icons/components/UiQueue.js.map +1 -0
- package/dist/icons/components/UiRecord.cjs +13 -0
- package/dist/icons/components/UiRecord.cjs.map +1 -0
- package/dist/icons/components/UiRecord.d.ts +9 -0
- package/dist/icons/components/UiRecord.d.ts.map +1 -0
- package/dist/icons/components/UiRecord.js +13 -0
- package/dist/icons/components/UiRecord.js.map +1 -0
- package/dist/icons/components/UiRefresh.cjs +15 -0
- package/dist/icons/components/UiRefresh.cjs.map +1 -0
- package/dist/icons/components/UiRefresh.d.ts +15 -0
- package/dist/icons/components/UiRefresh.d.ts.map +1 -0
- package/dist/icons/components/UiRefresh.js +15 -0
- package/dist/icons/components/UiRefresh.js.map +1 -0
- package/dist/icons/components/UiRemove.cjs +15 -0
- package/dist/icons/components/UiRemove.cjs.map +1 -0
- package/dist/icons/components/UiRemove.d.ts +15 -0
- package/dist/icons/components/UiRemove.d.ts.map +1 -0
- package/dist/icons/components/UiRemove.js +15 -0
- package/dist/icons/components/UiRemove.js.map +1 -0
- package/dist/icons/components/UiResizeVertical.cjs +15 -0
- package/dist/icons/components/UiResizeVertical.cjs.map +1 -0
- package/dist/icons/components/UiResizeVertical.d.ts +15 -0
- package/dist/icons/components/UiResizeVertical.d.ts.map +1 -0
- package/dist/icons/components/UiResizeVertical.js +15 -0
- package/dist/icons/components/UiResizeVertical.js.map +1 -0
- package/dist/icons/components/UiRestart.cjs +10 -0
- package/dist/icons/components/UiRestart.cjs.map +1 -0
- package/dist/icons/components/UiRestart.d.ts +9 -0
- package/dist/icons/components/UiRestart.d.ts.map +1 -0
- package/dist/icons/components/UiRestart.js +10 -0
- package/dist/icons/components/UiRestart.js.map +1 -0
- package/dist/icons/components/UiRobotAi.cjs +15 -0
- package/dist/icons/components/UiRobotAi.cjs.map +1 -0
- package/dist/icons/components/UiRobotAi.d.ts +15 -0
- package/dist/icons/components/UiRobotAi.d.ts.map +1 -0
- package/dist/icons/components/UiRobotAi.js +15 -0
- package/dist/icons/components/UiRobotAi.js.map +1 -0
- package/dist/icons/components/UiRocket.cjs +15 -0
- package/dist/icons/components/UiRocket.cjs.map +1 -0
- package/dist/icons/components/UiRocket.d.ts +15 -0
- package/dist/icons/components/UiRocket.d.ts.map +1 -0
- package/dist/icons/components/UiRocket.js +15 -0
- package/dist/icons/components/UiRocket.js.map +1 -0
- package/dist/icons/components/UiRoute.cjs +15 -0
- package/dist/icons/components/UiRoute.cjs.map +1 -0
- package/dist/icons/components/UiRoute.d.ts +15 -0
- package/dist/icons/components/UiRoute.d.ts.map +1 -0
- package/dist/icons/components/UiRoute.js +15 -0
- package/dist/icons/components/UiRoute.js.map +1 -0
- package/dist/icons/components/UiRows.cjs +15 -0
- package/dist/icons/components/UiRows.cjs.map +1 -0
- package/dist/icons/components/UiRows.d.ts +15 -0
- package/dist/icons/components/UiRows.d.ts.map +1 -0
- package/dist/icons/components/UiRows.js +15 -0
- package/dist/icons/components/UiRows.js.map +1 -0
- package/dist/icons/components/UiSave.cjs +15 -0
- package/dist/icons/components/UiSave.cjs.map +1 -0
- package/dist/icons/components/UiSave.d.ts +15 -0
- package/dist/icons/components/UiSave.d.ts.map +1 -0
- package/dist/icons/components/UiSave.js +15 -0
- package/dist/icons/components/UiSave.js.map +1 -0
- package/dist/icons/components/UiScale.cjs +13 -0
- package/dist/icons/components/UiScale.cjs.map +1 -0
- package/dist/icons/components/UiScale.d.ts +9 -0
- package/dist/icons/components/UiScale.d.ts.map +1 -0
- package/dist/icons/components/UiScale.js +13 -0
- package/dist/icons/components/UiScale.js.map +1 -0
- package/dist/icons/components/UiSealCheck.cjs +15 -0
- package/dist/icons/components/UiSealCheck.cjs.map +1 -0
- package/dist/icons/components/UiSealCheck.d.ts +15 -0
- package/dist/icons/components/UiSealCheck.d.ts.map +1 -0
- package/dist/icons/components/UiSealCheck.js +15 -0
- package/dist/icons/components/UiSealCheck.js.map +1 -0
- package/dist/icons/components/UiSearch.cjs +10 -0
- package/dist/icons/components/UiSearch.cjs.map +1 -0
- package/dist/icons/components/UiSearch.d.ts +9 -0
- package/dist/icons/components/UiSearch.d.ts.map +1 -0
- package/dist/icons/components/UiSearch.js +10 -0
- package/dist/icons/components/UiSearch.js.map +1 -0
- package/dist/icons/components/UiSelect.cjs +15 -0
- package/dist/icons/components/UiSelect.cjs.map +1 -0
- package/dist/icons/components/UiSelect.d.ts +15 -0
- package/dist/icons/components/UiSelect.d.ts.map +1 -0
- package/dist/icons/components/UiSelect.js +15 -0
- package/dist/icons/components/UiSelect.js.map +1 -0
- package/dist/icons/components/UiServer.cjs +10 -0
- package/dist/icons/components/UiServer.cjs.map +1 -0
- package/dist/icons/components/UiServer.d.ts +9 -0
- package/dist/icons/components/UiServer.d.ts.map +1 -0
- package/dist/icons/components/UiServer.js +10 -0
- package/dist/icons/components/UiServer.js.map +1 -0
- package/dist/icons/components/UiServerProcess.cjs +15 -0
- package/dist/icons/components/UiServerProcess.cjs.map +1 -0
- package/dist/icons/components/UiServerProcess.d.ts +15 -0
- package/dist/icons/components/UiServerProcess.d.ts.map +1 -0
- package/dist/icons/components/UiServerProcess.js +15 -0
- package/dist/icons/components/UiServerProcess.js.map +1 -0
- package/dist/icons/components/UiSeverityBlocker.cjs +23 -0
- package/dist/icons/components/UiSeverityBlocker.cjs.map +1 -0
- package/dist/icons/components/UiSeverityBlocker.d.ts +17 -0
- package/dist/icons/components/UiSeverityBlocker.d.ts.map +1 -0
- package/dist/icons/components/UiSeverityBlocker.js +23 -0
- package/dist/icons/components/UiSeverityBlocker.js.map +1 -0
- package/dist/icons/components/UiSeverityCritical.cjs +23 -0
- package/dist/icons/components/UiSeverityCritical.cjs.map +1 -0
- package/dist/icons/components/UiSeverityCritical.d.ts +17 -0
- package/dist/icons/components/UiSeverityCritical.d.ts.map +1 -0
- package/dist/icons/components/UiSeverityCritical.js +23 -0
- package/dist/icons/components/UiSeverityCritical.js.map +1 -0
- package/dist/icons/components/UiSeverityHigh.cjs +23 -0
- package/dist/icons/components/UiSeverityHigh.cjs.map +1 -0
- package/dist/icons/components/UiSeverityHigh.d.ts +17 -0
- package/dist/icons/components/UiSeverityHigh.d.ts.map +1 -0
- package/dist/icons/components/UiSeverityHigh.js +23 -0
- package/dist/icons/components/UiSeverityHigh.js.map +1 -0
- package/dist/icons/components/UiSeverityInfo.cjs +23 -0
- package/dist/icons/components/UiSeverityInfo.cjs.map +1 -0
- package/dist/icons/components/UiSeverityInfo.d.ts +17 -0
- package/dist/icons/components/UiSeverityInfo.d.ts.map +1 -0
- package/dist/icons/components/UiSeverityInfo.js +23 -0
- package/dist/icons/components/UiSeverityInfo.js.map +1 -0
- package/dist/icons/components/UiSeverityLow.cjs +23 -0
- package/dist/icons/components/UiSeverityLow.cjs.map +1 -0
- package/dist/icons/components/UiSeverityLow.d.ts +17 -0
- package/dist/icons/components/UiSeverityLow.d.ts.map +1 -0
- package/dist/icons/components/UiSeverityLow.js +23 -0
- package/dist/icons/components/UiSeverityLow.js.map +1 -0
- package/dist/icons/components/UiSeverityMedium.cjs +23 -0
- package/dist/icons/components/UiSeverityMedium.cjs.map +1 -0
- package/dist/icons/components/UiSeverityMedium.d.ts +17 -0
- package/dist/icons/components/UiSeverityMedium.d.ts.map +1 -0
- package/dist/icons/components/UiSeverityMedium.js +23 -0
- package/dist/icons/components/UiSeverityMedium.js.map +1 -0
- package/dist/icons/components/UiSeverityWarning.cjs +23 -0
- package/dist/icons/components/UiSeverityWarning.cjs.map +1 -0
- package/dist/icons/components/UiSeverityWarning.d.ts +17 -0
- package/dist/icons/components/UiSeverityWarning.d.ts.map +1 -0
- package/dist/icons/components/UiSeverityWarning.js +23 -0
- package/dist/icons/components/UiSeverityWarning.js.map +1 -0
- package/dist/icons/components/UiShare.cjs +15 -0
- package/dist/icons/components/UiShare.cjs.map +1 -0
- package/dist/icons/components/UiShare.d.ts +15 -0
- package/dist/icons/components/UiShare.d.ts.map +1 -0
- package/dist/icons/components/UiShare.js +15 -0
- package/dist/icons/components/UiShare.js.map +1 -0
- package/dist/icons/components/UiShield.cjs +127 -0
- package/dist/icons/components/UiShield.cjs.map +1 -0
- package/dist/icons/components/UiShield.d.ts +99 -0
- package/dist/icons/components/UiShield.d.ts.map +1 -0
- package/dist/icons/components/UiShield.js +127 -0
- package/dist/icons/components/UiShield.js.map +1 -0
- package/dist/icons/components/UiShipWheel.cjs +14 -0
- package/dist/icons/components/UiShipWheel.cjs.map +1 -0
- package/dist/icons/components/UiShipWheel.d.ts +9 -0
- package/dist/icons/components/UiShipWheel.d.ts.map +1 -0
- package/dist/icons/components/UiShipWheel.js +14 -0
- package/dist/icons/components/UiShipWheel.js.map +1 -0
- package/dist/icons/components/UiSidebar.cjs +15 -0
- package/dist/icons/components/UiSidebar.cjs.map +1 -0
- package/dist/icons/components/UiSidebar.d.ts +15 -0
- package/dist/icons/components/UiSidebar.d.ts.map +1 -0
- package/dist/icons/components/UiSidebar.js +15 -0
- package/dist/icons/components/UiSidebar.js.map +1 -0
- package/dist/icons/components/UiSigma.cjs +10 -0
- package/dist/icons/components/UiSigma.cjs.map +1 -0
- package/dist/icons/components/UiSigma.d.ts +9 -0
- package/dist/icons/components/UiSigma.d.ts.map +1 -0
- package/dist/icons/components/UiSigma.js +10 -0
- package/dist/icons/components/UiSigma.js.map +1 -0
- package/dist/icons/components/UiSignIn.cjs +15 -0
- package/dist/icons/components/UiSignIn.cjs.map +1 -0
- package/dist/icons/components/UiSignIn.d.ts +15 -0
- package/dist/icons/components/UiSignIn.d.ts.map +1 -0
- package/dist/icons/components/UiSignIn.js +15 -0
- package/dist/icons/components/UiSignIn.js.map +1 -0
- package/dist/icons/components/UiSignOut.cjs +15 -0
- package/dist/icons/components/UiSignOut.cjs.map +1 -0
- package/dist/icons/components/UiSignOut.d.ts +15 -0
- package/dist/icons/components/UiSignOut.d.ts.map +1 -0
- package/dist/icons/components/UiSignOut.js +15 -0
- package/dist/icons/components/UiSignOut.js.map +1 -0
- package/dist/icons/components/UiSiren.cjs +23 -0
- package/dist/icons/components/UiSiren.cjs.map +1 -0
- package/dist/icons/components/UiSiren.d.ts +17 -0
- package/dist/icons/components/UiSiren.d.ts.map +1 -0
- package/dist/icons/components/UiSiren.js +23 -0
- package/dist/icons/components/UiSiren.js.map +1 -0
- package/dist/icons/components/UiSkipForward.cjs +15 -0
- package/dist/icons/components/UiSkipForward.cjs.map +1 -0
- package/dist/icons/components/UiSkipForward.d.ts +15 -0
- package/dist/icons/components/UiSkipForward.d.ts.map +1 -0
- package/dist/icons/components/UiSkipForward.js +15 -0
- package/dist/icons/components/UiSkipForward.js.map +1 -0
- package/dist/icons/components/UiSkull.cjs +23 -0
- package/dist/icons/components/UiSkull.cjs.map +1 -0
- package/dist/icons/components/UiSkull.d.ts +17 -0
- package/dist/icons/components/UiSkull.d.ts.map +1 -0
- package/dist/icons/components/UiSkull.js +23 -0
- package/dist/icons/components/UiSkull.js.map +1 -0
- package/dist/icons/components/UiSliders.cjs +15 -0
- package/dist/icons/components/UiSliders.cjs.map +1 -0
- package/dist/icons/components/UiSliders.d.ts +15 -0
- package/dist/icons/components/UiSliders.d.ts.map +1 -0
- package/dist/icons/components/UiSliders.js +15 -0
- package/dist/icons/components/UiSliders.js.map +1 -0
- package/dist/icons/components/UiSparkles.cjs +15 -0
- package/dist/icons/components/UiSparkles.cjs.map +1 -0
- package/dist/icons/components/UiSparkles.d.ts +15 -0
- package/dist/icons/components/UiSparkles.d.ts.map +1 -0
- package/dist/icons/components/UiSparkles.js +15 -0
- package/dist/icons/components/UiSparkles.js.map +1 -0
- package/dist/icons/components/UiSpeaker.cjs +15 -0
- package/dist/icons/components/UiSpeaker.cjs.map +1 -0
- package/dist/icons/components/UiSpeaker.d.ts +15 -0
- package/dist/icons/components/UiSpeaker.d.ts.map +1 -0
- package/dist/icons/components/UiSpeaker.js +15 -0
- package/dist/icons/components/UiSpeaker.js.map +1 -0
- package/dist/icons/components/UiSqlArray.cjs +13 -0
- package/dist/icons/components/UiSqlArray.cjs.map +1 -0
- package/dist/icons/components/UiSqlArray.d.ts +9 -0
- package/dist/icons/components/UiSqlArray.d.ts.map +1 -0
- package/dist/icons/components/UiSqlArray.js +13 -0
- package/dist/icons/components/UiSqlArray.js.map +1 -0
- package/dist/icons/components/UiSqlColumn.cjs +13 -0
- package/dist/icons/components/UiSqlColumn.cjs.map +1 -0
- package/dist/icons/components/UiSqlColumn.d.ts +9 -0
- package/dist/icons/components/UiSqlColumn.d.ts.map +1 -0
- package/dist/icons/components/UiSqlColumn.js +13 -0
- package/dist/icons/components/UiSqlColumn.js.map +1 -0
- package/dist/icons/components/UiSqlConstraint.cjs +10 -0
- package/dist/icons/components/UiSqlConstraint.cjs.map +1 -0
- package/dist/icons/components/UiSqlConstraint.d.ts +9 -0
- package/dist/icons/components/UiSqlConstraint.d.ts.map +1 -0
- package/dist/icons/components/UiSqlConstraint.js +10 -0
- package/dist/icons/components/UiSqlConstraint.js.map +1 -0
- package/dist/icons/components/UiSqlDatabase.cjs +14 -0
- package/dist/icons/components/UiSqlDatabase.cjs.map +1 -0
- package/dist/icons/components/UiSqlDatabase.d.ts +9 -0
- package/dist/icons/components/UiSqlDatabase.d.ts.map +1 -0
- package/dist/icons/components/UiSqlDatabase.js +14 -0
- package/dist/icons/components/UiSqlDatabase.js.map +1 -0
- package/dist/icons/components/UiSqlForeignKey.cjs +13 -0
- package/dist/icons/components/UiSqlForeignKey.cjs.map +1 -0
- package/dist/icons/components/UiSqlForeignKey.d.ts +9 -0
- package/dist/icons/components/UiSqlForeignKey.d.ts.map +1 -0
- package/dist/icons/components/UiSqlForeignKey.js +13 -0
- package/dist/icons/components/UiSqlForeignKey.js.map +1 -0
- package/dist/icons/components/UiSqlFunction.cjs +13 -0
- package/dist/icons/components/UiSqlFunction.cjs.map +1 -0
- package/dist/icons/components/UiSqlFunction.d.ts +9 -0
- package/dist/icons/components/UiSqlFunction.d.ts.map +1 -0
- package/dist/icons/components/UiSqlFunction.js +13 -0
- package/dist/icons/components/UiSqlFunction.js.map +1 -0
- package/dist/icons/components/UiSqlIndex.cjs +13 -0
- package/dist/icons/components/UiSqlIndex.cjs.map +1 -0
- package/dist/icons/components/UiSqlIndex.d.ts +9 -0
- package/dist/icons/components/UiSqlIndex.d.ts.map +1 -0
- package/dist/icons/components/UiSqlIndex.js +13 -0
- package/dist/icons/components/UiSqlIndex.js.map +1 -0
- package/dist/icons/components/UiSqlPrimaryKey.cjs +13 -0
- package/dist/icons/components/UiSqlPrimaryKey.cjs.map +1 -0
- package/dist/icons/components/UiSqlPrimaryKey.d.ts +9 -0
- package/dist/icons/components/UiSqlPrimaryKey.d.ts.map +1 -0
- package/dist/icons/components/UiSqlPrimaryKey.js +13 -0
- package/dist/icons/components/UiSqlPrimaryKey.js.map +1 -0
- package/dist/icons/components/UiSqlQuery.cjs +10 -0
- package/dist/icons/components/UiSqlQuery.cjs.map +1 -0
- package/dist/icons/components/UiSqlQuery.d.ts +9 -0
- package/dist/icons/components/UiSqlQuery.d.ts.map +1 -0
- package/dist/icons/components/UiSqlQuery.js +10 -0
- package/dist/icons/components/UiSqlQuery.js.map +1 -0
- package/dist/icons/components/UiSqlSchema.cjs +13 -0
- package/dist/icons/components/UiSqlSchema.cjs.map +1 -0
- package/dist/icons/components/UiSqlSchema.d.ts +9 -0
- package/dist/icons/components/UiSqlSchema.d.ts.map +1 -0
- package/dist/icons/components/UiSqlSchema.js +13 -0
- package/dist/icons/components/UiSqlSchema.js.map +1 -0
- package/dist/icons/components/UiSqlSequence.cjs +14 -0
- package/dist/icons/components/UiSqlSequence.cjs.map +1 -0
- package/dist/icons/components/UiSqlSequence.d.ts +9 -0
- package/dist/icons/components/UiSqlSequence.d.ts.map +1 -0
- package/dist/icons/components/UiSqlSequence.js +14 -0
- package/dist/icons/components/UiSqlSequence.js.map +1 -0
- package/dist/icons/components/UiSqlStoredProc.cjs +13 -0
- package/dist/icons/components/UiSqlStoredProc.cjs.map +1 -0
- package/dist/icons/components/UiSqlStoredProc.d.ts +9 -0
- package/dist/icons/components/UiSqlStoredProc.d.ts.map +1 -0
- package/dist/icons/components/UiSqlStoredProc.js +13 -0
- package/dist/icons/components/UiSqlStoredProc.js.map +1 -0
- package/dist/icons/components/UiSqlTable.cjs +20 -0
- package/dist/icons/components/UiSqlTable.cjs.map +1 -0
- package/dist/icons/components/UiSqlTable.d.ts +15 -0
- package/dist/icons/components/UiSqlTable.d.ts.map +1 -0
- package/dist/icons/components/UiSqlTable.js +20 -0
- package/dist/icons/components/UiSqlTable.js.map +1 -0
- package/dist/icons/components/UiSqlTrigger.cjs +10 -0
- package/dist/icons/components/UiSqlTrigger.cjs.map +1 -0
- package/dist/icons/components/UiSqlTrigger.d.ts +9 -0
- package/dist/icons/components/UiSqlTrigger.d.ts.map +1 -0
- package/dist/icons/components/UiSqlTrigger.js +10 -0
- package/dist/icons/components/UiSqlTrigger.js.map +1 -0
- package/dist/icons/components/UiSqlView.cjs +15 -0
- package/dist/icons/components/UiSqlView.cjs.map +1 -0
- package/dist/icons/components/UiSqlView.d.ts +9 -0
- package/dist/icons/components/UiSqlView.d.ts.map +1 -0
- package/dist/icons/components/UiSqlView.js +15 -0
- package/dist/icons/components/UiSqlView.js.map +1 -0
- package/dist/icons/components/UiSquare.cjs +15 -0
- package/dist/icons/components/UiSquare.cjs.map +1 -0
- package/dist/icons/components/UiSquare.d.ts +15 -0
- package/dist/icons/components/UiSquare.d.ts.map +1 -0
- package/dist/icons/components/UiSquare.js +15 -0
- package/dist/icons/components/UiSquare.js.map +1 -0
- package/dist/icons/components/UiStackFrameDot.cjs +10 -0
- package/dist/icons/components/UiStackFrameDot.cjs.map +1 -0
- package/dist/icons/components/UiStackFrameDot.d.ts +9 -0
- package/dist/icons/components/UiStackFrameDot.d.ts.map +1 -0
- package/dist/icons/components/UiStackFrameDot.js +10 -0
- package/dist/icons/components/UiStackFrameDot.js.map +1 -0
- package/dist/icons/components/UiStar.cjs +15 -0
- package/dist/icons/components/UiStar.cjs.map +1 -0
- package/dist/icons/components/UiStar.d.ts +15 -0
- package/dist/icons/components/UiStar.d.ts.map +1 -0
- package/dist/icons/components/UiStar.js +15 -0
- package/dist/icons/components/UiStar.js.map +1 -0
- package/dist/icons/components/UiStop.cjs +10 -0
- package/dist/icons/components/UiStop.cjs.map +1 -0
- package/dist/icons/components/UiStop.d.ts +9 -0
- package/dist/icons/components/UiStop.d.ts.map +1 -0
- package/dist/icons/components/UiStop.js +10 -0
- package/dist/icons/components/UiStop.js.map +1 -0
- package/dist/icons/components/UiString.cjs +13 -0
- package/dist/icons/components/UiString.cjs.map +1 -0
- package/dist/icons/components/UiString.d.ts +9 -0
- package/dist/icons/components/UiString.d.ts.map +1 -0
- package/dist/icons/components/UiString.js +13 -0
- package/dist/icons/components/UiString.js.map +1 -0
- package/dist/icons/components/UiStruct.cjs +13 -0
- package/dist/icons/components/UiStruct.cjs.map +1 -0
- package/dist/icons/components/UiStruct.d.ts +9 -0
- package/dist/icons/components/UiStruct.d.ts.map +1 -0
- package/dist/icons/components/UiStruct.js +13 -0
- package/dist/icons/components/UiStruct.js.map +1 -0
- package/dist/icons/components/UiSun.cjs +15 -0
- package/dist/icons/components/UiSun.cjs.map +1 -0
- package/dist/icons/components/UiSun.d.ts +15 -0
- package/dist/icons/components/UiSun.d.ts.map +1 -0
- package/dist/icons/components/UiSun.js +15 -0
- package/dist/icons/components/UiSun.js.map +1 -0
- package/dist/icons/components/UiSwap.cjs +15 -0
- package/dist/icons/components/UiSwap.cjs.map +1 -0
- package/dist/icons/components/UiSwap.d.ts +9 -0
- package/dist/icons/components/UiSwap.d.ts.map +1 -0
- package/dist/icons/components/UiSwap.js +15 -0
- package/dist/icons/components/UiSwap.js.map +1 -0
- package/dist/icons/components/UiSync.cjs +10 -0
- package/dist/icons/components/UiSync.cjs.map +1 -0
- package/dist/icons/components/UiSync.d.ts +9 -0
- package/dist/icons/components/UiSync.d.ts.map +1 -0
- package/dist/icons/components/UiSync.js +10 -0
- package/dist/icons/components/UiSync.js.map +1 -0
- package/dist/icons/components/UiTable.cjs +15 -0
- package/dist/icons/components/UiTable.cjs.map +1 -0
- package/dist/icons/components/UiTable.d.ts +15 -0
- package/dist/icons/components/UiTable.d.ts.map +1 -0
- package/dist/icons/components/UiTable.js +15 -0
- package/dist/icons/components/UiTable.js.map +1 -0
- package/dist/icons/components/UiTableProperties.cjs +15 -0
- package/dist/icons/components/UiTableProperties.cjs.map +1 -0
- package/dist/icons/components/UiTableProperties.d.ts +15 -0
- package/dist/icons/components/UiTableProperties.d.ts.map +1 -0
- package/dist/icons/components/UiTableProperties.js +15 -0
- package/dist/icons/components/UiTableProperties.js.map +1 -0
- package/dist/icons/components/UiTag.cjs +15 -0
- package/dist/icons/components/UiTag.cjs.map +1 -0
- package/dist/icons/components/UiTag.d.ts +15 -0
- package/dist/icons/components/UiTag.d.ts.map +1 -0
- package/dist/icons/components/UiTag.js +15 -0
- package/dist/icons/components/UiTag.js.map +1 -0
- package/dist/icons/components/UiTerminal.cjs +15 -0
- package/dist/icons/components/UiTerminal.cjs.map +1 -0
- package/dist/icons/components/UiTerminal.d.ts +15 -0
- package/dist/icons/components/UiTerminal.d.ts.map +1 -0
- package/dist/icons/components/UiTerminal.js +15 -0
- package/dist/icons/components/UiTerminal.js.map +1 -0
- package/dist/icons/components/UiTest.cjs +13 -0
- package/dist/icons/components/UiTest.cjs.map +1 -0
- package/dist/icons/components/UiTest.d.ts +9 -0
- package/dist/icons/components/UiTest.d.ts.map +1 -0
- package/dist/icons/components/UiTest.js +13 -0
- package/dist/icons/components/UiTest.js.map +1 -0
- package/dist/icons/components/UiThumbsDown.cjs +15 -0
- package/dist/icons/components/UiThumbsDown.cjs.map +1 -0
- package/dist/icons/components/UiThumbsDown.d.ts +15 -0
- package/dist/icons/components/UiThumbsDown.d.ts.map +1 -0
- package/dist/icons/components/UiThumbsDown.js +15 -0
- package/dist/icons/components/UiThumbsDown.js.map +1 -0
- package/dist/icons/components/UiThumbsUp.cjs +15 -0
- package/dist/icons/components/UiThumbsUp.cjs.map +1 -0
- package/dist/icons/components/UiThumbsUp.d.ts +15 -0
- package/dist/icons/components/UiThumbsUp.d.ts.map +1 -0
- package/dist/icons/components/UiThumbsUp.js +15 -0
- package/dist/icons/components/UiThumbsUp.js.map +1 -0
- package/dist/icons/components/UiToggleOff.cjs +15 -0
- package/dist/icons/components/UiToggleOff.cjs.map +1 -0
- package/dist/icons/components/UiToggleOff.d.ts +15 -0
- package/dist/icons/components/UiToggleOff.d.ts.map +1 -0
- package/dist/icons/components/UiToggleOff.js +15 -0
- package/dist/icons/components/UiToggleOff.js.map +1 -0
- package/dist/icons/components/UiToggleOn.cjs +15 -0
- package/dist/icons/components/UiToggleOn.cjs.map +1 -0
- package/dist/icons/components/UiToggleOn.d.ts +15 -0
- package/dist/icons/components/UiToggleOn.d.ts.map +1 -0
- package/dist/icons/components/UiToggleOn.js +15 -0
- package/dist/icons/components/UiToggleOn.js.map +1 -0
- package/dist/icons/components/UiTrait.cjs +13 -0
- package/dist/icons/components/UiTrait.cjs.map +1 -0
- package/dist/icons/components/UiTrait.d.ts +9 -0
- package/dist/icons/components/UiTrait.d.ts.map +1 -0
- package/dist/icons/components/UiTrait.js +13 -0
- package/dist/icons/components/UiTrait.js.map +1 -0
- package/dist/icons/components/UiTrash.cjs +15 -0
- package/dist/icons/components/UiTrash.cjs.map +1 -0
- package/dist/icons/components/UiTrash.d.ts +15 -0
- package/dist/icons/components/UiTrash.d.ts.map +1 -0
- package/dist/icons/components/UiTrash.js +15 -0
- package/dist/icons/components/UiTrash.js.map +1 -0
- package/dist/icons/components/UiTrendDown.cjs +15 -0
- package/dist/icons/components/UiTrendDown.cjs.map +1 -0
- package/dist/icons/components/UiTrendDown.d.ts +15 -0
- package/dist/icons/components/UiTrendDown.d.ts.map +1 -0
- package/dist/icons/components/UiTrendDown.js +15 -0
- package/dist/icons/components/UiTrendDown.js.map +1 -0
- package/dist/icons/components/UiTrendUp.cjs +15 -0
- package/dist/icons/components/UiTrendUp.cjs.map +1 -0
- package/dist/icons/components/UiTrendUp.d.ts +15 -0
- package/dist/icons/components/UiTrendUp.d.ts.map +1 -0
- package/dist/icons/components/UiTrendUp.js +15 -0
- package/dist/icons/components/UiTrendUp.js.map +1 -0
- package/dist/icons/components/UiTypeAlias.cjs +15 -0
- package/dist/icons/components/UiTypeAlias.cjs.map +1 -0
- package/dist/icons/components/UiTypeAlias.d.ts +9 -0
- package/dist/icons/components/UiTypeAlias.d.ts.map +1 -0
- package/dist/icons/components/UiTypeAlias.js +15 -0
- package/dist/icons/components/UiTypeAlias.js.map +1 -0
- package/dist/icons/components/UiTypeParameter.cjs +14 -0
- package/dist/icons/components/UiTypeParameter.cjs.map +1 -0
- package/dist/icons/components/UiTypeParameter.d.ts +9 -0
- package/dist/icons/components/UiTypeParameter.d.ts.map +1 -0
- package/dist/icons/components/UiTypeParameter.js +14 -0
- package/dist/icons/components/UiTypeParameter.js.map +1 -0
- package/dist/icons/components/UiUnknown.cjs +13 -0
- package/dist/icons/components/UiUnknown.cjs.map +1 -0
- package/dist/icons/components/UiUnknown.d.ts +9 -0
- package/dist/icons/components/UiUnknown.d.ts.map +1 -0
- package/dist/icons/components/UiUnknown.js +13 -0
- package/dist/icons/components/UiUnknown.js.map +1 -0
- package/dist/icons/components/UiUpload.cjs +15 -0
- package/dist/icons/components/UiUpload.cjs.map +1 -0
- package/dist/icons/components/UiUpload.d.ts +15 -0
- package/dist/icons/components/UiUpload.d.ts.map +1 -0
- package/dist/icons/components/UiUpload.js +15 -0
- package/dist/icons/components/UiUpload.js.map +1 -0
- package/dist/icons/components/UiUser.cjs +81 -0
- package/dist/icons/components/UiUser.cjs.map +1 -0
- package/dist/icons/components/UiUser.d.ts +51 -0
- package/dist/icons/components/UiUser.d.ts.map +1 -0
- package/dist/icons/components/UiUser.js +81 -0
- package/dist/icons/components/UiUser.js.map +1 -0
- package/dist/icons/components/UiUserCircle.cjs +81 -0
- package/dist/icons/components/UiUserCircle.cjs.map +1 -0
- package/dist/icons/components/UiUserCircle.d.ts +51 -0
- package/dist/icons/components/UiUserCircle.d.ts.map +1 -0
- package/dist/icons/components/UiUserCircle.js +81 -0
- package/dist/icons/components/UiUserCircle.js.map +1 -0
- package/dist/icons/components/UiUserCog.cjs +14 -0
- package/dist/icons/components/UiUserCog.cjs.map +1 -0
- package/dist/icons/components/UiUserCog.d.ts +9 -0
- package/dist/icons/components/UiUserCog.d.ts.map +1 -0
- package/dist/icons/components/UiUserCog.js +14 -0
- package/dist/icons/components/UiUserCog.js.map +1 -0
- package/dist/icons/components/UiUsersThree.cjs +103 -0
- package/dist/icons/components/UiUsersThree.cjs.map +1 -0
- package/dist/icons/components/UiUsersThree.d.ts +63 -0
- package/dist/icons/components/UiUsersThree.d.ts.map +1 -0
- package/dist/icons/components/UiUsersThree.js +103 -0
- package/dist/icons/components/UiUsersThree.js.map +1 -0
- package/dist/icons/components/UiVariable.cjs +13 -0
- package/dist/icons/components/UiVariable.cjs.map +1 -0
- package/dist/icons/components/UiVariable.d.ts +9 -0
- package/dist/icons/components/UiVariable.d.ts.map +1 -0
- package/dist/icons/components/UiVariable.js +13 -0
- package/dist/icons/components/UiVariable.js.map +1 -0
- package/dist/icons/components/UiVideo.cjs +15 -0
- package/dist/icons/components/UiVideo.cjs.map +1 -0
- package/dist/icons/components/UiVideo.d.ts +15 -0
- package/dist/icons/components/UiVideo.d.ts.map +1 -0
- package/dist/icons/components/UiVideo.js +15 -0
- package/dist/icons/components/UiVideo.js.map +1 -0
- package/dist/icons/components/UiWarningCircle.cjs +23 -0
- package/dist/icons/components/UiWarningCircle.cjs.map +1 -0
- package/dist/icons/components/UiWarningCircle.d.ts +17 -0
- package/dist/icons/components/UiWarningCircle.d.ts.map +1 -0
- package/dist/icons/components/UiWarningCircle.js +23 -0
- package/dist/icons/components/UiWarningCircle.js.map +1 -0
- package/dist/icons/components/UiWarningTriangle.cjs +23 -0
- package/dist/icons/components/UiWarningTriangle.cjs.map +1 -0
- package/dist/icons/components/UiWarningTriangle.d.ts +17 -0
- package/dist/icons/components/UiWarningTriangle.d.ts.map +1 -0
- package/dist/icons/components/UiWarningTriangle.js +23 -0
- package/dist/icons/components/UiWarningTriangle.js.map +1 -0
- package/dist/icons/components/UiWatch.cjs +15 -0
- package/dist/icons/components/UiWatch.cjs.map +1 -0
- package/dist/icons/components/UiWatch.d.ts +15 -0
- package/dist/icons/components/UiWatch.d.ts.map +1 -0
- package/dist/icons/components/UiWatch.js +15 -0
- package/dist/icons/components/UiWatch.js.map +1 -0
- package/dist/icons/components/UiWorkflow.cjs +10 -0
- package/dist/icons/components/UiWorkflow.cjs.map +1 -0
- package/dist/icons/components/UiWorkflow.d.ts +9 -0
- package/dist/icons/components/UiWorkflow.d.ts.map +1 -0
- package/dist/icons/components/UiWorkflow.js +10 -0
- package/dist/icons/components/UiWorkflow.js.map +1 -0
- package/dist/icons/components/UiWrench.cjs +15 -0
- package/dist/icons/components/UiWrench.cjs.map +1 -0
- package/dist/icons/components/UiWrench.d.ts +15 -0
- package/dist/icons/components/UiWrench.d.ts.map +1 -0
- package/dist/icons/components/UiWrench.js +15 -0
- package/dist/icons/components/UiWrench.js.map +1 -0
- package/dist/icons/components/UiZap.cjs +15 -0
- package/dist/icons/components/UiZap.cjs.map +1 -0
- package/dist/icons/components/UiZap.d.ts +15 -0
- package/dist/icons/components/UiZap.d.ts.map +1 -0
- package/dist/icons/components/UiZap.js +15 -0
- package/dist/icons/components/UiZap.js.map +1 -0
- package/dist/icons/components/UiZoomIn.cjs +15 -0
- package/dist/icons/components/UiZoomIn.cjs.map +1 -0
- package/dist/icons/components/UiZoomIn.d.ts +15 -0
- package/dist/icons/components/UiZoomIn.d.ts.map +1 -0
- package/dist/icons/components/UiZoomIn.js +15 -0
- package/dist/icons/components/UiZoomIn.js.map +1 -0
- package/dist/icons/components/UiZoomOut.cjs +15 -0
- package/dist/icons/components/UiZoomOut.cjs.map +1 -0
- package/dist/icons/components/UiZoomOut.d.ts +15 -0
- package/dist/icons/components/UiZoomOut.d.ts.map +1 -0
- package/dist/icons/components/UiZoomOut.js +15 -0
- package/dist/icons/components/UiZoomOut.js.map +1 -0
- package/dist/icons/index.d.ts +493 -0
- package/dist/icons/index.d.ts.map +1 -0
- package/dist/icons/types.d.ts +21 -0
- package/dist/icons/types.d.ts.map +1 -0
- package/dist/icons.cjs +754 -0
- package/dist/icons.cjs.map +1 -0
- package/dist/icons.d.ts +2 -0
- package/dist/icons.d.ts.map +1 -0
- package/dist/icons.js +754 -0
- package/dist/icons.js.map +1 -0
- package/dist/index.cjs +966 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.js +773 -2
- package/dist/index.js.map +1 -1
- package/dist/layout/Section.cjs +81 -0
- package/dist/layout/Section.cjs.map +1 -0
- package/dist/layout/Section.d.ts +18 -2
- package/dist/layout/Section.d.ts.map +1 -1
- package/dist/layout/Section.js +11 -3
- package/dist/layout/Section.js.map +1 -1
- package/dist/layout/SplitPane.cjs +72 -0
- package/dist/layout/SplitPane.cjs.map +1 -0
- package/dist/layout/SplitPane.d.ts +8 -0
- package/dist/layout/SplitPane.d.ts.map +1 -1
- package/dist/layout/SplitPane.js.map +1 -1
- package/dist/lib/palette.cjs +35 -0
- package/dist/lib/palette.cjs.map +1 -0
- package/dist/lib/size.cjs +14 -0
- package/dist/lib/size.cjs.map +1 -0
- package/dist/lib/utils.cjs +9 -0
- package/dist/lib/utils.cjs.map +1 -0
- package/dist/overlay/DropdownMenu.cjs +98 -0
- package/dist/overlay/DropdownMenu.cjs.map +1 -0
- package/dist/overlay/DropdownMenu.d.ts +43 -0
- package/dist/overlay/DropdownMenu.d.ts.map +1 -0
- package/dist/overlay/DropdownMenu.js +98 -0
- package/dist/overlay/DropdownMenu.js.map +1 -0
- package/dist/overlay/HoverCard.cjs +170 -0
- package/dist/overlay/HoverCard.cjs.map +1 -0
- package/dist/overlay/HoverCard.d.ts +7 -0
- package/dist/overlay/HoverCard.d.ts.map +1 -1
- package/dist/overlay/HoverCard.js.map +1 -1
- package/dist/overlay/Modal.cjs +108 -0
- package/dist/overlay/Modal.cjs.map +1 -0
- package/dist/overlay/Modal.d.ts +14 -1
- package/dist/overlay/Modal.d.ts.map +1 -1
- package/dist/overlay/Modal.js +22 -5
- package/dist/overlay/Modal.js.map +1 -1
- package/dist/rpc/AcceptPicker.cjs +128 -0
- package/dist/rpc/AcceptPicker.cjs.map +1 -0
- package/dist/rpc/AcceptPicker.d.ts.map +1 -1
- package/dist/rpc/AcceptPicker.js +4 -2
- package/dist/rpc/AcceptPicker.js.map +1 -1
- package/dist/rpc/CommandForm.cjs +357 -0
- package/dist/rpc/CommandForm.cjs.map +1 -0
- package/dist/rpc/CommandForm.d.ts.map +1 -1
- package/dist/rpc/CommandForm.js +3 -2
- package/dist/rpc/CommandForm.js.map +1 -1
- package/dist/rpc/CommandOutput.cjs +203 -0
- package/dist/rpc/CommandOutput.cjs.map +1 -0
- package/dist/rpc/CommandOutput.d.ts +5 -1
- package/dist/rpc/CommandOutput.d.ts.map +1 -1
- package/dist/rpc/CommandOutput.js +12 -4
- package/dist/rpc/CommandOutput.js.map +1 -1
- package/dist/rpc/EndpointList.cjs +56 -0
- package/dist/rpc/EndpointList.cjs.map +1 -0
- package/dist/rpc/EntityExplorerApp.cjs +358 -0
- package/dist/rpc/EntityExplorerApp.cjs.map +1 -0
- package/dist/rpc/EntityExplorerApp.d.ts +3 -5
- package/dist/rpc/EntityExplorerApp.d.ts.map +1 -1
- package/dist/rpc/EntityExplorerApp.js +99 -23
- package/dist/rpc/EntityExplorerApp.js.map +1 -1
- package/dist/rpc/ExecutionResult.cjs +85 -0
- package/dist/rpc/ExecutionResult.cjs.map +1 -0
- package/dist/rpc/ExecutionResult.d.ts +10 -1
- package/dist/rpc/ExecutionResult.d.ts.map +1 -1
- package/dist/rpc/ExecutionResult.js +36 -2
- package/dist/rpc/ExecutionResult.js.map +1 -1
- package/dist/rpc/FilterForm.cjs +375 -0
- package/dist/rpc/FilterForm.cjs.map +1 -0
- package/dist/rpc/FilterForm.d.ts.map +1 -1
- package/dist/rpc/FilterForm.js +20 -37
- package/dist/rpc/FilterForm.js.map +1 -1
- package/dist/rpc/InlineError.cjs +49 -0
- package/dist/rpc/InlineError.cjs.map +1 -0
- package/dist/rpc/InlineError.d.ts.map +1 -1
- package/dist/rpc/InlineError.js +2 -7
- package/dist/rpc/InlineError.js.map +1 -1
- package/dist/rpc/OperationActionDialog.cjs +106 -0
- package/dist/rpc/OperationActionDialog.cjs.map +1 -0
- package/dist/rpc/OperationActionDialog.d.ts.map +1 -1
- package/dist/rpc/OperationActionDialog.js +2 -1
- package/dist/rpc/OperationActionDialog.js.map +1 -1
- package/dist/rpc/OperationCatalog.cjs +342 -0
- package/dist/rpc/OperationCatalog.cjs.map +1 -0
- package/dist/rpc/OperationCatalog.d.ts.map +1 -1
- package/dist/rpc/OperationCatalog.js +32 -29
- package/dist/rpc/OperationCatalog.js.map +1 -1
- package/dist/rpc/OperationCommandPage.cjs +476 -0
- package/dist/rpc/OperationCommandPage.cjs.map +1 -0
- package/dist/rpc/OperationCommandPage.d.ts.map +1 -1
- package/dist/rpc/OperationCommandPage.js +119 -127
- package/dist/rpc/OperationCommandPage.js.map +1 -1
- package/dist/rpc/OperationEntityPage.cjs +221 -0
- package/dist/rpc/OperationEntityPage.cjs.map +1 -0
- package/dist/rpc/OperationEntityPage.d.ts.map +1 -1
- package/dist/rpc/OperationEntityPage.js +4 -1
- package/dist/rpc/OperationEntityPage.js.map +1 -1
- package/dist/rpc/classify.cjs +76 -0
- package/dist/rpc/classify.cjs.map +1 -0
- package/dist/rpc/clickyMetadata.cjs +71 -0
- package/dist/rpc/clickyMetadata.cjs.map +1 -0
- package/dist/rpc/formMetadata.cjs +308 -0
- package/dist/rpc/formMetadata.cjs.map +1 -0
- package/dist/rpc/formMetadata.d.ts +11 -1
- package/dist/rpc/formMetadata.d.ts.map +1 -1
- package/dist/rpc/formMetadata.js +61 -3
- package/dist/rpc/formMetadata.js.map +1 -1
- package/dist/rpc/types.cjs +8 -0
- package/dist/rpc/types.cjs.map +1 -0
- package/dist/rpc/types.d.ts +14 -0
- package/dist/rpc/types.d.ts.map +1 -1
- package/dist/rpc/types.js.map +1 -1
- package/dist/rpc/useOperations.cjs +31 -0
- package/dist/rpc/useOperations.cjs.map +1 -0
- package/dist/rpc.cjs +39 -0
- package/dist/rpc.cjs.map +1 -0
- package/dist/rpc.d.ts +1 -0
- package/dist/rpc.d.ts.map +1 -1
- package/dist/rpc.js +2 -0
- package/dist/rpc.js.map +1 -1
- package/dist/styles.cjs +3 -0
- package/dist/styles.cjs.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/tailwind-preset.cjs +65 -62
- package/dist/tailwind-preset.cjs.map +1 -1
- package/dist/utils.cjs +12 -0
- package/dist/utils.cjs.map +1 -0
- package/package.json +41 -27
- package/dist/api-explorer.d.ts +0 -5
- package/dist/api-explorer.d.ts.map +0 -1
- package/dist/api-explorer.js +0 -25
- package/dist/api-explorer.js.map +0 -1
- package/dist/rpc/ApiExplorer.d.ts +0 -11
- package/dist/rpc/ApiExplorer.d.ts.map +0 -1
- package/dist/rpc/ApiExplorer.js +0 -37
- package/dist/rpc/ApiExplorer.js.map +0 -1
- package/dist/tailwind-preset.d.cts +0 -6
- package/dist/tailwind-preset.d.cts.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterBar.cjs","sources":["../../src/components/FilterBar.tsx"],"sourcesContent":["import {\n useCallback,\n createContext,\n useContext,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n type ReactNode,\n type RefObject,\n} from \"react\";\nimport { FilterPill, type FilterMode } from \"../data/FilterPill\";\nimport { Icon } from \"../data/Icon\";\nimport { UiChevronDown, UiChevronRight, UiChevronUp, UiClose, UiFilter, UiSearch } from \"../icons\";\nimport { cn } from \"../lib/utils\";\nimport { Button } from \"./button\";\nimport { DateTimePicker } from \"./DateTimePicker\";\nimport { MultiSelect, type MultiSelectOption } from \"./MultiSelect\";\nimport { RangeSlider } from \"./RangeSlider\";\nimport { Select } from \"./select\";\nimport { TimeRange, type TimeRangePresetGroup } from \"./TimeRange\";\n\nconst FILTER_INPUT_DEBOUNCE_MS = 500;\nconst FILTER_BAR_GAP_PX = 8;\nconst FILTER_BAR_OVERFLOW_TRIGGER_ESTIMATE_PX = 44;\n\n// When `autoSubmit` is false, debounced fields forward their draft value\n// immediately (no timer) so the consumer can accumulate state locally and\n// fire one request when Apply is clicked. When true (default) fields debounce\n// upstream, matching the live-filter behaviour used in trace/log UIs.\nconst FilterBarContext = createContext<{ autoSubmit: boolean }>({\n autoSubmit: true,\n});\n\nexport type FilterBarSearchProps = {\n /** Controlled search text. */\n value: string;\n /** Called with the next search text. Debounced when `autoSubmit` is true. */\n onChange: (value: string) => void;\n /** Placeholder shown in the search input. */\n placeholder?: string;\n /** Accessible label for the search input. */\n ariaLabel?: string;\n /** Classes applied to the search input. */\n className?: string;\n};\n\nexport type FilterBarTextFilter = {\n /** Stable filter key used for rendering and overflow measurement. */\n key: string;\n /** Renders a free-text input. */\n kind: \"text\";\n /** Filter label shown on the control. */\n label: string;\n /** Optional helper text shown in filter popovers. */\n description?: string;\n /** Controlled input value. */\n value: string;\n /** Called with the next input value. */\n onChange: (value: string) => void;\n /** Placeholder shown in the input. */\n placeholder?: string;\n /** Disables this filter. */\n disabled?: boolean;\n /** Classes applied to this filter control. */\n className?: string;\n};\n\nexport type FilterBarLookupOption = {\n /** Option value written to filter state. */\n value: string;\n /** Optional display label; falls back to `value`. */\n label?: string;\n /** Prevents choosing the option. */\n disabled?: boolean;\n /** Optional browser tooltip. */\n title?: string;\n};\n\nexport type FilterBarLookupInputType = \"text\" | \"number\" | \"date\";\n\nexport type FilterBarLookupFilter = {\n key: string;\n /** Renders an input backed by a datalist-style option set. */\n kind: \"lookup\";\n label: string;\n description?: string;\n /** Controlled selected or typed value. */\n value: string;\n /** Suggestions for the lookup input. */\n options: FilterBarLookupOption[];\n onChange: (value: string) => void;\n placeholder?: string;\n /** Native input type for the lookup field. */\n inputType?: FilterBarLookupInputType;\n disabled?: boolean;\n className?: string;\n};\n\nexport type FilterBarLookupMultiFilter = {\n key: string;\n /** Renders a multi-value lookup filter. */\n kind: \"lookup-multi\";\n label: string;\n description?: string;\n /** Controlled selected values. */\n value: string[];\n /** Suggestions for the lookup input. */\n options: FilterBarLookupOption[];\n onChange: (value: string[]) => void;\n placeholder?: string;\n disabled?: boolean;\n className?: string;\n};\n\nexport type FilterBarMultiFilterMode = Extract<FilterMode, \"include\" | \"exclude\">;\n\nexport type FilterBarMultiFilter = {\n key: string;\n /** Renders include/exclude chips for each option. */\n kind: \"multi\";\n label: string;\n description?: string;\n /** Map of option value to include/exclude state. */\n value: Record<string, FilterBarMultiFilterMode>;\n /** Available chip options. */\n options: MultiSelectOption[];\n onChange: (value: Record<string, FilterBarMultiFilterMode>) => void;\n disabled?: boolean;\n className?: string;\n};\n\nexport type FilterBarNestedMultiGroup = {\n /** Stable group id. */\n groupKey: string;\n /** Optional visible group label. */\n label?: string;\n /** Options in this group. */\n options: MultiSelectOption[];\n};\n\nexport type FilterBarNestedMultiFilter = {\n key: string;\n /** Renders grouped include/exclude chips. */\n kind: \"nested-multi\";\n label: string;\n description?: string;\n // Same wire shape as FilterBarMultiFilter so consumers can swap kinds\n // without changing their state slot.\n value: Record<string, FilterBarMultiFilterMode>;\n groups: FilterBarNestedMultiGroup[];\n onChange: (value: Record<string, FilterBarMultiFilterMode>) => void;\n disabled?: boolean;\n className?: string;\n};\n\nexport type FilterBarSelectMultiFilter = {\n key: string;\n /** Renders a compact multi-select dropdown. */\n kind: \"select-multi\";\n label: string;\n description?: string;\n /** Controlled selected values. */\n value: string[];\n /** Available dropdown options. */\n options: MultiSelectOption[];\n onChange: (value: string[]) => void;\n placeholder?: string;\n disabled?: boolean;\n className?: string;\n};\n\nexport type FilterBarNumberValue = {\n /** Minimum bound as a string so callers can preserve draft input. */\n min?: string;\n /** Maximum bound as a string so callers can preserve draft input. */\n max?: string;\n};\n\nexport type FilterBarNumberFilter = {\n key: string;\n /** Renders paired min/max numeric controls. */\n kind: \"number\";\n label: string;\n description?: string;\n /** Controlled min/max value. */\n value: FilterBarNumberValue;\n onChange: (value: FilterBarNumberValue) => void;\n /** Lower bound used by the optional range slider. */\n domainMin?: number;\n /** Upper bound used by the optional range slider. */\n domainMax?: number;\n /** Step size for number inputs and slider movement. */\n step?: number;\n /** Formatter used for slider labels. */\n formatValue?: (value: number) => string;\n minPlaceholder?: string;\n maxPlaceholder?: string;\n disabled?: boolean;\n className?: string;\n};\n\nexport type FilterBarEnumFilter = {\n key: string;\n /** Renders a single-select dropdown. */\n kind: \"enum\";\n label: string;\n description?: string;\n /** Controlled selected value. */\n value: string;\n /** Available enum options. */\n options: Array<{ value: string; label?: string }>;\n onChange: (value: string) => void;\n placeholder?: string;\n disabled?: boolean;\n className?: string;\n};\n\nexport type FilterBarBooleanFilter = {\n key: string;\n /** Renders a boolean toggle. */\n kind: \"boolean\";\n label: string;\n description?: string;\n /** Controlled checked state. */\n value: boolean;\n onChange: (value: boolean) => void;\n disabled?: boolean;\n className?: string;\n};\n\nexport type FilterBarFilter =\n | FilterBarTextFilter\n | FilterBarLookupFilter\n | FilterBarLookupMultiFilter\n | FilterBarMultiFilter\n | FilterBarNestedMultiFilter\n | FilterBarSelectMultiFilter\n | FilterBarNumberFilter\n | FilterBarEnumFilter\n | FilterBarBooleanFilter;\n\nexport type FilterBarRangePreset = {\n /** Visible preset label. */\n label: string;\n /** Start value applied by the preset. */\n from: string;\n /** End value applied by the preset. */\n to: string;\n};\n\nexport type FilterBarRangeProps = {\n /** Current start value. */\n from?: string;\n /** Current end value. */\n to?: string;\n /** Called when the user applies the range. */\n onApply: (from: string, to: string) => void;\n /** Presets or preset groups shown in the range popup. */\n presets?: Array<FilterBarRangePreset | TimeRangePresetGroup>;\n /** Enables time inputs when using date-time values. */\n timeEnabled?: boolean;\n /** Selected timezone. */\n timeZone?: string;\n /** Available timezone options. */\n timeZones?: string[];\n fromPlaceholder?: string;\n toPlaceholder?: string;\n emptyLabel?: string;\n className?: string;\n};\n\nexport type FilterBarProps = {\n /** Optional global search control shown first. */\n search?: FilterBarSearchProps;\n /** Structured filters rendered after search. */\n filters?: FilterBarFilter[];\n /** Date-time range control. */\n timeRange?: FilterBarRangeProps;\n /** Date-only range control. */\n dateRange?: FilterBarRangeProps;\n /** Additional content rendered in the filter row. */\n children?: ReactNode;\n /** Content rendered before search and filters. */\n leading?: ReactNode;\n /** Content rendered at the end of the bar. */\n trailing?: ReactNode;\n /** Classes applied to the root bar. */\n className?: string;\n /**\n * When false, debounced fields forward edits immediately and an Apply button\n * is rendered in the trailing slot. Defaults to true.\n */\n autoSubmit?: boolean;\n /** Called by the Apply button when `autoSubmit` is false. */\n onApply?: () => void;\n /** Label for the Apply button. */\n applyLabel?: string;\n /** Shows a pending state on the Apply button. */\n isPending?: boolean;\n /** `responsive` moves hidden filters into an overflow popover; `wrap` lets them wrap. */\n overflowMode?: \"responsive\" | \"wrap\";\n};\n\nexport function FilterBar({\n search,\n filters,\n timeRange,\n dateRange,\n children,\n leading,\n trailing,\n className,\n autoSubmit = true,\n onApply,\n applyLabel = \"Apply\",\n isPending = false,\n overflowMode = \"responsive\",\n}: FilterBarProps) {\n const hasRangeControls = Boolean(timeRange || dateRange);\n const showApply = !autoSubmit && !!onApply;\n const contextValue = useMemo(() => ({ autoSubmit }), [autoSubmit]);\n const allFilters = filters ?? [];\n const responsiveOverflow = overflowMode === \"responsive\" && allFilters.length > 0;\n const filterListRef = useRef<HTMLDivElement>(null);\n const overflowTriggerRef = useRef<HTMLButtonElement>(null);\n const filterNodeRefs = useRef(new Map<string, HTMLDivElement>());\n const filterWidthCache = useRef(new Map<string, number>());\n const filterKeys = useMemo(\n () => allFilters.map((filter) => filter.key).join(\"\\u0000\"),\n [allFilters],\n );\n const [visibleFilterCount, setVisibleFilterCount] = useState(allFilters.length);\n\n // Latest-value refs so measureOverflow can be a stable useCallback. Reading\n // the current values through refs sidesteps the closure-staleness problem\n // without putting array references in the dep list — which is what caused\n // the \"Maximum update depth exceeded\" cascade (allFilters in the deps made\n // measureOverflow change on every render → ResizeObserver effect re-ran →\n // setVisibleFilterCount fired → repeat).\n const allFiltersRef = useRef(allFilters);\n const responsiveOverflowRef = useRef(responsiveOverflow);\n allFiltersRef.current = allFilters;\n responsiveOverflowRef.current = responsiveOverflow;\n\n useLayoutEffect(() => {\n setVisibleFilterCount(allFiltersRef.current.length);\n }, [filterKeys]);\n\n const measureOverflow = useCallback(() => {\n const current = allFiltersRef.current;\n if (!responsiveOverflowRef.current) {\n setVisibleFilterCount(current.length);\n return;\n }\n\n const filterList = filterListRef.current;\n if (!filterList) return;\n\n const availableWidth = Math.floor(filterList.getBoundingClientRect().width);\n if (availableWidth <= 0) return;\n\n const widths = current.map((filter) => {\n const node = filterNodeRefs.current.get(filter.key);\n const measured = node?.getBoundingClientRect().width ?? 0;\n if (measured > 0) {\n const width = Math.ceil(measured);\n filterWidthCache.current.set(filter.key, width);\n return width;\n }\n return filterWidthCache.current.get(filter.key) ?? estimateFilterWidth(filter);\n });\n\n const triggerWidth = Math.ceil(\n overflowTriggerRef.current?.getBoundingClientRect().width ??\n FILTER_BAR_OVERFLOW_TRIGGER_ESTIMATE_PX,\n );\n const triggerGap = triggerWidth > 0 ? FILTER_BAR_GAP_PX : 0;\n const allFiltersWidth = sumFilterWidths(widths);\n const nextVisible =\n allFiltersWidth <= availableWidth\n ? current.length\n : calculateVisibleFilterCount(\n widths,\n Math.max(0, availableWidth - triggerWidth - triggerGap),\n );\n setVisibleFilterCount((prev) => (prev === nextVisible ? prev : nextVisible));\n }, []);\n\n useLayoutEffect(() => {\n measureOverflow();\n }, [measureOverflow]);\n\n useEffect(() => {\n if (!responsiveOverflow) return;\n\n const filterList = filterListRef.current;\n const trigger = overflowTriggerRef.current;\n const ResizeObserverCtor = typeof ResizeObserver === \"undefined\" ? null : ResizeObserver;\n\n if (!ResizeObserverCtor) {\n window.addEventListener(\"resize\", measureOverflow);\n measureOverflow();\n return () => window.removeEventListener(\"resize\", measureOverflow);\n }\n\n const observer = new ResizeObserverCtor(() => measureOverflow());\n if (filterList) observer.observe(filterList);\n if (trigger) observer.observe(trigger);\n window.addEventListener(\"resize\", measureOverflow);\n measureOverflow();\n\n return () => {\n observer.disconnect();\n window.removeEventListener(\"resize\", measureOverflow);\n };\n }, [measureOverflow, responsiveOverflow]);\n\n const inlineFilters = responsiveOverflow\n ? allFilters.slice(0, Math.min(visibleFilterCount, allFilters.length))\n : allFilters;\n const overflowFilters = responsiveOverflow\n ? allFilters.slice(Math.min(visibleFilterCount, allFilters.length))\n : [];\n const activeOverflowCount = overflowFilters.filter(isFilterBarFilterActive).length;\n\n const setFilterNode = useCallback((key: string, node: HTMLDivElement | null) => {\n if (!node) {\n filterNodeRefs.current.delete(key);\n return;\n }\n filterNodeRefs.current.set(key, node);\n }, []);\n\n return (\n <FilterBarContext.Provider value={contextValue}>\n <div\n className={cn(\n \"flex flex-nowrap items-center gap-2 overflow-visible rounded-lg border border-input bg-background px-2 py-1.5 shadow-sm\",\n overflowMode === \"wrap\" && \"flex-wrap\",\n className,\n )}\n >\n {leading && <div className=\"flex shrink-0 items-center gap-2\">{leading}</div>}\n\n {search && <SearchField search={search} />}\n\n {children}\n\n {allFilters.length > 0 && (\n <div\n ref={filterListRef}\n data-filter-bar-list\n className={cn(\n \"flex min-w-0 items-center gap-2\",\n overflowMode === \"wrap\" ? \"flex-wrap\" : \"flex-1\",\n )}\n >\n {inlineFilters.map((filter, index) => (\n <div\n key={filter.key}\n ref={(node) => setFilterNode(filter.key, node)}\n data-filter-bar-item={filter.key}\n className=\"min-w-0 shrink-0\"\n >\n {renderFilterField(filter, !search && index === 0)}\n </div>\n ))}\n </div>\n )}\n\n {responsiveOverflow && overflowFilters.length > 0 && (\n <OverflowFiltersMenu\n triggerRef={overflowTriggerRef}\n filters={overflowFilters}\n activeHidden={activeOverflowCount}\n {...(onApply ? { onApply } : {})}\n />\n )}\n\n {(hasRangeControls || trailing || showApply) && (\n <div className=\"ml-auto flex shrink-0 flex-nowrap items-center gap-2\">\n {dateRange && <RangeControlButton kind=\"date\" label=\"Date range\" {...dateRange} />}\n {timeRange && <RangeControlButton kind=\"time\" label=\"Time range\" {...timeRange} />}\n {trailing}\n {showApply && (\n <Button\n type=\"button\"\n variant=\"default\"\n size=\"sm\"\n disabled={isPending}\n onClick={onApply}\n >\n {isPending ? \"Loading…\" : applyLabel}\n </Button>\n )}\n </div>\n )}\n </div>\n </FilterBarContext.Provider>\n );\n}\n\ntype FilterBarFilterPanelChrome = \"full\" | \"embedded\";\n\nexport function FilterBarFilterPanel({\n filter,\n chrome = \"full\",\n autoSubmit = true,\n}: {\n filter: FilterBarFilter;\n chrome?: FilterBarFilterPanelChrome;\n autoSubmit?: boolean;\n}) {\n const contextValue = useMemo(() => ({ autoSubmit }), [autoSubmit]);\n\n return (\n <FilterBarContext.Provider value={contextValue}>\n <FilterBarFilterPanelContent filter={filter} chrome={chrome} />\n </FilterBarContext.Provider>\n );\n}\n\nfunction FilterBarFilterPanelContent({\n filter,\n chrome = \"full\",\n}: {\n filter: FilterBarFilter;\n chrome?: FilterBarFilterPanelChrome;\n}) {\n return (\n <>\n {filter.kind === \"lookup\" && <LookupFilterField filter={filter} grow />}\n {filter.kind === \"lookup-multi\" && <LookupMultiFilterField filter={filter} grow />}\n {filter.kind === \"multi\" && <MultiFilterPanel filter={filter} chrome={chrome} />}\n {filter.kind === \"nested-multi\" && <NestedMultiFilterPanel filter={filter} chrome={chrome} />}\n {filter.kind === \"select-multi\" && <SelectMultiFilterField filter={filter} grow />}\n {filter.kind === \"number\" && <NumberFilterPanel filter={filter} chrome={chrome} />}\n {filter.kind === \"enum\" && <EnumFilterField filter={filter} grow />}\n {filter.kind === \"boolean\" && <BooleanFilterField filter={filter} />}\n {filter.kind === \"text\" && <TextFilterField filter={filter} grow />}\n </>\n );\n}\n\nfunction renderFilterField(filter: FilterBarFilter, grow: boolean) {\n if (filter.kind === \"lookup\") {\n return <LookupFilterField filter={filter} grow={grow} />;\n }\n\n if (filter.kind === \"lookup-multi\") {\n return <LookupMultiFilterField filter={filter} grow={grow} />;\n }\n\n if (filter.kind === \"multi\") {\n return <MultiFilterField filter={filter} grow={grow} />;\n }\n\n if (filter.kind === \"nested-multi\") {\n return <NestedMultiFilterField filter={filter} grow={grow} />;\n }\n\n if (filter.kind === \"select-multi\") {\n return <SelectMultiFilterField filter={filter} grow={grow} />;\n }\n\n if (filter.kind === \"number\") {\n return <NumberFilterField filter={filter} grow={grow} />;\n }\n\n if (filter.kind === \"enum\") {\n return <EnumFilterField filter={filter} grow={grow} />;\n }\n\n if (filter.kind === \"boolean\") {\n return <BooleanFilterField filter={filter} />;\n }\n\n return <TextFilterField filter={filter} grow={grow} />;\n}\n\nfunction OverflowFiltersMenu({\n triggerRef,\n filters,\n activeHidden,\n onApply,\n}: {\n triggerRef: RefObject<HTMLButtonElement>;\n filters: FilterBarFilter[];\n activeHidden: number;\n onApply?: () => void;\n}) {\n const rootRef = useRef<HTMLDivElement>(null);\n const [open, setOpen] = useState(false);\n const [stagedValues, setStagedValues] = useState<Record<string, FilterBarValue>>({});\n const hasHidden = filters.length > 0;\n const hiddenFilterKeys = useMemo(\n () => filters.map((filter) => filter.key).join(\"\\u0000\"),\n [filters],\n );\n const openOverflowMenu = useCallback(() => {\n setStagedValues(createFilterValueMap(filters));\n setOpen(true);\n }, [filters]);\n const closeOverflowMenu = useCallback(() => {\n setStagedValues(createFilterValueMap(filters));\n setOpen(false);\n }, [filters]);\n\n useDismissablePopup(open, rootRef, triggerRef, closeOverflowMenu);\n\n useEffect(() => {\n if (!hasHidden) closeOverflowMenu();\n }, [closeOverflowMenu, hasHidden]);\n\n useEffect(() => {\n if (!open) return;\n setStagedValues(createFilterValueMap(filters));\n }, [hiddenFilterKeys, open]);\n\n const stagedFilters = filters.map((filter) =>\n filterWithStagedValue(\n filter,\n stagedValues[filter.key] ?? filterBarFilterValue(filter),\n (next) =>\n setStagedValues((current) => ({\n ...current,\n [filter.key]: next,\n })),\n ),\n );\n\n return (\n <div\n ref={rootRef}\n className={cn(\"relative shrink-0\", !hasHidden && \"invisible pointer-events-none\")}\n aria-hidden={!hasHidden || undefined}\n >\n <Button\n ref={triggerRef}\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n aria-label=\"More filters\"\n aria-haspopup=\"dialog\"\n aria-expanded={hasHidden ? open : false}\n tabIndex={hasHidden ? 0 : -1}\n title={hasHidden ? \"More filters\" : undefined}\n onClick={() => {\n if (!hasHidden) return;\n if (open) {\n closeOverflowMenu();\n } else {\n openOverflowMenu();\n }\n }}\n className={cn(\n \"h-8 min-w-0 gap-1.5 px-2 text-xs font-normal\",\n activeHidden > 0 && \"border-primary/40 text-primary\",\n )}\n >\n <Icon icon={UiFilter} className=\"text-[14px]\" />\n {activeHidden > 0 && (\n <span className=\"rounded-full bg-muted px-1.5 text-[10px] font-medium text-muted-foreground\">\n {activeHidden}\n </span>\n )}\n </Button>\n\n {hasHidden && open && (\n <div\n role=\"dialog\"\n aria-label=\"Overflow filters\"\n className=\"absolute right-0 top-[calc(100%+0.375rem)] z-50 w-[min(34rem,calc(100vw-2rem))] overflow-visible rounded-md border border-border bg-popover p-2 text-popover-foreground shadow-lg shadow-black/5\"\n onClick={(event) => event.stopPropagation()}\n >\n <div className=\"mb-2 flex items-center justify-between gap-2 px-1\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n Filters\n </div>\n <div className=\"flex items-center gap-1\">\n <button\n type=\"button\"\n className=\"rounded px-1.5 py-0.5 text-xs text-primary transition-colors hover:bg-accent focus:bg-accent focus:outline-none disabled:text-muted-foreground\"\n onClick={() => stagedFilters.forEach(clearFilterBarFilter)}\n disabled={stagedFilters.every((filter) => !isFilterBarFilterActive(filter))}\n >\n Clear all\n </button>\n <button\n type=\"button\"\n aria-label=\"Close overflow filters\"\n title=\"Close\"\n className=\"inline-flex h-6 w-6 items-center justify-center rounded text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:outline-none\"\n onClick={closeOverflowMenu}\n >\n <Icon icon={UiClose} className=\"text-sm\" />\n </button>\n </div>\n </div>\n <div className=\"divide-y divide-border/70 rounded-md border border-border/70\">\n {stagedFilters.map((filter) => {\n const active = isFilterBarFilterActive(filter);\n return (\n <div\n key={filter.key}\n data-overflow-filter-row={filter.key}\n className=\"grid h-12 grid-cols-[minmax(7rem,10rem)_auto_minmax(0,1fr)_auto] items-center gap-2 overflow-visible p-2\"\n >\n <label\n htmlFor={filterInputId(filter)}\n className=\"min-w-0 truncate text-[10px] font-medium uppercase tracking-wide text-muted-foreground\"\n title={filter.description ?? filter.label}\n >\n {filter.label}\n </label>\n <span className=\"text-sm text-muted-foreground\">=</span>\n <div className=\"min-w-0 overflow-visible\">\n <FilterBarContext.Provider value={{ autoSubmit: false }}>\n <FilterBarKeyValueControl filter={filter} />\n </FilterBarContext.Provider>\n </div>\n <button\n type=\"button\"\n aria-label={`Clear ${filter.label}`}\n title={`Clear ${filter.label}`}\n className=\"inline-flex h-6 w-6 items-center justify-center rounded text-muted-foreground transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:outline-none disabled:text-muted-foreground/40\"\n onClick={() => clearFilterBarFilter(filter)}\n disabled={!active}\n >\n <Icon icon={UiClose} className=\"text-sm\" />\n </button>\n </div>\n );\n })}\n </div>\n <div className=\"mt-3 flex justify-end gap-2\">\n <Button\n type=\"button\"\n variant=\"ghost\"\n size=\"sm\"\n className=\"h-8 px-3 text-xs\"\n onClick={closeOverflowMenu}\n >\n Close\n </Button>\n <Button\n type=\"button\"\n variant=\"default\"\n size=\"sm\"\n className=\"h-8 px-3 text-xs\"\n onClick={() => {\n applyStagedFilterValues(filters, stagedValues);\n onApply?.();\n setOpen(false);\n }}\n >\n Apply\n </Button>\n </div>\n </div>\n )}\n </div>\n );\n}\n\nfunction FilterBarKeyValueControl({ filter }: { filter: FilterBarFilter }) {\n if (filter.kind === \"text\") {\n return <TextFilterValueControl filter={filter} />;\n }\n if (filter.kind === \"lookup\") {\n return <LookupFilterValueControl filter={filter} />;\n }\n if (filter.kind === \"lookup-multi\") {\n return <LookupMultiFilterValueControl filter={filter} />;\n }\n if (filter.kind === \"enum\") {\n return <EnumFilterValueControl filter={filter} />;\n }\n if (filter.kind === \"boolean\") {\n return <BooleanFilterValueControl filter={filter} />;\n }\n if (filter.kind === \"select-multi\") {\n return <SelectMultiFilterValueControl filter={filter} />;\n }\n if (filter.kind === \"multi\") {\n return <MultiFilterField filter={filter} grow />;\n }\n if (filter.kind === \"nested-multi\") {\n return <NestedMultiFilterField filter={filter} grow />;\n }\n return <NumberFilterField filter={filter} grow />;\n}\n\nfunction filterInputId(filter: FilterBarFilter) {\n return `filterbar-overflow-${filter.key}`;\n}\n\nfunction valueInputClassName(disabled?: boolean) {\n return cn(\n \"h-8 w-full rounded-md border border-input bg-background px-2 text-sm text-foreground outline-none placeholder:text-muted-foreground focus-visible:ring-2 focus-visible:ring-ring\",\n disabled && \"cursor-not-allowed opacity-60\",\n );\n}\n\nfunction TextFilterValueControl({ filter }: { filter: FilterBarTextFilter }) {\n const [draft, setDraft] = useDebouncedTextDraft(filter.value, filter.onChange);\n\n return (\n <input\n id={filterInputId(filter)}\n type=\"text\"\n aria-label={filter.label}\n className={valueInputClassName(filter.disabled)}\n placeholder={filter.placeholder ?? \"Filter...\"}\n value={draft}\n disabled={filter.disabled}\n onChange={(event) => setDraft(event.target.value)}\n />\n );\n}\n\nfunction LookupFilterValueControl({ filter }: { filter: FilterBarLookupFilter }) {\n const [draft, setDraft] = useDebouncedTextDraft(filter.value, filter.onChange);\n const listId = `${filter.key}-overflow-lookup-options`;\n\n if (filter.inputType === \"date\") {\n return (\n <DateTimePicker\n id={filterInputId(filter)}\n aria-label={filter.label}\n className=\"w-full\"\n inputClassName={valueInputClassName(filter.disabled)}\n buttonClassName=\"right-1\"\n placeholder={filter.placeholder ?? \"Filter...\"}\n value={draft}\n list={listId}\n disabled={filter.disabled}\n onChange={setDraft}\n />\n );\n }\n\n return (\n <>\n <input\n id={filterInputId(filter)}\n type={filter.inputType === \"number\" ? \"number\" : \"text\"}\n aria-label={filter.label}\n className={valueInputClassName(filter.disabled)}\n placeholder={filter.placeholder ?? \"Filter...\"}\n value={draft}\n list={listId}\n disabled={filter.disabled}\n onChange={(event) => setDraft(event.target.value)}\n />\n <datalist id={listId}>\n {filter.options.map((option) => (\n <option\n key={option.value}\n value={option.value}\n label={option.label ?? option.value}\n disabled={option.disabled}\n />\n ))}\n </datalist>\n </>\n );\n}\n\nfunction LookupMultiFilterValueControl({ filter }: { filter: FilterBarLookupMultiFilter }) {\n return (\n <MultiSelect\n options={filter.options.map((option) => ({\n value: option.value,\n label: option.label ?? option.value,\n ...(option.disabled !== undefined ? { disabled: option.disabled } : {}),\n ...(option.title !== undefined ? { title: option.title } : {}),\n }))}\n value={filter.value}\n onChange={filter.onChange}\n placeholder={filter.placeholder ?? `Any ${filter.label.toLowerCase()}`}\n {...(filter.disabled !== undefined ? { disabled: filter.disabled } : {})}\n triggerClassName=\"h-8 w-full rounded-md border border-input bg-background px-2 text-sm shadow-none\"\n menuClassName=\"left-auto right-0\"\n />\n );\n}\n\nfunction EnumFilterValueControl({ filter }: { filter: FilterBarEnumFilter }) {\n return (\n <Select\n id={filterInputId(filter)}\n aria-label={filter.label}\n className=\"h-8 w-full rounded-md border border-input bg-background px-2 text-sm shadow-none\"\n value={filter.value}\n placeholder={filter.placeholder ?? `Any ${filter.label.toLowerCase()}`}\n disabled={filter.disabled}\n onChange={(event) => filter.onChange(event.target.value)}\n options={filter.options.map((option) => ({\n value: option.value,\n label: option.label ?? option.value,\n }))}\n />\n );\n}\n\nfunction BooleanFilterValueControl({ filter }: { filter: FilterBarBooleanFilter }) {\n return (\n <div className=\"flex h-8 items-center\">\n <input\n id={filterInputId(filter)}\n type=\"checkbox\"\n aria-label={filter.label}\n className=\"h-4 w-4 accent-primary\"\n checked={filter.value}\n disabled={filter.disabled}\n onChange={(event) => filter.onChange(event.target.checked)}\n />\n </div>\n );\n}\n\nfunction SelectMultiFilterValueControl({ filter }: { filter: FilterBarSelectMultiFilter }) {\n return (\n <MultiSelect\n options={filter.options}\n value={filter.value}\n onChange={filter.onChange}\n placeholder={filter.placeholder ?? `Any ${filter.label.toLowerCase()}`}\n {...(filter.disabled !== undefined ? { disabled: filter.disabled } : {})}\n triggerClassName=\"h-8 w-full rounded-md border border-input bg-background px-2 text-sm shadow-none\"\n menuClassName=\"left-auto right-0\"\n />\n );\n}\n\nexport function FilterBarRangePanel({\n kind,\n label,\n from = \"\",\n to = \"\",\n onApply,\n presets,\n timeEnabled,\n timeZone,\n timeZones,\n fromPlaceholder,\n toPlaceholder,\n emptyLabel,\n}: FilterBarRangeProps & { kind: \"date\" | \"time\"; label: string }) {\n return (\n <div className=\"w-72 p-3 text-popover-foreground\">\n <TimeRange\n kind={kind}\n label={label}\n align=\"left\"\n from={from}\n to={to}\n onApply={onApply}\n {...(presets ? { presets } : {})}\n {...(timeEnabled !== undefined ? { timeEnabled } : {})}\n {...(timeZone ? { timeZone } : {})}\n {...(timeZones ? { timeZones } : {})}\n {...(fromPlaceholder ? { fromPlaceholder } : {})}\n {...(toPlaceholder ? { toPlaceholder } : {})}\n {...(emptyLabel ? { emptyLabel } : {})}\n panelClassName=\"left-0 right-auto\"\n />\n </div>\n );\n}\n\nfunction EnumFilterField({ filter, grow }: { filter: FilterBarEnumFilter; grow: boolean }) {\n return (\n <label\n title={filter.description}\n className={cn(\n \"flex h-8 items-center gap-2 rounded-md border border-input bg-muted/30 pl-2 pr-1 text-xs\",\n grow ? \"min-w-[12rem] max-w-[18rem] flex-1\" : \"min-w-[11rem] max-w-[15rem] shrink-0\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <span className=\"whitespace-nowrap font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </span>\n <Select\n aria-label={filter.label}\n className=\"h-6 border-0 bg-transparent px-1 text-xs shadow-none focus-visible:ring-0\"\n value={filter.value}\n placeholder={filter.placeholder ?? `Any ${filter.label.toLowerCase()}`}\n disabled={filter.disabled}\n onChange={(event) => filter.onChange(event.target.value)}\n options={filter.options.map((option) => ({\n value: option.value,\n label: option.label ?? option.value,\n }))}\n />\n </label>\n );\n}\n\nfunction BooleanFilterField({ filter }: { filter: FilterBarBooleanFilter }) {\n return (\n <label\n title={filter.description}\n className={cn(\n \"flex h-8 shrink-0 items-center gap-2 rounded-md border border-input bg-muted/30 px-2 text-xs\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <input\n type=\"checkbox\"\n aria-label={filter.label}\n className=\"h-3.5 w-3.5 accent-primary\"\n checked={filter.value}\n disabled={filter.disabled}\n onChange={(event) => filter.onChange(event.target.checked)}\n />\n <span className=\"whitespace-nowrap font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </span>\n </label>\n );\n}\n\nfunction SearchField({ search }: { search: FilterBarSearchProps }) {\n const [draft, setDraft] = useDebouncedTextDraft(search.value, search.onChange);\n\n return (\n <div className=\"flex min-w-[14rem] max-w-[24rem] flex-1 items-center gap-2\">\n <label\n className={cn(\n \"flex h-8 min-w-0 flex-1 items-center rounded-md border border-input bg-background px-3 text-sm\",\n search.className,\n )}\n >\n {draft.trim() ? (\n <span className=\"mr-2 whitespace-nowrap text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {search.ariaLabel ?? \"Search\"}\n </span>\n ) : (\n <Icon icon={UiSearch} className=\"mr-2 shrink-0 text-muted-foreground\" />\n )}\n <input\n type=\"search\"\n aria-label={search.ariaLabel ?? search.placeholder ?? \"Search\"}\n className=\"w-full bg-transparent outline-none placeholder:text-muted-foreground\"\n placeholder={search.placeholder ?? \"Search…\"}\n value={draft}\n onChange={(event) => setDraft(event.target.value)}\n />\n </label>\n </div>\n );\n}\n\nfunction TextFilterField({ filter, grow }: { filter: FilterBarTextFilter; grow: boolean }) {\n const [draft, setDraft] = useDebouncedTextDraft(filter.value, filter.onChange);\n\n return (\n <label\n title={filter.description}\n className={cn(\n \"flex h-8 items-center gap-2 rounded-md border border-input bg-muted/30 pl-2 pr-2 text-xs\",\n grow ? \"min-w-[12rem] max-w-[18rem] flex-1\" : \"min-w-[11rem] max-w-[15rem] shrink-0\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <span className=\"whitespace-nowrap font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </span>\n <input\n type=\"text\"\n aria-label={filter.label}\n className=\"w-full min-w-0 bg-transparent text-sm text-foreground outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed\"\n placeholder={filter.placeholder ?? \"Filter…\"}\n value={draft}\n disabled={filter.disabled}\n onChange={(event) => setDraft(event.target.value)}\n />\n </label>\n );\n}\n\nfunction LookupFilterField({ filter, grow }: { filter: FilterBarLookupFilter; grow: boolean }) {\n const [draft, setDraft] = useDebouncedTextDraft(filter.value, filter.onChange);\n const listId = `${filter.key}-lookup-options`;\n\n return (\n <label\n title={filter.description}\n className={cn(\n \"flex h-8 items-center gap-2 rounded-md border border-input bg-muted/30 pl-2 pr-2 text-xs\",\n grow ? \"min-w-[12rem] max-w-[18rem] flex-1\" : \"min-w-[11rem] max-w-[15rem] shrink-0\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <span className=\"whitespace-nowrap font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </span>\n {filter.inputType === \"date\" ? (\n <DateTimePicker\n aria-label={filter.label}\n className=\"w-full\"\n inputClassName=\"w-full min-w-0 border-0 bg-transparent px-0 pr-6 text-sm text-foreground shadow-none focus-visible:ring-0\"\n buttonClassName=\"right-0\"\n placeholder={filter.placeholder ?? \"Filter…\"}\n value={draft}\n list={listId}\n disabled={filter.disabled}\n onChange={setDraft}\n />\n ) : (\n <input\n type={filter.inputType === \"number\" ? \"number\" : \"text\"}\n aria-label={filter.label}\n className=\"w-full min-w-0 bg-transparent text-sm text-foreground outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed\"\n placeholder={filter.placeholder ?? \"Filter…\"}\n value={draft}\n list={listId}\n disabled={filter.disabled}\n onChange={(event) => setDraft(event.target.value)}\n />\n )}\n <datalist id={listId}>\n {filter.options.map((option) => (\n <option\n key={option.value}\n value={option.value}\n label={option.label ?? option.value}\n disabled={option.disabled}\n />\n ))}\n </datalist>\n </label>\n );\n}\n\nfunction LookupMultiFilterField({\n filter,\n grow,\n}: {\n filter: FilterBarLookupMultiFilter;\n grow: boolean;\n}) {\n const [draft, setDraft] = useDebouncedTextDraft(filter.value.join(\", \"), (next) =>\n filter.onChange(parseLookupMultiValue(next)),\n );\n const listId = `${filter.key}-lookup-options`;\n\n return (\n <label\n title={filter.description}\n className={cn(\n \"flex h-8 items-center gap-2 rounded-md border border-input bg-muted/30 pl-2 pr-2 text-xs\",\n grow ? \"min-w-[12rem] max-w-[18rem] flex-1\" : \"min-w-[11rem] max-w-[15rem] shrink-0\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <span className=\"whitespace-nowrap font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </span>\n <input\n type=\"text\"\n aria-label={filter.label}\n className=\"w-full min-w-0 bg-transparent text-sm text-foreground outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed\"\n placeholder={filter.placeholder ?? \"value-1, value-2\"}\n value={draft}\n list={listId}\n disabled={filter.disabled}\n onChange={(event) => setDraft(event.target.value)}\n />\n <datalist id={listId}>\n {filter.options.map((option) => (\n <option\n key={option.value}\n value={option.value}\n label={option.label ?? option.value}\n disabled={option.disabled}\n />\n ))}\n </datalist>\n </label>\n );\n}\n\nfunction NumberFilterField({ filter, grow }: { filter: FilterBarNumberFilter; grow: boolean }) {\n const rootRef = useRef<HTMLDivElement>(null);\n const triggerRef = useRef<HTMLButtonElement>(null);\n const [open, setOpen] = useState(false);\n\n useDismissablePopup(open, rootRef, triggerRef, () => setOpen(false));\n\n const bounds = resolveNumberFilterBounds(filter);\n const [draft, setDraft] = useDebouncedNumberDraft(filter.value, filter.onChange);\n const sliderMin = clampNumber(parseFilterNumber(draft.min) ?? bounds.min, bounds.min, bounds.max);\n const sliderMax = clampNumber(parseFilterNumber(draft.max) ?? bounds.max, bounds.min, bounds.max);\n const activeMin = Math.min(sliderMin, sliderMax);\n const activeMax = Math.max(sliderMin, sliderMax);\n const summary = summarizeNumberFilter(filter, bounds, draft);\n\n return (\n <div\n ref={rootRef}\n title={filter.description}\n className={cn(\n \"relative min-w-0\",\n grow ? \"min-w-[8rem] max-w-[12rem] flex-1\" : \"shrink-0\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <Button\n ref={triggerRef}\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n aria-label={`${filter.label} filter`}\n aria-haspopup=\"dialog\"\n aria-expanded={open}\n disabled={filter.disabled}\n onClick={() => setOpen((current) => !current)}\n className={cn(\n \"min-w-0 gap-2 font-normal\",\n grow ? \"w-full max-w-[12rem] justify-between\" : \"w-auto max-w-[9.5rem] px-2.5\",\n summary === filter.label && \"text-muted-foreground\",\n )}\n >\n <span className=\"truncate\">{summary}</span>\n <Icon icon={open ? UiChevronUp : UiChevronDown} className=\"text-muted-foreground\" />\n </Button>\n\n {open && (\n <div className=\"absolute left-0 top-[calc(100%+0.375rem)] z-50 min-w-[18rem] max-w-[22rem] rounded-md border border-border bg-popover p-3 text-popover-foreground shadow-lg shadow-black/5\">\n <div className=\"mb-3 flex items-center justify-between gap-2\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </div>\n <button\n type=\"button\"\n className=\"text-[10px] text-primary disabled:text-muted-foreground\"\n onClick={() => {\n setDraft({});\n filter.onChange({});\n }}\n disabled={!String(draft.min ?? \"\").trim() && !String(draft.max ?? \"\").trim()}\n >\n Clear all\n </button>\n </div>\n\n <div className=\"space-y-3\">\n <div className=\"space-y-2\">\n <div className=\"flex items-center justify-between text-[11px] text-muted-foreground\">\n <span>{formatNumberValue(bounds.min, filter)}</span>\n <span>{formatNumberValue(bounds.max, filter)}</span>\n </div>\n <div className=\"relative h-6\">\n <RangeSlider\n min={bounds.min}\n max={bounds.max}\n step={bounds.step}\n value={[activeMin, activeMax]}\n ariaLabelMin={`${filter.label} minimum slider`}\n ariaLabelMax={`${filter.label} maximum slider`}\n onChange={([nextMin, nextMax]) =>\n setDraft(numberFilterValueFromSlider([nextMin, nextMax], bounds))\n }\n />\n </div>\n </div>\n\n <div className=\"grid grid-cols-2 gap-2\">\n <div className=\"space-y-1\">\n <label className=\"text-[10px] text-muted-foreground\">Min</label>\n <input\n type=\"number\"\n inputMode=\"decimal\"\n step={bounds.step}\n aria-label={`${filter.label} minimum`}\n className=\"h-8 w-full rounded-md border border-input bg-background px-2 text-xs outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n placeholder={filter.minPlaceholder ?? formatNumberValue(bounds.min, filter)}\n value={draft.min ?? \"\"}\n onChange={(event) =>\n setDraft(\n normalizeNumberFilterValue(\n { min: event.target.value, max: draft.max ?? \"\" },\n \"min-input\",\n ),\n )\n }\n />\n </div>\n <div className=\"space-y-1\">\n <label className=\"text-[10px] text-muted-foreground\">Max</label>\n <input\n type=\"number\"\n inputMode=\"decimal\"\n step={bounds.step}\n aria-label={`${filter.label} maximum`}\n className=\"h-8 w-full rounded-md border border-input bg-background px-2 text-xs outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n placeholder={filter.maxPlaceholder ?? formatNumberValue(bounds.max, filter)}\n value={draft.max ?? \"\"}\n onChange={(event) =>\n setDraft(\n normalizeNumberFilterValue(\n { min: draft.min ?? \"\", max: event.target.value },\n \"max-input\",\n ),\n )\n }\n />\n </div>\n </div>\n </div>\n </div>\n )}\n </div>\n );\n}\n\nfunction NumberFilterPanel({\n filter,\n chrome = \"full\",\n}: {\n filter: FilterBarNumberFilter;\n chrome?: FilterBarFilterPanelChrome;\n}) {\n const bounds = resolveNumberFilterBounds(filter);\n const [draft, setDraft] = useDebouncedNumberDraft(filter.value, filter.onChange);\n const sliderMin = clampNumber(parseFilterNumber(draft.min) ?? bounds.min, bounds.min, bounds.max);\n const sliderMax = clampNumber(parseFilterNumber(draft.max) ?? bounds.max, bounds.min, bounds.max);\n const activeMin = Math.min(sliderMin, sliderMax);\n const activeMax = Math.max(sliderMin, sliderMax);\n const embedded = chrome === \"embedded\";\n\n return (\n <div\n data-filter-panel-chrome={chrome}\n className={cn(\n \"min-w-[18rem] max-w-[22rem] text-popover-foreground\",\n embedded\n ? \"p-0\"\n : \"rounded-md border border-border bg-popover p-3 shadow-sm shadow-black/5\",\n )}\n >\n {!embedded && (\n <div className=\"mb-3 flex items-center justify-between gap-2\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </div>\n <button\n type=\"button\"\n className=\"text-[10px] text-primary disabled:text-muted-foreground\"\n onClick={() => {\n setDraft({});\n filter.onChange({});\n }}\n disabled={!String(draft.min ?? \"\").trim() && !String(draft.max ?? \"\").trim()}\n >\n Clear all\n </button>\n </div>\n )}\n\n <div className=\"space-y-3\">\n <div className=\"space-y-2\">\n <div className=\"flex items-center justify-between text-[11px] text-muted-foreground\">\n <span>{formatNumberValue(bounds.min, filter)}</span>\n <span>{formatNumberValue(bounds.max, filter)}</span>\n </div>\n <div className=\"relative h-6\">\n <RangeSlider\n min={bounds.min}\n max={bounds.max}\n step={bounds.step}\n value={[activeMin, activeMax]}\n ariaLabelMin={`${filter.label} minimum slider`}\n ariaLabelMax={`${filter.label} maximum slider`}\n onChange={([nextMin, nextMax]) =>\n setDraft(numberFilterValueFromSlider([nextMin, nextMax], bounds))\n }\n />\n </div>\n </div>\n\n <div className=\"grid grid-cols-2 gap-2\">\n <div className=\"space-y-1\">\n <label className=\"text-[10px] text-muted-foreground\">Min</label>\n <input\n type=\"number\"\n inputMode=\"decimal\"\n step={bounds.step}\n aria-label={`${filter.label} minimum`}\n className=\"h-8 w-full rounded-md border border-input bg-background px-2 text-xs outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n placeholder={filter.minPlaceholder ?? formatNumberValue(bounds.min, filter)}\n value={draft.min ?? \"\"}\n onChange={(event) =>\n setDraft(\n normalizeNumberFilterValue(\n { min: event.target.value, max: draft.max ?? \"\" },\n \"min-input\",\n ),\n )\n }\n />\n </div>\n <div className=\"space-y-1\">\n <label className=\"text-[10px] text-muted-foreground\">Max</label>\n <input\n type=\"number\"\n inputMode=\"decimal\"\n step={bounds.step}\n aria-label={`${filter.label} maximum`}\n className=\"h-8 w-full rounded-md border border-input bg-background px-2 text-xs outline-none focus-visible:ring-2 focus-visible:ring-ring\"\n placeholder={filter.maxPlaceholder ?? formatNumberValue(bounds.max, filter)}\n value={draft.max ?? \"\"}\n onChange={(event) =>\n setDraft(\n normalizeNumberFilterValue(\n { min: draft.min ?? \"\", max: event.target.value },\n \"max-input\",\n ),\n )\n }\n />\n </div>\n </div>\n </div>\n </div>\n );\n}\n\nfunction MultiFilterField({ filter, grow }: { filter: FilterBarMultiFilter; grow: boolean }) {\n const rootRef = useRef<HTMLDivElement>(null);\n const triggerRef = useRef<HTMLButtonElement>(null);\n const [open, setOpen] = useState(false);\n const [optionQuery, setOptionQuery] = useState(\"\");\n const [draft, setDraft] = useDebouncedMultiDraft(filter.value, filter.onChange);\n\n useDismissablePopup(open, rootRef, triggerRef, () => setOpen(false));\n\n const summary = summarizeMultiFilter(filter.label, draft);\n const showOptionFilter = filter.options.length > 7;\n const visibleOptions = useMemo(() => {\n const query = optionQuery.trim().toLowerCase();\n if (!query) return filter.options;\n return filter.options.filter((option) =>\n multiSelectOptionText(option).toLowerCase().includes(query),\n );\n }, [filter.options, optionQuery]);\n\n return (\n <div\n ref={rootRef}\n title={filter.description}\n className={cn(\n \"relative min-w-0\",\n grow ? \"min-w-[8rem] max-w-[12rem] flex-1\" : \"shrink-0\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <Button\n ref={triggerRef}\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n aria-label={`${filter.label} filter`}\n aria-haspopup=\"dialog\"\n aria-expanded={open}\n disabled={filter.disabled}\n onClick={() => setOpen((current) => !current)}\n className={cn(\n \"min-w-0 gap-2 font-normal\",\n grow ? \"w-full max-w-[12rem] justify-between\" : \"w-auto max-w-[8.5rem] px-2.5\",\n summary === filter.label && \"text-muted-foreground\",\n )}\n >\n <span className=\"truncate\">{summary}</span>\n <Icon icon={open ? UiChevronUp : UiChevronDown} className=\"text-muted-foreground\" />\n </Button>\n\n {open && (\n <div className=\"absolute left-0 top-[calc(100%+0.375rem)] z-50 min-w-[18rem] max-w-[22rem] rounded-md border border-border bg-popover p-2 text-popover-foreground shadow-lg shadow-black/5\">\n <div className=\"mb-2 flex items-center justify-between gap-2\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </div>\n <button\n type=\"button\"\n className=\"text-[10px] text-primary disabled:text-muted-foreground\"\n onClick={() => setDraft({})}\n disabled={Object.keys(draft).length === 0}\n >\n Clear all\n </button>\n </div>\n\n {showOptionFilter && (\n <div className=\"mb-2 flex items-center gap-2 rounded-md border border-input bg-background px-2\">\n <Icon icon={UiSearch} className=\"shrink-0 text-muted-foreground\" />\n <input\n type=\"search\"\n aria-label={`Filter ${filter.label} options`}\n className=\"h-8 min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground\"\n placeholder={`Filter ${filter.label.toLowerCase()}`}\n value={optionQuery}\n onChange={(event) => setOptionQuery(event.target.value)}\n />\n </div>\n )}\n\n <div className=\"max-h-72 space-y-0.5 overflow-auto\">\n {visibleOptions.map((option) => {\n const mode = draft[option.value] ?? \"neutral\";\n const title = option.title ?? multiSelectOptionText(option);\n\n return (\n <div\n key={option.value}\n role=\"button\"\n tabIndex={0}\n data-filter-option={option.value}\n className=\"rounded-md px-1.5 py-0.5 hover:bg-accent/50 focus-visible:bg-accent/50 focus-visible:outline-none\"\n onClick={() =>\n setDraft(updateMultiFilterValue(draft, option.value, nextFilterMode(mode)))\n }\n onKeyDown={(event) => {\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n setDraft(updateMultiFilterValue(draft, option.value, nextFilterMode(mode)));\n }\n }}\n >\n <FilterPill\n className=\"w-full justify-between\"\n label={option.label}\n mode={mode}\n title={title}\n togglePosition=\"right\"\n onModeChange={(next) =>\n setDraft(updateMultiFilterValue(draft, option.value, next))\n }\n />\n </div>\n );\n })}\n {visibleOptions.length === 0 && (\n <div className=\"px-2 py-3 text-sm text-muted-foreground\">No options found</div>\n )}\n </div>\n </div>\n )}\n </div>\n );\n}\n\nfunction MultiFilterPanel({\n filter,\n chrome = \"full\",\n}: {\n filter: FilterBarMultiFilter;\n chrome?: FilterBarFilterPanelChrome;\n}) {\n const [optionQuery, setOptionQuery] = useState(\"\");\n const [draft, setDraft] = useDebouncedMultiDraft(filter.value, filter.onChange);\n const showOptionFilter = filter.options.length > 7;\n const embedded = chrome === \"embedded\";\n const visibleOptions = useMemo(() => {\n const query = optionQuery.trim().toLowerCase();\n if (!query) return filter.options;\n return filter.options.filter((option) =>\n multiSelectOptionText(option).toLowerCase().includes(query),\n );\n }, [filter.options, optionQuery]);\n\n return (\n <div\n data-filter-panel-chrome={chrome}\n className={cn(\n \"min-w-[18rem] max-w-[22rem] text-popover-foreground\",\n embedded\n ? \"p-0\"\n : \"rounded-md border border-border bg-popover p-2 shadow-sm shadow-black/5\",\n )}\n >\n {!embedded && (\n <div className=\"mb-2 flex items-center justify-between gap-2\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </div>\n <button\n type=\"button\"\n className=\"text-[10px] text-primary disabled:text-muted-foreground\"\n onClick={() => setDraft({})}\n disabled={Object.keys(draft).length === 0}\n >\n Clear all\n </button>\n </div>\n )}\n\n {showOptionFilter && (\n <div className=\"mb-2 flex items-center gap-2 rounded-md border border-input bg-background px-2\">\n <Icon icon={UiSearch} className=\"shrink-0 text-muted-foreground\" />\n <input\n type=\"search\"\n aria-label={`Filter ${filter.label} options`}\n className=\"h-8 min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground\"\n placeholder={`Filter ${filter.label.toLowerCase()}`}\n value={optionQuery}\n onChange={(event) => setOptionQuery(event.target.value)}\n />\n </div>\n )}\n\n <div className=\"max-h-72 space-y-0.5 overflow-auto\">\n {visibleOptions.map((option) => {\n const mode = draft[option.value] ?? \"neutral\";\n const title = option.title ?? multiSelectOptionText(option);\n\n return (\n <div\n key={option.value}\n role=\"button\"\n tabIndex={0}\n data-filter-option={option.value}\n className=\"rounded-md px-1.5 py-0.5 hover:bg-accent/50 focus-visible:bg-accent/50 focus-visible:outline-none\"\n onClick={() =>\n setDraft(updateMultiFilterValue(draft, option.value, nextFilterMode(mode)))\n }\n onKeyDown={(event) => {\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n setDraft(updateMultiFilterValue(draft, option.value, nextFilterMode(mode)));\n }\n }}\n >\n <FilterPill\n className=\"w-full justify-between\"\n label={option.label}\n mode={mode}\n title={title}\n togglePosition=\"right\"\n onModeChange={(next) => setDraft(updateMultiFilterValue(draft, option.value, next))}\n />\n </div>\n );\n })}\n {visibleOptions.length === 0 && (\n <div className=\"px-2 py-3 text-sm text-muted-foreground\">No options found</div>\n )}\n </div>\n </div>\n );\n}\n\nfunction NestedMultiFilterPanel({\n filter,\n chrome = \"full\",\n}: {\n filter: FilterBarNestedMultiFilter;\n chrome?: FilterBarFilterPanelChrome;\n}) {\n const [activeGroup, setActiveGroup] = useState<string | null>(filter.groups[0]?.groupKey ?? null);\n const [draft, setDraft] = useDebouncedMultiDraft(filter.value, filter.onChange);\n const groups = filter.groups;\n const embedded = chrome === \"embedded\";\n const activeGroupData = useMemo(\n () => groups.find((group) => group.groupKey === activeGroup) ?? groups[0] ?? null,\n [groups, activeGroup],\n );\n\n const selectedByGroup = useMemo(() => {\n const counts: Record<string, number> = {};\n for (const group of groups) {\n let n = 0;\n for (const option of group.options) {\n if (draft[option.value]) n += 1;\n }\n counts[group.groupKey] = n;\n }\n return counts;\n }, [groups, draft]);\n\n const sortedGroups = useMemo(() => {\n const selected: typeof groups = [];\n const rest: typeof groups = [];\n for (const group of groups) {\n if ((selectedByGroup[group.groupKey] ?? 0) > 0) selected.push(group);\n else rest.push(group);\n }\n return [...selected, ...rest];\n }, [groups, selectedByGroup]);\n\n const clearGroup = (groupKey: string) => {\n const group = groups.find((g) => g.groupKey === groupKey);\n if (!group) return;\n const next = { ...draft };\n for (const option of group.options) {\n delete next[option.value];\n }\n setDraft(next);\n };\n\n return (\n <div role=\"dialog\" className=\"flex\">\n <div\n data-filter-panel-chrome={chrome}\n className={cn(\n \"min-w-[14rem] max-w-[16rem] text-popover-foreground\",\n embedded\n ? \"p-0\"\n : \"rounded-md border border-border bg-popover p-2 shadow-sm shadow-black/5\",\n )}\n >\n {!embedded && (\n <div className=\"mb-2 flex items-center justify-between gap-2\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </div>\n <button\n type=\"button\"\n className=\"text-[10px] text-primary disabled:text-muted-foreground\"\n onClick={() => setDraft({})}\n disabled={Object.keys(draft).length === 0}\n >\n Clear all\n </button>\n </div>\n )}\n\n <div className=\"max-h-72 space-y-0.5 overflow-auto\">\n {sortedGroups.map((group) => {\n const selected = selectedByGroup[group.groupKey] ?? 0;\n const isActive = group.groupKey === activeGroup;\n return (\n <div\n key={group.groupKey}\n role=\"button\"\n tabIndex={0}\n onMouseEnter={() => setActiveGroup(group.groupKey)}\n onFocus={() => setActiveGroup(group.groupKey)}\n onClick={() => setActiveGroup(group.groupKey)}\n onKeyDown={(event) => {\n if (event.key === \"Enter\" || event.key === \" \" || event.key === \"ArrowRight\") {\n event.preventDefault();\n setActiveGroup(group.groupKey);\n }\n }}\n className={cn(\n \"flex cursor-pointer items-center justify-between gap-2 rounded-md px-1.5 py-0.5 text-sm\",\n \"hover:bg-accent/50 focus-visible:bg-accent/50 focus-visible:outline-none\",\n isActive && \"bg-accent/60\",\n )}\n >\n <span className=\"min-w-0 flex-1 truncate\">{group.label ?? group.groupKey}</span>\n {selected > 0 && (\n <span className=\"rounded-full bg-primary/15 px-1.5 text-[10px] font-medium text-primary\">\n {selected}/{group.options.length}\n </span>\n )}\n <Icon icon={UiChevronRight} className=\"shrink-0 text-muted-foreground\" />\n </div>\n );\n })}\n {groups.length === 0 && (\n <div className=\"px-2 py-3 text-sm text-muted-foreground\">No groups</div>\n )}\n </div>\n </div>\n\n {activeGroupData && (\n <div\n onMouseEnter={() => setActiveGroup(activeGroupData.groupKey)}\n className=\"ml-1.5 min-w-[16rem] max-w-[20rem] rounded-md border border-border bg-popover p-2 text-popover-foreground shadow-sm shadow-black/5\"\n >\n <div className=\"mb-2 flex items-center justify-between gap-2\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {activeGroupData.label ?? activeGroupData.groupKey}\n </div>\n <button\n type=\"button\"\n className=\"text-[10px] text-primary disabled:text-muted-foreground\"\n onClick={() => clearGroup(activeGroupData.groupKey)}\n disabled={(selectedByGroup[activeGroupData.groupKey] ?? 0) === 0}\n >\n Clear\n </button>\n </div>\n\n <div className=\"max-h-72 space-y-0.5 overflow-auto\">\n {activeGroupData.options.map((option) => {\n const mode = draft[option.value] ?? \"neutral\";\n const title = option.title ?? multiSelectOptionText(option);\n return (\n <div\n key={option.value}\n role=\"button\"\n tabIndex={0}\n data-filter-option={option.value}\n className=\"rounded-md px-1.5 py-0.5 hover:bg-accent/50 focus-visible:bg-accent/50 focus-visible:outline-none\"\n onClick={() =>\n setDraft(updateMultiFilterValue(draft, option.value, nextFilterMode(mode)))\n }\n onKeyDown={(event) => {\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n setDraft(updateMultiFilterValue(draft, option.value, nextFilterMode(mode)));\n } else if (event.key === \"ArrowLeft\") {\n event.preventDefault();\n setActiveGroup(null);\n }\n }}\n >\n <FilterPill\n className=\"w-full justify-between\"\n label={renderNestedOptionLabel(option, activeGroupData.groupKey)}\n mode={mode}\n title={title}\n togglePosition=\"right\"\n onModeChange={(next) =>\n setDraft(updateMultiFilterValue(draft, option.value, next))\n }\n />\n </div>\n );\n })}\n {activeGroupData.options.length === 0 && (\n <div className=\"px-2 py-3 text-sm text-muted-foreground\">No values</div>\n )}\n </div>\n </div>\n )}\n </div>\n );\n}\n\nfunction multiSelectOptionText(option: MultiSelectOption) {\n const label = typeof option.label === \"string\" ? option.label : \"\";\n return [option.value, label, option.title ?? \"\"].filter(Boolean).join(\" \");\n}\n\nfunction NestedMultiFilterField({\n filter,\n grow,\n}: {\n filter: FilterBarNestedMultiFilter;\n grow: boolean;\n}) {\n const rootRef = useRef<HTMLDivElement>(null);\n const triggerRef = useRef<HTMLButtonElement>(null);\n const [open, setOpen] = useState(false);\n const [activeGroup, setActiveGroup] = useState<string | null>(null);\n const [draft, setDraft] = useDebouncedMultiDraft(filter.value, filter.onChange);\n\n useDismissablePopup(open, rootRef, triggerRef, () => {\n setOpen(false);\n setActiveGroup(null);\n });\n\n const summary = summarizeMultiFilter(filter.label, draft);\n const groups = filter.groups;\n const activeGroupData = useMemo(\n () => groups.find((group) => group.groupKey === activeGroup) ?? null,\n [groups, activeGroup],\n );\n\n // Selected count per group, used in the outer list.\n const selectedByGroup = useMemo(() => {\n const counts: Record<string, number> = {};\n for (const group of groups) {\n let n = 0;\n for (const option of group.options) {\n if (draft[option.value]) n += 1;\n }\n counts[group.groupKey] = n;\n }\n return counts;\n }, [groups, draft]);\n\n // Groups with active selections sort to the top so the user always sees\n // what's filtered without scrolling. Within each partition, the original\n // order from the consumer is preserved.\n const sortedGroups = useMemo(() => {\n const selected: typeof groups = [];\n const rest: typeof groups = [];\n for (const group of groups) {\n if ((selectedByGroup[group.groupKey] ?? 0) > 0) selected.push(group);\n else rest.push(group);\n }\n return [...selected, ...rest];\n }, [groups, selectedByGroup]);\n\n const clearGroup = (groupKey: string) => {\n const group = groups.find((g) => g.groupKey === groupKey);\n if (!group) return;\n const next = { ...draft };\n for (const option of group.options) {\n delete next[option.value];\n }\n setDraft(next);\n };\n\n return (\n <div\n ref={rootRef}\n title={filter.description}\n className={cn(\n \"relative min-w-0\",\n grow ? \"min-w-[8rem] max-w-[12rem] flex-1\" : \"shrink-0\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <Button\n ref={triggerRef}\n type=\"button\"\n variant=\"outline\"\n size=\"sm\"\n aria-label={`${filter.label} filter`}\n aria-haspopup=\"dialog\"\n aria-expanded={open}\n disabled={filter.disabled}\n onClick={() => {\n setOpen((current) => !current);\n if (open) setActiveGroup(null);\n }}\n className={cn(\n \"min-w-0 gap-2 font-normal\",\n grow ? \"w-full max-w-[12rem] justify-between\" : \"w-auto max-w-[8.5rem] px-2.5\",\n summary === filter.label && \"text-muted-foreground\",\n )}\n >\n <span className=\"truncate\">{summary}</span>\n <Icon icon={open ? UiChevronUp : UiChevronDown} className=\"text-muted-foreground\" />\n </Button>\n\n {open && (\n <div\n role=\"dialog\"\n onKeyDown={(event) => {\n if (event.key === \"Escape\") {\n event.preventDefault();\n setOpen(false);\n setActiveGroup(null);\n }\n }}\n className=\"absolute left-0 top-[calc(100%+0.375rem)] z-50 flex\"\n >\n <div className=\"min-w-[14rem] max-w-[16rem] rounded-md border border-border bg-popover p-2 text-popover-foreground shadow-lg shadow-black/5\">\n <div className=\"mb-2 flex items-center justify-between gap-2\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </div>\n <button\n type=\"button\"\n className=\"text-[10px] text-primary disabled:text-muted-foreground\"\n onClick={() => setDraft({})}\n disabled={Object.keys(draft).length === 0}\n >\n Clear all\n </button>\n </div>\n\n <div className=\"max-h-72 space-y-0.5 overflow-auto\">\n {sortedGroups.map((group) => {\n const selected = selectedByGroup[group.groupKey] ?? 0;\n const isActive = group.groupKey === activeGroup;\n return (\n <div\n key={group.groupKey}\n role=\"button\"\n tabIndex={0}\n onMouseEnter={() => setActiveGroup(group.groupKey)}\n onFocus={() => setActiveGroup(group.groupKey)}\n onClick={() => setActiveGroup(group.groupKey)}\n onKeyDown={(event) => {\n if (\n event.key === \"Enter\" ||\n event.key === \" \" ||\n event.key === \"ArrowRight\"\n ) {\n event.preventDefault();\n setActiveGroup(group.groupKey);\n }\n }}\n className={cn(\n \"flex cursor-pointer items-center justify-between gap-2 rounded-md px-1.5 py-0.5 text-sm\",\n \"hover:bg-accent/50 focus-visible:bg-accent/50 focus-visible:outline-none\",\n isActive && \"bg-accent/60\",\n )}\n >\n <span className=\"min-w-0 flex-1 truncate\">{group.label ?? group.groupKey}</span>\n {selected > 0 && (\n <span className=\"rounded-full bg-primary/15 px-1.5 text-[10px] font-medium text-primary\">\n {selected}/{group.options.length}\n </span>\n )}\n <Icon icon={UiChevronRight} className=\"shrink-0 text-muted-foreground\" />\n </div>\n );\n })}\n {groups.length === 0 && (\n <div className=\"px-2 py-3 text-sm text-muted-foreground\">No groups</div>\n )}\n </div>\n </div>\n\n {activeGroupData && (\n <div\n onMouseEnter={() => setActiveGroup(activeGroupData.groupKey)}\n className=\"ml-1.5 min-w-[16rem] max-w-[20rem] rounded-md border border-border bg-popover p-2 text-popover-foreground shadow-lg shadow-black/5\"\n >\n <div className=\"mb-2 flex items-center justify-between gap-2\">\n <div className=\"text-[10px] font-medium uppercase tracking-wide text-muted-foreground\">\n {activeGroupData.label ?? activeGroupData.groupKey}\n </div>\n <button\n type=\"button\"\n className=\"text-[10px] text-primary disabled:text-muted-foreground\"\n onClick={() => clearGroup(activeGroupData.groupKey)}\n disabled={(selectedByGroup[activeGroupData.groupKey] ?? 0) === 0}\n >\n Clear\n </button>\n </div>\n\n <div className=\"max-h-72 space-y-0.5 overflow-auto\">\n {activeGroupData.options.map((option) => {\n const mode = draft[option.value] ?? \"neutral\";\n const title = option.title ?? multiSelectOptionText(option);\n return (\n <div\n key={option.value}\n role=\"button\"\n tabIndex={0}\n data-filter-option={option.value}\n className=\"rounded-md px-1.5 py-0.5 hover:bg-accent/50 focus-visible:bg-accent/50 focus-visible:outline-none\"\n onClick={() =>\n setDraft(updateMultiFilterValue(draft, option.value, nextFilterMode(mode)))\n }\n onKeyDown={(event) => {\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n setDraft(\n updateMultiFilterValue(draft, option.value, nextFilterMode(mode)),\n );\n } else if (event.key === \"ArrowLeft\") {\n event.preventDefault();\n setActiveGroup(null);\n }\n }}\n >\n <FilterPill\n className=\"w-full justify-between\"\n // Show only the value side here — the key is already\n // implied by the parent group panel.\n label={renderNestedOptionLabel(option, activeGroupData.groupKey)}\n mode={mode}\n title={title}\n togglePosition=\"right\"\n onModeChange={(next) =>\n setDraft(updateMultiFilterValue(draft, option.value, next))\n }\n />\n </div>\n );\n })}\n {activeGroupData.options.length === 0 && (\n <div className=\"px-2 py-3 text-sm text-muted-foreground\">No values</div>\n )}\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n );\n}\n\nfunction renderNestedOptionLabel(option: MultiSelectOption, groupKey: string): ReactNode {\n // If the option label already strips the key prefix, use it. Otherwise\n // strip it here so the inner panel doesn't repeat the key on every row.\n if (typeof option.label === \"string\") {\n const prefix = `${groupKey}=`;\n if (option.label.startsWith(prefix)) return option.label.slice(prefix.length);\n return option.label;\n }\n return option.label ?? option.value;\n}\n\nfunction SelectMultiFilterField({\n filter,\n grow,\n}: {\n filter: FilterBarSelectMultiFilter;\n grow: boolean;\n}) {\n return (\n <label\n title={filter.description}\n className={cn(\n \"flex h-8 items-center gap-2 rounded-md border border-input bg-muted/30 pl-2 pr-1 text-xs\",\n grow ? \"min-w-[12rem] max-w-[18rem] flex-1\" : \"min-w-[11rem] max-w-[15rem] shrink-0\",\n filter.disabled && \"opacity-60\",\n filter.className,\n )}\n >\n <span className=\"whitespace-nowrap font-medium uppercase tracking-wide text-muted-foreground\">\n {filter.label}\n </span>\n <MultiSelect\n options={filter.options}\n value={filter.value}\n onChange={filter.onChange}\n placeholder={filter.placeholder ?? `Any ${filter.label.toLowerCase()}`}\n {...(filter.disabled !== undefined ? { disabled: filter.disabled } : {})}\n triggerClassName=\"h-6 min-w-0 border-0 bg-transparent px-1 text-xs shadow-none focus-visible:ring-0\"\n menuClassName=\"left-auto right-0\"\n />\n </label>\n );\n}\n\nfunction RangeControlButton({\n kind,\n label,\n from = \"\",\n to = \"\",\n onApply,\n presets,\n timeEnabled,\n timeZone,\n timeZones,\n fromPlaceholder,\n toPlaceholder,\n emptyLabel,\n className,\n}: FilterBarRangeProps & { kind: \"date\" | \"time\"; label: string }) {\n return (\n <TimeRange\n kind={kind}\n label={label}\n from={from}\n to={to}\n onApply={onApply}\n {...(presets ? { presets } : {})}\n {...(timeEnabled !== undefined ? { timeEnabled } : {})}\n {...(timeZone ? { timeZone } : {})}\n {...(timeZones ? { timeZones } : {})}\n {...(fromPlaceholder ? { fromPlaceholder } : {})}\n {...(toPlaceholder ? { toPlaceholder } : {})}\n {...(emptyLabel ? { emptyLabel } : {})}\n {...(className ? { className } : {})}\n />\n );\n}\n\nfunction useDismissablePopup(\n open: boolean,\n rootRef: RefObject<HTMLElement | null>,\n triggerRef: RefObject<HTMLElement | null>,\n onClose: () => void,\n) {\n useEffect(() => {\n if (!open) return;\n\n const onPointerDown = (event: MouseEvent) => {\n if (!rootRef.current?.contains(event.target as Node)) {\n onClose();\n }\n };\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (event.key === \"Escape\") {\n onClose();\n triggerRef.current?.focus();\n }\n };\n\n document.addEventListener(\"mousedown\", onPointerDown);\n document.addEventListener(\"keydown\", onKeyDown);\n return () => {\n document.removeEventListener(\"mousedown\", onPointerDown);\n document.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [onClose, open, rootRef, triggerRef]);\n}\n\nfunction summarizeMultiFilter(\n label: string,\n value: Record<string, FilterBarMultiFilterMode>,\n): string {\n const includeCount = Object.values(value).filter((mode) => mode === \"include\").length;\n const excludeCount = Object.values(value).filter((mode) => mode === \"exclude\").length;\n\n if (includeCount === 0 && excludeCount === 0) {\n return label;\n }\n\n const counts = [\n includeCount > 0 ? `+${includeCount}` : null,\n excludeCount > 0 ? `-${excludeCount}` : null,\n ].filter(Boolean);\n\n return `${label} ${counts.join(\" \")}`;\n}\n\nfunction parseLookupMultiValue(value: string) {\n return value\n .split(\",\")\n .map((item) => item.trim())\n .filter(Boolean);\n}\n\nfunction useDebouncedMultiDraft(\n value: Record<string, FilterBarMultiFilterMode>,\n onChange: (value: Record<string, FilterBarMultiFilterMode>) => void,\n) {\n const { autoSubmit } = useContext(FilterBarContext);\n const [draft, setDraft] = useState(value);\n const latestOnChange = useRef(onChange);\n\n useEffect(() => {\n latestOnChange.current = onChange;\n }, [onChange]);\n\n useEffect(() => {\n setDraft(value);\n }, [value]);\n\n useEffect(() => {\n if (sameMultiFilterValue(draft, value)) return;\n\n if (!autoSubmit) {\n latestOnChange.current(draft);\n return;\n }\n\n const timeoutId = window.setTimeout(() => {\n latestOnChange.current(draft);\n }, FILTER_INPUT_DEBOUNCE_MS);\n\n return () => window.clearTimeout(timeoutId);\n }, [autoSubmit, draft, value]);\n\n return [draft, setDraft] as const;\n}\n\nfunction sameMultiFilterValue(\n a: Record<string, FilterBarMultiFilterMode>,\n b: Record<string, FilterBarMultiFilterMode>,\n) {\n const aKeys = Object.keys(a);\n const bKeys = Object.keys(b);\n if (aKeys.length !== bKeys.length) return false;\n for (const key of aKeys) {\n if (a[key] !== b[key]) return false;\n }\n return true;\n}\n\nfunction useDebouncedTextDraft(value: string, onChange: (value: string) => void) {\n const { autoSubmit } = useContext(FilterBarContext);\n const [draft, setDraft] = useState(value);\n const latestOnChange = useRef(onChange);\n\n useEffect(() => {\n latestOnChange.current = onChange;\n }, [onChange]);\n\n useEffect(() => {\n setDraft(value);\n }, [value]);\n\n useEffect(() => {\n if (draft === value) return;\n\n if (!autoSubmit) {\n latestOnChange.current(draft);\n return;\n }\n\n const timeoutId = window.setTimeout(() => {\n latestOnChange.current(draft);\n }, FILTER_INPUT_DEBOUNCE_MS);\n\n return () => window.clearTimeout(timeoutId);\n }, [autoSubmit, draft, value]);\n\n return [draft, setDraft] as const;\n}\n\nfunction useDebouncedNumberDraft(\n value: FilterBarNumberValue,\n onChange: (value: FilterBarNumberValue) => void,\n) {\n const { autoSubmit } = useContext(FilterBarContext);\n const [draft, setDraft] = useState(value);\n const latestOnChange = useRef(onChange);\n\n useEffect(() => {\n latestOnChange.current = onChange;\n }, [onChange]);\n\n useEffect(() => {\n setDraft(value);\n }, [value.max, value.min]);\n\n useEffect(() => {\n if (sameNumberFilterValue(draft, value)) return;\n\n if (!autoSubmit) {\n latestOnChange.current(draft);\n return;\n }\n\n const timeoutId = window.setTimeout(() => {\n latestOnChange.current(draft);\n }, FILTER_INPUT_DEBOUNCE_MS);\n\n return () => window.clearTimeout(timeoutId);\n }, [autoSubmit, draft, value]);\n\n return [draft, setDraft] as const;\n}\n\nfunction sameNumberFilterValue(left: FilterBarNumberValue, right: FilterBarNumberValue) {\n return (left.min ?? \"\") === (right.min ?? \"\") && (left.max ?? \"\") === (right.max ?? \"\");\n}\n\ntype NumberFilterBounds = {\n min: number;\n max: number;\n step: number;\n};\n\ntype NumberFilterSource = \"min-input\" | \"max-input\";\n\nfunction resolveNumberFilterBounds(filter: FilterBarNumberFilter): NumberFilterBounds {\n const parsedMin = parseFilterNumber(filter.value.min);\n const parsedMax = parseFilterNumber(filter.value.max);\n const fallbackMin = parsedMin ?? 0;\n const fallbackMax = parsedMax ?? Math.max(fallbackMin + 100, 100);\n const min = filter.domainMin ?? Math.min(fallbackMin, fallbackMax);\n const max = filter.domainMax ?? Math.max(fallbackMax, min + 100);\n const step = filter.step && filter.step > 0 ? filter.step : 1;\n\n return {\n min,\n max: max <= min ? min + step : max,\n step,\n };\n}\n\nfunction summarizeNumberFilter(\n filter: FilterBarNumberFilter,\n bounds: NumberFilterBounds,\n value: FilterBarNumberValue,\n) {\n const parsedMin = parseFilterNumber(value.min);\n const parsedMax = parseFilterNumber(value.max);\n const hasMin = String(value.min ?? \"\").trim() !== \"\";\n const hasMax = String(value.max ?? \"\").trim() !== \"\";\n\n if (!hasMin && !hasMax) {\n return filter.label;\n }\n\n const minLabel =\n parsedMin == null\n ? formatNumberValue(bounds.min, filter)\n : formatNumberValue(parsedMin, filter);\n const maxLabel =\n parsedMax == null\n ? formatNumberValue(bounds.max, filter)\n : formatNumberValue(parsedMax, filter);\n\n if (hasMin && hasMax) {\n if (minLabel === maxLabel) {\n return `${filter.label} ${minLabel}`;\n }\n return `${filter.label} ${minLabel}-${maxLabel}`;\n }\n\n if (hasMin) {\n return `${filter.label} >=${minLabel}`;\n }\n\n return `${filter.label} <=${maxLabel}`;\n}\n\nfunction normalizeNumberFilterValue(\n nextValue: FilterBarNumberValue,\n source: NumberFilterSource,\n): FilterBarNumberValue {\n let min = nextValue.min ?? \"\";\n let max = nextValue.max ?? \"\";\n\n const parsedMin = parseFilterNumber(min);\n const parsedMax = parseFilterNumber(max);\n\n if (parsedMin != null && parsedMax != null && parsedMin > parsedMax) {\n if (source.startsWith(\"min\")) {\n max = min;\n } else {\n min = max;\n }\n }\n\n return { min, max };\n}\n\nfunction numberFilterValueFromSlider(\n value: [number, number],\n bounds: NumberFilterBounds,\n): FilterBarNumberValue {\n const [min, max] = value;\n return {\n min: min <= bounds.min ? \"\" : formatRawNumber(clampNumber(min, bounds.min, bounds.max)),\n max: max >= bounds.max ? \"\" : formatRawNumber(clampNumber(max, bounds.min, bounds.max)),\n };\n}\n\nfunction parseFilterNumber(value: string | undefined) {\n if (!value?.trim()) return null;\n const parsed = Number(value);\n return Number.isFinite(parsed) ? parsed : null;\n}\n\nfunction clampNumber(value: number, min: number, max: number) {\n return Math.min(max, Math.max(min, value));\n}\n\nfunction formatNumberValue(value: number, filter: FilterBarNumberFilter) {\n if (filter.formatValue) {\n return filter.formatValue(value);\n }\n\n return formatRawNumber(value);\n}\n\nfunction formatRawNumber(value: number) {\n return Number.isInteger(value) ? String(value) : String(Number(value.toFixed(6)));\n}\n\nfunction updateMultiFilterValue(\n current: Record<string, FilterBarMultiFilterMode>,\n optionValue: string,\n nextMode: FilterMode,\n): Record<string, FilterBarMultiFilterMode> {\n const next = { ...current };\n\n if (nextMode === \"neutral\") {\n delete next[optionValue];\n return next;\n }\n\n if (nextMode === \"include\" || nextMode === \"exclude\") {\n next[optionValue] = nextMode;\n }\n\n return next;\n}\n\nfunction nextFilterMode(mode: FilterMode): FilterMode {\n if (mode === \"include\") return \"exclude\";\n if (mode === \"exclude\") return \"neutral\";\n return \"include\";\n}\n\nexport function clearFilterBarFilter(filter: FilterBarFilter) {\n if (filter.kind === \"text\" || filter.kind === \"lookup\" || filter.kind === \"enum\") {\n filter.onChange(\"\");\n return;\n }\n\n if (filter.kind === \"lookup-multi\" || filter.kind === \"select-multi\") {\n filter.onChange([]);\n return;\n }\n\n if (filter.kind === \"number\") {\n filter.onChange({});\n return;\n }\n\n if (filter.kind === \"boolean\") {\n filter.onChange(false);\n return;\n }\n\n filter.onChange({});\n}\n\nexport function isFilterBarFilterActive(filter: FilterBarFilter) {\n if (filter.kind === \"text\" || filter.kind === \"lookup\" || filter.kind === \"enum\") {\n return String(filter.value ?? \"\").trim() !== \"\";\n }\n if (filter.kind === \"lookup-multi\" || filter.kind === \"select-multi\") {\n return filter.value.length > 0;\n }\n if (filter.kind === \"number\") {\n return (\n String(filter.value.min ?? \"\").trim() !== \"\" || String(filter.value.max ?? \"\").trim() !== \"\"\n );\n }\n if (filter.kind === \"boolean\") return filter.value;\n return Object.keys(filter.value).length > 0;\n}\n\ntype FilterBarValue =\n | string\n | string[]\n | boolean\n | FilterBarNumberValue\n | Record<string, FilterBarMultiFilterMode>;\n\nfunction createFilterValueMap(filters: FilterBarFilter[]) {\n return Object.fromEntries(filters.map((filter) => [filter.key, filterBarFilterValue(filter)]));\n}\n\nfunction filterBarFilterValue(filter: FilterBarFilter): FilterBarValue {\n return filter.value;\n}\n\nfunction filterWithStagedValue(\n filter: FilterBarFilter,\n value: FilterBarValue,\n onChange: (value: FilterBarValue) => void,\n): FilterBarFilter {\n if (filter.kind === \"text\") {\n return {\n ...filter,\n value: String(value ?? \"\"),\n onChange: (next: string) => onChange(next),\n };\n }\n if (filter.kind === \"lookup\") {\n return {\n ...filter,\n value: String(value ?? \"\"),\n onChange: (next: string) => onChange(next),\n };\n }\n if (filter.kind === \"lookup-multi\") {\n return {\n ...filter,\n value: Array.isArray(value) ? value.map(String) : [],\n onChange: (next: string[]) => onChange(next),\n };\n }\n if (filter.kind === \"multi\") {\n return {\n ...filter,\n value: isMultiFilterValue(value) ? value : {},\n onChange: (next: Record<string, FilterBarMultiFilterMode>) => onChange(next),\n };\n }\n if (filter.kind === \"nested-multi\") {\n return {\n ...filter,\n value: isMultiFilterValue(value) ? value : {},\n onChange: (next: Record<string, FilterBarMultiFilterMode>) => onChange(next),\n };\n }\n if (filter.kind === \"select-multi\") {\n return {\n ...filter,\n value: Array.isArray(value) ? value.map(String) : [],\n onChange: (next: string[]) => onChange(next),\n };\n }\n if (filter.kind === \"number\") {\n return {\n ...filter,\n value: isNumberFilterValue(value) ? value : {},\n onChange: (next: FilterBarNumberValue) => onChange(next),\n };\n }\n if (filter.kind === \"enum\") {\n return {\n ...filter,\n value: String(value ?? \"\"),\n onChange: (next: string) => onChange(next),\n };\n }\n return {\n ...filter,\n value: Boolean(value),\n onChange: (next: boolean) => onChange(next),\n };\n}\n\nfunction applyStagedFilterValues(\n filters: FilterBarFilter[],\n stagedValues: Record<string, FilterBarValue>,\n) {\n for (const filter of filters) {\n const next = stagedValues[filter.key] ?? filterBarFilterValue(filter);\n if (sameFilterBarValue(filterBarFilterValue(filter), next)) continue;\n applyFilterBarValue(filter, next);\n }\n}\n\nfunction applyFilterBarValue(filter: FilterBarFilter, value: FilterBarValue) {\n if (filter.kind === \"text\" || filter.kind === \"lookup\" || filter.kind === \"enum\") {\n filter.onChange(String(value ?? \"\"));\n return;\n }\n if (filter.kind === \"lookup-multi\" || filter.kind === \"select-multi\") {\n filter.onChange(Array.isArray(value) ? value.map(String) : []);\n return;\n }\n if (filter.kind === \"number\") {\n filter.onChange(isNumberFilterValue(value) ? value : {});\n return;\n }\n if (filter.kind === \"boolean\") {\n filter.onChange(Boolean(value));\n return;\n }\n filter.onChange(isMultiFilterValue(value) ? value : {});\n}\n\nfunction sameFilterBarValue(left: FilterBarValue, right: FilterBarValue) {\n return JSON.stringify(left) === JSON.stringify(right);\n}\n\nfunction isNumberFilterValue(value: FilterBarValue): value is FilterBarNumberValue {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction isMultiFilterValue(\n value: FilterBarValue,\n): value is Record<string, FilterBarMultiFilterMode> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction calculateVisibleFilterCount(widths: number[], availableWidth: number) {\n if (widths.length === 0) return 0;\n\n let used = 0;\n let count = 0;\n for (const width of widths) {\n const nextUsed = used + (count > 0 ? FILTER_BAR_GAP_PX : 0) + width;\n if (nextUsed > availableWidth) break;\n used = nextUsed;\n count += 1;\n }\n return count;\n}\n\nfunction sumFilterWidths(widths: number[]) {\n if (widths.length === 0) return 0;\n return (\n widths.reduce((total, width) => total + width, 0) + (widths.length - 1) * FILTER_BAR_GAP_PX\n );\n}\n\nfunction estimateFilterWidth(filter: FilterBarFilter) {\n if (filter.kind === \"boolean\") return Math.max(88, filter.label.length * 8 + 40);\n if (filter.kind === \"multi\" || filter.kind === \"nested-multi\") return 136;\n if (filter.kind === \"number\") return 152;\n return Math.max(144, filter.label.length * 8 + 96);\n}\n"],"names":["createContext","useMemo","useRef","useState","useLayoutEffect","useCallback","useEffect","jsx","jsxs","cn","Button","Fragment","Icon","UiFilter","UiClose","DateTimePicker","MultiSelect","Select","TimeRange","UiSearch","UiChevronUp","UiChevronDown","RangeSlider","FilterPill","UiChevronRight","useContext"],"mappings":"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"}
|
|
@@ -1,50 +1,76 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { FilterMode } from '../data/FilterPill';
|
|
3
3
|
import { MultiSelectOption } from './MultiSelect';
|
|
4
|
+
import { TimeRangePresetGroup } from './TimeRange';
|
|
4
5
|
export type FilterBarSearchProps = {
|
|
6
|
+
/** Controlled search text. */
|
|
5
7
|
value: string;
|
|
8
|
+
/** Called with the next search text. Debounced when `autoSubmit` is true. */
|
|
6
9
|
onChange: (value: string) => void;
|
|
10
|
+
/** Placeholder shown in the search input. */
|
|
7
11
|
placeholder?: string;
|
|
12
|
+
/** Accessible label for the search input. */
|
|
8
13
|
ariaLabel?: string;
|
|
14
|
+
/** Classes applied to the search input. */
|
|
9
15
|
className?: string;
|
|
10
16
|
};
|
|
11
17
|
export type FilterBarTextFilter = {
|
|
18
|
+
/** Stable filter key used for rendering and overflow measurement. */
|
|
12
19
|
key: string;
|
|
20
|
+
/** Renders a free-text input. */
|
|
13
21
|
kind: "text";
|
|
22
|
+
/** Filter label shown on the control. */
|
|
14
23
|
label: string;
|
|
24
|
+
/** Optional helper text shown in filter popovers. */
|
|
15
25
|
description?: string;
|
|
26
|
+
/** Controlled input value. */
|
|
16
27
|
value: string;
|
|
28
|
+
/** Called with the next input value. */
|
|
17
29
|
onChange: (value: string) => void;
|
|
30
|
+
/** Placeholder shown in the input. */
|
|
18
31
|
placeholder?: string;
|
|
32
|
+
/** Disables this filter. */
|
|
19
33
|
disabled?: boolean;
|
|
34
|
+
/** Classes applied to this filter control. */
|
|
20
35
|
className?: string;
|
|
21
36
|
};
|
|
22
37
|
export type FilterBarLookupOption = {
|
|
38
|
+
/** Option value written to filter state. */
|
|
23
39
|
value: string;
|
|
40
|
+
/** Optional display label; falls back to `value`. */
|
|
24
41
|
label?: string;
|
|
42
|
+
/** Prevents choosing the option. */
|
|
25
43
|
disabled?: boolean;
|
|
44
|
+
/** Optional browser tooltip. */
|
|
26
45
|
title?: string;
|
|
27
46
|
};
|
|
28
47
|
export type FilterBarLookupInputType = "text" | "number" | "date";
|
|
29
48
|
export type FilterBarLookupFilter = {
|
|
30
49
|
key: string;
|
|
50
|
+
/** Renders an input backed by a datalist-style option set. */
|
|
31
51
|
kind: "lookup";
|
|
32
52
|
label: string;
|
|
33
53
|
description?: string;
|
|
54
|
+
/** Controlled selected or typed value. */
|
|
34
55
|
value: string;
|
|
56
|
+
/** Suggestions for the lookup input. */
|
|
35
57
|
options: FilterBarLookupOption[];
|
|
36
58
|
onChange: (value: string) => void;
|
|
37
59
|
placeholder?: string;
|
|
60
|
+
/** Native input type for the lookup field. */
|
|
38
61
|
inputType?: FilterBarLookupInputType;
|
|
39
62
|
disabled?: boolean;
|
|
40
63
|
className?: string;
|
|
41
64
|
};
|
|
42
65
|
export type FilterBarLookupMultiFilter = {
|
|
43
66
|
key: string;
|
|
67
|
+
/** Renders a multi-value lookup filter. */
|
|
44
68
|
kind: "lookup-multi";
|
|
45
69
|
label: string;
|
|
46
70
|
description?: string;
|
|
71
|
+
/** Controlled selected values. */
|
|
47
72
|
value: string[];
|
|
73
|
+
/** Suggestions for the lookup input. */
|
|
48
74
|
options: FilterBarLookupOption[];
|
|
49
75
|
onChange: (value: string[]) => void;
|
|
50
76
|
placeholder?: string;
|
|
@@ -54,22 +80,29 @@ export type FilterBarLookupMultiFilter = {
|
|
|
54
80
|
export type FilterBarMultiFilterMode = Extract<FilterMode, "include" | "exclude">;
|
|
55
81
|
export type FilterBarMultiFilter = {
|
|
56
82
|
key: string;
|
|
83
|
+
/** Renders include/exclude chips for each option. */
|
|
57
84
|
kind: "multi";
|
|
58
85
|
label: string;
|
|
59
86
|
description?: string;
|
|
87
|
+
/** Map of option value to include/exclude state. */
|
|
60
88
|
value: Record<string, FilterBarMultiFilterMode>;
|
|
89
|
+
/** Available chip options. */
|
|
61
90
|
options: MultiSelectOption[];
|
|
62
91
|
onChange: (value: Record<string, FilterBarMultiFilterMode>) => void;
|
|
63
92
|
disabled?: boolean;
|
|
64
93
|
className?: string;
|
|
65
94
|
};
|
|
66
95
|
export type FilterBarNestedMultiGroup = {
|
|
96
|
+
/** Stable group id. */
|
|
67
97
|
groupKey: string;
|
|
98
|
+
/** Optional visible group label. */
|
|
68
99
|
label?: string;
|
|
100
|
+
/** Options in this group. */
|
|
69
101
|
options: MultiSelectOption[];
|
|
70
102
|
};
|
|
71
103
|
export type FilterBarNestedMultiFilter = {
|
|
72
104
|
key: string;
|
|
105
|
+
/** Renders grouped include/exclude chips. */
|
|
73
106
|
kind: "nested-multi";
|
|
74
107
|
label: string;
|
|
75
108
|
description?: string;
|
|
@@ -81,10 +114,13 @@ export type FilterBarNestedMultiFilter = {
|
|
|
81
114
|
};
|
|
82
115
|
export type FilterBarSelectMultiFilter = {
|
|
83
116
|
key: string;
|
|
117
|
+
/** Renders a compact multi-select dropdown. */
|
|
84
118
|
kind: "select-multi";
|
|
85
119
|
label: string;
|
|
86
120
|
description?: string;
|
|
121
|
+
/** Controlled selected values. */
|
|
87
122
|
value: string[];
|
|
123
|
+
/** Available dropdown options. */
|
|
88
124
|
options: MultiSelectOption[];
|
|
89
125
|
onChange: (value: string[]) => void;
|
|
90
126
|
placeholder?: string;
|
|
@@ -92,19 +128,27 @@ export type FilterBarSelectMultiFilter = {
|
|
|
92
128
|
className?: string;
|
|
93
129
|
};
|
|
94
130
|
export type FilterBarNumberValue = {
|
|
131
|
+
/** Minimum bound as a string so callers can preserve draft input. */
|
|
95
132
|
min?: string;
|
|
133
|
+
/** Maximum bound as a string so callers can preserve draft input. */
|
|
96
134
|
max?: string;
|
|
97
135
|
};
|
|
98
136
|
export type FilterBarNumberFilter = {
|
|
99
137
|
key: string;
|
|
138
|
+
/** Renders paired min/max numeric controls. */
|
|
100
139
|
kind: "number";
|
|
101
140
|
label: string;
|
|
102
141
|
description?: string;
|
|
142
|
+
/** Controlled min/max value. */
|
|
103
143
|
value: FilterBarNumberValue;
|
|
104
144
|
onChange: (value: FilterBarNumberValue) => void;
|
|
145
|
+
/** Lower bound used by the optional range slider. */
|
|
105
146
|
domainMin?: number;
|
|
147
|
+
/** Upper bound used by the optional range slider. */
|
|
106
148
|
domainMax?: number;
|
|
149
|
+
/** Step size for number inputs and slider movement. */
|
|
107
150
|
step?: number;
|
|
151
|
+
/** Formatter used for slider labels. */
|
|
108
152
|
formatValue?: (value: number) => string;
|
|
109
153
|
minPlaceholder?: string;
|
|
110
154
|
maxPlaceholder?: string;
|
|
@@ -113,10 +157,13 @@ export type FilterBarNumberFilter = {
|
|
|
113
157
|
};
|
|
114
158
|
export type FilterBarEnumFilter = {
|
|
115
159
|
key: string;
|
|
160
|
+
/** Renders a single-select dropdown. */
|
|
116
161
|
kind: "enum";
|
|
117
162
|
label: string;
|
|
118
163
|
description?: string;
|
|
164
|
+
/** Controlled selected value. */
|
|
119
165
|
value: string;
|
|
166
|
+
/** Available enum options. */
|
|
120
167
|
options: Array<{
|
|
121
168
|
value: string;
|
|
122
169
|
label?: string;
|
|
@@ -128,9 +175,11 @@ export type FilterBarEnumFilter = {
|
|
|
128
175
|
};
|
|
129
176
|
export type FilterBarBooleanFilter = {
|
|
130
177
|
key: string;
|
|
178
|
+
/** Renders a boolean toggle. */
|
|
131
179
|
kind: "boolean";
|
|
132
180
|
label: string;
|
|
133
181
|
description?: string;
|
|
182
|
+
/** Controlled checked state. */
|
|
134
183
|
value: boolean;
|
|
135
184
|
onChange: (value: boolean) => void;
|
|
136
185
|
disabled?: boolean;
|
|
@@ -138,43 +187,76 @@ export type FilterBarBooleanFilter = {
|
|
|
138
187
|
};
|
|
139
188
|
export type FilterBarFilter = FilterBarTextFilter | FilterBarLookupFilter | FilterBarLookupMultiFilter | FilterBarMultiFilter | FilterBarNestedMultiFilter | FilterBarSelectMultiFilter | FilterBarNumberFilter | FilterBarEnumFilter | FilterBarBooleanFilter;
|
|
140
189
|
export type FilterBarRangePreset = {
|
|
190
|
+
/** Visible preset label. */
|
|
141
191
|
label: string;
|
|
192
|
+
/** Start value applied by the preset. */
|
|
142
193
|
from: string;
|
|
194
|
+
/** End value applied by the preset. */
|
|
143
195
|
to: string;
|
|
144
196
|
};
|
|
145
197
|
export type FilterBarRangeProps = {
|
|
198
|
+
/** Current start value. */
|
|
146
199
|
from?: string;
|
|
200
|
+
/** Current end value. */
|
|
147
201
|
to?: string;
|
|
202
|
+
/** Called when the user applies the range. */
|
|
148
203
|
onApply: (from: string, to: string) => void;
|
|
149
|
-
|
|
204
|
+
/** Presets or preset groups shown in the range popup. */
|
|
205
|
+
presets?: Array<FilterBarRangePreset | TimeRangePresetGroup>;
|
|
206
|
+
/** Enables time inputs when using date-time values. */
|
|
207
|
+
timeEnabled?: boolean;
|
|
208
|
+
/** Selected timezone. */
|
|
209
|
+
timeZone?: string;
|
|
210
|
+
/** Available timezone options. */
|
|
211
|
+
timeZones?: string[];
|
|
150
212
|
fromPlaceholder?: string;
|
|
151
213
|
toPlaceholder?: string;
|
|
152
214
|
emptyLabel?: string;
|
|
153
215
|
className?: string;
|
|
154
216
|
};
|
|
155
217
|
export type FilterBarProps = {
|
|
218
|
+
/** Optional global search control shown first. */
|
|
156
219
|
search?: FilterBarSearchProps;
|
|
220
|
+
/** Structured filters rendered after search. */
|
|
157
221
|
filters?: FilterBarFilter[];
|
|
222
|
+
/** Date-time range control. */
|
|
158
223
|
timeRange?: FilterBarRangeProps;
|
|
224
|
+
/** Date-only range control. */
|
|
159
225
|
dateRange?: FilterBarRangeProps;
|
|
226
|
+
/** Additional content rendered in the filter row. */
|
|
160
227
|
children?: ReactNode;
|
|
228
|
+
/** Content rendered before search and filters. */
|
|
161
229
|
leading?: ReactNode;
|
|
230
|
+
/** Content rendered at the end of the bar. */
|
|
162
231
|
trailing?: ReactNode;
|
|
232
|
+
/** Classes applied to the root bar. */
|
|
163
233
|
className?: string;
|
|
234
|
+
/**
|
|
235
|
+
* When false, debounced fields forward edits immediately and an Apply button
|
|
236
|
+
* is rendered in the trailing slot. Defaults to true.
|
|
237
|
+
*/
|
|
164
238
|
autoSubmit?: boolean;
|
|
239
|
+
/** Called by the Apply button when `autoSubmit` is false. */
|
|
165
240
|
onApply?: () => void;
|
|
241
|
+
/** Label for the Apply button. */
|
|
166
242
|
applyLabel?: string;
|
|
243
|
+
/** Shows a pending state on the Apply button. */
|
|
167
244
|
isPending?: boolean;
|
|
245
|
+
/** `responsive` moves hidden filters into an overflow popover; `wrap` lets them wrap. */
|
|
246
|
+
overflowMode?: "responsive" | "wrap";
|
|
168
247
|
};
|
|
169
|
-
export declare function FilterBar({ search, filters, timeRange, dateRange, children, leading, trailing, className, autoSubmit, onApply, applyLabel, isPending, }: FilterBarProps): import("react/jsx-runtime").JSX.Element;
|
|
248
|
+
export declare function FilterBar({ search, filters, timeRange, dateRange, children, leading, trailing, className, autoSubmit, onApply, applyLabel, isPending, overflowMode, }: FilterBarProps): import("react/jsx-runtime").JSX.Element;
|
|
170
249
|
type FilterBarFilterPanelChrome = "full" | "embedded";
|
|
171
|
-
export declare function FilterBarFilterPanel({ filter, chrome, }: {
|
|
250
|
+
export declare function FilterBarFilterPanel({ filter, chrome, autoSubmit, }: {
|
|
172
251
|
filter: FilterBarFilter;
|
|
173
252
|
chrome?: FilterBarFilterPanelChrome;
|
|
253
|
+
autoSubmit?: boolean;
|
|
174
254
|
}): import("react/jsx-runtime").JSX.Element;
|
|
175
|
-
export declare function FilterBarRangePanel({ kind, label, from, to, onApply, presets
|
|
255
|
+
export declare function FilterBarRangePanel({ kind, label, from, to, onApply, presets, timeEnabled, timeZone, timeZones, fromPlaceholder, toPlaceholder, emptyLabel, }: FilterBarRangeProps & {
|
|
176
256
|
kind: "date" | "time";
|
|
177
257
|
label: string;
|
|
178
258
|
}): import("react/jsx-runtime").JSX.Element;
|
|
259
|
+
export declare function clearFilterBarFilter(filter: FilterBarFilter): void;
|
|
260
|
+
export declare function isFilterBarFilterActive(filter: FilterBarFilter): boolean;
|
|
179
261
|
export {};
|
|
180
262
|
//# sourceMappingURL=FilterBar.d.ts.map
|