keycloakify 9.5.8 → 9.6.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/account/Fallback.js +12 -0
- package/account/Fallback.js.map +1 -1
- package/account/TemplateProps.d.ts +1 -1
- package/account/kcContext/KcContext.d.ts +144 -1
- package/account/kcContext/KcContext.js.map +1 -1
- package/account/kcContext/kcContextMocks.js +45 -1
- package/account/kcContext/kcContextMocks.js.map +1 -1
- package/account/lib/useGetClassName.js +8 -1
- package/account/lib/useGetClassName.js.map +1 -1
- package/account/pages/Applications.d.ts +7 -0
- package/account/pages/Applications.js +24 -0
- package/account/pages/Applications.js.map +1 -0
- package/account/pages/Log.d.ts +7 -0
- package/account/pages/Log.js +13 -0
- package/account/pages/Log.js.map +1 -0
- package/account/pages/Sessions.d.ts +7 -0
- package/account/pages/Sessions.js +18 -0
- package/account/pages/Sessions.js.map +1 -0
- package/account/pages/Totp.d.ts +7 -0
- package/account/pages/Totp.js +20 -0
- package/account/pages/Totp.js.map +1 -0
- package/bin/keycloakify/generateFtl/pageId.d.ts +1 -1
- package/bin/keycloakify/generateFtl/pageId.js +1 -1
- package/bin/keycloakify/generateFtl/pageId.js.map +1 -1
- package/package.json +21 -1
- package/src/account/Fallback.tsx +12 -0
- package/src/account/TemplateProps.ts +14 -1
- package/src/account/kcContext/KcContext.ts +148 -1
- package/src/account/kcContext/kcContextMocks.ts +68 -0
- package/src/account/lib/useGetClassName.ts +8 -1
- package/src/account/pages/Applications.tsx +138 -0
- package/src/account/pages/Log.tsx +70 -0
- package/src/account/pages/Sessions.tsx +68 -0
- package/src/account/pages/Totp.tsx +236 -0
- package/src/bin/keycloakify/generateFtl/pageId.ts +1 -1
package/account/Fallback.js
CHANGED
@@ -14,14 +14,26 @@ import { lazy, Suspense } from "react";
|
|
14
14
|
import { assert } from "tsafe/assert";
|
15
15
|
const Password = lazy(() => import("../account/pages/Password"));
|
16
16
|
const Account = lazy(() => import("../account/pages/Account"));
|
17
|
+
const Sessions = lazy(() => import("../account/pages/Sessions"));
|
18
|
+
const Totp = lazy(() => import("../account/pages/Totp"));
|
19
|
+
const Applications = lazy(() => import("../account/pages/Applications"));
|
20
|
+
const Log = lazy(() => import("../account/pages/Log"));
|
17
21
|
export default function Fallback(props) {
|
18
22
|
const { kcContext } = props, rest = __rest(props, ["kcContext"]);
|
19
23
|
return (_jsx(Suspense, { children: (() => {
|
20
24
|
switch (kcContext.pageId) {
|
21
25
|
case "password.ftl":
|
22
26
|
return _jsx(Password, Object.assign({ kcContext: kcContext }, rest));
|
27
|
+
case "sessions.ftl":
|
28
|
+
return _jsx(Sessions, Object.assign({ kcContext: kcContext }, rest));
|
23
29
|
case "account.ftl":
|
24
30
|
return _jsx(Account, Object.assign({ kcContext: kcContext }, rest));
|
31
|
+
case "totp.ftl":
|
32
|
+
return _jsx(Totp, Object.assign({ kcContext: kcContext }, rest));
|
33
|
+
case "applications.ftl":
|
34
|
+
return _jsx(Applications, Object.assign({ kcContext: kcContext }, rest));
|
35
|
+
case "log.ftl":
|
36
|
+
return _jsx(Log, Object.assign({ kcContext: kcContext }, rest));
|
25
37
|
}
|
26
38
|
assert(false);
|
27
39
|
})() }));
|
package/account/Fallback.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Fallback.js","sourceRoot":"","sources":["../src/account/Fallback.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAAE,MAAM,EAAe,MAAM,cAAc,CAAC;AAEnD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;AAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAC;
|
1
|
+
{"version":3,"file":"Fallback.js","sourceRoot":"","sources":["../src/account/Fallback.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAAE,MAAM,EAAe,MAAM,cAAc,CAAC;AAEnD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;AAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAC;AACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,oCAAoC,CAAC,CAAC,CAAC;AAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC;AAClE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC;AAClF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC;AAEhE,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAiC;IAC9D,MAAM,EAAE,SAAS,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAA9B,aAAsB,CAAQ,CAAC;IAErC,OAAO,CACH,KAAC,QAAQ,cACJ,CAAC,GAAG,EAAE;YACH,QAAQ,SAAS,CAAC,MAAM,EAAE;gBACtB,KAAK,cAAc;oBACf,OAAO,KAAC,QAAQ,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACxD,KAAK,cAAc;oBACf,OAAO,KAAC,QAAQ,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACxD,KAAK,aAAa;oBACd,OAAO,KAAC,OAAO,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACvD,KAAK,UAAU;oBACX,OAAO,KAAC,IAAI,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBACpD,KAAK,kBAAkB;oBACnB,OAAO,KAAC,YAAY,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;gBAC5D,KAAK,SAAS;oBACV,OAAO,KAAC,GAAG,kBAAC,SAAS,EAAE,SAAS,IAAM,IAAI,EAAI,CAAC;aACtD;YACD,MAAM,CAAkC,KAAK,CAAC,CAAC;QACnD,CAAC,CAAC,EAAE,GACG,CACd,CAAC;AACN,CAAC"}
|
@@ -9,4 +9,4 @@ export type TemplateProps<KcContext extends KcContext.Common, I18nExtended exten
|
|
9
9
|
classes?: Partial<Record<ClassKey, string>>;
|
10
10
|
children: ReactNode;
|
11
11
|
};
|
12
|
-
export type ClassKey = "kcHtmlClass" | "kcBodyClass" | "kcButtonClass" | "kcButtonPrimaryClass" | "kcButtonLargeClass" | "kcButtonDefaultClass";
|
12
|
+
export type ClassKey = "kcHtmlClass" | "kcBodyClass" | "kcButtonClass" | "kcButtonPrimaryClass" | "kcButtonLargeClass" | "kcButtonDefaultClass" | "kcContentWrapperClass" | "kcFormClass" | "kcFormGroupClass" | "kcInputWrapperClass" | "kcLabelClass" | "kcInputClass" | "kcInputErrorMessageClass";
|
@@ -1,4 +1,4 @@
|
|
1
|
-
export type KcContext = KcContext.Password | KcContext.Account;
|
1
|
+
export type KcContext = KcContext.Password | KcContext.Account | KcContext.Sessions | KcContext.Totp | KcContext.Applications | KcContext.Log;
|
2
2
|
export declare namespace KcContext {
|
3
3
|
type Common = {
|
4
4
|
themeVersion: string;
|
@@ -84,6 +84,15 @@ export declare namespace KcContext {
|
|
84
84
|
username?: string;
|
85
85
|
};
|
86
86
|
properties: Record<string, string | undefined>;
|
87
|
+
sessions: {
|
88
|
+
sessions: {
|
89
|
+
ipAddress: string;
|
90
|
+
started?: any;
|
91
|
+
lastAccess?: any;
|
92
|
+
expires?: any;
|
93
|
+
clients: string[];
|
94
|
+
}[];
|
95
|
+
};
|
87
96
|
};
|
88
97
|
type Password = Common & {
|
89
98
|
pageId: "password.ftl";
|
@@ -103,4 +112,138 @@ export declare namespace KcContext {
|
|
103
112
|
};
|
104
113
|
stateChecker: string;
|
105
114
|
};
|
115
|
+
type Sessions = Common & {
|
116
|
+
pageId: "sessions.ftl";
|
117
|
+
sessions: {
|
118
|
+
sessions: {
|
119
|
+
ipAddress: string;
|
120
|
+
started?: any;
|
121
|
+
lastAccess?: any;
|
122
|
+
expires?: any;
|
123
|
+
clients: string[];
|
124
|
+
}[];
|
125
|
+
};
|
126
|
+
stateChecker: string;
|
127
|
+
};
|
128
|
+
type Totp = Common & {
|
129
|
+
pageId: "totp.ftl";
|
130
|
+
totp: {
|
131
|
+
enabled: boolean;
|
132
|
+
totpSecretEncoded: string;
|
133
|
+
qrUrl: string;
|
134
|
+
policy: {
|
135
|
+
algorithm: "HmacSHA1" | "HmacSHA256" | "HmacSHA512";
|
136
|
+
digits: number;
|
137
|
+
lookAheadWindow: number;
|
138
|
+
} & ({
|
139
|
+
type: "totp";
|
140
|
+
period: number;
|
141
|
+
} | {
|
142
|
+
type: "hotp";
|
143
|
+
initialCounter: number;
|
144
|
+
});
|
145
|
+
supportedApplications: string[];
|
146
|
+
totpSecretQrCode: string;
|
147
|
+
manualUrl: string;
|
148
|
+
totpSecret: string;
|
149
|
+
otpCredentials: {
|
150
|
+
id: string;
|
151
|
+
userLabel: string;
|
152
|
+
}[];
|
153
|
+
};
|
154
|
+
mode?: "qr" | "manual" | undefined | null;
|
155
|
+
isAppInitiatedAction: boolean;
|
156
|
+
url: {
|
157
|
+
accountUrl: string;
|
158
|
+
passwordUrl: string;
|
159
|
+
totpUrl: string;
|
160
|
+
socialUrl: string;
|
161
|
+
sessionsUrl: string;
|
162
|
+
applicationsUrl: string;
|
163
|
+
logUrl: string;
|
164
|
+
resourceUrl: string;
|
165
|
+
resourcesCommonPath: string;
|
166
|
+
resourcesPath: string;
|
167
|
+
/** @deprecated, not present in recent keycloak version apparently, use kcContext.referrer instead */
|
168
|
+
referrerURI?: string;
|
169
|
+
getLogoutUrl: () => string;
|
170
|
+
};
|
171
|
+
stateChecker: string;
|
172
|
+
};
|
173
|
+
type Applications = Common & {
|
174
|
+
pageId: "applications.ftl";
|
175
|
+
features: {
|
176
|
+
log: boolean;
|
177
|
+
identityFederation: boolean;
|
178
|
+
authorization: boolean;
|
179
|
+
passwordUpdateSupported: boolean;
|
180
|
+
};
|
181
|
+
stateChecker: string;
|
182
|
+
applications: {
|
183
|
+
applications: {
|
184
|
+
realmRolesAvailable: {
|
185
|
+
name: string;
|
186
|
+
description: string;
|
187
|
+
}[];
|
188
|
+
resourceRolesAvailable: Record<string, {
|
189
|
+
roleName: string;
|
190
|
+
roleDescription: string;
|
191
|
+
clientName: string;
|
192
|
+
clientId: string;
|
193
|
+
}[]>;
|
194
|
+
additionalGrants: string[];
|
195
|
+
clientScopesGranted: string[];
|
196
|
+
effectiveUrl?: string;
|
197
|
+
client: {
|
198
|
+
consentScreenText: string;
|
199
|
+
surrogateAuthRequired: boolean;
|
200
|
+
bearerOnly: boolean;
|
201
|
+
id: string;
|
202
|
+
protocolMappersStream: Record<string, unknown>;
|
203
|
+
includeInTokenScope: boolean;
|
204
|
+
redirectUris: string[];
|
205
|
+
fullScopeAllowed: boolean;
|
206
|
+
registeredNodes: Record<string, unknown>;
|
207
|
+
enabled: boolean;
|
208
|
+
clientAuthenticatorType: string;
|
209
|
+
realmScopeMappingsStream: Record<string, unknown>;
|
210
|
+
scopeMappingsStream: Record<string, unknown>;
|
211
|
+
displayOnConsentScreen: boolean;
|
212
|
+
clientId: string;
|
213
|
+
rootUrl: string;
|
214
|
+
authenticationFlowBindingOverrides: Record<string, unknown>;
|
215
|
+
standardFlowEnabled: boolean;
|
216
|
+
attributes: Record<string, unknown>;
|
217
|
+
publicClient: boolean;
|
218
|
+
alwaysDisplayInConsole: boolean;
|
219
|
+
consentRequired: boolean;
|
220
|
+
notBefore: string;
|
221
|
+
rolesStream: Record<string, unknown>;
|
222
|
+
protocol: string;
|
223
|
+
dynamicScope: boolean;
|
224
|
+
directAccessGrantsEnabled: boolean;
|
225
|
+
name: string;
|
226
|
+
serviceAccountsEnabled: boolean;
|
227
|
+
frontchannelLogout: boolean;
|
228
|
+
nodeReRegistrationTimeout: string;
|
229
|
+
implicitFlowEnabled: boolean;
|
230
|
+
baseUrl: string;
|
231
|
+
webOrigins: string[];
|
232
|
+
realm: Record<string, unknown>;
|
233
|
+
};
|
234
|
+
}[];
|
235
|
+
};
|
236
|
+
};
|
237
|
+
type Log = Common & {
|
238
|
+
pageId: "log.ftl";
|
239
|
+
log: {
|
240
|
+
events: {
|
241
|
+
date: string | number | Date;
|
242
|
+
event: string;
|
243
|
+
ipAddress: string;
|
244
|
+
client: any;
|
245
|
+
details: any[];
|
246
|
+
}[];
|
247
|
+
};
|
248
|
+
};
|
106
249
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"KcContext.js","sourceRoot":"","sources":["../../src/account/kcContext/KcContext.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;
|
1
|
+
{"version":3,"file":"KcContext.js","sourceRoot":"","sources":["../../src/account/kcContext/KcContext.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAsQtC;IAOI,MAAM,EAA4B,CAAC;IACnC,MAAM,EAAiC,CAAC;CAC3C;AAED,MAAM,EAA2D,CAAC"}
|
@@ -152,12 +152,56 @@ export const kcContextCommonMock = {
|
|
152
152
|
"styles": "css/account.css img/icon-sidebar-active.png img/logo.png resources-common/node_modules/patternfly/dist/css/patternfly.min.css resources-common/node_modules/patternfly/dist/css/patternfly-additions.min.css resources-common/node_modules/patternfly/dist/css/patternfly-additions.min.css",
|
153
153
|
"kcButtonClass": "btn",
|
154
154
|
"kcButtonDefaultClass": "btn-default"
|
155
|
+
},
|
156
|
+
"sessions": {
|
157
|
+
"sessions": [
|
158
|
+
{
|
159
|
+
"ipAddress": "127.0.0.1",
|
160
|
+
"started": new Date().toString(),
|
161
|
+
"lastAccess": new Date().toString(),
|
162
|
+
"expires": new Date().toString(),
|
163
|
+
"clients": ["Chrome", "Firefox"]
|
164
|
+
}
|
165
|
+
]
|
155
166
|
}
|
156
167
|
};
|
157
168
|
export const kcContextMocks = [
|
158
169
|
id(Object.assign(Object.assign({}, kcContextCommonMock), { "pageId": "password.ftl", "password": {
|
159
170
|
"passwordSet": true
|
160
171
|
}, "stateChecker": "state checker" })),
|
161
|
-
id(Object.assign(Object.assign({}, kcContextCommonMock), { "pageId": "account.ftl", "url": Object.assign(Object.assign({}, kcContextCommonMock.url), { "referrerURI": "#", "accountUrl": "#" }), "realm": Object.assign(Object.assign({}, kcContextCommonMock.realm), { "registrationEmailAsUsername": true, "editUsernameAllowed": true }), "stateChecker": "" }))
|
172
|
+
id(Object.assign(Object.assign({}, kcContextCommonMock), { "pageId": "account.ftl", "url": Object.assign(Object.assign({}, kcContextCommonMock.url), { "referrerURI": "#", "accountUrl": "#" }), "realm": Object.assign(Object.assign({}, kcContextCommonMock.realm), { "registrationEmailAsUsername": true, "editUsernameAllowed": true }), "stateChecker": "" })),
|
173
|
+
id(Object.assign(Object.assign({}, kcContextCommonMock), { "pageId": "sessions.ftl", "sessions": {
|
174
|
+
"sessions": [
|
175
|
+
Object.assign(Object.assign({}, kcContextCommonMock.sessions), { "ipAddress": "127.0.0.1", "started": new Date().toString(), "lastAccess": new Date().toString(), "expires": new Date().toString(), "clients": ["Chrome", "Firefox"] })
|
176
|
+
]
|
177
|
+
}, "stateChecker": "g6WB1FaYnKotTkiy7ZrlxvFztSqS0U8jvHsOOOb2z4g" })),
|
178
|
+
id(Object.assign(Object.assign({}, kcContextCommonMock), { "pageId": "totp.ftl", "totp": {
|
179
|
+
"enabled": true,
|
180
|
+
"totpSecretEncoded": "KVVF G2BY N4YX S6LB IUYT K2LH IFYE 4SBV",
|
181
|
+
"qrUrl": "#",
|
182
|
+
"totpSecretQrCode": "iVBORw0KGgoAAAANSUhEUgAAAPYAAAD2AQAAAADNaUdlAAACM0lEQVR4Xu3OIZJgOQwDUDFd2UxiurLAVnnbHw4YGDKtSiWOn4Gxf81//7r/+q8b4HfLGBZDK9d85NmNR+sB42sXvOYrN5P1DcgYYFTGfOlbzE8gzwy3euweGizw7cfdl34/GRhlkxjKNV+5AebPXPORX1JuB9x8ZfbyyD2y1krWAKsbMq1HnqQDaLfa77p4+MqvzEGSqvSAD/2IHW2yHaigR9tX3m8dDIYGcNf3f+gDpVBZbZU77zyJ6Rlcy+qoTMG887KAPD9hsh6a1Sv3gJUHGHUAxSMzj7zqDDe7Phmt2eG+8UsMxjRGm816MAO+8VMl1R1jGHOrZB/5Zo/WXAPgxixm9Mo96vDGrM1eOto8c4Ax4wF437mifOXlpiPzCnN7Y9l95NnEMxgMY9AAGA8fucH14Y1aVb6N/cqrmyh0BVht7k1e+bU8LK0Cg5vmVq9c5vHIjOfqxDIfeTraNVTwewa4wVe+SW5N+uP1qACeudUZbqGOfA6VZV750Noq2Xx3kpveV44ZelSV1V7KFHzkWyVrrlUwG0Pl9pWnoy3vsQoME6vKI69i5osVgwWzHT7zjmJtMcNUSVn1oYMd7ZodbgowZl45VG0uVuLPUr1yc79uaQBag/mqR34xhlWyHm1prplHboCWdZ4TeZjsK8+dI+jbz1C5hl65mcpgB5dhcj8+dGO+0Ko68+lD37JDD83dpDLzzK+TrQyaVwGj6pUboGV+7+AyN8An/pf84/7rv/4/1l4OCc/1BYMAAAAASUVORK5CYII=",
|
183
|
+
"manualUrl": "#",
|
184
|
+
"totpSecret": "G4nsI8lQagRMUchH8jEG",
|
185
|
+
"otpCredentials": [],
|
186
|
+
"supportedApplications": ["totpAppFreeOTPName", "totpAppMicrosoftAuthenticatorName", "totpAppGoogleName"],
|
187
|
+
"policy": {
|
188
|
+
"algorithm": "HmacSHA1",
|
189
|
+
"digits": 6,
|
190
|
+
"lookAheadWindow": 1,
|
191
|
+
"type": "totp",
|
192
|
+
"period": 30
|
193
|
+
}
|
194
|
+
}, "mode": "qr", "isAppInitiatedAction": false, "stateChecker": "" })),
|
195
|
+
id(Object.assign(Object.assign({}, kcContextCommonMock), { "pageId": "log.ftl", "log": {
|
196
|
+
"events": [
|
197
|
+
{
|
198
|
+
"date": "2/21/2024, 1:28:39 PM",
|
199
|
+
"event": "login",
|
200
|
+
"ipAddress": "172.17.0.1",
|
201
|
+
"client": "security-admin-console",
|
202
|
+
"details": ["auth_method = openid-connect, username = admin"]
|
203
|
+
}
|
204
|
+
]
|
205
|
+
} }))
|
162
206
|
];
|
163
207
|
//# sourceMappingURL=kcContextMocks.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"kcContextMocks.js","sourceRoot":"","sources":["../../src/account/kcContext/kcContextMocks.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"kcContextMocks.js","sourceRoot":"","sources":["../../src/account/kcContext/kcContextMocks.ts"],"names":[],"mappings":"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"}
|
@@ -4,9 +4,16 @@ export const { useGetClassName } = createUseClassName({
|
|
4
4
|
"kcHtmlClass": undefined,
|
5
5
|
"kcBodyClass": undefined,
|
6
6
|
"kcButtonClass": "btn",
|
7
|
+
"kcContentWrapperClass": "row",
|
7
8
|
"kcButtonPrimaryClass": "btn-primary",
|
8
9
|
"kcButtonLargeClass": "btn-lg",
|
9
|
-
"kcButtonDefaultClass": "btn-default"
|
10
|
+
"kcButtonDefaultClass": "btn-default",
|
11
|
+
"kcFormClass": "form-horizontal",
|
12
|
+
"kcFormGroupClass": "form-group",
|
13
|
+
"kcInputWrapperClass": "col-xs-12 col-sm-12 col-md-12 col-lg-12",
|
14
|
+
"kcLabelClass": "control-label",
|
15
|
+
"kcInputClass": "form-control",
|
16
|
+
"kcInputErrorMessageClass": "pf-c-form__helper-text pf-m-error required kc-feedback-text"
|
10
17
|
}
|
11
18
|
});
|
12
19
|
//# sourceMappingURL=useGetClassName.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useGetClassName.js","sourceRoot":"","sources":["../../src/account/lib/useGetClassName.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAGrE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,kBAAkB,CAAW;IAC5D,gBAAgB,EAAE;QACd,aAAa,EAAE,SAAS;QACxB,aAAa,EAAE,SAAS;QACxB,eAAe,EAAE,KAAK;QACtB,sBAAsB,EAAE,aAAa;QACrC,oBAAoB,EAAE,QAAQ;QAC9B,sBAAsB,EAAE,aAAa;
|
1
|
+
{"version":3,"file":"useGetClassName.js","sourceRoot":"","sources":["../../src/account/lib/useGetClassName.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAGrE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,kBAAkB,CAAW;IAC5D,gBAAgB,EAAE;QACd,aAAa,EAAE,SAAS;QACxB,aAAa,EAAE,SAAS;QACxB,eAAe,EAAE,KAAK;QACtB,uBAAuB,EAAE,KAAK;QAC9B,sBAAsB,EAAE,aAAa;QACrC,oBAAoB,EAAE,QAAQ;QAC9B,sBAAsB,EAAE,aAAa;QACrC,aAAa,EAAE,iBAAiB;QAChC,kBAAkB,EAAE,YAAY;QAChC,qBAAqB,EAAE,yCAAyC;QAChE,cAAc,EAAE,eAAe;QAC/B,cAAc,EAAE,cAAc;QAC9B,0BAA0B,EAAE,6DAA6D;KAC5F;CACJ,CAAC,CAAC"}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { PageProps } from "../../account/pages/PageProps";
|
3
|
+
import type { KcContext } from "../kcContext";
|
4
|
+
import type { I18n } from "../i18n";
|
5
|
+
export default function Applications(props: PageProps<Extract<KcContext, {
|
6
|
+
pageId: "applications.ftl";
|
7
|
+
}>, I18n>): JSX.Element;
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
import { clsx } from "../../tools/clsx";
|
3
|
+
import { useGetClassName } from "../../account/lib/useGetClassName";
|
4
|
+
function isArrayWithEmptyObject(variable) {
|
5
|
+
return Array.isArray(variable) && variable.length === 1 && typeof variable[0] === "object" && Object.keys(variable[0]).length === 0;
|
6
|
+
}
|
7
|
+
export default function Applications(props) {
|
8
|
+
const { kcContext, i18n, doUseDefaultCss, classes, Template } = props;
|
9
|
+
const { getClassName } = useGetClassName({
|
10
|
+
doUseDefaultCss,
|
11
|
+
classes
|
12
|
+
});
|
13
|
+
const { url, applications: { applications }, stateChecker } = kcContext;
|
14
|
+
const { msg, advancedMsg } = i18n;
|
15
|
+
return (_jsx(Template, Object.assign({}, { kcContext, i18n, doUseDefaultCss, classes }, { active: "applications" }, { children: _jsxs("div", Object.assign({ className: "row" }, { children: [_jsx("div", Object.assign({ className: "col-md-10" }, { children: _jsx("h2", { children: msg("applicationsHtmlTitle") }) })), _jsxs("form", Object.assign({ action: url.applicationsUrl, method: "post" }, { children: [_jsx("input", { type: "hidden", id: "stateChecker", name: "stateChecker", value: stateChecker }), _jsx("input", { type: "hidden", id: "referrer", name: "referrer", value: stateChecker }), _jsxs("table", Object.assign({ className: "table table-striped table-bordered" }, { children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("td", { children: msg("application") }), _jsx("td", { children: msg("availableRoles") }), _jsx("td", { children: msg("grantedPermissions") }), _jsx("td", { children: msg("additionalGrants") }), _jsx("td", { children: msg("action") })] }) }), _jsx("tbody", { children: applications.map(application => (_jsxs("tr", { children: [_jsxs("td", { children: [application.effectiveUrl && (_jsx("a", Object.assign({ href: application.effectiveUrl }, { children: (application.client.name && advancedMsg(application.client.name)) || application.client.clientId }))), !application.effectiveUrl &&
|
16
|
+
((application.client.name && advancedMsg(application.client.name)) || application.client.clientId)] }), _jsxs("td", { children: [!isArrayWithEmptyObject(application.realmRolesAvailable) &&
|
17
|
+
application.realmRolesAvailable.map(role => (_jsxs("span", { children: [role.description ? advancedMsg(role.description) : advancedMsg(role.name), role !== application.realmRolesAvailable[application.realmRolesAvailable.length - 1] && ", "] }, role.name))), !isArrayWithEmptyObject(application.realmRolesAvailable) && application.resourceRolesAvailable && ", ", application.resourceRolesAvailable &&
|
18
|
+
Object.keys(application.resourceRolesAvailable).map(resource => (_jsxs("span", { children: [!isArrayWithEmptyObject(application.realmRolesAvailable) && ", ", application.resourceRolesAvailable[resource].map(clientRole => (_jsxs("span", { children: [clientRole.roleDescription
|
19
|
+
? advancedMsg(clientRole.roleDescription)
|
20
|
+
: advancedMsg(clientRole.roleName), " ", msg("inResource"), " ", _jsx("strong", { children: clientRole.clientName ? advancedMsg(clientRole.clientName) : clientRole.clientId }), clientRole !==
|
21
|
+
application.resourceRolesAvailable[resource][application.resourceRolesAvailable[resource].length - 1] && ", "] }, clientRole.roleName)))] }, resource)))] }), _jsx("td", { children: application.client.consentRequired ? (application.clientScopesGranted.map(claim => (_jsxs("span", { children: [advancedMsg(claim), claim !== application.clientScopesGranted[application.clientScopesGranted.length - 1] && ", "] }, claim)))) : (_jsx("strong", { children: msg("fullAccess") })) }), _jsx("td", { children: application.additionalGrants.map(grant => (_jsxs("span", { children: [advancedMsg(grant), grant !== application.additionalGrants[application.additionalGrants.length - 1] && ", "] }, grant))) }), _jsx("td", { children: (application.client.consentRequired && application.clientScopesGranted.length > 0) ||
|
22
|
+
application.additionalGrants.length > 0 ? (_jsx("button", Object.assign({ type: "submit", className: clsx(getClassName("kcButtonPrimaryClass"), getClassName("kcButtonClass")), id: `revoke-${application.client.clientId}`, name: "clientId", value: application.client.id }, { children: msg("revoke") }))) : null })] }, application.client.clientId))) })] }))] }))] })) })));
|
23
|
+
}
|
24
|
+
//# sourceMappingURL=Applications.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Applications.js","sourceRoot":"","sources":["../../src/account/pages/Applications.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAI1E,SAAS,sBAAsB,CAAC,QAAa;IACzC,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AACxI,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,KAA0E;IAC3G,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEtE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC;QACrC,eAAe;QACf,OAAO;KACV,CAAC,CAAC;IAEH,MAAM,EACF,GAAG,EACH,YAAY,EAAE,EAAE,YAAY,EAAE,EAC9B,YAAY,EACf,GAAG,SAAS,CAAC;IAEd,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IAElC,OAAO,CACH,KAAC,QAAQ,oBAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAE,MAAM,EAAC,cAAc,gBAC9E,6BAAK,SAAS,EAAC,KAAK,iBAChB,4BAAK,SAAS,EAAC,WAAW,gBACtB,uBAAK,GAAG,CAAC,uBAAuB,CAAC,GAAM,IACrC,EAEN,8BAAM,MAAM,EAAE,GAAG,CAAC,eAAe,EAAE,MAAM,EAAC,MAAM,iBAC5C,gBAAO,IAAI,EAAC,QAAQ,EAAC,EAAE,EAAC,cAAc,EAAC,IAAI,EAAC,cAAc,EAAC,KAAK,EAAE,YAAY,GAAI,EAClF,gBAAO,IAAI,EAAC,QAAQ,EAAC,EAAE,EAAC,UAAU,EAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAE,YAAY,GAAI,EAE1E,+BAAO,SAAS,EAAC,oCAAoC,iBACjD,0BACI,yBACI,uBAAK,GAAG,CAAC,aAAa,CAAC,GAAM,EAC7B,uBAAK,GAAG,CAAC,gBAAgB,CAAC,GAAM,EAChC,uBAAK,GAAG,CAAC,oBAAoB,CAAC,GAAM,EACpC,uBAAK,GAAG,CAAC,kBAAkB,CAAC,GAAM,EAClC,uBAAK,GAAG,CAAC,QAAQ,CAAC,GAAM,IACvB,GACD,EAER,0BACK,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAC7B,yBACI,yBACK,WAAW,CAAC,YAAY,IAAI,CACzB,0BAAG,IAAI,EAAE,WAAW,CAAC,YAAY,gBAC5B,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,IACjG,CACP,EACA,CAAC,WAAW,CAAC,YAAY;wDACtB,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,IACrG,EAEL,yBACK,CAAC,sBAAsB,CAAC,WAAW,CAAC,mBAAmB,CAAC;wDACrD,WAAW,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CACxC,2BACK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EACzE,IAAI,KAAK,WAAW,CAAC,mBAAmB,CAAC,WAAW,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,KAFtF,IAAI,CAAC,IAAI,CAGb,CACV,CAAC,EACL,CAAC,sBAAsB,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,WAAW,CAAC,sBAAsB,IAAI,IAAI,EACtG,WAAW,CAAC,sBAAsB;wDAC/B,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC5D,2BACK,CAAC,sBAAsB,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,IAAI,EAChE,WAAW,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAC5D,2BACK,UAAU,CAAC,eAAe;4EACvB,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC;4EACzC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,GAAG,EAC1C,GAAG,CAAC,YAAY,CAAC,EAAE,GAAG,EACvB,2BACK,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,GAC5E,EACR,UAAU;4EACP,WAAW,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CACxC,WAAW,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAC1D,IAAI,IAAI,KAXN,UAAU,CAAC,QAAQ,CAYvB,CACV,CAAC,KAhBK,QAAQ,CAiBZ,CACV,CAAC,IACL,EAEL,uBACK,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAClC,WAAW,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CACzC,2BACK,WAAW,CAAC,KAAK,CAAC,EAClB,KAAK,KAAK,WAAW,CAAC,mBAAmB,CAAC,WAAW,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,KAFvF,KAAK,CAGT,CACV,CAAC,CACL,CAAC,CAAC,CAAC,CACA,2BAAS,GAAG,CAAC,YAAY,CAAC,GAAU,CACvC,GACA,EAEL,uBACK,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CACvC,2BACK,WAAW,CAAC,KAAK,CAAC,EAClB,KAAK,KAAK,WAAW,CAAC,gBAAgB,CAAC,WAAW,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,KAFjF,KAAK,CAGT,CACV,CAAC,GACD,EAEL,uBACK,CAAC,WAAW,CAAC,MAAM,CAAC,eAAe,IAAI,WAAW,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,CAAC;oDACnF,WAAW,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACtC,+BACI,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC,EACpF,EAAE,EAAE,UAAU,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,EAC3C,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,gBAE3B,GAAG,CAAC,QAAQ,CAAC,IACT,CACZ,CAAC,CAAC,CAAC,IAAI,GACP,KA9EA,WAAW,CAAC,MAAM,CAAC,QAAQ,CA+E/B,CACR,CAAC,GACE,KACJ,KACL,KACL,IACC,CACd,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { PageProps } from "../../account/pages/PageProps";
|
3
|
+
import type { KcContext } from "../kcContext";
|
4
|
+
import type { I18n } from "../i18n";
|
5
|
+
export default function Log(props: PageProps<Extract<KcContext, {
|
6
|
+
pageId: "log.ftl";
|
7
|
+
}>, I18n>): JSX.Element;
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
import { useGetClassName } from "../lib/useGetClassName";
|
3
|
+
export default function Log(props) {
|
4
|
+
const { kcContext, i18n, doUseDefaultCss, classes, Template } = props;
|
5
|
+
const { getClassName } = useGetClassName({
|
6
|
+
doUseDefaultCss,
|
7
|
+
classes
|
8
|
+
});
|
9
|
+
const { log } = kcContext;
|
10
|
+
const { msg } = i18n;
|
11
|
+
return (_jsx(Template, Object.assign({}, { kcContext, i18n, doUseDefaultCss, classes }, { active: "log" }, { children: _jsxs("div", Object.assign({ className: getClassName("kcContentWrapperClass") }, { children: [_jsx("div", Object.assign({ className: "col-md-10" }, { children: _jsx("h2", { children: msg("accountLogHtmlTitle") }) })), _jsxs("table", Object.assign({ className: "table table-striped table-bordered" }, { children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("td", { children: msg("date") }), _jsx("td", { children: msg("event") }), _jsx("td", { children: msg("ip") }), _jsx("td", { children: msg("client") }), _jsx("td", { children: msg("details") })] }) }), _jsx("tbody", { children: log.events.map((event, index) => (_jsxs("tr", { children: [_jsx("td", { children: event.date ? new Date(event.date).toLocaleString() : "" }), _jsx("td", { children: event.event }), _jsx("td", { children: event.ipAddress }), _jsx("td", { children: event.client || "" }), _jsx("td", { children: event.details.map((detail, detailIndex) => (_jsxs("span", { children: [`${detail.key} = ${detail.value}`, detailIndex < event.details.length - 1 && ", "] }, detailIndex))) })] }, index))) })] }))] })) })));
|
12
|
+
}
|
13
|
+
//# sourceMappingURL=Log.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Log.js","sourceRoot":"","sources":["../../src/account/pages/Log.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,CAAC,OAAO,UAAU,GAAG,CAAC,KAAiE;IACzF,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEtE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC;QACrC,eAAe;QACf,OAAO;KACV,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC;IAE1B,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAErB,OAAO,CACH,KAAC,QAAQ,oBAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAE,MAAM,EAAC,KAAK,gBACrE,6BAAK,SAAS,EAAE,YAAY,CAAC,uBAAuB,CAAC,iBACjD,4BAAK,SAAS,EAAC,WAAW,gBACtB,uBAAK,GAAG,CAAC,qBAAqB,CAAC,GAAM,IACnC,EAEN,+BAAO,SAAS,EAAC,oCAAoC,iBACjD,0BACI,yBACI,uBAAK,GAAG,CAAC,MAAM,CAAC,GAAM,EACtB,uBAAK,GAAG,CAAC,OAAO,CAAC,GAAM,EACvB,uBAAK,GAAG,CAAC,IAAI,CAAC,GAAM,EACpB,uBAAK,GAAG,CAAC,QAAQ,CAAC,GAAM,EACxB,uBAAK,GAAG,CAAC,SAAS,CAAC,GAAM,IACxB,GACD,EAER,0BACK,GAAG,CAAC,MAAM,CAAC,GAAG,CACX,CACI,KAMC,EACD,KAA6B,EAC/B,EAAE,CAAC,CACD,yBACI,uBAAK,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,GAAM,EAClE,uBAAK,KAAK,CAAC,KAAK,GAAM,EACtB,uBAAK,KAAK,CAAC,SAAS,GAAM,EAC1B,uBAAK,KAAK,CAAC,MAAM,IAAI,EAAE,GAAM,EAC7B,uBACK,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CACxC,2BACK,GAAG,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,EACjC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,KAFxC,WAAW,CAGf,CACV,CAAC,GACD,KAZA,KAAK,CAaT,CACR,CACJ,GACG,KACJ,KACN,IACC,CACd,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { PageProps } from "../../account/pages/PageProps";
|
3
|
+
import type { KcContext } from "../kcContext";
|
4
|
+
import type { I18n } from "../i18n";
|
5
|
+
export default function Sessions(props: PageProps<Extract<KcContext, {
|
6
|
+
pageId: "sessions.ftl";
|
7
|
+
}>, I18n>): JSX.Element;
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
import { clsx } from "../../tools/clsx";
|
3
|
+
import { useGetClassName } from "../../account/lib/useGetClassName";
|
4
|
+
export default function Sessions(props) {
|
5
|
+
var _a;
|
6
|
+
const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
|
7
|
+
const { getClassName } = useGetClassName({
|
8
|
+
doUseDefaultCss,
|
9
|
+
classes
|
10
|
+
});
|
11
|
+
console.log({ kcContext });
|
12
|
+
const { url, stateChecker, sessions } = kcContext;
|
13
|
+
const { msg } = i18n;
|
14
|
+
console.log({ sdf: (_a = kcContext.locale) === null || _a === void 0 ? void 0 : _a.supported });
|
15
|
+
console.log({ asdf: "asdf" });
|
16
|
+
return (_jsxs(Template, Object.assign({}, { kcContext, i18n, doUseDefaultCss, classes }, { active: "sessions" }, { children: [_jsx("div", Object.assign({ className: getClassName("kcContentWrapperClass") }, { children: _jsx("div", Object.assign({ className: "col-md-10" }, { children: _jsx("h2", { children: msg("sessionsHtmlTitle") }) })) })), _jsxs("table", Object.assign({ className: "table table-striped table-bordered" }, { children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: msg("ip") }), _jsx("th", { children: msg("started") }), _jsx("th", { children: msg("lastAccess") }), _jsx("th", { children: msg("expires") }), _jsx("th", { children: msg("clients") })] }) }), _jsx("tbody", Object.assign({ role: "rowgroup" }, { children: sessions.sessions.map((session, index) => (_jsxs("tr", { children: [_jsx("td", { children: session.ipAddress }), _jsx("td", { children: session === null || session === void 0 ? void 0 : session.started }), _jsx("td", { children: session === null || session === void 0 ? void 0 : session.lastAccess }), _jsx("td", { children: session === null || session === void 0 ? void 0 : session.expires }), _jsx("td", { children: session.clients.map((client, clientIndex) => (_jsxs("div", { children: [client, _jsx("br", {})] }, clientIndex))) })] }, index))) }))] })), _jsxs("form", Object.assign({ action: url.sessionsUrl, method: "post" }, { children: [_jsx("input", { type: "hidden", id: "stateChecker", name: "stateChecker", value: stateChecker }), _jsx("button", Object.assign({ id: "logout-all-sessions", type: "submit", className: clsx(getClassName("kcButtonDefaultClass"), getClassName("kcButtonClass")) }, { children: msg("doLogOutAllSessions") }))] }))] })));
|
17
|
+
}
|
18
|
+
//# sourceMappingURL=Sessions.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Sessions.js","sourceRoot":"","sources":["../../src/account/pages/Sessions.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAI1E,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAsE;;IACnG,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEtE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC;QACrC,eAAe;QACf,OAAO;KACV,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3B,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IAElD,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACrB,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAA,SAAS,CAAC,MAAM,0CAAE,SAAS,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9B,OAAO,CACH,MAAC,QAAQ,oBAAK,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,IAAE,MAAM,EAAC,UAAU,iBAC1E,4BAAK,SAAS,EAAE,YAAY,CAAC,uBAAuB,CAAC,gBACjD,4BAAK,SAAS,EAAC,WAAW,gBACtB,uBAAK,GAAG,CAAC,mBAAmB,CAAC,GAAM,IACjC,IACJ,EAEN,+BAAO,SAAS,EAAC,oCAAoC,iBACjD,0BACI,yBACI,uBAAK,GAAG,CAAC,IAAI,CAAC,GAAM,EACpB,uBAAK,GAAG,CAAC,SAAS,CAAC,GAAM,EACzB,uBAAK,GAAG,CAAC,YAAY,CAAC,GAAM,EAC5B,uBAAK,GAAG,CAAC,SAAS,CAAC,GAAM,EACzB,uBAAK,GAAG,CAAC,SAAS,CAAC,GAAM,IACxB,GACD,EAER,8BAAO,IAAI,EAAC,UAAU,gBACjB,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAa,EAAE,EAAE,CAAC,CAC/C,yBACI,uBAAK,OAAO,CAAC,SAAS,GAAM,EAC5B,uBAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,GAAM,EAC3B,uBAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,GAAM,EAC9B,uBAAK,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,GAAM,EAC3B,uBACK,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAc,EAAE,WAAmB,EAAE,EAAE,CAAC,CAC1D,0BACK,MAAM,EACP,cAAM,KAFA,WAAW,CAGf,CACT,CAAC,GACD,KAZA,KAAK,CAaT,CACR,CAAC,IACE,KACJ,EAER,8BAAM,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,EAAC,MAAM,iBACxC,gBAAO,IAAI,EAAC,QAAQ,EAAC,EAAE,EAAC,cAAc,EAAC,IAAI,EAAC,cAAc,EAAC,KAAK,EAAE,YAAY,GAAI,EAClF,+BAAQ,EAAE,EAAC,qBAAqB,EAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC,gBAC9H,GAAG,CAAC,qBAAqB,CAAC,IACtB,KACN,KACA,CACd,CAAC;AACN,CAAC"}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { PageProps } from "../../account/pages/PageProps";
|
3
|
+
import type { KcContext } from "../kcContext";
|
4
|
+
import type { I18n } from "../i18n";
|
5
|
+
export default function Totp(props: PageProps<Extract<KcContext, {
|
6
|
+
pageId: "totp.ftl";
|
7
|
+
}>, I18n>): JSX.Element;
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
2
|
+
import { clsx } from "../../tools/clsx";
|
3
|
+
import { useGetClassName } from "../../account/lib/useGetClassName";
|
4
|
+
export default function Totp(props) {
|
5
|
+
var _a;
|
6
|
+
const { kcContext, i18n, doUseDefaultCss, Template, classes } = props;
|
7
|
+
const { getClassName } = useGetClassName({
|
8
|
+
doUseDefaultCss,
|
9
|
+
classes
|
10
|
+
});
|
11
|
+
const { totp, mode, url, messagesPerField, stateChecker } = kcContext;
|
12
|
+
const { msg, msgStr } = i18n;
|
13
|
+
const algToKeyUriAlg = {
|
14
|
+
"HmacSHA1": "SHA1",
|
15
|
+
"HmacSHA256": "SHA256",
|
16
|
+
"HmacSHA512": "SHA512"
|
17
|
+
};
|
18
|
+
return (_jsx(Template, Object.assign({}, { kcContext, i18n, doUseDefaultCss, classes }, { active: "totp" }, { children: _jsxs(_Fragment, { children: [_jsxs("div", Object.assign({ className: "row" }, { children: [_jsx("div", Object.assign({ className: "col-md-10" }, { children: _jsx("h2", { children: msg("authenticatorTitle") }) })), totp.otpCredentials.length === 0 && (_jsxs("div", Object.assign({ className: "subtitle col-md-2" }, { children: [_jsx("span", Object.assign({ className: "required" }, { children: "*" })), msg("requiredFields")] })))] })), totp.enabled && (_jsxs("table", Object.assign({ className: "table table-bordered table-striped" }, { children: [_jsx("thead", { children: totp.otpCredentials.length > 1 ? (_jsx("tr", { children: _jsx("th", Object.assign({ colSpan: 4 }, { children: msg("configureAuthenticators") })) })) : (_jsx("tr", { children: _jsx("th", Object.assign({ colSpan: 3 }, { children: msg("configureAuthenticators") })) })) }), _jsx("tbody", { children: totp.otpCredentials.map((credential, index) => (_jsxs("tr", { children: [_jsx("td", Object.assign({ className: "provider" }, { children: msg("mobile") })), totp.otpCredentials.length > 1 && _jsx("td", Object.assign({ className: "provider" }, { children: credential.id })), _jsx("td", Object.assign({ className: "provider" }, { children: credential.userLabel || "" })), _jsx("td", Object.assign({ className: "action" }, { children: _jsxs("form", Object.assign({ action: url.totpUrl, method: "post", className: "form-inline" }, { children: [_jsx("input", { type: "hidden", id: "stateChecker", name: "stateChecker", value: stateChecker }), _jsx("input", { type: "hidden", id: "submitAction", name: "submitAction", value: "Delete" }), _jsx("input", { type: "hidden", id: "credentialId", name: "credentialId", value: credential.id }), _jsx("button", Object.assign({ id: `remove-mobile-${index}`, className: "btn btn-default" }, { children: _jsx("i", { className: "pficon pficon-delete" }) }))] })) }))] }, index))) })] }))), !totp.enabled && (_jsxs("div", { children: [_jsx("hr", {}), _jsxs("ol", Object.assign({ id: "kc-totp-settings" }, { children: [_jsxs("li", { children: [_jsx("p", { children: msg("totpStep1") }), _jsx("ul", Object.assign({ id: "kc-totp-supported-apps" }, { children: totp.supportedApplications.map(app => (_jsx("li", { children: msg(app) }, app))) }))] }), mode && mode == "manual" ? (_jsxs(_Fragment, { children: [_jsxs("li", { children: [_jsx("p", { children: msg("totpManualStep2") }), _jsx("p", { children: _jsx("span", Object.assign({ id: "kc-totp-secret-key" }, { children: totp.totpSecretEncoded })) }), _jsx("p", { children: _jsx("a", Object.assign({ href: totp.qrUrl, id: "mode-barcode" }, { children: msg("totpScanBarcode") })) })] }), _jsxs("li", { children: [_jsx("p", { children: msg("totpManualStep3") }), _jsx("p", { children: _jsxs("ul", { children: [_jsxs("li", Object.assign({ id: "kc-totp-type" }, { children: [msg("totpType"), ": ", msg(`totp.${totp.policy.type}`)] })), _jsxs("li", Object.assign({ id: "kc-totp-algorithm" }, { children: [msg("totpAlgorithm"), ": ", (_a = algToKeyUriAlg === null || algToKeyUriAlg === void 0 ? void 0 : algToKeyUriAlg[totp.policy.algorithm]) !== null && _a !== void 0 ? _a : totp.policy.algorithm] })), _jsxs("li", Object.assign({ id: "kc-totp-digits" }, { children: [msg("totpDigits"), ": ", totp.policy.digits] })), totp.policy.type === "totp" ? (_jsxs("li", Object.assign({ id: "kc-totp-period" }, { children: [msg("totpInterval"), ": ", totp.policy.period] }))) : (_jsxs("li", Object.assign({ id: "kc-totp-counter" }, { children: [msg("totpCounter"), ": ", totp.policy.initialCounter] })))] }) })] })] })) : (_jsxs("li", { children: [_jsx("p", { children: msg("totpStep2") }), _jsx("p", { children: _jsx("img", { id: "kc-totp-secret-qr-code", src: `data:image/png;base64, ${totp.totpSecretQrCode}`, alt: "Figure: Barcode" }) }), _jsx("p", { children: _jsx("a", Object.assign({ href: totp.manualUrl, id: "mode-manual" }, { children: msg("totpUnableToScan") })) })] })), _jsxs("li", { children: [_jsx("p", { children: msg("totpStep3") }), _jsx("p", { children: msg("totpStep3DeviceName") })] })] })), _jsx("hr", {}), _jsxs("form", Object.assign({ action: url.totpUrl, className: getClassName("kcFormClass"), id: "kc-totp-settings-form", method: "post" }, { children: [_jsx("input", { type: "hidden", id: "stateChecker", name: "stateChecker", value: stateChecker }), _jsxs("div", Object.assign({ className: getClassName("kcFormGroupClass") }, { children: [_jsxs("div", Object.assign({ className: "col-sm-2 col-md-2" }, { children: [_jsx("label", Object.assign({ htmlFor: "totp", className: "control-label" }, { children: msg("authenticatorCode") })), _jsx("span", Object.assign({ className: "required" }, { children: "*" }))] })), _jsxs("div", Object.assign({ className: "col-sm-10 col-md-10" }, { children: [_jsx("input", { type: "text", id: "totp", name: "totp", autoComplete: "off", className: getClassName("kcInputClass"), "aria-invalid": messagesPerField.existsError("totp") }), messagesPerField.existsError("totp") && (_jsx("span", Object.assign({ id: "input-error-otp-code", className: getClassName("kcInputErrorMessageClass"), "aria-live": "polite" }, { children: messagesPerField.get("totp") })))] })), _jsx("input", { type: "hidden", id: "totpSecret", name: "totpSecret", value: totp.totpSecret }), mode && _jsx("input", { type: "hidden", id: "mode", value: mode })] })), _jsxs("div", Object.assign({ className: getClassName("kcFormGroupClass") }, { children: [_jsxs("div", Object.assign({ className: "col-sm-2 col-md-2" }, { children: [_jsx("label", Object.assign({ htmlFor: "userLabel", className: getClassName("kcLabelClass") }, { children: msg("totpDeviceName") })), totp.otpCredentials.length >= 1 && _jsx("span", Object.assign({ className: "required" }, { children: "*" }))] })), _jsxs("div", Object.assign({ className: "col-sm-10 col-md-10" }, { children: [_jsx("input", { type: "text", id: "userLabel", name: "userLabel", autoComplete: "off", className: getClassName("kcInputClass"), "aria-invalid": messagesPerField.existsError("userLabel") }), messagesPerField.existsError("userLabel") && (_jsx("span", Object.assign({ id: "input-error-otp-label", className: getClassName("kcInputErrorMessageClass"), "aria-live": "polite" }, { children: messagesPerField.get("userLabel") })))] }))] })), _jsx("div", Object.assign({ id: "kc-form-buttons", className: clsx(getClassName("kcFormGroupClass"), "text-right") }, { children: _jsxs("div", Object.assign({ className: getClassName("kcInputWrapperClass") }, { children: [_jsx("input", { type: "submit", className: clsx(getClassName("kcButtonClass"), getClassName("kcButtonPrimaryClass"), getClassName("kcButtonLargeClass")), id: "saveTOTPBtn", value: msgStr("doSave") }), _jsx("button", Object.assign({ type: "submit", className: clsx(getClassName("kcButtonClass"), getClassName("kcButtonDefaultClass"), getClassName("kcButtonLargeClass"), getClassName("kcButtonLargeClass")), id: "cancelTOTPBtn", name: "submitAction", value: "Cancel" }, { children: msg("doCancel") }))] })) }))] }))] }))] }) })));
|
19
|
+
}
|
20
|
+
//# sourceMappingURL=Totp.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"Totp.js","sourceRoot":"","sources":["../../src/account/pages/Totp.tsx"],"names":[],"mappings":"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"}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
export declare const loginThemePageIds: readonly ["login.ftl", "login-username.ftl", "login-password.ftl", "webauthn-authenticate.ftl", "register.ftl", "register-user-profile.ftl", "info.ftl", "error.ftl", "login-reset-password.ftl", "login-verify-email.ftl", "terms.ftl", "login-oauth2-device-verify-user-code.ftl", "login-oauth-grant.ftl", "login-otp.ftl", "login-update-profile.ftl", "login-update-password.ftl", "login-idp-link-confirm.ftl", "login-idp-link-email.ftl", "login-page-expired.ftl", "login-config-totp.ftl", "logout-confirm.ftl", "update-user-profile.ftl", "idp-review-user-profile.ftl", "update-email.ftl", "select-authenticator.ftl", "saml-post-form.ftl"];
|
2
|
-
export declare const accountThemePageIds: readonly ["password.ftl", "account.ftl"];
|
2
|
+
export declare const accountThemePageIds: readonly ["password.ftl", "account.ftl", "sessions.ftl", "totp.ftl", "applications.ftl", "log.ftl"];
|
3
3
|
export type LoginThemePageId = (typeof loginThemePageIds)[number];
|
4
4
|
export type AccountThemePageId = (typeof accountThemePageIds)[number];
|
@@ -29,5 +29,5 @@ exports.loginThemePageIds = [
|
|
29
29
|
"select-authenticator.ftl",
|
30
30
|
"saml-post-form.ftl"
|
31
31
|
];
|
32
|
-
exports.accountThemePageIds = ["password.ftl", "account.ftl"];
|
32
|
+
exports.accountThemePageIds = ["password.ftl", "account.ftl", "sessions.ftl", "totp.ftl", "applications.ftl", "log.ftl"];
|
33
33
|
//# sourceMappingURL=pageId.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"pageId.js","sourceRoot":"","sources":["../../../src/bin/keycloakify/generateFtl/pageId.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG;IAC7B,WAAW;IACX,oBAAoB;IACpB,oBAAoB;IACpB,2BAA2B;IAC3B,cAAc;IACd,2BAA2B;IAC3B,UAAU;IACV,WAAW;IACX,0BAA0B;IAC1B,wBAAwB;IACxB,WAAW;IACX,0CAA0C;IAC1C,uBAAuB;IACvB,eAAe;IACf,0BAA0B;IAC1B,2BAA2B;IAC3B,4BAA4B;IAC5B,0BAA0B;IAC1B,wBAAwB;IACxB,uBAAuB;IACvB,oBAAoB;IACpB,yBAAyB;IACzB,6BAA6B;IAC7B,kBAAkB;IAClB,0BAA0B;IAC1B,oBAAoB;CACd,CAAC;AAEE,QAAA,mBAAmB,GAAG,CAAC,cAAc,EAAE,aAAa,CAAU,CAAC"}
|
1
|
+
{"version":3,"file":"pageId.js","sourceRoot":"","sources":["../../../src/bin/keycloakify/generateFtl/pageId.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG;IAC7B,WAAW;IACX,oBAAoB;IACpB,oBAAoB;IACpB,2BAA2B;IAC3B,cAAc;IACd,2BAA2B;IAC3B,UAAU;IACV,WAAW;IACX,0BAA0B;IAC1B,wBAAwB;IACxB,WAAW;IACX,0CAA0C;IAC1C,uBAAuB;IACvB,eAAe;IACf,0BAA0B;IAC1B,2BAA2B;IAC3B,4BAA4B;IAC5B,0BAA0B;IAC1B,wBAAwB;IACxB,uBAAuB;IACvB,oBAAoB;IACpB,yBAAyB;IACzB,6BAA6B;IAC7B,kBAAkB;IAClB,0BAA0B;IAC1B,oBAAoB;CACd,CAAC;AAEE,QAAA,mBAAmB,GAAG,CAAC,cAAc,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,EAAE,SAAS,CAAU,CAAC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "keycloakify",
|
3
|
-
"version": "9.
|
3
|
+
"version": "9.6.0",
|
4
4
|
"description": "Create Keycloak themes using React",
|
5
5
|
"repository": {
|
6
6
|
"type": "git",
|
@@ -70,8 +70,12 @@
|
|
70
70
|
"src/account/kcContext/kcContextMocks.ts",
|
71
71
|
"src/account/lib/useGetClassName.ts",
|
72
72
|
"src/account/pages/Account.tsx",
|
73
|
+
"src/account/pages/Applications.tsx",
|
74
|
+
"src/account/pages/Log.tsx",
|
73
75
|
"src/account/pages/PageProps.ts",
|
74
76
|
"src/account/pages/Password.tsx",
|
77
|
+
"src/account/pages/Sessions.tsx",
|
78
|
+
"src/account/pages/Totp.tsx",
|
75
79
|
"src/bin/constants.ts",
|
76
80
|
"src/bin/copy-keycloak-resources-to-public.ts",
|
77
81
|
"src/bin/download-builtin-keycloak-theme.ts",
|
@@ -356,12 +360,24 @@
|
|
356
360
|
"account/pages/Account.d.ts",
|
357
361
|
"account/pages/Account.js",
|
358
362
|
"account/pages/Account.js.map",
|
363
|
+
"account/pages/Applications.d.ts",
|
364
|
+
"account/pages/Applications.js",
|
365
|
+
"account/pages/Applications.js.map",
|
366
|
+
"account/pages/Log.d.ts",
|
367
|
+
"account/pages/Log.js",
|
368
|
+
"account/pages/Log.js.map",
|
359
369
|
"account/pages/PageProps.d.ts",
|
360
370
|
"account/pages/PageProps.js",
|
361
371
|
"account/pages/PageProps.js.map",
|
362
372
|
"account/pages/Password.d.ts",
|
363
373
|
"account/pages/Password.js",
|
364
374
|
"account/pages/Password.js.map",
|
375
|
+
"account/pages/Sessions.d.ts",
|
376
|
+
"account/pages/Sessions.js",
|
377
|
+
"account/pages/Sessions.js.map",
|
378
|
+
"account/pages/Totp.d.ts",
|
379
|
+
"account/pages/Totp.js",
|
380
|
+
"account/pages/Totp.js.map",
|
365
381
|
"bin/constants.d.ts",
|
366
382
|
"bin/constants.js",
|
367
383
|
"bin/constants.js.map",
|
@@ -813,8 +829,12 @@
|
|
813
829
|
"src/account/kcContext/kcContextMocks.ts",
|
814
830
|
"src/account/lib/useGetClassName.ts",
|
815
831
|
"src/account/pages/Account.tsx",
|
832
|
+
"src/account/pages/Applications.tsx",
|
833
|
+
"src/account/pages/Log.tsx",
|
816
834
|
"src/account/pages/PageProps.ts",
|
817
835
|
"src/account/pages/Password.tsx",
|
836
|
+
"src/account/pages/Sessions.tsx",
|
837
|
+
"src/account/pages/Totp.tsx",
|
818
838
|
"src/bin/constants.ts",
|
819
839
|
"src/bin/copy-keycloak-resources-to-public.ts",
|
820
840
|
"src/bin/download-builtin-keycloak-theme.ts",
|
package/src/account/Fallback.tsx
CHANGED
@@ -6,6 +6,10 @@ import { assert, type Equals } from "tsafe/assert";
|
|
6
6
|
|
7
7
|
const Password = lazy(() => import("keycloakify/account/pages/Password"));
|
8
8
|
const Account = lazy(() => import("keycloakify/account/pages/Account"));
|
9
|
+
const Sessions = lazy(() => import("keycloakify/account/pages/Sessions"));
|
10
|
+
const Totp = lazy(() => import("keycloakify/account/pages/Totp"));
|
11
|
+
const Applications = lazy(() => import("keycloakify/account/pages/Applications"));
|
12
|
+
const Log = lazy(() => import("keycloakify/account/pages/Log"));
|
9
13
|
|
10
14
|
export default function Fallback(props: PageProps<KcContext, I18n>) {
|
11
15
|
const { kcContext, ...rest } = props;
|
@@ -16,8 +20,16 @@ export default function Fallback(props: PageProps<KcContext, I18n>) {
|
|
16
20
|
switch (kcContext.pageId) {
|
17
21
|
case "password.ftl":
|
18
22
|
return <Password kcContext={kcContext} {...rest} />;
|
23
|
+
case "sessions.ftl":
|
24
|
+
return <Sessions kcContext={kcContext} {...rest} />;
|
19
25
|
case "account.ftl":
|
20
26
|
return <Account kcContext={kcContext} {...rest} />;
|
27
|
+
case "totp.ftl":
|
28
|
+
return <Totp kcContext={kcContext} {...rest} />;
|
29
|
+
case "applications.ftl":
|
30
|
+
return <Applications kcContext={kcContext} {...rest} />;
|
31
|
+
case "log.ftl":
|
32
|
+
return <Log kcContext={kcContext} {...rest} />;
|
21
33
|
}
|
22
34
|
assert<Equals<typeof kcContext, never>>(false);
|
23
35
|
})()}
|