tabletcommand-backend-models 7.4.67 → 7.4.68

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.
@@ -314,6 +314,20 @@ function UserSchema(mongoose) {
314
314
  }, {
315
315
  name: "token_1_tokenExpireAt_1",
316
316
  });
317
+ // IMPORTANT: This hook prepends a $match to EVERY User.aggregate() call.
318
+ // Users with invalid agencyId (null, "", "null", "undefined") are always excluded.
319
+ // If you need to query broken users for admin/audit purposes, use the collection directly:
320
+ // models.User.collection.aggregate([...])
321
+ modelSchema.pre("aggregate", function () {
322
+ this.pipeline().unshift({
323
+ $match: {
324
+ agencyId: {
325
+ $exists: true,
326
+ $nin: [null, "", "null", "undefined"]
327
+ }
328
+ }
329
+ });
330
+ });
317
331
  return modelSchema;
318
332
  }
319
333
  async function UserModule(mongoose) {
@@ -1 +1 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":";;AAcA,gCA6UC;AAED,6BAGC;AAhWD,6BAA6B;AAC7B,wCAIoB;AACpB,kDAAgD;AAChD,oDAAkD;AAClD,wDAAsD;AACtD,uCAAwC;AAKxC,SAAgB,UAAU,CAAC,QAAwB;IACjD,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;IAC5B,MAAM,QAAQ,GAAG,IAAA,mBAAc,EAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAA,oBAAe,EAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,IAAA,sBAAiB,EAAC,QAAQ,CAAC,CAAC;IAEhD,MAAM,aAAa,GAAG,IAAI,MAAM,CAAoB;QAClD,SAAS,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,SAAS,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;KACF,EAAE;QACD,GAAG,EAAE,KAAK;QACV,EAAE,EAAE,KAAK;KACV,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,IAAI,MAAM,CAAW;QACvC,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,IAAI,CAAC,EAAE;SACjB;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,IAAI;SACf;QACD,aAAa,EAAE;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,qBAAW;SACrB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,IAAI;SACX;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;YAC3B,GAAG,EAAE,QAAQ;YACb,OAAO,EAAE,IAAI;SACd;QACD,eAAe,EAAE;YACf,IAAI,EAAE,CAAC,gBAAK,CAAC,QAAQ,CAAC;YACtB,GAAG,EAAE,QAAQ;YACb,OAAO,EAAE,EAAE;SACZ;QACD,MAAM,EAAE;YACN,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,2BAA2B;QAC3B,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,iBAAiB,EAAE;YACjB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,sCAAsC;QACtC,iBAAiB,EAAE;YACjB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI;SACd;QACD,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,iBAAiB;QAEjB,8DAA8D;QAC9D,iEAAiE;QACjE,mBAAmB,EAAE;YACnB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,iBAAiB,EAAE;YACjB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,aAAa,EAAE;YACb,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,uBAAuB,EAAE;YACvB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,qBAAqB,EAAE;YACrB,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI;SACd;QACD,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,MAAM,CAAC;YACd,OAAO,EAAE,EAAE;SACZ;QAED,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,KAAK;SACd;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,KAAK;SACd;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,MAAM,CAAC;YACd,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,wCAAwC;SAChE;QAED,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI;SACd;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,OAAO,EAAE;YACP,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,IAAI;SACd;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC;SACX;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC;SACX;QAED,wDAAwD;QACxD,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,IAAI;SACd;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,IAAI;SACd;QAED,iBAAiB;QACjB,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,aAAa,EAAE;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,qBAAW;SACrB;QAED,uBAAuB;QACvB,kBAAkB,EAAE;YAClB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,mBAAmB,EAAE;YACnB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI;SACd;QAED,kBAAkB,EAAE;YAClB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,oBAAoB,EAAE;YACpB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,2EAA2E;QAC3E,kDAAkD;QAClD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,IAAI;SACd;QACD,eAAe,EAAE;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,IAAI;SACd;QAED,iCAAiC;QACjC,cAAc,EAAE;YACd,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,cAAc,EAAE;YACd,gBAAgB,EAAE;gBAChB,IAAI,EAAE,MAAM;aACb;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,CAAC,MAAM,CAAC;gBACd,OAAO,EAAE,EAAE;aACZ;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,MAAM;aACb;SACF;QACD,aAAa,EAAE;YACb,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,aAAa,EAAE;YACb,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,yBAAyB,EAAE;YACzB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,iDAAiD;QACjD,aAAa,EAAE;YACb,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,YAAY;SACtB;QAED,0BAA0B,EAAE;YAC1B,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;KACF,EAAE;QACD,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,KAAK;SAClB;KACF,CAAC,CAAC;IAEH,yBAAyB;IACzB,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,YAAY,EAAE,CAAC;KAChB,EAAE;QACD,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,YAAY,EAAE,CAAC;QACf,KAAK,EAAE,CAAC;KACT,EAAE;QACD,IAAI,EAAE,wBAAwB;KAC/B,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,YAAY,EAAE,CAAC;QACf,OAAO,EAAE,CAAC;KACX,EAAE;QACD,IAAI,EAAE,kCAAkC;QACxC,uBAAuB,EAAE;YACvB,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI;aACd;SACF;KACF,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,KAAK,EAAE,CAAC;KACT,EAAE;QACD,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,IAAI;KACb,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,IAAI,EAAE,CAAC;KACR,EAAE;QACD,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,IAAI;KACb,CAAC,CAAC;IAEH,+CAA+C;IAC/C,WAAW,CAAC,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;KACb,EAAE;QACD,IAAI,EAAE,2FAA2F;QACjG,OAAO,EAAE;YACP,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,CAAC;SACR;QACD,gBAAgB,EAAE,CAAC;QACnB,iBAAiB,EAAE,UAAU;QAC7B,gBAAgB,EAAE,SAAS;KAC5B,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,KAAK,EAAE,CAAC;QACR,aAAa,EAAE,CAAC;KACjB,EAAE;QACD,IAAI,EAAE,yBAAyB;KAChC,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACrB,CAAC;AAEc,KAAK,UAAU,UAAU,CAAC,QAAwB;IAC/D,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,QAAQ,CAAC,KAAK,CAAO,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;AAC1F,CAAC"}
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":";;AAcA,gCA4VC;AAED,6BAGC;AA/WD,6BAA6B;AAC7B,wCAIoB;AACpB,kDAAgD;AAChD,oDAAkD;AAClD,wDAAsD;AACtD,uCAAwC;AAKxC,SAAgB,UAAU,CAAC,QAAwB;IACjD,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;IAC5B,MAAM,QAAQ,GAAG,IAAA,mBAAc,EAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAA,oBAAe,EAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,IAAA,sBAAiB,EAAC,QAAQ,CAAC,CAAC;IAEhD,MAAM,aAAa,GAAG,IAAI,MAAM,CAAoB;QAClD,SAAS,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,SAAS,EAAE;YACT,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;KACF,EAAE;QACD,GAAG,EAAE,KAAK;QACV,EAAE,EAAE,KAAK;KACV,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,IAAI,MAAM,CAAW;QACvC,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,IAAI,CAAC,EAAE;SACjB;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,QAAQ,EAAE,IAAI;SACf;QACD,aAAa,EAAE;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,qBAAW;SACrB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,IAAI;SACX;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;YAC3B,GAAG,EAAE,QAAQ;YACb,OAAO,EAAE,IAAI;SACd;QACD,eAAe,EAAE;YACf,IAAI,EAAE,CAAC,gBAAK,CAAC,QAAQ,CAAC;YACtB,GAAG,EAAE,QAAQ;YACb,OAAO,EAAE,EAAE;SACZ;QACD,MAAM,EAAE;YACN,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,2BAA2B;QAC3B,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,iBAAiB,EAAE;YACjB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,sCAAsC;QACtC,iBAAiB,EAAE;YACjB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI;SACd;QACD,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,iBAAiB;QAEjB,8DAA8D;QAC9D,iEAAiE;QACjE,mBAAmB,EAAE;YACnB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,iBAAiB,EAAE;YACjB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,aAAa,EAAE;YACb,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,uBAAuB,EAAE;YACvB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,qBAAqB,EAAE;YACrB,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI;SACd;QACD,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,MAAM,CAAC;YACd,OAAO,EAAE,EAAE;SACZ;QAED,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,KAAK;SACd;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,KAAK;SACd;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,MAAM,CAAC;YACd,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,wCAAwC;SAChE;QAED,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI;SACd;QACD,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,OAAO,EAAE;YACP,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,IAAI;SACd;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC;SACX;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC;SACX;QAED,wDAAwD;QACxD,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,IAAI;SACd;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,IAAI;SACd;QAED,iBAAiB;QACjB,KAAK,EAAE;YACL,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;SACZ;QACD,aAAa,EAAE;YACb,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,qBAAW;SACrB;QAED,uBAAuB;QACvB,kBAAkB,EAAE;YAClB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,mBAAmB,EAAE;YACnB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,IAAI;SACd;QAED,kBAAkB,EAAE;YAClB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,oBAAoB,EAAE;YACpB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,2EAA2E;QAC3E,kDAAkD;QAClD,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,IAAI;SACd;QACD,eAAe,EAAE;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,IAAI;SACd;QAED,iCAAiC;QACjC,cAAc,EAAE;YACd,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,cAAc,EAAE;YACd,gBAAgB,EAAE;gBAChB,IAAI,EAAE,MAAM;aACb;YACD,aAAa,EAAE;gBACb,IAAI,EAAE,CAAC,MAAM,CAAC;gBACd,OAAO,EAAE,EAAE;aACZ;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,MAAM;aACb;SACF;QACD,aAAa,EAAE;YACb,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,aAAa,EAAE;YACb,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QACD,yBAAyB,EAAE;YACzB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;QAED,iDAAiD;QACjD,aAAa,EAAE;YACb,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,YAAY;SACtB;QAED,0BAA0B,EAAE;YAC1B,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,KAAK;SACf;KACF,EAAE;QACD,SAAS,EAAE,KAAK;QAChB,MAAM,EAAE;YACN,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,KAAK;SAClB;KACF,CAAC,CAAC;IAEH,yBAAyB;IACzB,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,YAAY,EAAE,CAAC;KAChB,EAAE;QACD,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,YAAY,EAAE,CAAC;QACf,KAAK,EAAE,CAAC;KACT,EAAE;QACD,IAAI,EAAE,wBAAwB;KAC/B,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,YAAY,EAAE,CAAC;QACf,OAAO,EAAE,CAAC;KACX,EAAE;QACD,IAAI,EAAE,kCAAkC;QACxC,uBAAuB,EAAE;YACvB,OAAO,EAAE;gBACP,OAAO,EAAE,IAAI;aACd;SACF;KACF,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,KAAK,EAAE,CAAC;KACT,EAAE;QACD,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,IAAI;KACb,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,IAAI,EAAE,CAAC;KACR,EAAE;QACD,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,IAAI;KACb,CAAC,CAAC;IAEH,+CAA+C;IAC/C,WAAW,CAAC,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;KACb,EAAE;QACD,IAAI,EAAE,2FAA2F;QACjG,OAAO,EAAE;YACP,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,CAAC;SACR;QACD,gBAAgB,EAAE,CAAC;QACnB,iBAAiB,EAAE,UAAU;QAC7B,gBAAgB,EAAE,SAAS;KAC5B,CAAC,CAAC;IAEH,WAAW,CAAC,KAAK,CAAC;QAChB,KAAK,EAAE,CAAC;QACR,aAAa,EAAE,CAAC;KACjB,EAAE;QACD,IAAI,EAAE,yBAAyB;KAChC,CAAC,CAAC;IAEH,yEAAyE;IACzE,mFAAmF;IACnF,2FAA2F;IAC3F,4CAA4C;IAC5C,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE;QAC3B,IAAI,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC;YACtB,MAAM,EAAE;gBACN,QAAQ,EAAE;oBACR,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC;iBACtC;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,WAAW,CAAC;AACrB,CAAC;AAEc,KAAK,UAAU,UAAU,CAAC,QAAwB;IAC/D,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,QAAQ,CAAC,KAAK,CAAO,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;AAC1F,CAAC"}
@@ -48,5 +48,21 @@ describe("User", function () {
48
48
  chai_1.assert.equal(item.restrictedCommentsEnabled, true);
49
49
  chai_1.assert.isTrue(sut.canBlockIncidents);
50
50
  });
51
+ it("filters out invalid agencyId in aggregate", async function () {
52
+ const validAgencyId = new mongoose.Types.ObjectId();
53
+ await models.User.collection.insertMany([
54
+ { email: "valid@test.com", nick: "valid", departmentId: "d_aggregate", agencyId: validAgencyId },
55
+ { email: "missing@test.com", nick: "missing", departmentId: "d_aggregate" },
56
+ { email: "null1@test.com", nick: "null1", departmentId: "d_aggregate", agencyId: null },
57
+ { email: "empty@test.com", nick: "empty", departmentId: "d_aggregate", agencyId: "" },
58
+ { email: "null2@test.com", nick: "null2", departmentId: "d_aggregate", agencyId: "null" },
59
+ { email: "undef@test.com", nick: "undef", departmentId: "d_aggregate", agencyId: "undefined" }
60
+ ]);
61
+ const results = await models.User.aggregate([
62
+ { $match: { departmentId: "d_aggregate" } }
63
+ ]);
64
+ chai_1.assert.equal(results.length, 1);
65
+ chai_1.assert.equal(results[0].email, "valid@test.com");
66
+ });
51
67
  });
