@ikas/storefront 0.0.160-alpha.5 → 0.0.160-alpha.7

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
@@ -19265,6 +19265,8 @@ var IkasThemeComponentPropType;
19265
19265
  IkasThemeComponentPropType["COMPONENT_LIST"] = "COMPONENT_LIST";
19266
19266
  IkasThemeComponentPropType["BLOG"] = "BLOG";
19267
19267
  IkasThemeComponentPropType["BLOG_LIST"] = "BLOG_LIST";
19268
+ IkasThemeComponentPropType["BLOG_CATEGORY"] = "BLOG_CATEGORY";
19269
+ IkasThemeComponentPropType["BLOG_CATEGORY_LIST"] = "BLOG_CATEGORY_LIST";
19268
19270
  IkasThemeComponentPropType["OBJECT"] = "OBJECT";
19269
19271
  IkasThemeComponentPropType["STATIC_LIST"] = "STATIC_LIST";
19270
19272
  IkasThemeComponentPropType["DYNAMIC_LIST"] = "DYNAMIC_LIST";
@@ -20159,6 +20161,260 @@ var IkasBlogListType;
20159
20161
  IkasBlogListType["CATEGORY"] = "CATEGORY";
20160
20162
  })(IkasBlogListType || (IkasBlogListType = {}));
20161
20163
 
