cmp-aws-database 2.1.2-dev.24 → 2.1.2-dev.26

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,25 @@
1
1
  import { GenericDAO } from "../../base-dao";
2
2
  import { CategoryModel } from "./category-model";
3
3
  declare class CategoryDAO extends GenericDAO<CategoryModel> {
4
+ /**
5
+ * Fetches one category by `categoryId` (table primary key).
6
+ *
7
+ * Use when: category detail screen or API already has `categoryId`.
8
+ *
9
+ * @example
10
+ * const category = await categoryTypesDAO.getById("category-uuid");
11
+ */
12
+ getById: (categoryId: string) => Promise<CategoryModel>;
13
+ /**
14
+ * Returns all active categories using GSI `categoryActiveIndex`.
15
+ *
16
+ * Use when: customer-facing category list, dropdowns, or menu filters.
17
+ * Only records with `categoryActive === "ACTIVE"` are returned.
18
+ *
19
+ * @example
20
+ * const activeCategories = await categoryTypesDAO.getAllCategories();
21
+ */
22
+ getAllActiveCategories: () => Promise<CategoryModel[]>;
4
23
  }
5
24
  export declare const categoryTypesDAO: CategoryDAO;
6
25
  export {};
@@ -2,7 +2,45 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.categoryTypesDAO = void 0;
4
4
  const base_dao_1 = require("../../base-dao");
5
+ const category_model_1 = require("./category-model");
6
+ const CATEGORY_ACTIVE_STATUS = "ACTIVE";
5
7
  class CategoryDAO extends base_dao_1.GenericDAO {
8
+ constructor() {
9
+ super(...arguments);
10
+ /**
11
+ * Fetches one category by `categoryId` (table primary key).
12
+ *
13
+ * Use when: category detail screen or API already has `categoryId`.
14
+ *
15
+ * @example
16
+ * const category = await categoryTypesDAO.getById("category-uuid");
17
+ */
18
+ this.getById = async (categoryId) => {
19
+ const category = new category_model_1.CategoryModel();
20
+ category.categoryId = categoryId;
21
+ return this.get(category);
22
+ };
23
+ /**
24
+ * Returns all active categories using GSI `categoryActiveIndex`.
25
+ *
26
+ * Use when: customer-facing category list, dropdowns, or menu filters.
27
+ * Only records with `categoryActive === "ACTIVE"` are returned.
28
+ *
29
+ * @example
30
+ * const activeCategories = await categoryTypesDAO.getAllCategories();
31
+ */
32
+ this.getAllActiveCategories = async () => {
33
+ const activeCategories = [];
34
+ const condition = {
35
+ categoryActive: CATEGORY_ACTIVE_STATUS
36
+ };
37
+ const categories = base_dao_1.mapper.query(category_model_1.CategoryModel, condition, { indexName: "categoryActiveIndex" });
38
+ for await (const category of categories) {
39
+ activeCategories.push(category);
40
+ }
41
+ return activeCategories;
42
+ };
43
+ }
6
44
  }
