fast-simon-sdk 1.6.2 → 1.6.4
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/lib/index.js +6 -6
- package/lib/index.js.map +1 -1
- package/lib/models/autocomplete.d.ts +3 -0
- package/lib/models/common.d.ts +12 -2
- package/lib/models/common.js.map +1 -1
- package/lib/models/fullTextSearch.d.ts +15 -0
- package/lib/models/fullTextSearch.js.map +1 -1
- package/lib/models/smartCollections.d.ts +9 -0
- package/lib/sections/fullTextSearch/index.js +59 -9
- package/lib/sections/fullTextSearch/index.js.map +1 -1
- package/lib/sections/fullTextSearch/utils.js +2 -1
- package/lib/sections/fullTextSearch/utils.js.map +1 -1
- package/lib/sections/index.js +15 -6
- package/lib/sections/index.js.map +1 -1
- package/lib/sections/initialization/index.js +1 -1
- package/lib/sections/initialization/index.js.map +1 -1
- package/lib/sections/initialization/utils.js +3 -2
- package/lib/sections/initialization/utils.js.map +1 -1
- package/lib/sections/instantSearch/index.js +9 -8
- package/lib/sections/instantSearch/index.js.map +1 -1
- package/lib/sections/instantSearch/utils.js +12 -6
- package/lib/sections/instantSearch/utils.js.map +1 -1
- package/lib/sections/recommendations/index.js +6 -3
- package/lib/sections/recommendations/index.js.map +1 -1
- package/lib/sections/smartCollections/index.js +27 -11
- package/lib/sections/smartCollections/index.js.map +1 -1
- package/lib/sections/smartCollections/utils.d.ts +6 -1
- package/lib/sections/smartCollections/utils.js +83 -18
- package/lib/sections/smartCollections/utils.js.map +1 -1
- package/lib/services/fullTextSearch.d.ts +1 -1
- package/lib/services/fullTextSearch.js +18 -6
- package/lib/services/fullTextSearch.js.map +1 -1
- package/lib/services/related.d.ts +6 -2
- package/lib/services/related.js +11 -4
- package/lib/services/related.js.map +1 -1
- package/lib/services/smartCollections.d.ts +1 -1
- package/lib/services/smartCollections.js +17 -5
- package/lib/services/smartCollections.js.map +1 -1
- package/lib/utils/filtersPersonalization.d.ts +3 -0
- package/lib/utils/filtersPersonalization.js +40 -0
- package/lib/utils/filtersPersonalization.js.map +1 -0
- package/lib/utils/validation.d.ts +1 -0
- package/lib/utils/validation.js +16 -1
- package/lib/utils/validation.js.map +1 -1
- package/package.json +1 -1
package/lib/services/related.js
CHANGED
|
@@ -6,11 +6,14 @@ var config_1 = require("../config");
|
|
|
6
6
|
var debug_1 = require("../utils/debug");
|
|
7
7
|
var options_1 = require("../utils/options");
|
|
8
8
|
var shopifyMarkets_1 = require("../utils/shopifyMarkets");
|
|
9
|
+
var filtersPersonalization_1 = require("../utils/filtersPersonalization");
|
|
9
10
|
var BASE_URL = "https://api.fastsimon.com";
|
|
10
11
|
exports.debugVersion = (0, debug_1.getDebugEndpoint)();
|
|
11
12
|
exports.Related = {
|
|
12
13
|
getProducts: function (_a) {
|
|
13
|
-
var storeID = _a.storeID, uuid = _a.uuid, productID = _a.productID, _b = _a.recent, recent = _b === void 0 ? [] : _b, _c = _a.specs, specs = _c === void 0 ? [] : _c, cartToken = _a.cartToken, withAttributes = _a.withAttributes, src = _a.src, hasShopifyMarkets = _a.hasShopifyMarkets, companyLocationContext = _a.companyLocationContext;
|
|
14
|
+
var storeID = _a.storeID, uuid = _a.uuid, productID = _a.productID, _b = _a.recent, recent = _b === void 0 ? [] : _b, _c = _a.specs, specs = _c === void 0 ? [] : _c, cartToken = _a.cartToken, withAttributes = _a.withAttributes, src = _a.src, hasShopifyMarkets = _a.hasShopifyMarkets, companyLocationContext = _a.companyLocationContext, isPersonalizedFiltersActive = _a.isPersonalizedFiltersActive, userToken = _a.userToken;
|
|
15
|
+
var st = userToken || localStorage.getItem(config_1.USER_SESSION_TOKEN_LS_KEY) || localStorage.getItem('isp_token_1') || undefined;
|
|
16
|
+
var filtersPersonalization = (0, filtersPersonalization_1.isFiltersPersonalization)(false, isPersonalizedFiltersActive);
|
|
14
17
|
return API_1.API.get({
|
|
15
18
|
url: "".concat(exports.debugVersion || BASE_URL, "/related_products_suggest"),
|
|
16
19
|
params: {
|
|
@@ -25,12 +28,15 @@ exports.Related = {
|
|
|
25
28
|
disable_personalization: (0, options_1.getSDKABTestingOptionExist)("ab_test_disable_recommendations_personalization"),
|
|
26
29
|
with_product_attributes: withAttributes,
|
|
27
30
|
market_context: hasShopifyMarkets ? shopifyMarkets_1.default.getCountry() : undefined,
|
|
28
|
-
company_location_context: companyLocationContext ? companyLocationContext : undefined
|
|
31
|
+
company_location_context: companyLocationContext ? companyLocationContext : undefined,
|
|
32
|
+
st: (st && filtersPersonalization) ? st : undefined
|
|
29
33
|
}
|
|
30
34
|
});
|
|
31
35
|
},
|
|
32
36
|
getRecentlyViewed: function (_a) {
|
|
33
|
-
var _b = _a.recent, recent = _b === void 0 ? [] : _b, uuid = _a.uuid, storeID = _a.storeID, categoryID = _a.categoryID, cartToken = _a.cartToken, hasShopifyMarkets = _a.hasShopifyMarkets, companyLocationContext = _a.companyLocationContext;
|
|
37
|
+
var _b = _a.recent, recent = _b === void 0 ? [] : _b, uuid = _a.uuid, storeID = _a.storeID, categoryID = _a.categoryID, cartToken = _a.cartToken, hasShopifyMarkets = _a.hasShopifyMarkets, companyLocationContext = _a.companyLocationContext, isPersonalizedFiltersActive = _a.isPersonalizedFiltersActive, userToken = _a.userToken;
|
|
38
|
+
var st = userToken || localStorage.getItem(config_1.USER_SESSION_TOKEN_LS_KEY) || localStorage.getItem('isp_token_1') || undefined;
|
|
39
|
+
var filtersPersonalization = (0, filtersPersonalization_1.isFiltersPersonalization)(false, isPersonalizedFiltersActive);
|
|
34
40
|
return API_1.API.get({
|
|
35
41
|
url: "".concat(exports.debugVersion || BASE_URL, "/related_products_suggest"),
|
|
36
42
|
params: {
|
|
@@ -48,7 +54,8 @@ exports.Related = {
|
|
|
48
54
|
]),
|
|
49
55
|
cart_token: cartToken,
|
|
50
56
|
market_context: hasShopifyMarkets ? shopifyMarkets_1.default.getCountry() : undefined,
|
|
51
|
-
company_location_context: companyLocationContext ? companyLocationContext : undefined
|
|
57
|
+
company_location_context: companyLocationContext ? companyLocationContext : undefined,
|
|
58
|
+
st: (st && filtersPersonalization) ? st : undefined
|
|
52
59
|
}
|
|
53
60
|
});
|
|
54
61
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"related.js","sourceRoot":"","sources":["../../src/services/related.ts"],"names":[],"mappings":";;;AAAA,oCAAiC;AAEjC,
|
|
1
|
+
{"version":3,"file":"related.js","sourceRoot":"","sources":["../../src/services/related.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { smartCollections, SmartCollectionsResponse } from "../models/smartCollections";
|
|
2
2
|
export declare const debugVersion: string;
|
|
3
3
|
export declare const SmartCollections: {
|
|
4
|
-
getSmartCollections: ({ uuid, storeID, cdn, facetRequired, narrowBy, page, productsPerPage, sortBy, withAttributes, categoryID, recent, rec, searchWithinSearch, segments, hasShopifyMarkets, companyLocationContext, withProductTypes, userToken }: smartCollections) => Promise<SmartCollectionsResponse>;
|
|
4
|
+
getSmartCollections: ({ uuid, storeID, cdn, facetRequired, narrowBy, page, productsPerPage, sortBy, isPersonalizedFiltersActive, withAttributes, categoryID, recent, rec, searchWithinSearch, segments, hasShopifyMarkets, companyLocationContext, withProductTypes, userToken, abTestingVariations, disableMerchandisingRules, disableMerchandising, disableStrategies }: smartCollections) => Promise<SmartCollectionsResponse>;
|
|
5
5
|
};
|
|
@@ -9,14 +9,25 @@ var utils_1 = require("../sections/initialization/utils");
|
|
|
9
9
|
var bigcommerce_customer_1 = require("@fast-simon/bigcommerce_customer");
|
|
10
10
|
var location_1 = require("../utils/location");
|
|
11
11
|
var shopifyMarkets_1 = require("../utils/shopifyMarkets");
|
|
12
|
+
var config_1 = require("../config");
|
|
13
|
+
var ABTesting_1 = require("../utils/ABTesting");
|
|
14
|
+
var filtersPersonalization_1 = require("../utils/filtersPersonalization");
|
|
12
15
|
var BASE_URL = "https://api.fastsimon.com";
|
|
13
16
|
exports.debugVersion = (0, debug_1.getDebugEndpoint)();
|
|
14
17
|
exports.SmartCollections = {
|
|
15
18
|
getSmartCollections: function (_a) {
|
|
16
19
|
var _b;
|
|
17
|
-
var uuid = _a.uuid, storeID = _a.storeID, cdn = _a.cdn, facetRequired = _a.facetRequired, narrowBy = _a.narrowBy, page = _a.page, productsPerPage = _a.productsPerPage, sortBy = _a.sortBy, withAttributes = _a.withAttributes, categoryID = _a.categoryID, recent = _a.recent, rec = _a.rec, searchWithinSearch = _a.searchWithinSearch, segments = _a.segments, hasShopifyMarkets = _a.hasShopifyMarkets, companyLocationContext = _a.companyLocationContext, withProductTypes = _a.withProductTypes, userToken = _a.userToken;
|
|
20
|
+
var uuid = _a.uuid, storeID = _a.storeID, cdn = _a.cdn, facetRequired = _a.facetRequired, narrowBy = _a.narrowBy, page = _a.page, productsPerPage = _a.productsPerPage, sortBy = _a.sortBy, isPersonalizedFiltersActive = _a.isPersonalizedFiltersActive, withAttributes = _a.withAttributes, categoryID = _a.categoryID, recent = _a.recent, rec = _a.rec, searchWithinSearch = _a.searchWithinSearch, segments = _a.segments, hasShopifyMarkets = _a.hasShopifyMarkets, companyLocationContext = _a.companyLocationContext, withProductTypes = _a.withProductTypes, userToken = _a.userToken, abTestingVariations = _a.abTestingVariations, disableMerchandisingRules = _a.disableMerchandisingRules, disableMerchandising = _a.disableMerchandising, disableStrategies = _a.disableStrategies;
|
|
18
21
|
var platform = (0, utils_1.getPlatform)();
|
|
19
22
|
var segmentsToken = (0, segments_1.getSegments)();
|
|
23
|
+
var stToken = (userToken ? userToken : (localStorage.getItem(config_1.USER_SESSION_TOKEN_LS_KEY) ? localStorage.getItem(config_1.USER_SESSION_TOKEN_LS_KEY) : undefined));
|
|
24
|
+
var variant_id = (0, ABTesting_1.default)();
|
|
25
|
+
var hasVariant = false;
|
|
26
|
+
if (variant_id && (abTestingVariations === null || abTestingVariations === void 0 ? void 0 : abTestingVariations[variant_id])) {
|
|
27
|
+
hasVariant = true;
|
|
28
|
+
}
|
|
29
|
+
(0, filtersPersonalization_1.handleFiltersPersonalization)(narrowBy, isPersonalizedFiltersActive);
|
|
30
|
+
var filtersPersonalization = (0, filtersPersonalization_1.isFiltersPersonalization)(!!(narrowBy === null || narrowBy === void 0 ? void 0 : narrowBy.length), isPersonalizedFiltersActive);
|
|
20
31
|
var params = {
|
|
21
32
|
UUID: uuid,
|
|
22
33
|
src: "JSSDK",
|
|
@@ -34,20 +45,21 @@ exports.SmartCollections = {
|
|
|
34
45
|
search_within_search: searchWithinSearch,
|
|
35
46
|
// ab_testing
|
|
36
47
|
disable_personalization: (0, options_1.getSDKABTestingOptionExist)("ab_test_disable_search_personalization"),
|
|
37
|
-
disable_merchandising:
|
|
38
|
-
disable_merchandising_rules:
|
|
39
|
-
disable_strategies:
|
|
48
|
+
disable_merchandising: disableMerchandising ? "1" : undefined,
|
|
49
|
+
disable_merchandising_rules: disableMerchandisingRules ? "1" : undefined,
|
|
50
|
+
disable_strategies: disableStrategies ? "1" : undefined,
|
|
40
51
|
disable_semantics: (0, options_1.getSDKABTestingOptionExist)("ab_test_disable_semantics"),
|
|
41
52
|
//preview stuff
|
|
42
53
|
merchandising_rules: (0, options_1.getSDKABTestingOption)("merchandising_rules"),
|
|
43
54
|
request_serial_number: (0, options_1.getSDKABTestingOption)("request_serial_number"),
|
|
44
55
|
related_search: (0, options_1.getSDKABTestingOption)("related_search"),
|
|
45
|
-
st: segmentsToken ? segmentsToken : (
|
|
56
|
+
st: segmentsToken ? segmentsToken : (stToken && (recent || filtersPersonalization)) ? stToken : undefined,
|
|
46
57
|
customer_group_id: platform === "Bigcommerce" ? bigcommerce_customer_1.bigcommerceCustomer.getBigcommerceCustomerGroupId() : undefined,
|
|
47
58
|
location: (0, location_1.default)(uuid) || undefined,
|
|
48
59
|
market_context: hasShopifyMarkets ? shopifyMarkets_1.default.getCountry() : undefined,
|
|
49
60
|
company_location_context: companyLocationContext ? companyLocationContext : undefined,
|
|
50
61
|
with_product_types: withProductTypes ? 1 : undefined,
|
|
62
|
+
variation_id: hasVariant ? variant_id : undefined
|
|
51
63
|
};
|
|
52
64
|
if ((0, options_1.getSDKABTestingOption)("reasoning")) {
|
|
53
65
|
params["segments"] = (_b = JSON.stringify(segments)) !== null && _b !== void 0 ? _b : (0, segments_1.getSegments)();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"smartCollections.js","sourceRoot":"","sources":["../../src/services/smartCollections.ts"],"names":[],"mappings":";;;AAAA,oCAAiC;AAEjC,wCAAgE;AAChE,4CAAmF;AACnF,8CAA8C;AAC9C,0DAA6D;AAC7D,yEAAqE;AACrE,8CAAgD;AAChD,0DAAqD;
|
|
1
|
+
{"version":3,"file":"smartCollections.js","sourceRoot":"","sources":["../../src/services/smartCollections.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isFiltersPersonalization = exports.handleFiltersPersonalization = void 0;
|
|
4
|
+
var LS_KEY = 'fast-simon-filters-personalization';
|
|
5
|
+
var LS_KEY_DEBUG = 'fast-simon-filters-personalization-debug';
|
|
6
|
+
var handleFiltersPersonalization = function (narrow, isActive) {
|
|
7
|
+
var _a;
|
|
8
|
+
if (!isActive && !localStorage.getItem(LS_KEY_DEBUG)) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
if (!narrow || narrow.length !== 1) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
var specificNarrow = narrow[0];
|
|
15
|
+
if (((_a = specificNarrow === null || specificNarrow === void 0 ? void 0 : specificNarrow[0]) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== 'size') {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
var personalSizeFilter = specificNarrow[1];
|
|
19
|
+
localStorage.setItem(LS_KEY, JSON.stringify({
|
|
20
|
+
time: Date.now(),
|
|
21
|
+
personalSizeFilter: personalSizeFilter
|
|
22
|
+
}));
|
|
23
|
+
};
|
|
24
|
+
exports.handleFiltersPersonalization = handleFiltersPersonalization;
|
|
25
|
+
var isFiltersPersonalization = function (isNarrow, isActive) {
|
|
26
|
+
if (isNarrow || (!isActive && !localStorage.getItem(LS_KEY_DEBUG))) {
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
var personalizedFilterLS = localStorage.getItem(LS_KEY);
|
|
30
|
+
if (!personalizedFilterLS) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
var personalSizeFilter = JSON.parse(personalizedFilterLS);
|
|
34
|
+
if (Date.now() - personalSizeFilter.time > 1000 * 60 * 30) {
|
|
35
|
+
return undefined;
|
|
36
|
+
}
|
|
37
|
+
return true;
|
|
38
|
+
};
|
|
39
|
+
exports.isFiltersPersonalization = isFiltersPersonalization;
|
|
40
|
+
//# sourceMappingURL=filtersPersonalization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filtersPersonalization.js","sourceRoot":"","sources":["../../src/utils/filtersPersonalization.ts"],"names":[],"mappings":";;;AAEA,IAAM,MAAM,GAAG,oCAAoC,CAAC;AACpD,IAAM,YAAY,GAAG,0CAA0C,CAAC;AAEzD,IAAM,4BAA4B,GAAG,UAAC,MAAiB,EAAE,QAAkB;;IAC9E,IAAG,CAAC,QAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;QACjD,OAAO;KACV;IACD,IAAG,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/B,OAAO;KACV;IACD,IAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACjC,IAAG,CAAA,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAG,CAAC,CAAC,0CAAE,WAAW,EAAE,MAAK,MAAM,EAAE;QAC9C,OAAO;KACV;IACD,IAAI,kBAAkB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAE3C,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;QACxC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE;QAChB,kBAAkB,EAAE,kBAAkB;KACzC,CAAC,CAAC,CAAC;AAER,CAAC,CAAA;AAlBY,QAAA,4BAA4B,gCAkBxC;AAGM,IAAM,wBAAwB,GAAG,UAAC,QAAiB,EAAE,QAAkB;IAC1E,IAAG,QAAQ,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE;QAC/D,OAAO,SAAS,CAAC;KACpB;IACD,IAAM,oBAAoB,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAG,CAAC,oBAAoB,EAAE;QACtB,OAAO,SAAS,CAAA;KACnB;IACD,IAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAE5D,IAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC,IAAI,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,EAAE;QACtD,OAAO,SAAS,CAAC;KACpB;IAED,OAAO,IAAI,CAAC;AAChB,CAAC,CAAA;AAfY,QAAA,wBAAwB,4BAepC"}
|
|
@@ -2,3 +2,4 @@ import { SDKUtils } from "../models/common";
|
|
|
2
2
|
export declare const validateUUID: (uuid: string) => boolean;
|
|
3
3
|
export declare const validateParams: (validators: string[], props: object) => boolean;
|
|
4
4
|
export declare const isValidAPIUser: (sdkUtils: SDKUtils) => boolean;
|
|
5
|
+
export declare const validateCallbackParams: (props: object) => boolean;
|
package/lib/utils/validation.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isValidAPIUser = exports.validateParams = exports.validateUUID = void 0;
|
|
3
|
+
exports.validateCallbackParams = exports.isValidAPIUser = exports.validateParams = exports.validateUUID = void 0;
|
|
4
4
|
var config_1 = require("../config");
|
|
5
5
|
var validateUUID = function (uuid) {
|
|
6
6
|
if (uuid.split("-").length === 5) {
|
|
@@ -29,4 +29,19 @@ var isValidAPIUser = function (sdkUtils) {
|
|
|
29
29
|
return true;
|
|
30
30
|
};
|
|
31
31
|
exports.isValidAPIUser = isValidAPIUser;
|
|
32
|
+
var validateCallbackParams = function (props) {
|
|
33
|
+
var result = true;
|
|
34
|
+
for (var _i = 0, _a = ["onProductsLoaded", "onFacetsLoaded"]; _i < _a.length; _i++) {
|
|
35
|
+
var v = _a[_i];
|
|
36
|
+
if (!(v in props)) {
|
|
37
|
+
result = false;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
if (!result && ("callback" in props)) {
|
|
41
|
+
result = true;
|
|
42
|
+
}
|
|
43
|
+
!result ? console.log("%c\u274C IS+ SDK Error | params: \"onProductsLoaded\", \"onFacetsLoaded\" missing", "font-weight: bold; font-size: 12px; color: red") : null;
|
|
44
|
+
return result;
|
|
45
|
+
};
|
|
46
|
+
exports.validateCallbackParams = validateCallbackParams;
|
|
32
47
|
//# sourceMappingURL=validation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":";;;AACA,oCAAwC;AAEjC,IAAM,YAAY,GAAG,UAAC,IAAY;IACrC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,OAAO,IAAI,CAAC;KACf;IACD,OAAO,CAAC,GAAG,CAAC,uCAAkC,EAAE,gDAAgD,CAAC,CAAC;IAClG,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AANW,QAAA,YAAY,gBAMvB;AAEK,IAAM,cAAc,GAAG,UAAC,UAAoB,EAAE,KAAa;IAC9D,KAAgB,UAAU,EAAV,yBAAU,EAAV,wBAAU,EAAV,IAAU,EAAE;QAAvB,IAAM,CAAC,mBAAA;QACR,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,EAAE;YACf,OAAO,CAAC,GAAG,CAAC,0CAA8B,CAAC,aAAU,EAAE,gDAAgD,CAAC,CAAC;YACzG,OAAO,KAAK,CAAC;SAChB;KACJ;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEK,IAAM,cAAc,GAAG,UAAC,QAAkB;IAC7C,IAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAC;QACtC,OAAO,CAAC,GAAG,CAAC,YAAK,sBAAa,CAAE,EAAE,gDAAgD,CAAC,CAAC;QACpF,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AANW,QAAA,cAAc,kBAMzB"}
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":";;;AACA,oCAAwC;AAEjC,IAAM,YAAY,GAAG,UAAC,IAAY;IACrC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,OAAO,IAAI,CAAC;KACf;IACD,OAAO,CAAC,GAAG,CAAC,uCAAkC,EAAE,gDAAgD,CAAC,CAAC;IAClG,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AANW,QAAA,YAAY,gBAMvB;AAEK,IAAM,cAAc,GAAG,UAAC,UAAoB,EAAE,KAAa;IAC9D,KAAgB,UAAU,EAAV,yBAAU,EAAV,wBAAU,EAAV,IAAU,EAAE;QAAvB,IAAM,CAAC,mBAAA;QACR,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,EAAE;YACf,OAAO,CAAC,GAAG,CAAC,0CAA8B,CAAC,aAAU,EAAE,gDAAgD,CAAC,CAAC;YACzG,OAAO,KAAK,CAAC;SAChB;KACJ;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB;AAEK,IAAM,cAAc,GAAG,UAAC,QAAkB;IAC7C,IAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAC;QACtC,OAAO,CAAC,GAAG,CAAC,YAAK,sBAAa,CAAE,EAAE,gDAAgD,CAAC,CAAC;QACpF,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AANW,QAAA,cAAc,kBAMzB;AAEK,IAAM,sBAAsB,GAAG,UAAC,KAAa;IAChD,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,KAAgB,UAAsC,EAAtC,MAAC,kBAAkB,EAAE,gBAAgB,CAAC,EAAtC,cAAsC,EAAtC,IAAsC,EAAE;QAAnD,IAAM,CAAC,SAAA;QACR,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,EAAE;YACf,MAAM,GAAG,KAAK,CAAC;SAClB;KACJ;IACD,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,EAAE;QAClC,MAAM,GAAG,IAAI,CAAC;KACjB;IACD,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mFAA0E,EAAE,gDAAgD,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE3J,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAbW,QAAA,sBAAsB,0BAajC"}
|