@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,7 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import classes from "./styles.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
export const InStoreFiltersIcon = ({ width, height, customClasses }) => {
|
|
5
|
+
return (_jsx("div", Object.assign({ className: classes.iconWrapperForStrokedSvg, style: { transform: 'scale(0.85)' } }, { children: _jsxs("svg", Object.assign({ width: width, height: height, viewBox: "0 0 35 34", fill: 'white', xmlns: "http://www.w3.org/2000/svg" }, { children: [_jsx("path", { className: clsx(classes.svgPath, customClasses === null || customClasses === void 0 ? void 0 : customClasses.path), d: "M3.33203 16.9995V21.2495C3.33203 28.3329 6.16537 31.1662 13.2487 31.1662H21.7487C28.832 31.1662 31.6654 28.3329 31.6654 21.2495V12.7495C31.6654 8.32952 30.5604 5.55285 27.9962 4.10785C27.2737 3.69702 25.8287 3.38535 24.5112 3.17285M18.9154 18.4162H25.9987M16.082 24.0829H25.9987", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { className: clsx(classes.svgPath, customClasses === null || customClasses === void 0 ? void 0 : customClasses.path), d: "M5.18359 7.94727V11.1277C5.18359 14.3081 6.62859 15.5831 10.2331 15.5831H14.56C18.1645 15.5831 19.6095 14.3081 19.6095 11.1277V7.94727", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { className: clsx(classes.svgPath, customClasses === null || customClasses === void 0 ? void 0 : customClasses.path), d: "M12.3978 8.50033C13.8669 8.50033 14.9507 7.44491 14.8062 6.14866L14.2763 1.41699H10.5274L9.98949 6.14866C9.84499 7.44491 10.9287 8.50033 12.3978 8.50033Z", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }), _jsx("path", { className: clsx(classes.svgPath, customClasses === null || customClasses === void 0 ? void 0 : customClasses.path), d: "M17.4638 8.50033C19.0854 8.50033 20.2735 7.33866 20.113 5.91491L19.8882 3.96699C19.5992 2.12533 18.7964 1.41699 16.6931 1.41699H14.2447L14.8066 6.38241C14.9431 7.55116 16.1392 8.50033 17.4638 8.50033ZM7.29261 8.50033C8.61719 8.50033 9.81333 7.55116 9.94178 6.38241L10.1184 4.81699L10.5037 1.41699H8.05525C5.95197 1.41699 5.14919 2.12533 4.86019 3.96699L4.64344 5.91491C4.48289 7.33866 5.671 8.50033 7.29261 8.50033ZM12.3983 12.042C11.0576 12.042 10.3913 12.6299 10.3913 13.8128V15.5837H14.4052V13.8128C14.4052 12.6299 13.7389 12.042 12.3983 12.042Z", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })] })) })));
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=InStoreFiltersIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InStoreFiltersIcon.js","sourceRoot":"","sources":["../../../../../src/icons/InStoreFiltersIcon.tsx"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,qBAAqB,CAAA;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAY,EAAE,EAAE;IAC5E,OAAO,CACH,4BAAK,SAAS,EAAE,OAAO,CAAC,wBAAwB,EAAE,KAAK,EAAE,EAAC,SAAS,EAAE,aAAa,EAAC,gBAC/E,6BAAK,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAC,WAAW,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAC,4BAA4B,iBACpG,eAAM,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAAC,EAAE,CAAC,EAAC,wRAAwR,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAE,EACtZ,eAAM,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAAC,EAAE,CAAC,EAAC,wIAAwI,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAE,EACtQ,eAAM,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAAC,EAAE,CAAC,EAAC,2JAA2J,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAE,EACzR,eAAM,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAAC,EAAE,CAAC,EAAC,siBAAsiB,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,GAAE,KAClqB,IACJ,CACT,CAAA;AACL,CAAC,CAAA","sourcesContent":["import React from \"react\";\r\nimport classes from \"./styles.module.css\"\r\nimport clsx from \"clsx\";\r\nimport {IconProps} from \"../@types/iconProps\";\r\n\r\nexport const InStoreFiltersIcon = ({width, height, customClasses}: IconProps) => {\r\n return (\r\n <div className={classes.iconWrapperForStrokedSvg} style={{transform: 'scale(0.85)'}}>\r\n <svg width={width} height={height} viewBox=\"0 0 35 34\" fill={'white'} xmlns=\"http://www.w3.org/2000/svg\">\r\n <path className={clsx(classes.svgPath, customClasses?.path)} d=\"M3.33203 16.9995V21.2495C3.33203 28.3329 6.16537 31.1662 13.2487 31.1662H21.7487C28.832 31.1662 31.6654 28.3329 31.6654 21.2495V12.7495C31.6654 8.32952 30.5604 5.55285 27.9962 4.10785C27.2737 3.69702 25.8287 3.38535 24.5112 3.17285M18.9154 18.4162H25.9987M16.082 24.0829H25.9987\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\r\n <path className={clsx(classes.svgPath, customClasses?.path)} d=\"M5.18359 7.94727V11.1277C5.18359 14.3081 6.62859 15.5831 10.2331 15.5831H14.56C18.1645 15.5831 19.6095 14.3081 19.6095 11.1277V7.94727\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\r\n <path className={clsx(classes.svgPath, customClasses?.path)} d=\"M12.3978 8.50033C13.8669 8.50033 14.9507 7.44491 14.8062 6.14866L14.2763 1.41699H10.5274L9.98949 6.14866C9.84499 7.44491 10.9287 8.50033 12.3978 8.50033Z\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\r\n <path className={clsx(classes.svgPath, customClasses?.path)} d=\"M17.4638 8.50033C19.0854 8.50033 20.2735 7.33866 20.113 5.91491L19.8882 3.96699C19.5992 2.12533 18.7964 1.41699 16.6931 1.41699H14.2447L14.8066 6.38241C14.9431 7.55116 16.1392 8.50033 17.4638 8.50033ZM7.29261 8.50033C8.61719 8.50033 9.81333 7.55116 9.94178 6.38241L10.1184 4.81699L10.5037 1.41699H8.05525C5.95197 1.41699 5.14919 2.12533 4.86019 3.96699L4.64344 5.91491C4.48289 7.33866 5.671 8.50033 7.29261 8.50033ZM12.3983 12.042C11.0576 12.042 10.3913 12.6299 10.3913 13.8128V15.5837H14.4052V13.8128C14.4052 12.6299 13.7389 12.042 12.3983 12.042Z\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n )\r\n}"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import classes from "./styles.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
export const PinIcon = ({ width, height, customClasses }) => {
|
|
5
|
+
return (_jsx("div", Object.assign({ className: classes.iconWrapper, style: { transform: 'rotate(35deg)' } }, { children: _jsx("span", Object.assign({ className: clsx("material-symbols-outlined", classes.materialIcon, customClasses === null || customClasses === void 0 ? void 0 : customClasses.svg) }, { children: "push_pin" })) })));
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=PinIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PinIcon.js","sourceRoot":"","sources":["../../../../../src/icons/PinIcon.tsx"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,qBAAqB,CAAA;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAY,EAAE,EAAE;IACjE,OAAO,CACH,4BAAK,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,EAAC,SAAS,EAAE,eAAe,EAAC,gBACpE,6BAAM,SAAS,EAAE,IAAI,CAAC,2BAA2B,EAAE,OAAO,CAAC,YAAY,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,CAAC,8BAErF,IACL,CACT,CAAA;AACL,CAAC,CAAA","sourcesContent":["import React from \"react\";\r\nimport classes from \"./styles.module.css\"\r\nimport clsx from \"clsx\";\r\nimport {IconProps} from \"../@types/iconProps\";\r\n\r\nexport const PinIcon = ({width, height, customClasses}: IconProps) => {\r\n return (\r\n <div className={classes.iconWrapper} style={{transform: 'rotate(35deg)'}}>\r\n <span className={clsx(\"material-symbols-outlined\", classes.materialIcon, customClasses?.svg)}>\r\n push_pin\r\n </span>\r\n </div>\r\n )\r\n}\r\n\r\n\r\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import classes from "./styles.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
export const PositionIcon = ({ width, height, customClasses }) => {
|
|
5
|
+
return (_jsx("div", Object.assign({ className: classes.iconWrapper }, { children: _jsx("span", Object.assign({ className: clsx("material-symbols-outlined", classes.materialIcon, customClasses === null || customClasses === void 0 ? void 0 : customClasses.svg) }, { children: "move" })) })));
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=PositionIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PositionIcon.js","sourceRoot":"","sources":["../../../../../src/icons/PositionIcon.tsx"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,qBAAqB,CAAA;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAY,EAAE,EAAE;IAEtE,OAAO,CACH,4BAAK,SAAS,EAAE,OAAO,CAAC,WAAW,gBAC/B,6BAAM,SAAS,EAAE,IAAI,CAAC,2BAA2B,EAAE,OAAO,CAAC,YAAY,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,CAAC,0BAErF,IACL,CACT,CAAA;AACL,CAAC,CAAA","sourcesContent":["import React from \"react\";\r\nimport classes from \"./styles.module.css\"\r\nimport clsx from \"clsx\";\r\nimport {IconProps} from \"../@types/iconProps\";\r\n\r\nexport const PositionIcon = ({width, height, customClasses}: IconProps) => {\r\n\r\n return (\r\n <div className={classes.iconWrapper}>\r\n <span className={clsx(\"material-symbols-outlined\", classes.materialIcon, customClasses?.svg)}>\r\n move\r\n </span>\r\n </div>\r\n )\r\n}\r\n\r\n\r\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import classes from "./styles.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
export const PromoteIcon = ({ width, height, customClasses }) => {
|
|
5
|
+
return (_jsx("div", Object.assign({ className: classes.iconWrapper }, { children: _jsx("span", Object.assign({ className: clsx("material-symbols-outlined", classes.materialIcon, customClasses === null || customClasses === void 0 ? void 0 : customClasses.svg) }, { children: "upload" })) })));
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=PromoteIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PromoteIcon.js","sourceRoot":"","sources":["../../../../../src/icons/PromoteIcon.tsx"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,qBAAqB,CAAA;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAY,EAAE,EAAE;IACrE,OAAO,CACH,4BAAK,SAAS,EAAE,OAAO,CAAC,WAAW,gBAC/B,6BAAM,SAAS,EAAE,IAAI,CAAC,2BAA2B,EAAE,OAAO,CAAC,YAAY,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,CAAC,4BAErF,IACL,CACT,CAAA;AACL,CAAC,CAAC","sourcesContent":["import React from \"react\";\r\nimport classes from \"./styles.module.css\"\r\nimport clsx from \"clsx\";\r\nimport {IconProps} from \"../@types/iconProps\";\r\n\r\nexport const PromoteIcon = ({width, height, customClasses}: IconProps) => {\r\n return (\r\n <div className={classes.iconWrapper}>\r\n <span className={clsx(\"material-symbols-outlined\", classes.materialIcon, customClasses?.svg)}>\r\n upload\r\n </span>\r\n </div>\r\n )\r\n};\r\n\r\n\r\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import classes from "./styles.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
export const RemoveIcon = ({ width, height, customClasses }) => {
|
|
5
|
+
return (_jsx("div", Object.assign({ className: classes.iconWrapper }, { children: _jsx("span", Object.assign({ className: clsx("material-symbols-outlined", classes.materialIcon, customClasses === null || customClasses === void 0 ? void 0 : customClasses.svg) }, { children: "delete" })) })));
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=RemoveIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RemoveIcon.js","sourceRoot":"","sources":["../../../../../src/icons/RemoveIcon.tsx"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,qBAAqB,CAAA;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAY,EAAE,EAAE;IACpE,OAAO,CACH,4BAAK,SAAS,EAAE,OAAO,CAAC,WAAW,gBAC/B,6BAAM,SAAS,EAAE,IAAI,CAAC,2BAA2B,EAAE,OAAO,CAAC,YAAY,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,CAAC,4BAErF,IACL,CACT,CAAA;AACL,CAAC,CAAA","sourcesContent":["import React from \"react\";\r\nimport classes from \"./styles.module.css\"\r\nimport clsx from \"clsx\";\r\nimport {IconProps} from \"../@types/iconProps\";\r\n\r\nexport const RemoveIcon = ({width, height, customClasses}: IconProps) => {\r\n return (\r\n <div className={classes.iconWrapper}>\r\n <span className={clsx(\"material-symbols-outlined\", classes.materialIcon, customClasses?.svg)}>\r\n delete\r\n </span>\r\n </div>\r\n )\r\n}"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import classes from "./styles.module.css";
|
|
3
|
+
import clsx from "clsx";
|
|
4
|
+
export const RestoreIcon = ({ width, height, customClasses }) => {
|
|
5
|
+
return (_jsx("div", Object.assign({ className: classes.iconWrapper }, { children: _jsx("span", Object.assign({ className: clsx("material-symbols-outlined", classes.materialIcon, customClasses === null || customClasses === void 0 ? void 0 : customClasses.svg) }, { children: "restart_alt" })) })));
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=RestoreIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RestoreIcon.js","sourceRoot":"","sources":["../../../../../src/icons/RestoreIcon.tsx"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,qBAAqB,CAAA;AACzC,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAY,EAAE,EAAE;IACrE,OAAO,CACH,4BAAK,SAAS,EAAE,OAAO,CAAC,WAAW,gBAC/B,6BAAM,SAAS,EAAE,IAAI,CAAC,2BAA2B,EAAE,OAAO,CAAC,YAAY,EAAE,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,CAAC,iCAErF,IACL,CACT,CAAA;AACL,CAAC,CAAA","sourcesContent":["import React from \"react\";\r\nimport classes from \"./styles.module.css\"\r\nimport clsx from \"clsx\";\r\nimport {IconProps} from \"../@types/iconProps\";\r\n\r\nexport const RestoreIcon = ({width, height, customClasses}: IconProps) => {\r\n return (\r\n <div className={classes.iconWrapper}>\r\n <span className={clsx(\"material-symbols-outlined\", classes.materialIcon, customClasses?.svg)}>\r\n restart_alt\r\n </span>\r\n </div>\r\n )\r\n}\r\n\r\n\r\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import ReactDOM from "react-dom";
|
|
4
|
+
import App from "./App";
|
|
5
|
+
ReactDOM.render(_jsx(React.StrictMode, { children: _jsx(App, {}) }), document.getElementById('root'));
|
|
6
|
+
//# sourceMappingURL=main.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../../../src/main.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,GAAG,MAAM,OAAO,CAAC;AAExB,QAAQ,CAAC,MAAM,CACb,KAAC,KAAK,CAAC,UAAU,cACb,KAAC,GAAG,KAAG,GACQ,EACnB,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAChC,CAAA","sourcesContent":["import React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport App from \"./App\";\r\n\r\nReactDOM.render(\r\n <React.StrictMode>\r\n <App />\r\n </React.StrictMode>,\r\n document.getElementById('root')\r\n)\r\n"]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AxiosRequestConfig } from "axios";
|
|
2
|
+
interface Params {
|
|
3
|
+
[key: string]: string | number | object | undefined | boolean;
|
|
4
|
+
}
|
|
5
|
+
interface GetProps {
|
|
6
|
+
url: string;
|
|
7
|
+
params: Params;
|
|
8
|
+
config?: AxiosRequestConfig;
|
|
9
|
+
}
|
|
10
|
+
interface PostProps {
|
|
11
|
+
url: string;
|
|
12
|
+
data?: Params;
|
|
13
|
+
config?: AxiosRequestConfig;
|
|
14
|
+
}
|
|
15
|
+
export declare const API: {
|
|
16
|
+
get: <T>({ url, params, config }: GetProps) => Promise<T>;
|
|
17
|
+
post: <T_1>({ url, config, data }: PostProps) => Promise<T_1>;
|
|
18
|
+
};
|
|
19
|
+
export declare const parseUrl: (url: string) => string;
|
|
20
|
+
export declare function fastSimonGet<T>(endpoint: string, path: string, params?: Params): Promise<T>;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import axios from "axios";
|
|
11
|
+
export const API = {
|
|
12
|
+
get: function ({ url, params, config }) {
|
|
13
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
14
|
+
const response = yield fetch(url + `?${Object.entries(params).filter(param => param[1]).map((param) => `${param[0]}=${param[1]}`).join('&')}`);
|
|
15
|
+
return yield response.json();
|
|
16
|
+
});
|
|
17
|
+
},
|
|
18
|
+
post: function ({ url, config, data }) {
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
const instance = axios.create({
|
|
21
|
+
baseURL: url,
|
|
22
|
+
data: data
|
|
23
|
+
});
|
|
24
|
+
if ('Session' in instance.defaults.headers) {
|
|
25
|
+
delete (instance.defaults.headers['Session']);
|
|
26
|
+
}
|
|
27
|
+
if ('SiteKey' in instance.defaults.headers) {
|
|
28
|
+
delete (instance.defaults.headers['SiteKey']);
|
|
29
|
+
}
|
|
30
|
+
const response = yield instance.post(url, data, config);
|
|
31
|
+
return response.data;
|
|
32
|
+
});
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
export const parseUrl = (url) => {
|
|
36
|
+
const fixed = url.replace("https://", "").replace("http://", "");
|
|
37
|
+
if (fixed[fixed.length - 1] === "/") {
|
|
38
|
+
return fixed.slice(0, fixed.length - 1);
|
|
39
|
+
}
|
|
40
|
+
return fixed;
|
|
41
|
+
};
|
|
42
|
+
export function fastSimonGet(endpoint, path, params) {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
return yield API.get({
|
|
45
|
+
url: `${endpoint}/${path}`,
|
|
46
|
+
params: Object.assign({ src: "visual-editor" }, params)
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=API.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"API.js","sourceRoot":"","sources":["../../../../../src/services/API.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAkBhD,MAAM,CAAC,MAAM,GAAG,GAAG;IACf,GAAG,EAAE,UAAmB,EAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAW;;YAEnD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAE/I,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC;KAAA;IAED,IAAI,EAAE,UAAmB,EAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAY;;YACnD,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC1B,OAAO,EAAE,GAAG;gBACZ,IAAI,EAAE,IAAI;aACb,CAAC,CAAC;YACH,IAAG,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE;gBACvC,OAAO,CAAE,QAAQ,CAAC,QAAQ,CAAC,OAA+B,CAAC,SAAS,CAAC,CAAC,CAAC;aAC1E;YACD,IAAG,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE;gBACvC,OAAO,CAAE,QAAQ,CAAC,QAAQ,CAAC,OAA+B,CAAC,SAAS,CAAC,CAAC,CAAC;aAC1E;YACD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAExD,OAAO,QAAQ,CAAC,IAAS,CAAC;QAC9B,CAAC;KAAA;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE;IACpC,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACjE,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;QACjC,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;KAC1C;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,UAAgB,YAAY,CAAI,QAAgB,EAAE,IAAY,EAAE,MAAe;;QACjF,OAAO,MAAM,GAAG,CAAC,GAAG,CAAI;YACpB,GAAG,EAAE,GAAG,QAAQ,IAAI,IAAI,EAAE;YAC1B,MAAM,kBACF,GAAG,EAAE,eAAe,IACjB,MAAM,CACZ;SACJ,CAAC,CAAA;IACN,CAAC;CAAA","sourcesContent":["import axios, {AxiosRequestConfig} from \"axios\";\r\n\r\ninterface Params {\r\n [key: string]: string | number | object | undefined | boolean\r\n}\r\n\r\ninterface GetProps {\r\n url: string,\r\n params: Params,\r\n config?: AxiosRequestConfig\r\n}\r\n\r\ninterface PostProps {\r\n url: string,\r\n data?: Params,\r\n config?: AxiosRequestConfig\r\n}\r\n\r\nexport const API = {\r\n get: async function <T>({url, params, config}: GetProps): Promise<T> {\r\n\r\n const response = await fetch(url + `?${Object.entries(params).filter(param => param[1]).map((param) => `${param[0]}=${param[1]}`).join('&')}`);\r\n\r\n return await response.json();\r\n },\r\n\r\n post: async function <T>({url, config, data}: PostProps) {\r\n const instance = axios.create({\r\n baseURL: url,\r\n data: data\r\n });\r\n if('Session' in instance.defaults.headers) {\r\n delete ((instance.defaults.headers as Record<string, any>)['Session']);\r\n }\r\n if('SiteKey' in instance.defaults.headers) {\r\n delete ((instance.defaults.headers as Record<string, any>)['SiteKey']);\r\n }\r\n const response = await instance.post(url, data, config);\r\n\r\n return response.data as T;\r\n },\r\n};\r\n\r\nexport const parseUrl = (url: string) => {\r\n const fixed = url.replace(\"https://\", \"\").replace(\"http://\", \"\");\r\n if (fixed[fixed.length - 1] === \"/\") {\r\n return fixed.slice(0, fixed.length - 1)\r\n }\r\n return fixed;\r\n};\r\n\r\nexport async function fastSimonGet<T>(endpoint: string, path: string, params?: Params) {\r\n return await API.get<T>({\r\n url: `${endpoint}/${path}`,\r\n params: {\r\n src: \"visual-editor\",\r\n ...params\r\n }\r\n })\r\n}"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { SortBy } from "../@types/sortBy";
|
|
2
|
+
import type { Narrow } from "../@types/narrow";
|
|
3
|
+
import { ServerFacet } from "@fast-simon/utilities";
|
|
4
|
+
import { EditorProduct } from "../@types/editorProduct";
|
|
5
|
+
interface LandingPageResponse {
|
|
6
|
+
items: EditorProduct[];
|
|
7
|
+
facets_completed: boolean;
|
|
8
|
+
narrow?: Narrow[];
|
|
9
|
+
p: number;
|
|
10
|
+
total_p: number;
|
|
11
|
+
isp_quick_view_mode: number;
|
|
12
|
+
related_results: boolean;
|
|
13
|
+
total_results: number;
|
|
14
|
+
lp_slug: string;
|
|
15
|
+
title: string;
|
|
16
|
+
facets: ServerFacet[];
|
|
17
|
+
sort_by: SortBy;
|
|
18
|
+
avoid_tag_prefixes?: string;
|
|
19
|
+
}
|
|
20
|
+
export declare const LandingPage: {
|
|
21
|
+
landingPage: ({ uuid, storeID, landingPage, page, sortBy, facets, narrow, productsPerPage, withProductAttributes, searchWithinResultsQuery, type, visualMerchandising, merchandisingRules, }: any) => Promise<{
|
|
22
|
+
data: LandingPageResponse;
|
|
23
|
+
getFacets: () => Promise<import("@fast-simon/utilities").Facet[]>;
|
|
24
|
+
}>;
|
|
25
|
+
landingPageFacetsOnly: ({ uuid, storeID, landingPage, page, narrow, type, productsPerPage, searchWithinResultsQuery, withProductAttributes, visualMerchandising, merchandisingRules, }: any) => Promise<import("@fast-simon/utilities").Facet[]>;
|
|
26
|
+
};
|
|
27
|
+
export declare const transformFacetsOnlyData: (r: ServerFacet[], avoidTagPrefixes?: string) => import("@fast-simon/utilities").Facet[];
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { fastSimonGet } from "./API";
|
|
11
|
+
import { FacetsParser } from "@fast-simon/utilities";
|
|
12
|
+
// const BASE_URL = import.meta.env.VITE_SERVING_BASE_URL ?? "https://internal-v3joil6oqa-uc.a.run.app/search";
|
|
13
|
+
const BASE_URL = "https://yslp---internal-v3joil6oqa-uc.a.run.app/search";
|
|
14
|
+
export const LandingPage = {
|
|
15
|
+
landingPage: ({ uuid, storeID, landingPage, page = 1, sortBy = "relevency", facets = true, narrow, productsPerPage, withProductAttributes = undefined, searchWithinResultsQuery, type, // }: LandingPageRequest): Promise<LandingPageResponse> => {
|
|
16
|
+
// const narrowParm = narrow ? new NarrowParser().toServerNarrow(narrow) : undefined;
|
|
17
|
+
//
|
|
18
|
+
// const data = await fastSimonGet<LandingPageServerResponseAll>(BASE_URL, 'landing_page_editor', {
|
|
19
|
+
// UUID: uuid,
|
|
20
|
+
// store_id: storeID,
|
|
21
|
+
// facets_required: facets ? 1 : 0,
|
|
22
|
+
// products_per_page: productsPerPage,
|
|
23
|
+
// narrow: JSON.stringify(narrow),
|
|
24
|
+
// lp: landingPage,
|
|
25
|
+
// page_num: page,
|
|
26
|
+
// type: type,
|
|
27
|
+
// // sort_by: sortBy,
|
|
28
|
+
// // with_product_attributes: withProductAttributes || get(ispOptions)?.with_product_attributes,
|
|
29
|
+
// with_product_attributes: withProductAttributes,
|
|
30
|
+
// search_within_search: searchWithinResultsQuery ? searchWithinResultsQuery : undefined,
|
|
31
|
+
// visual_merchandising: !searchWithinResultsQuery && !narrow.length ? JSON.stringify(visualMerchandising).replaceAll('"[', '[').replaceAll(']"', ']') : undefined,
|
|
32
|
+
// // merchandising_editor: 1,
|
|
33
|
+
// // disable_merchandising: 1,
|
|
34
|
+
// // related_search: 1
|
|
35
|
+
// m: 1
|
|
36
|
+
// });
|
|
37
|
+
visualMerchandising, merchandisingRules, }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
38
|
+
const params = {
|
|
39
|
+
UUID: uuid,
|
|
40
|
+
store_id: storeID,
|
|
41
|
+
facets_required: facets ? 1 : 0,
|
|
42
|
+
products_per_page: productsPerPage,
|
|
43
|
+
narrow: JSON.stringify(narrow),
|
|
44
|
+
lp: landingPage,
|
|
45
|
+
page_num: page,
|
|
46
|
+
type: type,
|
|
47
|
+
// sort_by: sortBy,
|
|
48
|
+
// with_product_attributes: withProductAttributes || get(ispOptions)?.with_product_attributes,
|
|
49
|
+
with_product_attributes: withProductAttributes,
|
|
50
|
+
search_within_search: searchWithinResultsQuery
|
|
51
|
+
? searchWithinResultsQuery
|
|
52
|
+
: undefined,
|
|
53
|
+
visual_merchandising: type == 0
|
|
54
|
+
? JSON.stringify(visualMerchandising)
|
|
55
|
+
.replaceAll('"[', "[")
|
|
56
|
+
.replaceAll(']"', "]")
|
|
57
|
+
: undefined,
|
|
58
|
+
// merchandising_editor: 1,
|
|
59
|
+
// disable_merchandising: 1,
|
|
60
|
+
// related_search: 1
|
|
61
|
+
m: 1,
|
|
62
|
+
// merchandising_rules: merchandising_rules ? JSON.stringify(merchandising_rules).replaceAll('"[', '[').replaceAll(']"', ']') : undefined
|
|
63
|
+
merchandising_rules: type == 1 ? JSON.stringify(merchandisingRules) : undefined,
|
|
64
|
+
};
|
|
65
|
+
// if(lastProduct) {
|
|
66
|
+
// params['last_product'] = lastProduct
|
|
67
|
+
// }
|
|
68
|
+
const res = yield yield fastSimonGet(BASE_URL, "landing_page_editor", params);
|
|
69
|
+
// const res = await API.post<LandingPageResponse>({url: BASE_URL+'/landing_page_editor', data: params, config: {headers: {'content-type': 'text/plain'}}});
|
|
70
|
+
return {
|
|
71
|
+
data: res,
|
|
72
|
+
getFacets: () => __awaiter(void 0, void 0, void 0, function* () {
|
|
73
|
+
return (res === null || res === void 0 ? void 0 : res.facets_completed)
|
|
74
|
+
? transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes)
|
|
75
|
+
: yield LandingPage.landingPageFacetsOnly({
|
|
76
|
+
uuid,
|
|
77
|
+
storeID,
|
|
78
|
+
landingPage,
|
|
79
|
+
page,
|
|
80
|
+
narrow,
|
|
81
|
+
type,
|
|
82
|
+
productsPerPage,
|
|
83
|
+
searchWithinResultsQuery,
|
|
84
|
+
withProductAttributes,
|
|
85
|
+
visualMerchandising,
|
|
86
|
+
merchandisingRules,
|
|
87
|
+
});
|
|
88
|
+
}),
|
|
89
|
+
};
|
|
90
|
+
// return {
|
|
91
|
+
// data: data,
|
|
92
|
+
// getFacets: async () => (data?.facets_completed ? transformFacetsOnlyData(data.facets, data.avoid_tag_prefixes) : await LandingPage.landingPageFacetsOnly({uuid,
|
|
93
|
+
// storeID,
|
|
94
|
+
// landingPage,
|
|
95
|
+
// narrow,
|
|
96
|
+
// type,
|
|
97
|
+
// page,
|
|
98
|
+
// productsPerPage,
|
|
99
|
+
// searchWithinResultsQuery})
|
|
100
|
+
// )
|
|
101
|
+
// }
|
|
102
|
+
}),
|
|
103
|
+
landingPageFacetsOnly: ({ uuid, storeID, landingPage, page = 1, narrow, type, productsPerPage, searchWithinResultsQuery, withProductAttributes = false, visualMerchandising, merchandisingRules, }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
104
|
+
// }: LandingPageFacetsOnly): Promise<Facet[]> => {
|
|
105
|
+
const data = yield fastSimonGet(BASE_URL, "landing_page_editor", {
|
|
106
|
+
UUID: uuid,
|
|
107
|
+
store_id: storeID,
|
|
108
|
+
facets_required: 2,
|
|
109
|
+
products_per_page: productsPerPage,
|
|
110
|
+
narrow: JSON.stringify(narrow),
|
|
111
|
+
type: type,
|
|
112
|
+
lp: landingPage,
|
|
113
|
+
page_num: page !== null && page !== void 0 ? page : 1,
|
|
114
|
+
// sort_by: sortBy,
|
|
115
|
+
// with_product_attributes: withProductAttributes || get(ispOptions)?.with_product_attributes,
|
|
116
|
+
with_product_attributes: withProductAttributes,
|
|
117
|
+
search_within_search: searchWithinResultsQuery
|
|
118
|
+
? searchWithinResultsQuery
|
|
119
|
+
: undefined,
|
|
120
|
+
visual_merchandising: type == 0
|
|
121
|
+
? JSON.stringify(visualMerchandising)
|
|
122
|
+
.replaceAll('"[', "[")
|
|
123
|
+
.replaceAll(']"', "]")
|
|
124
|
+
: undefined,
|
|
125
|
+
merchandising_rules: merchandisingRules
|
|
126
|
+
? JSON.stringify(merchandisingRules)
|
|
127
|
+
: undefined,
|
|
128
|
+
m: 1,
|
|
129
|
+
});
|
|
130
|
+
return transformFacetsOnlyData(data.facets, data.avoid_tag_prefixes);
|
|
131
|
+
}),
|
|
132
|
+
};
|
|
133
|
+
// const transformData = (r: LandingPageServerResponseAll): LandingPageResults => ({
|
|
134
|
+
// narrow: r.narrow ? new NarrowParser().toNarrow(r.narrow) : {},
|
|
135
|
+
// sortBy: r.sort_by,
|
|
136
|
+
// totalResults: r.total_results,
|
|
137
|
+
// page: r.p,
|
|
138
|
+
// totalPages: r.total_p,
|
|
139
|
+
// lpSlug: r.lp_slug,
|
|
140
|
+
// // products: ProductParser.parseProducts(r.items),
|
|
141
|
+
// products: r.items,
|
|
142
|
+
// productIDS: r.items.map(product => String(product.id)),
|
|
143
|
+
// facets: new FacetsParser().parseFacets(r.facets, r.avoid_tag_prefixes ? r.avoid_tag_prefixes.split(",") : []),
|
|
144
|
+
// avoidTagPrefixes: r.avoid_tag_prefixes ? r.avoid_tag_prefixes.split(",") : [],
|
|
145
|
+
// bannerHTML: r?.banner_html ?? "",
|
|
146
|
+
// bannerHTMLMobile: r?.banner_html_mobile ?? "",
|
|
147
|
+
// indexPage: r.index_page,
|
|
148
|
+
// title: r.title,
|
|
149
|
+
// sort: r.sort_by,
|
|
150
|
+
// ancestors: new FacetsParser().parseAncestors(r?.ancestor_categories)
|
|
151
|
+
// });
|
|
152
|
+
export const transformFacetsOnlyData = (r, avoidTagPrefixes) => new FacetsParser().parseFacets(r, avoidTagPrefixes ? avoidTagPrefixes.split(",") : []);
|
|
153
|
+
//# sourceMappingURL=landingPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"landingPage.js","sourceRoot":"","sources":["../../../../../src/services/landingPage.ts"],"names":[],"mappings":"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","sourcesContent":["import type {SortBy} from \"../@types/sortBy\";\r\nimport type {Narrow, ServerNarrow} from \"../@types/narrow\";\r\nimport { fastSimonGet } from \"./API\";\r\nimport {FacetsParser, ServerFacet} from \"@fast-simon/utilities\"\r\nimport {AncestorCategory} from \"../@types/categories\";\r\nimport {EditorProduct} from \"../@types/editorProduct\";\r\ninterface LandingPageRequest {\r\n uuid: string;\r\n storeID: string;\r\n landingPage: string\r\n type: number\r\n page?: number\r\n sortBy?: SortBy\r\n facets?: boolean\r\n narrow?: Narrow\r\n productsPerPage?: number\r\n withProductAttributes?: boolean\r\n searchWithinResultsQuery?: string\r\n}\r\n\r\ninterface LandingPageFacetsOnly extends Omit<LandingPageRequest, \"facets\"> {\r\n avoid_tag_prefixes?: string\r\n}\r\n\r\ninterface LandingPageServerResponseFacetsOnly {\r\n total_results: number\r\n term: string\r\n narrow?: ServerNarrow\r\n facets_completed: true\r\n facets: ServerFacet[],\r\n}\r\n\r\ninterface LandingPageServerResponseAll {\r\n items: EditorProduct[]\r\n alternatives?: string[]\r\n facets_completed: boolean\r\n narrow?: ServerNarrow[]\r\n p: number\r\n total_p: number\r\n total_results: number\r\n term: string\r\n lp_slug: string\r\n title: string\r\n index_page: number\r\n banner_html: string\r\n banner_html_mobile: string\r\n facets: ServerFacet[]\r\n sort_by: SortBy\r\n avoid_tag_prefixes?: string\r\n cms_number_found?: number\r\n within_search_results_for?: string,\r\n ancestor_categories?: AncestorCategory[]\r\n}\r\n\r\n// const BASE_URL = import.meta.env.VITE_SERVING_BASE_URL ?? \"https://internal-v3joil6oqa-uc.a.run.app/search\";\r\nconst BASE_URL = \"https://yslp---internal-v3joil6oqa-uc.a.run.app/search\"\r\n\r\ninterface LandingPageResponse {\r\n items: EditorProduct[]\r\n facets_completed: boolean\r\n narrow?: Narrow[]\r\n p: number\r\n total_p: number\r\n isp_quick_view_mode: number\r\n related_results: boolean\r\n total_results: number\r\n lp_slug: string\r\n title: string\r\n facets: ServerFacet[]\r\n sort_by: SortBy\r\n avoid_tag_prefixes?: string\r\n // data: LandingPageResults,\r\n // getFacetsOnly?: () => Promise<Facet[]>\r\n}\r\n\r\nexport const LandingPage = {\r\n landingPage: async ({\r\n uuid,\r\n storeID,\r\n landingPage,\r\n page = 1,\r\n sortBy = \"relevency\",\r\n facets = true,\r\n narrow,\r\n productsPerPage,\r\n withProductAttributes = undefined,\r\n searchWithinResultsQuery,\r\n type, // }: LandingPageRequest): Promise<LandingPageResponse> => {\r\n // const narrowParm = narrow ? new NarrowParser().toServerNarrow(narrow) : undefined;\r\n //\r\n // const data = await fastSimonGet<LandingPageServerResponseAll>(BASE_URL, 'landing_page_editor', {\r\n // UUID: uuid,\r\n // store_id: storeID,\r\n // facets_required: facets ? 1 : 0,\r\n // products_per_page: productsPerPage,\r\n // narrow: JSON.stringify(narrow),\r\n // lp: landingPage,\r\n // page_num: page,\r\n // type: type,\r\n // // sort_by: sortBy,\r\n // // with_product_attributes: withProductAttributes || get(ispOptions)?.with_product_attributes,\r\n // with_product_attributes: withProductAttributes,\r\n // search_within_search: searchWithinResultsQuery ? searchWithinResultsQuery : undefined,\r\n // visual_merchandising: !searchWithinResultsQuery && !narrow.length ? JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']') : undefined,\r\n // // merchandising_editor: 1,\r\n // // disable_merchandising: 1,\r\n // // related_search: 1\r\n // m: 1\r\n // });\r\n visualMerchandising,\r\n merchandisingRules,\r\n }: any) => {\r\n const params: Record<string, any> = {\r\n UUID: uuid,\r\n store_id: storeID,\r\n facets_required: facets ? 1 : 0,\r\n products_per_page: productsPerPage,\r\n narrow: JSON.stringify(narrow),\r\n lp: landingPage,\r\n page_num: page,\r\n type: type,\r\n // sort_by: sortBy,\r\n // with_product_attributes: withProductAttributes || get(ispOptions)?.with_product_attributes,\r\n with_product_attributes: withProductAttributes,\r\n search_within_search: searchWithinResultsQuery\r\n ? searchWithinResultsQuery\r\n : undefined,\r\n visual_merchandising:\r\n type == 0\r\n ? JSON.stringify(visualMerchandising)\r\n .replaceAll('\"[', \"[\")\r\n .replaceAll(']\"', \"]\")\r\n : undefined,\r\n // merchandising_editor: 1,\r\n // disable_merchandising: 1,\r\n // related_search: 1\r\n m: 1,\r\n // merchandising_rules: merchandising_rules ? JSON.stringify(merchandising_rules).replaceAll('\"[', '[').replaceAll(']\"', ']') : undefined\r\n merchandising_rules:\r\n type == 1 ? JSON.stringify(merchandisingRules) : undefined,\r\n };\r\n // if(lastProduct) {\r\n // params['last_product'] = lastProduct\r\n // }\r\n const res = await await fastSimonGet<LandingPageResponse>(\r\n BASE_URL,\r\n \"landing_page_editor\",\r\n params\r\n );\r\n // const res = await API.post<LandingPageResponse>({url: BASE_URL+'/landing_page_editor', data: params, config: {headers: {'content-type': 'text/plain'}}});\r\n return {\r\n data: res,\r\n getFacets: async () =>\r\n res?.facets_completed\r\n ? transformFacetsOnlyData(\r\n res.facets,\r\n res.avoid_tag_prefixes\r\n )\r\n : await LandingPage.landingPageFacetsOnly({\r\n uuid,\r\n storeID,\r\n landingPage,\r\n page,\r\n narrow,\r\n type,\r\n productsPerPage,\r\n searchWithinResultsQuery,\r\n withProductAttributes,\r\n visualMerchandising,\r\n merchandisingRules,\r\n }),\r\n };\r\n // return {\r\n // data: data,\r\n // getFacets: async () => (data?.facets_completed ? transformFacetsOnlyData(data.facets, data.avoid_tag_prefixes) : await LandingPage.landingPageFacetsOnly({uuid,\r\n // storeID,\r\n // landingPage,\r\n // narrow,\r\n // type,\r\n // page,\r\n // productsPerPage,\r\n // searchWithinResultsQuery})\r\n // )\r\n // }\r\n },\r\n\r\n landingPageFacetsOnly: async ({\r\n uuid,\r\n storeID,\r\n landingPage,\r\n page = 1,\r\n narrow,\r\n type,\r\n productsPerPage,\r\n searchWithinResultsQuery,\r\n withProductAttributes = false,\r\n visualMerchandising,\r\n merchandisingRules,\r\n }: any) => {\r\n // }: LandingPageFacetsOnly): Promise<Facet[]> => {\r\n\r\n const data = await fastSimonGet<LandingPageServerResponseAll>(\r\n BASE_URL,\r\n \"landing_page_editor\",\r\n {\r\n UUID: uuid,\r\n store_id: storeID,\r\n facets_required: 2,\r\n products_per_page: productsPerPage,\r\n narrow: JSON.stringify(narrow),\r\n type: type,\r\n lp: landingPage,\r\n page_num: page ?? 1,\r\n // sort_by: sortBy,\r\n // with_product_attributes: withProductAttributes || get(ispOptions)?.with_product_attributes,\r\n with_product_attributes: withProductAttributes,\r\n search_within_search: searchWithinResultsQuery\r\n ? searchWithinResultsQuery\r\n : undefined,\r\n visual_merchandising:\r\n type == 0\r\n ? JSON.stringify(visualMerchandising)\r\n .replaceAll('\"[', \"[\")\r\n .replaceAll(']\"', \"]\")\r\n : undefined,\r\n merchandising_rules: merchandisingRules\r\n ? JSON.stringify(merchandisingRules)\r\n : undefined,\r\n m: 1,\r\n }\r\n );\r\n\r\n return transformFacetsOnlyData(data.facets, data.avoid_tag_prefixes);\r\n },\r\n};\r\n\r\n// const transformData = (r: LandingPageServerResponseAll): LandingPageResults => ({\r\n // narrow: r.narrow ? new NarrowParser().toNarrow(r.narrow) : {},\r\n // sortBy: r.sort_by,\r\n // totalResults: r.total_results,\r\n // page: r.p,\r\n // totalPages: r.total_p,\r\n // lpSlug: r.lp_slug,\r\n // // products: ProductParser.parseProducts(r.items),\r\n // products: r.items,\r\n // productIDS: r.items.map(product => String(product.id)),\r\n // facets: new FacetsParser().parseFacets(r.facets, r.avoid_tag_prefixes ? r.avoid_tag_prefixes.split(\",\") : []),\r\n // avoidTagPrefixes: r.avoid_tag_prefixes ? r.avoid_tag_prefixes.split(\",\") : [],\r\n // bannerHTML: r?.banner_html ?? \"\",\r\n // bannerHTMLMobile: r?.banner_html_mobile ?? \"\",\r\n // indexPage: r.index_page,\r\n // title: r.title,\r\n // sort: r.sort_by,\r\n // ancestors: new FacetsParser().parseAncestors(r?.ancestor_categories)\r\n// });\r\n\r\nexport const transformFacetsOnlyData = (r: ServerFacet[], avoidTagPrefixes?: string) => new FacetsParser().parseFacets(r, avoidTagPrefixes ? avoidTagPrefixes.split(\",\") : []);"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export class CustomTagsFilters {
|
|
2
|
+
static setCustomTagsFilters(customTagsFilters) {
|
|
3
|
+
localStorage.setItem('customTagsFilters', JSON.stringify(customTagsFilters));
|
|
4
|
+
}
|
|
5
|
+
static getCustomTagsFilters() {
|
|
6
|
+
const storedFilters = localStorage.getItem('customTagsFilters');
|
|
7
|
+
return storedFilters ? JSON.parse(storedFilters) : [];
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=customTagsFilters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"customTagsFilters.js","sourceRoot":"","sources":["../../../../../src/utils/customTagsFilters.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,iBAAiB;IAC1B,MAAM,CAAC,oBAAoB,CAAC,iBAA2B;QACnD,YAAY,CAAC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,CAAC,oBAAoB;QACvB,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAChE,OAAO,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,CAAC;CACJ","sourcesContent":["export class CustomTagsFilters {\r\n static setCustomTagsFilters(customTagsFilters: string[]) {\r\n localStorage.setItem('customTagsFilters', JSON.stringify(customTagsFilters));\r\n }\r\n\r\n static getCustomTagsFilters(): string[] {\r\n const storedFilters = localStorage.getItem('customTagsFilters');\r\n return storedFilters ? JSON.parse(storedFilters) : [];\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { PinnedProduct } from "../@types/context";
|
|
2
|
+
import { EditorProduct } from "../@types/editorProduct";
|
|
3
|
+
export declare const fixPinnedPositions: (pinned: PinnedProduct[], products: EditorProduct[], numOfPromotedProducts: number) => any[];
|
|
4
|
+
export declare const fixPinnedPositions2: (pinned: PinnedProduct[], products: EditorProduct[], product?: EditorProduct) => EditorProduct[];
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export const fixPinnedPositions = (pinned, products, numOfPromotedProducts) => {
|
|
2
|
+
const pinnedFromProducts = [];
|
|
3
|
+
products.forEach((product, index) => {
|
|
4
|
+
if ((product === null || product === void 0 ? void 0 : product.productLabel) === 'Pinned') {
|
|
5
|
+
pinnedFromProducts.push([index, product.id]);
|
|
6
|
+
}
|
|
7
|
+
});
|
|
8
|
+
return [
|
|
9
|
+
...pinned.filter(([_, id]) => !pinnedFromProducts.find(([_, productId]) => productId === id)),
|
|
10
|
+
...pinnedFromProducts
|
|
11
|
+
];
|
|
12
|
+
};
|
|
13
|
+
export const fixPinnedPositions2 = (pinned, products, product) => {
|
|
14
|
+
// move all the pinned products in products to their position in the pinned array
|
|
15
|
+
const filteredPinned = pinned === null || pinned === void 0 ? void 0 : pinned.filter(([_, id]) => id !== (product === null || product === void 0 ? void 0 : product.id));
|
|
16
|
+
const filteredProducts = products === null || products === void 0 ? void 0 : products.filter(p => p.productLabel !== 'Pinned');
|
|
17
|
+
filteredPinned === null || filteredPinned === void 0 ? void 0 : filteredPinned.sort((a, b) => a[0] - b[0]);
|
|
18
|
+
const productsMap = {};
|
|
19
|
+
products.forEach(p => productsMap[p.id] = p);
|
|
20
|
+
filteredPinned === null || filteredPinned === void 0 ? void 0 : filteredPinned.forEach(pin => {
|
|
21
|
+
if (productsMap === null || productsMap === void 0 ? void 0 : productsMap[pin[1]]) {
|
|
22
|
+
filteredProducts.splice(pin[0], 0, productsMap[pin[1]]);
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
return filteredProducts;
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=fixPinnedPositions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixPinnedPositions.js","sourceRoot":"","sources":["../../../../../src/utils/fixPinnedPositions.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,MAAuB,EAAE,QAAyB,EAAE,qBAA6B,EAAE,EAAE;IACpH,MAAM,kBAAkB,GAAoB,EAAE,CAAC;IAE/C,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;QAChC,IAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,MAAK,QAAQ,EAAE;YACnC,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;SAChD;IACL,CAAC,CAAC,CAAC;IAEH,OAAO;QACH,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC;QAC7F,GAAG,kBAAkB;KACxB,CAAC;AACN,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,MAAuB,EAAE,QAAyB,EAAE,OAAuB,EAAE,EAAE;IAE/G,iFAAiF;IACjF,MAAM,cAAc,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,MAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,EAAE,CAAA,CAAC,CAAC;IACvE,MAAM,gBAAgB,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC;IAC5E,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE5C,MAAM,WAAW,GAAiC,EAAE,CAAC;IACrD,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAE7C,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,OAAO,CAAC,GAAG,CAAC,EAAE;QAC1B,IAAG,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAG,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YACtB,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3D;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC;AAE5B,CAAC,CAAA","sourcesContent":["import {PinnedProduct} from \"../@types/context\";\r\nimport {EditorProduct} from \"../@types/editorProduct\";\r\nimport {ProductsUtils} from \"./products\";\r\n\r\nexport const fixPinnedPositions = (pinned: PinnedProduct[], products: EditorProduct[], numOfPromotedProducts: number) => {\r\n const pinnedFromProducts: PinnedProduct[] = [];\r\n\r\n products.forEach((product, index) => {\r\n if(product?.productLabel === 'Pinned') {\r\n pinnedFromProducts.push([index, product.id]);\r\n }\r\n });\r\n\r\n return [\r\n ...pinned.filter(([_, id]) => !pinnedFromProducts.find(([_, productId]) => productId === id)),\r\n ...pinnedFromProducts\r\n ];\r\n}\r\n\r\nexport const fixPinnedPositions2 = (pinned: PinnedProduct[], products: EditorProduct[], product?: EditorProduct) => {\r\n\r\n // move all the pinned products in products to their position in the pinned array\r\n const filteredPinned = pinned?.filter(([_, id]) => id !== product?.id);\r\n const filteredProducts = products?.filter(p => p.productLabel !== 'Pinned');\r\n filteredPinned?.sort((a, b) => a[0] - b[0]);\r\n\r\n const productsMap:Record<string, EditorProduct> = {};\r\n products.forEach(p => productsMap[p.id] = p);\r\n\r\n filteredPinned?.forEach(pin => {\r\n if(productsMap?.[pin[1]]) {\r\n filteredProducts.splice(pin[0], 0, productsMap[pin[1]]);\r\n }\r\n });\r\n\r\n return filteredProducts;\r\n\r\n}"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Narrow, ServerNarrow } from "../@types/narrow";
|
|
2
|
+
export declare class NarrowParser {
|
|
3
|
+
toServerNarrow(narrow: Narrow): ServerNarrow[];
|
|
4
|
+
static toReportingNarrow(narrow: Narrow): {
|
|
5
|
+
narrow_by: string | undefined;
|
|
6
|
+
narrow_by_filters: string | undefined;
|
|
7
|
+
};
|
|
8
|
+
static isEqual(narrow1: Narrow, narrow2: Narrow): boolean;
|
|
9
|
+
toNarrow(narrow: ServerNarrow[]): Narrow;
|
|
10
|
+
stringify(narrow: Narrow): string;
|
|
11
|
+
}
|
|
12
|
+
export declare function isInNarrow(narrow: Narrow, name: string, value?: string): boolean;
|
|
13
|
+
export declare function updateNarrow(narrow: Narrow, name: string, value: string): {
|
|
14
|
+
[x: string]: Set<string>;
|
|
15
|
+
};
|
|
16
|
+
export declare function updateSingleNarrow(narrow: Narrow, name: string, value: string): {
|
|
17
|
+
[x: string]: Set<string>;
|
|
18
|
+
};
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
export class NarrowParser {
|
|
2
|
+
toServerNarrow(narrow) {
|
|
3
|
+
return Object.entries(narrow).reduce((previousValue, [name, values]) => {
|
|
4
|
+
values.forEach(value => previousValue.push([name, value]));
|
|
5
|
+
return previousValue;
|
|
6
|
+
}, []);
|
|
7
|
+
}
|
|
8
|
+
static toReportingNarrow(narrow) {
|
|
9
|
+
const reportingNarrow = [];
|
|
10
|
+
if (narrow) {
|
|
11
|
+
for (const [key, values] of Object.entries(narrow)) {
|
|
12
|
+
reportingNarrow.push([key, Array.from(values)]);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
return {
|
|
16
|
+
narrow_by: reportingNarrow.length > 0 ? String(reportingNarrow) : undefined,
|
|
17
|
+
narrow_by_filters: reportingNarrow.length > 0 ? JSON.stringify(reportingNarrow) : undefined,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
static isEqual(narrow1, narrow2) {
|
|
21
|
+
let isEqual = true;
|
|
22
|
+
const narrowArr = Object.entries(narrow1);
|
|
23
|
+
const prevNarrowArr = Object.entries(narrow2);
|
|
24
|
+
const areSetsEqual = (a, b) => a.size === b.size && [...a].every(value => b.has(value));
|
|
25
|
+
const combined = [...narrowArr, ...prevNarrowArr];
|
|
26
|
+
for (const item of combined) {
|
|
27
|
+
const name = item[0];
|
|
28
|
+
if (!(narrow1 === null || narrow1 === void 0 ? void 0 : narrow1[name]) || !(narrow2 === null || narrow2 === void 0 ? void 0 : narrow2[name])) {
|
|
29
|
+
isEqual = false;
|
|
30
|
+
}
|
|
31
|
+
else if (!areSetsEqual(narrow1 === null || narrow1 === void 0 ? void 0 : narrow1[name], narrow2 === null || narrow2 === void 0 ? void 0 : narrow2[name])) {
|
|
32
|
+
isEqual = false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return isEqual;
|
|
36
|
+
}
|
|
37
|
+
toNarrow(narrow) {
|
|
38
|
+
return narrow.reduce((previousValue, currentValue) => {
|
|
39
|
+
const [name, value] = currentValue;
|
|
40
|
+
if (name in previousValue) {
|
|
41
|
+
previousValue[name].add(value);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
previousValue[name] = new Set([value]);
|
|
45
|
+
}
|
|
46
|
+
return previousValue;
|
|
47
|
+
}, {});
|
|
48
|
+
}
|
|
49
|
+
stringify(narrow) {
|
|
50
|
+
return Object.entries(narrow).reduce((previousValue, [key, values]) => {
|
|
51
|
+
return previousValue + (previousValue ? `,${key}:${[...values]}` : `${key}:${[...values]}`);
|
|
52
|
+
}, "");
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
export function isInNarrow(narrow, name, value) {
|
|
56
|
+
if (value) {
|
|
57
|
+
return name in narrow && narrow[name].has(value);
|
|
58
|
+
}
|
|
59
|
+
return name in narrow;
|
|
60
|
+
}
|
|
61
|
+
export function updateNarrow(narrow, name, value) {
|
|
62
|
+
let newNarrow;
|
|
63
|
+
if (name in narrow) {
|
|
64
|
+
const copy = new Set(narrow[name]);
|
|
65
|
+
if (narrow[name].has(value)) {
|
|
66
|
+
copy.delete(value);
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
copy.add(value);
|
|
70
|
+
}
|
|
71
|
+
newNarrow = Object.assign(Object.assign({}, narrow), { [name]: copy });
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
newNarrow = Object.assign(Object.assign({}, narrow), { [name]: new Set([value]) });
|
|
75
|
+
}
|
|
76
|
+
if (newNarrow[name] && newNarrow[name].size === 0) {
|
|
77
|
+
delete newNarrow[name];
|
|
78
|
+
}
|
|
79
|
+
return newNarrow;
|
|
80
|
+
}
|
|
81
|
+
export function updateSingleNarrow(narrow, name, value) {
|
|
82
|
+
let newNarrow;
|
|
83
|
+
if (name in narrow) {
|
|
84
|
+
if (!narrow[name].has(value)) {
|
|
85
|
+
newNarrow = Object.assign(Object.assign({}, narrow), { [name]: new Set([value]) });
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
const copy = Object.assign({}, narrow);
|
|
89
|
+
delete copy[name];
|
|
90
|
+
newNarrow = copy;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
newNarrow = Object.assign(Object.assign({}, narrow), { [name]: new Set([value]) });
|
|
95
|
+
}
|
|
96
|
+
if (newNarrow[name] && newNarrow[name].size === 0) {
|
|
97
|
+
delete newNarrow[name];
|
|
98
|
+
}
|
|
99
|
+
return newNarrow;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=narrow.js.map
|