@sentecacommerce-theme/lib 0.12.25 → 0.12.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/analytics/Releva/api/query/useRelevaQuery.js +4 -2
- package/dist/cjs/analytics/Releva/api/query/useRelevaQuery.js.map +1 -1
- package/dist/cjs/analytics/Releva/hooks/useRelevaData.js +2 -2
- package/dist/cjs/analytics/Releva/hooks/useRelevaData.js.map +1 -1
- package/dist/cjs/analytics/Releva/useReleva.js +8 -1
- package/dist/cjs/analytics/Releva/useReleva.js.map +1 -1
- package/dist/cjs/cms/api/queries/index.js +16 -0
- package/dist/cjs/cms/api/queries/index.js.map +1 -1
- package/dist/cjs/cms/api/queries/keys.js +15 -1
- package/dist/cjs/cms/api/queries/keys.js.map +1 -1
- package/dist/cjs/cms/api/queries/useCMSContentListQuery.js +64 -0
- package/dist/cjs/cms/api/queries/useCMSContentListQuery.js.map +1 -0
- package/dist/cjs/cms/api/queries/useCMSContentQuery.js +54 -0
- package/dist/cjs/cms/api/queries/useCMSContentQuery.js.map +1 -0
- package/dist/cjs/cms/hooks/index.js +24 -0
- package/dist/cjs/cms/hooks/index.js.map +1 -1
- package/dist/cjs/{hooks/cms-content-hooks/useCmsContent/index.js → cms/hooks/useCmsContent.js} +6 -8
- package/dist/cjs/cms/hooks/useCmsContent.js.map +1 -0
- package/dist/cjs/{hooks/cms-content-hooks/useCmsContentList/index.js → cms/hooks/useCmsContentList.js} +5 -5
- package/dist/cjs/cms/hooks/useCmsContentList.js.map +1 -0
- package/dist/cjs/{hooks/cms-content-hooks/useContentCategoriesMap/index.js → cms/hooks/useContentCategoriesMap.js} +1 -1
- package/dist/cjs/cms/hooks/useContentCategoriesMap.js.map +1 -0
- package/dist/cjs/cms/ssr/fetchPagePaths.js.map +1 -1
- package/dist/cjs/cms/ssr/index.js +16 -0
- package/dist/cjs/cms/ssr/index.js.map +1 -1
- package/dist/cjs/cms/ssr/prefetchCmsContent.js +78 -0
- package/dist/cjs/cms/ssr/prefetchCmsContent.js.map +1 -0
- package/dist/cjs/cms/ssr/prefetchCmsContentList.js +85 -0
- package/dist/cjs/cms/ssr/prefetchCmsContentList.js.map +1 -0
- package/dist/cjs/cms/utils/getCMSContentListFilter.js +16 -0
- package/dist/cjs/cms/utils/getCMSContentListFilter.js.map +1 -0
- package/dist/cjs/cms/utils/index.js +8 -0
- package/dist/cjs/cms/utils/index.js.map +1 -1
- package/dist/cjs/components/OverflowEllipsis/index.js +2 -2
- package/dist/cjs/components/OverflowEllipsis/index.js.map +1 -1
- package/dist/cjs/config/SentecaProvider.js.map +1 -1
- package/dist/cjs/hooks/useAggregateResult/index.js +0 -4
- package/dist/cjs/hooks/useAggregateResult/index.js.map +1 -1
- package/dist/cjs/index.js +0 -16
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/seo/api/ssr/getCanonicalUrl.js +27 -0
- package/dist/cjs/seo/api/ssr/getCanonicalUrl.js.map +1 -0
- package/dist/cjs/seo/api/ssr/index.js +8 -0
- package/dist/cjs/seo/api/ssr/index.js.map +1 -1
- package/dist/cjs/user/api/index.js +8 -0
- package/dist/cjs/user/api/index.js.map +1 -1
- package/dist/cjs/user/api/utils/generateAnonymousToken.js +48 -0
- package/dist/cjs/user/api/utils/generateAnonymousToken.js.map +1 -0
- package/dist/cjs/user/api/utils/index.js +8 -0
- package/dist/cjs/user/api/utils/index.js.map +1 -1
- package/dist/cjs/user/index.js +8 -0
- package/dist/cjs/user/index.js.map +1 -1
- package/dist/esm/analytics/Releva/api/query/useRelevaQuery.js +4 -2
- package/dist/esm/analytics/Releva/api/query/useRelevaQuery.js.map +1 -1
- package/dist/esm/analytics/Releva/hooks/useRelevaData.js +2 -2
- package/dist/esm/analytics/Releva/hooks/useRelevaData.js.map +1 -1
- package/dist/esm/analytics/Releva/useReleva.js +8 -2
- package/dist/esm/analytics/Releva/useReleva.js.map +1 -1
- package/dist/esm/cms/api/queries/index.js +2 -0
- package/dist/esm/cms/api/queries/index.js.map +1 -1
- package/dist/esm/cms/api/queries/keys.js +5 -0
- package/dist/esm/cms/api/queries/keys.js.map +1 -1
- package/dist/esm/cms/api/queries/useCMSContentListQuery.js +31 -0
- package/dist/esm/cms/api/queries/useCMSContentListQuery.js.map +1 -0
- package/dist/esm/cms/api/queries/useCMSContentQuery.js +17 -0
- package/dist/esm/cms/api/queries/useCMSContentQuery.js.map +1 -0
- package/dist/esm/cms/hooks/index.js +3 -0
- package/dist/esm/cms/hooks/index.js.map +1 -1
- package/dist/esm/{hooks/cms-content-hooks/useCmsContent/index.js → cms/hooks/useCmsContent.js} +6 -8
- package/dist/esm/cms/hooks/useCmsContent.js.map +1 -0
- package/dist/esm/{hooks/cms-content-hooks/useCmsContentList/index.js → cms/hooks/useCmsContentList.js} +5 -5
- package/dist/esm/cms/hooks/useCmsContentList.js.map +1 -0
- package/dist/esm/{hooks/cms-content-hooks/useContentCategoriesMap/index.js → cms/hooks/useContentCategoriesMap.js} +1 -1
- package/dist/esm/cms/hooks/useContentCategoriesMap.js.map +1 -0
- package/dist/esm/cms/ssr/fetchPagePaths.js.map +1 -1
- package/dist/esm/cms/ssr/index.js +2 -0
- package/dist/esm/cms/ssr/index.js.map +1 -1
- package/dist/esm/cms/ssr/prefetchCmsContent.js +30 -0
- package/dist/esm/cms/ssr/prefetchCmsContent.js.map +1 -0
- package/dist/esm/cms/ssr/prefetchCmsContentList.js +32 -0
- package/dist/esm/cms/ssr/prefetchCmsContentList.js.map +1 -0
- package/dist/esm/cms/utils/getCMSContentListFilter.js +9 -0
- package/dist/esm/cms/utils/getCMSContentListFilter.js.map +1 -0
- package/dist/esm/cms/utils/index.js +1 -0
- package/dist/esm/cms/utils/index.js.map +1 -1
- package/dist/esm/components/OverflowEllipsis/index.js +2 -2
- package/dist/esm/components/OverflowEllipsis/index.js.map +1 -1
- package/dist/esm/config/SentecaProvider.js.map +1 -1
- package/dist/esm/hooks/useAggregateResult/index.js +0 -2
- package/dist/esm/hooks/useAggregateResult/index.js.map +1 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/seo/api/ssr/getCanonicalUrl.js +18 -0
- package/dist/esm/seo/api/ssr/getCanonicalUrl.js.map +1 -0
- package/dist/esm/seo/api/ssr/index.js +1 -0
- package/dist/esm/seo/api/ssr/index.js.map +1 -1
- package/dist/esm/user/api/index.js +1 -0
- package/dist/esm/user/api/index.js.map +1 -1
- package/dist/esm/user/api/utils/generateAnonymousToken.js +23 -0
- package/dist/esm/user/api/utils/generateAnonymousToken.js.map +1 -0
- package/dist/esm/user/api/utils/index.js +1 -0
- package/dist/esm/user/api/utils/index.js.map +1 -1
- package/dist/esm/user/index.js +1 -0
- package/dist/esm/user/index.js.map +1 -1
- package/dist/types/analytics/Releva/api/query/useRelevaQuery.d.ts +1 -1
- package/dist/types/analytics/Releva/hooks/useRelevaData.d.ts +1 -1
- package/dist/types/cms/api/queries/index.d.ts +2 -0
- package/dist/types/cms/api/queries/keys.d.ts +5 -1
- package/dist/types/cms/api/queries/useCMSContentListQuery.d.ts +15 -0
- package/dist/types/cms/api/queries/useCMSContentQuery.d.ts +1 -0
- package/dist/types/cms/hooks/index.d.ts +3 -0
- package/dist/types/{hooks/cms-content-hooks/useCmsContent/index.d.ts → cms/hooks/useCmsContent.d.ts} +0 -0
- package/dist/types/{hooks/cms-content-hooks/useCmsContentList/index.d.ts → cms/hooks/useCmsContentList.d.ts} +1 -1
- package/dist/types/{hooks/cms-content-hooks/useContentCategoriesMap/index.d.ts → cms/hooks/useContentCategoriesMap.d.ts} +0 -0
- package/dist/types/cms/ssr/fetchPagePaths.d.ts +1 -1
- package/dist/types/cms/ssr/index.d.ts +2 -0
- package/dist/types/cms/ssr/prefetchCmsContent.d.ts +5 -0
- package/dist/types/cms/ssr/prefetchCmsContentList.d.ts +3 -0
- package/dist/types/cms/utils/getCMSContentListFilter.d.ts +1 -0
- package/dist/types/cms/utils/index.d.ts +1 -0
- package/dist/types/components/OverflowEllipsis/index.d.ts +1 -1
- package/dist/types/config/SentecaProvider.d.ts +1 -0
- package/dist/types/hooks/useAggregateResult/index.d.ts +2 -2
- package/dist/types/index.d.ts +0 -2
- package/dist/types/seo/api/ssr/getCanonicalUrl.d.ts +3 -0
- package/dist/types/seo/api/ssr/index.d.ts +1 -0
- package/dist/types/user/api/index.d.ts +1 -0
- package/dist/types/user/api/utils/generateAnonymousToken.d.ts +1 -0
- package/dist/types/user/api/utils/index.d.ts +1 -0
- package/dist/types/user/index.d.ts +1 -0
- package/package.json +3 -3
- package/dist/cjs/api/cmsContentApi/index.js +0 -325
- package/dist/cjs/api/cmsContentApi/index.js.map +0 -1
- package/dist/cjs/hooks/cms-content-hooks/index.js +0 -28
- package/dist/cjs/hooks/cms-content-hooks/index.js.map +0 -1
- package/dist/cjs/hooks/cms-content-hooks/useCmsContent/index.js.map +0 -1
- package/dist/cjs/hooks/cms-content-hooks/useCmsContentList/index.js.map +0 -1
- package/dist/cjs/hooks/cms-content-hooks/useContentCategoriesMap/index.js.map +0 -1
- package/dist/esm/api/cmsContentApi/index.js +0 -161
- package/dist/esm/api/cmsContentApi/index.js.map +0 -1
- package/dist/esm/hooks/cms-content-hooks/index.js +0 -4
- package/dist/esm/hooks/cms-content-hooks/index.js.map +0 -1
- package/dist/esm/hooks/cms-content-hooks/useCmsContent/index.js.map +0 -1
- package/dist/esm/hooks/cms-content-hooks/useCmsContentList/index.js.map +0 -1
- package/dist/esm/hooks/cms-content-hooks/useContentCategoriesMap/index.js.map +0 -1
- package/dist/types/api/cmsContentApi/index.d.ts +0 -37
- package/dist/types/hooks/cms-content-hooks/index.d.ts +0 -3
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/analytics/Releva/useReleva.tsx"],"names":["React","useRouter","v4","uuidv4","Cookies","useProfile","useBoolean","relevaCookie","useRelevaData","createMappedPageData","createMappedProfileData","createMappedOrder","payloadReducer","RelevaContext","createContext","undefined","RelevaProvider","children","router","data","profileData","get","set","initialState","profile","profileIdChanged","sessionId","isFirstSession","profileChanged","page","route","pageType","order","orderId","products","payload","reducePayload","useReducer","isReady","setIsReady","useEffect","off","resetState","type","asPath","delay","setTimeout","on","updateOnListing","items","cat","activePage","activeFilters","clearTimeout","filters","category","onProductPage","item","product","categories","changeProfileData","firstSession","changeBasket","recommenders","banners","pixelData","values","useReleva","context","useContext","Error"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,SAAT,QAA0B,aAA1B;AACA,SAASC,EAAE,IAAIC,MAAf,QAA6B,MAA7B;AACA,OAAOC,OAAP,MAAoB,WAApB;AACA,SAASC,UAAT,EAAqBC,UAArB,
|
1
|
+
{"version":3,"sources":["../../../../src/analytics/Releva/useReleva.tsx"],"names":["React","useRouter","v4","uuidv4","Cookies","useProfile","useBoolean","useConfigState","relevaCookie","useRelevaData","createMappedPageData","createMappedProfileData","createMappedOrder","payloadReducer","RelevaContext","createContext","undefined","RelevaProvider","children","router","data","profileData","get","set","initialState","profile","profileIdChanged","sessionId","isFirstSession","profileChanged","page","route","pageType","order","orderId","products","payload","reducePayload","useReducer","isReady","setIsReady","useEffect","off","resetState","type","asPath","delay","setTimeout","on","updateOnListing","items","cat","activePage","activeFilters","clearTimeout","filters","category","onProductPage","item","product","categories","changeProfileData","firstSession","changeBasket","token","process","env","API_KEY","interfaceKey","recommenders","banners","pixelData","values","useReleva","context","useContext","Error"],"mappings":"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","sourcesContent":["import React from 'react'\nimport { useRouter } from 'next/router'\nimport { v4 as uuidv4 } from 'uuid'\nimport Cookies from 'js-cookie'\nimport { useProfile, useBoolean, useConfigState } from '../../index'\nimport {\n BodyProductDTO,\n BannerType,\n RecommendersType,\n relevaCookie,\n ListingDataType,\n PayloadDTO,\n PixelType,\n} from './types'\n\nimport { useRelevaData } from './hooks'\nimport {\n createMappedPageData,\n createMappedProfileData,\n createMappedOrder,\n payloadReducer,\n} from './utils'\n\ntype RelevaResponse = {\n onProductPage: (item?: BodyProductDTO, category?: string[]) => void\n changeProfileData: () => void\n firstSession: () => void\n changeBasket: () => void\n recommenders: RecommendersType[]\n banners: BannerType[]\n updateOnListing: (props: ListingDataType) => void\n pixelData: PixelType\n}\n\nconst RelevaContext = React.createContext<RelevaResponse | undefined>(undefined)\n\nexport const RelevaProvider = ({ children }: { children: React.ReactNode }) => {\n const router = useRouter()\n const { data: profileData } = useProfile()\n\n if (!Cookies.get(relevaCookie)) {\n Cookies.set(relevaCookie, uuidv4())\n }\n\n const initialState: PayloadDTO = {\n profile: {\n profileIdChanged: false,\n sessionId: '',\n isFirstSession: false,\n profileChanged: false,\n },\n page: {\n route: '',\n pageType: '',\n },\n\n order: {\n orderId: '',\n },\n products: [],\n }\n\n const [payload, reducePayload] = React.useReducer(\n payloadReducer,\n initialState\n )\n\n const [isReady, setIsReady] = useBoolean()\n\n React.useEffect(() => {\n // Reset products on page change\n setIsReady.off()\n\n const resetState: PayloadDTO = {\n profile: createMappedProfileData({\n profileData,\n relevaCookie,\n }),\n page: createMappedPageData({\n router,\n }),\n order: createMappedOrder({}),\n products: [],\n }\n\n reducePayload({ type: 'reset', initialState: resetState })\n }, [router.asPath])\n\n const delay = setTimeout(() => setIsReady.on(), 2000)\n\n const updateOnListing = ({\n items,\n cat,\n activePage,\n activeFilters,\n }: ListingDataType) => {\n clearTimeout(delay)\n\n reducePayload({\n type: 'listing',\n products: items,\n filters: activeFilters,\n activePage,\n category: cat,\n })\n setTimeout(() => setIsReady.on(), 2000)\n }\n\n // Set the product on Product page\n const onProductPage = (item?: BodyProductDTO, category?: string[]) => {\n clearTimeout(delay)\n\n reducePayload({ type: 'product', product: item, categories: category })\n setTimeout(() => setIsReady.on(), 1500)\n }\n\n // On profile data change\n const changeProfileData = () => {\n clearTimeout(delay)\n\n reducePayload({ type: 'changeProfileData' })\n setTimeout(() => setIsReady.on(), 1000)\n }\n\n // On register\n const firstSession = () => {\n clearTimeout(delay)\n\n reducePayload({ type: 'isFirstSession' })\n setTimeout(() => setIsReady.on(), 1000)\n }\n\n // On Log In\n const changeBasket = () => {\n clearTimeout(delay)\n\n reducePayload({ type: 'changeBasket' })\n setTimeout(() => setIsReady.on(), 1000)\n }\n\n const token =\n Cookies.get('token') ?? Cookies.get('anonymousToken') ?? process.env.API_KEY\n\n const { interfaceKey } = useConfigState()\n\n const { recommenders, banners, pixelData } = useRelevaData(\n payload,\n isReady,\n token,\n interfaceKey\n )\n\n const values = {\n onProductPage,\n changeProfileData,\n firstSession,\n changeBasket,\n recommenders,\n banners,\n updateOnListing,\n pixelData,\n }\n return (\n <RelevaContext.Provider value={values}>{children}</RelevaContext.Provider>\n )\n}\n\nexport function useReleva() {\n const context = React.useContext(RelevaContext)\n\n if (context === undefined) {\n throw new Error('useReleva must be used within RelevaProvider')\n }\n\n return context\n}\n"],"file":"useReleva.js"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../../src/cms/api/queries/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAAd;AACA,cAAc,QAAd","sourcesContent":["export * from './useInjectedContentQuery'\nexport * from './keys'"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAAd;AACA,cAAc,QAAd;AACA,cAAc,0BAAd;AACA,cAAc,sBAAd","sourcesContent":["export * from './useInjectedContentQuery'\nexport * from './keys'\nexport * from './useCMSContentListQuery'\nexport * from './useCMSContentQuery'"],"file":"index.js"}
|
@@ -2,5 +2,10 @@ export var cmsQueriesEnum;
|
|
2
2
|
|
3
3
|
(function (cmsQueriesEnum) {
|
4
4
|
cmsQueriesEnum["useInjectedContentQueryKey"] = "injected-content";
|
5
|
+
cmsQueriesEnum["useContent"] = "cms-content";
|
6
|
+
cmsQueriesEnum["useContentList"] = "cms-content-list";
|
5
7
|
})(cmsQueriesEnum || (cmsQueriesEnum = {}));
|
8
|
+
|
9
|
+
export var getContentKey = key => "[" + cmsQueriesEnum.useContent + "]: " + key;
|
10
|
+
export var getContentListKey = (page, type, tags, enabled) => ['[cms-content-list]: ', page, type, enabled, ...(tags || [])];
|
6
11
|
//# sourceMappingURL=keys.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../../src/cms/api/queries/keys.ts"],"names":["cmsQueriesEnum"],"mappings":"AAAA,WAAYA,cAAZ;;WAAYA,c;AAAAA,EAAAA,c;GAAAA,c,KAAAA,c","sourcesContent":["export enum cmsQueriesEnum {\n useInjectedContentQueryKey = 'injected-content',\n}"],"file":"keys.js"}
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/keys.ts"],"names":["cmsQueriesEnum","getContentKey","key","useContent","getContentListKey","page","type","tags","enabled"],"mappings":"AAAA,WAAYA,cAAZ;;WAAYA,c;AAAAA,EAAAA,c;AAAAA,EAAAA,c;AAAAA,EAAAA,c;GAAAA,c,KAAAA,c;;AAMZ,OAAO,IAAMC,aAAa,GAAIC,GAAD,UACvBF,cAAc,CAACG,UADQ,WACQD,GAD9B;AAGP,OAAO,IAAME,iBAAiB,GAAG,CAC/BC,IAD+B,EAE/BC,IAF+B,EAG/BC,IAH+B,EAI/BC,OAJ+B,KAK5B,CAAC,sBAAD,EAAyBH,IAAzB,EAA+BC,IAA/B,EAAqCE,OAArC,EAA8C,IAAID,IAAI,IAAI,EAAZ,CAA9C,CALE","sourcesContent":["export enum cmsQueriesEnum {\n useInjectedContentQueryKey = 'injected-content',\n useContent = 'cms-content',\n useContentList = 'cms-content-list',\n}\n\nexport const getContentKey = (key?: string) =>\n `[${cmsQueriesEnum.useContent}]: ${key}`\n\nexport const getContentListKey = (\n page: number,\n type?: string,\n tags?: string[],\n enabled?: boolean\n) => ['[cms-content-list]: ', page, type, enabled, ...(tags || [])]\n"],"file":"keys.js"}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
3
|
+
import { ContentsFilter } from '@sentecacommerce/sdk';
|
4
|
+
import { useRouter } from 'next/router';
|
5
|
+
import { useQuery } from 'react-query';
|
6
|
+
import { getCMSContentListFilter } from '../../utils/getCMSContentListFilter';
|
7
|
+
import { getContentListKey } from './keys';
|
8
|
+
export var useCMSContentListQuery = function useCMSContentListQuery(config, enabled) {
|
9
|
+
var _router$query;
|
10
|
+
|
11
|
+
if (enabled === void 0) {
|
12
|
+
enabled = true;
|
13
|
+
}
|
14
|
+
|
15
|
+
var filter = getCMSContentListFilter(config == null ? void 0 : config.type, config == null ? void 0 : config.tags);
|
16
|
+
var router = useRouter();
|
17
|
+
var page = +((router == null ? void 0 : (_router$query = router.query) == null ? void 0 : _router$query.page) || '1');
|
18
|
+
return useQuery(getContentListKey(page, config == null ? void 0 : config.type, config == null ? void 0 : config.tags), /*#__PURE__*/_asyncToGenerator(function* () {
|
19
|
+
return yield ContentsFilter(_extends({}, config || {}, {
|
20
|
+
filter,
|
21
|
+
offset: page * config.limit - config.limit
|
22
|
+
}));
|
23
|
+
}), {
|
24
|
+
refetchOnMount: false,
|
25
|
+
refetchOnWindowFocus: false,
|
26
|
+
staleTime: 30000,
|
27
|
+
retry: false,
|
28
|
+
enabled
|
29
|
+
});
|
30
|
+
};
|
31
|
+
//# sourceMappingURL=useCMSContentListQuery.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/useCMSContentListQuery.ts"],"names":["ContentsFilter","useRouter","useQuery","getCMSContentListFilter","getContentListKey","useCMSContentListQuery","config","enabled","filter","type","tags","router","page","query","offset","limit","refetchOnMount","refetchOnWindowFocus","staleTime","retry"],"mappings":";;AAAA,SAASA,cAAT,QAA+B,sBAA/B;AACA,SAASC,SAAT,QAA0B,aAA1B;AACA,SAASC,QAAT,QAAyB,aAAzB;AACA,SAASC,uBAAT,QAAwC,qCAAxC;AACA,SAASC,iBAAT,QAAkC,QAAlC;AAkBA,OAAO,IAAMC,sBAAsB,GAAG,SAAzBA,sBAAyB,CACpCC,MADoC,EAEpCC,OAFoC,EAGjC;AAAA;;AAAA,MADHA,OACG;AADHA,IAAAA,OACG,GADO,IACP;AAAA;;AACH,MAAMC,MAAM,GAAGL,uBAAuB,CAACG,MAAD,oBAACA,MAAM,CAAEG,IAAT,EAAeH,MAAf,oBAAeA,MAAM,CAAEI,IAAvB,CAAtC;AACA,MAAMC,MAAM,GAAGV,SAAS,EAAxB;AAEA,MAAMW,IAAI,GAAG,EAAE,CAACD,MAAD,qCAACA,MAAM,CAAEE,KAAT,qBAAC,cAAeD,IAAhB,KAAmC,GAArC,CAAb;AAEA,SAAOV,QAAQ,CACbE,iBAAiB,CAACQ,IAAD,EAAON,MAAP,oBAAOA,MAAM,CAAEG,IAAf,EAAqBH,MAArB,oBAAqBA,MAAM,CAAEI,IAA7B,CADJ,iCAEb,aAAY;AACV,iBAAaV,cAAc,cACrBM,MAAM,IAAI,EADW;AAEzBE,MAAAA,MAFyB;AAGzBM,MAAAA,MAAM,EAAEF,IAAI,GAAGN,MAAM,CAACS,KAAd,GAAsBT,MAAM,CAACS;AAHZ,OAA3B;AAKD,GARY,GASb;AACEC,IAAAA,cAAc,EAAE,KADlB;AAEEC,IAAAA,oBAAoB,EAAE,KAFxB;AAGEC,IAAAA,SAAS,EAAE,KAHb;AAIEC,IAAAA,KAAK,EAAE,KAJT;AAKEZ,IAAAA;AALF,GATa,CAAf;AAiBD,CA1BM","sourcesContent":["import { ContentsFilter } from '@sentecacommerce/sdk'\nimport { useRouter } from 'next/router'\nimport { useQuery } from 'react-query'\nimport { getCMSContentListFilter } from '../../utils/getCMSContentListFilter'\nimport { getContentListKey } from './keys'\n\nexport type CmsListConfigType = {\n storeKey?: string\n currencyCode?: string\n languageCode?: string\n priceListKey?: string\n time?: number\n merchantKey?: string\n expand?: string\n project?: string\n sort?: string\n limit: number\n\n tags?: string[]\n type?: string\n}\n\nexport const useCMSContentListQuery = (\n config: CmsListConfigType,\n enabled = true\n) => {\n const filter = getCMSContentListFilter(config?.type, config?.tags)\n const router = useRouter()\n\n const page = +((router?.query?.page as string) || '1')\n\n return useQuery(\n getContentListKey(page, config?.type, config?.tags),\n async () => {\n return await ContentsFilter({\n ...(config || {}),\n filter,\n offset: page * config.limit - config.limit,\n })\n },\n {\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n staleTime: 30000,\n retry: false,\n enabled,\n }\n )\n}\n\n"],"file":"useCMSContentListQuery.js"}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
2
|
+
import { ContentsGetByKey } from '@sentecacommerce/sdk';
|
3
|
+
import { useQuery } from 'react-query';
|
4
|
+
import { getContentKey } from './keys';
|
5
|
+
export var useCMSContentQuery = key => {
|
6
|
+
return useQuery(getContentKey(key), /*#__PURE__*/_asyncToGenerator(function* () {
|
7
|
+
if (!key) return;
|
8
|
+
return yield ContentsGetByKey(key);
|
9
|
+
}), {
|
10
|
+
refetchOnMount: false,
|
11
|
+
refetchOnWindowFocus: false,
|
12
|
+
staleTime: 30000,
|
13
|
+
enabled: Boolean(key),
|
14
|
+
retry: false
|
15
|
+
});
|
16
|
+
};
|
17
|
+
//# sourceMappingURL=useCMSContentQuery.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/cms/api/queries/useCMSContentQuery.ts"],"names":["ContentsGetByKey","useQuery","getContentKey","useCMSContentQuery","key","refetchOnMount","refetchOnWindowFocus","staleTime","enabled","Boolean","retry"],"mappings":";AAAA,SAASA,gBAAT,QAAiC,sBAAjC;AACA,SAASC,QAAT,QAAyB,aAAzB;AACA,SAASC,aAAT,QAA8B,QAA9B;AAEA,OAAO,IAAMC,kBAAkB,GAAIC,GAAD,IAAkB;AAClD,SAAOH,QAAQ,CACbC,aAAa,CAACE,GAAD,CADA,iCAEb,aAAY;AACV,QAAI,CAACA,GAAL,EAAU;AAEV,iBAAaJ,gBAAgB,CAACI,GAAD,CAA7B;AACD,GANY,GAOb;AACEC,IAAAA,cAAc,EAAE,KADlB;AAEEC,IAAAA,oBAAoB,EAAE,KAFxB;AAGEC,IAAAA,SAAS,EAAE,KAHb;AAIEC,IAAAA,OAAO,EAAEC,OAAO,CAACL,GAAD,CAJlB;AAKEM,IAAAA,KAAK,EAAE;AALT,GAPa,CAAf;AAeD,CAhBM","sourcesContent":["import { ContentsGetByKey } from '@sentecacommerce/sdk'\nimport { useQuery } from 'react-query'\nimport { getContentKey } from './keys'\n\nexport const useCMSContentQuery = (key?: string) => {\n return useQuery(\n getContentKey(key),\n async () => {\n if (!key) return\n\n return await ContentsGetByKey(key)\n },\n {\n refetchOnMount: false,\n refetchOnWindowFocus: false,\n staleTime: 30000,\n enabled: Boolean(key),\n retry: false,\n }\n )\n}\n"],"file":"useCMSContentQuery.js"}
|
@@ -1,4 +1,7 @@
|
|
1
1
|
export * from './useProductInjectedContent';
|
2
2
|
export * from './useListingInjectedContent';
|
3
3
|
export * from './useInjectedContentContext';
|
4
|
+
export * from './useCmsContent';
|
5
|
+
export * from './useCmsContentList';
|
6
|
+
export * from './useContentCategoriesMap';
|
4
7
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/cms/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAAd;AACA,cAAc,6BAAd;AACA,cAAc,6BAAd","sourcesContent":["export * from './useProductInjectedContent'\nexport * from './useListingInjectedContent'\nexport * from './useInjectedContentContext'\n"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAAd;AACA,cAAc,6BAAd;AACA,cAAc,6BAAd;AACA,cAAc,iBAAd;AACA,cAAc,qBAAd;AACA,cAAc,2BAAd","sourcesContent":["export * from './useProductInjectedContent'\nexport * from './useListingInjectedContent'\nexport * from './useInjectedContentContext'\nexport * from './useCmsContent'\nexport * from './useCmsContentList'\nexport * from './useContentCategoriesMap'\n"],"file":"index.js"}
|
package/dist/esm/{hooks/cms-content-hooks/useCmsContent/index.js → cms/hooks/useCmsContent.js}
RENAMED
@@ -1,20 +1,18 @@
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
3
|
-
import {
|
4
|
-
import { getTranslatableField } from '
|
3
|
+
import { useCMSContentQuery } from '../api';
|
4
|
+
import { getTranslatableField } from '../../utils';
|
5
5
|
export function useCmsContent(_ref) {
|
6
6
|
var {
|
7
7
|
data,
|
8
8
|
key
|
9
9
|
} = _ref;
|
10
10
|
|
11
|
-
var
|
12
|
-
key
|
13
|
-
}),
|
11
|
+
var _useCMSContentQuery = useCMSContentQuery(key),
|
14
12
|
{
|
15
13
|
data: queryData
|
16
|
-
} =
|
17
|
-
rest = _objectWithoutPropertiesLoose(
|
14
|
+
} = _useCMSContentQuery,
|
15
|
+
rest = _objectWithoutPropertiesLoose(_useCMSContentQuery, ["data"]);
|
18
16
|
|
19
17
|
var content = data || queryData;
|
20
18
|
var contentData = getTranslatableField(content == null ? void 0 : content.data);
|
@@ -27,4 +25,4 @@ export function useCmsContent(_ref) {
|
|
27
25
|
}
|
28
26
|
}, rest);
|
29
27
|
}
|
30
|
-
//# sourceMappingURL=
|
28
|
+
//# sourceMappingURL=useCmsContent.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsContent.ts"],"names":["useCMSContentQuery","getTranslatableField","useCmsContent","data","key","queryData","rest","content","contentData","typeName","tags","id","_id"],"mappings":";;AACA,SAASA,kBAAT,QAAmC,QAAnC;AACA,SAASC,oBAAT,QAAqC,aAArC;AAEA,OAAO,SAASC,aAAT,OAMJ;AAAA,MAN8B;AAC/BC,IAAAA,IAD+B;AAE/BC,IAAAA;AAF+B,GAM9B;;AACD,4BAAqCJ,kBAAkB,CAACI,GAAD,CAAvD;AAAA,MAAM;AAAED,IAAAA,IAAI,EAAEE;AAAR,GAAN;AAAA,MAA4BC,IAA5B;;AAEA,MAAMC,OAAO,GAAGJ,IAAI,IAAIE,SAAxB;AAEA,MAAMG,WAAW,GAAGP,oBAAoB,CAACM,OAAD,oBAACA,OAAO,CAAEJ,IAAV,CAAxC;AAEA;AACEA,IAAAA,IAAI,EAAEI,OAAO,IAAI;AACfE,MAAAA,QAAQ,EAAEF,OAAO,CAACE,QADH;AAEfC,MAAAA,IAAI,EAAEH,OAAO,CAACG,IAFC;AAGfC,MAAAA,EAAE,EAAEJ,OAAO,CAACK,GAHG;AAIfL,MAAAA,OAAO,EAAEC;AAJM;AADnB,KAOKF,IAPL;AASD","sourcesContent":["import { CmsContentDTO } from '@sentecacommerce/sdk'\nimport { useCMSContentQuery } from '../api'\nimport { getTranslatableField } from '../../utils'\n\nexport function useCmsContent<T>({\n data,\n key,\n}: {\n key?: string\n data?: CmsContentDTO\n}) {\n const { data: queryData, ...rest } = useCMSContentQuery(key)\n\n const content = data || queryData\n\n const contentData = getTranslatableField(content?.data) as unknown\n\n return {\n data: content && {\n typeName: content.typeName,\n tags: content.tags,\n id: content._id,\n content: contentData as T,\n },\n ...rest,\n }\n}\n"],"file":"useCmsContent.js"}
|
@@ -2,17 +2,17 @@ import _extends from "@babel/runtime/helpers/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
3
3
|
import { useRouter } from 'next/router';
|
4
4
|
import { useMemo } from 'react';
|
5
|
-
import {
|
5
|
+
import { useCMSContentListQuery } from '../api';
|
6
6
|
export var useCmsContentList = function useCmsContentList(config, enabled) {
|
7
7
|
if (enabled === void 0) {
|
8
8
|
enabled = true;
|
9
9
|
}
|
10
10
|
|
11
|
-
var
|
11
|
+
var _useCMSContentListQue = useCMSContentListQuery(config, enabled),
|
12
12
|
{
|
13
13
|
data
|
14
|
-
} =
|
15
|
-
rest = _objectWithoutPropertiesLoose(
|
14
|
+
} = _useCMSContentListQue,
|
15
|
+
rest = _objectWithoutPropertiesLoose(_useCMSContentListQue, ["data"]);
|
16
16
|
|
17
17
|
var router = useRouter();
|
18
18
|
return useMemo(() => {
|
@@ -50,4 +50,4 @@ export var useCmsContentList = function useCmsContentList(config, enabled) {
|
|
50
50
|
}, rest);
|
51
51
|
}, [data, rest.isError, rest.isLoading, rest.isFetching, rest.isStale, rest.isSuccess, rest.isInitialData, rest.isIdle]);
|
52
52
|
};
|
53
|
-
//# sourceMappingURL=
|
53
|
+
//# sourceMappingURL=useCmsContentList.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useCmsContentList.ts"],"names":["useRouter","useMemo","useCMSContentListQuery","useCmsContentList","config","enabled","data","rest","router","lastPage","Math","ceil","total","limit","currentPage","offset","goToPage","page","Error","push","pathname","query","undefined","shallow","results","canGoToNextPage","canGoToPrevPage","isError","isLoading","isFetching","isStale","isSuccess","isInitialData","isIdle"],"mappings":";;AAAA,SAASA,SAAT,QAA0B,aAA1B;AACA,SAASC,OAAT,QAAwB,OAAxB;AACA,SAASC,sBAAT,QAA0D,QAA1D;AAEA,OAAO,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CAC/BC,MAD+B,EAE/BC,OAF+B,EAG5B;AAAA,MADHA,OACG;AADHA,IAAAA,OACG,GADO,IACP;AAAA;;AACH,8BAA0BH,sBAAsB,CAACE,MAAD,EAASC,OAAT,CAAhD;AAAA,MAAM;AAAEC,IAAAA;AAAF,GAAN;AAAA,MAAiBC,IAAjB;;AACA,MAAMC,MAAM,GAAGR,SAAS,EAAxB;AAEA,SAAOC,OAAO,CAAC,MAAM;AACnB,QAAI,CAACK,IAAL,EAAW;AACT;AACEA,QAAAA,IAAI,EAAE;AADR,SAEKC,IAFL;AAID;;AAED,QAAME,QAAQ,GAAGC,IAAI,CAACC,IAAL,CAAUL,IAAI,CAACM,KAAL,GAAaN,IAAI,CAACO,KAA5B,CAAjB;AACA,QAAMC,WAAW,GAAGJ,IAAI,CAACC,IAAL,CAAUL,IAAI,CAACS,MAAL,GAAcT,IAAI,CAACO,KAA7B,IAAsC,CAA1D;;AAEA,QAAMG,QAAQ,GAAIC,IAAD,IAAkB;AACjC,UAAIA,IAAI,GAAGR,QAAX,EACE,MAAM,IAAIS,KAAJ,YACKD,IADL,uCAC2CR,QAD3C,CAAN;AAIF,UAAIQ,IAAI,GAAG,CAAX,EAAc,MAAM,IAAIC,KAAJ,YAAmBD,IAAnB,mBAAN;AAEdT,MAAAA,MAAM,CAACW,IAAP,CACE;AACEC,QAAAA,QAAQ,EAAEZ,MAAM,CAACY,QADnB;AAEEC,QAAAA,KAAK,eACAb,MAAM,CAACa,KADP;AAEHJ,UAAAA;AAFG;AAFP,OADF,EAQEK,SARF,EASE;AAAEC,QAAAA,OAAO,EAAE;AAAX,OATF;AAWD,KAnBD;;AAoBA;AACEjB,MAAAA,IAAI,EAAE;AACJkB,QAAAA,OAAO,EAAElB,IAAI,CAACkB,OADV;AAEJf,QAAAA,QAFI;AAGJK,QAAAA,WAHI;AAIJE,QAAAA,QAJI;AAKJS,QAAAA,eAAe,EAAEX,WAAW,GAAGL,QAL3B;AAMJiB,QAAAA,eAAe,EAAEZ,WAAW,GAAG;AAN3B;AADR,OASKP,IATL;AAWD,GA1Ca,EA0CX,CACDD,IADC,EAEDC,IAAI,CAACoB,OAFJ,EAGDpB,IAAI,CAACqB,SAHJ,EAIDrB,IAAI,CAACsB,UAJJ,EAKDtB,IAAI,CAACuB,OALJ,EAMDvB,IAAI,CAACwB,SANJ,EAODxB,IAAI,CAACyB,aAPJ,EAQDzB,IAAI,CAAC0B,MARJ,CA1CW,CAAd;AAoDD,CA3DM","sourcesContent":["import { useRouter } from 'next/router'\nimport { useMemo } from 'react'\nimport { useCMSContentListQuery, CmsListConfigType } from '../api'\n\nexport const useCmsContentList = (\n config: CmsListConfigType,\n enabled = true\n) => {\n const { data, ...rest } = useCMSContentListQuery(config, enabled)\n const router = useRouter()\n\n return useMemo(() => {\n if (!data) {\n return {\n data: null,\n ...rest,\n }\n }\n\n const lastPage = Math.ceil(data.total / data.limit)\n const currentPage = Math.ceil(data.offset / data.limit) + 1\n\n const goToPage = (page: number) => {\n if (page > lastPage)\n throw new Error(\n `Page (${page}) is invalid. The last page is ${lastPage}`\n )\n\n if (page < 1) throw new Error(`Page (${page}) is invalid.`)\n\n router.push(\n {\n pathname: router.pathname,\n query: {\n ...router.query,\n page,\n },\n },\n undefined,\n { shallow: true }\n )\n }\n return {\n data: {\n results: data.results,\n lastPage,\n currentPage,\n goToPage,\n canGoToNextPage: currentPage < lastPage,\n canGoToPrevPage: currentPage > 1,\n },\n ...rest,\n }\n }, [\n data,\n rest.isError,\n rest.isLoading,\n rest.isFetching,\n rest.isStale,\n rest.isSuccess,\n rest.isInitialData,\n rest.isIdle,\n ])\n}\n"],"file":"useCmsContentList.js"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/hooks/useContentCategoriesMap.ts"],"names":["useMemo","useContentCategoriesMap","categories","categoriesMap","reduce","map","slug","data"],"mappings":";;;AAAA;AACA,SAASA,OAAT,QAAwB,OAAxB;AAOA,OAAO,SAASC,uBAAT,CAAoCC,UAApC,EAAuE;AAC5E,SAAOF,OAAO,CAAC,MAAM;AACnB,QAAMG,aAAa,GAAGD,UAAU,CAACE,MAAX,CAAkB,CAACC,GAAD,WAA4B;AAAA,UAAtB;AAAEC,QAAAA;AAAF,OAAsB;AAAA,UAAXC,IAAW;;AAClE,0BACKF,GADL;AAEE,SAACC,IAAD,GAAQC;AAFV;AAID,KALqB,EAKnB,EALmB,CAAtB;AAMA,WAAOJ,aAAP;AACD,GARa,EAQX,CAACD,UAAD,CARW,CAAd;AASD","sourcesContent":["/* eslint-disable react-hooks/rules-of-hooks */\nimport { useMemo } from 'react'\n\nexport type BlogCategoryType<T> = {\n tag: string\n slug: string\n} & T\n\nexport function useContentCategoriesMap<T>(categories: BlogCategoryType<T>[]) {\n return useMemo(() => {\n const categoriesMap = categories.reduce((map, { slug, ...data }) => {\n return {\n ...map,\n [slug]: data,\n }\n }, {})\n return categoriesMap\n }, [categories])\n}\n"],"file":"useContentCategoriesMap.js"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/cms/ssr/fetchPagePaths.ts"],"names":["ThemeGetVersion","fetchPagePaths","themeKey","version","exceptions","excludePagesWithoutSlash","excludeSlugPath","data","catch","e","console","error","message","pages","pagePaths","filter","page","name","includes","map"],"mappings":";AAAA,SAASA,eAAT,QAAgC,sBAAhC;AAEA,gBAAsBC,cAAtB;AAAA;AAAA;;;sCAAO,WACLC,QADK,EAELC,OAFK,EAGLC,UAHK,EAILC,wBAJK,EAKLC,eALK,EAML;AAAA,QAFAD,wBAEA;AAFAA,MAAAA,wBAEA,GAF2B,KAE3B;AAAA;;AAAA,QADAC,eACA;AADAA,MAAAA,eACA,GADkB,IAClB;AAAA;;AACA,QAAMC,IAAI,SAASP,eAAe,CAACE,QAAD,EAAWC,OAAX,CAAf,CAAmCK,KAAnC,CAA0CC,CAAD,IAAO;AACjEC,MAAAA,OAAO,CAACC,KAAR,CAAc,wBAAd,EAAwCF,CAAxC,oBAAwCA,CAAC,CAAEG,OAA3C;AACA,aAAO,IAAP;AACD,KAHkB,CAAnB;AAKA,QAAI,CAACL,IAAD,IAAS,CAACA,IAAI,CAACM,KAAnB,EAA0B,OAAO,EAAP;AAE1B,QAAMC,SAAS,GAAGP,IAAI,CAACM,KAAL,CACfE,MADe,CACPC,IAAD,IAAU;AAChB,UAAIV,eAAe,IAAIU,IAAI,CAACC,IAAL,CAAUC,QAAV,CAAmB,QAAnB,CAAvB,EAAqD,OAAO,KAAP;AAErD,UAAIb,wBAAwB,IAAIW,IAAI,CAACC,IAAL,CAAU,CAAV,MAAiB,GAAjD,EAAsD,OAAO,KAAP;AAEtD,aAAO,EAACb,UAAD,YAACA,UAAU,CAAGY,IAAI,CAACC,IAAR,CAAX,CAAP;AACD,KAPe,EAQfE,GARe,CAQVH,IAAD,IAAUA,IAAI,CAACC,IARJ,CAAlB;AAUA,WAAOH,SAAP;AACD,G","sourcesContent":["import { ThemeGetVersion } from '@sentecacommerce/sdk'\n\nexport async function fetchPagePaths(\n themeKey: string,\n version: string,\n exceptions?: { [key: string]: true },\n excludePagesWithoutSlash = false,\n excludeSlugPath = true\n) {\n const data = await ThemeGetVersion(themeKey, version).catch((e) => {\n console.error('Error Fetching Theme: ', e?.message)\n return null\n })\n\n if (!data || !data.pages) return []\n\n const pagePaths = data.pages\n .filter((page) => {\n if (excludeSlugPath && page.name.includes('[slug]')) return false\n\n if (excludePagesWithoutSlash && page.name[0] !== '/') return false\n\n return !exceptions?.[page.name]\n })\n .map((page) => page.name)\n\n return pagePaths\n}\n"],"file":"fetchPagePaths.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/cms/ssr/fetchPagePaths.ts"],"names":["ThemeGetVersion","fetchPagePaths","themeKey","version","exceptions","excludePagesWithoutSlash","excludeSlugPath","data","catch","e","console","error","message","pages","pagePaths","filter","page","name","includes","map"],"mappings":";AAAA,SAASA,eAAT,QAAgC,sBAAhC;AAEA,gBAAsBC,cAAtB;AAAA;AAAA;;;sCAAO,WACLC,QADK,EAELC,OAFK,EAGLC,UAHK,EAILC,wBAJK,EAKLC,eALK,EAML;AAAA,QAFAD,wBAEA;AAFAA,MAAAA,wBAEA,GAF2B,KAE3B;AAAA;;AAAA,QADAC,eACA;AADAA,MAAAA,eACA,GADkB,IAClB;AAAA;;AACA,QAAMC,IAAI,SAASP,eAAe,CAACE,QAAD,EAAWC,OAAX,CAAf,CAAmCK,KAAnC,CAA0CC,CAAD,IAAO;AACjEC,MAAAA,OAAO,CAACC,KAAR,CAAc,wBAAd,EAAwCF,CAAxC,oBAAwCA,CAAC,CAAEG,OAA3C;AACA,aAAO,IAAP;AACD,KAHkB,CAAnB;AAKA,QAAI,CAACL,IAAD,IAAS,CAACA,IAAI,CAACM,KAAnB,EAA0B,OAAO,EAAP;AAE1B,QAAMC,SAAS,GAAGP,IAAI,CAACM,KAAL,CACfE,MADe,CACPC,IAAD,IAAU;AAChB,UAAIV,eAAe,IAAIU,IAAI,CAACC,IAAL,CAAUC,QAAV,CAAmB,QAAnB,CAAvB,EAAqD,OAAO,KAAP;AAErD,UAAIb,wBAAwB,IAAIW,IAAI,CAACC,IAAL,CAAU,CAAV,MAAiB,GAAjD,EAAsD,OAAO,KAAP;AAEtD,aAAO,EAACb,UAAD,YAACA,UAAU,CAAGY,IAAI,CAACC,IAAR,CAAX,CAAP;AACD,KAPe,EAQfE,GARe,CAQVH,IAAD,IAAUA,IAAI,CAACC,IARJ,CAAlB;AAUA,WAAOH,SAAP;AACD,G","sourcesContent":["import { ThemeGetVersion } from '@sentecacommerce/sdk'\n\nexport async function fetchPagePaths(\n themeKey: string,\n version: string,\n exceptions?: { [key: string]: true },\n excludePagesWithoutSlash = false,\n excludeSlugPath = true\n) {\n const data = await ThemeGetVersion(themeKey, version).catch((e) => {\n console.error('Error Fetching Theme: ', e?.message)\n return null\n })\n\n if (!data || !data.pages) return []\n\n const pagePaths = data.pages\n .filter((page) => {\n if (excludeSlugPath && page.name.includes('[slug]')) return false\n\n if (excludePagesWithoutSlash && page.name[0] !== '/') return false\n\n return !exceptions?.[page.name]\n })\n .map((page) => page.name)\n\n return pagePaths as string[]\n}\n"],"file":"fetchPagePaths.js"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/cms/ssr/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAAd;AACA,cAAc,mBAAd;AACA,cAAc,kBAAd","sourcesContent":["export * from './prefetchInjectedContent'\nexport * from './prefetchCMSPage'\nexport * from './fetchPagePaths'"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/cms/ssr/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAAd;AACA,cAAc,mBAAd;AACA,cAAc,kBAAd;AACA,cAAc,0BAAd;AACA,cAAc,sBAAd","sourcesContent":["export * from './prefetchInjectedContent'\nexport * from './prefetchCMSPage'\nexport * from './fetchPagePaths'\nexport * from './prefetchCmsContentList'\nexport * from './prefetchCmsContent'"],"file":"index.js"}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
2
|
+
import { ContentsGetByKey } from '@sentecacommerce/sdk';
|
3
|
+
import { getContentKey } from '../api';
|
4
|
+
export var prefetchCmsContent = /*#__PURE__*/function () {
|
5
|
+
var _ref2 = _asyncToGenerator(function* (_ref) {
|
6
|
+
var {
|
7
|
+
queryCache,
|
8
|
+
key
|
9
|
+
} = _ref;
|
10
|
+
var isFound = true;
|
11
|
+
yield queryCache.prefetchQuery(getContentKey(key), /*#__PURE__*/_asyncToGenerator(function* () {
|
12
|
+
var data = yield ContentsGetByKey(key).catch(() => null);
|
13
|
+
|
14
|
+
if (!data) {
|
15
|
+
isFound = false;
|
16
|
+
return null;
|
17
|
+
}
|
18
|
+
|
19
|
+
return data;
|
20
|
+
}), {
|
21
|
+
staleTime: 30000
|
22
|
+
});
|
23
|
+
return isFound;
|
24
|
+
});
|
25
|
+
|
26
|
+
return function prefetchCmsContent(_x) {
|
27
|
+
return _ref2.apply(this, arguments);
|
28
|
+
};
|
29
|
+
}();
|
30
|
+
//# sourceMappingURL=prefetchCmsContent.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/ssr/prefetchCmsContent.ts"],"names":["ContentsGetByKey","getContentKey","prefetchCmsContent","queryCache","key","isFound","prefetchQuery","data","catch","staleTime"],"mappings":";AAAA,SAASA,gBAAT,QAAiC,sBAAjC;AAEA,SAASC,aAAT,QAA8B,QAA9B;AAEA,OAAO,IAAMC,kBAAkB;AAAA,gCAAG,iBAM5B;AAAA,QANmC;AACvCC,MAAAA,UADuC;AAEvCC,MAAAA;AAFuC,KAMnC;AACJ,QAAIC,OAAO,GAAG,IAAd;AAEA,UAAMF,UAAU,CAACG,aAAX,CACJL,aAAa,CAACG,GAAD,CADT,iCAEJ,aAAY;AACV,UAAMG,IAAI,SAASP,gBAAgB,CAACI,GAAD,CAAhB,CAAsBI,KAAtB,CAA4B,MAAM,IAAlC,CAAnB;;AAEA,UAAI,CAACD,IAAL,EAAW;AACTF,QAAAA,OAAO,GAAG,KAAV;AACA,eAAO,IAAP;AACD;;AAED,aAAOE,IAAP;AACD,KAXG,GAYJ;AAAEE,MAAAA,SAAS,EAAE;AAAb,KAZI,CAAN;AAeA,WAAOJ,OAAP;AACD,GAzB8B;;AAAA,kBAAlBH,kBAAkB;AAAA;AAAA;AAAA,GAAxB","sourcesContent":["import { ContentsGetByKey } from '@sentecacommerce/sdk'\nimport type { QueryCache } from 'react-query'\nimport { getContentKey } from '../api'\n\nexport const prefetchCmsContent = async ({\n queryCache,\n key,\n}: {\n queryCache: QueryCache\n key: string\n}) => {\n let isFound = true\n\n await queryCache.prefetchQuery(\n getContentKey(key),\n async () => {\n const data = await ContentsGetByKey(key).catch(() => null)\n\n if (!data) {\n isFound = false\n return null\n }\n\n return data\n },\n { staleTime: 30000 }\n )\n\n return isFound\n}\n"],"file":"prefetchCmsContent.js"}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
3
|
+
import { ContentsFilter } from '@sentecacommerce/sdk';
|
4
|
+
import { getCMSContentListFilter } from '../utils';
|
5
|
+
import { getContentListKey } from '../api';
|
6
|
+
export var prefetchCmsContentList = /*#__PURE__*/function () {
|
7
|
+
var _ref = _asyncToGenerator(function* (queryCache, config, page) {
|
8
|
+
var filter = getCMSContentListFilter(config == null ? void 0 : config.type, config == null ? void 0 : config.tags);
|
9
|
+
var isFound = true;
|
10
|
+
yield queryCache.prefetchQuery(getContentListKey(page, config == null ? void 0 : config.type, config == null ? void 0 : config.tags), /*#__PURE__*/_asyncToGenerator(function* () {
|
11
|
+
var data = yield ContentsFilter(_extends({}, config || {}, {
|
12
|
+
filter,
|
13
|
+
offset: page * config.limit - config.limit
|
14
|
+
})).catch(() => null);
|
15
|
+
|
16
|
+
if (!(data != null && data.results.length)) {
|
17
|
+
isFound = false;
|
18
|
+
return null;
|
19
|
+
}
|
20
|
+
|
21
|
+
return data;
|
22
|
+
}), {
|
23
|
+
staleTime: 30000
|
24
|
+
});
|
25
|
+
return isFound;
|
26
|
+
});
|
27
|
+
|
28
|
+
return function prefetchCmsContentList(_x, _x2, _x3) {
|
29
|
+
return _ref.apply(this, arguments);
|
30
|
+
};
|
31
|
+
}();
|
32
|
+
//# sourceMappingURL=prefetchCmsContentList.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/ssr/prefetchCmsContentList.ts"],"names":["ContentsFilter","getCMSContentListFilter","getContentListKey","prefetchCmsContentList","queryCache","config","page","filter","type","tags","isFound","prefetchQuery","data","offset","limit","catch","results","length","staleTime"],"mappings":";;AAAA,SAASA,cAAT,QAA+B,sBAA/B;AACA,SAASC,uBAAT,QAAwC,UAAxC;AACA,SAASC,iBAAT,QAAqD,QAArD;AAGA,OAAO,IAAMC,sBAAsB;AAAA,+BAAG,WACpCC,UADoC,EAEpCC,MAFoC,EAGpCC,IAHoC,EAIjC;AACH,QAAMC,MAAM,GAAGN,uBAAuB,CAACI,MAAD,oBAACA,MAAM,CAAEG,IAAT,EAAeH,MAAf,oBAAeA,MAAM,CAAEI,IAAvB,CAAtC;AACA,QAAIC,OAAO,GAAG,IAAd;AAEA,UAAMN,UAAU,CAACO,aAAX,CACJT,iBAAiB,CAACI,IAAD,EAAOD,MAAP,oBAAOA,MAAM,CAAEG,IAAf,EAAqBH,MAArB,oBAAqBA,MAAM,CAAEI,IAA7B,CADb,iCAEJ,aAAY;AACV,UAAMG,IAAI,SAASZ,cAAc,cACzBK,MAAM,IAAI,EADe;AAE7BE,QAAAA,MAF6B;AAG7BM,QAAAA,MAAM,EAAEP,IAAI,GAAGD,MAAM,CAACS,KAAd,GAAsBT,MAAM,CAACS;AAHR,SAAd,CAKhBC,KALgB,CAKV,MAAM,IALI,CAAnB;;AAOA,UAAI,EAACH,IAAD,YAACA,IAAI,CAAEI,OAAN,CAAcC,MAAf,CAAJ,EAA2B;AACzBP,QAAAA,OAAO,GAAG,KAAV;AACA,eAAO,IAAP;AACD;;AAED,aAAOE,IAAP;AACD,KAhBG,GAiBJ;AAAEM,MAAAA,SAAS,EAAE;AAAb,KAjBI,CAAN;AAoBA,WAAOR,OAAP;AACD,GA7BkC;;AAAA,kBAAtBP,sBAAsB;AAAA;AAAA;AAAA,GAA5B","sourcesContent":["import { ContentsFilter } from '@sentecacommerce/sdk'\nimport { getCMSContentListFilter } from '../utils'\nimport { getContentListKey, CmsListConfigType } from '../api'\nimport type { QueryCache } from 'react-query'\n\nexport const prefetchCmsContentList = async (\n queryCache: QueryCache,\n config: CmsListConfigType,\n page: number\n) => {\n const filter = getCMSContentListFilter(config?.type, config?.tags)\n let isFound = true\n\n await queryCache.prefetchQuery(\n getContentListKey(page, config?.type, config?.tags),\n async () => {\n const data = await ContentsFilter({\n ...(config || {}),\n filter, \n offset: page * config.limit - config.limit,\n })\n .catch(() => null)\n\n if (!data?.results.length) {\n isFound = false\n return null\n }\n\n return data\n },\n { staleTime: 30000 }\n )\n\n return isFound\n}\n"],"file":"prefetchCmsContentList.js"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
export var getCMSContentListFilter = (type, tags) => {
|
2
|
+
var tagsFilter = tags == null ? void 0 : tags.reduce((filter, tag, index) => {
|
3
|
+
if (!index && !type) return filter + ("tags;in;\"" + tag + "\"");
|
4
|
+
return filter + ("&tags;in;\"" + tag + "\"");
|
5
|
+
}, '');
|
6
|
+
var typeFilter = type ? "type;in;\"" + type + "\"" : '';
|
7
|
+
return "" + typeFilter + (tagsFilter || '');
|
8
|
+
};
|
9
|
+
//# sourceMappingURL=getCMSContentListFilter.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../src/cms/utils/getCMSContentListFilter.ts"],"names":["getCMSContentListFilter","type","tags","tagsFilter","reduce","filter","tag","index","typeFilter"],"mappings":"AAAA,OAAO,IAAMA,uBAAuB,GAAG,CAACC,IAAD,EAAgBC,IAAhB,KAAoC;AACzE,MAAMC,UAAU,GAAGD,IAAH,oBAAGA,IAAI,CAAEE,MAAN,CAAa,CAACC,MAAD,EAASC,GAAT,EAAcC,KAAd,KAAwB;AACtD,QAAI,CAACA,KAAD,IAAU,CAACN,IAAf,EAAqB,OAAOI,MAAM,mBAAeC,GAAf,QAAb;AAErB,WAAOD,MAAM,oBAAgBC,GAAhB,QAAb;AACD,GAJkB,EAIhB,EAJgB,CAAnB;AAMA,MAAME,UAAU,GAAGP,IAAI,kBAAeA,IAAf,UAAyB,EAAhD;AAEA,cAAUO,UAAV,IAAuBL,UAAU,IAAI,EAArC;AACD,CAVM","sourcesContent":["export const getCMSContentListFilter = (type?: string, tags?: string[]) => {\n const tagsFilter = tags?.reduce((filter, tag, index) => {\n if (!index && !type) return filter + `tags;in;\"${tag}\"`\n\n return filter + `&tags;in;\"${tag}\"`\n }, '')\n\n const typeFilter = type ? `type;in;\"${type}\"` : ''\n\n return `${typeFilter}${tagsFilter || ''}`\n}\n"],"file":"getCMSContentListFilter.js"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/cms/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAAd","sourcesContent":["export * from './getFirstNodeByComponentName'"],"file":"index.js"}
|
1
|
+
{"version":3,"sources":["../../../../src/cms/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAAd;AACA,cAAc,2BAAd","sourcesContent":["export * from './getFirstNodeByComponentName'\nexport * from './getCMSContentListFilter'"],"file":"index.js"}
|
@@ -8,8 +8,8 @@ import styled, { css } from 'styled-components';
|
|
8
8
|
*/
|
9
9
|
|
10
10
|
export var OverflowEllipsis = styled.span(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n ", "\n"])), props => {
|
11
|
-
var lineHeight = props.lineHeight / 10;
|
11
|
+
var lineHeight = (props == null ? void 0 : props.lineHeight) / 10;
|
12
12
|
var height = lineHeight * props.lines;
|
13
|
-
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n
|
13
|
+
return css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ", ";\n -webkit-box-orient: vertical;\n ", "\n "])), props.lines, Boolean(lineHeight) && "\n min-height: " + height + "rem;\n max-height: " + height + "rem;\n line-height: " + lineHeight + "rem;\n ");
|
14
14
|
});
|
15
15
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/OverflowEllipsis/index.tsx"],"names":["styled","css","OverflowEllipsis","span","props","lineHeight","height","lines"],"mappings":";;;;AAAA,OAAOA,MAAP,IAAiBC,GAAjB,QAA4B,mBAA5B;AACA;AACA;AACA;;AACA,OAAO,IAAMC,gBAAgB,GAAGF,MAAM,CAACG,IAAV,qFAIxBC,KAAD,IAAW;AACX,MAAMC,UAAU,
|
1
|
+
{"version":3,"sources":["../../../../src/components/OverflowEllipsis/index.tsx"],"names":["styled","css","OverflowEllipsis","span","props","lineHeight","height","lines","Boolean"],"mappings":";;;;AAAA,OAAOA,MAAP,IAAiBC,GAAjB,QAA4B,mBAA5B;AACA;AACA;AACA;;AACA,OAAO,IAAMC,gBAAgB,GAAGF,MAAM,CAACG,IAAV,qFAIxBC,KAAD,IAAW;AACX,MAAMC,UAAU,GAAG,CAACD,KAAD,oBAACA,KAAK,CAAEC,UAAR,IAAgC,EAAnD;AACA,MAAMC,MAAM,GAAGD,UAAU,GAAGD,KAAK,CAACG,KAAlC;AAEA,SAAON,GAAP,2PAIwBG,KAAK,CAACG,KAJ9B,EAMIC,OAAO,CAACH,UAAD,CAAP,+BAEcC,MAFd,kCAGcA,MAHd,mCAIeD,UAJf,iBANJ;AAaD,CArB0B,CAAtB","sourcesContent":["import styled, { css } from 'styled-components'\n/**\n * Component used to handle the overflow of text\n */\nexport const OverflowEllipsis = styled.span<{\n lines: number\n lineHeight?: number\n}>`\n ${(props) => {\n const lineHeight = (props?.lineHeight as number) / 10\n const height = lineHeight * props.lines\n\n return css`\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: ${props.lines};\n -webkit-box-orient: vertical;\n ${Boolean(lineHeight) &&\n `\n min-height: ${height}rem;\n max-height: ${height}rem;\n line-height: ${lineHeight}rem;\n `}\n `\n }}\n`\n"],"file":"index.js"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/config/SentecaProvider.tsx"],"names":["React","HttpClient","Configuration","fetch","getOptions","ReactQueryConfigProvider","useQueryCache","removeAnonToken","removeAuthToken","ConfigStateContext","createContext","undefined","SentecaProvider","defaultConfig","transientConfig","localeData","children","queryCache","options","headers","InterfaceKey","interfaceKey","StoreKey","storeKey","Error","fetchApi","window","queries","onError","e","statusCode","clear"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,EAAoCC,aAApC,QAAyD,sBAAzD;AACA,OAAOC,KAAP,MAAkB,YAAlB;AACA,SAASC,UAAT,QAA2B,qBAA3B;AACA,SAASC,wBAAT,EAAmCC,aAAnC,QAAwD,aAAxD;AACA,SAASC,eAAT,EAA0BC,eAA1B,QAAiD,iBAAjD;
|
1
|
+
{"version":3,"sources":["../../../src/config/SentecaProvider.tsx"],"names":["React","HttpClient","Configuration","fetch","getOptions","ReactQueryConfigProvider","useQueryCache","removeAnonToken","removeAuthToken","ConfigStateContext","createContext","undefined","SentecaProvider","defaultConfig","transientConfig","localeData","children","queryCache","options","headers","InterfaceKey","interfaceKey","StoreKey","storeKey","Error","fetchApi","window","queries","onError","e","statusCode","clear"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,UAAT,EAAoCC,aAApC,QAAyD,sBAAzD;AACA,OAAOC,KAAP,MAAkB,YAAlB;AACA,SAASC,UAAT,QAA2B,qBAA3B;AACA,SAASC,wBAAT,EAAmCC,aAAnC,QAAwD,aAAxD;AACA,SAASC,eAAT,EAA0BC,eAA1B,QAAiD,iBAAjD;AAsBA,IAAMC,kBAAkB,gBAAGT,KAAK,CAACU,aAAN,CACzBC,SADyB,CAA3B;AAIA,OAAO,SAASC,eAAT,OAUJ;AAAA,MAV6B;AAC9BC,IAAAA,aAD8B;AAE9BC,IAAAA,eAF8B;AAG9BC,IAAAA,UAH8B;AAI9BC,IAAAA;AAJ8B,GAU7B;AACD,MAAMC,UAAU,GAAGX,aAAa,EAAhC;AAEA,MAAMY,OAAO,GAAGd,UAAU,CAACS,aAAD,CAA1B,CAHC,CAKD;;AACA,MAAIE,UAAJ,EAAgB;AACdG,IAAAA,OAAO,CAACC,OAAR,gBACMD,OAAO,CAACC,OAAR,IAAmB,EADzB;AAEEC,MAAAA,YAAY,EAAEL,UAAU,CAACM,YAF3B;AAGEC,MAAAA,QAAQ,EAAEP,UAAU,CAACQ;AAHvB;AAKD;;AAEDtB,EAAAA,UAAU,CAACY,aAAX,GAA2B,IAAIX,aAAJ,CAAkBgB,OAAlB,CAA3B;;AAEA,MAAIJ,eAAJ,EAAqB;AACnBb,IAAAA,UAAU,CAACa,eAAX,GAA6B,IAAIZ,aAAJ,cACxBgB,OADwB,EAEvBJ,eAFuB;AAG3BK,MAAAA,OAAO,eACDD,OAAO,CAACC,OAAR,IAAmB,EADlB,EAEDL,eAAe,CAACK,OAAhB,IAA2B,EAF1B;AAHoB,OAA7B;AAQD;;AAED,MAAI,CAACN,aAAL,EAAoB;AAClB,UAAM,IAAIW,KAAJ,CAAU,gDAAV,CAAN;AACD;;AAEDX,EAAAA,aAAa,CAACY,QAAd,GACE,OAAOC,MAAP,KAAkB,WAAlB,GAAgCA,MAAM,CAACvB,KAAvC,GAAgDA,KADlD;AAGA,sBACE,oBAAC,wBAAD;AACE,IAAA,MAAM,EAAE;AACNwB,MAAAA,OAAO,EAAE;AACPC,QAAAA,OAAO,EAAGC,CAAD,IAAY;AACnB,cAAI,CAAAA,CAAC,QAAD,YAAAA,CAAC,CAAEC,UAAH,MAAkB,GAAtB,EAA2B;AACzBtB,YAAAA,eAAe;AACfD,YAAAA,eAAe;AAEfU,YAAAA,UAAU,CAACc,KAAX;AACD;AACF;AARM;AADH;AADV,kBAcE,oBAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAE;AAAElB,MAAAA,aAAF;AAAiBC,MAAAA;AAAjB;AAApC,KACGE,QADH,CAdF,CADF;AAoBD","sourcesContent":["import React from 'react'\nimport { HttpClient, ConfigOptions, Configuration } from '@sentecacommerce/sdk'\nimport fetch from 'node-fetch'\nimport { getOptions } from '../api/getSDKConfig'\nimport { ReactQueryConfigProvider, useQueryCache } from 'react-query'\nimport { removeAnonToken, removeAuthToken } from '../utils/tokens'\n\nexport type SentecaProps = {\n children?: React.ReactNode\n}\n\nexport interface ConfigProps {\n defaultConfig: ConfigOptions\n transientConfig?: ConfigOptions\n}\n\nexport interface LocaleData {\n interfaceKey: string\n storeKey: string\n locale: string\n domain: string\n theme: {\n themeKey: string\n themeVersion: string\n }\n}\n\nconst ConfigStateContext = React.createContext<ConfigProps | undefined>(\n undefined\n)\n\nexport function SentecaProvider({\n defaultConfig,\n transientConfig,\n localeData,\n children,\n}: {\n defaultConfig: ConfigOptions\n transientConfig?: ConfigOptions\n children: React.ReactNode\n localeData?: LocaleData\n}) {\n const queryCache = useQueryCache()\n\n const options = getOptions(defaultConfig)\n\n // add interfaceKey and storeKey in the headers\n if (localeData) {\n options.headers = {\n ...(options.headers || {}),\n InterfaceKey: localeData.interfaceKey,\n StoreKey: localeData.storeKey,\n }\n }\n\n HttpClient.defaultConfig = new Configuration(options)\n\n if (transientConfig) {\n HttpClient.transientConfig = new Configuration({\n ...options,\n ...(transientConfig as any),\n headers: {\n ...(options.headers || {}),\n ...(transientConfig.headers || {}),\n },\n })\n }\n\n if (!defaultConfig) {\n throw new Error('SentecaProvider requires a valid config object')\n }\n\n defaultConfig.fetchApi =\n typeof window !== 'undefined' ? window.fetch : (fetch as any)\n\n return (\n <ReactQueryConfigProvider\n config={{\n queries: {\n onError: (e: any) => {\n if (e?.statusCode === 401) {\n removeAuthToken()\n removeAnonToken()\n\n queryCache.clear()\n }\n },\n },\n }}\n >\n <ConfigStateContext.Provider value={{ defaultConfig, transientConfig }}>\n {children}\n </ConfigStateContext.Provider>\n </ReactQueryConfigProvider>\n )\n}\n"],"file":"SentecaProvider.js"}
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
2
2
|
import { createAggregateQuery, generateQueryFromRouter } from '../../utils';
|
3
|
-
import { TermAggregationResult } from '@sentecacommerce/sdk';
|
4
3
|
import { useRouter } from 'next/router';
|
5
4
|
import { useMemo } from 'react';
|
6
5
|
import { catalogApi } from '../../api/catalogApi';
|
@@ -11,7 +10,6 @@ var byOrder = (a, b) => {
|
|
11
10
|
return 0;
|
12
11
|
};
|
13
12
|
|
14
|
-
export { TermAggregationResult };
|
15
13
|
var operatorMap = {
|
16
14
|
ranges: 'range',
|
17
15
|
stats: 'range',
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/hooks/useAggregateResult/index.ts"],"names":["createAggregateQuery","generateQueryFromRouter","
|
1
|
+
{"version":3,"sources":["../../../../src/hooks/useAggregateResult/index.ts"],"names":["createAggregateQuery","generateQueryFromRouter","useRouter","useMemo","catalogApi","byOrder","a","b","order","operatorMap","ranges","stats","terms","mapKey","r","type","key","from","to","filterByType","filters","filterName","includes","filter","useAggregateResult","aggregates","slug","predicate","query","router","transformedQuery","data","aggData","isLoading","isIdle","isFetching","useAggregate","result","sort","reduce","res","current","aggregationType","find","c","name","aggregationDefinition","split","selectedCount","results","acc","count","filterKey","selected","filterDefinition","concat","onClick","push","aggType","aggKey","aggOperator","label","component","items","clearAll","pathname"],"mappings":"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","sourcesContent":["import {\n createAggregateQuery,\n generateQueryFromRouter,\n} from '../../utils'\nimport type {\n TermAggregation,\n StatAggregation,\n RangeAggregation,\n TermAggregationResult,\n StatAggregationResult,\n RangeAggregationResult,\n} from '@sentecacommerce/sdk'\nimport { useRouter } from 'next/router'\nimport { useMemo } from 'react'\nimport { FiltersQuery } from '../../listing/types'\nimport { catalogApi } from '../../api/catalogApi'\n\nconst byOrder = (a: any, b: any) => {\n if (a.order > b.order) return 1\n\n if (a.order < b.order) return -1\n\n return 0\n}\n\ntype AggregationType = TermAggregation | StatAggregation | RangeAggregation\n\nexport type AggregationTypes = 'ranges' | 'terms' | 'stats'\n\ntype AggregationDTO =\n | TermAggregationResult\n | StatAggregationResult\n | RangeAggregationResult\n\nexport type { TermAggregationResult }\n\nexport type FormattedAggregationResultType = {\n onClick: () => void\n selected: boolean\n data: AggregationDTO\n label?: string\n aggregationType?: AggregationTypes\n}\n\nexport type AggregateResultType = {\n name: string\n component: string\n items: FormattedAggregationResultType[]\n type: AggregationTypes\n selectedCount: number\n clearAll: () => void\n}\n\nconst operatorMap = {\n ranges: 'range',\n stats: 'range',\n terms: 'eq',\n}\n\n// TODO: Additional mappers later\nconst mapKey = (r: any, type: any) => {\n switch (true) {\n case type === 'terms':\n return `\"${r.key}\"`\n case type === 'ranges':\n return `${r.from},${r.to}`\n default:\n return r.key\n }\n}\n\nconst filterByType = (\n filters: string | string[] | undefined,\n filterName: string\n) => {\n if (!filters) return\n\n if (typeof filters === 'string') {\n if (filters.includes(filterName)) return\n\n return filters\n }\n\n return filters.filter((filter) => !filter.includes(filterName))\n}\n\nexport const useAggregateResult = (\n type: 'category' | 'brand' | 'search' | 'view',\n aggregates: any[],\n slug: string,\n predicate: string,\n query: FiltersQuery\n) => {\n const router = useRouter()\n\n const transformedQuery = generateQueryFromRouter(query)\n\n const {\n data: aggData,\n isLoading,\n isIdle,\n isFetching,\n } = catalogApi.useAggregate(\n type,\n aggregates,\n slug,\n predicate,\n transformedQuery\n )\n\n const data = useMemo(() => {\n if (isLoading || !aggData) return null\n\n const result = aggregates\n .sort(byOrder)\n .reduce<AggregateResultType[]>((res, a) => {\n const current = aggData[a.aggregationType].find(\n (c: AggregationType) =>\n c.name === a.aggregationDefinition.split(':')[0]\n )\n let selectedCount = 0\n const results = current.results.reduce<\n FormattedAggregationResultType[]\n >((acc: FormattedAggregationResultType[], r: AggregationDTO) => {\n if (r.count === 0) return acc\n const filterKey = mapKey(r, a.aggregationType)\n\n const selected = router.query?.filter?.includes(\n `${a.filterDefinition};${\n operatorMap[a.aggregationType]\n };${filterKey}`\n )\n ? true\n : false\n\n if (selected) selectedCount++\n\n return acc.concat([\n {\n data: r,\n selected,\n onClick: () => {\n router.push(\n createAggregateQuery(\n type,\n slug,\n {\n aggType: a.filterDefinition,\n aggKey: filterKey,\n aggOperator: operatorMap[a.aggregationType],\n },\n selected,\n router\n )\n )\n },\n },\n ])\n }, [])\n\n return res.concat([\n {\n name: a.label,\n component: a.component,\n items: results,\n selectedCount,\n clearAll: () =>\n router.push({\n pathname: router.pathname,\n query: {\n ...router.query,\n filter: filterByType(router.query.filter, a.filterDefinition),\n },\n }),\n type: a.aggregationType as AggregationTypes,\n },\n ])\n }, [])\n\n return result\n }, [isLoading, aggData, aggregates, slug, type])\n\n return {\n isLoading,\n isIdle,\n data,\n isFetching,\n }\n}\n"],"file":"index.js"}
|
package/dist/esm/index.js
CHANGED
@@ -20,7 +20,6 @@ export * from './api/myShippingsSpeedyApi';
|
|
20
20
|
export * from './api/myOrdersApi';
|
21
21
|
export * from './api/myShippingsEcontApi';
|
22
22
|
export * from './api/myShippingsEvropatApi';
|
23
|
-
export * from './api/cmsContentApi';
|
24
23
|
export * from './api/citiesApi';
|
25
24
|
export * from './api/searchHistoryApi';
|
26
25
|
export * from './api/walletApi';
|
@@ -52,7 +51,6 @@ export * from './hooks/wishlist-hooks/useWishlist';
|
|
52
51
|
export * from './hooks/useCheckoutSummary';
|
53
52
|
export * from './hooks/usePrice';
|
54
53
|
export * from './hooks/wishlist-hooks';
|
55
|
-
export * from './hooks/cms-content-hooks';
|
56
54
|
export * from './hooks/labels';
|
57
55
|
export * from './hooks/checkout-hooks';
|
58
56
|
export * from './hooks/basket-hooks/useBasketTotalCount';
|
package/dist/esm/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAd,C,CAEA;AACA;;AACA,cAAc,mBAAd;AACA,cAAc,gBAAd;AACA,cAAc,gBAAd;AACA,cAAc,kBAAd;AACA,cAAc,mBAAd;AACA,cAAc,oBAAd;AACA,cAAc,mBAAd;AACA,cAAc,kBAAd;AACA,cAAc,qBAAd;AACA,cAAc,iBAAd;AACA,cAAc,gBAAd;AACA,cAAc,wBAAd;AACA,cAAc,oBAAd;AACA,cAAc,mBAAd;AACA,cAAc,iBAAd;AACA,cAAc,4BAAd;AACA,cAAc,mBAAd;AACA,cAAc,2BAAd;AACA,cAAc,6BAAd;AACA,cAAc,
|
1
|
+
{"version":3,"sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAd,C,CAEA;AACA;;AACA,cAAc,mBAAd;AACA,cAAc,gBAAd;AACA,cAAc,gBAAd;AACA,cAAc,kBAAd;AACA,cAAc,mBAAd;AACA,cAAc,oBAAd;AACA,cAAc,mBAAd;AACA,cAAc,kBAAd;AACA,cAAc,qBAAd;AACA,cAAc,iBAAd;AACA,cAAc,gBAAd;AACA,cAAc,wBAAd;AACA,cAAc,oBAAd;AACA,cAAc,mBAAd;AACA,cAAc,iBAAd;AACA,cAAc,4BAAd;AACA,cAAc,mBAAd;AACA,cAAc,2BAAd;AACA,cAAc,6BAAd;AACA,cAAc,iBAAd;AACA,cAAc,wBAAd;AAEA,cAAc,iBAAd;AACA,cAAc,qCAAd;AAEA,cAAc,2BAAd,C,CACA;AAEA;;AACA,cAAc,oBAAd;AACA,cAAc,yBAAd;AACA,cAAc,+BAAd;AACA,cAAc,kCAAd,C,CAEA;;AACA,cAAc,cAAd,C,CAEA;;AACA,cAAc,qBAAd;AACA,cAAc,iBAAd;AACA,cAAc,oBAAd;AACA,cAAc,0BAAd;AACA,cAAc,4BAAd;AACA,cAAc,qBAAd;AACA,cAAc,sBAAd;AACA,cAAc,6BAAd;AACA,cAAc,4BAAd;AACA,cAAc,oCAAd;AACA,cAAc,mCAAd;AACA,cAAc,2BAAd;AACA,cAAc,iCAAd;AACA,cAAc,oCAAd;AACA,cAAc,4BAAd;AACA,cAAc,kBAAd;AACA,cAAc,wBAAd;AACA,cAAc,gBAAd;AACA,cAAc,wBAAd;AAEA,cAAc,0CAAd;AACA,cAAc,2CAAd;AACA,cAAc,4BAAd;AACA,cAAc,sBAAd;AACA,cAAc,+BAAd;AACA,cAAc,8BAAd;AACA,cAAc,4BAAd;AACA,cAAc,4BAAd;AACA,cAAc,+BAAd;AACA,cAAc,4BAAd;AACA,cAAc,oCAAd;AACA,cAAc,mCAAd;AACA,cAAc,2BAAd;AACA,cAAc,yBAAd;AACA,cAAc,mBAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AAEA,cAAc,sBAAd;AAEA,cAAc,qBAAd;AACA,cAAc,4BAAd;AACA,cAAc,kBAAd;AACA,cAAc,qBAAd;AACA,cAAc,sBAAd;AACA,cAAc,wBAAd,C,CACA;;AAEA,cAAc,mBAAd;AACA,cAAc,4BAAd;AACA,cAAc,2BAAd;AACA,cAAc,wBAAd;AAEA,cAAc,oBAAd;AACA,cAAc,wBAAd;AAEA,cAAc,uBAAd;AACA,cAAc,yBAAd;AACA,cAAc,yBAAd;AACA,cAAc,6BAAd;AACA,cAAc,2BAAd;AACA,cAAc,wBAAd;AACA,cAAc,6BAAd;AACA,cAAc,wBAAd,C,CAEA;;AACA,cAAc,SAAd;AACA,cAAc,SAAd,C,CAEA;;AACA,cAAc,OAAd,C,CAEA;;AACA,cAAc,8BAAd;AACA,cAAc,yBAAd;AAEA,cAAc,oBAAd;AACA,cAAc,mBAAd,C,CAEA;;AACA,cAAc,WAAd,C,CAEA;;AACA,cAAc,sBAAd,C,CAEA;;AACA,cAAc,OAAd,C,CAEA;;AACA,cAAc,UAAd;AACA,cAAc,eAAd;AAEA,cAAc,oBAAd;AAEA,cAAc,QAAd;AACA,cAAc,WAAd;AACA,cAAc,UAAd;AACA,cAAc,cAAd;AACA,cAAc,QAAd,C,CAEA;;AACA,cAAc,QAAd,C,CAEA;;AACA,cAAc,MAAd;AAEA,cAAc,YAAd,C,CAEA;;AACA,cAAc,SAAd,C,CAEA;;AACA,cAAc,SAAd,C,CAEA;;AACA,cAAc,WAAd,C,CAEA;;AACA,cAAc,YAAd,C,CAEA;;AACA,cAAc,WAAd","sourcesContent":["export * from './dto'\n\n// API\n// export * from './api/myCart'\nexport * from './api/productsApi'\nexport * from './api/pagesApi'\nexport * from './api/usersApi'\nexport * from './api/profileApi'\nexport * from './api/wishlistApi'\nexport * from './api/addressesApi'\nexport * from './api/consentsApi'\nexport * from './api/catalogApi'\nexport * from './api/categoriesApi'\nexport * from './api/brandsApi'\nexport * from './api/viewsApi'\nexport * from './api/notificationsApi'\nexport * from './api/companiesApi'\nexport * from './api/vouchersApi'\nexport * from './api/myCartApi'\nexport * from './api/myShippingsSpeedyApi'\nexport * from './api/myOrdersApi'\nexport * from './api/myShippingsEcontApi'\nexport * from './api/myShippingsEvropatApi'\nexport * from './api/citiesApi'\nexport * from './api/searchHistoryApi'\n\nexport * from './api/walletApi'\nexport * from './api/myShippingsPickupFromStoreAPI'\n\nexport * from './api/myPaymentsBoricaApi'\n// Components\n\n// Contexts\nexport * from './contexts/Strings'\nexport * from './contexts/CheckoutForm'\nexport * from './contexts/CheckoutForm/utils'\nexport * from './contexts/CustomProductProvider'\n\n// Components\nexport * from './components'\n\n// Hooks\nexport * from './hooks/useCarousel'\nexport * from './hooks/useZoom'\nexport * from './hooks/useProduct'\nexport * from './hooks/useCatalogResult'\nexport * from './hooks/useCopyToClipboard'\nexport * from './hooks/useVouchers'\nexport * from './hooks/usePromoCode'\nexport * from './hooks/useCheckoutDelivery'\nexport * from './hooks/useCheckoutPayment'\nexport * from './hooks/useCheckoutShippingAddress'\nexport * from './hooks/useCheckoutBillingAddress'\nexport * from './hooks/useCheckoutSubmit'\nexport * from './hooks/useCheckoutDiscountCode'\nexport * from './hooks/wishlist-hooks/useWishlist'\nexport * from './hooks/useCheckoutSummary'\nexport * from './hooks/usePrice'\nexport * from './hooks/wishlist-hooks'\nexport * from './hooks/labels'\nexport * from './hooks/checkout-hooks'\n\nexport * from './hooks/basket-hooks/useBasketTotalCount'\nexport * from './hooks/useIsBasketWithFixedShippingPrice'\nexport * from './hooks/useProductCarousel'\nexport * from './hooks/useSearchbar'\nexport * from './hooks/useSEOAggregateResult'\nexport * from './hooks/useCatalogPredicates'\nexport * from './hooks/useAggregateResult'\nexport * from './hooks/useSelectedFilters'\nexport * from './hooks/useAllSelectedFilters'\nexport * from './hooks/useClearAllFilters'\nexport * from './hooks/useCheckoutPickupFromStore'\nexport * from './hooks/useCheckoutShippingModule'\nexport * from './hooks/useLoyaltyProgram'\nexport * from './hooks/useCategoryTree'\nexport * from './hooks/useWallet'\nexport * from './hooks/useSizesReducer'\nexport * from './hooks/useAvailability'\n\nexport * from './hooks/cities-hooks'\n\nexport * from './hooks/useLineItem'\nexport * from './hooks/usePrefetchProduct'\nexport * from './hooks/ui-hooks'\nexport * from './hooks/order-hooks'\nexport * from './hooks/basket-hooks'\nexport * from './hooks/useAddressList'\n// export * from './hooks/third-party'\n\nexport * from './hooks/useConfig'\nexport * from './hooks/useShippingAddress'\nexport * from './hooks/useBillingAddress'\nexport * from './hooks/useContactForm'\n\nexport * from './hooks/user-hooks'\nexport * from './hooks/error-handling'\n\nexport * from './hooks/profile-hooks'\nexport * from './hooks/addresses-hooks'\nexport * from './hooks/companies-hooks'\nexport * from './hooks/subscriptions-hooks'\nexport * from './hooks/useRouterRedirect'\nexport * from './hooks/useProgressBar'\nexport * from './hooks/useCatalogDiscounts'\nexport * from './hooks/useLocalRating'\n\n// Utils\nexport * from './utils'\nexport * from './types'\n\n// SEO\nexport * from './seo'\n\n// Analytics\nexport * from './analytics/initiateCheckout'\nexport * from './analytics/viewContent'\n\nexport * from './analytics/Releva'\nexport * from './analytics/Pixel'\n\n// WebView\nexport * from './webview'\n\n// Carousel\nexport * from 'embla-carousel/react'\n\n// CMS\nexport * from './cms'\n\n// API v2\nexport * from './config'\nexport * from './api.v2/core'\n\nexport * from './api.v2/core/misc'\n\nexport * from './ssr/'\nexport * from './listing'\nexport * from './brands'\nexport * from './navigation'\nexport * from './GDPR'\n\n// User\nexport * from './user'\n\n// UI Components and hooks\nexport * from './ui'\n\nexport * from './wishlist'\n\n// Build Scripts \nexport * from './build'\n\n// Order\nexport * from './order'\n\n// Product\nexport * from './product'\n\n// Checkout\nexport * from './checkout'\n\n// PostCSS and related configuration\nexport * from './postcss'"],"file":"index.js"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
export var getCanonicalUrl = (context, localeData, redirectTo) => {
|
2
|
+
var _req$url;
|
3
|
+
|
4
|
+
var {
|
5
|
+
req
|
6
|
+
} = context;
|
7
|
+
var reqHost = req.headers['senteca-host'];
|
8
|
+
var reqSSL = req.headers['senteca-ssl']; // Format domain (remove http and the slash at the end)
|
9
|
+
|
10
|
+
var domain = (localeData == null ? void 0 : localeData.domain) || '';
|
11
|
+
domain = domain[domain.length - 1] === '/' ? domain.slice(0, domain.length - 1) : domain;
|
12
|
+
if (!reqHost || !reqSSL || !domain) return;
|
13
|
+
var areWeSecured = reqSSL === 'https';
|
14
|
+
var [currentPath, queryString] = ((_req$url = req.url) == null ? void 0 : _req$url.split('?')) || ['/'];
|
15
|
+
if (!redirectTo && areWeSecured && (domain === reqHost || domain === reqHost + "/" + localeData.locale)) return;
|
16
|
+
return "https://" + domain + (redirectTo || currentPath) + (queryString ? "?" + queryString : '');
|
17
|
+
};
|
18
|
+
//# sourceMappingURL=getCanonicalUrl.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../../../../../src/seo/api/ssr/getCanonicalUrl.ts"],"names":["getCanonicalUrl","context","localeData","redirectTo","req","reqHost","headers","reqSSL","domain","length","slice","areWeSecured","currentPath","queryString","url","split","locale"],"mappings":"AAGA,OAAO,IAAMA,eAAe,GAAG,CAC7BC,OAD6B,EAE7BC,UAF6B,EAG7BC,UAH6B,KAIN;AAAA;;AACvB,MAAM;AAAEC,IAAAA;AAAF,MAAUH,OAAhB;AAEA,MAAMI,OAAO,GAAGD,GAAG,CAACE,OAAJ,CAAY,cAAZ,CAAhB;AACA,MAAMC,MAAM,GAAGH,GAAG,CAACE,OAAJ,CAAY,aAAZ,CAAf,CAJuB,CAMvB;;AACA,MAAIE,MAAM,GAAG,CAAAN,UAAU,QAAV,YAAAA,UAAU,CAAEM,MAAZ,KAAsB,EAAnC;AAEAA,EAAAA,MAAM,GACJA,MAAM,CAACA,MAAM,CAACC,MAAP,GAAgB,CAAjB,CAAN,KAA8B,GAA9B,GACID,MAAM,CAACE,KAAP,CAAa,CAAb,EAAgBF,MAAM,CAACC,MAAP,GAAgB,CAAhC,CADJ,GAEID,MAHN;AAKA,MAAI,CAACH,OAAD,IAAY,CAACE,MAAb,IAAuB,CAACC,MAA5B,EAAoC;AAEpC,MAAMG,YAAY,GAAGJ,MAAM,KAAK,OAAhC;AAEA,MAAM,CAACK,WAAD,EAAcC,WAAd,IAA6B,aAAAT,GAAG,CAACU,GAAJ,8BAASC,KAAT,CAAe,GAAf,MAAuB,CAAC,GAAD,CAA1D;AAEA,MACE,CAACZ,UAAD,IACAQ,YADA,KAECH,MAAM,KAAKH,OAAX,IAAsBG,MAAM,KAAQH,OAAR,SAAmBH,UAAU,CAACc,MAF3D,CADF,EAKE;AAEF,sBAAkBR,MAAlB,IAA2BL,UAAU,IAAIS,WAAzC,KACEC,WAAW,SAAOA,WAAP,GAAuB,EADpC;AAGD,CAlCM","sourcesContent":["import { GetServerSidePropsContext } from 'next'\nimport { LocaleData } from '../../..'\n\nexport const getCanonicalUrl = (\n context: GetServerSidePropsContext,\n localeData: LocaleData,\n redirectTo?: string\n): string | undefined => {\n const { req } = context\n\n const reqHost = req.headers['senteca-host']\n const reqSSL = req.headers['senteca-ssl']\n\n // Format domain (remove http and the slash at the end)\n let domain = localeData?.domain || ''\n\n domain =\n domain[domain.length - 1] === '/'\n ? domain.slice(0, domain.length - 1)\n : domain\n\n if (!reqHost || !reqSSL || !domain) return\n\n const areWeSecured = reqSSL === 'https'\n\n const [currentPath, queryString] = req.url?.split('?') || ['/']\n\n if (\n !redirectTo &&\n areWeSecured &&\n (domain === reqHost || domain === `${reqHost}/${localeData.locale}`)\n )\n return\n\n return `https://${domain}${redirectTo || currentPath}${\n queryString ? `?${queryString}` : ''\n }`\n}\n"],"file":"getCanonicalUrl.js"}
|