@keycloakify/keycloak-account-ui 25.0.1-rc.1 → 25.0.1-rc.11
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/{KeycloakAccountUi.js → KcAccountUi.js} +2 -11
- package/KcAccountUi.js.map +1 -0
- package/KcAccountUiLoader.d.ts +41 -0
- package/KcAccountUiLoader.js +113 -0
- package/KcAccountUiLoader.js.map +1 -0
- package/README.md +7 -6
- package/index.d.ts +1 -0
- package/index.js +2 -0
- package/index.js.map +1 -0
- package/package.json +27 -8
- package/public/content.d.ts +33 -0
- package/public/content.js +45 -0
- package/public/content.js.map +1 -0
- package/public/logo.svg +1 -0
- package/src/{KeycloakAccountUi.tsx → KcAccountUi.tsx} +1 -12
- package/src/KcAccountUiLoader.tsx +180 -0
- package/src/global.d.ts +5 -0
- package/src/index.ts +1 -0
- package/src/public/content.ts +44 -0
- package/src/public/logo.svg +1 -0
- package/ui-shared/scroll-form/form-title.module.css +4 -0
- package/ui-shared/scroll-form/scroll-form.module.css +8 -0
- package/KeycloakAccountUi.js.map +0 -1
- /package/{KeycloakAccountUi.d.ts → KcAccountUi.d.ts} +0 -0
|
@@ -10,20 +10,11 @@ const prI18nInitialized = i18n.init();
|
|
|
10
10
|
export default function KeycloakAccountUi() {
|
|
11
11
|
const [isI18nInitialized, setI18nInitialized] = useReducer(() => true, false);
|
|
12
12
|
useEffect(() => {
|
|
13
|
-
|
|
14
|
-
prI18nInitialized.then(() => {
|
|
15
|
-
if (!isActive) {
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
setI18nInitialized();
|
|
19
|
-
});
|
|
20
|
-
return () => {
|
|
21
|
-
isActive = false;
|
|
22
|
-
};
|
|
13
|
+
prI18nInitialized.then(() => setI18nInitialized());
|
|
23
14
|
}, []);
|
|
24
15
|
if (!isI18nInitialized) {
|
|
25
16
|
return null;
|
|
26
17
|
}
|
|
27
18
|
return _jsx(RouterProvider, { router: router });
|
|
28
19
|
}
|
|
29
|
-
//# sourceMappingURL=
|
|
20
|
+
//# sourceMappingURL=KcAccountUi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KcAccountUi.js","sourceRoot":"","sources":["src/KcAccountUi.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,6CAA6C,CAAC;AACrD,OAAO,8CAA8C,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,yCAAyC,CAAC;AAEjE,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC3C,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;AAEtC,MAAM,CAAC,OAAO,UAAU,iBAAiB;IACvC,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAE9E,SAAS,CAAC,GAAG,EAAE;QACb,iBAAiB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACrD,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC;AAC5C,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { MenuItem } from "./root/PageNav";
|
|
2
|
+
export type KcContextLike = {
|
|
3
|
+
serverBaseUrl: string;
|
|
4
|
+
authUrl: string;
|
|
5
|
+
authServerUrl: string;
|
|
6
|
+
realm: {
|
|
7
|
+
name: string;
|
|
8
|
+
registrationEmailAsUsername: boolean;
|
|
9
|
+
editUsernameAllowed: boolean;
|
|
10
|
+
isInternationalizationEnabled: boolean;
|
|
11
|
+
identityFederationEnabled: boolean;
|
|
12
|
+
userManagedAccessAllowed: boolean;
|
|
13
|
+
};
|
|
14
|
+
clientId: string;
|
|
15
|
+
resourceUrl: string;
|
|
16
|
+
baseUrl: {
|
|
17
|
+
rawSchemeSpecificPart: string;
|
|
18
|
+
scheme: string;
|
|
19
|
+
};
|
|
20
|
+
locale: string;
|
|
21
|
+
referrerName?: string;
|
|
22
|
+
referrer_uri?: string;
|
|
23
|
+
isAuthorizationEnabled: boolean;
|
|
24
|
+
deleteAccountAllowed: boolean;
|
|
25
|
+
updateEmailFeatureEnabled: boolean;
|
|
26
|
+
updateEmailActionEnabled: boolean;
|
|
27
|
+
isViewGroupsEnabled: boolean;
|
|
28
|
+
isOid4VciEnabled: boolean;
|
|
29
|
+
};
|
|
30
|
+
type LazyExoticComponentLike = {
|
|
31
|
+
_result: unknown;
|
|
32
|
+
};
|
|
33
|
+
export type KcAccountUiLoaderProps = {
|
|
34
|
+
kcContext: KcContextLike;
|
|
35
|
+
KcAccountUi: LazyExoticComponentLike;
|
|
36
|
+
content?: MenuItem[];
|
|
37
|
+
logoUrl?: string;
|
|
38
|
+
loadingFallback?: JSX.Element;
|
|
39
|
+
};
|
|
40
|
+
export declare function KcAccountUiLoader(props: KcAccountUiLoaderProps): import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
export {};
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
4
|
+
t[p] = s[p];
|
|
5
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
6
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
7
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
8
|
+
t[p[i]] = s[p[i]];
|
|
9
|
+
}
|
|
10
|
+
return t;
|
|
11
|
+
};
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
import { Suspense, useMemo } from "react";
|
|
14
|
+
import { assert } from "tsafe/assert";
|
|
15
|
+
import { is } from "tsafe/is";
|
|
16
|
+
import { joinPath } from "./utils/joinPath";
|
|
17
|
+
import defaultContent from "./public/content";
|
|
18
|
+
import defaultLogoSvgUrl from "@keycloakify/keycloak-account-ui/public/logo.svg";
|
|
19
|
+
export function KcAccountUiLoader(props) {
|
|
20
|
+
const { KcAccountUi, loadingFallback } = props, paramsOfInit = __rest(props, ["KcAccountUi", "loadingFallback"]);
|
|
21
|
+
assert(is(KcAccountUi));
|
|
22
|
+
useMemo(() => init(paramsOfInit), []);
|
|
23
|
+
return (_jsx(Suspense, { fallback: loadingFallback, children: (() => {
|
|
24
|
+
const node = _jsx(KcAccountUi, {});
|
|
25
|
+
if (node === null) {
|
|
26
|
+
return loadingFallback;
|
|
27
|
+
}
|
|
28
|
+
return node;
|
|
29
|
+
})() }));
|
|
30
|
+
}
|
|
31
|
+
let previousRunParamsFingerprint = undefined;
|
|
32
|
+
function init(params) {
|
|
33
|
+
var _a, _b;
|
|
34
|
+
exit_condition: {
|
|
35
|
+
const paramsFingerprint = JSON.stringify(params);
|
|
36
|
+
if (previousRunParamsFingerprint === undefined) {
|
|
37
|
+
previousRunParamsFingerprint = paramsFingerprint;
|
|
38
|
+
break exit_condition;
|
|
39
|
+
}
|
|
40
|
+
if (paramsFingerprint !== previousRunParamsFingerprint) {
|
|
41
|
+
window.location.reload();
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
{
|
|
47
|
+
const url = new URL(window.location.href);
|
|
48
|
+
url.searchParams.delete("referrer");
|
|
49
|
+
url.searchParams.delete("referrer_uri");
|
|
50
|
+
window.history.replaceState({}, "", url.toString());
|
|
51
|
+
}
|
|
52
|
+
const { content = defaultContent, kcContext } = params;
|
|
53
|
+
const logoUrl = (() => {
|
|
54
|
+
var _a;
|
|
55
|
+
const logoUrl_params = (_a = params.logoUrl) !== null && _a !== void 0 ? _a : defaultLogoSvgUrl;
|
|
56
|
+
const url = new URL(logoUrl_params.startsWith("http")
|
|
57
|
+
? logoUrl_params
|
|
58
|
+
: joinPath(window.location.origin, logoUrl_params));
|
|
59
|
+
return url.href.substring(url.origin.length);
|
|
60
|
+
})();
|
|
61
|
+
const resourceUrl = kcContext.resourceUrl;
|
|
62
|
+
if (!logoUrl.startsWith(resourceUrl)) {
|
|
63
|
+
const error = new Error(`ERROR: The logo url can't be an external url.`);
|
|
64
|
+
alert(error.message);
|
|
65
|
+
throw error;
|
|
66
|
+
}
|
|
67
|
+
const environment = {
|
|
68
|
+
serverBaseUrl: kcContext.serverBaseUrl,
|
|
69
|
+
authUrl: kcContext.authUrl,
|
|
70
|
+
authServerUrl: kcContext.authServerUrl,
|
|
71
|
+
realm: kcContext.realm.name,
|
|
72
|
+
clientId: kcContext.clientId,
|
|
73
|
+
resourceUrl,
|
|
74
|
+
logo: logoUrl.substring(resourceUrl.length),
|
|
75
|
+
logoUrl: logoUrl,
|
|
76
|
+
baseUrl: `${kcContext.baseUrl.scheme}:${kcContext.baseUrl.rawSchemeSpecificPart}`,
|
|
77
|
+
locale: kcContext.locale,
|
|
78
|
+
referrerName: (_a = kcContext.referrerName) !== null && _a !== void 0 ? _a : "",
|
|
79
|
+
referrerUrl: (_b = kcContext.referrer_uri) !== null && _b !== void 0 ? _b : "",
|
|
80
|
+
features: {
|
|
81
|
+
isRegistrationEmailAsUsername: kcContext.realm.registrationEmailAsUsername,
|
|
82
|
+
isEditUserNameAllowed: kcContext.realm.editUsernameAllowed,
|
|
83
|
+
isInternationalizationEnabled: kcContext.realm.isInternationalizationEnabled,
|
|
84
|
+
isLinkedAccountsEnabled: kcContext.realm.identityFederationEnabled,
|
|
85
|
+
isMyResourcesEnabled: kcContext.realm.userManagedAccessAllowed &&
|
|
86
|
+
kcContext.isAuthorizationEnabled,
|
|
87
|
+
deleteAccountAllowed: kcContext.deleteAccountAllowed,
|
|
88
|
+
updateEmailFeatureEnabled: kcContext.updateEmailFeatureEnabled,
|
|
89
|
+
updateEmailActionEnabled: kcContext.updateEmailActionEnabled,
|
|
90
|
+
isViewGroupsEnabled: kcContext.isViewGroupsEnabled,
|
|
91
|
+
isOid4VciEnabled: kcContext.isOid4VciEnabled,
|
|
92
|
+
},
|
|
93
|
+
};
|
|
94
|
+
{
|
|
95
|
+
assert();
|
|
96
|
+
const script = document.createElement("script");
|
|
97
|
+
script.id = "environment";
|
|
98
|
+
script.type = "application/json";
|
|
99
|
+
script.textContent = JSON.stringify(environment, null, 1);
|
|
100
|
+
document.body.appendChild(script);
|
|
101
|
+
}
|
|
102
|
+
const realFetch = window.fetch;
|
|
103
|
+
window.fetch = async function fetch(...args) {
|
|
104
|
+
const [url] = args;
|
|
105
|
+
if (url === joinPath(environment.resourceUrl, "/content.json")) {
|
|
106
|
+
return {
|
|
107
|
+
json: () => Promise.resolve(content),
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
return realFetch(...args);
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=KcAccountUiLoader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KcAccountUiLoader.js","sourceRoot":"","sources":["src/KcAccountUiLoader.tsx"],"names":[],"mappings":"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"}
|
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<a href="https://github.com/keycloakify/keycloak-account-ui/actions">
|
|
9
9
|
<img src="https://github.com/keycloakify/keycloak-account-ui/actions/workflows/ci.yaml/badge.svg?branch=main">
|
|
10
10
|
</a>
|
|
11
|
-
<a href="https://www.npmjs.com/package/@keycloakify/keycloak-account-ui/v/25.0.1-rc.
|
|
11
|
+
<a href="https://www.npmjs.com/package/@keycloakify/keycloak-account-ui/v/25.0.1-rc.11">
|
|
12
12
|
<img src="https://img.shields.io/npm/dm/@keycloakify/keycloak-account-ui">
|
|
13
13
|
</a>
|
|
14
14
|
<p align="center">
|
|
@@ -26,16 +26,17 @@ All credits goes to the keycloak team for the original work. Mainly [@jonkoops
|
|
|
26
26
|
This re-packaged distribution exists to make it possible to take ownership of
|
|
27
27
|
some specific part of the Account UI to create your own custom version of it.
|
|
28
28
|
In straight forward therms it make the Account UI ejectable, you can copy
|
|
29
|
-
past [the source files](https://unpkg.com/browse/@keycloakify/keycloak-account-ui@25.0.1-rc.
|
|
29
|
+
past [the source files](https://unpkg.com/browse/@keycloakify/keycloak-account-ui@25.0.1-rc.11/src/) that you want to modify into your codebase.
|
|
30
30
|
|
|
31
31
|
For more details on integrating this package into your project, refer to the [Keycloakify documentation](https://keycloakify.dev).
|
|
32
32
|
|
|
33
33
|
> **Note:** This package's GitHub repository does not contain any code as it is automatically generated at build time by [scripts/prepare.ts](/scripts/prepare.ts).
|
|
34
|
-
> You can browse the sources includes int the NPM package [here](https://unpkg.com/browse/@keycloakify/keycloak-account-ui@25.0.1-rc.
|
|
34
|
+
> You can browse the sources includes int the NPM package [here](https://unpkg.com/browse/@keycloakify/keycloak-account-ui@25.0.1-rc.11/src/).
|
|
35
35
|
|
|
36
36
|
## Installation
|
|
37
37
|
|
|
38
|
-
>
|
|
38
|
+
> **Note:** This README file is automatically generated at build so the information above are guaranteed to be up to date.
|
|
39
|
+
> You are currently viewing the README of [`@keycloakify/keycloak-account-ui@25.0.1-rc.11`](https://www.npmjs.com/package/@keycloakify/keycloak-account-ui/v/25.0.1-rc.11) that
|
|
39
40
|
> mirrors [`@keycloak/keycloak-account-ui@25.0.1`](https://www.npmjs.com/package/@keycloak/keycloak-account-ui/v/25.0.1).
|
|
40
41
|
> It is the version of the Account UI that ships with [**Keycloak 25.0.1**](https://github.com/keycloak/keycloak/tree/25.0.1/js/apps/account-ui).
|
|
41
42
|
|
|
@@ -47,7 +48,7 @@ It's important to respect the exact version range listed here to avoid any compa
|
|
|
47
48
|
```json
|
|
48
49
|
{
|
|
49
50
|
"dependencies": {
|
|
50
|
-
"@keycloakify/keycloak-account-ui": "25.0.1-rc.
|
|
51
|
+
"@keycloakify/keycloak-account-ui": "25.0.1-rc.11",
|
|
51
52
|
"@patternfly/patternfly": "^5.3.1",
|
|
52
53
|
"@patternfly/react-core": "^5.3.3",
|
|
53
54
|
"@patternfly/react-icons": "^5.3.2",
|
|
@@ -71,4 +72,4 @@ It's important to respect the exact version range listed here to avoid any compa
|
|
|
71
72
|
## Ejecting
|
|
72
73
|
|
|
73
74
|
You can take partial ownership of some parts of the Account UI by copy pasting the sources files you want to modify into your codebase.
|
|
74
|
-
You can browse the sources files **[here](https://unpkg.com/browse/@keycloakify/keycloak-account-ui@25.0.1-rc.
|
|
75
|
+
You can browse the sources files **[here](https://unpkg.com/browse/@keycloakify/keycloak-account-ui@25.0.1-rc.11/src/)**.
|
package/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./KcAccountUiLoader";
|
package/index.js
ADDED
package/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keycloakify/keycloak-account-ui",
|
|
3
|
-
"version": "25.0.1-rc.
|
|
4
|
-
"description": "",
|
|
3
|
+
"version": "25.0.1-rc.11",
|
|
4
|
+
"description": "Repackaged Keycloak Account UI",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
7
|
"url": "git://github.com/keycloakify/keycloak-account-ui.git"
|
|
8
8
|
},
|
|
9
|
-
"main": "./
|
|
10
|
-
"types": "./
|
|
9
|
+
"main": "./index.js",
|
|
10
|
+
"types": "./index.d.ts",
|
|
11
11
|
"lint-staged": {
|
|
12
12
|
"*.{ts,tsx,json,md}": [
|
|
13
13
|
"prettier --write"
|
|
@@ -21,7 +21,8 @@
|
|
|
21
21
|
"author": "The Keycloak Team, re-packaged by u/garronej",
|
|
22
22
|
"license": "Apache-2.0",
|
|
23
23
|
"files": [
|
|
24
|
-
"src/
|
|
24
|
+
"src/KcAccountUi.tsx",
|
|
25
|
+
"src/KcAccountUiLoader.tsx",
|
|
25
26
|
"src/account-security/AccountRow.tsx",
|
|
26
27
|
"src/account-security/DeviceActivity.tsx",
|
|
27
28
|
"src/account-security/LinkedAccounts.tsx",
|
|
@@ -43,8 +44,11 @@
|
|
|
43
44
|
"src/groups/Groups.tsx",
|
|
44
45
|
"src/i18n.ts",
|
|
45
46
|
"src/i18next.d.ts",
|
|
47
|
+
"src/index.ts",
|
|
46
48
|
"src/oid4vci/Oid4Vci.tsx",
|
|
47
49
|
"src/personal-info/PersonalInfo.tsx",
|
|
50
|
+
"src/public/content.ts",
|
|
51
|
+
"src/public/logo.svg",
|
|
48
52
|
"src/resources/EditTheResource.tsx",
|
|
49
53
|
"src/resources/PermissionRequest.tsx",
|
|
50
54
|
"src/resources/ResourceToolbar.tsx",
|
|
@@ -111,9 +115,12 @@
|
|
|
111
115
|
"src/utils/isRecord.ts",
|
|
112
116
|
"src/utils/joinPath.ts",
|
|
113
117
|
"src/utils/usePromise.ts",
|
|
114
|
-
"
|
|
115
|
-
"
|
|
116
|
-
"
|
|
118
|
+
"KcAccountUi.d.ts",
|
|
119
|
+
"KcAccountUi.js",
|
|
120
|
+
"KcAccountUi.js.map",
|
|
121
|
+
"KcAccountUiLoader.d.ts",
|
|
122
|
+
"KcAccountUiLoader.js",
|
|
123
|
+
"KcAccountUiLoader.js.map",
|
|
117
124
|
"account-security/AccountRow.d.ts",
|
|
118
125
|
"account-security/AccountRow.js",
|
|
119
126
|
"account-security/AccountRow.js.map",
|
|
@@ -171,12 +178,19 @@
|
|
|
171
178
|
"i18n.d.ts",
|
|
172
179
|
"i18n.js",
|
|
173
180
|
"i18n.js.map",
|
|
181
|
+
"index.d.ts",
|
|
182
|
+
"index.js",
|
|
183
|
+
"index.js.map",
|
|
174
184
|
"oid4vci/Oid4Vci.d.ts",
|
|
175
185
|
"oid4vci/Oid4Vci.js",
|
|
176
186
|
"oid4vci/Oid4Vci.js.map",
|
|
177
187
|
"personal-info/PersonalInfo.d.ts",
|
|
178
188
|
"personal-info/PersonalInfo.js",
|
|
179
189
|
"personal-info/PersonalInfo.js.map",
|
|
190
|
+
"public/content.d.ts",
|
|
191
|
+
"public/content.js",
|
|
192
|
+
"public/content.js.map",
|
|
193
|
+
"public/logo.svg",
|
|
180
194
|
"resources/EditTheResource.d.ts",
|
|
181
195
|
"resources/EditTheResource.js",
|
|
182
196
|
"resources/EditTheResource.js.map",
|
|
@@ -304,6 +318,8 @@
|
|
|
304
318
|
"ui-shared/scroll-form/ScrollPanel.d.ts",
|
|
305
319
|
"ui-shared/scroll-form/ScrollPanel.js",
|
|
306
320
|
"ui-shared/scroll-form/ScrollPanel.js.map",
|
|
321
|
+
"ui-shared/scroll-form/form-title.module.css",
|
|
322
|
+
"ui-shared/scroll-form/scroll-form.module.css",
|
|
307
323
|
"ui-shared/select/KeycloakSelect.d.ts",
|
|
308
324
|
"ui-shared/select/KeycloakSelect.js",
|
|
309
325
|
"ui-shared/select/KeycloakSelect.js.map",
|
|
@@ -419,6 +435,9 @@
|
|
|
419
435
|
"@patternfly/react-styles": "^5.3.1",
|
|
420
436
|
"@keycloak/keycloak-admin-client": "25.0.1"
|
|
421
437
|
},
|
|
438
|
+
"dependencies": {
|
|
439
|
+
"tsafe": "^1.7.2"
|
|
440
|
+
},
|
|
422
441
|
"publishConfig": {
|
|
423
442
|
"access": "public"
|
|
424
443
|
},
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
declare const content: readonly [{
|
|
2
|
+
readonly label: "personalInfo";
|
|
3
|
+
readonly path: "/";
|
|
4
|
+
}, {
|
|
5
|
+
readonly label: "accountSecurity";
|
|
6
|
+
readonly children: readonly [{
|
|
7
|
+
readonly label: "signingIn";
|
|
8
|
+
readonly path: "account-security/signing-in";
|
|
9
|
+
}, {
|
|
10
|
+
readonly label: "deviceActivity";
|
|
11
|
+
readonly path: "account-security/device-activity";
|
|
12
|
+
}, {
|
|
13
|
+
readonly label: "linkedAccounts";
|
|
14
|
+
readonly path: "account-security/linked-accounts";
|
|
15
|
+
readonly isVisible: "isLinkedAccountsEnabled";
|
|
16
|
+
}];
|
|
17
|
+
}, {
|
|
18
|
+
readonly label: "applications";
|
|
19
|
+
readonly path: "applications";
|
|
20
|
+
}, {
|
|
21
|
+
readonly label: "groups";
|
|
22
|
+
readonly path: "groups";
|
|
23
|
+
readonly isVisible: "isViewGroupsEnabled";
|
|
24
|
+
}, {
|
|
25
|
+
readonly label: "resources";
|
|
26
|
+
readonly path: "resources";
|
|
27
|
+
readonly isVisible: "isMyResourcesEnabled";
|
|
28
|
+
}, {
|
|
29
|
+
readonly label: "oid4vci";
|
|
30
|
+
readonly path: "oid4vci";
|
|
31
|
+
readonly isVisible: "isOid4VciEnabled";
|
|
32
|
+
}];
|
|
33
|
+
export default content;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
const content = [
|
|
2
|
+
{
|
|
3
|
+
"label": "personalInfo",
|
|
4
|
+
"path": "/"
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
"label": "accountSecurity",
|
|
8
|
+
"children": [
|
|
9
|
+
{
|
|
10
|
+
"label": "signingIn",
|
|
11
|
+
"path": "account-security/signing-in"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"label": "deviceActivity",
|
|
15
|
+
"path": "account-security/device-activity"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"label": "linkedAccounts",
|
|
19
|
+
"path": "account-security/linked-accounts",
|
|
20
|
+
"isVisible": "isLinkedAccountsEnabled"
|
|
21
|
+
}
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"label": "applications",
|
|
26
|
+
"path": "applications"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"label": "groups",
|
|
30
|
+
"path": "groups",
|
|
31
|
+
"isVisible": "isViewGroupsEnabled"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"label": "resources",
|
|
35
|
+
"path": "resources",
|
|
36
|
+
"isVisible": "isMyResourcesEnabled"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"label": "oid4vci",
|
|
40
|
+
"path": "oid4vci",
|
|
41
|
+
"isVisible": "isOid4VciEnabled"
|
|
42
|
+
}
|
|
43
|
+
];
|
|
44
|
+
export default content;
|
|
45
|
+
//# sourceMappingURL=content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content.js","sourceRoot":"","sources":["../src/public/content.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG;IACd;QACE,OAAO,EAAE,cAAc;QACvB,MAAM,EAAE,GAAG;KACZ;IACD;QACE,OAAO,EAAE,iBAAiB;QAC1B,UAAU,EAAE;YACV;gBACE,OAAO,EAAE,WAAW;gBACpB,MAAM,EAAE,6BAA6B;aACtC;YACD;gBACE,OAAO,EAAE,gBAAgB;gBACzB,MAAM,EAAE,kCAAkC;aAC3C;YACD;gBACE,OAAO,EAAE,gBAAgB;gBACzB,MAAM,EAAE,kCAAkC;gBAC1C,WAAW,EAAE,yBAAyB;aACvC;SACF;KACF;IACD;QACE,OAAO,EAAE,cAAc;QACvB,MAAM,EAAE,cAAc;KACvB;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,QAAQ;QAChB,WAAW,EAAE,qBAAqB;KACnC;IACD;QACE,OAAO,EAAE,WAAW;QACpB,MAAM,EAAE,WAAW;QACnB,WAAW,EAAE,sBAAsB;KACpC;IACD;QACE,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,SAAS;QACjB,WAAW,EAAE,kBAAkB;KAChC;CACO,CAAC;AACX,eAAe,OAAO,CAAC"}
|
package/public/logo.svg
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg id="Guides" xmlns="http://www.w3.org/2000/svg" viewBox="0 230 600 130"><defs><style>.cls-1{fill:none;}.cls-2{fill:#4d4d4d;}.cls-3{clip-path:url(#clip-path);}.cls-4{fill:url(#linear-gradient);}.cls-5{fill:#e1e1e1;}.cls-6{fill:#585858;}.cls-7{fill:#696969;}.cls-8{fill:#5e5e5e;}.cls-9{fill:#6d6d6d;}.cls-10{fill:#636363;}.cls-11{fill:#737373;}.cls-12{fill:#757575;}.cls-13{fill:#646464;}.cls-14{fill:#6c6c6c;}.cls-15{fill:#606060;}.cls-16{fill:#707070;}.cls-17{fill:#767676;}.cls-18{fill:#797979;}.cls-19{fill:#7f7f7f;}.cls-20{fill:#868686;}.cls-21{fill:#8a8a8a;}.cls-22{fill:#7d7d7d;}.cls-23{fill:#919191;}.cls-24{fill:#858585;}.cls-25{fill:#929292;}.cls-26{fill:#898989;}.cls-27{fill:#8f8f8f;}.cls-28{fill:#999;}.cls-29{fill:#979797;}.cls-30{fill:#9f9f9f;}.cls-31{fill:#a6a6a6;}.cls-32{fill:#a0a0a0;}.cls-33{fill:#9b9b9b;}.cls-34{fill:#9d9d9d;}.cls-35{fill:#a3a3a3;}.cls-36{fill:#aaa;}.cls-37{fill:#a9a9a9;}.cls-38{fill:#989898;}.cls-39{fill:#b1b1b1;}.cls-40{fill:#9e9e9e;}.cls-41{fill:#a4a4a4;}.cls-42{fill:#aeaeae;}.cls-43{fill:#ababab;}.cls-44{fill:#b4b4b4;}.cls-45{fill:#a2a2a2;}.cls-46{fill:#bcbcbc;}.cls-47{fill:#b8b8b8;}.cls-48{fill:#b0b0b0;}.cls-49{fill:#b9b9b9;}.cls-50{fill:#bfbfbf;}.cls-51{fill:#b5b5b5;}.cls-52{fill:#bdbdbd;}.cls-53{fill:#b6b6b6;}.cls-54{fill:#c3c3c3;}.cls-55{fill:#c9c9c9;}.cls-56{fill:#bbb;}.cls-57{fill:#c1c1c1;}.cls-58{fill:#c6c6c6;}.cls-59{fill:#cdcdcd;}.cls-60{fill:#ccc;}.cls-61{fill:#c2c2c2;}.cls-62{fill:#c8c8c8;}.cls-63{fill:#c7c7c7;}.cls-64{fill:#cecece;}.cls-65{fill:#d3d3d3;}.cls-66{fill:#d5d5d5;}.cls-67{fill:#d0d0d0;}.cls-68{fill:#d9d9d9;}.cls-69{fill:#d4d4d4;}.cls-70{fill:#d8d8d8;}.cls-71{fill:#e2e2e2;}.cls-72{fill:#e4e4e4;}.cls-73{fill:#dedede;}.cls-74{fill:#c5c5c5;}.cls-75{fill:#d1d1d1;}.cls-76{fill:#cbcbcb;}.cls-77{fill:#d7d7d7;}.cls-78{fill:#ddd;}.cls-79{fill:#e3e3e3;}.cls-80{fill:#00b8e3;}.cls-81{fill:#33c6e9;}.cls-82{fill:#008aaa;}</style><clipPath id="clip-path"><path class="cls-1" d="M580.49,328.6H567a0.58,0.58,0,0,1-.46-0.23l-1.05-1.43-2.88-3.87-7.86-10.58-4.39-5.92a0.56,0.56,0,0,0-.86,0l-4.6,5.12-0.52.59a0.55,0.55,0,0,0-.14.37V328a0.57,0.57,0,0,1-.56.56H532a0.56,0.56,0,0,1-.56-0.56V272a0.56,0.56,0,0,1,.56-0.56h11.63a0.56,0.56,0,0,1,.56.56v21.47a0.56,0.56,0,0,0,1,.38l6.42-7,9.55-10.39,4.48-4.87a0.56,0.56,0,0,1,.41-0.18h14.28a0.56,0.56,0,0,1,.56.58,0.63,0.63,0,0,1-.14.35l-6.43,7.15-10.7,11.9-4.46,5a0.55,0.55,0,0,0,0,.69l5.56,7.77,5.06,7.13,0.62,0.87,3.83,5.36,4,5.62,2.79,3.9A0.57,0.57,0,0,1,580.49,328.6ZM527,327.81a0.57,0.57,0,0,1-.51.79H514.11a0.55,0.55,0,0,1-.51-0.34l-0.25-.55h0l-4.78-11.11a0.55,0.55,0,0,0-.51-0.34H484.84a0.57,0.57,0,0,0-.52.34l-0.71,1.65-4.31,10v0a0.56,0.56,0,0,1-.5.32H466.43a0.56,0.56,0,0,1-.51-0.79l0.86-2,5.83-13.49h0l0.21-.48,0.25-.56,0.11-.28,1.94-4.5v0l0,0h0l15-34.67a0.57,0.57,0,0,1,.51-0.34h11.61a0.55,0.55,0,0,1,.51.34l7.79,18,3.85,8.91,4.31,10,8.15,18.87Zm-23.71-23.55-0.82-1.91-2.74-6.4L497,289.63a0.57,0.57,0,0,0-1,0l-4.86,11.21-1.48,3.42a0.56,0.56,0,0,0,.51.78h12.61A0.56,0.56,0,0,0,503.26,304.26Zm-36.64,6.44a24.47,24.47,0,0,1-1.14,2.55,28.69,28.69,0,0,1-5.52,7.42l0,0a30.51,30.51,0,0,1-3.13,2.68,29,29,0,0,1-16.14,5.72c-0.68,0-1.38.07-2.08,0.07a29.86,29.86,0,0,1-16.72-4.73,30.35,30.35,0,0,1-4.62-3.74c-0.57-.56-1.12-1.13-1.63-1.72a28.24,28.24,0,0,1-7-19.33,32.44,32.44,0,0,1,.37-5h0l-0.26-.38,0.42-.63a27.71,27.71,0,0,1,8.14-15.07,30.43,30.43,0,0,1,4.31-3.52,28.1,28.1,0,0,1,10.22-4.28h0a32.86,32.86,0,0,1,6.8-.67,29.36,29.36,0,0,1,21.35,8.47,28,28,0,0,1,8.53,17.89v0c0.1,1,.14,2.08.14,3.16A30.07,30.07,0,0,1,466.63,310.7Zm-11-11a18.72,18.72,0,0,0-4.4-12.46,7.21,7.21,0,0,0-.5-0.59,15.67,15.67,0,0,0-12.06-5.39,17.27,17.27,0,0,0-3.69.39,15.75,15.75,0,0,0-8.37,5,18.58,18.58,0,0,0-4.9,12.6c0,0.15,0,.29,0,0.45a18.54,18.54,0,0,0,4.91,13,16.28,16.28,0,0,0,1.48,1.44,15.69,15.69,0,0,0,3.22,2.21,16.71,16.71,0,0,0,14.94-.12,16.26,16.26,0,0,0,4-3c0.17-.17.34-0.34,0.5-0.52a18.55,18.55,0,0,0,2.77-3.92A19.13,19.13,0,0,0,455.6,299.69Zm-47.7,17.53H384.65a0.55,0.55,0,0,1-.56-0.55V272a0.55,0.55,0,0,0-.32-0.5,0.49,0.49,0,0,0-.24-0.06H371.9a0.56,0.56,0,0,0-.56.56v56a0.56,0.56,0,0,0,.56.56h36a0.56,0.56,0,0,0,.56-0.56V317.78A0.56,0.56,0,0,0,407.9,317.22Zm-63.24-47c-0.92-.08-1.85-0.11-2.8-0.11a29.36,29.36,0,0,0-21.31,8.51,30.65,30.65,0,0,0-2.88,3.25h0a28.57,28.57,0,0,0-5.83,18,30.78,30.78,0,0,0,1.86,10.9,26.61,26.61,0,0,0,2.87,5.6h0a28.23,28.23,0,0,0,3.79,4.53,28.92,28.92,0,0,0,5.7,4.34h0c0.51,0.29,1,.58,1.57.85q0.57,0.29,1.17.54h0a32.63,32.63,0,0,0,13.27,2.59,29.57,29.57,0,0,0,4.24-.3h0c0.88-.12,1.76-0.29,2.62-0.5a29.64,29.64,0,0,0,13.31-7.35c0.81-.74,1.61-1.55,2.39-2.4a0.57,0.57,0,0,0,0-.78l-7.38-7.59a0.54,0.54,0,0,0-.49-0.16,0.61,0.61,0,0,0-.33.2,18.73,18.73,0,0,1-15,7,16.65,16.65,0,0,1-5.78-1,16.21,16.21,0,0,1-5.91-3.85,15.61,15.61,0,0,1-3.74-5.94,20.28,20.28,0,0,1-1.09-6.85q0-7.43,4.44-12c0.22-.22.44-0.44,0.67-0.66a17.52,17.52,0,0,1,12.31-4.7,18.45,18.45,0,0,1,14.64,7,0.55,0.55,0,0,0,.84,0l7.18-8.14a0.58,0.58,0,0,0,0-.76A30,30,0,0,0,344.66,270.24Zm-32.26,5.82,2.17-3.78a0.56,0.56,0,0,0-.48-0.84H301.55a0.57,0.57,0,0,0-.48.28l-11.36,19.55h0l-0.61.45-0.46.35a0.58,0.58,0,0,1-.24-0.22l-0.19-.32-0.29-.48L276.7,271.71a0.57,0.57,0,0,0-.48-0.28H263.68a0.56,0.56,0,0,0-.48.84l5.44,9.5L278.47,299l4,6.93a0.57,0.57,0,0,1,.08.28V328a0.56,0.56,0,0,0,.56.56H294.7a0.56,0.56,0,0,0,.56-0.56V306.17a0.57,0.57,0,0,1,.08-0.28l2.8-4.9,10.64-18.61,2.18-3.79,1.44-2.53h0Zm-53.69,41.26H230.48a0.56,0.56,0,0,1-.56-0.56V306a0.57,0.57,0,0,1,.56-0.56H255a0.56,0.56,0,0,0,.56-0.56v-9.75a0.56,0.56,0,0,0-.56-0.56H230.48a0.56,0.56,0,0,1-.56-0.56V283.36a0.56,0.56,0,0,1,.56-0.56h27.34a0.56,0.56,0,0,0,.56-0.56V272a0.56,0.56,0,0,0-.56-0.56h-40.1a0.56,0.56,0,0,0-.56.56v56a0.56,0.56,0,0,0,.56.56h41a0.56,0.56,0,0,0,.56-0.56V317.87A0.56,0.56,0,0,0,258.72,317.31ZM210.59,327q-2.18-3-5.3-7.43-2.44-3.41-5.43-7.62l-0.2-.29q-7.44-10.46-10.43-14.62a0.56,0.56,0,0,1,0-.69l5.09-5.65h0l4.19-4.66,4-4.48,8.28-9.2a0.56,0.56,0,0,0-.42-0.93H196.18a0.57,0.57,0,0,0-.42.18l-8.85,9.61-11.6,12.62a0.56,0.56,0,0,1-1-.38V272a0.55,0.55,0,0,0-.56-0.55H162.15a0.56,0.56,0,0,0-.56.56v56a0.56,0.56,0,0,0,.56.56h11.63a0.56,0.56,0,0,0,.56-0.56V312.61a0.55,0.55,0,0,1,.14-0.37l2.42-2.71,2.7-3a0.56,0.56,0,0,1,.86,0l8.07,10.85,5.8,7.8,2.33,3.14a0.55,0.55,0,0,0,.45.23h13.51a0.57,0.57,0,0,0,.46-0.89Zm-55.66-55.65h-119a1.08,1.08,0,0,0-.91.51s0,0,0,0l-0.59,1-7.28,12.62-8,13.94a1,1,0,0,0,0,1.05l1.75,3L35,328.11a1.06,1.06,0,0,0,.92.53h119a1.18,1.18,0,0,0,1.17-1.18v-54.9A1.19,1.19,0,0,0,154.93,271.37Z"/></clipPath><linearGradient id="linear-gradient" x1="17.66" y1="300.84" x2="584.47" y2="300.84" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#e6e6e6"/><stop offset="1" stop-color="#595959"/></linearGradient></defs><title>keycloak_deliverables</title><path class="cls-2" d="M135.1,271.36a1,1,0,0,1-.91-0.52l-15.91-27.58a1.08,1.08,0,0,0-.93-0.52H52.45a1,1,0,0,0-.91.52L35,271.88a0,0,0,0,0,0,0L19.08,299.47a1.07,1.07,0,0,0,0,1.05L35,328.1l16.53,28.65a1,1,0,0,0,.91.52h64.91a1.08,1.08,0,0,0,.93-0.52l15.92-27.58a1,1,0,0,1,.91-0.52h19.81a1.19,1.19,0,0,0,1.19-1.19v-54.9a1.19,1.19,0,0,0-1.19-1.19H135.1Z"/><g class="cls-3"><rect class="cls-4" x="17.66" y="262.56" width="566.81" height="76.56"/></g><path class="cls-5" d="M38.62,297.11l-17.78,6.45-1.75-3a1,1,0,0,1,0-1.05l8-13.94Z"/><path class="cls-6" d="M580.49,328.6h-7.34l-6.7-4.2,11.71-.59,2.79,3.9A0.57,0.57,0,0,1,580.49,328.6Z"/><path class="cls-6" d="M573.15,328.6H567a0.58,0.58,0,0,1-.46-0.23l-1.05-1.43,1-2.55Z"/><path class="cls-7" d="M580.89,272a0.63,0.63,0,0,1-.14.35l-6.43,7.15-0.4-4Z"/><path class="cls-8" d="M578.16,323.81l-11.71.59,7.72-6.21Z"/><path class="cls-9" d="M580.89,272l-7,3.49,1.19-4.07h5.23A0.56,0.56,0,0,1,580.89,272Z"/><path class="cls-10" d="M574.17,318.19l-7.72,6.21,3.89-11.57Z"/><polygon class="cls-11" points="575.1 271.43 573.91 275.5 567.14 271.43 575.1 271.43"/><path class="cls-12" d="M544.21,272v5.79l-12.75,1V272a0.56,0.56,0,0,1,.56-0.56h11.63A0.56,0.56,0,0,1,544.21,272Z"/><path class="cls-12" d="M573.91,275.5l-12.75,1,4.48-4.87a0.56,0.56,0,0,1,.41-0.18h1.09Z"/><path class="cls-13" d="M570.34,312.83l-3.89,11.57-3.86-1.32-7.86-10.58,9.93-7.67,5.06,7.13Z"/><polygon class="cls-9" points="544.22 277.78 544.22 284.06 531.46 279.23 531.46 278.77 544.22 277.78"/><polygon class="cls-9" points="574.31 279.51 563.61 291.41 551.61 286.86 561.16 276.48 573.91 275.5 574.31 279.51"/><path class="cls-14" d="M564.67,304.83l-9.93,7.67-4.39-5.92a0.56,0.56,0,0,0-.86,0l-4.6,5.12-13.42-30.46v-2l12.75,4.83v9.4a0.56,0.56,0,0,0,1,.38l6.42-7,12,4.54-4.46,5a0.55,0.55,0,0,0,0,.69Z"/><polygon class="cls-15" points="566.45 324.39 565.48 326.94 562.6 323.07 566.45 324.39"/><path class="cls-16" d="M544.88,311.65l-0.52.59a0.55,0.55,0,0,0-.14.37V315l-12.75-10.82v-23Z"/><path class="cls-10" d="M527,327.81a0.57,0.57,0,0,1-.51.79H524.6l2.26-1Z"/><path class="cls-10" d="M544.21,319.55V328a0.57,0.57,0,0,1-.56.56H532a0.56,0.56,0,0,1-.56-0.56v-2.6Z"/><path class="cls-9" d="M526.86,327.55l-2.26,1H514.11a0.55,0.55,0,0,1-.51-0.34l-0.25-.55h0l5.36-19Z"/><polygon class="cls-9" points="544.22 315.03 544.22 319.55 531.46 325.43 531.46 304.21 544.22 315.03"/><path class="cls-17" d="M518.71,308.68l-5.36,19-4.78-11.11a0.55,0.55,0,0,0-.51-0.34H484.83a0.57,0.57,0,0,0-.52.34l-0.71,1.65-10.8-6.39,0.25-.56L493.6,305h9.15a0.56,0.56,0,0,0,.51-0.78l-0.82-1.91,12-3.64Z"/><path class="cls-18" d="M493.6,305L473,311.29l0.11-.28,17.94-10.18-1.48,3.42a0.56,0.56,0,0,0,.51.78h3.46Z"/><polygon class="cls-18" points="514.4 298.71 502.44 302.35 499.71 295.95 510.55 289.8 514.4 298.71"/><path class="cls-12" d="M483.6,318.24l-4.31,10v0l-6.69-15.94h0l0.21-.48Z"/><path class="cls-19" d="M510.55,289.8l-10.84,6.15L497,289.63a0.57,0.57,0,0,0-1,0l-4.86,11.21L473.16,311l1.94-4.5v0l0,0h0l19.84-35h7.26a0.55,0.55,0,0,1,.51.34Z"/><path class="cls-20" d="M466.21,287.57a28.28,28.28,0,0,1,2.25,8.91Z"/><path class="cls-20" d="M495,271.43l-19.84,35,15-34.67a0.57,0.57,0,0,1,.51-0.34H495Z"/><path class="cls-21" d="M468.6,299.65a30.07,30.07,0,0,1-2,11.05l-13.16-1.93a19.13,19.13,0,0,0,2.14-9.09,18.72,18.72,0,0,0-4.4-12.46l5.14-11.66a29.67,29.67,0,0,1,3.59,3,28.15,28.15,0,0,1,6.27,9l2.25,8.91v0C468.55,297.52,468.6,298.57,468.6,299.65Z"/><path class="cls-22" d="M454,316.16l11.5-2.91a28.69,28.69,0,0,1-5.52,7.42Z"/><path class="cls-22" d="M479.28,328.27a0.56,0.56,0,0,1-.5.32h-8.34l-3.67-2.78,5.83-13.49Z"/><path class="cls-18" d="M454,316.16l6,4.51,0,0a30.51,30.51,0,0,1-3.13,2.68Z"/><path class="cls-18" d="M470.44,328.6h-4a0.56,0.56,0,0,1-.51-0.79l0.86-2Z"/><path class="cls-20" d="M466.62,310.7a24.47,24.47,0,0,1-1.14,2.55L454,316.16l-3.79-2.95c0.17-.17.34-0.34,0.5-0.52a18.55,18.55,0,0,0,2.77-3.92Z"/><path class="cls-22" d="M456.81,323.38a29,29,0,0,1-16.14,5.72L454,316.16Z"/><path class="cls-23" d="M456.34,275.56l-5.14,11.66a7.21,7.21,0,0,0-.5-0.59,15.67,15.67,0,0,0-12.06-5.39,17.27,17.27,0,0,0-3.69.39l-3.16-10.84a32.86,32.86,0,0,1,6.8-.67A29.62,29.62,0,0,1,456.34,275.56Z"/><path class="cls-24" d="M454,316.16L440.67,329.1c-0.68,0-1.38.07-2.08,0.07a29.86,29.86,0,0,1-16.72-4.73l1.49-8,7.92-.07a16.71,16.71,0,0,0,14.94-.12Z"/><path class="cls-25" d="M434.95,281.64a15.75,15.75,0,0,0-8.37,5,18.58,18.58,0,0,0-4.9,12.6L409,294.4l-0.29-.11,0.42-.63,12.44-18.59a28.1,28.1,0,0,1,10.22-4.28h0Z"/><path class="cls-26" d="M428.06,314.13a15.69,15.69,0,0,0,3.22,2.21l-7.92.07Z"/><path class="cls-26" d="M454,316.16l-7.76.07a16.26,16.26,0,0,0,4-3Z"/><path class="cls-27" d="M428.06,314.13l-4.69,2.28L409,294.68h0l-0.26-.38L409,294.4l12.68,4.84c0,0.15,0,.29,0,0.45a18.54,18.54,0,0,0,4.91,13A16.28,16.28,0,0,0,428.06,314.13Z"/><path class="cls-28" d="M421.56,275.07l-12.44,18.59a27.71,27.71,0,0,1,8.14-15.07A30.43,30.43,0,0,1,421.56,275.07Z"/><path class="cls-26" d="M386.64,328.6l21.82-7.24V328a0.56,0.56,0,0,1-.56.56H386.64Z"/><path class="cls-26" d="M423.36,316.41l-1.49,8a30.35,30.35,0,0,1-4.62-3.74c-0.57-.56-1.12-1.13-1.63-1.72Z"/><path class="cls-23" d="M408.46,317.78v3.57l-21.82,7.24H374.82l11.23-11.38H407.9A0.56,0.56,0,0,1,408.46,317.78Z"/><path class="cls-23" d="M423.36,316.41L415.63,319a28.24,28.24,0,0,1-7-19.33,32.44,32.44,0,0,1,.37-5Z"/><path class="cls-29" d="M386.05,317.22L374.82,328.6H371.9a0.56,0.56,0,0,1-.56-0.56v0l12.75-36v24.72a0.55,0.55,0,0,0,.56.55h1.4Z"/><path class="cls-30" d="M384.09,272v3.18l-0.32-3.69A0.55,0.55,0,0,1,384.09,272Z"/><path class="cls-31" d="M365.07,280.45a0.58,0.58,0,0,1,0,.76l-7.18,8.14a0.55,0.55,0,0,1-.84,0,19,19,0,0,0-9.61-6.37l-2.79-12.73A30,30,0,0,1,365.07,280.45Z"/><path class="cls-31" d="M377.09,271.43l-5.75,5.84V272a0.56,0.56,0,0,1,.56-0.56h5.19Z"/><path class="cls-32" d="M384.09,275.17v13.77l-12.75,3.53v-15.2l5.75-5.84h6.44a0.49,0.49,0,0,1,.24.06Z"/><path class="cls-33" d="M364.7,317.9a0.57,0.57,0,0,1,0,.78c-0.78.86-1.58,1.66-2.39,2.4l-5.5-10.94a0.54,0.54,0,0,1,.49.16Z"/><polygon class="cls-33" points="384.09 288.94 384.09 291.95 371.34 327.99 371.34 292.47 384.09 288.94"/><path class="cls-28" d="M362.34,321.09A29.64,29.64,0,0,1,349,328.43l0.75-12.85a19.5,19.5,0,0,0,6.72-5.24,0.61,0.61,0,0,1,.33-0.2Z"/><path class="cls-34" d="M349.78,315.59L349,328.43c-0.86.21-1.74,0.38-2.62,0.5h0l-17.51-2.29h0q-0.6-.26-1.17-0.54l8.08-9.77a16.65,16.65,0,0,0,5.78,1A19.47,19.47,0,0,0,349.78,315.59Z"/><path class="cls-35" d="M335.75,316.33l-8.08,9.77c-0.53-.27-1.05-0.55-1.57-0.85h0l-9.49-8.88h0a26.61,26.61,0,0,1-2.87-5.6l12.39-4.21a15.61,15.61,0,0,0,3.74,5.94A16.21,16.21,0,0,0,335.75,316.33Z"/><polygon class="cls-36" points="308.33 277.29 312.4 276.06 310.96 278.59 308.33 277.29"/><path class="cls-36" d="M347.46,283a18.89,18.89,0,0,0-5-.66,17.52,17.52,0,0,0-12.31,4.7c-0.24.22-.46,0.44-0.67,0.66l-11.78-5.78h0a30.65,30.65,0,0,1,2.88-3.25,29.36,29.36,0,0,1,21.31-8.51c1,0,1.88,0,2.8.11Z"/><polygon class="cls-37" points="308.33 277.29 310.96 278.59 308.78 282.38 308.33 277.29"/><path class="cls-37" d="M325,299.68a20.28,20.28,0,0,0,1.09,6.85l-12.39,4.21a30.78,30.78,0,0,1-1.86-10.9,28.57,28.57,0,0,1,5.83-18l11.78,5.78Q325,292.25,325,299.68Z"/><path class="cls-38" d="M328.86,326.64h0Z"/><path class="cls-38" d="M346.38,328.94a29.57,29.57,0,0,1-4.24.3,32.63,32.63,0,0,1-13.27-2.59Z"/><path class="cls-39" d="M314.57,272.27L312.4,276l-4.08,1.25-2.05-5.86h7.81A0.56,0.56,0,0,1,314.57,272.27Z"/><polygon class="cls-40" points="295.26 321.73 295.26 323.23 292.37 321.31 295.26 321.73"/><path class="cls-34" d="M295.26,323.23V328a0.56,0.56,0,0,1-.56.56H292l0.39-7.29Z"/><polygon class="cls-41" points="292.37 321.31 295.26 319.82 295.26 321.73 292.37 321.31"/><path class="cls-41" d="M326.09,325.25a28.92,28.92,0,0,1-5.7-4.34,28.23,28.23,0,0,1-3.79-4.53Z"/><polygon class="cls-42" points="308.78 282.38 298.14 300.99 287.74 292.74 288.63 292.07 289.09 291.72 289.7 291.27 289.7 291.26 289.71 291.25 308.33 277.29 308.78 282.38"/><path class="cls-43" d="M298.14,301l-2.8,4.9a0.57,0.57,0,0,0-.08.28v13.66l-2.89,1.48-4.63-28.57Z"/><path class="cls-44" d="M288.4,291.85a0.58,0.58,0,0,0,.24.22l-0.89.67,0.47-1.21Z"/><path class="cls-44" d="M308.33,277.29l-18.62,14,11.36-19.55a0.57,0.57,0,0,1,.48-0.28h4.72Z"/><polygon class="cls-45" points="292.37 321.31 291.98 328.6 283.15 328.6 292.37 321.31"/><path class="cls-46" d="M258.38,272v3.9l-7.76-4.46h7.2A0.56,0.56,0,0,1,258.38,272Z"/><path class="cls-46" d="M287.92,291l-0.18,1.69-19.11-11-5.44-9.5a0.56,0.56,0,0,1,.48-0.84h12.54a0.57,0.57,0,0,1,.48.28Z"/><polygon class="cls-47" points="288.21 291.53 287.74 292.74 287.92 291.05 288.21 291.53"/><path class="cls-37" d="M292.37,321.31l-9.22,7.29h-0.09a0.56,0.56,0,0,1-.56-0.56V323.7Z"/><path class="cls-48" d="M282.51,316.14v-10a0.57,0.57,0,0,0-.08-0.28l-4-6.93,9.28-6.23,4.63,28.57Z"/><path class="cls-42" d="M256.1,328.6l3.17-6.88V328a0.56,0.56,0,0,1-.56.56H256.1Z"/><polygon class="cls-42" points="292.37 321.31 282.5 323.7 282.5 316.14 292.37 321.31"/><path class="cls-49" d="M258.38,275.89v6.35a0.56,0.56,0,0,1-.56.56h-5.39l-6.2-11.37h4.38Z"/><polygon class="cls-49" points="287.74 292.74 278.47 298.96 268.63 281.77 287.74 292.74"/><polygon class="cls-50" points="252.44 282.8 246.77 282.8 238.32 271.89 238.99 271.43 246.24 271.43 252.44 282.8"/><path class="cls-51" d="M259.28,317.87v3.85l-3.17,6.88h-4.35l-33.24-16,11.41-1.24v5.43a0.56,0.56,0,0,0,.56.56h28.24A0.56,0.56,0,0,1,259.28,317.87Z"/><polygon class="cls-52" points="246.77 282.8 233.01 282.8 238.32 271.89 246.77 282.8"/><path class="cls-52" d="M255.52,295.13v9.75a0.56,0.56,0,0,1-.56.56H230.48a0.57,0.57,0,0,0-.56.56v5.31l-11.41,1.24,11.41-23.42V294a0.56,0.56,0,0,0,.56.56H255A0.56,0.56,0,0,1,255.52,295.13Z"/><polygon class="cls-53" points="251.75 328.6 223.55 328.6 218.51 312.55 251.75 328.6"/><path class="cls-54" d="M238.32,271.9L233,282.8h-2.53a0.56,0.56,0,0,0-.56.56v5.78l-11.41,23.42-1.34-2.2V281.77Z"/><path class="cls-55" d="M210.87,272.36l-8.28,9.2-1.53-10.13h9.39A0.56,0.56,0,0,1,210.87,272.36Z"/><path class="cls-55" d="M238.32,271.9l-21.16,9.87V272a0.56,0.56,0,0,1,.56-0.56h17.6Z"/><path class="cls-56" d="M205.29,319.58q3.12,4.39,5.3,7.43l-12.93-3.38Z"/><path class="cls-56" d="M223.55,328.6h-5.83a0.56,0.56,0,0,1-.56-0.56V313.27l1.34-.71Z"/><path class="cls-53" d="M210.63,328.6H199.16l-1.49-5L210.59,327l0.49,0.69A0.57,0.57,0,0,1,210.63,328.6Z"/><path class="cls-57" d="M199.86,312q3,4.22,5.43,7.62l-7.62,4,2-12Z"/><polygon class="cls-57" points="218.51 312.55 217.17 313.27 217.17 310.36 218.51 312.55"/><path class="cls-58" d="M199.66,311.67l-2,12-9.12-6.2-8.07-10.85a0.56,0.56,0,0,0-.86,0l-2.7,3-14.5-9.85,32-9-5.09,5.65a0.56,0.56,0,0,0,0,.69Q192.21,301.2,199.66,311.67Z"/><path class="cls-47" d="M199.16,328.6h-2a0.55,0.55,0,0,1-.45-0.23l-2.33-3.14,3.33-1.61Z"/><polygon class="cls-59" points="168.07 273.44 174.34 271.98 174.34 276.03 168.07 273.44"/><path class="cls-59" d="M202.6,281.56l-4,4.48-11.65-4.82,8.85-9.61a0.57,0.57,0,0,1,.42-0.18h4.89Z"/><path class="cls-60" d="M198.57,286l-4.19,4.66h0l-32,9,5.66-26.25,6.27,2.59v17.43a0.56,0.56,0,0,0,1,.38l11.61-12.62Z"/><path class="cls-61" d="M162.4,299.68l14.5,9.85-2.42,2.71a0.55,0.55,0,0,0-.14.37V328a0.56,0.56,0,0,1-.56.56h-0.16Z"/><polygon class="cls-61" points="197.66 323.63 194.34 325.23 188.54 317.43 197.66 323.63"/><polygon class="cls-62" points="144.39 302.26 156.11 300.59 156.11 314.18 144.39 302.26"/><polygon class="cls-62" points="173.62 328.6 170.3 328.6 161.59 319.74 161.59 299.8 162.4 299.69 173.62 328.6"/><path class="cls-61" d="M144.39,302.26l11.72,11.92v13.28a1.18,1.18,0,0,1-1.17,1.18H141.31Z"/><path class="cls-61" d="M170.3,328.6h-8.15a0.56,0.56,0,0,1-.56-0.56v-8.3Z"/><polygon class="cls-63" points="144.39 302.26 141.31 328.63 124.91 328.63 119.94 316.67 144.39 302.26"/><polygon class="cls-64" points="144.39 302.26 156.11 288 156.11 300.59 144.39 302.26"/><polygon class="cls-64" points="168.07 273.44 162.4 299.69 161.59 299.8 161.59 281.32 168.07 273.44"/><path class="cls-65" d="M156.11,272.55V288l-11.72,14.27-8.84-30.9h19.37A1.19,1.19,0,0,1,156.11,272.55Z"/><polygon class="cls-65" points="168.07 273.44 161.59 281.32 161.59 272.06 168.07 273.44"/><polygon class="cls-58" points="124.91 328.63 116.26 328.63 114.02 325.42 119.94 316.67 124.91 328.63"/><polygon class="cls-66" points="144.39 302.26 111.96 288.55 129.02 271.36 135.56 271.36 144.39 302.26"/><path class="cls-67" d="M112,288.55l8,28.12,24.45-14.41Z"/><polygon class="cls-50" points="116.26 328.63 113.92 328.63 114.02 325.42 116.26 328.63"/><polygon class="cls-68" points="129.02 271.36 111.96 288.55 108.88 273.18 115.46 271.36 129.02 271.36"/><path class="cls-69" d="M112,288.55l-39.37,9.08L114,325.42Z"/><path class="cls-67" d="M112,288.55L114,325.42l5.92-8.75Z"/><path class="cls-68" d="M108.88,273.18L72.59,297.63,112,288.55Z"/><polygon class="cls-70" points="72.59 297.63 55.52 328.63 45.8 328.63 38.62 297.11 72.59 297.63"/><path class="cls-71" d="M55.09,271.36L38.62,297.11l-4.2-24.2,0.59-1s0,0,0,0a1.08,1.08,0,0,1,.91-0.51H55.09Z"/><path class="cls-70" d="M45.8,328.63H35.93A1.06,1.06,0,0,1,35,328.1L20.83,303.56l17.78-6.45Z"/><polygon class="cls-72" points="38.62 297.11 27.13 285.53 34.41 272.91 38.62 297.11"/><polygon class="cls-73" points="90.57 271.36 79.22 271.36 61.83 271.36 72.59 297.63 108.88 273.18 97.94 271.36 90.57 271.36"/><polygon class="cls-73" points="57.34 271.36 55.09 271.36 38.62 297.11 72.59 297.63 61.83 271.36 57.34 271.36"/><polygon class="cls-74" points="106.12 328.63 112.45 328.63 113.92 328.63 114.02 325.42 106.12 328.63"/><polygon class="cls-67" points="114.02 325.42 72.59 297.63 80.05 328.63 90.57 328.63 106.12 328.63 114.02 325.42"/><polygon class="cls-75" points="55.52 328.63 57.34 328.63 79.22 328.63 80.05 328.63 72.59 297.63 55.52 328.63"/><polygon class="cls-62" points="238.99 271.43 238.32 271.89 238 271.43 238.99 271.43"/><polygon class="cls-76" points="238.32 271.89 235.33 271.43 238 271.43 238.32 271.89"/><path class="cls-75" d="M174.34,272l-6.27,1.45,1.72-2h4A0.55,0.55,0,0,1,174.34,272Z"/><polygon class="cls-77" points="169.79 271.43 168.07 273.44 167.72 271.43 169.79 271.43"/><path class="cls-68" d="M168.07,273.44l-6.48-1.38V272a0.56,0.56,0,0,1,.56-0.56h5.57Z"/><polygon class="cls-78" points="108.99 271.36 108.88 273.18 115.46 271.36 112.45 271.36 108.99 271.36"/><polygon class="cls-79" points="97.94 271.36 108.88 273.18 107.87 271.36 97.94 271.36"/><polygon class="cls-71" points="107.87 271.36 108.88 273.18 108.99 271.36 107.87 271.36"/><path class="cls-80" d="M79.11,271.86l-16,27.72A0.93,0.93,0,0,0,63,300H51.83l22-38.05a0.86,0.86,0,0,1,.33.32l0,0,5,8.65A1,1,0,0,1,79.11,271.86Z"/><path class="cls-81" d="M79.09,329.16l-5,8.61a1,1,0,0,1-.34.32L51.82,300H63a0.85,0.85,0,0,0,.11.43,0.1,0.1,0,0,0,0,0l16,27.7A0.94,0.94,0,0,1,79.09,329.16Z"/><path class="cls-82" d="M73.78,262L51.83,300h0l-5.51,9.54L41,300.46a0.85,0.85,0,0,1-.11-0.43,0.93,0.93,0,0,1,.12-0.45l5.33-9.23,16.18-28a0.94,0.94,0,0,1,.82-0.48h9.93A1,1,0,0,1,73.78,262Z"/><path class="cls-80" d="M73.78,338.09a1,1,0,0,1-.47.13H63.38a0.94,0.94,0,0,1-.82-0.48L47.77,312.12l-1.46-2.54L51.82,300Z"/><path class="cls-82" d="M118,300L96,338.09a1,1,0,0,1-.33-0.32l0,0-5-8.63a1,1,0,0,1,0-.89l16-27.72a0.93,0.93,0,0,0,.13-0.48H118Z"/><path class="cls-80" d="M128.83,300a0.93,0.93,0,0,1-.13.48l-21.52,37.26a0.94,0.94,0,0,1-.8.44H96.46a1,1,0,0,1-.48-0.13L118,300l5.51-9.53,5.23,9.06A0.92,0.92,0,0,1,128.83,300Z"/><path class="cls-80" d="M118,300H106.78a0.92,0.92,0,0,0-.13-0.47l-16-27.69a0.94,0.94,0,0,1,0-1l5-8.62A1,1,0,0,1,96,262Z"/><path class="cls-81" d="M123.46,290.48h0L118,300,96,262a1,1,0,0,1,.48-0.13h9.92a0.94,0.94,0,0,1,.8.44Z"/></svg>
|
|
@@ -14,18 +14,7 @@ export default function KeycloakAccountUi() {
|
|
|
14
14
|
const [isI18nInitialized, setI18nInitialized] = useReducer(() => true, false);
|
|
15
15
|
|
|
16
16
|
useEffect(() => {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
prI18nInitialized.then(() => {
|
|
20
|
-
if (!isActive) {
|
|
21
|
-
return;
|
|
22
|
-
}
|
|
23
|
-
setI18nInitialized();
|
|
24
|
-
});
|
|
25
|
-
|
|
26
|
-
return () => {
|
|
27
|
-
isActive = false;
|
|
28
|
-
};
|
|
17
|
+
prI18nInitialized.then(() => setI18nInitialized());
|
|
29
18
|
}, []);
|
|
30
19
|
|
|
31
20
|
if (!isI18nInitialized) {
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
import { Suspense, useMemo, type LazyExoticComponent } from "react";
|
|
2
|
+
import { assert } from "tsafe/assert";
|
|
3
|
+
import { is } from "tsafe/is";
|
|
4
|
+
import type { Environment } from "@keycloakify/keycloak-account-ui/environment";
|
|
5
|
+
import type { MenuItem } from "@keycloakify/keycloak-account-ui/root/PageNav";
|
|
6
|
+
import { joinPath } from "@keycloakify/keycloak-account-ui/utils/joinPath";
|
|
7
|
+
import defaultContent from "@keycloakify/keycloak-account-ui/public/content";
|
|
8
|
+
import defaultLogoSvgUrl from "@keycloakify/keycloak-account-ui/public/logo.svg";
|
|
9
|
+
|
|
10
|
+
export type KcContextLike = {
|
|
11
|
+
serverBaseUrl: string;
|
|
12
|
+
authUrl: string;
|
|
13
|
+
authServerUrl: string;
|
|
14
|
+
realm: {
|
|
15
|
+
name: string;
|
|
16
|
+
registrationEmailAsUsername: boolean;
|
|
17
|
+
editUsernameAllowed: boolean;
|
|
18
|
+
isInternationalizationEnabled: boolean;
|
|
19
|
+
identityFederationEnabled: boolean;
|
|
20
|
+
userManagedAccessAllowed: boolean;
|
|
21
|
+
};
|
|
22
|
+
clientId: string;
|
|
23
|
+
resourceUrl: string;
|
|
24
|
+
baseUrl: {
|
|
25
|
+
rawSchemeSpecificPart: string;
|
|
26
|
+
scheme: string;
|
|
27
|
+
};
|
|
28
|
+
locale: string;
|
|
29
|
+
referrerName?: string;
|
|
30
|
+
referrer_uri?: string;
|
|
31
|
+
isAuthorizationEnabled: boolean;
|
|
32
|
+
deleteAccountAllowed: boolean;
|
|
33
|
+
updateEmailFeatureEnabled: boolean;
|
|
34
|
+
updateEmailActionEnabled: boolean;
|
|
35
|
+
isViewGroupsEnabled: boolean;
|
|
36
|
+
isOid4VciEnabled: boolean;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
type LazyExoticComponentLike = {
|
|
40
|
+
_result: unknown;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export type KcAccountUiLoaderProps = {
|
|
44
|
+
kcContext: KcContextLike;
|
|
45
|
+
KcAccountUi: LazyExoticComponentLike;
|
|
46
|
+
content?: MenuItem[];
|
|
47
|
+
logoUrl?: string;
|
|
48
|
+
loadingFallback?: JSX.Element;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export function KcAccountUiLoader(props: KcAccountUiLoaderProps) {
|
|
52
|
+
const { KcAccountUi, loadingFallback, ...paramsOfInit } = props;
|
|
53
|
+
|
|
54
|
+
assert(is<LazyExoticComponent<() => JSX.Element | null>>(KcAccountUi));
|
|
55
|
+
|
|
56
|
+
useMemo(() => init(paramsOfInit), []);
|
|
57
|
+
|
|
58
|
+
return (
|
|
59
|
+
<Suspense fallback={loadingFallback}>
|
|
60
|
+
{(() => {
|
|
61
|
+
const node = <KcAccountUi />;
|
|
62
|
+
|
|
63
|
+
if (node === null) {
|
|
64
|
+
return loadingFallback;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return node;
|
|
68
|
+
})()}
|
|
69
|
+
</Suspense>
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
let previousRunParamsFingerprint: string | undefined = undefined;
|
|
74
|
+
|
|
75
|
+
function init(
|
|
76
|
+
params: Pick<KcAccountUiLoaderProps, "kcContext" | "content" | "logoUrl">,
|
|
77
|
+
) {
|
|
78
|
+
exit_condition: {
|
|
79
|
+
const paramsFingerprint = JSON.stringify(params);
|
|
80
|
+
|
|
81
|
+
if (previousRunParamsFingerprint === undefined) {
|
|
82
|
+
previousRunParamsFingerprint = paramsFingerprint;
|
|
83
|
+
break exit_condition;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
if (paramsFingerprint !== previousRunParamsFingerprint) {
|
|
87
|
+
window.location.reload();
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
{
|
|
95
|
+
const url = new URL(window.location.href);
|
|
96
|
+
|
|
97
|
+
url.searchParams.delete("referrer");
|
|
98
|
+
url.searchParams.delete("referrer_uri");
|
|
99
|
+
|
|
100
|
+
window.history.replaceState({}, "", url.toString());
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
const { content = defaultContent, kcContext } = params;
|
|
104
|
+
|
|
105
|
+
const logoUrl = (() => {
|
|
106
|
+
const logoUrl_params = params.logoUrl ?? defaultLogoSvgUrl;
|
|
107
|
+
|
|
108
|
+
const url = new URL(
|
|
109
|
+
logoUrl_params.startsWith("http")
|
|
110
|
+
? logoUrl_params
|
|
111
|
+
: joinPath(window.location.origin, logoUrl_params),
|
|
112
|
+
);
|
|
113
|
+
|
|
114
|
+
return url.href.substring(url.origin.length);
|
|
115
|
+
})();
|
|
116
|
+
|
|
117
|
+
const resourceUrl = kcContext.resourceUrl;
|
|
118
|
+
|
|
119
|
+
if (!logoUrl.startsWith(resourceUrl)) {
|
|
120
|
+
const error = new Error(`ERROR: The logo url can't be an external url.`);
|
|
121
|
+
alert(error.message);
|
|
122
|
+
throw error;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
const environment = {
|
|
126
|
+
serverBaseUrl: kcContext.serverBaseUrl,
|
|
127
|
+
authUrl: kcContext.authUrl,
|
|
128
|
+
authServerUrl: kcContext.authServerUrl,
|
|
129
|
+
realm: kcContext.realm.name,
|
|
130
|
+
clientId: kcContext.clientId,
|
|
131
|
+
resourceUrl,
|
|
132
|
+
logo: logoUrl.substring(resourceUrl.length),
|
|
133
|
+
logoUrl: logoUrl,
|
|
134
|
+
baseUrl: `${kcContext.baseUrl.scheme}:${kcContext.baseUrl.rawSchemeSpecificPart}`,
|
|
135
|
+
locale: kcContext.locale,
|
|
136
|
+
referrerName: kcContext.referrerName ?? "",
|
|
137
|
+
referrerUrl: kcContext.referrer_uri ?? "",
|
|
138
|
+
features: {
|
|
139
|
+
isRegistrationEmailAsUsername:
|
|
140
|
+
kcContext.realm.registrationEmailAsUsername,
|
|
141
|
+
isEditUserNameAllowed: kcContext.realm.editUsernameAllowed,
|
|
142
|
+
isInternationalizationEnabled:
|
|
143
|
+
kcContext.realm.isInternationalizationEnabled,
|
|
144
|
+
isLinkedAccountsEnabled: kcContext.realm.identityFederationEnabled,
|
|
145
|
+
isMyResourcesEnabled:
|
|
146
|
+
kcContext.realm.userManagedAccessAllowed &&
|
|
147
|
+
kcContext.isAuthorizationEnabled,
|
|
148
|
+
deleteAccountAllowed: kcContext.deleteAccountAllowed,
|
|
149
|
+
updateEmailFeatureEnabled: kcContext.updateEmailFeatureEnabled,
|
|
150
|
+
updateEmailActionEnabled: kcContext.updateEmailActionEnabled,
|
|
151
|
+
isViewGroupsEnabled: kcContext.isViewGroupsEnabled,
|
|
152
|
+
isOid4VciEnabled: kcContext.isOid4VciEnabled,
|
|
153
|
+
},
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
{
|
|
157
|
+
assert<typeof environment extends Environment ? true : false>();
|
|
158
|
+
|
|
159
|
+
const script = document.createElement("script");
|
|
160
|
+
script.id = "environment";
|
|
161
|
+
script.type = "application/json";
|
|
162
|
+
script.textContent = JSON.stringify(environment, null, 1);
|
|
163
|
+
|
|
164
|
+
document.body.appendChild(script);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
const realFetch = window.fetch;
|
|
168
|
+
|
|
169
|
+
window.fetch = async function fetch(...args) {
|
|
170
|
+
const [url] = args;
|
|
171
|
+
|
|
172
|
+
if (url === joinPath(environment.resourceUrl, "/content.json")) {
|
|
173
|
+
return {
|
|
174
|
+
json: () => Promise.resolve(content),
|
|
175
|
+
} as Response;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
return realFetch(...args);
|
|
179
|
+
};
|
|
180
|
+
}
|
package/src/global.d.ts
CHANGED
package/src/index.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./KcAccountUiLoader";
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
const content = [
|
|
2
|
+
{
|
|
3
|
+
"label": "personalInfo",
|
|
4
|
+
"path": "/"
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
"label": "accountSecurity",
|
|
8
|
+
"children": [
|
|
9
|
+
{
|
|
10
|
+
"label": "signingIn",
|
|
11
|
+
"path": "account-security/signing-in"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"label": "deviceActivity",
|
|
15
|
+
"path": "account-security/device-activity"
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"label": "linkedAccounts",
|
|
19
|
+
"path": "account-security/linked-accounts",
|
|
20
|
+
"isVisible": "isLinkedAccountsEnabled"
|
|
21
|
+
}
|
|
22
|
+
]
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"label": "applications",
|
|
26
|
+
"path": "applications"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"label": "groups",
|
|
30
|
+
"path": "groups",
|
|
31
|
+
"isVisible": "isViewGroupsEnabled"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"label": "resources",
|
|
35
|
+
"path": "resources",
|
|
36
|
+
"isVisible": "isMyResourcesEnabled"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"label": "oid4vci",
|
|
40
|
+
"path": "oid4vci",
|
|
41
|
+
"isVisible": "isOid4VciEnabled"
|
|
42
|
+
}
|
|
43
|
+
] as const;
|
|
44
|
+
export default content;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg id="Guides" xmlns="http://www.w3.org/2000/svg" viewBox="0 230 600 130"><defs><style>.cls-1{fill:none;}.cls-2{fill:#4d4d4d;}.cls-3{clip-path:url(#clip-path);}.cls-4{fill:url(#linear-gradient);}.cls-5{fill:#e1e1e1;}.cls-6{fill:#585858;}.cls-7{fill:#696969;}.cls-8{fill:#5e5e5e;}.cls-9{fill:#6d6d6d;}.cls-10{fill:#636363;}.cls-11{fill:#737373;}.cls-12{fill:#757575;}.cls-13{fill:#646464;}.cls-14{fill:#6c6c6c;}.cls-15{fill:#606060;}.cls-16{fill:#707070;}.cls-17{fill:#767676;}.cls-18{fill:#797979;}.cls-19{fill:#7f7f7f;}.cls-20{fill:#868686;}.cls-21{fill:#8a8a8a;}.cls-22{fill:#7d7d7d;}.cls-23{fill:#919191;}.cls-24{fill:#858585;}.cls-25{fill:#929292;}.cls-26{fill:#898989;}.cls-27{fill:#8f8f8f;}.cls-28{fill:#999;}.cls-29{fill:#979797;}.cls-30{fill:#9f9f9f;}.cls-31{fill:#a6a6a6;}.cls-32{fill:#a0a0a0;}.cls-33{fill:#9b9b9b;}.cls-34{fill:#9d9d9d;}.cls-35{fill:#a3a3a3;}.cls-36{fill:#aaa;}.cls-37{fill:#a9a9a9;}.cls-38{fill:#989898;}.cls-39{fill:#b1b1b1;}.cls-40{fill:#9e9e9e;}.cls-41{fill:#a4a4a4;}.cls-42{fill:#aeaeae;}.cls-43{fill:#ababab;}.cls-44{fill:#b4b4b4;}.cls-45{fill:#a2a2a2;}.cls-46{fill:#bcbcbc;}.cls-47{fill:#b8b8b8;}.cls-48{fill:#b0b0b0;}.cls-49{fill:#b9b9b9;}.cls-50{fill:#bfbfbf;}.cls-51{fill:#b5b5b5;}.cls-52{fill:#bdbdbd;}.cls-53{fill:#b6b6b6;}.cls-54{fill:#c3c3c3;}.cls-55{fill:#c9c9c9;}.cls-56{fill:#bbb;}.cls-57{fill:#c1c1c1;}.cls-58{fill:#c6c6c6;}.cls-59{fill:#cdcdcd;}.cls-60{fill:#ccc;}.cls-61{fill:#c2c2c2;}.cls-62{fill:#c8c8c8;}.cls-63{fill:#c7c7c7;}.cls-64{fill:#cecece;}.cls-65{fill:#d3d3d3;}.cls-66{fill:#d5d5d5;}.cls-67{fill:#d0d0d0;}.cls-68{fill:#d9d9d9;}.cls-69{fill:#d4d4d4;}.cls-70{fill:#d8d8d8;}.cls-71{fill:#e2e2e2;}.cls-72{fill:#e4e4e4;}.cls-73{fill:#dedede;}.cls-74{fill:#c5c5c5;}.cls-75{fill:#d1d1d1;}.cls-76{fill:#cbcbcb;}.cls-77{fill:#d7d7d7;}.cls-78{fill:#ddd;}.cls-79{fill:#e3e3e3;}.cls-80{fill:#00b8e3;}.cls-81{fill:#33c6e9;}.cls-82{fill:#008aaa;}</style><clipPath id="clip-path"><path class="cls-1" d="M580.49,328.6H567a0.58,0.58,0,0,1-.46-0.23l-1.05-1.43-2.88-3.87-7.86-10.58-4.39-5.92a0.56,0.56,0,0,0-.86,0l-4.6,5.12-0.52.59a0.55,0.55,0,0,0-.14.37V328a0.57,0.57,0,0,1-.56.56H532a0.56,0.56,0,0,1-.56-0.56V272a0.56,0.56,0,0,1,.56-0.56h11.63a0.56,0.56,0,0,1,.56.56v21.47a0.56,0.56,0,0,0,1,.38l6.42-7,9.55-10.39,4.48-4.87a0.56,0.56,0,0,1,.41-0.18h14.28a0.56,0.56,0,0,1,.56.58,0.63,0.63,0,0,1-.14.35l-6.43,7.15-10.7,11.9-4.46,5a0.55,0.55,0,0,0,0,.69l5.56,7.77,5.06,7.13,0.62,0.87,3.83,5.36,4,5.62,2.79,3.9A0.57,0.57,0,0,1,580.49,328.6ZM527,327.81a0.57,0.57,0,0,1-.51.79H514.11a0.55,0.55,0,0,1-.51-0.34l-0.25-.55h0l-4.78-11.11a0.55,0.55,0,0,0-.51-0.34H484.84a0.57,0.57,0,0,0-.52.34l-0.71,1.65-4.31,10v0a0.56,0.56,0,0,1-.5.32H466.43a0.56,0.56,0,0,1-.51-0.79l0.86-2,5.83-13.49h0l0.21-.48,0.25-.56,0.11-.28,1.94-4.5v0l0,0h0l15-34.67a0.57,0.57,0,0,1,.51-0.34h11.61a0.55,0.55,0,0,1,.51.34l7.79,18,3.85,8.91,4.31,10,8.15,18.87Zm-23.71-23.55-0.82-1.91-2.74-6.4L497,289.63a0.57,0.57,0,0,0-1,0l-4.86,11.21-1.48,3.42a0.56,0.56,0,0,0,.51.78h12.61A0.56,0.56,0,0,0,503.26,304.26Zm-36.64,6.44a24.47,24.47,0,0,1-1.14,2.55,28.69,28.69,0,0,1-5.52,7.42l0,0a30.51,30.51,0,0,1-3.13,2.68,29,29,0,0,1-16.14,5.72c-0.68,0-1.38.07-2.08,0.07a29.86,29.86,0,0,1-16.72-4.73,30.35,30.35,0,0,1-4.62-3.74c-0.57-.56-1.12-1.13-1.63-1.72a28.24,28.24,0,0,1-7-19.33,32.44,32.44,0,0,1,.37-5h0l-0.26-.38,0.42-.63a27.71,27.71,0,0,1,8.14-15.07,30.43,30.43,0,0,1,4.31-3.52,28.1,28.1,0,0,1,10.22-4.28h0a32.86,32.86,0,0,1,6.8-.67,29.36,29.36,0,0,1,21.35,8.47,28,28,0,0,1,8.53,17.89v0c0.1,1,.14,2.08.14,3.16A30.07,30.07,0,0,1,466.63,310.7Zm-11-11a18.72,18.72,0,0,0-4.4-12.46,7.21,7.21,0,0,0-.5-0.59,15.67,15.67,0,0,0-12.06-5.39,17.27,17.27,0,0,0-3.69.39,15.75,15.75,0,0,0-8.37,5,18.58,18.58,0,0,0-4.9,12.6c0,0.15,0,.29,0,0.45a18.54,18.54,0,0,0,4.91,13,16.28,16.28,0,0,0,1.48,1.44,15.69,15.69,0,0,0,3.22,2.21,16.71,16.71,0,0,0,14.94-.12,16.26,16.26,0,0,0,4-3c0.17-.17.34-0.34,0.5-0.52a18.55,18.55,0,0,0,2.77-3.92A19.13,19.13,0,0,0,455.6,299.69Zm-47.7,17.53H384.65a0.55,0.55,0,0,1-.56-0.55V272a0.55,0.55,0,0,0-.32-0.5,0.49,0.49,0,0,0-.24-0.06H371.9a0.56,0.56,0,0,0-.56.56v56a0.56,0.56,0,0,0,.56.56h36a0.56,0.56,0,0,0,.56-0.56V317.78A0.56,0.56,0,0,0,407.9,317.22Zm-63.24-47c-0.92-.08-1.85-0.11-2.8-0.11a29.36,29.36,0,0,0-21.31,8.51,30.65,30.65,0,0,0-2.88,3.25h0a28.57,28.57,0,0,0-5.83,18,30.78,30.78,0,0,0,1.86,10.9,26.61,26.61,0,0,0,2.87,5.6h0a28.23,28.23,0,0,0,3.79,4.53,28.92,28.92,0,0,0,5.7,4.34h0c0.51,0.29,1,.58,1.57.85q0.57,0.29,1.17.54h0a32.63,32.63,0,0,0,13.27,2.59,29.57,29.57,0,0,0,4.24-.3h0c0.88-.12,1.76-0.29,2.62-0.5a29.64,29.64,0,0,0,13.31-7.35c0.81-.74,1.61-1.55,2.39-2.4a0.57,0.57,0,0,0,0-.78l-7.38-7.59a0.54,0.54,0,0,0-.49-0.16,0.61,0.61,0,0,0-.33.2,18.73,18.73,0,0,1-15,7,16.65,16.65,0,0,1-5.78-1,16.21,16.21,0,0,1-5.91-3.85,15.61,15.61,0,0,1-3.74-5.94,20.28,20.28,0,0,1-1.09-6.85q0-7.43,4.44-12c0.22-.22.44-0.44,0.67-0.66a17.52,17.52,0,0,1,12.31-4.7,18.45,18.45,0,0,1,14.64,7,0.55,0.55,0,0,0,.84,0l7.18-8.14a0.58,0.58,0,0,0,0-.76A30,30,0,0,0,344.66,270.24Zm-32.26,5.82,2.17-3.78a0.56,0.56,0,0,0-.48-0.84H301.55a0.57,0.57,0,0,0-.48.28l-11.36,19.55h0l-0.61.45-0.46.35a0.58,0.58,0,0,1-.24-0.22l-0.19-.32-0.29-.48L276.7,271.71a0.57,0.57,0,0,0-.48-0.28H263.68a0.56,0.56,0,0,0-.48.84l5.44,9.5L278.47,299l4,6.93a0.57,0.57,0,0,1,.08.28V328a0.56,0.56,0,0,0,.56.56H294.7a0.56,0.56,0,0,0,.56-0.56V306.17a0.57,0.57,0,0,1,.08-0.28l2.8-4.9,10.64-18.61,2.18-3.79,1.44-2.53h0Zm-53.69,41.26H230.48a0.56,0.56,0,0,1-.56-0.56V306a0.57,0.57,0,0,1,.56-0.56H255a0.56,0.56,0,0,0,.56-0.56v-9.75a0.56,0.56,0,0,0-.56-0.56H230.48a0.56,0.56,0,0,1-.56-0.56V283.36a0.56,0.56,0,0,1,.56-0.56h27.34a0.56,0.56,0,0,0,.56-0.56V272a0.56,0.56,0,0,0-.56-0.56h-40.1a0.56,0.56,0,0,0-.56.56v56a0.56,0.56,0,0,0,.56.56h41a0.56,0.56,0,0,0,.56-0.56V317.87A0.56,0.56,0,0,0,258.72,317.31ZM210.59,327q-2.18-3-5.3-7.43-2.44-3.41-5.43-7.62l-0.2-.29q-7.44-10.46-10.43-14.62a0.56,0.56,0,0,1,0-.69l5.09-5.65h0l4.19-4.66,4-4.48,8.28-9.2a0.56,0.56,0,0,0-.42-0.93H196.18a0.57,0.57,0,0,0-.42.18l-8.85,9.61-11.6,12.62a0.56,0.56,0,0,1-1-.38V272a0.55,0.55,0,0,0-.56-0.55H162.15a0.56,0.56,0,0,0-.56.56v56a0.56,0.56,0,0,0,.56.56h11.63a0.56,0.56,0,0,0,.56-0.56V312.61a0.55,0.55,0,0,1,.14-0.37l2.42-2.71,2.7-3a0.56,0.56,0,0,1,.86,0l8.07,10.85,5.8,7.8,2.33,3.14a0.55,0.55,0,0,0,.45.23h13.51a0.57,0.57,0,0,0,.46-0.89Zm-55.66-55.65h-119a1.08,1.08,0,0,0-.91.51s0,0,0,0l-0.59,1-7.28,12.62-8,13.94a1,1,0,0,0,0,1.05l1.75,3L35,328.11a1.06,1.06,0,0,0,.92.53h119a1.18,1.18,0,0,0,1.17-1.18v-54.9A1.19,1.19,0,0,0,154.93,271.37Z"/></clipPath><linearGradient id="linear-gradient" x1="17.66" y1="300.84" x2="584.47" y2="300.84" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#e6e6e6"/><stop offset="1" stop-color="#595959"/></linearGradient></defs><title>keycloak_deliverables</title><path class="cls-2" d="M135.1,271.36a1,1,0,0,1-.91-0.52l-15.91-27.58a1.08,1.08,0,0,0-.93-0.52H52.45a1,1,0,0,0-.91.52L35,271.88a0,0,0,0,0,0,0L19.08,299.47a1.07,1.07,0,0,0,0,1.05L35,328.1l16.53,28.65a1,1,0,0,0,.91.52h64.91a1.08,1.08,0,0,0,.93-0.52l15.92-27.58a1,1,0,0,1,.91-0.52h19.81a1.19,1.19,0,0,0,1.19-1.19v-54.9a1.19,1.19,0,0,0-1.19-1.19H135.1Z"/><g class="cls-3"><rect class="cls-4" x="17.66" y="262.56" width="566.81" height="76.56"/></g><path class="cls-5" d="M38.62,297.11l-17.78,6.45-1.75-3a1,1,0,0,1,0-1.05l8-13.94Z"/><path class="cls-6" d="M580.49,328.6h-7.34l-6.7-4.2,11.71-.59,2.79,3.9A0.57,0.57,0,0,1,580.49,328.6Z"/><path class="cls-6" d="M573.15,328.6H567a0.58,0.58,0,0,1-.46-0.23l-1.05-1.43,1-2.55Z"/><path class="cls-7" d="M580.89,272a0.63,0.63,0,0,1-.14.35l-6.43,7.15-0.4-4Z"/><path class="cls-8" d="M578.16,323.81l-11.71.59,7.72-6.21Z"/><path class="cls-9" d="M580.89,272l-7,3.49,1.19-4.07h5.23A0.56,0.56,0,0,1,580.89,272Z"/><path class="cls-10" d="M574.17,318.19l-7.72,6.21,3.89-11.57Z"/><polygon class="cls-11" points="575.1 271.43 573.91 275.5 567.14 271.43 575.1 271.43"/><path class="cls-12" d="M544.21,272v5.79l-12.75,1V272a0.56,0.56,0,0,1,.56-0.56h11.63A0.56,0.56,0,0,1,544.21,272Z"/><path class="cls-12" d="M573.91,275.5l-12.75,1,4.48-4.87a0.56,0.56,0,0,1,.41-0.18h1.09Z"/><path class="cls-13" d="M570.34,312.83l-3.89,11.57-3.86-1.32-7.86-10.58,9.93-7.67,5.06,7.13Z"/><polygon class="cls-9" points="544.22 277.78 544.22 284.06 531.46 279.23 531.46 278.77 544.22 277.78"/><polygon class="cls-9" points="574.31 279.51 563.61 291.41 551.61 286.86 561.16 276.48 573.91 275.5 574.31 279.51"/><path class="cls-14" d="M564.67,304.83l-9.93,7.67-4.39-5.92a0.56,0.56,0,0,0-.86,0l-4.6,5.12-13.42-30.46v-2l12.75,4.83v9.4a0.56,0.56,0,0,0,1,.38l6.42-7,12,4.54-4.46,5a0.55,0.55,0,0,0,0,.69Z"/><polygon class="cls-15" points="566.45 324.39 565.48 326.94 562.6 323.07 566.45 324.39"/><path class="cls-16" d="M544.88,311.65l-0.52.59a0.55,0.55,0,0,0-.14.37V315l-12.75-10.82v-23Z"/><path class="cls-10" d="M527,327.81a0.57,0.57,0,0,1-.51.79H524.6l2.26-1Z"/><path class="cls-10" d="M544.21,319.55V328a0.57,0.57,0,0,1-.56.56H532a0.56,0.56,0,0,1-.56-0.56v-2.6Z"/><path class="cls-9" d="M526.86,327.55l-2.26,1H514.11a0.55,0.55,0,0,1-.51-0.34l-0.25-.55h0l5.36-19Z"/><polygon class="cls-9" points="544.22 315.03 544.22 319.55 531.46 325.43 531.46 304.21 544.22 315.03"/><path class="cls-17" d="M518.71,308.68l-5.36,19-4.78-11.11a0.55,0.55,0,0,0-.51-0.34H484.83a0.57,0.57,0,0,0-.52.34l-0.71,1.65-10.8-6.39,0.25-.56L493.6,305h9.15a0.56,0.56,0,0,0,.51-0.78l-0.82-1.91,12-3.64Z"/><path class="cls-18" d="M493.6,305L473,311.29l0.11-.28,17.94-10.18-1.48,3.42a0.56,0.56,0,0,0,.51.78h3.46Z"/><polygon class="cls-18" points="514.4 298.71 502.44 302.35 499.71 295.95 510.55 289.8 514.4 298.71"/><path class="cls-12" d="M483.6,318.24l-4.31,10v0l-6.69-15.94h0l0.21-.48Z"/><path class="cls-19" d="M510.55,289.8l-10.84,6.15L497,289.63a0.57,0.57,0,0,0-1,0l-4.86,11.21L473.16,311l1.94-4.5v0l0,0h0l19.84-35h7.26a0.55,0.55,0,0,1,.51.34Z"/><path class="cls-20" d="M466.21,287.57a28.28,28.28,0,0,1,2.25,8.91Z"/><path class="cls-20" d="M495,271.43l-19.84,35,15-34.67a0.57,0.57,0,0,1,.51-0.34H495Z"/><path class="cls-21" d="M468.6,299.65a30.07,30.07,0,0,1-2,11.05l-13.16-1.93a19.13,19.13,0,0,0,2.14-9.09,18.72,18.72,0,0,0-4.4-12.46l5.14-11.66a29.67,29.67,0,0,1,3.59,3,28.15,28.15,0,0,1,6.27,9l2.25,8.91v0C468.55,297.52,468.6,298.57,468.6,299.65Z"/><path class="cls-22" d="M454,316.16l11.5-2.91a28.69,28.69,0,0,1-5.52,7.42Z"/><path class="cls-22" d="M479.28,328.27a0.56,0.56,0,0,1-.5.32h-8.34l-3.67-2.78,5.83-13.49Z"/><path class="cls-18" d="M454,316.16l6,4.51,0,0a30.51,30.51,0,0,1-3.13,2.68Z"/><path class="cls-18" d="M470.44,328.6h-4a0.56,0.56,0,0,1-.51-0.79l0.86-2Z"/><path class="cls-20" d="M466.62,310.7a24.47,24.47,0,0,1-1.14,2.55L454,316.16l-3.79-2.95c0.17-.17.34-0.34,0.5-0.52a18.55,18.55,0,0,0,2.77-3.92Z"/><path class="cls-22" d="M456.81,323.38a29,29,0,0,1-16.14,5.72L454,316.16Z"/><path class="cls-23" d="M456.34,275.56l-5.14,11.66a7.21,7.21,0,0,0-.5-0.59,15.67,15.67,0,0,0-12.06-5.39,17.27,17.27,0,0,0-3.69.39l-3.16-10.84a32.86,32.86,0,0,1,6.8-.67A29.62,29.62,0,0,1,456.34,275.56Z"/><path class="cls-24" d="M454,316.16L440.67,329.1c-0.68,0-1.38.07-2.08,0.07a29.86,29.86,0,0,1-16.72-4.73l1.49-8,7.92-.07a16.71,16.71,0,0,0,14.94-.12Z"/><path class="cls-25" d="M434.95,281.64a15.75,15.75,0,0,0-8.37,5,18.58,18.58,0,0,0-4.9,12.6L409,294.4l-0.29-.11,0.42-.63,12.44-18.59a28.1,28.1,0,0,1,10.22-4.28h0Z"/><path class="cls-26" d="M428.06,314.13a15.69,15.69,0,0,0,3.22,2.21l-7.92.07Z"/><path class="cls-26" d="M454,316.16l-7.76.07a16.26,16.26,0,0,0,4-3Z"/><path class="cls-27" d="M428.06,314.13l-4.69,2.28L409,294.68h0l-0.26-.38L409,294.4l12.68,4.84c0,0.15,0,.29,0,0.45a18.54,18.54,0,0,0,4.91,13A16.28,16.28,0,0,0,428.06,314.13Z"/><path class="cls-28" d="M421.56,275.07l-12.44,18.59a27.71,27.71,0,0,1,8.14-15.07A30.43,30.43,0,0,1,421.56,275.07Z"/><path class="cls-26" d="M386.64,328.6l21.82-7.24V328a0.56,0.56,0,0,1-.56.56H386.64Z"/><path class="cls-26" d="M423.36,316.41l-1.49,8a30.35,30.35,0,0,1-4.62-3.74c-0.57-.56-1.12-1.13-1.63-1.72Z"/><path class="cls-23" d="M408.46,317.78v3.57l-21.82,7.24H374.82l11.23-11.38H407.9A0.56,0.56,0,0,1,408.46,317.78Z"/><path class="cls-23" d="M423.36,316.41L415.63,319a28.24,28.24,0,0,1-7-19.33,32.44,32.44,0,0,1,.37-5Z"/><path class="cls-29" d="M386.05,317.22L374.82,328.6H371.9a0.56,0.56,0,0,1-.56-0.56v0l12.75-36v24.72a0.55,0.55,0,0,0,.56.55h1.4Z"/><path class="cls-30" d="M384.09,272v3.18l-0.32-3.69A0.55,0.55,0,0,1,384.09,272Z"/><path class="cls-31" d="M365.07,280.45a0.58,0.58,0,0,1,0,.76l-7.18,8.14a0.55,0.55,0,0,1-.84,0,19,19,0,0,0-9.61-6.37l-2.79-12.73A30,30,0,0,1,365.07,280.45Z"/><path class="cls-31" d="M377.09,271.43l-5.75,5.84V272a0.56,0.56,0,0,1,.56-0.56h5.19Z"/><path class="cls-32" d="M384.09,275.17v13.77l-12.75,3.53v-15.2l5.75-5.84h6.44a0.49,0.49,0,0,1,.24.06Z"/><path class="cls-33" d="M364.7,317.9a0.57,0.57,0,0,1,0,.78c-0.78.86-1.58,1.66-2.39,2.4l-5.5-10.94a0.54,0.54,0,0,1,.49.16Z"/><polygon class="cls-33" points="384.09 288.94 384.09 291.95 371.34 327.99 371.34 292.47 384.09 288.94"/><path class="cls-28" d="M362.34,321.09A29.64,29.64,0,0,1,349,328.43l0.75-12.85a19.5,19.5,0,0,0,6.72-5.24,0.61,0.61,0,0,1,.33-0.2Z"/><path class="cls-34" d="M349.78,315.59L349,328.43c-0.86.21-1.74,0.38-2.62,0.5h0l-17.51-2.29h0q-0.6-.26-1.17-0.54l8.08-9.77a16.65,16.65,0,0,0,5.78,1A19.47,19.47,0,0,0,349.78,315.59Z"/><path class="cls-35" d="M335.75,316.33l-8.08,9.77c-0.53-.27-1.05-0.55-1.57-0.85h0l-9.49-8.88h0a26.61,26.61,0,0,1-2.87-5.6l12.39-4.21a15.61,15.61,0,0,0,3.74,5.94A16.21,16.21,0,0,0,335.75,316.33Z"/><polygon class="cls-36" points="308.33 277.29 312.4 276.06 310.96 278.59 308.33 277.29"/><path class="cls-36" d="M347.46,283a18.89,18.89,0,0,0-5-.66,17.52,17.52,0,0,0-12.31,4.7c-0.24.22-.46,0.44-0.67,0.66l-11.78-5.78h0a30.65,30.65,0,0,1,2.88-3.25,29.36,29.36,0,0,1,21.31-8.51c1,0,1.88,0,2.8.11Z"/><polygon class="cls-37" points="308.33 277.29 310.96 278.59 308.78 282.38 308.33 277.29"/><path class="cls-37" d="M325,299.68a20.28,20.28,0,0,0,1.09,6.85l-12.39,4.21a30.78,30.78,0,0,1-1.86-10.9,28.57,28.57,0,0,1,5.83-18l11.78,5.78Q325,292.25,325,299.68Z"/><path class="cls-38" d="M328.86,326.64h0Z"/><path class="cls-38" d="M346.38,328.94a29.57,29.57,0,0,1-4.24.3,32.63,32.63,0,0,1-13.27-2.59Z"/><path class="cls-39" d="M314.57,272.27L312.4,276l-4.08,1.25-2.05-5.86h7.81A0.56,0.56,0,0,1,314.57,272.27Z"/><polygon class="cls-40" points="295.26 321.73 295.26 323.23 292.37 321.31 295.26 321.73"/><path class="cls-34" d="M295.26,323.23V328a0.56,0.56,0,0,1-.56.56H292l0.39-7.29Z"/><polygon class="cls-41" points="292.37 321.31 295.26 319.82 295.26 321.73 292.37 321.31"/><path class="cls-41" d="M326.09,325.25a28.92,28.92,0,0,1-5.7-4.34,28.23,28.23,0,0,1-3.79-4.53Z"/><polygon class="cls-42" points="308.78 282.38 298.14 300.99 287.74 292.74 288.63 292.07 289.09 291.72 289.7 291.27 289.7 291.26 289.71 291.25 308.33 277.29 308.78 282.38"/><path class="cls-43" d="M298.14,301l-2.8,4.9a0.57,0.57,0,0,0-.08.28v13.66l-2.89,1.48-4.63-28.57Z"/><path class="cls-44" d="M288.4,291.85a0.58,0.58,0,0,0,.24.22l-0.89.67,0.47-1.21Z"/><path class="cls-44" d="M308.33,277.29l-18.62,14,11.36-19.55a0.57,0.57,0,0,1,.48-0.28h4.72Z"/><polygon class="cls-45" points="292.37 321.31 291.98 328.6 283.15 328.6 292.37 321.31"/><path class="cls-46" d="M258.38,272v3.9l-7.76-4.46h7.2A0.56,0.56,0,0,1,258.38,272Z"/><path class="cls-46" d="M287.92,291l-0.18,1.69-19.11-11-5.44-9.5a0.56,0.56,0,0,1,.48-0.84h12.54a0.57,0.57,0,0,1,.48.28Z"/><polygon class="cls-47" points="288.21 291.53 287.74 292.74 287.92 291.05 288.21 291.53"/><path class="cls-37" d="M292.37,321.31l-9.22,7.29h-0.09a0.56,0.56,0,0,1-.56-0.56V323.7Z"/><path class="cls-48" d="M282.51,316.14v-10a0.57,0.57,0,0,0-.08-0.28l-4-6.93,9.28-6.23,4.63,28.57Z"/><path class="cls-42" d="M256.1,328.6l3.17-6.88V328a0.56,0.56,0,0,1-.56.56H256.1Z"/><polygon class="cls-42" points="292.37 321.31 282.5 323.7 282.5 316.14 292.37 321.31"/><path class="cls-49" d="M258.38,275.89v6.35a0.56,0.56,0,0,1-.56.56h-5.39l-6.2-11.37h4.38Z"/><polygon class="cls-49" points="287.74 292.74 278.47 298.96 268.63 281.77 287.74 292.74"/><polygon class="cls-50" points="252.44 282.8 246.77 282.8 238.32 271.89 238.99 271.43 246.24 271.43 252.44 282.8"/><path class="cls-51" d="M259.28,317.87v3.85l-3.17,6.88h-4.35l-33.24-16,11.41-1.24v5.43a0.56,0.56,0,0,0,.56.56h28.24A0.56,0.56,0,0,1,259.28,317.87Z"/><polygon class="cls-52" points="246.77 282.8 233.01 282.8 238.32 271.89 246.77 282.8"/><path class="cls-52" d="M255.52,295.13v9.75a0.56,0.56,0,0,1-.56.56H230.48a0.57,0.57,0,0,0-.56.56v5.31l-11.41,1.24,11.41-23.42V294a0.56,0.56,0,0,0,.56.56H255A0.56,0.56,0,0,1,255.52,295.13Z"/><polygon class="cls-53" points="251.75 328.6 223.55 328.6 218.51 312.55 251.75 328.6"/><path class="cls-54" d="M238.32,271.9L233,282.8h-2.53a0.56,0.56,0,0,0-.56.56v5.78l-11.41,23.42-1.34-2.2V281.77Z"/><path class="cls-55" d="M210.87,272.36l-8.28,9.2-1.53-10.13h9.39A0.56,0.56,0,0,1,210.87,272.36Z"/><path class="cls-55" d="M238.32,271.9l-21.16,9.87V272a0.56,0.56,0,0,1,.56-0.56h17.6Z"/><path class="cls-56" d="M205.29,319.58q3.12,4.39,5.3,7.43l-12.93-3.38Z"/><path class="cls-56" d="M223.55,328.6h-5.83a0.56,0.56,0,0,1-.56-0.56V313.27l1.34-.71Z"/><path class="cls-53" d="M210.63,328.6H199.16l-1.49-5L210.59,327l0.49,0.69A0.57,0.57,0,0,1,210.63,328.6Z"/><path class="cls-57" d="M199.86,312q3,4.22,5.43,7.62l-7.62,4,2-12Z"/><polygon class="cls-57" points="218.51 312.55 217.17 313.27 217.17 310.36 218.51 312.55"/><path class="cls-58" d="M199.66,311.67l-2,12-9.12-6.2-8.07-10.85a0.56,0.56,0,0,0-.86,0l-2.7,3-14.5-9.85,32-9-5.09,5.65a0.56,0.56,0,0,0,0,.69Q192.21,301.2,199.66,311.67Z"/><path class="cls-47" d="M199.16,328.6h-2a0.55,0.55,0,0,1-.45-0.23l-2.33-3.14,3.33-1.61Z"/><polygon class="cls-59" points="168.07 273.44 174.34 271.98 174.34 276.03 168.07 273.44"/><path class="cls-59" d="M202.6,281.56l-4,4.48-11.65-4.82,8.85-9.61a0.57,0.57,0,0,1,.42-0.18h4.89Z"/><path class="cls-60" d="M198.57,286l-4.19,4.66h0l-32,9,5.66-26.25,6.27,2.59v17.43a0.56,0.56,0,0,0,1,.38l11.61-12.62Z"/><path class="cls-61" d="M162.4,299.68l14.5,9.85-2.42,2.71a0.55,0.55,0,0,0-.14.37V328a0.56,0.56,0,0,1-.56.56h-0.16Z"/><polygon class="cls-61" points="197.66 323.63 194.34 325.23 188.54 317.43 197.66 323.63"/><polygon class="cls-62" points="144.39 302.26 156.11 300.59 156.11 314.18 144.39 302.26"/><polygon class="cls-62" points="173.62 328.6 170.3 328.6 161.59 319.74 161.59 299.8 162.4 299.69 173.62 328.6"/><path class="cls-61" d="M144.39,302.26l11.72,11.92v13.28a1.18,1.18,0,0,1-1.17,1.18H141.31Z"/><path class="cls-61" d="M170.3,328.6h-8.15a0.56,0.56,0,0,1-.56-0.56v-8.3Z"/><polygon class="cls-63" points="144.39 302.26 141.31 328.63 124.91 328.63 119.94 316.67 144.39 302.26"/><polygon class="cls-64" points="144.39 302.26 156.11 288 156.11 300.59 144.39 302.26"/><polygon class="cls-64" points="168.07 273.44 162.4 299.69 161.59 299.8 161.59 281.32 168.07 273.44"/><path class="cls-65" d="M156.11,272.55V288l-11.72,14.27-8.84-30.9h19.37A1.19,1.19,0,0,1,156.11,272.55Z"/><polygon class="cls-65" points="168.07 273.44 161.59 281.32 161.59 272.06 168.07 273.44"/><polygon class="cls-58" points="124.91 328.63 116.26 328.63 114.02 325.42 119.94 316.67 124.91 328.63"/><polygon class="cls-66" points="144.39 302.26 111.96 288.55 129.02 271.36 135.56 271.36 144.39 302.26"/><path class="cls-67" d="M112,288.55l8,28.12,24.45-14.41Z"/><polygon class="cls-50" points="116.26 328.63 113.92 328.63 114.02 325.42 116.26 328.63"/><polygon class="cls-68" points="129.02 271.36 111.96 288.55 108.88 273.18 115.46 271.36 129.02 271.36"/><path class="cls-69" d="M112,288.55l-39.37,9.08L114,325.42Z"/><path class="cls-67" d="M112,288.55L114,325.42l5.92-8.75Z"/><path class="cls-68" d="M108.88,273.18L72.59,297.63,112,288.55Z"/><polygon class="cls-70" points="72.59 297.63 55.52 328.63 45.8 328.63 38.62 297.11 72.59 297.63"/><path class="cls-71" d="M55.09,271.36L38.62,297.11l-4.2-24.2,0.59-1s0,0,0,0a1.08,1.08,0,0,1,.91-0.51H55.09Z"/><path class="cls-70" d="M45.8,328.63H35.93A1.06,1.06,0,0,1,35,328.1L20.83,303.56l17.78-6.45Z"/><polygon class="cls-72" points="38.62 297.11 27.13 285.53 34.41 272.91 38.62 297.11"/><polygon class="cls-73" points="90.57 271.36 79.22 271.36 61.83 271.36 72.59 297.63 108.88 273.18 97.94 271.36 90.57 271.36"/><polygon class="cls-73" points="57.34 271.36 55.09 271.36 38.62 297.11 72.59 297.63 61.83 271.36 57.34 271.36"/><polygon class="cls-74" points="106.12 328.63 112.45 328.63 113.92 328.63 114.02 325.42 106.12 328.63"/><polygon class="cls-67" points="114.02 325.42 72.59 297.63 80.05 328.63 90.57 328.63 106.12 328.63 114.02 325.42"/><polygon class="cls-75" points="55.52 328.63 57.34 328.63 79.22 328.63 80.05 328.63 72.59 297.63 55.52 328.63"/><polygon class="cls-62" points="238.99 271.43 238.32 271.89 238 271.43 238.99 271.43"/><polygon class="cls-76" points="238.32 271.89 235.33 271.43 238 271.43 238.32 271.89"/><path class="cls-75" d="M174.34,272l-6.27,1.45,1.72-2h4A0.55,0.55,0,0,1,174.34,272Z"/><polygon class="cls-77" points="169.79 271.43 168.07 273.44 167.72 271.43 169.79 271.43"/><path class="cls-68" d="M168.07,273.44l-6.48-1.38V272a0.56,0.56,0,0,1,.56-0.56h5.57Z"/><polygon class="cls-78" points="108.99 271.36 108.88 273.18 115.46 271.36 112.45 271.36 108.99 271.36"/><polygon class="cls-79" points="97.94 271.36 108.88 273.18 107.87 271.36 97.94 271.36"/><polygon class="cls-71" points="107.87 271.36 108.88 273.18 108.99 271.36 107.87 271.36"/><path class="cls-80" d="M79.11,271.86l-16,27.72A0.93,0.93,0,0,0,63,300H51.83l22-38.05a0.86,0.86,0,0,1,.33.32l0,0,5,8.65A1,1,0,0,1,79.11,271.86Z"/><path class="cls-81" d="M79.09,329.16l-5,8.61a1,1,0,0,1-.34.32L51.82,300H63a0.85,0.85,0,0,0,.11.43,0.1,0.1,0,0,0,0,0l16,27.7A0.94,0.94,0,0,1,79.09,329.16Z"/><path class="cls-82" d="M73.78,262L51.83,300h0l-5.51,9.54L41,300.46a0.85,0.85,0,0,1-.11-0.43,0.93,0.93,0,0,1,.12-0.45l5.33-9.23,16.18-28a0.94,0.94,0,0,1,.82-0.48h9.93A1,1,0,0,1,73.78,262Z"/><path class="cls-80" d="M73.78,338.09a1,1,0,0,1-.47.13H63.38a0.94,0.94,0,0,1-.82-0.48L47.77,312.12l-1.46-2.54L51.82,300Z"/><path class="cls-82" d="M118,300L96,338.09a1,1,0,0,1-.33-0.32l0,0-5-8.63a1,1,0,0,1,0-.89l16-27.72a0.93,0.93,0,0,0,.13-0.48H118Z"/><path class="cls-80" d="M128.83,300a0.93,0.93,0,0,1-.13.48l-21.52,37.26a0.94,0.94,0,0,1-.8.44H96.46a1,1,0,0,1-.48-0.13L118,300l5.51-9.53,5.23,9.06A0.92,0.92,0,0,1,128.83,300Z"/><path class="cls-80" d="M118,300H106.78a0.92,0.92,0,0,0-.13-0.47l-16-27.69a0.94,0.94,0,0,1,0-1l5-8.62A1,1,0,0,1,96,262Z"/><path class="cls-81" d="M123.46,290.48h0L118,300,96,262a1,1,0,0,1,.48-0.13h9.92a0.94,0.94,0,0,1,.8.44Z"/></svg>
|
package/KeycloakAccountUi.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"KeycloakAccountUi.js","sourceRoot":"","sources":["src/KeycloakAccountUi.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,6CAA6C,CAAC;AACrD,OAAO,8CAA8C,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAAE,IAAI,EAAE,MAAM,uCAAuC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,yCAAyC,CAAC;AAEjE,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC3C,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;AAEtC,MAAM,CAAC,OAAO,UAAU,iBAAiB;IACvC,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAE9E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,QAAQ,GAAG,IAAI,CAAC;QAEpB,iBAAiB,CAAC,IAAI,CAAC,GAAG,EAAE;YAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO;YACT,CAAC;YACD,kBAAkB,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACV,QAAQ,GAAG,KAAK,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAC,cAAc,IAAC,MAAM,EAAE,MAAM,GAAI,CAAC;AAC5C,CAAC"}
|
|
File without changes
|