@scayle/storefront-nuxt 7.77.2 → 7.78.0

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/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # @scayle/storefront-nuxt
2
2
 
3
+ ## 7.78.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Support shops with multiple paths
8
+
9
+ The `path` property in the shop config can now be defined as an array of strings. If this is the case, multiple path prefixes will point to the same shop. For example, with the config `{ path: ['en', 'en-US'], shopId: 1001 }` both `example.com/en` and `example.com/en-US` will use shop 1001. Because it is the same shop, `/en` and `/en-US` will have the same locale and share user sessions, baskets and wishlists. The first path in the array will be considered the default path and used for API calls.
10
+
11
+ ## 7.77.3
12
+
13
+ ### Patch Changes
14
+
15
+ - Updated dependencies
16
+ - @scayle/storefront-core@7.58.3
17
+
3
18
  ## 7.77.2
4
19
 
5
20
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- export { d as AdditionalShopConfig, A as AppKeys, B as BapiConfig, h as CheckoutEvent, C as CheckoutShopConfig, M as ModuleBaseOptions, i as ModulePublicRuntimeConfig, P as PublicShopConfig, R as RedisConfig, a as SessionConfig, e as ShopConfig, f as ShopConfigIndexed, c as StorageConfig, b as StorageEntity, S as StorageProvider, g as StorefrontConfig } from './shared/storefront-nuxt.257df9a6.mjs';
1
+ export { d as AdditionalShopConfig, A as AppKeys, B as BapiConfig, h as CheckoutEvent, C as CheckoutShopConfig, M as ModuleBaseOptions, i as ModulePublicRuntimeConfig, P as PublicShopConfig, R as RedisConfig, a as SessionConfig, e as ShopConfig, f as ShopConfigIndexed, c as StorageConfig, b as StorageEntity, S as StorageProvider, g as StorefrontConfig } from './shared/storefront-nuxt.b2288199.mjs';
2
2
  export { rpcCall } from './rpc.mjs';
3
3
  export * from '@scayle/storefront-core';
4
4
  export { LogLevel } from '@scayle/storefront-core';
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { d as AdditionalShopConfig, A as AppKeys, B as BapiConfig, h as CheckoutEvent, C as CheckoutShopConfig, M as ModuleBaseOptions, i as ModulePublicRuntimeConfig, P as PublicShopConfig, R as RedisConfig, a as SessionConfig, e as ShopConfig, f as ShopConfigIndexed, c as StorageConfig, b as StorageEntity, S as StorageProvider, g as StorefrontConfig } from './shared/storefront-nuxt.257df9a6.js';
1
+ export { d as AdditionalShopConfig, A as AppKeys, B as BapiConfig, h as CheckoutEvent, C as CheckoutShopConfig, M as ModuleBaseOptions, i as ModulePublicRuntimeConfig, P as PublicShopConfig, R as RedisConfig, a as SessionConfig, e as ShopConfig, f as ShopConfigIndexed, c as StorageConfig, b as StorageEntity, S as StorageProvider, g as StorefrontConfig } from './shared/storefront-nuxt.b2288199.js';
2
2
  export { rpcCall } from './rpc.js';
3
3
  export * from '@scayle/storefront-core';
4
4
  export { LogLevel } from '@scayle/storefront-core';
package/dist/module.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as _nuxt_schema from '@nuxt/schema';
2
- import { M as ModuleBaseOptions } from './shared/storefront-nuxt.257df9a6.mjs';
3
- export { d as AdditionalShopConfig, A as AppKeys, B as BapiConfig, h as CheckoutEvent, C as CheckoutShopConfig, i as ModulePublicRuntimeConfig, P as PublicShopConfig, R as RedisConfig, a as SessionConfig, e as ShopConfig, f as ShopConfigIndexed, c as StorageConfig, b as StorageEntity, S as StorageProvider, g as StorefrontConfig } from './shared/storefront-nuxt.257df9a6.mjs';
2
+ import { M as ModuleBaseOptions } from './shared/storefront-nuxt.b2288199.mjs';
3
+ export { d as AdditionalShopConfig, A as AppKeys, B as BapiConfig, h as CheckoutEvent, C as CheckoutShopConfig, i as ModulePublicRuntimeConfig, P as PublicShopConfig, R as RedisConfig, a as SessionConfig, e as ShopConfig, f as ShopConfigIndexed, c as StorageConfig, b as StorageEntity, S as StorageProvider, g as StorefrontConfig } from './shared/storefront-nuxt.b2288199.mjs';
4
4
  export { LogLevel } from '@scayle/storefront-core';
5
5
  import '@scayle/unstorage-compression-driver';
6
6
  import 'unstorage';
package/dist/module.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as _nuxt_schema from '@nuxt/schema';
2
- import { M as ModuleBaseOptions } from './shared/storefront-nuxt.257df9a6.js';
3
- export { d as AdditionalShopConfig, A as AppKeys, B as BapiConfig, h as CheckoutEvent, C as CheckoutShopConfig, i as ModulePublicRuntimeConfig, P as PublicShopConfig, R as RedisConfig, a as SessionConfig, e as ShopConfig, f as ShopConfigIndexed, c as StorageConfig, b as StorageEntity, S as StorageProvider, g as StorefrontConfig } from './shared/storefront-nuxt.257df9a6.js';
2
+ import { M as ModuleBaseOptions } from './shared/storefront-nuxt.b2288199.js';
3
+ export { d as AdditionalShopConfig, A as AppKeys, B as BapiConfig, h as CheckoutEvent, C as CheckoutShopConfig, i as ModulePublicRuntimeConfig, P as PublicShopConfig, R as RedisConfig, a as SessionConfig, e as ShopConfig, f as ShopConfigIndexed, c as StorageConfig, b as StorageEntity, S as StorageProvider, g as StorefrontConfig } from './shared/storefront-nuxt.b2288199.js';
4
4
  export { LogLevel } from '@scayle/storefront-core';
5
5
  import '@scayle/unstorage-compression-driver';
6
6
  import 'unstorage';
package/dist/module.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scayle/storefront-nuxt",
3
- "version": "7.77.1",
3
+ "version": "7.77.3",
4
4
  "configKey": "storefront",
