@tmscloud/tbt-knex 0.0.7 → 0.0.9

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.
@@ -72,6 +72,11 @@ export declare class DutyDAO implements IBaseDAO<IDuty> {
72
72
  * Cancel a duty (single atomic update to avoid TOCTOU race)
73
73
  */
74
74
  cancelDuty(id: number): Promise<IDuty | null>;
75
+ /**
76
+ * Restart a completed or cancelled duty back to pending.
77
+ * Clears tracking data and deletes item progress records.
78
+ */
79
+ restartDuty(id: number): Promise<IDuty | null>;
75
80
  /**
76
81
  * Start a duty and create item progress records in a single transaction.
77
82
  */
@@ -359,6 +359,33 @@ class DutyDAO {
359
359
  return result ? this.getById(result.id) : null;
360
360
  });
361
361
  }
362
+ /**
363
+ * Restart a completed or cancelled duty back to pending.
364
+ * Clears tracking data and deletes item progress records.
365
+ */
366
+ restartDuty(id) {
367
+ return __awaiter(this, void 0, void 0, function* () {
368
+ return this.knex.transaction((trx) => __awaiter(this, void 0, void 0, function* () {
369
+ const [result] = yield trx("duties")
370
+ .where("id", id)
371
+ .whereIn("status", ["completed", "cancelled", "in_progress"])
372
+ .update({
373
+ status: "pending",
374
+ actual_start: null,
375
+ actual_end: null,
376
+ tracking_session_id: null,
377
+ tracking_status: "none",
378
+ updated_at: new Date(),
379
+ })
380
+ .returning("*");
381
+ if (!result)
382
+ return null;
383
+ // Delete existing item progress so startDuty can recreate them
384
+ yield trx("duty_item_progress").where("duty_id", id).del();
385
+ return this.getById(result.id);
386
+ }));
387
+ });
388
+ }
362
389
  /**
363
390
  * Start a duty and create item progress records in a single transaction.
364
391
  */
