Compare commits

..

6 Commits

49 changed files with 498 additions and 173 deletions

View File

@ -1,3 +1,8 @@
### **0.1.3** (2021-03-07)
- Implement LoginVerifyEmail
- Implement login-reset-password.ftl
### **0.1.2** (2021-03-07)
- Fix build

View File

@ -1,4 +1,4 @@
export declare const pageIds: readonly ["login.ftl", "register.ftl", "info.ftl", "error.ftl"];
export declare const pageIds: readonly ["login.ftl", "register.ftl", "info.ftl", "error.ftl", "login-reset-password.ftl", "login-verify-email.ftl"];
export declare type PageId = typeof pageIds[number];
export declare function generateFtlFilesCodeFactory(params: {
ftlValuesGlobalName: string;

View File

@ -41,15 +41,20 @@ var replaceImportFromStatic_1 = require("../replaceImportFromStatic");
var fs_1 = __importDefault(require("fs"));
var path_1 = require("path");
var objectKeys_1 = require("evt/tools/typeSafety/objectKeys");
exports.pageIds = ["login.ftl", "register.ftl", "info.ftl", "error.ftl"];
exports.pageIds = ["login.ftl", "register.ftl", "info.ftl", "error.ftl", "login-reset-password.ftl", "login-verify-email.ftl"];
function loadAdjacentFile(fileBasename) {
return fs_1.default.readFileSync(path_1.join(__dirname, fileBasename))
.toString("utf8");
}
;
function loadFtlFile(ftlFileBasename) {
return loadAdjacentFile(ftlFileBasename)
.match(/^<script>const _=((?:.|\n)+)<\/script>[\n]?$/)[1];
try {
return loadAdjacentFile(ftlFileBasename)
.match(/^<script>const _=((?:.|\n)+)<\/script>[\n]?$/)[1];
}
catch (_a) {
return "{}";
}
}
function generateFtlFilesCodeFactory(params) {
var ftlValuesGlobalName = params.ftlValuesGlobalName, cssGlobalsToDefine = params.cssGlobalsToDefine, indexHtmlCode = params.indexHtmlCode;

View File

@ -1 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bin/build-keycloak-theme/generateFtl/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,oDAA8B;AAC9B,sEAGoC;AACpC,0CAAoB;AACpB,6BAAwC;AACxC,8DAA6D;AAEhD,QAAA,OAAO,GAAE,CAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,CAAU,CAAC;AAIvF,SAAS,gBAAgB,CAAC,YAAoB;IAC1C,OAAO,YAAE,CAAC,YAAY,CAAC,WAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;SACpD,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC1B,CAAC;AAAA,CAAC;AAEF,SAAS,WAAW,CAAC,eAAwC;IACzD,OAAO,gBAAgB,CAAC,eAAe,CAAC;SACnC,KAAK,CAAC,8CAA8C,CAAE,CAAC,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,SAAgB,2BAA2B,CACvC,MAIC;IAGO,IAAA,mBAAmB,GAAwC,MAAM,oBAA9C,EAAE,kBAAkB,GAAoB,MAAM,mBAA1B,EAAE,aAAa,GAAK,MAAM,cAAX,CAAY;IAE1E,IAAM,CAAC,GAAG,iBAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAEtC,CAAC,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC;QAAC,YAAc;aAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;YAAd,uBAAc;;QAAd,IAAA,KAAA,aAAc,EAAR,OAAO,QAAA,CAAC;QAE/B,IAAA,WAAW,GAAK,yDAA+B,CAAC;YACpD,mBAAmB,qBAAA;YACnB,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAG;SAC/B,CAAC,YAHiB,CAGhB;QAEH,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAEjC,CAAC,CAAC,CAAC;IAEF;QACG,CAAC,MAAM,EAAE,MAAM,CAAC;QAChB,CAAC,QAAQ,EAAE,KAAK,CAAC;KACV,CAAC,OAAO,CAAC,UAAC,EAAoB;YAApB,KAAA,aAAoB,EAAnB,QAAQ,QAAA,EAAE,QAAQ,QAAA;QACpC,OAAA,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;YAAC,YAAc;iBAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;gBAAd,uBAAc;;YAAd,IAAA,KAAA,aAAc,EAAR,OAAO,QAAA,CAAC;YAE5B,IAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEvC,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAC,GAAG,CAAC,CAAA,EAAE;gBACxB,OAAO;aACV;YAED,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,4BAA4B,GAAG,IAAI,CAAC,CAAC;QAEnE,CAAC,CAAC;IAVF,CAUE,CACL,CAAC;IAEF,6FAA6F;IAC7F,IAAM,qBAAqB,GAAG;QAC1B,oCAAoC,EAAE,WAAW,CAAC,cAAc,CAAC;QACjE,sCAAsC,EAClC;YACI,iBAAiB;YACjB,+BAA+B;YAC/B,kEAAkE;YAClE,cAAc;YACd,QAAQ;SACX,CAAC,IAAI,CAAC,IAAI,CAAC;KACnB,CAAC;IAEF,IAAM,2BAA2B,GAAG,yCAAyC,CAAC;IAE9E,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CACb,qDACO,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpD,EAAE;QACF,SAAS;QACT,wDAA8B,CAC1B,EAAE,kBAAkB,oBAAA,EAAE,CACzB,CAAC,sBAAsB;QACxB,UAAU;QACV,EAAE;KACL,CAAC,WACC,CAAC,sBAAsB,EAAE,wBAAwB,CAAC,CAAC,GAAG,CACrD,UAAA,YAAY,IAAI,OAAA;QACZ,UAAU;QACV,gBAAgB,CAAC,YAAY,CAAC;QAC9B,WAAW;KACd,CAAC,IAAI,CAAC,IAAI,CAAC,EAJI,CAIJ,CACf;QACD,UAAU;QACV,gBAAc,mBAAmB,qBAAkB;QACnD,aAAa;QACb,aAAW,uBAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAG;QACjD,QAAQ;QACR,WAAW;QACX,EAAE;QACF,2BAA2B;QAC3B,EAAE;QACF,uBAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;OACtC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;IAEF,IAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAE7C,SAAS,oBAAoB,CACzB,MAEC;QAGO,IAAA,MAAM,GAAK,MAAM,OAAX,CAAY;QAE1B,IAAM,CAAC,GAAG,iBAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAEpD,IAAM,eAAe,cACjB,qCAAqC,EAAE,WAAW,CAAC,MAAM,CAAC,IACvD,qBAAqB,CAC3B,CAAC;QAEF,IAAI,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE;aACjB,OAAO,CACJ,2BAA2B,EAC3B;YACI,UAAU;YACV,wBAAwB;YACxB,oBAAkB,mBAAmB,MAAG;YACxC,6BAAwB,MAAM,SAAK;YACnC,QAAQ;YACR,wBAAwB;YACxB,oBAAkB,mBAAmB,MAAG;YACxC,aAAW,uBAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAG;YAC3C,QAAQ;YACR,WAAW;SACd,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;QAEN,uBAAU,CAAC,eAAe,CAAC;aACtB,OAAO,CAAC,UAAA,EAAE,IAAI,OAAA,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,eAAe,CAAC,EAAE,CAAC,CAAC,EAAlD,CAAkD,CAAC,CAAC;QAEvE,OAAO,EAAE,OAAO,SAAA,EAAE,CAAC;IAEvB,CAAC;IAED,OAAO,EAAE,oBAAoB,sBAAA,EAAE,CAAC;AAGpC,CAAC;AAlID,kEAkIC"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bin/build-keycloak-theme/generateFtl/index.ts"],"names":[],"mappings":"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"}

View File

@ -0,0 +1,7 @@
<script>const _=
{
"realm": {
"loginWithEmailAllowed": ${realm.loginWithEmailAllowed?c}
},
}
</script>

View File

@ -17,15 +17,15 @@ var react_1 = require("react");
var Template_1 = require("./Template");
var assert_1 = require("../tools/assert");
var kcContext_1 = require("../kcContext");
var useKcTranslation_1 = require("../i18n/useKcTranslation");
var useKcMessage_1 = require("../i18n/useKcMessage");
exports.Error = react_1.memo(function (props) {
var t = useKcTranslation_1.useKcTranslation().t;
var msg = useKcMessage_1.useKcMessage().msg;
assert_1.assert(kcContext_1.kcContext !== undefined &&
kcContext_1.kcContext.pageId === "error.ftl" &&
kcContext_1.kcContext.message !== undefined);
var message = kcContext_1.kcContext.message, client = kcContext_1.kcContext.client;
return (jsx_runtime_1.jsx(Template_1.Template, __assign({}, props, { displayMessage: false, headerNode: t("errorTitle"), formNode: jsx_runtime_1.jsxs("div", __assign({ id: "kc-error-message" }, { children: [jsx_runtime_1.jsx("p", __assign({ className: "instruction" }, { children: message.summary }), void 0),
return (jsx_runtime_1.jsx(Template_1.Template, __assign({}, props, { displayMessage: false, headerNode: msg("errorTitle"), formNode: jsx_runtime_1.jsxs("div", __assign({ id: "kc-error-message" }, { children: [jsx_runtime_1.jsx("p", __assign({ className: "instruction" }, { children: message.summary }), void 0),
client !== undefined && client.baseUrl !== undefined &&
jsx_runtime_1.jsx("p", { children: jsx_runtime_1.jsx("a", __assign({ id: "backToApplication", href: client.baseUrl }, { children: t("backToApplication") }), void 0) }, void 0)] }), void 0) }), void 0));
jsx_runtime_1.jsx("p", { children: jsx_runtime_1.jsx("a", __assign({ id: "backToApplication", href: client.baseUrl }, { children: msg("backToApplication") }), void 0) }, void 0)] }), void 0) }), void 0));
});
//# sourceMappingURL=Error.js.map

View File

@ -1 +1 @@
{"version":3,"file":"Error.js","sourceRoot":"","sources":["../../src/lib/components/Error.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+BAA6B;AAC7B,uCAAsC;AAEtC,0CAAyC;AACzC,0CAAyC;AACzC,6DAA4D;AAE/C,QAAA,KAAK,GAAG,YAAI,CAAC,UAAC,KAAc;IAE7B,IAAA,CAAC,GAAK,mCAAgB,EAAE,EAAvB,CAAwB;IAEjC,eAAM,CACF,qBAAS,KAAK,SAAS;QACvB,qBAAS,CAAC,MAAM,KAAK,WAAW;QAChC,qBAAS,CAAC,OAAO,KAAK,SAAS,CAClC,CAAC;IAEM,IAAA,OAAO,GAAa,qBAAS,QAAtB,EAAE,MAAM,GAAK,qBAAS,OAAd,CAAe;IAEtC,OAAO,CACH,kBAAC,mBAAQ,eACD,KAAK,IACT,cAAc,EAAE,KAAK,EACrB,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC,EAC3B,QAAQ,EACJ,qCAAK,EAAE,EAAC,kBAAkB,iBACtB,kCAAG,SAAS,EAAC,aAAa,gBAAE,OAAO,CAAC,OAAO,YAAK;gBAE5C,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;oBACpD,mCACI,kCAAG,EAAE,EAAC,mBAAmB,EAAC,IAAI,EAAE,MAAM,CAAC,OAAO,gBACzC,CAAC,CAAC,mBAAmB,CAAC,YACvB,WACJ,aAEN,YAEZ,CACL,CAAC;AACN,CAAC,CAAC,CAAC"}
{"version":3,"file":"Error.js","sourceRoot":"","sources":["../../src/lib/components/Error.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+BAA6B;AAC7B,uCAAsC;AAEtC,0CAAyC;AACzC,0CAAyC;AACzC,qDAAoD;AAEvC,QAAA,KAAK,GAAG,YAAI,CAAC,UAAC,KAAc;IAE7B,IAAA,GAAG,GAAK,2BAAY,EAAE,IAAnB,CAAoB;IAE/B,eAAM,CACF,qBAAS,KAAK,SAAS;QACvB,qBAAS,CAAC,MAAM,KAAK,WAAW;QAChC,qBAAS,CAAC,OAAO,KAAK,SAAS,CAClC,CAAC;IAEM,IAAA,OAAO,GAAa,qBAAS,QAAtB,EAAE,MAAM,GAAK,qBAAS,OAAd,CAAe;IAEtC,OAAO,CACH,kBAAC,mBAAQ,eACD,KAAK,IACT,cAAc,EAAE,KAAK,EACrB,UAAU,EAAE,GAAG,CAAC,YAAY,CAAC,EAC7B,QAAQ,EACJ,qCAAK,EAAE,EAAC,kBAAkB,iBACtB,kCAAG,SAAS,EAAC,aAAa,gBAAE,OAAO,CAAC,OAAO,YAAK;gBAE5C,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;oBACpD,mCACI,kCAAG,EAAE,EAAC,mBAAmB,EAAC,IAAI,EAAE,MAAM,CAAC,OAAO,gBACzC,GAAG,CAAC,mBAAmB,CAAC,YACzB,WACJ,aAEN,YAEZ,CACL,CAAC;AACN,CAAC,CAAC,CAAC"}

View File

@ -17,9 +17,9 @@ var react_1 = require("react");
var Template_1 = require("./Template");
var assert_1 = require("../tools/assert");
var kcContext_1 = require("../kcContext");
var useKcTranslation_1 = require("../i18n/useKcTranslation");
var useKcMessage_1 = require("../i18n/useKcMessage");
exports.Info = react_1.memo(function (props) {
var t = useKcTranslation_1.useKcTranslation().t;
var msg = useKcMessage_1.useKcMessage().msg;
assert_1.assert(kcContext_1.kcContext !== undefined &&
kcContext_1.kcContext.pageId === "info.ftl" &&
kcContext_1.kcContext.message !== undefined);
@ -29,16 +29,16 @@ exports.Info = react_1.memo(function (props) {
:
jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: message.summary }, void 0), formNode: jsx_runtime_1.jsxs("div", __assign({ id: "kc-info-message" }, { children: [jsx_runtime_1.jsxs("p", __assign({ className: "instruction" }, { children: [message.summary, requiredActions !== undefined &&
jsx_runtime_1.jsx("b", { children: requiredActions
.map(function (requiredAction) { return t("requiredAction." + requiredAction); })
.map(function (requiredAction) { return msg("requiredAction." + requiredAction); })
.join(",") }, void 0)] }), void 0),
!skipLink &&
pageRedirectUri !== undefined ?
jsx_runtime_1.jsx("p", { children: jsx_runtime_1.jsxs("a", __assign({ href: "${pageRedirectUri}" }, { children: ["$", (t("backToApplication"))] }), void 0) }, void 0)
jsx_runtime_1.jsx("p", { children: jsx_runtime_1.jsxs("a", __assign({ href: "${pageRedirectUri}" }, { children: ["$", (msg("backToApplication"))] }), void 0) }, void 0)
:
actionUri !== undefined ?
jsx_runtime_1.jsx("p", { children: jsx_runtime_1.jsxs("a", __assign({ href: "${actionUri}" }, { children: ["$", t("proceedWithAction")] }), void 0) }, void 0)
jsx_runtime_1.jsx("p", { children: jsx_runtime_1.jsxs("a", __assign({ href: "${actionUri}" }, { children: ["$", msg("proceedWithAction")] }), void 0) }, void 0)
:
client.baseUrl !== undefined &&
jsx_runtime_1.jsx("p", { children: jsx_runtime_1.jsxs("a", __assign({ href: "${client.baseUrl}" }, { children: ["$", t("backToApplication")] }), void 0) }, void 0)] }), void 0) }), void 0));
jsx_runtime_1.jsx("p", { children: jsx_runtime_1.jsxs("a", __assign({ href: "${client.baseUrl}" }, { children: ["$", msg("backToApplication")] }), void 0) }, void 0)] }), void 0) }), void 0));
});
//# sourceMappingURL=Info.js.map

