@magda/typescript-common 1.2.1-alpha.0 → 2.0.0-alpha.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.
Files changed (73) hide show
  1. package/dist/OpaCompileResponseParser.d.ts +147 -34
  2. package/dist/OpaCompileResponseParser.js +479 -293
  3. package/dist/OpaCompileResponseParser.js.map +1 -1
  4. package/dist/SQLUtils.d.ts +70 -0
  5. package/dist/SQLUtils.js +263 -0
  6. package/dist/SQLUtils.js.map +1 -0
  7. package/dist/ServerError.d.ts +9 -0
  8. package/dist/ServerError.js +17 -0
  9. package/dist/ServerError.js.map +1 -0
  10. package/dist/authorization-api/authMiddleware.d.ts +59 -1
  11. package/dist/authorization-api/authMiddleware.js +146 -3
  12. package/dist/authorization-api/authMiddleware.js.map +1 -1
  13. package/dist/authorization-api/constants.d.ts +5 -0
  14. package/dist/authorization-api/constants.js +13 -0
  15. package/dist/authorization-api/constants.js.map +1 -0
  16. package/dist/authorization-api/model.d.ts +1 -6
  17. package/dist/express/getNoCacheHeaders.d.ts +6 -0
  18. package/dist/express/getNoCacheHeaders.js +9 -0
  19. package/dist/express/getNoCacheHeaders.js.map +1 -0
  20. package/dist/express/setResponseNoCache.d.ts +3 -0
  21. package/dist/express/setResponseNoCache.js +9 -0
  22. package/dist/express/setResponseNoCache.js.map +1 -0
  23. package/dist/generated/registry/api.d.ts +36 -2
  24. package/dist/generated/registry/api.js +140 -2
  25. package/dist/generated/registry/api.js.map +1 -1
  26. package/dist/getAbsoluteUrl.d.ts +3 -2
  27. package/dist/getAbsoluteUrl.js +2 -1
  28. package/dist/getAbsoluteUrl.js.map +1 -1
  29. package/dist/opa/AspectQuery.d.ts +71 -0
  30. package/dist/opa/AspectQuery.js +216 -0
  31. package/dist/opa/AspectQuery.js.map +1 -0
  32. package/dist/opa/AuthDecision.d.ts +51 -0
  33. package/dist/opa/AuthDecision.js +241 -0
  34. package/dist/opa/AuthDecision.js.map +1 -0
  35. package/dist/opa/AuthDecisionQueryClient.d.ts +23 -0
  36. package/dist/opa/AuthDecisionQueryClient.js +110 -0
  37. package/dist/opa/AuthDecisionQueryClient.js.map +1 -0
  38. package/dist/pgTypes.d.ts +1 -0
  39. package/dist/pgTypes.js +18 -0
  40. package/dist/pgTypes.js.map +1 -0
  41. package/dist/registry/AuthorizedRegistryClient.d.ts +1 -0
  42. package/dist/registry/AuthorizedRegistryClient.js +17 -0
  43. package/dist/registry/AuthorizedRegistryClient.js.map +1 -1
  44. package/dist/registry/RegistryClient.d.ts +10 -0
  45. package/dist/registry/RegistryClient.js +32 -0
  46. package/dist/registry/RegistryClient.js.map +1 -1
  47. package/dist/test/getAuthDecision.spec.js +2 -2
  48. package/dist/test/getAuthDecision.spec.js.map +1 -1
  49. package/dist/test/sampleAuthDecisions/content.json +29 -0
  50. package/dist/test/sampleAuthDecisions/datasetPermissionWithOrgUnitConstraint.json +79 -0
  51. package/dist/test/sampleAuthDecisions/simple.json +29 -0
  52. package/dist/test/sampleAuthDecisions/singleTermAspectRef.json +39 -0
  53. package/dist/test/sampleAuthDecisions/unconditionalFalseSimple.json +6 -0
  54. package/dist/test/sampleAuthDecisions/unconditionalNotMacthed.json +6 -0
  55. package/dist/test/sampleAuthDecisions/unconditionalNotMacthedWithExtraRefs.json +6 -0
  56. package/dist/test/sampleAuthDecisions/unconditionalTrue.json +6 -0
  57. package/dist/test/sampleAuthDecisions/unconditionalTrueSimple.json +6 -0
  58. package/dist/test/sampleAuthDecisions/unconditionalTrueWithDefaultRule.json +6 -0
  59. package/dist/test/sampleAuthDecisions/withDefaultRule.json +6 -0
  60. package/dist/test/{sampleOpaResponse.json → sampleOpaResponses/content.json} +0 -0
  61. package/dist/test/sampleOpaResponses/datasetPermissionWithOrgUnitConstraint.json +341 -0
  62. package/dist/test/{sampleOpaResponseSimple.json → sampleOpaResponses/simple.json} +0 -0
  63. package/dist/test/sampleOpaResponses/singleTermAspectRef.json +233 -0
  64. package/dist/test/sampleOpaResponses/unconditionalFalseSimple.json +3 -0
  65. package/dist/test/sampleOpaResponses/unconditionalNotMacthed.json +73 -0
  66. package/dist/test/sampleOpaResponses/unconditionalNotMacthedWithExtraRefs.json +155 -0
  67. package/dist/test/{sampleOpaResponseUnconditionalTrue.json → sampleOpaResponses/unconditionalTrue.json} +0 -0
  68. package/dist/test/sampleOpaResponses/unconditionalTrueSimple.json +48 -0
  69. package/dist/test/{sampleOpaResponseUnconditionalTrueWithDefaultRule.json → sampleOpaResponses/unconditionalTrueWithDefaultRule.json} +0 -0
  70. package/dist/test/{sampleOpaResponseWithDefaultRule.json → sampleOpaResponses/withDefaultRule.json} +0 -0
  71. package/dist/test/testOpaCompileResponseParser.spec.js +195 -20
  72. package/dist/test/testOpaCompileResponseParser.spec.js.map +1 -1
  73. package/package.json +7 -3
