@fast-simon/dashboard-utilities 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/BackOfficeFiltersMenu/styles.module.css +10 -0
- package/dist/components/CheckboxFilter/Checkbox/styles.module.css +143 -0
- package/dist/components/CheckboxFilter/styles.module.css +5 -0
- package/dist/components/DragAndDrop/styles.module.css +21 -0
- package/dist/components/FacetItem/styles.module.css +55 -0
- package/dist/components/FromToFilter/From/styles.module.css +9 -0
- package/dist/components/FromToFilter/To/styles.module.css +9 -0
- package/dist/components/FromToFilter/styles.module.css +34 -0
- package/dist/components/InStoreFiltersMenu/styles.module.css +10 -0
- package/dist/components/Input/styles.module.css +3 -0
- package/dist/components/LastReceivedDateFilter/styles.module.css +41 -0
- package/dist/components/RadioFilter/Radio/styles.module.css +145 -0
- package/dist/components/RadioFilter/styles.module.css +23 -0
- package/dist/components/ReactDatePicker/styles.module.css +3 -0
- package/dist/components/SingleFilter/styles.module.css +23 -0
- package/dist/components/SliderFilter/styles.module.css +16 -0
- package/dist/components/Tooltip/styles.module.css +34 -0
- package/dist/components/productGrid/styles.module.css +23 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/ActionItem.d.ts +10 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/ActionItem.js +17 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/ActionItem.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/ActionsBar.d.ts +14 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/ActionsBar.js +14 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/ActionsBar.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/utils.d.ts +16 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/utils.js +61 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ActionsBar/utils.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/Positioning/Positioning.d.ts +6 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/Positioning/Positioning.js +52 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/Positioning/Positioning.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/Positioning/index.d.ts +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/Positioning/index.js +2 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/Positioning/index.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/ProductCard.d.ts +24 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/ProductCard.js +88 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/ProductCard.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/components/ProductLabel/ProductLabel.d.ts +11 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/components/ProductLabel/ProductLabel.js +11 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/components/ProductLabel/ProductLabel.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/components/ProductLabel/utils.d.ts +8 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/components/ProductLabel/utils.js +9 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/components/ProductLabel/utils.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/utils.d.ts +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/utils.js +2 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/ProductCard/utils.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/SelectCard/SelectCard.d.ts +5 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/SelectCard/SelectCard.js +8 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/components/SelectCard/SelectCard.js.map +1 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/context/visualEditorContext.d.ts +66 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/context/visualEditorContext.js +54 -0
- package/dist/dashboard/dashboard-client/src/pages/LandingPages/editor/context/visualEditorContext.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/banner.d.ts +7 -0
- package/dist/frontends/dashboard-utilities/src/@types/banner.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/banner.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/categories.d.ts +16 -0
- package/dist/frontends/dashboard-utilities/src/@types/categories.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/categories.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/currency.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/currency.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/currency.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/editorProduct.d.ts +26 -0
- package/dist/frontends/dashboard-utilities/src/@types/editorProduct.js +6 -0
- package/dist/frontends/dashboard-utilities/src/@types/editorProduct.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/facets.d.ts +45 -0
- package/dist/frontends/dashboard-utilities/src/@types/facets.js +19 -0
- package/dist/frontends/dashboard-utilities/src/@types/facets.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/iconProps.d.ts +9 -0
- package/dist/frontends/dashboard-utilities/src/@types/iconProps.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/iconProps.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/narrow.d.ts +7 -0
- package/dist/frontends/dashboard-utilities/src/@types/narrow.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/narrow.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/product.d.ts +158 -0
- package/dist/frontends/dashboard-utilities/src/@types/product.js +8 -0
- package/dist/frontends/dashboard-utilities/src/@types/product.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/productLabel.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/productLabel.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/productLabel.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/promoTile.d.ts +11 -0
- package/dist/frontends/dashboard-utilities/src/@types/promoTile.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/promoTile.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/results.d.ts +43 -0
- package/dist/frontends/dashboard-utilities/src/@types/results.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/results.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/sideMenu.d.ts +19 -0
- package/dist/frontends/dashboard-utilities/src/@types/sideMenu.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/sideMenu.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/@types/sortBy.d.ts +3 -0
- package/dist/frontends/dashboard-utilities/src/@types/sortBy.js +2 -0
- package/dist/frontends/dashboard-utilities/src/@types/sortBy.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/App.d.ts +3 -0
- package/dist/frontends/dashboard-utilities/src/App.js +16 -0
- package/dist/frontends/dashboard-utilities/src/App.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/BackOfficeFiltersMenu.d.ts +9 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/BackOfficeFiltersMenu.js +74 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/BackOfficeFiltersMenu.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/index.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/index.js +2 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/index.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/utils.d.ts +7 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/utils.js +239 -0
- package/dist/frontends/dashboard-utilities/src/components/BackOfficeFiltersMenu/utils.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/CheckboxFilter/Checkbox/Checkbox.d.ts +10 -0
- package/dist/frontends/dashboard-utilities/src/components/CheckboxFilter/Checkbox/Checkbox.js +7 -0
- package/dist/frontends/dashboard-utilities/src/components/CheckboxFilter/Checkbox/Checkbox.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/CheckboxFilter/CheckboxFilter.d.ts +6 -0
- package/dist/frontends/dashboard-utilities/src/components/CheckboxFilter/CheckboxFilter.js +9 -0
- package/dist/frontends/dashboard-utilities/src/components/CheckboxFilter/CheckboxFilter.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/DndContextWrapper.d.ts +20 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/DndContextWrapper.js +33 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/DndContextWrapper.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/Droppable.d.ts +7 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/Droppable.js +10 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/Droppable.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/SortableItem.d.ts +13 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/SortableItem.js +39 -0
- package/dist/frontends/dashboard-utilities/src/components/DragAndDrop/SortableItem.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FacetItem/FacetItem.d.ts +13 -0
- package/dist/frontends/dashboard-utilities/src/components/FacetItem/FacetItem.js +40 -0
- package/dist/frontends/dashboard-utilities/src/components/FacetItem/FacetItem.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/FastSimonApi.d.ts +31 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/FastSimonApi.js +398 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/FastSimonApi.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/context.d.ts +50 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/context.js +10 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/context.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/index.d.ts +3 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/index.js +3 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/index.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/reducer.d.ts +172 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/reducer.js +67 -0
- package/dist/frontends/dashboard-utilities/src/components/FastSimonApi/reducer.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/From/From.d.ts +17 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/From/From.js +22 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/From/From.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/FromToFilter.d.ts +14 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/FromToFilter.js +58 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/FromToFilter.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/To/To.d.ts +18 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/To/To.js +23 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/To/To.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/utils.d.ts +25 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/utils.js +7 -0
- package/dist/frontends/dashboard-utilities/src/components/FromToFilter/utils.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/InStoreFiltersMenu/InStoreFiltersMenu.d.ts +10 -0
- package/dist/frontends/dashboard-utilities/src/components/InStoreFiltersMenu/InStoreFiltersMenu.js +34 -0
- package/dist/frontends/dashboard-utilities/src/components/InStoreFiltersMenu/InStoreFiltersMenu.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/InStoreFiltersMenu/index.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/components/InStoreFiltersMenu/index.js +2 -0
- package/dist/frontends/dashboard-utilities/src/components/InStoreFiltersMenu/index.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/Input/Input.d.ts +22 -0
- package/dist/frontends/dashboard-utilities/src/components/Input/Input.js +49 -0
- package/dist/frontends/dashboard-utilities/src/components/Input/Input.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/Input/index.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/components/Input/index.js +2 -0
- package/dist/frontends/dashboard-utilities/src/components/Input/index.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/LastReceivedDateFilter/LastReceivedDate.d.ts +9 -0
- package/dist/frontends/dashboard-utilities/src/components/LastReceivedDateFilter/LastReceivedDate.js +88 -0
- package/dist/frontends/dashboard-utilities/src/components/LastReceivedDateFilter/LastReceivedDate.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/LastReceivedDateFilter/utils.d.ts +3 -0
- package/dist/frontends/dashboard-utilities/src/components/LastReceivedDateFilter/utils.js +43 -0
- package/dist/frontends/dashboard-utilities/src/components/LastReceivedDateFilter/utils.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/Radio/Radio.d.ts +10 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/Radio/Radio.js +7 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/Radio/Radio.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/RadioFilter.d.ts +9 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/RadioFilter.js +45 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/RadioFilter.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/utils.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/utils.js +8 -0
- package/dist/frontends/dashboard-utilities/src/components/RadioFilter/utils.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/ReactDatePicker/ReactDatePicker.d.ts +11 -0
- package/dist/frontends/dashboard-utilities/src/components/ReactDatePicker/ReactDatePicker.js +16 -0
- package/dist/frontends/dashboard-utilities/src/components/ReactDatePicker/ReactDatePicker.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/ReactDatePicker/index.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/components/ReactDatePicker/index.js +2 -0
- package/dist/frontends/dashboard-utilities/src/components/ReactDatePicker/index.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/RenderIfVisible/RenderIfVisible.d.ts +12 -0
- package/dist/frontends/dashboard-utilities/src/components/RenderIfVisible/RenderIfVisible.js +59 -0
- package/dist/frontends/dashboard-utilities/src/components/RenderIfVisible/RenderIfVisible.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/RenderIfVisible/index.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/components/RenderIfVisible/index.js +2 -0
- package/dist/frontends/dashboard-utilities/src/components/RenderIfVisible/index.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/SingleFilter/SingleFilter.d.ts +11 -0
- package/dist/frontends/dashboard-utilities/src/components/SingleFilter/SingleFilter.js +90 -0
- package/dist/frontends/dashboard-utilities/src/components/SingleFilter/SingleFilter.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/SingleFilter/utils.d.ts +3 -0
- package/dist/frontends/dashboard-utilities/src/components/SingleFilter/utils.js +42 -0
- package/dist/frontends/dashboard-utilities/src/components/SingleFilter/utils.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/SliderFilter/SliderFilter.d.ts +20 -0
- package/dist/frontends/dashboard-utilities/src/components/SliderFilter/SliderFilter.js +45 -0
- package/dist/frontends/dashboard-utilities/src/components/SliderFilter/SliderFilter.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/SliderFilter/index.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/components/SliderFilter/index.js +2 -0
- package/dist/frontends/dashboard-utilities/src/components/SliderFilter/index.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/Tooltip/Tooltip.d.ts +8 -0
- package/dist/frontends/dashboard-utilities/src/components/Tooltip/Tooltip.js +9 -0
- package/dist/frontends/dashboard-utilities/src/components/Tooltip/Tooltip.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/common.d.ts +34 -0
- package/dist/frontends/dashboard-utilities/src/components/common.js +80 -0
- package/dist/frontends/dashboard-utilities/src/components/common.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/productGrid/ProductGrid.d.ts +6 -0
- package/dist/frontends/dashboard-utilities/src/components/productGrid/ProductGrid.js +11 -0
- package/dist/frontends/dashboard-utilities/src/components/productGrid/ProductGrid.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/components/productGrid/index.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/components/productGrid/index.js +2 -0
- package/dist/frontends/dashboard-utilities/src/components/productGrid/index.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/BackOfficeFiltersIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/BackOfficeFiltersIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/BackOfficeFiltersIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/BannersIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/BannersIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/BannersIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/BuriedIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/BuriedIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/BuriedIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/CutIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/CutIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/CutIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/HelpIcon.d.ts +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/HelpIcon.js +5 -0
- package/dist/frontends/dashboard-utilities/src/icons/HelpIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/HiddenIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/HiddenIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/HiddenIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/InStoreFiltersIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/InStoreFiltersIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/InStoreFiltersIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/PinIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/PinIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/PinIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/PositionIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/PositionIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/PositionIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/PromoteIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/PromoteIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/PromoteIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/RemoveIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/RemoveIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/RemoveIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/icons/RestoreIcon.d.ts +2 -0
- package/dist/frontends/dashboard-utilities/src/icons/RestoreIcon.js +7 -0
- package/dist/frontends/dashboard-utilities/src/icons/RestoreIcon.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/main.d.ts +1 -0
- package/dist/frontends/dashboard-utilities/src/main.js +6 -0
- package/dist/frontends/dashboard-utilities/src/main.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/services/API.d.ts +21 -0
- package/dist/frontends/dashboard-utilities/src/services/API.js +50 -0
- package/dist/frontends/dashboard-utilities/src/services/API.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/services/landingPage.d.ts +28 -0
- package/dist/frontends/dashboard-utilities/src/services/landingPage.js +153 -0
- package/dist/frontends/dashboard-utilities/src/services/landingPage.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/utils/customTagsFilters.d.ts +4 -0
- package/dist/frontends/dashboard-utilities/src/utils/customTagsFilters.js +10 -0
- package/dist/frontends/dashboard-utilities/src/utils/customTagsFilters.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/utils/fixPinnedPositions.d.ts +4 -0
- package/dist/frontends/dashboard-utilities/src/utils/fixPinnedPositions.js +27 -0
- package/dist/frontends/dashboard-utilities/src/utils/fixPinnedPositions.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/utils/narrow.d.ts +18 -0
- package/dist/frontends/dashboard-utilities/src/utils/narrow.js +101 -0
- package/dist/frontends/dashboard-utilities/src/utils/narrow.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/utils/products.d.ts +30 -0
- package/dist/frontends/dashboard-utilities/src/utils/products.js +39 -0
- package/dist/frontends/dashboard-utilities/src/utils/products.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/utils/shopifyMarkets.d.ts +3 -0
- package/dist/frontends/dashboard-utilities/src/utils/shopifyMarkets.js +7 -0
- package/dist/frontends/dashboard-utilities/src/utils/shopifyMarkets.js.map +1 -0
- package/dist/frontends/dashboard-utilities/src/utils/useDragToSelect.d.ts +13 -0
- package/dist/frontends/dashboard-utilities/src/utils/useDragToSelect.js +177 -0
- package/dist/frontends/dashboard-utilities/src/utils/useDragToSelect.js.map +1 -0
- package/dist/icons/styles.module.css +61 -0
- package/package.json +65 -0
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { FastStateProps, IsLoading } from "./context";
|
|
2
|
+
import { AppType, AutocompleteResults, FullTextResults, Narrow, Product, smartCollectionsResults, SortBy } from "fast-simon-sdk";
|
|
3
|
+
import { Widget } from "fast-simon-sdk/lib/models/related";
|
|
4
|
+
type FastStateAction = {
|
|
5
|
+
type: 'setReady';
|
|
6
|
+
payload: boolean;
|
|
7
|
+
} | {
|
|
8
|
+
type: 'setType';
|
|
9
|
+
payload: AppType;
|
|
10
|
+
} | {
|
|
11
|
+
type: 'setPage';
|
|
12
|
+
payload: number;
|
|
13
|
+
} | {
|
|
14
|
+
type: 'setQuery';
|
|
15
|
+
payload: string;
|
|
16
|
+
} | {
|
|
17
|
+
type: 'setSortBy';
|
|
18
|
+
payload: SortBy;
|
|
19
|
+
} | {
|
|
20
|
+
type: 'setIsLoading';
|
|
21
|
+
payload: IsLoading;
|
|
22
|
+
} | {
|
|
23
|
+
type: 'setCollectionID';
|
|
24
|
+
payload: string;
|
|
25
|
+
} | {
|
|
26
|
+
type: 'setNarrow';
|
|
27
|
+
payload: Narrow[] | undefined;
|
|
28
|
+
} | {
|
|
29
|
+
type: 'setResults';
|
|
30
|
+
payload: FullTextResults | smartCollectionsResults | undefined;
|
|
31
|
+
} | {
|
|
32
|
+
type: 'mergeResults';
|
|
33
|
+
payload: {
|
|
34
|
+
results: FullTextResults | smartCollectionsResults;
|
|
35
|
+
infiniteScroll: boolean;
|
|
36
|
+
};
|
|
37
|
+
} | {
|
|
38
|
+
type: 'mergeResultsKeepProduct';
|
|
39
|
+
payload: {
|
|
40
|
+
results: FullTextResults | smartCollectionsResults;
|
|
41
|
+
};
|
|
42
|
+
} | {
|
|
43
|
+
type: 'setState';
|
|
44
|
+
payload: Partial<FastStateProps>;
|
|
45
|
+
} | {
|
|
46
|
+
type: 'setRecommendations';
|
|
47
|
+
payload: {
|
|
48
|
+
id: string;
|
|
49
|
+
widget: Widget;
|
|
50
|
+
};
|
|
51
|
+
} | {
|
|
52
|
+
type: 'setSingleProducts';
|
|
53
|
+
payload: Product[];
|
|
54
|
+
} | {
|
|
55
|
+
type: 'setAutocomplete';
|
|
56
|
+
payload: AutocompleteResults;
|
|
57
|
+
} | {
|
|
58
|
+
type: 'setSearchWithinSearch';
|
|
59
|
+
payload: string;
|
|
60
|
+
} | {
|
|
61
|
+
type: 'setSegments';
|
|
62
|
+
payload: string[];
|
|
63
|
+
};
|
|
64
|
+
export declare function fastStateReducer(state: FastStateProps, action: FastStateAction): FastStateProps | {
|
|
65
|
+
results: {
|
|
66
|
+
products: Product[];
|
|
67
|
+
query: string;
|
|
68
|
+
facets?: import("fast-simon-sdk").Facet[] | undefined;
|
|
69
|
+
totalResults: number;
|
|
70
|
+
narrow?: Narrow[] | undefined;
|
|
71
|
+
sortBy?: SortBy | undefined;
|
|
72
|
+
isNoResults?: boolean | undefined;
|
|
73
|
+
page?: number | undefined;
|
|
74
|
+
pageCount?: number | undefined;
|
|
75
|
+
ancestors?: import("fast-simon-sdk").CategoryAncestor[] | undefined;
|
|
76
|
+
avoidPrefixList?: string[] | undefined;
|
|
77
|
+
merch?: any;
|
|
78
|
+
} | {
|
|
79
|
+
products: Product[];
|
|
80
|
+
ancestors: import("fast-simon-sdk").CategoryAncestor[];
|
|
81
|
+
categoryID: string;
|
|
82
|
+
name: string;
|
|
83
|
+
facets?: import("@fast-simon/utilities").ServerFacet[] | undefined;
|
|
84
|
+
totalResults: number;
|
|
85
|
+
sortBy?: SortBy | undefined;
|
|
86
|
+
narrow?: Narrow[] | undefined;
|
|
87
|
+
isNoResults?: boolean | undefined;
|
|
88
|
+
page?: number | undefined;
|
|
89
|
+
pageCount?: number | undefined;
|
|
90
|
+
avoidPrefixList?: string[] | undefined;
|
|
91
|
+
merch?: any;
|
|
92
|
+
bannerHTML?: string | undefined;
|
|
93
|
+
} | {
|
|
94
|
+
products: Product[];
|
|
95
|
+
query: string;
|
|
96
|
+
facets?: import("fast-simon-sdk").Facet[] | undefined;
|
|
97
|
+
totalResults: number;
|
|
98
|
+
narrow?: Narrow[] | undefined;
|
|
99
|
+
sortBy?: SortBy | undefined;
|
|
100
|
+
isNoResults?: boolean | undefined;
|
|
101
|
+
page?: number | undefined;
|
|
102
|
+
pageCount?: number | undefined;
|
|
103
|
+
ancestors?: import("fast-simon-sdk").CategoryAncestor[] | undefined;
|
|
104
|
+
avoidPrefixList?: string[] | undefined;
|
|
105
|
+
merch?: any;
|
|
106
|
+
} | {
|
|
107
|
+
products: Product[];
|
|
108
|
+
ancestors: import("fast-simon-sdk").CategoryAncestor[];
|
|
109
|
+
categoryID: string;
|
|
110
|
+
name: string;
|
|
111
|
+
facets?: import("fast-simon-sdk").Facet[] | import("@fast-simon/utilities").ServerFacet[] | undefined;
|
|
112
|
+
totalResults: number;
|
|
113
|
+
sortBy?: SortBy | undefined;
|
|
114
|
+
narrow?: Narrow[] | undefined;
|
|
115
|
+
isNoResults?: boolean | undefined;
|
|
116
|
+
page?: number | undefined;
|
|
117
|
+
pageCount?: number | undefined;
|
|
118
|
+
avoidPrefixList?: string[] | undefined;
|
|
119
|
+
merch?: any;
|
|
120
|
+
bannerHTML?: string | undefined;
|
|
121
|
+
query: string;
|
|
122
|
+
} | {
|
|
123
|
+
products: Product[];
|
|
124
|
+
query: string;
|
|
125
|
+
facets?: import("fast-simon-sdk").Facet[] | import("@fast-simon/utilities").ServerFacet[] | undefined;
|
|
126
|
+
totalResults: number;
|
|
127
|
+
narrow?: Narrow[] | undefined;
|
|
128
|
+
sortBy?: SortBy | undefined;
|
|
129
|
+
isNoResults?: boolean | undefined;
|
|
130
|
+
page?: number | undefined;
|
|
131
|
+
pageCount?: number | undefined;
|
|
132
|
+
ancestors: import("fast-simon-sdk").CategoryAncestor[];
|
|
133
|
+
avoidPrefixList?: string[] | undefined;
|
|
134
|
+
merch?: any;
|
|
135
|
+
categoryID: string;
|
|
136
|
+
name: string;
|
|
137
|
+
bannerHTML?: string | undefined;
|
|
138
|
+
} | {
|
|
139
|
+
products: Product[];
|
|
140
|
+
ancestors: import("fast-simon-sdk").CategoryAncestor[];
|
|
141
|
+
categoryID: string;
|
|
142
|
+
name: string;
|
|
143
|
+
facets?: import("@fast-simon/utilities").ServerFacet[] | undefined;
|
|
144
|
+
totalResults: number;
|
|
145
|
+
sortBy?: SortBy | undefined;
|
|
146
|
+
narrow?: Narrow[] | undefined;
|
|
147
|
+
isNoResults?: boolean | undefined;
|
|
148
|
+
page?: number | undefined;
|
|
149
|
+
pageCount?: number | undefined;
|
|
150
|
+
avoidPrefixList?: string[] | undefined;
|
|
151
|
+
merch?: any;
|
|
152
|
+
bannerHTML?: string | undefined;
|
|
153
|
+
};
|
|
154
|
+
isReady: boolean;
|
|
155
|
+
isLoading: IsLoading;
|
|
156
|
+
query: string;
|
|
157
|
+
page: number;
|
|
158
|
+
narrow?: Narrow[] | undefined;
|
|
159
|
+
type: AppType;
|
|
160
|
+
collectionID?: string | undefined;
|
|
161
|
+
sortBy?: SortBy | undefined;
|
|
162
|
+
recommendations?: {
|
|
163
|
+
[id: string]: Widget;
|
|
164
|
+
} | undefined;
|
|
165
|
+
singleProducts?: {
|
|
166
|
+
[id: string]: Product;
|
|
167
|
+
} | undefined;
|
|
168
|
+
autocomplete?: AutocompleteResults | undefined;
|
|
169
|
+
searchWithinSearch?: string | undefined;
|
|
170
|
+
segments?: string[] | undefined;
|
|
171
|
+
};
|
|
172
|
+
export {};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
export function fastStateReducer(state, action) {
|
|
2
|
+
var _a, _b, _c, _d, _e;
|
|
3
|
+
switch (action.type) {
|
|
4
|
+
case "setReady":
|
|
5
|
+
return Object.assign(Object.assign({}, state), { isReady: action.payload });
|
|
6
|
+
case 'setType':
|
|
7
|
+
return Object.assign(Object.assign({}, state), { type: action.payload });
|
|
8
|
+
case 'setPage':
|
|
9
|
+
return Object.assign(Object.assign({}, state), { page: action.payload });
|
|
10
|
+
case 'setQuery':
|
|
11
|
+
return Object.assign(Object.assign({}, state), { query: action.payload, collectionID: undefined, page: 1, narrow: undefined, searchWithinSearch: undefined });
|
|
12
|
+
case 'setSortBy':
|
|
13
|
+
return Object.assign(Object.assign({}, state), { sortBy: action.payload, page: 1 });
|
|
14
|
+
case 'setSegments':
|
|
15
|
+
return Object.assign(Object.assign({}, state), { segments: action.payload, page: 1 });
|
|
16
|
+
case 'setIsLoading':
|
|
17
|
+
return Object.assign(Object.assign({}, state), { isLoading: action.payload });
|
|
18
|
+
case 'setCollectionID':
|
|
19
|
+
return Object.assign(Object.assign({}, state), { collectionID: action.payload, query: "", page: 1, narrow: undefined, searchWithinSearch: undefined });
|
|
20
|
+
case 'setNarrow':
|
|
21
|
+
return Object.assign(Object.assign({}, state), { narrow: action.payload, page: 1 });
|
|
22
|
+
case 'setResults':
|
|
23
|
+
return Object.assign(Object.assign({}, state), { results: Object.assign({ isNoResults: false }, action.payload) });
|
|
24
|
+
case 'mergeResultsKeepProduct': {
|
|
25
|
+
return Object.assign(Object.assign({}, state), { results: Object.assign(Object.assign(Object.assign({}, state.results), action.payload.results), { products: ((_a = state.results) === null || _a === void 0 ? void 0 : _a.products) || [] }) });
|
|
26
|
+
}
|
|
27
|
+
case 'mergeResults': {
|
|
28
|
+
const sortBy = (_b = action.payload.results.sortBy) !== null && _b !== void 0 ? _b : state.sortBy;
|
|
29
|
+
if (!action.payload.infiniteScroll) {
|
|
30
|
+
return Object.assign(Object.assign({}, state), { sortBy, results: Object.assign(Object.assign(Object.assign({}, state.results), { isNoResults: false }), action.payload.results) });
|
|
31
|
+
}
|
|
32
|
+
const products = (_d = (_c = state.results) === null || _c === void 0 ? void 0 : _c.products) !== null && _d !== void 0 ? _d : [];
|
|
33
|
+
const newProducts = (_e = action.payload.results.products) !== null && _e !== void 0 ? _e : [];
|
|
34
|
+
for (const product of newProducts) {
|
|
35
|
+
if (!(products === null || products === void 0 ? void 0 : products.find(x => x.id === product.id))) {
|
|
36
|
+
return Object.assign(Object.assign({}, state), { results: Object.assign(Object.assign(Object.assign(Object.assign({}, state.results), { isNoResults: false }), action.payload.results), { products: [...products, ...newProducts] }) });
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return Object.assign(Object.assign({}, state), { results: Object.assign(Object.assign(Object.assign(Object.assign({}, state.results), { isNoResults: false }), action.payload.results), { products: products }) });
|
|
40
|
+
}
|
|
41
|
+
case 'setState': {
|
|
42
|
+
if (action.payload.query) {
|
|
43
|
+
return Object.assign(Object.assign(Object.assign({}, state), action.payload), { collectionID: undefined, searchWithinSearch: undefined, segments: undefined });
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
return Object.assign(Object.assign(Object.assign({}, state), action.payload), { query: "", searchWithinSearch: undefined, segments: undefined });
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
case "setRecommendations": {
|
|
50
|
+
return Object.assign(Object.assign({}, state), { recommendations: Object.assign(Object.assign({}, state.recommendations), { [action.payload.id]: action.payload.widget }) });
|
|
51
|
+
}
|
|
52
|
+
case "setSingleProducts": {
|
|
53
|
+
const products = Object.assign({}, state.singleProducts);
|
|
54
|
+
for (const product of action.payload) {
|
|
55
|
+
products[product.id] = product;
|
|
56
|
+
}
|
|
57
|
+
return Object.assign(Object.assign({}, state), { singleProducts: products });
|
|
58
|
+
}
|
|
59
|
+
case "setAutocomplete": {
|
|
60
|
+
return Object.assign(Object.assign({}, state), { autocomplete: action.payload });
|
|
61
|
+
}
|
|
62
|
+
case "setSearchWithinSearch": {
|
|
63
|
+
return Object.assign(Object.assign({}, state), { searchWithinSearch: action.payload });
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=reducer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reducer.js","sourceRoot":"","sources":["../../../../../../src/components/FastSimonApi/reducer.ts"],"names":[],"mappings":"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","sourcesContent":["import {FastStateProps, IsLoading} from \"./context\";\r\nimport {AppType, AutocompleteResults, FullTextResults, Narrow, Product, smartCollectionsResults, SortBy} from \"fast-simon-sdk\";\r\nimport {Widget} from \"fast-simon-sdk/lib/models/related\";\r\n\r\ntype FastStateAction =\r\n | { type: 'setReady', payload: boolean }\r\n | { type: 'setType', payload: AppType }\r\n | { type: 'setPage', payload: number }\r\n | { type: 'setQuery', payload: string }\r\n | { type: 'setSortBy', payload: SortBy }\r\n | { type: 'setIsLoading', payload: IsLoading }\r\n | { type: 'setCollectionID', payload: string }\r\n | { type: 'setNarrow', payload: Narrow[] | undefined }\r\n | { type: 'setResults', payload: FullTextResults | smartCollectionsResults | undefined }\r\n | { type: 'mergeResults', payload: { results: FullTextResults | smartCollectionsResults, infiniteScroll: boolean } }\r\n | { type: 'mergeResultsKeepProduct', payload: { results: FullTextResults | smartCollectionsResults } }\r\n | { type: 'setState', payload: Partial<FastStateProps> }\r\n | { type: 'setRecommendations', payload: { id: string, widget: Widget } }\r\n | { type: 'setSingleProducts', payload: Product[] }\r\n | { type: 'setAutocomplete', payload: AutocompleteResults }\r\n | { type: 'setSearchWithinSearch', payload: string }\r\n | { type: 'setSegments', payload: string[] }\r\n\r\n\r\n\r\nexport function fastStateReducer(state: FastStateProps, action: FastStateAction) {\r\n switch (action.type) {\r\n case \"setReady\":\r\n return {...state, isReady: action.payload}\r\n\r\n case 'setType':\r\n return {...state, type: action.payload};\r\n\r\n case 'setPage':\r\n return {...state, page: action.payload};\r\n\r\n case 'setQuery':\r\n return {...state, query: action.payload, collectionID: undefined, page: 1, narrow: undefined, searchWithinSearch: undefined};\r\n\r\n case 'setSortBy':\r\n return {...state, sortBy: action.payload, page: 1};\r\n\r\n case 'setSegments':\r\n return {...state, segments: action.payload, page: 1};\r\n\r\n case 'setIsLoading':\r\n return {...state, isLoading: action.payload};\r\n\r\n case 'setCollectionID':\r\n return {...state, collectionID: action.payload, query: \"\", page: 1, narrow: undefined, searchWithinSearch: undefined};\r\n\r\n case 'setNarrow':\r\n return {...state, narrow: action.payload, page: 1};\r\n\r\n case 'setResults':\r\n return {...state, results: {isNoResults: false, ...action.payload}} as FastStateProps;\r\n\r\n case 'mergeResultsKeepProduct': {\r\n return {...state, results: {...state.results, ...action.payload.results, products: state.results?.products || []}};\r\n }\r\n\r\n case 'mergeResults': {\r\n const sortBy = action.payload.results.sortBy ?? state.sortBy\r\n\r\n if (!action.payload.infiniteScroll) {\r\n return {...state,sortBy, results: {...state.results, isNoResults: false, ...action.payload.results}} as FastStateProps;\r\n }\r\n\r\n const products = state.results?.products ?? [];\r\n const newProducts = action.payload.results.products ?? [];\r\n for (const product of newProducts) {\r\n if(!products?.find(x => x.id === product.id)) {\r\n return {\r\n ...state,\r\n results: {...state.results, isNoResults: false, ...action.payload.results, products: [...products, ...newProducts]}\r\n } as FastStateProps;\r\n }\r\n }\r\n return {\r\n ...state,\r\n results: {...state.results, isNoResults: false, ...action.payload.results, products: products}\r\n } as FastStateProps;\r\n\r\n }\r\n\r\n case 'setState': {\r\n if (action.payload.query) {\r\n return {...state, ...action.payload, collectionID: undefined, searchWithinSearch: undefined, segments: undefined}\r\n } else {\r\n return {...state, ...action.payload, query: \"\", searchWithinSearch: undefined, segments: undefined};\r\n }\r\n }\r\n\r\n case \"setRecommendations\": {\r\n return {\r\n ...state,\r\n recommendations: {\r\n ...state.recommendations,\r\n [action.payload.id]: action.payload.widget\r\n }\r\n }\r\n }\r\n\r\n case \"setSingleProducts\": {\r\n const products: { [id: string]: Product } = {...state.singleProducts};\r\n\r\n for (const product of action.payload) {\r\n products[product.id] = product;\r\n }\r\n\r\n return {...state, singleProducts: products}\r\n }\r\n\r\n case \"setAutocomplete\": {\r\n return {...state, autocomplete: action.payload}\r\n }\r\n\r\n case \"setSearchWithinSearch\": {\r\n return {...state, searchWithinSearch: action.payload}\r\n }\r\n }\r\n}\r\n\r\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { FromToTypes } from "../utils";
|
|
3
|
+
interface Props {
|
|
4
|
+
type: FromToTypes;
|
|
5
|
+
toValue?: string | number | Date;
|
|
6
|
+
onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
7
|
+
id?: string;
|
|
8
|
+
children?: React.ReactNode;
|
|
9
|
+
placeholder?: string;
|
|
10
|
+
defaultValue?: string | number;
|
|
11
|
+
limit?: {
|
|
12
|
+
min: number;
|
|
13
|
+
max: number;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
export declare function From({ onChange, id, type, placeholder, children, defaultValue, limit }: Props): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
import { FromToTypes } from "../utils";
|
|
4
|
+
import classes from "./styles.module.css";
|
|
5
|
+
import Input from "../../Input";
|
|
6
|
+
import ReactDatePicker from "../../ReactDatePicker";
|
|
7
|
+
export function From({ onChange, id, type, placeholder, children, defaultValue, limit }) {
|
|
8
|
+
const [value, setValue] = useState(defaultValue);
|
|
9
|
+
useEffect(() => { setValue(defaultValue); }, [id]);
|
|
10
|
+
const onValueChange = (value) => {
|
|
11
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(value);
|
|
12
|
+
};
|
|
13
|
+
const onValueCompleted = (value) => {
|
|
14
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(value);
|
|
15
|
+
};
|
|
16
|
+
return (_jsx(_Fragment, { children: _jsxs("div", Object.assign({ className: classes.from }, { children: [type === FromToTypes.text || type === FromToTypes.number ?
|
|
17
|
+
_jsx(Input, { initialInput: value !== null && value !== void 0 ? value : '', placeholder: placeholder, type: type, debounceTime: 400, onChange: onValueChange, onCompleted: onValueCompleted, selectAllOnFocus: true, limit: limit })
|
|
18
|
+
: null, type === FromToTypes.date ?
|
|
19
|
+
_jsx(ReactDatePicker, { onChange: onValueChange, placeholder: placeholder })
|
|
20
|
+
: null] }), "fs-filters-to" + (id === null || id === void 0 ? void 0 : id.toString())) }));
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=From.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"From.js","sourceRoot":"","sources":["../../../../../../../src/components/FromToFilter/From/From.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,eAAe,MAAM,uBAAuB,CAAC;AAapD,MAAM,UAAU,IAAI,CAAC,EAAC,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAQ;IACxF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjD,SAAS,CAAC,GAAE,EAAE,GAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA,CAAC,EAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC7C,MAAM,aAAa,GAAG,CAAC,KAAU,EAAE,EAAE;QACjC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA;IACD,MAAM,gBAAgB,GAAG,CAAC,KAAW,EAAE,EAAE;QACrC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA;IAED,OAAO,CACH,4BACI,6BAA2C,SAAS,EAAE,OAAO,CAAC,IAAI,iBAC7D,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC;oBACvD,KAAC,KAAK,IAAC,YAAY,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG;oBACxL,CAAC,CAAC,IAAI,EACT,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC;oBACxB,KAAC,eAAe,IAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,GAAG;oBACtE,CAAC,CAAC,IAAI,MANJ,eAAe,IAAE,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,QAAQ,EAAE,CAAA,CAOnC,GACP,CACN,CAAA;AAEL,CAAC","sourcesContent":["import React, { useEffect, useState } from \"react\";\r\nimport { FromToTypes } from \"../utils\";\r\nimport classes from \"./styles.module.css\";\r\nimport Input from \"../../Input\";\r\nimport ReactDatePicker from \"../../ReactDatePicker\";\r\n\r\ninterface Props {\r\n type: FromToTypes;\r\n toValue?: string | number | Date;\r\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;\r\n id?: string;\r\n children?: React.ReactNode;\r\n placeholder?: string;\r\n defaultValue?: string | number;\r\n limit?: {min: number, max: number}\r\n}\r\n\r\nexport function From({onChange, id, type, placeholder, children, defaultValue, limit}: Props) {\r\n const [value, setValue] = useState(defaultValue);\r\n useEffect(()=>{setValue(defaultValue);},[id])\r\n const onValueChange = (value: any) => {\r\n onChange?.(value);\r\n }\r\n const onValueCompleted = (value?: any) => {\r\n onChange?.(value);\r\n }\r\n\r\n return (\r\n <>\r\n <div key={\"fs-filters-to\" +id?.toString()} className={classes.from}>\r\n {type === FromToTypes.text || type === FromToTypes.number ?\r\n <Input initialInput={value??''} placeholder={placeholder} type={type} debounceTime={400} onChange={onValueChange} onCompleted={onValueCompleted} selectAllOnFocus={true} limit={limit}/>\r\n : null}\r\n {type === FromToTypes.date ?\r\n <ReactDatePicker onChange={onValueChange} placeholder={placeholder}/>\r\n : null}\r\n </div>\r\n </>\r\n )\r\n\r\n}"]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { FromTo } from "./utils";
|
|
2
|
+
interface Props {
|
|
3
|
+
facet: FromTo;
|
|
4
|
+
onChange: (facetId: string, value: string) => void;
|
|
5
|
+
value?: string[] | number[];
|
|
6
|
+
convertValueCallback?: (value: string) => string;
|
|
7
|
+
tooltipText?: string;
|
|
8
|
+
limit?: {
|
|
9
|
+
min: number;
|
|
10
|
+
max: number;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export declare function FromToFilter({ facet, onChange, value, convertValueCallback, tooltipText, limit }: Props): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
3
|
+
import classes from './styles.module.css';
|
|
4
|
+
import { From } from "./From/From";
|
|
5
|
+
import { To } from "./To/To";
|
|
6
|
+
import Tooltip from "../Tooltip/Tooltip";
|
|
7
|
+
export function FromToFilter({ facet, onChange, value, convertValueCallback, tooltipText, limit }) {
|
|
8
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
9
|
+
const [fromValue, setFromValue] = useState((_a = facet === null || facet === void 0 ? void 0 : facet.from) === null || _a === void 0 ? void 0 : _a.value);
|
|
10
|
+
const [toValue, setToValue] = useState((_b = facet === null || facet === void 0 ? void 0 : facet.to) === null || _b === void 0 ? void 0 : _b.value);
|
|
11
|
+
const [fromId, setFromId] = useState((_c = facet === null || facet === void 0 ? void 0 : facet.from) === null || _c === void 0 ? void 0 : _c.name);
|
|
12
|
+
const [toId, setToId] = useState((_d = facet === null || facet === void 0 ? void 0 : facet.to) === null || _d === void 0 ? void 0 : _d.name);
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
var _a, _b, _c, _d;
|
|
15
|
+
if (value && (value === null || value === void 0 ? void 0 : value.length) === 2) {
|
|
16
|
+
setFromValue(value === null || value === void 0 ? void 0 : value[0]);
|
|
17
|
+
setToValue(value === null || value === void 0 ? void 0 : value[1]);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
setFromValue((_a = facet === null || facet === void 0 ? void 0 : facet.from) === null || _a === void 0 ? void 0 : _a.value);
|
|
21
|
+
setToValue((_b = facet === null || facet === void 0 ? void 0 : facet.to) === null || _b === void 0 ? void 0 : _b.value);
|
|
22
|
+
}
|
|
23
|
+
setFromId((_c = facet === null || facet === void 0 ? void 0 : facet.from) === null || _c === void 0 ? void 0 : _c.key);
|
|
24
|
+
setToId((_d = facet === null || facet === void 0 ? void 0 : facet.to) === null || _d === void 0 ? void 0 : _d.key);
|
|
25
|
+
}, [facet, value]);
|
|
26
|
+
const onFromValueChanged = (value) => {
|
|
27
|
+
var _a;
|
|
28
|
+
setFromValue(value);
|
|
29
|
+
if (value) {
|
|
30
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(facet === null || facet === void 0 ? void 0 : facet.id, (convertValueCallback ? convertValueCallback === null || convertValueCallback === void 0 ? void 0 : convertValueCallback(value) : value) + '-' + ((_a = (convertValueCallback ? convertValueCallback === null || convertValueCallback === void 0 ? void 0 : convertValueCallback(toValue === null || toValue === void 0 ? void 0 : toValue.toString()) : toValue)) !== null && _a !== void 0 ? _a : ''));
|
|
31
|
+
}
|
|
32
|
+
else if (!value && toValue) {
|
|
33
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(facet === null || facet === void 0 ? void 0 : facet.id, '-' + (convertValueCallback ? convertValueCallback === null || convertValueCallback === void 0 ? void 0 : convertValueCallback(toValue === null || toValue === void 0 ? void 0 : toValue.toString()) : toValue));
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(facet === null || facet === void 0 ? void 0 : facet.id, '');
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
const onToValueChanged = (value) => {
|
|
40
|
+
var _a;
|
|
41
|
+
setToValue(value);
|
|
42
|
+
if (value) {
|
|
43
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(facet === null || facet === void 0 ? void 0 : facet.id, ((_a = (convertValueCallback ? convertValueCallback === null || convertValueCallback === void 0 ? void 0 : convertValueCallback(fromValue === null || fromValue === void 0 ? void 0 : fromValue.toString()) : fromValue)) !== null && _a !== void 0 ? _a : '') + '-' + (convertValueCallback ? convertValueCallback === null || convertValueCallback === void 0 ? void 0 : convertValueCallback(value === null || value === void 0 ? void 0 : value.toString()) : value));
|
|
44
|
+
}
|
|
45
|
+
else if (fromValue && !value) {
|
|
46
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(facet === null || facet === void 0 ? void 0 : facet.id, (convertValueCallback ? convertValueCallback === null || convertValueCallback === void 0 ? void 0 : convertValueCallback(fromValue === null || fromValue === void 0 ? void 0 : fromValue.toString()) : fromValue) + '-');
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(facet === null || facet === void 0 ? void 0 : facet.id, '');
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
return (_jsxs("div", Object.assign({ className: classes.fromToContainer }, { children: [(facet === null || facet === void 0 ? void 0 : facet.displayName) ? _jsxs("div", Object.assign({ className: classes.fsFacetTitle }, { children: [facet === null || facet === void 0 ? void 0 : facet.displayName, tooltipText && _jsx(Tooltip, { text: tooltipText })] })) : null, _jsxs("div", Object.assign({ className: classes.fsFacetOptions }, { children: [_jsx(From, { defaultValue: fromValue, toValue: fromValue, id: fromId, type: (_e = facet === null || facet === void 0 ? void 0 : facet.from) === null || _e === void 0 ? void 0 : _e.type, onChange: (value) => {
|
|
53
|
+
onFromValueChanged(value);
|
|
54
|
+
}, placeholder: (_g = (_f = facet === null || facet === void 0 ? void 0 : facet.from) === null || _f === void 0 ? void 0 : _f.fromPlaceHolder) !== null && _g !== void 0 ? _g : (_h = facet === null || facet === void 0 ? void 0 : facet.from) === null || _h === void 0 ? void 0 : _h.name, limit: limit }), _jsx(To, { defaultValue: toValue, fromValue: toValue, id: toId, type: (_j = facet === null || facet === void 0 ? void 0 : facet.to) === null || _j === void 0 ? void 0 : _j.type, onChange: (value) => {
|
|
55
|
+
onToValueChanged(value);
|
|
56
|
+
}, ariaLabel: (_k = facet === null || facet === void 0 ? void 0 : facet.to) === null || _k === void 0 ? void 0 : _k.name, placeholder: (_m = (_l = facet === null || facet === void 0 ? void 0 : facet.to) === null || _l === void 0 ? void 0 : _l.toPlaceHolder) !== null && _m !== void 0 ? _m : (_o = facet === null || facet === void 0 ? void 0 : facet.to) === null || _o === void 0 ? void 0 : _o.name, limit: limit })] }))] }), "fs-filters-fromto" + (facet === null || facet === void 0 ? void 0 : facet.id.toString())));
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=FromToFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FromToFilter.js","sourceRoot":"","sources":["../../../../../../src/components/FromToFilter/FromToFilter.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {useEffect, useState} from 'react';\r\nimport classes from './styles.module.css';\r\nimport {From} from \"./From/From\";\r\nimport {To} from \"./To/To\";\r\nimport { FromTo, FromToValue } from \"./utils\";\r\nimport Tooltip from \"../Tooltip/Tooltip\";\r\n\r\ninterface Props {\r\n facet: FromTo;\r\n onChange: (facetId: string, value: string) => void;\r\n value?: string[] | number[],\r\n convertValueCallback?: (value: string) => string\r\n tooltipText?: string\r\n limit?: {min: number, max: number}\r\n}\r\n\r\nexport function FromToFilter({facet, onChange, value, convertValueCallback, tooltipText, limit}: Props) {\r\n const [fromValue, setFromValue] = useState(facet?.from?.value);\r\n const [toValue, setToValue] = useState(facet?.to?.value);\r\n const [fromId, setFromId] = useState(facet?.from?.name);\r\n const [toId, setToId] = useState(facet?.to?.name);\r\n\r\n useEffect(() =>{\r\n if(value && value?.length === 2) {\r\n setFromValue(value?.[0]);\r\n setToValue(value?.[1]);\r\n } else {\r\n setFromValue(facet?.from?.value);\r\n setToValue(facet?.to?.value);\r\n }\r\n setFromId(facet?.from?.key);\r\n setToId(facet?.to?.key);\r\n },[facet, value])\r\n const onFromValueChanged = (value: any) => {\r\n setFromValue(value);\r\n if(value) {\r\n onChange?.(facet?.id, (convertValueCallback ? convertValueCallback?.(value): value) + '-' + ((convertValueCallback ? convertValueCallback?.(toValue?.toString()): toValue)??''));\r\n } else if(!value && toValue){\r\n onChange?.(facet?.id, '-' + (convertValueCallback ? convertValueCallback?.(toValue?.toString()): toValue));\r\n } else{\r\n onChange?.(facet?.id, '');\r\n }\r\n }\r\n const onToValueChanged = (value: any) => {\r\n setToValue(value);\r\n if(value) {\r\n onChange?.(facet?.id, ((convertValueCallback ? convertValueCallback?.(fromValue?.toString()): fromValue)??'') + '-' + (convertValueCallback ? convertValueCallback?.(value?.toString()): value));\r\n } else if(fromValue && !value){\r\n onChange?.(facet?.id, (convertValueCallback ? convertValueCallback?.(fromValue?.toString()): fromValue) + '-');\r\n } else {\r\n onChange?.(facet?.id, '');\r\n }\r\n\r\n }\r\n\r\n return (\r\n <div key={\"fs-filters-fromto\"+facet?.id.toString()} className={classes.fromToContainer}>\r\n {facet?.displayName ? <div className={classes.fsFacetTitle}>\r\n {facet?.displayName}\r\n {tooltipText && <Tooltip text={tooltipText}/>}\r\n </div> : null}\r\n <div className={classes.fsFacetOptions}>\r\n <From defaultValue={(fromValue as any)} toValue={fromValue} id={fromId} type={facet?.from?.type}\r\n onChange={(value: any) => {\r\n onFromValueChanged(value);\r\n }} placeholder={facet?.from?.fromPlaceHolder ?? facet?.from?.name} limit={limit}>\r\n </From>\r\n <To defaultValue={(toValue as any)} fromValue={toValue} id={toId} type={facet?.to?.type}\r\n onChange={(value: any) => {\r\n onToValueChanged(value)\r\n }} ariaLabel={facet?.to?.name} placeholder={facet?.to?.toPlaceHolder ?? facet?.to?.name} limit={limit}>\r\n </To>\r\n </div>\r\n </div>\r\n\r\n )\r\n\r\n}\r\n\r\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FromToTypes } from "../utils";
|
|
3
|
+
interface Props {
|
|
4
|
+
type: FromToTypes;
|
|
5
|
+
defaultValue: string | number | Date;
|
|
6
|
+
fromValue?: string | number | Date;
|
|
7
|
+
ariaLabel?: string;
|
|
8
|
+
onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
9
|
+
id?: string;
|
|
10
|
+
children?: React.ReactNode;
|
|
11
|
+
placeholder?: string;
|
|
12
|
+
limit?: {
|
|
13
|
+
min: number;
|
|
14
|
+
max: number;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
export declare function To({ defaultValue, ariaLabel, onChange, id, type, placeholder, children, limit }: Props): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
3
|
+
import { FromToTypes } from "../utils";
|
|
4
|
+
import classes from './styles.module.css';
|
|
5
|
+
import Input from "../../Input";
|
|
6
|
+
import ReactDatePicker from "../../ReactDatePicker";
|
|
7
|
+
export function To({ defaultValue, ariaLabel, onChange, id, type, placeholder, children, limit }) {
|
|
8
|
+
var _a;
|
|
9
|
+
const [value, setValue] = useState(defaultValue);
|
|
10
|
+
useEffect(() => { setValue(defaultValue); }, [id]);
|
|
11
|
+
const onValueChange = (value) => {
|
|
12
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(value);
|
|
13
|
+
};
|
|
14
|
+
const onValueCompleted = (value) => {
|
|
15
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(value);
|
|
16
|
+
};
|
|
17
|
+
return (_jsx(_Fragment, { children: _jsxs("div", Object.assign({ className: classes.to }, { children: [type === FromToTypes.text || type === FromToTypes.number ?
|
|
18
|
+
_jsx(Input, { initialInput: (_a = value) !== null && _a !== void 0 ? _a : '', placeholder: placeholder, type: type, debounceTime: 400, onChange: onValueChange, onCompleted: onValueCompleted, selectAllOnFocus: true, limit: limit })
|
|
19
|
+
: null, type === FromToTypes.date ?
|
|
20
|
+
_jsx(ReactDatePicker, { onChange: onValueChange, placeholder: placeholder })
|
|
21
|
+
: null] }), "fs-filters-to" + (id === null || id === void 0 ? void 0 : id.toString())) }));
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=To.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"To.js","sourceRoot":"","sources":["../../../../../../../src/components/FromToFilter/To/To.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAC,SAAS,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AACjD,OAAO,EAAC,WAAW,EAAC,MAAM,UAAU,CAAC;AACrC,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAC1C,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,eAAe,MAAM,uBAAuB,CAAC;AAcpD,MAAM,UAAU,EAAE,CAAC,EAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAQ;;IACjG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjD,SAAS,CAAC,GAAE,EAAE,GAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA,CAAC,EAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC7C,MAAM,aAAa,GAAG,CAAC,KAAU,EAAE,EAAE;QACjC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA;IACD,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAE,EAAE;QACpC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA;IAED,OAAO,CACH,4BACI,6BAA2C,SAAS,EAAE,OAAO,CAAC,EAAE,iBAC3D,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,IAAI,KAAK,WAAW,CAAC,MAAM,CAAC,CAAC;oBACvD,KAAC,KAAK,IAAC,YAAY,EAAE,MAAC,KAAa,mCAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG;oBACjM,CAAC,CAAC,IAAI,EACT,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC;oBACxB,KAAC,eAAe,IAAC,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,GAAG;oBACrE,CAAC,CAAC,IAAI,MANJ,eAAe,IAAE,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,QAAQ,EAAE,CAAA,CAOnC,GACP,CACN,CAAA;AAEL,CAAC","sourcesContent":["import React, {useEffect, useState} from 'react';\r\nimport {FromToTypes} from \"../utils\";\r\nimport classes from './styles.module.css';\r\nimport Input from \"../../Input\";\r\nimport ReactDatePicker from \"../../ReactDatePicker\";\r\n\r\ninterface Props {\r\n type: FromToTypes;\r\n defaultValue: string | number | Date;\r\n fromValue?: string | number | Date;\r\n ariaLabel?: string;\r\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void,\r\n id?: string,\r\n children?: React.ReactNode\r\n placeholder?: string;\r\n limit?: {min: number, max: number}\r\n}\r\n\r\nexport function To({defaultValue, ariaLabel, onChange, id, type, placeholder, children, limit}: Props) {\r\n const [value, setValue] = useState(defaultValue);\r\n useEffect(()=>{setValue(defaultValue);},[id])\r\n const onValueChange = (value: any) => {\r\n onChange?.(value);\r\n }\r\n const onValueCompleted = (value: any) => {\r\n onChange?.(value);\r\n }\r\n\r\n return (\r\n <>\r\n <div key={\"fs-filters-to\" +id?.toString()} className={classes.to}>\r\n {type === FromToTypes.text || type === FromToTypes.number ?\r\n <Input initialInput={(value as any)??''} placeholder={placeholder} type={type} debounceTime={400} onChange={onValueChange} onCompleted={onValueCompleted} selectAllOnFocus={true} limit={limit}/>\r\n : null}\r\n {type === FromToTypes.date ?\r\n <ReactDatePicker onChange={onValueChange} placeholder={placeholder}/>\r\n : null}\r\n </div>\r\n </>\r\n )\r\n\r\n}"]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export declare const enum FromToTypes {
|
|
2
|
+
text = "text",
|
|
3
|
+
number = "number",
|
|
4
|
+
date = "date"
|
|
5
|
+
}
|
|
6
|
+
export type FromTo = {
|
|
7
|
+
id: string;
|
|
8
|
+
name: string;
|
|
9
|
+
from: FromToFilter;
|
|
10
|
+
to: FromToFilter;
|
|
11
|
+
displayName?: string;
|
|
12
|
+
};
|
|
13
|
+
export type FromToValue = {
|
|
14
|
+
from: string | number;
|
|
15
|
+
to: string | number;
|
|
16
|
+
};
|
|
17
|
+
export type FromToFilter = {
|
|
18
|
+
key: string;
|
|
19
|
+
type: FromToTypes;
|
|
20
|
+
name: string;
|
|
21
|
+
value: string | number | Date;
|
|
22
|
+
emptyValue?: string | number | Date;
|
|
23
|
+
fromPlaceHolder?: string;
|
|
24
|
+
toPlaceHolder?: string;
|
|
25
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../src/components/FromToFilter/utils.ts"],"names":[],"mappings":"AACA,MAAM,CAAN,IAAkB,WAIjB;AAJD,WAAkB,WAAW;IACzB,4BAAa,CAAA;IACb,gCAAiB,CAAA;IACjB,4BAAa,CAAA;AACjB,CAAC,EAJiB,WAAW,KAAX,WAAW,QAI5B","sourcesContent":["\r\nexport const enum FromToTypes {\r\n text = \"text\",\r\n number = \"number\",\r\n date = \"date\"\r\n}\r\n\r\nexport type FromTo = {\r\n id: string,\r\n name: string,\r\n from: FromToFilter,\r\n to: FromToFilter,\r\n displayName?: string\r\n}\r\nexport type FromToValue = {\r\n from: string| number,\r\n to: string| number\r\n}\r\nexport type FromToFilter = {\r\n key: string,\r\n type: FromToTypes,\r\n name: string\r\n value: string | number | Date,\r\n emptyValue?: string | number | Date,\r\n fromPlaceHolder?: string,\r\n toPlaceHolder?: string\r\n}"]}
|
package/dist/frontends/dashboard-utilities/src/components/InStoreFiltersMenu/InStoreFiltersMenu.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { Narrow, Facet } from "@fast-simon/utilities";
|
|
3
|
+
export interface Props {
|
|
4
|
+
facets: Facet[];
|
|
5
|
+
narrow: Narrow;
|
|
6
|
+
onNarrowChange: (narrow: any) => void;
|
|
7
|
+
onPageChange: (page: number) => void;
|
|
8
|
+
}
|
|
9
|
+
declare const InStoreFiltersMenu: React.FC<Props>;
|
|
10
|
+
export default InStoreFiltersMenu;
|
package/dist/frontends/dashboard-utilities/src/components/InStoreFiltersMenu/InStoreFiltersMenu.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React, { useEffect } from 'react';
|
|
3
|
+
import classes from './styles.module.css';
|
|
4
|
+
import { FacetItem } from "../FacetItem/FacetItem";
|
|
5
|
+
import { NarrowParser } from "@fast-simon/utilities";
|
|
6
|
+
import classNames from "classnames";
|
|
7
|
+
const InStoreFiltersMenu = ({ facets, narrow, onNarrowChange, onPageChange }) => {
|
|
8
|
+
const filtersRef = React.createRef();
|
|
9
|
+
useEffect(() => {
|
|
10
|
+
if (filtersRef.current && !filtersRef.current.style.height) {
|
|
11
|
+
filtersRef.current.style.height = `calc(100vh - ${filtersRef.current.getBoundingClientRect().top + 20}px)`;
|
|
12
|
+
}
|
|
13
|
+
}, [filtersRef]);
|
|
14
|
+
const handleNarrowChange = (facetName, narrowName, updateSingleNarrow) => {
|
|
15
|
+
let newNarrow = {};
|
|
16
|
+
if (updateSingleNarrow) {
|
|
17
|
+
newNarrow = NarrowParser.updateSingleNarrow(narrow, facetName, narrowName);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
newNarrow = NarrowParser.updateNarrow(narrow, facetName, narrowName);
|
|
21
|
+
}
|
|
22
|
+
onNarrowChange(newNarrow);
|
|
23
|
+
onPageChange(1);
|
|
24
|
+
};
|
|
25
|
+
const clearAll = () => {
|
|
26
|
+
onNarrowChange({});
|
|
27
|
+
onPageChange(1);
|
|
28
|
+
};
|
|
29
|
+
return (_jsxs("div", Object.assign({ className: classes.filtersContainer, ref: filtersRef }, { children: [facets.map(facet => {
|
|
30
|
+
return (_jsx(FacetItem, { narrow: narrow[((facet === null || facet === void 0 ? void 0 : facet.meta) && narrow[((facet === null || facet === void 0 ? void 0 : facet.name) + "_from_to")]) ? ((facet === null || facet === void 0 ? void 0 : facet.name) + "_from_to") : facet === null || facet === void 0 ? void 0 : facet.name], facet: facet, onChange: handleNarrowChange, onNarrowChange: onNarrowChange, onPageChange: onPageChange }, "fs-filters" + facet.id.toString()));
|
|
31
|
+
}), _jsx("span", Object.assign({ onClick: clearAll, className: classNames(classes.arrow, classes.clearAll) }, { children: _jsxs("small", { children: ["Clear All\u00A0\u00A0\u00A0", _jsx("i", {})] }) }))] })));
|
|
32
|
+
};
|
|
33
|
+
export default InStoreFiltersMenu;
|
|
34
|
+
//# sourceMappingURL=InStoreFiltersMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InStoreFiltersMenu.js","sourceRoot":"","sources":["../../../../../../src/components/InStoreFiltersMenu/InStoreFiltersMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AACvC,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAE1C,OAAO,EAAC,SAAS,EAAC,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAiB,MAAM,uBAAuB,CAAC;AACpE,OAAO,UAAU,MAAM,YAAY,CAAC;AASpC,MAAM,kBAAkB,GAAoB,CAAC,EAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAC,EAAE,EAAE;IAC3F,MAAM,UAAU,GAAG,KAAK,CAAC,SAAS,EAAkB,CAAC;IAErD,SAAS,CAAC,GAAG,EAAE;QACX,IAAG,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE;YACvD,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,gBAAgB,UAAU,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC,GAAG,GAAC,EAAE,KAAK,CAAC;SAC5G;IACL,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,MAAM,kBAAkB,GAAG,CAAC,SAAiB,EAAE,UAAkB,EAAE,kBAA4B,EAAE,EAAE;QAC/F,IAAI,SAAS,GAAW,EAAE,CAAC;QAC3B,IAAG,kBAAkB,EAAE;YAClB,SAAS,GAAG,YAAY,CAAC,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;SAC/E;aAAM;YACF,SAAS,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;SACzE;QACD,cAAc,CAAC,SAAS,CAAC,CAAC;QAC1B,YAAY,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,CAAA;IACD,MAAM,QAAQ,GAAG,GAAG,EAAE;QAClB,cAAc,CAAC,EAAE,CAAC,CAAC;QACnB,YAAY,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,CAAA;IAED,OAAO,CACH,6BAAK,SAAS,EAAE,OAAO,CAAC,gBAAgB,EAAE,GAAG,EAAE,UAAU,iBAGjD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBACf,OAAO,CACJ,KAAC,SAAS,IACC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,KAAI,MAAM,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,IAAG,UAAU,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,IAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,EAC/G,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,kBAAkB,EAC5B,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,YAAY,IALrB,YAAY,GAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,CAKG,CACrD,CAAA;YACL,CAAC,CAAC,EAEN,6BAAM,OAAO,EAAE,QAAQ,EAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,gBAAE,2DAAkC,aAAI,IAAQ,IACvH,KACL,CACT,CAAA;AACL,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC","sourcesContent":["import React, {useEffect} from 'react';\r\nimport classes from './styles.module.css';\r\nimport {useVisualEditorContext} from \"../../../../../dashboard/dashboard-client/src/pages/LandingPages/editor/context/visualEditorContext\";\r\nimport {FacetItem} from \"../FacetItem/FacetItem\";\r\nimport { NarrowParser, Narrow, Facet } from \"@fast-simon/utilities\";\r\nimport classNames from \"classnames\";\r\n\r\nexport interface Props {\r\n facets: Facet[];\r\n narrow: Narrow;\r\n onNarrowChange: (narrow: any) => void;\r\n onPageChange: (page: number) => void;\r\n}\r\n\r\nconst InStoreFiltersMenu: React.FC<Props> = ({facets, narrow, onNarrowChange, onPageChange}) => {\r\n const filtersRef = React.createRef<HTMLDivElement>();\r\n\r\n useEffect(() => {\r\n if(filtersRef.current && !filtersRef.current.style.height) {\r\n filtersRef.current.style.height = `calc(100vh - ${filtersRef.current.getBoundingClientRect().top+20}px)`;\r\n }\r\n }, [filtersRef]);\r\n\r\n const handleNarrowChange = (facetName: string, narrowName: string, updateSingleNarrow?: boolean) => {\r\n let newNarrow: Narrow = {};\r\n if(updateSingleNarrow) {\r\n newNarrow = NarrowParser.updateSingleNarrow(narrow, facetName, narrowName);\r\n } else {\r\n newNarrow = NarrowParser.updateNarrow(narrow, facetName, narrowName);\r\n }\r\n onNarrowChange(newNarrow);\r\n onPageChange(1);\r\n }\r\n const clearAll = () => {\r\n onNarrowChange({});\r\n onPageChange(1);\r\n }\r\n\r\n return (\r\n <div className={classes.filtersContainer} ref={filtersRef}>\r\n\r\n {\r\n facets.map(facet => {\r\n return (\r\n <FacetItem key={\"fs-filters\"+facet.id.toString()} \r\n narrow={narrow[(facet?.meta && narrow[(facet?.name + \"_from_to\")]) ? (facet?.name + \"_from_to\") : facet?.name]} \r\n facet={facet} \r\n onChange={handleNarrowChange} \r\n onNarrowChange={onNarrowChange} \r\n onPageChange={onPageChange}></FacetItem>\r\n )\r\n })\r\n }\r\n <span onClick={clearAll}className={classNames(classes.arrow, classes.clearAll)}><small>Clear All <i/></small>\r\n </span>\r\n </div>\r\n )\r\n};\r\n\r\nexport default InStoreFiltersMenu;\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from "./InStoreFiltersMenu";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/components/InStoreFiltersMenu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC","sourcesContent":["export { default } from \"./InStoreFiltersMenu\";\r\n"]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface Props {
|
|
3
|
+
initialInput: string | number;
|
|
4
|
+
onChange: (input: string) => void;
|
|
5
|
+
onCompleted: (input: string) => void;
|
|
6
|
+
debounceTime: number;
|
|
7
|
+
customClasses?: {
|
|
8
|
+
container?: string;
|
|
9
|
+
input?: string;
|
|
10
|
+
};
|
|
11
|
+
type?: string;
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
isInputValidForCommit?: (userInput: string) => boolean;
|
|
14
|
+
placeholderIcon?: JSX.Element;
|
|
15
|
+
selectAllOnFocus?: boolean;
|
|
16
|
+
limit?: {
|
|
17
|
+
min: number;
|
|
18
|
+
max: number;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
declare const Input: React.FC<Props>;
|
|
22
|
+
export default Input;
|