View File

@ -1 +1 @@
{"version":3,"file":"Info.js","sourceRoot":"","sources":["../../src/lib/components/Info.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+BAA6B;AAC7B,uCAAsC;AAEtC,0CAAyC;AACzC,0CAAyC;AACzC,6DAA4D;AAE/C,QAAA,IAAI,GAAG,YAAI,CAAC,UAAC,KAAc;IAE5B,IAAA,CAAC,GAAK,mCAAgB,EAAE,EAAvB,CAAwB;IAEjC,eAAM,CACF,qBAAS,KAAK,SAAS;QACvB,qBAAS,CAAC,MAAM,KAAK,UAAU;QAC/B,qBAAS,CAAC,OAAO,KAAK,SAAS,CAClC,CAAC;IAGE,IAAA,aAAa,GAOb,qBAAS,cAPI,EACb,OAAO,GAMP,qBAAS,QANF,EACP,eAAe,GAKf,qBAAS,gBALM,EACf,QAAQ,GAIR,qBAAS,SAJD,EACR,eAAe,GAGf,qBAAS,gBAHM,EACf,SAAS,GAET,qBAAS,UAFA,EACT,MAAM,GACN,qBAAS,OADH,CACI;IAEd,OAAO,CACH,kBAAC,mBAAQ,eACD,KAAK,IACT,cAAc,EAAE,KAAK,EACrB,UAAU,EACN,aAAa,KAAK,SAAS,CAAC,CAAC;YACzB,sDAAG,aAAa,WAAI;YACpB,CAAC;gBACD,sDAAG,OAAO,CAAC,OAAO,WAAI,EAE9B,QAAQ,EACJ,qCAAK,EAAE,EAAC,iBAAiB,iBACrB,mCAAG,SAAS,EAAC,aAAa,iBAAE,OAAO,CAAC,OAAO,EAGnC,eAAe,KAAK,SAAS;4BAC7B,mCAEQ,eAAe;qCACV,GAAG,CAAC,UAAA,cAAc,IAAI,OAAA,CAAC,CAAC,oBAAkB,cAAyB,CAAC,EAA9C,CAA8C,CAAC;qCACrE,IAAI,CAAC,GAAG,CAAC,WAGlB,aAIR;gBAEA,CAAC,QAAQ;oBACL,eAAe,KAAK,SAAS,CAAC,CAAC;oBAC/B,mCAAG,mCAAG,IAAI,EAAC,oBAAoB,sBAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,aAAK,WAAI;oBACnE,CAAC;wBACD,SAAS,KAAK,SAAS,CAAC,CAAC;4BACrB,mCAAG,mCAAG,IAAI,EAAC,cAAc,sBAAG,CAAC,CAAC,mBAAmB,CAAC,aAAK,WAAI;4BAC3D,CAAC;gCACD,MAAM,CAAC,OAAO,KAAK,SAAS;oCAC5B,mCAAG,mCAAG,IAAI,EAAC,mBAAmB,sBAAG,CAAC,CAAC,mBAAmB,CAAC,aAAK,WAAI,aAE1E,YAIZ,CACL,CAAC;AACN,CAAC,CAAC,CAAC"}
{"version":3,"file":"Info.js","sourceRoot":"","sources":["../../src/lib/components/Info.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+BAA6B;AAC7B,uCAAsC;AAEtC,0CAAyC;AACzC,0CAAyC;AACzC,qDAAoD;AAEvC,QAAA,IAAI,GAAG,YAAI,CAAC,UAAC,KAAc;IAE5B,IAAA,GAAG,GAAK,2BAAY,EAAE,IAAnB,CAAoB;IAE/B,eAAM,CACF,qBAAS,KAAK,SAAS;QACvB,qBAAS,CAAC,MAAM,KAAK,UAAU;QAC/B,qBAAS,CAAC,OAAO,KAAK,SAAS,CAClC,CAAC;IAGE,IAAA,aAAa,GAOb,qBAAS,cAPI,EACb,OAAO,GAMP,qBAAS,QANF,EACP,eAAe,GAKf,qBAAS,gBALM,EACf,QAAQ,GAIR,qBAAS,SAJD,EACR,eAAe,GAGf,qBAAS,gBAHM,EACf,SAAS,GAET,qBAAS,UAFA,EACT,MAAM,GACN,qBAAS,OADH,CACI;IAEd,OAAO,CACH,kBAAC,mBAAQ,eACD,KAAK,IACT,cAAc,EAAE,KAAK,EACrB,UAAU,EACN,aAAa,KAAK,SAAS,CAAC,CAAC;YACzB,sDAAG,aAAa,WAAI;YACpB,CAAC;gBACD,sDAAG,OAAO,CAAC,OAAO,WAAI,EAE9B,QAAQ,EACJ,qCAAK,EAAE,EAAC,iBAAiB,iBACrB,mCAAG,SAAS,EAAC,aAAa,iBAAE,OAAO,CAAC,OAAO,EAGnC,eAAe,KAAK,SAAS;4BAC7B,mCAEQ,eAAe;qCACV,GAAG,CAAC,UAAA,cAAc,IAAI,OAAA,GAAG,CAAC,oBAAkB,cAAyB,CAAC,EAAhD,CAAgD,CAAC;qCACvE,IAAI,CAAC,GAAG,CAAC,WAGlB,aAIR;gBAEA,CAAC,QAAQ;oBACL,eAAe,KAAK,SAAS,CAAC,CAAC;oBAC/B,mCAAG,mCAAG,IAAI,EAAC,oBAAoB,sBAAG,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,aAAK,WAAI;oBACrE,CAAC;wBACD,SAAS,KAAK,SAAS,CAAC,CAAC;4BACrB,mCAAG,mCAAG,IAAI,EAAC,cAAc,sBAAG,GAAG,CAAC,mBAAmB,CAAC,aAAK,WAAI;4BAC7D,CAAC;gCACD,MAAM,CAAC,OAAO,KAAK,SAAS;oCAC5B,mCAAG,mCAAG,IAAI,EAAC,mBAAmB,sBAAG,GAAG,CAAC,mBAAmB,CAAC,aAAK,WAAI,aAE5E,YAIZ,CACL,CAAC;AACN,CAAC,CAAC,CAAC"}

View File

@ -20,6 +20,8 @@ var Login_1 = require("./Login");
var Register_1 = require("./Register");
var Info_1 = require("./Info");
var Error_1 = require("./Error");
var LoginResetPassword_1 = require("./LoginResetPassword");
var LoginVerifyEmail_1 = require("./LoginVerifyEmail");
exports.KcApp = react_1.memo(function (props) {
assert_1.assert(kcContext_1.kcContext !== undefined, "App is not currently served by a Keycloak server");
switch (kcContext_1.kcContext.pageId) {
@ -27,6 +29,8 @@ exports.KcApp = react_1.memo(function (props) {
case "register.ftl": return jsx_runtime_1.jsx(Register_1.Register, __assign({}, props), void 0);
case "info.ftl": return jsx_runtime_1.jsx(Info_1.Info, __assign({}, props), void 0);
case "error.ftl": return jsx_runtime_1.jsx(Error_1.Error, __assign({}, props), void 0);
case "login-reset-password.ftl": return jsx_runtime_1.jsx(LoginResetPassword_1.LoginResetPassword, __assign({}, props), void 0);
case "login-verify-email.ftl": return jsx_runtime_1.jsx(LoginVerifyEmail_1.LoginVerifyEmail, __assign({}, props), void 0);
}
});
//# sourceMappingURL=KcApp.js.map

View File

@ -1 +1 @@
{"version":3,"file":"KcApp.js","sourceRoot":"","sources":["../../src/lib/components/KcApp.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+BAA6B;AAC7B,0CAAyC;AACzC,0CAAyC;AAEzC,iCAAgC;AAChC,uCAAsC;AACtC,+BAA8B;AAC9B,iCAAgC;AAGnB,QAAA,KAAK,GAAG,YAAI,CAAC,UAAC,KAAc;IAErC,eAAM,CAAC,qBAAS,KAAK,SAAS,EAAE,kDAAkD,CAAC,CAAC;IAEpF,QAAQ,qBAAS,CAAC,MAAM,EAAE;QACtB,KAAK,WAAW,CAAC,CAAC,OAAO,kBAAC,aAAK,eAAK,KAAK,UAAI,CAAC;QAC9C,KAAK,cAAc,CAAC,CAAC,OAAO,kBAAC,mBAAQ,eAAK,KAAK,UAAI,CAAC;QACpD,KAAK,UAAU,CAAC,CAAC,OAAO,kBAAC,WAAI,eAAK,KAAK,UAAI,CAAC;QAC5C,KAAK,WAAW,CAAC,CAAC,OAAO,kBAAC,aAAK,eAAK,KAAK,UAAI,CAAC;KACjD;AAEL,CAAC,CAAC,CAAC"}
{"version":3,"file":"KcApp.js","sourceRoot":"","sources":["../../src/lib/components/KcApp.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+BAA6B;AAC7B,0CAAyC;AACzC,0CAAyC;AAEzC,iCAAgC;AAChC,uCAAsC;AACtC,+BAA8B;AAC9B,iCAAgC;AAChC,2DAA0D;AAC1D,uDAAsD;AAEzC,QAAA,KAAK,GAAG,YAAI,CAAC,UAAC,KAAc;IAErC,eAAM,CAAC,qBAAS,KAAK,SAAS,EAAE,kDAAkD,CAAC,CAAC;IAEpF,QAAQ,qBAAS,CAAC,MAAM,EAAE;QACtB,KAAK,WAAW,CAAC,CAAC,OAAO,kBAAC,aAAK,eAAK,KAAK,UAAI,CAAC;QAC9C,KAAK,cAAc,CAAC,CAAC,OAAO,kBAAC,mBAAQ,eAAK,KAAK,UAAI,CAAC;QACpD,KAAK,UAAU,CAAC,CAAC,OAAO,kBAAC,WAAI,eAAK,KAAK,UAAI,CAAC;QAC5C,KAAK,WAAW,CAAC,CAAC,OAAO,kBAAC,aAAK,eAAK,KAAK,UAAI,CAAC;QAC9C,KAAK,0BAA0B,CAAC,CAAC,OAAO,kBAAC,uCAAkB,eAAK,KAAK,UAAI,CAAC;QAC1E,KAAK,wBAAwB,CAAC,CAAC,OAAO,kBAAC,mCAAgB,eAAK,KAAK,UAAI,CAAC;KACzE;AAEL,CAAC,CAAC,CAAC"}

View File

@ -33,12 +33,12 @@ var react_1 = require("react");
var Template_1 = require("./Template");
var assert_1 = require("../tools/assert");
var kcContext_1 = require("../kcContext");
var useKcTranslation_1 = require("../i18n/useKcTranslation");
var useKcMessage_1 = require("../i18n/useKcMessage");
var tss_react_1 = require("tss-react");
var powerhooks_1 = require("powerhooks");
exports.Login = react_1.memo(function (props) {
var _a;
var _b = useKcTranslation_1.useKcTranslation(), t = _b.t, tStr = _b.tStr;
var _b = useKcMessage_1.useKcMessage(), msg = _b.msg, msgStr = _b.msgStr;
assert_1.assert(kcContext_1.kcContext !== undefined &&
kcContext_1.kcContext.pageId === "login.ftl");
var social = kcContext_1.kcContext.social, realm = kcContext_1.kcContext.realm, url = kcContext_1.kcContext.url, usernameEditDisabled = kcContext_1.kcContext.usernameEditDisabled, login = kcContext_1.kcContext.login, auth = kcContext_1.kcContext.auth, registrationDisabled = kcContext_1.kcContext.registrationDisabled;
@ -46,29 +46,29 @@ exports.Login = react_1.memo(function (props) {
var onSubmit = powerhooks_1.useConstCallback(function () {
return (setIsLoginButtonDisabled(true), true);
});
return (jsx_runtime_1.jsx(Template_1.Template, __assign({}, props, { displayInfo: social.displayInfo, displayWide: realm.password && social.providers !== undefined, headerNode: t("doLogIn"), formNode: jsx_runtime_1.jsxs("div", __assign({ id: "kc-form", className: tss_react_1.cx(realm.password && social.providers !== undefined && props.kcContentWrapperClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ id: "kc-form-wrapper", className: tss_react_1.cx(realm.password && social.providers && [props.kcFormSocialAccountContentClass, props.kcFormSocialAccountClass]) }, { children: realm.password &&
return (jsx_runtime_1.jsx(Template_1.Template, __assign({}, props, { displayInfo: social.displayInfo, displayWide: realm.password && social.providers !== undefined, headerNode: msg("doLogIn"), formNode: jsx_runtime_1.jsxs("div", __assign({ id: "kc-form", className: tss_react_1.cx(realm.password && social.providers !== undefined && props.kcContentWrapperClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ id: "kc-form-wrapper", className: tss_react_1.cx(realm.password && social.providers && [props.kcFormSocialAccountContentClass, props.kcFormSocialAccountClass]) }, { children: realm.password &&
(jsx_runtime_1.jsxs("form", __assign({ id: "kc-form-login", onSubmit: onSubmit, action: url.loginAction, method: "post" }, { children: [jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: [jsx_runtime_1.jsx("label", __assign({ htmlFor: "username", className: tss_react_1.cx(props.kcLabelClass) }, { children: !realm.loginWithEmailAllowed ?
t("username")
msg("username")
:
(!realm.registrationEmailAsUsername ?
t("usernameOrEmail") :
t("email")) }), void 0),
msg("usernameOrEmail") :
msg("email")) }), void 0),
jsx_runtime_1.jsx("input", __assign({ tabIndex: 1, id: "username", className: tss_react_1.cx(props.kcInputClass), name: "username", defaultValue: (_a = login.username) !== null && _a !== void 0 ? _a : '', type: "text" }, (usernameEditDisabled ? { "disabled": true } : { "autoFocus": true, "autocomplete": "off" })), void 0)] }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: [jsx_runtime_1.jsx("label", __assign({ htmlFor: "password", className: tss_react_1.cx(props.kcLabelClass) }, { children: t("password") }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: [jsx_runtime_1.jsx("label", __assign({ htmlFor: "password", className: tss_react_1.cx(props.kcLabelClass) }, { children: msg("password") }), void 0),
jsx_runtime_1.jsx("input", { tabIndex: 2, id: "password", className: tss_react_1.cx(props.kcInputClass), name: "password", type: "password", autoComplete: "off" }, void 0)] }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, props.kcFormSettingClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ id: "kc-form-options" }, { children: (realm.rememberMe &&
!usernameEditDisabled) &&
jsx_runtime_1.jsx("div", __assign({ className: "checkbox" }, { children: jsx_runtime_1.jsxs("label", { children: [jsx_runtime_1.jsx("input", __assign({ tabIndex: 3, id: "rememberMe", name: "rememberMe", type: "checkbox" }, (login.rememberMe ? { "checked": true } : {})), void 0), t("rememberMe")] }, void 0) }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: "checkbox" }, { children: jsx_runtime_1.jsxs("label", { children: [jsx_runtime_1.jsx("input", __assign({ tabIndex: 3, id: "rememberMe", name: "rememberMe", type: "checkbox" }, (login.rememberMe ? { "checked": true } : {})), void 0), msg("rememberMe")] }, void 0) }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcFormOptionsWrapperClass) }, { children: realm.resetPasswordAllowed &&
jsx_runtime_1.jsx("span", { children: jsx_runtime_1.jsx("a", __assign({ tabIndex: 5, href: url.loginResetCredentialsUrl }, { children: t("doForgotPassword") }), void 0) }, void 0) }), void 0)] }), void 0),
jsx_runtime_1.jsx("span", { children: jsx_runtime_1.jsx("a", __assign({ tabIndex: 5, href: url.loginResetCredentialsUrl }, { children: msg("doForgotPassword") }), void 0) }, void 0) }), void 0)] }), void 0),
jsx_runtime_1.jsxs("div", __assign({ id: "kc-form-buttons", className: tss_react_1.cx(props.kcFormGroupClass) }, { children: [jsx_runtime_1.jsx("input", __assign({ type: "hidden", id: "id-hidden-input", name: "credentialId" }, ((auth === null || auth === void 0 ? void 0 : auth.selectedCredential) !== undefined ? { "value": auth.selectedCredential } : {})), void 0),
jsx_runtime_1.jsx("input", { tabIndex: 4, className: tss_react_1.cx(props.kcButtonClass, props.kcButtonPrimaryClass, props.kcButtonBlockClass, props.kcButtonLargeClass), name: "login", id: "kc-login", type: "submit", value: tStr("doLogIn"), disabled: isLoginButtonDisabled }, void 0)] }), void 0)] }), void 0)) }), void 0),
jsx_runtime_1.jsx("input", { tabIndex: 4, className: tss_react_1.cx(props.kcButtonClass, props.kcButtonPrimaryClass, props.kcButtonBlockClass, props.kcButtonLargeClass), name: "login", id: "kc-login", type: "submit", value: msgStr("doLogIn"), disabled: isLoginButtonDisabled }, void 0)] }), void 0)] }), void 0)) }), void 0),
(realm.password && social.providers !== undefined) &&
jsx_runtime_1.jsx("div", __assign({ id: "kc-social-providers", className: tss_react_1.cx(props.kcFormSocialAccountContentClass, props.kcFormSocialAccountClass) }, { children: jsx_runtime_1.jsx("ul", __assign({ className: tss_react_1.cx(props.kcFormSocialAccountListClass, social.providers.length > 4 && props.kcFormSocialAccountDoubleListClass) }, { children: social.providers.map(function (p) {
return jsx_runtime_1.jsx("li", __assign({ className: tss_react_1.cx(props.kcFormSocialAccountListLinkClass) }, { children: jsx_runtime_1.jsx("a", __assign({ href: p.loginUrl, id: "zocial-" + p.alias, className: tss_react_1.cx("zocial", p.providerId) }, { children: jsx_runtime_1.jsx("span", { children: p.displayName }, void 0) }), void 0) }), void 0);
}) }), void 0) }), void 0)] }), void 0), displayInfoNode: (realm.password &&
}) }), void 0) }), void 0)] }), void 0), infoNode: (realm.password &&
realm.registrationAllowed &&
!registrationDisabled) &&
jsx_runtime_1.jsx("div", __assign({ id: "kc-registration" }, { children: jsx_runtime_1.jsxs("span", { children: [t("noAccount"), jsx_runtime_1.jsx("a", __assign({ tabIndex: 6, href: url.registrationUrl }, { children: t("doRegister") }), void 0)] }, void 0) }), void 0) }), void 0));
jsx_runtime_1.jsx("div", __assign({ id: "kc-registration" }, { children: jsx_runtime_1.jsxs("span", { children: [msg("noAccount"), jsx_runtime_1.jsx("a", __assign({ tabIndex: 6, href: url.registrationUrl }, { children: msg("doRegister") }), void 0)] }, void 0) }), void 0) }), void 0));
});
//# sourceMappingURL=Login.js.map

