@faststore/api 3.0.149 → 3.0.152
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/package.json +3 -3
- package/dist/cjs/src/__generated__/schema.d.ts +2 -0
- package/dist/cjs/src/__generated__/schema.js.map +1 -1
- package/dist/cjs/src/platforms/vtex/clients/search/index.js +28 -4
- package/dist/cjs/src/platforms/vtex/clients/search/index.js.map +1 -1
- package/dist/cjs/src/platforms/vtex/resolvers/searchResult.js +2 -4
- package/dist/cjs/src/platforms/vtex/resolvers/searchResult.js.map +1 -1
- package/dist/cjs/src/platforms/vtex/utils/facets.d.ts +8 -0
- package/dist/cjs/src/platforms/vtex/utils/facets.js.map +1 -1
- package/dist/cjs/src/typeDefs/query.graphql +4 -0
- package/dist/esm/package.json +3 -3
- package/dist/esm/src/__generated__/schema.d.ts +2 -0
- package/dist/esm/src/__generated__/schema.js.map +1 -1
- package/dist/esm/src/platforms/vtex/clients/search/index.js +28 -4
- package/dist/esm/src/platforms/vtex/clients/search/index.js.map +1 -1
- package/dist/esm/src/platforms/vtex/resolvers/searchResult.js +2 -4
- package/dist/esm/src/platforms/vtex/resolvers/searchResult.js.map +1 -1
- package/dist/esm/src/platforms/vtex/utils/facets.d.ts +8 -0
- package/dist/esm/src/platforms/vtex/utils/facets.js.map +1 -1
- package/dist/esm/src/typeDefs/query.graphql +4 -0
- package/package.json +4 -4
- package/src/__generated__/schema.ts +2 -0
- package/src/platforms/vtex/clients/search/index.ts +44 -5
- package/src/platforms/vtex/resolvers/searchResult.ts +2 -5
- package/src/platforms/vtex/utils/facets.ts +10 -0
- package/src/typeDefs/query.graphql +4 -0
package/dist/cjs/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faststore/api",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.150",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/cjs/src/index.js",
|
|
6
6
|
"typings": "dist/esm/src/index.d.ts",
|
|
@@ -51,8 +51,8 @@
|
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@envelop/core": "^5.0.2",
|
|
54
|
-
"@faststore/eslint-config": "^3.0.
|
|
55
|
-
"@faststore/shared": "^3.0.
|
|
54
|
+
"@faststore/eslint-config": "^3.0.150",
|
|
55
|
+
"@faststore/shared": "^3.0.150",
|
|
56
56
|
"@graphql-codegen/cli": "2.2.0",
|
|
57
57
|
"@graphql-codegen/typescript": "2.2.2",
|
|
58
58
|
"@parcel/watcher": "^2.4.0",
|
|
@@ -484,6 +484,8 @@ export type QueryShippingArgs = {
|
|
|
484
484
|
/** Search result. */
|
|
485
485
|
export type SearchMetadata = {
|
|
486
486
|
__typename?: 'SearchMetadata';
|
|
487
|
+
/** Indicates how the search engine corrected the misspelled word by using fuzzy logic. */
|
|
488
|
+
fuzzy?: Maybe<Scalars['String']>;
|
|
487
489
|
/** Indicates if the search term was misspelled. */
|
|
488
490
|
isTermMisspelled: Scalars['Boolean'];
|
|
489
491
|
/** Logical operator used to run the search. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/__generated__/schema.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/__generated__/schema.ts"],"names":[],"mappings":";;AA4wBC,CAAC;AA+DD,CAAC;AAmUD,CAAC;AAOD,CAAC"}
|
|
@@ -5,9 +5,23 @@ const cookies_1 = require("../../utils/cookies");
|
|
|
5
5
|
const fetch_1 = require("../fetch");
|
|
6
6
|
const POLICY_KEY = 'trade-policy';
|
|
7
7
|
const REGION_KEY = 'region-id';
|
|
8
|
-
const
|
|
8
|
+
const FUZZY_KEY = 'fuzzy';
|
|
9
|
+
const OPERATOR_KEY = 'operator';
|
|
10
|
+
const EXTRA_FACETS_KEYS = new Set([
|
|
11
|
+
POLICY_KEY,
|
|
12
|
+
REGION_KEY,
|
|
13
|
+
FUZZY_KEY,
|
|
14
|
+
OPERATOR_KEY,
|
|
15
|
+
]);
|
|
9
16
|
const isFacetBoolean = (facet) => facet.type === 'TEXT';
|
|
10
17
|
exports.isFacetBoolean = isFacetBoolean;
|
|
18
|
+
const isFuzzyFacet = (facet) => {
|
|
19
|
+
return (facet.key === 'fuzzy' &&
|
|
20
|
+
(facet.value === '0' || facet.value === '1' || facet.value === 'auto'));
|
|
21
|
+
};
|
|
22
|
+
const isOperatorFacet = (facet) => {
|
|
23
|
+
return (facet.key === 'operator' && (facet.value === 'and' || facet.value === 'or'));
|
|
24
|
+
};
|
|
11
25
|
const IntelligentSearch = ({ account, environment, hideUnavailableItems, simulationBehavior, showSponsored }, ctx) => {
|
|
12
26
|
const base = `https://${account}.${environment}.com.br/api/io`;
|
|
13
27
|
const storeCookies = (0, cookies_1.getStoreCookie)(ctx);
|
|
@@ -36,7 +50,7 @@ const IntelligentSearch = ({ account, environment, hideUnavailableItems, simulat
|
|
|
36
50
|
};
|
|
37
51
|
};
|
|
38
52
|
const addDefaultFacets = (facets) => {
|
|
39
|
-
const withDefaultFacets = facets.filter(({ key }) => !
|
|
53
|
+
const withDefaultFacets = facets.filter(({ key }) => !EXTRA_FACETS_KEYS.has(key));
|
|
40
54
|
const policyFacet = facets.find(({ key }) => key === POLICY_KEY) ?? getPolicyFacet();
|
|
41
55
|
const regionFacet = facets.find(({ key }) => key === REGION_KEY) ?? getRegionFacet();
|
|
42
56
|
if (policyFacet !== null) {
|
|
@@ -47,15 +61,25 @@ const IntelligentSearch = ({ account, environment, hideUnavailableItems, simulat
|
|
|
47
61
|
}
|
|
48
62
|
return withDefaultFacets;
|
|
49
63
|
};
|
|
50
|
-
const
|
|
64
|
+
const addSearchParamsFacets = (facets, params) => {
|
|
65
|
+
const fuzzyFacet = facets.find(({ key }) => key === FUZZY_KEY) ?? null;
|
|
66
|
+
const operatorFacet = facets.find(({ key }) => key === OPERATOR_KEY) ?? null;
|
|
67
|
+
if (fuzzyFacet && isFuzzyFacet(fuzzyFacet)) {
|
|
68
|
+
params.append(FUZZY_KEY, fuzzyFacet.value);
|
|
69
|
+
}
|
|
70
|
+
if (operatorFacet && isOperatorFacet(operatorFacet)) {
|
|
71
|
+
params.append(OPERATOR_KEY, operatorFacet.value);
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
const search = ({ query = '', page, count, sort = '', selectedFacets = [], type, showInvisibleItems, }) => {
|
|
51
75
|
const params = new URLSearchParams({
|
|
52
76
|
page: (page + 1).toString(),
|
|
53
77
|
count: count.toString(),
|
|
54
78
|
query,
|
|
55
79
|
sort,
|
|
56
|
-
fuzzy,
|
|
57
80
|
locale: ctx.storage.locale,
|
|
58
81
|
});
|
|
82
|
+
addSearchParamsFacets(selectedFacets, params);
|
|
59
83
|
if (showInvisibleItems) {
|
|
60
84
|
params.append('show-invisible-items', 'true');
|
|
61
85
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/platforms/vtex/clients/search/index.ts"],"names":[],"mappings":";;;AAEA,iDAAoD;AAEpD,oCAAmC;AAuCnC,MAAM,UAAU,GAAG,cAAc,CAAA;AACjC,MAAM,UAAU,GAAG,WAAW,CAAA;AAC9B,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/platforms/vtex/clients/search/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -83,14 +83,12 @@ exports.StoreSearchResult = {
|
|
|
83
83
|
.filter((facet) => !isCollectionPage || !isRootFacet(facet, isDepartment, isBrand));
|
|
84
84
|
return filteredFacets;
|
|
85
85
|
},
|
|
86
|
-
metadata: async ({
|
|
87
|
-
if (!searchArgs.query) {
|
|
88
|
-
return null;
|
|
89
|
-
}
|
|
86
|
+
metadata: async ({ productSearchPromise }) => {
|
|
90
87
|
const productSearchResult = await productSearchPromise;
|
|
91
88
|
return {
|
|
92
89
|
isTermMisspelled: productSearchResult.correction?.misspelled ?? false,
|
|
93
90
|
logicalOperator: productSearchResult.operator,
|
|
91
|
+
fuzzy: productSearchResult.fuzzy
|
|
94
92
|
};
|
|
95
93
|
},
|
|
96
94
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchResult.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/resolvers/searchResult.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"searchResult.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/resolvers/searchResult.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,14 @@ export declare const FACET_CROSS_SELLING_MAP: {
|
|
|
15
15
|
readonly accessories: "accessories";
|
|
16
16
|
readonly suggestions: "suggestions";
|
|
17
17
|
};
|
|
18
|
+
export type FuzzyFacet = {
|
|
19
|
+
key: 'fuzzy';
|
|
20
|
+
value: '0' | '1' | 'auto';
|
|
21
|
+
};
|
|
22
|
+
export type OperatorFacet = {
|
|
23
|
+
key: 'operator';
|
|
24
|
+
value: 'and' | 'or';
|
|
25
|
+
};
|
|
18
26
|
/**
|
|
19
27
|
* Transform facets from the store to VTEX platform facets.
|
|
20
28
|
* For instance, the channel in Store becomes trade-policy and regionId in VTEX's realm
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facets.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/utils/facets.ts"],"names":[],"mappings":";;;AACA,yCAA8C;AAYjC,QAAA,uBAAuB,GAAG;IACrC,GAAG,EAAE,qBAAqB;IAC1B,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,kBAAkB;IACjC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;CAClB,CAAA;
|
|
1
|
+
{"version":3,"file":"facets.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/utils/facets.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faststore/api",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.150",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/cjs/src/index.js",
|
|
6
6
|
"typings": "dist/esm/src/index.d.ts",
|
|
@@ -51,8 +51,8 @@
|
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@envelop/core": "^5.0.2",
|
|
54
|
-
"@faststore/eslint-config": "^3.0.
|
|
55
|
-
"@faststore/shared": "^3.0.
|
|
54
|
+
"@faststore/eslint-config": "^3.0.150",
|
|
55
|
+
"@faststore/shared": "^3.0.150",
|
|
56
56
|
"@graphql-codegen/cli": "2.2.0",
|
|
57
57
|
"@graphql-codegen/typescript": "2.2.2",
|
|
58
58
|
"@parcel/watcher": "^2.4.0",
|
|
@@ -484,6 +484,8 @@ export type QueryShippingArgs = {
|
|
|
484
484
|
/** Search result. */
|
|
485
485
|
export type SearchMetadata = {
|
|
486
486
|
__typename?: 'SearchMetadata';
|
|
487
|
+
/** Indicates how the search engine corrected the misspelled word by using fuzzy logic. */
|
|
488
|
+
fuzzy?: Maybe<Scalars['String']>;
|
|
487
489
|
/** Indicates if the search term was misspelled. */
|
|
488
490
|
isTermMisspelled: Scalars['Boolean'];
|
|
489
491
|
/** Logical operator used to run the search. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/__generated__/schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/__generated__/schema.ts"],"names":[],"mappings":"AA4wBC,CAAC;AA+DD,CAAC;AAmUD,CAAC;AAOD,CAAC"}
|
|
@@ -2,8 +2,22 @@ import { getStoreCookie } from '../../utils/cookies';
|
|
|
2
2
|
import { fetchAPI } from '../fetch';
|
|
3
3
|
const POLICY_KEY = 'trade-policy';
|
|
4
4
|
const REGION_KEY = 'region-id';
|
|
5
|
-
const
|
|
5
|
+
const FUZZY_KEY = 'fuzzy';
|
|
6
|
+
const OPERATOR_KEY = 'operator';
|
|
7
|
+
const EXTRA_FACETS_KEYS = new Set([
|
|
8
|
+
POLICY_KEY,
|
|
9
|
+
REGION_KEY,
|
|
10
|
+
FUZZY_KEY,
|
|
11
|
+
OPERATOR_KEY,
|
|
12
|
+
]);
|
|
6
13
|
export const isFacetBoolean = (facet) => facet.type === 'TEXT';
|
|
14
|
+
const isFuzzyFacet = (facet) => {
|
|
15
|
+
return (facet.key === 'fuzzy' &&
|
|
16
|
+
(facet.value === '0' || facet.value === '1' || facet.value === 'auto'));
|
|
17
|
+
};
|
|
18
|
+
const isOperatorFacet = (facet) => {
|
|
19
|
+
return (facet.key === 'operator' && (facet.value === 'and' || facet.value === 'or'));
|
|
20
|
+
};
|
|
7
21
|
export const IntelligentSearch = ({ account, environment, hideUnavailableItems, simulationBehavior, showSponsored }, ctx) => {
|
|
8
22
|
const base = `https://${account}.${environment}.com.br/api/io`;
|
|
9
23
|
const storeCookies = getStoreCookie(ctx);
|
|
@@ -32,7 +46,7 @@ export const IntelligentSearch = ({ account, environment, hideUnavailableItems,
|
|
|
32
46
|
};
|
|
33
47
|
};
|
|
34
48
|
const addDefaultFacets = (facets) => {
|
|
35
|
-
const withDefaultFacets = facets.filter(({ key }) => !
|
|
49
|
+
const withDefaultFacets = facets.filter(({ key }) => !EXTRA_FACETS_KEYS.has(key));
|
|
36
50
|
const policyFacet = facets.find(({ key }) => key === POLICY_KEY) ?? getPolicyFacet();
|
|
37
51
|
const regionFacet = facets.find(({ key }) => key === REGION_KEY) ?? getRegionFacet();
|
|
38
52
|
if (policyFacet !== null) {
|
|
@@ -43,15 +57,25 @@ export const IntelligentSearch = ({ account, environment, hideUnavailableItems,
|
|
|
43
57
|
}
|
|
44
58
|
return withDefaultFacets;
|
|
45
59
|
};
|
|
46
|
-
const
|
|
60
|
+
const addSearchParamsFacets = (facets, params) => {
|
|
61
|
+
const fuzzyFacet = facets.find(({ key }) => key === FUZZY_KEY) ?? null;
|
|
62
|
+
const operatorFacet = facets.find(({ key }) => key === OPERATOR_KEY) ?? null;
|
|
63
|
+
if (fuzzyFacet && isFuzzyFacet(fuzzyFacet)) {
|
|
64
|
+
params.append(FUZZY_KEY, fuzzyFacet.value);
|
|
65
|
+
}
|
|
66
|
+
if (operatorFacet && isOperatorFacet(operatorFacet)) {
|
|
67
|
+
params.append(OPERATOR_KEY, operatorFacet.value);
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
const search = ({ query = '', page, count, sort = '', selectedFacets = [], type, showInvisibleItems, }) => {
|
|
47
71
|
const params = new URLSearchParams({
|
|
48
72
|
page: (page + 1).toString(),
|
|
49
73
|
count: count.toString(),
|
|
50
74
|
query,
|
|
51
75
|
sort,
|
|
52
|
-
fuzzy,
|
|
53
76
|
locale: ctx.storage.locale,
|
|
54
77
|
});
|
|
78
|
+
addSearchParamsFacets(selectedFacets, params);
|
|
55
79
|
if (showInvisibleItems) {
|
|
56
80
|
params.append('show-invisible-items', 'true');
|
|
57
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/platforms/vtex/clients/search/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAuCnC,MAAM,UAAU,GAAG,cAAc,CAAA;AACjC,MAAM,UAAU,GAAG,WAAW,CAAA;AAC9B,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/platforms/vtex/clients/search/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,14 +80,12 @@ export const StoreSearchResult = {
|
|
|
80
80
|
.filter((facet) => !isCollectionPage || !isRootFacet(facet, isDepartment, isBrand));
|
|
81
81
|
return filteredFacets;
|
|
82
82
|
},
|
|
83
|
-
metadata: async ({
|
|
84
|
-
if (!searchArgs.query) {
|
|
85
|
-
return null;
|
|
86
|
-
}
|
|
83
|
+
metadata: async ({ productSearchPromise }) => {
|
|
87
84
|
const productSearchResult = await productSearchPromise;
|
|
88
85
|
return {
|
|
89
86
|
isTermMisspelled: productSearchResult.correction?.misspelled ?? false,
|
|
90
87
|
logicalOperator: productSearchResult.operator,
|
|
88
|
+
fuzzy: productSearchResult.fuzzy
|
|
91
89
|
};
|
|
92
90
|
},
|
|
93
91
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchResult.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/resolvers/searchResult.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"searchResult.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/resolvers/searchResult.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,14 @@ export declare const FACET_CROSS_SELLING_MAP: {
|
|
|
15
15
|
readonly accessories: "accessories";
|
|
16
16
|
readonly suggestions: "suggestions";
|
|
17
17
|
};
|
|
18
|
+
export type FuzzyFacet = {
|
|
19
|
+
key: 'fuzzy';
|
|
20
|
+
value: '0' | '1' | 'auto';
|
|
21
|
+
};
|
|
22
|
+
export type OperatorFacet = {
|
|
23
|
+
key: 'operator';
|
|
24
|
+
value: 'and' | 'or';
|
|
25
|
+
};
|
|
18
26
|
/**
|
|
19
27
|
* Transform facets from the store to VTEX platform facets.
|
|
20
28
|
* For instance, the channel in Store becomes trade-policy and regionId in VTEX's realm
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facets.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/utils/facets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAY9C,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,GAAG,EAAE,qBAAqB;IAC1B,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,kBAAkB;IACjC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;CAClB,CAAA;
|
|
1
|
+
{"version":3,"file":"facets.js","sourceRoot":"","sources":["../../../../../../src/platforms/vtex/utils/facets.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faststore/api",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.152",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/cjs/src/index.js",
|
|
6
6
|
"typings": "dist/esm/src/index.d.ts",
|
|
@@ -51,8 +51,8 @@
|
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@envelop/core": "^5.0.2",
|
|
54
|
-
"@faststore/eslint-config": "^3.0.
|
|
55
|
-
"@faststore/shared": "^3.0.
|
|
54
|
+
"@faststore/eslint-config": "^3.0.152",
|
|
55
|
+
"@faststore/shared": "^3.0.152",
|
|
56
56
|
"@graphql-codegen/cli": "2.2.0",
|
|
57
57
|
"@graphql-codegen/typescript": "2.2.2",
|
|
58
58
|
"@parcel/watcher": "^2.4.0",
|
|
@@ -79,5 +79,5 @@
|
|
|
79
79
|
"volta": {
|
|
80
80
|
"extends": "../../package.json"
|
|
81
81
|
},
|
|
82
|
-
"gitHead": "
|
|
82
|
+
"gitHead": "98f762825022beee952d25f893b012f35f335cb0"
|
|
83
83
|
}
|
|
@@ -530,6 +530,8 @@ export type QueryShippingArgs = {
|
|
|
530
530
|
/** Search result. */
|
|
531
531
|
export type SearchMetadata = {
|
|
532
532
|
__typename?: 'SearchMetadata';
|
|
533
|
+
/** Indicates how the search engine corrected the misspelled word by using fuzzy logic. */
|
|
534
|
+
fuzzy?: Maybe<Scalars['String']>;
|
|
533
535
|
/** Indicates if the search term was misspelled. */
|
|
534
536
|
isTermMisspelled: Scalars['Boolean'];
|
|
535
537
|
/** Logical operator used to run the search. */
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Context, Options } from '../../'
|
|
2
2
|
import type { IStoreSelectedFacet } from '../../../../__generated__/schema'
|
|
3
3
|
import { getStoreCookie } from '../../utils/cookies'
|
|
4
|
-
import type { SelectedFacet } from '../../utils/facets'
|
|
4
|
+
import type { FuzzyFacet, OperatorFacet, SelectedFacet } from '../../utils/facets'
|
|
5
5
|
import { fetchAPI } from '../fetch'
|
|
6
6
|
import type {
|
|
7
7
|
Facet,
|
|
@@ -43,12 +43,33 @@ export interface ProductLocator {
|
|
|
43
43
|
|
|
44
44
|
const POLICY_KEY = 'trade-policy'
|
|
45
45
|
const REGION_KEY = 'region-id'
|
|
46
|
-
const
|
|
46
|
+
const FUZZY_KEY = 'fuzzy'
|
|
47
|
+
const OPERATOR_KEY = 'operator'
|
|
48
|
+
|
|
49
|
+
const EXTRA_FACETS_KEYS = new Set([
|
|
50
|
+
POLICY_KEY,
|
|
51
|
+
REGION_KEY,
|
|
52
|
+
FUZZY_KEY,
|
|
53
|
+
OPERATOR_KEY,
|
|
54
|
+
])
|
|
47
55
|
|
|
48
56
|
export const isFacetBoolean = (
|
|
49
57
|
facet: Facet
|
|
50
58
|
): facet is Facet<FacetValueBoolean> => facet.type === 'TEXT'
|
|
51
59
|
|
|
60
|
+
const isFuzzyFacet = (facet: SelectedFacet): facet is FuzzyFacet => {
|
|
61
|
+
return (
|
|
62
|
+
facet.key === 'fuzzy' &&
|
|
63
|
+
(facet.value === '0' || facet.value === '1' || facet.value === 'auto')
|
|
64
|
+
)
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
const isOperatorFacet = (facet: SelectedFacet): facet is OperatorFacet => {
|
|
68
|
+
return (
|
|
69
|
+
facet.key === 'operator' && (facet.value === 'and' || facet.value === 'or')
|
|
70
|
+
)
|
|
71
|
+
}
|
|
72
|
+
|
|
52
73
|
export const IntelligentSearch = (
|
|
53
74
|
{ account, environment, hideUnavailableItems, simulationBehavior, showSponsored }: Options,
|
|
54
75
|
ctx: Context
|
|
@@ -87,7 +108,9 @@ export const IntelligentSearch = (
|
|
|
87
108
|
}
|
|
88
109
|
|
|
89
110
|
const addDefaultFacets = (facets: SelectedFacet[]) => {
|
|
90
|
-
const withDefaultFacets = facets.filter(
|
|
111
|
+
const withDefaultFacets = facets.filter(
|
|
112
|
+
({ key }) => !EXTRA_FACETS_KEYS.has(key)
|
|
113
|
+
)
|
|
91
114
|
|
|
92
115
|
const policyFacet =
|
|
93
116
|
facets.find(({ key }) => key === POLICY_KEY) ?? getPolicyFacet()
|
|
@@ -106,6 +129,22 @@ export const IntelligentSearch = (
|
|
|
106
129
|
return withDefaultFacets
|
|
107
130
|
}
|
|
108
131
|
|
|
132
|
+
const addSearchParamsFacets = (
|
|
133
|
+
facets: SelectedFacet[],
|
|
134
|
+
params: URLSearchParams
|
|
135
|
+
) => {
|
|
136
|
+
const fuzzyFacet = facets.find(({ key }) => key === FUZZY_KEY) ?? null
|
|
137
|
+
const operatorFacet = facets.find(({ key }) => key === OPERATOR_KEY) ?? null
|
|
138
|
+
|
|
139
|
+
if (fuzzyFacet && isFuzzyFacet(fuzzyFacet)) {
|
|
140
|
+
params.append(FUZZY_KEY, fuzzyFacet.value)
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if (operatorFacet && isOperatorFacet(operatorFacet)) {
|
|
144
|
+
params.append(OPERATOR_KEY, operatorFacet.value)
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
|
|
109
148
|
const search = <T>({
|
|
110
149
|
query = '',
|
|
111
150
|
page,
|
|
@@ -113,7 +152,6 @@ export const IntelligentSearch = (
|
|
|
113
152
|
sort = '',
|
|
114
153
|
selectedFacets = [],
|
|
115
154
|
type,
|
|
116
|
-
fuzzy = 'auto',
|
|
117
155
|
showInvisibleItems,
|
|
118
156
|
}: SearchArgs): Promise<T> => {
|
|
119
157
|
const params = new URLSearchParams({
|
|
@@ -121,10 +159,11 @@ export const IntelligentSearch = (
|
|
|
121
159
|
count: count.toString(),
|
|
122
160
|
query,
|
|
123
161
|
sort,
|
|
124
|
-
fuzzy,
|
|
125
162
|
locale: ctx.storage.locale,
|
|
126
163
|
})
|
|
127
164
|
|
|
165
|
+
addSearchParamsFacets(selectedFacets, params)
|
|
166
|
+
|
|
128
167
|
if (showInvisibleItems) {
|
|
129
168
|
params.append('show-invisible-items', 'true')
|
|
130
169
|
}
|
|
@@ -117,16 +117,13 @@ export const StoreSearchResult: Record<string, Resolver<Root>> = {
|
|
|
117
117
|
|
|
118
118
|
return filteredFacets
|
|
119
119
|
},
|
|
120
|
-
metadata: async ({
|
|
121
|
-
if (!searchArgs.query) {
|
|
122
|
-
return null
|
|
123
|
-
}
|
|
124
|
-
|
|
120
|
+
metadata: async ({ productSearchPromise }) => {
|
|
125
121
|
const productSearchResult = await productSearchPromise
|
|
126
122
|
|
|
127
123
|
return {
|
|
128
124
|
isTermMisspelled: productSearchResult.correction?.misspelled ?? false,
|
|
129
125
|
logicalOperator: productSearchResult.operator,
|
|
126
|
+
fuzzy: productSearchResult.fuzzy
|
|
130
127
|
}
|
|
131
128
|
},
|
|
132
129
|
}
|
|
@@ -20,6 +20,16 @@ export const FACET_CROSS_SELLING_MAP = {
|
|
|
20
20
|
suggestions: "suggestions",
|
|
21
21
|
} as const
|
|
22
22
|
|
|
23
|
+
export type FuzzyFacet = {
|
|
24
|
+
key: 'fuzzy'
|
|
25
|
+
value: '0' | '1' | 'auto'
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export type OperatorFacet = {
|
|
29
|
+
key: 'operator'
|
|
30
|
+
value: 'and' | 'or'
|
|
31
|
+
}
|
|
32
|
+
|
|
23
33
|
/**
|
|
24
34
|
* Transform facets from the store to VTEX platform facets.
|
|
25
35
|
* For instance, the channel in Store becomes trade-policy and regionId in VTEX's realm
|