cmp-aws-database 1.2.0-dev.125 → 1.2.0-dev.127

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.
@@ -1,6 +1,14 @@
1
1
  import { GenericDAO } from "../../../base-dao";
2
2
  import { PaymentModel } from "./payment-model";
3
3
  declare class PaymentDAO extends GenericDAO<PaymentModel> {
4
+ /**
5
+ * Fetches all payment records for a given order using the `orderIndex` GSI.
6
+ * The mapper may return multiple pages; this method aggregates them into one array.
7
+ *
8
+ * @param orderId - Order identifier (hash key on `orderIndex`)
9
+ * @returns All `PaymentModel` rows for that order (may be empty)
10
+ */
11
+ getPaymentByOrderId: (orderId: string) => Promise<PaymentModel[]>;
4
12
  }
5
13
  export declare const paymentDao: PaymentDAO;
6
14
  export {};
@@ -2,7 +2,28 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.paymentDao = void 0;
4
4
  const base_dao_1 = require("../../../base-dao");
5
+ const payment_model_1 = require("./payment-model");
5
6
  class PaymentDAO extends base_dao_1.GenericDAO {
7
+ constructor() {
8
+ super(...arguments);
9
+ /**
10
+ * Fetches all payment records for a given order using the `orderIndex` GSI.
11
+ * The mapper may return multiple pages; this method aggregates them into one array.
12
+ *
13
+ * @param orderId - Order identifier (hash key on `orderIndex`)
14
+ * @returns All `PaymentModel` rows for that order (may be empty)
15
+ */
16
+ this.getPaymentByOrderId = async (orderId) => {
17
+ const payments = [];
18
+ // Query by orderId on the orderIndex secondary index
19
+ const paymentPaginator = base_dao_1.mapper.query(payment_model_1.PaymentModel, { orderId: orderId }, { indexName: "orderIndex" });
20
+ // Drain async iterator (handles pagination under the hood)
21
+ for await (const payment of paymentPaginator) {
22
+ payments.push(payment);
23
+ }
24
+ return payments;
25
+ };
26
+ }
6
27
  }
7
28
  exports.paymentDao = new PaymentDAO();
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1kYW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3VzdG9tZXItdXNlci9vcmRlci1tb2R1bGUvcGF5bWVudC9wYXltZW50LWRhby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnREFBK0M7QUFHL0MsTUFBTSxVQUFXLFNBQVEscUJBQXdCO0NBRWhEO0FBRVksUUFBQSxVQUFVLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdlbmVyaWNEQU8gfSBmcm9tIFwiLi4vLi4vLi4vYmFzZS1kYW9cIjtcbmltcG9ydCB7IFBheW1lbnRNb2RlbCB9IGZyb20gXCIuL3BheW1lbnQtbW9kZWxcIjtcblxuY2xhc3MgUGF5bWVudERBTyBleHRlbmRzIEdlbmVyaWNEQU88UGF5bWVudE1vZGVsPiB7XG5cbn1cblxuZXhwb3J0IGNvbnN0IHBheW1lbnREYW8gPSBuZXcgUGF5bWVudERBTygpOyJdfQ==
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1kYW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3VzdG9tZXItdXNlci9vcmRlci1tb2R1bGUvcGF5bWVudC9wYXltZW50LWRhby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnREFBdUQ7QUFDdkQsbURBQStDO0FBRS9DLE1BQU0sVUFBVyxTQUFRLHFCQUF3QjtJQUFqRDs7UUFFSTs7Ozs7O1dBTUc7UUFDSCx3QkFBbUIsR0FBRyxLQUFLLEVBQUUsT0FBZSxFQUEyQixFQUFFO1lBQ3JFLE1BQU0sUUFBUSxHQUFtQixFQUFFLENBQUM7WUFDcEMscURBQXFEO1lBQ3JELE1BQU0sZ0JBQWdCLEdBQUcsaUJBQU0sQ0FBQyxLQUFLLENBQUMsNEJBQVksRUFBRSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1lBRXZHLDJEQUEyRDtZQUMzRCxJQUFJLEtBQUssRUFBRSxNQUFNLE9BQU8sSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO2dCQUMzQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQXVCLENBQUMsQ0FBQztZQUMzQyxDQUFDO1lBQ0QsT0FBTyxRQUFRLENBQUM7UUFDcEIsQ0FBQyxDQUFBO0lBRUwsQ0FBQztDQUFBO0FBRVksUUFBQSxVQUFVLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdlbmVyaWNEQU8sIG1hcHBlciB9IGZyb20gXCIuLi8uLi8uLi9iYXNlLWRhb1wiO1xuaW1wb3J0IHsgUGF5bWVudE1vZGVsIH0gZnJvbSBcIi4vcGF5bWVudC1tb2RlbFwiO1xuXG5jbGFzcyBQYXltZW50REFPIGV4dGVuZHMgR2VuZXJpY0RBTzxQYXltZW50TW9kZWw+IHtcblxuICAgIC8qKlxuICAgICAqIEZldGNoZXMgYWxsIHBheW1lbnQgcmVjb3JkcyBmb3IgYSBnaXZlbiBvcmRlciB1c2luZyB0aGUgYG9yZGVySW5kZXhgIEdTSS5cbiAgICAgKiBUaGUgbWFwcGVyIG1heSByZXR1cm4gbXVsdGlwbGUgcGFnZXM7IHRoaXMgbWV0aG9kIGFnZ3JlZ2F0ZXMgdGhlbSBpbnRvIG9uZSBhcnJheS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBvcmRlcklkIC0gT3JkZXIgaWRlbnRpZmllciAoaGFzaCBrZXkgb24gYG9yZGVySW5kZXhgKVxuICAgICAqIEByZXR1cm5zIEFsbCBgUGF5bWVudE1vZGVsYCByb3dzIGZvciB0aGF0IG9yZGVyIChtYXkgYmUgZW1wdHkpXG4gICAgICovXG4gICAgZ2V0UGF5bWVudEJ5T3JkZXJJZCA9IGFzeW5jIChvcmRlcklkOiBzdHJpbmcpOiBQcm9taXNlPFBheW1lbnRNb2RlbFtdPiA9PiB7XG4gICAgICAgIGNvbnN0IHBheW1lbnRzOiBQYXltZW50TW9kZWxbXSA9IFtdO1xuICAgICAgICAvLyBRdWVyeSBieSBvcmRlcklkIG9uIHRoZSBvcmRlckluZGV4IHNlY29uZGFyeSBpbmRleFxuICAgICAgICBjb25zdCBwYXltZW50UGFnaW5hdG9yID0gbWFwcGVyLnF1ZXJ5KFBheW1lbnRNb2RlbCwgeyBvcmRlcklkOiBvcmRlcklkIH0sIHsgaW5kZXhOYW1lOiBcIm9yZGVySW5kZXhcIiB9KTtcblxuICAgICAgICAvLyBEcmFpbiBhc3luYyBpdGVyYXRvciAoaGFuZGxlcyBwYWdpbmF0aW9uIHVuZGVyIHRoZSBob29kKVxuICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IHBheW1lbnQgb2YgcGF5bWVudFBhZ2luYXRvcikge1xuICAgICAgICAgICAgcGF5bWVudHMucHVzaChwYXltZW50IGFzIFBheW1lbnRNb2RlbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHBheW1lbnRzO1xuICAgIH1cblxufVxuXG5leHBvcnQgY29uc3QgcGF5bWVudERhbyA9IG5ldyBQYXltZW50REFPKCk7Il19
@@ -1,6 +1,14 @@
1
1
  import { GenericDAO } from "../../../base-dao";
