@betterportal/config-manager 10.1.41 → 10.1.43

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 (27) 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 +191 -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 +72 -0
  6. package/lib/plugins/service-betterportal-config-manager/adminApi.js.map +1 -1
  7. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/_theme.bootstrap1/GET.d.ts.map +1 -1
  8. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/_theme.bootstrap1/GET.js +12 -2
  9. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/_theme.bootstrap1/GET.js.map +1 -1
  10. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.d.ts +50 -0
  11. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.d.ts.map +1 -1
  12. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.js +29 -2
  13. package/lib/plugins/service-betterportal-config-manager/bp-routes/services/route.impl.js.map +1 -1
  14. package/lib/plugins/service-betterportal-config-manager/index.d.ts +0 -2
  15. package/lib/plugins/service-betterportal-config-manager/index.d.ts.map +1 -1
  16. package/lib/plugins/service-betterportal-config-manager/index.js +7 -0
  17. package/lib/plugins/service-betterportal-config-manager/index.js.map +1 -1
  18. package/lib/plugins/service-betterportal-config-manager/m2mConnections.d.ts +45 -0
  19. package/lib/plugins/service-betterportal-config-manager/m2mConnections.d.ts.map +1 -0
  20. package/lib/plugins/service-betterportal-config-manager/m2mConnections.js +228 -0
  21. package/lib/plugins/service-betterportal-config-manager/m2mConnections.js.map +1 -0
  22. package/lib/plugins/service-betterportal-config-manager/storage/core.d.ts.map +1 -1
  23. package/lib/plugins/service-betterportal-config-manager/storage/core.js +13 -0
  24. package/lib/plugins/service-betterportal-config-manager/storage/core.js.map +1 -1
  25. package/lib/schemas/service-betterportal-config-manager.json +1 -8
  26. package/lib/schemas/service-betterportal-config-manager.plugin.json +1 -8
  27. package/package.json +5 -5
