@rhino-dev/rhino-nestjs 4.6.1 → 4.7.2
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.
- package/dist/controllers/global.controller.d.ts +39 -0
- package/dist/controllers/global.controller.js +121 -3
- package/dist/controllers/global.controller.js.map +1 -1
- package/dist/exporters/postman-exporter.js +34 -0
- package/dist/exporters/postman-exporter.js.map +1 -1
- package/dist/guards/resource-policy.guard.js +6 -0
- package/dist/guards/resource-policy.guard.js.map +1 -1
- package/dist/interfaces/rhino-config.interface.d.ts +47 -0
- package/dist/middleware/tenant-route-rewrite.d.ts +2 -1
- package/dist/middleware/tenant-route-rewrite.js +10 -1
- package/dist/middleware/tenant-route-rewrite.js.map +1 -1
- package/dist/rhino.config.d.ts +12 -0
- package/dist/rhino.config.js +19 -0
- package/dist/rhino.config.js.map +1 -1
- package/dist/services/resource-scope.service.js +13 -2
- package/dist/services/resource-scope.service.js.map +1 -1
- package/dist/services/resource.service.d.ts +18 -0
- package/dist/services/resource.service.js +53 -0
- package/dist/services/resource.service.js.map +1 -1
- package/dist/services/serializer.service.d.ts +14 -0
- package/dist/services/serializer.service.js +38 -4
- package/dist/services/serializer.service.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -42,6 +42,45 @@ export declare class GlobalController {
|
|
|
42
42
|
private resolveIncludeTargetSlug;
|
|
43
43
|
/** Reverse lookup: the registered slug whose model name (or slug) matches. */
|
|
44
44
|
private slugForModelName;
|
|
45
|
+
/**
|
|
46
|
+
* GET /api/{resource}/computed?attributes=a,b
|
|
47
|
+
*
|
|
48
|
+
* Collection-level computed attributes: each declared callable is evaluated
|
|
49
|
+
* ONCE over the whole (scoped + filtered) collection instead of once per row,
|
|
50
|
+
* which is what makes aggregates such as `activeUsersCount` cheap.
|
|
51
|
+
*
|
|
52
|
+
* Omitting `?attributes=` returns every declared attribute the policy allows.
|
|
53
|
+
*/
|
|
54
|
+
/**
|
|
55
|
+
* Split a comma-separated attribute list, dropping blanks and duplicates.
|
|
56
|
+
* A non-string param (e.g. `?attributes[]=x`) is rejected outright.
|
|
57
|
+
*/
|
|
58
|
+
private parseAttributeList;
|
|
59
|
+
/**
|
|
60
|
+
* Whether the policy lets this user see a computed attribute.
|
|
61
|
+
*
|
|
62
|
+
* Computed attributes go through the SAME gate as columns:
|
|
63
|
+
* `hiddenAttributesForShow()` blacklists, and `permittedAttributesForShow()`
|
|
64
|
+
* whitelists unless it returns the `['*']` default.
|
|
65
|
+
*/
|
|
66
|
+
private computedAttributeAllowed;
|
|
67
|
+
/**
|
|
68
|
+
* Parse and authorize `?attributes=a,b` for the /computed endpoint.
|
|
69
|
+
*
|
|
70
|
+
* An undeclared name and a policy-denied name produce the SAME 403, so the
|
|
71
|
+
* endpoint never reveals which attributes a model declares. Omitting the
|
|
72
|
+
* param selects every declared attribute the policy allows.
|
|
73
|
+
*/
|
|
74
|
+
private resolveRequestedCollectionAttributes;
|
|
75
|
+
/**
|
|
76
|
+
* Parse and authorize `?computed_attributes=a,b` for index/show/trashed —
|
|
77
|
+
* the OPT-IN record-level computed attributes. Absent or empty means "none",
|
|
78
|
+
* which is byte-for-byte the pre-feature behavior.
|
|
79
|
+
*/
|
|
80
|
+
private resolveRequestedComputedAttributes;
|
|
81
|
+
computed(modelSlug: string, query: any, req: ReqWithCtx): Promise<{
|
|
82
|
+
data: Record<string, any>;
|
|
83
|
+
}>;
|
|
45
84
|
trashed(modelSlug: string, query: any, req: ReqWithCtx): Promise<import("../interceptors/response.interceptor").PaginatedShape | {
|
|
46
85
|
data: any[];
|
|
47
86
|
}>;
|
|
@@ -114,16 +114,115 @@ let GlobalController = class GlobalController {
|
|
|
114
114
|
}
|
|
115
115
|
return null;
|
|
116
116
|
}
|
|
117
|
+
/**
|
|
118
|
+
* GET /api/{resource}/computed?attributes=a,b
|
|
119
|
+
*
|
|
120
|
+
* Collection-level computed attributes: each declared callable is evaluated
|
|
121
|
+
* ONCE over the whole (scoped + filtered) collection instead of once per row,
|
|
122
|
+
* which is what makes aggregates such as `activeUsersCount` cheap.
|
|
123
|
+
*
|
|
124
|
+
* Omitting `?attributes=` returns every declared attribute the policy allows.
|
|
125
|
+
*/
|
|
126
|
+
/**
|
|
127
|
+
* Split a comma-separated attribute list, dropping blanks and duplicates.
|
|
128
|
+
* A non-string param (e.g. `?attributes[]=x`) is rejected outright.
|
|
129
|
+
*/
|
|
130
|
+
parseAttributeList(raw) {
|
|
131
|
+
if (typeof raw !== 'string') {
|
|
132
|
+
throw rhino_exception_1.RhinoException.forbidden('Computed attributes are not allowed');
|
|
133
|
+
}
|
|
134
|
+
return [...new Set(raw.split(',').map((s) => s.trim()).filter(Boolean))];
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Whether the policy lets this user see a computed attribute.
|
|
138
|
+
*
|
|
139
|
+
* Computed attributes go through the SAME gate as columns:
|
|
140
|
+
* `hiddenAttributesForShow()` blacklists, and `permittedAttributesForShow()`
|
|
141
|
+
* whitelists unless it returns the `['*']` default.
|
|
142
|
+
*/
|
|
143
|
+
computedAttributeAllowed(name, reg, req) {
|
|
144
|
+
if (!reg.policy)
|
|
145
|
+
return true;
|
|
146
|
+
const policy = new reg.policy();
|
|
147
|
+
const hidden = policy.hiddenAttributesForShow(req.user, req.organization) ?? [];
|
|
148
|
+
if (hidden.includes(name))
|
|
149
|
+
return false;
|
|
150
|
+
const permitted = policy.permittedAttributesForShow(req.user, req.organization) ?? ['*'];
|
|
151
|
+
if (permitted.length === 1 && permitted[0] === '*')
|
|
152
|
+
return true;
|
|
153
|
+
return permitted.includes(name);
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Parse and authorize `?attributes=a,b` for the /computed endpoint.
|
|
157
|
+
*
|
|
158
|
+
* An undeclared name and a policy-denied name produce the SAME 403, so the
|
|
159
|
+
* endpoint never reveals which attributes a model declares. Omitting the
|
|
160
|
+
* param selects every declared attribute the policy allows.
|
|
161
|
+
*/
|
|
162
|
+
resolveRequestedCollectionAttributes(raw, declared, reg, req) {
|
|
163
|
+
if (raw == null || raw === '') {
|
|
164
|
+
return Object.keys(declared).filter((name) => this.computedAttributeAllowed(name, reg, req));
|
|
165
|
+
}
|
|
166
|
+
const names = this.parseAttributeList(raw);
|
|
167
|
+
for (const name of names) {
|
|
168
|
+
const isDeclared = Object.prototype.hasOwnProperty.call(declared, name);
|
|
169
|
+
if (!isDeclared || !this.computedAttributeAllowed(name, reg, req)) {
|
|
170
|
+
throw rhino_exception_1.RhinoException.forbidden(`Computed attribute '${name}' is not allowed`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return names;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Parse and authorize `?computed_attributes=a,b` for index/show/trashed —
|
|
177
|
+
* the OPT-IN record-level computed attributes. Absent or empty means "none",
|
|
178
|
+
* which is byte-for-byte the pre-feature behavior.
|
|
179
|
+
*/
|
|
180
|
+
resolveRequestedComputedAttributes(query, reg, req) {
|
|
181
|
+
const raw = query?.computed_attributes ?? query?.computedAttributes;
|
|
182
|
+
if (raw == null || raw === '')
|
|
183
|
+
return [];
|
|
184
|
+
const names = this.parseAttributeList(raw);
|
|
185
|
+
if (names.length === 0)
|
|
186
|
+
return [];
|
|
187
|
+
const declared = reg.recordComputedAttributes ?? {};
|
|
188
|
+
for (const name of names) {
|
|
189
|
+
const isDeclared = Object.prototype.hasOwnProperty.call(declared, name);
|
|
190
|
+
if (!isDeclared || !this.computedAttributeAllowed(name, reg, req)) {
|
|
191
|
+
throw rhino_exception_1.RhinoException.forbidden(`Computed attribute '${name}' is not allowed`);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
return names;
|
|
195
|
+
}
|
|
196
|
+
async computed(modelSlug, query, req) {
|
|
197
|
+
const reg = this.assertActionAllowed(modelSlug, 'computed');
|
|
198
|
+
const declared = reg.collectionComputedAttributes;
|
|
199
|
+
// A model that declares nothing keeps the pre-feature behavior: the path
|
|
200
|
+
// is simply not a resource of this API.
|
|
201
|
+
if (!declared || Object.keys(declared).length === 0) {
|
|
202
|
+
throw rhino_exception_1.RhinoException.notFound();
|
|
203
|
+
}
|
|
204
|
+
const names = this.resolveRequestedCollectionAttributes(query?.attributes, declared, reg, req);
|
|
205
|
+
const data = await this.resources.computeCollectionAttributes(modelSlug, query, names, {
|
|
206
|
+
user: req.user,
|
|
207
|
+
organization: req.organization,
|
|
208
|
+
});
|
|
209
|
+
return { data };
|
|
210
|
+
}
|
|
117
211
|
async trashed(modelSlug, query, req) {
|
|
118
212
|
const reg = this.assertActionAllowed(modelSlug, 'trashed');
|
|
119
213
|
if (!reg.softDeletes)
|
|
120
214
|
throw rhino_exception_1.RhinoException.actionDisabled('trashed');
|
|
215
|
+
const computedAttributes = this.resolveRequestedComputedAttributes(query, reg, req);
|
|
121
216
|
const result = await this.resources.findAll(modelSlug, query, {
|
|
122
217
|
user: req.user,
|
|
123
218
|
organization: req.organization,
|
|
124
219
|
onlyTrashed: true,
|
|
125
220
|
});
|
|
126
|
-
const items = this.serializer.serializeMany(result.items, reg, {
|
|
221
|
+
const items = this.serializer.serializeMany(result.items, reg, {
|
|
222
|
+
user: req.user,
|
|
223
|
+
organization: req.organization,
|
|
224
|
+
computedAttributes,
|
|
225
|
+
});
|
|
127
226
|
if (result.total != null) {
|
|
128
227
|
return (0, response_interceptor_1.paginated)(items, result.total, result.page, result.perPage);
|
|
129
228
|
}
|
|
@@ -132,11 +231,16 @@ let GlobalController = class GlobalController {
|
|
|
132
231
|
async index(modelSlug, query, req) {
|
|
133
232
|
const reg = this.assertActionAllowed(modelSlug, 'index');
|
|
134
233
|
this.assertIncludesAuthorized(query?.include, req, modelSlug);
|
|
234
|
+
const computedAttributes = this.resolveRequestedComputedAttributes(query, reg, req);
|
|
135
235
|
const result = await this.resources.findAll(modelSlug, query, {
|
|
136
236
|
user: req.user,
|
|
137
237
|
organization: req.organization,
|
|
138
238
|
});
|
|
139
|
-
const items = this.serializer.serializeMany(result.items, reg, {
|
|
239
|
+
const items = this.serializer.serializeMany(result.items, reg, {
|
|
240
|
+
user: req.user,
|
|
241
|
+
organization: req.organization,
|
|
242
|
+
computedAttributes,
|
|
243
|
+
});
|
|
140
244
|
if (result.total != null) {
|
|
141
245
|
return (0, response_interceptor_1.paginated)(items, result.total, result.page, result.perPage);
|
|
142
246
|
}
|
|
@@ -145,13 +249,18 @@ let GlobalController = class GlobalController {
|
|
|
145
249
|
async show(modelSlug, id, query, req) {
|
|
146
250
|
const reg = this.assertActionAllowed(modelSlug, 'show');
|
|
147
251
|
this.assertIncludesAuthorized(query?.include, req, modelSlug);
|
|
252
|
+
const computedAttributes = this.resolveRequestedComputedAttributes(query, reg, req);
|
|
148
253
|
const record = await this.resources.findOne(modelSlug, id, query, {
|
|
149
254
|
user: req.user,
|
|
150
255
|
organization: req.organization,
|
|
151
256
|
});
|
|
152
257
|
if (!record)
|
|
153
258
|
throw rhino_exception_1.RhinoException.notFound();
|
|
154
|
-
return this.serializer.serializeOne(record, reg, {
|
|
259
|
+
return this.serializer.serializeOne(record, reg, {
|
|
260
|
+
user: req.user,
|
|
261
|
+
organization: req.organization,
|
|
262
|
+
computedAttributes,
|
|
263
|
+
});
|
|
155
264
|
}
|
|
156
265
|
async store(modelSlug, body, req) {
|
|
157
266
|
const reg = this.assertActionAllowed(modelSlug, 'store');
|
|
@@ -315,6 +424,15 @@ let GlobalController = class GlobalController {
|
|
|
315
424
|
}
|
|
316
425
|
};
|
|
317
426
|
exports.GlobalController = GlobalController;
|
|
427
|
+
__decorate([
|
|
428
|
+
(0, common_1.Get)(':modelSlug/computed'),
|
|
429
|
+
__param(0, (0, common_1.Param)('modelSlug')),
|
|
430
|
+
__param(1, (0, common_1.Query)()),
|
|
431
|
+
__param(2, (0, common_1.Req)()),
|
|
432
|
+
__metadata("design:type", Function),
|
|
433
|
+
__metadata("design:paramtypes", [String, Object, Object]),
|
|
434
|
+
__metadata("design:returntype", Promise)
|
|
435
|
+
], GlobalController.prototype, "computed", null);
|
|
318
436
|
__decorate([
|
|
319
437
|
(0, common_1.Get)(':modelSlug/trashed'),
|
|
320
438
|
__param(0, (0, common_1.Param)('modelSlug')),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global.controller.js","sourceRoot":"","sources":["../../src/controllers/global.controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"global.controller.js","sourceRoot":"","sources":["../../src/controllers/global.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -171,6 +171,13 @@ function buildModelFolder(slug, reg, groupPrefix) {
|
|
|
171
171
|
if (!exceptActions.includes('destroy')) {
|
|
172
172
|
folders.push({ name: 'Destroy', item: buildDestroyRequests(basePath) });
|
|
173
173
|
}
|
|
174
|
+
const collectionComputed = Object.keys(reg.collectionComputedAttributes ?? {});
|
|
175
|
+
if (collectionComputed.length > 0 && !exceptActions.includes('computed')) {
|
|
176
|
+
folders.push({
|
|
177
|
+
name: 'Computed Attributes',
|
|
178
|
+
item: buildComputedRequests(basePath, collectionComputed),
|
|
179
|
+
});
|
|
180
|
+
}
|
|
174
181
|
if (reg.softDeletes) {
|
|
175
182
|
if (!exceptActions.includes('trashed')) {
|
|
176
183
|
folders.push({ name: 'Trashed', item: buildTrashedRequests(basePath, reg) });
|
|
@@ -223,6 +230,11 @@ function buildIndexRequests(basePath, slug, reg) {
|
|
|
223
230
|
[`fields[${slug}]`]: fields.slice(0, 5).join(','),
|
|
224
231
|
}, hdrs));
|
|
225
232
|
}
|
|
233
|
+
for (const attribute of Object.keys(reg.recordComputedAttributes ?? {})) {
|
|
234
|
+
requests.push(requestItem(`With computed attribute ${attribute}`, 'GET', basePath, {
|
|
235
|
+
computed_attributes: attribute,
|
|
236
|
+
}, hdrs));
|
|
237
|
+
}
|
|
226
238
|
if ((reg.allowedSearch ?? []).length > 0) {
|
|
227
239
|
requests.push(requestItem('Search', 'GET', basePath, { search: 'example' }, hdrs));
|
|
228
240
|
}
|
|
@@ -249,6 +261,23 @@ function buildIndexRequests(basePath, slug, reg) {
|
|
|
249
261
|
requests.push(requestItem('Combined', 'GET', basePath, combined, hdrs));
|
|
250
262
|
return requests;
|
|
251
263
|
}
|
|
264
|
+
/** Requests for GET {resource}/computed — the collection-level aggregates. */
|
|
265
|
+
function buildComputedRequests(basePath, attributes) {
|
|
266
|
+
const hdrs = defaultHeaders();
|
|
267
|
+
const path = `${basePath}/computed`;
|
|
268
|
+
const requests = [
|
|
269
|
+
requestItem('All computed attributes', 'GET', path, {}, hdrs),
|
|
270
|
+
];
|
|
271
|
+
for (const attribute of attributes) {
|
|
272
|
+
requests.push(requestItem(`Computed: ${attribute}`, 'GET', path, { attributes: attribute }, hdrs));
|
|
273
|
+
}
|
|
274
|
+
if (attributes.length > 1) {
|
|
275
|
+
requests.push(requestItem('Computed: multiple attributes', 'GET', path, {
|
|
276
|
+
attributes: attributes.join(','),
|
|
277
|
+
}, hdrs));
|
|
278
|
+
}
|
|
279
|
+
return requests;
|
|
280
|
+
}
|
|
252
281
|
function buildShowRequests(basePath, slug, reg) {
|
|
253
282
|
const path = `${basePath}/{{modelId}}`;
|
|
254
283
|
const hdrs = defaultHeaders();
|
|
@@ -265,6 +294,11 @@ function buildShowRequests(basePath, slug, reg) {
|
|
|
265
294
|
[`fields[${slug}]`]: fields.slice(0, 5).join(','),
|
|
266
295
|
}, hdrs));
|
|
267
296
|
}
|
|
297
|
+
for (const attribute of Object.keys(reg.recordComputedAttributes ?? {})) {
|
|
298
|
+
requests.push(requestItem(`Show with computed attribute ${attribute}`, 'GET', path, {
|
|
299
|
+
computed_attributes: attribute,
|
|
300
|
+
}, hdrs));
|
|
301
|
+
}
|
|
268
302
|
return requests;
|
|
269
303
|
}
|
|
270
304
|
function buildStoreRequests(basePath, reg) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postman-exporter.js","sourceRoot":"","sources":["../../src/exporters/postman-exporter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"postman-exporter.js","sourceRoot":"","sources":["../../src/exporters/postman-exporter.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,6 +66,10 @@ let ResourcePolicyGuard = class ResourcePolicyGuard {
|
|
|
66
66
|
case 'trashed':
|
|
67
67
|
allowed = policy.viewTrashed(user, org);
|
|
68
68
|
break;
|
|
69
|
+
case 'computed':
|
|
70
|
+
// The /computed endpoint is a collection read — same gate as index.
|
|
71
|
+
allowed = policy.viewAny(user, org);
|
|
72
|
+
break;
|
|
69
73
|
case 'restore':
|
|
70
74
|
allowed = policy.restore(user, null, org);
|
|
71
75
|
break;
|
|
@@ -88,6 +92,8 @@ let ResourcePolicyGuard = class ResourcePolicyGuard {
|
|
|
88
92
|
const last = parts[parts.length - 1];
|
|
89
93
|
if (method === 'GET' && last === 'trashed')
|
|
90
94
|
return 'trashed';
|
|
95
|
+
if (method === 'GET' && last === 'computed')
|
|
96
|
+
return 'computed';
|
|
91
97
|
if (method === 'POST' && last === 'restore')
|
|
92
98
|
return 'restore';
|
|
93
99
|
if (method === 'DELETE' && (last === 'force-delete' || last === 'force'))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-policy.guard.js","sourceRoot":"","sources":["../../src/guards/resource-policy.guard.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"resource-policy.guard.js","sourceRoot":"","sources":["../../src/guards/resource-policy.guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,22 @@ import type { ZodSchema } from 'zod';
|
|
|
4
4
|
import type { ResourcePolicy } from '../policies/resource-policy';
|
|
5
5
|
import type { PrismaClientLike } from '../prisma/prisma.service';
|
|
6
6
|
import type { RhinoNamedScope } from '../services/scope.service';
|
|
7
|
+
/** Callable behind an opt-in record-level computed attribute. */
|
|
8
|
+
export type RecordComputedAttribute = (record: any, user: any) => any;
|
|
9
|
+
/** Context handed to a collection-level computed attribute. */
|
|
10
|
+
export interface CollectionComputedContext {
|
|
11
|
+
/** Fully scoped Prisma where filter — org scope, model scopes, ?scope=, ?filter[]=, ?search=. */
|
|
12
|
+
where: Record<string, any>;
|
|
13
|
+
/** Prisma delegate for this model (e.g. `prisma.user`). */
|
|
14
|
+
delegate: any;
|
|
15
|
+
/** The Prisma client, for aggregates that need to reach other models. */
|
|
16
|
+
prisma: PrismaClientLike;
|
|
17
|
+
user?: any;
|
|
18
|
+
organization?: any;
|
|
19
|
+
modelSlug: string;
|
|
20
|
+
}
|
|
21
|
+
/** Callable behind a collection-level computed attribute. */
|
|
22
|
+
export type CollectionComputedAttribute = (ctx: CollectionComputedContext) => any | Promise<any>;
|
|
7
23
|
export interface ModelRegistration {
|
|
8
24
|
/** Prisma model name (camelCase or PascalCase — matches the delegate on prisma client) */
|
|
9
25
|
model: string;
|
|
@@ -50,6 +66,30 @@ export interface ModelRegistration {
|
|
|
50
66
|
additionalHiddenColumns?: string[];
|
|
51
67
|
auditExclude?: string[];
|
|
52
68
|
computedAttributes?: (record: any, user: any) => Record<string, any>;
|
|
69
|
+
/**
|
|
70
|
+
* OPT-IN record-level computed attributes. Unlike `computedAttributes`,
|
|
71
|
+
* nothing here is evaluated unless the client names it in
|
|
72
|
+
* `?computed_attributes=a,b` on index/show/trashed — so expensive per-row
|
|
73
|
+
* work is only paid for when it is actually wanted. Merged before policy
|
|
74
|
+
* filtering, so `hiddenAttributesForShow()` / `permittedAttributesForShow()`
|
|
75
|
+
* still govern them.
|
|
76
|
+
*/
|
|
77
|
+
recordComputedAttributes?: Record<string, RecordComputedAttribute>;
|
|
78
|
+
/**
|
|
79
|
+
* COLLECTION-level computed attributes, served by
|
|
80
|
+
* `GET /api/{resource}/computed?attributes=a,b`. Each entry is evaluated
|
|
81
|
+
* ONCE for the whole collection — not once per row — which is what makes
|
|
82
|
+
* aggregates such as `activeUsersCount` cheap.
|
|
83
|
+
*
|
|
84
|
+
* `ctx.where` is the fully scoped Prisma filter (organization scope, model
|
|
85
|
+
* scopes, `?scope=`, `?filter[]=` and `?search=` already applied), and
|
|
86
|
+
* `ctx.delegate` is the Prisma delegate for the model, so the usual shape is
|
|
87
|
+
* `ctx.delegate.count({ where: { ...ctx.where, status: 'active' } })`.
|
|
88
|
+
*
|
|
89
|
+
* Declaring at least one attribute here is what makes the `/computed` route
|
|
90
|
+
* respond for the model.
|
|
91
|
+
*/
|
|
92
|
+
collectionComputedAttributes?: Record<string, CollectionComputedAttribute>;
|
|
53
93
|
scopes?: Type<any>[];
|
|
54
94
|
/**
|
|
55
95
|
* Client-selectable named scopes for ?scope=<key>. Only declared keys are
|
|
@@ -131,6 +171,13 @@ export interface RouteGroupConfig {
|
|
|
131
171
|
* store a NULL org. When omitted, a group is treated as a tenant group iff
|
|
132
172
|
* multi-tenancy is enabled. Set `tenant: false` for org-less groups even when
|
|
133
173
|
* multi-tenancy is on.
|
|
174
|
+
*
|
|
175
|
+
* `tenant: false` also tells the resource-scope resolver
|
|
176
|
+
* (`ResourceScopeService`) that queries made in this group legitimately span
|
|
177
|
+
* every organization: it applies no organization filter and does not throw
|
|
178
|
+
* TENANT_CONTEXT_REQUIRED for an org-scoped model, leaving access to the
|
|
179
|
+
* model's own `scopes`. Only an explicit `false` opts out — every other group
|
|
180
|
+
* keeps failing closed — and an explicit `ctx.organization` still scopes.
|
|
134
181
|
*/
|
|
135
182
|
tenant?: boolean;
|
|
136
183
|
}
|
|
@@ -10,7 +10,8 @@ export interface TenantRouteRewriteOptions {
|
|
|
10
10
|
/**
|
|
11
11
|
* Path segments to treat as non-tenant even when they match an org slug
|
|
12
12
|
* (they sit at the api root). Defaults cover the library's built-in
|
|
13
|
-
* public/auth endpoints plus `nested`.
|
|
13
|
+
* public/auth endpoints plus `nested`. The prefixes of every route group
|
|
14
|
+
* declared `tenant: false` are always added to this list.
|
|
14
15
|
*/
|
|
15
16
|
reservedSegments?: string[];
|
|
16
17
|
/**
|
|
@@ -43,7 +43,16 @@ exports.createTenantRouteRewrite = createTenantRouteRewrite;
|
|
|
43
43
|
*/
|
|
44
44
|
function createTenantRouteRewrite(args) {
|
|
45
45
|
const { apiPrefix = 'api', reservedSegments = ['auth', 'invitations', 'nested'], strict = true, enforceMembership = true, } = args.options ?? {};
|
|
46
|
-
|
|
46
|
+
// Non-tenant route groups (`tenant: false`) live at the API root, alongside
|
|
47
|
+
// auth/invitations/nested — their first path segment is never an organization
|
|
48
|
+
// slug, so it must pass through unrewritten. Merged in rather than replacing
|
|
49
|
+
// an explicit `reservedSegments`, so declaring a back-office group is enough
|
|
50
|
+
// to make its routes reachable.
|
|
51
|
+
const nonTenantPrefixes = Object.values(args.config.routeGroups ?? {})
|
|
52
|
+
.filter((group) => group?.tenant === false)
|
|
53
|
+
.map((group) => String(group?.prefix ?? '').replace(/^\/+/, '').split('/')[0])
|
|
54
|
+
.filter((segment) => segment !== '' && !segment.startsWith(':') && !segment.startsWith('{'));
|
|
55
|
+
const reserved = new Set([...reservedSegments, ...nonTenantPrefixes]);
|
|
47
56
|
const orgModel = args.config.multiTenant?.organizationModel ?? 'organization';
|
|
48
57
|
const userOrgModel = args.config.multiTenant?.userOrganizationModel ?? 'userRole';
|
|
49
58
|
const idColumn = args.config.multiTenant?.organizationIdentifierColumn ?? 'slug';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant-route-rewrite.js","sourceRoot":"","sources":["../../src/middleware/tenant-route-rewrite.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"tenant-route-rewrite.js","sourceRoot":"","sources":["../../src/middleware/tenant-route-rewrite.ts"],"names":[],"mappings":"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"}
|
package/dist/rhino.config.d.ts
CHANGED
|
@@ -49,6 +49,18 @@ export declare class RhinoConfigService {
|
|
|
49
49
|
* predicate: multi-tenant enabled and not the public group.
|
|
50
50
|
*/
|
|
51
51
|
isTenantGroup(name: string | null | undefined): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Whether the resource-scope resolver must fail closed for a request served
|
|
54
|
+
* by route group `name` — i.e. whether that group has a tenant boundary.
|
|
55
|
+
*
|
|
56
|
+
* Deliberately STRICTER than {@link isTenantGroup}, which answers a
|
|
57
|
+
* membership question and treats the conventional `public` group as org-less:
|
|
58
|
+
* here only a group that explicitly declares `tenant: false` opts out, so a
|
|
59
|
+
* query that reaches an organization-scoped model in any other group (an
|
|
60
|
+
* unknown group, an untagged request, a `public` group, or no request at all)
|
|
61
|
+
* still fails closed instead of silently spanning every tenant.
|
|
62
|
+
*/
|
|
63
|
+
groupHasTenantBoundary(name: string | null | undefined): boolean;
|
|
52
64
|
multiTenantEnabled(): boolean;
|
|
53
65
|
organizationIdentifierColumn(): string;
|
|
54
66
|
/**
|
package/dist/rhino.config.js
CHANGED
|
@@ -114,6 +114,25 @@ let RhinoConfigService = class RhinoConfigService {
|
|
|
114
114
|
// Default: a group is org-scoped iff multi-tenancy is enabled.
|
|
115
115
|
return this.multiTenantEnabled();
|
|
116
116
|
}
|
|
117
|
+
/**
|
|
118
|
+
* Whether the resource-scope resolver must fail closed for a request served
|
|
119
|
+
* by route group `name` — i.e. whether that group has a tenant boundary.
|
|
120
|
+
*
|
|
121
|
+
* Deliberately STRICTER than {@link isTenantGroup}, which answers a
|
|
122
|
+
* membership question and treats the conventional `public` group as org-less:
|
|
123
|
+
* here only a group that explicitly declares `tenant: false` opts out, so a
|
|
124
|
+
* query that reaches an organization-scoped model in any other group (an
|
|
125
|
+
* unknown group, an untagged request, a `public` group, or no request at all)
|
|
126
|
+
* still fails closed instead of silently spanning every tenant.
|
|
127
|
+
*/
|
|
128
|
+
groupHasTenantBoundary(name) {
|
|
129
|
+
if (!name)
|
|
130
|
+
return true;
|
|
131
|
+
const group = this.routeGroup(name);
|
|
132
|
+
if (!group)
|
|
133
|
+
return true;
|
|
134
|
+
return group.tenant !== false;
|
|
135
|
+
}
|
|
117
136
|
multiTenantEnabled() {
|
|
118
137
|
const mt = this.config.multiTenant;
|
|
119
138
|
if (!mt)
|