@rebilly/framepay-react 8.0.0 → 8.1.0
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +3 -7
- package/README.md +24 -18
- package/build/index.d.ts +3 -3
- package/build/index.js +3 -2
- package/build/index.spec.js +2 -1
- package/build/lib/components/elements/samsungpay-element.d.ts +4 -0
- package/build/lib/components/elements/samsungpay-element.js +57 -0
- package/build/lib/components/injector.d.ts +51 -1
- package/build/lib/components/injector.js +43 -9
- package/package.json +1 -1
- package/src/index.spec.ts +1 -0
- package/src/index.ts +4 -0
- package/src/lib/components/elements/samsungpay-element.tsx +36 -0
- package/src/lib/components/injector.tsx +53 -0
- package/test/e2e/fixtures/nav.js +1 -0
- package/test/e2e/fixtures/samsung-pay.html +15 -0
- package/test/e2e/fixtures/samsung-pay.js +59 -0
- package/types/elements.d.ts +13 -0
- package/types/injector.d.ts +6 -0
- package/types/rebilly/api.d.ts +1 -0
- package/types/rebilly/payment-elements/elements/samsungpay.d.ts +18 -0
- package/types/rebilly/payment-elements/payment-element-names.d.ts +1 -0
- package/types/rebilly/settings.d.ts +5 -0
package/CHANGELOG.md
CHANGED
@@ -1,10 +1,6 @@
|
|
1
|
-
## [8.
|
1
|
+
## [8.1.0](https://github.com/Rebilly/rebilly/compare/framepay-react-v8.0.0...framepay-react-v8.1.0) (2024-11-14)
|
2
2
|
|
3
3
|
|
4
|
-
###
|
4
|
+
### Features
|
5
5
|
|
6
|
-
* **framepay-
|
7
|
-
|
8
|
-
### Refactors
|
9
|
-
|
10
|
-
* **framepay-vue:** use @rebilly/framepay in framepay-vue ([#8531](https://github.com/Rebilly/rebilly/issues/8531)) ([ebca290](https://github.com/Rebilly/rebilly/commit/ebca2901ba85935bf390bdf125cbaaa78ddecc3e))
|
6
|
+
* **framepay-react:** add samsung-pay ([#8436](https://github.com/Rebilly/rebilly/issues/8436)) ([fd93a05](https://github.com/Rebilly/rebilly/commit/fd93a05853926c16ea9d83a5fe5ea678d7fafb47))
|
package/README.md
CHANGED
@@ -23,6 +23,7 @@ This package is a wrapper for [FramePay](https://www.rebilly.com/docs/dev-docs/f
|
|
23
23
|
- [withFramePayCardComponent (Card props)](#withframepaycardcomponent-card-props)
|
24
24
|
- [withFramePayBankComponent (Bank props)](#withframepaybankcomponent-bank-props)
|
25
25
|
- [withFramePayApplePayComponent (Apple Pay props)](#withframepayapplepaycomponent-apple-pay-props)
|
26
|
+
- [withFramePaySamsungPayComponent (Samsung Pay props)](#withframepaysamsungpaycomponent-samsung-pay-props)
|
26
27
|
- [withFramePayGooglePayComponent (Google Pay props)](#withframepaygooglepaycomponent-google-pay-props)
|
27
28
|
- [withFramePayPaypalComponent (Paypal props)](#withframepaypaypalcomponent-paypal-props)
|
28
29
|
- [With FramePay (`withFramePay`) HOC](#with-framepay-withframepay-hoc)
|
@@ -42,16 +43,16 @@ This package is a wrapper for [FramePay](https://www.rebilly.com/docs/dev-docs/f
|
|
42
43
|
### FramePay documentation
|
43
44
|
For more information on FramePay see its [official documentation](https://www.rebilly.com/docs/dev-docs/framepay/).
|
44
45
|
|
45
|
-
### Demos
|
46
|
-
- [Use with react-redux (CodeSandbox)](https://codesandbox.io/s/n089y731x4)
|
47
|
-
- [Use with react-router (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4)
|
46
|
+
### Demos
|
47
|
+
- [Use with react-redux (CodeSandbox)](https://codesandbox.io/s/n089y731x4)
|
48
|
+
- [Use with react-router (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4)
|
48
49
|
- [Examples from README file (CodeSandbox, React 14/15)](https://codesandbox.io/s/8ly7ml77y9)
|
49
|
-
- [Multiple Payment Methods (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/MultiplePaymentMethods.js)
|
50
|
-
- [Multiple Payment Methods Short version (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/MultiplePaymentMethodsShort.js)
|
51
|
-
- [Separated fields for the payment card method (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/PaymentCardSeparated.js)
|
52
|
-
- [Other Payment Methods (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/OtherPaymentMethods.js)
|
53
|
-
- [TypeScript (CodeSandbox)](https://codesandbox.io/s/j74n80zk5w)
|
54
|
-
- [More examples from the E2E tests](test/e2e/fixtures)
|
50
|
+
- [Multiple Payment Methods (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/MultiplePaymentMethods.js)
|
51
|
+
- [Multiple Payment Methods Short version (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/MultiplePaymentMethodsShort.js)
|
52
|
+
- [Separated fields for the payment card method (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/PaymentCardSeparated.js)
|
53
|
+
- [Other Payment Methods (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/OtherPaymentMethods.js)
|
54
|
+
- [TypeScript (CodeSandbox)](https://codesandbox.io/s/j74n80zk5w)
|
55
|
+
- [More examples from the E2E tests](test/e2e/fixtures)
|
55
56
|
|
56
57
|
### Installation
|
57
58
|
Install using [Yarn](https://yarnpkg.com/en/):
|
@@ -69,7 +70,7 @@ npm install @rebilly/framepay-react --save
|
|
69
70
|
> The example described in this readme can be found [here (CodeSandbox)](https://codesandbox.io/s/8ly7ml77y9)
|
70
71
|
|
71
72
|
#### The FramePay context (`FramePayProvider`)
|
72
|
-
FramePayProvider provides settings to the FramePay API. See [Framepay.initialize](https://www.rebilly.com/docs/dev-docs/framepay-global-reference/#framepay.initialize) for a list of all configuration options.
|
73
|
+
FramePayProvider provides settings to the FramePay API. See [Framepay.initialize](https://www.rebilly.com/docs/dev-docs/framepay-global-reference/#framepay.initialize) for a list of all configuration options.
|
73
74
|
|
74
75
|
```jsx harmony
|
75
76
|
// index.js
|
@@ -98,9 +99,9 @@ publishableKey="pk_sandbox_1234567890"
|
|
98
99
|
#### Setting up your payment form
|
99
100
|
|
100
101
|
###### WARNING
|
101
|
-
Please, don't implementing the unmount functionality, use the examples.
|
102
|
+
Please, don't implementing the unmount functionality, use the examples.
|
102
103
|
|
103
|
-
The react lifecycle methods already implemented in the library.
|
104
|
+
The react lifecycle methods already implemented in the library.
|
104
105
|
|
105
106
|
###### withFramePay (All props)
|
106
107
|
- Framepay - [FramePay's namespace](https://www.rebilly.com/docs/dev-docs/framepay-global-reference)
|
@@ -112,6 +113,7 @@ The react lifecycle methods already implemented in the library.
|
|
112
113
|
- `CardExpiryElement`
|
113
114
|
- `CardNumberElement`
|
114
115
|
- `ApplePayElement`
|
116
|
+
- `SamsungPayElement`
|
115
117
|
- `GooglePayElement`
|
116
118
|
- `PaypalElement`
|
117
119
|
|
@@ -119,7 +121,7 @@ The react lifecycle methods already implemented in the library.
|
|
119
121
|
- Framepay
|
120
122
|
- `CardElement`
|
121
123
|
- `CardCvvElement`
|
122
|
-
- `CardExpiryElement`
|
124
|
+
- `CardExpiryElement`
|
123
125
|
- `CardNumberElement`
|
124
126
|
|
125
127
|
###### withFramePayBankComponent (Bank props)
|
@@ -132,6 +134,10 @@ The react lifecycle methods already implemented in the library.
|
|
132
134
|
- Framepay
|
133
135
|
- `ApplePayElement`
|
134
136
|
|
137
|
+
###### withFramePaySamsungPayComponent (Samsung Pay props)
|
138
|
+
- Framepay
|
139
|
+
- `SamsungPayElement`
|
140
|
+
|
135
141
|
###### withFramePayGooglePayComponent (Google Pay props)
|
136
142
|
- Framepay
|
137
143
|
- `GooglePayElement`
|
@@ -141,11 +147,11 @@ The react lifecycle methods already implemented in the library.
|
|
141
147
|
- `PaypalElement`
|
142
148
|
|
143
149
|
##### With FramePay (`withFramePay`) HOC
|
144
|
-
This simple FramePay HOC is used to provide the `Framepay` API in your component. It is most commonly used in combination with multiple payment methods.
|
150
|
+
This simple FramePay HOC is used to provide the `Framepay` API in your component. It is most commonly used in combination with multiple payment methods.
|
145
151
|
|
146
|
-
- [Payment cards and ACH (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/MultiplePaymentMethods.js)
|
147
|
-
- [Payment cards and ACH Short version (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/MultiplePaymentMethodsShort.js)
|
148
|
-
- [Alternative methods (Bitcoin) (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/OtherPaymentMethods.js)
|
152
|
+
- [Payment cards and ACH (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/MultiplePaymentMethods.js)
|
153
|
+
- [Payment cards and ACH Short version (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/MultiplePaymentMethodsShort.js)
|
154
|
+
- [Alternative methods (Bitcoin) (CodeSandbox)](https://codesandbox.io/s/z2q2lx9ry4?module=/src/elements/OtherPaymentMethods.js)
|
149
155
|
|
150
156
|
##### Card elements (`withFramePayCardComponent`) HOC
|
151
157
|
|
@@ -269,7 +275,7 @@ export default withFramePayBankComponent(MyBankPageComponent);
|
|
269
275
|
The **framepay-react** package supports all the [FramePay](https://www.rebilly.com/docs/dev-docs/framepay/) initialization settings.
|
270
276
|
See [Framepay.initialize](https://www.rebilly.com/docs/dev-docs/framepay-global-reference/#framepay.initialize) for all customizations.
|
271
277
|
|
272
|
-
Additionally `injectStyle` is available. When defined in the `FramePayProvider` it will add the default FramePay CSS in the header of your application.
|
278
|
+
Additionally `injectStyle` is available. When defined in the `FramePayProvider` it will add the default FramePay CSS in the header of your application.
|
273
279
|
|
274
280
|
```jsx harmony
|
275
281
|
<FramePayProvider injectStyle publishableKey="pk_sandbox_1234567890">
|
package/build/index.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import { SUPPORTED_CARD_BRANDS } from './lib/constants';
|
2
|
-
import { withFramePay, withFramePayApplePayComponent, withFramePayBankComponent, withFramePayCardComponent, withFramePayGooglePayComponent, withFramePayIBANComponent, withFramePayPaypalComponent } from './lib/components/injector';
|
2
|
+
import { withFramePay, withFramePayApplePayComponent, withFramePaySamsungPayComponent, withFramePayBankComponent, withFramePayCardComponent, withFramePayGooglePayComponent, withFramePayIBANComponent, withFramePayPaypalComponent } from './lib/components/injector';
|
3
3
|
import FramePayProvider from './lib/components/provider';
|
4
|
-
import { FramePayApplePayProps, FramePayBankProps, FramePayCardProps, FramePayComponentProps, FramePayGooglePayProps, FramePayIBANProps, FramePayPaypalProps } from '../types/injector';
|
5
|
-
export { SUPPORTED_CARD_BRANDS, FramePayProvider, withFramePay, withFramePayCardComponent, withFramePayBankComponent, withFramePayIBANComponent, withFramePayApplePayComponent, withFramePayGooglePayComponent, withFramePayPaypalComponent, FramePayComponentProps, FramePayCardProps, FramePayBankProps, FramePayIBANProps, FramePayApplePayProps, FramePayGooglePayProps, FramePayPaypalProps, };
|
4
|
+
import { FramePayApplePayProps, FramePaySamsungPayProps, FramePayBankProps, FramePayCardProps, FramePayComponentProps, FramePayGooglePayProps, FramePayIBANProps, FramePayPaypalProps } from '../types/injector';
|
5
|
+
export { SUPPORTED_CARD_BRANDS, FramePayProvider, withFramePay, withFramePayCardComponent, withFramePayBankComponent, withFramePayIBANComponent, withFramePayApplePayComponent, withFramePaySamsungPayComponent, withFramePayGooglePayComponent, withFramePayPaypalComponent, FramePayComponentProps, FramePayCardProps, FramePayBankProps, FramePayIBANProps, FramePayApplePayProps, FramePaySamsungPayProps, FramePayGooglePayProps, FramePayPaypalProps, };
|
package/build/index.js
CHANGED
@@ -3,12 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.withFramePayPaypalComponent = exports.withFramePayGooglePayComponent = exports.withFramePayApplePayComponent = exports.withFramePayIBANComponent = exports.withFramePayBankComponent = exports.withFramePayCardComponent = exports.withFramePay = exports.FramePayProvider = exports.SUPPORTED_CARD_BRANDS = void 0;
|
6
|
+
exports.withFramePayPaypalComponent = exports.withFramePayGooglePayComponent = exports.withFramePaySamsungPayComponent = exports.withFramePayApplePayComponent = exports.withFramePayIBANComponent = exports.withFramePayBankComponent = exports.withFramePayCardComponent = exports.withFramePay = exports.FramePayProvider = exports.SUPPORTED_CARD_BRANDS = void 0;
|
7
7
|
var constants_1 = require("./lib/constants");
|
8
8
|
Object.defineProperty(exports, "SUPPORTED_CARD_BRANDS", { enumerable: true, get: function () { return constants_1.SUPPORTED_CARD_BRANDS; } });
|
9
9
|
var injector_1 = require("./lib/components/injector");
|
10
10
|
Object.defineProperty(exports, "withFramePay", { enumerable: true, get: function () { return injector_1.withFramePay; } });
|
11
11
|
Object.defineProperty(exports, "withFramePayApplePayComponent", { enumerable: true, get: function () { return injector_1.withFramePayApplePayComponent; } });
|
12
|
+
Object.defineProperty(exports, "withFramePaySamsungPayComponent", { enumerable: true, get: function () { return injector_1.withFramePaySamsungPayComponent; } });
|
12
13
|
Object.defineProperty(exports, "withFramePayBankComponent", { enumerable: true, get: function () { return injector_1.withFramePayBankComponent; } });
|
13
14
|
Object.defineProperty(exports, "withFramePayCardComponent", { enumerable: true, get: function () { return injector_1.withFramePayCardComponent; } });
|
14
15
|
Object.defineProperty(exports, "withFramePayGooglePayComponent", { enumerable: true, get: function () { return injector_1.withFramePayGooglePayComponent; } });
|
@@ -16,4 +17,4 @@ Object.defineProperty(exports, "withFramePayIBANComponent", { enumerable: true,
|
|
16
17
|
Object.defineProperty(exports, "withFramePayPaypalComponent", { enumerable: true, get: function () { return injector_1.withFramePayPaypalComponent; } });
|
17
18
|
var provider_1 = __importDefault(require("./lib/components/provider"));
|
18
19
|
exports.FramePayProvider = provider_1.default;
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNkNBQXdEO0FBMkJwRCxzR0EzQkssaUNBQXFCLE9BMkJMO0FBekJ6QixzREFTbUM7QUFrQi9CLDZGQTFCQSx1QkFBWSxPQTBCQTtBQUlaLDhHQTdCQSx3Q0FBNkIsT0E2QkE7QUFDN0IsZ0hBN0JBLDBDQUErQixPQTZCQTtBQUgvQiwwR0F6QkEsb0NBQXlCLE9BeUJBO0FBRHpCLDBHQXZCQSxvQ0FBeUIsT0F1QkE7QUFLekIsK0dBM0JBLHlDQUE4QixPQTJCQTtBQUg5QiwwR0F2QkEsb0NBQXlCLE9BdUJBO0FBSXpCLDRHQTFCQSxzQ0FBMkIsT0EwQkE7QUF2Qi9CLHVFQUF5RDtBQWVyRCwyQkFmRyxrQkFBZ0IsQ0FlSCJ9
|
package/build/index.spec.js
CHANGED
@@ -29,6 +29,7 @@ var exportKeys = [
|
|
29
29
|
'FramePayProvider',
|
30
30
|
'withFramePay',
|
31
31
|
'withFramePayApplePayComponent',
|
32
|
+
'withFramePaySamsungPayComponent',
|
32
33
|
'withFramePayCardComponent',
|
33
34
|
'withFramePayBankComponent',
|
34
35
|
'withFramePayGooglePayComponent',
|
@@ -40,4 +41,4 @@ describe('lib/index', function () {
|
|
40
41
|
expect(Object.keys(lib).sort()).toEqual(exportKeys);
|
41
42
|
});
|
42
43
|
});
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBK0I7QUFFL0IsSUFBTSxVQUFVLEdBQTBCO0lBQ3RDLHVCQUF1QjtJQUN2QixrQkFBa0I7SUFDbEIsY0FBYztJQUNkLCtCQUErQjtJQUMvQixpQ0FBaUM7SUFDakMsMkJBQTJCO0lBQzNCLDJCQUEyQjtJQUMzQixnQ0FBZ0M7SUFDaEMsMkJBQTJCO0lBQzNCLDZCQUE2QjtDQUNoQyxDQUFDLElBQUksRUFBRSxDQUFDO0FBRVQsUUFBUSxDQUFDLFdBQVcsRUFBRTtJQUNsQixFQUFFLENBQUMsZ0NBQWdDLEVBQUU7UUFDakMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEQsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDLENBQUMsQ0FBQyJ9
|
@@ -0,0 +1,57 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
3
|
+
var extendStatics = function (d, b) {
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
7
|
+
return extendStatics(d, b);
|
8
|
+
};
|
9
|
+
return function (d, b) {
|
10
|
+
if (typeof b !== "function" && b !== null)
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
12
|
+
extendStatics(d, b);
|
13
|
+
function __() { this.constructor = d; }
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
15
|
+
};
|
16
|
+
})();
|
17
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
18
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
19
|
+
};
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
21
|
+
var framepay_error_1 = __importDefault(require("../../framepay-error"));
|
22
|
+
var base_element_1 = __importDefault(require("./base-element"));
|
23
|
+
var SamsungPayElement = /** @class */ (function (_super) {
|
24
|
+
__extends(SamsungPayElement, _super);
|
25
|
+
function SamsungPayElement() {
|
26
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
27
|
+
}
|
28
|
+
SamsungPayElement.prototype.setupElement = function () {
|
29
|
+
var _this = this;
|
30
|
+
var Framepay = this.props.Framepay;
|
31
|
+
var makeElement = function () {
|
32
|
+
// elementNode already checked in BaseElement.handleSetupElement
|
33
|
+
// just ts checks fix
|
34
|
+
if (!_this.elementNode) {
|
35
|
+
throw (0, framepay_error_1.default)({
|
36
|
+
code: framepay_error_1.default.codes.elementMountError,
|
37
|
+
details: "SamsungPayElement invalid elementNode",
|
38
|
+
});
|
39
|
+
}
|
40
|
+
try {
|
41
|
+
return Framepay.samsungPay.mount(_this.elementNode);
|
42
|
+
}
|
43
|
+
catch (e) {
|
44
|
+
throw (0, framepay_error_1.default)({
|
45
|
+
code: framepay_error_1.default.codes.elementMountError,
|
46
|
+
details: "SamsungPayElement error in remote api call",
|
47
|
+
trace: e,
|
48
|
+
});
|
49
|
+
}
|
50
|
+
};
|
51
|
+
var element = makeElement();
|
52
|
+
this.setState({ element: element });
|
53
|
+
};
|
54
|
+
return SamsungPayElement;
|
55
|
+
}(base_element_1.default));
|
56
|
+
exports.default = SamsungPayElement;
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Ftc3VuZ3BheS1lbGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL2VsZW1lbnRzL3NhbXN1bmdwYXktZWxlbWVudC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSx3RUFBaUQ7QUFDakQsZ0VBQXlDO0FBRXpDO0lBQStDLHFDQUc5QztJQUhEOztJQStCQSxDQUFDO0lBM0JHLHdDQUFZLEdBQVo7UUFBQSxpQkEwQkM7UUF6QlcsSUFBQSxRQUFRLEdBQUssSUFBSSxDQUFDLEtBQUssU0FBZixDQUFnQjtRQUVoQyxJQUFNLFdBQVcsR0FBRztZQUNoQixnRUFBZ0U7WUFDaEUscUJBQXFCO1lBQ3JCLElBQUksQ0FBQyxLQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sSUFBQSx3QkFBYSxFQUFDO29CQUNoQixJQUFJLEVBQUUsd0JBQWEsQ0FBQyxLQUFLLENBQUMsaUJBQWlCO29CQUMzQyxPQUFPLEVBQUUsdUNBQXVDO2lCQUNuRCxDQUFDLENBQUM7WUFDUCxDQUFDO1lBRUQsSUFBSSxDQUFDO2dCQUNELE9BQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3ZELENBQUM7WUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUNULE1BQU0sSUFBQSx3QkFBYSxFQUFDO29CQUNoQixJQUFJLEVBQUUsd0JBQWEsQ0FBQyxLQUFLLENBQUMsaUJBQWlCO29CQUMzQyxPQUFPLEVBQUUsNENBQTRDO29CQUNyRCxLQUFLLEVBQUUsQ0FBQztpQkFDWCxDQUFDLENBQUM7WUFDUCxDQUFDO1FBQ0wsQ0FBQyxDQUFDO1FBRUYsSUFBTSxPQUFPLEdBQUcsV0FBVyxFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLE9BQU8sU0FBQSxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBQ0wsd0JBQUM7QUFBRCxDQUFDLEFBL0JELENBQStDLHNCQUFXLEdBK0J6RCJ9
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import * as React from 'react';
|
2
|
-
import type { FramePayApplePayProps, FramePayBankProps, FramePayCardProps, FramePayComponentProps, FramePayGooglePayProps, FramePayIBANProps, FramePayPaypalProps } from '../../../types/injector';
|
2
|
+
import type { FramePayApplePayProps, FramePaySamsungPayProps, FramePayBankProps, FramePayCardProps, FramePayComponentProps, FramePayGooglePayProps, FramePayIBANProps, FramePayPaypalProps } from '../../../types/injector';
|
3
3
|
export declare function withFramePay<OriginalProps extends object>(WrappedComponent: React.ComponentType<OriginalProps & FramePayComponentProps>): {
|
4
4
|
new (props: OriginalProps | Readonly<OriginalProps>): {
|
5
5
|
render(): JSX.Element;
|
@@ -250,6 +250,56 @@ export declare function withFramePayApplePayComponent<OriginalProps extends obje
|
|
250
250
|
readonly displayName: string;
|
251
251
|
contextType?: React.Context<any> | undefined;
|
252
252
|
};
|
253
|
+
export declare function withFramePaySamsungPayComponent<OriginalProps extends object>(WrappedComponent: React.ComponentType<OriginalProps & FramePaySamsungPayProps>): {
|
254
|
+
new (props: OriginalProps | Readonly<OriginalProps>): {
|
255
|
+
render(): JSX.Element;
|
256
|
+
context: unknown;
|
257
|
+
setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<OriginalProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
|
258
|
+
forceUpdate(callback?: (() => void) | undefined): void;
|
259
|
+
readonly props: Readonly<OriginalProps>;
|
260
|
+
state: Readonly<{}>;
|
261
|
+
refs: {
|
262
|
+
[key: string]: React.ReactInstance;
|
263
|
+
};
|
264
|
+
componentDidMount?(): void;
|
265
|
+
shouldComponentUpdate?(nextProps: Readonly<OriginalProps>, nextState: Readonly<{}>, nextContext: any): boolean;
|
266
|
+
componentWillUnmount?(): void;
|
267
|
+
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
268
|
+
getSnapshotBeforeUpdate?(prevProps: Readonly<OriginalProps>, prevState: Readonly<{}>): any;
|
269
|
+
componentDidUpdate?(prevProps: Readonly<OriginalProps>, prevState: Readonly<{}>, snapshot?: any): void;
|
270
|
+
componentWillMount?(): void;
|
271
|
+
UNSAFE_componentWillMount?(): void;
|
272
|
+
componentWillReceiveProps?(nextProps: Readonly<OriginalProps>, nextContext: any): void;
|
273
|
+
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<OriginalProps>, nextContext: any): void;
|
274
|
+
componentWillUpdate?(nextProps: Readonly<OriginalProps>, nextState: Readonly<{}>, nextContext: any): void;
|
275
|
+
UNSAFE_componentWillUpdate?(nextProps: Readonly<OriginalProps>, nextState: Readonly<{}>, nextContext: any): void;
|
276
|
+
};
|
277
|
+
new (props: OriginalProps, context: any): {
|
278
|
+
render(): JSX.Element;
|
279
|
+
context: unknown;
|
280
|
+
setState<K extends never>(state: {} | ((prevState: Readonly<{}>, props: Readonly<OriginalProps>) => {} | Pick<{}, K> | null) | Pick<{}, K> | null, callback?: (() => void) | undefined): void;
|
281
|
+
forceUpdate(callback?: (() => void) | undefined): void;
|
282
|
+
readonly props: Readonly<OriginalProps>;
|
283
|
+
state: Readonly<{}>;
|
284
|
+
refs: {
|
285
|
+
[key: string]: React.ReactInstance;
|
286
|
+
};
|
287
|
+
componentDidMount?(): void;
|
288
|
+
shouldComponentUpdate?(nextProps: Readonly<OriginalProps>, nextState: Readonly<{}>, nextContext: any): boolean;
|
289
|
+
componentWillUnmount?(): void;
|
290
|
+
componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
|
291
|
+
getSnapshotBeforeUpdate?(prevProps: Readonly<OriginalProps>, prevState: Readonly<{}>): any;
|
292
|
+
componentDidUpdate?(prevProps: Readonly<OriginalProps>, prevState: Readonly<{}>, snapshot?: any): void;
|
293
|
+
componentWillMount?(): void;
|
294
|
+
UNSAFE_componentWillMount?(): void;
|
295
|
+
componentWillReceiveProps?(nextProps: Readonly<OriginalProps>, nextContext: any): void;
|
296
|
+
UNSAFE_componentWillReceiveProps?(nextProps: Readonly<OriginalProps>, nextContext: any): void;
|
297
|
+
componentWillUpdate?(nextProps: Readonly<OriginalProps>, nextState: Readonly<{}>, nextContext: any): void;
|
298
|
+
UNSAFE_componentWillUpdate?(nextProps: Readonly<OriginalProps>, nextState: Readonly<{}>, nextContext: any): void;
|
299
|
+
};
|
300
|
+
readonly displayName: string;
|
301
|
+
contextType?: React.Context<any> | undefined;
|
302
|
+
};
|
253
303
|
export declare function withFramePayGooglePayComponent<OriginalProps extends object>(WrappedComponent: React.ComponentType<OriginalProps & FramePayGooglePayProps>): {
|
254
304
|
new (props: OriginalProps | Readonly<OriginalProps>): {
|
255
305
|
render(): JSX.Element;
|
@@ -53,10 +53,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
53
53
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
54
54
|
};
|
55
55
|
Object.defineProperty(exports, "__esModule", { value: true });
|
56
|
-
exports.withFramePayPaypalComponent = exports.withFramePayGooglePayComponent = exports.withFramePayApplePayComponent = exports.withFramePayIBANComponent = exports.withFramePayBankComponent = exports.withFramePayCardComponent = exports.withFramePay = void 0;
|
56
|
+
exports.withFramePayPaypalComponent = exports.withFramePayGooglePayComponent = exports.withFramePaySamsungPayComponent = exports.withFramePayApplePayComponent = exports.withFramePayIBANComponent = exports.withFramePayBankComponent = exports.withFramePayCardComponent = exports.withFramePay = void 0;
|
57
57
|
var React = __importStar(require("react"));
|
58
58
|
var context_1 = require("../context");
|
59
59
|
var applepay_element_1 = __importDefault(require("./elements/applepay-element"));
|
60
|
+
var samsungpay_element_1 = __importDefault(require("./elements/samsungpay-element"));
|
60
61
|
var bank_element_1 = __importDefault(require("./elements/bank-element"));
|
61
62
|
var card_element_1 = __importDefault(require("./elements/card-element"));
|
62
63
|
var googlepay_element_1 = __importDefault(require("./elements/googlepay-element"));
|
@@ -205,6 +206,19 @@ var elementsFabric = function (type) {
|
|
205
206
|
ApplePayElement: ApplePayElement,
|
206
207
|
};
|
207
208
|
}
|
209
|
+
if (type === 'samsungPay') {
|
210
|
+
/**
|
211
|
+
* Samsung Pay
|
212
|
+
*/
|
213
|
+
var SamsungPayElement = Hoc('SamsungPayElement', samsungpay_element_1.default, function (data) {
|
214
|
+
return ({
|
215
|
+
Framepay: makeFramepayProps(data),
|
216
|
+
});
|
217
|
+
});
|
218
|
+
return {
|
219
|
+
SamsungPayElement: SamsungPayElement,
|
220
|
+
};
|
221
|
+
}
|
208
222
|
if (type === 'googlePay') {
|
209
223
|
/**
|
210
224
|
* Google Pay
|
@@ -238,7 +252,7 @@ var elementsFabric = function (type) {
|
|
238
252
|
};
|
239
253
|
function withFramePay(WrappedComponent) {
|
240
254
|
var _a;
|
241
|
-
var elements = __assign(__assign(__assign(__assign(__assign(__assign({}, elementsFabric('card')), elementsFabric('bankAccount')), elementsFabric('iban')), elementsFabric('applePay')), elementsFabric('googlePay')), elementsFabric('paypal'));
|
255
|
+
var elements = __assign(__assign(__assign(__assign(__assign(__assign(__assign({}, elementsFabric('card')), elementsFabric('bankAccount')), elementsFabric('iban')), elementsFabric('applePay')), elementsFabric('samsungPay')), elementsFabric('googlePay')), elementsFabric('paypal'));
|
242
256
|
return _a = /** @class */ (function (_super) {
|
243
257
|
__extends(class_2, _super);
|
244
258
|
function class_2() {
|
@@ -336,9 +350,9 @@ function withFramePayApplePayComponent(WrappedComponent) {
|
|
336
350
|
_a;
|
337
351
|
}
|
338
352
|
exports.withFramePayApplePayComponent = withFramePayApplePayComponent;
|
339
|
-
function
|
353
|
+
function withFramePaySamsungPayComponent(WrappedComponent) {
|
340
354
|
var _a;
|
341
|
-
var elements = elementsFabric('
|
355
|
+
var elements = elementsFabric('samsungPay');
|
342
356
|
return _a = /** @class */ (function (_super) {
|
343
357
|
__extends(class_7, _super);
|
344
358
|
function class_7() {
|
@@ -352,13 +366,13 @@ function withFramePayGooglePayComponent(WrappedComponent) {
|
|
352
366
|
};
|
353
367
|
return class_7;
|
354
368
|
}(React.Component)),
|
355
|
-
_a.displayName = "
|
369
|
+
_a.displayName = "withFramePaySamsungPayComponent(".concat(WrappedComponent.displayName || WrappedComponent.name || 'Component', ")"),
|
356
370
|
_a;
|
357
371
|
}
|
358
|
-
exports.
|
359
|
-
function
|
372
|
+
exports.withFramePaySamsungPayComponent = withFramePaySamsungPayComponent;
|
373
|
+
function withFramePayGooglePayComponent(WrappedComponent) {
|
360
374
|
var _a;
|
361
|
-
var elements = elementsFabric('
|
375
|
+
var elements = elementsFabric('googlePay');
|
362
376
|
return _a = /** @class */ (function (_super) {
|
363
377
|
__extends(class_8, _super);
|
364
378
|
function class_8() {
|
@@ -372,8 +386,28 @@ function withFramePayPaypalComponent(WrappedComponent) {
|
|
372
386
|
};
|
373
387
|
return class_8;
|
374
388
|
}(React.Component)),
|
389
|
+
_a.displayName = "withFramePayGooglePayComponent(".concat(WrappedComponent.displayName || WrappedComponent.name || 'Component', ")"),
|
390
|
+
_a;
|
391
|
+
}
|
392
|
+
exports.withFramePayGooglePayComponent = withFramePayGooglePayComponent;
|
393
|
+
function withFramePayPaypalComponent(WrappedComponent) {
|
394
|
+
var _a;
|
395
|
+
var elements = elementsFabric('paypal');
|
396
|
+
return _a = /** @class */ (function (_super) {
|
397
|
+
__extends(class_9, _super);
|
398
|
+
function class_9() {
|
399
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
400
|
+
}
|
401
|
+
class_9.prototype.render = function () {
|
402
|
+
var _this = this;
|
403
|
+
return (React.createElement(context_1.ContextConsumer, null, function (data) {
|
404
|
+
return (React.createElement(WrappedComponent, __assign({}, _this.props, elements, { Framepay: makeFramepayProps(data) })));
|
405
|
+
}));
|
406
|
+
};
|
407
|
+
return class_9;
|
408
|
+
}(React.Component)),
|
375
409
|
_a.displayName = "withFramePayPaypalComponent(".concat(WrappedComponent.displayName || WrappedComponent.name || 'Component', ")"),
|
376
410
|
_a;
|
377
411
|
}
|
378
412
|
exports.withFramePayPaypalComponent = withFramePayPaypalComponent;
|
379
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5qZWN0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxpREFBaUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFakQsMkNBQStCO0FBQy9CLHNDQUE2QztBQUM3QyxpRkFBbUU7QUFDbkUseUVBQTJEO0FBQzNELHlFQUEyRDtBQUMzRCxtRkFBcUU7QUFDckUseUVBQTJEO0FBQzNELDZFQUErRDtBQVkvRCxJQUFNLGlCQUFpQixHQUFHLFVBQUMsSUFBcUI7SUFDNUMsT0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxFQUFFLENBQUMsRUFBRTtRQUN6QyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7UUFDakIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO0tBQ3BCLENBQWtCO0FBSG5CLENBR21CLENBQUM7QUFFeEIsU0FBUyxHQUFHLENBQ1IsSUFBWSxFQUNaLGdCQUF3QyxFQUN4QyxRQUEyQzs7SUFFM0M7WUFBcUIsMkJBQXNCO1lBQXBDOztZQW1CUCxDQUFDO1lBZEcsd0JBQU0sR0FBTjtnQkFBQSxpQkFhQztnQkFaRyxPQUFPLENBQ0gsb0JBQUMseUJBQWUsUUFDWCxVQUFDLElBQXFCO29CQUNuQixJQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ2hDLE9BQU8sQ0FDSCxvQkFBQyxnQkFBZ0IsZUFDSixLQUFJLENBQUMsS0FBSyxFQUFLLFFBQVEsRUFDbEMsQ0FDTCxDQUFDO2dCQUNOLENBQUMsQ0FDYSxDQUNyQixDQUFDO1lBQ04sQ0FBQztZQUNMLGNBQUM7UUFBRCxDQUFDLEFBbkJNLENBQWMsS0FBSyxDQUFDLFNBQVM7UUFDaEIsY0FBVyxHQUFHLHNCQUFlLElB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
|
413
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvaW5qZWN0b3IudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxpREFBaUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFakQsMkNBQStCO0FBQy9CLHNDQUE2QztBQUM3QyxpRkFBbUU7QUFDbkUscUZBQXVFO0FBQ3ZFLHlFQUEyRDtBQUMzRCx5RUFBMkQ7QUFDM0QsbUZBQXFFO0FBQ3JFLHlFQUEyRDtBQUMzRCw2RUFBK0Q7QUFhL0QsSUFBTSxpQkFBaUIsR0FBRyxVQUFDLElBQXFCO0lBQzVDLE9BQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUU7UUFDekMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1FBQ2pCLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztLQUNwQixDQUFrQjtBQUhuQixDQUdtQixDQUFDO0FBRXhCLFNBQVMsR0FBRyxDQUNSLElBQVksRUFDWixnQkFBd0MsRUFDeEMsUUFBMkM7O0lBRTNDO1lBQXFCLDJCQUFzQjtZQUFwQzs7WUFtQlAsQ0FBQztZQWRHLHdCQUFNLEdBQU47Z0JBQUEsaUJBYUM7Z0JBWkcsT0FBTyxDQUNILG9CQUFDLHlCQUFlLFFBQ1gsVUFBQyxJQUFxQjtvQkFDbkIsSUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNoQyxPQUFPLENBQ0gsb0JBQUMsZ0JBQWdCLGVBQ0osS0FBSSxDQUFDLEtBQUssRUFBSyxRQUFRLEVBQ2xDLENBQ0wsQ0FBQztnQkFDTixDQUFDLENBQ2EsQ0FDckIsQ0FBQztZQUNOLENBQUM7WUFDTCxjQUFDO1FBQUQsQ0FBQyxBQW5CTSxDQUFjLEtBQUssQ0FBQyxTQUFTO1FBQ2hCLGNBQVcs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
|
package/package.json
CHANGED
package/src/index.spec.ts
CHANGED
package/src/index.ts
CHANGED
@@ -3,6 +3,7 @@ import { SUPPORTED_CARD_BRANDS } from './lib/constants';
|
|
3
3
|
import {
|
4
4
|
withFramePay,
|
5
5
|
withFramePayApplePayComponent,
|
6
|
+
withFramePaySamsungPayComponent,
|
6
7
|
withFramePayBankComponent,
|
7
8
|
withFramePayCardComponent,
|
8
9
|
withFramePayGooglePayComponent,
|
@@ -14,6 +15,7 @@ import FramePayProvider from './lib/components/provider';
|
|
14
15
|
|
15
16
|
import {
|
16
17
|
FramePayApplePayProps,
|
18
|
+
FramePaySamsungPayProps,
|
17
19
|
FramePayBankProps,
|
18
20
|
FramePayCardProps,
|
19
21
|
FramePayComponentProps,
|
@@ -30,6 +32,7 @@ export {
|
|
30
32
|
withFramePayBankComponent,
|
31
33
|
withFramePayIBANComponent,
|
32
34
|
withFramePayApplePayComponent,
|
35
|
+
withFramePaySamsungPayComponent,
|
33
36
|
withFramePayGooglePayComponent,
|
34
37
|
withFramePayPaypalComponent,
|
35
38
|
FramePayComponentProps,
|
@@ -37,6 +40,7 @@ export {
|
|
37
40
|
FramePayBankProps,
|
38
41
|
FramePayIBANProps,
|
39
42
|
FramePayApplePayProps,
|
43
|
+
FramePaySamsungPayProps,
|
40
44
|
FramePayGooglePayProps,
|
41
45
|
FramePayPaypalProps,
|
42
46
|
};
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import FramePayError from '../../framepay-error';
|
3
|
+
import BaseElement from './base-element';
|
4
|
+
|
5
|
+
export default class SamsungPayElement extends BaseElement<
|
6
|
+
SamsungPayProps,
|
7
|
+
SamsungPayState
|
8
|
+
> {
|
9
|
+
setupElement() {
|
10
|
+
const { Framepay } = this.props;
|
11
|
+
|
12
|
+
const makeElement = () => {
|
13
|
+
// elementNode already checked in BaseElement.handleSetupElement
|
14
|
+
// just ts checks fix
|
15
|
+
if (!this.elementNode) {
|
16
|
+
throw FramePayError({
|
17
|
+
code: FramePayError.codes.elementMountError,
|
18
|
+
details: `SamsungPayElement invalid elementNode`,
|
19
|
+
});
|
20
|
+
}
|
21
|
+
|
22
|
+
try {
|
23
|
+
return Framepay.samsungPay.mount(this.elementNode);
|
24
|
+
} catch (e) {
|
25
|
+
throw FramePayError({
|
26
|
+
code: FramePayError.codes.elementMountError,
|
27
|
+
details: `SamsungPayElement error in remote api call`,
|
28
|
+
trace: e,
|
29
|
+
});
|
30
|
+
}
|
31
|
+
};
|
32
|
+
|
33
|
+
const element = makeElement();
|
34
|
+
this.setState({ element });
|
35
|
+
}
|
36
|
+
}
|
@@ -3,6 +3,7 @@
|
|
3
3
|
import * as React from 'react';
|
4
4
|
import { ContextConsumer } from '../context';
|
5
5
|
import ApplePayElementComponent from './elements/applepay-element';
|
6
|
+
import SamsungPayElementComponent from './elements/samsungpay-element';
|
6
7
|
import BankElementComponent from './elements/bank-element';
|
7
8
|
import CardElementComponent from './elements/card-element';
|
8
9
|
import GooglePayElementComponent from './elements/googlepay-element';
|
@@ -11,6 +12,7 @@ import PaypalElementComponent from './elements/paypal-element';
|
|
11
12
|
|
12
13
|
import type {
|
13
14
|
FramePayApplePayProps,
|
15
|
+
FramePaySamsungPayProps,
|
14
16
|
FramePayBankProps,
|
15
17
|
FramePayCardProps,
|
16
18
|
FramePayComponentProps,
|
@@ -213,6 +215,25 @@ const elementsFabric = (type: PaymentElements): object => {
|
|
213
215
|
};
|
214
216
|
}
|
215
217
|
|
218
|
+
if (type === 'samsungPay') {
|
219
|
+
/**
|
220
|
+
* Samsung Pay
|
221
|
+
*/
|
222
|
+
|
223
|
+
const SamsungPayElement = Hoc(
|
224
|
+
'SamsungPayElement',
|
225
|
+
SamsungPayElementComponent,
|
226
|
+
(data: FramePayContext) =>
|
227
|
+
({
|
228
|
+
Framepay: makeFramepayProps(data),
|
229
|
+
} as SamsungPayProps),
|
230
|
+
);
|
231
|
+
|
232
|
+
return {
|
233
|
+
SamsungPayElement,
|
234
|
+
};
|
235
|
+
}
|
236
|
+
|
216
237
|
if (type === 'googlePay') {
|
217
238
|
/**
|
218
239
|
* Google Pay
|
@@ -269,6 +290,7 @@ export function withFramePay<OriginalProps extends object>(
|
|
269
290
|
...elementsFabric('bankAccount'),
|
270
291
|
...elementsFabric('iban'),
|
271
292
|
...elementsFabric('applePay'),
|
293
|
+
...elementsFabric('samsungPay'),
|
272
294
|
...elementsFabric('googlePay'),
|
273
295
|
...elementsFabric('paypal'),
|
274
296
|
} as FramePayComponentProps;
|
@@ -415,6 +437,37 @@ export function withFramePayApplePayComponent<OriginalProps extends object>(
|
|
415
437
|
};
|
416
438
|
}
|
417
439
|
|
440
|
+
export function withFramePaySamsungPayComponent<OriginalProps extends object>(
|
441
|
+
WrappedComponent: React.ComponentType<
|
442
|
+
OriginalProps & FramePaySamsungPayProps
|
443
|
+
>,
|
444
|
+
) {
|
445
|
+
const elements = elementsFabric('samsungPay') as FramePaySamsungPayProps;
|
446
|
+
return class extends React.Component<OriginalProps, {}> {
|
447
|
+
static readonly displayName = `withFramePaySamsungPayComponent(${
|
448
|
+
WrappedComponent.displayName || WrappedComponent.name || 'Component'
|
449
|
+
})`;
|
450
|
+
|
451
|
+
render() {
|
452
|
+
return (
|
453
|
+
<ContextConsumer>
|
454
|
+
{(data: FramePayContext) => {
|
455
|
+
return (
|
456
|
+
<WrappedComponent
|
457
|
+
{...{
|
458
|
+
...this.props,
|
459
|
+
...elements,
|
460
|
+
Framepay: makeFramepayProps(data),
|
461
|
+
}}
|
462
|
+
/>
|
463
|
+
);
|
464
|
+
}}
|
465
|
+
</ContextConsumer>
|
466
|
+
);
|
467
|
+
}
|
468
|
+
};
|
469
|
+
}
|
470
|
+
|
418
471
|
export function withFramePayGooglePayComponent<OriginalProps extends object>(
|
419
472
|
WrappedComponent: React.ComponentType<
|
420
473
|
OriginalProps & FramePayGooglePayProps
|
package/test/e2e/fixtures/nav.js
CHANGED
@@ -0,0 +1,59 @@
|
|
1
|
+
import React, { Component } from 'react';
|
2
|
+
import ReactDOM from 'react-dom';
|
3
|
+
|
4
|
+
import {
|
5
|
+
FramePayProvider,
|
6
|
+
withFramePaySamsungPayComponent,
|
7
|
+
} from '../../../build';
|
8
|
+
import { prettyDebugRender, ReactVersion } from './util';
|
9
|
+
import './style.css';
|
10
|
+
|
11
|
+
const params = {
|
12
|
+
publishableKey: 'pk_sandbox_S95ATjj4hXZs-T9QpZq1ENl2tDSrUkCGv98utc9',
|
13
|
+
organizationId: '5977150c-1c97-4dd4-9860-6bb2bab070b4',
|
14
|
+
websiteId: 'demo.com',
|
15
|
+
transactionData: {
|
16
|
+
amount: 10,
|
17
|
+
currency: 'USD',
|
18
|
+
label: 'Purchase label 1',
|
19
|
+
},
|
20
|
+
};
|
21
|
+
|
22
|
+
class App extends Component {
|
23
|
+
constructor(props) {
|
24
|
+
super(props);
|
25
|
+
this.state = {
|
26
|
+
token: null,
|
27
|
+
};
|
28
|
+
}
|
29
|
+
|
30
|
+
render() {
|
31
|
+
return (
|
32
|
+
<FramePayProvider
|
33
|
+
injectStyle
|
34
|
+
{...params}
|
35
|
+
onReady={() => {
|
36
|
+
console.log('FramePayProvider.onReady');
|
37
|
+
}}
|
38
|
+
onError={(err) => {
|
39
|
+
console.error('FramePayProvider.onError', err);
|
40
|
+
}}
|
41
|
+
onTokenReady={(token) => this.setState({ token })}
|
42
|
+
>
|
43
|
+
<div>
|
44
|
+
{ReactVersion()}
|
45
|
+
<div>
|
46
|
+
<h3>FramePay version: {this.props.Framepay.version}</h3>
|
47
|
+
<div className="flex-wrapper">
|
48
|
+
{prettyDebugRender(this.state)}
|
49
|
+
<this.props.SamsungPayElement />
|
50
|
+
</div>
|
51
|
+
</div>
|
52
|
+
</div>
|
53
|
+
</FramePayProvider>
|
54
|
+
);
|
55
|
+
}
|
56
|
+
}
|
57
|
+
|
58
|
+
const WrappedApp = withFramePaySamsungPayComponent(App);
|
59
|
+
ReactDOM.render(<WrappedApp />, document.getElementById('app'));
|
package/types/elements.d.ts
CHANGED
@@ -55,6 +55,15 @@ interface ApplePayProps extends FramepayProps {
|
|
55
55
|
readonly id?: string;
|
56
56
|
}
|
57
57
|
|
58
|
+
interface SamsungPayFramepayProps extends FramepayProps {
|
59
|
+
readonly samsungPay: SamsungPayPaymentMethod;
|
60
|
+
}
|
61
|
+
|
62
|
+
interface SamsungPayProps extends FramepayProps {
|
63
|
+
readonly Framepay: SamsungPayFramepayProps;
|
64
|
+
readonly id?: string;
|
65
|
+
}
|
66
|
+
|
58
67
|
interface GooglePayFramepayProps extends FramepayProps {
|
59
68
|
readonly googlePay: GooglePayPaymentMethod;
|
60
69
|
}
|
@@ -87,6 +96,10 @@ interface ApplePayState extends PaymentComponentState {
|
|
87
96
|
readonly element: PaymentElement | null;
|
88
97
|
}
|
89
98
|
|
99
|
+
interface SamsungPayState extends PaymentComponentState {
|
100
|
+
readonly element: PaymentElement | null;
|
101
|
+
}
|
102
|
+
|
90
103
|
interface GooglePayState extends PaymentComponentState {
|
91
104
|
readonly element: PaymentElement | null;
|
92
105
|
}
|
package/types/injector.d.ts
CHANGED
@@ -18,6 +18,7 @@ export interface FramePayComponentProps {
|
|
18
18
|
|
19
19
|
// Express method components
|
20
20
|
readonly ApplePayElement: React.ElementType;
|
21
|
+
readonly SamsungPayElement: React.ElementType;
|
21
22
|
readonly GooglePayElement: React.ElementType;
|
22
23
|
readonly PaypalElement: React.ElementType;
|
23
24
|
}
|
@@ -47,6 +48,11 @@ export interface FramePayApplePayProps {
|
|
47
48
|
readonly ApplePayElement: React.ElementType;
|
48
49
|
}
|
49
50
|
|
51
|
+
export interface FramePaySamsungPayProps {
|
52
|
+
readonly Framepay: FramepayProps;
|
53
|
+
readonly SamsungPayElement: React.ElementType;
|
54
|
+
}
|
55
|
+
|
50
56
|
export interface FramePayGooglePayProps {
|
51
57
|
readonly Framepay: FramepayProps;
|
52
58
|
readonly GooglePayElement: React.ElementType;
|
package/types/rebilly/api.d.ts
CHANGED
@@ -40,6 +40,7 @@ export interface FramepayApi {
|
|
40
40
|
readonly bankAccount: BankPaymentMethod;
|
41
41
|
readonly iban: IBANPaymentMethod;
|
42
42
|
readonly applePay: ApplePayPaymentMethod;
|
43
|
+
readonly samsungPay: SamsungPayPaymentMethod;
|
43
44
|
readonly googlePay: GooglePayPaymentMethod;
|
44
45
|
readonly paypal: PaypalPaymentMethod;
|
45
46
|
readonly createToken: (
|
@@ -0,0 +1,18 @@
|
|
1
|
+
/**
|
2
|
+
* SamsungPay Payment element
|
3
|
+
*/
|
4
|
+
|
5
|
+
/**
|
6
|
+
* SamsungPay Payment Method
|
7
|
+
*/
|
8
|
+
declare type SamsungPayPaymentElementTypes = {
|
9
|
+
readonly form: HTMLElement | React.Component;
|
10
|
+
readonly extraData?: Object;
|
11
|
+
};
|
12
|
+
|
13
|
+
interface SamsungPayPaymentMethod extends PaymentElementWrapper {
|
14
|
+
readonly mount: (
|
15
|
+
node: HTMLElement | HTMLDivElement,
|
16
|
+
options?: SamsungPayPaymentElementTypes,
|
17
|
+
) => PaymentElement;
|
18
|
+
}
|
@@ -108,6 +108,10 @@ interface ApplePayDisplayOptions {
|
|
108
108
|
readonly buttonLanguage: string;
|
109
109
|
}
|
110
110
|
|
111
|
+
interface SamsungPayDisplayOptions {
|
112
|
+
readonly buttonColor: 'white' | 'black';
|
113
|
+
}
|
114
|
+
|
111
115
|
interface GooglePayDisplayOptions {
|
112
116
|
readonly buttonType: string;
|
113
117
|
readonly buttonColor: string;
|
@@ -131,6 +135,7 @@ interface FramePaySettings {
|
|
131
135
|
readonly classes?: FramePaySettingsClasses;
|
132
136
|
readonly card?: FramePayCardSettings;
|
133
137
|
readonly applePay?: ApplePayDisplayOptions;
|
138
|
+
readonly samsungPay?: SamsungPayDisplayOptions;
|
134
139
|
readonly googlePay?: GooglePayDisplayOptions;
|
135
140
|
readonly paypal?: PaypalDisplayOptions;
|
136
141
|
readonly riskMetadata?: FramePaySettingsRiskMetadata;
|