@rebilly/framepay-react 8.2.0 → 9.0.0

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/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
- ## [8.2.0](https://github.com/Rebilly/rebilly/compare/framepay-react-v8.1.2...framepay-react-v8.2.0) (2024-11-19)
1
+ ## [9.0.0](https://github.com/Rebilly/rebilly/compare/framepay-react-v8.3.0...framepay-react-v9.0.0) (2024-11-26)
2
2
 
3
3
 
4
+ ### ⚠ BREAKING CHANGES
5
+
6
+ * **framepay-react:** use @rebilly/framepay in framepay-react (#8702)
7
+ * **framepay-npm:** initial release (#8815)
8
+
4
9
  ### Features
5
10
 
6
- * **api-metadata, rebilly-js-sdk:** Update resources based on latest api definitions ([#8551](https://github.com/Rebilly/rebilly/issues/8551)) ([34ed640](https://github.com/Rebilly/rebilly/commit/34ed640a778915b586b87188c163840b30297afd))
11
+ * **cashier:** Add hosted app ([#8723](https://github.com/Rebilly/rebilly/issues/8723)) ([49481ec](https://github.com/Rebilly/rebilly/commit/49481ec1336a518d5ba513b53b24a46fdcc47acb))
12
+ * **framepay-npm:** initial release ([#8815](https://github.com/Rebilly/rebilly/issues/8815)) ([4029127](https://github.com/Rebilly/rebilly/commit/402912752363d7da51424b38185ac239bae7afe6))
13
+ * **framepay-npm:** Prepare for publishing, and add error propagation ([#8765](https://github.com/Rebilly/rebilly/issues/8765)) ([b4ab4a5](https://github.com/Rebilly/rebilly/commit/b4ab4a52bba2de2c986b1292896391598194ace8))
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * **cashier, framepay-npm:** use framepay-npm types ([#8830](https://github.com/Rebilly/rebilly/issues/8830)) ([8bdeeea](https://github.com/Rebilly/rebilly/commit/8bdeeeaf7accec1d79f2ce4cbdb67a7d4ec76b74))
19
+ * **framepay-npm:** add the main export for the outdated build tools ([#8766](https://github.com/Rebilly/rebilly/issues/8766)) ([abcd6ea](https://github.com/Rebilly/rebilly/commit/abcd6eaec41223b964b0e71dec8a6893916359de))
20
+ * **framepay-npm:** publish package publically ([#8817](https://github.com/Rebilly/rebilly/issues/8817)) ([ccc245c](https://github.com/Rebilly/rebilly/commit/ccc245ccc142ea891695233ecd6e62bc905ddeda))
21
+ * **framepay-react:** fix undefined error ([#8837](https://github.com/Rebilly/rebilly/issues/8837)) ([8d4f6e6](https://github.com/Rebilly/rebilly/commit/8d4f6e65a5edd6d707c3bf36c008a42e67519877))
22
+
23
+
24
+ ### Refactors
25
+
26
+ * **framepay-react:** use @rebilly/framepay in framepay-react ([#8702](https://github.com/Rebilly/rebilly/issues/8702)) ([87ef705](https://github.com/Rebilly/rebilly/commit/87ef7058f67abe0dfa790cc681adedb0aa710c93))
package/README.md CHANGED
@@ -76,13 +76,13 @@ FramePayProvider provides settings to the FramePay API. See [Framepay.initialize
76
76
  // index.js
77
77
  import React from 'react';
78
78
  import { render } from 'react-dom';
79
- import { FramePayProvider } from 'framepay-react';
79
+ import { FramePayProvider } from '@rebilly/framepay-react';
80
80
 
81
81
  import MyCardPageComponent from './MyCardPageComponent';
82
82
 
83
83
  const App = () => {
84
84
  return (
85
- <FramePayProvider injectStyle publishableKey="pk_sandbox_1234567890">
85
+ <FramePayProvider publishableKey="pk_sandbox_1234567890">
86
86
  <MyCardPageComponent/>
87
87
  </FramePayProvider>
88
88
  );
@@ -159,7 +159,7 @@ Wrapper for the payment card features.
159
159
  ```jsx harmony
160
160
  // MyCardPageComponent.js
161
161
  import React from 'react';
162
- import { withFramePayCardComponent } from 'framepay-react';
162
+ import { withFramePayCardComponent } from '@rebilly/framepay-react';
163
163
 
164
164
  class MyCardPageComponent extends React.Component {
165
165
  constructor(props) {
@@ -216,7 +216,7 @@ export default withFramePayCardComponent(MyCardPageComponent);
216
216
  Wrapper for the ACH features.
217
217
  ```jsx harmony
218
218
  import React from 'react';
219
- import { withFramePayBankComponent } from 'framepay-react';
219
+ import { withFramePayBankComponent } from '@rebilly/framepay-react';
220
220
 
221
221
  class MyBankPageComponent extends React.Component {
222
222
  constructor(props) {
@@ -275,10 +275,8 @@ export default withFramePayBankComponent(MyBankPageComponent);
275
275
  The **framepay-react** package supports all the [FramePay](https://www.rebilly.com/docs/dev-docs/framepay/) initialization settings.
276
276
  See [Framepay.initialize](https://www.rebilly.com/docs/dev-docs/framepay-global-reference/#framepay.initialize) for all customizations.
277
277
 
278
- Additionally `injectStyle` is available. When defined in the `FramePayProvider` it will add the default FramePay CSS in the header of your application.
279
-
280
278
  ```jsx harmony
281
- <FramePayProvider injectStyle publishableKey="pk_sandbox_1234567890">
279
+ <FramePayProvider publishableKey="pk_sandbox_1234567890">
282
280
  <MyCardPageComponent/>
283
281
  </FramePayProvider>
284
282
  ```
@@ -296,7 +294,7 @@ The methods `withFramePay`, `withFramePayCardComponent` and `withFramePayBankCom
296
294
  ##### Incorrect
297
295
  ```jsx harmony
298
296
  import * as React from 'react';
299
- import {withFramePayCardComponent} from 'framepay-react'
297
+ import {withFramePayCardComponent} from '@rebilly/framepay-react'
300
298
 
301
299
  class SomeComponent extends React.Component {
302
300
  render(){
@@ -310,7 +308,7 @@ class SomeComponent extends React.Component {
310
308
  ##### Correct
311
309
  ```jsx harmony
312
310
  import * as React from 'react';
313
- import {withFramePayCardComponent} from 'framepay-react'
311
+ import {withFramePayCardComponent} from '@rebilly/framepay-react'
314
312
 
315
313
  const MyCardElement = withFramePayCardComponent(MyCardComponent);
316
314
 
@@ -2,7 +2,6 @@ import * as React from 'react';
2
2
  export default class Provider extends React.Component<ProviderProps, FramePayContext> {
3
3
  static readonly defaultProps: {
4
4
  injectScript: boolean;
5
- injectStyle: boolean;
6
5
  onError: () => {};
7
6
  onReady: () => {};
8
7
  onTokenReady: () => {};
@@ -113,9 +113,6 @@ var Provider = /** @class */ (function (_super) {
113
113
  onReady: function () { return _this.onApiReady(); },
114
114
  });
115
115
  }
116
- if (this.props.injectStyle) {
117
- (0, dom_util_1.injectStyle)();
118
- }
119
116
  };
120
117
  Provider.prototype.onApiError = function () {
121
118
  return this.setState({
@@ -131,12 +128,12 @@ var Provider = /** @class */ (function (_super) {
131
128
  };
132
129
  Provider.prototype.onApiReady = function () {
133
130
  return __awaiter(this, void 0, void 0, function () {
134
- var api, _a, injectStyle_1, children, settings;
131
+ var api, _a, children, settings;
135
132
  var _this = this;
136
133
  return __generator(this, function (_b) {
137
134
  api = (0, get_framepay_api_1.default)();
138
135
  try {
139
- _a = this.props, injectStyle_1 = _a.injectStyle, children = _a.children, settings = __rest(_a, ["injectStyle", "children"]);
136
+ _a = this.props, children = _a.children, settings = __rest(_a, ["children"]);
140
137
  api.initialize(settings);
141
138
  api.on('ready', function () {
142
139
  _this.setState({ ready: true, api: api, error: null });
@@ -185,7 +182,6 @@ var Provider = /** @class */ (function (_super) {
185
182
  };
186
183
  Provider.defaultProps = {
187
184
  injectScript: true,
188
- injectStyle: false,
189
185
  onError: function () { return ({}); },
190
186
  onReady: function () { return ({}); },
191
187
  onTokenReady: function () { return ({}); },
@@ -193,4 +189,4 @@ var Provider = /** @class */ (function (_super) {
193
189
  return Provider;
194
190
  }(React.Component));
195
191
  exports.default = Provider;
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcHJvdmlkZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUErQjtBQUMvQiwwQ0FBb0Q7QUFDcEQsc0NBQTZDO0FBQzdDLHdDQUF3RDtBQUN4RCxxRUFBOEM7QUFDOUMseUVBQWlEO0FBRWpEO0lBQXNDLDRCQUdyQztJQUhEOztRQVlhLFdBQUssR0FBb0I7WUFDOUIsR0FBRyxFQUFFLElBQUEsMEJBQWMsR0FBRTtZQUNyQixLQUFLLEVBQUUsSUFBSTtZQUNYLEtBQUssRUFBRSxLQUFLO1NBQ2YsQ0FBQzs7SUF1Rk4sQ0FBQztJQXJGRyxvQ0FBaUIsR0FBakI7UUFBQSxpQkFVQztRQVRHLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMxQixJQUFBLHVCQUFZLEVBQUM7Z0JBQ1QsT0FBTyxFQUFFLGNBQU0sT0FBQSxLQUFJLENBQUMsVUFBVSxFQUFFLEVBQWpCLENBQWlCO2dCQUNoQyxPQUFPLEVBQUUsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLEVBQUUsRUFBakIsQ0FBaUI7YUFDbkMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN6QixJQUFBLHNCQUFXLEdBQUUsQ0FBQztRQUNsQixDQUFDO0lBQ0wsQ0FBQztJQUVELDZCQUFVLEdBQVY7UUFDSSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQ2hCO1lBQ0ksS0FBSyxFQUFFLHdCQUFhLENBQUMsS0FBSyxDQUFDLGlCQUFpQjtZQUM1QyxLQUFLLEVBQUUsS0FBSztTQUNmLEVBQ0Q7WUFDSSxJQUFNLEtBQUss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
192
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvcHJvdmlkZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUErQjtBQUMvQiwwQ0FBb0Q7QUFDcEQsc0NBQTZDO0FBQzdDLHdDQUEyQztBQUMzQyxxRUFBOEM7QUFDOUMseUVBQWlEO0FBRWpEO0lBQXNDLDRCQUdyQztJQUhEOztRQVdhLFdBQUssR0FBb0I7WUFDOUIsR0FBRyxFQUFFLElBQUEsMEJBQWMsR0FBRTtZQUNyQixLQUFLLEVBQUUsSUFBSTtZQUNYLEtBQUssRUFBRSxLQUFLO1NBQ2YsQ0FBQzs7SUFvRk4sQ0FBQztJQWxGRyxvQ0FBaUIsR0FBakI7UUFBQSxpQkFPQztRQU5HLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMxQixJQUFBLHVCQUFZLEVBQUM7Z0JBQ1QsT0FBTyxFQUFFLGNBQU0sT0FBQSxLQUFJLENBQUMsVUFBVSxFQUFFLEVBQWpCLENBQWlCO2dCQUNoQyxPQUFPLEVBQUUsY0FBTSxPQUFBLEtBQUksQ0FBQyxVQUFVLEVBQUUsRUFBakIsQ0FBaUI7YUFDbkMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNMLENBQUM7SUFFRCw2QkFBVSxHQUFWO1FBQ0ksT0FBTyxJQUFJLENBQUMsUUFBUSxDQUNoQjtZQUNJLEtBQUssRUFBRSx3QkFBYSxDQUFDLEtBQUssQ0FBQyxpQkFBaUI7WUFDNUMsS0FBSyxFQUFFLEtBQUs7U0FDZixFQUNEO1lBQ0ksSUFBTSxLQUFLLEdBQUcsSUFBQSx3QkFBYSxFQUFDO2dCQUN4QixJQUFJLEVBQUUsd0JBQWEsQ0FBQyxLQUFLLENBQUMsaUJBQWlCO2dCQUMzQyxPQUFPLEVBQUUs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
@@ -12,11 +12,11 @@ export declare const REACT_VERSION: string;
12
12
  /**
13
13
  * Remote FramePay library CDN link.
14
14
  */
15
- export declare const FRAMEPAY_SCRIPT_LINK: string;
15
+ export declare const FRAMEPAY_SCRIPT_LINK: string | undefined;
16
16
  /**
17
17
  * Remote FramePay style CDN link.
18
18
  */
19
- export declare const FRAMEPAY_STYLE_LINK: string;
19
+ export declare const FRAMEPAY_STYLE_LINK: string | undefined;
20
20
  /**
21
21
  * Supported FramePay card types
22
22
  */
@@ -39,13 +39,11 @@ exports.REACT_VERSION = React.version;
39
39
  /**
40
40
  * Remote FramePay library CDN link.
41
41
  */
42
- exports.FRAMEPAY_SCRIPT_LINK = process.env.FRAMEPAY_SCRIPT_LINK ||
43
- 'https://framepay.rebilly.com/framepay.js';
42
+ exports.FRAMEPAY_SCRIPT_LINK = typeof process === 'object' ? process.env.FRAMEPAY_SCRIPT_LINK : undefined;
44
43
  /**
45
44
  * Remote FramePay style CDN link.
46
45
  */
47
- exports.FRAMEPAY_STYLE_LINK = process.env.FRAMEPAY_STYLE_LINK ||
48
- 'https://framepay.rebilly.com/framepay.css';
46
+ exports.FRAMEPAY_STYLE_LINK = typeof process === 'object' ? process.env.FRAMEPAY_STYLE_LINK : undefined;
49
47
  /**
50
48
  * Supported FramePay card types
51
49
  */
@@ -60,4 +58,4 @@ exports.SUPPORTED_CARD_BRANDS = {
60
58
  MasterCard: "MasterCard" /* SupportedCardBrands.MasterCard */,
61
59
  Visa: "Visa" /* SupportedCardBrands.Visa */,
62
60
  };
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBK0I7QUFFL0I7Ozs7O0dBS0c7QUFFSDs7O0dBR0c7QUFDVSxRQUFBLGFBQWEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO0FBRTNDOztHQUVHO0FBQ1UsUUFBQSxvQkFBb0IsR0FDN0IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxvQkFBb0I7SUFDaEMsMENBQTBDLENBQUM7QUFFL0M7O0dBRUc7QUFDVSxRQUFBLG1CQUFtQixHQUM1QixPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUMvQiwyQ0FBMkMsQ0FBQztBQUVoRDs7R0FFRztBQUNVLFFBQUEscUJBQXFCLEdBQThCO0lBQzVELElBQUksbURBQTBCO0lBQzlCLFlBQVksd0RBQWtDO0lBQzlDLEdBQUcsK0NBQXlCO0lBQzVCLFVBQVUsb0RBQWdDO0lBQzFDLFFBQVEsK0NBQThCO0lBQ3RDLEdBQUcscUNBQXlCO0lBQzVCLE9BQU8sNkNBQTZCO0lBQ3BDLFVBQVUsbURBQWdDO0lBQzFDLElBQUksdUNBQTBCO0NBQ2pDLENBQUMifQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBK0I7QUFFL0I7Ozs7O0dBS0c7QUFFSDs7O0dBR0c7QUFDVSxRQUFBLGFBQWEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO0FBRTNDOztHQUVHO0FBQ1UsUUFBQSxvQkFBb0IsR0FDN0IsT0FBTyxPQUFPLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFFL0U7O0dBRUc7QUFDVSxRQUFBLG1CQUFtQixHQUM1QixPQUFPLE9BQU8sS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUU5RTs7R0FFRztBQUNVLFFBQUEscUJBQXFCLEdBQThCO0lBQzVELElBQUksbURBQTBCO0lBQzlCLFlBQVksd0RBQWtDO0lBQzlDLEdBQUcsK0NBQXlCO0lBQzVCLFVBQVUsb0RBQWdDO0lBQzFDLFFBQVEsK0NBQThCO0lBQ3RDLEdBQUcscUNBQXlCO0lBQzVCLE9BQU8sNkNBQTZCO0lBQ3BDLFVBQVUsbURBQWdDO0lBQzFDLElBQUksdUNBQTBCO0NBQ2pDLENBQUMifQ==
@@ -2,6 +2,5 @@ interface ScriptProperties {
2
2
  readonly onReady: () => void;
3
3
  readonly onError: () => void;
4
4
  }
5
- export declare const injectScript: ({ onReady, onError }: ScriptProperties) => void;
6
- export declare const injectStyle: () => void;
5
+ export declare const injectScript: ({ onReady, onError }: ScriptProperties) => Promise<void>;
7
6
  export {};
@@ -1,31 +1,66 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.injectStyle = exports.injectScript = void 0;
4
- var constants_1 = require("./constants");
5
- var injectScript = function (_a) {
6
- var onReady = _a.onReady, onError = _a.onError;
7
- var script = document.createElement('script');
8
- var header = document.querySelector('head');
9
- script.setAttribute('type', 'text/javascript');
10
- script.setAttribute('async', 'true');
11
- script.setAttribute('defer', 'true');
12
- script.setAttribute('src', constants_1.FRAMEPAY_SCRIPT_LINK);
13
- script.setAttribute('defer', 'true');
14
- script.addEventListener('load', function () { return onReady(); });
15
- script.addEventListener('error', function () { return onError(); });
16
- if (header) {
17
- header.appendChild(script);
18
- }
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
19
10
  };
20
- exports.injectScript = injectScript;
21
- var injectStyle = function () {
22
- var style = document.createElement('link');
23
- var header = document.querySelector('head');
24
- style.setAttribute('rel', 'stylesheet');
25
- style.setAttribute('href', constants_1.FRAMEPAY_STYLE_LINK);
26
- if (header) {
27
- header.appendChild(style);
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
28
36
  }
29
37
  };
30
- exports.injectStyle = injectStyle;
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2RvbS11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUF3RTtBQU9qRSxJQUFNLFlBQVksR0FBRyxVQUFDLEVBQXNDO1FBQXBDLE9BQU8sYUFBQSxFQUFFLE9BQU8sYUFBQTtJQUMzQyxJQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2hELElBQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUMvQyxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNyQyxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNyQyxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxnQ0FBb0IsQ0FBQyxDQUFDO0lBQ2pELE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsY0FBTSxPQUFBLE9BQU8sRUFBRSxFQUFULENBQVMsQ0FBQyxDQUFDO0lBQ2pELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsY0FBTSxPQUFBLE9BQU8sRUFBRSxFQUFULENBQVMsQ0FBQyxDQUFDO0lBQ2xELElBQUksTUFBTSxFQUFFLENBQUM7UUFDVCxNQUFNLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLENBQUM7QUFDTCxDQUFDLENBQUM7QUFiVyxRQUFBLFlBQVksZ0JBYXZCO0FBRUssSUFBTSxXQUFXLEdBQUc7SUFDdkIsSUFBTSxLQUFLLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3QyxJQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQ3hDLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLCtCQUFtQixDQUFDLENBQUM7SUFDaEQsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUNULE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztBQUNMLENBQUMsQ0FBQztBQVJXLFFBQUEsV0FBVyxlQVF0QiJ9
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.injectScript = void 0;
40
+ var constants_1 = require("./constants");
41
+ var framepay_1 = require("@rebilly/framepay");
42
+ var injectScript = function (_a) { return __awaiter(void 0, [_a], void 0, function (_b) {
43
+ var _error_1;
44
+ var onReady = _b.onReady, onError = _b.onError;
45
+ return __generator(this, function (_c) {
46
+ switch (_c.label) {
47
+ case 0:
48
+ _c.trys.push([0, 2, , 3]);
49
+ return [4 /*yield*/, (0, framepay_1.loadFramepay)({
50
+ scriptLink: constants_1.FRAMEPAY_SCRIPT_LINK,
51
+ styleLink: constants_1.FRAMEPAY_STYLE_LINK,
52
+ })];
53
+ case 1:
54
+ _c.sent();
55
+ onReady();
56
+ return [3 /*break*/, 3];
57
+ case 2:
58
+ _error_1 = _c.sent();
59
+ onError();
60
+ return [3 /*break*/, 3];
61
+ case 3: return [2 /*return*/];
62
+ }
63
+ });
64
+ }); };
65
+ exports.injectScript = injectScript;
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLXV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2RvbS11dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlDQUF3RTtBQUN4RSw4Q0FBaUQ7QUFPMUMsSUFBTSxZQUFZLEdBQUcsaUVBQU8sRUFBc0M7O1FBQXBDLE9BQU8sYUFBQSxFQUFFLE9BQU8sYUFBQTs7Ozs7Z0JBRTdDLHFCQUFNLElBQUEsdUJBQVksRUFBQzt3QkFDZixVQUFVLEVBQUUsZ0NBQW9CO3dCQUNoQyxTQUFTLEVBQUUsK0JBQW1CO3FCQUNqQyxDQUFDLEVBQUE7O2dCQUhGLFNBR0UsQ0FBQztnQkFDSCxPQUFPLEVBQUUsQ0FBQzs7OztnQkFFVixPQUFPLEVBQUUsQ0FBQzs7Ozs7S0FFakIsQ0FBQztBQVZXLFFBQUEsWUFBWSxnQkFVdkIifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rebilly/framepay-react",
3
- "version": "8.2.0",
3
+ "version": "9.0.0",
4
4
  "description": "A React wrapper for Rebilly's FramePay offering out-of-the-box support for Redux and other common React features",
5
5
  "main": "build/index.js",
6
6
  "author": "Rebilly",
@@ -59,6 +59,7 @@
59
59
  "react-dom": "^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0"
60
60
  },
61
61
  "dependencies": {
62
+ "@rebilly/framepay": "*",
62
63
  "create-react-context": "^0.3.0"
63
64
  },
64
65
  "devDependencies": {
@@ -1,49 +1,8 @@
1
1
  import { render } from '@testing-library/react';
2
2
  import * as React from 'react';
3
- import { FRAMEPAY_SCRIPT_LINK, FRAMEPAY_STYLE_LINK } from '../constants';
4
3
  import Provider from './provider';
5
4
 
6
5
  describe('Provider', () => {
7
- it('should add the FramePay script on the page', () => {
8
- const props = { publishableKey: 'pk_sandbox_1234567890' };
9
-
10
- class ChildComponent extends React.Component {
11
- render() {
12
- return <div>child</div>;
13
- }
14
- }
15
-
16
- expect(document.head.innerHTML).not.toContain(FRAMEPAY_SCRIPT_LINK);
17
-
18
- render(
19
- <Provider {...props}>
20
- <ChildComponent />
21
- </Provider>,
22
- );
23
- expect(document.head.innerHTML).toContain(FRAMEPAY_SCRIPT_LINK);
24
- });
25
-
26
- it('should add the FramePay styles on the page', () => {
27
- const props = {
28
- injectStyle: true,
29
- publishableKey: 'pk_sandbox_1234567890',
30
- };
31
-
32
- class ChildComponent extends React.Component {
33
- render() {
34
- return <div>child</div>;
35
- }
36
- }
37
-
38
- expect(document.head.innerHTML).not.toContain(FRAMEPAY_STYLE_LINK);
39
- render(
40
- <Provider {...props}>
41
- <ChildComponent />
42
- </Provider>,
43
- );
44
- expect(document.head.innerHTML).toContain(FRAMEPAY_STYLE_LINK);
45
- });
46
-
47
6
  it('should render with single child component', () => {
48
7
  const props = { publishableKey: 'pk_sandbox_1234567890' };
49
8
 
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { FRAMEPAY_SCRIPT_LINK } from '../constants';
3
3
  import { ContextProvider } from '../context';
4
- import { injectScript, injectStyle } from '../dom-util';
4
+ import { injectScript } from '../dom-util';
5
5
  import FramePayError from '../framepay-error';
6
6
  import getFramepayApi from '../get-framepay-api';
7
7
 
@@ -11,7 +11,6 @@ export default class Provider extends React.Component<
11
11
  > {
12
12
  static readonly defaultProps = {
13
13
  injectScript: true,
14
- injectStyle: false,
15
14
  onError: () => ({}),
16
15
  onReady: () => ({}),
17
16
  onTokenReady: () => ({}),
@@ -30,9 +29,6 @@ export default class Provider extends React.Component<
30
29
  onReady: () => this.onApiReady(),
31
30
  });
32
31
  }
33
- if (this.props.injectStyle) {
34
- injectStyle();
35
- }
36
32
  }
37
33
 
38
34
  onApiError() {
@@ -55,7 +51,7 @@ export default class Provider extends React.Component<
55
51
  const api = getFramepayApi();
56
52
  try {
57
53
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
58
- const { injectStyle, children, ...settings } = this.props;
54
+ const { children, ...settings } = this.props;
59
55
  api.initialize(settings);
60
56
  api.on('ready', () => {
61
57
  this.setState({ ready: true, api, error: null });
@@ -16,16 +16,14 @@ export const REACT_VERSION = React.version;
16
16
  /**
17
17
  * Remote FramePay library CDN link.
18
18
  */
19
- export const FRAMEPAY_SCRIPT_LINK: string =
20
- process.env.FRAMEPAY_SCRIPT_LINK ||
21
- 'https://framepay.rebilly.com/framepay.js';
19
+ export const FRAMEPAY_SCRIPT_LINK =
20
+ typeof process === 'object' ? process.env.FRAMEPAY_SCRIPT_LINK : undefined;
22
21
 
23
22
  /**
24
23
  * Remote FramePay style CDN link.
25
24
  */
26
- export const FRAMEPAY_STYLE_LINK: string =
27
- process.env.FRAMEPAY_STYLE_LINK ||
28
- 'https://framepay.rebilly.com/framepay.css';
25
+ export const FRAMEPAY_STYLE_LINK =
26
+ typeof process === 'object' ? process.env.FRAMEPAY_STYLE_LINK : undefined;
29
27
 
30
28
  /**
31
29
  * Supported FramePay card types
@@ -1,31 +1,19 @@
1
1
  import { FRAMEPAY_SCRIPT_LINK, FRAMEPAY_STYLE_LINK } from './constants';
2
+ import { loadFramepay } from '@rebilly/framepay';
2
3
 
3
4
  interface ScriptProperties {
4
5
  readonly onReady: () => void;
5
6
  readonly onError: () => void;
6
7
  }
7
8
 
8
- export const injectScript = ({ onReady, onError }: ScriptProperties) => {
9
- const script = document.createElement('script');
10
- const header = document.querySelector('head');
11
- script.setAttribute('type', 'text/javascript');
12
- script.setAttribute('async', 'true');
13
- script.setAttribute('defer', 'true');
14
- script.setAttribute('src', FRAMEPAY_SCRIPT_LINK);
15
- script.setAttribute('defer', 'true');
16
- script.addEventListener('load', () => onReady());
17
- script.addEventListener('error', () => onError());
18
- if (header) {
19
- header.appendChild(script);
20
- }
21
- };
22
-
23
- export const injectStyle = () => {
24
- const style = document.createElement('link');
25
- const header = document.querySelector('head');
26
- style.setAttribute('rel', 'stylesheet');
27
- style.setAttribute('href', FRAMEPAY_STYLE_LINK);
28
- if (header) {
29
- header.appendChild(style);
9
+ export const injectScript = async ({ onReady, onError }: ScriptProperties) => {
10
+ try {
11
+ await loadFramepay({
12
+ scriptLink: FRAMEPAY_SCRIPT_LINK,
13
+ styleLink: FRAMEPAY_STYLE_LINK,
14
+ });
15
+ onReady();
16
+ } catch (_error) {
17
+ onError();
30
18
  }
31
19
  };
@@ -30,7 +30,6 @@ class App extends Component {
30
30
  render() {
31
31
  return (
32
32
  <FramePayProvider
33
- injectStyle
34
33
  {...params}
35
34
  onReady={() => {
36
35
  console.log('FramePayProvider.onReady');
@@ -311,7 +311,7 @@ const BankElement = withFramePayBankComponent(CardElementComponent);
311
311
  class App extends Component {
312
312
  render() {
313
313
  return (
314
- <FramePayProvider injectStyle {...params}>
314
+ <FramePayProvider {...params}>
315
315
  <div>
316
316
  {ReactVersion()}
317
317
  <BankElement />
@@ -364,7 +364,7 @@ const CardElement = withFramePayCardComponent(CardElementComponent);
364
364
  class App extends Component {
365
365
  render() {
366
366
  return (
367
- <FramePayProvider injectStyle {...params}>
367
+ <FramePayProvider {...params}>
368
368
  <div>
369
369
  {ReactVersion()}
370
370
  <CardElement />
@@ -259,7 +259,7 @@ const CardElement = withFramePayCardComponent(CardElementComponent);
259
259
  class App extends Component {
260
260
  render() {
261
261
  return (
262
- <FramePayProvider injectStyle {...params}>
262
+ <FramePayProvider {...params}>
263
263
  <div>
264
264
  {ReactVersion()}
265
265
  <CardElement />
@@ -316,7 +316,7 @@ const CardElement = withFramePayCardComponent(CardElementComponent);
316
316
  class App extends Component {
317
317
  render() {
318
318
  return (
319
- <FramePayProvider injectStyle {...params}>
319
+ <FramePayProvider {...params}>
320
320
  <div>
321
321
  {ReactVersion()}
322
322
  <CardElement />
@@ -236,7 +236,7 @@ const CardElement = withFramePayCardComponent(CardElementComponent);
236
236
  class App extends Component {
237
237
  render() {
238
238
  return (
239
- <FramePayProvider injectStyle {...params}>
239
+ <FramePayProvider {...params}>
240
240
  <div>
241
241
  {ReactVersion()}
242
242
  <CardElement />
@@ -30,7 +30,6 @@ class App extends Component {
30
30
  render() {
31
31
  return (
32
32
  <FramePayProvider
33
- injectStyle
34
33
  {...params}
35
34
  onReady={() => {
36
35
  console.log('FramePayProvider.onReady');
@@ -228,7 +228,7 @@ const IBANElement = withFramePayIBANComponent(IBANlementComponent);
228
228
  class App extends Component {
229
229
  render() {
230
230
  return (
231
- <FramePayProvider injectStyle {...params}>
231
+ <FramePayProvider {...params}>
232
232
  <div>
233
233
  {ReactVersion()};
234
234
  <IBANElement />
@@ -257,7 +257,6 @@ class App extends Component {
257
257
  render() {
258
258
  return (
259
259
  <FramePayProvider
260
- injectStyle
261
260
  {...params}
262
261
  onTokenReady={(token) =>
263
262
  this.deepUpdateState({ error: false, data: token })
@@ -451,7 +451,6 @@ class App extends Component {
451
451
  render() {
452
452
  return (
453
453
  <FramePayProvider
454
- injectStyle
455
454
  {...params}
456
455
  onTokenReady={(token) =>
457
456
  this.deepUpdateState({ error: false, data: token })
@@ -26,7 +26,6 @@ class App extends Component {
26
26
  render() {
27
27
  return (
28
28
  <FramePayProvider
29
- injectStyle
30
29
  {...params}
31
30
  onReady={() => {
32
31
  console.log('FramePayProvider.onReady');
@@ -30,7 +30,6 @@ class App extends Component {
30
30
  render() {
31
31
  return (
32
32
  <FramePayProvider
33
- injectStyle
34
33
  {...params}
35
34
  onReady={() => {
36
35
  console.log('FramePayProvider.onReady');
@@ -1,6 +1,5 @@
1
1
  interface ProviderProps extends FramePaySettings {
2
2
  children?: React.ReactNode | undefined;
3
- readonly injectStyle?: boolean;
4
3
  readonly injectScript?: boolean;
5
4
  readonly onReady?: () => void;
6
5
  readonly onError?: (error: object) => void;