@@ -0,0 +1,241 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.ConciseOperand = exports.ConciseExpression = exports.ConciseRule = exports.UnconditionalFalseDecision = exports.UnconditionalTrueDecision = exports.isTrueEquivalent = void 0;
23
+ const AspectQuery_1 = require("./AspectQuery");
24
+ const sql_syntax_1 = __importStar(require("sql-syntax"));
25
+ class AuthDecision {
26
+ constructor(hasResidualRules, residualRules, result, hasWarns = false, warns = [], unknowns) {
27
+ if (typeof hasResidualRules !== "boolean") {
28
+ throw new Error("Failed to create AuthDecision: invalid hasResidualRules type");
29
+ }
30
+ if (hasResidualRules && !(residualRules === null || residualRules === void 0 ? void 0 : residualRules.length)) {
31
+ throw new Error("Failed to create AuthDecision: residualRules must have at least one item when hasResidualRules == true");
32
+ }
33
+ this.hasResidualRules = hasResidualRules;
34
+ this.result = result;
35
+ this.residualRules = residualRules;
36
+ this.hasWarns = hasWarns;
37
+ this.warns = warns;
38
+ this.unknowns = unknowns;
39
+ }
40
+ static fromJson(data) {
41
+ var _a;
42
+ return new AuthDecision(data === null || data === void 0 ? void 0 : data.hasResidualRules, (_a = data === null || data === void 0 ? void 0 : data.residualRules) === null || _a === void 0 ? void 0 : _a.map((item) => ConciseRule.fromJson(item)), data === null || data === void 0 ? void 0 : data.result, (data === null || data === void 0 ? void 0 : data.hasWarns) ? true : false, data === null || data === void 0 ? void 0 : data.warns, data === null || data === void 0 ? void 0 : data.unknowns);
43
+ }
44
+ toAspectQueryGroups(prefixes) {
45
+ if (this.hasResidualRules) {
46
+ return this.residualRules.map((item) => item.toAspectQueryGroup(prefixes));
47
+ }
48
+ else {
49
+ if (isTrueEquivalent(this.result)) {
50
+ // unconditional true
51
+ return [new AspectQuery_1.AspectQueryGroup([new AspectQuery_1.AspectQueryTrue()])];
52
+ }
53
+ else {
54
+ return [new AspectQuery_1.AspectQueryGroup([new AspectQuery_1.AspectQueryFalse()])];
55
+ }
56
+ }
57
+ }
58
+ toSql(config) {
59
+ return sql_syntax_1.default.joinWithOr(this.toAspectQueryGroups(config.prefixes).map((item) => item.toSql(config)));
60
+ }
61
+ }
62
+ exports.default = AuthDecision;
63
+ function isTrueEquivalent(value) {
64
+ const typeStr = typeof value;
65
+ if (typeStr === "boolean") {
66
+ return value;
67
+ }
68
+ else if (typeStr === "undefined") {
69
+ return false;
70
+ }
71
+ else if (typeof (value === null || value === void 0 ? void 0 : value.length) !== "undefined") {
72
+ return !!value.length;
73
+ }
74
+ else {
75
+ return !!value;
76
+ }
77
+ }
78
+ exports.isTrueEquivalent = isTrueEquivalent;
79
+ exports.UnconditionalTrueDecision = new AuthDecision(false, undefined, true);
80
+ exports.UnconditionalFalseDecision = new AuthDecision(false, undefined, false);
81
+ class ConciseRule {
82
+ constructor(fullName, name, value, expressions, isDefault = false) {
83
+ if (!isDefault && !(expressions === null || expressions === void 0 ? void 0 : expressions.length)) {
84
+ throw new Error("Invalid ConciseRule data: it must contain at least one ConciseExpression item unless it's a default rule.");
85
+ }
86
+ this.default = isDefault ? true : false;
87
+ this.fullName = fullName;
88
+ this.name = name;
89
+ this.value = value;
90
+ this.expressions = (expressions === null || expressions === void 0 ? void 0 : expressions.length) ? expressions : [];
91
+ }
92
+ static fromJson(data) {
93
+ var _a;
94
+ return new ConciseRule(data === null || data === void 0 ? void 0 : data.fullName, data === null || data === void 0 ? void 0 : data.name, data === null || data === void 0 ? void 0 : data.value, (_a = data === null || data === void 0 ? void 0 : data.expressions) === null || _a === void 0 ? void 0 : _a.map((item) => ConciseExpression.fromJson(item)));
95
+ }
96
+ toAspectQueryGroup(prefixes) {
97
+ var _a;
98
+ return new AspectQuery_1.AspectQueryGroup((_a = this.expressions) === null || _a === void 0 ? void 0 : _a.map((item) => item.toAspectQuery(prefixes)), true, !isTrueEquivalent(this.value));
99
+ }
100
+ }
101
+ exports.ConciseRule = ConciseRule;
102
+ class ConciseExpression {
103
+ constructor(operands, operator, negated = false) {
104
+ var _a, _b;
105
+ this.negated = negated ? true : false;
106
+ this.operands = operands;
107
+ this.operator = operator;
108
+ if (!((_a = this.operands) === null || _a === void 0 ? void 0 : _a.length)) {
109
+ throw new Error("invalid ConciseExpression data: it must have at least one operand.");
110
+ }
111
+ if (((_b = this.operands) === null || _b === void 0 ? void 0 : _b.length) > 1 && typeof operator !== "string") {
112
+ throw new Error("invalid ConciseExpression data: when operands number > 1, operator must be a valid string value.");
113
+ }
114
+ }
115
+ static fromJson(data) {
116
+ var _a;
117
+ return new ConciseExpression((_a = data === null || data === void 0 ? void 0 : data.operands) === null || _a === void 0 ? void 0 : _a.map((item) => ConciseOperand.fromJson(item)), data === null || data === void 0 ? void 0 : data.operator, data === null || data === void 0 ? void 0 : data.negated);
118
+ }
119
+ getSqlOperator() {
120
+ switch (this.operator) {
121
+ case "=":
122
+ return sql_syntax_1.sqls `=`;
123
+ case ">":
124
+ return sql_syntax_1.sqls `>`;
125
+ case "<":
126
+ return sql_syntax_1.sqls `<`;
127
+ case ">=":
128
+ return sql_syntax_1.sqls `>=`;
129
+ case "<=":
130
+ return sql_syntax_1.sqls `<=`;
131
+ default:
132
+ throw new Error(`Failed to convert auth decision operator to SQL operator: unsupported operator: ${this.operator}`);
133
+ }
134
+ }
135
+ toAspectQuery(prefixes) {
136
+ var _a, _b;
137
+ if (((_a = this.operands) === null || _a === void 0 ? void 0 : _a.length) == 1) {
138
+ const [aspectId, path, isCollection] = this.operands[0].extractAspectIdAndPath(prefixes);
139
+ if (isCollection) {
140
+ return new AspectQuery_1.AspectQueryArrayNotEmpty(aspectId, path, this.negated);
141
+ }
142
+ else {
143
+ return new AspectQuery_1.AspectQueryExists(aspectId, path, this.negated);
144
+ }
145
+ }
146
+ else if (((_b = this.operands) === null || _b === void 0 ? void 0 : _b.length) == 2) {
147
+ const refOperand = this.operands.find((item) => item.isRef);
148
+ const valOperand = this.operands.find((item) => !item.isRef);
149
+ if (!valOperand) {
150
+ throw new Error("Failed to convert auth decision expression to AspectQuery: " +
151
+ `expression with both terms are references is currently not supported. Expression: ${this}`);
152
+ }
153
+ if (!refOperand) {
154
+ // it's unlikely both terms are values as our decision API has already done the evaluation for this case.
155
+ throw new Error("Failed to convert auth decision expression to AspectQuery: " +
156
+ `Terms shouldn't be both value. Expression: ${this}`);
157
+ }
158
+ const [aspectId, path, isCollection] = refOperand.extractAspectIdAndPath(prefixes);
159
+ if (isCollection && this.operator != "=") {
160
+ throw new Error("Failed to convert auth decision expression to AspectQuery: " +
161
+ `Only \`=\` operator is supported for collection reference. Expression: ${this}`);
162
+ }
163
+ if (isCollection && this.operator == "=") {
164
+ return new AspectQuery_1.AspectQueryValueInArray(valOperand.toAspectQueryValue(), aspectId, path, this.negated);
165
+ }
166
+ else {
167
+ return new AspectQuery_1.AspectQueryWithValue(valOperand.toAspectQueryValue(), this.getSqlOperator(), this.operands[0].isRef, aspectId, path, this.negated);
168
+ }
169
+ }
170
+ else {
171
+ throw new Error(`Failed to convert auth decision expression to AspectQuery: more than 2 operands found. Expression: ${this}`);
172
+ }
173
+ }
174
+ }
175
+ exports.ConciseExpression = ConciseExpression;
176
+ class ConciseOperand {
177
+ constructor(isRef, value) {
178
+ if (typeof isRef !== "boolean") {
179
+ throw new Error("Invalid ConciseOperand data: isRef must be a boolean value.");
180
+ }
181
+ this.isRef = isRef;
182
+ if (isRef && typeof value !== "string") {
183
+ throw new Error("Invalid ConciseOperand data: when `isRef`== true, `value` must be a string value (ref string).");
184
+ }
185
+ this.value = value;
186
+ }
187
+ static fromJson(data) {
188
+ return new ConciseOperand(data === null || data === void 0 ? void 0 : data.isRef, data === null || data === void 0 ? void 0 : data.value);
189
+ }
190
+ refString() {
191
+ if (!this.isRef) {
192
+ throw new Error("Cannot convert non-ref term to a ref string");
193
+ }
194
+ else {
195
+ if (typeof this.value === "string") {
196
+ return this.value;
197
+ }
198
+ else {
199
+ throw new Error(`ref term has non-string type value: ${this.value}`);
200
+ }
201
+ }
202
+ }
203
+ isCollectionRef() {
204
+ return this.refString().endsWith("[_]");
205
+ }
206
+ refStringWithoutPrefixes(prefixes) {
207
+ const sortedPrefixes = prefixes.sort((a, b) => b.length - a.length);
208
+ return sortedPrefixes.reduce((ref, prefix) => {
209
+ if (ref.startsWith(prefix)) {
210
+ return ref.substring(prefix.length);
211
+ }
212
+ else {
213
+ return ref;
214
+ }
215
+ }, this.refString());
216
+ }
217
+ extractAspectIdAndPath(prefixes) {
218
+ // make it work for both "input.object.record" & "input.object.record." prefixe input
219
+ // we remove the first leading `.` char (if any)
220
+ let ref = this.refStringWithoutPrefixes(prefixes).replace(/^\./, "");
221
+ const isCollection = this.isCollectionRef();
222
+ if (isCollection) {
223
+ ref = ref.replace(/\[_\]$/, "");
224
+ }
225
+ const parts = ref.split(".").filter((item) => item);
226
+ if (parts.length < 2) {
227
+ return [ref, [], isCollection];
228
+ }
229
+ else {
230
+ return [parts[0], parts.slice(1, parts.length), isCollection];
231
+ }
232
+ }
233
+ toAspectQueryValue() {
234
+ if (this.isRef) {
235
+ throw new Error(`Attempt to covert reference \`Operand\` to \`AspectQueryValue\`: ${this}`);
236
+ }
237
+ return new AspectQuery_1.AspectQueryValue(this.value);
238
+ }
239
+ }
240
+ exports.ConciseOperand = ConciseOperand;
241
+ //# sourceMappingURL=AuthDecision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthDecision.js","sourceRoot":"","sources":["../../src/opa/AuthDecision.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import AuthDecision from "./AuthDecision";
2
+ export declare type AuthDecisionReqConfig = {
3
+ operationUri: string;
4
+ resourceUri?: string;
5
+ unknowns?: string[];
6
+ rawAst?: boolean;
7
+ explain?: string;
8
+ pretty?: boolean;
9
+ humanReadable?: boolean;
10
+ concise?: boolean;
11
+ input?: {
12
+ [key: string]: any;
13
+ };
14
+ };
15
+ declare class AuthDecisionQueryClient {
16
+ private readonly authApiBaseUrl;
17
+ readonly skipQuery: boolean;
18
+ static fetchOptions: RequestInit;
19
+ fetchOptions: RequestInit;
20
+ constructor(authApiBaseUrl: string, skipQuery?: boolean);
21
+ getAuthDecision(config: AuthDecisionReqConfig, jwtToken?: string): Promise<AuthDecision>;
22
+ }
23
+ export default AuthDecisionQueryClient;
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
+ return new (P || (P = Promise))(function (resolve, reject) {
24
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
28
+ });
29
+ };
30
+ var __importDefault = (this && this.__importDefault) || function (mod) {
31
+ return (mod && mod.__esModule) ? mod : { "default": mod };
32
+ };
33
+ Object.defineProperty(exports, "__esModule", { value: true });
34
+ const isomorphic_fetch_1 = __importDefault(require("isomorphic-fetch"));
35
+ const urijs_1 = __importDefault(require("urijs"));
36
+ const AuthDecision_1 = __importStar(require("./AuthDecision"));
37
+ class AuthDecisionQueryClient {
38
+ constructor(authApiBaseUrl, skipQuery = false) {
39
+ this.authApiBaseUrl = "";
40
+ this.fetchOptions = {};
41
+ this.authApiBaseUrl = authApiBaseUrl;
42
+ this.skipQuery = skipQuery;
43
+ }
44
+ getAuthDecision(config, jwtToken) {
45
+ var _a, _b;
46
+ return __awaiter(this, void 0, void 0, function* () {
47
+ if (this.skipQuery) {
48
+ console.warn("WARNING: Skip OPA (policy engine) querying option is turned on! This is fine for testing or playing around, but this should NOT BE TURNED ON FOR PRODUCTION!");
49
+ return AuthDecision_1.UnconditionalTrueDecision;
50
+ }
51
+ const queryParams = {};
52
+ if (config === null || config === void 0 ? void 0 : config.rawAst) {
53
+ queryParams.rawAst = config.rawAst;
54
+ }
55
+ if (config === null || config === void 0 ? void 0 : config.concise) {
56
+ queryParams.concise = config.concise;
57
+ }
58
+ if (config === null || config === void 0 ? void 0 : config.explain) {
59
+ queryParams.explain = config.explain;
60
+ }
61
+ if (config === null || config === void 0 ? void 0 : config.pretty) {
62
+ queryParams.pretty = config.pretty;
63
+ }
64
+ if (config === null || config === void 0 ? void 0 : config.humanReadable) {
65
+ queryParams.humanReadable = config.humanReadable;
66
+ }
67
+ if ((config === null || config === void 0 ? void 0 : config.unknowns) && !config.unknowns.length) {
68
+ queryParams.unknowns = "";
69
+ }
70
+ const usePost = (config === null || config === void 0 ? void 0 : config.input) || ((_a = config === null || config === void 0 ? void 0 : config.unknowns) === null || _a === void 0 ? void 0 : _a.length) || (config === null || config === void 0 ? void 0 : config.resourceUri);
71
+ const baseUri = urijs_1.default(this.authApiBaseUrl);
72
+ const urlSegments = baseUri
73
+ .segmentCoded()
74
+ .concat(["opa", "decision"])
75
+ .concat(urijs_1.default(config.operationUri).segmentCoded());
76
+ const reqUri = baseUri.segmentCoded(urlSegments).search(queryParams);
77
+ const fetchConfig = Object.assign(Object.assign(Object.assign({}, AuthDecisionQueryClient.fetchOptions), this.fetchOptions), { method: usePost ? "POST" : "GET" });
78
+ if (jwtToken) {
79
+ fetchConfig.headers = {
80
+ "X-Magda-Session": jwtToken
81
+ };
82
+ }
83
+ const requestData = {};
84
+ if (config === null || config === void 0 ? void 0 : config.input) {
85
+ requestData.input = config.input;
86
+ }
87
+ if ((_b = config === null || config === void 0 ? void 0 : config.unknowns) === null || _b === void 0 ? void 0 : _b.length) {
88
+ requestData.unknowns = config.unknowns;
89
+ }
90
+ if (config === null || config === void 0 ? void 0 : config.resourceUri) {
91
+ requestData.resourceUri = config.resourceUri;
92
+ }
93
+ if (usePost) {
94
+ fetchConfig.body = JSON.stringify(requestData);
95
+ }
96
+ const res = yield isomorphic_fetch_1.default(reqUri.toString(), fetchConfig);
97
+ if (res.status != 200) {
98
+ const bodyText = yield res.text();
99
+ const errorMsg = `Failed to retrieve auth decision for operation \`${config.operationUri}\` from policy engine: ${bodyText}`;
100
+ console.error(errorMsg);
101
+ throw new Error(errorMsg);
102
+ }
103
+ const data = yield res.json();
104
+ return AuthDecision_1.default.fromJson(data);
105
+ });
106
+ }
107
+ }
108
+ AuthDecisionQueryClient.fetchOptions = {};
109
+ exports.default = AuthDecisionQueryClient;
110
+ //# sourceMappingURL=AuthDecisionQueryClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthDecisionQueryClient.js","sourceRoot":"","sources":["../../src/opa/AuthDecisionQueryClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const pg_1 = __importDefault(require("pg"));
7
+ // int8ToNumber
8
+ pg_1.default.types.setTypeParser(20, (v) => parseInt(v, 10));
9
+ // 1016 = Type Id for arrays of BigInt values
10
+ const parseBigIntArray = pg_1.default.types.getTypeParser(1016, "text");
11
+ pg_1.default.types.setTypeParser(1016, (v) => {
12
+ const defaultParsedVal = parseBigIntArray(v);
13
+ if (!defaultParsedVal) {
14
+ return defaultParsedVal;
15
+ }
16
+ return defaultParsedVal.map((v) => parseInt(v, 10));
17
+ });
18
+ //# sourceMappingURL=pgTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pgTypes.js","sourceRoot":"","sources":["../src/pgTypes.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AAEpB,eAAe;AACf,YAAE,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAEnD,6CAA6C;AAC7C,MAAM,gBAAgB,GAAG,YAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC9D,YAAE,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;IAC/B,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC7C,IAAI,CAAC,gBAAgB,EAAE;QACnB,OAAO,gBAAgB,CAAC;KAC3B;IACD,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC"}
@@ -15,6 +15,7 @@ export declare type AuthorizedRegistryOptions = AuthorizedRegistryUserIdAndJwtSe
15
15
  export default class AuthorizedRegistryClient extends RegistryClient {
16
16
  protected jwt: string;
17
17
  constructor(options: AuthorizedRegistryOptions);
18
+ getAspectDefinition(aspectId: string): Promise<AspectDefinition>;
18
19
  putAspectDefinition(aspectDefinition: AspectDefinition, tenantId?: number): Promise<AspectDefinition | Error>;
19
20
  postHook(hook: WebHook): Promise<WebHook | Error>;
20
21
  putHook(hook: WebHook): Promise<WebHook | Error>;
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
13
  };
