@saasquatch/mint-components 2.1.9-4 → 2.1.9-6

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.
@@ -507,6 +507,7 @@ const GET_BRAND_NAME = index_module.dist.gql `
507
507
  function usePartnerInfoModal(props) {
508
508
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
509
509
  const locale = index_module.L();
510
+ const setVerificationContext = index_module.En(keys.VERIFICATION_PARENT_NAMESPACE);
510
511
  const { data: userData, loading: userLoading, refetch, } = index_module.wn(GET_USER_PARTNER_INFO, {});
511
512
  const user = userData === null || userData === void 0 ? void 0 : userData.user;
512
513
  const { data: currenciesData, loading: currenciesLoading } = index_module.wn(GET_CURRENCIES, { variables: { locale } });
@@ -607,6 +608,7 @@ function usePartnerInfoModal(props) {
607
608
  window.dispatchEvent(new Event(eventKeys.TAX_FORM_UPDATED_EVENT_KEY));
608
609
  await refetch();
609
610
  setSuccess(true);
611
+ setVerificationContext(true);
610
612
  }
611
613
  catch (e) {
612
614
  console.error("Partner creation error:", e);
@@ -747,7 +749,10 @@ function useDemoPartnerInfoModal(props) {
747
749
  const [countryCode, setCountryCode] = domContextHooks_module.useState("US");
748
750
  const [currency, setCurrency] = domContextHooks_module.useState("");
749
751
  const [error, setError] = domContextHooks_module.useState("");
750
- const stateOverrides = parseStates.parseStates(props.stateController) || {};
752
+ const parsed = parseStates.parseStates(props.stateController) || {};
753
+ // If editor wraps under tag name, extract it; otherwise use directly
754
+ const stateOverrides = parsed["sqm-partner-info-modal"] || parsed;
755
+ console.log("stateController raw:", props.stateController, "parsed:", parsed, "overrides:", stateOverrides); // TEMP
751
756
  return cjs.cjs({
752
757
  states: {
753
758
  brandName: "Test Brand",
@@ -801,9 +806,7 @@ function useDemoPartnerInfoModal(props) {
801
806
  supportDescriptionExistingPartner: props.supportDescriptionExistingPartner,
802
807
  modalHeaderExistingPartner: props.modalHeaderExistingPartner,
803
808
  },
804
- }, cjs.cjs(stateOverrides, props.demoData || {}, {
805
- arrayMerge: (_, a) => a,
806
- }), { arrayMerge: (_, a) => a });
809
+ }, stateOverrides || {}, { arrayMerge: (_, a) => a });
807
810
  }
808
811
 
809
812
  exports.sqm_email_verification = WidgetEmailVerification;
@@ -23,6 +23,9 @@ const USER_LOOKUP = index_module.dist.gql `
23
23
  email
24
24
  emailVerified
25
25
  }
26
+ impactConnection {
27
+ connected
28
+ }
26
29
  }
27
30
  }
28
31
  }
