@magda/typescript-common 2.0.0-alpha.0 → 2.0.0-alpha.3

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 (88) hide show
  1. package/dist/BaseApiClient.d.ts +41 -0
  2. package/dist/BaseApiClient.js +63 -0
  3. package/dist/BaseApiClient.js.map +1 -0
  4. package/dist/IndexerApiClient.d.ts +16 -0
  5. package/dist/IndexerApiClient.js +39 -0
  6. package/dist/IndexerApiClient.js.map +1 -0
  7. package/dist/JsonTransformer.js +1 -2
  8. package/dist/JsonTransformer.js.map +1 -1
  9. package/dist/OpaCompileResponseParser.d.ts +115 -4
  10. package/dist/OpaCompileResponseParser.js +233 -19
  11. package/dist/OpaCompileResponseParser.js.map +1 -1
  12. package/dist/SQLUtils.d.ts +2 -2
  13. package/dist/SQLUtils.js +1 -1
  14. package/dist/SQLUtils.js.map +1 -1
  15. package/dist/Try.d.ts +17 -0
  16. package/dist/Try.js +68 -0
  17. package/dist/Try.js.map +1 -0
  18. package/dist/authorization-api/ApiClient.d.ts +9 -13
  19. package/dist/authorization-api/ApiClient.js +88 -31
  20. package/dist/authorization-api/ApiClient.js.map +1 -1
  21. package/dist/authorization-api/authMiddleware.d.ts +7 -7
  22. package/dist/authorization-api/authMiddleware.js +54 -52
  23. package/dist/authorization-api/authMiddleware.js.map +1 -1
  24. package/dist/authorization-api/constants.d.ts +1 -0
  25. package/dist/authorization-api/constants.js +2 -1
  26. package/dist/authorization-api/constants.js.map +1 -1
  27. package/dist/authorization-api/model.d.ts +61 -23
  28. package/dist/createNoCacheFetchOptions.d.ts +15 -0
  29. package/dist/createNoCacheFetchOptions.js +20 -0
  30. package/dist/createNoCacheFetchOptions.js.map +1 -0
  31. package/dist/fetchRequest.d.ts +11 -0
  32. package/dist/fetchRequest.js +62 -0
  33. package/dist/fetchRequest.js.map +1 -0
  34. package/dist/generated/registry/api.d.ts +12 -5
  35. package/dist/generated/registry/api.js +57 -0
  36. package/dist/generated/registry/api.js.map +1 -1
  37. package/dist/getAbsoluteUrl.d.ts +7 -7
  38. package/dist/getAbsoluteUrl.js +22 -19
  39. package/dist/getAbsoluteUrl.js.map +1 -1
  40. package/dist/getRequest.d.ts +1 -0
  41. package/dist/getRequest.js +28 -0
  42. package/dist/getRequest.js.map +1 -0
  43. package/dist/getRequestNoCache.d.ts +1 -0
  44. package/dist/getRequestNoCache.js +23 -0
  45. package/dist/getRequestNoCache.js.map +1 -0
  46. package/dist/getStorageUrl.d.ts +34 -0
  47. package/dist/getStorageUrl.js +138 -0
  48. package/dist/getStorageUrl.js.map +1 -0
  49. package/dist/handleServerError.d.ts +2 -0
  50. package/dist/handleServerError.js +17 -0
  51. package/dist/handleServerError.js.map +1 -0
  52. package/dist/opa/AspectQuery.js +3 -0
  53. package/dist/opa/AspectQuery.js.map +1 -1
  54. package/dist/opa/AuthDecision.js +1 -1
  55. package/dist/opa/AuthDecision.js.map +1 -1
  56. package/dist/opa/AuthDecisionQueryClient.js +8 -5
  57. package/dist/opa/AuthDecisionQueryClient.js.map +1 -1
  58. package/dist/registry/AuthorizedRegistryClient.d.ts +7 -11
  59. package/dist/registry/AuthorizedRegistryClient.js +56 -21
  60. package/dist/registry/AuthorizedRegistryClient.js.map +1 -1
  61. package/dist/registry/RegistryClient.d.ts +5 -7
  62. package/dist/registry/RegistryClient.js +34 -15
  63. package/dist/registry/RegistryClient.js.map +1 -1
  64. package/dist/registry/model.d.ts +5 -0
  65. package/dist/registry/model.js +3 -0
  66. package/dist/registry/model.js.map +1 -0
  67. package/dist/test/arbitraries.js +2 -4
  68. package/dist/test/arbitraries.js.map +1 -1
  69. package/dist/test/buildApiClient.spec.js +2 -41
  70. package/dist/test/buildApiClient.spec.js.map +1 -1
  71. package/dist/test/db/getTestDBConfig.js +1 -1
  72. package/dist/test/db/getTestDBConfig.js.map +1 -1
  73. package/dist/test/getStorageUrl.spec.d.ts +1 -0
  74. package/dist/test/getStorageUrl.spec.js +95 -0
  75. package/dist/test/getStorageUrl.spec.js.map +1 -0
  76. package/dist/test/mockAuthApiHost.js +2 -26
  77. package/dist/test/mockAuthApiHost.js.map +1 -1
  78. package/dist/test/mockAuthorization.js +2 -2
  79. package/dist/test/mockAuthorization.js.map +1 -1
  80. package/dist/test/registry/buildAuthorizedClient.spec.js +9 -7
  81. package/dist/test/registry/buildAuthorizedClient.spec.js.map +1 -1
  82. package/dist/test/sampleAuthDecisions/datasetPermissionWithOrgUnitConstraint.json +2 -2
  83. package/dist/test/sampleAuthDecisions/extraLargeResponse.json +2519 -0
  84. package/dist/test/sampleOpaResponses/datasetPermissionWithOrgUnitConstraint.json +2 -2
  85. package/dist/test/sampleOpaResponses/extraLargeResponse.json +104869 -0
  86. package/dist/test/testOpaCompileResponseParser.spec.js +19 -2
  87. package/dist/test/testOpaCompileResponseParser.spec.js.map +1 -1
  88. package/package.json +10 -11
