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

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 states = parseStates.parseStates(props.stateController);
753
+ const formatted = Object.keys(states).reduce((prev, key) => key === "sqm-partner-info-modal"
754
+ ? { ...prev, ...states[key] }
755
+ : { ...prev, [`${key}_stateController`]: states[key] }, {});
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
+ }, formatted || {}, { arrayMerge: (_, a) => a });
807
810
  }
808
811
 
809
812
  exports.sqm_email_verification = WidgetEmailVerification;
@@ -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 states = parseStates(props.stateController);
497
+ const formatted = Object.keys(states).reduce((prev, key) => key === "sqm-partner-info-modal"
498
+ ? { ...prev, ...states[key] }
499
+ : { ...prev, [`${key}_stateController`]: states[key] }, {});
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
+ }, formatted || {}, { 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);
@@ -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 states = parseStates(props.stateController);
749
+ const formatted = Object.keys(states).reduce((prev, key) => key === "sqm-partner-info-modal"
750
+ ? { ...prev, ...states[key] }
751
+ : { ...prev, [`${key}_stateController`]: states[key] }, {});
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
+ }, formatted || {}, { arrayMerge: (_, a) => a });
803
806
  }
804
807
 
805
808
  export { WidgetEmailVerification as sqm_email_verification, PartnerInfoModal as sqm_partner_info_modal };
@@ -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 __assign=this&&this.__assign||function(){__assign=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++){t=arguments[n];for(var a in t)if(Object.prototype.hasOwnProperty.call(t,a))e[a]=t[a]}return e};return __assign.apply(this,arguments)};var __awaiter=this&&this.__awaiter||function(e,t,n,r){function a(e){return e instanceof n?e:new n((function(t){t(e)}))}return new(n||(n=Promise))((function(n,o){function i(e){try{l(r.next(e))}catch(e){o(e)}}function s(e){try{l(r["throw"](e))}catch(e){o(e)}}function l(e){e.done?n(e.value):a(e.value).then(i,s)}l((r=r.apply(e,t||[])).next())}))};var __generator=this&&this.__generator||function(e,t){var n={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},r,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(r)throw new TypeError("Generator is already executing.");while(n)try{if(r=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:n.label++;return{value:i[1],done:false};case 5:n.label++;a=i[1];i=[0];continue;case 7:i=n.ops.pop();n.trys.pop();continue;default:if(!(o=n.trys,o=o.length>0&&o[o.length-1])&&(i[0]===6||i[0]===2)){n=0;continue}if(i[0]===3&&(!o||i[1]>o[0]&&i[1]<o[3])){n.label=i[1];break}if(i[0]===6&&n.label<o[1]){n.label=o[1];o=i;break}if(o&&n.label<o[2]){n.label=o[2];n.ops.push(i);break}if(o[2])n.ops.pop();n.trys.pop();continue}i=t.call(e,n)}catch(e){i=[6,e];a=0}finally{r=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 n=$e(UpsertUserEmailMutation),r=n[0],a=n[1],o=a.loading,i=a.data,s=a.errors;var l=function(n){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,r({userInput:{id:t.id,accountId:t.accountId,email:n}})];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 n=Pn(SHOW_CODE_NAMESPACE),r=n[0],a=n[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,_=g[0],E=g[1],C=E.loading,w=E.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,n,r,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];n=e.detail.formData;r=n.get("email").toString();if(!N.test(r)){m(true);return[2]}return[4,x(r)];case 1:o=l.sent();if(!o||!o.user.email)m(true);l.label=2;case 2:if(!y)return[2];return[4,_()];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,n=e.callbacks,r=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"},r.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"},r.sendCodeErrorHeader),intl.formatMessage({id:"sendCodeErrorDescription",defaultMessage:r.sendCodeErrorDescription},{supportLink:h("a",{target:"_blank",href:"mailto:advocate-support@impact.com"},r.supportLink)})),t.initialLoading?a():h("div",{class:sheet.classes.Wrapper},h(TextSpanView,{type:"p"},r.verifyEmailHeaderText),h("sl-form",{"onSl-submit":n.submitEmail},h("div",{class:sheet.classes.InputsContainer},h("sl-input",Object.assign({exportparts:"label: input-label, base: input-base",label:r.emailLabel,value:t.email||"",type:"email",id:"email",name:"email",disabled:!!t.email||t.loading},t.error?{class:sheet.classes.ErrorInput,helpText:r.emailValidationErrorText}:{})),h("sl-button",{submit:true,class:sheet.classes.ContinueButton,loading:t.loading,exportparts:"base: primarybutton-base",type:"primary"},r.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 n=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,n(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,n,r,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 _=wn(GET_COUNTRIES,{}),E=_.data,C=_.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(((n=(t=b===null||b===void 0?void 0:b.impactConnection)===null||t===void 0?void 0:t.publisher)===null||n===void 0?void 0:n.countryCode)||""),P=I[0],N=I[1];var O=useState(((a=(r=b===null||b===void 0?void 0:b.impactConnection)===null||r===void 0?void 0:r.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=E===null||E===void 0?void 0:E.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=E===null||E===void 0?void 0:E.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 ne=b===null||b===void 0?void 0:b.impactConnection;function re(e){var t,n;var r=(n=(t=e.detail)===null||t===void 0?void 0:t.item)===null||n===void 0?void 0:n.__value;if(!r)return;N(r);A("");Q("")}function ae(e){var t,n;var r=(n=(t=e.detail)===null||t===void 0?void 0:t.item)===null||n===void 0?void 0:n.__value;if(!r)return;A(r);Q("")}function oe(){return __awaiter(this,void 0,void 0,(function(){var t,n,r,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]);r={user:{id:b.id,accountId:b.accountId},firstName:b.firstName,lastName:b.lastName,countryCode:P,currency:j};return[4,q({vars:r})];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=(n=o===null||o===void 0?void 0:o.validationErrors)===null||n===void 0?void 0:n.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&&(!(ne===null||ne===void 0?void 0:ne.connected)||!(ne===null||ne===void 0?void 0:ne.publisher));console.log(ie,"showModal condition in partner info modal");return{states:{open:ie,loading:f||C||g,submitting:S,isExistingPartner:(ne===null||ne===void 0?void 0:ne.connected)||(ne===null||ne===void 0?void 0:ne.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:re,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"),n=t[0],r=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=Object.keys(c).reduce((function(e,t){var n;return t==="sqm-partner-info-modal"?__assign(__assign({},e),c[t]):__assign(__assign({},e),(n={},n[t+"_stateController"]=c[t],n))}),{});return cjs({states:{brandName:"Test Brand",open:true,loading:false,submitting:false,isExistingPartner:false,countryCode:n,currency:o,error:l,success:false,filteredCountries:[],filteredCurrencies:[]},callbacks:{onCountryChange:function(e){var t,n;var a=(n=(t=e===null||e===void 0?void 0:e.detail)===null||t===void 0?void 0:t.item)===null||n===void 0?void 0:n.__value;if(a){r(a);i("")}},onCurrencyChange:function(e){var t,n;var r=(n=(t=e===null||e===void 0?void 0:e.detail)===null||t===void 0?void 0:t.item)===null||n===void 0?void 0:n.__value;if(r)i(r)},setCountrySearch:function(){},setCurrencySearch:function(){},onSubmit:function(){if(!n||!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;