@ikas/storefront 0.0.17 → 0.0.18

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
@@ -11827,10 +11827,8 @@ var IkasPageDataProvider = /** @class */ (function () {
11827
11827
  get: function () {
11828
11828
  var _this = this;
11829
11829
  if (this.pageType === IkasThemePageType.CUSTOM) {
11830
- var secondSlug_1 = this.pageParams.secondSlug;
11831
- return this.theme.pages.find(function (page) {
11832
- return page.type === IkasThemePageType.CUSTOM && page.slug === secondSlug_1;
11833
- });
11830
+ var slug_1 = this.pageParams.slug;
11831
+ return this.theme.pages.find(function (page) { return page.type === IkasThemePageType.CUSTOM && page.slug === slug_1; });
11834
11832
  }
11835
11833
  return this.theme.pages.find(function (page) { return page.type === _this.pageType; });
11836
11834
  },
@@ -11888,10 +11886,10 @@ var IkasPageDataProvider = /** @class */ (function () {
11888
11886
  };
11889
11887
  IkasPageDataProvider.prototype.getPageSpecificData = function () {
11890
11888
  return __awaiter(this, void 0, void 0, function () {
11891
- var _a, slug, secondSlug, metaDataList, metaData, setPageMetaData, handleBrandPage, handleCategoryPage, handleProductPage, _b;
11889
+ var slug, metaDataList, metaData, setPageMetaData, handleBrandPage, handleCategoryPage, handleProductPage, _a;
11892
11890
  var _this = this;
11893
- return __generator(this, function (_c) {
11894
- switch (_c.label) {
11891
+ return __generator(this, function (_b) {
11892
+ switch (_b.label) {
11895
11893
  case 0:
11896
11894
  if (this.pageType &&
11897
11895
  [
@@ -11904,16 +11902,14 @@ var IkasPageDataProvider = /** @class */ (function () {
11904
11902
  IkasThemePageType.REGISTER,
11905
11903
  IkasThemePageType.FORGOT_PASSWORD,
11906
11904
  IkasThemePageType.RECOVER_PASSWORD,
11905
+ IkasThemePageType.CUSTOM,
11906
+ IkasThemePageType.BASKET,
11907
11907
  ].includes(this.pageType))
11908
11908
  return [2 /*return*/];
11909
- _a = this.pageParams, slug = _a.slug, secondSlug = _a.secondSlug;
11910
- if (secondSlug) {
11911
- this.pageType = IkasThemePageType.CUSTOM;
11912
- return [2 /*return*/];
11913
- }
11909
+ slug = this.pageParams.slug;
11914
11910
  return [4 /*yield*/, IkasHTMLMetaDataAPI.listHTMLMetaData(slug)];
11915
11911
  case 1:
11916
- metaDataList = _c.sent();
11912
+ metaDataList = _b.sent();
11917
11913
  if (!metaDataList || !metaDataList.length) {
11918
11914
  return [2 /*return*/];
11919
11915
  }
@@ -11981,19 +11977,19 @@ var IkasPageDataProvider = /** @class */ (function () {
11981
11977
  }
11982
11978
  });
11983
11979
  }); };
11984
- _b = metaData.targetType;
11985
- switch (_b) {
11980
+ _a = metaData.targetType;
11981
+ switch (_a) {
11986
11982
  case IkasHTMLMetaDataTargetType.BRAND: return [3 /*break*/, 2];
11987
11983
  case IkasHTMLMetaDataTargetType.CATEGORY: return [3 /*break*/, 4];
11988
11984
  case IkasHTMLMetaDataTargetType.PRODUCT: return [3 /*break*/, 6];
11989
11985
  }
11990
11986
  return [3 /*break*/, 8];
11991
11987
  case 2: return [4 /*yield*/, handleBrandPage()];
11992
- case 3: return [2 /*return*/, _c.sent()];
11988
+ case 3: return [2 /*return*/, _b.sent()];
11993
11989
  case 4: return [4 /*yield*/, handleCategoryPage()];
11994
- case 5: return [2 /*return*/, _c.sent()];
11990
+ case 5: return [2 /*return*/, _b.sent()];
11995
11991
  case 6: return [4 /*yield*/, handleProductPage()];
11996
- case 7: return [2 /*return*/, _c.sent()];
11992
+ case 7: return [2 /*return*/, _b.sent()];
11997
11993
  case 8: return [3 /*break*/, 9];
11998
11994
  case 9: return [2 /*return*/];
11999
11995
  }
@@ -12165,24 +12161,35 @@ var IkasPageDataProvider = /** @class */ (function () {
12165
12161
  var product = productDetail.product;
12166
12162
  var selectedVariantValues = [];
12167
12163
  if (usePageData && product.variantTypes.length) {
12168
- product.variantTypes.forEach(function (pvt) {
12169
- var slug = pvt.variantType.slug;
12170
- var variantValueParam = queryParams[slug];
12171
- if (variantValueParam) {
12172
- var variantValueSlug_1 = variantValueParam;
12173
- if (Array.isArray(variantValueParam)) {
12174
- variantValueSlug_1 = variantValueParam[0];
12164
+ var vid_1 = queryParams.vid;
12165
+ var hasVid = false;
12166
+ if (vid_1 && typeof vid_1 === "string") {
12167
+ var variant = product.variants.find(function (v) { return v.id === vid_1; });
12168
+ if (variant) {
12169
+ selectedVariantValues = variant.variantValues;
12170
+ hasVid = true;
12171
+ }
12172
+ }
12173
+ if (!hasVid) {
12174
+ product.variantTypes.forEach(function (pvt) {
12175
+ var slug = pvt.variantType.slug;
12176
+ var variantValueParam = queryParams[slug];
12177
+ if (variantValueParam) {
12178
+ var variantValueSlug_1 = variantValueParam;
12179
+ if (Array.isArray(variantValueParam)) {
12180
+ variantValueSlug_1 = variantValueParam[0];
12181
+ }
12182
+ var variantValue = pvt.variantType.values.find(function (vv) { return vv.slug === variantValueSlug_1; });
12183
+ if (variantValue)
12184
+ selectedVariantValues.push(variantValue);
12185
+ else
12186
+ selectedVariantValues.push(pvt.variantType.values[0]);
12175
12187
  }
12176
- var variantValue = pvt.variantType.values.find(function (vv) { return vv.slug === variantValueSlug_1; });
12177
- if (variantValue)
12178
- selectedVariantValues.push(variantValue);
12179
- else
12188
+ else {
12180
12189
  selectedVariantValues.push(pvt.variantType.values[0]);
12181
- }
12182
- else {
12183
- selectedVariantValues.push(pvt.variantType.values[0]);
12184
- }
12185
- });
12190
+ }
12191
+ });
12192
+ }
12186
12193
  }
12187
12194
  else {
12188
12195
  selectedVariantValues = productDetail.selectedVariantValues || [];
@@ -13422,6 +13429,7 @@ var IkasThemePageType;
13422
13429
  IkasThemePageType["REGISTER"] = "REGISTER";
13423
13430
  IkasThemePageType["FORGOT_PASSWORD"] = "FORGOT_PASSWORD";
13424
13431
  IkasThemePageType["RECOVER_PASSWORD"] = "RECOVER_PASSWORD";
13432
+ IkasThemePageType["BASKET"] = "BASKET";
13425
13433
  })(IkasThemePageType || (IkasThemePageType = {}));
13426
13434
 
13427
13435
  var IkasTheme = /** @class */ (function () {
@@ -14119,6 +14127,7 @@ var IkasProductDetail = /** @class */ (function () {
14119
14127
  var vt = _this.product.variantTypes.find(function (vt) { return vt.variantType.id === vv.variantTypeId; });
14120
14128
  queryParams[vt.variantType.slug] = vv.slug;
14121
14129
  });
14130
+ this.selectedVariantValues = selectedVariantValues;
14122
14131
  (_a = this.router) === null || _a === void 0 ? void 0 : _a.replace(location.pathname + "?" + queryString$1.stringify(queryParams), undefined, { shallow: true });
14123
14132
  };
14124
14133
  return IkasProductDetail;
@@ -19353,7 +19362,7 @@ var IkasProductAPI = /** @class */ (function () {
19353
19362
  count = data.listProduct.count;
19354
19363
  brandIds = products
19355
19364
  .map(function (p) { return p.brandId; })
19356
- .filter(function (id) { return !id; });
19365
+ .filter(function (id) { return !!id; });
19357
19366
  categoryIds = flatten_1(products.map(function (p) { return p.categoryIds || []; }));
19358
19367
  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; })) || []; }));
19359
19368
  return [4 /*yield*/, IkasStockLocationAPI.listStockLocation()];
@@ -22154,7 +22163,7 @@ var CheckoutStepInfo = observer(function (_a) {
22154
22163
  createElement(FormItem, { type: FormItemType.SELECT, label: "Kaydedilen adresler", value: vm.selectedShippingAddressId, onChange: vm.onSelectedShippingAddressIdChange, options: vm.customerAddressOptions }))),
22155
22164
  createElement(AddressForm, { address: vm.checkout.shippingAddress, customer: vm.checkout.customer && vm.checkout.customer.id
22156
22165
  ? undefined
22157
- : vm.checkout.customer || undefined, isErrorsVisible: vm.isErrorsVisible, allowedCountryIds: vm.shippingCountryIds, validationResult: vm.checkout.shippingAddress.validationResult }),
22166
+ : vm.checkout.customer || undefined, isErrorsVisible: vm.isErrorsVisible, allowedCountryIds: vm.shippingCountryIds || undefined, validationResult: vm.checkout.shippingAddress.validationResult }),
22158
22167
  !!vm.customerStore.customer && vm.selectedShippingAddressId === "-1" && (createElement("div", { style: { marginTop: "12px" } },
22159
22168
  createElement(Checkbox, { value: vm.shouldSaveAddress, label: "Bir sonraki i\u015Flem i\u00E7in bu bilgileri kaydet", onChange: vm.setShouldSaveAddress }),
22160
22169
  vm.shouldSaveAddress && (createElement("div", { style: { marginTop: "8px" } },
@@ -23785,44 +23794,25 @@ var home = /*#__PURE__*/Object.freeze({
23785
23794
  });
23786
23795
 
23787
23796
  var Page$1 = function (_a) {
23788
- var page = _a.page, pageSpecificDataStr = _a.pageSpecificDataStr, propValuesStr = _a.propValuesStr;
23797
+ var page = _a.page, pageSpecificDataStr = _a.pageSpecificDataStr, propValuesStr = _a.propValuesStr, queryParams = _a.queryParams;
23789
23798
  var router = useRouter();
23790
- var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
23799
+ var propValues = computed(function () {
23800
+ return IkasPageDataProvider.initPropValues(propValuesStr, router, typeof window !== "undefined"
23801
+ ? queryString.parse(window.location.search.replace("?", ""))
23802
+ : queryParams);
23803
+ });
23791
23804
  handleGTM(page, pageSpecificDataStr);
23792
- return createElement(IkasPage, { page: page, propValues: propValues });
23805
+ return createElement(IkasPage, { page: page, propValues: propValues.get() });
23793
23806
  };
23794
- var getStaticPaths = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23795
- var metaData, targetTypes, filteredMetaData;
23796
- return __generator(this, function (_a) {
23797
- switch (_a.label) {
23798
- case 0: return [4 /*yield*/, IkasHTMLMetaDataAPI.listHTMLMetaData()];
23799
- case 1:
23800
- metaData = _a.sent();
23801
- targetTypes = [
23802
- IkasHTMLMetaDataTargetType.BRAND,
23803
- IkasHTMLMetaDataTargetType.CATEGORY,
23804
- IkasHTMLMetaDataTargetType.PRODUCT,
23805
- ];
23806
- filteredMetaData = metaData.filter(function (m) { return m.targetType && targetTypes.includes(m.targetType); });
23807
- return [2 /*return*/, {
23808
- paths: filteredMetaData.map(function (m) { return ({
23809
- params: {
23810
- slug: m.slug,
23811
- },
23812
- }); }),
23813
- fallback: "blocking",
23814
- }];
23815
- }
23816
- });
23817
- }); };
23818
- var getStaticProps$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23807
+ var index$1 = observer(Page$1);
23808
+ var getServerSideProps = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23819
23809
  var theme, provider;
23820
23810
  return __generator(this, function (_a) {
23821
23811
  switch (_a.label) {
23822
23812
  case 0: return [4 /*yield*/, IkasThemeAPI.fetchTheme()];
23823
23813
  case 1:
23824
23814
  theme = _a.sent();
23825
- provider = new IkasPageDataProvider(theme, context.params);
23815
+ provider = new IkasPageDataProvider(theme, context.params, undefined);
23826
23816
  return [4 /*yield*/, provider.getPageData()];
23827
23817
  case 2:
23828
23818
  _a.sent();
@@ -23832,8 +23822,7 @@ var getStaticProps$1 = function (context) { return __awaiter(void 0, void 0, voi
23832
23822
  }];
23833
23823
  }
23834
23824
  return [2 /*return*/, {
23835
- props: __assign(__assign({}, provider.nextPageData.props), { pageSpecificDataStr: JSON.stringify(provider.pageSpecificData || {}) }),
23836
- revalidate: 60,
23825
+ props: __assign(__assign({}, provider.nextPageData.props), { pageSpecificDataStr: JSON.stringify(provider.pageSpecificData || {}), queryParams: context.query }),
23837
23826
  }];
23838
23827
  }
23839
23828
  });
@@ -23854,11 +23843,10 @@ function handleGTM(page, pageSpecificDataStr) {
23854
23843
  }
23855
23844
  }
23856
23845
 
23857
- var index$1 = /*#__PURE__*/Object.freeze({
23846
+ var index$2 = /*#__PURE__*/Object.freeze({
23858
23847
  __proto__: null,
23859
- 'default': Page$1,
23860
- getStaticPaths: getStaticPaths,
23861
- getStaticProps: getStaticProps$1
23848
+ 'default': index$1,
23849
+ getServerSideProps: getServerSideProps
23862
23850
  });
23863
23851
 
23864
23852
  var Page$2 = function (_a) {
@@ -23867,7 +23855,7 @@ var Page$2 = function (_a) {
23867
23855
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
23868
23856
  return createElement(IkasPage, { page: page, propValues: propValues });
23869
23857
  };
23870
- var getStaticPaths$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23858
+ var getStaticPaths = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23871
23859
  var theme, customPages, customPagePaths;
23872
23860
  return __generator(this, function (_a) {
23873
23861
  switch (_a.label) {
@@ -23876,8 +23864,7 @@ var getStaticPaths$1 = function (context) { return __awaiter(void 0, void 0, voi
23876
23864
  theme = _a.sent();
23877
23865
  customPages = theme.pages.filter(function (p) { return p.type === IkasThemePageType.CUSTOM; });
23878
23866
  customPagePaths = customPages.map(function (p) { return ({
23879
- slug: "pages",
23880
- secondSlug: p.slug,
23867
+ slug: p.slug,
23881
23868
  }); });
23882
23869
  return [2 /*return*/, {
23883
23870
  paths: customPagePaths.map(function (p) { return ({
@@ -23888,14 +23875,14 @@ var getStaticPaths$1 = function (context) { return __awaiter(void 0, void 0, voi
23888
23875
  }
23889
23876
  });
23890
23877
  }); };
23891
- var getStaticProps$2 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23878
+ var getStaticProps$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23892
23879
  var theme, provider;
23893
23880
  return __generator(this, function (_a) {
23894
23881
  switch (_a.label) {
23895
23882
  case 0: return [4 /*yield*/, IkasThemeAPI.fetchTheme()];
23896
23883
  case 1:
23897
23884
  theme = _a.sent();
23898
- provider = new IkasPageDataProvider(theme, context.params);
23885
+ provider = new IkasPageDataProvider(theme, context.params, IkasThemePageType.CUSTOM);
23899
23886
  return [4 /*yield*/, provider.getPageData()];
23900
23887
  case 2:
23901
23888
  _a.sent();
@@ -23904,11 +23891,11 @@ var getStaticProps$2 = function (context) { return __awaiter(void 0, void 0, voi
23904
23891
  });
23905
23892
  }); };
23906
23893
 
23907
- var _secondSlug_ = /*#__PURE__*/Object.freeze({
23894
+ var _slug_ = /*#__PURE__*/Object.freeze({
23908
23895
  __proto__: null,
23909
23896
  'default': Page$2,
23910
- getStaticPaths: getStaticPaths$1,
23911
- getStaticProps: getStaticProps$2
23897
+ getStaticPaths: getStaticPaths,
23898
+ getStaticProps: getStaticProps$1
23912
23899
  });
23913
23900
 
23914
23901
  var CheckoutPage = function (_a) {
@@ -23918,7 +23905,7 @@ var CheckoutPage = function (_a) {
23918
23905
  return createElement(IkasCheckoutPage, { checkout: checkout, queryParams: queryParams });
23919
23906
  };
23920
23907
  var _id_ = observer(CheckoutPage);
23921
- var getServerSideProps = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23908
+ var getServerSideProps$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23922
23909
  var id, redirect, checkout;
23923
23910
  return __generator(this, function (_a) {
23924
23911
  switch (_a.label) {
@@ -23953,7 +23940,7 @@ var getServerSideProps = function (context) { return __awaiter(void 0, void 0, v
23953
23940
  var _id_$1 = /*#__PURE__*/Object.freeze({
23954
23941
  __proto__: null,
23955
23942
  'default': _id_,
23956
- getServerSideProps: getServerSideProps
23943
+ getServerSideProps: getServerSideProps$1
23957
23944
  });
23958
23945
 
23959
23946
  var Page$3 = function (_a) {
@@ -23962,7 +23949,7 @@ var Page$3 = function (_a) {
23962
23949
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
23963
23950
  return createElement(IkasPage, { page: page, propValues: propValues });
23964
23951
  };
23965
- var getStaticProps$3 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23952
+ var getStaticProps$2 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23966
23953
  var theme, provider;
23967
23954
  return __generator(this, function (_a) {
23968
23955
  switch (_a.label) {
@@ -23978,10 +23965,10 @@ var getStaticProps$3 = function (context) { return __awaiter(void 0, void 0, voi
23978
23965
  });
23979
23966
  }); };
23980
23967
 
23981
- var index$2 = /*#__PURE__*/Object.freeze({
23968
+ var index$3 = /*#__PURE__*/Object.freeze({
23982
23969
  __proto__: null,
23983
23970
  'default': Page$3,
23984
- getStaticProps: getStaticProps$3
23971
+ getStaticProps: getStaticProps$2
23985
23972
  });
23986
23973
 
23987
23974
  var Page$4 = function (_a) {
@@ -23990,7 +23977,7 @@ var Page$4 = function (_a) {
23990
23977
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
23991
23978
  return createElement(IkasPage, { page: page, propValues: propValues });
23992
23979
  };
23993
- var getStaticProps$4 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23980
+ var getStaticProps$3 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23994
23981
  var theme, provider;
23995
23982
  return __generator(this, function (_a) {
23996
23983
  switch (_a.label) {
@@ -24009,7 +23996,7 @@ var getStaticProps$4 = function (context) { return __awaiter(void 0, void 0, voi
24009
23996
  var addresses = /*#__PURE__*/Object.freeze({
24010
23997
  __proto__: null,
24011
23998
  'default': Page$4,
24012
- getStaticProps: getStaticProps$4
23999
+ getStaticProps: getStaticProps$3
24013
24000
  });
24014
24001
 
24015
24002
  var Page$5 = function (_a) {
@@ -24018,7 +24005,7 @@ var Page$5 = function (_a) {
24018
24005
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
24019
24006
  return createElement(IkasPage, { page: page, propValues: propValues });
24020
24007
  };
24021
- var getStaticProps$5 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24008
+ var getStaticProps$4 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24022
24009
  var theme, provider;
24023
24010
  return __generator(this, function (_a) {
24024
24011
  switch (_a.label) {
@@ -24034,10 +24021,10 @@ var getStaticProps$5 = function (context) { return __awaiter(void 0, void 0, voi
24034
24021
  });
24035
24022
  }); };
24036
24023
 
24037
- var index$3 = /*#__PURE__*/Object.freeze({
24024
+ var index$4 = /*#__PURE__*/Object.freeze({
24038
24025
  __proto__: null,
24039
24026
  'default': Page$5,
24040
- getStaticProps: getStaticProps$5
24027
+ getStaticProps: getStaticProps$4
24041
24028
  });
24042
24029
 
24043
24030
  var Page$6 = function (_a) {
@@ -24046,7 +24033,7 @@ var Page$6 = function (_a) {
24046
24033
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
24047
24034
  return createElement(IkasPage, { page: page, propValues: propValues });
24048
24035
  };
24049
- var getServerSideProps$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24036
+ var getServerSideProps$2 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24050
24037
  var theme, provider;
24051
24038
  return __generator(this, function (_a) {
24052
24039
  switch (_a.label) {
@@ -24065,7 +24052,7 @@ var getServerSideProps$1 = function (context) { return __awaiter(void 0, void 0,
24065
24052
  var _id_$2 = /*#__PURE__*/Object.freeze({
24066
24053
  __proto__: null,
24067
24054
  'default': Page$6,
24068
- getServerSideProps: getServerSideProps$1
24055
+ getServerSideProps: getServerSideProps$2
24069
24056
  });
24070
24057
 
24071
24058
  var Page$7 = function (_a) {
@@ -24074,7 +24061,7 @@ var Page$7 = function (_a) {
24074
24061
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
24075
24062
  return createElement(IkasPage, { page: page, propValues: propValues });
24076
24063
  };
24077
- var getStaticProps$6 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24064
+ var getStaticProps$5 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24078
24065
  var theme, provider;
24079
24066
  return __generator(this, function (_a) {
24080
24067
  switch (_a.label) {
@@ -24093,7 +24080,7 @@ var getStaticProps$6 = function (context) { return __awaiter(void 0, void 0, voi
24093
24080
  var login = /*#__PURE__*/Object.freeze({
24094
24081
  __proto__: null,
24095
24082
  'default': Page$7,
24096
- getStaticProps: getStaticProps$6
24083
+ getStaticProps: getStaticProps$5
24097
24084
  });
24098
24085
 
24099
24086
  var Page$8 = function (_a) {
@@ -24102,7 +24089,7 @@ var Page$8 = function (_a) {
24102
24089
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
24103
24090
  return createElement(IkasPage, { page: page, propValues: propValues });
24104
24091
  };
24105
- var getStaticProps$7 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24092
+ var getStaticProps$6 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24106
24093
  var theme, provider;
24107
24094
  return __generator(this, function (_a) {
24108
24095
  switch (_a.label) {
@@ -24121,7 +24108,7 @@ var getStaticProps$7 = function (context) { return __awaiter(void 0, void 0, voi
24121
24108
  var register = /*#__PURE__*/Object.freeze({
24122
24109
  __proto__: null,
24123
24110
  'default': Page$8,
24124
- getStaticProps: getStaticProps$7
24111
+ getStaticProps: getStaticProps$6
24125
24112
  });
24126
24113
 
24127
24114
  var Page$9 = function (_a) {
@@ -24130,7 +24117,7 @@ var Page$9 = function (_a) {
24130
24117
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
24131
24118
  return createElement(IkasPage, { page: page, propValues: propValues });
24132
24119
  };
24133
- var getStaticProps$8 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24120
+ var getStaticProps$7 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24134
24121
  var theme, provider;
24135
24122
  return __generator(this, function (_a) {
24136
24123
  switch (_a.label) {
@@ -24149,7 +24136,7 @@ var getStaticProps$8 = function (context) { return __awaiter(void 0, void 0, voi
24149
24136
  var forgotPassword = /*#__PURE__*/Object.freeze({
24150
24137
  __proto__: null,
24151
24138
  'default': Page$9,
24152
- getStaticProps: getStaticProps$8
24139
+ getStaticProps: getStaticProps$7
24153
24140
  });
24154
24141
 
24155
24142
  var Page$a = function (_a) {
@@ -24158,7 +24145,7 @@ var Page$a = function (_a) {
24158
24145
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
24159
24146
  return createElement(IkasPage, { page: page, propValues: propValues });
24160
24147
  };
24161
- var getStaticProps$9 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24148
+ var getStaticProps$8 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24162
24149
  var theme, provider;
24163
24150
  return __generator(this, function (_a) {
24164
24151
  switch (_a.label) {
@@ -24177,14 +24164,42 @@ var getStaticProps$9 = function (context) { return __awaiter(void 0, void 0, voi
24177
24164
  var recoverPassword = /*#__PURE__*/Object.freeze({
24178
24165
  __proto__: null,
24179
24166
  'default': Page$a,
24167
+ getStaticProps: getStaticProps$8
24168
+ });
24169
+
24170
+ var Page$b = function (_a) {
24171
+ var page = _a.page, propValuesStr = _a.propValuesStr;
24172
+ var router = useRouter();
24173
+ var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router);
24174
+ return createElement(IkasPage, { page: page, propValues: propValues });
24175
+ };
24176
+ var getStaticProps$9 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24177
+ var theme, provider;
24178
+ return __generator(this, function (_a) {
24179
+ switch (_a.label) {
24180
+ case 0: return [4 /*yield*/, IkasThemeAPI.fetchTheme()];
24181
+ case 1:
24182
+ theme = _a.sent();
24183
+ provider = new IkasPageDataProvider(theme, context.params, IkasThemePageType.BASKET);
24184
+ return [4 /*yield*/, provider.getPageData()];
24185
+ case 2:
24186
+ _a.sent();
24187
+ return [2 /*return*/, __assign(__assign({}, provider.nextPageData), { revalidate: 60 })];
24188
+ }
24189
+ });
24190
+ }); };
24191
+
24192
+ var basket = /*#__PURE__*/Object.freeze({
24193
+ __proto__: null,
24194
+ 'default': Page$b,
24180
24195
  getStaticProps: getStaticProps$9
24181
24196
  });
24182
24197
 
24183
24198
  var IkasPageEditor$1 = dynamic(function () { return Promise.resolve().then(function () { return index; }).then(function (mod) { return mod.IkasPageEditor; }); }, { ssr: false });
24184
- var Page$b = function () {
24199
+ var Page$c = function () {
24185
24200
  return createElement(IkasPageEditor$1, null);
24186
24201
  };
24187
- var editor = observer(Page$b);
24202
+ var editor = observer(Page$c);
24188
24203
 
24189
24204
  var editor$1 = /*#__PURE__*/Object.freeze({
24190
24205
  __proto__: null,
@@ -24202,4 +24217,4 @@ var IkasBaseStore = /** @class */ (function () {
24202
24217
  return IkasBaseStore;
24203
24218
  }());
24204
24219
 
24205
- export { index$2 as AccountPage, addresses as AddressesPage, _id_$1 as CheckoutPage, _secondSlug_ as CustomPage, editor$1 as EditorPage, forgotPassword as ForgotPasswordPage, GTMAddToCart, GTMBeginCheckout, GTMBody, GTMCheckoutStep, GTMDisableHTML, GTMHead, GTMPageView, GTMProductView, GTMPurchase, GTMRemoveFromCart, IkasAmountTypeEnum$1 as IkasAmountTypeEnum, 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, IkasCountryAPI, IkasCustomer, IkasCustomerAPI, IkasCustomerAddress, IkasDistrictAPI, 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, IkasProductList, IkasProductListFilter, IkasProductListPropValue, IkasProductListSortType, IkasProductListType, IkasProductPrice, IkasProductType, IkasProductVariant, IkasProductVariantType, IkasShippingMethod, IkasShippingMethodEnum, IkasStateAPI, IkasStorefrontAPI, IkasStorefrontConfig, IkasTheme, IkasThemeAPI, IkasThemeComponent, IkasThemeComponentProp, IkasThemeComponentPropType, IkasThemePage, IkasThemePageComponent, IkasThemePageType, IkasTransactionStatusEnum, IkasTransactionTypeEnum, IkasVariantSelectionType, IkasVariantType, IkasVariantTypeAPI, IkasVariantValue, home as IndexPage, login as LoginPage, _id_$2 as OrderDetailPage, index$3 as OrdersPage, recoverPassword as RecoverPasswordPage, register as RegisterPage, index$1 as SlugPage, apollo, decodeBase64, formatMoney, pascalCase, stringToSlug, validatePhoneNumber };
24220
+ export { index$3 as AccountPage, addresses as AddressesPage, basket as BasketPage, _id_$1 as CheckoutPage, _slug_ as CustomPage, editor$1 as EditorPage, forgotPassword as ForgotPasswordPage, GTMAddToCart, GTMBeginCheckout, GTMBody, GTMCheckoutStep, GTMDisableHTML, GTMHead, GTMPageView, GTMProductView, GTMPurchase, GTMRemoveFromCart, IkasAmountTypeEnum$1 as IkasAmountTypeEnum, 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, IkasCountryAPI, IkasCustomer, IkasCustomerAPI, IkasCustomerAddress, IkasDistrictAPI, 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, IkasProductList, IkasProductListFilter, IkasProductListPropValue, IkasProductListSortType, IkasProductListType, IkasProductPrice, IkasProductType, IkasProductVariant, IkasProductVariantType, IkasShippingMethod, IkasShippingMethodEnum, IkasStateAPI, IkasStorefrontAPI, IkasStorefrontConfig, IkasTheme, IkasThemeAPI, IkasThemeComponent, IkasThemeComponentProp, IkasThemeComponentPropType, IkasThemePage, IkasThemePageComponent, IkasThemePageType, IkasTransactionStatusEnum, IkasTransactionTypeEnum, IkasVariantSelectionType, IkasVariantType, IkasVariantTypeAPI, IkasVariantValue, home as IndexPage, login as LoginPage, _id_$2 as OrderDetailPage, index$4 as OrdersPage, recoverPassword as RecoverPasswordPage, register as RegisterPage, index$2 as SlugPage, apollo, decodeBase64, formatMoney, pascalCase, stringToSlug, validatePhoneNumber };
package/build/index.js CHANGED
@@ -11840,10 +11840,8 @@ var IkasPageDataProvider = /** @class */ (function () {
11840
11840
  get: function () {
11841
11841
  var _this = this;
11842
11842
  if (this.pageType === exports.IkasThemePageType.CUSTOM) {
11843
- var secondSlug_1 = this.pageParams.secondSlug;
11844
- return this.theme.pages.find(function (page) {
11845
- return page.type === exports.IkasThemePageType.CUSTOM && page.slug === secondSlug_1;
11846
- });
11843
+ var slug_1 = this.pageParams.slug;
11844
+ return this.theme.pages.find(function (page) { return page.type === exports.IkasThemePageType.CUSTOM && page.slug === slug_1; });
11847
11845
  }
11848
11846
  return this.theme.pages.find(function (page) { return page.type === _this.pageType; });
11849
11847
  },
@@ -11901,10 +11899,10 @@ var IkasPageDataProvider = /** @class */ (function () {
11901
11899
  };
11902
11900
  IkasPageDataProvider.prototype.getPageSpecificData = function () {
11903
11901
  return __awaiter(this, void 0, void 0, function () {
11904
- var _a, slug, secondSlug, metaDataList, metaData, setPageMetaData, handleBrandPage, handleCategoryPage, handleProductPage, _b;
11902
+ var slug, metaDataList, metaData, setPageMetaData, handleBrandPage, handleCategoryPage, handleProductPage, _a;
11905
11903
  var _this = this;
11906
- return __generator(this, function (_c) {
11907
- switch (_c.label) {
11904
+ return __generator(this, function (_b) {
11905
+ switch (_b.label) {
11908
11906
  case 0:
11909
11907
  if (this.pageType &&
11910
11908
  [
@@ -11917,16 +11915,14 @@ var IkasPageDataProvider = /** @class */ (function () {
11917
11915
  exports.IkasThemePageType.REGISTER,
11918
11916
  exports.IkasThemePageType.FORGOT_PASSWORD,
11919
11917
  exports.IkasThemePageType.RECOVER_PASSWORD,
11918
+ exports.IkasThemePageType.CUSTOM,
11919
+ exports.IkasThemePageType.BASKET,
11920
11920
  ].includes(this.pageType))
11921
11921
  return [2 /*return*/];
11922
- _a = this.pageParams, slug = _a.slug, secondSlug = _a.secondSlug;
11923
- if (secondSlug) {
11924
- this.pageType = exports.IkasThemePageType.CUSTOM;
11925
- return [2 /*return*/];
11926
- }
11922
+ slug = this.pageParams.slug;
11927
11923
  return [4 /*yield*/, IkasHTMLMetaDataAPI.listHTMLMetaData(slug)];
11928
11924
  case 1:
11929
- metaDataList = _c.sent();
11925
+ metaDataList = _b.sent();
11930
11926
  if (!metaDataList || !metaDataList.length) {
11931
11927
  return [2 /*return*/];
11932
11928
  }
@@ -11994,19 +11990,19 @@ var IkasPageDataProvider = /** @class */ (function () {
11994
11990
  }
11995
11991
  });
11996
11992
  }); };
11997
- _b = metaData.targetType;
11998
- switch (_b) {
11993
+ _a = metaData.targetType;
11994
+ switch (_a) {
11999
11995
  case exports.IkasHTMLMetaDataTargetType.BRAND: return [3 /*break*/, 2];
12000
11996
  case exports.IkasHTMLMetaDataTargetType.CATEGORY: return [3 /*break*/, 4];
12001
11997
  case exports.IkasHTMLMetaDataTargetType.PRODUCT: return [3 /*break*/, 6];
12002
11998
  }
12003
11999
  return [3 /*break*/, 8];
12004
12000
  case 2: return [4 /*yield*/, handleBrandPage()];
12005
- case 3: return [2 /*return*/, _c.sent()];
12001
+ case 3: return [2 /*return*/, _b.sent()];
12006
12002
  case 4: return [4 /*yield*/, handleCategoryPage()];
12007
- case 5: return [2 /*return*/, _c.sent()];
12003
+ case 5: return [2 /*return*/, _b.sent()];
12008
12004
  case 6: return [4 /*yield*/, handleProductPage()];
12009
- case 7: return [2 /*return*/, _c.sent()];
12005
+ case 7: return [2 /*return*/, _b.sent()];
12010
12006
  case 8: return [3 /*break*/, 9];
12011
12007
  case 9: return [2 /*return*/];
12012
12008
  }
@@ -12178,24 +12174,35 @@ var IkasPageDataProvider = /** @class */ (function () {
12178
12174
  var product = productDetail.product;
12179
12175
  var selectedVariantValues = [];
12180
12176
  if (usePageData && product.variantTypes.length) {
12181
- product.variantTypes.forEach(function (pvt) {
12182
- var slug = pvt.variantType.slug;
12183
- var variantValueParam = queryParams[slug];
12184
- if (variantValueParam) {
12185
- var variantValueSlug_1 = variantValueParam;
12186
- if (Array.isArray(variantValueParam)) {
12187
- variantValueSlug_1 = variantValueParam[0];
12177
+ var vid_1 = queryParams.vid;
12178
+ var hasVid = false;
12179
+ if (vid_1 && typeof vid_1 === "string") {
12180
+ var variant = product.variants.find(function (v) { return v.id === vid_1; });
12181
+ if (variant) {
12182
+ selectedVariantValues = variant.variantValues;
12183
+ hasVid = true;
12184
+ }
12185
+ }
12186
+ if (!hasVid) {
12187
+ product.variantTypes.forEach(function (pvt) {
12188
+ var slug = pvt.variantType.slug;
12189
+ var variantValueParam = queryParams[slug];
12190
+ if (variantValueParam) {
12191
+ var variantValueSlug_1 = variantValueParam;
12192
+ if (Array.isArray(variantValueParam)) {
12193
+ variantValueSlug_1 = variantValueParam[0];
12194
+ }
12195
+ var variantValue = pvt.variantType.values.find(function (vv) { return vv.slug === variantValueSlug_1; });
12196
+ if (variantValue)
12197
+ selectedVariantValues.push(variantValue);
12198
+ else
12199
+ selectedVariantValues.push(pvt.variantType.values[0]);
12188
12200
  }
12189
- var variantValue = pvt.variantType.values.find(function (vv) { return vv.slug === variantValueSlug_1; });
12190
- if (variantValue)
12191
- selectedVariantValues.push(variantValue);
12192
- else
12201
+ else {
12193
12202
  selectedVariantValues.push(pvt.variantType.values[0]);
12194
- }
12195
- else {
12196
- selectedVariantValues.push(pvt.variantType.values[0]);
12197
- }
12198
- });
12203
+ }
12204
+ });
12205
+ }
12199
12206
  }
12200
12207
  else {
12201
12208
  selectedVariantValues = productDetail.selectedVariantValues || [];
@@ -13413,6 +13420,7 @@ var IkasThemePage = /** @class */ (function () {
13413
13420
  IkasThemePageType["REGISTER"] = "REGISTER";
13414
13421
  IkasThemePageType["FORGOT_PASSWORD"] = "FORGOT_PASSWORD";
13415
13422
  IkasThemePageType["RECOVER_PASSWORD"] = "RECOVER_PASSWORD";
13423
+ IkasThemePageType["BASKET"] = "BASKET";
13416
13424
  })(exports.IkasThemePageType || (exports.IkasThemePageType = {}));
13417
13425
 
13418
13426
  var IkasTheme = /** @class */ (function () {
@@ -14105,6 +14113,7 @@ var IkasProductDetail = /** @class */ (function () {
14105
14113
  var vt = _this.product.variantTypes.find(function (vt) { return vt.variantType.id === vv.variantTypeId; });
14106
14114
  queryParams[vt.variantType.slug] = vv.slug;
14107
14115
  });
14116
+ this.selectedVariantValues = selectedVariantValues;
14108
14117
  (_a = this.router) === null || _a === void 0 ? void 0 : _a.replace(location.pathname + "?" + queryString__default['default'].stringify(queryParams), undefined, { shallow: true });
14109
14118
  };
14110
14119
  return IkasProductDetail;
@@ -19337,7 +19346,7 @@ var IkasProductAPI = /** @class */ (function () {
19337
19346
  count = data.listProduct.count;
19338
19347
  brandIds = products
19339
19348
  .map(function (p) { return p.brandId; })
19340
- .filter(function (id) { return !id; });
19349
+ .filter(function (id) { return !!id; });
19341
19350
  categoryIds = flatten_1(products.map(function (p) { return p.categoryIds || []; }));
19342
19351
  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; })) || []; }));
19343
19352
  return [4 /*yield*/, IkasStockLocationAPI.listStockLocation()];
@@ -22138,7 +22147,7 @@ var CheckoutStepInfo = mobxReactLite.observer(function (_a) {
22138
22147
  React.createElement(FormItem, { type: FormItemType.SELECT, label: "Kaydedilen adresler", value: vm.selectedShippingAddressId, onChange: vm.onSelectedShippingAddressIdChange, options: vm.customerAddressOptions }))),
22139
22148
  React.createElement(AddressForm, { address: vm.checkout.shippingAddress, customer: vm.checkout.customer && vm.checkout.customer.id
22140
22149
  ? undefined
22141
- : vm.checkout.customer || undefined, isErrorsVisible: vm.isErrorsVisible, allowedCountryIds: vm.shippingCountryIds, validationResult: vm.checkout.shippingAddress.validationResult }),
22150
+ : vm.checkout.customer || undefined, isErrorsVisible: vm.isErrorsVisible, allowedCountryIds: vm.shippingCountryIds || undefined, validationResult: vm.checkout.shippingAddress.validationResult }),
22142
22151
  !!vm.customerStore.customer && vm.selectedShippingAddressId === "-1" && (React.createElement("div", { style: { marginTop: "12px" } },
22143
22152
  React.createElement(Checkbox, { value: vm.shouldSaveAddress, label: "Bir sonraki i\u015Flem i\u00E7in bu bilgileri kaydet", onChange: vm.setShouldSaveAddress }),
22144
22153
  vm.shouldSaveAddress && (React.createElement("div", { style: { marginTop: "8px" } },
@@ -23769,44 +23778,25 @@ var home = /*#__PURE__*/Object.freeze({
23769
23778
  });
23770
23779
 
23771
23780
  var Page$1 = function (_a) {
23772
- var page = _a.page, pageSpecificDataStr = _a.pageSpecificDataStr, propValuesStr = _a.propValuesStr;
23781
+ var page = _a.page, pageSpecificDataStr = _a.pageSpecificDataStr, propValuesStr = _a.propValuesStr, queryParams = _a.queryParams;
23773
23782
  var router$1 = router.useRouter();
23774
- var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
23783
+ var propValues = mobx.computed(function () {
23784
+ return IkasPageDataProvider.initPropValues(propValuesStr, router$1, typeof window !== "undefined"
23785
+ ? queryString.parse(window.location.search.replace("?", ""))
23786
+ : queryParams);
23787
+ });
23775
23788
  handleGTM(page, pageSpecificDataStr);
23776
- return React.createElement(IkasPage, { page: page, propValues: propValues });
23789
+ return React.createElement(IkasPage, { page: page, propValues: propValues.get() });
23777
23790
  };
23778
- var getStaticPaths = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23779
- var metaData, targetTypes, filteredMetaData;
23780
- return __generator(this, function (_a) {
23781
- switch (_a.label) {
23782
- case 0: return [4 /*yield*/, IkasHTMLMetaDataAPI.listHTMLMetaData()];
23783
- case 1:
23784
- metaData = _a.sent();
23785
- targetTypes = [
23786
- exports.IkasHTMLMetaDataTargetType.BRAND,
23787
- exports.IkasHTMLMetaDataTargetType.CATEGORY,
23788
- exports.IkasHTMLMetaDataTargetType.PRODUCT,
23789
- ];
23790
- filteredMetaData = metaData.filter(function (m) { return m.targetType && targetTypes.includes(m.targetType); });
23791
- return [2 /*return*/, {
23792
- paths: filteredMetaData.map(function (m) { return ({
23793
- params: {
23794
- slug: m.slug,
23795
- },
23796
- }); }),
23797
- fallback: "blocking",
23798
- }];
23799
- }
23800
- });
23801
- }); };
23802
- var getStaticProps$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23791
+ var index$1 = mobxReactLite.observer(Page$1);
23792
+ var getServerSideProps = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23803
23793
  var theme, provider;
23804
23794
  return __generator(this, function (_a) {
23805
23795
  switch (_a.label) {
23806
23796
  case 0: return [4 /*yield*/, IkasThemeAPI.fetchTheme()];
23807
23797
  case 1:
23808
23798
  theme = _a.sent();
23809
- provider = new IkasPageDataProvider(theme, context.params);
23799
+ provider = new IkasPageDataProvider(theme, context.params, undefined);
23810
23800
  return [4 /*yield*/, provider.getPageData()];
23811
23801
  case 2:
23812
23802
  _a.sent();
@@ -23816,8 +23806,7 @@ var getStaticProps$1 = function (context) { return __awaiter(void 0, void 0, voi
23816
23806
  }];
23817
23807
  }
23818
23808
  return [2 /*return*/, {
23819
- props: __assign(__assign({}, provider.nextPageData.props), { pageSpecificDataStr: JSON.stringify(provider.pageSpecificData || {}) }),
23820
- revalidate: 60,
23809
+ props: __assign(__assign({}, provider.nextPageData.props), { pageSpecificDataStr: JSON.stringify(provider.pageSpecificData || {}), queryParams: context.query }),
23821
23810
  }];
23822
23811
  }
23823
23812
  });
@@ -23838,11 +23827,10 @@ function handleGTM(page, pageSpecificDataStr) {
23838
23827
  }
23839
23828
  }
23840
23829
 
23841
- var index$1 = /*#__PURE__*/Object.freeze({
23830
+ var index$2 = /*#__PURE__*/Object.freeze({
23842
23831
  __proto__: null,
23843
- 'default': Page$1,
23844
- getStaticPaths: getStaticPaths,
23845
- getStaticProps: getStaticProps$1
23832
+ 'default': index$1,
23833
+ getServerSideProps: getServerSideProps
23846
23834
  });
23847
23835
 
23848
23836
  var Page$2 = function (_a) {
@@ -23851,7 +23839,7 @@ var Page$2 = function (_a) {
23851
23839
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
23852
23840
  return React.createElement(IkasPage, { page: page, propValues: propValues });
23853
23841
  };
23854
- var getStaticPaths$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23842
+ var getStaticPaths = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23855
23843
  var theme, customPages, customPagePaths;
23856
23844
  return __generator(this, function (_a) {
23857
23845
  switch (_a.label) {
@@ -23860,8 +23848,7 @@ var getStaticPaths$1 = function (context) { return __awaiter(void 0, void 0, voi
23860
23848
  theme = _a.sent();
23861
23849
  customPages = theme.pages.filter(function (p) { return p.type === exports.IkasThemePageType.CUSTOM; });
23862
23850
  customPagePaths = customPages.map(function (p) { return ({
23863
- slug: "pages",
23864
- secondSlug: p.slug,
23851
+ slug: p.slug,
23865
23852
  }); });
23866
23853
  return [2 /*return*/, {
23867
23854
  paths: customPagePaths.map(function (p) { return ({
@@ -23872,14 +23859,14 @@ var getStaticPaths$1 = function (context) { return __awaiter(void 0, void 0, voi
23872
23859
  }
23873
23860
  });
23874
23861
  }); };
23875
- var getStaticProps$2 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23862
+ var getStaticProps$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23876
23863
  var theme, provider;
23877
23864
  return __generator(this, function (_a) {
23878
23865
  switch (_a.label) {
23879
23866
  case 0: return [4 /*yield*/, IkasThemeAPI.fetchTheme()];
23880
23867
  case 1:
23881
23868
  theme = _a.sent();
23882
- provider = new IkasPageDataProvider(theme, context.params);
23869
+ provider = new IkasPageDataProvider(theme, context.params, exports.IkasThemePageType.CUSTOM);
23883
23870
  return [4 /*yield*/, provider.getPageData()];
23884
23871
  case 2:
23885
23872
  _a.sent();
@@ -23888,11 +23875,11 @@ var getStaticProps$2 = function (context) { return __awaiter(void 0, void 0, voi
23888
23875
  });
23889
23876
  }); };
23890
23877
 
23891
- var _secondSlug_ = /*#__PURE__*/Object.freeze({
23878
+ var _slug_ = /*#__PURE__*/Object.freeze({
23892
23879
  __proto__: null,
23893
23880
  'default': Page$2,
23894
- getStaticPaths: getStaticPaths$1,
23895
- getStaticProps: getStaticProps$2
23881
+ getStaticPaths: getStaticPaths,
23882
+ getStaticProps: getStaticProps$1
23896
23883
  });
23897
23884
 
23898
23885
  var CheckoutPage = function (_a) {
@@ -23902,7 +23889,7 @@ var CheckoutPage = function (_a) {
23902
23889
  return React.createElement(IkasCheckoutPage, { checkout: checkout, queryParams: queryParams });
23903
23890
  };
23904
23891
  var _id_ = mobxReactLite.observer(CheckoutPage);
23905
- var getServerSideProps = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23892
+ var getServerSideProps$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23906
23893
  var id, redirect, checkout;
23907
23894
  return __generator(this, function (_a) {
23908
23895
  switch (_a.label) {
@@ -23937,7 +23924,7 @@ var getServerSideProps = function (context) { return __awaiter(void 0, void 0, v
23937
23924
  var _id_$1 = /*#__PURE__*/Object.freeze({
23938
23925
  __proto__: null,
23939
23926
  'default': _id_,
23940
- getServerSideProps: getServerSideProps
23927
+ getServerSideProps: getServerSideProps$1
23941
23928
  });
23942
23929
 
23943
23930
  var Page$3 = function (_a) {
@@ -23946,7 +23933,7 @@ var Page$3 = function (_a) {
23946
23933
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
23947
23934
  return React.createElement(IkasPage, { page: page, propValues: propValues });
23948
23935
  };
23949
- var getStaticProps$3 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23936
+ var getStaticProps$2 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23950
23937
  var theme, provider;
23951
23938
  return __generator(this, function (_a) {
23952
23939
  switch (_a.label) {
@@ -23962,10 +23949,10 @@ var getStaticProps$3 = function (context) { return __awaiter(void 0, void 0, voi
23962
23949
  });
23963
23950
  }); };
23964
23951
 
23965
- var index$2 = /*#__PURE__*/Object.freeze({
23952
+ var index$3 = /*#__PURE__*/Object.freeze({
23966
23953
  __proto__: null,
23967
23954
  'default': Page$3,
23968
- getStaticProps: getStaticProps$3
23955
+ getStaticProps: getStaticProps$2
23969
23956
  });
23970
23957
 
23971
23958
  var Page$4 = function (_a) {
@@ -23974,7 +23961,7 @@ var Page$4 = function (_a) {
23974
23961
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
23975
23962
  return React.createElement(IkasPage, { page: page, propValues: propValues });
23976
23963
  };
23977
- var getStaticProps$4 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23964
+ var getStaticProps$3 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23978
23965
  var theme, provider;
23979
23966
  return __generator(this, function (_a) {
23980
23967
  switch (_a.label) {
@@ -23993,7 +23980,7 @@ var getStaticProps$4 = function (context) { return __awaiter(void 0, void 0, voi
23993
23980
  var addresses = /*#__PURE__*/Object.freeze({
23994
23981
  __proto__: null,
23995
23982
  'default': Page$4,
23996
- getStaticProps: getStaticProps$4
23983
+ getStaticProps: getStaticProps$3
23997
23984
  });
23998
23985
 
23999
23986
  var Page$5 = function (_a) {
@@ -24002,7 +23989,7 @@ var Page$5 = function (_a) {
24002
23989
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
24003
23990
  return React.createElement(IkasPage, { page: page, propValues: propValues });
24004
23991
  };
24005
- var getStaticProps$5 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
23992
+ var getStaticProps$4 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24006
23993
  var theme, provider;
24007
23994
  return __generator(this, function (_a) {
24008
23995
  switch (_a.label) {
@@ -24018,10 +24005,10 @@ var getStaticProps$5 = function (context) { return __awaiter(void 0, void 0, voi
24018
24005
  });
24019
24006
  }); };
24020
24007
 
24021
- var index$3 = /*#__PURE__*/Object.freeze({
24008
+ var index$4 = /*#__PURE__*/Object.freeze({
24022
24009
  __proto__: null,
24023
24010
  'default': Page$5,
24024
- getStaticProps: getStaticProps$5
24011
+ getStaticProps: getStaticProps$4
24025
24012
  });
24026
24013
 
24027
24014
  var Page$6 = function (_a) {
@@ -24030,7 +24017,7 @@ var Page$6 = function (_a) {
24030
24017
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
24031
24018
  return React.createElement(IkasPage, { page: page, propValues: propValues });
24032
24019
  };
24033
- var getServerSideProps$1 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24020
+ var getServerSideProps$2 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24034
24021
  var theme, provider;
24035
24022
  return __generator(this, function (_a) {
24036
24023
  switch (_a.label) {
@@ -24049,7 +24036,7 @@ var getServerSideProps$1 = function (context) { return __awaiter(void 0, void 0,
24049
24036
  var _id_$2 = /*#__PURE__*/Object.freeze({
24050
24037
  __proto__: null,
24051
24038
  'default': Page$6,
24052
- getServerSideProps: getServerSideProps$1
24039
+ getServerSideProps: getServerSideProps$2
24053
24040
  });
24054
24041
 
24055
24042
  var Page$7 = function (_a) {
@@ -24058,7 +24045,7 @@ var Page$7 = function (_a) {
24058
24045
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
24059
24046
  return React.createElement(IkasPage, { page: page, propValues: propValues });
24060
24047
  };
24061
- var getStaticProps$6 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24048
+ var getStaticProps$5 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24062
24049
  var theme, provider;
24063
24050
  return __generator(this, function (_a) {
24064
24051
  switch (_a.label) {
@@ -24077,7 +24064,7 @@ var getStaticProps$6 = function (context) { return __awaiter(void 0, void 0, voi
24077
24064
  var login = /*#__PURE__*/Object.freeze({
24078
24065
  __proto__: null,
24079
24066
  'default': Page$7,
24080
- getStaticProps: getStaticProps$6
24067
+ getStaticProps: getStaticProps$5
24081
24068
  });
24082
24069
 
24083
24070
  var Page$8 = function (_a) {
@@ -24086,7 +24073,7 @@ var Page$8 = function (_a) {
24086
24073
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
24087
24074
  return React.createElement(IkasPage, { page: page, propValues: propValues });
24088
24075
  };
24089
- var getStaticProps$7 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24076
+ var getStaticProps$6 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24090
24077
  var theme, provider;
24091
24078
  return __generator(this, function (_a) {
24092
24079
  switch (_a.label) {
@@ -24105,7 +24092,7 @@ var getStaticProps$7 = function (context) { return __awaiter(void 0, void 0, voi
24105
24092
  var register = /*#__PURE__*/Object.freeze({
24106
24093
  __proto__: null,
24107
24094
  'default': Page$8,
24108
- getStaticProps: getStaticProps$7
24095
+ getStaticProps: getStaticProps$6
24109
24096
  });
24110
24097
 
24111
24098
  var Page$9 = function (_a) {
@@ -24114,7 +24101,7 @@ var Page$9 = function (_a) {
24114
24101
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
24115
24102
  return React.createElement(IkasPage, { page: page, propValues: propValues });
24116
24103
  };
24117
- var getStaticProps$8 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24104
+ var getStaticProps$7 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24118
24105
  var theme, provider;
24119
24106
  return __generator(this, function (_a) {
24120
24107
  switch (_a.label) {
@@ -24133,7 +24120,7 @@ var getStaticProps$8 = function (context) { return __awaiter(void 0, void 0, voi
24133
24120
  var forgotPassword = /*#__PURE__*/Object.freeze({
24134
24121
  __proto__: null,
24135
24122
  'default': Page$9,
24136
- getStaticProps: getStaticProps$8
24123
+ getStaticProps: getStaticProps$7
24137
24124
  });
24138
24125
 
24139
24126
  var Page$a = function (_a) {
@@ -24142,7 +24129,7 @@ var Page$a = function (_a) {
24142
24129
  var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
24143
24130
  return React.createElement(IkasPage, { page: page, propValues: propValues });
24144
24131
  };
24145
- var getStaticProps$9 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24132
+ var getStaticProps$8 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24146
24133
  var theme, provider;
24147
24134
  return __generator(this, function (_a) {
24148
24135
  switch (_a.label) {
@@ -24161,14 +24148,42 @@ var getStaticProps$9 = function (context) { return __awaiter(void 0, void 0, voi
24161
24148
  var recoverPassword = /*#__PURE__*/Object.freeze({
24162
24149
  __proto__: null,
24163
24150
  'default': Page$a,
24151
+ getStaticProps: getStaticProps$8
24152
+ });
24153
+
24154
+ var Page$b = function (_a) {
24155
+ var page = _a.page, propValuesStr = _a.propValuesStr;
24156
+ var router$1 = router.useRouter();
24157
+ var propValues = IkasPageDataProvider.initPropValues(propValuesStr, router$1);
24158
+ return React.createElement(IkasPage, { page: page, propValues: propValues });
24159
+ };
24160
+ var getStaticProps$9 = function (context) { return __awaiter(void 0, void 0, void 0, function () {
24161
+ var theme, provider;
24162
+ return __generator(this, function (_a) {
24163
+ switch (_a.label) {
24164
+ case 0: return [4 /*yield*/, IkasThemeAPI.fetchTheme()];
24165
+ case 1:
24166
+ theme = _a.sent();
24167
+ provider = new IkasPageDataProvider(theme, context.params, exports.IkasThemePageType.BASKET);
24168
+ return [4 /*yield*/, provider.getPageData()];
24169
+ case 2:
24170
+ _a.sent();
24171
+ return [2 /*return*/, __assign(__assign({}, provider.nextPageData), { revalidate: 60 })];
24172
+ }
24173
+ });
24174
+ }); };
24175
+
24176
+ var basket = /*#__PURE__*/Object.freeze({
24177
+ __proto__: null,
24178
+ 'default': Page$b,
24164
24179
  getStaticProps: getStaticProps$9
24165
24180
  });
24166
24181
 
24167
24182
  var IkasPageEditor$1 = dynamic__default['default'](function () { return Promise.resolve().then(function () { return index; }).then(function (mod) { return mod.IkasPageEditor; }); }, { ssr: false });
24168
- var Page$b = function () {
24183
+ var Page$c = function () {
24169
24184
  return React.createElement(IkasPageEditor$1, null);
24170
24185
  };
24171
- var editor = mobxReactLite.observer(Page$b);
24186
+ var editor = mobxReactLite.observer(Page$c);
24172
24187
 
24173
24188
  var editor$1 = /*#__PURE__*/Object.freeze({
24174
24189
  __proto__: null,
@@ -24186,10 +24201,11 @@ var IkasBaseStore = /** @class */ (function () {
24186
24201
  return IkasBaseStore;
24187
24202
  }());
24188
24203
 
24189
- exports.AccountPage = index$2;
24204
+ exports.AccountPage = index$3;
24190
24205
  exports.AddressesPage = addresses;
24206
+ exports.BasketPage = basket;
24191
24207
  exports.CheckoutPage = _id_$1;
24192
- exports.CustomPage = _secondSlug_;
24208
+ exports.CustomPage = _slug_;
24193
24209
  exports.EditorPage = editor$1;
24194
24210
  exports.ForgotPasswordPage = forgotPassword;
24195
24211
  exports.GTMAddToCart = GTMAddToCart;
@@ -24266,10 +24282,10 @@ exports.IkasVariantValue = IkasVariantValue;
24266
24282
  exports.IndexPage = home;
24267
24283
  exports.LoginPage = login;
24268
24284
  exports.OrderDetailPage = _id_$2;
24269
- exports.OrdersPage = index$3;
24285
+ exports.OrdersPage = index$4;
24270
24286
  exports.RecoverPasswordPage = recoverPassword;
24271
24287
  exports.RegisterPage = register;
24272
- exports.SlugPage = index$1;
24288
+ exports.SlugPage = index$2;
24273
24289
  exports.apollo = apollo;
24274
24290
  exports.decodeBase64 = decodeBase64;
24275
24291
  exports.formatMoney = formatMoney;
@@ -22,5 +22,6 @@ export declare enum IkasThemePageType {
22
22
  LOGIN = "LOGIN",
23
23
  REGISTER = "REGISTER",
24
24
  FORGOT_PASSWORD = "FORGOT_PASSWORD",
25
- RECOVER_PASSWORD = "RECOVER_PASSWORD"
25
+ RECOVER_PASSWORD = "RECOVER_PASSWORD",
26
+ BASKET = "BASKET"
26
27
  }
@@ -1,12 +1,14 @@
1
+ /// <reference types="node" />
1
2
  import * as React from "react";
2
- import { GetStaticProps, GetStaticPaths } from "next";
3
+ import { GetServerSideProps } from "next";
3
4
  import { IkasThemePage } from "../../models/index";
5
+ import { ParsedUrlQuery } from "querystring";
4
6
  declare type Props = {
5
7
  propValuesStr: string;
6
8
  pageSpecificDataStr: string;
7
9
  page: IkasThemePage;
10
+ queryParams?: ParsedUrlQuery;
8
11
  };
9
- declare const Page: React.FC<Props>;
10
- export default Page;
11
- export declare const getStaticPaths: GetStaticPaths;
12
- export declare const getStaticProps: GetStaticProps;
12
+ declare const _default: React.FunctionComponent<Props>;
13
+ export default _default;
14
+ export declare const getServerSideProps: GetServerSideProps;
@@ -0,0 +1,10 @@
1
+ import * as React from "react";
2
+ import { GetStaticProps } from "next";
3
+ import { IkasThemePage } from "../models/index";
4
+ declare type Props = {
5
+ propValuesStr: string;
6
+ page: IkasThemePage;
7
+ };
8
+ declare const Page: React.FC<Props>;
9
+ export default Page;
10
+ export declare const getStaticProps: GetStaticProps;
@@ -1,6 +1,6 @@
1
1
  import * as IndexPage from "./home";
2
2
  import * as SlugPage from "./[slug]/index";
3
- import * as CustomPage from "./[slug]/[secondSlug]";
3
+ import * as CustomPage from "./pages/[slug]";
4
4
  import * as CheckoutPage from "./checkout/[id]";
5
5
  import * as AccountPage from "./account/index";
6
6
  import * as AddressesPage from "./account/addresses";
@@ -10,5 +10,6 @@ import * as LoginPage from "./account/login";
10
10
  import * as RegisterPage from "./account/register";
11
11
  import * as ForgotPasswordPage from "./account/forgot-password";
12
12
  import * as RecoverPasswordPage from "./account/recover-password";
13
+ import * as BasketPage from "./basket";
13
14
  import * as EditorPage from "./editor";
14
- export { IndexPage, SlugPage, CustomPage, CheckoutPage, AccountPage, AddressesPage, OrdersPage, OrderDetailPage, LoginPage, RegisterPage, ForgotPasswordPage, RecoverPasswordPage, EditorPage, };
15
+ export { IndexPage, SlugPage, CustomPage, CheckoutPage, AccountPage, AddressesPage, OrdersPage, OrderDetailPage, LoginPage, RegisterPage, ForgotPasswordPage, RecoverPasswordPage, BasketPage, EditorPage, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikas/storefront",
3
- "version": "0.0.17",
3
+ "version": "0.0.18",
4
4
  "main": "./build/index.js",
5
5
  "module": "./build/index.es.js",
6
6
  "author": "Umut Ozan Yıldırım",