@@ -1 +1 @@
1
- {"version":3,"file":"duty.dao.js","sourceRoot":"","sources":["../../../src/dao/duty/duty.dao.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,0EAA+C;AAS/C,MAAa,OAAO;IAGlB,IAAY,IAAI;QACd,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,wBAAW,CAAC,aAAa,EAAE,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,IAAS;;QAC7B,IAAI,IAAI,CAAC,aAAa,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACjE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACjD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,CAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,IAAI,KAAI,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACvD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,IAAI,KAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClE,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,SAAS;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;aAC5B,QAAQ,CAAC,sBAAsB,EAAE,oBAAoB,EAAE,OAAO,CAAC;aAC/D,QAAQ,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,CAAC;aAC7C,QAAQ,CAAC,YAAY,EAAE,WAAW,EAAE,MAAM,CAAC;aAC3C,QAAQ,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC;aAC7C,QAAQ,CAAC,qBAAqB,EAAE,eAAe,EAAE,eAAe,CAAC;aACjE,QAAQ,CAAC,aAAa,EAAE,oBAAoB,EAAE,OAAO,CAAC;aACtD,MAAM,CACL,KAAK,EACL,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iCAAiC,CAAC,EAChD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,EACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;kBAUJ,CAAC,EACX,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;oCAUc,CAAC,CAC9B,CAAC;IACN,CAAC;IAED;;OAEG;IACG,MAAM;6DACV,OAAe,CAAC,EAChB,QAAgB,EAAE;YAElB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,KAAK,CAAC;iBACZ,MAAM,CAAC,MAAM,CAAC;iBACd,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAElE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAC/C,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;iBACxB,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,EAAE,CAAC;YAEX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;YAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC7E,CAAC;KAAA;IAED;;OAEG;IACG,OAAO,CAAC,EAAU;;YACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBAClC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;iBACjB,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,EAAE,CAAC;YAEX,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CAAC,IAAY;;YAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBAClC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;iBACrB,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,EAAE,CAAC;YAEX,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,CAAC;KAAA;IAED;;OAEG;IACG,WAAW;6DACf,MAAc,EACd,OAAe,CAAC,EAChB,QAAgB,EAAE;YAElB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,KAAK,CAAC;iBACZ,MAAM,CAAC,MAAM,CAAC;iBACd,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAElE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAC/C,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC;iBACxB,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;iBACxB,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,EAAE,CAAC;YAEX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;YAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC7E,CAAC;KAAA;IAED;;OAEG;IACG,YAAY;6DAChB,OAAe,EACf,OAAe,CAAC,EAChB,QAAgB,EAAE;YAElB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC;iBAC5B,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,KAAK,CAAC;iBACZ,MAAM,CAAC,MAAM,CAAC;iBACd,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAElE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAC/C,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC;iBAC1B,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;iBACxB,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,EAAE,CAAC;YAEX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;YAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC7E,CAAC;KAAA;IAED;;OAEG;IACG,iBAAiB,CAAC,MAAc;;YACpC,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAErD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC;iBACjC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;iBAC/C,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YAEjC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,CAAC;KAAA;IAED;;OAEG;IACG,gBAAgB,CAAC,MAAc;;YACnC,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAErD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC;iBAC3B,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAElC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,CAAC;KAAA;IAED;;OAEG;IACG,WAAW;6DACf,MAAc,EACd,OAAe,CAAC,EAChB,QAAgB,EAAE;YAElB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC;iBACzB,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,KAAK,CAAC;iBACZ,MAAM,CAAC,MAAM,CAAC;iBACd,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAElE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAC/C,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;iBACvB,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;iBACxB,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,EAAE,CAAC;YAEX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;YAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC7E,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,IAAiB;;YAC5B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,MAAM,CAAC;gBACN,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;gBACrC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;gBACzB,MAAM,EAAE,SAAS;gBACjB,eAAe,EAAE,MAAM;aACxB,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAmB,CAAC;QACnD,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,EAAU,EAAE,IAAiB;;YACxC,MAAM,UAAU,GAAQ,EAAE,CAAC;YAE3B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;gBAAE,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACxE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC/D,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;gBACjC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9C,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;gBAAE,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC3E,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;gBACxC,UAAU,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC5D,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS;gBACpC,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;YACpD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;gBAAE,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAC5D,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;gBAAE,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAExE,UAAU,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;YAEnC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,MAAM,CAAC,UAAU,CAAC;iBAClB,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,EAAU;;YACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC;gBAC9D,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC,CAAC;YAEH,OAAO,MAAM,GAAG,CAAC,CAAC;QACpB,CAAC;KAAA;IAED;;OAEG;IACG,oBAAoB,CACxB,EAAU,EACV,cAAgE;;YAEhE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,MAAM,CAAC;gBACN,eAAe,EAAE,cAAc;gBAC/B,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CACb,EAAU,EACV,iBAA0B,EAC1B,GAAsB;;YAEtB,MAAM,EAAE,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;YAC5B,MAAM,UAAU,GAAQ;gBACtB,MAAM,EAAE,aAAa;gBACrB,YAAY,EAAE,IAAI,IAAI,EAAE;gBACxB,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC;YAEF,IAAI,iBAAiB,EAAE,CAAC;gBACtB,UAAU,CAAC,mBAAmB,GAAG,iBAAiB,CAAC;gBACnD,UAAU,CAAC,eAAe,GAAG,UAAU,CAAC;YAC1C,CAAC;YAED,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC;iBAChC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC;iBAC1B,MAAM,CAAC,UAAU,CAAC;iBAClB,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,YAAY,CAAC,EAAU;;YAC3B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,KAAK,CAAC,QAAQ,EAAE,aAAa,CAAC;iBAC9B,MAAM,CAAC;gBACN,MAAM,EAAE,WAAW;gBACnB,UAAU,EAAE,IAAI,IAAI,EAAE;gBACtB,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,UAAU,CAAC,EAAU;;YACzB,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,MAAM,CAAC;gBACN,MAAM,EAAE,WAAW;gBACnB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CACvB,iEAAiE,CAClE;gBACD,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,kBAAkB,CACtB,MAAc,EACd,iBAAqC,EACrC,KAAyD;;YAEzD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAO,GAAG,EAAE,EAAE;gBACzC,MAAM,UAAU,GAAQ;oBACtB,MAAM,EAAE,aAAa;oBACrB,YAAY,EAAE,IAAI,IAAI,EAAE;oBACxB,UAAU,EAAE,IAAI,IAAI,EAAE;iBACvB,CAAC;gBACF,IAAI,iBAAiB,EAAE,CAAC;oBACtB,UAAU,CAAC,mBAAmB,GAAG,iBAAiB,CAAC;oBACnD,UAAU,CAAC,eAAe,GAAG,UAAU,CAAC;gBAC1C,CAAC;gBAED,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC;qBACjC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;qBACnB,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC;qBAC1B,MAAM,CAAC,UAAU,CAAC;qBAClB,SAAS,CAAC,GAAG,CAAC,CAAC;gBAElB,IAAI,CAAC,MAAM;oBAAE,OAAO,IAAI,CAAC;gBAEzB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACnC,OAAO,EAAE,MAAM;wBACf,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;wBACvC,UAAU,EAAE,IAAI,CAAC,UAAU;wBAC3B,MAAM,EAAE,SAAkB;wBAC1B,UAAU,EAAE,CAAC;qBACd,CAAC,CAAC,CAAC;oBACJ,MAAM,GAAG,CAAC,oBAAoB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClD,CAAC;gBAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,gBAAgB,CACpB,cAAsB,EACtB,MAAc,EACd,QAAuB;;YAEvB,sEAAsE;YACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACrC,KAAK,CAAC,kBAAkB,EAAE,cAAc,CAAC;iBACzC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC;iBACxB,KAAK,CAAC,WAAW,EAAE,QAAQ,CAAC;iBAC5B,KAAK,EAAE,CAAC;YAEX,OAAO,CAAC,CAAC,MAAM,CAAC;QAClB,CAAC;KAAA;CACF;AAxcD,0BAwcC"}
1
+ {"version":3,"file":"duty.dao.js","sourceRoot":"","sources":["../../../src/dao/duty/duty.dao.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,0EAA+C;AAS/C,MAAa,OAAO;IAGlB,IAAY,IAAI;QACd,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,wBAAW,CAAC,aAAa,EAAE,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,IAAS;;QAC7B,IAAI,IAAI,CAAC,aAAa,IAAI,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACjE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACjD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC/C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;QACD,IAAI,CAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,IAAI,KAAI,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACvD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,IAAI,KAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClE,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,SAAS;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;aAC5B,QAAQ,CAAC,sBAAsB,EAAE,oBAAoB,EAAE,OAAO,CAAC;aAC/D,QAAQ,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,CAAC;aAC7C,QAAQ,CAAC,YAAY,EAAE,WAAW,EAAE,MAAM,CAAC;aAC3C,QAAQ,CAAC,aAAa,EAAE,WAAW,EAAE,OAAO,CAAC;aAC7C,QAAQ,CAAC,qBAAqB,EAAE,eAAe,EAAE,eAAe,CAAC;aACjE,QAAQ,CAAC,aAAa,EAAE,oBAAoB,EAAE,OAAO,CAAC;aACtD,MAAM,CACL,KAAK,EACL,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iCAAiC,CAAC,EAChD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,EACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;kBAUJ,CAAC,EACX,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;;;;;oCAUc,CAAC,CAC9B,CAAC;IACN,CAAC;IAED;;OAEG;IACG,MAAM;6DACV,OAAe,CAAC,EAChB,QAAgB,EAAE;YAElB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,KAAK,CAAC;iBACZ,MAAM,CAAC,MAAM,CAAC;iBACd,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAElE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAC/C,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;iBACxB,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,EAAE,CAAC;YAEX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;YAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC7E,CAAC;KAAA;IAED;;OAEG;IACG,OAAO,CAAC,EAAU;;YACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBAClC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;iBACjB,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,EAAE,CAAC;YAEX,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CAAC,IAAY;;YAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBAClC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;iBACrB,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,EAAE,CAAC;YAEX,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,CAAC;KAAA;IAED;;OAEG;IACG,WAAW;6DACf,MAAc,EACd,OAAe,CAAC,EAChB,QAAgB,EAAE;YAElB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,KAAK,CAAC;iBACZ,MAAM,CAAC,MAAM,CAAC;iBACd,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAElE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAC/C,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC;iBACxB,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;iBACxB,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,EAAE,CAAC;YAEX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;YAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC7E,CAAC;KAAA;IAED;;OAEG;IACG,YAAY;6DAChB,OAAe,EACf,OAAe,CAAC,EAChB,QAAgB,EAAE;YAElB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC;iBAC5B,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,KAAK,CAAC;iBACZ,MAAM,CAAC,MAAM,CAAC;iBACd,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAElE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAC/C,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC;iBAC1B,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;iBACxB,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,EAAE,CAAC;YAEX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;YAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC7E,CAAC;KAAA;IAED;;OAEG;IACG,iBAAiB,CAAC,MAAc;;YACpC,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAErD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC;iBACjC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;iBAC/C,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YAEjC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,CAAC;KAAA;IAED;;OAEG;IACG,gBAAgB,CAAC,MAAc;;YACnC,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAErD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC;iBAC3B,OAAO,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAElC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,CAAC;KAAA;IAED;;OAEG;IACG,WAAW;6DACf,MAAc,EACd,OAAe,CAAC,EAChB,QAAgB,EAAE;YAElB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;YAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;iBACnC,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC;iBACzB,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC;iBAC1B,KAAK,CAAC,KAAK,CAAC;iBACZ,MAAM,CAAC,MAAM,CAAC;iBACd,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;YAElE,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAC/C,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;iBACvB,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC;iBACxB,KAAK,CAAC,YAAY,CAAC;iBACnB,KAAK,EAAE,CAAC;YAEX,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,KAAK,KAAI,CAAC,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC;YAEjD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC7E,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,IAAiB;;YAC5B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,MAAM,CAAC;gBACN,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;gBACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;gBACrC,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;gBACzB,MAAM,EAAE,SAAS;gBACjB,eAAe,EAAE,MAAM;aACxB,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAmB,CAAC;QACnD,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,EAAU,EAAE,IAAiB;;YACxC,MAAM,UAAU,GAAQ,EAAE,CAAC;YAE3B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;gBAAE,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACxE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC/D,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;gBACjC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YAC9C,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;gBAAE,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;YAC3E,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;gBACxC,UAAU,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;YAC5D,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS;gBACpC,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;YACpD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;gBAAE,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAC5D,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;gBAAE,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAExE,UAAU,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;YAEnC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,MAAM,CAAC,UAAU,CAAC;iBAClB,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,MAAM,CAAC,EAAU;;YACrB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC;gBAC9D,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC,CAAC;YAEH,OAAO,MAAM,GAAG,CAAC,CAAC;QACpB,CAAC;KAAA;IAED;;OAEG;IACG,oBAAoB,CACxB,EAAU,EACV,cAAgE;;YAEhE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,MAAM,CAAC;gBACN,eAAe,EAAE,cAAc;gBAC/B,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,SAAS,CACb,EAAU,EACV,iBAA0B,EAC1B,GAAsB;;YAEtB,MAAM,EAAE,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;YAC5B,MAAM,UAAU,GAAQ;gBACtB,MAAM,EAAE,aAAa;gBACrB,YAAY,EAAE,IAAI,IAAI,EAAE;gBACxB,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC;YAEF,IAAI,iBAAiB,EAAE,CAAC;gBACtB,UAAU,CAAC,mBAAmB,GAAG,iBAAiB,CAAC;gBACnD,UAAU,CAAC,eAAe,GAAG,UAAU,CAAC;YAC1C,CAAC;YAED,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC;iBAChC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC;iBAC1B,MAAM,CAAC,UAAU,CAAC;iBAClB,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,YAAY,CAAC,EAAU;;YAC3B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,KAAK,CAAC,QAAQ,EAAE,aAAa,CAAC;iBAC9B,MAAM,CAAC;gBACN,MAAM,EAAE,WAAW;gBACnB,UAAU,EAAE,IAAI,IAAI,EAAE;gBACtB,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;OAEG;IACG,UAAU,CAAC,EAAU;;YACzB,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACvC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;iBACf,MAAM,CAAC;gBACN,MAAM,EAAE,WAAW;gBACnB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CACvB,iEAAiE,CAClE;gBACD,UAAU,EAAE,IAAI,IAAI,EAAE;aACvB,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjD,CAAC;KAAA;IAED;;;OAGG;IACG,WAAW,CAAC,EAAU;;YAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAO,GAAG,EAAE,EAAE;gBACzC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC;qBACjC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;qBACf,OAAO,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;qBAC5D,MAAM,CAAC;oBACN,MAAM,EAAE,SAAS;oBACjB,YAAY,EAAE,IAAI;oBAClB,UAAU,EAAE,IAAI;oBAChB,mBAAmB,EAAE,IAAI;oBACzB,eAAe,EAAE,MAAM;oBACvB,UAAU,EAAE,IAAI,IAAI,EAAE;iBACvB,CAAC;qBACD,SAAS,CAAC,GAAG,CAAC,CAAC;gBAElB,IAAI,CAAC,MAAM;oBAAE,OAAO,IAAI,CAAC;gBAEzB,+DAA+D;gBAC/D,MAAM,GAAG,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;gBAE3D,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,kBAAkB,CACtB,MAAc,EACd,iBAAqC,EACrC,KAAyD;;YAEzD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAO,GAAG,EAAE,EAAE;gBACzC,MAAM,UAAU,GAAQ;oBACtB,MAAM,EAAE,aAAa;oBACrB,YAAY,EAAE,IAAI,IAAI,EAAE;oBACxB,UAAU,EAAE,IAAI,IAAI,EAAE;iBACvB,CAAC;gBACF,IAAI,iBAAiB,EAAE,CAAC;oBACtB,UAAU,CAAC,mBAAmB,GAAG,iBAAiB,CAAC;oBACnD,UAAU,CAAC,eAAe,GAAG,UAAU,CAAC;gBAC1C,CAAC;gBAED,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC;qBACjC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;qBACnB,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC;qBAC1B,MAAM,CAAC,UAAU,CAAC;qBAClB,SAAS,CAAC,GAAG,CAAC,CAAC;gBAElB,IAAI,CAAC,MAAM;oBAAE,OAAO,IAAI,CAAC;gBAEzB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACnC,OAAO,EAAE,MAAM;wBACf,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;wBACvC,UAAU,EAAE,IAAI,CAAC,UAAU;wBAC3B,MAAM,EAAE,SAAkB;wBAC1B,UAAU,EAAE,CAAC;qBACd,CAAC,CAAC,CAAC;oBACJ,MAAM,GAAG,CAAC,oBAAoB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClD,CAAC;gBAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;OAEG;IACG,gBAAgB,CACpB,cAAsB,EACtB,MAAc,EACd,QAAuB;;YAEvB,sEAAsE;YACtE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;iBACrC,KAAK,CAAC,kBAAkB,EAAE,cAAc,CAAC;iBACzC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC;iBACxB,KAAK,CAAC,WAAW,EAAE,QAAQ,CAAC;iBAC5B,KAAK,EAAE,CAAC;YAEX,OAAO,CAAC,CAAC,MAAM,CAAC;QAClB,CAAC;KAAA;CACF;AApeD,0BAoeC"}
package/dist/index.d.ts CHANGED
@@ -24,6 +24,7 @@ export { IDutyTemplate, IDutyTemplateCreate, IDutyTemplateUpdate, IDutyTemplateW
24
24
  export { IEvent, IEventCreate, IEventUpdate, } from "./interfaces/event/event.interfaces";
25
25
  export { IRole } from "./interfaces/role/role.interfaces";
26
26
  export { IRoute, IRouteInstruction } from "./interfaces/route/route.interfaces";
27
+ export { IRouteGeoJSONProperties, IRouteStopProperties, IRouteWaypointProperties, IRouteSegmentProperties, IRouteMainProperties, IRouteSegmentInstruction, RouteFeatureProperties, IRouteStop, IRouteWaypoint, IRouteSegment, } from "./interfaces/route/route-geojson.interfaces";
27
28
  export { IRouteAssignment } from "./interfaces/route-assignment/route-assignment.interfaces";
28
29
  export { ISundaysPackageVersion } from "./interfaces/sundays-package-version/sundays-package-version.interfaces";
29
30
  export { ISystemSetting, ISystemSettingCreate, ISystemSettingUpdate, } from "./interfaces/system-setting/system-setting.interfaces";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO;AACP,yDAAsD;AAA7C,wGAAA,SAAS,OAAA;AAClB,iFAA8E;AAArE,wHAAA,iBAAiB,OAAA;AAC1B,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,0FAAsF;AAA7E,6HAAA,mBAAmB,OAAA;AAC5B,2EAAwE;AAA/D,oHAAA,eAAe,OAAA;AACxB,kEAA+D;AAAtD,8GAAA,YAAY,OAAA;AACrB,mDAAiD;AAAxC,qGAAA,QAAQ,OAAA;AACjB,8EAA2E;AAAlE,sHAAA,gBAAgB,OAAA;AACzB,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,mDAAiD;AAAxC,qGAAA,QAAQ,OAAA;AACjB,oFAAiF;AAAxE,0HAAA,kBAAkB,OAAA;AAC3B,yGAAqG;AAA5F,uIAAA,wBAAwB,OAAA;AACjC,8EAA2E;AAAlE,sHAAA,gBAAgB,OAAA;AACzB,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,kEAA+D;AAAtD,8GAAA,YAAY,OAAA;AACrB,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAgFhB,sEAA2C;AAClC,sBADF,wBAAW,CACE"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO;AACP,yDAAsD;AAA7C,wGAAA,SAAS,OAAA;AAClB,iFAA8E;AAArE,wHAAA,iBAAiB,OAAA;AAC1B,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,0FAAsF;AAA7E,6HAAA,mBAAmB,OAAA;AAC5B,2EAAwE;AAA/D,oHAAA,eAAe,OAAA;AACxB,kEAA+D;AAAtD,8GAAA,YAAY,OAAA;AACrB,mDAAiD;AAAxC,qGAAA,QAAQ,OAAA;AACjB,8EAA2E;AAAlE,sHAAA,gBAAgB,OAAA;AACzB,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,mDAAiD;AAAxC,qGAAA,QAAQ,OAAA;AACjB,oFAAiF;AAAxE,0HAAA,kBAAkB,OAAA;AAC3B,yGAAqG;AAA5F,uIAAA,wBAAwB,OAAA;AACjC,8EAA2E;AAAlE,sHAAA,gBAAgB,OAAA;AACzB,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,kEAA+D;AAAtD,8GAAA,YAAY,OAAA;AACrB,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AA4FhB,sEAA2C;AAClC,sBADF,wBAAW,CACE"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Properties on the FeatureCollection itself (top-level metadata).
3
+ * Non-standard but already used throughout the codebase.
4
+ */
5
+ export interface IRouteGeoJSONProperties {
6
+ name?: string;
7
+ description?: string;
8
+ stops_count?: number;
9
+ waypoints_count?: number;
10
+ route_type?: string;
11
+ total_distance?: number;
12
+ total_duration?: number;
13
+ }
14
+ /**
15
+ * A bus stop -- primary user-created entity.
16
+ * GeoJSON Feature with geometry.type === 'Point'.
17
+ * Feature.id === crypto.randomUUID()
18
+ */
19
+ export interface IRouteStopProperties {
20
+ feature_type: 'stop';
21
+ name: string;
22
+ address: string;
23
+ stop_sequence: number;
24
+ customInstruction?: string;
25
+ }
26
+ /**
27
+ * A turn/waypoint -- auto-generated from Mapbox routing, optionally pinned by user.
28
+ * GeoJSON Feature with geometry.type === 'Point'.
29
+ * Feature.id === crypto.randomUUID()
30
+ */
31
+ export interface IRouteWaypointProperties {
32
+ feature_type: 'waypoint';
33
+ segment_index: number;
34
+ order_in_segment: number;
35
+ isPinned: boolean;
36
+ customInstruction?: string;
37
+ }
38
+ /**
39
+ * A segment instruction embedded inside a route_segment feature's properties.
40
+ * Each instruction has a geographic point where the maneuver occurs.
41
+ */
42
+ export interface IRouteSegmentInstruction {
43
+ id: string;
44
+ stepIndex: number;
45
+ instruction: string;
46
+ distance: number;
47
+ duration: number;
48
+ maneuverType?: string;
49
+ maneuverModifier?: string;
50
+ point: [number, number];
51
+ linkedWaypointId?: string;
52
+ linkedStopId?: string;
53
+ }
54
+ /**
55
+ * A route segment -- the path between two consecutive stops.
56
+ * GeoJSON Feature with geometry.type === 'LineString'.
57
+ * Feature.id === 'route-segment-{segment_index}'
58
+ */
59
+ export interface IRouteSegmentProperties {
60
+ feature_type: 'route_segment';
61
+ segment_index: number;
62
+ mode: 'normal' | 'offroad';
63
+ from_stop_id: string;
64
+ to_stop_id: string;
65
+ distance: number;
66
+ duration: number;
67
+ instructions: IRouteSegmentInstruction[];
68
+ }
69
+ /**
70
+ * The main combined route line.
71
+ * GeoJSON Feature with geometry.type === 'LineString'.
72
+ * Feature.id === 'route-main'
73
+ */
74
+ export interface IRouteMainProperties {
75
+ feature_type: 'route';
76
+ }
77
+ export type RouteFeatureProperties = IRouteStopProperties | IRouteWaypointProperties | IRouteSegmentProperties | IRouteMainProperties;
78
+ export interface IRouteStop {
79
+ id: string;
80
+ lat: number;
81
+ lng: number;
82
+ name: string;
83
+ address: string;
84
+ stop_sequence: number;
85
+ customInstruction?: string;
86
+ }
87
+ export interface IRouteWaypoint {
88
+ id: string;
89
+ lat: number;
90
+ lng: number;
91
+ segment_index: number;
92
+ order_in_segment: number;
93
+ isPinned: boolean;
94
+ customInstruction?: string;
95
+ }
96
+ export interface IRouteSegment {
97
+ segment_index: number;
98
+ mode: 'normal' | 'offroad';
99
+ from_stop_id: string;
100
+ to_stop_id: string;
101
+ distance: number;
102
+ duration: number;
103
+ instructions: IRouteSegmentInstruction[];
104
+ geometry: GeoJSON.LineString;
105
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // ===== Feature property types =====
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=route-geojson.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route-geojson.interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/route/route-geojson.interfaces.ts"],"names":[],"mappings":";AAAA,qCAAqC"}
@@ -5,6 +5,7 @@ export interface IRoute {
5
5
  name: string;
6
6
  description?: string;
7
7
  geojson: any;
8
+ /** @deprecated Use instructions embedded in GeoJSON route_segment features instead */
8
9
  custom_instructions?: any[];
9
10
  distance?: number;
10
11
  estimated_duration?: number;
@@ -24,4 +25,7 @@ export interface IRouteInstruction {
24
25
  maneuverType?: string;
25
26
  maneuverModifier?: string;
26
27
  geometry?: any;
28
+ point?: [number, number];
29
+ linkedWaypointId?: string;
30
+ linkedStopId?: string;
27
31
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tmscloud/tbt-knex",
3
- "version": "0.0.7",
3
+ "version": "0.0.9",
4
4
  "description": "TBT Database Access Layer",
5
5
  "main": "dist/index.js",
6
6
  "publishConfig": {
@@ -30,6 +30,7 @@
30
30
  "devDependencies": {
31
31
  "@eslint/js": "^9.23.0",
32
32
  "@types/dotenv": "^6.1.1",
33
+ "@types/geojson": "^7946.0.16",
33
34
  "@types/lodash": "^4.17.16",
34
35
  "@types/node": "^22.13.13",
35
36
  "eslint": "^9.23.0",
@@ -1,19 +0,0 @@
1
- import { IPasswordHistory } from "../../interfaces/password-reset/password-reset.interfaces";
2
- export declare class PasswordHistoryDAO {
3
- private _knex?;
4
- private get knex();
5
- /**
6
- * Add password to history
7
- */
8
- create(data: IPasswordHistory): Promise<IPasswordHistory>;
9
- /**
10
- * Get recent password hashes for a user
11
- * Used to prevent password reuse
12
- */
13
- getRecentForUser(userId: number, limit?: number): Promise<IPasswordHistory[]>;
14
- /**
15
- * Cleanup old password history
16
- * Keep only the most recent N passwords per user
17
- */
18
- cleanupOldPasswords(keepCount?: number): Promise<number>;
19
- }
@@ -1,78 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.PasswordHistoryDAO = void 0;
16
- const KnexConnection_1 = __importDefault(require("../../KnexConnection"));
17
- class PasswordHistoryDAO {
18
- get knex() {
19
- if (!this._knex) {
20
- this._knex = KnexConnection_1.default.getConnection();
21
- }
22
- return this._knex;
23
- }
24
- /**
25
- * Add password to history
26
- */
27
- create(data) {
28
- return __awaiter(this, void 0, void 0, function* () {
29
- const [result] = yield this.knex("password_history")
30
- .insert({
31
- user_id: data.user_id,
32
- password_hash: data.password_hash,
33
- })
34
- .returning("*");
35
- return result;
36
- });
37
- }
38
- /**
39
- * Get recent password hashes for a user
40
- * Used to prevent password reuse
41
- */
42
- getRecentForUser(userId_1) {
43
- return __awaiter(this, arguments, void 0, function* (userId, limit = 5) {
44
- return yield this.knex("password_history")
45
- .where("user_id", userId)
46
- .orderBy("created_at", "desc")
47
- .limit(limit);
48
- });
49
- }
50
- /**
51
- * Cleanup old password history
52
- * Keep only the most recent N passwords per user
53
- */
54
- cleanupOldPasswords() {
55
- return __awaiter(this, arguments, void 0, function* (keepCount = 10) {
56
- // Subquery to get IDs to keep
57
- const idsToKeep = this.knex("password_history as ph1")
58
- .select("ph1.id")
59
- .whereRaw(`
60
- ph1.id IN (
61
- SELECT id FROM (
62
- SELECT id FROM password_history ph2
63
- WHERE ph2.user_id = ph1.user_id
64
- ORDER BY created_at DESC
65
- LIMIT ?
66
- ) as recent
67
- )
68
- `, [keepCount]);
69
- // Delete all records not in the keep list
70
- const result = yield this.knex("password_history")
71
- .whereNotIn("id", idsToKeep)
72
- .delete();
73
- return result;
74
- });
75
- }
76
- }
77
- exports.PasswordHistoryDAO = PasswordHistoryDAO;
78
- //# sourceMappingURL=password-history.dao.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"password-history.dao.js","sourceRoot":"","sources":["../../../src/dao/password-history/password-history.dao.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,0EAA+C;AAG/C,MAAa,kBAAkB;IAG7B,IAAY,IAAI;QACd,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,GAAG,wBAAW,CAAC,aAAa,EAAE,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;OAEG;IACG,MAAM,CAAC,IAAsB;;YACjC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;iBACjD,MAAM,CAAC;gBACN,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,aAAa,EAAE,IAAI,CAAC,aAAa;aAClC,CAAC;iBACD,SAAS,CAAC,GAAG,CAAC,CAAC;YAElB,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;IAED;;;OAGG;IACG,gBAAgB;6DACpB,MAAc,EACd,QAAgB,CAAC;YAEjB,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;iBACvC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC;iBACxB,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC;iBAC7B,KAAK,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;KAAA;IAED;;;OAGG;IACG,mBAAmB;6DAAC,YAAoB,EAAE;YAC9C,8BAA8B;YAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC;iBACnD,MAAM,CAAC,QAAQ,CAAC;iBAChB,QAAQ,CAAC;;;;;;;;;OAST,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YAElB,0CAA0C;YAC1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;iBAC/C,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC;iBAC3B,MAAM,EAAE,CAAC;YAEZ,OAAO,MAAM,CAAC;QAChB,CAAC;KAAA;CACF;AAhED,gDAgEC"}