merchi_cart 0.0.4 → 0.0.5-c

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 (197) hide show
  1. package/lib/Cart.js +56 -33
  2. package/lib/CartAlert.js +41 -15
  3. package/lib/CartHeader.js +26 -9
  4. package/lib/CartProvider.js +236 -165
  5. package/lib/CartTotals.js +94 -34
  6. package/lib/MerchiSDK/constants/auto_assign_production_on_actions.js +7 -10
  7. package/lib/MerchiSDK/constants/call_to_actions.js +15 -18
  8. package/lib/MerchiSDK/constants/discount_types.js +4 -7
  9. package/lib/MerchiSDK/constants/domain_types.js +13 -16
  10. package/lib/MerchiSDK/constants/errors.js +32 -36
  11. package/lib/MerchiSDK/constants/event_types.js +6 -9
  12. package/lib/MerchiSDK/constants/field_types.js +14 -17
  13. package/lib/MerchiSDK/constants/input_types.js +14 -17
  14. package/lib/MerchiSDK/constants/inventory_statuses.js +7 -10
  15. package/lib/MerchiSDK/constants/invoice_types.js +6 -9
  16. package/lib/MerchiSDK/constants/item_types.js +6 -9
  17. package/lib/MerchiSDK/constants/job/drafting_status.js +8 -11
  18. package/lib/MerchiSDK/constants/job/payment_status.js +8 -11
  19. package/lib/MerchiSDK/constants/job/production_status.js +13 -16
  20. package/lib/MerchiSDK/constants/job/shipment_status.js +12 -15
  21. package/lib/MerchiSDK/constants/job/supply_chain_request_status.js +7 -10
  22. package/lib/MerchiSDK/constants/job_priorities.js +7 -10
  23. package/lib/MerchiSDK/constants/job_status.js +50 -53
  24. package/lib/MerchiSDK/constants/job_types.js +16 -19
  25. package/lib/MerchiSDK/constants/notification_sections.js +14 -17
  26. package/lib/MerchiSDK/constants/notification_types.js +98 -101
  27. package/lib/MerchiSDK/constants/notification_urgencies.js +7 -10
  28. package/lib/MerchiSDK/constants/payment_types.js +11 -14
  29. package/lib/MerchiSDK/constants/platform.js +5 -8
  30. package/lib/MerchiSDK/constants/product_types.js +26 -29
  31. package/lib/MerchiSDK/constants/rights.js +6 -9
  32. package/lib/MerchiSDK/constants/robots_meta_directives.js +1 -14
  33. package/lib/MerchiSDK/constants/roles.js +19 -36
  34. package/lib/MerchiSDK/constants/shipment_companies.js +19 -22
  35. package/lib/MerchiSDK/constants/shipment_services.js +4 -7
  36. package/lib/MerchiSDK/constants/system_roles.js +4 -7
  37. package/lib/MerchiSDK/constants/theme_foundations.js +7 -10
  38. package/lib/MerchiSDK/constants/theme_status.js +6 -9
  39. package/lib/MerchiSDK/constants/user_types.js +18 -21
  40. package/lib/MerchiSDK/constants/white_label_accessibilities.js +6 -9
  41. package/lib/MerchiSDK/cookie.js +15 -18
  42. package/lib/MerchiSDK/entities/address.js +163 -104
  43. package/lib/MerchiSDK/entities/assignment.js +182 -123
  44. package/lib/MerchiSDK/entities/automatic_payment_relationship.js +85 -50
  45. package/lib/MerchiSDK/entities/backup.js +56 -30
  46. package/lib/MerchiSDK/entities/bank.js +118 -80
  47. package/lib/MerchiSDK/entities/cart.js +186 -135
  48. package/lib/MerchiSDK/entities/cart_item.js +160 -110
  49. package/lib/MerchiSDK/entities/cart_shipment_group.js +72 -40
  50. package/lib/MerchiSDK/entities/cart_shipment_quote.js +91 -61
  51. package/lib/MerchiSDK/entities/category.js +97 -65
  52. package/lib/MerchiSDK/entities/company.js +579 -437
  53. package/lib/MerchiSDK/entities/company_invitation.js +88 -61
  54. package/lib/MerchiSDK/entities/component.js +204 -147
  55. package/lib/MerchiSDK/entities/component_tag.js +61 -35
  56. package/lib/MerchiSDK/entities/component_version.js +87 -55
  57. package/lib/MerchiSDK/entities/country_tax.js +111 -67
  58. package/lib/MerchiSDK/entities/discount.js +89 -53
  59. package/lib/MerchiSDK/entities/discount_group.js +82 -49
  60. package/lib/MerchiSDK/entities/domain.js +489 -372
  61. package/lib/MerchiSDK/entities/domain_invitation.js +95 -66
  62. package/lib/MerchiSDK/entities/domain_tag.js +104 -70
  63. package/lib/MerchiSDK/entities/draft.js +167 -118
  64. package/lib/MerchiSDK/entities/draft_comment.js +132 -92
  65. package/lib/MerchiSDK/entities/draft_template.js +109 -72
  66. package/lib/MerchiSDK/entities/email_address.js +77 -44
  67. package/lib/MerchiSDK/entities/email_counter.js +73 -40
  68. package/lib/MerchiSDK/entities/enrolled_domain.js +90 -60
  69. package/lib/MerchiSDK/entities/exchange_rate.js +71 -44
  70. package/lib/MerchiSDK/entities/file.js +365 -249
  71. package/lib/MerchiSDK/entities/internal_tag.js +122 -79
  72. package/lib/MerchiSDK/entities/inventory.js +125 -81
  73. package/lib/MerchiSDK/entities/inventory_unit_variation.js +78 -46
  74. package/lib/MerchiSDK/entities/invoice.js +382 -287
  75. package/lib/MerchiSDK/entities/item.js +111 -69
  76. package/lib/MerchiSDK/entities/job.js +673 -521
  77. package/lib/MerchiSDK/entities/job_comment.js +121 -86
  78. package/lib/MerchiSDK/entities/matching_inventory.js +85 -52
  79. package/lib/MerchiSDK/entities/menu.js +85 -55
  80. package/lib/MerchiSDK/entities/menu_item.js +83 -55
  81. package/lib/MerchiSDK/entities/notification.js +221 -165
  82. package/lib/MerchiSDK/entities/page.js +90 -60
  83. package/lib/MerchiSDK/entities/payment.js +144 -100
  84. package/lib/MerchiSDK/entities/payment_device.js +94 -55
  85. package/lib/MerchiSDK/entities/phone_number.js +103 -64
  86. package/lib/MerchiSDK/entities/product.js +734 -574
  87. package/lib/MerchiSDK/entities/production_comment.js +121 -86
  88. package/lib/MerchiSDK/entities/quote.js +216 -128
  89. package/lib/MerchiSDK/entities/quote_item.js +137 -86
  90. package/lib/MerchiSDK/entities/seo_domain_page.js +88 -61
  91. package/lib/MerchiSDK/entities/session.js +92 -52
  92. package/lib/MerchiSDK/entities/shipment.js +383 -269
  93. package/lib/MerchiSDK/entities/shipment_item.js +61 -30
  94. package/lib/MerchiSDK/entities/shipment_item_fulfillment.js +60 -31
  95. package/lib/MerchiSDK/entities/shipment_method.js +144 -103
  96. package/lib/MerchiSDK/entities/shipment_method_variation.js +108 -70
  97. package/lib/MerchiSDK/entities/short_url.js +100 -65
  98. package/lib/MerchiSDK/entities/subscription_plan.js +165 -126
  99. package/lib/MerchiSDK/entities/supply_domain.js +81 -51
  100. package/lib/MerchiSDK/entities/system_role.js +61 -35
  101. package/lib/MerchiSDK/entities/theme.js +558 -420
  102. package/lib/MerchiSDK/entities/theme_css_setting.js +76 -45
  103. package/lib/MerchiSDK/entities/user.js +647 -470
  104. package/lib/MerchiSDK/entities/user_company.js +86 -51
  105. package/lib/MerchiSDK/entities/variation.js +145 -103
  106. package/lib/MerchiSDK/entities/variation_field.js +276 -227
  107. package/lib/MerchiSDK/entities/variation_fields_option.js +194 -135
  108. package/lib/MerchiSDK/entities/variation_option.js +121 -94
  109. package/lib/MerchiSDK/entities/variations_group.js +115 -72
  110. package/lib/MerchiSDK/entity.js +761 -761
  111. package/lib/MerchiSDK/merchi.js +313 -304
  112. package/lib/MerchiSDK/request.js +96 -110
  113. package/lib/MerchiSDK/test_util.js +14 -19
  114. package/lib/MerchiSDK/toasts.js +25 -16
  115. package/lib/MerchiSDK/util/float.js +12 -16
  116. package/lib/MerchiSDK/util/query_string.js +10 -14
  117. package/lib/MerchiSDK/util/validation.js +1 -5
  118. package/lib/MerchiSDK/uuid.js +8 -12
  119. package/lib/buttons/Button.js +24 -9
  120. package/lib/buttons/ButtonBack.js +35 -23
  121. package/lib/buttons/ButtonClearCart.js +14 -10
  122. package/lib/buttons/ButtonInvoiceDownload.js +57 -26
  123. package/lib/buttons/ButtonNext.js +38 -18
  124. package/lib/buttons/ButtonNextDynamic.js +19 -16
  125. package/lib/buttons/ButtonPay.js +31 -11
  126. package/lib/buttons/ButtonShipmentTabNext.js +32 -16
  127. package/lib/buttons/index.js +7 -15
  128. package/lib/components/Alert.js +29 -19
  129. package/lib/components/CartBody.js +17 -9
  130. package/lib/components/CartClient.js +55 -26
  131. package/lib/components/CartFooter.js +15 -9
  132. package/lib/components/CartItemRow.js +136 -28
  133. package/lib/components/CartPaymentSettingsInvalid.js +14 -7
  134. package/lib/components/CartShipment.js +59 -21
  135. package/lib/components/CartTabContent.js +15 -9
  136. package/lib/components/CartTabPanel.js +25 -19
  137. package/lib/components/CartTableContainer.js +15 -9
  138. package/lib/components/Collapse.js +24 -12
  139. package/lib/components/LoadingTemplate.js +25 -14
  140. package/lib/components/NoCartItems.js +19 -8
  141. package/lib/components/ShipmentGroupCard.js +156 -47
  142. package/lib/components/Table.js +14 -9
  143. package/lib/components/Title.js +30 -10
  144. package/lib/components/containers.js +32 -20
  145. package/lib/components/index.js +14 -30
  146. package/lib/forms/FormNewCustomer.js +126 -49
  147. package/lib/forms/FormReturningCustomer.js +67 -24
  148. package/lib/forms/FormShipmentAddressAndNotes.js +106 -48
  149. package/lib/forms/FormSquarePayment.js +12 -9
  150. package/lib/forms/FormStripePayment.js +12 -9
  151. package/lib/forms/InputAcceptUserTermsAndConditions.js +36 -8
  152. package/lib/forms/InputError.js +18 -11
  153. package/lib/forms/InputSelect.js +46 -17
  154. package/lib/forms/InputText.js +52 -20
  155. package/lib/forms/InputsAddress.js +211 -64
  156. package/lib/index.js +3 -9
  157. package/lib/panels/PanelCartItems.js +51 -12
  158. package/lib/panels/PanelCartShipment.js +65 -17
  159. package/lib/panels/PanelClearCart.js +46 -13
  160. package/lib/panels/PanelClientCheckout.js +76 -24
  161. package/lib/panels/PanelEditCartItem.js +54 -21
  162. package/lib/panels/PanelPaymentSuccess.js +68 -20
  163. package/lib/panels/index.js +7 -15
  164. package/lib/slices/sliceCart.js +162 -143
  165. package/lib/slices/sliceCartAlert.js +36 -39
  166. package/lib/slices/sliceCartItem.js +27 -26
  167. package/lib/slices/sliceCartPayment.js +41 -39
  168. package/lib/slices/sliceCartShipment.js +66 -66
  169. package/lib/slices/sliceFormReturningCustomer.js +20 -22
  170. package/lib/slices/sliceNewCustomerForm.js +19 -21
  171. package/lib/square/SquareCard.js +48 -41
  172. package/lib/square/actions.js +29 -30
  173. package/lib/square/slices/reducersSquare.js +5 -7
  174. package/lib/square/slices/sliceSquareAlerts.js +24 -26
  175. package/lib/square/slices/sliceSquareForm.js +27 -26
  176. package/lib/store.js +457 -362
  177. package/lib/stripe/StripeCardFields.js +126 -36
  178. package/lib/stripe/StripeCardForm.js +85 -55
  179. package/lib/stripe/StripePaymentButtons.js +83 -67
  180. package/lib/stripe/actions.js +73 -62
  181. package/lib/stripe/slices/sliceStripeAlerts.js +24 -26
  182. package/lib/stripe/slices/sliceStripeCardForm.js +5 -7
  183. package/lib/stripe/slices/sliceStripeForm.js +55 -54
  184. package/lib/stripe/utils.js +17 -22
  185. package/lib/tabs/CartNav.js +21 -13
  186. package/lib/tabs/NavTab.js +38 -17
  187. package/lib/utilities/address.js +337 -337
  188. package/lib/utilities/cart.js +59 -61
  189. package/lib/utilities/company.js +5 -11
  190. package/lib/utilities/cookie.js +45 -53
  191. package/lib/utilities/currency.js +213 -210
  192. package/lib/utilities/helpers.js +176 -160
  193. package/lib/utilities/invoice.js +45 -43
  194. package/lib/utilities/product.js +7 -10
  195. package/lib/utilities/user.js +34 -29
  196. package/lib/utilities/variations.js +45 -50
  197. package/package.json +26 -8
