@tryfinch/react-connect 3.4.0 → 3.6.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/dist/index.d.ts +3 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +8 -4
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +22 -9
package/dist/index.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export type SuccessEvent = {
|
|
|
5
5
|
export type ErrorEvent = {
|
|
6
6
|
errorMessage: string;
|
|
7
7
|
};
|
|
8
|
+
export type Sandbox = 'finch' /** This is to enable the new Finch (simulated) Sandbox */ | 'provider' /** This is to enable the new Provider Sandbox */ | boolean /** This is the old sandbox flag retained for backwards compatibility */;
|
|
8
9
|
export type ConnectOptions = {
|
|
9
10
|
category: string | null;
|
|
10
11
|
clientId: string;
|
|
@@ -15,13 +16,9 @@ export type ConnectOptions = {
|
|
|
15
16
|
onClose: () => void;
|
|
16
17
|
payrollProvider: string | null;
|
|
17
18
|
products: string[];
|
|
18
|
-
sandbox:
|
|
19
|
-
/**
|
|
20
|
-
* The old sandbox flag retained for backwards compatibility.
|
|
21
|
-
* It's defaults to the Provider Sandbox
|
|
22
|
-
*/
|
|
23
|
-
| boolean;
|
|
19
|
+
sandbox: Sandbox;
|
|
24
20
|
zIndex: number;
|
|
21
|
+
finchDevMode?: boolean;
|
|
25
22
|
};
|
|
26
23
|
type OpenFn = (overrides?: Partial<Pick<ConnectOptions, 'products' | 'state' | 'payrollProvider'>>) => void;
|
|
27
24
|
export declare const useFinchConnect: (options: Partial<ConnectOptions>) => {
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;IACrC,OAAO,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,OAAO,GACf,OAAO,CAAC,0DAA0D,GAClE,UAAU,CAAC,iDAAiD,GAC5D,OAAO,CAAC,wEAAwE,CAAC;AAErF,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;IACrC,OAAO,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,KAAK,MAAM,GAAG,CACZ,SAAS,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,OAAO,GAAG,iBAAiB,CAAC,CAAC,KAChF,IAAI,CAAC;AAyFV,eAAO,MAAM,eAAe,YAAa,QAAQ,cAAc,CAAC;UAAW,MAAM;CAiGhF,CAAC"}
|
package/dist/index.es.js
CHANGED
|
@@ -2,10 +2,13 @@ import { useRef, useEffect } from 'react';
|
|
|
2
2
|
|
|
3
3
|
const BASE_FINCH_CONNECT_URI = 'https://connect.tryfinch.com';
|
|
4
4
|
const DEFAULT_FINCH_REDIRECT_URI = 'https://tryfinch.com';
|
|
5
|
+
const DEV_FINCH_CONNECT_URI = 'http://localhost:3000';
|
|
6
|
+
const DEV_DEFAULT_FINCH_REDIRECT_URI = 'http://localhost:4001';
|
|
5
7
|
const FINCH_CONNECT_IFRAME_ID = 'finch-connect-iframe';
|
|
6
8
|
const FINCH_AUTH_MESSAGE_NAME = 'finch-auth-message';
|
|
7
|
-
const constructAuthUrl = ({ clientId, payrollProvider, category, products, manual, sandbox, state, }) => {
|
|
8
|
-
const
|
|
9
|
+
const constructAuthUrl = ({ clientId, payrollProvider, category, products, manual, sandbox, state, finchDevMode, }) => {
|
|
10
|
+
const canUseFinchDevMode = finchDevMode && window.location.hostname === 'localhost';
|
|
11
|
+
const authUrl = new URL(`${canUseFinchDevMode ? DEV_FINCH_CONNECT_URI : BASE_FINCH_CONNECT_URI}/authorize`);
|
|
9
12
|
if (clientId)
|
|
10
13
|
authUrl.searchParams.append('client_id', clientId);
|
|
11
14
|
if (payrollProvider)
|
|
@@ -14,7 +17,7 @@ const constructAuthUrl = ({ clientId, payrollProvider, category, products, manua
|
|
|
14
17
|
authUrl.searchParams.append('category', category);
|
|
15
18
|
authUrl.searchParams.append('products', (products !== null && products !== void 0 ? products : []).join(' '));
|
|
16
19
|
authUrl.searchParams.append('app_type', 'spa');
|
|
17
|
-
authUrl.searchParams.append('redirect_uri', DEFAULT_FINCH_REDIRECT_URI);
|
|
20
|
+
authUrl.searchParams.append('redirect_uri', canUseFinchDevMode ? DEV_DEFAULT_FINCH_REDIRECT_URI : DEFAULT_FINCH_REDIRECT_URI);
|
|
18
21
|
/** The host URL of the SDK. This is used to store the referrer for postMessage purposes */
|
|
19
22
|
authUrl.searchParams.append('sdk_host_url', window.location.origin);
|
|
20
23
|
authUrl.searchParams.append('mode', 'employer');
|
|
@@ -25,7 +28,7 @@ const constructAuthUrl = ({ clientId, payrollProvider, category, products, manua
|
|
|
25
28
|
if (state)
|
|
26
29
|
authUrl.searchParams.append('state', state);
|
|
27
30
|
// replace with actual SDK version by rollup
|
|
28
|
-
authUrl.searchParams.append('sdk_version', 'react-3.
|
|
31
|
+
authUrl.searchParams.append('sdk_version', 'react-3.6.0');
|
|
29
32
|
return authUrl.href;
|
|
30
33
|
};
|
|
31
34
|
const noop = () => {
|
|
@@ -42,6 +45,7 @@ const DEFAULT_OPTIONS = {
|
|
|
42
45
|
sandbox: false,
|
|
43
46
|
state: null,
|
|
44
47
|
zIndex: 999,
|
|
48
|
+
finchDevMode: false,
|
|
45
49
|
};
|
|
46
50
|
let isUseFinchConnectInitialized = false;
|
|
47
51
|
const useFinchConnect = (options) => {
|
package/dist/index.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":["../src/src/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAyDA,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAC9D,MAAM,0BAA0B,GAAG,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../src/src/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,10 +6,13 @@ var react = require('react');
|
|
|
6
6
|
|
|
7
7
|
const BASE_FINCH_CONNECT_URI = 'https://connect.tryfinch.com';
|
|
8
8
|
const DEFAULT_FINCH_REDIRECT_URI = 'https://tryfinch.com';
|
|
9
|
+
const DEV_FINCH_CONNECT_URI = 'http://localhost:3000';
|
|
10
|
+
const DEV_DEFAULT_FINCH_REDIRECT_URI = 'http://localhost:4001';
|
|
9
11
|
const FINCH_CONNECT_IFRAME_ID = 'finch-connect-iframe';
|
|
10
12
|
const FINCH_AUTH_MESSAGE_NAME = 'finch-auth-message';
|
|
11
|
-
const constructAuthUrl = ({ clientId, payrollProvider, category, products, manual, sandbox, state, }) => {
|
|
12
|
-
const
|
|
13
|
+
const constructAuthUrl = ({ clientId, payrollProvider, category, products, manual, sandbox, state, finchDevMode, }) => {
|
|
14
|
+
const canUseFinchDevMode = finchDevMode && window.location.hostname === 'localhost';
|
|
15
|
+
const authUrl = new URL(`${canUseFinchDevMode ? DEV_FINCH_CONNECT_URI : BASE_FINCH_CONNECT_URI}/authorize`);
|
|
13
16
|
if (clientId)
|
|
14
17
|
authUrl.searchParams.append('client_id', clientId);
|
|
15
18
|
if (payrollProvider)
|
|
@@ -18,7 +21,7 @@ const constructAuthUrl = ({ clientId, payrollProvider, category, products, manua
|
|
|
18
21
|
authUrl.searchParams.append('category', category);
|
|
19
22
|
authUrl.searchParams.append('products', (products !== null && products !== void 0 ? products : []).join(' '));
|
|
20
23
|
authUrl.searchParams.append('app_type', 'spa');
|
|
21
|
-
authUrl.searchParams.append('redirect_uri', DEFAULT_FINCH_REDIRECT_URI);
|
|
24
|
+
authUrl.searchParams.append('redirect_uri', canUseFinchDevMode ? DEV_DEFAULT_FINCH_REDIRECT_URI : DEFAULT_FINCH_REDIRECT_URI);
|
|
22
25
|
/** The host URL of the SDK. This is used to store the referrer for postMessage purposes */
|
|
23
26
|
authUrl.searchParams.append('sdk_host_url', window.location.origin);
|
|
24
27
|
authUrl.searchParams.append('mode', 'employer');
|
|
@@ -29,7 +32,7 @@ const constructAuthUrl = ({ clientId, payrollProvider, category, products, manua
|
|
|
29
32
|
if (state)
|
|
30
33
|
authUrl.searchParams.append('state', state);
|
|
31
34
|
// replace with actual SDK version by rollup
|
|
32
|
-
authUrl.searchParams.append('sdk_version', 'react-3.
|
|
35
|
+
authUrl.searchParams.append('sdk_version', 'react-3.6.0');
|
|
33
36
|
return authUrl.href;
|
|
34
37
|
};
|
|
35
38
|
const noop = () => {
|
|
@@ -46,6 +49,7 @@ const DEFAULT_OPTIONS = {
|
|
|
46
49
|
sandbox: false,
|
|
47
50
|
state: null,
|
|
48
51
|
zIndex: 999,
|
|
52
|
+
finchDevMode: false,
|
|
49
53
|
};
|
|
50
54
|
let isUseFinchConnectInitialized = false;
|
|
51
55
|
const useFinchConnect = (options) => {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/src/index.ts"],"sourcesContent":[null],"names":["useRef","useEffect"],"mappings":";;;;;;AAyDA,MAAM,sBAAsB,GAAG,8BAA8B,CAAC;AAC9D,MAAM,0BAA0B,GAAG,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/src/index.ts"],"sourcesContent":[null],"names":["useRef","useEffect"],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -9,6 +9,11 @@ export type ErrorEvent = {
|
|
|
9
9
|
errorMessage: string;
|
|
10
10
|
};
|
|
11
11
|
|
|
12
|
+
export type Sandbox =
|
|
13
|
+
| 'finch' /** This is to enable the new Finch (simulated) Sandbox */
|
|
14
|
+
| 'provider' /** This is to enable the new Provider Sandbox */
|
|
15
|
+
| boolean /** This is the old sandbox flag retained for backwards compatibility */;
|
|
16
|
+
|
|
12
17
|
export type ConnectOptions = {
|
|
13
18
|
category: string | null;
|
|
14
19
|
clientId: string;
|
|
@@ -19,14 +24,9 @@ export type ConnectOptions = {
|
|
|
19
24
|
onClose: () => void;
|
|
20
25
|
payrollProvider: string | null;
|
|
21
26
|
products: string[];
|
|
22
|
-
sandbox:
|
|
23
|
-
| 'provider' /** This is to enable the new Provider Sandbox */
|
|
24
|
-
/**
|
|
25
|
-
* The old sandbox flag retained for backwards compatibility.
|
|
26
|
-
* It's defaults to the Provider Sandbox
|
|
27
|
-
*/
|
|
28
|
-
| boolean;
|
|
27
|
+
sandbox: Sandbox;
|
|
29
28
|
zIndex: number;
|
|
29
|
+
finchDevMode?: boolean;
|
|
30
30
|
};
|
|
31
31
|
|
|
32
32
|
type OpenFn = (
|
|
@@ -57,6 +57,10 @@ interface FinchConnectPostMessage {
|
|
|
57
57
|
|
|
58
58
|
const BASE_FINCH_CONNECT_URI = 'https://connect.tryfinch.com';
|
|
59
59
|
const DEFAULT_FINCH_REDIRECT_URI = 'https://tryfinch.com';
|
|
60
|
+
|
|
61
|
+
const DEV_FINCH_CONNECT_URI = 'http://localhost:3000';
|
|
62
|
+
const DEV_DEFAULT_FINCH_REDIRECT_URI = 'http://localhost:4001';
|
|
63
|
+
|
|
60
64
|
const FINCH_CONNECT_IFRAME_ID = 'finch-connect-iframe';
|
|
61
65
|
const FINCH_AUTH_MESSAGE_NAME = 'finch-auth-message';
|
|
62
66
|
|
|
@@ -68,14 +72,22 @@ const constructAuthUrl = ({
|
|
|
68
72
|
manual,
|
|
69
73
|
sandbox,
|
|
70
74
|
state,
|
|
75
|
+
finchDevMode,
|
|
71
76
|
}: Partial<ConnectOptions>) => {
|
|
72
|
-
const
|
|
77
|
+
const canUseFinchDevMode = finchDevMode && window.location.hostname === 'localhost';
|
|
78
|
+
|
|
79
|
+
const authUrl = new URL(
|
|
80
|
+
`${canUseFinchDevMode ? DEV_FINCH_CONNECT_URI : BASE_FINCH_CONNECT_URI}/authorize`
|
|
81
|
+
);
|
|
73
82
|
if (clientId) authUrl.searchParams.append('client_id', clientId);
|
|
74
83
|
if (payrollProvider) authUrl.searchParams.append('payroll_provider', payrollProvider);
|
|
75
84
|
if (category) authUrl.searchParams.append('category', category);
|
|
76
85
|
authUrl.searchParams.append('products', (products ?? []).join(' '));
|
|
77
86
|
authUrl.searchParams.append('app_type', 'spa');
|
|
78
|
-
authUrl.searchParams.append(
|
|
87
|
+
authUrl.searchParams.append(
|
|
88
|
+
'redirect_uri',
|
|
89
|
+
canUseFinchDevMode ? DEV_DEFAULT_FINCH_REDIRECT_URI : DEFAULT_FINCH_REDIRECT_URI
|
|
90
|
+
);
|
|
79
91
|
/** The host URL of the SDK. This is used to store the referrer for postMessage purposes */
|
|
80
92
|
authUrl.searchParams.append('sdk_host_url', window.location.origin);
|
|
81
93
|
authUrl.searchParams.append('mode', 'employer');
|
|
@@ -103,6 +115,7 @@ const DEFAULT_OPTIONS: Omit<ConnectOptions, 'clientId'> = {
|
|
|
103
115
|
sandbox: false,
|
|
104
116
|
state: null,
|
|
105
117
|
zIndex: 999,
|
|
118
|
+
finchDevMode: false,
|
|
106
119
|
};
|
|
107
120
|
|
|
108
121
|
let isUseFinchConnectInitialized = false;
|