@magda/typescript-common 2.3.3 → 3.0.0-alpha.1

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 (249) hide show
  1. package/dist/AspectBuilder.d.ts +1 -1
  2. package/dist/AspectBuilder.js +1 -2
  3. package/dist/AspectCreationFailure.js +3 -4
  4. package/dist/AspectCreationFailure.js.map +1 -1
  5. package/dist/AsyncPage.js +59 -79
  6. package/dist/AsyncPage.js.map +1 -1
  7. package/dist/BaseApiClient.d.ts +3 -3
  8. package/dist/BaseApiClient.js +20 -13
  9. package/dist/BaseApiClient.js.map +1 -1
  10. package/dist/ConnectionResult.d.ts +2 -2
  11. package/dist/ConnectionResult.js +17 -22
  12. package/dist/ConnectionResult.js.map +1 -1
  13. package/dist/ConnectorRecordId.d.ts +1 -1
  14. package/dist/ConnectorRecordId.js +9 -13
  15. package/dist/ConnectorRecordId.js.map +1 -1
  16. package/dist/IndexerApiClient.d.ts +1 -1
  17. package/dist/IndexerApiClient.js +13 -32
  18. package/dist/IndexerApiClient.js.map +1 -1
  19. package/dist/JsonConnector.d.ts +9 -9
  20. package/dist/JsonConnector.js +163 -206
  21. package/dist/JsonConnector.js.map +1 -1
  22. package/dist/JsonTransformer.d.ts +3 -3
  23. package/dist/JsonTransformer.js +71 -75
  24. package/dist/JsonTransformer.js.map +1 -1
  25. package/dist/OpaCompileResponseParser.d.ts +4 -4
  26. package/dist/OpaCompileResponseParser.js +279 -212
  27. package/dist/OpaCompileResponseParser.js.map +1 -1
  28. package/dist/RecordCreationFailure.d.ts +1 -1
  29. package/dist/RecordCreationFailure.js +4 -4
  30. package/dist/RecordCreationFailure.js.map +1 -1
  31. package/dist/SQLUtils.d.ts +3 -3
  32. package/dist/SQLUtils.js +139 -195
  33. package/dist/SQLUtils.js.map +1 -1
  34. package/dist/ServerError.js +2 -4
  35. package/dist/ServerError.js.map +1 -1
  36. package/dist/Try.js +20 -35
  37. package/dist/Try.js.map +1 -1
  38. package/dist/addTrailingSlash.js +1 -4
  39. package/dist/addTrailingSlash.js.map +1 -1
  40. package/dist/appendUrlSegments.js +3 -8
  41. package/dist/appendUrlSegments.js.map +1 -1
  42. package/dist/authorization-api/AccessControlError.d.ts +1 -1
  43. package/dist/authorization-api/AccessControlError.js +2 -8
  44. package/dist/authorization-api/AccessControlError.js.map +1 -1
  45. package/dist/authorization-api/ApiClient.d.ts +3 -3
  46. package/dist/authorization-api/ApiClient.js +211 -272
  47. package/dist/authorization-api/ApiClient.js.map +1 -1
  48. package/dist/authorization-api/AuthError.d.ts +1 -1
  49. package/dist/authorization-api/AuthError.js +2 -8
  50. package/dist/authorization-api/AuthError.js.map +1 -1
  51. package/dist/authorization-api/GenericError.js +2 -4
  52. package/dist/authorization-api/GenericError.js.map +1 -1
  53. package/dist/authorization-api/authMiddleware.d.ts +3 -3
  54. package/dist/authorization-api/authMiddleware.js +19 -40
  55. package/dist/authorization-api/authMiddleware.js.map +1 -1
  56. package/dist/authorization-api/constants.js +9 -12
  57. package/dist/authorization-api/constants.js.map +1 -1
  58. package/dist/authorization-api/model.d.ts +8 -8
  59. package/dist/authorization-api/model.js +1 -2
  60. package/dist/coerceJson.js +1 -3
  61. package/dist/coerceJson.js.map +1 -1
  62. package/dist/createNoCacheFetchOptions.d.ts +1 -1
  63. package/dist/createNoCacheFetchOptions.js +4 -7
  64. package/dist/createNoCacheFetchOptions.js.map +1 -1
  65. package/dist/createServiceError.d.ts +1 -1
  66. package/dist/createServiceError.js +7 -11
  67. package/dist/createServiceError.js.map +1 -1
  68. package/dist/delay.js +1 -3
  69. package/dist/delay.js.map +1 -1
  70. package/dist/express/getNoCacheHeaders.js +1 -3
  71. package/dist/express/getNoCacheHeaders.js.map +1 -1
  72. package/dist/express/setResponseNoCache.d.ts +1 -1
  73. package/dist/express/setResponseNoCache.js +3 -8
  74. package/dist/express/setResponseNoCache.js.map +1 -1
  75. package/dist/express/status.d.ts +14 -15
  76. package/dist/express/status.js +145 -148
  77. package/dist/express/status.js.map +1 -1
  78. package/dist/fetchRequest.d.ts +6 -6
  79. package/dist/fetchRequest.js +36 -51
  80. package/dist/fetchRequest.js.map +1 -1
  81. package/dist/formatServiceError.js +4 -6
  82. package/dist/formatServiceError.js.map +1 -1
  83. package/dist/generated/registry/api.d.ts +67 -55
  84. package/dist/generated/registry/api.js +557 -765
  85. package/dist/generated/registry/api.js.map +1 -1
  86. package/dist/getAbsoluteUrl.js +8 -11
  87. package/dist/getAbsoluteUrl.js.map +1 -1
  88. package/dist/getBasePathFromUrl.js +3 -9
  89. package/dist/getBasePathFromUrl.js.map +1 -1
  90. package/dist/getBoolValWithDefault.js +1 -3
  91. package/dist/getBoolValWithDefault.js.map +1 -1
  92. package/dist/getRequest.js +9 -26
  93. package/dist/getRequest.js.map +1 -1
  94. package/dist/getRequestNoCache.js +4 -21
  95. package/dist/getRequestNoCache.js.map +1 -1
  96. package/dist/getStorageUrl.js +13 -23
  97. package/dist/getStorageUrl.js.map +1 -1
  98. package/dist/getUserAgent.d.ts +2 -0
  99. package/dist/getUserAgent.js +10 -0
  100. package/dist/getUserAgent.js.map +1 -0
  101. package/dist/handleServerError.js +3 -9
  102. package/dist/handleServerError.js.map +1 -1
  103. package/dist/markdownToHtml.js +5 -11
  104. package/dist/markdownToHtml.js.map +1 -1
  105. package/dist/opa/AspectQuery.js +55 -79
  106. package/dist/opa/AspectQuery.js.map +1 -1
  107. package/dist/opa/AuthDecision.d.ts +2 -2
  108. package/dist/opa/AuthDecision.js +52 -69
  109. package/dist/opa/AuthDecision.js.map +1 -1
  110. package/dist/opa/AuthDecisionQueryClient.d.ts +2 -2
  111. package/dist/opa/AuthDecisionQueryClient.js +72 -102
  112. package/dist/opa/AuthDecisionQueryClient.js.map +1 -1
  113. package/dist/pgTypes.js +4 -9
  114. package/dist/pgTypes.js.map +1 -1
  115. package/dist/registry/AuthorizedRegistryClient.d.ts +4 -4
  116. package/dist/registry/AuthorizedRegistryClient.js +55 -95
  117. package/dist/registry/AuthorizedRegistryClient.js.map +1 -1
  118. package/dist/registry/RegistryClient.d.ts +2 -3
  119. package/dist/registry/RegistryClient.js +61 -78
  120. package/dist/registry/RegistryClient.js.map +1 -1
  121. package/dist/registry/TenantConsts.js +3 -6
  122. package/dist/registry/TenantConsts.js.map +1 -1
  123. package/dist/registry/model.js +1 -2
  124. package/dist/registry-manual/api.d.ts +1 -1
  125. package/dist/registry-manual/api.js +18 -7
  126. package/dist/registry-manual/api.js.map +1 -1
  127. package/dist/retry.d.ts +1 -1
  128. package/dist/retry.js +3 -9
  129. package/dist/retry.js.map +1 -1
  130. package/dist/retryBackoff.js +3 -9
  131. package/dist/retryBackoff.js.map +1 -1
  132. package/dist/runLater.js +1 -4
  133. package/dist/runLater.js.map +1 -1
  134. package/dist/session/GetUserId.d.ts +2 -2
  135. package/dist/session/GetUserId.js +10 -16
  136. package/dist/session/GetUserId.js.map +1 -1
  137. package/dist/session/GetUserSession.d.ts +1 -1
  138. package/dist/session/GetUserSession.js +6 -10
  139. package/dist/session/GetUserSession.js.map +1 -1
  140. package/dist/session/addJwtSecretFromEnvVar.js +1 -4
  141. package/dist/session/addJwtSecretFromEnvVar.js.map +1 -1
  142. package/dist/session/buildJwt.d.ts +1 -1
  143. package/dist/session/buildJwt.js +2 -5
  144. package/dist/session/buildJwt.js.map +1 -1
  145. package/dist/session/buildJwtFromReq.d.ts +1 -1
  146. package/dist/session/buildJwtFromReq.js +3 -8
  147. package/dist/session/buildJwtFromReq.js.map +1 -1
  148. package/dist/session/cookieUtils.d.ts +2 -13
  149. package/dist/session/cookieUtils.js +8 -9
  150. package/dist/session/cookieUtils.js.map +1 -1
  151. package/dist/session/destroySession.js +18 -33
  152. package/dist/session/destroySession.js.map +1 -1
  153. package/dist/session/getSessionId.js +5 -11
  154. package/dist/session/getSessionId.js.map +1 -1
  155. package/dist/tenant-api/AuthorizedTenantClient.d.ts +1 -1
  156. package/dist/tenant-api/AuthorizedTenantClient.js +22 -36
  157. package/dist/tenant-api/AuthorizedTenantClient.js.map +1 -1
  158. package/dist/tenant-api/Tenant.js +13 -5
  159. package/dist/tenant-api/Tenant.js.map +1 -1
  160. package/dist/test/JsonConnector.spec.js +56 -61
  161. package/dist/test/JsonConnector.spec.js.map +1 -1
  162. package/dist/test/JsonTransformer.spec.js +15 -19
  163. package/dist/test/JsonTransformer.spec.js.map +1 -1
  164. package/dist/test/arbitraries.d.ts +21 -21
  165. package/dist/test/arbitraries.js +85 -99
  166. package/dist/test/arbitraries.js.map +1 -1
  167. package/dist/test/aspect-templates/organization-details.d.ts +1 -4
  168. package/dist/test/aspect-templates/organization-details.js +1 -1
  169. package/dist/test/aspect-templates/organization-details.js.map +1 -1
  170. package/dist/test/buildApiClient.spec.js +81 -107
  171. package/dist/test/buildApiClient.spec.js.map +1 -1
  172. package/dist/test/buildAuthorizedTenantClient.spec.js +25 -40
  173. package/dist/test/buildAuthorizedTenantClient.spec.js.map +1 -1
  174. package/dist/test/connectors/MockExpressServer.js +9 -23
  175. package/dist/test/connectors/MockExpressServer.js.map +1 -1
  176. package/dist/test/connectors/MockRegistry.d.ts +1 -1
  177. package/dist/test/connectors/MockRegistry.js +11 -18
  178. package/dist/test/connectors/MockRegistry.js.map +1 -1
  179. package/dist/test/connectors/runConnectorTest.js +33 -55
  180. package/dist/test/connectors/runConnectorTest.js.map +1 -1
  181. package/dist/test/createMockAuthDecisionQueryClient.d.ts +4 -4
  182. package/dist/test/createMockAuthDecisionQueryClient.js +4 -9
  183. package/dist/test/createMockAuthDecisionQueryClient.js.map +1 -1
  184. package/dist/test/db/getTestDBConfig.js +1 -3
  185. package/dist/test/db/getTestDBConfig.js.map +1 -1
  186. package/dist/test/db/runMigrationSql.js +37 -58
  187. package/dist/test/db/runMigrationSql.js.map +1 -1
  188. package/dist/test/express/status.spec.js +81 -72
  189. package/dist/test/express/status.spec.js.map +1 -1
  190. package/dist/test/fakeArgv.js +6 -5
  191. package/dist/test/fakeArgv.js.map +1 -1
  192. package/dist/test/getBasePathFromUrl.spec.js +5 -10
  193. package/dist/test/getBasePathFromUrl.spec.js.map +1 -1
  194. package/dist/test/getStorageUrl.spec.js +22 -46
  195. package/dist/test/getStorageUrl.spec.js.map +1 -1
  196. package/dist/test/mockAuthApiHost.js +26 -28
  197. package/dist/test/mockAuthApiHost.js.map +1 -1
  198. package/dist/test/mockAuthorization.js +4 -10
  199. package/dist/test/mockAuthorization.js.map +1 -1
  200. package/dist/test/mockTenantDataStore.d.ts +1 -1
  201. package/dist/test/mockTenantDataStore.js +3 -5
  202. package/dist/test/mockTenantDataStore.js.map +1 -1
  203. package/dist/test/mockUserDataStore.d.ts +1 -1
  204. package/dist/test/mockUserDataStore.js +4 -6
  205. package/dist/test/mockUserDataStore.js.map +1 -1
  206. package/dist/test/registry/buildAuthorizedClient.spec.js +65 -87
  207. package/dist/test/registry/buildAuthorizedClient.spec.js.map +1 -1
  208. package/dist/test/session/buildJwt.spec.js +15 -19
  209. package/dist/test/session/buildJwt.spec.js.map +1 -1
  210. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsAndOwnerTest.spec.js +6 -11
  211. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsAndOwnerTest.spec.js.map +1 -1
  212. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsTest.spec.js +6 -11
  213. package/dist/test/session/buildJwtForRegistryEsriOpaGroupsTest.spec.js.map +1 -1
  214. package/dist/test/session/buildJwtForRegistryEsriOpaOwnerTest.spec.js +6 -11
  215. package/dist/test/session/buildJwtForRegistryEsriOpaOwnerTest.spec.js.map +1 -1
  216. package/dist/test/testAsyncPage.spec.js +84 -105
  217. package/dist/test/testAsyncPage.spec.js.map +1 -1
  218. package/dist/test/testOpaCompileResponseParser.spec.js +192 -196
  219. package/dist/test/testOpaCompileResponseParser.spec.js.map +1 -1
  220. package/dist/test/util.js +1 -5
  221. package/dist/test/util.js.map +1 -1
  222. package/dist/unknown2Error.d.ts +2 -0
  223. package/dist/unknown2Error.js +3 -0
  224. package/dist/unknown2Error.js.map +1 -0
  225. package/dist/util/arrayToMaybe.d.ts +1 -1
  226. package/dist/util/arrayToMaybe.js +3 -6
  227. package/dist/util/arrayToMaybe.js.map +1 -1
  228. package/dist/util/cleanOrgTitle.js +1 -4
  229. package/dist/util/cleanOrgTitle.js.map +1 -1
  230. package/dist/util/escapeRegExp.js +1 -3
  231. package/dist/util/escapeRegExp.js.map +1 -1
  232. package/dist/util/getMinikubeIP.js +3 -9
  233. package/dist/util/getMinikubeIP.js.map +1 -1
  234. package/dist/util/isArray.js +1 -3
  235. package/dist/util/isArray.js.map +1 -1
  236. package/dist/util/isUuid.js +1 -3
  237. package/dist/util/isUuid.js.map +1 -1
  238. package/dist/util/unionToThrowable.d.ts +1 -1
  239. package/dist/util/unionToThrowable.js +3 -9
  240. package/dist/util/unionToThrowable.js.map +1 -1
  241. package/dist/utilityTypes.d.ts +1 -1
  242. package/dist/utilityTypes.js +1 -2
  243. package/package.json +45 -29
  244. package/dist/request.d.ts +0 -3
  245. package/dist/request.js +0 -19
  246. package/dist/request.js.map +0 -1
  247. package/dist/test/jsverify.d.ts +0 -2
  248. package/dist/test/jsverify.js +0 -8
  249. package/dist/test/jsverify.js.map +0 -1
