@propeller-commerce/propeller-v2-vue-ui 0.3.23 → 0.3.25

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/dist/index.cjs CHANGED
@@ -1893,8 +1893,15 @@ function useProductInfo(options) {
1893
1893
  const lang = languageRef.value || "NL";
1894
1894
  const user = options.user?.value ?? null;
1895
1895
  const companyId = options.companyId?.value;
1896
+ const explicitOrderlistIds = options.orderlistIds?.value;
1896
1897
  let orderlistIds = [];
1897
- if (user && companyId) {
1898
+ let applyOrderlists = true;
1899
+ if (explicitOrderlistIds && explicitOrderlistIds.length > 0) {
1900
+ orderlistIds = explicitOrderlistIds;
1901
+ applyOrderlists = options.applyOrderlists?.value !== false;
1902
+ } else if (options.applyOrderlists?.value === false) {
1903
+ applyOrderlists = false;
1904
+ } else if (user && companyId) {
1898
1905
  const orderlistService = index.createServices(graphqlClient).orderlist;
1899
1906
  const searchInput = { companyIds: [companyId] };
1900
1907
  const orderlists = await orderlistService.getOrderlists(searchInput);
@@ -1905,7 +1912,7 @@ function useProductInfo(options) {
1905
1912
  const variables = {
1906
1913
  productId,
1907
1914
  language: lang,
1908
- applyOrderlists: true,
1915
+ applyOrderlists,
1909
1916
  orderlistIds,
1910
1917
  imageSearchFilters: imageSearchFilters ?? configuration.imageSearchFiltersGrid,
1911
1918
  imageVariantFilters: imageVariantFilters ?? configuration.imageVariantFiltersLarge ?? configuration.imageVariantFiltersSmall,
@@ -2086,6 +2093,11 @@ function useProductSearch(options) {
2086
2093
  const userId = user && "contactId" in user ? user.contactId : user && "customerId" in user ? user.customerId : void 0;
2087
2094
  const contactId = user && "contactId" in user ? user.contactId : void 0;
2088
2095
  const customerId = user && "customerId" in user ? user.customerId : void 0;
2096
+ const orderlistIdsVal = options.orderlistIds?.value;
2097
+ const orderlistScope = orderlistIdsVal && orderlistIdsVal.length > 0 ? {
2098
+ applyOrderlists: options.applyOrderlists?.value !== false,
2099
+ orderlistIds: orderlistIdsVal
2100
+ } : { applyOrderlists: false };
2089
2101
  const categoryProductSearchInput = {
2090
2102
  language: lang,
2091
2103
  page: pagination.currentPage.value,
@@ -2103,7 +2115,8 @@ function useProductSearch(options) {
2103
2115
  ...priceFilter && { price: priceFilter },
2104
2116
  ...sortInputs.length && { sortInputs },
2105
2117
  ...companyIdRef.value && { companyId: companyIdRef.value },
2106
- ...userId !== void 0 && { userId }
2118
+ ...userId !== void 0 && { userId },
2119
+ ...orderlistScope
2107
2120
  };
2108
2121
  const priceCalculateProductInput = {
2109
2122
  taxZone,
@@ -3078,7 +3091,7 @@ const _hoisted_15$s = {
3078
3091
  const _hoisted_16$r = { class: "propeller-login-form__register text-center" };
3079
3092
  const _hoisted_17$r = { class: "propeller-login-form__register-prompt text-sm text-muted-foreground mb-2" };
3080
3093
  const _hoisted_18$p = { class: "propeller-login-form__guest text-center" };
3081
- const _hoisted_19$o = {
3094
+ const _hoisted_19$p = {
3082
3095
  key: 2,
3083
3096
  class: "propeller-login-form__footer flex flex-col gap-2 text-sm pt-3 text-center"
3084
3097
  };
@@ -3342,7 +3355,7 @@ const _sfc_main$U = /* @__PURE__ */ vue.defineComponent({
3342
3355
  ])
3343
3356
  ]) : vue.createCommentVNode("", true)
3344
3357
  ])) : vue.createCommentVNode("", true),
3345
- __props.accountHeaderLoginForm ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_19$o, [
3358
+ __props.accountHeaderLoginForm ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_19$p, [
3346
3359
  __props.displayForgotPasswordLink !== false ? vue.renderSlot(_ctx.$slots, "forgotPasswordLink", {
3347
3360
  key: 0,
3348
3361
  onClick: (e) => __props.onForgotPasswordClick?.(e),
@@ -3410,7 +3423,7 @@ const _hoisted_15$r = { class: "propeller-account-menu__user-label text-xs text-
3410
3423
  const _hoisted_16$q = { class: "propeller-account-menu__user-name font-medium text-foreground truncate" };
3411
3424
  const _hoisted_17$q = { class: "propeller-account-menu__nav" };
3412
3425
  const _hoisted_18$o = { class: "propeller-account-menu__list space-y-0.5" };
3413
- const _hoisted_19$n = ["onClick"];
3426
+ const _hoisted_19$o = ["onClick"];
3414
3427
  const _hoisted_20$l = { class: "propeller-account-menu__logout-wrapper mt-3 pt-3 border-t border-border" };
3415
3428
  const _hoisted_21$j = {
3416
3429
  key: 1,
@@ -3646,7 +3659,7 @@ const _sfc_main$T = /* @__PURE__ */ vue.defineComponent({
3646
3659
  type: "button",
3647
3660
  class: "propeller-account-menu__link flex w-full items-center gap-3 px-3 py-2 text-sm font-medium rounded-[var(--radius-control)] text-muted-foreground hover:bg-surface-hover hover:text-foreground transition-colors",
3648
3661
  onClick: async (event) => handleMenuItemClick(link.href)
3649
- }, vue.toDisplayString(link.label), 9, _hoisted_19$n)
3662
+ }, vue.toDisplayString(link.label), 9, _hoisted_19$o)
3650
3663
  ]);
3651
3664
  }), 128))
3652
3665
  ])
@@ -3933,7 +3946,7 @@ const _hoisted_17$p = {
3933
3946
  strokeWidth: 2
3934
3947
  };
3935
3948
  const _hoisted_18$n = { class: "propeller-add-to-cart__modal-title flex-1 text-base font-semibold text-foreground" };
3936
- const _hoisted_19$m = {
3949
+ const _hoisted_19$n = {
3937
3950
  fill: "none",
3938
3951
  viewBox: "0 0 24 24",
3939
3952
  stroke: "currentColor",
@@ -4322,7 +4335,7 @@ const _sfc_main$R = /* @__PURE__ */ vue.defineComponent({
4322
4335
  class: "propeller-add-to-cart__modal-close flex-shrink-0 text-foreground-subtle hover:text-muted-foreground focus:outline-none",
4323
4336
  onClick: _cache[7] || (_cache[7] = async (event) => closeModal())
4324
4337
  }, [
4325
- (vue.openBlock(), vue.createElementBlock("svg", _hoisted_19$m, [..._cache[16] || (_cache[16] = [
4338
+ (vue.openBlock(), vue.createElementBlock("svg", _hoisted_19$n, [..._cache[16] || (_cache[16] = [
4326
4339
  vue.createElementVNode("path", {
4327
4340
  strokeLinecap: "round",
4328
4341
  strokeLinejoin: "round",
@@ -4468,7 +4481,7 @@ const _hoisted_15$p = { class: "space-y-1" };
4468
4481
  const _hoisted_16$o = { class: "propeller-add-to-favorite__select-label text-xs text-muted-foreground" };
4469
4482
  const _hoisted_17$o = ["value"];
4470
4483
  const _hoisted_18$m = ["value"];
4471
- const _hoisted_19$l = ["disabled"];
4484
+ const _hoisted_19$m = ["disabled"];
4472
4485
  const _hoisted_20$j = {
4473
4486
  key: 2,
4474
4487
  class: "propeller-add-to-favorite__empty py-4 text-center text-muted-foreground text-sm"
@@ -4738,7 +4751,7 @@ const _sfc_main$Q = /* @__PURE__ */ vue.defineComponent({
4738
4751
  ], 64)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
4739
4752
  vue.createTextVNode(vue.toDisplayString(getLabel("addToFavorites", "Add to favorites")), 1)
4740
4753
  ], 64))
4741
- ], 8, _hoisted_19$l)
4754
+ ], 8, _hoisted_19$m)
4742
4755
  ])) : vue.createCommentVNode("", true),
4743
4756
  getMemberLists().length === 0 && getNonMemberLists().length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_20$j, vue.toDisplayString(getLabel(
4744
4757
  "noLists",
@@ -4790,7 +4803,7 @@ const _hoisted_16$n = {
4790
4803
  };
4791
4804
  const _hoisted_17$n = { class: "space-y-4" };
4792
4805
  const _hoisted_18$l = { class: "grid grid-cols-2 gap-4" };
4793
- const _hoisted_19$k = { class: "block text-sm font-medium mb-1" };
4806
+ const _hoisted_19$l = { class: "block text-sm font-medium mb-1" };
4794
4807
  const _hoisted_20$i = ["value"];
4795
4808
  const _hoisted_21$h = { value: "M" };
4796
4809
  const _hoisted_22$h = { value: "F" };
@@ -5200,7 +5213,7 @@ const _sfc_main$P = /* @__PURE__ */ vue.defineComponent({
5200
5213
  vue.createElementVNode("div", _hoisted_17$n, [
5201
5214
  vue.createElementVNode("div", _hoisted_18$l, [
5202
5215
  vue.createElementVNode("div", null, [
5203
- vue.createElementVNode("label", _hoisted_19$k, vue.toDisplayString(getLabel("gender", "Gender")), 1),
5216
+ vue.createElementVNode("label", _hoisted_19$l, vue.toDisplayString(getLabel("gender", "Gender")), 1),
5204
5217
  vue.createElementVNode("select", {
5205
5218
  class: "propeller-address-card__input w-full h-10 px-3 rounded-[var(--radius-control)] border border-input bg-card",
5206
5219
  value: editGender.value,
@@ -6121,7 +6134,7 @@ const _hoisted_15$n = {
6121
6134
  const _hoisted_16$m = { class: "font-semibold text-foreground" };
6122
6135
  const _hoisted_17$m = { class: "font-semibold text-foreground" };
6123
6136
  const _hoisted_18$k = { class: "font-medium" };
6124
- const _hoisted_19$j = { class: "font-semibold text-foreground" };
6137
+ const _hoisted_19$k = { class: "font-semibold text-foreground" };
6125
6138
  const _hoisted_20$h = { class: "propeller-cart-item__options mt-3 space-y-1.5 border-l-2 border-border pl-3" };
6126
6139
  const _hoisted_21$g = { class: "propeller-cart-item__options-label text-xs font-semibold text-muted-foreground uppercase tracking-wider mb-1" };
6127
6140
  const _hoisted_22$g = { class: "font-medium" };
@@ -6607,7 +6620,7 @@ const _sfc_main$K = /* @__PURE__ */ vue.defineComponent({
6607
6620
  vue.createElementVNode("span", _hoisted_18$k, vue.toDisplayString(getBundleItemName(bundleItem)), 1),
6608
6621
  !!getBundleItemPrice(bundleItem) ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
6609
6622
  _cache[9] || (_cache[9] = vue.createElementVNode("div", { class: "flex-1 border-b border-dotted border-input mx-1 mb-1" }, null, -1)),
6610
- vue.createElementVNode("span", _hoisted_19$j, vue.toDisplayString(getBundleItemPrice(bundleItem)), 1)
6623
+ vue.createElementVNode("span", _hoisted_19$k, vue.toDisplayString(getBundleItemPrice(bundleItem)), 1)
6611
6624
  ], 64)) : vue.createCommentVNode("", true)
6612
6625
  ]);
6613
6626
  }), 128))
@@ -6861,7 +6874,7 @@ const _hoisted_18$j = {
6861
6874
  class: "w-5 h-5",
6862
6875
  strokeWidth: 2
6863
6876
  };
6864
- const _hoisted_19$i = { class: "propeller-cart-icon__sidebar-body flex-1 overflow-y-auto px-5 py-4 space-y-4" };
6877
+ const _hoisted_19$j = { class: "propeller-cart-icon__sidebar-body flex-1 overflow-y-auto px-5 py-4 space-y-4" };
6865
6878
  const _hoisted_20$g = {
6866
6879
  key: 0,
6867
6880
  class: "propeller-cart-icon__empty flex flex-col items-center justify-center h-full text-center space-y-4 py-16"
@@ -7130,7 +7143,7 @@ const _sfc_main$J = /* @__PURE__ */ vue.defineComponent({
7130
7143
  ])]))
7131
7144
  ], 8, _hoisted_17$l)
7132
7145
  ]),
7133
- vue.createElementVNode("div", _hoisted_19$i, [
7146
+ vue.createElementVNode("div", _hoisted_19$j, [
7134
7147
  getItems().length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_20$g, [
7135
7148
  (vue.openBlock(), vue.createElementBlock("svg", _hoisted_21$f, [..._cache[14] || (_cache[14] = [
7136
7149
  vue.createElementVNode("path", {
@@ -7303,7 +7316,7 @@ const _hoisted_18$i = {
7303
7316
  key: 1,
7304
7317
  class: "flex justify-between"
7305
7318
  };
7306
- const _hoisted_19$h = { class: "font-medium" };
7319
+ const _hoisted_19$i = { class: "font-medium" };
7307
7320
  const _hoisted_20$f = {
7308
7321
  key: 2,
7309
7322
  class: "flex justify-between"
@@ -7478,7 +7491,7 @@ const _sfc_main$I = /* @__PURE__ */ vue.defineComponent({
7478
7491
  vue.createElementVNode("span", null, vue.toDisplayString(paymentMethod.value), 1)
7479
7492
  ])) : vue.createCommentVNode("", true),
7480
7493
  carrierName.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_18$i, [
7481
- vue.createElementVNode("span", _hoisted_19$h, vue.toDisplayString(getLabel("carrier", "Carrier:")), 1),
7494
+ vue.createElementVNode("span", _hoisted_19$i, vue.toDisplayString(getLabel("carrier", "Carrier:")), 1),
7482
7495
  vue.createElementVNode("span", null, vue.toDisplayString(carrierName.value), 1)
7483
7496
  ])) : vue.createCommentVNode("", true),
7484
7497
  requestDate.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_20$f, [
@@ -7711,7 +7724,7 @@ const _hoisted_17$j = {
7711
7724
  "data-row": "total-vat"
7712
7725
  };
7713
7726
  const _hoisted_18$h = { class: "propeller-cart-summary__label" };
7714
- const _hoisted_19$g = { class: "propeller-cart-summary__value" };
7727
+ const _hoisted_19$h = { class: "propeller-cart-summary__value" };
7715
7728
  const _hoisted_20$e = {
7716
7729
  class: "propeller-cart-summary__row propeller-cart-summary__row--total flex justify-between text-xl font-bold pt-4 border-t text-foreground mt-2",
7717
7730
  "data-row": "total"
@@ -7898,7 +7911,7 @@ const _sfc_main$G = /* @__PURE__ */ vue.defineComponent({
7898
7911
  }), 128)) : vue.createCommentVNode("", true),
7899
7912
  showTotalVat.value && totalVat.value > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_17$j, [
7900
7913
  vue.createElementVNode("span", _hoisted_18$h, vue.toDisplayString(getLabel("totalVat", "Total VAT:")), 1),
7901
- vue.createElementVNode("span", _hoisted_19$g, vue.toDisplayString(formatItemPrice(totalVat.value)), 1)
7914
+ vue.createElementVNode("span", _hoisted_19$h, vue.toDisplayString(formatItemPrice(totalVat.value)), 1)
7902
7915
  ])) : vue.createCommentVNode("", true),
7903
7916
  vue.createElementVNode("div", _hoisted_20$e, [
7904
7917
  vue.createElementVNode("span", _hoisted_21$d, vue.toDisplayString(getLabel("total", "Total:")), 1),
@@ -8144,7 +8157,7 @@ const _hoisted_17$i = {
8144
8157
  class: "propeller-cluster-card__price font-bold text-foreground text-sm whitespace-nowrap"
8145
8158
  };
8146
8159
  const _hoisted_18$g = { class: "propeller-cluster-card__cta w-full md:w-auto md:flex-shrink-0 md:ml-auto" };
8147
- const _hoisted_19$f = ["href"];
8160
+ const _hoisted_19$g = ["href"];
8148
8161
  const _hoisted_20$d = { class: "propeller-cluster-card__body flex flex-1 flex-col gap-1.5 p-3 sm:gap-2 sm:p-4" };
8149
8162
  const _hoisted_21$c = { class: "propeller-cluster-card__sku font-mono text-xs text-foreground-subtle" };
8150
8163
  const _hoisted_22$c = ["href"];
@@ -8533,7 +8546,7 @@ const _sfc_main$C = /* @__PURE__ */ vue.defineComponent({
8533
8546
  class: "propeller-cluster-card__cta-link flex w-full items-center justify-center rounded-[var(--radius-control)] bg-primary px-4 py-2 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2",
8534
8547
  href: getClusterUrl(),
8535
8548
  onClick: _cache[3] || (_cache[3] = async (e) => handleClusterClick(e))
8536
- }, vue.toDisplayString(getLabel("viewCluster", "View cluster")), 9, _hoisted_19$f)
8549
+ }, vue.toDisplayString(getLabel("viewCluster", "View cluster")), 9, _hoisted_19$g)
8537
8550
  ])
8538
8551
  ])
8539
8552
  ])
@@ -8727,7 +8740,7 @@ const _hoisted_18$f = {
8727
8740
  key: 5,
8728
8741
  class: "propeller-cluster-configurator__options flex flex-wrap gap-2"
8729
8742
  };
8730
- const _hoisted_19$e = ["disabled", "onClick", "data-selected"];
8743
+ const _hoisted_19$f = ["disabled", "onClick", "data-selected"];
8731
8744
  const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
8732
8745
  __name: "ClusterConfigurator",
8733
8746
  props: {
@@ -9121,7 +9134,7 @@ const _sfc_main$B = /* @__PURE__ */ vue.defineComponent({
9121
9134
  onClick: async (event) => handleAttributeSelect(setting.name, val),
9122
9135
  "data-selected": setting.selectedValue === val ? "true" : "false",
9123
9136
  class: vue.normalizeClass(`propeller-cluster-configurator__chip px-3 py-1.5 rounded-[var(--radius-container)] border text-sm font-medium transition-colors ${setting.disabled ? "opacity-50 cursor-not-allowed border-border text-foreground-subtle" : setting.selectedValue === val ? "border-secondary bg-secondary/5 text-secondary cursor-pointer" : "border-border text-muted-foreground hover:border-secondary/30 cursor-pointer"}`)
9124
- }, vue.toDisplayString(val), 11, _hoisted_19$e);
9137
+ }, vue.toDisplayString(val), 11, _hoisted_19$f);
9125
9138
  }), 128))
9126
9139
  ])) : vue.createCommentVNode("", true)
9127
9140
  ], 8, _hoisted_2$y);
