@ikas/storefront 0.0.87 → 0.0.89

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/build/index.es.js CHANGED
@@ -11298,6 +11298,8 @@ var IkasCategoryPropValueProvider = /** @class */ (function () {
11298
11298
  if (this.categoryPropValue.usePageData) {
11299
11299
  return [2 /*return*/, this.pageSpecificData];
11300
11300
  }
11301
+ if (!this.categoryPropValue.categoryId)
11302
+ return [2 /*return*/, null];
11301
11303
  _a.label = 1;
11302
11304
  case 1:
11303
11305
  _a.trys.push([1, 3, , 4]);
@@ -11312,7 +11314,7 @@ var IkasCategoryPropValueProvider = /** @class */ (function () {
11312
11314
  err_1 = _a.sent();
11313
11315
  console.log(err_1);
11314
11316
  return [3 /*break*/, 4];
11315
- case 4: return [2 /*return*/, new IkasCategory({})];
11317
+ case 4: return [2 /*return*/, null];
11316
11318
  }
11317
11319
  });
11318
11320
  });
@@ -20092,12 +20094,12 @@ var IkasCustomerStore = /** @class */ (function () {
20092
20094
  favoriteProductsResult = _b.sent();
20093
20095
  if (!favoriteProductsResult.length)
20094
20096
  return [2 /*return*/, []];
20095
- return [4 /*yield*/, IkasProductAPI.listProducts({
20096
- idList: favoriteProductsResult.map(function (fP) { return fP.productId; }),
20097
+ return [4 /*yield*/, IkasProductSearchAPI.searchProducts({
20098
+ productIdList: favoriteProductsResult.map(function (fP) { return fP.productId; }),
20097
20099
  })];
20098
20100
  case 2:
20099
20101
  productsResult = _b.sent();
20100
- return [2 /*return*/, productsResult.products];
20102
+ return [2 /*return*/, (productsResult === null || productsResult === void 0 ? void 0 : productsResult.data) || []];
20101
20103
  case 3:
20102
20104
  _b.sent();
20103
20105
  return [2 /*return*/, []];
@@ -21203,57 +21205,6 @@ var GoogleTagManager = /** @class */ (function () {
21203
21205
  console.error(err);
21204
21206
  }
21205
21207
  };
21206
- GoogleTagManager.addToWishlist = function (id) {
21207
- var serverRuntimeConfig = getConfig().serverRuntimeConfig;
21208
- var fbpId = serverRuntimeConfig.FBP_ID;
21209
- var event = {};
21210
- try {
21211
- if (fbpId) {
21212
- !isServer$3 &&
21213
- window.fbq("track", "AddToWishlist", {
21214
- content_ids: [id],
21215
- });
21216
- }
21217
- return event;
21218
- }
21219
- catch (err) {
21220
- console.error(err);
21221
- }
21222
- };
21223
- GoogleTagManager.search = function (searchKeyword) {
21224
- var serverRuntimeConfig = getConfig().serverRuntimeConfig;
21225
- var fbpId = serverRuntimeConfig.FBP_ID;
21226
- var event = {};
21227
- try {
21228
- if (fbpId) {
21229
- !isServer$3 &&
21230
- window.fbq("track", "Search", {
21231
- search_string: searchKeyword,
21232
- });
21233
- }
21234
- return event;
21235
- }
21236
- catch (err) {
21237
- console.error(err);
21238
- }
21239
- };
21240
- GoogleTagManager.completeRegistration = function () {
21241
- var serverRuntimeConfig = getConfig().serverRuntimeConfig;
21242
- var fbpId = serverRuntimeConfig.FBP_ID;
21243
- var event = {};
21244
- try {
21245
- if (fbpId) {
21246
- !isServer$3 &&
21247
- window.fbq("track", "CompleteRegistration", {
21248
- status: true,
21249
- });
21250
- }
21251
- return event;
21252
- }
21253
- catch (err) {
21254
- console.error(err);
21255
- }
21256
- };
21257
21208
  return GoogleTagManager;
21258
21209
  }());
21259
21210
  function productToGTMItem(productDetail, quantity) {
@@ -21307,20 +21258,13 @@ function orderLineItemToGTMItem(orderLineItem, quantity) {
21307
21258
  }
21308
21259
 
21309
21260
  var LS_BEGIN_CHECKOUT_KEY = "gtmBeginCheckout";
21310
- var isServer$4 = typeof window === "undefined";
21311
21261
  var Analytics = /** @class */ (function () {
21312
21262
  function Analytics() {
21313
21263
  makeAutoObservable(this);
21314
21264
  }
21315
21265
  Analytics.pageView = function (url) {
21316
21266
  try {
21317
- var event_1 = {
21318
- event: "page-view",
21319
- page: url,
21320
- };
21321
- //@ts-ignore
21322
- !isServer$4 && window.dataLayer && window.dataLayer.push(event_1);
21323
- return event_1;
21267
+ GoogleTagManager.pageView(url);
21324
21268
  }
21325
21269
  catch (err) {
21326
21270
  console.error(err);
@@ -21330,7 +21274,6 @@ var Analytics = /** @class */ (function () {
21330
21274
  try {
21331
21275
  FacebookPixel.productView(productDetail);
21332
21276
  GoogleTagManager.productView(productDetail);
21333
- return;
21334
21277
  }
21335
21278
  catch (err) {
21336
21279
  console.error(err);
@@ -21340,7 +21283,6 @@ var Analytics = /** @class */ (function () {
21340
21283
  try {
21341
21284
  FacebookPixel.addToCart(item, quantity);
21342
21285
  GoogleTagManager.addToCart(item, quantity);
21343
- return;
21344
21286
  }
21345
21287
  catch (err) {
21346
21288
  console.error(err);
@@ -21349,7 +21291,6 @@ var Analytics = /** @class */ (function () {
21349
21291
  Analytics.removeFromCart = function (item, quantity) {
21350
21292
  try {
21351
21293
  GoogleTagManager.removeFromCart(item, quantity);
21352
- return;
21353
21294
  }
21354
21295
  catch (err) {
21355
21296
  console.error(err);
@@ -21363,7 +21304,6 @@ var Analytics = /** @class */ (function () {
21363
21304
  localStorage.setItem(LS_BEGIN_CHECKOUT_KEY, checkout.id);
21364
21305
  FacebookPixel.beginCheckout(checkout);
21365
21306
  GoogleTagManager.beginCheckout(checkout);
21366
- return;
21367
21307
  }
21368
21308
  catch (err) {
21369
21309
  console.error(err);
@@ -21374,7 +21314,6 @@ var Analytics = /** @class */ (function () {
21374
21314
  localStorage.removeItem(LS_BEGIN_CHECKOUT_KEY);
21375
21315
  FacebookPixel.purchase(checkout, orderId);
21376
21316
  GoogleTagManager.purchase(checkout, orderId);
21377
- return;
21378
21317
  }
21379
21318
  catch (err) {
21380
21319
  console.error(err);
@@ -21383,7 +21322,6 @@ var Analytics = /** @class */ (function () {
21383
21322
  Analytics.checkoutStep = function (checkout, step) {
21384
21323
  try {
21385
21324
  GoogleTagManager.checkoutStep(checkout, step);
21386
- return;
21387
21325
  }
21388
21326
  catch (err) {
21389
21327
  console.error(err);
@@ -21400,7 +21338,6 @@ var Analytics = /** @class */ (function () {
21400
21338
  Analytics.addToWishlist = function (id) {
21401
21339
  try {
21402
21340
  FacebookPixel.addToWishlist(id);
21403
- return;
21404
21341
  }
21405
21342
  catch (err) {
21406
21343
  console.error(err);
@@ -21409,7 +21346,6 @@ var Analytics = /** @class */ (function () {
21409
21346
  Analytics.search = function (searchKeyword) {
21410
21347
  try {
21411
21348
  FacebookPixel.search(searchKeyword);
21412
- return;
21413
21349
  }
21414
21350
  catch (err) {
21415
21351
  console.error(err);
@@ -21418,7 +21354,6 @@ var Analytics = /** @class */ (function () {
21418
21354
  Analytics.completeRegistration = function () {
21419
21355
  try {
21420
21356
  FacebookPixel.completeRegistration();
21421
- return;
21422
21357
  }
21423
21358
  catch (err) {
21424
21359
  console.error(err);
@@ -21429,7 +21364,6 @@ var Analytics = /** @class */ (function () {
21429
21364
  if (cart) {
21430
21365
  FacebookPixel.viewCart(cart);
21431
21366
  }
21432
- return;
21433
21367
  }
21434
21368
  catch (err) {
21435
21369
  console.error(err);
@@ -21438,7 +21372,6 @@ var Analytics = /** @class */ (function () {
21438
21372
  Analytics.viewCategory = function (categoryPath) {
21439
21373
  try {
21440
21374
  FacebookPixel.viewCategory(categoryPath);
21441
- return;
21442
21375
  }
21443
21376
  catch (err) {
21444
21377
  console.error(err);
@@ -25290,322 +25223,6 @@ var IkasMerchantAPI = /** @class */ (function () {
25290
25223
  }());
25291
25224
  var templateObject_1$9;
25292
25225
 
25293
- /**
25294
- * Flattens `array` a single level deep.
25295
- *
25296
- * @static
25297
- * @memberOf _
25298
- * @since 0.1.0
25299
- * @category Array
25300
- * @param {Array} array The array to flatten.
25301
- * @returns {Array} Returns the new flattened array.
25302
- * @example
25303
- *
25304
- * _.flatten([1, [2, [3, [4]], 5]]);
25305
- * // => [1, 2, [3, [4]], 5]
25306
- */
25307
- function flatten(array) {
25308
- var length = array == null ? 0 : array.length;
25309
- return length ? _baseFlatten(array, 1) : [];
25310
- }
25311
-
25312
- var flatten_1 = flatten;
25313
-
25314
- var IkasVariantTypeAPI = /** @class */ (function () {
25315
- function IkasVariantTypeAPI() {
25316
- }
25317
- IkasVariantTypeAPI.listVariantTypes = function (idList) {
25318
- return __awaiter(this, void 0, void 0, function () {
25319
- var LIST_VARIANT_TYPE, _a, data, errors, err_1;
25320
- return __generator(this, function (_b) {
25321
- switch (_b.label) {
25322
- case 0:
25323
- LIST_VARIANT_TYPE = src(templateObject_1$a || (templateObject_1$a = __makeTemplateObject(["\n query listVariantType($id: StringFilterInput!) {\n listVariantType(id: $id) {\n id\n createdAt\n updatedAt\n deleted\n name\n selectionType\n values {\n id\n createdAt\n updatedAt\n deleted\n name\n thumbnailImageId\n colorCode\n }\n }\n }\n "], ["\n query listVariantType($id: StringFilterInput!) {\n listVariantType(id: $id) {\n id\n createdAt\n updatedAt\n deleted\n name\n selectionType\n values {\n id\n createdAt\n updatedAt\n deleted\n name\n thumbnailImageId\n colorCode\n }\n }\n }\n "])));
25324
- _b.label = 1;
25325
- case 1:
25326
- _b.trys.push([1, 3, , 4]);
25327
- return [4 /*yield*/, apollo
25328
- .getClient()
25329
- .query({
25330
- query: LIST_VARIANT_TYPE,
25331
- variables: {
25332
- id: {
25333
- in: idList || [],
25334
- },
25335
- },
25336
- })];
25337
- case 2:
25338
- _a = _b.sent(), data = _a.data, errors = _a.errors;
25339
- if (errors && errors.length) {
25340
- return [2 /*return*/, []];
25341
- }
25342
- return [2 /*return*/, data.listVariantType.map(function (vt) {
25343
- return new IkasVariantType({
25344
- id: vt.id,
25345
- name: vt.name,
25346
- selectionType: vt.selectionType,
25347
- values: vt.values.map(function (vv) {
25348
- return new IkasVariantValue({
25349
- id: vv.id,
25350
- name: vv.name,
25351
- colorCode: vv.colorCode,
25352
- thumbnailImageId: vv.thumbnailImageId,
25353
- variantTypeId: vt.id,
25354
- });
25355
- }),
25356
- });
25357
- })];
25358
- case 3:
25359
- err_1 = _b.sent();
25360
- console.log(err_1);
25361
- return [3 /*break*/, 4];
25362
- case 4: return [2 /*return*/, []];
25363
- }
25364
- });
25365
- });
25366
- };
25367
- return IkasVariantTypeAPI;
25368
- }());
25369
- var templateObject_1$a;
25370
-
25371
- // TODO remove this api
25372
- var IkasStockLocationAPI = /** @class */ (function () {
25373
- function IkasStockLocationAPI() {
25374
- }
25375
- IkasStockLocationAPI.listStockLocation = function () {
25376
- return __awaiter(this, void 0, void 0, function () {
25377
- var QUERY, _a, data;
25378
- return __generator(this, function (_b) {
25379
- switch (_b.label) {
25380
- case 0:
25381
- QUERY = src(templateObject_1$b || (templateObject_1$b = __makeTemplateObject(["\n query listStockLocation {\n listStockLocation {\n id\n }\n }\n "], ["\n query listStockLocation {\n listStockLocation {\n id\n }\n }\n "])));
25382
- _b.label = 1;
25383
- case 1:
25384
- _b.trys.push([1, 3, , 4]);
25385
- return [4 /*yield*/, apollo
25386
- .getClient()
25387
- .query({
25388
- query: QUERY,
25389
- })];
25390
- case 2:
25391
- _a = _b.sent(), data = _a.data, _a.errors;
25392
- if (data && data.listStockLocation.length)
25393
- return [2 /*return*/, data.listStockLocation[0]];
25394
- return [3 /*break*/, 4];
25395
- case 3:
25396
- _b.sent();
25397
- return [3 /*break*/, 4];
25398
- case 4: return [2 /*return*/];
25399
- }
25400
- });
25401
- });
25402
- };
25403
- return IkasStockLocationAPI;
25404
- }());
25405
- var templateObject_1$b;
25406
-
25407
- // TODO remove this api
25408
- var IkasProductStockLocationAPI = /** @class */ (function () {
25409
- function IkasProductStockLocationAPI() {
25410
- }
25411
- IkasProductStockLocationAPI.listProductStockLocation = function (stockLocationIdList, variantIdList) {
25412
- return __awaiter(this, void 0, void 0, function () {
25413
- var QUERY, _a, data, errors, err_1;
25414
- return __generator(this, function (_b) {
25415
- switch (_b.label) {
25416
- case 0:
25417
- QUERY = src(templateObject_1$c || (templateObject_1$c = __makeTemplateObject(["\n query listProductStockLocation(\n $stockLocationIdList: [String!]!\n $variantIdList: [String!]!\n ) {\n listProductStockLocation(\n stockLocationIdList: $stockLocationIdList\n variantIdList: $variantIdList\n ) {\n variantId\n stockLocationId\n stockCount\n }\n }\n "], ["\n query listProductStockLocation(\n $stockLocationIdList: [String!]!\n $variantIdList: [String!]!\n ) {\n listProductStockLocation(\n stockLocationIdList: $stockLocationIdList\n variantIdList: $variantIdList\n ) {\n variantId\n stockLocationId\n stockCount\n }\n }\n "])));
25418
- _b.label = 1;
25419
- case 1:
25420
- _b.trys.push([1, 3, , 4]);
25421
- return [4 /*yield*/, apollo
25422
- .getClient()
25423
- .query({
25424
- query: QUERY,
25425
- variables: {
25426
- stockLocationIdList: stockLocationIdList,
25427
- variantIdList: variantIdList,
25428
- },
25429
- })];
25430
- case 2:
25431
- _a = _b.sent(), data = _a.data, errors = _a.errors;
25432
- if (data && data.listProductStockLocation)
25433
- return [2 /*return*/, data.listProductStockLocation];
25434
- console.log(errors);
25435
- return [3 /*break*/, 4];
25436
- case 3:
25437
- err_1 = _b.sent();
25438
- console.error(JSON.stringify(err_1, null, 2));
25439
- return [3 /*break*/, 4];
25440
- case 4: return [2 /*return*/];
25441
- }
25442
- });
25443
- });
25444
- };
25445
- return IkasProductStockLocationAPI;
25446
- }());
25447
- var templateObject_1$c;
25448
-
25449
- var IkasProductAPI = /** @class */ (function () {
25450
- function IkasProductAPI() {
25451
- }
25452
- IkasProductAPI.listProducts = function (params) {
25453
- return __awaiter(this, void 0, void 0, function () {
25454
- var LIST_PRODUCTS, variables, _a, data, errors, products, count, brandIds, categoryIds, variantTypeIds, stockLocation, stocks_1, variantIdList_1, productStockLocations, brandsResponse_1, categoriesResponse_1, variantTypes_1, err_1;
25455
- return __generator(this, function (_b) {
25456
- switch (_b.label) {
25457
- case 0:
25458
- LIST_PRODUCTS = src(templateObject_1$d || (templateObject_1$d = __makeTemplateObject(["\n query listProduct(\n $id: StringFilterInput\n $pagination: PaginationInput\n $search: String\n $brandId: StringFilterInput\n $categoryIds: CategoryFilterInput\n ) {\n listProduct(\n id: $id\n pagination: $pagination\n search: $search\n brandId: $brandId\n categoryIds: $categoryIds\n ) {\n data {\n id\n createdAt\n updatedAt\n deleted\n name\n type\n shortDescription\n description\n metaData {\n slug\n pageTitle\n description\n targetId\n targetType\n redirectTo\n }\n brandId\n categoryIds\n productVariantTypes {\n order\n variantTypeId\n variantValueIds\n }\n variants {\n id\n createdAt\n updatedAt\n deleted\n sku\n barcodeList\n isActive\n variantValueIds {\n variantTypeId\n variantValueId\n }\n attributes {\n value\n productAttributeId\n productAttributeOptionId\n }\n images {\n order\n isMain\n imageId\n }\n prices {\n sellPrice\n discountPrice\n buyPrice\n currency\n }\n }\n attributes {\n value\n productAttributeId\n productAttributeOptionId\n }\n }\n count\n }\n }\n "], ["\n query listProduct(\n $id: StringFilterInput\n $pagination: PaginationInput\n $search: String\n $brandId: StringFilterInput\n $categoryIds: CategoryFilterInput\n ) {\n listProduct(\n id: $id\n pagination: $pagination\n search: $search\n brandId: $brandId\n categoryIds: $categoryIds\n ) {\n data {\n id\n createdAt\n updatedAt\n deleted\n name\n type\n shortDescription\n description\n metaData {\n slug\n pageTitle\n description\n targetId\n targetType\n redirectTo\n }\n brandId\n categoryIds\n productVariantTypes {\n order\n variantTypeId\n variantValueIds\n }\n variants {\n id\n createdAt\n updatedAt\n deleted\n sku\n barcodeList\n isActive\n variantValueIds {\n variantTypeId\n variantValueId\n }\n attributes {\n value\n productAttributeId\n productAttributeOptionId\n }\n images {\n order\n isMain\n imageId\n }\n prices {\n sellPrice\n discountPrice\n buyPrice\n currency\n }\n }\n attributes {\n value\n productAttributeId\n productAttributeOptionId\n }\n }\n count\n }\n }\n "])));
25459
- _b.label = 1;
25460
- case 1:
25461
- _b.trys.push([1, 9, , 10]);
25462
- variables = {
25463
- search: params === null || params === void 0 ? void 0 : params.search,
25464
- };
25465
- if ((params === null || params === void 0 ? void 0 : params.idList) && params.idList.length) {
25466
- variables.id = {
25467
- in: params.idList,
25468
- };
25469
- }
25470
- if (params === null || params === void 0 ? void 0 : params.page) {
25471
- variables.pagination = {
25472
- page: params.page,
25473
- limit: params.limit || 10,
25474
- };
25475
- }
25476
- if (params === null || params === void 0 ? void 0 : params.brandId) {
25477
- variables.brandId = {
25478
- eq: params.brandId,
25479
- };
25480
- }
25481
- if ((params === null || params === void 0 ? void 0 : params.categoryIds) && params.categoryIds.length) {
25482
- variables.categoryIds = {
25483
- in: params.categoryIds,
25484
- };
25485
- }
25486
- return [4 /*yield*/, apollo
25487
- .getClient()
25488
- .query({
25489
- query: LIST_PRODUCTS,
25490
- variables: variables,
25491
- })];
25492
- case 2:
25493
- _a = _b.sent(), data = _a.data, errors = _a.errors;
25494
- if (errors && errors.length) {
25495
- console.log(errors);
25496
- return [2 /*return*/, {
25497
- products: [],
25498
- count: 0,
25499
- }];
25500
- }
25501
- products = data.listProduct.data;
25502
- count = data.listProduct.count;
25503
- brandIds = products
25504
- .map(function (p) { return p.brandId; })
25505
- .filter(function (id) { return !!id; });
25506
- categoryIds = flatten_1(products.map(function (p) { return p.categoryIds || []; }));
25507
- variantTypeIds = flatten_1(products.map(function (p) { var _a; return ((_a = p.productVariantTypes) === null || _a === void 0 ? void 0 : _a.map(function (pvt) { return pvt.variantTypeId; })) || []; }));
25508
- return [4 /*yield*/, IkasStockLocationAPI.listStockLocation()];
25509
- case 3:
25510
- stockLocation = _b.sent();
25511
- stocks_1 = {};
25512
- products.forEach(function (p) {
25513
- p.variants.forEach(function (v) {
25514
- stocks_1[v.id] = 0;
25515
- });
25516
- });
25517
- if (!stockLocation) return [3 /*break*/, 5];
25518
- variantIdList_1 = [];
25519
- products.forEach(function (p) {
25520
- return p.variants.forEach(function (v) { return variantIdList_1.push(v.id); });
25521
- });
25522
- return [4 /*yield*/, IkasProductStockLocationAPI.listProductStockLocation([stockLocation.id], variantIdList_1)];
25523
- case 4:
25524
- productStockLocations = _b.sent();
25525
- productStockLocations === null || productStockLocations === void 0 ? void 0 : productStockLocations.forEach(function (psl) {
25526
- stocks_1[psl.variantId] = psl.stockCount;
25527
- });
25528
- _b.label = 5;
25529
- case 5: return [4 /*yield*/, IkasBrandAPI.listBrands({
25530
- idList: brandIds,
25531
- page: 1,
25532
- limit: brandIds.length,
25533
- })];
25534
- case 6:
25535
- brandsResponse_1 = _b.sent();
25536
- return [4 /*yield*/, IkasCategoryAPI.listCategories({
25537
- idList: categoryIds,
25538
- page: 1,
25539
- limit: categoryIds.length,
25540
- })];
25541
- case 7:
25542
- categoriesResponse_1 = _b.sent();
25543
- return [4 /*yield*/, IkasVariantTypeAPI.listVariantTypes(variantTypeIds)];
25544
- case 8:
25545
- variantTypes_1 = _b.sent();
25546
- return [2 /*return*/, {
25547
- products: products.map(function (p) {
25548
- var _a;
25549
- return new IkasProduct({
25550
- id: p.id,
25551
- name: p.name,
25552
- type: p.type,
25553
- description: p.description || undefined,
25554
- shortDescription: p.shortDescription || undefined,
25555
- metaData: new IkasHTMLMetaData(p.metaData),
25556
- brand: p.brandId
25557
- ? brandsResponse_1.brands.find(function (b) { return b.id === p.brandId; })
25558
- : null,
25559
- categories: p.categoryIds
25560
- ? p.categoryIds.map(function (categoryId) {
25561
- return categoriesResponse_1.categories.find(function (c) { return c.id === categoryId; });
25562
- })
25563
- : [],
25564
- variants: p.variants.map(function (v, index) {
25565
- var _a;
25566
- return new IkasProductVariant({
25567
- id: v.id,
25568
- sku: v.sku,
25569
- barcodeList: v.barcodeList || [],
25570
- variantValues: v.variantValueIds
25571
- ? v.variantValueIds.map(function (vvId) {
25572
- var variantType = variantTypes_1.find(function (vt) { return vt.id === vvId.variantTypeId; });
25573
- return variantType.values.find(function (vv) { return vv.id === vvId.variantValueId; });
25574
- })
25575
- : [],
25576
- images: (_a = v.images) === null || _a === void 0 ? void 0 : _a.map(function (i) { return new IkasImage(i.imageId); }),
25577
- attributes: v.attributes || [],
25578
- price: new IkasProductPrice(v.prices[0]),
25579
- stock: stocks_1[v.id] || 0,
25580
- });
25581
- }),
25582
- attributes: p.attributes || [],
25583
- variantTypes: (_a = p.productVariantTypes) === null || _a === void 0 ? void 0 : _a.map(function (pvt) {
25584
- return new IkasProductVariantType({
25585
- variantType: variantTypes_1.find(function (vt) { return vt.id === pvt.variantTypeId; }),
25586
- variantValueIds: pvt.variantValueIds || [],
25587
- });
25588
- }),
25589
- });
25590
- }),
25591
- count: count,
25592
- }];
25593
- case 9:
25594
- err_1 = _b.sent();
25595
- console.log(err_1);
25596
- return [3 /*break*/, 10];
25597
- case 10: return [2 /*return*/, {
25598
- products: [],
25599
- count: 0,
25600
- }];
25601
- }
25602
- });
25603
- });
25604
- };
25605
- return IkasProductAPI;
25606
- }());
25607
- var templateObject_1$d;
25608
-
25609
25226
  var IkasProductSearchAPI = /** @class */ (function () {
25610
25227
  function IkasProductSearchAPI() {
25611
25228
  }
@@ -25616,7 +25233,7 @@ var IkasProductSearchAPI = /** @class */ (function () {
25616
25233
  switch (_b.label) {
25617
25234
  case 0:
25618
25235
  _b.trys.push([0, 2, , 3]);
25619
- SEARCH_PRODUCTS = src(templateObject_1$e || (templateObject_1$e = __makeTemplateObject(["\n query searchProducts($input: SearchInput!) {\n searchProducts(input: $input) {\n count\n data\n facets {\n id\n values {\n count\n id\n }\n }\n limit\n page\n totalCount\n }\n }\n "], ["\n query searchProducts($input: SearchInput!) {\n searchProducts(input: $input) {\n count\n data\n facets {\n id\n values {\n count\n id\n }\n }\n limit\n page\n totalCount\n }\n }\n "])));
25236
+ SEARCH_PRODUCTS = src(templateObject_1$a || (templateObject_1$a = __makeTemplateObject(["\n query searchProducts($input: SearchInput!) {\n searchProducts(input: $input) {\n count\n data\n facets {\n id\n values {\n count\n id\n }\n }\n limit\n page\n totalCount\n }\n }\n "], ["\n query searchProducts($input: SearchInput!) {\n searchProducts(input: $input) {\n count\n data\n facets {\n id\n values {\n count\n id\n }\n }\n limit\n page\n totalCount\n }\n }\n "])));
25620
25237
  return [4 /*yield*/, apollo
25621
25238
  .getClient()
25622
25239
  .query({
@@ -25793,7 +25410,7 @@ function simpleToProduct(simple) {
25793
25410
  }),
25794
25411
  });
25795
25412
  }
25796
- var templateObject_1$e, templateObject_2$5;
25413
+ var templateObject_1$a, templateObject_2$5;
25797
25414
 
25798
25415
  var IkasProductAttributeAPI = /** @class */ (function () {
25799
25416
  function IkasProductAttributeAPI() {
@@ -25804,7 +25421,7 @@ var IkasProductAttributeAPI = /** @class */ (function () {
25804
25421
  return __generator(this, function (_b) {
25805
25422
  switch (_b.label) {
25806
25423
  case 0:
25807
- LIST_PRODUCT_ATTRIBUTES = src(templateObject_1$f || (templateObject_1$f = __makeTemplateObject(["\n query listProductAttribute($id: StringFilterInput!) {\n listProductAttribute(id: $id) {\n id\n createdAt\n updatedAt\n deleted\n name\n description\n type\n options {\n id\n createdAt\n updatedAt\n deleted\n name\n }\n }\n }\n "], ["\n query listProductAttribute($id: StringFilterInput!) {\n listProductAttribute(id: $id) {\n id\n createdAt\n updatedAt\n deleted\n name\n description\n type\n options {\n id\n createdAt\n updatedAt\n deleted\n name\n }\n }\n }\n "])));
25424
+ LIST_PRODUCT_ATTRIBUTES = src(templateObject_1$b || (templateObject_1$b = __makeTemplateObject(["\n query listProductAttribute($id: StringFilterInput!) {\n listProductAttribute(id: $id) {\n id\n createdAt\n updatedAt\n deleted\n name\n description\n type\n options {\n id\n createdAt\n updatedAt\n deleted\n name\n }\n }\n }\n "], ["\n query listProductAttribute($id: StringFilterInput!) {\n listProductAttribute(id: $id) {\n id\n createdAt\n updatedAt\n deleted\n name\n description\n type\n options {\n id\n createdAt\n updatedAt\n deleted\n name\n }\n }\n }\n "])));
25808
25425
  _b.label = 1;
25809
25426
  case 1:
25810
25427
  _b.trys.push([1, 3, , 4]);
@@ -25837,7 +25454,7 @@ var IkasProductAttributeAPI = /** @class */ (function () {
25837
25454
  };
25838
25455
  return IkasProductAttributeAPI;
25839
25456
  }());
25840
- var templateObject_1$f;
25457
+ var templateObject_1$b;
25841
25458
 
25842
25459
  var IkasFavoriteProductAPI = /** @class */ (function () {
25843
25460
  function IkasFavoriteProductAPI() {
@@ -25848,7 +25465,7 @@ var IkasFavoriteProductAPI = /** @class */ (function () {
25848
25465
  return __generator(this, function (_b) {
25849
25466
  switch (_b.label) {
25850
25467
  case 0:
25851
- LIST_FAVORITE_PRODUCTS = src(templateObject_1$g || (templateObject_1$g = __makeTemplateObject(["\n query listFavoriteProducts {\n listFavoriteProducts {\n id\n createdAt\n updatedAt\n deleted\n productId\n customerId\n }\n }\n "], ["\n query listFavoriteProducts {\n listFavoriteProducts {\n id\n createdAt\n updatedAt\n deleted\n productId\n customerId\n }\n }\n "])));
25468
+ LIST_FAVORITE_PRODUCTS = src(templateObject_1$c || (templateObject_1$c = __makeTemplateObject(["\n query listFavoriteProducts {\n listFavoriteProducts {\n id\n createdAt\n updatedAt\n deleted\n productId\n customerId\n }\n }\n "], ["\n query listFavoriteProducts {\n listFavoriteProducts {\n id\n createdAt\n updatedAt\n deleted\n productId\n customerId\n }\n }\n "])));
25852
25469
  _b.label = 1;
25853
25470
  case 1:
25854
25471
  _b.trys.push([1, 3, , 4]);
@@ -25933,7 +25550,7 @@ var IkasFavoriteProductAPI = /** @class */ (function () {
25933
25550
  };
25934
25551
  return IkasFavoriteProductAPI;
25935
25552
  }());
25936
- var templateObject_1$g, templateObject_2$6, templateObject_3$2;
25553
+ var templateObject_1$c, templateObject_2$6, templateObject_3$2;
25937
25554
 
25938
25555
  var IkasContactFormAPI = /** @class */ (function () {
25939
25556
  function IkasContactFormAPI() {
@@ -25944,7 +25561,7 @@ var IkasContactFormAPI = /** @class */ (function () {
25944
25561
  return __generator(this, function (_b) {
25945
25562
  switch (_b.label) {
25946
25563
  case 0:
25947
- MUTATION = src(templateObject_1$h || (templateObject_1$h = __makeTemplateObject(["\n mutation sendContactFormToMerchant(\n $email: String!\n $message: String!\n $firstName: String!\n $lastName: String!\n ) {\n sendContactFormToMerchant(\n email: $email\n message: $message\n firstName: $firstName\n lastName: $lastName\n )\n }\n "], ["\n mutation sendContactFormToMerchant(\n $email: String!\n $message: String!\n $firstName: String!\n $lastName: String!\n ) {\n sendContactFormToMerchant(\n email: $email\n message: $message\n firstName: $firstName\n lastName: $lastName\n )\n }\n "])));
25564
+ MUTATION = src(templateObject_1$d || (templateObject_1$d = __makeTemplateObject(["\n mutation sendContactFormToMerchant(\n $email: String!\n $message: String!\n $firstName: String!\n $lastName: String!\n ) {\n sendContactFormToMerchant(\n email: $email\n message: $message\n firstName: $firstName\n lastName: $lastName\n )\n }\n "], ["\n mutation sendContactFormToMerchant(\n $email: String!\n $message: String!\n $firstName: String!\n $lastName: String!\n ) {\n sendContactFormToMerchant(\n email: $email\n message: $message\n firstName: $firstName\n lastName: $lastName\n )\n }\n "])));
25948
25565
  _b.label = 1;
25949
25566
  case 1:
25950
25567
  _b.trys.push([1, 3, , 4]);
@@ -25976,7 +25593,7 @@ var IkasContactFormAPI = /** @class */ (function () {
25976
25593
  };
25977
25594
  return IkasContactFormAPI;
25978
25595
  }());
25979
- var templateObject_1$h;
25596
+ var templateObject_1$d;
25980
25597
 
25981
25598
  var IkasStateAPI = /** @class */ (function () {
25982
25599
  function IkasStateAPI() {
@@ -25987,7 +25604,7 @@ var IkasStateAPI = /** @class */ (function () {
25987
25604
  return __generator(this, function (_b) {
25988
25605
  switch (_b.label) {
25989
25606
  case 0:
25990
- QUERY = src(templateObject_1$i || (templateObject_1$i = __makeTemplateObject(["\n query listState($countryId: StringFilterInput!) {\n listState(countryId: $countryId) {\n id\n name\n stateCode\n }\n }\n "], ["\n query listState($countryId: StringFilterInput!) {\n listState(countryId: $countryId) {\n id\n name\n stateCode\n }\n }\n "])));
25607
+ QUERY = src(templateObject_1$e || (templateObject_1$e = __makeTemplateObject(["\n query listState($countryId: StringFilterInput!) {\n listState(countryId: $countryId) {\n id\n name\n stateCode\n }\n }\n "], ["\n query listState($countryId: StringFilterInput!) {\n listState(countryId: $countryId) {\n id\n name\n stateCode\n }\n }\n "])));
25991
25608
  _b.label = 1;
25992
25609
  case 1:
25993
25610
  _b.trys.push([1, 3, , 4]);
@@ -26024,7 +25641,7 @@ var IkasStateAPI = /** @class */ (function () {
26024
25641
  };
26025
25642
  return IkasStateAPI;
26026
25643
  }());
26027
- var templateObject_1$i;
25644
+ var templateObject_1$e;
26028
25645
 
26029
25646
  var IkasStorefrontDomain = /** @class */ (function () {
26030
25647
  function IkasStorefrontDomain(data) {
@@ -26117,7 +25734,7 @@ var IkasStorefrontAPI = /** @class */ (function () {
26117
25734
  return __generator(this, function (_b) {
26118
25735
  switch (_b.label) {
26119
25736
  case 0:
26120
- QUERY = src(templateObject_1$j || (templateObject_1$j = __makeTemplateObject(["\n query getStorefront($storefrontId: String!) {\n getStorefront(id: $storefrontId) {\n id\n name\n themeId\n themeVersionId\n userId\n # domains {\n # id\n # merchantDomainId\n # name\n # redirectDomainName\n # }\n regions {\n id\n locale\n # themeJSON\n privacyPolicy\n returnPolicy\n termsOfService\n }\n }\n }\n "], ["\n query getStorefront($storefrontId: String!) {\n getStorefront(id: $storefrontId) {\n id\n name\n themeId\n themeVersionId\n userId\n # domains {\n # id\n # merchantDomainId\n # name\n # redirectDomainName\n # }\n regions {\n id\n locale\n # themeJSON\n privacyPolicy\n returnPolicy\n termsOfService\n }\n }\n }\n "])));
25737
+ QUERY = src(templateObject_1$f || (templateObject_1$f = __makeTemplateObject(["\n query getStorefront($storefrontId: String!) {\n getStorefront(id: $storefrontId) {\n id\n name\n themeId\n themeVersionId\n userId\n # domains {\n # id\n # merchantDomainId\n # name\n # redirectDomainName\n # }\n regions {\n id\n locale\n # themeJSON\n privacyPolicy\n returnPolicy\n termsOfService\n }\n }\n }\n "], ["\n query getStorefront($storefrontId: String!) {\n getStorefront(id: $storefrontId) {\n id\n name\n themeId\n themeVersionId\n userId\n # domains {\n # id\n # merchantDomainId\n # name\n # redirectDomainName\n # }\n regions {\n id\n locale\n # themeJSON\n privacyPolicy\n returnPolicy\n termsOfService\n }\n }\n }\n "])));
26121
25738
  _b.label = 1;
26122
25739
  case 1:
26123
25740
  _b.trys.push([1, 3, , 4]);
@@ -26147,7 +25764,7 @@ var IkasStorefrontAPI = /** @class */ (function () {
26147
25764
  };
26148
25765
  return IkasStorefrontAPI;
26149
25766
  }());
26150
- var templateObject_1$j;
25767
+ var templateObject_1$f;
26151
25768
 
26152
25769
  var IkasThemeAPI = /** @class */ (function () {
26153
25770
  function IkasThemeAPI() {
@@ -26170,6 +25787,63 @@ var IkasThemeAPI = /** @class */ (function () {
26170
25787
  return IkasThemeAPI;
26171
25788
  }());
26172
25789
 
25790
+ var IkasVariantTypeAPI = /** @class */ (function () {
25791
+ function IkasVariantTypeAPI() {
25792
+ }
25793
+ IkasVariantTypeAPI.listVariantTypes = function (idList) {
25794
+ return __awaiter(this, void 0, void 0, function () {
25795
+ var LIST_VARIANT_TYPE, _a, data, errors, err_1;
25796
+ return __generator(this, function (_b) {
25797
+ switch (_b.label) {
25798
+ case 0:
25799
+ LIST_VARIANT_TYPE = src(templateObject_1$g || (templateObject_1$g = __makeTemplateObject(["\n query listVariantType($id: StringFilterInput!) {\n listVariantType(id: $id) {\n id\n createdAt\n updatedAt\n deleted\n name\n selectionType\n values {\n id\n createdAt\n updatedAt\n deleted\n name\n thumbnailImageId\n colorCode\n }\n }\n }\n "], ["\n query listVariantType($id: StringFilterInput!) {\n listVariantType(id: $id) {\n id\n createdAt\n updatedAt\n deleted\n name\n selectionType\n values {\n id\n createdAt\n updatedAt\n deleted\n name\n thumbnailImageId\n colorCode\n }\n }\n }\n "])));
25800
+ _b.label = 1;
25801
+ case 1:
25802
+ _b.trys.push([1, 3, , 4]);
25803
+ return [4 /*yield*/, apollo
25804
+ .getClient()
25805
+ .query({
25806
+ query: LIST_VARIANT_TYPE,
25807
+ variables: {
25808
+ id: {
25809
+ in: idList || [],
25810
+ },
25811
+ },
25812
+ })];
25813
+ case 2:
25814
+ _a = _b.sent(), data = _a.data, errors = _a.errors;
25815
+ if (errors && errors.length) {
25816
+ return [2 /*return*/, []];
25817
+ }
25818
+ return [2 /*return*/, data.listVariantType.map(function (vt) {
25819
+ return new IkasVariantType({
25820
+ id: vt.id,
25821
+ name: vt.name,
25822
+ selectionType: vt.selectionType,
25823
+ values: vt.values.map(function (vv) {
25824
+ return new IkasVariantValue({
25825
+ id: vv.id,
25826
+ name: vv.name,
25827
+ colorCode: vv.colorCode,
25828
+ thumbnailImageId: vv.thumbnailImageId,
25829
+ variantTypeId: vt.id,
25830
+ });
25831
+ }),
25832
+ });
25833
+ })];
25834
+ case 3:
25835
+ err_1 = _b.sent();
25836
+ console.log(err_1);
25837
+ return [3 /*break*/, 4];
25838
+ case 4: return [2 /*return*/, []];
25839
+ }
25840
+ });
25841
+ });
25842
+ };
25843
+ return IkasVariantTypeAPI;
25844
+ }());
25845
+ var templateObject_1$g;
25846
+
26173
25847
  function styleInject(css, ref) {
26174
25848
  if ( ref === void 0 ) ref = {};
26175
25849
  var insertAt = ref.insertAt;
@@ -28461,8 +28135,8 @@ var getStaticPaths = function (context) { return __awaiter(void 0, void 0, void
28461
28135
  ];
28462
28136
  brandCategoryMetaData = metaData.filter(function (m) { return m.targetType && targetTypes.includes(m.targetType); });
28463
28137
  productMetaData = metaData.filter(function (m) { return m.targetType && m.targetType === IkasHTMLMetaDataTargetType.PRODUCT; });
28464
- return [4 /*yield*/, IkasProductAPI.listProducts({
28465
- idList: productMetaData.map(function (p) { return p.targetId; }),
28138
+ return [4 /*yield*/, IkasProductSearchAPI.searchProducts({
28139
+ productIdList: productMetaData.map(function (p) { return p.targetId; }),
28466
28140
  })];
28467
28141
  case 2:
28468
28142
  productsResponse = _b.sent();
@@ -28488,7 +28162,7 @@ var getStaticPaths = function (context) { return __awaiter(void 0, void 0, void
28488
28162
  }
28489
28163
  }
28490
28164
  };
28491
- for (_i = 0, _a = productsResponse.products; _i < _a.length; _i++) {
28165
+ for (_i = 0, _a = (productsResponse === null || productsResponse === void 0 ? void 0 : productsResponse.data) || []; _i < _a.length; _i++) {
28492
28166
  product = _a[_i];
28493
28167
  _loop_1(product);
28494
28168
  }
@@ -29033,4 +28707,4 @@ var IkasBaseStore = /** @class */ (function () {
29033
28707
  return IkasBaseStore;
29034
28708
  }());
29035
28709
 
29036
- export { AccountInfoForm, index$3 as AccountPage, AddressForm, addresses as AddressesPage, Analytics, AnalyticsBody, AnalyticsHead, cart as CartPage, _id_$1 as CheckoutPage, ContactForm, _slug_ as CustomPage, editor$1 as EditorPage, EmailRule, EqualsRule, favoriteProducts as FavoriteProductsPage, ForgotPasswordForm, forgotPassword as ForgotPasswordPage, IkasAmountTypeEnum$1 as IkasAmountTypeEnum, IkasApplicableProductFilterValue, IkasBaseStore, IkasBrand, IkasBrandAPI, IkasBrandList, IkasBrandListPropValue, IkasBrandListSortType, IkasBrandListType, IkasBrandPropValue, IkasCardAssociation, IkasCardType, IkasCartAPI, IkasCategory, IkasCategoryAPI, IkasCategoryList, IkasCategoryListPropValue, IkasCategoryListSortType, IkasCategoryListType, IkasCategoryPropValue, IkasCheckout, IkasCheckoutAPI, IkasCheckoutPage, IkasCheckoutRecoveryEmailStatus, IkasCheckoutRecoveryStatus, IkasCheckoutStatus, IkasCityAPI, IkasContactForm, IkasContactFormAPI, IkasCountryAPI, IkasCustomer, IkasCustomerAPI, IkasCustomerAddress, IkasDistrictAPI, IkasFavoriteProduct, IkasFavoriteProductAPI, IkasHTMLMetaData, IkasHTMLMetaDataAPI, IkasHTMLMetaDataTargetType, IkasImage, IkasLinkPropValue, IkasLinkType, IkasMerchantAPI, IkasMerchantSettings, IkasNavigationLink, IkasOrder, IkasOrderCancelledReason, IkasOrderLineItem, IkasOrderPackageFulfillStatus, IkasOrderPackageStatus, IkasOrderPaymentStatus, IkasOrderShippingMethod, IkasOrderStatus, IkasOrderTransaction, IkasPage, IkasPageComponentPropValue, IkasPageDataProvider, IkasPageEditor, IkasPageHead, IkasPaymentMethod, IkasProduct, IkasProductAPI, IkasProductAttribute, IkasProductAttributeAPI, IkasProductAttributeValue, IkasProductDetail, IkasProductDetailPropValue, IkasProductFilter, IkasProductFilterDisplayType, IkasProductFilterSettings, IkasProductFilterSortType, IkasProductFilterType, IkasProductFilterValue, IkasProductList, IkasProductListPropValue, IkasProductListSortType, IkasProductListType, IkasProductPrice, IkasProductSearchAPI, IkasProductType, IkasProductVariant, IkasProductVariantType, IkasShippingMethod, IkasShippingMethodEnum, IkasStateAPI, IkasStorefrontAPI, IkasStorefrontConfig, IkasTheme, IkasThemeAPI, IkasThemeComponent, IkasThemeComponentProp, IkasThemeComponentPropType, IkasThemeCustomData, IkasThemeCustomDataType, IkasThemePage, IkasThemePageComponent, IkasThemePageType, IkasThemeSettings, IkasTransactionStatusEnum, IkasTransactionTypeEnum, IkasVariantSelectionType, IkasVariantType, IkasVariantTypeAPI, IkasVariantValue, Image, home as IndexPage, LessThanRule, LoginForm, login as LoginPage, MaxRule, MinRule, _404 as NotFoundPage, _id_$2 as OrderDetailPage, index$4 as OrdersPage, PhoneRule, RangeValue, RecoverPasswordForm, recoverPassword as RecoverPasswordPage, RegisterForm, register as RegisterPage, RequiredRule, search as SearchPage, index$2 as SlugPage, ValidationRule, Validator, ValidatorErrorType, apollo, decodeBase64, formatMoney, parseRangeStr, pascalCase, stringToSlug, validatePhoneNumber };
28710
+ export { AccountInfoForm, index$3 as AccountPage, AddressForm, addresses as AddressesPage, Analytics, AnalyticsBody, AnalyticsHead, cart as CartPage, _id_$1 as CheckoutPage, ContactForm, _slug_ as CustomPage, editor$1 as EditorPage, EmailRule, EqualsRule, favoriteProducts as FavoriteProductsPage, ForgotPasswordForm, forgotPassword as ForgotPasswordPage, IkasAmountTypeEnum$1 as IkasAmountTypeEnum, IkasApplicableProductFilterValue, IkasBaseStore, IkasBrand, IkasBrandAPI, IkasBrandList, IkasBrandListPropValue, IkasBrandListSortType, IkasBrandListType, IkasBrandPropValue, IkasCardAssociation, IkasCardType, IkasCartAPI, IkasCategory, IkasCategoryAPI, IkasCategoryList, IkasCategoryListPropValue, IkasCategoryListSortType, IkasCategoryListType, IkasCategoryPropValue, IkasCheckout, IkasCheckoutAPI, IkasCheckoutPage, IkasCheckoutRecoveryEmailStatus, IkasCheckoutRecoveryStatus, IkasCheckoutStatus, IkasCityAPI, IkasContactForm, IkasContactFormAPI, IkasCountryAPI, IkasCustomer, IkasCustomerAPI, IkasCustomerAddress, IkasDistrictAPI, IkasFavoriteProduct, IkasFavoriteProductAPI, IkasHTMLMetaData, IkasHTMLMetaDataAPI, IkasHTMLMetaDataTargetType, IkasImage, IkasLinkPropValue, IkasLinkType, IkasMerchantAPI, IkasMerchantSettings, IkasNavigationLink, IkasOrder, IkasOrderCancelledReason, IkasOrderLineItem, IkasOrderPackageFulfillStatus, IkasOrderPackageStatus, IkasOrderPaymentStatus, IkasOrderShippingMethod, IkasOrderStatus, IkasOrderTransaction, IkasPage, IkasPageComponentPropValue, IkasPageDataProvider, IkasPageEditor, IkasPageHead, IkasPaymentMethod, IkasProduct, IkasProductAttribute, IkasProductAttributeAPI, IkasProductAttributeValue, IkasProductDetail, IkasProductDetailPropValue, IkasProductFilter, IkasProductFilterDisplayType, IkasProductFilterSettings, IkasProductFilterSortType, IkasProductFilterType, IkasProductFilterValue, IkasProductList, IkasProductListPropValue, IkasProductListSortType, IkasProductListType, IkasProductPrice, IkasProductSearchAPI, IkasProductType, IkasProductVariant, IkasProductVariantType, IkasShippingMethod, IkasShippingMethodEnum, IkasStateAPI, IkasStorefrontAPI, IkasStorefrontConfig, IkasTheme, IkasThemeAPI, IkasThemeComponent, IkasThemeComponentProp, IkasThemeComponentPropType, IkasThemeCustomData, IkasThemeCustomDataType, IkasThemePage, IkasThemePageComponent, IkasThemePageType, IkasThemeSettings, IkasTransactionStatusEnum, IkasTransactionTypeEnum, IkasVariantSelectionType, IkasVariantType, IkasVariantTypeAPI, IkasVariantValue, Image, home as IndexPage, LessThanRule, LoginForm, login as LoginPage, MaxRule, MinRule, _404 as NotFoundPage, _id_$2 as OrderDetailPage, index$4 as OrdersPage, PhoneRule, RangeValue, RecoverPasswordForm, recoverPassword as RecoverPasswordPage, RegisterForm, register as RegisterPage, RequiredRule, search as SearchPage, index$2 as SlugPage, ValidationRule, Validator, ValidatorErrorType, apollo, decodeBase64, formatMoney, parseRangeStr, pascalCase, stringToSlug, validatePhoneNumber };