@saasquatch/mint-components 2.3.1-6 → 2.3.1-8

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.
Files changed (23) hide show
  1. package/dist/cjs/sqm-email-verification_2.cjs.entry.js +7 -13
  2. package/dist/cjs/{sqm-partner-info-modal-view-431100ad.js → sqm-partner-info-modal-view-a12aa96d.js} +1 -1
  3. package/dist/cjs/sqm-stencilbook.cjs.entry.js +17 -6
  4. package/dist/collection/components/sqm-partner-info-modal/PartnerInfoModal.stories.js +10 -0
  5. package/dist/collection/components/sqm-partner-info-modal/sqm-partner-info-modal-view.js +1 -1
  6. package/dist/collection/components/sqm-partner-info-modal/usePartnerInfoModal.js +6 -12
  7. package/dist/esm/sqm-email-verification_2.entry.js +7 -13
  8. package/dist/esm/{sqm-partner-info-modal-view-34d4be5b.js → sqm-partner-info-modal-view-b677b410.js} +1 -1
  9. package/dist/esm/sqm-stencilbook.entry.js +17 -6
  10. package/dist/esm-es5/sqm-email-verification_2.entry.js +1 -1
  11. package/dist/esm-es5/{sqm-partner-info-modal-view-34d4be5b.js → sqm-partner-info-modal-view-b677b410.js} +1 -1
  12. package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
  13. package/dist/mint-components/mint-components.esm.js +1 -1
  14. package/dist/mint-components/{p-5e588a88.entry.js → p-01c51856.entry.js} +2 -2
  15. package/dist/mint-components/{p-3681465f.system.entry.js → p-0d46892a.system.entry.js} +1 -1
  16. package/dist/mint-components/{p-41c3c51f.entry.js → p-20b9eeba.entry.js} +2 -2
  17. package/dist/mint-components/{p-8f5de9cd.system.entry.js → p-7dc16c73.system.entry.js} +1 -1
  18. package/dist/mint-components/p-bfb00685.system.js +1 -1
  19. package/dist/mint-components/{p-c36fedea.js → p-d4a3d264.js} +1 -1
  20. package/dist/mint-components/{p-ad90628d.system.js → p-e2c919b4.system.js} +1 -1
  21. package/dist/types/components/sqm-partner-info-modal/PartnerInfoModal.stories.d.ts +1 -0
  22. package/docs/docs.docx +0 -0
  23. package/package.json +1 -1
@@ -11,7 +11,7 @@ const utils = require('./utils-6847bc06.js');
11
11
  const JSS = require('./JSS-8503a151.js');
12
12
  const sqmTextSpanView = require('./sqm-text-span-view-b9e10f5d.js');
13
13
  const data = require('./data-89ac73dd.js');
14
- const sqmPartnerInfoModalView = require('./sqm-partner-info-modal-view-431100ad.js');
14
+ const sqmPartnerInfoModalView = require('./sqm-partner-info-modal-view-a12aa96d.js');
15
15
  const keys = require('./keys-5a2c9ed2.js');
16
16
  const eventKeys = require('./eventKeys-7af4df4d.js');
17
17
  const parseStates = require('./parseStates-d1effc19.js');
