@merchi/checkout 1.3.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/README.md +196 -0
  2. package/lib/actions/confirm.d.ts +2 -0
  3. package/lib/actions/confirm.js +85 -0
  4. package/lib/actions/customer.d.ts +2 -0
  5. package/lib/actions/customer.js +53 -0
  6. package/lib/actions/domain.d.ts +2 -0
  7. package/lib/actions/domain.js +65 -0
  8. package/lib/actions/files.d.ts +1 -0
  9. package/lib/actions/files.js +35 -0
  10. package/lib/actions/helpers.d.ts +19 -0
  11. package/lib/actions/helpers.js +125 -0
  12. package/lib/actions/invoice.d.ts +3 -0
  13. package/lib/actions/invoice.js +113 -0
  14. package/lib/area.d.ts +77 -0
  15. package/lib/area.js +298 -0
  16. package/lib/assets/merchi-monster-loader.gif +0 -0
  17. package/lib/checkoutSession.d.ts +32 -0
  18. package/lib/checkoutSession.js +151 -0
  19. package/lib/components/Alerts.d.ts +3 -0
  20. package/lib/components/Alerts.js +88 -0
  21. package/lib/components/CancelOrderConfirmModal.d.ts +10 -0
  22. package/lib/components/CancelOrderConfirmModal.js +50 -0
  23. package/lib/components/CheckoutSummaryFields.d.ts +11 -0
  24. package/lib/components/CheckoutSummaryFields.js +38 -0
  25. package/lib/components/Collapse.d.ts +3 -0
  26. package/lib/components/Collapse.js +34 -0
  27. package/lib/components/CustomerCheckoutMethodTabs.d.ts +6 -0
  28. package/lib/components/CustomerCheckoutMethodTabs.js +90 -0
  29. package/lib/components/DiscountInputGroup.d.ts +2 -0
  30. package/lib/components/DiscountInputGroup.js +256 -0
  31. package/lib/components/DraftImageUploaded.d.ts +8 -0
  32. package/lib/components/DraftImageUploaded.js +53 -0
  33. package/lib/components/FooterButtons.d.ts +11 -0
  34. package/lib/components/FooterButtons.js +28 -0
  35. package/lib/components/InvoiceInfo.d.ts +6 -0
  36. package/lib/components/InvoiceInfo.js +37 -0
  37. package/lib/components/JobInfoContent.d.ts +2 -0
  38. package/lib/components/JobInfoContent.js +728 -0
  39. package/lib/components/MerchiCheckout.d.ts +46 -0
  40. package/lib/components/MerchiCheckout.js +49 -0
  41. package/lib/components/MerchiCheckoutProvider.d.ts +167 -0
  42. package/lib/components/MerchiCheckoutProvider.js +569 -0
  43. package/lib/components/MerchiCheckoutTabs.d.ts +2 -0
  44. package/lib/components/MerchiCheckoutTabs.js +50 -0
  45. package/lib/components/TabPane.d.ts +7 -0
  46. package/lib/components/TabPane.js +21 -0
  47. package/lib/components/TabPaneAddress.d.ts +3 -0
  48. package/lib/components/TabPaneAddress.js +28 -0
  49. package/lib/components/TabPaneConfirm.d.ts +11 -0
  50. package/lib/components/TabPaneConfirm.js +288 -0
  51. package/lib/components/TabPaneContainer.d.ts +6 -0
  52. package/lib/components/TabPaneContainer.js +13 -0
  53. package/lib/components/TabPaneCustomer.d.ts +5 -0
  54. package/lib/components/TabPaneCustomer.js +93 -0
  55. package/lib/components/TabPaneNewDomain.d.ts +3 -0
  56. package/lib/components/TabPaneNewDomain.js +39 -0
  57. package/lib/components/TabPanePayment.d.ts +3 -0
  58. package/lib/components/TabPanePayment.js +99 -0
  59. package/lib/components/TabPaneSubmitted.d.ts +3 -0
  60. package/lib/components/TabPaneSubmitted.js +90 -0
  61. package/lib/components/TitleStep.d.ts +6 -0
  62. package/lib/components/TitleStep.js +24 -0
  63. package/lib/components/buttons/ButtonInvoiceDownload.d.ts +3 -0
  64. package/lib/components/buttons/ButtonInvoiceDownload.js +91 -0
  65. package/lib/components/buttons/ButtonNext.d.ts +10 -0
  66. package/lib/components/buttons/ButtonNext.js +48 -0
  67. package/lib/components/buttons/ButtonPrevious.d.ts +7 -0
  68. package/lib/components/buttons/ButtonPrevious.js +36 -0
  69. package/lib/components/buttons/index.d.ts +3 -0
  70. package/lib/components/buttons/index.js +4 -0
  71. package/lib/components/currency.d.ts +5 -0
  72. package/lib/components/currency.js +223 -0
  73. package/lib/components/forms/CheckboxBillingAddressSameAsShippingAddress.d.ts +7 -0
  74. package/lib/components/forms/CheckboxBillingAddressSameAsShippingAddress.js +22 -0
  75. package/lib/components/forms/FormAddresses.d.ts +6 -0
  76. package/lib/components/forms/FormAddresses.js +251 -0
  77. package/lib/components/forms/FormCustomerNew.d.ts +4 -0
  78. package/lib/components/forms/FormCustomerNew.js +197 -0
  79. package/lib/components/forms/FormCustomerReturning.d.ts +3 -0
  80. package/lib/components/forms/FormCustomerReturning.js +147 -0
  81. package/lib/components/forms/FormDomainNew.d.ts +2 -0
  82. package/lib/components/forms/FormDomainNew.js +152 -0
  83. package/lib/components/forms/FormWhatsappCustomer.d.ts +4 -0
  84. package/lib/components/forms/FormWhatsappCustomer.js +217 -0
  85. package/lib/components/forms/InputAcceptUserTermsAndConditions.d.ts +7 -0
  86. package/lib/components/forms/InputAcceptUserTermsAndConditions.js +38 -0
  87. package/lib/components/forms/InputCheckStoreName.d.ts +7 -0
  88. package/lib/components/forms/InputCheckStoreName.js +168 -0
  89. package/lib/components/forms/InputError.d.ts +8 -0
  90. package/lib/components/forms/InputError.js +19 -0
  91. package/lib/components/forms/InputFileUpload.d.ts +12 -0
  92. package/lib/components/forms/InputFileUpload.js +191 -0
  93. package/lib/components/forms/InputSelect.d.ts +14 -0
  94. package/lib/components/forms/InputSelect.js +52 -0
  95. package/lib/components/forms/InputText.d.ts +12 -0
  96. package/lib/components/forms/InputText.js +59 -0
  97. package/lib/components/forms/InputsAddress.d.ts +12 -0
  98. package/lib/components/forms/InputsAddress.js +533 -0
  99. package/lib/components/forms/index.d.ts +5 -0
  100. package/lib/components/forms/index.js +6 -0
  101. package/lib/components/lists/ListShipmentQuoteOptions.d.ts +9 -0
  102. package/lib/components/lists/ListShipmentQuoteOptions.js +145 -0
  103. package/lib/components/lists/index.d.ts +2 -0
  104. package/lib/components/lists/index.js +3 -0
  105. package/lib/fonts/nunito-bold-webfont.woff +0 -0
  106. package/lib/fonts/nunito-bold-webfont.woff2 +0 -0
  107. package/lib/fonts/nunito-regular-webfont.woff +0 -0
  108. package/lib/fonts/nunito-regular-webfont.woff2 +0 -0
  109. package/lib/index.d.ts +3 -0
  110. package/lib/index.js +4 -0
  111. package/lib/merchi_source.d.ts +2 -0
  112. package/lib/merchi_source.js +31 -0
  113. package/lib/styles/globals.css +2546 -0
  114. package/lib/styles/globals.css.map +1 -0
  115. package/lib/styles/globals.scss +2763 -0
  116. package/lib/tabs_utils.d.ts +31 -0
  117. package/lib/tabs_utils.js +104 -0
  118. package/lib/types.d.ts +43 -0
  119. package/lib/types.js +40 -0
  120. package/lib/utils.d.ts +68 -0
  121. package/lib/utils.js +560 -0
  122. package/package.json +96 -0
