@merchi/product-form 1.19.12
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/README.md +272 -0
- package/lib/actions/jobs.d.ts +3 -0
- package/lib/actions/jobs.js +80 -0
- package/lib/actions/leads.d.ts +7 -0
- package/lib/actions/leads.js +67 -0
- package/lib/components/AlertVariationSellerEditable.d.ts +6 -0
- package/lib/components/AlertVariationSellerEditable.js +46 -0
- package/lib/components/Collapse.d.ts +3 -0
- package/lib/components/Collapse.js +34 -0
- package/lib/components/DateCountdown.d.ts +44 -0
- package/lib/components/DateCountdown.js +188 -0
- package/lib/components/DropzoneInput.d.ts +10 -0
- package/lib/components/DropzoneInput.js +169 -0
- package/lib/components/DynamicVariationInput.d.ts +9 -0
- package/lib/components/DynamicVariationInput.js +71 -0
- package/lib/components/FormLead.d.ts +10 -0
- package/lib/components/FormLead.js +215 -0
- package/lib/components/GroupInventory.d.ts +6 -0
- package/lib/components/GroupInventory.js +16 -0
- package/lib/components/InputGroupQuantity.d.ts +8 -0
- package/lib/components/InputGroupQuantity.js +117 -0
- package/lib/components/InputHiddenStatic.d.ts +8 -0
- package/lib/components/InputHiddenStatic.js +24 -0
- package/lib/components/InputProductQuantity.d.ts +7 -0
- package/lib/components/InputProductQuantity.js +102 -0
- package/lib/components/InventoryStatus.d.ts +7 -0
- package/lib/components/InventoryStatus.js +67 -0
- package/lib/components/MerchiProductForm.d.ts +62 -0
- package/lib/components/MerchiProductForm.js +51 -0
- package/lib/components/PriceMatrix.d.ts +27 -0
- package/lib/components/PriceMatrix.js +106 -0
- package/lib/components/ProductButtonsSubmit.d.ts +3 -0
- package/lib/components/ProductButtonsSubmit.js +52 -0
- package/lib/components/ProductFeatureDeadline.d.ts +3 -0
- package/lib/components/ProductFeatureDeadline.js +25 -0
- package/lib/components/ProductGroupBuyStatus.d.ts +3 -0
- package/lib/components/ProductGroupBuyStatus.js +47 -0
- package/lib/components/ProductPriceMatrix.d.ts +3 -0
- package/lib/components/ProductPriceMatrix.js +51 -0
- package/lib/components/ProductTitle.d.ts +3 -0
- package/lib/components/ProductTitle.js +36 -0
- package/lib/components/ProductTotalCost.d.ts +3 -0
- package/lib/components/ProductTotalCost.js +74 -0
- package/lib/components/ProductUnitPrice.d.ts +7 -0
- package/lib/components/ProductUnitPrice.js +51 -0
- package/lib/components/TooltipElement.d.ts +9 -0
- package/lib/components/TooltipElement.js +35 -0
- package/lib/components/VariationAreaInput.d.ts +8 -0
- package/lib/components/VariationAreaInput.js +219 -0
- package/lib/components/VariationCheckBoxOrRadioOption.d.ts +10 -0
- package/lib/components/VariationCheckBoxOrRadioOption.js +82 -0
- package/lib/components/VariationCheckboxRadio.d.ts +17 -0
- package/lib/components/VariationCheckboxRadio.js +57 -0
- package/lib/components/VariationColourExtractInput.d.ts +8 -0
- package/lib/components/VariationColourExtractInput.js +395 -0
- package/lib/components/VariationError.d.ts +7 -0
- package/lib/components/VariationError.js +52 -0
- package/lib/components/VariationFieldInputInstructions.d.ts +10 -0
- package/lib/components/VariationFieldInputInstructions.js +50 -0
- package/lib/components/VariationFieldInstructions.d.ts +3 -0
- package/lib/components/VariationFieldInstructions.js +22 -0
- package/lib/components/VariationFieldNameAndCostInputs.d.ts +7 -0
- package/lib/components/VariationFieldNameAndCostInputs.js +34 -0
- package/lib/components/VariationFieldOptionDefaultInputs.d.ts +7 -0
- package/lib/components/VariationFieldOptionDefaultInputs.js +48 -0
- package/lib/components/VariationFieldStaticValues.d.ts +8 -0
- package/lib/components/VariationFieldStaticValues.js +57 -0
- package/lib/components/VariationFileInput.d.ts +8 -0
- package/lib/components/VariationFileInput.js +229 -0
- package/lib/components/VariationInput.d.ts +11 -0
- package/lib/components/VariationInput.js +97 -0
- package/lib/components/VariationLabel.d.ts +11 -0
- package/lib/components/VariationLabel.js +85 -0
- package/lib/components/VariationOptionColour.d.ts +8 -0
- package/lib/components/VariationOptionColour.js +50 -0
- package/lib/components/VariationOptionImage.d.ts +8 -0
- package/lib/components/VariationOptionImage.js +52 -0
- package/lib/components/VariationSelect.d.ts +8 -0
- package/lib/components/VariationSelect.js +66 -0
- package/lib/components/VariationSelectElements.d.ts +16 -0
- package/lib/components/VariationSelectElements.js +141 -0
- package/lib/components/VariationTurnaroundTime.d.ts +9 -0
- package/lib/components/VariationTurnaroundTime.js +156 -0
- package/lib/components/Variations.d.ts +9 -0
- package/lib/components/Variations.js +109 -0
- package/lib/components/VariationsGroups.d.ts +8 -0
- package/lib/components/VariationsGroups.js +79 -0
- package/lib/components/buttons/ButtonAddGroup.d.ts +7 -0
- package/lib/components/buttons/ButtonAddGroup.js +38 -0
- package/lib/components/buttons/ButtonProductSubmit.d.ts +7 -0
- package/lib/components/buttons/ButtonProductSubmit.js +33 -0
- package/lib/components/buttons/ButtonRemoveGroup.d.ts +8 -0
- package/lib/components/buttons/ButtonRemoveGroup.js +25 -0
- package/lib/components/buttons/index.d.ts +4 -0
- package/lib/components/buttons/index.js +5 -0
- package/lib/components/cost.d.ts +11 -0
- package/lib/components/cost.js +44 -0
- package/lib/components/currency.d.ts +16 -0
- package/lib/components/currency.js +184 -0
- package/lib/components/drafts/DraftApprovePanel.d.ts +6 -0
- package/lib/components/drafts/DraftApprovePanel.js +315 -0
- package/lib/components/drafts/DraftCanvas.d.ts +13 -0
- package/lib/components/drafts/DraftCanvas.js +496 -0
- package/lib/components/drafts/DraftDesignerSheet.d.ts +9 -0
- package/lib/components/drafts/DraftDesignerSheet.js +685 -0
- package/lib/components/drafts/ProductDraftsHost.d.ts +3 -0
- package/lib/components/drafts/ProductDraftsHost.js +207 -0
- package/lib/components/drafts/useHtmlImage.d.ts +1 -0
- package/lib/components/drafts/useHtmlImage.js +45 -0
- package/lib/components/icons/IconChecked.d.ts +3 -0
- package/lib/components/icons/IconChecked.js +10 -0
- package/lib/components/icons/IconCheckedOrNoStock.d.ts +7 -0
- package/lib/components/icons/IconCheckedOrNoStock.js +13 -0
- package/lib/components/icons/IconCountryFlag.d.ts +8 -0
- package/lib/components/icons/IconCountryFlag.js +27 -0
- package/lib/components/icons/IconFile.d.ts +7 -0
- package/lib/components/icons/IconFile.js +41 -0
- package/lib/components/icons/IconNoStock.d.ts +3 -0
- package/lib/components/icons/IconNoStock.js +12 -0
- package/lib/components/icons/index.d.ts +5 -0
- package/lib/components/icons/index.js +6 -0
- package/lib/components/quoteAfterFieldChange.d.ts +7 -0
- package/lib/components/quoteAfterFieldChange.js +11 -0
- package/lib/components/quoteAfterFieldChange.test.js +58 -0
- package/lib/components/utils.d.ts +26 -0
- package/lib/components/utils.js +500 -0
- package/lib/context/MerchiProductFormProvider.d.ts +177 -0
- package/lib/context/MerchiProductFormProvider.js +1020 -0
- package/lib/images/product-not-found.png +0 -0
- package/lib/index.d.ts +42 -0
- package/lib/index.js +41 -0
- package/lib/styles/globals.css +1590 -0
- package/lib/styles/globals.css.map +1 -0
- package/lib/styles/globals.scss +1698 -0
- package/lib/utils/area.d.ts +77 -0
- package/lib/utils/area.js +298 -0
- package/lib/utils/cleanFormVariationJson.d.ts +5 -0
- package/lib/utils/cleanFormVariationJson.js +39 -0
- package/lib/utils/cleanFormVariationJson.test.js +54 -0
- package/lib/utils/countries.d.ts +7 -0
- package/lib/utils/countries.js +290 -0
- package/lib/utils/currency.d.ts +2 -0
- package/lib/utils/currency.js +188 -0
- package/lib/utils/draftExport.d.ts +21 -0
- package/lib/utils/draftExport.js +481 -0
- package/lib/utils/draftExport.test.js +78 -0
- package/lib/utils/draftFonts.d.ts +55 -0
- package/lib/utils/draftFonts.js +68 -0
- package/lib/utils/draftStorage.d.ts +25 -0
- package/lib/utils/draftStorage.js +148 -0
- package/lib/utils/draftStorage.test.js +125 -0
- package/lib/utils/draftTemplates.d.ts +87 -0
- package/lib/utils/draftTemplates.js +579 -0
- package/lib/utils/draftTemplates.test.js +476 -0
- package/lib/utils/formErrors.d.ts +2 -0
- package/lib/utils/formErrors.js +29 -0
- package/lib/utils/index.d.ts +3 -0
- package/lib/utils/index.js +4 -0
- package/lib/utils/priceMatrix.d.ts +57 -0
- package/lib/utils/priceMatrix.js +82 -0
- package/lib/utils/priceMatrix.test.js +200 -0
- package/lib/utils/products.d.ts +40 -0
- package/lib/utils/products.js +68 -0
- package/lib/utils/quantity.d.ts +7 -0
- package/lib/utils/quantity.js +19 -0
- package/lib/utils/quantity.test.js +42 -0
- package/lib/utils/reconcileVariations.d.ts +25 -0
- package/lib/utils/reconcileVariations.js +246 -0
- package/lib/utils/reconcileVariations.test.js +239 -0
- package/lib/utils/selectedVariationCosts.d.ts +6 -0
- package/lib/utils/selectedVariationCosts.js +59 -0
- package/lib/utils/selectedVariationCosts.test.js +66 -0
- package/lib/utils/selections.d.ts +23 -0
- package/lib/utils/selections.js +76 -0
- package/lib/utils/selections.test.js +159 -0
- package/lib/utils/singleOptionVariation.d.ts +2 -0
- package/lib/utils/singleOptionVariation.js +22 -0
- package/lib/utils/singleOptionVariation.test.js +59 -0
- package/lib/utils/supportedNumbers.d.ts +1 -0
- package/lib/utils/supportedNumbers.js +27 -0
- package/lib/utils/types.d.ts +114 -0
- package/lib/utils/types.js +50 -0
- package/lib/utils/url.d.ts +3 -0
- package/lib/utils/url.js +65 -0
- package/lib/utils/variationFields.d.ts +5 -0
- package/lib/utils/variationFields.js +116 -0
- package/lib/utils/variationFields.test.js +108 -0
- package/package.json +93 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
7
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
8
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
9
|
+
import * as React from 'react';
|
|
10
|
+
import { useController } from 'react-hook-form';
|
|
11
|
+
import ProductUnitPrice from './ProductUnitPrice';
|
|
12
|
+
import VariationError from './VariationError';
|
|
13
|
+
import { productMoqFloor, productMinimumQuantity } from '../utils/quantity';
|
|
14
|
+
import { needsProductLevelQuantity } from '../utils/products';
|
|
15
|
+
import { isProductFileDownload, isProductSupplierMOD } from './utils';
|
|
16
|
+
import { useMerchiFormContext } from '../context/MerchiProductFormProvider';
|
|
17
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
|
+
function InputProductQuantity(_ref) {
|
|
19
|
+
var disabled = _ref.disabled,
|
|
20
|
+
_ref$name = _ref.name,
|
|
21
|
+
name = _ref$name === void 0 ? 'quantity' : _ref$name;
|
|
22
|
+
var _useMerchiFormContext = useMerchiFormContext(),
|
|
23
|
+
classNameInputContainer = _useMerchiFormContext.classNameInputContainer,
|
|
24
|
+
classNameInput = _useMerchiFormContext.classNameInput,
|
|
25
|
+
classNameQuantityLabelContainer = _useMerchiFormContext.classNameQuantityLabelContainer,
|
|
26
|
+
job = _useMerchiFormContext.job,
|
|
27
|
+
control = _useMerchiFormContext.control,
|
|
28
|
+
getQuote = _useMerchiFormContext.getQuote,
|
|
29
|
+
hookForm = _useMerchiFormContext.hookForm,
|
|
30
|
+
hideQuantityField = _useMerchiFormContext.hideQuantityField,
|
|
31
|
+
product = _useMerchiFormContext.product;
|
|
32
|
+
var moq = productMinimumQuantity(product);
|
|
33
|
+
var minQuantity = productMoqFloor(product);
|
|
34
|
+
var showInput = !hideQuantityField && !isProductFileDownload(product) && !isProductSupplierMOD(product) && needsProductLevelQuantity(product, job);
|
|
35
|
+
var validators = {
|
|
36
|
+
required: {
|
|
37
|
+
value: true,
|
|
38
|
+
message: 'Quantity is required'
|
|
39
|
+
},
|
|
40
|
+
valueAsNumber: true,
|
|
41
|
+
min: {
|
|
42
|
+
value: minQuantity,
|
|
43
|
+
message: moq > 1 ? "".concat(product.name, " can not be less than ").concat(moq) : 'Quantity must be at least 1'
|
|
44
|
+
},
|
|
45
|
+
validate: {
|
|
46
|
+
positive: function positive(value) {
|
|
47
|
+
var n = typeof value === 'number' ? value : parseInt(value, 10);
|
|
48
|
+
if (!Number.isFinite(n) || n < minQuantity) {
|
|
49
|
+
return moq > 1 ? "".concat(product.name, " can not be less than ").concat(moq) : 'Quantity must be at least 1';
|
|
50
|
+
}
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
var inputId = "merchi-qty-".concat(name);
|
|
56
|
+
var _useController = useController({
|
|
57
|
+
name: name,
|
|
58
|
+
control: control,
|
|
59
|
+
rules: showInput ? validators : undefined
|
|
60
|
+
}),
|
|
61
|
+
field = _useController.field,
|
|
62
|
+
fieldState = _useController.fieldState;
|
|
63
|
+
if (!showInput) return null;
|
|
64
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
65
|
+
className: classNameInputContainer,
|
|
66
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
67
|
+
className: classNameQuantityLabelContainer,
|
|
68
|
+
children: /*#__PURE__*/_jsxs("div", {
|
|
69
|
+
children: [/*#__PURE__*/_jsx("label", {
|
|
70
|
+
htmlFor: inputId,
|
|
71
|
+
style: {
|
|
72
|
+
display: 'inline'
|
|
73
|
+
},
|
|
74
|
+
children: "Quantity"
|
|
75
|
+
}), ' ', /*#__PURE__*/_jsxs("small", {
|
|
76
|
+
children: [/*#__PURE__*/_jsx(ProductUnitPrice, {}), " ", moq > 1 && "(MOQ of ".concat(moq, ")")]
|
|
77
|
+
})]
|
|
78
|
+
})
|
|
79
|
+
}), /*#__PURE__*/_jsx("input", _objectSpread(_objectSpread({
|
|
80
|
+
id: inputId,
|
|
81
|
+
disabled: disabled,
|
|
82
|
+
min: minQuantity,
|
|
83
|
+
type: "number",
|
|
84
|
+
className: classNameInput,
|
|
85
|
+
"aria-invalid": fieldState.invalid || undefined
|
|
86
|
+
}, field), {}, {
|
|
87
|
+
onChange: function onChange(e) {
|
|
88
|
+
field.onChange(e);
|
|
89
|
+
hookForm.trigger(name);
|
|
90
|
+
getQuote();
|
|
91
|
+
},
|
|
92
|
+
onBlur: function onBlur() {
|
|
93
|
+
field.onBlur();
|
|
94
|
+
hookForm.trigger(name);
|
|
95
|
+
}
|
|
96
|
+
})), /*#__PURE__*/_jsx(VariationError, {
|
|
97
|
+
name: name
|
|
98
|
+
})]
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
export default InputProductQuantity;
|
|
102
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfdG9Qcm9wZXJ0eUtleSIsInZhbHVlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJpIiwiX3RvUHJpbWl0aXZlIiwidG9QcmltaXRpdmUiLCJjYWxsIiwiVHlwZUVycm9yIiwiU3RyaW5nIiwiTnVtYmVyIiwiUmVhY3QiLCJ1c2VDb250cm9sbGVyIiwiUHJvZHVjdFVuaXRQcmljZSIsIlZhcmlhdGlvbkVycm9yIiwicHJvZHVjdE1vcUZsb29yIiwicHJvZHVjdE1pbmltdW1RdWFudGl0eSIsIm5lZWRzUHJvZHVjdExldmVsUXVhbnRpdHkiLCJpc1Byb2R1Y3RGaWxlRG93bmxvYWQiLCJpc1Byb2R1Y3RTdXBwbGllck1PRCIsInVzZU1lcmNoaUZvcm1Db250ZXh0IiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIklucHV0UHJvZHVjdFF1YW50aXR5IiwiX3JlZiIsImRpc2FibGVkIiwiX3JlZiRuYW1lIiwibmFtZSIsIl91c2VNZXJjaGlGb3JtQ29udGV4dCIsImNsYXNzTmFtZUlucHV0Q29udGFpbmVyIiwiY2xhc3NOYW1lSW5wdXQiLCJjbGFzc05hbWVRdWFudGl0eUxhYmVsQ29udGFpbmVyIiwiam9iIiwiY29udHJvbCIsImdldFF1b3RlIiwiaG9va0Zvcm0iLCJoaWRlUXVhbnRpdHlGaWVsZCIsInByb2R1Y3QiLCJtb3EiLCJtaW5RdWFudGl0eSIsInNob3dJbnB1dCIsInZhbGlkYXRvcnMiLCJyZXF1aXJlZCIsIm1lc3NhZ2UiLCJ2YWx1ZUFzTnVtYmVyIiwibWluIiwiY29uY2F0IiwidmFsaWRhdGUiLCJwb3NpdGl2ZSIsIm4iLCJwYXJzZUludCIsImlzRmluaXRlIiwiaW5wdXRJZCIsIl91c2VDb250cm9sbGVyIiwicnVsZXMiLCJ1bmRlZmluZWQiLCJmaWVsZCIsImZpZWxkU3RhdGUiLCJjbGFzc05hbWUiLCJjaGlsZHJlbiIsImh0bWxGb3IiLCJzdHlsZSIsImRpc3BsYXkiLCJpZCIsInR5cGUiLCJpbnZhbGlkIiwib25DaGFuZ2UiLCJ0cmlnZ2VyIiwib25CbHVyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbXBvbmVudHMvSW5wdXRQcm9kdWN0UXVhbnRpdHkudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUNvbnRyb2xsZXIgfSBmcm9tICdyZWFjdC1ob29rLWZvcm0nO1xuaW1wb3J0IFByb2R1Y3RVbml0UHJpY2UgZnJvbSAnLi9Qcm9kdWN0VW5pdFByaWNlJztcbmltcG9ydCBWYXJpYXRpb25FcnJvciBmcm9tICcuL1ZhcmlhdGlvbkVycm9yJztcbmltcG9ydCB7IHByb2R1Y3RNb3FGbG9vciwgcHJvZHVjdE1pbmltdW1RdWFudGl0eSB9IGZyb20gJy4uL3V0aWxzL3F1YW50aXR5JztcbmltcG9ydCB7IG5lZWRzUHJvZHVjdExldmVsUXVhbnRpdHkgfSBmcm9tICcuLi91dGlscy9wcm9kdWN0cyc7XG5pbXBvcnQgeyBpc1Byb2R1Y3RGaWxlRG93bmxvYWQsIGlzUHJvZHVjdFN1cHBsaWVyTU9EIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyB1c2VNZXJjaGlGb3JtQ29udGV4dCB9IGZyb20gJy4uL2NvbnRleHQvTWVyY2hpUHJvZHVjdEZvcm1Qcm92aWRlcic7XG5cbmludGVyZmFjZSBQcm9wcyB7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgbmFtZT86IHN0cmluZztcbn1cblxuZnVuY3Rpb24gSW5wdXRQcm9kdWN0UXVhbnRpdHkoeyBkaXNhYmxlZCwgbmFtZSA9ICdxdWFudGl0eScgfTogUHJvcHMpIHtcbiAgY29uc3Qge1xuICAgIGNsYXNzTmFtZUlucHV0Q29udGFpbmVyLFxuICAgIGNsYXNzTmFtZUlucHV0LFxuICAgIGNsYXNzTmFtZVF1YW50aXR5TGFiZWxDb250YWluZXIsXG4gICAgam9iLFxuICAgIGNvbnRyb2wsXG4gICAgZ2V0UXVvdGUsXG4gICAgaG9va0Zvcm0sXG4gICAgaGlkZVF1YW50aXR5RmllbGQsXG4gICAgcHJvZHVjdCxcbiAgfSA9IHVzZU1lcmNoaUZvcm1Db250ZXh0KCk7XG4gIGNvbnN0IG1vcSA9IHByb2R1Y3RNaW5pbXVtUXVhbnRpdHkocHJvZHVjdCk7XG4gIGNvbnN0IG1pblF1YW50aXR5ID0gcHJvZHVjdE1vcUZsb29yKHByb2R1Y3QpO1xuICBjb25zdCBzaG93SW5wdXQgPVxuICAgICFoaWRlUXVhbnRpdHlGaWVsZCAmJlxuICAgICFpc1Byb2R1Y3RGaWxlRG93bmxvYWQocHJvZHVjdCkgJiZcbiAgICAhaXNQcm9kdWN0U3VwcGxpZXJNT0QocHJvZHVjdCkgJiZcbiAgICBuZWVkc1Byb2R1Y3RMZXZlbFF1YW50aXR5KHByb2R1Y3QsIGpvYik7XG4gIGNvbnN0IHZhbGlkYXRvcnM6IGFueSA9IHtcbiAgICByZXF1aXJlZDoge1xuICAgICAgdmFsdWU6IHRydWUsXG4gICAgICBtZXNzYWdlOiAnUXVhbnRpdHkgaXMgcmVxdWlyZWQnLFxuICAgIH0sXG4gICAgdmFsdWVBc051bWJlcjogdHJ1ZSxcbiAgICBtaW46IHtcbiAgICAgIHZhbHVlOiBtaW5RdWFudGl0eSxcbiAgICAgIG1lc3NhZ2U6XG4gICAgICAgIG1vcSA+IDFcbiAgICAgICAgICA/IGAke3Byb2R1Y3QubmFtZX0gY2FuIG5vdCBiZSBsZXNzIHRoYW4gJHttb3F9YFxuICAgICAgICAgIDogJ1F1YW50aXR5IG11c3QgYmUgYXQgbGVhc3QgMScsXG4gICAgfSxcbiAgICB2YWxpZGF0ZToge1xuICAgICAgcG9zaXRpdmU6ICh2YWx1ZTogYW55KSA9PiB7XG4gICAgICAgIGNvbnN0IG4gPSB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInID8gdmFsdWUgOiBwYXJzZUludCh2YWx1ZSwgMTApO1xuICAgICAgICBpZiAoIU51bWJlci5pc0Zpbml0ZShuKSB8fCBuIDwgbWluUXVhbnRpdHkpIHtcbiAgICAgICAgICByZXR1cm4gbW9xID4gMVxuICAgICAgICAgICAgPyBgJHtwcm9kdWN0Lm5hbWV9IGNhbiBub3QgYmUgbGVzcyB0aGFuICR7bW9xfWBcbiAgICAgICAgICAgIDogJ1F1YW50aXR5IG11c3QgYmUgYXQgbGVhc3QgMSc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9LFxuICAgIH0sXG4gIH07XG4gIGNvbnN0IGlucHV0SWQgPSBgbWVyY2hpLXF0eS0ke25hbWV9YDtcbiAgY29uc3QgeyBmaWVsZCwgZmllbGRTdGF0ZSB9ID0gdXNlQ29udHJvbGxlcih7XG4gICAgbmFtZTogbmFtZSxcbiAgICBjb250cm9sLFxuICAgIHJ1bGVzOiBzaG93SW5wdXQgPyB2YWxpZGF0b3JzIDogdW5kZWZpbmVkLFxuICB9KTtcbiAgaWYgKCFzaG93SW5wdXQpIHJldHVybiBudWxsO1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWVJbnB1dENvbnRhaW5lcn0+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lUXVhbnRpdHlMYWJlbENvbnRhaW5lcn0+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPGxhYmVsIGh0bWxGb3I9e2lucHV0SWR9IHN0eWxlPXt7IGRpc3BsYXk6ICdpbmxpbmUnIH19PlF1YW50aXR5PC9sYWJlbD57JyAnfVxuICAgICAgICAgIDxzbWFsbD5cbiAgICAgICAgICAgIDxQcm9kdWN0VW5pdFByaWNlIC8+IHttb3EgPiAxICYmIGAoTU9RIG9mICR7bW9xfSlgfVxuICAgICAgICAgIDwvc21hbGw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8aW5wdXRcbiAgICAgICAgaWQ9e2lucHV0SWR9XG4gICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgbWluPXttaW5RdWFudGl0eX1cbiAgICAgICAgdHlwZT0nbnVtYmVyJ1xuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZUlucHV0fVxuICAgICAgICBhcmlhLWludmFsaWQ9e2ZpZWxkU3RhdGUuaW52YWxpZCB8fCB1bmRlZmluZWR9XG4gICAgICAgIHsuLi5maWVsZH1cbiAgICAgICAgb25DaGFuZ2U9eyhlOiBhbnkpID0+IHtcbiAgICAgICAgICBmaWVsZC5vbkNoYW5nZShlKTtcbiAgICAgICAgICBob29rRm9ybS50cmlnZ2VyKG5hbWUpO1xuICAgICAgICAgIGdldFF1b3RlKCk7XG4gICAgICAgIH19XG4gICAgICAgIG9uQmx1cj17KCkgPT4ge1xuICAgICAgICAgIGZpZWxkLm9uQmx1cigpO1xuICAgICAgICAgIGhvb2tGb3JtLnRyaWdnZXIobmFtZSk7XG4gICAgICAgIH19XG4gICAgICAvPlxuICAgICAgPFZhcmlhdGlvbkVycm9yIG5hbWU9e25hbWV9IC8+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IElucHV0UHJvZHVjdFF1YW50aXR5O1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxZQUFZOztBQUFDLFNBQUFBLFFBQUFDLENBQUEsc0NBQUFELE9BQUEsd0JBQUFFLE1BQUEsdUJBQUFBLE1BQUEsQ0FBQUMsUUFBQSxhQUFBRixDQUFBLGtCQUFBQSxDQUFBLGdCQUFBQSxDQUFBLFdBQUFBLENBQUEseUJBQUFDLE1BQUEsSUFBQUQsQ0FBQSxDQUFBRyxXQUFBLEtBQUFGLE1BQUEsSUFBQUQsQ0FBQSxLQUFBQyxNQUFBLENBQUFHLFNBQUEscUJBQUFKLENBQUEsS0FBQUQsT0FB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
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { useMerchiFormContext } from '../context/MerchiProductFormProvider';
|
|
5
|
+
import { CgSpinner } from 'react-icons/cg';
|
|
6
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
+
function StatusDot(_ref) {
|
|
8
|
+
var color = _ref.color;
|
|
9
|
+
return /*#__PURE__*/_jsx("span", {
|
|
10
|
+
className: "badge",
|
|
11
|
+
style: {
|
|
12
|
+
backgroundColor: '#fff',
|
|
13
|
+
display: 'flex',
|
|
14
|
+
padding: '3px',
|
|
15
|
+
borderRadius: '100%',
|
|
16
|
+
margin: '0 1px'
|
|
17
|
+
},
|
|
18
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
19
|
+
className: "inventory-icon-indicator",
|
|
20
|
+
style: {
|
|
21
|
+
backgroundColor: color,
|
|
22
|
+
borderRadius: '100%',
|
|
23
|
+
height: 8,
|
|
24
|
+
width: 8
|
|
25
|
+
}
|
|
26
|
+
})
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
function InventoryStatus(_ref2) {
|
|
30
|
+
var _ref2$inventoryCount = _ref2.inventoryCount,
|
|
31
|
+
inventoryCount = _ref2$inventoryCount === void 0 ? 0 : _ref2$inventoryCount,
|
|
32
|
+
inventorySufficient = _ref2.inventorySufficient;
|
|
33
|
+
var _useMerchiFormContext = useMerchiFormContext(),
|
|
34
|
+
classNameInventoryStatus = _useMerchiFormContext.classNameInventoryStatus,
|
|
35
|
+
loading = _useMerchiFormContext.loading,
|
|
36
|
+
inventoryLoading = _useMerchiFormContext.inventoryLoading;
|
|
37
|
+
var isLoading = loading || inventoryLoading;
|
|
38
|
+
var color = '#65cf85';
|
|
39
|
+
var msg = 'In stock';
|
|
40
|
+
if (!inventorySufficient) {
|
|
41
|
+
color = '#ff4449';
|
|
42
|
+
msg = 'no stock';
|
|
43
|
+
if (inventoryCount) {
|
|
44
|
+
color = '#ffc928';
|
|
45
|
+
msg = "insufficient stock (".concat(inventoryCount, " in stock)");
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return /*#__PURE__*/_jsx("div", {
|
|
49
|
+
className: "".concat(classNameInventoryStatus, " merchi-embed-form_product-group-inventory-status"),
|
|
50
|
+
style: {
|
|
51
|
+
background: color
|
|
52
|
+
},
|
|
53
|
+
children: isLoading ? /*#__PURE__*/_jsx(CgSpinner, {
|
|
54
|
+
fontSize: "1.1rem",
|
|
55
|
+
className: "animate_spin"
|
|
56
|
+
}) : /*#__PURE__*/_jsxs(_Fragment, {
|
|
57
|
+
children: [/*#__PURE__*/_jsx(StatusDot, {
|
|
58
|
+
color: color
|
|
59
|
+
}), " ", /*#__PURE__*/_jsx("span", {
|
|
60
|
+
className: "mr-1",
|
|
61
|
+
children: msg
|
|
62
|
+
})]
|
|
63
|
+
})
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
export default InventoryStatus;
|
|
67
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZU1lcmNoaUZvcm1Db250ZXh0IiwiQ2dTcGlubmVyIiwianN4IiwiX2pzeCIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwianN4cyIsIl9qc3hzIiwiU3RhdHVzRG90IiwiX3JlZiIsImNvbG9yIiwiY2xhc3NOYW1lIiwic3R5bGUiLCJiYWNrZ3JvdW5kQ29sb3IiLCJkaXNwbGF5IiwicGFkZGluZyIsImJvcmRlclJhZGl1cyIsIm1hcmdpbiIsImNoaWxkcmVuIiwiaGVpZ2h0Iiwid2lkdGgiLCJJbnZlbnRvcnlTdGF0dXMiLCJfcmVmMiIsIl9yZWYyJGludmVudG9yeUNvdW50IiwiaW52ZW50b3J5Q291bnQiLCJpbnZlbnRvcnlTdWZmaWNpZW50IiwiX3VzZU1lcmNoaUZvcm1Db250ZXh0IiwiY2xhc3NOYW1lSW52ZW50b3J5U3RhdHVzIiwibG9hZGluZyIsImludmVudG9yeUxvYWRpbmciLCJpc0xvYWRpbmciLCJtc2ciLCJjb25jYXQiLCJiYWNrZ3JvdW5kIiwiZm9udFNpemUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tcG9uZW50cy9JbnZlbnRvcnlTdGF0dXMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZU1lcmNoaUZvcm1Db250ZXh0IH0gZnJvbSAnLi4vY29udGV4dC9NZXJjaGlQcm9kdWN0Rm9ybVByb3ZpZGVyJztcbmltcG9ydCB7IENnU3Bpbm5lciB9IGZyb20gJ3JlYWN0LWljb25zL2NnJztcblxuZnVuY3Rpb24gU3RhdHVzRG90KHsgY29sb3IgfTogYW55KSB7XG4gIHJldHVybiAoXG4gICAgPHNwYW5cbiAgICAgIGNsYXNzTmFtZT0nYmFkZ2UnXG4gICAgICBzdHlsZT17e1xuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZmJyxcbiAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICBwYWRkaW5nOiAnM3B4JyxcbiAgICAgICAgYm9yZGVyUmFkaXVzOiAnMTAwJScsXG4gICAgICAgIG1hcmdpbjogJzAgMXB4JyxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9J2ludmVudG9yeS1pY29uLWluZGljYXRvcidcbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IGNvbG9yLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogJzEwMCUnLFxuICAgICAgICAgIGhlaWdodDogOCxcbiAgICAgICAgICB3aWR0aDogOCxcbiAgICAgICAgfX1cbiAgICAgIC8+XG4gICAgPC9zcGFuPlxuICApO1xufVxuXG5pbnRlcmZhY2UgUHJvcHMge1xuICBpbnZlbnRvcnlDb3VudDogbnVtYmVyO1xuICBpbnZlbnRvcnlTdWZmaWNpZW50OiBib29sZWFuO1xufVxuXG5mdW5jdGlvbiBJbnZlbnRvcnlTdGF0dXMoeyBpbnZlbnRvcnlDb3VudCA9IDAsIGludmVudG9yeVN1ZmZpY2llbnQgfTogUHJvcHMpIHtcbiAgY29uc3QgeyBjbGFzc05hbWVJbnZlbnRvcnlTdGF0dXMsIGxvYWRpbmcsIGludmVudG9yeUxvYWRpbmcgfSA9XG4gICAgdXNlTWVyY2hpRm9ybUNvbnRleHQoKTtcbiAgY29uc3QgaXNMb2FkaW5nID0gbG9hZGluZyB8fCBpbnZlbnRvcnlMb2FkaW5nO1xuICBsZXQgY29sb3IgPSAnIzY1Y2Y4NSc7XG4gIGxldCBtc2cgPSAnSW4gc3RvY2snO1xuICBpZiAoIWludmVudG9yeVN1ZmZpY2llbnQpIHtcbiAgICBjb2xvciA9ICcjZmY0NDQ5JztcbiAgICBtc2cgPSAnbm8gc3RvY2snO1xuICAgIGlmIChpbnZlbnRvcnlDb3VudCkge1xuICAgICAgY29sb3IgPSAnI2ZmYzkyOCc7XG4gICAgICBtc2cgPSBgaW5zdWZmaWNpZW50IHN0b2NrICgke2ludmVudG9yeUNvdW50fSBpbiBzdG9jaylgO1xuICAgIH1cbiAgfVxuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lSW52ZW50b3J5U3RhdHVzfSBtZXJjaGktZW1iZWQtZm9ybV9wcm9kdWN0LWdyb3VwLWludmVudG9yeS1zdGF0dXNgfVxuICAgICAgc3R5bGU9e3sgYmFja2dyb3VuZDogY29sb3IgfX1cbiAgICA+XG4gICAgICB7aXNMb2FkaW5nID8gKFxuICAgICAgICA8Q2dTcGlubmVyIGZvbnRTaXplPScxLjFyZW0nIGNsYXNzTmFtZT0nYW5pbWF0ZV9zcGluJyAvPlxuICAgICAgKSA6IChcbiAgICAgICAgPD5cbiAgICAgICAgICA8U3RhdHVzRG90IGNvbG9yPXtjb2xvcn0gLz4gPHNwYW4gY2xhc3NOYW1lPSdtci0xJz57bXNnfTwvc3Bhbj5cbiAgICAgICAgPC8+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufVxuXG5leHBvcnQgZGVmYXVsdCBJbnZlbnRvcnlTdGF0dXM7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7O0FBQ1osT0FBTyxLQUFLQSxLQUFLLE1BQU0sT0FBTztBQUM5QixTQUFTQyxvQkFBb0IsUUFBUSxzQ0FBc0M7QUFDM0UsU0FBU0MsU0FBUyxRQUFRLGdCQUFnQjtBQUFDLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxRQUFBLElBQUFDLFNBQUEsRUFBQUMsSUFBQSxJQUFBQyxLQUFBO0FBRTNDLFNBQVNDLFNBQVNBLENBQUFDLElBQUEsRUFBaUI7RUFBQSxJQUFkQyxLQUFLLEdBQUFELElBQUEsQ0FBTEMsS0FBSztFQUN4QixvQkFDRVAsSUFBQTtJQUNFUSxTQUFTLEVBQUMsT0FBTztJQUNqQkMsS0FBSyxFQUFFO01BQ0xDLGVBQWUsRUFBRSxNQUFNO01BQ3ZCQyxPQUFPLEVBQUUsTUFBTTtNQUNmQyxPQUFPLEVBQUUsS0FBSztNQUNkQyxZQUFZLEVBQUUsTUFBTTtNQUNwQkMsTUFBTSxFQUFFO0lBQ1YsQ0FBRTtJQUFBQyxRQUFBLGVBRUZmLElBQUE7TUFDRVEsU0FBUyxFQUFDLDBCQUEwQjtNQUNwQ0MsS0FBSyxFQUFFO1FBQ0xDLGVBQWUsRUFBRUgsS0FBSztRQUN0Qk0sWUFBWSxFQUFFLE1BQU07UUFDcEJHLE1BQU0sRUFBRSxDQUFDO1FBQ1RDLEtBQUssRUFBRTtNQUNUO0lBQUUsQ0FDSDtFQUFDLENBQ0UsQ0FBQztBQUVYO0FBT0EsU0FBU0MsZUFBZUEsQ0FBQUMsS0FBQSxFQUFxRDtFQUFBLElBQUFDLG9CQUFBLEdBQUFELEtBQUEsQ0FBbERFLGNBQWM7SUFBZEEsY0FBYyxHQUFBRCxvQkFBQSxjQUFHLENBQUMsR0FBQUEsb0JBQUE7SUFBRUUsbUJBQW1CLEdBQUFILEtBQUEsQ0FBbkJHLG1CQUFtQjtFQUNoRSxJQUFBQyxxQkFBQSxHQUNFMUIsb0JBQW9CLENBQUMsQ0FBQztJQURoQjJCLHdCQUF3QixHQUFBRCxxQkFBQSxDQUF4QkMsd0JBQXdCO0lBQUVDLE9BQU8sR0FBQUYscUJBQUEsQ0FBUEUsT0FBTztJQUFFQyxnQkFBZ0IsR0FBQUgscUJBQUEsQ0FBaEJHLGdCQUFnQjtFQUUzRCxJQUFNQyxTQUFTLEdBQUdGLE9BQU8sSUFBSUMsZ0JBQWdCO0VBQzdDLElBQUluQixLQUFLLEdBQUcsU0FBUztFQUNyQixJQUFJcUIsR0FBRyxHQUFHLFVBQVU7RUFDcEIsSUFBSSxDQUFDTixtQkFBbUIsRUFBRTtJQUN4QmYsS0FBSyxHQUFHLFNBQVM7SUFDakJxQixHQUFHLEdBQUcsVUFBVTtJQUNoQixJQUFJUCxjQUFjLEVBQUU7TUFDbEJkLEtBQUssR0FBRyxTQUFTO01BQ2pCcUIsR0FBRywwQkFBQUMsTUFBQSxDQUEwQlIsY0FBYyxlQUFZO0lBQ3pEO0VBQ0Y7RUFDQSxvQkFDRXJCLElBQUE7SUFDRVEsU0FBUyxLQUFBcUIsTUFBQSxDQUFLTCx3QkFBd0Isc0RBQW9EO0lBQzFGZixLQUFLLEVBQUU7TUFBRXFCLFVBQVUsRUFBRXZCO0lBQU0sQ0FBRTtJQUFBUSxRQUFBLEVBRTVCWSxTQUFTLGdCQUNSM0IsSUFBQSxDQUFDRixTQUFTO01BQUNpQyxRQUFRLEVBQUMsUUFBUTtNQUFDdkIsU0FBUyxFQUFDO0lBQWMsQ0FBRSxDQUFDLGdCQUV4REosS0FBQSxDQUFBRixTQUFBO01BQUFhLFFBQUEsZ0JBQ0VmLElBQUEsQ0FBQ0ssU0FBUztRQUFDRSxLQUFLLEVBQUVBO01BQU0sQ0FBRSxDQUFDLEtBQUMsZUFBQVAsSUFBQTtRQUFNUSxTQUFTLEVBQUMsTUFBTTtRQUFBTyxRQUFBLEVBQUVhO01BQUcsQ0FBTyxDQUFDO0lBQUEsQ0FDL0Q7RUFDSCxDQUNFLENBQUM7QUFFVjtBQUVBLGVBQWVWLGVBQWUiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import '../styles/globals.css';
|
|
3
|
+
interface Props {
|
|
4
|
+
allowAddToCart?: boolean;
|
|
5
|
+
apiUrl?: string;
|
|
6
|
+
hcaptchaSiteKey?: string;
|
|
7
|
+
classNameAlertSellerEditable?: string;
|
|
8
|
+
classNameButtonSubmit?: string;
|
|
9
|
+
classNameButtonGroupAdd?: string;
|
|
10
|
+
classNameButtonGroupRemove?: string;
|
|
11
|
+
classNameButtonsSubmitContainer?: string;
|
|
12
|
+
classNameFileUploadContainer?: string;
|
|
13
|
+
classNameFileUpload?: string;
|
|
14
|
+
classNameFilePreviewContainer?: string;
|
|
15
|
+
classNameFileUploadTextContainer?: string;
|
|
16
|
+
classNameFilePreviewIconWrapper?: string;
|
|
17
|
+
classNameFileUploadButton?: string;
|
|
18
|
+
classNameFileUploadIcon?: string;
|
|
19
|
+
classNameFileUploadIconSecond?: string;
|
|
20
|
+
classNameFileUploadIconContainer?: string;
|
|
21
|
+
classNameFileListItem?: string;
|
|
22
|
+
classNameFileButtonDownload?: string;
|
|
23
|
+
classNameFileButtonDelete?: string;
|
|
24
|
+
classNameFileListItemContainer?: string;
|
|
25
|
+
classNameGroupsContainer?: string;
|
|
26
|
+
classNameGroupPriceContainer?: string;
|
|
27
|
+
classNameInput?: string;
|
|
28
|
+
classNameInputContainer?: string;
|
|
29
|
+
classNameInventoryStatus?: string;
|
|
30
|
+
classNameOptionContainer?: string;
|
|
31
|
+
classNameOptionInput?: string;
|
|
32
|
+
classNameOptionLabel?: string;
|
|
33
|
+
classNameOptionSuper?: string;
|
|
34
|
+
classNameOptionsCheckboxRadioContainer?: string;
|
|
35
|
+
classNameOptionImage?: string;
|
|
36
|
+
classNameOptionImageContainer?: string;
|
|
37
|
+
classNameOptionColour?: string;
|
|
38
|
+
classNameOptionColourContainer?: string;
|
|
39
|
+
classNameProductTitle?: string;
|
|
40
|
+
classNameProductOriginTitle?: string;
|
|
41
|
+
classNameProductTotalContainer?: string;
|
|
42
|
+
classNameProductTotal?: string;
|
|
43
|
+
classNameQuantityLabelContainer?: string;
|
|
44
|
+
classNameUnitPrice?: string;
|
|
45
|
+
classNamePriceMatrix?: string;
|
|
46
|
+
hideCalculatedPrice?: boolean;
|
|
47
|
+
hideQuantityField?: boolean;
|
|
48
|
+
hideSubmitButtons?: boolean;
|
|
49
|
+
hideCost?: boolean;
|
|
50
|
+
hideCountry?: boolean;
|
|
51
|
+
hideTitle?: boolean;
|
|
52
|
+
initJob?: any;
|
|
53
|
+
initProduct: any;
|
|
54
|
+
onBuyNow?: (job: any) => void;
|
|
55
|
+
onGetQuote?: (job: any) => void;
|
|
56
|
+
onSubmit?: (job: any) => void;
|
|
57
|
+
showFeatureDeadline?: boolean;
|
|
58
|
+
showGroupBuyStatus?: boolean;
|
|
59
|
+
showPriceMatrix?: boolean;
|
|
60
|
+
}
|
|
61
|
+
declare function MerchiProductForm(props: Props): React.JSX.Element;
|
|
62
|
+
export default MerchiProductForm;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
7
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
8
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
9
|
+
import * as React from 'react';
|
|
10
|
+
import { MerchiProductFormProvider } from '../context/MerchiProductFormProvider';
|
|
11
|
+
import InputProductQuantity from './InputProductQuantity';
|
|
12
|
+
import ProductTotalCost from './ProductTotalCost';
|
|
13
|
+
import ProductButtonsSubmit from './ProductButtonsSubmit';
|
|
14
|
+
import { ProductDraftsCta } from './drafts/ProductDraftsHost';
|
|
15
|
+
import ProductTitle from './ProductTitle';
|
|
16
|
+
import Variations from './Variations';
|
|
17
|
+
import VariationsGroups from './VariationsGroups';
|
|
18
|
+
import { isProductLeadForm } from './utils';
|
|
19
|
+
import FormLead from './FormLead';
|
|
20
|
+
import ProductFeatureDeadline from './ProductFeatureDeadline';
|
|
21
|
+
import ProductGroupBuyStatus from './ProductGroupBuyStatus';
|
|
22
|
+
import '../styles/globals.css';
|
|
23
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
|
+
function MerchiProductForm(props) {
|
|
25
|
+
var _props$hideQuantityFi = props.hideQuantityField,
|
|
26
|
+
hideQuantityField = _props$hideQuantityFi === void 0 ? false : _props$hideQuantityFi,
|
|
27
|
+
_props$hideSubmitButt = props.hideSubmitButtons,
|
|
28
|
+
hideSubmitButtons = _props$hideSubmitButt === void 0 ? false : _props$hideSubmitButt,
|
|
29
|
+
_props$hideTitle = props.hideTitle,
|
|
30
|
+
hideTitle = _props$hideTitle === void 0 ? false : _props$hideTitle,
|
|
31
|
+
initProduct = props.initProduct,
|
|
32
|
+
showFeatureDeadline = props.showFeatureDeadline,
|
|
33
|
+
showGroupBuyStatus = props.showGroupBuyStatus;
|
|
34
|
+
var groupsFirst = initProduct.groupsFirst;
|
|
35
|
+
var isLeadForm = isProductLeadForm(initProduct);
|
|
36
|
+
if (isLeadForm) {
|
|
37
|
+
return /*#__PURE__*/_jsx(MerchiProductFormProvider, _objectSpread(_objectSpread({}, props), {}, {
|
|
38
|
+
children: /*#__PURE__*/_jsx(FormLead, {
|
|
39
|
+
hideSubmitButtons: hideSubmitButtons
|
|
40
|
+
})
|
|
41
|
+
}));
|
|
42
|
+
}
|
|
43
|
+
return /*#__PURE__*/_jsxs(MerchiProductFormProvider, _objectSpread(_objectSpread({}, props), {}, {
|
|
44
|
+
children: [!hideTitle && /*#__PURE__*/_jsx(ProductTitle, {}), showFeatureDeadline && /*#__PURE__*/_jsx(ProductFeatureDeadline, {}), showGroupBuyStatus && /*#__PURE__*/_jsx(ProductGroupBuyStatus, {}), !hideQuantityField && /*#__PURE__*/_jsx(InputProductQuantity, {}), /*#__PURE__*/_jsxs("div", {
|
|
45
|
+
className: "merchi-embed-form_variantion-container",
|
|
46
|
+
children: [groupsFirst && /*#__PURE__*/_jsx(VariationsGroups, {}), /*#__PURE__*/_jsx(Variations, {}), !groupsFirst && /*#__PURE__*/_jsx(VariationsGroups, {})]
|
|
47
|
+
}), /*#__PURE__*/_jsx(ProductTotalCost, {}), /*#__PURE__*/_jsx(ProductDraftsCta, {}), !hideSubmitButtons && /*#__PURE__*/_jsx(ProductButtonsSubmit, {})]
|
|
48
|
+
}));
|
|
49
|
+
}
|
|
50
|
+
export default MerchiProductForm;
|
|
51
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfdG9Qcm9wZXJ0eUtleSIsInZhbHVlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJpIiwiX3RvUHJpbWl0aXZlIiwidG9QcmltaXRpdmUiLCJjYWxsIiwiVHlwZUVycm9yIiwiU3RyaW5nIiwiTnVtYmVyIiwiUmVhY3QiLCJNZXJjaGlQcm9kdWN0Rm9ybVByb3ZpZGVyIiwiSW5wdXRQcm9kdWN0UXVhbnRpdHkiLCJQcm9kdWN0VG90YWxDb3N0IiwiUHJvZHVjdEJ1dHRvbnNTdWJtaXQiLCJQcm9kdWN0RHJhZnRzQ3RhIiwiUHJvZHVjdFRpdGxlIiwiVmFyaWF0aW9ucyIsIlZhcmlhdGlvbnNHcm91cHMiLCJpc1Byb2R1Y3RMZWFkRm9ybSIsIkZvcm1MZWFkIiwiUHJvZHVjdEZlYXR1cmVEZWFkbGluZSIsIlByb2R1Y3RHcm91cEJ1eVN0YXR1cyIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJNZXJjaGlQcm9kdWN0Rm9ybSIsInByb3BzIiwiX3Byb3BzJGhpZGVRdWFudGl0eUZpIiwiaGlkZVF1YW50aXR5RmllbGQiLCJfcHJvcHMkaGlkZVN1Ym1pdEJ1dHQiLCJoaWRlU3VibWl0QnV0dG9ucyIsIl9wcm9wcyRoaWRlVGl0bGUiLCJoaWRlVGl0bGUiLCJpbml0UHJvZHVjdCIsInNob3dGZWF0dXJlRGVhZGxpbmUiLCJzaG93R3JvdXBCdXlTdGF0dXMiLCJncm91cHNGaXJzdCIsImlzTGVhZEZvcm0iLCJjaGlsZHJlbiIsImNsYXNzTmFtZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL01lcmNoaVByb2R1Y3RGb3JtLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCc7XG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBNZXJjaGlQcm9kdWN0Rm9ybVByb3ZpZGVyIH0gZnJvbSAnLi4vY29udGV4dC9NZXJjaGlQcm9kdWN0Rm9ybVByb3ZpZGVyJztcbmltcG9ydCBJbnB1dFByb2R1Y3RRdWFudGl0eSBmcm9tICcuL0lucHV0UHJvZHVjdFF1YW50aXR5JztcbmltcG9ydCBQcm9kdWN0VG90YWxDb3N0IGZyb20gJy4vUHJvZHVjdFRvdGFsQ29zdCc7XG5pbXBvcnQgUHJvZHVjdEJ1dHRvbnNTdWJtaXQgZnJvbSAnLi9Qcm9kdWN0QnV0dG9uc1N1Ym1pdCc7XG5pbXBvcnQgeyBQcm9kdWN0RHJhZnRzQ3RhIH0gZnJvbSAnLi9kcmFmdHMvUHJvZHVjdERyYWZ0c0hvc3QnO1xuaW1wb3J0IFByb2R1Y3RUaXRsZSBmcm9tICcuL1Byb2R1Y3RUaXRsZSc7XG5pbXBvcnQgVmFyaWF0aW9ucyBmcm9tICcuL1ZhcmlhdGlvbnMnO1xuaW1wb3J0IFZhcmlhdGlvbnNHcm91cHMgZnJvbSAnLi9WYXJpYXRpb25zR3JvdXBzJztcbmltcG9ydCB7IGlzUHJvZHVjdExlYWRGb3JtIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgRm9ybUxlYWQgZnJvbSAnLi9Gb3JtTGVhZCc7XG5pbXBvcnQgUHJvZHVjdEZlYXR1cmVEZWFkbGluZSBmcm9tICcuL1Byb2R1Y3RGZWF0dXJlRGVhZGxpbmUnO1xuaW1wb3J0IFByb2R1Y3RHcm91cEJ1eVN0YXR1cyBmcm9tICcuL1Byb2R1Y3RHcm91cEJ1eVN0YXR1cyc7XG5pbXBvcnQgJy4uL3N0eWxlcy9nbG9iYWxzLmNzcyc7XG5cbmludGVyZmFjZSBQcm9wcyB7XG4gIGFsbG93QWRkVG9DYXJ0PzogYm9vbGVhbjtcbiAgYXBpVXJsPzogc3RyaW5nO1xuICBoY2FwdGNoYVNpdGVLZXk/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUFsZXJ0U2VsbGVyRWRpdGFibGU/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUJ1dHRvblN1Ym1pdD86IHN0cmluZztcbiAgY2xhc3NOYW1lQnV0dG9uR3JvdXBBZGQ/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUJ1dHRvbkdyb3VwUmVtb3ZlPzogc3RyaW5nO1xuICBjbGFzc05hbWVCdXR0b25zU3VibWl0Q29udGFpbmVyPzogc3RyaW5nO1xuICBjbGFzc05hbWVGaWxlVXBsb2FkQ29udGFpbmVyPzogc3RyaW5nO1xuICBjbGFzc05hbWVGaWxlVXBsb2FkPzogc3RyaW5nO1xuICBjbGFzc05hbWVGaWxlUHJldmlld0NvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lRmlsZVVwbG9hZFRleHRDb250YWluZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUZpbGVQcmV2aWV3SWNvbldyYXBwZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUZpbGVVcGxvYWRCdXR0b24/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUZpbGVVcGxvYWRJY29uPzogc3RyaW5nO1xuICBjbGFzc05hbWVGaWxlVXBsb2FkSWNvblNlY29uZD86IHN0cmluZztcbiAgY2xhc3NOYW1lRmlsZVVwbG9hZEljb25Db250YWluZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUZpbGVMaXN0SXRlbT86IHN0cmluZztcbiAgY2xhc3NOYW1lRmlsZUJ1dHRvbkRvd25sb2FkPzogc3RyaW5nO1xuICBjbGFzc05hbWVGaWxlQnV0dG9uRGVsZXRlPzogc3RyaW5nO1xuICBjbGFzc05hbWVGaWxlTGlzdEl0ZW1Db250YWluZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUdyb3Vwc0NvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lR3JvdXBQcmljZUNvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lSW5wdXQ/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZUlucHV0Q29udGFpbmVyPzogc3RyaW5nO1xuICBjbGFzc05hbWVJbnZlbnRvcnlTdGF0dXM/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU9wdGlvbkNvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lT3B0aW9uSW5wdXQ/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU9wdGlvbkxhYmVsPzogc3RyaW5nO1xuICBjbGFzc05hbWVPcHRpb25TdXBlcj86IHN0cmluZztcbiAgY2xhc3NOYW1lT3B0aW9uc0NoZWNrYm94UmFkaW9Db250YWluZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZU9wdGlvbkltYWdlPzogc3RyaW5nO1xuICBjbGFzc05hbWVPcHRpb25JbWFnZUNvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lT3B0aW9uQ29sb3VyPzogc3RyaW5nO1xuICBjbGFzc05hbWVPcHRpb25Db2xvdXJDb250YWluZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZVByb2R1Y3RUaXRsZT86IHN0cmluZztcbiAgY2xhc3NOYW1lUHJvZHVjdE9yaWdpblRpdGxlPzogc3RyaW5nO1xuICBjbGFzc05hbWVQcm9kdWN0VG90YWxDb250YWluZXI/OiBzdHJpbmc7XG4gIGNsYXNzTmFtZVByb2R1Y3RUb3RhbD86IHN0cmluZztcbiAgY2xhc3NOYW1lUXVhbnRpdHlMYWJlbENvbnRhaW5lcj86IHN0cmluZztcbiAgY2xhc3NOYW1lVW5pdFByaWNlPzogc3RyaW5nO1xuICBjbGFzc05hbWVQcmljZU1hdHJpeD86IHN0cmluZztcbiAgaGlkZUNhbGN1bGF0ZWRQcmljZT86IGJvb2xlYW47XG4gIGhpZGVRdWFudGl0eUZpZWxkPzogYm9vbGVhbjtcbiAgaGlkZVN1Ym1pdEJ1dHRvbnM/OiBib29sZWFuO1xuICBoaWRlQ29zdD86IGJvb2xlYW47XG4gIGhpZGVDb3VudHJ5PzogYm9vbGVhbjtcbiAgaGlkZVRpdGxlPzogYm9vbGVhbjtcbiAgaW5pdEpvYj86IGFueTtcbiAgaW5pdFByb2R1Y3Q6IGFueTtcbiAgb25CdXlOb3c/OiAoam9iOiBhbnkpID0+IHZvaWQ7XG4gIG9uR2V0UXVvdGU/OiAoam9iOiBhbnkpID0+IHZvaWQ7XG4gIG9uU3VibWl0PzogKGpvYjogYW55KSA9PiB2b2lkO1xuICBzaG93RmVhdHVyZURlYWRsaW5lPzogYm9vbGVhbjtcbiAgc2hvd0dyb3VwQnV5U3RhdHVzPzogYm9vbGVhbjtcbiAgc2hvd1ByaWNlTWF0cml4PzogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gTWVyY2hpUHJvZHVjdEZvcm0ocHJvcHM6IFByb3BzKSB7XG4gIGNvbnN0IHtcbiAgICBoaWRlUXVhbnRpdHlGaWVsZCA9IGZhbHNlLFxuICAgIGhpZGVTdWJtaXRCdXR0b25zID0gZmFsc2UsXG4gICAgaGlkZVRpdGxlID0gZmFsc2UsXG4gICAgaW5pdFByb2R1Y3QsXG4gICAgc2hvd0ZlYXR1cmVEZWFkbGluZSxcbiAgICBzaG93R3JvdXBCdXlTdGF0dXMsXG4gIH0gPSBwcm9wcztcbiAgY29uc3QgeyBncm91cHNGaXJzdCB9ID0gaW5pdFByb2R1Y3Q7XG4gIGNvbnN0IGlzTGVhZEZvcm0gPSBpc1Byb2R1Y3RMZWFkRm9ybShpbml0UHJvZHVjdCk7XG5cbiAgaWYgKGlzTGVhZEZvcm0pIHtcbiAgICByZXR1cm4gKFxuICAgICAgPE1lcmNoaVByb2R1Y3RGb3JtUHJvdmlkZXIgey4uLnByb3BzfT5cbiAgICAgICAgPEZvcm1MZWFkIGhpZGVTdWJtaXRCdXR0b25zPXtoaWRlU3VibWl0QnV0dG9uc30gLz5cbiAgICAgIDwvTWVyY2hpUHJvZHVjdEZvcm1Qcm92aWRlcj5cbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8TWVyY2hpUHJvZHVjdEZvcm1Qcm92aWRlciB7Li4ucHJvcHN9PlxuICAgICAgeyFoaWRlVGl0bGUgJiYgPFByb2R1Y3RUaXRsZSAvPn1cbiAgICAgIHtzaG93RmVhdHVyZURlYWRsaW5lICYmIDxQcm9kdWN0RmVhdHVyZURlYWRsaW5lIC8+fVxuICAgICAge3Nob3dHcm91cEJ1eVN0YXR1cyAmJiA8UHJvZHVjdEdyb3VwQnV5U3RhdHVzIC8+fVxuICAgICAgeyFoaWRlUXVhbnRpdHlGaWVsZCAmJiA8SW5wdXRQcm9kdWN0UXVhbnRpdHkgLz59XG4gICAgICA8ZGl2IGNsYXNzTmFtZT0nbWVyY2hpLWVtYmVkLWZvcm1fdmFyaWFudGlvbi1jb250YWluZXInPlxuICAgICAgICB7Z3JvdXBzRmlyc3QgJiYgPFZhcmlhdGlvbnNHcm91cHMgLz59XG4gICAgICAgIDxWYXJpYXRpb25zIC8+XG4gICAgICAgIHshZ3JvdXBzRmlyc3QgJiYgPFZhcmlhdGlvbnNHcm91cHMgLz59XG4gICAgICA8L2Rpdj5cbiAgICAgIDxQcm9kdWN0VG90YWxDb3N0IC8+XG4gICAgICA8UHJvZHVjdERyYWZ0c0N0YSAvPlxuICAgICAgeyFoaWRlU3VibWl0QnV0dG9ucyAmJiA8UHJvZHVjdEJ1dHRvbnNTdWJtaXQgLz59XG4gICAgPC9NZXJjaGlQcm9kdWN0Rm9ybVByb3ZpZGVyPlxuICApO1xufVxuXG5leHBvcnQgZGVmYXVsdCBNZXJjaGlQcm9kdWN0Rm9ybTtcbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTs7QUFBQyxTQUFBQSxRQUFBQyxDQUFBLHNDQUFBRCxPQUFBLHdCQUFBRSxNQUFBLHVCQUFBQSxNQUFBLENBQUFDLFFBQUEsYUFBQUYsQ0FBQSxrQkFBQUEsQ0FBQSxnQkFBQUEsQ0FBQSxXQUFBQSxDQUFBLHlCQUFBQyxNQUFBLElBQUFELENBQUEsQ0FBQUcsV0FBQSxLQUFBRixNQUFBLElBQUFELENBQUEsS0FBQUMsTUFBQSxDQUFBRyxTQUFBLHFCQUFBSixDQUFBLEtBQUFELE9BQUEsQ0FBQUMsQ0FBQTtBQUFBLFNBQUFLLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQVgsQ0FBQSxHQUFBUyxNQUFBLENB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
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { type PriceMatrixData } from '../utils/priceMatrix';
|
|
3
|
+
export interface PriceMatrixProps {
|
|
4
|
+
/** Precomputed table. Wins over `rules` / `product`. */
|
|
5
|
+
matrix?: PriceMatrixData | null;
|
|
6
|
+
/** Live pricing-rules bundle from `/products/:id/pricing-rules/`. */
|
|
7
|
+
rules?: any;
|
|
8
|
+
/** Product JSON; used for fallback breaks and MOQ when `rules` is absent. */
|
|
9
|
+
product?: any;
|
|
10
|
+
selections?: {
|
|
11
|
+
quantity?: number;
|
|
12
|
+
fieldValues?: Record<number, any>;
|
|
13
|
+
groups?: any[];
|
|
14
|
+
};
|
|
15
|
+
minQuantity?: number;
|
|
16
|
+
/** Current order quantity; highlights the matching column. */
|
|
17
|
+
quantity?: number;
|
|
18
|
+
onSelectBand?: (quantity: number) => void;
|
|
19
|
+
/** When false, quantity labels are not buttons. Defaults to whether `onSelectBand` is set. */
|
|
20
|
+
selectable?: boolean;
|
|
21
|
+
className?: string;
|
|
22
|
+
caption?: string;
|
|
23
|
+
showCurrency?: boolean;
|
|
24
|
+
showCurrencyCode?: boolean;
|
|
25
|
+
}
|
|
26
|
+
declare function PriceMatrix({ matrix: matrixProp, rules, product, selections, minQuantity, quantity, onSelectBand, selectable, className, caption, showCurrency, showCurrencyCode, }: PriceMatrixProps): React.JSX.Element;
|
|
27
|
+
export default PriceMatrix;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { formatCurrency } from './currency';
|
|
5
|
+
import { productSetupCostDetail } from './utils';
|
|
6
|
+
import { activeBandIndex, resolvePriceMatrix } from '../utils/priceMatrix';
|
|
7
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
function priceMatrixSetupDetail(product, rules) {
|
|
9
|
+
var _product$setupPrice, _rules$product, _product$setupPerGrou, _rules$product2, _product$currency;
|
|
10
|
+
var setupPrice = Number((_product$setupPrice = product === null || product === void 0 ? void 0 : product.setupPrice) !== null && _product$setupPrice !== void 0 ? _product$setupPrice : rules === null || rules === void 0 || (_rules$product = rules.product) === null || _rules$product === void 0 ? void 0 : _rules$product.setupPrice);
|
|
11
|
+
if (!setupPrice || setupPrice <= 0) return '';
|
|
12
|
+
return productSetupCostDetail({
|
|
13
|
+
setupPrice: setupPrice,
|
|
14
|
+
setupPerGroup: (_product$setupPerGrou = product === null || product === void 0 ? void 0 : product.setupPerGroup) !== null && _product$setupPerGrou !== void 0 ? _product$setupPerGrou : rules === null || rules === void 0 || (_rules$product2 = rules.product) === null || _rules$product2 === void 0 ? void 0 : _rules$product2.setupPerGroup,
|
|
15
|
+
currency: (_product$currency = product === null || product === void 0 ? void 0 : product.currency) !== null && _product$currency !== void 0 ? _product$currency : rules === null || rules === void 0 ? void 0 : rules.currency
|
|
16
|
+
}).trim();
|
|
17
|
+
}
|
|
18
|
+
function PriceMatrix(_ref) {
|
|
19
|
+
var matrixProp = _ref.matrix,
|
|
20
|
+
rules = _ref.rules,
|
|
21
|
+
product = _ref.product,
|
|
22
|
+
selections = _ref.selections,
|
|
23
|
+
minQuantity = _ref.minQuantity,
|
|
24
|
+
_ref$quantity = _ref.quantity,
|
|
25
|
+
quantity = _ref$quantity === void 0 ? 0 : _ref$quantity,
|
|
26
|
+
onSelectBand = _ref.onSelectBand,
|
|
27
|
+
selectable = _ref.selectable,
|
|
28
|
+
className = _ref.className,
|
|
29
|
+
_ref$caption = _ref.caption,
|
|
30
|
+
caption = _ref$caption === void 0 ? 'Bulk price' : _ref$caption,
|
|
31
|
+
_ref$showCurrency = _ref.showCurrency,
|
|
32
|
+
showCurrency = _ref$showCurrency === void 0 ? false : _ref$showCurrency,
|
|
33
|
+
_ref$showCurrencyCode = _ref.showCurrencyCode,
|
|
34
|
+
showCurrencyCode = _ref$showCurrencyCode === void 0 ? false : _ref$showCurrencyCode;
|
|
35
|
+
var matrix = resolvePriceMatrix({
|
|
36
|
+
matrix: matrixProp,
|
|
37
|
+
rules: rules,
|
|
38
|
+
product: product,
|
|
39
|
+
selections: selections,
|
|
40
|
+
minQuantity: minQuantity
|
|
41
|
+
});
|
|
42
|
+
if (!matrix) return null;
|
|
43
|
+
var active = activeBandIndex(matrix, quantity);
|
|
44
|
+
var canSelect = selectable !== null && selectable !== void 0 ? selectable : Boolean(onSelectBand);
|
|
45
|
+
var currencyOptions = {
|
|
46
|
+
currency: matrix.currency || (product === null || product === void 0 ? void 0 : product.currency) || 'AUD',
|
|
47
|
+
codeBeforeSymbol: showCurrencyCode,
|
|
48
|
+
showCodeIfNoSymbol: showCurrency
|
|
49
|
+
};
|
|
50
|
+
var setupDetail = priceMatrixSetupDetail(product, rules);
|
|
51
|
+
return /*#__PURE__*/_jsx("div", {
|
|
52
|
+
className: className || 'merchi-price-matrix',
|
|
53
|
+
children: /*#__PURE__*/_jsxs("table", {
|
|
54
|
+
className: "merchi-price-matrix_table",
|
|
55
|
+
children: [caption || setupDetail ? /*#__PURE__*/_jsxs("caption", {
|
|
56
|
+
className: "merchi-price-matrix_caption",
|
|
57
|
+
children: [caption ? /*#__PURE__*/_jsx("span", {
|
|
58
|
+
className: "merchi-price-matrix_caption-title",
|
|
59
|
+
children: caption
|
|
60
|
+
}) : null, setupDetail ? /*#__PURE__*/_jsx("span", {
|
|
61
|
+
className: "merchi-price-matrix_setup",
|
|
62
|
+
children: setupDetail
|
|
63
|
+
}) : null]
|
|
64
|
+
}) : null, /*#__PURE__*/_jsx("thead", {
|
|
65
|
+
children: /*#__PURE__*/_jsxs("tr", {
|
|
66
|
+
children: [/*#__PURE__*/_jsx("th", {
|
|
67
|
+
scope: "row",
|
|
68
|
+
className: "merchi-price-matrix_corner",
|
|
69
|
+
children: "Qty"
|
|
70
|
+
}), matrix.bands.map(function (band, index) {
|
|
71
|
+
var isActive = index === active;
|
|
72
|
+
var classNameTh = ['merchi-price-matrix_th', isActive ? 'merchi-price-matrix_col-active' : ''].filter(Boolean).join(' ');
|
|
73
|
+
return /*#__PURE__*/_jsx("th", {
|
|
74
|
+
scope: "col",
|
|
75
|
+
className: classNameTh,
|
|
76
|
+
"aria-current": isActive ? 'true' : undefined,
|
|
77
|
+
children: canSelect ? /*#__PURE__*/_jsx("button", {
|
|
78
|
+
type: "button",
|
|
79
|
+
className: "merchi-price-matrix_band",
|
|
80
|
+
onClick: function onClick() {
|
|
81
|
+
return onSelectBand === null || onSelectBand === void 0 ? void 0 : onSelectBand(band.quantity);
|
|
82
|
+
},
|
|
83
|
+
children: band.label
|
|
84
|
+
}) : band.label
|
|
85
|
+
}, band.quantity);
|
|
86
|
+
})]
|
|
87
|
+
})
|
|
88
|
+
}), /*#__PURE__*/_jsx("tbody", {
|
|
89
|
+
children: /*#__PURE__*/_jsxs("tr", {
|
|
90
|
+
children: [/*#__PURE__*/_jsx("th", {
|
|
91
|
+
scope: "row",
|
|
92
|
+
className: "merchi-price-matrix_row-label",
|
|
93
|
+
children: "Unit"
|
|
94
|
+
}), matrix.cells.map(function (cell, index) {
|
|
95
|
+
return /*#__PURE__*/_jsx("td", {
|
|
96
|
+
className: index === active ? 'merchi-price-matrix_col-active' : undefined,
|
|
97
|
+
children: formatCurrency(cell.costPerUnit, currencyOptions)
|
|
98
|
+
}, "unit-".concat(cell.quantity));
|
|
99
|
+
})]
|
|
100
|
+
})
|
|
101
|
+
})]
|
|
102
|
+
})
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
export default PriceMatrix;
|
|
106
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImZvcm1hdEN1cnJlbmN5IiwicHJvZHVjdFNldHVwQ29zdERldGFpbCIsImFjdGl2ZUJhbmRJbmRleCIsInJlc29sdmVQcmljZU1hdHJpeCIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJwcmljZU1hdHJpeFNldHVwRGV0YWlsIiwicHJvZHVjdCIsInJ1bGVzIiwiX3Byb2R1Y3Qkc2V0dXBQcmljZSIsIl9ydWxlcyRwcm9kdWN0IiwiX3Byb2R1Y3Qkc2V0dXBQZXJHcm91IiwiX3J1bGVzJHByb2R1Y3QyIiwiX3Byb2R1Y3QkY3VycmVuY3kiLCJzZXR1cFByaWNlIiwiTnVtYmVyIiwic2V0dXBQZXJHcm91cCIsImN1cnJlbmN5IiwidHJpbSIsIlByaWNlTWF0cml4IiwiX3JlZiIsIm1hdHJpeFByb3AiLCJtYXRyaXgiLCJzZWxlY3Rpb25zIiwibWluUXVhbnRpdHkiLCJfcmVmJHF1YW50aXR5IiwicXVhbnRpdHkiLCJvblNlbGVjdEJhbmQiLCJzZWxlY3RhYmxlIiwiY2xhc3NOYW1lIiwiX3JlZiRjYXB0aW9uIiwiY2FwdGlvbiIsIl9yZWYkc2hvd0N1cnJlbmN5Iiwic2hvd0N1cnJlbmN5IiwiX3JlZiRzaG93Q3VycmVuY3lDb2RlIiwic2hvd0N1cnJlbmN5Q29kZSIsImFjdGl2ZSIsImNhblNlbGVjdCIsIkJvb2xlYW4iLCJjdXJyZW5jeU9wdGlvbnMiLCJjb2RlQmVmb3JlU3ltYm9sIiwic2hvd0NvZGVJZk5vU3ltYm9sIiwic2V0dXBEZXRhaWwiLCJjaGlsZHJlbiIsInNjb3BlIiwiYmFuZHMiLCJtYXAiLCJiYW5kIiwiaW5kZXgiLCJpc0FjdGl2ZSIsImNsYXNzTmFtZVRoIiwiZmlsdGVyIiwiam9pbiIsInVuZGVmaW5lZCIsInR5cGUiLCJvbkNsaWNrIiwibGFiZWwiLCJjZWxscyIsImNlbGwiLCJjb3N0UGVyVW5pdCIsImNvbmNhdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL1ByaWNlTWF0cml4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCc7XG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBmb3JtYXRDdXJyZW5jeSB9IGZyb20gJy4vY3VycmVuY3knO1xuaW1wb3J0IHsgcHJvZHVjdFNldHVwQ29zdERldGFpbCB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHtcbiAgYWN0aXZlQmFuZEluZGV4LFxuICByZXNvbHZlUHJpY2VNYXRyaXgsXG4gIHR5cGUgUHJpY2VNYXRyaXhEYXRhLFxufSBmcm9tICcuLi91dGlscy9wcmljZU1hdHJpeCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJpY2VNYXRyaXhQcm9wcyB7XG4gIC8qKiBQcmVjb21wdXRlZCB0YWJsZS4gV2lucyBvdmVyIGBydWxlc2AgLyBgcHJvZHVjdGAuICovXG4gIG1hdHJpeD86IFByaWNlTWF0cml4RGF0YSB8IG51bGw7XG4gIC8qKiBMaXZlIHByaWNpbmctcnVsZXMgYnVuZGxlIGZyb20gYC9wcm9kdWN0cy86aWQvcHJpY2luZy1ydWxlcy9gLiAqL1xuICBydWxlcz86IGFueTtcbiAgLyoqIFByb2R1Y3QgSlNPTjsgdXNlZCBmb3IgZmFsbGJhY2sgYnJlYWtzIGFuZCBNT1Egd2hlbiBgcnVsZXNgIGlzIGFic2VudC4gKi9cbiAgcHJvZHVjdD86IGFueTtcbiAgc2VsZWN0aW9ucz86IHtcbiAgICBxdWFudGl0eT86IG51bWJlcjtcbiAgICBmaWVsZFZhbHVlcz86IFJlY29yZDxudW1iZXIsIGFueT47XG4gICAgZ3JvdXBzPzogYW55W107XG4gIH07XG4gIG1pblF1YW50aXR5PzogbnVtYmVyO1xuICAvKiogQ3VycmVudCBvcmRlciBxdWFudGl0eTsgaGlnaGxpZ2h0cyB0aGUgbWF0Y2hpbmcgY29sdW1uLiAqL1xuICBxdWFudGl0eT86IG51bWJlcjtcbiAgb25TZWxlY3RCYW5kPzogKHF1YW50aXR5OiBudW1iZXIpID0+IHZvaWQ7XG4gIC8qKiBXaGVuIGZhbHNlLCBxdWFudGl0eSBsYWJlbHMgYXJlIG5vdCBidXR0b25zLiBEZWZhdWx0cyB0byB3aGV0aGVyIGBvblNlbGVjdEJhbmRgIGlzIHNldC4gKi9cbiAgc2VsZWN0YWJsZT86IGJvb2xlYW47XG4gIGNsYXNzTmFtZT86IHN0cmluZztcbiAgY2FwdGlvbj86IHN0cmluZztcbiAgc2hvd0N1cnJlbmN5PzogYm9vbGVhbjtcbiAgc2hvd0N1cnJlbmN5Q29kZT86IGJvb2xlYW47XG59XG5cbmZ1bmN0aW9uIHByaWNlTWF0cml4U2V0dXBEZXRhaWwocHJvZHVjdD86IGFueSwgcnVsZXM/OiBhbnkpOiBzdHJpbmcge1xuICBjb25zdCBzZXR1cFByaWNlID0gTnVtYmVyKHByb2R1Y3Q/LnNldHVwUHJpY2UgPz8gcnVsZXM/LnByb2R1Y3Q/LnNldHVwUHJpY2UpO1xuICBpZiAoIXNldHVwUHJpY2UgfHwgc2V0dXBQcmljZSA8PSAwKSByZXR1cm4gJyc7XG4gIHJldHVybiBwcm9kdWN0U2V0dXBDb3N0RGV0YWlsKHtcbiAgICBzZXR1cFByaWNlLFxuICAgIHNldHVwUGVyR3JvdXA6IHByb2R1Y3Q/LnNldHVwUGVyR3JvdXAgPz8gcnVsZXM/LnByb2R1Y3Q/LnNldHVwUGVyR3JvdXAsXG4gICAgY3VycmVuY3k6IHByb2R1Y3Q/LmN1cnJlbmN5ID8/IHJ1bGVzPy5jdXJyZW5jeSxcbiAgfSkudHJpbSgpO1xufVxuXG5mdW5jdGlvbiBQcmljZU1hdHJpeCh7XG4gIG1hdHJpeDogbWF0cml4UHJvcCxcbiAgcnVsZXMsXG4gIHByb2R1Y3QsXG4gIHNlbGVjdGlvbnMsXG4gIG1pblF1YW50aXR5LFxuICBxdWFudGl0eSA9IDAsXG4gIG9uU2VsZWN0QmFuZCxcbiAgc2VsZWN0YWJsZSxcbiAgY2xhc3NOYW1lLFxuICBjYXB0aW9uID0gJ0J1bGsgcHJpY2UnLFxuICBzaG93Q3VycmVuY3kgPSBmYWxzZSxcbiAgc2hvd0N1cnJlbmN5Q29kZSA9IGZhbHNlLFxufTogUHJpY2VNYXRyaXhQcm9wcykge1xuICBjb25zdCBtYXRyaXggPSByZXNvbHZlUHJpY2VNYXRyaXgoe1xuICAgIG1hdHJpeDogbWF0cml4UHJvcCxcbiAgICBydWxlcyxcbiAgICBwcm9kdWN0LFxuICAgIHNlbGVjdGlvbnMsXG4gICAgbWluUXVhbnRpdHksXG4gIH0pO1xuICBpZiAoIW1hdHJpeCkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgYWN0aXZlID0gYWN0aXZlQmFuZEluZGV4KG1hdHJpeCwgcXVhbnRpdHkpO1xuICBjb25zdCBjYW5TZWxlY3QgPSBzZWxlY3RhYmxlID8/IEJvb2xlYW4ob25TZWxlY3RCYW5kKTtcbiAgY29uc3QgY3VycmVuY3lPcHRpb25zID0ge1xuICAgIGN1cnJlbmN5OiBtYXRyaXguY3VycmVuY3kgfHwgcHJvZHVjdD8uY3VycmVuY3kgfHwgJ0FVRCcsXG4gICAgY29kZUJlZm9yZVN5bWJvbDogc2hvd0N1cnJlbmN5Q29kZSxcbiAgICBzaG93Q29kZUlmTm9TeW1ib2w6IHNob3dDdXJyZW5jeSxcbiAgfTtcbiAgY29uc3Qgc2V0dXBEZXRhaWwgPSBwcmljZU1hdHJpeFNldHVwRGV0YWlsKHByb2R1Y3QsIHJ1bGVzKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWUgfHwgJ21lcmNoaS1wcmljZS1tYXRyaXgnfT5cbiAgICAgIDx0YWJsZSBjbGFzc05hbWU9J21lcmNoaS1wcmljZS1tYXRyaXhfdGFibGUnPlxuICAgICAgICB7Y2FwdGlvbiB8fCBzZXR1cERldGFpbCA/IChcbiAgICAgICAgICA8Y2FwdGlvbiBjbGFzc05hbWU9J21lcmNoaS1wcmljZS1tYXRyaXhfY2FwdGlvbic+XG4gICAgICAgICAgICB7Y2FwdGlvbiA/IChcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPSdtZXJjaGktcHJpY2UtbWF0cml4X2NhcHRpb24tdGl0bGUnPntjYXB0aW9ufTwvc3Bhbj5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAge3NldHVwRGV0YWlsID8gKFxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9J21lcmNoaS1wcmljZS1tYXRyaXhfc2V0dXAnPntzZXR1cERldGFpbH08L3NwYW4+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICA8L2NhcHRpb24+XG4gICAgICAgICkgOiBudWxsfVxuICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRoIHNjb3BlPSdyb3cnIGNsYXNzTmFtZT0nbWVyY2hpLXByaWNlLW1hdHJpeF9jb3JuZXInPlxuICAgICAgICAgICAgICBRdHlcbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICB7bWF0cml4LmJhbmRzLm1hcCgoYmFuZCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgaXNBY3RpdmUgPSBpbmRleCA9PT0gYWN0aXZlO1xuICAgICAgICAgICAgICBjb25zdCBjbGFzc05hbWVUaCA9IFtcbiAgICAgICAgICAgICAgICAnbWVyY2hpLXByaWNlLW1hdHJpeF90aCcsXG4gICAgICAgICAgICAgICAgaXNBY3RpdmUgPyAnbWVyY2hpLXByaWNlLW1hdHJpeF9jb2wtYWN0aXZlJyA6ICcnLFxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgLmZpbHRlcihCb29sZWFuKVxuICAgICAgICAgICAgICAgIC5qb2luKCcgJyk7XG4gICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPHRoXG4gICAgICAgICAgICAgICAgICBrZXk9e2JhbmQucXVhbnRpdHl9XG4gICAgICAgICAgICAgICAgICBzY29wZT0nY29sJ1xuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVUaH1cbiAgICAgICAgICAgICAgICAgIGFyaWEtY3VycmVudD17aXNBY3RpdmUgPyAndHJ1ZScgOiB1bmRlZmluZWR9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge2NhblNlbGVjdCA/IChcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9J2J1dHRvbidcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9J21lcmNoaS1wcmljZS1tYXRyaXhfYmFuZCdcbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBvblNlbGVjdEJhbmQ/LihiYW5kLnF1YW50aXR5KX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIHtiYW5kLmxhYmVsfVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgIGJhbmQubGFiZWxcbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pfVxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGhlYWQ+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggc2NvcGU9J3JvdycgY2xhc3NOYW1lPSdtZXJjaGktcHJpY2UtbWF0cml4X3Jvdy1sYWJlbCc+XG4gICAgICAgICAgICAgIFVuaXRcbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICB7bWF0cml4LmNlbGxzLm1hcCgoY2VsbCwgaW5kZXgpID0+IChcbiAgICAgICAgICAgICAgPHRkXG4gICAgICAgICAgICAgICAga2V5PXtgdW5pdC0ke2NlbGwucXVhbnRpdHl9YH1cbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICAgICAgICAgaW5kZXggPT09IGFjdGl2ZSA/ICdtZXJjaGktcHJpY2UtbWF0cml4X2NvbC1hY3RpdmUnIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2Zvcm1hdEN1cnJlbmN5KGNlbGwuY29zdFBlclVuaXQsIGN1cnJlbmN5T3B0aW9ucyl9XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICApKX1cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3Rib2R5PlxuICAgICAgPC90YWJsZT5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgUHJpY2VNYXRyaXg7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7O0FBQ1osT0FBTyxLQUFLQSxLQUFLLE1BQU0sT0FBTztBQUM5QixTQUFTQyxjQUFjLFFBQVEsWUFBWTtBQUMzQyxTQUFTQyxzQkFBc0IsUUFBUSxTQUFTO0FBQ2hELFNBQ0VDLGVBQWUsRUFDZkMsa0JBQWtCLFFBRWIsc0JBQXNCO0FBQUMsU0FBQUMsR0FBQSxJQUFBQyxJQUFBLEVBQUFDLElBQUEsSUFBQUMsS0FBQTtBQTBCOUIsU0FBU0Msc0JBQXNCQSxDQUFDQyxPQUFhLEVBQUVDLEtBQVcsRUFBVTtFQUFBLElBQUFDLG1CQUFBLEVBQUFDLGNBQUEsRUFBQUMscUJBQUEsRUFBQUMsZUFBQSxFQUFBQyxpQkFBQTtFQUNsRSxJQUFNQyxVQUFVLEdBQUdDLE1BQU0sRUFBQU4sbUJBQUEsR0FBQ0YsT0FBTyxhQUFQQSxPQUFPLHVCQUFQQSxPQUFPLENBQUVPLFVBQVUsY0FBQUwsbUJBQUEsY0FBQUEsbUJBQUEsR0FBSUQsS0FBSyxhQUFMQSxLQUFLLGdCQUFBRSxjQUFBLEdBQUxGLEtBQUssQ0FBRUQsT0FBTyxjQUFBRyxjQUFBLHVCQUFkQSxjQUFBLENBQWdCSSxVQUFVLENBQUM7RUFDNUUsSUFBSSxDQUFDQSxVQUFVLElBQUlBLFVBQVUsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFO0VBQzdDLE9BQU9mLHNCQUFzQixDQUFDO0lBQzVCZSxVQUFVLEVBQVZBLFVBQVU7SUFDVkUsYUFBYSxHQUFBTCxxQkFBQSxHQUFFSixPQUFPLGFBQVBBLE9BQU8sdUJBQVBBLE9BQU8sQ0FBRVMsYUFBYSxjQUFBTCxxQkFBQSxjQUFBQSxxQkFBQSxHQUFJSCxLQUFLLGFBQUxBLEtBQUssZ0JBQUFJLGVBQUEsR0FBTEosS0FBSyxDQUFFRCxPQUFPLGNB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
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { useMerchiFormContext } from '../context/MerchiProductFormProvider';
|
|
5
|
+
import { ButtonProductSubmit } from './buttons';
|
|
6
|
+
import { isProductSupplierMOD } from './utils';
|
|
7
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
function ProductButtonsSubmit() {
|
|
9
|
+
var _useMerchiFormContext = useMerchiFormContext(),
|
|
10
|
+
allowAddToCart = _useMerchiFormContext.allowAddToCart,
|
|
11
|
+
classNameButtonSubmit = _useMerchiFormContext.classNameButtonSubmit,
|
|
12
|
+
classNameButtonsSubmitContainer = _useMerchiFormContext.classNameButtonsSubmitContainer,
|
|
13
|
+
_useMerchiFormContext2 = _useMerchiFormContext.btnNameAddToCart,
|
|
14
|
+
btnNameAddToCart = _useMerchiFormContext2 === void 0 ? 'Add To Cart' : _useMerchiFormContext2,
|
|
15
|
+
loading = _useMerchiFormContext.loading,
|
|
16
|
+
onAddToCart = _useMerchiFormContext.onAddToCart,
|
|
17
|
+
onBuyNow = _useMerchiFormContext.onBuyNow,
|
|
18
|
+
onGetQuote = _useMerchiFormContext.onGetQuote,
|
|
19
|
+
product = _useMerchiFormContext.product,
|
|
20
|
+
productFormId = _useMerchiFormContext.productFormId,
|
|
21
|
+
hidePaymentUpfrontButton = _useMerchiFormContext.hidePaymentUpfrontButton,
|
|
22
|
+
hideRequestQuotationButton = _useMerchiFormContext.hideRequestQuotationButton;
|
|
23
|
+
var isSupplierMOD = isProductSupplierMOD(product);
|
|
24
|
+
var allowPaymentUpfront = product.allowPaymentUpfront,
|
|
25
|
+
allowQuotation = product.allowQuotation;
|
|
26
|
+
return /*#__PURE__*/_jsx(_Fragment, {
|
|
27
|
+
children: !productFormId && /*#__PURE__*/_jsx("div", {
|
|
28
|
+
className: classNameButtonsSubmitContainer,
|
|
29
|
+
"data-merchi-checkout-buttons": "",
|
|
30
|
+
children: isSupplierMOD ? /*#__PURE__*/_jsx("button", {
|
|
31
|
+
className: classNameButtonSubmit,
|
|
32
|
+
onClick: onGetQuote,
|
|
33
|
+
children: "Request Customisation"
|
|
34
|
+
}) : /*#__PURE__*/_jsxs(_Fragment, {
|
|
35
|
+
children: [!!(allowAddToCart && onAddToCart) && /*#__PURE__*/_jsx(ButtonProductSubmit, {
|
|
36
|
+
onClick: onAddToCart,
|
|
37
|
+
text: btnNameAddToCart
|
|
38
|
+
}), !!(allowPaymentUpfront && !hidePaymentUpfrontButton && onBuyNow) && /*#__PURE__*/_jsx(ButtonProductSubmit, {
|
|
39
|
+
onClick: onBuyNow,
|
|
40
|
+
text: "Buy Now"
|
|
41
|
+
}), !!(allowQuotation && !hideRequestQuotationButton && onGetQuote) && /*#__PURE__*/_jsx("button", {
|
|
42
|
+
disabled: loading,
|
|
43
|
+
className: classNameButtonSubmit,
|
|
44
|
+
onClick: onGetQuote,
|
|
45
|
+
children: loading ? 'Loading...' : 'Get Quote'
|
|
46
|
+
})]
|
|
47
|
+
})
|
|
48
|
+
})
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
export default ProductButtonsSubmit;
|
|
52
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZU1lcmNoaUZvcm1Db250ZXh0IiwiQnV0dG9uUHJvZHVjdFN1Ym1pdCIsImlzUHJvZHVjdFN1cHBsaWVyTU9EIiwianN4IiwiX2pzeCIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwianN4cyIsIl9qc3hzIiwiUHJvZHVjdEJ1dHRvbnNTdWJtaXQiLCJfdXNlTWVyY2hpRm9ybUNvbnRleHQiLCJhbGxvd0FkZFRvQ2FydCIsImNsYXNzTmFtZUJ1dHRvblN1Ym1pdCIsImNsYXNzTmFtZUJ1dHRvbnNTdWJtaXRDb250YWluZXIiLCJfdXNlTWVyY2hpRm9ybUNvbnRleHQyIiwiYnRuTmFtZUFkZFRvQ2FydCIsImxvYWRpbmciLCJvbkFkZFRvQ2FydCIsIm9uQnV5Tm93Iiwib25HZXRRdW90ZSIsInByb2R1Y3QiLCJwcm9kdWN0Rm9ybUlkIiwiaGlkZVBheW1lbnRVcGZyb250QnV0dG9uIiwiaGlkZVJlcXVlc3RRdW90YXRpb25CdXR0b24iLCJpc1N1cHBsaWVyTU9EIiwiYWxsb3dQYXltZW50VXBmcm9udCIsImFsbG93UXVvdGF0aW9uIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJvbkNsaWNrIiwidGV4dCIsImRpc2FibGVkIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbXBvbmVudHMvUHJvZHVjdEJ1dHRvbnNTdWJtaXQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZU1lcmNoaUZvcm1Db250ZXh0IH0gZnJvbSAnLi4vY29udGV4dC9NZXJjaGlQcm9kdWN0Rm9ybVByb3ZpZGVyJztcbmltcG9ydCB7IEJ1dHRvblByb2R1Y3RTdWJtaXQgfSBmcm9tICcuL2J1dHRvbnMnO1xuaW1wb3J0IHsgaXNQcm9kdWN0U3VwcGxpZXJNT0QgfSBmcm9tICcuL3V0aWxzJztcblxuZnVuY3Rpb24gUHJvZHVjdEJ1dHRvbnNTdWJtaXQoKSB7XG4gIGNvbnN0IHtcbiAgICBhbGxvd0FkZFRvQ2FydCxcbiAgICBjbGFzc05hbWVCdXR0b25TdWJtaXQsXG4gICAgY2xhc3NOYW1lQnV0dG9uc1N1Ym1pdENvbnRhaW5lcixcbiAgICBidG5OYW1lQWRkVG9DYXJ0ID0gJ0FkZCBUbyBDYXJ0JyxcbiAgICBsb2FkaW5nLFxuICAgIG9uQWRkVG9DYXJ0LFxuICAgIG9uQnV5Tm93LFxuICAgIG9uR2V0UXVvdGUsXG4gICAgcHJvZHVjdCxcbiAgICBwcm9kdWN0Rm9ybUlkLFxuICAgIGhpZGVQYXltZW50VXBmcm9udEJ1dHRvbixcbiAgICBoaWRlUmVxdWVzdFF1b3RhdGlvbkJ1dHRvbixcbiAgfSA9IHVzZU1lcmNoaUZvcm1Db250ZXh0KCk7XG4gIGNvbnN0IGlzU3VwcGxpZXJNT0QgPSBpc1Byb2R1Y3RTdXBwbGllck1PRChwcm9kdWN0KTtcbiAgY29uc3QgeyBhbGxvd1BheW1lbnRVcGZyb250LCBhbGxvd1F1b3RhdGlvbiB9ID0gcHJvZHVjdDtcbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgeyFwcm9kdWN0Rm9ybUlkICYmIChcbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lQnV0dG9uc1N1Ym1pdENvbnRhaW5lcn1cbiAgICAgICAgICBkYXRhLW1lcmNoaS1jaGVja291dC1idXR0b25zPScnXG4gICAgICAgID5cbiAgICAgICAgICB7aXNTdXBwbGllck1PRCA/IChcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3NOYW1lPXtjbGFzc05hbWVCdXR0b25TdWJtaXR9IG9uQ2xpY2s9e29uR2V0UXVvdGV9PlxuICAgICAgICAgICAgICBSZXF1ZXN0IEN1c3RvbWlzYXRpb25cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7ISEoYWxsb3dBZGRUb0NhcnQgJiYgb25BZGRUb0NhcnQpICYmIChcbiAgICAgICAgICAgICAgICA8QnV0dG9uUHJvZHVjdFN1Ym1pdFxuICAgICAgICAgICAgICAgICAgb25DbGljaz17b25BZGRUb0NhcnR9XG4gICAgICAgICAgICAgICAgICB0ZXh0PXtidG5OYW1lQWRkVG9DYXJ0fVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIHshIShcbiAgICAgICAgICAgICAgICBhbGxvd1BheW1lbnRVcGZyb250ICYmXG4gICAgICAgICAgICAgICAgIWhpZGVQYXltZW50VXBmcm9udEJ1dHRvbiAmJlxuICAgICAgICAgICAgICAgIG9uQnV5Tm93XG4gICAgICAgICAgICAgICkgJiYgPEJ1dHRvblByb2R1Y3RTdWJtaXQgb25DbGljaz17b25CdXlOb3d9IHRleHQ9J0J1eSBOb3cnIC8+fVxuICAgICAgICAgICAgICB7ISEoXG4gICAgICAgICAgICAgICAgYWxsb3dRdW90YXRpb24gJiZcbiAgICAgICAgICAgICAgICAhaGlkZVJlcXVlc3RRdW90YXRpb25CdXR0b24gJiZcbiAgICAgICAgICAgICAgICBvbkdldFF1b3RlXG4gICAgICAgICAgICAgICkgJiYgKFxuICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17bG9hZGluZ31cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVCdXR0b25TdWJtaXR9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uR2V0UXVvdGV9XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtsb2FkaW5nID8gJ0xvYWRpbmcuLi4nIDogJ0dldCBRdW90ZSd9XG4gICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICApfVxuICAgIDwvPlxuICApO1xufVxuXG5leHBvcnQgZGVmYXVsdCBQcm9kdWN0QnV0dG9uc1N1Ym1pdDtcbiJd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
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as moment from 'moment-timezone';
|
|
3
|
+
import DateCountdown from './DateCountdown';
|
|
4
|
+
import { useMerchiFormContext } from '../context/MerchiProductFormProvider';
|
|
5
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
6
|
+
function ProductFeatureDeadline() {
|
|
7
|
+
var _useMerchiFormContext = useMerchiFormContext(),
|
|
8
|
+
product = _useMerchiFormContext.product;
|
|
9
|
+
var featureDeadline = product.featureDeadline;
|
|
10
|
+
var tz = Intl && Intl.DateTimeFormat() && Intl.DateTimeFormat().resolvedOptions() ? Intl.DateTimeFormat().resolvedOptions().timeZone : '';
|
|
11
|
+
var deadlineUnix = featureDeadline > 1e12 ? featureDeadline / 1000 : featureDeadline;
|
|
12
|
+
var tooltip = deadlineUnix ? "Available until ".concat(moment.unix(deadlineUnix).tz(tz).format('ddd Do MMM')) : '';
|
|
13
|
+
return /*#__PURE__*/_jsx(_Fragment, {
|
|
14
|
+
children: featureDeadline && /*#__PURE__*/_jsx("div", {
|
|
15
|
+
className: "merchi-feature-deadline-container",
|
|
16
|
+
children: /*#__PURE__*/_jsx(DateCountdown, {
|
|
17
|
+
deadline: deadlineUnix,
|
|
18
|
+
hideSeconds: false,
|
|
19
|
+
tooltip: tooltip
|
|
20
|
+
})
|
|
21
|
+
})
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
export default ProductFeatureDeadline;
|
|
25
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIm1vbWVudCIsIkRhdGVDb3VudGRvd24iLCJ1c2VNZXJjaGlGb3JtQ29udGV4dCIsImpzeCIsIl9qc3giLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsIlByb2R1Y3RGZWF0dXJlRGVhZGxpbmUiLCJfdXNlTWVyY2hpRm9ybUNvbnRleHQiLCJwcm9kdWN0IiwiZmVhdHVyZURlYWRsaW5lIiwidHoiLCJJbnRsIiwiRGF0ZVRpbWVGb3JtYXQiLCJyZXNvbHZlZE9wdGlvbnMiLCJ0aW1lWm9uZSIsImRlYWRsaW5lVW5peCIsInRvb2x0aXAiLCJjb25jYXQiLCJ1bml4IiwiZm9ybWF0IiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJkZWFkbGluZSIsImhpZGVTZWNvbmRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbXBvbmVudHMvUHJvZHVjdEZlYXR1cmVEZWFkbGluZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0ICogYXMgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XG5pbXBvcnQgRGF0ZUNvdW50ZG93biBmcm9tICcuL0RhdGVDb3VudGRvd24nO1xuaW1wb3J0IHsgdXNlTWVyY2hpRm9ybUNvbnRleHQgfSBmcm9tICcuLi9jb250ZXh0L01lcmNoaVByb2R1Y3RGb3JtUHJvdmlkZXInO1xuXG5mdW5jdGlvbiBQcm9kdWN0RmVhdHVyZURlYWRsaW5lKCkge1xuICBjb25zdCB7IHByb2R1Y3QgfSA9IHVzZU1lcmNoaUZvcm1Db250ZXh0KCk7XG4gIGNvbnN0IHsgZmVhdHVyZURlYWRsaW5lIH0gPSBwcm9kdWN0O1xuICBjb25zdCB0eiA9IChJbnRsIGFzIGFueSkgJiYgKEludGwgYXMgYW55KS5EYXRlVGltZUZvcm1hdCgpICYmIChJbnRsIGFzIGFueSkuRGF0ZVRpbWVGb3JtYXQoKS5yZXNvbHZlZE9wdGlvbnMoKSA/XG4gICAgKEludGwgYXMgYW55KS5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lIDogJyc7XG4gIGNvbnN0IGRlYWRsaW5lVW5peCA9XG4gICAgZmVhdHVyZURlYWRsaW5lID4gMWUxMiA/IGZlYXR1cmVEZWFkbGluZSAvIDEwMDAgOiBmZWF0dXJlRGVhZGxpbmU7XG4gIGNvbnN0IHRvb2x0aXAgPSBkZWFkbGluZVVuaXggP1xuICAgIGBBdmFpbGFibGUgdW50aWwgJHttb21lbnQudW5peChkZWFkbGluZVVuaXgpLnR6KHR6KS5mb3JtYXQoJ2RkZCBEbyBNTU0nKX1gIDogJyc7XG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHtmZWF0dXJlRGVhZGxpbmUgJiZcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J21lcmNoaS1mZWF0dXJlLWRlYWRsaW5lLWNvbnRhaW5lcic+XG4gICAgICAgICAgPERhdGVDb3VudGRvd25cbiAgICAgICAgICAgIGRlYWRsaW5lPXtkZWFkbGluZVVuaXh9XG4gICAgICAgICAgICBoaWRlU2Vjb25kcz17ZmFsc2V9XG4gICAgICAgICAgICB0b29sdGlwPXt0b29sdGlwfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgfVxuICAgIDwvPlxuICApO1xufVxuXG5leHBvcnQgZGVmYXVsdCBQcm9kdWN0RmVhdHVyZURlYWRsaW5lO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLE9BQU8sS0FBS0MsTUFBTSxNQUFNLGlCQUFpQjtBQUN6QyxPQUFPQyxhQUFhLE1BQU0saUJBQWlCO0FBQzNDLFNBQVNDLG9CQUFvQixRQUFRLHNDQUFzQztBQUFDLFNBQUFDLEdBQUEsSUFBQUMsSUFBQSxFQUFBQyxRQUFBLElBQUFDLFNBQUE7QUFFNUUsU0FBU0Msc0JBQXNCQSxDQUFBLEVBQUc7RUFDaEMsSUFBQUMscUJBQUEsR0FBb0JOLG9CQUFvQixDQUFDLENBQUM7SUFBbENPLE9BQU8sR0FBQUQscUJBQUEsQ0FBUEMsT0FBTztFQUNmLElBQVFDLGVBQWUsR0FBS0QsT0FBTyxDQUEzQkMsZUFBZTtFQUN2QixJQUFNQyxFQUFFLEdBQUlDLElBQUksSUFBYUEsSUFBSSxDQUFTQyxjQUFjLENBQUMsQ0FBQyxJQUFLRCxJQUFJLENBQVNDLGNBQWMsQ0FBQyxDQUFDLENBQUNDLGVBQWUsQ0FBQyxDQUFDLEdBQzNHRixJQUFJLENBQVNDLGNBQWMsQ0FBQyxDQUFDLENBQUNDLGVBQWUsQ0FBQyxDQUFDLENBQUNDLFFBQVEsR0FBRyxFQUFFO0VBQ2hFLElBQU1DLFlBQVksR0FDaEJOLGVBQWUsR0FBRyxJQUFJLEdBQUdBLGVBQWUsR0FBRyxJQUFJLEdBQUdBLGVBQWU7RUFDbkUsSUFBTU8sT0FBTyxHQUFHRCxZQUFZLHNCQUFBRSxNQUFBLENBQ1BsQixNQUFNLENBQUNtQixJQUFJLENBQUNILFlBQVksQ0FBQyxDQUFDTCxFQUFFLENBQUNBLEVBQUUsQ0FBQyxDQUFDUyxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUssRUFBRTtFQUNqRixvQkFDRWhCLElBQUEsQ0FBQUUsU0FBQTtJQUFBZSxRQUFBLEVBQ0dYLGVBQWUsaUJBQ2ROLElBQUE7TUFBS2tCLFNBQVMsRUFBQyxtQ0FBbUM7TUFBQUQsUUFBQSxlQUNoRGpCLElBQUEsQ0FBQ0gsYUFBYTtRQUNac0IsUUFBUSxFQUFFUCxZQUFhO1FBQ3ZCUSxXQUFXLEVBQUUsS0FBTTtRQUNuQlAsT0FBTyxFQUFFQTtNQUFRLENBQ2xCO0lBQUMsQ0FDQztFQUFDLENBRVIsQ0FBQztBQUVQO0FBRUEsZUFBZVYsc0JBQXNCIiwiaWdub3JlTGlzdCI6W119
|