@fast-simon/dashboard-utilities 1.0.43 → 1.0.45

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.
@@ -101,6 +101,7 @@ const FastSimonApi = (_a) => {
101
101
  segments: state.segments,
102
102
  categoryID: state.collectionID,
103
103
  withProductAttributes: withProductAttributes,
104
+ searchWithinSearch: state.searchWithinSearch
104
105
  };
105
106
  if (flags.length > 0) {
106
107
  flags.forEach((f) => {
@@ -124,6 +125,7 @@ const FastSimonApi = (_a) => {
124
125
  categoryID: state.collectionID,
125
126
  segments: state.segments,
126
127
  withProductAttributes: withProductAttributes,
128
+ searchWithinSearch: state.searchWithinSearch
127
129
  };
128
130
  if (flags && flags.length > 0) {
129
131
  flags.forEach((f) => {
@@ -144,7 +146,8 @@ const FastSimonApi = (_a) => {
144
146
  narrowBy: state.narrow,
145
147
  sortBy: state.sortBy,
146
148
  categoryID: state.collectionID,
147
- segments: segments
149
+ segments: segments,
150
+ searchWithinSearch: state.searchWithinSearch
148
151
  };
149
152
  if (flags && flags.length > 0) {
150
153
  flags.forEach((f) => {
@@ -189,7 +192,8 @@ const FastSimonApi = (_a) => {
189
192
  sortBy: state.sortBy,
190
193
  categoryID: state.collectionID,
191
194
  page: page,
192
- segments: state.segments
195
+ segments: state.segments,
196
+ searchWithinSearch: state.searchWithinSearch
193
197
  };
194
198
  if (flags && flags.length > 0) {
195
199
  flags.forEach((f) => {
@@ -210,7 +214,8 @@ const FastSimonApi = (_a) => {
210
214
  narrowBy: narrow,
211
215
  sortBy: state.sortBy,
212
216
  categoryID: state.collectionID,
213
- segments: state.segments
217
+ segments: state.segments,
218
+ searchWithinSearch: state.searchWithinSearch
214
219
  };
215
220
  if (flags && flags.length > 0) {
216
221
  flags.forEach((f) => {
@@ -255,7 +260,7 @@ const FastSimonApi = (_a) => {
255
260
  sortBy: state.sortBy,
256
261
  categoryID: state.collectionID,
257
262
  segments: state.segments,
258
- searchWithinSearch
263
+ searchWithinSearch: searchWithinSearch
259
264
  };
260
265
  if (flags && flags.length > 0) {
261
266
  flags.forEach((f) => {
@@ -330,15 +335,9 @@ const FastSimonApi = (_a) => {
330
335
  }, []);
331
336
  const onSearch = (props, isInfiniteScroll) => {
332
337
  setIsLoading({ products: true, filters: true });
333
- let resultsMerged = false;
334
338
  FullTextSearch.getReasoningFullTextSearch(Object.assign(Object.assign({}, props), { withAttributes: promoTiles || withProductAttributes })).then((response) => {
335
339
  response = getFormatedData(response, props);
336
- //if (!resultsMerged) {
337
340
  mergeResults(response, isInfiniteScroll);
338
- // resultsMerged = true;
339
- //} //else {
340
- // mergeResultsKeepProduct(response);
341
- // }
342
341
  if (!customTitleChange) {
343
342
  document.title = `Search Result for ${query}`;
344
343
  }
@@ -359,16 +358,10 @@ const FastSimonApi = (_a) => {
359
358
  };
360
359
  const onCollection = (props, isInfiniteScroll) => {
361
360
  setIsLoading({ products: true, filters: true });
362
- let resultsMerged = false;
363
361
  SmartCollections.getSmartCollections(Object.assign(Object.assign({}, props), { withAttributes: promoTiles || withProductAttributes }))
364
362
  .then((response) => {
365
363
  response = getFormatedData(response, props);
366
- // if (!resultsMerged) {
367
364
  mergeResults(response, isInfiniteScroll);
368
- // resultsMerged = true;
369
- // } else {
370
- // mergeResultsKeepProduct(response);
371
- // }
372
365
  if (!response) {
373
366
  setIsLoading({
374
367
  filters: true, products: false
@@ -1 +1 @@
1
- {"version":3,"file":"FastSimonApi.js","sourceRoot":"","sources":["../../../src/components/FastSimonApi/FastSimonApi.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {useEffect, useReducer, useState} from \"react\";\r\nimport {FastState, FastStateFunctions, IsLoading, SetStateProps} from \"./context\";\r\nimport {ThemeProvider} from \"react-jss\";\r\nimport {fastStateReducer} from \"./reducer\";\r\nimport {newObject} from \"../common\";\r\n\r\nimport {SortBy} from \"../../@types/sortBy\";\r\nimport {fullTextSearchProps, FullTextServerResponseAll} from \"../../@types/results\";\r\n\r\nimport {Product} from \"../../@types/product\";\r\nimport {FastCategory, smartCollectionsProps, smartCollectionsResults} from \"../../@types/categories\";\r\nimport {Narrow} from \"../../@types/narrow\";\r\nimport {FullTextSearch} from \"../../services/search\";\r\nimport {SmartCollections} from \"../../services/smartCollections\";\r\n\r\n\r\n\r\n\r\n\r\nexport type AppType = \"SPA\" | \"MPA\";\r\n\r\ninterface Props {\r\n storeID: number;\r\n uuid: string;\r\n type?: AppType;\r\n onReady?: VoidFunction;\r\n cartToken?: string;\r\n defaultSort?: SortBy\r\n collectionID?: string\r\n withProductAttributes?: boolean\r\n promoTiles?: boolean\r\n getTitle?: ({}: { categoryID?: string, query?: string }) => string\r\n isInfiniteScroll?: boolean\r\n useFilters?: boolean\r\n noReport?: boolean\r\n customTitleChange?: (results?: FullTextServerResponseAll | smartCollectionsResults) => void\r\n theme?: Partial<MainTheme>\r\n children?: React.ReactNode;\r\n}\r\n\r\nexport interface MainTheme {\r\n primaryColor: string\r\n lighterPrimary: string\r\n successGreen: string\r\n errorRed: string\r\n loadingYellow: string,\r\n}\r\n\r\nconst mainTheme: MainTheme = {\r\n primaryColor: \"#1976d2\",\r\n lighterPrimary: \"rgba(25,118,210,0.71)\",\r\n successGreen: \"#4BB543\",\r\n errorRed: \"#ff0033\",\r\n loadingYellow: \"#f3b706\",\r\n}\r\n\r\n\r\nconst FastSimonApi: React.FC<Props> = ({\r\n storeID, uuid, children,\r\n defaultSort , promoTiles = false, theme,\r\n withProductAttributes = false, isInfiniteScroll = false, getTitle,\r\n useFilters, noReport = false, customTitleChange, ...props\r\n }) => {\r\n const [state, dispatch] = (useReducer as any)?.(fastStateReducer, {\r\n isReady: false,\r\n type: props.type ?? 'SPA',\r\n page: 1,\r\n query: '',\r\n sortBy: defaultSort,\r\n isLoading: {\r\n products: false,\r\n filters: false,\r\n },\r\n collectionID: props.collectionID,\r\n narrow: undefined,\r\n results: undefined,\r\n recommendations: {},\r\n singleProducts: {},\r\n searchWithinSearch: \"\",\r\n segments: undefined,\r\n flag:\"\"\r\n });\r\n\r\n const [categories, setCategories] = useState<FastCategory[]>([]);\r\n\r\n const {results, isLoading, query, sortBy, type, collectionID, page, narrow, recommendations, singleProducts, isReady, autocomplete, segments\r\n\r\n } = state;\r\n\r\n function setResults(results: FullTextServerResponseAll | smartCollectionsResults | undefined) {\r\n (dispatch as any)?.({type: 'setResults', payload: results});\r\n }\r\n\r\n function mergeResults(results: FullTextServerResponseAll | smartCollectionsResults, infiniteScroll: boolean) {\r\n (dispatch as any)?.({type: 'mergeResults', payload: {results, infiniteScroll}});\r\n }\r\n\r\n function mergeResultsKeepProduct(results: FullTextServerResponseAll | smartCollectionsResults) {\r\n (dispatch as any)?.({type: 'mergeResultsKeepProduct', payload: {results}});\r\n }\r\n\r\n function setIsLoading(isLoading: IsLoading) {\r\n (dispatch as any)?.({type: 'setIsLoading', payload: isLoading});\r\n }\r\n\r\n function setQuery(query: string,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setQuery', payload: query});\r\n\r\n // Create the object with the computed property\r\n let fetchParams = {\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: query,\r\n sortBy: defaultSort,\r\n segments: state.segments,\r\n withProductAttributes:withProductAttributes,\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n\r\n\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n }\r\n function setFlag(flags: string[]) {\r\n (dispatch as any)?.({type: 'setFlag', payload: flags});\r\n\r\n\r\n // Create the object with the computed property\r\n let fetchParams = {\r\n uuid: uuid,\r\n storeID: storeID,\r\n term: state.query,\r\n narrowBy: state.narrow,\r\n sortBy: state.defaultSort,\r\n segments: state.segments,\r\n categoryID: state.collectionID,\r\n withProductAttributes: withProductAttributes,\r\n };\r\n\r\n if(flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n // Add the dynamic key to the object\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n\r\n\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n }\r\n\r\n function setSortBy(sortBy: SortBy,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setSortBy', payload: sortBy});\r\n // Create the object with the computed property\r\n let fetchParams = {\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: state.query,\r\n narrowBy: state.narrow,\r\n sortBy: sortBy,\r\n categoryID: state.collectionID,\r\n segments: state.segments,\r\n withProductAttributes:withProductAttributes,\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n function setSegments(segments: string[],flags?:string[]) {\r\n (dispatch as any)?.({type: 'setSegments', payload: segments});\r\n\r\n let fetchParams = {\r\n withProductAttributes:withProductAttributes,\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: state.query,\r\n narrowBy: state.narrow,\r\n sortBy: state.sortBy,\r\n categoryID: state.collectionID,\r\n segments: segments\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n function setType(type: AppType) {\r\n (dispatch as any)?.({type: 'setType', payload: type});\r\n }\r\n\r\n function setCollectionID(collectionID: string,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setCollectionID', payload: collectionID});\r\n\r\n // Create the object with the computed property\r\n let fetchParams = {\r\n uuid:uuid,\r\n storeID:storeID,\r\n categoryID: collectionID,\r\n sortBy: defaultSort,\r\n segments: state.segments\r\n };\r\n\r\n if(flags && flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n // Add the dynamic key to the object\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n\r\n\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n\r\n function setPage(page: number,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setPage', payload: page});\r\n\r\n let fetchParams = {\r\n withProductAttributes:withProductAttributes,\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: state.query,\r\n narrowBy: state.narrow,\r\n sortBy: state.sortBy,\r\n categoryID: state.collectionID,\r\n page: page,\r\n segments: state.segments\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n\r\n function setNarrow(narrow: Narrow[] | undefined,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setNarrow', payload: narrow});\r\n\r\n let fetchParams = {\r\n withProductAttributes:withProductAttributes,\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: state.query,\r\n narrowBy: narrow,\r\n sortBy: state.sortBy,\r\n categoryID: state.collectionID,\r\n segments: state.segments\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n\r\n function setState({...newState}: SetStateProps) {\r\n console.log(\"state\", state);\r\n console.log(\"setState\", newState);\r\n\r\n (dispatch as any)?.({type: 'setState', payload: newState});\r\n\r\n fetchResults({\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: newState.query,\r\n narrowBy: newState.narrow?newState.narrow:undefined,\r\n sortBy: newState.sortBy ?? defaultSort,\r\n categoryID: newState.collectionID,\r\n page: newState.page,\r\n segments: newState.segments\r\n }, Boolean(!results && isInfiniteScroll && newState.page && newState.page > 1));\r\n }\r\n\r\n\r\n function setSingleProducts(products: Product[]) {\r\n (dispatch as any)?.({type: \"setSingleProducts\", payload: products});\r\n }\r\n\r\n\r\n function setReady(isReady: boolean) {\r\n (dispatch as any)?.({type: \"setReady\", payload: isReady});\r\n }\r\n\r\n function setSearchWithinSearch(searchWithinSearch: string,flags?:string[]) {\r\n (dispatch as any)?.({type: \"setSearchWithinSearch\", payload: searchWithinSearch});\r\n\r\n let fetchParams = {\r\n withProductAttributes:withProductAttributes,\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: query,\r\n narrowBy: state.narrow,\r\n sortBy: state.sortBy,\r\n categoryID: state.collectionID,\r\n segments: state.segments,\r\n searchWithinSearch\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n\r\n function fetchResults(props: {\r\n uuid:string, storeID:number, term?: string, page?: number, narrowBy?: Narrow[] | undefined,\r\n sortBy?: SortBy, categoryID?: string, searchWithinSearch?: string, segments?: string[] ,withProductAttributes?:boolean,\r\n disable_semantics?:number,disable_merchandising?:number,disable_strategies?:number,disable_turbolinks?:number,disable_personalization?:number}, isInfiniteScroll: boolean) {\r\n\r\n // on first request check if we need to fetch more then 1 product\r\n\r\n if (props.term) {\r\n onSearch(newObject({\r\n ...props,\r\n page: props.page || 1,\r\n infiniteScrollPage: isInfiniteScroll,\r\n }) as Omit<fullTextSearchProps, \"callback\">, isInfiniteScroll);\r\n } else if (props.categoryID) {\r\n onCollection(newObject({\r\n ...props,\r\n page: props.page || 1,\r\n infiniteScrollPage: isInfiniteScroll,\r\n }) as Omit<smartCollectionsProps, \"callback\">, isInfiniteScroll);\r\n }\r\n\r\n return;\r\n\r\n }\r\n\r\n\r\n\r\n useEffect(() => {\r\n function handleSetQueryEvent(event: any) {\r\n setQuery(event.detail);\r\n }\r\n\r\n function handleSetFlagEvent(event: any){\r\n setFlag(event.details)\r\n\r\n }\r\n function handleSetCollectionEvent(event: any) {\r\n setCollectionID(event.detail);\r\n }\r\n\r\n function handleSetCollectionURLEvent(event: any) {\r\n getAllCategories().then(r => {\r\n const id = r.find(c => c.u === event.detail)?.id;\r\n\r\n if (id) {\r\n setCollectionID(id);\r\n return;\r\n }\r\n\r\n window.location.href = event.detail;\r\n })\r\n }\r\n\r\n function handleSetPageEvent(event: any) {\r\n setPage(event.detail);\r\n }\r\n\r\n function handleSetSortEvent(event: any) {\r\n setSortBy(event.detail);\r\n }\r\n\r\n function handleSetNarrowEvent(event: any) {\r\n setNarrow(event.detail);\r\n }\r\n\r\n function handleSetSegmentsEvent(event: any) {\r\n setSegments(event.detail);\r\n }\r\n window.addEventListener('fast-simon-update-query', handleSetQueryEvent);\r\n window.addEventListener('fast-simon-update-collection', handleSetCollectionEvent);\r\n window.addEventListener('fast-simon-update-collection-url', handleSetCollectionURLEvent);\r\n window.addEventListener('fast-simon-update-page', handleSetPageEvent);\r\n window.addEventListener('fast-simon-update-sort', handleSetSortEvent);\r\n window.addEventListener('fast-simon-update-narrow', handleSetNarrowEvent);\r\n window.addEventListener('fast-simon-update-segments', handleSetSegmentsEvent);\r\n window.addEventListener('fast-simon-update-flag', handleSetFlagEvent);\r\n\r\n return () => {\r\n window.removeEventListener('fast-simon-update-query', handleSetQueryEvent);\r\n window.removeEventListener('fast-simon-update-collection', handleSetCollectionEvent);\r\n window.removeEventListener('fast-simon-update-collection-url', handleSetCollectionURLEvent);\r\n window.removeEventListener('fast-simon-update-page', handleSetPageEvent);\r\n window.removeEventListener('fast-simon-update-sort', handleSetSortEvent);\r\n window.removeEventListener('fast-simon-update-narrow', handleSetNarrowEvent);\r\n window.removeEventListener('fast-simon-update-segments', handleSetSegmentsEvent);\r\n window.removeEventListener('fast-simon-update-flag', handleSetFlagEvent);\r\n }\r\n\r\n }, []);\r\n\r\n const onSearch = (props: Omit<fullTextSearchProps, \"callback\">, isInfiniteScroll: boolean) => {\r\n setIsLoading({products: true, filters: true});\r\n let resultsMerged = false;\r\n FullTextSearch.getReasoningFullTextSearch({\r\n ...props,\r\n withAttributes: promoTiles || withProductAttributes,\r\n }).then((response) => {\r\n response=getFormatedData(response,props);\r\n\r\n //if (!resultsMerged) {\r\n mergeResults(response, isInfiniteScroll);\r\n // resultsMerged = true;\r\n //} //else {\r\n // mergeResultsKeepProduct(response);\r\n // }\r\n\r\n if (!customTitleChange) {\r\n document.title = `Search Result for ${query}`;\r\n } else {\r\n customTitleChange(results);\r\n }\r\n\r\n if (!response) {\r\n setIsLoading({\r\n filters: true, products: false\r\n });\r\n } else {\r\n setIsLoading({\r\n filters: false, products: false\r\n });\r\n }\r\n });\r\n }\r\n\r\n const onCollection = (props: Omit<smartCollectionsProps, \"callback\">, isInfiniteScroll: boolean) => {\r\n setIsLoading({products: true, filters: true});\r\n\r\n let resultsMerged = false;\r\n SmartCollections.getSmartCollections({\r\n ...props,\r\n withAttributes: promoTiles || withProductAttributes})\r\n .then( (response) => {\r\n response=getFormatedData(response,props);\r\n // if (!resultsMerged) {\r\n mergeResults(response, isInfiniteScroll);\r\n // resultsMerged = true;\r\n // } else {\r\n // mergeResultsKeepProduct(response);\r\n // }\r\n if (!response) {\r\n setIsLoading({\r\n filters: true, products: false\r\n });\r\n } else {\r\n setIsLoading({\r\n filters: false, products: false\r\n });\r\n }\r\n\r\n getAllCategories().then(r => {\r\n if (!customTitleChange) {\r\n document.title = r.find(c => c.id === props.categoryID)?.l ?? \"Collection\";\r\n } else {\r\n customTitleChange(results);\r\n }\r\n });\r\n });\r\n }\r\n\r\n const getAllCategories = async () => {\r\n if (categories.length > 0) {\r\n return new Promise<FastCategory[]>(resolve => resolve(categories))\r\n }\r\n\r\n const data = categories || [];\r\n\r\n setCategories(data)\r\n\r\n return data;\r\n }\r\n\r\n const getFormatedData = (response: any,props:any) => {\r\n const results = response;\r\n\r\n results.products = response.items;\r\n delete results.items;\r\n results.totalResults = response.total_results;\r\n delete results.total_results;\r\n if (response.sort_by) {\r\n results.sortBy = response.sort_by;\r\n delete results.sort_by;\r\n }\r\n\r\n if (response.pop_products_no_results) {\r\n results.isNoResults = true;\r\n }\r\n\r\n if (response.total_p) {\r\n results.pageCount = response.total_p;\r\n delete results.total_p;\r\n }\r\n\r\n\r\n if (response.ancestor_categories) {\r\n results.ancestors = response.ancestor_categories;\r\n delete results.ancestor_categories;\r\n }\r\n\r\n if (response.avoid_tag_prefixes) {\r\n results.avoidPrefixList = response.avoid_tag_prefixes.split(\",\");\r\n }\r\n\r\n results.page = response.p || 1;\r\n delete results.p;\r\n\r\n\r\n return results;\r\n };\r\n\r\n\r\n // @ts-ignore\r\n return (\r\n <FastStateFunctions.Provider\r\n value={{\r\n setQuery,\r\n setSort: setSortBy,\r\n setNarrow,\r\n setPage,\r\n getAllCategories,\r\n setCollection: setCollectionID,\r\n setState,\r\n setSearchWithinSearch,\r\n setSegments,\r\n setFlag\r\n }}>\r\n <FastState.Provider\r\n value={{narrow, results, page, query, sortBy, type, collectionID, isLoading, recommendations, singleProducts, isReady, autocomplete}}>\r\n <ThemeProvider theme={{...mainTheme, ...theme}}>\r\n {children}\r\n </ThemeProvider>\r\n </FastState.Provider>\r\n </FastStateFunctions.Provider>\r\n )\r\n};\r\n\r\nexport default FastSimonApi;"]}
1
+ {"version":3,"file":"FastSimonApi.js","sourceRoot":"","sources":["../../../src/components/FastSimonApi/FastSimonApi.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {useEffect, useReducer, useState} from \"react\";\r\nimport {FastState, FastStateFunctions, IsLoading, SetStateProps} from \"./context\";\r\nimport {ThemeProvider} from \"react-jss\";\r\nimport {fastStateReducer} from \"./reducer\";\r\nimport {newObject} from \"../common\";\r\n\r\nimport {SortBy} from \"../../@types/sortBy\";\r\nimport {fullTextSearchProps, FullTextServerResponseAll} from \"../../@types/results\";\r\n\r\nimport {Product} from \"../../@types/product\";\r\nimport {FastCategory, smartCollectionsProps, smartCollectionsResults} from \"../../@types/categories\";\r\nimport {Narrow} from \"../../@types/narrow\";\r\nimport {FullTextSearch} from \"../../services/search\";\r\nimport {SmartCollections} from \"../../services/smartCollections\";\r\n\r\n\r\n\r\n\r\n\r\nexport type AppType = \"SPA\" | \"MPA\";\r\n\r\ninterface Props {\r\n storeID: number;\r\n uuid: string;\r\n type?: AppType;\r\n onReady?: VoidFunction;\r\n cartToken?: string;\r\n defaultSort?: SortBy\r\n collectionID?: string\r\n withProductAttributes?: boolean\r\n promoTiles?: boolean\r\n getTitle?: ({}: { categoryID?: string, query?: string }) => string\r\n isInfiniteScroll?: boolean\r\n useFilters?: boolean\r\n noReport?: boolean\r\n customTitleChange?: (results?: FullTextServerResponseAll | smartCollectionsResults) => void\r\n theme?: Partial<MainTheme>\r\n children?: React.ReactNode;\r\n}\r\n\r\nexport interface MainTheme {\r\n primaryColor: string\r\n lighterPrimary: string\r\n successGreen: string\r\n errorRed: string\r\n loadingYellow: string,\r\n}\r\n\r\nconst mainTheme: MainTheme = {\r\n primaryColor: \"#1976d2\",\r\n lighterPrimary: \"rgba(25,118,210,0.71)\",\r\n successGreen: \"#4BB543\",\r\n errorRed: \"#ff0033\",\r\n loadingYellow: \"#f3b706\",\r\n}\r\n\r\n\r\nconst FastSimonApi: React.FC<Props> = ({\r\n storeID, uuid, children,\r\n defaultSort , promoTiles = false, theme,\r\n withProductAttributes = false, isInfiniteScroll = false, getTitle,\r\n useFilters, noReport = false, customTitleChange, ...props\r\n }) => {\r\n const [state, dispatch] = (useReducer as any)?.(fastStateReducer, {\r\n isReady: false,\r\n type: props.type ?? 'SPA',\r\n page: 1,\r\n query: '',\r\n sortBy: defaultSort,\r\n isLoading: {\r\n products: false,\r\n filters: false,\r\n },\r\n collectionID: props.collectionID,\r\n narrow: undefined,\r\n results: undefined,\r\n recommendations: {},\r\n singleProducts: {},\r\n searchWithinSearch: \"\",\r\n segments: undefined,\r\n flag:\"\"\r\n });\r\n\r\n const [categories, setCategories] = useState<FastCategory[]>([]);\r\n\r\n const {results, isLoading, query, sortBy, type, collectionID, page, narrow, recommendations, singleProducts, isReady, autocomplete, segments\r\n\r\n } = state;\r\n\r\n function setResults(results: FullTextServerResponseAll | smartCollectionsResults | undefined) {\r\n (dispatch as any)?.({type: 'setResults', payload: results});\r\n }\r\n\r\n function mergeResults(results: FullTextServerResponseAll | smartCollectionsResults, infiniteScroll: boolean) {\r\n (dispatch as any)?.({type: 'mergeResults', payload: {results, infiniteScroll}});\r\n }\r\n\r\n function mergeResultsKeepProduct(results: FullTextServerResponseAll | smartCollectionsResults) {\r\n (dispatch as any)?.({type: 'mergeResultsKeepProduct', payload: {results}});\r\n }\r\n\r\n function setIsLoading(isLoading: IsLoading) {\r\n (dispatch as any)?.({type: 'setIsLoading', payload: isLoading});\r\n }\r\n\r\n function setQuery(query: string,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setQuery', payload: query});\r\n\r\n // Create the object with the computed property\r\n let fetchParams = {\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: query,\r\n sortBy: defaultSort,\r\n segments: state.segments,\r\n withProductAttributes:withProductAttributes,\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n\r\n\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n }\r\n function setFlag(flags: string[]) {\r\n (dispatch as any)?.({type: 'setFlag', payload: flags});\r\n\r\n\r\n // Create the object with the computed property\r\n let fetchParams = {\r\n uuid: uuid,\r\n storeID: storeID,\r\n term: state.query,\r\n narrowBy: state.narrow,\r\n sortBy: state.defaultSort,\r\n segments: state.segments,\r\n categoryID: state.collectionID,\r\n withProductAttributes: withProductAttributes,\r\n searchWithinSearch:state.searchWithinSearch\r\n };\r\n\r\n if(flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n // Add the dynamic key to the object\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n\r\n\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n }\r\n\r\n function setSortBy(sortBy: SortBy,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setSortBy', payload: sortBy});\r\n // Create the object with the computed property\r\n let fetchParams = {\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: state.query,\r\n narrowBy: state.narrow,\r\n sortBy: sortBy,\r\n categoryID: state.collectionID,\r\n segments: state.segments,\r\n withProductAttributes:withProductAttributes,\r\n searchWithinSearch:state.searchWithinSearch\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n function setSegments(segments: string[],flags?:string[]) {\r\n (dispatch as any)?.({type: 'setSegments', payload: segments});\r\n\r\n let fetchParams = {\r\n withProductAttributes:withProductAttributes,\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: state.query,\r\n narrowBy: state.narrow,\r\n sortBy: state.sortBy,\r\n categoryID: state.collectionID,\r\n segments: segments,\r\n searchWithinSearch:state.searchWithinSearch\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n function setType(type: AppType) {\r\n (dispatch as any)?.({type: 'setType', payload: type});\r\n }\r\n\r\n function setCollectionID(collectionID: string,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setCollectionID', payload: collectionID});\r\n\r\n // Create the object with the computed property\r\n let fetchParams = {\r\n uuid:uuid,\r\n storeID:storeID,\r\n categoryID: collectionID,\r\n sortBy: defaultSort,\r\n segments: state.segments\r\n };\r\n\r\n if(flags && flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n // Add the dynamic key to the object\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n\r\n\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n\r\n function setPage(page: number,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setPage', payload: page});\r\n\r\n let fetchParams = {\r\n withProductAttributes:withProductAttributes,\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: state.query,\r\n narrowBy: state.narrow,\r\n sortBy: state.sortBy,\r\n categoryID: state.collectionID,\r\n page: page,\r\n segments: state.segments,\r\n searchWithinSearch:state.searchWithinSearch\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n\r\n function setNarrow(narrow: Narrow[] | undefined,flags?:string[]) {\r\n (dispatch as any)?.({type: 'setNarrow', payload: narrow});\r\n\r\n let fetchParams = {\r\n withProductAttributes:withProductAttributes,\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: state.query,\r\n narrowBy: narrow,\r\n sortBy: state.sortBy,\r\n categoryID: state.collectionID,\r\n segments: state.segments,\r\n searchWithinSearch:state.searchWithinSearch\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n\r\n function setState({...newState}: SetStateProps) {\r\n console.log(\"state\", state);\r\n console.log(\"setState\", newState);\r\n\r\n (dispatch as any)?.({type: 'setState', payload: newState});\r\n\r\n fetchResults({\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: newState.query,\r\n narrowBy: newState.narrow?newState.narrow:undefined,\r\n sortBy: newState.sortBy ?? defaultSort,\r\n categoryID: newState.collectionID,\r\n page: newState.page,\r\n segments: newState.segments\r\n }, Boolean(!results && isInfiniteScroll && newState.page && newState.page > 1));\r\n }\r\n\r\n\r\n function setSingleProducts(products: Product[]) {\r\n (dispatch as any)?.({type: \"setSingleProducts\", payload: products});\r\n }\r\n\r\n\r\n function setReady(isReady: boolean) {\r\n (dispatch as any)?.({type: \"setReady\", payload: isReady});\r\n }\r\n\r\n function setSearchWithinSearch(searchWithinSearch: string,flags?:string[]) {\r\n (dispatch as any)?.({type: \"setSearchWithinSearch\", payload: searchWithinSearch});\r\n\r\n let fetchParams = {\r\n withProductAttributes:withProductAttributes,\r\n uuid:uuid,\r\n storeID:storeID,\r\n term: query,\r\n narrowBy: state.narrow,\r\n sortBy: state.sortBy,\r\n categoryID: state.collectionID,\r\n segments: state.segments,\r\n searchWithinSearch:searchWithinSearch\r\n };\r\n\r\n if(flags&&flags.length>0)\r\n {\r\n flags.forEach((f)=>{\r\n let flagProp = \"disable_\" + f;\r\n\r\n // @ts-ignore\r\n fetchParams[flagProp as any] = true;\r\n });\r\n }\r\n fetchResults(fetchParams, isInfiniteScroll);\r\n\r\n }\r\n\r\n function fetchResults(props: {\r\n uuid:string, storeID:number, term?: string, page?: number, narrowBy?: Narrow[] | undefined,\r\n sortBy?: SortBy, categoryID?: string, searchWithinSearch?: string, segments?: string[] ,withProductAttributes?:boolean,\r\n disable_semantics?:number,disable_merchandising?:number,disable_strategies?:number,disable_turbolinks?:number,disable_personalization?:number}, isInfiniteScroll: boolean) {\r\n\r\n // on first request check if we need to fetch more then 1 product\r\n\r\n if (props.term) {\r\n onSearch(newObject({\r\n ...props,\r\n page: props.page || 1,\r\n infiniteScrollPage: isInfiniteScroll,\r\n }) as Omit<fullTextSearchProps, \"callback\">, isInfiniteScroll);\r\n } else if (props.categoryID) {\r\n onCollection(newObject({\r\n ...props,\r\n page: props.page || 1,\r\n infiniteScrollPage: isInfiniteScroll,\r\n }) as Omit<smartCollectionsProps, \"callback\">, isInfiniteScroll);\r\n }\r\n\r\n return;\r\n\r\n }\r\n\r\n\r\n\r\n useEffect(() => {\r\n function handleSetQueryEvent(event: any) {\r\n setQuery(event.detail);\r\n }\r\n\r\n function handleSetFlagEvent(event: any){\r\n setFlag(event.details)\r\n\r\n }\r\n function handleSetCollectionEvent(event: any) {\r\n setCollectionID(event.detail);\r\n }\r\n\r\n function handleSetCollectionURLEvent(event: any) {\r\n getAllCategories().then(r => {\r\n const id = r.find(c => c.u === event.detail)?.id;\r\n\r\n if (id) {\r\n setCollectionID(id);\r\n return;\r\n }\r\n\r\n window.location.href = event.detail;\r\n })\r\n }\r\n\r\n function handleSetPageEvent(event: any) {\r\n setPage(event.detail);\r\n }\r\n\r\n function handleSetSortEvent(event: any) {\r\n setSortBy(event.detail);\r\n }\r\n\r\n function handleSetNarrowEvent(event: any) {\r\n setNarrow(event.detail);\r\n }\r\n\r\n function handleSetSegmentsEvent(event: any) {\r\n setSegments(event.detail);\r\n }\r\n window.addEventListener('fast-simon-update-query', handleSetQueryEvent);\r\n window.addEventListener('fast-simon-update-collection', handleSetCollectionEvent);\r\n window.addEventListener('fast-simon-update-collection-url', handleSetCollectionURLEvent);\r\n window.addEventListener('fast-simon-update-page', handleSetPageEvent);\r\n window.addEventListener('fast-simon-update-sort', handleSetSortEvent);\r\n window.addEventListener('fast-simon-update-narrow', handleSetNarrowEvent);\r\n window.addEventListener('fast-simon-update-segments', handleSetSegmentsEvent);\r\n window.addEventListener('fast-simon-update-flag', handleSetFlagEvent);\r\n\r\n return () => {\r\n window.removeEventListener('fast-simon-update-query', handleSetQueryEvent);\r\n window.removeEventListener('fast-simon-update-collection', handleSetCollectionEvent);\r\n window.removeEventListener('fast-simon-update-collection-url', handleSetCollectionURLEvent);\r\n window.removeEventListener('fast-simon-update-page', handleSetPageEvent);\r\n window.removeEventListener('fast-simon-update-sort', handleSetSortEvent);\r\n window.removeEventListener('fast-simon-update-narrow', handleSetNarrowEvent);\r\n window.removeEventListener('fast-simon-update-segments', handleSetSegmentsEvent);\r\n window.removeEventListener('fast-simon-update-flag', handleSetFlagEvent);\r\n }\r\n\r\n }, []);\r\n\r\n const onSearch = (props: Omit<fullTextSearchProps, \"callback\">, isInfiniteScroll: boolean) => {\r\n setIsLoading({products: true, filters: true});\r\n FullTextSearch.getReasoningFullTextSearch({\r\n ...props,\r\n withAttributes: promoTiles || withProductAttributes,\r\n }).then((response) => {\r\n response=getFormatedData(response,props);\r\n\r\n mergeResults(response, isInfiniteScroll);\r\n\r\n if (!customTitleChange) {\r\n document.title = `Search Result for ${query}`;\r\n } else {\r\n customTitleChange(results);\r\n }\r\n\r\n if (!response) {\r\n setIsLoading({\r\n filters: true, products: false\r\n });\r\n } else {\r\n setIsLoading({\r\n filters: false, products: false\r\n });\r\n }\r\n });\r\n }\r\n\r\n const onCollection = (props: Omit<smartCollectionsProps, \"callback\">, isInfiniteScroll: boolean) => {\r\n setIsLoading({products: true, filters: true});\r\n SmartCollections.getSmartCollections({\r\n ...props,\r\n withAttributes: promoTiles || withProductAttributes})\r\n .then( (response) => {\r\n response=getFormatedData(response,props);\r\n\r\n mergeResults(response, isInfiniteScroll);\r\n\r\n if (!response) {\r\n setIsLoading({\r\n filters: true, products: false\r\n });\r\n } else {\r\n setIsLoading({\r\n filters: false, products: false\r\n });\r\n }\r\n\r\n getAllCategories().then(r => {\r\n if (!customTitleChange) {\r\n document.title = r.find(c => c.id === props.categoryID)?.l ?? \"Collection\";\r\n } else {\r\n customTitleChange(results);\r\n }\r\n });\r\n });\r\n }\r\n\r\n const getAllCategories = async () => {\r\n if (categories.length > 0) {\r\n return new Promise<FastCategory[]>(resolve => resolve(categories))\r\n }\r\n\r\n const data = categories || [];\r\n\r\n setCategories(data)\r\n\r\n return data;\r\n }\r\n\r\n const getFormatedData = (response: any,props:any) => {\r\n const results = response;\r\n\r\n results.products = response.items;\r\n delete results.items;\r\n results.totalResults = response.total_results;\r\n delete results.total_results;\r\n if (response.sort_by) {\r\n results.sortBy = response.sort_by;\r\n delete results.sort_by;\r\n }\r\n\r\n if (response.pop_products_no_results) {\r\n results.isNoResults = true;\r\n }\r\n\r\n if (response.total_p) {\r\n results.pageCount = response.total_p;\r\n delete results.total_p;\r\n }\r\n\r\n\r\n if (response.ancestor_categories) {\r\n results.ancestors = response.ancestor_categories;\r\n delete results.ancestor_categories;\r\n }\r\n\r\n if (response.avoid_tag_prefixes) {\r\n results.avoidPrefixList = response.avoid_tag_prefixes.split(\",\");\r\n }\r\n\r\n results.page = response.p || 1;\r\n delete results.p;\r\n\r\n\r\n return results;\r\n };\r\n\r\n\r\n // @ts-ignore\r\n return (\r\n <FastStateFunctions.Provider\r\n value={{\r\n setQuery,\r\n setSort: setSortBy,\r\n setNarrow,\r\n setPage,\r\n getAllCategories,\r\n setCollection: setCollectionID,\r\n setState,\r\n setSearchWithinSearch,\r\n setSegments,\r\n setFlag\r\n }}>\r\n <FastState.Provider\r\n value={{narrow, results, page, query, sortBy, type, collectionID, isLoading, recommendations, singleProducts, isReady, autocomplete}}>\r\n <ThemeProvider theme={{...mainTheme, ...theme}}>\r\n {children}\r\n </ThemeProvider>\r\n </FastState.Provider>\r\n </FastStateFunctions.Provider>\r\n )\r\n};\r\n\r\nexport default FastSimonApi;"]}
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  };
10
10
  import { API } from "./API";
11
11
  import { getInternalURL } from "../utils/getInternalURL";
12
- const BASE_FS_API_URL = "https://internal-v3joil6oqa-uc.a.run.app/search";
12
+ const BASE_FS_API_URL = "https://internal-v3joil6oqa-uc.a.run.app";
13
13
  export const Products = {
14
14
  getProductByIds: ({ uuid, storeID, withAttributes, ids }) => __awaiter(void 0, void 0, void 0, function* () {
15
15
  const params = {
@@ -20,7 +20,7 @@ export const Products = {
20
20
  if (internal_url == "") {
21
21
  internal_url = BASE_FS_API_URL;
22
22
  }
23
- const url = `${internal_url}/get_format_products?UUID=${uuid}&store_id=${storeID}`;
23
+ const url = `${internal_url}/search/get_format_products?UUID=${uuid}&store_id=${storeID}`;
24
24
  return yield API.post({
25
25
  url: url,
26
26
  data: params,
@@ -1 +1 @@
1
- {"version":3,"file":"products.js","sourceRoot":"","sources":["../../src/services/products.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAEvD,MAAM,eAAe,GAAG,iDAAiD,CAAC;AAO1E,MAAM,CAAC,MAAM,QAAQ,GAAG;IAEpB,eAAe,EAAE,CAAO,EAAC,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,EAAmB,EAAE,EAAE;QAC9E,MAAM,MAAM,GAAwB;YAChC,QAAQ,EAAE,GAAG;YACb,uBAAuB,EAAE,cAAc;SAE1C,CAAC;QACF,IAAI,YAAY,GAAC,cAAc,EAAE,CAAC;QAClC,IAAG,YAAY,IAAE,EAAE,EACnB;YACI,YAAY,GAAC,eAAe,CAAC;SAChC;QACD,MAAM,GAAG,GAAG,GAAG,YAAY,6BAA6B,IAAI,aAAa,OAAO,EAAE,CAAC;QACnF,OAAO,MAAM,GAAG,CAAC,IAAI,CAAC;YAClB,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE;SACxD,CAAC,CAAC;IACP,CAAC,CAAA;CACJ,CAAA","sourcesContent":["import {API} from \"./API\";\r\nimport {getInternalURL} from \"../utils/getInternalURL\";\r\n\r\nconst BASE_FS_API_URL = \"https://internal-v3joil6oqa-uc.a.run.app/search\";\r\nexport interface getProductsProps {\r\n storeID: number\r\n uuid: string\r\n withAttributes:boolean\r\n ids: number[]\r\n}\r\nexport const Products = {\r\n\r\n getProductByIds: async ({uuid, storeID, withAttributes, ids}: getProductsProps) => {\r\n const params: Record<string, any> = {\r\n products: ids,\r\n with_product_attributes: withAttributes\r\n\r\n };\r\n var internal_url=getInternalURL();\r\n if(internal_url==\"\")\r\n {\r\n internal_url=BASE_FS_API_URL;\r\n }\r\n const url = `${internal_url}/get_format_products?UUID=${uuid}&store_id=${storeID}`;\r\n return await API.post({\r\n url: url,\r\n data: params,\r\n config: { headers: { 'content-type': 'text/plain' } }\r\n });\r\n }\r\n}"]}
1
+ {"version":3,"file":"products.js","sourceRoot":"","sources":["../../src/services/products.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAEvD,MAAM,eAAe,GAAG,0CAA0C,CAAC;AAOnE,MAAM,CAAC,MAAM,QAAQ,GAAG;IAEpB,eAAe,EAAE,CAAO,EAAC,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,EAAmB,EAAE,EAAE;QAC9E,MAAM,MAAM,GAAwB;YAChC,QAAQ,EAAE,GAAG;YACb,uBAAuB,EAAE,cAAc;SAE1C,CAAC;QACF,IAAI,YAAY,GAAC,cAAc,EAAE,CAAC;QAClC,IAAG,YAAY,IAAE,EAAE,EACnB;YACI,YAAY,GAAC,eAAe,CAAC;SAChC;QACD,MAAM,GAAG,GAAG,GAAG,YAAY,oCAAoC,IAAI,aAAa,OAAO,EAAE,CAAC;QAC1F,OAAO,MAAM,GAAG,CAAC,IAAI,CAAC;YAClB,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,EAAE;SACxD,CAAC,CAAC;IACP,CAAC,CAAA;CACJ,CAAA","sourcesContent":["import {API} from \"./API\";\r\nimport {getInternalURL} from \"../utils/getInternalURL\";\r\n\r\nconst BASE_FS_API_URL = \"https://internal-v3joil6oqa-uc.a.run.app\";\r\nexport interface getProductsProps {\r\n storeID: number\r\n uuid: string\r\n withAttributes:boolean\r\n ids: number[]\r\n}\r\nexport const Products = {\r\n\r\n getProductByIds: async ({uuid, storeID, withAttributes, ids}: getProductsProps) => {\r\n const params: Record<string, any> = {\r\n products: ids,\r\n with_product_attributes: withAttributes\r\n\r\n };\r\n var internal_url=getInternalURL();\r\n if(internal_url==\"\")\r\n {\r\n internal_url=BASE_FS_API_URL;\r\n }\r\n const url = `${internal_url}/search/get_format_products?UUID=${uuid}&store_id=${storeID}`;\r\n return await API.post({\r\n url: url,\r\n data: params,\r\n config: { headers: { 'content-type': 'text/plain' } }\r\n });\r\n }\r\n}"]}
@@ -11,7 +11,7 @@ import { API, fastSimonGet } from "./API";
11
11
  import { FacetsParser } from "@fast-simon/utilities";
12
12
  import { getReasoningVectorSearch } from "../utils/getLSVectorSearch";
13
13
  import { getInternalURL } from "../utils/getInternalURL";
14
- const BASE_URL = "https://internal-v3joil6oqa-uc.a.run.app/search";
14
+ const BASE_URL = "https://internal-v3joil6oqa-uc.a.run.app";
15
15
  export const FullTextSearch = {
16
16
  getFullTextSearch: ({ uuid, storeID, facetRequired, narrow, page, productsPerPage, withAttributes, query, searchWithinSearch, visualMerchandising, lastProduct }) => __awaiter(void 0, void 0, void 0, function* () {
17
17
  const params = {
@@ -28,7 +28,7 @@ export const FullTextSearch = {
28
28
  if (lastProduct) {
29
29
  params['last_product'] = lastProduct;
30
30
  }
31
- const res = yield API.post({ url: BASE_URL + '/full_text_search_editor', data: params, config: { headers: { 'content-type': 'text/plain' } } });
31
+ const res = yield API.post({ url: BASE_URL + '/search/full_text_search_editor', data: params, config: { headers: { 'content-type': 'text/plain' } } });
32
32
  return {
33
33
  data: res,
34
34
  getFacets: () => __awaiter(void 0, void 0, void 0, function* () {
@@ -59,7 +59,7 @@ export const FullTextSearch = {
59
59
  search_within_search: searchWithinSearch,
60
60
  visual_merchandising: JSON.stringify(visualMerchandising).replaceAll('"[', '[').replaceAll(']"', ']')
61
61
  };
62
- const res = yield fastSimonGet(BASE_URL, 'full_text_search_editor', params);
62
+ const res = yield fastSimonGet(BASE_URL, '/search/full_text_search_editor', params);
63
63
  return transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes);
64
64
  }),
65
65
  getReasoningFullTextSearch: ({ uuid, storeID, cdn, facetRequired, narrowBy, page, productsPerPage, term, sortBy, withAttributes, recent, searchWithinSearch, segments, disable_semantics, disable_merchandising, disable_strategies, disable_turbolinks, disable_personalization, disable_merchandising_rules }) => {
@@ -92,7 +92,7 @@ export const FullTextSearch = {
92
92
  params["vector_search_reasoning"] = (_a = getReasoningVectorSearch()) !== null && _a !== void 0 ? _a : undefined;
93
93
  params["segments"] = JSON.stringify(segments) || undefined;
94
94
  return API.get({
95
- url: `${internal_url}/full_text_search_reasoning`,
95
+ url: `${internal_url}/search/full_text_search_reasoning`,
96
96
  params,
97
97
  });
98
98
  },
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/services/search.ts"],"names":[],"mappings":"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","sourcesContent":["import {CategoryNavigationResponse} from \"../@types/categoriesNavigation\";\r\nimport {API, fastSimonGet} from \"./API\";\r\nimport {FacetsParser, ServerFacet} from \"@fast-simon/utilities\"\r\nimport {fullTextSearchProps, FullTextServerResponseAll} from \"../@types/results\";\r\nimport {getReasoningVectorSearch} from \"../utils/getLSVectorSearch\";\r\nimport {getInternalURL} from \"../utils/getInternalURL\";\r\n\r\n\r\nconst BASE_URL = \"https://internal-v3joil6oqa-uc.a.run.app/search\";\r\n\r\nexport const FullTextSearch = {\r\n getFullTextSearch: async ({\r\n uuid,\r\n storeID,\r\n facetRequired,\r\n narrow,\r\n page,\r\n productsPerPage,\r\n withAttributes,\r\n query,\r\n searchWithinSearch,\r\n visualMerchandising,\r\n lastProduct\r\n }: any) => {\r\n\r\n const params: Record<string, any> = {\r\n UUID: uuid,\r\n store_id: storeID,\r\n facets_required: 1,\r\n q: searchWithinSearch || query,\r\n page_num: page ?? 1,\r\n with_product_attributes: withAttributes,\r\n narrow: JSON.stringify(narrow),\r\n products_per_page: productsPerPage,\r\n visual_merchandising: !searchWithinSearch ? JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']') : undefined\r\n };\r\n if(lastProduct) {\r\n params['last_product'] = lastProduct\r\n }\r\n const res = await API.post<CategoryNavigationResponse>({url: BASE_URL+'/full_text_search_editor', data: params, config: {headers: {'content-type': 'text/plain'}}});\r\n return {\r\n data: res,\r\n getFacets: async () => (res?.facets_completed ? transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes) : await FullTextSearch.fullTextFacetsOnly({ uuid,\r\n storeID,\r\n facetRequired,\r\n narrow,\r\n page,\r\n productsPerPage,\r\n withAttributes,\r\n searchWithinSearch,\r\n visualMerchandising,\r\n lastProduct,\r\n query})\r\n )\r\n };\r\n },\r\n fullTextFacetsOnly: async ({\r\n uuid,\r\n storeID,\r\n narrow,\r\n page,\r\n productsPerPage,\r\n withAttributes,\r\n collectionID,\r\n searchWithinSearch,\r\n visualMerchandising,\r\n query\r\n }: any) => {\r\n\r\n const params: Record<string, any> = {\r\n UUID: uuid,\r\n store_id: storeID,\r\n facets_required: 2,\r\n q: query,\r\n page_num: page ?? 1,\r\n with_product_attributes: withAttributes,\r\n narrow: JSON.stringify(narrow),\r\n products_per_page: productsPerPage,\r\n search_within_search: searchWithinSearch,\r\n visual_merchandising: JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']')\r\n };\r\n\r\n const res = await fastSimonGet<CategoryNavigationResponse>(BASE_URL, 'full_text_search_editor', params);\r\n\r\n return transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes);\r\n },\r\n getReasoningFullTextSearch: ({\r\n uuid, storeID, cdn,\r\n facetRequired, narrowBy, page,\r\n productsPerPage, term, sortBy\r\n , withAttributes, recent, searchWithinSearch, segments,\r\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_personalization,disable_merchandising_rules\r\n\r\n }: fullTextSearchProps) => {\r\n var internal_url=getInternalURL();\r\n if(internal_url==\"\")\r\n {\r\n internal_url=BASE_URL;\r\n }\r\n\r\n const params: Record<string, any> = {\r\n UUID: uuid,\r\n store_id: storeID,\r\n cdn_cache_key: cdn,\r\n facets_required: facetRequired,\r\n q: term,\r\n page_num: page,\r\n with_product_attributes: withAttributes,\r\n narrow: JSON.stringify(narrowBy),\r\n products_per_page: productsPerPage,\r\n sort_by: sortBy,\r\n sp: recent,\r\n m: 1,\r\n search_within_search: searchWithinSearch,\r\n disable_semantics:disable_semantics?1:0,\r\n disable_merchandising:disable_merchandising?1:0,\r\n disable_strategies:disable_strategies?1:0,\r\n disable_turbolinks:disable_turbolinks?1:0,\r\n disable_personalization:disable_personalization?1:0,\r\n disable_merchandising_rules:disable_merchandising_rules?1:0\r\n };\r\n\r\n\r\n params[\"vector_search_reasoning\"] = getReasoningVectorSearch()??undefined;\r\n params[\"segments\"] = JSON.stringify(segments) || undefined;\r\n return API.get<FullTextServerResponseAll>({\r\n url: `${internal_url}/full_text_search_reasoning`,\r\n params,\r\n });\r\n\r\n },\r\n }\r\n;\r\nexport const transformFacetsOnlyData = (r: ServerFacet[], avoidTagPrefixes?: string) => new FacetsParser().parseFacets(r, avoidTagPrefixes ? avoidTagPrefixes.split(\",\") : []);"]}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/services/search.ts"],"names":[],"mappings":"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","sourcesContent":["import {CategoryNavigationResponse} from \"../@types/categoriesNavigation\";\r\nimport {API, fastSimonGet} from \"./API\";\r\nimport {FacetsParser, ServerFacet} from \"@fast-simon/utilities\"\r\nimport {fullTextSearchProps, FullTextServerResponseAll} from \"../@types/results\";\r\nimport {getReasoningVectorSearch} from \"../utils/getLSVectorSearch\";\r\nimport {getInternalURL} from \"../utils/getInternalURL\";\r\n\r\n\r\nconst BASE_URL = \"https://internal-v3joil6oqa-uc.a.run.app\";\r\n\r\nexport const FullTextSearch = {\r\n getFullTextSearch: async ({\r\n uuid,\r\n storeID,\r\n facetRequired,\r\n narrow,\r\n page,\r\n productsPerPage,\r\n withAttributes,\r\n query,\r\n searchWithinSearch,\r\n visualMerchandising,\r\n lastProduct\r\n }: any) => {\r\n\r\n const params: Record<string, any> = {\r\n UUID: uuid,\r\n store_id: storeID,\r\n facets_required: 1,\r\n q: searchWithinSearch || query,\r\n page_num: page ?? 1,\r\n with_product_attributes: withAttributes,\r\n narrow: JSON.stringify(narrow),\r\n products_per_page: productsPerPage,\r\n visual_merchandising: !searchWithinSearch ? JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']') : undefined\r\n };\r\n if(lastProduct) {\r\n params['last_product'] = lastProduct\r\n }\r\n const res = await API.post<CategoryNavigationResponse>({url: BASE_URL+'/search/full_text_search_editor', data: params, config: {headers: {'content-type': 'text/plain'}}});\r\n return {\r\n data: res,\r\n getFacets: async () => (res?.facets_completed ? transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes) : await FullTextSearch.fullTextFacetsOnly({ uuid,\r\n storeID,\r\n facetRequired,\r\n narrow,\r\n page,\r\n productsPerPage,\r\n withAttributes,\r\n searchWithinSearch,\r\n visualMerchandising,\r\n lastProduct,\r\n query})\r\n )\r\n };\r\n },\r\n fullTextFacetsOnly: async ({\r\n uuid,\r\n storeID,\r\n narrow,\r\n page,\r\n productsPerPage,\r\n withAttributes,\r\n collectionID,\r\n searchWithinSearch,\r\n visualMerchandising,\r\n query\r\n }: any) => {\r\n\r\n const params: Record<string, any> = {\r\n UUID: uuid,\r\n store_id: storeID,\r\n facets_required: 2,\r\n q: query,\r\n page_num: page ?? 1,\r\n with_product_attributes: withAttributes,\r\n narrow: JSON.stringify(narrow),\r\n products_per_page: productsPerPage,\r\n search_within_search: searchWithinSearch,\r\n visual_merchandising: JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']')\r\n };\r\n\r\n const res = await fastSimonGet<CategoryNavigationResponse>(BASE_URL, '/search/full_text_search_editor', params);\r\n\r\n return transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes);\r\n },\r\n getReasoningFullTextSearch: ({\r\n uuid, storeID, cdn,\r\n facetRequired, narrowBy, page,\r\n productsPerPage, term, sortBy\r\n , withAttributes, recent, searchWithinSearch, segments,\r\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_personalization,disable_merchandising_rules\r\n\r\n }: fullTextSearchProps) => {\r\n var internal_url=getInternalURL();\r\n if(internal_url==\"\")\r\n {\r\n internal_url=BASE_URL;\r\n }\r\n\r\n const params: Record<string, any> = {\r\n UUID: uuid,\r\n store_id: storeID,\r\n cdn_cache_key: cdn,\r\n facets_required: facetRequired,\r\n q: term,\r\n page_num: page,\r\n with_product_attributes: withAttributes,\r\n narrow: JSON.stringify(narrowBy),\r\n products_per_page: productsPerPage,\r\n sort_by: sortBy,\r\n sp: recent,\r\n m: 1,\r\n search_within_search: searchWithinSearch,\r\n disable_semantics:disable_semantics?1:0,\r\n disable_merchandising:disable_merchandising?1:0,\r\n disable_strategies:disable_strategies?1:0,\r\n disable_turbolinks:disable_turbolinks?1:0,\r\n disable_personalization:disable_personalization?1:0,\r\n disable_merchandising_rules:disable_merchandising_rules?1:0\r\n };\r\n\r\n\r\n params[\"vector_search_reasoning\"] = getReasoningVectorSearch()??undefined;\r\n params[\"segments\"] = JSON.stringify(segments) || undefined;\r\n return API.get<FullTextServerResponseAll>({\r\n url: `${internal_url}/search/full_text_search_reasoning`,\r\n params,\r\n });\r\n\r\n },\r\n }\r\n;\r\nexport const transformFacetsOnlyData = (r: ServerFacet[], avoidTagPrefixes?: string) => new FacetsParser().parseFacets(r, avoidTagPrefixes ? avoidTagPrefixes.split(\",\") : []);"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fast-simon/dashboard-utilities",
3
- "version": "1.0.43",
3
+ "version": "1.0.45",
4
4
  "scripts": {
5
5
  "dev": "vite",
6
6
  "preview": "vite preview",