Compare commits

...
3 Commits
4 changed files with 39 additions and 11 deletions
+7 -7
View File
@@ -22,7 +22,7 @@
"@nestjs/schedule": "^1.1.0",
"@nestjs/swagger": "^5.2.1",
"@victorradael/protospack": "2.5.0",
"@victorradael/protospack-v2": "1.1.0",
"@victorradael/protospack-v2": "1.1.1",
"axios": "^0.25.0",
"cron-parser": "^4.4.0",
"dotenv": "^14.2.0",
@@ -3308,9 +3308,9 @@
}
},
"node_modules/@victorradael/protospack-v2": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/@victorradael/protospack-v2/-/protospack-v2-1.1.0.tgz",
"integrity": "sha512-SGCJ49kNfOpG59GMbJG6lR/JC/bLBaCcWMENaF1+b2hAXNs8BePDVMiTTJsETjaAZlpmsJeUTPhvkrwD7GO27A==",
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@victorradael/protospack-v2/-/protospack-v2-1.1.1.tgz",
"integrity": "sha512-K9SuHcCGa7wynbzTG1aVnODksajTKfr9+tDHw6qfFfPwBruJXv5HsbMMylizAg+HTgEr/D6h/L1PO05rygDJCw==",
"dependencies": {
"rxjs": "^7.5.5",
"ts-proto": "^1.112.2"
@@ -12900,9 +12900,9 @@
}
},
"@victorradael/protospack-v2": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/@victorradael/protospack-v2/-/protospack-v2-1.1.0.tgz",
"integrity": "sha512-SGCJ49kNfOpG59GMbJG6lR/JC/bLBaCcWMENaF1+b2hAXNs8BePDVMiTTJsETjaAZlpmsJeUTPhvkrwD7GO27A==",
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@victorradael/protospack-v2/-/protospack-v2-1.1.1.tgz",
"integrity": "sha512-K9SuHcCGa7wynbzTG1aVnODksajTKfr9+tDHw6qfFfPwBruJXv5HsbMMylizAg+HTgEr/D6h/L1PO05rygDJCw==",
"requires": {
"rxjs": "^7.5.5",
"ts-proto": "^1.112.2"
+1 -1
View File
@@ -37,7 +37,7 @@
"@nestjs/schedule": "^1.1.0",
"@nestjs/swagger": "^5.2.1",
"@victorradael/protospack": "2.5.0",
"@victorradael/protospack-v2": "1.1.0",
"@victorradael/protospack-v2": "1.1.1",
"axios": "^0.25.0",
"cron-parser": "^4.4.0",
"dotenv": "^14.2.0",
+30 -2
View File
@@ -1,5 +1,8 @@
import { Logger } from '@nestjs/common';
import assert from 'assert';
const logger = new Logger();
export enum PermissionUsages {
PUBLIC = 'public',
INTERNAL = 'internal',
@@ -11,8 +14,11 @@ export interface Permission {
usage: PermissionUsages;
}
// like field numbers in gRPC, avoid to change (or reuse previously used) seqids once its
// deployed to DUC
/*
- like field numbers in gRPC, avoid to change (or reuse previously used) seqids once its deployed to DUC
- it is possible to update claim and usage, not seqid
*/
/*export const Permissions: {
[P in keyof any]: { [Q in keyof any]: Permission };
} = {*/
@@ -196,9 +202,28 @@ export const Permissions = {
usage: PermissionUsages.PUBLIC,
},
},
ORCHEST: {
INTELLIGENCE: {
seqid: 31,
claim: 'intelligence:open',
usage: PermissionUsages.PUBLIC,
},
APP_BUILDER: {
seqid: 32,
claim: 'app-builder:open',
usage: PermissionUsages.PUBLIC,
},
MACHINE_LEARNING: {
seqid: 33,
claim: 'machine-learning:open',
usage: PermissionUsages.PUBLIC,
},
},
};
// traverses the object searching for duplicate seqids or claims (executes at runtime)
let nextAvailableSeqid = 0;
const seqids = Object.values(Permissions).flatMap((namespace) =>
Object.values(namespace).map(({ seqid }) => seqid),
);
@@ -212,5 +237,8 @@ Object.values(Permissions).map((namespace) =>
const claimsCount = claims.filter((x) => x === claim).length;
assert(claimsCount === 1, `claim '${claim}' count is not 1`);
nextAvailableSeqid = Math.max(nextAvailableSeqid, seqid);
}),
);
logger.log(`next available seqid ${nextAvailableSeqid + 1}`);
+1 -1
View File
File diff suppressed because one or more lines are too long