@betterportal/config-manager 10.1.47 → 10.1.49

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 (25) 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 +91 -1
  4. package/lib/plugins/service-betterportal-config-manager/adminApi.d.ts.map +1 -1
  5. package/lib/plugins/service-betterportal-config-manager/adminApi.js +15 -2
  6. package/lib/plugins/service-betterportal-config-manager/adminApi.js.map +1 -1
  7. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.d.ts.map +1 -1
  8. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.js +37 -2
  9. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.js.map +1 -1
  10. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.d.ts +85 -0
  11. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.d.ts.map +1 -1
  12. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.js +73 -1
  13. package/lib/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.js.map +1 -1
  14. package/lib/plugins/service-betterportal-config-manager/setupTokens.js +12 -14
  15. package/lib/plugins/service-betterportal-config-manager/setupTokens.js.map +1 -1
  16. package/lib/plugins/service-betterportal-config-manager/storage/core.d.ts.map +1 -1
  17. package/lib/plugins/service-betterportal-config-manager/storage/core.js +14 -0
  18. package/lib/plugins/service-betterportal-config-manager/storage/core.js.map +1 -1
  19. package/lib/plugins/service-betterportal-config-manager/syncApi.d.ts +1 -0
  20. package/lib/plugins/service-betterportal-config-manager/syncApi.d.ts.map +1 -1
  21. package/lib/plugins/service-betterportal-config-manager/syncApi.js +15 -17
  22. package/lib/plugins/service-betterportal-config-manager/syncApi.js.map +1 -1
  23. package/lib/schemas/service-betterportal-config-manager.json +1 -1
  24. package/lib/schemas/service-betterportal-config-manager.plugin.json +1 -1
  25. package/package.json +3 -3
@@ -22,8 +22,42 @@ function tenantsScript() {
22
22
  field.hidden = !authSelect.value || supported.length < 2;
23
23
  };
24
24
 
25
+ const syncRedirectView = (form, prefix, preferred = "") => {
26
+ const serviceSelect = form.querySelector("[name=" + prefix + "ServiceId]");
27
+ const viewSelect = form.querySelector("[name=" + prefix + "ViewId]");
28
+ if (!serviceSelect || !viewSelect) return;
29
+ viewSelect.replaceChildren(new Option("Use app default", ""));
30
+ (form.bpPageViews || [])
31
+ .filter((view) => view.serviceId === serviceSelect.value)
32
+ .forEach((view) => viewSelect.add(new Option(view.title + " · " + view.path + " · " + view.viewId, view.viewId)));
33
+ viewSelect.value = preferred;
34
+ viewSelect.disabled = !serviceSelect.value;
35
+ };
36
+
37
+ const loadAuthRedirects = (form, data) => {
38
+ form.bpPageViews = data.pageViews || [];
39
+ form.querySelector("[data-bp-auth-redirects]").hidden = !data.authServiceId;
40
+ ["afterLogin", "afterLogout"].forEach((prefix) => {
41
+ const serviceSelect = form.querySelector("[name=" + prefix + "ServiceId]");
42
+ if (!serviceSelect) return;
43
+ serviceSelect.replaceChildren(new Option("Use app default", ""));
44
+ [...new Map(form.bpPageViews.map((view) => [view.serviceId, view.serviceTitle])).entries()]
45
+ .forEach(([serviceId, title]) => serviceSelect.add(new Option(title + " · " + serviceId, serviceId)));
46
+ const target = data.authRedirects?.[prefix];
47
+ serviceSelect.value = target?.serviceId || "";
48
+ syncRedirectView(form, prefix, target?.viewId || "");
49
+ });
50
+ };
51
+
25
52
  document.querySelectorAll("form").forEach((form) => {
26
- form.querySelector("[name=authServiceId]")?.addEventListener("change", () => syncRoleAuthority(form));
53
+ form.querySelector("[name=authServiceId]")?.addEventListener("change", (event) => {
54
+ syncRoleAuthority(form);
55
+ const redirects = form.querySelector("[data-bp-auth-redirects]");
56
+ if (redirects) redirects.hidden = !event.currentTarget.value;
57
+ });
58
+ ["afterLogin", "afterLogout"].forEach((prefix) => {
59
+ form.querySelector("[name=" + prefix + "ServiceId]")?.addEventListener("change", () => syncRedirectView(form, prefix));
60
+ });
27
61
  });
28
62
 
29
63
  const addAppForm = document.getElementById("bp-add-app-form");
@@ -60,6 +94,7 @@ function tenantsScript() {
60
94
  const authSelect = form.querySelector("[name=authServiceId]");
61
95
  authSelect.value = data.authServiceId || "";
62
96
  syncRoleAuthority(form, data.roleAuthority);
97
+ loadAuthRedirects(form, data);
63
98
  if (window.htmx) window.htmx.process(form);
64
99
  });
65
100
  });
@@ -67,6 +102,6 @@ function tenantsScript() {
67
102
  }