package/lib/Cart.js CHANGED
@@ -1,35 +1,58 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const jsx_runtime_1 = require("react/jsx-runtime");
4
- const React = require("react");
5
- const react_redux_1 = require("react-redux");
6
- const store_1 = require("./store");
7
- const CartAlert_1 = require("./CartAlert");
8
- const CartHeader_1 = require("./CartHeader");
9
- const CartNav_1 = require("./tabs/CartNav");
10
- const CartTotals_1 = require("./CartTotals");
11
- const CartProvider_1 = require("./CartProvider");
12
- const buttons_1 = require("./buttons");
13
- const components_1 = require("./components");
14
- const panels_1 = require("./panels");
15
- const sliceCart_1 = require("./slices/sliceCart");
16
- const store_2 = require("./store");
17
- require("./styles/globals.css");
1
+ import * as React from 'react';
2
+ import { Provider, useSelector } from 'react-redux';
3
+ import { store } from "./store";
4
+ import CartAlert from "./CartAlert";
5
+ import CartHeader from "./CartHeader";
6
+ import CartNav from "./tabs/CartNav";
7
+ import CartTotals from "./CartTotals";
8
+ import CartProvider, { useCartContext } from "./CartProvider";
9
+ import { ButtonBack, ButtonClearCart, ButtonNextDynamic } from "./buttons";
10
+ import { CartFooter, CartPaymentSettingsInvalid, LoadingTemplate } from "./components";
11
+ import { PanelCartItems, PanelCartShipment, PanelClearCart, PanelClientCheckout, PanelEditCartItem, PanelPaymentSuccess } from "./panels";
12
+ import { tabIdClearCart, tabIdItem, tabIdPaymentSuccess } from "./slices/sliceCart";
13
+ import { actionFetchTheme, initMerchiCart } from "./store";
14
+ import "./styles/globals.css";
15
+ import { jsx as _jsx } from "react/jsx-runtime";
16
+ import { jsxs as _jsxs } from "react/jsx-runtime";
17
+ import { Fragment as _Fragment } from "react/jsx-runtime";
18
18
  function CartComponents() {
19
- const { domainId, includeTheme, initialiseCart } = (0, CartProvider_1.useCartContext)();
20
- const { activeTab, cartSettingsInvalid, fetchingCart, } = (0, react_redux_1.useSelector)((s) => s.stateCart);
21
- React.useEffect(() => {
22
- if (initialiseCart && domainId) {
23
- if (includeTheme) {
24
- (0, store_2.actionFetchTheme)(domainId);
25
- }
26
- (0, store_2.initMerchiCart)(domainId);
27
- }
28
- }, [domainId, includeTheme, initialiseCart]);
29
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(CartHeader_1.default, {}), (0, jsx_runtime_1.jsx)(CartAlert_1.default, {}), (0, jsx_runtime_1.jsx)(CartNav_1.default, {}), fetchingCart ? ((0, jsx_runtime_1.jsx)(components_1.LoadingTemplate, {})) : cartSettingsInvalid ? ((0, jsx_runtime_1.jsx)(components_1.CartPaymentSettingsInvalid, {})) : ((0, jsx_runtime_1.jsxs)("div", { className: 'merchi-tab-pane', children: [(0, jsx_runtime_1.jsx)(panels_1.PanelClearCart, {}), (0, jsx_runtime_1.jsx)(panels_1.PanelEditCartItem, {}), (0, jsx_runtime_1.jsx)(panels_1.PanelCartItems, {}), (0, jsx_runtime_1.jsx)(panels_1.PanelCartShipment, {}), (0, jsx_runtime_1.jsx)(panels_1.PanelClientCheckout, {}), (0, jsx_runtime_1.jsx)(panels_1.PanelPaymentSuccess, {}), ![sliceCart_1.tabIdItem, sliceCart_1.tabIdClearCart, sliceCart_1.tabIdPaymentSuccess].includes(activeTab) &&
30
- (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(components_1.CartFooter, { children: (0, jsx_runtime_1.jsx)(CartTotals_1.default, {}) }), (0, jsx_runtime_1.jsxs)(components_1.CartFooter, { children: [(0, jsx_runtime_1.jsx)(buttons_1.ButtonClearCart, {}), (0, jsx_runtime_1.jsx)(buttons_1.ButtonBack, {}), (0, jsx_runtime_1.jsx)(buttons_1.ButtonNextDynamic, {})] })] })] }))] }));
19
+ const {
20
+ domainId,
21
+ includeTheme,
22
+ initialiseCart
23
+ } = useCartContext();
24
+ const {
25
+ activeTab,
26
+ cartSettingsInvalid,
27
+ fetchingCart
28
+ } = useSelector(s => s.stateCart);
29
+ React.useEffect(() => {
30
+ if (initialiseCart && domainId) {
31
+ if (includeTheme) {
32
+ actionFetchTheme(domainId);
33
+ }
34
+ initMerchiCart(domainId);
35
+ }
36
+ }, [domainId, includeTheme, initialiseCart]);
37
+ return /*#__PURE__*/_jsxs(_Fragment, {
38
+ children: [/*#__PURE__*/_jsx(CartHeader, {}), /*#__PURE__*/_jsx(CartAlert, {}), /*#__PURE__*/_jsx(CartNav, {}), fetchingCart ? /*#__PURE__*/_jsx(LoadingTemplate, {}) : cartSettingsInvalid ? /*#__PURE__*/_jsx(CartPaymentSettingsInvalid, {}) : /*#__PURE__*/_jsxs("div", {
39
+ className: "merchi-tab-pane",
40
+ children: [/*#__PURE__*/_jsx(PanelClearCart, {}), /*#__PURE__*/_jsx(PanelEditCartItem, {}), /*#__PURE__*/_jsx(PanelCartItems, {}), /*#__PURE__*/_jsx(PanelCartShipment, {}), /*#__PURE__*/_jsx(PanelClientCheckout, {}), /*#__PURE__*/_jsx(PanelPaymentSuccess, {}), ![tabIdItem, tabIdClearCart, tabIdPaymentSuccess].includes(activeTab) && /*#__PURE__*/_jsxs(_Fragment, {
41
+ children: [/*#__PURE__*/_jsx(CartFooter, {
42
+ children: /*#__PURE__*/_jsx(CartTotals, {})
43
+ }), /*#__PURE__*/_jsxs(CartFooter, {
44
+ children: [/*#__PURE__*/_jsx(ButtonClearCart, {}), /*#__PURE__*/_jsx(ButtonBack, {}), /*#__PURE__*/_jsx(ButtonNextDynamic, {})]
45
+ })]
46
+ })]
47
+ })]
48
+ });
31
49
  }
