@osdk/react-components 0.2.0-beta.28 → 0.2.0-beta.29
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/CHANGELOG.md +8 -0
- package/build/browser/action-form/FormFieldApi.js.map +1 -1
- package/build/browser/action-form/fields/FormFieldRenderer.js +8 -0
- package/build/browser/action-form/fields/FormFieldRenderer.js.map +1 -1
- package/build/browser/action-form/fields/NumberInputField.js +130 -0
- package/build/browser/action-form/fields/NumberInputField.js.map +1 -0
- package/build/browser/action-form/fields/NumberInputField.module.css +96 -0
- package/build/browser/action-form/fields/NumberInputField.module.css.js +9 -0
- package/build/browser/base-components/checkbox/Checkbox.module.css +9 -1
- package/build/browser/base-components/combobox/Combobox.js +14 -1
- package/build/browser/base-components/combobox/Combobox.js.map +1 -1
- package/build/browser/base-components/combobox/Combobox.module.css +16 -6
- package/build/browser/base-components/combobox/Combobox.module.css.js +1 -0
- package/build/browser/base-components/searchable-menu/SearchableMenu.js +86 -0
- package/build/browser/base-components/searchable-menu/SearchableMenu.js.map +1 -0
- package/build/browser/base-components/searchable-menu/SearchableMenu.module.css +80 -0
- package/build/browser/base-components/searchable-menu/SearchableMenu.module.css.js +10 -0
- package/build/browser/filter-list/FilterList.js +3 -1
- package/build/browser/filter-list/FilterList.js.map +1 -1
- package/build/browser/filter-list/FilterListItemApi.js.map +1 -1
- package/build/browser/filter-list/base/AddFilterPopover.js +10 -21
- package/build/browser/filter-list/base/AddFilterPopover.js.map +1 -1
- package/build/browser/filter-list/base/AddFilterPopover.module.css +6 -40
- package/build/browser/filter-list/base/AddFilterPopover.module.css.js +1 -4
- package/build/browser/filter-list/base/BaseFilterList.js +4 -2
- package/build/browser/filter-list/base/BaseFilterList.js.map +1 -1
- package/build/browser/filter-list/base/ExcludeDropdown.module.css +7 -5
- package/build/browser/filter-list/base/FilterIcons.js +3 -3
- package/build/browser/filter-list/base/FilterIcons.js.map +1 -1
- package/build/browser/filter-list/base/FilterInputExcludeRow.js +14 -2
- package/build/browser/filter-list/base/FilterInputExcludeRow.js.map +1 -1
- package/build/browser/filter-list/base/FilterList.module.css +20 -4
- package/build/browser/filter-list/base/FilterList.module.css.js +1 -0
- package/build/browser/filter-list/base/FilterListHeader.js +1 -1
- package/build/browser/filter-list/base/FilterListHeader.js.map +1 -1
- package/build/browser/filter-list/base/FilterListHeader.module.css +8 -3
- package/build/browser/filter-list/base/FilterListItem.module.css +15 -9
- package/build/browser/filter-list/base/FilterListItem.module.css.js +2 -1
- package/build/browser/filter-list/base/inputs/ListogramInput.js +1 -1
- package/build/browser/filter-list/base/inputs/ListogramInput.js.map +1 -1
- package/build/browser/filter-list/base/inputs/ListogramInput.module.css +23 -0
- package/build/browser/filter-list/base/inputs/ListogramInput.module.css.js +1 -0
- package/build/browser/filter-list/base/inputs/MultiSelectInput.js +26 -43
- package/build/browser/filter-list/base/inputs/MultiSelectInput.js.map +1 -1
- package/build/browser/filter-list/base/inputs/MultiSelectInput.module.css +7 -8
- package/build/browser/filter-list/base/inputs/MultiSelectInput.module.css.js +1 -2
- package/build/browser/filter-list/base/inputs/RangeInput.module.css +7 -1
- package/build/browser/filter-list/base/inputs/SingleSelectInput.js +21 -30
- package/build/browser/filter-list/base/inputs/SingleSelectInput.js.map +1 -1
- package/build/browser/filter-list/base/inputs/SingleSelectInput.module.css +13 -23
- package/build/browser/filter-list/base/inputs/SingleSelectInput.module.css.js +3 -1
- package/build/browser/filter-list/hooks/useFilterListState.js +9 -1
- package/build/browser/filter-list/hooks/useFilterListState.js.map +1 -1
- package/build/browser/filter-list/inputs/ContainsTextFilterInput.js +1 -1
- package/build/browser/filter-list/inputs/ContainsTextFilterInput.js.map +1 -1
- package/build/browser/filter-list/inputs/ListogramFilterInput.js +9 -1
- package/build/browser/filter-list/inputs/ListogramFilterInput.js.map +1 -1
- package/build/browser/filter-list/inputs/MultiSelectFilterInput.js +9 -1
- package/build/browser/filter-list/inputs/MultiSelectFilterInput.js.map +1 -1
- package/build/browser/filter-list/inputs/PropertyFilterInput.js +1 -1
- package/build/browser/filter-list/inputs/PropertyFilterInput.js.map +1 -1
- package/build/browser/filter-list/inputs/SingleSelectFilterInput.js +9 -1
- package/build/browser/filter-list/inputs/SingleSelectFilterInput.js.map +1 -1
- package/build/browser/filter-list/inputs/TextTagsFilterInput.js +9 -1
- package/build/browser/filter-list/inputs/TextTagsFilterInput.js.map +1 -1
- package/build/browser/object-table/ColumnConfigDialog.module.css +1 -2
- package/build/browser/object-table/MultiColumnSortDialog.js +22 -59
- package/build/browser/object-table/MultiColumnSortDialog.js.map +1 -1
- package/build/browser/object-table/MultiColumnSortDialog.module.css +0 -64
- package/build/browser/object-table/MultiColumnSortDialog.module.css.js +0 -5
- package/build/browser/styles.css +314 -166
- package/build/cjs/public/experimental.cjs +501 -329
- package/build/cjs/public/experimental.cjs.map +1 -1
- package/build/cjs/public/experimental.css +378 -283
- package/build/cjs/public/experimental.css.map +1 -1
- package/build/cjs/public/experimental.d.cts +25 -12
- package/build/esm/action-form/FormFieldApi.js.map +1 -1
- package/build/esm/action-form/fields/FormFieldRenderer.js +8 -0
- package/build/esm/action-form/fields/FormFieldRenderer.js.map +1 -1
- package/build/esm/action-form/fields/NumberInputField.js +130 -0
- package/build/esm/action-form/fields/NumberInputField.js.map +1 -0
- package/build/esm/action-form/fields/NumberInputField.module.css +96 -0
- package/build/esm/base-components/checkbox/Checkbox.module.css +9 -1
- package/build/esm/base-components/combobox/Combobox.js +14 -1
- package/build/esm/base-components/combobox/Combobox.js.map +1 -1
- package/build/esm/base-components/combobox/Combobox.module.css +16 -6
- package/build/esm/base-components/searchable-menu/SearchableMenu.js +86 -0
- package/build/esm/base-components/searchable-menu/SearchableMenu.js.map +1 -0
- package/build/esm/base-components/searchable-menu/SearchableMenu.module.css +80 -0
- package/build/esm/filter-list/FilterList.js +3 -1
- package/build/esm/filter-list/FilterList.js.map +1 -1
- package/build/esm/filter-list/FilterListItemApi.js.map +1 -1
- package/build/esm/filter-list/base/AddFilterPopover.js +10 -21
- package/build/esm/filter-list/base/AddFilterPopover.js.map +1 -1
- package/build/esm/filter-list/base/AddFilterPopover.module.css +6 -40
- package/build/esm/filter-list/base/BaseFilterList.js +4 -2
- package/build/esm/filter-list/base/BaseFilterList.js.map +1 -1
- package/build/esm/filter-list/base/ExcludeDropdown.module.css +7 -5
- package/build/esm/filter-list/base/FilterIcons.js +3 -3
- package/build/esm/filter-list/base/FilterIcons.js.map +1 -1
- package/build/esm/filter-list/base/FilterInputExcludeRow.js +14 -2
- package/build/esm/filter-list/base/FilterInputExcludeRow.js.map +1 -1
- package/build/esm/filter-list/base/FilterList.module.css +20 -4
- package/build/esm/filter-list/base/FilterListHeader.js +1 -1
- package/build/esm/filter-list/base/FilterListHeader.js.map +1 -1
- package/build/esm/filter-list/base/FilterListHeader.module.css +8 -3
- package/build/esm/filter-list/base/FilterListItem.module.css +15 -9
- package/build/esm/filter-list/base/inputs/ListogramInput.js +1 -1
- package/build/esm/filter-list/base/inputs/ListogramInput.js.map +1 -1
- package/build/esm/filter-list/base/inputs/ListogramInput.module.css +23 -0
- package/build/esm/filter-list/base/inputs/MultiSelectInput.js +26 -43
- package/build/esm/filter-list/base/inputs/MultiSelectInput.js.map +1 -1
- package/build/esm/filter-list/base/inputs/MultiSelectInput.module.css +7 -8
- package/build/esm/filter-list/base/inputs/RangeInput.module.css +7 -1
- package/build/esm/filter-list/base/inputs/SingleSelectInput.js +21 -30
- package/build/esm/filter-list/base/inputs/SingleSelectInput.js.map +1 -1
- package/build/esm/filter-list/base/inputs/SingleSelectInput.module.css +13 -23
- package/build/esm/filter-list/hooks/useFilterListState.js +9 -1
- package/build/esm/filter-list/hooks/useFilterListState.js.map +1 -1
- package/build/esm/filter-list/inputs/ContainsTextFilterInput.js +1 -1
- package/build/esm/filter-list/inputs/ContainsTextFilterInput.js.map +1 -1
- package/build/esm/filter-list/inputs/ListogramFilterInput.js +9 -1
- package/build/esm/filter-list/inputs/ListogramFilterInput.js.map +1 -1
- package/build/esm/filter-list/inputs/MultiSelectFilterInput.js +9 -1
- package/build/esm/filter-list/inputs/MultiSelectFilterInput.js.map +1 -1
- package/build/esm/filter-list/inputs/PropertyFilterInput.js +1 -1
- package/build/esm/filter-list/inputs/PropertyFilterInput.js.map +1 -1
- package/build/esm/filter-list/inputs/SingleSelectFilterInput.js +9 -1
- package/build/esm/filter-list/inputs/SingleSelectFilterInput.js.map +1 -1
- package/build/esm/filter-list/inputs/TextTagsFilterInput.js +9 -1
- package/build/esm/filter-list/inputs/TextTagsFilterInput.js.map +1 -1
- package/build/esm/object-table/ColumnConfigDialog.module.css +1 -2
- package/build/esm/object-table/MultiColumnSortDialog.js +22 -59
- package/build/esm/object-table/MultiColumnSortDialog.js.map +1 -1
- package/build/esm/object-table/MultiColumnSortDialog.module.css +0 -64
- package/build/types/action-form/FormFieldApi.d.ts +22 -4
- package/build/types/action-form/FormFieldApi.d.ts.map +1 -1
- package/build/types/action-form/fields/FormFieldRenderer.d.ts.map +1 -1
- package/build/types/action-form/fields/NumberInputField.d.ts +3 -0
- package/build/types/action-form/fields/NumberInputField.d.ts.map +1 -0
- package/build/types/base-components/combobox/Combobox.d.ts +6 -1
- package/build/types/base-components/combobox/Combobox.d.ts.map +1 -1
- package/build/types/base-components/searchable-menu/SearchableMenu.d.ts +18 -0
- package/build/types/base-components/searchable-menu/SearchableMenu.d.ts.map +1 -0
- package/build/types/filter-list/FilterListItemApi.d.ts +4 -0
- package/build/types/filter-list/FilterListItemApi.d.ts.map +1 -1
- package/build/types/filter-list/base/AddFilterPopover.d.ts.map +1 -1
- package/build/types/filter-list/base/FilterInputExcludeRow.d.ts +2 -1
- package/build/types/filter-list/base/FilterInputExcludeRow.d.ts.map +1 -1
- package/build/types/filter-list/base/inputs/MultiSelectInput.d.ts +1 -3
- package/build/types/filter-list/base/inputs/MultiSelectInput.d.ts.map +1 -1
- package/build/types/filter-list/base/inputs/SingleSelectInput.d.ts.map +1 -1
- package/build/types/filter-list/hooks/useFilterListState.d.ts +1 -0
- package/build/types/filter-list/hooks/useFilterListState.d.ts.map +1 -1
- package/build/types/filter-list/inputs/ListogramFilterInput.d.ts.map +1 -1
- package/build/types/filter-list/inputs/MultiSelectFilterInput.d.ts.map +1 -1
- package/build/types/filter-list/inputs/SingleSelectFilterInput.d.ts.map +1 -1
- package/build/types/filter-list/inputs/TextTagsFilterInput.d.ts.map +1 -1
- package/build/types/object-table/MultiColumnSortDialog.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -4,7 +4,7 @@ var chunkMRRRZN44_cjs = require('../chunk-MRRRZN44.cjs');
|
|
|
4
4
|
var chunkUZ2E5NRX_cjs = require('../chunk-UZ2E5NRX.cjs');
|
|
5
5
|
var chunkHMQTYQEX_cjs = require('../chunk-HMQTYQEX.cjs');
|
|
6
6
|
var button = require('@base-ui/react/button');
|
|
7
|
-
var
|
|
7
|
+
var classnames14 = require('classnames');
|
|
8
8
|
var React76 = require('react');
|
|
9
9
|
var icons = require('@blueprintjs/icons');
|
|
10
10
|
var core = require('@dnd-kit/core');
|
|
@@ -17,7 +17,6 @@ var _switch = require('@base-ui/react/switch');
|
|
|
17
17
|
var experimental = require('@osdk/react/experimental');
|
|
18
18
|
var checkbox = require('@base-ui/react/checkbox');
|
|
19
19
|
var combobox = require('@base-ui/react/combobox');
|
|
20
|
-
var select = require('@base-ui/react/select');
|
|
21
20
|
var react = require('@osdk/react');
|
|
22
21
|
var reactTable = require('@tanstack/react-table');
|
|
23
22
|
var unstableDoNotUse = require('@osdk/react/unstable-do-not-use');
|
|
@@ -31,12 +30,13 @@ var pdfjsDist = require('pdfjs-dist');
|
|
|
31
30
|
var pdf_viewer_mjs = require('pdfjs-dist/web/pdf_viewer.mjs');
|
|
32
31
|
var reactHookForm = require('react-hook-form');
|
|
33
32
|
var popover = require('@base-ui/react/popover');
|
|
33
|
+
var select = require('@base-ui/react/select');
|
|
34
34
|
var radio = require('@base-ui/react/radio');
|
|
35
35
|
var radioGroup = require('@base-ui/react/radio-group');
|
|
36
36
|
|
|
37
37
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
38
38
|
|
|
39
|
-
var
|
|
39
|
+
var classnames14__default = /*#__PURE__*/_interopDefault(classnames14);
|
|
40
40
|
var React76__default = /*#__PURE__*/_interopDefault(React76);
|
|
41
41
|
|
|
42
42
|
function RemoveIcon() {
|
|
@@ -70,8 +70,8 @@ function ExpandIcon() {
|
|
|
70
70
|
});
|
|
71
71
|
}
|
|
72
72
|
function ResetIcon() {
|
|
73
|
-
return /* @__PURE__ */ React76__default.default.createElement(icons.
|
|
74
|
-
size:
|
|
73
|
+
return /* @__PURE__ */ React76__default.default.createElement(icons.Reset, {
|
|
74
|
+
size: 12
|
|
75
75
|
});
|
|
76
76
|
}
|
|
77
77
|
function CheckIcon() {
|
|
@@ -356,7 +356,7 @@ function FilterListItemInner({
|
|
|
356
356
|
const searchQuery = searchState.type === "open" ? searchState.query : "";
|
|
357
357
|
const searchQueryForInput = searchState.type === "open" ? searchState.query : void 0;
|
|
358
358
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
359
|
-
className:
|
|
359
|
+
className: classnames14__default.default(FilterListItem_default.filterItem, className),
|
|
360
360
|
style,
|
|
361
361
|
"data-has-selection": hasActiveSelection(filterState) || void 0
|
|
362
362
|
}, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
@@ -436,7 +436,7 @@ function SortableFilterListItemInner({
|
|
|
436
436
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
437
437
|
ref: setNodeRef,
|
|
438
438
|
style,
|
|
439
|
-
className:
|
|
439
|
+
className: classnames14__default.default(isDragging && FilterListItem_default.dragging)
|
|
440
440
|
}, /* @__PURE__ */ React76__default.default.createElement(FilterListItem, {
|
|
441
441
|
definition,
|
|
442
442
|
filterKey,
|
|
@@ -579,14 +579,14 @@ function FilterListContent({
|
|
|
579
579
|
}), [announcements]);
|
|
580
580
|
if (!renderDefinitions || renderDefinitions.length === 0) {
|
|
581
581
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
582
|
-
className:
|
|
582
|
+
className: classnames14__default.default(FilterListContent_default.content, className),
|
|
583
583
|
style,
|
|
584
584
|
"data-empty": "true"
|
|
585
585
|
});
|
|
586
586
|
}
|
|
587
587
|
if (enableSorting) {
|
|
588
588
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
589
|
-
className:
|
|
589
|
+
className: classnames14__default.default(FilterListContent_default.content, className),
|
|
590
590
|
style
|
|
591
591
|
}, /* @__PURE__ */ React76__default.default.createElement(core.DndContext, {
|
|
592
592
|
sensors,
|
|
@@ -630,7 +630,7 @@ function FilterListContent({
|
|
|
630
630
|
}))));
|
|
631
631
|
}
|
|
632
632
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
633
|
-
className:
|
|
633
|
+
className: classnames14__default.default(FilterListContent_default.content, className),
|
|
634
634
|
style
|
|
635
635
|
}, renderDefinitions.map((definition) => {
|
|
636
636
|
const filterKey = getFilterKey2(definition);
|
|
@@ -683,7 +683,7 @@ function FilterListHeaderInner({
|
|
|
683
683
|
className: FilterListHeader_default.resetButton,
|
|
684
684
|
onClick: onReset,
|
|
685
685
|
disabled: activeFilterCount === 0 && !hasVisibilityChanges
|
|
686
|
-
}, /* @__PURE__ */ React76__default.default.createElement(ResetIcon, null), " Reset"), showCollapseButton && /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
686
|
+
}, /* @__PURE__ */ React76__default.default.createElement(ResetIcon, null), " Reset filters"), showCollapseButton && /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
687
687
|
className: FilterListHeader_default.collapseButton,
|
|
688
688
|
onClick: handleCollapseClick,
|
|
689
689
|
"aria-expanded": !collapsed,
|
|
@@ -723,7 +723,7 @@ function BaseFilterList(props) {
|
|
|
723
723
|
}, [onCollapsedChange]);
|
|
724
724
|
const isCollapsed = collapsed && onCollapsedChange != null;
|
|
725
725
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
726
|
-
className:
|
|
726
|
+
className: classnames14__default.default(FilterList_default.filterList, className)
|
|
727
727
|
}, isCollapsed && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
728
728
|
className: FilterList_default.filterListCollapsed,
|
|
729
729
|
"data-collapsed": "true"
|
|
@@ -734,7 +734,7 @@ function BaseFilterList(props) {
|
|
|
734
734
|
}, /* @__PURE__ */ React76__default.default.createElement(ExpandIcon, null)), /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
735
735
|
className: FilterList_default.collapsedLabel
|
|
736
736
|
}, title ?? "Filters")), /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
737
|
-
className:
|
|
737
|
+
className: classnames14__default.default(FilterList_default.expandedContent, isCollapsed && FilterList_default.hiddenContent),
|
|
738
738
|
"data-active-count": activeFilterCount
|
|
739
739
|
}, showHeader && /* @__PURE__ */ React76__default.default.createElement(FilterListHeader, {
|
|
740
740
|
title,
|
|
@@ -746,7 +746,9 @@ function BaseFilterList(props) {
|
|
|
746
746
|
showActiveFilterCount,
|
|
747
747
|
activeFilterCount,
|
|
748
748
|
hasVisibilityChanges
|
|
749
|
-
}), /* @__PURE__ */ React76__default.default.createElement(
|
|
749
|
+
}), /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
750
|
+
className: FilterList_default.scrollableContent
|
|
751
|
+
}, /* @__PURE__ */ React76__default.default.createElement(FilterListContent, {
|
|
750
752
|
filterDefinitions,
|
|
751
753
|
filterStates,
|
|
752
754
|
onFilterStateChanged,
|
|
@@ -755,7 +757,7 @@ function BaseFilterList(props) {
|
|
|
755
757
|
getFilterKey: getFilterKey2,
|
|
756
758
|
getFilterLabel: getFilterLabel2,
|
|
757
759
|
enableSorting
|
|
758
|
-
}), showAddButton && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
760
|
+
})), showAddButton && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
759
761
|
className: FilterList_default.addButtonContainer
|
|
760
762
|
}, renderAddFilterButton ? renderAddFilterButton() : /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
761
763
|
type: "button",
|
|
@@ -764,6 +766,102 @@ function BaseFilterList(props) {
|
|
|
764
766
|
}, "+ Add filter"))));
|
|
765
767
|
}
|
|
766
768
|
|
|
769
|
+
// src/base-components/search-bar/SearchBar.module.css
|
|
770
|
+
var SearchBar_default = {};
|
|
771
|
+
|
|
772
|
+
// src/base-components/search-bar/SearchBar.tsx
|
|
773
|
+
function SearchBar({
|
|
774
|
+
value,
|
|
775
|
+
onChange,
|
|
776
|
+
placeholder = "Search",
|
|
777
|
+
"aria-label": ariaLabel,
|
|
778
|
+
className,
|
|
779
|
+
onKeyDown
|
|
780
|
+
}) {
|
|
781
|
+
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
782
|
+
className: classnames14__default.default(SearchBar_default.searchBar, className)
|
|
783
|
+
}, /* @__PURE__ */ React76__default.default.createElement(icons.Search, {
|
|
784
|
+
className: SearchBar_default.searchIcon
|
|
785
|
+
}), /* @__PURE__ */ React76__default.default.createElement(input.Input, {
|
|
786
|
+
type: "text",
|
|
787
|
+
placeholder,
|
|
788
|
+
"aria-label": ariaLabel ?? placeholder,
|
|
789
|
+
value,
|
|
790
|
+
onChange,
|
|
791
|
+
className: SearchBar_default.searchInput,
|
|
792
|
+
onKeyDown
|
|
793
|
+
}));
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
// src/base-components/searchable-menu/SearchableMenu.module.css
|
|
797
|
+
var SearchableMenu_default = {};
|
|
798
|
+
|
|
799
|
+
// src/base-components/searchable-menu/SearchableMenu.tsx
|
|
800
|
+
function SearchableMenuInner({
|
|
801
|
+
items,
|
|
802
|
+
onItemSelected,
|
|
803
|
+
trigger,
|
|
804
|
+
triggerClassName,
|
|
805
|
+
disabled,
|
|
806
|
+
searchPlaceholder = "Search",
|
|
807
|
+
emptyMessage = "No matching items",
|
|
808
|
+
className
|
|
809
|
+
}) {
|
|
810
|
+
const [searchQuery, setSearchQuery] = React76.useState("");
|
|
811
|
+
const filteredItems = React76.useMemo(() => {
|
|
812
|
+
const query = searchQuery.toLowerCase().trim();
|
|
813
|
+
if (!query) return items;
|
|
814
|
+
return items.filter((item) => item.label.toLowerCase().includes(query));
|
|
815
|
+
}, [items, searchQuery]);
|
|
816
|
+
const handleSearchChange = React76.useCallback((event) => {
|
|
817
|
+
setSearchQuery(event.target.value);
|
|
818
|
+
}, []);
|
|
819
|
+
const handleMenuOpenChange = React76.useCallback((open) => {
|
|
820
|
+
if (open) {
|
|
821
|
+
setSearchQuery("");
|
|
822
|
+
}
|
|
823
|
+
}, []);
|
|
824
|
+
const handleKeyDown = React76.useCallback((event) => {
|
|
825
|
+
event.stopPropagation();
|
|
826
|
+
}, []);
|
|
827
|
+
return /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Root, {
|
|
828
|
+
onOpenChange: handleMenuOpenChange
|
|
829
|
+
}, /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Trigger, {
|
|
830
|
+
className: triggerClassName,
|
|
831
|
+
disabled
|
|
832
|
+
}, trigger), /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Portal, null, /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Positioner, {
|
|
833
|
+
className: classnames14__default.default(SearchableMenu_default.positioner, className),
|
|
834
|
+
sideOffset: 4
|
|
835
|
+
}, /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Popup, {
|
|
836
|
+
className: SearchableMenu_default.popup
|
|
837
|
+
}, /* @__PURE__ */ React76__default.default.createElement(SearchBar, {
|
|
838
|
+
value: searchQuery,
|
|
839
|
+
onChange: handleSearchChange,
|
|
840
|
+
placeholder: searchPlaceholder,
|
|
841
|
+
"aria-label": searchPlaceholder,
|
|
842
|
+
className: SearchableMenu_default.searchContainer,
|
|
843
|
+
onKeyDown: handleKeyDown
|
|
844
|
+
}), filteredItems.map((item) => /* @__PURE__ */ React76__default.default.createElement(SearchableMenuItemRow, {
|
|
845
|
+
key: item.key,
|
|
846
|
+
item,
|
|
847
|
+
onItemSelected
|
|
848
|
+
})), filteredItems.length === 0 && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
849
|
+
className: SearchableMenu_default.emptyState
|
|
850
|
+
}, emptyMessage)))));
|
|
851
|
+
}
|
|
852
|
+
var SearchableMenu = /* @__PURE__ */ React76.memo(SearchableMenuInner);
|
|
853
|
+
function SearchableMenuItemRowInner({
|
|
854
|
+
item,
|
|
855
|
+
onItemSelected
|
|
856
|
+
}) {
|
|
857
|
+
const handleClick = React76.useCallback(() => onItemSelected(item.key), [onItemSelected, item.key]);
|
|
858
|
+
return /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Item, {
|
|
859
|
+
className: SearchableMenu_default.menuItem,
|
|
860
|
+
onClick: handleClick
|
|
861
|
+
}, item.label);
|
|
862
|
+
}
|
|
863
|
+
var SearchableMenuItemRow = /* @__PURE__ */ React76.memo(SearchableMenuItemRowInner);
|
|
864
|
+
|
|
767
865
|
// src/filter-list/base/AddFilterPopover.module.css
|
|
768
866
|
var AddFilterPopover_default = {};
|
|
769
867
|
|
|
@@ -773,25 +871,14 @@ function AddFilterPopoverInner({
|
|
|
773
871
|
onShowFilter,
|
|
774
872
|
renderTrigger
|
|
775
873
|
}) {
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
}, renderTrigger != null ? renderTrigger() : "+ Add filter"), /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Portal, null, /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Positioner, {
|
|
785
|
-
className: AddFilterPopover_default.positioner,
|
|
786
|
-
sideOffset: 4
|
|
787
|
-
}, /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Popup, {
|
|
788
|
-
className: AddFilterPopover_default.popup
|
|
789
|
-
}, hiddenDefinitions.map((item) => /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Item, {
|
|
790
|
-
key: item.key,
|
|
791
|
-
className: AddFilterPopover_default.menuItem,
|
|
792
|
-
"data-key": item.key,
|
|
793
|
-
onClick: handleItemClick
|
|
794
|
-
}, item.label))))));
|
|
874
|
+
return /* @__PURE__ */ React76__default.default.createElement(SearchableMenu, {
|
|
875
|
+
items: hiddenDefinitions,
|
|
876
|
+
onItemSelected: onShowFilter,
|
|
877
|
+
trigger: renderTrigger != null ? renderTrigger() : "+ Add filter",
|
|
878
|
+
triggerClassName: renderTrigger == null ? AddFilterPopover_default.trigger : void 0,
|
|
879
|
+
searchPlaceholder: "Search filters",
|
|
880
|
+
emptyMessage: "No matching filters"
|
|
881
|
+
});
|
|
795
882
|
}
|
|
796
883
|
var AddFilterPopover = /* @__PURE__ */ React76.memo(AddFilterPopoverInner);
|
|
797
884
|
|
|
@@ -834,7 +921,7 @@ function ContainsTextInputInner({
|
|
|
834
921
|
onChangeRef.current(void 0);
|
|
835
922
|
}, [debouncedOnChange]);
|
|
836
923
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
837
|
-
className:
|
|
924
|
+
className: classnames14__default.default(ContainsTextInput_default.textInput, className),
|
|
838
925
|
style,
|
|
839
926
|
"data-has-value": !!localValue
|
|
840
927
|
}, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
@@ -876,9 +963,9 @@ function Switch({
|
|
|
876
963
|
...rest
|
|
877
964
|
}) {
|
|
878
965
|
return /* @__PURE__ */ React76__default.default.createElement(_switch.Switch.Root, _extends2({
|
|
879
|
-
className:
|
|
966
|
+
className: classnames14__default.default(Switch_default.osdkSwitchRoot, className)
|
|
880
967
|
}, rest), /* @__PURE__ */ React76__default.default.createElement(_switch.Switch.Thumb, _extends2({}, thumbProps, {
|
|
881
|
-
className:
|
|
968
|
+
className: classnames14__default.default(Switch_default.osdkSwitchThumb, thumbProps?.className)
|
|
882
969
|
})));
|
|
883
970
|
}
|
|
884
971
|
|
|
@@ -893,7 +980,7 @@ function ToggleInputInner({
|
|
|
893
980
|
className,
|
|
894
981
|
style
|
|
895
982
|
}) {
|
|
896
|
-
const rootClassName =
|
|
983
|
+
const rootClassName = classnames14__default.default(ToggleInput_default.toggleInput, className);
|
|
897
984
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
898
985
|
className: rootClassName,
|
|
899
986
|
style,
|
|
@@ -1084,7 +1171,7 @@ function RangeInputInner({
|
|
|
1084
1171
|
debouncedMaxChange(newValue);
|
|
1085
1172
|
}, [debouncedMaxChange]);
|
|
1086
1173
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1087
|
-
className:
|
|
1174
|
+
className: classnames14__default.default(RangeInput_default.rangeInput, className),
|
|
1088
1175
|
style,
|
|
1089
1176
|
"data-loading": isLoading
|
|
1090
1177
|
}, showHistogram && buckets.length === 0 && !isLoading && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
@@ -1187,11 +1274,11 @@ function Checkbox({
|
|
|
1187
1274
|
...rest
|
|
1188
1275
|
}) {
|
|
1189
1276
|
return /* @__PURE__ */ React76__default.default.createElement(checkbox.Checkbox.Root, _extends5({
|
|
1190
|
-
className:
|
|
1277
|
+
className: classnames14__default.default(Checkbox_default.osdkCheckboxRoot, className),
|
|
1191
1278
|
indeterminate,
|
|
1192
1279
|
"data-excluding": isExcluding || void 0
|
|
1193
1280
|
}, rest), /* @__PURE__ */ React76__default.default.createElement(checkbox.Checkbox.Indicator, _extends5({}, indicatorProps, {
|
|
1194
|
-
className:
|
|
1281
|
+
className: classnames14__default.default(Checkbox_default.osdkCheckboxIndicator, indicatorProps?.className)
|
|
1195
1282
|
}), indeterminate ? /* @__PURE__ */ React76__default.default.createElement(icons.Minus, {
|
|
1196
1283
|
size: 16
|
|
1197
1284
|
}) : isExcluding ? /* @__PURE__ */ React76__default.default.createElement(icons.Cross, {
|
|
@@ -1216,7 +1303,7 @@ function SkeletonBar({
|
|
|
1216
1303
|
}) {
|
|
1217
1304
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1218
1305
|
"aria-hidden": "true",
|
|
1219
|
-
className:
|
|
1306
|
+
className: classnames14__default.default(SkeletonBar_default.skeletonBar, className),
|
|
1220
1307
|
style: {
|
|
1221
1308
|
width,
|
|
1222
1309
|
height,
|
|
@@ -1298,7 +1385,7 @@ function ListogramInputInner({
|
|
|
1298
1385
|
}, [sortedValues, maxVisibleItems, isExpanded]);
|
|
1299
1386
|
const hasMore = maxVisibleItems != null && sortedValues.length > maxVisibleItems;
|
|
1300
1387
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1301
|
-
className:
|
|
1388
|
+
className: classnames14__default.default(ListogramInput_default.listogram, className),
|
|
1302
1389
|
style,
|
|
1303
1390
|
"data-loading": isLoading && filteredValues.length > 0
|
|
1304
1391
|
}, error && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
@@ -1343,7 +1430,7 @@ function ListogramInputInner({
|
|
|
1343
1430
|
})));
|
|
1344
1431
|
}), hasMore && !isExpanded && /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
1345
1432
|
type: "button",
|
|
1346
|
-
className: ListogramInput_default.
|
|
1433
|
+
className: ListogramInput_default.viewAllButton,
|
|
1347
1434
|
onClick: () => setIsExpanded(true)
|
|
1348
1435
|
}, "View all (", sortedValues.length, ")")));
|
|
1349
1436
|
}
|
|
@@ -1384,7 +1471,7 @@ function MultiDateInputInner({
|
|
|
1384
1471
|
}
|
|
1385
1472
|
}, [addDate]);
|
|
1386
1473
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1387
|
-
className:
|
|
1474
|
+
className: classnames14__default.default(MultiDateInput_default.multiDate, className),
|
|
1388
1475
|
style
|
|
1389
1476
|
}, selectedDates.length > 0 && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1390
1477
|
className: shared_default.tagContainer
|
|
@@ -1430,7 +1517,7 @@ function ComboboxSearchInput({
|
|
|
1430
1517
|
...rest
|
|
1431
1518
|
}) {
|
|
1432
1519
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1433
|
-
className:
|
|
1520
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxInputWrapper, className)
|
|
1434
1521
|
}, /* @__PURE__ */ React76__default.default.createElement(icons.Search, {
|
|
1435
1522
|
className: Combobox_default.osdkComboboxSearchIcon
|
|
1436
1523
|
}), /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Input, _extends6({
|
|
@@ -1442,7 +1529,7 @@ function ComboboxInput({
|
|
|
1442
1529
|
...rest
|
|
1443
1530
|
}) {
|
|
1444
1531
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Input, _extends6({
|
|
1445
|
-
className:
|
|
1532
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxInput, className)
|
|
1446
1533
|
}, rest));
|
|
1447
1534
|
}
|
|
1448
1535
|
function ComboboxPositioner({
|
|
@@ -1451,7 +1538,7 @@ function ComboboxPositioner({
|
|
|
1451
1538
|
...rest
|
|
1452
1539
|
}) {
|
|
1453
1540
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Positioner, _extends6({
|
|
1454
|
-
className:
|
|
1541
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxPositioner, className),
|
|
1455
1542
|
sideOffset: 4
|
|
1456
1543
|
}, rest), children);
|
|
1457
1544
|
}
|
|
@@ -1461,7 +1548,7 @@ function ComboboxPopup({
|
|
|
1461
1548
|
...rest
|
|
1462
1549
|
}) {
|
|
1463
1550
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Popup, _extends6({
|
|
1464
|
-
className:
|
|
1551
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxPopup, className)
|
|
1465
1552
|
}, rest), children);
|
|
1466
1553
|
}
|
|
1467
1554
|
function ComboboxItem({
|
|
@@ -1470,7 +1557,7 @@ function ComboboxItem({
|
|
|
1470
1557
|
...rest
|
|
1471
1558
|
}) {
|
|
1472
1559
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Item, _extends6({
|
|
1473
|
-
className:
|
|
1560
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxItem, className)
|
|
1474
1561
|
}, rest), children);
|
|
1475
1562
|
}
|
|
1476
1563
|
function ComboboxChips({
|
|
@@ -1479,7 +1566,7 @@ function ComboboxChips({
|
|
|
1479
1566
|
}) {
|
|
1480
1567
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Chips, {
|
|
1481
1568
|
render: (props) => /* @__PURE__ */ React76__default.default.createElement("div", _extends6({}, props, {
|
|
1482
|
-
className:
|
|
1569
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxInputWrapper, className)
|
|
1483
1570
|
}), props.children)
|
|
1484
1571
|
}, children);
|
|
1485
1572
|
}
|
|
@@ -1489,7 +1576,7 @@ function ComboboxChip({
|
|
|
1489
1576
|
...rest
|
|
1490
1577
|
}) {
|
|
1491
1578
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Chip, _extends6({
|
|
1492
|
-
className:
|
|
1579
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxChip, className)
|
|
1493
1580
|
}, rest), children);
|
|
1494
1581
|
}
|
|
1495
1582
|
function ComboboxChipRemove({
|
|
@@ -1497,7 +1584,7 @@ function ComboboxChipRemove({
|
|
|
1497
1584
|
...rest
|
|
1498
1585
|
}) {
|
|
1499
1586
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.ChipRemove, _extends6({
|
|
1500
|
-
className:
|
|
1587
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxChipRemove, className),
|
|
1501
1588
|
"aria-label": "Remove"
|
|
1502
1589
|
}, rest), /* @__PURE__ */ React76__default.default.createElement(icons.Cross, null));
|
|
1503
1590
|
}
|
|
@@ -1506,7 +1593,7 @@ function ComboboxClear({
|
|
|
1506
1593
|
...rest
|
|
1507
1594
|
}) {
|
|
1508
1595
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Clear, _extends6({
|
|
1509
|
-
className:
|
|
1596
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxClear, className),
|
|
1510
1597
|
"aria-label": "Clear all"
|
|
1511
1598
|
}, rest), /* @__PURE__ */ React76__default.default.createElement(icons.Cross, null));
|
|
1512
1599
|
}
|
|
@@ -1515,7 +1602,7 @@ function ComboboxEmpty({
|
|
|
1515
1602
|
className
|
|
1516
1603
|
}) {
|
|
1517
1604
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.Empty, {
|
|
1518
|
-
className:
|
|
1605
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxEmpty, className)
|
|
1519
1606
|
}, children);
|
|
1520
1607
|
}
|
|
1521
1608
|
function ComboboxList({
|
|
@@ -1524,9 +1611,21 @@ function ComboboxList({
|
|
|
1524
1611
|
...rest
|
|
1525
1612
|
}) {
|
|
1526
1613
|
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.List, _extends6({
|
|
1527
|
-
className:
|
|
1614
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxList, className)
|
|
1528
1615
|
}, rest), children);
|
|
1529
1616
|
}
|
|
1617
|
+
function ComboboxItemIndicator({
|
|
1618
|
+
className,
|
|
1619
|
+
children,
|
|
1620
|
+
...rest
|
|
1621
|
+
}) {
|
|
1622
|
+
return /* @__PURE__ */ React76__default.default.createElement(combobox.Combobox.ItemIndicator, _extends6({
|
|
1623
|
+
className: classnames14__default.default(Combobox_default.osdkComboboxItemIndicator, className),
|
|
1624
|
+
keepMounted: true
|
|
1625
|
+
}, rest), children ?? /* @__PURE__ */ React76__default.default.createElement(icons.Tick, {
|
|
1626
|
+
size: 16
|
|
1627
|
+
}));
|
|
1628
|
+
}
|
|
1530
1629
|
var Combobox = {
|
|
1531
1630
|
Root: combobox.Combobox.Root,
|
|
1532
1631
|
SearchInput: ComboboxSearchInput,
|
|
@@ -1536,6 +1635,7 @@ var Combobox = {
|
|
|
1536
1635
|
Popup: ComboboxPopup,
|
|
1537
1636
|
List: ComboboxList,
|
|
1538
1637
|
Item: ComboboxItem,
|
|
1638
|
+
ItemIndicator: ComboboxItemIndicator,
|
|
1539
1639
|
Chips: ComboboxChips,
|
|
1540
1640
|
Chip: ComboboxChip,
|
|
1541
1641
|
ChipRemove: ComboboxChipRemove,
|
|
@@ -1557,23 +1657,35 @@ function MultiSelectInputInner({
|
|
|
1557
1657
|
className,
|
|
1558
1658
|
style,
|
|
1559
1659
|
placeholder = "Select values...",
|
|
1560
|
-
maxDisplayedTags = 3,
|
|
1561
|
-
showClearAll = true,
|
|
1562
1660
|
ariaLabel = "Search values"
|
|
1563
1661
|
}) {
|
|
1564
1662
|
const handleValueChange = React76.useCallback((newValues) => {
|
|
1565
1663
|
onChange(newValues ?? []);
|
|
1566
1664
|
}, [onChange]);
|
|
1567
|
-
const
|
|
1568
|
-
|
|
1569
|
-
}, [
|
|
1570
|
-
const
|
|
1571
|
-
|
|
1572
|
-
|
|
1573
|
-
|
|
1574
|
-
const
|
|
1665
|
+
const items = React76.useMemo(() => values.map(({
|
|
1666
|
+
value
|
|
1667
|
+
}) => value), [values]);
|
|
1668
|
+
const countByValue = React76.useMemo(() => new Map(values.map(({
|
|
1669
|
+
value,
|
|
1670
|
+
count
|
|
1671
|
+
}) => [value, count])), [values]);
|
|
1672
|
+
const renderItem = React76.useCallback((value) => /* @__PURE__ */ React76__default.default.createElement(Combobox.Item, {
|
|
1673
|
+
key: value,
|
|
1674
|
+
value
|
|
1675
|
+
}, /* @__PURE__ */ React76__default.default.createElement(Combobox.ItemIndicator, null), /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
1676
|
+
className: MultiSelectInput_default.itemLabel
|
|
1677
|
+
}, value), /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
1678
|
+
className: MultiSelectInput_default.itemCount
|
|
1679
|
+
}, "(", (countByValue.get(value) ?? 0).toLocaleString(), ")")), [countByValue]);
|
|
1680
|
+
const renderChips = React76.useCallback((selectedItems) => /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, selectedItems.map((value) => /* @__PURE__ */ React76__default.default.createElement(Combobox.Chip, {
|
|
1681
|
+
key: value,
|
|
1682
|
+
"aria-label": value
|
|
1683
|
+
}, value, /* @__PURE__ */ React76__default.default.createElement(Combobox.ChipRemove, null))), /* @__PURE__ */ React76__default.default.createElement(Combobox.Input, {
|
|
1684
|
+
placeholder: selectedItems.length > 0 ? "" : placeholder,
|
|
1685
|
+
"aria-label": ariaLabel
|
|
1686
|
+
})), [placeholder, ariaLabel]);
|
|
1575
1687
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1576
|
-
className:
|
|
1688
|
+
className: classnames14__default.default(MultiSelectInput_default.multiSelect, className),
|
|
1577
1689
|
style,
|
|
1578
1690
|
"data-loading": isLoading
|
|
1579
1691
|
}, error && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
@@ -1583,39 +1695,11 @@ function MultiSelectInputInner({
|
|
|
1583
1695
|
}, isLoading ? "Loading options..." : "No options available"), (values.length > 0 || isLoading) && /* @__PURE__ */ React76__default.default.createElement(Combobox.Root, {
|
|
1584
1696
|
multiple: true,
|
|
1585
1697
|
value: selectedValues,
|
|
1586
|
-
onValueChange: handleValueChange
|
|
1698
|
+
onValueChange: handleValueChange,
|
|
1699
|
+
items
|
|
1587
1700
|
}, isLoading && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1588
1701
|
className: shared_default.loadingMessage
|
|
1589
|
-
}, "Updating..."),
|
|
1590
|
-
className: shared_default.tagContainer
|
|
1591
|
-
}, displayedTags.map((value) => /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
1592
|
-
key: value,
|
|
1593
|
-
className: shared_default.tag
|
|
1594
|
-
}, value, /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
1595
|
-
type: "button",
|
|
1596
|
-
className: shared_default.tagRemove,
|
|
1597
|
-
onClick: () => removeValue(value),
|
|
1598
|
-
"aria-label": `Remove ${value}`
|
|
1599
|
-
}, "\xD7"))), remainingCount > 0 && /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
1600
|
-
className: shared_default.tag
|
|
1601
|
-
}, "+", remainingCount, " more")), /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1602
|
-
className: MultiSelectInput_default.inputRow
|
|
1603
|
-
}, /* @__PURE__ */ React76__default.default.createElement(Combobox.SearchInput, {
|
|
1604
|
-
placeholder: selectedValues.length > 0 ? `${selectedValues.length} selected` : placeholder,
|
|
1605
|
-
"aria-label": ariaLabel
|
|
1606
|
-
}), showClearAll && selectedValues.length > 0 && /* @__PURE__ */ React76__default.default.createElement(Combobox.Clear, {
|
|
1607
|
-
className: MultiSelectInput_default.clearButton,
|
|
1608
|
-
onClick: clearAll,
|
|
1609
|
-
"aria-label": "Clear all selections"
|
|
1610
|
-
})), /* @__PURE__ */ React76__default.default.createElement(Combobox.Portal, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Positioner, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Popup, null, values.length === 0 ? /* @__PURE__ */ React76__default.default.createElement(Combobox.Empty, null, "No options available") : values.map(({
|
|
1611
|
-
value,
|
|
1612
|
-
count
|
|
1613
|
-
}) => /* @__PURE__ */ React76__default.default.createElement(Combobox.Item, {
|
|
1614
|
-
key: value,
|
|
1615
|
-
value
|
|
1616
|
-
}, /* @__PURE__ */ React76__default.default.createElement("span", null, value), /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
1617
|
-
className: MultiSelectInput_default.itemCount
|
|
1618
|
-
}, "(", count.toLocaleString(), ")"))))))));
|
|
1702
|
+
}, "Updating..."), /* @__PURE__ */ React76__default.default.createElement(Combobox.Chips, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Value, null, renderChips)), /* @__PURE__ */ React76__default.default.createElement(Combobox.Portal, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Positioner, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Popup, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Empty, null, "No matching options"), /* @__PURE__ */ React76__default.default.createElement(Combobox.List, null, renderItem))))));
|
|
1619
1703
|
}
|
|
1620
1704
|
var MultiSelectInput = /* @__PURE__ */ React76.memo(MultiSelectInputInner);
|
|
1621
1705
|
|
|
@@ -1638,7 +1722,7 @@ function NullValueWrapperInner({
|
|
|
1638
1722
|
onIncludeNullChange(!includeNull);
|
|
1639
1723
|
}, [includeNull, onIncludeNullChange]);
|
|
1640
1724
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1641
|
-
className:
|
|
1725
|
+
className: classnames14__default.default(NullValueWrapper_default.nullWrapper, className),
|
|
1642
1726
|
style
|
|
1643
1727
|
}, children, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1644
1728
|
className: NullValueWrapper_default.nullValueRow,
|
|
@@ -1718,7 +1802,7 @@ function SingleDateInputInner({
|
|
|
1718
1802
|
onChange(void 0);
|
|
1719
1803
|
}, [onChange]);
|
|
1720
1804
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1721
|
-
className:
|
|
1805
|
+
className: classnames14__default.default(SingleDateInput_default.singleDate, className),
|
|
1722
1806
|
style
|
|
1723
1807
|
}, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1724
1808
|
className: SingleDateInput_default.dateContainer
|
|
@@ -1739,80 +1823,6 @@ function SingleDateInputInner({
|
|
|
1739
1823
|
}
|
|
1740
1824
|
var SingleDateInput = /* @__PURE__ */ React76.memo(SingleDateInputInner);
|
|
1741
1825
|
|
|
1742
|
-
// src/base-components/select/Select.module.css
|
|
1743
|
-
var Select_default = {};
|
|
1744
|
-
|
|
1745
|
-
// src/base-components/select/Select.tsx
|
|
1746
|
-
function _extends8() {
|
|
1747
|
-
return _extends8 = Object.assign ? Object.assign.bind() : function(n) {
|
|
1748
|
-
for (var e = 1; e < arguments.length; e++) {
|
|
1749
|
-
var t = arguments[e];
|
|
1750
|
-
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
1751
|
-
}
|
|
1752
|
-
return n;
|
|
1753
|
-
}, _extends8.apply(null, arguments);
|
|
1754
|
-
}
|
|
1755
|
-
function SelectRoot({
|
|
1756
|
-
children,
|
|
1757
|
-
...rest
|
|
1758
|
-
}) {
|
|
1759
|
-
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Root, rest, children);
|
|
1760
|
-
}
|
|
1761
|
-
function SelectTrigger({
|
|
1762
|
-
className,
|
|
1763
|
-
placeholder,
|
|
1764
|
-
children,
|
|
1765
|
-
...rest
|
|
1766
|
-
}) {
|
|
1767
|
-
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Trigger, _extends8({
|
|
1768
|
-
className: classnames13__default.default(Select_default.osdkSelectTrigger, className)
|
|
1769
|
-
}, rest), children ?? /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1770
|
-
className: Select_default.osdkSelectValueContainer
|
|
1771
|
-
}, /* @__PURE__ */ React76__default.default.createElement(select.Select.Value, {
|
|
1772
|
-
className: Select_default.osdkSelectValue
|
|
1773
|
-
}), placeholder != null && /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
1774
|
-
className: Select_default.osdkSelectPlaceholder
|
|
1775
|
-
}, placeholder)), /* @__PURE__ */ React76__default.default.createElement(select.Select.Icon, {
|
|
1776
|
-
className: Select_default.osdkSelectIcon
|
|
1777
|
-
}, /* @__PURE__ */ React76__default.default.createElement(icons.CaretDown, null))));
|
|
1778
|
-
}
|
|
1779
|
-
function SelectPositioner({
|
|
1780
|
-
className,
|
|
1781
|
-
children,
|
|
1782
|
-
...rest
|
|
1783
|
-
}) {
|
|
1784
|
-
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Positioner, _extends8({
|
|
1785
|
-
className: classnames13__default.default(Select_default.osdkSelectPositioner, className),
|
|
1786
|
-
sideOffset: 4
|
|
1787
|
-
}, rest), children);
|
|
1788
|
-
}
|
|
1789
|
-
function SelectPopup({
|
|
1790
|
-
className,
|
|
1791
|
-
children,
|
|
1792
|
-
...rest
|
|
1793
|
-
}) {
|
|
1794
|
-
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Popup, _extends8({
|
|
1795
|
-
className: classnames13__default.default(Select_default.osdkSelectPopup, className)
|
|
1796
|
-
}, rest), children);
|
|
1797
|
-
}
|
|
1798
|
-
function SelectItem({
|
|
1799
|
-
className,
|
|
1800
|
-
children,
|
|
1801
|
-
...rest
|
|
1802
|
-
}) {
|
|
1803
|
-
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Item, _extends8({
|
|
1804
|
-
className: classnames13__default.default(Select_default.osdkSelectItem, className)
|
|
1805
|
-
}, rest), /* @__PURE__ */ React76__default.default.createElement(select.Select.ItemText, null, children));
|
|
1806
|
-
}
|
|
1807
|
-
var Select = {
|
|
1808
|
-
Root: SelectRoot,
|
|
1809
|
-
Trigger: SelectTrigger,
|
|
1810
|
-
Portal: select.Select.Portal,
|
|
1811
|
-
Positioner: SelectPositioner,
|
|
1812
|
-
Popup: SelectPopup,
|
|
1813
|
-
Item: SelectItem
|
|
1814
|
-
};
|
|
1815
|
-
|
|
1816
1826
|
// src/filter-list/base/inputs/SingleSelectInput.module.css
|
|
1817
1827
|
var SingleSelectInput_default = {};
|
|
1818
1828
|
|
|
@@ -1833,21 +1843,23 @@ function SingleSelectInputInner({
|
|
|
1833
1843
|
const handleValueChange = React76.useCallback((value) => {
|
|
1834
1844
|
onChange(value ?? void 0);
|
|
1835
1845
|
}, [onChange]);
|
|
1836
|
-
const
|
|
1837
|
-
|
|
1838
|
-
}, [
|
|
1839
|
-
const
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
},
|
|
1846
|
+
const items = React76.useMemo(() => values.map(({
|
|
1847
|
+
value
|
|
1848
|
+
}) => value), [values]);
|
|
1849
|
+
const countByValue = React76.useMemo(() => new Map(values.map(({
|
|
1850
|
+
value,
|
|
1851
|
+
count
|
|
1852
|
+
}) => [value, count])), [values]);
|
|
1853
|
+
const renderItem = React76.useCallback((value) => /* @__PURE__ */ React76__default.default.createElement(Combobox.Item, {
|
|
1854
|
+
key: value,
|
|
1855
|
+
value
|
|
1856
|
+
}, /* @__PURE__ */ React76__default.default.createElement(Combobox.ItemIndicator, null), /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
1857
|
+
className: SingleSelectInput_default.itemLabel
|
|
1858
|
+
}, value), showCounts && /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
1859
|
+
className: SingleSelectInput_default.itemCount
|
|
1860
|
+
}, "(", (countByValue.get(value) ?? 0).toLocaleString(), ")")), [countByValue, showCounts]);
|
|
1849
1861
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1850
|
-
className:
|
|
1862
|
+
className: classnames14__default.default(SingleSelectInput_default.singleSelect, className),
|
|
1851
1863
|
style,
|
|
1852
1864
|
"data-loading": isLoading
|
|
1853
1865
|
}, isLoading && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
@@ -1858,25 +1870,16 @@ function SingleSelectInputInner({
|
|
|
1858
1870
|
className: shared_default.emptyMessage
|
|
1859
1871
|
}, "No options available"), (values.length > 0 || isLoading) && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1860
1872
|
className: SingleSelectInput_default.selectContainer
|
|
1861
|
-
}, /* @__PURE__ */ React76__default.default.createElement(
|
|
1873
|
+
}, /* @__PURE__ */ React76__default.default.createElement(Combobox.Root, {
|
|
1862
1874
|
value: selectedValue ?? null,
|
|
1863
1875
|
onValueChange: handleValueChange,
|
|
1864
1876
|
items
|
|
1865
|
-
}, /* @__PURE__ */ React76__default.default.createElement(
|
|
1877
|
+
}, /* @__PURE__ */ React76__default.default.createElement(Combobox.SearchInput, {
|
|
1866
1878
|
placeholder,
|
|
1867
1879
|
"aria-label": ariaLabel
|
|
1868
|
-
}),
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
}) => /* @__PURE__ */ React76__default.default.createElement(Select.Item, {
|
|
1872
|
-
key: value,
|
|
1873
|
-
value
|
|
1874
|
-
}, showCounts ? `${value} (${count.toLocaleString()})` : value)))))), showClearButton && selectedValue !== void 0 && /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
1875
|
-
type: "button",
|
|
1876
|
-
className: SingleSelectInput_default.clearButton,
|
|
1877
|
-
onClick: handleClear,
|
|
1878
|
-
"aria-label": "Clear selection"
|
|
1879
|
-
}, /* @__PURE__ */ React76__default.default.createElement(icons.Cross, null))));
|
|
1880
|
+
}), showClearButton && selectedValue !== void 0 && /* @__PURE__ */ React76__default.default.createElement(Combobox.Clear, {
|
|
1881
|
+
className: SingleSelectInput_default.clearButton
|
|
1882
|
+
}), /* @__PURE__ */ React76__default.default.createElement(Combobox.Portal, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Positioner, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Popup, null, /* @__PURE__ */ React76__default.default.createElement(Combobox.Empty, null, "No matching options"), /* @__PURE__ */ React76__default.default.createElement(Combobox.List, null, renderItem)))))));
|
|
1880
1883
|
}
|
|
1881
1884
|
var SingleSelectInput = /* @__PURE__ */ React76.memo(SingleSelectInputInner);
|
|
1882
1885
|
|
|
@@ -1960,7 +1963,7 @@ function TextTagsInputInner({
|
|
|
1960
1963
|
}
|
|
1961
1964
|
}, [tags, onChange]);
|
|
1962
1965
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
1963
|
-
className:
|
|
1966
|
+
className: classnames14__default.default(TextTagsInput_default.textTags, className),
|
|
1964
1967
|
style,
|
|
1965
1968
|
"data-loading": isLoading
|
|
1966
1969
|
}, error && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
@@ -2021,7 +2024,7 @@ function TimelineInputInner({
|
|
|
2021
2024
|
const startInputMax = React76.useMemo(() => endDate ?? maxDate, [endDate, maxDate]);
|
|
2022
2025
|
const endInputMin = React76.useMemo(() => startDate ?? minDate, [startDate, minDate]);
|
|
2023
2026
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
2024
|
-
className:
|
|
2027
|
+
className: classnames14__default.default(TimelineInput_default.timeline, className)
|
|
2025
2028
|
}, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
2026
2029
|
className: TimelineInput_default.labels
|
|
2027
2030
|
}, /* @__PURE__ */ React76__default.default.createElement("span", null, formatDateForDisplay(startDate, "\u2014")), /* @__PURE__ */ React76__default.default.createElement("span", null, "to"), /* @__PURE__ */ React76__default.default.createElement("span", null, formatDateForDisplay(endDate, "\u2014")), (startDate || endDate) && /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
@@ -2387,7 +2390,7 @@ function LinkedPropertyInputInner({
|
|
|
2387
2390
|
}
|
|
2388
2391
|
})();
|
|
2389
2392
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
2390
|
-
className:
|
|
2393
|
+
className: classnames14__default.default(LinkedPropertyInput_default.linkedProperty, className),
|
|
2391
2394
|
style
|
|
2392
2395
|
}, content);
|
|
2393
2396
|
}
|
|
@@ -2659,11 +2662,18 @@ function ExcludeDropdownInner({
|
|
|
2659
2662
|
var ExcludeDropdown = /* @__PURE__ */ React76.memo(ExcludeDropdownInner);
|
|
2660
2663
|
|
|
2661
2664
|
// src/filter-list/base/FilterInputExcludeRow.tsx
|
|
2665
|
+
function getSelectedCount(filterState) {
|
|
2666
|
+
if (!filterState) return 0;
|
|
2667
|
+
if (filterState.type === "EXACT_MATCH") return filterState.values.length;
|
|
2668
|
+
if (filterState.type === "SELECT") return filterState.selectedValues.length;
|
|
2669
|
+
return 0;
|
|
2670
|
+
}
|
|
2662
2671
|
function FilterInputExcludeRowInner({
|
|
2663
2672
|
excludeRowOpen,
|
|
2664
2673
|
filterState,
|
|
2665
2674
|
onFilterStateChanged,
|
|
2666
2675
|
totalValueCount,
|
|
2676
|
+
onClearAll,
|
|
2667
2677
|
children
|
|
2668
2678
|
}) {
|
|
2669
2679
|
const handleToggleExclude = React76.useCallback(() => {
|
|
@@ -2676,12 +2686,13 @@ function FilterInputExcludeRowInner({
|
|
|
2676
2686
|
}, [filterState, onFilterStateChanged]);
|
|
2677
2687
|
const isExcluding = filterState?.isExcluding ?? false;
|
|
2678
2688
|
const isOpen = excludeRowOpen ?? false;
|
|
2689
|
+
const selectedCount = React76.useMemo(() => getSelectedCount(filterState), [filterState]);
|
|
2679
2690
|
if (!supportsExcluding(filterState)) {
|
|
2680
2691
|
return /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, children);
|
|
2681
2692
|
}
|
|
2682
2693
|
return /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
2683
2694
|
"data-exclude-row": true,
|
|
2684
|
-
className:
|
|
2695
|
+
className: classnames14__default.default(FilterListItem_default.excludeRow, {
|
|
2685
2696
|
[FilterListItem_default.excludeRowVisible]: isOpen
|
|
2686
2697
|
})
|
|
2687
2698
|
}, /* @__PURE__ */ React76__default.default.createElement(ExcludeDropdown, {
|
|
@@ -2690,7 +2701,10 @@ function FilterInputExcludeRowInner({
|
|
|
2690
2701
|
}), totalValueCount != null && totalValueCount > 0 && /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
2691
2702
|
className: FilterListItem_default.excludeCountLabel,
|
|
2692
2703
|
title: "Approximate count of unique values"
|
|
2693
|
-
}, totalValueCount.toLocaleString(), " values")
|
|
2704
|
+
}, selectedCount.toLocaleString(), " of", " ", totalValueCount.toLocaleString(), " values"), onClearAll && selectedCount > 0 && /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
2705
|
+
className: FilterListItem_default.clearAllButton,
|
|
2706
|
+
onClick: onClearAll
|
|
2707
|
+
}, "Clear all")), children);
|
|
2694
2708
|
}
|
|
2695
2709
|
var FilterInputExcludeRow = /* @__PURE__ */ React76.memo(FilterInputExcludeRowInner);
|
|
2696
2710
|
function ContainsTextFilterInputInner({
|
|
@@ -2708,7 +2722,7 @@ function ContainsTextFilterInputInner({
|
|
|
2708
2722
|
return /* @__PURE__ */ React76__default.default.createElement(ContainsTextInput, {
|
|
2709
2723
|
value,
|
|
2710
2724
|
onChange: handleChange,
|
|
2711
|
-
placeholder:
|
|
2725
|
+
placeholder: "Search..."
|
|
2712
2726
|
});
|
|
2713
2727
|
}
|
|
2714
2728
|
var ContainsTextFilterInput = /* @__PURE__ */ React76.memo(ContainsTextFilterInputInner);
|
|
@@ -2815,6 +2829,13 @@ function ListogramFilterInputInner({
|
|
|
2815
2829
|
}) {
|
|
2816
2830
|
const selectedValues = React76.useMemo(() => filterState?.type === "EXACT_MATCH" ? coerceToStringArray(filterState.values) : [], [filterState]);
|
|
2817
2831
|
const isExcluding = filterState?.isExcluding ?? false;
|
|
2832
|
+
const handleClearAll = React76.useCallback(() => {
|
|
2833
|
+
onFilterStateChanged({
|
|
2834
|
+
type: "EXACT_MATCH",
|
|
2835
|
+
values: [],
|
|
2836
|
+
isExcluding
|
|
2837
|
+
});
|
|
2838
|
+
}, [onFilterStateChanged, isExcluding]);
|
|
2818
2839
|
const handleChange = React76.useCallback((values) => {
|
|
2819
2840
|
onFilterStateChanged({
|
|
2820
2841
|
type: "EXACT_MATCH",
|
|
@@ -2837,7 +2858,8 @@ function ListogramFilterInputInner({
|
|
|
2837
2858
|
excludeRowOpen,
|
|
2838
2859
|
filterState,
|
|
2839
2860
|
onFilterStateChanged,
|
|
2840
|
-
totalValueCount: data.length
|
|
2861
|
+
totalValueCount: data.length,
|
|
2862
|
+
onClearAll: handleClearAll
|
|
2841
2863
|
}, /* @__PURE__ */ React76__default.default.createElement(ListogramInput, {
|
|
2842
2864
|
values: data,
|
|
2843
2865
|
maxCount,
|
|
@@ -2883,6 +2905,13 @@ function MultiSelectFilterInputInner({
|
|
|
2883
2905
|
}) {
|
|
2884
2906
|
const selectedValues = React76.useMemo(() => filterState?.type === "SELECT" ? coerceToStringArray(filterState.selectedValues) : [], [filterState]);
|
|
2885
2907
|
const isExcluding = filterState?.isExcluding ?? false;
|
|
2908
|
+
const handleClearAll = React76.useCallback(() => {
|
|
2909
|
+
onFilterStateChanged({
|
|
2910
|
+
type: "SELECT",
|
|
2911
|
+
selectedValues: [],
|
|
2912
|
+
isExcluding
|
|
2913
|
+
});
|
|
2914
|
+
}, [onFilterStateChanged, isExcluding]);
|
|
2886
2915
|
const handleChange = React76.useCallback((selectedValues2) => {
|
|
2887
2916
|
onFilterStateChanged({
|
|
2888
2917
|
type: "SELECT",
|
|
@@ -2902,7 +2931,8 @@ function MultiSelectFilterInputInner({
|
|
|
2902
2931
|
excludeRowOpen,
|
|
2903
2932
|
filterState,
|
|
2904
2933
|
onFilterStateChanged,
|
|
2905
|
-
totalValueCount: data.length
|
|
2934
|
+
totalValueCount: data.length,
|
|
2935
|
+
onClearAll: handleClearAll
|
|
2906
2936
|
}, /* @__PURE__ */ React76__default.default.createElement(MultiSelectInput, {
|
|
2907
2937
|
values: data,
|
|
2908
2938
|
isLoading,
|
|
@@ -3031,6 +3061,13 @@ function SingleSelectFilterInputInner({
|
|
|
3031
3061
|
}) {
|
|
3032
3062
|
const selectedValue = React76.useMemo(() => filterState?.type === "SELECT" ? coerceToString(filterState.selectedValues[0]) : void 0, [filterState]);
|
|
3033
3063
|
const isExcluding = filterState?.isExcluding ?? false;
|
|
3064
|
+
const handleClearAll = React76.useCallback(() => {
|
|
3065
|
+
onFilterStateChanged({
|
|
3066
|
+
type: "SELECT",
|
|
3067
|
+
selectedValues: [],
|
|
3068
|
+
isExcluding
|
|
3069
|
+
});
|
|
3070
|
+
}, [onFilterStateChanged, isExcluding]);
|
|
3034
3071
|
const handleChange = React76.useCallback((value) => {
|
|
3035
3072
|
onFilterStateChanged({
|
|
3036
3073
|
type: "SELECT",
|
|
@@ -3050,7 +3087,8 @@ function SingleSelectFilterInputInner({
|
|
|
3050
3087
|
excludeRowOpen,
|
|
3051
3088
|
filterState,
|
|
3052
3089
|
onFilterStateChanged,
|
|
3053
|
-
totalValueCount: data.length
|
|
3090
|
+
totalValueCount: data.length,
|
|
3091
|
+
onClearAll: handleClearAll
|
|
3054
3092
|
}, /* @__PURE__ */ React76__default.default.createElement(SingleSelectInput, {
|
|
3055
3093
|
values: data,
|
|
3056
3094
|
isLoading,
|
|
@@ -3072,6 +3110,13 @@ function TextTagsFilterInputInner({
|
|
|
3072
3110
|
}) {
|
|
3073
3111
|
const tags = React76.useMemo(() => filterState?.type === "EXACT_MATCH" ? coerceToStringArray(filterState.values) : [], [filterState]);
|
|
3074
3112
|
const isExcluding = filterState?.isExcluding ?? false;
|
|
3113
|
+
const handleClearAll = React76.useCallback(() => {
|
|
3114
|
+
onFilterStateChanged({
|
|
3115
|
+
type: "EXACT_MATCH",
|
|
3116
|
+
values: [],
|
|
3117
|
+
isExcluding
|
|
3118
|
+
});
|
|
3119
|
+
}, [onFilterStateChanged, isExcluding]);
|
|
3075
3120
|
const handleChange = React76.useCallback((values) => {
|
|
3076
3121
|
onFilterStateChanged({
|
|
3077
3122
|
type: "EXACT_MATCH",
|
|
@@ -3091,7 +3136,8 @@ function TextTagsFilterInputInner({
|
|
|
3091
3136
|
excludeRowOpen,
|
|
3092
3137
|
filterState,
|
|
3093
3138
|
onFilterStateChanged,
|
|
3094
|
-
totalValueCount: data.length
|
|
3139
|
+
totalValueCount: data.length,
|
|
3140
|
+
onClearAll: handleClearAll
|
|
3095
3141
|
}, /* @__PURE__ */ React76__default.default.createElement(TextTagsInput, {
|
|
3096
3142
|
suggestions: data,
|
|
3097
3143
|
isLoading,
|
|
@@ -3232,7 +3278,7 @@ function PropertyFilterInputInner({
|
|
|
3232
3278
|
whereClause,
|
|
3233
3279
|
colorMap: definition.colorMap,
|
|
3234
3280
|
displayMode: definition.listogramConfig?.displayMode,
|
|
3235
|
-
maxVisibleItems: definition.listogramConfig?.maxVisibleItems,
|
|
3281
|
+
maxVisibleItems: definition.listogramConfig?.maxVisibleItems ?? 5,
|
|
3236
3282
|
searchQuery,
|
|
3237
3283
|
excludeRowOpen
|
|
3238
3284
|
});
|
|
@@ -3808,6 +3854,13 @@ function useFilterListState(props) {
|
|
|
3808
3854
|
onFilterStateChanged?.(definition, state);
|
|
3809
3855
|
}
|
|
3810
3856
|
}, [filterDefinitions, propertyTypes, onFilterClauseChanged, onFilterStateChanged]);
|
|
3857
|
+
const clearFilterState = React76.useCallback((filterKey) => {
|
|
3858
|
+
const clearedStates = new Map(filterStates);
|
|
3859
|
+
clearedStates.delete(filterKey);
|
|
3860
|
+
setFilterStates(clearedStates);
|
|
3861
|
+
const newWhereClause = buildWhereClause(filterDefinitions, clearedStates, propertyTypes);
|
|
3862
|
+
onFilterClauseChanged?.(newWhereClause);
|
|
3863
|
+
}, [filterStates, filterDefinitions, propertyTypes, onFilterClauseChanged]);
|
|
3811
3864
|
const whereClause = React76.useMemo(() => buildWhereClause(filterDefinitions, filterStates, propertyTypes), [filterDefinitions, filterStates, propertyTypes]);
|
|
3812
3865
|
const perFilterWhereClauses = React76.useMemo(() => {
|
|
3813
3866
|
const map = /* @__PURE__ */ new Map();
|
|
@@ -3838,11 +3891,12 @@ function useFilterListState(props) {
|
|
|
3838
3891
|
return React76.useMemo(() => ({
|
|
3839
3892
|
filterStates,
|
|
3840
3893
|
setFilterState,
|
|
3894
|
+
clearFilterState,
|
|
3841
3895
|
whereClause,
|
|
3842
3896
|
perFilterWhereClauses,
|
|
3843
3897
|
activeFilterCount,
|
|
3844
3898
|
reset
|
|
3845
|
-
}), [filterStates, setFilterState, whereClause, perFilterWhereClauses, activeFilterCount, reset]);
|
|
3899
|
+
}), [filterStates, setFilterState, clearFilterState, whereClause, perFilterWhereClauses, activeFilterCount, reset]);
|
|
3846
3900
|
}
|
|
3847
3901
|
function useFilterVisibility(filterDefinitions, getFilterKey2, getIsVisible) {
|
|
3848
3902
|
const [visibilityOverrides, setVisibilityOverrides] = React76.useState(() => /* @__PURE__ */ new Map());
|
|
@@ -3944,6 +3998,7 @@ function FilterList(props) {
|
|
|
3944
3998
|
const {
|
|
3945
3999
|
filterStates,
|
|
3946
4000
|
setFilterState,
|
|
4001
|
+
clearFilterState,
|
|
3947
4002
|
perFilterWhereClauses,
|
|
3948
4003
|
activeFilterCount,
|
|
3949
4004
|
reset
|
|
@@ -3971,11 +4026,12 @@ function FilterList(props) {
|
|
|
3971
4026
|
}, [filterDefinitions]);
|
|
3972
4027
|
const effectiveVisibleDefinitions = uncontrolledAddFilterMode ? managedVisibleDefinitions : simpleVisibleDefinitions;
|
|
3973
4028
|
const handleFilterRemoved = React76.useCallback((filterKey) => {
|
|
4029
|
+
clearFilterState(filterKey);
|
|
3974
4030
|
if (uncontrolledAddFilterMode) {
|
|
3975
4031
|
hideFilter(filterKey);
|
|
3976
4032
|
}
|
|
3977
4033
|
onFilterRemoved?.(filterKey);
|
|
3978
|
-
}, [uncontrolledAddFilterMode, hideFilter, onFilterRemoved]);
|
|
4034
|
+
}, [clearFilterState, uncontrolledAddFilterMode, hideFilter, onFilterRemoved]);
|
|
3979
4035
|
const handleFilterShown = React76.useCallback((filterKey) => {
|
|
3980
4036
|
showFilter(filterKey);
|
|
3981
4037
|
onFilterAdded?.(filterKey, filterDefinitions ?? []);
|
|
@@ -4074,7 +4130,7 @@ var TableCell_default = {};
|
|
|
4074
4130
|
// src/object-table/LoadingCell.tsx
|
|
4075
4131
|
function LoadingCellContent() {
|
|
4076
4132
|
return /* @__PURE__ */ React76__default.default.createElement(SkeletonBar, {
|
|
4077
|
-
className:
|
|
4133
|
+
className: classnames14__default.default(LoadingCell_default.osdkLoadingCell, LoadingCell_default.osdkCellSkeleton)
|
|
4078
4134
|
});
|
|
4079
4135
|
}
|
|
4080
4136
|
function LoadingCell({
|
|
@@ -4223,7 +4279,7 @@ function EditableCellInner({
|
|
|
4223
4279
|
return /* @__PURE__ */ React76__default.default.createElement(chunkMRRRZN44_cjs.Tooltip.Provider, null, /* @__PURE__ */ React76__default.default.createElement(chunkMRRRZN44_cjs.Tooltip.Root, {
|
|
4224
4280
|
disabled: !hasValidationError
|
|
4225
4281
|
}, /* @__PURE__ */ React76__default.default.createElement(chunkMRRRZN44_cjs.Tooltip.Trigger, null, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
4226
|
-
className:
|
|
4282
|
+
className: classnames14__default.default(EditableCell_default.osdkEditableCell, {
|
|
4227
4283
|
[EditableCell_default.error]: hasValidationError,
|
|
4228
4284
|
[EditableCell_default.osdkEditedInput]: isEdited
|
|
4229
4285
|
})
|
|
@@ -5102,14 +5158,14 @@ var TableBody_default = {};
|
|
|
5102
5158
|
var DraggableList_default = {};
|
|
5103
5159
|
|
|
5104
5160
|
// src/base-components/draggable-list/DraggableList.tsx
|
|
5105
|
-
function
|
|
5106
|
-
return
|
|
5161
|
+
function _extends8() {
|
|
5162
|
+
return _extends8 = Object.assign ? Object.assign.bind() : function(n) {
|
|
5107
5163
|
for (var e = 1; e < arguments.length; e++) {
|
|
5108
5164
|
var t = arguments[e];
|
|
5109
5165
|
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
5110
5166
|
}
|
|
5111
5167
|
return n;
|
|
5112
|
-
},
|
|
5168
|
+
}, _extends8.apply(null, arguments);
|
|
5113
5169
|
}
|
|
5114
5170
|
function DraggableListItem({
|
|
5115
5171
|
item,
|
|
@@ -5140,7 +5196,7 @@ function DraggableListItem({
|
|
|
5140
5196
|
style,
|
|
5141
5197
|
className: DraggableList_default.draggableItem,
|
|
5142
5198
|
"data-dragging": isDragging
|
|
5143
|
-
}, /* @__PURE__ */ React76__default.default.createElement("div",
|
|
5199
|
+
}, /* @__PURE__ */ React76__default.default.createElement("div", _extends8({
|
|
5144
5200
|
className: DraggableList_default.dragHandle,
|
|
5145
5201
|
"aria-label": `Reorder ${item.label}`
|
|
5146
5202
|
}, attributes, listeners), /* @__PURE__ */ React76__default.default.createElement(icons.DragHandleVertical, {
|
|
@@ -5188,7 +5244,7 @@ function DraggableList({
|
|
|
5188
5244
|
const DndContext2 = core.DndContext;
|
|
5189
5245
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5190
5246
|
ref: containerRef,
|
|
5191
|
-
className:
|
|
5247
|
+
className: classnames14__default.default(DraggableList_default.draggableListContainer, className)
|
|
5192
5248
|
}, /* @__PURE__ */ React76__default.default.createElement(DndContext2, {
|
|
5193
5249
|
sensors,
|
|
5194
5250
|
collisionDetection: core.closestCenter,
|
|
@@ -5232,33 +5288,6 @@ var useKeyboardEvents = (containerRef) => {
|
|
|
5232
5288
|
}, [containerRef]);
|
|
5233
5289
|
};
|
|
5234
5290
|
|
|
5235
|
-
// src/base-components/search-bar/SearchBar.module.css
|
|
5236
|
-
var SearchBar_default = {};
|
|
5237
|
-
|
|
5238
|
-
// src/base-components/search-bar/SearchBar.tsx
|
|
5239
|
-
function SearchBar({
|
|
5240
|
-
value,
|
|
5241
|
-
onChange,
|
|
5242
|
-
placeholder = "Search",
|
|
5243
|
-
"aria-label": ariaLabel,
|
|
5244
|
-
className,
|
|
5245
|
-
onKeyDown
|
|
5246
|
-
}) {
|
|
5247
|
-
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5248
|
-
className: classnames13__default.default(SearchBar_default.searchBar, className)
|
|
5249
|
-
}, /* @__PURE__ */ React76__default.default.createElement(icons.Search, {
|
|
5250
|
-
className: SearchBar_default.searchIcon
|
|
5251
|
-
}), /* @__PURE__ */ React76__default.default.createElement(input.Input, {
|
|
5252
|
-
type: "text",
|
|
5253
|
-
placeholder,
|
|
5254
|
-
"aria-label": ariaLabel ?? placeholder,
|
|
5255
|
-
value,
|
|
5256
|
-
onChange,
|
|
5257
|
-
className: SearchBar_default.searchInput,
|
|
5258
|
-
onKeyDown
|
|
5259
|
-
}));
|
|
5260
|
-
}
|
|
5261
|
-
|
|
5262
5291
|
// src/object-table/ColumnConfigDialog.module.css
|
|
5263
5292
|
var ColumnConfigDialog_default = {};
|
|
5264
5293
|
|
|
@@ -5426,7 +5455,7 @@ function AvailableColumnsList({
|
|
|
5426
5455
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5427
5456
|
className: ColumnConfigDialog_default.availableColumnsContainer
|
|
5428
5457
|
}, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5429
|
-
className:
|
|
5458
|
+
className: classnames14__default.default(ColumnConfigDialog_default.sectionHeader, ColumnConfigDialog_default.sectionTitle)
|
|
5430
5459
|
}, "Add or Remove Columns"), /* @__PURE__ */ React76__default.default.createElement(SearchBar, {
|
|
5431
5460
|
value: searchQuery,
|
|
5432
5461
|
onChange: onSearchChange,
|
|
@@ -5513,7 +5542,6 @@ function MultiColumnSortDialog({
|
|
|
5513
5542
|
columnOptions
|
|
5514
5543
|
}) {
|
|
5515
5544
|
const [selectedSortColumns, setSelectedSortColumns] = React76.useState([]);
|
|
5516
|
-
const [menuSearchQuery, setMenuSearchQuery] = React76.useState("");
|
|
5517
5545
|
React76.useEffect(() => {
|
|
5518
5546
|
if (isOpen) {
|
|
5519
5547
|
const selectedColumns = [];
|
|
@@ -5556,21 +5584,16 @@ function MultiColumnSortDialog({
|
|
|
5556
5584
|
onClose();
|
|
5557
5585
|
}, [selectedSortColumns, onApply, onClose]);
|
|
5558
5586
|
const availableColumns = React76.useMemo(() => columnOptions.filter((col) => col.canSort && !selectedSortColumns.some((selected) => selected.id === col.id)), [columnOptions, selectedSortColumns]);
|
|
5559
|
-
const
|
|
5560
|
-
|
|
5561
|
-
|
|
5562
|
-
|
|
5563
|
-
|
|
5564
|
-
|
|
5565
|
-
|
|
5566
|
-
|
|
5567
|
-
|
|
5568
|
-
}, []);
|
|
5569
|
-
const handleMenuOpenChange = React76.useCallback((open) => {
|
|
5570
|
-
if (open) {
|
|
5571
|
-
setMenuSearchQuery("");
|
|
5572
|
-
}
|
|
5573
|
-
}, []);
|
|
5587
|
+
const searchableMenuItems = React76.useMemo(() => availableColumns.map((col) => ({
|
|
5588
|
+
key: col.id,
|
|
5589
|
+
label: col.name
|
|
5590
|
+
})), [availableColumns]);
|
|
5591
|
+
const handleMenuItemSelected = React76.useCallback((key) => {
|
|
5592
|
+
const column = availableColumns.find((col) => col.id === key);
|
|
5593
|
+
if (column) {
|
|
5594
|
+
handleAddColumn(column);
|
|
5595
|
+
}
|
|
5596
|
+
}, [availableColumns, handleAddColumn]);
|
|
5574
5597
|
const sortableItems = React76.useMemo(() => {
|
|
5575
5598
|
return selectedSortColumns.map((item) => ({
|
|
5576
5599
|
id: item.id,
|
|
@@ -5578,7 +5601,7 @@ function MultiColumnSortDialog({
|
|
|
5578
5601
|
content: /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5579
5602
|
className: MultiColumnSortDialog_default.sortColumnItem
|
|
5580
5603
|
}, /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
5581
|
-
className:
|
|
5604
|
+
className: classnames14__default.default(MultiColumnSortDialog_default.sortColumnName, MultiColumnSortDialog_default.truncate)
|
|
5582
5605
|
}, item.name), /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
5583
5606
|
className: MultiColumnSortDialog_default.sortDirectionButton,
|
|
5584
5607
|
onClick: () => handleToggleSortDirection(item.id),
|
|
@@ -5596,9 +5619,6 @@ function MultiColumnSortDialog({
|
|
|
5596
5619
|
variant: "primary",
|
|
5597
5620
|
onClick: handleApply
|
|
5598
5621
|
}, "Apply")), [handleApply, onClose]);
|
|
5599
|
-
const handleKeyDown = React76.useCallback((event) => {
|
|
5600
|
-
event.stopPropagation();
|
|
5601
|
-
}, []);
|
|
5602
5622
|
return /* @__PURE__ */ React76__default.default.createElement(chunkMRRRZN44_cjs.Dialog, {
|
|
5603
5623
|
isOpen,
|
|
5604
5624
|
onOpenChange: onClose,
|
|
@@ -5611,49 +5631,23 @@ function MultiColumnSortDialog({
|
|
|
5611
5631
|
onReorder: handleReorderSortColumns,
|
|
5612
5632
|
onRemove: handleRemoveSortColumn,
|
|
5613
5633
|
className: MultiColumnSortDialog_default.sortableList
|
|
5614
|
-
}), /* @__PURE__ */ React76__default.default.createElement(
|
|
5615
|
-
|
|
5616
|
-
|
|
5617
|
-
|
|
5634
|
+
}), /* @__PURE__ */ React76__default.default.createElement(SearchableMenu, {
|
|
5635
|
+
items: searchableMenuItems,
|
|
5636
|
+
onItemSelected: handleMenuItemSelected,
|
|
5637
|
+
trigger: /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, /* @__PURE__ */ React76__default.default.createElement(icons.Add, {
|
|
5638
|
+
className: MultiColumnSortDialog_default.addIcon
|
|
5639
|
+
}), /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
5640
|
+
className: MultiColumnSortDialog_default.addColumnText
|
|
5641
|
+
}, "Add Column to Sort"), /* @__PURE__ */ React76__default.default.createElement(icons.CaretDown, null)),
|
|
5642
|
+
triggerClassName: MultiColumnSortDialog_default.addColumnButton,
|
|
5618
5643
|
disabled: availableColumns.length === 0,
|
|
5619
|
-
|
|
5620
|
-
|
|
5621
|
-
|
|
5622
|
-
}), /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
5623
|
-
className: MultiColumnSortDialog_default.addColumnText
|
|
5624
|
-
}, "Add Column to Sort"), /* @__PURE__ */ React76__default.default.createElement(icons.CaretDown, null)), /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Portal, null, /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Positioner, {
|
|
5625
|
-
className: MultiColumnSortDialog_default.menuPositioner,
|
|
5626
|
-
sideOffset: 4
|
|
5627
|
-
}, /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Popup, {
|
|
5628
|
-
className: MultiColumnSortDialog_default.dropdownMenu
|
|
5629
|
-
}, /* @__PURE__ */ React76__default.default.createElement(SearchBar, {
|
|
5630
|
-
value: menuSearchQuery,
|
|
5631
|
-
onChange: handleMenuSearchChange,
|
|
5632
|
-
placeholder: "Search columns",
|
|
5633
|
-
"aria-label": "Search columns to sort",
|
|
5634
|
-
className: MultiColumnSortDialog_default.menuSearchContainer,
|
|
5635
|
-
onKeyDown: handleKeyDown
|
|
5636
|
-
}), filteredAvailableColumns.map((column) => /* @__PURE__ */ React76__default.default.createElement(AvailableColumnMenuItem, {
|
|
5637
|
-
key: column.id,
|
|
5638
|
-
column,
|
|
5639
|
-
onAddColumn: handleAddColumn
|
|
5640
|
-
})), filteredAvailableColumns.length === 0 && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5641
|
-
className: MultiColumnSortDialog_default.menuEmptyState
|
|
5642
|
-
}, "No matching columns")))))));
|
|
5644
|
+
searchPlaceholder: "Search columns",
|
|
5645
|
+
emptyMessage: "No matching columns"
|
|
5646
|
+
})));
|
|
5643
5647
|
}
|
|
5644
5648
|
var DialogTitle2 = /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5645
5649
|
className: MultiColumnSortDialog_default.title
|
|
5646
5650
|
}, /* @__PURE__ */ React76__default.default.createElement(icons.Cog, null), "Sort on Multiple Columns");
|
|
5647
|
-
function AvailableColumnMenuItem({
|
|
5648
|
-
column,
|
|
5649
|
-
onAddColumn
|
|
5650
|
-
}) {
|
|
5651
|
-
const onClick = React76.useCallback(() => onAddColumn(column), [onAddColumn, column]);
|
|
5652
|
-
return /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Item, {
|
|
5653
|
-
className: classnames13__default.default(MultiColumnSortDialog_default.dropdownItem, MultiColumnSortDialog_default.truncate),
|
|
5654
|
-
onClick
|
|
5655
|
-
}, column.name);
|
|
5656
|
-
}
|
|
5657
5651
|
|
|
5658
5652
|
// src/object-table/TableHeader.module.css
|
|
5659
5653
|
var TableHeader_default = {};
|
|
@@ -5682,7 +5676,7 @@ function HeaderMenuItem({
|
|
|
5682
5676
|
}) {
|
|
5683
5677
|
return /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Item, {
|
|
5684
5678
|
closeOnClick: true,
|
|
5685
|
-
className:
|
|
5679
|
+
className: classnames14__default.default(TableHeaderWithPopover_default.osdkCenterContainer, TableHeaderWithPopover_default.osdkContentGap, TableHeaderWithPopover_default.osdkHeaderMenuItem, active && TableHeaderWithPopover_default.osdkHeaderActiveMenuItem),
|
|
5686
5680
|
onClick
|
|
5687
5681
|
}, /* @__PURE__ */ React76__default.default.createElement(Icon, {
|
|
5688
5682
|
className: TableHeaderWithPopover_default.osdkHeaderIcon
|
|
@@ -5770,16 +5764,16 @@ function TableHeaderWithPopover({
|
|
|
5770
5764
|
open: isOpen,
|
|
5771
5765
|
onOpenChange: setIsOpen
|
|
5772
5766
|
}, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5773
|
-
className:
|
|
5767
|
+
className: classnames14__default.default(TableHeaderWithPopover_default.osdkCenterContainer, TableHeaderWithPopover_default.osdkContentGap, TableHeaderWithPopover_default.osdkHeaderContainer),
|
|
5774
5768
|
onContextMenu: handleInteraction
|
|
5775
5769
|
}, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5776
|
-
className:
|
|
5770
|
+
className: classnames14__default.default(TableHeaderWithPopover_default.osdkCenterContainer, TableHeaderWithPopover_default.osdkContentGap, TableHeaderWithPopover_default.osdkHeaderContentLeft)
|
|
5777
5771
|
}, isColumnPinned && /* @__PURE__ */ React76__default.default.createElement(icons.Pin, {
|
|
5778
5772
|
className: TableHeaderWithPopover_default.osdkHeaderIcon
|
|
5779
5773
|
}), /* @__PURE__ */ React76__default.default.createElement(TableHeaderContent, {
|
|
5780
5774
|
header
|
|
5781
5775
|
})), /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5782
|
-
className:
|
|
5776
|
+
className: classnames14__default.default(TableHeaderWithPopover_default.osdkCenterContainer, TableHeaderWithPopover_default.osdkContentGap, TableHeaderWithPopover_default.osdkHeaderContentRight)
|
|
5783
5777
|
}, isSorted && /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
5784
5778
|
className: TableHeaderWithPopover_default.osdkCenterContainer
|
|
5785
5779
|
}, isSorted === "asc" ? /* @__PURE__ */ React76__default.default.createElement(icons.SortAlphabetical, {
|
|
@@ -5790,7 +5784,7 @@ function TableHeaderWithPopover({
|
|
|
5790
5784
|
className: TableHeaderWithPopover_default.sortIndex
|
|
5791
5785
|
}, sortIndex + 1)), hasAnyMenuItems && /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Trigger, {
|
|
5792
5786
|
"aria-label": `Open header menu for column with id=${header.column.id}`,
|
|
5793
|
-
className:
|
|
5787
|
+
className: classnames14__default.default(TableHeaderWithPopover_default.osdkCenterContainer, TableHeaderWithPopover_default.osdkHeaderPopoverTrigger)
|
|
5794
5788
|
}, /* @__PURE__ */ React76__default.default.createElement(icons.ChevronDown, {
|
|
5795
5789
|
className: TableHeaderWithPopover_default.osdkHeaderIcon
|
|
5796
5790
|
}))), /* @__PURE__ */ React76__default.default.createElement(menu.Menu.Portal, {
|
|
@@ -5935,7 +5929,7 @@ function TableHeader({
|
|
|
5935
5929
|
return /* @__PURE__ */ React76__default.default.createElement("th", {
|
|
5936
5930
|
key: header.id,
|
|
5937
5931
|
"data-pinned": header.column.getIsPinned(),
|
|
5938
|
-
className:
|
|
5932
|
+
className: classnames14__default.default(TableHeader_default.osdkTableHeaderCell, {
|
|
5939
5933
|
[TableHeader_default.osdkTableSelectionHeaderCell]: isSelectColumn
|
|
5940
5934
|
}),
|
|
5941
5935
|
style: columnStyles
|
|
@@ -6029,7 +6023,7 @@ function LoadingStateTable({
|
|
|
6029
6023
|
width
|
|
6030
6024
|
}
|
|
6031
6025
|
}, /* @__PURE__ */ React76__default.default.createElement(SkeletonBar, {
|
|
6032
|
-
className:
|
|
6026
|
+
className: classnames14__default.default(TableHeader_default.osdkLoadingHeaderCell, LoadingCell_default.osdkCellSkeleton)
|
|
6033
6027
|
}));
|
|
6034
6028
|
}))), /* @__PURE__ */ React76__default.default.createElement("tbody", {
|
|
6035
6029
|
className: TableBody_default.osdkTableBody,
|
|
@@ -6376,7 +6370,7 @@ function BaseTable({
|
|
|
6376
6370
|
};
|
|
6377
6371
|
}, []);
|
|
6378
6372
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
6379
|
-
className:
|
|
6373
|
+
className: classnames14__default.default(Table_default.osdkTableWrapper, className)
|
|
6380
6374
|
}, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
6381
6375
|
ref: tableContainerRef,
|
|
6382
6376
|
className: Table_default.osdkTableContainer,
|
|
@@ -6608,7 +6602,7 @@ function AnnotationItem({
|
|
|
6608
6602
|
handleClick,
|
|
6609
6603
|
handleKeyDown
|
|
6610
6604
|
} = useAnnotationHandlers(annotation, onClick);
|
|
6611
|
-
const className =
|
|
6605
|
+
const className = classnames14__default.default(PdfViewerAnnotationLayer_default.annotation, PdfViewerAnnotationLayer_default[annotation.type]);
|
|
6612
6606
|
const multiRects = annotation.rects;
|
|
6613
6607
|
const hasMultipleRects = multiRects != null && multiRects.length > 1;
|
|
6614
6608
|
const style = React76.useMemo(() => computeRectStyle(annotation.rect, pageHeight, scale, annotation.color), [annotation, pageHeight, scale]);
|
|
@@ -6783,7 +6777,7 @@ function PdfViewerOutlineItem({
|
|
|
6783
6777
|
onClick(item.pageNumber);
|
|
6784
6778
|
}
|
|
6785
6779
|
}, [onClick, item.pageNumber]);
|
|
6786
|
-
const itemClassName =
|
|
6780
|
+
const itemClassName = classnames14__default.default(PdfViewerOutlineSidebar_default.outlineItem, isActive && PdfViewerOutlineSidebar_default.outlineItemActive, item.bold && PdfViewerOutlineSidebar_default.outlineItemBold, item.italic && PdfViewerOutlineSidebar_default.outlineItemItalic);
|
|
6787
6781
|
const paddingLeft = INDENT_PER_DEPTH * item.depth + 12;
|
|
6788
6782
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
6789
6783
|
className: itemClassName,
|
|
@@ -6965,7 +6959,7 @@ function PdfViewerThumbnail({
|
|
|
6965
6959
|
onClick();
|
|
6966
6960
|
}
|
|
6967
6961
|
}, [onClick]);
|
|
6968
|
-
const containerClassName =
|
|
6962
|
+
const containerClassName = classnames14__default.default(PdfViewerThumbnail_default.thumbnailContainer, isActive && PdfViewerThumbnail_default.active);
|
|
6969
6963
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
6970
6964
|
className: containerClassName,
|
|
6971
6965
|
onClick,
|
|
@@ -7198,7 +7192,7 @@ function PdfViewerToolbar({
|
|
|
7198
7192
|
}))), enableHighlight && /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
7199
7193
|
className: PdfViewerToolbar_default.separator
|
|
7200
7194
|
}), /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
7201
|
-
className:
|
|
7195
|
+
className: classnames14__default.default(PdfViewerToolbar_default.toolbarButton, highlightModeActive && PdfViewerToolbar_default.toolbarButtonActive),
|
|
7202
7196
|
onClick: onHighlightToggle,
|
|
7203
7197
|
"aria-label": highlightModeActive ? "Disable highlight mode" : "Enable highlight mode",
|
|
7204
7198
|
title: highlightModeActive ? "Disable highlight mode" : "Enable highlight mode",
|
|
@@ -8376,7 +8370,7 @@ var BasePdfViewer = /* @__PURE__ */ React76.forwardRef(function BasePdfViewer2({
|
|
|
8376
8370
|
onFormChange
|
|
8377
8371
|
});
|
|
8378
8372
|
const annotationsByPage = usePdfAnnotationsByPage(annotations);
|
|
8379
|
-
const rootClassName =
|
|
8373
|
+
const rootClassName = classnames14__default.default(PdfViewer_default.pdfViewer, className);
|
|
8380
8374
|
if (viewer.loading) {
|
|
8381
8375
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
8382
8376
|
className: rootClassName
|
|
@@ -8513,7 +8507,7 @@ function PdfViewerContent({
|
|
|
8513
8507
|
React76.useEffect(function clearInitialMount() {
|
|
8514
8508
|
isInitialMountRef.current = false;
|
|
8515
8509
|
}, []);
|
|
8516
|
-
const rootClassName =
|
|
8510
|
+
const rootClassName = classnames14__default.default(PdfViewer_default.pdfViewer, className);
|
|
8517
8511
|
if (viewer.loading) {
|
|
8518
8512
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
8519
8513
|
className: rootClassName
|
|
@@ -8633,14 +8627,14 @@ function usePdfViewerInstance(options) {
|
|
|
8633
8627
|
outlineIcons
|
|
8634
8628
|
}), [viewer, highlightEnabled, highlightModeActive, toggleHighlightMode, hasFormFields, submitFormData, annotations, annotationsByPage, onAnnotationClick, enableDownload, enableFormSave, outlineIcons]);
|
|
8635
8629
|
}
|
|
8636
|
-
function
|
|
8637
|
-
return
|
|
8630
|
+
function _extends9() {
|
|
8631
|
+
return _extends9 = Object.assign ? Object.assign.bind() : function(n) {
|
|
8638
8632
|
for (var e = 1; e < arguments.length; e++) {
|
|
8639
8633
|
var t = arguments[e];
|
|
8640
8634
|
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
8641
8635
|
}
|
|
8642
8636
|
return n;
|
|
8643
|
-
},
|
|
8637
|
+
}, _extends9.apply(null, arguments);
|
|
8644
8638
|
}
|
|
8645
8639
|
async function fetchMediaContents(media) {
|
|
8646
8640
|
const result = await media.fetchContents();
|
|
@@ -8674,7 +8668,7 @@ function PdfViewer({
|
|
|
8674
8668
|
cancelled = true;
|
|
8675
8669
|
};
|
|
8676
8670
|
}, [media]);
|
|
8677
|
-
const rootClassName =
|
|
8671
|
+
const rootClassName = classnames14__default.default(PdfViewer_default.pdfViewer, className);
|
|
8678
8672
|
if (loading) {
|
|
8679
8673
|
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
8680
8674
|
className: rootClassName
|
|
@@ -8700,7 +8694,7 @@ function PdfViewer({
|
|
|
8700
8694
|
className: PdfViewer_default.loadingContainer
|
|
8701
8695
|
}, "No document"));
|
|
8702
8696
|
}
|
|
8703
|
-
return /* @__PURE__ */ React76__default.default.createElement(BasePdfViewer,
|
|
8697
|
+
return /* @__PURE__ */ React76__default.default.createElement(BasePdfViewer, _extends9({
|
|
8704
8698
|
src,
|
|
8705
8699
|
className
|
|
8706
8700
|
}, pdfViewerProps));
|
|
@@ -8814,7 +8808,7 @@ function DatetimePickerField({
|
|
|
8814
8808
|
onOpenChange: setIsOpen
|
|
8815
8809
|
}, /* @__PURE__ */ React76__default.default.createElement(popover.Popover.Trigger, {
|
|
8816
8810
|
id,
|
|
8817
|
-
className:
|
|
8811
|
+
className: classnames14__default.default(DatetimePickerField_default.triggerButton, !hasValue && DatetimePickerField_default.triggerButtonPlaceholder),
|
|
8818
8812
|
"aria-label": hasValue ? void 0 : "Select date"
|
|
8819
8813
|
}, displayText), /* @__PURE__ */ React76__default.default.createElement(popover.Popover.Portal, null, /* @__PURE__ */ React76__default.default.createElement(popover.Popover.Positioner, {
|
|
8820
8814
|
sideOffset: 4
|
|
@@ -8828,6 +8822,82 @@ function DatetimePickerField({
|
|
|
8828
8822
|
footer
|
|
8829
8823
|
})))));
|
|
8830
8824
|
}
|
|
8825
|
+
|
|
8826
|
+
// src/base-components/select/Select.module.css
|
|
8827
|
+
var Select_default = {};
|
|
8828
|
+
|
|
8829
|
+
// src/base-components/select/Select.tsx
|
|
8830
|
+
function _extends10() {
|
|
8831
|
+
return _extends10 = Object.assign ? Object.assign.bind() : function(n) {
|
|
8832
|
+
for (var e = 1; e < arguments.length; e++) {
|
|
8833
|
+
var t = arguments[e];
|
|
8834
|
+
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
|
|
8835
|
+
}
|
|
8836
|
+
return n;
|
|
8837
|
+
}, _extends10.apply(null, arguments);
|
|
8838
|
+
}
|
|
8839
|
+
function SelectRoot({
|
|
8840
|
+
children,
|
|
8841
|
+
...rest
|
|
8842
|
+
}) {
|
|
8843
|
+
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Root, rest, children);
|
|
8844
|
+
}
|
|
8845
|
+
function SelectTrigger({
|
|
8846
|
+
className,
|
|
8847
|
+
placeholder,
|
|
8848
|
+
children,
|
|
8849
|
+
...rest
|
|
8850
|
+
}) {
|
|
8851
|
+
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Trigger, _extends10({
|
|
8852
|
+
className: classnames14__default.default(Select_default.osdkSelectTrigger, className)
|
|
8853
|
+
}, rest), children ?? /* @__PURE__ */ React76__default.default.createElement(React76__default.default.Fragment, null, /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
8854
|
+
className: Select_default.osdkSelectValueContainer
|
|
8855
|
+
}, /* @__PURE__ */ React76__default.default.createElement(select.Select.Value, {
|
|
8856
|
+
className: Select_default.osdkSelectValue
|
|
8857
|
+
}), placeholder != null && /* @__PURE__ */ React76__default.default.createElement("span", {
|
|
8858
|
+
className: Select_default.osdkSelectPlaceholder
|
|
8859
|
+
}, placeholder)), /* @__PURE__ */ React76__default.default.createElement(select.Select.Icon, {
|
|
8860
|
+
className: Select_default.osdkSelectIcon
|
|
8861
|
+
}, /* @__PURE__ */ React76__default.default.createElement(icons.CaretDown, null))));
|
|
8862
|
+
}
|
|
8863
|
+
function SelectPositioner({
|
|
8864
|
+
className,
|
|
8865
|
+
children,
|
|
8866
|
+
...rest
|
|
8867
|
+
}) {
|
|
8868
|
+
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Positioner, _extends10({
|
|
8869
|
+
className: classnames14__default.default(Select_default.osdkSelectPositioner, className),
|
|
8870
|
+
sideOffset: 4
|
|
8871
|
+
}, rest), children);
|
|
8872
|
+
}
|
|
8873
|
+
function SelectPopup({
|
|
8874
|
+
className,
|
|
8875
|
+
children,
|
|
8876
|
+
...rest
|
|
8877
|
+
}) {
|
|
8878
|
+
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Popup, _extends10({
|
|
8879
|
+
className: classnames14__default.default(Select_default.osdkSelectPopup, className)
|
|
8880
|
+
}, rest), children);
|
|
8881
|
+
}
|
|
8882
|
+
function SelectItem({
|
|
8883
|
+
className,
|
|
8884
|
+
children,
|
|
8885
|
+
...rest
|
|
8886
|
+
}) {
|
|
8887
|
+
return /* @__PURE__ */ React76__default.default.createElement(select.Select.Item, _extends10({
|
|
8888
|
+
className: classnames14__default.default(Select_default.osdkSelectItem, className)
|
|
8889
|
+
}, rest), /* @__PURE__ */ React76__default.default.createElement(select.Select.ItemText, null, children));
|
|
8890
|
+
}
|
|
8891
|
+
var Select = {
|
|
8892
|
+
Root: SelectRoot,
|
|
8893
|
+
Trigger: SelectTrigger,
|
|
8894
|
+
Portal: select.Select.Portal,
|
|
8895
|
+
Positioner: SelectPositioner,
|
|
8896
|
+
Popup: SelectPopup,
|
|
8897
|
+
Item: SelectItem
|
|
8898
|
+
};
|
|
8899
|
+
|
|
8900
|
+
// src/action-form/fields/DropdownField.tsx
|
|
8831
8901
|
function _extends11() {
|
|
8832
8902
|
return _extends11 = Object.assign ? Object.assign.bind() : function(n) {
|
|
8833
8903
|
for (var e = 1; e < arguments.length; e++) {
|
|
@@ -8920,6 +8990,102 @@ function defaultItemToStringLabel(item) {
|
|
|
8920
8990
|
return String(item);
|
|
8921
8991
|
}
|
|
8922
8992
|
|
|
8993
|
+
// src/action-form/fields/NumberInputField.module.css
|
|
8994
|
+
var NumberInputField_default = {};
|
|
8995
|
+
|
|
8996
|
+
// src/action-form/fields/NumberInputField.tsx
|
|
8997
|
+
var VALID_NUMERIC_REGEX = /^[+-.]?(\d+\.?\d*|\d*\.?\d+)?([eE][+-]?\d*)?$/;
|
|
8998
|
+
var DEFAULT_STEP = 1;
|
|
8999
|
+
var CHEVRON_SIZE = 12;
|
|
9000
|
+
function NumberInputField({
|
|
9001
|
+
id,
|
|
9002
|
+
value,
|
|
9003
|
+
onChange,
|
|
9004
|
+
placeholder,
|
|
9005
|
+
min: _min,
|
|
9006
|
+
max: _max,
|
|
9007
|
+
step
|
|
9008
|
+
}) {
|
|
9009
|
+
const [displayValue, setDisplayValue] = React76.useState(() => formatNumberForDisplay(value));
|
|
9010
|
+
const prevValueRef = React76.useRef(value);
|
|
9011
|
+
if (prevValueRef.current !== value) {
|
|
9012
|
+
prevValueRef.current = value;
|
|
9013
|
+
const currentParsed = parseNumericValue(displayValue);
|
|
9014
|
+
if (value !== currentParsed) {
|
|
9015
|
+
setDisplayValue(formatNumberForDisplay(value));
|
|
9016
|
+
}
|
|
9017
|
+
}
|
|
9018
|
+
const handleValueChange = React76.useCallback((newValue) => {
|
|
9019
|
+
if (!isValidInput(newValue)) {
|
|
9020
|
+
return;
|
|
9021
|
+
}
|
|
9022
|
+
setDisplayValue(newValue);
|
|
9023
|
+
onChange?.(parseNumericValue(newValue));
|
|
9024
|
+
}, [onChange]);
|
|
9025
|
+
const applyStep = React76.useCallback((direction) => {
|
|
9026
|
+
const current = parseNumericValue(displayValue) ?? 0;
|
|
9027
|
+
const delta = direction * (step ?? DEFAULT_STEP);
|
|
9028
|
+
const next = current + delta;
|
|
9029
|
+
const formatted = formatNumberForDisplay(next);
|
|
9030
|
+
setDisplayValue(formatted);
|
|
9031
|
+
onChange?.(next);
|
|
9032
|
+
}, [displayValue, onChange, step]);
|
|
9033
|
+
const handleKeyDown = React76.useCallback((e) => {
|
|
9034
|
+
if (e.key !== "ArrowUp" && e.key !== "ArrowDown") {
|
|
9035
|
+
return;
|
|
9036
|
+
}
|
|
9037
|
+
e.preventDefault();
|
|
9038
|
+
applyStep(e.key === "ArrowUp" ? 1 : -1);
|
|
9039
|
+
}, [applyStep]);
|
|
9040
|
+
const handleStepUp = React76.useCallback(() => {
|
|
9041
|
+
applyStep(1);
|
|
9042
|
+
}, [applyStep]);
|
|
9043
|
+
const handleStepDown = React76.useCallback(() => {
|
|
9044
|
+
applyStep(-1);
|
|
9045
|
+
}, [applyStep]);
|
|
9046
|
+
return /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
9047
|
+
className: NumberInputField_default.osdkNumberInputWrapper
|
|
9048
|
+
}, /* @__PURE__ */ React76__default.default.createElement(input.Input, {
|
|
9049
|
+
id,
|
|
9050
|
+
className: NumberInputField_default.osdkNumberInputField,
|
|
9051
|
+
type: "text",
|
|
9052
|
+
inputMode: "decimal",
|
|
9053
|
+
value: displayValue,
|
|
9054
|
+
onValueChange: handleValueChange,
|
|
9055
|
+
onKeyDown: handleKeyDown,
|
|
9056
|
+
placeholder
|
|
9057
|
+
}), /* @__PURE__ */ React76__default.default.createElement("div", {
|
|
9058
|
+
className: NumberInputField_default.osdkNumberInputStepper
|
|
9059
|
+
}, /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
9060
|
+
className: NumberInputField_default.osdkNumberInputStepButton,
|
|
9061
|
+
"aria-label": "Increment",
|
|
9062
|
+
tabIndex: -1,
|
|
9063
|
+
onClick: handleStepUp
|
|
9064
|
+
}, /* @__PURE__ */ React76__default.default.createElement(icons.ChevronUp, {
|
|
9065
|
+
size: CHEVRON_SIZE
|
|
9066
|
+
})), /* @__PURE__ */ React76__default.default.createElement(button.Button, {
|
|
9067
|
+
className: NumberInputField_default.osdkNumberInputStepButton,
|
|
9068
|
+
"aria-label": "Decrement",
|
|
9069
|
+
tabIndex: -1,
|
|
9070
|
+
onClick: handleStepDown
|
|
9071
|
+
}, /* @__PURE__ */ React76__default.default.createElement(icons.ChevronDown, {
|
|
9072
|
+
size: CHEVRON_SIZE
|
|
9073
|
+
}))));
|
|
9074
|
+
}
|
|
9075
|
+
function isValidInput(text) {
|
|
9076
|
+
return VALID_NUMERIC_REGEX.test(text);
|
|
9077
|
+
}
|
|
9078
|
+
function parseNumericValue(text) {
|
|
9079
|
+
if (text === "") {
|
|
9080
|
+
return null;
|
|
9081
|
+
}
|
|
9082
|
+
const parsed = Number(text);
|
|
9083
|
+
return Number.isNaN(parsed) ? null : parsed;
|
|
9084
|
+
}
|
|
9085
|
+
function formatNumberForDisplay(value) {
|
|
9086
|
+
return value != null ? String(value) : "";
|
|
9087
|
+
}
|
|
9088
|
+
|
|
8923
9089
|
// src/action-form/fields/RadioButtonsField.module.css
|
|
8924
9090
|
var RadioButtonsField_default = {};
|
|
8925
9091
|
|
|
@@ -9093,6 +9259,12 @@ function renderFieldComponent(fieldDefinition, value, onChange) {
|
|
|
9093
9259
|
onChange
|
|
9094
9260
|
}, fieldDefinition.fieldComponentProps));
|
|
9095
9261
|
case "NUMBER_INPUT":
|
|
9262
|
+
return /* @__PURE__ */ React76__default.default.createElement(NumberInputField, _extends13({
|
|
9263
|
+
id: fieldDefinition.fieldKey,
|
|
9264
|
+
value: typeof value === "number" ? value : null,
|
|
9265
|
+
onChange,
|
|
9266
|
+
placeholder: fieldDefinition.placeholder
|
|
9267
|
+
}, fieldDefinition.fieldComponentProps));
|
|
9096
9268
|
case "FILE_PICKER":
|
|
9097
9269
|
case "OBJECT_SET":
|
|
9098
9270
|
return /* @__PURE__ */ React76__default.default.createElement("div", null, "Unsupported field type: ", fieldDefinition.fieldComponent);
|
|
@@ -9171,7 +9343,7 @@ var BaseForm = /* @__PURE__ */ React76.memo(function BaseFormFn({
|
|
|
9171
9343
|
onSubmit(controlledFormState ?? rhfValues);
|
|
9172
9344
|
}, [onSubmit, controlledFormState]);
|
|
9173
9345
|
return /* @__PURE__ */ React76__default.default.createElement("form", {
|
|
9174
|
-
className:
|
|
9346
|
+
className: classnames14__default.default(BaseForm_default.osdkForm, className),
|
|
9175
9347
|
onSubmit: rhfHandleSubmit(onFormSubmit)
|
|
9176
9348
|
}, formTitle != null && /* @__PURE__ */ React76__default.default.createElement(FormHeader, {
|
|
9177
9349
|
title: formTitle
|