@licklist/design 0.71.18-dev.3 → 0.71.18-dev.4
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/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +1 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.d.ts +18 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.d.ts.map +1 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.js +281 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.d.ts +15 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.d.ts.map +1 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.js +89 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.d.ts +16 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.d.ts.map +1 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.js +447 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.d.ts +12 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.d.ts.map +1 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.js +45 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/index.d.ts +2 -0
- package/dist/iframe/ProductWithModifierModal/ModifierSetModal/index.d.ts.map +1 -0
- package/dist/iframe/ProductWithModifierModal/index.d.ts +2 -0
- package/dist/iframe/ProductWithModifierModal/index.d.ts.map +1 -0
- package/dist/iframe/event/ticket-description/TicketDescription.d.ts +2 -1
- package/dist/iframe/event/ticket-description/TicketDescription.d.ts.map +1 -1
- package/dist/iframe/event/ticket-description/TicketDescription.js +4 -3
- package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.d.ts.map +1 -1
- package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.js +29 -2
- package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts +4 -0
- package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts.map +1 -1
- package/dist/iframe/order-process/components/BookingSummary/utils/index.js +27 -2
- package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.d.ts.map +1 -1
- package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.js +106 -2
- package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts +3 -1
- package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts.map +1 -1
- package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.js +95 -1
- package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.d.ts +22 -0
- package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.d.ts.map +1 -0
- package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.js +62 -0
- package/dist/iframe/order-process/components/CategoryProduct/constants.d.ts +2 -0
- package/dist/iframe/order-process/components/CategoryProduct/constants.d.ts.map +1 -0
- package/dist/iframe/order-process/components/CategoryProduct/constants.js +4 -0
- package/dist/iframe/order-process/components/utils/useOnWindowUnmount.d.ts +6 -0
- package/dist/iframe/order-process/components/utils/useOnWindowUnmount.d.ts.map +1 -0
- package/dist/iframe/order-process/components/utils/useOnWindowUnmount.js +18 -0
- package/dist/iframe/payment/order-items-table/hooks/useTableData.d.ts.map +1 -1
- package/dist/iframe/payment/order-items-table/hooks/useTableData.js +83 -10
- package/dist/iframe/payment/order-items-table/utils/index.d.ts.map +1 -1
- package/dist/iframe/payment/order-items-table/utils/index.js +15 -0
- package/dist/iframe/payment/order-items-table/utils/paymentSummary.js +2 -2
- package/dist/product-set/form/ProductSetForm.d.ts +3 -1
- package/dist/product-set/form/ProductSetForm.d.ts.map +1 -1
- package/dist/product-set/form/ProductSetForm.js +6 -4
- package/dist/product-set/form/ProductsControl.d.ts.map +1 -1
- package/dist/product-set/form/ProductsControl.js +17 -5
- package/dist/product-set/form/context.d.ts +3 -1
- package/dist/product-set/form/context.d.ts.map +1 -1
- package/dist/product-set/form/context.js +2 -1
- package/dist/product-set/product/ProductControl.d.ts +8 -0
- package/dist/product-set/product/ProductControl.d.ts.map +1 -1
- package/dist/product-set/product/ProductControl.js +25 -1
- package/dist/product-set/utils/index.d.ts +88 -0
- package/dist/product-set/utils/index.d.ts.map +1 -1
- package/dist/product-set/utils/index.js +19 -1
- package/dist/sales/coupon/utils/index.d.ts +2 -1
- package/dist/sales/coupon/utils/index.d.ts.map +1 -1
- package/dist/styles/iframe-page/Page.scss +16 -0
- package/dist/styles/iframe-page/PageBody.scss +4 -0
- package/dist/styles/modals/Modals.scss +16 -0
- package/dist/styles/product-set/ProductSetForm.scss +10 -0
- package/dist/styles/sales/ManualBooking.scss +6 -0
- package/dist/styles/themes/bookedit/index.scss +14 -0
- package/package.json +6 -6
- package/src/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.tsx +205 -0
- package/src/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.tsx +75 -0
- package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.tsx +471 -0
- package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.tsx +55 -0
- package/src/iframe/ProductWithModifierModal/ModifierSetModal/index.ts +1 -0
- package/src/iframe/ProductWithModifierModal/index.ts +1 -0
- package/src/iframe/event/ticket-description/TicketDescription.tsx +5 -3
- package/src/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.tsx +32 -1
- package/src/iframe/order-process/components/BookingSummary/utils/index.ts +45 -1
- package/src/iframe/order-process/components/CategoryProduct/CategoryProduct.tsx +155 -75
- package/src/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.tsx +58 -1
- package/src/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.tsx +84 -0
- package/src/iframe/order-process/components/CategoryProduct/constants.ts +1 -0
- package/src/iframe/order-process/components/utils/useOnWindowUnmount.ts +25 -0
- package/src/iframe/payment/order-items-table/hooks/useTableData.tsx +84 -14
- package/src/iframe/payment/order-items-table/utils/index.ts +23 -0
- package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +2 -2
- package/src/product-set/form/ProductSetForm.tsx +11 -3
- package/src/product-set/form/ProductsControl.tsx +24 -15
- package/src/product-set/form/context.tsx +5 -0
- package/src/product-set/product/ProductControl.tsx +37 -1
- package/src/product-set/utils/index.ts +19 -0
- package/src/sales/coupon/utils/index.ts +5 -3
- package/src/styles/iframe-page/Page.scss +16 -0
- package/src/styles/iframe-page/PageBody.scss +4 -0
- package/src/styles/modals/Modals.scss +16 -0
- package/src/styles/product-set/ProductSetForm.scss +10 -0
- package/src/styles/sales/ManualBooking.scss +6 -0
- package/src/styles/themes/bookedit/index.scss +14 -0
- package/yarn.lock +171 -199
|
@@ -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
|
|
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
|
|
78
|
-
|
|
79
|
-
|
|
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:
|
|
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
|
|
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
|
|
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(
|
|
115
|
-
], _to_consumable_array(
|
|
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;
|
|
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,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;
|
|
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;
|
|
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,2CAyOtB"}
|
|
@@ -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,
|
|
@@ -210,6 +212,7 @@ function ProductsControl(param) {
|
|
|
210
212
|
],
|
|
211
213
|
children: fields.map(function(product, index) {
|
|
212
214
|
var isOverridesProductSet = isEventEditProductSet ? !!product.id : isOverrides && !!product.originalProductId;
|
|
215
|
+
var modifierSets = (product === null || product === void 0 ? void 0 : product.modifiersSet.length) || 0;
|
|
213
216
|
var isNewProductOverrides = isCreateNewOverrides && !!product.id;
|
|
214
217
|
return /*#__PURE__*/ jsx(Controller, {
|
|
215
218
|
control: control,
|
|
@@ -240,13 +243,22 @@ function ProductsControl(param) {
|
|
|
240
243
|
},
|
|
241
244
|
secondaryBadge: getBadgeConfig(categoryType, t(categoryType)),
|
|
242
245
|
subTitle: /*#__PURE__*/ jsxs("div", {
|
|
243
|
-
className: "
|
|
246
|
+
className: "d-flex justify-content-between",
|
|
244
247
|
children: [
|
|
245
|
-
/*#__PURE__*/
|
|
246
|
-
className: "product-set-
|
|
248
|
+
/*#__PURE__*/ jsxs("div", {
|
|
249
|
+
className: "product-set-badges-container",
|
|
250
|
+
children: [
|
|
251
|
+
/*#__PURE__*/ jsx("div", {
|
|
252
|
+
className: "product-set-subtitle-dot product-set-subtitle-product-dot"
|
|
253
|
+
}),
|
|
254
|
+
/*#__PURE__*/ jsx("span", {
|
|
255
|
+
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]) : '', " ")
|
|
256
|
+
})
|
|
257
|
+
]
|
|
247
258
|
}),
|
|
248
|
-
/*#__PURE__*/ jsx(
|
|
249
|
-
|
|
259
|
+
!!modifierSets && /*#__PURE__*/ jsx(Badge, {
|
|
260
|
+
className: "modifier-badge",
|
|
261
|
+
children: "".concat(modifierSets, " ").concat(t('modifiersSets'))
|
|
250
262
|
})
|
|
251
263
|
]
|
|
252
264
|
}),
|
|
@@ -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;
|
|
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;
|
|
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
|
|
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: [
|
|
@@ -20,6 +20,94 @@ export declare const sortArrayByIndex: <T>(array: T[]) => (T & {
|
|
|
20
20
|
sort: number;
|
|
21
21
|
})[];
|
|
22
22
|
export declare const getFilteredTemplates: (templates?: EmailTemplate[] | SmsTemplate[], formTemplates?: TemplateItem[]) => TemplateItem[] | undefined;
|
|
23
|
+
export declare const updateModifiersSetAtProductSetForm: (data: ProductSetFormValues) => {
|
|
24
|
+
steps: {
|
|
25
|
+
productCategories: {
|
|
26
|
+
products: {
|
|
27
|
+
modifiersSet: {
|
|
28
|
+
id: number;
|
|
29
|
+
value: string;
|
|
30
|
+
label: string;
|
|
31
|
+
}[];
|
|
32
|
+
id: number;
|
|
33
|
+
name: string;
|
|
34
|
+
productGroupId: number;
|
|
35
|
+
description: string;
|
|
36
|
+
termsAndConditions: string;
|
|
37
|
+
price: number;
|
|
38
|
+
deposit: number;
|
|
39
|
+
minQuantity: number;
|
|
40
|
+
maxQuantity: number;
|
|
41
|
+
totalQuantity: number;
|
|
42
|
+
isAvailable: boolean;
|
|
43
|
+
isSoldOut: boolean;
|
|
44
|
+
originalProductId: number | null;
|
|
45
|
+
isUnlimited: boolean;
|
|
46
|
+
isRequired: boolean;
|
|
47
|
+
quantitySelector: number;
|
|
48
|
+
hasSpecialNotes: boolean;
|
|
49
|
+
minSpend?: number | null;
|
|
50
|
+
type?: import("@licklist/core/dist/DataMapper/Product/ProductDataMapper").ProductType;
|
|
51
|
+
modifiersSetsId?: Array<import("..").ModifiersSet>;
|
|
52
|
+
weight?: number;
|
|
53
|
+
tierId?: number;
|
|
54
|
+
images: import("@licklist/core/dist/DataMapper/Media/ImageDataMapper").Image[] | null;
|
|
55
|
+
uuid: string;
|
|
56
|
+
sort: number | null;
|
|
57
|
+
color?: string;
|
|
58
|
+
productZones?: import("../product-zone").ProductZoneControlValues[];
|
|
59
|
+
subProducts?: import("../types").SubProduct[];
|
|
60
|
+
_id?: number;
|
|
61
|
+
}[];
|
|
62
|
+
id: number;
|
|
63
|
+
uniqueId?: string;
|
|
64
|
+
name: string;
|
|
65
|
+
minSubItems: number | null;
|
|
66
|
+
maxSubItems: number | null;
|
|
67
|
+
overallQuantity?: number | null;
|
|
68
|
+
quantityType: import("@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper").QuantityType;
|
|
69
|
+
type: import("@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper").CategoryType;
|
|
70
|
+
isTimeRelated: boolean;
|
|
71
|
+
collectUserInfo: boolean;
|
|
72
|
+
hasTicket: boolean;
|
|
73
|
+
allowDeposits: boolean;
|
|
74
|
+
remainderExpireAfter?: number;
|
|
75
|
+
hasBookingManagement: boolean;
|
|
76
|
+
hasSubEvents?: boolean;
|
|
77
|
+
weight?: number;
|
|
78
|
+
isReusable?: boolean;
|
|
79
|
+
saleDeadlineCategory?: number;
|
|
80
|
+
termsAndConditions?: string;
|
|
81
|
+
sort: number | null;
|
|
82
|
+
_id?: number;
|
|
83
|
+
}[];
|
|
84
|
+
id: number;
|
|
85
|
+
name: string;
|
|
86
|
+
weight?: number;
|
|
87
|
+
termsAndConditions?: string;
|
|
88
|
+
hasMap: boolean;
|
|
89
|
+
venueMapSetId: null | number;
|
|
90
|
+
pointProducts?: Partial<import("@licklist/core/dist/DataMapper/Product/PointProductDataMapper").PointProduct>[];
|
|
91
|
+
_id?: number;
|
|
92
|
+
}[];
|
|
93
|
+
isOverrides?: boolean;
|
|
94
|
+
id?: number;
|
|
95
|
+
name: string;
|
|
96
|
+
description?: string;
|
|
97
|
+
image?: import("@licklist/core/dist/DataMapper/Media/ImageDataMapper").Image;
|
|
98
|
+
type: import("@licklist/core/dist/DataMapper/Product/ProductSetDataMapper").ProductSetType;
|
|
99
|
+
termsAndConditions: string;
|
|
100
|
+
thankYouPageUrl: string;
|
|
101
|
+
operationalCost: import("@licklist/core/dist/DataMapper/Product/ProductSetDataMapper").OperationalCostType;
|
|
102
|
+
productGroups?: import("../../types/generic/SelectItem").SelectItem[];
|
|
103
|
+
relyOnPeopleType?: import("@licklist/core/dist/DataMapper/Product/ProductSetDataMapper").RelyOnPeopleType | null;
|
|
104
|
+
fieldSetId?: number;
|
|
105
|
+
saleDeadline?: number;
|
|
106
|
+
emailTemplates?: TemplateItem[];
|
|
107
|
+
smsTemplates?: TemplateItem[];
|
|
108
|
+
localImageBlobURL?: string;
|
|
109
|
+
menuRecurrences?: Partial<import("@licklist/core/dist/DataMapper/Product/ProductSetRecurrenceDataMapper").ProductSetRecurrence>[];
|
|
110
|
+
};
|
|
23
111
|
export declare const checkAvailableTimesErrors: ({ values, setError, t, }: CheckAvailableTimesErrors) => boolean;
|
|
24
112
|
export declare const getTypeHeadItemsFromMenus: (menus?: (ProductSet | ProductSetFormValues)[]) => MenuTypeheadItem[];
|
|
25
113
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/product-set/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qEAAqE,CAAA;AACnG,OAAO,EAAE,WAAW,EAAE,MAAM,mEAAmE,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/product-set/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qEAAqE,CAAA;AACnG,OAAO,EAAE,WAAW,EAAE,MAAM,mEAAmE,CAAA;AAG/F,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAA;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAG7D,UAAU,yBAAyB;IACjC,MAAM,EAAE,oBAAoB,CAAA;IAC5B,QAAQ,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAA;IAC/C,CAAC,EAAE,SAAS,CAAA;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AACD,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAC1B,CAAC,EAAE,aACC,MAAM,aACN,MAAM,QAQlB,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,CAAC,SAAS,CAAC,EAAE;;IACmB,CAAA;AAEjE,eAAO,MAAM,oBAAoB,eACnB,aAAa,EAAE,GAAG,WAAW,EAAE,kBAC3B,YAAY,EAAE,KAC7B,YAAY,EAAE,GAAG,SAmBnB,CAAA;AAED,eAAQ,MAAM,kCAAkC,SAAU,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAc5E,CAAC;AAEH,eAAO,MAAM,yBAAyB,6BAInC,yBAAyB,YA0B3B,CAAA;AAED,eAAO,MAAM,yBAAyB,WAC5B,CAAC,UAAU,GAAG,oBAAoB,CAAC,EAAE,KAC5C,gBAAgB,EACwD,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { convertToTypeaheadOptions } from '../../sales/coupon/utils/index.js';
|
|
1
2
|
import { checkIfZoneCategory } from '@licklist/plugins';
|
|
2
3
|
|
|
3
4
|
function _array_like_to_array(arr, len) {
|
|
@@ -109,6 +110,23 @@ var getFilteredTemplates = function(templates, formTemplates) {
|
|
|
109
110
|
};
|
|
110
111
|
});
|
|
111
112
|
};
|
|
113
|
+
var updateModifiersSetAtProductSetForm = function(data) {
|
|
114
|
+
return _object_spread_props(_object_spread({}, data), {
|
|
115
|
+
steps: data.steps.map(function(step) {
|
|
116
|
+
return _object_spread_props(_object_spread({}, step), {
|
|
117
|
+
productCategories: step.productCategories.map(function(category) {
|
|
118
|
+
return _object_spread_props(_object_spread({}, category), {
|
|
119
|
+
products: category.products.map(function(product) {
|
|
120
|
+
return _object_spread_props(_object_spread({}, product), {
|
|
121
|
+
modifiersSet: (product === null || product === void 0 ? void 0 : product.modifiersSet) ? convertToTypeaheadOptions(product.modifiersSet) : []
|
|
122
|
+
});
|
|
123
|
+
})
|
|
124
|
+
});
|
|
125
|
+
})
|
|
126
|
+
});
|
|
127
|
+
})
|
|
128
|
+
});
|
|
129
|
+
};
|
|
112
130
|
var checkAvailableTimesErrors = function(param) {
|
|
113
131
|
var values = param.values, setError = param.setError, t = param.t;
|
|
114
132
|
var _values_steps, _values_menuRecurrences;
|
|
@@ -146,4 +164,4 @@ var getTypeHeadItemsFromMenus = function(menus) {
|
|
|
146
164
|
});
|
|
147
165
|
};
|
|
148
166
|
|
|
149
|
-
export { checkAvailableTimesErrors, getFilteredTemplates, getTypeHeadItemsFromMenus, moveArrayElements, sortArrayByIndex };
|
|
167
|
+
export { checkAvailableTimesErrors, getFilteredTemplates, getTypeHeadItemsFromMenus, moveArrayElements, sortArrayByIndex, updateModifiersSetAtProductSetForm };
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { ModifierSet } from '@licklist/core/dist/DataMapper/Product/ModifierSetDataMapper';
|
|
1
2
|
import { ProductGroup } from '@licklist/core/dist/DataMapper/Product/ProductGroupDataMapper';
|
|
2
|
-
export declare const convertToTypeaheadOptions: (productGroups?: ProductGroup[]) => {
|
|
3
|
+
export declare const convertToTypeaheadOptions: (productGroups?: ProductGroup[] | ModifierSet[]) => {
|
|
3
4
|
id: number;
|
|
4
5
|
value: string;
|
|
5
6
|
label: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sales/coupon/utils/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/sales/coupon/utils/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAA;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,+DAA+D,CAAA;AAE5F,eAAO,MAAM,yBAAyB,mBAAoB,YAAY,EAAE,GAAG,WAAW,EAAE;;;;GAUvF,CAAA"}
|