@licklist/design 0.71.18-dev.1 → 0.71.18-dev.11

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 (135) hide show
  1. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +1 -0
  2. package/dist/events/event-statistic-modal/utils/index.js +3 -3
  3. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.d.ts +18 -0
  4. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.d.ts.map +1 -0
  5. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.js +295 -0
  6. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.d.ts +15 -0
  7. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.d.ts.map +1 -0
  8. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.js +89 -0
  9. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.d.ts +14 -0
  10. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.d.ts.map +1 -0
  11. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.js +404 -0
  12. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.d.ts +10 -0
  13. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.d.ts.map +1 -0
  14. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.js +87 -0
  15. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/index.d.ts +2 -0
  16. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/index.d.ts.map +1 -0
  17. package/dist/iframe/ProductWithModifierModal/index.d.ts +2 -0
  18. package/dist/iframe/ProductWithModifierModal/index.d.ts.map +1 -0
  19. package/dist/iframe/ProductWithModifierModal/utils.d.ts +5 -0
  20. package/dist/iframe/ProductWithModifierModal/utils.d.ts.map +1 -0
  21. package/dist/iframe/ProductWithModifierModal/utils.js +21 -0
  22. package/dist/iframe/activity-card/ActivityCard.d.ts +1 -2
  23. package/dist/iframe/activity-card/ActivityCard.d.ts.map +1 -1
  24. package/dist/iframe/activity-card/ActivityCard.js +1 -7
  25. package/dist/iframe/event/ticket-description/TicketDescription.d.ts +2 -1
  26. package/dist/iframe/event/ticket-description/TicketDescription.d.ts.map +1 -1
  27. package/dist/iframe/event/ticket-description/TicketDescription.js +4 -3
  28. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.d.ts +1 -1
  29. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.d.ts.map +1 -1
  30. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.js +2 -1
  31. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.d.ts.map +1 -1
  32. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.js +15 -2
  33. package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts +1 -0
  34. package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts.map +1 -1
  35. package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts +4 -0
  36. package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts.map +1 -1
  37. package/dist/iframe/order-process/components/BookingSummary/utils/index.js +29 -2
  38. package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.d.ts.map +1 -1
  39. package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.js +106 -2
  40. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts +3 -1
  41. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts.map +1 -1
  42. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.js +95 -1
  43. package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.d.ts +23 -0
  44. package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.d.ts.map +1 -0
  45. package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.js +62 -0
  46. package/dist/iframe/order-process/components/CategoryProduct/constants.d.ts +2 -0
  47. package/dist/iframe/order-process/components/CategoryProduct/constants.d.ts.map +1 -0
  48. package/dist/iframe/order-process/components/CategoryProduct/constants.js +4 -0
  49. package/dist/iframe/order-process/components/utils/useOnWindowUnmount.d.ts +6 -0
  50. package/dist/iframe/order-process/components/utils/useOnWindowUnmount.d.ts.map +1 -0
  51. package/dist/iframe/order-process/components/utils/useOnWindowUnmount.js +18 -0
  52. package/dist/iframe/payment/order-items-table/hooks/useTableData.d.ts.map +1 -1
  53. package/dist/iframe/payment/order-items-table/hooks/useTableData.js +83 -10
  54. package/dist/iframe/payment/order-items-table/utils/index.d.ts.map +1 -1
  55. package/dist/iframe/payment/order-items-table/utils/index.js +15 -0
  56. package/dist/iframe/payment/order-items-table/utils/paymentSummary.js +2 -2
  57. package/dist/iframe/payment/payment-page/PaymentPage.d.ts.map +1 -1
  58. package/dist/iframe/payment/payment-page/PaymentPage.js +4 -1
  59. package/dist/index.js +1 -1
  60. package/dist/product-set/form/ProductSetForm.d.ts +3 -1
  61. package/dist/product-set/form/ProductSetForm.d.ts.map +1 -1
  62. package/dist/product-set/form/ProductSetForm.js +6 -4
  63. package/dist/product-set/form/ProductsControl.d.ts.map +1 -1
  64. package/dist/product-set/form/ProductsControl.js +24 -5
  65. package/dist/product-set/form/context.d.ts +3 -1
  66. package/dist/product-set/form/context.d.ts.map +1 -1
  67. package/dist/product-set/form/context.js +2 -1
  68. package/dist/product-set/product/ProductControl.d.ts +8 -0
  69. package/dist/product-set/product/ProductControl.d.ts.map +1 -1
  70. package/dist/product-set/product/ProductControl.js +25 -1
  71. package/dist/product-set/utils/index.d.ts +88 -0
  72. package/dist/product-set/utils/index.d.ts.map +1 -1
  73. package/dist/product-set/utils/index.js +19 -1
  74. package/dist/report/ReportRunnerModal/ReportRunnerModal.d.ts +1 -1
  75. package/dist/report/ReportRunnerModal/ReportRunnerModal.d.ts.map +1 -1
  76. package/dist/sales/coupon/utils/index.d.ts +2 -1
  77. package/dist/sales/coupon/utils/index.d.ts.map +1 -1
  78. package/dist/sales/modals/refund-modal/RefundModal.d.ts +6 -2
  79. package/dist/sales/modals/refund-modal/RefundModal.d.ts.map +1 -1
  80. package/dist/sales/modals/refund-modal/RefundModal.js +8 -4
  81. package/dist/sales/modals/refund-modal/index.d.ts +2 -2
  82. package/dist/sales/modals/refund-modal/index.d.ts.map +1 -1
  83. package/dist/styles/date-time-button/DateTimeButton.scss +8 -1
  84. package/dist/styles/events/EditEventModal.scss +2 -0
  85. package/dist/styles/iframe-page/Page.scss +16 -0
  86. package/dist/styles/iframe-page/PageBody.scss +4 -0
  87. package/dist/styles/modals/Modals.scss +16 -0
  88. package/dist/styles/product-set/EditProductSetElement.scss +1 -0
  89. package/dist/styles/product-set/ProductSetForm.scss +11 -0
  90. package/dist/styles/sales/ManualBooking.scss +6 -0
  91. package/dist/styles/themes/bookedit/index.scss +19 -0
  92. package/package.json +6 -6
  93. package/src/events/event-statistic-modal/utils/index.ts +4 -4
  94. package/src/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.tsx +212 -0
  95. package/src/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.tsx +75 -0
  96. package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.tsx +393 -0
  97. package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.tsx +98 -0
  98. package/src/iframe/ProductWithModifierModal/ModifierSetModal/index.ts +1 -0
  99. package/src/iframe/ProductWithModifierModal/index.ts +1 -0
  100. package/src/iframe/ProductWithModifierModal/utils.ts +29 -0
  101. package/src/iframe/activity-card/ActivityCard.stories.tsx +0 -2
  102. package/src/iframe/activity-card/ActivityCard.tsx +0 -4
  103. package/src/iframe/event/ticket-description/TicketDescription.tsx +5 -3
  104. package/src/iframe/order-process/components/BookingSummary/BookingSummary.tsx +2 -0
  105. package/src/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.tsx +21 -1
  106. package/src/iframe/order-process/components/BookingSummary/types/index.ts +1 -0
  107. package/src/iframe/order-process/components/BookingSummary/utils/index.ts +42 -1
  108. package/src/iframe/order-process/components/CategoryProduct/CategoryProduct.tsx +155 -75
  109. package/src/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.tsx +58 -1
  110. package/src/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.tsx +86 -0
  111. package/src/iframe/order-process/components/CategoryProduct/constants.ts +1 -0
  112. package/src/iframe/order-process/components/utils/useOnWindowUnmount.ts +25 -0
  113. package/src/iframe/payment/order-items-table/hooks/useTableData.tsx +84 -14
  114. package/src/iframe/payment/order-items-table/utils/index.ts +23 -0
  115. package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +2 -2
  116. package/src/iframe/payment/payment-page/PaymentPage.tsx +8 -10
  117. package/src/product-set/form/ProductSetForm.tsx +11 -3
  118. package/src/product-set/form/ProductsControl.tsx +33 -15
  119. package/src/product-set/form/context.tsx +5 -0
  120. package/src/product-set/product/ProductControl.tsx +37 -1
  121. package/src/product-set/utils/index.ts +19 -0
  122. package/src/report/ReportRunnerModal/ReportRunnerModal.tsx +2 -2
  123. package/src/sales/coupon/utils/index.ts +5 -3
  124. package/src/sales/modals/refund-modal/RefundModal.tsx +15 -6
  125. package/src/sales/modals/refund-modal/index.ts +7 -2
  126. package/src/styles/date-time-button/DateTimeButton.scss +8 -1
  127. package/src/styles/events/EditEventModal.scss +2 -0
  128. package/src/styles/iframe-page/Page.scss +16 -0
  129. package/src/styles/iframe-page/PageBody.scss +4 -0
  130. package/src/styles/modals/Modals.scss +16 -0
  131. package/src/styles/product-set/EditProductSetElement.scss +1 -0
  132. package/src/styles/product-set/ProductSetForm.scss +11 -0
  133. package/src/styles/sales/ManualBooking.scss +6 -0
  134. package/src/styles/themes/bookedit/index.scss +19 -0
  135. package/yarn.lock +334 -333