@@ -24,6 +33,14 @@ class AuthorizedRegistryClient extends RegistryClient_1.default {
24
33
  ? options.jwt
25
34
  : buildJwt_1.default(options.jwtSecret, options.userId);
26
35
  }
36
+ getAspectDefinition(aspectId) {
37
+ const _super = Object.create(null, {
38
+ getAspectDefinition: { get: () => super.getAspectDefinition }
39
+ });
40
+ return __awaiter(this, void 0, void 0, function* () {
41
+ return yield _super.getAspectDefinition.call(this, aspectId, this.jwt);
42
+ });
43
+ }
27
44
  putAspectDefinition(aspectDefinition, tenantId = this.tenantId) {
28
45
  const operation = () => this.aspectDefinitionsApi.putById(tenantId, encodeURIComponent(aspectDefinition.id), aspectDefinition, this.jwt);
29
46
  return retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to create aspect definition "${aspectDefinition.id}".`, e, retriesLeft)))
@@ -1 +1 @@
1
- {"version":3,"file":"AuthorizedRegistryClient.js","sourceRoot":"","sources":["../../src/registry/AuthorizedRegistryClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthorizedRegistryClient.js","sourceRoot":"","sources":["../../src/registry/AuthorizedRegistryClient.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import { AspectDefinition, AspectDefinitionsApi, Record, RecordsApi, RecordAspectsApi, WebHooksApi, RecordHistoryApi } from "../generated/registry/api";
2
2
  import URI from "urijs";
3
+ import { Response } from "request";
4
+ import ServerError from "../ServerError";
3
5
  export interface RegistryOptions {
4
6
  baseUrl: string;
5
7
  maxRetries?: number;
@@ -28,8 +30,16 @@ export default class RegistryClient {
28
30
  protected tenantId: number;
29
31
  protected jwt: string | undefined;
30
32
  constructor({ baseUrl, maxRetries, secondsBetweenRetries, tenantId }: RegistryOptions);
33
+ toServerError(error: {
34
+ body: any;
35
+ response: Response;
36
+ }): ServerError | {
37
+ body: any;
38
+ response: Response;
39
+ };
31
40
  getRecordUrl(id: string): string;
32
41
  getAspectDefinitions(): Promise<AspectDefinition[] | Error>;
42
+ getAspectDefinition(aspectId: string, jwtToken?: string): Promise<AspectDefinition>;
33
43
  getRecord(id: string, aspect?: Array<string>, optionalAspect?: Array<string>, dereference?: boolean): Promise<Record | Error>;
34
44
  getRecords<I extends Record>(aspect?: Array<string>, optionalAspect?: Array<string>, pageToken?: string, dereference?: boolean, limit?: number, aspectQueries?: string[], aspectOrQuery?: string[], orderBy?: string, orderByDir?: string, orderNullFirst?: boolean): Promise<RecordsPage<I> | Error>;
35
45
  getRecordsPageTokens(aspect?: Array<string>, limit?: number): Promise<string[] | Error>;
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
2
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
13
  };
@@ -8,6 +17,7 @@ const urijs_1 = __importDefault(require("urijs"));
8
17
  const retry_1 = __importDefault(require("../retry"));
9
18
  const formatServiceError_1 = __importDefault(require("../formatServiceError"));
10
19
  const createServiceError_1 = __importDefault(require("../createServiceError"));
20
+ const ServerError_1 = __importDefault(require("../ServerError"));
11
21
  class RegistryClient {
12
22
  constructor({ baseUrl, maxRetries = 10, secondsBetweenRetries = 10, tenantId }) {
13
23
  if (tenantId === undefined) {
@@ -25,6 +35,14 @@ class RegistryClient {
25
35
  this.webHooksApi = new api_1.WebHooksApi(registryApiUrl);
26
36
  this.recordHistoryApi = new api_1.RecordHistoryApi(registryApiUrl);
27
37
  }
38
+ toServerError(error) {
39
+ if (error === null || error === void 0 ? void 0 : error.response) {
40
+ return new ServerError_1.default(error.body, error.response.statusCode);
41
+ }
42
+ else {
43
+ return error;
44
+ }
45
+ }
28
46
  getRecordUrl(id) {
29
47
  return this.baseUri.clone().segment("records").segment(id).toString();
30
48
  }
@@ -34,6 +52,20 @@ class RegistryClient {
34
52
  .then((result) => result.body)
35
53
  .catch(createServiceError_1.default);
36
54
  }
55
+ getAspectDefinition(aspectId, jwtToken) {
56
+ return __awaiter(this, void 0, void 0, function* () {
57
+ try {
58
+ const res = yield this.aspectDefinitionsApi.getById(this.tenantId, aspectId, jwtToken);
59
+ if (typeof res.body === "string") {
60
+ throw new Error("Invalid non-json response: " + res.body);
61
+ }
62
+ return res.body;
63
+ }
64
+ catch (e) {
65
+ throw this.toServerError(e);
66
+ }
67
+ });
68
+ }
37
69
  getRecord(id, aspect, optionalAspect, dereference) {
38
70
  const operation = (id) => () => this.recordsApi.getById(encodeURIComponent(id), this.tenantId, aspect, optionalAspect, dereference, this.jwt);
39
71
  return retry_1.default(operation(id), this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default("Failed to GET records.", e, retriesLeft)), (e) => {
@@ -1 +1 @@
1
- {"version":3,"file":"RegistryClient.js","sourceRoot":"","sources":["../../src/registry/RegistryClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RegistryClient.js","sourceRoot":"","sources":["../../src/registry/RegistryClient.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,mDAQmC;AACnC,kDAAwB;AACxB,qDAA6B;AAC7B,+EAAuD;AACvD,+EAAuD;AAEvD,iEAAyC;AAqBzC,MAAqB,cAAc;IAY/B,YAAY,EACR,OAAO,EACP,UAAU,GAAG,EAAE,EACf,qBAAqB,GAAG,EAAE,EAC1B,QAAQ,EACM;QACd,IAAI,QAAQ,KAAK,SAAS,EAAE;YACxB,MAAM,KAAK,CAAC,8BAA8B,CAAC,CAAC;SAC/C;QAED,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,MAAM,cAAc,GAAG,OAAO,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,IAAI,eAAG,CAAC,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QAEnD,IAAI,CAAC,oBAAoB,GAAG,IAAI,0BAAoB,CAAC,cAAc,CAAC,CAAC;QACrE,IAAI,CAAC,UAAU,GAAG,IAAI,gBAAU,CAAC,cAAc,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,iDAAiD;QACxF,IAAI,CAAC,gBAAgB,GAAG,IAAI,sBAAgB,CAAC,cAAc,CAAC,CAAC;QAC7D,IAAI,CAAC,WAAW,GAAG,IAAI,iBAAW,CAAC,cAAc,CAAC,CAAC;QACnD,IAAI,CAAC,gBAAgB,GAAG,IAAI,sBAAgB,CAAC,cAAc,CAAC,CAAC;IACjE,CAAC;IAED,aAAa,CAAC,KAAwC;QAClD,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,EAAE;YACjB,OAAO,IAAI,qBAAW,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;SACjE;aAAM;YACH,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;IAED,YAAY,CAAC,EAAU;QACnB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC1E,CAAC;IAED,oBAAoB;QAChB,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,CACzB,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpD,OAAY,eAAK,CACb,SAAS,EAAE,EACX,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,UAAU,EACf,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,CACf,OAAO,CAAC,GAAG,CACP,4BAAkB,CACd,mCAAmC,EACnC,CAAC,EACD,WAAW,CACd,CACJ,CACR;aACI,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;aAC7B,KAAK,CAAC,4BAAkB,CAAC,CAAC;IACnC,CAAC;IAEK,mBAAmB,CACrB,QAAgB,EAChB,QAAiB;;YAEjB,IAAI;gBACA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAC/C,IAAI,CAAC,QAAQ,EACb,QAAQ,EACR,QAAQ,CACX,CAAC;gBACF,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;oBAC9B,MAAM,IAAI,KAAK,CAAC,6BAA6B,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;iBAC7D;gBACD,OAAO,GAAG,CAAC,IAAI,CAAC;aACnB;YAAC,OAAO,CAAC,EAAE;gBACR,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;aAC/B;QACL,CAAC;KAAA;IAED,SAAS,CACL,EAAU,EACV,MAAsB,EACtB,cAA8B,EAC9B,WAAqB;QAErB,MAAM,SAAS,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,GAAG,EAAE,CACnC,IAAI,CAAC,UAAU,CAAC,OAAO,CACnB,kBAAkB,CAAC,EAAE,CAAC,EACtB,IAAI,CAAC,QAAQ,EACb,MAAM,EACN,cAAc,EACd,WAAW,EACX,IAAI,CAAC,GAAG,CACX,CAAC;QACN,OAAY,eAAK,CACb,SAAS,CAAC,EAAE,CAAC,EACb,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,UAAU,EACf,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,CACf,OAAO,CAAC,GAAG,CACP,4BAAkB,CAAC,wBAAwB,EAAE,CAAC,EAAE,WAAW,CAAC,CAC/D,EACL,CAAC,CAAC,EAAE,EAAE;YACF,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,KAAK,GAAG,CAAC;QACxD,CAAC,CACJ;aACI,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;aAC7B,KAAK,CAAC,4BAAkB,CAAC,CAAC;IACnC,CAAC;IAED,UAAU,CACN,MAAsB,EACtB,cAA8B,EAC9B,SAAkB,EAClB,WAAqB,EACrB,KAAc,EACd,aAAwB,EACxB,aAAwB,EACxB,OAAgB,EAChB,UAAmB,EACnB,cAAwB;QAExB,MAAM,SAAS,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,GAAG,EAAE,CAC1C,IAAI,CAAC,UAAU,CAAC,MAAM,CAClB,IAAI,CAAC,QAAQ,EACb,MAAM,EACN,cAAc,EACd,SAAS,EACT,SAAS,EACT,KAAK,EACL,WAAW,EACX,aAAa,EACb,aAAa,EACb,OAAO,EACP,UAAU,EACV,cAAc,EACd,IAAI,CAAC,GAAG,CACX,CAAC;QACN,OAAY,eAAK,CACb,SAAS,CAAC,SAAS,CAAC,EACpB,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,UAAU,EACf,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,CACf,OAAO,CAAC,GAAG,CACP,4BAAkB,CAAC,wBAAwB,EAAE,CAAC,EAAE,WAAW,CAAC,CAC/D,CACR;aACI,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;aAC7B,KAAK,CAAC,4BAAkB,CAAC,CAAC;IACnC,CAAC;IAED,oBAAoB,CAChB,MAAsB,EACtB,KAAc;QAEd,MAAM,SAAS,GAAG,GAAG,EAAE,CACnB,IAAI,CAAC,UAAU,CAAC,aAAa,CACzB,IAAI,CAAC,QAAQ,EACb,MAAM,EACN,KAAK,EACL,IAAI,CAAC,GAAG,CACX,CAAC;QACN,OAAY,eAAK,CACb,SAAS,EACT,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CAAC,UAAU,EACf,CAAC,CAAC,EAAE,WAAW,EAAE,EAAE,CACf,OAAO,CAAC,GAAG,CACP,4BAAkB,CACd,oCAAoC,EACpC,CAAC,EACD,WAAW,CACd,CACJ,CACR;aACI,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;aAC7B,KAAK,CAAC,4BAAkB,CAAC,CAAC;IACnC,CAAC;CACJ;AA1LD,iCA0LC"}
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const chai_1 = require("chai");
7
7
  const getAuthDecision_1 = __importDefault(require("../opa/getAuthDecision"));
8
- const sampleOpaResponseUnconditionalTrue_json_1 = __importDefault(require("./sampleOpaResponseUnconditionalTrue.json"));
8
+ const unconditionalTrue_json_1 = __importDefault(require("./sampleOpaResponses/unconditionalTrue.json"));
9
9
  require("mocha");
10
10
  /*
11
11
  getAuthDecision only support limited use case of OPA response AST.
@@ -15,7 +15,7 @@ require("mocha");
15
15
  */
16
16
  describe("Test OpaCompileResultParser with unconditional true response", function () {
17
17
  it("Should evalute query from parse result correctly", function () {
18
- const result = getAuthDecision_1.default(sampleOpaResponseUnconditionalTrue_json_1.default);
18
+ const result = getAuthDecision_1.default(unconditionalTrue_json_1.default);
19
19
  chai_1.expect(result).to.be.equal(true);
20
20
  });
21
21
  });
@@ -1 +1 @@
1
- {"version":3,"file":"getAuthDecision.spec.js","sourceRoot":"","sources":["../../src/test/getAuthDecision.spec.ts"],"names":[],"mappings":";;;;;AAAA,+BAA8B;AAC9B,6EAAqD;AACrD,wHAAkF;AAClF,iBAAe;AAEf;;;;;EAKE;AACF,QAAQ,CAAC,8DAA8D,EAAE;IACrE,EAAE,CAAC,kDAAkD,EAAE;QACnD,MAAM,MAAM,GAAG,yBAAe,CAAC,iDAAgC,CAAC,CAAC;QACjE,aAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"getAuthDecision.spec.js","sourceRoot":"","sources":["../../src/test/getAuthDecision.spec.ts"],"names":[],"mappings":";;;;;AAAA,+BAA8B;AAC9B,6EAAqD;AACrD,yGAAoF;AACpF,iBAAe;AAEf;;;;;EAKE;AACF,QAAQ,CAAC,8DAA8D,EAAE;IACrE,EAAE,CAAC,kDAAkD,EAAE;QACnD,MAAM,MAAM,GAAG,yBAAe,CAAC,gCAAgC,CAAC,CAAC;QACjE,aAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}