@@ -1,11 +1,6 @@
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) {
1
+ import ServerError from "./ServerError.js";
2
+ export default function handleServerError(req, res, e) {
3
+ if (e instanceof ServerError) {
9
4
  res.status(e.statusCode).send(e.message);
10
5
  }
11
6
  else {
@@ -13,5 +8,4 @@ function handleServerError(req, res, e) {
13
8
  }
14
9
  console.log(`Error on request to ${req.originalUrl}: ${e}`);
15
10
  }
16
- exports.default = handleServerError;
17
11
  //# sourceMappingURL=handleServerError.js.map
@@ -1 +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"}
1
+ {"version":3,"file":"handleServerError.js","sourceRoot":"","sources":["../src/handleServerError.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAE3C,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,GAAY,EAAE,GAAa,EAAE,CAAM;IACzE,IAAI,CAAC,YAAY,WAAW,EAAE,CAAC;QAC3B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACJ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,CAAC,WAAW,KAAK,CAAC,EAAE,CAAC,CAAC;AAChE,CAAC"}
@@ -1,17 +1,12 @@
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({
1
+ import MarkdownIt from "markdown-it";
2
+ import DOMPurify from "dompurify";
3
+ const md = new MarkdownIt({
9
4
  html: true,
10
5
  linkify: true,
11
6
  breaks: true
12
7
  });
13
8
  const htmlRegex = /^\s*<[^>]+>/;
14
- function markdownToHtml(markdownString, allowUnsafeHtml = false, options = {
9
+ export default function markdownToHtml(markdownString, allowUnsafeHtml = false, options = {
15
10
  FORBID_TAGS: ["svg", "math", "style"]
16
11
  }) {
17
12
  if (!markdownString || typeof markdownString !== "string") {
@@ -31,8 +26,7 @@ function markdownToHtml(markdownString, allowUnsafeHtml = false, options = {
31
26
  return unsafeHtml;
32
27
  }
33
28
  else {
34
- return dompurify_1.default.sanitize(unsafeHtml, options);
29
+ return DOMPurify.sanitize(unsafeHtml, options);
35
30
  }
36
31
  }
37
- exports.default = markdownToHtml;
38
32
  //# sourceMappingURL=markdownToHtml.js.map
@@ -1 +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"}
1
+ {"version":3,"file":"markdownToHtml.js","sourceRoot":"","sources":["../src/markdownToHtml.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,SAAS,MAAM,WAAW,CAAC;AAElC,MAAM,EAAE,GAAG,IAAI,UAAU,CAAC;IACtB,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,IAAI;IACb,MAAM,EAAE,IAAI;CACf,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,MAAM,CAAC,OAAO,UAAU,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,CAAC;QACxD,OAAO,cAAc,CAAC;IAC1B,CAAC;IACD,6EAA6E;IAC7E,0CAA0C;IAC1C,IAAI,UAAU,CAAC;IACf,IAAI,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QACjC,UAAU,GAAG,cAAc,CAAC;IAChC,CAAC;SAAM,CAAC;QACJ,2GAA2G;QAC3G,UAAU,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,eAAe,EAAE,CAAC;QAClB,OAAO,UAAU,CAAC;IACtB,CAAC;SAAM,CAAC;QACJ,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;AACL,CAAC"}
@@ -1,39 +1,19 @@
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.prototype.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.AspectQueryGroup = exports.AspectQueryValueInArray = exports.AspectQueryArrayNotEmpty = exports.AspectQueryWithValue = exports.AspectQueryExists = exports.AspectQueryFalse = exports.AspectQueryTrue = exports.AspectQuery = exports.AspectQueryValue = void 0;
23
- const sql_syntax_1 = __importStar(require("sql-syntax"));
24
- const SQLUtils_1 = require("../SQLUtils");
25
- class AspectQueryValue {
1
+ import SQLSyntax, { sqls } from "sql-syntax";
2
+ import { getTableColumnName } from "../SQLUtils.js";
3
+ export class AspectQueryValue {
4
+ value;
5
+ postgresType;
26
6
  constructor(value) {
27
7
  this.value = value;
28
8
  switch (typeof value) {
29
9
  case "number":
30
- this.postgresType = sql_syntax_1.sqls `NUMERIC`;
10
+ this.postgresType = sqls `NUMERIC`;
31
11
  break;
32
12
  case "boolean":
33
- this.postgresType = sql_syntax_1.sqls `BOOL`;
13
+ this.postgresType = sqls `BOOL`;
34
14
  break;
35
15
  case "string":
36
- this.postgresType = sql_syntax_1.sqls `TEXT`;
16
+ this.postgresType = sqls `TEXT`;
37
17
  break;
38
18
  default:
39
19
  throw new Error("getPostgresValueTypeCastStr: unsupported data type: `${" +
@@ -42,8 +22,10 @@ class AspectQueryValue {
42
22
  }
43
23
  }
44
24
  }
45
- exports.AspectQueryValue = AspectQueryValue;
46
- class AspectQuery {
25
+ export class AspectQuery {
26
+ aspectId;
27
+ path;
28
+ negated;
47
29
  constructor(aspectId, path = [], negated = false) {
48
30
  this.aspectId = aspectId;
49
31
  this.path = path;
@@ -63,54 +45,52 @@ class AspectQuery {
63
45
  }
64
46
  const sqlQuery = this.sqlQueries(config);
65
47
  if (this.negated) {
66
- return sql_syntax_1.sqls `NOT ${sqlQuery}`;
48
+ return sqls `NOT ${sqlQuery}`;
67
49
  }
68
50
  else {
69
51
  return sqlQuery;
70
52
  }
71
53
  }
72
54
  }
73
- exports.AspectQuery = AspectQuery;
74
- class AspectQueryTrue extends AspectQuery {
55
+ export class AspectQueryTrue extends AspectQuery {
75
56
  constructor() {
76
57
  super(undefined);
77
58
  }
78
59
  sqlQueries(config) {
79
- return sql_syntax_1.sqls `TRUE`;
60
+ return sqls `TRUE`;
80
61
  }
81
62
  // override default toSql as we don't need any validation logic
82
63
  toSql(config) {
83
64
  return this.sqlQueries(config);
84
65
  }
85
66
  }
86
- exports.AspectQueryTrue = AspectQueryTrue;
87
- class AspectQueryFalse extends AspectQuery {
67
+ export class AspectQueryFalse extends AspectQuery {
88
68
  constructor() {
89
69
  super(undefined);
90
70
  }
91
71
  sqlQueries(config) {
92
- return sql_syntax_1.sqls `FALSE`;
72
+ return sqls `FALSE`;
93
73
  }
94
74
  // override default toSql as we don't need any validation logic
95
75
  toSql(config) {
96
76
  return this.sqlQueries(config);
97
77
  }
98
78
  }
99
- exports.AspectQueryFalse = AspectQueryFalse;
100
- class AspectQueryExists extends AspectQuery {
79
+ export class AspectQueryExists extends AspectQuery {
101
80
  sqlQueries(config) {
102
- var _a;
103
- const fieldRef = SQLUtils_1.getTableColumnName(this.aspectId, config.tableRef, config.useLowerCaseColumnName);
104
- if ((_a = this.path) === null || _a === void 0 ? void 0 : _a.length) {
105
- return sql_syntax_1.sqls `(${fieldRef} #> string_to_array(${this.path.join(",")}, ',')) IS NOT NULL`;
81
+ const fieldRef = getTableColumnName(this.aspectId, config.tableRef, config.useLowerCaseColumnName);
82
+ if (this.path?.length) {
83
+ return sqls `(${fieldRef} #> string_to_array(${this.path.join(",")}, ',')) IS NOT NULL`;
106
84
  }
107
85
  else {
108
86
  return fieldRef.isNotNull();
109
87
  }
110
88
  }
111
89
  }
112
- exports.AspectQueryExists = AspectQueryExists;
113
- class AspectQueryWithValue extends AspectQuery {
90
+ export class AspectQueryWithValue extends AspectQuery {
91
+ value;
92
+ operator;
93
+ placeReferenceFirst;
114
94
  constructor(value, operator, placeReferenceFirst, aspectId, path = [], negated = false) {
115
95
  super(aspectId, path, negated);
116
96
  this.value = value;
@@ -118,44 +98,40 @@ class AspectQueryWithValue extends AspectQuery {
118
98
  this.placeReferenceFirst = placeReferenceFirst;
119
99
  }
120
100
  sqlQueries(config) {
121
- var _a;
122
- const fieldRef = SQLUtils_1.getTableColumnName(this.aspectId, config.tableRef, config.useLowerCaseColumnName);
123
- const tableDataRef = !((_a = this.path) === null || _a === void 0 ? void 0 : _a.length)
124
- ? sql_syntax_1.sqls `${fieldRef}::${this.value.postgresType}`
125
- : sql_syntax_1.sqls `(${fieldRef} #>> string_to_array(${this.path.join(",")}, ','))::${this.value.postgresType}`;
101
+ const fieldRef = getTableColumnName(this.aspectId, config.tableRef, config.useLowerCaseColumnName);
102
+ const tableDataRef = !this.path?.length
103
+ ? sqls `${fieldRef}::${this.value.postgresType}`
104
+ : sqls `(${fieldRef} #>> string_to_array(${this.path.join(",")}, ','))::${this.value.postgresType}`;
126
105
  return this.placeReferenceFirst
127
- ? sql_syntax_1.sqls `COALESCE(${tableDataRef} ${this.operator} ${this.value.value}::${this.value.postgresType}, false)`
128
- : sql_syntax_1.sqls `COALESCE(${this.value.value}::${this.value.postgresType} ${this.operator} ${tableDataRef}, false)`;
106
+ ? sqls `COALESCE(${tableDataRef} ${this.operator} ${this.value.value}::${this.value.postgresType}, false)`
107
+ : sqls `COALESCE(${this.value.value}::${this.value.postgresType} ${this.operator} ${tableDataRef}, false)`;
129
108
  }
130
109
  }
131
- exports.AspectQueryWithValue = AspectQueryWithValue;
132
- class AspectQueryArrayNotEmpty extends AspectQuery {
110
+ export class AspectQueryArrayNotEmpty extends AspectQuery {
133
111
  sqlQueries(config) {
134
- var _a;
135
- const fieldRef = SQLUtils_1.getTableColumnName(this.aspectId, config.tableRef, config.useLowerCaseColumnName);
136
- const tableDataRef = !((_a = this.path) === null || _a === void 0 ? void 0 : _a.length)
137
- ? sql_syntax_1.sqls `(${fieldRef} #> string_to_array('0',','))`
138
- : sql_syntax_1.sqls `(${fieldRef} #>> string_to_array(${[...this.path, "0"].join(",")}, ','))`;
112
+ const fieldRef = getTableColumnName(this.aspectId, config.tableRef, config.useLowerCaseColumnName);
113
+ const tableDataRef = !this.path?.length
114
+ ? sqls `(${fieldRef} #> string_to_array('0',','))`
115
+ : sqls `(${fieldRef} #>> string_to_array(${[...this.path, "0"].join(",")}, ','))`;
139
116
  return tableDataRef.isNotNull();
140
117
  }
141
118
  }
142
- exports.AspectQueryArrayNotEmpty = AspectQueryArrayNotEmpty;
143
- class AspectQueryValueInArray extends AspectQuery {
119
+ export class AspectQueryValueInArray extends AspectQuery {
120
+ value;
144
121
  constructor(value, aspectId, path = [], negated = false) {
145
122
  super(aspectId, path, negated);
146
123
  this.value = value;
147
124
  }
148
125
  sqlQueries(config) {
149
- var _a;
150
- const fieldRef = SQLUtils_1.getTableColumnName(this.aspectId, config.tableRef, config.useLowerCaseColumnName);
151
- const tableDataRef = !((_a = this.path) === null || _a === void 0 ? void 0 : _a.length)
152
- ? sql_syntax_1.sqls `COALESCE(
126
+ const fieldRef = getTableColumnName(this.aspectId, config.tableRef, config.useLowerCaseColumnName);
127
+ const tableDataRef = !this.path?.length
128
+ ? sqls `COALESCE(
153
129
  (
154
130
  (${fieldRef}::JSONB #> string_to_array('0',','))::JSONB
155
131
  ) @> to_json(${this.value.value})::JSONB,
156
132
  FALSE
157
133
  )`
158
- : sql_syntax_1.sqls `COALESCE(
134
+ : sqls `COALESCE(
159
135
  (
160
136
  (${fieldRef}::JSONB #> string_to_array(${this.path.join(",")}, ','))::JSONB
161
137
  ) @> to_json(${this.value.value})::JSONB,
@@ -164,27 +140,28 @@ class AspectQueryValueInArray extends AspectQuery {
164
140
  return tableDataRef;
165
141
  }
166
142
  }
167
- exports.AspectQueryValueInArray = AspectQueryValueInArray;
168
- class AspectQueryGroup {
143
+ export class AspectQueryGroup {
144
+ queries;
145
+ joinWithAnd;
146
+ negated;
169
147
  constructor(queries, joinWithAnd = true, negated = false) {
170
148
  this.queries = queries;
171
149
  this.joinWithAnd = joinWithAnd;
172
150
  this.negated = negated;
173
151
  }
174
152
  toSql(config) {
175
- var _a;
176
- if (!((_a = this.queries) === null || _a === void 0 ? void 0 : _a.length)) {
177
- return sql_syntax_1.default.empty;
153
+ if (!this.queries?.length) {
154
+ return SQLSyntax.empty;
178
155
  }
179
156
  let result;
180
157
  if (this.joinWithAnd) {
181
158
  if (this.queries.findIndex((item) => item instanceof AspectQueryFalse) !== -1) {
182
- result = sql_syntax_1.sqls `FALSE`;
159
+ result = sqls `FALSE`;
183
160
  }
184
161
  else {
185
- result = sql_syntax_1.default.joinWithAnd(this.queries.map((q) => {
162
+ result = SQLSyntax.joinWithAnd(this.queries.map((q) => {
186
163
  if (q instanceof AspectQueryTrue) {
187
- return sql_syntax_1.default.empty;
164
+ return SQLSyntax.empty;
188
165
  }
189
166
  else {
190
167
  return q.toSql(config);
@@ -194,12 +171,12 @@ class AspectQueryGroup {
194
171
  }
195
172
  else {
196
173
  if (this.queries.findIndex((item) => item instanceof AspectQueryTrue) !== -1) {
197
- result = sql_syntax_1.sqls `TRUE`;
174
+ result = sqls `TRUE`;
198
175
  }
199
176
  else {
200
- result = sql_syntax_1.default.joinWithOr(this.queries.map((q) => {
177
+ result = SQLSyntax.joinWithOr(this.queries.map((q) => {
201
178
  if (q instanceof AspectQueryFalse) {
202
- return sql_syntax_1.default.empty;
179
+ return SQLSyntax.empty;
203
180
  }
204
181
  else {
205
182
  return q.toSql(config);
@@ -208,12 +185,11 @@ class AspectQueryGroup {
208
185
  }
209
186
  }
210
187
  if (this.negated) {
211
- return sql_syntax_1.sqls `NOT ${result}`;
188
+ return sqls `NOT ${result}`;
212
189
  }
213
190
  else {
214
191
  return result;
215
192
  }
216
193
  }
217
194
  }
218
- exports.AspectQueryGroup = AspectQueryGroup;
219
195
  //# sourceMappingURL=AspectQuery.js.map
@@ -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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"}
@@ -1,6 +1,6 @@
1
- import { AspectQueryValue, AspectQuery, AspectQueryGroup, AspectQueryToSqlConfig } from "./AspectQuery";
1
+ import { AspectQueryValue, AspectQuery, AspectQueryGroup, AspectQueryToSqlConfig } from "./AspectQuery.js";
2
2
  import SQLSyntax from "sql-syntax";
3
- declare type PlainObject = {
3
+ type PlainObject = {
4
4
  [key: string]: any;
5
5
  };
6
6
  export default class AuthDecision {
@@ -1,33 +1,17 @@
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.prototype.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 {
1
+ import { AspectQueryValue, AspectQueryArrayNotEmpty, AspectQueryExists, AspectQueryValueInArray, AspectQueryWithValue, AspectQueryGroup, AspectQueryTrue, AspectQueryFalse } from "./AspectQuery.js";
2
+ import SQLSyntax, { sqls } from "sql-syntax";
3
+ export default class AuthDecision {
4
+ hasResidualRules;
5
+ result;
6
+ residualRules;
7
+ hasWarns;
8
+ warns;
9
+ unknowns;
26
10
  constructor(hasResidualRules, residualRules, result, hasWarns = false, warns = [], unknowns) {
27
11
  if (typeof hasResidualRules !== "boolean") {
28
12
  throw new Error("Failed to create AuthDecision: invalid hasResidualRules type");
29
13
  }
30
- if (hasResidualRules && !(residualRules === null || residualRules === void 0 ? void 0 : residualRules.length)) {
14
+ if (hasResidualRules && !residualRules?.length) {
31
15
  throw new Error("Failed to create AuthDecision: residualRules must have at least one item when hasResidualRules == true");
32
16
  }
33
17
  this.hasResidualRules = hasResidualRules;
@@ -38,8 +22,7 @@ class AuthDecision {
38
22
  this.unknowns = unknowns;
39
23
  }
40
24
  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);
25
+ return new AuthDecision(data?.hasResidualRules, data?.residualRules?.map((item) => ConciseRule.fromJson(item)), data?.result, data?.hasWarns ? true : false, data?.warns, data?.unknowns);
43
26
  }
44
27
  toAspectQueryGroups(prefixes) {
45
28
  if (this.hasResidualRules) {
@@ -48,19 +31,18 @@ class AuthDecision {
48
31
  else {
49
32
  if (isTrueEquivalent(this.result)) {
50
33
  // unconditional true
51
- return [new AspectQuery_1.AspectQueryGroup([new AspectQuery_1.AspectQueryTrue()])];
34
+ return [new AspectQueryGroup([new AspectQueryTrue()])];
52
35
  }
53
36
  else {
54
- return [new AspectQuery_1.AspectQueryGroup([new AspectQuery_1.AspectQueryFalse()])];
37
+ return [new AspectQueryGroup([new AspectQueryFalse()])];
55
38
  }
56
39
  }
57
40
  }
58
41
  toSql(config) {
59
- return sql_syntax_1.default.joinWithOr(this.toAspectQueryGroups(config.prefixes).map((item) => item.toSql(config))).roundBracket();
42
+ return SQLSyntax.joinWithOr(this.toAspectQueryGroups(config.prefixes).map((item) => item.toSql(config))).roundBracket();
60
43
  }
61
44
  }
62
- exports.default = AuthDecision;
63
- function isTrueEquivalent(value) {
45
+ export function isTrueEquivalent(value) {
64
46
  const typeStr = typeof value;
65
47
  if (typeStr === "boolean") {
66
48
  return value;
@@ -68,84 +50,85 @@ function isTrueEquivalent(value) {
68
50
  else if (typeStr === "undefined") {
69
51
  return false;
70
52
  }
71
- else if (typeof (value === null || value === void 0 ? void 0 : value.length) !== "undefined") {
53
+ else if (typeof value?.length !== "undefined") {
72
54
  return !!value.length;
73
55
  }
74
56
  else {
75
57
  return !!value;
76
58
  }
77
59
  }
78
- exports.isTrueEquivalent = isTrueEquivalent;
79
- exports.UnconditionalTrueDecision = new AuthDecision(false, undefined, true);
80
- exports.UnconditionalFalseDecision = new AuthDecision(false, undefined, false);
81
- class ConciseRule {
60
+ export const UnconditionalTrueDecision = new AuthDecision(false, undefined, true);
61
+ export const UnconditionalFalseDecision = new AuthDecision(false, undefined, false);
62
+ export class ConciseRule {
63
+ default;
64
+ value;
65
+ fullName;
66
+ name;
67
+ expressions;
82
68
  constructor(fullName, name, value, expressions, isDefault = false) {
83
- if (!isDefault && !(expressions === null || expressions === void 0 ? void 0 : expressions.length)) {
69
+ if (!isDefault && !expressions?.length) {
84
70
  throw new Error("Invalid ConciseRule data: it must contain at least one ConciseExpression item unless it's a default rule.");
85
71
  }
86
72
  this.default = isDefault ? true : false;
87
73
  this.fullName = fullName;
88
74
  this.name = name;
89
75
  this.value = value;
90
- this.expressions = (expressions === null || expressions === void 0 ? void 0 : expressions.length) ? expressions : [];
76
+ this.expressions = expressions?.length ? expressions : [];
91
77
  }
92
78
  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)));
79
+ return new ConciseRule(data?.fullName, data?.name, data?.value, data?.expressions?.map((item) => ConciseExpression.fromJson(item)));
95
80
  }
96
81
  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));
82
+ return new AspectQueryGroup(this.expressions?.map((item) => item.toAspectQuery(prefixes)), true, !isTrueEquivalent(this.value));
99
83
  }
100
84
  }
101
- exports.ConciseRule = ConciseRule;
102
- class ConciseExpression {
85
+ export class ConciseExpression {
86
+ negated;
87
+ operator;
88
+ operands;
103
89
  constructor(operands, operator, negated = false) {
104
- var _a, _b;
105
90
  this.negated = negated ? true : false;
106
91
  this.operands = operands;
107
92
  this.operator = operator;
108
- if (!((_a = this.operands) === null || _a === void 0 ? void 0 : _a.length)) {
93
+ if (!this.operands?.length) {
109
94
  throw new Error("invalid ConciseExpression data: it must have at least one operand.");
110
95
  }
111
- if (((_b = this.operands) === null || _b === void 0 ? void 0 : _b.length) > 1 && typeof operator !== "string") {
96
+ if (this.operands?.length > 1 && typeof operator !== "string") {
112
97
  throw new Error("invalid ConciseExpression data: when operands number > 1, operator must be a valid string value.");
113
98
  }
114
99
  }
115
100
  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);
101
+ return new ConciseExpression(data?.operands?.map((item) => ConciseOperand.fromJson(item)), data?.operator, data?.negated);
118
102
  }
119
103
  getSqlOperator() {
120
104
  switch (this.operator) {
121
105
  case "!=":
122
- return sql_syntax_1.sqls `!=`;
106
+ return sqls `!=`;
123
107
  case "=":
124
- return sql_syntax_1.sqls `=`;
108
+ return sqls `=`;
125
109
  case ">":
126
- return sql_syntax_1.sqls `>`;
110
+ return sqls `>`;
127
111
  case "<":
128
- return sql_syntax_1.sqls `<`;
112
+ return sqls `<`;
129
113
  case ">=":
130
- return sql_syntax_1.sqls `>=`;
114
+ return sqls `>=`;
131
115
  case "<=":
132
- return sql_syntax_1.sqls `<=`;
116
+ return sqls `<=`;
133
117
  default:
134
118
  throw new Error(`Failed to convert auth decision operator to SQL operator: unsupported operator: ${this.operator}`);
135
119
  }
136
120
  }
137
121
  toAspectQuery(prefixes) {
138
- var _a, _b;
139
- if (((_a = this.operands) === null || _a === void 0 ? void 0 : _a.length) == 1) {
122
+ if (this.operands?.length == 1) {
140
123
  const [aspectId, path, isCollection] = this.operands[0].extractAspectIdAndPath(prefixes);
141
124
  if (isCollection) {
142
- return new AspectQuery_1.AspectQueryArrayNotEmpty(aspectId, path, this.negated);
125
+ return new AspectQueryArrayNotEmpty(aspectId, path, this.negated);
143
126
  }
144
127
  else {
145
- return new AspectQuery_1.AspectQueryExists(aspectId, path, this.negated);
128
+ return new AspectQueryExists(aspectId, path, this.negated);
146
129
  }
147
130
  }
148
- else if (((_b = this.operands) === null || _b === void 0 ? void 0 : _b.length) == 2) {
131
+ else if (this.operands?.length == 2) {
149
132
  const refOperand = this.operands.find((item) => item.isRef);
150
133
  const valOperand = this.operands.find((item) => !item.isRef);
151
134
  if (!valOperand) {
@@ -163,10 +146,10 @@ class ConciseExpression {
163
146
  `Only \`=\` operator is supported for collection reference. Expression: ${this}`);
164
147
  }
165
148
  if (isCollection && this.operator == "=") {
166
- return new AspectQuery_1.AspectQueryValueInArray(valOperand.toAspectQueryValue(), aspectId, path, this.negated);
149
+ return new AspectQueryValueInArray(valOperand.toAspectQueryValue(), aspectId, path, this.negated);
167
150
  }
168
151
  else {
169
- return new AspectQuery_1.AspectQueryWithValue(valOperand.toAspectQueryValue(), this.getSqlOperator(), this.operands[0].isRef, aspectId, path, this.negated);
152
+ return new AspectQueryWithValue(valOperand.toAspectQueryValue(), this.getSqlOperator(), this.operands[0].isRef, aspectId, path, this.negated);
170
153
  }
171
154
  }
172
155
  else {
@@ -174,8 +157,9 @@ class ConciseExpression {
174
157
  }
175
158
  }
176
159
  }
177
- exports.ConciseExpression = ConciseExpression;
178
- class ConciseOperand {
160
+ export class ConciseOperand {
161
+ isRef;
162
+ value;
179
163
  constructor(isRef, value) {
180
164
  if (typeof isRef !== "boolean") {
181
165
  throw new Error("Invalid ConciseOperand data: isRef must be a boolean value.");
@@ -187,7 +171,7 @@ class ConciseOperand {
187
171
  this.value = value;
188
172
  }
189
173
  static fromJson(data) {
190
- return new ConciseOperand(data === null || data === void 0 ? void 0 : data.isRef, data === null || data === void 0 ? void 0 : data.value);
174
+ return new ConciseOperand(data?.isRef, data?.value);
191
175
  }
192
176
  refString() {
193
177
  if (!this.isRef) {
@@ -236,8 +220,7 @@ class ConciseOperand {
236
220
  if (this.isRef) {
237
221
  throw new Error(`Attempt to covert reference \`Operand\` to \`AspectQueryValue\`: ${this}`);
238
222
  }
239
- return new AspectQuery_1.AspectQueryValue(this.value);
223
+ return new AspectQueryValue(this.value);
240
224
  }
241
225
  }
242
- exports.ConciseOperand = ConciseOperand;
243
226
  //# sourceMappingURL=AuthDecision.js.map