@fast-simon/dashboard-utilities 1.0.86 → 1.0.87
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/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/services/autocomplete.js +7 -15
- package/dist/services/autocomplete.js.map +1 -1
- package/dist/services/search.js +13 -46
- package/dist/services/search.js.map +1 -1
- package/dist/services/smartCollections.js +14 -47
- package/dist/services/smartCollections.js.map +1 -1
- package/dist/utils/getCacheSettings.d.ts +16 -0
- package/dist/utils/getCacheSettings.js +26 -0
- package/dist/utils/getCacheSettings.js.map +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -36,5 +36,6 @@ import { FeaturedRanking } from "@fast-simon/utilities/lib/@types/product";
|
|
|
36
36
|
import { Products } from "./services/products";
|
|
37
37
|
import { getLSVectorSearchDict, getLSVectorSearchOn } from "./utils/getLSVectorSearch";
|
|
38
38
|
import { AutocompleteReasoningResponse } from "./@types/autocomplete";
|
|
39
|
+
import { getUseCacheSetting, setUseCacheSetting } from "./utils/getCacheSettings";
|
|
39
40
|
export type { MenuItemName, CustomClasses, SideMenuType, SideMenuItem, ProductLabelType, Banner, EditorProduct, IconProps, ServerProduct, FullTextServerResponseAll, smartCollectionsResults, AutocompleteReasoningResponse, FeaturedRanking };
|
|
40
|
-
export { BackOfficeFiltersMenu, InStoreFiltersMenu, Droppable, DndContextWrapper, SortableItem, ProductGrid, RenderIfVisible, useDragToSelect, LandingPage, FullTextSearch, BackOfficeFiltersIcon, BannersIcon, HelpIcon, InStoreFiltersIcon, PromoteIcon, RestoreIcon, RemoveIcon, GeneralIcon, videoFormats, isEditorProduct, useFastState, useFastStateFunctions, FastSimonApi, MainTheme, Products, getFormatProducts, useProductsPerRow, ProductLabel, CustomTagsFilters, SelectCard, getLSVectorSearchOn, getLSVectorSearchDict };
|
|
41
|
+
export { BackOfficeFiltersMenu, InStoreFiltersMenu, Droppable, DndContextWrapper, SortableItem, ProductGrid, RenderIfVisible, useDragToSelect, LandingPage, FullTextSearch, BackOfficeFiltersIcon, BannersIcon, HelpIcon, InStoreFiltersIcon, PromoteIcon, RestoreIcon, RemoveIcon, GeneralIcon, videoFormats, isEditorProduct, useFastState, useFastStateFunctions, FastSimonApi, MainTheme, Products, getFormatProducts, useProductsPerRow, ProductLabel, CustomTagsFilters, SelectCard, getLSVectorSearchOn, getLSVectorSearchDict, getUseCacheSetting, setUseCacheSetting };
|
package/dist/index.js
CHANGED
|
@@ -28,5 +28,6 @@ import FastSimonApi from "./components/FastSimonApi/FastSimonApi";
|
|
|
28
28
|
import MainTheme from "./components/FastSimonApi";
|
|
29
29
|
import { Products } from "./services/products";
|
|
30
30
|
import { getLSVectorSearchDict, getLSVectorSearchOn } from "./utils/getLSVectorSearch";
|
|
31
|
-
|
|
31
|
+
import { getUseCacheSetting, setUseCacheSetting } from "./utils/getCacheSettings";
|
|
32
|
+
export { BackOfficeFiltersMenu, InStoreFiltersMenu, Droppable, DndContextWrapper, SortableItem, ProductGrid, RenderIfVisible, useDragToSelect, LandingPage, FullTextSearch, BackOfficeFiltersIcon, BannersIcon, HelpIcon, InStoreFiltersIcon, PromoteIcon, RestoreIcon, RemoveIcon, GeneralIcon, videoFormats, isEditorProduct, useFastState, useFastStateFunctions, FastSimonApi, MainTheme, Products, getFormatProducts, useProductsPerRow, ProductLabel, CustomTagsFilters, SelectCard, getLSVectorSearchOn, getLSVectorSearchDict, getUseCacheSetting, setUseCacheSetting };
|
|
32
33
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAS,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAgB,eAAe,EAAC,MAAM,wBAAwB,CAAA;AAGrE,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAA;AACnE,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAA;AAC/C,OAAO,qBAAqB,MAAM,oCAAoC,CAAA;AACtE,OAAO,kBAAkB,MAAM,iCAAiC,CAAA;AAChE,OAAO,iBAAiB,MAAM,4CAA4C,CAAA;AAC1E,OAAO,SAAS,MAAM,oCAAoC,CAAA;AAC1D,OAAO,YAAY,MAAM,wCAAwC,CAAA;AACjE,OAAO,EAAC,YAAY,EAAC,MAAM,uCAAuC,CAAA;AAClE,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,UAAU,MAAM,oCAAoC,CAAC;AAC5D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAC,YAAY,EAAE,qBAAqB,EAAC,MAAM,2BAA2B,CAAA;AAI7E,OAAO,YAAY,MAAM,wCAAwC,CAAA;AACjE,OAAO,SAAS,MAAM,2BAA2B,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAC,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAS,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAgB,eAAe,EAAC,MAAM,wBAAwB,CAAA;AAGrE,OAAO,EAAC,qBAAqB,EAAC,MAAM,+BAA+B,CAAA;AACnE,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAC,UAAU,EAAC,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAA;AAC/C,OAAO,qBAAqB,MAAM,oCAAoC,CAAA;AACtE,OAAO,kBAAkB,MAAM,iCAAiC,CAAA;AAChE,OAAO,iBAAiB,MAAM,4CAA4C,CAAA;AAC1E,OAAO,SAAS,MAAM,oCAAoC,CAAA;AAC1D,OAAO,YAAY,MAAM,wCAAwC,CAAA;AACjE,OAAO,EAAC,YAAY,EAAC,MAAM,uCAAuC,CAAA;AAClE,OAAO,WAAW,MAAM,sCAAsC,CAAC;AAC/D,OAAO,UAAU,MAAM,oCAAoC,CAAC;AAC5D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAC,eAAe,EAAC,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAC,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAC,YAAY,EAAE,qBAAqB,EAAC,MAAM,2BAA2B,CAAA;AAI7E,OAAO,YAAY,MAAM,wCAAwC,CAAA;AACjE,OAAO,SAAS,MAAM,2BAA2B,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAC,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAErF,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAmB/E,OAAO,EACH,qBAAqB,EAAE,kBAAkB,EAAE,SAAS,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EACnH,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,qBAAqB,EAAE,WAAW,EAAE,QAAQ,EAAE,kBAAkB,EAAE,WAAW,EAC3H,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAC,YAAY,EAAE,qBAAqB,EAAC,YAAY,EAAC,SAAS,EAC9H,QAAQ,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,mBAAmB,EAAC,qBAAqB,EACtI,kBAAkB,EAAE,kBAAkB,EACzC,CAAC","sourcesContent":["import {CustomClasses, SideMenuType, SideMenuItem, MenuItemName} from \"./@types/sideMenu\"\nimport {ProductLabelType} from \"./@types/productLabel\"\nimport {videoFormats, Banner} from \"./@types/banner\"\nimport {EditorProduct, isEditorProduct} from \"./@types/editorProduct\"\nimport {IconProps} from \"./@types/iconProps\"\n\nimport {BackOfficeFiltersIcon} from \"./icons/BackOfficeFiltersIcon\"\nimport {BannersIcon} from \"./icons/BannersIcon\"\nimport {HelpIcon} from \"./icons/HelpIcon\"\nimport {InStoreFiltersIcon} from \"./icons/InStoreFiltersIcon\"\nimport {PromoteIcon} from \"./icons/PromoteIcon\"\nimport {RemoveIcon} from \"./icons/RemoveIcon\"\nimport {RestoreIcon} from \"./icons/RestoreIcon\"\nimport {GeneralIcon} from \"./icons/GeneralIcon\"\nimport BackOfficeFiltersMenu from './components/BackOfficeFiltersMenu'\nimport InStoreFiltersMenu from './components/InStoreFiltersMenu'\nimport DndContextWrapper from './components/DragAndDrop/DndContextWrapper'\nimport Droppable from './components/DragAndDrop/Droppable'\nimport ProductLabel from './components/ProductLabel/ProductLabel'\nimport {SortableItem} from './components/DragAndDrop/SortableItem'\nimport ProductGrid from \"./components/productGrid/ProductGrid\";\nimport SelectCard from \"./components/SelectCard/SelectCard\";\nimport RenderIfVisible from \"./components/RenderIfVisible\";\nimport {useDragToSelect} from \"./utils/useDragToSelect\";\nimport {CustomTagsFilters} from \"./utils/customTagsFilters\";\nimport {useProductsPerRow} from \"./utils/useProductsPerRow\";\nimport { LandingPage } from \"./services/landingPage\";\nimport { FullTextSearch } from \"./services/search\";\nimport { getFormatProducts } from \"./services/getFormatProducts\";\nimport {useFastState, useFastStateFunctions} from \"./components/FastSimonApi\"\nimport { ServerProduct } from \"./@types/product\"\nimport { FullTextServerResponseAll } from \"./@types/results\"\nimport { smartCollectionsResults } from \"./@types/categories\"\nimport FastSimonApi from \"./components/FastSimonApi/FastSimonApi\"\nimport MainTheme from \"./components/FastSimonApi\"\nimport { FeaturedRanking } from \"@fast-simon/utilities/lib/@types/product\"\nimport { Products } from \"./services/products\"\nimport {getLSVectorSearchDict, getLSVectorSearchOn } from \"./utils/getLSVectorSearch\"\nimport { AutocompleteReasoningResponse } from \"./@types/autocomplete\"\nimport {getUseCacheSetting, setUseCacheSetting} from \"./utils/getCacheSettings\"\n// export * from './components';\n\nexport type {\n MenuItemName,\n CustomClasses,\n SideMenuType,\n SideMenuItem,\n ProductLabelType,\n Banner,\n EditorProduct,\n IconProps,\n ServerProduct,\n FullTextServerResponseAll,\n smartCollectionsResults,\n AutocompleteReasoningResponse,\n FeaturedRanking\n};\n\nexport {\n BackOfficeFiltersMenu, InStoreFiltersMenu, Droppable, DndContextWrapper, SortableItem, ProductGrid, RenderIfVisible,\n useDragToSelect, LandingPage, FullTextSearch, BackOfficeFiltersIcon, BannersIcon, HelpIcon, InStoreFiltersIcon, PromoteIcon,\n RestoreIcon, RemoveIcon, GeneralIcon, videoFormats, isEditorProduct,useFastState, useFastStateFunctions,FastSimonApi,MainTheme,\n Products, getFormatProducts, useProductsPerRow, ProductLabel, CustomTagsFilters, SelectCard ,getLSVectorSearchOn,getLSVectorSearchDict,\n getUseCacheSetting, setUseCacheSetting\n};"]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { API } from "./API";
|
|
2
2
|
import { getInternalURL } from "../utils/getInternalURL";
|
|
3
|
+
import { getUseCacheSetting } from "../utils/getCacheSettings";
|
|
3
4
|
const BASE_URL = "https://internal-v3joil6oqa-uc.a.run.app";
|
|
4
5
|
export const Autocomplete = {
|
|
5
6
|
getAutocompleteReasoning: ({ uuid, storeID, siteKey, cdn, withAttributes, term, segments, disable_semantics, disable_merchandising, disable_strategies, disable_turbolinks, disable_merchandising_rules, disable_antonyms, market_context }) => {
|
|
@@ -7,23 +8,14 @@ export const Autocomplete = {
|
|
|
7
8
|
if (internal_url == "") {
|
|
8
9
|
internal_url = BASE_URL;
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
// Cache setting: Controls whether 'm' param is added to request
|
|
12
|
+
// When true (default): omit 'm' - backend uses cache for faster responses
|
|
13
|
+
// When false: add 'm: 1' - backend forces fresh data (useful for debugging)
|
|
14
|
+
const use_cache = getUseCacheSetting();
|
|
15
|
+
const params = Object.assign(Object.assign({ site_key: siteKey,
|
|
12
16
|
// UUID: uuid,
|
|
13
17
|
// store_id: storeID,
|
|
14
|
-
cdn_cache_key: cdn,
|
|
15
|
-
q: term,
|
|
16
|
-
m: 1,
|
|
17
|
-
with_product_attributes: withAttributes,
|
|
18
|
-
st: JSON.stringify(segments) || undefined,
|
|
19
|
-
disable_semantics: disable_semantics ? 1 : 0,
|
|
20
|
-
disable_merchandising: disable_merchandising ? 1 : 0,
|
|
21
|
-
disable_strategies: disable_strategies ? 1 : 0,
|
|
22
|
-
disable_turbolinks: disable_turbolinks ? 1 : 0,
|
|
23
|
-
disable_merchandising_rules: disable_merchandising_rules ? 1 : 0,
|
|
24
|
-
disable_antonyms: disable_antonyms ? 1 : 0,
|
|
25
|
-
market_context: market_context || undefined
|
|
26
|
-
};
|
|
18
|
+
cdn_cache_key: cdn, q: term }, (!use_cache ? { m: 1 } : {})), { with_product_attributes: withAttributes, st: JSON.stringify(segments) || undefined, disable_semantics: disable_semantics ? 1 : 0, disable_merchandising: disable_merchandising ? 1 : 0, disable_strategies: disable_strategies ? 1 : 0, disable_turbolinks: disable_turbolinks ? 1 : 0, disable_merchandising_rules: disable_merchandising_rules ? 1 : 0, disable_antonyms: disable_antonyms ? 1 : 0, market_context: market_context || undefined });
|
|
27
19
|
params["segments"] = JSON.stringify(segments) || undefined;
|
|
28
20
|
return API.get({
|
|
29
21
|
url: `${internal_url}/search/autocomplete_reasoning`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/services/autocomplete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/services/autocomplete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAE7D,MAAM,QAAQ,GAAG,0CAA0C,CAAC;AAG5D,MAAM,CAAC,MAAM,YAAY,GAAG;IACpB,wBAAwB,EAAE,CAAC,EACD,IAAI,EAAE,OAAO,EAAC,OAAO,EAAE,GAAG,EACxB,cAAc,EAAE,IAAI,EAAE,QAAQ,EAChC,iBAAiB,EAAC,qBAAqB,EAAC,kBAAkB,EAAC,kBAAkB,EAAC,2BAA2B,EAAC,gBAAgB,EAC1H,cAAc,EACE,EAAE,EAAE;QAC1C,IAAI,YAAY,GAAC,cAAc,EAAE,CAAC;QAClC,IAAG,YAAY,IAAE,EAAE,EACnB;YACI,YAAY,GAAC,QAAQ,CAAC;SACzB;QAED,gEAAgE;QAChE,0EAA0E;QAC1E,4EAA4E;QAC5E,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;QAEvC,MAAM,MAAM,iCACR,QAAQ,EAAC,OAAO;YAChB,cAAc;YACd,qBAAqB;YACrB,aAAa,EAAE,GAAG,EAClB,CAAC,EAAE,IAAI,IACJ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAC/B,uBAAuB,EAAE,cAAc,EACvC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAE,SAAS,EACvC,iBAAiB,EAAC,iBAAiB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,EACvC,qBAAqB,EAAC,qBAAqB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,EAC/C,kBAAkB,EAAC,kBAAkB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,EACzC,kBAAkB,EAAC,kBAAkB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,EACzC,2BAA2B,EAAC,2BAA2B,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,EAC3D,gBAAgB,EAAC,gBAAgB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,EACrC,cAAc,EAAE,cAAc,IAAI,SAAS,GAE9C,CAAC;QAED,MAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;QACpE,OAAO,GAAG,CAAC,GAAG,CAAgC;YAC1C,GAAG,EAAE,GAAG,YAAY,gCAAgC;YACpD,MAAM;SACT,CAAC,CAAC;IACP,CAAC;CACJ,CACJ","sourcesContent":["import {API} from \"./API\";\nimport {getInternalURL} from \"../utils/getInternalURL\";\nimport {autocompleteProps, AutocompleteReasoningResponse, AutocompleteResults} from \"../@types/autocomplete\";\nimport {getUseCacheSetting} from \"../utils/getCacheSettings\";\n\nconst BASE_URL = \"https://internal-v3joil6oqa-uc.a.run.app\";\n\n\nexport const Autocomplete = {\n getAutocompleteReasoning: ({\n uuid, storeID,siteKey, cdn\n , withAttributes, term, segments,\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_merchandising_rules,disable_antonyms,\n market_context\n }: autocompleteProps) => {\n var internal_url=getInternalURL();\n if(internal_url==\"\")\n {\n internal_url=BASE_URL;\n }\n\n // Cache setting: Controls whether 'm' param is added to request\n // When true (default): omit 'm' - backend uses cache for faster responses\n // When false: add 'm: 1' - backend forces fresh data (useful for debugging)\n const use_cache = getUseCacheSetting();\n\n const params = {\n site_key:siteKey,\n // UUID: uuid,\n // store_id: storeID,\n cdn_cache_key: cdn,\n q: term,\n ...(!use_cache ? { m: 1 } : {}),\n with_product_attributes: withAttributes,\n st: JSON.stringify(segments)||undefined,\n disable_semantics:disable_semantics?1:0,\n disable_merchandising:disable_merchandising?1:0,\n disable_strategies:disable_strategies?1:0,\n disable_turbolinks:disable_turbolinks?1:0,\n disable_merchandising_rules:disable_merchandising_rules?1:0,\n disable_antonyms:disable_antonyms?1:0,\n market_context: market_context || undefined\n\n };\n\n (params as any)[\"segments\"] = JSON.stringify(segments) || undefined;\n return API.get<AutocompleteReasoningResponse>({\n url: `${internal_url}/search/autocomplete_reasoning`,\n params,\n });\n },\n }\n;"]}
|
package/dist/services/search.js
CHANGED
|
@@ -11,6 +11,7 @@ import { API, fastSimonGet } from "./API";
|
|
|
11
11
|
import { FacetsParser } from "@fast-simon/utilities";
|
|
12
12
|
import { getLSVectorSearchDict, getLSVectorSearchOn } from "../utils/getLSVectorSearch";
|
|
13
13
|
import { getInternalURL } from "../utils/getInternalURL";
|
|
14
|
+
import { getUseCacheSetting } from "../utils/getCacheSettings";
|
|
14
15
|
const BASE_URL = "https://internal-v3joil6oqa-uc.a.run.app";
|
|
15
16
|
export const FullTextSearch = {
|
|
16
17
|
getFullTextSearch: ({ uuid, storeID, facetRequired, narrow, page, productsPerPage, withAttributes, query, searchWithinSearch, visualMerchandising, lastProduct }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -68,31 +69,14 @@ export const FullTextSearch = {
|
|
|
68
69
|
if (internal_url == "") {
|
|
69
70
|
internal_url = BASE_URL;
|
|
70
71
|
}
|
|
71
|
-
|
|
72
|
-
|
|
72
|
+
// Cache setting: Controls whether 'm' param is added to request
|
|
73
|
+
// When true (default): omit 'm' - backend uses cache for faster responses
|
|
74
|
+
// When false: add 'm: 1' - backend forces fresh data (useful for debugging)
|
|
75
|
+
const use_cache = getUseCacheSetting();
|
|
76
|
+
const params = Object.assign(Object.assign({ site_key: siteKey,
|
|
73
77
|
// UUID: uuid,
|
|
74
78
|
// store_id: storeID,
|
|
75
|
-
cdn_cache_key: cdn,
|
|
76
|
-
facets_required: facetRequired,
|
|
77
|
-
q: term,
|
|
78
|
-
page_num: page,
|
|
79
|
-
with_product_attributes: withAttributes,
|
|
80
|
-
narrow: JSON.stringify(narrowBy),
|
|
81
|
-
products_per_page: productsPerPage,
|
|
82
|
-
sort_by: sortBy,
|
|
83
|
-
sp: recent,
|
|
84
|
-
m: 1,
|
|
85
|
-
search_within_search: searchWithinSearch,
|
|
86
|
-
disable_semantics: disable_semantics ? 1 : 0,
|
|
87
|
-
disable_merchandising: disable_merchandising ? 1 : 0,
|
|
88
|
-
disable_strategies: disable_strategies ? 1 : 0,
|
|
89
|
-
disable_turbolinks: disable_turbolinks ? 1 : 0,
|
|
90
|
-
disable_merchandising_rules: disable_merchandising_rules ? 1 : 0,
|
|
91
|
-
disable_antonyms: disable_antonyms ? 1 : 0,
|
|
92
|
-
custom_sort_settings: JSON.stringify(custom_sort_settings),
|
|
93
|
-
with_product_analytics: with_product_analytics ? true : undefined,
|
|
94
|
-
market_context: market_context || undefined
|
|
95
|
-
};
|
|
79
|
+
cdn_cache_key: cdn, facets_required: facetRequired, q: term, page_num: page, with_product_attributes: withAttributes, narrow: JSON.stringify(narrowBy), products_per_page: productsPerPage, sort_by: sortBy, sp: recent }, (!use_cache ? { m: 1 } : {})), { search_within_search: searchWithinSearch, disable_semantics: disable_semantics ? 1 : 0, disable_merchandising: disable_merchandising ? 1 : 0, disable_strategies: disable_strategies ? 1 : 0, disable_turbolinks: disable_turbolinks ? 1 : 0, disable_merchandising_rules: disable_merchandising_rules ? 1 : 0, disable_antonyms: disable_antonyms ? 1 : 0, custom_sort_settings: JSON.stringify(custom_sort_settings), with_product_analytics: with_product_analytics ? true : undefined, market_context: market_context || undefined });
|
|
96
80
|
if (getLSVectorSearchOn()) {
|
|
97
81
|
params["hybrid_search_settings"] = (_a = getLSVectorSearchDict()) !== null && _a !== void 0 ? _a : undefined;
|
|
98
82
|
}
|
|
@@ -108,31 +92,14 @@ export const FullTextSearch = {
|
|
|
108
92
|
if (internal_url == "") {
|
|
109
93
|
internal_url = BASE_URL;
|
|
110
94
|
}
|
|
111
|
-
|
|
112
|
-
|
|
95
|
+
// Cache setting: Controls whether 'm' param is added to request
|
|
96
|
+
// When true (default): omit 'm' - backend uses cache for faster responses
|
|
97
|
+
// When false: add 'm: 1' - backend forces fresh data (useful for debugging)
|
|
98
|
+
const use_cache = getUseCacheSetting();
|
|
99
|
+
const params = Object.assign(Object.assign({ site_key: siteKey,
|
|
113
100
|
// UUID: uuid,
|
|
114
101
|
// store_id: storeID,
|
|
115
|
-
cdn_cache_key: cdn,
|
|
116
|
-
facets_required: facetRequired,
|
|
117
|
-
q: term,
|
|
118
|
-
page_num: page,
|
|
119
|
-
with_product_attributes: withAttributes,
|
|
120
|
-
narrow: JSON.stringify(narrowBy),
|
|
121
|
-
products_per_page: productsPerPage,
|
|
122
|
-
sort_by: sortBy,
|
|
123
|
-
sp: recent,
|
|
124
|
-
m: 1,
|
|
125
|
-
search_within_search: searchWithinSearch,
|
|
126
|
-
disable_semantics: disable_semantics ? 1 : 0,
|
|
127
|
-
disable_merchandising: disable_merchandising ? 1 : 0,
|
|
128
|
-
disable_strategies: disable_strategies ? 1 : 0,
|
|
129
|
-
disable_turbolinks: disable_turbolinks ? 1 : 0,
|
|
130
|
-
disable_merchandising_rules: disable_merchandising_rules ? 1 : 0,
|
|
131
|
-
disable_antonyms: disable_antonyms ? 1 : 0,
|
|
132
|
-
ids_only: 1,
|
|
133
|
-
custom_sort_settings: JSON.stringify(custom_sort_settings),
|
|
134
|
-
market_context: market_context || undefined
|
|
135
|
-
};
|
|
102
|
+
cdn_cache_key: cdn, facets_required: facetRequired, q: term, page_num: page, with_product_attributes: withAttributes, narrow: JSON.stringify(narrowBy), products_per_page: productsPerPage, sort_by: sortBy, sp: recent }, (!use_cache ? { m: 1 } : {})), { search_within_search: searchWithinSearch, disable_semantics: disable_semantics ? 1 : 0, disable_merchandising: disable_merchandising ? 1 : 0, disable_strategies: disable_strategies ? 1 : 0, disable_turbolinks: disable_turbolinks ? 1 : 0, disable_merchandising_rules: disable_merchandising_rules ? 1 : 0, disable_antonyms: disable_antonyms ? 1 : 0, ids_only: 1, custom_sort_settings: JSON.stringify(custom_sort_settings), market_context: market_context || undefined });
|
|
136
103
|
if (getLSVectorSearchOn()) {
|
|
137
104
|
params["hybrid_search_settings"] = (_a = getLSVectorSearchDict()) !== null && _a !== void 0 ? _a : undefined;
|
|
138
105
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/services/search.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAC,GAAG,EAAE,YAAY,EAAC,MAAM,OAAO,CAAC;AACxC,OAAO,EAAC,YAAY,EAAc,MAAM,uBAAuB,CAAA;AAE/D,OAAO,EAAC,qBAAqB,EAAE,mBAAmB,EAAC,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;AAGvD,MAAM,QAAQ,GAAG,0CAA0C,CAAC;AAE5D,MAAM,CAAC,MAAM,cAAc,GAAG;IACtB,iBAAiB,EAAE,CAAO,EACM,IAAI,EACJ,OAAO,EACP,aAAa,EACb,MAAM,EACN,IAAI,EACJ,eAAe,EACf,cAAc,EACd,KAAK,EACL,kBAAkB,EAClB,mBAAmB,EACnB,WAAW,EACT,EAAE,EAAE;QAElC,MAAM,MAAM,GAAwB;YAChC,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,OAAO;YACjB,eAAe,EAAE,CAAC;YAClB,CAAC,EAAE,kBAAkB,IAAI,KAAK;YAC9B,QAAQ,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,CAAC;YACnB,uBAAuB,EAAE,cAAc;YACvC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;YAC9B,iBAAiB,EAAE,eAAe;YAClC,oBAAoB,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;SAC1I,CAAC;QACF,IAAG,WAAW,EAAE;YACZ,MAAM,CAAC,cAAc,CAAC,GAAG,WAAW,CAAA;SACvC;QACD,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,CAA6B,EAAC,GAAG,EAAE,QAAQ,GAAC,iCAAiC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAC,OAAO,EAAE,EAAC,cAAc,EAAE,YAAY,EAAC,EAAC,EAAC,CAAC,CAAC;QAC3K,OAAO;YACH,IAAI,EAAE,GAAG;YACT,SAAS,EAAE,GAAS,EAAE;gBAAC,OAAA,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,gBAAgB,EAAC,CAAC,CAAC,uBAAuB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,kBAAkB,CAAC,EAAmC,IAAI;oBACzL,OAAO;oBACP,aAAa;oBACb,MAAM;oBACN,IAAI;oBACJ,eAAe;oBACf,cAAc;oBACd,kBAAkB;oBAClB,mBAAmB;oBACnB,WAAW;oBACX,KAAK,EAAC,CAAC,CACV,CAAA;cAAA;SACJ,CAAC;IACN,CAAC,CAAA;IACD,kBAAkB,EAAE,CAAO,EACc,IAAI,EACJ,OAAO,EACP,MAAM,EACN,IAAI,EACJ,eAAe,EACf,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,KAAK,EACH,EAAE,EAAE;QAE3C,MAAM,MAAM,GAAwB;YAChC,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,OAAO;YACjB,eAAe,EAAE,CAAC;YAClB,CAAC,EAAE,KAAK;YACR,QAAQ,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,CAAC;YACnB,uBAAuB,EAAE,cAAc;YACvC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;YAC9B,iBAAiB,EAAE,eAAe;YAClC,oBAAoB,EAAE,kBAAkB;YACxC,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;SACxG,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,YAAY,CAA6B,QAAQ,EAAE,iCAAiC,EAAE,MAAM,CAAC,CAAC;QAEhH,OAAO,uBAAuB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACvE,CAAC,CAAA;IACD,0BAA0B,EAAE,CAAC,EACT,IAAI,EAAE,OAAO,EAAE,OAAO,EAAC,GAAG,EAC1B,aAAa,EAAE,QAAQ,EAAE,IAAI,EAC7B,eAAe,EAAE,IAAI,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EACtD,iBAAiB,EAAC,qBAAqB,EAAC,kBAAkB,EAAC,kBAAkB,EAAC,2BAA2B,EAAC,gBAAgB,EAC1H,oBAAoB,EAAE,sBAAsB,EAAE,cAAc,EAC1C,EAAE,EAAE;;QACtC,IAAI,YAAY,GAAC,cAAc,EAAE,CAAC;QAClC,IAAG,YAAY,IAAE,EAAE,EACnB;YACI,YAAY,GAAC,QAAQ,CAAC;SACzB;QAED,MAAM,MAAM,GAAwB;YAChC,QAAQ,EAAC,OAAO;YAChB,cAAc;YACd,qBAAqB;YACrB,aAAa,EAAE,GAAG;YAClB,eAAe,EAAE,aAAa;YAC9B,CAAC,EAAE,IAAI;YACP,QAAQ,EAAE,IAAI;YACd,uBAAuB,EAAE,cAAc;YACvC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YAChC,iBAAiB,EAAE,eAAe;YAClC,OAAO,EAAE,MAAM;YACf,EAAE,EAAE,MAAM;YACV,CAAC,EAAE,CAAC;YACJ,oBAAoB,EAAE,kBAAkB;YACxC,iBAAiB,EAAC,iBAAiB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YACvC,qBAAqB,EAAC,qBAAqB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YAC/C,kBAAkB,EAAC,kBAAkB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YACzC,kBAAkB,EAAC,kBAAkB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YACzC,2BAA2B,EAAC,2BAA2B,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YAC3D,gBAAgB,EAAC,gBAAgB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YACrC,oBAAoB,EAAC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;YACzD,sBAAsB,EAAE,sBAAsB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YACjE,cAAc,EAAE,cAAc,IAAI,SAAS;SAC9C,CAAC;QAGF,IAAG,mBAAmB,EAAE,EACxB;YACI,MAAM,CAAC,wBAAwB,CAAC,GAAG,MAAA,qBAAqB,EAAE,mCAAE,SAAS,CAAC;SACzE;QACD,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;QAC3D,OAAO,GAAG,CAAC,GAAG,CAA4B;YACtC,GAAG,EAAE,GAAG,YAAY,oCAAoC;YACxD,MAAM;SACT,CAAC,CAAC;IAEP,CAAC;IACD,qCAAqC,EAAE,CAAC,EACpB,IAAI,EAAE,OAAO,EAAE,OAAO,EAAC,GAAG,EAC1B,aAAa,EAAE,QAAQ,EAAE,IAAI,EAC7B,eAAe,EAAE,IAAI,EAAE,MAAM,EAC3B,cAAc,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EACtD,iBAAiB,EAAC,qBAAqB,EAAC,kBAAkB,EAAC,kBAAkB,EAAC,2BAA2B,EAAC,gBAAgB,EAC1H,oBAAoB,EAAE,cAAc,EAClB,EAAE,EAAE;;QACtC,IAAI,YAAY,GAAC,cAAc,EAAE,CAAC;QAClC,IAAG,YAAY,IAAE,EAAE,EACnB;YACI,YAAY,GAAC,QAAQ,CAAC;SACzB;QAED,MAAM,MAAM,GAAwB;YAChC,QAAQ,EAAC,OAAO;YAChB,cAAc;YACd,qBAAqB;YACrB,aAAa,EAAE,GAAG;YAClB,eAAe,EAAE,aAAa;YAC9B,CAAC,EAAE,IAAI;YACP,QAAQ,EAAE,IAAI;YACd,uBAAuB,EAAE,cAAc;YACvC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YAChC,iBAAiB,EAAE,eAAe;YAClC,OAAO,EAAE,MAAM;YACf,EAAE,EAAE,MAAM;YACV,CAAC,EAAE,CAAC;YACJ,oBAAoB,EAAE,kBAAkB;YACxC,iBAAiB,EAAC,iBAAiB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YACvC,qBAAqB,EAAC,qBAAqB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YAC/C,kBAAkB,EAAC,kBAAkB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YACzC,kBAAkB,EAAC,kBAAkB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YACzC,2BAA2B,EAAC,2BAA2B,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YAC3D,gBAAgB,EAAC,gBAAgB,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC;YACrC,QAAQ,EAAC,CAAC;YACV,oBAAoB,EAAC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC;YACzD,cAAc,EAAE,cAAc,IAAI,SAAS;SAC9C,CAAC;QAGF,IAAG,mBAAmB,EAAE,EACxB;YACI,MAAM,CAAC,wBAAwB,CAAC,GAAG,MAAA,qBAAqB,EAAE,mCAAE,SAAS,CAAC;SACzE;QACD,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;QAC3D,OAAO,GAAG,CAAC,GAAG,CAA4B;YACtC,GAAG,EAAE,GAAG,YAAY,0BAA0B;YAC9C,MAAM;SACT,CAAC,CAAC;IAEP,CAAC;CACJ,CACJ;AACD,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAgB,EAAE,gBAAyB,EAAE,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC","sourcesContent":["import {CategoryNavigationResponse} from \"../@types/categoriesNavigation\";\nimport {API, fastSimonGet} from \"./API\";\nimport {FacetsParser, ServerFacet} from \"@fast-simon/utilities\"\nimport {fullTextSearchProps, FullTextServerResponseAll} from \"../@types/results\";\nimport {getLSVectorSearchDict, getLSVectorSearchOn} from \"../utils/getLSVectorSearch\";\nimport {getInternalURL} from \"../utils/getInternalURL\";\n\n\nconst BASE_URL = \"https://internal-v3joil6oqa-uc.a.run.app\";\n\nexport const FullTextSearch = {\n getFullTextSearch: async ({\n uuid,\n storeID,\n facetRequired,\n narrow,\n page,\n productsPerPage,\n withAttributes,\n query,\n searchWithinSearch,\n visualMerchandising,\n lastProduct\n }: any) => {\n\n const params: Record<string, any> = {\n UUID: uuid,\n store_id: storeID,\n facets_required: 1,\n q: searchWithinSearch || query,\n page_num: page ?? 1,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrow),\n products_per_page: productsPerPage,\n visual_merchandising: !searchWithinSearch ? JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']') : undefined\n };\n if(lastProduct) {\n params['last_product'] = lastProduct\n }\n const res = await API.post<CategoryNavigationResponse>({url: BASE_URL+'/search/full_text_search_editor', data: params, config: {headers: {'content-type': 'text/plain'}}});\n return {\n data: res,\n getFacets: async () => (res?.facets_completed ? transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes) : await FullTextSearch.fullTextFacetsOnly({ uuid,\n storeID,\n facetRequired,\n narrow,\n page,\n productsPerPage,\n withAttributes,\n searchWithinSearch,\n visualMerchandising,\n lastProduct,\n query})\n )\n };\n },\n fullTextFacetsOnly: async ({\n uuid,\n storeID,\n narrow,\n page,\n productsPerPage,\n withAttributes,\n collectionID,\n searchWithinSearch,\n visualMerchandising,\n query\n }: any) => {\n\n const params: Record<string, any> = {\n UUID: uuid,\n store_id: storeID,\n facets_required: 2,\n q: query,\n page_num: page ?? 1,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrow),\n products_per_page: productsPerPage,\n search_within_search: searchWithinSearch,\n visual_merchandising: JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']')\n };\n\n const res = await fastSimonGet<CategoryNavigationResponse>(BASE_URL, '/search/full_text_search_editor', params);\n\n return transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes);\n },\n getReasoningFullTextSearch: ({\n uuid, storeID, siteKey,cdn,\n facetRequired, narrowBy, page,\n productsPerPage, term, sortBy\n , withAttributes, recent, searchWithinSearch, segments,\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_merchandising_rules,disable_antonyms,\n custom_sort_settings, with_product_analytics, market_context\n }: fullTextSearchProps) => {\n var internal_url=getInternalURL();\n if(internal_url==\"\")\n {\n internal_url=BASE_URL;\n }\n\n const params: Record<string, any> = {\n site_key:siteKey,\n // UUID: uuid,\n // store_id: storeID,\n cdn_cache_key: cdn,\n facets_required: facetRequired,\n q: term,\n page_num: page,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrowBy),\n products_per_page: productsPerPage,\n sort_by: sortBy,\n sp: recent,\n m: 1,\n search_within_search: searchWithinSearch,\n disable_semantics:disable_semantics?1:0,\n disable_merchandising:disable_merchandising?1:0,\n disable_strategies:disable_strategies?1:0,\n disable_turbolinks:disable_turbolinks?1:0,\n disable_merchandising_rules:disable_merchandising_rules?1:0,\n disable_antonyms:disable_antonyms?1:0,\n custom_sort_settings:JSON.stringify(custom_sort_settings),\n with_product_analytics: with_product_analytics ? true : undefined,\n market_context: market_context || undefined\n };\n\n\n if(getLSVectorSearchOn())\n {\n params[\"hybrid_search_settings\"] = getLSVectorSearchDict()??undefined;\n }\n params[\"segments\"] = JSON.stringify(segments) || undefined;\n return API.get<FullTextServerResponseAll>({\n url: `${internal_url}/search/full_text_search_reasoning`,\n params,\n });\n\n },\n getReasoningFullTextSearchProductsIds: ({\n uuid, storeID, siteKey,cdn,\n facetRequired, narrowBy, page,\n productsPerPage, term, sortBy\n , withAttributes, recent, searchWithinSearch, segments,\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_merchandising_rules,disable_antonyms,\n custom_sort_settings, market_context\n }: fullTextSearchProps) => {\n var internal_url=getInternalURL();\n if(internal_url==\"\")\n {\n internal_url=BASE_URL;\n }\n\n const params: Record<string, any> = {\n site_key:siteKey,\n // UUID: uuid,\n // store_id: storeID,\n cdn_cache_key: cdn,\n facets_required: facetRequired,\n q: term,\n page_num: page,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrowBy),\n products_per_page: productsPerPage,\n sort_by: sortBy,\n sp: recent,\n m: 1,\n search_within_search: searchWithinSearch,\n disable_semantics:disable_semantics?1:0,\n disable_merchandising:disable_merchandising?1:0,\n disable_strategies:disable_strategies?1:0,\n disable_turbolinks:disable_turbolinks?1:0,\n disable_merchandising_rules:disable_merchandising_rules?1:0,\n disable_antonyms:disable_antonyms?1:0,\n ids_only:1,\n custom_sort_settings:JSON.stringify(custom_sort_settings),\n market_context: market_context || undefined\n };\n\n\n if(getLSVectorSearchOn())\n {\n params[\"hybrid_search_settings\"] = getLSVectorSearchDict()??undefined;\n }\n params[\"segments\"] = JSON.stringify(segments) || undefined;\n return API.get<FullTextServerResponseAll>({\n url: `${internal_url}/search/full_text_search`,\n params,\n });\n\n },\n }\n;\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\";\nimport {API, fastSimonGet} from \"./API\";\nimport {FacetsParser, ServerFacet} from \"@fast-simon/utilities\"\nimport {fullTextSearchProps, FullTextServerResponseAll} from \"../@types/results\";\nimport {getLSVectorSearchDict, getLSVectorSearchOn} from \"../utils/getLSVectorSearch\";\nimport {getInternalURL} from \"../utils/getInternalURL\";\nimport {getUseCacheSetting} from \"../utils/getCacheSettings\";\n\n\nconst BASE_URL = \"https://internal-v3joil6oqa-uc.a.run.app\";\n\nexport const FullTextSearch = {\n getFullTextSearch: async ({\n uuid,\n storeID,\n facetRequired,\n narrow,\n page,\n productsPerPage,\n withAttributes,\n query,\n searchWithinSearch,\n visualMerchandising,\n lastProduct\n }: any) => {\n\n const params: Record<string, any> = {\n UUID: uuid,\n store_id: storeID,\n facets_required: 1,\n q: searchWithinSearch || query,\n page_num: page ?? 1,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrow),\n products_per_page: productsPerPage,\n visual_merchandising: !searchWithinSearch ? JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']') : undefined\n };\n if(lastProduct) {\n params['last_product'] = lastProduct\n }\n const res = await API.post<CategoryNavigationResponse>({url: BASE_URL+'/search/full_text_search_editor', data: params, config: {headers: {'content-type': 'text/plain'}}});\n return {\n data: res,\n getFacets: async () => (res?.facets_completed ? transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes) : await FullTextSearch.fullTextFacetsOnly({ uuid,\n storeID,\n facetRequired,\n narrow,\n page,\n productsPerPage,\n withAttributes,\n searchWithinSearch,\n visualMerchandising,\n lastProduct,\n query})\n )\n };\n },\n fullTextFacetsOnly: async ({\n uuid,\n storeID,\n narrow,\n page,\n productsPerPage,\n withAttributes,\n collectionID,\n searchWithinSearch,\n visualMerchandising,\n query\n }: any) => {\n\n const params: Record<string, any> = {\n UUID: uuid,\n store_id: storeID,\n facets_required: 2,\n q: query,\n page_num: page ?? 1,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrow),\n products_per_page: productsPerPage,\n search_within_search: searchWithinSearch,\n visual_merchandising: JSON.stringify(visualMerchandising).replaceAll('\"[', '[').replaceAll(']\"', ']')\n };\n\n const res = await fastSimonGet<CategoryNavigationResponse>(BASE_URL, '/search/full_text_search_editor', params);\n\n return transformFacetsOnlyData(res.facets, res.avoid_tag_prefixes);\n },\n getReasoningFullTextSearch: ({\n uuid, storeID, siteKey,cdn,\n facetRequired, narrowBy, page,\n productsPerPage, term, sortBy\n , withAttributes, recent, searchWithinSearch, segments,\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_merchandising_rules,disable_antonyms,\n custom_sort_settings, with_product_analytics, market_context\n }: fullTextSearchProps) => {\n var internal_url=getInternalURL();\n if(internal_url==\"\")\n {\n internal_url=BASE_URL;\n }\n\n // Cache setting: Controls whether 'm' param is added to request\n // When true (default): omit 'm' - backend uses cache for faster responses\n // When false: add 'm: 1' - backend forces fresh data (useful for debugging)\n const use_cache = getUseCacheSetting();\n\n const params: Record<string, any> = {\n site_key:siteKey,\n // UUID: uuid,\n // store_id: storeID,\n cdn_cache_key: cdn,\n facets_required: facetRequired,\n q: term,\n page_num: page,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrowBy),\n products_per_page: productsPerPage,\n sort_by: sortBy,\n sp: recent,\n ...(!use_cache ? { m: 1 } : {}),\n search_within_search: searchWithinSearch,\n disable_semantics:disable_semantics?1:0,\n disable_merchandising:disable_merchandising?1:0,\n disable_strategies:disable_strategies?1:0,\n disable_turbolinks:disable_turbolinks?1:0,\n disable_merchandising_rules:disable_merchandising_rules?1:0,\n disable_antonyms:disable_antonyms?1:0,\n custom_sort_settings:JSON.stringify(custom_sort_settings),\n with_product_analytics: with_product_analytics ? true : undefined,\n market_context: market_context || undefined\n };\n\n\n if(getLSVectorSearchOn())\n {\n params[\"hybrid_search_settings\"] = getLSVectorSearchDict()??undefined;\n }\n params[\"segments\"] = JSON.stringify(segments) || undefined;\n return API.get<FullTextServerResponseAll>({\n url: `${internal_url}/search/full_text_search_reasoning`,\n params,\n });\n\n },\n getReasoningFullTextSearchProductsIds: ({\n uuid, storeID, siteKey,cdn,\n facetRequired, narrowBy, page,\n productsPerPage, term, sortBy\n , withAttributes, recent, searchWithinSearch, segments,\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_merchandising_rules,disable_antonyms,\n custom_sort_settings, market_context\n }: fullTextSearchProps) => {\n var internal_url=getInternalURL();\n if(internal_url==\"\")\n {\n internal_url=BASE_URL;\n }\n\n // Cache setting: Controls whether 'm' param is added to request\n // When true (default): omit 'm' - backend uses cache for faster responses\n // When false: add 'm: 1' - backend forces fresh data (useful for debugging)\n const use_cache = getUseCacheSetting();\n\n const params: Record<string, any> = {\n site_key:siteKey,\n // UUID: uuid,\n // store_id: storeID,\n cdn_cache_key: cdn,\n facets_required: facetRequired,\n q: term,\n page_num: page,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrowBy),\n products_per_page: productsPerPage,\n sort_by: sortBy,\n sp: recent,\n ...(!use_cache ? { m: 1 } : {}),\n search_within_search: searchWithinSearch,\n disable_semantics:disable_semantics?1:0,\n disable_merchandising:disable_merchandising?1:0,\n disable_strategies:disable_strategies?1:0,\n disable_turbolinks:disable_turbolinks?1:0,\n disable_merchandising_rules:disable_merchandising_rules?1:0,\n disable_antonyms:disable_antonyms?1:0,\n ids_only:1,\n custom_sort_settings:JSON.stringify(custom_sort_settings),\n market_context: market_context || undefined\n };\n\n\n if(getLSVectorSearchOn())\n {\n params[\"hybrid_search_settings\"] = getLSVectorSearchDict()??undefined;\n }\n params[\"segments\"] = JSON.stringify(segments) || undefined;\n return API.get<FullTextServerResponseAll>({\n url: `${internal_url}/search/full_text_search`,\n params,\n });\n\n },\n }\n;\nexport const transformFacetsOnlyData = (r: ServerFacet[], avoidTagPrefixes?: string) => new FacetsParser().parseFacets(r, avoidTagPrefixes ? avoidTagPrefixes.split(\",\") : []);"]}
|
|
@@ -1,37 +1,21 @@
|
|
|
1
1
|
import { API } from "./API";
|
|
2
2
|
import { getInternalURL } from "../utils/getInternalURL";
|
|
3
|
-
|
|
3
|
+
import { getUseCacheSetting } from "../utils/getCacheSettings";
|
|
4
|
+
const BASE_URL = "https://internal-v3joil6oqa-uc.a.run.app";
|
|
4
5
|
export const SmartCollections = {
|
|
5
6
|
getSmartCollections: ({ uuid, storeID, siteKey, cdn, facetRequired, narrowBy, page, productsPerPage, sortBy, withAttributes, categoryID, recent, rec, searchWithinSearch, segments, disable_semantics, disable_merchandising, disable_strategies, disable_turbolinks, disable_merchandising_rules, disable_antonyms, custom_sort_settings, with_product_analytics, market_context }) => {
|
|
6
7
|
var internal_url = getInternalURL();
|
|
7
8
|
if (internal_url == "") {
|
|
8
9
|
internal_url = BASE_URL;
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
// Cache setting: Controls whether 'm' param is added to request
|
|
12
|
+
// When true (default): omit 'm' - backend uses cache for faster responses
|
|
13
|
+
// When false: add 'm: 1' - backend forces fresh data (useful for debugging)
|
|
14
|
+
const use_cache = getUseCacheSetting();
|
|
15
|
+
const params = Object.assign(Object.assign({ site_key: siteKey,
|
|
12
16
|
// UUID: uuid,
|
|
13
17
|
// store_id: storeID,
|
|
14
|
-
cdn_cache_key: cdn,
|
|
15
|
-
facets_required: facetRequired,
|
|
16
|
-
category_id: categoryID,
|
|
17
|
-
page_num: page !== null && page !== void 0 ? page : 1,
|
|
18
|
-
with_product_attributes: withAttributes,
|
|
19
|
-
narrow: JSON.stringify(narrowBy),
|
|
20
|
-
products_per_page: productsPerPage,
|
|
21
|
-
sort_by: sortBy,
|
|
22
|
-
sp: recent,
|
|
23
|
-
search_within_search: searchWithinSearch,
|
|
24
|
-
st: JSON.stringify(segments) || undefined,
|
|
25
|
-
disable_semantics: disable_semantics ? 1 : 0,
|
|
26
|
-
disable_merchandising: disable_merchandising ? 1 : 0,
|
|
27
|
-
disable_strategies: disable_strategies ? 1 : 0,
|
|
28
|
-
disable_turbolinks: disable_turbolinks ? 1 : 0,
|
|
29
|
-
disable_merchandising_rules: disable_merchandising_rules ? 1 : 0,
|
|
30
|
-
disable_antonyms: disable_antonyms ? 1 : 0,
|
|
31
|
-
custom_sort_settings: JSON.stringify(custom_sort_settings),
|
|
32
|
-
with_product_analytics: with_product_analytics ? true : undefined,
|
|
33
|
-
market_context: market_context || undefined
|
|
34
|
-
};
|
|
18
|
+
cdn_cache_key: cdn, facets_required: facetRequired, category_id: categoryID, page_num: page !== null && page !== void 0 ? page : 1, with_product_attributes: withAttributes, narrow: JSON.stringify(narrowBy), products_per_page: productsPerPage, sort_by: sortBy, sp: recent }, (!use_cache ? { m: 1 } : {})), { search_within_search: searchWithinSearch, st: JSON.stringify(segments) || undefined, disable_semantics: disable_semantics ? 1 : 0, disable_merchandising: disable_merchandising ? 1 : 0, disable_strategies: disable_strategies ? 1 : 0, disable_turbolinks: disable_turbolinks ? 1 : 0, disable_merchandising_rules: disable_merchandising_rules ? 1 : 0, disable_antonyms: disable_antonyms ? 1 : 0, custom_sort_settings: JSON.stringify(custom_sort_settings), with_product_analytics: with_product_analytics ? true : undefined, market_context: market_context || undefined });
|
|
35
19
|
params["segments"] = JSON.stringify(segments) || undefined;
|
|
36
20
|
return API.get({
|
|
37
21
|
url: `${internal_url}/categories_navigation_reasoning`,
|
|
@@ -43,31 +27,14 @@ export const SmartCollections = {
|
|
|
43
27
|
if (internal_url == "") {
|
|
44
28
|
internal_url = BASE_URL;
|
|
45
29
|
}
|
|
46
|
-
|
|
47
|
-
|
|
30
|
+
// Cache setting: Controls whether 'm' param is added to request
|
|
31
|
+
// When true (default): omit 'm' - backend uses cache for faster responses
|
|
32
|
+
// When false: add 'm: 1' - backend forces fresh data (useful for debugging)
|
|
33
|
+
const use_cache = getUseCacheSetting();
|
|
34
|
+
const params = Object.assign(Object.assign({ site_key: siteKey,
|
|
48
35
|
// UUID: uuid,
|
|
49
36
|
// store_id: storeID,
|
|
50
|
-
cdn_cache_key: cdn,
|
|
51
|
-
facets_required: facetRequired,
|
|
52
|
-
category_id: categoryID,
|
|
53
|
-
page_num: page !== null && page !== void 0 ? page : 1,
|
|
54
|
-
with_product_attributes: withAttributes,
|
|
55
|
-
narrow: JSON.stringify(narrowBy),
|
|
56
|
-
products_per_page: productsPerPage,
|
|
57
|
-
sort_by: sortBy,
|
|
58
|
-
sp: recent,
|
|
59
|
-
search_within_search: searchWithinSearch,
|
|
60
|
-
st: JSON.stringify(segments) || undefined,
|
|
61
|
-
disable_semantics: disable_semantics ? 1 : 0,
|
|
62
|
-
disable_merchandising: disable_merchandising ? 1 : 0,
|
|
63
|
-
disable_strategies: disable_strategies ? 1 : 0,
|
|
64
|
-
disable_turbolinks: disable_turbolinks ? 1 : 0,
|
|
65
|
-
disable_merchandising_rules: disable_merchandising_rules ? 1 : 0,
|
|
66
|
-
disable_antonyms: disable_antonyms ? 1 : 0,
|
|
67
|
-
ids_only: 1,
|
|
68
|
-
custom_sort_settings: JSON.stringify(custom_sort_settings),
|
|
69
|
-
market_context: market_context || undefined
|
|
70
|
-
};
|
|
37
|
+
cdn_cache_key: cdn, facets_required: facetRequired, category_id: categoryID, page_num: page !== null && page !== void 0 ? page : 1, with_product_attributes: withAttributes, narrow: JSON.stringify(narrowBy), products_per_page: productsPerPage, sort_by: sortBy, sp: recent }, (!use_cache ? { m: 1 } : {})), { search_within_search: searchWithinSearch, st: JSON.stringify(segments) || undefined, disable_semantics: disable_semantics ? 1 : 0, disable_merchandising: disable_merchandising ? 1 : 0, disable_strategies: disable_strategies ? 1 : 0, disable_turbolinks: disable_turbolinks ? 1 : 0, disable_merchandising_rules: disable_merchandising_rules ? 1 : 0, disable_antonyms: disable_antonyms ? 1 : 0, ids_only: 1, custom_sort_settings: JSON.stringify(custom_sort_settings), market_context: market_context || undefined });
|
|
71
38
|
params["segments"] = JSON.stringify(segments) || undefined;
|
|
72
39
|
return API.get({
|
|
73
40
|
url: `${internal_url}/categories_navigation`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smartCollections.js","sourceRoot":"","sources":["../../src/services/smartCollections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAC,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAC,cAAc,EAAC,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"smartCollections.js","sourceRoot":"","sources":["../../src/services/smartCollections.ts"],"names":[],"mappings":"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","sourcesContent":["import {API} from \"./API\";\nimport {smartCollectionsProps, smartCollectionsResults} from \"../@types/categories\";\nimport {getInternalURL} from \"../utils/getInternalURL\";\nimport {getUseCacheSetting} from \"../utils/getCacheSettings\";\n\nconst BASE_URL = \"https://internal-v3joil6oqa-uc.a.run.app\";\n\n\nexport const SmartCollections = {\n getSmartCollections: ({\n uuid, storeID,siteKey, cdn,\n facetRequired, narrowBy, page,\n productsPerPage, sortBy\n , withAttributes, categoryID, recent, rec, searchWithinSearch, segments,\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_merchandising_rules,disable_antonyms,\n custom_sort_settings, with_product_analytics, market_context\n }: smartCollectionsProps) => {\n var internal_url=getInternalURL();\n if(internal_url==\"\")\n {\n internal_url=BASE_URL;\n }\n\n // Cache setting: Controls whether 'm' param is added to request\n // When true (default): omit 'm' - backend uses cache for faster responses\n // When false: add 'm: 1' - backend forces fresh data (useful for debugging)\n const use_cache = getUseCacheSetting();\n\n const params = {\n site_key:siteKey,\n // UUID: uuid,\n // store_id: storeID,\n cdn_cache_key: cdn,\n facets_required: facetRequired,\n category_id: categoryID,\n page_num: page ?? 1,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrowBy),\n products_per_page: productsPerPage,\n sort_by: sortBy,\n sp: recent,\n ...(!use_cache ? { m: 1 } : {}),\n search_within_search: searchWithinSearch,\n st: JSON.stringify(segments)||undefined,\n disable_semantics:disable_semantics?1:0,\n disable_merchandising:disable_merchandising?1:0,\n disable_strategies:disable_strategies?1:0,\n disable_turbolinks:disable_turbolinks?1:0,\n disable_merchandising_rules:disable_merchandising_rules?1:0,\n disable_antonyms:disable_antonyms?1:0,\n custom_sort_settings:JSON.stringify(custom_sort_settings),\n with_product_analytics: with_product_analytics ? true : undefined,\n market_context: market_context || undefined\n\n };\n\n (params as any)[\"segments\"] = JSON.stringify(segments) || undefined;\n return API.get<smartCollectionsResults>({\n url: `${internal_url}/categories_navigation_reasoning`,\n params,\n });\n },\n getSmartCollectionsProductsIds: ({\n uuid, storeID,siteKey, cdn,\n facetRequired, narrowBy, page,\n productsPerPage, sortBy\n , withAttributes, categoryID, recent, rec, searchWithinSearch, segments,\n disable_semantics,disable_merchandising,disable_strategies,disable_turbolinks,disable_merchandising_rules,disable_antonyms,\n custom_sort_settings, market_context\n }: smartCollectionsProps) => {\n var internal_url=getInternalURL();\n if(internal_url==\"\")\n {\n internal_url=BASE_URL;\n }\n\n // Cache setting: Controls whether 'm' param is added to request\n // When true (default): omit 'm' - backend uses cache for faster responses\n // When false: add 'm: 1' - backend forces fresh data (useful for debugging)\n const use_cache = getUseCacheSetting();\n\n const params = {\n site_key:siteKey,\n // UUID: uuid,\n // store_id: storeID,\n cdn_cache_key: cdn,\n facets_required: facetRequired,\n category_id: categoryID,\n page_num: page ?? 1,\n with_product_attributes: withAttributes,\n narrow: JSON.stringify(narrowBy),\n products_per_page: productsPerPage,\n sort_by: sortBy,\n sp: recent,\n ...(!use_cache ? { m: 1 } : {}),\n search_within_search: searchWithinSearch,\n st: JSON.stringify(segments)||undefined,\n disable_semantics:disable_semantics?1:0,\n disable_merchandising:disable_merchandising?1:0,\n disable_strategies:disable_strategies?1:0,\n disable_turbolinks:disable_turbolinks?1:0,\n disable_merchandising_rules:disable_merchandising_rules?1:0,\n disable_antonyms:disable_antonyms?1:0,\n ids_only:1,\n custom_sort_settings:JSON.stringify(custom_sort_settings),\n market_context: market_context || undefined\n\n };\n\n (params as any)[\"segments\"] = JSON.stringify(segments) || undefined;\n return API.get<smartCollectionsResults>({\n url: `${internal_url}/categories_navigation`,\n params,\n });\n },\n }\n;"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache settings utility for AI Explainer reasoning requests
|
|
3
|
+
* Controls whether to use cached results (m=0) or force fresh results (m=1)
|
|
4
|
+
*/
|
|
5
|
+
export declare const REASONING_USE_CACHE_LS_KEY = "reasoning_use_cache";
|
|
6
|
+
/**
|
|
7
|
+
* Gets the current cache setting from localStorage
|
|
8
|
+
* @returns {boolean} true if cache should be used (m=0), false if cache should be disabled (m=1)
|
|
9
|
+
* @default true (cache enabled for faster responses)
|
|
10
|
+
*/
|
|
11
|
+
export declare function getUseCacheSetting(): boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Sets the cache setting in localStorage
|
|
14
|
+
* @param {boolean} useCache - true to enable cache (m=0), false to disable (m=1)
|
|
15
|
+
*/
|
|
16
|
+
export declare function setUseCacheSetting(useCache: boolean): void;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache settings utility for AI Explainer reasoning requests
|
|
3
|
+
* Controls whether to use cached results (m=0) or force fresh results (m=1)
|
|
4
|
+
*/
|
|
5
|
+
export const REASONING_USE_CACHE_LS_KEY = "reasoning_use_cache";
|
|
6
|
+
/**
|
|
7
|
+
* Gets the current cache setting from localStorage
|
|
8
|
+
* @returns {boolean} true if cache should be used (m=0), false if cache should be disabled (m=1)
|
|
9
|
+
* @default true (cache enabled for faster responses)
|
|
10
|
+
*/
|
|
11
|
+
export function getUseCacheSetting() {
|
|
12
|
+
const value = localStorage.getItem(REASONING_USE_CACHE_LS_KEY);
|
|
13
|
+
// Default to true (cache enabled) if not set
|
|
14
|
+
if (value === null) {
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
return value === "true";
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Sets the cache setting in localStorage
|
|
21
|
+
* @param {boolean} useCache - true to enable cache (m=0), false to disable (m=1)
|
|
22
|
+
*/
|
|
23
|
+
export function setUseCacheSetting(useCache) {
|
|
24
|
+
localStorage.setItem(REASONING_USE_CACHE_LS_KEY, JSON.stringify(useCache));
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=getCacheSettings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCacheSettings.js","sourceRoot":"","sources":["../../src/utils/getCacheSettings.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,0BAA0B,GAAG,qBAAqB,CAAC;AAEhE;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAC/D,6CAA6C;IAC7C,IAAI,KAAK,KAAK,IAAI,EAAE;QAChB,OAAO,IAAI,CAAC;KACf;IACD,OAAO,KAAK,KAAK,MAAM,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAiB;IAChD,YAAY,CAAC,OAAO,CAAC,0BAA0B,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC/E,CAAC","sourcesContent":["/**\n * Cache settings utility for AI Explainer reasoning requests\n * Controls whether to use cached results (m=0) or force fresh results (m=1)\n */\n\nexport const REASONING_USE_CACHE_LS_KEY = \"reasoning_use_cache\";\n\n/**\n * Gets the current cache setting from localStorage\n * @returns {boolean} true if cache should be used (m=0), false if cache should be disabled (m=1)\n * @default true (cache enabled for faster responses)\n */\nexport function getUseCacheSetting(): boolean {\n const value = localStorage.getItem(REASONING_USE_CACHE_LS_KEY);\n // Default to true (cache enabled) if not set\n if (value === null) {\n return true;\n }\n return value === \"true\";\n}\n\n/**\n * Sets the cache setting in localStorage\n * @param {boolean} useCache - true to enable cache (m=0), false to disable (m=1)\n */\nexport function setUseCacheSetting(useCache: boolean): void {\n localStorage.setItem(REASONING_USE_CACHE_LS_KEY, JSON.stringify(useCache));\n}\n"]}
|