@magda/typescript-common 1.1.0-alpha.2 → 1.1.0-rc.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 (252) hide show
  1. package/dist/AspectBuilder.d.ts +7 -0
  2. package/dist/AspectBuilder.js +3 -0
  3. package/dist/AspectBuilder.js.map +1 -0
  4. package/dist/AspectCreationFailure.d.ts +5 -0
  5. package/dist/AspectCreationFailure.js +10 -0
  6. package/dist/AspectCreationFailure.js.map +1 -0
  7. package/dist/AsyncPage.d.ts +18 -0
  8. package/dist/AsyncPage.js +140 -0
  9. package/dist/AsyncPage.js.map +1 -0
  10. package/dist/ConnectionResult.d.ts +16 -0
  11. package/dist/ConnectionResult.js +77 -0
  12. package/dist/ConnectionResult.js.map +1 -0
  13. package/dist/ConnectorRecordId.d.ts +15 -0
  14. package/dist/ConnectorRecordId.js +46 -0
  15. package/dist/ConnectorRecordId.js.map +1 -0
  16. package/dist/JsonConnector.d.ts +195 -0
  17. package/dist/JsonConnector.js +427 -0
  18. package/dist/JsonConnector.js.map +1 -0
  19. package/dist/JsonTransformer.d.ts +112 -0
  20. package/dist/JsonTransformer.js +225 -0
  21. package/dist/JsonTransformer.js.map +1 -0
  22. package/dist/OpaCompileResponseParser.d.ts +480 -0
  23. package/dist/OpaCompileResponseParser.js +1134 -0
  24. package/dist/OpaCompileResponseParser.js.map +1 -0
  25. package/dist/RecordCreationFailure.d.ts +7 -0
  26. package/dist/RecordCreationFailure.js +11 -0
  27. package/dist/RecordCreationFailure.js.map +1 -0
  28. package/dist/SimpleOpaSQLTranslator.d.ts +14 -0
  29. package/dist/SimpleOpaSQLTranslator.js +79 -0
  30. package/dist/SimpleOpaSQLTranslator.js.map +1 -0
  31. package/dist/addTrailingSlash.d.ts +1 -0
  32. package/dist/addTrailingSlash.js +15 -0
  33. package/dist/addTrailingSlash.js.map +1 -0
  34. package/dist/appendUrlSegments.d.ts +2 -0
  35. package/dist/appendUrlSegments.js +18 -0
  36. package/dist/appendUrlSegments.js.map +1 -0
  37. package/dist/authorization-api/AccessControlError.d.ts +4 -0
  38. package/dist/authorization-api/AccessControlError.js +13 -0
  39. package/dist/authorization-api/AccessControlError.js.map +1 -0
  40. package/dist/authorization-api/ApiClient.d.ts +141 -0
  41. package/dist/authorization-api/ApiClient.js +335 -0
  42. package/dist/authorization-api/ApiClient.js.map +1 -0
  43. package/dist/authorization-api/AuthError.d.ts +4 -0
  44. package/dist/authorization-api/AuthError.js +13 -0
  45. package/dist/authorization-api/AuthError.js.map +1 -0
  46. package/dist/authorization-api/GenericError.d.ts +9 -0
  47. package/dist/authorization-api/GenericError.js +17 -0
  48. package/dist/authorization-api/GenericError.js.map +1 -0
  49. package/dist/authorization-api/authMiddleware.d.ts +7 -0
  50. package/dist/authorization-api/authMiddleware.js +52 -0
  51. package/dist/authorization-api/authMiddleware.js.map +1 -0
  52. package/dist/authorization-api/model.d.ts +99 -0
  53. package/dist/authorization-api/model.js +3 -0
  54. package/dist/authorization-api/model.js.map +1 -0
  55. package/dist/coerceJson.d.ts +2 -0
  56. package/dist/coerceJson.js +13 -0
  57. package/dist/coerceJson.js.map +1 -0
  58. package/dist/createServiceError.d.ts +19 -0
  59. package/dist/createServiceError.js +45 -0
  60. package/dist/createServiceError.js.map +1 -0
  61. package/dist/delay.d.ts +2 -0
  62. package/dist/delay.js +9 -0
  63. package/dist/delay.js.map +1 -0
  64. package/dist/express/status.d.ts +30 -0
  65. package/dist/express/status.js +180 -0
  66. package/dist/express/status.js.map +1 -0
  67. package/dist/formatServiceError.d.ts +1 -0
  68. package/dist/formatServiceError.js +23 -0
  69. package/dist/formatServiceError.js.map +1 -0
  70. package/dist/generated/registry/api.d.ts +596 -0
  71. package/dist/generated/registry/api.js +2060 -0
  72. package/dist/generated/registry/api.js.map +1 -0
  73. package/dist/getAbsoluteUrl.d.ts +12 -0
  74. package/dist/getAbsoluteUrl.js +35 -0
  75. package/dist/getAbsoluteUrl.js.map +1 -0
  76. package/dist/getBasePathFromUrl.d.ts +10 -0
  77. package/dist/getBasePathFromUrl.js +27 -0
  78. package/dist/getBasePathFromUrl.js.map +1 -0
  79. package/dist/markdownToHtml.d.ts +3 -0
  80. package/dist/markdownToHtml.js +38 -0
  81. package/dist/markdownToHtml.js.map +1 -0
  82. package/dist/opa/OpaTypes.d.ts +41 -0
  83. package/dist/opa/OpaTypes.js +3 -0
  84. package/dist/opa/OpaTypes.js.map +1 -0
  85. package/dist/opa/getAuthDecision.d.ts +19 -0
  86. package/dist/opa/getAuthDecision.js +94 -0
  87. package/dist/opa/getAuthDecision.js.map +1 -0
  88. package/dist/opa/queryOpa.d.ts +1 -0
  89. package/dist/opa/queryOpa.js +41 -0
  90. package/dist/opa/queryOpa.js.map +1 -0
  91. package/dist/registry/AuthorizedRegistryClient.d.ts +29 -0
  92. package/dist/registry/AuthorizedRegistryClient.js +115 -0
  93. package/dist/registry/AuthorizedRegistryClient.js.map +1 -0
  94. package/dist/registry/RegistryClient.d.ts +36 -0
  95. package/dist/registry/RegistryClient.js +59 -0
  96. package/dist/registry/RegistryClient.js.map +1 -0
  97. package/dist/registry/TenantConsts.d.ts +31 -0
  98. package/dist/registry/TenantConsts.js +35 -0
  99. package/dist/registry/TenantConsts.js.map +1 -0
  100. package/dist/registry-manual/api.d.ts +9 -0
  101. package/dist/registry-manual/api.js +10 -0
  102. package/dist/registry-manual/api.js.map +1 -0
  103. package/dist/request.d.ts +3 -0
  104. package/dist/request.js +19 -0
  105. package/dist/request.js.map +1 -0
  106. package/dist/retry.d.ts +1 -0
  107. package/dist/retry.js +21 -0
  108. package/dist/retry.js.map +1 -0
  109. package/dist/retryBackoff.d.ts +1 -0
  110. package/dist/retryBackoff.js +21 -0
  111. package/dist/retryBackoff.js.map +1 -0
  112. package/dist/runLater.d.ts +1 -0
  113. package/dist/runLater.js +16 -0
  114. package/dist/runLater.js.map +1 -0
  115. package/dist/session/GetUserId.d.ts +5 -0
  116. package/dist/session/GetUserId.js +41 -0
  117. package/dist/session/GetUserId.js.map +1 -0
  118. package/dist/session/GetUserSession.d.ts +3 -0
  119. package/dist/session/GetUserSession.js +22 -0
  120. package/dist/session/GetUserSession.js.map +1 -0
  121. package/dist/session/addJwtSecretFromEnvVar.d.ts +14 -0
  122. package/dist/session/addJwtSecretFromEnvVar.js +23 -0
  123. package/dist/session/addJwtSecretFromEnvVar.js.map +1 -0
  124. package/dist/session/buildJwt.d.ts +1 -0
  125. package/dist/session/buildJwt.js +8 -0
  126. package/dist/session/buildJwt.js.map +1 -0
  127. package/dist/session/cookieUtils.d.ts +16 -0
  128. package/dist/session/cookieUtils.js +19 -0
  129. package/dist/session/cookieUtils.js.map +1 -0
  130. package/dist/session/destroySession.d.ts +10 -0
  131. package/dist/session/destroySession.js +44 -0
  132. package/dist/session/destroySession.js.map +1 -0
  133. package/dist/session/getSessionId.d.ts +2 -0
  134. package/dist/session/getSessionId.js +28 -0
  135. package/dist/session/getSessionId.js.map +1 -0
  136. package/dist/tenant-api/AuthorizedTenantClient.d.ts +25 -0
  137. package/dist/tenant-api/AuthorizedTenantClient.js +61 -0
  138. package/dist/tenant-api/AuthorizedTenantClient.js.map +1 -0
  139. package/dist/tenant-api/Tenant.d.ts +17 -0
  140. package/dist/tenant-api/Tenant.js +10 -0
  141. package/dist/tenant-api/Tenant.js.map +1 -0
  142. package/dist/test/JsonConnector.spec.d.ts +1 -0
  143. package/dist/test/JsonConnector.spec.js +352 -0
  144. package/dist/test/JsonConnector.spec.js.map +1 -0
  145. package/dist/test/JsonTransformer.spec.d.ts +1 -0
  146. package/dist/test/JsonTransformer.spec.js +98 -0
  147. package/dist/test/JsonTransformer.spec.js.map +1 -0
  148. package/dist/test/arbitraries.d.ts +98 -0
  149. package/dist/test/arbitraries.js +264 -0
  150. package/dist/test/arbitraries.js.map +1 -0
  151. package/dist/test/aspect-templates/organization-details.d.ts +4 -0
  152. package/dist/test/aspect-templates/organization-details.js +11 -0
  153. package/dist/test/aspect-templates/organization-details.js.map +1 -0
  154. package/dist/test/buildApiClient.spec.d.ts +1 -0
  155. package/dist/test/buildApiClient.spec.js +177 -0
  156. package/dist/test/buildApiClient.spec.js.map +1 -0
  157. package/dist/test/buildAuthorizedTenantClient.spec.d.ts +1 -0
  158. package/dist/test/buildAuthorizedTenantClient.spec.js +60 -0
  159. package/dist/test/buildAuthorizedTenantClient.spec.js.map +1 -0
  160. package/dist/test/connectors/MockExpressServer.d.ts +5 -0
  161. package/dist/test/connectors/MockExpressServer.js +28 -0
  162. package/dist/test/connectors/MockExpressServer.js.map +1 -0
  163. package/dist/test/connectors/MockRegistry.d.ts +7 -0
  164. package/dist/test/connectors/MockRegistry.js +93 -0
  165. package/dist/test/connectors/MockRegistry.js.map +1 -0
  166. package/dist/test/connectors/runConnectorTest.d.ts +5 -0
  167. package/dist/test/connectors/runConnectorTest.js +106 -0
  168. package/dist/test/connectors/runConnectorTest.js.map +1 -0
  169. package/dist/test/db/getTestDBConfig.d.ts +7 -0
  170. package/dist/test/db/getTestDBConfig.js +13 -0
  171. package/dist/test/db/getTestDBConfig.js.map +1 -0
  172. package/dist/test/db/runMigrationSql.d.ts +9 -0
  173. package/dist/test/db/runMigrationSql.js +82 -0
  174. package/dist/test/db/runMigrationSql.js.map +1 -0
  175. package/dist/test/express/status.spec.d.ts +1 -0
  176. package/dist/test/express/status.spec.js +160 -0
  177. package/dist/test/express/status.spec.js.map +1 -0
  178. package/dist/test/fakeArgv.d.ts +2 -0
  179. package/dist/test/fakeArgv.js +7 -0
  180. package/dist/test/fakeArgv.js.map +1 -0
  181. package/dist/test/getAuthDecision.spec.d.ts +1 -0
  182. package/dist/test/getAuthDecision.spec.js +22 -0
  183. package/dist/test/getAuthDecision.spec.js.map +1 -0
  184. package/dist/test/getBasePathFromUrl.spec.d.ts +1 -0
  185. package/dist/test/getBasePathFromUrl.spec.js +25 -0
  186. package/dist/test/getBasePathFromUrl.spec.js.map +1 -0
  187. package/dist/test/jsverify.d.ts +2 -0
  188. package/dist/test/jsverify.js +8 -0
  189. package/dist/test/jsverify.js.map +1 -0
  190. package/dist/test/mockAuthApiHost.d.ts +14 -0
  191. package/dist/test/mockAuthApiHost.js +174 -0
  192. package/dist/test/mockAuthApiHost.js.map +1 -0
  193. package/dist/test/mockAuthorization.d.ts +3 -0
  194. package/dist/test/mockAuthorization.js +24 -0
  195. package/dist/test/mockAuthorization.js.map +1 -0
  196. package/dist/test/mockTenantDataStore.d.ts +8 -0
  197. package/dist/test/mockTenantDataStore.js +41 -0
  198. package/dist/test/mockTenantDataStore.js.map +1 -0
  199. package/dist/test/mockUserDataStore.d.ts +11 -0
  200. package/dist/test/mockUserDataStore.js +56 -0
  201. package/dist/test/mockUserDataStore.js.map +1 -0
  202. package/dist/test/registry/buildAuthorizedClient.spec.d.ts +1 -0
  203. package/dist/test/registry/buildAuthorizedClient.spec.js +101 -0
  204. package/dist/test/registry/buildAuthorizedClient.spec.js.map +1 -0
  205. package/dist/test/sampleOpaResponse.json +480 -0
  206. package/dist/test/sampleOpaResponseSimple.json +173 -0
  207. package/dist/test/sampleOpaResponseUnconditionalTrue.json +193 -0
  208. package/dist/test/sampleOpaResponseUnconditionalTrueWithDefaultRule.json +303 -0
  209. package/dist/test/sampleOpaResponseWithDefaultRule.json +303 -0
  210. package/dist/test/session/buildJwt.spec.d.ts +1 -0
  211. package/dist/test/session/buildJwt.spec.js +50 -0
  212. package/dist/test/session/buildJwt.spec.js.map +1 -0
  213. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsAndOwnerTest.spec.d.ts +1 -0
  214. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsAndOwnerTest.spec.js +64 -0
  215. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsAndOwnerTest.spec.js.map +1 -0
  216. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsTest.spec.d.ts +1 -0
  217. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsTest.spec.js +52 -0
  218. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsTest.spec.js.map +1 -0
  219. package/dist/test/session/buildJwtForRegistryEsriOpaOwnerTest.spec.d.ts +1 -0
  220. package/dist/test/session/buildJwtForRegistryEsriOpaOwnerTest.spec.js +36 -0
  221. package/dist/test/session/buildJwtForRegistryEsriOpaOwnerTest.spec.js.map +1 -0
  222. package/dist/test/testAsyncPage.spec.d.ts +1 -0
  223. package/dist/test/testAsyncPage.spec.js +463 -0
  224. package/dist/test/testAsyncPage.spec.js.map +1 -0
  225. package/dist/test/testOpaCompileResponseParser.spec.d.ts +1 -0
  226. package/dist/test/testOpaCompileResponseParser.spec.js +148 -0
  227. package/dist/test/testOpaCompileResponseParser.spec.js.map +1 -0
  228. package/dist/test/util.d.ts +1 -0
  229. package/dist/test/util.js +8 -0
  230. package/dist/test/util.js.map +1 -0
  231. package/dist/util/arrayToMaybe.d.ts +2 -0
  232. package/dist/util/arrayToMaybe.js +8 -0
  233. package/dist/util/arrayToMaybe.js.map +1 -0
  234. package/dist/util/cleanOrgTitle.d.ts +1 -0
  235. package/dist/util/cleanOrgTitle.js +13 -0
  236. package/dist/util/cleanOrgTitle.js.map +1 -0
  237. package/dist/util/escapeRegExp.d.ts +2 -0
  238. package/dist/util/escapeRegExp.js +5 -0
  239. package/dist/util/escapeRegExp.js.map +1 -0
  240. package/dist/util/getMinikubeIP.d.ts +1 -0
  241. package/dist/util/getMinikubeIP.js +13 -0
  242. package/dist/util/getMinikubeIP.js.map +1 -0
  243. package/dist/util/isUuid.d.ts +2 -0
  244. package/dist/util/isUuid.js +6 -0
  245. package/dist/util/isUuid.js.map +1 -0
  246. package/dist/util/unionToThrowable.d.ts +1 -0
  247. package/dist/util/unionToThrowable.js +12 -0
  248. package/dist/util/unionToThrowable.js.map +1 -0
  249. package/dist/utilityTypes.d.ts +1 -0
  250. package/dist/utilityTypes.js +3 -0
  251. package/dist/utilityTypes.js.map +1 -0
  252. package/package.json +3 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/generated/registry/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Join `url` with `baseUrl` if `url` is not an absolute url