52
68
  //# sourceMappingURL=user.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/test/user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/test/user.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EAGf,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAqB,MAAM,eAAe,CAAC;AAE5D,MAAM,WAAW,IAAK,SAAQ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAAI;AAEnE,wBAAgB,UAAU,CAAC,QAAQ,EAAE,cAAc;;;;;;;;GA6UlD;AAED,wBAA8B,UAAU,CAAC,QAAQ,EAAE,cAAc;;;;SAGhE;AAED,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,IAAI,CAAC;CAAI"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"AACA,OAAO,EACL,cAAc,EAGf,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAqB,MAAM,eAAe,CAAC;AAE5D,MAAM,WAAW,IAAK,SAAQ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAAI;AAEnE,wBAAgB,UAAU,CAAC,QAAQ,EAAE,cAAc;;;;;;;;GA4VlD;AAED,wBAA8B,UAAU,CAAC,QAAQ,EAAE,cAAc;;;;SAGhE;AAED,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,IAAI,CAAC;CAAI"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tabletcommand-backend-models",
3
- "version": "7.4.67",
3
+ "version": "7.4.68",
4
4
  "description": "Tablet Command Backend Models",
5
5
  "scripts": {
6
6
  "lint": "eslint src",
@@ -277,7 +277,7 @@ export function UserSchema(mongoose: MongooseModule) {
277
277
  });