2
2
  import { PlateModel } from "./plate-order-model";
3
3
  declare class PlateOrderDAO extends GenericDAO<PlateModel> {
4
+ /**
5
+ * Fetches all plate (line-item) records for a given order using the `orderIndex` GSI.
6
+ * Results are paginated by the mapper; this method collects every page into a single array.
7
+ *
8
+ * @param orderId - Parent order identifier (hash key on `orderIndex`)
9
+ * @returns All `PlateModel` rows linked to that order
10
+ */
11
+ getPlateOrdersByOrderId: (orderId: string) => Promise<PlateModel[]>;
4
12
  }
5
13
  export declare const plateOrderDAO: PlateOrderDAO;
6
14
  export {};
@@ -2,7 +2,28 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.plateOrderDAO = void 0;
4
4
  const base_dao_1 = require("../../../base-dao");
5
+ const plate_order_model_1 = require("./plate-order-model");
5
6
  class PlateOrderDAO extends base_dao_1.GenericDAO {
7
+ constructor() {
8
+ super(...arguments);
9
+ /**
10
+ * Fetches all plate (line-item) records for a given order using the `orderIndex` GSI.
11
+ * Results are paginated by the mapper; this method collects every page into a single array.
12
+ *
13
+ * @param orderId - Parent order identifier (hash key on `orderIndex`)
14
+ * @returns All `PlateModel` rows linked to that order
15
+ */
16
+ this.getPlateOrdersByOrderId = async (orderId) => {
17
+ const plates = [];
18
+ // Query by orderId on the orderIndex secondary index
19
+ const platePaginator = base_dao_1.mapper.query(plate_order_model_1.PlateModel, { orderId: orderId }, { indexName: "orderIndex" });
20
+ // Drain async iterator (handles pagination under the hood)
21
+ for await (const plate of platePaginator) {
22
+ plates.push(plate);
23
+ }
24
+ return plates;
25
+ };
26
+ }
6
27
  }
