新class612
This commit is contained in:
1 parent
4577e60fc2
commit
0986069a06
7 files changed
+935
-37
No files matched your search
+3
-3
@@ -1,5 +1,5 @@
|
||||
// This file is auto-generated by the `update-kc-gen` command. Do not edit it manually.
|
||||
// Hash: 822f146dfd89023346d41d4f77fba9745b7f55365c95ca37f85806c01ab23dc4
|
||||
// Hash: 7dbbfb317418e9799cdce9a990519799f98af7dbfe27f1d0438c6738cffb7515
|
||||
|
||||
/* eslint-disable */
|
||||
|
||||
@@ -9,9 +9,9 @@
|
||||
|
||||
import { lazy, Suspense, type ReactNode } from "react";
|
||||
|
||||
export type ThemeName = "keycloakify-starter";
|
||||
export type ThemeName = "keycloakify-starter" | "class";
|
||||
|
||||
export const themeNames: ThemeName[] = ["keycloakify-starter"];
|
||||
export const themeNames: ThemeName[] = ["keycloakify-starter", "class"];
|
||||
|
||||
export type KcEnvName = never;
|
||||
|
||||
|
||||
+46
-2
@@ -5,6 +5,7 @@ import { useI18n } from "./i18n";
|
||||
import DefaultPage from "keycloakify/login/DefaultPage";
|
||||
import Template from "./Template";
|
||||
import "./theme.css";
|
||||
import "./class-theme.css";
|
||||
const UserProfileFormFields = lazy(
|
||||
() => import("keycloakify/login/UserProfileFormFields")
|
||||
);
|
||||
@@ -25,7 +26,11 @@ export default function KcPage(props: { kcContext: KcContext }) {
|
||||
<DefaultPage
|
||||
kcContext={kcContext}
|
||||
i18n={i18n}
|
||||
classes={classes}
|
||||
classes={
|
||||
kcContext.themeName === "class"
|
||||
? classThemeClasses
|
||||
: nexusThemeClasses
|
||||
}
|
||||
Template={Template}
|
||||
doUseDefaultCss={false}
|
||||
UserProfileFormFields={UserProfileFormFields}
|
||||
@@ -38,7 +43,7 @@ export default function KcPage(props: { kcContext: KcContext }) {
|
||||
);
|
||||
}
|
||||
|
||||
const classes = {
|
||||
const nexusThemeClasses = {
|
||||
kcBodyClass: "nexus-body",
|
||||
kcLoginClass: "nexus-login",
|
||||
kcHeaderClass: "nexus-header",
|
||||
@@ -76,3 +81,42 @@ const classes = {
|
||||
kcLocaleItemClass: "nexus-locale__item",
|
||||
kcInputErrorMessageClass: "nexus-field__error"
|
||||
} satisfies { [key in ClassKey]?: string };
|
||||
|
||||
const classThemeClasses = {
|
||||
kcBodyClass: "class-body",
|
||||
kcLoginClass: "class-login",
|
||||
kcHeaderClass: "class-header",
|
||||
kcHeaderWrapperClass: "class-header__name",
|
||||
kcFormCardClass: "class-card",
|
||||
kcFormHeaderClass: "class-card__header",
|
||||
kcFormGroupClass: "class-field",
|
||||
kcLabelClass: "class-label",
|
||||
kcInputClass: "class-input",
|
||||
kcInputGroup: "class-input-group",
|
||||
kcFormSettingClass: "class-form-settings",
|
||||
kcFormOptionsWrapperClass: "class-form-options",
|
||||
kcFormPasswordVisibilityButtonClass: "class-password-toggle",
|
||||
kcButtonClass: "class-button",
|
||||
kcButtonBlockClass: "class-button--block",
|
||||
kcButtonLargeClass: "class-button--large",
|
||||
kcButtonPrimaryClass: "class-button--primary",
|
||||
kcButtonSecondaryClass: "class-button--secondary",
|
||||
kcButtonDefaultClass: "class-button--default",
|
||||
kcAlertClass: "class-alert",
|
||||
kcFeedbackErrorIcon: "class-feedback class-feedback--error",
|
||||
kcFeedbackWarningIcon: "class-feedback class-feedback--warning",
|
||||
kcFeedbackSuccessIcon: "class-feedback class-feedback--success",
|
||||
kcFeedbackInfoIcon: "class-feedback class-feedback--info",
|
||||
kcFormSocialAccountSectionClass: "class-social",
|
||||
kcFormSocialAccountListClass: "class-social__list",
|
||||
kcFormSocialAccountListButtonClass: "class-social__button",
|
||||
kcFormSocialAccountNameClass: "class-social__name",
|
||||
kcSignUpClass: "class-signup",
|
||||
kcInfoAreaWrapperClass: "class-signup__inner",
|
||||
kcLocaleMainClass: "class-locale",
|
||||
kcLocaleDropDownClass: "class-locale__dropdown",
|
||||
kcLocaleListClass: "class-locale__list",
|
||||
kcLocaleListItemClass: "class-locale__list-item",
|
||||
kcLocaleItemClass: "class-locale__item",
|
||||
kcInputErrorMessageClass: "class-field__error"
|
||||
} satisfies { [key in ClassKey]?: string };
|
||||
+77
-29
@@ -5,39 +5,87 @@ import type { I18n } from "./i18n";
|
||||
|
||||
export default function Template(props: TemplateProps<KcContext, I18n>) {
|
||||
const { msg } = props.i18n;
|
||||
const isClassTheme = props.kcContext.themeName === "class";
|
||||
|
||||
return (
|
||||
<>
|
||||
<div className="nexus-atmosphere" aria-hidden="true">
|
||||
<div className="nexus-grid" />
|
||||
<div className="nexus-orbit nexus-orbit--outer">
|
||||
<span className="nexus-orbit__node" />
|
||||
</div>
|
||||
<div className="nexus-orbit nexus-orbit--inner">
|
||||
<span className="nexus-orbit__node" />
|
||||
</div>
|
||||
<div className="nexus-core">
|
||||
<span>N</span>
|
||||
</div>
|
||||
</div>
|
||||
{isClassTheme ? (
|
||||
<>
|
||||
<div className="class-atmosphere" aria-hidden="true">
|
||||
<span className="class-registration-mark class-registration-mark--top" />
|
||||
<span className="class-registration-mark class-registration-mark--bottom" />
|
||||
<div className="class-mobile-brand">
|
||||
<span>612</span>
|
||||
<b>{msg("classArchiveName")}</b>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<aside className="nexus-manifesto" aria-hidden="true">
|
||||
<div className="nexus-wordmark">
|
||||
<span className="nexus-wordmark__signal" />
|
||||
NEXUS <b>/ ID</b>
|
||||
</div>
|
||||
<div className="nexus-manifesto__copy">
|
||||
<p>{msg("nexusIdentityAccessLayer")}</p>
|
||||
<h2>
|
||||
{msg("nexusSecureAccess")}
|
||||
<span>{msg("nexusPreciselyOrchestrated")}</span>
|
||||
</h2>
|
||||
</div>
|
||||
<div className="nexus-system-status">
|
||||
<span>{msg("nexusSecureChannel")}</span>
|
||||
<span className="nexus-system-status__state">{msg("nexusSystemOnline")}</span>
|
||||
</div>
|
||||
</aside>
|
||||
<aside className="class-record" aria-hidden="true">
|
||||
<div className="class-record__index">
|
||||
<span>ARCHIVE NO. 612</span>
|
||||
<span>{msg("classSchoolCohort")}</span>
|
||||
</div>
|
||||
|
||||
<div className="class-record__copy">
|
||||
<p>{msg("classIdentityArchive")}</p>
|
||||
<h2>
|
||||
{msg("classMemoriesRemain")}
|
||||
<span>{msg("classWelcomeBack")}</span>
|
||||
</h2>
|
||||
</div>
|
||||
|
||||
<div className="class-record__ledger">
|
||||
<div>
|
||||
<strong>1095+</strong>
|
||||
<span>{msg("classDaysTogether")}</span>
|
||||
</div>
|
||||
<div>
|
||||
<strong>612</strong>
|
||||
<span>{msg("classArchiveNumber")}</span>
|
||||
</div>
|
||||
<div>
|
||||
<strong>∞</strong>
|
||||
<span>{msg("classMomentsRemembered")}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className="class-record__stamp">612</div>
|
||||
</aside>
|
||||
</>
|
||||
) : (
|
||||
<>
|
||||
<div className="nexus-atmosphere" aria-hidden="true">
|
||||
<div className="nexus-grid" />
|
||||
<div className="nexus-orbit nexus-orbit--outer">
|
||||
<span className="nexus-orbit__node" />
|
||||
</div>
|
||||
<div className="nexus-orbit nexus-orbit--inner">
|
||||
<span className="nexus-orbit__node" />
|
||||
</div>
|
||||
<div className="nexus-core">
|
||||
<span>N</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<aside className="nexus-manifesto" aria-hidden="true">
|
||||
<div className="nexus-wordmark">
|
||||
<span className="nexus-wordmark__signal" />
|
||||
NEXUS <b>/ ID</b>
|
||||
</div>
|
||||
<div className="nexus-manifesto__copy">
|
||||
<p>{msg("nexusIdentityAccessLayer")}</p>
|
||||
<h2>
|
||||
{msg("nexusSecureAccess")}
|
||||
<span>{msg("nexusPreciselyOrchestrated")}</span>
|
||||
</h2>
|
||||
</div>
|
||||
<div className="nexus-system-status">
|
||||
<span>{msg("nexusSecureChannel")}</span>
|
||||
<span className="nexus-system-status__state">{msg("nexusSystemOnline")}</span>
|
||||
</div>
|
||||
</aside>
|
||||
</>
|
||||
)}
|
||||
|
||||
<BaseTemplate {...props} />
|
||||
</>
|
||||
|
||||
Loaded 3 of 7 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user