278
278
 
279
279
  // NO _id on User schema?
280
- modelSchema.virtual("id").get(function(this: MongooseDocument) {
280
+ modelSchema.virtual("id").get(function (this: MongooseDocument) {
281
281
  return this._id.toHexString();
282
282
  });
283
283
 
@@ -344,6 +344,21 @@ export function UserSchema(mongoose: MongooseModule) {
344
344
  name: "token_1_tokenExpireAt_1",
345
345
  });
346
346
 
347
+ // IMPORTANT: This hook prepends a $match to EVERY User.aggregate() call.
348
+ // Users with invalid agencyId (null, "", "null", "undefined") are always excluded.
349
+ // If you need to query broken users for admin/audit purposes, use the collection directly:
350
+ // models.User.collection.aggregate([...])
351
+ modelSchema.pre("aggregate", function (this: any) {
352
+ this.pipeline().unshift({
353
+ $match: {
354
+ agencyId: {
355
+ $exists: true,
356
+ $nin: [null, "", "null", "undefined"]
357
+ }
358
+ }
359
+ });
360
+ });
361
+
347
362
  return modelSchema;
348
363
  }
349
364
 
package/src/test/user.ts CHANGED
@@ -3,10 +3,10 @@ import * as m from "../index";
3
3
  import * as config from "./config";