5
5
  "compatibility": {
6
6
  "nuxt": "^3.9.0"
package/dist/module.mjs CHANGED
@@ -15,15 +15,16 @@ const convertShopsToList = (stores) => {
15
15
  return Object.values(stores);
16
16
  };
17
17
  function getApiBasePath(storefrontConfig, shop, baseUrl) {
18
+ const path = Array.isArray(shop.path) ? shop.path[0] : shop.path;
18
19
  const apiPath = shop.apiBasePath || storefrontConfig.apiBasePath || "/api";
19
20
  if (storefrontConfig.shopSelector === "path") {
20
- const pathElements = [shop.path, apiPath].filter(Boolean);
21
+ const pathElements = [path, apiPath].filter(Boolean);
21
22
  return joinURL(baseUrl, ...pathElements);
22
23
  } else if (storefrontConfig.shopSelector === "path_or_default") {
23
24
  if (shop.isDefault) {
24
25
  return joinURL(baseUrl, apiPath);
25
26
  }
26
- const pathElements = [shop.path, apiPath].filter(Boolean);
27
+ const pathElements = [path, apiPath].filter(Boolean);
27
28
  return joinURL(baseUrl, ...pathElements);
28
29
  }
29
30
  return joinURL(baseUrl, apiPath);
@@ -64,7 +65,7 @@ export default {
64
65
  }`;
65
66
  }
66
67
  const PACKAGE_NAME = "@scayle/storefront-nuxt";
67
- const PACKAGE_VERSION = "7.77.1";
68
+ const PACKAGE_VERSION = "7.77.3";
68
69
  const logger = createConsola({
69
70
  fancy: true,
70
71
  formatOptions: {
package/dist/rpc.d.mts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { RpcMethodName, RpcMethodParameters, RpcMethodReturnType, RpcContext } from '@scayle/storefront-core';
2
2
  import { NuxtApp } from 'nuxt/app';
3
- import { P as PublicShopConfig } from './shared/storefront-nuxt.257df9a6.mjs';
3
+ import { P as PublicShopConfig } from './shared/storefront-nuxt.b2288199.mjs';
4
4
  import '@nuxt/schema';
5
5
  import '@scayle/unstorage-compression-driver';
6
6
  import 'unstorage';
package/dist/rpc.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { RpcMethodName, RpcMethodParameters, RpcMethodReturnType, RpcContext } from '@scayle/storefront-core';
2
2
  import { NuxtApp } from 'nuxt/app';
3
- import { P as PublicShopConfig } from './shared/storefront-nuxt.257df9a6.js';
3
+ import { P as PublicShopConfig } from './shared/storefront-nuxt.b2288199.js';
4
4
  import '@nuxt/schema';
5
5
  import '@scayle/unstorage-compression-driver';
6
6
  import 'unstorage';
@@ -4,7 +4,7 @@ export declare function useIDP(params?: MaybeRefOrGetter<RpcMethodParameters<'ge
4
4
  [k: string]: string;
5
5
  }, import("nuxt/app").NuxtError<unknown> | null> & {
6
6
  fetching: import("vue").Ref<boolean>;
7
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
7
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
8
8
  } & {
9
9
  handleIDPLoginCallback: (params: string | {
10
10
  code: string;
@@ -15,7 +15,7 @@ export declare function useIDP(params?: MaybeRefOrGetter<RpcMethodParameters<'ge
15
15
  [k: string]: string;
16
16
  }, import("nuxt/app").NuxtError<unknown> | null> & {
17
17
  fetching: import("vue").Ref<boolean>;
18
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
18
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
19
19
  } & {
20
20
  handleIDPLoginCallback: (params: string | {
21
21
  code: string;
@@ -11,7 +11,7 @@ export declare function useUser(options?: ExtendedUseUserParams): {
11
11
  isLoggedIn: import("vue").ComputedRef<boolean>;
12
12
  customerType: import("vue").ComputedRef<"guest" | "new" | "existing">;
13
13
  fetching: import("vue").Ref<boolean>;
14
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
14
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
15
15
  forceRefresh: () => Promise<void>;
16
16
  updateUser: (payload: Partial<ShopUser>) => Promise<void>;
17
17
  updatePassword: (payload: UpdatePasswordParams) => Promise<void>;
@@ -22,7 +22,7 @@ export declare function useUser(options?: ExtendedUseUserParams): {
22
22
  isLoggedIn: import("vue").ComputedRef<boolean>;
23
23
  customerType: import("vue").ComputedRef<"guest" | "new" | "existing">;
24
24
  fetching: import("vue").Ref<boolean>;
25
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
25
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
26
26
  forceRefresh: () => Promise<void>;
27
27
  updateUser: (payload: Partial<ShopUser>) => Promise<void>;
28
28
  updatePassword: (payload: UpdatePasswordParams) => Promise<void>;
@@ -7,7 +7,7 @@ type UseBasketOptions = Partial<{
7
7
  }>;
8
8
  export declare function useBasket({ params, key, }?: UseBasketOptions): import("nuxt/dist/app/composables/asyncData")._AsyncData<BasketResponseData<import("@scayle/storefront-api").Product, import("@scayle/storefront-api").Variant>, import("nuxt/app").NuxtError<unknown> | null> & {
9
9
  fetching: import("vue").Ref<boolean>;
10
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
10
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
11
11
  } & {
12
12
  data: import("vue").Ref<BasketResponseData<import("@scayle/storefront-api").Product, import("@scayle/storefront-api").Variant>>;
13
13
  items: import("vue").ComputedRef<import("@scayle/storefront-api").BasketItem<import("@scayle/storefront-api").Product, import("@scayle/storefront-api").Variant>[]>;
@@ -17,7 +17,7 @@ export declare function useBasket({ params, key, }?: UseBasketOptions): import("
17
17
  shippingDates: import("vue").ComputedRef<(string | null)[] | undefined>;
18
18
  isEmpty: import("vue").ComputedRef<boolean>;
19
19
  fetching: import("vue").Ref<boolean>;
20
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
20
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
21
21
  count: import("vue").ComputedRef<number>;
22
22
  countWithoutSoldOutItems: import("vue").ComputedRef<number>;
23
23
  addItem: ({ variantId, promotionId, quantity, existingItemHandling, displayData, customData, itemGroup, }: AddOrUpdateItemType & {
@@ -44,7 +44,7 @@ export declare function useBasket({ params, key, }?: UseBasketOptions): import("
44
44
  hashAlgorithm: import("@scayle/storefront-core").HashAlgorithm;
45
45
  shopId: string;
46
46
  userId: string;
47
- log?: import("@scayle/storefront-core").Log | undefined;
47
+ log?: import("@scayle/storefront-core").Log;
48
48
  }) => Promise<string>;
49
49
  mergeBaskets: (args: {
50
50
  fromBasketKey: string;
@@ -65,7 +65,7 @@ export declare function useBasket({ params, key, }?: UseBasketOptions): import("
65
65
  status: import("vue").Ref<import("nuxt/app").AsyncDataRequestStatus>;
66
66
  } & Promise<import("nuxt/dist/app/composables/asyncData")._AsyncData<BasketResponseData<import("@scayle/storefront-api").Product, import("@scayle/storefront-api").Variant>, import("nuxt/app").NuxtError<unknown> | null> & {
67
67
  fetching: import("vue").Ref<boolean>;
68
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
68
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
69
69
  } & {
70
70
  data: import("vue").Ref<BasketResponseData<import("@scayle/storefront-api").Product, import("@scayle/storefront-api").Variant>>;
71
71
  items: import("vue").ComputedRef<import("@scayle/storefront-api").BasketItem<import("@scayle/storefront-api").Product, import("@scayle/storefront-api").Variant>[]>;
@@ -75,7 +75,7 @@ export declare function useBasket({ params, key, }?: UseBasketOptions): import("
75
75
  shippingDates: import("vue").ComputedRef<(string | null)[] | undefined>;
76
76
  isEmpty: import("vue").ComputedRef<boolean>;
77
77
  fetching: import("vue").Ref<boolean>;
78
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
78
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
79
79
  count: import("vue").ComputedRef<number>;
80
80
  countWithoutSoldOutItems: import("vue").ComputedRef<number>;
81
81
  addItem: ({ variantId, promotionId, quantity, existingItemHandling, displayData, customData, itemGroup, }: AddOrUpdateItemType & {
@@ -102,7 +102,7 @@ export declare function useBasket({ params, key, }?: UseBasketOptions): import("
102
102
  hashAlgorithm: import("@scayle/storefront-core").HashAlgorithm;
103
103
  shopId: string;
104
104
  userId: string;
105
- log?: import("@scayle/storefront-core").Log | undefined;
105
+ log?: import("@scayle/storefront-core").Log;
106
106
  }) => Promise<string>;
107
107
  mergeBaskets: (args: {
108
108
  fromBasketKey: string;
@@ -15,7 +15,7 @@ export declare function useCategories({ params, options, key: _key, }?: Options,
15
15
  activeNode: import("@scayle/storefront-api").Category;
16
16
  }, import("nuxt/app").NuxtError<unknown> | null> & {
17
17
  fetching: import("vue").Ref<boolean>;
18
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
18
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
19
19
  } & {
20
20
  getCategoryById: (id: number, includeHidden?: true) => Promise<import("@scayle/storefront-api").Category>;
21
21
  } & Promise<import("nuxt/dist/app/composables/asyncData")._AsyncData<{
@@ -26,7 +26,7 @@ export declare function useCategories({ params, options, key: _key, }?: Options,
26
26
  activeNode: import("@scayle/storefront-api").Category;
27
27
  }, import("nuxt/app").NuxtError<unknown> | null> & {
28
28
  fetching: import("vue").Ref<boolean>;
29
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
29
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
30
30
  } & {
31
31
  getCategoryById: (id: number, includeHidden?: true) => Promise<import("@scayle/storefront-api").Category>;
32
32
  }>;
@@ -1,4 +1,4 @@
1
- import type { FilterParams, ProductWith } from '@scayle/storefront-core';
1
+ import type { CacheOptions, FilterParams, ProductWith } from '@scayle/storefront-core';
2
2
  type FacetParams = Partial<{
3
3
  with: {
4
4
  product?: ProductWith;
@@ -49,13 +49,8 @@ export declare function useFacet({ key: optionsKey, params, }?: Options, _key?:
49
49
  categoriesStatus: import("vue").Ref<import("nuxt/app").AsyncDataRequestStatus>;
50
50
  fetchProducts: ({ path, page, perPage, where, sort, pricePromotionKey, cache, orFiltersOperator, }: FilterParams & {
51
51
  path: string;
52
- pricePromotionKey?: string | undefined;
53
- cache?: Partial<{
54
- ttl: number;
55
- cacheKey: string;
56
- cacheKeyPrefix: string;
57
- timeout: number;
58
- }> | undefined;
52
+ pricePromotionKey?: string;
53
+ cache?: CacheOptions;
59
54
  }) => Promise<true | undefined>;
60
55
  fetchPage: (pageToFetch: number) => Promise<void>;
61
56
  } & Promise<{
@@ -93,13 +88,8 @@ export declare function useFacet({ key: optionsKey, params, }?: Options, _key?:
93
88
  categoriesStatus: import("vue").Ref<import("nuxt/app").AsyncDataRequestStatus>;
94
89
  fetchProducts: ({ path, page, perPage, where, sort, pricePromotionKey, cache, orFiltersOperator, }: FilterParams & {
95
90
  path: string;
96
- pricePromotionKey?: string | undefined;
97
- cache?: Partial<{
98
- ttl: number;
99
- cacheKey: string;
100
- cacheKeyPrefix: string;
101
- timeout: number;
102
- }> | undefined;
91
+ pricePromotionKey?: string;
92
+ cache?: CacheOptions;
103
93
  }) => Promise<true | undefined>;
104
94
  fetchPage: (pageToFetch: number) => Promise<void>;
105
95
  }>;
@@ -13,151 +13,151 @@ export declare function useOrder<P = {
13
13
  [k: string]: unknown;
14
14
  }>({ params, options, key: _key }?: Options, key?: string): import("nuxt/dist/app/composables/asyncData")._AsyncData<Order, import("nuxt/app").NuxtError<unknown> | null> & {
15
15
  fetching: import("vue").Ref<boolean>;
16
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
16
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
17
17
  } & {
18
18
  data: Ref<Order & {
19
19
  items?: ({
20
- id?: number | undefined;
21
- availableQuantity?: number | undefined;
22
- currency?: string | undefined;
20
+ id?: import("@scayle/storefront-core").UniqueNumericIdentifierOfTheItem;
21
+ availableQuantity?: import("@scayle/storefront-core").AvailableQuantityInTheWarehouse;
22
+ currency?: import("@scayle/storefront-core").CharacterCurrencyCode1;
23
23
  customData?: {
24
24
  [k: string]: unknown;
25
- } | undefined;
26
- deliveryForecast?: import("@scayle/storefront-core").DeliveryForecastFromWarehouse | undefined;
27
- isManuallyReturnedByCci?: boolean | undefined;
28
- itemGroup?: {
25
+ };
26
+ deliveryForecast?: import("@scayle/storefront-core").DeliveryForecastFromWarehouse;
27
+ isManuallyReturnedByCci?: import("@scayle/storefront-core").TheReturnShipmentHasBeenTriggeredByCCI;
28
+ itemGroup?: null | {
29
29
  id: string;
30
30
  isMainItem: boolean;
31
31
  isRequired: boolean;
32
- } | null | undefined;
33
- key: string;
34
- lowestPriorPrice?: {
32
+ };
33
+ key: import("@scayle/storefront-core").UniqueIdentifierOfTheItem;
34
+ lowestPriorPrice?: null | {
35
35
  relativeDifferenceToPrice: number;
36
36
  withTax: number;
37
- } | null | undefined;
37
+ };
38
38
  merchant?: {
39
- [k: string]: unknown;
40
39
  id: number;
41
- } | undefined;
42
- packageId: number;
40
+ [k: string]: unknown;
41
+ };
42
+ packageId: import("@scayle/storefront-core").PackageReference;
43
43
  price: {
44
44
  appliedReductions?: {
45
45
  amount: {
46
- absoluteWithTax: number;
46
+ absoluteWithTax: import("@scayle/storefront-core").ThisFieldRepresentsTheDiscountAmountIncludingTheTaxes1;
47
47
  relative: number;
48
48
  };
49
- category: "voucher" | "sale" | "campaign";
50
- code?: string | undefined;
49
+ category: "sale" | "campaign" | "voucher";
50
+ code?: string;
51
51
  type: "relative" | "absolute";
52
- }[] | undefined;
53
- overrideWithoutTax?: number | undefined;
54
- overrideWithTax?: number | undefined;
52
+ }[];
53
+ overrideWithoutTax?: number;
54
+ overrideWithTax?: number;
55
55
  reference?: {
56
- size?: string | undefined;
57
- unit?: string | undefined;
58
- withTax?: number | undefined;
59
- } | undefined;
56
+ size?: string;
57
+ unit?: string;
58
+ withTax?: number;
59
+ };
60
60
  tax: {
61
61
  [k: string]: {
62
- amount: number;
63
- rate: number;
62
+ amount: import("@scayle/storefront-core").AbsoluteValueOfTheAppliedTax1;
63
+ rate: import("@scayle/storefront-core").RelativeValueOfTheAppliedTax;
64
64
  };
65
65
  };
66
- undiscountedWithOutTax?: number | undefined;
67
- undiscountedWithTax?: number | undefined;
68
- withoutTax: number;
69
- withTax: number;
66
+ undiscountedWithOutTax?: import("@scayle/storefront-core").UndiscountedItemPriceExcludingTaxes;
67
+ undiscountedWithTax?: import("@scayle/storefront-core").UndiscountedItemPriceIncludingTaxes;
68
+ withoutTax: import("@scayle/storefront-core").ItemPriceExcludingTaxes1;
69
+ withTax: import("@scayle/storefront-core").ItemPriceIncludingTaxes1;
70
70
  };
71
71
  product: {
72
72
  [k: string]: unknown;
73
73
  };
74
- reservationKey?: string | undefined;
75
- status: "available" | "unavailable" | "cancelled" | "delivered" | "returned";
74
+ reservationKey?: string;
75
+ status: "available" | "cancelled" | "delivered" | "returned" | "unavailable";
76
76
  variant: {
77
77
  [k: string]: unknown;
78
78
  };
79
- warehouseId?: import("@scayle/storefront-core").PickingWarehouseId | undefined;
80
- warehousePackageGroupId?: import("@scayle/storefront-core").WarehousePackageReference | undefined;
81
- createdAt: string;
82
- updatedAt: string;
79
+ warehouseId?: import("@scayle/storefront-core").PickingWarehouseId;
80
+ warehousePackageGroupId?: import("@scayle/storefront-core").WarehousePackageReference;
81
+ createdAt: import("@scayle/storefront-core").TimestampOfItemCreation;
82
+ updatedAt: import("@scayle/storefront-core").TimestampOfLastItemUpdate;
83
83
  } & {
84
84
  product: P;
85
85
  variant: V;
86
- })[] | undefined;
86
+ })[];
87
87
  }>;
88
88
  } & Promise<import("nuxt/dist/app/composables/asyncData")._AsyncData<Order, import("nuxt/app").NuxtError<unknown> | null> & {
89
89
  fetching: import("vue").Ref<boolean>;
90
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
90
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
91
91
  } & {
92
92
  data: Ref<Order & {
93
93
  items?: ({
94
- id?: number | undefined;
95
- availableQuantity?: number | undefined;
96
- currency?: string | undefined;
94
+ id?: import("@scayle/storefront-core").UniqueNumericIdentifierOfTheItem;
95
+ availableQuantity?: import("@scayle/storefront-core").AvailableQuantityInTheWarehouse;
96
+ currency?: import("@scayle/storefront-core").CharacterCurrencyCode1;
97
97
  customData?: {
98
98
  [k: string]: unknown;
99
- } | undefined;
100
- deliveryForecast?: import("@scayle/storefront-core").DeliveryForecastFromWarehouse | undefined;
101
- isManuallyReturnedByCci?: boolean | undefined;
102
- itemGroup?: {
99
+ };
100
+ deliveryForecast?: import("@scayle/storefront-core").DeliveryForecastFromWarehouse;
101
+ isManuallyReturnedByCci?: import("@scayle/storefront-core").TheReturnShipmentHasBeenTriggeredByCCI;
102
+ itemGroup?: null | {
103
103
  id: string;
104
104
  isMainItem: boolean;
105
105
  isRequired: boolean;
106
- } | null | undefined;
107
- key: string;
108
- lowestPriorPrice?: {
106
+ };
107
+ key: import("@scayle/storefront-core").UniqueIdentifierOfTheItem;
108
+ lowestPriorPrice?: null | {
109
109
  relativeDifferenceToPrice: number;
110
110
  withTax: number;
111
- } | null | undefined;
111
+ };
112
112
  merchant?: {
113
- [k: string]: unknown;
114
113
  id: number;
115
- } | undefined;
116
- packageId: number;
114
+ [k: string]: unknown;
115
+ };
116
+ packageId: import("@scayle/storefront-core").PackageReference;
117
117
  price: {
118
118
  appliedReductions?: {
119
119
  amount: {
120
- absoluteWithTax: number;
120
+ absoluteWithTax: import("@scayle/storefront-core").ThisFieldRepresentsTheDiscountAmountIncludingTheTaxes1;
121
121
  relative: number;
122
122
  };
123
- category: "voucher" | "sale" | "campaign";
124
- code?: string | undefined;
123
+ category: "sale" | "campaign" | "voucher";
124
+ code?: string;
125
125
  type: "relative" | "absolute";
126
- }[] | undefined;
127
- overrideWithoutTax?: number | undefined;
128
- overrideWithTax?: number | undefined;
126
+ }[];
127
+ overrideWithoutTax?: number;
128
+ overrideWithTax?: number;
129
129
  reference?: {
130
- size?: string | undefined;
131
- unit?: string | undefined;
132
- withTax?: number | undefined;
133
- } | undefined;
130
+ size?: string;
131
+ unit?: string;
132
+ withTax?: number;
133
+ };
134
134
  tax: {
135
135
  [k: string]: {
136
- amount: number;
137
- rate: number;
136
+ amount: import("@scayle/storefront-core").AbsoluteValueOfTheAppliedTax1;
137
+ rate: import("@scayle/storefront-core").RelativeValueOfTheAppliedTax;
138
138
  };
139
139
  };
140
- undiscountedWithOutTax?: number | undefined;
141
- undiscountedWithTax?: number | undefined;
142
- withoutTax: number;
143
- withTax: number;
140
+ undiscountedWithOutTax?: import("@scayle/storefront-core").UndiscountedItemPriceExcludingTaxes;
141
+ undiscountedWithTax?: import("@scayle/storefront-core").UndiscountedItemPriceIncludingTaxes;
142
+ withoutTax: import("@scayle/storefront-core").ItemPriceExcludingTaxes1;
143
+ withTax: import("@scayle/storefront-core").ItemPriceIncludingTaxes1;
144
144
  };
145
145
  product: {
146
146
  [k: string]: unknown;
147
147
  };
148
- reservationKey?: string | undefined;
149
- status: "available" | "unavailable" | "cancelled" | "delivered" | "returned";
148
+ reservationKey?: string;
149
+ status: "available" | "cancelled" | "delivered" | "returned" | "unavailable";
150
150
  variant: {
151
151
  [k: string]: unknown;
152
152
  };
153
- warehouseId?: import("@scayle/storefront-core").PickingWarehouseId | undefined;
154
- warehousePackageGroupId?: import("@scayle/storefront-core").WarehousePackageReference | undefined;
155
- createdAt: string;
156
- updatedAt: string;
153
+ warehouseId?: import("@scayle/storefront-core").PickingWarehouseId;
154
+ warehousePackageGroupId?: import("@scayle/storefront-core").WarehousePackageReference;
155
+ createdAt: import("@scayle/storefront-core").TimestampOfItemCreation;
156
+ updatedAt: import("@scayle/storefront-core").TimestampOfLastItemUpdate;
157
157
  } & {
158
158
  product: P;
159
159
  variant: V;
160
- })[] | undefined;
160
+ })[];
161
161
  }>;
162
162
  }>;
163
163
  export {};
@@ -13,151 +13,151 @@ export declare function useOrderConfirmation<P = {
13
13
  [k: string]: unknown;
14
14
  }>({ params, options, key: _key }?: Options, key?: string): import("nuxt/dist/app/composables/asyncData")._AsyncData<Order | undefined, import("nuxt/app").NuxtError<unknown> | null> & {
15
15
  fetching: import("vue").Ref<boolean>;
16
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
16
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
17
17
  } & {
18
18
  data: Ref<Order & {
19
19
  items?: ({
20
- id?: number | undefined;
21
- availableQuantity?: number | undefined;
22
- currency?: string | undefined;
20
+ id?: import("@scayle/storefront-core").UniqueNumericIdentifierOfTheItem;
21
+ availableQuantity?: import("@scayle/storefront-core").AvailableQuantityInTheWarehouse;
22
+ currency?: import("@scayle/storefront-core").CharacterCurrencyCode1;
23
23
  customData?: {
24
24
  [k: string]: unknown;
25
- } | undefined;
26
- deliveryForecast?: import("@scayle/storefront-core").DeliveryForecastFromWarehouse | undefined;
27
- isManuallyReturnedByCci?: boolean | undefined;
28
- itemGroup?: {
25
+ };
26
+ deliveryForecast?: import("@scayle/storefront-core").DeliveryForecastFromWarehouse;
27
+ isManuallyReturnedByCci?: import("@scayle/storefront-core").TheReturnShipmentHasBeenTriggeredByCCI;
28
+ itemGroup?: null | {
29
29
  id: string;
30
30
  isMainItem: boolean;
31
31
  isRequired: boolean;
32
- } | null | undefined;
33
- key: string;
34
- lowestPriorPrice?: {
32
+ };
33
+ key: import("@scayle/storefront-core").UniqueIdentifierOfTheItem;
34
+ lowestPriorPrice?: null | {
35
35
  relativeDifferenceToPrice: number;
36
36
  withTax: number;
37
- } | null | undefined;
37
+ };
38
38
  merchant?: {
39
- [k: string]: unknown;
40
39
  id: number;
41
- } | undefined;
42
- packageId: number;
40
+ [k: string]: unknown;
41
+ };
42
+ packageId: import("@scayle/storefront-core").PackageReference;
43
43
  price: {
44
44
  appliedReductions?: {
45
45
  amount: {
46
- absoluteWithTax: number;
46
+ absoluteWithTax: import("@scayle/storefront-core").ThisFieldRepresentsTheDiscountAmountIncludingTheTaxes1;
47
47
  relative: number;
48
48
  };
49
- category: "voucher" | "sale" | "campaign";
50
- code?: string | undefined;
49
+ category: "sale" | "campaign" | "voucher";
50
+ code?: string;
51
51
  type: "relative" | "absolute";
52
- }[] | undefined;
53
- overrideWithoutTax?: number | undefined;
54
- overrideWithTax?: number | undefined;
52
+ }[];
53
+ overrideWithoutTax?: number;
54
+ overrideWithTax?: number;
55
55
  reference?: {
56
- size?: string | undefined;
57
- unit?: string | undefined;
58
- withTax?: number | undefined;
59
- } | undefined;
56
+ size?: string;
57
+ unit?: string;
58
+ withTax?: number;
59
+ };
60
60
  tax: {
61
61
  [k: string]: {
62
- amount: number;
63
- rate: number;
62
+ amount: import("@scayle/storefront-core").AbsoluteValueOfTheAppliedTax1;
63
+ rate: import("@scayle/storefront-core").RelativeValueOfTheAppliedTax;
64
64
  };
65
65
  };
66
- undiscountedWithOutTax?: number | undefined;
67
- undiscountedWithTax?: number | undefined;
68
- withoutTax: number;
69
- withTax: number;
66
+ undiscountedWithOutTax?: import("@scayle/storefront-core").UndiscountedItemPriceExcludingTaxes;
67
+ undiscountedWithTax?: import("@scayle/storefront-core").UndiscountedItemPriceIncludingTaxes;
68
+ withoutTax: import("@scayle/storefront-core").ItemPriceExcludingTaxes1;
69
+ withTax: import("@scayle/storefront-core").ItemPriceIncludingTaxes1;
70
70
  };
71
71
  product: {
72
72
  [k: string]: unknown;
73
73
  };
74
- reservationKey?: string | undefined;
75
- status: "available" | "unavailable" | "cancelled" | "delivered" | "returned";
74
+ reservationKey?: string;
75
+ status: "available" | "cancelled" | "delivered" | "returned" | "unavailable";
76
76
  variant: {
77
77
  [k: string]: unknown;
78
78
  };
79
- warehouseId?: import("@scayle/storefront-core").PickingWarehouseId | undefined;
80
- warehousePackageGroupId?: import("@scayle/storefront-core").WarehousePackageReference | undefined;
81
- createdAt: string;
82
- updatedAt: string;
79
+ warehouseId?: import("@scayle/storefront-core").PickingWarehouseId;
80
+ warehousePackageGroupId?: import("@scayle/storefront-core").WarehousePackageReference;
81
+ createdAt: import("@scayle/storefront-core").TimestampOfItemCreation;
82
+ updatedAt: import("@scayle/storefront-core").TimestampOfLastItemUpdate;
83
83
  } & {
84
84
  product: P;
85
85
  variant: V;
86
- })[] | undefined;
86
+ })[];
87
87
  }>;
88
88
  } & Promise<import("nuxt/dist/app/composables/asyncData")._AsyncData<Order | undefined, import("nuxt/app").NuxtError<unknown> | null> & {
89
89
  fetching: import("vue").Ref<boolean>;
90
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
90
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
91
91
  } & {
92
92
  data: Ref<Order & {
93
93
  items?: ({
94
- id?: number | undefined;
95
- availableQuantity?: number | undefined;
96
- currency?: string | undefined;
94
+ id?: import("@scayle/storefront-core").UniqueNumericIdentifierOfTheItem;
95
+ availableQuantity?: import("@scayle/storefront-core").AvailableQuantityInTheWarehouse;
96
+ currency?: import("@scayle/storefront-core").CharacterCurrencyCode1;
97
97
  customData?: {
98
98
  [k: string]: unknown;
99
- } | undefined;
100
- deliveryForecast?: import("@scayle/storefront-core").DeliveryForecastFromWarehouse | undefined;
101
- isManuallyReturnedByCci?: boolean | undefined;
102
- itemGroup?: {
99
+ };
100
+ deliveryForecast?: import("@scayle/storefront-core").DeliveryForecastFromWarehouse;
101
+ isManuallyReturnedByCci?: import("@scayle/storefront-core").TheReturnShipmentHasBeenTriggeredByCCI;
102
+ itemGroup?: null | {
103
103
  id: string;
104
104
  isMainItem: boolean;
105
105
  isRequired: boolean;
106
- } | null | undefined;
107
- key: string;
108
- lowestPriorPrice?: {
106
+ };
107
+ key: import("@scayle/storefront-core").UniqueIdentifierOfTheItem;
108
+ lowestPriorPrice?: null | {
109
109
  relativeDifferenceToPrice: number;
110
110
  withTax: number;
111
- } | null | undefined;
111
+ };
112
112
  merchant?: {
113
- [k: string]: unknown;
114
113
  id: number;
115
- } | undefined;
116
- packageId: number;
114
+ [k: string]: unknown;
115
+ };
116
+ packageId: import("@scayle/storefront-core").PackageReference;
117
117
  price: {
118
118
  appliedReductions?: {
119
119
  amount: {
120
- absoluteWithTax: number;
120
+ absoluteWithTax: import("@scayle/storefront-core").ThisFieldRepresentsTheDiscountAmountIncludingTheTaxes1;
121
121
  relative: number;
122
122
  };
123
- category: "voucher" | "sale" | "campaign";
124
- code?: string | undefined;
123
+ category: "sale" | "campaign" | "voucher";
124
+ code?: string;
125
125
  type: "relative" | "absolute";
126
- }[] | undefined;
127
- overrideWithoutTax?: number | undefined;
128
- overrideWithTax?: number | undefined;
126
+ }[];
127
+ overrideWithoutTax?: number;
128
+ overrideWithTax?: number;
129
129
  reference?: {
130
- size?: string | undefined;
131
- unit?: string | undefined;
132
- withTax?: number | undefined;
133
- } | undefined;
130
+ size?: string;
131
+ unit?: string;
132
+ withTax?: number;
133
+ };
134
134
  tax: {
135
135
  [k: string]: {
136
- amount: number;
137
- rate: number;
136
+ amount: import("@scayle/storefront-core").AbsoluteValueOfTheAppliedTax1;
137
+ rate: import("@scayle/storefront-core").RelativeValueOfTheAppliedTax;
138
138
  };
139
139
  };
140
- undiscountedWithOutTax?: number | undefined;
141
- undiscountedWithTax?: number | undefined;
142
- withoutTax: number;
143
- withTax: number;
140
+ undiscountedWithOutTax?: import("@scayle/storefront-core").UndiscountedItemPriceExcludingTaxes;
141
+ undiscountedWithTax?: import("@scayle/storefront-core").UndiscountedItemPriceIncludingTaxes;
142
+ withoutTax: import("@scayle/storefront-core").ItemPriceExcludingTaxes1;
143
+ withTax: import("@scayle/storefront-core").ItemPriceIncludingTaxes1;
144
144
  };
145
145
  product: {
146
146
  [k: string]: unknown;
147
147
  };
148
- reservationKey?: string | undefined;
149
- status: "available" | "unavailable" | "cancelled" | "delivered" | "returned";
148
+ reservationKey?: string;
149
+ status: "available" | "cancelled" | "delivered" | "returned" | "unavailable";
150
150
  variant: {
151
151
  [k: string]: unknown;
152
152
  };
153
- warehouseId?: import("@scayle/storefront-core").PickingWarehouseId | undefined;
154
- warehousePackageGroupId?: import("@scayle/storefront-core").WarehousePackageReference | undefined;
155
- createdAt: string;
156
- updatedAt: string;
153
+ warehouseId?: import("@scayle/storefront-core").PickingWarehouseId;
154
+ warehousePackageGroupId?: import("@scayle/storefront-core").WarehousePackageReference;
155
+ createdAt: import("@scayle/storefront-core").TimestampOfItemCreation;
156
+ updatedAt: import("@scayle/storefront-core").TimestampOfLastItemUpdate;
157
157
  } & {
158
158
  product: P;
159
159
  variant: V;
160
- })[] | undefined;
160
+ })[];
161
161
  }>;
162
162
  }>;
163
163
  export {};
@@ -26,7 +26,7 @@ export declare function useWishlist({ params, key, }?: Options): {
26
26
  }) => Promise<void>;
27
27
  clear: () => Promise<void>;
28
28
  fetching: import("vue").Ref<boolean>;
29
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
29
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
30
30
  toggleItem: (item: {
31
31
  variantId?: number;
32
32
  productId?: number;
@@ -64,7 +64,7 @@ export declare function useWishlist({ params, key, }?: Options): {
64
64
  }) => Promise<void>;
65
65
  clear: () => Promise<void>;
66
66
  fetching: import("vue").Ref<boolean>;
67
- fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions | undefined) => Promise<void>;
67
+ fetch: (opts?: import("nuxt/dist/app/composables/asyncData").AsyncDataExecuteOptions) => Promise<void>;
68
68
  toggleItem: (item: {
69
69
  variantId?: number;
70
70
  productId?: number;
@@ -6,6 +6,7 @@ type BootstrapPath = {
6
6
  originalPath: string;
7
7
  };
8
8
  export declare function getBootstrapPath(event: H3Event): BootstrapPath;
9
+ export declare const getShopByPath: (event: H3Event, shops: ShopConfig[], appBasePath: string) => ShopConfig | undefined;
9
10
  export declare const convertShopsToList: (stores: ShopConfig[] | ShopConfigIndexed) => ShopConfig[];
10
11
  export declare function getApiBasePath(storefrontConfig: ModuleBaseOptions, shop: ShopConfig, baseUrl: string): string;
11
12
  export declare function getCurrentShopConfigForRequest(event: H3Event, config: Pick<ModuleBaseOptions, 'stores' | 'shopSelector'>, runtimeConfig: NitroRuntimeConfig): ShopConfig | undefined;
@@ -13,11 +13,12 @@ const getShopByDomain = (event, shops) => {
13
13
  const host = getRequestHost(event, { xForwardedHost: true });
14
14
  return shops.find((s) => s.domain === host);
15
15
  };
16
- const getShopByPath = (event, shops, appBasePath) => {
16
+ export const getShopByPath = (event, shops, appBasePath) => {
17
17
  const { path } = getBootstrapPath(event);
18
18
  const localeIndex = appBasePath !== "/" ? 2 : 1;
19
19
  const prefix = path.split("/")?.[localeIndex];
20
- return shops.find((shop) => prefix === shop.path);
20
+ const matchesShopPrefix = (shop) => Array.isArray(shop.path) ? shop.path.includes(prefix) : shop.path === prefix;
21
+ return shops.find(matchesShopPrefix);
21
22
  };
22
23
  const getShopByPathOrDefault = (event, shops, appBasePath) => {
23
24
  const defaultShop = shops.find((shop) => shop.isDefault);
@@ -31,15 +32,16 @@ export const convertShopsToList = (stores) => {
31
32
  return Object.values(stores);
32
33
  };
33
34
  export function getApiBasePath(storefrontConfig, shop, baseUrl) {
35
+ const path = Array.isArray(shop.path) ? shop.path[0] : shop.path;
34
36
  const apiPath = shop.apiBasePath || storefrontConfig.apiBasePath || "/api";
35
37
  if (storefrontConfig.shopSelector === "path") {
36
- const pathElements = [shop.path, apiPath].filter(Boolean);
38
+ const pathElements = [path, apiPath].filter(Boolean);
37
39
  return joinURL(baseUrl, ...pathElements);
38
40
  } else if (storefrontConfig.shopSelector === "path_or_default") {
39
41
  if (shop.isDefault) {
40
42
  return joinURL(baseUrl, apiPath);
41
43
  }
42
- const pathElements = [shop.path, apiPath].filter(Boolean);
44
+ const pathElements = [path, apiPath].filter(Boolean);
43
45
  return joinURL(baseUrl, ...pathElements);
44
46
  }
45
47
  return joinURL(baseUrl, apiPath);
@@ -70,7 +72,7 @@ export function getPublicShopData(data, currentShopId, apiBasePath, publicShopDa
70
72
  publicShopData.forEach((key) => additionalShopData[key] = data[key]);
71
73
  return {
72
74
  domain: data.domain,
73
- path: data.path,
75
+ path: Array.isArray(data.path) ? data.path[0] : data.path,
74
76
  locale: data.locale,
75
77
  shopId: data.shopId,
76
78
  currency: data.currency,
@@ -176,7 +176,7 @@ declare const ShopConfigSchema: z.ZodObject<{
176
176
  idpRedirectURL: string;
177
177
  }>>;
178
178
  shopId: z.ZodNumber;
179
- path: z.ZodOptional<z.ZodString>;
179
+ path: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
180
180
  apiBasePath: z.ZodOptional<z.ZodString>;
181
181
  domain: z.ZodOptional<z.ZodString>;
182
182
  locale: z.ZodString;
@@ -388,7 +388,7 @@ declare const ShopConfigSchema: z.ZodObject<{
388
388
  tls?: boolean | undefined;
389
389
  } | undefined;
390
390
  }>>;
391
- isDefault: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodEffects<z.ZodString, string, string>]>;
391
+ isDefault: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodEffects<z.ZodString, "", string>]>;
392
392
  /** @deprecated shop-specific storefront.redis config is being removed in favor of global nitro.storage config */
393
393
  redis: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
394
394
  port: z.ZodOptional<z.ZodNumber>;
@@ -448,7 +448,7 @@ declare const ShopConfigSchema: z.ZodObject<{
448
448
  idpKeys: string[];
449
449
  idpRedirectURL: string;
450
450
  } | undefined;
451
- path?: string | undefined;
451
+ path?: string | string[] | undefined;
452
452
  redis?: {
453
453
  port?: number | undefined;
454
454
  host?: string | undefined;
@@ -507,7 +507,7 @@ declare const ShopConfigSchema: z.ZodObject<{
507
507
  tls?: boolean | undefined;
508
508
  } | undefined;
509
509
  } | undefined;
510
- isDefault?: string | boolean | undefined;
510
+ isDefault?: boolean | "" | undefined;
511
511
  }, {
512
512
  locale: string;
513
513
  checkout: {
@@ -529,7 +529,7 @@ declare const ShopConfigSchema: z.ZodObject<{
529
529
  idpKeys: string[];
530
530
  idpRedirectURL: string;
531
531
  } | undefined;
532
- path?: string | undefined;
532
+ path?: string | string[] | undefined;
533
533
  redis?: {
534
534
  port?: number | undefined;
535
535
  host?: string | undefined;
@@ -1472,7 +1472,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
1472
1472
  idpRedirectURL: string;
1473
1473
  }>>;
1474
1474
  shopId: z.ZodNumber;
1475
- path: z.ZodOptional<z.ZodString>;
1475
+ path: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
1476
1476
  apiBasePath: z.ZodOptional<z.ZodString>;
1477
1477
  domain: z.ZodOptional<z.ZodString>;
1478
1478
  locale: z.ZodString;
@@ -1684,7 +1684,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
1684
1684
  tls?: boolean | undefined;
1685
1685
  } | undefined;
1686
1686
  }>>;
1687
- isDefault: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodEffects<z.ZodString, string, string>]>;
1687
+ isDefault: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodEffects<z.ZodString, "", string>]>;
1688
1688
  /** @deprecated shop-specific storefront.redis config is being removed in favor of global nitro.storage config */
1689
1689
  redis: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
1690
1690
  port: z.ZodOptional<z.ZodNumber>;
@@ -1744,7 +1744,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
1744
1744
  idpKeys: string[];
1745
1745
  idpRedirectURL: string;
1746
1746
  } | undefined;
1747
- path?: string | undefined;
1747
+ path?: string | string[] | undefined;
1748
1748
  redis?: {
1749
1749
  port?: number | undefined;
1750
1750
  host?: string | undefined;
@@ -1803,7 +1803,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
1803
1803
  tls?: boolean | undefined;
1804
1804
  } | undefined;
1805
1805
  } | undefined;
1806
- isDefault?: string | boolean | undefined;
1806
+ isDefault?: boolean | "" | undefined;
1807
1807
  }, {
1808
1808
  locale: string;
1809
1809
  checkout: {
@@ -1825,7 +1825,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
1825
1825
  idpKeys: string[];
1826
1826
  idpRedirectURL: string;
1827
1827
  } | undefined;
1828
- path?: string | undefined;
1828
+ path?: string | string[] | undefined;
1829
1829
  redis?: {
1830
1830
  port?: number | undefined;
1831
1831
  host?: string | undefined;
@@ -1919,7 +1919,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
1919
1919
  idpKeys: string[];
1920
1920
  idpRedirectURL: string;
1921
1921
  } | undefined;
1922
- path?: string | undefined;
1922
+ path?: string | string[] | undefined;
1923
1923
  redis?: {
1924
1924
  port?: number | undefined;
1925
1925
  host?: string | undefined;
@@ -1978,7 +1978,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
1978
1978
  tls?: boolean | undefined;
1979
1979
  } | undefined;
1980
1980
  } | undefined;
1981
- isDefault?: string | boolean | undefined;
1981
+ isDefault?: boolean | "" | undefined;
1982
1982
  }>;
1983
1983
  redirects?: {
1984
1984
  enabled: boolean;
@@ -2007,7 +2007,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
2007
2007
  idpKeys: string[];
2008
2008
  idpRedirectURL: string;
2009
2009
  } | undefined;
2010
- path?: string | undefined;
2010
+ path?: string | string[] | undefined;
2011
2011
  redis?: {
2012
2012
  port?: number | undefined;
2013
2013
  host?: string | undefined;
@@ -2210,7 +2210,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
2210
2210
  idpKeys: string[];
2211
2211
  idpRedirectURL: string;
2212
2212
  } | undefined;
2213
- path?: string | undefined;
2213
+ path?: string | string[] | undefined;
2214
2214
  redis?: {
2215
2215
  port?: number | undefined;
2216
2216
  host?: string | undefined;
@@ -2269,7 +2269,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
2269
2269
  tls?: boolean | undefined;
2270
2270
  } | undefined;
2271
2271
  } | undefined;
2272
- isDefault?: string | boolean | undefined;
2272
+ isDefault?: boolean | "" | undefined;
2273
2273
  }>;
2274
2274
  redirects?: {
2275
2275
  enabled: boolean;
@@ -2383,7 +2383,7 @@ export declare const RuntimeConfigSchema: z.ZodObject<{
2383
2383
  idpKeys: string[];
2384
2384
  idpRedirectURL: string;
2385
2385
  } | undefined;
2386
- path?: string | undefined;
2386
+ path?: string | string[] | undefined;
2387
2387
  redis?: {
2388
2388
  port?: number | undefined;
2389
2389
  host?: string | undefined;
@@ -89,7 +89,7 @@ const emptyString = z.string().refine((val) => val === "", {
89
89
  const ShopConfigSchema = z.object({
90
90
  idp: IdpSchema.optional(),
91
91
  shopId: z.number(),
92
- path: z.string().optional(),
92
+ path: z.string().or(z.array(z.string())).optional(),
93
93
  apiBasePath: z.string().optional(),
94
94
  domain: z.string().optional(),
95
95
  locale: z.string(),
@@ -180,7 +180,7 @@ declare const ShopConfigSchema: z.ZodObject<{
180
180
  idpRedirectURL: string;
181
181
  }>>;
182
182
  shopId: z.ZodNumber;
183
- path: z.ZodOptional<z.ZodString>;
183
+ path: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
184
184
  apiBasePath: z.ZodOptional<z.ZodString>;
185
185
  domain: z.ZodOptional<z.ZodString>;
186
186
  locale: z.ZodString;
@@ -392,7 +392,7 @@ declare const ShopConfigSchema: z.ZodObject<{
392
392
  ttl?: number | undefined;
393
393
  } | undefined;
394
394
  }>>;
395
- isDefault: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodEffects<z.ZodString, string, string>]>;
395
+ isDefault: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodEffects<z.ZodString, "", string>]>;
396
396
  /** @deprecated shop-specific storefront.redis config is being removed in favor of global nitro.storage config */
397
397
  redis: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
398
398
  port: z.ZodOptional<z.ZodNumber>;
@@ -445,7 +445,7 @@ declare const ShopConfigSchema: z.ZodObject<{
445
445
  token: string;
446
446
  cbdExpiration?: number | undefined;
447
447
  };
448
- path?: string | undefined;
448
+ path?: string | string[] | undefined;
449
449
  domain?: string | undefined;
450
450
  redis?: {
451
451
  port?: number | undefined;
@@ -511,7 +511,7 @@ declare const ShopConfigSchema: z.ZodObject<{
511
511
  ttl?: number | undefined;
512
512
  } | undefined;
513
513
  } | undefined;
514
- isDefault?: string | boolean | undefined;
514
+ isDefault?: boolean | "" | undefined;
515
515
  }, {
516
516
  shopId: number;
517
517
  locale: string;
@@ -526,7 +526,7 @@ declare const ShopConfigSchema: z.ZodObject<{
526
526
  token: string;
527
527
  cbdExpiration?: number | undefined;
528
528
  };
529
- path?: string | undefined;
529
+ path?: string | string[] | undefined;
530
530
  domain?: string | undefined;
531
531
  redis?: {
532
532
  port?: number | undefined;
@@ -1088,10 +1088,11 @@ interface AdditionalShopConfig {
1088
1088
  interface ShopConfig extends ShopConfigType, AdditionalShopConfig {
1089
1089
  }
1090
1090
  type ShopConfigIndexed = Record<string, ShopConfig>;
1091
- interface PublicShopConfig extends Pick<ShopConfig, 'shopId' | 'domain' | 'path' | 'locale' | 'currency' | 'currencyFractionDigits'> {
1091
+ interface PublicShopConfig extends Pick<ShopConfig, 'shopId' | 'domain' | 'locale' | 'currency' | 'currencyFractionDigits'> {
1092
1092
  checkout: Pick<CheckoutShopConfig, 'host'>;
1093
1093
  apiBasePath: string;
1094
1094
  idp?: IdpType;
1095
+ path?: string;
1095
1096
  }
1096
1097
  interface StorefrontConfig extends StorefrontConfigType {
1097
1098
  withParams?: WithParams;
@@ -180,7 +180,7 @@ declare const ShopConfigSchema: z.ZodObject<{
180
180
  idpRedirectURL: string;
181
181
  }>>;
182
182
  shopId: z.ZodNumber;
183
- path: z.ZodOptional<z.ZodString>;
183
+ path: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
184
184
  apiBasePath: z.ZodOptional<z.ZodString>;
185
185
  domain: z.ZodOptional<z.ZodString>;
186
186
  locale: z.ZodString;
@@ -392,7 +392,7 @@ declare const ShopConfigSchema: z.ZodObject<{
392
392
  ttl?: number | undefined;
393
393
  } | undefined;
394
394
  }>>;
395
- isDefault: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodEffects<z.ZodString, string, string>]>;
395
+ isDefault: z.ZodUnion<[z.ZodOptional<z.ZodBoolean>, z.ZodEffects<z.ZodString, "", string>]>;
396
396
  /** @deprecated shop-specific storefront.redis config is being removed in favor of global nitro.storage config */
397
397
  redis: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
398
398
  port: z.ZodOptional<z.ZodNumber>;
@@ -445,7 +445,7 @@ declare const ShopConfigSchema: z.ZodObject<{
445
445
  token: string;
446
446
  cbdExpiration?: number | undefined;
447
447
  };
448
- path?: string | undefined;
448
+ path?: string | string[] | undefined;
449
449
  domain?: string | undefined;
450
450
  redis?: {
451
451
  port?: number | undefined;
@@ -511,7 +511,7 @@ declare const ShopConfigSchema: z.ZodObject<{
511
511
  ttl?: number | undefined;
512
512
  } | undefined;
513
513
  } | undefined;
514
- isDefault?: string | boolean | undefined;
514
+ isDefault?: boolean | "" | undefined;
515
515
  }, {
516
516
  shopId: number;
517
517
  locale: string;
@@ -526,7 +526,7 @@ declare const ShopConfigSchema: z.ZodObject<{
526
526
  token: string;
527
527
  cbdExpiration?: number | undefined;
528
528
  };
529
- path?: string | undefined;
529
+ path?: string | string[] | undefined;
530
530
  domain?: string | undefined;
531
531
  redis?: {
532
532
  port?: number | undefined;
@@ -1088,10 +1088,11 @@ interface AdditionalShopConfig {
1088
1088
  interface ShopConfig extends ShopConfigType, AdditionalShopConfig {
1089
1089
  }
1090
1090
  type ShopConfigIndexed = Record<string, ShopConfig>;
1091
- interface PublicShopConfig extends Pick<ShopConfig, 'shopId' | 'domain' | 'path' | 'locale' | 'currency' | 'currencyFractionDigits'> {
1091
+ interface PublicShopConfig extends Pick<ShopConfig, 'shopId' | 'domain' | 'locale' | 'currency' | 'currencyFractionDigits'> {
1092
1092
  checkout: Pick<CheckoutShopConfig, 'host'>;
1093
1093
  apiBasePath: string;
1094
1094
  idp?: IdpType;
1095
+ path?: string;
1095
1096
  }
1096
1097
  interface StorefrontConfig extends StorefrontConfigType {
1097
1098
  withParams?: WithParams;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@scayle/storefront-nuxt",
3
3
  "type": "module",
4
- "version": "7.77.2",
4
+ "version": "7.78.0",
5
5
  "description": "Nuxt integration for the SCAYLE Commerce Engine and Storefront API",
6
6
  "author": "SCAYLE Commerce Engine",
7
7
  "license": "MIT",
@@ -60,7 +60,7 @@
60
60
  "@nuxt/kit": "3.11.2",
61
61
  "@opentelemetry/api": "1.9.0",
62
62
  "@scayle/h3-session": "0.4.0",
63
- "@scayle/storefront-core": "7.58.2",
63
+ "@scayle/storefront-core": "7.58.3",
64
64
  "@scayle/unstorage-compression-driver": "0.1.3",
65
65
  "@vueuse/core": "10.11.0",
66
66
  "consola": "3.2.3",
@@ -74,7 +74,7 @@
74
74
  "ufo": "1.5.3",
75
75
  "uncrypto": "0.1.3",
76
76
  "unstorage": "1.10.2",
77
- "vue-router": "4.3.3",
77
+ "vue-router": "4.4.0",
78
78
  "yn": "5.0.0",
79
79
  "zod": "3.23.8"
80
80
  },
@@ -85,7 +85,7 @@
85
85
  "@nuxt/test-utils": "3.13.1",
86
86
  "@scayle/eslint-config-storefront": "4.2.0",
87
87
  "@scayle/eslint-plugin-vue-composable": "0.2.0",
88
- "@types/node": "20.14.8",
88
+ "@types/node": "20.14.9",
89
89
  "dprint": "0.46.3",
90
90
  "eslint": "9.5.0",
91
91
  "eslint-formatter-gitlab": "5.1.0",