@saasquatch/mint-components 2.3.1 → 2.4.1-1
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/sqm-email-verification_2.cjs.entry.js +40 -15
- package/dist/cjs/{sqm-partner-info-modal-view-243aad7b.js → sqm-partner-info-modal-view-431100ad.js} +13 -4
- package/dist/cjs/sqm-stencilbook.cjs.entry.js +47 -6
- package/dist/collection/components/sqm-partner-info-modal/PartnerInfoModal.stories.js +38 -0
- package/dist/collection/components/sqm-partner-info-modal/sqm-partner-info-modal-view.js +14 -5
- package/dist/collection/components/sqm-partner-info-modal/sqm-partner-info-modal.js +1 -1
- package/dist/collection/components/sqm-partner-info-modal/usePartnerInfoModal.js +38 -13
- package/dist/collection/components/sqm-widget-verification/sqm-email-verification/sqm-email-verification.js +1 -1
- package/dist/esm/sqm-email-verification_2.entry.js +40 -15
- package/dist/esm/{sqm-partner-info-modal-view-8f141a4f.js → sqm-partner-info-modal-view-34d4be5b.js} +14 -5
- package/dist/esm/sqm-stencilbook.entry.js +47 -6
- package/dist/esm-es5/sqm-email-verification_2.entry.js +1 -1
- package/dist/esm-es5/sqm-partner-info-modal-view-34d4be5b.js +1 -0
- package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
- package/dist/mint-components/mint-components.esm.js +1 -1
- package/dist/mint-components/{p-f77b89cb.entry.js → p-2e33148c.entry.js} +2 -2
- package/dist/mint-components/{p-1f68a3e6.system.entry.js → p-3784c92c.system.entry.js} +1 -1
- package/dist/mint-components/p-ad90628d.system.js +1 -0
- package/dist/mint-components/p-bfb00685.system.js +1 -1
- package/dist/mint-components/{p-61f7bf8a.entry.js → p-c3025801.entry.js} +6 -6
- package/dist/mint-components/p-c36fedea.js +1 -0
- package/dist/mint-components/p-f8ec1f37.system.entry.js +1 -0
- package/dist/types/components/sqm-partner-info-modal/PartnerInfoModal.stories.d.ts +3 -0
- package/dist/types/components/sqm-partner-info-modal/sqm-partner-info-modal-view.d.ts +5 -0
- package/docs/docs.docx +0 -0
- package/package.json +1 -1
- package/dist/esm-es5/sqm-partner-info-modal-view-8f141a4f.js +0 -1
- package/dist/mint-components/p-55847fc2.system.entry.js +0 -1
- package/dist/mint-components/p-a094da68.js +0 -1
- package/dist/mint-components/p-e7f45f18.system.js +0 -1
|
@@ -7,7 +7,7 @@ import { g as getProps } from './utils-334c1e34.js';
|
|
|
7
7
|
import { c as createStyleSheet } from './JSS-67b5cff8.js';
|
|
8
8
|
import { T as TextSpanView } from './sqm-text-span-view-72f43dff.js';
|
|
9
9
|
import { g as GET_FINANCE_NETWORK_SETTINGS } from './data-8698cbc6.js';
|
|
10
|
-
import { a as PartnerInfoModalContentView, P as PartnerInfoModalView } from './sqm-partner-info-modal-view-
|
|
10
|
+
import { a as PartnerInfoModalContentView, P as PartnerInfoModalView } from './sqm-partner-info-modal-view-34d4be5b.js';
|
|
11
11
|
import { S as SHOW_CODE_NAMESPACE, a as VERIFICATION_EMAIL_NAMESPACE, P as PARTNER_CREATED_NAMESPACE } from './keys-1054056a.js';
|
|
12
12
|
import { T as TAX_FORM_UPDATED_EVENT_KEY } from './eventKeys-f76b6a03.js';
|
|
13
13
|
import { p as parseStates } from './parseStates-ed75e224.js';
|
|
@@ -410,7 +410,7 @@ function useDemoWidgetEmailVerification(props) {
|
|
|
410
410
|
const setShowCode = En(SHOW_CODE_NAMESPACE);
|
|
411
411
|
return cjs({
|
|
412
412
|
states: {
|
|
413
|
-
error:
|
|
413
|
+
error: false,
|
|
414
414
|
initialLoading: false,
|
|
415
415
|
loading: false,
|
|
416
416
|
email: "test@example.com",
|
|
@@ -494,17 +494,19 @@ const START_IMPACT_CONNECTION = dist.gql `
|
|
|
494
494
|
}
|
|
495
495
|
`;
|
|
496
496
|
function usePartnerInfoModal(props) {
|
|
497
|
-
var _a, _b, _c, _d, _e;
|
|
497
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
498
498
|
const locale = L();
|
|
499
499
|
const setPartnerCreated = En(PARTNER_CREATED_NAMESPACE);
|
|
500
500
|
const { data: userData, loading: userLoading, refetch, } = wn(GET_USER_PARTNER_INFO, {});
|
|
501
501
|
const user = userData === null || userData === void 0 ? void 0 : userData.user;
|
|
502
502
|
const { data: currenciesData, loading: currenciesLoading } = wn(GET_CURRENCIES, { variables: { locale } });
|
|
503
503
|
const { data: countriesData, loading: countriesLoading } = wn(GET_COUNTRIES, {});
|
|
504
|
+
const [shouldDisplayNameFields, setShouldDisplayNameFields] = useState(false);
|
|
505
|
+
const [firstName, setFirstName] = useState((_a = user === null || user === void 0 ? void 0 : user.firstName) !== null && _a !== void 0 ? _a : "");
|
|
506
|
+
const [lastName, setLastName] = useState((_b = user === null || user === void 0 ? void 0 : user.lastName) !== null && _b !== void 0 ? _b : "");
|
|
504
507
|
// No pre-filled country, use locale to determine countryCode instead
|
|
505
|
-
const [countryCode, setCountryCode] = useState(((
|
|
506
|
-
|
|
507
|
-
const [currency, setCurrency] = useState(((_d = (_c = user === null || user === void 0 ? void 0 : user.impactConnection) === null || _c === void 0 ? void 0 : _c.publisher) === null || _d === void 0 ? void 0 : _d.currency) || "");
|
|
508
|
+
const [countryCode, setCountryCode] = useState(((_d = (_c = user === null || user === void 0 ? void 0 : user.impactConnection) === null || _c === void 0 ? void 0 : _c.publisher) === null || _d === void 0 ? void 0 : _d.countryCode) || locale.replace(/^.*_/, ""));
|
|
509
|
+
const [currency, setCurrency] = useState(((_f = (_e = user === null || user === void 0 ? void 0 : user.impactConnection) === null || _e === void 0 ? void 0 : _e.publisher) === null || _f === void 0 ? void 0 : _f.currency) || "");
|
|
508
510
|
const { data: financeNetworkData } = wn(GET_FINANCE_NETWORK_SETTINGS, {
|
|
509
511
|
variables: { filter: countryCode ? { countryCode_eq: countryCode } : {} },
|
|
510
512
|
});
|
|
@@ -523,7 +525,7 @@ function usePartnerInfoModal(props) {
|
|
|
523
525
|
return a.displayName.localeCompare(b.displayName);
|
|
524
526
|
});
|
|
525
527
|
}, [countriesData]);
|
|
526
|
-
const isExistingPartner = !!((
|
|
528
|
+
const isExistingPartner = !!((_g = user === null || user === void 0 ? void 0 : user.impactConnection) === null || _g === void 0 ? void 0 : _g.publisher);
|
|
527
529
|
const _currencies = useMemo(() => {
|
|
528
530
|
var _a, _b, _c;
|
|
529
531
|
// if isExistingPartner, grab all currencies since select is disabled anyways
|
|
@@ -550,14 +552,21 @@ function usePartnerInfoModal(props) {
|
|
|
550
552
|
const [filteredCurrencies, setFilteredCurrencies] = useState(currencies || []);
|
|
551
553
|
const [error, setError] = useState("");
|
|
552
554
|
const [success, setSuccess] = useState(false);
|
|
555
|
+
const [initialized, setInitialized] = useState(false);
|
|
553
556
|
useEffect(() => {
|
|
554
557
|
var _a;
|
|
555
|
-
|
|
556
|
-
if (!userData || !publisher)
|
|
558
|
+
if (initialized || !user)
|
|
557
559
|
return;
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
560
|
+
setShouldDisplayNameFields(!user.firstName || !user.lastName);
|
|
561
|
+
setFirstName(user.firstName || "");
|
|
562
|
+
setLastName(user.lastName || "");
|
|
563
|
+
const publisher = (_a = user.impactConnection) === null || _a === void 0 ? void 0 : _a.publisher;
|
|
564
|
+
if (publisher) {
|
|
565
|
+
setCountryCode(publisher.countryCode);
|
|
566
|
+
setCurrency(publisher.currency);
|
|
567
|
+
}
|
|
568
|
+
setInitialized(true);
|
|
569
|
+
}, [user, initialized]);
|
|
561
570
|
useEffect(() => {
|
|
562
571
|
if (!(countries === null || countries === void 0 ? void 0 : countries.length))
|
|
563
572
|
return;
|
|
@@ -579,6 +588,14 @@ function usePartnerInfoModal(props) {
|
|
|
579
588
|
}
|
|
580
589
|
}, [currencySearch, currencies]);
|
|
581
590
|
const impactConnection = user === null || user === void 0 ? void 0 : user.impactConnection;
|
|
591
|
+
function onFirstNameChange(e) {
|
|
592
|
+
const value = e.target.value;
|
|
593
|
+
setFirstName(value);
|
|
594
|
+
}
|
|
595
|
+
function onLastNameChange(e) {
|
|
596
|
+
const value = e.target.value;
|
|
597
|
+
setLastName(value);
|
|
598
|
+
}
|
|
582
599
|
function onCountryChange(e) {
|
|
583
600
|
var _a, _b;
|
|
584
601
|
const value = (_b = (_a = e.detail) === null || _a === void 0 ? void 0 : _a.item) === null || _b === void 0 ? void 0 : _b.__value;
|
|
@@ -602,7 +619,10 @@ function usePartnerInfoModal(props) {
|
|
|
602
619
|
}
|
|
603
620
|
async function onSubmit() {
|
|
604
621
|
var _a, _b;
|
|
605
|
-
if (!allowBankingCollection ||
|
|
622
|
+
if (!allowBankingCollection ||
|
|
623
|
+
!countryCode ||
|
|
624
|
+
!currency ||
|
|
625
|
+
(shouldDisplayNameFields && (!firstName || !lastName))) {
|
|
606
626
|
setError(props.missingFieldsErrorText);
|
|
607
627
|
return;
|
|
608
628
|
}
|
|
@@ -617,8 +637,8 @@ function usePartnerInfoModal(props) {
|
|
|
617
637
|
id: user.id,
|
|
618
638
|
accountId: user.accountId,
|
|
619
639
|
},
|
|
620
|
-
firstName
|
|
621
|
-
lastName
|
|
640
|
+
firstName,
|
|
641
|
+
lastName,
|
|
622
642
|
countryCode,
|
|
623
643
|
currency,
|
|
624
644
|
};
|
|
@@ -653,7 +673,10 @@ function usePartnerInfoModal(props) {
|
|
|
653
673
|
open: showModal,
|
|
654
674
|
loading: userLoading || countriesLoading || currenciesLoading,
|
|
655
675
|
submitting: connectLoading,
|
|
676
|
+
shouldDisplayNameFields,
|
|
656
677
|
isExistingPartner,
|
|
678
|
+
firstName,
|
|
679
|
+
lastName,
|
|
657
680
|
countryCode,
|
|
658
681
|
currency,
|
|
659
682
|
error,
|
|
@@ -664,6 +687,8 @@ function usePartnerInfoModal(props) {
|
|
|
664
687
|
disabled: userLoading || connectLoading,
|
|
665
688
|
},
|
|
666
689
|
callbacks: {
|
|
690
|
+
onFirstNameChange,
|
|
691
|
+
onLastNameChange,
|
|
667
692
|
onCountryChange,
|
|
668
693
|
onCurrencyChange,
|
|
669
694
|
onCheckboxChange,
|
package/dist/esm/{sqm-partner-info-modal-view-8f141a4f.js → sqm-partner-info-modal-view-34d4be5b.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { h } from './index-38ad4957.js';
|
|
1
|
+
import { h, F as Fragment } from './index-38ad4957.js';
|
|
2
2
|
import { i as intl } from './global-32d00a6e.js';
|
|
3
3
|
import { c as createStyleSheet } from './JSS-67b5cff8.js';
|
|
4
4
|
|
|
@@ -28,6 +28,12 @@ const style = {
|
|
|
28
28
|
gap: "var(--sl-spacing-medium)",
|
|
29
29
|
marginTop: "var(--sl-spacing-large)",
|
|
30
30
|
},
|
|
31
|
+
NameInput: {
|
|
32
|
+
"&::part(label)": {
|
|
33
|
+
fontWeight: "var(--sl-font-weight-normal)",
|
|
34
|
+
fontSize: "var(--sl-input-label-font-size-medium)",
|
|
35
|
+
},
|
|
36
|
+
},
|
|
31
37
|
ErrorMessage: {
|
|
32
38
|
marginTop: "var(--sl-spacing-x-small)",
|
|
33
39
|
},
|
|
@@ -95,11 +101,12 @@ function PartnerInfoModalContentView(props) {
|
|
|
95
101
|
termsAndConditionsLink: (h("a", { href: text.termsAndConditionsLink, target: "_blank" }, text.termsAndConditionsLabel)),
|
|
96
102
|
});
|
|
97
103
|
return (h("div", null,
|
|
98
|
-
h("style", { type: "text/css" },
|
|
99
|
-
" ",
|
|
100
|
-
styleString),
|
|
104
|
+
h("style", { type: "text/css" }, styleString),
|
|
101
105
|
h("div", { class: sheet.classes.FormFields },
|
|
102
106
|
description,
|
|
107
|
+
states.shouldDisplayNameFields && (h(Fragment, null,
|
|
108
|
+
h("sl-input", { exportparts: "label: input-label, base: input-base", class: sheet.classes.NameInput, label: "First Name", value: states.firstName, "onSl-input": callbacks.onFirstNameChange, disabled: states.submitting, required: true }),
|
|
109
|
+
h("sl-input", { exportparts: "label: input-label, base: input-base", class: sheet.classes.NameInput, label: "Last Name", value: states.lastName, "onSl-input": callbacks.onLastNameChange, disabled: states.submitting, required: true }))),
|
|
103
110
|
h("sl-select", { exportparts: "label: input-label, base: input-base, menu: select-menu", label: text.countryLabel, value: states.countryCode, disabled: states.submitting ||
|
|
104
111
|
(!!states.countryCode && states.isExistingPartner), required: true, hoist: true, "onSl-select": callbacks.onCountryChange },
|
|
105
112
|
h("sl-input", { class: sheet.classes.SearchInput, placeholder: text.searchCountryPlaceholder, onKeyDown: (e) => e.stopPropagation(), "onSl-input": (e) => {
|
|
@@ -121,7 +128,9 @@ function PartnerInfoModalContentView(props) {
|
|
|
121
128
|
h("sl-button", { slot: "footer", type: "primary", loading: states.submitting, disabled: states.submitting ||
|
|
122
129
|
!states.countryCode ||
|
|
123
130
|
!states.currency ||
|
|
124
|
-
!states.allowBankingCollection
|
|
131
|
+
!states.allowBankingCollection ||
|
|
132
|
+
(states.shouldDisplayNameFields &&
|
|
133
|
+
(!states.firstName || !states.lastName)), onClick: callbacks.onSubmit, class: sheet.classes.SubmitButton, exportparts: "base: primarybutton-base" }, buttonLabel)));
|
|
125
134
|
}
|
|
126
135
|
function PartnerInfoModalView(props) {
|
|
127
136
|
const { states, text, callbacks } = props;
|
|
@@ -36,7 +36,7 @@ import { P as PortalContainerView, a as PortalSectionView } from './sqm-portal-c
|
|
|
36
36
|
import { I as InvoiceTableView, T as TaxAndCashDashboardView$1, O as OtherRegionSlotView, U as UserInfoFormView$1 } from './sqm-user-info-form-view-ceb3917a.js';
|
|
37
37
|
import { L as LeadInputFieldView } from './sqm-lead-input-field-view-671ff96f.js';
|
|
38
38
|
import './data-8698cbc6.js';
|
|
39
|
-
import { P as PartnerInfoModalView } from './sqm-partner-info-modal-view-
|
|
39
|
+
import { P as PartnerInfoModalView } from './sqm-partner-info-modal-view-34d4be5b.js';
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
42
|
* lodash (Custom Build) <https://lodash.com/>
|
|
@@ -19286,6 +19286,8 @@ const demoCurrencies = [
|
|
|
19286
19286
|
{ currencyCode: "AUD", displayName: "Australian Dollar" },
|
|
19287
19287
|
];
|
|
19288
19288
|
const noopCallbacks = {
|
|
19289
|
+
onFirstNameChange: (e) => console.log("First name changed:", e),
|
|
19290
|
+
onLastNameChange: (e) => console.log("Last name changed:", e),
|
|
19289
19291
|
onCountryChange: (e) => console.log("Country changed:", e),
|
|
19290
19292
|
onCurrencyChange: (e) => console.log("Currency changed:", e),
|
|
19291
19293
|
onCheckboxChange: (e) => console.log("Checkbox changed:", e),
|
|
@@ -19318,6 +19320,9 @@ const defaultProps$y = {
|
|
|
19318
19320
|
loading: false,
|
|
19319
19321
|
submitting: false,
|
|
19320
19322
|
isExistingPartner: false,
|
|
19323
|
+
shouldDisplayNameFields: false,
|
|
19324
|
+
firstName: "",
|
|
19325
|
+
lastName: "",
|
|
19321
19326
|
countryCode: "",
|
|
19322
19327
|
currency: "",
|
|
19323
19328
|
error: "",
|
|
@@ -19435,6 +19440,39 @@ const SQMComponentNewPartner = () => {
|
|
|
19435
19440
|
states: { open: true, isExistingPartner: false },
|
|
19436
19441
|
} }));
|
|
19437
19442
|
};
|
|
19443
|
+
const PartnerHasFirstAndLastName = () => {
|
|
19444
|
+
const props = {
|
|
19445
|
+
...defaultProps$y,
|
|
19446
|
+
states: {
|
|
19447
|
+
...defaultProps$y.states,
|
|
19448
|
+
firstName: "John",
|
|
19449
|
+
lastName: "Doe",
|
|
19450
|
+
},
|
|
19451
|
+
};
|
|
19452
|
+
return h(PartnerInfoModalView, Object.assign({}, props));
|
|
19453
|
+
};
|
|
19454
|
+
const PartnerHasFirstNameOnly = () => {
|
|
19455
|
+
const props = {
|
|
19456
|
+
...defaultProps$y,
|
|
19457
|
+
states: {
|
|
19458
|
+
...defaultProps$y.states,
|
|
19459
|
+
firstName: "John",
|
|
19460
|
+
lastName: "",
|
|
19461
|
+
shouldDisplayNameFields: true,
|
|
19462
|
+
},
|
|
19463
|
+
};
|
|
19464
|
+
return h(PartnerInfoModalView, Object.assign({}, props));
|
|
19465
|
+
};
|
|
19466
|
+
const Loading$i = () => {
|
|
19467
|
+
const props = {
|
|
19468
|
+
...defaultProps$y,
|
|
19469
|
+
states: {
|
|
19470
|
+
...defaultProps$y.states,
|
|
19471
|
+
loading: true,
|
|
19472
|
+
},
|
|
19473
|
+
};
|
|
19474
|
+
return h(PartnerInfoModalView, Object.assign({}, props));
|
|
19475
|
+
};
|
|
19438
19476
|
|
|
19439
19477
|
const PartnerInfoModal = /*#__PURE__*/Object.freeze({
|
|
19440
19478
|
__proto__: null,
|
|
@@ -19449,7 +19487,10 @@ const PartnerInfoModal = /*#__PURE__*/Object.freeze({
|
|
|
19449
19487
|
ValidationError: ValidationError$1,
|
|
19450
19488
|
Closed: Closed,
|
|
19451
19489
|
SQMComponentExistingPartner: SQMComponentExistingPartner,
|
|
19452
|
-
SQMComponentNewPartner: SQMComponentNewPartner
|
|
19490
|
+
SQMComponentNewPartner: SQMComponentNewPartner,
|
|
19491
|
+
PartnerHasFirstAndLastName: PartnerHasFirstAndLastName,
|
|
19492
|
+
PartnerHasFirstNameOnly: PartnerHasFirstNameOnly,
|
|
19493
|
+
Loading: Loading$i
|
|
19453
19494
|
});
|
|
19454
19495
|
|
|
19455
19496
|
const WidgetVerification_stories = {
|
|
@@ -19464,7 +19505,7 @@ const Step2Code = () => (h("sqm-widget-verification", { stateController: JSON.st
|
|
|
19464
19505
|
const Step3PartnerModal = () => (h("sqm-widget-verification", { stateController: JSON.stringify({
|
|
19465
19506
|
"sqm-widget-verification": { showPartnerModal: true },
|
|
19466
19507
|
}) }));
|
|
19467
|
-
const Loading$
|
|
19508
|
+
const Loading$j = () => (h("sqm-widget-verification", { stateController: JSON.stringify({
|
|
19468
19509
|
"sqm-widget-verification": { loading: true },
|
|
19469
19510
|
}) }));
|
|
19470
19511
|
|
|
@@ -19474,7 +19515,7 @@ const WidgetVerification = /*#__PURE__*/Object.freeze({
|
|
|
19474
19515
|
Step1Email: Step1Email,
|
|
19475
19516
|
Step2Code: Step2Code,
|
|
19476
19517
|
Step3PartnerModal: Step3PartnerModal,
|
|
19477
|
-
Loading: Loading$
|
|
19518
|
+
Loading: Loading$j
|
|
19478
19519
|
});
|
|
19479
19520
|
|
|
19480
19521
|
const scenario$G = "@owner:zach @author:zach\nFeature: User Attribute\n Displays a user's custom field value.\n\n Background: A user exists\n Given a user is logged in\n And the user has custom fields\n\n @motivating\n Scenario: A custom field value is displayed\n Given the component has prop \"value\" with value \"firstName\"\n And the user has a custom field \"firstName\" with value \"John\"\n When the component is rendered\n Then the text \"John\" is displayed\n\n @landmine\n Scenario: Nothing is rendered when the custom field does not exist\n Given the component has prop \"value\" with value \"nonExistentField\"\n And the user does not have a custom field \"nonExistentField\"\n Then component is not rendered\n And nothing is displayed\n\n @motivating\n Scenario: Nothing is rendered while user data is loading\n Given the component is loading user data\n When the component is rendered\n Then component is not rendered\n And nothing is displayed\n\n @motivating\n Scenario Outline: Optional styling props can be applied to customize the text appearance\n Given the component has prop <prop> with value <value>\n When the component is rendered\n Then the text is displayed with <cssProperty> set to <value>\n\n Examples:\n | prop | value | cssProperty |\n | fontSize | 24 | font-size |\n | color | #E91E63 | color |\n | fontWeight | 700 | font-weight |\n\n @minutia\n Scenario: Style props are optional and default to no custom styling\n Given the component has no style props set\n When the component is rendered\n Then the text is displayed with default browser styles\n";
|
|
@@ -19505,7 +19546,7 @@ const InvalidValue = () => {
|
|
|
19505
19546
|
} }),
|
|
19506
19547
|
h("div", { style: { background: "#e0e0e0", padding: "8px" } }, "Below")));
|
|
19507
19548
|
};
|
|
19508
|
-
const Loading$
|
|
19549
|
+
const Loading$k = () => {
|
|
19509
19550
|
return (h("sqm-user-attribute", { demoData: {
|
|
19510
19551
|
loading: true,
|
|
19511
19552
|
value: "impact.com",
|
|
@@ -19526,7 +19567,7 @@ const UserAttribute = /*#__PURE__*/Object.freeze({
|
|
|
19526
19567
|
'default': UserAttribute_stories,
|
|
19527
19568
|
Default: Default$x,
|
|
19528
19569
|
InvalidValue: InvalidValue,
|
|
19529
|
-
Loading: Loading$
|
|
19570
|
+
Loading: Loading$k,
|
|
19530
19571
|
WithCustomStyles: WithCustomStyles
|
|
19531
19572
|
});
|
|
19532
19573
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var __makeTemplateObject=this&&this.__makeTemplateObject||function(e,r){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:r})}else{e.raw=r}return e};var __awaiter=this&&this.__awaiter||function(e,r,t,n){function a(e){return e instanceof t?e:new t((function(r){r(e)}))}return new(t||(t=Promise))((function(t,o){function i(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n["throw"](e))}catch(e){o(e)}}function l(e){e.done?t(e.value):a(e.value).then(i,s)}l((n=n.apply(e,r||[])).next())}))};var __generator=this&&this.__generator||function(e,r){var t={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,i;return i={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function s(e){return function(r){return l([e,r])}}function l(i){if(n)throw new TypeError("Generator is already executing.");while(t)try{if(n=1,a&&(o=i[0]&2?a["return"]:i[0]?a["throw"]||((o=a["return"])&&o.call(a),0):a.next)&&!(o=o.call(a,i[1])).done)return o;if(a=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:t.label++;return{value:i[1],done:false};case 5:t.label++;a=i[1];i=[0];continue;case 7:i=t.ops.pop();t.trys.pop();continue;default:if(!(o=t.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){t=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){t.label=i[1];break}if(i[0]===6&&t.label<o[1]){t.label=o[1];o=i;break}if(o&&t.label<o[2]){t.label=o[2];t.ops.push(i);break}if(o[2])t.ops.pop();t.trys.pop();continue}i=r.call(e,t)}catch(e){i=[6,e];a=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}};var __spreadArrays=this&&this.__spreadArrays||function(){for(var e=0,r=0,t=arguments.length;r<t;r++)e+=arguments[r].length;for(var n=Array(e),a=0,r=0;r<t;r++)for(var o=arguments[r],i=0,s=o.length;i<s;i++,a++)n[a]=o[i];return n};import{h,r as registerInstance}from"./index-38ad4957.js";import{i as intl}from"./global-32d00a6e.js";import{k as useState,f as useEffect,n as h$1,u as useMemo}from"./dom-context-hooks.module-50442785.js";import{d as dist,q as Pn,w as wn,J,$ as $e,i as isDemo,p as En,L}from"./index.module-02cb914c.js";import{c as cjs}from"./cjs-bdfb4486.js";import{g as getProps}from"./utils-334c1e34.js";import{c as createStyleSheet}from"./JSS-67b5cff8.js";import{T as TextSpanView}from"./sqm-text-span-view-72f43dff.js";import{g as GET_FINANCE_NETWORK_SETTINGS}from"./data-8698cbc6.js";import{a as PartnerInfoModalContentView,P as PartnerInfoModalView}from"./sqm-partner-info-modal-view-8f141a4f.js";import{S as SHOW_CODE_NAMESPACE,a as VERIFICATION_EMAIL_NAMESPACE,P as PARTNER_CREATED_NAMESPACE}from"./keys-1054056a.js";import{T as TAX_FORM_UPDATED_EVENT_KEY}from"./eventKeys-f76b6a03.js";import{p as parseStates}from"./parseStates-ed75e224.js";import{u as useVerificationEmail}from"./useVerificationEmail-9f2c0bab.js";var UpsertUserEmailMutation=dist.gql(templateObject_1||(templateObject_1=__makeTemplateObject(["\n mutation upsertUser($userInput: UserInput!) {\n upsertUser(userInput: $userInput) {\n id\n accountId\n email\n }\n }\n"],["\n mutation upsertUser($userInput: UserInput!) {\n upsertUser(userInput: $userInput) {\n id\n accountId\n email\n }\n }\n"])));var UserLookupQuery=dist.gql(templateObject_2||(templateObject_2=__makeTemplateObject(["\n query user {\n viewer {\n ... on User {\n id\n accountId\n email\n impactConnection {\n user {\n id\n email\n }\n }\n }\n }\n }\n"],["\n query user {\n viewer {\n ... on User {\n id\n accountId\n email\n impactConnection {\n user {\n id\n email\n }\n }\n }\n }\n }\n"])));function useUpsertUserEmail(){var e=this;var r=J();var t=$e(UpsertUserEmailMutation),n=t[0],a=t[1],o=a.loading,i=a.data,s=a.errors;var l=function(t){return __awaiter(e,void 0,void 0,(function(){var e,a;return __generator(this,(function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,n({userInput:{id:r.id,accountId:r.accountId,email:t}})];case 1:e=o.sent();if(e instanceof Error||!e)throw new Error;return[2,e];case 2:a=o.sent();console.error("Could not set email on user",a);return[2,undefined];case 3:return[2]}}))}))};return[l,{loading:o,data:i,errors:s}]}function useWidgetEmailVerification(e){var r=this;var t=Pn(SHOW_CODE_NAMESPACE),n=t[0],a=t[1];var o=Pn(VERIFICATION_EMAIL_NAMESPACE),i=o[0],s=o[1];var l=useState(false),u=l[0],c=l[1];var d=useState(false),p=d[0],m=d[1];var f=useState(false),v=f[0],b=f[1];var h=useVerificationEmail(),y=h.initialized,g=h.send,C=g[0],E=g[1],_=E.loading,w=E.errors;var x=useUpsertUserEmail()[0];var k=useState(true),S=k[0],T=k[1];var q=wn(UserLookupQuery,{}),I=q.data,P=q.loading;var N=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;useEffect((function(){if(!(I===null||I===void 0?void 0:I.viewer))return;c(!!I.viewer.email)}),[I]);useEffect((function(){if(y)T(false)}),[y]);var O=function(e){return __awaiter(r,void 0,void 0,(function(){var r,t,n,o,i,l,u,c,d;return __generator(this,(function(p){switch(p.label){case 0:e.preventDefault();if(!(I===null||I===void 0?void 0:I.viewer))return[2];T(true);b(false);m(false);i=I.viewer.email;if(!!i)return[3,2];l=(r=e.detail)===null||r===void 0?void 0:r.formData;u=(n=(t=l===null||l===void 0?void 0:l.get("email"))===null||t===void 0?void 0:t.toString())!==null&&n!==void 0?n:"";if(!N.test(u)){m(true);T(false);return[2]}return[4,x(u)];case 1:c=p.sent();if(!c||!((o=c.upsertUser)===null||o===void 0?void 0:o.email)){m(true);T(false);return[2]}i=c.upsertUser.email;p.label=2;case 2:if(!y){T(false);return[2]}return[4,C()];case 3:d=p.sent();if(!d||!d.success){b(true)}else{s(i);a(true)}T(false);return[2]}}))}))};return{callbacks:{submitEmail:O},states:{loading:S,initialLoading:P&&!y,error:p,email:I===null||I===void 0?void 0:I.viewer.email,sendCodeError:v},text:e.getTextProps()}}var style={Wrapper:{display:"flex",flexDirection:"column",gap:"var(--sl-spacing-medium)",marginTop:"var(--sl-spacing-medium)"},InputsContainer:{display:"flex",gap:"var(--sl-spacing-medium)",position:"relative",flexDirection:"column"},ContinueButton:{width:"100%"},SkeletonOne:{width:"50%",height:"16px"},SkeletonTwo:{width:"30%",height:"34px"},SkeletonThree:{width:"15%",height:"24px"},ErrorInput:{"&::part(base)":{border:"var(--sqm-border-thickness) solid var(--sqm-danger-color-border)",borderRadius:"var(--sqm-input-border-radius)"},"&::part(help-text)":{color:"var(--sqm-danger-color-text)"}}};var vanillaStyle='\n:host {\n display: block;\n}\n:host([hidden]): {\n display: none;\n}\n\na {\n color: inherit;\n text-decoration: underline;\n cursor: pointer;\n}\n\n*::part(primarybutton-base),\nsl-button[type="primary"]::part(base) {\n font-family: var(--sqm-primary-font);\n width: 100%;\n background-color: var(--sqm-primary-button-background);\n color: var(--sqm-primary-button-color);\n border-color: var(--sqm-primary-button-color-border);\n border-radius: var(--sqm-primary-button-radius);\n}\n\n*::part(primarybutton-base):hover,\nsl-button[type="primary"]::part(base):hover{\n background-color: var(--sqm-primary-button-background-hover);\n border-color: var(--sqm-primary-button-border-color-hover);\n color: var(--sqm-primary-button-color-hover);\n}\n\n\n*::part(primarybutton-base):focus,\nsl-button[type="primary"]::part(base):focus {\n box-shadow: none;\n}\n\n*::part(secondarybutton-base),\nsl-button[type="secondary"]::part(base) {\nfont-family: var(--sqm-primary-font);\n background-color: var(--sqm-secondary-button-background);\n color: var(--sqm-secondary-button-color);\n border-color: var(--sqm-secondary-button-color-border);\n border-radius: var(--sqm-secondary-button-radius);\n}\n\n*::part(secondarybutton-base):hover,\nsl-button[type="secondary"]::part(base):hover {\n background-color: var(--sqm-secondary-button-background-hover);\n color: var(--sqm-secondary-button-color-hover);\n border-color: var(--sqm-secondary-button-border-color-hover);\n}\n\n*::part(input-label), *::part(select-label), *::part(textarea-label){\n font-family: var(--sqm-primary-font);\n font-size: var(--sqm-input-label-font-size, var(--sl-input-font-size-small));\n font-weight: var(--sl-font-weight-bold);\n color: var(--sqm-input-label-color, var(--sqm-text), black);\n}\n\n*::part(input-base), *::part(select-base), *::part(textarea-base){\n font-family: var(--sqm-primary-font);\n background-color: var(--sqm-input-background, #fff);\n border-radius: var(--sqm-input-border-radius, var(--sl-input-border-radius-large), 0.25rem);\n color: var(--sqm-input-color, white);\n border-width: var(--sqm-border-thickness, 1px);\n}\n\n*::part(input-base):hover, *::part(select-base):hover, *::part(textarea-base):hover{\n border-color: var(--sqm-border-color-hover);\n}\n\n*::part(input-base):focus, *::part(select-base):focus, *::part(textarea-base):focus{\n border-color: var(--sqm-border-color-focus);\n}\n\nsqm-name-fields::part(input-base) {\n font-family: var(--sqm-primary-font);\n background-color: var(--sqm-input-background, #fff);\n border-radius: var(--sqm-input-border-radius, var(--sl-input-border-radius-large), 0.25rem);\n color: var(--sqm-input-color, white);\n border-width: var(--sqm-border-thickness, 1px);\n}\n\nsl-input::part(base):focus,\nsl-select::part(form-control-wrapper):focus,\nsl-textarea::part(textarea-label):focus {\n border-color: var(--sqm-border-color-focus);\n}\n\n*::part(input-label):disabled, *::part(select-label):disabled, *::part(textarea-label):disabled{\n background: var(--sqm-input-disabled-background, #f5f5f5);\n color: var(--sqm-input-disabled-color, var(--sl-color-gray-600));\n}\n\n*::part(input):-webkit-autofill {\n box-shadow: 0 0 0 50px var(--sqm-input-background, #fff) inset !important;\n -webkit-text-fill-color: var(--sqm-input-color, white) !important;\n}\n\n*::part(input):-webkit-autofill:hover {\n box-shadow: 0 0 0 50px var(--sqm-input-background, #fff) inset !important;\n -webkit-text-fill-color: var(--sqm-input-color, white) !important;\n}\n\n*::part(input):-webkit-autofill:focus {\n box-shadow: 0 0 0 50px var(--sqm-input-background, #fff) inset !important;\n -webkit-text-fill-color: var(--sqm-input-color, white) !important;\n}\n\n*::part(input)::placeholder,\n*::part(select)::placeholder, \n*::part(textarea)::placeholder {\n font-family: var(--sqm-primary-font);\n color: var(--sqm-text-subdued);\n}\n\n*::part(input)::-webkit-input-placeholder,\n*::part(select)::-webkit-input-placeholder,\n*::part(textarea)::-webkit-input-placeholder {\n font-family: var(--sqm-primary-font);\n color: var(--sqm-text-subdued);\n}\n\n*::part(input)::-moz-placeholder,\n*::part(select)::-moz-placeholder,\n*::part(textarea)::-moz-placeholder {\n font-family: var(--sqm-primary-font);\n opacity: 1; /* Firefox adds an opacity to placeholders by default */\n color: var(--sqm-text-subdued);\n}\n\n*::part(input)::-ms-input-placeholder,\n*::part(select)::-ms-input-placeholder,\n*::part(textarea)::-ms-input-placeholder {\n font-family: var(--sqm-primary-font);\n color: var(--sqm-text-subdued);\n}\n\n\n';var sheet=createStyleSheet(style);var styleString=sheet.toString();function WidgetEmailVerificationView(e){var r=e.states,t=e.callbacks,n=e.text;var a=function(){return h("div",{class:sheet.classes.Wrapper},h("sqm-skeleton",{height:"16px",width:"50%"}),h("sqm-skeleton",{height:"16px",width:"50%"}),h("sqm-skeleton",{height:"16px",width:"50%"}),h("sqm-skeleton",{height:"34px",width:"30%"}),h("sqm-skeleton",{height:"24px",width:"15%"}),h("sl-button",{submit:true,class:sheet.classes.ContinueButton,loading:true,exportparts:"base: primarybutton-base",type:"primary"},n.sendCodeText))};return h("div",{part:"sqm-base"},h("style",{type:"text/css"},vanillaStyle,styleString),r.sendCodeError&&h("sqm-form-message",{type:"error"},h("p",{part:"alert-title"},n.sendCodeErrorHeader),intl.formatMessage({id:"sendCodeErrorDescription",defaultMessage:n.sendCodeErrorDescription},{supportLink:h("a",{target:"_blank",href:"mailto:advocate-support@impact.com"},n.supportLink)})),r.initialLoading?a():h("div",{class:sheet.classes.Wrapper},h(TextSpanView,{type:"p"},n.verifyEmailHeaderText),h("sl-form",{"onSl-submit":t.submitEmail},h("div",{class:sheet.classes.InputsContainer},h("sl-input",Object.assign({exportparts:"label: input-label, base: input-base",label:n.emailLabel,value:r.email||"",type:"email",id:"email",name:"email",disabled:!!r.email||r.loading},r.error?{class:sheet.classes.ErrorInput,helpText:n.emailValidationErrorText}:{})),h("sl-button",{submit:true,class:sheet.classes.ContinueButton,loading:r.loading,exportparts:"base: primarybutton-base",type:"primary"},n.sendCodeText)))))}var WidgetEmailVerification=function(){function e(e){registerInstance(this,e);this.verifyEmailHeaderText="Start by verifying your email. We’ll send you a code through our referral provider, impact.com.";this.sendCodeErrorHeader="There was an error sending your code";this.supportLink="support team";this.sendCodeErrorDescription="Please try again. If this problem continues, contact our program {supportLink}.";this.emailLabel="Email";this.sendCodeText="Send code";this.emailValidationErrorText="Please enter a valid email";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.getTextProps=function(){return getProps(this)};e.prototype.render=function(){var e=isDemo()?useDemoWidgetEmailVerification(this):useWidgetEmailVerification(this);return h(WidgetEmailVerificationView,Object.assign({},e))};return e}();function useDemoWidgetEmailVerification(e){var r=this;var t=En(SHOW_CODE_NAMESPACE);return cjs({states:{error:true,initialLoading:false,loading:false,email:"test@example.com",sendCodeError:true},callbacks:{submitEmail:function(){return __awaiter(r,void 0,void 0,(function(){return __generator(this,(function(e){return[2,t(true)]}))}))}},text:e.getTextProps()},e.demoData||{},{arrayMerge:function(e,r){return r}})}var GET_USER_PARTNER_INFO=dist.gql(templateObject_3||(templateObject_3=__makeTemplateObject(["\n query getUserPartnerInfo {\n user: viewer {\n ... on User {\n id\n accountId\n firstName\n lastName\n email\n countryCode\n customFields\n impactConnection {\n connected\n connectionStatus\n publisher {\n id\n countryCode\n currency\n }\n }\n }\n }\n }\n"],["\n query getUserPartnerInfo {\n user: viewer {\n ... on User {\n id\n accountId\n firstName\n lastName\n email\n countryCode\n customFields\n impactConnection {\n connected\n connectionStatus\n publisher {\n id\n countryCode\n currency\n }\n }\n }\n }\n }\n"])));var GET_COUNTRIES=dist.gql(templateObject_4||(templateObject_4=__makeTemplateObject(["\n query getCountries {\n impactPayoutCountries(limit: 1000) {\n data {\n countryCode\n displayName\n }\n }\n }\n"],["\n query getCountries {\n impactPayoutCountries(limit: 1000) {\n data {\n countryCode\n displayName\n }\n }\n }\n"])));var GET_CURRENCIES=dist.gql(templateObject_5||(templateObject_5=__makeTemplateObject(["\n query currencies($locale: RSLocale) {\n currencies(limit: 300) {\n data {\n displayName(locale: $locale)\n currencyCode\n }\n }\n }\n"],["\n query currencies($locale: RSLocale) {\n currencies(limit: 300) {\n data {\n displayName(locale: $locale)\n currencyCode\n }\n }\n }\n"])));var START_IMPACT_CONNECTION=dist.gql(templateObject_6||(templateObject_6=__makeTemplateObject(["\n mutation startImpactConnection($vars: ImpactConnectionInput!) {\n startImpactConnection(impactConnectionInput: $vars) {\n success\n validationErrors {\n field\n message\n }\n user {\n id\n accountId\n impactConnection {\n connected\n publisher {\n brandedSignup\n requiredTaxDocumentType\n currentTaxDocument {\n type\n status\n }\n }\n }\n }\n }\n }\n"],["\n mutation startImpactConnection($vars: ImpactConnectionInput!) {\n startImpactConnection(impactConnectionInput: $vars) {\n success\n validationErrors {\n field\n message\n }\n user {\n id\n accountId\n impactConnection {\n connected\n publisher {\n brandedSignup\n requiredTaxDocumentType\n currentTaxDocument {\n type\n status\n }\n }\n }\n }\n }\n }\n"])));function usePartnerInfoModal(e){var r,t,n,a,o;var i=L();var s=En(PARTNER_CREATED_NAMESPACE);var l=wn(GET_USER_PARTNER_INFO,{}),u=l.data,c=l.loading,d=l.refetch;var p=u===null||u===void 0?void 0:u.user;var m=wn(GET_CURRENCIES,{variables:{locale:i}}),f=m.data,v=m.loading;var b=wn(GET_COUNTRIES,{}),h=b.data,y=b.loading;var g=useState(((t=(r=p===null||p===void 0?void 0:p.impactConnection)===null||r===void 0?void 0:r.publisher)===null||t===void 0?void 0:t.countryCode)||i.replace(/^.*_/,"")),C=g[0],E=g[1];var _=useState(((a=(n=p===null||p===void 0?void 0:p.impactConnection)===null||n===void 0?void 0:n.publisher)===null||a===void 0?void 0:a.currency)||""),w=_[0],x=_[1];var k=wn(GET_FINANCE_NETWORK_SETTINGS,{variables:{filter:C?{countryCode_eq:C}:{}}}).data;var S=$e(START_IMPACT_CONNECTION),T=S[0],q=S[1].loading;var I=useState(false),P=I[0],N=I[1];var O=useMemo((function(){var e;var r=(e=h===null||h===void 0?void 0:h.impactPayoutCountries)===null||e===void 0?void 0:e.data;if(!r)return[];return __spreadArrays(r).sort((function(e,r){if(e.countryCode==="US")return-1;if(r.countryCode==="US")return 1;return e.displayName.localeCompare(r.displayName)}))}),[h]);var j=!!((o=p===null||p===void 0?void 0:p.impactConnection)===null||o===void 0?void 0:o.publisher);var A=useMemo((function(){var e,r,t;if(j){return((e=f===null||f===void 0?void 0:f.currencies)===null||e===void 0?void 0:e.data)||[]}var n=(t=(r=k===null||k===void 0?void 0:k.impactFinanceNetworkSettings)===null||r===void 0?void 0:r.data)===null||t===void 0?void 0:t.reduce((function(e,r){var t,n;if(C&&r.countryCode!==C)return e;var a=(n=(t=f===null||f===void 0?void 0:f.currencies)===null||t===void 0?void 0:t.data)===null||n===void 0?void 0:n.find((function(e){return e.currencyCode===r.currency}));if(!a)return e;if(e.find((function(e){return e.currencyCode===r.currency})))return e;return __spreadArrays(e,[a])}),[]);return n||[]}),[k,f,C,j]);var M=useMemo((function(){return __spreadArrays(A).sort((function(e,r){return e.displayName.localeCompare(r.displayName)}))}),[A]);var U=useState(""),D=U[0],R=U[1];var V=useState(""),$=V[0],W=V[1];var F=useState(O||[]),H=F[0],B=F[1];var G=useState(M||[]),z=G[0],K=G[1];var J=useState(""),Q=J[0],X=J[1];var Y=useState(false),Z=Y[0],ee=Y[1];useEffect((function(){var e;var r=(e=p===null||p===void 0?void 0:p.impactConnection)===null||e===void 0?void 0:e.publisher;if(!u||!r)return;E(r.countryCode);x(r.currency)}),[u,p]);useEffect((function(){if(!(O===null||O===void 0?void 0:O.length))return;if(D.trim()===""){B(O||[])}else{B(O.filter((function(e){return e.displayName.toLowerCase().includes(D.toLowerCase())}))||[])}}),[D,O]);useEffect((function(){if(!(M===null||M===void 0?void 0:M.length))return;if($.trim()===""){K(M||[])}else{K(M.filter((function(e){return e.currencyCode.toLowerCase().includes($.toLowerCase())}))||[])}}),[$,M]);var re=p===null||p===void 0?void 0:p.impactConnection;function te(e){var r,t;var n=(t=(r=e.detail)===null||r===void 0?void 0:r.item)===null||t===void 0?void 0:t.__value;if(!n)return;E(n);x("");X("")}function ne(e){var r,t;var n=(t=(r=e.detail)===null||r===void 0?void 0:r.item)===null||t===void 0?void 0:t.__value;if(!n)return;x(n);X("")}function ae(e){var r=e.target.checked;N(r)}function oe(){return __awaiter(this,void 0,void 0,(function(){var r,t,n,a,o,i,l;return __generator(this,(function(u){switch(u.label){case 0:if(!P||!C||!w){X(e.missingFieldsErrorText);return[2]}X("");if(!p){X(e.networkErrorText);return[2]}u.label=1;case 1:u.trys.push([1,4,,5]);n={user:{id:p.id,accountId:p.accountId},firstName:p.firstName,lastName:p.lastName,countryCode:C,currency:w};return[4,T({vars:n})];case 2:a=u.sent();if(!a||((r=a)===null||r===void 0?void 0:r.message)){X(e.networkErrorText);return[2]}o=a.startImpactConnection;if(!(o===null||o===void 0?void 0:o.success)){i=(t=o===null||o===void 0?void 0:o.validationErrors)===null||t===void 0?void 0:t.map((function(e){return e.message})).join(". ");X(i||e.networkErrorText);console.error("Failed to create Impact connection:",o===null||o===void 0?void 0:o.validationErrors);return[2]}window.dispatchEvent(new Event(TAX_FORM_UPDATED_EVENT_KEY));return[4,d()];case 3:u.sent();s===null||s===void 0?void 0:s(true);ee(true);return[3,5];case 4:l=u.sent();console.error("Partner creation error:",l);X(e.networkErrorText);return[3,5];case 5:return[2]}}))}))}var ie=!Z&&!c&&(re===null||re===void 0?void 0:re.connectionStatus)==="NOT_STARTED";return{states:{open:ie,loading:c||y||v,submitting:q,isExistingPartner:j,countryCode:C,currency:w,error:Q,success:Z,filteredCountries:H||[],filteredCurrencies:z||[],allowBankingCollection:P,disabled:c||q},callbacks:{onCountryChange:te,onCurrencyChange:ne,onCheckboxChange:ae,setCurrencySearch:W,setCountrySearch:R,onSubmit:oe,onClose:function(){return ee(true)}},text:e.getTextProps()}}var PartnerInfoModal=function(){function e(e){registerInstance(this,e);this.modalHeader="Let's get you ready for rewards";this.modalHeaderExistingPartner="We found an existing account";this.descriptionNewPartner="Confirm your country and currency now to get your future rewards faster.";this.descriptionExistingPartner="We found an account with this email on our referral program provider, impact.com. Please confirm your country and currency now to get your future rewards faster.";this.supportDescriptionExistingPartner="If this is a mistake, please contact {supportLink} or sign up for this referral program with a different email.";this.supportLink="Support";this.allowBankingCollection="I have read the {termsAndConditionsLink} and allow impact.com to collect my tax and banking information.";this.termsAndConditionsLabel="terms and conditions";this.termsAndConditionsLink="https://terms.advocate.impact.com/PayoutTermsAndConditions.html";this.countryLabel="Country";this.currencyLabel="Currency";this.submitButtonLabel="Submit";this.confirmButtonLabel="Confirm";this.searchCountryPlaceholder="Search for a country";this.searchCurrencyPlaceholder="Search for a currency";this.networkErrorText="An error occurred. Please try again.";this.missingFieldsErrorText="Please fill out all fields.";this.inModal=false;this.stateController='{"sqm-partner-info-modal":{"states":{"open":false}}}';h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.getTextProps=function(){return getProps(this)};e.prototype.render=function(){var e=isDemo()?useDemoPartnerInfoModal(this):usePartnerInfoModal(this);if(this.inModal){return h(PartnerInfoModalContentView,Object.assign({},e))}return h(PartnerInfoModalView,Object.assign({},e))};return e}();function useDemoPartnerInfoModal(e){var r=useState("US"),t=r[0],n=r[1];var a=useState(""),o=a[0],i=a[1];var s=useState(""),l=s[0],u=s[1];var c=useState(false),d=c[0],p=c[1];var m=parseStates(e.stateController);var f=(m===null||m===void 0?void 0:m["sqm-partner-info-modal"])||m||{};return cjs({states:{open:false,loading:false,submitting:false,isExistingPartner:false,countryCode:t,currency:o,error:l,success:false,filteredCountries:[],filteredCurrencies:[],allowBankingCollection:d,disabled:false},callbacks:{onCountryChange:function(e){var r,t;var a=(t=(r=e===null||e===void 0?void 0:e.detail)===null||r===void 0?void 0:r.item)===null||t===void 0?void 0:t.__value;if(a){n(a);i("")}},onCurrencyChange:function(e){var r,t;var n=(t=(r=e===null||e===void 0?void 0:e.detail)===null||r===void 0?void 0:r.item)===null||t===void 0?void 0:t.__value;if(n)i(n)},onCheckboxChange:function(e){p(e.target.checked)},setCountrySearch:function(){},setCurrencySearch:function(){},onSubmit:function(){if(!t||!o){u(e.missingFieldsErrorText);return}u("")},onClose:function(){},onInitialFocus:function(e){return e.preventDefault()}},text:{modalHeader:e.modalHeader,descriptionNewPartner:e.descriptionNewPartner,descriptionExistingPartner:e.descriptionExistingPartner,countryLabel:e.countryLabel,currencyLabel:e.currencyLabel,submitButtonLabel:e.submitButtonLabel,confirmButtonLabel:e.confirmButtonLabel,searchCountryPlaceholder:e.searchCountryPlaceholder,searchCurrencyPlaceholder:e.searchCurrencyPlaceholder,supportDescriptionExistingPartner:e.supportDescriptionExistingPartner,supportLink:e.supportLink,modalHeaderExistingPartner:e.modalHeaderExistingPartner}},e.demoData||f,{arrayMerge:function(e,r){return r}})}export{WidgetEmailVerification as sqm_email_verification,PartnerInfoModal as sqm_partner_info_modal};var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,templateObject_6;
|
|
1
|
+
var __makeTemplateObject=this&&this.__makeTemplateObject||function(e,r){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:r})}else{e.raw=r}return e};var __awaiter=this&&this.__awaiter||function(e,r,t,n){function a(e){return e instanceof t?e:new t((function(r){r(e)}))}return new(t||(t=Promise))((function(t,o){function i(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n["throw"](e))}catch(e){o(e)}}function l(e){e.done?t(e.value):a(e.value).then(i,s)}l((n=n.apply(e,r||[])).next())}))};var __generator=this&&this.__generator||function(e,r){var t={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,a,o,i;return i={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function s(e){return function(r){return l([e,r])}}function l(i){if(n)throw new TypeError("Generator is already executing.");while(t)try{if(n=1,a&&(o=i[0]&2?a["return"]:i[0]?a["throw"]||((o=a["return"])&&o.call(a),0):a.next)&&!(o=o.call(a,i[1])).done)return o;if(a=0,o)i=[i[0]&2,o.value];switch(i[0]){case 0:case 1:o=i;break;case 4:t.label++;return{value:i[1],done:false};case 5:t.label++;a=i[1];i=[0];continue;case 7:i=t.ops.pop();t.trys.pop();continue;default:if(!(o=t.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){t=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){t.label=i[1];break}if(i[0]===6&&t.label<o[1]){t.label=o[1];o=i;break}if(o&&t.label<o[2]){t.label=o[2];t.ops.push(i);break}if(o[2])t.ops.pop();t.trys.pop();continue}i=r.call(e,t)}catch(e){i=[6,e];a=0}finally{n=o=0}if(i[0]&5)throw i[1];return{value:i[0]?i[1]:void 0,done:true}}};var __spreadArrays=this&&this.__spreadArrays||function(){for(var e=0,r=0,t=arguments.length;r<t;r++)e+=arguments[r].length;for(var n=Array(e),a=0,r=0;r<t;r++)for(var o=arguments[r],i=0,s=o.length;i<s;i++,a++)n[a]=o[i];return n};import{h,r as registerInstance}from"./index-38ad4957.js";import{i as intl}from"./global-32d00a6e.js";import{k as useState,f as useEffect,n as h$1,u as useMemo}from"./dom-context-hooks.module-50442785.js";import{d as dist,q as Pn,w as wn,J,$ as $e,i as isDemo,p as En,L}from"./index.module-02cb914c.js";import{c as cjs}from"./cjs-bdfb4486.js";import{g as getProps}from"./utils-334c1e34.js";import{c as createStyleSheet}from"./JSS-67b5cff8.js";import{T as TextSpanView}from"./sqm-text-span-view-72f43dff.js";import{g as GET_FINANCE_NETWORK_SETTINGS}from"./data-8698cbc6.js";import{a as PartnerInfoModalContentView,P as PartnerInfoModalView}from"./sqm-partner-info-modal-view-34d4be5b.js";import{S as SHOW_CODE_NAMESPACE,a as VERIFICATION_EMAIL_NAMESPACE,P as PARTNER_CREATED_NAMESPACE}from"./keys-1054056a.js";import{T as TAX_FORM_UPDATED_EVENT_KEY}from"./eventKeys-f76b6a03.js";import{p as parseStates}from"./parseStates-ed75e224.js";import{u as useVerificationEmail}from"./useVerificationEmail-9f2c0bab.js";var UpsertUserEmailMutation=dist.gql(templateObject_1||(templateObject_1=__makeTemplateObject(["\n mutation upsertUser($userInput: UserInput!) {\n upsertUser(userInput: $userInput) {\n id\n accountId\n email\n }\n }\n"],["\n mutation upsertUser($userInput: UserInput!) {\n upsertUser(userInput: $userInput) {\n id\n accountId\n email\n }\n }\n"])));var UserLookupQuery=dist.gql(templateObject_2||(templateObject_2=__makeTemplateObject(["\n query user {\n viewer {\n ... on User {\n id\n accountId\n email\n impactConnection {\n user {\n id\n email\n }\n }\n }\n }\n }\n"],["\n query user {\n viewer {\n ... on User {\n id\n accountId\n email\n impactConnection {\n user {\n id\n email\n }\n }\n }\n }\n }\n"])));function useUpsertUserEmail(){var e=this;var r=J();var t=$e(UpsertUserEmailMutation),n=t[0],a=t[1],o=a.loading,i=a.data,s=a.errors;var l=function(t){return __awaiter(e,void 0,void 0,(function(){var e,a;return __generator(this,(function(o){switch(o.label){case 0:o.trys.push([0,2,,3]);return[4,n({userInput:{id:r.id,accountId:r.accountId,email:t}})];case 1:e=o.sent();if(e instanceof Error||!e)throw new Error;return[2,e];case 2:a=o.sent();console.error("Could not set email on user",a);return[2,undefined];case 3:return[2]}}))}))};return[l,{loading:o,data:i,errors:s}]}function useWidgetEmailVerification(e){var r=this;var t=Pn(SHOW_CODE_NAMESPACE),n=t[0],a=t[1];var o=Pn(VERIFICATION_EMAIL_NAMESPACE),i=o[0],s=o[1];var l=useState(false),u=l[0],c=l[1];var d=useState(false),p=d[0],m=d[1];var f=useState(false),v=f[0],b=f[1];var h=useVerificationEmail(),y=h.initialized,g=h.send,C=g[0],E=g[1],_=E.loading,w=E.errors;var x=useUpsertUserEmail()[0];var S=useState(true),k=S[0],T=S[1];var q=wn(UserLookupQuery,{}),I=q.data,P=q.loading;var N=/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;useEffect((function(){if(!(I===null||I===void 0?void 0:I.viewer))return;c(!!I.viewer.email)}),[I]);useEffect((function(){if(y)T(false)}),[y]);var O=function(e){return __awaiter(r,void 0,void 0,(function(){var r,t,n,o,i,l,u,c,d;return __generator(this,(function(p){switch(p.label){case 0:e.preventDefault();if(!(I===null||I===void 0?void 0:I.viewer))return[2];T(true);b(false);m(false);i=I.viewer.email;if(!!i)return[3,2];l=(r=e.detail)===null||r===void 0?void 0:r.formData;u=(n=(t=l===null||l===void 0?void 0:l.get("email"))===null||t===void 0?void 0:t.toString())!==null&&n!==void 0?n:"";if(!N.test(u)){m(true);T(false);return[2]}return[4,x(u)];case 1:c=p.sent();if(!c||!((o=c.upsertUser)===null||o===void 0?void 0:o.email)){m(true);T(false);return[2]}i=c.upsertUser.email;p.label=2;case 2:if(!y){T(false);return[2]}return[4,C()];case 3:d=p.sent();if(!d||!d.success){b(true)}else{s(i);a(true)}T(false);return[2]}}))}))};return{callbacks:{submitEmail:O},states:{loading:k,initialLoading:P&&!y,error:p,email:I===null||I===void 0?void 0:I.viewer.email,sendCodeError:v},text:e.getTextProps()}}var style={Wrapper:{display:"flex",flexDirection:"column",gap:"var(--sl-spacing-medium)",marginTop:"var(--sl-spacing-medium)"},InputsContainer:{display:"flex",gap:"var(--sl-spacing-medium)",position:"relative",flexDirection:"column"},ContinueButton:{width:"100%"},SkeletonOne:{width:"50%",height:"16px"},SkeletonTwo:{width:"30%",height:"34px"},SkeletonThree:{width:"15%",height:"24px"},ErrorInput:{"&::part(base)":{border:"var(--sqm-border-thickness) solid var(--sqm-danger-color-border)",borderRadius:"var(--sqm-input-border-radius)"},"&::part(help-text)":{color:"var(--sqm-danger-color-text)"}}};var vanillaStyle='\n:host {\n display: block;\n}\n:host([hidden]): {\n display: none;\n}\n\na {\n color: inherit;\n text-decoration: underline;\n cursor: pointer;\n}\n\n*::part(primarybutton-base),\nsl-button[type="primary"]::part(base) {\n font-family: var(--sqm-primary-font);\n width: 100%;\n background-color: var(--sqm-primary-button-background);\n color: var(--sqm-primary-button-color);\n border-color: var(--sqm-primary-button-color-border);\n border-radius: var(--sqm-primary-button-radius);\n}\n\n*::part(primarybutton-base):hover,\nsl-button[type="primary"]::part(base):hover{\n background-color: var(--sqm-primary-button-background-hover);\n border-color: var(--sqm-primary-button-border-color-hover);\n color: var(--sqm-primary-button-color-hover);\n}\n\n\n*::part(primarybutton-base):focus,\nsl-button[type="primary"]::part(base):focus {\n box-shadow: none;\n}\n\n*::part(secondarybutton-base),\nsl-button[type="secondary"]::part(base) {\nfont-family: var(--sqm-primary-font);\n background-color: var(--sqm-secondary-button-background);\n color: var(--sqm-secondary-button-color);\n border-color: var(--sqm-secondary-button-color-border);\n border-radius: var(--sqm-secondary-button-radius);\n}\n\n*::part(secondarybutton-base):hover,\nsl-button[type="secondary"]::part(base):hover {\n background-color: var(--sqm-secondary-button-background-hover);\n color: var(--sqm-secondary-button-color-hover);\n border-color: var(--sqm-secondary-button-border-color-hover);\n}\n\n*::part(input-label), *::part(select-label), *::part(textarea-label){\n font-family: var(--sqm-primary-font);\n font-size: var(--sqm-input-label-font-size, var(--sl-input-font-size-small));\n font-weight: var(--sl-font-weight-bold);\n color: var(--sqm-input-label-color, var(--sqm-text), black);\n}\n\n*::part(input-base), *::part(select-base), *::part(textarea-base){\n font-family: var(--sqm-primary-font);\n background-color: var(--sqm-input-background, #fff);\n border-radius: var(--sqm-input-border-radius, var(--sl-input-border-radius-large), 0.25rem);\n color: var(--sqm-input-color, white);\n border-width: var(--sqm-border-thickness, 1px);\n}\n\n*::part(input-base):hover, *::part(select-base):hover, *::part(textarea-base):hover{\n border-color: var(--sqm-border-color-hover);\n}\n\n*::part(input-base):focus, *::part(select-base):focus, *::part(textarea-base):focus{\n border-color: var(--sqm-border-color-focus);\n}\n\nsqm-name-fields::part(input-base) {\n font-family: var(--sqm-primary-font);\n background-color: var(--sqm-input-background, #fff);\n border-radius: var(--sqm-input-border-radius, var(--sl-input-border-radius-large), 0.25rem);\n color: var(--sqm-input-color, white);\n border-width: var(--sqm-border-thickness, 1px);\n}\n\nsl-input::part(base):focus,\nsl-select::part(form-control-wrapper):focus,\nsl-textarea::part(textarea-label):focus {\n border-color: var(--sqm-border-color-focus);\n}\n\n*::part(input-label):disabled, *::part(select-label):disabled, *::part(textarea-label):disabled{\n background: var(--sqm-input-disabled-background, #f5f5f5);\n color: var(--sqm-input-disabled-color, var(--sl-color-gray-600));\n}\n\n*::part(input):-webkit-autofill {\n box-shadow: 0 0 0 50px var(--sqm-input-background, #fff) inset !important;\n -webkit-text-fill-color: var(--sqm-input-color, white) !important;\n}\n\n*::part(input):-webkit-autofill:hover {\n box-shadow: 0 0 0 50px var(--sqm-input-background, #fff) inset !important;\n -webkit-text-fill-color: var(--sqm-input-color, white) !important;\n}\n\n*::part(input):-webkit-autofill:focus {\n box-shadow: 0 0 0 50px var(--sqm-input-background, #fff) inset !important;\n -webkit-text-fill-color: var(--sqm-input-color, white) !important;\n}\n\n*::part(input)::placeholder,\n*::part(select)::placeholder, \n*::part(textarea)::placeholder {\n font-family: var(--sqm-primary-font);\n color: var(--sqm-text-subdued);\n}\n\n*::part(input)::-webkit-input-placeholder,\n*::part(select)::-webkit-input-placeholder,\n*::part(textarea)::-webkit-input-placeholder {\n font-family: var(--sqm-primary-font);\n color: var(--sqm-text-subdued);\n}\n\n*::part(input)::-moz-placeholder,\n*::part(select)::-moz-placeholder,\n*::part(textarea)::-moz-placeholder {\n font-family: var(--sqm-primary-font);\n opacity: 1; /* Firefox adds an opacity to placeholders by default */\n color: var(--sqm-text-subdued);\n}\n\n*::part(input)::-ms-input-placeholder,\n*::part(select)::-ms-input-placeholder,\n*::part(textarea)::-ms-input-placeholder {\n font-family: var(--sqm-primary-font);\n color: var(--sqm-text-subdued);\n}\n\n\n';var sheet=createStyleSheet(style);var styleString=sheet.toString();function WidgetEmailVerificationView(e){var r=e.states,t=e.callbacks,n=e.text;var a=function(){return h("div",{class:sheet.classes.Wrapper},h("sqm-skeleton",{height:"16px",width:"50%"}),h("sqm-skeleton",{height:"16px",width:"50%"}),h("sqm-skeleton",{height:"16px",width:"50%"}),h("sqm-skeleton",{height:"34px",width:"30%"}),h("sqm-skeleton",{height:"24px",width:"15%"}),h("sl-button",{submit:true,class:sheet.classes.ContinueButton,loading:true,exportparts:"base: primarybutton-base",type:"primary"},n.sendCodeText))};return h("div",{part:"sqm-base"},h("style",{type:"text/css"},vanillaStyle,styleString),r.sendCodeError&&h("sqm-form-message",{type:"error"},h("p",{part:"alert-title"},n.sendCodeErrorHeader),intl.formatMessage({id:"sendCodeErrorDescription",defaultMessage:n.sendCodeErrorDescription},{supportLink:h("a",{target:"_blank",href:"mailto:advocate-support@impact.com"},n.supportLink)})),r.initialLoading?a():h("div",{class:sheet.classes.Wrapper},h(TextSpanView,{type:"p"},n.verifyEmailHeaderText),h("sl-form",{"onSl-submit":t.submitEmail},h("div",{class:sheet.classes.InputsContainer},h("sl-input",Object.assign({exportparts:"label: input-label, base: input-base",label:n.emailLabel,value:r.email||"",type:"email",id:"email",name:"email",disabled:!!r.email||r.loading},r.error?{class:sheet.classes.ErrorInput,helpText:n.emailValidationErrorText}:{})),h("sl-button",{submit:true,class:sheet.classes.ContinueButton,loading:r.loading,exportparts:"base: primarybutton-base",type:"primary"},n.sendCodeText)))))}var WidgetEmailVerification=function(){function e(e){registerInstance(this,e);this.verifyEmailHeaderText="Start by verifying your email. We’ll send you a code through our referral provider, impact.com.";this.sendCodeErrorHeader="There was an error sending your code";this.supportLink="support team";this.sendCodeErrorDescription="Please try again. If this problem continues, contact our program {supportLink}.";this.emailLabel="Email";this.sendCodeText="Send code";this.emailValidationErrorText="Please enter a valid email";h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.getTextProps=function(){return getProps(this)};e.prototype.render=function(){var e=isDemo()?useDemoWidgetEmailVerification(this):useWidgetEmailVerification(this);return h(WidgetEmailVerificationView,Object.assign({},e))};return e}();function useDemoWidgetEmailVerification(e){var r=this;var t=En(SHOW_CODE_NAMESPACE);return cjs({states:{error:false,initialLoading:false,loading:false,email:"test@example.com",sendCodeError:true},callbacks:{submitEmail:function(){return __awaiter(r,void 0,void 0,(function(){return __generator(this,(function(e){return[2,t(true)]}))}))}},text:e.getTextProps()},e.demoData||{},{arrayMerge:function(e,r){return r}})}var GET_USER_PARTNER_INFO=dist.gql(templateObject_3||(templateObject_3=__makeTemplateObject(["\n query getUserPartnerInfo {\n user: viewer {\n ... on User {\n id\n accountId\n firstName\n lastName\n email\n countryCode\n customFields\n impactConnection {\n connected\n connectionStatus\n publisher {\n id\n countryCode\n currency\n }\n }\n }\n }\n }\n"],["\n query getUserPartnerInfo {\n user: viewer {\n ... on User {\n id\n accountId\n firstName\n lastName\n email\n countryCode\n customFields\n impactConnection {\n connected\n connectionStatus\n publisher {\n id\n countryCode\n currency\n }\n }\n }\n }\n }\n"])));var GET_COUNTRIES=dist.gql(templateObject_4||(templateObject_4=__makeTemplateObject(["\n query getCountries {\n impactPayoutCountries(limit: 1000) {\n data {\n countryCode\n displayName\n }\n }\n }\n"],["\n query getCountries {\n impactPayoutCountries(limit: 1000) {\n data {\n countryCode\n displayName\n }\n }\n }\n"])));var GET_CURRENCIES=dist.gql(templateObject_5||(templateObject_5=__makeTemplateObject(["\n query currencies($locale: RSLocale) {\n currencies(limit: 300) {\n data {\n displayName(locale: $locale)\n currencyCode\n }\n }\n }\n"],["\n query currencies($locale: RSLocale) {\n currencies(limit: 300) {\n data {\n displayName(locale: $locale)\n currencyCode\n }\n }\n }\n"])));var START_IMPACT_CONNECTION=dist.gql(templateObject_6||(templateObject_6=__makeTemplateObject(["\n mutation startImpactConnection($vars: ImpactConnectionInput!) {\n startImpactConnection(impactConnectionInput: $vars) {\n success\n validationErrors {\n field\n message\n }\n user {\n id\n accountId\n impactConnection {\n connected\n publisher {\n brandedSignup\n requiredTaxDocumentType\n currentTaxDocument {\n type\n status\n }\n }\n }\n }\n }\n }\n"],["\n mutation startImpactConnection($vars: ImpactConnectionInput!) {\n startImpactConnection(impactConnectionInput: $vars) {\n success\n validationErrors {\n field\n message\n }\n user {\n id\n accountId\n impactConnection {\n connected\n publisher {\n brandedSignup\n requiredTaxDocumentType\n currentTaxDocument {\n type\n status\n }\n }\n }\n }\n }\n }\n"])));function usePartnerInfoModal(e){var r,t,n,a,o,i,s;var l=L();var u=En(PARTNER_CREATED_NAMESPACE);var c=wn(GET_USER_PARTNER_INFO,{}),d=c.data,p=c.loading,m=c.refetch;var f=d===null||d===void 0?void 0:d.user;var v=wn(GET_CURRENCIES,{variables:{locale:l}}),b=v.data,h=v.loading;var y=wn(GET_COUNTRIES,{}),g=y.data,C=y.loading;var E=useState(false),_=E[0],w=E[1];var x=useState((r=f===null||f===void 0?void 0:f.firstName)!==null&&r!==void 0?r:""),S=x[0],k=x[1];var T=useState((t=f===null||f===void 0?void 0:f.lastName)!==null&&t!==void 0?t:""),q=T[0],I=T[1];var P=useState(((a=(n=f===null||f===void 0?void 0:f.impactConnection)===null||n===void 0?void 0:n.publisher)===null||a===void 0?void 0:a.countryCode)||l.replace(/^.*_/,"")),N=P[0],O=P[1];var j=useState(((i=(o=f===null||f===void 0?void 0:f.impactConnection)===null||o===void 0?void 0:o.publisher)===null||i===void 0?void 0:i.currency)||""),A=j[0],D=j[1];var M=wn(GET_FINANCE_NETWORK_SETTINGS,{variables:{filter:N?{countryCode_eq:N}:{}}}).data;var U=$e(START_IMPACT_CONNECTION),R=U[0],V=U[1].loading;var $=useState(false),F=$[0],W=$[1];var H=useMemo((function(){var e;var r=(e=g===null||g===void 0?void 0:g.impactPayoutCountries)===null||e===void 0?void 0:e.data;if(!r)return[];return __spreadArrays(r).sort((function(e,r){if(e.countryCode==="US")return-1;if(r.countryCode==="US")return 1;return e.displayName.localeCompare(r.displayName)}))}),[g]);var B=!!((s=f===null||f===void 0?void 0:f.impactConnection)===null||s===void 0?void 0:s.publisher);var G=useMemo((function(){var e,r,t;if(B){return((e=b===null||b===void 0?void 0:b.currencies)===null||e===void 0?void 0:e.data)||[]}var n=(t=(r=M===null||M===void 0?void 0:M.impactFinanceNetworkSettings)===null||r===void 0?void 0:r.data)===null||t===void 0?void 0:t.reduce((function(e,r){var t,n;if(N&&r.countryCode!==N)return e;var a=(n=(t=b===null||b===void 0?void 0:b.currencies)===null||t===void 0?void 0:t.data)===null||n===void 0?void 0:n.find((function(e){return e.currencyCode===r.currency}));if(!a)return e;if(e.find((function(e){return e.currencyCode===r.currency})))return e;return __spreadArrays(e,[a])}),[]);return n||[]}),[M,b,N,B]);var z=useMemo((function(){return __spreadArrays(G).sort((function(e,r){return e.displayName.localeCompare(r.displayName)}))}),[G]);var K=useState(""),J=K[0],Q=K[1];var X=useState(""),Y=X[0],Z=X[1];var ee=useState(H||[]),re=ee[0],te=ee[1];var ne=useState(z||[]),ae=ne[0],oe=ne[1];var ie=useState(""),se=ie[0],le=ie[1];var ue=useState(false),ce=ue[0],de=ue[1];var pe=useState(false),me=pe[0],fe=pe[1];useEffect((function(){var e;if(me||!f)return;w(!f.firstName||!f.lastName);k(f.firstName||"");I(f.lastName||"");var r=(e=f.impactConnection)===null||e===void 0?void 0:e.publisher;if(r){O(r.countryCode);D(r.currency)}fe(true)}),[f,me]);useEffect((function(){if(!(H===null||H===void 0?void 0:H.length))return;if(J.trim()===""){te(H||[])}else{te(H.filter((function(e){return e.displayName.toLowerCase().includes(J.toLowerCase())}))||[])}}),[J,H]);useEffect((function(){if(!(z===null||z===void 0?void 0:z.length))return;if(Y.trim()===""){oe(z||[])}else{oe(z.filter((function(e){return e.currencyCode.toLowerCase().includes(Y.toLowerCase())}))||[])}}),[Y,z]);var ve=f===null||f===void 0?void 0:f.impactConnection;function be(e){var r=e.target.value;k(r)}function he(e){var r=e.target.value;I(r)}function ye(e){var r,t;var n=(t=(r=e.detail)===null||r===void 0?void 0:r.item)===null||t===void 0?void 0:t.__value;if(!n)return;O(n);D("");le("")}function ge(e){var r,t;var n=(t=(r=e.detail)===null||r===void 0?void 0:r.item)===null||t===void 0?void 0:t.__value;if(!n)return;D(n);le("")}function Ce(e){var r=e.target.checked;W(r)}function Ee(){return __awaiter(this,void 0,void 0,(function(){var r,t,n,a,o,i,s;return __generator(this,(function(l){switch(l.label){case 0:if(!F||!N||!A||_&&(!S||!q)){le(e.missingFieldsErrorText);return[2]}le("");if(!f){le(e.networkErrorText);return[2]}l.label=1;case 1:l.trys.push([1,4,,5]);n={user:{id:f.id,accountId:f.accountId},firstName:S,lastName:q,countryCode:N,currency:A};return[4,R({vars:n})];case 2:a=l.sent();if(!a||((r=a)===null||r===void 0?void 0:r.message)){le(e.networkErrorText);return[2]}o=a.startImpactConnection;if(!(o===null||o===void 0?void 0:o.success)){i=(t=o===null||o===void 0?void 0:o.validationErrors)===null||t===void 0?void 0:t.map((function(e){return e.message})).join(". ");le(i||e.networkErrorText);console.error("Failed to create Impact connection:",o===null||o===void 0?void 0:o.validationErrors);return[2]}window.dispatchEvent(new Event(TAX_FORM_UPDATED_EVENT_KEY));return[4,m()];case 3:l.sent();u===null||u===void 0?void 0:u(true);de(true);return[3,5];case 4:s=l.sent();console.error("Partner creation error:",s);le(e.networkErrorText);return[3,5];case 5:return[2]}}))}))}var _e=!ce&&!p&&(ve===null||ve===void 0?void 0:ve.connectionStatus)==="NOT_STARTED";return{states:{open:_e,loading:p||C||h,submitting:V,shouldDisplayNameFields:_,isExistingPartner:B,firstName:S,lastName:q,countryCode:N,currency:A,error:se,success:ce,filteredCountries:re||[],filteredCurrencies:ae||[],allowBankingCollection:F,disabled:p||V},callbacks:{onFirstNameChange:be,onLastNameChange:he,onCountryChange:ye,onCurrencyChange:ge,onCheckboxChange:Ce,setCurrencySearch:Z,setCountrySearch:Q,onSubmit:Ee,onClose:function(){return de(true)}},text:e.getTextProps()}}var PartnerInfoModal=function(){function e(e){registerInstance(this,e);this.modalHeader="Let's get you ready for rewards";this.modalHeaderExistingPartner="We found an existing account";this.descriptionNewPartner="Confirm your country and currency now to get your future rewards faster.";this.descriptionExistingPartner="We found an account with this email on our referral program provider, impact.com. Please confirm your country and currency now to get your future rewards faster.";this.supportDescriptionExistingPartner="If this is a mistake, please contact {supportLink} or sign up for this referral program with a different email.";this.supportLink="Support";this.allowBankingCollection="I have read the {termsAndConditionsLink} and allow impact.com to collect my tax and banking information.";this.termsAndConditionsLabel="terms and conditions";this.termsAndConditionsLink="https://terms.advocate.impact.com/PayoutTermsAndConditions.html";this.countryLabel="Country";this.currencyLabel="Currency";this.submitButtonLabel="Submit";this.confirmButtonLabel="Confirm";this.searchCountryPlaceholder="Search for a country";this.searchCurrencyPlaceholder="Search for a currency";this.networkErrorText="An error occurred. Please try again.";this.missingFieldsErrorText="Please fill out all fields.";this.inModal=false;this.stateController='{"sqm-partner-info-modal":{"states":{"open":false}}}';h$1(this)}e.prototype.disconnectedCallback=function(){};e.prototype.getTextProps=function(){return getProps(this)};e.prototype.render=function(){var e=isDemo()?useDemoPartnerInfoModal(this):usePartnerInfoModal(this);if(this.inModal){return h(PartnerInfoModalContentView,Object.assign({},e))}return h(PartnerInfoModalView,Object.assign({},e))};return e}();function useDemoPartnerInfoModal(e){var r=useState("US"),t=r[0],n=r[1];var a=useState(""),o=a[0],i=a[1];var s=useState(""),l=s[0],u=s[1];var c=useState(false),d=c[0],p=c[1];var m=parseStates(e.stateController);var f=(m===null||m===void 0?void 0:m["sqm-partner-info-modal"])||m||{};return cjs({states:{open:false,loading:false,submitting:false,isExistingPartner:false,countryCode:t,currency:o,error:l,success:false,filteredCountries:[],filteredCurrencies:[],allowBankingCollection:d,disabled:false},callbacks:{onCountryChange:function(e){var r,t;var a=(t=(r=e===null||e===void 0?void 0:e.detail)===null||r===void 0?void 0:r.item)===null||t===void 0?void 0:t.__value;if(a){n(a);i("")}},onCurrencyChange:function(e){var r,t;var n=(t=(r=e===null||e===void 0?void 0:e.detail)===null||r===void 0?void 0:r.item)===null||t===void 0?void 0:t.__value;if(n)i(n)},onCheckboxChange:function(e){p(e.target.checked)},setCountrySearch:function(){},setCurrencySearch:function(){},onSubmit:function(){if(!t||!o){u(e.missingFieldsErrorText);return}u("")},onClose:function(){},onInitialFocus:function(e){return e.preventDefault()}},text:{modalHeader:e.modalHeader,descriptionNewPartner:e.descriptionNewPartner,descriptionExistingPartner:e.descriptionExistingPartner,countryLabel:e.countryLabel,currencyLabel:e.currencyLabel,submitButtonLabel:e.submitButtonLabel,confirmButtonLabel:e.confirmButtonLabel,searchCountryPlaceholder:e.searchCountryPlaceholder,searchCurrencyPlaceholder:e.searchCurrencyPlaceholder,supportDescriptionExistingPartner:e.supportDescriptionExistingPartner,supportLink:e.supportLink,modalHeaderExistingPartner:e.modalHeaderExistingPartner}},e.demoData||f,{arrayMerge:function(e,r){return r}})}export{WidgetEmailVerification as sqm_email_verification,PartnerInfoModal as sqm_partner_info_modal};var templateObject_1,templateObject_2,templateObject_3,templateObject_4,templateObject_5,templateObject_6;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{h,F as Fragment}from"./index-38ad4957.js";import{i as intl}from"./global-32d00a6e.js";import{c as createStyleSheet}from"./JSS-67b5cff8.js";var style={Dialog:{"&::part(panel)":{maxWidth:"480px"},"&::part(body)":{padding:"0 var(--sl-spacing-x-large)",fontSize:"var(--sl-font-size-small)",overflow:"visible"},"&::part(overlay)":{background:"var(--sl-overlay-background-color)"}},DialogTitle:{fontSize:"var(--sl-font-size-x-large)",fontWeight:"600",padding:"var(--sl-spacing-large) 0 0 0",margin:"0"},FormFields:{display:"flex",flexDirection:"column",gap:"var(--sl-spacing-medium)",marginTop:"var(--sl-spacing-large)"},NameInput:{"&::part(label)":{fontWeight:"var(--sl-font-weight-normal)",fontSize:"var(--sl-input-label-font-size-medium)"}},ErrorMessage:{marginTop:"var(--sl-spacing-x-small)"},SearchInput:{"&::part(base)":{border:"none",borderBottom:"1px solid var(--sl-color-neutral-300)",borderRadius:"0"}},SelectMenu:{maxHeight:"300px"},DescriptionContainer:{display:"flex",flexDirection:"column",gap:"var(--sl-spacing-medium)",margin:"0","& > p":{margin:"0"}},CheckboxWrapper:{display:"flex",justifyContent:"flex-start",flexDirection:"column"},Checkbox:{"&::part(label)":{fontSize:"var(--sl-font-size-small)"}},SubmitButton:{width:"100%",marginTop:"var(--sl-spacing-large)","&::part(base)":{color:"var(--sqm-primary-button-color)",backgroundColor:"var(--sqm-primary-button-background)",border:"var(--sqm-primary-button-color-border)",borderRadius:"var(--sqm-primary-button-radius)"}}};function PartnerInfoModalContentView(e){var a,t;var r=e.states,n=e.callbacks,l=e.text;var s=createStyleSheet(style);var i=s.toString();var o=intl.formatMessage({id:"supportDescriptionExistingPartner",defaultMessage:l.supportDescriptionExistingPartner},{supportLink:h("a",{target:"_blank",href:"mailto:advocate-support@impact.com"},l.supportLink)});var u=r.isExistingPartner?h("span",{class:s.classes.DescriptionContainer},h("p",null,l.descriptionExistingPartner),h("p",null,o)):h("p",{class:s.classes.DescriptionContainer},l.descriptionNewPartner);var c=r.isExistingPartner?l.confirmButtonLabel:l.submitButtonLabel;var p=intl.formatMessage({id:"bankingCollectionText",defaultMessage:l.allowBankingCollection},{termsAndConditionsLink:h("a",{href:l.termsAndConditionsLink,target:"_blank"},l.termsAndConditionsLabel)});return h("div",null,h("style",{type:"text/css"},i),h("div",{class:s.classes.FormFields},u,r.shouldDisplayNameFields&&h(Fragment,null,h("sl-input",{exportparts:"label: input-label, base: input-base",class:s.classes.NameInput,label:"First Name",value:r.firstName,"onSl-input":n.onFirstNameChange,disabled:r.submitting,required:true}),h("sl-input",{exportparts:"label: input-label, base: input-base",class:s.classes.NameInput,label:"Last Name",value:r.lastName,"onSl-input":n.onLastNameChange,disabled:r.submitting,required:true})),h("sl-select",{exportparts:"label: input-label, base: input-base, menu: select-menu",label:l.countryLabel,value:r.countryCode,disabled:r.submitting||!!r.countryCode&&r.isExistingPartner,required:true,hoist:true,"onSl-select":n.onCountryChange},h("sl-input",{class:s.classes.SearchInput,placeholder:l.searchCountryPlaceholder,onKeyDown:function(e){return e.stopPropagation()},"onSl-input":function(e){var a;n.setCountrySearch((a=e.target)===null||a===void 0?void 0:a.value)}}),h("div",{class:s.classes.SelectMenu},(a=r.filteredCountries)===null||a===void 0?void 0:a.map((function(e){return h("sl-menu-item",{value:e.countryCode},e.displayName)})))),h("sl-select",{exportparts:"label: input-label, base: input-base",label:l.currencyLabel,value:r.currency,disabled:r.submitting||!!r.currency&&r.isExistingPartner,required:true,hoist:true,"onSl-select":n.onCurrencyChange},h("sl-input",{class:s.classes.SearchInput,placeholder:l.searchCurrencyPlaceholder,onKeyDown:function(e){return e.stopPropagation()},"onSl-input":function(e){var a;return n.setCurrencySearch((a=e.target)===null||a===void 0?void 0:a.value)}}),h("div",{class:s.classes.SelectMenu},(t=r.filteredCurrencies)===null||t===void 0?void 0:t.map((function(e){return h("sl-menu-item",{value:e.currencyCode},e.currencyCode," - ",e.displayName)})))),h("div",{class:s.classes.CheckboxWrapper},h("sl-checkbox",{class:s.classes.Checkbox,checked:r.allowBankingCollection===true,"onSl-change":n.onCheckboxChange,disabled:r.submitting,required:true,value:r.allowBankingCollection,id:"allowBankingCollection",name:"/allowBankingCollection"},p))),r.error&&h("div",{class:s.classes.ErrorMessage},h("sqm-form-message",{class:s.classes.ErrorMessage,type:"error"},h("p",{part:"alert-description"},r.error))),h("sl-button",{slot:"footer",type:"primary",loading:r.submitting,disabled:r.submitting||!r.countryCode||!r.currency||!r.allowBankingCollection||r.shouldDisplayNameFields&&(!r.firstName||!r.lastName),onClick:n.onSubmit,class:s.classes.SubmitButton,exportparts:"base: primarybutton-base"},c))}function PartnerInfoModalView(e){var a=e.states,t=e.text,r=e.callbacks;var n=createStyleSheet(style);var l=n.toString();if(!a.open)return h("div",null);var s=a.isExistingPartner?t.modalHeaderExistingPartner:t.modalHeader;return h("div",null,h("style",{type:"text/css"}," ",l),h("sl-dialog",{class:n.classes.Dialog,open:a.open,noHeader:true,label:s,"onSl-request-close":function(e){e.preventDefault()},"onSl-hide":function(e){var a;if(((a=e.target)===null||a===void 0?void 0:a.tagName)==="SL-DIALOG"){e.preventDefault()}},"onSl-initial-focus":r.onInitialFocus},h("h2",{class:n.classes.DialogTitle},s),h(PartnerInfoModalContentView,Object.assign({},e))))}export{PartnerInfoModalView as P,PartnerInfoModalContentView as a};
|