4
4
  import mockModule from "./mock";
5
5
 
6
- describe("User", function() {
6
+ describe("User", function () {
7
7
  let models: m.BackendModels, mongoose: m.MongooseModule;
8
8
  let testItem: Partial<m.User>;
9
- beforeEach(async function() {
9
+ beforeEach(async function () {
10
10
  const c = await m.connect(config.url);
11
11
  models = c.models;
12
12
  mongoose = c.mongoose;
@@ -16,11 +16,11 @@ describe("User", function() {
16
16
  });
17
17
  testItem = mock.user;
18
18
  });
19
- afterEach(async function() {
19
+ afterEach(async function () {
20
20
  await mongoose.disconnect();
21
21
  });
22
22
 
23
- it("is saved", async function() {
23
+ it("is saved", async function () {
24
24
  const item = new models.User(testItem);
25
25
  const sut = await item.save();
26
26
  assert.isNotNull(sut.uuid);
@@ -49,4 +49,24 @@ describe("User", function() {
49
49
  assert.equal(item.restrictedCommentsEnabled, true);
50
50
  assert.isTrue(sut.canBlockIncidents);
51
51
  });
52
+
53
+ it("filters out invalid agencyId in aggregate", async function () {
54
+ const validAgencyId = new mongoose.Types.ObjectId();
55
+
56
+ await models.User.collection.insertMany([
57
+ { email: "valid@test.com", nick: "valid", departmentId: "d_aggregate", agencyId: validAgencyId },
58
+ { email: "missing@test.com", nick: "missing", departmentId: "d_aggregate" },
59
+ { email: "null1@test.com", nick: "null1", departmentId: "d_aggregate", agencyId: null },
60
+ { email: "empty@test.com", nick: "empty", departmentId: "d_aggregate", agencyId: "" },
61
+ { email: "null2@test.com", nick: "null2", departmentId: "d_aggregate", agencyId: "null" },
62
+ { email: "undef@test.com", nick: "undef", departmentId: "d_aggregate", agencyId: "undefined" }
63
+ ]);
64
+
65
+ const results = await models.User.aggregate([
66
+ { $match: { departmentId: "d_aggregate" } }
67
+ ]);
68
+
69
+ assert.equal(results.length, 1);
70
+ assert.equal(results[0].email, "valid@test.com");
71
+ });
52
72
  });