@burdenoff/microfe-auth 2026.1031.1 → 2026.1101.2
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/auth/AuthRoot.js +14 -11
- package/dist/auth/AuthRoot.js.map +1 -1
- package/dist/auth/AuthRoutes.js +1 -2
- package/dist/auth/AuthRoutes.js.map +1 -1
- package/dist/auth/components/AuthIcons.js +1 -2
- package/dist/auth/components/AuthIcons.js.map +1 -1
- package/dist/auth/components/AuthLayout.js +1 -2
- package/dist/auth/components/AuthLayout.js.map +1 -1
- package/dist/auth/components/CaptchaV2.js +9 -10
- package/dist/auth/components/CaptchaV2.js.map +1 -1
- package/dist/auth/components/ConfirmActionDialog.js +1 -2
- package/dist/auth/components/ConfirmActionDialog.js.map +1 -1
- package/dist/auth/components/profile/UserProfileMenu.js +7 -6
- package/dist/auth/components/profile/UserProfileMenu.js.map +1 -1
- package/dist/auth/components/workspace/WorkspaceSelector.js +1 -2
- package/dist/auth/components/workspace/WorkspaceSelector.js.map +1 -1
- package/dist/auth/constants/permissions.js +1 -2
- package/dist/auth/constants/permissions.js.map +1 -1
- package/dist/auth/constants/sessionKeys.js +1 -2
- package/dist/auth/constants/sessionKeys.js.map +1 -1
- package/dist/auth/hooks/contextDeepLink.js +1 -2
- package/dist/auth/hooks/contextDeepLink.js.map +1 -1
- package/dist/auth/hooks/index.js +12 -11
- package/dist/auth/hooks/useAccountOperations.js +1 -2
- package/dist/auth/hooks/useAccountOperations.js.map +1 -1
- package/dist/auth/hooks/useActiveContextBootstrapMirror.js +1 -2
- package/dist/auth/hooks/useActiveContextBootstrapMirror.js.map +1 -1
- package/dist/auth/hooks/useAuthOperations.js +37 -37
- package/dist/auth/hooks/useAuthOperations.js.map +1 -1
- package/dist/auth/hooks/useAuthPermissions.js +1 -2
- package/dist/auth/hooks/useAuthPermissions.js.map +1 -1
- package/dist/auth/hooks/useCaptchaV3.js +1 -2
- package/dist/auth/hooks/useCaptchaV3.js.map +1 -1
- package/dist/auth/hooks/useContextSwitcherData.js +86 -79
- package/dist/auth/hooks/useContextSwitcherData.js.map +1 -1
- package/dist/auth/hooks/useMfaOperations.js +4 -5
- package/dist/auth/hooks/useMfaOperations.js.map +1 -1
- package/dist/auth/hooks/useMyWorkspaces.js +4 -5
- package/dist/auth/hooks/useMyWorkspaces.js.map +1 -1
- package/dist/auth/hooks/useOAuthOperations.js +11 -12
- package/dist/auth/hooks/useOAuthOperations.js.map +1 -1
- package/dist/auth/hooks/usePasswordOperations.js +1 -2
- package/dist/auth/hooks/usePasswordOperations.js.map +1 -1
- package/dist/auth/hooks/useSessionOperations.js +3 -4
- package/dist/auth/hooks/useSessionOperations.js.map +1 -1
- package/dist/auth/hooks/useSignupCaptcha.js +1 -2
- package/dist/auth/hooks/useSignupCaptcha.js.map +1 -1
- package/dist/auth/hooks/useSsoOperations.js +80 -81
- package/dist/auth/hooks/useSsoOperations.js.map +1 -1
- package/dist/auth/hooks/useTokenRefresh.js +8 -12
- package/dist/auth/hooks/useTokenRefresh.js.map +1 -1
- package/dist/auth/hooks/useUserOperations.js +1 -2
- package/dist/auth/hooks/useUserOperations.js.map +1 -1
- package/dist/auth/hooks/useWorkspaceOperations.js +1 -2
- package/dist/auth/hooks/useWorkspaceOperations.js.map +1 -1
- package/dist/auth/hooks/useWorkspaceToken.js +1 -2
- package/dist/auth/hooks/useWorkspaceToken.js.map +1 -1
- package/dist/auth/index.js +19 -18
- package/dist/auth/pages/AuditLogPage.js +21 -22
- package/dist/auth/pages/AuditLogPage.js.map +1 -1
- package/dist/auth/pages/EmailVerifyPage.js +15 -17
- package/dist/auth/pages/EmailVerifyPage.js.map +1 -1
- package/dist/auth/pages/LoginPage.js +89 -105
- package/dist/auth/pages/LoginPage.js.map +1 -1
- package/dist/auth/pages/MagicLinkPage.js +30 -31
- package/dist/auth/pages/MagicLinkPage.js.map +1 -1
- package/dist/auth/pages/MfaSetupPage.js +18 -20
- package/dist/auth/pages/MfaSetupPage.js.map +1 -1
- package/dist/auth/pages/MfaVerifyPage.js +31 -35
- package/dist/auth/pages/MfaVerifyPage.js.map +1 -1
- package/dist/auth/pages/OAuthCallbackPage.js +4 -11
- package/dist/auth/pages/OAuthCallbackPage.js.map +1 -1
- package/dist/auth/pages/PasswordResetPage.js +20 -23
- package/dist/auth/pages/PasswordResetPage.js.map +1 -1
- package/dist/auth/pages/ReactivatePage.js +14 -18
- package/dist/auth/pages/ReactivatePage.js.map +1 -1
- package/dist/auth/pages/RegisterPage.js +180 -181
- package/dist/auth/pages/RegisterPage.js.map +1 -1
- package/dist/auth/pages/SSOClearPage.js +9 -10
- package/dist/auth/pages/SSOClearPage.js.map +1 -1
- package/dist/auth/pages/SSODepositPage.js +9 -13
- package/dist/auth/pages/SSODepositPage.js.map +1 -1
- package/dist/auth/pages/SSORelayCallbackPage.js +3 -7
- package/dist/auth/pages/SSORelayCallbackPage.js.map +1 -1
- package/dist/auth/pages/SSORelayPage.js +11 -10
- package/dist/auth/pages/SSORelayPage.js.map +1 -1
- package/dist/auth/pages/SecurityPage.js +19 -21
- package/dist/auth/pages/SecurityPage.js.map +1 -1
- package/dist/auth/pages/SessionBridgePage.js +9 -16
- package/dist/auth/pages/SessionBridgePage.js.map +1 -1
- package/dist/auth/pages/SessionsPage.js +17 -18
- package/dist/auth/pages/SessionsPage.js.map +1 -1
- package/dist/auth/pages/SsoCallbackPage.js +17 -22
- package/dist/auth/pages/SsoCallbackPage.js.map +1 -1
- package/dist/auth/pages/SsoConfigPage.js +69 -69
- package/dist/auth/pages/SsoConfigPage.js.map +1 -1
- package/dist/auth/pages/SsoLoginPage.js +9 -10
- package/dist/auth/pages/SsoLoginPage.js.map +1 -1
- package/dist/auth/pages/UserDetailsPage.js +16 -23
- package/dist/auth/pages/UserDetailsPage.js.map +1 -1
- package/dist/auth/pages/UserProfilePage.js +140 -141
- package/dist/auth/pages/UserProfilePage.js.map +1 -1
- package/dist/auth/pages/UsersPage.js +446 -453
- package/dist/auth/pages/UsersPage.js.map +1 -1
- package/dist/auth/providers/AuthProvider.js +1 -2
- package/dist/auth/providers/AuthProvider.js.map +1 -1
- package/dist/auth/providers/CaptchaProvider.js +1 -2
- package/dist/auth/providers/CaptchaProvider.js.map +1 -1
- package/dist/auth/store/authStore.js +5 -12
- package/dist/auth/store/authStore.js.map +1 -1
- package/dist/auth/utils/captchaConfig.js +5 -8
- package/dist/auth/utils/captchaConfig.js.map +1 -1
- package/dist/auth/utils/formatters.js +1 -2
- package/dist/auth/utils/formatters.js.map +1 -1
- package/dist/auth/utils/gatewayBaseUrls.js +1 -2
- package/dist/auth/utils/gatewayBaseUrls.js.map +1 -1
- package/dist/auth/utils/legalUrls.js +2 -3
- package/dist/auth/utils/legalUrls.js.map +1 -1
- package/dist/auth/utils/redirect.js +1 -2
- package/dist/auth/utils/redirect.js.map +1 -1
- package/dist/auth/utils/ssoOrigins.js +2 -3
- package/dist/auth/utils/ssoOrigins.js.map +1 -1
- package/dist/auth/utils/validation.js +34 -36
- package/dist/auth/utils/validation.js.map +1 -1
- package/dist/generated/global-operations.js +2 -3
- package/dist/generated/global-operations.js.map +1 -1
- package/dist/generated/wspace-operations.js +2 -3
- package/dist/generated/wspace-operations.js.map +1 -1
- package/dist/microfe-auth.css +1 -1
- package/dist/shared/hooks/useTr.js +1 -2
- package/dist/shared/hooks/useTr.js.map +1 -1
- package/dist/translations/en.js +1 -2
- package/dist/translations/en.js.map +1 -1
- package/dist/utils/nativeBridge.js +1 -2
- package/package.json +7 -3
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { useAuthPermissions as e } from "../hooks/useAuthPermissions.js";
|
|
2
|
+
import { useTr as t } from "../../shared/hooks/useTr.js";
|
|
3
|
+
import { ConfirmActionDialog as n } from "../components/ConfirmActionDialog.js";
|
|
3
4
|
import { useSsoOperations as r } from "../hooks/useSsoOperations.js";
|
|
4
|
-
import {
|
|
5
|
-
import { ConfirmActionDialog as a } from "../components/ConfirmActionDialog.js";
|
|
5
|
+
import { AlertIcon as i, SpinnerIcon as a } from "../components/AuthIcons.js";
|
|
6
6
|
import { nativeCopyText as o, nativeImpact as s, nativeNotify as c } from "../../utils/nativeBridge.js";
|
|
7
7
|
import { useEffect as l, useRef as ee, useState as u } from "react";
|
|
8
8
|
import { useNavigate as te, useSearchParams as ne } from "react-router";
|
|
@@ -10,9 +10,11 @@ import { Fragment as d, jsx as f, jsxs as p } from "react/jsx-runtime";
|
|
|
10
10
|
import { useFeatureFlagDetails as re } from "@burdenoff/fe-libs/shared/feature-flags";
|
|
11
11
|
import { Button as m } from "@burdenoff/fe-libs/button";
|
|
12
12
|
import { EmphasisPanel as ie, IllustratedEmptyState as h, NextSteps as ae, PagePurpose as oe } from "@burdenoff/fe-libs/ui";
|
|
13
|
-
|
|
13
|
+
// src/auth/pages/SsoConfigPage.tsx
|
|
14
14
|
var g = async (e) => {
|
|
15
|
-
s("light")
|
|
15
|
+
s("light");
|
|
16
|
+
let t = await o(e);
|
|
17
|
+
c(t ? "success" : "error");
|
|
16
18
|
};
|
|
17
19
|
function _(e) {
|
|
18
20
|
try {
|
|
@@ -48,7 +50,7 @@ function _(e) {
|
|
|
48
50
|
}
|
|
49
51
|
}
|
|
50
52
|
function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
51
|
-
let v =
|
|
53
|
+
let v = t(), y = te(), [b] = ne(), { canManageSsoConfig: se, isLoading: ce } = e(), le = re("workspace.auth.enterprise-sso"), ue = o || le?.value === !0, x = ee(null), S = b.get("tenant"), C = b.get("org"), w = b.get("workspace"), { ssoConfig: T, oidcConfig: E, isLoading: D, isSaving: O, isDeleting: k, saveSsoConfig: A, deleteSsoConfig: de } = r(S ?? "burdenoff.com"), [j, fe] = u("saml"), [M, N] = u(!1), [pe, P] = u(!1), [F, I] = u(null), [L, R] = u(null), [z, B] = u(""), [V, H] = u(!1), [U, W] = u(!1), [G, K] = u({
|
|
52
54
|
client_name: "",
|
|
53
55
|
redirect_uris: "",
|
|
54
56
|
grant_types: ["authorization_code", "refresh_token"],
|
|
@@ -79,61 +81,60 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
79
81
|
}
|
|
80
82
|
}
|
|
81
83
|
}, he = async () => {
|
|
82
|
-
if (!z)
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
H(!1);
|
|
84
|
+
if (!z) I(v("auth.sso.enterUrl", "Please enter a metadata URL"));
|
|
85
|
+
else {
|
|
86
|
+
I(null), H(!0);
|
|
87
|
+
try {
|
|
88
|
+
let e = await fetch(z);
|
|
89
|
+
if (!e.ok) throw Error(`Failed to fetch: ${e.statusText}`);
|
|
90
|
+
let t = _(await e.text());
|
|
91
|
+
t ? (Q({
|
|
92
|
+
...Z,
|
|
93
|
+
entityId: t.entityId,
|
|
94
|
+
ssoUrl: t.ssoUrl,
|
|
95
|
+
sloUrl: t.sloUrl || "",
|
|
96
|
+
certificate: t.certificate
|
|
97
|
+
}), R(v("auth.sso.importSuccessFromUrl", "SAML metadata imported successfully! Review and save the configuration.")), N(!0), B("")) : I(v("auth.sso.parseUrlError", "Failed to parse SAML metadata from URL."));
|
|
98
|
+
} catch (e) {
|
|
99
|
+
I(e instanceof Error ? e.message : v("auth.sso.fetchError", "Failed to fetch metadata from URL"));
|
|
100
|
+
} finally {
|
|
101
|
+
H(!1);
|
|
102
|
+
}
|
|
102
103
|
}
|
|
103
104
|
}, ge = async () => {
|
|
104
|
-
if (!G.client_name || !G.redirect_uris)
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
105
|
+
if (!G.client_name || !G.redirect_uris) I(v("auth.sso.clientRequired", "Client name and redirect URI are required"));
|
|
106
|
+
else {
|
|
107
|
+
J(!0), I(null);
|
|
108
|
+
try {
|
|
109
|
+
let e = E?.registrationEndpoint;
|
|
110
|
+
if (!e) throw Error(v("auth.sso.oidcNotConfigured", "OIDC dynamic client registration is not configured for this environment."));
|
|
111
|
+
let t = await fetch(e, {
|
|
112
|
+
method: "POST",
|
|
113
|
+
headers: { "Content-Type": "application/json" },
|
|
114
|
+
body: JSON.stringify({
|
|
115
|
+
client_name: G.client_name,
|
|
116
|
+
redirect_uris: G.redirect_uris.split(",").map((e) => e.trim()),
|
|
117
|
+
grant_types: G.grant_types,
|
|
118
|
+
response_types: ["code"],
|
|
119
|
+
token_endpoint_auth_method: G.token_endpoint_auth_method
|
|
120
|
+
})
|
|
121
|
+
});
|
|
122
|
+
if (!t.ok) {
|
|
123
|
+
let e = await t.json();
|
|
124
|
+
throw Error(e.error_description || e.error || "Registration failed");
|
|
125
|
+
}
|
|
126
|
+
let n = await t.json();
|
|
127
|
+
X(n), R(v("auth.sso.clientRegistered", "OIDC client registered successfully! Save the client credentials.")), W(!1), K({
|
|
128
|
+
client_name: "",
|
|
129
|
+
redirect_uris: "",
|
|
130
|
+
grant_types: ["authorization_code", "refresh_token"],
|
|
131
|
+
token_endpoint_auth_method: "none"
|
|
132
|
+
});
|
|
133
|
+
} catch (e) {
|
|
134
|
+
I(e instanceof Error ? e.message : v("auth.sso.registerFailed", "Failed to register client"));
|
|
135
|
+
} finally {
|
|
136
|
+
J(!1);
|
|
126
137
|
}
|
|
127
|
-
X(await t.json()), R(v("auth.sso.clientRegistered", "OIDC client registered successfully! Save the client credentials.")), W(!1), K({
|
|
128
|
-
client_name: "",
|
|
129
|
-
redirect_uris: "",
|
|
130
|
-
grant_types: ["authorization_code", "refresh_token"],
|
|
131
|
-
token_endpoint_auth_method: "none"
|
|
132
|
-
});
|
|
133
|
-
} catch (e) {
|
|
134
|
-
I(e instanceof Error ? e.message : v("auth.sso.registerFailed", "Failed to register client"));
|
|
135
|
-
} finally {
|
|
136
|
-
J(!1);
|
|
137
138
|
}
|
|
138
139
|
};
|
|
139
140
|
l(() => {
|
|
@@ -180,7 +181,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
180
181
|
className: "max-w-5xl mx-auto p-6",
|
|
181
182
|
children: /* @__PURE__ */ p("div", {
|
|
182
183
|
className: "text-center py-16",
|
|
183
|
-
children: [/* @__PURE__ */ f(
|
|
184
|
+
children: [/* @__PURE__ */ f(a, { className: "size-8 mx-auto text-text-secondary animate-spin" }), /* @__PURE__ */ f("p", {
|
|
184
185
|
className: "mt-4 text-text-secondary",
|
|
185
186
|
children: v("auth.sso.loadingPermissions", "Loading permissions...")
|
|
186
187
|
})]
|
|
@@ -188,7 +189,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
188
189
|
}) : se ? ue ? /* @__PURE__ */ p("div", {
|
|
189
190
|
className: "max-w-5xl mx-auto p-6",
|
|
190
191
|
children: [
|
|
191
|
-
/* @__PURE__ */ f(
|
|
192
|
+
/* @__PURE__ */ f(n, {
|
|
192
193
|
open: pe,
|
|
193
194
|
onOpenChange: P,
|
|
194
195
|
title: v("auth.sso.deleteConfirmTitle", "Delete SSO configuration?"),
|
|
@@ -311,7 +312,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
311
312
|
}),
|
|
312
313
|
F && /* @__PURE__ */ p("div", {
|
|
313
314
|
className: "mb-6 flex items-start gap-3 p-4 rounded-xl bg-status-error-bg-subtle border border-status-error-border",
|
|
314
|
-
children: [/* @__PURE__ */ f(
|
|
315
|
+
children: [/* @__PURE__ */ f(i, { className: "size-5 text-status-error-text flex-shrink-0 mt-0.5" }), /* @__PURE__ */ p("div", {
|
|
315
316
|
className: "flex-1",
|
|
316
317
|
children: [/* @__PURE__ */ f("p", {
|
|
317
318
|
className: "text-sm text-status-error-text",
|
|
@@ -386,7 +387,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
386
387
|
}),
|
|
387
388
|
D && /* @__PURE__ */ p("div", {
|
|
388
389
|
className: "flex items-center justify-center py-12",
|
|
389
|
-
children: [/* @__PURE__ */ f(
|
|
390
|
+
children: [/* @__PURE__ */ f(a, { className: "size-8 text-text-link animate-spin" }), /* @__PURE__ */ f("span", {
|
|
390
391
|
className: "ml-3 text-text-secondary",
|
|
391
392
|
children: v("auth.sso.loadingConfig", "Loading configuration...")
|
|
392
393
|
})]
|
|
@@ -447,7 +448,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
447
448
|
/* @__PURE__ */ p("label", {
|
|
448
449
|
htmlFor: "metadata-file",
|
|
449
450
|
className: "flex items-center justify-center gap-2 w-full px-4 py-3 border-2 border-dashed border-border-default rounded-xl cursor-pointer hover:border-action-primary-bg transition-colors",
|
|
450
|
-
children: [V ? /* @__PURE__ */ f(
|
|
451
|
+
children: [V ? /* @__PURE__ */ f(a, { className: "size-5 animate-spin text-text-link" }) : /* @__PURE__ */ f("svg", {
|
|
451
452
|
className: "size-5 text-text-tertiary",
|
|
452
453
|
fill: "none",
|
|
453
454
|
viewBox: "0 0 24 24",
|
|
@@ -484,7 +485,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
484
485
|
onClick: he,
|
|
485
486
|
disabled: V || !z,
|
|
486
487
|
className: "px-4 py-2.5 rounded-xl bg-action-primary-bg text-white font-medium hover:bg-action-primary-bg-hover disabled:opacity-50 disabled:cursor-not-allowed transition-colors flex items-center gap-2",
|
|
487
|
-
children: [V ? /* @__PURE__ */ f(
|
|
488
|
+
children: [V ? /* @__PURE__ */ f(a, { className: "size-4 animate-spin" }) : /* @__PURE__ */ f("svg", {
|
|
488
489
|
className: "size-4",
|
|
489
490
|
fill: "none",
|
|
490
491
|
viewBox: "0 0 24 24",
|
|
@@ -684,7 +685,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
684
685
|
variant: "default",
|
|
685
686
|
size: "lg",
|
|
686
687
|
className: "font-semibold",
|
|
687
|
-
children: O ? /* @__PURE__ */ p(d, { children: [/* @__PURE__ */ f(
|
|
688
|
+
children: O ? /* @__PURE__ */ p(d, { children: [/* @__PURE__ */ f(a, { className: "size-4 animate-spin" }), v("auth.sso.saving", "Saving...")] }) : v("auth.sso.saveConfig", "Save Configuration")
|
|
688
689
|
}), M && /* @__PURE__ */ f("button", {
|
|
689
690
|
type: "button",
|
|
690
691
|
onClick: () => {
|
|
@@ -718,7 +719,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
718
719
|
onClick: () => P(!0),
|
|
719
720
|
disabled: k,
|
|
720
721
|
className: "px-4 py-2 rounded-lg bg-status-error-bg text-white font-medium hover:bg-status-error-bg-hover disabled:opacity-50 transition-colors flex items-center gap-2",
|
|
721
|
-
children: k ? /* @__PURE__ */ p(d, { children: [/* @__PURE__ */ f(
|
|
722
|
+
children: k ? /* @__PURE__ */ p(d, { children: [/* @__PURE__ */ f(a, { className: "size-4 animate-spin" }), v("auth.sso.deleting", "Deleting...")] }) : v("auth.sso.deleteConfig", "Delete SSO Configuration")
|
|
722
723
|
})
|
|
723
724
|
]
|
|
724
725
|
})
|
|
@@ -1086,7 +1087,7 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
1086
1087
|
variant: "default",
|
|
1087
1088
|
size: "lg",
|
|
1088
1089
|
className: "font-semibold",
|
|
1089
|
-
children: q ? /* @__PURE__ */ p(d, { children: [/* @__PURE__ */ f(
|
|
1090
|
+
children: q ? /* @__PURE__ */ p(d, { children: [/* @__PURE__ */ f(a, { className: "size-4 animate-spin" }), v("auth.sso.registering", "Registering...")] }) : v("auth.sso.registerClientButton", "Register Client")
|
|
1090
1091
|
}), /* @__PURE__ */ f("button", {
|
|
1091
1092
|
type: "button",
|
|
1092
1093
|
onClick: () => {
|
|
@@ -1260,7 +1261,6 @@ function v({ bypassEnterprisePlanGate: o = !1 }) {
|
|
|
1260
1261
|
})
|
|
1261
1262
|
});
|
|
1262
1263
|
}
|
|
1263
|
-
//#endregion
|
|
1264
1264
|
export { v as SsoConfigPage };
|
|
1265
1265
|
|
|
1266
1266
|
//# sourceMappingURL=SsoConfigPage.js.map
|