@@ -9917,7 +9930,7 @@ const _hoisted_17$g = {
9917
9930
  "data-stock": "out"
9918
9931
  };
9919
9932
  const _hoisted_18$e = { class: "propeller-favorite-list-item__price text-base font-bold text-foreground whitespace-nowrap flex-shrink-0" };
9920
- const _hoisted_19$d = ["href"];
9933
+ const _hoisted_19$e = ["href"];
9921
9934
  const _hoisted_20$c = ["title"];
9922
9935
  const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
9923
9936
  __name: "FavoriteListItem",
@@ -10178,7 +10191,7 @@ const _sfc_main$v = /* @__PURE__ */ vue.defineComponent({
10178
10191
  class: "propeller-favorite-list-item__view-cluster inline-flex items-center justify-center rounded-[var(--radius-control)] bg-secondary px-4 py-2 text-sm font-medium text-primary-foreground transition-colors hover:bg-secondary/90 whitespace-nowrap",
10179
10192
  href: getItemUrl(),
10180
10193
  onClick: _cache[2] || (_cache[2] = async (e) => handleItemClick(e))
10181
- }, vue.toDisplayString(getLabel("viewCluster", "View cluster")), 9, _hoisted_19$d)) : vue.createCommentVNode("", true),
10194
+ }, vue.toDisplayString(getLabel("viewCluster", "View cluster")), 9, _hoisted_19$e)) : vue.createCommentVNode("", true),
10182
10195
  __props.showDelete !== false ? (vue.openBlock(), vue.createElementBlock("button", {
10183
10196
  key: 2,
10184
10197
  type: "button",
@@ -10404,7 +10417,7 @@ const _hoisted_15$f = {
10404
10417
  const _hoisted_16$f = { class: "propeller-favorite-list-details__floating-bar-inner flex items-center justify-between gap-4 px-6 py-4" };
10405
10418
  const _hoisted_17$f = { class: "propeller-favorite-list-details__floating-bar-status flex items-center gap-2" };
10406
10419
  const _hoisted_18$d = ["checked"];
10407
- const _hoisted_19$c = {
10420
+ const _hoisted_19$d = {
10408
10421
  for: "favorite-list-select-all-floating",
10409
10422
  class: "text-sm font-medium cursor-pointer select-none"
10410
10423
  };
@@ -10945,7 +10958,7 @@ const _sfc_main$t = /* @__PURE__ */ vue.defineComponent({
10945
10958
  checked: isAllPageSelected(),
10946
10959
  onChange: _cache[2] || (_cache[2] = ($event) => togglePageSelectAll())
10947
10960
  }, null, 40, _hoisted_18$d),
10948
- vue.createElementVNode("label", _hoisted_19$c, vue.toDisplayString(getLabel("selectAll", "Select all")), 1),
10961
+ vue.createElementVNode("label", _hoisted_19$d, vue.toDisplayString(getLabel("selectAll", "Select all")), 1),
10949
10962
  vue.createElementVNode("span", _hoisted_20$b, vue.toDisplayString(selectedIds.value.size) + " " + vue.toDisplayString(getLabel("ofWord", "of")) + " " + vue.toDisplayString(allItems.value.length) + " " + vue.toDisplayString(getLabel("itemsSelected", "items selected")), 1)
10950
10963
  ]),
10951
10964
  vue.createElementVNode("div", _hoisted_21$b, [
@@ -11160,7 +11173,7 @@ const _hoisted_16$e = {
11160
11173
  };
11161
11174
  const _hoisted_17$e = { class: "flex items-center gap-2" };
11162
11175
  const _hoisted_18$c = { class: "propeller-favorite-lists__name text-xl font-semibold" };
11163
- const _hoisted_19$b = {
11176
+ const _hoisted_19$c = {
11164
11177
  key: 0,
11165
11178
  class: "propeller-favorite-lists__default-badge inline-flex items-center px-2 py-1 rounded-full text-xs font-medium bg-primary/10 text-primary"
11166
11179
  };
@@ -11436,7 +11449,7 @@ const _sfc_main$s = /* @__PURE__ */ vue.defineComponent({
11436
11449
  vue.unref(editingListId) !== String(list.id) ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$e, [
11437
11450
  vue.createElementVNode("div", _hoisted_17$e, [
11438
11451
  vue.createElementVNode("span", _hoisted_18$c, vue.toDisplayString(list.name), 1),
11439
- __props.showDefaultIndicator !== false && list.isDefault ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_19$b, vue.toDisplayString(getLabel("defaultBadge", "Default")), 1)) : vue.createCommentVNode("", true)
11452
+ __props.showDefaultIndicator !== false && list.isDefault ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_19$c, vue.toDisplayString(getLabel("defaultBadge", "Default")), 1)) : vue.createCommentVNode("", true)
11440
11453
  ]),
11441
11454
  vue.createElementVNode("div", _hoisted_20$a, [
11442
11455
  __props.showLastModified !== false ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_21$a, [
@@ -11873,7 +11886,7 @@ const _hoisted_16$d = {
11873
11886
  };
11874
11887
  const _hoisted_17$d = ["checked", "onChange"];
11875
11888
  const _hoisted_18$b = { class: "propeller-grid-filters__option-label flex-1 text-sm text-muted-foreground leading-none select-none group-hover:text-foreground" };
11876
- const _hoisted_19$a = { class: "propeller-grid-filters__option-count ml-1 text-xs text-foreground-subtle" };
11889
+ const _hoisted_19$b = { class: "propeller-grid-filters__option-count ml-1 text-xs text-foreground-subtle" };
11877
11890
  const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
11878
11891
  __name: "GridFilters",
11879
11892
  props: {
@@ -12201,7 +12214,7 @@ const _sfc_main$q = /* @__PURE__ */ vue.defineComponent({
12201
12214
  }, null, 40, _hoisted_17$d),
12202
12215
  vue.createElementVNode("span", _hoisted_18$b, [
12203
12216
  vue.createTextVNode(vue.toDisplayString(option.value), 1),
12204
- vue.createElementVNode("span", _hoisted_19$a, " (" + vue.toDisplayString(getCount(option)) + ") ", 1)
12217
+ vue.createElementVNode("span", _hoisted_19$b, " (" + vue.toDisplayString(getCount(option)) + ") ", 1)
12205
12218
  ])
12206
12219
  ]);
12207
12220
  }), 128))
@@ -12395,6 +12408,7 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
12395
12408
  __name: "GridToolbar",
12396
12409
  props: {
12397
12410
  sortOptions: {},
12411
+ hidePriceSort: { type: Boolean },
12398
12412
  defaultSort: {},
12399
12413
  viewMode: {},
12400
12414
  offset: {},
@@ -12488,7 +12502,8 @@ const _sfc_main$o = /* @__PURE__ */ vue.defineComponent({
12488
12502
  }
12489
12503
  function getSortOptions() {
12490
12504
  const opts = props.sortOptions || [];
12491
- return opts.length > 0 ? opts : ALL_SORT_FIELDS;
12505
+ const base = opts.length > 0 ? opts : ALL_SORT_FIELDS;
12506
+ return props.hidePriceSort ? base.filter((f) => f !== propellerSdkV2.ProductSortField.PRICE) : base;
12492
12507
  }
12493
12508
  function getOffsetOptions() {
12494
12509
  const opts = props.offset || [];
@@ -12719,7 +12734,7 @@ const _hoisted_16$b = {
12719
12734
  };
12720
12735
  const _hoisted_17$b = { class: "propeller-items-overview__item-qty flex items-center text-xs text-foreground-subtle mt-1" };
12721
12736
  const _hoisted_18$a = { class: "flex justify-between items-start gap-2" };
12722
- const _hoisted_19$9 = ["onClick"];
12737
+ const _hoisted_19$a = ["onClick"];
12723
12738
  const _hoisted_20$9 = {
12724
12739
  key: 1,
12725
12740
  class: "propeller-items-overview__item-title font-medium text-sm leading-tight line-clamp-2"
@@ -12953,7 +12968,7 @@ const _sfc_main$m = /* @__PURE__ */ vue.defineComponent({
12953
12968
  key: 0,
12954
12969
  class: "propeller-items-overview__item-title font-medium text-sm leading-tight cursor-pointer hover:text-secondary transition-colors line-clamp-2",
12955
12970
  onClick: async (event) => handleItemNameClick(item)
12956
- }, vue.toDisplayString(getItemName(item)), 9, _hoisted_19$9)) : vue.createCommentVNode("", true),
12971
+ }, vue.toDisplayString(getItemName(item)), 9, _hoisted_19$a)) : vue.createCommentVNode("", true),
12957
12972
  !itemNameClickable.value ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_20$9, vue.toDisplayString(getItemName(item)), 1)) : vue.createCommentVNode("", true),
12958
12973
  showPrice.value ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_21$9, vue.toDisplayString(formatItemPrice(getItemTotalPrice(item))), 1)) : vue.createCommentVNode("", true)
