@propeller-commerce/propeller-v2-vue-ui 0.3.27 → 0.3.29

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.
Files changed (35) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/ProductVideos.vue_vue_type_script_setup_true_lang-BSXOpWBD.js.map +1 -1
  3. package/dist/ProductVideos.vue_vue_type_script_setup_true_lang-cfRT3L_k.cjs.map +1 -1
  4. package/dist/components/ActionCode.vue.d.ts +2 -2
  5. package/dist/components/AddToCart.vue.d.ts +4 -4
  6. package/dist/components/AddToFavorite.vue.d.ts +4 -4
  7. package/dist/components/AddressSelector.vue.d.ts +2 -2
  8. package/dist/components/CartItem.vue.d.ts +2 -2
  9. package/dist/components/CartOverview.vue.d.ts +2 -2
  10. package/dist/components/CartPaymethods.vue.d.ts +2 -2
  11. package/dist/components/CategoryDescription.vue.d.ts +2 -1
  12. package/dist/components/CategoryShortDescription.vue.d.ts +2 -1
  13. package/dist/components/ClusterInfo.vue.d.ts +2 -2
  14. package/dist/components/FavoriteListDetails.vue.d.ts +4 -4
  15. package/dist/components/FavoriteLists.vue.d.ts +4 -4
  16. package/dist/components/ForgotPassword.vue.d.ts +2 -2
  17. package/dist/components/GridTitle.vue.d.ts +2 -1
  18. package/dist/components/Menu.vue.d.ts +4 -2
  19. package/dist/components/OrderActions.vue.d.ts +4 -4
  20. package/dist/components/OrderList.vue.d.ts +4 -4
  21. package/dist/components/ProductBundles.vue.d.ts +4 -4
  22. package/dist/components/ProductCard.vue.d.ts +4 -4
  23. package/dist/components/ProductDownloads.vue.d.ts +2 -1
  24. package/dist/components/ProductInfo.vue.d.ts +3 -3
  25. package/dist/components/ProductVideos.vue.d.ts +2 -1
  26. package/dist/components/PurchaseAuthorizationConfigurator.vue.d.ts +6 -6
  27. package/dist/components/PurchaseAuthorizationRequests.vue.d.ts +6 -6
  28. package/dist/components/RegisterForm.vue.d.ts +2 -2
  29. package/dist/components/SearchBar.vue.d.ts +2 -2
  30. package/dist/index.cjs +8 -8
  31. package/dist/index.cjs.map +1 -1
  32. package/dist/index.js +9 -9
  33. package/dist/index.js.map +1 -1
  34. package/dist/styles.css +1 -1
  35. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  import { GraphQLClient, Cart } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface ActionCodeProps {
3
- /** GraphQL client for the Propeller SDK */
4
- graphqlClient: GraphQLClient;
3
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
5
  /** The shopping cart used to populate the cart summary data */
6
6
  cart: Cart;
7
7
  /** Action code block title */
@@ -1,10 +1,10 @@
1
1
  import { Component } from 'vue';
2
2
  import { CartChildItemInput, GraphQLClient, Product, Cart, Contact, Customer, TransformationsInput, MediaImageProductSearchInput, CartMainItem, Cluster } from '@propeller-commerce/propeller-sdk-v2';
3
3
  export interface AddToCartProps {
4
- /** GraphQL client for the Propeller SDK */
5
- graphqlClient: GraphQLClient;
6
- /** The authenticated user (Contact or Customer) */
7
- user: Contact | Customer | null;
4
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
5
+ graphqlClient?: GraphQLClient;
6
+ /** The authenticated user (Contact or Customer). Resolved from PropellerProvider when omitted. */
7
+ user?: Contact | Customer | null;
8
8
  /** The product to be added to cart */
9
9
  product: Product;
10
10
  /** Currency symbol to display. Defaults to '€'. */
@@ -1,9 +1,9 @@
1
1
  import { GraphQLClient, Contact, Customer } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface AddToFavoriteProps {
3
- /** The initialized GraphQL Client instance */
4
- graphqlClient: GraphQLClient;
5
- /** The authenticated user */
6
- user: Contact | Customer | null;
3
+ /** The initialized GraphQL Client instance. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
+ /** The authenticated user. Resolved from PropellerProvider when omitted. */
6
+ user?: Contact | Customer | null;
7
7
  /** Product ID to add/remove from favorites (for products) */
8
8
  productId?: number;
9
9
  /** Cluster ID to add/remove from favorites (for clusters) */
@@ -1,8 +1,8 @@
1
1
  import { Component } from 'vue';
2
2
  import { Address, Contact, Customer } from '@propeller-commerce/propeller-sdk-v2';
3
3
  export interface AddressSelectorProps {
4
- /** Authenticated user — addresses are derived from their profile. */
5
- user: Contact | Customer | null;
4
+ /** Authenticated user — addresses are derived from their profile. Resolved from PropellerProvider when omitted. */
5
+ user?: Contact | Customer | null;
6
6
  /**
7
7
  * Active company ID (for Contact users).
8
8
  * Pass the value from the company switcher so the correct company's addresses are listed.
@@ -1,8 +1,8 @@
1
1
  import { Component } from 'vue';
2
2
  import { BundleItem, Cart, CartBaseItem, CartMainItem, Cluster, Contact, Crossupsell, Customer, GraphQLClient, MediaImageProductSearchInput, Product, ProductInventory, TransformationsInput } from '@propeller-commerce/propeller-sdk-v2';
3
3
  export interface CartItemProps {
4
- /** GraphQL client for the Propeller SDK */
5
- graphqlClient: GraphQLClient;
4
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
5
+ graphqlClient?: GraphQLClient;
6
6
  /** The shopping cart unique identifier */
7
7
  cartId: string;
8
8
  /** Tax zone for price calculations */
@@ -1,7 +1,7 @@
1
1
  import { Cart, GraphQLClient } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface CartOverviewProps {
3
- /** GraphQL client for the Propeller SDK */
4
- graphqlClient: GraphQLClient;
3
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
5
  /** Shopping cart object from which the cart overview will be displayed */
6
6
  cart: Cart;
7
7
  /** The CSS class for the cart overview container */
@@ -4,8 +4,8 @@ export interface CartPaymethodsProps {
4
4
  cart: Cart;
5
5
  /** Currency symbol to display. Defaults to '€'. */
6
6
  currency?: string;
7
- /** Authenticated user — used for cart creation / lookup. */
8
- user: Contact | Customer | null;
7
+ /** Authenticated user — used for cart creation / lookup. Resolved from PropellerProvider when omitted. */
8
+ user?: Contact | Customer | null;
9
9
  /** The CSS class for the payment methods container */
10
10
  paymentsContainerClass?: string;
11
11
  /** Display the on account payment method for anonymous users */
@@ -3,8 +3,9 @@ export interface CategoryDescriptionProps {
3
3
  /**
4
4
  * Language code used to resolve the correct localised description
5
5
  * from `category.description`.
6
+ * Resolved from PropellerProvider when omitted.
6
7
  */
7
- language: string;
8
+ language?: string;
8
9
  /**
9
10
  * Propeller Category object.
10
11
  * The component reads `category.description` (an array of LocalizedString)
@@ -3,8 +3,9 @@ export interface CategoryShortDescriptionProps {
3
3
  /**
4
4
  * Language code used to resolve the correct localised short description
5
5
  * from `category.shortDescription`.
6
+ * Resolved from PropellerProvider when omitted.
6
7
  */
7
- language: string;
8
+ language?: string;
8
9
  /**
9
10
  * Propeller Category object.
10
11
  * The component reads `category.shortDescription` (an array of LocalizedString)
@@ -1,7 +1,7 @@
1
1
  import { GraphQLClient, Cluster, Contact, Customer } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface ClusterInfoProps {
3
- /** The authenticated user (Contact or Customer) */
4
- user: Contact | Customer | null;
3
+ /** The authenticated user (Contact or Customer). Resolved from PropellerProvider when omitted. */
4
+ user?: Contact | Customer | null;
5
5
  /**
6
6
  * Pre-fetched cluster object to display.
7
7
  * When provided the component skips internal fetching.
@@ -1,10 +1,10 @@
1
1
  import { Component } from 'vue';
2
2
  import { Product, Cluster, FavoriteList, GraphQLClient, Contact, Customer, Cart, CartMainItem, CartChildItemInput } from '@propeller-commerce/propeller-sdk-v2';
3
3
  export interface FavoriteListDetailsProps {
4
- /** GraphQL client for the Propeller SDK */
5
- graphqlClient: GraphQLClient;
6
- /** The logged in user for which the favorite list is going to be displayed */
7
- user: Contact | Customer;
4
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
5
+ graphqlClient?: GraphQLClient;
6
+ /** The logged in user for which the favorite list is going to be displayed. Resolved from PropellerProvider when omitted. */
7
+ user?: Contact | Customer;
8
8
  /** The favorite list ID to display */
9
9
  favoriteListId: string;
10
10
  /** Action method for deleting a single favorite list item. If not provided, delete button is hidden */
@@ -4,10 +4,10 @@ export interface FavoriteListFormData {
4
4
  isDefault: boolean;
5
5
  }
6
6
  export interface FavoriteListsProps {
7
- /** The authenticated user (Contact or Customer) */
8
- user: Contact | Customer | null;
9
- /** The initialized GraphQL Client instance */
10
- graphqlClient: GraphQLClient;
7
+ /** The authenticated user (Contact or Customer). Resolved from PropellerProvider when omitted. */
8
+ user?: Contact | Customer | null;
9
+ /** The initialized GraphQL Client instance. Resolved from PropellerProvider when omitted. */
10
+ graphqlClient?: GraphQLClient;
11
11
  /** Callback when a list is clicked (navigate to detail) */
12
12
  onListClick?: (listId: string | number) => void;
13
13
  /** Limit the number of lists shown (e.g. 3 = last 3 modified). undefined = show all */
@@ -1,7 +1,7 @@
1
1
  import { GraphQLClient } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface ForgotPasswordProps {
3
- /** GraphQL client for the Propeller SDK */
4
- graphqlClient: GraphQLClient;
3
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
5
  /** Title of the forgot password form
6
6
  * @default "Forgot password?"
7
7
  */
@@ -7,8 +7,9 @@ export interface GridTitleProps {
7
7
  /**
8
8
  * Language code for the content.
9
9
  * Defaults to 'NL'.
10
+ * Resolved from PropellerProvider when omitted.
10
11
  */
11
- language: string;
12
+ language?: string;
12
13
  /**
13
14
  * Override the heading tag level.
14
15
  * Defaults to 'h1'. Use 'h2' when the grid is embedded inside
@@ -4,8 +4,9 @@ export interface MenuProps {
4
4
  /**
5
5
  * Initialised Propeller SDK GraphQL client.
6
6
  * Used internally to fetch the category hierarchy.
7
+ * Resolved from PropellerProvider when omitted.
7
8
  */
8
- graphqlClient: GraphQLClient;
9
+ graphqlClient?: GraphQLClient;
9
10
  /**
10
11
  * Base category ID for fetching all categories.
11
12
  * This is the root of the menu tree.
@@ -13,8 +14,9 @@ export interface MenuProps {
13
14
  categoryId: number;
14
15
  /**
15
16
  * Language code for fetching localised category names and slugs.
17
+ * Resolved from PropellerProvider when omitted.
16
18
  */
17
- language: string;
19
+ language?: string;
18
20
  /**
19
21
  * Maximum nesting depth of the menu hierarchy.
20
22
  * Defaults to 3.
@@ -1,11 +1,11 @@
1
1
  import { GraphQLClient, Order, Cart, Contact, Customer } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface OrderActionsProps {
3
- /** GraphQL client for the Propeller SDK */
4
- graphqlClient: GraphQLClient;
3
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
5
  /** The order to act upon */
6
6
  order: Order;
7
- /** The authenticated user */
8
- user: Contact | Customer | null;
7
+ /** The authenticated user. Resolved from PropellerProvider when omitted. */
8
+ user?: Contact | Customer | null;
9
9
  /** Cart ID — if provided, re-order adds items to this cart */
10
10
  cartId?: string;
11
11
  /** Active company ID from the company switcher */
@@ -1,11 +1,11 @@
1
1
  import { Contact, Customer, GraphQLClient } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface OrderListProps {
3
- /** The authenticated user (Contact or Customer) */
4
- user: Contact | Customer | null;
3
+ /** The authenticated user (Contact or Customer). Resolved from PropellerProvider when omitted. */
4
+ user?: Contact | Customer | null;
5
5
  /** Currency symbol to display. Defaults to '€'. */
6
6
  currency?: string;
7
- /** The initialized GraphQL Client instance */
8
- graphqlClient: GraphQLClient;
7
+ /** The initialized GraphQL Client instance. Resolved from PropellerProvider when omitted. */
8
+ graphqlClient?: GraphQLClient;
9
9
  /** Callback when an order is clicked */
10
10
  onOrderClick: (orderId: number) => void;
11
11
  /** Columns to display. Defaults to ['id', 'date', 'status', 'total', 'action'] */
@@ -1,13 +1,13 @@
1
1
  import { Bundle, Cart, Contact, Customer, GraphQLClient } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface ProductBundlesProps {
3
- /** GraphQL client instance used to fetch bundle data. */
4
- graphqlClient: GraphQLClient;
3
+ /** GraphQL client instance used to fetch bundle data. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
5
  /** Currency symbol to display. Defaults to '€'. */
6
6
  currency?: string;
7
7
  /** ID of the product whose bundles should be fetched. */
8
8
  productId: number;
9
- /** Language code used for content (e.g. 'NL', 'EN'). */
10
- language: string;
9
+ /** Language code used for content (e.g. 'NL', 'EN'). Resolved from PropellerProvider when omitted. */
10
+ language?: string;
11
11
  /** Tax zone code used for pricing (e.g. 'NL'). */
12
12
  taxZone: string;
13
13
  /**
@@ -93,10 +93,10 @@ export interface ProductCardProps {
93
93
  * Defaults to 'page/id/slug' when omitted.
94
94
  */
95
95
  urlPattern?: string;
96
- /** Initialised Propeller SDK GraphQL client (required by embedded AddToCart). */
97
- graphqlClient: GraphQLClient;
98
- /** Authenticated user — used for cart creation / lookup. */
99
- user: Contact | Customer | null;
96
+ /** Initialised Propeller SDK GraphQL client (required by embedded AddToCart). Resolved from PropellerProvider when omitted. */
97
+ graphqlClient?: GraphQLClient;
98
+ /** Authenticated user — used for cart creation / lookup. Resolved from PropellerProvider when omitted. */
99
+ user?: Contact | Customer | null;
100
100
  /** ID of an existing cart to add items to. */
101
101
  cartId?: string;
102
102
  /** Config object providing imageSearchFiltersGrid and imageVariantFiltersSmall. */
@@ -8,8 +8,9 @@ export interface ProductDownloadsProps {
8
8
  downloads?: PaginatedMediaDocumentResponse;
9
9
  /**
10
10
  * Language code used to resolve the correct localised document URL and label.
11
+ * Resolved from PropellerProvider when omitted.
11
12
  */
12
- language: string;
13
+ language?: string;
13
14
  /**
14
15
  * Override any UI string.
15
16
  * Available keys: title, download, empty
@@ -1,8 +1,8 @@
1
1
  import { Component } from 'vue';
2
2
  import { GraphQLClient, Product, Contact, Customer } from '@propeller-commerce/propeller-sdk-v2';
3
3
  export interface ProductInfoProps {
4
- /** The authenticated user (Contact or Customer) */
5
- user: Contact | Customer | null;
4
+ /** The authenticated user (Contact or Customer). Resolved from PropellerProvider when omitted. */
5
+ user?: Contact | Customer | null;
6
6
  /** Active company ID from the company switcher.
7
7
  * Overrides default company for price calculation.
8
8
  * Triggers a re-fetch when changed. */
@@ -132,7 +132,7 @@ declare function __VLS_template(): {
132
132
  }): any;
133
133
  favorite?(_: {
134
134
  product: Product;
135
- user: Contact | Customer | null;
135
+ user: Contact | Customer | null | undefined;
136
136
  }): any;
137
137
  price?(_: {
138
138
  product: Product;
@@ -8,8 +8,9 @@ export interface ProductVideosProps {
8
8
  videos?: PaginatedMediaVideoResponse;
9
9
  /**
10
10
  * Language code used to resolve the correct localised video URI.
11
+ * Resolved from PropellerProvider when omitted.
11
12
  */
12
- language: string;
13
+ language?: string;
13
14
  /**
14
15
  * Override any UI string.
15
16
  * Available keys: title, empty
@@ -1,11 +1,11 @@
1
1
  import { Contact, Customer, GraphQLClient, PurchaseAuthorizationConfig, PurchaseAuthorizationConfigCreateInput, RegisterContactInput } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface PurchaseAuthorizationConfiguratorProps {
3
- /** GraphQL client for the Propeller SDK */
4
- graphqlClient: GraphQLClient;
5
- /** The logged-in user */
6
- user: Contact | Customer;
7
- /** The companyId of the current selected company */
8
- companyId: number;
3
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
+ /** The logged-in user. Resolved from PropellerProvider when omitted. */
6
+ user?: Contact | Customer;
7
+ /** The companyId of the current selected company. Resolved from PropellerProvider when omitted. */
8
+ companyId?: number;
9
9
  /**
10
10
  * Adds a button "Add contact" above the contacts list and enables registering contacts
11
11
  * @default true
@@ -1,13 +1,13 @@
1
1
  import { Contact, Customer, GraphQLClient, Cart } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface PurchaseAuthorizationRequestsProps {
3
- /** GraphQL client for the Propeller SDK */
4
- graphqlClient: GraphQLClient;
3
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
5
  /** Currency symbol to display. Defaults to '€'. */
6
6
  currency?: string;
7
- /** The logged-in user */
8
- user: Contact | Customer;
9
- /** The companyId of the current selected company */
10
- companyId: number;
7
+ /** The logged-in user. Resolved from PropellerProvider when omitted. */
8
+ user?: Contact | Customer;
9
+ /** The companyId of the current selected company. Resolved from PropellerProvider when omitted. */
10
+ companyId?: number;
11
11
  /**
12
12
  * Override: fires instead of the default CartService.acceptPurchaseAuthorizationRequest() call.
13
13
  * Receives the cartId string.
@@ -1,7 +1,7 @@
1
1
  import { Cart, Contact, Customer, GraphQLClient } from '@propeller-commerce/propeller-sdk-v2';
2
2
  export interface RegisterFormProps {
3
- /** GraphQL client for the Propeller SDK */
4
- graphqlClient: GraphQLClient;
3
+ /** GraphQL client for the Propeller SDK. Resolved from PropellerProvider when omitted. */
4
+ graphqlClient?: GraphQLClient;
5
5
  /** Title of the register form
6
6
  * @default "Create account"
7
7
  */
@@ -16,8 +16,8 @@ export interface SearchBarResult {
16
16
  isCluster?: boolean;
17
17
  }
18
18
  export interface SearchBarProps {
19
- /** Propeller SDK GraphQL client */
20
- graphqlClient: GraphQLClient;
19
+ /** Propeller SDK GraphQL client. Resolved from PropellerProvider when omitted. */
20
+ graphqlClient?: GraphQLClient;
21
21
  /** Currency symbol to display. Defaults to '€'. */
22
22
  currency?: string;
23
23
  /** The currently logged in user (Contact or Customer) */
package/dist/index.cjs CHANGED
@@ -4078,7 +4078,7 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
4078
4078
  toastVisible.value = false;
4079
4079
  }
4080
4080
  function getProductName() {
4081
- return props.product?.names?.[0]?.value || "Product";
4081
+ return index.getLanguageString(props.product?.names, props.language || "NL", "Product");
4082
4082
  }
4083
4083
  function getProductUrl() {
4084
4084
  return props.configuration?.urls?.getProductUrl(props.product, props.language) ?? "#";
@@ -4143,7 +4143,7 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
4143
4143
  }
4144
4144
  function getModalName() {
4145
4145
  if (addedCartItem.value) {
4146
- return addedCartItem.value.product?.names?.[0]?.value || getProductName();
4146
+ return index.getLanguageString(addedCartItem.value.product?.names, props.language || "NL", "") || getProductName();
4147
4147
  }
4148
4148
  return getProductName();
4149
4149
  }
@@ -4398,7 +4398,7 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
4398
4398
  key: idx,
4399
4399
  class: "propeller-add-to-cart__modal-child flex justify-between items-center text-xs text-muted-foreground"
4400
4400
  }, [
4401
- vue.createElementVNode("span", _hoisted_35$c, vue.toDisplayString(child.product?.names?.[0]?.value || "Option"), 1),
4401
+ vue.createElementVNode("span", _hoisted_35$c, vue.toDisplayString(vue.unref(index.getLanguageString)(child.product?.names, __props.language || "NL", "Option")), 1),
4402
4402
  vue.createElementVNode("span", _hoisted_36$c, vue.toDisplayString(getChildItemPrice(child)), 1)
4403
4403
  ]);
4404
4404
  }), 128))
@@ -6311,7 +6311,7 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
6311
6311
  return index.getLabel(props.labels, key, fallback);
6312
6312
  }
6313
6313
  function getProductName() {
6314
- return props.cartItem.product?.names?.[0]?.value || "Product";
6314
+ return index.getLanguageString(props.cartItem.product?.names, props.language || "NL", "Product");
6315
6315
  }
6316
6316
  function getProductUrl() {
6317
6317
  if (props.configuration?.urls && props.cartItem.product) {
@@ -6370,7 +6370,7 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
6370
6370
  if (!items) return "";
6371
6371
  const leader = items.find((bi) => bi.isLeader === propellerSdkV2.YesNo.Y);
6372
6372
  if (!leader) return "";
6373
- return leader.product.names?.[0]?.value || "Product";
6373
+ return index.getLanguageString(leader.product.names, props.language || "NL", "Product");
6374
6374
  }
6375
6375
  function getBundleLeaderPrice() {
6376
6376
  const items = props.cartItem.bundle?.items;
@@ -6387,7 +6387,7 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
6387
6387
  return items.filter((bi) => bi.isLeader !== propellerSdkV2.YesNo.Y);
6388
6388
  }
6389
6389
  function getBundleItemName(bundleItem) {
6390
- return bundleItem.product.names?.[0]?.value || "Product";
6390
+ return index.getLanguageString(bundleItem.product.names, props.language || "NL", "Product");
6391
6391
  }
6392
6392
  function getBundleItemPrice(bundleItem) {
6393
6393
  const price = bundleItem.price?.net;
@@ -6459,7 +6459,7 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
6459
6459
  }
6460
6460
  function getCrossupsellName(item) {
6461
6461
  const product = item?.productTo || item?.clusterTo;
6462
- return product?.names?.[0]?.value || "Product";
6462
+ return index.getLanguageString(product?.names, props.language || "NL", "Product");
6463
6463
  }
6464
6464
  function getCrossupsellImageUrl(item) {
6465
6465
  const product = item?.productTo || item?.clusterTo;
@@ -6638,7 +6638,7 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
6638
6638
  key: idx,
6639
6639
  class: "propeller-cart-item__option flex flex-wrap gap-x-2 text-sm text-muted-foreground"
6640
6640
  }, [
6641
- vue.createElementVNode("span", _hoisted_22$h, vue.toDisplayString(child.product.names?.[0]?.value || "Option"), 1),
6641
+ vue.createElementVNode("span", _hoisted_22$h, vue.toDisplayString(vue.unref(index.getLanguageString)(child.product.names, __props.language || "NL", "Option")), 1),
6642
6642
  _cache[10] || (_cache[10] = vue.createElementVNode("span", { class: "text-foreground-subtle hidden sm:inline" }, "-", -1)),
6643
6643
  vue.createElementVNode("span", _hoisted_23$h, vue.toDisplayString(child.product.sku), 1),
6644
6644
  _cache[11] || (_cache[11] = vue.createElementVNode("div", { class: "flex-1 border-b border-dotted border-input mx-1 mb-1" }, null, -1)),