@pelcro/react-pelcro-js 3.23.0-beta.14 → 3.23.0-beta.15

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
@@ -12741,6 +12741,7 @@ const HANDLE_REMOVE_MEMBER = "HANDLE_REMOVE_MEMBER";
12741
12741
  const UPDATE_INVITE_BUTTON = "UPDATE_INVITE_BUTTON";
12742
12742
  const UPDATE_MEMBERS = "UPDATE_MEMBERS";
12743
12743
  const UPDATE_REMOVE_MEMBER_ID = "UPDATE_REMOVE_MEMBER_ID";
12744
+ const UPDATE_CYBERSOURCE_SESSION_ID = "UPDATE_CYBERSOURCE_SESSION_ID";
12744
12745
 
12745
12746
  const initialState$m = {
12746
12747
  email: "",
@@ -17707,7 +17708,8 @@ class CybersourceGateway {
17707
17708
  product,
17708
17709
  quantity = 1,
17709
17710
  addressId,
17710
- isExistingSource
17711
+ isExistingSource,
17712
+ fingerprint_session_id
17711
17713
  } = options;
17712
17714
  const params = isExistingSource ? {
17713
17715
  source_id: token
@@ -17722,6 +17724,7 @@ class CybersourceGateway {
17722
17724
  campaign_key: window.Pelcro.helpers.getURLParameter("campaign_key"),
17723
17725
  coupon_code: couponCode,
17724
17726
  address_id: product.address_required ? addressId : null,
17727
+ fingerprint_session_id,
17725
17728
  ...params
17726
17729
  }, (err, res) => {
17727
17730
  callback(err, res);
@@ -17923,6 +17926,7 @@ const initialState$k = {
17923
17926
  month: "",
17924
17927
  year: "",
17925
17928
  passwordError: null,
17929
+ cyberSourceSessionId: null,
17926
17930
  alert: {
17927
17931
  type: "error",
17928
17932
  content: ""
@@ -18066,6 +18070,7 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18066
18070
  });
18067
18071
  };
18068
18072
  function handleCybersourcePayment(paymentRequest, state) {
18073
+ console.log("Cybersource Session ID: ", state.cyberSourceSessionId);
18069
18074
  const isUsingExistingPaymentMethod = Boolean(selectedPaymentMethodId);
18070
18075
  if (type === "createPayment") {
18071
18076
  handleCybersourceSubscription();
@@ -18181,7 +18186,8 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18181
18186
  couponCode,
18182
18187
  product,
18183
18188
  isExistingSource: isUsingExistingPaymentMethod,
18184
- addressId: selectedAddressId
18189
+ addressId: selectedAddressId,
18190
+ fingerprint_session_id: state.cyberSourceSessionId
18185
18191
  }, (err, res) => {
18186
18192
  if (err) {
18187
18193
  return handlePaymentError(err);
@@ -18197,6 +18203,24 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18197
18203
  }
18198
18204
  cybersourceInstanceRef.current = microformInstance;
18199
18205
  };
18206
+ const appendCybersourceFingerprintScripts = () => {
18207
+ var _window$Pelcro$site$r, _window$Pelcro$site$r2, _window$Pelcro$site$r3, _window$Pelcro$site$r4;
18208
+ const uniqueId = crypto.randomUUID();
18209
+ const sessionID = ((_window$Pelcro$site$r = window.Pelcro.site.read()) === null || _window$Pelcro$site$r === void 0 ? void 0 : (_window$Pelcro$site$r2 = _window$Pelcro$site$r.cybersource_gateway_settings) === null || _window$Pelcro$site$r2 === void 0 ? void 0 : _window$Pelcro$site$r2.merchant_id) + uniqueId;
18210
+ const orgID = (_window$Pelcro$site$r3 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r3 === void 0 ? void 0 : (_window$Pelcro$site$r4 = _window$Pelcro$site$r3.cybersource_gateway_settings) === null || _window$Pelcro$site$r4 === void 0 ? void 0 : _window$Pelcro$site$r4.org_id;
18211
+ window.Pelcro.helpers.loadSDK(`https://h.online-metrix.net/fp/tags.js?org_id=${orgID}&session_id=${sessionID}`, "cybersource-fingerprint-script");
18212
+ const body = document.getElementsByTagName("body")[0];
18213
+ const noscript = document.createElement("noscript");
18214
+ const iframe = document.createElement("iframe");
18215
+ iframe.style.cssText = "width: 100px; height: 100px; border: 0; position:absolute; top: -5000px;";
18216
+ iframe.src = `https://h.online-metrix.net/fp/tags?org_id=${orgID}&session_id=${sessionID}`;
18217
+ noscript.appendChild(iframe);
18218
+ body.insertBefore(noscript, body.firstChild);
18219
+ dispatch({
18220
+ type: UPDATE_CYBERSOURCE_SESSION_ID,
18221
+ payload: uniqueId
18222
+ });
18223
+ };
18200
18224
  const initCybersourceScript = () => {
18201
18225
  // jwk api call
18202
18226
  window.Pelcro.payment.getJWK({
@@ -18221,6 +18245,7 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18221
18245
  }
18222
18246
  });
18223
18247
  }
18248
+ appendCybersourceFingerprintScripts();
18224
18249
  const {
18225
18250
  key: jwk
18226
18251
  } = res;
@@ -18499,8 +18524,8 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18499
18524
  }
18500
18525
  }
18501
18526
  const initTapScript = () => {
18502
- var _window$Pelcro$site$r;
18503
- const tapKey = window.Tapjsli((_window$Pelcro$site$r = window.Pelcro.site.read()) === null || _window$Pelcro$site$r === void 0 ? void 0 : _window$Pelcro$site$r.tap_gateway_settings.publishable_key);
18527
+ var _window$Pelcro$site$r5;
18528
+ const tapKey = window.Tapjsli((_window$Pelcro$site$r5 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r5 === void 0 ? void 0 : _window$Pelcro$site$r5.tap_gateway_settings.publishable_key);
18504
18529
  let elements = tapKey.elements({});
18505
18530
  let style = {
18506
18531
  base: {
@@ -18710,9 +18735,9 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18710
18735
  React.useEffect(() => {
18711
18736
  if (skipPayment && ((plan === null || plan === void 0 ? void 0 : plan.amount) === 0 || props !== null && props !== void 0 && props.freeOrders)) return;
18712
18737
  if (cardProcessor === "vantiv" && !selectedPaymentMethodId) {
18713
- var _window$Pelcro$site$r2, _window$Pelcro$site$r3;
18714
- const payPageId = (_window$Pelcro$site$r2 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r2 === void 0 ? void 0 : _window$Pelcro$site$r2.vantiv_gateway_settings.pay_page_id;
18715
- const reportGroup = (_window$Pelcro$site$r3 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r3 === void 0 ? void 0 : _window$Pelcro$site$r3.vantiv_gateway_settings.report_group;
18738
+ var _window$Pelcro$site$r6, _window$Pelcro$site$r7;
18739
+ const payPageId = (_window$Pelcro$site$r6 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r6 === void 0 ? void 0 : _window$Pelcro$site$r6.vantiv_gateway_settings.pay_page_id;
18740
+ const reportGroup = (_window$Pelcro$site$r7 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r7 === void 0 ? void 0 : _window$Pelcro$site$r7.vantiv_gateway_settings.report_group;
18716
18741
  vantivInstanceRef.current = new window.EprotectIframeClient({
18717
18742
  paypageId: payPageId,
18718
18743
  reportGroup: reportGroup,
@@ -18848,9 +18873,9 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18848
18873
  * Updates the total amount after adding taxes only if site taxes are enabled
18849
18874
  */
18850
18875
  const updateTotalAmountWithTax = () => {
18851
- var _window$Pelcro$site$r4;
18876
+ var _window$Pelcro$site$r8;
18852
18877
  if (skipPayment && ((plan === null || plan === void 0 ? void 0 : plan.amount) === 0 || props !== null && props !== void 0 && props.freeOrders)) return;
18853
- const taxesEnabled = (_window$Pelcro$site$r4 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r4 === void 0 ? void 0 : _window$Pelcro$site$r4.taxes_enabled;
18878
+ const taxesEnabled = (_window$Pelcro$site$r8 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r8 === void 0 ? void 0 : _window$Pelcro$site$r8.taxes_enabled;
18854
18879
  if (taxesEnabled && type === "createPayment") {
18855
18880
  dispatch({
18856
18881
  type: DISABLE_SUBMIT,
@@ -19599,11 +19624,11 @@ const PaymentMethodContainerWithoutStripe = _ref => {
19599
19624
  * @return {Promise}
19600
19625
  */
19601
19626
  const resolveTaxCalculation = () => {
19602
- var _window$Pelcro$site$r5;
19627
+ var _window$Pelcro$site$r9;
19603
19628
  if (type === "invoicePayment") {
19604
19629
  return new Promise(resolve => resolve());
19605
19630
  }
19606
- const taxesEnabled = (_window$Pelcro$site$r5 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r5 === void 0 ? void 0 : _window$Pelcro$site$r5.taxes_enabled;
19631
+ const taxesEnabled = (_window$Pelcro$site$r9 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r9 === void 0 ? void 0 : _window$Pelcro$site$r9.taxes_enabled;
19607
19632
  return new Promise((resolve, reject) => {
19608
19633
  // resolve early if taxes isn't enabled
19609
19634
  if (!taxesEnabled) {
@@ -19970,6 +19995,11 @@ const PaymentMethodContainerWithoutStripe = _ref => {
19970
19995
  ...state,
19971
19996
  alert: action.payload
19972
19997
  });
19998
+ case UPDATE_CYBERSOURCE_SESSION_ID:
19999
+ return lib_7({
20000
+ ...state,
20001
+ cybersourceSessionId: action.payload
20002
+ });
19973
20003
  default:
19974
20004
  return state;
19975
20005
  }
package/dist/index.esm.js CHANGED
@@ -12711,6 +12711,7 @@ const HANDLE_REMOVE_MEMBER = "HANDLE_REMOVE_MEMBER";
12711
12711
  const UPDATE_INVITE_BUTTON = "UPDATE_INVITE_BUTTON";
12712
12712
  const UPDATE_MEMBERS = "UPDATE_MEMBERS";
12713
12713
  const UPDATE_REMOVE_MEMBER_ID = "UPDATE_REMOVE_MEMBER_ID";
12714
+ const UPDATE_CYBERSOURCE_SESSION_ID = "UPDATE_CYBERSOURCE_SESSION_ID";
12714
12715
 
12715
12716
  const initialState$m = {
12716
12717
  email: "",
@@ -17677,7 +17678,8 @@ class CybersourceGateway {
17677
17678
  product,
17678
17679
  quantity = 1,
17679
17680
  addressId,
17680
- isExistingSource
17681
+ isExistingSource,
17682
+ fingerprint_session_id
17681
17683
  } = options;
17682
17684
  const params = isExistingSource ? {
17683
17685
  source_id: token
@@ -17692,6 +17694,7 @@ class CybersourceGateway {
17692
17694
  campaign_key: window.Pelcro.helpers.getURLParameter("campaign_key"),
17693
17695
  coupon_code: couponCode,
17694
17696
  address_id: product.address_required ? addressId : null,
17697
+ fingerprint_session_id,
17695
17698
  ...params
17696
17699
  }, (err, res) => {
17697
17700
  callback(err, res);
@@ -17893,6 +17896,7 @@ const initialState$k = {
17893
17896
  month: "",
17894
17897
  year: "",
17895
17898
  passwordError: null,
17899
+ cyberSourceSessionId: null,
17896
17900
  alert: {
17897
17901
  type: "error",
17898
17902
  content: ""
@@ -18036,6 +18040,7 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18036
18040
  });
18037
18041
  };
18038
18042
  function handleCybersourcePayment(paymentRequest, state) {
18043
+ console.log("Cybersource Session ID: ", state.cyberSourceSessionId);
18039
18044
  const isUsingExistingPaymentMethod = Boolean(selectedPaymentMethodId);
18040
18045
  if (type === "createPayment") {
18041
18046
  handleCybersourceSubscription();
@@ -18151,7 +18156,8 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18151
18156
  couponCode,
18152
18157
  product,
18153
18158
  isExistingSource: isUsingExistingPaymentMethod,
18154
- addressId: selectedAddressId
18159
+ addressId: selectedAddressId,
18160
+ fingerprint_session_id: state.cyberSourceSessionId
18155
18161
  }, (err, res) => {
18156
18162
  if (err) {
18157
18163
  return handlePaymentError(err);
@@ -18167,6 +18173,24 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18167
18173
  }
18168
18174
  cybersourceInstanceRef.current = microformInstance;
18169
18175
  };
18176
+ const appendCybersourceFingerprintScripts = () => {
18177
+ var _window$Pelcro$site$r, _window$Pelcro$site$r2, _window$Pelcro$site$r3, _window$Pelcro$site$r4;
18178
+ const uniqueId = crypto.randomUUID();
18179
+ const sessionID = ((_window$Pelcro$site$r = window.Pelcro.site.read()) === null || _window$Pelcro$site$r === void 0 ? void 0 : (_window$Pelcro$site$r2 = _window$Pelcro$site$r.cybersource_gateway_settings) === null || _window$Pelcro$site$r2 === void 0 ? void 0 : _window$Pelcro$site$r2.merchant_id) + uniqueId;
18180
+ const orgID = (_window$Pelcro$site$r3 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r3 === void 0 ? void 0 : (_window$Pelcro$site$r4 = _window$Pelcro$site$r3.cybersource_gateway_settings) === null || _window$Pelcro$site$r4 === void 0 ? void 0 : _window$Pelcro$site$r4.org_id;
18181
+ window.Pelcro.helpers.loadSDK(`https://h.online-metrix.net/fp/tags.js?org_id=${orgID}&session_id=${sessionID}`, "cybersource-fingerprint-script");
18182
+ const body = document.getElementsByTagName("body")[0];
18183
+ const noscript = document.createElement("noscript");
18184
+ const iframe = document.createElement("iframe");
18185
+ iframe.style.cssText = "width: 100px; height: 100px; border: 0; position:absolute; top: -5000px;";
18186
+ iframe.src = `https://h.online-metrix.net/fp/tags?org_id=${orgID}&session_id=${sessionID}`;
18187
+ noscript.appendChild(iframe);
18188
+ body.insertBefore(noscript, body.firstChild);
18189
+ dispatch({
18190
+ type: UPDATE_CYBERSOURCE_SESSION_ID,
18191
+ payload: uniqueId
18192
+ });
18193
+ };
18170
18194
  const initCybersourceScript = () => {
18171
18195
  // jwk api call
18172
18196
  window.Pelcro.payment.getJWK({
@@ -18191,6 +18215,7 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18191
18215
  }
18192
18216
  });
18193
18217
  }
18218
+ appendCybersourceFingerprintScripts();
18194
18219
  const {
18195
18220
  key: jwk
18196
18221
  } = res;
@@ -18469,8 +18494,8 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18469
18494
  }
18470
18495
  }
18471
18496
  const initTapScript = () => {
18472
- var _window$Pelcro$site$r;
18473
- const tapKey = window.Tapjsli((_window$Pelcro$site$r = window.Pelcro.site.read()) === null || _window$Pelcro$site$r === void 0 ? void 0 : _window$Pelcro$site$r.tap_gateway_settings.publishable_key);
18497
+ var _window$Pelcro$site$r5;
18498
+ const tapKey = window.Tapjsli((_window$Pelcro$site$r5 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r5 === void 0 ? void 0 : _window$Pelcro$site$r5.tap_gateway_settings.publishable_key);
18474
18499
  let elements = tapKey.elements({});
18475
18500
  let style = {
18476
18501
  base: {
@@ -18680,9 +18705,9 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18680
18705
  useEffect(() => {
18681
18706
  if (skipPayment && ((plan === null || plan === void 0 ? void 0 : plan.amount) === 0 || props !== null && props !== void 0 && props.freeOrders)) return;
18682
18707
  if (cardProcessor === "vantiv" && !selectedPaymentMethodId) {
18683
- var _window$Pelcro$site$r2, _window$Pelcro$site$r3;
18684
- const payPageId = (_window$Pelcro$site$r2 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r2 === void 0 ? void 0 : _window$Pelcro$site$r2.vantiv_gateway_settings.pay_page_id;
18685
- const reportGroup = (_window$Pelcro$site$r3 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r3 === void 0 ? void 0 : _window$Pelcro$site$r3.vantiv_gateway_settings.report_group;
18708
+ var _window$Pelcro$site$r6, _window$Pelcro$site$r7;
18709
+ const payPageId = (_window$Pelcro$site$r6 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r6 === void 0 ? void 0 : _window$Pelcro$site$r6.vantiv_gateway_settings.pay_page_id;
18710
+ const reportGroup = (_window$Pelcro$site$r7 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r7 === void 0 ? void 0 : _window$Pelcro$site$r7.vantiv_gateway_settings.report_group;
18686
18711
  vantivInstanceRef.current = new window.EprotectIframeClient({
18687
18712
  paypageId: payPageId,
18688
18713
  reportGroup: reportGroup,
@@ -18818,9 +18843,9 @@ const PaymentMethodContainerWithoutStripe = _ref => {
18818
18843
  * Updates the total amount after adding taxes only if site taxes are enabled
18819
18844
  */
18820
18845
  const updateTotalAmountWithTax = () => {
18821
- var _window$Pelcro$site$r4;
18846
+ var _window$Pelcro$site$r8;
18822
18847
  if (skipPayment && ((plan === null || plan === void 0 ? void 0 : plan.amount) === 0 || props !== null && props !== void 0 && props.freeOrders)) return;
18823
- const taxesEnabled = (_window$Pelcro$site$r4 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r4 === void 0 ? void 0 : _window$Pelcro$site$r4.taxes_enabled;
18848
+ const taxesEnabled = (_window$Pelcro$site$r8 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r8 === void 0 ? void 0 : _window$Pelcro$site$r8.taxes_enabled;
18824
18849
  if (taxesEnabled && type === "createPayment") {
18825
18850
  dispatch({
18826
18851
  type: DISABLE_SUBMIT,
@@ -19569,11 +19594,11 @@ const PaymentMethodContainerWithoutStripe = _ref => {
19569
19594
  * @return {Promise}
19570
19595
  */
19571
19596
  const resolveTaxCalculation = () => {
19572
- var _window$Pelcro$site$r5;
19597
+ var _window$Pelcro$site$r9;
19573
19598
  if (type === "invoicePayment") {
19574
19599
  return new Promise(resolve => resolve());
19575
19600
  }
19576
- const taxesEnabled = (_window$Pelcro$site$r5 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r5 === void 0 ? void 0 : _window$Pelcro$site$r5.taxes_enabled;
19601
+ const taxesEnabled = (_window$Pelcro$site$r9 = window.Pelcro.site.read()) === null || _window$Pelcro$site$r9 === void 0 ? void 0 : _window$Pelcro$site$r9.taxes_enabled;
19577
19602
  return new Promise((resolve, reject) => {
19578
19603
  // resolve early if taxes isn't enabled
19579
19604
  if (!taxesEnabled) {
@@ -19940,6 +19965,11 @@ const PaymentMethodContainerWithoutStripe = _ref => {
19940
19965
  ...state,
19941
19966
  alert: action.payload
19942
19967
  });
19968
+ case UPDATE_CYBERSOURCE_SESSION_ID:
19969
+ return lib_7({
19970
+ ...state,
19971
+ cybersourceSessionId: action.payload
19972
+ });
19943
19973
  default:
19944
19974
  return state;
19945
19975
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pelcro/react-pelcro-js",
3
3
  "description": "Pelcro's React UI Elements",
4
- "version": "3.23.0-beta.14",
4
+ "version": "3.23.0-beta.15",
5
5
  "license": "MIT",
6
6
  "private": false,
7
7
  "main": "dist/index.cjs.js",