12959
12974
  ]),
@@ -13049,7 +13064,7 @@ const _hoisted_16$a = {
13049
13064
  };
13050
13065
  const _hoisted_17$a = ["href", "onClick"];
13051
13066
  const _hoisted_18$9 = { class: "propeller-menu__label" };
13052
- const _hoisted_19$8 = { class: "propeller-menu__tabs flex items-center border-b border-border" };
13067
+ const _hoisted_19$9 = { class: "propeller-menu__tabs flex items-center border-b border-border" };
13053
13068
  const _hoisted_20$8 = ["data-active", "onMouseenter", "onClick"];
13054
13069
  const _hoisted_21$8 = { class: "propeller-menu__label" };
13055
13070
  const _hoisted_22$8 = ["onMouseenter"];
@@ -13099,6 +13114,7 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
13099
13114
  menuClass: {},
13100
13115
  menuStyle: {},
13101
13116
  menuLinkFormat: {},
13117
+ getUrl: { type: Function },
13102
13118
  onMenuItemClick: { type: Function },
13103
13119
  labels: {},
13104
13120
  user: {},
@@ -13147,10 +13163,12 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
13147
13163
  }
13148
13164
  function getCategoryUrl(cat) {
13149
13165
  const lang = infra.language || "NL";
13150
- return infra.configuration?.urls?.getCategoryUrl(
13151
- { categoryId: cat.categoryId, slug: [{ value: cat.slug, language: lang }] },
13152
- lang
13153
- ) ?? "#";
13166
+ const category = {
13167
+ categoryId: cat.categoryId,
13168
+ slug: [{ value: cat.slug, language: lang }]
13169
+ };
13170
+ if (props.getUrl) return props.getUrl(category);
13171
+ return infra.configuration?.urls?.getCategoryUrl(category, lang) ?? "#";
13154
13172
  }
