@betterportal/config-manager 10.1.42 → 10.1.44

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 (117) hide show
  1. package/lib/.bsb/clients/service-betterportal-config-manager.d.ts +1 -1
  2. package/lib/.bsb/clients/service-betterportal-config-manager.js +1 -1
  3. package/lib/bp-contracts/org.betterportal.config-manager.json +259 -55
  4. package/lib/plugins/service-betterportal-config-manager/.bp-generated/registry.d.ts.map +1 -1
  5. package/lib/plugins/service-betterportal-config-manager/.bp-generated/registry.js +42 -41
  6. package/lib/plugins/service-betterportal-config-manager/.bp-generated/registry.js.map +1 -1
  7. package/lib/plugins/service-betterportal-config-manager/adminApi.d.ts.map +1 -1
  8. package/lib/plugins/service-betterportal-config-manager/adminApi.js +75 -3
  9. package/lib/plugins/service-betterportal-config-manager/adminApi.js.map +1 -1
  10. package/lib/plugins/service-betterportal-config-manager/bootstrapEndpoint.js +1 -1
  11. package/lib/plugins/service-betterportal-config-manager/bootstrapEndpoint.js.map +1 -1
  12. package/lib/plugins/service-betterportal-config-manager/bootstrapWizardHtml.js +1 -1
  13. package/lib/plugins/service-betterportal-config-manager/bp-routes/{tenants/_theme.bootstrap1 → auth/_renderer.bootstrap5}/GET.d.ts.map +1 -1
  14. package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/_renderer.bootstrap5/GET.js.map +1 -0
  15. package/lib/plugins/service-betterportal-config-manager/bp-routes/config/_renderer.bootstrap5/GET.d.ts.map +1 -0
  16. package/lib/plugins/service-betterportal-config-manager/bp-routes/config/_renderer.bootstrap5/GET.js.map +1 -0
  17. package/lib/plugins/service-betterportal-config-manager/bp-routes/config/_renderer.embedded/GET.d.ts.map +1 -0
  18. package/lib/plugins/service-betterportal-config-manager/bp-routes/config/_renderer.embedded/GET.js.map +1 -0
  19. package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/_renderer.bootstrap5/GET.d.ts.map +1 -0
  20. package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/_renderer.bootstrap5/GET.js.map +1 -0
  21. package/lib/plugins/service-betterportal-config-manager/bp-routes/{preview/_theme.bootstrap1 → menu/_renderer.bootstrap5}/GET.d.ts.map +1 -1
  22. package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/_renderer.bootstrap5/GET.js.map +1 -0
  23. package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/_renderer.bootstrap5/GET.d.ts.map +1 -0
  24. package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/_renderer.bootstrap5/GET.js.map +1 -0
  25. package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.d.ts +2 -2
  26. package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.js +1 -1
  27. package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/route.impl.js.map +1 -1
  28. package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.d.ts.map +1 -0
  29. package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.js +2 -2
  30. package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/_renderer.bootstrap5/GET.js.map +1 -0
  31. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/_renderer.bootstrap5/GET.d.ts.map +1 -0
  32. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.js +14 -4
  33. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/_renderer.bootstrap5/GET.js.map +1 -0
  34. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.d.ts +50 -2
  35. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.d.ts.map +1 -1
  36. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.js +30 -4
  37. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.js.map +1 -1
  38. package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/_renderer.bootstrap5/GET.d.ts.map +1 -0
  39. package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/_renderer.bootstrap5/GET.js.map +1 -0
  40. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/DELETE.d.ts.map +1 -1
  41. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/DELETE.js.map +1 -1
  42. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.d.ts.map +1 -0
  43. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.js +72 -0
  44. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.js.map +1 -0
  45. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/POST.d.ts.map +1 -1
  46. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/POST.js.map +1 -1
  47. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/PUT.d.ts.map +1 -1
  48. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/PUT.js.map +1 -1
  49. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.d.ts +20 -0
  50. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.d.ts.map +1 -1
  51. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.js +50 -32
  52. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.js.map +1 -1
  53. package/lib/plugins/service-betterportal-config-manager/fragmentsEditor.d.ts +1 -1
  54. package/lib/plugins/service-betterportal-config-manager/fragmentsEditor.d.ts.map +1 -1
  55. package/lib/plugins/service-betterportal-config-manager/fragmentsEditor.js +207 -341
  56. package/lib/plugins/service-betterportal-config-manager/fragmentsEditor.js.map +1 -1
  57. package/lib/plugins/service-betterportal-config-manager/index.d.ts +0 -2
  58. package/lib/plugins/service-betterportal-config-manager/index.d.ts.map +1 -1
  59. package/lib/plugins/service-betterportal-config-manager/index.js +12 -6
  60. package/lib/plugins/service-betterportal-config-manager/index.js.map +1 -1
  61. package/lib/plugins/service-betterportal-config-manager/m2mConnections.d.ts +45 -0
  62. package/lib/plugins/service-betterportal-config-manager/m2mConnections.d.ts.map +1 -0
  63. package/lib/plugins/service-betterportal-config-manager/m2mConnections.js +228 -0
  64. package/lib/plugins/service-betterportal-config-manager/m2mConnections.js.map +1 -0
  65. package/lib/plugins/service-betterportal-config-manager/storage/core.d.ts +0 -1
  66. package/lib/plugins/service-betterportal-config-manager/storage/core.d.ts.map +1 -1
  67. package/lib/plugins/service-betterportal-config-manager/storage/core.js +40 -33
  68. package/lib/plugins/service-betterportal-config-manager/storage/core.js.map +1 -1
  69. package/lib/plugins/service-betterportal-config-manager/syncApi.d.ts +11 -4
  70. package/lib/plugins/service-betterportal-config-manager/syncApi.d.ts.map +1 -1
  71. package/lib/plugins/service-betterportal-config-manager/syncApi.js +40 -10
  72. package/lib/plugins/service-betterportal-config-manager/syncApi.js.map +1 -1
  73. package/lib/schemas/service-betterportal-config-manager.json +1 -8
  74. package/lib/schemas/service-betterportal-config-manager.plugin.json +1 -8
  75. package/package.json +5 -5
  76. package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/_theme.bootstrap1/GET.d.ts.map +0 -1
  77. package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/_theme.bootstrap1/GET.js.map +0 -1
  78. package/lib/plugins/service-betterportal-config-manager/bp-routes/config/_theme.bootstrap1/GET.d.ts.map +0 -1
  79. package/lib/plugins/service-betterportal-config-manager/bp-routes/config/_theme.bootstrap1/GET.js.map +0 -1
  80. package/lib/plugins/service-betterportal-config-manager/bp-routes/config/_theme.embedded/GET.d.ts.map +0 -1
  81. package/lib/plugins/service-betterportal-config-manager/bp-routes/config/_theme.embedded/GET.js.map +0 -1
  82. package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/_theme.bootstrap1/GET.d.ts.map +0 -1
  83. package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/_theme.bootstrap1/GET.js.map +0 -1
  84. package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/_theme.bootstrap1/GET.d.ts.map +0 -1
  85. package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/_theme.bootstrap1/GET.js.map +0 -1
  86. package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/_theme.bootstrap1/GET.js.map +0 -1
  87. package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/_theme.bootstrap1/GET.d.ts.map +0 -1
  88. package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/_theme.bootstrap1/GET.js.map +0 -1
  89. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/_theme.bootstrap1/GET.d.ts.map +0 -1
  90. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/_theme.bootstrap1/GET.js.map +0 -1
  91. package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/_theme.bootstrap1/GET.d.ts.map +0 -1
  92. package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/_theme.bootstrap1/GET.js.map +0 -1
  93. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/_theme.bootstrap1/GET.js +0 -72
  94. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/_theme.bootstrap1/GET.js.map +0 -1
  95. /package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  96. /package/lib/plugins/service-betterportal-config-manager/bp-routes/auth/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.js +0 -0
  97. /package/lib/plugins/service-betterportal-config-manager/bp-routes/config/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  98. /package/lib/plugins/service-betterportal-config-manager/bp-routes/config/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.js +0 -0
  99. /package/lib/plugins/service-betterportal-config-manager/bp-routes/config/{_theme.embedded → _renderer.embedded}/GET.d.ts +0 -0
  100. /package/lib/plugins/service-betterportal-config-manager/bp-routes/config/{_theme.embedded → _renderer.embedded}/GET.js +0 -0
  101. /package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  102. /package/lib/plugins/service-betterportal-config-manager/bp-routes/fragments/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.js +0 -0
  103. /package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  104. /package/lib/plugins/service-betterportal-config-manager/bp-routes/menu/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.js +0 -0
  105. /package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  106. /package/lib/plugins/service-betterportal-config-manager/bp-routes/preview/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.js +0 -0
  107. /package/lib/plugins/service-betterportal-config-manager/bp-routes/routes/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  108. /package/lib/plugins/service-betterportal-config-manager/bp-routes/services/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  109. /package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  110. /package/lib/plugins/service-betterportal-config-manager/bp-routes/settings/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.js +0 -0
  111. /package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/DELETE.d.ts +0 -0
  112. /package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/DELETE.js +0 -0
  113. /package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/GET.d.ts +0 -0
  114. /package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/POST.d.ts +0 -0
  115. /package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/POST.js +0 -0
  116. /package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/PUT.d.ts +0 -0
  117. /package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/{_theme.bootstrap1 → _renderer.bootstrap5}/PUT.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"m2mConnections.js","sourceRoot":"","sources":["../../../src/plugins/service-betterportal-config-manager/m2mConnections.ts"],"names":[],"mappings":"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"}
