merchi_checkout 0.0.0-a
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 +69 -0
- package/lib/actions/confirm.js +83 -0
- package/lib/actions/customer.js +59 -0
- package/lib/actions/domain.js +69 -0
- package/lib/actions/files.js +38 -0
- package/lib/actions/helpers.js +125 -0
- package/lib/actions/invoice.js +120 -0
- package/lib/actions/shipping.js +33 -0
- package/lib/actions/user.js +64 -0
- package/lib/components/Alerts.js +89 -0
- package/lib/components/Collapse.js +34 -0
- package/lib/components/DraftImageUploaded.js +54 -0
- package/lib/components/FooterButtons.js +25 -0
- package/lib/components/InvoiceInfo.js +34 -0
- package/lib/components/JobInfoContent.js +276 -0
- package/lib/components/MerchiCheckout.js +29 -0
- package/lib/components/MerchiCheckoutProvider.js +357 -0
- package/lib/components/MerchiCheckoutTabs.js +50 -0
- package/lib/components/TabPane.js +21 -0
- package/lib/components/TabPaneAddress.js +28 -0
- package/lib/components/TabPaneConfirm.js +281 -0
- package/lib/components/TabPaneContainer.js +13 -0
- package/lib/components/TabPaneCustomer.js +102 -0
- package/lib/components/TabPaneDrafting.js +117 -0
- package/lib/components/TabPaneNewDomain.js +39 -0
- package/lib/components/TabPanePayment.js +41 -0
- package/lib/components/TabPaneSubmitted.js +79 -0
- package/lib/components/TitleStep.js +23 -0
- package/lib/components/buttons/ButtonInvoiceDownload.js +92 -0
- package/lib/components/buttons/ButtonNext.js +40 -0
- package/lib/components/buttons/ButtonPrevious.js +31 -0
- package/lib/components/buttons/index.js +4 -0
- package/lib/components/currency.js +223 -0
- package/lib/components/forms/CheckboxBillingAddressSameAsShippingAddress.js +23 -0
- package/lib/components/forms/FormAddresses.js +200 -0
- package/lib/components/forms/FormCustomerNew.js +197 -0
- package/lib/components/forms/FormCustomerReturning.js +144 -0
- package/lib/components/forms/FormDomainNew.js +146 -0
- package/lib/components/forms/InputAcceptUserTermsAndConditions.js +39 -0
- package/lib/components/forms/InputCheckStoreName.js +168 -0
- package/lib/components/forms/InputError.js +18 -0
- package/lib/components/forms/InputFileUpload.js +191 -0
- package/lib/components/forms/InputSelect.js +52 -0
- package/lib/components/forms/InputText.js +60 -0
- package/lib/components/forms/InputsAddress.js +227 -0
- package/lib/components/forms/index.js +5 -0
- package/lib/components/lists/ListShipmentQuoteOptions.js +139 -0
- package/lib/components/lists/index.js +3 -0
- package/lib/index.js +6 -0
- package/lib/styles/globals.scss +2236 -0
- package/lib/tabs_utils.js +126 -0
- package/lib/types.js +39 -0
- package/lib/utils.js +462 -0
- package/package.json +83 -0
|
@@ -0,0 +1,281 @@
|
|
|
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 _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
5
|
+
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; }
|
|
6
|
+
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; }
|
|
7
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
9
|
+
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); }
|
|
10
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
11
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
12
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
13
|
+
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."); }
|
|
14
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
15
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
16
|
+
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; } }
|
|
17
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
18
|
+
import { useState } from 'react';
|
|
19
|
+
import { submitBuyNow, submitQuoteRequest } from '../actions/confirm';
|
|
20
|
+
import TabPane from './TabPane';
|
|
21
|
+
import TitleStep from './TitleStep';
|
|
22
|
+
import FooterButtons from './FooterButtons';
|
|
23
|
+
import { currencyTaxAndCost } from './currency';
|
|
24
|
+
import { hasDraftTab, tabIdConfirm, tabIdDrafting, tabIdCustomerInfo, tabIdShipment } from '../tabs_utils';
|
|
25
|
+
import { addressInOneLine, isProductSupplierMOD } from '../utils';
|
|
26
|
+
import { useMerchiCheckboutContext } from './MerchiCheckoutProvider';
|
|
27
|
+
import { DraftImagesStatic } from './DraftImageUploaded';
|
|
28
|
+
import JobInfoContent from './JobInfoContent';
|
|
29
|
+
import { SmallCustomerInfo } from './TabPaneCustomer';
|
|
30
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
31
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
32
|
+
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
33
|
+
export function ShippingAddressInfo(_ref) {
|
|
34
|
+
var address = _ref.address,
|
|
35
|
+
_ref$titleClass = _ref.titleClass,
|
|
36
|
+
titleClass = _ref$titleClass === void 0 ? '' : _ref$titleClass;
|
|
37
|
+
return /*#__PURE__*/_jsx("div", {
|
|
38
|
+
children: /*#__PURE__*/_jsx("p", {
|
|
39
|
+
className: "text-capitalize ".concat(titleClass),
|
|
40
|
+
children: addressInOneLine(address)
|
|
41
|
+
})
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
function ShipmentOptionInfoConfirm(_ref2) {
|
|
45
|
+
var shipment = _ref2.shipment;
|
|
46
|
+
var shipmentMethod = shipment.shipmentMethod,
|
|
47
|
+
taxType = shipment.taxType;
|
|
48
|
+
var currency = shipmentMethod.currency,
|
|
49
|
+
name = shipmentMethod.name;
|
|
50
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
51
|
+
className: "shipment-option-info-confirm",
|
|
52
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
53
|
+
className: "my-1",
|
|
54
|
+
children: /*#__PURE__*/_jsx("p", {
|
|
55
|
+
className: "mb-0",
|
|
56
|
+
children: name
|
|
57
|
+
})
|
|
58
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
59
|
+
className: "mt-3 pt-2 total-order-cost-container",
|
|
60
|
+
children: [/*#__PURE__*/_jsx("small", {
|
|
61
|
+
className: "mb-1 d-block",
|
|
62
|
+
children: "Shipment Cost"
|
|
63
|
+
}), /*#__PURE__*/_jsx("strong", {
|
|
64
|
+
className: "mb-0",
|
|
65
|
+
children: currencyTaxAndCost(currency, taxType, shipment.cost)
|
|
66
|
+
})]
|
|
67
|
+
})]
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
export function ConfirmInfoPanel(_ref3) {
|
|
71
|
+
var content = _ref3.content,
|
|
72
|
+
minHeight = _ref3.minHeight,
|
|
73
|
+
onClick = _ref3.onClick,
|
|
74
|
+
showClickToEdit = _ref3.showClickToEdit;
|
|
75
|
+
var cursor = showClickToEdit ? 'pointer' : 'auto';
|
|
76
|
+
return /*#__PURE__*/_jsx("div", {
|
|
77
|
+
className: "d-flex align-items-center",
|
|
78
|
+
style: {
|
|
79
|
+
cursor: cursor,
|
|
80
|
+
minHeight: minHeight
|
|
81
|
+
},
|
|
82
|
+
onClick: onClick,
|
|
83
|
+
children: /*#__PURE__*/_jsx("div", {
|
|
84
|
+
className: "flex-fill",
|
|
85
|
+
children: content
|
|
86
|
+
})
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
function ConfirmAddressAndShipmentInfo() {
|
|
90
|
+
var _useMerchiCheckboutCo = useMerchiCheckboutContext(),
|
|
91
|
+
job = _useMerchiCheckboutCo.job;
|
|
92
|
+
var shipping = job.shipping,
|
|
93
|
+
shipment = job.shipment;
|
|
94
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
95
|
+
className: "text-left px-3 py-3 modal_merchi-checkout-shipment-detail",
|
|
96
|
+
children: [/*#__PURE__*/_jsx("strong", {
|
|
97
|
+
children: "Shipment Detail"
|
|
98
|
+
}), shipping && /*#__PURE__*/_jsxs("div", {
|
|
99
|
+
className: "my-1",
|
|
100
|
+
children: [/*#__PURE__*/_jsx("small", {
|
|
101
|
+
className: "mb-1",
|
|
102
|
+
children: "Address"
|
|
103
|
+
}), /*#__PURE__*/_jsx(ShippingAddressInfo, {
|
|
104
|
+
titleClass: "mb-0",
|
|
105
|
+
address: shipping
|
|
106
|
+
})]
|
|
107
|
+
}), shipment && /*#__PURE__*/_jsx(ShipmentOptionInfoConfirm, {
|
|
108
|
+
shipment: shipment
|
|
109
|
+
})]
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
export function ConfirmInfo() {
|
|
113
|
+
var _useMerchiCheckboutCo2 = useMerchiCheckboutContext(),
|
|
114
|
+
job = _useMerchiCheckboutCo2.job,
|
|
115
|
+
setActiveTabById = _useMerchiCheckboutCo2.setActiveTabById,
|
|
116
|
+
tabs = _useMerchiCheckboutCo2.tabs;
|
|
117
|
+
var client = job.client,
|
|
118
|
+
ownDrafts = job.ownDrafts,
|
|
119
|
+
product = job.product;
|
|
120
|
+
var isResell = isProductSupplierMOD(product);
|
|
121
|
+
var needsShipping = product && product.needsShipping;
|
|
122
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
123
|
+
children: [client && /*#__PURE__*/_jsx(ConfirmInfoPanel, {
|
|
124
|
+
minHeight: "0px",
|
|
125
|
+
onClick: function onClick() {
|
|
126
|
+
return setActiveTabById(tabIdCustomerInfo);
|
|
127
|
+
},
|
|
128
|
+
showClickToEdit: false,
|
|
129
|
+
title: "Edit",
|
|
130
|
+
content: /*#__PURE__*/_jsx(SmallCustomerInfo, {})
|
|
131
|
+
}), /*#__PURE__*/_jsx(ConfirmInfoPanel, {
|
|
132
|
+
minHeight: "0px",
|
|
133
|
+
onClick: function onClick() {
|
|
134
|
+
return;
|
|
135
|
+
},
|
|
136
|
+
showClickToEdit: false,
|
|
137
|
+
title: "Edit",
|
|
138
|
+
content: /*#__PURE__*/_jsx(JobInfoContent, {})
|
|
139
|
+
}), !!(!isResell && needsShipping) && /*#__PURE__*/_jsx(ConfirmInfoPanel, {
|
|
140
|
+
minHeight: "0px",
|
|
141
|
+
onClick: function onClick() {
|
|
142
|
+
return setActiveTabById(tabIdShipment);
|
|
143
|
+
},
|
|
144
|
+
showClickToEdit: false,
|
|
145
|
+
title: "Edit",
|
|
146
|
+
content: /*#__PURE__*/_jsx(ConfirmAddressAndShipmentInfo, {})
|
|
147
|
+
}), !!(hasDraftTab(tabs) && ownDrafts) && /*#__PURE__*/_jsx(ConfirmInfoPanel, {
|
|
148
|
+
minHeight: "0px",
|
|
149
|
+
onClick: function onClick() {
|
|
150
|
+
return setActiveTabById(tabIdDrafting);
|
|
151
|
+
},
|
|
152
|
+
showClickToEdit: false,
|
|
153
|
+
title: "Edit",
|
|
154
|
+
content: ownDrafts.length ? /*#__PURE__*/_jsxs("div", {
|
|
155
|
+
className: "parent-variation-card px-3 py-3 mt-4 file-upload-preview",
|
|
156
|
+
children: [/*#__PURE__*/_jsx("strong", {
|
|
157
|
+
children: "Uploaded Files"
|
|
158
|
+
}), /*#__PURE__*/_jsx(DraftImagesStatic, {
|
|
159
|
+
className: "width-100 mt-2 z-index-10000",
|
|
160
|
+
items: ownDrafts
|
|
161
|
+
})]
|
|
162
|
+
}) : ''
|
|
163
|
+
})]
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
function TabPaneConfirm() {
|
|
167
|
+
var _useMerchiCheckboutCo3 = useMerchiCheckboutContext(),
|
|
168
|
+
alertErrorShow = _useMerchiCheckboutCo3.alertErrorShow,
|
|
169
|
+
job = _useMerchiCheckboutCo3.job,
|
|
170
|
+
isBuyRequest = _useMerchiCheckboutCo3.isBuyRequest,
|
|
171
|
+
nextTab = _useMerchiCheckboutCo3.nextTab,
|
|
172
|
+
product = _useMerchiCheckboutCo3.product,
|
|
173
|
+
setInvoice = _useMerchiCheckboutCo3.setInvoice,
|
|
174
|
+
setJob = _useMerchiCheckboutCo3.setJob;
|
|
175
|
+
var _useState = useState(false),
|
|
176
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
177
|
+
loading = _useState2[0],
|
|
178
|
+
setLoading = _useState2[1];
|
|
179
|
+
function submit() {
|
|
180
|
+
return _submit.apply(this, arguments);
|
|
181
|
+
}
|
|
182
|
+
function _submit() {
|
|
183
|
+
_submit = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
184
|
+
var response, invoice, error, _response, quote, _error;
|
|
185
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
186
|
+
while (1) switch (_context.prev = _context.next) {
|
|
187
|
+
case 0:
|
|
188
|
+
setLoading(true);
|
|
189
|
+
_context.prev = 1;
|
|
190
|
+
if (!isBuyRequest) {
|
|
191
|
+
_context.next = 22;
|
|
192
|
+
break;
|
|
193
|
+
}
|
|
194
|
+
_context.next = 5;
|
|
195
|
+
return submitBuyNow(_objectSpread(_objectSpread({}, job), {}, {
|
|
196
|
+
product: {
|
|
197
|
+
id: product.id
|
|
198
|
+
}
|
|
199
|
+
}));
|
|
200
|
+
case 5:
|
|
201
|
+
response = _context.sent;
|
|
202
|
+
if (!response.ok) {
|
|
203
|
+
_context.next = 15;
|
|
204
|
+
break;
|
|
205
|
+
}
|
|
206
|
+
_context.next = 9;
|
|
207
|
+
return response.json();
|
|
208
|
+
case 9:
|
|
209
|
+
invoice = _context.sent;
|
|
210
|
+
setInvoice(_objectSpread({}, invoice.invoice));
|
|
211
|
+
setLoading(false);
|
|
212
|
+
nextTab();
|
|
213
|
+
_context.next = 20;
|
|
214
|
+
break;
|
|
215
|
+
case 15:
|
|
216
|
+
_context.next = 17;
|
|
217
|
+
return response.json();
|
|
218
|
+
case 17:
|
|
219
|
+
error = _context.sent;
|
|
220
|
+
alertErrorShow(error.message);
|
|
221
|
+
setLoading(false);
|
|
222
|
+
case 20:
|
|
223
|
+
_context.next = 39;
|
|
224
|
+
break;
|
|
225
|
+
case 22:
|
|
226
|
+
_context.next = 24;
|
|
227
|
+
return submitQuoteRequest(job);
|
|
228
|
+
case 24:
|
|
229
|
+
_response = _context.sent;
|
|
230
|
+
if (!_response.ok) {
|
|
231
|
+
_context.next = 34;
|
|
232
|
+
break;
|
|
233
|
+
}
|
|
234
|
+
_context.next = 28;
|
|
235
|
+
return _response.json();
|
|
236
|
+
case 28:
|
|
237
|
+
quote = _context.sent;
|
|
238
|
+
setJob(_objectSpread(_objectSpread({}, job), {}, {
|
|
239
|
+
id: quote.job.id
|
|
240
|
+
}));
|
|
241
|
+
setLoading(false);
|
|
242
|
+
nextTab();
|
|
243
|
+
_context.next = 38;
|
|
244
|
+
break;
|
|
245
|
+
case 34:
|
|
246
|
+
_context.next = 36;
|
|
247
|
+
return _response.json();
|
|
248
|
+
case 36:
|
|
249
|
+
_error = _context.sent;
|
|
250
|
+
alertErrorShow(_error.message);
|
|
251
|
+
case 38:
|
|
252
|
+
setLoading(false);
|
|
253
|
+
case 39:
|
|
254
|
+
_context.next = 45;
|
|
255
|
+
break;
|
|
256
|
+
case 41:
|
|
257
|
+
_context.prev = 41;
|
|
258
|
+
_context.t0 = _context["catch"](1);
|
|
259
|
+
alertErrorShow(_context.t0.message);
|
|
260
|
+
setLoading(false);
|
|
261
|
+
case 45:
|
|
262
|
+
case "end":
|
|
263
|
+
return _context.stop();
|
|
264
|
+
}
|
|
265
|
+
}, _callee, null, [[1, 41]]);
|
|
266
|
+
}));
|
|
267
|
+
return _submit.apply(this, arguments);
|
|
268
|
+
}
|
|
269
|
+
return /*#__PURE__*/_jsxs(TabPane, {
|
|
270
|
+
tabId: tabIdConfirm,
|
|
271
|
+
children: [/*#__PURE__*/_jsx(TitleStep, {
|
|
272
|
+
title: "Confirm - Quote Summary"
|
|
273
|
+
}), /*#__PURE__*/_jsx(ConfirmInfo, {}), /*#__PURE__*/_jsx(FooterButtons, {
|
|
274
|
+
forceDisabled: false,
|
|
275
|
+
loading: loading,
|
|
276
|
+
onClickNext: submit
|
|
277
|
+
})]
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
export default TabPaneConfirm;
|
|
281
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdHlwZW9mIiwibyIsIlN5bWJvbCIsIml0ZXJhdG9yIiwiY29uc3RydWN0b3IiLCJwcm90b3R5cGUiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwiZSIsInQiLCJyIiwiT2JqZWN0IiwibiIsImhhc093blByb3BlcnR5IiwiZGVmaW5lUHJvcGVydHkiLCJ2YWx1ZSIsImkiLCJhIiwiYyIsImFzeW5jSXRlcmF0b3IiLCJ1IiwidG9TdHJpbmdUYWciLCJkZWZpbmUiLCJlbnVtZXJhYmxlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJ3cmFwIiwiR2VuZXJhdG9yIiwiY3JlYXRlIiwiQ29udGV4dCIsIm1ha2VJbnZva2VNZXRob2QiLCJ0cnlDYXRjaCIsInR5cGUiLCJhcmciLCJjYWxsIiwiaCIsImwiLCJmIiwicyIsInkiLCJHZW5lcmF0b3JGdW5jdGlvbiIsIkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlIiwicCIsImQiLCJnZXRQcm90b3R5cGVPZiIsInYiLCJ2YWx1ZXMiLCJnIiwiZGVmaW5lSXRlcmF0b3JNZXRob2RzIiwiZm9yRWFjaCIsIl9pbnZva2UiLCJBc3luY0l0ZXJhdG9yIiwiaW52b2tlIiwicmVzb2x2ZSIsIl9fYXdhaXQiLCJ0aGVuIiwiY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmciLCJFcnJvciIsImRvbmUiLCJtZXRob2QiLCJkZWxlZ2F0ZSIsIm1heWJlSW52b2tlRGVsZWdhdGUiLCJzZW50IiwiX3NlbnQiLCJkaXNwYXRjaEV4Y2VwdGlvbiIsImFicnVwdCIsIlR5cGVFcnJvciIsInJlc3VsdE5hbWUiLCJuZXh0IiwibmV4dExvYyIsInB1c2hUcnlFbnRyeSIsInRyeUxvYyIsImNhdGNoTG9jIiwiZmluYWxseUxvYyIsImFmdGVyTG9jIiwidHJ5RW50cmllcyIsInB1c2giLCJyZXNldFRyeUVudHJ5IiwiY29tcGxldGlvbiIsInJlc2V0IiwiaXNOYU4iLCJsZW5ndGgiLCJkaXNwbGF5TmFtZSIsImlzR2VuZXJhdG9yRnVuY3Rpb24iLCJuYW1lIiwibWFyayIsInNldFByb3RvdHlwZU9mIiwiX19wcm90b19fIiwiYXdyYXAiLCJhc3luYyIsIlByb21pc2UiLCJrZXlzIiwicmV2ZXJzZSIsInBvcCIsInByZXYiLCJjaGFyQXQiLCJzbGljZSIsInN0b3AiLCJydmFsIiwiaGFuZGxlIiwiY29tcGxldGUiLCJmaW5pc2giLCJfY2F0Y2giLCJkZWxlZ2F0ZVlpZWxkIiwib3duS2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwib2JqIiwia2V5IiwiX3RvUHJvcGVydHlLZXkiLCJfdG9QcmltaXRpdmUiLCJTdHJpbmciLCJ0b1ByaW1pdGl2ZSIsIk51bWJlciIsImFzeW5jR2VuZXJhdG9yU3RlcCIsImdlbiIsInJlamVjdCIsIl9uZXh0IiwiX3Rocm93IiwiaW5mbyIsImVycm9yIiwiX2FzeW5jVG9HZW5lcmF0b3IiLCJmbiIsInNlbGYiLCJhcmdzIiwiZXJyIiwidW5kZWZpbmVkIiwiX3NsaWNlZFRvQXJyYXkiLCJhcnIiLCJfYXJyYXlXaXRoSG9sZXMiLCJfaXRlcmFibGVUb0FycmF5TGltaXQiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVSZXN0IiwibWluTGVuIiwiX2FycmF5TGlrZVRvQXJyYXkiLCJ0b1N0cmluZyIsIkFycmF5IiwiZnJvbSIsInRlc3QiLCJsZW4iLCJhcnIyIiwiaXNBcnJheSIsInVzZVN0YXRlIiwic3VibWl0QnV5Tm93Iiwic3VibWl0UXVvdGVSZXF1ZXN0IiwiVGFiUGFuZSIsIlRpdGxlU3RlcCIsIkZvb3RlckJ1dHRvbnMiLCJjdXJyZW5jeVRheEFuZENvc3QiLCJoYXNEcmFmdFRhYiIsInRhYklkQ29uZmlybSIsInRhYklkRHJhZnRpbmciLCJ0YWJJZEN1c3RvbWVySW5mbyIsInRhYklkU2hpcG1lbnQiLCJhZGRyZXNzSW5PbmVMaW5lIiwiaXNQcm9kdWN0U3VwcGxpZXJNT0QiLCJ1c2VNZXJjaGlDaGVja2JvdXRDb250ZXh0IiwiRHJhZnRJbWFnZXNTdGF0aWMiLCJKb2JJbmZvQ29udGVudCIsIlNtYWxsQ3VzdG9tZXJJbmZvIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIkZyYWdtZW50IiwiX0ZyYWdtZW50IiwiU2hpcHBpbmdBZGRyZXNzSW5mbyIsIl9yZWYiLCJhZGRyZXNzIiwiX3JlZiR0aXRsZUNsYXNzIiwidGl0bGVDbGFzcyIsImNoaWxkcmVuIiwiY2xhc3NOYW1lIiwiY29uY2F0IiwiU2hpcG1lbnRPcHRpb25JbmZvQ29uZmlybSIsIl9yZWYyIiwic2hpcG1lbnQiLCJzaGlwbWVudE1ldGhvZCIsInRheFR5cGUiLCJjdXJyZW5jeSIsImNvc3QiLCJDb25maXJtSW5mb1BhbmVsIiwiX3JlZjMiLCJjb250ZW50IiwibWluSGVpZ2h0Iiwib25DbGljayIsInNob3dDbGlja1RvRWRpdCIsImN1cnNvciIsInN0eWxlIiwiQ29uZmlybUFkZHJlc3NBbmRTaGlwbWVudEluZm8iLCJfdXNlTWVyY2hpQ2hlY2tib3V0Q28iLCJqb2IiLCJzaGlwcGluZyIsIkNvbmZpcm1JbmZvIiwiX3VzZU1lcmNoaUNoZWNrYm91dENvMiIsInNldEFjdGl2ZVRhYkJ5SWQiLCJ0YWJzIiwiY2xpZW50Iiwib3duRHJhZnRzIiwicHJvZHVjdCIsImlzUmVzZWxsIiwibmVlZHNTaGlwcGluZyIsInRpdGxlIiwiaXRlbXMiLCJUYWJQYW5lQ29uZmlybSIsIl91c2VNZXJjaGlDaGVja2JvdXRDbzMiLCJhbGVydEVycm9yU2hvdyIsImlzQnV5UmVxdWVzdCIsIm5leHRUYWIiLCJzZXRJbnZvaWNlIiwic2V0Sm9iIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsImxvYWRpbmciLCJzZXRMb2FkaW5nIiwic3VibWl0IiwiX3N1Ym1pdCIsIl9jYWxsZWUiLCJyZXNwb25zZSIsImludm9pY2UiLCJfcmVzcG9uc2UiLCJxdW90ZSIsIl9lcnJvciIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJpZCIsIm9rIiwianNvbiIsIm1lc3NhZ2UiLCJ0MCIsInRhYklkIiwiZm9yY2VEaXNhYmxlZCIsIm9uQ2xpY2tOZXh0Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbXBvbmVudHMvVGFiUGFuZUNvbmZpcm0udHN4Il0sInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50JztcbmltcG9ydCB7IHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgc3VibWl0QnV5Tm93LCBzdWJtaXRRdW90ZVJlcXVlc3QgfSBmcm9tICcuLi9hY3Rpb25zL2NvbmZpcm0nO1xuaW1wb3J0IFRhYlBhbmUgZnJvbSAnLi9UYWJQYW5lJztcbmltcG9ydCBUaXRsZVN0ZXAgZnJvbSAnLi9UaXRsZVN0ZXAnO1xuaW1wb3J0IEZvb3RlckJ1dHRvbnMgZnJvbSAnLi9Gb290ZXJCdXR0b25zJztcbmltcG9ydCB7IGN1cnJlbmN5VGF4QW5kQ29zdCB9IGZyb20gJy4vY3VycmVuY3knO1xuaW1wb3J0IHtcbiAgaGFzRHJhZnRUYWIsXG4gIHRhYklkQ29uZmlybSxcbiAgdGFiSWREcmFmdGluZyxcbiAgdGFiSWRDdXN0b21lckluZm8sXG4gIHRhYklkU2hpcG1lbnQsXG59IGZyb20gJy4uL3RhYnNfdXRpbHMnO1xuaW1wb3J0IHsgYWRkcmVzc0luT25lTGluZSwgaXNQcm9kdWN0U3VwcGxpZXJNT0QgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyB1c2VNZXJjaGlDaGVja2JvdXRDb250ZXh0IH0gZnJvbSAnLi9NZXJjaGlDaGVja291dFByb3ZpZGVyJztcbmltcG9ydCB7IERyYWZ0SW1hZ2VzU3RhdGljIH0gZnJvbSAnLi9EcmFmdEltYWdlVXBsb2FkZWQnO1xuaW1wb3J0IEpvYkluZm9Db250ZW50IGZyb20gJy4vSm9iSW5mb0NvbnRlbnQnO1xuaW1wb3J0IHsgU21hbGxDdXN0b21lckluZm8gfSBmcm9tICcuL1RhYlBhbmVDdXN0b21lcic7XG5cbmludGVyZmFjZSBQcm9wc1NoaXBwaW5nQWRkcmVzc0luZm8ge1xuICBhZGRyZXNzOiBhbnk7XG4gIHRpdGxlQ2xhc3M6IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIFNoaXBwaW5nQWRkcmVzc0luZm8oe1xuICBhZGRyZXNzLFxuICB0aXRsZUNsYXNzID0gJycsXG59OiBQcm9wc1NoaXBwaW5nQWRkcmVzc0luZm8pIHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2PlxuICAgICAgPHAgY2xhc3NOYW1lPXtgdGV4dC1jYXBpdGFsaXplICR7dGl0bGVDbGFzc31gfT5cbiAgICAgICAge2FkZHJlc3NJbk9uZUxpbmUoYWRkcmVzcyl9XG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmludGVyZmFjZSBQcm9wc1NoaXBtZW50T3B0aW9uSW5mb0NvbmZpcm0ge1xuICBzaGlwbWVudDogYW55O1xufVxuXG5mdW5jdGlvbiBTaGlwbWVudE9wdGlvbkluZm9Db25maXJtKHtcbiAgc2hpcG1lbnQsXG59OiBQcm9wc1NoaXBtZW50T3B0aW9uSW5mb0NvbmZpcm0pIHtcbiAgY29uc3QgeyBzaGlwbWVudE1ldGhvZCwgdGF4VHlwZSB9ID0gc2hpcG1lbnQ7XG4gIGNvbnN0IHsgY3VycmVuY3ksIG5hbWUgfSA9IHNoaXBtZW50TWV0aG9kO1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPSdzaGlwbWVudC1vcHRpb24taW5mby1jb25maXJtJz5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPSdteS0xJz5cbiAgICAgICAgPHAgY2xhc3NOYW1lPSdtYi0wJz57bmFtZX08L3A+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPSdtdC0zIHB0LTIgdG90YWwtb3JkZXItY29zdC1jb250YWluZXInPlxuICAgICAgICA8c21hbGwgY2xhc3NOYW1lPSdtYi0xIGQtYmxvY2snPlNoaXBtZW50IENvc3Q8L3NtYWxsPlxuICAgICAgICA8c3Ryb25nIGNsYXNzTmFtZT0nbWItMCc+XG4gICAgICAgICAge2N1cnJlbmN5VGF4QW5kQ29zdChjdXJyZW5jeSwgdGF4VHlwZSwgc2hpcG1lbnQuY29zdCl9XG4gICAgICAgIDwvc3Ryb25nPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmludGVyZmFjZSBQcm9wc0NvbmZpcm1JbmZvUGFuZWwge1xuICBjb250ZW50OiBhbnk7XG4gIG1pbkhlaWdodDogYW55O1xuICBvbkNsaWNrOiAoKSA9PiB2b2lkO1xuICBzaG93Q2xpY2tUb0VkaXQ/OiBib29sZWFuO1xuICB0aXRsZTogc3RyaW5nO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gQ29uZmlybUluZm9QYW5lbCh7XG4gIGNvbnRlbnQsXG4gIG1pbkhlaWdodCxcbiAgb25DbGljayxcbiAgc2hvd0NsaWNrVG9FZGl0LFxufTogUHJvcHNDb25maXJtSW5mb1BhbmVsKSB7XG4gIGNvbnN0IGN1cnNvciA9IHNob3dDbGlja1RvRWRpdCA/ICdwb2ludGVyJyA6ICdhdXRvJztcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9J2QtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXInXG4gICAgICBzdHlsZT17eyBjdXJzb3IsIG1pbkhlaWdodCB9fVxuICAgICAgb25DbGljaz17b25DbGlja31cbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT0nZmxleC1maWxsJz57Y29udGVudH08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZnVuY3Rpb24gQ29uZmlybUFkZHJlc3NBbmRTaGlwbWVudEluZm8oKSB7XG4gIGNvbnN0IHsgam9iIH0gPSB1c2VNZXJjaGlDaGVja2JvdXRDb250ZXh0KCk7XG4gIGNvbnN0IHsgc2hpcHBpbmcsIHNoaXBtZW50IH0gPSBqb2I7XG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9J3RleHQtbGVmdCBweC0zIHB5LTMgbW9kYWxfbWVyY2hpLWNoZWNrb3V0LXNoaXBtZW50LWRldGFpbCc+XG4gICAgICA8c3Ryb25nPlNoaXBtZW50IERldGFpbDwvc3Ryb25nPlxuICAgICAge3NoaXBwaW5nICYmIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9J215LTEnPlxuICAgICAgICAgIDxzbWFsbCBjbGFzc05hbWU9J21iLTEnPkFkZHJlc3M8L3NtYWxsPlxuICAgICAgICAgIDxTaGlwcGluZ0FkZHJlc3NJbmZvIHRpdGxlQ2xhc3M9J21iLTAnIGFkZHJlc3M9e3NoaXBwaW5nfSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICl9XG4gICAgICB7c2hpcG1lbnQgJiYgPFNoaXBtZW50T3B0aW9uSW5mb0NvbmZpcm0gc2hpcG1lbnQ9e3NoaXBtZW50fSAvPn1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIENvbmZpcm1JbmZvKCkge1xuICBjb25zdCB7IGpvYiwgc2V0QWN0aXZlVGFiQnlJZCwgdGFicyB9ID0gdXNlTWVyY2hpQ2hlY2tib3V0Q29udGV4dCgpO1xuICBjb25zdCB7IGNsaWVudCwgb3duRHJhZnRzLCBwcm9kdWN0IH0gPSBqb2I7XG4gIGNvbnN0IGlzUmVzZWxsID0gaXNQcm9kdWN0U3VwcGxpZXJNT0QocHJvZHVjdCk7XG4gIGNvbnN0IG5lZWRzU2hpcHBpbmcgPSBwcm9kdWN0ICYmIHByb2R1Y3QubmVlZHNTaGlwcGluZztcbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge2NsaWVudCAmJiAoXG4gICAgICAgIDxDb25maXJtSW5mb1BhbmVsXG4gICAgICAgICAgbWluSGVpZ2h0PScwcHgnXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0QWN0aXZlVGFiQnlJZCh0YWJJZEN1c3RvbWVySW5mbyl9XG4gICAgICAgICAgc2hvd0NsaWNrVG9FZGl0PXtmYWxzZX1cbiAgICAgICAgICB0aXRsZT0nRWRpdCdcbiAgICAgICAgICBjb250ZW50PXs8U21hbGxDdXN0b21lckluZm8gLz59XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgICAgPENvbmZpcm1JbmZvUGFuZWxcbiAgICAgICAgbWluSGVpZ2h0PScwcHgnXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH19XG4gICAgICAgIHNob3dDbGlja1RvRWRpdD17ZmFsc2V9XG4gICAgICAgIHRpdGxlPSdFZGl0J1xuICAgICAgICBjb250ZW50PXs8Sm9iSW5mb0NvbnRlbnQgLz59XG4gICAgICAvPlxuICAgICAgeyEhKCFpc1Jlc2VsbCAmJiBuZWVkc1NoaXBwaW5nKSAmJiAoXG4gICAgICAgIDxDb25maXJtSW5mb1BhbmVsXG4gICAgICAgICAgbWluSGVpZ2h0PScwcHgnXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0QWN0aXZlVGFiQnlJZCh0YWJJZFNoaXBtZW50KX1cbiAgICAgICAgICBzaG93Q2xpY2tUb0VkaXQ9e2ZhbHNlfVxuICAgICAgICAgIHRpdGxlPSdFZGl0J1xuICAgICAgICAgIGNvbnRlbnQ9ezxDb25maXJtQWRkcmVzc0FuZFNoaXBtZW50SW5mbyAvPn1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgICB7ISEoaGFzRHJhZnRUYWIodGFicykgJiYgb3duRHJhZnRzKSAmJiAoXG4gICAgICAgIDxDb25maXJtSW5mb1BhbmVsXG4gICAgICAgICAgbWluSGVpZ2h0PScwcHgnXG4gICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0QWN0aXZlVGFiQnlJZCh0YWJJZERyYWZ0aW5nKX1cbiAgICAgICAgICBzaG93Q2xpY2tUb0VkaXQ9e2ZhbHNlfVxuICAgICAgICAgIHRpdGxlPSdFZGl0J1xuICAgICAgICAgIGNvbnRlbnQ9e1xuICAgICAgICAgICAgb3duRHJhZnRzLmxlbmd0aCA/IChcbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3BhcmVudC12YXJpYXRpb24tY2FyZCBweC0zIHB5LTMgbXQtNCBmaWxlLXVwbG9hZC1wcmV2aWV3Jz5cbiAgICAgICAgICAgICAgICA8c3Ryb25nPlVwbG9hZGVkIEZpbGVzPC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgPERyYWZ0SW1hZ2VzU3RhdGljXG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9J3dpZHRoLTEwMCBtdC0yIHotaW5kZXgtMTAwMDAnXG4gICAgICAgICAgICAgICAgICBpdGVtcz17b3duRHJhZnRzfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgJydcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvPlxuICApO1xufVxuXG5mdW5jdGlvbiBUYWJQYW5lQ29uZmlybSgpIHtcbiAgY29uc3Qge1xuICAgIGFsZXJ0RXJyb3JTaG93LFxuICAgIGpvYixcbiAgICBpc0J1eVJlcXVlc3QsXG4gICAgbmV4dFRhYixcbiAgICBwcm9kdWN0LFxuICAgIHNldEludm9pY2UsXG4gICAgc2V0Sm9iLFxuICB9ID0gdXNlTWVyY2hpQ2hlY2tib3V0Q29udGV4dCgpO1xuICBjb25zdCBbbG9hZGluZywgc2V0TG9hZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGFzeW5jIGZ1bmN0aW9uIHN1Ym1pdCgpIHtcbiAgICBzZXRMb2FkaW5nKHRydWUpO1xuICAgIHRyeSB7XG4gICAgICBpZiAoaXNCdXlSZXF1ZXN0KSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgc3VibWl0QnV5Tm93KHtcbiAgICAgICAgICAuLi5qb2IsXG4gICAgICAgICAgcHJvZHVjdDogeyBpZDogcHJvZHVjdC5pZCB9LFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICAgICAgY29uc3QgaW52b2ljZSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTtcbiAgICAgICAgICBzZXRJbnZvaWNlKHsgLi4uaW52b2ljZS5pbnZvaWNlIH0pO1xuICAgICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgIG5leHRUYWIoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBlcnJvciA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTtcbiAgICAgICAgICBhbGVydEVycm9yU2hvdyhlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBzdWJtaXRRdW90ZVJlcXVlc3Qoam9iKTtcbiAgICAgICAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgICAgICAgY29uc3QgcXVvdGUgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgICAgICAgc2V0Sm9iKHsgLi4uam9iLCBpZDogcXVvdGUuam9iLmlkIH0pO1xuICAgICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICAgIG5leHRUYWIoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCBlcnJvciA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTtcbiAgICAgICAgICBhbGVydEVycm9yU2hvdyhlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgfVxuICAgICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlOiBhbnkpIHtcbiAgICAgIGFsZXJ0RXJyb3JTaG93KGUubWVzc2FnZSk7XG4gICAgICBzZXRMb2FkaW5nKGZhbHNlKTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIChcbiAgICA8VGFiUGFuZSB0YWJJZD17dGFiSWRDb25maXJtfT5cbiAgICAgIDxUaXRsZVN0ZXAgdGl0bGU9J0NvbmZpcm0gLSBRdW90ZSBTdW1tYXJ5JyAvPlxuICAgICAgPENvbmZpcm1JbmZvIC8+XG4gICAgICA8Rm9vdGVyQnV0dG9uc1xuICAgICAgICBmb3JjZURpc2FibGVkPXtmYWxzZX1cbiAgICAgICAgbG9hZGluZz17bG9hZGluZ31cbiAgICAgICAgb25DbGlja05leHQ9e3N1Ym1pdH1cbiAgICAgIC8+XG4gICAgPC9UYWJQYW5lPlxuICApO1xufVxuXG5leHBvcnQgZGVmYXVsdCBUYWJQYW5lQ29uZmlybTtcbiJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTs7QUFBQyxTQUFBQSxRQUFBQyxDQUFBLHNDQUFBRCxPQUFBLHdCQUFBRSxNQUFBLHVCQUFBQSxNQUFBLENBQUFDLFFBQUEsYUFBQUYsQ0FBQSxrQkFBQUEsQ0FBQSxnQkFBQUEsQ0FBQSxXQUFBQSxDQUFBLHlCQUFBQyxNQUFBLElBQUFELENBQUEsQ0FBQUcsV0FBQSxLQUFBRixNQUFBLElBQUFELENBQUEsS0FBQUMsTUFBQSxDQUFBRyxTQUFBLHFCQUFBSixDQUFBLEtBQUFELE9BQUEsQ0FBQUMsQ0FBQTtBQUFBLFNBQUFLLG9CQUFBLGtCQUNiLHFKQUFBQSxtQkFBQSxZQUFBQSxvQkFBQSxXQUFBQyxDQUFBLFNBQUFDLENBQUEsRUFBQUQsQ0FBQSxPQUFBRSxDQUFBLEdBQUFDLE1BQUEsQ0FBQUwsU0FBQSxFQUFBTSxDQUFBLEdBQUFGLENBQUEsQ0FBQUcsY0FBQSxFQUFBWCxDQUFBLEdBQUFTLE1BQUEsQ0FBQUcsY0FBQSxjQUFBTCxDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxJQUFBRCxDQUFBLENBQUFELENBQUEsSUFBQUUsQ0FBQSxDQUFBSyxLQUFBLEtBQUFDLENBQUEsd0JBQUFiLE1BQUEsR0FBQUEsTUFBQSxPQUFBYyxDQUFBLEdBQUFELENBQUEsQ0FBQVosUUFBQSxrQkFBQWMsQ0FBQSxHQUFBRixDQUFBLENBQUFHLGFBQUEsdUJBQUFDLENBQUEsR0FBQUosQ0FBQSxDQUFBSyxXQUFBLDhCQUFBQyxPQUFBYixDQUFBLEVBQUFELENBQUEsRUFBQUUsQ0FBQSxXQUFBQyxNQUFBLENBQUFHLGNBQUEsQ0FBQUwsQ0FBQSxFQUFBRCxDQUFBLElBQUFPLEtBQUEsRUFBQUwsQ0FBQSxFQUFBYSxVQUFBLE1BQUFDLFlBQUEsTUFBQUMsUUFBQSxTQUFBaEIsQ0FBQSxDQUFBRCxDQUFBLFdBQUFjLE1BQUEsbUJBQUFiLENBQUEs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
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { useMerchiCheckboutContext } from './MerchiCheckoutProvider';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
function TabPaneContainer(_ref) {
|
|
4
|
+
var children = _ref.children;
|
|
5
|
+
var _useMerchiCheckboutCo = useMerchiCheckboutContext(),
|
|
6
|
+
classNameMerchiCheckoutTabPaneContainer = _useMerchiCheckboutCo.classNameMerchiCheckoutTabPaneContainer;
|
|
7
|
+
return /*#__PURE__*/_jsx("div", {
|
|
8
|
+
className: classNameMerchiCheckoutTabPaneContainer,
|
|
9
|
+
children: children
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
export default TabPaneContainer;
|
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VNZXJjaGlDaGVja2JvdXRDb250ZXh0IiwianN4IiwiX2pzeCIsIlRhYlBhbmVDb250YWluZXIiLCJfcmVmIiwiY2hpbGRyZW4iLCJfdXNlTWVyY2hpQ2hlY2tib3V0Q28iLCJjbGFzc05hbWVNZXJjaGlDaGVja291dFRhYlBhbmVDb250YWluZXIiLCJjbGFzc05hbWUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tcG9uZW50cy9UYWJQYW5lQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VNZXJjaGlDaGVja2JvdXRDb250ZXh0IH0gZnJvbSAnLi9NZXJjaGlDaGVja291dFByb3ZpZGVyJztcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgY2hpbGRyZW46IGFueTtcbn1cblxuZnVuY3Rpb24gVGFiUGFuZUNvbnRhaW5lcih7IGNoaWxkcmVuIH06IFByb3BzKSB7XG4gIGNvbnN0IHsgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJQYW5lQ29udGFpbmVyIH0gPVxuICAgIHVzZU1lcmNoaUNoZWNrYm91dENvbnRleHQoKTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRUYWJQYW5lQ29udGFpbmVyfT57Y2hpbGRyZW59PC9kaXY+XG4gICk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IFRhYlBhbmVDb250YWluZXI7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLHlCQUF5QixRQUFRLDBCQUEwQjtBQUFDLFNBQUFDLEdBQUEsSUFBQUMsSUFBQTtBQU1yRSxTQUFTQyxnQkFBZ0JBLENBQUFDLElBQUEsRUFBc0I7RUFBQSxJQUFuQkMsUUFBUSxHQUFBRCxJQUFBLENBQVJDLFFBQVE7RUFDbEMsSUFBQUMscUJBQUEsR0FDRU4seUJBQXlCLENBQUMsQ0FBQztJQURyQk8sdUNBQXVDLEdBQUFELHFCQUFBLENBQXZDQyx1Q0FBdUM7RUFFL0Msb0JBQ0VMLElBQUE7SUFBS00sU0FBUyxFQUFFRCx1Q0FBd0M7SUFBQUYsUUFBQSxFQUFFQTtFQUFRLENBQU0sQ0FBQztBQUU3RTtBQUVBLGVBQWVGLGdCQUFnQiJ9
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import TabPane from './TabPane';
|
|
4
|
+
import TitleStep from './TitleStep';
|
|
5
|
+
import FooterButtons from './FooterButtons';
|
|
6
|
+
import { tabIdCustomerInfo } from '../tabs_utils';
|
|
7
|
+
import { isUserRegistered, isRegisteredAndHasStore } from '../utils';
|
|
8
|
+
import { useMerchiCheckboutContext } from './MerchiCheckoutProvider';
|
|
9
|
+
import { FormCustomerNew, FormCustomerReturning } from './forms';
|
|
10
|
+
import FormDomainNew from './forms/FormDomainNew';
|
|
11
|
+
import { BiUserCircle } from 'react-icons/bi';
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
export function CustomerInfo() {
|
|
15
|
+
var _useMerchiCheckboutCo = useMerchiCheckboutContext(),
|
|
16
|
+
job = _useMerchiCheckboutCo.job;
|
|
17
|
+
var client = job.client;
|
|
18
|
+
var _client$emailAddresse = client.emailAddresses,
|
|
19
|
+
emailAddresses = _client$emailAddresse === void 0 ? [] : _client$emailAddresse,
|
|
20
|
+
_client$name = client.name,
|
|
21
|
+
name = _client$name === void 0 ? 'Returning customer' : _client$name,
|
|
22
|
+
_client$phoneNumbers = client.phoneNumbers,
|
|
23
|
+
phoneNumbers = _client$phoneNumbers === void 0 ? [] : _client$phoneNumbers;
|
|
24
|
+
var emailAddress = emailAddresses[0] && emailAddresses[0].emailAddress || 'Email not shown';
|
|
25
|
+
var phoneNumber = phoneNumbers[0] && phoneNumbers[0].internationalFormatNumber || 'Phone number not shown';
|
|
26
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
27
|
+
className: "modal_merchi-checkout-customer-details text-left",
|
|
28
|
+
children: [/*#__PURE__*/_jsx("strong", {
|
|
29
|
+
children: name
|
|
30
|
+
}), /*#__PURE__*/_jsx("p", {
|
|
31
|
+
children: emailAddress
|
|
32
|
+
}), /*#__PURE__*/_jsx("p", {
|
|
33
|
+
children: phoneNumber
|
|
34
|
+
})]
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
export function SmallCustomerInfo() {
|
|
38
|
+
var _useMerchiCheckboutCo2 = useMerchiCheckboutContext(),
|
|
39
|
+
classNameMerchiCheckoutButtonPrimary = _useMerchiCheckboutCo2.classNameMerchiCheckoutButtonPrimary,
|
|
40
|
+
clearCustomer = _useMerchiCheckboutCo2.clearCustomer;
|
|
41
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
42
|
+
className: "w-100 modal_merchi-checkout-customer-card",
|
|
43
|
+
children: [/*#__PURE__*/_jsx(CustomerInfo, {}), /*#__PURE__*/_jsx("div", {
|
|
44
|
+
className: "mt-2",
|
|
45
|
+
children: /*#__PURE__*/_jsxs("button", {
|
|
46
|
+
className: classNameMerchiCheckoutButtonPrimary,
|
|
47
|
+
onClick: clearCustomer,
|
|
48
|
+
children: [/*#__PURE__*/_jsx(BiUserCircle, {
|
|
49
|
+
fontSize: "1rem",
|
|
50
|
+
style: {
|
|
51
|
+
marginRight: '0.25rem'
|
|
52
|
+
}
|
|
53
|
+
}), ' ', "Change"]
|
|
54
|
+
})
|
|
55
|
+
})]
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function CustomerPanel() {
|
|
59
|
+
var _useMerchiCheckboutCo3 = useMerchiCheckboutContext(),
|
|
60
|
+
job = _useMerchiCheckboutCo3.job;
|
|
61
|
+
var client = job.client;
|
|
62
|
+
var isActive = isUserRegistered(client);
|
|
63
|
+
return /*#__PURE__*/_jsx("div", {
|
|
64
|
+
className: "".concat(isActive ? '' : 'hide'),
|
|
65
|
+
children: client && /*#__PURE__*/_jsx(SmallCustomerInfo, {})
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
function TabPaneCustomer() {
|
|
69
|
+
var _useMerchiCheckboutCo4 = useMerchiCheckboutContext(),
|
|
70
|
+
job = _useMerchiCheckboutCo4.job,
|
|
71
|
+
includeDomainSignup = _useMerchiCheckboutCo4.includeDomainSignup;
|
|
72
|
+
var client = job.client;
|
|
73
|
+
var isActive = isUserRegistered(client);
|
|
74
|
+
return /*#__PURE__*/_jsxs(TabPane, {
|
|
75
|
+
tabId: tabIdCustomerInfo,
|
|
76
|
+
children: [/*#__PURE__*/_jsx(TitleStep, {
|
|
77
|
+
title: "Customer - Contact info"
|
|
78
|
+
}), isActive ? /*#__PURE__*/_jsx(CustomerPanel, {}) : /*#__PURE__*/_jsx("div", {
|
|
79
|
+
className: "".concat(isActive ? 'hide' : '', " d-flex justify-content-center flex-column"),
|
|
80
|
+
children: /*#__PURE__*/_jsxs("div", {
|
|
81
|
+
className: "w-100 customer-detail-form",
|
|
82
|
+
children: [/*#__PURE__*/_jsxs("div", {
|
|
83
|
+
className: "mt-1 mb-5",
|
|
84
|
+
children: [/*#__PURE__*/_jsx("h5", {
|
|
85
|
+
className: "mb-3",
|
|
86
|
+
children: "Returning customer"
|
|
87
|
+
}), /*#__PURE__*/_jsx(FormCustomerReturning, {})]
|
|
88
|
+
}), /*#__PURE__*/_jsxs("div", {
|
|
89
|
+
children: [/*#__PURE__*/_jsx("h5", {
|
|
90
|
+
className: "mb-3",
|
|
91
|
+
children: "New customer"
|
|
92
|
+
}), /*#__PURE__*/_jsx(FormCustomerNew, {})]
|
|
93
|
+
})]
|
|
94
|
+
})
|
|
95
|
+
}), client && client.id && !client.hasStore && includeDomainSignup && /*#__PURE__*/_jsx(FormDomainNew, {}), /*#__PURE__*/_jsx(FooterButtons, {
|
|
96
|
+
forceDisabled: !isRegisteredAndHasStore(client),
|
|
97
|
+
isActive: isActive
|
|
98
|
+
})]
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
export default TabPaneCustomer;
|
|
102
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJUYWJQYW5lIiwiVGl0bGVTdGVwIiwiRm9vdGVyQnV0dG9ucyIsInRhYklkQ3VzdG9tZXJJbmZvIiwiaXNVc2VyUmVnaXN0ZXJlZCIsImlzUmVnaXN0ZXJlZEFuZEhhc1N0b3JlIiwidXNlTWVyY2hpQ2hlY2tib3V0Q29udGV4dCIsIkZvcm1DdXN0b21lck5ldyIsIkZvcm1DdXN0b21lclJldHVybmluZyIsIkZvcm1Eb21haW5OZXciLCJCaVVzZXJDaXJjbGUiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiQ3VzdG9tZXJJbmZvIiwiX3VzZU1lcmNoaUNoZWNrYm91dENvIiwiam9iIiwiY2xpZW50IiwiX2NsaWVudCRlbWFpbEFkZHJlc3NlIiwiZW1haWxBZGRyZXNzZXMiLCJfY2xpZW50JG5hbWUiLCJuYW1lIiwiX2NsaWVudCRwaG9uZU51bWJlcnMiLCJwaG9uZU51bWJlcnMiLCJlbWFpbEFkZHJlc3MiLCJwaG9uZU51bWJlciIsImludGVybmF0aW9uYWxGb3JtYXROdW1iZXIiLCJjbGFzc05hbWUiLCJjaGlsZHJlbiIsIlNtYWxsQ3VzdG9tZXJJbmZvIiwiX3VzZU1lcmNoaUNoZWNrYm91dENvMiIsImNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uUHJpbWFyeSIsImNsZWFyQ3VzdG9tZXIiLCJvbkNsaWNrIiwiZm9udFNpemUiLCJzdHlsZSIsIm1hcmdpblJpZ2h0IiwiQ3VzdG9tZXJQYW5lbCIsIl91c2VNZXJjaGlDaGVja2JvdXRDbzMiLCJpc0FjdGl2ZSIsImNvbmNhdCIsIlRhYlBhbmVDdXN0b21lciIsIl91c2VNZXJjaGlDaGVja2JvdXRDbzQiLCJpbmNsdWRlRG9tYWluU2lnbnVwIiwidGFiSWQiLCJ0aXRsZSIsImlkIiwiaGFzU3RvcmUiLCJmb3JjZURpc2FibGVkIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbXBvbmVudHMvVGFiUGFuZUN1c3RvbWVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCc7XG5pbXBvcnQgVGFiUGFuZSBmcm9tICcuL1RhYlBhbmUnO1xuaW1wb3J0IFRpdGxlU3RlcCBmcm9tICcuL1RpdGxlU3RlcCc7XG5pbXBvcnQgRm9vdGVyQnV0dG9ucyBmcm9tICcuL0Zvb3RlckJ1dHRvbnMnO1xuaW1wb3J0IHsgdGFiSWRDdXN0b21lckluZm8gfSBmcm9tICcuLi90YWJzX3V0aWxzJztcbmltcG9ydCB7IGlzVXNlclJlZ2lzdGVyZWQsIGlzUmVnaXN0ZXJlZEFuZEhhc1N0b3JlIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgdXNlTWVyY2hpQ2hlY2tib3V0Q29udGV4dCB9IGZyb20gJy4vTWVyY2hpQ2hlY2tvdXRQcm92aWRlcic7XG5pbXBvcnQgeyBGb3JtQ3VzdG9tZXJOZXcsIEZvcm1DdXN0b21lclJldHVybmluZyB9IGZyb20gJy4vZm9ybXMnO1xuaW1wb3J0IEZvcm1Eb21haW5OZXcgZnJvbSAnLi9mb3Jtcy9Gb3JtRG9tYWluTmV3JztcbmltcG9ydCB7IEJpVXNlckNpcmNsZSB9IGZyb20gJ3JlYWN0LWljb25zL2JpJztcblxuZXhwb3J0IGZ1bmN0aW9uIEN1c3RvbWVySW5mbygpIHtcbiAgY29uc3QgeyBqb2IgfSA9IHVzZU1lcmNoaUNoZWNrYm91dENvbnRleHQoKTtcbiAgY29uc3QgeyBjbGllbnQgfSA9IGpvYjtcblxuICBjb25zdCB7XG4gICAgZW1haWxBZGRyZXNzZXMgPSBbXSxcbiAgICBuYW1lID0gJ1JldHVybmluZyBjdXN0b21lcicsXG4gICAgcGhvbmVOdW1iZXJzID0gW10sXG4gIH0gPSBjbGllbnQ7XG5cbiAgY29uc3QgZW1haWxBZGRyZXNzID1cbiAgICAoZW1haWxBZGRyZXNzZXNbMF0gJiYgZW1haWxBZGRyZXNzZXNbMF0uZW1haWxBZGRyZXNzKSB8fCAnRW1haWwgbm90IHNob3duJztcblxuICBjb25zdCBwaG9uZU51bWJlciA9XG4gICAgKHBob25lTnVtYmVyc1swXSAmJiBwaG9uZU51bWJlcnNbMF0uaW50ZXJuYXRpb25hbEZvcm1hdE51bWJlcikgfHxcbiAgICAnUGhvbmUgbnVtYmVyIG5vdCBzaG93bic7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT0nbW9kYWxfbWVyY2hpLWNoZWNrb3V0LWN1c3RvbWVyLWRldGFpbHMgdGV4dC1sZWZ0Jz5cbiAgICAgIDxzdHJvbmc+e25hbWV9PC9zdHJvbmc+XG4gICAgICA8cD57ZW1haWxBZGRyZXNzfTwvcD5cbiAgICAgIDxwPntwaG9uZU51bWJlcn08L3A+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBTbWFsbEN1c3RvbWVySW5mbygpIHtcbiAgY29uc3QgeyBjbGFzc05hbWVNZXJjaGlDaGVja291dEJ1dHRvblByaW1hcnksIGNsZWFyQ3VzdG9tZXIgfSA9XG4gICAgdXNlTWVyY2hpQ2hlY2tib3V0Q29udGV4dCgpO1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPSd3LTEwMCBtb2RhbF9tZXJjaGktY2hlY2tvdXQtY3VzdG9tZXItY2FyZCc+XG4gICAgICA8Q3VzdG9tZXJJbmZvIC8+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT0nbXQtMic+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZU1lcmNoaUNoZWNrb3V0QnV0dG9uUHJpbWFyeX1cbiAgICAgICAgICBvbkNsaWNrPXtjbGVhckN1c3RvbWVyfVxuICAgICAgICA+XG4gICAgICAgICAgPEJpVXNlckNpcmNsZSBmb250U2l6ZT0nMXJlbScgc3R5bGU9e3sgbWFyZ2luUmlnaHQ6ICcwLjI1cmVtJyB9fSAvPnsnICd9XG4gICAgICAgICAgQ2hhbmdlXG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIEN1c3RvbWVyUGFuZWwoKSB7XG4gIGNvbnN0IHsgam9iIH0gPSB1c2VNZXJjaGlDaGVja2JvdXRDb250ZXh0KCk7XG4gIGNvbnN0IHsgY2xpZW50IH0gPSBqb2I7XG4gIGNvbnN0IGlzQWN0aXZlID0gaXNVc2VyUmVnaXN0ZXJlZChjbGllbnQpO1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXtgJHtpc0FjdGl2ZSA/ICcnIDogJ2hpZGUnfWB9PlxuICAgICAge2NsaWVudCAmJiA8U21hbGxDdXN0b21lckluZm8gLz59XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFRhYlBhbmVDdXN0b21lcigpIHtcbiAgY29uc3QgeyBqb2IsIGluY2x1ZGVEb21haW5TaWdudXAgfSA9IHVzZU1lcmNoaUNoZWNrYm91dENvbnRleHQoKTtcbiAgY29uc3QgeyBjbGllbnQgfSA9IGpvYjtcbiAgY29uc3QgaXNBY3RpdmUgPSBpc1VzZXJSZWdpc3RlcmVkKGNsaWVudCk7XG4gIHJldHVybiAoXG4gICAgPFRhYlBhbmUgdGFiSWQ9e3RhYklkQ3VzdG9tZXJJbmZvfT5cbiAgICAgIDxUaXRsZVN0ZXAgdGl0bGU9J0N1c3RvbWVyIC0gQ29udGFjdCBpbmZvJyAvPlxuICAgICAge2lzQWN0aXZlID8gKFxuICAgICAgICA8Q3VzdG9tZXJQYW5lbCAvPlxuICAgICAgKSA6IChcbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzTmFtZT17YCR7XG4gICAgICAgICAgICBpc0FjdGl2ZSA/ICdoaWRlJyA6ICcnXG4gICAgICAgICAgfSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBmbGV4LWNvbHVtbmB9XG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT0ndy0xMDAgY3VzdG9tZXItZGV0YWlsLWZvcm0nPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J210LTEgbWItNSc+XG4gICAgICAgICAgICAgIDxoNSBjbGFzc05hbWU9J21iLTMnPlJldHVybmluZyBjdXN0b21lcjwvaDU+XG4gICAgICAgICAgICAgIDxGb3JtQ3VzdG9tZXJSZXR1cm5pbmcgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgPGg1IGNsYXNzTmFtZT0nbWItMyc+TmV3IGN1c3RvbWVyPC9oNT5cbiAgICAgICAgICAgICAgPEZvcm1DdXN0b21lck5ldyAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKX1cbiAgICAgIHtjbGllbnQgJiYgY2xpZW50LmlkICYmICFjbGllbnQuaGFzU3RvcmUgJiYgaW5jbHVkZURvbWFpblNpZ251cCAmJiAoXG4gICAgICAgIDxGb3JtRG9tYWluTmV3IC8+XG4gICAgICApfVxuICAgICAgPEZvb3RlckJ1dHRvbnNcbiAgICAgICAgZm9yY2VEaXNhYmxlZD17IWlzUmVnaXN0ZXJlZEFuZEhhc1N0b3JlKGNsaWVudCl9XG4gICAgICAgIGlzQWN0aXZlPXtpc0FjdGl2ZX1cbiAgICAgIC8+XG4gICAgPC9UYWJQYW5lPlxuICApO1xufVxuXG5leHBvcnQgZGVmYXVsdCBUYWJQYW5lQ3VzdG9tZXI7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7O0FBQ1osT0FBT0EsT0FBTyxNQUFNLFdBQVc7QUFDL0IsT0FBT0MsU0FBUyxNQUFNLGFBQWE7QUFDbkMsT0FBT0MsYUFBYSxNQUFNLGlCQUFpQjtBQUMzQyxTQUFTQyxpQkFBaUIsUUFBUSxlQUFlO0FBQ2pELFNBQVNDLGdCQUFnQixFQUFFQyx1QkFBdUIsUUFBUSxVQUFVO0FBQ3BFLFNBQVNDLHlCQUF5QixRQUFRLDBCQUEwQjtBQUNwRSxTQUFTQyxlQUFlLEVBQUVDLHFCQUFxQixRQUFRLFNBQVM7QUFDaEUsT0FBT0MsYUFBYSxNQUFNLHVCQUF1QjtBQUNqRCxTQUFTQyxZQUFZLFFBQVEsZ0JBQWdCO0FBQUMsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBQUEsU0FBQUMsSUFBQSxJQUFBQyxLQUFBO0FBRTlDLE9BQU8sU0FBU0MsWUFBWUEsQ0FBQSxFQUFHO0VBQzdCLElBQUFDLHFCQUFBLEdBQWdCVix5QkFBeUIsQ0FBQyxDQUFDO0lBQW5DVyxHQUFHLEdBQUFELHFCQUFBLENBQUhDLEdBQUc7RUFDWCxJ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
|