13155
13173
  function getSubCategories(cat) {
13156
13174
  return (cat.children || []).filter((sub) => sub.name && sub.slug);
@@ -13285,7 +13303,7 @@ const _sfc_main$l = /* @__PURE__ */ vue.defineComponent({
13285
13303
  key: 4,
13286
13304
  class: vue.normalizeClass(`propeller-menu__nav propeller-menu-jumbotron hidden md:block ${__props.menuClass || ""}`)
13287
13305
  }, [
13288
- vue.createElementVNode("div", _hoisted_19$8, [
13306
+ vue.createElementVNode("div", _hoisted_19$9, [
13289
13307
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(menuCategories.value, (l1, idx) => {
13290
13308
  return vue.openBlock(), vue.createElementBlock("button", {
13291
13309
  key: `l1-${l1.categoryId}-${idx}`,
@@ -13720,7 +13738,7 @@ const _hoisted_17$9 = {
13720
13738
  class: "flex space-x-2 w-full"
13721
13739
  };
13722
13740
  const _hoisted_18$8 = ["value"];
13723
- const _hoisted_19$7 = { value: "" };
13741
+ const _hoisted_19$8 = { value: "" };
13724
13742
  const _hoisted_20$7 = ["value"];
13725
13743
  const _hoisted_21$7 = ["value"];
13726
13744
  const _hoisted_22$7 = { value: "" };
@@ -14070,7 +14088,7 @@ const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({
14070
14088
  };
14071
14089
  })
14072
14090
  }, [
14073
- vue.createElementVNode("option", _hoisted_19$7, vue.toDisplayString(getLabel("sortFieldOption", "Sort Field")), 1),
14091
+ vue.createElementVNode("option", _hoisted_19$8, vue.toDisplayString(getLabel("sortFieldOption", "Sort Field")), 1),
14074
14092
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(Object.values(
14075
14093
  vue.unref(propellerSdkV2.OrderSortField)
14076
14094
  ), (sortField, index22) => {
@@ -14286,7 +14304,7 @@ const _hoisted_15$8 = { class: "px-4 py-3 text-muted-foreground" };
14286
14304
  const _hoisted_16$8 = { class: "px-4 py-3 text-muted-foreground" };
14287
14305
  const _hoisted_17$8 = { class: "px-4 py-3 text-muted-foreground" };
14288
14306
  const _hoisted_18$7 = { class: "px-4 py-3 text-right" };
14289
- const _hoisted_19$6 = ["onClick"];
14307
+ const _hoisted_19$7 = ["onClick"];
14290
14308
  const _hoisted_20$6 = { class: "flex items-center justify-between px-6 py-4 border-b" };
14291
14309
  const _hoisted_21$6 = { class: "text-lg font-semibold" };
14292
14310
  const _hoisted_22$6 = {
@@ -14415,7 +14433,7 @@ const _sfc_main$h = /* @__PURE__ */ vue.defineComponent({
14415
14433
  type: "button",
14416
14434
  class: "text-primary hover:text-primary/80 text-sm font-medium hover:underline",
14417
14435
  onClick: async (event) => openModal(shipment)
14418
- }, vue.toDisplayString(getLabel("details", "Details")), 9, _hoisted_19$6)
14436
+ }, vue.toDisplayString(getLabel("details", "Details")), 9, _hoisted_19$7)
14419
14437
  ])
14420
14438
  ]);
14421
14439
  }), 128))
@@ -14677,7 +14695,7 @@ const _hoisted_17$7 = {
14677
14695
  class: "propeller-product-bundles__condition text-xs text-muted-foreground mb-3"
14678
14696
  };
14679
14697
  const _hoisted_18$6 = { class: "propeller-product-bundles__pricing mb-3" };
14680
- const _hoisted_19$5 = {
14698
+ const _hoisted_19$6 = {
14681
14699
  key: 0,
14682
14700
  class: "propeller-product-bundles__original-price text-foreground-subtle line-through text-sm"
14683
14701
  };
@@ -15000,7 +15018,7 @@ const _sfc_main$f = /* @__PURE__ */ vue.defineComponent({
15000
15018
  ])) : vue.createCommentVNode("", true),
15001
15019
  !getHidePrices() ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 2 }, [
15002
15020
  vue.createElementVNode("div", _hoisted_18$6, [
15003
- hasDiscount(bundle) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_19$5, vue.toDisplayString(formatPrice(getOriginalPrice(bundle))), 1)) : vue.createCommentVNode("", true),
15021
+ hasDiscount(bundle) ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_19$6, vue.toDisplayString(formatPrice(getOriginalPrice(bundle))), 1)) : vue.createCommentVNode("", true),
15004
15022
  vue.createElementVNode("div", _hoisted_20$5, [
15005
15023
  vue.createElementVNode("span", _hoisted_21$5, vue.toDisplayString(formatPrice(getBundlePrice(bundle))), 1),
15006
15024
  vue.createElementVNode("span", _hoisted_22$5, [
@@ -15184,7 +15202,7 @@ const _hoisted_15$6 = { class: "propeller-product-card__price" };
15184
15202
  const _hoisted_16$6 = { class: "propeller-product-card__cta w-full md:w-auto md:flex-shrink-0 md:ml-auto" };
15185
15203
  const _hoisted_17$6 = { class: "propeller-product-card__body flex flex-1 flex-col gap-1.5 p-3 sm:gap-2 sm:p-4" };
15186
15204
  const _hoisted_18$5 = { class: "propeller-product-card__sku font-mono text-xs text-foreground-subtle" };
15187
- const _hoisted_19$4 = { class: "propeller-product-card__labels flex flex-col gap-0.5" };
15205
+ const _hoisted_19$5 = { class: "propeller-product-card__labels flex flex-col gap-0.5" };
15188
15206
  const _hoisted_20$4 = {
15189
15207
  key: 3,
15190
15208
  class: "hidden md:block"
@@ -15642,7 +15660,7 @@ const _sfc_main$e = /* @__PURE__ */ vue.defineComponent({
15642
15660
  product: __props.product,
15643
15661
  values: computedTextLabels()
15644
15662
  }, () => [
15645
- vue.createElementVNode("div", _hoisted_19$4, [
15663
+ vue.createElementVNode("div", _hoisted_19$5, [
15646
15664
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(computedTextLabels(), (item, index2) => {
15647
15665
  return vue.openBlock(), vue.createElementBlock("div", {
15648
15666
  key: index2,
@@ -16114,6 +16132,8 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
16114
16132
  categoryId: {},
16115
16133
  term: {},
16116
16134
  brand: {},
16135
+ orderlistIds: {},
16136
+ applyOrderlists: { type: Boolean },
16117
16137
  columns: {},
16118
16138
  isLoading: { type: Boolean, default: false },
16119
16139
  portalMode: {},
@@ -16219,6 +16239,8 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
16219
16239
  const categoryIdRef = vue.computed(() => props.categoryId);
16220
16240
  const termRef = vue.computed(() => props.term);
16221
16241
  const brandRef = vue.computed(() => props.brand);
16242
+ const orderlistIdsRef = vue.computed(() => props.orderlistIds);
16243
+ const applyOrderlistsRef = vue.computed(() => props.applyOrderlists);
16222
16244
  const langRef = vue.computed(() => infra.language || "NL");
16223
16245
  const userRef = vue.computed(() => infra.user ?? null);
16224
16246
  const companyRef = vue.computed(() => infra.companyId);
@@ -16246,6 +16268,8 @@ const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({
16246
16268
  categoryId: categoryIdRef,
16247
16269
  term: termRef,
16248
16270
  brand: brandRef,
16271
+ orderlistIds: orderlistIdsRef,
16272
+ applyOrderlists: applyOrderlistsRef,
16249
16273
  language: langRef,
16250
16274
  taxZone: props.taxZone,
16251
16275
  user: userRef,
@@ -16456,6 +16480,8 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
16456
16480
  props: {
16457
16481
  user: {},
16458
16482
  companyId: {},
16483
+ orderlistIds: {},
16484
+ applyOrderlists: { type: Boolean },
16459
16485
  product: {},
16460
16486
  productId: {},
16461
16487
  graphqlClient: {},
@@ -16496,6 +16522,8 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
16496
16522
  const props = __props;
16497
16523
  const userRef = vue.computed(() => props.user ?? null);
16498
16524
  const companyRef = vue.computed(() => props.companyId);
16525
+ const orderlistIdsRef = vue.computed(() => props.orderlistIds);
16526
+ const applyOrderlistsRef = vue.computed(() => props.applyOrderlists);
16499
16527
  const langRef = vue.computed(() => props.language || "NL");
16500
16528
  const { product, cluster, loading, error, fetchProduct, fetchCluster } = useProductInfo({
16501
16529
  graphqlClient: props.graphqlClient,
@@ -16503,6 +16531,8 @@ const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({
16503
16531
  taxZone: props.taxZone,
16504
16532
  user: userRef,
16505
16533
  companyId: companyRef,
16534
+ orderlistIds: orderlistIdsRef,
16535
+ applyOrderlists: applyOrderlistsRef,
16506
16536
  configuration: props.configuration
16507
16537
  });
16508
16538
  vue.onMounted(() => {
@@ -17160,37 +17190,41 @@ const _sfc_main$8 = /* @__PURE__ */ vue.defineComponent({
17160
17190
  });
17161
17191
  const _hoisted_1$7 = ["data-layout", "data-grouped"];
17162
17192
  const _hoisted_2$7 = {
17193
+ key: 0,
17194
+ class: "propeller-product-specifications__package-description mb-4 text-sm text-muted-foreground"
17195
+ };
17196
+ const _hoisted_3$7 = {
17163
17197
  key: 0,
17164
17198
  class: "overflow-hidden rounded-[var(--radius-container)] border border-border"
17165
17199
  };
17166
- const _hoisted_3$7 = { class: "w-full text-sm" };
17167
- const _hoisted_4$7 = { class: "divide-y divide-border" };
17168
- const _hoisted_5$7 = { class: "px-4 py-2 font-medium text-foreground w-1/2" };
17169
- const _hoisted_6$7 = { class: "px-4 py-2 text-muted-foreground" };
17170
- const _hoisted_7$7 = {
17200
+ const _hoisted_4$7 = { class: "w-full text-sm" };
17201
+ const _hoisted_5$7 = { class: "divide-y divide-border" };
17202
+ const _hoisted_6$7 = { class: "px-4 py-2 font-medium text-foreground w-1/2" };
17203
+ const _hoisted_7$7 = { class: "px-4 py-2 text-muted-foreground" };
17204
+ const _hoisted_8$6 = {
17171
17205
  key: 1,
17172
17206
  class: "space-y-3"
17173
17207
  };
17174
- const _hoisted_8$6 = { class: "text-xs font-medium text-muted-foreground uppercase tracking-wide" };
17175
- const _hoisted_9$6 = { class: "text-sm text-foreground" };
17176
- const _hoisted_10$6 = {
17208
+ const _hoisted_9$6 = { class: "text-xs font-medium text-muted-foreground uppercase tracking-wide" };
17209
+ const _hoisted_10$6 = { class: "text-sm text-foreground" };
17210
+ const _hoisted_11$6 = {
17177
17211
  key: 0,
17178
17212
  class: "text-sm font-semibold text-muted-foreground uppercase tracking-wide mb-2"
17179
17213
  };
17180
- const _hoisted_11$6 = {
17214
+ const _hoisted_12$6 = {
17181
17215
  key: 1,
17182
17216
  class: "overflow-hidden rounded-[var(--radius-container)] border border-border"
17183
17217
  };
17184
- const _hoisted_12$6 = { class: "w-full text-sm" };
17185
- const _hoisted_13$6 = { class: "divide-y divide-border" };
17186
- const _hoisted_14$6 = { class: "px-4 py-2 font-medium text-foreground w-1/2" };
17187
- const _hoisted_15$5 = { class: "px-4 py-2 text-muted-foreground" };
17188
- const _hoisted_16$5 = {
17218
+ const _hoisted_13$6 = { class: "w-full text-sm" };
17219
+ const _hoisted_14$6 = { class: "divide-y divide-border" };
17220
+ const _hoisted_15$5 = { class: "px-4 py-2 font-medium text-foreground w-1/2" };
17221
+ const _hoisted_16$5 = { class: "px-4 py-2 text-muted-foreground" };
17222
+ const _hoisted_17$5 = {
17189
17223
  key: 2,
17190
17224
  class: "space-y-3"
17191
17225
  };
17192
- const _hoisted_17$5 = { class: "text-xs font-medium text-muted-foreground uppercase tracking-wide" };
17193
- const _hoisted_18$4 = { class: "text-sm text-foreground" };
17226
+ const _hoisted_18$4 = { class: "text-xs font-medium text-muted-foreground uppercase tracking-wide" };
17227
+ const _hoisted_19$4 = { class: "text-sm text-foreground" };
17194
17228
  const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
17195
17229
  __name: "ProductSpecifications",
17196
17230
  props: {
@@ -17200,6 +17234,7 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
17200
17234
  language: {},
17201
17235
  layout: {},
17202
17236
  grouping: { type: Boolean },
17237
+ packageDescription: {},
17203
17238
  className: {}
17204
17239
  },
17205
17240
  setup(__props) {
@@ -17285,69 +17320,70 @@ const _sfc_main$7 = /* @__PURE__ */ vue.defineComponent({
17285
17320
  return getAttributes().length > 0;
17286
17321
  }
17287
17322
  return (_ctx, _cache) => {
17288
- return !vue.unref(loading) && hasPublicAttributes() ? (vue.openBlock(), vue.createElementBlock("div", {
17323
+ return !vue.unref(loading) && (hasPublicAttributes() || __props.packageDescription) ? (vue.openBlock(), vue.createElementBlock("div", {
17289
17324
  key: 0,
17290
17325
  class: vue.normalizeClass(`propeller-product-specifications ${__props.className || ""}`),
17291
17326
  "data-layout": __props.layout === "list" ? "list" : "table",
17292
17327
  "data-grouped": __props.grouping ? "true" : "false"
17293
17328
  }, [
17294
- !__props.grouping ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
17295
- __props.layout !== "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$7, [
17296
- vue.createElementVNode("table", _hoisted_3$7, [
17297
- vue.createElementVNode("tbody", _hoisted_4$7, [
17329
+ __props.packageDescription ? (vue.openBlock(), vue.createElementBlock("p", _hoisted_2$7, vue.toDisplayString(__props.packageDescription), 1)) : vue.createCommentVNode("", true),
17330
+ !__props.grouping ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
17331
+ __props.layout !== "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$7, [
17332
+ vue.createElementVNode("table", _hoisted_4$7, [
17333
+ vue.createElementVNode("tbody", _hoisted_5$7, [
17298
17334
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getAttributes(), (attr, i) => {
17299
17335
  return vue.openBlock(), vue.createElementBlock("tr", {
17300
17336
  key: i,
17301
17337
  class: "propeller-product-specifications__row odd:bg-card even:bg-surface-hover/20"
17302
17338
  }, [
17303
- vue.createElementVNode("td", _hoisted_5$7, vue.toDisplayString(getAttributeLabel(attr)), 1),
17304
- vue.createElementVNode("td", _hoisted_6$7, vue.toDisplayString(getAttributeValue(attr)), 1)
17339
+ vue.createElementVNode("td", _hoisted_6$7, vue.toDisplayString(getAttributeLabel(attr)), 1),
17340
+ vue.createElementVNode("td", _hoisted_7$7, vue.toDisplayString(getAttributeValue(attr)), 1)
17305
17341
  ]);
17306
17342
  }), 128))
17307
17343
  ])
17308
17344
  ])
17309
17345
  ])) : vue.createCommentVNode("", true),
17310
- __props.layout === "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_7$7, [
17346
+ __props.layout === "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8$6, [
17311
17347
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getAttributes(), (attr, i) => {
17312
17348
  return vue.openBlock(), vue.createElementBlock("div", {
17313
17349
  key: i,
17314
17350
  class: "flex flex-col gap-0.5"
17315
17351
  }, [
17316
- vue.createElementVNode("span", _hoisted_8$6, vue.toDisplayString(getAttributeLabel(attr)), 1),
17317
- vue.createElementVNode("span", _hoisted_9$6, vue.toDisplayString(getAttributeValue(attr)), 1)
17352
+ vue.createElementVNode("span", _hoisted_9$6, vue.toDisplayString(getAttributeLabel(attr)), 1),
17353
+ vue.createElementVNode("span", _hoisted_10$6, vue.toDisplayString(getAttributeValue(attr)), 1)
17318
17354
  ]);
17319
17355
  }), 128))
17320
17356
  ])) : vue.createCommentVNode("", true)
17321
17357
  ], 64)) : vue.createCommentVNode("", true),
17322
- !!__props.grouping ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList(getGroups(), (group, index2) => {
17358
+ !!__props.grouping ? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 2 }, vue.renderList(getGroups(), (group, index2) => {
17323
17359
  return vue.openBlock(), vue.createElementBlock("div", {
17324
17360
  key: group,
17325
17361
  class: "mb-6"
17326
17362
  }, [
17327
- !!group ? (vue.openBlock(), vue.createElementBlock("h4", _hoisted_10$6, vue.toDisplayString(group), 1)) : vue.createCommentVNode("", true),
17328
- __props.layout !== "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_11$6, [
17329
- vue.createElementVNode("table", _hoisted_12$6, [
17330
- vue.createElementVNode("tbody", _hoisted_13$6, [
17363
+ !!group ? (vue.openBlock(), vue.createElementBlock("h4", _hoisted_11$6, vue.toDisplayString(group), 1)) : vue.createCommentVNode("", true),
17364
+ __props.layout !== "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_12$6, [
17365
+ vue.createElementVNode("table", _hoisted_13$6, [
17366
+ vue.createElementVNode("tbody", _hoisted_14$6, [
17331
17367
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getAttributesByGroup(group), (attr, i) => {
17332
17368
  return vue.openBlock(), vue.createElementBlock("tr", {
17333
17369
  key: i,
17334
17370
  class: "propeller-product-specifications__row odd:bg-card even:bg-surface-hover/20"
17335
17371
  }, [
17336
- vue.createElementVNode("td", _hoisted_14$6, vue.toDisplayString(getAttributeLabel(attr)), 1),
17337
- vue.createElementVNode("td", _hoisted_15$5, vue.toDisplayString(getAttributeValue(attr)), 1)
17372
+ vue.createElementVNode("td", _hoisted_15$5, vue.toDisplayString(getAttributeLabel(attr)), 1),
17373
+ vue.createElementVNode("td", _hoisted_16$5, vue.toDisplayString(getAttributeValue(attr)), 1)
17338
17374
  ]);
17339
17375
  }), 128))
17340
17376
  ])
17341
17377
  ])
17342
17378
  ])) : vue.createCommentVNode("", true),
17343
- __props.layout === "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_16$5, [
17379
+ __props.layout === "list" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_17$5, [
17344
17380
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getAttributesByGroup(group), (attr, i) => {
17345
17381
  return vue.openBlock(), vue.createElementBlock("div", {
17346
17382
  key: i,
17347
17383
  class: "flex flex-col gap-0.5"
17348
17384
  }, [
17349
- vue.createElementVNode("span", _hoisted_17$5, vue.toDisplayString(getAttributeLabel(attr)), 1),
17350
- vue.createElementVNode("span", _hoisted_18$4, vue.toDisplayString(getAttributeValue(attr)), 1)
17385
+ vue.createElementVNode("span", _hoisted_18$4, vue.toDisplayString(getAttributeLabel(attr)), 1),
17386
+ vue.createElementVNode("span", _hoisted_19$4, vue.toDisplayString(getAttributeValue(attr)), 1)
17351
17387
  ]);
17352
17388
  }), 128))
17353
17389
  ])) : vue.createCommentVNode("", true)
@@ -17402,6 +17438,7 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
17402
17438
  productId: {},
17403
17439
  specificationsLayout: {},
17404
17440
  specificationsGrouping: { type: Boolean },
17441
+ specificationsPackageDescription: {},
17405
17442
  downloadsLabels: {},
17406
17443
  videosLabels: {},
17407
17444
  className: {},
@@ -17537,8 +17574,9 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
17537
17574
  attributes: getSpecsAttributes(),
17538
17575
  language: __props.language,
17539
17576
  layout: __props.specificationsLayout,
17540
- grouping: __props.specificationsGrouping
17541
- }, null, 8, ["attributes", "language", "layout", "grouping"]))
17577
+ grouping: __props.specificationsGrouping,
17578
+ "package-description": __props.specificationsPackageDescription
17579
+ }, null, 8, ["attributes", "language", "layout", "grouping", "package-description"]))
17542
17580
  ], 2)) : vue.createCommentVNode("", true),
17543
17581
  isActive("downloads") && isTabVisible("downloads") ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(ProductDownloadsImpl.value), {
17544
17582
  key: 2,
@@ -17622,8 +17660,9 @@ const _sfc_main$6 = /* @__PURE__ */ vue.defineComponent({
17622
17660
  attributes: getSpecsAttributes(),
17623
17661
  language: __props.language,
17624
17662
  layout: __props.specificationsLayout,
17625
- grouping: __props.specificationsGrouping
17626
- }, null, 8, ["attributes", "language", "layout", "grouping"]))
17663
+ grouping: __props.specificationsGrouping,
17664
+ "package-description": __props.specificationsPackageDescription
17665
+ }, null, 8, ["attributes", "language", "layout", "grouping", "package-description"]))
17627
17666
  ])) : vue.createCommentVNode("", true)
17628
17667
  ])) : vue.createCommentVNode("", true),
17629
17668
  isTabVisible("downloads") ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_14$5, [
@@ -19742,6 +19781,8 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
19742
19781
  containerClassName: {},
19743
19782
  taxZone: {},
19744
19783
  companyId: {},
19784
+ orderlistIds: {},
19785
+ applyOrderlists: { type: Boolean },
19745
19786
  configuration: {},
19746
19787
  clearSignal: {}
19747
19788
  },
@@ -19749,11 +19790,15 @@ const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({
19749
19790
  const props = __props;
19750
19791
  const infra = ProductVideos_vue_vue_type_script_setup_true_lang.useInfraProps(props);
19751
19792
  const companyRef = vue.computed(() => infra.companyId);
19793
+ const orderlistIdsRef = vue.computed(() => props.orderlistIds);
19794
+ const applyOrderlistsRef = vue.computed(() => props.applyOrderlists);
19752
19795
  const { search, searchResults, searchItemsFound, searchLoading } = useProductSearch({
19753
19796
  graphqlClient: infra.graphqlClient,
19754
19797
  language: vue.computed(() => infra.language || "NL"),
19755
19798
  configuration: infra.configuration || {},
19756
- companyId: companyRef
19799
+ companyId: companyRef,
19800
+ orderlistIds: orderlistIdsRef,
19801
+ applyOrderlists: applyOrderlistsRef
19757
19802
  });
19758
19803
  const searchTerm = vue.ref("");
19759
19804
  const results = vue.ref([]);