@bluealba/pae-bootstrap-lib 2.1.3 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/README.md +2 -1
  2. package/dist/src/bootstrap/apply-service-local.d.ts +17 -0
  3. package/dist/src/bootstrap/apply-service-local.d.ts.map +1 -0
  4. package/dist/src/bootstrap/apply-service-local.js +54 -0
  5. package/dist/src/bootstrap/apply-service-local.js.map +1 -0
  6. package/dist/src/bootstrap/apply-service-local.test.d.ts +2 -0
  7. package/dist/src/bootstrap/apply-service-local.test.d.ts.map +1 -0
  8. package/dist/src/bootstrap/apply-service-local.test.js +125 -0
  9. package/dist/src/bootstrap/apply-service-local.test.js.map +1 -0
  10. package/dist/src/bootstrap/bootstrap-platform.d.ts +0 -4
  11. package/dist/src/bootstrap/bootstrap-platform.d.ts.map +1 -1
  12. package/dist/src/bootstrap/bootstrap-platform.js +15 -21
  13. package/dist/src/bootstrap/bootstrap-platform.js.map +1 -1
  14. package/dist/src/bootstrap/domain/bootstrap-sync-metadata.interface.d.ts +24 -8
  15. package/dist/src/bootstrap/domain/bootstrap-sync-metadata.interface.d.ts.map +1 -1
  16. package/dist/src/bootstrap/domain/domain-validation.test.js +180 -68
  17. package/dist/src/bootstrap/domain/domain-validation.test.js.map +1 -1
  18. package/dist/src/bootstrap/entity-synchronizer.js.map +1 -1
  19. package/dist/src/bootstrap/read-bootstrap-applications.d.ts +1 -1
  20. package/dist/src/bootstrap/read-bootstrap-applications.d.ts.map +1 -1
  21. package/dist/src/bootstrap/read-bootstrap-applications.js +408 -54
  22. package/dist/src/bootstrap/read-bootstrap-applications.js.map +1 -1
  23. package/dist/src/expression-language/expression-engine.d.ts +3 -0
  24. package/dist/src/expression-language/expression-engine.d.ts.map +1 -0
  25. package/dist/src/expression-language/expression-engine.js +80 -0
  26. package/dist/src/expression-language/expression-engine.js.map +1 -0
  27. package/dist/src/expression-language/expression-engine.test.d.ts +2 -0
  28. package/dist/src/expression-language/expression-engine.test.d.ts.map +1 -0
  29. package/dist/src/expression-language/expression-engine.test.js +107 -0
  30. package/dist/src/expression-language/expression-engine.test.js.map +1 -0
  31. package/dist/src/expression-language/index.d.ts +5 -0
  32. package/dist/src/expression-language/index.d.ts.map +1 -0
  33. package/dist/src/expression-language/index.js +14 -0
  34. package/dist/src/expression-language/index.js.map +1 -0
  35. package/dist/src/expression-language/resolve-deep.d.ts +2 -0
  36. package/dist/src/expression-language/resolve-deep.d.ts.map +1 -0
  37. package/dist/src/expression-language/resolve-deep.js +21 -0
  38. package/dist/src/expression-language/resolve-deep.js.map +1 -0
  39. package/dist/src/expression-language/resolve-deep.test.d.ts +2 -0
  40. package/dist/src/expression-language/resolve-deep.test.d.ts.map +1 -0
  41. package/dist/src/expression-language/resolve-deep.test.js +117 -0
  42. package/dist/src/expression-language/resolve-deep.test.js.map +1 -0
  43. package/dist/src/expression-language/resolvers/env.resolver.d.ts +3 -0
  44. package/dist/src/expression-language/resolvers/env.resolver.d.ts.map +1 -0
  45. package/dist/src/expression-language/resolvers/env.resolver.js +14 -0
  46. package/dist/src/expression-language/resolvers/env.resolver.js.map +1 -0
  47. package/dist/src/expression-language/resolvers/env.resolver.test.d.ts +2 -0
  48. package/dist/src/expression-language/resolvers/env.resolver.test.d.ts.map +1 -0
  49. package/dist/src/expression-language/resolvers/env.resolver.test.js +23 -0
  50. package/dist/src/expression-language/resolvers/env.resolver.test.js.map +1 -0
  51. package/dist/src/expression-language/resolvers/index.d.ts +8 -0
  52. package/dist/src/expression-language/resolvers/index.d.ts.map +1 -0
  53. package/dist/src/expression-language/resolvers/index.js +12 -0
  54. package/dist/src/expression-language/resolvers/index.js.map +1 -0
  55. package/dist/src/expression-language/resolvers/resolver.interface.d.ts +5 -0
  56. package/dist/src/expression-language/resolvers/resolver.interface.d.ts.map +1 -0
  57. package/dist/src/{bootstrap/synchronizers/sync-entity-options.js → expression-language/resolvers/resolver.interface.js} +1 -1
  58. package/dist/src/expression-language/resolvers/resolver.interface.js.map +1 -0
  59. package/dist/src/index.d.ts +3 -1
  60. package/dist/src/index.d.ts.map +1 -1
  61. package/dist/src/index.js +8 -1
  62. package/dist/src/index.js.map +1 -1
  63. package/dist/src/utils/io.d.ts +1 -1
  64. package/dist/src/utils/io.d.ts.map +1 -1
  65. package/dist/src/utils/io.js +4 -1
  66. package/dist/src/utils/io.js.map +1 -1
  67. package/package.json +1 -1
  68. package/dist/src/bootstrap/fix-created-by.d.ts +0 -10
  69. package/dist/src/bootstrap/fix-created-by.d.ts.map +0 -1
  70. package/dist/src/bootstrap/fix-created-by.js +0 -36
  71. package/dist/src/bootstrap/fix-created-by.js.map +0 -1
  72. package/dist/src/bootstrap/initialize-pae-client.d.ts +0 -7
  73. package/dist/src/bootstrap/initialize-pae-client.d.ts.map +0 -1
  74. package/dist/src/bootstrap/initialize-pae-client.js +0 -24
  75. package/dist/src/bootstrap/initialize-pae-client.js.map +0 -1
  76. package/dist/src/bootstrap/run-bootstrap-sync.service.d.ts +0 -4
  77. package/dist/src/bootstrap/run-bootstrap-sync.service.d.ts.map +0 -1
  78. package/dist/src/bootstrap/run-bootstrap-sync.service.js +0 -29
  79. package/dist/src/bootstrap/run-bootstrap-sync.service.js.map +0 -1
  80. package/dist/src/bootstrap/synchronizers/sync-applications.d.ts +0 -4
  81. package/dist/src/bootstrap/synchronizers/sync-applications.d.ts.map +0 -1
  82. package/dist/src/bootstrap/synchronizers/sync-applications.js +0 -53
  83. package/dist/src/bootstrap/synchronizers/sync-applications.js.map +0 -1
  84. package/dist/src/bootstrap/synchronizers/sync-authz-entities.d.ts +0 -11
  85. package/dist/src/bootstrap/synchronizers/sync-authz-entities.d.ts.map +0 -1
  86. package/dist/src/bootstrap/synchronizers/sync-authz-entities.js +0 -58
  87. package/dist/src/bootstrap/synchronizers/sync-authz-entities.js.map +0 -1
  88. package/dist/src/bootstrap/synchronizers/sync-catalog.d.ts +0 -5
  89. package/dist/src/bootstrap/synchronizers/sync-catalog.d.ts.map +0 -1
  90. package/dist/src/bootstrap/synchronizers/sync-catalog.js +0 -95
  91. package/dist/src/bootstrap/synchronizers/sync-catalog.js.map +0 -1
  92. package/dist/src/bootstrap/synchronizers/sync-entities/performDeletes.d.ts +0 -11
  93. package/dist/src/bootstrap/synchronizers/sync-entities/performDeletes.d.ts.map +0 -1
  94. package/dist/src/bootstrap/synchronizers/sync-entities/performDeletes.js +0 -38
  95. package/dist/src/bootstrap/synchronizers/sync-entities/performDeletes.js.map +0 -1
  96. package/dist/src/bootstrap/synchronizers/sync-entities/performUpdates.d.ts +0 -12
  97. package/dist/src/bootstrap/synchronizers/sync-entities/performUpdates.d.ts.map +0 -1
  98. package/dist/src/bootstrap/synchronizers/sync-entities/performUpdates.js +0 -43
  99. package/dist/src/bootstrap/synchronizers/sync-entities/performUpdates.js.map +0 -1
  100. package/dist/src/bootstrap/synchronizers/sync-entities.d.ts +0 -19
  101. package/dist/src/bootstrap/synchronizers/sync-entities.d.ts.map +0 -1
  102. package/dist/src/bootstrap/synchronizers/sync-entities.js +0 -59
  103. package/dist/src/bootstrap/synchronizers/sync-entities.js.map +0 -1
  104. package/dist/src/bootstrap/synchronizers/sync-entities.test.d.ts +0 -2
  105. package/dist/src/bootstrap/synchronizers/sync-entities.test.d.ts.map +0 -1
  106. package/dist/src/bootstrap/synchronizers/sync-entities.test.js +0 -158
  107. package/dist/src/bootstrap/synchronizers/sync-entities.test.js.map +0 -1
  108. package/dist/src/bootstrap/synchronizers/sync-entity-options.d.ts +0 -11
  109. package/dist/src/bootstrap/synchronizers/sync-entity-options.d.ts.map +0 -1
  110. package/dist/src/bootstrap/synchronizers/sync-entity-options.js.map +0 -1
  111. package/dist/src/bootstrap/synchronizers/sync-feature-flags.d.ts +0 -8
  112. package/dist/src/bootstrap/synchronizers/sync-feature-flags.d.ts.map +0 -1
  113. package/dist/src/bootstrap/synchronizers/sync-feature-flags.js +0 -67
  114. package/dist/src/bootstrap/synchronizers/sync-feature-flags.js.map +0 -1
  115. package/dist/src/bootstrap/synchronizers/sync-modules-config.d.ts +0 -4
  116. package/dist/src/bootstrap/synchronizers/sync-modules-config.d.ts.map +0 -1
  117. package/dist/src/bootstrap/synchronizers/sync-modules-config.js +0 -28
  118. package/dist/src/bootstrap/synchronizers/sync-modules-config.js.map +0 -1
  119. package/dist/src/bootstrap/synchronizers/sync-operations.d.ts +0 -5
  120. package/dist/src/bootstrap/synchronizers/sync-operations.d.ts.map +0 -1
  121. package/dist/src/bootstrap/synchronizers/sync-operations.js +0 -41
  122. package/dist/src/bootstrap/synchronizers/sync-operations.js.map +0 -1
  123. package/dist/src/bootstrap/synchronizers/sync-role-operations.d.ts +0 -8
  124. package/dist/src/bootstrap/synchronizers/sync-role-operations.d.ts.map +0 -1
  125. package/dist/src/bootstrap/synchronizers/sync-role-operations.js +0 -74
  126. package/dist/src/bootstrap/synchronizers/sync-role-operations.js.map +0 -1
  127. package/dist/src/bootstrap/synchronizers/sync-roles.d.ts +0 -5
  128. package/dist/src/bootstrap/synchronizers/sync-roles.d.ts.map +0 -1
  129. package/dist/src/bootstrap/synchronizers/sync-roles.js +0 -41
  130. package/dist/src/bootstrap/synchronizers/sync-roles.js.map +0 -1
  131. package/dist/src/bootstrap/synchronizers/sync-shared-libraries.d.ts +0 -4
  132. package/dist/src/bootstrap/synchronizers/sync-shared-libraries.d.ts.map +0 -1
  133. package/dist/src/bootstrap/synchronizers/sync-shared-libraries.js +0 -32
  134. package/dist/src/bootstrap/synchronizers/sync-shared-libraries.js.map +0 -1
