keycloakify 4.7.1 → 4.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ### **4.7.2** (2022-04-06)
2
+
3
+ - #43: M1 Mac support
4
+
1
5
  ### **4.7.1** (2022-03-30)
2
6
 
3
7
  - Improve browser autofill
package/README.md CHANGED
@@ -30,9 +30,9 @@
30
30
  <img src="https://user-images.githubusercontent.com/6702424/110260457-a1c3d380-7fac-11eb-853a-80459b65626b.png">
31
31
  </p>
32
32
 
33
- > New in v4.7:
34
- > Register with user profile enabled: Out of the box `options` validator support.
35
- > [Example](https://user-images.githubusercontent.com/6702424/158911163-81e6bbe8-feb0-4dc8-abff-de199d7a678e.mov)
33
+ > New with v4.7.2: **M1 Mac** support (for testing locally with a dockerized Keycloak).
34
+ > Thanks goes to [@eduardosanzb](https://github.com/InseeFrLab/keycloakify/issues/43#issuecomment-975699658).
35
+ > Be aware: When running M1s you are testing with Keycloak v15 else the local container spun will be a Keycloak v16.1.0.
36
36
 
37
37
  # Motivations
38
38
 
@@ -478,6 +478,11 @@ and `kcRegisterContext["authorizedMailDomains"]` to validate on.
478
478
 
479
479
  # Changelog highlights
480
480
 
481
+ # v4.7.2
482
+
483
+ Testing with local Keycloak container working with M1 Mac. Thanks to [@eduardosanzb](https://github.com/InseeFrLab/keycloakify/issues/43#issuecomment-975699658).
484
+ Be aware: When running M1s you are testing with Keycloak v15 else the local container spun will be a Keycloak v16.1.0.
485
+
481
486
  # v4.7.0
482
487
 
483
488
  Register with user profile enabled: Out of the box `options` validator support.
@@ -39,6 +39,7 @@ var child_process = __importStar(require("child_process"));
39
39
  var generateDebugFiles_1 = require("./generateDebugFiles");
40
40
  var url_1 = require("url");
41
41
  var fs = __importStar(require("fs"));
42
+ var isM1_1 = require("../tools/isM1");
42
43
  var reactProjectDirPath = process.cwd();
43
44
  var doUseExternalAssets = ((_a = process.argv[2]) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === "--external-assets";
44
45
  var parsedPackageJson = require((0, path_1.join)(reactProjectDirPath, "package.json"));
@@ -97,7 +98,9 @@ function main() {
97
98
  keycloakThemeBuildingDirPath: exports.keycloakThemeBuildingDirPath,
98
99
  themeName: themeName,
99
100
  //We want, however to test in a container running the latest Keycloak version
100
- "keycloakVersion": "16.1.0",
101
+ //Except on M1 where we can't use the default image and we only have
102
+ //https://github.com/InseeFrLab/keycloakify/issues/43#issuecomment-975699658
103
+ "keycloakVersion": (0, isM1_1.getIsM1)() ? "15.0.2" : "16.1.0",
101
104
  });
102
105
  console.log([
103
106
  "",
@@ -1 +1 @@
1
- {"version":3,"file":"build-keycloak-theme.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/build-keycloak-theme.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-keycloak-theme.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/build-keycloak-theme.ts"],"names":[],"mappings":"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"}
@@ -22,12 +22,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.generateDebugFiles = exports.containerLaunchScriptBasename = void 0;
23
23
  var fs = __importStar(require("fs"));
24
24
  var path_1 = require("path");
25
+ var isM1_1 = require("../../tools/isM1");
25
26
  exports.containerLaunchScriptBasename = "start_keycloak_testing_container.sh";
26
27
  /** Files for being able to run a hot reload keycloak container */
27
28
  function generateDebugFiles(params) {
28
29
  var themeName = params.themeName, keycloakThemeBuildingDirPath = params.keycloakThemeBuildingDirPath, keycloakVersion = params.keycloakVersion;
29
30
  fs.writeFileSync((0, path_1.join)(keycloakThemeBuildingDirPath, "Dockerfile"), Buffer.from([
30
- "FROM jboss/keycloak:" + keycloakVersion,
31
+ "FROM " + ((0, isM1_1.getIsM1)()
32
+ ? "eduardosanzb/keycloak@sha256:b1f5bc674eaff6f4e7b37808b9863440310ff93c282fc9bff812377be48bf519"
33
+ : "jboss/keycloak:" + keycloakVersion),
31
34
  "",
32
35
  "USER root",
33
36
  "",
@@ -1 +1 @@
1
- {"version":3,"file":"generateDebugFiles.js","sourceRoot":"","sources":["../../../src/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AACzB,6BAAgE;AAGnD,QAAA,6BAA6B,GAAG,qCAAqC,CAAC;AAEnF,kEAAkE;AAClE,SAAgB,kBAAkB,CAAC,MAAqG;IAC5H,IAAA,SAAS,GAAoD,MAAM,UAA1D,EAAE,4BAA4B,GAAsB,MAAM,6BAA5B,EAAE,eAAe,GAAK,MAAM,gBAAX,CAAY;IAE5E,EAAE,CAAC,aAAa,CACZ,IAAA,WAAQ,EAAC,4BAA4B,EAAE,YAAY,CAAC,EACpD,MAAM,CAAC,IAAI,CACP;QACI,yBAAuB,eAAiB;QACxC,EAAE;QACF,WAAW;QACX,EAAE;QACF,WAAW;QACX,EAAE;QACF,iEAAiE;QACjE,EAAE;QACF,wDAAwD;KAC3D,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,MAAM,CACT,CACJ,CAAC;IAEF,IAAM,WAAW,GAAM,SAAS,yBAAsB,CAAC;IACvD,IAAM,aAAa,GAAG,4BAA4B,CAAC;IAEnD,EAAE,CAAC,aAAa,CACZ,IAAA,WAAQ,EAAC,4BAA4B,EAAE,qCAA6B,CAAC,EACrE,MAAM,CAAC,IAAI,CACP;QACI,aAAa;QACb,EAAE;QACF,QAAM,4BAA8B;QACpC,EAAE;QACF,eAAa,aAAa,aAAU;QACpC,EAAE;QACF,uBAAqB,WAAa;QAClC,EAAE;QACF,eAAe;QACf,oBAAoB;QACpB,eAAa,aAAa,QAAK;QAC/B,8BAA8B;QAC9B,kCAAkC;QAClC,+CAA+C;QAC/C,WAAS,IAAA,WAAQ,EACb,4BAA4B,EAC5B,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,SAAS,CACZ,oCAA+B,SAAS,WAAQ;QACjD,YAAU,WAAW,YAAS;QAC9B,EAAE;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,MAAM,CACT,EACD,EAAE,MAAM,EAAE,GAAK,EAAE,CACpB,CAAC;IAEF,IAAM,oBAAoB,GAAG,IAAA,WAAQ,EAAC,4BAA4B,EAAE,eAAe,EAAE,mBAAmB,CAAC,CAAC;IAE1G,IAAI;QACA,EAAE,CAAC,SAAS,CAAC,IAAA,cAAW,EAAC,oBAAoB,CAAC,CAAC,CAAC;KACnD;IAAC,WAAM,GAAE;IAEV,EAAE,CAAC,aAAa,CACZ,oBAAoB,EACpB,EAAE;SACG,YAAY,CAAC,IAAA,WAAQ,EAAC,SAAS,EAAE,mBAAiB,eAAe,SAAM,CAAC,CAAC;SACzE,QAAQ,CAAC,MAAM,CAAC;SAChB,OAAO,CACJ,IAAI,MAAM,CACN,CAAC,sCAAsC,EAAE,iCAAiC,EAAE,uCAAuC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EACjI,GAAG,CACN,EACD,CAAC,iCAAiC,EAAE,kCAAkC,EAAE,wCAAwC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/H,CACR,CAAC;AACN,CAAC;AA7ED,gDA6EC"}
1
+ {"version":3,"file":"generateDebugFiles.js","sourceRoot":"","sources":["../../../src/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AACzB,6BAAgE;AAEhE,yCAA2C;AAE9B,QAAA,6BAA6B,GAAG,qCAAqC,CAAC;AAEnF,kEAAkE;AAClE,SAAgB,kBAAkB,CAAC,MAAqG;IAC5H,IAAA,SAAS,GAAoD,MAAM,UAA1D,EAAE,4BAA4B,GAAsB,MAAM,6BAA5B,EAAE,eAAe,GAAK,MAAM,gBAAX,CAAY;IAE5E,EAAE,CAAC,aAAa,CACZ,IAAA,WAAQ,EAAC,4BAA4B,EAAE,YAAY,CAAC,EACpD,MAAM,CAAC,IAAI,CACP;QACI,WACI,IAAA,cAAO,GAAE;YACL,CAAC,CAAC,+FAA+F;YACjG,CAAC,CAAC,oBAAkB,eAAiB,CAC3C;QACF,EAAE;QACF,WAAW;QACX,EAAE;QACF,WAAW;QACX,EAAE;QACF,iEAAiE;QACjE,EAAE;QACF,wDAAwD;KAC3D,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,MAAM,CACT,CACJ,CAAC;IAEF,IAAM,WAAW,GAAM,SAAS,yBAAsB,CAAC;IACvD,IAAM,aAAa,GAAG,4BAA4B,CAAC;IAEnD,EAAE,CAAC,aAAa,CACZ,IAAA,WAAQ,EAAC,4BAA4B,EAAE,qCAA6B,CAAC,EACrE,MAAM,CAAC,IAAI,CACP;QACI,aAAa;QACb,EAAE;QACF,QAAM,4BAA8B;QACpC,EAAE;QACF,eAAa,aAAa,aAAU;QACpC,EAAE;QACF,uBAAqB,WAAa;QAClC,EAAE;QACF,eAAe;QACf,oBAAoB;QACpB,eAAa,aAAa,QAAK;QAC/B,8BAA8B;QAC9B,kCAAkC;QAClC,+CAA+C;QAC/C,WAAS,IAAA,WAAQ,EACb,4BAA4B,EAC5B,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,SAAS,CACZ,oCAA+B,SAAS,WAAQ;QACjD,YAAU,WAAW,YAAS;QAC9B,EAAE;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,MAAM,CACT,EACD,EAAE,MAAM,EAAE,GAAK,EAAE,CACpB,CAAC;IAEF,IAAM,oBAAoB,GAAG,IAAA,WAAQ,EAAC,4BAA4B,EAAE,eAAe,EAAE,mBAAmB,CAAC,CAAC;IAE1G,IAAI;QACA,EAAE,CAAC,SAAS,CAAC,IAAA,cAAW,EAAC,oBAAoB,CAAC,CAAC,CAAC;KACnD;IAAC,WAAM,GAAE;IAEV,EAAE,CAAC,aAAa,CACZ,oBAAoB,EACpB,EAAE;SACG,YAAY,CAAC,IAAA,WAAQ,EAAC,SAAS,EAAE,mBAAiB,eAAe,SAAM,CAAC,CAAC;SACzE,QAAQ,CAAC,MAAM,CAAC;SAChB,OAAO,CACJ,IAAI,MAAM,CACN,CAAC,sCAAsC,EAAE,iCAAiC,EAAE,uCAAuC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EACjI,GAAG,CACN,EACD,CAAC,iCAAiC,EAAE,kCAAkC,EAAE,wCAAwC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/H,CACR,CAAC;AACN,CAAC;AAjFD,gDAiFC"}
@@ -0,0 +1 @@
1
+ export declare function getIsM1(): boolean;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.getIsM1 = void 0;
23
+ var os = __importStar(require("os"));
24
+ function getIsM1() {
25
+ return os.cpus()[0].model.includes("Apple M1");
26
+ }
27
+ exports.getIsM1 = getIsM1;
28
+ //# sourceMappingURL=isM1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isM1.js","sourceRoot":"","sources":["../../src/bin/tools/isM1.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AAEzB,SAAgB,OAAO;IACnB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACnD,CAAC;AAFD,0BAEC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "keycloakify",
3
- "version": "4.7.1",
3
+ "version": "4.7.2",
4
4
  "description": "Keycloak theme generator for Reacts app",
5
5
  "repository": {
6
6
  "type": "git",
@@ -48,6 +48,7 @@
48
48
  "src/bin/tools/getProjectRoot.ts",
49
49
  "src/bin/tools/grant-exec-perms.ts",
50
50
  "src/bin/tools/isInside.ts",
51
+ "src/bin/tools/isM1.ts",
51
52
  "src/bin/tools/rm.ts",
52
53
  "src/bin/tools/transformCodebase.ts",
53
54
  "src/lib/components/Error.tsx",
@@ -162,6 +163,9 @@
162
163
  "bin/tools/isInside.d.ts",
163
164
  "bin/tools/isInside.js",
164
165
  "bin/tools/isInside.js.map",
166
+ "bin/tools/isM1.d.ts",
167
+ "bin/tools/isM1.js",
168
+ "bin/tools/isM1.js.map",
165
169
  "bin/tools/rm.d.ts",
166
170
  "bin/tools/rm.js",
167
171
  "bin/tools/rm.js.map",
@@ -5,6 +5,7 @@ import * as child_process from "child_process";
5
5
  import { generateDebugFiles, containerLaunchScriptBasename } from "./generateDebugFiles";
6
6
  import { URL } from "url";
7
7
  import * as fs from "fs";
8
+ import { getIsM1 } from "../tools/isM1";
8
9
 
9
10
  type ParsedPackageJson = {
10
11
  name: string;
@@ -92,7 +93,9 @@ export function main() {
92
93
  keycloakThemeBuildingDirPath,
93
94
  themeName,
94
95
  //We want, however to test in a container running the latest Keycloak version
95
- "keycloakVersion": "16.1.0",
96
+ //Except on M1 where we can't use the default image and we only have
97
+ //https://github.com/InseeFrLab/keycloakify/issues/43#issuecomment-975699658
98
+ "keycloakVersion": getIsM1() ? "15.0.2" : "16.1.0",
96
99
  });
97
100
 
98
101
  console.log(
@@ -1,6 +1,7 @@
1
1
  import * as fs from "fs";
2
2
  import { join as pathJoin, dirname as pathDirname } from "path";
3
3
  import type { KeycloakVersion } from "../../KeycloakVersion";
4
+ import { getIsM1 } from "../../tools/isM1";
4
5
 
5
6
  export const containerLaunchScriptBasename = "start_keycloak_testing_container.sh";
6
7
 
@@ -12,7 +13,11 @@ export function generateDebugFiles(params: { keycloakVersion: KeycloakVersion; t
12
13
  pathJoin(keycloakThemeBuildingDirPath, "Dockerfile"),
13
14
  Buffer.from(
14
15
  [
15
- `FROM jboss/keycloak:${keycloakVersion}`,
16
+ `FROM ${
17
+ getIsM1()
18
+ ? "eduardosanzb/keycloak@sha256:b1f5bc674eaff6f4e7b37808b9863440310ff93c282fc9bff812377be48bf519"
19
+ : `jboss/keycloak:${keycloakVersion}`
20
+ }`,
16
21
  "",
17
22
  "USER root",
18
23
  "",
@@ -0,0 +1,5 @@
1
+ import * as os from "os";
2
+
3
+ export function getIsM1() {
4
+ return os.cpus()[0].model.includes("Apple M1");
5
+ }