@nymphjs/tilmeld 1.0.0-beta.136 → 1.0.0-beta.137

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/CHANGELOG.md CHANGED
@@ -3,6 +3,15 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.0.0-beta.137](https://forge.sciactive.com/sciactive/nymphjs/compare/v1.0.0-beta.136...v1.0.0-beta.137) (2026-11-01)
7
+
8
+ ### Bug Fixes
9
+
10
+ - check expiration and revocation on tokens in pububs ([221475f](https://forge.sciactive.com/sciactive/nymphjs/commits/221475f1da72e20427e6fc0c4a4869a40b097165))
11
+ - clear session when user gives no auth token ([3564fa3](https://forge.sciactive.com/sciactive/nymphjs/commits/3564fa303c11debfa16285de46edcae89132491a))
12
+ - protect user and group built in queries from using search restricted data ([f014044](https://forge.sciactive.com/sciactive/nymphjs/commits/f014044e159b008a67cb5328e01f4d1d66a51db1))
13
+ - use the same code path for rest and pubsub to extract jwt ([22cd085](https://forge.sciactive.com/sciactive/nymphjs/commits/22cd085ff23c46a9d55c0ce2d9810672abca74c9))
14
+
6
15
  # [1.0.0-beta.136](https://forge.sciactive.com/sciactive/nymphjs/compare/v1.0.0-beta.135...v1.0.0-beta.136) (2026-10-31)
7
16
 
8
17
  **Note:** Version bump only for package @nymphjs/tilmeld
package/dist/Group.js CHANGED
@@ -33,7 +33,7 @@ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn,
33
33
  done = true;
34
34
  };
35
35
  import crypto from 'node:crypto';
36
- import { transaction, transactional, } from '@nymphjs/nymph';
36
+ import { clearSearchRestrictedData, transaction, transactional, } from '@nymphjs/nymph';
37
37
  import { nanoid } from '@nymphjs/guid';
38
38
  import { difference, xor } from 'lodash-es';
39
39
  import { splitn } from '@sciactive/splitn';
@@ -163,6 +163,10 @@ let Group = (() => {
163
163
  if (highestParent === false) {
164
164
  return assignableGroups;
165
165
  }
166
+ ({ options, selectors } = clearSearchRestrictedData({
167
+ options,
168
+ selectors,
169
+ }));
166
170
  assignableGroups = await this.nymph.getEntities({ ...options, class: tilmeld.Group }, ...selectors);
167
171
  if (highestParent !== true) {
168
172
  assignableGroups = (await Promise.all(assignableGroups.map(async (group) => {
package/dist/Group.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Group.js","sourceRoot":"","sources":["../src/Group.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAML,WAAW,EACX,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EACL,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,sCAAsC,GACvC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,WAAW,CAAC;AA8F9C;;;;;;;;GAQG;IACU,KAAK;sBAAS,UAAU;;;iBAAxB,KAAM,SAAQ,WAAqB;;;mCAk5B7C,aAAa;YACd,wKAAa,OAAO,6DA0EnB;;;QA59BD,MAAM,CAAC,KAAK,GAAG,eAAe,CAAC;QAC/B,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC;QACf,MAAM,CAAC,uBAAuB,GAAoC,EAAE,CAAC;QACrE,MAAM,CAAC,mBAAmB,GAAqC,EAAE,CAAC;QAClE,MAAM,CAAC,kBAAkB,GAAoC,EAAE,CAAC;QAChE,MAAM,CAAC,qBAAqB,GAAuC,EAAE,CAAC;QACtE,MAAM,CAAC,oBAAoB,GAAsC,EAAE,CAAC;QAEpE,MAAM,CAAC,oBAAoB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,CAAC,sBAAsB,GAAa,EAAE,CAAC;QAE3C,KAAK,IAZJ,mDAAK,EAYE,EAAE,EAAC;QACX,qBAAqB,GAAG;YAChC,iBAAiB;YACjB,aAAa;YACb,YAAY;YACZ,cAAc;YACd,iBAAiB;YACjB,WAAW;YACX,eAAe;SAChB,CAAC;QACK,MAAM,CAAC,0BAA0B,GAAG;YACzC,kBAAkB;YAClB,oBAAoB;SACrB,CAAC;QACQ,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAClD,MAAM,CAAC,oBAAoB,GAAG,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC3D,cAAc,GAAI,CAAC,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACpD,cAAc,GAAc,EAAE,CAAC;QAEzC;;WAEG;QACK,iBAAiB,GAAG,KAAK,CAAC;QAClC;;WAEG;QACK,mBAAmB,GAAG,KAAK,CAAC;QACpC;;WAEG;QACI,kBAAkB,CAAU;QAE5B,MAAM,CAAC,UAAU,CAAC,IAAY,EAAE,KAAU;YAC/C,IACE;gBACE,WAAW;gBACX,QAAQ;gBACR,MAAM;gBACN,SAAS;gBACT,gBAAgB;gBAChB,kBAAkB;gBAClB,qBAAqB;aACtB,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EACtB,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,SAAkB;YAC9C,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YAC1B,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CACvC;oBACE,KAAK,EAAE,IAAI;iBACZ,EACD;oBACE,IAAI,EAAE,GAAG;oBACT,KAAK,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;iBACtE,CACF,CAAC;gBACF,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED;;;;;;WAMG;QACI,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAClC,OAAiB,EACjB,SAAsB;YAEtB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC3D,CAAC;YAED,OAAO,MAAM,IAAI,CAAC,mBAAmB,CACnC,OAAO,CAAC,MAAM,CAAC,cAAc,EAC7B,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EACtD,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CACvB,CAAC;QACJ,CAAC;QAED;;;;;;WAMG;QACI,MAAM,CAAC,KAAK,CAAC,kBAAkB,CACpC,OAAiB,EACjB,SAAsB;YAEtB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;YAC3D,CAAC;YAED,OAAO,MAAM,IAAI,CAAC,mBAAmB,CACnC,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAC/B,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EACtD,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CACvB,CAAC;QACJ,CAAC;QAEO,MAAM,CAAC,KAAK,CAAC,mBAAmB,CACtC,aAA+B,EAC/B,OAA8B,EAC9B,SAAqB;YAErB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,gBAAgB,GAAY,EAAE,CAAC;YAEnC,IAAI,aAAa,KAAK,KAAK,EAAE,CAAC;gBAC5B,OAAO,gBAAgB,CAAC;YAC1B,CAAC;YAED,gBAAgB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAC7C,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EACpC,GAAG,SAAS,CACb,CAAC;YACF,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;gBAC3B,gBAAgB,GAAG,CACjB,MAAM,OAAO,CAAC,GAAG,CACf,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBACnC,IAAI,QAAQ,GAAG,KAAK,CAAC;oBACrB,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;oBAC7B,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC;oBACtB,OAAO,MAAM,IAAI,IAAI,IAAI,MAAM,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC;wBAC/C,IAAI,MAAM,EAAE,IAAI,KAAK,aAAa,EAAE,CAAC;4BACnC,OAAO,KAAK,CAAC;wBACf,CAAC;wBACD,QAAQ,GAAG,MAAM,CAAC;wBAClB,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;wBACzB,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC;oBACxB,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CACH,CACF,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,IAAI,CAAY,CAAC;YAChD,CAAC;YACD,OAAO,gBAAgB,CAAC;QAC1B,CAAC;QAED;YACE,KAAK,EAAE,CAAC;YAER,YAAY;YACZ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,CAAC;QAED,KAAK,CAAC,WAAW;YACf,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YACxC,IACE,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc;gBAC9B,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAC3C,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAClC,CAAC;YACD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACpC,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAEM,UAAU;YACf,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;gBAC9C,OAAO,IAAI,CAAC,MAAM,CAAC;YACrB,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC7C,OAAO,+CAA+C,CAAC;YACzD,CAAC;YACD,OAAO,CACL,qCAAqC;gBACrC,MAAM;qBACH,UAAU,CAAC,QAAQ,CAAC;qBACpB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;qBACvC,MAAM,CAAC,KAAK,CAAC;qBACb,WAAW,EAAE;gBAChB,mBAAmB,CACpB,CAAC;QACJ,CAAC;QAEM,eAAe,CAAC,KAAiB,EAAE,aAAa,GAAG,KAAK;YAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;YAEd,IAAI,WAAW,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC9B,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrD,CAAC;YAED,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC9C,CAAC;QAEM,gBAAgB,CAAC,KAAkB,EAAE,aAAa,GAAG,KAAK;YAC/D,IAAI,CAAC,MAAM,EAAE,CAAC;YAEd,IAAI,WAAW,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACpD,CAAC;YAED,KAAK,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QAC/C,CAAC;QAEO,uBAAuB,CAAC,QAAa;YAC3C,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YAErC,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;gBACxB,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,EACvD,CAAC;gBACD,MAAM,IAAI,YAAY,CAAC,wCAAwC,CAAC,CAAC;YACnE,CAAC;YAED,IACE,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;gBAC/B,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC;gBAC1C,CAAC,CAAC,OAAO,CAAC,WAAW;oBACnB,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,EAC3D,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,+DAA+D,CAChE,CAAC;YACJ,CAAC;YAED,IACE,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAChC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAC;gBAC3C,CAAC,CAAC,OAAO,CAAC,WAAW;oBACnB,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,EAC3D,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,gEAAgE,CACjE,CAAC;YACJ,CAAC;YAED,IACE,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBACjC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,gBAAgB,CAAC;gBAC5C,CAAC,CAAC,OAAO,CAAC,WAAW;oBACnB,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,EAC3D,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,iEAAiE,CAClE,CAAC;YACJ,CAAC;YAED,IACE,GAAG,CACD,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,EACpE,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,OAAe,EAAE,EAAE,CACzC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAC/B,IAAI,EAAE,CACR,CAAC,MAAM;gBACR,CAAC,CAAC,OAAO,CAAC,WAAW;oBACnB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC;wBACvD,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,EAC/D,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,oEAAoE,CACrE,CAAC;YACJ,CAAC;QACH,CAAC;QAEM,QAAQ,CACb,IAAe,EACf,KAA4B,EAC5B,MAAiB;YAEjB,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YACpC,8CAA8C;YAC9C,aAAa;YACb,OAAO,IAAI,CAAC,MAAM,CAAC;YACnB,aAAa;YACb,OAAO,IAAI,CAAC,OAAO,CAAC;YACpB,aAAa;YACb,OAAO,IAAI,CAAC,MAAM,CAAC;YACnB,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC;YAC3C,CAAC;YACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC/B,CAAC;QAED;;;;WAIG;QACI,qBAAqB,CAAC,SAAqB;YAChD,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,IAAI,GAAG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/C,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa;gBACrD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAC3B,6BAA6B;YAC7B,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAChC,CAAC;YAED,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACpD,IAAI,CAAC,cAAc,GAAG,CAAC,GAAG,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAExD,IAAI,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAClC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACtC,CAAC;YAED,IACE,IAAI,IAAI,IAAI;gBACZ,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,eAAe,CAAC;oBACxC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,EAC3C,CAAC;gBACD,gDAAgD;gBAChD,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;gBACvB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAClC,CAAC;iBAAM,IACL,IAAI,CAAC,IAAI,IAAI,IAAI;gBACjB,IAAI,IAAI,IAAI;gBACZ,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,EAC5B,CAAC;gBACD,oCAAoC;gBACpC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;YACzB,CAAC;iBAAM,IACL,IAAI,IAAI,IAAI;gBACZ,OAAO,CAAC,MAAM,CAAC,aAAa;gBAC5B,MAAM;gBACN,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,kBAAkB,MAAM,QAAQ,CAAC,EAC1D,CAAC;gBACD,4CAA4C;gBAC5C,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;YACzB,CAAC;QACH,CAAC;QAED;;;;;WAKG;QACI,KAAK,CAAC,aAAa,CAAC,UAA0B;YACnD,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,KAAY,CAAC;YACjB,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;gBACnC,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,UAAU,CAAC;YACrB,CAAC;YACD,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,gEAAgE;YAChE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC;YACtB,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,MAAM,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED;;;;WAIG;QACI,KAAK,CAAC,YAAY;YACvB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAClC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EACxB;gBACE,IAAI,EAAE,GAAG;gBACT,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC;gBACxB,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;aACtB,CACF,CAAC;QACJ,CAAC;QAED;;;;;;WAMG;QACI,KAAK,CAAC,eAAe,CAC1B,OAAO,GAAG,KAAK,EACf,WAAW,GAAG,KAAK;YAEnB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,MAAM,GAAY,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC5C,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EACxB;gBACE,IAAI,EAAE,GAAG;gBACT,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC;gBACpD,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;aACtB,CACF,CAAC;YACF,KAAK,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC/D,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED;;;;;;;;;;WAUG;QACI,KAAK,CAAC,SAAS;YACpB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;YAChE,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC1B,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC;YACtB,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,OAAO,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,GAAG,IAAI,EAAE,CAAC;gBAC9D,KAAK,EAAE,CAAC;gBACR,KAAK,GAAG,MAAM,CAAC;gBACf,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;gBACtB,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC;YACxB,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED;;;;;;;WAOG;QACI,KAAK,CAAC,SAAS,CACpB,WAAW,GAAG,KAAK,EACnB,KAAc,EACd,MAAe;YAEf,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,MAAM,GAAY,EAAE,CAAC;YACzB,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAClC;gBACE,KAAK,EAAE,OAAO,CAAC,IAAI;gBACnB,KAAK;gBACL,MAAM;aACP,EACD,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,EACvC;gBACE,IAAI,EAAE,GAAG;gBACT,GAAG,EAAE;oBACH,CAAC,OAAO,EAAE,IAAI,CAAC;oBACf,CAAC,QAAQ,EAAE,IAAI,CAAC;oBAChB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAC3D,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;iBAC7D;aACF,CACF,CAAC;QACJ,CAAC;QAED;;;;WAIG;QACI,KAAK,CAAC,eAAe;YAI1B,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBACnC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,aAAa;oBACpD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;oBACtC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAE3B,6BAA6B;gBAC7B,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;oBAC9B,IAAI,CAAC,SAAS,GAAG,GAAG,SAAS,IAAI,MAAM,EAAE,CAAC;gBAC5C,CAAC;gBAED,IACE,IAAI,CAAC,SAAS,IAAI,IAAI;oBACtB,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM;oBACtB,SAAS,IAAI,IAAI;oBACjB,CAAC,SAAS,CAAC,MAAM,EACjB,CAAC;oBACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC;gBACnE,CAAC;gBACD,IAAI,SAAS,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;oBACxD,OAAO;wBACL,MAAM,EAAE,KAAK;wBACb,OAAO,EACL,8BAA8B;4BAC9B,OAAO,CAAC,MAAM,CAAC,iBAAiB;4BAChC,cAAc;qBACjB,CAAC;gBACJ,CAAC;gBACD,IAAI,SAAS,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;oBACxD,OAAO;wBACL,MAAM,EAAE,KAAK;wBACb,OAAO,EACL,6BAA6B;4BAC7B,OAAO,CAAC,MAAM,CAAC,iBAAiB;4BAChC,cAAc;qBACjB,CAAC;gBACJ,CAAC;gBACD,IACE,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;qBACjE,MAAM,EACT,CAAC;oBACD,OAAO;wBACL,MAAM,EAAE,KAAK;wBACb,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB;qBACzC,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC/C,OAAO;wBACL,MAAM,EAAE,KAAK;wBACb,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,gBAAgB;qBACzC,CAAC;gBACJ,CAAC;gBACD,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;wBAClD,OAAO;4BACL,MAAM,EAAE,KAAK;4BACb,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB;yBAC/C,CAAC;oBACJ,CAAC;oBACD,IACE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC;wBACrC,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,MAAM,QAAQ,CAAC,EACrD,CAAC;wBACD,OAAO;4BACL,MAAM,EAAE,KAAK;4BACb,OAAO,EACL,+DAA+D;yBAClE,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,MAAM,QAAQ,GAAa;oBACzB,IAAI,EAAE,GAAG;oBACT,KAAK,EAAE;wBACL,WAAW;wBACX,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;qBACrD;iBACF,CAAC;gBACF,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;oBACtB,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;gBAChC,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CACtC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EACtC,QAAQ,CACT,CAAC;gBACF,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;oBACjB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;gBAChE,CAAC;gBAED,KAAK,IAAI,QAAQ,IAAK,IAAI,CAAC,WAA4B;qBACpD,uBAAuB,EAAE,CAAC;oBAC3B,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;4BAClC,SAAS,EAAE,IAAI,CAAC,SAAS;yBAC1B,CAAC,CAAC;wBACH,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;4BACnB,OAAO,EAAE,OAAO,EAAE,6BAA6B,EAAE,GAAG,MAAM,EAAE,CAAC;wBAC/D,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,MAAM,EAAE,IAAI;oBACZ,OAAO,EACL,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,yBAAyB;iBACxE,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC5B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;oBACrD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;gBAChE,CAAC;gBACD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;oBAC7D,OAAO;wBACL,MAAM,EAAE,KAAK;wBACb,OAAO,EACL,0BAA0B;4BAC1B,OAAO,CAAC,MAAM,CAAC,iBAAiB;4BAChC,cAAc;qBACjB,CAAC;gBACJ,CAAC;gBACD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;oBAC7D,OAAO;wBACL,MAAM,EAAE,KAAK;wBACb,OAAO,EACL,yBAAyB;4BACzB,OAAO,CAAC,MAAM,CAAC,iBAAiB;4BAChC,cAAc;qBACjB,CAAC;gBACJ,CAAC;gBAED,OAAO,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAClC,CAAC;QACH,CAAC;QAED;;;;WAIG;QACI,KAAK,CAAC,WAAW;YACtB,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,EAAE,CAAC;gBACtB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YACvC,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;gBACvB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;YACrE,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrD,OAAO;oBACL,MAAM,EAAE,KAAK;oBACb,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,qBAAqB;iBAC9C,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAa;gBACzB,IAAI,EAAE,GAAG;gBACT,KAAK,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aACnE,CAAC;YACF,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACtB,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;YAChC,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CACtC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EACtC,QAAQ,CACT,CAAC;YACF,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;gBACjB,OAAO;oBACL,MAAM,EAAE,KAAK;oBACb,OAAO,EAAE,2CAA2C;iBACrD,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,MAAM,EAAE,IAAI;gBACZ,OAAO,EACL,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,yBAAyB;aACpE,CAAC;QACJ,CAAC;QAEM,KAAK,CAAC,KAAK;YAChB,IAAI,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;gBAC5D,MAAM,IAAI,gBAAgB,CAAC,8BAA8B,CAAC,CAAC;YAC7D,CAAC;YAED,6BAA6B;YAC7B,IAAI,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;gBACjC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;gBACjE,IAAI,MAAM,EAAE,CAAC;oBACX,IAAI,CAAC,SAAS,GAAG,GAAG,SAAS,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC1D,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;gBACjC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;gBAClE,MAAM,CAAC,kBAAkB,EAAE,cAAc,CAAC,GAAG,MAAM,CACjD,IAAI,CAAC,kBAAkB,IAAI,EAAE,EAC7B,GAAG,EACH,CAAC,CACF,CAAC;gBAEF,IACE,IAAI,CAAC,IAAI,IAAI,IAAI;oBACjB,CAAC,CAAC,cAAc,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,CAAC;wBACzC,CAAC,MAAM,IAAI,IAAI,IAAI,cAAc,IAAI,IAAI,CAAC,CAAC,EAC7C,CAAC;oBACD,MAAM,IAAI,kBAAkB,CAC1B,8DAA8D,CAC/D,CAAC;gBACJ,CAAC;gBAED,IACE,CAAC,IAAI,CAAC,iBAAiB;oBACvB,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC;oBACpC,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,EACnC,CAAC;oBACD,IACE,MAAM,IAAI,IAAI;wBACd,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC;wBAC9B,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,MAAM,QAAQ,CAAC,EACrD,CAAC;wBACD,MAAM,IAAI,kBAAkB,CAC1B,+DAA+D,CAChE,CAAC;oBACJ,CAAC;oBACD,IACE,cAAc,IAAI,IAAI;wBACtB,cAAc,KAAK,MAAM;wBACzB,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,MAAM,QAAQ,CAAC;4BACpD,CAAC,OAAO,CAAC,UAAU,CAAC,kBAAkB,cAAc,QAAQ,CAAC,CAAC,EAChE,CAAC;wBACD,MAAM,IAAI,kBAAkB,CAC1B,+DAA+D,CAChE,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,cAAc;YACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAClC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;YAC9B,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;YAE9B,sBAAsB;YACtB,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpE,OAAO,IAAI,CAAC,IAAI,CAAC;YACnB,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtE,OAAO,IAAI,CAAC,KAAK,CAAC;YACpB,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC,MAAM,CAAC;YACrB,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtE,OAAO,IAAI,CAAC,KAAK,CAAC;YACpB,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;gBACxB,OAAO,IAAI,CAAC,MAAM,CAAC;YACrB,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC,IAAI,CAAC;YACnB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC,cAAc,CAAC;YAC7B,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC,gBAAgB,CAAC;YAC/B,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,mBAAmB,CAAC;YAClC,CAAC;YAED,4DAA4D;YAC5D,+CAA+C;YAC/C,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;gBACzD,IACE,CAAC,cAAc,EAAE,eAAe,EAAE,gBAAgB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;oBACpE,CAAC,CAAC,EACF,CAAC;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;oBACpB,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,IAAI,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACxE,OAAO,KAAK,CAAC;gBACf,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC,CAAa,CAAC;YAEf,gBAAgB;YAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;YAC7C,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpB,MAAM,IAAI,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC9C,CAAC;YACD,IACE,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc;gBAC9B,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAC3C,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBACzC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;oBACpB,MAAM,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;YAED,wEAAwE;YACxE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC;YACtB,IACE,MAAM;gBACN,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI;oBACnB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;oBAChB,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EACrC,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,uDAAuD,CACxD,CAAC;YACJ,CAAC;YAED,IAAI,CAAC;gBACH,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACrC,CAAC;YAED,6CAA6C;YAC7C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAChD,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,EACxB,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,gBAAgB,EAAE,CACxC,CAAC;gBACF,IAAI,cAAc,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;oBACxD,cAAc,CAAC,cAAc,GAAG,KAAK,CAAC;oBACtC,IAAI,CAAC;wBACH,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;4BAC3B,MAAM,cAAc,CAAC,WAAW,EAAE,CAAC;wBACrC,CAAC;6BAAM,CAAC;4BACN,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;wBAC/B,CAAC;oBACH,CAAC;oBAAC,OAAO,CAAM,EAAE,CAAC;wBAChB,MAAM,IAAI,sCAAsC,CAC9C,+CAA+C;4BAC7C,GAAG,cAAc,CAAC,SAAS,GAAG,CACjC,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;YACxB,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;YAC1B,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;YAC1B,OAAO,MAAM,WAAW,CACtB,IAAI,CAAC,MAAM,EACX,qBAAqB,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC,EAC/C,KAAK,EAAE,KAAK,EAAE,EAAE;gBACd,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAEtB,KAAK,IAAI,QAAQ,IAAK,IAAI,CAAC,WAA4B;qBACpD,mBAAmB,EAAE,CAAC;oBACvB,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;oBAChC,CAAC;gBACH,CAAC;gBAED,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;gBAEpB,KAAK,IAAI,QAAQ,IAAK,IAAI,CAAC,WAA4B;qBACpD,kBAAkB,EAAE,CAAC;oBACtB,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;oBAChC,CAAC;gBACH,CAAC;YACH,CAAC,EACD,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE;gBACzB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBAEtB,IAAI,SAAS,EAAE,CAAC;oBACd,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;oBACpB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;oBACtB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;gBACxB,CAAC;YACH,CAAC,CACF,CAAC;QACJ,CAAC;QAED;;WAEG;QACI,KAAK,CAAC,WAAW;YACtB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;QAEM,kBAAkB;YACvB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC;gBAC/B,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAGM,KAAK,CAAC,OAAO;YAClB,IAAI,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YAEnD,IAAI,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,kBAAkB,CAC1B,gDAAgD,CACjD,CAAC;YACJ,CAAC;YACD,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC/C,MAAM,IAAI,kBAAkB,CAC1B,yDAAyD,CAC1D,CAAC;YACJ,CAAC;YAED,KAAK,IAAI,QAAQ,IAAK,IAAI,CAAC,WAA4B;iBACpD,qBAAqB,EAAE,CAAC;gBACzB,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAED,mBAAmB;YACnB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAC5C,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EACtC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CACrC,CAAC;YACF,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACpB,KAAK,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;oBAC9B,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;wBAC7B,MAAM,QAAQ,CAAC,aAAa,EAAE,CAAC;oBACjC,CAAC;yBAAM,CAAC;wBACN,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;oBAC3B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,wCAAwC;YACxC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAChD,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAC7B,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CACpC,CAAC;YACF,KAAK,IAAI,IAAI,IAAI,YAAY,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,KAAK,CAAC;gBAClB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAC7B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACrB,CAAC;YACH,CAAC;YAED,0CAA0C;YAC1C,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAClD,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAC7B,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,CACrC,CAAC;YACF,KAAK,IAAI,IAAI,IAAI,cAAc,EAAE,CAAC;gBAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACrB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAC7B,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACrB,CAAC;YACH,CAAC;YAED,oBAAoB;YACpB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;YAEtB,KAAK,IAAI,QAAQ,IAAK,IAAI,CAAC,WAA4B;iBACpD,oBAAoB,EAAE,CAAC;gBACxB,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;QAED;;WAEG;QACH,KAAK,CAAC,aAAa;YACjB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAChC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;QAED,oBAAoB;YAClB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC7B,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC;gBACjC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAEM,MAAM,CAAC,EAAE,CACd,KAAQ,EACR,QAUiB;YAEjB,MAAM,IAAI,GAAG,CAAC,KAAK,GAAG,WAAW,CAUhB,CAAC;YAClB,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;YACD,iEAAiE;YACjE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1B,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;QAEM,MAAM,CAAC,GAAG,CACf,KAAQ,EACR,QAUiB;YAEjB,MAAM,IAAI,GAAG,CAAC,KAAK,GAAG,WAAW,CAUhB,CAAC;YAClB,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;gBACpB,OAAO,KAAK,CAAC;YACf,CAAC;YACD,iEAAiE;YACjE,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBACX,iEAAiE;gBACjE,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1B,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;;;SAnjCU,KAAK"}
1
+ {"version":3,"file":"Group.js","sourceRoot":"","sources":["../src/Group.ts"],"names":[],"mappings":"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"}
package/dist/Tilmeld.d.ts CHANGED
@@ -205,9 +205,28 @@ export default class Tilmeld implements TilmeldInterface {
205
205
  * Validate and extract the user from a token.
206
206
  *
207
207
  * @param token The authentication token.
208
- * @returns The user on success, null on failure.
208
+ * @param enforceUserRestrictions Validate that the user is enabled and the token was issued after user's revocation date.
209
+ * @param xsrfToken Validate this XSRF Token against the auth token.
210
+ * @returns The user and extraction on success, null on failure.
209
211
  */
210
- extractToken(token: string): Promise<(User & import("./User.js").UserData) | null>;
212
+ extractToken(token: string, enforceUserRestrictions: boolean, xsrfToken?: string): Promise<{
213
+ user: null;
214
+ extract: null;
215
+ } | {
216
+ user: null;
217
+ extract: {
218
+ guid: string;
219
+ issued: Date;
220
+ expire: Date;
221
+ };
222
+ } | {
223
+ user: User & import("./User.js").UserData;
224
+ extract: {
225
+ guid: string;
226
+ issued: Date;
227
+ expire: Date;
228
+ };
229
+ }>;
211
230
  /**
212
231
  * Check for TILMELDAUTH and TILMELDSWITCH tokens, and, if set, authenticate
213
232
  * from it/them.
package/dist/Tilmeld.js CHANGED
@@ -826,20 +826,30 @@ export default class Tilmeld {
826
826
  * Validate and extract the user from a token.
827
827
  *
828
828
  * @param token The authentication token.
829
- * @returns The user on success, null on failure.
829
+ * @param enforceUserRestrictions Validate that the user is enabled and the token was issued after user's revocation date.
830
+ * @param xsrfToken Validate this XSRF Token against the auth token.
831
+ * @returns The user and extraction on success, null on failure.
830
832
  */
831
- async extractToken(token) {
833
+ async extractToken(token, enforceUserRestrictions, xsrfToken) {
832
834
  this.nymph.config.debugInfo('tilmeld', 'Extracting and validating token.');
833
- const extract = this.config.jwtExtract(this.config, token);
835
+ const extract = this.config.jwtExtract(this.config, token, xsrfToken);
834
836
  if (extract == null) {
835
- return null;
837
+ return { user: null, extract };
838
+ }
839
+ const { guid, issued, expire } = extract;
840
+ if (expire.getTime() <= Date.now() || issued.getTime() > Date.now()) {
841
+ return { user: null, extract };
836
842
  }
837
- const { guid } = extract;
838
843
  const user = await this.nymph.getEntity({ class: this.User }, { type: '&', guid });
839
- if (!user || !user.guid) {
840
- return null;
844
+ if (user == null ||
845
+ user.guid == null ||
846
+ (enforceUserRestrictions &&
847
+ (!user.enabled ||
848
+ (user.revokeTokenDate != null &&
849
+ issued.getTime() <= user.revokeTokenDate)))) {
850
+ return { user: null, extract };
841
851
  }
842
- return user;
852
+ return { user, extract };
843
853
  }
844
854
  /**
845
855
  * Check for TILMELDAUTH and TILMELDSWITCH tokens, and, if set, authenticate
@@ -891,53 +901,37 @@ export default class Tilmeld {
891
901
  switchToken = 'TILMELDSWITCH' in cookies ? cookies.TILMELDSWITCH : null;
892
902
  }
893
903
  else {
904
+ this.clearSession();
894
905
  return false;
895
906
  }
907
+ let user;
896
908
  let authExtract;
897
- let switchExtract;
909
+ let switchUser = null;
910
+ let switchExtract = null;
911
+ let xsrfToken = undefined;
898
912
  if (skipXsrfToken ||
899
913
  this.request.originalUrl.startsWith(this.config.setupPath)) {
900
914
  // The request is for the setup app, or we were told to skip the XSRF
901
915
  // check, so don't check for the XSRF token.
902
- authExtract = this.config.jwtExtract(this.config, authToken);
903
- switchExtract = switchToken
904
- ? this.config.jwtExtract(this.config, switchToken)
905
- : null;
906
916
  }
907
917
  else {
908
918
  // The request is for something else, so check for a valid XSRF token,
909
919
  // unless the auth token is provided by a header (instead of a cookie).
910
- const xsrfToken = this.request.header('x-xsrf-token');
920
+ xsrfToken = this.request.header('x-xsrf-token');
911
921
  if (xsrfToken == null && !fromAuthHeader) {
912
922
  return false;
913
923
  }
914
- authExtract = this.config.jwtExtract(this.config, authToken, xsrfToken);
915
- switchExtract = switchToken
916
- ? this.config.jwtExtract(this.config, switchToken)
917
- : null;
918
924
  }
919
- if (authExtract == null) {
920
- await this.logout();
921
- return false;
925
+ ({ user, extract: authExtract } = await this.extractToken(authToken, true, xsrfToken));
926
+ if (switchToken) {
927
+ ({ user: switchUser, extract: switchExtract } = await this.extractToken(switchToken, false));
922
928
  }
923
- const { guid, issued, expire } = authExtract;
924
- const { guid: switchGuid, expire: switchExpire } = switchExtract || {
925
- guid: null,
926
- expire: null,
927
- };
928
- const user = await this.User.factory(guid);
929
- if (user.guid == null ||
930
- !user.enabled ||
931
- expire.getTime() <= Date.now() ||
932
- issued.getTime() > Date.now() ||
933
- (user.revokeTokenDate != null && issued.getTime() <= user.revokeTokenDate)) {
929
+ if (user == null) {
934
930
  await this.logout();
935
931
  return false;
936
932
  }
937
- if (switchGuid && switchExpire && switchExpire.getTime() > Date.now()) {
938
- // Load the switch user.
939
- const switchUser = await this.User.factory(switchGuid);
940
- if (switchUser.guid == null) {
933
+ if (switchToken) {
934
+ if (switchUser == null) {
941
935
  await this.logoutSwitch();
942
936
  }
943
937
  else {
@@ -949,7 +943,8 @@ export default class Tilmeld {
949
943
  }
950
944
  }
951
945
  if (!skipRenew &&
952
- expire.getTime() < Date.now() + this.config.jwtRenew * 1000) {
946
+ authExtract &&
947
+ authExtract.expire.getTime() < Date.now() + this.config.jwtRenew * 1000) {
953
948
  // If the user is less than renew time from needing a new token, give them
954
949
  // a new one.
955
950
  await this.login(user, fromAuthHeader);
@@ -1 +1 @@
1
- {"version":3,"file":"Tilmeld.js","sourceRoot":"","sources":["../src/Tilmeld.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tilmeld.js","sourceRoot":"","sources":["../src/Tilmeld.ts"],"names":[],"mappings":"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"}
package/dist/User.js CHANGED
@@ -354,6 +354,10 @@ let User = (() => {
354
354
  if (!tilmeld.config.domainSupport) {
355
355
  throw new AccessControlError('Domain support is not enabled.');
356
356
  }
357
+ if (options?.sort != null &&
358
+ User.searchRestrictedData.includes(options.sort)) {
359
+ throw new AccessControlError("Can't sort by that property.");
360
+ }
357
361
  if (!domain) {
358
362
  throw new BadDataError('Domain is required.');
359
363
  }
@@ -365,7 +369,7 @@ let User = (() => {
365
369
  throw new AccessControlError('You do not have the authority to manage this domain.');
366
370
  }
367
371
  return await this.nymph.getEntities({
368
- class: this.nymph.getEntityClass(User),
372
+ class: User,
369
373
  ...(options?.limit != null ? { limit: options.limit } : {}),
370
374
  ...(options?.offset != null ? { offset: options.offset } : {}),
371
375
  ...(options?.sort != null ? { sort: options.sort } : {}),
package/dist/User.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"User.js","sourceRoot":"","sources":["../src/User.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"User.js","sourceRoot":"","sources":["../src/User.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nymphjs/tilmeld",
3
- "version": "1.0.0-beta.136",
3
+ "version": "1.0.0-beta.137",
4
4
  "description": "Nymph.js - Tilmeld User and Group System",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -40,8 +40,8 @@
40
40
  },
41
41
  "license": "Apache-2.0",
42
42
  "dependencies": {
43
- "@nymphjs/guid": "^1.0.0-beta.136",
44
- "@nymphjs/nymph": "^1.0.0-beta.136",
43
+ "@nymphjs/guid": "^1.0.0-beta.137",
44
+ "@nymphjs/nymph": "^1.0.0-beta.137",
45
45
  "@sciactive/splitn": "^3.1.0",
46
46
  "email-templates": "^13.0.1",
47
47
  "express": "^5.2.1",
@@ -54,7 +54,7 @@
54
54
  "qrcode": "^1.5.4"
55
55
  },
56
56
  "devDependencies": {
57
- "@nymphjs/client": "^1.0.0-beta.136",
57
+ "@nymphjs/client": "^1.0.0-beta.137",
58
58
  "@swc/core": "^1.16.1",
59
59
  "@swc/jest": "^0.2.39",
60
60
  "@tsconfig/recommended": "^1.0.13",
@@ -71,5 +71,5 @@
71
71
  "ts-node": "^10.9.2",
72
72
  "typescript": "^7.0.2"
73
73
  },
74
- "gitHead": "968fecb6ad8ad1d560191e58b671057f911133c9"
74
+ "gitHead": "09583586bf1044cb4cdafcdcf40e235d8d795644"
75
75
  }
package/src/Group.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import crypto from 'node:crypto';
2
2
  import {
3
+ clearSearchRestrictedData,
3
4
  type EntityJson,
4
5
  type EntityPatch,
5
6
  type Options,
@@ -262,6 +263,11 @@ export class Group extends AbleObject<GroupData> {
262
263
  return assignableGroups;
263
264
  }
264
265
 
266
+ ({ options, selectors } = clearSearchRestrictedData({
267
+ options,
268
+ selectors,
269
+ }));
270
+
265
271
  assignableGroups = await this.nymph.getEntities(
266
272
  { ...options, class: tilmeld.Group },
267
273
  ...selectors,
package/src/Tilmeld.ts CHANGED
@@ -1036,25 +1036,42 @@ export default class Tilmeld implements TilmeldInterface {
1036
1036
  * Validate and extract the user from a token.
1037
1037
  *
1038
1038
  * @param token The authentication token.
1039
- * @returns The user on success, null on failure.
1039
+ * @param enforceUserRestrictions Validate that the user is enabled and the token was issued after user's revocation date.
1040
+ * @param xsrfToken Validate this XSRF Token against the auth token.
1041
+ * @returns The user and extraction on success, null on failure.
1040
1042
  */
1041
- public async extractToken(token: string) {
1043
+ public async extractToken(
1044
+ token: string,
1045
+ enforceUserRestrictions: boolean,
1046
+ xsrfToken?: string,
1047
+ ) {
1042
1048
  this.nymph.config.debugInfo('tilmeld', 'Extracting and validating token.');
1043
- const extract = this.config.jwtExtract(this.config, token);
1049
+ const extract = this.config.jwtExtract(this.config, token, xsrfToken);
1044
1050
  if (extract == null) {
1045
- return null;
1051
+ return { user: null, extract };
1052
+ }
1053
+ const { guid, issued, expire } = extract;
1054
+
1055
+ if (expire.getTime() <= Date.now() || issued.getTime() > Date.now()) {
1056
+ return { user: null, extract };
1046
1057
  }
1047
- const { guid } = extract;
1048
1058
 
1049
1059
  const user = await this.nymph.getEntity(
1050
1060
  { class: this.User },
1051
1061
  { type: '&', guid },
1052
1062
  );
1053
- if (!user || !user.guid) {
1054
- return null;
1063
+ if (
1064
+ user == null ||
1065
+ user.guid == null ||
1066
+ (enforceUserRestrictions &&
1067
+ (!user.enabled ||
1068
+ (user.revokeTokenDate != null &&
1069
+ issued.getTime() <= user.revokeTokenDate)))
1070
+ ) {
1071
+ return { user: null, extract };
1055
1072
  }
1056
1073
 
1057
- return user;
1074
+ return { user, extract };
1058
1075
  }
1059
1076
 
1060
1077
  /**
@@ -1110,61 +1127,48 @@ export default class Tilmeld implements TilmeldInterface {
1110
1127
  authToken = cookies.TILMELDAUTH;
1111
1128
  switchToken = 'TILMELDSWITCH' in cookies ? cookies.TILMELDSWITCH : null;
1112
1129
  } else {
1130
+ this.clearSession();
1113
1131
  return false;
1114
1132
  }
1115
1133
 
1134
+ let user: User | null;
1116
1135
  let authExtract: { guid: string; issued: Date; expire: Date } | null;
1117
- let switchExtract: { guid: string; expire: Date } | null;
1136
+ let switchUser: User | null = null;
1137
+ let switchExtract: { guid: string; expire: Date } | null = null;
1138
+ let xsrfToken: string | undefined = undefined;
1118
1139
  if (
1119
1140
  skipXsrfToken ||
1120
1141
  this.request.originalUrl.startsWith(this.config.setupPath)
1121
1142
  ) {
1122
1143
  // The request is for the setup app, or we were told to skip the XSRF
1123
1144
  // check, so don't check for the XSRF token.
1124
- authExtract = this.config.jwtExtract(this.config, authToken);
1125
- switchExtract = switchToken
1126
- ? this.config.jwtExtract(this.config, switchToken)
1127
- : null;
1128
1145
  } else {
1129
1146
  // The request is for something else, so check for a valid XSRF token,
1130
1147
  // unless the auth token is provided by a header (instead of a cookie).
1131
- const xsrfToken = this.request.header('x-xsrf-token');
1148
+ xsrfToken = this.request.header('x-xsrf-token');
1132
1149
  if (xsrfToken == null && !fromAuthHeader) {
1133
1150
  return false;
1134
1151
  }
1135
-
1136
- authExtract = this.config.jwtExtract(this.config, authToken, xsrfToken);
1137
- switchExtract = switchToken
1138
- ? this.config.jwtExtract(this.config, switchToken)
1139
- : null;
1140
1152
  }
1141
-
1142
- if (authExtract == null) {
1143
- await this.logout();
1144
- return false;
1153
+ ({ user, extract: authExtract } = await this.extractToken(
1154
+ authToken,
1155
+ true,
1156
+ xsrfToken,
1157
+ ));
1158
+ if (switchToken) {
1159
+ ({ user: switchUser, extract: switchExtract } = await this.extractToken(
1160
+ switchToken,
1161
+ false,
1162
+ ));
1145
1163
  }
1146
- const { guid, issued, expire } = authExtract;
1147
- const { guid: switchGuid, expire: switchExpire } = switchExtract || {
1148
- guid: null,
1149
- expire: null,
1150
- };
1151
1164
 
1152
- const user = await this.User.factory(guid);
1153
- if (
1154
- user.guid == null ||
1155
- !user.enabled ||
1156
- expire.getTime() <= Date.now() ||
1157
- issued.getTime() > Date.now() ||
1158
- (user.revokeTokenDate != null && issued.getTime() <= user.revokeTokenDate)
1159
- ) {
1165
+ if (user == null) {
1160
1166
  await this.logout();
1161
1167
  return false;
1162
1168
  }
1163
1169
 
1164
- if (switchGuid && switchExpire && switchExpire.getTime() > Date.now()) {
1165
- // Load the switch user.
1166
- const switchUser = await this.User.factory(switchGuid);
1167
- if (switchUser.guid == null) {
1170
+ if (switchToken) {
1171
+ if (switchUser == null) {
1168
1172
  await this.logoutSwitch();
1169
1173
  } else {
1170
1174
  await this.fillSession(switchUser);
@@ -1179,7 +1183,8 @@ export default class Tilmeld implements TilmeldInterface {
1179
1183
 
1180
1184
  if (
1181
1185
  !skipRenew &&
1182
- expire.getTime() < Date.now() + this.config.jwtRenew * 1000
1186
+ authExtract &&
1187
+ authExtract.expire.getTime() < Date.now() + this.config.jwtRenew * 1000
1183
1188
  ) {
1184
1189
  // If the user is less than renew time from needing a new token, give them
1185
1190
  // a new one.
package/src/User.ts CHANGED
@@ -586,6 +586,13 @@ export class User extends AbleObject<UserData> {
586
586
  throw new AccessControlError('Domain support is not enabled.');
587
587
  }
588
588
 
589
+ if (
590
+ options?.sort != null &&
591
+ User.searchRestrictedData.includes(options.sort)
592
+ ) {
593
+ throw new AccessControlError("Can't sort by that property.");
594
+ }
595
+
589
596
  if (!domain) {
590
597
  throw new BadDataError('Domain is required.');
591
598
  }
@@ -603,7 +610,7 @@ export class User extends AbleObject<UserData> {
603
610
 
604
611
  return await this.nymph.getEntities(
605
612
  {
606
- class: this.nymph.getEntityClass(User),
613
+ class: User,
607
614
  ...(options?.limit != null ? { limit: options.limit } : {}),
608
615
  ...(options?.offset != null ? { offset: options.offset } : {}),
609
616
  ...(options?.sort != null ? { sort: options.sort } : {}),