View File

@ -1 +1 @@
{"version":3,"file":"Login.js","sourceRoot":"","sources":["../../src/lib/components/Login.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+BAAuC;AACvC,uCAAsC;AAEtC,0CAAyC;AACzC,0CAAyC;AACzC,6DAA4D;AAC5D,uCAA+B;AAC/B,yCAA8C;AAEjC,QAAA,KAAK,GAAG,YAAI,CAAC,UAAC,KAAc;;IAE/B,IAAA,KAAc,mCAAgB,EAAE,EAA9B,CAAC,OAAA,EAAE,IAAI,UAAuB,CAAC;IAEvC,eAAM,CACF,qBAAS,KAAK,SAAS;QACvB,qBAAS,CAAC,MAAM,KAAK,WAAW,CACnC,CAAC;IAGE,IAAA,MAAM,GAGN,qBAAS,OAHH,EAAE,KAAK,GAGb,qBAAS,MAHI,EAAE,GAAG,GAGlB,qBAAS,IAHS,EAClB,oBAAoB,GAEpB,qBAAS,qBAFW,EAAE,KAAK,GAE3B,qBAAS,MAFkB,EAC3B,IAAI,GACJ,qBAAS,KADL,EAAE,oBAAoB,GAC1B,qBAAS,qBADiB,CAChB;IAER,IAAA,KAAA,OAAoD,gBAAQ,CAAC,KAAK,CAAC,IAAA,EAAlE,qBAAqB,QAAA,EAAE,wBAAwB,QAAmB,CAAC;IAE1E,IAAM,QAAQ,GAAG,6BAAgB,CAAC;QAC9B,OAAA,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IAAtC,CAAsC,CACzC,CAAC;IAEF,OAAO,CACH,kBAAC,mBAAQ,eACD,KAAK,IACT,WAAW,EAAE,MAAM,CAAC,WAAW,EAC/B,WAAW,EAAE,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAC7D,UAAU,EAAE,CAAC,CAAC,SAAS,CAAC,EACxB,QAAQ,EACJ,qCACI,EAAE,EAAC,SAAS,EACZ,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,qBAAqB,CAAC,iBAE9F,oCACI,EAAE,EAAC,iBAAiB,EACpB,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,wBAAwB,CAAC,CAAC,gBAGxH,KAAK,CAAC,QAAQ;wBACd,CACI,sCAAM,EAAE,EAAC,eAAe,EAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,EAAC,MAAM,iBAC/E,qCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,iBACtC,sCAAO,OAAO,EAAC,UAAU,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,YAAY,CAAC,gBAEnD,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;gDAC1B,CAAC,CAAC,UAAU,CAAC;gDACb,CAAC;oDACD,CACI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;wDAChC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;wDACtB,CAAC,CAAC,OAAO,CAAC,CACjB,YAEL;wCACR,sCACI,QAAQ,EAAE,CAAC,EACX,EAAE,EAAC,UAAU,EACb,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EACjC,IAAI,EAAC,UAAU,EACf,YAAY,EAAE,MAAA,KAAK,CAAC,QAAQ,mCAAI,EAAE,EAClC,IAAI,EAAC,MAAM,IACP,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,UAClG,aACA;gCACN,qCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,iBACtC,sCAAO,OAAO,EAAC,UAAU,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,YAAY,CAAC,gBACtD,CAAC,CAAC,UAAU,CAAC,YACV;wCACR,6BAAO,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAC,UAAU,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,UAAU,EAAC,YAAY,EAAC,KAAK,WAAG,aACxH;gCACN,qCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,kBAAkB,CAAC,iBAChE,oCAAK,EAAE,EAAC,iBAAiB,gBAEjB,CACI,KAAK,CAAC,UAAU;gDAChB,CAAC,oBAAoB,CACxB;gDACD,oCAAK,SAAS,EAAC,UAAU,gBACrB,yCACI,sCAAO,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAC,YAAY,EAAC,IAAI,EAAC,YAAY,EAAC,IAAI,EAAC,UAAU,IAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAAI,EAC1H,CAAC,CAAC,YAAY,CAAC,YACZ,YACN,YAER;wCACN,oCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,yBAAyB,CAAC,gBAE3C,KAAK,CAAC,oBAAoB;gDAC1B,sCACI,kCAAG,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,wBAAwB,gBAAG,CAAC,CAAC,kBAAkB,CAAC,YAAK,WAC5E,YAET,aAEJ;gCACN,qCAAK,EAAE,EAAC,iBAAiB,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,iBAC3D,sCACI,IAAI,EAAC,QAAQ,EACb,EAAE,EAAC,iBAAiB,EACpB,IAAI,EAAC,cAAc,IACf,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,kBAAkB,MAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,UAC1F;wCACF,6BACI,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAC,OAAO,EAAC,EAAE,EAAC,UAAU,EAAC,IAAI,EAAC,QAAQ,EAC5J,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EACtB,QAAQ,EAAE,qBAAqB,WACjC,aACA,aACH,CACV,YAEH;gBAEF,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC;oBAClD,oCAAK,EAAE,EAAC,qBAAqB,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,wBAAwB,CAAC,gBAC9G,mCAAI,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,4BAA4B,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,gBAEtH,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,UAAA,CAAC;gCAClB,OAAA,mCAAI,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,gCAAgC,CAAC,gBACrD,kCAAG,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,YAAU,CAAC,CAAC,KAAO,EAAE,SAAS,EAAE,cAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,gBAC/E,sCAAO,CAAC,CAAC,WAAW,WAAQ,YAC5B,YACH;4BAJL,CAIK,CACR,YAEJ,YACH,aAER,EAEV,eAAe,EACX,CACI,KAAK,CAAC,QAAQ;YACd,KAAK,CAAC,mBAAmB;YACzB,CAAC,oBAAoB,CACxB;YACD,oCAAK,EAAE,EAAC,iBAAiB,gBACrB,wCACK,CAAC,CAAC,WAAW,CAAC,EACf,kCAAG,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,eAAe,gBACpC,CAAC,CAAC,YAAY,CAAC,YAChB,YACD,YACL,YAEZ,CACL,CAAC;AACN,CAAC,CAAC,CAAC"}
{"version":3,"file":"Login.js","sourceRoot":"","sources":["../../src/lib/components/Login.tsx"],"names":[],"mappings":"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"}

View File

@ -0,0 +1,3 @@
/// <reference types="react" />
import type { KcProps } from "./KcProps";
export declare const LoginResetPassword: import("react").MemoExoticComponent<(props: KcProps) => JSX.Element>;

View File

@ -0,0 +1,38 @@
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.LoginResetPassword = void 0;
var jsx_runtime_1 = require("react/jsx-runtime");
var react_1 = require("react");
var Template_1 = require("./Template");
var assert_1 = require("../tools/assert");
var kcContext_1 = require("../kcContext");
var useKcMessage_1 = require("../i18n/useKcMessage");
var tss_react_1 = require("tss-react");
exports.LoginResetPassword = react_1.memo(function (props) {
var _a = useKcMessage_1.useKcMessage(), msg = _a.msg, msgStr = _a.msgStr;
assert_1.assert(kcContext_1.kcContext !== undefined &&
kcContext_1.kcContext.pageId === "login-reset-password.ftl");
var url = kcContext_1.kcContext.url, realm = kcContext_1.kcContext.realm, auth = kcContext_1.kcContext.auth;
return (jsx_runtime_1.jsx(Template_1.Template, __assign({}, props, { displayMessage: false, headerNode: msg("emailForgotTitle"), formNode: jsx_runtime_1.jsxs("form", __assign({ id: "kc-reset-password-form", className: tss_react_1.cx(props.kcFormClass), action: url.loginAction, method: "post" }, { children: [jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "username", className: tss_react_1.cx(props.kcLabelClass) }, { children: !realm.loginWithEmailAllowed ?
msg("username")
:
!realm.registrationEmailAsUsername ?
msg("usernameOrEmail") :
msg("email") }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcInputWrapperClass) }, { children: jsx_runtime_1.jsx("input", { type: "text", id: "username", name: "username", className: tss_react_1.cx(props.kcInputClass), autoFocus: true, defaultValue: auth !== undefined && auth.showUsername ?
auth.attemptedUsername : undefined }, void 0) }), void 0)] }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, props.kcFormSettingClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ id: "kc-form-options", className: tss_react_1.cx(props.kcFormOptionsClass) }, { children: jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcFormOptionsWrapperClass) }, { children: jsx_runtime_1.jsx("span", { children: jsx_runtime_1.jsx("a", __assign({ href: url.loginUrl }, { children: msg("backToLogin") }), void 0) }, void 0) }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ id: "kc-form-buttons", className: tss_react_1.cx(props.kcFormButtonsClass) }, { children: jsx_runtime_1.jsx("input", { className: tss_react_1.cx(props.kcButtonClass, props.kcButtonPrimaryClass, props.kcButtonBlockClass, props.kcButtonLargeClass), type: "submit", defaultValue: msgStr("doSubmit") }, void 0) }), void 0)] }), void 0)] }), void 0), infoNode: msg("emailInstruction") }), void 0));
});
//# sourceMappingURL=LoginResetPassword.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"LoginResetPassword.js","sourceRoot":"","sources":["../../src/lib/components/LoginResetPassword.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+BAA6B;AAC7B,uCAAsC;AAEtC,0CAAyC;AACzC,0CAAyC;AACzC,qDAAoD;AACpD,uCAA+B;AAElB,QAAA,kBAAkB,GAAG,YAAI,CAAC,UAAC,KAAc;IAE5C,IAAA,KAAkB,2BAAY,EAAE,EAA9B,GAAG,SAAA,EAAE,MAAM,YAAmB,CAAC;IAEvC,eAAM,CACF,qBAAS,KAAK,SAAS;QACvB,qBAAS,CAAC,MAAM,KAAK,0BAA0B,CAClD,CAAC;IAGE,IAAA,GAAG,GAGH,qBAAS,IAHN,EACH,KAAK,GAEL,qBAAS,MAFJ,EACL,IAAI,GACJ,qBAAS,KADL,CACM;IAEd,OAAO,CACH,kBAAC,mBAAQ,eACD,KAAK,IACT,cAAc,EAAE,KAAK,EACrB,UAAU,EAAE,GAAG,CAAC,kBAAkB,CAAC,EACnC,QAAQ,EACJ,sCAAM,EAAE,EAAC,wBAAwB,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,EAAC,MAAM,iBACtG,qCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,iBACtC,oCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBACzC,sCAAO,OAAO,EAAC,UAAU,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,YAAY,CAAC,gBAEnD,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;oCAC1B,GAAG,CAAC,UAAU,CAAC;oCACf,CAAC;wCACD,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;4CAChC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;4CACxB,GAAG,CAAC,OAAO,CAAC,YAEpB,YACN;wBACN,oCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,gBACzC,6BACI,IAAI,EAAC,MAAM,EACX,EAAE,EAAC,UAAU,EACb,IAAI,EAAC,UAAU,EACf,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EACjC,SAAS,QACT,YAAY,EACR,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;oCACrC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,WAE5C,YACA,aACJ;gBACN,qCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,kBAAkB,CAAC,iBAChE,oCAAK,EAAE,EAAC,iBAAiB,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,gBAC7D,oCAAK,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,yBAAyB,CAAC,gBAC/C,sCACI,kCAAG,IAAI,EAAE,GAAG,CAAC,QAAQ,gBAAG,GAAG,CAAC,aAAa,CAAC,YAAK,WAC5C,YACL,YACJ;wBAEN,oCAAK,EAAE,EAAC,iBAAiB,EAAC,SAAS,EAAE,cAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,gBAC7D,6BACI,SAAS,EAAE,cAAE,CACT,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,oBAAoB,EAC/C,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,CACrD,EACD,IAAI,EAAC,QAAQ,EACb,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC,WAClC,YACA,aACJ,aACH,EAEX,QAAQ,EAAE,GAAG,CAAC,kBAAkB,CAAC,YACnC,CACL,CAAC;AACN,CAAC,CAAC,CAAC"}

