@carlonicora/nestjs-neo4jsonapi 6.5.1 → 6.6.0
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/common/helpers/define-entity.d.ts.map +1 -1
- package/dist/common/helpers/define-entity.js +15 -1
- package/dist/common/helpers/define-entity.js.map +1 -1
- package/dist/common/interfaces/entity.schema.interface.d.ts +26 -0
- package/dist/common/interfaces/entity.schema.interface.d.ts.map +1 -1
- package/dist/common/registries/entity-tenancy.registry.d.ts +76 -0
- package/dist/common/registries/entity-tenancy.registry.d.ts.map +1 -0
- package/dist/common/registries/entity-tenancy.registry.js +66 -0
- package/dist/common/registries/entity-tenancy.registry.js.map +1 -0
- package/dist/common/registries/index.d.ts +1 -0
- package/dist/common/registries/index.d.ts.map +1 -1
- package/dist/common/registries/index.js +1 -0
- package/dist/common/registries/index.js.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.repository.d.ts +34 -0
- package/dist/core/neo4j/abstracts/abstract.repository.d.ts.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.repository.js +85 -49
- package/dist/core/neo4j/abstracts/abstract.repository.js.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.service.d.ts +7 -0
- package/dist/core/neo4j/abstracts/abstract.service.d.ts.map +1 -1
- package/dist/core/neo4j/abstracts/abstract.service.js +27 -4
- package/dist/core/neo4j/abstracts/abstract.service.js.map +1 -1
- package/dist/core/neo4j/helpers/build-order-by.d.ts +12 -0
- package/dist/core/neo4j/helpers/build-order-by.d.ts.map +1 -1
- package/dist/core/neo4j/helpers/build-order-by.js +22 -0
- package/dist/core/neo4j/helpers/build-order-by.js.map +1 -1
- package/dist/core/neo4j/queries/update.relationship.d.ts +7 -2
- package/dist/core/neo4j/queries/update.relationship.d.ts.map +1 -1
- package/dist/core/neo4j/queries/update.relationship.js +28 -13
- package/dist/core/neo4j/queries/update.relationship.js.map +1 -1
- package/dist/core/neo4j/services/neo4j.service.d.ts +24 -0
- package/dist/core/neo4j/services/neo4j.service.d.ts.map +1 -1
- package/dist/core/neo4j/services/neo4j.service.js +94 -0
- package/dist/core/neo4j/services/neo4j.service.js.map +1 -1
- package/dist/foundations/ai-connection/entities/ai-connection.d.ts +1 -0
- package/dist/foundations/ai-connection/entities/ai-connection.d.ts.map +1 -1
- package/dist/foundations/ai-connection/entities/ai-connection.js +3 -0
- package/dist/foundations/ai-connection/entities/ai-connection.js.map +1 -1
- package/dist/foundations/ai-connection/repositories/ai-connection.repository.d.ts +1 -0
- package/dist/foundations/ai-connection/repositories/ai-connection.repository.d.ts.map +1 -1
- package/dist/foundations/ai-connection/services/ai-connection.service.d.ts +1 -0
- package/dist/foundations/ai-connection/services/ai-connection.service.d.ts.map +1 -1
- package/dist/foundations/rbac/controllers/rbac-dev.controller.d.ts +9 -0
- package/dist/foundations/rbac/controllers/rbac-dev.controller.d.ts.map +1 -1
- package/dist/foundations/rbac/controllers/rbac-dev.controller.js +27 -3
- package/dist/foundations/rbac/controllers/rbac-dev.controller.js.map +1 -1
- package/dist/foundations/rbac/rbac.module.d.ts.map +1 -1
- package/dist/foundations/rbac/rbac.module.js +2 -1
- package/dist/foundations/rbac/rbac.module.js.map +1 -1
- package/dist/foundations/role/entities/role.d.ts.map +1 -1
- package/dist/foundations/role/entities/role.js +4 -0
- package/dist/foundations/role/entities/role.js.map +1 -1
- package/dist/foundations/user/controllers/user.controller.d.ts.map +1 -1
- package/dist/foundations/user/controllers/user.controller.js +15 -3
- package/dist/foundations/user/controllers/user.controller.js.map +1 -1
- package/package.json +1 -1
|
@@ -15,8 +15,13 @@ export declare const updateRelationshipQuery: (params: {
|
|
|
15
15
|
* Opt-in: only link target nodes that BELONG_TO the company in `$companyId`
|
|
16
16
|
* (set by `Neo4jService.initQuery()`). For writes whose target ids come from
|
|
17
17
|
* request input, so an id of another firm's node never gets an edge. Pair it
|
|
18
|
-
* with `Neo4jService.
|
|
19
|
-
*
|
|
18
|
+
* with `Neo4jService.validateRelatedNodes()` to refuse the request instead of
|
|
19
|
+
* silently skipping the foreign id.
|
|
20
|
+
*
|
|
21
|
+
* The linking runs inside a unit `CALL {}` subquery, so ids filtered out here
|
|
22
|
+
* never reduce the outer row count: clauses appended after this fragment
|
|
23
|
+
* (further relationships, SETs) still run once for `node`, even when every id
|
|
24
|
+
* was filtered out.
|
|
20
25
|
*/
|
|
21
26
|
companyScoped?: boolean;
|
|
22
27
|
}) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.relationship.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/queries/update.relationship.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,GAAI,QAAQ;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,sBAAsB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAAC;IAC7F,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB
|
|
1
|
+
{"version":3,"file":"update.relationship.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/queries/update.relationship.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,GAAI,QAAQ;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,sBAAsB,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAAC;IAC7F,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,KAAG,MA0FH,CAAC"}
|
|
@@ -44,24 +44,39 @@ const updateRelationshipQuery = (params) => {
|
|
|
44
44
|
.join(", ");
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
+
const relPattern = `${params.relationshipToNode ? "-" : "<-"}[rel:${params.relationshipName}]${params.relationshipToNode ? "->" : "-"}`;
|
|
48
|
+
const setClause = relationshipProps
|
|
49
|
+
? `SET ${relationshipProps}, rel.updatedAt = datetime()`
|
|
50
|
+
: `SET rel.updatedAt = datetime()`;
|
|
51
|
+
let linkClause = ``;
|
|
52
|
+
if (params.values && params.values.length > 0) {
|
|
53
|
+
linkClause = params.companyScoped
|
|
54
|
+
? `
|
|
55
|
+
WITH ${params.node}
|
|
56
|
+
CALL {
|
|
57
|
+
WITH ${params.node}
|
|
58
|
+
UNWIND $${paramAlias} AS id
|
|
59
|
+
MATCH (new:${params.label} {id: id})
|
|
60
|
+
WHERE EXISTS { (new)-[:BELONGS_TO]->(:Company {id: $companyId}) }
|
|
61
|
+
MERGE (${params.node})${relPattern}(new)
|
|
62
|
+
${setClause}
|
|
63
|
+
}
|
|
64
|
+
`
|
|
65
|
+
: `
|
|
66
|
+
WITH ${params.node}, $${paramAlias} AS ${paramAlias}
|
|
67
|
+
UNWIND ${paramAlias} AS id
|
|
68
|
+
MATCH (new:${params.label} {id: id})
|
|
69
|
+
MERGE (${params.node})${relPattern}(new)
|
|
70
|
+
${setClause}
|
|
71
|
+
`;
|
|
72
|
+
}
|
|
47
73
|
return `
|
|
48
74
|
WITH ${params.node}
|
|
49
|
-
OPTIONAL MATCH (${params.node})${
|
|
75
|
+
OPTIONAL MATCH (${params.node})${relPattern}(existing:${params.label})
|
|
50
76
|
WHERE NOT existing.id IN $${paramAlias}
|
|
51
77
|
DELETE rel
|
|
52
78
|
|
|
53
|
-
${
|
|
54
|
-
? `
|
|
55
|
-
WITH ${params.node}, $${paramAlias} AS ${paramAlias}
|
|
56
|
-
UNWIND ${paramAlias} AS id
|
|
57
|
-
MATCH (new:${params.label} {id: id})${params.companyScoped
|
|
58
|
-
? `
|
|
59
|
-
WHERE EXISTS { (new)-[:BELONGS_TO]->(:Company {id: $companyId}) }`
|
|
60
|
-
: ``}
|
|
61
|
-
MERGE (${params.node})${params.relationshipToNode ? "-" : "<-"}[rel:${params.relationshipName}]${params.relationshipToNode ? "->" : "-"}(new)
|
|
62
|
-
${relationshipProps ? `SET ${relationshipProps}, rel.updatedAt = datetime()` : `SET rel.updatedAt = datetime()`}
|
|
63
|
-
`
|
|
64
|
-
: ``}
|
|
79
|
+
${linkClause}
|
|
65
80
|
`;
|
|
66
81
|
};
|
|
67
82
|
exports.updateRelationshipQuery = updateRelationshipQuery;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.relationship.js","sourceRoot":"","sources":["../../../../src/core/neo4j/queries/update.relationship.ts"],"names":[],"mappings":";;;AAAO,MAAM,uBAAuB,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"update.relationship.js","sourceRoot":"","sources":["../../../../src/core/neo4j/queries/update.relationship.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import { ConfigService } from "@nestjs/config";
|
|
|
3
3
|
import { Driver } from "neo4j-driver";
|
|
4
4
|
import { ClsService } from "nestjs-cls";
|
|
5
5
|
import { DataModelInterface } from "../../../common/interfaces/datamodel.interface";
|
|
6
|
+
import { RelatedNodeRule } from "../../../common/registries/entity-tenancy.registry";
|
|
6
7
|
import { JsonApiCursorInterface } from "../../jsonapi/interfaces/jsonapi.cursor.interface";
|
|
7
8
|
import { AppLoggingService } from "../../logging/services/logging.service";
|
|
8
9
|
import { EntityFactory } from "../factories/entity.factory";
|
|
@@ -67,6 +68,29 @@ export declare class Neo4jService implements OnModuleInit, OnModuleDestroy {
|
|
|
67
68
|
companyId?: string;
|
|
68
69
|
}[];
|
|
69
70
|
}): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* Throws `BadRequestException("One or more related nodes do not exist.")` unless every node
|
|
73
|
+
* exists AND satisfies its company rule for `companyId` (default: the CLS company). A node of
|
|
74
|
+
* another company fails exactly like a missing one, so a caller cannot probe foreign ids.
|
|
75
|
+
*
|
|
76
|
+
* `rule` defaults to the one the target label declares (`relatedNodeRuleForLabel`, filled by
|
|
77
|
+
* `defineEntity`). With no company (system jobs, workers) every rule is existence-only.
|
|
78
|
+
*
|
|
79
|
+
* One read query: nodes are grouped by label + rule, each group is one
|
|
80
|
+
* `UNWIND $ids MATCH ... WHERE <rule> RETURN count(DISTINCT t)` subquery, and the summed count
|
|
81
|
+
* must equal the number of distinct ids.
|
|
82
|
+
*
|
|
83
|
+
* Custom repositories that write client-supplied relationship ids with their own Cypher call
|
|
84
|
+
* this before the write. `AbstractRepository` calls it from create/put/patch/addToRelationship.
|
|
85
|
+
*/
|
|
86
|
+
validateRelatedNodes(params: {
|
|
87
|
+
nodes: {
|
|
88
|
+
id: string;
|
|
89
|
+
label: string;
|
|
90
|
+
rule?: RelatedNodeRule;
|
|
91
|
+
}[];
|
|
92
|
+
companyId?: string | null;
|
|
93
|
+
}): Promise<void>;
|
|
70
94
|
private withRetry;
|
|
71
95
|
private write;
|
|
72
96
|
getActiveConnections(): number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"neo4j.service.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/services/neo4j.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,eAAe,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAgB,MAAM,EAAW,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;
|
|
1
|
+
{"version":3,"file":"neo4j.service.d.ts","sourceRoot":"","sources":["../../../../src/core/neo4j/services/neo4j.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,9 +14,48 @@ const common_1 = require("@nestjs/common");
|
|
|
14
14
|
const config_1 = require("@nestjs/config");
|
|
15
15
|
const neo4j_driver_1 = require("neo4j-driver");
|
|
16
16
|
const nestjs_cls_1 = require("nestjs-cls");
|
|
17
|
+
const entity_tenancy_registry_1 = require("../../../common/registries/entity-tenancy.registry");
|
|
17
18
|
const base_config_1 = require("../../../config/base.config");
|
|
18
19
|
const logging_service_1 = require("../../logging/services/logging.service");
|
|
19
20
|
const entity_factory_1 = require("../factories/entity.factory");
|
|
21
|
+
const CYPHER_IDENTIFIER = /^[A-Za-z_][A-Za-z0-9_]*$/;
|
|
22
|
+
/** Labels and relationship types are interpolated into Cypher: accept plain identifiers only. */
|
|
23
|
+
const assertCypherIdentifier = (value) => {
|
|
24
|
+
if (!CYPHER_IDENTIFIER.test(value))
|
|
25
|
+
throw new common_1.BadRequestException("Invalid related node label");
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* The WHERE predicate a related node bound to `alias` must satisfy for `$companyId`, or "" for
|
|
29
|
+
* existence only. See RelatedNodeRule.
|
|
30
|
+
*/
|
|
31
|
+
const relatedNodePredicate = (alias, rule) => {
|
|
32
|
+
switch (rule.kind) {
|
|
33
|
+
case "exists":
|
|
34
|
+
return "";
|
|
35
|
+
case "self":
|
|
36
|
+
return `${alias}.id = $companyId`;
|
|
37
|
+
case "company": {
|
|
38
|
+
const own = `EXISTS { MATCH (${alias})-[:BELONGS_TO]->(:Company {id: $companyId}) }`;
|
|
39
|
+
if (!rule.allowPlatform)
|
|
40
|
+
return own;
|
|
41
|
+
return `(NOT EXISTS { MATCH (${alias})-[:BELONGS_TO]->(:Company) } OR ${own})`;
|
|
42
|
+
}
|
|
43
|
+
case "via": {
|
|
44
|
+
const { relationship, direction, label } = rule.hop;
|
|
45
|
+
assertCypherIdentifier(relationship);
|
|
46
|
+
assertCypherIdentifier(label);
|
|
47
|
+
const edge = direction === "out" ? `-[:${relationship}]->` : `<-[:${relationship}]-`;
|
|
48
|
+
// A hop that ends at the Company itself is matched by id (a Company has no BELONGS_TO),
|
|
49
|
+
// mirroring AbstractRepository.buildDefaultMatch() for tenancy { via }.
|
|
50
|
+
const own = label === "Company"
|
|
51
|
+
? `EXISTS { MATCH (${alias})${edge}(:Company {id: $companyId}) }`
|
|
52
|
+
: `EXISTS { MATCH (${alias})${edge}(:${label})-[:BELONGS_TO]->(:Company {id: $companyId}) }`;
|
|
53
|
+
if (!rule.allowPlatform)
|
|
54
|
+
return own;
|
|
55
|
+
return `(NOT EXISTS { MATCH (${alias})${edge}(:${label}) } OR ${own})`;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
};
|
|
20
59
|
let Neo4jService = class Neo4jService {
|
|
21
60
|
constructor(entityFactory, cls, logger, configService) {
|
|
22
61
|
this.entityFactory = entityFactory;
|
|
@@ -293,6 +332,61 @@ let Neo4jService = class Neo4jService {
|
|
|
293
332
|
throw new common_1.BadRequestException("One or more related nodes do not exist.");
|
|
294
333
|
}
|
|
295
334
|
}
|
|
335
|
+
/**
|
|
336
|
+
* Throws `BadRequestException("One or more related nodes do not exist.")` unless every node
|
|
337
|
+
* exists AND satisfies its company rule for `companyId` (default: the CLS company). A node of
|
|
338
|
+
* another company fails exactly like a missing one, so a caller cannot probe foreign ids.
|
|
339
|
+
*
|
|
340
|
+
* `rule` defaults to the one the target label declares (`relatedNodeRuleForLabel`, filled by
|
|
341
|
+
* `defineEntity`). With no company (system jobs, workers) every rule is existence-only.
|
|
342
|
+
*
|
|
343
|
+
* One read query: nodes are grouped by label + rule, each group is one
|
|
344
|
+
* `UNWIND $ids MATCH ... WHERE <rule> RETURN count(DISTINCT t)` subquery, and the summed count
|
|
345
|
+
* must equal the number of distinct ids.
|
|
346
|
+
*
|
|
347
|
+
* Custom repositories that write client-supplied relationship ids with their own Cypher call
|
|
348
|
+
* this before the write. `AbstractRepository` calls it from create/put/patch/addToRelationship.
|
|
349
|
+
*/
|
|
350
|
+
async validateRelatedNodes(params) {
|
|
351
|
+
if (params.nodes.length === 0)
|
|
352
|
+
return;
|
|
353
|
+
const companyId = params.companyId !== undefined ? params.companyId : this.cls.has("companyId") ? this.cls.get("companyId") : null;
|
|
354
|
+
const groups = new Map();
|
|
355
|
+
for (const node of params.nodes) {
|
|
356
|
+
const rule = companyId ? (node.rule ?? (0, entity_tenancy_registry_1.relatedNodeRuleForLabel)(node.label)) : { kind: "exists" };
|
|
357
|
+
const key = `${node.label}|${JSON.stringify(rule)}`;
|
|
358
|
+
let group = groups.get(key);
|
|
359
|
+
if (!group) {
|
|
360
|
+
group = { label: node.label, rule, ids: new Set() };
|
|
361
|
+
groups.set(key, group);
|
|
362
|
+
}
|
|
363
|
+
group.ids.add(node.id);
|
|
364
|
+
}
|
|
365
|
+
const queryParams = { companyId: companyId ?? null };
|
|
366
|
+
const subqueries = [];
|
|
367
|
+
const counts = [];
|
|
368
|
+
let expected = 0;
|
|
369
|
+
[...groups.values()].forEach((group, index) => {
|
|
370
|
+
assertCypherIdentifier(group.label);
|
|
371
|
+
const predicate = relatedNodePredicate("t", group.rule);
|
|
372
|
+
queryParams[`ids${index}`] = [...group.ids];
|
|
373
|
+
expected += group.ids.size;
|
|
374
|
+
subqueries.push(`
|
|
375
|
+
CALL {
|
|
376
|
+
UNWIND $ids${index} AS relatedId
|
|
377
|
+
MATCH (t:${group.label} {id: relatedId})
|
|
378
|
+
${predicate ? `WHERE ${predicate}` : ""}
|
|
379
|
+
RETURN count(DISTINCT t) AS found${index}
|
|
380
|
+
}`);
|
|
381
|
+
counts.push(`found${index}`);
|
|
382
|
+
});
|
|
383
|
+
const result = await this.read(`${subqueries.join("\n")}\nRETURN ${counts.join(" + ")} AS found`, queryParams);
|
|
384
|
+
const raw = result?.records?.[0]?.get("found");
|
|
385
|
+
const found = typeof raw === "number" ? raw : (raw?.toNumber?.() ?? 0);
|
|
386
|
+
if (found !== expected) {
|
|
387
|
+
throw new common_1.BadRequestException("One or more related nodes do not exist.");
|
|
388
|
+
}
|
|
389
|
+
}
|
|
296
390
|
async withRetry(operation) {
|
|
297
391
|
let lastError = null;
|
|
298
392
|
for (let attempt = 1; attempt <= this.maxRetries; attempt++) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"neo4j.service.js","sourceRoot":"","sources":["../../../../src/core/neo4j/services/neo4j.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"neo4j.service.js","sourceRoot":"","sources":["../../../../src/core/neo4j/services/neo4j.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-connection.d.ts","sourceRoot":"","sources":["../../../../src/foundations/ai-connection/entities/ai-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAIzD;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB
|
|
1
|
+
{"version":3,"file":"ai-connection.d.ts","sourceRoot":"","sources":["../../../../src/foundations/ai-connection/entities/ai-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAIzD;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;EA4EjC,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,OAAO,sBAAsB,CAAC"}
|
|
@@ -77,6 +77,9 @@ exports.AiConnectionDescriptor = (0, common_1.defineEntity)()({
|
|
|
77
77
|
// Scope is chosen at creation and never moves (spec § Decisions "Scope
|
|
78
78
|
// mutability") — immutable relationships are skipped on PUT.
|
|
79
79
|
immutable: true,
|
|
80
|
+
// A platform administrator configures a chain for ANY company, not only the
|
|
81
|
+
// one in their CLS context: existence-only check on the target company.
|
|
82
|
+
crossCompany: true,
|
|
80
83
|
},
|
|
81
84
|
},
|
|
82
85
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-connection.js","sourceRoot":"","sources":["../../../../src/foundations/ai-connection/entities/ai-connection.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ai-connection.js","sourceRoot":"","sources":["../../../../src/foundations/ai-connection/entities/ai-connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,6 +24,7 @@ export declare class AiConnectionRepository extends AbstractRepository<AiConnect
|
|
|
24
24
|
required: false;
|
|
25
25
|
dtoKey: string;
|
|
26
26
|
immutable: true;
|
|
27
|
+
crossCompany: true;
|
|
27
28
|
};
|
|
28
29
|
}>;
|
|
29
30
|
constructor(neo4j: Neo4jService, securityService: SecurityService, clsService: ClsService);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-connection.repository.d.ts","sourceRoot":"","sources":["../../../../src/foundations/ai-connection/repositories/ai-connection.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGjF;;;;;;;;;;GAUG;AACH,qBACa,sBAAuB,SAAQ,kBAAkB,CAC5D,YAAY,EACZ,OAAO,sBAAsB,CAAC,aAAa,CAC5C;IACC,SAAS,CAAC,QAAQ,CAAC,UAAU
|
|
1
|
+
{"version":3,"file":"ai-connection.repository.d.ts","sourceRoot":"","sources":["../../../../src/foundations/ai-connection/repositories/ai-connection.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGjF;;;;;;;;;;GAUG;AACH,qBACa,sBAAuB,SAAQ,kBAAkB,CAC5D,YAAY,EACZ,OAAO,sBAAsB,CAAC,aAAa,CAC5C;IACC,SAAS,CAAC,QAAQ,CAAC,UAAU;;;;;;;;;;;OAA0B;gBAE3C,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU;IAIzF;;;;OAIG;IACG,kBAAkB,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAUnD;;;;OAIG;IACG,SAAS,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAWnE;;;OAGG;IACG,eAAe,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAUhE"}
|
|
@@ -22,6 +22,7 @@ export declare class AiConnectionService extends AbstractService<AiConnection, t
|
|
|
22
22
|
required: false;
|
|
23
23
|
dtoKey: string;
|
|
24
24
|
immutable: true;
|
|
25
|
+
crossCompany: true;
|
|
25
26
|
};
|
|
26
27
|
}>;
|
|
27
28
|
constructor(jsonApiService: JsonApiService, aiConnectionRepository: AiConnectionRepository, clsService: ClsService, encryption: AiConnectionEncryptionService, eventEmitter: EventEmitter2, configService: ConfigService<BaseConfigInterface>);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai-connection.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/ai-connection/services/ai-connection.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AAEvF,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAMhF,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,6DAA6D,CAAC;AAIrE,qBACa,mBAAoB,SAAQ,eAAe,CAAC,YAAY,EAAE,OAAO,sBAAsB,CAAC,aAAa,CAAC;IAK/G,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IAEvC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IARhC,SAAS,CAAC,QAAQ,CAAC,UAAU
|
|
1
|
+
{"version":3,"file":"ai-connection.service.d.ts","sourceRoot":"","sources":["../../../../src/foundations/ai-connection/services/ai-connection.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AAEvF,OAAO,EAAE,cAAc,EAAE,MAAM,gDAAgD,CAAC;AAMhF,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,6DAA6D,CAAC;AAIrE,qBACa,mBAAoB,SAAQ,eAAe,CAAC,YAAY,EAAE,OAAO,sBAAsB,CAAC,aAAa,CAAC;IAK/G,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IAEvC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,aAAa;IARhC,SAAS,CAAC,QAAQ,CAAC,UAAU;;;;;;;;;;;OAA0B;gBAGrD,cAAc,EAAE,cAAc,EACb,sBAAsB,EAAE,sBAAsB,EAC/D,UAAU,EAAE,UAAU,EACL,UAAU,EAAE,6BAA6B,EACzC,YAAY,EAAE,aAAa,EAC3B,aAAa,EAAE,aAAa,CAAC,mBAAmB,CAAC;IAKpE;;;OAGG;IACG,eAAe,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmC3E;;;;;;;;;OASG;IACG,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC;IASvE,MAAM,CAAC,IAAI,EAAE;QACjB,IAAI,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAAC,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAA;SAAE,CAAC;KACzE,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA6B5B,OAAO,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAejD,gBAAgB,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7D;;;;;;;;;;OAUG;IACG,MAAM,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnD;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;CAiB3B"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
import type { RbacMatrix } from "../dsl/types";
|
|
2
|
+
/**
|
|
3
|
+
* Where the matrix file may be written: a `.ts` file inside the monorepo root,
|
|
4
|
+
* never outside it. The path comes from the request body, so without this a
|
|
5
|
+
* caller could overwrite any file the API process can write.
|
|
6
|
+
*/
|
|
7
|
+
export declare function resolveMatrixOutputPath(params: {
|
|
8
|
+
outputPath: unknown;
|
|
9
|
+
root: string;
|
|
10
|
+
}): string;
|
|
2
11
|
interface RbacMatrixPutBody {
|
|
3
12
|
data: {
|
|
4
13
|
type: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac-dev.controller.d.ts","sourceRoot":"","sources":["../../../../src/foundations/rbac/controllers/rbac-dev.controller.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rbac-dev.controller.d.ts","sourceRoot":"","sources":["../../../../src/foundations/rbac/controllers/rbac-dev.controller.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAa,UAAU,EAAE,MAAM,cAAc,CAAC;AAqB1D;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAY7F;AA2BD,UAAU,iBAAiB;IACzB,IAAI,EAAE;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE;YACV,MAAM,EAAE,UAAU,CAAC;YACnB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAClC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACpC,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,CAAC;CACH;AAED;;;;;;;;;GASG;AACH,qBACa,iBAAiB;IAEa,OAAO,CAAC,QAAQ,CAAC,MAAM;IAG9D,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAHwB,MAAM,EAAE,UAAU,GAAG,IAAI,EAGhE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,GAAG,IAAI;IAM5E,SAAS;;;;;;;;;;IAgBH,SAAS,CAAS,IAAI,EAAE,iBAAiB;;;;;;;;;;CA4BhD"}
|
|
@@ -46,9 +46,14 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
46
46
|
};
|
|
47
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
48
|
exports.RbacDevController = void 0;
|
|
49
|
+
exports.resolveMatrixOutputPath = resolveMatrixOutputPath;
|
|
49
50
|
const common_1 = require("@nestjs/common");
|
|
50
51
|
const fs = __importStar(require("fs"));
|
|
51
52
|
const path = __importStar(require("path"));
|
|
53
|
+
const system_roles_1 = require("../../../common/constants/system.roles");
|
|
54
|
+
const roles_decorator_1 = require("../../../common/decorators/roles.decorator");
|
|
55
|
+
const jwt_auth_admin_guard_1 = require("../../../common/guards/jwt.auth.admin.guard");
|
|
56
|
+
const jwt_auth_guard_1 = require("../../../common/guards/jwt.auth.guard");
|
|
52
57
|
const rbac_tokens_1 = require("../rbac.tokens");
|
|
53
58
|
const rbac_constants_1 = require("../rbac.constants");
|
|
54
59
|
const matrix_to_ts_1 = require("../serializer/matrix-to-ts");
|
|
@@ -70,6 +75,23 @@ function findMonorepoRoot(startDir) {
|
|
|
70
75
|
current = parent;
|
|
71
76
|
}
|
|
72
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Where the matrix file may be written: a `.ts` file inside the monorepo root,
|
|
80
|
+
* never outside it. The path comes from the request body, so without this a
|
|
81
|
+
* caller could overwrite any file the API process can write.
|
|
82
|
+
*/
|
|
83
|
+
function resolveMatrixOutputPath(params) {
|
|
84
|
+
if (typeof params.outputPath !== "string" || params.outputPath.trim() === "")
|
|
85
|
+
throw new common_1.BadRequestException("outputPath is required");
|
|
86
|
+
const root = path.resolve(params.root);
|
|
87
|
+
const resolved = path.resolve(root, params.outputPath);
|
|
88
|
+
const relative = path.relative(root, resolved);
|
|
89
|
+
if (relative === "" || relative.startsWith("..") || path.isAbsolute(relative))
|
|
90
|
+
throw new common_1.BadRequestException("outputPath must be inside the repository");
|
|
91
|
+
if (path.extname(resolved) !== ".ts")
|
|
92
|
+
throw new common_1.BadRequestException("outputPath must be a .ts file");
|
|
93
|
+
return resolved;
|
|
94
|
+
}
|
|
73
95
|
/**
|
|
74
96
|
* perm.* tokens are callable hybrids (function + attached `action`/`scope` own
|
|
75
97
|
* properties). JSON.stringify drops functions, producing `null` inside arrays.
|
|
@@ -131,9 +153,7 @@ let RbacDevController = class RbacDevController {
|
|
|
131
153
|
roleNames,
|
|
132
154
|
moduleNames,
|
|
133
155
|
});
|
|
134
|
-
const outPath =
|
|
135
|
-
? outputPath
|
|
136
|
-
: path.resolve(findMonorepoRoot(process.cwd()), outputPath);
|
|
156
|
+
const outPath = resolveMatrixOutputPath({ outputPath, root: findMonorepoRoot(process.cwd()) });
|
|
137
157
|
fs.writeFileSync(outPath, source);
|
|
138
158
|
return {
|
|
139
159
|
data: {
|
|
@@ -149,13 +169,17 @@ let RbacDevController = class RbacDevController {
|
|
|
149
169
|
};
|
|
150
170
|
exports.RbacDevController = RbacDevController;
|
|
151
171
|
__decorate([
|
|
172
|
+
(0, common_1.UseGuards)(jwt_auth_admin_guard_1.AdminJwtAuthGuard, jwt_auth_guard_1.JwtAuthGuard),
|
|
152
173
|
(0, common_1.Get)("matrix"),
|
|
174
|
+
(0, roles_decorator_1.Roles)(system_roles_1.RoleId.Administrator),
|
|
153
175
|
__metadata("design:type", Function),
|
|
154
176
|
__metadata("design:paramtypes", []),
|
|
155
177
|
__metadata("design:returntype", void 0)
|
|
156
178
|
], RbacDevController.prototype, "getMatrix", null);
|
|
157
179
|
__decorate([
|
|
180
|
+
(0, common_1.UseGuards)(jwt_auth_admin_guard_1.AdminJwtAuthGuard, jwt_auth_guard_1.JwtAuthGuard),
|
|
158
181
|
(0, common_1.Put)("matrix"),
|
|
182
|
+
(0, roles_decorator_1.Roles)(system_roles_1.RoleId.Administrator),
|
|
159
183
|
__param(0, (0, common_1.Body)()),
|
|
160
184
|
__metadata("design:type", Function),
|
|
161
185
|
__metadata("design:paramtypes", [Object]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac-dev.controller.js","sourceRoot":"","sources":["../../../../src/foundations/rbac/controllers/rbac-dev.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"rbac-dev.controller.js","sourceRoot":"","sources":["../../../../src/foundations/rbac/controllers/rbac-dev.controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac.module.d.ts","sourceRoot":"","sources":["../../../src/foundations/rbac/rbac.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA0B,MAAM,gBAAgB,CAAC;AAUvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI9C,qBACa,UAAU;IACrB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;QACvB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,EAAE,UAAU,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,aAAa;
|
|
1
|
+
{"version":3,"file":"rbac.module.d.ts","sourceRoot":"","sources":["../../../src/foundations/rbac/rbac.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA0B,MAAM,gBAAgB,CAAC;AAUvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI9C,qBACa,UAAU;IACrB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE;QACvB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,EAAE,UAAU,CAAC;QAClB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,GAAG,aAAa;CA8BlB"}
|
|
@@ -38,7 +38,8 @@ let RbacModule = RbacModule_1 = class RbacModule {
|
|
|
38
38
|
},
|
|
39
39
|
];
|
|
40
40
|
const controllers = [rbac_controller_1.RbacController, rbac_module_paths_controller_1.RbacModulePathsController];
|
|
41
|
-
|
|
41
|
+
// The dev editor writes source files: never mounted in production, whatever the caller passes.
|
|
42
|
+
if (options.devMode && process.env.NODE_ENV !== "production") {
|
|
42
43
|
controllers.push(rbac_dev_controller_1.RbacDevController);
|
|
43
44
|
}
|
|
44
45
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rbac.module.js","sourceRoot":"","sources":["../../../src/foundations/rbac/rbac.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuE;AACvE,mEAA+D;AAC/D,6FAAuF;AACvF,oEAAgE;AAChE,0DAAsD;AACtD,gFAA2E;AAC3E,+FAA0F;AAC1F,mFAA8E;AAC9E,qDAA2D;AAC3D,+CAAkD;AAElD,2EAAsE;AACtE,yGAA6F;AAGtF,IAAM,UAAU,kBAAhB,MAAM,UAAU;IACrB,MAAM,CAAC,QAAQ,CAAC,OAIf;QACC,MAAM,SAAS,GAAe;YAC5B,gCAAc;YACd,0BAAW;YACX,2DAA2B;YAC3B,+CAAqB;YACrB,IAAA,oDAAoB,EAAC,+CAAqB,CAAC;YAC3C;gBACE,OAAO,EAAE,wCAAuB;gBAChC,QAAQ,EAAE,OAAO,CAAC,eAAe;aAClC;YACD;gBACE,OAAO,EAAE,+BAAiB;gBAC1B,QAAQ,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;aAC/B;SACF,CAAC;QAEF,MAAM,WAAW,GAAgB,CAAC,gCAAc,EAAE,wDAAyB,CAAC,CAAC;QAC7E,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"rbac.module.js","sourceRoot":"","sources":["../../../src/foundations/rbac/rbac.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuE;AACvE,mEAA+D;AAC/D,6FAAuF;AACvF,oEAAgE;AAChE,0DAAsD;AACtD,gFAA2E;AAC3E,+FAA0F;AAC1F,mFAA8E;AAC9E,qDAA2D;AAC3D,+CAAkD;AAElD,2EAAsE;AACtE,yGAA6F;AAGtF,IAAM,UAAU,kBAAhB,MAAM,UAAU;IACrB,MAAM,CAAC,QAAQ,CAAC,OAIf;QACC,MAAM,SAAS,GAAe;YAC5B,gCAAc;YACd,0BAAW;YACX,2DAA2B;YAC3B,+CAAqB;YACrB,IAAA,oDAAoB,EAAC,+CAAqB,CAAC;YAC3C;gBACE,OAAO,EAAE,wCAAuB;gBAChC,QAAQ,EAAE,OAAO,CAAC,eAAe;aAClC;YACD;gBACE,OAAO,EAAE,+BAAiB;gBAC1B,QAAQ,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;aAC/B;SACF,CAAC;QAEF,MAAM,WAAW,GAAgB,CAAC,gCAAc,EAAE,wDAAyB,CAAC,CAAC;QAC7E,+FAA+F;QAC/F,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC7D,WAAW,CAAC,IAAI,CAAC,uCAAiB,CAAC,CAAC;QACtC,CAAC;QAED,OAAO;YACL,MAAM,EAAE,YAAU;YAClB,WAAW;YACX,SAAS;YACT,OAAO,EAAE,CAAC,0BAAW,CAAC;SACvB,CAAC;IACJ,CAAC;CACF,CAAA;AAnCY,gCAAU;qBAAV,UAAU;IADtB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,UAAU,CAmCtB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../../../src/foundations/role/entities/role.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAI9D;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;;;;;
|
|
1
|
+
{"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../../../src/foundations/role/entities/role.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAI9D;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;;;;;EA0BzB,CAAC;AAGH,MAAM,MAAM,kBAAkB,GAAG,OAAO,cAAc,CAAC"}
|
|
@@ -12,6 +12,10 @@ const role_meta_1 = require("./role.meta");
|
|
|
12
12
|
*/
|
|
13
13
|
exports.RoleDescriptor = (0, common_1.defineEntity)()({
|
|
14
14
|
...role_meta_1.roleMeta,
|
|
15
|
+
// The platform roles (Administrator, CompanyAdministrator, ...) carry no company
|
|
16
|
+
// edge: a relationship write may link a platform role or one of the caller's own
|
|
17
|
+
// company roles, never another company's.
|
|
18
|
+
linkScope: "own-or-platform",
|
|
15
19
|
// Field definitions
|
|
16
20
|
fields: {
|
|
17
21
|
name: { type: "string", required: true },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/foundations/role/entities/role.ts"],"names":[],"mappings":";;;AAAA,4CAAuD;AAEvD,sEAAkE;AAClE,2CAAuC;AAYvC;;;;;GAKG;AACU,QAAA,cAAc,GAAG,IAAA,qBAAY,GAAQ,CAAC;IACjD,GAAG,oBAAQ;IAEX,oBAAoB;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QACxC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC/B,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QACjC,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACpC;IAED,2BAA2B;IAC3B,aAAa,EAAE;QACb,OAAO,EAAE;YACP,KAAK,EAAE,0BAAW;YAClB,SAAS,EAAE,KAAK;YAChB,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,KAAK;YAClB,MAAM,EAAE,iBAAiB;SAC1B;KACF;CACF,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/foundations/role/entities/role.ts"],"names":[],"mappings":";;;AAAA,4CAAuD;AAEvD,sEAAkE;AAClE,2CAAuC;AAYvC;;;;;GAKG;AACU,QAAA,cAAc,GAAG,IAAA,qBAAY,GAAQ,CAAC;IACjD,GAAG,oBAAQ;IAEX,iFAAiF;IACjF,iFAAiF;IACjF,0CAA0C;IAC1C,SAAS,EAAE,iBAAiB;IAE5B,oBAAoB;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QACxC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC/B,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QACjC,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KACpC;IAED,2BAA2B;IAC3B,aAAa,EAAE;QACb,OAAO,EAAE;YACP,KAAK,EAAE,0BAAW;YAClB,SAAS,EAAE,KAAK;YAChB,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,KAAK;YAClB,MAAM,EAAE,iBAAiB;SAC1B;KACF;CACF,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.controller.d.ts","sourceRoot":"","sources":["../../../../src/foundations/user/controllers/user.controller.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAC;AAEnF,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4DAA4D,CAAC;AAClG,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAG1E,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,qBAEa,cAAc;IAEvB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa;gBANb,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,eAAe,EACzB,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,gBAAgB,CAAC,IAAI,CAAC,EACxC,aAAa,EAAE,iBAAiB;IAGnD,6DAA6D;IAC7D,OAAO,CAAC,eAAe;IAIvB,6CAA6C;IAC7C,OAAO,CAAC,UAAU;IAQZ,YAAY,CACT,OAAO,EAAE,oBAAoB,EAC7B,KAAK,EAAE,YAAY,EACjB,KAAK,EAAE,GAAG,EACF,MAAM,CAAC,EAAE,MAAM,EACP,cAAc,CAAC,EAAE,OAAO,EAC5B,UAAU,CAAC,EAAE,MAAM;IAuBpC,eAAe,CAAY,GAAG,EAAE,GAAG,EAAmB,MAAM,EAAE,MAAM;IAYpE,YAAY,CAAQ,OAAO,EAAE,oBAAoB,EAAS,KAAK,EAAE,YAAY;IAUnF;;;;OAIG;IAGG,cAAc,CAAQ,OAAO,EAAE,oBAAoB,EAAkB,KAAK,EAAE,MAAM;IAUlF,aAAa,CACV,OAAO,EAAE,oBAAoB,EAC7B,KAAK,EAAE,YAAY,EACN,SAAS,EAAE,MAAM,EAC5B,KAAK,EAAE,GAAG,EACF,MAAM,CAAC,EAAE,MAAM,EACP,cAAc,CAAC,EAAE,OAAO,EAC7B,SAAS,CAAC,EAAE,OAAO;IAuBnC,UAAU,CACP,OAAO,EAAE,GAAG,EACX,IAAI,EAAE,WAAW,EAClB,KAAK,EAAE,YAAY,EACZ,GAAG,CAAC,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"user.controller.d.ts","sourceRoot":"","sources":["../../../../src/foundations/user/controllers/user.controller.ts"],"names":[],"mappings":"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"}
|