@@ -506,11 +506,6 @@ function usePartnerInfoModal(props) {
506
506
  const { data: currenciesData, loading: currenciesLoading } = index_module.wn(GET_CURRENCIES, { variables: { locale } });
507
507
  const { data: countriesData, loading: countriesLoading } = index_module.wn(GET_COUNTRIES, {});
508
508
  const [shouldDisplayNameFields, setShouldDisplayNameFields] = domContextHooks_module.useState(null);
509
- domContextHooks_module.useEffect(() => {
510
- if (shouldDisplayNameFields === null && user) {
511
- setShouldDisplayNameFields(!user.firstName || !user.lastName);
512
- }
513
- }, [user, shouldDisplayNameFields]);
514
509
  const [firstName, setFirstName] = domContextHooks_module.useState((user === null || user === void 0 ? void 0 : user.firstName) || "");
515
510
  const [lastName, setLastName] = domContextHooks_module.useState((user === null || user === void 0 ? void 0 : user.lastName) || "");
516
511
  // No pre-filled country, use locale to determine countryCode instead
@@ -561,20 +556,19 @@ function usePartnerInfoModal(props) {
561
556
  const [filteredCurrencies, setFilteredCurrencies] = domContextHooks_module.useState(currencies || []);
562
557
  const [error, setError] = domContextHooks_module.useState("");
563
558
  const [success, setSuccess] = domContextHooks_module.useState(false);
564
- const [initialized, setInitialized] = domContextHooks_module.useState(false);
565
559
  domContextHooks_module.useEffect(() => {
566
560
  var _a;
567
- if (initialized || !userData)
561
+ if (shouldDisplayNameFields !== null || !user)
568
562
  return;
569
- setFirstName((user === null || user === void 0 ? void 0 : user.firstName) || "");
570
- setLastName((user === null || user === void 0 ? void 0 : user.lastName) || "");
571
- const publisher = (_a = user === null || user === void 0 ? void 0 : user.impactConnection) === null || _a === void 0 ? void 0 : _a.publisher;
563
+ setShouldDisplayNameFields(!user.firstName || !user.lastName);
564
+ setFirstName(user.firstName || "");
565
+ setLastName(user.lastName || "");
566
+ const publisher = (_a = user.impactConnection) === null || _a === void 0 ? void 0 : _a.publisher;
572
567
  if (publisher) {
573
568
  setCountryCode(publisher.countryCode);
574
569
  setCurrency(publisher.currency);
575
570
  }
576
- setInitialized(true);
577
- }, [userData, user, initialized]);
571
+ }, [user, shouldDisplayNameFields]);
578
572
  domContextHooks_module.useEffect(() => {
579
573
  if (!(countries === null || countries === void 0 ? void 0 : countries.length))
580
574
  return;
@@ -156,7 +156,7 @@ function PartnerInfoModalView(props) {
156
156
  }
157
157
  }, "onSl-initial-focus": callbacks.onInitialFocus },
158
158
  index.h("h2", { class: sheet.classes.DialogTitle }, modalHeader),
159
- index.h(PartnerInfoModalContentView, Object.assign({}, props)))));
159
+ states.loading ? (index.h("sl-spinner", { style: { fontSize: "50px", margin: "40px" } })) : (index.h(PartnerInfoModalContentView, Object.assign({}, props))))));
160
160
  }
161
161
 
162
162
  exports.PartnerInfoModalContentView = PartnerInfoModalContentView;