@@ -43,7 +43,6 @@ export declare abstract class BaseStorage implements PlatformConfigStore {
43
43
  private scopedConfigManagement;
44
44
  private scopeTenant;
45
45
  private managementOrigins;
46
- private shellThemeId;
47
46
  private scopeApp;
48
47
  }
49
48
  //# sourceMappingURL=core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-config-manager/storage/core.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EAEnB,mBAAmB,EAGpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EACV,kBAAkB,EAElB,yBAAyB,EACzB,eAAe,EACf,eAAe,EACf,uBAAuB,EAExB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,CAAC;AAEjD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,cAAc,GACtB,kBAAkB,GAClB,sBAAsB,CAAC;AAe3B,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAOvD;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,wBAAgB,oCAAoC,CAClD,MAAM,EAAE,kBAAkB,EAC1B,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,GAAG,UAAU,CAAC,GAC5C,GAAG,CAAC,MAAM,CAAC,CAiBb;AAED,8BAAsB,WAAY,YAAW,mBAAmB;IAC9D,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,CAAa;IAEjD,QAAQ,CAAC,UAAU,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAClD,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAE9D,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,kBAAkB;IAqB5E,OAAO,CAAC,sBAAsB;IAqB9B,SAAS,CAAC,wBAAwB,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI;IAmM9D,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAC5C,KAAK,EAAE,QAAQ,GAAG,UAAU,CAAC;QAC7B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;QAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,yBAAyB,GAAG,eAAe,GAAG,uBAAuB,CAAC;KAChF,GAAG,IAAI,CAAC;IA8BH,wBAAwB,CAC5B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,QAAQ,GAAG,UAAU,EAC5B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;IAgBzD,eAAe,CACnB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,QAAQ,GAAG,UAAU,EAC5B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,mBAAmB,CAAC;IAgC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAK1C,UAAU,IAAI,IAAI;IAIlB,SAAS,CAAC,eAAe,IAAI,IAAI;IAMjC,OAAO,CAAC,qBAAqB;IA6C7B,OAAO,CAAC,uBAAuB;IAwF/B,OAAO,CAAC,aAAa;IAgDrB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,sBAAsB;IAwB9B,OAAO,CAAC,WAAW;IAwCnB,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,QAAQ;CA4BjB"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-config-manager/storage/core.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { randomBytes, createHash } from "node:crypto";