3
lib/components/LoginVerifyEmail.d.ts vendored Normal file
View File

@ -0,0 +1,3 @@
/// <reference types="react" />
import type { KcProps } from "./KcProps";
export declare const LoginVerifyEmail: import("react").MemoExoticComponent<(props: KcProps) => JSX.Element>;

View File

@ -0,0 +1,29 @@
"use strict";
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.LoginVerifyEmail = void 0;
var jsx_runtime_1 = require("react/jsx-runtime");
var react_1 = require("react");
var Template_1 = require("./Template");
var assert_1 = require("../tools/assert");
var kcContext_1 = require("../kcContext");
var useKcMessage_1 = require("../i18n/useKcMessage");
exports.LoginVerifyEmail = react_1.memo(function (props) {
var msg = useKcMessage_1.useKcMessage().msg;
assert_1.assert(kcContext_1.kcContext !== undefined &&
kcContext_1.kcContext.pageId === "login-verify-email.ftl");
var url = kcContext_1.kcContext.url;
return (jsx_runtime_1.jsx(Template_1.Template, __assign({}, props, { displayMessage: false, headerNode: msg("emailVerifyTitle"), formNode: jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [jsx_runtime_1.jsx("p", __assign({ className: "instruction" }, { children: msg("emailVerifyInstruction1") }), void 0),
jsx_runtime_1.jsxs("p", __assign({ className: "instruction" }, { children: [msg("emailVerifyInstruction2"), jsx_runtime_1.jsx("a", __assign({ href: url.loginAction }, { children: msg("doClickHere") }), void 0), msg("emailVerifyInstruction3")] }), void 0)] }, void 0) }), void 0));
});
//# sourceMappingURL=LoginVerifyEmail.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"LoginVerifyEmail.js","sourceRoot":"","sources":["../../src/lib/components/LoginVerifyEmail.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+BAA6B;AAC7B,uCAAsC;AAEtC,0CAAyC;AACzC,0CAAyC;AACzC,qDAAoD;AAEvC,QAAA,gBAAgB,GAAG,YAAI,CAAC,UAAC,KAAc;IAExC,IAAA,GAAG,GAAK,2BAAY,EAAE,IAAnB,CAAoB;IAE/B,eAAM,CACF,qBAAS,KAAK,SAAS;QACvB,qBAAS,CAAC,MAAM,KAAK,wBAAwB,CAChD,CAAC;IAGE,IAAA,GAAG,GACH,qBAAS,IADN,CACO;IAEd,OAAO,CACH,kBAAC,mBAAQ,eACD,KAAK,IACT,cAAc,EAAE,KAAK,EACrB,UAAU,EAAE,GAAG,CAAC,kBAAkB,CAAC,EACnC,QAAQ,EACJ,wDACI,kCAAG,SAAS,EAAC,aAAa,gBACrB,GAAG,CAAC,yBAAyB,CAAC,YAC/B;gBACJ,mCAAG,SAAS,EAAC,aAAa,iBACrB,GAAG,CAAC,yBAAyB,CAAC,EAC/B,kCAAG,IAAI,EAAE,GAAG,CAAC,WAAW,gBAAG,GAAG,CAAC,aAAa,CAAC,YAAK,EACjD,GAAG,CAAC,yBAAyB,CAAC,aAC/B,YACL,YAET,CACL,CAAC;AAEN,CAAC,CAAC,CAAC"}

View File

@ -17,31 +17,31 @@ var react_1 = require("react");
var Template_1 = require("./Template");
var assert_1 = require("../tools/assert");
var kcContext_1 = require("../kcContext");
var useKcTranslation_1 = require("../i18n/useKcTranslation");
var useKcMessage_1 = require("../i18n/useKcMessage");
var tss_react_1 = require("tss-react");
exports.Register = react_1.memo(function (props) {
var _a, _b, _c, _d;
var _e = useKcTranslation_1.useKcTranslation(), t = _e.t, tStr = _e.tStr;
var _e = useKcMessage_1.useKcMessage(), msg = _e.msg, msgStr = _e.msgStr;
assert_1.assert(kcContext_1.kcContext !== undefined &&
kcContext_1.kcContext.pageId === "register.ftl");
var url = kcContext_1.kcContext.url, messagesPerField = kcContext_1.kcContext.messagesPerField, register = kcContext_1.kcContext.register, realm = kcContext_1.kcContext.realm, passwordRequired = kcContext_1.kcContext.passwordRequired, recaptchaRequired = kcContext_1.kcContext.recaptchaRequired, recaptchaSiteKey = kcContext_1.kcContext.recaptchaSiteKey;
return (jsx_runtime_1.jsx(Template_1.Template, __assign({}, props, { headerNode: t("registerTitle"), formNode: jsx_runtime_1.jsxs("form", __assign({ id: "kc-register-form", className: tss_react_1.cx(props.kcFormClass), action: url.registrationAction, method: "post" }, { children: [jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists('firstName', props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "firstName", className: tss_react_1.cx(props.kcLabelClass) }, { children: t("firstName") }), void 0) }), void 0),
return (jsx_runtime_1.jsx(Template_1.Template, __assign({}, props, { headerNode: msg("registerTitle"), formNode: jsx_runtime_1.jsxs("form", __assign({ id: "kc-register-form", className: tss_react_1.cx(props.kcFormClass), action: url.registrationAction, method: "post" }, { children: [jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists('firstName', props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "firstName", className: tss_react_1.cx(props.kcLabelClass) }, { children: msg("firstName") }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcInputWrapperClass) }, { children: jsx_runtime_1.jsx("input", { type: "text", id: "firstName", className: tss_react_1.cx(props.kcInputClass), name: "firstName", defaultValue: (_a = register.formData.firstName) !== null && _a !== void 0 ? _a : "" }, void 0) }), void 0)] }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists("lastName", props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "lastName", className: tss_react_1.cx(props.kcLabelClass) }, { children: t("lastName") }), void 0) }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists("lastName", props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "lastName", className: tss_react_1.cx(props.kcLabelClass) }, { children: msg("lastName") }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcInputWrapperClass) }, { children: jsx_runtime_1.jsx("input", { type: "text", id: "lastName", className: tss_react_1.cx(props.kcInputClass), name: "lastName", defaultValue: (_b = register.formData.lastName) !== null && _b !== void 0 ? _b : "" }, void 0) }), void 0)] }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists('email', props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "email", className: tss_react_1.cx(props.kcLabelClass) }, { children: t("email") }), void 0) }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists('email', props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "email", className: tss_react_1.cx(props.kcLabelClass) }, { children: msg("email") }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcInputWrapperClass) }, { children: jsx_runtime_1.jsx("input", { type: "text", id: "email", className: tss_react_1.cx(props.kcInputClass), name: "email", defaultValue: (_c = register.formData.email) !== null && _c !== void 0 ? _c : "", autoComplete: "email" }, void 0) }), void 0)] }), void 0),
!realm.registrationEmailAsUsername &&
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists('username', props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "username", className: tss_react_1.cx(props.kcLabelClass) }, { children: t("username") }), void 0) }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists('username', props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "username", className: tss_react_1.cx(props.kcLabelClass) }, { children: msg("username") }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcInputWrapperClass) }, { children: jsx_runtime_1.jsx("input", { type: "text", id: "username", className: tss_react_1.cx(props.kcInputClass), name: "username", defaultValue: (_d = register.formData.username) !== null && _d !== void 0 ? _d : "", autoComplete: "username" }, void 0) }), void 0)] }), void 0),
passwordRequired &&
jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists("password", props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "password", className: tss_react_1.cx(props.kcLabelClass) }, { children: t("password") }), void 0) }), void 0),
jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists("password", props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "password", className: tss_react_1.cx(props.kcLabelClass) }, { children: msg("password") }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcInputWrapperClass) }, { children: jsx_runtime_1.jsx("input", { type: "password", id: "password", className: tss_react_1.cx(props.kcInputClass), name: "password", autoComplete: "new-password" }, void 0) }), void 0)] }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists("password-confirm", props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "password-confirm", className: tss_react_1.cx(props.kcLabelClass) }, { children: t("passwordConfirm") }), void 0) }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass, messagesPerField.printIfExists("password-confirm", props.kcFormGroupErrorClass)) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass) }, { children: jsx_runtime_1.jsx("label", __assign({ htmlFor: "password-confirm", className: tss_react_1.cx(props.kcLabelClass) }, { children: msg("passwordConfirm") }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcInputWrapperClass) }, { children: jsx_runtime_1.jsx("input", { type: "password", id: "password-confirm", className: tss_react_1.cx(props.kcInputClass), name: "password-confirm" }, void 0) }), void 0)] }), void 0)] }, void 0),
recaptchaRequired &&
jsx_runtime_1.jsx("div", __assign({ className: "form-group" }, { children: jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcInputWrapperClass) }, { children: jsx_runtime_1.jsx("div", { className: "g-recaptcha", "data-size": "compact", "data-sitekey": recaptchaSiteKey }, void 0) }), void 0) }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ id: "kc-form-options", className: tss_react_1.cx(props.kcFormOptionsClass) }, { children: jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcFormOptionsWrapperClass) }, { children: jsx_runtime_1.jsx("span", { children: jsx_runtime_1.jsx("a", __assign({ href: url.loginUrl }, { children: t("backToLogin") }), void 0) }, void 0) }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ id: "kc-form-buttons", className: tss_react_1.cx(props.kcFormButtonsClass) }, { children: jsx_runtime_1.jsx("input", { className: tss_react_1.cx(props.kcButtonClass, props.kcButtonPrimaryClass, props.kcButtonBlockClass, props.kcButtonLargeClass), type: "submit", defaultValue: tStr("doRegister") }, void 0) }), void 0)] }), void 0)] }), void 0) }), void 0));
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ id: "kc-form-options", className: tss_react_1.cx(props.kcFormOptionsClass) }, { children: jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcFormOptionsWrapperClass) }, { children: jsx_runtime_1.jsx("span", { children: jsx_runtime_1.jsx("a", __assign({ href: url.loginUrl }, { children: msg("backToLogin") }), void 0) }, void 0) }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ id: "kc-form-buttons", className: tss_react_1.cx(props.kcFormButtonsClass) }, { children: jsx_runtime_1.jsx("input", { className: tss_react_1.cx(props.kcButtonClass, props.kcButtonPrimaryClass, props.kcButtonBlockClass, props.kcButtonLargeClass), type: "submit", defaultValue: msgStr("doRegister") }, void 0) }), void 0)] }), void 0)] }), void 0) }), void 0));
});
//# sourceMappingURL=Register.js.map

View File

@ -1 +1 @@
{"version":3,"file":"Register.js","sourceRoot":"","sources":["../../src/lib/components/Register.tsx"],"names":[],"mappings":"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"}
{"version":3,"file":"Register.js","sourceRoot":"","sources":["../../src/lib/components/Register.tsx"],"names":[],"mappings":"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"}

View File

@ -9,6 +9,6 @@ export declare type TemplateProps = {
headerNode: ReactNode;
showUsernameNode?: ReactNode;
formNode: ReactNode;
displayInfoNode?: ReactNode;
infoNode?: ReactNode;
} & KcTemplateProps;
export declare const Template: import("react").MemoExoticComponent<(props: TemplateProps) => JSX.Element | null>;

View File