3
+ *
4
+ * @export
5
+ * @param {string} url
6
+ * @param {string} baseUrl
7
+ * @param {{ [key: string]: string }} [optionalQueries]
8
+ * @returns
9
+ */
10
+ export default function getAbsoluteUrl(url: string, baseUrl: string, optionalQueries?: {
11
+ [key: string]: string;
12
+ }): string;
@@ -0,0 +1,35 @@
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 urijs_1 = __importDefault(require("urijs"));
7
+ /**
8
+ * Join `url` with `baseUrl` if `url` is not an absolute url
9
+ *
10
+ * @export
11
+ * @param {string} url
12
+ * @param {string} baseUrl
13
+ * @param {{ [key: string]: string }} [optionalQueries]
14
+ * @returns
15
+ */
16
+ function getAbsoluteUrl(url, baseUrl, optionalQueries) {
17
+ const uri = urijs_1.default(url);
18
+ if (uri.hostname()) {
19
+ // --- absolute url, return directly
20
+ return url;
21
+ }
22
+ else {
23
+ if (typeof baseUrl !== "string") {
24
+ baseUrl = "";
25
+ }
26
+ const baseUri = urijs_1.default(baseUrl);
27
+ const query = uri.search(true);
28
+ const mergedUri = baseUri.segmentCoded(baseUri.segmentCoded().concat(uri.segmentCoded()));
29
+ return mergedUri
30
+ .search(Object.assign(Object.assign({}, (query ? query : {})), (optionalQueries ? optionalQueries : {})))
31
+ .toString();
32
+ }
33
+ }
34
+ exports.default = getAbsoluteUrl;
35
+ //# sourceMappingURL=getAbsoluteUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAbsoluteUrl.js","sourceRoot":"","sources":["../src/getAbsoluteUrl.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAE1B;;;;;;;;GAQG;AACH,SAAwB,cAAc,CAClC,GAAW,EACX,OAAe,EACf,eAA2C;IAE3C,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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Get basePath from given URL.
3
+ * e.g. http://example.com or http://example.com/ will return "/"
4
+ * http://example.com/sds/sdsd or http://example.com/sds/sdsd/ will return "/sds/sdsd"
5
+ *
6
+ * @export
7
+ * @param {string} url
8
+ * @returns {string}
9
+ */
10
+ export default function getBasePathFromUrl(url: string): string;
@@ -0,0 +1,27 @@
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 urijs_1 = __importDefault(require("urijs"));
7
+ /**
8
+ * Get basePath from given URL.
9
+ * e.g. http://example.com or http://example.com/ will return "/"
10
+ * http://example.com/sds/sdsd or http://example.com/sds/sdsd/ will return "/sds/sdsd"
11
+ *
12
+ * @export
13
+ * @param {string} url
14
+ * @returns {string}
15
+ */
16
+ function getBasePathFromUrl(url) {
17
+ if (!url) {
18
+ return "/";
19
+ }
20
+ return ("/" +
21
+ urijs_1.default(url)
22
+ .segment()
23
+ .filter((key) => key !== "")
24
+ .join("/"));
25
+ }
26
+ exports.default = getBasePathFromUrl;
27
+ //# sourceMappingURL=getBasePathFromUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getBasePathFromUrl.js","sourceRoot":"","sources":["../src/getBasePathFromUrl.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAE1B;;;;;;;;GAQG;AACH,SAAwB,kBAAkB,CAAC,GAAW;IAClD,IAAI,CAAC,GAAG,EAAE;QACN,OAAO,GAAG,CAAC;KACd;IACD,OAAO,CACH,GAAG;QACH,eAAK,CAAC,GAAG,CAAC;aACL,OAAO,EAAE;aACT,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC;aAC3B,IAAI,CAAC,GAAG,CAAC,CACjB,CAAC;AACN,CAAC;AAXD,qCAWC"}
@@ -0,0 +1,3 @@
1
+ export default function markdownToHtml(markdownString: string, allowUnsafeHtml?: boolean, options?: {
2
+ FORBID_TAGS: string[];
3
+ }): string;
@@ -0,0 +1,38 @@
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 markdown_it_1 = __importDefault(require("markdown-it"));
7
+ const dompurify_1 = __importDefault(require("dompurify"));
8
+ const md = new markdown_it_1.default({
9
+ html: true,
10
+ linkify: true,
11
+ breaks: true
12
+ });
13
+ const htmlRegex = /^\s*<[^>]+>/;
14
+ function markdownToHtml(markdownString, allowUnsafeHtml = false, options = {
15
+ FORBID_TAGS: ["svg", "math", "style"]
16
+ }) {
17
+ if (!markdownString || typeof markdownString !== "string") {
18
+ return markdownString;
19
+ }
20
+ // If the text looks like html, don't try to interpret it as Markdown because
21
+ // we'll probably break it in the process.
22
+ var unsafeHtml;
23
+ if (htmlRegex.test(markdownString)) {
24
+ unsafeHtml = markdownString;
25
+ }
26
+ else {
27
+ // Note this would wrap non-standard tags such as <collapsible>hi</collapsible> in a <p></p>, which is bad.
28
+ unsafeHtml = md.render(markdownString);
29
+ }
30
+ if (allowUnsafeHtml) {
31
+ return unsafeHtml;
32
+ }
33
+ else {
34
+ return dompurify_1.default.sanitize(unsafeHtml, options);
35
+ }
36
+ }
37
+ exports.default = markdownToHtml;
38
+ //# sourceMappingURL=markdownToHtml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdownToHtml.js","sourceRoot":"","sources":["../src/markdownToHtml.ts"],"names":[],"mappings":";;;;;AAAA,8DAAqC;AACrC,0DAAkC;AAElC,MAAM,EAAE,GAAG,IAAI,qBAAU,CAAC;IACtB,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;CACf,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,SAAwB,cAAc,CAClC,cAAsB,EACtB,kBAA2B,KAAK,EAChC,OAAO,GAAG;IACN,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC;CACxC;IAED,IAAI,CAAC,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;QACvD,OAAO,cAAc,CAAC;KACzB;IACD,6EAA6E;IAC7E,0CAA0C;IAC1C,IAAI,UAAU,CAAC;IACf,IAAI,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE;QAChC,UAAU,GAAG,cAAc,CAAC;KAC/B;SAAM;QACH,2GAA2G;QAC3G,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;KAC1C;IACD,IAAI,eAAe,EAAE;QACjB,OAAO,UAAU,CAAC;KACrB;SAAM;QACH,OAAO,mBAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;KAClD;AACL,CAAC;AAxBD,iCAwBC"}
@@ -0,0 +1,41 @@
1
+ export interface OpaCompileResponse {
2
+ result: {
3
+ queries?: OpaQuery[];
4
+ support?: OpaSupport[];
5
+ };
6
+ }
7
+ export declare type OpaQuery = {
8
+ index: number;
9
+ terms: OpaTerm[];
10
+ }[];
11
+ export interface OpaSupport {
12
+ }
13
+ export declare type OpaTerm = OpaRef | OpaValue | OpaVar;
14
+ export interface OpaRef {
15
+ type: "ref";
16
+ value: (OpaValue | OpaVar)[];
17
+ }
18
+ export interface OpaVar {
19
+ type: "var";
20
+ value: OpaOp | "data" | "input";
21
+ }
22
+ export declare type OpaValue = OpaBoolean | OpaString | OpaValueNumber;
23
+ export interface OpaBoolean {
24
+ type: "boolean";
25
+ value: boolean;
26
+ }
27
+ export interface OpaString {
28
+ type: "string";
29
+ value: string;
30
+ }
31
+ export interface OpaValueNumber {
32
+ type: "number";
33
+ value: number;
34
+ }
35
+ export declare type OpaOp = OpaEq | OpaNeq | OpaLt | OpaGt | OpaLte | OpaGte;
36
+ export declare type OpaEq = "eq" | "equal";
37
+ export declare type OpaNeq = "neq";
38
+ export declare type OpaLt = "lt";
39
+ export declare type OpaGt = "gt";
40
+ export declare type OpaLte = "lte";
41
+ export declare type OpaGte = "gte";
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=OpaTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpaTypes.js","sourceRoot":"","sources":["../../src/opa/OpaTypes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,19 @@
1
+ import { OpaCompileResponse } from "./OpaTypes";
2
+ export declare type AuthDecision = boolean | AuthOr | AuthAnd | AuthQuery;
3
+ export declare class AuthQuery {
4
+ readonly path: string[];
5
+ readonly sign: "=" | "!=" | "<" | ">" | "<=" | ">=";
6
+ readonly value: string | boolean | number;
7
+ constructor(path: string[], sign: "=" | "!=" | "<" | ">" | "<=" | ">=", value: string | boolean | number);
8
+ }
9
+ export declare class AuthAnd {
10
+ readonly parts: AuthDecision[];
11
+ constructor(parts: AuthDecision[]);
12
+ joiner: string;
13
+ }
14
+ export declare class AuthOr {
15
+ readonly parts: AuthDecision[];
16
+ constructor(parts: AuthDecision[]);
17
+ joiner: string;
18
+ }
19
+ export default function getAuthDecision(response: OpaCompileResponse): AuthDecision;
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuthOr = exports.AuthAnd = exports.AuthQuery = void 0;
4
+ class AuthQuery {
5
+ constructor(path, sign, value) {
6
+ this.path = path;
7
+ this.sign = sign;
8
+ this.value = value;
9
+ }
10
+ }
11
+ exports.AuthQuery = AuthQuery;
12
+ class AuthAnd {
13
+ constructor(parts) {
14
+ this.parts = parts;
15
+ this.joiner = "and";
16
+ }
17
+ }
18
+ exports.AuthAnd = AuthAnd;
19
+ class AuthOr {
20
+ constructor(parts) {
21
+ this.parts = parts;
22
+ this.joiner = "or";
23
+ }
24
+ }
25
+ exports.AuthOr = AuthOr;
26
+ function getAuthDecision(response) {
27
+ if (response.result.support) {
28
+ throw new Error("Cannot understand support in query " + JSON.stringify(response));
29
+ }
30
+ if (response.result.queries) {
31
+ if (response.result.queries.findIndex((query) => !(query === null || query === void 0 ? void 0 : query.length)) !== -1) {
32
+ // --- if any query is an empty array, we should consider it as an unconditional match / true
33
+ return true;
34
+ }
35
+ return new AuthOr(response.result.queries.map((query) => new AuthAnd(query.map((queryPart) => {
36
+ if (queryPart.terms.length !== 3) {
37
+ throw new Error("Could not understand terms " +
38
+ JSON.stringify(queryPart.terms));
39
+ }
40
+ const sign = getSign(queryPart.terms[0]);
41
+ const path = getPath(queryPart.terms[1]);
42
+ const value = getValue(queryPart.terms[2]);
43
+ return new AuthQuery(path, sign, value);
44
+ }))));
45
+ }
46
+ else {
47
+ return false;
48
+ }
49
+ }
50
+ exports.default = getAuthDecision;
51
+ function getPath(term) {
52
+ if (term.type !== "ref" ||
53
+ term.value.length === 0 ||
54
+ term.value[0].type !== "var" ||
55
+ term.value[0].value !== "input") {
56
+ throw new Error("Could not understand " + JSON.stringify(term));
57
+ }
58
+ return term.value.slice(2).map((valueObj) => valueObj.value.toString());
59
+ }
60
+ function getSign(term) {
61
+ if (term.type !== "ref" ||
62
+ term.value.length !== 1 ||
63
+ term.value[0].type !== "var") {
64
+ throw new Error(JSON.stringify(term) + " is not a sign");
65
+ }
66
+ switch (term.value[0].value) {
67
+ case "eq":
68
+ case "equal":
69
+ return "=";
70
+ case "gt":
71
+ return ">";
72
+ case "gte":
73
+ return ">=";
74
+ case "lt":
75
+ return "<";
76
+ case "lte":
77
+ return "<=";
78
+ case "neq":
79
+ return "!=";
80
+ default:
81
+ throw new Error(term.value[0].value + " is not a sign");
82
+ }
83
+ }
84
+ function getValue(term) {
85
+ if (term.type === "string" ||
86
+ term.type === "boolean" ||
87
+ term.type === "number") {
88
+ return term.value;
89
+ }
90
+ else {
91
+ throw new Error("Could not get value from " + JSON.stringify(term));
92
+ }
93
+ }
94
+ //# sourceMappingURL=getAuthDecision.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAuthDecision.js","sourceRoot":"","sources":["../../src/opa/getAuthDecision.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export default function queryOpa(query: string, input: object, unknowns: string[], jwtToken: string, opaUrl: string): Promise<import("./getAuthDecision").AuthDecision>;
@@ -0,0 +1,41 @@
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 isomorphic_fetch_1 = __importDefault(require("isomorphic-fetch"));
16
+ const getAuthDecision_1 = __importDefault(require("./getAuthDecision"));
17
+ function queryOpa(query, input, unknowns, jwtToken, opaUrl) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ const body = {
20
+ query,
21
+ input,
22
+ unknowns
23
+ };
24
+ const res = yield isomorphic_fetch_1.default(`${opaUrl}compile`, {
25
+ method: "POST",
26
+ body: JSON.stringify(body),
27
+ headers: Object.assign({ "Content-Type": "application/json" }, (jwtToken ? { "X-Magda-Session": jwtToken } : {}))
28
+ });
29
+ if (res.status === 200) {
30
+ return getAuthDecision_1.default(yield res.json());
31
+ }
32
+ else {
33
+ throw new Error("Could not contact OPA - " +
34
+ res.statusText +
35
+ " " +
36
+ (yield res.text()));
37
+ }
38
+ });
39
+ }
40
+ exports.default = queryOpa;
41
+ //# sourceMappingURL=queryOpa.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryOpa.js","sourceRoot":"","sources":["../../src/opa/queryOpa.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,wEAAqC;AACrC,wEAAgD;AAEhD,SAA8B,QAAQ,CAClC,KAAa,EACb,KAAa,EACb,QAAkB,EAClB,QAAgB,EAChB,MAAc;;QAEd,MAAM,IAAI,GAAG;YACT,KAAK;YACL,KAAK;YACL,QAAQ;SACX,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,0BAAK,CAAC,GAAG,MAAM,SAAS,EAAE;YACxC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,OAAO,kBACH,cAAc,EAAE,kBAAkB,IAC/B,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACvD;SACJ,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;YACpB,OAAO,yBAAe,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;SAC5C;aAAM;YACH,MAAM,IAAI,KAAK,CACX,0BAA0B;gBACtB,GAAG,CAAC,UAAU;gBACd,GAAG;gBACH,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CACzB,CAAC;SACL;IACL,CAAC;CAAA;AAhCD,2BAgCC"}
@@ -0,0 +1,29 @@
1
+ import { AspectDefinition, Record, WebHook, Operation, WebHookAcknowledgementResponse, MultipleDeleteResult, EventsPage } from "../generated/registry/api";
2
+ import RegistryClient, { RegistryOptions } from "./RegistryClient";
3
+ import { Maybe } from "tsmonad";
4
+ export interface AuthorizedRegistryUserIdAndJwtSecretOptions extends RegistryOptions {
5
+ userId: string;
6
+ jwtSecret: string;
7
+ jwt?: never;
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
+ export default class AuthorizedRegistryClient extends RegistryClient {
16
+ protected jwt: string;
17
+ constructor(options: AuthorizedRegistryOptions);
18
+ putAspectDefinition(aspectDefinition: AspectDefinition, tenantId?: number): Promise<AspectDefinition | Error>;
19
+ postHook(hook: WebHook): Promise<WebHook | Error>;
20
+ putHook(hook: WebHook): Promise<WebHook | Error>;
21
+ getHook(hookId: string): Promise<Maybe<WebHook> | Error>;
22
+ getHooks(): Promise<WebHook[] | Error>;
23
+ resumeHook(webhookId: string, succeeded?: boolean, lastEventIdReceived?: string, active?: boolean): Promise<WebHookAcknowledgementResponse | Error>;
24
+ putRecord(record: Record, tenantId?: number): Promise<Record | Error>;
25
+ putRecordAspect(recordId: string, aspectId: string, aspect: any, tenantId?: number): Promise<Record | Error>;
26
+ patchRecordAspect(recordId: string, aspectId: string, aspectPatch: Operation[], tenantId?: number): Promise<Record | Error>;
27
+ deleteBySource(sourceTagToPreserve: string, sourceId: string, tenantId?: number): Promise<MultipleDeleteResult | "Processing" | Error>;
28
+ getRecordHistory(id: string, pageToken?: string, start?: number, limit?: number): Promise<EventsPage | Error>;
29
+ }
@@ -0,0 +1,115 @@
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 RegistryClient_1 = __importDefault(require("./RegistryClient"));
7
+ const retry_1 = __importDefault(require("../retry"));
8
+ const formatServiceError_1 = __importDefault(require("../formatServiceError"));
9
+ const createServiceError_1 = __importDefault(require("../createServiceError"));
10
+ const buildJwt_1 = __importDefault(require("../session/buildJwt"));
11
+ const tsmonad_1 = require("tsmonad");
12
+ class AuthorizedRegistryClient extends RegistryClient_1.default {
13
+ constructor(options) {
14
+ if (options.tenantId === undefined || options.tenantId === null) {
15
+ throw Error("A tenant id must be defined.");
16
+ }
17
+ if (!options.jwt) {
18
+ if (!options.userId || !options.jwtSecret) {
19
+ throw Error("Either jwt or userId and jwtSecret must have values.");
20
+ }
21
+ }
22
+ super(options);
23
+ this.jwt = options.jwt
24
+ ? options.jwt
25
+ : buildJwt_1.default(options.jwtSecret, options.userId);
26
+ }
27
+ putAspectDefinition(aspectDefinition, tenantId = this.tenantId) {
28
+ const operation = () => this.aspectDefinitionsApi.putById(tenantId, encodeURIComponent(aspectDefinition.id), aspectDefinition, this.jwt);
29
+ 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)))
30
+ .then((result) => result.body)
31
+ .catch(createServiceError_1.default);
32
+ }
33
+ postHook(hook) {
34
+ const operation = () => this.webHooksApi.create(hook, this.jwt);
35
+ return retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to PUT hook record.`, e, retriesLeft)))
36
+ .then((result) => result.body)
37
+ .catch(createServiceError_1.default);
38
+ }
39
+ putHook(hook) {
40
+ const operation = () => this.webHooksApi.putById(encodeURIComponent(hook.id), hook, this.jwt);
41
+ return retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to PUT hook record.`, e, retriesLeft)))
42
+ .then((result) => result.body)
43
+ .catch(createServiceError_1.default);
44
+ }
45
+ getHook(hookId) {
46
+ const operation = () => this.webHooksApi
47
+ .getById(encodeURIComponent(hookId), this.jwt)
48
+ .then((result) => tsmonad_1.Maybe.just(result.body))
49
+ .catch((e) => {
50
+ if (e.response && e.response.statusCode === 404) {
51
+ return tsmonad_1.Maybe.nothing();
52
+ }
53
+ else {
54
+ throw new Error("Failed to get hook, status was " +
55
+ (e.response && e.response.statusCode) +
56
+ "\n" +
57
+ e.message);
58
+ }
59
+ });
60
+ return (retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to GET hook ${hookId}`, e, retriesLeft))).catch(createServiceError_1.default));
61
+ }
62
+ getHooks() {
63
+ const operation = () => () => this.webHooksApi.getAll(this.jwt);
64
+ return retry_1.default(operation(), this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default("Failed to GET hooks.", e, retriesLeft)))
65
+ .then((result) => result.body)
66
+ .catch(createServiceError_1.default);
67
+ }
68
+ resumeHook(webhookId, succeeded = false, lastEventIdReceived = null, active) {
69
+ const operation = () => this.webHooksApi.ack(encodeURIComponent(webhookId), { succeeded, lastEventIdReceived, active }, this.jwt);
70
+ return retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to resume webhook ${webhookId}`, e, retriesLeft)))
71
+ .then((result) => result.body)
72
+ .catch(createServiceError_1.default);
73
+ }
74
+ putRecord(record, tenantId = this.tenantId) {
75
+ const operation = () => this.recordsApi.putById(tenantId, encodeURIComponent(record.id), record, this.jwt);
76
+ return retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to PUT data registry record with ID "${record.id}".`, e, retriesLeft)))
77
+ .then((result) => result.body)
78
+ .catch(createServiceError_1.default);
79
+ }
80
+ putRecordAspect(recordId, aspectId, aspect, tenantId = this.tenantId) {
81
+ const operation = () => this.recordAspectsApi.putById(encodeURIComponent(recordId), aspectId, aspect, this.jwt, tenantId);
82
+ return retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to PUT data registry aspect ${aspectId} for record with ID "${recordId}".`, e, retriesLeft)))
83
+ .then((result) => result.body)
84
+ .catch(createServiceError_1.default);
85
+ }
86
+ patchRecordAspect(recordId, aspectId, aspectPatch, tenantId = this.tenantId) {
87
+ const operation = () => this.recordAspectsApi.patchById(encodeURIComponent(recordId), aspectId, aspectPatch, this.jwt, tenantId);
88
+ return retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to PUT data registry aspect ${aspectId} for record with ID "${recordId}".`, e, retriesLeft)))
89
+ .then((result) => result.body)
90
+ .catch(createServiceError_1.default);
91
+ }
92
+ deleteBySource(sourceTagToPreserve, sourceId, tenantId = this.tenantId) {
93
+ const operation = () => this.recordsApi
94
+ .trimBySourceTag(tenantId, sourceTagToPreserve, sourceId, this.jwt)
95
+ .then((result) => {
96
+ if (result.response.statusCode === 202) {
97
+ return "Processing";
98
+ }
99
+ else {
100
+ return result.body;
101
+ }
102
+ });
103
+ return retry_1.default(operation, this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default(`Failed to DELETE with sourceTagToPreserve ${sourceTagToPreserve} and sourceId ${sourceId}`, e, retriesLeft))).catch(createServiceError_1.default);
104
+ }
105
+ getRecordHistory(id, pageToken, start, limit) {
106
+ const operation = (id) => () => this.recordHistoryApi.history(this.tenantId, encodeURIComponent(id), this.jwt, pageToken, start, limit);
107
+ return retry_1.default(operation(id), this.secondsBetweenRetries, this.maxRetries, (e, retriesLeft) => console.log(formatServiceError_1.default("Failed to GET history.", e, retriesLeft)), (e) => {
108
+ return !e.response || e.response.statusCode !== 404;
109
+ })
110
+ .then((result) => result.body)
111
+ .catch(createServiceError_1.default);
112
+ }
113
+ }
114
+ exports.default = AuthorizedRegistryClient;
115
+ //# sourceMappingURL=AuthorizedRegistryClient.js.map