chordia-ui 3.3.8 → 3.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AgentLiftCard.cjs.js.map +1 -1
- package/dist/AgentLiftCard.es.js +5 -3
- package/dist/AgentLiftCard.es.js.map +1 -1
- package/dist/CustomFilterChips.cjs.js.map +1 -1
- package/dist/CustomFilterChips.es.js +2 -1
- package/dist/CustomFilterChips.es.js.map +1 -1
- package/dist/FileUploadingState.cjs.js.map +1 -1
- package/dist/FileUploadingState.es.js +16 -10
- package/dist/FileUploadingState.es.js.map +1 -1
- package/dist/IntegrationCard.cjs.js.map +1 -1
- package/dist/IntegrationCard.es.js +3 -3
- package/dist/IntegrationCard.es.js.map +1 -1
- package/dist/SectionLabel.cjs.js.map +1 -1
- package/dist/SectionLabel.es.js.map +1 -1
- package/dist/SmallButton.cjs.js.map +1 -1
- package/dist/SmallButton.es.js +16 -16
- package/dist/SmallButton.es.js.map +1 -1
- package/dist/SummarySection.cjs.js.map +1 -1
- package/dist/SummarySection.es.js +11 -9
- package/dist/SummarySection.es.js.map +1 -1
- package/dist/TextInput.cjs.js.map +1 -1
- package/dist/TextInput.es.js.map +1 -1
- package/dist/Timeline.cjs.js.map +1 -1
- package/dist/Timeline.es.js +14 -8
- package/dist/Timeline.es.js.map +1 -1
- package/dist/Tooltip.cjs.js +1 -1
- package/dist/Tooltip.cjs.js.map +1 -1
- package/dist/Tooltip.es.js +31 -20
- package/dist/Tooltip.es.js.map +1 -1
- package/dist/TourGuideTooltip.cjs.js.map +1 -1
- package/dist/TourGuideTooltip.es.js +2 -1
- package/dist/TourGuideTooltip.es.js.map +1 -1
- package/dist/UpdatedInteractionRecording.cjs.js +1 -1
- package/dist/UpdatedInteractionRecording.cjs.js.map +1 -1
- package/dist/UpdatedInteractionRecording.es.js +79 -97
- package/dist/UpdatedInteractionRecording.es.js.map +1 -1
- package/dist/UploadInteraction.cjs.js.map +1 -1
- package/dist/UploadInteraction.es.js.map +1 -1
- package/dist/colors.cjs.js +2 -0
- package/dist/colors.cjs.js.map +1 -0
- package/dist/colors.es.js +2 -0
- package/dist/colors.es.js.map +1 -0
- package/dist/components/UpdatedInteractionDetails.cjs.js +10 -1
- package/dist/components/UpdatedInteractionDetails.cjs.js.map +1 -1
- package/dist/components/UpdatedInteractionDetails.es.js +1531 -9
- package/dist/components/UpdatedInteractionDetails.es.js.map +1 -1
- package/dist/components/chat.cjs.js +30 -1
- package/dist/components/chat.cjs.js.map +1 -1
- package/dist/components/chat.es.js +2222 -7
- package/dist/components/chat.es.js.map +1 -1
- package/dist/components/common.cjs.js +1 -1
- package/dist/components/common.es.js +32 -25
- package/dist/components/common.es.js.map +1 -1
- package/dist/components/data.cjs.js +1 -1
- package/dist/components/data.cjs.js.map +1 -1
- package/dist/components/data.es.js +1033 -4
- package/dist/components/data.es.js.map +1 -1
- package/dist/components/layout.cjs.js +3 -1
- package/dist/components/layout.cjs.js.map +1 -1
- package/dist/components/layout.es.js +1533 -8
- package/dist/components/layout.es.js.map +1 -1
- package/dist/components/login.cjs.js +1 -1
- package/dist/components/login.es.js +6 -2
- package/dist/components/login.es.js.map +1 -1
- package/dist/components/media.cjs.js +1 -1
- package/dist/components/media.cjs.js.map +1 -1
- package/dist/components/media.es.js +220 -6
- package/dist/components/media.es.js.map +1 -1
- package/dist/components/models.cjs.js +1 -1
- package/dist/components/models.cjs.js.map +1 -1
- package/dist/components/models.es.js +91 -2
- package/dist/components/models.es.js.map +1 -1
- package/dist/components/navigation.cjs.js +1 -1
- package/dist/components/navigation.cjs.js.map +1 -1
- package/dist/components/navigation.es.js +766 -7
- package/dist/components/navigation.es.js.map +1 -1
- package/dist/components/notifications.cjs.js +1 -1
- package/dist/components/notifications.cjs.js.map +1 -1
- package/dist/components/notifications.es.js +368 -3
- package/dist/components/notifications.es.js.map +1 -1
- package/dist/components/onboarding.cjs.js +1 -1
- package/dist/components/onboarding.cjs.js.map +1 -1
- package/dist/components/onboarding.es.js +985 -7
- package/dist/components/onboarding.es.js.map +1 -1
- package/dist/components/primitives.cjs.js +1 -1
- package/dist/components/primitives.cjs.js.map +1 -1
- package/dist/components/primitives.es.js +635 -25
- package/dist/components/primitives.es.js.map +1 -1
- package/dist/debugger-wc.cjs.js +4 -4
- package/dist/debugger-wc.cjs.js.map +1 -1
- package/dist/debugger-wc.es.js +15 -11
- package/dist/debugger-wc.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs2.js +2 -49
- package/dist/index.cjs2.js.map +1 -1
- package/dist/index.cjs3.js +50 -0
- package/dist/index.cjs3.js.map +1 -0
- package/dist/index.es.js +104 -99
- package/dist/index.es.js.map +1 -1
- package/dist/index.es2.js +2632 -1776
- package/dist/index.es2.js.map +1 -1
- package/dist/index.es3.js +1944 -0
- package/dist/index.es3.js.map +1 -0
- package/dist/pages/interactionDetails.cjs.js +1 -1
- package/dist/pages/interactionDetails.cjs.js.map +1 -1
- package/dist/pages/interactionDetails.es.js +70 -47
- package/dist/pages/interactionDetails.es.js.map +1 -1
- package/dist/sortable.esm.cjs.js +1 -1
- package/dist/sortable.esm.cjs.js.map +1 -1
- package/dist/sortable.esm.es.js +55 -53
- package/dist/sortable.esm.es.js.map +1 -1
- package/dist/{chordia-ui.css → style.css} +1 -1
- package/package.json +1 -1
- package/src/components/UpdatedInteractionDetails/UpdatedInteractionDetails.jsx +318 -77
- package/src/components/UpdatedInteractionDetails/UpdatedInteractionRecording.jsx +7 -17
- package/dist/ChartRenderer.cjs.js +0 -31
- package/dist/ChartRenderer.cjs.js.map +0 -1
- package/dist/ChartRenderer.es.js +0 -2210
- package/dist/ChartRenderer.es.js.map +0 -1
- package/dist/GettingStarted.cjs.js +0 -2
- package/dist/GettingStarted.cjs.js.map +0 -1
- package/dist/GettingStarted.es.js +0 -983
- package/dist/GettingStarted.es.js.map +0 -1
- package/dist/InlineConfirm.cjs.js +0 -2
- package/dist/InlineConfirm.cjs.js.map +0 -1
- package/dist/InlineConfirm.es.js +0 -618
- package/dist/InlineConfirm.es.js.map +0 -1
- package/dist/InteractionSummaryCard.cjs.js +0 -2
- package/dist/InteractionSummaryCard.cjs.js.map +0 -1
- package/dist/InteractionSummaryCard.es.js +0 -216
- package/dist/InteractionSummaryCard.es.js.map +0 -1
- package/dist/LoginPage.cjs.js +0 -3
- package/dist/LoginPage.cjs.js.map +0 -1
- package/dist/LoginPage.es.js +0 -2618
- package/dist/LoginPage.es.js.map +0 -1
- package/dist/NavigationBar.cjs.js +0 -2
- package/dist/NavigationBar.cjs.js.map +0 -1
- package/dist/NavigationBar.es.js +0 -762
- package/dist/NavigationBar.es.js.map +0 -1
- package/dist/NotificationPanel.cjs.js +0 -2
- package/dist/NotificationPanel.cjs.js.map +0 -1
- package/dist/NotificationPanel.es.js +0 -371
- package/dist/NotificationPanel.es.js.map +0 -1
- package/dist/OverlayPanel.cjs.js +0 -2
- package/dist/OverlayPanel.cjs.js.map +0 -1
- package/dist/OverlayPanel.es.js +0 -93
- package/dist/OverlayPanel.es.js.map +0 -1
- package/dist/SplitPane.cjs.js +0 -4
- package/dist/SplitPane.cjs.js.map +0 -1
- package/dist/SplitPane.es.js +0 -1531
- package/dist/SplitPane.es.js.map +0 -1
- package/dist/SummaryStatsPanel.cjs.js +0 -2
- package/dist/SummaryStatsPanel.cjs.js.map +0 -1
- package/dist/SummaryStatsPanel.es.js +0 -1027
- package/dist/SummaryStatsPanel.es.js.map +0 -1
- package/dist/UpdatedInteractionDetails.cjs.js +0 -11
- package/dist/UpdatedInteractionDetails.cjs.js.map +0 -1
- package/dist/UpdatedInteractionDetails.es.js +0 -1310
- package/dist/UpdatedInteractionDetails.es.js.map +0 -1
package/dist/LoginPage.es.js
DELETED
|
@@ -1,2618 +0,0 @@
|
|
|
1
|
-
import { jsxs as k, jsx as d, Fragment as ve } from "react/jsx-runtime";
|
|
2
|
-
import se, { useMemo as dt, useState as C, useRef as Se, useEffect as le, useCallback as st, useImperativeHandle as eo, Suspense as rr, lazy as ir } from "react";
|
|
3
|
-
import { CircleCheckBig as ar, ShieldCheck as sr, Radar as lr, ChevronDown as to, EyeOff as cr, Eye as dr } from "lucide-react";
|
|
4
|
-
/* empty css */
|
|
5
|
-
const no = se.createContext(void 0), En = (e) => (...t) => {
|
|
6
|
-
if (!e) throw Error("You can only use this function after sdk initialization. Make sure to supply 'projectId' to <AuthProvider /> component");
|
|
7
|
-
return e(...t);
|
|
8
|
-
}, ur = () => typeof window < "u" && !!window.descopeBridge, at = { "x-descope-sdk-name": "react", "x-descope-sdk-version": "2.26.7" }, jn = typeof window < "u";
|
|
9
|
-
var lt = function() {
|
|
10
|
-
return lt = Object.assign || function(t) {
|
|
11
|
-
for (var n, o = 1, r = arguments.length; o < r; o++) {
|
|
12
|
-
n = arguments[o];
|
|
13
|
-
for (var i in n) Object.prototype.hasOwnProperty.call(n, i) && (t[i] = n[i]);
|
|
14
|
-
}
|
|
15
|
-
return t;
|
|
16
|
-
}, lt.apply(this, arguments);
|
|
17
|
-
};
|
|
18
|
-
function B(e, t) {
|
|
19
|
-
var n = {};
|
|
20
|
-
for (var o in e) Object.prototype.hasOwnProperty.call(e, o) && t.indexOf(o) < 0 && (n[o] = e[o]);
|
|
21
|
-
if (e != null && typeof Object.getOwnPropertySymbols == "function")
|
|
22
|
-
for (var r = 0, o = Object.getOwnPropertySymbols(e); r < o.length; r++)
|
|
23
|
-
t.indexOf(o[r]) < 0 && Object.prototype.propertyIsEnumerable.call(e, o[r]) && (n[o[r]] = e[o[r]]);
|
|
24
|
-
return n;
|
|
25
|
-
}
|
|
26
|
-
function Ra(e, t, n, o) {
|
|
27
|
-
function r(i) {
|
|
28
|
-
return i instanceof n ? i : new n(function(a) {
|
|
29
|
-
a(i);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
return new (n || (n = Promise))(function(i, a) {
|
|
33
|
-
function l(u) {
|
|
34
|
-
try {
|
|
35
|
-
c(o.next(u));
|
|
36
|
-
} catch (p) {
|
|
37
|
-
a(p);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
function s(u) {
|
|
41
|
-
try {
|
|
42
|
-
c(o.throw(u));
|
|
43
|
-
} catch (p) {
|
|
44
|
-
a(p);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
function c(u) {
|
|
48
|
-
u.done ? i(u.value) : r(u.value).then(l, s);
|
|
49
|
-
}
|
|
50
|
-
c((o = o.apply(e, t || [])).next());
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
function pr(e, t, n) {
|
|
54
|
-
if (n || arguments.length === 2) for (var o = 0, r = t.length, i; o < r; o++)
|
|
55
|
-
(i || !(o in t)) && (i || (i = Array.prototype.slice.call(t, 0, o)), i[o] = t[o]);
|
|
56
|
-
return e.concat(i || Array.prototype.slice.call(t));
|
|
57
|
-
}
|
|
58
|
-
function Na(e, t, n, o) {
|
|
59
|
-
if (n === "a" && !o) throw new TypeError("Private accessor was defined without a getter");
|
|
60
|
-
if (typeof t == "function" ? e !== t || !o : !t.has(e)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
61
|
-
return n === "m" ? o : n === "a" ? o.call(e) : o ? o.value : t.get(e);
|
|
62
|
-
}
|
|
63
|
-
function Fa(e, t, n, o, r) {
|
|
64
|
-
if (o === "m") throw new TypeError("Private method is not writable");
|
|
65
|
-
if (o === "a" && !r) throw new TypeError("Private accessor was defined without a setter");
|
|
66
|
-
if (typeof t == "function" ? e !== t || !r : !t.has(e)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
67
|
-
return o === "a" ? r.call(e, n) : r ? r.value = n : t.set(e, n), n;
|
|
68
|
-
}
|
|
69
|
-
class Ve extends Error {
|
|
70
|
-
}
|
|
71
|
-
Ve.prototype.name = "InvalidTokenError";
|
|
72
|
-
function gr(e) {
|
|
73
|
-
return decodeURIComponent(atob(e).replace(/(.)/g, (t, n) => {
|
|
74
|
-
let o = n.charCodeAt(0).toString(16).toUpperCase();
|
|
75
|
-
return o.length < 2 && (o = "0" + o), "%" + o;
|
|
76
|
-
}));
|
|
77
|
-
}
|
|
78
|
-
function hr(e) {
|
|
79
|
-
let t = e.replace(/-/g, "+").replace(/_/g, "/");
|
|
80
|
-
switch (t.length % 4) {
|
|
81
|
-
case 0:
|
|
82
|
-
break;
|
|
83
|
-
case 2:
|
|
84
|
-
t += "==";
|
|
85
|
-
break;
|
|
86
|
-
case 3:
|
|
87
|
-
t += "=";
|
|
88
|
-
break;
|
|
89
|
-
default:
|
|
90
|
-
throw new Error("base64 string is not of the correct length");
|
|
91
|
-
}
|
|
92
|
-
try {
|
|
93
|
-
return gr(t);
|
|
94
|
-
} catch {
|
|
95
|
-
return atob(t);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
function Vt(e, t) {
|
|
99
|
-
if (typeof e != "string")
|
|
100
|
-
throw new Ve("Invalid token specified: must be a string");
|
|
101
|
-
t || (t = {});
|
|
102
|
-
const n = t.header === !0 ? 0 : 1, o = e.split(".")[n];
|
|
103
|
-
if (typeof o != "string")
|
|
104
|
-
throw new Ve(`Invalid token specified: missing part #${n + 1}`);
|
|
105
|
-
let r;
|
|
106
|
-
try {
|
|
107
|
-
r = hr(o);
|
|
108
|
-
} catch (i) {
|
|
109
|
-
throw new Ve(`Invalid token specified: invalid base64 for part #${n + 1} (${i.message})`);
|
|
110
|
-
}
|
|
111
|
-
try {
|
|
112
|
-
return JSON.parse(r);
|
|
113
|
-
} catch (i) {
|
|
114
|
-
throw new Ve(`Invalid token specified: invalid json for part #${n + 1} (${i.message})`);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
var y = { accessKey: { exchange: "/v1/auth/accesskey/exchange" }, otp: { verify: "/v1/auth/otp/verify", signIn: "/v1/auth/otp/signin", signUp: "/v1/auth/otp/signup", update: { email: "/v1/auth/otp/update/email", phone: "/v1/auth/otp/update/phone" }, signUpOrIn: "/v1/auth/otp/signup-in" }, magicLink: { verify: "/v1/auth/magiclink/verify", signIn: "/v1/auth/magiclink/signin", signUp: "/v1/auth/magiclink/signup", update: { email: "/v1/auth/magiclink/update/email", phone: "/v1/auth/magiclink/update/phone" }, signUpOrIn: "/v1/auth/magiclink/signup-in" }, enchantedLink: { verify: "/v1/auth/enchantedlink/verify", signIn: "/v1/auth/enchantedlink/signin", signUp: "/v1/auth/enchantedlink/signup", session: "/v1/auth/enchantedlink/pending-session", update: { email: "/v1/auth/enchantedlink/update/email" }, signUpOrIn: "/v1/auth/enchantedlink/signup-in" }, oauth: { start: "/v1/auth/oauth/authorize", exchange: "/v1/auth/oauth/exchange", startNative: "v1/auth/oauth/native/start", finishNative: "v1/auth/oauth/native/finish", oneTap: { getOneTapClientId: "/v1/auth/onetap/clientid/{provider}", exchangeOneTapIDToken: "/v1/auth/onetap/idtoken/exchange", verifyOneTapIDToken: "/v1/auth/onetap/idtoken/verify" } }, outbound: { connect: "/v1/outbound/oauth/connect" }, saml: { start: "/v1/auth/saml/authorize", exchange: "/v1/auth/saml/exchange" }, totp: { verify: "/v1/auth/totp/verify", signUp: "/v1/auth/totp/signup", update: "/v1/auth/totp/update" }, notp: { signIn: "/v1/auth/notp/whatsapp/signin", signUp: "/v1/auth/notp/whatsapp/signup", signUpOrIn: "/v1/auth/notp/whatsapp/signup-in", session: "/v1/auth/notp/pending-session" }, webauthn: { signUp: { start: "/v1/auth/webauthn/signup/start", finish: "/v1/auth/webauthn/signup/finish" }, signIn: { start: "/v1/auth/webauthn/signin/start", finish: "/v1/auth/webauthn/signin/finish" }, signUpOrIn: { start: "/v1/auth/webauthn/signup-in/start" }, update: { start: "v1/auth/webauthn/update/start", finish: "/v1/auth/webauthn/update/finish" } }, password: { signUp: "/v1/auth/password/signup", signIn: "/v1/auth/password/signin", sendReset: "/v1/auth/password/reset", update: "/v1/auth/password/update", replace: "/v1/auth/password/replace", policy: "/v1/auth/password/policy" }, refresh: "/v1/auth/refresh", tryRefresh: "/v1/auth/try-refresh", selectTenant: "/v1/auth/tenant/select", logout: "/v1/auth/logout", logoutAll: "/v1/auth/logoutall", me: "/v1/auth/me", myTenants: "/v1/auth/me/tenants", history: "/v1/auth/me/history", flow: { start: "/v1/flow/start", next: "/v1/flow/next" } };
|
|
118
|
-
const oo = "<region>", fr = `https://api.${oo}descope.com`, Dn = 1e3, Pn = 6e5, ro = "dct", Rn = () => {
|
|
119
|
-
const e = {};
|
|
120
|
-
return { headers(t) {
|
|
121
|
-
const n = typeof t.entries == "function" ? Object.fromEntries(t.entries()) : t;
|
|
122
|
-
return e.Headers = JSON.stringify(n), this;
|
|
123
|
-
}, body(t) {
|
|
124
|
-
return e.Body = t, this;
|
|
125
|
-
}, url(t) {
|
|
126
|
-
return e.Url = t.toString(), this;
|
|
127
|
-
}, method(t) {
|
|
128
|
-
return e.Method = t, this;
|
|
129
|
-
}, title(t) {
|
|
130
|
-
return e.Title = t, this;
|
|
131
|
-
}, status(t) {
|
|
132
|
-
return e.Status = t, this;
|
|
133
|
-
}, retries(t) {
|
|
134
|
-
return e.Retries = t, this;
|
|
135
|
-
}, build: () => Object.keys(e).flatMap(((t) => e[t] ? [`${t !== "Title" ? `${t}: ` : ""}${e[t]}`] : [])).join(`
|
|
136
|
-
`) };
|
|
137
|
-
}, vr = [521, 524], Nn = (e) => async (...t) => {
|
|
138
|
-
let n = await e(...t);
|
|
139
|
-
vr.includes(n.status) && (n = await e(...t), n.retries = 1);
|
|
140
|
-
const o = await n.text();
|
|
141
|
-
return n.text = () => Promise.resolve(o), n.json = () => Promise.resolve(JSON.parse(o)), n.clone = () => n, n;
|
|
142
|
-
}, mr = (e, t) => {
|
|
143
|
-
const n = t || fetch;
|
|
144
|
-
return n || e == null || e.warn("Fetch is not defined, you will not be able to send http requests, if you are running in a test, make sure fetch is defined globally"), e ? async (...o) => {
|
|
145
|
-
if (!n) throw Error("Cannot send http request, fetch is not defined, if you are running in a test, make sure fetch is defined globally");
|
|
146
|
-
e.log(((i) => Rn().title("Request").url(i[0]).method(i[1].method).headers(i[1].headers).body(i[1].body).build())(o));
|
|
147
|
-
const r = await Nn(n)(...o);
|
|
148
|
-
return e[r.ok ? "log" : "error"](await (async (i) => {
|
|
149
|
-
const a = await i.text();
|
|
150
|
-
return Rn().title("Response").url(i.url.toString()).status(`${i.status} ${i.statusText}`).headers(i.headers).body(a).retries(i.retries).build();
|
|
151
|
-
})(r)), r;
|
|
152
|
-
} : Nn(n);
|
|
153
|
-
};
|
|
154
|
-
let tt;
|
|
155
|
-
const yr = () => {
|
|
156
|
-
if (tt) return tt;
|
|
157
|
-
const e = /* @__PURE__ */ new Date(), t = `${e.getUTCFullYear().toString()}-${(e.getUTCMonth() + 1).toString().padStart(2, "0")}-${e.getUTCDate().toString().padStart(2, "0")}-${e.getUTCHours().toString().padStart(2, "0")}:${e.getUTCMinutes().toString().padStart(2, "0")}:${e.getUTCSeconds().toString().padStart(2, "0")}:${e.getUTCMilliseconds().toString()}`, n = Math.floor(1e3 + 9e3 * Math.random());
|
|
158
|
-
return tt = `${t}-${n}`, tt;
|
|
159
|
-
};
|
|
160
|
-
var Ee;
|
|
161
|
-
(function(e) {
|
|
162
|
-
e.get = "GET", e.delete = "DELETE", e.post = "POST", e.put = "PUT", e.patch = "PATCH";
|
|
163
|
-
})(Ee || (Ee = {}));
|
|
164
|
-
const Fn = ({ path: e, baseUrl: t, queryParams: n, projectId: o }) => {
|
|
165
|
-
const r = o.slice(1, -27);
|
|
166
|
-
t = t.replace(oo, r ? r + "." : "");
|
|
167
|
-
let i = e ? `${t.replace(/\/$/, "")}/${e == null ? void 0 : e.replace(/^\//, "")}` : t;
|
|
168
|
-
if (n) {
|
|
169
|
-
const a = Object.keys(n);
|
|
170
|
-
a.forEach(((l, s) => {
|
|
171
|
-
i = `${i}${s === 0 ? "?" : ""}${l}=${encodeURIComponent(n[l])}${s === a.length - 1 ? "" : "&"}`;
|
|
172
|
-
}));
|
|
173
|
-
}
|
|
174
|
-
return i;
|
|
175
|
-
}, wr = (...e) => new Headers(e.reduce(((t, n) => (((o) => Array.isArray(o) ? o : o instanceof Headers ? Array.from(o.entries()) : o ? Object.entries(o) : [])(n).forEach((([o, r]) => {
|
|
176
|
-
t[o] = typeof r == "function" ? r() : r;
|
|
177
|
-
})), t)), {})), br = { "Content-Type": "application/json" }, xr = (e, t = "") => {
|
|
178
|
-
let n = e;
|
|
179
|
-
return t && (n = n + ":" + t), { Authorization: `Bearer ${n}` };
|
|
180
|
-
}, kr = (e, t) => {
|
|
181
|
-
const n = { "x-descope-sdk-session-id": yr(), "x-descope-sdk-name": "core-js", "x-descope-sdk-version": "2.57.0", "x-descope-project-id": e };
|
|
182
|
-
return t && (n["x-descope-refresh-cookie-name"] = t), n;
|
|
183
|
-
}, Ir = (e) => {
|
|
184
|
-
try {
|
|
185
|
-
e = JSON.parse(e);
|
|
186
|
-
} catch {
|
|
187
|
-
return !1;
|
|
188
|
-
}
|
|
189
|
-
return typeof e == "object" && e !== null;
|
|
190
|
-
};
|
|
191
|
-
var Sr = /* @__PURE__ */ ((e) => (t) => {
|
|
192
|
-
var n;
|
|
193
|
-
return e(Object.assign(Object.assign({}, t), { hooks: { beforeRequest: (o) => {
|
|
194
|
-
var r;
|
|
195
|
-
const i = [].concat(((r = t.hooks) === null || r === void 0 ? void 0 : r.beforeRequest) || []);
|
|
196
|
-
return i == null ? void 0 : i.reduce(((a, l) => l(a)), o);
|
|
197
|
-
}, afterRequest: async (o, r) => {
|
|
198
|
-
var i;
|
|
199
|
-
const a = [].concat(((i = t.hooks) === null || i === void 0 ? void 0 : i.afterRequest) || []);
|
|
200
|
-
a.length != 0 && (await Promise.allSettled(a == null ? void 0 : a.map(((l) => l(o, r == null ? void 0 : r.clone()))))).forEach(((l) => {
|
|
201
|
-
var s;
|
|
202
|
-
return l.status === "rejected" && ((s = t.logger) === null || s === void 0 ? void 0 : s.error(l.reason));
|
|
203
|
-
}));
|
|
204
|
-
}, transformResponse: (n = t.hooks) === null || n === void 0 ? void 0 : n.transformResponse } }));
|
|
205
|
-
})((({ baseUrl: e, projectId: t, baseConfig: n, refreshCookieName: o, logger: r, hooks: i, cookiePolicy: a, fetch: l }) => {
|
|
206
|
-
const s = e || fr, c = mr(r, l), u = async (p) => {
|
|
207
|
-
var f;
|
|
208
|
-
const b = i != null && i.beforeRequest ? i.beforeRequest(p) : p, { path: h, body: m, headers: x, queryParams: j, method: E, token: P } = b, N = ((J) => J === void 0 ? void 0 : JSON.stringify(J))(m), v = { headers: wr(xr(t, P), kr(t, o), (n == null ? void 0 : n.baseHeaders) || {}, Ir(N) ? br : {}, x), method: E, body: N };
|
|
209
|
-
a !== null && (v.credentials = a || "include");
|
|
210
|
-
const U = await c(Fn({ path: h, baseUrl: s, queryParams: j, projectId: t }), v);
|
|
211
|
-
if (i != null && i.afterRequest && await i.afterRequest(p, U == null ? void 0 : U.clone()), i == null ? void 0 : i.transformResponse) {
|
|
212
|
-
const J = await U.json(), X = (((f = U.headers) === null || f === void 0 ? void 0 : f.get("set-cookie")) || "").split(";").reduce(((G, z) => {
|
|
213
|
-
const [Z, te] = z.split("=");
|
|
214
|
-
return Object.assign(Object.assign({}, G), { [Z.trim()]: te });
|
|
215
|
-
}), {}), K = Object.assign(Object.assign({}, U), { json: () => Promise.resolve(J), cookies: X });
|
|
216
|
-
return K.clone = () => K, i.transformResponse(K);
|
|
217
|
-
}
|
|
218
|
-
return U;
|
|
219
|
-
};
|
|
220
|
-
return { get: (p, { headers: f, queryParams: b, token: h } = {}) => u({ path: p, headers: f, queryParams: b, body: void 0, method: Ee.get, token: h }), post: (p, f, { headers: b, queryParams: h, token: m } = {}) => u({ path: p, headers: b, queryParams: h, body: f, method: Ee.post, token: m }), patch: (p, f, { headers: b, queryParams: h, token: m } = {}) => u({ path: p, headers: b, queryParams: h, body: f, method: Ee.patch, token: m }), put: (p, f, { headers: b, queryParams: h, token: m } = {}) => u({ path: p, headers: b, queryParams: h, body: f, method: Ee.put, token: m }), delete: (p, { headers: f, queryParams: b, token: h } = {}) => u({ path: p, headers: f, queryParams: b, body: void 0, method: Ee.delete, token: h }), hooks: i, buildUrl: (p, f) => Fn({ projectId: t, baseUrl: s, path: p, queryParams: f }) };
|
|
221
|
-
})), Cr = { TOO_MANY_REQUESTS: 429 };
|
|
222
|
-
function io(e, t, n) {
|
|
223
|
-
var o;
|
|
224
|
-
let r = ut(e);
|
|
225
|
-
if (t) {
|
|
226
|
-
if (!(r != null && r.tenants) && (r == null ? void 0 : r[ro]) === t) return (r == null ? void 0 : r[n]) || [];
|
|
227
|
-
r = (o = r == null ? void 0 : r.tenants) === null || o === void 0 ? void 0 : o[t];
|
|
228
|
-
}
|
|
229
|
-
const i = r == null ? void 0 : r[n];
|
|
230
|
-
return Array.isArray(i) ? i : [];
|
|
231
|
-
}
|
|
232
|
-
function ut(e) {
|
|
233
|
-
if (typeof e != "string" || !e) throw new Error("Invalid token provided");
|
|
234
|
-
return Vt(e);
|
|
235
|
-
}
|
|
236
|
-
function Or(e) {
|
|
237
|
-
const { exp: t } = ut(e);
|
|
238
|
-
return (/* @__PURE__ */ new Date()).getTime() / 1e3 > t;
|
|
239
|
-
}
|
|
240
|
-
function Ar(e) {
|
|
241
|
-
let t = ut(e);
|
|
242
|
-
const n = Object.keys(t == null ? void 0 : t.tenants);
|
|
243
|
-
return Array.isArray(n) ? n : [];
|
|
244
|
-
}
|
|
245
|
-
function Ur(e, t) {
|
|
246
|
-
return io(e, t, "permissions");
|
|
247
|
-
}
|
|
248
|
-
function Tr(e, t) {
|
|
249
|
-
return io(e, t, "roles");
|
|
250
|
-
}
|
|
251
|
-
const ie = (...e) => e.join("/").replace(/\/{2,}/g, "/");
|
|
252
|
-
async function w(e, t) {
|
|
253
|
-
var n;
|
|
254
|
-
const o = await e, r = { code: o.status, ok: o.ok, response: o }, i = await o.clone().json();
|
|
255
|
-
return o.ok ? r.data = i : (r.error = i, o.status === Cr.TOO_MANY_REQUESTS && Object.assign(r.error, { retryAfter: Number.parseInt((n = o.headers) === null || n === void 0 ? void 0 : n.get("retry-after")) || 0 })), r;
|
|
256
|
-
}
|
|
257
|
-
function Er(e) {
|
|
258
|
-
var t;
|
|
259
|
-
return ((t = ut(e)) === null || t === void 0 ? void 0 : t[ro]) || "";
|
|
260
|
-
}
|
|
261
|
-
const Oe = (e, t) => (n = t) => (o) => !e(o) && n.replace("{val}", o), ao = (e, t) => (n = t) => (o) => {
|
|
262
|
-
const r = e.filter(((i) => i(o)));
|
|
263
|
-
return !(r.length < e.length) && (n ? n.replace("{val}", o) : r.join(" OR "));
|
|
264
|
-
}, so = (...e) => ({ validate: (t) => (e.forEach(((n) => {
|
|
265
|
-
const o = n(t);
|
|
266
|
-
if (o) throw new Error(o);
|
|
267
|
-
})), !0) }), lo = (e) => (t) => e.test(t), jr = lo(/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/), Dr = lo(/^\+[1-9]{1}[0-9]{3,14}$/), Pr = (e, t) => (n) => so(...t).validate(((o, r, i) => {
|
|
268
|
-
const a = (Array.isArray(r) ? r.join(".") : String(r)).replace(/\[\\?("|')?(\w|d)+\\?("|')?\]/g, ((u, p, f) => "." + f)).split("."), l = a.length;
|
|
269
|
-
let s = 0, c = o === Object(o) ? o : void 0;
|
|
270
|
-
for (; c != null && s < l; ) c = c[a[s++]];
|
|
271
|
-
return s && s === l && c !== void 0 ? c : i;
|
|
272
|
-
})(n, e)), Rr = Oe(jr, '"{val}" is not a valid email'), Nr = Oe(Dr, '"{val}" is not a valid phone number'), Fr = Oe((Ln = 1, (e) => e.length >= Ln), "Minimum length is 1");
|
|
273
|
-
var Ln;
|
|
274
|
-
const Le = Oe(((e) => typeof e == "string"), "Input is not a string"), Lr = Oe(((e) => Array.isArray(e)), "Input is not an array"), zr = Oe(((e) => typeof e == "boolean"), "Input is not a boolean"), Br = Oe(((e) => e === void 0), "Input is defined"), Ft = ao([Le(), Br()], "Input is not a string or undefined"), Hr = ao([Lr(), zr()], "Input is not an array or boolean"), T = (...e) => (t) => (...n) => (e.forEach(((o, r) => so(...o).validate(n[r]))), t(...n)), co = (e) => [Le(`"${e}" must be a string`)], uo = (e) => [Ft(`"${e}" must be string or undefined`)], F = (e) => [Le(`"${e}" must be a string`), Fr(`"${e}" must not be empty`)], Yt = (e) => [Le(`"${e}" must be a string`), Rr()], po = (e) => [Le(`"${e}" must be a string`), Nr()], qr = T(F("accessKey")), Jr = (e) => ({ exchange: qr(((t, n) => w(e.post(y.accessKey.exchange, { loginOptions: n }, { token: t })))) }), Je = (e, t, n) => (t.forEach(((o) => {
|
|
275
|
-
const r = o.split(".");
|
|
276
|
-
let i = r.shift(), a = e;
|
|
277
|
-
for (; r.length > 0; ) {
|
|
278
|
-
if (a = a[i], !i || !a) throw Error(`Invalid path "${o}", "${i}" is missing or has no value`);
|
|
279
|
-
i = r.shift();
|
|
280
|
-
}
|
|
281
|
-
if (typeof a[i] != "function") throw Error(`"${o}" is not a function`);
|
|
282
|
-
const l = a[i];
|
|
283
|
-
a[i] = n(l);
|
|
284
|
-
})), e), go = ({ pollingIntervalMs: e = 1e3, timeoutMs: t = 6e5 } = {}) => ({ pollingIntervalMs: Math.max(e || Dn, Dn), timeoutMs: Math.min(t || Pn, Pn) });
|
|
285
|
-
var Ce, Lt;
|
|
286
|
-
(function(e) {
|
|
287
|
-
e.sms = "sms", e.voice = "voice", e.whatsapp = "whatsapp", e.im = "im";
|
|
288
|
-
})(Ce || (Ce = {})), (function(e) {
|
|
289
|
-
e.email = "email";
|
|
290
|
-
})(Lt || (Lt = {}));
|
|
291
|
-
const ye = Object.assign(Object.assign({}, Ce), Lt);
|
|
292
|
-
var zn;
|
|
293
|
-
(function(e) {
|
|
294
|
-
e.waiting = "waiting", e.running = "running", e.completed = "completed", e.failed = "failed";
|
|
295
|
-
})(zn || (zn = {}));
|
|
296
|
-
const ho = F("loginId"), Mr = T(F("token")), Ct = T(ho), Wr = T(F("pendingRef")), Kr = T(ho, Yt("email")), Vr = (e) => ({ verify: Mr(((t) => w(e.post(y.enchantedLink.verify, { token: t })))), signIn: Ct(((t, n, o = {}, r) => {
|
|
297
|
-
var { providerId: i } = o, a = B(o, ["providerId"]);
|
|
298
|
-
return w(e.post(ie(y.enchantedLink.signIn, ye.email), { loginId: t, URI: n, loginOptions: a, providerId: i }, { token: r }));
|
|
299
|
-
})), signUpOrIn: Ct(((t, n, o = {}) => {
|
|
300
|
-
var { providerId: r } = o, i = B(o, ["providerId"]);
|
|
301
|
-
return w(e.post(ie(y.enchantedLink.signUpOrIn, ye.email), { loginId: t, URI: n, loginOptions: i, providerId: r }));
|
|
302
|
-
})), signUp: Ct(((t, n, o, r = {}) => {
|
|
303
|
-
var { providerId: i } = r, a = B(r, ["providerId"]);
|
|
304
|
-
return w(e.post(ie(y.enchantedLink.signUp, ye.email), { loginId: t, URI: n, user: o, loginOptions: a, providerId: i }));
|
|
305
|
-
})), waitForSession: Wr(((t, n) => new Promise(((o) => {
|
|
306
|
-
const { pollingIntervalMs: r, timeoutMs: i } = go(n);
|
|
307
|
-
let a;
|
|
308
|
-
const l = setInterval((async () => {
|
|
309
|
-
const s = await e.post(y.enchantedLink.session, { pendingRef: t });
|
|
310
|
-
s.ok && (clearInterval(l), a && clearTimeout(a), o(w(Promise.resolve(s))));
|
|
311
|
-
}), r);
|
|
312
|
-
a = setTimeout((() => {
|
|
313
|
-
o({ error: { errorDescription: `Session polling timeout exceeded: ${i}ms`, errorCode: "0" }, ok: !1 }), clearInterval(l);
|
|
314
|
-
}), i);
|
|
315
|
-
})))), update: { email: Kr(((t, n, o, r, i) => w(e.post(y.enchantedLink.update.email, Object.assign({ loginId: t, email: n, URI: o }, i), { token: r })))) } }), Yr = T(F("flowId")), $r = T(F("executionId"), F("stepId"), F("interactionId")), Qr = (e) => ({ start: Yr(((t, n, o, r, i, a, l, s = !1) => w(e.post(y.flow.start, { flowId: t, options: n, conditionInteractionId: o, interactionId: r, componentsVersion: i, flowVersions: a, input: l, isCustomScreen: s })))), next: $r(((t, n, o, r, i, a, l = !1) => w(e.post(y.flow.next, { executionId: t, stepId: n, interactionId: o, version: r, componentsVersion: i, input: a, isCustomScreen: l })))) }), $t = F("loginId"), Xr = T(F("token")), Ot = T($t), Gr = T($t, po("phone")), Zr = T($t, Yt("email")), At = Object.keys(ye).filter(((e) => e !== Ce.voice && e !== Ce.im)), _r = (e) => ({ verify: Xr(((t) => w(e.post(y.magicLink.verify, { token: t })))), signIn: At.reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: Ot(((o, r, i = {}, a) => {
|
|
316
|
-
var { providerId: l } = i, s = B(i, ["providerId"]);
|
|
317
|
-
return w(e.post(ie(y.magicLink.signIn, n), { loginId: o, URI: r, loginOptions: s, providerId: l }, { token: a }));
|
|
318
|
-
})) })), {}), signUp: At.reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: Ot(((o, r, i, a = {}) => {
|
|
319
|
-
var { providerId: l } = a, s = B(a, ["providerId"]);
|
|
320
|
-
return w(e.post(ie(y.magicLink.signUp, n), { loginId: o, URI: r, user: i, loginOptions: s, providerId: l }));
|
|
321
|
-
})) })), {}), signUpOrIn: At.reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: Ot(((o, r, i = {}) => {
|
|
322
|
-
var { providerId: a } = i, l = B(i, ["providerId"]);
|
|
323
|
-
return w(e.post(ie(y.magicLink.signUpOrIn, n), { loginId: o, URI: r, loginOptions: l, providerId: a }));
|
|
324
|
-
})) })), {}), update: { email: Zr(((t, n, o, r, i) => w(e.post(y.magicLink.update.email, Object.assign({ loginId: t, email: n, URI: o }, i), { token: r })))), phone: Object.keys(Ce).filter(((t) => t !== Ce.voice)).reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: Gr(((o, r, i, a, l) => w(e.post(ie(y.magicLink.update.phone, n), Object.assign({ loginId: o, phone: r, URI: i }, l), { token: a })))) })), {}) } });
|
|
325
|
-
var zt;
|
|
326
|
-
(function(e) {
|
|
327
|
-
e.facebook = "facebook", e.github = "github", e.google = "google", e.microsoft = "microsoft", e.gitlab = "gitlab", e.apple = "apple", e.discord = "discord", e.linkedin = "linkedin", e.slack = "slack";
|
|
328
|
-
})(zt || (zt = {}));
|
|
329
|
-
const ei = T(F("code")), ti = (e) => ({ start: Object.assign(((t, n, o, r, i) => w(e.post(y.oauth.start, o || {}, { queryParams: Object.assign(Object.assign({ provider: t }, n && { redirectURL: n }), i && { loginHint: i }), token: r }))), Object.keys(zt).reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: (o, r, i, a) => w(e.post(y.oauth.start, r || {}, { queryParams: Object.assign(Object.assign({ provider: n }, o && { redirectURL: o }), a && { loginHint: a }), token: i })) })), {})), exchange: ei(((t) => w(e.post(y.oauth.exchange, { code: t })))), startNative: (t, n, o) => w(e.post(y.oauth.startNative, { provider: t, loginOptions: n, implicit: o })), finishNative: (t, n, o, r, i) => w(e.post(y.oauth.finishNative, { provider: t, stateId: n, user: o, code: r, idToken: i })), getOneTapClientId: (t) => w(e.get(y.oauth.oneTap.getOneTapClientId.replace("{provider}", t))), verifyOneTapIDToken: (t, n, o, r) => w(e.post(y.oauth.oneTap.verifyOneTapIDToken, { provider: t, idToken: n, nonce: o, loginOptions: r })), exchangeOneTapIDToken: (t, n, o, r) => w(e.post(y.oauth.oneTap.exchangeOneTapIDToken, { provider: t, idToken: n, nonce: o, loginOptions: r })) }), ni = F("appId"), oi = T(ni), ri = (e) => ({ connect: oi(((t, n, o) => {
|
|
330
|
-
const r = n == null ? void 0 : n.tenantId, i = n == null ? void 0 : n.tenantLevel;
|
|
331
|
-
return n == null || delete n.tenantId, n == null || delete n.tenantLevel, w(e.post(y.outbound.connect, { appId: t, tenantId: r, tenantLevel: i, options: n }, { token: o }));
|
|
332
|
-
})) }), pt = F("loginId"), ii = T(pt, F("code")), Ut = T(pt), ai = T(pt, po("phone")), si = T(pt, Yt("email")), li = (e) => ({ verify: Object.keys(ye).reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: ii(((o, r) => w(e.post(ie(y.otp.verify, n), { code: r, loginId: o })))) })), {}), signIn: Object.keys(ye).reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: Ut(((o, r = {}, i) => {
|
|
333
|
-
var { providerId: a } = r, l = B(r, ["providerId"]);
|
|
334
|
-
return w(e.post(ie(y.otp.signIn, n), { loginId: o, loginOptions: l, providerId: a }, { token: i }));
|
|
335
|
-
})) })), {}), signUp: Object.keys(ye).reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: Ut(((o, r, i = {}) => {
|
|
336
|
-
var { providerId: a } = i, l = B(i, ["providerId"]);
|
|
337
|
-
return w(e.post(ie(y.otp.signUp, n), { loginId: o, user: r, loginOptions: l, providerId: a }));
|
|
338
|
-
})) })), {}), signUpOrIn: Object.keys(ye).reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: Ut(((o, r = {}) => {
|
|
339
|
-
var { providerId: i } = r, a = B(r, ["providerId"]);
|
|
340
|
-
return w(e.post(ie(y.otp.signUpOrIn, n), { loginId: o, loginOptions: a, providerId: i }));
|
|
341
|
-
})) })), {}), update: { email: si(((t, n, o, r) => w(e.post(y.otp.update.email, Object.assign({ loginId: t, email: n }, r), { token: o })))), phone: Object.keys(Ce).reduce(((t, n) => Object.assign(Object.assign({}, t), { [n]: ai(((o, r, i, a) => w(e.post(ie(y.otp.update.phone, n), Object.assign({ loginId: o, phone: r }, a), { token: i })))) })), {}) } }), ci = T(F("tenant")), di = T(F("code")), ui = (e) => ({ start: ci(((t, n, o, r, i, a, l, s) => w(e.post(y.saml.start, o || {}, Object.assign({ queryParams: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ tenant: t }, n && { redirectURL: n }), i && { ssoId: i }), a && { forceAuthn: "true" }), l && { loginHint: l }), s && { initiatedEmail: t }) }, r && { token: r }))))), exchange: di(((t) => w(e.post(y.saml.exchange, { code: t })))) }), Qt = F("loginId"), pi = T(Qt, F("code")), gi = T(Qt), hi = T(Qt), fi = (e) => ({ signUp: gi(((t, n) => w(e.post(y.totp.signUp, { loginId: t, user: n })))), verify: pi(((t, n, o, r) => w(e.post(y.totp.verify, { loginId: t, code: n, loginOptions: o }, { token: r })))), update: hi(((t, n) => w(e.post(y.totp.update, { loginId: t }, { token: n })))) }), gt = F("loginId"), fo = F("newPassword"), Bn = T(gt, F("password")), vi = T(gt), mi = T(gt, fo), yi = T(gt, F("oldPassword"), fo), wi = (e) => ({ signUp: Bn(((t, n, o, r = {}) => {
|
|
342
|
-
var { providerId: i } = r, a = B(r, ["providerId"]);
|
|
343
|
-
return w(e.post(y.password.signUp, { loginId: t, password: n, user: o, loginOptions: a, providerId: i }));
|
|
344
|
-
})), signIn: Bn(((t, n, o = {}) => {
|
|
345
|
-
var { providerId: r } = o, i = B(o, ["providerId"]);
|
|
346
|
-
return w(e.post(y.password.signIn, { loginId: t, password: n, loginOptions: i, providerId: r }));
|
|
347
|
-
})), sendReset: vi(((t, n, o) => w(e.post(y.password.sendReset, { loginId: t, redirectUrl: n, templateOptions: o })))), update: mi(((t, n, o) => w(e.post(y.password.update, { loginId: t, newPassword: n }, { token: o })))), replace: yi(((t, n, o) => w(e.post(y.password.replace, { loginId: t, oldPassword: n, newPassword: o })))), policy: () => w(e.get(y.password.policy)) }), bi = co("loginId"), Xt = F("loginId"), ht = F("origin"), xi = T(Xt, ht, F("name")), ki = T(Xt, ht), Ii = T(bi, ht), Si = T(Xt, ht, uo("token")), Tt = T(F("transactionId"), F("response")), Ci = (e) => ({ signUp: { start: xi(((t, n, o, r) => w(e.post(y.webauthn.signUp.start, { user: { loginId: t, name: o }, origin: n, passkeyOptions: r })))), finish: Tt(((t, n) => w(e.post(y.webauthn.signUp.finish, { transactionId: t, response: n })))) }, signIn: { start: Ii(((t, n, o, r, i) => w(e.post(y.webauthn.signIn.start, { loginId: t, origin: n, loginOptions: o, passkeyOptions: i }, { token: r })))), finish: Tt(((t, n) => w(e.post(y.webauthn.signIn.finish, { transactionId: t, response: n })))) }, signUpOrIn: { start: ki(((t, n, o) => w(e.post(y.webauthn.signUpOrIn.start, { loginId: t, origin: n, passkeyOptions: o })))) }, update: { start: Si(((t, n, o, r) => w(e.post(y.webauthn.update.start, { loginId: t, origin: n, passkeyOptions: r }, { token: o })))), finish: Tt(((t, n) => w(e.post(y.webauthn.update.finish, { transactionId: t, response: n })))) } }), Oi = co("loginId"), Et = T(Oi), Ai = T(F("pendingRef")), Ui = (e) => ({ signUpOrIn: Et(((t, n = {}) => {
|
|
348
|
-
var { providerId: o } = n, r = B(n, ["providerId"]);
|
|
349
|
-
return w(e.post(y.notp.signUpOrIn, { loginId: t, loginOptions: r, providerId: o }));
|
|
350
|
-
})), signUp: Et(((t, n, o = {}) => {
|
|
351
|
-
var { providerId: r } = o, i = B(o, ["providerId"]);
|
|
352
|
-
return w(e.post(y.notp.signUp, { loginId: t, user: n, providerId: r, loginOptions: i }));
|
|
353
|
-
})), signIn: Et(((t, n = {}, o) => {
|
|
354
|
-
var { providerId: r } = n, i = B(n, ["providerId"]);
|
|
355
|
-
return w(e.post(y.notp.signIn, { loginId: t, loginOptions: i, providerId: r }, { token: o }));
|
|
356
|
-
})), waitForSession: Ai(((t, n) => new Promise(((o) => {
|
|
357
|
-
const { pollingIntervalMs: r, timeoutMs: i } = go(n);
|
|
358
|
-
let a;
|
|
359
|
-
const l = setInterval((async () => {
|
|
360
|
-
const s = await e.post(y.notp.session, { pendingRef: t });
|
|
361
|
-
s.ok && (clearInterval(l), a && clearTimeout(a), o(w(Promise.resolve(s))));
|
|
362
|
-
}), r);
|
|
363
|
-
a = setTimeout((() => {
|
|
364
|
-
o({ error: { errorDescription: `Session polling timeout exceeded: ${i}ms`, errorCode: "0" }, ok: !1 }), clearInterval(l);
|
|
365
|
-
}), i);
|
|
366
|
-
})))) }), Me = T(F("token")), We = T(uo("token"));
|
|
367
|
-
var Hn, qn, Ti = T([(Hn = "projectId", qn = F("projectId"), Oe(Pr(Hn, qn))())])(((e) => {
|
|
368
|
-
const { projectId: t, logger: n, baseUrl: o, cookiePolicy: r, baseHeaders: i = {}, refreshCookieName: a, fetch: l } = e;
|
|
369
|
-
return s = Sr({ baseUrl: o, projectId: t, logger: n, hooks: { get beforeRequest() {
|
|
370
|
-
var c;
|
|
371
|
-
return (c = e.hooks) === null || c === void 0 ? void 0 : c.beforeRequest;
|
|
372
|
-
}, get afterRequest() {
|
|
373
|
-
var c;
|
|
374
|
-
return (c = e.hooks) === null || c === void 0 ? void 0 : c.afterRequest;
|
|
375
|
-
}, get transformResponse() {
|
|
376
|
-
var c;
|
|
377
|
-
return (c = e.hooks) === null || c === void 0 ? void 0 : c.transformResponse;
|
|
378
|
-
} }, cookiePolicy: r, baseConfig: { baseHeaders: i }, refreshCookieName: a, fetch: l }), { accessKey: Jr(s), otp: li(s), magicLink: _r(s), enchantedLink: Vr(s), oauth: ti(s), outbound: ri(s), saml: ui(s), totp: fi(s), notp: Ui(s), webauthn: Ci(s), password: wi(s), flow: Qr(s), refresh: We(((c, u, p, f) => {
|
|
379
|
-
const b = {};
|
|
380
|
-
p && (b.externalToken = p);
|
|
381
|
-
const h = f ? y.tryRefresh : y.refresh;
|
|
382
|
-
return w(s.post(h, b, { token: c, queryParams: u }));
|
|
383
|
-
})), selectTenant: T([Le("tenantId")], [Ft('"token" must be string or undefined')])(((c, u) => w(s.post(y.selectTenant, { tenant: c }, { token: u })))), logout: We(((c) => w(s.post(y.logout, {}, { token: c })))), logoutAll: We(((c) => w(s.post(y.logoutAll, {}, { token: c })))), me: We(((c) => w(s.get(y.me, { token: c })))), myTenants: T([Hr('"tenants" must a string array or a boolean')], [Ft('"token" must be string or undefined')])(((c, u) => {
|
|
384
|
-
const p = {};
|
|
385
|
-
return typeof c == "boolean" ? p.dct = c : p.ids = c, w(s.post(y.myTenants, p, { token: u }));
|
|
386
|
-
})), history: We(((c) => w(s.get(y.history, { token: c })))), isJwtExpired: Me(Or), getTenants: Me(Ar), getJwtPermissions: Me(Ur), getJwtRoles: Me(Tr), getCurrentTenant: Me(Er), httpClient: s };
|
|
387
|
-
var s;
|
|
388
|
-
})), Ei = Object.assign(Ti, { DeliveryMethods: ye });
|
|
389
|
-
/*! js-cookie v3.0.5 | MIT */
|
|
390
|
-
function nt(e) {
|
|
391
|
-
for (var t = 1; t < arguments.length; t++) {
|
|
392
|
-
var n = arguments[t];
|
|
393
|
-
for (var o in n)
|
|
394
|
-
e[o] = n[o];
|
|
395
|
-
}
|
|
396
|
-
return e;
|
|
397
|
-
}
|
|
398
|
-
var ji = {
|
|
399
|
-
read: function(e) {
|
|
400
|
-
return e[0] === '"' && (e = e.slice(1, -1)), e.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent);
|
|
401
|
-
},
|
|
402
|
-
write: function(e) {
|
|
403
|
-
return encodeURIComponent(e).replace(
|
|
404
|
-
/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,
|
|
405
|
-
decodeURIComponent
|
|
406
|
-
);
|
|
407
|
-
}
|
|
408
|
-
};
|
|
409
|
-
function Bt(e, t) {
|
|
410
|
-
function n(r, i, a) {
|
|
411
|
-
if (!(typeof document > "u")) {
|
|
412
|
-
a = nt({}, t, a), typeof a.expires == "number" && (a.expires = new Date(Date.now() + a.expires * 864e5)), a.expires && (a.expires = a.expires.toUTCString()), r = encodeURIComponent(r).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);
|
|
413
|
-
var l = "";
|
|
414
|
-
for (var s in a)
|
|
415
|
-
a[s] && (l += "; " + s, a[s] !== !0 && (l += "=" + a[s].split(";")[0]));
|
|
416
|
-
return document.cookie = r + "=" + e.write(i, r) + l;
|
|
417
|
-
}
|
|
418
|
-
}
|
|
419
|
-
function o(r) {
|
|
420
|
-
if (!(typeof document > "u" || arguments.length && !r)) {
|
|
421
|
-
for (var i = document.cookie ? document.cookie.split("; ") : [], a = {}, l = 0; l < i.length; l++) {
|
|
422
|
-
var s = i[l].split("="), c = s.slice(1).join("=");
|
|
423
|
-
try {
|
|
424
|
-
var u = decodeURIComponent(s[0]);
|
|
425
|
-
if (a[u] = e.read(c, u), r === u)
|
|
426
|
-
break;
|
|
427
|
-
} catch {
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
return r ? a[r] : a;
|
|
431
|
-
}
|
|
432
|
-
}
|
|
433
|
-
return Object.create(
|
|
434
|
-
{
|
|
435
|
-
set: n,
|
|
436
|
-
get: o,
|
|
437
|
-
remove: function(r, i) {
|
|
438
|
-
n(
|
|
439
|
-
r,
|
|
440
|
-
"",
|
|
441
|
-
nt({}, i, {
|
|
442
|
-
expires: -1
|
|
443
|
-
})
|
|
444
|
-
);
|
|
445
|
-
},
|
|
446
|
-
withAttributes: function(r) {
|
|
447
|
-
return Bt(this.converter, nt({}, this.attributes, r));
|
|
448
|
-
},
|
|
449
|
-
withConverter: function(r) {
|
|
450
|
-
return Bt(nt({}, this.converter, r), this.attributes);
|
|
451
|
-
}
|
|
452
|
-
},
|
|
453
|
-
{
|
|
454
|
-
attributes: { value: Object.freeze(t) },
|
|
455
|
-
converter: { value: Object.freeze(e) }
|
|
456
|
-
}
|
|
457
|
-
);
|
|
458
|
-
}
|
|
459
|
-
var Fe = Bt(ji, { path: "/" });
|
|
460
|
-
function Di(e, t) {
|
|
461
|
-
return (function(n, o) {
|
|
462
|
-
return Object.prototype.hasOwnProperty.call(n, o);
|
|
463
|
-
})(e, t) ? e[t] : void 0;
|
|
464
|
-
}
|
|
465
|
-
function Pi(e, t, n, o) {
|
|
466
|
-
var r, i = document, a = "securitypolicyviolation", l = function(c) {
|
|
467
|
-
var u = new URL(e, location.href), p = c.blockedURI;
|
|
468
|
-
p !== u.href && p !== u.protocol.slice(0, -1) && p !== u.origin || (r = c, s());
|
|
469
|
-
};
|
|
470
|
-
i.addEventListener(a, l);
|
|
471
|
-
var s = function() {
|
|
472
|
-
return i.removeEventListener(a, l);
|
|
473
|
-
};
|
|
474
|
-
return Promise.resolve().then(t).then((function(c) {
|
|
475
|
-
return s(), c;
|
|
476
|
-
}), (function(c) {
|
|
477
|
-
return new Promise((function(u) {
|
|
478
|
-
var p = new MessageChannel();
|
|
479
|
-
p.port1.onmessage = function() {
|
|
480
|
-
return u();
|
|
481
|
-
}, p.port2.postMessage(null);
|
|
482
|
-
})).then((function() {
|
|
483
|
-
if (s(), r) return n(r);
|
|
484
|
-
throw c;
|
|
485
|
-
}));
|
|
486
|
-
}));
|
|
487
|
-
}
|
|
488
|
-
var Ri = { default: "endpoint" }, vo = "Blocked by CSP", mo = "The endpoint parameter is not a valid URL", Ni = "API key required", Fi = "3.11.6", Gt = "Failed to load the JS script of the agent", Zt = "9319";
|
|
489
|
-
function Li(e, t) {
|
|
490
|
-
var n, o, r, i, a, l, s, c = [], u = (n = (function(h) {
|
|
491
|
-
var m = pr([], h, !0);
|
|
492
|
-
return { current: function() {
|
|
493
|
-
return m[0];
|
|
494
|
-
}, postpone: function() {
|
|
495
|
-
var x = m.shift();
|
|
496
|
-
x !== void 0 && m.push(x);
|
|
497
|
-
}, exclude: function() {
|
|
498
|
-
m.shift();
|
|
499
|
-
} };
|
|
500
|
-
})(e), i = 100, a = 3e3, l = 0, o = function() {
|
|
501
|
-
return Math.random() * Math.min(a, i * Math.pow(2, l++));
|
|
502
|
-
}, r = /* @__PURE__ */ new Set(), [n.current(), function(h, m) {
|
|
503
|
-
var x, j = m instanceof Error ? m.message : "";
|
|
504
|
-
if (j === vo || j === mo) n.exclude(), x = 0;
|
|
505
|
-
else if (j === Zt) n.exclude();
|
|
506
|
-
else if (j === Gt) {
|
|
507
|
-
var E = Date.now() - h.getTime() < 50, P = n.current();
|
|
508
|
-
P && E && !r.has(P) && (r.add(P), x = 0), n.postpone();
|
|
509
|
-
} else n.postpone();
|
|
510
|
-
var N = n.current();
|
|
511
|
-
return N === void 0 ? void 0 : [N, x ?? h.getTime() + o() - Date.now()];
|
|
512
|
-
}]), p = u[0], f = u[1];
|
|
513
|
-
if (p === void 0) return Promise.reject(new TypeError("The list of script URL patterns is empty"));
|
|
514
|
-
var b = function(h) {
|
|
515
|
-
var m = /* @__PURE__ */ new Date(), x = function(E) {
|
|
516
|
-
return c.push({ url: h, startedAt: m, finishedAt: /* @__PURE__ */ new Date(), error: E });
|
|
517
|
-
}, j = t(h);
|
|
518
|
-
return j.then((function() {
|
|
519
|
-
return x();
|
|
520
|
-
}), x), j.catch((function(E) {
|
|
521
|
-
if (s != null || (s = E), c.length >= 5) throw s;
|
|
522
|
-
var P = f(m, E);
|
|
523
|
-
if (!P) throw s;
|
|
524
|
-
var N, v = P[0], U = P[1];
|
|
525
|
-
return (N = U, new Promise((function(J) {
|
|
526
|
-
return setTimeout(J, N);
|
|
527
|
-
}))).then((function() {
|
|
528
|
-
return b(v);
|
|
529
|
-
}));
|
|
530
|
-
}));
|
|
531
|
-
};
|
|
532
|
-
return b(p).then((function(h) {
|
|
533
|
-
return [h, c];
|
|
534
|
-
}));
|
|
535
|
-
}
|
|
536
|
-
var yo = "https://fpnpmcdn.net/v<version>/<apiKey>/loader_v<loaderVersion>.js", zi = yo;
|
|
537
|
-
function Bi(e) {
|
|
538
|
-
var t;
|
|
539
|
-
e.scriptUrlPattern;
|
|
540
|
-
var n = e.token, o = e.apiKey, r = o === void 0 ? n : o, i = B(e, ["scriptUrlPattern", "token", "apiKey"]), a = (t = Di(e, "scriptUrlPattern")) !== null && t !== void 0 ? t : yo, l = (function() {
|
|
541
|
-
var u = [], p = function() {
|
|
542
|
-
u.push({ time: /* @__PURE__ */ new Date(), state: document.visibilityState });
|
|
543
|
-
}, f = (function(b, h, m, x) {
|
|
544
|
-
return b.addEventListener(h, m, x), function() {
|
|
545
|
-
return b.removeEventListener(h, m, x);
|
|
546
|
-
};
|
|
547
|
-
})(document, "visibilitychange", p);
|
|
548
|
-
return p(), [u, f];
|
|
549
|
-
})(), s = l[0], c = l[1];
|
|
550
|
-
return Promise.resolve().then((function() {
|
|
551
|
-
if (!r || typeof r != "string") throw new Error(Ni);
|
|
552
|
-
var u = (function(p, f) {
|
|
553
|
-
return (Array.isArray(p) ? p : [p]).map((function(b) {
|
|
554
|
-
return (function(h, m) {
|
|
555
|
-
var x = encodeURIComponent;
|
|
556
|
-
return h.replace(/<[^<>]+>/g, (function(j) {
|
|
557
|
-
return j === "<version>" ? "3" : j === "<apiKey>" ? x(m) : j === "<loaderVersion>" ? x(Fi) : j;
|
|
558
|
-
}));
|
|
559
|
-
})(String(b), f);
|
|
560
|
-
}));
|
|
561
|
-
})(a, r);
|
|
562
|
-
return Li(u, Hi);
|
|
563
|
-
})).catch((function(u) {
|
|
564
|
-
throw c(), (function(p) {
|
|
565
|
-
return p instanceof Error && p.message === Zt ? new Error(Gt) : p;
|
|
566
|
-
})(u);
|
|
567
|
-
})).then((function(u) {
|
|
568
|
-
var p = u[0], f = u[1];
|
|
569
|
-
return c(), p.load(lt(lt({}, i), { ldi: { attempts: f, visibilityStates: s } }));
|
|
570
|
-
}));
|
|
571
|
-
}
|
|
572
|
-
function Hi(e) {
|
|
573
|
-
return Pi(e, (function() {
|
|
574
|
-
return (function(t) {
|
|
575
|
-
return new Promise((function(n, o) {
|
|
576
|
-
if ((function(l) {
|
|
577
|
-
if (URL.prototype) try {
|
|
578
|
-
return new URL(l, location.href), !1;
|
|
579
|
-
} catch (s) {
|
|
580
|
-
if (s instanceof Error && s.name === "TypeError") return !0;
|
|
581
|
-
throw s;
|
|
582
|
-
}
|
|
583
|
-
})(t)) throw new Error(mo);
|
|
584
|
-
var r = document.createElement("script"), i = function() {
|
|
585
|
-
var l;
|
|
586
|
-
return (l = r.parentNode) === null || l === void 0 ? void 0 : l.removeChild(r);
|
|
587
|
-
}, a = document.head || document.getElementsByTagName("head")[0];
|
|
588
|
-
r.onload = function() {
|
|
589
|
-
i(), n();
|
|
590
|
-
}, r.onerror = function() {
|
|
591
|
-
i(), o(new Error(Gt));
|
|
592
|
-
}, r.async = !0, r.src = t, a.appendChild(r);
|
|
593
|
-
}));
|
|
594
|
-
})(e);
|
|
595
|
-
}), (function() {
|
|
596
|
-
throw new Error(vo);
|
|
597
|
-
})).then(qi);
|
|
598
|
-
}
|
|
599
|
-
function qi() {
|
|
600
|
-
var e = window, t = "__fpjs_p_l_b", n = e[t];
|
|
601
|
-
if ((function(o, r) {
|
|
602
|
-
var i, a = (i = Object.getOwnPropertyDescriptor) === null || i === void 0 ? void 0 : i.call(Object, o, r);
|
|
603
|
-
a != null && a.configurable ? delete o[r] : a && !a.writable || (o[r] = void 0);
|
|
604
|
-
})(e, t), typeof (n == null ? void 0 : n.load) != "function") throw new Error(Zt);
|
|
605
|
-
return n;
|
|
606
|
-
}
|
|
607
|
-
const wo = "3.2.0", ee = typeof window < "u", jt = Math.pow(2, 31) - 1, Ji = `https://descopecdn.com/npm/oidc-client-ts@${wo}/dist/browser/oidc-client-ts.min.js`, Mi = `https://cdn.jsdelivr.net/npm/oidc-client-ts@${wo}/dist/browser/oidc-client-ts.min.js`, Wi = ["/v1/auth/refresh", "/v1/auth/try-refresh", "/v1/auth/me", "/v1/auth/me/tenants", "/v1/auth/me/history"];
|
|
608
|
-
let ue;
|
|
609
|
-
const bo = (e) => {
|
|
610
|
-
try {
|
|
611
|
-
return Vt(e).exp;
|
|
612
|
-
} catch {
|
|
613
|
-
return null;
|
|
614
|
-
}
|
|
615
|
-
}, Ki = (e) => {
|
|
616
|
-
const { refresh_expire_in: t, refresh_token: n } = e;
|
|
617
|
-
return t ? Math.floor(Date.now() / 1e3) + t : bo(n);
|
|
618
|
-
}, Vi = (e) => {
|
|
619
|
-
const { expires_in: t, expires_at: n, access_token: o } = e;
|
|
620
|
-
return n || (t ? Math.floor(Date.now() / 1e3) + t : o ? bo(o) : void 0);
|
|
621
|
-
}, xo = (e) => {
|
|
622
|
-
const { access_token: t, id_token: n, refresh_token: o, refresh_expire_in: r } = e, i = B(e, ["access_token", "id_token", "refresh_token", "refresh_expire_in"]);
|
|
623
|
-
return Object.assign({ sessionJwt: e.sessionJwt || t, idToken: n, refreshJwt: e.refreshJwt || o, sessionExpiration: e.sessionExpiration || Vi(e), cookieExpiration: e.cookieExpiration || Ki(e) }, i);
|
|
624
|
-
}, Pe = (e, t) => {
|
|
625
|
-
var n;
|
|
626
|
-
return ["beforeRequest", "afterRequest"].reduce(((o, r) => {
|
|
627
|
-
var i;
|
|
628
|
-
return o[r] = [].concat(((i = e.hooks) === null || i === void 0 ? void 0 : i[r]) || []).concat((t == null ? void 0 : t[r]) || []), o;
|
|
629
|
-
}), (n = e.hooks) !== null && n !== void 0 ? n : e.hooks = {}), e;
|
|
630
|
-
}, ot = async (e) => {
|
|
631
|
-
if (!(e != null && e.ok)) return {};
|
|
632
|
-
const t = await (e == null ? void 0 : e.clone().json()), n = (t == null ? void 0 : t.authInfo) || t || {};
|
|
633
|
-
return xo(n);
|
|
634
|
-
}, Ht = () => ee && !!window.descopeBridge, Dt = (e, t) => {
|
|
635
|
-
if (!((t == null ? void 0 : t.status) >= 400 && (t == null ? void 0 : t.status) < 500)) return !1;
|
|
636
|
-
const n = (e == null ? void 0 : e.path) || "";
|
|
637
|
-
return Wi.includes(n);
|
|
638
|
-
}, Yi = ue !== void 0 || ee && window.localStorage !== void 0, me = (e, t) => {
|
|
639
|
-
var n, o;
|
|
640
|
-
return (o = (n = ue || ee && window.localStorage) === null || n === void 0 ? void 0 : n.setItem) === null || o === void 0 ? void 0 : o.call(n, e, t);
|
|
641
|
-
}, pe = (e) => {
|
|
642
|
-
var t, n;
|
|
643
|
-
return (n = (t = ue || ee && window.localStorage) === null || t === void 0 ? void 0 : t.getItem) === null || n === void 0 ? void 0 : n.call(t, e);
|
|
644
|
-
}, ce = (e) => {
|
|
645
|
-
var t, n;
|
|
646
|
-
return (n = (t = ue || ee && window.localStorage) === null || t === void 0 ? void 0 : t.removeItem) === null || n === void 0 ? void 0 : n.call(t, e);
|
|
647
|
-
}, $i = (e) => {
|
|
648
|
-
var t, n, o, r, i;
|
|
649
|
-
return (i = (n = (t = ue == null ? void 0 : ue.key) === null || t === void 0 ? void 0 : t.call(ue, e)) !== null && n !== void 0 ? n : ee && ((r = (o = window.localStorage) === null || o === void 0 ? void 0 : o.key) === null || r === void 0 ? void 0 : r.call(o, e))) !== null && i !== void 0 ? i : null;
|
|
650
|
-
}, Q = (...e) => {
|
|
651
|
-
console.debug(...e);
|
|
652
|
-
}, Jn = (...e) => {
|
|
653
|
-
console.warn(...e);
|
|
654
|
-
}, Qi = (e, t) => {
|
|
655
|
-
let n;
|
|
656
|
-
var o;
|
|
657
|
-
return t > 0 ? (n = 1e3 * t, Q(`Using provided nextRefreshSeconds: ${t}s`)) : n = ((o = e) ? o.getTime() - (/* @__PURE__ */ new Date()).getTime() : 0) - 2e4, n > jt && (Q(`Timeout is too large (${n}ms), setting it to ${jt}ms`), n = jt), n;
|
|
658
|
-
}, ft = "DS", Xe = "DSR", _t = "DSI";
|
|
659
|
-
function Mn(e, t, n) {
|
|
660
|
-
if (t) {
|
|
661
|
-
const { cookieDomain: o, cookiePath: r, cookieSameSite: i, cookieExpiration: a, cookieSecure: l } = n, s = new Date(1e3 * a), c = qt(o);
|
|
662
|
-
Fe.set(e, t, { path: r, domain: c ? o : void 0, expires: s, sameSite: i, secure: l });
|
|
663
|
-
}
|
|
664
|
-
}
|
|
665
|
-
function qt(e) {
|
|
666
|
-
const t = window.location.hostname.split("."), n = e == null ? void 0 : e.split(".");
|
|
667
|
-
return t.slice(-(n == null ? void 0 : n.length)).join(".") === e;
|
|
668
|
-
}
|
|
669
|
-
const en = (e) => (e == null ? void 0 : e.cookieName) || ft, ct = (e) => (e == null ? void 0 : e.cookieName) || Xe;
|
|
670
|
-
function Ye(e = "", t) {
|
|
671
|
-
return Fe.get(ct(t)) || pe(`${e}${Xe}`) || "";
|
|
672
|
-
}
|
|
673
|
-
function Wn(e = "", t) {
|
|
674
|
-
return Fe.get(en(t)) || pe(`${e}${ft}`) || "";
|
|
675
|
-
}
|
|
676
|
-
function ko(e = "") {
|
|
677
|
-
return pe(`${e}${_t}`) || "";
|
|
678
|
-
}
|
|
679
|
-
function Io(e = "", t, n, o) {
|
|
680
|
-
ce(`${e}${Xe}`), ce(`${e}${ft}`), ce(`${e}${_t}`);
|
|
681
|
-
const r = en(t);
|
|
682
|
-
Fe.remove(r, o == null ? void 0 : o.session);
|
|
683
|
-
const i = ct(n);
|
|
684
|
-
Fe.remove(i, o == null ? void 0 : o.refresh);
|
|
685
|
-
}
|
|
686
|
-
const Xi = (e, t) => (n) => {
|
|
687
|
-
const o = Object.assign(n, { token: n.token || Ye(e, t) }), r = (function(i = "") {
|
|
688
|
-
return pe(`${i}DTD`) || "";
|
|
689
|
-
})(e);
|
|
690
|
-
return r && (o.headers = Object.assign(Object.assign({}, o.headers || {}), { "x-descope-trusted-device-token": r })), o;
|
|
691
|
-
}, Gi = ee && (localStorage == null ? void 0 : localStorage.getItem("fingerprint.endpoint.url")) || "https://api.descope.com", Zi = "vsid", _i = "vrid", tn = "fp", So = (e = !1) => {
|
|
692
|
-
const t = pe(tn);
|
|
693
|
-
if (!t) return null;
|
|
694
|
-
const n = JSON.parse(t);
|
|
695
|
-
return (/* @__PURE__ */ new Date()).getTime() > n.expiry && !e ? null : n.value;
|
|
696
|
-
}, ea = async (e, t = Gi) => {
|
|
697
|
-
try {
|
|
698
|
-
if (So()) return;
|
|
699
|
-
const n = (Date.now().toString(36) + Math.random().toString(36).substring(2) + Math.random().toString(36).substring(2)).substring(0, 27), o = new URL(t);
|
|
700
|
-
o.pathname = "/fXj8gt3x8VulJBna/x96Emn69oZwcd7I6";
|
|
701
|
-
const r = new URL(t);
|
|
702
|
-
r.pathname = "/fXj8gt3x8VulJBna/w78aRZnnDZ3Aqw0I";
|
|
703
|
-
const i = r.toString() + "?apiKey=<apiKey>&version=<version>&loaderVersion=<loaderVersion>", a = Bi({ apiKey: e, endpoint: [o.toString(), Ri], scriptUrlPattern: [i, zi] }), l = await a, { requestId: s } = await l.get({ linkedId: n }), c = ((u, p) => ({ [Zi]: u, [_i]: p }))(n, s);
|
|
704
|
-
((u) => {
|
|
705
|
-
const p = { value: u, expiry: (/* @__PURE__ */ new Date()).getTime() + 864e5 };
|
|
706
|
-
me(tn, JSON.stringify(p));
|
|
707
|
-
})(c);
|
|
708
|
-
} catch (n) {
|
|
709
|
-
console.warn("Could not load fingerprint", n);
|
|
710
|
-
}
|
|
711
|
-
}, La = () => {
|
|
712
|
-
ce(tn);
|
|
713
|
-
}, ta = (e) => {
|
|
714
|
-
const t = So(!0);
|
|
715
|
-
return t && e.body && (e.body.fpData = t), e;
|
|
716
|
-
}, Ne = "descopeFlowNonce", Kn = "X-Descope-Flow-Nonce", Vn = "/v1/flow/start", Jt = "/v1/flow/next", Mt = (e, t = Ne) => `${t}${e}`, na = (e, t = Ne) => {
|
|
717
|
-
try {
|
|
718
|
-
const n = Mt(e, t);
|
|
719
|
-
ce(n);
|
|
720
|
-
} catch (n) {
|
|
721
|
-
console.error("Error removing flow nonce:", n);
|
|
722
|
-
}
|
|
723
|
-
}, Co = (e) => {
|
|
724
|
-
var t;
|
|
725
|
-
return ((t = /.*\|#\|(.*)/.exec(e)) === null || t === void 0 ? void 0 : t[1]) || null;
|
|
726
|
-
}, Yn = (e) => {
|
|
727
|
-
var t;
|
|
728
|
-
return e.path === Jt && (!((t = e.body) === null || t === void 0) && t.executionId) ? Co(e.body.executionId) : null;
|
|
729
|
-
}, nn = "dls_last_user_login_id", on = "dls_last_user_display_name", $n = (e) => me(nn, e), Wt = () => pe(nn), Kt = () => pe(on), oa = (e) => async (...t) => {
|
|
730
|
-
var n;
|
|
731
|
-
t[1] = t[1] || {};
|
|
732
|
-
const [, o = {}] = t, r = Wt(), i = Kt();
|
|
733
|
-
return r && ((n = o.lastAuth) !== null && n !== void 0 || (o.lastAuth = {}), o.lastAuth.loginId = r, o.lastAuth.name = i), await e(...t);
|
|
734
|
-
}, ra = (e) => (t) => async (...n) => {
|
|
735
|
-
const o = await t(...n);
|
|
736
|
-
return e || (ce(nn), ce(on)), o;
|
|
737
|
-
};
|
|
738
|
-
function rt() {
|
|
739
|
-
const e = [];
|
|
740
|
-
return { pub: (t) => {
|
|
741
|
-
e.forEach(((n) => n(t)));
|
|
742
|
-
}, sub: (t) => {
|
|
743
|
-
const n = e.push(t) - 1;
|
|
744
|
-
return () => e.splice(n, 1);
|
|
745
|
-
} };
|
|
746
|
-
}
|
|
747
|
-
const ia = (e, t, n, o) => (r) => async (...i) => {
|
|
748
|
-
const a = await r(...i);
|
|
749
|
-
return Io(e, t, n, o == null ? void 0 : o()), a;
|
|
750
|
-
};
|
|
751
|
-
async function it(e) {
|
|
752
|
-
const t = (function(r) {
|
|
753
|
-
var i;
|
|
754
|
-
const a = JSON.parse(r);
|
|
755
|
-
return a.publicKey.challenge = Qe(a.publicKey.challenge), a.publicKey.user.id = Qe(a.publicKey.user.id), (i = a.publicKey.excludeCredentials) === null || i === void 0 || i.forEach(((l) => {
|
|
756
|
-
l.id = Qe(l.id);
|
|
757
|
-
})), a;
|
|
758
|
-
})(e);
|
|
759
|
-
return o = await navigator.credentials.create(t), JSON.stringify({ id: o.id, rawId: Ie(o.rawId), type: o.type, response: { attestationObject: Ie(o.response.attestationObject), clientDataJSON: Ie(o.response.clientDataJSON) } });
|
|
760
|
-
var o;
|
|
761
|
-
}
|
|
762
|
-
async function Pt(e) {
|
|
763
|
-
const t = Ao(e);
|
|
764
|
-
return Uo(await navigator.credentials.get(t));
|
|
765
|
-
}
|
|
766
|
-
async function aa(e, t) {
|
|
767
|
-
const n = Ao(e);
|
|
768
|
-
return n.signal = t.signal, n.mediation = "conditional", Uo(await navigator.credentials.get(n));
|
|
769
|
-
}
|
|
770
|
-
async function Oo(e = !1) {
|
|
771
|
-
var t, n;
|
|
772
|
-
if (!ee) return Promise.resolve(!1);
|
|
773
|
-
if (Ht()) {
|
|
774
|
-
const r = (n = (t = window.descopeBridge) === null || t === void 0 ? void 0 : t.hostInfo) === null || n === void 0 ? void 0 : n.webauthn;
|
|
775
|
-
if (typeof r == "boolean") return r;
|
|
776
|
-
}
|
|
777
|
-
const o = !!(window.PublicKeyCredential && navigator.credentials && navigator.credentials.create && navigator.credentials.get);
|
|
778
|
-
return o && e && PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable ? PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable() : o;
|
|
779
|
-
}
|
|
780
|
-
function Ao(e) {
|
|
781
|
-
var t;
|
|
782
|
-
const n = JSON.parse(e);
|
|
783
|
-
return n.publicKey.challenge = Qe(n.publicKey.challenge), (t = n.publicKey.allowCredentials) === null || t === void 0 || t.forEach(((o) => {
|
|
784
|
-
o.id = Qe(o.id);
|
|
785
|
-
})), n;
|
|
786
|
-
}
|
|
787
|
-
function Uo(e) {
|
|
788
|
-
return JSON.stringify({ id: e.id, rawId: Ie(e.rawId), type: e.type, response: { authenticatorData: Ie(e.response.authenticatorData), clientDataJSON: Ie(e.response.clientDataJSON), signature: Ie(e.response.signature), userHandle: e.response.userHandle ? Ie(e.response.userHandle) : void 0 } });
|
|
789
|
-
}
|
|
790
|
-
function Qe(e) {
|
|
791
|
-
const t = e.replace(/_/g, "/").replace(/-/g, "+");
|
|
792
|
-
return Uint8Array.from(atob(t), ((n) => n.charCodeAt(0))).buffer;
|
|
793
|
-
}
|
|
794
|
-
function Ie(e) {
|
|
795
|
-
return btoa(String.fromCharCode.apply(null, new Uint8Array(e))).replace(/\//g, "_").replace(/\+/g, "-").replace(/=/g, "");
|
|
796
|
-
}
|
|
797
|
-
var Qn, sa = (Qn = (e) => ({ async signUp(t, n, o) {
|
|
798
|
-
const r = await e.webauthn.signUp.start(t, window.location.origin, n, o);
|
|
799
|
-
if (!r.ok) return r;
|
|
800
|
-
const i = await it(r.data.options);
|
|
801
|
-
return await e.webauthn.signUp.finish(r.data.transactionId, i);
|
|
802
|
-
}, async signIn(t, n) {
|
|
803
|
-
const o = await e.webauthn.signIn.start(t, window.location.origin, void 0, void 0, n);
|
|
804
|
-
if (!o.ok) return o;
|
|
805
|
-
const r = await Pt(o.data.options);
|
|
806
|
-
return await e.webauthn.signIn.finish(o.data.transactionId, r);
|
|
807
|
-
}, async signUpOrIn(t, n) {
|
|
808
|
-
var o;
|
|
809
|
-
const r = await e.webauthn.signUpOrIn.start(t, window.location.origin, n);
|
|
810
|
-
if (!r.ok) return r;
|
|
811
|
-
if (!((o = r.data) === null || o === void 0) && o.create) {
|
|
812
|
-
const i = await it(r.data.options);
|
|
813
|
-
return await e.webauthn.signUp.finish(r.data.transactionId, i);
|
|
814
|
-
}
|
|
815
|
-
{
|
|
816
|
-
const i = await Pt(r.data.options);
|
|
817
|
-
return await e.webauthn.signIn.finish(r.data.transactionId, i);
|
|
818
|
-
}
|
|
819
|
-
}, async update(t, n, o) {
|
|
820
|
-
const r = await e.webauthn.update.start(t, window.location.origin, n, o);
|
|
821
|
-
if (!r.ok) return r;
|
|
822
|
-
const i = await it(r.data.options);
|
|
823
|
-
return await e.webauthn.update.finish(r.data.transactionId, i);
|
|
824
|
-
}, helpers: { create: it, get: Pt, isSupported: Oo, conditional: aa } }), (...e) => {
|
|
825
|
-
const t = Qn(...e);
|
|
826
|
-
return Object.assign(t.signUp, e[0].webauthn.signUp), Object.assign(t.signIn, e[0].webauthn.signIn), Object.assign(t.signUpOrIn, e[0].webauthn.signUpOrIn), Object.assign(t.update, e[0].webauthn.update), t;
|
|
827
|
-
});
|
|
828
|
-
const Xn = { config: "/fedcm/config" }, la = () => {
|
|
829
|
-
if (window.crypto && window.crypto.getRandomValues) {
|
|
830
|
-
const e = new Uint8Array(16);
|
|
831
|
-
return window.crypto.getRandomValues(e), Array.from(e, ((t) => t.toString(16).padStart(2, "0"))).join("");
|
|
832
|
-
}
|
|
833
|
-
return Math.random().toString(36).substring(2);
|
|
834
|
-
};
|
|
835
|
-
async function Gn(e, t) {
|
|
836
|
-
var n;
|
|
837
|
-
try {
|
|
838
|
-
await To(e, t);
|
|
839
|
-
} catch (o) {
|
|
840
|
-
(n = t == null ? void 0 : t.onFailed) === null || n === void 0 || n.call(t, o);
|
|
841
|
-
}
|
|
842
|
-
}
|
|
843
|
-
async function To(e, t) {
|
|
844
|
-
var n, o;
|
|
845
|
-
const r = await (async function(i, a = "google", l, s, c) {
|
|
846
|
-
const u = la(), p = await (async function() {
|
|
847
|
-
return new Promise(((h, m) => {
|
|
848
|
-
if (window.google) return void h(window.google.accounts.id);
|
|
849
|
-
let x = document.getElementById("google-gsi-client-script");
|
|
850
|
-
x || (x = document.createElement("script"), document.head.appendChild(x), x.async = !0, x.defer = !0, x.id = "google-gsi-client-script", x.src = "https://accounts.google.com/gsi/client"), x.onload = function() {
|
|
851
|
-
window.google ? h(window.google.accounts.id) : m("Failed to load Google GSI client script - not loaded properly");
|
|
852
|
-
}, x.onerror = function() {
|
|
853
|
-
m("Failed to load Google GSI client script - failed to load");
|
|
854
|
-
};
|
|
855
|
-
}));
|
|
856
|
-
})(), f = await i.oauth.getOneTapClientId(a);
|
|
857
|
-
if (!f.ok) throw new Error("Failed to get OneTap client ID for provider " + a);
|
|
858
|
-
const b = f.data.clientId;
|
|
859
|
-
return new Promise(((h) => {
|
|
860
|
-
var m, x;
|
|
861
|
-
const j = (E) => {
|
|
862
|
-
h({ provider: a, nonce: u, credential: E == null ? void 0 : E.credential });
|
|
863
|
-
};
|
|
864
|
-
p.initialize(Object.assign(Object.assign({}, l), { itp_support: (m = l == null ? void 0 : l.itp_support) === null || m === void 0 || m, use_fedcm_for_prompt: (x = l == null ? void 0 : l.use_fedcm_for_prompt) === null || x === void 0 || x, client_id: b, callback: j, nonce: u })), p.prompt(((E) => {
|
|
865
|
-
var P, N;
|
|
866
|
-
if (c && (E != null && E.isDismissedMoment())) {
|
|
867
|
-
const v = (P = E.getDismissedReason) === null || P === void 0 ? void 0 : P.call(E);
|
|
868
|
-
return c == null || c(v), void j();
|
|
869
|
-
}
|
|
870
|
-
if (s && (E != null && E.isSkippedMoment())) {
|
|
871
|
-
const v = (N = E.getSkippedReason) === null || N === void 0 ? void 0 : N.call(E);
|
|
872
|
-
return s == null || s(v), void j();
|
|
873
|
-
}
|
|
874
|
-
}));
|
|
875
|
-
}));
|
|
876
|
-
})(e, t.provider, t.oneTapConfig, t.onSkipped, t.onDismissed);
|
|
877
|
-
if (!r.credential) return null;
|
|
878
|
-
if (t != null && t.onCodeReceived) {
|
|
879
|
-
const i = await e.oauth.verifyOneTapIDToken(r.provider, r.credential, r.nonce, t == null ? void 0 : t.loginOptions);
|
|
880
|
-
if (!i.ok || !i.data) throw new Error("Failed to verify OneTap client ID for provider " + r.provider);
|
|
881
|
-
(n = t == null ? void 0 : t.onCodeReceived) === null || n === void 0 || n.call(t, i.data.code);
|
|
882
|
-
} else {
|
|
883
|
-
const i = await e.oauth.exchangeOneTapIDToken(r.provider, r.credential, r.nonce, t == null ? void 0 : t.loginOptions);
|
|
884
|
-
if (!i.ok || !i.data) throw new Error("Failed to exchange OneTap client ID for provider " + r.provider);
|
|
885
|
-
(o = t == null ? void 0 : t.onAuthenticated) === null || o === void 0 || o.call(t, i.data);
|
|
886
|
-
}
|
|
887
|
-
}
|
|
888
|
-
var ca = (e) => Object.assign(Object.assign({}, e.flow), { start: async (...t) => {
|
|
889
|
-
const n = await Oo(), o = Object.assign(Object.assign({ location: window.location.href }, t[1]), { deviceInfo: { webAuthnSupport: n }, startOptionsVersion: 1 });
|
|
890
|
-
return t[1] = o, e.flow.start(...t);
|
|
891
|
-
} });
|
|
892
|
-
const da = () => window.location.search.includes("code") && window.location.search.includes("state");
|
|
893
|
-
let Rt;
|
|
894
|
-
const Eo = (e, t) => new Promise(((n, o) => {
|
|
895
|
-
if (!e.length) return o(new Error("No URLs provided to loadScriptWithFallback"));
|
|
896
|
-
const r = t();
|
|
897
|
-
if (r) return n(r);
|
|
898
|
-
const i = e.shift(), a = document.createElement("script");
|
|
899
|
-
a.src = i, a.id = ((l) => {
|
|
900
|
-
let s = 0;
|
|
901
|
-
for (let c = 0; c < l.length; c++) s = (s << 5) - s + l.charCodeAt(c), s |= 0;
|
|
902
|
-
return Math.abs(s).toString(16);
|
|
903
|
-
})(i), a.onload = () => {
|
|
904
|
-
const l = t();
|
|
905
|
-
if (l) return n(l);
|
|
906
|
-
throw new Error("Could not get entry after loading script from URL");
|
|
907
|
-
}, a.addEventListener("error", (() => {
|
|
908
|
-
Eo(e, t), a.setAttribute("data-error", "true");
|
|
909
|
-
})), document.body.appendChild(a);
|
|
910
|
-
})), ua = async (e, t, n) => {
|
|
911
|
-
Rt || (Rt = (async () => {
|
|
912
|
-
try {
|
|
913
|
-
return require("oidc-client-ts");
|
|
914
|
-
} catch {
|
|
915
|
-
return Eo([Ji, Mi], (() => window.oidc));
|
|
916
|
-
}
|
|
917
|
-
})());
|
|
918
|
-
const { OidcClient: o, WebStorageStateStore: r } = await Rt;
|
|
919
|
-
if (!o) throw new Error("oidc-client-ts is not installed. Please install it by running `npm install oidc-client-ts`");
|
|
920
|
-
const i = (n == null ? void 0 : n.redirectUri) || window.location.href;
|
|
921
|
-
let a, l, s, c;
|
|
922
|
-
if (n != null && n.issuer) {
|
|
923
|
-
if (!n.clientId) throw new Error("clientId is required when providing a custom issuer/authority");
|
|
924
|
-
a = n.issuer, l = n.clientId, s = `${l}_user`, c = "openid";
|
|
925
|
-
} else n != null && n.applicationId ? (a = e.httpClient.buildUrl(t), a = `${a}/${n.applicationId}`, l = t, s = `${l}_user`, c = "openid email roles descope.custom_claims offline_access") : (a = e.httpClient.buildUrl(t), l = t, s = `${l}_user`, c = "openid email roles descope.custom_claims offline_access");
|
|
926
|
-
const u = { authority: a, client_id: l, redirect_uri: i, response_type: "code", scope: (n == null ? void 0 : n.scope) || c, stateStore: new r({ store: window.localStorage, prefix: l }), loadUserInfo: !0, fetchRequestCredentials: "same-origin" };
|
|
927
|
-
return n != null && n.redirectUri && (u.redirect_uri = n.redirectUri), { client: new o(u), stateUserKey: s };
|
|
928
|
-
}, pa = (e, t, n) => {
|
|
929
|
-
const o = async () => {
|
|
930
|
-
let i, a;
|
|
931
|
-
return i && a || ({ client: i, stateUserKey: a } = await ua(e, t, n)), { client: i, stateUserKey: a };
|
|
932
|
-
}, r = async (i = "") => {
|
|
933
|
-
var a;
|
|
934
|
-
const { client: l, stateUserKey: s } = await o(), c = await l.processSigninResponse(i || window.location.href);
|
|
935
|
-
var u;
|
|
936
|
-
return await ((a = e.httpClient.hooks) === null || a === void 0 ? void 0 : a.afterRequest({}, new Response(JSON.stringify(c)))), me(s, JSON.stringify({ id_token: (u = c).id_token, session_state: u.session_state, profile: u.profile })), (() => {
|
|
937
|
-
const p = new URL(window.location.href);
|
|
938
|
-
p.searchParams.delete("code"), p.searchParams.delete("state"), window.history.replaceState({}, document.title, p.toString());
|
|
939
|
-
})(), c;
|
|
940
|
-
};
|
|
941
|
-
return { loginWithRedirect: async (i = {}, a = !1) => {
|
|
942
|
-
const { client: l } = await o(), s = await l.createSigninRequest(i), { url: c } = s;
|
|
943
|
-
return a || (window.location.href = c), { ok: !0, data: s };
|
|
944
|
-
}, finishLogin: r, finishLoginIfNeed: async (i = "") => {
|
|
945
|
-
if (da()) return await r(i);
|
|
946
|
-
}, refreshToken: async (i) => {
|
|
947
|
-
var a;
|
|
948
|
-
const { client: l, stateUserKey: s } = await o(), c = ((f) => {
|
|
949
|
-
const b = pe(f);
|
|
950
|
-
return b ? JSON.parse(b) : null;
|
|
951
|
-
})(s);
|
|
952
|
-
if (!c) throw new Error("User not found in storage to refresh token");
|
|
953
|
-
let u = i;
|
|
954
|
-
if (!u) {
|
|
955
|
-
const f = {};
|
|
956
|
-
e.httpClient.hooks.beforeRequest(f), u = f.token;
|
|
957
|
-
}
|
|
958
|
-
const p = await l.useRefreshToken({ state: { refresh_token: u, session_state: c.session_state, profile: c.profile } });
|
|
959
|
-
return await ((a = e.httpClient.hooks) === null || a === void 0 ? void 0 : a.afterRequest({}, new Response(JSON.stringify(p)))), p;
|
|
960
|
-
}, logout: async (i, a = !1) => {
|
|
961
|
-
const { client: l, stateUserKey: s } = await o();
|
|
962
|
-
i || (i = {}), i.id_token_hint = i.id_token_hint || ko(), i.post_logout_redirect_uri = i.post_logout_redirect_uri || window.location.href;
|
|
963
|
-
const c = await l.createSignoutRequest(i), { url: u } = c;
|
|
964
|
-
return ce(s), a || window.location.replace(u), c;
|
|
965
|
-
} };
|
|
966
|
-
}, ga = (/* @__PURE__ */ (function(...e) {
|
|
967
|
-
return (t) => e.reduce(((n, o) => o(n)), t);
|
|
968
|
-
})(((e) => (t) => {
|
|
969
|
-
var n;
|
|
970
|
-
return n = t.customStorage, ue = n, e(t);
|
|
971
|
-
}), ((e) => (t) => {
|
|
972
|
-
var { fpKey: n, fpLoad: o } = t, r = B(t, ["fpKey", "fpLoad"]);
|
|
973
|
-
return ee ? (n && o && ea(n).catch((() => null)), e(Pe(r, { beforeRequest: ta }))) : e(r);
|
|
974
|
-
}), ((e) => (t) => {
|
|
975
|
-
var { autoRefresh: n } = t, o = B(t, ["autoRefresh"]);
|
|
976
|
-
if (!n || Ht()) return e(o);
|
|
977
|
-
const { clearAllTimers: r, setTimer: i } = /* @__PURE__ */ (() => {
|
|
978
|
-
const c = [];
|
|
979
|
-
return { clearAllTimers: () => {
|
|
980
|
-
for (; c.length; ) clearTimeout(c.pop());
|
|
981
|
-
}, setTimer: (u, p) => {
|
|
982
|
-
c.push(setTimeout(u, p));
|
|
983
|
-
} };
|
|
984
|
-
})();
|
|
985
|
-
let a, l;
|
|
986
|
-
ee && document.addEventListener("visibilitychange", (() => {
|
|
987
|
-
document.visibilityState === "visible" && a && /* @__PURE__ */ new Date() > a && (Q("Expiration time passed, refreshing session"), s.refresh(Ye() || l));
|
|
988
|
-
}));
|
|
989
|
-
const s = e(Pe(o, { afterRequest: async (c, u) => {
|
|
990
|
-
const { sessionJwt: p, refreshJwt: f, sessionExpiration: b, nextRefreshSeconds: h } = await ot(u);
|
|
991
|
-
if (Dt(c, u)) Q("Session invalidated, canceling all timers"), r();
|
|
992
|
-
else if (p || b) {
|
|
993
|
-
if (a = ((j, E) => {
|
|
994
|
-
if (E) return new Date(1e3 * E);
|
|
995
|
-
Q("Could not extract expiration time from session token, trying to decode the token");
|
|
996
|
-
try {
|
|
997
|
-
const P = Vt(j);
|
|
998
|
-
if (P.exp) return new Date(1e3 * P.exp);
|
|
999
|
-
} catch {
|
|
1000
|
-
return null;
|
|
1001
|
-
}
|
|
1002
|
-
})(p, b), !a) return void Q("Could not extract expiration time from session token");
|
|
1003
|
-
l = f;
|
|
1004
|
-
const m = Qi(a, h);
|
|
1005
|
-
if (r(), m <= 2e4) return void Q("Session is too close to expiration, not setting refresh timer");
|
|
1006
|
-
const x = new Date(Date.now() + m).toLocaleTimeString("en-US", { hour12: !1 });
|
|
1007
|
-
Q(`Setting refresh timer for ${x}. (${m}ms)`), i((() => {
|
|
1008
|
-
ee && document.visibilityState === "hidden" ? Q("Skipping refresh due to timer - document is hidden") : (Q("Refreshing session due to timer"), s.refresh(Ye() || f));
|
|
1009
|
-
}), m);
|
|
1010
|
-
}
|
|
1011
|
-
} }));
|
|
1012
|
-
return Je(s, ["logout", "logoutAll", "oidc.logout"], ((c) => async (...u) => {
|
|
1013
|
-
const p = await c(...u);
|
|
1014
|
-
return Q("Clearing all timers"), r(), p;
|
|
1015
|
-
}));
|
|
1016
|
-
}), ((e) => (t) => e(Object.assign(Object.assign({}, t), { baseHeaders: Object.assign({ "x-descope-sdk-name": "web-js", "x-descope-sdk-version": "1.45.0" }, t.baseHeaders) }))), ((e) => (t) => {
|
|
1017
|
-
const n = rt(), o = rt(), r = rt(), i = rt(), a = e(Pe(t, { afterRequest: async (s, c) => {
|
|
1018
|
-
if (Dt(s, c)) Q("Session invalidated, notifying subscribers with empty values"), o.pub(null), r.pub(null), n.pub(null), i.pub(null);
|
|
1019
|
-
else {
|
|
1020
|
-
const u = await (async (h) => {
|
|
1021
|
-
const m = await ot(h);
|
|
1022
|
-
return (m == null ? void 0 : m.user) || (m != null && m.hasOwnProperty("userId") ? m : void 0);
|
|
1023
|
-
})(c);
|
|
1024
|
-
u && r.pub(u);
|
|
1025
|
-
const { sessionJwt: p, sessionExpiration: f, claims: b } = await ot(c);
|
|
1026
|
-
p && o.pub(p), b && i.pub(b), (f || p) && n.pub(f || 42);
|
|
1027
|
-
}
|
|
1028
|
-
} })), l = Je(a, ["logout", "logoutAll", "oidc.logout"], ((s) => async (...c) => {
|
|
1029
|
-
const u = await s(...c);
|
|
1030
|
-
return o.pub(null), r.pub(null), n.pub(null), i.pub(null), u;
|
|
1031
|
-
}));
|
|
1032
|
-
return Object.assign(l, { onSessionTokenChange: o.sub, onUserChange: r.sub, onClaimsChange: i.sub, onIsAuthenticatedChange: (s) => n.sub(((c) => {
|
|
1033
|
-
s(!!c);
|
|
1034
|
-
})) });
|
|
1035
|
-
}), ((e) => (t) => {
|
|
1036
|
-
const { enableFlowNonce: n = !0, nonceStoragePrefix: o = Ne } = t, r = B(t, ["enableFlowNonce", "nonceStoragePrefix"]);
|
|
1037
|
-
return n ? (((i = Ne) => {
|
|
1038
|
-
try {
|
|
1039
|
-
if (!Yi) return;
|
|
1040
|
-
for (let c = 0; c < (a = void 0, l = void 0, s = void 0, (s = (a = ue == null ? void 0 : ue.length) !== null && a !== void 0 ? a : ee && ((l = window.localStorage) === null || l === void 0 ? void 0 : l.length)) !== null && s !== void 0 ? s : 0); c++) {
|
|
1041
|
-
const u = $i(c);
|
|
1042
|
-
if (u && u.startsWith(i)) {
|
|
1043
|
-
const p = pe(u);
|
|
1044
|
-
if (p) try {
|
|
1045
|
-
JSON.parse(p).expiry < Date.now() && ce(u);
|
|
1046
|
-
} catch {
|
|
1047
|
-
ce(u);
|
|
1048
|
-
}
|
|
1049
|
-
}
|
|
1050
|
-
}
|
|
1051
|
-
} catch (c) {
|
|
1052
|
-
console.error("Error cleaning up expired nonces:", c);
|
|
1053
|
-
}
|
|
1054
|
-
var a, l, s;
|
|
1055
|
-
})(o), e(Pe(r, { afterRequest: async (i, a) => {
|
|
1056
|
-
if (i.path !== Vn && i.path !== Jt) return;
|
|
1057
|
-
const { nonce: l, executionId: s } = await (async (c, u) => {
|
|
1058
|
-
try {
|
|
1059
|
-
const p = u.headers.get(Kn);
|
|
1060
|
-
let f = await u.clone().json().then(((b) => (b == null ? void 0 : b.executionId) || null)).catch((() => null));
|
|
1061
|
-
return f || (f = Yn(c)), { nonce: p, executionId: Co(f) };
|
|
1062
|
-
} catch {
|
|
1063
|
-
return { nonce: null, executionId: null };
|
|
1064
|
-
}
|
|
1065
|
-
})(i, a);
|
|
1066
|
-
l && s && ((c, u, p, f = Ne) => {
|
|
1067
|
-
try {
|
|
1068
|
-
const b = Mt(c, f), h = p ? 172800 : 10800, m = { value: u, expiry: Date.now() + 1e3 * h, isStart: p };
|
|
1069
|
-
me(b, JSON.stringify(m));
|
|
1070
|
-
} catch (b) {
|
|
1071
|
-
console.error("Error setting flow nonce:", b);
|
|
1072
|
-
}
|
|
1073
|
-
})(s, l, i.path === Vn, o);
|
|
1074
|
-
}, beforeRequest: (i) => {
|
|
1075
|
-
if (i.path === Jt) {
|
|
1076
|
-
const a = Yn(i);
|
|
1077
|
-
if (a) {
|
|
1078
|
-
const l = ((s, c = Ne) => {
|
|
1079
|
-
try {
|
|
1080
|
-
const u = Mt(s, c), p = pe(u);
|
|
1081
|
-
if (!p) return null;
|
|
1082
|
-
const f = JSON.parse(p);
|
|
1083
|
-
return f.expiry < Date.now() ? (na(s, c), null) : f.value;
|
|
1084
|
-
} catch (u) {
|
|
1085
|
-
return console.error("Error getting flow nonce:", u), null;
|
|
1086
|
-
}
|
|
1087
|
-
})(a, o);
|
|
1088
|
-
l && (i.headers = i.headers || {}, i.headers[Kn] = l);
|
|
1089
|
-
}
|
|
1090
|
-
}
|
|
1091
|
-
return i;
|
|
1092
|
-
} }))) : e(r);
|
|
1093
|
-
}), ((e) => (t) => {
|
|
1094
|
-
var { storeLastAuthenticatedUser: n = !0, keepLastAuthenticatedUserAfterLogout: o = !1 } = t, r = B(t, ["storeLastAuthenticatedUser", "keepLastAuthenticatedUserAfterLogout"]);
|
|
1095
|
-
if (!n) return Object.assign(e(r), { getLastUserLoginId: Wt, getLastUserDisplayName: Kt });
|
|
1096
|
-
const i = e(Pe(r, { afterRequest: async (l, s) => {
|
|
1097
|
-
var c;
|
|
1098
|
-
const { userInfo: u, lastAuth: p } = await (async (h) => {
|
|
1099
|
-
if (!(h != null && h.ok)) return { userInfo: void 0, lastAuth: void 0 };
|
|
1100
|
-
const m = await (h == null ? void 0 : h.clone().json()), x = xo((m == null ? void 0 : m.authInfo) || m || {});
|
|
1101
|
-
return { userInfo: (x == null ? void 0 : x.user) || (x != null && x.hasOwnProperty("userId") ? x : void 0), lastAuth: m.lastAuth };
|
|
1102
|
-
})(s), f = (c = u == null ? void 0 : u.loginIds) === null || c === void 0 ? void 0 : c[0], b = u == null ? void 0 : u.name;
|
|
1103
|
-
f ? ($n(f), ((h) => {
|
|
1104
|
-
me(on, h);
|
|
1105
|
-
})(b)) : p != null && p.loginId && $n(p.loginId);
|
|
1106
|
-
} }));
|
|
1107
|
-
let a = Je(i, ["flow.start"], oa);
|
|
1108
|
-
return a = Je(a, ["logout", "logoutAll"], ra(o)), Object.assign(a, { getLastUserLoginId: Wt, getLastUserDisplayName: Kt });
|
|
1109
|
-
}), ((e) => (t) => {
|
|
1110
|
-
var { persistTokens: n, sessionTokenViaCookie: o, refreshTokenViaCookie: r, storagePrefix: i } = t, a = B(t, ["persistTokens", "sessionTokenViaCookie", "refreshTokenViaCookie", "storagePrefix"]);
|
|
1111
|
-
if (!n || !ee) return e(a);
|
|
1112
|
-
let l;
|
|
1113
|
-
const s = e(Pe(a, { beforeRequest: Xi(i, r), afterRequest: async (u, p) => {
|
|
1114
|
-
if (Dt(u, p)) Q("Session invalidated, clearing persisted tokens"), Io(i, o, r, l);
|
|
1115
|
-
else {
|
|
1116
|
-
const f = ((b = {}, h = !1, m = "", x = !1) => {
|
|
1117
|
-
var j, E, P, N;
|
|
1118
|
-
const { sessionJwt: v, refreshJwt: U, trustedDeviceJwt: J } = b;
|
|
1119
|
-
let X;
|
|
1120
|
-
if (U) if (x) {
|
|
1121
|
-
ce(`${m}${Xe}`);
|
|
1122
|
-
const K = x.sameSite || "Strict", G = (j = x.secure) === null || j === void 0 || j, z = (E = x.domain) !== null && E !== void 0 ? E : b.cookieDomain, Z = ct(x);
|
|
1123
|
-
G && window.location.protocol !== "https:" && Jn("Refresh token cookie is configured with secure=true but the page is not using HTTPS. The cookie will not be set. To fix this, pass refreshTokenViaCookie: { secure: process.env['NODE_ENV'] !== 'development' }");
|
|
1124
|
-
const te = Object.assign(Object.assign({}, b), { cookieSameSite: K, cookieSecure: G, cookieDomain: z });
|
|
1125
|
-
Mn(Z, U, te);
|
|
1126
|
-
const de = qt(z);
|
|
1127
|
-
X = Object.assign(Object.assign({}, X), { refresh: { path: te.cookiePath, domain: de ? z : void 0 } });
|
|
1128
|
-
} else {
|
|
1129
|
-
const K = ct(x);
|
|
1130
|
-
Fe.remove(K), me(`${m}${Xe}`, U);
|
|
1131
|
-
}
|
|
1132
|
-
if (v) if (h) {
|
|
1133
|
-
const K = h.sameSite || "Strict", G = (P = h.secure) === null || P === void 0 || P, z = (N = h.domain) !== null && N !== void 0 ? N : b.cookieDomain, Z = en(h);
|
|
1134
|
-
G && window.location.protocol !== "https:" && Jn("Session token cookie is configured with secure=true but the page is not using HTTPS. The cookie will not be set. To fix this, pass sessionTokenViaCookie: { secure: process.env['NODE_ENV'] !== 'development' }");
|
|
1135
|
-
const te = Object.assign(Object.assign({}, b), { cookieSameSite: K, cookieSecure: G, cookieDomain: z });
|
|
1136
|
-
Mn(Z, v, te);
|
|
1137
|
-
const de = qt(z);
|
|
1138
|
-
X = Object.assign(Object.assign({}, X), { session: { path: te.cookiePath, domain: de ? z : void 0 } });
|
|
1139
|
-
} else me(`${m}${ft}`, v);
|
|
1140
|
-
return b.idToken && me(`${m}${_t}`, b.idToken), J && me(`${m}DTD`, J), X;
|
|
1141
|
-
})(await ot(p), o, i, r);
|
|
1142
|
-
f && (l = f);
|
|
1143
|
-
}
|
|
1144
|
-
} })), c = Je(s, ["logout", "logoutAll", "oidc.logout"], ia(i, o, r, (() => l)));
|
|
1145
|
-
return Object.assign(c, { getRefreshToken: () => Ye(i, r), getSessionToken: () => Wn(i, o), getIdToken: () => ko(i) });
|
|
1146
|
-
})))(((e) => {
|
|
1147
|
-
const t = Ei(e), n = pa(t, e.projectId, e.oidcConfig);
|
|
1148
|
-
return Object.assign(Object.assign({}, t), { refresh: async (i, a) => {
|
|
1149
|
-
var l;
|
|
1150
|
-
if (Ht()) return Q(`Refresh called in native flow: ${new Error().stack}`), Promise.resolve({ ok: !1, error: { errorCode: "J171000", errorDescription: "Refresh is not supported in native flows via the web SDK" } });
|
|
1151
|
-
if (e.oidcConfig) try {
|
|
1152
|
-
return await n.refreshToken(i), Promise.resolve({ ok: !0 });
|
|
1153
|
-
} catch (p) {
|
|
1154
|
-
return Promise.resolve({ ok: !1, error: { errorCode: "J161001", errorDescription: p.toString() } });
|
|
1155
|
-
}
|
|
1156
|
-
const s = Wn(), c = Ye();
|
|
1157
|
-
let u = "";
|
|
1158
|
-
if (e.getExternalToken) try {
|
|
1159
|
-
u = await ((l = e.getExternalToken) === null || l === void 0 ? void 0 : l.call(e));
|
|
1160
|
-
} catch (p) {
|
|
1161
|
-
Q("Error getting external token while refreshing", p);
|
|
1162
|
-
}
|
|
1163
|
-
return t.refresh(i, { dcs: s ? "t" : "f", dcr: c ? "t" : "f" }, u, a);
|
|
1164
|
-
}, logout: async (i) => {
|
|
1165
|
-
if (e.oidcConfig) try {
|
|
1166
|
-
return await n.logout({ id_token_hint: i }), Promise.resolve({ ok: !0 });
|
|
1167
|
-
} catch (a) {
|
|
1168
|
-
return Promise.resolve({ ok: !1, error: { errorCode: "J161000", errorDescription: a.toString() } });
|
|
1169
|
-
}
|
|
1170
|
-
return t.logout(i);
|
|
1171
|
-
}, flow: ca(t), webauthn: sa(t), fedcm: (o = t, r = e.projectId, { onetap: { requestExchangeCode(i) {
|
|
1172
|
-
Gn(o, i);
|
|
1173
|
-
}, requestAuthentication(i) {
|
|
1174
|
-
Gn(o, i);
|
|
1175
|
-
} }, async oneTap(i, a, l, s, c) {
|
|
1176
|
-
await To(o, { provider: i, oneTapConfig: a, loginOptions: l, onSkipped: s, onDismissed: c });
|
|
1177
|
-
}, async launch(i) {
|
|
1178
|
-
var a;
|
|
1179
|
-
const l = { identity: { context: i || "signin", providers: [{ configURL: o.httpClient.buildUrl(r + Xn.config), clientId: r }] } }, s = await ((a = navigator.credentials) === null || a === void 0 ? void 0 : a.get(l));
|
|
1180
|
-
return o.refresh(s.token);
|
|
1181
|
-
}, isSupported: () => ee && "IdentityCredential" in window, async isLoggedIn(i) {
|
|
1182
|
-
var a;
|
|
1183
|
-
const l = o.httpClient.buildUrl(r + Xn.config);
|
|
1184
|
-
try {
|
|
1185
|
-
const s = { identity: { context: i || "signin", providers: [{ configURL: l, clientId: r }] } }, c = await ((a = navigator.credentials) === null || a === void 0 ? void 0 : a.get(s));
|
|
1186
|
-
return !!c && !!c.token;
|
|
1187
|
-
} catch {
|
|
1188
|
-
return !1;
|
|
1189
|
-
}
|
|
1190
|
-
} }), oidc: n });
|
|
1191
|
-
var o, r;
|
|
1192
|
-
}));
|
|
1193
|
-
let rn;
|
|
1194
|
-
const jo = (e) => {
|
|
1195
|
-
const t = ga(Object.assign({ persistTokens: jn, autoRefresh: jn }, e));
|
|
1196
|
-
return rn = t, t;
|
|
1197
|
-
}, ha = () => jo({ projectId: "temp pid", persistTokens: !1, autoRefresh: !1, storeLastAuthenticatedUser: !1 });
|
|
1198
|
-
rn = ha();
|
|
1199
|
-
const fa = () => rn;
|
|
1200
|
-
var va = ({ projectId: e, baseUrl: t, persistTokens: n, autoRefresh: o, sessionTokenViaCookie: r, refreshTokenViaCookie: i, refreshCookieName: a, oidcConfig: l, storeLastAuthenticatedUser: s, keepLastAuthenticatedUserAfterLogout: c, getExternalToken: u, hooks: p, customStorage: f }) => dt((() => {
|
|
1201
|
-
if (e) return jo({ projectId: e, baseUrl: t, sessionTokenViaCookie: r, refreshTokenViaCookie: i, baseHeaders: at, persistTokens: n, autoRefresh: o, refreshCookieName: a, oidcConfig: l, storeLastAuthenticatedUser: s, keepLastAuthenticatedUserAfterLogout: c, hooks: p, getExternalToken: u, customStorage: f });
|
|
1202
|
-
}), [e, t, JSON.stringify(r), JSON.stringify(i), u, f]);
|
|
1203
|
-
const ma = ({ projectId: e, baseUrl: t = "", baseStaticUrl: n = "", baseCdnUrl: o = "", sessionTokenViaCookie: r = !1, refreshTokenViaCookie: i = !1, hooks: a, persistTokens: l = !0, autoRefresh: s = !0, oidcConfig: c, storeLastAuthenticatedUser: u = !0, keepLastAuthenticatedUserAfterLogout: p = !1, refreshCookieName: f = "", getExternalToken: b, customStorage: h, children: m }) => {
|
|
1204
|
-
const [x, j] = C(), [E, P] = C(), [N, v] = C(), [U, J] = C(!1), [X, K] = C(!1), [G, z] = C(!1), [Z, te] = C(!!c), de = Se(!1), H = va({ projectId: e, baseUrl: t, persistTokens: l, autoRefresh: s, sessionTokenViaCookie: r, refreshTokenViaCookie: i, hooks: a, oidcConfig: c, storeLastAuthenticatedUser: u, keepLastAuthenticatedUserAfterLogout: p, refreshCookieName: f, getExternalToken: b, customStorage: h });
|
|
1205
|
-
le((() => {
|
|
1206
|
-
if (H) {
|
|
1207
|
-
const je = H.onSessionTokenChange(P), oe = H.onUserChange(j), D = H.onIsAuthenticatedChange(J), ze = H.onClaimsChange(v);
|
|
1208
|
-
return () => {
|
|
1209
|
-
je(), oe(), D(), ze();
|
|
1210
|
-
};
|
|
1211
|
-
}
|
|
1212
|
-
}), [H]);
|
|
1213
|
-
const ge = Se(!1), he = Se(!1);
|
|
1214
|
-
le((() => {
|
|
1215
|
-
H && c && !de.current && (de.current = !0, H.oidc.finishLoginIfNeed().finally((() => {
|
|
1216
|
-
te(!1), ge.current = !0;
|
|
1217
|
-
})));
|
|
1218
|
-
}), []);
|
|
1219
|
-
const W = st((() => {
|
|
1220
|
-
ur() || ge.current || (ge.current = !0, z(!0), En(H == null ? void 0 : H.refresh)(void 0, !0).then((() => {
|
|
1221
|
-
z(!1);
|
|
1222
|
-
})));
|
|
1223
|
-
}), [H]), M = st((() => {
|
|
1224
|
-
he.current || (he.current = !0, K(!0), En(H.me)().then((() => {
|
|
1225
|
-
K(!1);
|
|
1226
|
-
})));
|
|
1227
|
-
}), [H]), ne = dt((() => ({ fetchUser: M, user: x, isUserLoading: X, isUserFetched: he.current, fetchSession: W, session: E, isAuthenticated: U, isSessionLoading: G, isOidcLoading: Z, isSessionFetched: ge.current, projectId: e, baseUrl: t, baseStaticUrl: n, baseCdnUrl: o, storeLastAuthenticatedUser: u, keepLastAuthenticatedUserAfterLogout: p, refreshCookieName: f, customStorage: h, setUser: j, setSession: P, setIsAuthenticated: J, claims: N, sdk: H })), [M, x, X, he.current, W, E, U, G, Z, ge.current, e, t, n, o, p, f, h, j, P, J, N, H]);
|
|
1228
|
-
return se.createElement(no.Provider, { value: ne }, m);
|
|
1229
|
-
};
|
|
1230
|
-
function za(...e) {
|
|
1231
|
-
return (t) => e.reduce(((n, o) => o(n)), t);
|
|
1232
|
-
}
|
|
1233
|
-
const Ba = (...e) => e.join("/").replace(/\/+/g, "/"), Zn = (e) => e.replace(/([a-z])([A-Z])/g, "$1-$2").replace(/[\s_.]+/g, "-").toLowerCase(), Ha = (e) => {
|
|
1234
|
-
const t = Symbol(((n) => {
|
|
1235
|
-
const o = n.toString();
|
|
1236
|
-
let r = 0;
|
|
1237
|
-
for (let i = 0; i < o.length; i++) r = (r << 5) - r + o.charCodeAt(i), r &= r;
|
|
1238
|
-
return r.toString(16);
|
|
1239
|
-
})(e));
|
|
1240
|
-
return (n) => {
|
|
1241
|
-
if (n[t]) return n;
|
|
1242
|
-
const o = e(n);
|
|
1243
|
-
return o[t] = !0, o;
|
|
1244
|
-
};
|
|
1245
|
-
}, ya = (e) => {
|
|
1246
|
-
const [, t, n] = /(.*)\.(prop|attr)$/.exec(e) || [, e, "rest"];
|
|
1247
|
-
return { trimmedKey: t, category: n };
|
|
1248
|
-
}, wa = (e) => typeof e == "string" || e == null ? e : JSON.stringify(e), ba = (e) => se.forwardRef(((t, n) => {
|
|
1249
|
-
const { prop: o, attr: r, rest: i } = dt((() => Object.entries(t).reduce(((s, [c, u]) => {
|
|
1250
|
-
const { trimmedKey: p, category: f } = ya(c);
|
|
1251
|
-
return f === "prop" ? s.prop.push([p, u]) : f === "attr" ? s.attr.push([Zn(p), wa(u)]) : Object.assign(s.rest, { [Zn(p)]: u }), s;
|
|
1252
|
-
}), { attr: [], prop: [], rest: {} })), [t]), a = Se(null), l = st(((s) => {
|
|
1253
|
-
a.current = s, s && (o.forEach((([c, u]) => {
|
|
1254
|
-
a.current[c] = u;
|
|
1255
|
-
})), r.forEach((([c, u]) => {
|
|
1256
|
-
u == null ? s.removeAttribute(c) : s.setAttribute(c, u);
|
|
1257
|
-
})));
|
|
1258
|
-
}), [o, r, a]);
|
|
1259
|
-
return eo(n, (() => a.current)), se.createElement(e, Object.assign({ ref: l }, i));
|
|
1260
|
-
})), xa = ir((async () => (((customElements == null ? void 0 : customElements.get("descope-wc")) || await import("./index.es2.js").then((e) => e.a).then(((e) => e.default))).sdkConfigOverrides = { baseHeaders: at, persistTokens: !1, hooks: { get beforeRequest() {
|
|
1261
|
-
return fa().httpClient.hooks.beforeRequest;
|
|
1262
|
-
}, set beforeRequest(e) {
|
|
1263
|
-
} } }, { default: ba(se.forwardRef(((e, t) => {
|
|
1264
|
-
var { "external-request-id": n } = e, o = B(e, ["external-request-id"]);
|
|
1265
|
-
return dt((() => {
|
|
1266
|
-
var r, i;
|
|
1267
|
-
r = "x-external-rid", (i = n) ? at[r] = i : delete at[r];
|
|
1268
|
-
}), [n]), se.createElement("descope-wc", Object.assign({ ref: t }, o));
|
|
1269
|
-
}))) }))), ka = se.forwardRef((({ flowId: e, onSuccess: t, onError: n, onReady: o, logger: r, tenant: i, theme: a, nonce: l, locale: s, debug: c, client: u, form: p, telemetryKey: f, redirectUrl: b, autoFocus: h, validateOnBlur: m, restartOnError: x, errorTransformer: j, styleId: E, onScreenUpdate: P, dismissScreenErrorOnInput: N, outboundAppId: v, outboundAppScopes: U, popupOrigin: J, children: X, externalRequestId: K }, G) => {
|
|
1270
|
-
const [z, Z] = C(null);
|
|
1271
|
-
eo(G, (() => z));
|
|
1272
|
-
const { projectId: te, baseUrl: de, baseStaticUrl: H, baseCdnUrl: ge, storeLastAuthenticatedUser: he, keepLastAuthenticatedUserAfterLogout: W, refreshCookieName: M, customStorage: ne, sdk: je } = se.useContext(no), oe = st((async (D) => {
|
|
1273
|
-
await je.httpClient.hooks.afterRequest({}, new Response(JSON.stringify(D.detail))), t && t(D);
|
|
1274
|
-
}), [t]);
|
|
1275
|
-
return le((() => {
|
|
1276
|
-
const D = z;
|
|
1277
|
-
return D == null || D.addEventListener("success", oe), n && (D == null || D.addEventListener("error", n)), o && (D == null || D.addEventListener("ready", o)), () => {
|
|
1278
|
-
n && (D == null || D.removeEventListener("error", n)), o && (D == null || D.removeEventListener("ready", o)), D == null || D.removeEventListener("success", oe);
|
|
1279
|
-
};
|
|
1280
|
-
}), [z, n, oe]), le((() => {
|
|
1281
|
-
const D = z;
|
|
1282
|
-
return D == null || D.addEventListener("success", oe), () => {
|
|
1283
|
-
D == null || D.removeEventListener("success", oe);
|
|
1284
|
-
};
|
|
1285
|
-
}), [z, oe]), le((() => {
|
|
1286
|
-
const D = z;
|
|
1287
|
-
return n && (D == null || D.addEventListener("error", n)), () => {
|
|
1288
|
-
n && (D == null || D.removeEventListener("error", n));
|
|
1289
|
-
};
|
|
1290
|
-
}), [z, n]), le((() => {
|
|
1291
|
-
const D = z;
|
|
1292
|
-
return o && (D == null || D.addEventListener("ready", o)), () => {
|
|
1293
|
-
o && (D == null || D.removeEventListener("error", o));
|
|
1294
|
-
};
|
|
1295
|
-
}), [z, o]), se.createElement("form", null, se.createElement(rr, { fallback: null }, se.createElement(xa, { projectId: te, flowId: e, baseUrl: de, baseStaticUrl: H, baseCdnUrl: ge, ref: Z, telemetryKey: f, redirectUrl: b, autoFocus: h, styleId: E, validateOnBlur: m, restartOnError: x, keepLastAuthenticatedUserAfterLogout: W, tenant: i, externalRequestId: K, customStorage: ne, "theme.attr": a, "nonce.attr": l, "locale.attr": s, "form.attr": p, "client.attr": u, "debug.attr": c, "outbound-app-id.attr": v, "outbound-app-scopes.attr": U, "popup-origin.attr": J, "store-last-authenticated-user.attr": he, "refreshCookieName.attr": M, "dismiss-screen-error-on-input.attr": N, "errorTransformer.prop": j, "logger.prop": r, "onScreenUpdate.prop": P, "customStorage.prop": ne }, X)));
|
|
1296
|
-
})), Ia = "data:image/png;base64,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", $e = "var(--color-green)", O = "var(--font-sans)", V = {
|
|
1297
|
-
width: "100%",
|
|
1298
|
-
height: 40,
|
|
1299
|
-
padding: "10px 14px",
|
|
1300
|
-
fontSize: 16,
|
|
1301
|
-
fontWeight: 400,
|
|
1302
|
-
lineHeight: "23px",
|
|
1303
|
-
border: "1px solid var(--color-input-border)",
|
|
1304
|
-
borderRadius: 4,
|
|
1305
|
-
background: "white",
|
|
1306
|
-
color: "var(--color-text)",
|
|
1307
|
-
fontFamily: O,
|
|
1308
|
-
outline: "none",
|
|
1309
|
-
boxSizing: "border-box",
|
|
1310
|
-
transition: "border-color 0.15s, box-shadow 0.15s"
|
|
1311
|
-
}, Y = (e) => {
|
|
1312
|
-
e.target.style.borderColor = "var(--color-green)", e.target.style.boxShadow = "0 0 0 3px var(--color-green-ring)";
|
|
1313
|
-
}, $ = (e) => {
|
|
1314
|
-
e.target.style.borderColor = "var(--color-input-border)", e.target.style.boxShadow = "none";
|
|
1315
|
-
}, Sa = [
|
|
1316
|
-
{ value: "", label: "Select team size (optional)" },
|
|
1317
|
-
{ value: "1-10", label: "1–10" },
|
|
1318
|
-
{ value: "11-50", label: "11–50" },
|
|
1319
|
-
{ value: "51-200", label: "51–200" },
|
|
1320
|
-
{ value: "200+", label: "200+" }
|
|
1321
|
-
], Ca = [
|
|
1322
|
-
"Nextiva",
|
|
1323
|
-
"Five9",
|
|
1324
|
-
"Dialpad",
|
|
1325
|
-
"RingCentral",
|
|
1326
|
-
"NICE",
|
|
1327
|
-
"Genesys",
|
|
1328
|
-
"Talkdesk",
|
|
1329
|
-
"Aircall",
|
|
1330
|
-
"8x8",
|
|
1331
|
-
"Vonage",
|
|
1332
|
-
"Twilio",
|
|
1333
|
-
"Other"
|
|
1334
|
-
], Oa = ["Teams", "Zoom", "Google Meet", "Webex", "Other"];
|
|
1335
|
-
function Re({ title: e, subtitle: t }) {
|
|
1336
|
-
return /* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", gap: 8 }, children: [
|
|
1337
|
-
/* @__PURE__ */ d("h2", { style: { fontFamily: O, fontWeight: 600, fontSize: "36px", lineHeight: "44px", color: "var(--color-text)", margin: 0 }, children: e }),
|
|
1338
|
-
/* @__PURE__ */ d("p", { style: { fontFamily: O, fontSize: 18, fontWeight: 400, lineHeight: "26px", color: "var(--color-text-secondary)", margin: 0 }, children: t })
|
|
1339
|
-
] });
|
|
1340
|
-
}
|
|
1341
|
-
function xe({ onClick: e, disabled: t, children: n, type: o = "button" }) {
|
|
1342
|
-
const r = !t;
|
|
1343
|
-
return /* @__PURE__ */ d(
|
|
1344
|
-
"button",
|
|
1345
|
-
{
|
|
1346
|
-
type: o,
|
|
1347
|
-
onClick: e,
|
|
1348
|
-
disabled: t,
|
|
1349
|
-
style: {
|
|
1350
|
-
width: "100%",
|
|
1351
|
-
height: 40,
|
|
1352
|
-
display: "flex",
|
|
1353
|
-
justifyContent: "center",
|
|
1354
|
-
alignItems: "center",
|
|
1355
|
-
padding: "10px",
|
|
1356
|
-
background: r ? "var(--color-green)" : "var(--color-green-disabled)",
|
|
1357
|
-
color: "white",
|
|
1358
|
-
border: "none",
|
|
1359
|
-
borderRadius: 4,
|
|
1360
|
-
fontSize: 16,
|
|
1361
|
-
fontWeight: 600,
|
|
1362
|
-
lineHeight: "23px",
|
|
1363
|
-
fontFamily: O,
|
|
1364
|
-
cursor: r ? "pointer" : "not-allowed",
|
|
1365
|
-
transition: "background 0.15s",
|
|
1366
|
-
boxSizing: "border-box"
|
|
1367
|
-
},
|
|
1368
|
-
onMouseEnter: (i) => {
|
|
1369
|
-
r && (i.currentTarget.style.background = "var(--color-green-hover)");
|
|
1370
|
-
},
|
|
1371
|
-
onMouseLeave: (i) => {
|
|
1372
|
-
r && (i.currentTarget.style.background = r ? "var(--color-green)" : "var(--color-green-disabled)");
|
|
1373
|
-
},
|
|
1374
|
-
children: n
|
|
1375
|
-
}
|
|
1376
|
-
);
|
|
1377
|
-
}
|
|
1378
|
-
function q({ label: e, gap: t = 12, labelSize: n = 16, labelStyle: o, children: r }) {
|
|
1379
|
-
return /* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", gap: t, width: "100%" }, children: [
|
|
1380
|
-
/* @__PURE__ */ d("label", { style: { fontSize: n, fontWeight: 400, color: "var(--color-text)", fontFamily: O, lineHeight: "100%", ...o }, children: e }),
|
|
1381
|
-
r
|
|
1382
|
-
] });
|
|
1383
|
-
}
|
|
1384
|
-
function Nt({ show: e, onToggle: t }) {
|
|
1385
|
-
return /* @__PURE__ */ d(
|
|
1386
|
-
"button",
|
|
1387
|
-
{
|
|
1388
|
-
type: "button",
|
|
1389
|
-
tabIndex: -1,
|
|
1390
|
-
onClick: t,
|
|
1391
|
-
style: { position: "absolute", right: 14, top: "50%", transform: "translateY(-50%)", background: "none", border: "none", padding: 0, cursor: "pointer", color: "var(--color-text-secondary)", display: "flex", alignItems: "center" },
|
|
1392
|
-
children: e ? /* @__PURE__ */ d(cr, { size: 16 }) : /* @__PURE__ */ d(dr, { size: 16 })
|
|
1393
|
-
}
|
|
1394
|
-
);
|
|
1395
|
-
}
|
|
1396
|
-
function Ke() {
|
|
1397
|
-
return /* @__PURE__ */ d("hr", { style: { width: "100%", border: "none", borderTop: "1px solid var(--color-divider)", margin: 0 } });
|
|
1398
|
-
}
|
|
1399
|
-
function Te({ text: e, linkText: t, onClick: n }) {
|
|
1400
|
-
return /* @__PURE__ */ k("div", { style: { display: "flex", justifyContent: "center", alignItems: "center", gap: 4, width: "100%" }, children: [
|
|
1401
|
-
/* @__PURE__ */ d("span", { style: { fontSize: 15, fontWeight: 400, lineHeight: "22px", color: "var(--color-text)", fontFamily: O }, children: e }),
|
|
1402
|
-
/* @__PURE__ */ d(
|
|
1403
|
-
"button",
|
|
1404
|
-
{
|
|
1405
|
-
type: "button",
|
|
1406
|
-
onClick: n,
|
|
1407
|
-
style: { background: "none", border: "none", padding: 0, fontSize: 15, fontWeight: 600, lineHeight: "22px", color: $e, cursor: "pointer", fontFamily: O, textDecoration: "underline" },
|
|
1408
|
-
children: t
|
|
1409
|
-
}
|
|
1410
|
-
)
|
|
1411
|
-
] });
|
|
1412
|
-
}
|
|
1413
|
-
function ke({ onTerms: e, onPrivacyPolicy: t, paddingTop: n }) {
|
|
1414
|
-
return /* @__PURE__ */ d("div", { style: { display: "flex", justifyContent: "center", width: "100%", marginTop: "auto", paddingTop: n || 40, flexShrink: 0 }, children: /* @__PURE__ */ k("span", { style: { fontSize: 15, fontWeight: 400, lineHeight: "22px", color: "var(--color-text)", fontFamily: O, textAlign: "center", whiteSpace: "nowrap" }, children: [
|
|
1415
|
-
"By continuing, you agree to our",
|
|
1416
|
-
" ",
|
|
1417
|
-
/* @__PURE__ */ d(
|
|
1418
|
-
"a",
|
|
1419
|
-
{
|
|
1420
|
-
href: "https://chordia.ai/legal/terms-of-use",
|
|
1421
|
-
target: "_blank",
|
|
1422
|
-
rel: "noopener noreferrer",
|
|
1423
|
-
style: { fontSize: 15, fontWeight: 400, color: "var(--color-text)", fontFamily: O, textDecoration: "underline", textUnderlineOffset: 2 },
|
|
1424
|
-
children: "Terms"
|
|
1425
|
-
}
|
|
1426
|
-
),
|
|
1427
|
-
" ",
|
|
1428
|
-
"and",
|
|
1429
|
-
" ",
|
|
1430
|
-
/* @__PURE__ */ d(
|
|
1431
|
-
"a",
|
|
1432
|
-
{
|
|
1433
|
-
href: "https://chordia.ai/legal/privacy-notice",
|
|
1434
|
-
target: "_blank",
|
|
1435
|
-
rel: "noopener noreferrer",
|
|
1436
|
-
style: { fontSize: 15, fontWeight: 400, color: "var(--color-text)", fontFamily: O, textDecoration: "underline", textUnderlineOffset: 2 },
|
|
1437
|
-
children: "Privacy Policy"
|
|
1438
|
-
}
|
|
1439
|
-
),
|
|
1440
|
-
"."
|
|
1441
|
-
] }) });
|
|
1442
|
-
}
|
|
1443
|
-
function Aa({ projectId: e, onSuccess: t, onError: n }) {
|
|
1444
|
-
return e ? /* @__PURE__ */ d(ma, { projectId: e, children: /* @__PURE__ */ d(
|
|
1445
|
-
ka,
|
|
1446
|
-
{
|
|
1447
|
-
flowId: "sign-up-or-in-otp-or-social",
|
|
1448
|
-
onSuccess: t,
|
|
1449
|
-
onError: n
|
|
1450
|
-
}
|
|
1451
|
-
) }) : null;
|
|
1452
|
-
}
|
|
1453
|
-
function _n({
|
|
1454
|
-
options: e,
|
|
1455
|
-
value: t,
|
|
1456
|
-
onChange: n,
|
|
1457
|
-
otherValue: o,
|
|
1458
|
-
onOtherChange: r,
|
|
1459
|
-
placeholder: i,
|
|
1460
|
-
otherPlaceholder: a = "Please specify",
|
|
1461
|
-
compact: l = !1
|
|
1462
|
-
}) {
|
|
1463
|
-
const [s, c] = C(!1), u = Se(null);
|
|
1464
|
-
le(() => {
|
|
1465
|
-
const v = (U) => {
|
|
1466
|
-
u.current && !u.current.contains(U.target) && c(!1);
|
|
1467
|
-
};
|
|
1468
|
-
return document.addEventListener("mousedown", v), () => document.removeEventListener("mousedown", v);
|
|
1469
|
-
}, []);
|
|
1470
|
-
const p = (v) => {
|
|
1471
|
-
t.includes(v) ? (n(t.filter((U) => U !== v)), v === "Other" && r("")) : n([...t, v]);
|
|
1472
|
-
}, f = (v) => {
|
|
1473
|
-
n(t.filter((U) => U !== v)), v === "Other" && r("");
|
|
1474
|
-
}, b = "rgba(34, 197, 94, 0.14)", h = l ? "6px 10px" : "8px 12px", m = l ? 36 : 40, x = l ? 15 : 16, j = l ? 200 : 260, E = l ? "6px 8px" : "8px 10px", P = t.includes("Other"), N = () => c((v) => !v);
|
|
1475
|
-
return /* @__PURE__ */ d("div", { ref: u, style: { width: "100%" }, children: /* @__PURE__ */ k("div", { style: { position: "relative", width: "100%" }, children: [
|
|
1476
|
-
/* @__PURE__ */ k(
|
|
1477
|
-
"div",
|
|
1478
|
-
{
|
|
1479
|
-
role: "combobox",
|
|
1480
|
-
"aria-expanded": s,
|
|
1481
|
-
onClick: (v) => {
|
|
1482
|
-
v.target instanceof HTMLInputElement || v.target instanceof HTMLElement && v.target.closest("button") || N();
|
|
1483
|
-
},
|
|
1484
|
-
style: {
|
|
1485
|
-
width: "100%",
|
|
1486
|
-
minHeight: m,
|
|
1487
|
-
padding: h,
|
|
1488
|
-
display: "flex",
|
|
1489
|
-
flexDirection: "row",
|
|
1490
|
-
alignItems: "center",
|
|
1491
|
-
justifyContent: "space-between",
|
|
1492
|
-
gap: 8,
|
|
1493
|
-
textAlign: "left",
|
|
1494
|
-
fontSize: x,
|
|
1495
|
-
fontWeight: 400,
|
|
1496
|
-
lineHeight: "23px",
|
|
1497
|
-
border: "1px solid var(--color-input-border)",
|
|
1498
|
-
borderRadius: 4,
|
|
1499
|
-
background: "white",
|
|
1500
|
-
color: t.length ? "var(--color-text)" : "var(--color-text-secondary)",
|
|
1501
|
-
fontFamily: O,
|
|
1502
|
-
boxSizing: "border-box",
|
|
1503
|
-
cursor: "pointer"
|
|
1504
|
-
},
|
|
1505
|
-
children: [
|
|
1506
|
-
/* @__PURE__ */ d(
|
|
1507
|
-
"div",
|
|
1508
|
-
{
|
|
1509
|
-
style: {
|
|
1510
|
-
flex: 1,
|
|
1511
|
-
display: "flex",
|
|
1512
|
-
flexDirection: "row",
|
|
1513
|
-
flexWrap: "wrap",
|
|
1514
|
-
alignItems: "center",
|
|
1515
|
-
gap: 6,
|
|
1516
|
-
minWidth: 0,
|
|
1517
|
-
cursor: "text"
|
|
1518
|
-
},
|
|
1519
|
-
children: t.length === 0 ? /* @__PURE__ */ d(
|
|
1520
|
-
"span",
|
|
1521
|
-
{
|
|
1522
|
-
style: { color: "var(--color-text-secondary)", cursor: "pointer" },
|
|
1523
|
-
onClick: (v) => {
|
|
1524
|
-
v.stopPropagation(), N();
|
|
1525
|
-
},
|
|
1526
|
-
onKeyDown: (v) => {
|
|
1527
|
-
(v.key === "Enter" || v.key === " ") && N();
|
|
1528
|
-
},
|
|
1529
|
-
role: "button",
|
|
1530
|
-
tabIndex: 0,
|
|
1531
|
-
children: i
|
|
1532
|
-
}
|
|
1533
|
-
) : /* @__PURE__ */ k(ve, { children: [
|
|
1534
|
-
t.map((v) => /* @__PURE__ */ k(
|
|
1535
|
-
"span",
|
|
1536
|
-
{
|
|
1537
|
-
onClick: (U) => U.stopPropagation(),
|
|
1538
|
-
style: {
|
|
1539
|
-
display: "inline-flex",
|
|
1540
|
-
alignItems: "center",
|
|
1541
|
-
gap: 4,
|
|
1542
|
-
padding: "4px 8px",
|
|
1543
|
-
borderRadius: 4,
|
|
1544
|
-
background: b,
|
|
1545
|
-
fontSize: 13,
|
|
1546
|
-
fontWeight: 500,
|
|
1547
|
-
color: "var(--color-text)",
|
|
1548
|
-
flexShrink: 0
|
|
1549
|
-
},
|
|
1550
|
-
children: [
|
|
1551
|
-
v,
|
|
1552
|
-
/* @__PURE__ */ d(
|
|
1553
|
-
"span",
|
|
1554
|
-
{
|
|
1555
|
-
role: "button",
|
|
1556
|
-
tabIndex: 0,
|
|
1557
|
-
onClick: (U) => {
|
|
1558
|
-
U.stopPropagation(), f(v);
|
|
1559
|
-
},
|
|
1560
|
-
onKeyDown: (U) => {
|
|
1561
|
-
(U.key === "Enter" || U.key === " ") && (U.preventDefault(), U.stopPropagation(), f(v));
|
|
1562
|
-
},
|
|
1563
|
-
style: { cursor: "pointer", fontSize: 14, lineHeight: 1, opacity: 0.7 },
|
|
1564
|
-
children: "×"
|
|
1565
|
-
}
|
|
1566
|
-
)
|
|
1567
|
-
]
|
|
1568
|
-
},
|
|
1569
|
-
v
|
|
1570
|
-
)),
|
|
1571
|
-
P && /* @__PURE__ */ d(
|
|
1572
|
-
"input",
|
|
1573
|
-
{
|
|
1574
|
-
type: "text",
|
|
1575
|
-
value: o,
|
|
1576
|
-
onChange: (v) => r(v.target.value),
|
|
1577
|
-
placeholder: a,
|
|
1578
|
-
onMouseDown: (v) => v.stopPropagation(),
|
|
1579
|
-
onClick: (v) => v.stopPropagation(),
|
|
1580
|
-
onFocus: (v) => {
|
|
1581
|
-
v.stopPropagation(), v.target.style.borderColor = "var(--color-green)", v.target.style.boxShadow = "0 0 0 3px var(--color-green-ring)";
|
|
1582
|
-
},
|
|
1583
|
-
onBlur: (v) => {
|
|
1584
|
-
v.target.style.borderColor = "#cfcece", v.target.style.boxShadow = "none";
|
|
1585
|
-
},
|
|
1586
|
-
style: {
|
|
1587
|
-
flex: "1 1 120px",
|
|
1588
|
-
minWidth: 80,
|
|
1589
|
-
maxWidth: "100%",
|
|
1590
|
-
minHeight: l ? 26 : 28,
|
|
1591
|
-
padding: "2px 8px",
|
|
1592
|
-
border: "1px solid #cfcece",
|
|
1593
|
-
borderRadius: 4,
|
|
1594
|
-
outline: "none",
|
|
1595
|
-
background: "transparent",
|
|
1596
|
-
fontSize: x,
|
|
1597
|
-
fontFamily: O,
|
|
1598
|
-
color: "var(--color-text)",
|
|
1599
|
-
boxSizing: "border-box"
|
|
1600
|
-
}
|
|
1601
|
-
}
|
|
1602
|
-
)
|
|
1603
|
-
] })
|
|
1604
|
-
}
|
|
1605
|
-
),
|
|
1606
|
-
/* @__PURE__ */ d(
|
|
1607
|
-
"button",
|
|
1608
|
-
{
|
|
1609
|
-
type: "button",
|
|
1610
|
-
tabIndex: -1,
|
|
1611
|
-
onClick: (v) => {
|
|
1612
|
-
v.stopPropagation(), N();
|
|
1613
|
-
},
|
|
1614
|
-
style: {
|
|
1615
|
-
flexShrink: 0,
|
|
1616
|
-
display: "flex",
|
|
1617
|
-
alignItems: "center",
|
|
1618
|
-
justifyContent: "center",
|
|
1619
|
-
padding: 0,
|
|
1620
|
-
margin: 0,
|
|
1621
|
-
border: "none",
|
|
1622
|
-
background: "none",
|
|
1623
|
-
cursor: "pointer",
|
|
1624
|
-
color: "var(--color-text-secondary)"
|
|
1625
|
-
},
|
|
1626
|
-
"aria-label": s ? "Close options" : "Open options",
|
|
1627
|
-
children: /* @__PURE__ */ d(
|
|
1628
|
-
to,
|
|
1629
|
-
{
|
|
1630
|
-
size: l ? 16 : 18,
|
|
1631
|
-
style: {
|
|
1632
|
-
transform: s ? "rotate(180deg)" : "rotate(0deg)",
|
|
1633
|
-
transition: "transform 0.2s ease"
|
|
1634
|
-
}
|
|
1635
|
-
}
|
|
1636
|
-
)
|
|
1637
|
-
}
|
|
1638
|
-
)
|
|
1639
|
-
]
|
|
1640
|
-
}
|
|
1641
|
-
),
|
|
1642
|
-
s && /* @__PURE__ */ d(
|
|
1643
|
-
"div",
|
|
1644
|
-
{
|
|
1645
|
-
style: {
|
|
1646
|
-
position: "absolute",
|
|
1647
|
-
left: 0,
|
|
1648
|
-
right: 0,
|
|
1649
|
-
top: "100%",
|
|
1650
|
-
marginTop: 4,
|
|
1651
|
-
padding: l ? 6 : 8,
|
|
1652
|
-
maxHeight: j,
|
|
1653
|
-
overflowY: "auto",
|
|
1654
|
-
background: "white",
|
|
1655
|
-
border: "1px solid var(--color-input-border)",
|
|
1656
|
-
borderRadius: 4,
|
|
1657
|
-
boxShadow: "0 8px 24px rgba(0,0,0,0.08)",
|
|
1658
|
-
zIndex: 50,
|
|
1659
|
-
boxSizing: "border-box"
|
|
1660
|
-
},
|
|
1661
|
-
children: e.map((v) => /* @__PURE__ */ k(
|
|
1662
|
-
"label",
|
|
1663
|
-
{
|
|
1664
|
-
style: {
|
|
1665
|
-
display: "flex",
|
|
1666
|
-
alignItems: "center",
|
|
1667
|
-
gap: 10,
|
|
1668
|
-
padding: E,
|
|
1669
|
-
borderRadius: 4,
|
|
1670
|
-
cursor: "pointer",
|
|
1671
|
-
fontSize: l ? 14 : 15,
|
|
1672
|
-
fontFamily: O,
|
|
1673
|
-
color: "var(--color-text)"
|
|
1674
|
-
},
|
|
1675
|
-
children: [
|
|
1676
|
-
/* @__PURE__ */ d(
|
|
1677
|
-
"input",
|
|
1678
|
-
{
|
|
1679
|
-
type: "checkbox",
|
|
1680
|
-
checked: t.includes(v),
|
|
1681
|
-
onChange: () => p(v),
|
|
1682
|
-
style: { width: 16, height: 16, accentColor: "var(--color-green)" }
|
|
1683
|
-
}
|
|
1684
|
-
),
|
|
1685
|
-
v
|
|
1686
|
-
]
|
|
1687
|
-
},
|
|
1688
|
-
v
|
|
1689
|
-
))
|
|
1690
|
-
}
|
|
1691
|
-
)
|
|
1692
|
-
] }) });
|
|
1693
|
-
}
|
|
1694
|
-
function qa({
|
|
1695
|
-
onLogin: e,
|
|
1696
|
-
onForgotPassword: t,
|
|
1697
|
-
onOneTimeCode: n,
|
|
1698
|
-
onVerifyCode: o,
|
|
1699
|
-
onResendCode: r,
|
|
1700
|
-
onSignUp: i,
|
|
1701
|
-
onJoinWaitlist: a,
|
|
1702
|
-
onWaitlistSubmit: l,
|
|
1703
|
-
onResetPassword: s,
|
|
1704
|
-
onTerms: c,
|
|
1705
|
-
onPrivacyPolicy: u,
|
|
1706
|
-
onDescopeSuccess: p,
|
|
1707
|
-
onDescopeError: f,
|
|
1708
|
-
descopeProjectId: b,
|
|
1709
|
-
onGoToLogin: h,
|
|
1710
|
-
loading: m,
|
|
1711
|
-
error: x,
|
|
1712
|
-
codeError: j,
|
|
1713
|
-
defaultView: E = "signin",
|
|
1714
|
-
signupMode: P = "signup"
|
|
1715
|
-
}) {
|
|
1716
|
-
var Un, Tn;
|
|
1717
|
-
const [N, v] = C(""), [U, J] = C(""), [X, K] = C(!1), [G, z] = C(!1), [Z, te] = C(!1), [de, H] = C(!1), [ge, he] = C(null), [W, M] = C(E), [ne, je] = C(""), [oe, D] = C(""), [ze, an] = C(""), [fe, Ge] = C(["", "", "", "", "", ""]), Be = Se([]), [vt, Do] = C(""), [mt, Po] = C(""), [He, Ro] = C(""), [Ze, No] = C(""), [yt, Fo] = C(""), [wt, Lo] = C(!1), [bt, zo] = C(!1), [sn, De] = C(""), [xt, Bo] = C(""), [ln, cn] = C(0), dn = 3, [un, Ho] = C(""), [pn, qo] = C(""), [gn, Jo] = C(""), [hn, Mo] = C(""), [kt, Wo] = C(""), [fn, Ko] = C([]), [vn, Vo] = C([]), [It, Yo] = C(""), [St, $o] = C(""), [mn, we] = C(""), [yn, wn] = C(!1), [Qo, Xo] = C(!1), [Go, Zo] = C(1267), [qe, _o] = C("");
|
|
1718
|
-
le(() => {
|
|
1719
|
-
const g = setInterval(() => cn((S) => (S + 1) % dn), 4e3);
|
|
1720
|
-
return () => clearInterval(g);
|
|
1721
|
-
}, []);
|
|
1722
|
-
const Ae = Se(null), Ue = Se(null);
|
|
1723
|
-
le(() => {
|
|
1724
|
-
const g = (re) => {
|
|
1725
|
-
if (!re) return !1;
|
|
1726
|
-
try {
|
|
1727
|
-
return re.matches(":-webkit-autofill, :autofill");
|
|
1728
|
-
} catch {
|
|
1729
|
-
return !1;
|
|
1730
|
-
}
|
|
1731
|
-
}, S = () => {
|
|
1732
|
-
const re = Ae.current, et = Ue.current;
|
|
1733
|
-
re && re.value && v(re.value), et && et.value && J(et.value), K(g(re)), z(g(et));
|
|
1734
|
-
}, A = [100, 300, 600, 1e3, 2e3].map((re) => setTimeout(S, re)), L = (re) => {
|
|
1735
|
-
(re.animationName === "onAutoFillStart" || re.target.matches(":-webkit-autofill")) && setTimeout(S, 50);
|
|
1736
|
-
}, R = Ae.current, I = Ue.current;
|
|
1737
|
-
R == null || R.addEventListener("animationstart", L), I == null || I.addEventListener("animationstart", L);
|
|
1738
|
-
const _ = () => setTimeout(S, 0), ae = () => setTimeout(S, 0);
|
|
1739
|
-
return R == null || R.addEventListener("input", _), I == null || I.addEventListener("input", _), R == null || R.addEventListener("change", ae), I == null || I.addEventListener("change", ae), () => {
|
|
1740
|
-
A.forEach(clearTimeout), R == null || R.removeEventListener("animationstart", L), I == null || I.removeEventListener("animationstart", L), R == null || R.removeEventListener("input", _), I == null || I.removeEventListener("input", _), R == null || R.removeEventListener("change", ae), I == null || I.removeEventListener("change", ae);
|
|
1741
|
-
};
|
|
1742
|
-
}, []), le(() => {
|
|
1743
|
-
const g = (L) => {
|
|
1744
|
-
if (!L) return !1;
|
|
1745
|
-
try {
|
|
1746
|
-
return L.matches(":-webkit-autofill, :autofill");
|
|
1747
|
-
} catch {
|
|
1748
|
-
return !1;
|
|
1749
|
-
}
|
|
1750
|
-
}, S = () => {
|
|
1751
|
-
var I, _;
|
|
1752
|
-
const L = ((I = Ae.current) == null ? void 0 : I.value) || "", R = ((_ = Ue.current) == null ? void 0 : _.value) || "";
|
|
1753
|
-
L && L !== N && v(L), R && R !== U && J(R), K(g(Ae.current)), z(g(Ue.current));
|
|
1754
|
-
}, A = setInterval(S, 250);
|
|
1755
|
-
return window.addEventListener("focus", S), document.addEventListener("visibilitychange", S), () => {
|
|
1756
|
-
clearInterval(A), window.removeEventListener("focus", S), document.removeEventListener("visibilitychange", S);
|
|
1757
|
-
};
|
|
1758
|
-
}, [N, U]), le(() => {
|
|
1759
|
-
j && W === "verifycode" && (Ge(["", "", "", "", "", ""]), M("getcodewithname"));
|
|
1760
|
-
}, [j]);
|
|
1761
|
-
const bn = m ?? de, be = x ?? ge, er = (N || ((Un = Ae.current) == null ? void 0 : Un.value) || "").trim(), tr = U || ((Tn = Ue.current) == null ? void 0 : Tn.value) || "", xn = !!(!!(er || X) && !!(tr || G) && !bn), _e = W === "verifycode" || W === "getcodewithname" ? be : null, kn = (g) => {
|
|
1762
|
-
g.target.style.borderColor = be ? "var(--color-text)" : "var(--color-green)", g.target.style.boxShadow = be ? "none" : "0 0 0 3px var(--color-green-ring)";
|
|
1763
|
-
}, In = (g) => {
|
|
1764
|
-
g.target.style.borderColor = be ? "var(--color-text)" : "var(--color-input-border)", g.target.style.boxShadow = "none";
|
|
1765
|
-
}, Sn = (g, S) => {
|
|
1766
|
-
var _;
|
|
1767
|
-
const A = (S || "").replace(/\D/g, "");
|
|
1768
|
-
if (!A) return;
|
|
1769
|
-
const L = [...fe];
|
|
1770
|
-
let R = g;
|
|
1771
|
-
for (let ae = 0; ae < A.length && g + ae < L.length; ae += 1)
|
|
1772
|
-
L[g + ae] = A[ae], R = g + ae;
|
|
1773
|
-
Ge(L);
|
|
1774
|
-
const I = Math.min(R + 1, L.length - 1);
|
|
1775
|
-
(_ = Be.current[I]) == null || _.focus();
|
|
1776
|
-
}, Cn = (g, S) => {
|
|
1777
|
-
var I;
|
|
1778
|
-
const A = S.replace(/\D/g, "");
|
|
1779
|
-
if (A.length > 1) {
|
|
1780
|
-
Sn(g, A);
|
|
1781
|
-
return;
|
|
1782
|
-
}
|
|
1783
|
-
const L = A.slice(-1), R = [...fe];
|
|
1784
|
-
R[g] = L, Ge(R), L && g < 5 && ((I = Be.current[g + 1]) == null || I.focus());
|
|
1785
|
-
}, On = (g, S) => {
|
|
1786
|
-
var A;
|
|
1787
|
-
S.key === "Backspace" && !fe[g] && g > 0 && ((A = Be.current[g - 1]) == null || A.focus());
|
|
1788
|
-
}, An = (g, S) => {
|
|
1789
|
-
var L;
|
|
1790
|
-
S.preventDefault();
|
|
1791
|
-
const A = ((L = S.clipboardData) == null ? void 0 : L.getData("text")) || "";
|
|
1792
|
-
Sn(g, A);
|
|
1793
|
-
}, nr = async (g) => {
|
|
1794
|
-
var L, R;
|
|
1795
|
-
if (g.preventDefault(), !xn) return;
|
|
1796
|
-
const S = N || ((L = Ae.current) == null ? void 0 : L.value) || "", A = U || ((R = Ue.current) == null ? void 0 : R.value) || "";
|
|
1797
|
-
if (!(!S || !A)) {
|
|
1798
|
-
he(null), H(!0);
|
|
1799
|
-
try {
|
|
1800
|
-
await (e == null ? void 0 : e(S, A));
|
|
1801
|
-
} catch (I) {
|
|
1802
|
-
he((I == null ? void 0 : I.message) || "Something went wrong. Please try again.");
|
|
1803
|
-
} finally {
|
|
1804
|
-
H(!1);
|
|
1805
|
-
}
|
|
1806
|
-
}
|
|
1807
|
-
}, or = async () => {
|
|
1808
|
-
we("");
|
|
1809
|
-
const g = un.trim(), S = pn.trim(), A = gn.trim();
|
|
1810
|
-
if (g.length < 2) {
|
|
1811
|
-
we("Please enter your full name.");
|
|
1812
|
-
return;
|
|
1813
|
-
}
|
|
1814
|
-
if (!S) {
|
|
1815
|
-
we("Please enter your work email.");
|
|
1816
|
-
return;
|
|
1817
|
-
}
|
|
1818
|
-
if (A.length < 2) {
|
|
1819
|
-
we("Please enter your company name (at least 2 characters).");
|
|
1820
|
-
return;
|
|
1821
|
-
}
|
|
1822
|
-
const L = fn.map((I) => I === "Other" && It.trim() ? `Other: ${It.trim()}` : I), R = vn.map((I) => I === "Other" && St.trim() ? `Other: ${St.trim()}` : I);
|
|
1823
|
-
wn(!0);
|
|
1824
|
-
try {
|
|
1825
|
-
const I = await (l == null ? void 0 : l({
|
|
1826
|
-
name: g,
|
|
1827
|
-
email: S,
|
|
1828
|
-
company_name: A,
|
|
1829
|
-
job_title: hn.trim() || void 0,
|
|
1830
|
-
team_size: kt || void 0,
|
|
1831
|
-
phone_systems: L,
|
|
1832
|
-
meeting_tools: R,
|
|
1833
|
-
source: "website"
|
|
1834
|
-
})), _ = Number(I == null ? void 0 : I.position);
|
|
1835
|
-
Number.isFinite(_) && _ > 0 && Zo(_), I != null && I.calendly_url && _o(String(I.calendly_url)), Xo(!0);
|
|
1836
|
-
} catch (I) {
|
|
1837
|
-
we((I == null ? void 0 : I.message) || "Unable to join waitlist right now. Please try again.");
|
|
1838
|
-
} finally {
|
|
1839
|
-
wn(!1);
|
|
1840
|
-
}
|
|
1841
|
-
};
|
|
1842
|
-
return /* @__PURE__ */ k("div", { style: { position: "fixed", inset: 0, display: "flex", overflow: "hidden", fontFamily: O, background: "white" }, children: [
|
|
1843
|
-
/* @__PURE__ */ k("div", { style: {
|
|
1844
|
-
flex: "0 0 628px",
|
|
1845
|
-
width: 628,
|
|
1846
|
-
minHeight: 0,
|
|
1847
|
-
background: "var(--surface-dark)",
|
|
1848
|
-
display: "flex",
|
|
1849
|
-
flexDirection: "column",
|
|
1850
|
-
padding: "48px 0 40px 48px",
|
|
1851
|
-
position: "relative",
|
|
1852
|
-
overflow: "hidden"
|
|
1853
|
-
}, children: [
|
|
1854
|
-
/* @__PURE__ */ d("img", { src: Ia, alt: "Chordia", style: {
|
|
1855
|
-
width: 175,
|
|
1856
|
-
height: 48,
|
|
1857
|
-
objectFit: "contain",
|
|
1858
|
-
marginBottom: 100,
|
|
1859
|
-
flexShrink: 0
|
|
1860
|
-
} }),
|
|
1861
|
-
/* @__PURE__ */ k("div", { style: { flex: 1, display: "flex", flexDirection: "column", justifyContent: "flex-start", gap: 22 }, children: [
|
|
1862
|
-
/* @__PURE__ */ d("h1", { style: {
|
|
1863
|
-
fontFamily: O,
|
|
1864
|
-
fontSize: "clamp(28px, 2.8vw, 28px)",
|
|
1865
|
-
fontWeight: 800,
|
|
1866
|
-
color: "var(--color-text-inverse)",
|
|
1867
|
-
lineHeight: 1.08,
|
|
1868
|
-
margin: 0,
|
|
1869
|
-
letterSpacing: "-0.02em",
|
|
1870
|
-
paddingRight: 48
|
|
1871
|
-
}, children: "Three Solutions. One Platform." }),
|
|
1872
|
-
/* @__PURE__ */ k("div", { style: { position: "relative", width: 412, height: 320, overflow: "hidden", WebkitMaskImage: "-webkit-radial-gradient(white, black)" }, children: [
|
|
1873
|
-
/* @__PURE__ */ d("div", { style: {
|
|
1874
|
-
display: "flex",
|
|
1875
|
-
gap: 16,
|
|
1876
|
-
height: "100%",
|
|
1877
|
-
transform: `translateX(${-ln * 280}px)`,
|
|
1878
|
-
transition: "transform 0.5s cubic-bezier(0.4, 0, 0.2, 1)"
|
|
1879
|
-
}, children: [
|
|
1880
|
-
{
|
|
1881
|
-
Icon: ar,
|
|
1882
|
-
title: "Evaluation Quality Monitoring",
|
|
1883
|
-
info: "Stop sampling 2% of calls and hoping for the best. Chordia analyzes every conversation for quality, compliance, and coaching signals — with evidence, not opinions."
|
|
1884
|
-
},
|
|
1885
|
-
{
|
|
1886
|
-
Icon: sr,
|
|
1887
|
-
title: "Compliance Monitoring",
|
|
1888
|
-
info: "Continuously monitor customer service conversations for missed disclosures, risky language, and compliance gaps."
|
|
1889
|
-
},
|
|
1890
|
-
{
|
|
1891
|
-
Icon: lr,
|
|
1892
|
-
title: "Signal Intelligence",
|
|
1893
|
-
info: "Identify emerging themes, sentiment shifts, and customer issues hidden inside everyday service conversations."
|
|
1894
|
-
}
|
|
1895
|
-
].map(({ Icon: g, title: S, info: A }, L) => /* @__PURE__ */ k("div", { style: {
|
|
1896
|
-
flexShrink: 0,
|
|
1897
|
-
width: 264,
|
|
1898
|
-
height: 320,
|
|
1899
|
-
padding: 32,
|
|
1900
|
-
boxSizing: "border-box",
|
|
1901
|
-
display: "flex",
|
|
1902
|
-
flexDirection: "column",
|
|
1903
|
-
alignItems: "flex-start",
|
|
1904
|
-
gap: 24,
|
|
1905
|
-
borderRadius: 16,
|
|
1906
|
-
border: "1px solid var(--surface-card-dark-border)",
|
|
1907
|
-
background: "var(--surface-card-dark)"
|
|
1908
|
-
}, children: [
|
|
1909
|
-
/* @__PURE__ */ d(g, { width: 36, height: 36, color: "var(--color-card-icon)", strokeWidth: 2.5 }),
|
|
1910
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", gap: 12 }, children: [
|
|
1911
|
-
/* @__PURE__ */ d("span", { style: {
|
|
1912
|
-
fontFamily: O,
|
|
1913
|
-
fontSize: 24,
|
|
1914
|
-
fontStyle: "normal",
|
|
1915
|
-
fontWeight: 600,
|
|
1916
|
-
lineHeight: "28px",
|
|
1917
|
-
color: "var(--color-card-text)"
|
|
1918
|
-
}, children: S }),
|
|
1919
|
-
/* @__PURE__ */ d("span", { style: {
|
|
1920
|
-
fontFamily: O,
|
|
1921
|
-
fontSize: 12,
|
|
1922
|
-
fontStyle: "normal",
|
|
1923
|
-
fontWeight: 400,
|
|
1924
|
-
lineHeight: "normal",
|
|
1925
|
-
color: "rgba(255,255,255,0.65)"
|
|
1926
|
-
}, children: A })
|
|
1927
|
-
] })
|
|
1928
|
-
] }, L)) }),
|
|
1929
|
-
/* @__PURE__ */ d("div", { style: {
|
|
1930
|
-
position: "absolute",
|
|
1931
|
-
top: 0,
|
|
1932
|
-
left: 280,
|
|
1933
|
-
right: 0,
|
|
1934
|
-
height: "100%",
|
|
1935
|
-
background: "linear-gradient(270deg, #1D1E20 0%, rgba(29,30,32,0.80) 100%)",
|
|
1936
|
-
pointerEvents: "none"
|
|
1937
|
-
} })
|
|
1938
|
-
] }),
|
|
1939
|
-
/* @__PURE__ */ d("div", { style: { display: "flex", flexDirection: "row", alignItems: "center", gap: 8, height: 4, marginTop: "auto", flexShrink: 0 }, children: Array.from({ length: dn }).map((g, S) => /* @__PURE__ */ d(
|
|
1940
|
-
"button",
|
|
1941
|
-
{
|
|
1942
|
-
onClick: () => cn(S),
|
|
1943
|
-
style: {
|
|
1944
|
-
width: 80,
|
|
1945
|
-
height: 4,
|
|
1946
|
-
borderRadius: 6,
|
|
1947
|
-
border: "none",
|
|
1948
|
-
padding: 0,
|
|
1949
|
-
cursor: "pointer",
|
|
1950
|
-
background: S === ln ? "rgba(255,255,255,0.7)" : "rgba(255,255,255,0.25)",
|
|
1951
|
-
transition: "background 0.3s ease"
|
|
1952
|
-
}
|
|
1953
|
-
},
|
|
1954
|
-
S
|
|
1955
|
-
)) })
|
|
1956
|
-
] })
|
|
1957
|
-
] }),
|
|
1958
|
-
/* @__PURE__ */ d("div", { style: {
|
|
1959
|
-
flex: 1,
|
|
1960
|
-
minWidth: 0,
|
|
1961
|
-
display: "flex",
|
|
1962
|
-
flexDirection: "column",
|
|
1963
|
-
justifyContent: "center",
|
|
1964
|
-
alignItems: "center",
|
|
1965
|
-
padding: W === "waitlist" ? "20px 48px" : "32px 72px",
|
|
1966
|
-
position: "relative",
|
|
1967
|
-
background: "white",
|
|
1968
|
-
overflowY: "auto",
|
|
1969
|
-
minHeight: 0
|
|
1970
|
-
}, children: /* @__PURE__ */ d("div", { style: {
|
|
1971
|
-
display: "flex",
|
|
1972
|
-
flexDirection: "column",
|
|
1973
|
-
alignItems: "flex-start",
|
|
1974
|
-
width: "100%",
|
|
1975
|
-
maxWidth: W === "waitlist" ? 430 : 360,
|
|
1976
|
-
gap: W === "waitlist" ? 22 : 28
|
|
1977
|
-
}, children: W === "waitlist" ? (
|
|
1978
|
-
/* ── Join Waitlist (matches Sign Up panel styling) ── */
|
|
1979
|
-
/* @__PURE__ */ d(ve, { children: Qo ? /* @__PURE__ */ k("div", { style: { width: "100%", display: "flex", flexDirection: "column", alignItems: "center", textAlign: "center", gap: 24 }, children: [
|
|
1980
|
-
/* @__PURE__ */ d("h2", { style: { fontFamily: O, fontWeight: 700, fontSize: "32px", lineHeight: "44px", color: "var(--color-text)", margin: 0 }, children: "Chordia" }),
|
|
1981
|
-
/* @__PURE__ */ d("h3", { style: { fontFamily: O, fontWeight: 700, fontSize: "32px", lineHeight: "52px", color: "var(--color-text)", margin: 0 }, children: "You're on the list!" }),
|
|
1982
|
-
/* @__PURE__ */ k("p", { style: { fontFamily: O, fontWeight: 700, fontSize: "56px", lineHeight: "68px", color: "var(--color-green)", margin: 0 }, children: [
|
|
1983
|
-
"#",
|
|
1984
|
-
Go.toLocaleString()
|
|
1985
|
-
] }),
|
|
1986
|
-
/* @__PURE__ */ d("p", { style: { fontFamily: O, fontWeight: 400, fontSize: 18, lineHeight: "26px", color: "var(--color-text-secondary)", margin: 0, maxWidth: 470 }, children: "We’re working hard to increase capacity and will notify you very quickly. Check your email for confirmation." }),
|
|
1987
|
-
/* @__PURE__ */ k("div", { style: {
|
|
1988
|
-
width: "100%",
|
|
1989
|
-
borderRadius: 12,
|
|
1990
|
-
border: "1px solid var(--color-input-border)",
|
|
1991
|
-
background: "white",
|
|
1992
|
-
boxShadow: "0 1px 6px rgba(0,0,0,0.06)",
|
|
1993
|
-
padding: "24px 20px",
|
|
1994
|
-
boxSizing: "border-box",
|
|
1995
|
-
display: "flex",
|
|
1996
|
-
flexDirection: "column",
|
|
1997
|
-
alignItems: "center",
|
|
1998
|
-
gap: 14
|
|
1999
|
-
}, children: [
|
|
2000
|
-
/* @__PURE__ */ d("p", { style: { margin: 0, fontFamily: O, fontSize: "24px", lineHeight: "40px", fontWeight: 700, color: "var(--color-text)" }, children: "Want to skip the line?" }),
|
|
2001
|
-
/* @__PURE__ */ d("p", { style: { margin: 0, fontFamily: O, fontSize: "18px", lineHeight: "24px", fontWeight: 400, color: "var(--color-text-secondary)" }, children: "Schedule a demo with our CEO and get immediate access." }),
|
|
2002
|
-
/* @__PURE__ */ d(
|
|
2003
|
-
"button",
|
|
2004
|
-
{
|
|
2005
|
-
type: "button",
|
|
2006
|
-
onClick: () => {
|
|
2007
|
-
qe && window.open(qe, "_blank", "noopener,noreferrer");
|
|
2008
|
-
},
|
|
2009
|
-
style: {
|
|
2010
|
-
minWidth: 220,
|
|
2011
|
-
height: 48,
|
|
2012
|
-
padding: "0 20px",
|
|
2013
|
-
borderRadius: 8,
|
|
2014
|
-
border: "2px solid #111111",
|
|
2015
|
-
background: "white",
|
|
2016
|
-
color: "var(--color-text)",
|
|
2017
|
-
fontFamily: O,
|
|
2018
|
-
fontSize: 20,
|
|
2019
|
-
fontWeight: 700,
|
|
2020
|
-
lineHeight: "28px",
|
|
2021
|
-
cursor: qe ? "pointer" : "default",
|
|
2022
|
-
opacity: qe ? 1 : 0.65
|
|
2023
|
-
},
|
|
2024
|
-
disabled: !qe,
|
|
2025
|
-
children: "Schedule a Demo"
|
|
2026
|
-
}
|
|
2027
|
-
)
|
|
2028
|
-
] })
|
|
2029
|
-
] }) : /* @__PURE__ */ k(ve, { children: [
|
|
2030
|
-
/* @__PURE__ */ d(Re, { title: "Join the Waitlist", subtitle: "Get early access to Chordia. We onboard new companies every week." }),
|
|
2031
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", width: "100%", gap: 12 }, children: [
|
|
2032
|
-
/* @__PURE__ */ d(q, { label: "Full Name", gap: 8, children: /* @__PURE__ */ d(
|
|
2033
|
-
"input",
|
|
2034
|
-
{
|
|
2035
|
-
type: "text",
|
|
2036
|
-
value: un,
|
|
2037
|
-
onChange: (g) => {
|
|
2038
|
-
Ho(g.target.value), we("");
|
|
2039
|
-
},
|
|
2040
|
-
placeholder: "Your full name",
|
|
2041
|
-
autoFocus: !0,
|
|
2042
|
-
autoComplete: "name",
|
|
2043
|
-
style: V,
|
|
2044
|
-
onFocus: Y,
|
|
2045
|
-
onBlur: $
|
|
2046
|
-
}
|
|
2047
|
-
) }),
|
|
2048
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", gap: 16, width: "100%" }, children: [
|
|
2049
|
-
/* @__PURE__ */ d("div", { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ d(q, { label: "Work Email", gap: 8, children: /* @__PURE__ */ d(
|
|
2050
|
-
"input",
|
|
2051
|
-
{
|
|
2052
|
-
type: "email",
|
|
2053
|
-
value: pn,
|
|
2054
|
-
onChange: (g) => {
|
|
2055
|
-
qo(g.target.value), we("");
|
|
2056
|
-
},
|
|
2057
|
-
placeholder: "workemail@example.com",
|
|
2058
|
-
autoComplete: "email",
|
|
2059
|
-
style: V,
|
|
2060
|
-
onFocus: Y,
|
|
2061
|
-
onBlur: $
|
|
2062
|
-
}
|
|
2063
|
-
) }) }),
|
|
2064
|
-
/* @__PURE__ */ d("div", { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ d(q, { label: "Company Name", gap: 8, children: /* @__PURE__ */ d(
|
|
2065
|
-
"input",
|
|
2066
|
-
{
|
|
2067
|
-
type: "text",
|
|
2068
|
-
value: gn,
|
|
2069
|
-
onChange: (g) => {
|
|
2070
|
-
Jo(g.target.value), we("");
|
|
2071
|
-
},
|
|
2072
|
-
placeholder: "Your Company",
|
|
2073
|
-
autoComplete: "organization",
|
|
2074
|
-
style: V,
|
|
2075
|
-
onFocus: Y,
|
|
2076
|
-
onBlur: $
|
|
2077
|
-
}
|
|
2078
|
-
) }) })
|
|
2079
|
-
] }),
|
|
2080
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", gap: 16, width: "100%" }, children: [
|
|
2081
|
-
/* @__PURE__ */ d("div", { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ d(q, { label: "Job Title", gap: 8, children: /* @__PURE__ */ d(
|
|
2082
|
-
"input",
|
|
2083
|
-
{
|
|
2084
|
-
type: "text",
|
|
2085
|
-
value: hn,
|
|
2086
|
-
onChange: (g) => Mo(g.target.value),
|
|
2087
|
-
placeholder: "Optional",
|
|
2088
|
-
autoComplete: "organization-title",
|
|
2089
|
-
style: V,
|
|
2090
|
-
onFocus: Y,
|
|
2091
|
-
onBlur: $
|
|
2092
|
-
}
|
|
2093
|
-
) }) }),
|
|
2094
|
-
/* @__PURE__ */ d("div", { style: { flex: 1, minWidth: 0 }, children: /* @__PURE__ */ d(q, { label: "Team Size", gap: 8, children: /* @__PURE__ */ k("div", { style: { position: "relative" }, children: [
|
|
2095
|
-
/* @__PURE__ */ d(
|
|
2096
|
-
"select",
|
|
2097
|
-
{
|
|
2098
|
-
value: kt,
|
|
2099
|
-
onChange: (g) => Wo(g.target.value),
|
|
2100
|
-
style: {
|
|
2101
|
-
...V,
|
|
2102
|
-
appearance: "none",
|
|
2103
|
-
WebkitAppearance: "none",
|
|
2104
|
-
paddingRight: 36,
|
|
2105
|
-
cursor: "pointer",
|
|
2106
|
-
fontSize: 15,
|
|
2107
|
-
color: kt ? "var(--color-text)" : "var(--color-text-secondary)"
|
|
2108
|
-
},
|
|
2109
|
-
children: Sa.map((g) => /* @__PURE__ */ d("option", { value: g.value, children: g.label }, g.value || "empty"))
|
|
2110
|
-
}
|
|
2111
|
-
),
|
|
2112
|
-
/* @__PURE__ */ d(
|
|
2113
|
-
to,
|
|
2114
|
-
{
|
|
2115
|
-
size: 16,
|
|
2116
|
-
style: {
|
|
2117
|
-
position: "absolute",
|
|
2118
|
-
right: 10,
|
|
2119
|
-
top: "50%",
|
|
2120
|
-
transform: "translateY(-50%)",
|
|
2121
|
-
pointerEvents: "none",
|
|
2122
|
-
color: "var(--color-text-secondary)"
|
|
2123
|
-
}
|
|
2124
|
-
}
|
|
2125
|
-
)
|
|
2126
|
-
] }) }) })
|
|
2127
|
-
] }),
|
|
2128
|
-
/* @__PURE__ */ d(q, { label: "Phone systems", gap: 8, children: /* @__PURE__ */ d(
|
|
2129
|
-
_n,
|
|
2130
|
-
{
|
|
2131
|
-
compact: !0,
|
|
2132
|
-
options: Ca,
|
|
2133
|
-
value: fn,
|
|
2134
|
-
onChange: Ko,
|
|
2135
|
-
otherValue: It,
|
|
2136
|
-
onOtherChange: Yo,
|
|
2137
|
-
placeholder: "Select (optional)",
|
|
2138
|
-
otherPlaceholder: "Please specify your phone system"
|
|
2139
|
-
}
|
|
2140
|
-
) }),
|
|
2141
|
-
/* @__PURE__ */ d(q, { label: "Meeting tools", gap: 8, children: /* @__PURE__ */ d(
|
|
2142
|
-
_n,
|
|
2143
|
-
{
|
|
2144
|
-
compact: !0,
|
|
2145
|
-
options: Oa,
|
|
2146
|
-
value: vn,
|
|
2147
|
-
onChange: Vo,
|
|
2148
|
-
otherValue: St,
|
|
2149
|
-
onOtherChange: $o,
|
|
2150
|
-
placeholder: "Select (optional)",
|
|
2151
|
-
otherPlaceholder: "Please specify your meeting tool"
|
|
2152
|
-
}
|
|
2153
|
-
) }),
|
|
2154
|
-
mn && /* @__PURE__ */ k("div", { style: {
|
|
2155
|
-
display: "flex",
|
|
2156
|
-
flexDirection: "row",
|
|
2157
|
-
alignItems: "center",
|
|
2158
|
-
padding: 8,
|
|
2159
|
-
gap: 6,
|
|
2160
|
-
width: "100%",
|
|
2161
|
-
boxSizing: "border-box",
|
|
2162
|
-
background: "var(--color-error-bg)",
|
|
2163
|
-
borderRadius: 5,
|
|
2164
|
-
fontSize: 14,
|
|
2165
|
-
fontWeight: 400,
|
|
2166
|
-
lineHeight: "22px",
|
|
2167
|
-
color: "var(--color-text)",
|
|
2168
|
-
fontFamily: O
|
|
2169
|
-
}, children: [
|
|
2170
|
-
/* @__PURE__ */ d("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "var(--color-text)", style: { flexShrink: 0 }, children: /* @__PURE__ */ d("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z" }) }),
|
|
2171
|
-
mn
|
|
2172
|
-
] }),
|
|
2173
|
-
/* @__PURE__ */ d(xe, { type: "button", onClick: or, disabled: yn, children: yn ? "Joining..." : "Join Waitlist" }),
|
|
2174
|
-
/* @__PURE__ */ d(Te, { text: "I am already a member", linkText: "Log In", onClick: () => {
|
|
2175
|
-
M("signin"), h == null || h();
|
|
2176
|
-
} }),
|
|
2177
|
-
/* @__PURE__ */ d(ke, { onTerms: c, onPrivacyPolicy: u, paddingTop: 16 })
|
|
2178
|
-
] })
|
|
2179
|
-
] }) })
|
|
2180
|
-
) : W === "signup" ? (
|
|
2181
|
-
/* ── Sign Up ── */
|
|
2182
|
-
/* @__PURE__ */ k(ve, { children: [
|
|
2183
|
-
/* @__PURE__ */ d(Re, { title: "Sign Up", subtitle: "Please enter your basic details to continue" }),
|
|
2184
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", width: "100%", gap: 16 }, children: [
|
|
2185
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", gap: 16, width: "100%" }, children: [
|
|
2186
|
-
/* @__PURE__ */ d(q, { label: "First Name", gap: 8, children: /* @__PURE__ */ d(
|
|
2187
|
-
"input",
|
|
2188
|
-
{
|
|
2189
|
-
type: "text",
|
|
2190
|
-
value: vt,
|
|
2191
|
-
onChange: (g) => Do(g.target.value),
|
|
2192
|
-
placeholder: "First name",
|
|
2193
|
-
autoFocus: !0,
|
|
2194
|
-
autoComplete: "given-name",
|
|
2195
|
-
style: V,
|
|
2196
|
-
onFocus: Y,
|
|
2197
|
-
onBlur: $
|
|
2198
|
-
}
|
|
2199
|
-
) }),
|
|
2200
|
-
/* @__PURE__ */ d(q, { label: "Last Name", gap: 8, children: /* @__PURE__ */ d(
|
|
2201
|
-
"input",
|
|
2202
|
-
{
|
|
2203
|
-
type: "text",
|
|
2204
|
-
value: mt,
|
|
2205
|
-
onChange: (g) => Po(g.target.value),
|
|
2206
|
-
placeholder: "Last name",
|
|
2207
|
-
autoComplete: "family-name",
|
|
2208
|
-
style: V,
|
|
2209
|
-
onFocus: Y,
|
|
2210
|
-
onBlur: $
|
|
2211
|
-
}
|
|
2212
|
-
) })
|
|
2213
|
-
] }),
|
|
2214
|
-
/* @__PURE__ */ d(q, { label: "Email", gap: 8, children: /* @__PURE__ */ d(
|
|
2215
|
-
"input",
|
|
2216
|
-
{
|
|
2217
|
-
type: "text",
|
|
2218
|
-
value: He,
|
|
2219
|
-
onChange: (g) => {
|
|
2220
|
-
Ro(g.target.value), De("");
|
|
2221
|
-
},
|
|
2222
|
-
placeholder: "workemail@example.com",
|
|
2223
|
-
autoComplete: "email",
|
|
2224
|
-
style: V,
|
|
2225
|
-
onFocus: Y,
|
|
2226
|
-
onBlur: $
|
|
2227
|
-
}
|
|
2228
|
-
) }),
|
|
2229
|
-
/* @__PURE__ */ d(q, { label: "Create Password", gap: 8, children: /* @__PURE__ */ k("div", { style: { position: "relative" }, children: [
|
|
2230
|
-
/* @__PURE__ */ d(
|
|
2231
|
-
"input",
|
|
2232
|
-
{
|
|
2233
|
-
type: wt ? "text" : "password",
|
|
2234
|
-
value: Ze,
|
|
2235
|
-
onChange: (g) => {
|
|
2236
|
-
No(g.target.value), De("");
|
|
2237
|
-
},
|
|
2238
|
-
placeholder: "Enter password",
|
|
2239
|
-
autoComplete: "new-password",
|
|
2240
|
-
style: { ...V, padding: "10px 44px 10px 14px" },
|
|
2241
|
-
onFocus: Y,
|
|
2242
|
-
onBlur: $
|
|
2243
|
-
}
|
|
2244
|
-
),
|
|
2245
|
-
/* @__PURE__ */ d(Nt, { show: wt, onToggle: () => Lo(!wt) })
|
|
2246
|
-
] }) }),
|
|
2247
|
-
/* @__PURE__ */ d(q, { label: "Confirm Password", gap: 8, children: /* @__PURE__ */ k("div", { style: { position: "relative" }, children: [
|
|
2248
|
-
/* @__PURE__ */ d(
|
|
2249
|
-
"input",
|
|
2250
|
-
{
|
|
2251
|
-
type: bt ? "text" : "password",
|
|
2252
|
-
value: yt,
|
|
2253
|
-
onChange: (g) => {
|
|
2254
|
-
Fo(g.target.value), De("");
|
|
2255
|
-
},
|
|
2256
|
-
placeholder: "Enter password",
|
|
2257
|
-
autoComplete: "new-password",
|
|
2258
|
-
style: { ...V, padding: "10px 44px 10px 14px" },
|
|
2259
|
-
onFocus: Y,
|
|
2260
|
-
onBlur: $
|
|
2261
|
-
}
|
|
2262
|
-
),
|
|
2263
|
-
/* @__PURE__ */ d(Nt, { show: bt, onToggle: () => zo(!bt) })
|
|
2264
|
-
] }) }),
|
|
2265
|
-
sn && /* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "row", alignItems: "center", padding: 8, gap: 6, width: "100%", boxSizing: "border-box", background: "var(--color-error-bg)", borderRadius: 5, fontSize: 14, fontWeight: 400, lineHeight: "22px", color: "var(--color-text)", fontFamily: O }, children: [
|
|
2266
|
-
/* @__PURE__ */ d("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "var(--color-text)", style: { flexShrink: 0 }, children: /* @__PURE__ */ d("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z" }) }),
|
|
2267
|
-
sn
|
|
2268
|
-
] }),
|
|
2269
|
-
/* @__PURE__ */ d(xe, { onClick: () => {
|
|
2270
|
-
if (De(""), !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(He)) {
|
|
2271
|
-
De("Please enter a valid email address.");
|
|
2272
|
-
return;
|
|
2273
|
-
}
|
|
2274
|
-
if (Ze !== yt) {
|
|
2275
|
-
De("Password and Confirm Password do not match!");
|
|
2276
|
-
return;
|
|
2277
|
-
}
|
|
2278
|
-
i == null || i({ firstName: vt, lastName: mt, email: He, password: Ze }), M("verifyemail");
|
|
2279
|
-
}, disabled: !(vt && mt && He && Ze && yt), children: "Create Account" }),
|
|
2280
|
-
/* @__PURE__ */ d(Te, { text: "I am already a member", linkText: "Sign In", onClick: () => {
|
|
2281
|
-
M("signin"), h == null || h();
|
|
2282
|
-
} }),
|
|
2283
|
-
/* @__PURE__ */ d(ke, { onTerms: c, onPrivacyPolicy: u })
|
|
2284
|
-
] })
|
|
2285
|
-
] })
|
|
2286
|
-
) : W === "verifyemail" ? (
|
|
2287
|
-
/* ── Verify Email ── */
|
|
2288
|
-
/* @__PURE__ */ k(ve, { children: [
|
|
2289
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", gap: 16 }, children: [
|
|
2290
|
-
/* @__PURE__ */ d("h2", { style: { fontFamily: O, fontWeight: 600, fontSize: "36px", lineHeight: "52px", color: "var(--color-text)", margin: 0 }, children: "Verify Email" }),
|
|
2291
|
-
/* @__PURE__ */ d("p", { style: { fontFamily: O, fontSize: 18, fontWeight: 400, lineHeight: "26px", color: "var(--color-text-secondary)", margin: 0 }, children: "Verify your email to continue the signup process." })
|
|
2292
|
-
] }),
|
|
2293
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", width: "100%", gap: 24 }, children: [
|
|
2294
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", gap: 8 }, children: [
|
|
2295
|
-
/* @__PURE__ */ d("p", { style: { fontFamily: O, fontSize: 18, fontWeight: 400, lineHeight: "24px", color: "var(--color-text-secondary)", margin: 0 }, children: "We have sent a verification link to:" }),
|
|
2296
|
-
/* @__PURE__ */ d("p", { style: { fontFamily: O, fontSize: 18, fontWeight: 600, lineHeight: "24px", color: "var(--color-text)", margin: 0 }, children: He || "youremail@workemail.com" })
|
|
2297
|
-
] }),
|
|
2298
|
-
/* @__PURE__ */ d("p", { style: { fontFamily: O, fontSize: 18, fontWeight: 400, lineHeight: "24px", color: "var(--color-text-secondary)", margin: 0 }, children: "Click on the link to complete the verification process. You might need to check your Spam folder" }),
|
|
2299
|
-
/* @__PURE__ */ d(xe, { onClick: () => {
|
|
2300
|
-
M("signin"), h == null || h();
|
|
2301
|
-
}, children: "Go To Login" })
|
|
2302
|
-
] }),
|
|
2303
|
-
/* @__PURE__ */ d(ke, { onTerms: c, onPrivacyPolicy: u, paddingTop: 40 })
|
|
2304
|
-
] })
|
|
2305
|
-
) : W === "verifycode" ? (
|
|
2306
|
-
/* ── Verify Code ── */
|
|
2307
|
-
/* @__PURE__ */ k(ve, { children: [
|
|
2308
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", gap: 8 }, children: [
|
|
2309
|
-
/* @__PURE__ */ d("h2", { style: { fontFamily: O, fontWeight: 600, fontSize: "36px", lineHeight: "52px", color: "var(--color-text)", margin: 0 }, children: "Sign In with code" }),
|
|
2310
|
-
/* @__PURE__ */ k("p", { style: { fontFamily: O, fontSize: 18, fontWeight: 400, lineHeight: "26px", color: "var(--color-text-secondary)", margin: 0 }, children: [
|
|
2311
|
-
"We have sent a one-time code to your email:",
|
|
2312
|
-
" ",
|
|
2313
|
-
/* @__PURE__ */ d("span", { style: { color: "var(--color-text)" }, children: ze || "workemail@example.com" }),
|
|
2314
|
-
" ",
|
|
2315
|
-
/* @__PURE__ */ d(
|
|
2316
|
-
"button",
|
|
2317
|
-
{
|
|
2318
|
-
type: "button",
|
|
2319
|
-
onClick: () => M("getcode"),
|
|
2320
|
-
style: { background: "none", border: "none", padding: 0, fontSize: 18, fontWeight: 400, color: $e, cursor: "pointer", fontFamily: O, textDecoration: "underline" },
|
|
2321
|
-
children: "Change email"
|
|
2322
|
-
}
|
|
2323
|
-
)
|
|
2324
|
-
] })
|
|
2325
|
-
] }),
|
|
2326
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", width: "100%", gap: 16 }, children: [
|
|
2327
|
-
/* @__PURE__ */ d(q, { label: "Enter one-time code", gap: 12, children: /* @__PURE__ */ d("div", { style: { display: "flex", gap: 8 }, children: fe.map((g, S) => /* @__PURE__ */ d(
|
|
2328
|
-
"input",
|
|
2329
|
-
{
|
|
2330
|
-
ref: (A) => {
|
|
2331
|
-
Be.current[S] = A;
|
|
2332
|
-
},
|
|
2333
|
-
type: "text",
|
|
2334
|
-
inputMode: "numeric",
|
|
2335
|
-
maxLength: 1,
|
|
2336
|
-
value: g,
|
|
2337
|
-
onChange: (A) => Cn(S, A.target.value),
|
|
2338
|
-
onKeyDown: (A) => On(S, A),
|
|
2339
|
-
onPaste: (A) => An(S, A),
|
|
2340
|
-
autoFocus: S === 0,
|
|
2341
|
-
style: {
|
|
2342
|
-
flex: 1,
|
|
2343
|
-
minWidth: 0,
|
|
2344
|
-
height: 40,
|
|
2345
|
-
textAlign: "center",
|
|
2346
|
-
fontSize: 16,
|
|
2347
|
-
fontWeight: 600,
|
|
2348
|
-
fontFamily: O,
|
|
2349
|
-
color: "var(--color-text)",
|
|
2350
|
-
border: "1px solid var(--color-input-border)",
|
|
2351
|
-
borderRadius: 4,
|
|
2352
|
-
outline: "none",
|
|
2353
|
-
background: "white",
|
|
2354
|
-
boxSizing: "border-box",
|
|
2355
|
-
transition: "border-color 0.15s, box-shadow 0.15s",
|
|
2356
|
-
caretColor: $e
|
|
2357
|
-
},
|
|
2358
|
-
onFocus: Y,
|
|
2359
|
-
onBlur: $
|
|
2360
|
-
},
|
|
2361
|
-
S
|
|
2362
|
-
)) }) }),
|
|
2363
|
-
/* @__PURE__ */ d(xe, { onClick: () => o == null ? void 0 : o(ze, fe.join("")), disabled: fe.some((g) => !g), children: "Verify Code" }),
|
|
2364
|
-
_e && /* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "row", alignItems: "center", padding: 8, gap: 6, width: "100%", boxSizing: "border-box", background: "var(--color-error-bg)", borderRadius: 5, fontSize: 15, fontWeight: 400, lineHeight: "22px", color: "var(--color-text)", fontFamily: O }, children: [
|
|
2365
|
-
/* @__PURE__ */ d("svg", { width: "17", height: "17", viewBox: "0 0 24 24", fill: "var(--color-text)", style: { flexShrink: 0 }, children: /* @__PURE__ */ d("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z" }) }),
|
|
2366
|
-
_e
|
|
2367
|
-
] }),
|
|
2368
|
-
/* @__PURE__ */ d(Ke, {}),
|
|
2369
|
-
/* @__PURE__ */ d(Te, { text: "Not received yet?", linkText: "Resend", onClick: () => r == null ? void 0 : r(ze) }),
|
|
2370
|
-
/* @__PURE__ */ d(ke, { onTerms: c, onPrivacyPolicy: u, paddingTop: 24 })
|
|
2371
|
-
] })
|
|
2372
|
-
] })
|
|
2373
|
-
) : W === "getcode" ? (
|
|
2374
|
-
/* ── Get Code (original — email only) ── */
|
|
2375
|
-
/* @__PURE__ */ k(ve, { children: [
|
|
2376
|
-
/* @__PURE__ */ d(Re, { title: "Get code", subtitle: "We'll send a one time pass-code to your email" }),
|
|
2377
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", width: "100%", gap: 16 }, children: [
|
|
2378
|
-
/* @__PURE__ */ d(q, { label: "Email", gap: 12, children: /* @__PURE__ */ d(
|
|
2379
|
-
"input",
|
|
2380
|
-
{
|
|
2381
|
-
type: "email",
|
|
2382
|
-
value: ne,
|
|
2383
|
-
onChange: (g) => je(g.target.value),
|
|
2384
|
-
placeholder: "workemail@example.com",
|
|
2385
|
-
autoFocus: !0,
|
|
2386
|
-
autoComplete: "email",
|
|
2387
|
-
style: V,
|
|
2388
|
-
onFocus: Y,
|
|
2389
|
-
onBlur: $
|
|
2390
|
-
}
|
|
2391
|
-
) }),
|
|
2392
|
-
/* @__PURE__ */ d(xe, { onClick: () => {
|
|
2393
|
-
an(ne), Ge(["", "", "", "", "", ""]), M("verifycode"), n == null || n(ne);
|
|
2394
|
-
}, disabled: !ne, children: "Send One-time Code" }),
|
|
2395
|
-
/* @__PURE__ */ d(Ke, {}),
|
|
2396
|
-
/* @__PURE__ */ d(Te, { text: "I have my password", linkText: "Back to Sign in", onClick: () => {
|
|
2397
|
-
M("signin"), h == null || h();
|
|
2398
|
-
} }),
|
|
2399
|
-
/* @__PURE__ */ d(ke, { onTerms: c, onPrivacyPolicy: u, paddingTop: 40 })
|
|
2400
|
-
] })
|
|
2401
|
-
] })
|
|
2402
|
-
) : W === "getcodewithname" ? (
|
|
2403
|
-
/* ── Get Code with Full Name (unregistered email) ── */
|
|
2404
|
-
/* @__PURE__ */ k(ve, { children: [
|
|
2405
|
-
/* @__PURE__ */ d(Re, { title: "Complete your sign in", subtitle: "We’ve sent a one-time code to your email. Please enter the code and your full name to sign in" }),
|
|
2406
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", width: "100%", gap: 16 }, children: [
|
|
2407
|
-
/* @__PURE__ */ d(q, { label: "Email", gap: 12, children: /* @__PURE__ */ d(
|
|
2408
|
-
"input",
|
|
2409
|
-
{
|
|
2410
|
-
type: "email",
|
|
2411
|
-
value: ne,
|
|
2412
|
-
onChange: (g) => je(g.target.value),
|
|
2413
|
-
placeholder: "workemail@example.com",
|
|
2414
|
-
autoComplete: "email",
|
|
2415
|
-
style: V,
|
|
2416
|
-
onFocus: Y,
|
|
2417
|
-
onBlur: $
|
|
2418
|
-
}
|
|
2419
|
-
) }),
|
|
2420
|
-
/* @__PURE__ */ d(q, { label: "Full Name", gap: 12, children: /* @__PURE__ */ d(
|
|
2421
|
-
"input",
|
|
2422
|
-
{
|
|
2423
|
-
type: "text",
|
|
2424
|
-
value: oe,
|
|
2425
|
-
onChange: (g) => D(g.target.value),
|
|
2426
|
-
placeholder: "Enter your full name",
|
|
2427
|
-
autoComplete: "name",
|
|
2428
|
-
style: V,
|
|
2429
|
-
onFocus: Y,
|
|
2430
|
-
onBlur: $
|
|
2431
|
-
}
|
|
2432
|
-
) }),
|
|
2433
|
-
/* @__PURE__ */ d(q, { label: "Enter one-time code", gap: 12, children: /* @__PURE__ */ d("div", { style: { display: "flex", gap: 8 }, children: fe.map((g, S) => /* @__PURE__ */ d(
|
|
2434
|
-
"input",
|
|
2435
|
-
{
|
|
2436
|
-
ref: (A) => {
|
|
2437
|
-
Be.current[S] = A;
|
|
2438
|
-
},
|
|
2439
|
-
type: "text",
|
|
2440
|
-
inputMode: "numeric",
|
|
2441
|
-
maxLength: 1,
|
|
2442
|
-
value: g,
|
|
2443
|
-
onChange: (A) => Cn(S, A.target.value),
|
|
2444
|
-
onKeyDown: (A) => On(S, A),
|
|
2445
|
-
onPaste: (A) => An(S, A),
|
|
2446
|
-
autoFocus: S === 0,
|
|
2447
|
-
style: {
|
|
2448
|
-
flex: 1,
|
|
2449
|
-
minWidth: 0,
|
|
2450
|
-
height: 40,
|
|
2451
|
-
textAlign: "center",
|
|
2452
|
-
fontSize: 16,
|
|
2453
|
-
fontWeight: 600,
|
|
2454
|
-
fontFamily: O,
|
|
2455
|
-
color: "var(--color-text)",
|
|
2456
|
-
border: "1px solid var(--color-input-border)",
|
|
2457
|
-
borderRadius: 4,
|
|
2458
|
-
outline: "none",
|
|
2459
|
-
background: "white",
|
|
2460
|
-
boxSizing: "border-box",
|
|
2461
|
-
transition: "border-color 0.15s, box-shadow 0.15s",
|
|
2462
|
-
caretColor: $e
|
|
2463
|
-
},
|
|
2464
|
-
onFocus: Y,
|
|
2465
|
-
onBlur: $
|
|
2466
|
-
},
|
|
2467
|
-
S
|
|
2468
|
-
)) }) }),
|
|
2469
|
-
/* @__PURE__ */ d(xe, { onClick: () => {
|
|
2470
|
-
an(ne), n == null || n(ne, oe, fe.join(""));
|
|
2471
|
-
}, disabled: !ne || !oe || fe.some((g) => !g), children: "Verify & Sign In" }),
|
|
2472
|
-
_e && /* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "row", alignItems: "center", padding: 8, gap: 6, width: "100%", boxSizing: "border-box", background: "var(--color-error-bg)", borderRadius: 5, fontSize: 15, fontWeight: 400, lineHeight: "22px", color: "var(--color-text)", fontFamily: O }, children: [
|
|
2473
|
-
/* @__PURE__ */ d("svg", { width: "17", height: "17", viewBox: "0 0 24 24", fill: "var(--color-text)", style: { flexShrink: 0 }, children: /* @__PURE__ */ d("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z" }) }),
|
|
2474
|
-
_e
|
|
2475
|
-
] }),
|
|
2476
|
-
/* @__PURE__ */ d(Ke, {}),
|
|
2477
|
-
/* @__PURE__ */ d(Te, { text: "I have my password", linkText: "Back to Sign in", onClick: () => {
|
|
2478
|
-
M("signin"), h == null || h();
|
|
2479
|
-
} }),
|
|
2480
|
-
/* @__PURE__ */ d(ke, { onTerms: c, onPrivacyPolicy: u, paddingTop: 40 })
|
|
2481
|
-
] })
|
|
2482
|
-
] })
|
|
2483
|
-
) : W === "resetpassword" ? (
|
|
2484
|
-
/* ── Reset Password ── */
|
|
2485
|
-
/* @__PURE__ */ k(ve, { children: [
|
|
2486
|
-
/* @__PURE__ */ d(Re, { title: "Reset Password", subtitle: "We'll send an email to reset your password" }),
|
|
2487
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", width: "100%", gap: 16 }, children: [
|
|
2488
|
-
/* @__PURE__ */ d(q, { label: "Email", gap: 12, children: /* @__PURE__ */ d(
|
|
2489
|
-
"input",
|
|
2490
|
-
{
|
|
2491
|
-
type: "email",
|
|
2492
|
-
value: xt,
|
|
2493
|
-
onChange: (g) => Bo(g.target.value),
|
|
2494
|
-
placeholder: "workemail@example.com",
|
|
2495
|
-
autoFocus: !0,
|
|
2496
|
-
autoComplete: "email",
|
|
2497
|
-
style: V,
|
|
2498
|
-
onFocus: Y,
|
|
2499
|
-
onBlur: $
|
|
2500
|
-
}
|
|
2501
|
-
) }),
|
|
2502
|
-
/* @__PURE__ */ d(xe, { onClick: () => s == null ? void 0 : s(xt), disabled: !xt, children: "Send Reset Link" }),
|
|
2503
|
-
/* @__PURE__ */ d(Ke, {}),
|
|
2504
|
-
/* @__PURE__ */ d(Te, { text: "I have my password", linkText: "Back to Sign in", onClick: () => {
|
|
2505
|
-
M("signin"), h == null || h();
|
|
2506
|
-
} }),
|
|
2507
|
-
/* @__PURE__ */ d(ke, { onTerms: c, onPrivacyPolicy: u, paddingTop: 40 })
|
|
2508
|
-
] })
|
|
2509
|
-
] })
|
|
2510
|
-
) : (
|
|
2511
|
-
/* ── Sign In ── */
|
|
2512
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", alignItems: "flex-start", width: "100%", gap: 48 }, children: [
|
|
2513
|
-
/* @__PURE__ */ d(Re, { title: "Sign in", subtitle: "Enter your email & password to continue" }),
|
|
2514
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", alignItems: "flex-start", width: "100%", gap: 8 }, children: [
|
|
2515
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", alignItems: "flex-start", width: "100%", gap: 16 }, children: [
|
|
2516
|
-
/* @__PURE__ */ k("form", { onSubmit: nr, style: { width: "100%", display: "flex", flexDirection: "column", gap: 16 }, children: [
|
|
2517
|
-
/* @__PURE__ */ d(q, { label: "Email", gap: 12, children: /* @__PURE__ */ d(
|
|
2518
|
-
"input",
|
|
2519
|
-
{
|
|
2520
|
-
ref: Ae,
|
|
2521
|
-
type: "email",
|
|
2522
|
-
value: N,
|
|
2523
|
-
onChange: (g) => v(g.target.value),
|
|
2524
|
-
placeholder: "workemail@example.com",
|
|
2525
|
-
required: !0,
|
|
2526
|
-
autoComplete: "email",
|
|
2527
|
-
style: { ...V, border: `1px solid ${be ? "var(--color-text)" : "var(--color-input-border)"}` },
|
|
2528
|
-
onFocus: kn,
|
|
2529
|
-
onBlur: In
|
|
2530
|
-
}
|
|
2531
|
-
) }),
|
|
2532
|
-
/* @__PURE__ */ d(q, { label: "Password", gap: 12, children: /* @__PURE__ */ k("div", { style: { position: "relative" }, children: [
|
|
2533
|
-
/* @__PURE__ */ d(
|
|
2534
|
-
"input",
|
|
2535
|
-
{
|
|
2536
|
-
ref: Ue,
|
|
2537
|
-
type: Z ? "text" : "password",
|
|
2538
|
-
value: U,
|
|
2539
|
-
onChange: (g) => J(g.target.value),
|
|
2540
|
-
placeholder: "Enter password",
|
|
2541
|
-
required: !0,
|
|
2542
|
-
autoComplete: "current-password",
|
|
2543
|
-
style: { ...V, padding: "10px 44px 10px 16px", border: `1px solid ${be ? "var(--color-text)" : "var(--color-input-border)"}` },
|
|
2544
|
-
onFocus: kn,
|
|
2545
|
-
onBlur: In
|
|
2546
|
-
}
|
|
2547
|
-
),
|
|
2548
|
-
/* @__PURE__ */ d(Nt, { show: Z, onToggle: () => te(!Z) })
|
|
2549
|
-
] }) }),
|
|
2550
|
-
/* @__PURE__ */ d(xe, { type: "submit", disabled: !xn, children: bn ? "Signing in…" : "Sign In" })
|
|
2551
|
-
] }),
|
|
2552
|
-
be && /* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "row", alignItems: "center", padding: 8, gap: 6, width: "100%", boxSizing: "border-box", background: "var(--color-error-bg)", borderRadius: 5, fontSize: 15, fontWeight: 400, lineHeight: "22px", color: "var(--color-text)", fontFamily: O }, children: [
|
|
2553
|
-
/* @__PURE__ */ d("svg", { width: "17", height: "17", viewBox: "0 0 24 24", fill: "var(--color-text)", style: { flexShrink: 0 }, children: /* @__PURE__ */ d("path", { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z" }) }),
|
|
2554
|
-
be
|
|
2555
|
-
] }),
|
|
2556
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", justifyContent: "space-between", alignItems: "center", width: "100%" }, children: [
|
|
2557
|
-
/* @__PURE__ */ d(
|
|
2558
|
-
"button",
|
|
2559
|
-
{
|
|
2560
|
-
type: "button",
|
|
2561
|
-
onClick: () => {
|
|
2562
|
-
M("resetpassword"), t == null || t();
|
|
2563
|
-
},
|
|
2564
|
-
style: { background: "none", border: "none", padding: 0, fontSize: 15, fontWeight: 400, lineHeight: "100%", color: "var(--color-text)", cursor: "pointer", fontFamily: O, textDecoration: "underline" },
|
|
2565
|
-
children: "Forgot Password?"
|
|
2566
|
-
}
|
|
2567
|
-
),
|
|
2568
|
-
/* @__PURE__ */ d(
|
|
2569
|
-
"button",
|
|
2570
|
-
{
|
|
2571
|
-
type: "button",
|
|
2572
|
-
onClick: () => {
|
|
2573
|
-
M("getcode"), n == null || n();
|
|
2574
|
-
},
|
|
2575
|
-
style: { background: "none", border: "none", padding: 0, fontSize: 15, fontWeight: 600, lineHeight: "100%", color: $e, cursor: "pointer", fontFamily: O, textDecoration: "underline solid", textUnderlineOffset: 0, textDecorationSkipInk: "none" },
|
|
2576
|
-
children: "Sign in with one-time code"
|
|
2577
|
-
}
|
|
2578
|
-
)
|
|
2579
|
-
] }),
|
|
2580
|
-
/* @__PURE__ */ k("div", { style: { display: "flex", flexDirection: "column", width: "100%", gap: 2 }, children: [
|
|
2581
|
-
/* @__PURE__ */ d(Ke, {}),
|
|
2582
|
-
/* @__PURE__ */ d(Aa, { projectId: b, onSuccess: p, onError: f })
|
|
2583
|
-
] })
|
|
2584
|
-
] }),
|
|
2585
|
-
/* @__PURE__ */ d(
|
|
2586
|
-
Te,
|
|
2587
|
-
{
|
|
2588
|
-
text: P === "waitlist" ? "Don't have an account yet?" : "Not a member yet?",
|
|
2589
|
-
linkText: P === "waitlist" ? "Join Waitlist" : "Sign Up",
|
|
2590
|
-
onClick: () => {
|
|
2591
|
-
if (P === "waitlist") {
|
|
2592
|
-
M("waitlist"), a == null || a();
|
|
2593
|
-
return;
|
|
2594
|
-
}
|
|
2595
|
-
M("signup"), i == null || i();
|
|
2596
|
-
}
|
|
2597
|
-
}
|
|
2598
|
-
),
|
|
2599
|
-
/* @__PURE__ */ d(ke, { onTerms: c, onPrivacyPolicy: u, paddingTop: 16 })
|
|
2600
|
-
] })
|
|
2601
|
-
] })
|
|
2602
|
-
) }) })
|
|
2603
|
-
] });
|
|
2604
|
-
}
|
|
2605
|
-
export {
|
|
2606
|
-
ga as $,
|
|
2607
|
-
qa as L,
|
|
2608
|
-
ea as W,
|
|
2609
|
-
La as X,
|
|
2610
|
-
Na as _,
|
|
2611
|
-
Fa as a,
|
|
2612
|
-
Ra as b,
|
|
2613
|
-
B as c,
|
|
2614
|
-
Ha as h,
|
|
2615
|
-
za as r,
|
|
2616
|
-
Ba as s
|
|
2617
|
-
};
|
|
2618
|
-
//# sourceMappingURL=LoginPage.es.js.map
|