@ -35,7 +35,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
exports.Template = void 0;
var jsx_runtime_1 = require("react/jsx-runtime");
var react_1 = require("react");
var useKcTranslation_1 = require("../i18n/useKcTranslation");
var useKcMessage_1 = require("../i18n/useKcMessage");
var useKcLanguageTag_1 = require("../i18n/useKcLanguageTag");
var kcContext_1 = require("../kcContext");
var assert_1 = require("../tools/assert");
@ -47,9 +47,9 @@ var appendHead_1 = require("../tools/appendHead");
var path_1 = require("path");
var powerhooks_2 = require("powerhooks");
exports.Template = react_1.memo(function (props) {
var _a = props.displayInfo, displayInfo = _a === void 0 ? false : _a, _b = props.displayMessage, displayMessage = _b === void 0 ? true : _b, _c = props.displayRequiredFields, displayRequiredFields = _c === void 0 ? false : _c, _d = props.displayWide, displayWide = _d === void 0 ? false : _d, _e = props.showAnotherWayIfPresent, showAnotherWayIfPresent = _e === void 0 ? true : _e, headerNode = props.headerNode, _f = props.showUsernameNode, showUsernameNode = _f === void 0 ? null : _f, formNode = props.formNode, _g = props.displayInfoNode, displayInfoNode = _g === void 0 ? null : _g;
var _a = props.displayInfo, displayInfo = _a === void 0 ? false : _a, _b = props.displayMessage, displayMessage = _b === void 0 ? true : _b, _c = props.displayRequiredFields, displayRequiredFields = _c === void 0 ? false : _c, _d = props.displayWide, displayWide = _d === void 0 ? false : _d, _e = props.showAnotherWayIfPresent, showAnotherWayIfPresent = _e === void 0 ? true : _e, headerNode = props.headerNode, _f = props.showUsernameNode, showUsernameNode = _f === void 0 ? null : _f, formNode = props.formNode, _g = props.infoNode, infoNode = _g === void 0 ? null : _g;
react_1.useEffect(function () { console.log("Rendering this page with react using keycloakify"); }, []);
var t = useKcTranslation_1.useKcTranslation().t;
var msg = useKcMessage_1.useKcMessage().msg;
var _h = useKcLanguageTag_1.useKcLanguageTag(), kcLanguageTag = _h.kcLanguageTag, setKcLanguageTag = _h.setKcLanguageTag;
var onChangeLanguageClickFactory = powerhooks_1.useCallbackFactory(function (_a) {
var _b = __read(_a, 1), languageTag = _b[0];
@ -101,7 +101,7 @@ exports.Template = react_1.memo(function (props) {
if (!isExtraCssLoaded) {
return null;
}
return (jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcLoginClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ id: "kc-header", className: tss_react_1.cx(props.kcHeaderClass) }, { children: jsx_runtime_1.jsx("div", __assign({ id: "kc-header-wrapper", className: tss_react_1.cx(props.kcHeaderWrapperClass) }, { children: t("loginTitleHtml", realm.displayNameHtml) }), void 0) }), void 0),
return (jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcLoginClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ id: "kc-header", className: tss_react_1.cx(props.kcHeaderClass) }, { children: jsx_runtime_1.jsx("div", __assign({ id: "kc-header-wrapper", className: tss_react_1.cx(props.kcHeaderWrapperClass) }, { children: msg("loginTitleHtml", realm.displayNameHtml) }), void 0) }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormCardClass, displayWide && props.kcFormCardAccountClass) }, { children: [jsx_runtime_1.jsxs("header", __assign({ className: tss_react_1.cx(props.kcFormHeaderClass) }, { children: [(realm.internationalizationEnabled &&
(assert_1.assert(locale !== undefined), true) &&
locale.supported.length > 1) &&
@ -114,15 +114,15 @@ exports.Template = react_1.memo(function (props) {
auth.showUsername &&
!auth.showResetCredentials) ?
(displayRequiredFields ?
(jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcContentWrapperClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass, "subtitle") }, { children: jsx_runtime_1.jsxs("span", __assign({ className: "subtitle" }, { children: [jsx_runtime_1.jsx("span", __assign({ className: "required" }, { children: "*" }), void 0), t("requiredFields")] }), void 0) }), void 0),
(jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcContentWrapperClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass, "subtitle") }, { children: jsx_runtime_1.jsxs("span", __assign({ className: "subtitle" }, { children: [jsx_runtime_1.jsx("span", __assign({ className: "required" }, { children: "*" }), void 0), msg("requiredFields")] }), void 0) }), void 0),
jsx_runtime_1.jsx("div", __assign({ className: "col-md-10" }, { children: jsx_runtime_1.jsx("h1", __assign({ id: "kc-page-title" }, { children: headerNode }), void 0) }), void 0)] }), void 0))
:
(jsx_runtime_1.jsx("h1", __assign({ id: "kc-page-title" }, { children: headerNode }), void 0))) : (displayRequiredFields ? (jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcContentWrapperClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass, "subtitle") }, { children: jsx_runtime_1.jsxs("span", __assign({ className: "subtitle" }, { children: [jsx_runtime_1.jsx("span", __assign({ className: "required" }, { children: "*" }), void 0), " ", t("requiredFields")] }), void 0) }), void 0),
(jsx_runtime_1.jsx("h1", __assign({ id: "kc-page-title" }, { children: headerNode }), void 0))) : (displayRequiredFields ? (jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcContentWrapperClass) }, { children: [jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcLabelWrapperClass, "subtitle") }, { children: jsx_runtime_1.jsxs("span", __assign({ className: "subtitle" }, { children: [jsx_runtime_1.jsx("span", __assign({ className: "required" }, { children: "*" }), void 0), " ", msg("requiredFields")] }), void 0) }), void 0),
jsx_runtime_1.jsxs("div", __assign({ className: "col-md-10" }, { children: [showUsernameNode, jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: jsx_runtime_1.jsxs("div", __assign({ id: "kc-username" }, { children: [jsx_runtime_1.jsx("label", __assign({ id: "kc-attempted-username" }, { children: auth === null || auth === void 0 ? void 0 : auth.attemptedUsername }), void 0),
jsx_runtime_1.jsx("a", __assign({ id: "reset-login", href: url.loginRestartFlowUrl }, { children: jsx_runtime_1.jsxs("div", __assign({ className: "kc-login-tooltip" }, { children: [jsx_runtime_1.jsx("i", { className: tss_react_1.cx(props.kcResetFlowIcon) }, void 0),
jsx_runtime_1.jsx("span", __assign({ className: "kc-tooltip-text" }, { children: t("restartLoginTooltip") }), void 0)] }), void 0) }), void 0)] }), void 0) }), void 0)] }), void 0)] }), void 0)) : (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [showUsernameNode, jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: jsx_runtime_1.jsxs("div", __assign({ id: "kc-username" }, { children: [jsx_runtime_1.jsx("label", __assign({ id: "kc-attempted-username" }, { children: auth === null || auth === void 0 ? void 0 : auth.attemptedUsername }), void 0),
jsx_runtime_1.jsx("span", __assign({ className: "kc-tooltip-text" }, { children: msg("restartLoginTooltip") }), void 0)] }), void 0) }), void 0)] }), void 0) }), void 0)] }), void 0)] }), void 0)) : (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [showUsernameNode, jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: jsx_runtime_1.jsxs("div", __assign({ id: "kc-username" }, { children: [jsx_runtime_1.jsx("label", __assign({ id: "kc-attempted-username" }, { children: auth === null || auth === void 0 ? void 0 : auth.attemptedUsername }), void 0),
jsx_runtime_1.jsx("a", __assign({ id: "reset-login", href: url.loginRestartFlowUrl }, { children: jsx_runtime_1.jsxs("div", __assign({ className: "kc-login-tooltip" }, { children: [jsx_runtime_1.jsx("i", { className: tss_react_1.cx(props.kcResetFlowIcon) }, void 0),
jsx_runtime_1.jsx("span", __assign({ className: "kc-tooltip-text" }, { children: t("restartLoginTooltip") }), void 0)] }), void 0) }), void 0)] }), void 0) }), void 0)] }, void 0)))] }), void 0),
jsx_runtime_1.jsx("span", __assign({ className: "kc-tooltip-text" }, { children: msg("restartLoginTooltip") }), void 0)] }), void 0) }), void 0)] }), void 0) }), void 0)] }, void 0)))] }), void 0),
jsx_runtime_1.jsx("div", __assign({ id: "kc-content" }, { children: jsx_runtime_1.jsxs("div", __assign({ id: "kc-content-wrapper" }, { children: [(displayMessage &&
message !== undefined &&
(message.type !== "warning" ||
@ -135,8 +135,8 @@ exports.Template = react_1.memo(function (props) {
auth.showTryAnotherWayLink &&
showAnotherWayIfPresent) &&
jsx_runtime_1.jsx("form", __assign({ id: "kc-select-try-another-way-form", action: url.loginAction, method: "post", className: tss_react_1.cx(displayWide && props.kcContentWrapperClass) }, { children: jsx_runtime_1.jsx("div", __assign({ className: tss_react_1.cx(displayWide && [props.kcFormSocialAccountContentClass, props.kcFormSocialAccountClass]) }, { children: jsx_runtime_1.jsxs("div", __assign({ className: tss_react_1.cx(props.kcFormGroupClass) }, { children: [jsx_runtime_1.jsx("input", { type: "hidden", name: "tryAnotherWay", value: "on" }, void 0),
jsx_runtime_1.jsx("a", __assign({ href: "#", id: "try-another-way", onClick: onTryAnotherWayClick }, { children: t("doTryAnotherWay") }), void 0)] }), void 0) }), void 0) }), void 0),
jsx_runtime_1.jsx("a", __assign({ href: "#", id: "try-another-way", onClick: onTryAnotherWayClick }, { children: msg("doTryAnotherWay") }), void 0)] }), void 0) }), void 0) }), void 0),
displayInfo &&
jsx_runtime_1.jsx("div", __assign({ id: "kc-info", className: tss_react_1.cx(props.kcSignUpClass) }, { children: jsx_runtime_1.jsx("div", __assign({ id: "kc-info-wrapper", className: tss_react_1.cx(props.kcInfoAreaWrapperClass) }, { children: displayInfoNode }), void 0) }), void 0)] }), void 0) }), void 0)] }), void 0)] }), void 0));
jsx_runtime_1.jsx("div", __assign({ id: "kc-info", className: tss_react_1.cx(props.kcSignUpClass) }, { children: jsx_runtime_1.jsx("div", __assign({ id: "kc-info-wrapper", className: tss_react_1.cx(props.kcInfoAreaWrapperClass) }, { children: infoNode }), void 0) }), void 0)] }), void 0) }), void 0)] }), void 0)] }), void 0));
});
//# sourceMappingURL=Template.js.map

File diff suppressed because one or more lines are too long

