@saasquatch/mint-components 1.12.0-0 → 1.12.0-10
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/cjs/{ShadowViewAddon-88821c64.js → ShadowViewAddon-040cffad.js} +6 -3
- package/dist/cjs/extractProps-fd93ba62.js +21 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/mint-components.cjs.js +1 -1
- package/dist/cjs/sqm-banking-info-form_16.cjs.entry.js +91 -72
- package/dist/cjs/sqm-big-stat_39.cjs.entry.js +128 -63
- package/dist/cjs/sqm-code-verification.cjs.entry.js +67 -77
- package/dist/cjs/sqm-email-verification.cjs.entry.js +158 -12
- package/dist/cjs/{sqm-invoice-table-view-ce9a34ac.js → sqm-invoice-table-view-c58966f8.js} +79 -0
- package/dist/cjs/sqm-stencilbook.cjs.entry.js +56 -14
- package/dist/cjs/sqm-widget-verification-internal.cjs.entry.js +81 -11
- package/dist/cjs/sqm-widget-verification.cjs.entry.js +102 -19
- package/dist/cjs/usePayoutStatus-b9fb7399.js +70 -0
- package/dist/cjs/useVerificationEmail-6aacdb71.js +169 -0
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/sqm-big-stat/useBigStat.js +6 -3
- package/dist/collection/components/sqm-payout-button-scroll/PayoutButtonScroll.stories.js +1 -2
- package/dist/collection/components/sqm-payout-button-scroll/sqm-payout-button-scroll-view.js +1 -0
- package/dist/collection/components/sqm-payout-button-scroll/sqm-payout-button-scroll.js +16 -3
- package/dist/collection/components/sqm-widget-verification/sqm-code-verification/WidgetCodeVerification.stories.js +9 -2
- package/dist/collection/components/sqm-widget-verification/sqm-code-verification/sqm-code-verification-view.js +20 -10
- package/dist/collection/components/sqm-widget-verification/sqm-code-verification/sqm-code-verification.js +34 -63
- package/dist/collection/components/sqm-widget-verification/sqm-code-verification/useCodeVerification.js +38 -29
- package/dist/collection/components/sqm-widget-verification/sqm-email-verification/WidgetEmailVerification.stories.js +23 -3
- package/dist/collection/components/sqm-widget-verification/sqm-email-verification/sqm-email-verification-view.js +17 -4
- package/dist/collection/components/sqm-widget-verification/sqm-email-verification/sqm-email-verification.js +65 -11
- package/dist/collection/components/sqm-widget-verification/sqm-email-verification/useEmailVerification.js +76 -20
- package/dist/collection/components/sqm-widget-verification/sqm-widget-verification-internal.js +327 -15
- package/dist/collection/components/sqm-widget-verification/sqm-widget-verification.js +447 -22
- package/dist/collection/components/sqm-widget-verification/useVerificationEmail.js +165 -0
- package/dist/collection/components/tax-and-cash/BankingForm.stories.js +1 -0
- package/dist/collection/components/tax-and-cash/TaxForm.stories.js +78 -0
- package/dist/collection/components/tax-and-cash/sqm-banking-info-form/sqm-banking-info-form.js +2 -1
- package/dist/collection/components/tax-and-cash/sqm-banking-info-form/useBankingInfoForm.js +7 -0
- package/dist/collection/components/tax-and-cash/sqm-docusign-form/docusign-iframe/DocusignIframe.js +0 -1
- package/dist/collection/components/tax-and-cash/sqm-payout-status-alert/PayoutStatusAlert.stories.js +10 -0
- package/dist/collection/components/tax-and-cash/sqm-payout-status-alert/sqm-payout-status-alert-view.js +72 -13
- package/dist/collection/components/tax-and-cash/sqm-payout-status-alert/sqm-payout-status-alert.js +146 -9
- package/dist/collection/components/tax-and-cash/sqm-payout-status-alert/usePayoutStatus.js +30 -15
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash/data.js +6 -0
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash/sqm-tax-and-cash.js +8 -8
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash/useTaxAndCash.js +2 -2
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard-view.js +22 -16
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard.js +99 -88
- package/dist/collection/components/tax-and-cash/sqm-tax-and-cash-dashboard/useTaxAndCashDashboard.js +8 -1
- package/dist/collection/components/tax-and-cash/sqm-user-info-form/useUserInfoForm.js +16 -11
- package/dist/esm/{ShadowViewAddon-65c8679e.js → ShadowViewAddon-69b61037.js} +6 -3
- package/dist/esm/extractProps-ae1afbb3.js +19 -0
- package/dist/esm/{keys-a1496e39.js → keys-db1897ae.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/mint-components.js +1 -1
- package/dist/esm/sqm-banking-info-form_16.entry.js +91 -72
- package/dist/esm/sqm-big-stat_39.entry.js +127 -62
- package/dist/esm/sqm-code-verification.entry.js +69 -79
- package/dist/esm/sqm-email-verification.entry.js +159 -13
- package/dist/esm/{sqm-invoice-table-view-08c03ba7.js → sqm-invoice-table-view-d1cfdaf4.js} +79 -0
- package/dist/esm/sqm-stencilbook.entry.js +56 -14
- package/dist/esm/sqm-widget-verification-internal.entry.js +84 -14
- package/dist/esm/sqm-widget-verification.entry.js +104 -21
- package/dist/esm/usePayoutStatus-1a635054.js +67 -0
- package/dist/esm/useVerificationEmail-c32696ba.js +167 -0
- package/dist/esm-es5/ShadowViewAddon-69b61037.js +1 -0
- package/dist/esm-es5/extractProps-ae1afbb3.js +1 -0
- package/dist/esm-es5/{keys-a1496e39.js → keys-db1897ae.js} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/mint-components.js +1 -1
- package/dist/esm-es5/sqm-banking-info-form_16.entry.js +1 -1
- package/dist/esm-es5/sqm-big-stat_39.entry.js +1 -1
- package/dist/esm-es5/sqm-code-verification.entry.js +1 -1
- package/dist/esm-es5/sqm-email-verification.entry.js +1 -1
- package/dist/esm-es5/sqm-invoice-table-view-d1cfdaf4.js +1 -0
- package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
- package/dist/esm-es5/sqm-widget-verification-internal.entry.js +1 -1
- package/dist/esm-es5/sqm-widget-verification.entry.js +1 -1
- package/dist/esm-es5/usePayoutStatus-1a635054.js +1 -0
- package/dist/esm-es5/useVerificationEmail-c32696ba.js +1 -0
- package/dist/mint-components/mint-components.esm.js +1 -1
- package/dist/mint-components/p-15c7a1d2.system.entry.js +1 -0
- package/dist/mint-components/p-1712a9fd.entry.js +11 -0
- package/dist/mint-components/p-1e616d45.system.js +1 -0
- package/dist/mint-components/{p-721a89c6.entry.js → p-24092973.entry.js} +2 -2
- package/dist/mint-components/p-26468242.js +1 -0
- package/dist/mint-components/p-331d060e.entry.js +223 -0
- package/dist/mint-components/p-39840341.js +1 -0
- package/dist/mint-components/p-4364001c.entry.js +12 -0
- package/dist/mint-components/p-4bd7a472.js +1 -0
- package/dist/mint-components/p-517224ef.js +19 -0
- package/dist/mint-components/p-5a23b560.system.entry.js +1 -0
- package/dist/mint-components/p-8300d8c8.system.js +1 -0
- package/dist/mint-components/p-8bddb468.system.entry.js +1 -0
- package/dist/mint-components/p-9596e97c.system.entry.js +1 -0
- package/dist/mint-components/p-974070c4.system.entry.js +1 -0
- package/dist/mint-components/{p-b651706a.js → p-9eae245f.js} +6 -3
- package/dist/mint-components/p-a8645c1b.system.js +1 -0
- package/dist/mint-components/p-b2a99637.system.js +1 -0
- package/dist/mint-components/{p-66a04cca.system.entry.js → p-b62faaa5.system.entry.js} +1 -1
- package/dist/mint-components/p-c41e1df8.entry.js +195 -0
- package/dist/mint-components/p-c510fb88.entry.js +1 -0
- package/dist/mint-components/p-ca809fdd.system.js +1 -1
- package/dist/mint-components/p-d7806f31.js +48 -0
- package/dist/mint-components/p-e01ac27c.system.js +1 -0
- package/dist/mint-components/p-e45a8501.system.entry.js +1 -0
- package/dist/mint-components/p-e990dc21.system.js +1 -0
- package/dist/mint-components/p-f340214f.entry.js +25 -0
- package/dist/types/components/sqm-payout-button-scroll/PayoutButtonScroll.stories.d.ts +0 -1
- package/dist/types/components/sqm-payout-button-scroll/sqm-payout-button-scroll.d.ts +7 -0
- package/dist/types/components/sqm-widget-verification/sqm-code-verification/WidgetCodeVerification.stories.d.ts +1 -0
- package/dist/types/components/sqm-widget-verification/sqm-code-verification/sqm-code-verification-view.d.ts +3 -3
- package/dist/types/components/sqm-widget-verification/sqm-code-verification/sqm-code-verification.d.ts +4 -10
- package/dist/types/components/sqm-widget-verification/sqm-code-verification/useCodeVerification.d.ts +2 -0
- package/dist/types/components/sqm-widget-verification/sqm-email-verification/WidgetEmailVerification.stories.d.ts +4 -1
- package/dist/types/components/sqm-widget-verification/sqm-email-verification/sqm-email-verification-view.d.ts +6 -1
- package/dist/types/components/sqm-widget-verification/sqm-email-verification/sqm-email-verification.d.ts +10 -2
- package/dist/types/components/sqm-widget-verification/sqm-email-verification/useEmailVerification.d.ts +3 -2
- package/dist/types/components/sqm-widget-verification/sqm-widget-verification-internal.d.ts +15 -0
- package/dist/types/components/sqm-widget-verification/sqm-widget-verification.d.ts +79 -0
- package/dist/types/components/sqm-widget-verification/useVerificationEmail.d.ts +14 -0
- package/dist/types/components/tax-and-cash/TaxForm.stories.d.ts +1 -0
- package/dist/types/components/tax-and-cash/sqm-banking-info-form/sqm-banking-info-form-view.d.ts +1 -0
- package/dist/types/components/tax-and-cash/sqm-payout-status-alert/PayoutStatusAlert.stories.d.ts +2 -0
- package/dist/types/components/tax-and-cash/sqm-payout-status-alert/sqm-payout-status-alert-view.d.ts +12 -0
- package/dist/types/components/tax-and-cash/sqm-payout-status-alert/sqm-payout-status-alert.d.ts +41 -0
- package/dist/types/components/tax-and-cash/sqm-payout-status-alert/usePayoutStatus.d.ts +12 -0
- package/dist/types/components/tax-and-cash/sqm-tax-and-cash/data.d.ts +6 -0
- package/dist/types/components/tax-and-cash/sqm-tax-and-cash/sqm-tax-and-cash.d.ts +2 -2
- package/dist/types/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard-view.d.ts +10 -3
- package/dist/types/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard.d.ts +19 -18
- package/dist/types/components.d.ts +366 -92
- package/docs/docs.docx +0 -0
- package/docs/raisins.json +1 -1
- package/grapesjs/grapesjs.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/useEmailVerification-30a1c7f6.js +0 -75
- package/dist/collection/components/sqm-widget-verification/useWidgetVerification.js +0 -3
- package/dist/esm/useEmailVerification-7135732c.js +0 -72
- package/dist/esm-es5/ShadowViewAddon-65c8679e.js +0 -1
- package/dist/esm-es5/sqm-invoice-table-view-08c03ba7.js +0 -1
- package/dist/esm-es5/useEmailVerification-7135732c.js +0 -1
- package/dist/mint-components/p-117b4705.system.js +0 -1
- package/dist/mint-components/p-1bd0cda8.system.entry.js +0 -1
- package/dist/mint-components/p-1ee62d9f.system.entry.js +0 -1
- package/dist/mint-components/p-1f9a9b70.system.entry.js +0 -1
- package/dist/mint-components/p-23fdd44e.entry.js +0 -1
- package/dist/mint-components/p-36f7caec.system.entry.js +0 -1
- package/dist/mint-components/p-39397731.entry.js +0 -1
- package/dist/mint-components/p-39af4acd.entry.js +0 -240
- package/dist/mint-components/p-4c9b6fbe.system.js +0 -1
- package/dist/mint-components/p-65e2c043.system.js +0 -1
- package/dist/mint-components/p-663303b7.entry.js +0 -8
- package/dist/mint-components/p-6cae44d7.js +0 -1
- package/dist/mint-components/p-7f5c7bf7.system.entry.js +0 -1
- package/dist/mint-components/p-8a337864.js +0 -7
- package/dist/mint-components/p-a02afa72.system.js +0 -1
- package/dist/mint-components/p-a5a9aa07.entry.js +0 -189
- package/dist/mint-components/p-c763c0b2.js +0 -1
- package/dist/mint-components/p-e93e5740.entry.js +0 -1
- package/dist/mint-components/p-e9ca48fc.system.entry.js +0 -1
- package/dist/types/components/sqm-widget-verification/useWidgetVerification.d.ts +0 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { r as registerInstance, h as h$1, c as Host } from './index-17b4da69.js';
|
|
2
|
-
import { b as browser, n as h, k as useState, f as useEffect
|
|
2
|
+
import { b as browser, n as h, k as useState, f as useEffect } from './stencil-hooks.module-ac12ca1c.js';
|
|
3
3
|
import { F as Fn, b as useCallback } from './index.module-6c840c4e.js';
|
|
4
|
-
import {
|
|
4
|
+
import { g as getProps } from './utils-334c1e34.js';
|
|
5
|
+
import { V as VERIFICATION_PARENT_NAMESPACE } from './keys-db1897ae.js';
|
|
5
6
|
|
|
6
7
|
const debug = browser("sq:widget-verification");
|
|
7
8
|
function useTemplateChildren({ parent, callback }) {
|
|
@@ -31,23 +32,105 @@ function useTemplateChildren({ parent, callback }) {
|
|
|
31
32
|
};
|
|
32
33
|
}
|
|
33
34
|
const WidgetVerification = class {
|
|
35
|
+
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
36
|
+
CODE STEP PROPS
|
|
37
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
|
|
34
38
|
constructor(hostRef) {
|
|
35
39
|
registerInstance(this, hostRef);
|
|
40
|
+
// ! Any updated must be reflected in sqm-widget-verification-internal AND sqm-email-verification AND sqm-code-verification
|
|
41
|
+
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
42
|
+
EMAIL STEP PROPS
|
|
43
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
|
|
44
|
+
/**
|
|
45
|
+
* @uiName Verify email widget header text
|
|
46
|
+
* @uiGroup Email Verification Step
|
|
47
|
+
*/
|
|
48
|
+
this.emailStep_verifyEmailHeaderText = "Start by verifying your email. We’ll send you a code through our referral provider, impact.com.";
|
|
49
|
+
/**
|
|
50
|
+
* @uiName Send code to email alert header
|
|
51
|
+
* @uiGroup Email Verification Step
|
|
52
|
+
*/
|
|
53
|
+
this.emailStep_sendCodeErrorHeader = "There was an error sending your code.";
|
|
54
|
+
/**
|
|
55
|
+
* @uiName Send code to email alert description
|
|
56
|
+
* @uiGroup Email Verification Step
|
|
57
|
+
*/
|
|
58
|
+
this.emailStep_sendCodeErrorDescription = "Please try again. If this problem continues, contact our program support team.";
|
|
59
|
+
/**
|
|
60
|
+
* @uiName Email input label
|
|
61
|
+
* @uiGroup Email Verification Step
|
|
62
|
+
*/
|
|
63
|
+
this.emailStep_emailLabel = "Email";
|
|
64
|
+
/**
|
|
65
|
+
* @uiName Send code button text
|
|
66
|
+
* @uiGroup Email Verification Step
|
|
67
|
+
*/
|
|
68
|
+
this.emailStep_sendCodeText = "Send code";
|
|
69
|
+
/**
|
|
70
|
+
* @uiName Send code button text
|
|
71
|
+
* @uiGroup Email Verification Step
|
|
72
|
+
*/
|
|
73
|
+
this.emailStep_emailValidationErrorText = "Please enter a valid email";
|
|
74
|
+
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
75
|
+
EMAIL STEP PROPS
|
|
76
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
|
|
77
|
+
/**
|
|
78
|
+
* @uiName Verify code widget header text
|
|
79
|
+
* @uiGroup Code Verification Step
|
|
80
|
+
*/
|
|
81
|
+
this.codeStep_verifyCodeHeaderText = "Enter the code sent to {email} from our referral provider, impact.com.";
|
|
82
|
+
/**
|
|
83
|
+
* @uiName Reverify code widget header text
|
|
84
|
+
* @uiGroup Code Verification Step
|
|
85
|
+
*/
|
|
86
|
+
this.codeStep_reverifyCodeHeaderText = "Enter the code sent to {email} from our referral provider, impact.com.";
|
|
87
|
+
/**
|
|
88
|
+
* Text displayed under verify button
|
|
89
|
+
* @uiName Resend code text
|
|
90
|
+
* @uiGroup Code Verification Step
|
|
91
|
+
*/
|
|
92
|
+
this.codeStep_resendCodeText = "Didn't receive your code? {resendCodeLink}";
|
|
93
|
+
/**
|
|
94
|
+
* The link that appears in the resend code link
|
|
95
|
+
* @uiName Resend code label
|
|
96
|
+
* @uiGroup Code Verification Step
|
|
97
|
+
*/
|
|
98
|
+
this.codeStep_resendCodeLabel = "Resend code";
|
|
99
|
+
/**
|
|
100
|
+
* Link text displayed under verify button
|
|
101
|
+
* @uiName Resend code text
|
|
102
|
+
* @uiGroup Code Verification Step
|
|
103
|
+
*/
|
|
104
|
+
this.codeStep_codeResentSuccessfullyText = "Another code has been sent to {email}";
|
|
105
|
+
/**
|
|
106
|
+
* Error text displayed under verification input
|
|
107
|
+
* @uiName Invalid code text
|
|
108
|
+
* @uiGroup Code Verification Step
|
|
109
|
+
*/
|
|
110
|
+
this.codeStep_invalidCodeText = "Please check your code and try again. If you’re still having trouble, try resending your code.";
|
|
111
|
+
/**
|
|
112
|
+
* @uiName Verify code button text
|
|
113
|
+
* @uiGroup Code Verification Step
|
|
114
|
+
*/
|
|
115
|
+
this.codeStep_verifyText = "Verify";
|
|
116
|
+
/**
|
|
117
|
+
* Displayed when the email verification fails due to a network error. The participant can try refreshing the page.
|
|
118
|
+
* @uiName Network error message
|
|
119
|
+
* @uiGroup Code Verification Step
|
|
120
|
+
*/
|
|
121
|
+
this.codeStep_networkErrorMessage = "An error occurred while verifying your email. Please refresh the page and try again.";
|
|
36
122
|
h(this);
|
|
37
123
|
}
|
|
38
124
|
disconnectedCallback() { }
|
|
39
125
|
render() {
|
|
40
126
|
const [context, setContext] = Fn({
|
|
41
127
|
namespace: VERIFICATION_PARENT_NAMESPACE,
|
|
42
|
-
initialValue:
|
|
128
|
+
initialValue: false,
|
|
43
129
|
});
|
|
44
|
-
const authToken = context === null || context === void 0 ? void 0 : context.token;
|
|
45
130
|
const [container, setContainer] = useState(undefined);
|
|
46
131
|
const [slot, setSlot] = useState(undefined);
|
|
47
|
-
if (!authToken)
|
|
48
|
-
debug("No user identity available");
|
|
49
132
|
const updateTemplates = useCallback(() => {
|
|
50
|
-
const isAuth =
|
|
133
|
+
const isAuth = context;
|
|
51
134
|
const templates = slot.querySelectorAll(`template`);
|
|
52
135
|
const template = Array.from(templates).find((t) => t.slot === (isAuth ? "verified" : "not-verified"));
|
|
53
136
|
if (template) {
|
|
@@ -95,7 +178,7 @@ const WidgetVerification = class {
|
|
|
95
178
|
target.style.height = "25px";
|
|
96
179
|
});
|
|
97
180
|
}
|
|
98
|
-
}, [container, slot,
|
|
181
|
+
}, [container, slot, context]);
|
|
99
182
|
useEffect(() => {
|
|
100
183
|
if (!container || !slot) {
|
|
101
184
|
debug("DOM not ready:");
|
|
@@ -104,19 +187,19 @@ const WidgetVerification = class {
|
|
|
104
187
|
// Run on first render
|
|
105
188
|
updateTemplates();
|
|
106
189
|
return useTemplateChildren({ parent: slot, callback: updateTemplates });
|
|
107
|
-
}, [slot, container,
|
|
108
|
-
useEffect(() => {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
}, []);
|
|
119
|
-
return (h$1(Host, null, h$1("div", { ref: setSlot, style: { display: "contents" } }, h$1("template", { slot: "not-verified" }, h$1("sqm-widget-verification-internal",
|
|
190
|
+
}, [slot, container, context]);
|
|
191
|
+
// useEffect(() => {
|
|
192
|
+
// const host = useHost();
|
|
193
|
+
// const callback = (e: CustomEvent) => {
|
|
194
|
+
// e.stopPropagation();
|
|
195
|
+
// setContext({ token: e.detail.token });
|
|
196
|
+
// };
|
|
197
|
+
// host.addEventListener(VERIFICATION_EVENT_KEY, callback);
|
|
198
|
+
// return () => {
|
|
199
|
+
// host.removeEventListener(VERIFICATION_EVENT_KEY, callback);
|
|
200
|
+
// };
|
|
201
|
+
// }, []);
|
|
202
|
+
return (h$1(Host, null, h$1("div", { ref: setSlot, style: { display: "contents" } }, h$1("template", { slot: "not-verified" }, h$1("sqm-widget-verification-internal", Object.assign({}, getProps(this)))), h$1("slot", { name: "not-verified" }), h$1("slot", { name: "verified" })), h$1("div", { ref: setContainer }, h$1("slot", { name: "shown" }))));
|
|
120
203
|
}
|
|
121
204
|
};
|
|
122
205
|
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { k as useState, f as useEffect } from './stencil-hooks.module-ac12ca1c.js';
|
|
2
|
+
import { d as dist, g as getEnvironmentSDK, E as En } from './index.module-6c840c4e.js';
|
|
3
|
+
|
|
4
|
+
const GET_USER_STATUS = dist.gql `
|
|
5
|
+
query getUserStatus {
|
|
6
|
+
user: viewer {
|
|
7
|
+
... on User {
|
|
8
|
+
id
|
|
9
|
+
impactConnection {
|
|
10
|
+
connected
|
|
11
|
+
publisher {
|
|
12
|
+
id
|
|
13
|
+
payoutsAccount {
|
|
14
|
+
hold
|
|
15
|
+
holdReasons
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
`;
|
|
23
|
+
function getStatus(data) {
|
|
24
|
+
var _a, _b, _c, _d, _e;
|
|
25
|
+
const account = (_b = (_a = data.user.impactConnection) === null || _a === void 0 ? void 0 : _a.publisher) === null || _b === void 0 ? void 0 : _b.payoutsAccount;
|
|
26
|
+
if (!((_d = (_c = data.user) === null || _c === void 0 ? void 0 : _c.impactConnection) === null || _d === void 0 ? void 0 : _d.connected) || !account)
|
|
27
|
+
return "INFORMATION_REQUIRED";
|
|
28
|
+
if ((_e = account.holdReasons) === null || _e === void 0 ? void 0 : _e.includes("IDV_CHECK_REQUIRED"))
|
|
29
|
+
return "VERIFICATION_NEEDED";
|
|
30
|
+
if (account.hold)
|
|
31
|
+
return "HOLD";
|
|
32
|
+
return "DONE";
|
|
33
|
+
}
|
|
34
|
+
function usePayoutStatus(props) {
|
|
35
|
+
const { type } = getEnvironmentSDK();
|
|
36
|
+
const { loading, data, errors, refetch } = En(GET_USER_STATUS, {});
|
|
37
|
+
const [status, setStatus] = useState(undefined);
|
|
38
|
+
const [showDialog, setShowDialog] = useState(false);
|
|
39
|
+
useEffect(() => {
|
|
40
|
+
if (!data)
|
|
41
|
+
return;
|
|
42
|
+
const s = getStatus(data);
|
|
43
|
+
setStatus(s);
|
|
44
|
+
}, [data]);
|
|
45
|
+
useEffect(() => {
|
|
46
|
+
const cb = () => refetch();
|
|
47
|
+
window.addEventListener("sqm:tax-form-updated", cb);
|
|
48
|
+
return () => window.removeEventListener("sqm:tax-form-updated", cb);
|
|
49
|
+
}, []);
|
|
50
|
+
return {
|
|
51
|
+
states: {
|
|
52
|
+
loading,
|
|
53
|
+
status,
|
|
54
|
+
showVerifyIdentity: showDialog,
|
|
55
|
+
error: !!errors,
|
|
56
|
+
},
|
|
57
|
+
data: { type },
|
|
58
|
+
text: props.getTextProps(),
|
|
59
|
+
callbacks: {
|
|
60
|
+
onTermsClick: () => window.open(props.termsUrl, "_blank").focus(),
|
|
61
|
+
onClick: () => setShowDialog(true),
|
|
62
|
+
onCancel: () => setShowDialog(false),
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export { getStatus as g, usePayoutStatus as u };
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import { k as useState, f as useEffect } from './stencil-hooks.module-ac12ca1c.js';
|
|
2
|
+
import { d as dist, K, o as an, c as xe } from './index.module-6c840c4e.js';
|
|
3
|
+
|
|
4
|
+
const UserLookupQuery = dist.gql `
|
|
5
|
+
query userLookup {
|
|
6
|
+
viewer {
|
|
7
|
+
... on User {
|
|
8
|
+
id
|
|
9
|
+
accountId
|
|
10
|
+
email
|
|
11
|
+
impactConnection {
|
|
12
|
+
user {
|
|
13
|
+
id
|
|
14
|
+
email
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
21
|
+
const ParticipantVerificationEmailMutation = dist.gql `
|
|
22
|
+
mutation requestUserEmailVerification($user: UserIdInput!) {
|
|
23
|
+
requestUserEmailVerification(user: $user) {
|
|
24
|
+
success
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
`;
|
|
28
|
+
const ImpactVerificationEmailMutation = dist.gql `
|
|
29
|
+
mutation requestImpactPublisherEmail2FA($user: UserIdInput!) {
|
|
30
|
+
requestImpactPublisherEmail2FA(user: $user) {
|
|
31
|
+
success
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
`;
|
|
35
|
+
const VerifyUserEmailMutation = dist.gql `
|
|
36
|
+
mutation verifyUserEmail($user: UserIdInput!, $code: String!) {
|
|
37
|
+
verifyUserEmail(user: $user, code: $code) {
|
|
38
|
+
id
|
|
39
|
+
accountId
|
|
40
|
+
email
|
|
41
|
+
emailVerified
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
`;
|
|
45
|
+
const SubmitImpactCodeMutation = dist.gql `
|
|
46
|
+
mutation submitImpactPublisherEmail2FACode(
|
|
47
|
+
$user: UserIdInput!
|
|
48
|
+
$code: String!
|
|
49
|
+
) {
|
|
50
|
+
submitImpactPublisherEmail2FACode(user: $user, code: $code) {
|
|
51
|
+
verifiedEmail
|
|
52
|
+
accessKey
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
`;
|
|
56
|
+
// ! It's important when using this hook to ensure initialisation
|
|
57
|
+
// ! is done before calling any mutations
|
|
58
|
+
function useVerificationEmail() {
|
|
59
|
+
const userIdentity = K();
|
|
60
|
+
const [hasEmails, setHasEmails] = useState({
|
|
61
|
+
participant: false,
|
|
62
|
+
impact: false,
|
|
63
|
+
});
|
|
64
|
+
const [fetch] = an(UserLookupQuery);
|
|
65
|
+
// Send mutations
|
|
66
|
+
const [sendParticipantEmail, { loading: participantEmailLoading, errors: participantEmailErrors },] = xe(ParticipantVerificationEmailMutation);
|
|
67
|
+
const [sendImpactEmail, { loading: impactEmailLoading, errors: impactEmailErrors },] = xe(ImpactVerificationEmailMutation);
|
|
68
|
+
const sendLoading = participantEmailLoading || impactEmailLoading;
|
|
69
|
+
const sendErrors = participantEmailErrors || impactEmailErrors;
|
|
70
|
+
// Verification mutations
|
|
71
|
+
const [verifyUserEmail, { loading: verifyMutationLoading, errors: verifyMutationErrors },] = xe(VerifyUserEmailMutation);
|
|
72
|
+
const [submitImpactCode, { loading: submitImpactCodeLoading, errors: submitImpactCodeErrors },] = xe(SubmitImpactCodeMutation);
|
|
73
|
+
const verifyLoading = verifyMutationLoading || submitImpactCodeLoading;
|
|
74
|
+
const verifyErrors = verifyMutationErrors || submitImpactCodeErrors;
|
|
75
|
+
const [initialized, setInitialized] = useState(false);
|
|
76
|
+
const initialise = async () => {
|
|
77
|
+
var _a, _b, _c, _d;
|
|
78
|
+
try {
|
|
79
|
+
const lookup = await fetch({});
|
|
80
|
+
if (!lookup || lookup instanceof Error)
|
|
81
|
+
throw new Error();
|
|
82
|
+
setHasEmails({
|
|
83
|
+
participant: !!((_a = lookup === null || lookup === void 0 ? void 0 : lookup.viewer) === null || _a === void 0 ? void 0 : _a.email),
|
|
84
|
+
impact: !!((_d = (_c = (_b = lookup === null || lookup === void 0 ? void 0 : lookup.viewer) === null || _b === void 0 ? void 0 : _b.impactConnection) === null || _c === void 0 ? void 0 : _c.user) === null || _d === void 0 ? void 0 : _d.email),
|
|
85
|
+
});
|
|
86
|
+
setInitialized(true);
|
|
87
|
+
}
|
|
88
|
+
catch (e) {
|
|
89
|
+
console.error("Could not initialise verification", e);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
const sendVerificationEmail = async () => {
|
|
93
|
+
let result = null;
|
|
94
|
+
if (!initialized)
|
|
95
|
+
return result;
|
|
96
|
+
if (!hasEmails.participant && !hasEmails.impact)
|
|
97
|
+
return result;
|
|
98
|
+
try {
|
|
99
|
+
const request = hasEmails.impact ? sendImpactEmail : sendParticipantEmail;
|
|
100
|
+
const res = await request({
|
|
101
|
+
user: {
|
|
102
|
+
id: userIdentity.id,
|
|
103
|
+
accountId: userIdentity.accountId,
|
|
104
|
+
},
|
|
105
|
+
});
|
|
106
|
+
if (res instanceof Error || !res)
|
|
107
|
+
throw new Error();
|
|
108
|
+
result = hasEmails.impact
|
|
109
|
+
? res.requestImpactPublisherEmail2FA
|
|
110
|
+
: res.requestUserEmailVerification;
|
|
111
|
+
}
|
|
112
|
+
catch (e) {
|
|
113
|
+
console.error("Could not send verification email", e);
|
|
114
|
+
}
|
|
115
|
+
finally {
|
|
116
|
+
return result;
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
const verifyVerificationEmail = async (code) => {
|
|
120
|
+
var _a;
|
|
121
|
+
let result = null;
|
|
122
|
+
if (!initialized)
|
|
123
|
+
return result;
|
|
124
|
+
if (!hasEmails.participant && !hasEmails.impact)
|
|
125
|
+
return result;
|
|
126
|
+
try {
|
|
127
|
+
const request = hasEmails.impact ? submitImpactCode : verifyUserEmail;
|
|
128
|
+
const res = await request({
|
|
129
|
+
user: {
|
|
130
|
+
id: userIdentity.id,
|
|
131
|
+
accountId: userIdentity.accountId,
|
|
132
|
+
},
|
|
133
|
+
code,
|
|
134
|
+
});
|
|
135
|
+
if (res instanceof Error || !res)
|
|
136
|
+
throw new Error();
|
|
137
|
+
result = {
|
|
138
|
+
success: true,
|
|
139
|
+
accessKey: hasEmails.impact
|
|
140
|
+
? (_a = res.submitImpactPublisherEmail2FACode) === null || _a === void 0 ? void 0 : _a.accessKey : undefined,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
catch (e) {
|
|
144
|
+
console.error("Could not verify email", e);
|
|
145
|
+
}
|
|
146
|
+
finally {
|
|
147
|
+
return result;
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
useEffect(() => {
|
|
151
|
+
if (!initialized)
|
|
152
|
+
initialise();
|
|
153
|
+
}, []);
|
|
154
|
+
return {
|
|
155
|
+
initialized,
|
|
156
|
+
send: [
|
|
157
|
+
sendVerificationEmail,
|
|
158
|
+
{ loading: sendLoading, errors: sendErrors },
|
|
159
|
+
],
|
|
160
|
+
verify: [
|
|
161
|
+
verifyVerificationEmail,
|
|
162
|
+
{ loading: verifyLoading, errors: verifyErrors },
|
|
163
|
+
],
|
|
164
|
+
};
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
export { useVerificationEmail as u };
|