@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,207 @@
|
|
|
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
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
10
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
11
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
12
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
13
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
14
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
15
|
+
import * as React from 'react';
|
|
16
|
+
import { useLayoutEffect, useMemo, useState } from 'react';
|
|
17
|
+
import { createPortal } from 'react-dom';
|
|
18
|
+
import { FaPaintBrush } from 'react-icons/fa';
|
|
19
|
+
import { useMerchiFormContext } from '../../context/MerchiProductFormProvider';
|
|
20
|
+
import { productAllowsClientDesign } from '../../utils/draftTemplates';
|
|
21
|
+
import { isProductLeadForm } from '../utils';
|
|
22
|
+
import { clearDrafts, completeGroupCount, loadArtworkPath, loadDrafts, missingDesignSlots, saveArtworkPath } from '../../utils/draftStorage';
|
|
23
|
+
import DraftApprovePanel from './DraftApprovePanel';
|
|
24
|
+
import DraftDesignerSheet from './DraftDesignerSheet';
|
|
25
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
26
|
+
function findCheckoutButtonsEl() {
|
|
27
|
+
var marked = document.querySelector('[data-merchi-checkout-buttons]');
|
|
28
|
+
if (marked instanceof HTMLElement) return marked;
|
|
29
|
+
var named = document.querySelector('.merchi-product-buttons-submit-container, .merchi-action-buttons-container');
|
|
30
|
+
if (named instanceof HTMLElement) return named;
|
|
31
|
+
var submit = document.querySelector('.merchi-embed-form_button-submit');
|
|
32
|
+
return submit instanceof HTMLElement ? submit.parentElement : null;
|
|
33
|
+
}
|
|
34
|
+
export function ProductDraftsCta() {
|
|
35
|
+
var _hookForm$getValues;
|
|
36
|
+
var _useMerchiFormContext = useMerchiFormContext(),
|
|
37
|
+
classNameDraftCta = _useMerchiFormContext.classNameDraftCta,
|
|
38
|
+
hookForm = _useMerchiFormContext.hookForm,
|
|
39
|
+
job = _useMerchiFormContext.job,
|
|
40
|
+
product = _useMerchiFormContext.product,
|
|
41
|
+
setIsDraftDesignerOpen = _useMerchiFormContext.setIsDraftDesignerOpen,
|
|
42
|
+
setJob = _useMerchiFormContext.setJob;
|
|
43
|
+
var _useState = useState(0),
|
|
44
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
45
|
+
draftRevision = _useState2[0],
|
|
46
|
+
setDraftRevision = _useState2[1];
|
|
47
|
+
var _useState3 = useState('self'),
|
|
48
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
49
|
+
artworkPath = _useState4[0],
|
|
50
|
+
setArtworkPath = _useState4[1];
|
|
51
|
+
var allowed = productAllowsClientDesign(product);
|
|
52
|
+
var formValues = hookForm.watch ? hookForm.watch() : ((_hookForm$getValues = hookForm.getValues) === null || _hookForm$getValues === void 0 ? void 0 : _hookForm$getValues.call(hookForm)) || {};
|
|
53
|
+
var drafts = typeof window !== 'undefined' && product !== null && product !== void 0 && product.id ? loadDrafts(product.id) : [];
|
|
54
|
+
var status = useMemo(function () {
|
|
55
|
+
return completeGroupCount(product, formValues, drafts);
|
|
56
|
+
}, [product, formValues, drafts, draftRevision]);
|
|
57
|
+
var missing = useMemo(function () {
|
|
58
|
+
return missingDesignSlots(product, formValues, drafts);
|
|
59
|
+
}, [product, formValues, drafts, draftRevision]);
|
|
60
|
+
var hasSaved = status.complete > 0;
|
|
61
|
+
React.useEffect(function () {
|
|
62
|
+
if (!(product !== null && product !== void 0 && product.id)) return;
|
|
63
|
+
setArtworkPath(loadArtworkPath(product.id));
|
|
64
|
+
}, [product === null || product === void 0 ? void 0 : product.id]);
|
|
65
|
+
if (!allowed || isProductLeadForm(product)) return null;
|
|
66
|
+
function choosePath(path) {
|
|
67
|
+
setArtworkPath(path);
|
|
68
|
+
if (product !== null && product !== void 0 && product.id) saveArtworkPath(product.id, path);
|
|
69
|
+
}
|
|
70
|
+
function startAgain() {
|
|
71
|
+
if (!(product !== null && product !== void 0 && product.id)) return;
|
|
72
|
+
var confirmed = window.confirm('This will clear your saved artwork. Start again from scratch?');
|
|
73
|
+
if (!confirmed) return;
|
|
74
|
+
clearDrafts(product.id);
|
|
75
|
+
setJob(_objectSpread(_objectSpread({}, job), {}, {
|
|
76
|
+
ownDrafts: [],
|
|
77
|
+
clientFiles: []
|
|
78
|
+
}));
|
|
79
|
+
setDraftRevision(function (value) {
|
|
80
|
+
return value + 1;
|
|
81
|
+
});
|
|
82
|
+
choosePath('self');
|
|
83
|
+
setIsDraftDesignerOpen(true);
|
|
84
|
+
}
|
|
85
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
86
|
+
className: "".concat(classNameDraftCta || '', " merchi-product-draft-cta"),
|
|
87
|
+
children: [/*#__PURE__*/_jsx("strong", {
|
|
88
|
+
className: "merchi-product-draft-cta-heading",
|
|
89
|
+
children: "Artwork"
|
|
90
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
91
|
+
className: "merchi-product-draft-cta-tabs",
|
|
92
|
+
role: "tablist",
|
|
93
|
+
"aria-label": "Artwork options",
|
|
94
|
+
children: [/*#__PURE__*/_jsx("button", {
|
|
95
|
+
type: "button",
|
|
96
|
+
role: "tab",
|
|
97
|
+
"aria-selected": artworkPath === 'self',
|
|
98
|
+
className: "merchi-product-draft-cta-tab".concat(artworkPath === 'self' ? ' is-active' : ''),
|
|
99
|
+
onClick: function onClick() {
|
|
100
|
+
return choosePath('self');
|
|
101
|
+
},
|
|
102
|
+
children: "Design myself"
|
|
103
|
+
}), /*#__PURE__*/_jsx("button", {
|
|
104
|
+
type: "button",
|
|
105
|
+
role: "tab",
|
|
106
|
+
"aria-selected": artworkPath === 'service',
|
|
107
|
+
className: "merchi-product-draft-cta-tab".concat(artworkPath === 'service' ? ' is-active' : ''),
|
|
108
|
+
onClick: function onClick() {
|
|
109
|
+
return choosePath('service');
|
|
110
|
+
},
|
|
111
|
+
children: "Free design service"
|
|
112
|
+
})]
|
|
113
|
+
}), artworkPath === 'self' ? /*#__PURE__*/_jsxs("div", {
|
|
114
|
+
className: "merchi-product-draft-cta-panel",
|
|
115
|
+
role: "tabpanel",
|
|
116
|
+
children: [/*#__PURE__*/_jsx("span", {
|
|
117
|
+
children: "Use the online designer to place text, colours, and logos on the template."
|
|
118
|
+
}), hasSaved ? /*#__PURE__*/_jsx("span", {
|
|
119
|
+
children: status.total === 1 ? 'Draft saved' : "".concat(status.complete, " of ").concat(status.total, " groups saved")
|
|
120
|
+
}) : null, /*#__PURE__*/_jsxs("div", {
|
|
121
|
+
className: "merchi-product-draft-cta-actions",
|
|
122
|
+
children: [/*#__PURE__*/_jsxs("button", {
|
|
123
|
+
type: "button",
|
|
124
|
+
className: "merchi-product-draft-cta-btn",
|
|
125
|
+
onClick: function onClick() {
|
|
126
|
+
return setIsDraftDesignerOpen(true);
|
|
127
|
+
},
|
|
128
|
+
children: [/*#__PURE__*/_jsx(FaPaintBrush, {}), missing.length ? 'Open designer' : 'Edit']
|
|
129
|
+
}), hasSaved ? /*#__PURE__*/_jsx("button", {
|
|
130
|
+
type: "button",
|
|
131
|
+
className: "merchi-product-draft-cta-reset",
|
|
132
|
+
onClick: startAgain,
|
|
133
|
+
children: "Start again"
|
|
134
|
+
}) : null]
|
|
135
|
+
})]
|
|
136
|
+
}) : /*#__PURE__*/_jsx("div", {
|
|
137
|
+
className: "merchi-product-draft-cta-panel",
|
|
138
|
+
role: "tabpanel",
|
|
139
|
+
children: /*#__PURE__*/_jsx("span", {
|
|
140
|
+
children: "Skip the designer and add to cart, buy now, or get a quote. We'll create a free draft for you after the order."
|
|
141
|
+
})
|
|
142
|
+
})]
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
export default function ProductDraftsHost() {
|
|
146
|
+
var _hookForm$getValues2, _missing$;
|
|
147
|
+
var _useMerchiFormContext2 = useMerchiFormContext(),
|
|
148
|
+
hookForm = _useMerchiFormContext2.hookForm,
|
|
149
|
+
isDraftDesignerOpen = _useMerchiFormContext2.isDraftDesignerOpen,
|
|
150
|
+
isDraftModalOpen = _useMerchiFormContext2.isDraftModalOpen,
|
|
151
|
+
product = _useMerchiFormContext2.product,
|
|
152
|
+
setIsDraftDesignerOpen = _useMerchiFormContext2.setIsDraftDesignerOpen,
|
|
153
|
+
consumePendingCheckout = _useMerchiFormContext2.consumePendingCheckout;
|
|
154
|
+
var allowed = productAllowsClientDesign(product);
|
|
155
|
+
var formValues = hookForm.watch ? hookForm.watch() : ((_hookForm$getValues2 = hookForm.getValues) === null || _hookForm$getValues2 === void 0 ? void 0 : _hookForm$getValues2.call(hookForm)) || {};
|
|
156
|
+
var drafts = typeof window !== 'undefined' && product !== null && product !== void 0 && product.id ? loadDrafts(product.id) : [];
|
|
157
|
+
var missing = useMemo(function () {
|
|
158
|
+
return missingDesignSlots(product, formValues, drafts);
|
|
159
|
+
}, [product, formValues, drafts]);
|
|
160
|
+
var _useState5 = useState(null),
|
|
161
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
162
|
+
ctaAnchor = _useState6[0],
|
|
163
|
+
setCtaAnchor = _useState6[1];
|
|
164
|
+
useLayoutEffect(function () {
|
|
165
|
+
if (!allowed || isProductLeadForm(product)) return;
|
|
166
|
+
if (document.querySelector('.merchi-product-draft-cta')) return;
|
|
167
|
+
var buttons = findCheckoutButtonsEl();
|
|
168
|
+
if (!(buttons !== null && buttons !== void 0 && buttons.parentElement)) return;
|
|
169
|
+
var slot = document.createElement('div');
|
|
170
|
+
slot.setAttribute('data-merchi-draft-cta-slot', 'true');
|
|
171
|
+
buttons.parentElement.insertBefore(slot, buttons);
|
|
172
|
+
setCtaAnchor(slot);
|
|
173
|
+
return function () {
|
|
174
|
+
slot.remove();
|
|
175
|
+
setCtaAnchor(null);
|
|
176
|
+
};
|
|
177
|
+
}, [allowed, product]);
|
|
178
|
+
if (!allowed || isProductLeadForm(product)) return null;
|
|
179
|
+
function handleSaved() {
|
|
180
|
+
setIsDraftDesignerOpen(false);
|
|
181
|
+
var pending = consumePendingCheckout === null || consumePendingCheckout === void 0 ? void 0 : consumePendingCheckout();
|
|
182
|
+
if (pending) {
|
|
183
|
+
pending();
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
188
|
+
children: [ctaAnchor ? /*#__PURE__*/createPortal(/*#__PURE__*/_jsx(ProductDraftsCta, {}), ctaAnchor) : null, /*#__PURE__*/_jsx(DraftDesignerSheet, {
|
|
189
|
+
open: Boolean(isDraftDesignerOpen),
|
|
190
|
+
initialGroupIndex: ((_missing$ = missing[0]) === null || _missing$ === void 0 ? void 0 : _missing$.groupIndex) || 0,
|
|
191
|
+
onClose: function onClose() {
|
|
192
|
+
return setIsDraftDesignerOpen(false);
|
|
193
|
+
},
|
|
194
|
+
onSaved: handleSaved
|
|
195
|
+
}), isDraftModalOpen && typeof document !== 'undefined' ? /*#__PURE__*/createPortal(/*#__PURE__*/_jsx("div", {
|
|
196
|
+
className: "merchi-product-draft-approve",
|
|
197
|
+
role: "dialog",
|
|
198
|
+
"aria-modal": "true",
|
|
199
|
+
"aria-labelledby": "merchi-product-draft-approve-title",
|
|
200
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
201
|
+
className: "merchi-product-draft-approve-panel",
|
|
202
|
+
children: /*#__PURE__*/_jsx(DraftApprovePanel, {})
|
|
203
|
+
})
|
|
204
|
+
}), document.body) : null]
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJfdG9Qcm9wZXJ0eUtleSIsInZhbHVlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJpIiwiX3RvUHJpbWl0aXZlIiwidG9QcmltaXRpdmUiLCJjYWxsIiwiVHlwZUVycm9yIiwiU3RyaW5nIiwiTnVtYmVyIiwiX3NsaWNlZFRvQXJyYXkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfaXRlcmFibGVUb0FycmF5TGltaXQiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVSZXN0IiwiYSIsIl9hcnJheUxpa2VUb0FycmF5IiwidG9TdHJpbmciLCJzbGljZSIsIm5hbWUiLCJBcnJheSIsImZyb20iLCJ0ZXN0IiwibiIsImwiLCJ1IiwiZiIsIm5leHQiLCJkb25lIiwiaXNBcnJheSIsIlJlYWN0IiwidXNlTGF5b3V0RWZmZWN0IiwidXNlTWVtbyIsInVzZVN0YXRlIiwiY3JlYXRlUG9ydGFsIiwiRmFQYWludEJydXNoIiwidXNlTWVyY2hpRm9ybUNvbnRleHQiLCJwcm9kdWN0QWxsb3dzQ2xpZW50RGVzaWduIiwiaXNQcm9kdWN0TGVhZEZvcm0iLCJjbGVhckRyYWZ0cyIsImNvbXBsZXRlR3JvdXBDb3VudCIsImxvYWRBcnR3b3JrUGF0aCIsImxvYWREcmFmdHMiLCJtaXNzaW5nRGVzaWduU2xvdHMiLCJzYXZlQXJ0d29ya1BhdGgiLCJEcmFmdEFwcHJvdmVQYW5lbCIsIkRyYWZ0RGVzaWduZXJTaGVldCIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsImZpbmRDaGVja291dEJ1dHRvbnNFbCIsIm1hcmtlZCIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvciIsIkhUTUxFbGVtZW50IiwibmFtZWQiLCJzdWJtaXQiLCJwYXJlbnRFbGVtZW50IiwiUHJvZHVjdERyYWZ0c0N0YSIsIl9ob29rRm9ybSRnZXRWYWx1ZXMiLCJfdXNlTWVyY2hpRm9ybUNvbnRleHQiLCJjbGFzc05hbWVEcmFmdEN0YSIsImhvb2tGb3JtIiwiam9iIiwicHJvZHVjdCIsInNldElzRHJhZnREZXNpZ25lck9wZW4iLCJzZXRKb2IiLCJfdXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiZHJhZnRSZXZpc2lvbiIsInNldERyYWZ0UmV2aXNpb24iLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImFydHdvcmtQYXRoIiwic2V0QXJ0d29ya1BhdGgiLCJhbGxvd2VkIiwiZm9ybVZhbHVlcyIsIndhdGNoIiwiZ2V0VmFsdWVzIiwiZHJhZnRzIiwid2luZG93IiwiaWQiLCJzdGF0dXMiLCJtaXNzaW5nIiwiaGFzU2F2ZWQiLCJjb21wbGV0ZSIsInVzZUVmZmVjdCIsImNob29zZVBhdGgiLCJwYXRoIiwic3RhcnRBZ2FpbiIsImNvbmZpcm1lZCIsImNvbmZpcm0iLCJvd25EcmFmdHMiLCJjbGllbnRGaWxlcyIsImNsYXNzTmFtZSIsImNvbmNhdCIsImNoaWxkcmVuIiwicm9sZSIsInR5cGUiLCJvbkNsaWNrIiwidG90YWwiLCJQcm9kdWN0RHJhZnRzSG9zdCIsIl9ob29rRm9ybSRnZXRWYWx1ZXMyIiwiX21pc3NpbmckIiwiX3VzZU1lcmNoaUZvcm1Db250ZXh0MiIsImlzRHJhZnREZXNpZ25lck9wZW4iLCJpc0RyYWZ0TW9kYWxPcGVuIiwiY29uc3VtZVBlbmRpbmdDaGVja291dCIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwiY3RhQW5jaG9yIiwic2V0Q3RhQW5jaG9yIiwiYnV0dG9ucyIsInNsb3QiLCJjcmVhdGVFbGVtZW50Iiwic2V0QXR0cmlidXRlIiwiaW5zZXJ0QmVmb3JlIiwicmVtb3ZlIiwiaGFuZGxlU2F2ZWQiLCJwZW5kaW5nIiwib3BlbiIsIkJvb2xlYW4iLCJpbml0aWFsR3JvdXBJbmRleCIsImdyb3VwSW5kZXgiLCJvbkNsb3NlIiwib25TYXZlZCIsImJvZHkiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9kcmFmdHMvUHJvZHVjdERyYWZ0c0hvc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUxheW91dEVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjcmVhdGVQb3J0YWwgfSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IHsgRmFQYWludEJydXNoIH0gZnJvbSAncmVhY3QtaWNvbnMvZmEnO1xuaW1wb3J0IHsgdXNlTWVyY2hpRm9ybUNvbnRleHQgfSBmcm9tICcuLi8uLi9jb250ZXh0L01lcmNoaVByb2R1Y3RGb3JtUHJvdmlkZXInO1xuaW1wb3J0IHtcbiAgcHJvZHVjdEFsbG93c0NsaWVudERlc2lnbixcbn0gZnJvbSAnLi4vLi4vdXRpbHMvZHJhZnRUZW1wbGF0ZXMnO1xuaW1wb3J0IHsgaXNQcm9kdWN0TGVhZEZvcm0gfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQge1xuICBBcnR3b3JrUGF0aCxcbiAgY2xlYXJEcmFmdHMsXG4gIGNvbXBsZXRlR3JvdXBDb3VudCxcbiAgbG9hZEFydHdvcmtQYXRoLFxuICBsb2FkRHJhZnRzLFxuICBtaXNzaW5nRGVzaWduU2xvdHMsXG4gIHNhdmVBcnR3b3JrUGF0aCxcbn0gZnJvbSAnLi4vLi4vdXRpbHMvZHJhZnRTdG9yYWdlJztcbmltcG9ydCBEcmFmdEFwcHJvdmVQYW5lbCBmcm9tICcuL0RyYWZ0QXBwcm92ZVBhbmVsJztcbmltcG9ydCBEcmFmdERlc2lnbmVyU2hlZXQgZnJvbSAnLi9EcmFmdERlc2lnbmVyU2hlZXQnO1xuXG5mdW5jdGlvbiBmaW5kQ2hlY2tvdXRCdXR0b25zRWwoKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgY29uc3QgbWFya2VkID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtbWVyY2hpLWNoZWNrb3V0LWJ1dHRvbnNdJyk7XG4gIGlmIChtYXJrZWQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkgcmV0dXJuIG1hcmtlZDtcbiAgY29uc3QgbmFtZWQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICcubWVyY2hpLXByb2R1Y3QtYnV0dG9ucy1zdWJtaXQtY29udGFpbmVyLCAubWVyY2hpLWFjdGlvbi1idXR0b25zLWNvbnRhaW5lcicsXG4gICk7XG4gIGlmIChuYW1lZCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSByZXR1cm4gbmFtZWQ7XG4gIGNvbnN0IHN1Ym1pdCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5tZXJjaGktZW1iZWQtZm9ybV9idXR0b24tc3VibWl0Jyk7XG4gIHJldHVybiBzdWJtaXQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCA/IHN1Ym1pdC5wYXJlbnRFbGVtZW50IDogbnVsbDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFByb2R1Y3REcmFmdHNDdGEoKSB7XG4gIGNvbnN0IHtcbiAgICBjbGFzc05hbWVEcmFmdEN0YSxcbiAgICBob29rRm9ybSxcbiAgICBqb2IsXG4gICAgcHJvZHVjdCxcbiAgICBzZXRJc0RyYWZ0RGVzaWduZXJPcGVuLFxuICAgIHNldEpvYixcbiAgfSA9IHVzZU1lcmNoaUZvcm1Db250ZXh0KCk7XG4gIGNvbnN0IFtkcmFmdFJldmlzaW9uLCBzZXREcmFmdFJldmlzaW9uXSA9IHVzZVN0YXRlKDApO1xuICBjb25zdCBbYXJ0d29ya1BhdGgsIHNldEFydHdvcmtQYXRoXSA9IHVzZVN0YXRlPEFydHdvcmtQYXRoPignc2VsZicpO1xuXG4gIGNvbnN0IGFsbG93ZWQgPSBwcm9kdWN0QWxsb3dzQ2xpZW50RGVzaWduKHByb2R1Y3QpO1xuICBjb25zdCBmb3JtVmFsdWVzID0gaG9va0Zvcm0ud2F0Y2ggPyBob29rRm9ybS53YXRjaCgpIDogaG9va0Zvcm0uZ2V0VmFsdWVzPy4oKSB8fCB7fTtcbiAgY29uc3QgZHJhZnRzID0gdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgcHJvZHVjdD8uaWRcbiAgICA/IGxvYWREcmFmdHMocHJvZHVjdC5pZClcbiAgICA6IFtdO1xuICBjb25zdCBzdGF0dXMgPSB1c2VNZW1vKFxuICAgICgpID0+IGNvbXBsZXRlR3JvdXBDb3VudChwcm9kdWN0LCBmb3JtVmFsdWVzLCBkcmFmdHMpLFxuICAgIFtwcm9kdWN0LCBmb3JtVmFsdWVzLCBkcmFmdHMsIGRyYWZ0UmV2aXNpb25dLFxuICApO1xuICBjb25zdCBtaXNzaW5nID0gdXNlTWVtbyhcbiAgICAoKSA9PiBtaXNzaW5nRGVzaWduU2xvdHMocHJvZHVjdCwgZm9ybVZhbHVlcywgZHJhZnRzKSxcbiAgICBbcHJvZHVjdCwgZm9ybVZhbHVlcywgZHJhZnRzLCBkcmFmdFJldmlzaW9uXSxcbiAgKTtcbiAgY29uc3QgaGFzU2F2ZWQgPSBzdGF0dXMuY29tcGxldGUgPiAwO1xuXG4gIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFwcm9kdWN0Py5pZCkgcmV0dXJuO1xuICAgIHNldEFydHdvcmtQYXRoKGxvYWRBcnR3b3JrUGF0aChwcm9kdWN0LmlkKSk7XG4gIH0sIFtwcm9kdWN0Py5pZF0pO1xuXG4gIGlmICghYWxsb3dlZCB8fCBpc1Byb2R1Y3RMZWFkRm9ybShwcm9kdWN0KSkgcmV0dXJuIG51bGw7XG5cbiAgZnVuY3Rpb24gY2hvb3NlUGF0aChwYXRoOiBBcnR3b3JrUGF0aCkge1xuICAgIHNldEFydHdvcmtQYXRoKHBhdGgpO1xuICAgIGlmIChwcm9kdWN0Py5pZCkgc2F2ZUFydHdvcmtQYXRoKHByb2R1Y3QuaWQsIHBhdGgpO1xuICB9XG5cbiAgZnVuY3Rpb24gc3RhcnRBZ2FpbigpIHtcbiAgICBpZiAoIXByb2R1Y3Q/LmlkKSByZXR1cm47XG4gICAgY29uc3QgY29uZmlybWVkID0gd2luZG93LmNvbmZpcm0oXG4gICAgICAnVGhpcyB3aWxsIGNsZWFyIHlvdXIgc2F2ZWQgYXJ0d29yay4gU3RhcnQgYWdhaW4gZnJvbSBzY3JhdGNoPycsXG4gICAgKTtcbiAgICBpZiAoIWNvbmZpcm1lZCkgcmV0dXJuO1xuICAgIGNsZWFyRHJhZnRzKHByb2R1Y3QuaWQpO1xuICAgIHNldEpvYih7XG4gICAgICAuLi5qb2IsXG4gICAgICBvd25EcmFmdHM6IFtdLFxuICAgICAgY2xpZW50RmlsZXM6IFtdLFxuICAgIH0pO1xuICAgIHNldERyYWZ0UmV2aXNpb24oKHZhbHVlKSA9PiB2YWx1ZSArIDEpO1xuICAgIGNob29zZVBhdGgoJ3NlbGYnKTtcbiAgICBzZXRJc0RyYWZ0RGVzaWduZXJPcGVuKHRydWUpO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17YCR7Y2xhc3NOYW1lRHJhZnRDdGEgfHwgJyd9IG1lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YWB9PlxuICAgICAgPHN0cm9uZyBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1oZWFkaW5nJz5BcnR3b3JrPC9zdHJvbmc+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT0nbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLXRhYnMnIHJvbGU9J3RhYmxpc3QnIGFyaWEtbGFiZWw9J0FydHdvcmsgb3B0aW9ucyc+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICB0eXBlPSdidXR0b24nXG4gICAgICAgICAgcm9sZT0ndGFiJ1xuICAgICAgICAgIGFyaWEtc2VsZWN0ZWQ9e2FydHdvcmtQYXRoID09PSAnc2VsZid9XG4gICAgICAgICAgY2xhc3NOYW1lPXtgbWVyY2hpLXByb2R1Y3QtZHJhZnQtY3RhLXRhYiR7YXJ0d29ya1BhdGggPT09ICdzZWxmJyA/ICcgaXMtYWN0aXZlJyA6ICcnfWB9XG4gICAgICAgICAgb25DbGljaz17KCkgPT4gY2hvb3NlUGF0aCgnc2VsZicpfVxuICAgICAgICA+XG4gICAgICAgICAgRGVzaWduIG15c2VsZlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIHR5cGU9J2J1dHRvbidcbiAgICAgICAgICByb2xlPSd0YWInXG4gICAgICAgICAgYXJpYS1zZWxlY3RlZD17YXJ0d29ya1BhdGggPT09ICdzZXJ2aWNlJ31cbiAgICAgICAgICBjbGFzc05hbWU9e2BtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEtdGFiJHthcnR3b3JrUGF0aCA9PT0gJ3NlcnZpY2UnID8gJyBpcy1hY3RpdmUnIDogJyd9YH1cbiAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBjaG9vc2VQYXRoKCdzZXJ2aWNlJyl9XG4gICAgICAgID5cbiAgICAgICAgICBGcmVlIGRlc2lnbiBzZXJ2aWNlXG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICB7YXJ0d29ya1BhdGggPT09ICdzZWxmJyA/IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1wYW5lbCcgcm9sZT0ndGFicGFuZWwnPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgVXNlIHRoZSBvbmxpbmUgZGVzaWduZXIgdG8gcGxhY2UgdGV4dCwgY29sb3VycywgYW5kIGxvZ29zIG9uIHRoZSB0ZW1wbGF0ZS5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAge2hhc1NhdmVkID8gKFxuICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAgIHtzdGF0dXMudG90YWwgPT09IDFcbiAgICAgICAgICAgICAgICA/ICdEcmFmdCBzYXZlZCdcbiAgICAgICAgICAgICAgICA6IGAke3N0YXR1cy5jb21wbGV0ZX0gb2YgJHtzdGF0dXMudG90YWx9IGdyb3VwcyBzYXZlZGB9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1hY3Rpb25zJz5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgdHlwZT0nYnV0dG9uJ1xuICAgICAgICAgICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1idG4nXG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldElzRHJhZnREZXNpZ25lck9wZW4odHJ1ZSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxGYVBhaW50QnJ1c2ggLz5cbiAgICAgICAgICAgICAge21pc3NpbmcubGVuZ3RoID8gJ09wZW4gZGVzaWduZXInIDogJ0VkaXQnfVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICB7aGFzU2F2ZWQgPyAoXG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPSdidXR0b24nXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1jdGEtcmVzZXQnXG4gICAgICAgICAgICAgICAgb25DbGljaz17c3RhcnRBZ2Fpbn1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIFN0YXJ0IGFnYWluXG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKSA6IChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YS1wYW5lbCcgcm9sZT0ndGFicGFuZWwnPlxuICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgU2tpcCB0aGUgZGVzaWduZXIgYW5kIGFkZCB0byBjYXJ0LCBidXkgbm93LCBvciBnZXQgYSBxdW90ZS4gV2UmYXBvcztsbCBjcmVhdGUgYSBmcmVlXG4gICAgICAgICAgICBkcmFmdCBmb3IgeW91IGFmdGVyIHRoZSBvcmRlci5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gUHJvZHVjdERyYWZ0c0hvc3QoKSB7XG4gIGNvbnN0IHtcbiAgICBob29rRm9ybSxcbiAgICBpc0RyYWZ0RGVzaWduZXJPcGVuLFxuICAgIGlzRHJhZnRNb2RhbE9wZW4sXG4gICAgcHJvZHVjdCxcbiAgICBzZXRJc0RyYWZ0RGVzaWduZXJPcGVuLFxuICAgIGNvbnN1bWVQZW5kaW5nQ2hlY2tvdXQsXG4gIH0gPSB1c2VNZXJjaGlGb3JtQ29udGV4dCgpO1xuXG4gIGNvbnN0IGFsbG93ZWQgPSBwcm9kdWN0QWxsb3dzQ2xpZW50RGVzaWduKHByb2R1Y3QpO1xuICBjb25zdCBmb3JtVmFsdWVzID0gaG9va0Zvcm0ud2F0Y2ggPyBob29rRm9ybS53YXRjaCgpIDogaG9va0Zvcm0uZ2V0VmFsdWVzPy4oKSB8fCB7fTtcbiAgY29uc3QgZHJhZnRzID0gdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgcHJvZHVjdD8uaWRcbiAgICA/IGxvYWREcmFmdHMocHJvZHVjdC5pZClcbiAgICA6IFtdO1xuICBjb25zdCBtaXNzaW5nID0gdXNlTWVtbyhcbiAgICAoKSA9PiBtaXNzaW5nRGVzaWduU2xvdHMocHJvZHVjdCwgZm9ybVZhbHVlcywgZHJhZnRzKSxcbiAgICBbcHJvZHVjdCwgZm9ybVZhbHVlcywgZHJhZnRzXSxcbiAgKTtcbiAgY29uc3QgW2N0YUFuY2hvciwgc2V0Q3RhQW5jaG9yXSA9IHVzZVN0YXRlPEhUTUxFbGVtZW50IHwgbnVsbD4obnVsbCk7XG5cbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIWFsbG93ZWQgfHwgaXNQcm9kdWN0TGVhZEZvcm0ocHJvZHVjdCkpIHJldHVybjtcbiAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm1lcmNoaS1wcm9kdWN0LWRyYWZ0LWN0YScpKSByZXR1cm47XG5cbiAgICBjb25zdCBidXR0b25zID0gZmluZENoZWNrb3V0QnV0dG9uc0VsKCk7XG4gICAgaWYgKCFidXR0b25zPy5wYXJlbnRFbGVtZW50KSByZXR1cm47XG5cbiAgICBjb25zdCBzbG90ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgc2xvdC5zZXRBdHRyaWJ1dGUoJ2RhdGEtbWVyY2hpLWRyYWZ0LWN0YS1zbG90JywgJ3RydWUnKTtcbiAgICBidXR0b25zLnBhcmVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKHNsb3QsIGJ1dHRvbnMpO1xuICAgIHNldEN0YUFuY2hvcihzbG90KTtcbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgc2xvdC5yZW1vdmUoKTtcbiAgICAgIHNldEN0YUFuY2hvcihudWxsKTtcbiAgICB9O1xuICB9LCBbYWxsb3dlZCwgcHJvZHVjdF0pO1xuXG4gIGlmICghYWxsb3dlZCB8fCBpc1Byb2R1Y3RMZWFkRm9ybShwcm9kdWN0KSkgcmV0dXJuIG51bGw7XG5cbiAgZnVuY3Rpb24gaGFuZGxlU2F2ZWQoKSB7XG4gICAgc2V0SXNEcmFmdERlc2lnbmVyT3BlbihmYWxzZSk7XG4gICAgY29uc3QgcGVuZGluZyA9IGNvbnN1bWVQZW5kaW5nQ2hlY2tvdXQ/LigpO1xuICAgIGlmIChwZW5kaW5nKSB7XG4gICAgICBwZW5kaW5nKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge2N0YUFuY2hvciA/IGNyZWF0ZVBvcnRhbCg8UHJvZHVjdERyYWZ0c0N0YSAvPiwgY3RhQW5jaG9yKSA6IG51bGx9XG5cbiAgICAgIDxEcmFmdERlc2lnbmVyU2hlZXRcbiAgICAgICAgb3Blbj17Qm9vbGVhbihpc0RyYWZ0RGVzaWduZXJPcGVuKX1cbiAgICAgICAgaW5pdGlhbEdyb3VwSW5kZXg9e21pc3NpbmdbMF0/Lmdyb3VwSW5kZXggfHwgMH1cbiAgICAgICAgb25DbG9zZT17KCkgPT4gc2V0SXNEcmFmdERlc2lnbmVyT3BlbihmYWxzZSl9XG4gICAgICAgIG9uU2F2ZWQ9e2hhbmRsZVNhdmVkfVxuICAgICAgLz5cblxuICAgICAge2lzRHJhZnRNb2RhbE9wZW4gJiYgdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJ1xuICAgICAgICA/IGNyZWF0ZVBvcnRhbChcbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzc05hbWU9J21lcmNoaS1wcm9kdWN0LWRyYWZ0LWFwcHJvdmUnXG4gICAgICAgICAgICByb2xlPSdkaWFsb2cnXG4gICAgICAgICAgICBhcmlhLW1vZGFsPSd0cnVlJ1xuICAgICAgICAgICAgYXJpYS1sYWJlbGxlZGJ5PSdtZXJjaGktcHJvZHVjdC1kcmFmdC1hcHByb3ZlLXRpdGxlJ1xuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdtZXJjaGktcHJvZHVjdC1kcmFmdC1hcHByb3ZlLXBhbmVsJz5cbiAgICAgICAgICAgICAgPERyYWZ0QXBwcm92ZVBhbmVsIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj4sXG4gICAgICAgICAgZG9jdW1lbnQuYm9keSxcbiAgICAgICAgKVxuICAgICAgICA6IG51bGx9XG4gICAgPC8+XG4gICk7XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7O0FBQUMsU0FBQUEsUUFBQUMsQ0FBQSxzQ0FBQUQsT0FBQSx3QkFBQUUsTUFBQSx1QkFBQUEsTUFBQSxDQUFBQyxRQUFBLGFBQUFGLENBQUEsa0JBQUFBLENBQUEsZ0JBQUFBLENBQUEsV0FBQUEsQ0FBQSx5QkFBQUMsTUFBQSxJQUFBRCxDQUFBLENBQUFHLFdBQUEsS0FBQUYsTUFBQSxJQUFBRCxDQUFBLEtBQUFDLE1BQUEsQ0FBQUcsU0FBQSxxQkFBQUosQ0FBQSxLQUFBRCxPQUFBLENBQUFDLENBQUE7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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useHtmlImage(src?: string | string[] | null): HTMLImageElement | undefined;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
2
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
3
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
4
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
5
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
6
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
7
|
+
import { useEffect, useState } from 'react';
|
|
8
|
+
import { loadHtmlImageFromSources } from '../../utils/draftExport';
|
|
9
|
+
function asSources(src) {
|
|
10
|
+
if (!src) return [];
|
|
11
|
+
return (Array.isArray(src) ? src : [src]).filter(Boolean);
|
|
12
|
+
}
|
|
13
|
+
export function useHtmlImage(src) {
|
|
14
|
+
var _useState = useState(undefined),
|
|
15
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
16
|
+
image = _useState2[0],
|
|
17
|
+
setImage = _useState2[1];
|
|
18
|
+
var sources = asSources(src);
|
|
19
|
+
var sourceKey = sources.join('|');
|
|
20
|
+
useEffect(function () {
|
|
21
|
+
if (!sources.length) {
|
|
22
|
+
setImage(undefined);
|
|
23
|
+
return undefined;
|
|
24
|
+
}
|
|
25
|
+
var cancelled = false;
|
|
26
|
+
var objectUrl = '';
|
|
27
|
+
loadHtmlImageFromSources(sources, true).then(function (img) {
|
|
28
|
+
if (cancelled) {
|
|
29
|
+
var persisted = img._merchiObjectUrl;
|
|
30
|
+
if (persisted) URL.revokeObjectURL(persisted);
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
objectUrl = img._merchiObjectUrl || '';
|
|
34
|
+
setImage(img);
|
|
35
|
+
})["catch"](function () {
|
|
36
|
+
if (!cancelled) setImage(undefined);
|
|
37
|
+
});
|
|
38
|
+
return function () {
|
|
39
|
+
cancelled = true;
|
|
40
|
+
if (objectUrl) URL.revokeObjectURL(objectUrl);
|
|
41
|
+
};
|
|
42
|
+
}, [sourceKey]);
|
|
43
|
+
return image;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VFZmZlY3QiLCJ1c2VTdGF0ZSIsImxvYWRIdG1sSW1hZ2VGcm9tU291cmNlcyIsImFzU291cmNlcyIsInNyYyIsIkFycmF5IiwiaXNBcnJheSIsImZpbHRlciIsIkJvb2xlYW4iLCJ1c2VIdG1sSW1hZ2UiLCJfdXNlU3RhdGUiLCJ1bmRlZmluZWQiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkiLCJpbWFnZSIsInNldEltYWdlIiwic291cmNlcyIsInNvdXJjZUtleSIsImpvaW4iLCJsZW5ndGgiLCJjYW5jZWxsZWQiLCJvYmplY3RVcmwiLCJ0aGVuIiwiaW1nIiwicGVyc2lzdGVkIiwiX21lcmNoaU9iamVjdFVybCIsIlVSTCIsInJldm9rZU9iamVjdFVSTCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2RyYWZ0cy91c2VIdG1sSW1hZ2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGxvYWRIdG1sSW1hZ2VGcm9tU291cmNlcyB9IGZyb20gJy4uLy4uL3V0aWxzL2RyYWZ0RXhwb3J0JztcblxuZnVuY3Rpb24gYXNTb3VyY2VzKHNyYz86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbCk6IHN0cmluZ1tdIHtcbiAgaWYgKCFzcmMpIHJldHVybiBbXTtcbiAgcmV0dXJuIChBcnJheS5pc0FycmF5KHNyYykgPyBzcmMgOiBbc3JjXSkuZmlsdGVyKEJvb2xlYW4pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlSHRtbEltYWdlKHNyYz86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbCk6IEhUTUxJbWFnZUVsZW1lbnQgfCB1bmRlZmluZWQge1xuICBjb25zdCBbaW1hZ2UsIHNldEltYWdlXSA9IHVzZVN0YXRlPEhUTUxJbWFnZUVsZW1lbnQgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IHNvdXJjZXMgPSBhc1NvdXJjZXMoc3JjKTtcbiAgY29uc3Qgc291cmNlS2V5ID0gc291cmNlcy5qb2luKCd8Jyk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIXNvdXJjZXMubGVuZ3RoKSB7XG4gICAgICBzZXRJbWFnZSh1bmRlZmluZWQpO1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgbGV0IGNhbmNlbGxlZCA9IGZhbHNlO1xuICAgIGxldCBvYmplY3RVcmwgPSAnJztcblxuICAgIGxvYWRIdG1sSW1hZ2VGcm9tU291cmNlcyhzb3VyY2VzLCB0cnVlKS50aGVuKChpbWcpID0+IHtcbiAgICAgIGlmIChjYW5jZWxsZWQpIHtcbiAgICAgICAgY29uc3QgcGVyc2lzdGVkID0gKGltZyBhcyBIVE1MSW1hZ2VFbGVtZW50ICYgeyBfbWVyY2hpT2JqZWN0VXJsPzogc3RyaW5nIH0pLl9tZXJjaGlPYmplY3RVcmw7XG4gICAgICAgIGlmIChwZXJzaXN0ZWQpIFVSTC5yZXZva2VPYmplY3RVUkwocGVyc2lzdGVkKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgb2JqZWN0VXJsID0gKGltZyBhcyBIVE1MSW1hZ2VFbGVtZW50ICYgeyBfbWVyY2hpT2JqZWN0VXJsPzogc3RyaW5nIH0pLl9tZXJjaGlPYmplY3RVcmwgfHwgJyc7XG4gICAgICBzZXRJbWFnZShpbWcpO1xuICAgIH0pLmNhdGNoKCgpID0+IHtcbiAgICAgIGlmICghY2FuY2VsbGVkKSBzZXRJbWFnZSh1bmRlZmluZWQpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNhbmNlbGxlZCA9IHRydWU7XG4gICAgICBpZiAob2JqZWN0VXJsKSBVUkwucmV2b2tlT2JqZWN0VVJMKG9iamVjdFVybCk7XG4gICAgfTtcbiAgfSwgW3NvdXJjZUtleV0pO1xuXG4gIHJldHVybiBpbWFnZTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsU0FBU0EsU0FBUyxFQUFFQyxRQUFRLFFBQVEsT0FBTztBQUMzQyxTQUFTQyx3QkFBd0IsUUFBUSx5QkFBeUI7QUFFbEUsU0FBU0MsU0FBU0EsQ0FBQ0MsR0FBOEIsRUFBWTtFQUMzRCxJQUFJLENBQUNBLEdBQUcsRUFBRSxPQUFPLEVBQUU7RUFDbkIsT0FBTyxDQUFDQyxLQUFLLENBQUNDLE9BQU8sQ0FBQ0YsR0FBRyxDQUFDLEdBQUdBLEdBQUcsR0FBRyxDQUFDQSxHQUFHLENBQUMsRUFBRUcsTUFBTSxDQUFDQyxPQUFPLENBQUM7QUFDM0Q7QUFFQSxPQUFPLFNBQVNDLFlBQVlBLENBQUNMLEdBQThCLEVBQWdDO0VBQ3pGLElBQUFNLFNBQUEsR0FBMEJULFFBQVEsQ0FBK0JVLFNBQVMsQ0FBQztJQUFBQyxVQUFBLEdBQUFDLGNBQUEsQ0FBQUgsU0FBQTtJQUFwRUksS0FBSyxHQUFBRixVQUFBO0lBQUVHLFFBQVEsR0FBQUgsVUFBQTtFQUN0QixJQUFNSSxPQUFPLEdBQUdiLFNBQVMsQ0FBQ0MsR0FBRyxDQUFDO0VBQzlCLElBQU1hLFNBQVMsR0FBR0QsT0FBTyxDQUFDRSxJQUFJLENBQUMsR0FBRyxDQUFDO0VBRW5DbEIsU0FBUyxDQUFDLFlBQU07SUFDZCxJQUFJLENBQUNnQixPQUFPLENBQUNHLE1BQU0sRUFBRTtNQUNuQkosUUFBUSxDQUFDSixTQUFTLENBQUM7TUFDbkIsT0FBT0EsU0FBUztJQUNsQjtJQUNBLElBQUlTLFNBQVMsR0FBRyxLQUFLO0lBQ3JCLElBQUlDLFNBQVMsR0FBRyxFQUFFO0lBRWxCbkIsd0JBQXdCLENBQUNjLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQ00sSUFBSSxDQUFDLFVBQUNDLEdBQUcsRUFBSztNQUNwRCxJQUFJSCxTQUFTLEVBQUU7UUFDYixJQUFNSSxTQUFTLEdBQUlELEdBQUcsQ0FBc0RFLGdCQUFnQjtRQUM1RixJQUFJRCxTQUFTLEVBQUVFLEdBQUcsQ0FBQ0MsZUFBZSxDQUFDSCxTQUFTLENBQUM7UUFDN0M7TUFDRjtNQUNBSCxTQUFTLEdBQUlFLEdBQUcsQ0FBc0RFLGdCQUFnQixJQUFJLEVBQUU7TUFDNUZWLFFBQVEsQ0FBQ1EsR0FBRyxDQUFDO0lBQ2YsQ0FBQyxDQUFDLFNBQU0sQ0FBQyxZQUFNO01BQ2IsSUFBSSxDQUFDSCxTQUFTLEVBQUVMLFFBQVEsQ0FBQ0osU0FBUyxDQUFDO0lBQ3JDLENBQUMsQ0FBQztJQUVGLE9BQU8sWUFBTTtNQUNYUyxTQUFTLEdBQUcsSUFBSTtNQUNoQixJQUFJQyxTQUFTLEVBQUVLLEdBQUcsQ0FBQ0MsZUFBZSxDQUFDTixTQUFTLENBQUM7SUFDL0MsQ0FBQztFQUNILENBQUMsRUFBRSxDQUFDSixTQUFTLENBQUMsQ0FBQztFQUVmLE9BQU9ILEtBQUs7QUFDZCIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { FaRegCheckCircle } from 'react-icons/fa';
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
function IconChecked() {
|
|
7
|
+
return /*#__PURE__*/_jsx(FaRegCheckCircle, {});
|
|
8
|
+
}
|
|
9
|
+
export default IconChecked;
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkZhUmVnQ2hlY2tDaXJjbGUiLCJqc3giLCJfanN4IiwiSWNvbkNoZWNrZWQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9pY29ucy9JY29uQ2hlY2tlZC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiJ3VzZSBjbGllbnQnO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgRmFSZWdDaGVja0NpcmNsZSB9IGZyb20gJ3JlYWN0LWljb25zL2ZhJztcblxuZnVuY3Rpb24gSWNvbkNoZWNrZWQoKSB7XG4gIHJldHVybiA8RmFSZWdDaGVja0NpcmNsZSAvPjtcbn1cblxuZXhwb3J0IGRlZmF1bHQgSWNvbkNoZWNrZWQ7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7O0FBQ1osT0FBTyxLQUFLQSxLQUFLLE1BQU0sT0FBTztBQUM5QixTQUFTQyxnQkFBZ0IsUUFBUSxnQkFBZ0I7QUFBQyxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFFbEQsU0FBU0MsV0FBV0EsQ0FBQSxFQUFHO0VBQ3JCLG9CQUFPRCxJQUFBLENBQUNGLGdCQUFnQixJQUFFLENBQUM7QUFDN0I7QUFFQSxlQUFlRyxXQUFXIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import IconChecked from './IconChecked';
|
|
5
|
+
import IconNoStock from './IconNoStock';
|
|
6
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
7
|
+
function IconCheckedOrNoStock(_ref) {
|
|
8
|
+
var isChecked = _ref.isChecked,
|
|
9
|
+
noStock = _ref.noStock;
|
|
10
|
+
return noStock ? /*#__PURE__*/_jsx(IconNoStock, {}) : isChecked ? /*#__PURE__*/_jsx(IconChecked, {}) : /*#__PURE__*/_jsx(_Fragment, {});
|
|
11
|
+
}
|
|
12
|
+
export default IconCheckedOrNoStock;
|
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkljb25DaGVja2VkIiwiSWNvbk5vU3RvY2siLCJqc3giLCJfanN4IiwiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJJY29uQ2hlY2tlZE9yTm9TdG9jayIsIl9yZWYiLCJpc0NoZWNrZWQiLCJub1N0b2NrIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvaWNvbnMvSWNvbkNoZWNrZWRPck5vU3RvY2sudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBJY29uQ2hlY2tlZCBmcm9tICcuL0ljb25DaGVja2VkJztcbmltcG9ydCBJY29uTm9TdG9jayBmcm9tICcuL0ljb25Ob1N0b2NrJztcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgaXNDaGVja2VkOiBib29sZWFuO1xuICBub1N0b2NrOiBib29sZWFuO1xufVxuXG5mdW5jdGlvbiBJY29uQ2hlY2tlZE9yTm9TdG9jayh7IGlzQ2hlY2tlZCwgbm9TdG9jayB9OiBQcm9wcykge1xuICByZXR1cm4gbm9TdG9jayA/IDxJY29uTm9TdG9jayAvPiA6IGlzQ2hlY2tlZCA/IDxJY29uQ2hlY2tlZCAvPiA6IDw+PC8+O1xufVxuXG5leHBvcnQgZGVmYXVsdCBJY29uQ2hlY2tlZE9yTm9TdG9jaztcbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTs7QUFDWixPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLE9BQU9DLFdBQVcsTUFBTSxlQUFlO0FBQ3ZDLE9BQU9DLFdBQVcsTUFBTSxlQUFlO0FBQUMsU0FBQUMsR0FBQSxJQUFBQyxJQUFBLEVBQUFDLFFBQUEsSUFBQUMsU0FBQTtBQU94QyxTQUFTQyxvQkFBb0JBLENBQUFDLElBQUEsRUFBZ0M7RUFBQSxJQUE3QkMsU0FBUyxHQUFBRCxJQUFBLENBQVRDLFNBQVM7SUFBRUMsT0FBTyxHQUFBRixJQUFBLENBQVBFLE9BQU87RUFDaEQsT0FBT0EsT0FBTyxnQkFBR04sSUFBQSxDQUFDRixXQUFXLElBQUUsQ0FBQyxHQUFHTyxTQUFTLGdCQUFHTCxJQUFBLENBQUNILFdBQVcsSUFBRSxDQUFDLGdCQUFHRyxJQUFBLENBQUFFLFNBQUEsSUFBSSxDQUFDO0FBQ3hFO0FBRUEsZUFBZUMsb0JBQW9CIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import TooltipElement from '../TooltipElement';
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
function IconCountryFlag(_ref) {
|
|
7
|
+
var className = _ref.className,
|
|
8
|
+
countryCode = _ref.countryCode,
|
|
9
|
+
tooltip = _ref.tooltip;
|
|
10
|
+
var c = "fi fi-".concat(countryCode, " ").concat(className ? className : '');
|
|
11
|
+
var style = {
|
|
12
|
+
borderRadius: '2px'
|
|
13
|
+
};
|
|
14
|
+
return tooltip ? /*#__PURE__*/_jsx(TooltipElement, {
|
|
15
|
+
id: "merchi-country-flag_tooltip-".concat(countryCode),
|
|
16
|
+
tooltip: tooltip,
|
|
17
|
+
children: /*#__PURE__*/_jsx("span", {
|
|
18
|
+
className: c,
|
|
19
|
+
style: style
|
|
20
|
+
})
|
|
21
|
+
}) : /*#__PURE__*/_jsx("span", {
|
|
22
|
+
className: c,
|
|
23
|
+
style: style
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
export default IconCountryFlag;
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlRvb2x0aXBFbGVtZW50IiwianN4IiwiX2pzeCIsIkljb25Db3VudHJ5RmxhZyIsIl9yZWYiLCJjbGFzc05hbWUiLCJjb3VudHJ5Q29kZSIsInRvb2x0aXAiLCJjIiwiY29uY2F0Iiwic3R5bGUiLCJib3JkZXJSYWRpdXMiLCJpZCIsImNoaWxkcmVuIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvaWNvbnMvSWNvbkNvdW50cnlGbGFnLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCc7XG5pbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgVG9vbHRpcEVsZW1lbnQgZnJvbSAnLi4vVG9vbHRpcEVsZW1lbnQnO1xuXG5pbnRlcmZhY2UgUHJvcHMge1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGNvdW50cnlDb2RlOiBzdHJpbmc7XG4gIHRvb2x0aXA/OiBzdHJpbmc7XG59XG5cbmZ1bmN0aW9uIEljb25Db3VudHJ5RmxhZyhcbiAge1xuICAgIGNsYXNzTmFtZSwgY291bnRyeUNvZGUsIHRvb2x0aXBcbiAgfTogUHJvcHMpIHtcbiAgY29uc3QgYyA9IGBmaSBmaS0ke2NvdW50cnlDb2RlfSAke2NsYXNzTmFtZSA/IGNsYXNzTmFtZSA6ICcnfWA7XG4gIGNvbnN0IHN0eWxlID0ge2JvcmRlclJhZGl1czogJzJweCd9XG4gIHJldHVybiAoXG4gICAgdG9vbHRpcCA/XG4gICAgICA8VG9vbHRpcEVsZW1lbnRcbiAgICAgICAgaWQ9e2BtZXJjaGktY291bnRyeS1mbGFnX3Rvb2x0aXAtJHtjb3VudHJ5Q29kZX1gfVxuICAgICAgICB0b29sdGlwPXt0b29sdGlwfVxuICAgICAgPlxuICBcdCAgICA8c3BhbiBjbGFzc05hbWU9e2N9IHN0eWxlPXtzdHlsZX0+PC9zcGFuPlxuICAgICAgPC9Ub29sdGlwRWxlbWVudD5cbiAgICA6IDxzcGFuIGNsYXNzTmFtZT17Y30gc3R5bGU9e3N0eWxlfT48L3NwYW4+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IEljb25Db3VudHJ5RmxhZztcbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTs7QUFDWixPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLE9BQU9DLGNBQWMsTUFBTSxtQkFBbUI7QUFBQyxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFRL0MsU0FBU0MsZUFBZUEsQ0FBQUMsSUFBQSxFQUdaO0VBQUEsSUFEUkMsU0FBUyxHQUFBRCxJQUFBLENBQVRDLFNBQVM7SUFBRUMsV0FBVyxHQUFBRixJQUFBLENBQVhFLFdBQVc7SUFBRUMsT0FBTyxHQUFBSCxJQUFBLENBQVBHLE9BQU87RUFFakMsSUFBTUMsQ0FBQyxZQUFBQyxNQUFBLENBQVlILFdBQVcsT0FBQUcsTUFBQSxDQUFJSixTQUFTLEdBQUdBLFNBQVMsR0FBRyxFQUFFLENBQUU7RUFDOUQsSUFBTUssS0FBSyxHQUFHO0lBQUNDLFlBQVksRUFBRTtFQUFLLENBQUM7RUFDbkMsT0FDRUosT0FBTyxnQkFDTEwsSUFBQSxDQUFDRixjQUFjO0lBQ2JZLEVBQUUsaUNBQUFILE1BQUEsQ0FBaUNILFdBQVcsQ0FBRztJQUNqREMsT0FBTyxFQUFFQSxPQUFRO0lBQUFNLFFBQUEsZUFFbEJYLElBQUE7TUFBTUcsU0FBUyxFQUFFRyxDQUFFO01BQUNFLEtBQUssRUFBRUE7SUFBTSxDQUFPO0VBQUMsQ0FDMUIsQ0FBQyxnQkFDakJSLElBQUE7SUFBTUcsU0FBUyxFQUFFRyxDQUFFO0lBQUNFLEtBQUssRUFBRUE7RUFBTSxDQUFPLENBQUM7QUFFL0M7QUFFQSxlQUFlUCxlQUFlIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { FaFilePdf } from "react-icons/fa";
|
|
3
|
+
import { CgSpinner } from "react-icons/cg";
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
function IconContainer(_ref) {
|
|
6
|
+
var className = _ref.className,
|
|
7
|
+
Icon = _ref.icon,
|
|
8
|
+
_ref$spin = _ref.spin,
|
|
9
|
+
spin = _ref$spin === void 0 ? false : _ref$spin;
|
|
10
|
+
if (!Icon) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
return /*#__PURE__*/_jsx("span", {
|
|
14
|
+
className: className || 'avatar rounded-circle',
|
|
15
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
16
|
+
className: spin ? 'animate_spin' : ''
|
|
17
|
+
})
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
export function isPdf(file) {
|
|
21
|
+
return file.mimetype === 'application/pdf' || file.mimetype === 'application/x-pdf';
|
|
22
|
+
}
|
|
23
|
+
function IconFile(_ref2) {
|
|
24
|
+
var file = _ref2.file;
|
|
25
|
+
var fileUrl = file ? String(file.viewUrl) : '';
|
|
26
|
+
return file.id ? isPdf(file) ? /*#__PURE__*/_jsx(IconContainer, {
|
|
27
|
+
className: "avatar avatar-md align-middle bg-secondary text-dark shadow",
|
|
28
|
+
icon: FaFilePdf
|
|
29
|
+
}) : /*#__PURE__*/_jsx("div", {
|
|
30
|
+
className: "avatar avatar-bg avatar-md align-middle",
|
|
31
|
+
style: {
|
|
32
|
+
backgroundImage: "url(".concat(fileUrl, ")")
|
|
33
|
+
}
|
|
34
|
+
}) : /*#__PURE__*/_jsx(IconContainer, {
|
|
35
|
+
className: "avatar avatar-md align-middle text-dark shadow",
|
|
36
|
+
icon: CgSpinner,
|
|
37
|
+
spin: true
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
export default IconFile;
|
|
41
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkZhRmlsZVBkZiIsIkNnU3Bpbm5lciIsImpzeCIsIl9qc3giLCJJY29uQ29udGFpbmVyIiwiX3JlZiIsImNsYXNzTmFtZSIsIkljb24iLCJpY29uIiwiX3JlZiRzcGluIiwic3BpbiIsImNoaWxkcmVuIiwiaXNQZGYiLCJmaWxlIiwibWltZXR5cGUiLCJJY29uRmlsZSIsIl9yZWYyIiwiZmlsZVVybCIsIlN0cmluZyIsInZpZXdVcmwiLCJpZCIsInN0eWxlIiwiYmFja2dyb3VuZEltYWdlIiwiY29uY2F0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvaWNvbnMvSWNvbkZpbGUudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEZhRmlsZVBkZiB9IGZyb20gXCJyZWFjdC1pY29ucy9mYVwiO1xuaW1wb3J0IHsgQ2dTcGlubmVyIH0gZnJvbSBcInJlYWN0LWljb25zL2NnXCI7XG5cbmZ1bmN0aW9uIEljb25Db250YWluZXIoeyBjbGFzc05hbWUsIGljb246IEljb24sIHNwaW4gPSBmYWxzZSB9OiBhbnkpIHtcbiAgaWYgKCFJY29uKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIChcbiAgICA8c3BhbiBjbGFzc05hbWU9e2NsYXNzTmFtZSB8fCAnYXZhdGFyIHJvdW5kZWQtY2lyY2xlJ30+XG4gICAgICA8SWNvbiBjbGFzc05hbWU9e3NwaW4gPyAnYW5pbWF0ZV9zcGluJyA6ICcnfSAvPlxuICAgIDwvc3Bhbj5cbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzUGRmKGZpbGU6IGFueSkge1xuICByZXR1cm4gZmlsZS5taW1ldHlwZSA9PT0gJ2FwcGxpY2F0aW9uL3BkZicgfHxcbiAgICAgICAgIGZpbGUubWltZXR5cGUgPT09ICdhcHBsaWNhdGlvbi94LXBkZic7XG59XG5cbmludGVyZmFjZSBGaWxlSWNvblByb3BzIHtcbiAgZmlsZTogYW55O1xufVxuXG5mdW5jdGlvbiBJY29uRmlsZSh7IGZpbGUgfTogRmlsZUljb25Qcm9wcykge1xuICBjb25zdCBmaWxlVXJsID0gZmlsZSA/IFN0cmluZyhmaWxlLnZpZXdVcmwpIDogJyc7XG5cbiAgcmV0dXJuIGZpbGUuaWQgPyBpc1BkZihmaWxlKSA/XG4gICAgPEljb25Db250YWluZXJcbiAgICAgIGNsYXNzTmFtZT0nYXZhdGFyIGF2YXRhci1tZCBhbGlnbi1taWRkbGUgYmctc2Vjb25kYXJ5IHRleHQtZGFyayBzaGFkb3cnXG4gICAgICBpY29uPXtGYUZpbGVQZGZ9XG4gICAgLz5cbiAgOlxuICAgIDxkaXZcbiAgICAgIGNsYXNzTmFtZT0nYXZhdGFyIGF2YXRhci1iZyBhdmF0YXItbWQgYWxpZ24tbWlkZGxlJ1xuICAgICAgc3R5bGU9e3sgYmFja2dyb3VuZEltYWdlOiBgdXJsKCR7ZmlsZVVybH0pYH19XG4gICAgLz5cbiAgOlxuICAgIDxJY29uQ29udGFpbmVyXG4gICAgICBjbGFzc05hbWU9J2F2YXRhciBhdmF0YXItbWQgYWxpZ24tbWlkZGxlIHRleHQtZGFyayBzaGFkb3cnXG4gICAgICBpY29uPXtDZ1NwaW5uZXJ9XG4gICAgICBzcGluPXt0cnVlfVxuICAgIC8+O1xufVxuXG5leHBvcnQgZGVmYXVsdCBJY29uRmlsZTtcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLQSxLQUFLLE1BQU0sT0FBTztBQUM5QixTQUFTQyxTQUFTLFFBQVEsZ0JBQWdCO0FBQzFDLFNBQVNDLFNBQVMsUUFBUSxnQkFBZ0I7QUFBQyxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFFM0MsU0FBU0MsYUFBYUEsQ0FBQUMsSUFBQSxFQUErQztFQUFBLElBQTVDQyxTQUFTLEdBQUFELElBQUEsQ0FBVEMsU0FBUztJQUFRQyxJQUFJLEdBQUFGLElBQUEsQ0FBVkcsSUFBSTtJQUFBQyxTQUFBLEdBQUFKLElBQUEsQ0FBUUssSUFBSTtJQUFKQSxJQUFJLEdBQUFELFNBQUEsY0FBRyxLQUFLLEdBQUFBLFNBQUE7RUFDMUQsSUFBSSxDQUFDRixJQUFJLEVBQUU7SUFDVCxPQUFPLElBQUk7RUFDYjtFQUNBLG9CQUNFSixJQUFBO0lBQU1HLFNBQVMsRUFBRUEsU0FBUyxJQUFJLHVCQUF3QjtJQUFBSyxRQUFBLGVBQ3BEUixJQUFBLENBQUNJLElBQUk7TUFBQ0QsU0FBUyxFQUFFSSxJQUFJLEdBQUcsY0FBYyxHQUFHO0lBQUcsQ0FBRTtFQUFDLENBQzNDLENBQUM7QUFFWDtBQUVBLE9BQU8sU0FBU0UsS0FBS0EsQ0FBQ0MsSUFBUyxFQUFFO0VBQy9CLE9BQU9BLElBQUksQ0FBQ0MsUUFBUSxLQUFLLGlCQUFpQixJQUNuQ0QsSUFBSSxDQUFDQyxRQUFRLEtBQUssbUJBQW1CO0FBQzlDO0FBTUEsU0FBU0MsUUFBUUEsQ0FBQUMsS0FBQSxFQUEwQjtFQUFBLElBQXZCSCxJQUFJLEdBQUFHLEtBQUEsQ0FBSkgsSUFBSTtFQUN0QixJQUFNSSxPQUFPLEdBQUdKLElBQUksR0FBR0ssTUFBTSxDQUFDTCxJQUFJLENBQUNNLE9BQU8sQ0FBQyxHQUFHLEVBQUU7RUFFaEQsT0FBT04sSUFBSSxDQUFDTyxFQUFFLEdBQUdSLEtBQUssQ0FBQ0MsSUFBSSxDQUFDLGdCQUMxQlYsSUFBQSxDQUFDQyxhQUFhO0lBQ1pFLFNBQVMsRUFBQyw2REFBNkQ7SUFDdkVFLElBQUksRUFBRVI7RUFBVSxDQUNqQixDQUFDLGdCQUVGRyxJQUFBO0lBQ0VHLFNBQVMsRUFBQyx5Q0FBeUM7SUFDbkRlLEtBQUssRUFBRTtNQUFFQyxlQUFlLFNBQUFDLE1BQUEsQ0FBU04sT0FBTztJQUFHO0VBQUUsQ0FDOUMsQ0FBQyxnQkFFRmQsSUFBQSxDQUFDQyxhQUFhO0lBQ1pFLFNBQVMsRUFBQyxnREFBZ0Q7SUFDMURFLElBQUksRUFBRVAsU0FBVTtJQUNoQlMsSUFBSSxFQUFFO0VBQUssQ0FDWixDQUFDO0FBQ047QUFFQSxlQUFlSyxRQUFRIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import TooltipElement from '../TooltipElement';
|
|
3
|
+
import { FaTimesCircle } from 'react-icons/fa';
|
|
4
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
+
function IconNoStock() {
|
|
6
|
+
return /*#__PURE__*/_jsx(TooltipElement, {
|
|
7
|
+
tooltip: "Insufficient stock",
|
|
8
|
+
children: /*#__PURE__*/_jsx(FaTimesCircle, {})
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
export default IconNoStock;
|
|
12
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlRvb2x0aXBFbGVtZW50IiwiRmFUaW1lc0NpcmNsZSIsImpzeCIsIl9qc3giLCJJY29uTm9TdG9jayIsInRvb2x0aXAiLCJjaGlsZHJlbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ljb25zL0ljb25Ob1N0b2NrLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgVG9vbHRpcEVsZW1lbnQgZnJvbSAnLi4vVG9vbHRpcEVsZW1lbnQnO1xuaW1wb3J0IHsgRmFUaW1lc0NpcmNsZSB9IGZyb20gJ3JlYWN0LWljb25zL2ZhJztcblxuZnVuY3Rpb24gSWNvbk5vU3RvY2soKSB7XG4gIHJldHVybiAoXG4gIFx0PFRvb2x0aXBFbGVtZW50IHRvb2x0aXA9J0luc3VmZmljaWVudCBzdG9jayc+XG4gICAgICA8RmFUaW1lc0NpcmNsZSAvPlxuICAgIDwvVG9vbHRpcEVsZW1lbnQ+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IEljb25Ob1N0b2NrO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLE9BQU9DLGNBQWMsTUFBTSxtQkFBbUI7QUFDOUMsU0FBU0MsYUFBYSxRQUFRLGdCQUFnQjtBQUFDLFNBQUFDLEdBQUEsSUFBQUMsSUFBQTtBQUUvQyxTQUFTQyxXQUFXQSxDQUFBLEVBQUc7RUFDckIsb0JBQ0NELElBQUEsQ0FBQ0gsY0FBYztJQUFDSyxPQUFPLEVBQUMsb0JBQW9CO0lBQUFDLFFBQUEsZUFDekNILElBQUEsQ0FBQ0YsYUFBYSxJQUFFO0VBQUMsQ0FDSCxDQUFDO0FBRXJCO0FBRUEsZUFBZUcsV0FBVyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import IconFile from './IconFile';
|
|
2
|
+
import IconNoStock from "./IconNoStock";
|
|
3
|
+
import IconCheckedOrNoStock from './IconCheckedOrNoStock';
|
|
4
|
+
import IconCountryFlag from './IconCountryFlag';
|
|
5
|
+
export { IconFile, IconNoStock, IconCheckedOrNoStock, IconCountryFlag };
|
|
6
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJJY29uRmlsZSIsIkljb25Ob1N0b2NrIiwiSWNvbkNoZWNrZWRPck5vU3RvY2siLCJJY29uQ291bnRyeUZsYWciXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9pY29ucy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgSWNvbkZpbGUgZnJvbSAnLi9JY29uRmlsZSc7XG5pbXBvcnQgSWNvbk5vU3RvY2sgZnJvbSBcIi4vSWNvbk5vU3RvY2tcIjtcbmltcG9ydCBJY29uQ2hlY2tlZE9yTm9TdG9jayBmcm9tICcuL0ljb25DaGVja2VkT3JOb1N0b2NrJztcbmltcG9ydCBJY29uQ291bnRyeUZsYWcgZnJvbSAnLi9JY29uQ291bnRyeUZsYWcnO1xuXG5leHBvcnQge1xuICBJY29uRmlsZSxcbiAgSWNvbk5vU3RvY2ssXG4gIEljb25DaGVja2VkT3JOb1N0b2NrLFxuICBJY29uQ291bnRyeUZsYWcsXG59O1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxRQUFRLE1BQU0sWUFBWTtBQUNqQyxPQUFPQyxXQUFXLE1BQU0sZUFBZTtBQUN2QyxPQUFPQyxvQkFBb0IsTUFBTSx3QkFBd0I7QUFDekQsT0FBT0MsZUFBZSxNQUFNLG1CQUFtQjtBQUUvQyxTQUNFSCxRQUFRLEVBQ1JDLFdBQVcsRUFDWEMsb0JBQW9CLEVBQ3BCQyxlQUFlIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type FieldOnChange = (value: any) => void;
|
|
2
|
+
type GetQuote = () => void;
|
|
3
|
+
type Mutation = () => void;
|
|
4
|
+
export declare function quoteAfterFieldChange(onChange: FieldOnChange, getQuote: GetQuote, value: any): void;
|
|
5
|
+
/** Run getQuote after a form mutation (append/remove) has been applied. */
|
|
6
|
+
export declare function quoteAfterMutation(mutate: Mutation, getQuote: GetQuote): void;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function quoteAfterFieldChange(onChange, getQuote, value) {
|
|
2
|
+
onChange(value);
|
|
3
|
+
Promise.resolve().then(getQuote);
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
/** Run getQuote after a form mutation (append/remove) has been applied. */
|
|
7
|
+
export function quoteAfterMutation(mutate, getQuote) {
|
|
8
|
+
mutate();
|
|
9
|
+
Promise.resolve().then(getQuote);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJxdW90ZUFmdGVyRmllbGRDaGFuZ2UiLCJvbkNoYW5nZSIsImdldFF1b3RlIiwidmFsdWUiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRoZW4iLCJxdW90ZUFmdGVyTXV0YXRpb24iLCJtdXRhdGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tcG9uZW50cy9xdW90ZUFmdGVyRmllbGRDaGFuZ2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsidHlwZSBGaWVsZE9uQ2hhbmdlID0gKHZhbHVlOiBhbnkpID0+IHZvaWQ7XG50eXBlIEdldFF1b3RlID0gKCkgPT4gdm9pZDtcbnR5cGUgTXV0YXRpb24gPSAoKSA9PiB2b2lkO1xuXG5leHBvcnQgZnVuY3Rpb24gcXVvdGVBZnRlckZpZWxkQ2hhbmdlKFxuICBvbkNoYW5nZTogRmllbGRPbkNoYW5nZSxcbiAgZ2V0UXVvdGU6IEdldFF1b3RlLFxuICB2YWx1ZTogYW55XG4pIHtcbiAgb25DaGFuZ2UodmFsdWUpO1xuICBQcm9taXNlLnJlc29sdmUoKS50aGVuKGdldFF1b3RlKTtcbn1cblxuLyoqIFJ1biBnZXRRdW90ZSBhZnRlciBhIGZvcm0gbXV0YXRpb24gKGFwcGVuZC9yZW1vdmUpIGhhcyBiZWVuIGFwcGxpZWQuICovXG5leHBvcnQgZnVuY3Rpb24gcXVvdGVBZnRlck11dGF0aW9uKG11dGF0ZTogTXV0YXRpb24sIGdldFF1b3RlOiBHZXRRdW90ZSkge1xuICBtdXRhdGUoKTtcbiAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbihnZXRRdW90ZSk7XG59XG4iXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sU0FBU0EscUJBQXFCQSxDQUNuQ0MsUUFBdUIsRUFDdkJDLFFBQWtCLEVBQ2xCQyxLQUFVLEVBQ1Y7RUFDQUYsUUFBUSxDQUFDRSxLQUFLLENBQUM7RUFDZkMsT0FBTyxDQUFDQyxPQUFPLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUNKLFFBQVEsQ0FBQztBQUNsQzs7QUFFQTtBQUNBLE9BQU8sU0FBU0ssa0JBQWtCQSxDQUFDQyxNQUFnQixFQUFFTixRQUFrQixFQUFFO0VBQ3ZFTSxNQUFNLENBQUMsQ0FBQztFQUNSSixPQUFPLENBQUNDLE9BQU8sQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQ0osUUFBUSxDQUFDO0FBQ2xDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
2
|
+
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
3
|
+
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
|
|
4
|
+
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
|
|
5
|
+
import { quoteAfterFieldChange, quoteAfterMutation } from './quoteAfterFieldChange';
|
|
6
|
+
test('runs quote after the field change has been applied', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
7
|
+
var calls, onChange, getQuote;
|
|
8
|
+
return _regenerator().w(function (_context) {
|
|
9
|
+
while (1) switch (_context.n) {
|
|
10
|
+
case 0:
|
|
11
|
+
calls = [];
|
|
12
|
+
onChange = jest.fn(function () {
|
|
13
|
+
return calls.push('change');
|
|
14
|
+
});
|
|
15
|
+
getQuote = jest.fn(function () {
|
|
16
|
+
return calls.push('quote');
|
|
17
|
+
});
|
|
18
|
+
quoteAfterFieldChange(onChange, getQuote, '200');
|
|
19
|
+
expect(onChange).toHaveBeenCalledWith('200');
|
|
20
|
+
expect(getQuote).not.toHaveBeenCalled();
|
|
21
|
+
expect(calls).toEqual(['change']);
|
|
22
|
+
_context.n = 1;
|
|
23
|
+
return Promise.resolve();
|
|
24
|
+
case 1:
|
|
25
|
+
expect(getQuote).toHaveBeenCalledTimes(1);
|
|
26
|
+
expect(calls).toEqual(['change', 'quote']);
|
|
27
|
+
case 2:
|
|
28
|
+
return _context.a(2);
|
|
29
|
+
}
|
|
30
|
+
}, _callee);
|
|
31
|
+
})));
|
|
32
|
+
test('runs quote after a group mutation has been applied', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
33
|
+
var calls, mutate, getQuote;
|
|
34
|
+
return _regenerator().w(function (_context2) {
|
|
35
|
+
while (1) switch (_context2.n) {
|
|
36
|
+
case 0:
|
|
37
|
+
calls = [];
|
|
38
|
+
mutate = jest.fn(function () {
|
|
39
|
+
return calls.push('mutate');
|
|
40
|
+
});
|
|
41
|
+
getQuote = jest.fn(function () {
|
|
42
|
+
return calls.push('quote');
|
|
43
|
+
});
|
|
44
|
+
quoteAfterMutation(mutate, getQuote);
|
|
45
|
+
expect(mutate).toHaveBeenCalledTimes(1);
|
|
46
|
+
expect(getQuote).not.toHaveBeenCalled();
|
|
47
|
+
expect(calls).toEqual(['mutate']);
|
|
48
|
+
_context2.n = 1;
|
|
49
|
+
return Promise.resolve();
|
|
50
|
+
case 1:
|
|
51
|
+
expect(getQuote).toHaveBeenCalledTimes(1);
|
|
52
|
+
expect(calls).toEqual(['mutate', 'quote']);
|
|
53
|
+
case 2:
|
|
54
|
+
return _context2.a(2);
|
|
55
|
+
}
|
|
56
|
+
}, _callee2);
|
|
57
|
+
})));
|
|
58
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJlIiwidCIsInIiLCJTeW1ib2wiLCJuIiwiaXRlcmF0b3IiLCJvIiwidG9TdHJpbmdUYWciLCJpIiwiYyIsInByb3RvdHlwZSIsIkdlbmVyYXRvciIsInUiLCJPYmplY3QiLCJjcmVhdGUiLCJfcmVnZW5lcmF0b3JEZWZpbmUyIiwiZiIsInAiLCJ5IiwiRyIsInYiLCJhIiwiZCIsImJpbmQiLCJsZW5ndGgiLCJsIiwiVHlwZUVycm9yIiwiY2FsbCIsImRvbmUiLCJ2YWx1ZSIsIkdlbmVyYXRvckZ1bmN0aW9uIiwiR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUiLCJnZXRQcm90b3R5cGVPZiIsInNldFByb3RvdHlwZU9mIiwiX19wcm90b19fIiwiZGlzcGxheU5hbWUiLCJfcmVnZW5lcmF0b3IiLCJ3IiwibSIsImRlZmluZVByb3BlcnR5IiwiX3JlZ2VuZXJhdG9yRGVmaW5lIiwiX2ludm9rZSIsImVudW1lcmFibGUiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImFzeW5jR2VuZXJhdG9yU3RlcCIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiYXJndW1lbnRzIiwiYXBwbHkiLCJfbmV4dCIsIl90aHJvdyIsInF1b3RlQWZ0ZXJGaWVsZENoYW5nZSIsInF1b3RlQWZ0ZXJNdXRhdGlvbiIsInRlc3QiLCJfY2FsbGVlIiwiY2FsbHMiLCJvbkNoYW5nZSIsImdldFF1b3RlIiwiX2NvbnRleHQiLCJqZXN0IiwiZm4iLCJwdXNoIiwiZXhwZWN0IiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJub3QiLCJ0b0hhdmVCZWVuQ2FsbGVkIiwidG9FcXVhbCIsInRvSGF2ZUJlZW5DYWxsZWRUaW1lcyIsIl9jYWxsZWUyIiwibXV0YXRlIiwiX2NvbnRleHQyIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbXBvbmVudHMvcXVvdGVBZnRlckZpZWxkQ2hhbmdlLnRlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcXVvdGVBZnRlckZpZWxkQ2hhbmdlLCBxdW90ZUFmdGVyTXV0YXRpb24gfSBmcm9tICcuL3F1b3RlQWZ0ZXJGaWVsZENoYW5nZSc7XG5cbnRlc3QoJ3J1bnMgcXVvdGUgYWZ0ZXIgdGhlIGZpZWxkIGNoYW5nZSBoYXMgYmVlbiBhcHBsaWVkJywgYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjYWxsczogc3RyaW5nW10gPSBbXTtcbiAgY29uc3Qgb25DaGFuZ2UgPSBqZXN0LmZuKCgpID0+IGNhbGxzLnB1c2goJ2NoYW5nZScpKTtcbiAgY29uc3QgZ2V0UXVvdGUgPSBqZXN0LmZuKCgpID0+IGNhbGxzLnB1c2goJ3F1b3RlJykpO1xuXG4gIHF1b3RlQWZ0ZXJGaWVsZENoYW5nZShvbkNoYW5nZSwgZ2V0UXVvdGUsICcyMDAnKTtcblxuICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKCcyMDAnKTtcbiAgZXhwZWN0KGdldFF1b3RlKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICBleHBlY3QoY2FsbHMpLnRvRXF1YWwoWydjaGFuZ2UnXSk7XG5cbiAgYXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7XG5cbiAgZXhwZWN0KGdldFF1b3RlKS50b0hhdmVCZWVuQ2FsbGVkVGltZXMoMSk7XG4gIGV4cGVjdChjYWxscykudG9FcXVhbChbJ2NoYW5nZScsICdxdW90ZSddKTtcbn0pO1xuXG50ZXN0KCdydW5zIHF1b3RlIGFmdGVyIGEgZ3JvdXAgbXV0YXRpb24gaGFzIGJlZW4gYXBwbGllZCcsIGFzeW5jICgpID0+IHtcbiAgY29uc3QgY2FsbHM6IHN0cmluZ1tdID0gW107XG4gIGNvbnN0IG11dGF0ZSA9IGplc3QuZm4oKCkgPT4gY2FsbHMucHVzaCgnbXV0YXRlJykpO1xuICBjb25zdCBnZXRRdW90ZSA9IGplc3QuZm4oKCkgPT4gY2FsbHMucHVzaCgncXVvdGUnKSk7XG5cbiAgcXVvdGVBZnRlck11dGF0aW9uKG11dGF0ZSwgZ2V0UXVvdGUpO1xuXG4gIGV4cGVjdChtdXRhdGUpLnRvSGF2ZUJlZW5DYWxsZWRUaW1lcygxKTtcbiAgZXhwZWN0KGdldFF1b3RlKS5ub3QudG9IYXZlQmVlbkNhbGxlZCgpO1xuICBleHBlY3QoY2FsbHMpLnRvRXF1YWwoWydtdXRhdGUnXSk7XG5cbiAgYXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7XG5cbiAgZXhwZWN0KGdldFF1b3RlKS50b0hhdmVCZWVuQ2FsbGVkVGltZXMoMSk7XG4gIGV4cGVjdChjYWxscykudG9FcXVhbChbJ211dGF0ZScsICdxdW90ZSddKTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiMEJBQ0EsdUtBQUFBLENBQUEsRUFBQUMsQ0FBQSxFQUFBQyxDQUFBLHdCQUFBQyxNQUFBLEdBQUFBLE1BQUEsT0FBQUMsQ0FBQSxHQUFBRixDQUFBLENBQUFHLFFBQUEsa0JBQUFDLENBQUEsR0FBQUosQ0FBQSxDQUFBSyxXQUFBLDhCQUFBQyxFQUFBTixDQUFBLEVBQUFFLENBQUEsRUFBQUUsQ0FBQSxFQUFBRSxDQUFBLFFBQUFDLENBQUEsR0FBQUwsQ0FBQSxJQUFBQSxDQUFBLENBQUFNLFNBQUEsWUFBQUMsU0FBQSxHQUFBUCxDQUFBLEdBQUFPLFNBQUEsRUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLE1BQUEsQ0FBQUwsQ0FBQSxDQUFBQyxTQUFBLFVBQUFLLG1CQUFBLENBQUFILENBQUEsdUJBQUFWLENBQUEsRUFBQUUsQ0FBQSxFQUFBRSxDQUFBLFFBQUFFLENBQUEsRUFBQUMsQ0FBQSxFQUFBRyxDQUFBLEVBQUFJLENBQUEsTUFBQUMsQ0FBQSxHQUFBWCxDQUFBLFFBQUFZLENBQUEsT0FBQUMsQ0FBQSxLQUFBRixDQUFBLEtBQUFiLENBQUEsS0FBQWdCLENBQUEsRUFBQXBCLENBQUEsRUFBQXFCLENBQUEsRUFBQUMsQ0FBQSxFQUFBTixDQUFBLEVBQUFNLENBQUEsQ0FBQUMsSUFBQSxDQUFBdkIsQ0FBQSxNQUFBc0IsQ0FBQSxXQUFBQSxFQUFBckIsQ0FBQSxFQUFBQyxDQUFBLFdBQUFNLENBQUEsR0FBQVAsQ0FBQSxFQUFBUSxDQUFBLE1BQUFHLENB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
|