7
lib/i18n/useKcMessage.d.ts vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -21,15 +21,15 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from) {
return to;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.useKcTranslation = void 0;
exports.useKcMessage = void 0;
var jsx_runtime_1 = require("react/jsx-runtime");
var useKcLanguageTag_1 = require("./useKcLanguageTag");
var login_1 = require("./generated_messages/login");
var powerhooks_1 = require("powerhooks");
var id_1 = require("evt/tools/typeSafety/id");
function useKcTranslation() {
function useKcMessage() {
var kcLanguageTag = useKcLanguageTag_1.useKcLanguageTag().kcLanguageTag;
var tStr = powerhooks_1.useConstCallback(function (key) {
var msgStr = powerhooks_1.useConstCallback(function (key) {
var _a;
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
@ -44,14 +44,14 @@ function useKcTranslation() {
});
return str;
});
var t = powerhooks_1.useConstCallback(id_1.id(function (key) {
var msg = powerhooks_1.useConstCallback(id_1.id(function (key) {
var args = [];
for (var _i = 1; _i < arguments.length; _i++) {
args[_i - 1] = arguments[_i];
}
return jsx_runtime_1.jsx("span", { className: key, dangerouslySetInnerHTML: { "__html": tStr.apply(void 0, __spreadArray([key], __read(args))) } }, void 0);
return jsx_runtime_1.jsx("span", { className: key, dangerouslySetInnerHTML: { "__html": msgStr.apply(void 0, __spreadArray([key], __read(args))) } }, void 0);
}));
return { t: t, tStr: tStr };
return { msg: msg, msgStr: msgStr };
}
exports.useKcTranslation = useKcTranslation;
//# sourceMappingURL=useKcTranslation.js.map
exports.useKcMessage = useKcMessage;
//# sourceMappingURL=useKcMessage.js.map

View File

@ -0,0 +1 @@
{"version":3,"file":"useKcMessage.js","sourceRoot":"","sources":["../../src/lib/i18n/useKcMessage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,uDAAsD;AACtD,oDAAsD;AACtD,yCAA8C;AAE9C,8CAA6C;AAI7C,SAAgB,YAAY;IAEhB,IAAA,aAAa,GAAK,mCAAgB,EAAE,cAAvB,CAAwB;IAE7C,IAAM,MAAM,GAAG,6BAAgB,CAC3B,UAAC,GAAe;;QAAE,cAA+B;aAA/B,UAA+B,EAA/B,qBAA+B,EAA/B,IAA+B;YAA/B,6BAA+B;;QAE7C,IAAI,GAAG,GAAW,MAAA,gBAAQ,CAAC,aAA4B,CAAC,CAAC,GAAG,CAAC,mCAAI,gBAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAErF,IAAI,CAAC,OAAO,CAAC,UAAC,GAAG,EAAE,CAAC;YAEhB,IAAI,GAAG,KAAK,SAAS,EAAE;gBACnB,OAAO;aACV;YAED,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,QAAM,CAAC,QAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QAE1D,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IAEf,CAAC,CACJ,CAAC;IAEF,IAAM,GAAG,GAAG,6BAAgB,CACxB,OAAE,CACE,UAAC,GAAG;QAAE,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,6BAAO;;QACT,OAAA,4BAAM,SAAS,EAAE,GAAG,EAAE,uBAAuB,EAAE,EAAE,QAAQ,EAAE,MAAM,8BAAC,GAAG,UAAK,IAAI,GAAC,EAAE,WAAI;IAArF,CAAqF,CAC5F,CACJ,CAAC;IAEF,OAAO,EAAE,GAAG,KAAA,EAAE,MAAM,QAAA,EAAE,CAAC;AAE3B,CAAC;AAjCD,oCAiCC"}

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
{"version":3,"file":"useKcTranslation.js","sourceRoot":"","sources":["../../src/lib/i18n/useKcTranslation.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,uDAAsD;AACtD,oDAAsD;AACtD,yCAA8C;AAE9C,8CAA6C;AAI7C,SAAgB,gBAAgB;IAEpB,IAAA,aAAa,GAAK,mCAAgB,EAAE,cAAvB,CAAwB;IAE7C,IAAM,IAAI,GAAG,6BAAgB,CACzB,UAAC,GAAe;;QAAE,cAA+B;aAA/B,UAA+B,EAA/B,qBAA+B,EAA/B,IAA+B;YAA/B,6BAA+B;;QAE7C,IAAI,GAAG,GAAW,MAAA,gBAAQ,CAAC,aAA4B,CAAC,CAAC,GAAG,CAAC,mCAAI,gBAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAErF,IAAI,CAAC,OAAO,CAAC,UAAC,GAAG,EAAE,CAAC;YAEhB,IAAI,GAAG,KAAK,SAAS,EAAE;gBACnB,OAAO;aACV;YAED,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,QAAM,CAAC,QAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QAE1D,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IAEf,CAAC,CACJ,CAAC;IAEF,IAAM,CAAC,GAAG,6BAAgB,CACtB,OAAE,CACE,UAAC,GAAG;QAAE,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,6BAAO;;QACT,OAAA,4BAAM,SAAS,EAAE,GAAG,EAAE,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,8BAAC,GAAG,UAAK,IAAI,GAAC,EAAE,WAAI;IAAnF,CAAmF,CAC1F,CACJ,CAAC;IAEF,OAAO,EAAE,CAAC,GAAA,EAAE,IAAI,MAAA,EAAE,CAAC;AAEvB,CAAC;AAjCD,4CAiCC"}

4
lib/index.d.ts vendored
View File

@ -1,11 +1,13 @@
export * from "./kcContext";
export * from "./i18n/KcLanguageTag";
export * from "./i18n/useKcLanguageTag";
export * from "./i18n/useKcTranslation";
export * from "./i18n/useKcMessage";
export * from "./components/KcProps";
export * from "./components/Login";
export * from "./components/Template";
export * from "./components/KcApp";
export * from "./components/Info";
export * from "./components/Error";
export * from "./components/LoginResetPassword";
export * from "./components/LoginVerifyEmail";
export * from "./tools/assert";

View File

@ -13,12 +13,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
__exportStar(require("./kcContext"), exports);
__exportStar(require("./i18n/KcLanguageTag"), exports);
__exportStar(require("./i18n/useKcLanguageTag"), exports);
__exportStar(require("./i18n/useKcTranslation"), exports);
__exportStar(require("./i18n/useKcMessage"), exports);
__exportStar(require("./components/KcProps"), exports);
__exportStar(require("./components/Login"), exports);
__exportStar(require("./components/Template"), exports);
__exportStar(require("./components/KcApp"), exports);
__exportStar(require("./components/Info"), exports);
__exportStar(require("./components/Error"), exports);
__exportStar(require("./components/LoginResetPassword"), exports);
__exportStar(require("./components/LoginVerifyEmail"), exports);
__exportStar(require("./tools/assert"), exports);
//# sourceMappingURL=index.js.map

View File

@ -1 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA4B;AAE5B,uDAAqC;AACrC,0DAAwC;AACxC,0DAAwC;AAExC,uDAAqC;AACrC,qDAAmC;AACnC,wDAAsC;AACtC,qDAAmC;AACnC,oDAAkC;AAClC,qDAAmC;AAEnC,iDAA+B"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA4B;AAE5B,uDAAqC;AACrC,0DAAwC;AACxC,sDAAoC;AAEpC,uDAAqC;AACrC,qDAAmC;AACnC,wDAAsC;AACtC,qDAAmC;AACnC,oDAAkC;AAClC,qDAAmC;AACnC,kEAAgD;AAChD,gEAA8C;AAE9C,iDAA+B"}

15
lib/kcContext.d.ts vendored
View File

@ -1,8 +1,8 @@
import type { KcLanguageTag } from "./i18n/KcLanguageTag";
import type { MessageKey } from "./i18n/useKcTranslation";
import type { MessageKey } from "./i18n/useKcMessage";
import type { LanguageLabel } from "./i18n/KcLanguageTag";
declare type ExtractAfterStartingWith<Prefix extends string, StrEnum> = StrEnum extends `${Prefix}${infer U}` ? U : never;
export declare type KcContext = KcContext.Login | KcContext.Register | KcContext.Info | KcContext.Error;
export declare type KcContext = KcContext.Login | KcContext.Register | KcContext.Info | KcContext.Error | KcContext.LoginResetPassword | KcContext.LoginVerifyEmail;
export declare namespace KcContext {
type Template = {
url: {
@ -30,7 +30,7 @@ export declare namespace KcContext {
showUsername: boolean;
showResetCredentials: boolean;
showTryAnotherWayLink: boolean;
attemptedUsername?: boolean;
attemptedUsername?: string;
};
scripts: string[];
message?: {
@ -110,6 +110,15 @@ export declare namespace KcContext {
baseUrl?: string;
};
};
type LoginResetPassword = Template & {
pageId: "login-reset-password.ftl";
realm: {
loginWithEmailAllowed: boolean;
};
};
type LoginVerifyEmail = Template & {
pageId: "login-verify-email.ftl";
};
}
export declare const kcContext: KcContext | undefined;
export {};

View File

@ -1 +1 @@
{"version":3,"file":"kcContext.js","sourceRoot":"","sources":["../src/lib/kcContext.ts"],"names":[],"mappings":";;;AACA,uFAAsF;AAEtF,8CAA6C;AAE7C,4DAA2D;AAyI3D,qBAAS,EAA+B,CAAC;AACzC,qBAAS,EAA+B,CAAC;AAE5B,QAAA,SAAS,GAAG,OAAE,CAAyB,MAAc,CAAC,yCAAmB,CAAC,CAAC,CAAC"}
{"version":3,"file":"kcContext.js","sourceRoot":"","sources":["../src/lib/kcContext.ts"],"names":[],"mappings":";;;AACA,uFAAsF;AAEtF,8CAA6C;AAE7C,4DAA2D;AAsJ3D,qBAAS,EAA+B,CAAC;AACzC,qBAAS,EAA+B,CAAC;AAE5B,QAAA,SAAS,GAAG,OAAE,CAAyB,MAAc,CAAC,yCAAmB,CAAC,CAAC,CAAC"}

View File

@ -1,6 +1,6 @@
{
"name": "keycloakify",
"version": "0.1.2",
"version": "0.1.3",
"description": "Keycloak theme generator for Reacts app",
"repository": {
"type": "git",
@ -23,6 +23,7 @@
"src/bin/build-keycloak-theme/generateFtl/error.ftl",
"src/bin/build-keycloak-theme/generateFtl/index.ts",
"src/bin/build-keycloak-theme/generateFtl/info.ftl",
"src/bin/build-keycloak-theme/generateFtl/login-reset-password.ftl",
"src/bin/build-keycloak-theme/generateFtl/login.ftl",
"src/bin/build-keycloak-theme/generateFtl/register.ftl",
"src/bin/build-keycloak-theme/generateFtl/template.ftl",
@ -42,6 +43,8 @@
"src/lib/components/KcApp.tsx",
"src/lib/components/KcProps.ts",
"src/lib/components/Login.tsx",
"src/lib/components/LoginResetPassword.tsx",
"src/lib/components/LoginVerifyEmail.tsx",
"src/lib/components/Register.tsx",
"src/lib/components/Template.tsx",
"src/lib/i18n/KcLanguageTag.ts",
@ -50,7 +53,7 @@
"src/lib/i18n/generated_messages/email.ts",
"src/lib/i18n/generated_messages/login.ts",
"src/lib/i18n/useKcLanguageTag.ts",
"src/lib/i18n/useKcTranslation.tsx",
"src/lib/i18n/useKcMessage.tsx",
"src/lib/index.ts",
"src/lib/kcContext.ts",
"src/lib/tools/allPropertiesValuesToUndefined.ts",
@ -70,6 +73,7 @@
"bin/build-keycloak-theme/generateFtl/index.js",
"bin/build-keycloak-theme/generateFtl/index.js.map",
"bin/build-keycloak-theme/generateFtl/info.ftl",
"bin/build-keycloak-theme/generateFtl/login-reset-password.ftl",
"bin/build-keycloak-theme/generateFtl/login.ftl",
"bin/build-keycloak-theme/generateFtl/register.ftl",
"bin/build-keycloak-theme/generateFtl/template.ftl",
@ -121,6 +125,12 @@
"lib/components/Login.d.ts",
"lib/components/Login.js",
"lib/components/Login.js.map",
"lib/components/LoginResetPassword.d.ts",
"lib/components/LoginResetPassword.js",
"lib/components/LoginResetPassword.js.map",
"lib/components/LoginVerifyEmail.d.ts",
"lib/components/LoginVerifyEmail.js",
"lib/components/LoginVerifyEmail.js.map",
"lib/components/Register.d.ts",
"lib/components/Register.js",
"lib/components/Register.js.map",
@ -145,9 +155,9 @@
"lib/i18n/useKcLanguageTag.d.ts",
"lib/i18n/useKcLanguageTag.js",
"lib/i18n/useKcLanguageTag.js.map",
"lib/i18n/useKcTranslation.d.ts",
"lib/i18n/useKcTranslation.js",
"lib/i18n/useKcTranslation.js.map",
"lib/i18n/useKcMessage.d.ts",
"lib/i18n/useKcMessage.js",
"lib/i18n/useKcMessage.js.map",
"lib/index.d.ts",
"lib/index.js",
"lib/index.js.map",

View File

@ -9,7 +9,7 @@ import fs from "fs";
import { join as pathJoin } from "path";
import { objectKeys } from "evt/tools/typeSafety/objectKeys";
export const pageIds= [ "login.ftl", "register.ftl", "info.ftl", "error.ftl"] as const;
export const pageIds = ["login.ftl", "register.ftl", "info.ftl", "error.ftl", "login-reset-password.ftl", "login-verify-email.ftl"] as const;
export type PageId = typeof pageIds[number];
@ -19,8 +19,14 @@ function loadAdjacentFile(fileBasename: string){
};
function loadFtlFile(ftlFileBasename: PageId | "template.ftl") {
return loadAdjacentFile(ftlFileBasename)
.match(/^<script>const _=((?:.|\n)+)<\/script>[\n]?$/)![1];
try {
return loadAdjacentFile(ftlFileBasename)
.match(/^<script>const _=((?:.|\n)+)<\/script>[\n]?$/)![1];
} catch {
return "{}";
}
}
export function generateFtlFilesCodeFactory(

View File

@ -0,0 +1,7 @@
<script>const _=
{
"realm": {
"loginWithEmailAllowed": ${realm.loginWithEmailAllowed?c}
},
}
</script>

View File

@ -4,11 +4,11 @@ import { Template } from "./Template";
import type { KcProps } from "./KcProps";
import { assert } from "../tools/assert";
import { kcContext } from "../kcContext";
import { useKcTranslation } from "../i18n/useKcTranslation";
import { useKcMessage } from "../i18n/useKcMessage";
export const Error = memo((props: KcProps) => {
const { t } = useKcTranslation();
const { msg } = useKcMessage();
assert(
kcContext !== undefined &&
@ -22,7 +22,7 @@ export const Error = memo((props: KcProps) => {
<Template
{...props}
displayMessage={false}
headerNode={t("errorTitle")}
headerNode={msg("errorTitle")}
formNode={
<div id="kc-error-message">
<p className="instruction">{message.summary}</p>
@ -30,7 +30,7 @@ export const Error = memo((props: KcProps) => {
client !== undefined && client.baseUrl !== undefined &&
<p>
<a id="backToApplication" href={client.baseUrl}>
{t("backToApplication")}
{msg("backToApplication")}
</a>
</p>
}

View File

@ -4,11 +4,11 @@ import { Template } from "./Template";
import type { KcProps } from "./KcProps";
import { assert } from "../tools/assert";
import { kcContext } from "../kcContext";
import { useKcTranslation } from "../i18n/useKcTranslation";
import { useKcMessage } from "../i18n/useKcMessage";
export const Info = memo((props: KcProps) => {
const { t } = useKcTranslation();
const { msg } = useKcMessage();
assert(
kcContext !== undefined &&
@ -45,7 +45,7 @@ export const Info = memo((props: KcProps) => {
<b>
{
requiredActions
.map(requiredAction => t(`requiredAction.${requiredAction}` as const))
.map(requiredAction => msg(`requiredAction.${requiredAction}` as const))
.join(",")
}
@ -57,13 +57,13 @@ export const Info = memo((props: KcProps) => {
{
!skipLink &&
pageRedirectUri !== undefined ?
<p><a href="${pageRedirectUri}">${(t("backToApplication"))}</a></p>
<p><a href="${pageRedirectUri}">${(msg("backToApplication"))}</a></p>
:
actionUri !== undefined ?
<p><a href="${actionUri}">${t("proceedWithAction")}</a></p>
<p><a href="${actionUri}">${msg("proceedWithAction")}</a></p>
:
client.baseUrl !== undefined &&
<p><a href="${client.baseUrl}">${t("backToApplication")}</a></p>
<p><a href="${client.baseUrl}">${msg("backToApplication")}</a></p>
}
</div>

View File

@ -6,8 +6,9 @@ import type { KcProps } from "./KcProps";
import { Login } from "./Login";
import { Register } from "./Register";
import { Info } from "./Info";
import { Error } from "./Error";
import { Error } from "./Error";
import { LoginResetPassword } from "./LoginResetPassword";
import { LoginVerifyEmail } from "./LoginVerifyEmail";
export const KcApp = memo((props: KcProps) => {
@ -18,6 +19,8 @@ export const KcApp = memo((props: KcProps) => {
case "register.ftl": return <Register {...props} />;
case "info.ftl": return <Info {...props} />;
case "error.ftl": return <Error {...props} />;
case "login-reset-password.ftl": return <LoginResetPassword {...props} />;
case "login-verify-email.ftl": return <LoginVerifyEmail {...props} />;
}
});

View File

@ -4,13 +4,13 @@ import { Template } from "./Template";
import type { KcProps } from "./KcProps";
import { assert } from "../tools/assert";
import { kcContext } from "../kcContext";
import { useKcTranslation } from "../i18n/useKcTranslation";
import { useKcMessage } from "../i18n/useKcMessage";
import { cx } from "tss-react";
import { useConstCallback } from "powerhooks";
export const Login = memo((props: KcProps) => {
const { t, tStr } = useKcTranslation();
const { msg, msgStr } = useKcMessage();
assert(
kcContext !== undefined &&
@ -34,7 +34,7 @@ export const Login = memo((props: KcProps) => {
{...props}
displayInfo={social.displayInfo}
displayWide={realm.password && social.providers !== undefined}
headerNode={t("doLogIn")}
headerNode={msg("doLogIn")}
formNode={
<div
id="kc-form"
@ -52,12 +52,12 @@ export const Login = memo((props: KcProps) => {
<label htmlFor="username" className={cx(props.kcLabelClass)}>
{
!realm.loginWithEmailAllowed ?
t("username")
msg("username")
:
(
!realm.registrationEmailAsUsername ?
t("usernameOrEmail") :
t("email")
msg("usernameOrEmail") :
msg("email")
)
}
</label>
@ -73,7 +73,7 @@ export const Login = memo((props: KcProps) => {
</div>
<div className={cx(props.kcFormGroupClass)}>
<label htmlFor="password" className={cx(props.kcLabelClass)}>
{t("password")}
{msg("password")}
</label>
<input tabIndex={2} id="password" className={cx(props.kcInputClass)} name="password" type="password" autoComplete="off" />
</div>
@ -87,7 +87,7 @@ export const Login = memo((props: KcProps) => {
<div className="checkbox">
<label>
<input tabIndex={3} id="rememberMe" name="rememberMe" type="checkbox" {...(login.rememberMe ? { "checked": true } : {})} />
{t("rememberMe")}
{msg("rememberMe")}
</label>
</div>
}
@ -96,7 +96,7 @@ export const Login = memo((props: KcProps) => {
{
realm.resetPasswordAllowed &&
<span>
<a tabIndex={5} href={url.loginResetCredentialsUrl}>{t("doForgotPassword")}</a>
<a tabIndex={5} href={url.loginResetCredentialsUrl}>{msg("doForgotPassword")}</a>
</span>
}
</div>
@ -112,7 +112,7 @@ export const Login = memo((props: KcProps) => {
<input
tabIndex={4}
className={cx(props.kcButtonClass, props.kcButtonPrimaryClass, props.kcButtonBlockClass, props.kcButtonLargeClass)} name="login" id="kc-login" type="submit"
value={tStr("doLogIn")}
value={msgStr("doLogIn")}
disabled={isLoginButtonDisabled}
/>
</div>
@ -138,7 +138,7 @@ export const Login = memo((props: KcProps) => {
}
</div>
}
displayInfoNode={
infoNode={
(
realm.password &&
realm.registrationAllowed &&
@ -146,9 +146,9 @@ export const Login = memo((props: KcProps) => {
) &&
<div id="kc-registration">
<span>
{t("noAccount")}
{msg("noAccount")}
<a tabIndex={6} href={url.registrationUrl}>
{t("doRegister")}
{msg("doRegister")}
</a>
</span>
</div>

View File

@ -0,0 +1,86 @@
import { memo } from "react";
import { Template } from "./Template";
import type { KcProps } from "./KcProps";
import { assert } from "../tools/assert";
import { kcContext } from "../kcContext";
import { useKcMessage } from "../i18n/useKcMessage";
import { cx } from "tss-react";
export const LoginResetPassword = memo((props: KcProps) => {
const { msg, msgStr } = useKcMessage();
assert(
kcContext !== undefined &&
kcContext.pageId === "login-reset-password.ftl"
);
const {
url,
realm,
auth
} = kcContext;
return (
<Template
{...props}
displayMessage={false}
headerNode={msg("emailForgotTitle")}
formNode={
<form id="kc-reset-password-form" className={cx(props.kcFormClass)} action={url.loginAction} method="post">
<div className={cx(props.kcFormGroupClass)}>
<div className={cx(props.kcLabelWrapperClass)}>
<label htmlFor="username" className={cx(props.kcLabelClass)}>
{
!realm.loginWithEmailAllowed ?
msg("username")
:
!realm.registrationEmailAsUsername ?
msg("usernameOrEmail") :
msg("email")
}
</label>
</div>
<div className={cx(props.kcInputWrapperClass)}>
<input
type="text"
id="username"
name="username"
className={cx(props.kcInputClass)}
autoFocus
defaultValue={
auth !== undefined && auth.showUsername ?
auth.attemptedUsername : undefined
}
/>
</div>
</div>
<div className={cx(props.kcFormGroupClass, props.kcFormSettingClass)}>
<div id="kc-form-options" className={cx(props.kcFormOptionsClass)}>
<div className={cx(props.kcFormOptionsWrapperClass)}>
<span>
<a href={url.loginUrl}>{msg("backToLogin")}</a>
</span>
</div>
</div>
<div id="kc-form-buttons" className={cx(props.kcFormButtonsClass)}>
<input
className={cx(
props.kcButtonClass, props.kcButtonPrimaryClass,
props.kcButtonBlockClass, props.kcButtonLargeClass
)}
type="submit"
defaultValue={msgStr("doSubmit")}
/>
</div>
</div>
</form>
}
infoNode={msg("emailInstruction")}
/>
);
});

View File

@ -0,0 +1,44 @@
import { memo } from "react";
import { Template } from "./Template";
import type { KcProps } from "./KcProps";
import { assert } from "../tools/assert";
import { kcContext } from "../kcContext";
import { useKcMessage } from "../i18n/useKcMessage";
export const LoginVerifyEmail = memo((props: KcProps) => {
const { msg } = useKcMessage();
assert(
kcContext !== undefined &&
kcContext.pageId === "login-verify-email.ftl"
);
const {
url
} = kcContext;
return (
<Template
{...props}
displayMessage={false}
headerNode={msg("emailVerifyTitle")}
formNode={
<>
<p className="instruction">
{msg("emailVerifyInstruction1")}
</p>
<p className="instruction">
{msg("emailVerifyInstruction2")}
<a href={url.loginAction}>{msg("doClickHere")}</a>
{msg("emailVerifyInstruction3")}
</p>
</>
}
/>
);
});

View File

@ -3,12 +3,12 @@ import { Template } from "./Template";
import type { KcProps } from "./KcProps";
import { assert } from "../tools/assert";
import { kcContext } from "../kcContext";
import { useKcTranslation } from "../i18n/useKcTranslation";
import { useKcMessage } from "../i18n/useKcMessage";
import { cx } from "tss-react";
export const Register = memo((props: KcProps) => {
const { t, tStr } = useKcTranslation();
const { msg, msgStr } = useKcMessage();
assert(
kcContext !== undefined &&
@ -28,13 +28,13 @@ export const Register = memo((props: KcProps) => {
return (
<Template
{...props}
headerNode={t("registerTitle")}
headerNode={msg("registerTitle")}
formNode={
<form id="kc-register-form" className={cx(props.kcFormClass)} action={url.registrationAction} method="post">
<div className={cx(props.kcFormGroupClass, messagesPerField.printIfExists('firstName', props.kcFormGroupErrorClass))}>
<div className={cx(props.kcLabelWrapperClass)}>
<label htmlFor="firstName" className={cx(props.kcLabelClass)}>{t("firstName")}</label>
<label htmlFor="firstName" className={cx(props.kcLabelClass)}>{msg("firstName")}</label>
</div>
<div className={cx(props.kcInputWrapperClass)}>
<input type="text" id="firstName" className={cx(props.kcInputClass)} name="firstName"
@ -45,7 +45,7 @@ export const Register = memo((props: KcProps) => {
<div className={cx(props.kcFormGroupClass, messagesPerField.printIfExists("lastName", props.kcFormGroupErrorClass))}>
<div className={cx(props.kcLabelWrapperClass)}>
<label htmlFor="lastName" className={cx(props.kcLabelClass)}>{t("lastName")}</label>
<label htmlFor="lastName" className={cx(props.kcLabelClass)}>{msg("lastName")}</label>
</div>
<div className={cx(props.kcInputWrapperClass)}>
<input type="text" id="lastName" className={cx(props.kcInputClass)} name="lastName"
@ -56,7 +56,7 @@ export const Register = memo((props: KcProps) => {
<div className={cx(props.kcFormGroupClass, messagesPerField.printIfExists('email', props.kcFormGroupErrorClass))}>
<div className={cx(props.kcLabelWrapperClass)}>
<label htmlFor="email" className={cx(props.kcLabelClass)}>{t("email")}</label>
<label htmlFor="email" className={cx(props.kcLabelClass)}>{msg("email")}</label>
</div>
<div className={cx(props.kcInputWrapperClass)}>
<input type="text" id="email" className={cx(props.kcInputClass)} name="email"
@ -69,7 +69,7 @@ export const Register = memo((props: KcProps) => {
<div className={cx(props.kcFormGroupClass, messagesPerField.printIfExists('username', props.kcFormGroupErrorClass))}>
<div className={cx(props.kcLabelWrapperClass)}>
<label htmlFor="username" className={cx(props.kcLabelClass)}>{t("username")}</label>
<label htmlFor="username" className={cx(props.kcLabelClass)}>{msg("username")}</label>
</div>
<div className={cx(props.kcInputWrapperClass)}>
<input type="text" id="username" className={cx(props.kcInputClass)} name="username"
@ -84,7 +84,7 @@ export const Register = memo((props: KcProps) => {
<div className={cx(props.kcFormGroupClass, messagesPerField.printIfExists("password", props.kcFormGroupErrorClass))}>
<div className={cx(props.kcLabelWrapperClass)}>
<label htmlFor="password" className={cx(props.kcLabelClass)}>{t("password")}</label>
<label htmlFor="password" className={cx(props.kcLabelClass)}>{msg("password")}</label>
</div>
<div className={cx(props.kcInputWrapperClass)}>
<input type="password" id="password" className={cx(props.kcInputClass)} name="password" autoComplete="new-password" />
@ -93,7 +93,7 @@ export const Register = memo((props: KcProps) => {
<div className={cx(props.kcFormGroupClass, messagesPerField.printIfExists("password-confirm", props.kcFormGroupErrorClass))}>
<div className={cx(props.kcLabelWrapperClass)}>
<label htmlFor="password-confirm" className={cx(props.kcLabelClass)}>{t("passwordConfirm")}</label>
<label htmlFor="password-confirm" className={cx(props.kcLabelClass)}>{msg("passwordConfirm")}</label>
</div>
<div className={cx(props.kcInputWrapperClass)}>
<input type="password" id="password-confirm" className={cx(props.kcInputClass)} name="password-confirm" />
@ -113,13 +113,13 @@ export const Register = memo((props: KcProps) => {
<div className={cx(props.kcFormGroupClass)}>
<div id="kc-form-options" className={cx(props.kcFormOptionsClass)}>
<div className={cx(props.kcFormOptionsWrapperClass)}>
<span><a href={url.loginUrl}>{t("backToLogin")}</a></span>
<span><a href={url.loginUrl}>{msg("backToLogin")}</a></span>
</div>
</div>
<div id="kc-form-buttons" className={cx(props.kcFormButtonsClass)}>
<input className={cx(props.kcButtonClass, props.kcButtonPrimaryClass, props.kcButtonBlockClass, props.kcButtonLargeClass)} type="submit"
defaultValue={tStr("doRegister")} />
defaultValue={msgStr("doRegister")} />
</div>
</div>
</form >

View File

@ -1,7 +1,7 @@
import { useReducer, useEffect, memo } from "react";
import type { ReactNode } from "react";
import { useKcTranslation } from "../i18n/useKcTranslation";
import { useKcMessage } from "../i18n/useKcMessage";
import { useKcLanguageTag } from "../i18n/useKcLanguageTag";
import { kcContext } from "../kcContext";
import { assert } from "../tools/assert";
@ -24,7 +24,7 @@ export type TemplateProps = {
headerNode: ReactNode;
showUsernameNode?: ReactNode;
formNode: ReactNode;
displayInfoNode?: ReactNode;
infoNode?: ReactNode;
} & KcTemplateProps;
@ -39,12 +39,12 @@ export const Template = memo((props: TemplateProps) => {
headerNode,
showUsernameNode = null,
formNode,
displayInfoNode = null
infoNode = null
} = props;
useEffect(() => { console.log("Rendering this page with react using keycloakify") }, []);
const { t } = useKcTranslation();
const { msg } = useKcMessage();
const { kcLanguageTag, setKcLanguageTag } = useKcLanguageTag();
@ -132,7 +132,7 @@ export const Template = memo((props: TemplateProps) => {
<div id="kc-header" className={cx(props.kcHeaderClass)}>
<div id="kc-header-wrapper" className={cx(props.kcHeaderWrapperClass)}>
{t("loginTitleHtml", realm.displayNameHtml)}
{msg("loginTitleHtml", realm.displayNameHtml)}
</div>
</div>
@ -182,7 +182,7 @@ export const Template = memo((props: TemplateProps) => {
<div className={cx(props.kcLabelWrapperClass, "subtitle")}>
<span className="subtitle">
<span className="required">*</span>
{t("requiredFields")}
{msg("requiredFields")}
</span>
</div>
<div className="col-md-10">
@ -201,7 +201,7 @@ export const Template = memo((props: TemplateProps) => {
displayRequiredFields ? (
<div className={cx(props.kcContentWrapperClass)}>
<div className={cx(props.kcLabelWrapperClass, "subtitle")}>
<span className="subtitle"><span className="required">*</span> {t("requiredFields")}</span>
<span className="subtitle"><span className="required">*</span> {msg("requiredFields")}</span>
</div>
<div className="col-md-10">
{showUsernameNode}
@ -211,7 +211,7 @@ export const Template = memo((props: TemplateProps) => {
<a id="reset-login" href={url.loginRestartFlowUrl}>
<div className="kc-login-tooltip">
<i className={cx(props.kcResetFlowIcon)}></i>
<span className="kc-tooltip-text">{t("restartLoginTooltip")}</span>
<span className="kc-tooltip-text">{msg("restartLoginTooltip")}</span>
</div>
</a>
</div>
@ -227,7 +227,7 @@ export const Template = memo((props: TemplateProps) => {
<a id="reset-login" href={url.loginRestartFlowUrl}>
<div className="kc-login-tooltip">
<i className={cx(props.kcResetFlowIcon)}></i>
<span className="kc-tooltip-text">{t("restartLoginTooltip")}</span>
<span className="kc-tooltip-text">{msg("restartLoginTooltip")}</span>
</div>
</a>
</div>
@ -269,7 +269,7 @@ export const Template = memo((props: TemplateProps) => {
<div className={cx(displayWide && [props.kcFormSocialAccountContentClass, props.kcFormSocialAccountClass])} >
<div className={cx(props.kcFormGroupClass)}>
<input type="hidden" name="tryAnotherWay" value="on" />
<a href="#" id="try-another-way" onClick={onTryAnotherWayClick}>{t("doTryAnotherWay")}</a>
<a href="#" id="try-another-way" onClick={onTryAnotherWayClick}>{msg("doTryAnotherWay")}</a>
</div>
</div >
</form>
@ -279,7 +279,7 @@ export const Template = memo((props: TemplateProps) => {
<div id="kc-info" className={cx(props.kcSignUpClass)}>
<div id="kc-info-wrapper" className={cx(props.kcInfoAreaWrapperClass)}>
{displayInfoNode}
{infoNode}
</div>
</div>
}

View File

@ -7,11 +7,11 @@ import { id } from "evt/tools/typeSafety/id";
export type MessageKey = keyof typeof messages["en"];
export function useKcTranslation() {
export function useKcMessage() {
const { kcLanguageTag } = useKcLanguageTag();
const tStr = useConstCallback(
const msgStr = useConstCallback(
(key: MessageKey, ...args: (string | undefined)[]): string => {
let str: string = messages[kcLanguageTag as any as "en"][key] ?? messages["en"][key];
@ -31,13 +31,13 @@ export function useKcTranslation() {
}
);
const t = useConstCallback(
id<(...args: Parameters<typeof tStr>) => ReactNode>(
const msg = useConstCallback(
id<(...args: Parameters<typeof msgStr>) => ReactNode>(
(key, ...args) =>
<span className={key} dangerouslySetInnerHTML={{ "__html": tStr(key, ...args) }} />
<span className={key} dangerouslySetInnerHTML={{ "__html": msgStr(key, ...args) }} />
)
);
return { t, tStr };
return { msg, msgStr };
}

View File

@ -2,7 +2,7 @@ export * from "./kcContext";
export * from "./i18n/KcLanguageTag";
export * from "./i18n/useKcLanguageTag";
export * from "./i18n/useKcTranslation";
export * from "./i18n/useKcMessage";
export * from "./components/KcProps";
export * from "./components/Login";
@ -10,5 +10,7 @@ export * from "./components/Template";
export * from "./components/KcApp";
export * from "./components/Info";
export * from "./components/Error";
export * from "./components/LoginResetPassword";
export * from "./components/LoginVerifyEmail";
export * from "./tools/assert";

View File

@ -4,13 +4,15 @@ import type { PageId } from "../bin/build-keycloak-theme/generateFtl";
import { id } from "evt/tools/typeSafety/id";
import type { KcLanguageTag } from "./i18n/KcLanguageTag";
import { doExtends } from "evt/tools/typeSafety/doExtends";
import type { MessageKey } from "./i18n/useKcTranslation";
import type { LanguageLabel } from "./i18n/KcLanguageTag";
import type { MessageKey } from "./i18n/useKcMessage";
import type { LanguageLabel } from "./i18n/KcLanguageTag";
type ExtractAfterStartingWith<Prefix extends string, StrEnum> =
type ExtractAfterStartingWith<Prefix extends string, StrEnum> =
StrEnum extends `${Prefix}${infer U}` ? U : never;
export type KcContext = KcContext.Login | KcContext.Register | KcContext.Info | KcContext.Error;
export type KcContext =
KcContext.Login | KcContext.Register | KcContext.Info |
KcContext.Error | KcContext.LoginResetPassword | KcContext.LoginVerifyEmail;
export declare namespace KcContext {
export type Template = {
@ -43,7 +45,7 @@ export declare namespace KcContext {
showUsername: boolean;
showResetCredentials: boolean;
showTryAnotherWayLink: boolean;
attemptedUsername?: boolean;
attemptedUsername?: string;
};
scripts: string[];
message?: {
@ -122,7 +124,7 @@ export declare namespace KcContext {
export type Info = Template & {
pageId: "info.ftl";
messageHeader?: string;
requiredActions?: ExtractAfterStartingWith<"requiredAction.",MessageKey>[];
requiredActions?: ExtractAfterStartingWith<"requiredAction.", MessageKey>[];
skipLink: boolean;
pageRedirectUri?: string;
actionUri?: string;
@ -138,6 +140,17 @@ export declare namespace KcContext {
}
};
export type LoginResetPassword = Template & {
pageId: "login-reset-password.ftl";
realm: {
loginWithEmailAllowed: boolean;
}
};
export type LoginVerifyEmail = Template & {
pageId: "login-verify-email.ftl";
};
}
doExtends<KcContext["pageId"], PageId>();

View File

@ -292,8 +292,8 @@
"affectsGlobalScope": false
},
"../src/bin/build-keycloak-theme/generateFtl/index.ts": {
"version": "0f0544dcb1310150e89e922a07fc01644b05a37097b7fff8c568094c15660677",
"signature": "7f718b96b7f79f82eaee69c70ca603767db15ab3c7b11f60aff6f742f8b3a7da",
"version": "e952f1366d21416b26e15da1135aba34f24a58d7d6f035d58dfdf010e1995277",
"signature": "eadc28bbca620b3eb49b084fdf83d496a3d4010a54cd8eb4efee9ffe9d8e7a45",
"affectsGlobalScope": false
},
"../src/bin/build-keycloak-theme/ftlValuesGlobalName.ts": {
@ -761,14 +761,14 @@
"signature": "6f6ff57c7573441ce48c4be2d40d374d0ddd23422117998546c2bb2e5e0241b5",
"affectsGlobalScope": false
},
"../src/lib/i18n/useKcTranslation.tsx": {
"version": "b7ff7d6a60f789876e4c1989e9ce07638dcd72fbc89d346669bfd8c6b13d78b1",
"signature": "0192d2ec43530b8df97290e4f8955feb61966a4abb45a268bdf9cb896e4e6f65",
"../src/lib/i18n/useKcMessage.tsx": {
"version": "bbd47d574b830a4711be9b6c68a3927128f78eda22f3332fe6d641c286d7c366",
"signature": "62471319c7acd62133f1efd1a67cee3ce209927e211e0c1458a93772c19bef82",
"affectsGlobalScope": false
},
"../src/lib/kcContext.ts": {
"version": "0259024961063cccfb6e36fa3fc1e7ea7a398a95f272e45b64bc38c4a883bf1f",
"signature": "f525879a5dd64b35ad523a22850f4bd745c6ea0d18b10ac0f775569b4690cd13",
"version": "a9ca95035d921d09422da85b5920a9eda29b5ab25ec9658cc656090f8cc0d0ef",
"signature": "f54044728621074956e8fdb1665e0a4938b1f2a3c9b120c6ad8a868958ae38a9",
"affectsGlobalScope": false
},
"../src/lib/tools/allPropertiesValuesToUndefined.ts": {
@ -837,38 +837,48 @@
"affectsGlobalScope": false
},
"../src/lib/components/Template.tsx": {
"version": "902058786b55b42e3c4f5aadac4f1d2bfd506b179e03558571b8c7aae26f9252",
"signature": "20cd09376c374a71a2eab69a0968a326942e66d908637cb1072ac080945f699f",
"version": "6b8595fe98cd837de1a584d0e34241507079715824c885fcbeb4043f221fa8ac",
"signature": "992934982055800cb83b9fc15935527e3e6b33abc453e17e9f80f31d8b9ac104",
"affectsGlobalScope": false
},
"../src/lib/components/Login.tsx": {
"version": "e82a61036187915611474ac0a2c2ec9cee923f0b554359f0950ad50a4959f1d0",
"version": "041a7f64ba5f1b2847d84b853ecfbf470210a62cfe9c97dcfd1a09a7c836bd13",
"signature": "d2ae0b02b1d4aedae040017a0efd72453cedc31bd3a1fa05e5dedd83fe892b6c",
"affectsGlobalScope": false
},
"../src/lib/components/Register.tsx": {
"version": "0f5b395ec005466676d0215709c973086621a9501a3edd9b4e7795124e10d109",
"version": "1016fb2a0f9e946954828a4ec05ab1ec060f3ce680f4dc5391e4e8ea06b9544a",
"signature": "fab6732667e5ce6d8d27c620c907d60e9eab5378db77904c26cc46e80f3777df",
"affectsGlobalScope": false
},
"../src/lib/components/Info.tsx": {
"version": "53e1269568f84658bbd6ad18d51dec63d8c37452de5db21c61c7f231ecc0c7f5",
"version": "e32a78ed19efac601048d88cc3307109a14bbc76554fcb5e801abde162261d6b",
"signature": "4c3f4bdb42059ed8cc68f3e9512d3b7e99986b1d5d55dcb9f80817d644c95d8a",
"affectsGlobalScope": false
},
"../src/lib/components/Error.tsx": {
"version": "682c3a08c79ecbad5bbd9c7212c8b1be7f58ccc7f8579595f203e2605a41267d",
"version": "5ad396f3422820d8b1c383d85814be83701865b25de5d56440d3a1f513417949",
"signature": "ea3fd70d4f67897b69ab3426908b936280d253cf4aba2e1c74c311f263d3c5e8",
"affectsGlobalScope": false
},
"../src/lib/components/LoginResetPassword.tsx": {
"version": "f82ede3ed2f03e300b0193a76a04329e5659ba66c6f8a30375b2c00dc0555402",
"signature": "70495aa1cdc01371f16f4aaa4f796bd97ffa5fdcba2106d68b9051fd75e0455f",
"affectsGlobalScope": false
},
"../src/lib/components/LoginVerifyEmail.tsx": {
"version": "14d5a66f432b47ee3d7c291a3ff3b33baa719a288dd728f41a445a1366d39dff",
"signature": "a2281241091b3668cb496ef38591c4e5c163a0a2e7b4d198340f8737e01a5274",
"affectsGlobalScope": false
},
"../src/lib/components/KcApp.tsx": {
"version": "1dc97d93ce4947cb0c51801c9da5c4d7c05c713b4df93235f707a6775a9045c3",
"version": "46265ea20d6e8cc356ef70670a8c55955348365f48a3dfd086aa746279b3c16e",
"signature": "2acce11efe3053840e61c8eb4a7f2be9b04215c731ac443a726103882c4ae15d",
"affectsGlobalScope": false
},
"../src/lib/index.ts": {
"version": "87cd3d08c4580c69fbfa2cbbceb4e3a237586b7c77f4c64c7f532cf4728771c8",
"signature": "b5c2208a19fa189cc5866ac49ee949b248f75e2535e6aa38b0e1efc36440c21d",
"version": "bde1e8895e2334c9c27e2f5e65355f86638ee653b61a2513afd7b052b5b5a786",
"signature": "fa035f95aed43aaeeacd0361abe01dcaa8cc1018f12d48d3884af97528762ef5",
"affectsGlobalScope": false
},
"../src/lib/i18n/generated_messages/account.ts": {
@ -1746,7 +1756,7 @@
"../node_modules/@types/react/jsx-runtime.d.ts",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/useKcTranslation.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
],
@ -1755,7 +1765,7 @@
"../node_modules/@types/react/jsx-runtime.d.ts",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/useKcTranslation.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
],
@ -1766,6 +1776,8 @@
"../src/lib/components/Info.tsx",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Login.tsx",
"../src/lib/components/LoginResetPassword.tsx",
"../src/lib/components/LoginVerifyEmail.tsx",
"../src/lib/components/Register.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
@ -1782,7 +1794,26 @@
"../node_modules/tss-react/index.d.ts",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/useKcTranslation.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
],
"../src/lib/components/LoginResetPassword.tsx": [
"../node_modules/@types/react/index.d.ts",
"../node_modules/@types/react/jsx-runtime.d.ts",
"../node_modules/tss-react/index.d.ts",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
],
"../src/lib/components/LoginVerifyEmail.tsx": [
"../node_modules/@types/react/index.d.ts",
"../node_modules/@types/react/jsx-runtime.d.ts",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
],
@ -1792,7 +1823,7 @@
"../node_modules/tss-react/index.d.ts",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/useKcTranslation.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
],
@ -1805,7 +1836,7 @@
"../src/lib/components/KcProps.ts",
"../src/lib/i18n/KcLanguageTag.ts",
"../src/lib/i18n/useKcLanguageTag.ts",
"../src/lib/i18n/useKcTranslation.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/appendHead.ts",
"../src/lib/tools/assert.ts"
@ -1833,7 +1864,7 @@
"../src/lib/i18n/KcLanguageTag.ts",
"../src/lib/kcContext.ts"
],
"../src/lib/i18n/useKcTranslation.tsx": [
"../src/lib/i18n/useKcMessage.tsx": [
"../node_modules/@types/react/index.d.ts",
"../node_modules/@types/react/jsx-runtime.d.ts",
"../node_modules/evt/tools/typeSafety/id.d.ts",
@ -1848,10 +1879,12 @@
"../src/lib/components/KcApp.tsx",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Login.tsx",
"../src/lib/components/LoginResetPassword.tsx",
"../src/lib/components/LoginVerifyEmail.tsx",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/KcLanguageTag.ts",
"../src/lib/i18n/useKcLanguageTag.ts",
"../src/lib/i18n/useKcTranslation.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
],
@ -1862,7 +1895,7 @@
"../src/bin/build-keycloak-theme/ftlValuesGlobalName.ts",
"../src/bin/build-keycloak-theme/generateFtl/index.ts",
"../src/lib/i18n/KcLanguageTag.ts",
"../src/lib/i18n/useKcTranslation.tsx"
"../src/lib/i18n/useKcMessage.tsx"
],
"../src/lib/tools/allPropertiesValuesToUndefined.ts": [
"../node_modules/@types/react/jsx-runtime.d.ts",
@ -2403,6 +2436,14 @@
"../node_modules/@types/react/index.d.ts",
"../src/lib/components/KcProps.ts"
],
"../src/lib/components/LoginResetPassword.tsx": [
"../node_modules/@types/react/index.d.ts",
"../src/lib/components/KcProps.ts"
],
"../src/lib/components/LoginVerifyEmail.tsx": [
"../node_modules/@types/react/index.d.ts",
"../src/lib/components/KcProps.ts"
],
"../src/lib/components/Register.tsx": [
"../node_modules/@types/react/index.d.ts",
"../src/lib/components/KcProps.ts"
@ -2417,7 +2458,7 @@
"../src/lib/i18n/useKcLanguageTag.ts": [
"../node_modules/powerhooks/index.d.ts"
],
"../src/lib/i18n/useKcTranslation.tsx": [
"../src/lib/i18n/useKcMessage.tsx": [
"../node_modules/@types/react/index.d.ts",
"../src/lib/i18n/generated_messages/login.ts"
],
@ -2427,16 +2468,18 @@
"../src/lib/components/KcApp.tsx",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Login.tsx",
"../src/lib/components/LoginResetPassword.tsx",
"../src/lib/components/LoginVerifyEmail.tsx",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/KcLanguageTag.ts",
"../src/lib/i18n/useKcLanguageTag.ts",
"../src/lib/i18n/useKcTranslation.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/kcContext.ts",
"../src/lib/tools/assert.ts"
],
"../src/lib/kcContext.ts": [
"../src/lib/i18n/KcLanguageTag.ts",
"../src/lib/i18n/useKcTranslation.tsx"
"../src/lib/i18n/useKcMessage.tsx"
],
"../src/lib/tools/allPropertiesValuesToUndefined.ts": [
"../node_modules/minimal-polyfills/Object.fromEntries.d.ts"
@ -2656,6 +2699,8 @@
"../src/lib/components/KcApp.tsx",
"../src/lib/components/KcProps.ts",
"../src/lib/components/Login.tsx",
"../src/lib/components/LoginResetPassword.tsx",
"../src/lib/components/LoginVerifyEmail.tsx",
"../src/lib/components/Register.tsx",
"../src/lib/components/Template.tsx",
"../src/lib/i18n/KcLanguageTag.ts",
@ -2664,7 +2709,7 @@
"../src/lib/i18n/generated_messages/email.ts",
"../src/lib/i18n/generated_messages/login.ts",
"../src/lib/i18n/useKcLanguageTag.ts",
"../src/lib/i18n/useKcTranslation.tsx",
"../src/lib/i18n/useKcMessage.tsx",
"../src/lib/index.ts",
"../src/lib/kcContext.ts",
"../src/lib/tools/allPropertiesValuesToUndefined.ts",