68
103
  export function render(data) {
69
104
  const tenantsPath = data.tenantsPath;
70
- return (_jsxs("div", { class: "container-fluid px-0", children: [_jsx("h2", { class: "mb-4", children: data.title }), _jsxs("div", { class: "d-flex justify-content-between align-items-center mb-3", children: [_jsx("h4", { class: "mb-0", children: "Tenants" }), _jsx("button", { class: "btn btn-sm btn-primary", "data-bs-toggle": "offcanvas", "data-bs-target": "#bp-add-tenant-panel", children: "+ Add Tenant" })] }), data.tenants.length === 0 ? (_jsx("div", { class: "alert alert-secondary mb-4", children: "No tenants configured" })) : (_jsx("div", { class: "table-responsive mb-4", children: _jsxs("table", { class: "table table-sm table-hover align-middle", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "ID" }), _jsx("th", { children: "Slug" }), _jsx("th", { children: "Title" }), _jsx("th", { children: "Services" }), _jsx("th", { children: "Status" }), _jsx("th", {})] }) }), _jsx("tbody", { children: data.tenants.map((t) => (_jsxs("tr", { children: [_jsx("td", { class: "fw-semibold font-monospace small", children: t.id }), _jsx("td", { children: t.slug }), _jsx("td", { children: t.title }), _jsx("td", { children: _jsx("span", { class: "badge text-bg-secondary", children: t.serviceCount }) }), _jsx("td", { children: _jsx("span", { class: `badge ${t.active ? "text-bg-success" : "text-bg-secondary"}`, children: t.active ? "active" : "inactive" }) }), _jsx("td", { children: _jsxs("div", { class: "btn-group btn-group-sm", children: [_jsx("button", { class: "btn btn-outline-primary", "data-bs-toggle": "offcanvas", "data-bs-target": "#bp-edit-tenant-panel", "data-bp-edit-tenant": JSON.stringify(t), children: "Edit" }), _jsx("button", { class: "btn btn-outline-danger", "hx-delete": `${tenantsPath}?entity=tenant&id=${encodeURIComponent(t.id)}`, "hx-confirm": `Delete tenant ${t.id} and all its apps?`, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: "x" })] }) })] }))) })] }) })), _jsxs("div", { class: "d-flex justify-content-between align-items-center mb-3", children: [_jsx("h4", { class: "mb-0", children: "Apps" }), _jsx("button", { class: "btn btn-sm btn-primary", "data-bs-toggle": "offcanvas", "data-bs-target": "#bp-add-app-panel", children: "+ Add App" })] }), data.apps.length === 0 ? (_jsx("div", { class: "alert alert-secondary", children: "No apps configured" })) : (_jsx("div", { class: "row g-3 mb-4", children: data.apps.map((app) => (_jsx("div", { class: "col-12 col-lg-6", children: _jsx("div", { class: "card border-0 shadow-sm h-100", children: _jsxs("div", { class: "card-body", children: [_jsxs("div", { class: "d-flex justify-content-between align-items-start mb-2", children: [_jsxs("div", { children: [_jsx("h5", { class: "mb-0", children: app.title }), _jsx("div", { class: "small text-secondary font-monospace", children: app.id })] }), _jsxs("div", { class: "d-flex gap-1", children: [_jsx("span", { class: "badge text-bg-secondary", children: app.shellServiceId ? "shell" : "no shell" }), _jsx("span", { class: "badge text-bg-secondary", children: app.authServiceId ? "auth" : "no auth" })] })] }), _jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Tenant:" }), " ", app.tenantId] }), _jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Hostnames:" }), " ", app.hostnames.join(", ")] }), _jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Shell:" }), " ", _jsx("span", { class: "font-monospace", children: app.shellServiceId ?? "not selected" })] }), app.shellService && app.shellRenderer ? (_jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Contract:" }), " ", app.shellService, " \u00B7 ", _jsx("span", { class: "font-monospace", children: app.shellRenderer })] })) : app.shellServiceId ? (_jsx("div", { class: "small text-warning mb-1", children: "Shell manifest unavailable" })) : null, _jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Auth:" }), " ", _jsx("span", { class: "font-monospace", children: app.authServiceId ?? "not selected" })] }), _jsxs("div", { class: "small mb-2", children: [_jsx("strong", { children: "Routes:" }), " ", app.routeCount] }), _jsxs("div", { class: "btn-group btn-group-sm", children: [_jsx("button", { class: "btn btn-outline-primary", "data-bs-toggle": "offcanvas", "data-bs-target": "#bp-edit-app-panel", "data-bp-edit-app": JSON.stringify(app), children: "Edit" }), _jsx("button", { class: "btn btn-outline-danger", "hx-delete": `${tenantsPath}?entity=app&id=${encodeURIComponent(app.id)}`, "hx-confirm": `Delete app ${app.id}?`, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: "Delete" })] })] }) }) }))) })), _jsxs("div", { class: "offcanvas offcanvas-end", tabindex: -1, id: "bp-add-tenant-panel", children: [_jsxs("div", { class: "offcanvas-header", children: [_jsx("h5", { class: "offcanvas-title", children: "Add Tenant" }), _jsx("button", { type: "button", class: "btn-close", "data-bs-dismiss": "offcanvas" })] }), _jsx("div", { class: "offcanvas-body", children: _jsxs("form", { id: "bp-add-tenant-form", "hx-post": tenantsPath, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: [_jsx("input", { type: "hidden", name: "entity", value: "tenant" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Tenant Name" }), _jsx("input", { type: "text", class: "form-control", name: "title", placeholder: "My Organization", required: true }), _jsx("div", { class: "form-text", children: "ID is generated automatically." })] }), _jsx("div", { class: "alert alert-danger d-none", id: "bp-tenant-error" }), _jsx("button", { type: "submit", class: "btn btn-primary w-100", children: "Create Tenant" })] }) })] }), _jsxs("div", { class: "offcanvas offcanvas-end", tabindex: -1, id: "bp-edit-tenant-panel", children: [_jsxs("div", { class: "offcanvas-header", children: [_jsx("h5", { class: "offcanvas-title", children: "Edit Tenant" }), _jsx("button", { type: "button", class: "btn-close", "data-bs-dismiss": "offcanvas" })] }), _jsx("div", { class: "offcanvas-body", children: _jsxs("form", { id: "bp-edit-tenant-form", "hx-put": tenantsPath, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: [_jsx("input", { type: "hidden", name: "entity", value: "tenant" }), _jsx("input", { type: "hidden", name: "tenantId" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Title" }), _jsx("input", { type: "text", class: "form-control", name: "title", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Slug" }), _jsx("input", { type: "text", class: "form-control font-monospace", name: "slug", required: true })] }), _jsxs("div", { class: "form-check form-switch mb-3", children: [_jsx("input", { type: "hidden", name: "active", value: "false" }), _jsx("input", { class: "form-check-input", type: "checkbox", name: "active", value: "true", id: "bp-tenant-active" }), _jsx("label", { class: "form-check-label", for: "bp-tenant-active", children: "Active" })] }), _jsx("div", { class: "alert alert-danger d-none", id: "bp-edit-tenant-error" }), _jsx("button", { type: "submit", class: "btn btn-primary w-100", children: "Save" })] }) })] }), _jsxs("div", { class: "offcanvas offcanvas-end", tabindex: -1, id: "bp-add-app-panel", children: [_jsxs("div", { class: "offcanvas-header", children: [_jsx("h5", { class: "offcanvas-title", children: "Add App" }), _jsx("button", { type: "button", class: "btn-close", "data-bs-dismiss": "offcanvas" })] }), _jsx("div", { class: "offcanvas-body", children: _jsxs("form", { id: "bp-add-app-form", "hx-post": tenantsPath, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: [_jsx("input", { type: "hidden", name: "entity", value: "app" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Tenant" }), _jsxs("select", { class: "form-select", name: "tenantId", required: true, children: [_jsx("option", { value: "", children: "Select tenant..." }), data.tenants.map((t) => (_jsx("option", { value: t.id, children: t.title })))] })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "App Name" }), _jsx("input", { type: "text", class: "form-control", name: "title", placeholder: "Web App", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Hostname" }), _jsx("input", { type: "text", class: "form-control", name: "hostname", placeholder: "localhost:3100", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Shell service" }), _jsxs("select", { class: "form-select", name: "shellServiceId", "data-bp-tenant-scoped": "", children: [_jsx("option", { value: "", children: "No shell selected" }), data.shellServices.map((service) => (_jsxs("option", { value: service.id, "data-bp-tenant-id": service.tenantId, children: [service.title, " \u00B7 ", service.service, " \u00B7 ", service.renderer] })))] })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Auth provider" }), _jsxs("select", { class: "form-select", name: "authServiceId", "data-bp-tenant-scoped": "", children: [_jsx("option", { value: "", children: "No auth provider" }), data.authServices.map((service) => (_jsx("option", { value: service.id, "data-bp-tenant-id": service.tenantId, "data-bp-role-authorities": service.roleAuthorities.join(","), children: service.title })))] })] }), _jsxs("div", { class: "mb-3", "data-bp-role-authority-field": "", hidden: true, children: [_jsx("label", { class: "form-label", children: "Role management" }), _jsxs("select", { class: "form-select", name: "roleAuthority", children: [_jsx("option", { value: "provider", children: "Auth provider" }), _jsx("option", { value: "betterportal", children: "BetterPortal" })] })] }), _jsx("div", { class: "alert alert-danger d-none", id: "bp-app-error" }), _jsx("button", { type: "submit", class: "btn btn-primary w-100", children: "Create App" })] }) })] }), _jsxs("div", { class: "offcanvas offcanvas-end", tabindex: -1, id: "bp-edit-app-panel", children: [_jsxs("div", { class: "offcanvas-header", children: [_jsx("h5", { class: "offcanvas-title", children: "Edit App" }), _jsx("button", { type: "button", class: "btn-close", "data-bs-dismiss": "offcanvas" })] }), _jsx("div", { class: "offcanvas-body", children: _jsxs("form", { id: "bp-edit-app-form", "hx-put": tenantsPath, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: [_jsx("input", { type: "hidden", name: "entity", value: "app" }), _jsx("input", { type: "hidden", name: "appId" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Title" }), _jsx("input", { type: "text", class: "form-control", name: "title", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Slug" }), _jsx("input", { type: "text", class: "form-control font-monospace", name: "slug", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Hostnames (comma-separated)" }), _jsx("input", { type: "text", class: "form-control", name: "hostnames", placeholder: "localhost:3100, example.com", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Shell service" }), _jsxs("select", { class: "form-select", name: "shellServiceId", "data-bp-tenant-scoped": "", children: [_jsx("option", { value: "", children: "No shell selected" }), data.shellServices.map((service) => (_jsxs("option", { value: service.id, "data-bp-tenant-id": service.tenantId, children: [service.title, " \u00B7 ", service.service, " \u00B7 ", service.renderer] })))] }), _jsx("div", { class: "form-text", children: "Only services with a synced shell manifest are available." })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Auth provider" }), _jsxs("select", { class: "form-select", name: "authServiceId", "data-bp-tenant-scoped": "", children: [_jsx("option", { value: "", children: "No auth provider" }), data.authServices.map((service) => (_jsx("option", { value: service.id, "data-bp-tenant-id": service.tenantId, "data-bp-role-authorities": service.roleAuthorities.join(","), children: service.title })))] }), _jsx("div", { class: "form-text", children: "Only auth-capable services registered for this app's tenant should be selected." })] }), _jsxs("div", { class: "mb-3", "data-bp-role-authority-field": "", hidden: true, children: [_jsx("label", { class: "form-label", children: "Role management" }), _jsxs("select", { class: "form-select", name: "roleAuthority", children: [_jsx("option", { value: "provider", children: "Auth provider" }), _jsx("option", { value: "betterportal", children: "BetterPortal" })] })] }), _jsx("div", { class: "alert alert-danger d-none", id: "bp-edit-app-error" }), _jsx("button", { type: "submit", class: "btn btn-primary w-100", children: "Save" })] }) })] }), _jsx("script", { children: tenantsScript() })] }));
105
+ return (_jsxs("div", { class: "container-fluid px-0", children: [_jsx("h2", { class: "mb-4", children: data.title }), _jsxs("div", { class: "d-flex justify-content-between align-items-center mb-3", children: [_jsx("h4", { class: "mb-0", children: "Tenants" }), _jsx("button", { class: "btn btn-sm btn-primary", "data-bs-toggle": "offcanvas", "data-bs-target": "#bp-add-tenant-panel", children: "+ Add Tenant" })] }), data.tenants.length === 0 ? (_jsx("div", { class: "alert alert-secondary mb-4", children: "No tenants configured" })) : (_jsx("div", { class: "table-responsive mb-4", children: _jsxs("table", { class: "table table-sm table-hover align-middle", children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "ID" }), _jsx("th", { children: "Slug" }), _jsx("th", { children: "Title" }), _jsx("th", { children: "Services" }), _jsx("th", { children: "Status" }), _jsx("th", {})] }) }), _jsx("tbody", { children: data.tenants.map((t) => (_jsxs("tr", { children: [_jsx("td", { class: "fw-semibold font-monospace small", children: t.id }), _jsx("td", { children: t.slug }), _jsx("td", { children: t.title }), _jsx("td", { children: _jsx("span", { class: "badge text-bg-secondary", children: t.serviceCount }) }), _jsx("td", { children: _jsx("span", { class: `badge ${t.active ? "text-bg-success" : "text-bg-secondary"}`, children: t.active ? "active" : "inactive" }) }), _jsx("td", { children: _jsxs("div", { class: "btn-group btn-group-sm", children: [_jsx("button", { class: "btn btn-outline-primary", "data-bs-toggle": "offcanvas", "data-bs-target": "#bp-edit-tenant-panel", "data-bp-edit-tenant": JSON.stringify(t), children: "Edit" }), _jsx("button", { class: "btn btn-outline-danger", "hx-delete": `${tenantsPath}?entity=tenant&id=${encodeURIComponent(t.id)}`, "hx-confirm": `Delete tenant ${t.id} and all its apps?`, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: "x" })] }) })] }))) })] }) })), _jsxs("div", { class: "d-flex justify-content-between align-items-center mb-3", children: [_jsx("h4", { class: "mb-0", children: "Apps" }), _jsx("button", { class: "btn btn-sm btn-primary", "data-bs-toggle": "offcanvas", "data-bs-target": "#bp-add-app-panel", children: "+ Add App" })] }), data.apps.length === 0 ? (_jsx("div", { class: "alert alert-secondary", children: "No apps configured" })) : (_jsx("div", { class: "row g-3 mb-4", children: data.apps.map((app) => (_jsx("div", { class: "col-12 col-lg-6", children: _jsx("div", { class: "card border-0 shadow-sm h-100", children: _jsxs("div", { class: "card-body", children: [_jsxs("div", { class: "d-flex justify-content-between align-items-start mb-2", children: [_jsxs("div", { children: [_jsx("h5", { class: "mb-0", children: app.title }), _jsx("div", { class: "small text-secondary font-monospace", children: app.id })] }), _jsxs("div", { class: "d-flex gap-1", children: [_jsx("span", { class: "badge text-bg-secondary", children: app.shellServiceId ? "shell" : "no shell" }), _jsx("span", { class: "badge text-bg-secondary", children: app.authServiceId ? "auth" : "no auth" })] })] }), _jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Tenant:" }), " ", app.tenantId] }), _jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Hostnames:" }), " ", app.hostnames.join(", ")] }), _jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Shell:" }), " ", _jsx("span", { class: "font-monospace", children: app.shellServiceId ?? "not selected" })] }), app.shellService && app.shellRenderer ? (_jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Contract:" }), " ", app.shellService, " \u00B7 ", _jsx("span", { class: "font-monospace", children: app.shellRenderer })] })) : app.shellServiceId ? (_jsx("div", { class: "small text-warning mb-1", children: "Shell manifest unavailable" })) : null, _jsxs("div", { class: "small mb-1", children: [_jsx("strong", { children: "Auth:" }), " ", _jsx("span", { class: "font-monospace", children: app.authServiceId ?? "not selected" })] }), _jsxs("div", { class: "small mb-2", children: [_jsx("strong", { children: "Routes:" }), " ", app.routeCount] }), _jsxs("div", { class: "btn-group btn-group-sm", children: [_jsx("button", { class: "btn btn-outline-primary", "data-bs-toggle": "offcanvas", "data-bs-target": "#bp-edit-app-panel", "data-bp-edit-app": JSON.stringify(app), children: "Edit" }), _jsx("button", { class: "btn btn-outline-danger", "hx-delete": `${tenantsPath}?entity=app&id=${encodeURIComponent(app.id)}`, "hx-confirm": `Delete app ${app.id}?`, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: "Delete" })] })] }) }) }))) })), _jsxs("div", { class: "offcanvas offcanvas-end", tabindex: -1, id: "bp-add-tenant-panel", children: [_jsxs("div", { class: "offcanvas-header", children: [_jsx("h5", { class: "offcanvas-title", children: "Add Tenant" }), _jsx("button", { type: "button", class: "btn-close", "data-bs-dismiss": "offcanvas" })] }), _jsx("div", { class: "offcanvas-body", children: _jsxs("form", { id: "bp-add-tenant-form", "hx-post": tenantsPath, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: [_jsx("input", { type: "hidden", name: "entity", value: "tenant" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Tenant Name" }), _jsx("input", { type: "text", class: "form-control", name: "title", placeholder: "My Organization", required: true }), _jsx("div", { class: "form-text", children: "ID is generated automatically." })] }), _jsx("div", { class: "alert alert-danger d-none", id: "bp-tenant-error" }), _jsx("button", { type: "submit", class: "btn btn-primary w-100", children: "Create Tenant" })] }) })] }), _jsxs("div", { class: "offcanvas offcanvas-end", tabindex: -1, id: "bp-edit-tenant-panel", children: [_jsxs("div", { class: "offcanvas-header", children: [_jsx("h5", { class: "offcanvas-title", children: "Edit Tenant" }), _jsx("button", { type: "button", class: "btn-close", "data-bs-dismiss": "offcanvas" })] }), _jsx("div", { class: "offcanvas-body", children: _jsxs("form", { id: "bp-edit-tenant-form", "hx-put": tenantsPath, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: [_jsx("input", { type: "hidden", name: "entity", value: "tenant" }), _jsx("input", { type: "hidden", name: "tenantId" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Title" }), _jsx("input", { type: "text", class: "form-control", name: "title", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Slug" }), _jsx("input", { type: "text", class: "form-control font-monospace", name: "slug", required: true })] }), _jsxs("div", { class: "form-check form-switch mb-3", children: [_jsx("input", { type: "hidden", name: "active", value: "false" }), _jsx("input", { class: "form-check-input", type: "checkbox", name: "active", value: "true", id: "bp-tenant-active" }), _jsx("label", { class: "form-check-label", for: "bp-tenant-active", children: "Active" })] }), _jsx("div", { class: "alert alert-danger d-none", id: "bp-edit-tenant-error" }), _jsx("button", { type: "submit", class: "btn btn-primary w-100", children: "Save" })] }) })] }), _jsxs("div", { class: "offcanvas offcanvas-end", tabindex: -1, id: "bp-add-app-panel", children: [_jsxs("div", { class: "offcanvas-header", children: [_jsx("h5", { class: "offcanvas-title", children: "Add App" }), _jsx("button", { type: "button", class: "btn-close", "data-bs-dismiss": "offcanvas" })] }), _jsx("div", { class: "offcanvas-body", children: _jsxs("form", { id: "bp-add-app-form", "hx-post": tenantsPath, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: [_jsx("input", { type: "hidden", name: "entity", value: "app" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Tenant" }), _jsxs("select", { class: "form-select", name: "tenantId", required: true, children: [_jsx("option", { value: "", children: "Select tenant..." }), data.tenants.map((t) => (_jsx("option", { value: t.id, children: t.title })))] })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "App Name" }), _jsx("input", { type: "text", class: "form-control", name: "title", placeholder: "Web App", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Hostname" }), _jsx("input", { type: "text", class: "form-control", name: "hostname", placeholder: "localhost:3100", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Shell service" }), _jsxs("select", { class: "form-select", name: "shellServiceId", "data-bp-tenant-scoped": "", children: [_jsx("option", { value: "", children: "No shell selected" }), data.shellServices.map((service) => (_jsxs("option", { value: service.id, "data-bp-tenant-id": service.tenantId, children: [service.title, " \u00B7 ", service.service, " \u00B7 ", service.renderer] })))] })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Auth provider" }), _jsxs("select", { class: "form-select", name: "authServiceId", "data-bp-tenant-scoped": "", children: [_jsx("option", { value: "", children: "No auth provider" }), data.authServices.map((service) => (_jsx("option", { value: service.id, "data-bp-tenant-id": service.tenantId, "data-bp-role-authorities": service.roleAuthorities.join(","), children: service.title })))] })] }), _jsxs("div", { class: "mb-3", "data-bp-role-authority-field": "", hidden: true, children: [_jsx("label", { class: "form-label", children: "Role management" }), _jsxs("select", { class: "form-select", name: "roleAuthority", children: [_jsx("option", { value: "provider", children: "Auth provider" }), _jsx("option", { value: "betterportal", children: "BetterPortal" })] })] }), _jsx("div", { class: "alert alert-danger d-none", id: "bp-app-error" }), _jsx("button", { type: "submit", class: "btn btn-primary w-100", children: "Create App" })] }) })] }), _jsxs("div", { class: "offcanvas offcanvas-end", tabindex: -1, id: "bp-edit-app-panel", children: [_jsxs("div", { class: "offcanvas-header", children: [_jsx("h5", { class: "offcanvas-title", children: "Edit App" }), _jsx("button", { type: "button", class: "btn-close", "data-bs-dismiss": "offcanvas" })] }), _jsx("div", { class: "offcanvas-body", children: _jsxs("form", { id: "bp-edit-app-form", "hx-put": tenantsPath, "hx-target": "#bp-main", "hx-swap": "innerHTML", children: [_jsx("input", { type: "hidden", name: "entity", value: "app" }), _jsx("input", { type: "hidden", name: "appId" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Title" }), _jsx("input", { type: "text", class: "form-control", name: "title", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Slug" }), _jsx("input", { type: "text", class: "form-control font-monospace", name: "slug", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Hostnames (comma-separated)" }), _jsx("input", { type: "text", class: "form-control", name: "hostnames", placeholder: "localhost:3100, example.com", required: true })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Shell service" }), _jsxs("select", { class: "form-select", name: "shellServiceId", "data-bp-tenant-scoped": "", children: [_jsx("option", { value: "", children: "No shell selected" }), data.shellServices.map((service) => (_jsxs("option", { value: service.id, "data-bp-tenant-id": service.tenantId, children: [service.title, " \u00B7 ", service.service, " \u00B7 ", service.renderer] })))] }), _jsx("div", { class: "form-text", children: "Only services with a synced shell manifest are available." })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "Auth provider" }), _jsxs("select", { class: "form-select", name: "authServiceId", "data-bp-tenant-scoped": "", children: [_jsx("option", { value: "", children: "No auth provider" }), data.authServices.map((service) => (_jsx("option", { value: service.id, "data-bp-tenant-id": service.tenantId, "data-bp-role-authorities": service.roleAuthorities.join(","), children: service.title })))] }), _jsx("div", { class: "form-text", children: "Only auth-capable services registered for this app's tenant should be selected." })] }), _jsxs("div", { class: "mb-3", "data-bp-role-authority-field": "", hidden: true, children: [_jsx("label", { class: "form-label", children: "Role management" }), _jsxs("select", { class: "form-select", name: "roleAuthority", children: [_jsx("option", { value: "provider", children: "Auth provider" }), _jsx("option", { value: "betterportal", children: "BetterPortal" })] })] }), _jsxs("fieldset", { class: "border rounded p-3 mb-3", "data-bp-auth-redirects": "", hidden: true, children: [_jsx("legend", { class: "float-none w-auto px-2 fs-6", children: "Auth navigation" }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "After sign-in service" }), _jsx("select", { class: "form-select", name: "afterLoginServiceId", children: _jsx("option", { value: "", children: "Use app default" }) })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "After sign-in view" }), _jsx("select", { class: "form-select", name: "afterLoginViewId", disabled: true, children: _jsx("option", { value: "", children: "Use app default" }) })] }), _jsxs("div", { class: "mb-3", children: [_jsx("label", { class: "form-label", children: "After sign-out service" }), _jsx("select", { class: "form-select", name: "afterLogoutServiceId", children: _jsx("option", { value: "", children: "Use app default" }) })] }), _jsxs("div", { children: [_jsx("label", { class: "form-label", children: "After sign-out view" }), _jsx("select", { class: "form-select", name: "afterLogoutViewId", disabled: true, children: _jsx("option", { value: "", children: "Use app default" }) })] }), _jsx("div", { class: "form-text mt-2", children: "Blank uses the app's default route. Only enabled GET page views with one mount are available." })] }), _jsx("div", { class: "alert alert-danger d-none", id: "bp-edit-app-error" }), _jsx("button", { type: "submit", class: "btn btn-primary w-100", children: "Save" })] }) })] }), _jsx("script", { children: tenantsScript() })] }));
71
106
  }
72
107
  //# sourceMappingURL=GET.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GET.js","sourceRoot":"","sources":["../../../../../../src/plugins/service-betterportal-config-manager/bp-routes/tenants/_renderer.bootstrap5/GET.tsx"],"names":[],"mappings":"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"}
@@ -21,6 +21,23 @@ export declare const ResponseSchema: av.ObjectSchema<{
21
21
  shellRenderer: av.OptionalSchema<av.StringSchema>;
22
22
  authServiceId: av.OptionalSchema<av.StringSchema>;
23
23
  roleAuthority: av.OptionalSchema<av.EnumSchema<readonly ["provider", "betterportal"]>>;
24
+ authRedirects: av.OptionalSchema<av.ObjectSchema<{
25
+ afterLogin: av.OptionalSchema<av.ObjectSchema<{
26
+ serviceId: av.StringSchema;
27
+ viewId: av.StringSchema;
28
+ }>>;
29
+ afterLogout: av.OptionalSchema<av.ObjectSchema<{
30
+ serviceId: av.StringSchema;
31
+ viewId: av.StringSchema;
32
+ }>>;
33
+ }>>;
34
+ pageViews: av.ArraySchema<av.ObjectSchema<{
35
+ serviceId: av.StringSchema;
36
+ serviceTitle: av.StringSchema;
37
+ viewId: av.StringSchema;
38
+ title: av.StringSchema;
39
+ path: av.StringSchema;
40
+ }>>;
24
41
  routeCount: av.IntSchema;
25
42
  }>>;
26
43
  shellServices: av.ArraySchema<av.ObjectSchema<{
@@ -63,12 +80,29 @@ export declare const handleGet: import("@betterportal/framework").RouteHandler<R
63
80
  slug: string;
64
81
  title: string;
65
82
  hostnames: string[];
83
+ pageViews: {
84
+ serviceId: string;
85
+ serviceTitle: string;
86
+ viewId: string;
87
+ title: string;
88
+ path: string;
89
+ }[];
66
90
  routeCount: number;
67
91
  shellServiceId?: string | undefined;
68
92
  shellService?: string | undefined;
69
93
  shellRenderer?: string | undefined;
70
94
  authServiceId?: string | undefined;
71
95
  roleAuthority?: "provider" | "betterportal" | undefined;
96
+ authRedirects?: {
97
+ afterLogin?: {
98
+ serviceId: string;
99
+ viewId: string;
100
+ } | undefined;
101
+ afterLogout?: {
102
+ serviceId: string;
103
+ viewId: string;
104
+ } | undefined;
105
+ } | undefined;
72
106
  }[];
73
107
  shellServices: {
74
108
  id: string;
@@ -104,12 +138,29 @@ export declare const handlePost: import("@betterportal/framework").RouteHandler<
104
138
  slug: string;
105
139
  title: string;
106
140
  hostnames: string[];
141
+ pageViews: {
142
+ serviceId: string;
143
+ serviceTitle: string;
144
+ viewId: string;
145
+ title: string;
146
+ path: string;
147
+ }[];
107
148
  routeCount: number;
108
149
  shellServiceId?: string | undefined;
109
150
  shellService?: string | undefined;
110
151
  shellRenderer?: string | undefined;
111
152
  authServiceId?: string | undefined;
112
153
  roleAuthority?: "provider" | "betterportal" | undefined;
154
+ authRedirects?: {
155
+ afterLogin?: {
156
+ serviceId: string;
157
+ viewId: string;
158
+ } | undefined;
159
+ afterLogout?: {
160
+ serviceId: string;
161
+ viewId: string;
162
+ } | undefined;
163
+ } | undefined;
113
164
  }[];
114
165
  shellServices: {
115
166
  id: string;
@@ -145,12 +196,29 @@ export declare const handlePut: import("@betterportal/framework").RouteHandler<R
145
196
  slug: string;
146
197
  title: string;
147
198
  hostnames: string[];
199
+ pageViews: {
200
+ serviceId: string;
201
+ serviceTitle: string;
202
+ viewId: string;
203
+ title: string;
204
+ path: string;
205
+ }[];
148
206
  routeCount: number;
149
207
  shellServiceId?: string | undefined;
150
208
  shellService?: string | undefined;
151
209
  shellRenderer?: string | undefined;
152
210
  authServiceId?: string | undefined;
153
211
  roleAuthority?: "provider" | "betterportal" | undefined;
212
+ authRedirects?: {
213
+ afterLogin?: {
214
+ serviceId: string;
215
+ viewId: string;
216
+ } | undefined;
217
+ afterLogout?: {
218
+ serviceId: string;
219
+ viewId: string;
220
+ } | undefined;
221
+ } | undefined;
154
222
  }[];
155
223
  shellServices: {
156
224
  id: string;
@@ -186,12 +254,29 @@ export declare const handleDelete: import("@betterportal/framework").RouteHandle
186
254
  slug: string;
187
255
  title: string;
188
256
  hostnames: string[];
257
+ pageViews: {
258
+ serviceId: string;
259
+ serviceTitle: string;
260
+ viewId: string;
261
+ title: string;
262
+ path: string;
263
+ }[];
189
264
  routeCount: number;
190
265
  shellServiceId?: string | undefined;
191
266
  shellService?: string | undefined;
192
267
  shellRenderer?: string | undefined;
193
268
  authServiceId?: string | undefined;
194
269
  roleAuthority?: "provider" | "betterportal" | undefined;
270
+ authRedirects?: {
271
+ afterLogin?: {
272
+ serviceId: string;
273
+ viewId: string;
274
+ } | undefined;
275
+ afterLogout?: {
276
+ serviceId: string;
277
+ viewId: string;
278
+ } | undefined;
279
+ } | undefined;
195
280
  }[];
196
281
  shellServices: {
197
282
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"route.impl.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EAEvB,KAAK,UAAU,EAEhB,MAAM,yBAAyB,CAAC;AAgDjC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASC,CAAC;AAC7B,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD,eAAO,MAAM,KAAK,mBAAmB,CAAC;AACtC,eAAO,MAAM,WAAW,qCAAqC,CAAC;AAE9D,eAAO,MAAM,IAAI,EAAE,kBAKlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAA4D,CAAC;AAEtF,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,EAErD,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAGrB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAWtB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAWrB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAYxB,CAAC"}
1
+ {"version":3,"file":"route.impl.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,kBAAkB,EAEvB,KAAK,UAAU,EAEhB,MAAM,yBAAyB,CAAC;AAiEjC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASC,CAAC;AAC7B,MAAM,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAExD,eAAO,MAAM,KAAK,mBAAmB,CAAC;AACtC,eAAO,MAAM,WAAW,qCAAqC,CAAC;AAE9D,eAAO,MAAM,IAAI,EAAE,kBAKlB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,UAA4D,CAAC;AAEtF,eAAO,MAAM,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,EAErD,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAGrB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAWtB,CAAC;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAWrB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAYxB,CAAC"}
@@ -23,6 +23,23 @@ const AppItemSchema = av.object({
23
23
  shellRenderer: av.optional(av.string().minLength(1)),
24
24
  authServiceId: av.optional(av.string().minLength(1)),
25
25
  roleAuthority: av.optional(RoleAuthoritySchema),
26
+ authRedirects: av.optional(av.object({
27
+ afterLogin: av.optional(av.object({
28
+ serviceId: av.string().minLength(1),
29
+ viewId: av.string().minLength(1)
30
+ }, { unknownKeys: "strip" })),
31
+ afterLogout: av.optional(av.object({
32
+ serviceId: av.string().minLength(1),
33
+ viewId: av.string().minLength(1)
34
+ }, { unknownKeys: "strip" }))
35
+ }, { unknownKeys: "strip" })),
36
+ pageViews: av.array(av.object({
37
+ serviceId: av.string().minLength(1),
38
+ serviceTitle: av.string().minLength(1),
39
+ viewId: av.string().minLength(1),
40
+ title: av.string().minLength(1),
41
+ path: av.string().minLength(1)
42
+ }, { unknownKeys: "strip" })).default([]),
26
43
  routeCount: av.int().min(0)
27
44
  }, { unknownKeys: "strip" });
28
45
  const ShellServiceSchema = av.object({
@@ -124,6 +141,8 @@ async function buildResponseModel(tenantsPath = "/tenants") {
124
141
  shellService: shell?.service,
125
142
  shellRenderer: shell?.renderer,
126
143
  authServiceId: a.auth?.serviceId,
144
+ authRedirects: a.auth?.redirects,
145
+ pageViews: selectableAppPageViews(config, a),
127
146
  roleAuthority: a.auth
128
147
  ? resolveRoleAuthority(authServices.find((service) => service.id === a.auth?.serviceId)?.capabilities ?? [], a.auth.roleAuthority)
129
148
  : undefined,
@@ -259,6 +278,7 @@ async function updateApp(body) {
259
278
  roles: existingRoles
260
279
  };
261
280
  ensureAuthRouteMounts(config, appDef);
281
+ updateAuthRedirects(appDef, body);
262
282
  }
263
283
  }
264
284
  else {
@@ -354,7 +374,7 @@ function isAuthServiceForTenant(config, tenantId, authServiceId) {
354
374
  }
355
375
  function buildAppAuthConfig(config, tenantId, authServiceId, existing, requestedRoleAuthority) {
356
376
  const authService = authServicesForTenant(config, tenantId).find((service) => service.id === authServiceId);
357
- const publicKeys = existing?.publicKeys ?? findKnownAuthPublicKeys(config, authServiceId);
377
+ const publicKeys = authService?.authProvider?.publicKeys ?? existing?.publicKeys ?? findKnownAuthPublicKeys(config, authServiceId);
358
378
  const providerKind = authService?.serviceId === "org.betterportal.auth.authress-io"
359
379
  ? "authress.io"
360
380
  : "betterportal.default";
@@ -370,6 +390,7 @@ function buildAppAuthConfig(config, tenantId, authServiceId, existing, requested
370
390
  loginViewId: existing?.loginViewId ?? "login.index",
371
391
  logoutViewId: existing?.logoutViewId ?? "logout.index",
372
392
  refreshViewId: existing?.refreshViewId ?? "refresh.index",
393
+ ...(existing?.redirects ? { redirects: existing.redirects } : {}),
373
394
  provider: existing?.serviceId === authServiceId ? existing.provider : (providerKind === "authress.io"
374
395
  ? { kind: "authress.io", roleClaimPath: "roles", subjectClaimPath: "sub" }
375
396
  : { kind: "betterportal.default" }),
@@ -380,6 +401,57 @@ function buildAppAuthConfig(config, tenantId, authServiceId, existing, requested
380
401
  roles: existing?.roles ?? []
381
402
  };
382
403
  }
404
+ function selectableAppPageViews(config, app) {
405
+ const candidates = app.routes.filter(isEnabledPageView);
406
+ return candidates
407
+ .filter((route) => candidates.filter((candidate) => candidate.serviceId === route.serviceId && candidate.viewId === route.viewId).length === 1)
408
+ .map((route) => ({
409
+ serviceId: route.serviceId,
410
+ serviceTitle: serviceTitle(config, app.tenantId, route.serviceId),
411
+ viewId: route.viewId,
412
+ title: route.title?.trim() || route.viewId,
413
+ path: route.path
414
+ }));
415
+ }
416
+ function isEnabledPageView(route) {
417
+ return route.enabled && (route.kind ?? "page") === "page" && route.methods.includes("GET");
418
+ }
419
+ function serviceTitle(config, tenantId, serviceId) {
420
+ const tenantService = config.tenants
421
+ .find((tenant) => tenant.id === tenantId)
422
+ ?.services.find((service) => service.id === serviceId);
423
+ if (tenantService)
424
+ return tenantService.title?.trim() || tenantService.serviceId || serviceId;
425
+ const platformService = config.platformServices.find((service) => service.id === serviceId);
426
+ if (platformService)
427
+ return platformService.title?.trim() || platformService.serviceId || serviceId;
428
+ const activation = config.sharedServiceActivations.find((candidate) => candidate.id === serviceId);
429
+ const shared = activation
430
+ ? config.sharedServiceCatalog.find((service) => service.id === activation.sharedServiceId)
431
+ : undefined;
432
+ return shared?.title ?? shared?.serviceId ?? serviceId;
433
+ }
434
+ function updateAuthRedirects(app, body) {
435
+ if (!app.auth)
436
+ return;
437
+ const redirects = { ...app.auth.redirects };
438
+ for (const [kind, prefix] of [["afterLogin", "afterLogin"], ["afterLogout", "afterLogout"]]) {
439
+ if (body[`${prefix}ServiceId`] === undefined && body[`${prefix}ViewId`] === undefined)
440
+ continue;
441
+ const serviceId = stringValue(body[`${prefix}ServiceId`]);
442
+ const viewId = stringValue(body[`${prefix}ViewId`]);
443
+ const matches = serviceId && viewId
444
+ ? app.routes.filter((route) => isEnabledPageView(route) && route.serviceId === serviceId && route.viewId === viewId)
445
+ : [];
446
+ if (serviceId && viewId && matches.length === 1) {
447
+ redirects[kind] = { serviceId, viewId };
448
+ }
449
+ else {
450
+ delete redirects[kind];
451
+ }
452
+ }
453
+ app.auth.redirects = Object.keys(redirects).length ? redirects : undefined;
454
+ }
383
455
  function issuerFromAuthService(hostname) {
384
456
  const normalized = (hostname ?? "").replace(/\/+$/, "");
385
457
  if (!normalized)
@@ -1 +1 @@
1
- {"version":3,"file":"route.impl.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"route.impl.js","sourceRoot":"","sources":["../../../../../src/plugins/service-betterportal-config-manager/bp-routes/tenants/route.impl.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { randomBytes } from "node:crypto";
2
2
  import { jsonResponse } from "@betterportal/framework/lib/runtime/h3.js";
3
3
  import { uuidv7 } from "@betterportal/framework/lib/runtime/uuid.js";
4
- import { signSetupToken } from "@betterportal/framework";
4
+ import { AuthProviderRuntimeMetadataSchema, signSetupToken } from "@betterportal/framework";
5
5
  const SETUP_TTL_SECONDS = 5 * 60;
6
6
  /**
7
7
  * Register the two CM endpoints that drive the browser-mediated install:
@@ -376,22 +376,20 @@ function applyAuthProviderMetadata(appAuth, authProvider) {
376
376
  appAuth.expectedIssuer = authProvider.issuer;
377
377
  appAuth.expectedAudience = authProvider.audience;
378
378
  appAuth.jwksUri = authProvider.jwksUri;
379
+ if (authProvider.publicKeys)
380
+ appAuth.publicKeys = authProvider.publicKeys;
379
381
  }
380
382
  function normalizeAuthProviderMetadata(value) {
381
- if (!value || typeof value !== "object")
382
- return undefined;
383
- const raw = value;
384
- if (typeof raw.issuer !== "string" || raw.issuer.trim().length === 0)
385
- return undefined;
386
- if (typeof raw.audience !== "string" || raw.audience.trim().length === 0)
387
- return undefined;
388
- if (typeof raw.jwksUri !== "string" || raw.jwksUri.trim().length === 0)
383
+ try {
384
+ const parsed = AuthProviderRuntimeMetadataSchema.parse(value);
385
+ const issuer = parsed.issuer.trim().replace(/\/+$/, "");
386
+ const audience = parsed.audience.trim();
387
+ const jwksUri = parsed.jwksUri.trim();
388
+ return issuer && audience && jwksUri ? { ...parsed, issuer, audience, jwksUri } : undefined;
389
+ }
390
+ catch {
389
391
  return undefined;
390
- return {
391
- issuer: raw.issuer.trim().replace(/\/+$/, ""),
392
- audience: raw.audience.trim(),
393
- jwksUri: raw.jwksUri.trim()
394
- };
392
+ }
395
393
  }
396
394
  async function hashApiKey(apiKey) {
397
395
  const { createHash } = await import("node:crypto");