@@ -40,7 +40,7 @@ const sqmPortalContainerView = require('./sqm-portal-container-view-757f921b.js'
40
40
  const sqmUserInfoFormView = require('./sqm-user-info-form-view-c5f9b79b.js');
41
41
  const sqmLeadInputFieldView = require('./sqm-lead-input-field-view-88de1b78.js');
42
42
  require('./data-89ac73dd.js');
43
- const sqmPartnerInfoModalView = require('./sqm-partner-info-modal-view-431100ad.js');
43
+ const sqmPartnerInfoModalView = require('./sqm-partner-info-modal-view-a12aa96d.js');
44
44
 
45
45
  /**
46
46
  * lodash (Custom Build) <https://lodash.com/>
@@ -19467,6 +19467,16 @@ const PartnerHasFirstNameOnly = () => {
19467
19467
  };
19468
19468
  return index.h(sqmPartnerInfoModalView.PartnerInfoModalView, Object.assign({}, props));
19469
19469
  };
19470
+ const Loading$i = () => {
19471
+ const props = {
19472
+ ...defaultProps$y,
19473
+ states: {
19474
+ ...defaultProps$y.states,
19475
+ loading: true,
19476
+ },
19477
+ };
19478
+ return index.h(sqmPartnerInfoModalView.PartnerInfoModalView, Object.assign({}, props));
19479
+ };
19470
19480
 
19471
19481
  const PartnerInfoModal = /*#__PURE__*/Object.freeze({
19472
19482
  __proto__: null,
@@ -19483,7 +19493,8 @@ const PartnerInfoModal = /*#__PURE__*/Object.freeze({
19483
19493
  SQMComponentExistingPartner: SQMComponentExistingPartner,
19484
19494
  SQMComponentNewPartner: SQMComponentNewPartner,
19485
19495
  PartnerHasFirstAndLastName: PartnerHasFirstAndLastName,
19486
- PartnerHasFirstNameOnly: PartnerHasFirstNameOnly
19496
+ PartnerHasFirstNameOnly: PartnerHasFirstNameOnly,
19497
+ Loading: Loading$i
19487
19498
  });
19488
19499
 
19489
19500
  const WidgetVerification_stories = {
@@ -19498,7 +19509,7 @@ const Step2Code = () => (index.h("sqm-widget-verification", { stateController: J
19498
19509
  const Step3PartnerModal = () => (index.h("sqm-widget-verification", { stateController: JSON.stringify({
19499
19510
  "sqm-widget-verification": { showPartnerModal: true },
19500
19511
  }) }));
19501
- const Loading$i = () => (index.h("sqm-widget-verification", { stateController: JSON.stringify({
19512
+ const Loading$j = () => (index.h("sqm-widget-verification", { stateController: JSON.stringify({
19502
19513
  "sqm-widget-verification": { loading: true },
19503
19514
  }) }));
19504
19515
 
@@ -19508,7 +19519,7 @@ const WidgetVerification = /*#__PURE__*/Object.freeze({
19508
19519
  Step1Email: Step1Email,
19509
19520
  Step2Code: Step2Code,
19510
19521
  Step3PartnerModal: Step3PartnerModal,
19511
- Loading: Loading$i
19522
+ Loading: Loading$j
19512
19523
  });
19513
19524
 
19514
19525
  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";
@@ -19539,7 +19550,7 @@ const InvalidValue = () => {
19539
19550
  } }),
19540
19551
  index.h("div", { style: { background: "#e0e0e0", padding: "8px" } }, "Below")));
19541
19552
  };
19542
- const Loading$j = () => {
19553
+ const Loading$k = () => {
19543
19554
  return (index.h("sqm-user-attribute", { demoData: {
19544
19555
  loading: true,
19545
19556
  value: "impact.com",
@@ -19560,7 +19571,7 @@ const UserAttribute = /*#__PURE__*/Object.freeze({
19560
19571
  'default': UserAttribute_stories,
19561
19572
  Default: Default$x,
19562
19573
  InvalidValue: InvalidValue,
19563
- Loading: Loading$j,
19574
+ Loading: Loading$k,
19564
19575
  WithCustomStyles: WithCustomStyles
19565
19576
  });
19566
19577
 
@@ -197,3 +197,13 @@ export const PartnerHasFirstNameOnly = () => {
197
197
  };
198
198
  return h(PartnerInfoModalView, Object.assign({}, props));
199
199
  };
200
+ export const Loading = () => {
201
+ const props = {
202
+ ...defaultProps,
203
+ states: {
204
+ ...defaultProps.states,
205
+ loading: true,
206
+ },
207
+ };
208
+ return h(PartnerInfoModalView, Object.assign({}, props));
209
+ };
@@ -153,5 +153,5 @@ export function PartnerInfoModalView(props) {
153
153
  }
154
154
  }, "onSl-initial-focus": callbacks.onInitialFocus },
155
155
  h("h2", { class: sheet.classes.DialogTitle }, modalHeader),
156
- h(PartnerInfoModalContentView, Object.assign({}, props)))));
156
+ states.loading ? (h("sl-spinner", { style: { fontSize: "50px", margin: "40px" } })) : (h(PartnerInfoModalContentView, Object.assign({}, props))))));
157
157
  }
@@ -83,11 +83,6 @@ export function usePartnerInfoModal(props) {
83
83
  const { data: currenciesData, loading: currenciesLoading } = useQuery(GET_CURRENCIES, { variables: { locale } });
84
84
  const { data: countriesData, loading: countriesLoading } = useQuery(GET_COUNTRIES, {});
85
85
  const [shouldDisplayNameFields, setShouldDisplayNameFields] = useState(null);
86
- useEffect(() => {
87
- if (shouldDisplayNameFields === null && user) {
88
- setShouldDisplayNameFields(!user.firstName || !user.lastName);
89
- }
90
- }, [user, shouldDisplayNameFields]);
91
86
  const [firstName, setFirstName] = useState((user === null || user === void 0 ? void 0 : user.firstName) || "");
92
87
  const [lastName, setLastName] = useState((user === null || user === void 0 ? void 0 : user.lastName) || "");
93
88
  // No pre-filled country, use locale to determine countryCode instead
@@ -138,20 +133,19 @@ export function usePartnerInfoModal(props) {
138
133
  const [filteredCurrencies, setFilteredCurrencies] = useState(currencies || []);
139
134
  const [error, setError] = useState("");
140
135
  const [success, setSuccess] = useState(false);
141
- const [initialized, setInitialized] = useState(false);
142
136
  useEffect(() => {
143
137
  var _a;
144
- if (initialized || !userData)
138
+ if (shouldDisplayNameFields !== null || !user)
145
139
  return;
146
- setFirstName((user === null || user === void 0 ? void 0 : user.firstName) || "");
147
- setLastName((user === null || user === void 0 ? void 0 : user.lastName) || "");
148
- const publisher = (_a = user === null || user === void 0 ? void 0 : user.impactConnection) === null || _a === void 0 ? void 0 : _a.publisher;
140
+ setShouldDisplayNameFields(!user.firstName || !user.lastName);
141
+ setFirstName(user.firstName || "");
142
+ setLastName(user.lastName || "");
143
+ const publisher = (_a = user.impactConnection) === null || _a === void 0 ? void 0 : _a.publisher;
149
144
  if (publisher) {
150
145
  setCountryCode(publisher.countryCode);
151
146
  setCurrency(publisher.currency);
152
147
  }
153
- setInitialized(true);
154
- }, [userData, user, initialized]);
148
+ }, [user, shouldDisplayNameFields]);
155
149
  useEffect(() => {
156
150
  if (!(countries === null || countries === void 0 ? void 0 : countries.length))
157
151
  return;
@@ -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-34d4be5b.js';
10
+ import { a as PartnerInfoModalContentView, P as PartnerInfoModalView } from './sqm-partner-info-modal-view-b677b410.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';
@@ -502,11 +502,6 @@ function usePartnerInfoModal(props) {
502
502
  const { data: currenciesData, loading: currenciesLoading } = wn(GET_CURRENCIES, { variables: { locale } });
503
503
  const { data: countriesData, loading: countriesLoading } = wn(GET_COUNTRIES, {});
504
504
  const [shouldDisplayNameFields, setShouldDisplayNameFields] = useState(null);
505
- useEffect(() => {
506
- if (shouldDisplayNameFields === null && user) {
507
- setShouldDisplayNameFields(!user.firstName || !user.lastName);
508
- }
509
- }, [user, shouldDisplayNameFields]);
510
505
  const [firstName, setFirstName] = useState((user === null || user === void 0 ? void 0 : user.firstName) || "");
511
506
  const [lastName, setLastName] = useState((user === null || user === void 0 ? void 0 : user.lastName) || "");
512
507
  // No pre-filled country, use locale to determine countryCode instead
@@ -557,20 +552,19 @@ function usePartnerInfoModal(props) {
557
552
  const [filteredCurrencies, setFilteredCurrencies] = useState(currencies || []);
558
553
  const [error, setError] = useState("");
559
554
  const [success, setSuccess] = useState(false);
560
- const [initialized, setInitialized] = useState(false);
561
555
  useEffect(() => {
562
556
  var _a;
563
- if (initialized || !userData)
557
+ if (shouldDisplayNameFields !== null || !user)
564
558
  return;
565
- setFirstName((user === null || user === void 0 ? void 0 : user.firstName) || "");
566
- setLastName((user === null || user === void 0 ? void 0 : user.lastName) || "");
567
- const publisher = (_a = user === null || user === void 0 ? void 0 : user.impactConnection) === null || _a === void 0 ? void 0 : _a.publisher;
559
+ setShouldDisplayNameFields(!user.firstName || !user.lastName);
560
+ setFirstName(user.firstName || "");
561
+ setLastName(user.lastName || "");
562
+ const publisher = (_a = user.impactConnection) === null || _a === void 0 ? void 0 : _a.publisher;
568
563
  if (publisher) {
569
564
  setCountryCode(publisher.countryCode);
570
565
  setCurrency(publisher.currency);
571
566
  }
572
- setInitialized(true);
573
- }, [userData, user, initialized]);
567
+ }, [user, shouldDisplayNameFields]);
574
568
  useEffect(() => {
575
569
  if (!(countries === null || countries === void 0 ? void 0 : countries.length))
576
570
  return;
@@ -154,7 +154,7 @@ function PartnerInfoModalView(props) {
154
154
  }
155
155
  }, "onSl-initial-focus": callbacks.onInitialFocus },
156
156
  h("h2", { class: sheet.classes.DialogTitle }, modalHeader),
157
- h(PartnerInfoModalContentView, Object.assign({}, props)))));
157
+ states.loading ? (h("sl-spinner", { style: { fontSize: "50px", margin: "40px" } })) : (h(PartnerInfoModalContentView, Object.assign({}, props))))));
158
158
  }
