@keycloak/keycloak-admin-ui 26.7.5 → 26.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -0
- package/lib/.vite/manifest.json +52 -42
- package/lib/{AddDefaultTrust-BvsWwMDh.js → AddDefaultTrust-0TzkSSVz.js} +8 -8
- package/lib/{AddDefaultTrust-BvsWwMDh.js.map → AddDefaultTrust-0TzkSSVz.js.map} +1 -1
- package/lib/{AddJWTAuthorizationGrant-ByBPPwyK.js → AddJWTAuthorizationGrant-BBVNGscZ.js} +12 -12
- package/lib/{AddJWTAuthorizationGrant-ByBPPwyK.js.map → AddJWTAuthorizationGrant-BBVNGscZ.js.map} +1 -1
- package/lib/{AddKubernetesConnect-D4xTogVo.js → AddKubernetesConnect-D_HJWqhs.js} +14 -11
- package/lib/AddKubernetesConnect-D_HJWqhs.js.map +1 -0
- package/lib/{AddOAuth2-BDmTZ-YA.js → AddOAuth2-BiNgjhyO.js} +13 -13
- package/lib/{AddOAuth2-BDmTZ-YA.js.map → AddOAuth2-BiNgjhyO.js.map} +1 -1
- package/lib/AddOid4Vp-gKawBcrP.js +73 -0
- package/lib/AddOid4Vp-gKawBcrP.js.map +1 -0
- package/lib/{AddSpiffeConnect-B6_E1i6Z.js → AddSpiffeConnect-BmHbvLbU.js} +8 -8
- package/lib/{AddSpiffeConnect-B6_E1i6Z.js.map → AddSpiffeConnect-BmHbvLbU.js.map} +1 -1
- package/lib/{CreateFlow-C5QWzOsy.js → CreateFlow-9Jjjw5b9.js} +2 -2
- package/lib/{CreateFlow-C5QWzOsy.js.map → CreateFlow-9Jjjw5b9.js.map} +1 -1
- package/lib/DetailOrganization-DZcO3bbq.js +420 -0
- package/lib/DetailOrganization-DZcO3bbq.js.map +1 -0
- package/lib/{ExecutorForm-n3e9Qvrl.js → ExecutorForm-BrHBEQVA.js} +23 -23
- package/lib/{ExecutorForm-n3e9Qvrl.js.map → ExecutorForm-BrHBEQVA.js.map} +1 -1
- package/lib/{FlowDetails-CnVZXaRP.js → FlowDetails-FqkRF9Fk.js} +243 -226
- package/lib/{FlowDetails-CnVZXaRP.js.map → FlowDetails-FqkRF9Fk.js.map} +1 -1
- package/lib/{NewOrganization-D4X_bhyD.js → NewOrganization-mwmhTgBv.js} +13 -13
- package/lib/NewOrganization-mwmhTgBv.js.map +1 -0
- package/lib/{PermissionConfigurationDetails-UjUwrvYu.js → PermissionConfigurationDetails-BWUvLMh4.js} +92 -91
- package/lib/PermissionConfigurationDetails-BWUvLMh4.js.map +1 -0
- package/lib/PermissionDetails-BkVFczt9.js +437 -0
- package/lib/PermissionDetails-BkVFczt9.js.map +1 -0
- package/lib/{RealmSection-BTCX9rHA.js → RealmSection-DJ8T80Z6.js} +26 -26
- package/lib/{RealmSection-BTCX9rHA.js.map → RealmSection-DJ8T80Z6.js.map} +1 -1
- package/lib/{ResourceDetails-C3cyeLL5.js → ResourceDetails-Cyb5CmVt.js} +24 -24
- package/lib/{ResourceDetails-C3cyeLL5.js.map → ResourceDetails-Cyb5CmVt.js.map} +1 -1
- package/lib/{ScopeDetails-C16qMBw-.js → ScopeDetails-BV7h3hMw.js} +17 -17
- package/lib/{ScopeDetails-C16qMBw-.js.map → ScopeDetails-BV7h3hMw.js.map} +1 -1
- package/lib/{ScopePicker-DbxK9g9R.js → ScopePicker-USX1qW3k.js} +18 -18
- package/lib/{ScopePicker-DbxK9g9R.js.map → ScopePicker-USX1qW3k.js.map} +1 -1
- package/lib/{WorkflowDetailForm-d5rClboG.js → WorkflowDetailForm-BDIXzgoJ.js} +31 -31
- package/lib/{WorkflowDetailForm-d5rClboG.js.map → WorkflowDetailForm-BDIXzgoJ.js.map} +1 -1
- package/lib/{WorkflowsSection-DRU3QF93.js → WorkflowsSection-Htg3cqfo.js} +16 -16
- package/lib/{WorkflowsSection-DRU3QF93.js.map → WorkflowsSection-Htg3cqfo.js.map} +1 -1
- package/lib/apps/admin-ui/src/authentication/constants.d.ts +3 -1
- package/lib/apps/admin-ui/src/client-scopes/details/oid4vciAttributes.d.ts +8 -3
- package/lib/apps/admin-ui/src/clients/ssf/tabs/CreateStreamForm.d.ts +18 -0
- package/lib/apps/admin-ui/src/clients/ssf/utils.d.ts +13 -0
- package/lib/apps/admin-ui/src/components/client/ClientSelect.d.ts +3 -4
- package/lib/apps/admin-ui/src/components/client/ClientSelectModal.d.ts +8 -0
- package/lib/apps/admin-ui/src/components/group/GroupPickerDialog.d.ts +8 -2
- package/lib/apps/admin-ui/src/components/role-mapping/RoleMapping.d.ts +1 -32
- package/lib/apps/admin-ui/src/components/role-mapping/resource.d.ts +9 -1
- package/lib/apps/admin-ui/src/context/identity-provider/IdentityProviderContext.d.ts +12 -0
- package/lib/apps/admin-ui/src/identity-providers/add/AddOid4Vp.d.ts +1 -0
- package/lib/apps/admin-ui/src/identity-providers/add/IdpDomainsTab.d.ts +5 -0
- package/lib/apps/admin-ui/src/identity-providers/add/IdpOrganizationsTab.d.ts +6 -0
- package/lib/apps/admin-ui/src/identity-providers/add/Oid4VpSettings.d.ts +1 -0
- package/lib/apps/admin-ui/src/identity-providers/routes/IdentityProvider.d.ts +1 -1
- package/lib/apps/admin-ui/src/identity-providers/routes/IdentityProviderOid4Vp.d.ts +7 -0
- package/lib/apps/admin-ui/src/organizations/DomainsTab.d.ts +1 -0
- package/lib/apps/admin-ui/src/organizations/IdentityProviderSelect.d.ts +4 -1
- package/lib/apps/admin-ui/src/organizations/MembershipTypeToggle.d.ts +9 -0
- package/lib/apps/admin-ui/src/organizations/OrganizationForm.d.ts +4 -1
- package/lib/apps/admin-ui/src/organizations/routes/EditOrganization.d.ts +1 -1
- package/lib/apps/admin-ui/src/realm-settings/ssf/SsfTransmitterDisableConfirmDialog.d.ts +1 -1
- package/lib/apps/admin-ui/src/utils/useIsFeatureEnabled.d.ts +3 -1
- package/lib/{index-C-D-m0EP.js → index-DsIT2BLV.js} +23888 -22978
- package/lib/{index-C-D-m0EP.js.map → index-DsIT2BLV.js.map} +1 -1
- package/lib/keycloak-admin-ui.js +75 -75
- package/package.json +4 -4
- package/lib/AddKubernetesConnect-D4xTogVo.js.map +0 -1
- package/lib/DetailOrganization-amJJPyq-.js +0 -204
- package/lib/DetailOrganization-amJJPyq-.js.map +0 -1
- package/lib/NewOrganization-D4X_bhyD.js.map +0 -1
- package/lib/PermissionConfigurationDetails-UjUwrvYu.js.map +0 -1
- package/lib/PermissionDetails-gUH5Lf-7.js +0 -413
- package/lib/PermissionDetails-gUH5Lf-7.js.map +0 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { jsxs as a, Fragment as h, jsx as t } from "react/jsx-runtime";
|
|
2
|
+
import { u as P, b, K as f, a as g, V as I, P as A, F as S, c as V, bJ as F, A as x, B as o, bF as C, e as D, bG as K } from "./index-DsIT2BLV.js";
|
|
3
|
+
import { useTranslation as O } from "react-i18next";
|
|
4
|
+
import { useNavigate as j, Link as k } from "react-router-dom";
|
|
5
|
+
function H() {
|
|
6
|
+
const { adminClient: d } = P(), { t: e } = O(), c = j(), i = "oid4vp", n = b({
|
|
7
|
+
defaultValues: { alias: i },
|
|
8
|
+
mode: "onChange"
|
|
9
|
+
}), {
|
|
10
|
+
handleSubmit: l,
|
|
11
|
+
formState: { isDirty: m }
|
|
12
|
+
} = n, { addAlert: u, addError: v } = f(), { realm: s } = g(), p = async (r) => {
|
|
13
|
+
try {
|
|
14
|
+
await d.identityProviders.create({
|
|
15
|
+
...r,
|
|
16
|
+
providerId: i
|
|
17
|
+
}), u(e("createIdentityProviderSuccess"), D.success), c(
|
|
18
|
+
K({
|
|
19
|
+
realm: s,
|
|
20
|
+
providerId: i,
|
|
21
|
+
alias: r.alias,
|
|
22
|
+
tab: "settings"
|
|
23
|
+
})
|
|
24
|
+
);
|
|
25
|
+
} catch (y) {
|
|
26
|
+
v("createIdentityProviderError", y);
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
return /* @__PURE__ */ a(h, { children: [
|
|
30
|
+
/* @__PURE__ */ t(
|
|
31
|
+
I,
|
|
32
|
+
{
|
|
33
|
+
titleKey: e("addIdentityProvider", { provider: "OpenID4VP" })
|
|
34
|
+
}
|
|
35
|
+
),
|
|
36
|
+
/* @__PURE__ */ t(A, { variant: "light", children: /* @__PURE__ */ t(S, { ...n, children: /* @__PURE__ */ a(
|
|
37
|
+
V,
|
|
38
|
+
{
|
|
39
|
+
role: "manage-identity-providers",
|
|
40
|
+
isHorizontal: !0,
|
|
41
|
+
onSubmit: l(p),
|
|
42
|
+
children: [
|
|
43
|
+
/* @__PURE__ */ t(F, {}),
|
|
44
|
+
/* @__PURE__ */ a(x, { children: [
|
|
45
|
+
/* @__PURE__ */ t(
|
|
46
|
+
o,
|
|
47
|
+
{
|
|
48
|
+
isDisabled: !m,
|
|
49
|
+
variant: "primary",
|
|
50
|
+
type: "submit",
|
|
51
|
+
"data-testid": "createProvider",
|
|
52
|
+
children: e("add")
|
|
53
|
+
}
|
|
54
|
+
),
|
|
55
|
+
/* @__PURE__ */ t(
|
|
56
|
+
o,
|
|
57
|
+
{
|
|
58
|
+
variant: "link",
|
|
59
|
+
"data-testid": "cancel",
|
|
60
|
+
component: (r) => /* @__PURE__ */ t(k, { ...r, to: C({ realm: s }) }),
|
|
61
|
+
children: e("cancel")
|
|
62
|
+
}
|
|
63
|
+
)
|
|
64
|
+
] })
|
|
65
|
+
]
|
|
66
|
+
}
|
|
67
|
+
) }) })
|
|
68
|
+
] });
|
|
69
|
+
}
|
|
70
|
+
export {
|
|
71
|
+
H as default
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=AddOid4Vp-gKawBcrP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddOid4Vp-gKawBcrP.js","sources":["../src/identity-providers/add/AddOid4Vp.tsx"],"sourcesContent":["import type IdentityProviderRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/identityProviderRepresentation\";\nimport {\n ActionGroup,\n AlertVariant,\n Button,\n PageSection,\n} from \"@patternfly/react-core\";\nimport { FormProvider, useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport { useAdminClient } from \"../../admin-client\";\nimport { useAlerts } from \"@keycloak/keycloak-ui-shared\";\nimport { FormAccess } from \"../../components/form/FormAccess\";\nimport { ViewHeader } from \"../../components/view-header/ViewHeader\";\nimport { useRealm } from \"../../context/realm-context/RealmContext\";\nimport { toIdentityProvider } from \"../routes/IdentityProvider\";\nimport { toIdentityProviders } from \"../routes/IdentityProviders\";\nimport Oid4VpSettings from \"./Oid4VpSettings\";\n\nexport default function AddOid4Vp() {\n const { adminClient } = useAdminClient();\n const { t } = useTranslation();\n const navigate = useNavigate();\n const id = \"oid4vp\";\n\n const form = useForm<IdentityProviderRepresentation>({\n defaultValues: { alias: id },\n mode: \"onChange\",\n });\n const {\n handleSubmit,\n formState: { isDirty },\n } = form;\n\n const { addAlert, addError } = useAlerts();\n const { realm } = useRealm();\n\n const onSubmit = async (provider: IdentityProviderRepresentation) => {\n try {\n await adminClient.identityProviders.create({\n ...provider,\n providerId: id,\n });\n addAlert(t(\"createIdentityProviderSuccess\"), AlertVariant.success);\n void navigate(\n toIdentityProvider({\n realm,\n providerId: id,\n alias: provider.alias!,\n tab: \"settings\",\n }),\n );\n } catch (error) {\n addError(\"createIdentityProviderError\", error);\n }\n };\n\n return (\n <>\n <ViewHeader\n titleKey={t(\"addIdentityProvider\", { provider: \"OpenID4VP\" })}\n />\n <PageSection variant=\"light\">\n <FormProvider {...form}>\n <FormAccess\n role=\"manage-identity-providers\"\n isHorizontal\n onSubmit={handleSubmit(onSubmit)}\n >\n <Oid4VpSettings />\n\n <ActionGroup>\n <Button\n isDisabled={!isDirty}\n variant=\"primary\"\n type=\"submit\"\n data-testid=\"createProvider\"\n >\n {t(\"add\")}\n </Button>\n <Button\n variant=\"link\"\n data-testid=\"cancel\"\n component={(props) => (\n <Link {...props} to={toIdentityProviders({ realm })} />\n )}\n >\n {t(\"cancel\")}\n </Button>\n </ActionGroup>\n </FormAccess>\n </FormProvider>\n </PageSection>\n </>\n );\n}\n"],"names":["AddOid4Vp","adminClient","useAdminClient","t","useTranslation","navigate","useNavigate","id","form","useForm","handleSubmit","isDirty","addAlert","addError","useAlerts","realm","useRealm","onSubmit","provider","AlertVariant","toIdentityProvider","error","jsxs","Fragment","jsx","ViewHeader","PageSection","FormProvider","FormAccess","Oid4VpSettings","ActionGroup","Button","props","Link","toIdentityProviders"],"mappings":";;;;AAmBA,SAAwBA,IAAY;AAClC,QAAM,EAAE,aAAAC,EAAA,IAAgBC,EAAA,GAClB,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACRC,IAAWC,EAAA,GACXC,IAAK,UAELC,IAAOC,EAAwC;AAAA,IACnD,eAAe,EAAE,OAAOF,EAAA;AAAA,IACxB,MAAM;AAAA,EAAA,CACP,GACK;AAAA,IACJ,cAAAG;AAAA,IACA,WAAW,EAAE,SAAAC,EAAA;AAAA,EAAQ,IACnBH,GAEE,EAAE,UAAAI,GAAU,UAAAC,EAAA,IAAaC,EAAA,GACzB,EAAE,OAAAC,EAAA,IAAUC,EAAA,GAEZC,IAAW,OAAOC,MAA6C;AACnE,QAAI;AACF,YAAMjB,EAAY,kBAAkB,OAAO;AAAA,QACzC,GAAGiB;AAAA,QACH,YAAYX;AAAA,MAAA,CACb,GACDK,EAAST,EAAE,+BAA+B,GAAGgB,EAAa,OAAO,GAC5Dd;AAAA,QACHe,EAAmB;AAAA,UACjB,OAAAL;AAAA,UACA,YAAYR;AAAA,UACZ,OAAOW,EAAS;AAAA,UAChB,KAAK;AAAA,QAAA,CACN;AAAA,MAAA;AAAA,IAEL,SAASG,GAAO;AACd,MAAAR,EAAS,+BAA+BQ,CAAK;AAAA,IAC/C;AAAA,EACF;AAEA,SACE,gBAAAC,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,UAAUtB,EAAE,uBAAuB,EAAE,UAAU,aAAa;AAAA,MAAA;AAAA,IAAA;AAAA,sBAE7DuB,GAAA,EAAY,SAAQ,SACnB,UAAA,gBAAAF,EAACG,GAAA,EAAc,GAAGnB,GAChB,UAAA,gBAAAc;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,cAAY;AAAA,QACZ,UAAUlB,EAAaO,CAAQ;AAAA,QAE/B,UAAA;AAAA,UAAA,gBAAAO,EAACK,GAAA,EAAe;AAAA,4BAEfC,GAAA,EACC,UAAA;AAAA,YAAA,gBAAAN;AAAA,cAACO;AAAA,cAAA;AAAA,gBACC,YAAY,CAACpB;AAAA,gBACb,SAAQ;AAAA,gBACR,MAAK;AAAA,gBACL,eAAY;AAAA,gBAEX,YAAE,KAAK;AAAA,cAAA;AAAA,YAAA;AAAA,YAEV,gBAAAa;AAAA,cAACO;AAAA,cAAA;AAAA,gBACC,SAAQ;AAAA,gBACR,eAAY;AAAA,gBACZ,WAAW,CAACC,MACV,gBAAAR,EAACS,GAAA,EAAM,GAAGD,GAAO,IAAIE,EAAoB,EAAE,OAAAnB,EAAA,CAAO,EAAA,CAAG;AAAA,gBAGtD,YAAE,QAAQ;AAAA,cAAA;AAAA,YAAA;AAAA,UACb,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAEJ,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsxs as i, Fragment as y, jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { u as h, b,
|
|
3
|
-
import { useTranslation as
|
|
2
|
+
import { u as h, b, K as g, a as P, V as S, P as A, F, c as I, bE as C, A as E, B as o, bF as V, e as w, bG as x } from "./index-DsIT2BLV.js";
|
|
3
|
+
import { useTranslation as K } from "react-i18next";
|
|
4
4
|
import { useNavigate as j, Link as k } from "react-router-dom";
|
|
5
|
-
function
|
|
6
|
-
const { adminClient: d } = h(), { t: a } =
|
|
5
|
+
function z() {
|
|
6
|
+
const { adminClient: d } = h(), { t: a } = K(), c = j(), r = "spiffe", n = b({
|
|
7
7
|
defaultValues: { alias: r, config: { allowCreate: "true" } },
|
|
8
8
|
mode: "onChange"
|
|
9
9
|
}), {
|
|
@@ -29,14 +29,14 @@ function G() {
|
|
|
29
29
|
};
|
|
30
30
|
return /* @__PURE__ */ i(y, { children: [
|
|
31
31
|
/* @__PURE__ */ e(S, { titleKey: a("addSpiffeProvider") }),
|
|
32
|
-
/* @__PURE__ */ e(A, { variant: "light", children: /* @__PURE__ */ e(
|
|
32
|
+
/* @__PURE__ */ e(A, { variant: "light", children: /* @__PURE__ */ e(F, { ...n, children: /* @__PURE__ */ i(
|
|
33
33
|
I,
|
|
34
34
|
{
|
|
35
35
|
role: "manage-identity-providers",
|
|
36
36
|
isHorizontal: !0,
|
|
37
37
|
onSubmit: l(v),
|
|
38
38
|
children: [
|
|
39
|
-
/* @__PURE__ */ e(
|
|
39
|
+
/* @__PURE__ */ e(C, {}),
|
|
40
40
|
/* @__PURE__ */ i(E, { children: [
|
|
41
41
|
/* @__PURE__ */ e(
|
|
42
42
|
o,
|
|
@@ -64,6 +64,6 @@ function G() {
|
|
|
64
64
|
] });
|
|
65
65
|
}
|
|
66
66
|
export {
|
|
67
|
-
|
|
67
|
+
z as default
|
|
68
68
|
};
|
|
69
|
-
//# sourceMappingURL=AddSpiffeConnect-
|
|
69
|
+
//# sourceMappingURL=AddSpiffeConnect-BmHbvLbU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddSpiffeConnect-
|
|
1
|
+
{"version":3,"file":"AddSpiffeConnect-BmHbvLbU.js","sources":["../src/identity-providers/add/AddSpiffeConnect.tsx"],"sourcesContent":["import type IdentityProviderRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/identityProviderRepresentation\";\nimport {\n ActionGroup,\n AlertVariant,\n Button,\n PageSection,\n} from \"@patternfly/react-core\";\nimport { FormProvider, useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport { useAdminClient } from \"../../admin-client\";\nimport { useAlerts } from \"@keycloak/keycloak-ui-shared\";\nimport { FormAccess } from \"../../components/form/FormAccess\";\nimport { ViewHeader } from \"../../components/view-header/ViewHeader\";\nimport { useRealm } from \"../../context/realm-context/RealmContext\";\nimport { toIdentityProvider } from \"../routes/IdentityProvider\";\nimport { toIdentityProviders } from \"../routes/IdentityProviders\";\nimport { SpiffeSettings } from \"./SpiffeSettings\";\n\ntype DiscoveryIdentityProvider = IdentityProviderRepresentation & {\n discoveryEndpoint?: string;\n};\n\nexport default function AddSamlConnect() {\n const { adminClient } = useAdminClient();\n\n const { t } = useTranslation();\n const navigate = useNavigate();\n const id = \"spiffe\";\n\n const form = useForm<DiscoveryIdentityProvider>({\n defaultValues: { alias: id, config: { allowCreate: \"true\" } },\n mode: \"onChange\",\n });\n const {\n handleSubmit,\n formState: { isDirty },\n } = form;\n\n const { addAlert, addError } = useAlerts();\n const { realm } = useRealm();\n\n const onSubmit = async (provider: DiscoveryIdentityProvider) => {\n delete provider.discoveryEndpoint;\n try {\n await adminClient.identityProviders.create({\n ...provider,\n providerId: id,\n });\n addAlert(t(\"createIdentityProviderSuccess\"), AlertVariant.success);\n void navigate(\n toIdentityProvider({\n realm,\n providerId: id,\n alias: provider.alias!,\n tab: \"settings\",\n }),\n );\n } catch (error) {\n addError(\"createIdentityProviderError\", error);\n }\n };\n\n return (\n <>\n <ViewHeader titleKey={t(\"addSpiffeProvider\")} />\n <PageSection variant=\"light\">\n <FormProvider {...form}>\n <FormAccess\n role=\"manage-identity-providers\"\n isHorizontal\n onSubmit={handleSubmit(onSubmit)}\n >\n <SpiffeSettings />\n <ActionGroup>\n <Button\n isDisabled={!isDirty}\n variant=\"primary\"\n type=\"submit\"\n data-testid=\"createProvider\"\n >\n {t(\"add\")}\n </Button>\n <Button\n variant=\"link\"\n data-testid=\"cancel\"\n component={(props) => (\n <Link {...props} to={toIdentityProviders({ realm })} />\n )}\n >\n {t(\"cancel\")}\n </Button>\n </ActionGroup>\n </FormAccess>\n </FormProvider>\n </PageSection>\n </>\n );\n}\n"],"names":["AddSamlConnect","adminClient","useAdminClient","t","useTranslation","navigate","useNavigate","id","form","useForm","handleSubmit","isDirty","addAlert","addError","useAlerts","realm","useRealm","onSubmit","provider","AlertVariant","toIdentityProvider","error","jsxs","Fragment","jsx","ViewHeader","PageSection","FormProvider","FormAccess","SpiffeSettings","ActionGroup","Button","props","Link","toIdentityProviders"],"mappings":";;;;AAuBA,SAAwBA,IAAiB;AACvC,QAAM,EAAE,aAAAC,EAAA,IAAgBC,EAAA,GAElB,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACRC,IAAWC,EAAA,GACXC,IAAK,UAELC,IAAOC,EAAmC;AAAA,IAC9C,eAAe,EAAE,OAAOF,GAAI,QAAQ,EAAE,aAAa,SAAO;AAAA,IAC1D,MAAM;AAAA,EAAA,CACP,GACK;AAAA,IACJ,cAAAG;AAAA,IACA,WAAW,EAAE,SAAAC,EAAA;AAAA,EAAQ,IACnBH,GAEE,EAAE,UAAAI,GAAU,UAAAC,EAAA,IAAaC,EAAA,GACzB,EAAE,OAAAC,EAAA,IAAUC,EAAA,GAEZC,IAAW,OAAOC,MAAwC;AAC9D,WAAOA,EAAS;AAChB,QAAI;AACF,YAAMjB,EAAY,kBAAkB,OAAO;AAAA,QACzC,GAAGiB;AAAA,QACH,YAAYX;AAAA,MAAA,CACb,GACDK,EAAST,EAAE,+BAA+B,GAAGgB,EAAa,OAAO,GAC5Dd;AAAA,QACHe,EAAmB;AAAA,UACjB,OAAAL;AAAA,UACA,YAAYR;AAAA,UACZ,OAAOW,EAAS;AAAA,UAChB,KAAK;AAAA,QAAA,CACN;AAAA,MAAA;AAAA,IAEL,SAASG,GAAO;AACd,MAAAR,EAAS,+BAA+BQ,CAAK;AAAA,IAC/C;AAAA,EACF;AAEA,SACE,gBAAAC,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAW,UAAUtB,EAAE,mBAAmB,EAAA,CAAG;AAAA,sBAC7CuB,GAAA,EAAY,SAAQ,SACnB,UAAA,gBAAAF,EAACG,GAAA,EAAc,GAAGnB,GAChB,UAAA,gBAAAc;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,cAAY;AAAA,QACZ,UAAUlB,EAAaO,CAAQ;AAAA,QAE/B,UAAA;AAAA,UAAA,gBAAAO,EAACK,GAAA,EAAe;AAAA,4BACfC,GAAA,EACC,UAAA;AAAA,YAAA,gBAAAN;AAAA,cAACO;AAAA,cAAA;AAAA,gBACC,YAAY,CAACpB;AAAA,gBACb,SAAQ;AAAA,gBACR,MAAK;AAAA,gBACL,eAAY;AAAA,gBAEX,YAAE,KAAK;AAAA,cAAA;AAAA,YAAA;AAAA,YAEV,gBAAAa;AAAA,cAACO;AAAA,cAAA;AAAA,gBACC,SAAQ;AAAA,gBACR,eAAY;AAAA,gBACZ,WAAW,CAACC,MACV,gBAAAR,EAACS,GAAA,EAAM,GAAGD,GAAO,IAAIE,EAAoB,EAAE,OAAAnB,EAAA,CAAO,EAAA,CAAG;AAAA,gBAGtD,YAAE,QAAQ;AAAA,cAAA;AAAA,YAAA;AAAA,UACb,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAEJ,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs as n, Fragment as w, jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { u as h, a as v,
|
|
2
|
+
import { u as h, a as v, K as F, b, V as y, P as S, F as g, c as A, N as C, G as I, A as T, d as H, B as K, t as N, e as P, f as V } from "./index-DsIT2BLV.js";
|
|
3
3
|
import { useTranslation as k } from "react-i18next";
|
|
4
4
|
import { useNavigate as x, Link as B } from "react-router-dom";
|
|
5
5
|
const i = ["basic-flow", "client-flow"];
|
|
@@ -72,4 +72,4 @@ function D() {
|
|
|
72
72
|
export {
|
|
73
73
|
D as default
|
|
74
74
|
};
|
|
75
|
-
//# sourceMappingURL=CreateFlow-
|
|
75
|
+
//# sourceMappingURL=CreateFlow-9Jjjw5b9.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateFlow-
|
|
1
|
+
{"version":3,"file":"CreateFlow-9Jjjw5b9.js","sources":["../src/authentication/form/CreateFlow.tsx"],"sourcesContent":["import type AuthenticationFlowRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/authenticationFlowRepresentation\";\nimport {\n ActionGroup,\n AlertVariant,\n Button,\n PageSection,\n} from \"@patternfly/react-core\";\nimport { FormProvider, useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport {\n FormSubmitButton,\n SelectControl,\n useAlerts,\n} from \"@keycloak/keycloak-ui-shared\";\nimport { useAdminClient } from \"../../admin-client\";\nimport { FormAccess } from \"../../components/form/FormAccess\";\nimport { ViewHeader } from \"../../components/view-header/ViewHeader\";\nimport { useRealm } from \"../../context/realm-context/RealmContext\";\nimport { toAuthentication } from \"../routes/Authentication\";\nimport { toFlow } from \"../routes/Flow\";\nimport { NameDescription } from \"./NameDescription\";\n\nconst TYPES = [\"basic-flow\", \"client-flow\"] as const;\n\nexport default function CreateFlow() {\n const { adminClient } = useAdminClient();\n\n const { t } = useTranslation();\n const navigate = useNavigate();\n const { realm } = useRealm();\n const { addAlert, addError } = useAlerts();\n const form = useForm<AuthenticationFlowRepresentation>();\n const { handleSubmit, formState } = form;\n\n const onSubmit = async (formValues: AuthenticationFlowRepresentation) => {\n const flow = { ...formValues, builtIn: false, topLevel: true };\n\n try {\n const { id } =\n await adminClient.authenticationManagement.createFlow(flow);\n addAlert(t(\"flowCreatedSuccess\"), AlertVariant.success);\n void navigate(\n toFlow({\n realm,\n id: id!,\n usedBy: \"notInUse\",\n }),\n );\n } catch (error) {\n addError(\"flowCreateError\", error);\n }\n };\n\n return (\n <>\n <ViewHeader titleKey=\"createFlow\" subKey=\"authenticationCreateFlowHelp\" />\n <PageSection variant=\"light\">\n <FormProvider {...form}>\n <FormAccess\n isHorizontal\n role=\"manage-authorization\"\n onSubmit={handleSubmit(onSubmit)}\n >\n <NameDescription />\n <SelectControl\n name=\"providerId\"\n label={t(\"flowType\")}\n labelIcon={t(\"topLevelFlowTypeHelp\")}\n aria-label={t(\"selectFlowType\")}\n controller={{ defaultValue: TYPES[0] }}\n options={TYPES.map((type) => ({\n key: type,\n value: t(`top-level-flow-type.${type}`),\n }))}\n />\n <ActionGroup>\n <FormSubmitButton\n formState={formState}\n data-testid=\"create\"\n allowInvalid\n allowNonDirty\n >\n {t(\"create\")}\n </FormSubmitButton>\n <Button\n data-testid=\"cancel\"\n variant=\"link\"\n component={(props) => (\n <Link {...props} to={toAuthentication({ realm })}></Link>\n )}\n >\n {t(\"cancel\")}\n </Button>\n </ActionGroup>\n </FormAccess>\n </FormProvider>\n </PageSection>\n </>\n );\n}\n"],"names":["TYPES","CreateFlow","adminClient","useAdminClient","useTranslation","navigate","useNavigate","realm","useRealm","addAlert","addError","useAlerts","form","useForm","handleSubmit","formState","jsxs","Fragment","jsx","ViewHeader","PageSection","FormProvider","FormAccess","formValues","flow","id","AlertVariant","toFlow","error","NameDescription","SelectControl","type","ActionGroup","FormSubmitButton","Button","props","Link","toAuthentication"],"mappings":";;;;AAuBA,MAAMA,IAAQ,CAAC,cAAc,aAAa;AAE1C,SAAwBC,IAAa;AACnC,QAAM,EAAE,aAAAC,EAAA,IAAgBC,EAAA,GAElB,EAAE,EAAA,IAAMC,EAAA,GACRC,IAAWC,EAAA,GACX,EAAE,OAAAC,EAAA,IAAUC,EAAA,GACZ,EAAE,UAAAC,GAAU,UAAAC,EAAA,IAAaC,EAAA,GACzBC,IAAOC,EAAA,GACP,EAAE,cAAAC,GAAc,WAAAC,EAAA,IAAcH;AAqBpC,SACE,gBAAAI,EAAAC,GAAA,EACE,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAW,UAAS,cAAa,QAAO,gCAA+B;AAAA,sBACvEC,GAAA,EAAY,SAAQ,SACnB,UAAA,gBAAAF,EAACG,GAAA,EAAc,GAAGT,GAChB,UAAA,gBAAAI;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,cAAY;AAAA,QACZ,MAAK;AAAA,QACL,UAAUR,EA3BH,OAAOS,MAAiD;AACvE,gBAAMC,IAAO,EAAE,GAAGD,GAAY,SAAS,IAAO,UAAU,GAAA;AAExD,cAAI;AACF,kBAAM,EAAE,IAAAE,EAAA,IACN,MAAMvB,EAAY,yBAAyB,WAAWsB,CAAI;AAC5D,YAAAf,EAAS,EAAE,oBAAoB,GAAGiB,EAAa,OAAO,GACjDrB;AAAA,cACHsB,EAAO;AAAA,gBACL,OAAApB;AAAA,gBACA,IAAAkB;AAAA,gBACA,QAAQ;AAAA,cAAA,CACT;AAAA,YAAA;AAAA,UAEL,SAASG,GAAO;AACd,YAAAlB,EAAS,mBAAmBkB,CAAK;AAAA,UACnC;AAAA,QACF,CAUyC;AAAA,QAE/B,UAAA;AAAA,UAAA,gBAAAV,EAACW,GAAA,EAAgB;AAAA,UACjB,gBAAAX;AAAA,YAACY;AAAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,OAAO,EAAE,UAAU;AAAA,cACnB,WAAW,EAAE,sBAAsB;AAAA,cACnC,cAAY,EAAE,gBAAgB;AAAA,cAC9B,YAAY,EAAE,cAAc9B,EAAM,CAAC,EAAA;AAAA,cACnC,SAASA,EAAM,IAAI,CAAC+B,OAAU;AAAA,gBAC5B,KAAKA;AAAA,gBACL,OAAO,EAAE,uBAAuBA,CAAI,EAAE;AAAA,cAAA,EACtC;AAAA,YAAA;AAAA,UAAA;AAAA,4BAEHC,GAAA,EACC,UAAA;AAAA,YAAA,gBAAAd;AAAA,cAACe;AAAAA,cAAA;AAAA,gBACC,WAAAlB;AAAA,gBACA,eAAY;AAAA,gBACZ,cAAY;AAAA,gBACZ,eAAa;AAAA,gBAEZ,YAAE,QAAQ;AAAA,cAAA;AAAA,YAAA;AAAA,YAEb,gBAAAG;AAAA,cAACgB;AAAA,cAAA;AAAA,gBACC,eAAY;AAAA,gBACZ,SAAQ;AAAA,gBACR,WAAW,CAACC,MACV,gBAAAjB,EAACkB,GAAA,EAAM,GAAGD,GAAO,IAAIE,EAAiB,EAAE,OAAA9B,EAAA,CAAO,EAAA,CAAG;AAAA,gBAGnD,YAAE,QAAQ;AAAA,cAAA;AAAA,YAAA;AAAA,UACb,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAEJ,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -0,0 +1,420 @@
|
|
|
1
|
+
import { jsxs as g, jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import { u as O, K as k, aa as H, l as F, P as I, aI as j, I as L, B as R, aJ as C, aK as q, af as N, n as V, b as B, M as U, j as _, F as M, k as $, aw as J, q as Q, G as W, aE as X, d as x, aL as G, aM as u, aN as Y, aO as v, aP as Z, a as ee, ar as ae, aQ as te, as as ie, aR as ne, aS as re, c as se, aT as oe, A as de, aU as le, aV as ce, aW as me, aX as w, aY as ue, aZ as ve, a_ as be } from "./index-DsIT2BLV.js";
|
|
3
|
+
import { useTranslation as K } from "react-i18next";
|
|
4
|
+
import { useState as T } from "react";
|
|
5
|
+
import { useParams as he } from "react-router-dom";
|
|
6
|
+
const ye = ({ orgId: o, domain: t, onClose: l }) => {
|
|
7
|
+
const { adminClient: h } = O(), { t: a } = K(), { addAlert: c, addError: i } = k(), [s, p] = T([]);
|
|
8
|
+
V(
|
|
9
|
+
() => h.organizations.listIdentityProviders({ orgId: o }),
|
|
10
|
+
p,
|
|
11
|
+
[]
|
|
12
|
+
);
|
|
13
|
+
const n = !!t, D = B({
|
|
14
|
+
mode: "onChange",
|
|
15
|
+
defaultValues: {
|
|
16
|
+
name: t?.name,
|
|
17
|
+
verified: t?.verified ?? !1,
|
|
18
|
+
autoRedirect: t?.autoRedirect ?? !1,
|
|
19
|
+
identityProviderAlias: t?.identityProviderAlias ?? ""
|
|
20
|
+
}
|
|
21
|
+
}), { handleSubmit: f, formState: S } = D, E = async (m) => {
|
|
22
|
+
try {
|
|
23
|
+
const y = await h.organizations.findOne({ id: o }), r = y.domains ?? [], P = {
|
|
24
|
+
verified: m.verified,
|
|
25
|
+
autoRedirect: m.autoRedirect,
|
|
26
|
+
identityProviderAlias: m.identityProviderAlias || void 0
|
|
27
|
+
};
|
|
28
|
+
if (n) {
|
|
29
|
+
const b = r.find((d) => d.name === t.name);
|
|
30
|
+
b && Object.assign(b, P);
|
|
31
|
+
} else {
|
|
32
|
+
const b = m.name?.trim();
|
|
33
|
+
if (r.some((d) => d.name === b)) {
|
|
34
|
+
i("addDomainError", a("duplicateDomain"));
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
r.push({ name: b, ...P });
|
|
38
|
+
}
|
|
39
|
+
await h.organizations.updateById(
|
|
40
|
+
{ id: o },
|
|
41
|
+
{ ...y, domains: r }
|
|
42
|
+
), c(a(n ? "domainUpdatedSuccess" : "addDomainSuccess")), l();
|
|
43
|
+
} catch (y) {
|
|
44
|
+
i(n ? "domainUpdatedError" : "addDomainError", y);
|
|
45
|
+
}
|
|
46
|
+
}, z = [
|
|
47
|
+
{ key: "", value: a("none") },
|
|
48
|
+
...s.map((m) => ({
|
|
49
|
+
key: m.alias,
|
|
50
|
+
value: m.alias
|
|
51
|
+
}))
|
|
52
|
+
];
|
|
53
|
+
return /* @__PURE__ */ e(
|
|
54
|
+
U,
|
|
55
|
+
{
|
|
56
|
+
variant: _.small,
|
|
57
|
+
title: a(n ? "editDomain" : "addDomain"),
|
|
58
|
+
isOpen: !0,
|
|
59
|
+
onClose: l,
|
|
60
|
+
actions: [
|
|
61
|
+
/* @__PURE__ */ e(
|
|
62
|
+
x,
|
|
63
|
+
{
|
|
64
|
+
formState: S,
|
|
65
|
+
"data-testid": "confirm",
|
|
66
|
+
form: "domain-form",
|
|
67
|
+
allowInvalid: !0,
|
|
68
|
+
allowNonDirty: !0,
|
|
69
|
+
children: a("save")
|
|
70
|
+
},
|
|
71
|
+
"confirm"
|
|
72
|
+
),
|
|
73
|
+
/* @__PURE__ */ e(
|
|
74
|
+
R,
|
|
75
|
+
{
|
|
76
|
+
id: "modal-cancel",
|
|
77
|
+
"data-testid": "cancel",
|
|
78
|
+
variant: F.link,
|
|
79
|
+
onClick: l,
|
|
80
|
+
children: a("cancel")
|
|
81
|
+
},
|
|
82
|
+
"cancel"
|
|
83
|
+
)
|
|
84
|
+
],
|
|
85
|
+
children: /* @__PURE__ */ e(M, { ...D, children: /* @__PURE__ */ g($, { id: "domain-form", onSubmit: f(E), children: [
|
|
86
|
+
n ? /* @__PURE__ */ e(J, { label: a("domain"), fieldId: "domain-name", children: /* @__PURE__ */ e("span", { id: "domain-name", "data-testid": "domain-name", children: t.name }) }) : /* @__PURE__ */ e(
|
|
87
|
+
Q,
|
|
88
|
+
{
|
|
89
|
+
name: "name",
|
|
90
|
+
label: a("domain"),
|
|
91
|
+
labelIcon: a("domainHelp"),
|
|
92
|
+
rules: { required: a("required") }
|
|
93
|
+
}
|
|
94
|
+
),
|
|
95
|
+
/* @__PURE__ */ e(
|
|
96
|
+
W,
|
|
97
|
+
{
|
|
98
|
+
name: "identityProviderAlias",
|
|
99
|
+
label: a("identityProvider"),
|
|
100
|
+
labelIcon: a("domainIdentityProviderHelp"),
|
|
101
|
+
options: z,
|
|
102
|
+
controller: { defaultValue: "" }
|
|
103
|
+
}
|
|
104
|
+
),
|
|
105
|
+
/* @__PURE__ */ e(
|
|
106
|
+
X,
|
|
107
|
+
{
|
|
108
|
+
name: "autoRedirect",
|
|
109
|
+
label: a("autoRedirect"),
|
|
110
|
+
labelIcon: a("autoRedirectHelp"),
|
|
111
|
+
defaultValue: !1
|
|
112
|
+
}
|
|
113
|
+
)
|
|
114
|
+
] }) })
|
|
115
|
+
}
|
|
116
|
+
);
|
|
117
|
+
}, ge = () => {
|
|
118
|
+
const { adminClient: o } = O(), { t } = K(), { id: l } = he(), { addAlert: h, addError: a } = k(), [c, i] = T(0), s = () => i(c + 1), [p, n] = T(!1), [D, f] = T(), [S, E] = T(), z = async () => (await o.organizations.findOne({ id: l })).domains ?? [], [m, y] = H({
|
|
119
|
+
titleKey: "removeDomain",
|
|
120
|
+
messageKey: "removeDomainConfirm",
|
|
121
|
+
continueButtonLabel: "delete",
|
|
122
|
+
continueButtonVariant: F.danger,
|
|
123
|
+
onConfirm: async () => {
|
|
124
|
+
try {
|
|
125
|
+
const r = await o.organizations.findOne({ id: l }), P = (r.domains ?? []).filter(
|
|
126
|
+
(b) => b.name !== S?.name
|
|
127
|
+
);
|
|
128
|
+
await o.organizations.updateById(
|
|
129
|
+
{ id: l },
|
|
130
|
+
{ ...r, domains: P }
|
|
131
|
+
), E(void 0), h(t("domainRemovedSuccess")), s();
|
|
132
|
+
} catch (r) {
|
|
133
|
+
a("domainRemovedError", r);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
return /* @__PURE__ */ g(I, { variant: "light", children: [
|
|
138
|
+
/* @__PURE__ */ e(y, {}),
|
|
139
|
+
p && /* @__PURE__ */ e(
|
|
140
|
+
ye,
|
|
141
|
+
{
|
|
142
|
+
orgId: l,
|
|
143
|
+
domain: D,
|
|
144
|
+
onClose: () => {
|
|
145
|
+
n(!1), f(void 0), s();
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
),
|
|
149
|
+
/* @__PURE__ */ e(
|
|
150
|
+
j,
|
|
151
|
+
{
|
|
152
|
+
loader: z,
|
|
153
|
+
ariaLabelKey: "domains",
|
|
154
|
+
searchPlaceholderKey: "searchDomain",
|
|
155
|
+
toolbarItem: /* @__PURE__ */ e(N, { children: /* @__PURE__ */ e(R, { onClick: () => n(!0), children: t("addDomain") }) }),
|
|
156
|
+
actions: [
|
|
157
|
+
{
|
|
158
|
+
title: t("edit"),
|
|
159
|
+
onRowClick: (r) => {
|
|
160
|
+
f(r), n(!0);
|
|
161
|
+
}
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
title: t("delete"),
|
|
165
|
+
onRowClick: (r) => {
|
|
166
|
+
E(r), m();
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
],
|
|
170
|
+
columns: [
|
|
171
|
+
{
|
|
172
|
+
name: "name",
|
|
173
|
+
displayKey: "domain",
|
|
174
|
+
cellRenderer: (r) => /* @__PURE__ */ e(
|
|
175
|
+
R,
|
|
176
|
+
{
|
|
177
|
+
variant: "link",
|
|
178
|
+
isInline: !0,
|
|
179
|
+
onClick: () => {
|
|
180
|
+
f(r), n(!0);
|
|
181
|
+
},
|
|
182
|
+
children: r.name
|
|
183
|
+
}
|
|
184
|
+
)
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
name: "identityProviderAlias",
|
|
188
|
+
displayKey: "identityProvider",
|
|
189
|
+
cellFormatters: [C()]
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
name: "autoRedirect",
|
|
193
|
+
displayKey: "autoRedirect",
|
|
194
|
+
cellFormatters: [q(), C()]
|
|
195
|
+
}
|
|
196
|
+
],
|
|
197
|
+
emptyState: /* @__PURE__ */ e(
|
|
198
|
+
L,
|
|
199
|
+
{
|
|
200
|
+
message: t("emptyDomains"),
|
|
201
|
+
instructions: t("emptyDomainsInstructions"),
|
|
202
|
+
primaryActionText: t("addDomain"),
|
|
203
|
+
onPrimaryAction: () => n(!0)
|
|
204
|
+
}
|
|
205
|
+
)
|
|
206
|
+
},
|
|
207
|
+
c
|
|
208
|
+
)
|
|
209
|
+
] });
|
|
210
|
+
}, pe = () => {
|
|
211
|
+
const { t: o } = K(), [t, l] = T("members");
|
|
212
|
+
return /* @__PURE__ */ g(
|
|
213
|
+
G,
|
|
214
|
+
{
|
|
215
|
+
activeKey: t,
|
|
216
|
+
onSelect: (h, a) => l(a),
|
|
217
|
+
children: [
|
|
218
|
+
/* @__PURE__ */ e(
|
|
219
|
+
u,
|
|
220
|
+
{
|
|
221
|
+
eventKey: "members",
|
|
222
|
+
title: /* @__PURE__ */ e(v, { children: o("members") }),
|
|
223
|
+
"data-testid": "organization-members-tab",
|
|
224
|
+
children: /* @__PURE__ */ e(Y, {})
|
|
225
|
+
}
|
|
226
|
+
),
|
|
227
|
+
/* @__PURE__ */ e(
|
|
228
|
+
u,
|
|
229
|
+
{
|
|
230
|
+
eventKey: "invitations",
|
|
231
|
+
title: /* @__PURE__ */ e(v, { children: o("invitations") }),
|
|
232
|
+
"data-testid": "organization-invitations-tab",
|
|
233
|
+
children: /* @__PURE__ */ e(Z, {})
|
|
234
|
+
}
|
|
235
|
+
)
|
|
236
|
+
]
|
|
237
|
+
}
|
|
238
|
+
);
|
|
239
|
+
};
|
|
240
|
+
function Se() {
|
|
241
|
+
const { adminClient: o } = O(), { addAlert: t, addError: l } = k(), { realm: h, realmRepresentation: a } = ee(), { id: c } = ae(), { t: i } = K(), s = B(), p = async (d) => {
|
|
242
|
+
try {
|
|
243
|
+
const A = ue(d);
|
|
244
|
+
await o.organizations.updateById({ id: c }, A), t(i("organizationSaveSuccess"));
|
|
245
|
+
} catch (A) {
|
|
246
|
+
l("organizationSaveError", A);
|
|
247
|
+
}
|
|
248
|
+
};
|
|
249
|
+
V(
|
|
250
|
+
() => o.organizations.findOne({ id: c }),
|
|
251
|
+
(d) => {
|
|
252
|
+
if (!d)
|
|
253
|
+
throw new Error(i("notFound"));
|
|
254
|
+
s.reset({
|
|
255
|
+
...d,
|
|
256
|
+
domains: void 0,
|
|
257
|
+
serverDomains: d.domains,
|
|
258
|
+
attributes: te(d.attributes)
|
|
259
|
+
});
|
|
260
|
+
},
|
|
261
|
+
[c]
|
|
262
|
+
);
|
|
263
|
+
const n = (d) => ve(
|
|
264
|
+
be({
|
|
265
|
+
realm: h,
|
|
266
|
+
id: c,
|
|
267
|
+
tab: d
|
|
268
|
+
})
|
|
269
|
+
), D = n("settings"), f = n("attributes"), S = n("members"), E = n("groups"), z = n("domains"), m = n("identityProviders"), y = n("events"), { hasAccess: r } = ie(), [P, b] = T("adminEvents");
|
|
270
|
+
return /* @__PURE__ */ e(I, { variant: "light", className: "pf-v5-u-p-0", children: /* @__PURE__ */ g(M, { ...s, children: [
|
|
271
|
+
/* @__PURE__ */ e(ne, { save: () => p(s.getValues()) }),
|
|
272
|
+
/* @__PURE__ */ g(
|
|
273
|
+
re,
|
|
274
|
+
{
|
|
275
|
+
"data-testid": "organization-tabs",
|
|
276
|
+
"aria-label": i("organization"),
|
|
277
|
+
isBox: !0,
|
|
278
|
+
mountOnEnter: !0,
|
|
279
|
+
children: [
|
|
280
|
+
/* @__PURE__ */ e(
|
|
281
|
+
u,
|
|
282
|
+
{
|
|
283
|
+
id: "settings",
|
|
284
|
+
"data-testid": "settingsTab",
|
|
285
|
+
title: /* @__PURE__ */ e(v, { children: i("settings") }),
|
|
286
|
+
...D,
|
|
287
|
+
children: /* @__PURE__ */ e(I, { children: /* @__PURE__ */ g(
|
|
288
|
+
se,
|
|
289
|
+
{
|
|
290
|
+
role: "anyone",
|
|
291
|
+
onSubmit: s.handleSubmit(p),
|
|
292
|
+
isHorizontal: !0,
|
|
293
|
+
children: [
|
|
294
|
+
/* @__PURE__ */ e(oe, { readOnly: !0 }),
|
|
295
|
+
/* @__PURE__ */ g(de, { children: [
|
|
296
|
+
/* @__PURE__ */ e(
|
|
297
|
+
x,
|
|
298
|
+
{
|
|
299
|
+
formState: s.formState,
|
|
300
|
+
"data-testid": "save",
|
|
301
|
+
children: i("save")
|
|
302
|
+
}
|
|
303
|
+
),
|
|
304
|
+
/* @__PURE__ */ e(
|
|
305
|
+
R,
|
|
306
|
+
{
|
|
307
|
+
onClick: () => s.reset(),
|
|
308
|
+
"data-testid": "reset",
|
|
309
|
+
variant: "link",
|
|
310
|
+
children: i("reset")
|
|
311
|
+
}
|
|
312
|
+
)
|
|
313
|
+
] })
|
|
314
|
+
]
|
|
315
|
+
}
|
|
316
|
+
) })
|
|
317
|
+
}
|
|
318
|
+
),
|
|
319
|
+
/* @__PURE__ */ e(
|
|
320
|
+
u,
|
|
321
|
+
{
|
|
322
|
+
id: "domains",
|
|
323
|
+
"data-testid": "domainsTab",
|
|
324
|
+
title: /* @__PURE__ */ e(v, { children: i("domains") }),
|
|
325
|
+
...z,
|
|
326
|
+
children: /* @__PURE__ */ e(ge, {})
|
|
327
|
+
}
|
|
328
|
+
),
|
|
329
|
+
/* @__PURE__ */ e(
|
|
330
|
+
u,
|
|
331
|
+
{
|
|
332
|
+
id: "attributes",
|
|
333
|
+
"data-testid": "attributeTab",
|
|
334
|
+
title: /* @__PURE__ */ e(v, { children: i("attributes") }),
|
|
335
|
+
...f,
|
|
336
|
+
children: /* @__PURE__ */ e(I, { variant: "light", children: /* @__PURE__ */ e(
|
|
337
|
+
le,
|
|
338
|
+
{
|
|
339
|
+
form: s,
|
|
340
|
+
save: p,
|
|
341
|
+
reset: () => s.reset({
|
|
342
|
+
...s.getValues()
|
|
343
|
+
}),
|
|
344
|
+
name: "attributes"
|
|
345
|
+
}
|
|
346
|
+
) })
|
|
347
|
+
}
|
|
348
|
+
),
|
|
349
|
+
/* @__PURE__ */ e(
|
|
350
|
+
u,
|
|
351
|
+
{
|
|
352
|
+
id: "members",
|
|
353
|
+
"data-testid": "membersTab",
|
|
354
|
+
title: /* @__PURE__ */ e(v, { children: i("members") }),
|
|
355
|
+
...S,
|
|
356
|
+
children: /* @__PURE__ */ e(pe, {})
|
|
357
|
+
}
|
|
358
|
+
),
|
|
359
|
+
/* @__PURE__ */ e(
|
|
360
|
+
u,
|
|
361
|
+
{
|
|
362
|
+
id: "groups",
|
|
363
|
+
"data-testid": "groupsTab",
|
|
364
|
+
title: /* @__PURE__ */ e(v, { children: i("groups") }),
|
|
365
|
+
...E,
|
|
366
|
+
children: /* @__PURE__ */ e(ce, { orgId: c })
|
|
367
|
+
}
|
|
368
|
+
),
|
|
369
|
+
/* @__PURE__ */ e(
|
|
370
|
+
u,
|
|
371
|
+
{
|
|
372
|
+
id: "identityProviders",
|
|
373
|
+
"data-testid": "identityProvidersTab",
|
|
374
|
+
title: /* @__PURE__ */ e(v, { children: i("identityProviders") }),
|
|
375
|
+
...m,
|
|
376
|
+
children: /* @__PURE__ */ e(me, {})
|
|
377
|
+
}
|
|
378
|
+
),
|
|
379
|
+
a.adminEventsEnabled && r("view-events") && /* @__PURE__ */ e(
|
|
380
|
+
u,
|
|
381
|
+
{
|
|
382
|
+
"data-testid": "admin-events-tab",
|
|
383
|
+
title: /* @__PURE__ */ e(v, { children: i("adminEvents") }),
|
|
384
|
+
...y,
|
|
385
|
+
children: /* @__PURE__ */ g(
|
|
386
|
+
G,
|
|
387
|
+
{
|
|
388
|
+
activeKey: P,
|
|
389
|
+
onSelect: (d, A) => b(A),
|
|
390
|
+
children: [
|
|
391
|
+
/* @__PURE__ */ e(
|
|
392
|
+
u,
|
|
393
|
+
{
|
|
394
|
+
eventKey: "adminEvents",
|
|
395
|
+
title: /* @__PURE__ */ e(v, { children: i("adminEvents") }),
|
|
396
|
+
children: /* @__PURE__ */ e(w, { resourcePath: `organizations/${c}` })
|
|
397
|
+
}
|
|
398
|
+
),
|
|
399
|
+
/* @__PURE__ */ e(
|
|
400
|
+
u,
|
|
401
|
+
{
|
|
402
|
+
eventKey: "membershipEvents",
|
|
403
|
+
title: /* @__PURE__ */ e(v, { children: i("membershipEvents") }),
|
|
404
|
+
children: /* @__PURE__ */ e(w, { resourcePath: `organizations/${c}/members` })
|
|
405
|
+
}
|
|
406
|
+
)
|
|
407
|
+
]
|
|
408
|
+
}
|
|
409
|
+
)
|
|
410
|
+
}
|
|
411
|
+
)
|
|
412
|
+
]
|
|
413
|
+
}
|
|
414
|
+
)
|
|
415
|
+
] }) });
|
|
416
|
+
}
|
|
417
|
+
export {
|
|
418
|
+
Se as default
|
|
419
|
+
};
|
|
420
|
+
//# sourceMappingURL=DetailOrganization-DZcO3bbq.js.map
|