2
+ import { resolveAppShell } from "@betterportal/framework";
2
3
  const OfficialPluginIdMigrations = {
3
4
  "service.betterportal.config-manager": "org.betterportal.config-manager",
4
5
  "service.betterportal.auth.default": "org.betterportal.auth.default",
@@ -174,6 +175,13 @@ export class BaseStorage {
174
175
  ]);
175
176
  };
176
177
  seen("m2m binding", config.m2m.bindings.map((binding) => binding.id));
178
+ const activeConnectionKeys = new Set();
179
+ for (const binding of config.m2m.bindings.filter((candidate) => candidate.enabled)) {
180
+ const key = [binding.tenantId, binding.appId ?? "", binding.sourceServiceId, binding.requestId, binding.mode].join("\n");
181
+ if (activeConnectionKeys.has(key))
182
+ errors.push(`active m2m binding is duplicated for request ${binding.requestId}`);
183
+ activeConnectionKeys.add(key);
184
+ }
177
185
  for (const binding of config.m2m.bindings) {
178
186
  const tenant = tenantsById.get(binding.tenantId);
179
187
  if (!tenant || !tenant.active) {
@@ -199,6 +207,12 @@ export class BaseStorage {
199
207
  }
200
208
  const bindingsById = new Map(config.m2m.bindings.map((binding) => [binding.id, binding]));
201
209
  seen("m2m grant", config.m2m.grants.map((grant) => grant.id));
210
+ const activeGrantBindings = new Set();
211
+ for (const grant of config.m2m.grants.filter((candidate) => candidate.enabled)) {
212
+ if (activeGrantBindings.has(grant.bindingId))
213
+ errors.push(`m2m binding ${grant.bindingId} has multiple active grants`);
214
+ activeGrantBindings.add(grant.bindingId);
215
+ }
202
216
  for (const grant of config.m2m.grants) {
203
217
  const binding = bindingsById.get(grant.bindingId);
204
218
  if (!binding) {
@@ -273,7 +287,7 @@ export class BaseStorage {
273
287
  const config = await this.loadConfig();
274
288
  for (const ps of config.platformServices) {
275
289
  if (ps.enabled && ps.apiKeyHash === hash) {
276
- // Return the UUIDv7 instance id - routes/fragments/app.themeId all key off it.
290
+ // Return the UUIDv7 instance id; app references always use concrete instances.
277
291
  // (ps.serviceId is the pluginId reference; not used for routing.)
278
292
  return { scope: "platform", serviceId: ps.id, service: ps };
279
293
  }
@@ -312,19 +326,19 @@ export class BaseStorage {
312
326
  }
313
327
  async getScopedConfig(serviceId, scope, tenantId) {
314
328
  const config = await this.loadConfig();
315
- // Shell/theme services need an unfiltered app view to resolve route URLs and
329
+ // Shell services need an unfiltered app view to resolve route URLs and
316
330
  // render full nav. Detect by app.shell.serviceId pointing at the caller.
317
331
  const sharedActivationIdsForCaller = new Set(config.sharedServiceActivations
318
332
  .filter((activation) => activation.enabled && activation.sharedServiceId === serviceId)
319
333
  .map((activation) => activation.id));
320
- const isThemeCaller = config.apps.some((app) => app.shell?.serviceId === serviceId
334
+ const isShellCaller = config.apps.some((app) => app.shell?.serviceId === serviceId
321
335
  || (app.shell?.serviceId ? sharedActivationIdsForCaller.has(app.shell.serviceId) : false));
322
336
  const isAuthCaller = config.apps.some((app) => app.auth?.serviceId === serviceId
323
337
  || (app.auth?.serviceId ? sharedActivationIdsForCaller.has(app.auth.serviceId) : false));
324
338
  if (scope === "tenant" && tenantId) {
325
- return this.withM2MPolicy(config, serviceId, this.scopeForTenantService(config, serviceId, tenantId, isThemeCaller, isAuthCaller));
339
+ return this.withM2MPolicy(config, serviceId, this.scopeForTenantService(config, serviceId, tenantId, isShellCaller, isAuthCaller));
326
340
  }
327
- return this.withM2MPolicy(config, serviceId, this.scopeForPlatformService(config, serviceId, isThemeCaller, isAuthCaller));
341
+ return this.withM2MPolicy(config, serviceId, this.scopeForPlatformService(config, serviceId, isShellCaller, isAuthCaller));
328
342
  }
329
343
  onChange(listener) {
330
344
  this.listeners.add(listener);
@@ -341,7 +355,7 @@ export class BaseStorage {
341
355
  catch { /* ignore listener failures */ }
342
356
  }
343
357
  }
344
- scopeForTenantService(config, serviceId, tenantId, isThemeCaller, isAuthCaller) {
358
+ scopeForTenantService(config, serviceId, tenantId, isShellCaller, isAuthCaller) {
345
359
  const tenant = config.tenants.find((t) => t.active && t.id === tenantId);
346
360
  const managementOrigins = this.managementOrigins(config);
347
361
  if (!tenant)
@@ -350,7 +364,7 @@ export class BaseStorage {
350
364
  const sharedActivation = config.sharedServiceActivations.find((activation) => activation.enabled
351
365
  && activation.tenantId === tenantId
352
366
  && (activation.id === serviceId || activation.sharedServiceId === serviceId));
353
- if (!service && !sharedActivation && !isThemeCaller)
367
+ if (!service && !sharedActivation && !isShellCaller)
354
368
  return { configManagement: this.scopedConfigManagement(config), managementOrigins, tenants: [], apps: [] };
355
369
  const serviceKeys = service
356
370
  ? [service.id, service.serviceId].filter((value) => !!value)
@@ -361,9 +375,9 @@ export class BaseStorage {
361
375
  const apps = config.apps
362
376
  .filter((a) => a.tenantId === tenantId)
363
377
  // Shell callers only see apps that selected this service instance as shell.
364
- .filter((a) => isThemeCaller ? a.shell?.serviceId === serviceId : true)
365
- .map((a) => this.scopeApp(a, serviceKeys, isThemeCaller, isAuthCaller))
366
- .filter((a) => isThemeCaller || a.routes.length > 0 || Object.keys(a.fragments).length > 0);
378
+ .filter((a) => isShellCaller ? a.shell?.serviceId === serviceId : true)
379
+ .map((a) => this.scopeApp(config, a, serviceKeys, isShellCaller, isAuthCaller))
380
+ .filter((a) => isShellCaller || a.routes.length > 0 || Object.keys(a.fragments).length > 0);
367
381
  return {
368
382
  configManagement: this.scopedConfigManagement(config),
369
383
  managementOrigins,
@@ -372,13 +386,13 @@ export class BaseStorage {
372
386
  apps
373
387
  };
374
388
  }
375
- scopeForPlatformService(config, serviceId, isThemeCaller, isAuthCaller) {
389
+ scopeForPlatformService(config, serviceId, isShellCaller, isAuthCaller) {
376
390
  const tenants = [];
377
391
  const apps = [];
378
392
  for (const tenant of config.tenants) {
379
393
  if (!tenant.active)
380
394
  continue;
381
- if (isThemeCaller) {
395
+ if (isShellCaller) {
382
396
  // Platform shell services serve any tenant whose apps reference this service.
383
397
  const sharedShellActivationIds = new Set(config.sharedServiceActivations
384
398
  .filter((activation) => activation.enabled && activation.tenantId === tenant.id && activation.sharedServiceId === serviceId)
@@ -387,7 +401,7 @@ export class BaseStorage {
387
401
  .filter((a) => a.tenantId === tenant.id
388
402
  && (a.shell?.serviceId === serviceId
389
403
  || (a.shell?.serviceId ? sharedShellActivationIds.has(a.shell.serviceId) : false)))
390
- .map((a) => this.scopeApp(a, [], true, isAuthCaller));
404
+ .map((a) => this.scopeApp(config, a, [], true, isAuthCaller));
391
405
  if (tenantApps.length === 0)
392
406
  continue;
393
407
  tenants.push(this.scopeTenant(tenant, config));
@@ -409,9 +423,9 @@ export class BaseStorage {
409
423
  const tenantApps = config.apps
410
424
  .filter((a) => a.tenantId === tenant.id)
411
425
  .filter((a) => activations.some((activation) => !activation.appId || activation.appId === a.id))
412
- .filter((a) => isThemeCaller ? (a.shell?.serviceId ? activationIds.has(a.shell.serviceId) : false) : true)
413
- .map((a) => this.scopeApp(a, [sharedService.id, ...activationIds], isThemeCaller, isAuthCaller))
414
- .filter((a) => isThemeCaller || a.routes.length > 0 || Object.keys(a.fragments).length > 0);
426
+ .filter((a) => isShellCaller ? (a.shell?.serviceId ? activationIds.has(a.shell.serviceId) : false) : true)
427
+ .map((a) => this.scopeApp(config, a, [sharedService.id, ...activationIds], isShellCaller, isAuthCaller))
428
+ .filter((a) => isShellCaller || a.routes.length > 0 || Object.keys(a.fragments).length > 0);
415
429
  apps.push(...tenantApps);
416
430
  continue;
417
431
  }
@@ -423,7 +437,7 @@ export class BaseStorage {
423
437
  tenants.push(this.scopeTenant(tenant, config));
424
438
  const tenantApps = config.apps
425
439
  .filter((a) => a.tenantId === tenant.id)
426
- .map((a) => this.scopeApp(a, serviceKeys, false, isAuthCaller))
440
+ .map((a) => this.scopeApp(config, a, serviceKeys, false, isAuthCaller))
427
441
  .filter((a) => a.routes.length > 0 || Object.keys(a.fragments).length > 0);
428
442
  apps.push(...tenantApps);
429
443
  }
@@ -525,11 +539,12 @@ export class BaseStorage {
525
539
  context: {
526
540
  tenant: this.scopeTenant(tenant, config),
527
541
  app: {
528
- ...this.scopeApp(app, [], false, false),
542
+ ...this.scopeApp(config, app, [], false, false),
529
543
  routes: [],
530
544
  menu: [],
531
545
  slots: [],
532
- fragments: {}
546
+ fragments: {},
547
+ shellFragments: {}
533
548
  }
534
549
  }
535
550
  } : {})
@@ -592,15 +607,7 @@ export class BaseStorage {
592
607
  ]);
593
608
  return [...new Set(origins)];
594
609
  }
595
- shellThemeId(app) {
596
- const legacyThemeId = app.themeId;
597
- if (legacyThemeId)
598
- return legacyThemeId;
599
- // Convention: org.betterportal.theme.bootstrap1 -> bootstrap1.
600
- // Renderer ids stay internal to codegen; app config only stores shell service.
601
- return "bootstrap1";
602
- }
603
- scopeApp(app, serviceKeys, isThemeCaller, isAuthCaller) {
610
+ scopeApp(config, app, serviceKeys, isShellCaller, isAuthCaller) {
604
611
  const serviceKeySet = new Set(serviceKeys);
605
612
  return {
606
613
  id: app.id,
@@ -610,19 +617,19 @@ export class BaseStorage {
610
617
  hostnames: app.hostnames,
611
618
  originOverrides: app.originOverrides,
612
619
  refererOverrides: app.refererOverrides,
613
- themeId: this.shellThemeId(app),
614
- shell: app.shell,
620
+ shell: resolveAppShell(config, app),
615
621
  themeConfig: app.themeConfig,
616
622
  defaultRoute: app.defaultRoute,
617
623
  // Themes and authoritative auth services need the full route allowlist.
618
- routes: isThemeCaller || isAuthCaller ? app.routes : app.routes.filter((r) => serviceKeySet.has(r.serviceId)),
624
+ routes: isShellCaller || isAuthCaller ? app.routes : app.routes.filter((r) => serviceKeySet.has(r.serviceId)),
619
625
  menu: app.menu,
620
- slots: isThemeCaller ? app.slots : app.slots.filter((s) => serviceKeySet.has(s.serviceId)),
621
- fragments: isThemeCaller
626
+ slots: isShellCaller ? app.slots : app.slots.filter((s) => serviceKeySet.has(s.serviceId)),
627
+ fragments: isShellCaller
622
628
  ? app.fragments
623
629
  : Object.fromEntries(Object.entries(app.fragments)
624
630
  .map(([loc, frags]) => [loc, frags.filter((f) => serviceKeySet.has(f.serviceId))])
625
631
  .filter(([, frags]) => frags.length > 0)),
632
+ shellFragments: isShellCaller ? app.shellFragments : {},
626
633
  auth: app.auth
627
634
  };
628
635
  }
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-config-manager/storage/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-config-manager/storage/core.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,16 @@
1
- import type { ConfigSchemaDescriptor, AuthProviderRuntimeMetadata, BetterPortalH3App, BetterPortalRegistry, PlatformConfigStore, JsonValue, BetterPortalRouteChrome, BetterPortalConfig, DeveloperResource, WebhookEventDescriptor } from "@betterportal/framework";
1
+ import type { ConfigSchemaDescriptor, AuthProviderRuntimeMetadata, BetterPortalH3App, BetterPortalRegistry, PlatformConfigStore, JsonValue, BetterPortalRouteChrome, BetterPortalConfig, DeveloperResource, ShellManifest, WebhookEventDescriptor } from "@betterportal/framework";
2
2
  /**
3
- * In-memory manifest cache per service. Populated by POST sync/poll bodies.
3
+ * Hot manifest cache per service. The same data is persisted in platform config
4
+ * so app shell resolution remains deterministic after a control-plane restart.
4
5
  * Used to inject resolvedServicePath into app.routes before delivery, and to
5
6
  * surface per-view permission requirements to the admin role editor.
6
7
  *
7
- * Lifetime: process. Lost on CP restart; services will re-push on next poll.
8
8
  */
9
9
  export interface CachedManifestView {
10
10
  viewId: string;
11
11
  path: string;
12
12
  methods: string[];
13
+ renderers: string[];
13
14
  role?: string;
14
15
  chrome?: BetterPortalRouteChrome;
15
16
  dependencies: string[];
@@ -19,7 +20,7 @@ export interface CachedManifestView {
19
20
  viewId: string;
20
21
  permissions: string[];
21
22
  }>;
22
- /** True if any theme renderer exists (page/fragment/component). API-only views = false. */
23
+ /** True if any UI renderer exists (page/fragment/component). API-only views = false. */
23
24
  renderable: boolean;
24
25
  /** JSON schema documents for request/query/header/response/multipart contracts. */
25
26
  schemas?: Record<string, JsonValue>;
@@ -29,6 +30,10 @@ export interface CachedManifestView {
29
30
  apiContracts: JsonValue[];
30
31
  /** Example payloads advertised by the service route. */
31
32
  demoScenarios: JsonValue[];
33
+ fragments: Array<{
34
+ fragmentId: string;
35
+ targetPath: string;
36
+ }>;
32
37
  }
33
38
  export interface CachedManifest {
34
39
  serviceId: string;
@@ -39,6 +44,7 @@ export interface CachedManifest {
39
44
  apiContracts: JsonValue[];
40
45
  m2mRequests: JsonValue[];
41
46
  developerResources: DeveloperResource[];
47
+ shell?: ShellManifest;
42
48
  viewIndex: Record<string, CachedManifestView>;
43
49
  configSchemas: ConfigSchemaDescriptor[];
44
50
  webhooks: WebhookEventDescriptor[];
@@ -57,6 +63,7 @@ export declare function reconcileServiceRegistry(store: PlatformConfigStore, ser
57
63
  apiContracts?: JsonValue[];
58
64
  m2mRequests?: JsonValue[];
59
65
  developerResources?: DeveloperResource[];
66
+ shell?: ShellManifest;
60
67
  }): Promise<CachedManifest>;
61
68
  export declare function registerSyncEndpoint(app: BetterPortalH3App, store: PlatformConfigStore): void;
62
69
  //# sourceMappingURL=syncApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"syncApi.d.ts","sourceRoot":"","sources":["../../../src/plugins/service-betterportal-config-manager/syncApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,iBAAiB,EAEjB,oBAAoB,EACpB,mBAAmB,EACnB,SAAS,EAET,uBAAuB,EAEvB,kBAAkB,EAClB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AAiBjC;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,8EAA8E;IAC9E,WAAW,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACjF,2FAA2F;IAC3F,UAAU,EAAE,OAAO,CAAC;IACpB,mFAAmF;IACnF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpC,+EAA+E;IAC/E,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,8CAA8C;IAC9C,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,wDAAwD;IACxD,aAAa,EAAE,SAAS,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,2BAA2B,CAAC;IAC3C,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,WAAW,EAAE,SAAS,EAAE,CAAC;IACzB,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC9C,aAAa,EAAE,sBAAsB,EAAE,CAAC;IACxC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;CACnB;AAID,iDAAiD;AACjD,wBAAgB,gBAAgB,IAAI,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAEtE;AAED,4FAA4F;AAC5F,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,kBAAkB,EAC1B,iBAAiB,EAAE,MAAM,EACzB,KAAK,GAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAiB,GACzD,cAAc,GAAG,SAAS,CAiB5B;AA2FD,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,mBAAmB,EAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,GAAE;IACP,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACzC,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpC,YAAY,CAAC,EAAE,SAAS,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,SAAS,EAAE,CAAC;IAC1B,kBAAkB,CAAC,EAAE,iBAAiB,EAAE,CAAC;CACrC,GACL,OAAO,CAAC,cAAc,CAAC,CAqCzB;AAoCD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,mBAAmB,GAAG,IAAI,CAiM7F"}
1
+ {"version":3,"file":"syncApi.d.ts","sourceRoot":"","sources":["../../../src/plugins/service-betterportal-config-manager/syncApi.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { createEventStream } from "h3";
2
- import { DeveloperResourceSchema, deriveKeyId, eventObservability, jsonResponse, uuidv7 } from "@betterportal/framework";
2
+ import { DeveloperResourceSchema, ShellManifestSchema, deriveKeyId, eventObservability, jsonResponse, uuidv7 } from "@betterportal/framework";
3
3
  import { createPublicKey } from "node:crypto";
4
4
  import { apiRoutePath, isApiRoute } from "./routeMounts.js";
5
5
  const SYNC_PATH = "/.well-known/bp/sync";
@@ -20,22 +20,31 @@ export function getManifestCache() {
20
20
  }
21
21
  /** Resolve manifests for service instances, including shared-service activation aliases. */
22
22
  export function getCachedManifestForService(config, serviceInstanceId, cache = manifestCache) {
23
- const direct = cache.get(serviceInstanceId);
23
+ const read = (key) => {
24
+ const hot = cache.get(key);
25
+ if (hot)
26
+ return hot;
27
+ const stored = config.manifestCache?.find((entry) => entry.serviceId === key);
28
+ return stored
29
+ ? normalizeManifest(stored)
30
+ : undefined;
31
+ };
32
+ const direct = read(serviceInstanceId);
24
33
  if (direct)
25
34
  return direct;
26
35
  const activation = config.sharedServiceActivations.find((candidate) => candidate.id === serviceInstanceId);
27
36
  if (activation) {
28
37
  const shared = config.sharedServiceCatalog.find((candidate) => candidate.id === activation.sharedServiceId);
29
- return cache.get(activation.sharedServiceId)
30
- ?? (shared?.serviceId ? cache.get(shared.serviceId) : undefined);
38
+ return read(activation.sharedServiceId)
39
+ ?? (shared?.serviceId ? read(shared.serviceId) : undefined);
31
40
  }
32
41
  for (const tenant of config.tenants) {
33
42
  const service = tenant.services.find((candidate) => candidate.id === serviceInstanceId);
34
43
  if (service?.serviceId)
35
- return cache.get(service.serviceId);
44
+ return read(service.serviceId);
36
45
  }
37
46
  const platform = config.platformServices.find((candidate) => candidate.id === serviceInstanceId);
38
- return platform?.serviceId ? cache.get(platform.serviceId) : undefined;
47
+ return platform?.serviceId ? read(platform.serviceId) : undefined;
39
48
  }
40
49
  function cacheManifest(serviceId, manifest) {
41
50
  manifestCache.set(serviceId, manifest);
@@ -66,6 +75,7 @@ function normalizeManifest(input) {
66
75
  viewId: v.viewId,
67
76
  path: v.path,
68
77
  methods: v.methods ?? [],
78
+ renderers: Array.isArray(v.renderers) ? v.renderers.filter((value) => typeof value === "string" && value.length > 0) : [],
69
79
  ...(v.role ? { role: v.role } : {}),
70
80
  ...(v.chrome ? { chrome: v.chrome } : {}),
71
81
  dependencies: Array.isArray(v.dependencies) ? v.dependencies.filter((value) => typeof value === "string" && value.length > 0) : [],
@@ -74,7 +84,8 @@ function normalizeManifest(input) {
74
84
  ...(v.schemas && typeof v.schemas === "object" ? { schemas: v.schemas } : {}),
75
85
  ...(v.raw === true ? { raw: true } : {}),
76
86
  apiContracts: Array.isArray(v.apiContracts) ? v.apiContracts : [],
77
- demoScenarios: Array.isArray(v.demoScenarios) ? v.demoScenarios : []
87
+ demoScenarios: Array.isArray(v.demoScenarios) ? v.demoScenarios : [],
88
+ fragments: Array.isArray(v.fragments) ? v.fragments.filter((fragment) => typeof fragment?.fragmentId === "string" && typeof fragment?.targetPath === "string") : []
78
89
  };
79
90
  }
80
91
  return {
@@ -95,6 +106,7 @@ function normalizeManifest(input) {
95
106
  }
96
107
  })
97
108
  : [],
109
+ ...(input.shell ? { shell: ShellManifestSchema.parse(input.shell) } : {}),
98
110
  viewIndex: normalizedViews,
99
111
  configSchemas: Array.isArray(input.configSchemas) ? input.configSchemas : [],
100
112
  webhooks: Array.isArray(input.webhooks) ? input.webhooks : [],
@@ -106,11 +118,12 @@ export async function reconcileServiceRegistry(store, serviceId, registry, optio
106
118
  for (const route of registry.routes) {
107
119
  const renderable = route.raw === true
108
120
  ? false
109
- : Object.values(route.themeRenderers).some((set) => set.pages.length > 0 || set.components.length > 0 || set.fragments.length > 0 || Boolean(set.stream));
121
+ : Object.values(route.renderers).some((set) => set.pages.length > 0 || set.components.length > 0 || set.fragments.length > 0 || Boolean(set.stream));
110
122
  viewIndex[route.viewId] = {
111
123
  viewId: route.viewId,
112
124
  path: route.path,
113
125
  methods: [...route.methods],
126
+ renderers: Object.keys(route.renderers),
114
127
  ...(route.role ? { role: route.role } : {}),
115
128
  ...(route.chrome ? { chrome: route.chrome } : {}),
116
129
  dependencies: [...(route.dependencies ?? [])],
@@ -128,7 +141,13 @@ export async function reconcileServiceRegistry(store, serviceId, registry, optio
128
141
  ...(scenario.description ? { description: scenario.description } : {}),
129
142
  ...(scenario.match ? { match: scenario.match } : {}),
130
143
  response: scenario.response
131
- }))
144
+ })),
145
+ fragments: [...new Map(Object.values(route.renderers).flatMap((theme) => theme.fragments.flatMap((fragment) => {
146
+ const fragmentId = fragment.fragmentLocation && fragment.fragmentId
147
+ ? `${fragment.fragmentLocation}.${fragment.fragmentId}`
148
+ : fragment.rendererId;
149
+ return [[fragmentId, { fragmentId, targetPath: route.path }]];
150
+ }))).values()]
132
151
  };
133
152
  }
134
153
  const manifest = normalizeManifest({ serviceId, viewIndex, ...options });
@@ -289,6 +308,7 @@ export function registerSyncEndpoint(app, store) {
289
308
  apiContracts: body.apiContracts,
290
309
  m2mRequests: body.m2mRequests,
291
310
  developerResources: body.developerResources,
311
+ shell: body.shell,
292
312
  viewIndex: body.viewIndex,
293
313
  configSchemas: body.configSchemas,
294
314
  webhooks: body.webhooks
@@ -355,7 +375,17 @@ function addMissingDependencyRoutes(app, sourceRoute, manifest) {
355
375
  }
356
376
  async function updateServiceMetadata(store, serviceInstanceId, manifest) {
357
377
  const config = await store.loadConfig();
358
- let changed = false;
378
+ const persistedManifest = {
379
+ ...manifest,
380
+ serviceId: serviceInstanceId,
381
+ fetchedAt: new Date(manifest.fetchedAt).toISOString()
382
+ };
383
+ const persistedIndex = config.manifestCache.findIndex((entry) => entry.serviceId === serviceInstanceId);
384
+ if (persistedIndex === -1)
385
+ config.manifestCache.push(persistedManifest);
386
+ else
387
+ config.manifestCache[persistedIndex] = persistedManifest;
388
+ let changed = true;
359
389
  const routeServiceIds = new Set([serviceInstanceId]);
360
390
  for (const tenant of config.tenants) {
361
391
  const service = tenant.services.find((candidate) => candidate.id === serviceInstanceId || candidate.serviceId === serviceInstanceId);