@betterportal/framework 10.1.43 → 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 (70) hide show
  1. package/lib/adapters/h3.d.ts.map +1 -1
  2. package/lib/adapters/h3.js +94 -79
  3. package/lib/adapters/h3.js.map +1 -1
  4. package/lib/cli/bp.js +2 -2
  5. package/lib/cli/bp.js.map +1 -1
  6. package/lib/codegen/cli.js +11 -5
  7. package/lib/codegen/cli.js.map +1 -1
  8. package/lib/codegen/emitter.d.ts.map +1 -1
  9. package/lib/codegen/emitter.js +78 -55
  10. package/lib/codegen/emitter.js.map +1 -1
  11. package/lib/codegen/scanner.d.ts +14 -7
  12. package/lib/codegen/scanner.d.ts.map +1 -1
  13. package/lib/codegen/scanner.js +53 -35
  14. package/lib/codegen/scanner.js.map +1 -1
  15. package/lib/codegen/validate.d.ts.map +1 -1
  16. package/lib/codegen/validate.js +31 -14
  17. package/lib/codegen/validate.js.map +1 -1
  18. package/lib/contracts/binding.d.ts +3 -1
  19. package/lib/contracts/binding.d.ts.map +1 -1
  20. package/lib/contracts/binding.js +1 -1
  21. package/lib/contracts/binding.js.map +1 -1
  22. package/lib/contracts/controlPlane.d.ts +3 -3
  23. package/lib/contracts/controlPlane.d.ts.map +1 -1
  24. package/lib/contracts/manifest.d.ts +50 -8
  25. package/lib/contracts/manifest.d.ts.map +1 -1
  26. package/lib/contracts/manifest.js +16 -3
  27. package/lib/contracts/manifest.js.map +1 -1
  28. package/lib/contracts/platformConfig.d.ts +126 -4
  29. package/lib/contracts/platformConfig.d.ts.map +1 -1
  30. package/lib/contracts/platformConfig.js +28 -2
  31. package/lib/contracts/platformConfig.js.map +1 -1
  32. package/lib/contracts/registry.d.ts +59 -19
  33. package/lib/contracts/registry.d.ts.map +1 -1
  34. package/lib/contracts/route.d.ts +3 -3
  35. package/lib/contracts/route.d.ts.map +1 -1
  36. package/lib/contracts/streaming.d.ts +2 -2
  37. package/lib/contracts/view.d.ts +4 -4
  38. package/lib/contracts/view.d.ts.map +1 -1
  39. package/lib/contracts/view.js +2 -2
  40. package/lib/contracts/view.js.map +1 -1
  41. package/lib/index.d.ts +1 -0
  42. package/lib/index.d.ts.map +1 -1
  43. package/lib/index.js +1 -0
  44. package/lib/index.js.map +1 -1
  45. package/lib/runtime/configProvider.d.ts +5 -0
  46. package/lib/runtime/configProvider.d.ts.map +1 -1
  47. package/lib/runtime/configProvider.js +30 -1
  48. package/lib/runtime/configProvider.js.map +1 -1
  49. package/lib/runtime/element.d.ts +13 -0
  50. package/lib/runtime/element.d.ts.map +1 -0
  51. package/lib/runtime/element.js +39 -0
  52. package/lib/runtime/element.js.map +1 -0
  53. package/lib/runtime/llms.js +1 -1
  54. package/lib/runtime/media.d.ts +0 -1
  55. package/lib/runtime/media.d.ts.map +1 -1
  56. package/lib/runtime/media.js +0 -1
  57. package/lib/runtime/media.js.map +1 -1
  58. package/lib/runtime/registry.d.ts +8 -7
  59. package/lib/runtime/registry.d.ts.map +1 -1
  60. package/lib/runtime/registry.js +49 -33
  61. package/lib/runtime/registry.js.map +1 -1
  62. package/lib/runtime/statusViews.d.ts +3 -3
  63. package/lib/runtime/statusViews.d.ts.map +1 -1
  64. package/lib/runtime/statusViews.js +5 -5
  65. package/lib/runtime/statusViews.js.map +1 -1
  66. package/lib/runtime/view.d.ts +1 -1
  67. package/lib/runtime/view.d.ts.map +1 -1
  68. package/lib/runtime/view.js +7 -13
  69. package/lib/runtime/view.js.map +1 -1
  70. package/package.json +1 -1
