@idonatedev/idonate-sdk 1.1.0-dev8 → 1.2.0-dev0
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/README.md +308 -7
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +2 -6
- package/dist/esm/apple-pay.d.ts +12 -0
- package/dist/esm/apple-pay.js +74 -0
- package/dist/esm/cloudflare-challenge-handler.d.ts +5 -0
- package/dist/esm/cloudflare-challenge-handler.js +77 -0
- package/dist/esm/config-handler.d.ts +22 -0
- package/dist/esm/config-handler.js +47 -0
- package/dist/esm/constants.d.ts +18 -0
- package/dist/esm/constants.js +81 -0
- package/dist/esm/google-pay.d.ts +18 -0
- package/dist/esm/google-pay.js +140 -0
- package/dist/esm/idonate-client.d.ts +32 -0
- package/dist/esm/idonate-client.js +294 -0
- package/dist/esm/index.d.ts +11 -0
- package/dist/esm/index.js +11 -0
- package/dist/esm/recaptcha.d.ts +12 -0
- package/dist/esm/recaptcha.js +89 -0
- package/dist/esm/shared.d.ts +4 -0
- package/dist/esm/shared.js +21 -0
- package/dist/esm/test-utils.d.ts +81 -0
- package/dist/esm/test-utils.js +94 -0
- package/dist/esm/tokenize/CardConnectTokenizer.d.ts +51 -0
- package/dist/esm/tokenize/CardConnectTokenizer.js +712 -0
- package/dist/esm/tokenize/PayPalTokenizer.d.ts +77 -0
- package/dist/esm/tokenize/PayPalTokenizer.js +268 -0
- package/dist/esm/tokenize/SpreedlyTokenizer.d.ts +92 -0
- package/dist/esm/tokenize/SpreedlyTokenizer.js +1140 -0
- package/dist/esm/tokenize/Tokenizer.d.ts +37 -0
- package/dist/esm/tokenize/Tokenizer.js +150 -0
- package/dist/esm/tokenize/iats.d.ts +3 -0
- package/dist/esm/tokenize/iats.js +48 -0
- package/dist/esm/tokenize/index.d.ts +7 -0
- package/dist/esm/tokenize/index.js +7 -0
- package/dist/esm/tokenize/spreedly-secure.d.ts +8 -0
- package/dist/esm/tokenize/spreedly-secure.js +40 -0
- package/dist/esm/tokenize/styles.d.ts +4 -0
- package/dist/esm/tokenize/styles.js +46 -0
- package/dist/esm/tokenize/tokenizer-constants.d.ts +62 -0
- package/dist/esm/tokenize/tokenizer-constants.js +62 -0
- package/dist/esm/tokenize/tokenizer-utils.d.ts +19 -0
- package/dist/esm/tokenize/tokenizer-utils.js +139 -0
- package/dist/esm/tokenize/types.d.ts +146 -0
- package/dist/esm/tokenize/types.js +26 -0
- package/dist/esm/typeAdapters.d.ts +29 -0
- package/dist/esm/typeAdapters.js +189 -0
- package/dist/esm/types.d.ts +378 -0
- package/dist/esm/types.js +14 -0
- package/dist/esm/util.d.ts +17 -0
- package/dist/esm/util.js +113 -0
- package/dist/idonate-client.d.ts +6 -2
- package/dist/idonate-client.js +40 -2
- package/dist/shared.d.ts +2 -1
- package/dist/shared.js +9 -0
- package/dist/tokenize/CardConnectTokenizer.d.ts +1 -0
- package/dist/tokenize/CardConnectTokenizer.js +127 -104
- package/dist/tokenize/PayPalTokenizer.d.ts +77 -0
- package/dist/tokenize/PayPalTokenizer.js +272 -0
- package/dist/tokenize/SpreedlyTokenizer.d.ts +1 -0
- package/dist/tokenize/SpreedlyTokenizer.js +276 -135
- package/dist/tokenize/Tokenizer.js +6 -2
- package/dist/tokenize/index.d.ts +1 -0
- package/dist/tokenize/index.js +3 -1
- package/dist/tokenize/styles.d.ts +1 -0
- package/dist/tokenize/styles.js +9 -0
- package/dist/tokenize/tokenizer-utils.js +1 -1
- package/dist/tokenize/types.d.ts +6 -7
- package/dist/typeAdapters.js +3 -2
- package/dist/types.d.ts +16 -5
- package/package.json +14 -3
- package/umd/idonate-sdk.js +1 -1
package/dist/tokenize/types.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export interface TokenizerContainer {
|
|
|
18
18
|
mode?: PaymentMethodMode;
|
|
19
19
|
bankCountry?: 'US' | 'CA';
|
|
20
20
|
enableTestMode?: boolean;
|
|
21
|
+
layout?: 'single-line' | 'two-line';
|
|
21
22
|
}
|
|
22
23
|
export interface TokenizerStylingComplete {
|
|
23
24
|
input: {
|
|
@@ -48,6 +49,8 @@ export interface TokenizerStylingComplete {
|
|
|
48
49
|
display: string;
|
|
49
50
|
gap: string;
|
|
50
51
|
alignItems: string;
|
|
52
|
+
flexWrap?: string;
|
|
53
|
+
rowGap?: string;
|
|
51
54
|
};
|
|
52
55
|
}
|
|
53
56
|
type DeepPartial<T> = T extends object ? {
|
|
@@ -69,10 +72,6 @@ export interface CardData {
|
|
|
69
72
|
};
|
|
70
73
|
}
|
|
71
74
|
export interface BankAccountData {
|
|
72
|
-
routingNumber: string;
|
|
73
|
-
accountNumber: string;
|
|
74
|
-
accountType: 'checking' | 'savings';
|
|
75
|
-
accountHolderType: 'personal' | 'business';
|
|
76
75
|
firstName: string;
|
|
77
76
|
lastName: string;
|
|
78
77
|
email?: string;
|
|
@@ -86,9 +85,7 @@ export interface BankAccountData {
|
|
|
86
85
|
country?: string;
|
|
87
86
|
};
|
|
88
87
|
}
|
|
89
|
-
export interface CanadianBankAccountData extends
|
|
90
|
-
institutionNumber: string;
|
|
91
|
-
transitNumber: string;
|
|
88
|
+
export interface CanadianBankAccountData extends BankAccountData {
|
|
92
89
|
}
|
|
93
90
|
export type PaymentData = CardData | BankAccountData | CanadianBankAccountData;
|
|
94
91
|
export interface PaymentToken {
|
|
@@ -99,6 +96,8 @@ export interface PaymentToken {
|
|
|
99
96
|
paymentMethodType?: PaymentMethodMode;
|
|
100
97
|
expiresAt?: Date;
|
|
101
98
|
provider?: string;
|
|
99
|
+
paymentMethodId?: string;
|
|
100
|
+
paymentTransactionId?: string;
|
|
102
101
|
}
|
|
103
102
|
export type CardType = 'visa' | 'mastercard' | 'amex' | 'discover' | 'diners' | 'jcb' | 'unknown';
|
|
104
103
|
export type TokenizerEvent = 'ready' | 'focus' | 'blur' | 'change' | 'validation' | 'cardTypeChange' | 'error' | 'tokenization' | 'tokenReady';
|
package/dist/typeAdapters.js
CHANGED
|
@@ -30,6 +30,7 @@ function buildCashPaymentPayload(organizationId, input) {
|
|
|
30
30
|
};
|
|
31
31
|
const payment = {
|
|
32
32
|
payment_method_id: input.paymentMethodId,
|
|
33
|
+
payment_transaction_id: input.paymentTransactionId,
|
|
33
34
|
gateway_id: input.paymentGatewayId,
|
|
34
35
|
amount: input.paymentAmount,
|
|
35
36
|
type: 'cash',
|
|
@@ -61,8 +62,8 @@ function buildCashPaymentPayload(organizationId, input) {
|
|
|
61
62
|
page_id: input.landingPageId,
|
|
62
63
|
embed_id: input.embedId,
|
|
63
64
|
tribute_definition_id: (_a = input.tribute) === null || _a === void 0 ? void 0 : _a.tributeDefinitionId,
|
|
64
|
-
|
|
65
|
-
|
|
65
|
+
tribute_recipient_first_name: (_b = input.tribute) === null || _b === void 0 ? void 0 : _b.tributeFirstName,
|
|
66
|
+
tribute_recipient_last_name: (_c = input.tribute) === null || _c === void 0 ? void 0 : _c.tributeLastName,
|
|
66
67
|
tribute_address1: (_d = input.tribute) === null || _d === void 0 ? void 0 : _d.tributeAddress1,
|
|
67
68
|
tribute_address2: (_e = input.tribute) === null || _e === void 0 ? void 0 : _e.tributeAddress2,
|
|
68
69
|
tribute_city: (_f = input.tribute) === null || _f === void 0 ? void 0 : _f.tributeCity,
|
package/dist/types.d.ts
CHANGED
|
@@ -54,7 +54,7 @@ export type ACHAccount = {
|
|
|
54
54
|
accountType: 'checking' | 'savings';
|
|
55
55
|
};
|
|
56
56
|
export type PaymentMethodType = 'credit_card' | 'bank_account' | 'paypal' | 'apple_pay' | 'google_pay';
|
|
57
|
-
export type RecaptchaType = 'v2' | 'v3' | 'invisible' | 'organization' | 'nonce';
|
|
57
|
+
export type RecaptchaType = 'v2' | 'v3' | 'invisible' | 'organization' | 'nonce' | 'bypass';
|
|
58
58
|
export type RecaptchaSecuredRequest = {
|
|
59
59
|
recaptchaType: RecaptchaType;
|
|
60
60
|
recaptchaToken: string;
|
|
@@ -94,6 +94,7 @@ export type CreateDonationRequest = RecaptchaSecuredRequest & {
|
|
|
94
94
|
paymentGatewayId: string;
|
|
95
95
|
donorId?: string;
|
|
96
96
|
paymentMethodId: string;
|
|
97
|
+
paymentTransactionId?: string;
|
|
97
98
|
retainPaymentMethod?: boolean;
|
|
98
99
|
paymentAmount: number;
|
|
99
100
|
currency: string;
|
|
@@ -164,8 +165,8 @@ export type CashPaymentPayload = {
|
|
|
164
165
|
page_id: number;
|
|
165
166
|
embed_id: string;
|
|
166
167
|
tribute_definition_id: string;
|
|
167
|
-
|
|
168
|
-
|
|
168
|
+
tribute_recipient_first_name: string;
|
|
169
|
+
tribute_recipient_last_name: string;
|
|
169
170
|
tribute_address1: string;
|
|
170
171
|
tribute_address2: string;
|
|
171
172
|
tribute_city: string;
|
|
@@ -272,11 +273,21 @@ export type TokenizeCardConnectResult = {
|
|
|
272
273
|
message: string;
|
|
273
274
|
errorcode: number;
|
|
274
275
|
};
|
|
275
|
-
export type BackendName = 'spreedly' | 'card_connect' | 'iats';
|
|
276
|
+
export type BackendName = 'spreedly' | 'card_connect' | 'iats' | 'paypal_checkout';
|
|
276
277
|
export type PaymentGateway = {
|
|
277
278
|
id: string;
|
|
278
|
-
|
|
279
|
+
name: string;
|
|
280
|
+
backend_name: BackendName;
|
|
281
|
+
gateway_type?: string;
|
|
282
|
+
config?: {
|
|
283
|
+
[key: string]: any;
|
|
284
|
+
};
|
|
279
285
|
};
|
|
286
|
+
export interface EmbedConfig {
|
|
287
|
+
embed_id?: string;
|
|
288
|
+
organization_id?: string;
|
|
289
|
+
available_gateways: PaymentGateway[];
|
|
290
|
+
}
|
|
280
291
|
export type PaymentMethod = {
|
|
281
292
|
id: string;
|
|
282
293
|
type: PaymentMethodType;
|
package/package.json
CHANGED
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@idonatedev/idonate-sdk",
|
|
3
3
|
"author": "iDonate",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.2.0-dev0",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"description": "iDonate Web SDK",
|
|
7
7
|
"engines": {
|
|
8
8
|
"node": ">=18.0.0"
|
|
9
9
|
},
|
|
10
10
|
"main": "dist/index.js",
|
|
11
|
+
"module": "dist/esm/index.js",
|
|
11
12
|
"unpkg": "umd/idonate-sdk.js",
|
|
12
13
|
"types": "dist/index.d.ts",
|
|
14
|
+
"exports": {
|
|
15
|
+
".": {
|
|
16
|
+
"import": "./dist/esm/index.js",
|
|
17
|
+
"require": "./dist/index.js",
|
|
18
|
+
"types": "./dist/index.d.ts"
|
|
19
|
+
}
|
|
20
|
+
},
|
|
13
21
|
"files": [
|
|
14
22
|
"/dist",
|
|
15
23
|
"/umd"
|
|
@@ -22,7 +30,10 @@
|
|
|
22
30
|
"lint": "npx eslint 'src/**/*.ts'",
|
|
23
31
|
"lint:fix": "npx eslint --fix 'src/**/*.ts'",
|
|
24
32
|
"format": "npx prettier --write 'src/**/*.ts'",
|
|
25
|
-
"build": "
|
|
33
|
+
"build": "npm run build:cjs && npm run build:esm && npm run inject:version && webpack",
|
|
34
|
+
"build:cjs": "npx tsc",
|
|
35
|
+
"build:esm": "npx tsc -p tsconfig.esm.json",
|
|
36
|
+
"inject:version": "node scripts/inject-version.js",
|
|
26
37
|
"watch": "npx tsc -w & webpack --watch",
|
|
27
38
|
"dev:server": "http-server -p 8000 -c-1 -o /e2e/donation-flow-enhanced.html",
|
|
28
39
|
"dev": "concurrently \"npm run dev:server\" \"npm run watch\" --names \"server,build\" --prefix-colors \"blue,green\"",
|
|
@@ -56,7 +67,7 @@
|
|
|
56
67
|
"trailingComma": "es5"
|
|
57
68
|
},
|
|
58
69
|
"lint-staged": {
|
|
59
|
-
"
|
|
70
|
+
"src/**/*.ts": [
|
|
60
71
|
"prettier --write",
|
|
61
72
|
"eslint --fix"
|
|
62
73
|
]
|