@equinor/fusion-react-filter 1.1.10 → 2.1.0-filter.2
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/README.md +4 -4
- package/dist/FilterProvider.d.ts +7 -28
- package/dist/FilterProvider.d.ts.map +1 -1
- package/dist/FilterProvider.js +24 -31
- package/dist/FilterProvider.js.map +1 -1
- package/dist/actions.d.ts +32 -0
- package/dist/actions.d.ts.map +1 -0
- package/dist/actions.js +20 -0
- package/dist/actions.js.map +1 -0
- package/dist/components/filter/FilterOptionHeader.d.ts +7 -0
- package/dist/components/filter/FilterOptionHeader.d.ts.map +1 -0
- package/dist/components/filter/FilterOptionHeader.js +69 -0
- package/dist/components/filter/FilterOptionHeader.js.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilter.d.ts +16 -0
- package/dist/components/filter/checkbox/CheckboxFilter.d.ts.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilter.js +16 -0
- package/dist/components/filter/checkbox/CheckboxFilter.js.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilter.style.d.ts +5 -0
- package/dist/components/filter/checkbox/CheckboxFilter.style.d.ts.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilter.style.js +19 -0
- package/dist/components/filter/checkbox/CheckboxFilter.style.js.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterOption.d.ts +14 -0
- package/dist/components/filter/checkbox/CheckboxFilterOption.d.ts.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterOption.js +19 -0
- package/dist/components/filter/checkbox/CheckboxFilterOption.js.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterOption.style.d.ts +3 -0
- package/dist/components/filter/checkbox/CheckboxFilterOption.style.d.ts.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterOption.style.js +40 -0
- package/dist/components/filter/checkbox/CheckboxFilterOption.style.js.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterOptionAll.d.ts +3 -0
- package/dist/components/filter/checkbox/CheckboxFilterOptionAll.d.ts.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterOptionAll.js +24 -0
- package/dist/components/filter/checkbox/CheckboxFilterOptionAll.js.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterOptions.d.ts +3 -0
- package/dist/components/filter/checkbox/CheckboxFilterOptions.d.ts.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterOptions.js +37 -0
- package/dist/components/filter/checkbox/CheckboxFilterOptions.js.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterProvider.d.ts +13 -0
- package/dist/components/filter/checkbox/CheckboxFilterProvider.d.ts.map +1 -0
- package/dist/components/filter/checkbox/CheckboxFilterProvider.js +16 -0
- package/dist/components/filter/checkbox/CheckboxFilterProvider.js.map +1 -0
- package/dist/components/filter/checkbox/context.d.ts +4 -0
- package/dist/components/filter/checkbox/context.d.ts.map +1 -0
- package/dist/components/filter/checkbox/context.js +3 -0
- package/dist/components/filter/checkbox/context.js.map +1 -0
- package/dist/components/filter/checkbox/index.d.ts +2 -0
- package/dist/components/filter/checkbox/index.d.ts.map +1 -0
- package/dist/components/filter/checkbox/index.js +2 -0
- package/dist/components/filter/checkbox/index.js.map +1 -0
- package/dist/components/filter/checkbox/types.d.ts +7 -0
- package/dist/components/filter/checkbox/types.d.ts.map +1 -0
- package/dist/components/filter/checkbox/types.js +2 -0
- package/dist/components/filter/checkbox/types.js.map +1 -0
- package/dist/components/filter/index.d.ts +5 -0
- package/dist/components/filter/index.d.ts.map +1 -0
- package/dist/components/filter/index.js +5 -0
- package/dist/components/filter/index.js.map +1 -0
- package/dist/components/filter/search/SearchFilter.d.ts +17 -0
- package/dist/components/filter/search/SearchFilter.d.ts.map +1 -0
- package/dist/components/filter/search/SearchFilter.js +47 -0
- package/dist/components/filter/search/SearchFilter.js.map +1 -0
- package/dist/components/filter/search/index.d.ts +2 -0
- package/dist/components/filter/search/index.d.ts.map +1 -0
- package/dist/components/filter/search/index.js +2 -0
- package/dist/components/filter/search/index.js.map +1 -0
- package/dist/components/filter/types.d.ts +7 -0
- package/dist/components/filter/types.d.ts.map +1 -0
- package/dist/components/filter/types.js +2 -0
- package/dist/components/filter/types.js.map +1 -0
- package/dist/components/index.d.ts +4 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +4 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/misc/ClearFilterButton.d.ts +10 -0
- package/dist/components/misc/ClearFilterButton.d.ts.map +1 -0
- package/dist/components/misc/ClearFilterButton.js +25 -0
- package/dist/components/misc/ClearFilterButton.js.map +1 -0
- package/dist/components/misc/FilterContainer.d.ts +12 -0
- package/dist/components/misc/FilterContainer.d.ts.map +1 -0
- package/dist/components/misc/FilterContainer.js +18 -0
- package/dist/components/misc/FilterContainer.js.map +1 -0
- package/dist/components/misc/index.d.ts +3 -0
- package/dist/components/misc/index.d.ts.map +1 -0
- package/dist/components/misc/index.js +3 -0
- package/dist/components/misc/index.js.map +1 -0
- package/dist/components/panel/FilterPanel.d.ts +19 -0
- package/dist/components/panel/FilterPanel.d.ts.map +1 -0
- package/dist/components/panel/FilterPanel.js +17 -0
- package/dist/components/panel/FilterPanel.js.map +1 -0
- package/dist/components/panel/FilterPanelBar.d.ts +3 -0
- package/dist/components/panel/FilterPanelBar.d.ts.map +1 -0
- package/dist/components/panel/FilterPanelBar.js +31 -0
- package/dist/components/panel/FilterPanelBar.js.map +1 -0
- package/dist/components/panel/FilterPanelFilters.d.ts +3 -0
- package/dist/components/panel/FilterPanelFilters.d.ts.map +1 -0
- package/dist/components/panel/FilterPanelFilters.js +13 -0
- package/dist/components/panel/FilterPanelFilters.js.map +1 -0
- package/dist/components/panel/FilterPanelProvider.d.ts +32 -0
- package/dist/components/panel/FilterPanelProvider.d.ts.map +1 -0
- package/dist/components/panel/FilterPanelProvider.js +35 -0
- package/dist/components/panel/FilterPanelProvider.js.map +1 -0
- package/dist/components/panel/FilterPanelSelector.d.ts +7 -0
- package/dist/components/panel/FilterPanelSelector.d.ts.map +1 -0
- package/dist/components/panel/FilterPanelSelector.js +17 -0
- package/dist/components/panel/FilterPanelSelector.js.map +1 -0
- package/dist/components/panel/index.d.ts +5 -0
- package/dist/components/panel/index.d.ts.map +1 -0
- package/dist/components/panel/index.js +5 -0
- package/dist/components/panel/index.js.map +1 -0
- package/dist/context.d.ts +6 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +6 -0
- package/dist/context.js.map +1 -0
- package/dist/hooks/index.d.ts +12 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +25 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/useClearFilter.d.ts +9 -0
- package/dist/hooks/useClearFilter.d.ts.map +1 -0
- package/dist/hooks/useClearFilter.js +30 -0
- package/dist/hooks/useClearFilter.js.map +1 -0
- package/dist/hooks/useFilter.d.ts +7 -0
- package/dist/hooks/useFilter.d.ts.map +1 -0
- package/dist/hooks/useFilter.js +26 -0
- package/dist/hooks/useFilter.js.map +1 -0
- package/dist/hooks/useFilterData.d.ts +11 -0
- package/dist/hooks/useFilterData.d.ts.map +1 -0
- package/dist/hooks/useFilterData.js +39 -0
- package/dist/hooks/useFilterData.js.map +1 -0
- package/dist/hooks/useFilterSelection.d.ts +5 -9
- package/dist/hooks/useFilterSelection.d.ts.map +1 -1
- package/dist/hooks/useFilterSelection.js +6 -21
- package/dist/hooks/useFilterSelection.js.map +1 -1
- package/dist/index.d.ts +4 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -15
- package/dist/index.js.map +1 -1
- package/dist/options/FilterOptionProvider.d.ts +12 -0
- package/dist/options/FilterOptionProvider.d.ts.map +1 -0
- package/dist/options/FilterOptionProvider.js +55 -0
- package/dist/options/FilterOptionProvider.js.map +1 -0
- package/dist/options/actions.d.ts +8 -0
- package/dist/options/actions.d.ts.map +1 -0
- package/dist/options/actions.js +6 -0
- package/dist/options/actions.js.map +1 -0
- package/dist/options/context.d.ts +6 -0
- package/dist/options/context.d.ts.map +1 -0
- package/dist/options/context.js +7 -0
- package/dist/options/context.js.map +1 -0
- package/dist/options/create-options.d.ts +4 -0
- package/dist/options/create-options.d.ts.map +1 -0
- package/dist/options/create-options.js +24 -0
- package/dist/options/create-options.js.map +1 -0
- package/dist/options/index.d.ts +6 -0
- package/dist/options/index.d.ts.map +1 -0
- package/dist/options/index.js +6 -0
- package/dist/options/index.js.map +1 -0
- package/dist/options/reducer.d.ts +58 -0
- package/dist/options/reducer.d.ts.map +1 -0
- package/dist/options/reducer.js +4 -0
- package/dist/options/reducer.js.map +1 -0
- package/dist/options/search/filter-option-match.d.ts +7 -0
- package/dist/options/search/filter-option-match.d.ts.map +1 -0
- package/dist/options/search/filter-option-match.js +10 -0
- package/dist/options/search/filter-option-match.js.map +1 -0
- package/dist/options/search/filter-option-search.d.ts +8 -0
- package/dist/options/search/filter-option-search.d.ts.map +1 -0
- package/dist/options/search/filter-option-search.js +12 -0
- package/dist/options/search/filter-option-search.js.map +1 -0
- package/dist/options/search/index.d.ts +2 -0
- package/dist/options/search/index.d.ts.map +1 -0
- package/dist/options/search/index.js +2 -0
- package/dist/options/search/index.js.map +1 -0
- package/dist/options/search/types.d.ts +9 -0
- package/dist/options/search/types.d.ts.map +1 -0
- package/dist/options/search/types.js +2 -0
- package/dist/options/search/types.js.map +1 -0
- package/dist/options/search/useFilterOptionSearch.d.ts +12 -0
- package/dist/options/search/useFilterOptionSearch.d.ts.map +1 -0
- package/dist/options/search/useFilterOptionSearch.js +28 -0
- package/dist/options/search/useFilterOptionSearch.js.map +1 -0
- package/dist/options/types.d.ts +32 -0
- package/dist/options/types.d.ts.map +1 -0
- package/dist/options/types.js +2 -0
- package/dist/options/types.js.map +1 -0
- package/dist/reducers.d.ts +170 -0
- package/dist/reducers.d.ts.map +1 -0
- package/dist/reducers.js +23 -0
- package/dist/reducers.js.map +1 -0
- package/dist/{types/Filter.d.ts → types.d.ts} +19 -16
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +13 -9
- package/dist/FilterContext.d.ts +0 -8
- package/dist/FilterContext.d.ts.map +0 -1
- package/dist/FilterContext.js +0 -4
- package/dist/FilterContext.js.map +0 -1
- package/dist/components/CheckBoxFilter/CheckBoxFilter.d.ts +0 -34
- package/dist/components/CheckBoxFilter/CheckBoxFilter.d.ts.map +0 -1
- package/dist/components/CheckBoxFilter/CheckBoxFilter.js +0 -76
- package/dist/components/CheckBoxFilter/CheckBoxFilter.js.map +0 -1
- package/dist/components/CheckBoxFilter/CheckBoxOption.d.ts +0 -14
- package/dist/components/CheckBoxFilter/CheckBoxOption.d.ts.map +0 -1
- package/dist/components/CheckBoxFilter/CheckBoxOption.js +0 -10
- package/dist/components/CheckBoxFilter/CheckBoxOption.js.map +0 -1
- package/dist/components/CheckBoxFilter/CheckBoxOption.style.d.ts +0 -3
- package/dist/components/CheckBoxFilter/CheckBoxOption.style.d.ts.map +0 -1
- package/dist/components/CheckBoxFilter/CheckBoxOption.style.js +0 -24
- package/dist/components/CheckBoxFilter/CheckBoxOption.style.js.map +0 -1
- package/dist/components/CheckBoxFilter/CheckboxFilter.style.d.ts +0 -3
- package/dist/components/CheckBoxFilter/CheckboxFilter.style.d.ts.map +0 -1
- package/dist/components/CheckBoxFilter/CheckboxFilter.style.js +0 -29
- package/dist/components/CheckBoxFilter/CheckboxFilter.style.js.map +0 -1
- package/dist/components/CheckBoxFilter/SelectAllOption.d.ts +0 -12
- package/dist/components/CheckBoxFilter/SelectAllOption.d.ts.map +0 -1
- package/dist/components/CheckBoxFilter/SelectAllOption.js +0 -22
- package/dist/components/CheckBoxFilter/SelectAllOption.js.map +0 -1
- package/dist/components/CheckBoxFilter/index.d.ts +0 -5
- package/dist/components/CheckBoxFilter/index.d.ts.map +0 -1
- package/dist/components/CheckBoxFilter/index.js +0 -5
- package/dist/components/CheckBoxFilter/index.js.map +0 -1
- package/dist/components/FilterSection/FilterSection.d.ts +0 -29
- package/dist/components/FilterSection/FilterSection.d.ts.map +0 -1
- package/dist/components/FilterSection/FilterSection.js +0 -64
- package/dist/components/FilterSection/FilterSection.js.map +0 -1
- package/dist/components/FilterSection/FilterSection.style.d.ts +0 -3
- package/dist/components/FilterSection/FilterSection.style.d.ts.map +0 -1
- package/dist/components/FilterSection/FilterSection.style.js +0 -56
- package/dist/components/FilterSection/FilterSection.style.js.map +0 -1
- package/dist/components/FilterSection/index.d.ts +0 -3
- package/dist/components/FilterSection/index.d.ts.map +0 -1
- package/dist/components/FilterSection/index.js +0 -3
- package/dist/components/FilterSection/index.js.map +0 -1
- package/dist/components/FilterSelectionChips/FilterSelectionChips.d.ts +0 -7
- package/dist/components/FilterSelectionChips/FilterSelectionChips.d.ts.map +0 -1
- package/dist/components/FilterSelectionChips/FilterSelectionChips.js +0 -18
- package/dist/components/FilterSelectionChips/FilterSelectionChips.js.map +0 -1
- package/dist/components/FilterSelectionChips/FilterSelectionChips.style.d.ts +0 -3
- package/dist/components/FilterSelectionChips/FilterSelectionChips.style.d.ts.map +0 -1
- package/dist/components/FilterSelectionChips/FilterSelectionChips.style.js +0 -31
- package/dist/components/FilterSelectionChips/FilterSelectionChips.style.js.map +0 -1
- package/dist/components/FilterSelectionChips/index.d.ts +0 -2
- package/dist/components/FilterSelectionChips/index.d.ts.map +0 -1
- package/dist/components/FilterSelectionChips/index.js +0 -2
- package/dist/components/FilterSelectionChips/index.js.map +0 -1
- package/dist/components/FilterSelectionChips/useChipsSelection.d.ts +0 -9
- package/dist/components/FilterSelectionChips/useChipsSelection.d.ts.map +0 -1
- package/dist/components/FilterSelectionChips/useChipsSelection.js +0 -26
- package/dist/components/FilterSelectionChips/useChipsSelection.js.map +0 -1
- package/dist/components/FilterSelector/FilterCategory.d.ts +0 -7
- package/dist/components/FilterSelector/FilterCategory.d.ts.map +0 -1
- package/dist/components/FilterSelector/FilterCategory.js +0 -24
- package/dist/components/FilterSelector/FilterCategory.js.map +0 -1
- package/dist/components/FilterSelector/FilterCategory.style.d.ts +0 -3
- package/dist/components/FilterSelector/FilterCategory.style.d.ts.map +0 -1
- package/dist/components/FilterSelector/FilterCategory.style.js +0 -12
- package/dist/components/FilterSelector/FilterCategory.style.js.map +0 -1
- package/dist/components/FilterSelector/FilterSelector.d.ts +0 -31
- package/dist/components/FilterSelector/FilterSelector.d.ts.map +0 -1
- package/dist/components/FilterSelector/FilterSelector.js +0 -51
- package/dist/components/FilterSelector/FilterSelector.js.map +0 -1
- package/dist/components/FilterSelector/FilterSelector.style.d.ts +0 -3
- package/dist/components/FilterSelector/FilterSelector.style.d.ts.map +0 -1
- package/dist/components/FilterSelector/FilterSelector.style.js +0 -44
- package/dist/components/FilterSelector/FilterSelector.style.js.map +0 -1
- package/dist/components/FilterSelector/index.d.ts +0 -4
- package/dist/components/FilterSelector/index.d.ts.map +0 -1
- package/dist/components/FilterSelector/index.js +0 -4
- package/dist/components/FilterSelector/index.js.map +0 -1
- package/dist/components/GeneralBar/GeneralBar.d.ts +0 -26
- package/dist/components/GeneralBar/GeneralBar.d.ts.map +0 -1
- package/dist/components/GeneralBar/GeneralBar.js +0 -63
- package/dist/components/GeneralBar/GeneralBar.js.map +0 -1
- package/dist/components/GeneralBar/GeneralBar.style.d.ts +0 -3
- package/dist/components/GeneralBar/GeneralBar.style.d.ts.map +0 -1
- package/dist/components/GeneralBar/GeneralBar.style.js +0 -20
- package/dist/components/GeneralBar/GeneralBar.style.js.map +0 -1
- package/dist/components/GeneralBar/index.d.ts +0 -3
- package/dist/components/GeneralBar/index.d.ts.map +0 -1
- package/dist/components/GeneralBar/index.js +0 -3
- package/dist/components/GeneralBar/index.js.map +0 -1
- package/dist/components/HorizontalBar/HorizontalBar.d.ts +0 -10
- package/dist/components/HorizontalBar/HorizontalBar.d.ts.map +0 -1
- package/dist/components/HorizontalBar/HorizontalBar.js +0 -23
- package/dist/components/HorizontalBar/HorizontalBar.js.map +0 -1
- package/dist/components/HorizontalBar/index.d.ts +0 -3
- package/dist/components/HorizontalBar/index.d.ts.map +0 -1
- package/dist/components/HorizontalBar/index.js +0 -3
- package/dist/components/HorizontalBar/index.js.map +0 -1
- package/dist/components/HorizontalFilterPanel/HorizontalFilterPanel.d.ts +0 -17
- package/dist/components/HorizontalFilterPanel/HorizontalFilterPanel.d.ts.map +0 -1
- package/dist/components/HorizontalFilterPanel/HorizontalFilterPanel.js +0 -28
- package/dist/components/HorizontalFilterPanel/HorizontalFilterPanel.js.map +0 -1
- package/dist/components/HorizontalFilterPanel/index.d.ts +0 -3
- package/dist/components/HorizontalFilterPanel/index.d.ts.map +0 -1
- package/dist/components/HorizontalFilterPanel/index.js +0 -3
- package/dist/components/HorizontalFilterPanel/index.js.map +0 -1
- package/dist/components/Icon/index.d.ts +0 -11
- package/dist/components/Icon/index.d.ts.map +0 -1
- package/dist/components/Icon/index.js +0 -16
- package/dist/components/Icon/index.js.map +0 -1
- package/dist/components/RadioFilter/RadioFilter.d.ts +0 -17
- package/dist/components/RadioFilter/RadioFilter.d.ts.map +0 -1
- package/dist/components/RadioFilter/RadioFilter.js +0 -51
- package/dist/components/RadioFilter/RadioFilter.js.map +0 -1
- package/dist/components/RadioFilter/RadioFilter.style.d.ts +0 -3
- package/dist/components/RadioFilter/RadioFilter.style.d.ts.map +0 -1
- package/dist/components/RadioFilter/RadioFilter.style.js +0 -38
- package/dist/components/RadioFilter/RadioFilter.style.js.map +0 -1
- package/dist/components/RadioFilter/index.d.ts +0 -3
- package/dist/components/RadioFilter/index.d.ts.map +0 -1
- package/dist/components/RadioFilter/index.js +0 -3
- package/dist/components/RadioFilter/index.js.map +0 -1
- package/dist/epic/StatefulObserver.d.ts +0 -8
- package/dist/epic/StatefulObserver.d.ts.map +0 -1
- package/dist/epic/StatefulObserver.js +0 -26
- package/dist/epic/StatefulObserver.js.map +0 -1
- package/dist/epic/epic.d.ts +0 -14
- package/dist/epic/epic.d.ts.map +0 -1
- package/dist/epic/epic.js +0 -2
- package/dist/epic/epic.js.map +0 -1
- package/dist/epic/hooks/useObservableSelector.d.ts +0 -14
- package/dist/epic/hooks/useObservableSelector.d.ts.map +0 -1
- package/dist/epic/hooks/useObservableSelector.js +0 -16
- package/dist/epic/hooks/useObservableSelector.js.map +0 -1
- package/dist/epic/hooks/useObservableState.d.ts +0 -13
- package/dist/epic/hooks/useObservableState.d.ts.map +0 -1
- package/dist/epic/hooks/useObservableState.js +0 -18
- package/dist/epic/hooks/useObservableState.js.map +0 -1
- package/dist/epic/hooks/useSelector.d.ts +0 -10
- package/dist/epic/hooks/useSelector.d.ts.map +0 -1
- package/dist/epic/hooks/useSelector.js +0 -14
- package/dist/epic/hooks/useSelector.js.map +0 -1
- package/dist/epic/reducer.d.ts +0 -56
- package/dist/epic/reducer.d.ts.map +0 -1
- package/dist/epic/reducer.js +0 -78
- package/dist/epic/reducer.js.map +0 -1
- package/dist/filterStore/actions.d.ts +0 -23
- package/dist/filterStore/actions.d.ts.map +0 -1
- package/dist/filterStore/actions.js +0 -18
- package/dist/filterStore/actions.js.map +0 -1
- package/dist/filterStore/epics.d.ts +0 -10
- package/dist/filterStore/epics.d.ts.map +0 -1
- package/dist/filterStore/epics.js +0 -10
- package/dist/filterStore/epics.js.map +0 -1
- package/dist/filterStore/reducers.d.ts +0 -4
- package/dist/filterStore/reducers.d.ts.map +0 -1
- package/dist/filterStore/reducers.js +0 -43
- package/dist/filterStore/reducers.js.map +0 -1
- package/dist/filterStore/store.d.ts +0 -106
- package/dist/filterStore/store.d.ts.map +0 -1
- package/dist/filterStore/store.js +0 -158
- package/dist/filterStore/store.js.map +0 -1
- package/dist/hooks/useEventListener.d.ts +0 -4
- package/dist/hooks/useEventListener.d.ts.map +0 -1
- package/dist/hooks/useEventListener.js +0 -14
- package/dist/hooks/useEventListener.js.map +0 -1
- package/dist/hooks/useFilterChangeHandler.d.ts +0 -26
- package/dist/hooks/useFilterChangeHandler.d.ts.map +0 -1
- package/dist/hooks/useFilterChangeHandler.js +0 -43
- package/dist/hooks/useFilterChangeHandler.js.map +0 -1
- package/dist/hooks/useFilterContext.d.ts +0 -4
- package/dist/hooks/useFilterContext.d.ts.map +0 -1
- package/dist/hooks/useFilterContext.js +0 -5
- package/dist/hooks/useFilterContext.js.map +0 -1
- package/dist/hooks/useFilterOptionsBuilder.d.ts +0 -27
- package/dist/hooks/useFilterOptionsBuilder.d.ts.map +0 -1
- package/dist/hooks/useFilterOptionsBuilder.js +0 -39
- package/dist/hooks/useFilterOptionsBuilder.js.map +0 -1
- package/dist/hooks/useFilterOptionsCounter.d.ts +0 -16
- package/dist/hooks/useFilterOptionsCounter.d.ts.map +0 -1
- package/dist/hooks/useFilterOptionsCounter.js +0 -32
- package/dist/hooks/useFilterOptionsCounter.js.map +0 -1
- package/dist/hooks/useFilterStore.d.ts +0 -25
- package/dist/hooks/useFilterStore.d.ts.map +0 -1
- package/dist/hooks/useFilterStore.js +0 -34
- package/dist/hooks/useFilterStore.js.map +0 -1
- package/dist/hooks/useResizablePanel.d.ts +0 -20
- package/dist/hooks/useResizablePanel.d.ts.map +0 -1
- package/dist/hooks/useResizablePanel.js +0 -71
- package/dist/hooks/useResizablePanel.js.map +0 -1
- package/dist/types/Filter.d.ts.map +0 -1
- package/dist/types/Filter.js +0 -2
- package/dist/types/Filter.js.map +0 -1
- package/dist/types/FilterContainerProps.d.ts +0 -10
- package/dist/types/FilterContainerProps.d.ts.map +0 -1
- package/dist/types/FilterContainerProps.js +0 -2
- package/dist/types/FilterContainerProps.js.map +0 -1
- package/dist/types/FilterCounters.d.ts +0 -3
- package/dist/types/FilterCounters.d.ts.map +0 -1
- package/dist/types/FilterCounters.js +0 -2
- package/dist/types/FilterCounters.js.map +0 -1
- package/dist/types/FilterOption.d.ts +0 -13
- package/dist/types/FilterOption.d.ts.map +0 -1
- package/dist/types/FilterOption.js +0 -2
- package/dist/types/FilterOption.js.map +0 -1
- package/dist/types/FilterStoreState.d.ts +0 -6
- package/dist/types/FilterStoreState.d.ts.map +0 -1
- package/dist/types/FilterStoreState.js +0 -2
- package/dist/types/FilterStoreState.js.map +0 -1
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { FilterOptionContext } from '../../../options';
|
|
2
|
+
import { CheckboxOption } from './types';
|
|
3
|
+
export declare const useCheckboxFilterOptionContext: <TOption extends CheckboxOption = CheckboxOption, TValue = string>() => FilterOptionContext<TOption, TValue>;
|
|
4
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../../src/components/filter/checkbox/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,8BAA8B,8GAG2C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../../src/components/filter/checkbox/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAuB,MAAM,kBAAkB,CAAC;AAG/E,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAGJ,EAAE,CAAC,sBAAsB,EAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/filter/checkbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/filter/checkbox/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/components/filter/checkbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,oBAAY,cAAc,GAAG,YAAY,GAAG;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/components/filter/checkbox/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/filter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/filter/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { TextInputProps } from '@equinor/fusion-react-textinput';
|
|
2
|
+
import { FilterFn } from '../../../types';
|
|
3
|
+
export declare type SearchFilterProps<TData> = Omit<TextInputProps, 'onInput' | 'ref'> & {
|
|
4
|
+
/** identifier for filter */
|
|
5
|
+
filterKey: string;
|
|
6
|
+
/** function for filtering by provided query */
|
|
7
|
+
filterFn?: FilterFn<TData, string>;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Simple text filter
|
|
11
|
+
*
|
|
12
|
+
* __NOTE__ if not `filterFn` provided, default will be created, this filter is brute and
|
|
13
|
+
* `JSON.stringify` provided data object, this might not be optimal for heavy data sets.
|
|
14
|
+
*/
|
|
15
|
+
export declare const SearchFilter: <TData>(props: SearchFilterProps<TData>) => JSX.Element;
|
|
16
|
+
export default SearchFilter;
|
|
17
|
+
//# sourceMappingURL=SearchFilter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchFilter.d.ts","sourceRoot":"","sources":["../../../../src/components/filter/search/SearchFilter.tsx"],"names":[],"mappings":"AACA,OAAO,EAAyC,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAIxG,OAAO,EAAU,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AASlD,oBAAY,iBAAiB,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,KAAK,CAAC,GAAG;IAC/E,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;CACpC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,8CAA8C,WAuCtE,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useMemo, useRef } from 'react';
|
|
3
|
+
import { TextInput } from '@equinor/fusion-react-textinput';
|
|
4
|
+
import { useSubscription } from '@equinor/fusion-react-observable';
|
|
5
|
+
import { useFilter, useFilterSelection } from '../../../hooks';
|
|
6
|
+
const defaultMatcher = (data, query) => {
|
|
7
|
+
/** early escape, no filter */
|
|
8
|
+
if (!query)
|
|
9
|
+
return data;
|
|
10
|
+
const matcher = new RegExp(query, 'i');
|
|
11
|
+
return data.filter((x) => !!JSON.stringify(Object.values(x)).match(matcher));
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Simple text filter
|
|
15
|
+
*
|
|
16
|
+
* __NOTE__ if not `filterFn` provided, default will be created, this filter is brute and
|
|
17
|
+
* `JSON.stringify` provided data object, this might not be optimal for heavy data sets.
|
|
18
|
+
*/
|
|
19
|
+
export const SearchFilter = (props) => {
|
|
20
|
+
const { filterKey, filterFn, ...args } = props;
|
|
21
|
+
/** create search filter */
|
|
22
|
+
const filter = useMemo(() => ({
|
|
23
|
+
key: filterKey,
|
|
24
|
+
filterFn: filterFn || defaultMatcher,
|
|
25
|
+
}), [filterKey, filterFn]);
|
|
26
|
+
/** register filter in the filter context */
|
|
27
|
+
const setSelection = useFilter(filter);
|
|
28
|
+
/** create a reference to the text input */
|
|
29
|
+
const inputRef = useRef(null);
|
|
30
|
+
/** update search selection when input value changes */
|
|
31
|
+
const onInput = useCallback((e) => {
|
|
32
|
+
setSelection(e.currentTarget.value);
|
|
33
|
+
}, [setSelection]);
|
|
34
|
+
/** subscribe to changes in the filter selection */
|
|
35
|
+
useSubscription(
|
|
36
|
+
/** create an observable selection for filter */
|
|
37
|
+
useFilterSelection(props.filterKey),
|
|
38
|
+
/** update value of text input when selection changes */
|
|
39
|
+
useCallback((query) => {
|
|
40
|
+
if (inputRef.current) {
|
|
41
|
+
inputRef.current.value = query || '';
|
|
42
|
+
}
|
|
43
|
+
}, []));
|
|
44
|
+
return _jsx(TextInput, Object.assign({ ref: inputRef, onInput: onInput, type: "search", variant: "outlined", icon: "search" }, args), void 0);
|
|
45
|
+
};
|
|
46
|
+
export default SearchFilter;
|
|
47
|
+
//# sourceMappingURL=SearchFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchFilter.js","sourceRoot":"","sources":["../../../../src/components/filter/search/SearchFilter.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAY,MAAM,OAAO,CAAC;AAC/D,OAAO,EAA8B,SAAS,EAAkB,MAAM,iCAAiC,CAAC;AACxG,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAG/D,MAAM,cAAc,GAAG,CAAS,IAAa,EAAE,KAAa,EAAW,EAAE;IACvE,8BAA8B;IAC9B,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/E,CAAC,CAAC;AASF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAS,KAA+B,EAAe,EAAE;IACnF,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAE/C,2BAA2B;IAC3B,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CAAC,CAAC;QACL,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,QAAQ,IAAI,cAAc;KACrC,CAAC,EACF,CAAC,SAAS,EAAE,QAAQ,CAAC,CACtB,CAAC;IAEF,4CAA4C;IAC5C,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAEvC,2CAA2C;IAC3C,MAAM,QAAQ,GAAG,MAAM,CAA6B,IAAI,CAAC,CAAC;IAE1D,uDAAuD;IACvD,MAAM,OAAO,GAAG,WAAW,CACzB,CAAC,CAA8C,EAAE,EAAE;QACjD,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,mDAAmD;IACnD,eAAe;IACb,iDAAiD;IACjD,kBAAkB,CAAS,KAAK,CAAC,SAAS,CAAC;IAC3C,wDAAwD;IACxD,WAAW,CAAC,CAAC,KAAK,EAAE,EAAE;QACpB,IAAI,QAAQ,CAAC,OAAO,EAAE;YACpB,QAAQ,CAAC,OAAO,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;SACtC;IACH,CAAC,EAAE,EAAE,CAAC,CACP,CAAC;IAEF,OAAO,KAAC,SAAS,kBAAC,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,QAAQ,EAAC,OAAO,EAAC,UAAU,EAAC,IAAI,EAAC,QAAQ,IAAK,IAAI,UAAI,CAAC;AACjH,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/filter/search/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/filter/search/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/filter/types.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe,GAAG;IAC5B,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/filter/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ButtonProps } from '@equinor/fusion-react-button';
|
|
2
|
+
export declare type ClearFilterButtonProps = Omit<ButtonProps, 'onClick'>;
|
|
3
|
+
/**
|
|
4
|
+
* Component for resetting filter values.
|
|
5
|
+
* uses the `useClearFilter` hook
|
|
6
|
+
* inherits `ButtonProps` from `@equinor/fusion-react-button`
|
|
7
|
+
*/
|
|
8
|
+
export declare const ClearFilterButton: (props: ClearFilterButtonProps) => JSX.Element;
|
|
9
|
+
export default ClearFilterButton;
|
|
10
|
+
//# sourceMappingURL=ClearFilterButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClearFilterButton.d.ts","sourceRoot":"","sources":["../../../src/components/misc/ClearFilterButton.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAU,WAAW,EAA2B,MAAM,8BAA8B,CAAC;AAI5F,oBAAY,sBAAsB,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,UAAW,sBAAsB,KAAG,WAoBjE,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
import { useForwardRef } from '@equinor/fusion-react-utils';
|
|
4
|
+
import { useSubscription } from '@equinor/fusion-react-observable';
|
|
5
|
+
import { Button } from '@equinor/fusion-react-button';
|
|
6
|
+
import { useClearFilter } from '../../hooks';
|
|
7
|
+
/**
|
|
8
|
+
* Component for resetting filter values.
|
|
9
|
+
* uses the `useClearFilter` hook
|
|
10
|
+
* inherits `ButtonProps` from `@equinor/fusion-react-button`
|
|
11
|
+
*/
|
|
12
|
+
export const ClearFilterButton = (props) => {
|
|
13
|
+
const { label = 'Clear Filter', ...args } = props;
|
|
14
|
+
const { clear, changed$ } = useClearFilter();
|
|
15
|
+
const ref = useForwardRef(props.ref);
|
|
16
|
+
/** Subscribe to changes and toggle `disable` of button */
|
|
17
|
+
useSubscription(changed$, useCallback((changed) => {
|
|
18
|
+
ref.current && (ref.current.disabled = !Object.keys(changed).length);
|
|
19
|
+
}, [ref]));
|
|
20
|
+
/** Reset filters on click */
|
|
21
|
+
const onClick = useCallback(() => clear(), [clear]);
|
|
22
|
+
return _jsx(Button, Object.assign({ variant: "ghost" }, { ...args, ref, onClick, label }), void 0);
|
|
23
|
+
};
|
|
24
|
+
export default ClearFilterButton;
|
|
25
|
+
//# sourceMappingURL=ClearFilterButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClearFilterButton.js","sourceRoot":"","sources":["../../../src/components/misc/ClearFilterButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAwC,MAAM,8BAA8B,CAAC;AAE5F,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAI7C;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAA6B,EAAe,EAAE;IAC9E,MAAM,EAAE,KAAK,GAAG,cAAc,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAClD,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,cAAc,EAAE,CAAC;IAC7C,MAAM,GAAG,GAAG,aAAa,CAA0B,KAAK,CAAC,GAAG,CAAC,CAAC;IAE9D,0DAA0D;IAC1D,eAAe,CACb,QAAQ,EACR,WAAW,CACT,CAAC,OAAO,EAAE,EAAE;QACV,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;IACvE,CAAC,EACD,CAAC,GAAG,CAAC,CACN,CACF,CAAC;IAEF,6BAA6B;IAC7B,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEpD,OAAO,KAAC,MAAM,kBAAC,OAAO,EAAC,OAAO,IAAK,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,UAAI,CAAC;AAC1E,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { theme } from '@equinor/fusion-react-styles';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
declare type StyleProps = {
|
|
4
|
+
spacing?: keyof typeof theme.spacing.comfortable;
|
|
5
|
+
};
|
|
6
|
+
export declare type FilterContainerProps = JSX.IntrinsicElements['div'] & StyleProps;
|
|
7
|
+
/**
|
|
8
|
+
* Components for displaying filters
|
|
9
|
+
*/
|
|
10
|
+
export declare const FilterContainer: (props: React.PropsWithChildren<FilterContainerProps>) => JSX.Element;
|
|
11
|
+
export default FilterContainer;
|
|
12
|
+
//# sourceMappingURL=FilterContainer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterContainer.d.ts","sourceRoot":"","sources":["../../../src/components/misc/FilterContainer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAkC,KAAK,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,aAAK,UAAU,GAAG;IAChB,OAAO,CAAC,EAAE,MAAM,OAAO,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;CAClD,CAAC;AAEF,oBAAY,oBAAoB,GAAG,GAAG,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,eAAe,UAAW,MAAM,iBAAiB,CAAC,oBAAoB,CAAC,KAAG,WAQtF,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { clsx, createStyles, makeStyles } from '@equinor/fusion-react-styles';
|
|
3
|
+
const useStyles = makeStyles((theme) => createStyles({
|
|
4
|
+
root: ({ spacing }) => ({
|
|
5
|
+
display: 'flex',
|
|
6
|
+
gap: theme.spacing.comfortable[spacing || 'medium'].getVariable('padding'),
|
|
7
|
+
}),
|
|
8
|
+
}), { name: 'fusion-filter-container' });
|
|
9
|
+
/**
|
|
10
|
+
* Components for displaying filters
|
|
11
|
+
*/
|
|
12
|
+
export const FilterContainer = (props) => {
|
|
13
|
+
const { children, className, spacing, ...args } = props;
|
|
14
|
+
const styles = useStyles({ spacing });
|
|
15
|
+
return (_jsx("div", Object.assign({ className: clsx(styles.root, className) }, args, { children: children }), void 0));
|
|
16
|
+
};
|
|
17
|
+
export default FilterContainer;
|
|
18
|
+
//# sourceMappingURL=FilterContainer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterContainer.js","sourceRoot":"","sources":["../../../src/components/misc/FilterContainer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAS,MAAM,8BAA8B,CAAC;AAGrF,MAAM,SAAS,GAAG,UAAU,CAC1B,CAAC,KAAK,EAAE,EAAE,CACR,YAAY,CAAC;IACX,IAAI,EAAE,CAAC,EAAE,OAAO,EAAc,EAAE,EAAE,CAAC,CAAC;QAClC,OAAO,EAAE,MAAM;QACf,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC;KAC3E,CAAC;CACH,CAAC,EACJ,EAAE,IAAI,EAAE,yBAAyB,EAAE,CACpC,CAAC;AAQF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAoD,EAAe,EAAE;IACnG,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACxD,MAAM,MAAM,GAAG,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IACtC,OAAO,CACL,4BAAK,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAM,IAAI,cACnD,QAAQ,YACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/misc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/misc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare type FilterPanelProps = {
|
|
2
|
+
/** Show filter bar */
|
|
3
|
+
showBar?: boolean;
|
|
4
|
+
/** Show selector for filters */
|
|
5
|
+
showSelector?: boolean;
|
|
6
|
+
/** display filters initial */
|
|
7
|
+
showFilters?: boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Initial selected filters
|
|
10
|
+
* @default all - `filterKey` of all child components provided
|
|
11
|
+
*/
|
|
12
|
+
selectedFilters?: string[];
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Base component for displaying filter components and controllers
|
|
16
|
+
*/
|
|
17
|
+
export declare const FilterPanel: (props: React.PropsWithChildren<FilterPanelProps>) => JSX.Element;
|
|
18
|
+
export default FilterPanel;
|
|
19
|
+
//# sourceMappingURL=FilterPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanel.d.ts","sourceRoot":"","sources":["../../../src/components/panel/FilterPanel.tsx"],"names":[],"mappings":"AAOA,oBAAY,gBAAgB,GAAG;IAC7B,sBAAsB;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,gCAAgC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,8BAA8B;IAC9B,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,UAAW,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,KAAG,WAW9E,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Children } from 'react';
|
|
3
|
+
import { FilterPanelProvider } from './FilterPanelProvider';
|
|
4
|
+
import { FilterPanelSelector } from './FilterPanelSelector';
|
|
5
|
+
import { FilterPanelFilters } from './FilterPanelFilters';
|
|
6
|
+
import { FilterPanelBar } from './FilterPanelBar';
|
|
7
|
+
/**
|
|
8
|
+
* Base component for displaying filter components and controllers
|
|
9
|
+
*/
|
|
10
|
+
export const FilterPanel = (props) => {
|
|
11
|
+
const { showFilters, children } = props;
|
|
12
|
+
const filters = Children.toArray(children).filter((x) => !!x.props.filterKey);
|
|
13
|
+
const initialSelectedFilters = props.selectedFilters || filters.map((x) => x.props.filterKey);
|
|
14
|
+
return (_jsxs(FilterPanelProvider, Object.assign({}, { filters, initialSelectedFilters, showFilters }, { children: [props.showBar && _jsx(FilterPanelBar, {}, void 0), props.showSelector && _jsx(FilterPanelSelector, {}, void 0), _jsx(FilterPanelFilters, {}, void 0)] }), void 0));
|
|
15
|
+
};
|
|
16
|
+
export default FilterPanel;
|
|
17
|
+
//# sourceMappingURL=FilterPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanel.js","sourceRoot":"","sources":["../../../src/components/panel/FilterPanel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAgB,MAAM,OAAO,CAAC;AAE/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAmBlD;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAgD,EAAe,EAAE;IAC3F,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACxC,MAAM,OAAO,GAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAqC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACnH,MAAM,sBAAsB,GAAG,KAAK,CAAC,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9F,OAAO,CACL,MAAC,mBAAmB,oBAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,eACtE,KAAK,CAAC,OAAO,IAAI,KAAC,cAAc,aAAG,EACnC,KAAK,CAAC,YAAY,IAAI,KAAC,mBAAmB,aAAG,EAC9C,KAAC,kBAAkB,aAAG,aACF,CACvB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanelBar.d.ts","sourceRoot":"","sources":["../../../src/components/panel/FilterPanelBar.tsx"],"names":[],"mappings":"AA6BA,eAAO,MAAM,cAAc,QAAO,WAkBjC,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import Button from '@equinor/fusion-react-button';
|
|
3
|
+
import { createStyles, makeStyles } from '@equinor/fusion-react-styles';
|
|
4
|
+
import { SearchFilter } from '../filter';
|
|
5
|
+
import { ClearFilterButton } from '../misc';
|
|
6
|
+
import { useFilterPanelContext } from './FilterPanelProvider';
|
|
7
|
+
const useStyles = makeStyles((theme) => createStyles({
|
|
8
|
+
root: {
|
|
9
|
+
display: 'flex',
|
|
10
|
+
alignItems: 'center',
|
|
11
|
+
gap: theme.spacing.comfortable.medium.getVariable('padding'),
|
|
12
|
+
},
|
|
13
|
+
actions: {
|
|
14
|
+
marginLeft: 'auto',
|
|
15
|
+
display: 'flex',
|
|
16
|
+
alignItems: 'center',
|
|
17
|
+
gap: theme.spacing.comfortable.medium.getVariable('padding'),
|
|
18
|
+
},
|
|
19
|
+
resetBtn: {
|
|
20
|
+
'&[disabled]': {
|
|
21
|
+
display: 'none',
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
}), { name: 'fusion-filter-panel-bar' });
|
|
25
|
+
export const FilterPanelBar = () => {
|
|
26
|
+
const { showFilters, setShowFilters } = useFilterPanelContext();
|
|
27
|
+
const styles = useStyles();
|
|
28
|
+
return (_jsxs("div", Object.assign({ className: styles.root }, { children: [_jsx(SearchFilter, { filterKey: "global", label: "Search all", dense: true }, void 0), _jsxs("div", Object.assign({ className: styles.actions }, { children: [_jsx(ClearFilterButton, { className: styles.resetBtn, label: "Reset Filters", icon: "refresh", variant: "ghost" }, void 0), _jsx(Button, { icon: showFilters ? 'chevron_up' : 'chevron_down', label: showFilters ? 'Hide filters' : 'Show filters', onClick: () => setShowFilters(!showFilters), variant: "outlined", trailingIcon: true }, void 0)] }), void 0)] }), void 0));
|
|
29
|
+
};
|
|
30
|
+
export default FilterPanelBar;
|
|
31
|
+
//# sourceMappingURL=FilterPanelBar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanelBar.js","sourceRoot":"","sources":["../../../src/components/panel/FilterPanelBar.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,8BAA8B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,SAAS,GAAG,UAAU,CAC1B,CAAC,KAAK,EAAE,EAAE,CACR,YAAY,CAAC;IACX,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,QAAQ;QACpB,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;KAC7D;IACD,OAAO,EAAE;QACP,UAAU,EAAE,MAAM;QAClB,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,QAAQ;QACpB,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;KAC7D;IACD,QAAQ,EAAE;QACR,aAAa,EAAE;YACb,OAAO,EAAE,MAAM;SAChB;KACF;CACF,CAAC,EACJ,EAAE,IAAI,EAAE,yBAAyB,EAAE,CACpC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAgB,EAAE;IAC9C,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAChE,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,OAAO,CACL,6BAAK,SAAS,EAAE,MAAM,CAAC,IAAI,iBACzB,KAAC,YAAY,IAAC,SAAS,EAAC,QAAQ,EAAC,KAAK,EAAC,YAAY,EAAC,KAAK,iBAAG,EAC5D,6BAAK,SAAS,EAAE,MAAM,CAAC,OAAO,iBAC5B,KAAC,iBAAiB,IAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAC,eAAe,EAAC,IAAI,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,WAAG,EACtG,KAAC,MAAM,IACL,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,EACjD,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,EACpD,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,EAC3C,OAAO,EAAC,UAAU,EAClB,YAAY,iBACZ,aACE,aACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanelFilters.d.ts","sourceRoot":"","sources":["../../../src/components/panel/FilterPanelFilters.tsx"],"names":[],"mappings":"AAOA,eAAO,MAAM,kBAAkB,QAAO,WAarC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
import { useObservableState } from '@equinor/fusion-react-observable';
|
|
4
|
+
import { useFilterPanelContext } from './FilterPanelProvider';
|
|
5
|
+
import { map } from 'rxjs/operators';
|
|
6
|
+
import { FilterContainer } from '../misc';
|
|
7
|
+
export const FilterPanelFilters = () => {
|
|
8
|
+
const { filters$, showFilters } = useFilterPanelContext();
|
|
9
|
+
const filters = useObservableState(useMemo(() => filters$.pipe(map(({ filters, selectedFilters }) => filters.filter((filter) => selectedFilters.has(filter.props.filterKey)))), [filters$]));
|
|
10
|
+
return _jsx(FilterContainer, Object.assign({ style: { display: showFilters ? '' : 'none' } }, { children: filters }), void 0);
|
|
11
|
+
};
|
|
12
|
+
export default FilterPanelFilters;
|
|
13
|
+
//# sourceMappingURL=FilterPanelFilters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanelFilters.js","sourceRoot":"","sources":["../../../src/components/panel/FilterPanelFilters.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAgB,EAAE;IAClD,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAE1D,MAAM,OAAO,GAAG,kBAAkB,CAChC,OAAO,CACL,GAAG,EAAE,CACH,QAAQ,CAAC,IAAI,CACX,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAC/G,EACH,CAAC,QAAQ,CAAC,CACX,CACF,CAAC;IACF,OAAO,KAAC,eAAe,kBAAC,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,gBAAG,OAAO,YAAmB,CAAC;AACrG,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ReactiveSubject } from '@equinor/fusion-react-observable';
|
|
2
|
+
import { ReactElement } from 'react';
|
|
3
|
+
import { FilterComponent } from '../filter';
|
|
4
|
+
import FilterPanelSelector from './FilterPanelSelector';
|
|
5
|
+
import { ActionType } from 'typesafe-actions';
|
|
6
|
+
export declare type FilterPanelProviderContext = {
|
|
7
|
+
filters$: ReactiveSubject<State, Actions>;
|
|
8
|
+
showFilters?: boolean;
|
|
9
|
+
setShowFilters: (show: boolean) => void;
|
|
10
|
+
};
|
|
11
|
+
declare const Consumer: import("react").Consumer<FilterPanelProviderContext | null>;
|
|
12
|
+
export { Consumer as FilterPanelConsumer };
|
|
13
|
+
export declare const useFilterPanelContext: () => FilterPanelProviderContext;
|
|
14
|
+
export declare const actions: {
|
|
15
|
+
add: import("typesafe-actions").PayloadActionCreator<"@FILTER_PANEL/FILTER_SELECTION_ADD", string>;
|
|
16
|
+
remove: import("typesafe-actions").PayloadActionCreator<"@FILTER_PANEL/FILTER_SELECTION_REMOVE", string>;
|
|
17
|
+
};
|
|
18
|
+
declare type Actions = ActionType<typeof actions>;
|
|
19
|
+
declare type State = {
|
|
20
|
+
selectedFilters: Set<string>;
|
|
21
|
+
filters: ReactElement<FilterComponent>[];
|
|
22
|
+
};
|
|
23
|
+
export declare const initialState: State;
|
|
24
|
+
declare type FilterPanelProviderProps = React.PropsWithChildren<{
|
|
25
|
+
filters: ReactElement<FilterComponent>[];
|
|
26
|
+
FilterSelector?: typeof FilterPanelSelector;
|
|
27
|
+
initialSelectedFilters?: string[];
|
|
28
|
+
showFilters?: boolean;
|
|
29
|
+
}>;
|
|
30
|
+
export declare const FilterPanelProvider: (props: FilterPanelProviderProps) => JSX.Element;
|
|
31
|
+
export default FilterPanelProvider;
|
|
32
|
+
//# sourceMappingURL=FilterPanelProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanelProvider.d.ts","sourceRoot":"","sources":["../../../src/components/panel/FilterPanelProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,YAAY,EAAuC,MAAM,OAAO,CAAC;AAE1E,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAA+B,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE3E,oBAAY,0BAA0B,GAAG;IACvC,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC1C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACzC,CAAC;AAGF,QAAA,MAAkB,QAAQ,6DAAY,CAAC;AAEvC,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,CAAC;AAE3C,eAAO,MAAM,qBAAqB,QAAO,0BACU,CAAC;AAEpD,eAAO,MAAM,OAAO;;;CAGnB,CAAC;AAEF,aAAK,OAAO,GAAG,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC;AAC1C,aAAK,KAAK,GAAG;IACX,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,OAAO,EAAE,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC;CAC1C,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,KAG1B,CAAC;AAYF,aAAK,wBAAwB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IACtD,OAAO,EAAE,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC;IACzC,cAAc,CAAC,EAAE,OAAO,mBAAmB,CAAC;IAC5C,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC,CAAC;AAEH,eAAO,MAAM,mBAAmB,UAAW,wBAAwB,KAAG,WASrE,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useObservable } from '@equinor/fusion-react-observable';
|
|
3
|
+
import { createContext, useContext, useState } from 'react';
|
|
4
|
+
import { createAction, createReducer } from 'typesafe-actions';
|
|
5
|
+
const context = createContext(null);
|
|
6
|
+
const { Provider, Consumer } = context;
|
|
7
|
+
export { Consumer as FilterPanelConsumer };
|
|
8
|
+
export const useFilterPanelContext = () => useContext(context);
|
|
9
|
+
export const actions = {
|
|
10
|
+
add: createAction('@FILTER_PANEL/FILTER_SELECTION_ADD')(),
|
|
11
|
+
remove: createAction('@FILTER_PANEL/FILTER_SELECTION_REMOVE')(),
|
|
12
|
+
};
|
|
13
|
+
export const initialState = {
|
|
14
|
+
selectedFilters: new Set([]),
|
|
15
|
+
filters: [],
|
|
16
|
+
};
|
|
17
|
+
const reducer = createReducer(initialState)
|
|
18
|
+
.handleAction(actions.add, (state, { payload }) => {
|
|
19
|
+
state.selectedFilters.add(payload);
|
|
20
|
+
return { ...state, selected: new Set(state.selectedFilters) };
|
|
21
|
+
})
|
|
22
|
+
.handleAction(actions.remove, (state, { payload }) => {
|
|
23
|
+
state.selectedFilters.delete(payload);
|
|
24
|
+
return { ...state, selected: new Set(state.selectedFilters) };
|
|
25
|
+
});
|
|
26
|
+
export const FilterPanelProvider = (props) => {
|
|
27
|
+
const filters$ = useObservable(reducer, {
|
|
28
|
+
selectedFilters: new Set(props.initialSelectedFilters),
|
|
29
|
+
filters: props.filters,
|
|
30
|
+
});
|
|
31
|
+
const [showFilters, setShowFilters] = useState(props.showFilters);
|
|
32
|
+
return _jsx(Provider, Object.assign({ value: { filters$, showFilters, setShowFilters } }, { children: props.children }), void 0);
|
|
33
|
+
};
|
|
34
|
+
export default FilterPanelProvider;
|
|
35
|
+
//# sourceMappingURL=FilterPanelProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanelProvider.js","sourceRoot":"","sources":["../../../src/components/panel/FilterPanelProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAmB,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAgB,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAK1E,OAAO,EAAE,YAAY,EAAE,aAAa,EAAc,MAAM,kBAAkB,CAAC;AAQ3E,MAAM,OAAO,GAAG,aAAa,CAAoC,IAAI,CAAC,CAAC;AACvE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;AAEvC,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,CAAC;AAE3C,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAA+B,EAAE,CACpE,UAAU,CAAC,OAAO,CAA+B,CAAC;AAEpD,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,GAAG,EAAE,YAAY,CAAC,oCAAoC,CAAC,EAAU;IACjE,MAAM,EAAE,YAAY,CAAC,uCAAuC,CAAC,EAAU;CACxE,CAAC;AAQF,MAAM,CAAC,MAAM,YAAY,GAAU;IACjC,eAAe,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC;IAC5B,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,MAAM,OAAO,GAAG,aAAa,CAAiB,YAAY,CAAC;KACxD,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IAChD,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACnC,OAAO,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;AAChE,CAAC,CAAC;KACD,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;IACnD,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;AAChE,CAAC,CAAC,CAAC;AASL,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAA+B,EAAe,EAAE;IAClF,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,EAAE;QACtC,eAAe,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC;QACtD,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAC;IAEH,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAElE,OAAO,KAAC,QAAQ,kBAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAG,KAAK,CAAC,QAAQ,YAAY,CAAC;AACjG,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanelSelector.d.ts","sourceRoot":"","sources":["../../../src/components/panel/FilterPanelSelector.tsx"],"names":[],"mappings":";AAOA,oBAAY,wBAAwB,GAAG;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,mBAAmB,mBA2B/B,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
import { Checkbox } from '@equinor/fusion-react-checkbox';
|
|
4
|
+
import { initialState, useFilterPanelContext, actions } from './FilterPanelProvider';
|
|
5
|
+
import { useObservableState } from '@equinor/fusion-react-observable';
|
|
6
|
+
export const FilterPanelSelector = () => {
|
|
7
|
+
const { filters$ } = useFilterPanelContext();
|
|
8
|
+
const { filters, selectedFilters } = useObservableState(filters$) || initialState;
|
|
9
|
+
const onInput = useCallback((e) => {
|
|
10
|
+
const key = e.currentTarget.value;
|
|
11
|
+
const selected = e.currentTarget.checked;
|
|
12
|
+
filters$.next(selected ? actions.remove(key) : actions.add(key));
|
|
13
|
+
}, [filters$]);
|
|
14
|
+
return (_jsx("div", { children: filters.map(({ props: { filterKey, title } }) => (_jsx(Checkbox, { value: filterKey, label: title, checked: selectedFilters.has(filterKey), onInput: onInput }, filterKey))) }, void 0));
|
|
15
|
+
};
|
|
16
|
+
export default FilterPanelSelector;
|
|
17
|
+
//# sourceMappingURL=FilterPanelSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterPanelSelector.js","sourceRoot":"","sources":["../../../src/components/panel/FilterPanelSelector.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAA6B,MAAM,gCAAgC,CAAC;AAErF,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAMtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,EAAE;IACtC,MAAM,EAAE,QAAQ,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAE7C,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,kBAAkB,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC;IAElF,MAAM,OAAO,GAAG,WAAW,CACzB,CAAC,CAA6C,EAAE,EAAE;QAChD,MAAM,GAAG,GAAG,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC;QAClC,MAAM,QAAQ,GAAG,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC;QACzC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACnE,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,OAAO,CACL,wBACG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,CAChD,KAAC,QAAQ,IAEP,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EACvC,OAAO,EAAE,OAAO,IAJX,SAAS,CAKd,CACH,CAAC,WACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { FilterPanelBar } from './FilterPanelBar';
|
|
2
|
+
export { FilterPanelProvider } from './FilterPanelProvider';
|
|
3
|
+
export { FilterPanelFilters } from './FilterPanelFilters';
|
|
4
|
+
export { FilterPanel, FilterPanelProps } from './FilterPanel';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/panel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/panel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAoB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { FilterContext } from './types';
|
|
3
|
+
export declare const useFilterContext: <TSelection = any, TData extends Record<string, any> = Record<string, any>>() => FilterContext<TSelection, TData>;
|
|
4
|
+
export declare const Provider: import("react").Provider<FilterContext<unknown, Record<string, any>>>, Consumer: import("react").Consumer<FilterContext<unknown, Record<string, any>>>;
|
|
5
|
+
export default useFilterContext;
|
|
6
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAIxC,eAAO,MAAM,gBAAgB,mHAGmE,CAAC;AAEjG,eAAO,MAAQ,QAAQ,yEAAE,QAAQ,uEAAY,CAAC;AAE9C,eAAe,gBAAgB,CAAC"}
|