@@ -53,21 +53,21 @@ export function resolveRoute(registry, path, method) {
53
53
  params: matches[0].params
54
54
  };
55
55
  }
56
- /** Resolve a theme renderer for a route. Success renderers must match the request method. */
57
- export function resolveRenderer(route, themeId, type, method, componentId, fragmentKey) {
58
- const themeSet = route.themeRenderers[themeId];
59
- if (!themeSet)
56
+ /** Resolve an exact compatibility renderer for a route. */
57
+ export function resolveRenderer(route, rendererKey, type, method, componentId, fragmentKey) {
58
+ const rendererSet = route.renderers[rendererKey];
59
+ if (!rendererSet)
60
60
  return null;
61
61
  let pool;
62
62
  switch (type) {
63
63
  case "page":
64
- pool = themeSet.pages;
64
+ pool = rendererSet.pages;
65
65
  break;
66
66
  case "component":
67
- pool = themeSet.components;
67
+ pool = rendererSet.components;
68
68
  break;
69
69
  case "fragment":
70
- pool = themeSet.fragments;
70
+ pool = rendererSet.fragments;
71
71
  break;
72
72
  }
73
73
  // Filter by target
@@ -87,7 +87,7 @@ export function resolveRenderer(route, themeId, type, method, componentId, fragm
87
87
  if (!method)
88
88
  return null;
89
89
  const methodSpecific = candidates.find((r) => r.method === method);
90
- return methodSpecific ? { renderer: methodSpecific, themeId } : null;
90
+ return methodSpecific ? { renderer: methodSpecific, rendererKey } : null;
91
91
  }
92
92
  const CONFIG_ADMIN_APIS = [
93
93
  { id: "config.schema", title: "Config Schema", description: "BetterPortal-managed config schemas for this service.", path: "/.well-known/bp/config/schema", methods: ["GET"], supportsCustomUi: false },
@@ -105,19 +105,23 @@ function deriveAdminApis(base) {
105
105
  /**
106
106
  * Build a PluginManifest from the registry, auto-deriving:
107
107
  * - version (from package.json)
108
- * - supportedThemes (from route themeRenderers)
108
+ * - supportedRenderers (from route renderers)
109
109
  * - supportedRenderModes (from renderer types)
110
110
  * - views (from non-fragment routes)
111
- * - capabilities (from themes + view types)
111
+ * - capabilities (from renderers + view types)
112
112
  */
113
113
  export function buildManifestFromRegistry(registry, packageJson, base) {
114
- const themes = new Set();
114
+ const rendererKeys = new Set();
115
115
  const renderModes = new Set();
116
116
  const capabilities = new Set();
117
117
  const apiContracts = [...(base.apiContracts ?? [])];
118
118
  for (const capability of base.capabilities ?? []) {
119
119
  capabilities.add(capability);
120
120
  }
121
+ if (base.shell) {
122
+ rendererKeys.add(base.shell.renderer);
123
+ capabilities.add(`renderer.${base.shell.renderer}`);
124
+ }
121
125
  capabilities.add("view.json");
122
126
  capabilities.add("view.metadata");
123
127
  for (const route of registry.routes) {
@@ -137,9 +141,9 @@ export function buildManifestFromRegistry(registry, packageJson, base) {
137
141
  if (route.schemas.item) {
138
142
  capabilities.add("stream.ndjson");
139
143
  }
140
- for (const [themeId, rendererSet] of Object.entries(route.themeRenderers)) {
141
- themes.add(themeId);
142
- capabilities.add(`theme.${themeId}`);
144
+ for (const [renderer, rendererSet] of Object.entries(route.renderers)) {
145
+ rendererKeys.add(renderer);
146
+ capabilities.add(`renderer.${renderer}`);
143
147
  if (rendererSet.pages.length > 0)
144
148
  renderModes.add("page");
145
149
  if (rendererSet.fragments.length > 0)
@@ -161,8 +165,8 @@ export function buildManifestFromRegistry(registry, packageJson, base) {
161
165
  return false;
162
166
  seenViewIds.add(route.viewId);
163
167
  // Exclude fragment-only routes (routes that have fragment renderers but no pages)
164
- const hasAnyPage = Object.values(route.themeRenderers).some((set) => set.pages.length > 0 || set.stream !== undefined);
165
- return hasAnyPage || Object.keys(route.themeRenderers).length === 0;
168
+ const hasAnyPage = Object.values(route.renderers).some((set) => set.pages.length > 0 || set.stream !== undefined);
169
+ return hasAnyPage || Object.keys(route.renderers).length === 0;
166
170
  })
167
171
  .map((route) => routeToViewMetadata(route));
168
172
  return {
@@ -174,7 +178,7 @@ export function buildManifestFromRegistry(registry, packageJson, base) {
174
178
  category: base.category ?? "service",
175
179
  deploymentModes: base.deploymentModes ? [...base.deploymentModes] : ["self-hosted"],
176
180
  capabilities: [...capabilities],
177
- supportedThemes: [...themes],
181
+ supportedRenderers: [...rendererKeys],
178
182
  supportedRenderModes: [...renderModes],
179
183
  views,
180
184
  configSchemas: base.configSchemas ?? [],
@@ -184,20 +188,33 @@ export function buildManifestFromRegistry(registry, packageJson, base) {
184
188
  apiContracts,
185
189
  m2mRequests: base.m2mRequests ?? [],
186
190
  developerResources: base.developerResources ?? [],
191
+ ...(base.shell ? {
192
+ shell: {
193
+ service: base.shell.service,
194
+ renderer: base.shell.renderer,
195
+ fragments: registry.shellFragments?.map((fragment) => ({
196
+ id: fragment.id,
197
+ kind: fragment.kind,
198
+ title: fragment.title,
199
+ description: fragment.description,
200
+ defaultItems: [...(fragment.defaultItems ?? [])]
201
+ })) ?? [...base.shell.fragments]
202
+ }
203
+ } : {}),
187
204
  cacheHints: base.cacheHints ?? { metadataTtlSeconds: 1800 }
188
205
  };
189
206
  }
190
207
  function routeToViewMetadata(route) {
191
- const themeRenderers = {};
192
- for (const [themeId, set] of Object.entries(route.themeRenderers)) {
208
+ const rendererSupport = {};
209
+ for (const [renderer, set] of Object.entries(route.renderers)) {
193
210
  const modes = [];
194
- const renderers = [];
211
+ const variants = [];
195
212
  if (set.pages.length > 0)
196
213
  modes.push("page");
197
214
  if (set.fragments.length > 0 || set.stream)
198
215
  modes.push("fragment");
199
216
  for (const page of set.pages) {
200
- renderers.push({
217
+ variants.push({
201
218
  id: page.rendererId,
202
219
  title: page.rendererId === "default" ? "Default Content" : page.rendererId,
203
220
  slotId: "main",
@@ -208,23 +225,23 @@ function routeToViewMetadata(route) {
208
225
  const slotId = fragment.fragmentLocation && fragment.fragmentId
209
226
  ? `${fragment.fragmentLocation}.${fragment.fragmentId}`
210
227
  : fragment.rendererId;
211
- renderers.push({
228
+ variants.push({
212
229
  id: fragment.rendererId,
213
230
  title: fragment.rendererId,
214
231
  slotId,
215
232
  renderModes: ["fragment"]
216
233
  });
217
234
  }
218
- themeRenderers[themeId] = {
235
+ rendererSupport[renderer] = {
219
236
  defaultRenderer: "default",
220
237
  renderModes: modes,
221
- slots: [...new Set(renderers.map((r) => r.slotId))],
222
- renderers
238
+ slots: [...new Set(variants.map((r) => r.slotId))],
239
+ renderers: variants
223
240
  };
224
241
  }
225
242
  const renderable = route.raw === true
226
243
  ? false
227
- : Object.values(route.themeRenderers).some((set) => set.pages.length > 0 || set.components.length > 0 || set.fragments.length > 0 || Boolean(set.stream));
244
+ : Object.values(route.renderers).some((set) => set.pages.length > 0 || set.components.length > 0 || set.fragments.length > 0 || Boolean(set.stream));
228
245
  return {
229
246
  viewId: route.viewId,
230
247
  title: route.title,
@@ -247,7 +264,7 @@ function routeToViewMetadata(route) {
247
264
  ...(route.schemas.summary ? { summarySchema: toJsonSchemaDocument(route.schemas.summary) } : {})
248
265
  }
249
266
  } : {}),
250
- html: { themeRenderers },
267
+ html: { renderers: rendererSupport },
251
268
  auth: { ...route.auth, callers: [...(route.auth.callers ?? ["user"])] },
252
269
  ...(route.role ? { role: route.role } : {}),
253
270
  dependencies: [...(route.dependencies ?? [])],
@@ -275,18 +292,17 @@ export function buildBpSchema(registry, manifest) {
275
292
  return {
276
293
  manifest,
277
294
  routes: registry.routes.map((route) => {
278
- // Aggregate fragments across themes: same (location, fragmentId) groups themes that support it
279
295
  const fragMap = new Map();
280
- for (const [themeId, set] of Object.entries(route.themeRenderers)) {
296
+ for (const [renderer, set] of Object.entries(route.renderers)) {
281
297
  for (const f of set.fragments) {
282
298
  if (!f.fragmentLocation || !f.fragmentId)
283
299
  continue;
284
300
  const key = `${f.fragmentLocation}::${f.fragmentId}`;
285
301
  const existing = fragMap.get(key);
286
302
  if (existing)
287
- existing.themes.push(themeId);
303
+ existing.renderers.push(renderer);
288
304
  else
289
- fragMap.set(key, { fragmentLocation: f.fragmentLocation, fragmentId: f.fragmentId, themes: [themeId] });
305
+ fragMap.set(key, { fragmentLocation: f.fragmentLocation, fragmentId: f.fragmentId, renderers: [renderer] });
290
306
  }
291
307
  }
292
308
  return {
@@ -294,10 +310,10 @@ export function buildBpSchema(registry, manifest) {
294
310
  path: route.path,
295
311
  methods: [...route.methods],
296
312
  paramNames: [...route.paramNames],
297
- themes: Object.keys(route.themeRenderers),
313
+ renderers: Object.keys(route.renderers),
298
314
  hasFragments: fragMap.size > 0,
299
315
  fragments: Array.from(fragMap.values()),
300
- components: Object.values(route.themeRenderers).flatMap((set) => set.components.map((c) => c.rendererId))
316
+ components: Object.values(route.renderers).flatMap((set) => set.components.map((c) => c.rendererId))
301
317
  };
302
318
  })
303
319
  };
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/runtime/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/runtime/registry.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,16 @@
1
- import type { RegisteredRoute, RegisteredThemeRenderer } from "../contracts/registry.js";
1
+ import type { RegisteredRoute, RegisteredViewRenderer } from "../contracts/registry.js";
2
2
  export type StatusRendererKind = "page" | "component" | "fragment";
3
3
  /**
4
4
  * Resolve a renderer for an HTTP status code on a route.
5
5
  *
6
6
  * Resolution order:
7
- * 1. route.statusRenderers[themeId][code] matching the requested kind and id
7
+ * 1. route.statusRenderers[rendererKey][code] matching the requested kind and id
8
8
  * 2. (caller falls back to default renderer or no-body response)
9
9
  *
10
10
  * For 2xx success codes the caller may choose to fall back to the default
11
11
  * success renderer. For 4xx/5xx the caller may return no body.
12
12
  */
13
- export declare function resolveStatusRenderer(route: RegisteredRoute, themeId: string, statusCode: number, kind: StatusRendererKind, rendererKey?: string, method?: RegisteredThemeRenderer["method"]): RegisteredThemeRenderer | undefined;
13
+ export declare function resolveStatusRenderer(route: RegisteredRoute, rendererKey: string, statusCode: number, kind: StatusRendererKind, targetKey?: string, method?: RegisteredViewRenderer["method"]): RegisteredViewRenderer | undefined;
14
14
  /**
15
15
  * Status code policy:
16
16
  * - 200, 201, 202 (and other 2xx): success - fall back to default renderer if no specific one.
@@ -1 +1 @@
1
- {"version":3,"file":"statusViews.d.ts","sourceRoot":"","sources":["../../src/runtime/statusViews.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EAExB,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;AAEnE;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,kBAAkB,EACxB,WAAW,CAAC,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,uBAAuB,CAAC,QAAQ,CAAC,GACzC,uBAAuB,GAAG,SAAS,CAerC;AAED;;;;;;GAMG;AACH,wBAAgB,kCAAkC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE9E;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAK7D"}
1
+ {"version":3,"file":"statusViews.d.ts","sourceRoot":"","sources":["../../src/runtime/statusViews.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,sBAAsB,EAEvB,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,CAAC;AAEnE;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,kBAAkB,EACxB,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,sBAAsB,CAAC,QAAQ,CAAC,GACxC,sBAAsB,GAAG,SAAS,CAepC;AAED;;;;;;GAMG;AACH,wBAAgB,kCAAkC,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE9E;AAED,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAK7D"}
@@ -2,14 +2,14 @@
2
2
  * Resolve a renderer for an HTTP status code on a route.
3
3
  *
4
4
  * Resolution order:
5
- * 1. route.statusRenderers[themeId][code] matching the requested kind and id
5
+ * 1. route.statusRenderers[rendererKey][code] matching the requested kind and id
6
6
  * 2. (caller falls back to default renderer or no-body response)
7
7
  *
8
8
  * For 2xx success codes the caller may choose to fall back to the default
9
9
  * success renderer. For 4xx/5xx the caller may return no body.
10
10
  */
11
- export function resolveStatusRenderer(route, themeId, statusCode, kind, rendererKey, method) {
12
- const bucket = route.statusRenderers?.[themeId]?.[statusCode];
11
+ export function resolveStatusRenderer(route, rendererKey, statusCode, kind, targetKey, method) {
12
+ const bucket = route.statusRenderers?.[rendererKey]?.[statusCode];
13
13
  if (!bucket)
14
14
  return undefined;
15
15
  switch (kind) {
@@ -19,9 +19,9 @@ export function resolveStatusRenderer(route, themeId, statusCode, kind, renderer
19
19
  ?? pages.find((renderer) => renderer.method === undefined);
20
20
  }
21
21
  case "component":
22
- return rendererKey ? bucket.components?.[rendererKey] : undefined;
22
+ return targetKey ? bucket.components?.[targetKey] : undefined;
23
23
  case "fragment":
24
- return rendererKey ? bucket.fragments?.[rendererKey] : undefined;
24
+ return targetKey ? bucket.fragments?.[targetKey] : undefined;
25
25
  }
26
26
  }
27
27
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"statusViews.js","sourceRoot":"","sources":["../../src/runtime/statusViews.ts"],"names":[],"mappings":"AAQA;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAsB,EACtB,OAAe,EACf,UAAkB,EAClB,IAAwB,EACxB,WAAoB,EACpB,MAA0C;IAE1C,MAAM,MAAM,GAAsC,KAAK,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IACjG,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAE9B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACjE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC;mBACtD,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QAC/D,CAAC;QACD,KAAK,WAAW;YACd,OAAO,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,KAAK,UAAU;YACb,OAAO,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrE,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kCAAkC,CAAC,UAAkB;IACnE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAChF,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC;IACxD,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC;IACxD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"statusViews.js","sourceRoot":"","sources":["../../src/runtime/statusViews.ts"],"names":[],"mappings":"AAQA;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAsB,EACtB,WAAmB,EACnB,UAAkB,EAClB,IAAwB,EACxB,SAAkB,EAClB,MAAyC;IAEzC,MAAM,MAAM,GAAsC,KAAK,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IACrG,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAE9B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACjE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC;mBACtD,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QAC/D,CAAC;QACD,KAAK,WAAW;YACd,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChE,KAAK,UAAU;YACb,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kCAAkC,CAAC,UAAkB;IACnE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAChF,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC;IACxD,IAAI,UAAU,IAAI,GAAG,IAAI,UAAU,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC;IACxD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -42,7 +42,7 @@ export interface NegotiatedViewResponse {
42
42
  body: JsonValue | HtmlRenderable;
43
43
  }
44
44
  export declare function createViewDefinition<ParamsSchema extends AnySchema, QuerySchema extends AnySchema, HeadersSchema extends AnySchema, BodySchema extends AnySchema, ResponseSchema extends AnySchema>(input: CreateViewDefinitionInput<ParamsSchema, QuerySchema, HeadersSchema, BodySchema, ResponseSchema>): BetterPortalViewDefinition<ParamsSchema, QuerySchema, HeadersSchema, BodySchema, ResponseSchema>;
45
- export declare function negotiateViewResponse<ResponseSchema extends AnySchema>(view: BetterPortalViewDefinition<AnySchema, AnySchema, AnySchema, AnySchema, ResponseSchema>, acceptHeader: string | undefined, jsonBody: Infer<ResponseSchema>, renderHtml: ((theme: string, mode: RenderMode, body: Infer<ResponseSchema>) => HtmlRenderable) | undefined): NegotiatedViewResponse;
45
+ export declare function negotiateViewResponse<ResponseSchema extends AnySchema>(view: BetterPortalViewDefinition<AnySchema, AnySchema, AnySchema, AnySchema, ResponseSchema>, acceptHeader: string | undefined, jsonBody: Infer<ResponseSchema>, rendererKey: string | undefined, renderHtml: ((renderer: string, mode: RenderMode, body: Infer<ResponseSchema>) => HtmlRenderable) | undefined): NegotiatedViewResponse;
46
46
  export declare function resolveRepresentationFromAccept(acceptHeader?: string): RequestedRepresentation;
47
47
  export {};
48
48
  //# sourceMappingURL=view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/runtime/view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,UAAU,EACV,yBAAyB,EACzB,YAAY,EAEb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAkC,MAAM,YAAY,CAAC;AAGrF,KAAK,SAAS,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACjD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,IAAI,MAAM,CAAC;CACpB;AACD,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,kBAAkB,CAAC;AAEzD,MAAM,WAAW,WAAW,CAC1B,YAAY,SAAS,SAAS,EAC9B,WAAW,SAAS,SAAS,EAC7B,aAAa,SAAS,SAAS,EAC/B,UAAU,SAAS,SAAS,EAC5B,cAAc,SAAS,SAAS;IAEhC,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,yBAAyB,CACxC,YAAY,SAAS,SAAS,EAC9B,WAAW,SAAS,SAAS,EAC7B,aAAa,SAAS,SAAS,EAC/B,UAAU,SAAS,SAAS,EAC5B,cAAc,SAAS,SAAS;IAEhC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,aAAa,CAAC,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC,CAAC;IAChF,OAAO,EAAE,WAAW,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;IAC3F,IAAI,EAAE,yBAAyB,CAAC;IAChC,IAAI,EAAE,kBAAkB,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;QAC5B,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;KACjC,CAAC,CAAC;IACH,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,MAAM,WAAW,0BAA0B,CACzC,YAAY,SAAS,SAAS,EAC9B,WAAW,SAAS,SAAS,EAC7B,aAAa,SAAS,SAAS,EAC/B,UAAU,SAAS,SAAS,EAC5B,cAAc,SAAS,SAAS,CAChC,SAAQ,yBAAyB,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,CAAC;IACvG,UAAU,IAAI,YAAY,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,SAAS,GAAG,cAAc,CAAC;CAClC;AAED,wBAAgB,oBAAoB,CAClC,YAAY,SAAS,SAAS,EAC9B,WAAW,SAAS,SAAS,EAC7B,aAAa,SAAS,SAAS,EAC/B,UAAU,SAAS,SAAS,EAC5B,cAAc,SAAS,SAAS,EAEhC,KAAK,EAAE,yBAAyB,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,CAAC,GACrG,0BAA0B,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,CAAC,CA4BlG;AAcD,wBAAgB,qBAAqB,CAAC,cAAc,SAAS,SAAS,EACpE,IAAI,EAAE,0BAA0B,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC,EAC5F,YAAY,EAAE,MAAM,GAAG,SAAS,EAChC,QAAQ,EAAE,KAAK,CAAC,cAAc,CAAC,EAC/B,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,cAAc,CAAC,GAAG,SAAS,GACzG,sBAAsB,CAoExB;AAED,wBAAgB,+BAA+B,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,uBAAuB,CAE9F"}
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../src/runtime/view.ts"],"names":[],"mappings":"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"}
@@ -29,20 +29,15 @@ export function createViewDefinition(input) {
29
29
  }
30
30
  };
31
31
  }
32
- function resolveTheme(html, requestedTheme) {
33
- if (!requestedTheme)
34
- return null;
35
- return requestedTheme in html.themeRenderers ? requestedTheme : null;
36
- }
37
- function resolveMode(html, theme, requestedMode) {
38
- const renderer = html.themeRenderers[theme];
32
+ function resolveMode(html, rendererKey, requestedMode) {
33
+ const renderer = html.renderers[rendererKey];
39
34
  if (!renderer)
40
35
  return null;
41
36
  if (!requestedMode)
42
37
  return renderer.renderModes[0] ?? null;
43
38
  return renderer.renderModes.includes(requestedMode) ? requestedMode : null;
44
39
  }
45
- export function negotiateViewResponse(view, acceptHeader, jsonBody, renderHtml) {
40
+ export function negotiateViewResponse(view, acceptHeader, jsonBody, rendererKey, renderHtml) {
46
41
  const requested = resolveRequestedRepresentation(acceptHeader);
47
42
  const validatedJsonBody = view.schemas.response.parse(jsonBody);
48
43
  if (requested.kind === "metadata") {
@@ -79,8 +74,7 @@ export function negotiateViewResponse(view, acceptHeader, jsonBody, renderHtml)
79
74
  }
80
75
  };
81
76
  }
82
- const theme = resolveTheme(view.html, requested.theme);
83
- if (!theme) {
77
+ if (!rendererKey || !(rendererKey in view.html.renderers)) {
84
78
  return {
85
79
  status: 406,
86
80
  contentType: "application/json",
@@ -89,7 +83,7 @@ export function negotiateViewResponse(view, acceptHeader, jsonBody, renderHtml)
89
83
  }
90
84
  };
91
85
  }
92
- const mode = resolveMode(view.html, theme, requested.mode);
86
+ const mode = resolveMode(view.html, rendererKey, requested.mode);
93
87
  if (!mode) {
94
88
  return {
95
89
  status: 406,
@@ -101,8 +95,8 @@ export function negotiateViewResponse(view, acceptHeader, jsonBody, renderHtml)
101
95
  }
102
96
  return {
103
97
  status: 200,
104
- contentType: `text/html; theme=${theme}; mode=${mode}`,
105
- body: renderHtml(theme, mode, jsonBody)
98
+ contentType: `text/html; mode=${mode}`,
99
+ body: renderHtml(rendererKey, mode, jsonBody)
106
100
  };
107
101
  }
108
102
  export function resolveRepresentationFromAccept(acceptHeader) {
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/runtime/view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/runtime/view.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@betterportal/framework",
3
- "version": "10.1.43",
3
+ "version": "10.1.44",
4
4
  "description": "BetterPortal v10 core library for Node.js",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",