@@ -0,0 +1,18 @@
1
+ import { useEffect } from 'react';
2
+
3
+ var useOnWindowUnmount = function(param) {
4
+ var onBeforeUnload = param.onBeforeUnload, onPopState = param.onPopState;
5
+ useEffect(function() {
6
+ window.history.pushState(null, '', window.location.pathname);
7
+ window.addEventListener('beforeunload', onBeforeUnload);
8
+ window.addEventListener('popstate', onPopState);
9
+ return function() {
10
+ window.removeEventListener('beforeunload', onBeforeUnload);
11
+ window.removeEventListener('popstate', onPopState);
12
+ };
13
+ // eslint-disable-next-line react-hooks/exhaustive-deps
14
+ }, []);
15
+ return null;
16
+ };
17
+
18
+ export { useOnWindowUnmount };
@@ -1 +1 @@
1
- {"version":3,"file":"useTableData.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/payment/order-items-table/hooks/useTableData.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,EAAE,oBAAoB,EAAe,MAAM,UAAU,CAAA;AAI5D,eAAO,MAAM,2BAA2B;;;;CAIvC,CAAA;AAED,eAAO,MAAM,YAAY,oEAKtB,oBAAoB;;;;;;;;;;IA8GtB,CAAA"}
1
+ {"version":3,"file":"useTableData.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/payment/order-items-table/hooks/useTableData.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,EAAE,oBAAoB,EAAe,MAAM,UAAU,CAAA;AAQ5D,eAAO,MAAM,2BAA2B;;;;CAIvC,CAAA;AAED,eAAO,MAAM,YAAY,oEAKtB,oBAAoB;;;;;;;;;;IA+KtB,CAAA"}
@@ -1,10 +1,10 @@
1
1
  import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { useMemo } from 'react';
3
- import { uniqueId } from 'lodash';
3
+ import { flatten, flatMap, uniqueId } from 'lodash';
4
4
  import { useIntl } from 'react-intl';
5
5
  import { useTranslation } from 'react-i18next';
6
6
  import { PAYMENT_TYPE_NET_PROFIT, PAYMENT_TYPE_FEE, PAYMENT_TYPE_VAT } from '@licklist/core/dist/DataMapper/Order/PaymentDataMapper';
7
- import { getTotalSumByCategory, getProductQuantityAndPrice } from '../utils/index.js';
7
+ import { getTotalSumByCategory } from '../utils/index.js';
8
8
  import { getOrderSummaryItems } from '../utils/paymentSummary.js';
9
9
 
10
10
  function _array_like_to_array(arr, len) {
@@ -74,14 +74,68 @@ var useTableData = function(param) {
74
74
  price: wrapLabelContent("".concat(t('total'), ": ").concat(formatPrice(getTotalSumByCategory(order.orderProducts, products))))
75
75
  };
76
76
  };
