@saasquatch/component-boilerplate 1.3.1 → 1.4.0-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
- # SaaSquatch Component Boilerplate
2
-
3
- This is a collection of essential universal hooks for use in building web components for the SaaSquatch platform.
4
-
5
- ## Documentation
6
-
7
- See [index.ts](src/index.ts) for API documentation directly in Typescript.
1
+ # SaaSquatch Component Boilerplate
2
+
3
+ This is a collection of essential universal hooks for use in building web components for the SaaSquatch platform.
4
+
5
+ ## Documentation
6
+
7
+ See [index.ts](src/index.ts) for API documentation directly in Typescript.
@@ -0,0 +1 @@
1
+ export declare function addQuery(queryObj: any): void;
@@ -0,0 +1,26 @@
1
+ import { WidgetIdent } from "./environment";
2
+ /**
3
+ * Environment provided by components hosted in a web component (`sqh-widget`)
4
+ */
5
+ export declare type SquatchPortal = typeof SquatchPortalInstance;
6
+ declare global {
7
+ interface Window {
8
+ SquatchPortal?: PortalEnv;
9
+ }
10
+ }
11
+ /**
12
+ * Portal env doesn't include User Id
13
+ */
14
+ export declare type PortalEnv = Pick<WidgetIdent, "tenantAlias" | "appDomain" | "programId"> & { portalAuthUrl: string };
15
+ export declare const SquatchPortalInstance: {
16
+ readonly localeContext: {
17
+ useContext: (host: HTMLElement, options?: Pick<import("dom-context").ListenerOptions<unknown>, "onStatus" | "pollingMs" | "attempts">) => string;
18
+ useContextState: (host: HTMLElement, initialState?: string) => readonly [string, (value: string | ((previousState?: string) => string)) => void, import("dom-context").ContextProvider<string>];
19
+ Listener: new (o: Pick<import("dom-context").ListenerOptions<string>, "element" | "onChange" | "onStatus" | "pollingMs" | "attempts">) => import("dom-context").ContextListener<string>;
20
+ listen(o: Pick<import("dom-context").ListenerOptions<string>, "element" | "onChange" | "onStatus" | "pollingMs" | "attempts">): import("dom-context").ContextListener<string>;
21
+ Provider: new (o: Pick<import("dom-context").ProviderOptions<string>, "element" | "initialState">) => import("dom-context").ContextProvider<string>;
22
+ provide(o: Pick<import("dom-context").ProviderOptions<string>, "element" | "initialState">): import("dom-context").ContextProvider<string>;
23
+ provideGlobally(next: string): void;
24
+ name: string;
25
+ };
26
+ };
@@ -29,6 +29,8 @@ export declare type GraphQlRequestError<T> = {
29
29
  rsCode: string;
30
30
  };
31
31
  classification: string;
32
+ message?: string;
33
+ code?: string;
32
34
  };
33
35
  }
34
36
  ];
@@ -0,0 +1,45 @@
1
+ import { RequestDocument } from "graphql-request/dist/types";
2
+ export declare type GqlType = RequestDocument;
3
+ export interface BaseQueryData<T = unknown> {
4
+ loading: boolean;
5
+ data?: T;
6
+ errors?: GraphQlRequestError<T>;
7
+ }
8
+ export declare type QueryData<T> = BaseQueryData<T> & {
9
+ refetch: (variables?: unknown) => unknown;
10
+ };
11
+ /**
12
+ * Note: reverse-engineered from a returned error. May not capture all error types.
13
+ */
14
+ export declare type GraphQlRequestError<T> = {
15
+ response: {
16
+ errors: [
17
+ {
18
+ message: string;
19
+ locations: [{
20
+ line: number;
21
+ column: number;
22
+ }];
23
+ path: string[];
24
+ extensions: {
25
+ apiError: {
26
+ message: string;
27
+ statusCode: number;
28
+ apiErrorCode: string;
29
+ rsCode: string;
30
+ };
31
+ classification: string;
32
+ };
33
+ }
34
+ ];
35
+ data: Partial<T>;
36
+ status: number;
37
+ };
38
+ request: {
39
+ query: string;
40
+ variables: {
41
+ [key: string]: unknown;
42
+ };
43
+ };
44
+ };
45
+ export declare function useBatchedQuery<T = any>(query: GqlType, initialState: BaseQueryData<T>): [BaseQueryData<T>, (variables: unknown) => unknown];
@@ -41,7 +41,7 @@ export interface DebouncedState<T extends (...args: any[]) => ReturnType<T>> ext
41
41
  * `wait` timeout. The `func` is invoked with the last arguments provided to the
42
42
  * debounced function. Subsequent calls to the debounced function return the
43
43
  * result of the last `func` invocation.
44
-
44
+
45
45
  *
46
46
  * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