@@ -0,0 +1,5 @@
1
+ import FormAddresses from './FormAddresses';
2
+ import FormCustomerNew from './FormCustomerNew';
3
+ import FormCustomerReturning from './FormCustomerReturning';
4
+ import FormWhatsappCustomer from './FormWhatsappCustomer';
5
+ export { FormAddresses, FormCustomerNew, FormCustomerReturning, FormWhatsappCustomer, };
@@ -0,0 +1,6 @@
1
+ import FormAddresses from './FormAddresses';
2
+ import FormCustomerNew from './FormCustomerNew';
3
+ import FormCustomerReturning from './FormCustomerReturning';
4
+ import FormWhatsappCustomer from './FormWhatsappCustomer';
5
+ export { FormAddresses, FormCustomerNew, FormCustomerReturning, FormWhatsappCustomer };
6
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGb3JtQWRkcmVzc2VzIiwiRm9ybUN1c3RvbWVyTmV3IiwiRm9ybUN1c3RvbWVyUmV0dXJuaW5nIiwiRm9ybVdoYXRzYXBwQ3VzdG9tZXIiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9mb3Jtcy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRm9ybUFkZHJlc3NlcyBmcm9tICcuL0Zvcm1BZGRyZXNzZXMnO1xuaW1wb3J0IEZvcm1DdXN0b21lck5ldyBmcm9tICcuL0Zvcm1DdXN0b21lck5ldyc7XG5pbXBvcnQgRm9ybUN1c3RvbWVyUmV0dXJuaW5nIGZyb20gJy4vRm9ybUN1c3RvbWVyUmV0dXJuaW5nJztcbmltcG9ydCBGb3JtV2hhdHNhcHBDdXN0b21lciBmcm9tICcuL0Zvcm1XaGF0c2FwcEN1c3RvbWVyJztcblxuZXhwb3J0IHtcbiAgRm9ybUFkZHJlc3NlcyxcbiAgRm9ybUN1c3RvbWVyTmV3LFxuICBGb3JtQ3VzdG9tZXJSZXR1cm5pbmcsXG4gIEZvcm1XaGF0c2FwcEN1c3RvbWVyLFxufTtcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsYUFBYSxNQUFNLGlCQUFpQjtBQUMzQyxPQUFPQyxlQUFlLE1BQU0sbUJBQW1CO0FBQy9DLE9BQU9DLHFCQUFxQixNQUFNLHlCQUF5QjtBQUMzRCxPQUFPQyxvQkFBb0IsTUFBTSx3QkFBd0I7QUFFekQsU0FDRUgsYUFBYSxFQUNiQyxlQUFlLEVBQ2ZDLHFCQUFxQixFQUNyQkMsb0JBQW9CIiwiaWdub3JlTGlzdCI6W119
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface Props {
3
+ doSelectShipmentOption: (option: any) => void;
4
+ loading: boolean;
5
+ selectedOption?: any;
6
+ shipmentOptions: Array<any>;
7
+ }
8
+ declare function ListShipmentQuoteOptions({ doSelectShipmentOption, loading, selectedOption, shipmentOptions, }: Props): React.JSX.Element;
9
+ export default ListShipmentQuoteOptions;
@@ -0,0 +1,145 @@
1
+ 'use client';
2
+
3
+ import React from 'react';
4
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
+ import { faCheck } from '@fortawesome/free-solid-svg-icons';
6
+ import { CgSpinner } from 'react-icons/cg';
7
+ import { useMerchiCheckboutContext } from '../MerchiCheckoutProvider';
8
+ import { addressInOneLine } from '../../utils';
9
+ import { currencyTaxAndCost } from '../currency';
10
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
11
+ function ShipmentPrice(_ref) {
12
+ var shipment = _ref.shipment;
13
+ var shipmentMethod = shipment.shipmentMethod,
14
+ taxType = shipment.taxType;
15
+ var currency = shipmentMethod.currency;
16
+ return /*#__PURE__*/_jsx("div", {
17
+ children: !!shipment.cost && /*#__PURE__*/_jsx("small", {
18
+ className: "font-weight-bold",
19
+ children: currencyTaxAndCost(currency, taxType, shipment.cost)
20
+ })
21
+ });
22
+ }
23
+ function PickupInfo(_ref2) {
24
+ var originAddress = _ref2.originAddress;
25
+ return /*#__PURE__*/_jsxs("small", {
26
+ children: ["Pick up from: ", addressInOneLine(originAddress)]
27
+ });
28
+ }
29
+ function ShipmentOptionInfo(_ref3) {
30
+ var shipment = _ref3.shipment;
31
+ var name = shipment.name,
32
+ shipmentMethod = shipment.shipmentMethod,
33
+ transportCompanyName = shipment.transportCompanyName;
34
+ var originAddress = shipmentMethod.originAddress,
35
+ pickUp = shipmentMethod.pickUp;
36
+ return /*#__PURE__*/_jsxs("div", {
37
+ className: "shipment-option-info",
38
+ children: [!name ? /*#__PURE__*/_jsxs(_Fragment, {
39
+ children: [!!transportCompanyName && /*#__PURE__*/_jsx("div", {
40
+ className: "shipment-option-name",
41
+ children: shipmentMethod.name
42
+ }), pickUp ? /*#__PURE__*/_jsx(PickupInfo, {
43
+ originAddress: originAddress
44
+ }) : /*#__PURE__*/_jsx("small", {
45
+ children: transportCompanyName
46
+ })]
47
+ }) : /*#__PURE__*/_jsxs(_Fragment, {
48
+ children: [/*#__PURE__*/_jsx("div", {
49
+ className: "shipment-option-name",
50
+ children: name
51
+ }), pickUp && /*#__PURE__*/_jsx(PickupInfo, {
52
+ originAddress: originAddress
53
+ })]
54
+ }), /*#__PURE__*/_jsx(ShipmentPrice, {
55
+ shipment: shipment
56
+ })]
57
+ });
58
+ }
59
+ function ListItemShipmentQuoteOption(_ref4) {
60
+ var doSelect = _ref4.doSelect,
61
+ isSelected = _ref4.isSelected,
62
+ shipment = _ref4.shipment;
63
+ var _useMerchiCheckboutCo = useMerchiCheckboutContext(),
64
+ classNameMerchiCheckoutListGroupItem = _useMerchiCheckboutCo.classNameMerchiCheckoutListGroupItem;
65
+ return /*#__PURE__*/_jsx("div", {
66
+ className: "".concat(classNameMerchiCheckoutListGroupItem, " ").concat(isSelected ? 'active' : ''),
67
+ style: {
68
+ cursor: 'pointer'
69
+ },
70
+ onClick: doSelect,
71
+ children: /*#__PURE__*/_jsxs("div", {
72
+ style: {
73
+ display: 'flex',
74
+ justifyContent: 'space-between',
75
+ alignItems: 'center'
76
+ },
77
+ children: [/*#__PURE__*/_jsx(ShipmentOptionInfo, {
78
+ shipment: shipment
79
+ }), /*#__PURE__*/_jsx("div", {
80
+ children: isSelected && /*#__PURE__*/_jsx(FontAwesomeIcon, {
81
+ icon: faCheck
82
+ })
83
+ })]
84
+ })
85
+ });
86
+ }
87
+ function ListItemLoading() {
88
+ var _useMerchiCheckboutCo2 = useMerchiCheckboutContext(),
89
+ classNameMerchiCheckoutListGroupItemLoader = _useMerchiCheckboutCo2.classNameMerchiCheckoutListGroupItemLoader;
90
+ return /*#__PURE__*/_jsx("div", {
91
+ className: classNameMerchiCheckoutListGroupItemLoader + ' d-flex align-items-center',
92
+ children: /*#__PURE__*/_jsx(CgSpinner, {
93
+ fontSize: "1.5rem",
94
+ className: "animate_spin"
95
+ })
96
+ });
97
+ }
98
+ function ListItemNoOptions() {
99
+ var _useMerchiCheckboutCo3 = useMerchiCheckboutContext(),
100
+ classNameMerchiCheckoutListGroupItem = _useMerchiCheckboutCo3.classNameMerchiCheckoutListGroupItem;
101
+ return /*#__PURE__*/_jsxs("div", {
102
+ className: classNameMerchiCheckoutListGroupItem,
103
+ children: [/*#__PURE__*/_jsx("div", {
104
+ className: "merchi_monster_shipment_option_not_found"
105
+ }), /*#__PURE__*/_jsx("small", {
106
+ className: "text-muted shipment-option-checkout-form",
107
+ children: "Enter your address to select a shipment option"
108
+ })]
109
+ });
110
+ }
111
+ function ListShipmentQuoteOptions(_ref5) {
112
+ var _shipment;
113
+ var doSelectShipmentOption = _ref5.doSelectShipmentOption,
114
+ loading = _ref5.loading,
115
+ selectedOption = _ref5.selectedOption,
116
+ shipmentOptions = _ref5.shipmentOptions;
117
+ var _useMerchiCheckboutCo4 = useMerchiCheckboutContext(),
118
+ classNameMerchiCheckoutListGroup = _useMerchiCheckboutCo4.classNameMerchiCheckoutListGroup;
119
+ var getShipKey = function getShipKey(ship) {
120
+ var _ref6, _ship$id, _m$name, _ship$transportCompan;
121
+ var m = ship === null || ship === void 0 ? void 0 : ship.shipmentMethod;
122
+ var id = (_ref6 = (_ship$id = ship === null || ship === void 0 ? void 0 : ship.id) !== null && _ship$id !== void 0 ? _ship$id : ship === null || ship === void 0 ? void 0 : ship.quoteId) !== null && _ref6 !== void 0 ? _ref6 : m === null || m === void 0 ? void 0 : m.id;
123
+ if (id != null) return String(id);
124
+ var signature = "".concat((_m$name = m === null || m === void 0 ? void 0 : m.name) !== null && _m$name !== void 0 ? _m$name : '', "|").concat((_ship$transportCompan = ship === null || ship === void 0 ? void 0 : ship.transportCompanyName) !== null && _ship$transportCompan !== void 0 ? _ship$transportCompan : '', "|").concat(m !== null && m !== void 0 && m.pickUp ? 'P' : 'D');
125
+ return signature;
126
+ };
127
+ var selectedKey = selectedOption ? getShipKey((_shipment = selectedOption.shipment) !== null && _shipment !== void 0 ? _shipment : selectedOption) : null;
128
+ return /*#__PURE__*/_jsx("div", {
129
+ className: classNameMerchiCheckoutListGroup,
130
+ children: loading ? /*#__PURE__*/_jsx(ListItemLoading, {}) : shipmentOptions.length ? shipmentOptions.map(function (s, i) {
131
+ var ship = s.shipment;
132
+ var k = getShipKey(ship);
133
+ var isSelected = selectedKey !== null && k === selectedKey;
134
+ return /*#__PURE__*/_jsx(ListItemShipmentQuoteOption, {
135
+ doSelect: function doSelect() {
136
+ return doSelectShipmentOption(ship);
137
+ },
138
+ isSelected: isSelected,
139
+ shipment: ship
140
+ }, k);
141
+ }) : /*#__PURE__*/_jsx(ListItemNoOptions, {})
142
+ });
143
+ }
144
+ export default ListShipmentQuoteOptions;
145
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkZvbnRBd2Vzb21lSWNvbiIsImZhQ2hlY2siLCJDZ1NwaW5uZXIiLCJ1c2VNZXJjaGlDaGVja2JvdXRDb250ZXh0IiwiYWRkcmVzc0luT25lTGluZSIsImN1cnJlbmN5VGF4QW5kQ29zdCIsImpzeCIsIl9qc3giLCJqc3hzIiwiX2pzeHMiLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsIlNoaXBtZW50UHJpY2UiLCJfcmVmIiwic2hpcG1lbnQiLCJzaGlwbWVudE1ldGhvZCIsInRheFR5cGUiLCJjdXJyZW5jeSIsImNoaWxkcmVuIiwiY29zdCIsImNsYXNzTmFtZSIsIlBpY2t1cEluZm8iLCJfcmVmMiIsIm9yaWdpbkFkZHJlc3MiLCJTaGlwbWVudE9wdGlvbkluZm8iLCJfcmVmMyIsIm5hbWUiLCJ0cmFuc3BvcnRDb21wYW55TmFtZSIsInBpY2tVcCIsIkxpc3RJdGVtU2hpcG1lbnRRdW90ZU9wdGlvbiIsIl9yZWY0IiwiZG9TZWxlY3QiLCJpc1NlbGVjdGVkIiwiX3VzZU1lcmNoaUNoZWNrYm91dENvIiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRMaXN0R3JvdXBJdGVtIiwiY29uY2F0Iiwic3R5bGUiLCJjdXJzb3IiLCJvbkNsaWNrIiwiZGlzcGxheSIsImp1c3RpZnlDb250ZW50IiwiYWxpZ25JdGVtcyIsImljb24iLCJMaXN0SXRlbUxvYWRpbmciLCJfdXNlTWVyY2hpQ2hlY2tib3V0Q28yIiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRMaXN0R3JvdXBJdGVtTG9hZGVyIiwiZm9udFNpemUiLCJMaXN0SXRlbU5vT3B0aW9ucyIsIl91c2VNZXJjaGlDaGVja2JvdXRDbzMiLCJMaXN0U2hpcG1lbnRRdW90ZU9wdGlvbnMiLCJfcmVmNSIsIl9zaGlwbWVudCIsImRvU2VsZWN0U2hpcG1lbnRPcHRpb24iLCJsb2FkaW5nIiwic2VsZWN0ZWRPcHRpb24iLCJzaGlwbWVudE9wdGlvbnMiLCJfdXNlTWVyY2hpQ2hlY2tib3V0Q280IiwiY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRMaXN0R3JvdXAiLCJnZXRTaGlwS2V5Iiwic2hpcCIsIl9yZWY2IiwiX3NoaXAkaWQiLCJfbSRuYW1lIiwiX3NoaXAkdHJhbnNwb3J0Q29tcGFuIiwibSIsImlkIiwicXVvdGVJZCIsIlN0cmluZyIsInNpZ25hdHVyZSIsInNlbGVjdGVkS2V5IiwibGVuZ3RoIiwibWFwIiwicyIsImkiLCJrIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbGlzdHMvTGlzdFNoaXBtZW50UXVvdGVPcHRpb25zLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCB7IGZhQ2hlY2sgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgQ2dTcGlubmVyIH0gZnJvbSAncmVhY3QtaWNvbnMvY2cnO1xuaW1wb3J0IHsgdXNlTWVyY2hpQ2hlY2tib3V0Q29udGV4dCB9IGZyb20gJy4uL01lcmNoaUNoZWNrb3V0UHJvdmlkZXInO1xuaW1wb3J0IHsgYWRkcmVzc0luT25lTGluZSB9IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7IGN1cnJlbmN5VGF4QW5kQ29zdCB9IGZyb20gJy4uL2N1cnJlbmN5JztcblxuZnVuY3Rpb24gU2hpcG1lbnRQcmljZSh7IHNoaXBtZW50IH06IGFueSkge1xuICBjb25zdCB7IHNoaXBtZW50TWV0aG9kLCB0YXhUeXBlIH0gPSBzaGlwbWVudDtcbiAgY29uc3QgeyBjdXJyZW5jeSB9ID0gc2hpcG1lbnRNZXRob2Q7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIHshIXNoaXBtZW50LmNvc3QgJiYgKFxuICAgICAgICA8c21hbGwgY2xhc3NOYW1lPSdmb250LXdlaWdodC1ib2xkJz5cbiAgICAgICAgICB7Y3VycmVuY3lUYXhBbmRDb3N0KGN1cnJlbmN5LCB0YXhUeXBlLCBzaGlwbWVudC5jb3N0KX1cbiAgICAgICAgPC9zbWFsbD5cbiAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmludGVyZmFjZSBQcm9wc1BpY2t1cEluZm8ge1xuICBvcmlnaW5BZGRyZXNzOiBhbnk7XG59XG5cbmZ1bmN0aW9uIFBpY2t1cEluZm8oeyBvcmlnaW5BZGRyZXNzIH06IFByb3BzUGlja3VwSW5mbykge1xuICByZXR1cm4gPHNtYWxsPlBpY2sgdXAgZnJvbToge2FkZHJlc3NJbk9uZUxpbmUob3JpZ2luQWRkcmVzcyl9PC9zbWFsbD47XG59XG5cbmludGVyZmFjZSBQcm9wc1NoaXBtZW50T3B0aW9uSW5mbyB7XG4gIHNoaXBtZW50OiBhbnk7XG59XG5cbmZ1bmN0aW9uIFNoaXBtZW50T3B0aW9uSW5mbyh7IHNoaXBtZW50IH06IFByb3BzU2hpcG1lbnRPcHRpb25JbmZvKSB7XG4gIGNvbnN0IHsgbmFtZSwgc2hpcG1lbnRNZXRob2QsIHRyYW5zcG9ydENvbXBhbnlOYW1lIH0gPSBzaGlwbWVudDtcbiAgY29uc3QgeyBvcmlnaW5BZGRyZXNzLCBwaWNrVXAgfSA9IHNoaXBtZW50TWV0aG9kO1xuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPSdzaGlwbWVudC1vcHRpb24taW5mbyc+XG4gICAgICB7IW5hbWUgPyAoXG4gICAgICAgIDw+XG4gICAgICAgICAgeyEhdHJhbnNwb3J0Q29tcGFueU5hbWUgJiYgKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9J3NoaXBtZW50LW9wdGlvbi1uYW1lJz57c2hpcG1lbnRNZXRob2QubmFtZX08L2Rpdj5cbiAgICAgICAgICApfVxuICAgICAgICAgIHtwaWNrVXAgPyAoXG4gICAgICAgICAgICA8UGlja3VwSW5mbyBvcmlnaW5BZGRyZXNzPXtvcmlnaW5BZGRyZXNzfSAvPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8c21hbGw+e3RyYW5zcG9ydENvbXBhbnlOYW1lfTwvc21hbGw+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC8+XG4gICAgICApIDogKFxuICAgICAgICA8PlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPSdzaGlwbWVudC1vcHRpb24tbmFtZSc+e25hbWV9PC9kaXY+XG4gICAgICAgICAge3BpY2tVcCAmJiA8UGlja3VwSW5mbyBvcmlnaW5BZGRyZXNzPXtvcmlnaW5BZGRyZXNzfSAvPn1cbiAgICAgICAgPC8+XG4gICAgICApfVxuICAgICAgPFNoaXBtZW50UHJpY2Ugc2hpcG1lbnQ9e3NoaXBtZW50fSAvPlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5pbnRlcmZhY2UgUHJvcHNMaXN0SXRlbVNoaXBtZW50UXVvdGVPcHRpb24ge1xuICBkb1NlbGVjdDogKCkgPT4gdm9pZDtcbiAgc2hpcG1lbnQ6IGFueTtcbiAgaXNTZWxlY3RlZDogYm9vbGVhbjtcbn1cblxuZnVuY3Rpb24gTGlzdEl0ZW1TaGlwbWVudFF1b3RlT3B0aW9uKHtcbiAgZG9TZWxlY3QsXG4gIGlzU2VsZWN0ZWQsXG4gIHNoaXBtZW50LFxufTogUHJvcHNMaXN0SXRlbVNoaXBtZW50UXVvdGVPcHRpb24pIHtcbiAgY29uc3QgeyBjbGFzc05hbWVNZXJjaGlDaGVja291dExpc3RHcm91cEl0ZW0gfSA9IHVzZU1lcmNoaUNoZWNrYm91dENvbnRleHQoKTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBjbGFzc05hbWU9e2Ake2NsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwSXRlbX0gJHtpc1NlbGVjdGVkID8gJ2FjdGl2ZScgOiAnJ1xuICAgICAgICB9YH1cbiAgICAgIHN0eWxlPXt7IGN1cnNvcjogJ3BvaW50ZXInIH19XG4gICAgICBvbkNsaWNrPXtkb1NlbGVjdH1cbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxTaGlwbWVudE9wdGlvbkluZm8gc2hpcG1lbnQ9e3NoaXBtZW50fSAvPlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtpc1NlbGVjdGVkICYmIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFDaGVja30gLz59XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIExpc3RJdGVtTG9hZGluZygpIHtcbiAgY29uc3QgeyBjbGFzc05hbWVNZXJjaGlDaGVja291dExpc3RHcm91cEl0ZW1Mb2FkZXIgfSA9XG4gICAgdXNlTWVyY2hpQ2hlY2tib3V0Q29udGV4dCgpO1xuICByZXR1cm4gKFxuICAgIDxkaXZcbiAgICAgIGNsYXNzTmFtZT17XG4gICAgICAgIGNsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwSXRlbUxvYWRlciArXG4gICAgICAgICcgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlcidcbiAgICAgIH1cbiAgICA+XG4gICAgICA8Q2dTcGlubmVyIGZvbnRTaXplPScxLjVyZW0nIGNsYXNzTmFtZT0nYW5pbWF0ZV9zcGluJyAvPlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5mdW5jdGlvbiBMaXN0SXRlbU5vT3B0aW9ucygpIHtcbiAgY29uc3QgeyBjbGFzc05hbWVNZXJjaGlDaGVja291dExpc3RHcm91cEl0ZW0gfSA9IHVzZU1lcmNoaUNoZWNrYm91dENvbnRleHQoKTtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRMaXN0R3JvdXBJdGVtfT5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPSdtZXJjaGlfbW9uc3Rlcl9zaGlwbWVudF9vcHRpb25fbm90X2ZvdW5kJyAvPlxuICAgICAgPHNtYWxsIGNsYXNzTmFtZT0ndGV4dC1tdXRlZCBzaGlwbWVudC1vcHRpb24tY2hlY2tvdXQtZm9ybSc+XG4gICAgICAgIEVudGVyIHlvdXIgYWRkcmVzcyB0byBzZWxlY3QgYSBzaGlwbWVudCBvcHRpb25cbiAgICAgIDwvc21hbGw+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmludGVyZmFjZSBQcm9wcyB7XG4gIGRvU2VsZWN0U2hpcG1lbnRPcHRpb246IChvcHRpb246IGFueSkgPT4gdm9pZDtcbiAgbG9hZGluZzogYm9vbGVhbjtcbiAgc2VsZWN0ZWRPcHRpb24/OiBhbnk7XG4gIHNoaXBtZW50T3B0aW9uczogQXJyYXk8YW55Pjtcbn1cblxuZnVuY3Rpb24gTGlzdFNoaXBtZW50UXVvdGVPcHRpb25zKHtcbiAgZG9TZWxlY3RTaGlwbWVudE9wdGlvbixcbiAgbG9hZGluZyxcbiAgc2VsZWN0ZWRPcHRpb24sXG4gIHNoaXBtZW50T3B0aW9ucyxcbn06IFByb3BzKSB7XG4gIGNvbnN0IHsgY2xhc3NOYW1lTWVyY2hpQ2hlY2tvdXRMaXN0R3JvdXAgfSA9IHVzZU1lcmNoaUNoZWNrYm91dENvbnRleHQoKTtcblxuICBjb25zdCBnZXRTaGlwS2V5ID0gKHNoaXA6IGFueSkgPT4ge1xuICAgIGNvbnN0IG0gPSBzaGlwPy5zaGlwbWVudE1ldGhvZDtcbiAgICBjb25zdCBpZCA9XG4gICAgICBzaGlwPy5pZCA/P1xuICAgICAgc2hpcD8ucXVvdGVJZCA/P1xuICAgICAgbT8uaWQ7XG4gICAgaWYgKGlkICE9IG51bGwpIHJldHVybiBTdHJpbmcoaWQpO1xuICAgIGNvbnN0IHNpZ25hdHVyZSA9IGAke20/Lm5hbWUgPz8gJyd9fCR7c2hpcD8udHJhbnNwb3J0Q29tcGFueU5hbWUgPz8gJyd9fCR7bT8ucGlja1VwID8gJ1AnIDogJ0QnXG4gICAgICB9YDtcbiAgICByZXR1cm4gc2lnbmF0dXJlO1xuICB9O1xuXG4gIGNvbnN0IHNlbGVjdGVkS2V5ID0gc2VsZWN0ZWRPcHRpb25cbiAgICA/IGdldFNoaXBLZXkoKHNlbGVjdGVkT3B0aW9uIGFzIGFueSkuc2hpcG1lbnQgPz8gc2VsZWN0ZWRPcHRpb24pXG4gICAgOiBudWxsO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZU1lcmNoaUNoZWNrb3V0TGlzdEdyb3VwfT5cbiAgICAgIHtsb2FkaW5nID8gKFxuICAgICAgICA8TGlzdEl0ZW1Mb2FkaW5nIC8+XG4gICAgICApIDogc2hpcG1lbnRPcHRpb25zLmxlbmd0aCA/IChcbiAgICAgICAgc2hpcG1lbnRPcHRpb25zLm1hcCgoczogYW55LCBpOiBudW1iZXIpID0+IHtcbiAgICAgICAgICBjb25zdCBzaGlwID0gcy5zaGlwbWVudDtcbiAgICAgICAgICBjb25zdCBrID0gZ2V0U2hpcEtleShzaGlwKTtcbiAgICAgICAgICBjb25zdCBpc1NlbGVjdGVkID0gc2VsZWN0ZWRLZXkgIT09IG51bGwgJiYgayA9PT0gc2VsZWN0ZWRLZXk7XG5cbiAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgPExpc3RJdGVtU2hpcG1lbnRRdW90ZU9wdGlvblxuICAgICAgICAgICAgICBkb1NlbGVjdD17KCkgPT4gZG9TZWxlY3RTaGlwbWVudE9wdGlvbihzaGlwKX1cbiAgICAgICAgICAgICAgaXNTZWxlY3RlZD17aXNTZWxlY3RlZH1cbiAgICAgICAgICAgICAgc2hpcG1lbnQ9e3NoaXB9XG4gICAgICAgICAgICAgIGtleT17a31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKTtcbiAgICAgICAgfSlcbiAgICAgICkgOiAoXG4gICAgICAgIDxMaXN0SXRlbU5vT3B0aW9ucyAvPlxuICAgICAgKX1cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgTGlzdFNoaXBtZW50UXVvdGVPcHRpb25zO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxZQUFZOztBQUNaLE9BQU9BLEtBQUssTUFBTSxPQUFPO0FBQ3pCLFNBQVNDLGVBQWUsUUFBUSxnQ0FBZ0M7QUFDaEUsU0FBU0MsT0FBTyxRQUFRLG1DQUFtQztBQUMzRCxTQUFTQyxTQUFT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
@@ -0,0 +1,2 @@
1
+ import ListShipmentQuoteOptions from "./ListShipmentQuoteOptions";
2
+ export { ListShipmentQuoteOptions };
@@ -0,0 +1,3 @@
1
+ import ListShipmentQuoteOptions from "./ListShipmentQuoteOptions";
2
+ export { ListShipmentQuoteOptions };
3
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMaXN0U2hpcG1lbnRRdW90ZU9wdGlvbnMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9saXN0cy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTGlzdFNoaXBtZW50UXVvdGVPcHRpb25zIGZyb20gXCIuL0xpc3RTaGlwbWVudFF1b3RlT3B0aW9uc1wiO1xuXG5leHBvcnQgeyBMaXN0U2hpcG1lbnRRdW90ZU9wdGlvbnMgfTtcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0Esd0JBQXdCLE1BQU0sNEJBQTRCO0FBRWpFLFNBQVNBLHdCQUF3QiIsImlnbm9yZUxpc3QiOltdfQ==
package/lib/index.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ import MerchiCheckout from './components/MerchiCheckout';
2
+ export default MerchiCheckout;
3
+ export { clearCheckoutSession, completeCheckoutSession, getSavedShippingAddress, loadCheckoutSession, mergeJobWithCheckoutSession, saveCheckoutSession, } from './checkoutSession';
package/lib/index.js ADDED
@@ -0,0 +1,4 @@
1
+ import MerchiCheckout from './components/MerchiCheckout';
2
+ export default MerchiCheckout;
3
+ export { clearCheckoutSession, completeCheckoutSession, getSavedShippingAddress, loadCheckoutSession, mergeJobWithCheckoutSession, saveCheckoutSession } from './checkoutSession';
4
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNZXJjaGlDaGVja291dCIsImNsZWFyQ2hlY2tvdXRTZXNzaW9uIiwiY29tcGxldGVDaGVja291dFNlc3Npb24iLCJnZXRTYXZlZFNoaXBwaW5nQWRkcmVzcyIsImxvYWRDaGVja291dFNlc3Npb24iLCJtZXJnZUpvYldpdGhDaGVja291dFNlc3Npb24iLCJzYXZlQ2hlY2tvdXRTZXNzaW9uIl0sInNvdXJjZXMiOlsiLi4vc3JjL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTWVyY2hpQ2hlY2tvdXQgZnJvbSAnLi9jb21wb25lbnRzL01lcmNoaUNoZWNrb3V0JztcblxuZXhwb3J0IGRlZmF1bHQgTWVyY2hpQ2hlY2tvdXQ7XG5leHBvcnQge1xuICBjbGVhckNoZWNrb3V0U2Vzc2lvbixcbiAgY29tcGxldGVDaGVja291dFNlc3Npb24sXG4gIGdldFNhdmVkU2hpcHBpbmdBZGRyZXNzLFxuICBsb2FkQ2hlY2tvdXRTZXNzaW9uLFxuICBtZXJnZUpvYldpdGhDaGVja291dFNlc3Npb24sXG4gIHNhdmVDaGVja291dFNlc3Npb24sXG59IGZyb20gJy4vY2hlY2tvdXRTZXNzaW9uJztcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsY0FBYyxNQUFNLDZCQUE2QjtBQUV4RCxlQUFlQSxjQUFjO0FBQzdCLFNBQ0VDLG9CQUFvQixFQUNwQkMsdUJBQXVCLEVBQ3ZCQyx1QkFBdUIsRUFDdkJDLG1CQUFtQixFQUNuQkMsMkJBQTJCLEVBQzNCQyxtQkFBbUIsUUFDZCxtQkFBbUIiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,2 @@
1
+ export declare function getMerchiSourceJobTagEntities(): any[];
2
+ export declare function clearMerchiSource(): void;
@@ -0,0 +1,31 @@
1
+ function cleanIds(raw) {
2
+ return raw.map(function (id) {
3
+ return id.trim();
4
+ }) // Trim each ID entry to remove whitespace
5
+ .filter(function (id) {
6
+ return /^\d+$/.test(id);
7
+ }) // Use a regular expression to ensure the ID is entirely numeric.
8
+ .map(function (id) {
9
+ return Number(id);
10
+ }); // Convert the remaining, valid ID entries into numbers
11
+ }
12
+ export function getMerchiSourceJobTagEntities() {
13
+ if (typeof localStorage !== 'undefined' && localStorage !== null) {
14
+ var merchiSource = localStorage.getItem('merchi_source');
15
+ if (merchiSource) {
16
+ var ids = cleanIds(merchiSource.split(','));
17
+ return ids.map(function (id) {
18
+ return {
19
+ id: id
20
+ };
21
+ });
22
+ }
23
+ // If "merchi_source" is not found in localStorage, return an empty array.
24
+ return [];
25
+ }
26
+ return [];
27
+ }
28
+ export function clearMerchiSource() {
29
+ localStorage.removeItem('merchi_source');
30
+ }
31
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjbGVhbklkcyIsInJhdyIsIm1hcCIsImlkIiwidHJpbSIsImZpbHRlciIsInRlc3QiLCJOdW1iZXIiLCJnZXRNZXJjaGlTb3VyY2VKb2JUYWdFbnRpdGllcyIsImxvY2FsU3RvcmFnZSIsIm1lcmNoaVNvdXJjZSIsImdldEl0ZW0iLCJpZHMiLCJzcGxpdCIsImNsZWFyTWVyY2hpU291cmNlIiwicmVtb3ZlSXRlbSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9tZXJjaGlfc291cmNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIGNsZWFuSWRzKHJhdzogYW55W10pIHtcbiAgcmV0dXJuIHJhdy5tYXAoaWQgPT4gaWQudHJpbSgpKSAgICAgICAgICAgIC8vIFRyaW0gZWFjaCBJRCBlbnRyeSB0byByZW1vdmUgd2hpdGVzcGFjZVxuICAgIC5maWx0ZXIoaWQgPT4gL15cXGQrJC8udGVzdChpZCkpICAvLyBVc2UgYSByZWd1bGFyIGV4cHJlc3Npb24gdG8gZW5zdXJlIHRoZSBJRCBpcyBlbnRpcmVseSBudW1lcmljLlxuICAgIC5tYXAoaWQgPT4gTnVtYmVyKGlkKSk7ICAgICAgICAgIC8vIENvbnZlcnQgdGhlIHJlbWFpbmluZywgdmFsaWQgSUQgZW50cmllcyBpbnRvIG51bWJlcnNcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldE1lcmNoaVNvdXJjZUpvYlRhZ0VudGl0aWVzKCk6IGFueVtdIHtcbiAgaWYgKHR5cGVvZiBsb2NhbFN0b3JhZ2UgIT09ICd1bmRlZmluZWQnICYmIGxvY2FsU3RvcmFnZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IG1lcmNoaVNvdXJjZSA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdtZXJjaGlfc291cmNlJyk7XG5cbiAgICBpZiAobWVyY2hpU291cmNlKSB7XG4gICAgICBjb25zdCBpZHMgPSBjbGVhbklkcyhtZXJjaGlTb3VyY2Uuc3BsaXQoJywnKSk7XG4gICAgICByZXR1cm4gaWRzLm1hcCgoaWQ6IG51bWJlcikgPT4gKHsgaWQgfSkpO1xuICAgIH1cbiAgICAvLyBJZiBcIm1lcmNoaV9zb3VyY2VcIiBpcyBub3QgZm91bmQgaW4gbG9jYWxTdG9yYWdlLCByZXR1cm4gYW4gZW1wdHkgYXJyYXkuXG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIHJldHVybiBbXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyTWVyY2hpU291cmNlKCkge1xuICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnbWVyY2hpX3NvdXJjZScpO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxRQUFRQSxDQUFDQyxHQUFVLEVBQUU7RUFDNUIsT0FBT0EsR0FBRyxDQUFDQyxHQUFHLENBQUMsVUFBQUMsRUFBRTtJQUFBLE9BQUlBLEVBQUUsQ0FBQ0MsSUFBSSxDQUFDLENBQUM7RUFBQSxFQUFDLENBQVk7RUFBQSxDQUN4Q0MsTUFBTSxDQUFDLFVBQUFGLEVBQUU7SUFBQSxPQUFJLE9BQU8sQ0FBQ0csSUFBSSxDQUFDSCxFQUFFLENBQUM7RUFBQSxFQUFDLENBQUU7RUFBQSxDQUNoQ0QsR0FBRyxDQUFDLFVBQUFDLEVBQUU7SUFBQSxPQUFJSSxNQUFNLENBQUNKLEVBQUUsQ0FBQztFQUFBLEVBQUMsQ0FBQyxDQUFVO0FBQ3JDO0FBRUEsT0FBTyxTQUFTSyw2QkFBNkJBLENBQUEsRUFBVTtFQUNyRCxJQUFJLE9BQU9DLFlBQVksS0FBSyxXQUFXLElBQUlBLFlBQVksS0FBSyxJQUFJLEVBQUU7SUFDaEUsSUFBTUMsWUFBWSxHQUFHRCxZQUFZLENBQUNFLE9BQU8sQ0FBQyxlQUFlLENBQUM7SUFFMUQsSUFBSUQsWUFBWSxFQUFFO01BQ2hCLElBQU1FLEdBQUcsR0FBR1osUUFBUSxDQUFDVSxZQUFZLENBQUNHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztNQUM3QyxPQUFPRCxHQUFHLENBQUNWLEdBQUcsQ0FBQyxVQUFDQyxFQUFVO1FBQUEsT0FBTTtVQUFFQSxFQUFFLEVBQUZBO1FBQUcsQ0FBQztNQUFBLENBQUMsQ0FBQztJQUMxQztJQUNBO0lBQ0EsT0FBTyxFQUFFO0VBQ1g7RUFDQSxPQUFPLEVBQUU7QUFDWDtBQUVBLE9BQU8sU0FBU1csaUJBQWlCQSxDQUFBLEVBQUc7RUFDbENMLFlBQVksQ0FBQ00sVUFBVSxDQUFDLGVBQWUsQ0FBQztBQUMxQyIsImlnbm9yZUxpc3QiOltdfQ==