@pelcro/react-pelcro-js 3.1.0-beta.9 → 3.2.0-beta.2

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/dist/index.cjs.js CHANGED
@@ -7094,8 +7094,8 @@ const saveToMetadataButton = new SaveToMetadataButtonClass();
7094
7094
 
7095
7095
  let e={data:""},t=t=>"undefined"!=typeof window?((t?t.querySelector("#_goober"):window._goober)||Object.assign((t||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:t||e,l=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(})/g,a=/\/\*[^]*?\*\/|\s\s+|\n/g,n=(e,t)=>{let r,l="",a="",o="";for(let c in e){let s=e[c];"object"==typeof s?(r=t?t.replace(/([^,])+/g,e=>c.replace(/([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)):c,a+="@"==c[0]?"f"==c[1]?n(s,c):c+"{"+n(s,"k"==c[1]?"":t)+"}":n(s,r)):"@"==c[0]&&"i"==c[1]?l=c+" "+s+";":(c=c.replace(/[A-Z]/g,"-$&").toLowerCase(),o+=n.p?n.p(c,s):c+":"+s+";");}return o[0]?(r=t?t+"{"+o+"}":o,l+r+a):l+a},o={},c=e=>{let t="";for(let r in e)t+=r+("object"==typeof e[r]?c(e[r]):e[r]);return t},s=(e,t,r,s,i)=>{let p="object"==typeof e?c(e):e,u=o[p]||(o[p]=(e=>{let t=0,r=11;for(;t<e.length;)r=101*r+e.charCodeAt(t++)>>>0;return "go"+r})(p));if(!o[u]){let t="object"==typeof e?e:(e=>{let t,r=[{}];for(;t=l.exec(e.replace(a,""));)t[4]&&r.shift(),t[3]?r.unshift(r[0][t[3]]=r[0][t[3]]||{}):t[4]||(r[0][t[1]]=t[2]);return r[0]})(e);o[u]=n(i?{["@keyframes "+u]:t}:t,r?"":"."+u);}return ((e,t,r)=>{-1==t.data.indexOf(e)&&(t.data=r?e+t.data:t.data+e);})(o[u],t,s),u},i=(e,t,r)=>e.reduce((e,l,a)=>{let o=t[a];if(o&&o.call){let e=o(r),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;o=t?"."+t:e&&"object"==typeof e?e.props?"":n(e,""):e;}return e+l+(null==o?"":o)},"");function p(e){let r=this||{},l=e.call?e(r.p):e;return s(l.unshift?l.raw?i(l,[].slice.call(arguments,1),r.p):l.reduce((e,t)=>t?Object.assign(e,t.call?t(r.p):t):e,{}):l,t(r.target),r.g,r.o,r.k)}let u,f,d;p.bind({g:1});let b=p.bind({k:1});function h(e,t,r,l){n.p=t,u=e,f=r,d=l;}function y(e,t){let r=this||{};return function(){let l=arguments;function a(n,o){let c=Object.assign({},n),s=c.className||a.className;r.p=Object.assign({theme:f&&f()},c),r.o=/ *go\d+/.test(s),c.className=p.apply(r,l)+(s?" "+s:""),t&&(c.ref=o);let i=c.as||e;return d&&i[0]&&d(c),u(i,c)}return t?t(a):a}}
7096
7096
 
7097
- function _extends$y() {
7098
- _extends$y = Object.assign || function (target) {
7097
+ function _extends$z() {
7098
+ _extends$z = Object.assign || function (target) {
7099
7099
  for (var i = 1; i < arguments.length; i++) {
7100
7100
  var source = arguments[i];
7101
7101
 
@@ -7109,7 +7109,7 @@ function _extends$y() {
7109
7109
  return target;
7110
7110
  };
7111
7111
 
7112
- return _extends$y.apply(this, arguments);
7112
+ return _extends$z.apply(this, arguments);
7113
7113
  }
7114
7114
 
7115
7115
  function _taggedTemplateLiteralLoose(strings, raw) {
@@ -7199,7 +7199,7 @@ var clearFromRemoveQueue = function clearFromRemoveQueue(toastId) {
7199
7199
  var reducer = function reducer(state, action) {
7200
7200
  switch (action.type) {
7201
7201
  case ActionType.ADD_TOAST:
7202
- return _extends$y({}, state, {
7202
+ return _extends$z({}, state, {
7203
7203
  toasts: [action.toast].concat(state.toasts).slice(0, TOAST_LIMIT)
7204
7204
  });
7205
7205
 
@@ -7209,9 +7209,9 @@ var reducer = function reducer(state, action) {
7209
7209
  clearFromRemoveQueue(action.toast.id);
7210
7210
  }
7211
7211
 
7212
- return _extends$y({}, state, {
7212
+ return _extends$z({}, state, {
7213
7213
  toasts: state.toasts.map(function (t) {
7214
- return t.id === action.toast.id ? _extends$y({}, t, action.toast) : t;
7214
+ return t.id === action.toast.id ? _extends$z({}, t, action.toast) : t;
7215
7215
  })
7216
7216
  });
7217
7217
 
@@ -7238,9 +7238,9 @@ var reducer = function reducer(state, action) {
7238
7238
  });
7239
7239
  }
7240
7240
 
7241
- return _extends$y({}, state, {
7241
+ return _extends$z({}, state, {
7242
7242
  toasts: state.toasts.map(function (t) {
7243
- return t.id === toastId || toastId === undefined ? _extends$y({}, t, {
7243
+ return t.id === toastId || toastId === undefined ? _extends$z({}, t, {
7244
7244
  visible: false
7245
7245
  }) : t;
7246
7246
  })
@@ -7248,28 +7248,28 @@ var reducer = function reducer(state, action) {
7248
7248
 
7249
7249
  case ActionType.REMOVE_TOAST:
7250
7250
  if (action.toastId === undefined) {
7251
- return _extends$y({}, state, {
7251
+ return _extends$z({}, state, {
7252
7252
  toasts: []
7253
7253
  });
7254
7254
  }
7255
7255
 
7256
- return _extends$y({}, state, {
7256
+ return _extends$z({}, state, {
7257
7257
  toasts: state.toasts.filter(function (t) {
7258
7258
  return t.id !== action.toastId;
7259
7259
  })
7260
7260
  });
7261
7261
 
7262
7262
  case ActionType.START_PAUSE:
7263
- return _extends$y({}, state, {
7263
+ return _extends$z({}, state, {
7264
7264
  pausedAt: action.time
7265
7265
  });
7266
7266
 
7267
7267
  case ActionType.END_PAUSE:
7268
7268
  var diff = action.time - (state.pausedAt || 0);
7269
- return _extends$y({}, state, {
7269
+ return _extends$z({}, state, {
7270
7270
  pausedAt: undefined,
7271
7271
  toasts: state.toasts.map(function (t) {
7272
- return _extends$y({}, t, {
7272
+ return _extends$z({}, t, {
7273
7273
  pauseDuration: t.pauseDuration + diff
7274
7274
  });
7275
7275
  })
@@ -7316,12 +7316,12 @@ var useStore = function useStore(toastOptions) {
7316
7316
  var mergedToasts = state.toasts.map(function (t) {
7317
7317
  var _toastOptions$t$type, _toastOptions, _toastOptions$t$type2;
7318
7318
 
7319
- return _extends$y({}, toastOptions, toastOptions[t.type], t, {
7319
+ return _extends$z({}, toastOptions, toastOptions[t.type], t, {
7320
7320
  duration: t.duration || ((_toastOptions$t$type = toastOptions[t.type]) == null ? void 0 : _toastOptions$t$type.duration) || ((_toastOptions = toastOptions) == null ? void 0 : _toastOptions.duration) || defaultTimeouts[t.type],
7321
- style: _extends$y({}, toastOptions.style, (_toastOptions$t$type2 = toastOptions[t.type]) == null ? void 0 : _toastOptions$t$type2.style, t.style)
7321
+ style: _extends$z({}, toastOptions.style, (_toastOptions$t$type2 = toastOptions[t.type]) == null ? void 0 : _toastOptions$t$type2.style, t.style)
7322
7322
  });
7323
7323
  });
7324
- return _extends$y({}, state, {
7324
+ return _extends$z({}, state, {
7325
7325
  toasts: mergedToasts
7326
7326
  });
7327
7327
  };
@@ -7331,7 +7331,7 @@ var createToast = function createToast(message, type, opts) {
7331
7331
  type = 'blank';
7332
7332
  }
7333
7333
 
7334
- return _extends$y({
7334
+ return _extends$z({
7335
7335
  createdAt: Date.now(),
7336
7336
  visible: true,
7337
7337
  type: type,
@@ -7381,14 +7381,14 @@ toast.remove = function (toastId) {
7381
7381
  };
7382
7382
 
7383
7383
  toast.promise = function (promise, msgs, opts) {
7384
- var id = toast.loading(msgs.loading, _extends$y({}, opts, opts == null ? void 0 : opts.loading));
7384
+ var id = toast.loading(msgs.loading, _extends$z({}, opts, opts == null ? void 0 : opts.loading));
7385
7385
  promise.then(function (p) {
7386
- toast.success(resolveValue(msgs.success, p), _extends$y({
7386
+ toast.success(resolveValue(msgs.success, p), _extends$z({
7387
7387
  id: id
7388
7388
  }, opts, opts == null ? void 0 : opts.success));
7389
7389
  return p;
7390
7390
  })["catch"](function (e) {
7391
- toast.error(resolveValue(msgs.error, e), _extends$y({
7391
+ toast.error(resolveValue(msgs.error, e), _extends$z({
7392
7392
  id: id
7393
7393
  }, opts, opts == null ? void 0 : opts.error));
7394
7394
  });
@@ -7727,7 +7727,7 @@ var ToastBar = /*#__PURE__*/React.memo(function (_ref2) {
7727
7727
  var message = React.createElement(Message, Object.assign({}, toast.ariaProps), resolveValue(toast.message, toast));
7728
7728
  return React.createElement(ToastBarBase, {
7729
7729
  className: toast.className,
7730
- style: _extends$y({}, animationStyle, style, toast.style)
7730
+ style: _extends$z({}, animationStyle, style, toast.style)
7731
7731
  }, typeof children === 'function' ? children({
7732
7732
  icon: icon,
7733
7733
  message: message
@@ -7757,7 +7757,7 @@ var getPositionStyle = function getPositionStyle(position, offset) {
7757
7757
  } : position.includes('right') ? {
7758
7758
  justifyContent: 'flex-end'
7759
7759
  } : {};
7760
- return _extends$y({
7760
+ return _extends$z({
7761
7761
  left: 0,
7762
7762
  right: 0,
7763
7763
  display: 'flex',
@@ -7784,7 +7784,7 @@ var Toaster = function Toaster(_ref) {
7784
7784
  handlers = _useToaster.handlers;
7785
7785
 
7786
7786
  return React.createElement("div", {
7787
- style: _extends$y({
7787
+ style: _extends$z({
7788
7788
  position: 'fixed',
7789
7789
  zIndex: 9999,
7790
7790
  top: DEFAULT_OFFSET,
@@ -7819,82 +7819,82 @@ var Toaster = function Toaster(_ref) {
7819
7819
  }));
7820
7820
  };
7821
7821
 
7822
- var _path$v;
7822
+ var _path$w;
7823
7823
 
7824
- function _extends$x() { _extends$x = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$x.apply(this, arguments); }
7824
+ function _extends$y() { _extends$y = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$y.apply(this, arguments); }
7825
7825
 
7826
7826
  function SvgCheckSolid(props) {
7827
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$x({
7827
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$y({
7828
7828
  xmlns: "http://www.w3.org/2000/svg",
7829
7829
  className: "h-5 w-5",
7830
7830
  viewBox: "0 0 20 20",
7831
7831
  fill: "currentColor"
7832
- }, props), _path$v || (_path$v = /*#__PURE__*/React__namespace.createElement("path", {
7832
+ }, props), _path$w || (_path$w = /*#__PURE__*/React__namespace.createElement("path", {
7833
7833
  fillRule: "evenodd",
7834
7834
  d: "M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",
7835
7835
  clipRule: "evenodd"
7836
7836
  })));
7837
7837
  }
7838
7838
 
7839
- var _path$u;
7839
+ var _path$v;
7840
7840
 
7841
- function _extends$w() { _extends$w = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$w.apply(this, arguments); }
7841
+ function _extends$x() { _extends$x = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$x.apply(this, arguments); }
7842
7842
 
7843
7843
  function SvgXIcon(props) {
7844
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$w({
7844
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$x({
7845
7845
  xmlns: "http://www.w3.org/2000/svg",
7846
7846
  viewBox: "0 0 20 20",
7847
7847
  fill: "currentColor"
7848
- }, props), _path$u || (_path$u = /*#__PURE__*/React__namespace.createElement("path", {
7848
+ }, props), _path$v || (_path$v = /*#__PURE__*/React__namespace.createElement("path", {
7849
7849
  fill: "evenodd",
7850
7850
  d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",
7851
7851
  clipRule: "evenodd"
7852
7852
  })));
7853
7853
  }
7854
7854
 
7855
- var _path$t;
7855
+ var _path$u;
7856
7856
 
7857
- function _extends$v() { _extends$v = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$v.apply(this, arguments); }
7857
+ function _extends$w() { _extends$w = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$w.apply(this, arguments); }
7858
7858
 
7859
7859
  function SvgXIconSolid(props) {
7860
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$v({
7860
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$w({
7861
7861
  className: "plc-w-4 plc-h-4",
7862
7862
  fill: "currentColor",
7863
7863
  xmlns: "http://www.w3.org/2000/svg",
7864
7864
  viewBox: "0 0 100 100"
7865
- }, props), _path$t || (_path$t = /*#__PURE__*/React__namespace.createElement("path", {
7865
+ }, props), _path$u || (_path$u = /*#__PURE__*/React__namespace.createElement("path", {
7866
7866
  d: "M94.842 48.408c0 24.852-20.148 44.999-45.002 44.999-24.851 0-44.997-20.146-44.997-44.999 0-24.854 20.146-45 44.997-45 24.853 0 45.002 20.146 45.002 45zM71.073 64.841L54.73 48.497l16.344-16.344-4.979-4.979-16.343 16.345-16.343-16.344-4.799 4.799 16.344 16.344L28.61 64.661l4.979 4.978 16.344-16.344 16.343 16.344 4.797-4.798z"
7867
7867
  })));
7868
7868
  }
7869
7869
 
7870
- var _path$s;
7870
+ var _path$t;
7871
7871
 
7872
- function _extends$u() { _extends$u = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$u.apply(this, arguments); }
7872
+ function _extends$v() { _extends$v = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$v.apply(this, arguments); }
7873
7873
 
7874
7874
  function SvgExclamation(props) {
7875
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$u({
7875
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$v({
7876
7876
  className: "plc-w-4 plc-h-4 plc-mr-1",
7877
7877
  xmlns: "http://www.w3.org/2000/svg",
7878
7878
  viewBox: "0 0 20 20",
7879
7879
  fill: "currentColor"
7880
- }, props), _path$s || (_path$s = /*#__PURE__*/React__namespace.createElement("path", {
7880
+ }, props), _path$t || (_path$t = /*#__PURE__*/React__namespace.createElement("path", {
7881
7881
  fillRule: "evenodd",
7882
7882
  d: "M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z",
7883
7883
  clipRule: "evenodd"
7884
7884
  })));
7885
7885
  }
7886
7886
 
7887
- var _path$r, _path2$4;
7887
+ var _path$s, _path2$4;
7888
7888
 
7889
- function _extends$t() { _extends$t = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$t.apply(this, arguments); }
7889
+ function _extends$u() { _extends$u = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$u.apply(this, arguments); }
7890
7890
 
7891
7891
  function SvgSpinner(props) {
7892
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$t({
7892
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$u({
7893
7893
  className: "plc-animate-spin",
7894
7894
  viewBox: "0 0 24 24",
7895
7895
  fill: "currentColor",
7896
7896
  xmlns: "http://www.w3.org/2000/svg"
7897
- }, props), _path$r || (_path$r = /*#__PURE__*/React__namespace.createElement("path", {
7897
+ }, props), _path$s || (_path$s = /*#__PURE__*/React__namespace.createElement("path", {
7898
7898
  opacity: 0.2,
7899
7899
  fill: "evenodd",
7900
7900
  clipRule: "evenodd",
@@ -8629,6 +8629,7 @@ var pure_1 = pure.loadStripe;
8629
8629
  * @param {Object} error Error object
8630
8630
  * @return {string}
8631
8631
  */
8632
+
8632
8633
  const getErrorMessages = error => {
8633
8634
  var _error$error, _error$response, _error$response$data, _error$response3, _error$response3$data, _error$response3$data2, _error$response5, _error$response5$data;
8634
8635
 
@@ -8683,6 +8684,15 @@ const debounce = (func, waitTime) => {
8683
8684
  timeout = setTimeout(later, waitTime);
8684
8685
  };
8685
8686
  };
8687
+ function getSiteCardProcessor() {
8688
+ var _window$Pelcro$site$r;
8689
+
8690
+ if ((_window$Pelcro$site$r = window.Pelcro.site.read()) !== null && _window$Pelcro$site$r !== void 0 && _window$Pelcro$site$r.vantiv_pay_page_id) {
8691
+ return "vantiv";
8692
+ }
8693
+
8694
+ return "stripe";
8695
+ }
8686
8696
 
8687
8697
  /**
8688
8698
  * @typedef {Object} OptionsType
@@ -8763,13 +8773,26 @@ const loadPaymentSDKs = () => {
8763
8773
  if (!window.Stripe) {
8764
8774
  pure_1(window.Pelcro.environment.stripe);
8765
8775
  }
8766
- }); // Load PayPal SDK's
8776
+ }); // Load PayPal SDKs
8767
8777
 
8768
8778
  const supportsPaypal = Boolean(window.Pelcro.site.read().braintree_tokenization);
8769
8779
 
8770
8780
  if (supportsPaypal) {
8771
8781
  window.Pelcro.helpers.loadSDK("https://js.braintreegateway.com/web/3.69.0/js/client.min.js", "braintree-sdk");
8772
8782
  window.Pelcro.helpers.loadSDK("https://js.braintreegateway.com/web/3.69.0/js/paypal-checkout.min.js", "braintree-paypal-sdk");
8783
+ } // Load Vantiv SDKs
8784
+
8785
+
8786
+ const supportsVantiv = Boolean(window.Pelcro.site.read().vantiv_pay_page_id);
8787
+
8788
+ if (supportsVantiv) {
8789
+ if (!window.jQuery) {
8790
+ window.Pelcro.helpers.loadSDK("https://code.jquery.com/jquery-3.6.0.slim.min.js", "vantiv-jquery-sdk");
8791
+ }
8792
+
8793
+ if (!window.EprotectIframeClient) {
8794
+ window.Pelcro.helpers.loadSDK("https://request.eprotect.vantivprelive.com/eProtect/js/eProtect-iframe-client.min.js", "vantiv-eprotect-sdk");
8795
+ }
8773
8796
  }
8774
8797
  };
8775
8798
  const loadAuth0SDK = () => {
@@ -8929,8 +8952,7 @@ const initViewFromURL = () => {
8929
8952
  }
8930
8953
 
8931
8954
  if (view === "invoice-details") {
8932
- // FIXME: commented out to remove from the release
8933
- return false; // return showInvoiceDetailsFromUrl();
8955
+ return showInvoiceDetailsFromUrl();
8934
8956
  }
8935
8957
 
8936
8958
  switchView(view);
@@ -9109,6 +9131,43 @@ const verifyEmailTokenFromUrl = () => {
9109
9131
  });
9110
9132
  };
9111
9133
 
9134
+ const showInvoiceDetailsFromUrl = () => {
9135
+ const {
9136
+ isAuthenticated,
9137
+ setInvoice,
9138
+ whenSiteReady,
9139
+ switchView
9140
+ } = usePelcro.getStore();
9141
+ whenSiteReady(() => {
9142
+ if (!isAuthenticated()) {
9143
+ return switchView("login");
9144
+ }
9145
+
9146
+ const invoiceId = window.Pelcro.helpers.getURLParameter("id");
9147
+ const wasSetSuccessfully = setInvoice(invoiceId);
9148
+
9149
+ if (!wasSetSuccessfully) {
9150
+ const errorMessage = i18next.t("messages:invalidInvoice", {
9151
+ returnObjects: true
9152
+ });
9153
+ return notify.error(errorMessage);
9154
+ }
9155
+
9156
+ const {
9157
+ invoice
9158
+ } = usePelcro.getStore();
9159
+
9160
+ if (invoice.total === 0) {
9161
+ const errorMessage = i18next.t("messages:zeroTotalInvoice", {
9162
+ returnObjects: true
9163
+ });
9164
+ return notify.error(errorMessage);
9165
+ }
9166
+
9167
+ return switchView("invoice-details");
9168
+ });
9169
+ };
9170
+
9112
9171
  const defaultOptions = {
9113
9172
  loadPaymentSDKs: true,
9114
9173
  loadAuth0SDK: true,
@@ -9878,16 +9937,16 @@ const LoginPassword = props => /*#__PURE__*/React__default['default'].createElem
9878
9937
  store: store$h
9879
9938
  }, props));
9880
9939
 
9881
- var _path$q;
9940
+ var _path$r;
9882
9941
 
9883
- function _extends$s() { _extends$s = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$s.apply(this, arguments); }
9942
+ function _extends$t() { _extends$t = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$t.apply(this, arguments); }
9884
9943
 
9885
9944
  function SvgCheck(props) {
9886
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$s({
9945
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$t({
9887
9946
  xmlns: "http://www.w3.org/2000/svg",
9888
9947
  fill: "currentColor",
9889
9948
  viewBox: "0 0 20 20"
9890
- }, props), _path$q || (_path$q = /*#__PURE__*/React__namespace.createElement("path", {
9949
+ }, props), _path$r || (_path$r = /*#__PURE__*/React__namespace.createElement("path", {
9891
9950
  fillRule: "evenodd",
9892
9951
  d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",
9893
9952
  clipRule: "evenodd"
@@ -10206,15 +10265,15 @@ function hasSecurityTokenEnabled$1() {
10206
10265
  return hasSecuritySdkLoaded;
10207
10266
  }
10208
10267
 
10209
- var _path$p;
10268
+ var _path$q;
10210
10269
 
10211
- function _extends$r() { _extends$r = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$r.apply(this, arguments); }
10270
+ function _extends$s() { _extends$s = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$s.apply(this, arguments); }
10212
10271
 
10213
10272
  function SvgFacebookLogo(props) {
10214
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$r({
10273
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$s({
10215
10274
  xmlns: "http://www.w3.org/2000/svg",
10216
10275
  viewBox: "88.428 12.828 107.543 207.085"
10217
- }, props), _path$p || (_path$p = /*#__PURE__*/React__namespace.createElement("path", {
10276
+ }, props), _path$q || (_path$q = /*#__PURE__*/React__namespace.createElement("path", {
10218
10277
  d: "M158.232 219.912v-94.461h31.707l4.747-36.813h-36.454V65.134c0-10.658 2.96-17.922 18.245-17.922l19.494-.009V14.278c-3.373-.447-14.944-1.449-28.406-1.449-28.106 0-47.348 17.155-47.348 48.661v27.149H88.428v36.813h31.788v94.461l38.016-.001z",
10219
10278
  fill: "#3c5a9a"
10220
10279
  })));
@@ -10287,15 +10346,15 @@ var googleLogin = createCommonjsModule(function (module, exports) {
10287
10346
  unwrapExports(googleLogin);
10288
10347
  var googleLogin_1 = googleLogin.GoogleLogin;
10289
10348
 
10290
- var _path$o, _path2$3, _path3$1, _path4;
10349
+ var _path$p, _path2$3, _path3$1, _path4;
10291
10350
 
10292
- function _extends$q() { _extends$q = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$q.apply(this, arguments); }
10351
+ function _extends$r() { _extends$r = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$r.apply(this, arguments); }
10293
10352
 
10294
10353
  function SvgGoogleLogo(props) {
10295
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$q({
10354
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$r({
10296
10355
  viewBox: "0 0 24 24",
10297
10356
  xmlns: "http://www.w3.org/2000/svg"
10298
- }, props), _path$o || (_path$o = /*#__PURE__*/React__namespace.createElement("path", {
10357
+ }, props), _path$p || (_path$p = /*#__PURE__*/React__namespace.createElement("path", {
10299
10358
  fill: "#4285F4",
10300
10359
  d: "M23.745 12.27c0-.79-.07-1.54-.19-2.27h-11.3v4.51h6.47c-.29 1.48-1.14 2.73-2.4 3.58v3h3.86c2.26-2.09 3.56-5.17 3.56-8.82z"
10301
10360
  })), _path2$3 || (_path2$3 = /*#__PURE__*/React__namespace.createElement("path", {
@@ -10372,15 +10431,15 @@ const GoogleLoginButton = ({
10372
10431
  }) : null;
10373
10432
  };
10374
10433
 
10375
- var _path$n;
10434
+ var _path$o;
10376
10435
 
10377
- function _extends$p() { _extends$p = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$p.apply(this, arguments); }
10436
+ function _extends$q() { _extends$q = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$q.apply(this, arguments); }
10378
10437
 
10379
10438
  function SvgAuth0Logo(props) {
10380
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$p({
10439
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$q({
10381
10440
  viewBox: "0 0 256 285",
10382
10441
  xmlns: "http://www.w3.org/2000/svg"
10383
- }, props), _path$n || (_path$n = /*#__PURE__*/React__namespace.createElement("path", {
10442
+ }, props), _path$o || (_path$o = /*#__PURE__*/React__namespace.createElement("path", {
10384
10443
  d: "M220.412 0h-92.415l28.562 89.006h92.416l-74.77 53.077 28.57 89.511c48.128-35.06 63.854-88.12 46.208-142.588L220.413 0zM7.018 89.006h92.416L127.997 0H35.589L7.019 89.006c-17.655 54.468-1.92 107.529 46.207 142.588l28.563-89.51-74.77-53.078zm46.208 142.588l74.77 52.97 74.77-52.97-74.77-53.847-74.77 53.847z"
10385
10444
  })));
10386
10445
  }
@@ -10556,15 +10615,15 @@ function LoginView(props) {
10556
10615
  }, /*#__PURE__*/React__default['default'].createElement(GoogleLoginButton, null), /*#__PURE__*/React__default['default'].createElement(FacebookLoginButton, null), /*#__PURE__*/React__default['default'].createElement(Auth0LoginButton, null))))));
10557
10616
  }
10558
10617
 
10559
- var _path$m, _path2$2, _path3;
10618
+ var _path$n, _path2$2, _path3;
10560
10619
 
10561
- function _extends$o() { _extends$o = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$o.apply(this, arguments); }
10620
+ function _extends$p() { _extends$p = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$p.apply(this, arguments); }
10562
10621
 
10563
10622
  function SvgPelcroAuthorship(props) {
10564
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$o({
10623
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$p({
10565
10624
  xmlns: "http://www.w3.org/2000/svg",
10566
10625
  viewBox: "0 -80.652 497.072 179.991"
10567
- }, props), _path$m || (_path$m = /*#__PURE__*/React__namespace.createElement("path", {
10626
+ }, props), _path$n || (_path$n = /*#__PURE__*/React__namespace.createElement("path", {
10568
10627
  fill: "none",
10569
10628
  stroke: "#4a4a4a",
10570
10629
  d: "M487.89 42.299c0 13.158-10.671 23.829-23.829 23.829H37.074c-13.162 0-23.832-10.671-23.832-23.829v-63.552c0-13.158 10.67-23.831 23.832-23.831H464.06c13.158 0 23.829 10.672 23.829 23.831l.001 63.552z"
@@ -12708,7 +12767,7 @@ var _generateUserError = /*#__PURE__*/new WeakMap();
12708
12767
  class Subscription {
12709
12768
  /**
12710
12769
  * Subscription service constructor
12711
- * @param {(StripeGateway|PaypalGateWay)} paymentGateway
12770
+ * @param {(StripeGateway|PaypalGateway|VantivGateway)} paymentGateway
12712
12771
  */
12713
12772
  constructor(paymentGateway) {
12714
12773
  _defineProperty$3(this, "execute", (options, callback) => {
@@ -12729,7 +12788,7 @@ class Subscription {
12729
12788
  _isPaymentGatewayInvalid.set(this, {
12730
12789
  writable: true,
12731
12790
  value: gateway => {
12732
- return gateway && !(gateway instanceof StripeGateway) && gateway && !(gateway instanceof PaypalGateWay);
12791
+ return gateway && !(gateway instanceof StripeGateway || gateway instanceof PaypalGateway || gateway instanceof VantivGateway);
12733
12792
  }
12734
12793
  });
12735
12794
 
@@ -12782,7 +12841,8 @@ class Subscription {
12782
12841
  }
12783
12842
  const PAYMENT_GATEWAYS_ENUM = {
12784
12843
  stripe: "stripe",
12785
- paypal: "braintree"
12844
+ paypal: "braintree",
12845
+ vantiv: "vantiv"
12786
12846
  };
12787
12847
  /**
12788
12848
  * Subscription Strategies
@@ -12974,7 +13034,7 @@ var _createGiftedSubscription2 = /*#__PURE__*/new WeakMap();
12974
13034
 
12975
13035
  var _payInvoice2 = /*#__PURE__*/new WeakMap();
12976
13036
 
12977
- class PaypalGateWay {
13037
+ class PaypalGateway {
12978
13038
  constructor() {
12979
13039
  _paymentGateway2.set(this, {
12980
13040
  writable: true,
@@ -13075,6 +13135,57 @@ class PaypalGateWay {
13075
13135
 
13076
13136
  }
13077
13137
 
13138
+ var _paymentGateway3 = /*#__PURE__*/new WeakMap();
13139
+
13140
+ var _createSubscription3 = /*#__PURE__*/new WeakMap();
13141
+
13142
+ class VantivGateway {
13143
+ constructor() {
13144
+ _paymentGateway3.set(this, {
13145
+ writable: true,
13146
+ value: PAYMENT_GATEWAYS_ENUM["vantiv"]
13147
+ });
13148
+
13149
+ _defineProperty$3(this, "execute", (options, callback) => {
13150
+ const types = SUBSCRIPTION_TYPES;
13151
+
13152
+ switch (options.type) {
13153
+ case types.CREATE_SUBSCRIPTION:
13154
+ return _classPrivateFieldGet(this, _createSubscription3).call(this, options, callback);
13155
+
13156
+ default:
13157
+ console.error("Unsupported subscriptiion method: vantiv Gateway");
13158
+ }
13159
+ });
13160
+
13161
+ _createSubscription3.set(this, {
13162
+ writable: true,
13163
+ value: (options, callback) => {
13164
+ const {
13165
+ token,
13166
+ plan,
13167
+ couponCode,
13168
+ product,
13169
+ quantity = 1,
13170
+ addressId
13171
+ } = options;
13172
+ window.Pelcro.subscription.create({
13173
+ quantity,
13174
+ gateway_token: token,
13175
+ payment_gateway: _classPrivateFieldGet(this, _paymentGateway3),
13176
+ auth_token: window.Pelcro.user.read().auth_token,
13177
+ plan_id: plan.id,
13178
+ coupon_code: couponCode,
13179
+ address_id: product.address_required ? addressId : null
13180
+ }, (err, res) => {
13181
+ callback(err, res);
13182
+ });
13183
+ }
13184
+ });
13185
+ }
13186
+
13187
+ }
13188
+
13078
13189
  /**
13079
13190
  * @typedef {Object} PaymentStateType
13080
13191
  * @property {boolean} disableSubmit
@@ -13162,6 +13273,78 @@ const PaymentMethodContainerWithoutStripe = ({
13162
13273
  updateTotalAmountWithTax();
13163
13274
  }, []);
13164
13275
 
13276
+ function submitVantivPayment() {
13277
+ if (!vantivInstanceRef.current) {
13278
+ return console.error("Vantiv sdk script wasn't loaded, you need to load vantiv sdk before rendering the vantiv payment flow");
13279
+ }
13280
+
13281
+ const orderId = `pelcro-${new Date().getTime()}`; // calls handleVantivPayment
13282
+
13283
+ vantivInstanceRef.current.getPaypageRegistrationId({
13284
+ id: orderId,
13285
+ orderId: orderId
13286
+ });
13287
+ }
13288
+
13289
+ function handleVantivPayment(paymentRequest) {
13290
+ const SUCCESS_STATUS = "870";
13291
+
13292
+ if (paymentRequest.response !== SUCCESS_STATUS) {
13293
+ return handlePaymentError({
13294
+ error: new Error(paymentRequest.message)
13295
+ });
13296
+ }
13297
+
13298
+ const subscription = new Subscription(new VantivGateway());
13299
+ const {
13300
+ couponCode
13301
+ } = state;
13302
+ return subscription.execute({
13303
+ type: SUBSCRIPTION_TYPES.CREATE_SUBSCRIPTION,
13304
+ token: paymentRequest,
13305
+ quantity: plan.quantity,
13306
+ plan,
13307
+ couponCode,
13308
+ product,
13309
+ addressId: selectedAddressId
13310
+ }, (err, res) => {
13311
+ if (err) {
13312
+ return handlePaymentError(err);
13313
+ }
13314
+
13315
+ onSuccess(res);
13316
+ });
13317
+ }
13318
+
13319
+ const vantivInstanceRef = React__default['default'].useRef(null);
13320
+ React.useEffect(() => {
13321
+ const cardProcessor = getSiteCardProcessor();
13322
+
13323
+ if (cardProcessor === "vantiv") {
13324
+ var _window$Pelcro$site$r;
13325
+
13326
+ const payPageId = (_window$Pelcro$site$r = window.Pelcro.site.read()) === null || _window$Pelcro$site$r === void 0 ? void 0 : _window$Pelcro$site$r.vantiv_pay_page_id;
13327
+ vantivInstanceRef.current = new window.EprotectIframeClient({
13328
+ paypageId: payPageId,
13329
+ reportGroup: payPageId,
13330
+ style: "pelcro",
13331
+ height: "245",
13332
+ timeout: 50000,
13333
+ div: "eProtectiframe",
13334
+ callback: handleVantivPayment,
13335
+ showCvv: true,
13336
+ numYears: 8,
13337
+ placeholderText: {
13338
+ cvv: "CVV",
13339
+ accountNumber: "1234 1234 1234 1234"
13340
+ },
13341
+ enhancedUxFeatures: {
13342
+ inlineFieldValidations: true
13343
+ }
13344
+ });
13345
+ }
13346
+ }, []);
13347
+
13165
13348
  const initPaymentRequest = (state, dispatch) => {
13166
13349
  try {
13167
13350
  const paymentRequest = stripe.paymentRequest({
@@ -13232,9 +13415,9 @@ const PaymentMethodContainerWithoutStripe = ({
13232
13415
 
13233
13416
 
13234
13417
  const updateTotalAmountWithTax = () => {
13235
- var _window$Pelcro$site$r;
13418
+ var _window$Pelcro$site$r2;
13236
13419
 
13237
- const taxesEnabled = (_window$Pelcro$site$r = window.Pelcro.site.read()) === null || _window$Pelcro$site$r === void 0 ? void 0 : _window$Pelcro$site$r.taxes_enabled;
13420
+ const taxesEnabled = (_window$Pelcro$site$r2 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r2 === void 0 ? void 0 : _window$Pelcro$site$r2.taxes_enabled;
13238
13421
 
13239
13422
  if (taxesEnabled && type === "createPayment") {
13240
13423
  dispatch({
@@ -13584,7 +13767,7 @@ const PaymentMethodContainerWithoutStripe = ({
13584
13767
 
13585
13768
 
13586
13769
  const handlePaypalSubscription = (state, paypalNonce) => {
13587
- const subscription = new Subscription(new PaypalGateWay());
13770
+ const subscription = new Subscription(new PaypalGateway());
13588
13771
  const {
13589
13772
  couponCode
13590
13773
  } = state;
@@ -13879,13 +14062,13 @@ const PaymentMethodContainerWithoutStripe = ({
13879
14062
 
13880
14063
 
13881
14064
  const resolveTaxCalculation = () => {
13882
- var _window$Pelcro$site$r2;
14065
+ var _window$Pelcro$site$r3;
13883
14066
 
13884
14067
  if (type === "invoicePayment") {
13885
14068
  return new Promise(resolve => resolve());
13886
14069
  }
13887
14070
 
13888
- const taxesEnabled = (_window$Pelcro$site$r2 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r2 === void 0 ? void 0 : _window$Pelcro$site$r2.taxes_enabled;
14071
+ const taxesEnabled = (_window$Pelcro$site$r3 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r3 === void 0 ? void 0 : _window$Pelcro$site$r3.taxes_enabled;
13889
14072
  return new Promise((resolve, reject) => {
13890
14073
  // resolve early if taxes isn't enabled
13891
14074
  if (!taxesEnabled) {
@@ -13964,6 +14147,8 @@ const PaymentMethodContainerWithoutStripe = ({
13964
14147
  };
13965
14148
 
13966
14149
  const handlePaymentError = error => {
14150
+ var _getErrorMessages;
14151
+
13967
14152
  if (error.type === "validation_error" && // Subscription creation & renewal
13968
14153
  type === "createPayment") {
13969
14154
  var _state$couponObject;
@@ -13982,7 +14167,7 @@ const PaymentMethodContainerWithoutStripe = ({
13982
14167
  type: SHOW_ALERT,
13983
14168
  payload: {
13984
14169
  type: "error",
13985
- content: error === null || error === void 0 ? void 0 : error.message
14170
+ content: (_getErrorMessages = getErrorMessages(error)) !== null && _getErrorMessages !== void 0 ? _getErrorMessages : error === null || error === void 0 ? void 0 : error.message
13986
14171
  }
13987
14172
  });
13988
14173
  dispatch({
@@ -14086,16 +14271,20 @@ const PaymentMethodContainerWithoutStripe = ({
14086
14271
  }
14087
14272
 
14088
14273
  if (type === "updatePaymentSource") {
14089
- updatePaymentSource(state, dispatch);
14090
- } else {
14091
- submitPayment(state);
14274
+ return updatePaymentSource(state, dispatch);
14092
14275
  }
14276
+
14277
+ if (getSiteCardProcessor() === "vantiv") {
14278
+ return submitVantivPayment();
14279
+ }
14280
+
14281
+ submitPayment(state);
14093
14282
  });
14094
14283
 
14095
14284
  case HANDLE_PAYPAL_SUBSCRIPTION:
14096
14285
  return lib_5(state, (state, dispatch) => {
14097
14286
  if (type === "invoicePayment") {
14098
- payInvoice(new PaypalGateWay(), action.payload, dispatch);
14287
+ payInvoice(new PaypalGateway(), action.payload, dispatch);
14099
14288
  } else {
14100
14289
  handlePaypalSubscription(state, action.payload);
14101
14290
  }
@@ -14278,19 +14467,35 @@ const CheckoutForm = () => {
14278
14467
  const {
14279
14468
  selectedPaymentMethodId
14280
14469
  } = usePelcro();
14281
- return !selectedPaymentMethodId && /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(PelcroCardNumber, {
14282
- autoFocus: true
14283
- }), /*#__PURE__*/React__default['default'].createElement("img", {
14284
- alt: "credit_cards",
14285
- className: "plc-h-4 plc-w-auto plc-mt-2",
14286
- src: "https://js.pelcro.com/ui/plugin/main/images/credit_cards.png"
14287
- }), /*#__PURE__*/React__default['default'].createElement("div", {
14288
- className: "plc-flex plc-justify-between plc-my-2 plc-items-end"
14289
- }, /*#__PURE__*/React__default['default'].createElement("div", {
14290
- className: "plc-w-6/12 plc-pr-4"
14291
- }, /*#__PURE__*/React__default['default'].createElement(PelcroCardExpiry, null)), /*#__PURE__*/React__default['default'].createElement("div", {
14292
- className: "plc-w-6/12 plc-pl-4"
14293
- }, /*#__PURE__*/React__default['default'].createElement(PelcroCardCVC, null))));
14470
+ const cardProcessor = getSiteCardProcessor();
14471
+
14472
+ if (selectedPaymentMethodId) {
14473
+ return null;
14474
+ }
14475
+
14476
+ if (cardProcessor === "vantiv") {
14477
+ return /*#__PURE__*/React__default['default'].createElement("div", {
14478
+ id: "eProtectiframe"
14479
+ });
14480
+ }
14481
+
14482
+ if (cardProcessor === "stripe") {
14483
+ return /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(PelcroCardNumber, {
14484
+ autoFocus: true
14485
+ }), /*#__PURE__*/React__default['default'].createElement("img", {
14486
+ alt: "credit_cards",
14487
+ className: "plc-w-auto plc-h-4 plc-mt-2",
14488
+ src: "https://js.pelcro.com/ui/plugin/main/images/credit_cards.png"
14489
+ }), /*#__PURE__*/React__default['default'].createElement("div", {
14490
+ className: "plc-flex plc-items-end plc-justify-between plc-my-2"
14491
+ }, /*#__PURE__*/React__default['default'].createElement("div", {
14492
+ className: "plc-w-6/12 plc-pr-4"
14493
+ }, /*#__PURE__*/React__default['default'].createElement(PelcroCardExpiry, null)), /*#__PURE__*/React__default['default'].createElement("div", {
14494
+ className: "plc-w-6/12 plc-pl-4"
14495
+ }, /*#__PURE__*/React__default['default'].createElement(PelcroCardCVC, null))));
14496
+ }
14497
+
14498
+ return null;
14294
14499
  };
14295
14500
 
14296
14501
  const DiscountedPrice = props => {
@@ -14377,17 +14582,17 @@ const SubmitPaymentMethod = ({
14377
14582
  }, t("labels.pay"), " ", priceFormatted && priceFormatted) : t("labels.submit"));
14378
14583
  };
14379
14584
 
14380
- var _path$l;
14585
+ var _path$m;
14381
14586
 
14382
- function _extends$n() { _extends$n = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$n.apply(this, arguments); }
14587
+ function _extends$o() { _extends$o = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$o.apply(this, arguments); }
14383
14588
 
14384
14589
  function SvgArrowLeft(props) {
14385
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$n({
14590
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$o({
14386
14591
  xmlns: "http://www.w3.org/2000/svg",
14387
14592
  fill: "none",
14388
14593
  viewBox: "0 0 24 24",
14389
14594
  stroke: "currentColor"
14390
- }, props), _path$l || (_path$l = /*#__PURE__*/React__namespace.createElement("path", {
14595
+ }, props), _path$m || (_path$m = /*#__PURE__*/React__namespace.createElement("path", {
14391
14596
  strokeLinecap: "round",
14392
14597
  strokeLinejoin: "round",
14393
14598
  strokeWidth: 2,
@@ -14469,17 +14674,17 @@ const CouponCodeField = props => {
14469
14674
  }, props));
14470
14675
  };
14471
14676
 
14472
- var _path$k;
14677
+ var _path$l;
14473
14678
 
14474
- function _extends$m() { _extends$m = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$m.apply(this, arguments); }
14679
+ function _extends$n() { _extends$n = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$n.apply(this, arguments); }
14475
14680
 
14476
14681
  function SvgTicket(props) {
14477
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$m({
14682
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$n({
14478
14683
  xmlns: "http://www.w3.org/2000/svg",
14479
14684
  fill: "none",
14480
14685
  viewBox: "0 0 24 24",
14481
14686
  stroke: "currentColor"
14482
- }, props), _path$k || (_path$k = /*#__PURE__*/React__namespace.createElement("path", {
14687
+ }, props), _path$l || (_path$l = /*#__PURE__*/React__namespace.createElement("path", {
14483
14688
  strokeLinecap: "round",
14484
14689
  strokeLinejoin: "round",
14485
14690
  strokeWidth: 2,
@@ -14839,16 +15044,16 @@ const BankRedirection = () => {
14839
15044
  }));
14840
15045
  };
14841
15046
 
14842
- var _path$j;
15047
+ var _path$k;
14843
15048
 
14844
- function _extends$l() { _extends$l = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$l.apply(this, arguments); }
15049
+ function _extends$m() { _extends$m = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$m.apply(this, arguments); }
14845
15050
 
14846
15051
  function SvgLock(props) {
14847
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$l({
15052
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$m({
14848
15053
  xmlns: "http://www.w3.org/2000/svg",
14849
15054
  viewBox: "0 0 20 20",
14850
15055
  fill: "currentColor"
14851
- }, props), _path$j || (_path$j = /*#__PURE__*/React__namespace.createElement("path", {
15056
+ }, props), _path$k || (_path$k = /*#__PURE__*/React__namespace.createElement("path", {
14852
15057
  fillRule: "evenodd",
14853
15058
  d: "M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z",
14854
15059
  clipRule: "evenodd"
@@ -14940,9 +15145,10 @@ function PaymentMethodView({
14940
15145
  const {
14941
15146
  t
14942
15147
  } = useTranslation("checkoutForm");
15148
+ const cardProcessor = getSiteCardProcessor();
14943
15149
  return /*#__PURE__*/React__default['default'].createElement("div", {
14944
15150
  className: "plc-flex plc-flex-col plc-items-center plc-mt-4 sm:plc-px-8 pelcro-payment-block"
14945
- }, /*#__PURE__*/React__default['default'].createElement("div", {
15151
+ }, cardProcessor === "stripe" && /*#__PURE__*/React__default['default'].createElement("div", {
14946
15152
  className: "plc-flex plc-items-center plc-w-full plc-px-4 plc-py-2 plc-text-center plc-text-green-600 plc-border plc-border-green-400 plc-rounded plc-bg-green-50"
14947
15153
  }, /*#__PURE__*/React__default['default'].createElement(SvgLock, {
14948
15154
  className: "plc-w-5 plc-h-5 plc-mr-1"
@@ -15070,12 +15276,12 @@ function SubscriptionRenewModal({
15070
15276
  }
15071
15277
  SubscriptionRenewModal.viewId = "subscription-renew";
15072
15278
 
15073
- var _path$i;
15279
+ var _path$j;
15074
15280
 
15075
- function _extends$k() { _extends$k = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$k.apply(this, arguments); }
15281
+ function _extends$l() { _extends$l = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$l.apply(this, arguments); }
15076
15282
 
15077
15283
  function SvgGift(props) {
15078
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$k({
15284
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$l({
15079
15285
  className: "plc-w-6 plc-h-6 plc-mr-2",
15080
15286
  fill: "none",
15081
15287
  stroke: "currentColor",
@@ -15084,7 +15290,7 @@ function SvgGift(props) {
15084
15290
  strokeWidth: 2,
15085
15291
  viewBox: "0 0 24 24",
15086
15292
  xmlns: "http://www.w3.org/2000/svg"
15087
- }, props), _path$i || (_path$i = /*#__PURE__*/React__namespace.createElement("path", {
15293
+ }, props), _path$j || (_path$j = /*#__PURE__*/React__namespace.createElement("path", {
15088
15294
  d: "M20 12v10H4V12M2 7h20v5H2zM12 22V7M12 7H7.5a2.5 2.5 0 010-5C11 2 12 7 12 7zM12 7h4.5a2.5 2.5 0 000-5C13 2 12 7 12 7z"
15089
15295
  })));
15090
15296
  }
@@ -16093,17 +16299,17 @@ const UserUpdatePhone = props => /*#__PURE__*/React__default['default'].createEl
16093
16299
 
16094
16300
  var userSolidIcon = "data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20class%3D%22plc-h-5%20plc-w-5%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22white%22%3E%20%20%3Cpath%20transform%3D%22translate%280%2C2%29%22%20fill-rule%3D%22evenodd%22%20d%3D%22M10%209a3%203%200%20100-6%203%203%200%20000%206zm-7%209a7%207%200%201114%200H3z%22%20clip-rule%3D%22evenodd%22%20%2F%3E%3C%2Fsvg%3E";
16095
16301
 
16096
- var _path$h;
16302
+ var _path$i;
16097
16303
 
16098
- function _extends$j() { _extends$j = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$j.apply(this, arguments); }
16304
+ function _extends$k() { _extends$k = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$k.apply(this, arguments); }
16099
16305
 
16100
16306
  function SvgEdit(props) {
16101
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$j({
16307
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$k({
16102
16308
  className: "plc-w-6 plc-h-6",
16103
16309
  xmlns: "http://www.w3.org/2000/svg",
16104
16310
  viewBox: "0 0 20 20",
16105
16311
  fill: "currentColor"
16106
- }, props), _path$h || (_path$h = /*#__PURE__*/React__namespace.createElement("path", {
16312
+ }, props), _path$i || (_path$i = /*#__PURE__*/React__namespace.createElement("path", {
16107
16313
  d: "M13.586 3.586a2 2 0 112.828 2.828l-.793.793-2.828-2.828.793-.793zm-2.207 2.207L3 14.172V17h2.828l8.38-8.379-2.83-2.828z"
16108
16314
  })));
16109
16315
  }
@@ -19213,18 +19419,18 @@ const GiftCreateLastName = props => /*#__PURE__*/React__default['default'].creat
19213
19419
  store: store$6
19214
19420
  }, props));
19215
19421
 
19216
- var _path$g;
19422
+ var _path$h;
19217
19423
 
19218
- function _extends$i() { _extends$i = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$i.apply(this, arguments); }
19424
+ function _extends$j() { _extends$j = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$j.apply(this, arguments); }
19219
19425
 
19220
19426
  function SvgInfoCircle(props) {
19221
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$i({
19427
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$j({
19222
19428
  xmlns: "http://www.w3.org/2000/svg",
19223
19429
  className: "plc-w-5 plc-h-5",
19224
19430
  fill: "none",
19225
19431
  viewBox: "0 0 24 24",
19226
19432
  stroke: "currentColor"
19227
- }, props), _path$g || (_path$g = /*#__PURE__*/React__namespace.createElement("path", {
19433
+ }, props), _path$h || (_path$h = /*#__PURE__*/React__namespace.createElement("path", {
19228
19434
  strokeLinecap: "round",
19229
19435
  strokeLinejoin: "round",
19230
19436
  strokeWidth: 2,
@@ -20236,8 +20442,8 @@ const PaymentMethodSelectModal = ({
20236
20442
  };
20237
20443
  PaymentMethodSelectModal.viewId = "payment-method-select";
20238
20444
 
20239
- function _extends$h() {
20240
- _extends$h = Object.assign || function (target) {
20445
+ function _extends$i() {
20446
+ _extends$i = Object.assign || function (target) {
20241
20447
  for (var i = 1; i < arguments.length; i++) {
20242
20448
  var source = arguments[i];
20243
20449
 
@@ -20251,7 +20457,7 @@ function _extends$h() {
20251
20457
  return target;
20252
20458
  };
20253
20459
 
20254
- return _extends$h.apply(this, arguments);
20460
+ return _extends$i.apply(this, arguments);
20255
20461
  }
20256
20462
 
20257
20463
  function _objectWithoutPropertiesLoose(source, excluded) {
@@ -20435,7 +20641,7 @@ function render(props, propsBag, defaultTag, features, visible) {
20435
20641
  return match(strategy, (_match = {}, _match[RenderStrategy.Unmount] = function () {
20436
20642
  return null;
20437
20643
  }, _match[RenderStrategy.Hidden] = function () {
20438
- return _render(_extends$h({}, _rest, {
20644
+ return _render(_extends$i({}, _rest, {
20439
20645
  hidden: true,
20440
20646
  style: {
20441
20647
  display: 'none'
@@ -20963,7 +21169,7 @@ function TransitionChild(props) {
20963
21169
  var passthroughProps = rest;
20964
21170
  return React__default['default'].createElement(NestingContext.Provider, {
20965
21171
  value: nesting
20966
- }, render(_extends$h({}, passthroughProps, propsWeControl), propsBag, DEFAULT_TRANSITION_CHILD_TAG, TransitionChildRenderFeatures, state === TreeStates.Visible));
21172
+ }, render(_extends$i({}, passthroughProps, propsWeControl), propsBag, DEFAULT_TRANSITION_CHILD_TAG, TransitionChildRenderFeatures, state === TreeStates.Visible));
20967
21173
  }
20968
21174
 
20969
21175
  function Transition(props) {
@@ -21007,7 +21213,7 @@ function Transition(props) {
21007
21213
  value: nestingBag
21008
21214
  }, React__default['default'].createElement(TransitionContext.Provider, {
21009
21215
  value: transitionBag
21010
- }, render(_extends$h({}, sharedProps, {
21216
+ }, render(_extends$i({}, sharedProps, {
21011
21217
  as: React.Fragment,
21012
21218
  children: React__default['default'].createElement(TransitionChild, Object.assign({}, sharedProps, passthroughProps))
21013
21219
  }), propsBag, React.Fragment, TransitionChildRenderFeatures, state === TreeStates.Visible)));
@@ -21134,12 +21340,12 @@ var ActionTypes;
21134
21340
  })(ActionTypes || (ActionTypes = {}));
21135
21341
 
21136
21342
  (_reducers = {}, _reducers[ActionTypes.CloseMenu] = function (state) {
21137
- return _extends$h({}, state, {
21343
+ return _extends$i({}, state, {
21138
21344
  activeItemIndex: null,
21139
21345
  menuState: MenuStates.Closed
21140
21346
  });
21141
21347
  }, _reducers[ActionTypes.OpenMenu] = function (state) {
21142
- return _extends$h({}, state, {
21348
+ return _extends$i({}, state, {
21143
21349
  menuState: MenuStates.Open
21144
21350
  });
21145
21351
  }, _reducers[ActionTypes.GoToItem] = function (state, action) {
@@ -21158,7 +21364,7 @@ var ActionTypes;
21158
21364
  }
21159
21365
  });
21160
21366
  if (state.searchQuery === '' && state.activeItemIndex === activeItemIndex) return state;
21161
- return _extends$h({}, state, {
21367
+ return _extends$i({}, state, {
21162
21368
  searchQuery: '',
21163
21369
  activeItemIndex: activeItemIndex
21164
21370
  });
@@ -21169,19 +21375,19 @@ var ActionTypes;
21169
21375
 
21170
21376
  return ((_item$dataRef$current = item.dataRef.current.textValue) == null ? void 0 : _item$dataRef$current.startsWith(searchQuery)) && !item.dataRef.current.disabled;
21171
21377
  });
21172
- if (match === -1 || match === state.activeItemIndex) return _extends$h({}, state, {
21378
+ if (match === -1 || match === state.activeItemIndex) return _extends$i({}, state, {
21173
21379
  searchQuery: searchQuery
21174
21380
  });
21175
- return _extends$h({}, state, {
21381
+ return _extends$i({}, state, {
21176
21382
  searchQuery: searchQuery,
21177
21383
  activeItemIndex: match
21178
21384
  });
21179
21385
  }, _reducers[ActionTypes.ClearSearch] = function (state) {
21180
- return _extends$h({}, state, {
21386
+ return _extends$i({}, state, {
21181
21387
  searchQuery: ''
21182
21388
  });
21183
21389
  }, _reducers[ActionTypes.RegisterItem] = function (state, action) {
21184
- return _extends$h({}, state, {
21390
+ return _extends$i({}, state, {
21185
21391
  items: [].concat(state.items, [{
21186
21392
  id: action.id,
21187
21393
  dataRef: action.dataRef
@@ -21194,7 +21400,7 @@ var ActionTypes;
21194
21400
  return a.id === action.id;
21195
21401
  });
21196
21402
  if (idx !== -1) nextItems.splice(idx, 1);
21197
- return _extends$h({}, state, {
21403
+ return _extends$i({}, state, {
21198
21404
  items: nextItems,
21199
21405
  activeItemIndex: function () {
21200
21406
  if (idx === state.activeItemIndex) return null;
@@ -21233,19 +21439,19 @@ var ActionTypes$1;
21233
21439
  (_reducers$1 = {}, _reducers$1[ActionTypes$1.CloseListbox] = function (state) {
21234
21440
  if (state.disabled) return state;
21235
21441
  if (state.listboxState === ListboxStates.Closed) return state;
21236
- return _extends$h({}, state, {
21442
+ return _extends$i({}, state, {
21237
21443
  activeOptionIndex: null,
21238
21444
  listboxState: ListboxStates.Closed
21239
21445
  });
21240
21446
  }, _reducers$1[ActionTypes$1.OpenListbox] = function (state) {
21241
21447
  if (state.disabled) return state;
21242
21448
  if (state.listboxState === ListboxStates.Open) return state;
21243
- return _extends$h({}, state, {
21449
+ return _extends$i({}, state, {
21244
21450
  listboxState: ListboxStates.Open
21245
21451
  });
21246
21452
  }, _reducers$1[ActionTypes$1.SetDisabled] = function (state, action) {
21247
21453
  if (state.disabled === action.disabled) return state;
21248
- return _extends$h({}, state, {
21454
+ return _extends$i({}, state, {
21249
21455
  disabled: action.disabled
21250
21456
  });
21251
21457
  }, _reducers$1[ActionTypes$1.GoToOption] = function (state, action) {
@@ -21266,7 +21472,7 @@ var ActionTypes$1;
21266
21472
  }
21267
21473
  });
21268
21474
  if (state.searchQuery === '' && state.activeOptionIndex === activeOptionIndex) return state;
21269
- return _extends$h({}, state, {
21475
+ return _extends$i({}, state, {
21270
21476
  searchQuery: '',
21271
21477
  activeOptionIndex: activeOptionIndex
21272
21478
  });
@@ -21279,10 +21485,10 @@ var ActionTypes$1;
21279
21485
 
21280
21486
  return !option.dataRef.current.disabled && ((_option$dataRef$curre = option.dataRef.current.textValue) == null ? void 0 : _option$dataRef$curre.startsWith(searchQuery));
21281
21487
  });
21282
- if (match === -1 || match === state.activeOptionIndex) return _extends$h({}, state, {
21488
+ if (match === -1 || match === state.activeOptionIndex) return _extends$i({}, state, {
21283
21489
  searchQuery: searchQuery
21284
21490
  });
21285
- return _extends$h({}, state, {
21491
+ return _extends$i({}, state, {
21286
21492
  searchQuery: searchQuery,
21287
21493
  activeOptionIndex: match
21288
21494
  });
@@ -21290,11 +21496,11 @@ var ActionTypes$1;
21290
21496
  if (state.disabled) return state;
21291
21497
  if (state.listboxState === ListboxStates.Closed) return state;
21292
21498
  if (state.searchQuery === '') return state;
21293
- return _extends$h({}, state, {
21499
+ return _extends$i({}, state, {
21294
21500
  searchQuery: ''
21295
21501
  });
21296
21502
  }, _reducers$1[ActionTypes$1.RegisterOption] = function (state, action) {
21297
- return _extends$h({}, state, {
21503
+ return _extends$i({}, state, {
21298
21504
  options: [].concat(state.options, [{
21299
21505
  id: action.id,
21300
21506
  dataRef: action.dataRef
@@ -21307,7 +21513,7 @@ var ActionTypes$1;
21307
21513
  return a.id === action.id;
21308
21514
  });
21309
21515
  if (idx !== -1) nextOptions.splice(idx, 1);
21310
- return _extends$h({}, state, {
21516
+ return _extends$i({}, state, {
21311
21517
  options: nextOptions,
21312
21518
  activeOptionIndex: function () {
21313
21519
  if (idx === state.activeOptionIndex) return null;
@@ -21368,18 +21574,18 @@ const getPaymentCardIcon = name => {
21368
21574
  }));
21369
21575
  };
21370
21576
 
21371
- var _path$f;
21577
+ var _path$g;
21372
21578
 
21373
- function _extends$g() { _extends$g = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$g.apply(this, arguments); }
21579
+ function _extends$h() { _extends$h = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$h.apply(this, arguments); }
21374
21580
 
21375
21581
  function SvgChevronRight(props) {
21376
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$g({
21582
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$h({
21377
21583
  className: "plc-w-6 plc-h-6",
21378
21584
  xmlns: "http://www.w3.org/2000/svg",
21379
21585
  fill: "none",
21380
21586
  viewBox: "0 0 24 24",
21381
21587
  stroke: "currentColor"
21382
- }, props), _path$f || (_path$f = /*#__PURE__*/React__namespace.createElement("path", {
21588
+ }, props), _path$g || (_path$g = /*#__PURE__*/React__namespace.createElement("path", {
21383
21589
  strokeLinecap: "round",
21384
21590
  strokeLinejoin: "round",
21385
21591
  strokeWidth: 2,
@@ -21595,18 +21801,18 @@ const SavedItems = ({
21595
21801
  });
21596
21802
  };
21597
21803
 
21598
- var _path$e;
21804
+ var _path$f;
21599
21805
 
21600
- function _extends$f() { _extends$f = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$f.apply(this, arguments); }
21806
+ function _extends$g() { _extends$g = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$g.apply(this, arguments); }
21601
21807
 
21602
21808
  function SvgRefresh(props) {
21603
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$f({
21809
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$g({
21604
21810
  className: "plc-w-4 plc-h-4 plc-mr-1",
21605
21811
  xmlns: "http://www.w3.org/2000/svg",
21606
21812
  fill: "none",
21607
21813
  viewBox: "0 0 24 24",
21608
21814
  stroke: "currentColor"
21609
- }, props), _path$e || (_path$e = /*#__PURE__*/React__namespace.createElement("path", {
21815
+ }, props), _path$f || (_path$f = /*#__PURE__*/React__namespace.createElement("path", {
21610
21816
  strokeLinecap: "round",
21611
21817
  strokeLinejoin: "round",
21612
21818
  strokeWidth: 2,
@@ -21614,35 +21820,35 @@ function SvgRefresh(props) {
21614
21820
  })));
21615
21821
  }
21616
21822
 
21617
- var _path$d;
21823
+ var _path$e;
21618
21824
 
21619
- function _extends$e() { _extends$e = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$e.apply(this, arguments); }
21825
+ function _extends$f() { _extends$f = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$f.apply(this, arguments); }
21620
21826
 
21621
21827
  function SvgCalendar(props) {
21622
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$e({
21828
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$f({
21623
21829
  xmlns: "http://www.w3.org/2000/svg",
21624
21830
  className: "plc-h-4 plc-w-4 plc-mr-1",
21625
21831
  viewBox: "0 0 20 20",
21626
21832
  fill: "currentColor"
21627
- }, props), _path$d || (_path$d = /*#__PURE__*/React__namespace.createElement("path", {
21833
+ }, props), _path$e || (_path$e = /*#__PURE__*/React__namespace.createElement("path", {
21628
21834
  fillRule: "evenodd",
21629
21835
  d: "M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z",
21630
21836
  clipRule: "evenodd"
21631
21837
  })));
21632
21838
  }
21633
21839
 
21634
- var _path$c;
21840
+ var _path$d;
21635
21841
 
21636
- function _extends$d() { _extends$d = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$d.apply(this, arguments); }
21842
+ function _extends$e() { _extends$e = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$e.apply(this, arguments); }
21637
21843
 
21638
21844
  function SvgPlus(props) {
21639
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$d({
21845
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$e({
21640
21846
  className: "plc-w-5 plc-h-5",
21641
21847
  xmlns: "http://www.w3.org/2000/svg",
21642
21848
  fill: "none",
21643
21849
  viewBox: "0 0 24 24",
21644
21850
  stroke: "currentColor"
21645
- }, props), _path$c || (_path$c = /*#__PURE__*/React__namespace.createElement("path", {
21851
+ }, props), _path$d || (_path$d = /*#__PURE__*/React__namespace.createElement("path", {
21646
21852
  strokeLinecap: "round",
21647
21853
  strokeLinejoin: "round",
21648
21854
  strokeWidth: 2,
@@ -21650,17 +21856,17 @@ function SvgPlus(props) {
21650
21856
  })));
21651
21857
  }
21652
21858
 
21653
- var _path$b;
21859
+ var _path$c;
21654
21860
 
21655
- function _extends$c() { _extends$c = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$c.apply(this, arguments); }
21861
+ function _extends$d() { _extends$d = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$d.apply(this, arguments); }
21656
21862
 
21657
21863
  function SvgCheckMark(props) {
21658
- return /*#__PURE__*/React__namespace.createElement("svg", _extends$c({
21864
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$d({
21659
21865
  className: "plc-w-4 plc-h-4 plc-mr-1",
21660
21866
  xmlns: "http://www.w3.org/2000/svg",
21661
21867
  viewBox: "0 0 20 20",
21662
21868
  fill: "currentColor"
21663
- }, props), _path$b || (_path$b = /*#__PURE__*/React__namespace.createElement("path", {
21869
+ }, props), _path$c || (_path$c = /*#__PURE__*/React__namespace.createElement("path", {
21664
21870
  fillRule: "evenodd",
21665
21871
  d: "M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z",
21666
21872
  clipRule: "evenodd"
@@ -21955,13 +22161,31 @@ Accordion.item = function AccordionItem({
21955
22161
  }, content)) : null;
21956
22162
  };
21957
22163
 
22164
+ var _path$b;
22165
+
22166
+ function _extends$c() { _extends$c = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$c.apply(this, arguments); }
22167
+
22168
+ function SvgExit(props) {
22169
+ return /*#__PURE__*/React__namespace.createElement("svg", _extends$c({
22170
+ className: "plc-w-6 plc-h-6",
22171
+ xmlns: "http://www.w3.org/2000/svg",
22172
+ fill: "none",
22173
+ viewBox: "0 0 24 24",
22174
+ stroke: "currentColor"
22175
+ }, props), _path$b || (_path$b = /*#__PURE__*/React__namespace.createElement("path", {
22176
+ strokeLinecap: "round",
22177
+ strokeLinejoin: "round",
22178
+ strokeWidth: 2,
22179
+ d: "M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1"
22180
+ })));
22181
+ }
22182
+
21958
22183
  var _path$a;
21959
22184
 
21960
22185
  function _extends$b() { _extends$b = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$b.apply(this, arguments); }
21961
22186
 
21962
- function SvgExit(props) {
22187
+ function SvgUser(props) {
21963
22188
  return /*#__PURE__*/React__namespace.createElement("svg", _extends$b({
21964
- className: "plc-w-6 plc-h-6",
21965
22189
  xmlns: "http://www.w3.org/2000/svg",
21966
22190
  fill: "none",
21967
22191
  viewBox: "0 0 24 24",
@@ -21970,7 +22194,7 @@ function SvgExit(props) {
21970
22194
  strokeLinecap: "round",
21971
22195
  strokeLinejoin: "round",
21972
22196
  strokeWidth: 2,
21973
- d: "M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1"
22197
+ d: "M16 7a4 4 0 11-8 0 4 4 0 018 0zm-4 7a7 7 0 00-7 7h14a7 7 0 00-7-7z"
21974
22198
  })));
21975
22199
  }
21976
22200
 
@@ -21978,9 +22202,10 @@ var _path$9;
21978
22202
 
21979
22203
  function _extends$a() { _extends$a = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$a.apply(this, arguments); }
21980
22204
 
21981
- function SvgUser(props) {
22205
+ function SvgNewsletter(props) {
21982
22206
  return /*#__PURE__*/React__namespace.createElement("svg", _extends$a({
21983
22207
  xmlns: "http://www.w3.org/2000/svg",
22208
+ className: "plc-h-5 plc-w-5",
21984
22209
  fill: "none",
21985
22210
  viewBox: "0 0 24 24",
21986
22211
  stroke: "currentColor"
@@ -21988,7 +22213,7 @@ function SvgUser(props) {
21988
22213
  strokeLinecap: "round",
21989
22214
  strokeLinejoin: "round",
21990
22215
  strokeWidth: 2,
21991
- d: "M16 7a4 4 0 11-8 0 4 4 0 018 0zm-4 7a7 7 0 00-7 7h14a7 7 0 00-7-7z"
22216
+ d: "M19 20H5a2 2 0 01-2-2V6a2 2 0 012-2h10a2 2 0 012 2v1m2 13a2 2 0 01-2-2V7m2 13a2 2 0 002-2V9a2 2 0 00-2-2h-2m-4-3H9M7 16h6M7 8h6v4H7V8z"
21992
22217
  })));
21993
22218
  }
21994
22219
 
@@ -21996,10 +22221,10 @@ var _path$8;
21996
22221
 
21997
22222
  function _extends$9() { _extends$9 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$9.apply(this, arguments); }
21998
22223
 
21999
- function SvgNewsletter(props) {
22224
+ function SvgDocument(props) {
22000
22225
  return /*#__PURE__*/React__namespace.createElement("svg", _extends$9({
22001
22226
  xmlns: "http://www.w3.org/2000/svg",
22002
- className: "plc-h-5 plc-w-5",
22227
+ className: "plc-h-6 plc-w-6 plc-mr-2",
22003
22228
  fill: "none",
22004
22229
  viewBox: "0 0 24 24",
22005
22230
  stroke: "currentColor"
@@ -22007,7 +22232,7 @@ function SvgNewsletter(props) {
22007
22232
  strokeLinecap: "round",
22008
22233
  strokeLinejoin: "round",
22009
22234
  strokeWidth: 2,
22010
- d: "M19 20H5a2 2 0 01-2-2V6a2 2 0 012-2h10a2 2 0 012 2v1m2 13a2 2 0 01-2-2V7m2 13a2 2 0 002-2V9a2 2 0 00-2-2h-2m-4-3H9M7 16h6M7 8h6v4H7V8z"
22235
+ d: "M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"
22011
22236
  })));
22012
22237
  }
22013
22238
 
@@ -22187,6 +22412,138 @@ function formatStartDate(date) {
22187
22412
  return new Intl.DateTimeFormat("en-CA").format(startDate);
22188
22413
  }
22189
22414
 
22415
+ const InvoicesMenu = props => {
22416
+ const {
22417
+ t
22418
+ } = useTranslation("dashboard");
22419
+ return /*#__PURE__*/React__default['default'].createElement("table", {
22420
+ className: "plc-w-full plc-table-fixed"
22421
+ }, /*#__PURE__*/React__default['default'].createElement("thead", {
22422
+ className: "plc-text-xs plc-font-semibold plc-tracking-wider plc-text-gray-400 plc-uppercase "
22423
+ }, /*#__PURE__*/React__default['default'].createElement("tr", null, /*#__PURE__*/React__default['default'].createElement("th", {
22424
+ className: "plc-w-4/12 "
22425
+ }, t("labels.details")), /*#__PURE__*/React__default['default'].createElement("th", {
22426
+ className: "plc-w-4/12 "
22427
+ }, t("labels.status.title")), /*#__PURE__*/React__default['default'].createElement("th", {
22428
+ className: "plc-w-3/12 "
22429
+ }, t("labels.actions")))), /*#__PURE__*/React__default['default'].createElement("tbody", null, /*#__PURE__*/React__default['default'].createElement("tr", {
22430
+ className: "plc-h-4"
22431
+ }), /*#__PURE__*/React__default['default'].createElement(InvoicesItems, props)));
22432
+ };
22433
+
22434
+ const InvoicesItems = () => {
22435
+ var _window$Pelcro$invoic, _window$Pelcro$invoic2;
22436
+
22437
+ const {
22438
+ t
22439
+ } = useTranslation("dashboard");
22440
+ const {
22441
+ setInvoice,
22442
+ switchView
22443
+ } = usePelcro();
22444
+ const invoices = (_window$Pelcro$invoic = (_window$Pelcro$invoic2 = window.Pelcro.invoice.list()) === null || _window$Pelcro$invoic2 === void 0 ? void 0 : _window$Pelcro$invoic2.filter(invoice => invoice.total > 0)) !== null && _window$Pelcro$invoic !== void 0 ? _window$Pelcro$invoic : [];
22445
+
22446
+ const showInvoiceDetails = event => {
22447
+ if (setInvoice(event.target.dataset.id)) {
22448
+ switchView("invoice-details");
22449
+ }
22450
+ };
22451
+
22452
+ if (invoices.length === 0) return null;
22453
+ return invoices.sort((a, b) => new Date(b.created_at).getTime() - new Date(a.created_at).getTime()).map(invoice => {
22454
+ const invoiceStatus = getInvoiceStatus(invoice);
22455
+ const formattedCreationDate = new Intl.DateTimeFormat("en-CA").format(new Date(invoice.created_at));
22456
+ return /*#__PURE__*/React__default['default'].createElement("tr", {
22457
+ key: invoice.id,
22458
+ className: `plc-w-full plc-align-middle plc-cursor-pointer accordion-header hover:plc-bg-gray-50`
22459
+ }, /*#__PURE__*/React__default['default'].createElement("td", {
22460
+ className: "plc-truncate"
22461
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
22462
+ className: "plc-font-semibold plc-text-gray-500"
22463
+ }, `#${invoice.id}`), /*#__PURE__*/React__default['default'].createElement("br", null), /*#__PURE__*/React__default['default'].createElement("span", {
22464
+ className: "plc-text-sm plc-text-gray-500"
22465
+ }, getFormattedPriceByLocal(invoice.total, invoice.currency, getPageOrDefaultLanguage())), /*#__PURE__*/React__default['default'].createElement("br", null), /*#__PURE__*/React__default['default'].createElement("span", {
22466
+ className: "plc-text-sm plc-text-gray-500"
22467
+ }, formattedCreationDate)), /*#__PURE__*/React__default['default'].createElement("td", {
22468
+ className: "plc-py-2"
22469
+ }, /*#__PURE__*/React__default['default'].createElement("span", {
22470
+ className: `plc-inline-flex plc-p-1 plc-text-xs plc-font-semibold ${invoiceStatus.bgColor} plc-uppercase ${invoiceStatus.textColor} plc-rounded-lg`
22471
+ }, invoiceStatus.icon, invoiceStatus.title)), /*#__PURE__*/React__default['default'].createElement("td", null, /*#__PURE__*/React__default['default'].createElement(Button, {
22472
+ variant: "ghost",
22473
+ className: "plc-text-blue-400 focus:plc-ring-blue-400 pelcro-dashboard-view-invoice-button",
22474
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgDocument, {
22475
+ className: "plc-w-4 plc-h-4"
22476
+ }),
22477
+ onClick: showInvoiceDetails,
22478
+ "data-id": invoice.id
22479
+ }, t("labels.view"))));
22480
+ });
22481
+ };
22482
+
22483
+ function getInvoiceStatus(invoice) {
22484
+ const translations = i18next.t("dashboard:labels", {
22485
+ returnObjects: true
22486
+ });
22487
+
22488
+ switch (invoice.status) {
22489
+ case "paid":
22490
+ return {
22491
+ textColor: "plc-text-green-700",
22492
+ bgColor: "plc-bg-green-100",
22493
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgCheckMark, null),
22494
+ title: translations.paid
22495
+ };
22496
+
22497
+ case "past_due":
22498
+ return {
22499
+ textColor: "plc-text-orange-700",
22500
+ bgColor: "plc-bg-orange-100",
22501
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgExclamation, null),
22502
+ title: translations.pastDue
22503
+ };
22504
+
22505
+ case "open":
22506
+ return {
22507
+ textColor: "plc-text-yellow-700",
22508
+ bgColor: "plc-bg-yellow-100",
22509
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgExclamation, null),
22510
+ title: translations.open
22511
+ };
22512
+
22513
+ case "draft":
22514
+ return {
22515
+ textColor: "plc-text-blue-700",
22516
+ bgColor: "plc-bg-blue-100",
22517
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgEdit, null),
22518
+ title: translations.draft
22519
+ };
22520
+
22521
+ case "scheduled":
22522
+ return {
22523
+ textColor: "plc-text-blue-700",
22524
+ bgColor: "plc-bg-blue-100",
22525
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgCalendar, null),
22526
+ title: translations.scheduled
22527
+ };
22528
+
22529
+ case "uncollectible":
22530
+ return {
22531
+ textColor: "plc-text-red-700",
22532
+ bgColor: "plc-bg-red-100",
22533
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgXIconSolid, null),
22534
+ title: translations.uncollectible
22535
+ };
22536
+
22537
+ case "void":
22538
+ return {
22539
+ textColor: "plc-text-gray-700",
22540
+ bgColor: "plc-bg-gray-100",
22541
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgXIconSolid, null),
22542
+ title: translations.void
22543
+ };
22544
+ }
22545
+ }
22546
+
22190
22547
  const SUB_MENUS = {
22191
22548
  PROFILE: "profile",
22192
22549
  SUBSCRIPTIONS: "subscriptions",
@@ -22740,6 +23097,12 @@ class Dashboard extends React.Component {
22740
23097
  icon: /*#__PURE__*/React__default['default'].createElement(SvgShopping, null),
22741
23098
  title: this.locale("labels.orders.label"),
22742
23099
  content: /*#__PURE__*/React__default['default'].createElement(OrdersMenu, null)
23100
+ }), /*#__PURE__*/React__default['default'].createElement(Accordion.item, {
23101
+ show: hasInvoices(),
23102
+ name: SUB_MENUS.INVOICES,
23103
+ icon: /*#__PURE__*/React__default['default'].createElement(SvgDocument, null),
23104
+ title: this.locale("labels.invoices"),
23105
+ content: /*#__PURE__*/React__default['default'].createElement(InvoicesMenu, null)
22743
23106
  }), /*#__PURE__*/React__default['default'].createElement(Accordion.item, {
22744
23107
  name: SUB_MENUS.SAVED_ITEMS,
22745
23108
  icon: /*#__PURE__*/React__default['default'].createElement(SvgBookmark, null),
@@ -22755,6 +23118,13 @@ class Dashboard extends React.Component {
22755
23118
 
22756
23119
  }
22757
23120
 
23121
+ function hasInvoices() {
23122
+ var _window$Pelcro$invoic, _window$Pelcro$invoic2;
23123
+
23124
+ const invoices = (_window$Pelcro$invoic = (_window$Pelcro$invoic2 = window.Pelcro.invoice.list()) === null || _window$Pelcro$invoic2 === void 0 ? void 0 : _window$Pelcro$invoic2.filter(invoice => invoice.total > 0)) !== null && _window$Pelcro$invoic !== void 0 ? _window$Pelcro$invoic : [];
23125
+ return invoices.length > 0;
23126
+ }
23127
+
22758
23128
  function hasDonationSubs() {
22759
23129
  var _window$Pelcro$subscr, _window$Pelcro$subscr2, _window$Pelcro$subscr3, _window$Pelcro$user$r4, _window$Pelcro$user$r5;
22760
23130