@@ -1,3 +1,3 @@
1
1
  export declare const fileExists: (path: string) => boolean;
2
- export declare const readJSONFile: (path: string) => any;
2
+ export declare const readJSONFile: (path: string) => unknown;
3
3
  //# sourceMappingURL=io.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../../../src/utils/io.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,YAAwB,CAAC;AAOhE,eAAO,MAAM,YAAY,SAHV,MAAM,QAGkC,CAAC"}
1
+ {"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../../../src/utils/io.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,YAAwB,CAAC;AAShE,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,OACH,CAAC"}
@@ -5,9 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.readJSONFile = exports.fileExists = void 0;
7
7
  const node_fs_1 = __importDefault(require("node:fs"));
8
+ const expression_language_1 = require("../expression-language");
8
9
  const parseJSON = JSON.parse;
9
10
  const fileExists = (path) => node_fs_1.default.existsSync(path);
10
11
  exports.fileExists = fileExists;
11
12
  const readAndParseFile = (parser) => (path) => parser(node_fs_1.default.readFileSync(path, 'utf8'));
12
- exports.readJSONFile = readAndParseFile(parseJSON);
13
+ const readAndParseJSONFile = readAndParseFile(parseJSON);
14
+ const readJSONFile = (path) => (0, expression_language_1.resolveDeep)(readAndParseJSONFile(path));
15
+ exports.readJSONFile = readJSONFile;
13
16
  //# sourceMappingURL=io.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"io.js","sourceRoot":"","sources":["../../../src/utils/io.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAyB;AAEzB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;AAEtB,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,iBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAAnD,QAAA,UAAU,cAAyC;AAEhE,MAAM,gBAAgB,GAClB,CAAI,MAA8B,EAAE,EAAE,CAClC,CAAC,IAAY,EAAK,EAAE,CAChB,MAAM,CAAC,iBAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AAErC,QAAA,YAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"io.js","sourceRoot":"","sources":["../../../src/utils/io.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAyB;AACzB,gEAAqD;AAErD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;AAEtB,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,iBAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAAnD,QAAA,UAAU,cAAyC;AAEhE,MAAM,gBAAgB,GAClB,CAAI,MAA8B,EAAE,EAAE,CAClC,CAAC,IAAY,EAAK,EAAE,CAChB,MAAM,CAAC,iBAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AAElD,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAElD,MAAM,YAAY,GAAG,CAAC,IAAY,EAAW,EAAE,CACpD,IAAA,iCAAW,EAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;AAD7B,QAAA,YAAY,gBACiB"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bluealba/pae-bootstrap-lib",