20164
+ var IkasBlogCategoryList = /** @class */ (function () {
20165
+ function IkasBlogCategoryList(data) {
20166
+ var _this = this;
20167
+ this._initialized = false;
20168
+ this._minPage = null;
20169
+ this._isLoading = false;
20170
+ // Used by the provider
20171
+ this.getInitial = function () { return __awaiter(_this, void 0, void 0, function () {
20172
+ var response_1, err_1;
20173
+ var _a, _b;
20174
+ return __generator(this, function (_c) {
20175
+ switch (_c.label) {
20176
+ case 0:
20177
+ if (this._isLoading)
20178
+ return [2 /*return*/];
20179
+ this._isLoading = true;
20180
+ _c.label = 1;
20181
+ case 1:
20182
+ _c.trys.push([1, 3, 4, 5]);
20183
+ return [4 /*yield*/, this.listBlogCategories(this.isStatic ? 1 : this.page, this.isStatic
20184
+ ? ((_a = this._blogCategoryListPropValue.blogCategoryIds) === null || _a === void 0 ? void 0 : _a.length) || 10
20185
+ : this.limit)];
20186
+ case 2:
20187
+ response_1 = _c.sent();
20188
+ if (this.isStatic) {
20189
+ this.data =
20190
+ ((_b = this._blogCategoryListPropValue.blogCategoryIds) === null || _b === void 0 ? void 0 : _b.map(function (bID) {
20191
+ return response_1.blogCategories.find(function (b) { return b.id === bID; });
20192
+ }).filter(function (b) { return !!b; })) || [];
20193
+ }
20194
+ else {
20195
+ this.data = response_1.blogCategories;
20196
+ }
20197
+ this._count = response_1.count;
20198
+ this._initialized = true;
20199
+ this._minPage = this.page;
20200
+ return [3 /*break*/, 5];
20201
+ case 3:
20202
+ err_1 = _c.sent();
20203
+ console.log(err_1);
20204
+ return [3 /*break*/, 5];
20205
+ case 4:
20206
+ this._isLoading = false;
20207
+ return [7 /*endfinally*/];
20208
+ case 5: return [2 /*return*/];
20209
+ }
20210
+ });
20211
+ }); };
20212
+ this.getPrev = function () { return __awaiter(_this, void 0, void 0, function () {
20213
+ var minPage, response, err_2;
20214
+ return __generator(this, function (_a) {
20215
+ switch (_a.label) {
20216
+ case 0:
20217
+ if (this.isStatic || this._isLoading || !this.hasPrev)
20218
+ return [2 /*return*/];
20219
+ this._isLoading = true;
20220
+ _a.label = 1;
20221
+ case 1:
20222
+ _a.trys.push([1, 3, 4, 5]);
20223
+ minPage = this._minPage - 1;
20224
+ return [4 /*yield*/, this.listBlogCategories(minPage, this.limit)];
20225
+ case 2:
20226
+ response = _a.sent();
20227
+ this.data = response.blogCategories.concat(this.data);
20228
+ this._count = response.count;
20229
+ this._minPage = minPage;
20230
+ return [3 /*break*/, 5];
20231
+ case 3:
20232
+ err_2 = _a.sent();
20233
+ console.log(err_2);
20234
+ return [3 /*break*/, 5];
20235
+ case 4:
20236
+ this._isLoading = false;
20237
+ return [7 /*endfinally*/];
20238
+ case 5: return [2 /*return*/];
20239
+ }
20240
+ });
20241
+ }); };
20242
+ this.getNext = function () { return __awaiter(_this, void 0, void 0, function () {
20243
+ var response, err_3;
20244
+ return __generator(this, function (_a) {
20245
+ switch (_a.label) {
20246
+ case 0:
20247
+ if (this.isStatic || this._isLoading || !this.hasNext)
20248
+ return [2 /*return*/];
20249
+ this._isLoading = true;
20250
+ _a.label = 1;
20251
+ case 1:
20252
+ _a.trys.push([1, 3, 4, 5]);
20253
+ return [4 /*yield*/, this.listBlogCategories(this.page + 1, this.limit)];
20254
+ case 2:
20255
+ response = _a.sent();
20256
+ this.data = this.data.concat(response.blogCategories);
20257
+ this._count = response.count;
20258
+ this._page = this.page + 1;
20259
+ return [3 /*break*/, 5];
20260
+ case 3:
20261
+ err_3 = _a.sent();
20262
+ console.log(err_3);
20263
+ return [3 /*break*/, 5];
20264
+ case 4:
20265
+ this._isLoading = false;
20266
+ return [7 /*endfinally*/];
20267
+ case 5: return [2 /*return*/];
20268
+ }
20269
+ });
20270
+ }); };
20271
+ this.getPage = function (page) { return __awaiter(_this, void 0, void 0, function () {
20272
+ var response, err_4;
20273
+ return __generator(this, function (_a) {
20274
+ switch (_a.label) {
20275
+ case 0:
20276
+ if (this._isLoading || this.isStatic)
20277
+ return [2 /*return*/];
20278
+ this._isLoading = true;
20279
+ _a.label = 1;
20280
+ case 1:
20281
+ _a.trys.push([1, 3, 4, 5]);
20282
+ return [4 /*yield*/, this.listBlogCategories(page, this.limit)];
20283
+ case 2:
20284
+ response = _a.sent();
20285
+ this.data = response.blogCategories;
20286
+ this._count = response.count;
20287
+ this._page = page;
20288
+ this._minPage = page;
20289
+ return [3 /*break*/, 5];
20290
+ case 3:
20291
+ err_4 = _a.sent();
20292
+ console.log(err_4);
20293
+ return [3 /*break*/, 5];
20294
+ case 4:
20295
+ this._isLoading = false;
20296
+ return [7 /*endfinally*/];
20297
+ case 5: return [2 /*return*/];
20298
+ }
20299
+ });
20300
+ }); };
20301
+ this.data = data.data ? data.data.map(function (b) { return new IkasBlogCategory(b); }) : [];
20302
+ this._type =
20303
+ data.type ||
20304
+ data.blogCategoryListPropValue.blogCategoryListType ||
20305
+ IkasBlogCategoryListType.ALL;
20306
+ this._limit =
20307
+ data.limit || data.blogCategoryListPropValue.initialLimit || 20;
20308
+ this._page = data.page || 1;
20309
+ this._count = data.count || 0;
20310
+ this._initialized = data.initialized || false;
20311
+ this._minPage = data.minPage;
20312
+ this._blogCategoryListPropValue = data.blogCategoryListPropValue;
20313
+ makeAutoObservable(this);
20314
+ }
20315
+ Object.defineProperty(IkasBlogCategoryList.prototype, "limit", {
20316
+ get: function () {
20317
+ return this._limit;
20318
+ },
20319
+ enumerable: false,
20320
+ configurable: true
20321
+ });
20322
+ Object.defineProperty(IkasBlogCategoryList.prototype, "page", {
20323
+ get: function () {
20324
+ return this._page;
20325
+ },
20326
+ enumerable: false,
20327
+ configurable: true
20328
+ });
20329
+ Object.defineProperty(IkasBlogCategoryList.prototype, "count", {
20330
+ get: function () {
20331
+ return this._count;
20332
+ },
20333
+ enumerable: false,
20334
+ configurable: true
20335
+ });
20336
+ Object.defineProperty(IkasBlogCategoryList.prototype, "pageCount", {
20337
+ get: function () {
20338
+ return Math.ceil(this._count / this._limit);
20339
+ },
20340
+ enumerable: false,
20341
+ configurable: true
20342
+ });
20343
+ Object.defineProperty(IkasBlogCategoryList.prototype, "isInitialized", {
20344
+ get: function () {
20345
+ return this._initialized;
20346
+ },
20347
+ enumerable: false,
20348
+ configurable: true
20349
+ });
20350
+ Object.defineProperty(IkasBlogCategoryList.prototype, "isStatic", {
20351
+ get: function () {
20352
+ return this._type === IkasBlogCategoryListType.STATIC;
20353
+ },
20354
+ enumerable: false,
20355
+ configurable: true
20356
+ });
20357
+ Object.defineProperty(IkasBlogCategoryList.prototype, "hasPrev", {
20358
+ get: function () {
20359
+ if (this.isStatic || !this._minPage)
20360
+ return false;
20361
+ return this._minPage > 1;
20362
+ },
20363
+ enumerable: false,
20364
+ configurable: true
20365
+ });
20366
+ Object.defineProperty(IkasBlogCategoryList.prototype, "hasNext", {
20367
+ get: function () {
20368
+ if (this.isStatic)
20369
+ return false;
20370
+ return this.page * this.limit < this.count;
20371
+ },
20372
+ enumerable: false,
20373
+ configurable: true
20374
+ });
20375
+ Object.defineProperty(IkasBlogCategoryList.prototype, "isLoading", {
20376
+ get: function () {
20377
+ return this._isLoading;
20378
+ },
20379
+ enumerable: false,
20380
+ configurable: true
20381
+ });
20382
+ IkasBlogCategoryList.prototype.listBlogCategories = function (page, limit) {
20383
+ return __awaiter(this, void 0, void 0, function () {
20384
+ return __generator(this, function (_a) {
20385
+ switch (_a.label) {
20386
+ case 0: return [4 /*yield*/, IkasBlogAPI.listBlogCategory({
20387
+ idList: this.isStatic
20388
+ ? this._blogCategoryListPropValue.blogCategoryIds || undefined
20389
+ : undefined,
20390
+ page: page,
20391
+ limit: limit,
20392
+ })];
20393
+ case 1: return [2 /*return*/, _a.sent()];
20394
+ }
20395
+ });
20396
+ });
20397
+ };
20398
+ IkasBlogCategoryList.prototype.toJSON = function () {
20399
+ return {
20400
+ data: this.data,
20401
+ type: this._type,
20402
+ limit: this._limit,
20403
+ page: this._page,
20404
+ count: this._count,
20405
+ initialized: this._initialized,
20406
+ minPage: this._minPage,
20407
+ blogCategoryListPropValue: this._blogCategoryListPropValue,
20408
+ };
20409
+ };
20410
+ return IkasBlogCategoryList;
20411
+ }());
20412
+ var IkasBlogCategoryListType;
20413
+ (function (IkasBlogCategoryListType) {
20414
+ IkasBlogCategoryListType["ALL"] = "ALL";
20415
+ IkasBlogCategoryListType["STATIC"] = "STATIC";
20416
+ })(IkasBlogCategoryListType || (IkasBlogCategoryListType = {}));
20417
+
20162
20418
  var IkasCategoryList = /** @class */ (function () {
20163
20419
  function IkasCategoryList(data) {
20164
20420
  var _this = this;
@@ -24549,6 +24805,32 @@ var IkasBlogListPropValue = /** @class */ (function () {
24549
24805
  return IkasBlogListPropValue;
24550
24806
  }());
24551
24807
 
24808
+ var IkasBlogCategoryPropValue = /** @class */ (function () {
24809
+ function IkasBlogCategoryPropValue(data) {
24810
+ this.blogCategoryId = null;
24811
+ // Only for product detail page
24812
+ this.usePageData = null;
24813
+ this.blogCategoryId = data.blogCategoryId;
24814
+ this.usePageData = data.usePageData;
24815
+ makeAutoObservable(this);
24816
+ }
24817
+ return IkasBlogCategoryPropValue;
24818
+ }());
24819
+
24820
+ var IkasBlogCategoryListPropValue = /** @class */ (function () {
24821
+ function IkasBlogCategoryListPropValue(data) {
24822
+ this.initialLimit = null;
24823
+ // Only for static lists
24824
+ this.blogCategoryIds = null;
24825
+ this.blogCategoryListType =
24826
+ data.blogCategoryListType || IkasBlogCategoryListType.ALL;
24827
+ this.initialLimit = data.initialLimit || 20;
24828
+ this.blogCategoryIds = data.blogCategoryIds;
24829
+ makeAutoObservable(this);
24830
+ }
24831
+ return IkasBlogCategoryListPropValue;
24832
+ }());
24833
+
24552
24834
  var IkasProductListPropValueProvider = /** @class */ (function () {
24553
24835
  function IkasProductListPropValueProvider(pageType, productListPropValue, pageSpecificData) {
24554
24836
  this.pageType = pageType;
@@ -24610,6 +24892,9 @@ function getPlaceholderBrand() {
24610
24892
  }
24611
24893
  function getPlaceholderBlog() {
24612
24894
  return new IkasBlog();
24895
+ }
24896
+ function getPlaceholderBlogCategory() {
24897
+ return new IkasBlogCategory();
24613
24898
  }
24614
24899
 
24615
24900
  var IkasProductDetailPropValueProvider = /** @class */ (function () {
@@ -25048,9 +25333,9 @@ var IkasBlogPropValueProvider = /** @class */ (function () {
25048
25333
  }());
25049
25334
 
25050
25335
  var IkasBlogListPropValueProvider = /** @class */ (function () {
25051
- function IkasBlogListPropValueProvider(pageType, brandListPropValue, pageSpecificData) {
25336
+ function IkasBlogListPropValueProvider(pageType, blogListPropValue, pageSpecificData) {
25052
25337
  this.pageType = pageType;
25053
- this.blogListPropValue = brandListPropValue;
25338
+ this.blogListPropValue = blogListPropValue;
25054
25339
  this.pageSpecificData = pageSpecificData;
25055
25340
  }
25056
25341
  IkasBlogListPropValueProvider.prototype.getValue = function () {
@@ -25214,6 +25499,67 @@ var IkasAttributeListPropValueProvider = /** @class */ (function () {
25214
25499
  return IkasAttributeListPropValueProvider;
25215
25500
  }());
25216
25501
 
25502
+ var IkasBlogCategoryPropValueProvider = /** @class */ (function () {
25503
+ function IkasBlogCategoryPropValueProvider(propValue, pageSpecificData) {
25504
+ this.blogCategoryPropValue = propValue;
25505
+ this.pageSpecificData = pageSpecificData;
25506
+ }
25507
+ IkasBlogCategoryPropValueProvider.prototype.getValue = function () {
25508
+ var _a;
25509
+ return __awaiter(this, void 0, void 0, function () {
25510
+ var blogCategory;
25511
+ return __generator(this, function (_b) {
25512
+ switch (_b.label) {
25513
+ case 0:
25514
+ if ((_a = this.blogCategoryPropValue) === null || _a === void 0 ? void 0 : _a.usePageData) {
25515
+ return [2 /*return*/, this.pageSpecificData || getPlaceholderBlogCategory()];
25516
+ }
25517
+ if (!this.blogCategoryPropValue.blogCategoryId)
25518
+ return [2 /*return*/, null];
25519
+ return [4 /*yield*/, IkasBlogAPI.listBlogCategory({
25520
+ idList: [this.blogCategoryPropValue.blogCategoryId],
25521
+ page: 1,
25522
+ limit: 1,
25523
+ })];
25524
+ case 1:
25525
+ blogCategory = _b.sent();
25526
+ if (blogCategory && blogCategory.blogCategories.length)
25527
+ return [2 /*return*/, blogCategory.blogCategories[0]];
25528
+ else
25529
+ return [2 /*return*/, getPlaceholderBlogCategory()];
25530
+ }
25531
+ });
25532
+ });
25533
+ };
25534
+ return IkasBlogCategoryPropValueProvider;
25535
+ }());
25536
+
25537
+ var IkasBlogCategoryListPropValueProvider = /** @class */ (function () {
25538
+ function IkasBlogCategoryListPropValueProvider(blogCategoryListPropValue) {
25539
+ this.blogCategoryListPropValue = blogCategoryListPropValue;
25540
+ }
25541
+ IkasBlogCategoryListPropValueProvider.prototype.getValue = function () {
25542
+ return __awaiter(this, void 0, void 0, function () {
25543
+ var blogCategoryList;
25544
+ return __generator(this, function (_a) {
25545
+ switch (_a.label) {
25546
+ case 0:
25547
+ blogCategoryList = new IkasBlogCategoryList({
25548
+ blogCategoryListPropValue: this.blogCategoryListPropValue,
25549
+ });
25550
+ //@ts-ignore
25551
+ return [4 /*yield*/, blogCategoryList.getInitial()];
25552
+ case 1:
25553
+ //@ts-ignore
25554
+ _a.sent();
25555
+ return [2 /*return*/, blogCategoryList];
25556
+ }
25557
+ });
25558
+ });
25559
+ };
25560
+ return IkasBlogCategoryListPropValueProvider;
25561
+ }());
25562
+
25217
25563
  var IkasCustomPropValueProvider = /** @class */ (function () {
25218
25564
  function IkasCustomPropValueProvider(value, customData, theme, pageType, pageDataProvider, pageSpecificData, pageParams) {
25219
25565
  this.value = value;
@@ -25234,7 +25580,7 @@ var IkasCustomPropValueProvider = /** @class */ (function () {
25234
25580
  return [2 /*return*/, { value: null, customData: this.customData }];
25235
25581
  _b.label = 1;
25236
25582
  case 1:
25237
- _b.trys.push([1, 48, , 49]);
25583
+ _b.trys.push([1, 52, , 53]);
25238
25584
  _a = this.customData.type;
25239
25585
  switch (_a) {
25240
25586
  case IkasThemeComponentPropType.TEXT: return [3 /*break*/, 2];
@@ -25262,102 +25608,112 @@ var IkasCustomPropValueProvider = /** @class */ (function () {
25262
25608
  case IkasThemeComponentPropType.COMPONENT_LIST: return [3 /*break*/, 40];
25263
25609
  case IkasThemeComponentPropType.BLOG: return [3 /*break*/, 42];
25264
25610
  case IkasThemeComponentPropType.BLOG_LIST: return [3 /*break*/, 44];
25611
+ case IkasThemeComponentPropType.BLOG_CATEGORY: return [3 /*break*/, 46];
25612
+ case IkasThemeComponentPropType.BLOG_LIST: return [3 /*break*/, 48];
25265
25613
  }
25266
- return [3 /*break*/, 46];
25614
+ return [3 /*break*/, 50];
25267
25615
  case 2: return [4 /*yield*/, this.getTextValue()];
25268
25616
  case 3:
25269
25617
  customDataValue = _b.sent();
25270
- return [3 /*break*/, 47];
25618
+ return [3 /*break*/, 51];
25271
25619
  case 4: return [4 /*yield*/, this.getRichTextPropValue()];
25272
25620
  case 5:
25273
25621
  customDataValue = _b.sent();
25274
- return [3 /*break*/, 47];
25622
+ return [3 /*break*/, 51];
25275
25623
  case 6: return [4 /*yield*/, this.getBooleanValue()];
25276
25624
  case 7:
25277
25625
  customDataValue = _b.sent();
25278
- return [3 /*break*/, 47];
25626
+ return [3 /*break*/, 51];
25279
25627
  case 8: return [4 /*yield*/, this.getBrandListPropValue()];
25280
25628
  case 9:
25281
25629
  customDataValue = _b.sent();
25282
- return [3 /*break*/, 47];
25630
+ return [3 /*break*/, 51];
25283
25631
  case 10: return [4 /*yield*/, this.getBrandPropValue()];
25284
25632
  case 11:
25285
25633
  customDataValue = _b.sent();
25286
- return [3 /*break*/, 47];
25634
+ return [3 /*break*/, 51];
25287
25635
  case 12: return [4 /*yield*/, this.getCategoryListPropValue()];
25288
25636
  case 13:
25289
25637
  customDataValue = _b.sent();
25290
- return [3 /*break*/, 47];
25638
+ return [3 /*break*/, 51];
25291
25639
  case 14: return [4 /*yield*/, this.getCategoryPropValue()];
25292
25640
  case 15:
25293
25641
  customDataValue = _b.sent();
25294
- return [3 /*break*/, 47];
25642
+ return [3 /*break*/, 51];
25295
25643
  case 16: return [4 /*yield*/, this.getColorPropValue()];
25296
25644
  case 17:
25297
25645
  customDataValue = _b.sent();
25298
- return [3 /*break*/, 47];
25646
+ return [3 /*break*/, 51];
25299
25647
  case 18: return [4 /*yield*/, this.getImageListPropValue()];
25300
25648
  case 19:
25301
25649
  customDataValue = _b.sent();
25302
- return [3 /*break*/, 47];
25650
+ return [3 /*break*/, 51];
25303
25651
  case 20: return [4 /*yield*/, this.getImagePropValue()];
25304
25652
  case 21:
25305
25653
  customDataValue = _b.sent();
25306
- return [3 /*break*/, 47];
25654
+ return [3 /*break*/, 51];
25307
25655
  case 22: return [4 /*yield*/, this.getLinkPropValue()];
25308
25656
  case 23:
25309
25657
  customDataValue = _b.sent();
25310
- return [3 /*break*/, 47];
25658
+ return [3 /*break*/, 51];
25311
25659
  case 24: return [4 /*yield*/, this.getProductDetailPropValue()];
25312
25660
  case 25:
25313
25661
  customDataValue = _b.sent();
25314
- return [3 /*break*/, 47];
25662
+ return [3 /*break*/, 51];
25315
25663
  case 26: return [4 /*yield*/, this.getProductListPropValue()];
25316
25664
  case 27:
25317
25665
  customDataValue = _b.sent();
25318
- return [3 /*break*/, 47];
25666
+ return [3 /*break*/, 51];
25319
25667
  case 28: return [4 /*yield*/, this.getProductAttributePropValue()];
25320
25668
  case 29:
25321
25669
  customDataValue = _b.sent();
25322
- return [3 /*break*/, 47];
25670
+ return [3 /*break*/, 51];
25323
25671
  case 30: return [4 /*yield*/, this.getProductAttributeListPropValue()];
25324
25672
  case 31:
25325
25673
  customDataValue = _b.sent();
25326
- return [3 /*break*/, 47];
25674
+ return [3 /*break*/, 51];
25327
25675
  case 32: return [4 /*yield*/, this.getObjectValue()];
25328
25676
  case 33:
25329
25677
  customDataValue = _b.sent();
25330
- return [3 /*break*/, 47];
25678
+ return [3 /*break*/, 51];
25331
25679
  case 34: return [4 /*yield*/, this.getArrayValue()];
25332
25680
  case 35:
25333
25681
  customDataValue = _b.sent();
25334
- return [3 /*break*/, 47];
25682
+ return [3 /*break*/, 51];
25335
25683
  case 36: return [4 /*yield*/, this.getEnumValue()];
25336
25684
  case 37:
25337
25685
  customDataValue = _b.sent();
25338
- return [3 /*break*/, 47];
25686
+ return [3 /*break*/, 51];
25339
25687
  case 38: return [4 /*yield*/, this.getCustomDataValue()];
25340
25688
  case 39:
25341
25689
  customDataValue = _b.sent();
25342
- return [3 /*break*/, 47];
25690
+ return [3 /*break*/, 51];
25343
25691
  case 40: return [4 /*yield*/, this.getComponentListValue()];
25344
25692
  case 41:
25345
25693
  customDataValue = _b.sent();
25346
- return [3 /*break*/, 47];
25694
+ return [3 /*break*/, 51];
25347
25695
  case 42: return [4 /*yield*/, this.getBlogValue()];
25348
25696
  case 43:
25349
25697
  customDataValue = _b.sent();
25350
- return [3 /*break*/, 47];
25698
+ return [3 /*break*/, 51];
25351
25699
  case 44: return [4 /*yield*/, this.getBlogListValue()];
25352
25700
  case 45:
25353
25701
  customDataValue = _b.sent();
25354
- return [3 /*break*/, 47];
25355
- case 46: return [3 /*break*/, 47];
25356
- case 47: return [3 /*break*/, 49];
25357
- case 48:
25702
+ return [3 /*break*/, 51];
25703
+ case 46: return [4 /*yield*/, this.getBlogCategoryValue()];
25704
+ case 47:
25705
+ customDataValue = _b.sent();
25706
+ return [3 /*break*/, 51];
25707
+ case 48: return [4 /*yield*/, this.getBlogCategoryListValue()];
25708
+ case 49:
25709
+ customDataValue = _b.sent();
25710
+ return [3 /*break*/, 51];
25711
+ case 50: return [3 /*break*/, 51];
25712
+ case 51: return [3 /*break*/, 53];
25713
+ case 52:
25358
25714
  _b.sent();
25359
25715
  return [2 /*return*/];
25360
- case 49:
25716
+ case 53:
25361
25717
  if (this.customData.isRequired &&
25362
25718
  ((customDataValue === null || customDataValue === void 0 ? void 0 : customDataValue.value) === undefined || (customDataValue === null || customDataValue === void 0 ? void 0 : customDataValue.value) === null))
25363
25719
  return [2 /*return*/];
@@ -25804,6 +26160,42 @@ var IkasCustomPropValueProvider = /** @class */ (function () {
25804
26160
  });
25805
26161
  });
25806
26162
  };
26163
+ IkasCustomPropValueProvider.prototype.getBlogCategoryValue = function () {
26164
+ return __awaiter(this, void 0, void 0, function () {
26165
+ var provider, value;
26166
+ return __generator(this, function (_a) {
26167
+ switch (_a.label) {
26168
+ case 0:
26169
+ provider = new IkasBlogCategoryPropValueProvider(this.value, this.pageSpecificData);
26170
+ return [4 /*yield*/, provider.getValue()];
26171
+ case 1:
26172
+ value = _a.sent();
26173
+ return [2 /*return*/, {
26174
+ value: value,
26175
+ customData: this.customData,
26176
+ }];
26177
+ }
26178
+ });
26179
+ });
26180
+ };
26181
+ IkasCustomPropValueProvider.prototype.getBlogCategoryListValue = function () {
26182
+ return __awaiter(this, void 0, void 0, function () {
26183
+ var provider, value;
26184
+ return __generator(this, function (_a) {
26185
+ switch (_a.label) {
26186
+ case 0:
26187
+ provider = new IkasBlogCategoryListPropValueProvider(this.value);
26188
+ return [4 /*yield*/, provider.getValue()];
26189
+ case 1:
26190
+ value = _a.sent();
26191
+ return [2 /*return*/, {
26192
+ value: value,
26193
+ customData: this.customData,
26194
+ }];
26195
+ }
26196
+ });
26197
+ });
26198
+ };
25807
26199
  return IkasCustomPropValueProvider;
25808
26200
  }());
25809
26201
 
@@ -26555,72 +26947,80 @@ var IkasPageDataProvider = /** @class */ (function () {
26555
26947
  case IkasThemeComponentPropType.COMPONENT_LIST: return [3 /*break*/, 17];
26556
26948
  case IkasThemeComponentPropType.BLOG: return [3 /*break*/, 19];
26557
26949
  case IkasThemeComponentPropType.BLOG_LIST: return [3 /*break*/, 20];
26950
+ case IkasThemeComponentPropType.BLOG_CATEGORY: return [3 /*break*/, 21];
26951
+ case IkasThemeComponentPropType.BLOG_CATEGORY_LIST: return [3 /*break*/, 22];
26558
26952
  }
26559
- return [3 /*break*/, 21];
26953
+ return [3 /*break*/, 23];
26560
26954
  case 1:
26561
26955
  propValueProvider = new IkasTextPropValueProvider(propValue);
26562
- return [3 /*break*/, 22];
26956
+ return [3 /*break*/, 24];
26563
26957
  case 2:
26564
26958
  propValueProvider = new IkasRichTextPropValueProvider(propValue);
26565
- return [3 /*break*/, 22];
26959
+ return [3 /*break*/, 24];
26566
26960
  case 3:
26567
26961
  propValueProvider = new IkasBooleanPropValueProvider(propValue);
26568
- return [3 /*break*/, 22];
26962
+ return [3 /*break*/, 24];
26569
26963
  case 4:
26570
26964
  propValueProvider = new IkasImagePropValueProvider(propValue);
26571
- return [3 /*break*/, 22];
26965
+ return [3 /*break*/, 24];
26572
26966
  case 5:
26573
26967
  propValueProvider = new IkasImageListPropValueProvider(propValue);
26574
- return [3 /*break*/, 22];
26968
+ return [3 /*break*/, 24];
26575
26969
  case 6:
26576
26970
  propValueProvider = new IkasBrandPropValueProvider(propValue, this.pageSpecificData);
26577
- return [3 /*break*/, 22];
26971
+ return [3 /*break*/, 24];
26578
26972
  case 7:
26579
26973
  propValueProvider = new IkasBrandListPropValueProvider(propValue);
26580
- return [3 /*break*/, 22];
26974
+ return [3 /*break*/, 24];
26581
26975
  case 8:
26582
26976
  propValueProvider = new IkasProductListPropValueProvider(this.pageType, propValue, this.pageSpecificData);
26583
- return [3 /*break*/, 22];
26977
+ return [3 /*break*/, 24];
26584
26978
  case 9:
26585
26979
  propValueProvider = new IkasProductDetailPropValueProvider(propValue, this.pageSpecificData);
26586
- return [3 /*break*/, 22];
26980
+ return [3 /*break*/, 24];
26587
26981
  case 10:
26588
26982
  propValueProvider = new IkasAttributePropValueProvider(propValue, this.pageSpecificData);
26589
- return [3 /*break*/, 22];
26983
+ return [3 /*break*/, 24];
26590
26984
  case 11:
26591
26985
  propValueProvider = new IkasAttributeListPropValueProvider(propValue, this.pageSpecificData);
26592
- return [3 /*break*/, 22];
26986
+ return [3 /*break*/, 24];
26593
26987
  case 12:
26594
26988
  propValueProvider = new IkasCategoryPropValueProvider(propValue, this.pageSpecificData);
26595
- return [3 /*break*/, 22];
26989
+ return [3 /*break*/, 24];
26596
26990
  case 13:
26597
26991
  propValueProvider = new IkasCategoryListPropValueProvider(propValue);
26598
- return [3 /*break*/, 22];
26992
+ return [3 /*break*/, 24];
26599
26993
  case 14:
26600
26994
  propValueProvider = new IkasLinkPropValueProvider(propValue, this.theme);
26601
- return [3 /*break*/, 22];
26995
+ return [3 /*break*/, 24];
26602
26996
  case 15:
26603
26997
  propValueProvider = new IkasColorPropValueProvider(propValue);
26604
- return [3 /*break*/, 22];
26998
+ return [3 /*break*/, 24];
26605
26999
  case 16:
26606
27000
  customData = this.theme.customData.find(function (cd) { return cd.id === prop.customDataId; });
26607
27001
  if (!customData)
26608
27002
  return [2 /*return*/];
26609
27003
  propValueProvider = new IkasCustomPropValueProvider(propValue, customData, this.theme, this.pageType, this, this.pageSpecificData, this.pageParams);
26610
- return [3 /*break*/, 22];
27004
+ return [3 /*break*/, 24];
26611
27005
  case 17:
26612
27006
  pageComponents = propValue;
26613
27007
  return [4 /*yield*/, Promise.all(pageComponents.map(function (tp) { return _this.getPageComponentPropValues(tp); }))];
26614
27008
  case 18: return [2 /*return*/, _b.sent()];
26615
27009
  case 19:
26616
27010
  propValueProvider = new IkasBlogPropValueProvider(propValue, this.pageSpecificData);
26617
- return [3 /*break*/, 22];
27011
+ return [3 /*break*/, 24];
26618
27012
  case 20:
26619
27013
  propValueProvider = new IkasBlogListPropValueProvider(this.pageType, propValue, this.pageSpecificData);
26620
- return [3 /*break*/, 22];
26621
- case 21: return [3 /*break*/, 22];
26622
- case 22: return [4 /*yield*/, (propValueProvider === null || propValueProvider === void 0 ? void 0 : propValueProvider.getValue())];
26623
- case 23: return [2 /*return*/, _b.sent()];
27014
+ return [3 /*break*/, 24];
27015
+ case 21:
27016
+ propValueProvider = new IkasBlogCategoryPropValueProvider(propValue, this.pageSpecificData);
27017
+ return [3 /*break*/, 24];
27018
+ case 22:
27019
+ propValueProvider = new IkasBlogCategoryListPropValueProvider(propValue);
27020
+ return [3 /*break*/, 24];
27021
+ case 23: return [3 /*break*/, 24];
27022
+ case 24: return [4 /*yield*/, (propValueProvider === null || propValueProvider === void 0 ? void 0 : propValueProvider.getValue())];
27023
+ case 25: return [2 /*return*/, _b.sent()];
26624
27024
  }
26625
27025
  });
26626
27026
  });
@@ -26697,6 +27097,12 @@ var IkasPageDataProvider = /** @class */ (function () {
26697
27097
  case IkasThemeComponentPropType.BLOG_LIST:
26698
27098
  IkasPageDataProvider.initBlogListPropValue(prop, propValue, pageComponentPropValue);
26699
27099
  break;
27100
+ case IkasThemeComponentPropType.BLOG_CATEGORY:
27101
+ IkasPageDataProvider.initBlogCategoryPropValue(prop, propValue, pageComponentPropValue);
27102
+ break;
27103
+ case IkasThemeComponentPropType.BLOG_LIST:
27104
+ IkasPageDataProvider.initBlogCategoryListPropValue(prop, propValue, pageComponentPropValue);
27105
+ break;
26700
27106
  }
26701
27107
  });
26702
27108
  });
@@ -26830,6 +27236,16 @@ var IkasPageDataProvider = /** @class */ (function () {
26830
27236
  return this._initProductListPropValue(propValue, router);
26831
27237
  case IkasThemeComponentPropType.PRODUCT_ATTRIBUTE:
26832
27238
  return this._initAttributePropValue(propValue);
27239
+ case IkasThemeComponentPropType.PRODUCT_ATTRIBUTE_LIST:
27240
+ return this._initAttributeListPropValue(propValue);
27241
+ case IkasThemeComponentPropType.BLOG:
27242
+ return this._initBlogPropValue(propValue);
27243
+ case IkasThemeComponentPropType.BLOG_LIST:
27244
+ return this._initBlogListPropValue(propValue);
27245
+ case IkasThemeComponentPropType.BLOG_CATEGORY:
27246
+ return this._initBlogCategoryPropValue(propValue);
27247
+ case IkasThemeComponentPropType.BLOG_CATEGORY_LIST:
27248
+ return this._initBlogCategoryListPropValue(propValue);
26833
27249
  case IkasThemeComponentPropType.OBJECT:
26834
27250
  var objectValue = {};
26835
27251
  for (var _i = 0, _a = customData.nestedData || []; _i < _a.length; _i++) {
@@ -26911,6 +27327,18 @@ var IkasPageDataProvider = /** @class */ (function () {
26911
27327
  IkasPageDataProvider._initBlogListPropValue = function (propValue) {
26912
27328
  return new IkasBlogList(propValue);
26913
27329
  };
27330
+ IkasPageDataProvider.initBlogCategoryPropValue = function (prop, propValue, pageComponentPropValue) {
27331
+ pageComponentPropValue.propValues[prop.name] = IkasPageDataProvider._initBlogCategoryPropValue(propValue);
27332
+ };
27333
+ IkasPageDataProvider._initBlogCategoryPropValue = function (propValue) {
27334
+ return new IkasBlogCategory(propValue);
27335
+ };
27336
+ IkasPageDataProvider.initBlogCategoryListPropValue = function (prop, propValue, pageComponentPropValue) {
27337
+ pageComponentPropValue.propValues[prop.name] = this._initBlogCategoryListPropValue(propValue);
27338
+ };
27339
+ IkasPageDataProvider._initBlogCategoryListPropValue = function (propValue) {
27340
+ return new IkasBlogCategoryList(propValue);
27341
+ };
26914
27342
  return IkasPageDataProvider;
26915
27343
  }());
26916
27344
  var IkasPageComponentPropValue = /** @class */ (function () {
@@ -32604,4 +33032,4 @@ var IkasBaseStore = /** @class */ (function () {
32604
33032
  return IkasBaseStore;
32605
33033
  }());
32606
33034
 
32607
- export { AccountInfoForm, index$3 as AccountPage, AddressForm, addresses as AddressesPage, Analytics, AnalyticsBody, AnalyticsHead, index$5 as BlogPage, _slug_$2 as BlogSlugPage, 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, IkasBlog, IkasBlogAPI, IkasBlogCategory, IkasBlogContent, IkasBlogList, IkasBlogListPropValue, IkasBlogListType, IkasBlogMetaData, IkasBlogMetadataTargetType, IkasBlogPropValue, IkasBlogTag, IkasBlogWriter, IkasBrand, IkasBrandAPI, IkasBrandList, IkasBrandListPropValue, IkasBrandListSortType, IkasBrandListType, IkasBrandPropValue, IkasCardAssociation, IkasCardType, IkasCartAPI, IkasCategory, IkasCategoryAPI, IkasCategoryList, IkasCategoryListPropValue, IkasCategoryListSortType, IkasCategoryListType, IkasCategoryPropValue, IkasCheckout, IkasCheckoutAPI, IkasCheckoutPage, IkasCheckoutRecoveryEmailStatus, IkasCheckoutRecoveryStatus, IkasCheckoutStatus, IkasCityAPI, IkasComponentRenderer, 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, IkasProductAttributeType, IkasProductAttributeValue, IkasProductDetail, IkasProductDetailPropValue, IkasProductFilter, IkasProductFilterDisplayType, IkasProductFilterSettings, IkasProductFilterSortType, IkasProductFilterType, IkasProductFilterValue, IkasProductList, IkasProductListPropValue, IkasProductListSortType, IkasProductListType, IkasProductPrice, IkasProductSearchAPI, IkasProductType, IkasProductVariant, IkasProductVariantType, IkasShippingMethod, IkasShippingMethodEnum, IkasStateAPI, IkasStorefrontConfig, IkasTheme, IkasThemeComponent, IkasThemeComponentProp, IkasThemeComponentPropType, IkasThemeCustomData, 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, OrderLineItemStatusEnum$1 as OrderLineItemStatusEnum, 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, getPlaceholderBlog, getPlaceholderBrand, getPlaceholderCategory, getPlaceholderProduct, parseRangeStr, pascalCase, stringSorter, stringToSlug, validatePhoneNumber };
33035
+ export { AccountInfoForm, index$3 as AccountPage, AddressForm, addresses as AddressesPage, Analytics, AnalyticsBody, AnalyticsHead, index$5 as BlogPage, _slug_$2 as BlogSlugPage, 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, IkasBlog, IkasBlogAPI, IkasBlogCategory, IkasBlogCategoryList, IkasBlogCategoryListPropValue, IkasBlogCategoryListType, IkasBlogCategoryPropValue, IkasBlogContent, IkasBlogList, IkasBlogListPropValue, IkasBlogListType, IkasBlogMetaData, IkasBlogMetadataTargetType, IkasBlogPropValue, IkasBlogTag, IkasBlogWriter, IkasBrand, IkasBrandAPI, IkasBrandList, IkasBrandListPropValue, IkasBrandListSortType, IkasBrandListType, IkasBrandPropValue, IkasCardAssociation, IkasCardType, IkasCartAPI, IkasCategory, IkasCategoryAPI, IkasCategoryList, IkasCategoryListPropValue, IkasCategoryListSortType, IkasCategoryListType, IkasCategoryPropValue, IkasCheckout, IkasCheckoutAPI, IkasCheckoutPage, IkasCheckoutRecoveryEmailStatus, IkasCheckoutRecoveryStatus, IkasCheckoutStatus, IkasCityAPI, IkasComponentRenderer, 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, IkasProductAttributeType, IkasProductAttributeValue, IkasProductDetail, IkasProductDetailPropValue, IkasProductFilter, IkasProductFilterDisplayType, IkasProductFilterSettings, IkasProductFilterSortType, IkasProductFilterType, IkasProductFilterValue, IkasProductList, IkasProductListPropValue, IkasProductListSortType, IkasProductListType, IkasProductPrice, IkasProductSearchAPI, IkasProductType, IkasProductVariant, IkasProductVariantType, IkasShippingMethod, IkasShippingMethodEnum, IkasStateAPI, IkasStorefrontConfig, IkasTheme, IkasThemeComponent, IkasThemeComponentProp, IkasThemeComponentPropType, IkasThemeCustomData, 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, OrderLineItemStatusEnum$1 as OrderLineItemStatusEnum, 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, getPlaceholderBlog, getPlaceholderBlogCategory, getPlaceholderBrand, getPlaceholderCategory, getPlaceholderProduct, parseRangeStr, pascalCase, stringSorter, stringToSlug, validatePhoneNumber };