32
- function Cart(props) {
33
- return ((0, jsx_runtime_1.jsx)(CartProvider_1.default, { ...props, children: (0, jsx_runtime_1.jsx)(react_redux_1.Provider, { store: store_1.store, children: (0, jsx_runtime_1.jsx)(CartComponents, {}) }) }));
34
- }
35
- exports.default = Cart;
50
+ export default function Cart(props) {
51
+ return /*#__PURE__*/_jsx(CartProvider, {
52
+ ...props,
53
+ children: /*#__PURE__*/_jsx(Provider, {
54
+ store: store,
55
+ children: /*#__PURE__*/_jsx(CartComponents, {})
56
+ })
57
+ });
58
+ }
package/lib/CartAlert.js CHANGED
@@ -1,17 +1,43 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const jsx_runtime_1 = require("react/jsx-runtime");
4
- const react_redux_1 = require("react-redux");
5
- const react_fontawesome_1 = require("@fortawesome/react-fontawesome");
6
- const free_solid_svg_icons_1 = require("@fortawesome/free-solid-svg-icons");
7
- const components_1 = require("./components");
8
- const store_1 = require("./store");
9
- const CartProvider_1 = require("./CartProvider");
1
+ import { useSelector } from 'react-redux';
2
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
3
+ import { faTimes } from '@fortawesome/free-solid-svg-icons';
4
+ import { Alert } from "./components";
5
+ import { closeAlert } from "./store";
6
+ import { useCartContext } from "./CartProvider";
7
+ import { jsx as _jsx } from "react/jsx-runtime";
8
+ import { jsxs as _jsxs } from "react/jsx-runtime";
9
+ import { Fragment as _Fragment } from "react/jsx-runtime";
10
10
  function CartAlert() {
11
- const { classNameBtnClose } = (0, CartProvider_1.useCartContext)();
12
- const { alert } = (0, react_redux_1.useSelector)((s) => s.stateCartAlert);
13
- const { icon, message, show, title } = alert;
14
- return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: show && ((0, jsx_runtime_1.jsxs)(components_1.Alert, { alertType: alert.type, children: [icon &&
15
- (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: icon }), " ", (0, jsx_runtime_1.jsx)("strong", { children: title }), " ", message, (0, jsx_runtime_1.jsx)("button", { type: "button", className: classNameBtnClose, "data-bs-dismiss": "alert", "aria-label": "Close", onClick: store_1.closeAlert, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faTimes }) })] })) }));
11
+ const {
12
+ classNameBtnClose
13
+ } = useCartContext();
14
+ const {
15
+ alert
16
+ } = useSelector(s => s.stateCartAlert);
17
+ const {
18
+ icon,
19
+ message,
20
+ show,
21
+ title
22
+ } = alert;
23
+ return /*#__PURE__*/_jsx(_Fragment, {
24
+ children: show && /*#__PURE__*/_jsxs(Alert, {
25
+ alertType: alert.type,
26
+ children: [icon && /*#__PURE__*/_jsx(FontAwesomeIcon, {
27
+ icon: icon
28
+ }), " ", /*#__PURE__*/_jsx("strong", {
29
+ children: title
30
+ }), " ", message, /*#__PURE__*/_jsx("button", {
31
+ type: "button",
32
+ className: classNameBtnClose,
33
+ "data-bs-dismiss": "alert",
34
+ "aria-label": "Close",
35
+ onClick: closeAlert,
36
+ children: /*#__PURE__*/_jsx(FontAwesomeIcon, {
37
+ icon: faTimes
38
+ })
39
+ })]
40
+ })
41
+ });
16
42
  }