@@ -43,15 +46,21 @@ function useWidgetVerification() {
43
46
  const [fetch] = index_module.Xe(USER_LOOKUP);
44
47
  domContextHooks_module.useEffect(() => {
45
48
  const checkUser = async () => {
46
- var _a, _b, _c;
49
+ var _a, _b, _c, _d, _e;
47
50
  try {
48
51
  const res = await fetch({});
49
52
  if (!res || res instanceof Error)
50
53
  throw new Error();
51
- if ((_a = res === null || res === void 0 ? void 0 : res.viewer) === null || _a === void 0 ? void 0 : _a.emailVerified)
52
- setContext(true);
53
- else if ((_c = (_b = res === null || res === void 0 ? void 0 : res.viewer) === null || _b === void 0 ? void 0 : _b.managedIdentity) === null || _c === void 0 ? void 0 : _c.emailVerified)
54
+ const emailVerified = ((_a = res === null || res === void 0 ? void 0 : res.viewer) === null || _a === void 0 ? void 0 : _a.emailVerified) || ((_c = (_b = res === null || res === void 0 ? void 0 : res.viewer) === null || _b === void 0 ? void 0 : _b.managedIdentity) === null || _c === void 0 ? void 0 : _c.emailVerified);
55
+ const isConnected = (_e = (_d = res === null || res === void 0 ? void 0 : res.viewer) === null || _d === void 0 ? void 0 : _d.impactConnection) === null || _e === void 0 ? void 0 : _e.connected;
56
+ if (isConnected) {
57
+ // Partner already created, show widget content
54
58
  setContext(true);
59
+ }
60
+ else if (emailVerified) {
61
+ // Email verified but no partner yet, show partner modal
62
+ setShowPartnerModal(true);
63
+ }
55
64
  }
56
65
  catch (e) {
57
66
  console.error("Could not fetch user information:", e);
@@ -493,7 +493,10 @@ function useDemoPartnerInfoModal(props) {
493
493
  const [countryCode, setCountryCode] = useState("US");
494
494
  const [currency, setCurrency] = useState("");
495
495
  const [error, setError] = useState("");
496
- const stateOverrides = parseStates(props.stateController) || {};
496
+ const parsed = parseStates(props.stateController) || {};
497
+ // If editor wraps under tag name, extract it; otherwise use directly
498
+ const stateOverrides = parsed["sqm-partner-info-modal"] || parsed;
499
+ console.log("stateController raw:", props.stateController, "parsed:", parsed, "overrides:", stateOverrides); // TEMP
497
500
  return deepmerge({
498
501
  states: {
499
502
  brandName: "Test Brand",
@@ -547,7 +550,5 @@ function useDemoPartnerInfoModal(props) {
547
550
  supportDescriptionExistingPartner: props.supportDescriptionExistingPartner,
548
551
  modalHeaderExistingPartner: props.modalHeaderExistingPartner,
549
552
  },
550
- }, deepmerge(stateOverrides, props.demoData || {}, {
551
- arrayMerge: (_, a) => a,
552
- }), { arrayMerge: (_, a) => a });
553
+ }, stateOverrides || {}, { arrayMerge: (_, a) => a });
553
554
  }
@@ -1,7 +1,8 @@
1
- import { useLocale, useMutation, useQuery, } from "@saasquatch/component-boilerplate";
1
+ import { useLocale, useMutation, useQuery, useSetParent, } from "@saasquatch/component-boilerplate";
2
2
  import { useEffect, useState } from "@saasquatch/universal-hooks";
3
3
  import { gql } from "graphql-request";
4
4
  import { TAX_FORM_UPDATED_EVENT_KEY } from "../tax-and-cash/eventKeys";
5
+ import { VERIFICATION_PARENT_NAMESPACE } from "../sqm-widget-verification/keys";
5
6
  // new field under impactConnection:{ resolvedByEmail: boolean } - determines if connection came from managed identity
6
7
  export const GET_USER_PARTNER_INFO = gql `
7
8
  query getUserPartnerInfo {
@@ -91,6 +92,7 @@ const GET_BRAND_NAME = gql `
91
92
  export function usePartnerInfoModal(props) {
92
93
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
93
94
  const locale = useLocale();
95
+ const setVerificationContext = useSetParent(VERIFICATION_PARENT_NAMESPACE);
94
96
  const { data: userData, loading: userLoading, refetch, } = useQuery(GET_USER_PARTNER_INFO, {});
95
97
  const user = userData === null || userData === void 0 ? void 0 : userData.user;
96
98
  const { data: currenciesData, loading: currenciesLoading } = useQuery(GET_CURRENCIES, { variables: { locale } });
@@ -191,6 +193,7 @@ export function usePartnerInfoModal(props) {
191
193
  window.dispatchEvent(new Event(TAX_FORM_UPDATED_EVENT_KEY));
192
194
  await refetch();
193
195
  setSuccess(true);
196
+ setVerificationContext(true);
194
197
  }
195
198
  catch (e) {
196
199
  console.error("Partner creation error:", e);
@@ -15,6 +15,9 @@ const USER_LOOKUP = gql `
15
15
  email
16
16
  emailVerified
17
17
  }
18
+ impactConnection {
19
+ connected
20
+ }
18
21
  }
19
22
  }
20
23
  }
@@ -35,15 +38,21 @@ export function useWidgetVerification() {
35
38
  const [fetch] = useLazyQuery(USER_LOOKUP);
36
39
  useEffect(() => {
37
40
  const checkUser = async () => {
38
- var _a, _b, _c;
41
+ var _a, _b, _c, _d, _e;
39
42
  try {
40
43
  const res = await fetch({});
41
44
  if (!res || res instanceof Error)
42
45
  throw new Error();
43
- if ((_a = res === null || res === void 0 ? void 0 : res.viewer) === null || _a === void 0 ? void 0 : _a.emailVerified)
44
- setContext(true);
45
- else if ((_c = (_b = res === null || res === void 0 ? void 0 : res.viewer) === null || _b === void 0 ? void 0 : _b.managedIdentity) === null || _c === void 0 ? void 0 : _c.emailVerified)
46
+ const emailVerified = ((_a = res === null || res === void 0 ? void 0 : res.viewer) === null || _a === void 0 ? void 0 : _a.emailVerified) || ((_c = (_b = res === null || res === void 0 ? void 0 : res.viewer) === null || _b === void 0 ? void 0 : _b.managedIdentity) === null || _c === void 0 ? void 0 : _c.emailVerified);
47
+ const isConnected = (_e = (_d = res === null || res === void 0 ? void 0 : res.viewer) === null || _d === void 0 ? void 0 : _d.impactConnection) === null || _e === void 0 ? void 0 : _e.connected;
48
+ if (isConnected) {
49
+ // Partner already created, show widget content
46
50
  setContext(true);
51
+ }
52
+ else if (emailVerified) {
53
+ // Email verified but no partner yet, show partner modal
54
+ setShowPartnerModal(true);
55
+ }
47
56
  }
48
57
  catch (e) {
49
58
  console.error("Could not fetch user information:", e);
@@ -8,7 +8,7 @@ import { c as createStyleSheet } from './JSS-67b5cff8.js';
8
8
  import { T as TextSpanView } from './sqm-text-span-view-738acfb3.js';
9
9
  import { P as PartnerInfoModalView } from './sqm-partner-info-modal-view-77c231af.js';
10
10
  import { p as parseStates } from './parseStates-ed75e224.js';
11
- import { S as SHOW_CODE_NAMESPACE, V as VERIFICATION_EMAIL_NAMESPACE } from './keys-406491dc.js';
11
+ import { S as SHOW_CODE_NAMESPACE, V as VERIFICATION_EMAIL_NAMESPACE, a as VERIFICATION_PARENT_NAMESPACE } from './keys-406491dc.js';
12
12
  import { T as TAX_FORM_UPDATED_EVENT_KEY } from './eventKeys-f76b6a03.js';
13
13
  import { u as useVerificationEmail } from './useVerificationEmail-5c6cd733.js';
14
14
 
@@ -503,6 +503,7 @@ const GET_BRAND_NAME = dist.gql `
503
503
  function usePartnerInfoModal(props) {
504
504
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
505
505
  const locale = L();
506
+ const setVerificationContext = En(VERIFICATION_PARENT_NAMESPACE);
506
507
  const { data: userData, loading: userLoading, refetch, } = wn(GET_USER_PARTNER_INFO, {});
507
508
  const user = userData === null || userData === void 0 ? void 0 : userData.user;
508
509
  const { data: currenciesData, loading: currenciesLoading } = wn(GET_CURRENCIES, { variables: { locale } });
@@ -603,6 +604,7 @@ function usePartnerInfoModal(props) {
603
604
  window.dispatchEvent(new Event(TAX_FORM_UPDATED_EVENT_KEY));
604
605
  await refetch();
605
606
  setSuccess(true);
607
+ setVerificationContext(true);
606
608
  }
607
609
  catch (e) {
608
610
  console.error("Partner creation error:", e);
@@ -743,7 +745,10 @@ function useDemoPartnerInfoModal(props) {
743
745
  const [countryCode, setCountryCode] = useState("US");
744
746
  const [currency, setCurrency] = useState("");
745
747
  const [error, setError] = useState("");
746
- const stateOverrides = parseStates(props.stateController) || {};
748
+ const parsed = parseStates(props.stateController) || {};
749
+ // If editor wraps under tag name, extract it; otherwise use directly
750
+ const stateOverrides = parsed["sqm-partner-info-modal"] || parsed;
751
+ console.log("stateController raw:", props.stateController, "parsed:", parsed, "overrides:", stateOverrides); // TEMP
747
752
  return cjs({
748
753
  states: {
749
754
  brandName: "Test Brand",
@@ -797,9 +802,7 @@ function useDemoPartnerInfoModal(props) {
797
802
  supportDescriptionExistingPartner: props.supportDescriptionExistingPartner,
798
803
  modalHeaderExistingPartner: props.modalHeaderExistingPartner,
799
804
  },
800
- }, cjs(stateOverrides, props.demoData || {}, {
801
- arrayMerge: (_, a) => a,
802
- }), { arrayMerge: (_, a) => a });
805
+ }, stateOverrides || {}, { arrayMerge: (_, a) => a });
803
806
  }
804
807
 
805
808
  export { WidgetEmailVerification as sqm_email_verification, PartnerInfoModal as sqm_partner_info_modal };
@@ -19,6 +19,9 @@ const USER_LOOKUP = dist.gql `
19
19
  email
20
20
  emailVerified
21
21
  }
22
+ impactConnection {
23
+ connected
24
+ }
22
25
  }
23
26
  }
24
27
  }
@@ -39,15 +42,21 @@ function useWidgetVerification() {
39
42
  const [fetch] = Xe(USER_LOOKUP);
40
43
  useEffect(() => {
41
44
  const checkUser = async () => {
42
- var _a, _b, _c;
45
+ var _a, _b, _c, _d, _e;
43
46
  try {
44
47
  const res = await fetch({});
45
48
  if (!res || res instanceof Error)
46
49
  throw new Error();
47
- if ((_a = res === null || res === void 0 ? void 0 : res.viewer) === null || _a === void 0 ? void 0 : _a.emailVerified)
48
- setContext(true);
49
- else if ((_c = (_b = res === null || res === void 0 ? void 0 : res.viewer) === null || _b === void 0 ? void 0 : _b.managedIdentity) === null || _c === void 0 ? void 0 : _c.emailVerified)
50
+ const emailVerified = ((_a = res === null || res === void 0 ? void 0 : res.viewer) === null || _a === void 0 ? void 0 : _a.emailVerified) || ((_c = (_b = res === null || res === void 0 ? void 0 : res.viewer) === null || _b === void 0 ? void 0 : _b.managedIdentity) === null || _c === void 0 ? void 0 : _c.emailVerified);
51
+ const isConnected = (_e = (_d = res === null || res === void 0 ? void 0 : res.viewer) === null || _d === void 0 ? void 0 : _d.impactConnection) === null || _e === void 0 ? void 0 : _e.connected;
52
+ if (isConnected) {
53
+ // Partner already created, show widget content
50
54
  setContext(true);
55
+ }
56
+ else if (emailVerified) {
57
+ // Email verified but no partner yet, show partner modal
58
+ setShowPartnerModal(true);
59
+ }
51
60
  }
52
61
  catch (e) {
53
62
  console.error("Could not fetch user information:", e);
@@ -1 +1 @@
1
- var __makeTemplateObject=this&&this.__makeTemplateObject||function(e,t){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:t})}else{e.raw=t}return e};var __awaiter=this&&this.__awaiter||function(e,t,r,n){function a(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,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?r(e.value):a(e.value).then(i,s)}l((n=n.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={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(t){return l([e,t])}}function l(i){if(n)throw new TypeError("Generator is already executing.");while(r)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:r.label++;return{value:i[1],done:false};case 5:r.label++;a=i[1];i=[0];continue;case 7:i=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){r=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){r.label=i[1];break}if(i[0]===6&&r.label<o[1]){r.label=o[1];o=i;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(i);break}if(o[2])r.ops.pop();r.trys.pop();continue}i=t.call(e,r)}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}}};import{h,r as registerInstance}from"./index-38ad4957.js";import{i as intl}from"./global-b2ee3a12.js";import{k as useState,f as useEffect,n as h$1}from"./dom-context-hooks.module-50442785.js";import{d as dist,t as Pn,w as wn,J,$ as $e,i as isDemo,q as En,L}from"./index.module-e266b4d7.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-738acfb3.js";import{P as PartnerInfoModalView}from"./sqm-partner-info-modal-view-77c231af.js";import{p as parseStates}from"./parseStates-ed75e224.js";import{S as SHOW_CODE_NAMESPACE,V as VERIFICATION_EMAIL_NAMESPACE}from"./keys-406491dc.js";import{T as TAX_FORM_UPDATED_EVENT_KEY}from"./eventKeys-f76b6a03.js";import{u as useVerificationEmail}from"./useVerificationEmail-5c6cd733.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 t=J();var r=$e(UpsertUserEmailMutation),n=r[0],a=r[1],o=a.loading,i=a.data,s=a.errors;var l=function(r){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:t.id,accountId:t.accountId,email:r}})];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 t=this;var r=Pn(SHOW_CODE_NAMESPACE),n=r[0],a=r[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,x=E.errors;var w=useUpsertUserEmail()[0];var q=useState(true),S=q[0],T=q[1];var k=wn(UserLookupQuery,{}),I=k.data,P=k.loading;var j=/^(([^<>()[\]\\.,;:\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 N=function(e){return __awaiter(t,void 0,void 0,(function(){var t,r,n,o,i;return __generator(this,(function(l){switch(l.label){case 0:e.preventDefault();if(!(I===null||I===void 0?void 0:I.viewer))return[2];T(true);t=I.viewer.email;if(!!t)return[3,2];r=e.detail.formData;n=r.get("email").toString();if(!j.test(n)){m(true);return[2]}return[4,w(n)];case 1:o=l.sent();if(!o||!o.user.email)m(true);l.label=2;case 2:if(!y)return[2];return[4,C()];case 3:i=l.sent();if(!i||!i.success)b(true);else{s(t);a(true)}T(false);return[2]}}))}))};return{callbacks:{submitEmail:N},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",maxWidth:"320px"},ContinueButton:{width:"100%",maxWidth:"100px"},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-semibold);\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 t=e.states,r=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),t.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)})),t.initialLoading?a():h("div",{class:sheet.classes.Wrapper},h(TextSpanView,{type:"p"},n.verifyEmailHeaderText),h("sl-form",{"onSl-submit":r.submitEmail},h("div",{class:sheet.classes.InputsContainer},h("sl-input",Object.assign({exportparts:"label: input-label, base: input-base",label:n.emailLabel,value:t.email||"",type:"email",id:"email",name:"email",disabled:!!t.email||t.loading},t.error?{class:sheet.classes.ErrorInput,helpText:n.emailValidationErrorText}:{})),h("sl-button",{submit:true,class:sheet.classes.ContinueButton,loading:t.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 t=this;var r=En(SHOW_CODE_NAMESPACE);return cjs({states:{error:true,initialLoading:false,loading:false,email:"test@example.com",sendCodeError:true},callbacks:{submitEmail:function(){return __awaiter(t,void 0,void 0,(function(){return __generator(this,(function(e){return[2,r(true)]}))}))}},text:e.getTextProps()},e.demoData||{},{arrayMerge:function(e,t){return t}})}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 publisher {\n phoneNumber\n phoneNumberCountryCode\n countryCode\n currency\n requiredTaxDocumentType\n currentTaxDocument {\n type\n status\n }\n withdrawalSettings {\n paymentMethod\n }\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 publisher {\n phoneNumber\n phoneNumberCountryCode\n countryCode\n currency\n requiredTaxDocumentType\n currentTaxDocument {\n type\n status\n }\n withdrawalSettings {\n paymentMethod\n }\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 CONNECT_PARTNER=dist.gql(templateObject_6||(templateObject_6=__makeTemplateObject(["\n mutation createImpactConnection($vars: ImpactConnectionInput!) {\n createImpactConnection(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 createImpactConnection($vars: ImpactConnectionInput!) {\n createImpactConnection(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"])));var GET_BRAND_NAME=dist.gql(templateObject_7||(templateObject_7=__makeTemplateObject(["\n query getTenantSettings {\n tenantSettings {\n companyName\n }\n }\n"],["\n query getTenantSettings {\n tenantSettings {\n companyName\n }\n }\n"])));function usePartnerInfoModal(e){var t,r,n,a,o,i,s,l,u;var c=L();var d=wn(GET_USER_PARTNER_INFO,{}),p=d.data,m=d.loading,f=d.refetch;var v=p===null||p===void 0?void 0:p.user;var b=wn(GET_CURRENCIES,{variables:{locale:c}}),h=b.data,y=b.loading;var g=wn(GET_COUNTRIES,{}),C=g.data,E=g.loading;var _=wn(GET_BRAND_NAME,{}).data;var x=$e(CONNECT_PARTNER),w=x[0],q=x[1],S=q.loading,T=q.errors;var k=useState(((r=(t=v===null||v===void 0?void 0:v.impactConnection)===null||t===void 0?void 0:t.publisher)===null||r===void 0?void 0:r.countryCode)||""),I=k[0],P=k[1];var j=useState(((a=(n=v===null||v===void 0?void 0:v.impactConnection)===null||n===void 0?void 0:n.publisher)===null||a===void 0?void 0:a.currency)||""),N=j[0],O=j[1];console.log(I,N,"initial country and currency state");var D=useState(""),U=D[0],A=D[1];var M=useState(""),R=M[0],V=M[1];var $=useState(((o=C===null||C===void 0?void 0:C.impactPayoutCountries)===null||o===void 0?void 0:o.data)||[]),W=$[0],F=$[1];var H=useState(((i=h===null||h===void 0?void 0:h.currencies)===null||i===void 0?void 0:i.data)||[]),B=H[0],z=H[1];var G=useState(""),J=G[0],K=G[1];var Q=useState(false),X=Q[0],Y=Q[1];var Z=((s=C===null||C===void 0?void 0:C.impactPayoutCountries)===null||s===void 0?void 0:s.data)||[];var ee=((l=h===null||h===void 0?void 0:h.currencies)===null||l===void 0?void 0:l.data)||[];console.log(v,"user data from partner info query");useEffect((function(){var e;if(p&&((e=v.impactConnection)===null||e===void 0?void 0:e.publisher)){P(v.impactConnection.publisher.countryCode);O(v.impactConnection.publisher.currency)}}),[p]);useEffect((function(){if(!(Z===null||Z===void 0?void 0:Z.length))return;if(U.trim()===""){F(Z||[])}else{F(Z.filter((function(e){return e.displayName.toLowerCase().includes(U.toLowerCase())}))||[])}}),[U,Z]);useEffect((function(){if(!(ee===null||ee===void 0?void 0:ee.length))return;if(R.trim()===""){z(ee||[])}else{z(ee.filter((function(e){return e.currencyCode.toLowerCase().includes(R.toLowerCase())}))||[])}}),[R,ee]);var te=v===null||v===void 0?void 0:v.impactConnection;function re(e){var t,r;var n=(r=(t=e.detail)===null||t===void 0?void 0:t.item)===null||r===void 0?void 0:r.__value;if(!n)return;P(n);O("");K("")}function ne(e){var t,r;var n=(r=(t=e.detail)===null||t===void 0?void 0:t.item)===null||r===void 0?void 0:r.__value;if(!n)return;O(n);K("")}function ae(){return __awaiter(this,void 0,void 0,(function(){var t,r,n,a,o,i,s;return __generator(this,(function(l){switch(l.label){case 0:if(!I||!N){K(e.missingFieldsErrorText);return[2]}K("");l.label=1;case 1:l.trys.push([1,4,,5]);n={user:{id:v.id,accountId:v.accountId},firstName:v.firstName,lastName:v.lastName,countryCode:I,currency:N};return[4,w({vars:n})];case 2:a=l.sent();if(!a||((t=a)===null||t===void 0?void 0:t.message)){K(e.networkErrorText);return[2]}o=a.createImpactConnection;console.log(a,o,"result and connectionResult from creating partner from modal");if(!(o===null||o===void 0?void 0:o.success)){i=(r=o===null||o===void 0?void 0:o.validationErrors)===null||r===void 0?void 0:r.map((function(e){return e.message})).join(". ");K(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,f()];case 3:l.sent();Y(true);return[3,5];case 4:s=l.sent();console.error("Partner creation error:",s);K(e.networkErrorText);return[3,5];case 5:return[2]}}))}))}console.log(X,"success state in partner info modal");var oe=!X&&!m&&(!(te===null||te===void 0?void 0:te.connected)||!(te===null||te===void 0?void 0:te.publisher));console.log(oe,"showModal condition in partner info modal");return{states:{open:oe,loading:m||E||y,submitting:S,isExistingPartner:(te===null||te===void 0?void 0:te.connected)||(te===null||te===void 0?void 0:te.publisher),countryCode:I,currency:N,error:J,success:X,brandName:((u=_===null||_===void 0?void 0:_.tenantSettings)===null||u===void 0?void 0:u.companyName)||"",filteredCountries:W||[],filteredCurrencies:B||[]},callbacks:{onCountryChange:re,onCurrencyChange:ne,setCurrencySearch:V,setCountrySearch:A,onSubmit:ae,onClose:function(){return Y(true)}},text:e.getTextProps()}}var PartnerInfoModal=function(){function e(e){registerInstance(this,e);this.brandName="";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 Support or sign up for this referral program with a different email.";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 select both a country and currency.";this.stateController="{}";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);return h(PartnerInfoModalView,Object.assign({},e))};return e}();function useDemoPartnerInfoModal(e){var t=useState("US"),r=t[0],n=t[1];var a=useState(""),o=a[0],i=a[1];var s=useState(""),l=s[0],u=s[1];var c=parseStates(e.stateController)||{};return cjs({states:{brandName:"Test Brand",open:true,loading:false,submitting:false,isExistingPartner:false,countryCode:r,currency:o,error:l,success:false,filteredCountries:[],filteredCurrencies:[]},callbacks:{onCountryChange:function(e){var t,r;var a=(r=(t=e===null||e===void 0?void 0:e.detail)===null||t===void 0?void 0:t.item)===null||r===void 0?void 0:r.__value;if(a){n(a);i("")}},onCurrencyChange:function(e){var t,r;var n=(r=(t=e===null||e===void 0?void 0:e.detail)===null||t===void 0?void 0:t.item)===null||r===void 0?void 0:r.__value;if(n)i(n)},setCountrySearch:function(){},setCurrencySearch:function(){},onSubmit:function(){if(!r||!o){u(e.missingFieldsErrorText);return}u("")},onClose:function(){}},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,modalHeaderExistingPartner:e.modalHeaderExistingPartner}},cjs(c,e.demoData||{},{arrayMerge:function(e,t){return t}}),{arrayMerge:function(e,t){return t}})}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,templateObject_7;
1
+ var __makeTemplateObject=this&&this.__makeTemplateObject||function(e,t){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:t})}else{e.raw=t}return e};var __awaiter=this&&this.__awaiter||function(e,t,r,n){function a(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,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?r(e.value):a(e.value).then(i,s)}l((n=n.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var r={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(t){return l([e,t])}}function l(i){if(n)throw new TypeError("Generator is already executing.");while(r)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:r.label++;return{value:i[1],done:false};case 5:r.label++;a=i[1];i=[0];continue;case 7:i=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){r=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){r.label=i[1];break}if(i[0]===6&&r.label<o[1]){r.label=o[1];o=i;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(i);break}if(o[2])r.ops.pop();r.trys.pop();continue}i=t.call(e,r)}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}}};import{h,r as registerInstance}from"./index-38ad4957.js";import{i as intl}from"./global-b2ee3a12.js";import{k as useState,f as useEffect,n as h$1}from"./dom-context-hooks.module-50442785.js";import{d as dist,t as Pn,w as wn,J,$ as $e,i as isDemo,q as En,L}from"./index.module-e266b4d7.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-738acfb3.js";import{P as PartnerInfoModalView}from"./sqm-partner-info-modal-view-77c231af.js";import{p as parseStates}from"./parseStates-ed75e224.js";import{S as SHOW_CODE_NAMESPACE,V as VERIFICATION_EMAIL_NAMESPACE,a as VERIFICATION_PARENT_NAMESPACE}from"./keys-406491dc.js";import{T as TAX_FORM_UPDATED_EVENT_KEY}from"./eventKeys-f76b6a03.js";import{u as useVerificationEmail}from"./useVerificationEmail-5c6cd733.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 t=J();var r=$e(UpsertUserEmailMutation),n=r[0],a=r[1],o=a.loading,i=a.data,s=a.errors;var l=function(r){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:t.id,accountId:t.accountId,email:r}})];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 t=this;var r=Pn(SHOW_CODE_NAMESPACE),n=r[0],a=r[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,E=g[0],C=g[1],_=C.loading,w=C.errors;var x=useUpsertUserEmail()[0];var q=useState(true),T=q[0],S=q[1];var k=wn(UserLookupQuery,{}),I=k.data,P=k.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)S(false)}),[y]);var O=function(e){return __awaiter(t,void 0,void 0,(function(){var t,r,n,o,i;return __generator(this,(function(l){switch(l.label){case 0:e.preventDefault();if(!(I===null||I===void 0?void 0:I.viewer))return[2];S(true);t=I.viewer.email;if(!!t)return[3,2];r=e.detail.formData;n=r.get("email").toString();if(!N.test(n)){m(true);return[2]}return[4,x(n)];case 1:o=l.sent();if(!o||!o.user.email)m(true);l.label=2;case 2:if(!y)return[2];return[4,E()];case 3:i=l.sent();if(!i||!i.success)b(true);else{s(t);a(true)}S(false);return[2]}}))}))};return{callbacks:{submitEmail:O},states:{loading:T,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",maxWidth:"320px"},ContinueButton:{width:"100%",maxWidth:"100px"},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-semibold);\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 t=e.states,r=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),t.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)})),t.initialLoading?a():h("div",{class:sheet.classes.Wrapper},h(TextSpanView,{type:"p"},n.verifyEmailHeaderText),h("sl-form",{"onSl-submit":r.submitEmail},h("div",{class:sheet.classes.InputsContainer},h("sl-input",Object.assign({exportparts:"label: input-label, base: input-base",label:n.emailLabel,value:t.email||"",type:"email",id:"email",name:"email",disabled:!!t.email||t.loading},t.error?{class:sheet.classes.ErrorInput,helpText:n.emailValidationErrorText}:{})),h("sl-button",{submit:true,class:sheet.classes.ContinueButton,loading:t.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 t=this;var r=En(SHOW_CODE_NAMESPACE);return cjs({states:{error:true,initialLoading:false,loading:false,email:"test@example.com",sendCodeError:true},callbacks:{submitEmail:function(){return __awaiter(t,void 0,void 0,(function(){return __generator(this,(function(e){return[2,r(true)]}))}))}},text:e.getTextProps()},e.demoData||{},{arrayMerge:function(e,t){return t}})}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 publisher {\n phoneNumber\n phoneNumberCountryCode\n countryCode\n currency\n requiredTaxDocumentType\n currentTaxDocument {\n type\n status\n }\n withdrawalSettings {\n paymentMethod\n }\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 publisher {\n phoneNumber\n phoneNumberCountryCode\n countryCode\n currency\n requiredTaxDocumentType\n currentTaxDocument {\n type\n status\n }\n withdrawalSettings {\n paymentMethod\n }\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 CONNECT_PARTNER=dist.gql(templateObject_6||(templateObject_6=__makeTemplateObject(["\n mutation createImpactConnection($vars: ImpactConnectionInput!) {\n createImpactConnection(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 createImpactConnection($vars: ImpactConnectionInput!) {\n createImpactConnection(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"])));var GET_BRAND_NAME=dist.gql(templateObject_7||(templateObject_7=__makeTemplateObject(["\n query getTenantSettings {\n tenantSettings {\n companyName\n }\n }\n"],["\n query getTenantSettings {\n tenantSettings {\n companyName\n }\n }\n"])));function usePartnerInfoModal(e){var t,r,n,a,o,i,s,l,u;var c=L();var d=En(VERIFICATION_PARENT_NAMESPACE);var p=wn(GET_USER_PARTNER_INFO,{}),m=p.data,f=p.loading,v=p.refetch;var b=m===null||m===void 0?void 0:m.user;var h=wn(GET_CURRENCIES,{variables:{locale:c}}),y=h.data,g=h.loading;var E=wn(GET_COUNTRIES,{}),C=E.data,_=E.loading;var w=wn(GET_BRAND_NAME,{}).data;var x=$e(CONNECT_PARTNER),q=x[0],T=x[1],S=T.loading,k=T.errors;var I=useState(((r=(t=b===null||b===void 0?void 0:b.impactConnection)===null||t===void 0?void 0:t.publisher)===null||r===void 0?void 0:r.countryCode)||""),P=I[0],N=I[1];var O=useState(((a=(n=b===null||b===void 0?void 0:b.impactConnection)===null||n===void 0?void 0:n.publisher)===null||a===void 0?void 0:a.currency)||""),j=O[0],A=O[1];console.log(P,j,"initial country and currency state");var D=useState(""),U=D[0],M=D[1];var R=useState(""),V=R[0],$=R[1];var W=useState(((o=C===null||C===void 0?void 0:C.impactPayoutCountries)===null||o===void 0?void 0:o.data)||[]),F=W[0],H=W[1];var B=useState(((i=y===null||y===void 0?void 0:y.currencies)===null||i===void 0?void 0:i.data)||[]),z=B[0],G=B[1];var J=useState(""),K=J[0],Q=J[1];var X=useState(false),Y=X[0],Z=X[1];var ee=((s=C===null||C===void 0?void 0:C.impactPayoutCountries)===null||s===void 0?void 0:s.data)||[];var te=((l=y===null||y===void 0?void 0:y.currencies)===null||l===void 0?void 0:l.data)||[];console.log(b,"user data from partner info query");useEffect((function(){var e;if(m&&((e=b.impactConnection)===null||e===void 0?void 0:e.publisher)){N(b.impactConnection.publisher.countryCode);A(b.impactConnection.publisher.currency)}}),[m]);useEffect((function(){if(!(ee===null||ee===void 0?void 0:ee.length))return;if(U.trim()===""){H(ee||[])}else{H(ee.filter((function(e){return e.displayName.toLowerCase().includes(U.toLowerCase())}))||[])}}),[U,ee]);useEffect((function(){if(!(te===null||te===void 0?void 0:te.length))return;if(V.trim()===""){G(te||[])}else{G(te.filter((function(e){return e.currencyCode.toLowerCase().includes(V.toLowerCase())}))||[])}}),[V,te]);var re=b===null||b===void 0?void 0:b.impactConnection;function ne(e){var t,r;var n=(r=(t=e.detail)===null||t===void 0?void 0:t.item)===null||r===void 0?void 0:r.__value;if(!n)return;N(n);A("");Q("")}function ae(e){var t,r;var n=(r=(t=e.detail)===null||t===void 0?void 0:t.item)===null||r===void 0?void 0:r.__value;if(!n)return;A(n);Q("")}function oe(){return __awaiter(this,void 0,void 0,(function(){var t,r,n,a,o,i,s;return __generator(this,(function(l){switch(l.label){case 0:if(!P||!j){Q(e.missingFieldsErrorText);return[2]}Q("");l.label=1;case 1:l.trys.push([1,4,,5]);n={user:{id:b.id,accountId:b.accountId},firstName:b.firstName,lastName:b.lastName,countryCode:P,currency:j};return[4,q({vars:n})];case 2:a=l.sent();if(!a||((t=a)===null||t===void 0?void 0:t.message)){Q(e.networkErrorText);return[2]}o=a.createImpactConnection;console.log(a,o,"result and connectionResult from creating partner from modal");if(!(o===null||o===void 0?void 0:o.success)){i=(r=o===null||o===void 0?void 0:o.validationErrors)===null||r===void 0?void 0:r.map((function(e){return e.message})).join(". ");Q(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,v()];case 3:l.sent();Z(true);d(true);return[3,5];case 4:s=l.sent();console.error("Partner creation error:",s);Q(e.networkErrorText);return[3,5];case 5:return[2]}}))}))}console.log(Y,"success state in partner info modal");var ie=!Y&&!f&&(!(re===null||re===void 0?void 0:re.connected)||!(re===null||re===void 0?void 0:re.publisher));console.log(ie,"showModal condition in partner info modal");return{states:{open:ie,loading:f||_||g,submitting:S,isExistingPartner:(re===null||re===void 0?void 0:re.connected)||(re===null||re===void 0?void 0:re.publisher),countryCode:P,currency:j,error:K,success:Y,brandName:((u=w===null||w===void 0?void 0:w.tenantSettings)===null||u===void 0?void 0:u.companyName)||"",filteredCountries:F||[],filteredCurrencies:z||[]},callbacks:{onCountryChange:ne,onCurrencyChange:ae,setCurrencySearch:$,setCountrySearch:M,onSubmit:oe,onClose:function(){return Z(true)}},text:e.getTextProps()}}var PartnerInfoModal=function(){function e(e){registerInstance(this,e);this.brandName="";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 Support or sign up for this referral program with a different email.";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 select both a country and currency.";this.stateController="{}";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);return h(PartnerInfoModalView,Object.assign({},e))};return e}();function useDemoPartnerInfoModal(e){var t=useState("US"),r=t[0],n=t[1];var a=useState(""),o=a[0],i=a[1];var s=useState(""),l=s[0],u=s[1];var c=parseStates(e.stateController)||{};var d=c["sqm-partner-info-modal"]||c;console.log("stateController raw:",e.stateController,"parsed:",c,"overrides:",d);return cjs({states:{brandName:"Test Brand",open:true,loading:false,submitting:false,isExistingPartner:false,countryCode:r,currency:o,error:l,success:false,filteredCountries:[],filteredCurrencies:[]},callbacks:{onCountryChange:function(e){var t,r;var a=(r=(t=e===null||e===void 0?void 0:e.detail)===null||t===void 0?void 0:t.item)===null||r===void 0?void 0:r.__value;if(a){n(a);i("")}},onCurrencyChange:function(e){var t,r;var n=(r=(t=e===null||e===void 0?void 0:e.detail)===null||t===void 0?void 0:t.item)===null||r===void 0?void 0:r.__value;if(n)i(n)},setCountrySearch:function(){},setCurrencySearch:function(){},onSubmit:function(){if(!r||!o){u(e.missingFieldsErrorText);return}u("")},onClose:function(){}},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,modalHeaderExistingPartner:e.modalHeaderExistingPartner}},d||{},{arrayMerge:function(e,t){return t}})}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,templateObject_7;
@@ -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 __assign=this&&this.__assign||function(){__assign=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++){r=arguments[t];for(var i in r)if(Object.prototype.hasOwnProperty.call(r,i))e[i]=r[i]}return e};return __assign.apply(this,arguments)};var __awaiter=this&&this.__awaiter||function(e,r,t,n){function i(e){return e instanceof t?e:new t((function(r){r(e)}))}return new(t||(t=Promise))((function(t,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n["throw"](e))}catch(e){a(e)}}function c(e){e.done?t(e.value):i(e.value).then(o,s)}c((n=n.apply(e,r||[])).next())}))};var __generator=this&&this.__generator||function(e,r){var t={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},n,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(r){return c([e,r])}}function c(o){if(n)throw new TypeError("Generator is already executing.");while(t)try{if(n=1,i&&(a=o[0]&2?i["return"]:o[0]?i["throw"]||((a=i["return"])&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;if(i=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:t.label++;return{value:o[1],done:false};case 5:t.label++;i=o[1];o=[0];continue;case 7:o=t.ops.pop();t.trys.pop();continue;default:if(!(a=t.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){t=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){t.label=o[1];break}if(o[0]===6&&t.label<a[1]){t.label=a[1];a=o;break}if(a&&t.label<a[2]){t.label=a[2];t.ops.push(o);break}if(a[2])t.ops.pop();t.trys.pop();continue}o=r.call(e,t)}catch(e){o=[6,e];i=0}finally{n=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};import{r as registerInstance,h as h$1}from"./index-38ad4957.js";import{k as useState,f as useEffect,n as h}from"./dom-context-hooks.module-50442785.js";import{d as dist,J,I as In,q as En,X as Xe,i as isDemo}from"./index.module-e266b4d7.js";import{c as cjs}from"./cjs-bdfb4486.js";import{g as getProps}from"./utils-334c1e34.js";import{p as parseStates}from"./parseStates-ed75e224.js";import{e as extractProps}from"./extractProps-ae1afbb3.js";import{S as SHOW_CODE_NAMESPACE,V as VERIFICATION_EMAIL_NAMESPACE,a as VERIFICATION_PARENT_NAMESPACE}from"./keys-406491dc.js";var USER_LOOKUP=dist.gql(templateObject_1||(templateObject_1=__makeTemplateObject(["\n query checkUserVerification {\n viewer {\n ... on User {\n id\n accountId\n email\n emailVerified\n managedIdentity {\n email\n emailVerified\n }\n }\n }\n }\n"],["\n query checkUserVerification {\n viewer {\n ... on User {\n id\n accountId\n email\n emailVerified\n managedIdentity {\n email\n emailVerified\n }\n }\n }\n }\n"])));function useWidgetVerification(){var e=this;var r=J();var t=In({namespace:SHOW_CODE_NAMESPACE,initialValue:false}),n=t[0],i=t[1];var a=In({namespace:VERIFICATION_EMAIL_NAMESPACE,initialValue:r===null||r===void 0?void 0:r.email}),o=a[0],s=a[1];var c=En(VERIFICATION_PARENT_NAMESPACE);var l=useState(true),u=l[0],d=l[1];var f=useState(false),p=f[0],m=f[1];var h=Xe(USER_LOOKUP)[0];useEffect((function(){var r=function(){return __awaiter(e,void 0,void 0,(function(){var e,r,t,n,i;return __generator(this,(function(a){switch(a.label){case 0:a.trys.push([0,2,3,4]);return[4,h({})];case 1:n=a.sent();if(!n||n instanceof Error)throw new Error;if((e=n===null||n===void 0?void 0:n.viewer)===null||e===void 0?void 0:e.emailVerified)c(true);else if((t=(r=n===null||n===void 0?void 0:n.viewer)===null||r===void 0?void 0:r.managedIdentity)===null||t===void 0?void 0:t.emailVerified)c(true);return[3,4];case 2:i=a.sent();console.error("Could not fetch user information:",i);return[3,4];case 3:d(false);return[7];case 4:return[2]}}))}))};r()}),[]);var _=function(){m(true)};var y=function(){m(false);c(true)};return{showCode:n,showPartnerModal:p,onVerification:_,onPartnerModalComplete:y,loading:u}}var WidgetVerification=function(){function e(e){registerInstance(this,e);this.general_verifyEmailHeader="Verify your email";this.general_verifyEmailDescription="To get your cash paid out directly to your bank account, please complete your account setup";this.emailStep_verifyEmailHeaderText="Start by verifying your email. We’ll send you a code through our referral provider, impact.com.";this.emailStep_sendCodeErrorHeader="There was an error sending your code.";this.emailStep_sendCodeErrorDescription="Please try again. If this problem continues, contact our program support team.";this.emailStep_emailLabel="Email";this.emailStep_sendCodeText="Send code";this.emailStep_emailValidationErrorText="Please enter a valid email";this.codeStep_verifyCodeHeaderText="Enter the code sent to {email} from our referral provider, impact.com.";this.codeStep_reverifyCodeHeaderText="Enter the code sent to {email} from our referral provider, impact.com.";this.codeStep_resendCodeText="Didn't receive your code? {resendCodeLink}";this.codeStep_resendCodeLabel="Resend code";this.codeStep_codeResentSuccessfullyText="Another code has been sent to {email}";this.codeStep_invalidCodeText="Please check your code and try again. If you’re still having trouble, try resending your code.";this.codeStep_verifyText="Verify";this.codeStep_networkErrorMessage="An error occurred while verifying your email. Please refresh the page and try again.";this.createPartnerStep_modalHeader="Let's get you ready for rewards";this.createPartnerStep_modalHeaderExistingPartner="We found an existing account";this.createPartnerStep_descriptionNewPartner="Confirm your country and currency now to get your future rewards faster.";this.createPartnerStep_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.createPartnerStep_supportDescriptionExistingPartner="If this is a mistake, please contact Support or sign up for this referral program with a different email.";this.createPartnerStep_countryLabel="Country";this.createPartnerStep_currencyLabel="Currency";this.createPartnerStep_submitButtonLabel="Submit";this.createPartnerStep_confirmButtonLabel="Confirm";this.createPartnerStep_searchCountryPlaceholder="Search for a country";this.createPartnerStep_searchCurrencyPlaceholder="Search for a currency";this.createPartnerStep_networkErrorText="An error occurred. Please try again.";this.createPartnerStep_missingFieldsErrorText="Please select both a country and currency.";this.stateController="{}";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.getStepTextProps=function(e){var r=getProps(this);return extractProps(r,e)};e.prototype.render=function(){var e=isDemo()?useDemoWidgetVerificationInternal(this):useWidgetVerification();if(e.loading)return h$1("sl-spinner",null);if(e.showPartnerModal){return h$1("sqm-partner-info-modal",Object.assign({},this.getStepTextProps("createPartnerStep_")))}var r=this.getStepTextProps("general_");return h$1("div",null,h$1("h3",{style:{fontSize:"24px",margin:"0"}},r.verifyEmailHeader),h$1("p",{style:{color:"var(--sl-color-neutral-500)",fontSize:"var(--sl-font-size-medium)",margin:"0"}},r.verifyEmailDescription),e.showCode?h$1("sqm-code-verification",Object.assign({onVerification:e.onVerification},this.getStepTextProps("codeStep_"),extractProps(e,"sqm-code-verification_"))):h$1("sqm-email-verification",Object.assign({},this.getStepTextProps("emailStep_"),extractProps(e,"sqm-email-verification_"))))};return e}();function useDemoWidgetVerificationInternal(e){var r=In({namespace:SHOW_CODE_NAMESPACE,initialValue:false}),t=r[0],n=r[1];var i=In({namespace:VERIFICATION_EMAIL_NAMESPACE,initialValue:undefined}),a=i[0],o=i[1];var s=En(VERIFICATION_PARENT_NAMESPACE);var c=parseStates(e.stateController);var l=Object.keys(c).reduce((function(e,r){var t;return r==="sqm-widget-verification"?__assign(__assign({},e),c[r]):__assign(__assign({},e),(t={},t[r+"_stateController"]=c[r],t))}),{});var u=function(){s(true)};return cjs({showCode:t,showPartnerModal:false,onVerification:u,onPartnerModalComplete:function(){},loading:false},l||{},{arrayMerge:function(e,r){return r}})}export{WidgetVerification as sqm_widget_verification};var templateObject_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 __assign=this&&this.__assign||function(){__assign=Object.assign||function(e){for(var r,t=1,n=arguments.length;t<n;t++){r=arguments[t];for(var i in r)if(Object.prototype.hasOwnProperty.call(r,i))e[i]=r[i]}return e};return __assign.apply(this,arguments)};var __awaiter=this&&this.__awaiter||function(e,r,t,n){function i(e){return e instanceof t?e:new t((function(r){r(e)}))}return new(t||(t=Promise))((function(t,a){function o(e){try{c(n.next(e))}catch(e){a(e)}}function s(e){try{c(n["throw"](e))}catch(e){a(e)}}function c(e){e.done?t(e.value):i(e.value).then(o,s)}c((n=n.apply(e,r||[])).next())}))};var __generator=this&&this.__generator||function(e,r){var t={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},n,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(r){return c([e,r])}}function c(o){if(n)throw new TypeError("Generator is already executing.");while(t)try{if(n=1,i&&(a=o[0]&2?i["return"]:o[0]?i["throw"]||((a=i["return"])&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;if(i=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:t.label++;return{value:o[1],done:false};case 5:t.label++;i=o[1];o=[0];continue;case 7:o=t.ops.pop();t.trys.pop();continue;default:if(!(a=t.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){t=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){t.label=o[1];break}if(o[0]===6&&t.label<a[1]){t.label=a[1];a=o;break}if(a&&t.label<a[2]){t.label=a[2];t.ops.push(o);break}if(a[2])t.ops.pop();t.trys.pop();continue}o=r.call(e,t)}catch(e){o=[6,e];i=0}finally{n=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};import{r as registerInstance,h as h$1}from"./index-38ad4957.js";import{k as useState,f as useEffect,n as h}from"./dom-context-hooks.module-50442785.js";import{d as dist,J,I as In,q as En,X as Xe,i as isDemo}from"./index.module-e266b4d7.js";import{c as cjs}from"./cjs-bdfb4486.js";import{g as getProps}from"./utils-334c1e34.js";import{p as parseStates}from"./parseStates-ed75e224.js";import{e as extractProps}from"./extractProps-ae1afbb3.js";import{S as SHOW_CODE_NAMESPACE,V as VERIFICATION_EMAIL_NAMESPACE,a as VERIFICATION_PARENT_NAMESPACE}from"./keys-406491dc.js";var USER_LOOKUP=dist.gql(templateObject_1||(templateObject_1=__makeTemplateObject(["\n query checkUserVerification {\n viewer {\n ... on User {\n id\n accountId\n email\n emailVerified\n managedIdentity {\n email\n emailVerified\n }\n impactConnection {\n connected\n }\n }\n }\n }\n"],["\n query checkUserVerification {\n viewer {\n ... on User {\n id\n accountId\n email\n emailVerified\n managedIdentity {\n email\n emailVerified\n }\n impactConnection {\n connected\n }\n }\n }\n }\n"])));function useWidgetVerification(){var e=this;var r=J();var t=In({namespace:SHOW_CODE_NAMESPACE,initialValue:false}),n=t[0],i=t[1];var a=In({namespace:VERIFICATION_EMAIL_NAMESPACE,initialValue:r===null||r===void 0?void 0:r.email}),o=a[0],s=a[1];var c=En(VERIFICATION_PARENT_NAMESPACE);var l=useState(true),u=l[0],d=l[1];var f=useState(false),p=f[0],m=f[1];var h=Xe(USER_LOOKUP)[0];useEffect((function(){var r=function(){return __awaiter(e,void 0,void 0,(function(){var e,r,t,n,i,a,o,s,l;return __generator(this,(function(u){switch(u.label){case 0:u.trys.push([0,2,3,4]);return[4,h({})];case 1:a=u.sent();if(!a||a instanceof Error)throw new Error;o=((e=a===null||a===void 0?void 0:a.viewer)===null||e===void 0?void 0:e.emailVerified)||((t=(r=a===null||a===void 0?void 0:a.viewer)===null||r===void 0?void 0:r.managedIdentity)===null||t===void 0?void 0:t.emailVerified);s=(i=(n=a===null||a===void 0?void 0:a.viewer)===null||n===void 0?void 0:n.impactConnection)===null||i===void 0?void 0:i.connected;if(s){c(true)}else if(o){m(true)}return[3,4];case 2:l=u.sent();console.error("Could not fetch user information:",l);return[3,4];case 3:d(false);return[7];case 4:return[2]}}))}))};r()}),[]);var _=function(){m(true)};var v=function(){m(false);c(true)};return{showCode:n,showPartnerModal:p,onVerification:_,onPartnerModalComplete:v,loading:u}}var WidgetVerification=function(){function e(e){registerInstance(this,e);this.general_verifyEmailHeader="Verify your email";this.general_verifyEmailDescription="To get your cash paid out directly to your bank account, please complete your account setup";this.emailStep_verifyEmailHeaderText="Start by verifying your email. We’ll send you a code through our referral provider, impact.com.";this.emailStep_sendCodeErrorHeader="There was an error sending your code.";this.emailStep_sendCodeErrorDescription="Please try again. If this problem continues, contact our program support team.";this.emailStep_emailLabel="Email";this.emailStep_sendCodeText="Send code";this.emailStep_emailValidationErrorText="Please enter a valid email";this.codeStep_verifyCodeHeaderText="Enter the code sent to {email} from our referral provider, impact.com.";this.codeStep_reverifyCodeHeaderText="Enter the code sent to {email} from our referral provider, impact.com.";this.codeStep_resendCodeText="Didn't receive your code? {resendCodeLink}";this.codeStep_resendCodeLabel="Resend code";this.codeStep_codeResentSuccessfullyText="Another code has been sent to {email}";this.codeStep_invalidCodeText="Please check your code and try again. If you’re still having trouble, try resending your code.";this.codeStep_verifyText="Verify";this.codeStep_networkErrorMessage="An error occurred while verifying your email. Please refresh the page and try again.";this.createPartnerStep_modalHeader="Let's get you ready for rewards";this.createPartnerStep_modalHeaderExistingPartner="We found an existing account";this.createPartnerStep_descriptionNewPartner="Confirm your country and currency now to get your future rewards faster.";this.createPartnerStep_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.createPartnerStep_supportDescriptionExistingPartner="If this is a mistake, please contact Support or sign up for this referral program with a different email.";this.createPartnerStep_countryLabel="Country";this.createPartnerStep_currencyLabel="Currency";this.createPartnerStep_submitButtonLabel="Submit";this.createPartnerStep_confirmButtonLabel="Confirm";this.createPartnerStep_searchCountryPlaceholder="Search for a country";this.createPartnerStep_searchCurrencyPlaceholder="Search for a currency";this.createPartnerStep_networkErrorText="An error occurred. Please try again.";this.createPartnerStep_missingFieldsErrorText="Please select both a country and currency.";this.stateController="{}";h(this)}e.prototype.disconnectedCallback=function(){};e.prototype.getStepTextProps=function(e){var r=getProps(this);return extractProps(r,e)};e.prototype.render=function(){var e=isDemo()?useDemoWidgetVerificationInternal(this):useWidgetVerification();if(e.loading)return h$1("sl-spinner",null);if(e.showPartnerModal){return h$1("sqm-partner-info-modal",Object.assign({},this.getStepTextProps("createPartnerStep_")))}var r=this.getStepTextProps("general_");return h$1("div",null,h$1("h3",{style:{fontSize:"24px",margin:"0"}},r.verifyEmailHeader),h$1("p",{style:{color:"var(--sl-color-neutral-500)",fontSize:"var(--sl-font-size-medium)",margin:"0"}},r.verifyEmailDescription),e.showCode?h$1("sqm-code-verification",Object.assign({onVerification:e.onVerification},this.getStepTextProps("codeStep_"),extractProps(e,"sqm-code-verification_"))):h$1("sqm-email-verification",Object.assign({},this.getStepTextProps("emailStep_"),extractProps(e,"sqm-email-verification_"))))};return e}();function useDemoWidgetVerificationInternal(e){var r=In({namespace:SHOW_CODE_NAMESPACE,initialValue:false}),t=r[0],n=r[1];var i=In({namespace:VERIFICATION_EMAIL_NAMESPACE,initialValue:undefined}),a=i[0],o=i[1];var s=En(VERIFICATION_PARENT_NAMESPACE);var c=parseStates(e.stateController);var l=Object.keys(c).reduce((function(e,r){var t;return r==="sqm-widget-verification"?__assign(__assign({},e),c[r]):__assign(__assign({},e),(t={},t[r+"_stateController"]=c[r],t))}),{});var u=function(){s(true)};return cjs({showCode:t,showPartnerModal:false,onVerification:u,onPartnerModalComplete:function(){},loading:false},l||{},{arrayMerge:function(e,r){return r}})}export{WidgetVerification as sqm_widget_verification};var templateObject_1;