cmp-aws-database
Version:
The package "cmp-aws-database" is for its database, which defines global tables. These tables are designed to be imported and used across multiple applications of "craft-my-plate."
35 lines • 4.31 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.counterDAO = void 0;
const base_dao_1 = require("../../base-dao");
const counter_model_1 = require("./counter-model");
class CounterDAO extends base_dao_1.GenericDAO {
async allCounterFetch() {
const allCounters = [];
for await (const counter of base_dao_1.mapper.scan(counter_model_1.CounterModel)) {
allCounters.push(counter);
}
return allCounters;
}
async fetchActiveCounter(counterType) {
const activeCounters = [];
let counters;
if (counterType) {
const condition = {
counterType: counterType,
};
// Query using the GSI when cuisineActive is provided
counters = await base_dao_1.mapper.query(counter_model_1.CounterModel, condition, { indexName: "counterTypeIndex" });
}
else {
// Scan the whole table if no filter provided
counters = await exports.counterDAO.allCounterFetch();
}
for await (const counter of counters) {
activeCounters.push(counter);
}
return activeCounters;
}
}
exports.counterDAO = new CounterDAO();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291bnRlci1kYW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY3VzdG9tZXItdXNlci9jb3VudGVyL2NvdW50ZXItZGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFvRDtBQUNwRCxtREFBK0M7QUFLL0MsTUFBTSxVQUFXLFNBQVEscUJBQXdCO0lBRTdDLEtBQUssQ0FBQyxlQUFlO1FBQ2pCLE1BQU0sV0FBVyxHQUFtQixFQUFFLENBQUM7UUFDdkMsSUFBSSxLQUFLLEVBQUUsTUFBTSxPQUFPLElBQUksaUJBQU0sQ0FBQyxJQUFJLENBQUMsNEJBQVksQ0FBQyxFQUFFLENBQUM7WUFDcEQsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QixDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDdkIsQ0FBQztJQUVELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxXQUFtQjtRQUN4QyxNQUFNLGNBQWMsR0FBRyxFQUFFLENBQUM7UUFDMUIsSUFBSSxRQUFRLENBQUM7UUFFYixJQUFJLFdBQVcsRUFBRSxDQUFDO1lBRWQsTUFBTSxTQUFTLEdBQTBCO2dCQUNyQyxXQUFXLEVBQUUsV0FBVzthQUMzQixDQUFDO1lBQ0YscURBQXFEO1lBQ3JELFFBQVEsR0FBRyxNQUFNLGlCQUFNLENBQUMsS0FBSyxDQUFDLDRCQUFZLEVBQUUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FBQztRQUM5RixDQUFDO2FBQU0sQ0FBQztZQUNKLDZDQUE2QztZQUM3QyxRQUFRLEdBQUcsTUFBTSxrQkFBVSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ2xELENBQUM7UUFFRCxJQUFJLEtBQUssRUFBRSxNQUFNLE9BQU8sSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNuQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pDLENBQUM7UUFDRCxPQUFPLGNBQWMsQ0FBQztJQUMxQixDQUFDO0NBQ0o7QUFFWSxRQUFBLFVBQVUsR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2VuZXJpY0RBTywgbWFwcGVyIH0gZnJvbSBcIi4uLy4uL2Jhc2UtZGFvXCI7XG5pbXBvcnQgeyBDb3VudGVyTW9kZWwgfSBmcm9tIFwiLi9jb3VudGVyLW1vZGVsXCI7XG5cbmludGVyZmFjZSBRdWVyeUNvbmRpdGlvbkNvdW50ZXIge1xuICAgIGNvdW50ZXJUeXBlOiBzdHJpbmc7XG59XG5jbGFzcyBDb3VudGVyREFPIGV4dGVuZHMgR2VuZXJpY0RBTzxDb3VudGVyTW9kZWw+IHtcblxuICAgIGFzeW5jIGFsbENvdW50ZXJGZXRjaCgpOiBQcm9taXNlPENvdW50ZXJNb2RlbFtdPiB7XG4gICAgICAgIGNvbnN0IGFsbENvdW50ZXJzOiBDb3VudGVyTW9kZWxbXSA9IFtdO1xuICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IGNvdW50ZXIgb2YgbWFwcGVyLnNjYW4oQ291bnRlck1vZGVsKSkge1xuICAgICAgICAgICAgYWxsQ291bnRlcnMucHVzaChjb3VudGVyKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYWxsQ291bnRlcnM7XG4gICAgfVxuXG4gICAgYXN5bmMgZmV0Y2hBY3RpdmVDb3VudGVyKGNvdW50ZXJUeXBlOiBzdHJpbmcpOiBQcm9taXNlPENvdW50ZXJNb2RlbFtdPiB7XG4gICAgICAgIGNvbnN0IGFjdGl2ZUNvdW50ZXJzID0gW107XG4gICAgICAgIGxldCBjb3VudGVycztcblxuICAgICAgICBpZiAoY291bnRlclR5cGUpIHtcblxuICAgICAgICAgICAgY29uc3QgY29uZGl0aW9uOiBRdWVyeUNvbmRpdGlvbkNvdW50ZXIgPSB7XG4gICAgICAgICAgICAgICAgY291bnRlclR5cGU6IGNvdW50ZXJUeXBlLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vIFF1ZXJ5IHVzaW5nIHRoZSBHU0kgd2hlbiBjdWlzaW5lQWN0aXZlIGlzIHByb3ZpZGVkXG4gICAgICAgICAgICBjb3VudGVycyA9IGF3YWl0IG1hcHBlci5xdWVyeShDb3VudGVyTW9kZWwsIGNvbmRpdGlvbiwgeyBpbmRleE5hbWU6IFwiY291bnRlclR5cGVJbmRleFwiIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gU2NhbiB0aGUgd2hvbGUgdGFibGUgaWYgbm8gZmlsdGVyIHByb3ZpZGVkXG4gICAgICAgICAgICBjb3VudGVycyA9IGF3YWl0IGNvdW50ZXJEQU8uYWxsQ291bnRlckZldGNoKCk7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgYXdhaXQgKGNvbnN0IGNvdW50ZXIgb2YgY291bnRlcnMpIHtcbiAgICAgICAgICAgIGFjdGl2ZUNvdW50ZXJzLnB1c2goY291bnRlcik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGFjdGl2ZUNvdW50ZXJzO1xuICAgIH1cbn1cblxuZXhwb3J0IGNvbnN0IGNvdW50ZXJEQU8gPSBuZXcgQ291bnRlckRBTygpOyJdfQ==