17
- exports.default = CartAlert;
43
+ export default CartAlert;
package/lib/CartHeader.js CHANGED
@@ -1,11 +1,28 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const jsx_runtime_1 = require("react/jsx-runtime");
4
- const react_fontawesome_1 = require("@fortawesome/react-fontawesome");
5
- const free_solid_svg_icons_1 = require("@fortawesome/free-solid-svg-icons");
6
- const CartProvider_1 = require("./CartProvider");
1
+ import * as React from 'react';
2
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
3
+ import { faShoppingCart, faTimes } from '@fortawesome/free-solid-svg-icons';
4
+ import { useCartContext } from "./CartProvider";
5
+ import { jsx as _jsx } from "react/jsx-runtime";
6
+ import { jsxs as _jsxs } from "react/jsx-runtime";
7
7
  function CartHeader() {
8
- const { classNameCartHeader, classNameBtnClose, onClickClose, } = (0, CartProvider_1.useCartContext)();
9
- return ((0, jsx_runtime_1.jsxs)("div", { className: classNameCartHeader, children: [(0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faShoppingCart }), " Shopping cart", (0, jsx_runtime_1.jsx)("button", { type: "button", className: classNameBtnClose, "aria-label": "Close", onClick: onClickClose, children: (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faTimes }) })] }));
8
+ const {
9
+ classNameCartHeader,
10
+ classNameBtnClose,
11
+ onClickClose
12
+ } = useCartContext();
13
+ return /*#__PURE__*/_jsxs("div", {
14
+ className: classNameCartHeader,
15
+ children: [/*#__PURE__*/_jsx(FontAwesomeIcon, {
16
+ icon: faShoppingCart
17
+ }), " Shopping cart", /*#__PURE__*/_jsx("button", {
18
+ type: "button",
19
+ className: classNameBtnClose,
20
+ "aria-label": "Close",
21
+ onClick: onClickClose,
22
+ children: /*#__PURE__*/_jsx(FontAwesomeIcon, {
23
+ icon: faTimes
24
+ })
25
+ })]
26
+ });
10
27
  }