159
159
 
160
160
  export { PartnerInfoModalView as P, PartnerInfoModalContentView as a };
@@ -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-34d4be5b.js';
39
+ import { P as PartnerInfoModalView } from './sqm-partner-info-modal-view-b677b410.js';
40
40
 
41
41
  /**
42
42
  * lodash (Custom Build) <https://lodash.com/>
@@ -19463,6 +19463,16 @@ const PartnerHasFirstNameOnly = () => {
19463
19463
  };
19464
19464
  return h(PartnerInfoModalView, Object.assign({}, props));
19465
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
+ };
19466
19476
 
19467
19477
  const PartnerInfoModal = /*#__PURE__*/Object.freeze({
19468
19478
  __proto__: null,
@@ -19479,7 +19489,8 @@ const PartnerInfoModal = /*#__PURE__*/Object.freeze({
19479
19489
  SQMComponentExistingPartner: SQMComponentExistingPartner,
19480
19490
  SQMComponentNewPartner: SQMComponentNewPartner,
19481
19491
  PartnerHasFirstAndLastName: PartnerHasFirstAndLastName,
19482
- PartnerHasFirstNameOnly: PartnerHasFirstNameOnly
19492
+ PartnerHasFirstNameOnly: PartnerHasFirstNameOnly,
19493
+ Loading: Loading$i
19483
19494
  });
19484
19495
 
19485
19496
  const WidgetVerification_stories = {
@@ -19494,7 +19505,7 @@ const Step2Code = () => (h("sqm-widget-verification", { stateController: JSON.st
19494
19505
  const Step3PartnerModal = () => (h("sqm-widget-verification", { stateController: JSON.stringify({
19495
19506
  "sqm-widget-verification": { showPartnerModal: true },
19496
19507
  }) }));
19497
- const Loading$i = () => (h("sqm-widget-verification", { stateController: JSON.stringify({
19508
+ const Loading$j = () => (h("sqm-widget-verification", { stateController: JSON.stringify({
19498
19509
  "sqm-widget-verification": { loading: true },
19499
19510
  }) }));
19500
19511
 
@@ -19504,7 +19515,7 @@ const WidgetVerification = /*#__PURE__*/Object.freeze({
19504
19515
  Step1Email: Step1Email,
19505
19516
  Step2Code: Step2Code,
19506
19517
  Step3PartnerModal: Step3PartnerModal,
19507
- Loading: Loading$i
19518
+ Loading: Loading$j
19508
19519
  });
19509
19520
 
19510
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";
@@ -19535,7 +19546,7 @@ const InvalidValue = () => {
19535
19546
  } }),
19536
19547
  h("div", { style: { background: "#e0e0e0", padding: "8px" } }, "Below")));
19537
19548
  };
19538
- const Loading$j = () => {
19549
+ const Loading$k = () => {
19539
19550
  return (h("sqm-user-attribute", { demoData: {
19540
19551
  loading: true,
19541
19552
  value: "impact.com",
@@ -19556,7 +19567,7 @@ const UserAttribute = /*#__PURE__*/Object.freeze({
19556
19567
  'default': UserAttribute_stories,
19557
19568
  Default: Default$x,
19558
19569
  InvalidValue: InvalidValue,
19559
- Loading: Loading$j,
19570
+ Loading: Loading$k,
19560
19571
  WithCustomStyles: WithCustomStyles
19561
19572
  });
19562
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-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: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(null),C=g[0],E=g[1];useEffect((function(){if(C===null&&p){E(!p.firstName||!p.lastName)}}),[p,C]);var _=useState((p===null||p===void 0?void 0:p.firstName)||""),w=_[0],x=_[1];var S=useState((p===null||p===void 0?void 0:p.lastName)||""),k=S[0],T=S[1];var q=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(/^.*_/,"")),I=q[0],P=q[1];var N=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)||""),O=N[0],j=N[1];var A=wn(GET_FINANCE_NETWORK_SETTINGS,{variables:{filter:I?{countryCode_eq:I}:{}}}).data;var D=$e(START_IMPACT_CONNECTION),M=D[0],U=D[1].loading;var R=useState(false),V=R[0],$=R[1];var F=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 W=!!((o=p===null||p===void 0?void 0:p.impactConnection)===null||o===void 0?void 0:o.publisher);var H=useMemo((function(){var e,r,t;if(W){return((e=f===null||f===void 0?void 0:f.currencies)===null||e===void 0?void 0:e.data)||[]}var n=(t=(r=A===null||A===void 0?void 0:A.impactFinanceNetworkSettings)===null||r===void 0?void 0:r.data)===null||t===void 0?void 0:t.reduce((function(e,r){var t,n;if(I&&r.countryCode!==I)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||[]}),[A,f,I,W]);var B=useMemo((function(){return __spreadArrays(H).sort((function(e,r){return e.displayName.localeCompare(r.displayName)}))}),[H]);var G=useState(""),z=G[0],K=G[1];var J=useState(""),Q=J[0],X=J[1];var Y=useState(F||[]),Z=Y[0],ee=Y[1];var re=useState(B||[]),te=re[0],ne=re[1];var ae=useState(""),oe=ae[0],ie=ae[1];var se=useState(false),le=se[0],ue=se[1];var ce=useState(false),de=ce[0],pe=ce[1];useEffect((function(){var e;if(de||!u)return;x((p===null||p===void 0?void 0:p.firstName)||"");T((p===null||p===void 0?void 0:p.lastName)||"");var r=(e=p===null||p===void 0?void 0:p.impactConnection)===null||e===void 0?void 0:e.publisher;if(r){P(r.countryCode);j(r.currency)}pe(true)}),[u,p,de]);useEffect((function(){if(!(F===null||F===void 0?void 0:F.length))return;if(z.trim()===""){ee(F||[])}else{ee(F.filter((function(e){return e.displayName.toLowerCase().includes(z.toLowerCase())}))||[])}}),[z,F]);useEffect((function(){if(!(B===null||B===void 0?void 0:B.length))return;if(Q.trim()===""){ne(B||[])}else{ne(B.filter((function(e){return e.currencyCode.toLowerCase().includes(Q.toLowerCase())}))||[])}}),[Q,B]);var me=p===null||p===void 0?void 0:p.impactConnection;function fe(e){var r=e.target.value;x(r)}function ve(e){var r=e.target.value;T(r)}function be(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;P(n);j("");ie("")}function he(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;j(n);ie("")}function ye(e){var r=e.target.checked;$(r)}function ge(){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(!V||!I||!O||C&&(!w||!k)){ie(e.missingFieldsErrorText);return[2]}ie("");if(!p){ie(e.networkErrorText);return[2]}u.label=1;case 1:u.trys.push([1,4,,5]);n={user:{id:p.id,accountId:p.accountId},firstName:w,lastName:k,countryCode:I,currency:O};return[4,M({vars:n})];case 2:a=u.sent();if(!a||((r=a)===null||r===void 0?void 0:r.message)){ie(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(". ");ie(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);ue(true);return[3,5];case 4:l=u.sent();console.error("Partner creation error:",l);ie(e.networkErrorText);return[3,5];case 5:return[2]}}))}))}var Ce=!le&&!c&&(me===null||me===void 0?void 0:me.connectionStatus)==="NOT_STARTED";return{states:{open:Ce,loading:c||y||v,submitting:U,shouldDisplayNameFields:C,isExistingPartner:W,firstName:w,lastName:k,countryCode:I,currency:O,error:oe,success:le,filteredCountries:Z||[],filteredCurrencies:te||[],allowBankingCollection:V,disabled:c||U},callbacks:{onFirstNameChange:fe,onLastNameChange:ve,onCountryChange:be,onCurrencyChange:he,onCheckboxChange:ye,setCurrencySearch:X,setCountrySearch:K,onSubmit:ge,onClose:function(){return ue(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-b677b410.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: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(null),C=g[0],E=g[1];var _=useState((p===null||p===void 0?void 0:p.firstName)||""),w=_[0],x=_[1];var S=useState((p===null||p===void 0?void 0:p.lastName)||""),k=S[0],T=S[1];var q=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(/^.*_/,"")),I=q[0],P=q[1];var N=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)||""),O=N[0],j=N[1];var A=wn(GET_FINANCE_NETWORK_SETTINGS,{variables:{filter:I?{countryCode_eq:I}:{}}}).data;var D=$e(START_IMPACT_CONNECTION),M=D[0],U=D[1].loading;var R=useState(false),V=R[0],$=R[1];var F=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 W=!!((o=p===null||p===void 0?void 0:p.impactConnection)===null||o===void 0?void 0:o.publisher);var H=useMemo((function(){var e,r,t;if(W){return((e=f===null||f===void 0?void 0:f.currencies)===null||e===void 0?void 0:e.data)||[]}var n=(t=(r=A===null||A===void 0?void 0:A.impactFinanceNetworkSettings)===null||r===void 0?void 0:r.data)===null||t===void 0?void 0:t.reduce((function(e,r){var t,n;if(I&&r.countryCode!==I)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||[]}),[A,f,I,W]);var B=useMemo((function(){return __spreadArrays(H).sort((function(e,r){return e.displayName.localeCompare(r.displayName)}))}),[H]);var G=useState(""),z=G[0],K=G[1];var J=useState(""),Q=J[0],X=J[1];var Y=useState(F||[]),Z=Y[0],ee=Y[1];var re=useState(B||[]),te=re[0],ne=re[1];var ae=useState(""),oe=ae[0],ie=ae[1];var se=useState(false),le=se[0],ue=se[1];useEffect((function(){var e;if(C!==null||!p)return;E(!p.firstName||!p.lastName);x(p.firstName||"");T(p.lastName||"");var r=(e=p.impactConnection)===null||e===void 0?void 0:e.publisher;if(r){P(r.countryCode);j(r.currency)}}),[p,C]);useEffect((function(){if(!(F===null||F===void 0?void 0:F.length))return;if(z.trim()===""){ee(F||[])}else{ee(F.filter((function(e){return e.displayName.toLowerCase().includes(z.toLowerCase())}))||[])}}),[z,F]);useEffect((function(){if(!(B===null||B===void 0?void 0:B.length))return;if(Q.trim()===""){ne(B||[])}else{ne(B.filter((function(e){return e.currencyCode.toLowerCase().includes(Q.toLowerCase())}))||[])}}),[Q,B]);var ce=p===null||p===void 0?void 0:p.impactConnection;function de(e){var r=e.target.value;x(r)}function pe(e){var r=e.target.value;T(r)}function me(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;P(n);j("");ie("")}function fe(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;j(n);ie("")}function ve(e){var r=e.target.checked;$(r)}function be(){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(!V||!I||!O||C&&(!w||!k)){ie(e.missingFieldsErrorText);return[2]}ie("");if(!p){ie(e.networkErrorText);return[2]}u.label=1;case 1:u.trys.push([1,4,,5]);n={user:{id:p.id,accountId:p.accountId},firstName:w,lastName:k,countryCode:I,currency:O};return[4,M({vars:n})];case 2:a=u.sent();if(!a||((r=a)===null||r===void 0?void 0:r.message)){ie(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(". ");ie(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);ue(true);return[3,5];case 4:l=u.sent();console.error("Partner creation error:",l);ie(e.networkErrorText);return[3,5];case 5:return[2]}}))}))}var he=!le&&!c&&(ce===null||ce===void 0?void 0:ce.connectionStatus)==="NOT_STARTED";return{states:{open:he,loading:c||y||v,submitting:U,shouldDisplayNameFields:C,isExistingPartner:W,firstName:w,lastName:k,countryCode:I,currency:O,error:oe,success:le,filteredCountries:Z||[],filteredCurrencies:te||[],allowBankingCollection:V,disabled:c||U},callbacks:{onFirstNameChange:de,onLastNameChange:pe,onCountryChange:me,onCurrencyChange:fe,onCheckboxChange:ve,setCurrencySearch:X,setCountrySearch:K,onSubmit:be,onClose:function(){return ue(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 +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};
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),a.loading?h("sl-spinner",{style:{fontSize:"50px",margin:"40px"}}):h(PartnerInfoModalContentView,Object.assign({},e))))}export{PartnerInfoModalView as P,PartnerInfoModalContentView as a};