47
47
  * for details over the differences between `debounce` and `throttle`.
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- var e=require("@saasquatch/dom-context-hooks"),n=require("dom-context"),t=require("@saasquatch/universal-hooks"),r=require("graphql-request"),a=require("jwt-decode"),o=require("@wry/equality"),i=require("graphql"),s=require("fast-memoize"),u=require("rxjs"),c=require("rxjs/operators"),d=require("nanoid"),l=require("graphql-request/dist/types"),f=require("graphql-combine-query"),m=require("history"),v=require("debounce"),p=require("jsonpointer");function g(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var h=g(a),y=g(s),w=g(f),C=g(v),b=g(p),q={current:void 0};function I(){if(void 0===q.current)throw new Error("no implementation of useHost provided");return q.current()}function P(){var e;window.squatchProgramId||(window.squatchProgramId=new n.ContextProvider({element:document.documentElement,initialState:(null==(e=window.widgetIdent)?void 0:e.programId)||void 0,contextName:"sq:program-id"}).start())}function E(){P();var n=I();return e.useDomContext(n,"sq:program-id")}function F(){return(F=Object.assign||function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e}).apply(this,arguments)}function S(e,n){return(S=Object.setPrototypeOf||function(e,n){return e.__proto__=n,e})(e,n)}function x(e,n){return n||(n=e.slice(0)),e.raw=n,e}function M(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function D(e,n){var t;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(t=function(e,n){if(e){if("string"==typeof e)return M(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?M(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)}var A=function(){return(A=Object.assign||function(e){for(var n,t=1,r=arguments.length;t<r;t++)for(var a in n=arguments[t])Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a]);return e}).apply(this,arguments)},k=new Map,j=new Map,$=!0,R=!1;function V(e){return e.replace(/[\s,]+/g," ").trim()}function O(e){var n,t,r,a=V(e);if(!k.has(a)){var o=i.parse(e,{experimentalFragmentVariables:R});if(!o||"Document"!==o.kind)throw new Error("Not a valid GraphQL document.");k.set(a,function(e){var n=new Set(e.definitions);n.forEach(function(e){e.loc&&delete e.loc,Object.keys(e).forEach(function(t){var r=e[t];r&&"object"==typeof r&&n.add(r)})});var t=e.loc;return t&&(delete t.startToken,delete t.endToken),e}((n=o,t=new Set,r=[],n.definitions.forEach(function(e){if("FragmentDefinition"===e.kind){var n=e.name.value,a=V((i=e.loc).source.body.substring(i.start,i.end)),o=j.get(n);o&&!o.has(a)?$&&console.warn("Warning: fragment with name "+n+" already exists.\ngraphql-tag enforces all fragment names across your application to be unique; read more about\nthis in the docs: http://dev.apollodata.com/core/fragments.html#unique-names"):o||j.set(n,o=new Set),o.add(a),t.has(a)||(t.add(a),r.push(e))}else r.push(e);var i}),A(A({},n),{definitions:r}))))}return k.get(a)}function N(e){for(var n=[],t=1;t<arguments.length;t++)n[t-1]=arguments[t];"string"==typeof e&&(e=[e]);var r=e[0];return n.forEach(function(n,t){r+=n&&"Document"===n.kind?n.loc.source.body:n,r+=e[t+1]}),O(r)}var L,H=N;(L=N||(N={})).gql=H,L.resetCaches=function(){k.clear(),j.clear()},L.disableFragmentWarnings=function(){$=!1},L.enableExperimentalFragmentVariables=function(){R=!0},L.disableExperimentalFragmentVariables=function(){R=!1},N.default=N;var W=N,U=1e3,Q=60*U,T=60*Q,_=24*T,J=function(e,n){n=n||{};var t=typeof e;if("string"===t&&e.length>0)return function(e){if(!((e=String(e)).length>100)){var n=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(n){var t=parseFloat(n[1]);switch((n[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*t;case"weeks":case"week":case"w":return 6048e5*t;case"days":case"day":case"d":return t*_;case"hours":case"hour":case"hrs":case"hr":case"h":return t*T;case"minutes":case"minute":case"mins":case"min":case"m":return t*Q;case"seconds":case"second":case"secs":case"sec":case"s":return t*U;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}(e);if("number"===t&&isFinite(e))return n.long?function(e){var n=Math.abs(e);return n>=_?G(e,n,_,"day"):n>=T?G(e,n,T,"hour"):n>=Q?G(e,n,Q,"minute"):n>=U?G(e,n,U,"second"):e+" ms"}(e):function(e){var n=Math.abs(e);return n>=_?Math.round(e/_)+"d":n>=T?Math.round(e/T)+"h":n>=Q?Math.round(e/Q)+"m":n>=U?Math.round(e/U)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function G(e,n,t,r){var a=n>=1.5*t;return Math.round(e/t)+" "+r+(a?"s":"")}var z,B=(function(e,n){n.formatArgs=function(n){if(n[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+n[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const t="color: "+this.color;n.splice(1,0,t,"color: inherit");let r=0,a=0;n[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&(r++,"%c"===e&&(a=r))}),n.splice(a,0,t)},n.save=function(e){try{e?n.storage.setItem("debug",e):n.storage.removeItem("debug")}catch(e){}},n.load=function(){let e;try{e=n.storage.getItem("debug")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},n.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},n.storage=function(){try{return localStorage}catch(e){}}(),n.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),n.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],n.log=console.debug||console.log||(()=>{}),e.exports=function(e){function n(e){let r,a=null;function o(...e){if(!o.enabled)return;const t=o,a=Number(new Date);t.diff=a-(r||a),t.prev=r,t.curr=a,r=a,e[0]=n.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let i=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(r,a)=>{if("%%"===r)return"%";i++;const o=n.formatters[a];return"function"==typeof o&&(r=o.call(t,e[i]),e.splice(i,1),i--),r}),n.formatArgs.call(t,e),(t.log||n.log).apply(t,e)}return o.namespace=e,o.useColors=n.useColors(),o.color=n.selectColor(e),o.extend=t,o.destroy=n.destroy,Object.defineProperty(o,"enabled",{enumerable:!0,configurable:!1,get:()=>null===a?n.enabled(e):a,set:e=>{a=e}}),"function"==typeof n.init&&n.init(o),o}function t(e,t){const r=n(this.namespace+(void 0===t?":":t)+e);return r.log=this.log,r}function r(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return n.debug=n,n.default=n,n.coerce=function(e){return e instanceof Error?e.stack||e.message:e},n.disable=function(){const e=[...n.names.map(r),...n.skips.map(r).map(e=>"-"+e)].join(",");return n.enable(""),e},n.enable=function(e){let t;n.save(e),n.names=[],n.skips=[];const r=("string"==typeof e?e:"").split(/[\s,]+/),a=r.length;for(t=0;t<a;t++)r[t]&&("-"===(e=r[t].replace(/\*/g,".*?"))[0]?n.skips.push(new RegExp("^"+e.substr(1)+"$")):n.names.push(new RegExp("^"+e+"$")))},n.enabled=function(e){if("*"===e[e.length-1])return!0;let t,r;for(t=0,r=n.skips.length;t<r;t++)if(n.skips[t].test(e))return!1;for(t=0,r=n.names.length;t<r;t++)if(n.names[t].test(e))return!0;return!1},n.humanize=J,n.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach(t=>{n[t]=e[t]}),n.names=[],n.skips=[],n.formatters={},n.selectColor=function(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t|=0;return n.colors[Math.abs(t)%n.colors.length]},n.enable(n.load()),n}(n);const{formatters:t}=e.exports;t.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}(z={exports:{}},z.exports),z.exports),K=B("sq:user-identity");function Z(){window.squatchUserIdentity||(window.squatchUserIdentity=new n.ContextProvider({element:document.documentElement,initialState:Y(),contextName:"sq:user-identity"}).start())}function X(e){if(e)try{var n,t,r=h.default(e),a=r.exp;if(function(e){return e.sub&&/.*:.*@.*:users/.test(e.sub)}(r)){var o=r.sub.match(/(.*):(.*)@(.*):users/);t=atob(o[1]),n=atob(o[2])}else(function(e){return e.user&&e.user.id&&e.user.accountId})(r)&&(t=r.user.accountId,n=r.user.id);if(!n||!t)return;if(a&&Date.now()>=1e3*a)return;return{id:n,accountId:t,jwt:e}}catch(e){return}}function Y(){var e=ln();switch(e.type){case"SquatchAndroid":case"SquatchJS2":return{id:e.widgetIdent.userId,accountId:e.widgetIdent.accountId,jwt:e.widgetIdent.token};case"SquatchPortal":var n=new URLSearchParams(document.location.search);if(n.has("jwt"))return X(n.get("jwt"));var t=localStorage.getItem("sq:user-identity");if(!t)return;try{var r=JSON.parse(t),a=X(r.jwt);return a?F({},r,a):void 0}catch(e){return}case"SquatchAdmin":case"None":return}}function ee(e){Z();var n=window.squatchUserIdentity;o.equal(n.context,e)||(dn(void 0),n.context=e),e&&"SquatchPortal"===ln().type?localStorage.setItem("sq:user-identity",JSON.stringify(e)):e||(K("Deleting user from localStorage"),localStorage.removeItem("sq:user-identity"))}function ne(){var e;return null==(e=te())?void 0:e.jwt}function te(){Z();var n=I(),t=e.useDomContext(n,"sq:user-identity"),r=X(null==t?void 0:t.jwt);return t&&!r?(ee(void 0),void dn(void 0)):t}function re(e,n){try{var t=e()}catch(e){return n(e)}return t&&t.then?t.then(void 0,n):t}var ae=function(e){var n,t;function r(n,t){var r;(r=e.call(this,n,t)||this).subject=new u.Subject;var a=new u.Subject;return r.subject.pipe(c.bufferTime(200,void 0,10)).subscribe(function(e){try{if(!e.length)return Promise.resolve();for(var n,t=ue(e),o=t.mergedQuery,s=t.mergedVariables,u=t.mergedQueryAddedEvents,c=D(t.unmergedQueryAddedEvents);!(n=c()).done;)a.next(n.value);return u.length?Promise.resolve(re(function(){return Promise.resolve(r.superRequest(o,s)).then(function(e){le(e,u)})},function(e){if(e instanceof l.ClientError){var n=function(){var n=e.response,t=n.data,r=n.errors;if(!t)return{v:me(u,e)};for(var a,o=Object.keys(t),s=[].concat(u),c=function(){var n=a.value,t=void 0;n.path.find(function(r,a,u){if(o.includes(r)){var c=se(r),d=s.findIndex(function(e){return e.id===c});if(-1===d)return!1;o.splice(a,1),t=s.splice(d,1)[0];var f=ce(e.response.data,t);u[a]=ie(u[a],c);var m=t.query,v=t.variables,p=F({},e.response,{errors:[n],data:f,path:u}),g=new l.ClientError(p,{query:"string"!=typeof m?i.print(m):m,variables:v});return fe(t,g),!0}return!1})},d=D(r);!(a=d()).done;)c();le(t,s)}();if("object"==typeof n)return n.v}else me(u,e)})):Promise.resolve()}catch(e){return Promise.reject(e)}}),a.subscribe(function(e){try{var n=re(function(){return Promise.resolve(r.superRequest(e.query,e.variables)).then(function(n){de(n,e)})},function(n){fe(e,n)});return Promise.resolve(n&&n.then?n.then(function(){}):void 0)}catch(e){return Promise.reject(e)}}),r}t=e,(n=r).prototype=Object.create(t.prototype),n.prototype.constructor=n,S(n,t);var a=r.prototype;return a.superRequest=function(n,t){return e.prototype.request.call(this,n,t)},a.request=function(e,n){var t=this;return new Promise(function(r,a){var o={query:e,variables:n,id:oe(),resolve:r,reject:a};t.subject.next(o)})},r}(r.GraphQLClient),oe=function(){return d.nanoid().replace(/[-_]/g,"")},ie=function(e,n){return e.replace("_"+n,"")},se=function(e){var n=e.split("_");return n[n.length-1]},ue=function(e){var n=[],t=[],r=e.reduce(function(e,r){var a=r.query,o=r.variables,s=r.id;try{var u="string"==typeof a?i.parse(a):a,c=u.definitions.find(function(e){return"FragmentDefinition"===e.kind}),d="string"==typeof a?a:i.print(a),l=/@/.test(d);if(c||l)return t.push(r),e;var f=function(e){return function(e,n){return e+"_"+n}(e,s)};return e=e.addN(u,[o],f,f),n.push(r),e}catch(n){return t.push(r),e}},w.default("BatchedQuery")),a=r.document,o=r.variables;return{mergedQuery:a&&i.print(a),mergedVariables:o,mergedQueryAddedEvents:n,unmergedQueryAddedEvents:t}},ce=function(e,n){if(!e)return e;var t=Object.keys(e),r=n.id;return t.reduce(function(n,t){var a;return t.endsWith(r)&&(n=F({},n,((a={})[ie(t,r)]=e[t],a))),n},{})},de=function(e,n){(0,n.resolve)(e)},le=function(e,n){for(var t,r=D(n);!(t=r()).done;){var a=t.value,o=ce(e,a);a.resolve(o)}},fe=function(e,n){(0,e.reject)(n)},me=function(e,n){for(var t,r=D(e);!(t=r()).done;)(0,t.value.reject)(n)},ve=y.default(function(e,n,t){return new ae(e+"/api/v1/"+n+"/graphql",{headers:{Authorization:"Bearer "+(t||"")}})});function pe(e,n){switch(n.type){case"loading":return{data:void 0,errors:void 0,loading:!0};case"data":return{data:n.payload,errors:void 0,loading:!1};case"errors":return{data:void 0,errors:n.payload,loading:!1}}}function ge(n,r){var a,o,i,s,u,c,d=(a=ne(),o=mn(),i=fn(),s=ve(o,i,a),u=I(),null!=(c=e.useDomContext(u,"sq:graphql-client",{attempts:0}))?c:s),l=t.useReducer(pe,r),f=l[1];return[l[0],t.useCallback(function(e,t){void 0===t&&(t=!1);try{if(!d)return f({type:"errors",payload:new Error("No GraphQL client found")}),Promise.resolve();var r=function(r,a){try{var o=(t||f({type:"loading"}),Promise.resolve(d.request(n,e)).then(function(e){f({type:"data",payload:e})}))}catch(e){return a(e)}return o&&o.then?o.then(void 0,a):o}(0,function(e){f({type:"errors",payload:e})});return Promise.resolve(r&&r.then?r.then(function(){}):void 0)}catch(e){return Promise.reject(e)}},[d,n,f])]}var he,ye={loading:!1,data:void 0,errors:void 0};function we(e){var n=ge(e,ye);return[n[1],n[0]]}var Ce,be,qe,Ie,Pe=W(he||(he=x(["\n mutation AuthenticateWithEmailAndPassword(\n $email: String!\n $password: String!\n ) {\n authenticateManagedIdentityWithEmailAndPassword(\n authenticateManagedIdentityWithEmailAndPasswordInput: {\n email: $email\n password: $password\n }\n ) {\n token\n email\n emailVerified\n sessionData\n }\n }\n"]))),Ee=W(Ce||(Ce=x(["\n mutation RegisterWithEmailAndPassword(\n $email: String!\n $password: String!\n $formData: RSJsonNode\n $redirectPath: String\n ) {\n registerManagedIdentityWithEmailAndPassword(\n registerManagedIdentityWithEmailAndPasswordInput: {\n email: $email\n password: $password\n formData: $formData\n redirectPath: $redirectPath\n }\n ) {\n token\n email\n emailVerified\n sessionData\n }\n }\n"]))),Fe=W(be||(be=x(["\n mutation ChangePassword($password: String!) {\n changeManagedIdentityPassword(\n changeManagedIdentityPasswordInput: { password: $password }\n ) {\n success\n }\n }\n"]))),Se=W(qe||(qe=x(["\n mutation ResetPassword($oobCode: String!, $password: String!) {\n resetManagedIdentityPassword(\n resetManagedIdentityPasswordInput: {\n password: $password\n oobCode: $oobCode\n }\n ) {\n token\n email\n emailVerified\n sessionData\n }\n }\n"]))),xe=W(Ie||(Ie=x(["\n mutation VerifyPasswordResetCode($oobCode: String!) {\n verifyManagedIdentityPasswordResetCode(\n verifyManagedIdentityPasswordResetCodeInput: { oobCode: $oobCode }\n ) {\n success\n }\n }\n"])));function Me(e){var n=e.skip,r=void 0!==n&&n,a=e.update,i=e.variables;t.useEffect(function(){var e=function(e){!r&&a(i,!0)};return document.addEventListener("sq:refresh",e),function(){return document.removeEventListener("sq:refresh",e)}},function(e){var n=t.useRef(e),r=t.useRef(0);return o.equal(e,n.current)||(n.current=e,r.current+=1),t.useMemo(function(){return n.current},[r.current])}([i,a,r]))}var De,Ae={loading:!1,data:void 0,errors:void 0},ke=Symbol();function je(e){var n=ge(e,Ae),r=n[0],a=n[1],o=t.useRef(ke);return Me({skip:o.current===ke,update:a,variables:o.current}),[a,F({},r,{refetch:function(e){o.current=e,a(e)}})]}var $e,Re=W(De||(De=x(["\n query ManagedIdentity {\n managedIdentity {\n email\n emailVerified\n sessionData\n }\n }\n"])));function Ve(){var e=te(),n=je(Re),r=n[0],a=n[1],o=a.loading,i=a.data,s=a.errors,u=a.refetch;return t.useEffect(function(){null!=i&&i.managedIdentity&&ee(F({},e,{managedIdentity:i.managedIdentity}))},[null==i?void 0:i.managedIdentity]),[t.useCallback(function(){return r({})},[r]),{loading:o,data:i,errors:s,refetch:u}]}var Oe,Ne,Le=W($e||($e=x(["\n mutation VerifyEmail($oobCode: String!) {\n verifyManagedIdentityEmail(\n verifyManagedIdentityEmailInput: { oobCode: $oobCode }\n ) {\n success\n }\n }\n"]))),He=W(Oe||(Oe=x(["\n mutation RequestPasswordResetEmail(\n $email: String!\n $urlParams: RSJsonNode\n $redirectPath: String\n ) {\n requestManagedIdentityPasswordResetEmail(\n requestManagedIdentityPasswordResetEmailInput: {\n email: $email\n urlParams: $urlParams\n redirectPath: $redirectPath\n }\n ) {\n success\n }\n }\n"]))),We=W(Ne||(Ne=x(["\n mutation RequestVerificationEmail(\n $email: String!\n $urlParams: RSJsonNode\n $redirectPath: String\n ) {\n requestManagedIdentityVerificationEmail(\n requestManagedIdentityVerificationEmailInput: {\n email: $email\n urlParams: $urlParams\n redirectPath: $redirectPath\n }\n ) {\n success\n }\n }\n"])));function Ue(e,n){var r=t.useRef();return r.current&&o.equal(n,r.current.key)||(r.current={key:n,value:e()}),r.current.value}function Qe(){return t.useReducer(function(e){return e+1},0)}function Te(e){for(var n,t=D(Object.getOwnPropertyNames(e));!(n=t()).done;){var r=e[n.value];r&&"object"==typeof r&&Te(r)}return Object.freeze(e)}var _e={loading:!0,data:void 0,errors:void 0};function Je(e,n,t){var r=ge(e,_e),a=r[0],o=r[1],i=Qe(),s=i[1];return Ue(function(){!t&&o(n)},[e,n,o,i[0],t]),Me({skip:t,update:o,variables:n}),Te(F({},a,{refetch:s}))}function Ge(){return window.squatchHistory=window.squatchHistory||function(){switch(ln().type){case"SquatchPortal":return m.createBrowserHistory();default:return m.createMemoryHistory()}}(),window.squatchHistory}var ze,Be={createHref:function(){var e;return(e=Ge()).createHref.apply(e,[].slice.call(arguments))},push:function(){var e;return(e=Ge()).push.apply(e,[].slice.call(arguments))},replace:function(){var e;return(e=Ge()).replace.apply(e,[].slice.call(arguments))},go:function(){var e;return(e=Ge()).go.apply(e,[].slice.call(arguments))},back:function(){return Ge().back()},forward:function(){var e;return(e=Ge()).forward.apply(e,[].slice.call(arguments))}};function Ke(e){var n=t.useState({limit:e.limit,offset:e.offset}),r=n[0],a=n[1],o=r.offset,i=r.limit,s=function(e,n){return e*n},u=function(e,n){return Math.ceil(e/n)||0};return{limit:i,setLimit:function(e){var n=u(o,e),t=s(e,n);a(F({},r,{limit:e,offset:t}))},offset:o,setCurrentPage:function(e){var n=s(e,i);a(function(e){return F({},e,{offset:n})})},calculatePagination:function(e,n){var t=u(o,i),r=function(e,n){return Math.ceil(e/n)||0}(n,i),a=0===e?"0":e>1?o+1+"-"+(o+e):""+(o+1);return{currentPage:t,pageCount:r,rangeOnPage:a,pageProgress:a+" of "+n}}}}function Ze(e,n){return e===n}function Xe(e,n,r){void 0===n&&(n=0),void 0===r&&(r={leading:!1});var a=t.useMemo(function(){return C.default(e,n,r.leading)},[e,n,r.leading]);return{flush:a.flush,cancel:a.clear,callback:a}}var Ye,en,nn,tn,rn=r.gql(ze||(ze=x(["\n mutation ($eventMeta: UserAnalyticsEvent!) {\n createUserAnalyticsEvent(eventMeta: $eventMeta)\n }\n"]))),an=B("sq:useForm"),on=r.gql(Ye||(Ye=x(["\n query ($key: String!) {\n form(key: $key) {\n schema\n initialData {\n initialData\n isEnabled\n isEnabledErrorMessage\n }\n }\n }\n"]))),sn=r.gql(en||(en=x(["\n mutation ($formSubmissionInput: FormSubmissionInput!) {\n submitForm(formSubmissionInput: $formSubmissionInput) {\n success\n results {\n ... on FormHandlerSubmissionResult {\n formHandler {\n name\n endpointUrl\n integration {\n name\n }\n }\n result\n }\n ... on FormHandlerError {\n formHandler {\n name\n endpointUrl\n integration {\n name\n }\n }\n errorType\n error\n errorCode\n }\n }\n }\n }\n"]))),un=r.gql(nn||(nn=x(["\n query ($formValidationInput: FormValidationInput!) {\n validateForm(formValidationInput: $formValidationInput) {\n valid\n results {\n ... on FormHandlerValidationResult {\n formHandler {\n name\n endpointUrl\n integration {\n name\n }\n }\n result\n }\n ... on FormHandlerError {\n formHandler {\n name\n endpointUrl\n integration {\n name\n }\n }\n errorType\n error\n errorCode\n }\n }\n }\n }\n"]))),cn=r.gql(tn||(tn=x(["\n query {\n viewer {\n ... on User {\n locale\n }\n }\n }\n"])));function dn(e){var n=window.squatchLocale;n&&(n.context=e)}function ln(){var e,n;return window.SquatchAndroid?{type:"SquatchAndroid",android:window.SquatchAndroid,widgetIdent:window.widgetIdent}:window.SquatchPortal?{type:"SquatchPortal",env:window.SquatchPortal}:window.SquatchAdmin?{type:"SquatchAdmin",adminSDK:window.SquatchAdmin}:window.widgetIdent&&"demo"!==(null==(e=window.widgetIdent)?void 0:e.env)?{type:"SquatchJS2",api:null==(n=window.frameElement)?void 0:n.squatchJsApi,widgetIdent:window.widgetIdent}:{type:"None"}}function fn(){var e=ln();switch(e.type){case"SquatchAndroid":case"SquatchJS2":return e.widgetIdent.tenantAlias;case"SquatchAdmin":case"None":return"demo";case"SquatchPortal":return e.env.tenantAlias}}function mn(){var e,n=ln();switch(n.type){case"SquatchAndroid":case"SquatchJS2":return n.widgetIdent.appDomain;case"SquatchPortal":return(null==(e=n.env)?void 0:e.appDomain)||"https://app.referralsaasquatch.com";case"SquatchAdmin":case"None":return"https://app.referralsaasquatch.com"}}function vn(){var e=ln();switch(e.type){case"SquatchJS2":return e.widgetIdent.engagementMedium||"EMBED";case"SquatchAndroid":case"SquatchPortal":case"SquatchAdmin":case"None":return"EMBED"}}exports.BatchedGraphQLClient=ae,exports.GRAPHQL_CONTEXT="sq:graphql-client",exports.getEnvironmentSDK=ln,exports.isDemo=function(){var e=ln();return"None"===e.type||"SquatchAdmin"===e.type},exports.memoizedGraphQLClient=ve,exports.navigation=Be,exports.setProgramId=function(e){P(),window.squatchProgramId.context=e},exports.setUseHostImplementation=function(e){if(!e)throw new Error("Must supply an implementation");if("function"!=typeof e)throw new Error("implementation must be a function");q.current=e},exports.setUserIdentity=ee,exports.useAppDomain=mn,exports.useAuthenticateWithEmailAndPasswordMutation=function(){var e=we(Pe),n=e[0],r=e[1],a=r.loading,o=r.data,i=r.errors;return t.useEffect(function(){if(null!=o&&o.authenticateManagedIdentityWithEmailAndPassword){var e=o.authenticateManagedIdentityWithEmailAndPassword,n=e.token,t=h.default(n).user;ee({jwt:n,id:t.id,accountId:t.accountId,managedIdentity:{email:e.email,emailVerified:e.emailVerified,sessionData:e.sessionData}})}},[null==o?void 0:o.authenticateManagedIdentityWithEmailAndPassword]),[n,{loading:a,data:o,errors:i}]},exports.useChangePasswordMutation=function(){var e=we(Fe),n=e[1];return[e[0],{loading:n.loading,data:n.data,errors:n.errors}]},exports.useCurrentPage=function(){var e=Qe()[1];return t.useEffect(function(){return Ge().listen(function(){e()})},[]),Ge().location},exports.useDebounce=function(e,n,r){var a=r&&r.equalityFn||Ze,o=t.useState(e),i=o[0],s=o[1],u=Xe(t.useCallback(function(e){return s(e)},[]),n,r),c=t.useRef(e);return t.useEffect(function(){a(c.current,e)||(u.callback(e),c.current=e)},[e,u,a]),[i,{cancel:u.cancel,flush:u.flush}]},exports.useDebouncedCallback=Xe,exports.useEngagementMedium=vn,exports.useForm=function(e){var n,r,a,o,i=function(e){try{return Promise.resolve(C({formValidationInput:{key:s,formData:e}})).then(function(){})}catch(e){return Promise.reject(e)}},s=e.formKey,u=e.formRef,c=e.autoSubmit,d=void 0!==c&&c,l=je(on),f=l[0],m=l[1],v=m.data,p=m.loading,g=we(sn),h=g[0],y=g[1],w=je(un),C=w[0],q=w[1],I=t.useReducer(function(e,n){return F({},e,n)},{enabled:!1,validating:!1,valid:!0,validationMessage:"",error:"",disabledMessage:"",formData:{},validationData:q,submitData:y}),P=I[0],E=I[1],S=P.enabled,x=P.disabledMessage,M=P.validating,A=P.valid,k=P.error,j=P.formData;return Ue(function(){an("submitData useEffect",y),E({submitData:y})},[y]),Ue(function(){an("validationData useEffect",q),E({validationData:q})},[q]),t.useEffect(function(){!p&&v&&function(){var n,t,r,a,o;E({enabled:null==v||null==(n=v.form.initialData)?void 0:n.isEnabled,disabledMessage:null==v||null==(t=v.form)||null==(r=t.initialData)?void 0:r.isEnabledErrorMessage});var i=u;if(i){var s=null==v||null==(a=v.form)||null==(o=a.initialData)?void 0:o.initialData;void 0!==e.setInitialData?e.setInitialData(i,s):function(e,n){try{var t=e.elements,r=new FormData(e);an({htmlForm:e,formContent:r}),null==r||r.forEach(function(e,r){an({value:e,key:r,inputs:t});var a=t.namedItem(r);try{"checkbox"==a.type?a.checked=b.default.get(n,r):a.value=b.default.get(n,r)||""}catch(e){an("no initialData found for key",r)}}),Promise.resolve()}catch(e){return Promise.reject(e)}}(i,s)}}()},[p]),t.useEffect(function(){var e,n,t,r,a,o;P.validationData&&(E({validating:!1,valid:(null==(e=P.validationData)||null==(n=e.data)||null==(t=n.validateForm)?void 0:t.valid)||!1}),d&&null!=(r=P.validationData)&&null!=(a=r.data)&&null!=(o=a.validateForm)&&o.valid&&h({formSubmissionInput:{key:s,formData:j}}))},[null==(n=P.validationData)||null==(r=n.data)||null==(a=r.validateForm)?void 0:a.valid]),{states:{enabled:S,disabledMessage:x,loadingForm:p,validating:M,valid:A,error:k,validationData:P.validationData,submitData:P.submitData},data:{formKey:s,schema:null==v||null==(o=v.form)?void 0:o.schema},callbacks:{getForm:f,handleSubmit:function(e){try{e.preventDefault(),E({validating:!0});var n=e.target;an("submit form",n);for(var t,r=new FormData(n),a={},o=D(r.entries());!(t=o()).done;){var s=t.value;b.default.set(a,s[0],s[1])}return E({formData:a}),Promise.resolve(i(a)).then(function(){})}catch(e){return Promise.reject(e)}},validateForm:i,submitForm:function(e){try{return Promise.resolve(h({formSubmissionInput:{key:s,formData:e}})).then(function(){})}catch(e){return Promise.reject(e)}},setFormState:E,getValidationErrors:function(){var e,n,t,r,a=null==q||null==(e=q.data)||null==(n=e.validateForm)||null==(t=n.results[0])||null==(r=t.result)?void 0:r.errors;function o(e){return null==a?void 0:a.filter(function(n){return n.instanceLocation.substring(1).startsWith(""+e)})}return{getErrorAtPath:function(e){return null==a?void 0:a.filter(function(n){return n.instanceLocation.substring(1)===e})},getSubErrorsAtPath:o,hasSubErrors:function(e){var n;return(null==(n=o(e))?void 0:n.length)>0}}},getSubmissionErrors:function(){var e;if(!P.submitData)return[];var n=null==(e=P.submitData.data)?void 0:e.submitForm.results;return(null==n?void 0:n.map(function(e){var n,t,r,a,o,i,s,u=null==(n=e.result)||null==(t=n.results)?void 0:t.flatMap(function(e){return!e.success&&e.message}).filter(function(e){return e}),c=null==(r=e.result)||null==(a=r.results)?void 0:a.flatMap(function(e){return!e.success&&{error:e.error,errorType:e.errorType,errorCode:e.errorCode}}).filter(function(e){return e.error});return{integration:null==(o=e.formHandler)||null==(i=o.integration)?void 0:i.name,formHandler:null==(s=e.formHandler)?void 0:s.name,messages:u,errors:c}}))||[]}}}},exports.useHost=I,exports.useLazyQuery=je,exports.useLocale=function(){!function(){var e,r=window.squatchLocale,a=te();t.useEffect(function(){if(!a&&r)return r.context=void 0;s({})},[a]);var o,i=je(cn),s=i[0],u=i[1].data,c=null==u||null==(e=u.viewer)?void 0:e.locale;r?c!==r.context&&(r.context=c):window.squatchLocale=new n.ContextProvider({element:document.documentElement,initialState:c||(null==(o=window.widgetIdent)?void 0:o.locale)||void 0,contextName:"sq:locale"}).start()}();var r=I();return e.useDomContext(r,"sq:locale")},exports.useManagedIdentityQuery=Ve,exports.useMutation=we,exports.usePaginatedQuery=function(e,n,t,r,a){var o;void 0===r&&(r={}),void 0===a&&(a=!1);var i=Ke(t),s=i.limit,u=i.setLimit,c=i.setCurrentPage,d=i.calculatePagination,l=Je(e,F({limit:s,offset:i.offset},r),a),f=l.loading,m=l.errors,v=l.refetch,p=n(l.data),g=d((null==p||null==(o=p.data)?void 0:o.length)||0,(null==p?void 0:p.totalCount)||0);return{envelope:p,states:{errors:m,loading:f,limit:s,currentPage:g.currentPage,pageCount:g.pageCount,pageProgress:g.pageProgress},callbacks:{refetch:v,setLimit:u,setCurrentPage:c}}},exports.usePagination=Ke,exports.useProgramId=E,exports.useQuery=Je,exports.useRefreshDispatcher=function(){var e=I();return{refresh:t.useCallback(function(){e.dispatchEvent(new CustomEvent("sq:refresh",{bubbles:!0,composed:!0,cancelable:!0,detail:{}}))},[e])}},exports.useRegisterWithEmailAndPasswordMutation=function(){var e=we(Ee),n=e[0],r=e[1],a=r.loading,o=r.data,i=r.errors;return t.useEffect(function(){if(null!=o&&o.registerManagedIdentityWithEmailAndPassword){var e=o.registerManagedIdentityWithEmailAndPassword,n=e.token,t=h.default(n).user;ee({jwt:n,id:t.id,accountId:t.accountId,managedIdentity:{email:e.email,emailVerified:e.emailVerified,sessionData:e.sessionData}})}},[null==o?void 0:o.registerManagedIdentityWithEmailAndPassword]),[n,{loading:a,data:o,errors:i}]},exports.useRequestPasswordResetEmailMutation=function(){return we(He)},exports.useRequestVerificationEmailMutation=function(){return we(We)},exports.useResetPasswordMutation=function(){var e=we(Se),n=e[0],r=e[1],a=r.loading,o=r.data,i=r.errors;return t.useEffect(function(){if(null!=o&&o.resetManagedIdentityPassword){var e=o.resetManagedIdentityPassword,n=e.token,t=h.default(n).user;ee({jwt:n,id:t.id,accountId:t.accountId,managedIdentity:{email:e.email,emailVerified:e.emailVerified,sessionData:e.sessionData}})}},[null==o?void 0:o.resetManagedIdentityPassword]),[n,{loading:a,data:o,errors:i}]},exports.useShareEvent=function(){var e=vn(),n=te(),t=E(),r=we(rn)[0];return n?function(a){r({eventMeta:{id:n.id,accountId:n.accountId,programId:t,type:"USER_REFERRAL_PROGRAM_ENGAGEMENT_EVENT",meta:{engagementMedium:e,shareMedium:a}}})}:function(){}},exports.useTenantAlias=fn,exports.useTick=Qe,exports.useToken=ne,exports.useUserIdentity=te,exports.useVerifyEmailMutation=function(){var e,n=Ve()[0],r=we(Le),a=r[0],o=r[1],i=o.loading,s=o.data,u=o.errors;return t.useEffect(function(){var e;null!=s&&null!=(e=s.verifyManagedIdentityEmail)&&e.success&&n()},[null==s||null==(e=s.verifyManagedIdentityEmail)?void 0:e.success]),[a,{loading:i,data:s,errors:u}]},exports.useVerifyPasswordResetCodeMutation=function(){return we(xe)};
1
+ var e=require("@saasquatch/dom-context-hooks"),n=require("dom-context"),t=require("@saasquatch/universal-hooks"),r=require("graphql-request"),a=require("jwt-decode"),o=require("@wry/equality"),i=require("graphql"),s=require("fast-memoize"),u=require("rxjs"),c=require("rxjs/operators"),d=require("nanoid"),l=require("graphql-request/dist/types"),f=require("graphql-combine-query"),m=require("history"),v=require("debounce"),p=require("jsonpointer");function g(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var h,y=g(a),w=g(s),C=g(f),b=g(v),q=g(p),I={current:void 0};function P(){if(void 0===I.current)throw new Error("no implementation of useHost provided");return I.current()}function E(){var e;window.squatchProgramId||(window.squatchProgramId=new n.ContextProvider({element:document.documentElement,initialState:(null==(e=window.widgetIdent)?void 0:e.programId)||void 0,contextName:"sq:program-id"}).start())}function F(){E();var n=P();return e.useDomContext(n,"sq:program-id")}function S(){return(S=Object.assign||function(e){for(var n=1;n<arguments.length;n++){var t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e}).apply(this,arguments)}function x(e,n){return(x=Object.setPrototypeOf||function(e,n){return e.__proto__=n,e})(e,n)}function M(e,n){return n||(n=e.slice(0)),e.raw=n,e}function D(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function A(e,n){var t;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(t=function(e,n){if(e){if("string"==typeof e)return D(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?D(e,n):void 0}}(e))||n&&e&&"number"==typeof e.length){t&&(e=t);var r=0;return function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)}var k=r.gql(h||(h=M(["\n query {\n viewer {\n ... on User {\n locale\n }\n }\n }\n"])));function j(e){var n=window.squatchLocale;n&&(n.context=e)}function $(){var e,n;return window.SquatchAndroid?{type:"SquatchAndroid",android:window.SquatchAndroid,widgetIdent:window.widgetIdent}:window.SquatchPortal?{type:"SquatchPortal",env:window.SquatchPortal}:window.SquatchAdmin?{type:"SquatchAdmin",adminSDK:window.SquatchAdmin}:window.widgetIdent&&"demo"!==(null==(e=window.widgetIdent)?void 0:e.env)?{type:"SquatchJS2",api:null==(n=window.frameElement)?void 0:n.squatchJsApi,widgetIdent:window.widgetIdent}:{type:"None"}}function R(){var e=$();switch(e.type){case"SquatchAndroid":case"SquatchJS2":return e.widgetIdent.tenantAlias;case"SquatchAdmin":case"None":return"demo";case"SquatchPortal":return e.env.tenantAlias}}function V(){var e,n=$();switch(n.type){case"SquatchAndroid":case"SquatchJS2":return n.widgetIdent.appDomain;case"SquatchPortal":return(null==(e=n.env)?void 0:e.appDomain)||"https://app.referralsaasquatch.com";case"SquatchAdmin":case"None":return"https://app.referralsaasquatch.com"}}function O(){var e=$();switch(e.type){case"SquatchJS2":return e.widgetIdent.engagementMedium||"EMBED";case"SquatchAndroid":case"SquatchPortal":case"SquatchAdmin":case"None":return"EMBED"}}var N=1e3,L=60*N,H=60*L,W=24*H,U=function(e,n){n=n||{};var t=typeof e;if("string"===t&&e.length>0)return function(e){if(!((e=String(e)).length>100)){var n=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(n){var t=parseFloat(n[1]);switch((n[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*t;case"weeks":case"week":case"w":return 6048e5*t;case"days":case"day":case"d":return t*W;case"hours":case"hour":case"hrs":case"hr":case"h":return t*H;case"minutes":case"minute":case"mins":case"min":case"m":return t*L;case"seconds":case"second":case"secs":case"sec":case"s":return t*N;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}(e);if("number"===t&&isFinite(e))return n.long?function(e){var n=Math.abs(e);return n>=W?Q(e,n,W,"day"):n>=H?Q(e,n,H,"hour"):n>=L?Q(e,n,L,"minute"):n>=N?Q(e,n,N,"second"):e+" ms"}(e):function(e){var n=Math.abs(e);return n>=W?Math.round(e/W)+"d":n>=H?Math.round(e/H)+"h":n>=L?Math.round(e/L)+"m":n>=N?Math.round(e/N)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function Q(e,n,t,r){var a=n>=1.5*t;return Math.round(e/t)+" "+r+(a?"s":"")}var T,_=(function(e,n){n.formatArgs=function(n){if(n[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+n[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const t="color: "+this.color;n.splice(1,0,t,"color: inherit");let r=0,a=0;n[0].replace(/%[a-zA-Z%]/g,e=>{"%%"!==e&&(r++,"%c"===e&&(a=r))}),n.splice(a,0,t)},n.save=function(e){try{e?n.storage.setItem("debug",e):n.storage.removeItem("debug")}catch(e){}},n.load=function(){let e;try{e=n.storage.getItem("debug")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},n.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},n.storage=function(){try{return localStorage}catch(e){}}(),n.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),n.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],n.log=console.debug||console.log||(()=>{}),e.exports=function(e){function n(e){let r,a=null;function o(...e){if(!o.enabled)return;const t=o,a=Number(new Date);t.diff=a-(r||a),t.prev=r,t.curr=a,r=a,e[0]=n.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let i=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,(r,a)=>{if("%%"===r)return"%";i++;const o=n.formatters[a];return"function"==typeof o&&(r=o.call(t,e[i]),e.splice(i,1),i--),r}),n.formatArgs.call(t,e),(t.log||n.log).apply(t,e)}return o.namespace=e,o.useColors=n.useColors(),o.color=n.selectColor(e),o.extend=t,o.destroy=n.destroy,Object.defineProperty(o,"enabled",{enumerable:!0,configurable:!1,get:()=>null===a?n.enabled(e):a,set:e=>{a=e}}),"function"==typeof n.init&&n.init(o),o}function t(e,t){const r=n(this.namespace+(void 0===t?":":t)+e);return r.log=this.log,r}function r(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return n.debug=n,n.default=n,n.coerce=function(e){return e instanceof Error?e.stack||e.message:e},n.disable=function(){const e=[...n.names.map(r),...n.skips.map(r).map(e=>"-"+e)].join(",");return n.enable(""),e},n.enable=function(e){let t;n.save(e),n.names=[],n.skips=[];const r=("string"==typeof e?e:"").split(/[\s,]+/),a=r.length;for(t=0;t<a;t++)r[t]&&("-"===(e=r[t].replace(/\*/g,".*?"))[0]?n.skips.push(new RegExp("^"+e.substr(1)+"$")):n.names.push(new RegExp("^"+e+"$")))},n.enabled=function(e){if("*"===e[e.length-1])return!0;let t,r;for(t=0,r=n.skips.length;t<r;t++)if(n.skips[t].test(e))return!1;for(t=0,r=n.names.length;t<r;t++)if(n.names[t].test(e))return!0;return!1},n.humanize=U,n.destroy=function(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")},Object.keys(e).forEach(t=>{n[t]=e[t]}),n.names=[],n.skips=[],n.formatters={},n.selectColor=function(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t|=0;return n.colors[Math.abs(t)%n.colors.length]},n.enable(n.load()),n}(n);const{formatters:t}=e.exports;t.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}}(T={exports:{}},T.exports),T.exports),J=_("sq:user-identity");function G(){window.squatchUserIdentity||(window.squatchUserIdentity=new n.ContextProvider({element:document.documentElement,initialState:B(),contextName:"sq:user-identity"}).start())}function z(e){if(e)try{var n,t,r=y.default(e),a=r.exp;if(function(e){return e.sub&&/.*:.*@.*:users/.test(e.sub)}(r)){var o=r.sub.match(/(.*):(.*)@(.*):users/);t=atob(o[1]),n=atob(o[2])}else(function(e){return e.user&&e.user.id&&e.user.accountId})(r)&&(t=r.user.accountId,n=r.user.id);if(!n||!t)return;if(a&&Date.now()>=1e3*a)return;return{id:n,accountId:t,jwt:e}}catch(e){return}}function B(){var e=$();switch(e.type){case"SquatchAndroid":case"SquatchJS2":return{id:e.widgetIdent.userId,accountId:e.widgetIdent.accountId,jwt:e.widgetIdent.token};case"SquatchPortal":var n=new URLSearchParams(document.location.search);if(n.has("jwt"))return z(n.get("jwt"));var t=localStorage.getItem("sq:user-identity");if(!t)return;try{var r=JSON.parse(t),a=z(r.jwt);return a?S({},r,a):void 0}catch(e){return}case"SquatchAdmin":case"None":return}}function K(e){G();var n=window.squatchUserIdentity;o.equal(n.context,e)||(j(void 0),n.context=e),e&&"SquatchPortal"===$().type?localStorage.setItem("sq:user-identity",JSON.stringify(e)):e||(J("Deleting user from localStorage"),localStorage.removeItem("sq:user-identity"))}function Z(){var e;return null==(e=X())?void 0:e.jwt}function X(){G();var n=P(),t=e.useDomContext(n,"sq:user-identity"),r=z(null==t?void 0:t.jwt);return t&&!r?(K(void 0),void j(void 0)):t}var Y=function(){return(Y=Object.assign||function(e){for(var n,t=1,r=arguments.length;t<r;t++)for(var a in n=arguments[t])Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a]);return e}).apply(this,arguments)},ee=new Map,ne=new Map,te=!0,re=!1;function ae(e){return e.replace(/[\s,]+/g," ").trim()}function oe(e){var n,t,r,a=ae(e);if(!ee.has(a)){var o=i.parse(e,{experimentalFragmentVariables:re});if(!o||"Document"!==o.kind)throw new Error("Not a valid GraphQL document.");ee.set(a,function(e){var n=new Set(e.definitions);n.forEach(function(e){e.loc&&delete e.loc,Object.keys(e).forEach(function(t){var r=e[t];r&&"object"==typeof r&&n.add(r)})});var t=e.loc;return t&&(delete t.startToken,delete t.endToken),e}((n=o,t=new Set,r=[],n.definitions.forEach(function(e){if("FragmentDefinition"===e.kind){var n=e.name.value,a=ae((i=e.loc).source.body.substring(i.start,i.end)),o=ne.get(n);o&&!o.has(a)?te&&console.warn("Warning: fragment with name "+n+" already exists.\ngraphql-tag enforces all fragment names across your application to be unique; read more about\nthis in the docs: http://dev.apollodata.com/core/fragments.html#unique-names"):o||ne.set(n,o=new Set),o.add(a),t.has(a)||(t.add(a),r.push(e))}else r.push(e);var i}),Y(Y({},n),{definitions:r}))))}return ee.get(a)}function ie(e){for(var n=[],t=1;t<arguments.length;t++)n[t-1]=arguments[t];"string"==typeof e&&(e=[e]);var r=e[0];return n.forEach(function(n,t){r+=n&&"Document"===n.kind?n.loc.source.body:n,r+=e[t+1]}),oe(r)}var se,ue=ie;(se=ie||(ie={})).gql=ue,se.resetCaches=function(){ee.clear(),ne.clear()},se.disableFragmentWarnings=function(){te=!1},se.enableExperimentalFragmentVariables=function(){re=!0},se.disableExperimentalFragmentVariables=function(){re=!1},ie.default=ie;var ce=ie;function de(e,n){try{var t=e()}catch(e){return n(e)}return t&&t.then?t.then(void 0,n):t}var le=function(e){var n,t;function r(n,t){var r;(r=e.call(this,n,t)||this).subject=new u.Subject;var a=new u.Subject;return r.subject.pipe(c.bufferTime(200,void 0,10)).subscribe(function(e){try{if(!e.length)return Promise.resolve();for(var n,t=pe(e),o=t.mergedQuery,s=t.mergedVariables,u=t.mergedQueryAddedEvents,c=A(t.unmergedQueryAddedEvents);!(n=c()).done;)a.next(n.value);return u.length?Promise.resolve(de(function(){return Promise.resolve(r.superRequest(o,s)).then(function(e){ye(e,u)})},function(e){if(e instanceof l.ClientError){var n=function(){var n=e.response,t=n.data,r=n.errors;if(!t)return{v:Ce(u,e)};for(var a,o=Object.keys(t),s=[].concat(u),c=function(){var n=a.value,t=void 0;n.path.find(function(r,a,u){if(o.includes(r)){var c=ve(r),d=s.findIndex(function(e){return e.id===c});if(-1===d)return!1;o.splice(a,1),t=s.splice(d,1)[0];var f=ge(e.response.data,t);u[a]=me(u[a],c);var m=t.query,v=t.variables,p=S({},e.response,{errors:[n],data:f,path:u}),g=new l.ClientError(p,{query:"string"!=typeof m?i.print(m):m,variables:v});return we(t,g),!0}return!1})},d=A(r);!(a=d()).done;)c();ye(t,s)}();if("object"==typeof n)return n.v}else Ce(u,e)})):Promise.resolve()}catch(e){return Promise.reject(e)}}),a.subscribe(function(e){try{var n=de(function(){return Promise.resolve(r.superRequest(e.query,e.variables)).then(function(n){he(n,e)})},function(n){we(e,n)});return Promise.resolve(n&&n.then?n.then(function(){}):void 0)}catch(e){return Promise.reject(e)}}),r}t=e,(n=r).prototype=Object.create(t.prototype),n.prototype.constructor=n,x(n,t);var a=r.prototype;return a.superRequest=function(n,t){return e.prototype.request.call(this,n,t)},a.request=function(e,n){var t=this;return new Promise(function(r,a){var o={query:e,variables:n,id:fe(),resolve:r,reject:a};t.subject.next(o)})},r}(r.GraphQLClient),fe=function(){return d.nanoid().replace(/[-_]/g,"")},me=function(e,n){return e.replace("_"+n,"")},ve=function(e){var n=e.split("_");return n[n.length-1]},pe=function(e){var n=[],t=[],r=e.reduce(function(e,r){var a=r.query,o=r.variables,s=r.id;try{var u="string"==typeof a?i.parse(a):a,c=u.definitions.find(function(e){return"FragmentDefinition"===e.kind}),d="string"==typeof a?a:i.print(a),l=/@/.test(d);if(c||l)return t.push(r),e;var f=function(e){return function(e,n){return e+"_"+n}(e,s)};return e=e.addN(u,[o],f,f),n.push(r),e}catch(n){return t.push(r),e}},C.default("BatchedQuery")),a=r.document,o=r.variables;return{mergedQuery:a&&i.print(a),mergedVariables:o,mergedQueryAddedEvents:n,unmergedQueryAddedEvents:t}},ge=function(e,n){if(!e)return e;var t=Object.keys(e),r=n.id;return t.reduce(function(n,t){var a;return t.endsWith(r)&&(n=S({},n,((a={})[me(t,r)]=e[t],a))),n},{})},he=function(e,n){(0,n.resolve)(e)},ye=function(e,n){for(var t,r=A(n);!(t=r()).done;){var a=t.value,o=ge(e,a);a.resolve(o)}},we=function(e,n){(0,e.reject)(n)},Ce=function(e,n){for(var t,r=A(e);!(t=r()).done;)(0,t.value.reject)(n)},be=w.default(function(e,n,t){return new le(e+"/api/v1/"+n+"/graphql",{headers:{Authorization:"Bearer "+(t||"")}})});function qe(e,n){switch(n.type){case"loading":return{data:void 0,errors:void 0,loading:!0};case"data":return{data:n.payload,errors:void 0,loading:!1};case"errors":return{data:void 0,errors:n.payload,loading:!1}}}function Ie(n,r){var a,o,i,s,u,c,d=(a=Z(),o=V(),i=R(),s=be(o,i,a),u=P(),null!=(c=e.useDomContext(u,"sq:graphql-client",{attempts:0}))?c:s),l=t.useReducer(qe,r),f=l[1];return[l[0],t.useCallback(function(e,t){void 0===t&&(t=!1);try{if(!d)return f({type:"errors",payload:new Error("No GraphQL client found")}),Promise.resolve();var r=function(r,a){try{var o=(t||f({type:"loading"}),Promise.resolve(d.request(n,e)).then(function(e){f({type:"data",payload:e})}))}catch(e){return a(e)}return o&&o.then?o.then(void 0,a):o}(0,function(e){f({type:"errors",payload:e})});return Promise.resolve(r&&r.then?r.then(function(){}):void 0)}catch(e){return Promise.reject(e)}},[d,n,f])]}var Pe,Ee={loading:!1,data:void 0,errors:void 0};function Fe(e){var n=Ie(e,Ee);return[n[1],n[0]]}var Se,xe,Me,De,Ae=ce(Pe||(Pe=M(["\n mutation AuthenticateWithEmailAndPassword(\n $email: String!\n $password: String!\n ) {\n authenticateManagedIdentityWithEmailAndPassword(\n authenticateManagedIdentityWithEmailAndPasswordInput: {\n email: $email\n password: $password\n }\n ) {\n token\n email\n emailVerified\n sessionData\n }\n }\n"]))),ke=ce(Se||(Se=M(["\n mutation RegisterWithEmailAndPassword(\n $email: String!\n $password: String!\n $formData: RSJsonNode\n $redirectPath: String\n ) {\n registerManagedIdentityWithEmailAndPassword(\n registerManagedIdentityWithEmailAndPasswordInput: {\n email: $email\n password: $password\n formData: $formData\n redirectPath: $redirectPath\n }\n ) {\n token\n email\n emailVerified\n sessionData\n }\n }\n"]))),je=ce(xe||(xe=M(["\n mutation ChangePassword($password: String!) {\n changeManagedIdentityPassword(\n changeManagedIdentityPasswordInput: { password: $password }\n ) {\n success\n }\n }\n"]))),$e=ce(Me||(Me=M(["\n mutation ResetPassword($oobCode: String!, $password: String!) {\n resetManagedIdentityPassword(\n resetManagedIdentityPasswordInput: {\n password: $password\n oobCode: $oobCode\n }\n ) {\n token\n email\n emailVerified\n sessionData\n }\n }\n"]))),Re=ce(De||(De=M(["\n mutation VerifyPasswordResetCode($oobCode: String!) {\n verifyManagedIdentityPasswordResetCode(\n verifyManagedIdentityPasswordResetCodeInput: { oobCode: $oobCode }\n ) {\n success\n }\n }\n"])));function Ve(e){var n=e.skip,r=void 0!==n&&n,a=e.update,i=e.variables;t.useEffect(function(){var e=function(e){!r&&a(i,!0)};return document.addEventListener("sq:refresh",e),function(){return document.removeEventListener("sq:refresh",e)}},function(e){var n=t.useRef(e),r=t.useRef(0);return o.equal(e,n.current)||(n.current=e,r.current+=1),t.useMemo(function(){return n.current},[r.current])}([i,a,r]))}var Oe,Ne={loading:!1,data:void 0,errors:void 0},Le=Symbol();function He(e){var n=Ie(e,Ne),r=n[0],a=n[1],o=t.useRef(Le);return Ve({skip:o.current===Le,update:a,variables:o.current}),[a,S({},r,{refetch:function(e){o.current=e,a(e)}})]}var We,Ue=ce(Oe||(Oe=M(["\n query ManagedIdentity {\n managedIdentity {\n email\n emailVerified\n sessionData\n }\n }\n"])));function Qe(){var e=X(),n=He(Ue),r=n[0],a=n[1],o=a.loading,i=a.data,s=a.errors,u=a.refetch;return t.useEffect(function(){null!=i&&i.managedIdentity&&K(S({},e,{managedIdentity:i.managedIdentity}))},[null==i?void 0:i.managedIdentity]),[t.useCallback(function(){return r({})},[r]),{loading:o,data:i,errors:s,refetch:u}]}var Te,_e,Je=ce(We||(We=M(["\n mutation VerifyEmail($oobCode: String!) {\n verifyManagedIdentityEmail(\n verifyManagedIdentityEmailInput: { oobCode: $oobCode }\n ) {\n success\n }\n }\n"]))),Ge=ce(Te||(Te=M(["\n mutation RequestPasswordResetEmail(\n $email: String!\n $urlParams: RSJsonNode\n $redirectPath: String\n ) {\n requestManagedIdentityPasswordResetEmail(\n requestManagedIdentityPasswordResetEmailInput: {\n email: $email\n urlParams: $urlParams\n redirectPath: $redirectPath\n }\n ) {\n success\n }\n }\n"]))),ze=ce(_e||(_e=M(["\n mutation RequestVerificationEmail(\n $email: String!\n $urlParams: RSJsonNode\n $redirectPath: String\n ) {\n requestManagedIdentityVerificationEmail(\n requestManagedIdentityVerificationEmailInput: {\n email: $email\n urlParams: $urlParams\n redirectPath: $redirectPath\n }\n ) {\n success\n }\n }\n"])));function Be(e,n){var r=t.useRef();return r.current&&o.equal(n,r.current.key)||(r.current={key:n,value:e()}),r.current.value}function Ke(){return t.useReducer(function(e){return e+1},0)}function Ze(e){for(var n,t=A(Object.getOwnPropertyNames(e));!(n=t()).done;){var r=e[n.value];r&&"object"==typeof r&&Ze(r)}return Object.freeze(e)}var Xe={loading:!0,data:void 0,errors:void 0};function Ye(e,n,t){var r=Ie(e,Xe),a=r[0],o=r[1],i=Ke(),s=i[1];return Be(function(){!t&&o(n)},[e,n,o,i[0],t]),Ve({skip:t,update:o,variables:n}),Ze(S({},a,{refetch:s}))}function en(){return window.squatchHistory=window.squatchHistory||function(){switch($().type){case"SquatchPortal":return m.createBrowserHistory();default:return m.createMemoryHistory()}}(),window.squatchHistory}var nn,tn={createHref:function(){var e;return(e=en()).createHref.apply(e,[].slice.call(arguments))},push:function(){var e;return(e=en()).push.apply(e,[].slice.call(arguments))},replace:function(){var e;return(e=en()).replace.apply(e,[].slice.call(arguments))},go:function(){var e;return(e=en()).go.apply(e,[].slice.call(arguments))},back:function(){return en().back()},forward:function(){var e;return(e=en()).forward.apply(e,[].slice.call(arguments))}};function rn(e){var n=t.useState({limit:e.limit,offset:e.offset}),r=n[0],a=n[1],o=r.offset,i=r.limit,s=function(e,n){return e*n},u=function(e,n){return Math.ceil(e/n)||0};return{limit:i,setLimit:function(e){var n=u(o,e),t=s(e,n);a(S({},r,{limit:e,offset:t}))},offset:o,setCurrentPage:function(e){var n=s(e,i);a(function(e){return S({},e,{offset:n})})},calculatePagination:function(e,n){var t=u(o,i),r=function(e,n){return Math.ceil(e/n)||0}(n,i),a=0===e?"0":e>1?o+1+"-"+(o+e):""+(o+1);return{currentPage:t,pageCount:r,rangeOnPage:a,pageProgress:a+" of "+n}}}}function an(e,n){return e===n}function on(e,n,r){void 0===n&&(n=0),void 0===r&&(r={leading:!1});var a=t.useMemo(function(){return b.default(e,n,r.leading)},[e,n,r.leading]);return{flush:a.flush,cancel:a.clear,callback:a}}var sn,un,cn,dn=r.gql(nn||(nn=M(["\n mutation ($eventMeta: UserAnalyticsEvent!) {\n createUserAnalyticsEvent(eventMeta: $eventMeta)\n }\n"]))),ln=_("sq:useForm"),fn=r.gql(sn||(sn=M(["\n query ($key: String!) {\n form(key: $key) {\n schema\n initialData {\n initialData\n isEnabled\n isEnabledErrorMessage\n }\n }\n }\n"]))),mn=r.gql(un||(un=M(["\n mutation ($formSubmissionInput: FormSubmissionInput!) {\n submitForm(formSubmissionInput: $formSubmissionInput) {\n success\n results {\n ... on FormHandlerSubmissionResult {\n formHandler {\n name\n endpointUrl\n integration {\n name\n }\n }\n result\n }\n ... on FormHandlerError {\n formHandler {\n name\n endpointUrl\n integration {\n name\n }\n }\n errorType\n error\n errorCode\n }\n }\n }\n }\n"]))),vn=r.gql(cn||(cn=M(["\n query ($formValidationInput: FormValidationInput!) {\n validateForm(formValidationInput: $formValidationInput) {\n valid\n results {\n ... on FormHandlerValidationResult {\n formHandler {\n name\n endpointUrl\n integration {\n name\n }\n }\n result\n }\n ... on FormHandlerError {\n formHandler {\n name\n endpointUrl\n integration {\n name\n }\n }\n errorType\n error\n errorCode\n }\n }\n }\n }\n"])));exports.BatchedGraphQLClient=le,exports.GRAPHQL_CONTEXT="sq:graphql-client",exports.getEnvironmentSDK=$,exports.isDemo=function(){var e=$();return"None"===e.type||"SquatchAdmin"===e.type},exports.memoizedGraphQLClient=be,exports.navigation=tn,exports.setProgramId=function(e){E(),window.squatchProgramId.context=e},exports.setUseHostImplementation=function(e){if(!e)throw new Error("Must supply an implementation");if("function"!=typeof e)throw new Error("implementation must be a function");I.current=e},exports.setUserIdentity=K,exports.useAppDomain=V,exports.useAuthenticateWithEmailAndPasswordMutation=function(){var e=Fe(Ae),n=e[0],r=e[1],a=r.loading,o=r.data,i=r.errors;return t.useEffect(function(){if(null!=o&&o.authenticateManagedIdentityWithEmailAndPassword){var e=o.authenticateManagedIdentityWithEmailAndPassword,n=e.token,t=y.default(n).user;K({jwt:n,id:t.id,accountId:t.accountId,managedIdentity:{email:e.email,emailVerified:e.emailVerified,sessionData:e.sessionData}})}},[null==o?void 0:o.authenticateManagedIdentityWithEmailAndPassword]),[n,{loading:a,data:o,errors:i}]},exports.useChangePasswordMutation=function(){var e=Fe(je),n=e[1];return[e[0],{loading:n.loading,data:n.data,errors:n.errors}]},exports.useCurrentPage=function(){var e=Ke()[1];return t.useEffect(function(){return en().listen(function(){e()})},[]),en().location},exports.useDebounce=function(e,n,r){var a=r&&r.equalityFn||an,o=t.useState(e),i=o[0],s=o[1],u=on(t.useCallback(function(e){return s(e)},[]),n,r),c=t.useRef(e);return t.useEffect(function(){a(c.current,e)||(u.callback(e),c.current=e)},[e,u,a]),[i,{cancel:u.cancel,flush:u.flush}]},exports.useDebouncedCallback=on,exports.useEngagementMedium=O,exports.useForm=function(e){var n,r,a,o,i=function(e){try{return Promise.resolve(C({formValidationInput:{key:s,formData:e}})).then(function(){})}catch(e){return Promise.reject(e)}},s=e.formKey,u=e.formRef,c=e.autoSubmit,d=void 0!==c&&c,l=He(fn),f=l[0],m=l[1],v=m.data,p=m.loading,g=Fe(mn),h=g[0],y=g[1],w=He(vn),C=w[0],b=w[1],I=t.useReducer(function(e,n){return S({},e,n)},{enabled:!1,validating:!1,valid:!0,validationMessage:"",error:"",disabledMessage:"",formData:{},validationData:b,submitData:y}),P=I[0],E=I[1],F=P.enabled,x=P.disabledMessage,M=P.validating,D=P.valid,k=P.error,j=P.formData;return Be(function(){ln("submitData useEffect",y),E({submitData:y})},[y]),Be(function(){ln("validationData useEffect",b),E({validationData:b})},[b]),t.useEffect(function(){!p&&v&&function(){var n,t,r,a,o;E({enabled:null==v||null==(n=v.form.initialData)?void 0:n.isEnabled,disabledMessage:null==v||null==(t=v.form)||null==(r=t.initialData)?void 0:r.isEnabledErrorMessage});var i=u;if(i){var s=null==v||null==(a=v.form)||null==(o=a.initialData)?void 0:o.initialData;void 0!==e.setInitialData?e.setInitialData(i,s):function(e,n){try{var t=e.elements,r=new FormData(e);ln({htmlForm:e,formContent:r}),null==r||r.forEach(function(e,r){ln({value:e,key:r,inputs:t});var a=t.namedItem(r);try{"checkbox"==a.type?a.checked=q.default.get(n,r):a.value=q.default.get(n,r)||""}catch(e){ln("no initialData found for key",r)}}),Promise.resolve()}catch(e){return Promise.reject(e)}}(i,s)}}()},[p]),t.useEffect(function(){var e,n,t,r,a,o;P.validationData&&(E({validating:!1,valid:(null==(e=P.validationData)||null==(n=e.data)||null==(t=n.validateForm)?void 0:t.valid)||!1}),d&&null!=(r=P.validationData)&&null!=(a=r.data)&&null!=(o=a.validateForm)&&o.valid&&h({formSubmissionInput:{key:s,formData:j}}))},[null==(n=P.validationData)||null==(r=n.data)||null==(a=r.validateForm)?void 0:a.valid]),{states:{enabled:F,disabledMessage:x,loadingForm:p,validating:M,valid:D,error:k,validationData:P.validationData,submitData:P.submitData},data:{formKey:s,schema:null==v||null==(o=v.form)?void 0:o.schema},callbacks:{getForm:f,handleSubmit:function(e){try{e.preventDefault(),E({validating:!0});var n=e.target;ln("submit form",n);for(var t,r=new FormData(n),a={},o=A(r.entries());!(t=o()).done;){var s=t.value;q.default.set(a,s[0],s[1])}return E({formData:a}),Promise.resolve(i(a)).then(function(){})}catch(e){return Promise.reject(e)}},validateForm:i,submitForm:function(e){try{return Promise.resolve(h({formSubmissionInput:{key:s,formData:e}})).then(function(){})}catch(e){return Promise.reject(e)}},setFormState:E,getValidationErrors:function(){var e,n,t,r,a=null==b||null==(e=b.data)||null==(n=e.validateForm)||null==(t=n.results[0])||null==(r=t.result)?void 0:r.errors;function o(e){return null==a?void 0:a.filter(function(n){return n.instanceLocation.substring(1).startsWith(""+e)})}return{getErrorAtPath:function(e){return null==a?void 0:a.filter(function(n){return n.instanceLocation.substring(1)===e})},getSubErrorsAtPath:o,hasSubErrors:function(e){var n;return(null==(n=o(e))?void 0:n.length)>0}}},getSubmissionErrors:function(){var e;if(!P.submitData)return[];var n=null==(e=P.submitData.data)?void 0:e.submitForm.results;return(null==n?void 0:n.map(function(e){var n,t,r,a,o,i,s,u=null==(n=e.result)||null==(t=n.results)?void 0:t.flatMap(function(e){return!e.success&&e.message}).filter(function(e){return e}),c=null==(r=e.result)||null==(a=r.results)?void 0:a.flatMap(function(e){return!e.success&&{error:e.error,errorType:e.errorType,errorCode:e.errorCode}}).filter(function(e){return e.error});return{integration:null==(o=e.formHandler)||null==(i=o.integration)?void 0:i.name,formHandler:null==(s=e.formHandler)?void 0:s.name,messages:u,errors:c}}))||[]}}}},exports.useHost=P,exports.useLazyQuery=He,exports.useLocale=function(){!function(){var e,r=window.squatchLocale,a=X();t.useEffect(function(){if(!a&&r)return r.context=void 0;s({})},[a]);var o,i=He(k),s=i[0],u=i[1].data,c=null==u||null==(e=u.viewer)?void 0:e.locale;r?c!==r.context&&(r.context=c):window.squatchLocale=new n.ContextProvider({element:document.documentElement,initialState:c||(null==(o=window.widgetIdent)?void 0:o.locale)||void 0,contextName:"sq:locale"}).start()}();var r=P();return e.useDomContext(r,"sq:locale")},exports.useManagedIdentityQuery=Qe,exports.useMutation=Fe,exports.usePaginatedQuery=function(e,n,t,r,a){var o;void 0===r&&(r={}),void 0===a&&(a=!1);var i=rn(t),s=i.limit,u=i.setLimit,c=i.setCurrentPage,d=i.calculatePagination,l=Ye(e,S({limit:s,offset:i.offset},r),a),f=l.loading,m=l.errors,v=l.refetch,p=n(l.data),g=d((null==p||null==(o=p.data)?void 0:o.length)||0,(null==p?void 0:p.totalCount)||0);return{envelope:p,states:{errors:m,loading:f,limit:s,currentPage:g.currentPage,pageCount:g.pageCount,pageProgress:g.pageProgress},callbacks:{refetch:v,setLimit:u,setCurrentPage:c}}},exports.usePagination=rn,exports.useProgramId=F,exports.useQuery=Ye,exports.useRefreshDispatcher=function(){var e=P();return{refresh:t.useCallback(function(){e.dispatchEvent(new CustomEvent("sq:refresh",{bubbles:!0,composed:!0,cancelable:!0,detail:{}}))},[e])}},exports.useRegisterWithEmailAndPasswordMutation=function(){var e=Fe(ke),n=e[0],r=e[1],a=r.loading,o=r.data,i=r.errors;return t.useEffect(function(){if(null!=o&&o.registerManagedIdentityWithEmailAndPassword){var e=o.registerManagedIdentityWithEmailAndPassword,n=e.token,t=y.default(n).user;K({jwt:n,id:t.id,accountId:t.accountId,managedIdentity:{email:e.email,emailVerified:e.emailVerified,sessionData:e.sessionData}})}},[null==o?void 0:o.registerManagedIdentityWithEmailAndPassword]),[n,{loading:a,data:o,errors:i}]},exports.useRequestPasswordResetEmailMutation=function(){return Fe(Ge)},exports.useRequestVerificationEmailMutation=function(){return Fe(ze)},exports.useResetPasswordMutation=function(){var e=Fe($e),n=e[0],r=e[1],a=r.loading,o=r.data,i=r.errors;return t.useEffect(function(){if(null!=o&&o.resetManagedIdentityPassword){var e=o.resetManagedIdentityPassword,n=e.token,t=y.default(n).user;K({jwt:n,id:t.id,accountId:t.accountId,managedIdentity:{email:e.email,emailVerified:e.emailVerified,sessionData:e.sessionData}})}},[null==o?void 0:o.resetManagedIdentityPassword]),[n,{loading:a,data:o,errors:i}]},exports.useShareEvent=function(){var e=O(),n=X(),t=F(),r=Fe(dn)[0];return n?function(a){r({eventMeta:{id:n.id,accountId:n.accountId,programId:t,type:"USER_REFERRAL_PROGRAM_ENGAGEMENT_EVENT",meta:{engagementMedium:e,shareMedium:a}}})}:function(){}},exports.useTenantAlias=R,exports.useTick=Ke,exports.useToken=Z,exports.useUserIdentity=X,exports.useVerifyEmailMutation=function(){var e,n=Qe()[0],r=Fe(Je),a=r[0],o=r[1],i=o.loading,s=o.data,u=o.errors;return t.useEffect(function(){var e;null!=s&&null!=(e=s.verifyManagedIdentityEmail)&&e.success&&n()},[null==s||null==(e=s.verifyManagedIdentityEmail)?void 0:e.success]),[a,{loading:i,data:s,errors:u}]},exports.useVerifyPasswordResetCodeMutation=function(){return Fe(Re)};
2
2
  //# sourceMappingURL=index.js.map