@@ -5,32 +5,35 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const urijs_1 = __importDefault(require("urijs"));
7
7
  /**
8
- * Join `url` with `baseUrl` if `url` is not an absolute url
8
+ * Join `url` with `baseUrl` if `url` is not an absolute (full) url string
9
9
  *
10
10
  * @export
11
- * @param {string} url
12
- * @param {string} baseUrl
13
- * @param {{ [key: string]: any }} [optionalQueries] optional extra query parameters to add to the result url.
14
- * All values supplied will be converted into string before encoded into the url.
11
+ * @param {string} url A full url string or a url path string (/a/b/c).
12
+ * @param {string} baseUrl A baseUrl used to generate a full url when a url path string is supplied via the `url` parameter.
13
+ * @param {{ [key: string]: string }} [optionalQueries]
14
+ * @param {string[]} [allowedUrlHosts] Optional; when specify, the host of `url` parameter will only be used if it is included by this list.
15
15
  * @returns
16
16
  */
17
- function getAbsoluteUrl(url, baseUrl, optionalQueries) {
17
+ function getAbsoluteUrl(url, baseUrl, optionalQueries, allowedUrlHosts) {
18
18
  const uri = urijs_1.default(url);
19
- if (uri.hostname()) {
20
- // --- absolute url, return directly
21
- return url;
22
- }
23
- else {
24
- if (typeof baseUrl !== "string") {
25
- baseUrl = "";
19
+ const urlHost = uri.host();
20
+ if (urlHost) {
21
+ // --- absolute url, return directly only if the urlHost is included by `allowedUrlHosts` (unless `allowedUrlHosts` is not supplied)
22
+ if (!allowedUrlHosts ||
23
+ allowedUrlHosts.findIndex((item) => item === urlHost) !== -1) {
24
+ return url;
26
25
  }
27
- const baseUri = urijs_1.default(baseUrl);
28
- const query = uri.search(true);
29
- const mergedUri = baseUri.segmentCoded(baseUri.segmentCoded().concat(uri.segmentCoded()));
30
- return mergedUri
31
- .search(Object.assign(Object.assign({}, (query ? query : {})), (optionalQueries ? optionalQueries : {})))
32
- .toString();
33
26
  }
27
+ // ignore url host of `host` if any and use `baseUrl` to create the final full url string
28
+ if (typeof baseUrl !== "string") {
29
+ baseUrl = "";
30
+ }
31
+ const baseUri = urijs_1.default(baseUrl);
32
+ const query = uri.search(true);
33
+ const mergedUri = baseUri.segmentCoded(baseUri.segmentCoded().concat(uri.segmentCoded()));
34
+ return mergedUri
35
+ .search(Object.assign(Object.assign({}, (query ? query : {})), (optionalQueries ? optionalQueries : {})))
36
+ .toString();
34
37
  }
35
38
  exports.default = getAbsoluteUrl;
36
39
  //# sourceMappingURL=getAbsoluteUrl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAbsoluteUrl.js","sourceRoot":"","sources":["../src/getAbsoluteUrl.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAE1B;;;;;;;;;GASG;AACH,SAAwB,cAAc,CAClC,GAAW,EACX,OAAe,EACf,eAAwC;IAExC,MAAM,GAAG,GAAG,eAAK,CAAC,GAAG,CAAC,CAAC;IACvB,IAAI,GAAG,CAAC,QAAQ,EAAE,EAAE;QAChB,oCAAoC;QACpC,OAAO,GAAG,CAAC;KACd;SAAM;QACH,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,OAAO,GAAG,EAAE,CAAC;SAChB;QACD,MAAM,OAAO,GAAG,eAAK,CAAC,OAAO,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAClC,OAAO,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CACpD,CAAC;QAEF,OAAO,SAAS;aACX,MAAM,iCACA,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GACpB,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAC7C;aACD,QAAQ,EAAE,CAAC;KACnB;AACL,CAAC;AA1BD,iCA0BC"}
1
+ {"version":3,"file":"getAbsoluteUrl.js","sourceRoot":"","sources":["../src/getAbsoluteUrl.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAE1B;;;;;;;;;GASG;AACH,SAAwB,cAAc,CAClC,GAAW,EACX,OAAe,EACf,eAA2C,EAC3C,eAA0B;IAE1B,MAAM,GAAG,GAAG,eAAK,CAAC,GAAG,CAAC,CAAC;IACvB,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,OAAO,EAAE;QACT,oIAAoI;QACpI,IACI,CAAC,eAAe;YAChB,eAAe,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,EAC9D;YACE,OAAO,GAAG,CAAC;SACd;KACJ;IACD,yFAAyF;IACzF,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC7B,OAAO,GAAG,EAAE,CAAC;KAChB;IACD,MAAM,OAAO,GAAG,eAAK,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAClC,OAAO,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CACpD,CAAC;IAEF,OAAO,SAAS;SACX,MAAM,iCACA,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GACpB,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAC7C;SACD,QAAQ,EAAE,CAAC;AACpB,CAAC;AAjCD,iCAiCC"}
@@ -0,0 +1 @@
1
+ export default function getRequest<T = any, CT = string>(url: string, noCache?: boolean, extraFetchOptions?: RequestInit): Promise<T>;
@@ -0,0 +1,28 @@
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
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const fetchRequest_1 = __importDefault(require("./fetchRequest"));
16
+ const getRequestNoCache_1 = __importDefault(require("./getRequestNoCache"));
17
+ function getRequest(url, noCache = false, extraFetchOptions = {}) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ if (noCache) {
20
+ return yield getRequestNoCache_1.default(url, extraFetchOptions);
21
+ }
22
+ else {
23
+ return yield fetchRequest_1.default("GET", url, undefined, undefined, undefined, extraFetchOptions);
24
+ }
25
+ });
26
+ }
27
+ exports.default = getRequest;
28
+ //# sourceMappingURL=getRequest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getRequest.js","sourceRoot":"","sources":["../src/getRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kEAA0C;AAC1C,4EAAoD;AAEpD,SAA8B,UAAU,CACpC,GAAW,EACX,UAAmB,KAAK,EACxB,oBAAiC,EAAE;;QAEnC,IAAI,OAAO,EAAE;YACT,OAAO,MAAM,2BAAiB,CAAQ,GAAG,EAAE,iBAAiB,CAAC,CAAC;SACjE;aAAM;YACH,OAAO,MAAM,sBAAY,CACrB,KAAK,EACL,GAAG,EACH,SAAS,EACT,SAAS,EACT,SAAS,EACT,iBAAiB,CACpB,CAAC;SACL;IACL,CAAC;CAAA;AAjBD,6BAiBC"}
@@ -0,0 +1 @@
1
+ export default function getRequestNoCache<T = any, CT = string>(url: string, extraFetchOptions?: RequestInit): Promise<T>;
@@ -0,0 +1,23 @@
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
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const fetchRequest_1 = __importDefault(require("./fetchRequest"));
16
+ const createNoCacheFetchOptions_1 = __importDefault(require("./createNoCacheFetchOptions"));
17
+ function getRequestNoCache(url, extraFetchOptions = {}) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ return yield fetchRequest_1.default("get", url, undefined, undefined, undefined, createNoCacheFetchOptions_1.default(extraFetchOptions));
20
+ });
21
+ }
22
+ exports.default = getRequestNoCache;
23
+ //# sourceMappingURL=getRequestNoCache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getRequestNoCache.js","sourceRoot":"","sources":["../src/getRequestNoCache.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kEAA0C;AAC1C,4FAAoE;AAEpE,SAA8B,iBAAiB,CAC3C,GAAW,EACX,oBAAiC,EAAE;;QAEnC,OAAO,MAAM,sBAAY,CACrB,KAAK,EACL,GAAG,EACH,SAAS,EACT,SAAS,EACT,SAAS,EACT,mCAAyB,CAAC,iBAAiB,CAAC,CAC/C,CAAC;IACN,CAAC;CAAA;AAZD,oCAYC"}
@@ -0,0 +1,34 @@
1
+ export declare const InvalidCharsRegEx: RegExp;
2
+ export declare function isValidS3ObjectKey(key: string): boolean;
3
+ export declare function removeInvalidChars(input: string): string;
4
+ /**
5
+ * a valid s3 object key should be no more than 1024 char and only contains char as per:
6
+ * https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
7
+ * Our goal is to construct a valid s3 object key that:
8
+ * - in `datasetId/distId/fileName` pattern
9
+ * - less than 1024 chars. preserve most of file name information.
10
+ * - both `datasetId`, `distId` & `fileName` will be processed to make sure they doesn't contains invalid chars other than:
11
+ * - a-z, A-Z, 0-9
12
+ * - Exclamation point (!)
13
+ * - Hyphen (-)
14
+ * - Underscore (_)
15
+ * - Period (.), can't be the ending char.
16
+ * - Asterisk (*)
17
+ * - Single quote (')
18
+ * - Open parenthesis (()
19
+ * - Close parenthesis ())
20
+ * - any invalid chars (i.e. any chars are not on the list above) will be removed.
21
+ * - if the processed `datasetId` (i.e. after move all invalid chars) is longer than 72 chars, use md5 hash of the original `datasetId` as the `datasetId`.
22
+ * - if the processed `distId` (i.e. after move all invalid chars) is longer than 72 chars, use md5 hash of the original `distId` as the `distId`.
23
+ * - if the produced object key is still longer than 1024, we will make processed `fileName` (i.e. after move all invalid chars) shorter by:
24
+ * - keep any content after the last period (.) char if the portion is no longer than 32 chars.
25
+ * - for the portion before the last period (.) char, only keep the first a few chars so that the whole object key is less than 1024 chars.
26
+ *
27
+ * @export
28
+ * @param {string} datasetId
29
+ * @param {string} distId
30
+ * @param {string} fileName
31
+ * @return {*} {string}
32
+ */
33
+ export declare function getValidS3ObjectKey(datasetId: string, distId: string, fileName: string): string;
34
+ export default function getStorageUrl(datasetId: string, distId: string, fileName: string): string;
@@ -0,0 +1,138 @@
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
+ exports.getValidS3ObjectKey = exports.removeInvalidChars = exports.isValidS3ObjectKey = exports.InvalidCharsRegEx = void 0;
7
+ const urijs_1 = __importDefault(require("urijs"));
8
+ const uuid_1 = require("uuid");
9
+ const md5_1 = __importDefault(require("crypto-js/md5"));
10
+ // max allowed s3 object key length
11
+ // minio implements an s3 alike / compatible API thus the similar limit should apply.
12
+ const MAX_KEY_LENGTH = 1024;
13
+ exports.InvalidCharsRegEx = /[^a-zA-Z0-9!\-_.*'()]/g;
14
+ function isValidS3ObjectKey(key) {
15
+ if (!key || typeof key !== "string") {
16
+ return false;
17
+ }
18
+ if (key.length > MAX_KEY_LENGTH) {
19
+ return false;
20
+ }
21
+ return (key.split("/").findIndex((segment) => {
22
+ if (!segment) {
23
+ // two forward slashes `//` is invalid
24
+ return true;
25
+ }
26
+ if (removeInvalidChars(segment) !== segment) {
27
+ // has invalid chars
28
+ return true;
29
+ }
30
+ return false;
31
+ }) === -1);
32
+ }
33
+ exports.isValidS3ObjectKey = isValidS3ObjectKey;
34
+ function removeInvalidChars(input) {
35
+ if (!input || typeof input !== "string") {
36
+ return "";
37
+ }
38
+ return input.replace(exports.InvalidCharsRegEx, "").replace(/\.+$/, "");
39
+ }
40
+ exports.removeInvalidChars = removeInvalidChars;
41
+ /**
42
+ * a valid s3 object key should be no more than 1024 char and only contains char as per:
43
+ * https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html
44
+ * Our goal is to construct a valid s3 object key that:
45
+ * - in `datasetId/distId/fileName` pattern
46
+ * - less than 1024 chars. preserve most of file name information.
47
+ * - both `datasetId`, `distId` & `fileName` will be processed to make sure they doesn't contains invalid chars other than:
48
+ * - a-z, A-Z, 0-9
49
+ * - Exclamation point (!)
50
+ * - Hyphen (-)
51
+ * - Underscore (_)
52
+ * - Period (.), can't be the ending char.
53
+ * - Asterisk (*)
54
+ * - Single quote (')
55
+ * - Open parenthesis (()
56
+ * - Close parenthesis ())
57
+ * - any invalid chars (i.e. any chars are not on the list above) will be removed.
58
+ * - if the processed `datasetId` (i.e. after move all invalid chars) is longer than 72 chars, use md5 hash of the original `datasetId` as the `datasetId`.
59
+ * - if the processed `distId` (i.e. after move all invalid chars) is longer than 72 chars, use md5 hash of the original `distId` as the `distId`.
60
+ * - if the produced object key is still longer than 1024, we will make processed `fileName` (i.e. after move all invalid chars) shorter by:
61
+ * - keep any content after the last period (.) char if the portion is no longer than 32 chars.
62
+ * - for the portion before the last period (.) char, only keep the first a few chars so that the whole object key is less than 1024 chars.
63
+ *
64
+ * @export
65
+ * @param {string} datasetId
66
+ * @param {string} distId
67
+ * @param {string} fileName
68
+ * @return {*} {string}
69
+ */
70
+ function getValidS3ObjectKey(datasetId, distId, fileName) {
71
+ let processedDatasetId = removeInvalidChars(datasetId);
72
+ let processedDistId = removeInvalidChars(distId);
73
+ let processedFileName = removeInvalidChars(fileName);
74
+ if (!processedDatasetId.length) {
75
+ throw new Error("Failed to create object key: DatasetId after processing is an empty string.");
76
+ }
77
+ if (!processedDistId.length) {
78
+ throw new Error("Failed to create object key: DistId after processing is an empty string.");
79
+ }
80
+ if (!processedFileName.length) {
81
+ // the file name doesn't contain any valid chars.
82
+ // we generate a file name here.
83
+ processedFileName = `untitled_file_${uuid_1.v4()}.dat`;
84
+ }
85
+ // try to shorten the object key as per rules in description above
86
+ if (processedDatasetId.length > 72) {
87
+ processedDatasetId = md5_1.default(processedDatasetId).toString();
88
+ }
89
+ if (processedDistId.length > 72) {
90
+ processedDistId = md5_1.default(processedDistId).toString();
91
+ }
92
+ const totalLength = processedDatasetId.length +
93
+ processedDistId.length +
94
+ processedFileName.length +
95
+ 2; // 2 delimiter chars (forward slash)
96
+ if (totalLength < MAX_KEY_LENGTH) {
97
+ // we already got a valid object key
98
+ return `${processedDatasetId}/${processedDistId}/${processedFileName}`;
99
+ }
100
+ // if still too long, we need shorten the file name part.
101
+ const extNameIdx = processedFileName.lastIndexOf(".");
102
+ if (extNameIdx === -1) {
103
+ //there is no extension name, just simply cut the file name to make object key length fall under MAX_KEY_LENGTH
104
+ return `${processedDatasetId}/${processedDistId}/${processedFileName}`.substr(0, MAX_KEY_LENGTH);
105
+ }
106
+ // file extension name length (including `.`)
107
+ const extNameLength = processedFileName.length - extNameIdx;
108
+ const extNameLengthDiff = extNameLength - 32;
109
+ if (extNameLengthDiff > 0) {
110
+ // cut the extName to 32 chars long
111
+ processedFileName = processedFileName.substr(0, processedFileName.length - extNameLengthDiff);
112
+ if (totalLength - extNameLengthDiff < MAX_KEY_LENGTH) {
113
+ return `${processedDatasetId}/${processedDistId}/${processedFileName}`;
114
+ }
115
+ }
116
+ // still too long after cut file extension name, will have to shorten the portion before `.` of the file name
117
+ const newExtNameIdx = processedFileName.lastIndexOf(".");
118
+ const newExtName = processedFileName.substr(newExtNameIdx);
119
+ const newFileNameNoExtName = processedFileName.substring(0, newExtNameIdx);
120
+ // cut newFileNameNoExtName to make total length fall under MAX_KEY_LENGTH
121
+ const excessLength = processedDatasetId.length +
122
+ processedDistId.length +
123
+ processedFileName.length +
124
+ 2 -
125
+ MAX_KEY_LENGTH;
126
+ return `${processedDatasetId}/${processedDistId}/${newFileNameNoExtName.substr(0, newFileNameNoExtName.length - excessLength)}${newExtName}`;
127
+ }
128
+ exports.getValidS3ObjectKey = getValidS3ObjectKey;
129
+ function getStorageUrl(datasetId, distId, fileName) {
130
+ const validObjectKey = getValidS3ObjectKey(datasetId, distId, fileName);
131
+ const parts = validObjectKey.split("/");
132
+ if (parts.length !== 3) {
133
+ throw new Error(`Failed to create storage object download url for a file. Invalid object object key generated: ${validObjectKey}`);
134
+ }
135
+ return urijs_1.default("magda://storage-api").segmentCoded(parts).toString();
136
+ }
137
+ exports.default = getStorageUrl;
138
+ //# sourceMappingURL=getStorageUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getStorageUrl.js","sourceRoot":"","sources":["../src/getStorageUrl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Request, Response } from "express";
2
+ export default function handleServerError(req: Request, res: Response, e: any): void;
@@ -0,0 +1,17 @@
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 ServerError_1 = __importDefault(require("./ServerError"));
7
+ function handleServerError(req, res, e) {
8
+ if (e instanceof ServerError_1.default) {
9
+ res.status(e.statusCode).send(e.message);
10
+ }
11
+ else {
12
+ res.status(500).send("" + e);
13
+ }
14
+ console.log(`Error on request to ${req.originalUrl}: ${e}`);
15
+ }
16
+ exports.default = handleServerError;
17
+ //# sourceMappingURL=handleServerError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handleServerError.js","sourceRoot":"","sources":["../src/handleServerError.ts"],"names":[],"mappings":";;;;;AACA,gEAAwC;AAExC,SAAwB,iBAAiB,CAAC,GAAY,EAAE,GAAa,EAAE,CAAM;IACzE,IAAI,CAAC,YAAY,qBAAW,EAAE;QAC1B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;KAC5C;SAAM;QACH,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;KAChC;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,CAAC,WAAW,KAAK,CAAC,EAAE,CAAC,CAAC;AAChE,CAAC;AAPD,oCAOC"}
@@ -28,10 +28,13 @@ class AspectQueryValue {
28
28
  switch (typeof value) {
29
29
  case "number":
30
30
  this.postgresType = sql_syntax_1.sqls `NUMERIC`;
31
+ break;
31
32
  case "boolean":
32
33
  this.postgresType = sql_syntax_1.sqls `BOOL`;
34
+ break;
33
35
  case "string":
34
36
  this.postgresType = sql_syntax_1.sqls `TEXT`;
37
+ break;
35
38
  default:
36
39
  throw new Error("getPostgresValueTypeCastStr: unsupported data type: `${" +
37
40
  typeof value +
@@ -1 +1 @@
1
- {"version":3,"file":"AspectQuery.js","sourceRoot":"","sources":["../../src/opa/AspectQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AspectQuery.js","sourceRoot":"","sources":["../../src/opa/AspectQuery.ts"],"names":[],"mappings":"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"}
@@ -56,7 +56,7 @@ class AuthDecision {
56
56
  }
57
57
  }
58
58
  toSql(config) {
59
- return sql_syntax_1.default.joinWithOr(this.toAspectQueryGroups(config.prefixes).map((item) => item.toSql(config)));
59
+ return sql_syntax_1.default.joinWithOr(this.toAspectQueryGroups(config.prefixes).map((item) => item.toSql(config))).roundBracket();
60
60
  }
61
61
  }
62
62
  exports.default = AuthDecision;
@@ -1 +1 @@
1
- {"version":3,"file":"AuthDecision.js","sourceRoot":"","sources":["../../src/opa/AuthDecision.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthDecision.js","sourceRoot":"","sources":["../../src/opa/AuthDecision.ts"],"names":[],"mappings":"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"}
@@ -40,12 +40,15 @@ class AuthDecisionQueryClient {
40
40
  this.fetchOptions = {};
41
41
  this.authApiBaseUrl = authApiBaseUrl;
42
42
  this.skipQuery = skipQuery;
43
+ if (this.skipQuery) {
44
+ 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!");
45
+ }
43
46
  }
44
47
  getAuthDecision(config, jwtToken) {
45
48
  var _a, _b;
46
49
  return __awaiter(this, void 0, void 0, function* () {
47
50
  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!");
51
+ console.warn("WARNING: return unconditional true as Skip OPA (policy engine) querying option is turned on!");
49
52
  return AuthDecision_1.UnconditionalTrueDecision;
50
53
  }
51
54
  const queryParams = {};
@@ -74,11 +77,9 @@ class AuthDecisionQueryClient {
74
77
  .concat(["opa", "decision"])
75
78
  .concat(urijs_1.default(config.operationUri).segmentCoded());
76
79
  const reqUri = baseUri.segmentCoded(urlSegments).search(queryParams);
77
- const fetchConfig = Object.assign(Object.assign(Object.assign({}, AuthDecisionQueryClient.fetchOptions), this.fetchOptions), { method: usePost ? "POST" : "GET" });
80
+ const fetchConfig = Object.assign(Object.assign(Object.assign({ headers: {} }, AuthDecisionQueryClient.fetchOptions), this.fetchOptions), { method: usePost ? "POST" : "GET" });
78
81
  if (jwtToken) {
79
- fetchConfig.headers = {
80
- "X-Magda-Session": jwtToken
81
- };
82
+ fetchConfig.headers["X-Magda-Session"] = jwtToken;
82
83
  }
83
84
  const requestData = {};
84
85
  if (config === null || config === void 0 ? void 0 : config.input) {
@@ -92,6 +93,8 @@ class AuthDecisionQueryClient {
92
93
  }
93
94
  if (usePost) {
94
95
  fetchConfig.body = JSON.stringify(requestData);
96
+ fetchConfig.headers["Content-Type"] =
97
+ "application/json";
95
98
  }
96
99
  const res = yield isomorphic_fetch_1.default(reqUri.toString(), fetchConfig);
97
100
  if (res.status != 200) {
@@ -1 +1 @@
1
- {"version":3,"file":"AuthDecisionQueryClient.js","sourceRoot":"","sources":["../../src/opa/AuthDecisionQueryClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuthDecisionQueryClient.js","sourceRoot":"","sources":["../../src/opa/AuthDecisionQueryClient.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,11 @@
1
- import { AspectDefinition, Record, WebHook, Operation, WebHookAcknowledgementResponse, MultipleDeleteResult, EventsPage } from "../generated/registry/api";
1
+ import { AspectDefinition, Record, WebHook, Operation, WebHookAcknowledgementResponse, MultipleDeleteResult, EventsPage, DeleteResult } from "../generated/registry/api";
2
2
  import RegistryClient, { RegistryOptions } from "./RegistryClient";
3
3
  import { Maybe } from "tsmonad";
4
- export interface AuthorizedRegistryUserIdAndJwtSecretOptions extends RegistryOptions {
5
- userId: string;
6
- jwtSecret: string;
7
- jwt?: never;
4
+ export interface AuthorizedRegistryOptions extends RegistryOptions {
5
+ jwt?: string;
6
+ userId?: string;
7
+ jwtSecret?: string;
8
8
  }
9
- export interface AuthorizedRegistryJwtOptions extends RegistryOptions {
10
- jwt: string;
11
- userId?: never;
12
- jwtSecret?: never;
13
- }
14
- export declare type AuthorizedRegistryOptions = AuthorizedRegistryUserIdAndJwtSecretOptions | AuthorizedRegistryJwtOptions;
15
9
  export default class AuthorizedRegistryClient extends RegistryClient {
16
10
  protected jwt: string;
17
11
  constructor(options: AuthorizedRegistryOptions);
@@ -23,7 +17,9 @@ export default class AuthorizedRegistryClient extends RegistryClient {
23
17
  getHooks(): Promise<WebHook[] | Error>;
24
18
  resumeHook(webhookId: string, succeeded?: boolean, lastEventIdReceived?: string, active?: boolean): Promise<WebHookAcknowledgementResponse | Error>;
25
19
  putRecord(record: Record, tenantId?: number): Promise<Record | Error>;
20
+ patchRecord(recordId: string, recordPatch: Operation[], tenantId?: number): Promise<Record | Error>;
26
21
  putRecordAspect(recordId: string, aspectId: string, aspect: any, tenantId?: number): Promise<Record | Error>;
22
+ deleteRecordAspect(recordId: string, aspectId: string, tenantId?: number): Promise<DeleteResult | Error>;
27
23
  patchRecordAspect(recordId: string, aspectId: string, aspectPatch: Operation[], tenantId?: number): Promise<Record | Error>;
28
24
  deleteBySource(sourceTagToPreserve: string, sourceId: string, tenantId?: number): Promise<MultipleDeleteResult | "Processing" | Error>;
29
25
  getRecordHistory(id: string, pageToken?: string, start?: number, limit?: number): Promise<EventsPage | Error>;