7
45
  exports.categoryTypesDAO = new CategoryDAO();
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZGFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2N1c3RvbWVyLXVzZXIvY2F0ZWdvcnkvY2F0ZWdvcnktZGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUE0QztBQUk1QyxNQUFNLFdBQVksU0FBUSxxQkFBeUI7Q0FFbEQ7QUFDWSxRQUFBLGdCQUFnQixHQUFHLElBQUksV0FBVyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHZW5lcmljREFPIH0gZnJvbSBcIi4uLy4uL2Jhc2UtZGFvXCI7XG5pbXBvcnQgeyBDYXRlZ29yeU1vZGVsIH0gZnJvbSBcIi4vY2F0ZWdvcnktbW9kZWxcIjtcblxuXG5jbGFzcyBDYXRlZ29yeURBTyBleHRlbmRzIEdlbmVyaWNEQU88Q2F0ZWdvcnlNb2RlbD4ge1xuXG59XG5leHBvcnQgY29uc3QgY2F0ZWdvcnlUeXBlc0RBTyA9IG5ldyBDYXRlZ29yeURBTygpO1xuXG4iXX0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZGFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2N1c3RvbWVyLXVzZXIvY2F0ZWdvcnkvY2F0ZWdvcnktZGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFvRDtBQUNwRCxxREFBaUQ7QUFFakQsTUFBTSxzQkFBc0IsR0FBRyxRQUFRLENBQUM7QUFNeEMsTUFBTSxXQUFZLFNBQVEscUJBQXlCO0lBQW5EOztRQUNJOzs7Ozs7O1dBT0c7UUFDSCxZQUFPLEdBQUcsS0FBSyxFQUFFLFVBQWtCLEVBQTBCLEVBQUU7WUFDM0QsTUFBTSxRQUFRLEdBQUcsSUFBSSw4QkFBYSxFQUFFLENBQUM7WUFDckMsUUFBUSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7WUFDakMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQztRQUVGOzs7Ozs7OztXQVFHO1FBQ0gsMkJBQXNCLEdBQUcsS0FBSyxJQUE4QixFQUFFO1lBQzFELE1BQU0sZ0JBQWdCLEdBQW9CLEVBQUUsQ0FBQztZQUM3QyxNQUFNLFNBQVMsR0FBMkI7Z0JBQ3RDLGNBQWMsRUFBRSxzQkFBc0I7YUFDekMsQ0FBQztZQUNGLE1BQU0sVUFBVSxHQUFHLGlCQUFNLENBQUMsS0FBSyxDQUFDLDhCQUFhLEVBQUUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFLENBQUMsQ0FBQztZQUVoRyxJQUFJLEtBQUssRUFBRSxNQUFNLFFBQVEsSUFBSSxVQUFVLEVBQUUsQ0FBQztnQkFDdEMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFDRCxPQUFPLGdCQUFnQixDQUFDO1FBQzVCLENBQUMsQ0FBQztJQUNOLENBQUM7Q0FBQTtBQUVZLFFBQUEsZ0JBQWdCLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdlbmVyaWNEQU8sIG1hcHBlciB9IGZyb20gXCIuLi8uLi9iYXNlLWRhb1wiO1xuaW1wb3J0IHsgQ2F0ZWdvcnlNb2RlbCB9IGZyb20gXCIuL2NhdGVnb3J5LW1vZGVsXCI7XG5cbmNvbnN0IENBVEVHT1JZX0FDVElWRV9TVEFUVVMgPSBcIkFDVElWRVwiO1xuXG5pbnRlcmZhY2UgUXVlcnlDb25kaXRpb25DYXRlZ29yeSB7XG4gICAgY2F0ZWdvcnlBY3RpdmU6IHN0cmluZztcbn1cblxuY2xhc3MgQ2F0ZWdvcnlEQU8gZXh0ZW5kcyBHZW5lcmljREFPPENhdGVnb3J5TW9kZWw+IHtcbiAgICAvKipcbiAgICAgKiBGZXRjaGVzIG9uZSBjYXRlZ29yeSBieSBgY2F0ZWdvcnlJZGAgKHRhYmxlIHByaW1hcnkga2V5KS5cbiAgICAgKlxuICAgICAqIFVzZSB3aGVuOiBjYXRlZ29yeSBkZXRhaWwgc2NyZWVuIG9yIEFQSSBhbHJlYWR5IGhhcyBgY2F0ZWdvcnlJZGAuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGNvbnN0IGNhdGVnb3J5ID0gYXdhaXQgY2F0ZWdvcnlUeXBlc0RBTy5nZXRCeUlkKFwiY2F0ZWdvcnktdXVpZFwiKTtcbiAgICAgKi9cbiAgICBnZXRCeUlkID0gYXN5bmMgKGNhdGVnb3J5SWQ6IHN0cmluZyk6IFByb21pc2U8Q2F0ZWdvcnlNb2RlbD4gPT4ge1xuICAgICAgICBjb25zdCBjYXRlZ29yeSA9IG5ldyBDYXRlZ29yeU1vZGVsKCk7XG4gICAgICAgIGNhdGVnb3J5LmNhdGVnb3J5SWQgPSBjYXRlZ29yeUlkO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXQoY2F0ZWdvcnkpO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFsbCBhY3RpdmUgY2F0ZWdvcmllcyB1c2luZyBHU0kgYGNhdGVnb3J5QWN0aXZlSW5kZXhgLlxuICAgICAqXG4gICAgICogVXNlIHdoZW46IGN1c3RvbWVyLWZhY2luZyBjYXRlZ29yeSBsaXN0LCBkcm9wZG93bnMsIG9yIG1lbnUgZmlsdGVycy5cbiAgICAgKiBPbmx5IHJlY29yZHMgd2l0aCBgY2F0ZWdvcnlBY3RpdmUgPT09IFwiQUNUSVZFXCJgIGFyZSByZXR1cm5lZC5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogY29uc3QgYWN0aXZlQ2F0ZWdvcmllcyA9IGF3YWl0IGNhdGVnb3J5VHlwZXNEQU8uZ2V0QWxsQ2F0ZWdvcmllcygpO1xuICAgICAqL1xuICAgIGdldEFsbEFjdGl2ZUNhdGVnb3JpZXMgPSBhc3luYyAoKTogUHJvbWlzZTxDYXRlZ29yeU1vZGVsW10+ID0+IHtcbiAgICAgICAgY29uc3QgYWN0aXZlQ2F0ZWdvcmllczogQ2F0ZWdvcnlNb2RlbFtdID0gW107XG4gICAgICAgIGNvbnN0IGNvbmRpdGlvbjogUXVlcnlDb25kaXRpb25DYXRlZ29yeSA9IHtcbiAgICAgICAgICAgIGNhdGVnb3J5QWN0aXZlOiBDQVRFR09SWV9BQ1RJVkVfU1RBVFVTXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGNhdGVnb3JpZXMgPSBtYXBwZXIucXVlcnkoQ2F0ZWdvcnlNb2RlbCwgY29uZGl0aW9uLCB7IGluZGV4TmFtZTogXCJjYXRlZ29yeUFjdGl2ZUluZGV4XCIgfSk7XG5cbiAgICAgICAgZm9yIGF3YWl0IChjb25zdCBjYXRlZ29yeSBvZiBjYXRlZ29yaWVzKSB7XG4gICAgICAgICAgICBhY3RpdmVDYXRlZ29yaWVzLnB1c2goY2F0ZWdvcnkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBhY3RpdmVDYXRlZ29yaWVzO1xuICAgIH07XG59XG5cbmV4cG9ydCBjb25zdCBjYXRlZ29yeVR5cGVzREFPID0gbmV3IENhdGVnb3J5REFPKCk7XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cmp-aws-database",
3
- "version": "2.1.2-dev.24",
3
+ "version": "2.1.2-dev.26",
4
4
  "bin": {
5
5
  "craft-my-plate-database": "bin/craft-my-plate-database.js"
6
6
  },