3
3
  "description": "PAE library for bootstrapping platforms",
4
- "version": "2.1.3",
4
+ "version": "3.0.0",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
7
7
  "files": [
@@ -1,10 +0,0 @@
1
- import { PAE } from "@bluealba/pae-core";
2
- import { BootstrapPlatform } from "./domain/bootstrap-sync-metadata.interface";
3
- /**
4
- * Temporary behavior to fix modules after running the migration that adds the created_by & updated_by fields.
5
- * Since they are created with "system" value, but the owner is the "scopedTo" of each bootstrap (env var)
6
- * we must re-create them.
7
- */
8
- declare const fixCreatedBy: (platform: BootstrapPlatform, pae: PAE, scopedTo: string) => Promise<void[] | undefined>;
9
- export default fixCreatedBy;
10
- //# sourceMappingURL=fix-created-by.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fix-created-by.d.ts","sourceRoot":"","sources":["../../../src/bootstrap/fix-created-by.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAE/E;;;;GAIG;AACH,QAAA,MAAM,YAAY,GAAU,UAAU,iBAAiB,EAAE,KAAK,GAAG,EAAE,UAAU,MAAM,gCAwBlF,CAAA;AAED,eAAe,YAAY,CAAA"}
@@ -1,36 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- /**
13
- * Temporary behavior to fix modules after running the migration that adds the created_by & updated_by fields.
14
- * Since they are created with "system" value, but the owner is the "scopedTo" of each bootstrap (env var)
15
- * we must re-create them.
16
- */
17
- const fixCreatedBy = (platform, pae, scopedTo) => __awaiter(void 0, void 0, void 0, function* () {
18
- const modules = Object.values(platform.applications).flatMap(a => a.modules);
19
- const serverModules = yield pae.getAllModules();
20
- // those in the server but with a different "createdBy". We will "fix" the
21
- const modulesToFix = modules.filter(module => serverModules.some(m => m.name === module.name
22
- // it was automatically generated by the migration that added this column
23
- && m.createdBy === 'system'));
24
- if (modulesToFix.length === 0) {
25
- console.log(`>>> [FIXING] no modules to fix`);
26
- return;
27
- }
28
- return Promise.all(modulesToFix.map((m) => __awaiter(void 0, void 0, void 0, function* () {
29
- console.log(`>>> [FIXING] module ${m.name} author by recreating it author [${scopedTo}]`);
30
- // we delete and recreate it. This will pick up our user as author (scopedTo)
31
- yield pae.deleteModule(m.name);
32
- yield pae.createModule(m);
33
- })));
34
- });
35
- exports.default = fixCreatedBy;
36
- //# sourceMappingURL=fix-created-by.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fix-created-by.js","sourceRoot":"","sources":["../../../src/bootstrap/fix-created-by.ts"],"names":[],"mappings":";;;;;;;;;;;AAIA;;;;GAIG;AACH,MAAM,YAAY,GAAG,CAAO,QAA2B,EAAE,GAAQ,EAAE,QAAgB,EAAE,EAAE;IACrF,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;IAC5E,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,aAAa,EAAE,CAAA;IAE/C,0EAA0E;IAC1E,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAC3C,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACrB,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QACtB,yEAAyE;WACtE,CAAC,CAAC,SAAS,KAAK,QAAQ,CAC5B,CACF,CAAA;IAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;QAC7C,OAAO;IACT,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAM,CAAC,EAAC,EAAE;QAC5C,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,IAAI,oCAAoC,QAAQ,GAAG,CAAC,CAAA;QACzF,6EAA6E;QAC7E,MAAM,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC9B,MAAM,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAC3B,CAAC,CAAA,CAAC,CAAC,CAAA;AACL,CAAC,CAAA,CAAA;AAED,kBAAe,YAAY,CAAA"}
@@ -1,7 +0,0 @@
1
- import { PAE } from "@bluealba/pae-core";
2
- /**
3
- * Initializes the PAE client
4
- */
5
- declare const initializePAEClient: () => Promise<PAE>;
6
- export default initializePAEClient;
7
- //# sourceMappingURL=initialize-pae-client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"initialize-pae-client.d.ts","sourceRoot":"","sources":["../../../src/bootstrap/initialize-pae-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAE7D;;GAEG;AACH,QAAA,MAAM,mBAAmB,QAAa,OAAO,CAAC,GAAG,CAWhD,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const pae_core_1 = require("@bluealba/pae-core");
13
- /**
14
- * Initializes the PAE client
15
- */
16
- const initializePAEClient = () => __awaiter(void 0, void 0, void 0, function* () {
17
- console.log("Initializing PAE client...");
18
- const pae = yield (0, pae_core_1.createPAE)((0, pae_core_1.fromEnv)('GATEWAY_SERVICE_URL'), (0, pae_core_1.fromEnv)("SERVICE_ACCESS_SECRET"), {
19
- serviceName: (0, pae_core_1.fromEnv)("SERVICE_ACCESS_NAME"),
20
- }, 'direct');
21
- return pae;
22
- });
23
- exports.default = initializePAEClient;
24
- //# sourceMappingURL=initialize-pae-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"initialize-pae-client.js","sourceRoot":"","sources":["../../../src/bootstrap/initialize-pae-client.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,iDAA6D;AAE7D;;GAEG;AACH,MAAM,mBAAmB,GAAG,GAAuB,EAAE;IACnD,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC1C,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAS,EACzB,IAAA,kBAAO,EAAC,qBAAqB,CAAC,EAC9B,IAAA,kBAAO,EAAC,uBAAuB,CAAC,EAChC;QACE,WAAW,EAAE,IAAA,kBAAO,EAAC,qBAAqB,CAAC;KAC5C,EACD,QAAQ,CACT,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC,CAAA,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
@@ -1,4 +0,0 @@
1
- import { PAE } from "@bluealba/pae-core";
2
- import { BootstrapSyncMetadata } from "./domain/bootstrap-sync-metadata.interface";
3
- export declare const runBootstrapSync: (pae: PAE, config: BootstrapSyncMetadata) => Promise<void>;
4
- //# sourceMappingURL=run-bootstrap-sync.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-bootstrap-sync.service.d.ts","sourceRoot":"","sources":["../../../src/bootstrap/run-bootstrap-sync.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4CAA4C,CAAC;AAQnF,eAAO,MAAM,gBAAgB,GAC3B,KAAK,GAAG,EACR,QAAQ,qBAAqB,kBAe9B,CAAA"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.runBootstrapSync = void 0;
13
- const sync_catalog_1 = require("./synchronizers/sync-catalog");
14
- const sync_shared_libraries_1 = require("./synchronizers/sync-shared-libraries");
15
- const sync_feature_flags_1 = require("./synchronizers/sync-feature-flags");
16
- const sync_applications_1 = require("./synchronizers/sync-applications");
17
- const sync_authz_entities_1 = require("./synchronizers/sync-authz-entities");
18
- const sync_modules_config_1 = require("./synchronizers/sync-modules-config");
19
- const runBootstrapSync = (pae, config) => __awaiter(void 0, void 0, void 0, function* () {
20
- const { catalog, sharedLibraries, featureFlags, applicationsAuthz, rolesAuthz, operationsAuthz, modulesConfig, syncConfig } = config;
21
- yield (0, sync_catalog_1.syncCatalog)(pae, catalog, syncConfig);
22
- yield (0, sync_modules_config_1.syncModulesConfig)(pae, modulesConfig);
23
- yield (0, sync_shared_libraries_1.syncSharedLibraries)(pae, sharedLibraries, syncConfig);
24
- yield (0, sync_feature_flags_1.syncFeatureFlags)(pae, featureFlags, syncConfig);
25
- yield (0, sync_applications_1.syncApplications)(pae, applicationsAuthz, syncConfig);
26
- yield (0, sync_authz_entities_1.syncAuthzEntities)(pae, rolesAuthz, operationsAuthz, syncConfig);
27
- });
28
- exports.runBootstrapSync = runBootstrapSync;
29
- //# sourceMappingURL=run-bootstrap-sync.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run-bootstrap-sync.service.js","sourceRoot":"","sources":["../../../src/bootstrap/run-bootstrap-sync.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,+DAA2D;AAC3D,iFAA4E;AAC5E,2EAAsE;AACtE,yEAAqE;AACrE,6EAAwE;AACxE,6EAAwE;AAEjE,MAAM,gBAAgB,GAAG,CAC9B,GAAQ,EACR,MAA6B,EAC7B,EAAE;IACF,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IAErI,MAAM,IAAA,0BAAW,EAAC,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAE5C,MAAM,IAAA,uCAAiB,EAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAE5C,MAAM,IAAA,2CAAmB,EAAC,GAAG,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;IAE5D,MAAM,IAAA,qCAAgB,EAAC,GAAG,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IAEtD,MAAM,IAAA,oCAAgB,EAAC,GAAG,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;IAE3D,MAAM,IAAA,uCAAiB,EAAC,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;AACxE,CAAC,CAAA,CAAA;AAjBY,QAAA,gBAAgB,oBAiB5B"}
@@ -1,4 +0,0 @@
1
- import { PAE } from "@bluealba/pae-core";
2
- import { BootstrapSyncMetadata } from "../domain/bootstrap-sync-metadata.interface";
3
- export declare const syncApplications: (pae: PAE, applications: BootstrapSyncMetadata["applicationsAuthz"], syncConfig: BootstrapSyncMetadata["syncConfig"]) => Promise<void>;
4
- //# sourceMappingURL=sync-applications.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-applications.d.ts","sourceRoot":"","sources":["../../../../src/bootstrap/synchronizers/sync-applications.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,GAAG,EAAiC,MAAM,oBAAoB,CAAC;AAErF,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAIpF,eAAO,MAAM,gBAAgB,GAC3B,KAAK,GAAG,EACR,cAAc,qBAAqB,CAAC,mBAAmB,CAAC,EACxD,YAAY,qBAAqB,CAAC,YAAY,CAAC,kBAuBhD,CAAA"}
@@ -1,53 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __rest = (this && this.__rest) || function (s, e) {
12
- var t = {};
13
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
- t[p] = s[p];
15
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
- t[p[i]] = s[p[i]];
19
- }
20
- return t;
21
- };
22
- var __importDefault = (this && this.__importDefault) || function (mod) {
23
- return (mod && mod.__esModule) ? mod : { "default": mod };
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.syncApplications = void 0;
27
- const entity_synchronizer_1 = require("../entity-synchronizer");
28
- const sync_entities_1 = __importDefault(require("./sync-entities"));
29
- const syncApplications = (pae, applications, syncConfig) => __awaiter(void 0, void 0, void 0, function* () {
30
- yield (0, sync_entities_1.default)({
31
- name: 'Applications',
32
- data: applications !== null && applications !== void 0 ? applications : [],
33
- scopedTo: syncConfig.scopedTo,
34
- synchronizer: {
35
- keyComparator: (a, b) => a.name === b.name,
36
- fetch: () => __awaiter(void 0, void 0, void 0, function* () { return (yield pae.getAllApplications()).filter(app => !app.isGlobal); }),
37
- add: (data) => pae.createApplication(data),
38
- update: (_a) => {
39
- var { name } = _a, rest = __rest(_a, ["name"]);
40
- return pae.updateApplication(Object.assign({ applicationName: name }, rest));
41
- },
42
- remove: (data) => __awaiter(void 0, void 0, void 0, function* () {
43
- if (data.isGlobal) {
44
- return;
45
- }
46
- yield pae.deleteApplication({ applicationName: data.name });
47
- }),
48
- hasChanged: (0, entity_synchronizer_1.createHasChangedFn)(),
49
- }
50
- });
51
- });
52
- exports.syncApplications = syncApplications;
53
- //# sourceMappingURL=sync-applications.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-applications.js","sourceRoot":"","sources":["../../../../src/bootstrap/synchronizers/sync-applications.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,gEAA4D;AAC5D,oEAA2C;AAEpC,MAAM,gBAAgB,GAAG,CAC9B,GAAQ,EACR,YAAwD,EACxD,UAA+C,EAC/C,EAAE;IACF,MAAM,IAAA,uBAAY,EAAoC;QACpD,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,EAAE;QACxB,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,YAAY,EAAE;YACZ,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;YAC1C,KAAK,EAAE,GAAS,EAAE,kDAAC,OAAA,CAAC,MAAM,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA,GAAA;YAChF,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC;YAC1C,MAAM,EAAE,CAAC,EAAiB,EAAE,EAAE;oBAArB,EAAE,IAAI,OAAW,EAAN,IAAI,cAAf,QAAiB,CAAF;gBAAO,OAAA,GAAG,CAAC,iBAAiB,iBAClD,eAAe,EAAE,IAAI,IAClB,IAAI,EACP,CAAA;aAAA;YACF,MAAM,EAAE,CAAO,IAAI,EAAE,EAAE;gBACrB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,OAAO;gBACT,CAAC;gBACD,MAAM,GAAG,CAAC,iBAAiB,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9D,CAAC,CAAA;YACD,UAAU,EAAE,IAAA,wCAAkB,GAAE;SACjC;KACF,CAAC,CAAC;AACL,CAAC,CAAA,CAAA;AA1BY,QAAA,gBAAgB,oBA0B5B"}
@@ -1,11 +0,0 @@
1
- import { BootstrapSyncMetadata } from "../domain/bootstrap-sync-metadata.interface";
2
- import { PAE } from "@bluealba/pae-core";
3
- /**
4
- * Synchronizes all the authorization entities: applications, operations and roles.
5
- * Once we promote application to be the top level platform entity it won't be here tied to the authorization
6
- * concept.
7
- * We should start thinking in synchronizing "apps". Then apps have different concepts that belong to different
8
- * concerns. Some concepts might be cross-concern.
9
- */
10
- export declare const syncAuthzEntities: (pae: PAE, roles: BootstrapSyncMetadata["rolesAuthz"], operations: BootstrapSyncMetadata["operationsAuthz"], syncConfig: BootstrapSyncMetadata["syncConfig"]) => Promise<void>;
11
- //# sourceMappingURL=sync-authz-entities.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-authz-entities.d.ts","sourceRoot":"","sources":["../../../../src/bootstrap/synchronizers/sync-authz-entities.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAIpF,OAAO,EAA2B,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAIlE;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAC5B,KAAK,GAAG,EACR,OAAO,qBAAqB,CAAC,YAAY,CAAC,EAC1C,YAAY,qBAAqB,CAAC,iBAAiB,CAAC,EACpD,YAAY,qBAAqB,CAAC,YAAY,CAAC,kBAqBhD,CAAC"}
@@ -1,58 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.syncAuthzEntities = void 0;
16
- const ramda_1 = require("ramda");
17
- const sync_roles_1 = __importDefault(require("./sync-roles"));
18
- const sync_operations_1 = __importDefault(require("./sync-operations"));
19
- const sync_role_operations_1 = __importDefault(require("./sync-role-operations"));
20
- const pae_core_1 = require("@bluealba/pae-core");
21
- const PARALLEL_BATCH_SIZE = 5;
22
- /**
23
- * Synchronizes all the authorization entities: applications, operations and roles.
24
- * Once we promote application to be the top level platform entity it won't be here tied to the authorization
25
- * concept.
26
- * We should start thinking in synchronizing "apps". Then apps have different concepts that belong to different
27
- * concerns. Some concepts might be cross-concern.
28
- */
29
- const syncAuthzEntities = (pae, roles, operations, syncConfig) => __awaiter(void 0, void 0, void 0, function* () {
30
- if (roles && roles.length) {
31
- yield synchBatchingPerApplication(roles, (applicationName, list) => (0, sync_roles_1.default)(pae, list !== null && list !== void 0 ? list : [], applicationName !== null && applicationName !== void 0 ? applicationName : pae_core_1.GLOBAL_APPLICATION_NAME, syncConfig));
32
- }
33
- if (operations && operations.length) {
34
- yield synchBatchingPerApplication(operations, (applicationName, data) => __awaiter(void 0, void 0, void 0, function* () {
35
- yield (0, sync_operations_1.default)(pae, (data !== null && data !== void 0 ? data : []).map(op => {
36
- var _a;
37
- return (Object.assign(Object.assign({}, (0, ramda_1.omit)(['roles'], op)), { applicationName: (_a = op.applicationName) !== null && _a !== void 0 ? _a : pae_core_1.GLOBAL_APPLICATION_NAME }));
38
- }), applicationName, syncConfig);
39
- yield processBatch(data !== null && data !== void 0 ? data : [], PARALLEL_BATCH_SIZE, operation => (0, sync_role_operations_1.default)(pae, operation, applicationName, syncConfig));
40
- }));
41
- }
42
- });
43
- exports.syncAuthzEntities = syncAuthzEntities;
44
- const groupByApplication = (entities) => (0, ramda_1.groupBy)(e => { var _a; return (_a = e.applicationName) !== null && _a !== void 0 ? _a : ''; }, entities);
45
- const processBatch = (items, batchSize, processor) => __awaiter(void 0, void 0, void 0, function* () {
46
- for (const batch of (0, ramda_1.splitEvery)(batchSize, items)) {
47
- yield Promise.all(batch.map(processor));
48
- }
49
- });
50
- const synchBatchingPerApplication = (entities, processor) => {
51
- const groupedBy = groupByApplication(entities);
52
- return processBatch(Object.entries(groupedBy), PARALLEL_BATCH_SIZE, (_a) => __awaiter(void 0, [_a], void 0, function* ([applicationName, elements]) {
53
- if (elements) {
54
- return processor(applicationName || pae_core_1.GLOBAL_APPLICATION_NAME, elements);
55
- }
56
- }));
57
- };
58
- //# sourceMappingURL=sync-authz-entities.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-authz-entities.js","sourceRoot":"","sources":["../../../../src/bootstrap/synchronizers/sync-authz-entities.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iCAAkD;AAElD,8DAAqC;AACrC,wEAA+C;AAC/C,kFAAwD;AACxD,iDAAkE;AAElE,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B;;;;;;GAMG;AACI,MAAM,iBAAiB,GAAG,CAC/B,GAAQ,EACR,KAA0C,EAC1C,UAAoD,EACpD,UAA+C,EAC/C,EAAE;IAEF,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,2BAA2B,CAAC,KAAK,EAAE,CAAC,eAAe,EAAE,IAAI,EAAE,EAAE,CACjE,IAAA,oBAAS,EAAC,GAAG,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,EAAE,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,kCAAuB,EAAE,UAAU,CAAC,CACnF,CAAA;IACH,CAAC;IAED,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,2BAA2B,CAAC,UAAU,EAAE,CAAO,eAAe,EAAE,IAAI,EAAE,EAAE;YAC5E,MAAM,IAAA,yBAAc,EAAC,GAAG,EAAE,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;;gBAAC,OAAA,iCAC5C,IAAA,YAAI,EAAC,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,KACtB,eAAe,EAAE,MAAA,EAAE,CAAC,eAAe,mCAAI,kCAAuB,IAC9D,CAAA;aAAA,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,CAAC;YAElC,MAAM,YAAY,CAAC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,EAAE,mBAAmB,EAAE,SAAS,CAAC,EAAE,CAC9D,IAAA,8BAAkB,EAAC,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,UAAU,CAAC,CAChE,CAAC;QACJ,CAAC,CAAA,CAAC,CAAA;IACJ,CAAC;AACH,CAAC,CAAA,CAAC;AAzBW,QAAA,iBAAiB,qBAyB5B;AAQF,MAAM,kBAAkB,GAAG,CAA8B,QAAa,EAAE,EAAE,CACxE,IAAA,eAAO,EAAC,CAAC,CAAC,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,eAAe,mCAAI,EAAE,CAAA,EAAA,EAAE,QAAQ,CAAC,CAAA;AAEjD,MAAM,YAAY,GAAG,CACnB,KAAU,EACV,SAAiB,EACjB,SAAoC,EACrB,EAAE;IACjB,KAAK,MAAM,KAAK,IAAI,IAAA,kBAAU,EAAC,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC,CAAA,CAAC;AAEF,MAAM,2BAA2B,GAAG,CAA8B,QAAa,EAAE,SAAgE,EAAE,EAAE;IACnJ,MAAM,SAAS,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAA;IAC9C,OAAO,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,mBAAmB,EAAE,KAAoC,EAAE,4CAA/B,CAAC,eAAe,EAAE,QAAQ,CAAC;QACpG,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,SAAS,CAAC,eAAe,IAAI,kCAAuB,EAAE,QAAQ,CAAC,CAAA;QACxE,CAAC;IACH,CAAC,CAAA,CAAC,CAAA;AACJ,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- import { PAE } from "@bluealba/pae-core";
2
- import { BootstrapSyncMetadata } from "../domain/bootstrap-sync-metadata.interface";
3
- export declare const syncCatalog: (pae: PAE, catalog: BootstrapSyncMetadata["catalog"], syncConfig: BootstrapSyncMetadata["syncConfig"]) => Promise<void>;
4
- export declare const isOwned: (owner: string, entity: any) => boolean;
5
- //# sourceMappingURL=sync-catalog.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-catalog.d.ts","sourceRoot":"","sources":["../../../../src/bootstrap/synchronizers/sync-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,GAAG,EAEJ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAKpF,eAAO,MAAM,WAAW,GAAU,KAAK,GAAG,EAAE,SAAS,qBAAqB,CAAC,SAAS,CAAC,EAAE,YAAY,qBAAqB,CAAC,YAAY,CAAC,kBAiBrI,CAAA;AAkED,eAAO,MAAM,OAAO,GAAI,OAAO,MAAM,EAAE,QAAQ,GAAG,YAAgC,CAAA"}
@@ -1,95 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.isOwned = exports.syncCatalog = void 0;
16
- const pae_core_1 = require("@bluealba/pae-core");
17
- const entity_synchronizer_1 = require("../entity-synchronizer");
18
- const sync_entities_1 = __importDefault(require("./sync-entities"));
19
- const ramda_1 = require("ramda");
20
- const syncCatalog = (pae, catalog, syncConfig) => __awaiter(void 0, void 0, void 0, function* () {
21
- if (catalog) {
22
- yield fixWrongOwner(pae, catalog, syncConfig.scopedTo);
23
- yield (0, sync_entities_1.default)({
24
- name: 'catalog-modules',
25
- data: setModuleDefaults(catalog !== null && catalog !== void 0 ? catalog : []),
26
- scopedTo: syncConfig.scopedTo,
27
- synchronizer: {
28
- keyComparator: (local, remote) => local.name === remote.name,
29
- fetch: () => pae.getAllModules(),
30
- add: module => pae.createModule(module),
31
- update: module => pae.updateModule(module),
32
- remove: module => pae.deleteModule(module.name),
33
- hasChanged: (0, entity_synchronizer_1.createHasChangedFn)(['version']),
34
- },
35
- });
36
- }
37
- });
38
- exports.syncCatalog = syncCatalog;
39
- /**
40
- * Temporary fix for modules whose createdBy was incorrectly set to 'pae_gateway_service'
41
- * due to the gateway always using its own identity when running bootstrap syncs.
42
- * Affected modules are deleted and recreated so the correct scopedTo owner is applied.
43
- */
44
- const fixWrongOwner = (pae, catalog, scopedTo) => __awaiter(void 0, void 0, void 0, function* () {
45
- const serverModules = yield pae.getAllModules();
46
- const catalogNames = new Set(catalog.map(m => m.name));
47
- const modulesToFix = serverModules.filter(m => catalogNames.has(m.name) && m.createdBy === 'pae_gateway_service');
48
- if (modulesToFix.length === 0) {
49
- console.log('>>> [FIXING OWNER] No modules with wrong owner found, skipping fix.');
50
- return;
51
- }
52
- console.log(`>>> [FIXING OWNER] ${modulesToFix.length} module(s) with wrong owner 'pae_gateway_service', re-creating as '${scopedTo}'`);
53
- yield Promise.all(modulesToFix.map((m) => __awaiter(void 0, void 0, void 0, function* () {
54
- const localModule = catalog.find(c => c.name === m.name);
55
- console.log(`>>> [FIXING OWNER] re-creating module ${m.name}`);
56
- yield pae.deleteModule(m.name);
57
- yield pae.createModule(localModule);
58
- })));
59
- });
60
- /**
61
- * NOTE !
62
- * This is IMPORTANT ! See note in ModuleMetadata type.
63
- * The API objects from the DB will have default values injected so it won't match the JSON objects input of bootstrap
64
- * So we must also here set the defaults in case they have no values ! Otherwise they will always be computed as
65
- * different.
66
- */
67
- const setModuleDefaults = (modules) => {
68
- modules.forEach(m => {
69
- var _a, _b;
70
- if ((0, ramda_1.isNil)(m.service.protocol)) {
71
- m.service.protocol = 'http';
72
- }
73
- if ((0, ramda_1.isNil)(m.service.includeBaseURL)) {
74
- m.service.includeBaseURL = false;
75
- }
76
- if (m.ui && (0, ramda_1.isNil)(m.ui.isPlatformCustomization)) {
77
- m.ui.isPlatformCustomization = false;
78
- }
79
- if (m.ui && (0, ramda_1.isNil)(m.ui.shell)) {
80
- m.ui.shell = false;
81
- }
82
- // Always compute isPublic using the same logic as the API
83
- // This ensures bootstrap modules match API-returned modules
84
- // Note: This computation takes precedence even if isPublic is explicitly set
85
- // (e.g., shell=true always makes isPublic=true regardless of explicit value)
86
- m.isPublic = (0, pae_core_1.computeIsPublic)({
87
- shell: (_a = m.ui) === null || _a === void 0 ? void 0 : _a.shell,
88
- isPlatformCustomization: (_b = m.ui) === null || _b === void 0 ? void 0 : _b.isPlatformCustomization,
89
- }, m.isPublic);
90
- });
91
- return modules;
92
- };
93
- const isOwned = (owner, entity) => (entity === null || entity === void 0 ? void 0 : entity.createdBy) === owner;
94
- exports.isOwned = isOwned;
95
- //# sourceMappingURL=sync-catalog.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-catalog.js","sourceRoot":"","sources":["../../../../src/bootstrap/synchronizers/sync-catalog.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import { EntitySynchronizer } from "../../entity-synchronizer";
2
- /**
3
- * Performs deletes on entities that should be removed.
4
- *
5
- * Logging behavior (controlled by DEBUG_MODE env var):
6
- * - false/unset (default): Shows summary of deletes only
7
- * - true: Shows details of each entity being deleted
8
- */
9
- declare const performDeletes: <TEntity, TData>(name: string, toDELETE: TEntity[], synchronizer: EntitySynchronizer<TEntity, TData>, scopedTo: string) => Promise<void>;
10
- export default performDeletes;
11
- //# sourceMappingURL=performDeletes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"performDeletes.d.ts","sourceRoot":"","sources":["../../../../../src/bootstrap/synchronizers/sync-entities/performDeletes.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,kBAAkB,EAAC,MAAM,2BAA2B,CAAC;AAQ7D;;;;;;GAMG;AACH,QAAA,MAAM,cAAc,GAAU,OAAO,EAAE,KAAK,EAAG,MAAM,MAAM,EAAE,UAAU,OAAO,EAAE,EAAE,cAAc,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,UAAU,MAAM,kBAiBnJ,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1,38 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const ramda_1 = require("ramda");
13
- const sync_catalog_1 = require("../sync-catalog");
14
- const format_diff_1 = require("../../../utils/format-diff");
15
- /**
16
- * Performs deletes on entities that should be removed.
17
- *
18
- * Logging behavior (controlled by DEBUG_MODE env var):
19
- * - false/unset (default): Shows summary of deletes only
20
- * - true: Shows details of each entity being deleted
21
- */
22
- const performDeletes = (name, toDELETE, synchronizer, scopedTo) => __awaiter(void 0, void 0, void 0, function* () {
23
- const entitiesToDelete = toDELETE.filter(entity => (0, sync_catalog_1.isOwned)(scopedTo, entity));
24
- if (!(0, ramda_1.isEmpty)(entitiesToDelete)) {
25
- // Always log summary
26
- console.log((0, format_diff_1.formatOperationSummary)(name, 'DELETE', entitiesToDelete.length));
27
- // Log entity details only in debug mode
28
- if ((0, format_diff_1.shouldLogDiff)()) {
29
- entitiesToDelete.forEach(entity => {
30
- console.log((0, format_diff_1.formatEntityDetail)(entity));
31
- console.log(' Data:', JSON.stringify(entity, null, 2));
32
- });
33
- }
34
- }
35
- yield Promise.all(entitiesToDelete.map(synchronizer.remove));
36
- });
37
- exports.default = performDeletes;
38
- //# sourceMappingURL=performDeletes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"performDeletes.js","sourceRoot":"","sources":["../../../../../src/bootstrap/synchronizers/sync-entities/performDeletes.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,iCAA8B;AAE9B,kDAAwC;AACxC,4DAIoC;AAEpC;;;;;;GAMG;AACH,MAAM,cAAc,GAAG,CAAwB,IAAY,EAAE,QAAmB,EAAE,YAAgD,EAAE,QAAgB,EAAE,EAAE;IACtJ,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAA,sBAAO,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;IAE7E,IAAI,CAAC,IAAA,eAAO,EAAC,gBAAgB,CAAC,EAAE,CAAC;QAC/B,qBAAqB;QACrB,OAAO,CAAC,GAAG,CAAC,IAAA,oCAAsB,EAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;QAE7E,wCAAwC;QACxC,IAAI,IAAA,2BAAa,GAAE,EAAE,CAAC;YACpB,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBAChC,OAAO,CAAC,GAAG,CAAC,IAAA,gCAAkB,EAAC,MAAa,CAAC,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/D,CAAC,CAAA,CAAA;AAED,kBAAe,cAAc,CAAA"}
@@ -1,12 +0,0 @@
1
- import { EntitySynchronizer } from "../../entity-synchronizer";
2
- /**
3
- * Performs updates on entities that have changed.
4
- * Uses the improved hasChanged function by default which automatically ignores audit fields.
5
- *
6
- * Logging behavior (controlled by DEBUG_MODE env var):
7
- * - false/unset (default): Shows summary of updates only
8
- * - true: Shows detailed diffs for each entity being updated
9
- */
10
- declare const performUpdates: <TEntity, TData = TEntity>(name: string, inBOTH: Array<[TData, TEntity]>, synchronizer: EntitySynchronizer<TEntity, TData>, scopedTo: string) => Promise<void>;
11
- export default performUpdates;
12
- //# sourceMappingURL=performUpdates.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"performUpdates.d.ts","sourceRoot":"","sources":["../../../../../src/bootstrap/synchronizers/sync-entities/performUpdates.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AASvF;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc,GAAU,OAAO,EAAE,KAAK,GAAG,OAAO,EAAE,MAAM,MAAM,EAAE,QAAQ,KAAK,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,cAAc,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,UAAU,MAAM,kBAoBxK,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -1,43 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const ramda_1 = require("ramda");
13
- const entity_synchronizer_1 = require("../../entity-synchronizer");
14
- const sync_catalog_1 = require("../sync-catalog");
15
- const format_diff_1 = require("../../../utils/format-diff");
16
- /**
17
- * Performs updates on entities that have changed.
18
- * Uses the improved hasChanged function by default which automatically ignores audit fields.
19
- *
20
- * Logging behavior (controlled by DEBUG_MODE env var):
21
- * - false/unset (default): Shows summary of updates only
22
- * - true: Shows detailed diffs for each entity being updated
23
- */
24
- const performUpdates = (name, inBOTH, synchronizer, scopedTo) => __awaiter(void 0, void 0, void 0, function* () {
25
- var _a;
26
- const hasChanged = (_a = synchronizer.hasChanged) !== null && _a !== void 0 ? _a : entity_synchronizer_1.DEFAULT_HAS_CHANGED_FN;
27
- const toUpdate = inBOTH.filter(([data, entity]) => hasChanged(data, entity));
28
- const entitiesToUpdate = toUpdate.filter(([, entity]) => (0, sync_catalog_1.isOwned)(scopedTo, entity));
29
- if (!(0, ramda_1.isEmpty)(entitiesToUpdate)) {
30
- // Always log summary
31
- console.log((0, format_diff_1.formatOperationSummary)(name, 'UPDATE', entitiesToUpdate.length));
32
- // Log detailed diffs only in debug mode
33
- if ((0, format_diff_1.shouldLogDiff)()) {
34
- entitiesToUpdate.forEach(([data, entity]) => {
35
- const diffOutput = (0, format_diff_1.formatEntityDiff)(entity, data);
36
- console.log((0, format_diff_1.formatEntityDetail)(entity, diffOutput));
37
- });
38
- }
39
- }
40
- yield Promise.all(entitiesToUpdate.map(([data, entity]) => synchronizer.update(data, entity)));
41
- });
42
- exports.default = performUpdates;
43
- //# sourceMappingURL=performUpdates.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"performUpdates.js","sourceRoot":"","sources":["../../../../../src/bootstrap/synchronizers/sync-entities/performUpdates.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,iCAAgC;AAChC,mEAAuF;AACvF,kDAA0C;AAC1C,4DAKoC;AAEpC;;;;;;;GAOG;AACH,MAAM,cAAc,GAAG,CAAiC,IAAY,EAAE,MAA+B,EAAE,YAAgD,EAAE,QAAgB,EAAE,EAAE;;IAC3K,MAAM,UAAU,GAAG,MAAA,YAAY,CAAC,UAAU,mCAAI,4CAAsB,CAAC;IACrE,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAE7E,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,IAAA,sBAAO,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;IAEnF,IAAI,CAAC,IAAA,eAAO,EAAC,gBAAgB,CAAC,EAAE,CAAC;QAC/B,qBAAqB;QACrB,OAAO,CAAC,GAAG,CAAC,IAAA,oCAAsB,EAAC,IAAI,EAAE,QAAQ,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;QAE7E,wCAAwC;QACxC,IAAI,IAAA,2BAAa,GAAE,EAAE,CAAC;YACpB,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE;gBAC1C,MAAM,UAAU,GAAG,IAAA,8BAAgB,EAAC,MAAa,EAAE,IAAW,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,IAAA,gCAAkB,EAAC,MAAa,EAAE,UAAU,CAAC,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;AACjG,CAAC,CAAA,CAAA;AAED,kBAAe,cAAc,CAAA"}
@@ -1,19 +0,0 @@
1
- import { SyncEntityOptions } from './sync-entity-options';
2
- /**
3
- * Synchronizes a list of entities from the data definition
4
- * against the current state in the Synchronizer.
5
- * This strategy object knows how to
6
- * - fetch all the current entities
7
- * - transform entity
8
- * - add/delete/update entity
9
- *
10
- * This function does all the work to compute the difference and dispatch the appropriated method
11
- * calls in the synchronizer
12
- *
13
- * Logging behavior (controlled by DEBUG_MODE env var):
14
- * - false/unset (default): Shows operation summaries only
15
- * - true: Shows detailed information for each entity
16
- */
17
- declare const syncEntities: <TEntity, TData>(opts: SyncEntityOptions<TEntity, TData>) => Promise<void>;
18
- export default syncEntities;
19
- //# sourceMappingURL=sync-entities.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-entities.d.ts","sourceRoot":"","sources":["../../../../src/bootstrap/synchronizers/sync-entities.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAS1D;;;;;;;;;;;;;;GAcG;AACH,QAAA,MAAM,YAAY,GAAU,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,kBAiClF,CAAC;AAEF,eAAe,YAAY,CAAC"}