77
- var renderProductItem = function(product) {
78
- var _getProductQuantityAndPrice = getProductQuantityAndPrice(order.orderProducts, product), quantity = _getProductQuantityAndPrice.quantity, price = _getProductQuantityAndPrice.price;
79
- if (quantity === 0) {
77
+ var reworkProductStructure = function(order) {
78
+ return order ? flatMap(order, function(item) {
79
+ if (!item || !Array.isArray(item)) return [];
80
+ return item.map(function(modGroup, idx) {
81
+ var _order_deletedAt, _order_orderId, _order_price, _order_productId, _modGroup_productQuantity, _order_deposit;
82
+ return {
83
+ deletedAt: (_order_deletedAt = order.deletedAt) !== null && _order_deletedAt !== void 0 ? _order_deletedAt : null,
84
+ id: "".concat(order.id, "-").concat(idx + 1),
85
+ orderId: (_order_orderId = order.orderId) !== null && _order_orderId !== void 0 ? _order_orderId : null,
86
+ price: (_order_price = order.price) !== null && _order_price !== void 0 ? _order_price : 0,
87
+ productId: (_order_productId = order.productId) !== null && _order_productId !== void 0 ? _order_productId : '',
88
+ quantity: (_modGroup_productQuantity = modGroup.productQuantity) !== null && _modGroup_productQuantity !== void 0 ? _modGroup_productQuantity : 1,
89
+ deposit: (_order_deposit = order.deposit) !== null && _order_deposit !== void 0 ? _order_deposit : 0,
90
+ orderProductModifiers: modGroup.modifiers.map(function(mod) {
91
+ var _mod_modifierId, _mod_price, _mod_productId, _mod_quantity, _mod_modifierSetId, _mod_modifier;
92
+ return {
93
+ modifierId: (_mod_modifierId = mod.modifierId) !== null && _mod_modifierId !== void 0 ? _mod_modifierId : '',
94
+ price: (_mod_price = mod.price) !== null && _mod_price !== void 0 ? _mod_price : 0,
95
+ productId: (_mod_productId = mod.productId) !== null && _mod_productId !== void 0 ? _mod_productId : '',
96
+ quantity: (_mod_quantity = mod.quantity) !== null && _mod_quantity !== void 0 ? _mod_quantity : 1,
97
+ modifierSetId: (_mod_modifierSetId = mod.modifierSetId) !== null && _mod_modifierSetId !== void 0 ? _mod_modifierSetId : '',
98
+ modifier: (_mod_modifier = mod.modifier) !== null && _mod_modifier !== void 0 ? _mod_modifier : null
99
+ };
100
+ })
101
+ };
102
+ });
103
+ }) : [];
104
+ };
105
+ var renderProductItem = function(param) {
106
+ var product = param.product, productsForCategory = param.productsForCategory;
107
+ var _productsForCategory_find, _product_orderProductModifiers;
108
+ if (product.quantity === 0) {
80
109
  return null;
81
110
  }
111
+ var name = ((_productsForCategory_find = productsForCategory.find(function(item) {
112
+ return item.id === product.productId;
113
+ })) === null || _productsForCategory_find === void 0 ? void 0 : _productsForCategory_find.name) || '';
82
114
  return {
83
115
  key: product.id,
84
- name: product.name,
116
+ name: name,
117
+ quantity: /*#__PURE__*/ jsxs("div", {
118
+ className: "quantity",
119
+ children: [
120
+ /*#__PURE__*/ jsx("div", {
121
+ className: "multiplier",
122
+ children: "x"
123
+ }),
124
+ product.quantity
125
+ ]
126
+ }),
127
+ price: formatPrice(product.price),
128
+ modifier: (product === null || product === void 0 ? void 0 : (_product_orderProductModifiers = product.orderProductModifiers) === null || _product_orderProductModifiers === void 0 ? void 0 : _product_orderProductModifiers.map(renderModifierItem)) || []
129
+ };
130
+ };
131
+ var renderModifierItem = function(orderModifier) {
132
+ var quantity = orderModifier.quantity, modifier = orderModifier.modifier, modifierId = orderModifier.modifierId, price = orderModifier.price;
133
+ if (quantity === 0) {
134
+ return null;
135
+ }
136
+ return {
137
+ key: modifierId,
138
+ name: " - ".concat((modifier === null || modifier === void 0 ? void 0 : modifier.name) || ''),
85
139
  quantity: /*#__PURE__*/ jsxs("div", {
86
140
  className: "quantity",
87
141
  children: [
@@ -100,19 +154,38 @@ var useTableData = function(param) {
100
154
  return product.productCategoryId;
101
155
  })));
102
156
  return productCategories.reduce(function(previousValues, categoryId) {
103
- var products = order.products.filter(function(product) {
157
+ var productsForCategory = order === null || order === void 0 ? void 0 : order.products.filter(function(product) {
104
158
  return product.productCategoryId === categoryId;
105
159
  });
160
+ var products = order.orderProducts.filter(function(el) {
161
+ return productsForCategory.map(function(product) {
162
+ return product.id;
163
+ }).includes(el.productId);
164
+ });
106
165
  if (!products.length) {
107
166
  return previousValues;
108
167
  }
109
- var filteredProducts = products.map(renderProductItem).filter(Boolean);
168
+ var productsWithReworkedModifier = products.map(function(product) {
169
+ if (!product.orderProductModifiers.length) return product;
170
+ return reworkProductStructure(product);
171
+ });
172
+ var filteredProducts = flatten(productsWithReworkedModifier).map(function(product) {
173
+ return renderProductItem({
174
+ product: product,
175
+ productsForCategory: productsForCategory
176
+ });
177
+ });
178
+ var productWithModifier = flatMap(filteredProducts, function(item) {
179
+ return [
180
+ item
181
+ ].concat(_to_consumable_array(item.modifier));
182
+ });
110
183
  if (!filteredProducts.length) {
111
184
  return previousValues;
112
185
  }
113
186
  return _to_consumable_array(previousValues).concat([
114
- renderCategoryItem(products)
115
- ], _to_consumable_array(filteredProducts));
187
+ renderCategoryItem(productsForCategory)
188
+ ], _to_consumable_array(productWithModifier));
116
189
  }, []);
117
190
  };
118
191
  var renderSummaryItems = function(summaryItems) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/payment/order-items-table/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAEN,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,0DAA0D,CAAA;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAA;AAS5F,oBAAY,mBAAmB;IAC7B,GAAG,QAAQ;IACX,UAAU,eAAe;IACzB,GAAG,QAAQ;CACZ;AAED,UAAU,qBAAqB;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,eAAO,MAAM,mBAAmB,UACvB,KAAK,2BACa,qBAAqB,EAAE,WAsBjD,CAAA;AAED,eAAO,MAAM,sBAAsB,aAAc,KAAK,CAAC,UAAU,CAAC,WAUjE,CAAA;AAED,eAAO,MAAM,0BAA0B,kBACtB,KAAK,CAAC,eAAe,CAAC,WAC5B,OAAO;;;CAMjB,CAAA;AAED,eAAO,MAAM,qBAAqB,aACtB,KAAK,CAAC,UAAU,CAAC,oBACT,MAAM,KACvB,MAgCF,CAAA;AAED,eAAO,MAAM,wBAAwB,kBAAmB,aAAa;;;GAIhE,CAAA;AAEL,eAAO,MAAM,qBAAqB,kBACjB,KAAK,CAAC,eAAe,CAAC,YAC3B,OAAO,EAAE,WASd,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/payment/order-items-table/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAEN,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,0DAA0D,CAAA;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAA;AAU5F,oBAAY,mBAAmB;IAC7B,GAAG,QAAQ;IACX,UAAU,eAAe;IACzB,GAAG,QAAQ;CACZ;AAED,UAAU,qBAAqB;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,eAAO,MAAM,mBAAmB,UACvB,KAAK,2BACa,qBAAqB,EAAE,WAuBjD,CAAA;AAED,eAAO,MAAM,sBAAsB,aAAc,KAAK,CAAC,UAAU,CAAC,WAUjE,CAAA;AAED,eAAO,MAAM,0BAA0B,kBACtB,KAAK,CAAC,eAAe,CAAC,WAC5B,OAAO;;;CAMjB,CAAA;AAED,eAAO,MAAM,qBAAqB,aACtB,KAAK,CAAC,UAAU,CAAC,oBACT,MAAM,KACvB,MAgCF,CAAA;AAED,eAAO,MAAM,wBAAwB,kBAAmB,aAAa;;;GAIhE,CAAA;AAEL,eAAO,MAAM,qBAAqB,kBACjB,KAAK,CAAC,eAAe,CAAC,YAC3B,OAAO,EAAE,WA8Bd,CAAA"}
@@ -91,7 +91,22 @@ var getExternalPaymentDetail = function(paymentDetail) {
91
91
  };
92
92
  var getTotalSumByCategory = function(orderProducts, products) {
93
93
  return products.reduce(function(prevSum, product) {
94
+ var _orderProducts_find;
94
95
  var _getProductQuantityAndPrice = getProductQuantityAndPrice(orderProducts, product), quantity = _getProductQuantityAndPrice.quantity, price = _getProductQuantityAndPrice.price;
96
+ var modifierFromProduct = (_orderProducts_find = orderProducts.find(function(orderProduct) {
97
+ return orderProduct.productId === product.id;
98
+ })) === null || _orderProducts_find === void 0 ? void 0 : _orderProducts_find.orderProductModifiers;
99
+ if (modifierFromProduct) {
100
+ var modifierPrice = modifierFromProduct.reduce(function(prevSum, param) {
101
+ var modifiers = param.modifiers;
102
+ var modifiersPrices = modifiers.reduce(function(prevSumModifier, modifier) {
103
+ return prevSumModifier + modifier.price * modifier.quantity;
104
+ }, 0);
105
+ return prevSum + modifiersPrices;
106
+ }, 0);
107
+ var priceWithModifier = price + modifierPrice;
108
+ return prevSum + priceWithModifier * quantity;
109
+ }
95
110
  return prevSum + price * quantity;
96
111
  }, 0);
97
112
  };
@@ -30,7 +30,7 @@ function _unsupported_iterable_to_array(o, minLen) {
30
30
  var paymentNotProcessedSummary = function(param) {
31
31
  var order = param.order, externalDiscount = param.externalDiscount, paymentDetail = param.paymentDetail;
32
32
  var externalPaymentDetail = paymentDetail ? getExternalPaymentDetail(paymentDetail) : undefined;
33
- var total = calculateTotalPrice(order, externalPaymentDetail);
33
+ var total = (order === null || order === void 0 ? void 0 : order.fullAmount) || calculateTotalPrice(order, externalPaymentDetail);
34
34
  var summaryItems = [
35
35
  {
36
36
  translateKey: AMOUNT_TOTAL,
@@ -56,7 +56,7 @@ var processedPaymentSummary = function(param) {
56
56
  price: getPaymentValueByType(order.payments, key)
57
57
  };
58
58
  });
59
- var total = calculateTotalPrice(order, externalPaymentDetail);
59
+ var total = order.fullAmount || calculateTotalPrice(order, externalPaymentDetail);
60
60
  var totalDiscount = calculateTotalDiscount(order.payments);
61
61
  var summaryItems = [
62
62
  {
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentPage.d.ts","sourceRoot":"","sources":["../../../../src/iframe/payment/payment-page/PaymentPage.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAA;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAA;AAI9F,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAA;AAOnC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAED,UAAU,YAAa,SAAQ,oBAAoB;IACjD,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAA;IACjC,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAA;IAChC,IAAI,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACjC,SAAS,EAAE,OAAO,CAAA;IAClB,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC;AAED,eAAO,MAAM,WAAW,kIAQrB,YAAY,4CAiNd,CAAA"}
1
+ {"version":3,"file":"PaymentPage.d.ts","sourceRoot":"","sources":["../../../../src/iframe/payment/payment-page/PaymentPage.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAA;AACpF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0DAA0D,CAAA;AAI9F,OAAO,EAEL,oBAAoB,EACrB,MAAM,4BAA4B,CAAA;AAOnC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AAED,UAAU,YAAa,SAAQ,oBAAoB;IACjD,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAA;IACjC,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAA;IAChC,IAAI,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAA;IACjC,SAAS,EAAE,OAAO,CAAA;IAClB,mBAAmB,EAAE,mBAAmB,CAAA;IACxC,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC;AAED,eAAO,MAAM,WAAW,kIAQrB,YAAY,4CA+Md,CAAA"}
@@ -189,6 +189,8 @@ var PaymentPage = function(_param) {
189
189
  var isCalculatedAmountGreaterThanOrderAmount = !hasRemaingToPay && orderCartAmountByFormValues > (data === null || data === void 0 ? void 0 : data.amount);
190
190
  var isPaymentLinkWithRemainingToPay = (data === null || data === void 0 ? void 0 : data.remaining_to_pay) && !!Number(data === null || data === void 0 ? void 0 : data.remaining_to_pay);
191
191
  var totalPaidWithRemainingToPay = (data === null || data === void 0 ? void 0 : data.amount_to_pay) && !!Number(data === null || data === void 0 ? void 0 : data.amount_to_pay);
192
+ var _bookingSummaryProps_transactionFee;
193
+ var totalBooked = paymentMetadata ? paymentMetadata.paid ? paymentMetadata.total - paymentMetadata.paid : paymentMetadata.total : orderTotalAmountByFormValues + ((_bookingSummaryProps_transactionFee = bookingSummaryProps === null || bookingSummaryProps === void 0 ? void 0 : bookingSummaryProps.transactionFee) !== null && _bookingSummaryProps_transactionFee !== void 0 ? _bookingSummaryProps_transactionFee : 0);
192
194
  return /*#__PURE__*/ jsx(Page, {
193
195
  className: "payment_link",
194
196
  children: /*#__PURE__*/ jsx(PageBody, {
@@ -205,8 +207,9 @@ var PaymentPage = function(_param) {
205
207
  rightBlock: /*#__PURE__*/ jsx(PageBody.RightBlock, {
206
208
  children: /*#__PURE__*/ jsx(BookingSummary, _object_spread_props(_object_spread({}, bookingSummaryProps), {
207
209
  isPaymentPage: true,
210
+ headerTitle: t('totalBooking'),
208
211
  headerComponent: /*#__PURE__*/ jsx(SummaryTotalBlock, {
209
- amount: paymentMetadata ? paymentMetadata.total : orderTotalAmountByFormValues + ((bookingSummaryProps === null || bookingSummaryProps === void 0 ? void 0 : bookingSummaryProps.transactionFee) || 0)
212
+ amount: totalBooked
210
213
  }),
211
214
  footer: /*#__PURE__*/ jsx("div", {
212
215
  className: "d-flex flex-column justify-content-between",
package/dist/index.js CHANGED
@@ -130,7 +130,7 @@ export { ManualBookingSummary } from './sales/manual-booking/summary/ManualBooki
130
130
  export { SearchUser } from './sales/manual-booking/search-user/SearchUser.js';
131
131
  export { SelectDateTypeControl } from './sales/manual-booking/select-date-type-control/SelectDateTypeControl.js';
132
132
  export { SelectMenu } from './sales/manual-booking/select-menu/SelectMenu.js';
133
- export { RefundModal } from './sales/modals/refund-modal/RefundModal.js';
133
+ export { FULL_REFUND_TYPE, NET_REFUND_TYPE, PARTIAL_REFUND_TYPE, RefundModal } from './sales/modals/refund-modal/RefundModal.js';
134
134
  export { PaymentModal } from './sales/modals/payment-modal/PaymentModal.js';
135
135
  export { SalePaymentForm } from './sales/payment-form/SalePaymentForm.js';
136
136
  export { RyftPayment } from './sales/payment-form/components/RyftPayment/RyftPayment.js';
@@ -1,6 +1,7 @@
1
1
  import { FormValues } from '@licklist/plugins/dist/types/services/Form/hook-form-service';
2
2
  import { VenueMapSet } from '@licklist/core/dist/DataMapper/Product/VenueMapSetDataMapper';
3
3
  import { ServerError } from '@licklist/plugins/dist/hooks/Api/useHttpQuery';
4
+ import { ModifierSet } from '@licklist/core/dist/DataMapper/Product/ModifierSetDataMapper';
4
5
  import { ProviderBookingManagementSetting } from '@licklist/core/dist/DataMapper/Provider/ProviderBookingManagementSettingDataMapper';
5
6
  import { Zone } from '@licklist/core/dist/DataMapper/Provider/ZoneDataMapper';
6
7
  import { WorkHour } from '@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper';
@@ -37,6 +38,7 @@ export interface ProductSetFormProps extends WithIsLoading, ProductSetControlSha
37
38
  saleDeadline?: number;
38
39
  isCreateNewOverrides?: boolean;
39
40
  timeZone: string;
41
+ modifiersSetList?: ModifierSet[];
40
42
  }
41
- export declare function ProductSetForm({ companyName, isLoading, defaultValues, onSubmitAndRedirect, onSubmitNoRedirect, productGroupList, serverErrors, providerHasMap, venueMapSets, providerHasBookingManagement, zones, isCreateAction, workHours, saleDeadline, isOverrides, isCreateNewOverrides, timeZone, ...shared }: ProductSetFormProps): import("react/jsx-runtime").JSX.Element;
43
+ export declare function ProductSetForm({ companyName, isLoading, defaultValues, onSubmitAndRedirect, onSubmitNoRedirect, productGroupList, modifiersSetList, serverErrors, providerHasMap, venueMapSets, providerHasBookingManagement, zones, isCreateAction, workHours, saleDeadline, isOverrides, isCreateNewOverrides, timeZone, ...shared }: ProductSetFormProps): import("react/jsx-runtime").JSX.Element;
42
44
  //# sourceMappingURL=ProductSetForm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProductSetForm.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductSetForm.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,8DAA8D,CAAA;AAIzF,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAA;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAK3E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oFAAoF,CAAA;AACrI,OAAO,EAAE,IAAI,EAAE,MAAM,wDAAwD,CAAA;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAA;AAGrF,OAAO,EAEL,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAI3D,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,OAAO,CAAA;CACnB;AACD,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAA;CACX;AACD,MAAM,WAAW,oBACf,SAAQ,UAAU,EAChB,cAAc,EACd,uBAAuB;IACzB,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,MAAM,WAAW,mBACf,SAAQ,aAAa,EACnB,uBAAuB;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,oBAAoB,CAAA;IACpC,mBAAmB,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAA;IAC3D,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAA;IAC3D,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAA;IAC/B,YAAY,CAAC,EAAE,WAAW,CAAA;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;IAC5B,4BAA4B,CAAC,EAAE,gCAAgC,CAAC,sBAAsB,CAAC,CAAA;IACvF,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;IACrB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,wBAAgB,cAAc,CAAC,EAC7B,WAAW,EACX,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,cAAsB,EACtB,YAAiB,EACjB,4BAA4B,EAC5B,KAAK,EACL,cAAc,EACd,SAAS,EACT,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,QAAQ,EACR,GAAG,MAAM,EACV,EAAE,mBAAmB,2CAiKrB"}
1
+ {"version":3,"file":"ProductSetForm.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductSetForm.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,8DAA8D,CAAA;AAIzF,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAA;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAE3E,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAA;AAI1F,OAAO,EAAE,gCAAgC,EAAE,MAAM,oFAAoF,CAAA;AACrI,OAAO,EAAE,IAAI,EAAE,MAAM,wDAAwD,CAAA;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAA;AAGrF,OAAO,EAEL,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAQ3D,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,OAAO,CAAA;CACnB;AACD,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAA;CACX;AACD,MAAM,WAAW,oBACf,SAAQ,UAAU,EAChB,cAAc,EACd,uBAAuB;IACzB,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,MAAM,WAAW,mBACf,SAAQ,aAAa,EACnB,uBAAuB;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,oBAAoB,CAAA;IACpC,mBAAmB,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAA;IAC3D,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAA;IAC3D,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAA;IAC/B,YAAY,CAAC,EAAE,WAAW,CAAA;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;IAC5B,4BAA4B,CAAC,EAAE,gCAAgC,CAAC,sBAAsB,CAAC,CAAA;IACvF,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;IACrB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,gBAAgB,CAAC,EAAE,WAAW,EAAE,CAAA;CACjC;AAED,wBAAgB,cAAc,CAAC,EAC7B,WAAW,EACX,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,cAAsB,EACtB,YAAiB,EACjB,4BAA4B,EAC5B,KAAK,EACL,cAAc,EACd,SAAS,EACT,YAAY,EACZ,WAAW,EACX,oBAAoB,EACpB,QAAQ,EACR,GAAG,MAAM,EACV,EAAE,mBAAmB,2CAkKrB"}
@@ -10,7 +10,7 @@ import { Dialog } from '../../modals/dialog/Dialog.js';
10
10
  import { useDialogContext } from '../../modals/dialog/DialogContext.js';
11
11
  import { ProductSetControl } from '../control/ProductSetControl.js';
12
12
  import { ProductSetContextProvider, ProductSetLoadingContext } from './context.js';
13
- import { getFilteredTemplates, checkAvailableTimesErrors } from '../utils/index.js';
13
+ import { updateModifiersSetAtProductSetForm, getFilteredTemplates, checkAvailableTimesErrors } from '../utils/index.js';
14
14
  import { ErrorModal } from '../../iframe/order-process/components/ErrorModal/ErrorModal.js';
15
15
 
16
16
  function _array_like_to_array(arr, len) {
@@ -139,13 +139,14 @@ function _unsupported_iterable_to_array(o, minLen) {
139
139
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
140
140
  }
141
141
  function ProductSetForm(_param) {
142
- var companyName = _param.companyName, isLoading = _param.isLoading, defaultValues = _param.defaultValues, onSubmitAndRedirect = _param.onSubmitAndRedirect, onSubmitNoRedirect = _param.onSubmitNoRedirect, productGroupList = _param.productGroupList, serverErrors = _param.serverErrors, _param_providerHasMap = _param.providerHasMap, providerHasMap = _param_providerHasMap === void 0 ? false : _param_providerHasMap, _param_venueMapSets = _param.venueMapSets, venueMapSets = _param_venueMapSets === void 0 ? [] : _param_venueMapSets, providerHasBookingManagement = _param.providerHasBookingManagement, zones = _param.zones, isCreateAction = _param.isCreateAction, workHours = _param.workHours; _param.saleDeadline; var isOverrides = _param.isOverrides, isCreateNewOverrides = _param.isCreateNewOverrides, timeZone = _param.timeZone, shared = _object_without_properties(_param, [
142
+ var companyName = _param.companyName, isLoading = _param.isLoading, defaultValues = _param.defaultValues, onSubmitAndRedirect = _param.onSubmitAndRedirect, onSubmitNoRedirect = _param.onSubmitNoRedirect, productGroupList = _param.productGroupList, modifiersSetList = _param.modifiersSetList, serverErrors = _param.serverErrors, _param_providerHasMap = _param.providerHasMap, providerHasMap = _param_providerHasMap === void 0 ? false : _param_providerHasMap, _param_venueMapSets = _param.venueMapSets, venueMapSets = _param_venueMapSets === void 0 ? [] : _param_venueMapSets, providerHasBookingManagement = _param.providerHasBookingManagement, zones = _param.zones, isCreateAction = _param.isCreateAction, workHours = _param.workHours; _param.saleDeadline; var isOverrides = _param.isOverrides, isCreateNewOverrides = _param.isCreateNewOverrides, timeZone = _param.timeZone, shared = _object_without_properties(_param, [
143
143
  "companyName",
144
144
  "isLoading",
145
145
  "defaultValues",
146
146
  "onSubmitAndRedirect",
147
147
  "onSubmitNoRedirect",
148
148
  "productGroupList",
149
+ "modifiersSetList",
149
150
  "serverErrors",
150
151
  "providerHasMap",
151
152
  "venueMapSets",
@@ -162,7 +163,7 @@ function ProductSetForm(_param) {
162
163
  var _useDialogContext = useDialogContext(), isShownDialog = _useDialogContext.isShownDialog, onBeforeUnload = _useDialogContext.onBeforeUnload, onPopState = _useDialogContext.onPopState, onApproveDialog = _useDialogContext.onApproveDialog, onDeclineDialog = _useDialogContext.onDeclineDialog;
163
164
  var _useState = _sliced_to_array(useState(''), 2), errorMessage = _useState[0], setErrorMessage = _useState[1];
164
165
  var form = useForm({
165
- defaultValues: defaultValues,
166
+ defaultValues: updateModifiersSetAtProductSetForm(defaultValues),
166
167
  mode: 'onChange'
167
168
  });
168
169
  var setError = form.setError, reset = form.reset;
@@ -183,7 +184,7 @@ function ProductSetForm(_param) {
183
184
  if (!defaultValues || isEqual(defaultValues, formValues)) {
184
185
  return;
185
186
  }
186
- reset(defaultValues);
187
+ reset(updateModifiersSetAtProductSetForm(defaultValues));
187
188
  // eslint-disable-next-line react-hooks/exhaustive-deps
188
189
  }, [
189
190
  defaultValues
@@ -217,6 +218,7 @@ function ProductSetForm(_param) {
217
218
  return /*#__PURE__*/ jsxs(ProductSetContextProvider, {
218
219
  productGroupList: productGroupList,
219
220
  providerHasMap: providerHasMap,
221
+ modifiersSetList: modifiersSetList,
220
222
  venueMapSets: venueMapSets,
221
223
  providerHasBookingManagement: providerHasBookingManagement,
222
224
  zones: zones,
@@ -1 +1 @@
1
- {"version":3,"file":"ProductsControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductsControl.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,YAAY,EAAE,MAAM,kEAAkE,CAAA;AAC/F,OAAO,EAAkB,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,IAAI,CAAA;AAI9E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAQhD,UAAU,oBAAqB,SAAQ,aAAa;IAClD,YAAY,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC,cAAc,CAAC,CAAA;IACvE,SAAS,EAAE,MAAM,CAAA;IACjB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,EAAE,YAAY,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B;AA6BD,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,oBAAoB,GACrB,EAAE,oBAAoB,2CAkOtB"}
1
+ {"version":3,"file":"ProductsControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductsControl.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,YAAY,EAAE,MAAM,kEAAkE,CAAA;AAC/F,OAAO,EAAkB,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,IAAI,CAAA;AAI9E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAQhD,UAAU,oBAAqB,SAAQ,aAAa;IAClD,YAAY,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC,cAAc,CAAC,CAAA;IACvE,SAAS,EAAE,MAAM,CAAA;IACjB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,EAAE,YAAY,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAA;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B;AA+BD,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,SAAS,EACT,YAAY,EACZ,WAAW,EACX,qBAAqB,EACrB,oBAAoB,GACrB,EAAE,oBAAoB,2CAkPtB"}
@@ -112,6 +112,8 @@ var getDefaultProductValue = function(sort) {
112
112
  maxQuantity: null,
113
113
  totalQuantity: 0,
114
114
  isAvailable: true,
115
+ modifiersSet: [],
116
+ modifiersSetsId: [],
115
117
  isSoldOut: false,
116
118
  isRequired: false,
117
119
  isUnlimited: false,
@@ -166,6 +168,12 @@ function ProductsControl(param) {
166
168
  return "".concat(productControlFieldName, ".").concat(index, ".isUnlimited");
167
169
  }))
168
170
  });
171
+ var modifierSets = useWatch({
172
+ control: control,
173
+ name: _to_consumable_array(fields.map(function(_, index) {
174
+ return "".concat(productControlFieldName, ".").concat(index, ".modifiersSet");
175
+ }))
176
+ });
169
177
  var categoryProductErrors = errors === null || errors === void 0 ? void 0 : (_errors_steps = errors.steps) === null || _errors_steps === void 0 ? void 0 : (_errors_steps_stepIndex = _errors_steps[stepIndex]) === null || _errors_steps_stepIndex === void 0 ? void 0 : (_errors_steps_stepIndex_productCategories = _errors_steps_stepIndex.productCategories) === null || _errors_steps_stepIndex_productCategories === void 0 ? void 0 : (_errors_steps_stepIndex_productCategories_productCategoryIndex = _errors_steps_stepIndex_productCategories[productCategoryIndex]) === null || _errors_steps_stepIndex_productCategories_productCategoryIndex === void 0 ? void 0 : _errors_steps_stepIndex_productCategories_productCategoryIndex.products;
170
178
  var isFirstProductAdded = fields.length === 1;
171
179
  var mouseSensor = useSensor(MouseSensor, {
@@ -209,8 +217,10 @@ function ProductsControl(param) {
209
217
  mouseSensor
210
218
  ],
211
219
  children: fields.map(function(product, index) {
220
+ var _modifierSets_index;
212
221
  var isOverridesProductSet = isEventEditProductSet ? !!product.id : isOverrides && !!product.originalProductId;
213
222
  var isNewProductOverrides = isCreateNewOverrides && !!product.id;
223
+ var modifiersSets = ((_modifierSets_index = modifierSets[index]) === null || _modifierSets_index === void 0 ? void 0 : _modifierSets_index.length) || 0;
214
224
  return /*#__PURE__*/ jsx(Controller, {
215
225
  control: control,
216
226
  name: "".concat(productControlFieldName, ".").concat(index, ".name"),
@@ -240,13 +250,22 @@ function ProductsControl(param) {
240
250
  },
241
251
  secondaryBadge: getBadgeConfig(categoryType, t(categoryType)),
242
252
  subTitle: /*#__PURE__*/ jsxs("div", {
243
- className: "product-set-badges-container",
253
+ className: "d-flex justify-content-between",
244
254
  children: [
245
- /*#__PURE__*/ jsx("div", {
246
- className: "product-set-subtitle-dot product-set-subtitle-product-dot"
255
+ /*#__PURE__*/ jsxs("div", {
256
+ className: "product-set-badges-container",
257
+ children: [
258
+ /*#__PURE__*/ jsx("div", {
259
+ className: "product-set-subtitle-dot product-set-subtitle-product-dot"
260
+ }),
261
+ /*#__PURE__*/ jsx("span", {
262
+ children: "\xa3".concat(prices[index], " ").concat(t('each'), " - ").concat(t('qty'), ":").concat(!isUnlimitedQuantities[index] ? " ".concat(quantities[index]) : t(' unlimited'), " ").concat(!isUnlimitedQuantities[index] ? " - ".concat(t('possibleRevenue'), " \xa3").concat(prices[index] * quantities[index]) : '', " ")
263
+ })
264
+ ]
247
265
  }),
248
- /*#__PURE__*/ jsx("span", {
249
- children: "\xa3".concat(prices[index], " ").concat(t('each'), " - ").concat(t('qty'), ":").concat(!isUnlimitedQuantities[index] ? " ".concat(quantities[index]) : t(' unlimited'), " ").concat(!isUnlimitedQuantities[index] ? " - ".concat(t('possibleRevenue'), " \xa3").concat(prices[index] * quantities[index]) : '', " ")
266
+ !!modifiersSets && /*#__PURE__*/ jsx(Badge, {
267
+ className: "modifier-badge",
268
+ children: "".concat(modifiersSets, " ").concat(t('modifiersSets'))
250
269
  })
251
270
  ]
252
271
  }),
@@ -1,5 +1,6 @@
1
1
  import { PropsWithChildren, SetStateAction, Dispatch } from 'react';
2
2
  import { VenueMapSet } from '@licklist/core/dist/DataMapper/Product/VenueMapSetDataMapper';
3
+ import { ModifierSet } from '@licklist/core/dist/DataMapper/Product/ModifierSetDataMapper';
3
4
  import { ProviderBookingManagementSetting } from '@licklist/core/dist/DataMapper/Provider/ProviderBookingManagementSettingDataMapper';
4
5
  import { Zone } from '@licklist/core/dist/DataMapper/Provider/ZoneDataMapper';
5
6
  import { SelectItem } from '../../types/generic/SelectItem';
@@ -7,6 +8,7 @@ interface LoadingContext {
7
8
  isLoading: boolean;
8
9
  setLoading: (loading: boolean) => void;
9
10
  productGroupList?: SelectItem[];
11
+ modifiersSetList?: ModifierSet[] | null;
10
12
  providerHasMap?: boolean | null;
11
13
  venueMapSets?: VenueMapSet[];
12
14
  providerHasBookingManagement?: ProviderBookingManagementSetting['hasBookingManagement'];
@@ -16,6 +18,6 @@ interface LoadingContext {
16
18
  }
17
19
  export declare const ProductSetLoadingContext: import("react").Context<LoadingContext>;
18
20
  type ProductSetContextProviderProps = PropsWithChildren<Omit<LoadingContext, 'isLoading' | 'setLoading' | 'expandedProductCategories' | 'setExpandedProductCategories'>>;
19
- export declare function ProductSetContextProvider({ children, productGroupList, providerHasMap, venueMapSets, providerHasBookingManagement, zones, }: ProductSetContextProviderProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function ProductSetContextProvider({ children, productGroupList, modifiersSetList, providerHasMap, venueMapSets, providerHasBookingManagement, zones, }: ProductSetContextProviderProps): import("react/jsx-runtime").JSX.Element;
20
22
  export {};
21
23
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/context.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EAId,QAAQ,EACT,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAA;AAE1F,OAAO,EAAE,gCAAgC,EAAE,MAAM,oFAAoF,CAAA;AACrI,OAAO,EAAE,IAAI,EAAE,MAAM,wDAAwD,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAE3D,UAAU,cAAc;IACtB,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAA;IAC/B,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IAC/B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;IAC5B,4BAA4B,CAAC,EAAE,gCAAgC,CAAC,sBAAsB,CAAC,CAAA;IACvF,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;IACrB,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClD,4BAA4B,EAAE,QAAQ,CACpC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CACxC,CAAA;CACF;AAED,eAAO,MAAM,wBAAwB,yCAEpC,CAAA;AAED,KAAK,8BAA8B,GAAG,iBAAiB,CACrD,IAAI,CACF,cAAc,EACZ,WAAW,GACX,YAAY,GACZ,2BAA2B,GAC3B,8BAA8B,CACjC,CACF,CAAA;AAED,wBAAgB,yBAAyB,CAAC,EACxC,QAAQ,EACR,gBAAqB,EACrB,cAAsB,EACtB,YAAiB,EACjB,4BAA4B,EAC5B,KAAK,GACN,EAAE,8BAA8B,2CA0BhC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/context.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EAId,QAAQ,EACT,MAAM,OAAO,CAAA;AACd,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAA;AAC1F,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAA;AAE1F,OAAO,EAAE,gCAAgC,EAAE,MAAM,oFAAoF,CAAA;AACrI,OAAO,EAAE,IAAI,EAAE,MAAM,wDAAwD,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAG3D,UAAU,cAAc;IACtB,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAA;IAC/B,gBAAgB,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAA;IACvC,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;IAC/B,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;IAC5B,4BAA4B,CAAC,EAAE,gCAAgC,CAAC,sBAAsB,CAAC,CAAA;IACvF,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;IACrB,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAClD,4BAA4B,EAAE,QAAQ,CACpC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CACxC,CAAA;CACF;AAED,eAAO,MAAM,wBAAwB,yCAEpC,CAAA;AAED,KAAK,8BAA8B,GAAG,iBAAiB,CACrD,IAAI,CACF,cAAc,EACZ,WAAW,GACX,YAAY,GACZ,2BAA2B,GAC3B,8BAA8B,CACjC,CACF,CAAA;AAED,wBAAgB,yBAAyB,CAAC,EACxC,QAAQ,EACR,gBAAqB,EACrB,gBAAoB,EACpB,cAAsB,EACtB,YAAiB,EACjB,4BAA4B,EAC5B,KAAK,GACN,EAAE,8BAA8B,2CA2BhC"}
@@ -49,7 +49,7 @@ function _unsupported_iterable_to_array(o, minLen) {
49
49
  }
50
50
  var ProductSetLoadingContext = /*#__PURE__*/ createContext(null);
51
51
  function ProductSetContextProvider(param) {
52
- var children = param.children, _param_productGroupList = param.productGroupList, productGroupList = _param_productGroupList === void 0 ? [] : _param_productGroupList, _param_providerHasMap = param.providerHasMap, providerHasMap = _param_providerHasMap === void 0 ? false : _param_providerHasMap, _param_venueMapSets = param.venueMapSets, venueMapSets = _param_venueMapSets === void 0 ? [] : _param_venueMapSets, providerHasBookingManagement = param.providerHasBookingManagement, zones = param.zones;
52
+ var children = param.children, _param_productGroupList = param.productGroupList, productGroupList = _param_productGroupList === void 0 ? [] : _param_productGroupList, _param_modifiersSetList = param.modifiersSetList, modifiersSetList = _param_modifiersSetList === void 0 ? [] : _param_modifiersSetList, _param_providerHasMap = param.providerHasMap, providerHasMap = _param_providerHasMap === void 0 ? false : _param_providerHasMap, _param_venueMapSets = param.venueMapSets, venueMapSets = _param_venueMapSets === void 0 ? [] : _param_venueMapSets, providerHasBookingManagement = param.providerHasBookingManagement, zones = param.zones;
53
53
  var _useState = _sliced_to_array(useState(undefined), 2), zonesState = _useState[0], setZonesState = _useState[1];
54
54
  var _useState1 = _sliced_to_array(useState(false), 2), loading = _useState1[0], setLoading = _useState1[1];
55
55
  var _useState2 = _sliced_to_array(useState({}), 2), expandedProductCategories = _useState2[0], setExpandedProductCategories = _useState2[1];
@@ -63,6 +63,7 @@ function ProductSetContextProvider(param) {
63
63
  isLoading: loading,
64
64
  setLoading: setLoading,
65
65
  productGroupList: productGroupList,
66
+ modifiersSetList: modifiersSetList,
66
67
  providerHasMap: providerHasMap,
67
68
  venueMapSets: venueMapSets,
68
69
  providerHasBookingManagement: providerHasBookingManagement,
@@ -7,6 +7,12 @@ import { ProductBookingManagementControlProps } from './booking-management/Produ
7
7
  import { ProductDepositControlValues } from './deposit/ProductDepositControl';
8
8
  import { IsDeletableEvent } from '../types';
9
9
  import { ProductZoneControlValues } from '../product-zone';
10
+ export interface ModifiersSet {
11
+ id: number;
12
+ value?: string;
13
+ name?: string;
14
+ label?: string;
15
+ }
10
16
  export interface ProductControlValues extends FormValues, ProductDepositControlValues {
11
17
  name: string;
12
18
  productGroupId: number;
@@ -26,6 +32,8 @@ export interface ProductControlValues extends FormValues, ProductDepositControlV
26
32
  hasSpecialNotes: boolean;
27
33
  minSpend?: number | null;
28
34
  type?: ProductType;
35
+ modifiersSetsId?: Array<ModifiersSet>;
36
+ modifiersSet?: Array<ModifiersSet>;
29
37
  weight?: number;
30
38
  tierId?: number;
31
39
  images: Image[] | null;
@@ -1 +1 @@
1
- {"version":3,"file":"ProductControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/product/ProductControl.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,YAAY,EAIb,MAAM,kEAAkE,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,0DAA0D,CAAA;AAGtF,OAAO,EACL,mBAAmB,EACnB,UAAU,EACX,MAAM,8DAA8D,CAAA;AAErE,OAAO,EACL,WAAW,EAKZ,MAAM,OAAO,CAAA;AAed,OAAO,EACL,KAAK,EAEN,MAAM,sDAAsD,CAAA;AAO7D,OAAO,EAEL,oCAAoC,EACrC,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EAEL,2BAA2B,EAC5B,MAAM,iCAAiC,CAAA;AAOxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAG3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAM1D,MAAM,WAAW,oBACf,SAAQ,UAAU,EAChB,2BAA2B;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,OAAO,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,WAAW,EAAE,OAAO,CAAA;IACpB,UAAU,EAAE,OAAO,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,wBAAwB,EAAE,CAAA;CAC1C;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,CACpC,SAAQ,gBAAgB,EACtB,mBAAmB,CAAC,CAAC,CAAC,EACtB,oCAAoC,CAAC,CAAC,CAAC;IACzC,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,YAAY,CAAA;IAC1B,aAAa,EAAE,OAAO,CAAA;IACtB,oBAAoB,EAAE,OAAO,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,mBAAmB,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IAC/D,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,EACnD,SAAiB,EACjB,eAAe,EACf,aAAqB,EACrB,oBAA4B,EAC5B,QAAa,EACb,MAAM,EACN,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,YAAY,EACZ,WAAmB,GACpB,EAAE,mBAAmB,CAAC,CAAC,CAAC,2CAwWxB"}
1
+ {"version":3,"file":"ProductControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/product/ProductControl.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,YAAY,EAIb,MAAM,kEAAkE,CAAA;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,0DAA0D,CAAA;AAGtF,OAAO,EACL,mBAAmB,EACnB,UAAU,EACX,MAAM,8DAA8D,CAAA;AAErE,OAAO,EACL,WAAW,EAKZ,MAAM,OAAO,CAAA;AAed,OAAO,EACL,KAAK,EAEN,MAAM,sDAAsD,CAAA;AAS7D,OAAO,EAEL,oCAAoC,EACrC,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EAEL,2BAA2B,EAC5B,MAAM,iCAAiC,CAAA;AAOxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAG3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAK1D,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAID,MAAM,WAAW,oBACf,SAAQ,UAAU,EAChB,2BAA2B;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,OAAO,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,WAAW,EAAE,OAAO,CAAA;IACpB,UAAU,EAAE,OAAO,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB,eAAe,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;IACrC,YAAY,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,CAAA;IAClC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,wBAAwB,EAAE,CAAA;CAC1C;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,CACpC,SAAQ,gBAAgB,EACtB,mBAAmB,CAAC,CAAC,CAAC,EACtB,oCAAoC,CAAC,CAAC,CAAC;IACzC,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,YAAY,CAAA;IAC1B,aAAa,EAAE,OAAO,CAAA;IACtB,oBAAoB,EAAE,OAAO,CAAA;IAC7B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,mBAAmB,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IAC/D,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAA;CAEtB;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,EACnD,SAAiB,EACjB,eAAe,EACf,aAAqB,EACrB,oBAA4B,EAC5B,QAAa,EACb,MAAM,EACN,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,YAAY,EACZ,WAAmB,GACpB,EAAE,mBAAmB,CAAC,CAAC,CAAC,2CA+XxB"}
@@ -13,6 +13,8 @@ import { useTranslation } from 'react-i18next';
13
13
  import { useImages } from '@licklist/plugins/dist/hooks/Media/useImages';
14
14
  import { IMAGE_TYPE_IMAGE } from '@licklist/core/dist/DataMapper/Media/ImageDataMapper';
15
15
  import { FaClipboard } from 'react-icons/fa';
16
+ import { Typeahead } from '../../typeahead/Typeahead.js';
17
+ import { convertToTypeaheadOptions } from '../../sales/coupon/utils/index.js';
16
18
  import { checkIfZoneCategory } from '@licklist/plugins';
17
19
  import { FileUpload } from '../../file-upload/FileUpload.js';
18
20
  import '../../static/index.js';
@@ -130,7 +132,7 @@ function _unsupported_iterable_to_array(o, minLen) {
130
132
  function ProductControl(param) {
131
133
  var _param_isLoading = param.isLoading, isLoading = _param_isLoading === void 0 ? false : _param_isLoading, fieldNamePrefix = param.fieldNamePrefix, _param_allowDeposits = param.allowDeposits, allowDeposits = _param_allowDeposits === void 0 ? false : _param_allowDeposits, _param_hasBookingManagement = param.hasBookingManagement, hasBookingManagement = _param_hasBookingManagement === void 0 ? false : _param_hasBookingManagement, _param_zoneList = param.zoneList, zoneList = _param_zoneList === void 0 ? [] : _param_zoneList, onCopy = param.onCopy, onProductNameChange = param.onProductNameChange, productName = param.productName, hasTicket = param.hasTicket, categoryType = param.categoryType, _param_isOverrides = param.isOverrides, isOverrides = _param_isOverrides === void 0 ? false : _param_isOverrides;
132
134
  var _useFormContext = useFormContext(), register = _useFormContext.register, control = _useFormContext.control, errors = _useFormContext.formState.errors, setValue = _useFormContext.setValue, getValues = _useFormContext.getValues, watch = _useFormContext.watch;
133
- var setLoading = useContext(ProductSetLoadingContext).setLoading;
135
+ var _useContext = useContext(ProductSetLoadingContext), setLoading = _useContext.setLoading, modifiersSetList = _useContext.modifiersSetList;
134
136
  var t = useTranslation([
135
137
  'Design',
136
138
  'Validation',
@@ -206,6 +208,7 @@ function ProductControl(param) {
206
208
  ]);
207
209
  var quantitySelector = quantityValue !== null && quantityValue !== void 0 ? quantityValue : '1';
208
210
  var quantity = QUANTITY_TYPE_LIST_DTO[quantitySelector];
211
+ var modifierList = convertToTypeaheadOptions(modifiersSetList);
209
212
  return /*#__PURE__*/ jsxs(Fragment, {
210
213
  children: [
211
214
  /*#__PURE__*/ jsx(Row, {
@@ -349,6 +352,27 @@ function ProductControl(param) {
349
352
  ]
350
353
  })
351
354
  }),
355
+ /*#__PURE__*/ jsx(Row, {
356
+ children: /*#__PURE__*/ jsx(Col, {
357
+ children: /*#__PURE__*/ jsxs(Form.Group, {
358
+ className: "mb-3",
359
+ children: [
360
+ /*#__PURE__*/ jsx(Form.Label, {
361
+ children: t('Design:addModifierSet')
362
+ }),
363
+ /*#__PURE__*/ jsx(Typeahead, _object_spread_props(_object_spread({
364
+ name: "modifierList",
365
+ options: modifierList
366
+ }, register("".concat(fieldNamePrefix, ".modifiersSet"))), {
367
+ isMultipleChoise: true,
368
+ isCouponForm: true,
369
+ placeholder: t('Design:choose'),
370
+ noOptionsMessage: t('Design:noSelectedModifier')
371
+ }))
372
+ ]
373
+ })
374
+ })
375
+ }),
352
376
  /*#__PURE__*/ jsxs(Row, {
353
377
  className: "my-4 mx-0 d-flex flex-column",
354
378
  children: [