7
28
  exports.plateOrderDAO = new PlateOrderDAO();
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhdGVPcmRlckRhby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jdXN0b21lci11c2VyL29yZGVyLW1vZHVsZS9wbGF0ZS1vcmRlci9wbGF0ZU9yZGVyRGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGdEQUErQztBQUcvQyxNQUFNLGFBQWMsU0FBUSxxQkFBc0I7Q0FFakQ7QUFDWSxRQUFBLGFBQWEsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2VuZXJpY0RBTyB9IGZyb20gXCIuLi8uLi8uLi9iYXNlLWRhb1wiO1xuaW1wb3J0IHsgUGxhdGVNb2RlbCB9IGZyb20gXCIuL3BsYXRlLW9yZGVyLW1vZGVsXCI7XG5cbmNsYXNzIFBsYXRlT3JkZXJEQU8gZXh0ZW5kcyBHZW5lcmljREFPPFBsYXRlTW9kZWw+IHtcblxufVxuZXhwb3J0IGNvbnN0IHBsYXRlT3JkZXJEQU8gPSBuZXcgUGxhdGVPcmRlckRBTygpOyJdfQ==
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhdGVPcmRlckRhby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jdXN0b21lci11c2VyL29yZGVyLW1vZHVsZS9wbGF0ZS1vcmRlci9wbGF0ZU9yZGVyRGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGdEQUF1RDtBQUN2RCwyREFBaUQ7QUFFakQsTUFBTSxhQUFjLFNBQVEscUJBQXNCO0lBQWxEOztRQUVJOzs7Ozs7V0FNRztRQUNILDRCQUF1QixHQUFHLEtBQUssRUFBRSxPQUFlLEVBQXlCLEVBQUU7WUFDdkUsTUFBTSxNQUFNLEdBQWlCLEVBQUUsQ0FBQztZQUNoQyxxREFBcUQ7WUFDckQsTUFBTSxjQUFjLEdBQUcsaUJBQU0sQ0FBQyxLQUFLLENBQUMsOEJBQVUsRUFBRSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1lBRW5HLDJEQUEyRDtZQUMzRCxJQUFJLEtBQUssRUFBRSxNQUFNLEtBQUssSUFBSSxjQUFjLEVBQUUsQ0FBQztnQkFDdkMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFtQixDQUFDLENBQUM7WUFDckMsQ0FBQztZQUNELE9BQU8sTUFBTSxDQUFDO1FBQ2xCLENBQUMsQ0FBQTtJQUVMLENBQUM7Q0FBQTtBQUNZLFFBQUEsYUFBYSxHQUFHLElBQUksYUFBYSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZW5lcmljREFPLCBtYXBwZXIgfSBmcm9tIFwiLi4vLi4vLi4vYmFzZS1kYW9cIjtcbmltcG9ydCB7IFBsYXRlTW9kZWwgfSBmcm9tIFwiLi9wbGF0ZS1vcmRlci1tb2RlbFwiO1xuXG5jbGFzcyBQbGF0ZU9yZGVyREFPIGV4dGVuZHMgR2VuZXJpY0RBTzxQbGF0ZU1vZGVsPiB7XG5cbiAgICAvKipcbiAgICAgKiBGZXRjaGVzIGFsbCBwbGF0ZSAobGluZS1pdGVtKSByZWNvcmRzIGZvciBhIGdpdmVuIG9yZGVyIHVzaW5nIHRoZSBgb3JkZXJJbmRleGAgR1NJLlxuICAgICAqIFJlc3VsdHMgYXJlIHBhZ2luYXRlZCBieSB0aGUgbWFwcGVyOyB0aGlzIG1ldGhvZCBjb2xsZWN0cyBldmVyeSBwYWdlIGludG8gYSBzaW5nbGUgYXJyYXkuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gb3JkZXJJZCAtIFBhcmVudCBvcmRlciBpZGVudGlmaWVyIChoYXNoIGtleSBvbiBgb3JkZXJJbmRleGApXG4gICAgICogQHJldHVybnMgQWxsIGBQbGF0ZU1vZGVsYCByb3dzIGxpbmtlZCB0byB0aGF0IG9yZGVyXG4gICAgICovXG4gICAgZ2V0UGxhdGVPcmRlcnNCeU9yZGVySWQgPSBhc3luYyAob3JkZXJJZDogc3RyaW5nKTogUHJvbWlzZTxQbGF0ZU1vZGVsW10+ID0+IHtcbiAgICAgICAgY29uc3QgcGxhdGVzOiBQbGF0ZU1vZGVsW10gPSBbXTtcbiAgICAgICAgLy8gUXVlcnkgYnkgb3JkZXJJZCBvbiB0aGUgb3JkZXJJbmRleCBzZWNvbmRhcnkgaW5kZXhcbiAgICAgICAgY29uc3QgcGxhdGVQYWdpbmF0b3IgPSBtYXBwZXIucXVlcnkoUGxhdGVNb2RlbCwgeyBvcmRlcklkOiBvcmRlcklkIH0sIHsgaW5kZXhOYW1lOiBcIm9yZGVySW5kZXhcIiB9KTtcblxuICAgICAgICAvLyBEcmFpbiBhc3luYyBpdGVyYXRvciAoaGFuZGxlcyBwYWdpbmF0aW9uIHVuZGVyIHRoZSBob29kKVxuICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IHBsYXRlIG9mIHBsYXRlUGFnaW5hdG9yKSB7XG4gICAgICAgICAgICBwbGF0ZXMucHVzaChwbGF0ZSBhcyBQbGF0ZU1vZGVsKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcGxhdGVzO1xuICAgIH1cblxufVxuZXhwb3J0IGNvbnN0IHBsYXRlT3JkZXJEQU8gPSBuZXcgUGxhdGVPcmRlckRBTygpOyJdfQ==
@@ -7,7 +7,7 @@ export declare class TierRefererModel extends BaseModel {
7
7
  status: string;
8
8
  sendedAmount: number;
9
9
  appliedCode: string;
10
- statusLog: Record<string, Date>;
10
+ statusLog: Record<string, string>;
11
11
  signUpReward: number;
12
12
  firstOrderReward: number;
13
13
  inviteOrigin: string;
@@ -66,4 +66,4 @@ __decorate([
66
66
  exports.TierRefererModel = TierRefererModel = __decorate([
67
67
  (0, annotations_1.table)("TierReferralTable")
68
68
  ], TierRefererModel);
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGllci1yZWZlcnJhbC1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jdXN0b21lci11c2VyL3RpZXItcmVmZXJyYWwvdGllci1yZWZlcnJhbC1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSx1REFBK0U7QUFDL0UsaURBQTZDO0FBR3RDLElBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWlCLFNBQVEsc0JBQVM7Q0FvQzlDLENBQUE7QUFwQ1ksNENBQWdCO0FBRXpCO0lBREMsSUFBQSxrQ0FBb0IsRUFBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQzs7d0RBQ2xCO0FBR3ZCO0lBREMsSUFBQSx1QkFBUyxFQUFDLEVBQUUsc0JBQXNCLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDOztnREFDbEU7QUFHZjtJQURDLElBQUEsdUJBQVMsR0FBRTs7c0RBQ1U7QUFHdEI7SUFEQyxJQUFBLHVCQUFTLEVBQUMsRUFBRSxzQkFBc0IsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUM7O2dEQUNsRTtBQUdmO0lBREMsSUFBQSx1QkFBUyxHQUFFOztnREFDRztBQUdmO0lBREMsSUFBQSx1QkFBUyxHQUFFOztzREFDUztBQUdyQjtJQURDLElBQUEsdUJBQVMsRUFBQyxFQUFFLHNCQUFzQixFQUFFLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDOztxREFDbEU7QUFHcEI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O21EQUNtQjtBQUcvQjtJQURDLElBQUEsdUJBQVMsR0FBRTs7c0RBQ1M7QUFHckI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7OzBEQUNhO0FBR3pCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztzREFDUztBQUdyQjtJQURDLElBQUEsdUJBQVMsR0FBRTs7d0RBQ1c7MkJBbkNkLGdCQUFnQjtJQUQ1QixJQUFBLG1CQUFLLEVBQUMsbUJBQW1CLENBQUM7R0FDZCxnQkFBZ0IsQ0FvQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXR0cmlidXRlLCBhdXRvR2VuZXJhdGVkSGFzaEtleSwgdGFibGUgfSBmcm9tIFwiQG5vdmEtb2RtL2Fubm90YXRpb25zXCI7XG5pbXBvcnQgeyBCYXNlTW9kZWwgfSBmcm9tIFwiLi4vLi4vYmFzZS1tb2RlbFwiO1xuXG5AdGFibGUoXCJUaWVyUmVmZXJyYWxUYWJsZVwiKVxuZXhwb3J0IGNsYXNzIFRpZXJSZWZlcmVyTW9kZWwgZXh0ZW5kcyBCYXNlTW9kZWwge1xuICAgIEBhdXRvR2VuZXJhdGVkSGFzaEtleSh7IHR5cGU6ICdTdHJpbmcnIH0pXG4gICAgdGllclJlZmVycmFsSWQ6IHN0cmluZztcblxuICAgIEBhdHRyaWJ1dGUoeyBpbmRleEtleUNvbmZpZ3VyYXRpb25zOiB7IFwidXNlcklkSW5kZXhcIjogXCJIQVNIXCIgfSwgdHlwZTogJ1N0cmluZycgfSlcbiAgICB1c2VySWQ6IHN0cmluZztcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHJlZmVycmFsTmFtZT86IHN0cmluZztcblxuICAgIEBhdHRyaWJ1dGUoeyBpbmRleEtleUNvbmZpZ3VyYXRpb25zOiB7IFwic2VudFRvSW5kZXhcIjogXCJIQVNIXCIgfSwgdHlwZTogJ1N0cmluZycgfSlcbiAgICBzZW50VG86IHN0cmluZzsgLy8gTW9iaWxlIE51bWJlclxuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgc3RhdHVzOiBzdHJpbmc7IC8vIFJFUVVFU1RFRCwgSk9JTkVELCBFQVJORURcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHNlbmRlZEFtb3VudDogbnVtYmVyOyAvLyBWMiBVcGRhdGUgdG8gcGFzcyBhY3R1YWwgc2VudCBhbW91bnQgZm9yIHNpZ25VcCtvcmRlcnZhbHVlIDEwJVxuXG4gICAgQGF0dHJpYnV0ZSh7IGluZGV4S2V5Q29uZmlndXJhdGlvbnM6IHsgXCJhcHBsaWVkQ29kZUluZGV4XCI6IFwiSEFTSFwiIH0sIHR5cGU6ICdTdHJpbmcnIH0pXG4gICAgYXBwbGllZENvZGU6IHN0cmluZzsgLy8gQXBwbGllZCBDb2RlXG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBzdGF0dXNMb2c6IFJlY29yZDxzdHJpbmcsIERhdGU+XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBzaWduVXBSZXdhcmQ6IG51bWJlcjtcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGZpcnN0T3JkZXJSZXdhcmQ6IG51bWJlcjtcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGludml0ZU9yaWdpbjogc3RyaW5nO1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgbGFzdE5vdGlmaWVkQXQ6IHN0cmluZztcbn0iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGllci1yZWZlcnJhbC1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jdXN0b21lci11c2VyL3RpZXItcmVmZXJyYWwvdGllci1yZWZlcnJhbC1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSx1REFBK0U7QUFDL0UsaURBQTZDO0FBR3RDLElBQU0sZ0JBQWdCLEdBQXRCLE1BQU0sZ0JBQWlCLFNBQVEsc0JBQVM7Q0FvQzlDLENBQUE7QUFwQ1ksNENBQWdCO0FBRXpCO0lBREMsSUFBQSxrQ0FBb0IsRUFBQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQzs7d0RBQ2xCO0FBR3ZCO0lBREMsSUFBQSx1QkFBUyxFQUFDLEVBQUUsc0JBQXNCLEVBQUUsRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDOztnREFDbEU7QUFHZjtJQURDLElBQUEsdUJBQVMsR0FBRTs7c0RBQ1U7QUFHdEI7SUFEQyxJQUFBLHVCQUFTLEVBQUMsRUFBRSxzQkFBc0IsRUFBRSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLENBQUM7O2dEQUNsRTtBQUdmO0lBREMsSUFBQSx1QkFBUyxHQUFFOztnREFDRztBQUdmO0lBREMsSUFBQSx1QkFBUyxHQUFFOztzREFDUztBQUdyQjtJQURDLElBQUEsdUJBQVMsRUFBQyxFQUFFLHNCQUFzQixFQUFFLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDOztxREFDbEU7QUFHcEI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O21EQUNxQjtBQUdqQztJQURDLElBQUEsdUJBQVMsR0FBRTs7c0RBQ1M7QUFHckI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7OzBEQUNhO0FBR3pCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztzREFDUztBQUdyQjtJQURDLElBQUEsdUJBQVMsR0FBRTs7d0RBQ1c7MkJBbkNkLGdCQUFnQjtJQUQ1QixJQUFBLG1CQUFLLEVBQUMsbUJBQW1CLENBQUM7R0FDZCxnQkFBZ0IsQ0FvQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXR0cmlidXRlLCBhdXRvR2VuZXJhdGVkSGFzaEtleSwgdGFibGUgfSBmcm9tIFwiQG5vdmEtb2RtL2Fubm90YXRpb25zXCI7XG5pbXBvcnQgeyBCYXNlTW9kZWwgfSBmcm9tIFwiLi4vLi4vYmFzZS1tb2RlbFwiO1xuXG5AdGFibGUoXCJUaWVyUmVmZXJyYWxUYWJsZVwiKVxuZXhwb3J0IGNsYXNzIFRpZXJSZWZlcmVyTW9kZWwgZXh0ZW5kcyBCYXNlTW9kZWwge1xuICAgIEBhdXRvR2VuZXJhdGVkSGFzaEtleSh7IHR5cGU6ICdTdHJpbmcnIH0pXG4gICAgdGllclJlZmVycmFsSWQ6IHN0cmluZztcblxuICAgIEBhdHRyaWJ1dGUoeyBpbmRleEtleUNvbmZpZ3VyYXRpb25zOiB7IFwidXNlcklkSW5kZXhcIjogXCJIQVNIXCIgfSwgdHlwZTogJ1N0cmluZycgfSlcbiAgICB1c2VySWQ6IHN0cmluZztcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHJlZmVycmFsTmFtZT86IHN0cmluZztcblxuICAgIEBhdHRyaWJ1dGUoeyBpbmRleEtleUNvbmZpZ3VyYXRpb25zOiB7IFwic2VudFRvSW5kZXhcIjogXCJIQVNIXCIgfSwgdHlwZTogJ1N0cmluZycgfSlcbiAgICBzZW50VG86IHN0cmluZzsgLy8gTW9iaWxlIE51bWJlclxuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgc3RhdHVzOiBzdHJpbmc7IC8vIFJFUVVFU1RFRCwgSk9JTkVELCBFQVJORURcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHNlbmRlZEFtb3VudDogbnVtYmVyOyAvLyBWMiBVcGRhdGUgdG8gcGFzcyBhY3R1YWwgc2VudCBhbW91bnQgZm9yIHNpZ25VcCtvcmRlcnZhbHVlIDEwJVxuXG4gICAgQGF0dHJpYnV0ZSh7IGluZGV4S2V5Q29uZmlndXJhdGlvbnM6IHsgXCJhcHBsaWVkQ29kZUluZGV4XCI6IFwiSEFTSFwiIH0sIHR5cGU6ICdTdHJpbmcnIH0pXG4gICAgYXBwbGllZENvZGU6IHN0cmluZzsgLy8gQXBwbGllZCBDb2RlXG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBzdGF0dXNMb2c6IFJlY29yZDxzdHJpbmcsIHN0cmluZz5cblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHNpZ25VcFJld2FyZDogbnVtYmVyO1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgZmlyc3RPcmRlclJld2FyZDogbnVtYmVyO1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaW52aXRlT3JpZ2luOiBzdHJpbmc7XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBsYXN0Tm90aWZpZWRBdDogc3RyaW5nO1xufSJdfQ==
@@ -9,11 +9,14 @@ declare class UserDAO extends GenericDAO<UserModel> {
9
9
  */
10
10
  getById: (userId: string) => Promise<UserModel>;
11
11
  /**
12
- * Returns true if user was created within the last 7 days, false otherwise.
13
- * @param userId User ID
14
- * @returns true if created_time is within 7 days of now, else false
12
+ * Returns true if user was created within the given days of now, false otherwise.
13
+ * If createdTime is passed – no DB call. If not – fetches user by userId and uses created_time.
14
+ * @param userId User ID (used to fetch user when createdTime is not provided)
15
+ * @param days Number of days to treat as "new user" window
16
+ * @param createdTime Optional; if provided, no DB fetch is done
17
+ * @returns true if within window, else false
15
18
  */
16
- isNewUser: (userId: string) => Promise<boolean>;
19
+ isNewUser: (userId: string, days: number, createdTime?: number) => Promise<boolean>;
17
20
  }
18
21
  export declare const userDAO: UserDAO;
19
22
  export {};
@@ -17,15 +17,24 @@ class UserDAO extends base_dao_1.GenericDAO {
17
17
  return this.get(user);
18
18
  };
19
19
  /**
20
- * Returns true if user was created within the last 7 days, false otherwise.
21
- * @param userId User ID
22
- * @returns true if created_time is within 7 days of now, else false
20
+ * Returns true if user was created within the given days of now, false otherwise.
21
+ * If createdTime is passed – no DB call. If not – fetches user by userId and uses created_time.
22
+ * @param userId User ID (used to fetch user when createdTime is not provided)
23
+ * @param days Number of days to treat as "new user" window
24
+ * @param createdTime Optional; if provided, no DB fetch is done
25
+ * @returns true if within window, else false
23
26
  */
24
- this.isNewUser = async (userId) => {
25
- const user = await this.getById(userId);
26
- const createdTime = user.created_time ? new Date(user.created_time).getTime() : Date.now();
27
- const sevenDaysMs = 7 * 24 * 60 * 60 * 1000;
28
- return Date.now() - createdTime <= sevenDaysMs;
27
+ this.isNewUser = async (userId, days, createdTime) => {
28
+ let createdMs;
29
+ if (createdTime != null) {
30
+ createdMs = createdTime;
31
+ }
32
+ else {
33
+ const user = await this.getById(userId);
34
+ createdMs = user.created_time ? new Date(user.created_time).getTime() : Date.now();
35
+ }
36
+ const windowMs = days * 24 * 60 * 60 * 1000;
37
+ return Date.now() - createdMs <= windowMs;
29
38
  };
30
39
  }
31
40
  async checkEmailExists(email) {
@@ -40,4 +49,4 @@ class UserDAO extends base_dao_1.GenericDAO {
40
49
  }
41
50
  }
42
51
  exports.userDAO = new UserDAO();
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1kYW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY3VzdG9tZXItdXNlci91c2VyL3VzZXItZGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFvRDtBQUVwRCw2Q0FBeUM7QUFJekMsTUFBTSxPQUFRLFNBQVEscUJBQXFCO0lBQTNDOztRQWVJOzs7O1dBSUc7UUFDSCxZQUFPLEdBQUcsS0FBSyxFQUFFLE1BQWMsRUFBc0IsRUFBRTtZQUNuRCxNQUFNLElBQUksR0FBRyxJQUFJLHNCQUFTLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUNyQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsQ0FBQyxDQUFDO1FBRUY7Ozs7V0FJRztRQUNILGNBQVMsR0FBRyxLQUFLLEVBQUUsTUFBYyxFQUFvQixFQUFFO1lBQ25ELE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN4QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUMzRixNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDO1lBQzVDLE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLFdBQVcsSUFBSSxXQUFXLENBQUM7UUFDbkQsQ0FBQyxDQUFDO0lBQ04sQ0FBQztJQW5DRyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsS0FBYTtRQUNoQyxNQUFNLEtBQUssR0FBRyxpQkFBTSxDQUFDLEtBQUssQ0FBQyxzQkFBUyxFQUFFLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUE7UUFDdEYsTUFBTSxRQUFRLEdBQWdCLEVBQUUsQ0FBQztRQUVqQyxJQUFJLEtBQUssRUFBRSxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUM3QixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLENBQUM7UUFFRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdEIsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7UUFDdEQsQ0FBQztJQUNMLENBQUM7Q0F3Qko7QUFFWSxRQUFBLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2VuZXJpY0RBTywgbWFwcGVyIH0gZnJvbSBcIi4uLy4uL2Jhc2UtZGFvXCI7XG5pbXBvcnQgeyBPcmRlck1vZGVsIH0gZnJvbSBcIi4uL29yZGVyLW1vZHVsZS9vcmRlci9vcmRlci1tb2RlbFwiO1xuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSBcIi4vdXNlci1tb2RlbFwiO1xuXG5cblxuY2xhc3MgVXNlckRBTyBleHRlbmRzIEdlbmVyaWNEQU88VXNlck1vZGVsPiB7XG5cbiAgICBhc3luYyBjaGVja0VtYWlsRXhpc3RzKGVtYWlsOiBTdHJpbmcpIHtcbiAgICAgICAgY29uc3QgSXRlbXMgPSBtYXBwZXIucXVlcnkoVXNlck1vZGVsLCB7IGVtYWlsSWQ6IGVtYWlsIH0sIHsgaW5kZXhOYW1lOiAnZW1haWxJbmRleCcgfSlcbiAgICAgICAgY29uc3QgYWxsSXRlbXM6IFVzZXJNb2RlbFtdID0gW107XG5cbiAgICAgICAgZm9yIGF3YWl0IChjb25zdCBpdGVtIG9mIEl0ZW1zKSB7XG4gICAgICAgICAgICBhbGxJdGVtcy5wdXNoKGl0ZW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFsbEl0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRocm93IChuZXcgRXJyb3IoYCR7ZW1haWx9OkVtYWlsIGFscmVhZHkgVGFrZW5gKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXQgVXNlciBieSBVc2VyIElEXG4gICAgICogQHBhcmFtIHVzZXJJZCBVc2VyIElEXG4gICAgICogQHJldHVybnMgVXNlciBNb2RlbFxuICAgICAqL1xuICAgIGdldEJ5SWQgPSBhc3luYyAodXNlcklkOiBzdHJpbmcpOiBQcm9taXNlPFVzZXJNb2RlbD4gPT4ge1xuICAgICAgICBjb25zdCB1c2VyID0gbmV3IFVzZXJNb2RlbCgpO1xuICAgICAgICB1c2VyLnVzZXJJZCA9IHVzZXJJZDtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0KHVzZXIpO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRydWUgaWYgdXNlciB3YXMgY3JlYXRlZCB3aXRoaW4gdGhlIGxhc3QgNyBkYXlzLCBmYWxzZSBvdGhlcndpc2UuXG4gICAgICogQHBhcmFtIHVzZXJJZCBVc2VyIElEXG4gICAgICogQHJldHVybnMgdHJ1ZSBpZiBjcmVhdGVkX3RpbWUgaXMgd2l0aGluIDcgZGF5cyBvZiBub3csIGVsc2UgZmFsc2VcbiAgICAgKi9cbiAgICBpc05ld1VzZXIgPSBhc3luYyAodXNlcklkOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgICAgICAgY29uc3QgdXNlciA9IGF3YWl0IHRoaXMuZ2V0QnlJZCh1c2VySWQpO1xuICAgICAgICBjb25zdCBjcmVhdGVkVGltZSA9IHVzZXIuY3JlYXRlZF90aW1lID8gbmV3IERhdGUodXNlci5jcmVhdGVkX3RpbWUpLmdldFRpbWUoKSA6IERhdGUubm93KCk7XG4gICAgICAgIGNvbnN0IHNldmVuRGF5c01zID0gNyAqIDI0ICogNjAgKiA2MCAqIDEwMDA7XG4gICAgICAgIHJldHVybiBEYXRlLm5vdygpIC0gY3JlYXRlZFRpbWUgPD0gc2V2ZW5EYXlzTXM7XG4gICAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IHVzZXJEQU8gPSBuZXcgVXNlckRBTygpOyJdfQ==
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1kYW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY3VzdG9tZXItdXNlci91c2VyL3VzZXItZGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFvRDtBQUVwRCw2Q0FBeUM7QUFJekMsTUFBTSxPQUFRLFNBQVEscUJBQXFCO0lBQTNDOztRQWVJOzs7O1dBSUc7UUFDSCxZQUFPLEdBQUcsS0FBSyxFQUFFLE1BQWMsRUFBc0IsRUFBRTtZQUNuRCxNQUFNLElBQUksR0FBRyxJQUFJLHNCQUFTLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUNyQixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsQ0FBQyxDQUFDO1FBRUY7Ozs7Ozs7V0FPRztRQUNILGNBQVMsR0FBRyxLQUFLLEVBQUUsTUFBYyxFQUFFLElBQVksRUFBRSxXQUFvQixFQUFvQixFQUFFO1lBQ3ZGLElBQUksU0FBaUIsQ0FBQztZQUN0QixJQUFJLFdBQVcsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDdEIsU0FBUyxHQUFHLFdBQVcsQ0FBQztZQUM1QixDQUFDO2lCQUFNLENBQUM7Z0JBQ0osTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDdkYsQ0FBQztZQUNELE1BQU0sUUFBUSxHQUFHLElBQUksR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7WUFDNUMsT0FBTyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsU0FBUyxJQUFJLFFBQVEsQ0FBQztRQUM5QyxDQUFDLENBQUM7SUFDTixDQUFDO0lBM0NHLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFhO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLGlCQUFNLENBQUMsS0FBSyxDQUFDLHNCQUFTLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQTtRQUN0RixNQUFNLFFBQVEsR0FBZ0IsRUFBRSxDQUFDO1FBRWpDLElBQUksS0FBSyxFQUFFLE1BQU0sSUFBSSxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQzdCLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEIsQ0FBQztRQUVELElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN0QixNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLHNCQUFzQixDQUFDLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0wsQ0FBQztDQWdDSjtBQUVZLFFBQUEsT0FBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZW5lcmljREFPLCBtYXBwZXIgfSBmcm9tIFwiLi4vLi4vYmFzZS1kYW9cIjtcbmltcG9ydCB7IE9yZGVyTW9kZWwgfSBmcm9tIFwiLi4vb3JkZXItbW9kdWxlL29yZGVyL29yZGVyLW1vZGVsXCI7XG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tIFwiLi91c2VyLW1vZGVsXCI7XG5cblxuXG5jbGFzcyBVc2VyREFPIGV4dGVuZHMgR2VuZXJpY0RBTzxVc2VyTW9kZWw+IHtcblxuICAgIGFzeW5jIGNoZWNrRW1haWxFeGlzdHMoZW1haWw6IFN0cmluZykge1xuICAgICAgICBjb25zdCBJdGVtcyA9IG1hcHBlci5xdWVyeShVc2VyTW9kZWwsIHsgZW1haWxJZDogZW1haWwgfSwgeyBpbmRleE5hbWU6ICdlbWFpbEluZGV4JyB9KVxuICAgICAgICBjb25zdCBhbGxJdGVtczogVXNlck1vZGVsW10gPSBbXTtcblxuICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IGl0ZW0gb2YgSXRlbXMpIHtcbiAgICAgICAgICAgIGFsbEl0ZW1zLnB1c2goaXRlbSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYWxsSXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhyb3cgKG5ldyBFcnJvcihgJHtlbWFpbH06RW1haWwgYWxyZWFkeSBUYWtlbmApKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCBVc2VyIGJ5IFVzZXIgSURcbiAgICAgKiBAcGFyYW0gdXNlcklkIFVzZXIgSURcbiAgICAgKiBAcmV0dXJucyBVc2VyIE1vZGVsXG4gICAgICovXG4gICAgZ2V0QnlJZCA9IGFzeW5jICh1c2VySWQ6IHN0cmluZyk6IFByb21pc2U8VXNlck1vZGVsPiA9PiB7XG4gICAgICAgIGNvbnN0IHVzZXIgPSBuZXcgVXNlck1vZGVsKCk7XG4gICAgICAgIHVzZXIudXNlcklkID0gdXNlcklkO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXQodXNlcik7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdHJ1ZSBpZiB1c2VyIHdhcyBjcmVhdGVkIHdpdGhpbiB0aGUgZ2l2ZW4gZGF5cyBvZiBub3csIGZhbHNlIG90aGVyd2lzZS5cbiAgICAgKiBJZiBjcmVhdGVkVGltZSBpcyBwYXNzZWQg4oCTIG5vIERCIGNhbGwuIElmIG5vdCDigJMgZmV0Y2hlcyB1c2VyIGJ5IHVzZXJJZCBhbmQgdXNlcyBjcmVhdGVkX3RpbWUuXG4gICAgICogQHBhcmFtIHVzZXJJZCBVc2VyIElEICh1c2VkIHRvIGZldGNoIHVzZXIgd2hlbiBjcmVhdGVkVGltZSBpcyBub3QgcHJvdmlkZWQpXG4gICAgICogQHBhcmFtIGRheXMgTnVtYmVyIG9mIGRheXMgdG8gdHJlYXQgYXMgXCJuZXcgdXNlclwiIHdpbmRvd1xuICAgICAqIEBwYXJhbSBjcmVhdGVkVGltZSBPcHRpb25hbDsgaWYgcHJvdmlkZWQsIG5vIERCIGZldGNoIGlzIGRvbmVcbiAgICAgKiBAcmV0dXJucyB0cnVlIGlmIHdpdGhpbiB3aW5kb3csIGVsc2UgZmFsc2VcbiAgICAgKi9cbiAgICBpc05ld1VzZXIgPSBhc3luYyAodXNlcklkOiBzdHJpbmcsIGRheXM6IG51bWJlciwgY3JlYXRlZFRpbWU/OiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcbiAgICAgICAgbGV0IGNyZWF0ZWRNczogbnVtYmVyO1xuICAgICAgICBpZiAoY3JlYXRlZFRpbWUgIT0gbnVsbCkge1xuICAgICAgICAgICAgY3JlYXRlZE1zID0gY3JlYXRlZFRpbWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB1c2VyID0gYXdhaXQgdGhpcy5nZXRCeUlkKHVzZXJJZCk7XG4gICAgICAgICAgICBjcmVhdGVkTXMgPSB1c2VyLmNyZWF0ZWRfdGltZSA/IG5ldyBEYXRlKHVzZXIuY3JlYXRlZF90aW1lKS5nZXRUaW1lKCkgOiBEYXRlLm5vdygpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHdpbmRvd01zID0gZGF5cyAqIDI0ICogNjAgKiA2MCAqIDEwMDA7XG4gICAgICAgIHJldHVybiBEYXRlLm5vdygpIC0gY3JlYXRlZE1zIDw9IHdpbmRvd01zO1xuICAgIH07XG59XG5cbmV4cG9ydCBjb25zdCB1c2VyREFPID0gbmV3IFVzZXJEQU8oKTsiXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cmp-aws-database",
3
- "version": "1.2.0-dev.125",
3
+ "version": "1.2.0-dev.127",
4
4
  "bin": {
5
5
  "craft-my-plate-database": "bin/craft-my-plate-database.js"
6
6
  },