@@ -0,0 +1,45 @@
1
+ import { type BetterPortalConfig, type M2MCallerMode } from "@betterportal/framework";
2
+ import { type CachedManifest } from "./syncApi.js";
3
+ export type M2MConnectionStatus = "connected" | "pending" | "choice" | "unavailable" | "stale";
4
+ export interface M2MConnectionCandidate {
5
+ targetServiceId: string;
6
+ targetServiceTitle: string;
7
+ targetServiceType: string;
8
+ targetViewId: string;
9
+ }
10
+ export interface M2MConnectionView {
11
+ sourceServiceId: string;
12
+ sourceServiceTitle: string;
13
+ sourceServiceType: string;
14
+ requestId: string;
15
+ title: string;
16
+ contractId: string;
17
+ version?: string;
18
+ mode: M2MCallerMode;
19
+ methods: string[];
20
+ permissions: string[];
21
+ optional: boolean;
22
+ status: M2MConnectionStatus;
23
+ message: string;
24
+ bindingId?: string;
25
+ targetServiceId?: string;
26
+ targetViewId?: string;
27
+ candidates: M2MConnectionCandidate[];
28
+ }
29
+ export interface M2MConnectionSelection {
30
+ sourceServiceId: string;
31
+ requestId: string;
32
+ targetServiceId?: string;
33
+ targetViewId?: string;
34
+ }
35
+ export declare class M2MConnectionError extends Error {
36
+ readonly status: 400 | 404 | 409;
37
+ constructor(message: string, status?: 400 | 404 | 409);
38
+ }
39
+ export declare function buildM2MConnectionModel(config: BetterPortalConfig, appId: string, cache?: ReadonlyMap<string, CachedManifest>): M2MConnectionView[];
40
+ export declare function approveM2MConnections(config: BetterPortalConfig, appId: string, selections: readonly M2MConnectionSelection[], cache?: ReadonlyMap<string, CachedManifest>): {
41
+ created: string[];
42
+ existing: string[];
43
+ };
44
+ export declare function revokeM2MConnection(config: BetterPortalConfig, appId: string, bindingId: string): boolean;
45
+ //# sourceMappingURL=m2mConnections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"m2mConnections.d.ts","sourceRoot":"","sources":["../../../src/plugins/service-betterportal-config-manager/m2mConnections.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAEnB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAiD,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAElG,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,CAAC;AAE/F,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,sBAAsB,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,kBAAmB,SAAQ,KAAK;IACd,QAAQ,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG;gBAAjD,OAAO,EAAE,MAAM,EAAW,MAAM,GAAE,GAAG,GAAG,GAAG,GAAG,GAAS;CAIpE;AA6DD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAsB,GAC9D,iBAAiB,EAAE,CAkGrB;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,kBAAkB,EAC1B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,SAAS,sBAAsB,EAAE,EAC7C,KAAK,GAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAsB,GAC9D;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CA8D3C;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,kBAAkB,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAOzG"}
@@ -0,0 +1,228 @@
1
+ import { ApiContractDescriptorSchema, M2MRequestDescriptorSchema, uuidv7 } from "@betterportal/framework";
2
+ import { getAvailableServiceInstanceIdsForApp } from "./storage/core.js";
3
+ import { getCachedManifestForService, getManifestCache } from "./syncApi.js";
4
+ export class M2MConnectionError extends Error {
5
+ status;
6
+ constructor(message, status = 409) {
7
+ super(message);
8
+ this.status = status;
9
+ this.name = "M2MConnectionError";
10
+ }
11
+ }
12
+ function serviceDetails(config, serviceId) {
13
+ for (const tenant of config.tenants) {
14
+ const service = tenant.services.find((candidate) => candidate.id === serviceId);
15
+ if (service)
16
+ return { title: service.title ?? service.serviceId ?? service.id, serviceId: service.serviceId ?? service.id };
17
+ }
18
+ const platform = config.platformServices.find((candidate) => candidate.id === serviceId);
19
+ if (platform)
20
+ return { title: platform.title ?? platform.serviceId ?? platform.id, serviceId: platform.serviceId ?? platform.id };
21
+ const activation = config.sharedServiceActivations.find((candidate) => candidate.id === serviceId);
22
+ const shared = activation
23
+ ? config.sharedServiceCatalog.find((candidate) => candidate.id === activation.sharedServiceId)
24
+ : undefined;
25
+ return shared
26
+ ? { title: shared.title, serviceId: shared.serviceId ?? shared.id }
27
+ : { title: serviceId, serviceId };
28
+ }
29
+ function requestsForManifest(manifest) {
30
+ return (manifest?.m2mRequests ?? []).flatMap((value) => {
31
+ const parsed = M2MRequestDescriptorSchema.safeParse(value);
32
+ return parsed.success ? [parsed.data] : [];
33
+ });
34
+ }
35
+ function candidatesForRequest(config, app, request, cache) {
36
+ const candidates = [];
37
+ for (const targetServiceId of getAvailableServiceInstanceIdsForApp(config, app)) {
38
+ const manifest = getCachedManifestForService(config, targetServiceId, cache);
39
+ if (!manifest)
40
+ continue;
41
+ for (const rawContract of manifest.apiContracts) {
42
+ const parsed = ApiContractDescriptorSchema.safeParse(rawContract);
43
+ if (!parsed.success)
44
+ continue;
45
+ const contract = parsed.data;
46
+ if (contract.id !== request.contractId
47
+ || (request.version !== undefined && contract.version !== request.version)
48
+ || !contract.modes.includes(request.mode)
49
+ || !request.methods.every((method) => contract.methods.includes(method))
50
+ || !request.permissions.every((permission) => contract.permissions.includes(permission))
51
+ || !request.requiredCapabilities.every((capability) => contract.capabilities.includes(capability)))
52
+ continue;
53
+ const details = serviceDetails(config, targetServiceId);
54
+ candidates.push({
55
+ targetServiceId,
56
+ targetServiceTitle: details.title,
57
+ targetServiceType: details.serviceId,
58
+ targetViewId: contract.viewId
59
+ });
60
+ }
61
+ }
62
+ return candidates.filter((candidate, index, all) => all.findIndex((other) => other.targetServiceId === candidate.targetServiceId && other.targetViewId === candidate.targetViewId) === index);
63
+ }
64
+ export function buildM2MConnectionModel(config, appId, cache = getManifestCache()) {
65
+ const app = config.apps.find((candidate) => candidate.id === appId);
66
+ if (!app)
67
+ return [];
68
+ const available = getAvailableServiceInstanceIdsForApp(config, app);
69
+ const rows = [];
70
+ const seenBindings = new Set();
71
+ for (const sourceServiceId of available) {
72
+ const sourceManifest = getCachedManifestForService(config, sourceServiceId, cache);
73
+ const source = serviceDetails(config, sourceServiceId);
74
+ for (const request of requestsForManifest(sourceManifest)) {
75
+ const candidates = candidatesForRequest(config, app, request, cache);
76
+ const bindings = config.m2m.bindings.filter((binding) => binding.enabled
77
+ && binding.tenantId === app.tenantId
78
+ && binding.appId === app.id
79
+ && binding.sourceServiceId === sourceServiceId
80
+ && binding.requestId === request.id);
81
+ bindings.forEach((binding) => seenBindings.add(binding.id));
82
+ const binding = bindings[0];
83
+ const grant = binding
84
+ ? config.m2m.grants.find((candidate) => candidate.enabled && candidate.bindingId === binding.id)
85
+ : undefined;
86
+ const boundCandidate = binding
87
+ ? candidates.find((candidate) => candidate.targetServiceId === binding.targetServiceId && candidate.targetViewId === binding.targetViewId)
88
+ : undefined;
89
+ const grantMatches = Boolean(grant
90
+ && request.methods.every((method) => grant.methods.includes(method))
91
+ && request.permissions.every((permission) => grant.permissions.includes(permission)));
92
+ const connected = bindings.length === 1
93
+ && binding?.mode === request.mode
94
+ && binding.contractId === request.contractId
95
+ && Boolean(boundCandidate)
96
+ && grantMatches;
97
+ const status = binding
98
+ ? connected ? "connected" : "stale"
99
+ : candidates.length === 0 ? "unavailable" : candidates.length === 1 ? "pending" : "choice";
100
+ const message = status === "connected" ? "Connected"
101
+ : status === "stale" ? "Stored connection no longer matches the current manifests or grant"
102
+ : status === "pending" ? "Ready for approval"
103
+ : status === "choice" ? "Select a compatible provider"
104
+ : request.optional ? "Optional provider unavailable" : "No compatible provider";
105
+ rows.push({
106
+ sourceServiceId,
107
+ sourceServiceTitle: source.title,
108
+ sourceServiceType: source.serviceId,
109
+ requestId: request.id,
110
+ title: request.title,
111
+ contractId: request.contractId,
112
+ ...(request.version ? { version: request.version } : {}),
113
+ mode: request.mode,
114
+ methods: [...request.methods],
115
+ permissions: [...request.permissions],
116
+ optional: request.optional,
117
+ status,
118
+ message,
119
+ ...(binding ? {
120
+ bindingId: binding.id,
121
+ targetServiceId: binding.targetServiceId,
122
+ targetViewId: binding.targetViewId
123
+ } : {}),
124
+ candidates
125
+ });
126
+ }
127
+ }
128
+ for (const binding of config.m2m.bindings.filter((candidate) => candidate.enabled
129
+ && candidate.tenantId === app.tenantId
130
+ && candidate.appId === app.id
131
+ && !seenBindings.has(candidate.id))) {
132
+ const source = serviceDetails(config, binding.sourceServiceId);
133
+ rows.push({
134
+ sourceServiceId: binding.sourceServiceId,
135
+ sourceServiceTitle: source.title,
136
+ sourceServiceType: source.serviceId,
137
+ requestId: binding.requestId,
138
+ title: binding.requestId,
139
+ contractId: binding.contractId,
140
+ mode: binding.mode,
141
+ methods: [],
142
+ permissions: [],
143
+ optional: false,
144
+ status: "stale",
145
+ message: "Request is unavailable in the current source manifest",
146
+ bindingId: binding.id,
147
+ targetServiceId: binding.targetServiceId,
148
+ targetViewId: binding.targetViewId,
149
+ candidates: []
150
+ });
151
+ }
152
+ return rows.sort((left, right) => left.sourceServiceTitle.localeCompare(right.sourceServiceTitle)
153
+ || left.title.localeCompare(right.title));
154
+ }
155
+ export function approveM2MConnections(config, appId, selections, cache = getManifestCache()) {
156
+ const app = config.apps.find((candidate) => candidate.id === appId);
157
+ if (!app)
158
+ throw new M2MConnectionError("App not found", 404);
159
+ if (selections.length === 0)
160
+ throw new M2MConnectionError("At least one connection is required", 400);
161
+ const model = buildM2MConnectionModel(config, appId, cache);
162
+ const pending = [];
163
+ const existing = [];
164
+ const keys = new Set();
165
+ for (const selection of selections) {
166
+ const key = `${selection.sourceServiceId}\n${selection.requestId}`;
167
+ if (keys.has(key))
168
+ throw new M2MConnectionError(`Duplicate connection selection for ${selection.requestId}`, 400);
169
+ keys.add(key);
170
+ const row = model.find((candidate) => candidate.sourceServiceId === selection.sourceServiceId && candidate.requestId === selection.requestId);
171
+ if (!row)
172
+ throw new M2MConnectionError(`M2M request not found: ${selection.requestId}`, 404);
173
+ if (row.status === "connected" && row.bindingId) {
174
+ existing.push(row.bindingId);
175
+ continue;
176
+ }
177
+ if (row.bindingId)
178
+ throw new M2MConnectionError(`Revoke the stale connection before approving ${selection.requestId}`);
179
+ const candidates = row.candidates.filter((candidate) => (!selection.targetServiceId || candidate.targetServiceId === selection.targetServiceId)
180
+ && (!selection.targetViewId || candidate.targetViewId === selection.targetViewId));
181
+ if (candidates.length !== 1) {
182
+ throw new M2MConnectionError(candidates.length === 0
183
+ ? `No compatible provider for ${selection.requestId}`
184
+ : `Select one provider for ${selection.requestId}`);
185
+ }
186
+ pending.push({ row, candidate: candidates[0] });
187
+ }
188
+ const created = [];
189
+ const createdAt = new Date().toISOString();
190
+ for (const { row, candidate } of pending) {
191
+ const bindingId = uuidv7();
192
+ config.m2m.bindings.push({
193
+ id: bindingId,
194
+ tenantId: app.tenantId,
195
+ appId: app.id,
196
+ sourceServiceId: row.sourceServiceId,
197
+ requestId: row.requestId,
198
+ contractId: row.contractId,
199
+ targetServiceId: candidate.targetServiceId,
200
+ targetViewId: candidate.targetViewId,
201
+ mode: row.mode,
202
+ enabled: true,
203
+ createdAt
204
+ });
205
+ config.m2m.grants.push({
206
+ id: uuidv7(),
207
+ tenantId: app.tenantId,
208
+ appId: app.id,
209
+ bindingId,
210
+ methods: row.methods,
211
+ permissions: [...row.permissions],
212
+ enabled: true,
213
+ createdAt
214
+ });
215
+ created.push(bindingId);
216
+ }
217
+ return { created, existing };
218
+ }
219
+ export function revokeM2MConnection(config, appId, bindingId) {
220
+ const app = config.apps.find((candidate) => candidate.id === appId);
221
+ const binding = config.m2m.bindings.find((candidate) => candidate.id === bindingId);
222
+ if (!app || !binding || binding.appId !== app.id || binding.tenantId !== app.tenantId)
223
+ return false;
224
+ config.m2m.grants = config.m2m.grants.filter((grant) => grant.bindingId !== bindingId);
225
+ config.m2m.bindings = config.m2m.bindings.filter((candidate) => candidate.id !== bindingId);
226
+ return true;
227
+ }
228
+ //# sourceMappingURL=m2mConnections.js.map
@@ -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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"}
@@ -1 +1 @@
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
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../src/plugins/service-betterportal-config-manager/storage/core.ts"],"names":[],"mappings":"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"}
@@ -174,6 +174,13 @@ export class BaseStorage {
174
174
  ]);
