@pgds/api-interface 1.2.5 → 1.3.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.
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  ### hiot-api-interface
2
2
 
3
-
4
3
  Examples:
4
+
5
5
  - [#Example](#example)
6
6
  - [./examples/example.ts](examples/example.ts)
7
7
  - [./examples/example.js](examples/example.js)
@@ -11,14 +11,14 @@ Examples:
11
11
  Available exports
12
12
 
13
13
  ```typescript
14
- import { get, post, put, patch, del, internal, JsonResponse, prepareJsonSchemas, Method } from "hiot-api-interface";
14
+ import { get, post, put, patch, del, internal, JsonResponse, prepareJsonSchemas, Method } from "hiot-api-interface";
15
15
  ```
16
16
 
17
17
  ## Endpoints
18
+
18
19
  <details>
19
20
  <summary>The <code>get</code>, <code>post</code>, <code>put</code>, <code>patch</code>, <code>del</code> & <code>internal</code> functions are for registering endpoints. They share the same api</summary>
20
21
 
21
-
22
22
  ```typescript
23
23
  export default get({
24
24
  /** The path to the endpoint */
@@ -139,6 +139,7 @@ async function getDashboardsEndpoint(req: Request<GetDashboardsRequestSchema>):
139
139
  </details>
140
140
 
141
141
  ## Request schema
142
+
142
143
  <details>
143
144
  <summary>Request schemas can be either a JSON schema or a typescript type</summary>
144
145
  When using typescript types as json schemas:
@@ -202,13 +203,14 @@ export const GetDashboardsRequestSchema = {
202
203
  },
203
204
  };
204
205
  ```
206
+
205
207
  </details>
206
208
 
207
209
  ## Response schema
210
+
208
211
  <details>
209
212
  <summary>Response schemas can be either a JSON schema or a typescript type</summary>
210
213
 
211
-
212
214
  ```typescript
213
215
  import { DashboardModel } from "../../models/DashboardModel";
214
216
 
@@ -216,6 +218,7 @@ export const GET_DASHBOARDS_RESPONSE_SCHEMA = "GetDashboardsResponseSchema";
216
218
 
217
219
  export type GetDashboardsResponseSchema = DashboardModel[];
218
220
  ```
221
+
219
222
  </details>
220
223
 
221
224
  ## Json schema setup
@@ -223,13 +226,12 @@ export type GetDashboardsResponseSchema = DashboardModel[];
223
226
  <details>
224
227
  <summary>Using typescript types as json schemas require them to be converted to json schemas during run time. This is done during the service startup. Schemas are cached so that they are only converted once when running tests (that are restarting the service for each test file).</summary>
225
228
 
226
-
227
229
  ```typescript
228
230
  import { setupApiInterface } from "hiot-api-interface";
229
231
 
230
232
  const started = hiot
231
233
  .startApp({ logger, onUncaughtException: handleException, handleException })
232
- .then((locator)=>{
234
+ .then((locator) => {
233
235
  await setupApiInterface({
234
236
  port: PORT,
235
237
  apiVersion: "v1",
@@ -241,7 +243,7 @@ const started = hiot
241
243
  routes();
242
244
 
243
245
  return locator;
244
- })
246
+ })
245
247
  .then(waitFor)
246
248
  .then(db)
247
249
  .then(shutdown)
@@ -251,7 +253,6 @@ const started = hiot
251
253
 
252
254
  </details>
253
255
 
254
-
255
256
  ## routes.ts
256
257
 
257
258
  <details>
@@ -295,6 +296,7 @@ export default function (server: restify.Server) {
295
296
  );
296
297
  }
297
298
  ```
299
+
298
300
  </details>
299
301
 
300
302
  ## Testing
@@ -302,7 +304,7 @@ export default function (server: restify.Server) {
302
304
  <details>
303
305
  <summary>Testing is done like any other test.</summary>
304
306
 
305
- ```typescript
307
+ ````typescript
306
308
 
307
309
  ### Through sandbox
308
310
 
@@ -317,7 +319,7 @@ describe("getDashboardsEndpoint", () => {
317
319
  // ...
318
320
  });
319
321
  });
320
- ```
322
+ ````
321
323
 
322
324
  ### Directly on handler
323
325
 
@@ -351,14 +353,15 @@ The export of the endpoint file is both a function for registering the endpoint
351
353
 
352
354
  </details>
353
355
 
356
+ # Publishing
354
357
 
355
-
356
- # Publishing
357
358
  Prerequisites:
359
+
358
360
  - You have to be part of the @hiotlabs organization on npm
359
361
  - You have to be logged in to npm
360
362
 
361
363
  Then, in root, run:
364
+
362
365
  ```typescript
363
366
  // Check out any untracked/ignored files (e.g. previously built files)
364
367
  yarn clean
@@ -373,15 +376,14 @@ yarn build
373
376
  yarn test
374
377
 
375
378
  // Publish
376
- npm publish --access private
379
+ npm publish --access public
377
380
 
378
381
  // Or pack (for testing)
379
382
  npm pack
380
383
  ```
381
384
 
382
-
383
-
384
385
  # Adding new directories to the project (@hiotlabs/hiot-api-interface)
386
+
385
387
  <details>
386
388
 
387
389
  - Create folder
@@ -407,4 +409,5 @@ npm pack
407
409
  "utils/**/*.d.ts"
408
410
  ],
409
411
  ```
410
- </details>
412
+
413
+ </details>
@@ -193,7 +193,7 @@ var FairtrailClient = /** @class */ (function (_super) {
193
193
  _a[constants_1.AUTH_ACTIVE_LOGIN_HEADER] = (_e = this.reqUser.activeLogin) !== null && _e !== void 0 ? _e : "",
194
194
  _a[constants_1.AUTH_ACTIVITIES_HEADER] = Object.keys((_f = this.reqUser.activities) !== null && _f !== void 0 ? _f : []).join(","),
195
195
  _a[constants_1.AUTH_ORGANIZATION_HEADER] = (_g = this.reqUser.organizationId) !== null && _g !== void 0 ? _g : "",
196
- _a[constants_1.AUTH_CHILD_ORGANIZATIONS_HEADER] = ((_h = this.reqUser.childOrganizationIds) !== null && _h !== void 0 ? _h : []).join(","),
196
+ _a[constants_1.AUTH_ORGANIZATION_HIERARCHY_HEADER] = JSON.stringify((_h = this.reqUser.organizationHierarchy) !== null && _h !== void 0 ? _h : {}),
197
197
  _a)];
198
198
  }
199
199
  if (this.reqAsGlobal) {
@@ -1 +1 @@
1
- {"version":3,"file":"FairtrailClient.js","sourceRoot":"","sources":["FairtrailClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FairtrailClient.js","sourceRoot":"","sources":["FairtrailClient.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export declare const AUTH_USER_HEADER = "auth-user";
2
2
  export declare const AUTH_ORGANIZATION_HEADER = "auth-organization";
3
- export declare const AUTH_CHILD_ORGANIZATIONS_HEADER = "auth-child-organizations";
3
+ export declare const AUTH_ORGANIZATION_HIERARCHY_HEADER = "auth-organization-hierarchy";
4
4
  export declare const AUTH_ACTIVITIES_HEADER = "auth-activities";
5
5
  export declare const AUTH_ACTIVE_LOGIN_HEADER = "auth-active-login";
6
6
  export declare const GLOBAL_ACTIVITY = "global";
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.REQUEST_ID_HEADER = exports.CAN_MANAGE_ORGANIZATION_ACTIVITY = exports.GLOBAL_ACTIVITY = exports.AUTH_ACTIVE_LOGIN_HEADER = exports.AUTH_ACTIVITIES_HEADER = exports.AUTH_CHILD_ORGANIZATIONS_HEADER = exports.AUTH_ORGANIZATION_HEADER = exports.AUTH_USER_HEADER = void 0;
3
+ exports.REQUEST_ID_HEADER = exports.CAN_MANAGE_ORGANIZATION_ACTIVITY = exports.GLOBAL_ACTIVITY = exports.AUTH_ACTIVE_LOGIN_HEADER = exports.AUTH_ACTIVITIES_HEADER = exports.AUTH_ORGANIZATION_HIERARCHY_HEADER = exports.AUTH_ORGANIZATION_HEADER = exports.AUTH_USER_HEADER = void 0;
4
4
  /* Note: These will be exported to the library as @hiotlabs/hiot-api-interface/constants */
5
5
  exports.AUTH_USER_HEADER = "auth-user";
6
6
  exports.AUTH_ORGANIZATION_HEADER = "auth-organization";
7
- exports.AUTH_CHILD_ORGANIZATIONS_HEADER = "auth-child-organizations";
7
+ exports.AUTH_ORGANIZATION_HIERARCHY_HEADER = "auth-organization-hierarchy";
8
8
  exports.AUTH_ACTIVITIES_HEADER = "auth-activities";
9
9
  exports.AUTH_ACTIVE_LOGIN_HEADER = "auth-active-login";
10
10
  exports.GLOBAL_ACTIVITY = "global";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,2FAA2F;AAC9E,QAAA,gBAAgB,GAAG,WAAW,CAAC;AAC/B,QAAA,wBAAwB,GAAG,mBAAmB,CAAC;AAC/C,QAAA,+BAA+B,GAAG,0BAA0B,CAAC;AAC7D,QAAA,sBAAsB,GAAG,iBAAiB,CAAC;AAC3C,QAAA,wBAAwB,GAAG,mBAAmB,CAAC;AAE/C,QAAA,eAAe,GAAG,QAAQ,CAAC;AAC3B,QAAA,gCAAgC,GAAG,uBAAuB,CAAC;AAE3D,QAAA,iBAAiB,GAAG,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,2FAA2F;AAC9E,QAAA,gBAAgB,GAAG,WAAW,CAAC;AAC/B,QAAA,wBAAwB,GAAG,mBAAmB,CAAC;AAC/C,QAAA,kCAAkC,GAAG,6BAA6B,CAAC;AACnE,QAAA,sBAAsB,GAAG,iBAAiB,CAAC;AAC3C,QAAA,wBAAwB,GAAG,mBAAmB,CAAC;AAE/C,QAAA,eAAe,GAAG,QAAQ,CAAC;AAC3B,QAAA,gCAAgC,GAAG,uBAAuB,CAAC;AAE3D,QAAA,iBAAiB,GAAG,YAAY,CAAC"}
package/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.runWithRequestContext = exports.useReqStore = exports.routeHelpers = exports.server = exports.closeServer = exports.Method = exports.internal = exports.put = exports.post = exports.patch = exports.get = exports.del = exports.endpointMetadata = exports.setupInterfaceLegacy = exports.setupApiInterface = void 0;
3
+ exports.runWithRequestContext = exports.useReqStore = exports.routeHelpers = exports.server = exports.closeServer = exports.ReqUser = exports.Method = exports.internal = exports.put = exports.post = exports.patch = exports.get = exports.del = exports.endpointMetadata = exports.setupInterfaceLegacy = exports.setupApiInterface = void 0;
4
4
  var lib_1 = require("./lib");
5
5
  Object.defineProperty(exports, "setupApiInterface", { enumerable: true, get: function () { return lib_1.setupApiInterface; } });
6
6
  Object.defineProperty(exports, "setupInterfaceLegacy", { enumerable: true, get: function () { return lib_1.setupInterfaceLegacy; } });
@@ -14,6 +14,8 @@ Object.defineProperty(exports, "internal", { enumerable: true, get: function ()
14
14
  Object.defineProperty(exports, "Method", { enumerable: true, get: function () { return lib_1.Method; } });
15
15
  var mustbeConfig_1 = require("./lib/auth/mustbeConfig");
16
16
  Object.defineProperty(exports, "routeHelpers", { enumerable: true, get: function () { return mustbeConfig_1.routeHelpers; } });
17
+ var ReqUser_1 = require("./lib/models/ReqUser");
18
+ Object.defineProperty(exports, "ReqUser", { enumerable: true, get: function () { return ReqUser_1.ReqUser; } });
17
19
  var server_1 = require("./lib/server/server");
18
20
  Object.defineProperty(exports, "closeServer", { enumerable: true, get: function () { return server_1.closeServer; } });
19
21
  Object.defineProperty(exports, "server", { enumerable: true, get: function () { return server_1.server; } });
@@ -1,6 +1,4 @@
1
- type Activities = {
2
- [activity: string]: boolean;
3
- };
1
+ import { Activities } from "../models/ReqUser";
4
2
  type MustbeRouteHelpers = () => {
5
3
  authorized: (activity: string) => void;
6
4
  authenticated: () => void;
@@ -41,6 +41,9 @@ exports.configureMustBe = configureMustBe;
41
41
  exports.isUserAuthorized = isUserAuthorized;
42
42
  var constants_1 = require("../../constants");
43
43
  var restifyErrors = __importStar(require("restify-errors"));
44
+ // TODO: this import crashes the library when used by a service
45
+ // import Configurator from "../../types/mustbe/config";
46
+ var ReqUser_1 = require("../models/ReqUser");
44
47
  var jsonSchemaUtils_1 = require("../utils/jsonSchemaUtils");
45
48
  var logger_1 = __importDefault(require("../utils/logger"));
46
49
  var mustbe = require("mustbe");
@@ -89,19 +92,10 @@ function configureMustBe() {
89
92
  function parseUser(req) {
90
93
  var userId = req.header(constants_1.AUTH_USER_HEADER, undefined);
91
94
  var organizationId = req.header(constants_1.AUTH_ORGANIZATION_HEADER, undefined);
92
- var childOrganizationIds = req
93
- .header(constants_1.AUTH_CHILD_ORGANIZATIONS_HEADER, "")
94
- .split(",")
95
- .filter(function (id) { return id !== ""; });
96
95
  var activities = parseActivities(req.header(constants_1.AUTH_ACTIVITIES_HEADER, ""));
97
96
  var activeLogin = req.header(constants_1.AUTH_ACTIVE_LOGIN_HEADER, undefined);
98
- var user = {
99
- userId: userId,
100
- organizationId: organizationId,
101
- childOrganizationIds: childOrganizationIds,
102
- activities: activities,
103
- activeLogin: activeLogin,
104
- };
97
+ var organizationHierarchy = JSON.parse(req.header(constants_1.AUTH_ORGANIZATION_HIERARCHY_HEADER, "{}"));
98
+ var user = new ReqUser_1.ReqUser({ userId: userId, organizationId: organizationId, activities: activities, activeLogin: activeLogin, organizationHierarchy: organizationHierarchy });
105
99
  // @ts-ignore
106
100
  req.user = user;
107
101
  return user;
@@ -111,7 +105,11 @@ function userIsUndefined(user) {
111
105
  return true;
112
106
  }
113
107
  var userId = user.userId, organizationId = user.organizationId, activeLogin = user.activeLogin, childOrganizationIds = user.childOrganizationIds;
114
- if (!userId && !organizationId && !activeLogin && !(childOrganizationIds === null || childOrganizationIds === void 0 ? void 0 : childOrganizationIds.length)) {
108
+ if (!userId &&
109
+ !organizationId &&
110
+ !activeLogin &&
111
+ !(childOrganizationIds === null || childOrganizationIds === void 0 ? void 0 : childOrganizationIds.length) &&
112
+ !Object.keys(user.organizationHierarchy).length) {
115
113
  return true;
116
114
  }
117
115
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"mustbeConfig.js","sourceRoot":"","sources":["mustbeConfig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCA,0CAqCC;AAqDD,4CAmBC;AApJD,6CAOyB;AACzB,4DAAgD;AAKhD,4DAAsF;AACtF,2DAAqC;AAErC,IAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAUjC,kDAAkD;AAClD,IAAM,YAAY,GAAG,CAAC;IACpB,IAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IAExD,OAAO;QACL,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;QACtD,aAAa,EAAE,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC;QAC5D,aAAa,EAAE,UAAC,MAAW,IAAK,OAAA,IAAA,gDAA8B,EAAC,MAAM,EAAE,4BAAU,CAAC,IAAI,CAAC,EAAvD,CAAuD;KACxF,CAAC;AACJ,CAAC,CAAuB,CAAC;AAEhB,oCAAY;AAErB,SAAgB,eAAe;IAC7B,MAAM,CAAC,SAAS,CAAC,UAAC,MAAW,CAAC,kBAAkB;QAC9C,MAAM,CAAC,YAAY,CAAC,UAAC,EAAO;YAC1B,EAAE,CAAC,OAAO,CAAC,UAAC,GAAQ,EAAE,EAAO;gBAC3B,IAAI,CAAC;oBACH,IAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;oBAC5B,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACjB,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,aAAa,CAAC,UAAC,IAAS,EAAE,IAAS,EAAE,IAAS,IAAK,OAAA,IAAI,CAAC,IAAI,aAAa,CAAC,qBAAqB,EAAE,CAAC,EAA/C,CAA+C,CAAC,CAAC;YAEvG,EAAE,CAAC,gBAAgB,CAAC,UAAC,IAAS,EAAE,IAAS,EAAE,IAAS,IAAK,OAAA,IAAI,CAAC,IAAI,aAAa,CAAC,uBAAuB,EAAE,CAAC,EAAjD,CAAiD,CAAC,CAAC;QAC9G,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,UAAU,CAAC,UAAC,UAAe;YAChC,UAAU,CAAC,KAAK,CAAC,UAAC,QAAa,EAAE,QAAa,EAAE,IAAS;gBAC/C,IAAA,IAAI,GAAK,QAAQ,KAAb,CAAc;gBAE1B,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1B,OAAO,IAAI,CAAC,IAAI,aAAa,CAAC,uBAAuB,EAAE,EAAE,KAAK,CAAC,CAAC;gBAClE,CAAC;gBAED,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,EAAE,CAAC;oBACjB,IAAI,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;wBAChD,OAAO,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAC1B,CAAC;gBACH,CAAC;gBAED,OAAO,IAAI,CAAC,IAAI,aAAa,CAAC,cAAc,CAAC,uCAAgC,QAAQ,CAAE,CAAC,EAAE,KAAK,CAAC,CAAC;YACnG,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,YAAY,CAAC,UAAC,EAAO,IAAK,OAAA,EAAE,CAAC,eAAe,CAAC,UAAC,IAAS,EAAE,EAAO,IAAK,OAAA,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAvB,CAAuB,CAAC,EAAnE,CAAmE,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,GAAY;IAC7B,IAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,4BAAgB,EAAE,SAAS,CAAC,CAAC;IACvD,IAAM,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,oCAAwB,EAAE,SAAS,CAAC,CAAC;IACvE,IAAM,oBAAoB,GAAG,GAAG;SAC7B,MAAM,CAAC,2CAA+B,EAAE,EAAE,CAAC;SAC3C,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,UAAC,EAAE,IAAK,OAAA,EAAE,KAAK,EAAE,EAAT,CAAS,CAAC,CAAC;IAC7B,IAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,kCAAsB,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3E,IAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,oCAAwB,EAAE,SAAS,CAAC,CAAC;IAEpE,IAAM,IAAI,GAAY;QACpB,MAAM,QAAA;QACN,cAAc,gBAAA;QACd,oBAAoB,sBAAA;QACpB,UAAU,YAAA;QACV,WAAW,aAAA;KACZ,CAAC;IAEF,aAAa;IACb,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;IAEhB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CAAC,IAAS;IAChC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,IAAA,MAAM,GAAwD,IAAI,OAA5D,EAAE,cAAc,GAAwC,IAAI,eAA5C,EAAE,WAAW,GAA2B,IAAI,YAA/B,EAAE,oBAAoB,GAAK,IAAI,qBAAT,CAAU;IAE3E,IAAI,CAAC,MAAM,IAAI,CAAC,cAAc,IAAI,CAAC,WAAW,IAAI,CAAC,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,MAAM,CAAA,EAAE,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAC,GAAe,EAAE,QAAgB;QAC5E,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QACrB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAgB,gBAAgB,CAAC,UAAsB,EAAE,wBAAgC;;IACvF,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,wBAAwB,CAAC;QAChE,CAAC,CAAC,wBAAwB;QAC1B,CAAC,CAAC,wBAAwB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAExC,IAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,UAAC,gBAAgB;QAC7D,OAAA,oBAAoB,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAAlD,CAAkD,CACnD,CAAC;IAEF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,kGAAkG;QAClG,MAAA,gBAAM,aAAN,gBAAM,uBAAN,gBAAM,CAAE,KAAK,iEAAG,wBAAwB,EAAE,EAAE,UAAU,YAAA,EAAE,kBAAkB,oBAAA,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,oBAAoB,CAAC,UAAsB,EAAE,gBAAwB;IAC5E,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAC,QAAQ;QACzD,IAAM,UAAU,GACd,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,2BAAe,CAAC,CAAC;QAC5G,OAAO,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7E,CAAC,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAAC,QAAgB,EAAE,SAAiB;IAC7D,IAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACrD,IAAM,iBAAiB,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAEvD,IAAM,aAAa,GAAG,IAAI,MAAM,CAAC,WAAI,gBAAgB,MAAG,CAAC,CAAC;IAC1D,IAAM,cAAc,GAAG,IAAI,MAAM,CAAC,WAAI,iBAAiB,MAAG,CAAC,CAAC;IAE5D,IAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAElF,OAAO,UAAU,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"mustbeConfig.js","sourceRoot":"","sources":["mustbeConfig.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -1,8 +1,7 @@
1
- import { Db } from "mongodb";
2
1
  import type { RouteOptions, Server } from "restify";
3
2
  import type { Next, Request, Response } from "./models/Http";
4
3
  interface Locator {
5
- db: Db;
4
+ db: any;
6
5
  broker: any;
7
6
  api: Server;
8
7
  }
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,28 @@
1
- export interface ReqUser {
1
+ export type Activities = {
2
+ [activity: string]: boolean;
3
+ };
4
+ export declare class ReqUser {
2
5
  userId: string;
3
- activities: Record<string, boolean>;
6
+ activities: Activities;
4
7
  /** The organization id of the user */
5
8
  organizationId: string;
6
- /** Child organizations withing the organization hierarchy */
7
- childOrganizationIds: string[];
8
9
  /** The user account currently active for this login */
9
10
  activeLogin: string;
11
+ /** The hierarchy of the user's current organization */
12
+ organizationHierarchy: Record<string, string | null>;
13
+ constructor({ userId, organizationId, activities, activeLogin, organizationHierarchy, }: {
14
+ userId: typeof ReqUser.prototype.userId;
15
+ organizationId: typeof ReqUser.prototype.organizationId;
16
+ activities: typeof ReqUser.prototype.activities;
17
+ activeLogin: typeof ReqUser.prototype.activeLogin;
18
+ organizationHierarchy: typeof ReqUser.prototype.organizationHierarchy;
19
+ });
20
+ /**
21
+ * Returns the organizationIds in the hierarchy of the inputted organizationId
22
+ * Input must be inside the user's organization hierarchy.
23
+ * If no organization is inputted, it returns the ids in the user's organization hierarchy.
24
+ *
25
+ * @param organizationId The organizationId to get the children of
26
+ */
27
+ getOrganizationTreeIds(organizationId?: string): string[];
10
28
  }
@@ -1,3 +1,49 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReqUser = void 0;
4
+ var ReqUser = /** @class */ (function () {
5
+ function ReqUser(_a) {
6
+ var userId = _a.userId, organizationId = _a.organizationId, activities = _a.activities, activeLogin = _a.activeLogin, organizationHierarchy = _a.organizationHierarchy;
7
+ this.userId = userId;
8
+ this.organizationId = organizationId;
9
+ this.activities = activities;
10
+ this.activeLogin = activeLogin;
11
+ this.organizationHierarchy = organizationHierarchy;
12
+ }
13
+ /**
14
+ * Returns the organizationIds in the hierarchy of the inputted organizationId
15
+ * Input must be inside the user's organization hierarchy.
16
+ * If no organization is inputted, it returns the ids in the user's organization hierarchy.
17
+ *
18
+ * @param organizationId The organizationId to get the children of
19
+ */
20
+ ReqUser.prototype.getOrganizationTreeIds = function (organizationId) {
21
+ var stack = [];
22
+ var visited = new Set();
23
+ var result = [];
24
+ if (!organizationId || organizationId === this.organizationId) {
25
+ stack.push(this.organizationId);
26
+ }
27
+ else {
28
+ stack.push(organizationId);
29
+ }
30
+ while (stack.length > 0) {
31
+ var currentOrgId = stack.pop();
32
+ if (visited.has(currentOrgId)) {
33
+ continue;
34
+ }
35
+ visited.add(currentOrgId);
36
+ result.push(currentOrgId);
37
+ for (var _i = 0, _a = Object.entries(this.organizationHierarchy); _i < _a.length; _i++) {
38
+ var _b = _a[_i], childId = _b[0], parentId = _b[1];
39
+ if (parentId === currentOrgId && !visited.has(childId)) {
40
+ stack.push(childId);
41
+ }
42
+ }
43
+ }
44
+ return result;
45
+ };
46
+ return ReqUser;
47
+ }());
48
+ exports.ReqUser = ReqUser;
3
49
  //# sourceMappingURL=ReqUser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReqUser.js","sourceRoot":"","sources":["ReqUser.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"ReqUser.js","sourceRoot":"","sources":["ReqUser.ts"],"names":[],"mappings":";;;AAEA;IAaE,iBAAY,EAYX;YAXC,MAAM,YAAA,EACN,cAAc,oBAAA,EACd,UAAU,gBAAA,EACV,WAAW,iBAAA,EACX,qBAAqB,2BAAA;QAQrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACI,wCAAsB,GAA7B,UAA8B,cAAuB;QACnD,IAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,IAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,CAAC,cAAc,IAAI,cAAc,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9D,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,IAAM,YAAY,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;YAElC,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC9B,SAAS;YACX,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAE1B,KAAkC,UAA0C,EAA1C,KAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAA1C,cAA0C,EAA1C,IAA0C,EAAE,CAAC;gBAApE,IAAA,WAAmB,EAAlB,OAAO,QAAA,EAAE,QAAQ,QAAA;gBAC3B,IAAI,QAAQ,KAAK,YAAY,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;oBACvD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IACH,cAAC;AAAD,CAAC,AAtED,IAsEC;AAtEY,0BAAO"}
@@ -37,6 +37,7 @@ exports.runWithRequestContext = runWithRequestContext;
37
37
  exports.useReqStore = useReqStore;
38
38
  var constants_1 = require("../../constants");
39
39
  var async_hooks_1 = require("async_hooks");
40
+ var ReqUser_1 = require("../models/ReqUser");
40
41
  var uuid = __importStar(require("uuid"));
41
42
  function isRequest(reqContext) {
42
43
  return typeof reqContext !== "string";
@@ -82,11 +83,12 @@ function getFallbackUser(req) {
82
83
  var activeLogin = req.header(constants_1.AUTH_ACTIVE_LOGIN_HEADER);
83
84
  var activities = req.header(constants_1.AUTH_ACTIVITIES_HEADER);
84
85
  var organizationId = req.header(constants_1.AUTH_ORGANIZATION_HEADER);
86
+ var organizationHierarchy = JSON.parse(req.header(constants_1.AUTH_ORGANIZATION_HIERARCHY_HEADER, "{}"));
85
87
  /* Make sure we don't create a user from thin air */
86
- if (!userId && !activeLogin && !activities && !organizationId) {
88
+ if (!userId && !activeLogin && !activities && !organizationId && !organizationHierarchy) {
87
89
  return undefined;
88
90
  }
89
- return {
91
+ return new ReqUser_1.ReqUser({
90
92
  userId: userId,
91
93
  activeLogin: activeLogin,
92
94
  activities: activities === null || activities === void 0 ? void 0 : activities.split(",").reduce(function (acc, activity) {
@@ -94,6 +96,7 @@ function getFallbackUser(req) {
94
96
  return acc;
95
97
  }, {}),
96
98
  organizationId: organizationId,
97
- };
99
+ organizationHierarchy: organizationHierarchy,
100
+ });
98
101
  }
99
102
  //# sourceMappingURL=asyncHooks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"asyncHooks.js","sourceRoot":"","sources":["asyncHooks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CA,sDAoBC;AAGD,kCAEC;AApED,6CAMyB;AACzB,2CAAgD;AAGhD,yCAA6B;AAoB7B,SAAS,SAAS,CAAC,UAA0B;IAC3C,OAAO,OAAO,UAAU,KAAK,QAAQ,CAAC;AACxC,CAAC;AAED,IAAM,iBAAiB,GAAG,IAAI,+BAAiB,EAAgB,CAAC;AAEhE;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,UAA0B,EAAE,EAAc;;IAC9E,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,IAAI,GAAwB,SAAS,CAAC;IAE1C,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,KAAK,GAAG,MAAA,MAAA,MAAA,UAAU,CAAC,MAAM,2DAAG,6BAAiB,CAAC,mCAAI,UAAU,CAAC,KAAK,EAAE,mCAAI,IAAI,CAAC,EAAE,EAAE,CAAC;QAClF,IAAI,GAAG,MAAA,UAAU,CAAC,IAAI,mCAAI,eAAe,CAAC,UAAU,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,UAAU,CAAC;IACrB,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;QACjC,iBAAiB,CAAC,GAAG,CAAC,EAAE,KAAK,OAAA,EAAE,IAAI,MAAA,EAAE,EAAE;YACrC,IAAI,CAAC;gBACH,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,4CAA4C;AAC5C,SAAgB,WAAW;;IACzB,OAAO,MAAA,iBAAiB,CAAC,QAAQ,EAAE,mCAAK,EAAmB,CAAC;AAC9D,CAAC;AAED,mDAAmD;AACnD,SAAS,eAAe,CAAC,GAAY;IACnC,IAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,4BAAgB,CAAC,CAAC;IAC5C,IAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,oCAAwB,CAAC,CAAC;IACzD,IAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,kCAAsB,CAAC,CAAC;IACtD,IAAM,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,oCAAwB,CAAC,CAAC;IAE5D,oDAAoD;IACpD,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,IAAI,CAAC,cAAc,EAAE,CAAC;QAC9D,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,MAAM,QAAA;QACN,WAAW,aAAA;QACX,UAAU,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,UAAC,GAAG,EAAE,QAAQ;YACtD,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YACrB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAA6B,CAAC;QACjC,cAAc,gBAAA;KACf,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"asyncHooks.js","sourceRoot":"","sources":["asyncHooks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,sDAoBC;AAGD,kCAEC;AArED,6CAOyB;AACzB,2CAAgD;AAChD,6CAA4C;AAE5C,yCAA6B;AAoB7B,SAAS,SAAS,CAAC,UAA0B;IAC3C,OAAO,OAAO,UAAU,KAAK,QAAQ,CAAC;AACxC,CAAC;AAED,IAAM,iBAAiB,GAAG,IAAI,+BAAiB,EAAgB,CAAC;AAEhE;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,UAA0B,EAAE,EAAc;;IAC9E,IAAI,KAAK,GAAG,EAAE,CAAC;IACf,IAAI,IAAI,GAAwB,SAAS,CAAC;IAE1C,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,KAAK,GAAG,MAAA,MAAA,MAAA,UAAU,CAAC,MAAM,2DAAG,6BAAiB,CAAC,mCAAI,UAAU,CAAC,KAAK,EAAE,mCAAI,IAAI,CAAC,EAAE,EAAE,CAAC;QAClF,IAAI,GAAG,MAAA,UAAU,CAAC,IAAI,mCAAI,eAAe,CAAC,UAAU,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,UAAU,CAAC;IACrB,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;QACjC,iBAAiB,CAAC,GAAG,CAAC,EAAE,KAAK,OAAA,EAAE,IAAI,MAAA,EAAE,EAAE;YACrC,IAAI,CAAC;gBACH,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,4CAA4C;AAC5C,SAAgB,WAAW;;IACzB,OAAO,MAAA,iBAAiB,CAAC,QAAQ,EAAE,mCAAK,EAAmB,CAAC;AAC9D,CAAC;AAED,mDAAmD;AACnD,SAAS,eAAe,CAAC,GAAY;IACnC,IAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,4BAAgB,CAAC,CAAC;IAC5C,IAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,oCAAwB,CAAC,CAAC;IACzD,IAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,kCAAsB,CAAC,CAAC;IACtD,IAAM,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,oCAAwB,CAAC,CAAC;IAC5D,IAAM,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,8CAAkC,EAAE,IAAI,CAAC,CAAC,CAAC;IAE/F,oDAAoD;IACpD,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,IAAI,CAAC,cAAc,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACxF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,IAAI,iBAAO,CAAC;QACjB,MAAM,QAAA;QACN,WAAW,aAAA;QACX,UAAU,EAAE,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,UAAC,GAAG,EAAE,QAAQ;YACtD,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;YACrB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAA6B,CAAC;QACjC,cAAc,gBAAA;QACd,qBAAqB,uBAAA;KACtB,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@pgds/api-interface",
3
3
  "description": "Api interface for pgds services",
4
4
  "authors": "Florry",
5
- "version": "1.2.5",
5
+ "version": "1.3.0",
6
6
  "main": "index.js",
7
7
  "types": "types/",
8
8
  "scripts": {
@@ -34,7 +34,6 @@
34
34
  "dependencies": {
35
35
  "@types/restify": "^8.5.12",
36
36
  "@types/restify-errors": "^4.3.9",
37
- "@types/mongodb": "4.0.0",
38
37
  "ajv": "8.17.1",
39
38
  "ajv-formats": "3.0.1",
40
39
  "axios": "1.7.9",
package/utils/index.d.ts CHANGED
@@ -11,3 +11,9 @@ export declare function isGlobal(reqUser: ReqUser): boolean;
11
11
  * Short hand function to check if a user has the `canManageOrganization`(`CAN_MANAGE_ORGANIZATION_ACTIVITY`) activity.
12
12
  */
13
13
  export declare function canManageOrganization(reqUser: ReqUser): boolean;
14
+ /**
15
+ * Short hand function to check if a user has access to an organization. Organization must be in the user's hierarchy to be accessible.
16
+ * @param reqUser The user to check.
17
+ * @param organizationId The organizationId to check for access to.
18
+ */
19
+ export declare function isOrganizationAccessibleToUser(reqUser: ReqUser, organizationId: string): boolean;
package/utils/index.js CHANGED
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.hasActivity = hasActivity;
4
4
  exports.isGlobal = isGlobal;
5
5
  exports.canManageOrganization = canManageOrganization;
6
+ exports.isOrganizationAccessibleToUser = isOrganizationAccessibleToUser;
6
7
  var constants_1 = require("../constants");
7
8
  var mustbeConfig_1 = require("../lib/auth/mustbeConfig");
8
9
  /**
@@ -29,4 +30,12 @@ function isGlobal(reqUser) {
29
30
  function canManageOrganization(reqUser) {
30
31
  return hasActivity(reqUser, constants_1.CAN_MANAGE_ORGANIZATION_ACTIVITY);
31
32
  }
33
+ /**
34
+ * Short hand function to check if a user has access to an organization. Organization must be in the user's hierarchy to be accessible.
35
+ * @param reqUser The user to check.
36
+ * @param organizationId The organizationId to check for access to.
37
+ */
38
+ function isOrganizationAccessibleToUser(reqUser, organizationId) {
39
+ return reqUser.getOrganizationTreeIds().includes(organizationId);
40
+ }
32
41
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;AAUA,kCAMC;AAED,4BAEC;AAKD,sDAEC;AA3BD,0CAAiF;AACjF,yDAA4D;AAG5D;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,OAAgB,EAAE,QAAgB,EAAE,aAA6B;IAA7B,8BAAA,EAAA,oBAA6B;IAC3F,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,IAAA,+BAAgB,EAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,SAAgB,QAAQ,CAAC,OAAgB;IACvC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,2BAAe,CAAC,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,OAAgB;IACpD,OAAO,WAAW,CAAC,OAAO,EAAE,4CAAgC,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;AAUA,kCAMC;AAED,4BAEC;AAKD,sDAEC;AAOD,wEAEC;AApCD,0CAAiF;AACjF,yDAA4D;AAG5D;;;;;GAKG;AACH,SAAgB,WAAW,CAAC,OAAgB,EAAE,QAAgB,EAAE,aAA6B;IAA7B,8BAAA,EAAA,oBAA6B;IAC3F,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,IAAA,+BAAgB,EAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,SAAgB,QAAQ,CAAC,OAAgB;IACvC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,2BAAe,CAAC,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,OAAgB;IACpD,OAAO,WAAW,CAAC,OAAO,EAAE,4CAAgC,CAAC,CAAC;AAChE,CAAC;AAED;;;;GAIG;AACH,SAAgB,8BAA8B,CAAC,OAAgB,EAAE,cAAsB;IACrF,OAAO,OAAO,CAAC,sBAAsB,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AACnE,CAAC"}