11
- exports.default = CartHeader;
28
+ export default CartHeader;
@@ -1,168 +1,239 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useCartContext = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const react_1 = require("react");
6
- const CartContext = (0, react_1.createContext)({
7
- classNameAlertError: undefined,
8
- classNameAlertInfo: undefined,
9
- classNameAlertSuccess: undefined,
10
- classNameAlertWarning: undefined,
11
- classNameBtn: undefined,
12
- classNameBtnBack: undefined,
13
- classNameBtnCartClear: undefined,
14
- classNameBtnClose: undefined,
15
- classNameBtnDanger: undefined,
16
- classNameBtnDefault: undefined,
17
- classNameBtnDownloadInvoice: undefined,
18
- classNameBtnPrimary: undefined,
19
- classNameBtnLink: undefined,
20
- classNameBtnNext: undefined,
21
- classNameBtnNextComplete: undefined,
22
- classNameBtnPay: undefined,
23
- classNameCartBody: undefined,
24
- classNameCartFooter: undefined,
25
- classNameCartFormCheckbox: undefined,
26
- classNameCartFormGroup: undefined,
27
- classNameCartFormGroupCheckbox: undefined,
28
- classNameCartFormInput: undefined,
29
- classNameCartInputError: undefined,
30
- classNameCartFormLabelCheckbox: undefined,
31
- classNameCartRow: undefined,
32
- classNameCartRowColumn: undefined,
33
- classNameCartTabItem: undefined,
34
- classNameCartTabItemLink: undefined,
35
- classNameCartGoogleSuggestList: undefined,
36
- classNameCartGoogleSuggestListItem: undefined,
37
- classNameCartHeader: undefined,
38
- classNameCartItemFeatureImage: undefined,
39
- classNameCartItemInfo: undefined,
40
- classNameCartItemInfoCell: undefined,
41
- classNameCartItemInfoCellRight: undefined,
42
- classNameCartItemInfoContainer: undefined,
43
- classNameCartNav: undefined,
44
- classNameCartTab: undefined,
45
- classNameCartTabPanel: undefined,
46
- classNameCartTitle: undefined,
47
- classNameCartTotalContainer: undefined,
48
- classNameCartTotalItem: undefined,
49
- classNameCartTotalItemPrice: undefined,
50
- classNameClearCartContainer: undefined,
51
- classNameClearCartText: undefined,
52
- classNameListClientInfo: undefined,
53
- classNameListContainer: undefined,
54
- classNameListItem: undefined,
55
- classNameList: undefined,
56
- classNameListInline: undefined,
57
- classNameListUnstyled: undefined,
58
- classNameLoadingTemplate: undefined,
59
- classNameLoadingTemplateContainer: undefined,
60
- classNameNoItems: undefined,
61
- classNameShipmentOption: undefined,
62
- classNameTable: undefined,
63
- classNameTableContainer: undefined,
64
- classNameVariationsList: undefined,
65
- customSuccessMessage: undefined,
66
- domainId: undefined,
67
- googlePlacesLoaded: false,
68
- includeTheme: false,
69
- initialiseCart: true,
70
- onClickClose: undefined,
71
- productFormClassNames: {},
72
- showUserTermsAndConditions: undefined,
73
- urlApi: undefined,
74
- urlFrontend: undefined,
75
- urlTrackingPage: undefined,
1
+ import * as React from 'react';
2
+ import { createContext, useContext, useState } from 'react';
3
+ import { jsx as _jsx } from "react/jsx-runtime";
4
+ const CartContext = /*#__PURE__*/createContext({
5
+ classNameAlertError: undefined,
6
+ classNameAlertInfo: undefined,
7
+ classNameAlertSuccess: undefined,
8
+ classNameAlertWarning: undefined,
9
+ classNameBtn: undefined,
10
+ classNameBtnBack: undefined,
11
+ classNameBtnCartClear: undefined,
12
+ classNameBtnClose: undefined,
13
+ classNameBtnDanger: undefined,
14
+ classNameBtnDefault: undefined,
15
+ classNameBtnDownloadInvoice: undefined,
16
+ classNameBtnPrimary: undefined,
17
+ classNameBtnLink: undefined,
18
+ classNameBtnNext: undefined,
19
+ classNameBtnNextComplete: undefined,
20
+ classNameBtnPay: undefined,
21
+ classNameCartBody: undefined,
22
+ classNameCartFooter: undefined,
23
+ classNameCartFormCheckbox: undefined,
24
+ classNameCartFormGroup: undefined,
25
+ classNameCartFormGroupCheckbox: undefined,
26
+ classNameCartFormInput: undefined,
27
+ classNameCartInputError: undefined,
28
+ classNameCartFormLabelCheckbox: undefined,
29
+ classNameCartRow: undefined,
30
+ classNameCartRowColumn: undefined,
31
+ classNameCartTabItem: undefined,
32
+ classNameCartTabItemLink: undefined,
33
+ classNameCartGoogleSuggestList: undefined,
34
+ classNameCartGoogleSuggestListItem: undefined,
35
+ classNameCartHeader: undefined,
36
+ classNameCartItemFeatureImage: undefined,
37
+ classNameCartItemInfo: undefined,
38
+ classNameCartItemInfoCell: undefined,
39
+ classNameCartItemInfoCellRight: undefined,
40
+ classNameCartItemInfoContainer: undefined,
41
+ classNameCartNav: undefined,
42
+ classNameCartTab: undefined,
43
+ classNameCartTabPanel: undefined,
44
+ classNameCartTitle: undefined,
45
+ classNameCartTotalContainer: undefined,
46
+ classNameCartTotalItem: undefined,
47
+ classNameCartTotalItemPrice: undefined,
48
+ classNameClearCartContainer: undefined,
49
+ classNameClearCartText: undefined,
50
+ classNameListClientInfo: undefined,
51
+ classNameListContainer: undefined,
52
+ classNameListItem: undefined,
53
+ classNameList: undefined,
54
+ classNameListInline: undefined,
55
+ classNameListUnstyled: undefined,
56
+ classNameLoadingTemplate: undefined,
57
+ classNameLoadingTemplateContainer: undefined,
58
+ classNameNoItems: undefined,
59
+ classNameShipmentOption: undefined,
60
+ classNameTable: undefined,
61
+ classNameTableContainer: undefined,
62
+ classNameVariationsList: undefined,
63
+ customSuccessMessage: undefined,
64
+ domainId: undefined,
65
+ googlePlacesLoaded: false,
66
+ includeTheme: false,
67
+ initialiseCart: true,
68
+ onClickClose: undefined,
69
+ productFormClassNames: {},
70
+ showUserTermsAndConditions: undefined,
71
+ urlApi: undefined,
72
+ urlFrontend: undefined,
73
+ urlTrackingPage: undefined
76
74
  });
77
- const useCartContext = () => (0, react_1.useContext)(CartContext);
78
- exports.useCartContext = useCartContext;
79
- const CartProvider = ({ children, classNameAlertError = 'alert alert-danger', classNameAlertInfo = 'alert alert-info', classNameAlertSuccess = 'alert alert-success', classNameAlertWarning = 'alert alert-warning', classNameBtn = 'btn', classNameBtnBack = 'btn-lg btn-default pull-left', classNameBtnCartClear = 'btn-lg btn-danger mr-auto', classNameBtnClose = 'btn-close', classNameBtnDanger = 'btn btn-md btn-danger', classNameBtnDefault = 'btn btn-md btn-default', classNameBtnDownloadInvoice = 'btn btn-lg btn-primary', classNameBtnPrimary = 'btn btn-md btn-primary', classNameBtnLink = 'btn-md btn-link', classNameBtnNext = 'btn-lg btn-primary', classNameBtnNextComplete = 'btn-lg btn-success', classNameBtnPay = 'btn-lg btn-primary width-full', classNameCartBody = 'merchi-cart-body', classNameCartFooter = 'merchi-cart-footer', // add to sass
80
- classNameCartFormCheckbox = 'form-check-input', classNameCartFormGroup = 'form-group', classNameCartFormGroupCheckbox = 'form-check', classNameCartFormInput = 'form-control', classNameCartFormLabelCheckbox = '', classNameCartInputError = 'text-danger', classNameCartNav = 'nav merchi-nav-tabs merchi-nav merchi-nav-fill merchi-nav-pills', classNameCartRow = 'merchi-row', classNameCartRowColumn = 'merchi-column', classNameCartTabItem = 'nav-item merchi-nav-item', classNameCartTabItemLink = 'merchi-nav-link', classNameCartGoogleSuggestList = 'list-group m-b-0', classNameCartGoogleSuggestListItem = 'list-group-item cursor-pointer', classNameCartHeader = 'merchi-cart-header', // add to sass
81
- classNameCartItemFeatureImage = 'img-rounded m-10', classNameCartItemInfo = 'text-muted font-weight-normal font-italic', classNameCartItemInfoCell = 'border-0 align-middle', classNameCartItemInfoCellRight = 'border-0 align-middle text-right', classNameCartItemInfoContainer = 'ml-3 d-inline-block align-middle', classNameCartTab = 'merchi-tab-content', classNameCartTabPanel = 'merchi-tab-panel', classNameCartTitle = 'merchi-cart-title', // add to sass // paddingBottom: '0.5rem', paddingTop: '0.5rem', textAlign: 'center',
82
- classNameCartTotalContainer = 'merchi-cart-total-container', // add to sass
83
- classNameCartTotalItem = 'merchi-cart-total-item', // add to sass; original text-right cart-cell-width-subtotal
84
- classNameCartTotalItemPrice = 'merchi-cart-total-item-price', // add to sass: original text-right
85
- classNameClearCartContainer = 'merchi-cart-clear-container', classNameClearCartText = 'merchi-cart-clear-text', classNameListClientInfo = 'merchi-cart-client-info-list', // add to sass: original className='list-unstyled text-center' fontSize: '15px', listStyle: 'none', paddingBottom: '0px', paddingLeft: '0px'
86
- classNameList = 'list-group', classNameListInline = 'list-inline', classNameListUnstyled = 'list-unstyled', classNameListContainer = 'pb-2', classNameListItem = 'list-group-item', classNameLoadingTemplate = 'merchi-loading-template', classNameLoadingTemplateContainer = 'merchi-loading-template-container', classNameNoItems = 'merchi-no-cart-items', classNameShipmentOption = 'merchi-shipment-option', classNameTable = 'table table-bordered', classNameTableContainer = 'table-responsive', classNameVariationsList = 'list-unstyled list-inline', customSuccessMessage, domainId, includeTheme = false, initialiseCart = true, onClickClose = () => console.log('close merchi cart!'), productFormClassNames = {}, showUserTermsAndConditions = true, urlApi = 'https://api.merchi.co/v6/', urlFrontend = 'https://merchi.co/', urlTrackingPage, }) => {
87
- const [googlePlacesLoaded, setGoogleMapsLoaded] = (0, react_1.useState)(false);
88
- // Persistent callback setup
89
- if (typeof window !== 'undefined') {
90
- if (!window.googleMapsScriptLoaded) {
91
- window.googleMapsScriptLoaded = () => {
92
- setGoogleMapsLoaded(true);
93
- };
94
- }
75
+ export const useCartContext = () => useContext(CartContext);
76
+ const CartProvider = _ref => {
77
+ let {
78
+ children,
79
+ classNameAlertError = 'alert alert-danger',
80
+ classNameAlertInfo = 'alert alert-info',
81
+ classNameAlertSuccess = 'alert alert-success',
82
+ classNameAlertWarning = 'alert alert-warning',
83
+ classNameBtn = 'btn',
84
+ classNameBtnBack = 'btn-lg btn-default pull-left',
85
+ classNameBtnCartClear = 'btn-lg btn-danger mr-auto',
86
+ classNameBtnClose = 'btn-close',
87
+ classNameBtnDanger = 'btn btn-md btn-danger',
88
+ classNameBtnDefault = 'btn btn-md btn-default',
89
+ classNameBtnDownloadInvoice = 'btn btn-lg btn-primary',
90
+ classNameBtnPrimary = 'btn btn-md btn-primary',
91
+ classNameBtnLink = 'btn-md btn-link',
92
+ classNameBtnNext = 'btn-lg btn-primary',
93
+ classNameBtnNextComplete = 'btn-lg btn-success',
94
+ classNameBtnPay = 'btn-lg btn-primary width-full',
95
+ classNameCartBody = 'merchi-cart-body',
96
+ classNameCartFooter = 'merchi-cart-footer',
97
+ // add to sass
98
+ classNameCartFormCheckbox = 'form-check-input',
99
+ classNameCartFormGroup = 'form-group',
100
+ classNameCartFormGroupCheckbox = 'form-check',
101
+ classNameCartFormInput = 'form-control',
102
+ classNameCartFormLabelCheckbox = '',
103
+ classNameCartInputError = 'text-danger',
104
+ classNameCartNav = 'nav merchi-nav-tabs merchi-nav merchi-nav-fill merchi-nav-pills',
105
+ classNameCartRow = 'merchi-row',
106
+ classNameCartRowColumn = 'merchi-column',
107
+ classNameCartTabItem = 'nav-item merchi-nav-item',
108
+ classNameCartTabItemLink = 'merchi-nav-link',
109
+ classNameCartGoogleSuggestList = 'list-group m-b-0',
110
+ classNameCartGoogleSuggestListItem = 'list-group-item cursor-pointer',
111
+ classNameCartHeader = 'merchi-cart-header',
112
+ // add to sass
113
+ classNameCartItemFeatureImage = 'img-rounded m-10',
114
+ classNameCartItemInfo = 'text-muted font-weight-normal font-italic',
115
+ classNameCartItemInfoCell = 'border-0 align-middle',
116
+ classNameCartItemInfoCellRight = 'border-0 align-middle text-right',
117
+ classNameCartItemInfoContainer = 'ml-3 d-inline-block align-middle',
118
+ classNameCartTab = 'merchi-tab-content',
119
+ classNameCartTabPanel = 'merchi-tab-panel',
120
+ classNameCartTitle = 'merchi-cart-title',
121
+ // add to sass // paddingBottom: '0.5rem', paddingTop: '0.5rem', textAlign: 'center',
122
+ classNameCartTotalContainer = 'merchi-cart-total-container',
123
+ // add to sass
124
+ classNameCartTotalItem = 'merchi-cart-total-item',
125
+ // add to sass; original text-right cart-cell-width-subtotal
126
+ classNameCartTotalItemPrice = 'merchi-cart-total-item-price',
127
+ // add to sass: original text-right
128
+ classNameClearCartContainer = 'merchi-cart-clear-container',
129
+ classNameClearCartText = 'merchi-cart-clear-text',
130
+ classNameListClientInfo = 'merchi-cart-client-info-list',
131
+ // add to sass: original className='list-unstyled text-center' fontSize: '15px', listStyle: 'none', paddingBottom: '0px', paddingLeft: '0px'
132
+ classNameList = 'list-group',
133
+ classNameListInline = 'list-inline',
134
+ classNameListUnstyled = 'list-unstyled',
135
+ classNameListContainer = 'pb-2',
136
+ classNameListItem = 'list-group-item',
137
+ classNameLoadingTemplate = 'merchi-loading-template',
138
+ classNameLoadingTemplateContainer = 'merchi-loading-template-container',
139
+ classNameNoItems = 'merchi-no-cart-items',
140
+ classNameShipmentOption = 'merchi-shipment-option',
141
+ classNameTable = 'table table-bordered',
142
+ classNameTableContainer = 'table-responsive',
143
+ classNameVariationsList = 'list-unstyled list-inline',
144
+ customSuccessMessage,
145
+ domainId,
146
+ includeTheme = false,
147
+ initialiseCart = true,
148
+ onClickClose = () => console.log('close merchi cart!'),
149
+ productFormClassNames = {},
150
+ showUserTermsAndConditions = true,
151
+ urlApi = 'https://api.merchi.co/v6/',
152
+ urlFrontend = 'https://merchi.co/',
153
+ urlTrackingPage
154
+ } = _ref;
155
+ const [googlePlacesLoaded, setGoogleMapsLoaded] = useState(false);
156
+ // Persistent callback setup
157
+ if (typeof window !== 'undefined') {
158
+ if (!window.googleMapsScriptLoaded) {
159
+ window.googleMapsScriptLoaded = () => {
160
+ setGoogleMapsLoaded(true);
161
+ };
95
162
  }
96
- return ((0, jsx_runtime_1.jsx)(CartContext.Provider, { value: {
97
- classNameAlertError,
98
- classNameAlertInfo,
99
- classNameAlertSuccess,
100
- classNameAlertWarning,
101
- classNameBtn,
102
- classNameBtnBack,
103
- classNameBtnCartClear,
104
- classNameBtnClose,
105
- classNameBtnDanger,
106
- classNameBtnDefault,
107
- classNameBtnDownloadInvoice,
108
- classNameBtnPrimary,
109
- classNameBtnLink,
110
- classNameBtnNext,
111
- classNameBtnNextComplete,
112
- classNameBtnPay,
113
- classNameCartBody,
114
- classNameCartFooter,
115
- classNameCartFormCheckbox,
116
- classNameCartFormGroup,
117
- classNameCartFormGroupCheckbox,
118
- classNameCartFormInput,
119
- classNameCartFormLabelCheckbox,
120
- classNameCartInputError,
121
- classNameCartNav,
122
- classNameCartRow,
123
- classNameCartRowColumn,
124
- classNameCartTabItem,
125
- classNameCartTabItemLink,
126
- classNameCartGoogleSuggestList,
127
- classNameCartGoogleSuggestListItem,
128
- classNameCartHeader,
129
- classNameCartItemFeatureImage,
130
- classNameCartItemInfo,
131
- classNameCartItemInfoCell,
132
- classNameCartItemInfoCellRight,
133
- classNameCartItemInfoContainer,
134
- classNameCartTab,
135
- classNameCartTabPanel,
136
- classNameCartTitle,
137
- classNameCartTotalContainer,
138
- classNameCartTotalItem,
139
- classNameCartTotalItemPrice,
140
- classNameClearCartContainer,
141
- classNameClearCartText,
142
- classNameListClientInfo,
143
- classNameList,
144
- classNameListInline,
145
- classNameListContainer,
146
- classNameListItem,
147
- classNameListUnstyled,
148
- classNameLoadingTemplate,
149
- classNameLoadingTemplateContainer,
150
- classNameNoItems,
151
- classNameShipmentOption,
152
- classNameTable,
153
- classNameTableContainer,
154
- classNameVariationsList,
155
- customSuccessMessage,
156
- domainId,
157
- googlePlacesLoaded,
158
- includeTheme,
159
- initialiseCart,
160
- onClickClose,
161
- productFormClassNames,
162
- showUserTermsAndConditions,
163
- urlApi,
164
- urlFrontend,
165
- urlTrackingPage,
166
- }, children: children }));
163
+ }
164
+ return /*#__PURE__*/_jsx(CartContext.Provider, {
165
+ value: {
166
+ classNameAlertError,
167
+ classNameAlertInfo,
168
+ classNameAlertSuccess,
169
+ classNameAlertWarning,
170
+ classNameBtn,
171
+ classNameBtnBack,
172
+ classNameBtnCartClear,
173
+ classNameBtnClose,
174
+ classNameBtnDanger,
175
+ classNameBtnDefault,
176
+ classNameBtnDownloadInvoice,
177
+ classNameBtnPrimary,
178
+ classNameBtnLink,
179
+ classNameBtnNext,
180
+ classNameBtnNextComplete,
181
+ classNameBtnPay,
182
+ classNameCartBody,
183
+ classNameCartFooter,
184
+ classNameCartFormCheckbox,
185
+ classNameCartFormGroup,
186
+ classNameCartFormGroupCheckbox,
187
+ classNameCartFormInput,
188
+ classNameCartFormLabelCheckbox,
189
+ classNameCartInputError,
190
+ classNameCartNav,
191
+ classNameCartRow,
192
+ classNameCartRowColumn,
193
+ classNameCartTabItem,
194
+ classNameCartTabItemLink,
195
+ classNameCartGoogleSuggestList,
196
+ classNameCartGoogleSuggestListItem,
197
+ classNameCartHeader,
198
+ classNameCartItemFeatureImage,
199
+ classNameCartItemInfo,
200
+ classNameCartItemInfoCell,
201
+ classNameCartItemInfoCellRight,
202
+ classNameCartItemInfoContainer,
203
+ classNameCartTab,
204
+ classNameCartTabPanel,
205
+ classNameCartTitle,
206
+ classNameCartTotalContainer,
207
+ classNameCartTotalItem,
208
+ classNameCartTotalItemPrice,
209
+ classNameClearCartContainer,
210
+ classNameClearCartText,
211
+ classNameListClientInfo,
212
+ classNameList,
213
+ classNameListInline,
214
+ classNameListContainer,
215
+ classNameListItem,
216
+ classNameListUnstyled,
217
+ classNameLoadingTemplate,
218
+ classNameLoadingTemplateContainer,
219
+ classNameNoItems,
220
+ classNameShipmentOption,
221
+ classNameTable,
222
+ classNameTableContainer,
223
+ classNameVariationsList,
224
+ customSuccessMessage,
225
+ domainId,
226
+ googlePlacesLoaded,
227
+ includeTheme,
228
+ initialiseCart,
229
+ onClickClose,
230
+ productFormClassNames,
231
+ showUserTermsAndConditions,
232
+ urlApi,
233
+ urlFrontend,
234
+ urlTrackingPage
235
+ },
236
+ children: children
237
+ });
167
238
  };
168
- exports.default = CartProvider;
239
+ export default CartProvider;