175
175
  };
176
176
  seen("m2m binding", config.m2m.bindings.map((binding) => binding.id));
177
+ const activeConnectionKeys = new Set();
178
+ for (const binding of config.m2m.bindings.filter((candidate) => candidate.enabled)) {
179
+ const key = [binding.tenantId, binding.appId ?? "", binding.sourceServiceId, binding.requestId, binding.mode].join("\n");
180
+ if (activeConnectionKeys.has(key))
181
+ errors.push(`active m2m binding is duplicated for request ${binding.requestId}`);
182
+ activeConnectionKeys.add(key);
183
+ }
177
184
  for (const binding of config.m2m.bindings) {
178
185
  const tenant = tenantsById.get(binding.tenantId);
179
186
  if (!tenant || !tenant.active) {
@@ -199,6 +206,12 @@ export class BaseStorage {
199
206
  }
200
207
  const bindingsById = new Map(config.m2m.bindings.map((binding) => [binding.id, binding]));
201
208
  seen("m2m grant", config.m2m.grants.map((grant) => grant.id));
209
+ const activeGrantBindings = new Set();
210
+ for (const grant of config.m2m.grants.filter((candidate) => candidate.enabled)) {
211
+ if (activeGrantBindings.has(grant.bindingId))
212
+ errors.push(`m2m binding ${grant.bindingId} has multiple active grants`);
213
+ activeGrantBindings.add(grant.bindingId);
214
+ }
202
215
  for (const grant of config.m2m.grants) {
203
216
  const binding = bindingsById.get(grant.bindingId);
204
217
  if (!binding) {
@@ -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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"}
@@ -35,7 +35,7 @@
35
35
  "outputSchema": null
36
36
  }
37
37
  },
38
- "version": "10.1.41",
38
+ "version": "10.1.43",
39
39
  "configSchema": {
40
40
  "anyvaliVersion": "1.0",
41
41
  "schemaVersion": "1.1",
@@ -71,13 +71,6 @@
71
71
  "minLength": 1
72
72
  }
73
73
  },
74
- "configEncryptionKey": {
75
- "kind": "optional",
76
- "inner": {
77
- "kind": "string",
78
- "minLength": 16
79
- }
80
- },
81
74
  "controlPlaneUrl": {
82
75
  "kind": "optional",
83
76
  "inner": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "id": "service-betterportal-config-manager",
3
3
  "name": "service-betterportal-config-manager",
4
- "version": "10.1.41",
4
+ "version": "10.1.43",
5
5
  "description": "BetterPortal config management admin service",
6
6
  "category": "service",
7
7
  "tags": [
@@ -57,13 +57,6 @@
57
57
  "minLength": 1
58
58
  }
59
59
  },
60
- "configEncryptionKey": {
61
- "kind": "optional",
62
- "inner": {
63
- "kind": "string",
64
- "minLength": 16
65
- }
66
- },
67
60
  "controlPlaneUrl": {
68
61
  "kind": "optional",
69
62
  "inner": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@betterportal/config-manager",
3
- "version": "10.1.41",
3
+ "version": "10.1.43",
4
4
  "description": "BetterPortal admin config management service for Node.js",
5
5
  "main": "lib/index.js",
6
6
  "types": "src/index.ts",
@@ -28,16 +28,16 @@
28
28
  "license": "(AGPL-3.0-only OR Commercial)",
29
29
  "type": "module",
30
30
  "devDependencies": {
31
- "@bsb/tests": "^9.6.41",
31
+ "@bsb/tests": "^9.6.60",
32
32
  "@types/node": "^26.0.0",
33
33
  "@types/pg": "^8.20.0",
34
34
  "tsx": "^4.21.0",
35
35
  "typescript": "^6.0.3"
36
36
  },
37
37
  "dependencies": {
38
- "@betterportal/framework": "10.1.41",
39
- "@betterportal/plugin-bsb": "10.1.41",
40
- "@bsb/base": "^9.6.41",
38
+ "@betterportal/framework": "10.1.43",
39
+ "@betterportal/plugin-bsb": "10.1.43",
40
+ "@bsb/base": "^9.6.60",
41
41
  "anyvali": "^1.0.6",
42
42
  "jsx-htmx": "4.0.0-beta6"
43
43
  },