cmp-aws-database 2.1.2-dev.24 → 2.1.2-dev.25
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,24 @@
|
|
|
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
|
+
* Scans the full `CategoryTable` and returns all category records.
|
|
15
|
+
*
|
|
16
|
+
* Use when: admin dropdown, cache warm-up, or listing every category without filters.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* const allCategories = await categoryTypesDAO.getAllCategories();
|
|
20
|
+
*/
|
|
21
|
+
getAllCategories: () => Promise<CategoryModel[]>;
|
|
4
22
|
}
|
|
5
23
|
export declare const categoryTypesDAO: CategoryDAO;
|
|
6
24
|
export {};
|
|
@@ -2,7 +2,39 @@
|
|
|
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");
|
|
5
6
|
class CategoryDAO extends base_dao_1.GenericDAO {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
/**
|
|
10
|
+
* Fetches one category by `categoryId` (table primary key).
|
|
11
|
+
*
|
|
12
|
+
* Use when: category detail screen or API already has `categoryId`.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* const category = await categoryTypesDAO.getById("category-uuid");
|
|
16
|
+
*/
|
|
17
|
+
this.getById = async (categoryId) => {
|
|
18
|
+
const category = new category_model_1.CategoryModel();
|
|
19
|
+
category.categoryId = categoryId;
|
|
20
|
+
return this.get(category);
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Scans the full `CategoryTable` and returns all category records.
|
|
24
|
+
*
|
|
25
|
+
* Use when: admin dropdown, cache warm-up, or listing every category without filters.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* const allCategories = await categoryTypesDAO.getAllCategories();
|
|
29
|
+
*/
|
|
30
|
+
this.getAllCategories = async () => {
|
|
31
|
+
const categories = [];
|
|
32
|
+
for await (const category of base_dao_1.mapper.scan(category_model_1.CategoryModel)) {
|
|
33
|
+
categories.push(category);
|
|
34
|
+
}
|
|
35
|
+
return categories;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
6
38
|
}
|
|
7
39
|
exports.categoryTypesDAO = new CategoryDAO();
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZGFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2N1c3RvbWVyLXVzZXIvY2F0ZWdvcnkvY2F0ZWdvcnktZGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFvRDtBQUNwRCxxREFBaUQ7QUFFakQsTUFBTSxXQUFZLFNBQVEscUJBQXlCO0lBQW5EOztRQUNJOzs7Ozs7O1dBT0c7UUFDSCxZQUFPLEdBQUcsS0FBSyxFQUFFLFVBQWtCLEVBQTBCLEVBQUU7WUFDM0QsTUFBTSxRQUFRLEdBQUcsSUFBSSw4QkFBYSxFQUFFLENBQUM7WUFDckMsUUFBUSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7WUFDakMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlCLENBQUMsQ0FBQztRQUVGOzs7Ozs7O1dBT0c7UUFDSCxxQkFBZ0IsR0FBRyxLQUFLLElBQThCLEVBQUU7WUFDcEQsTUFBTSxVQUFVLEdBQW9CLEVBQUUsQ0FBQztZQUN2QyxJQUFJLEtBQUssRUFBRSxNQUFNLFFBQVEsSUFBSSxpQkFBTSxDQUFDLElBQUksQ0FBQyw4QkFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDdEQsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QixDQUFDO1lBQ0QsT0FBTyxVQUFVLENBQUM7UUFDdEIsQ0FBQyxDQUFDO0lBQ04sQ0FBQztDQUFBO0FBRVksUUFBQSxnQkFBZ0IsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2VuZXJpY0RBTywgbWFwcGVyIH0gZnJvbSBcIi4uLy4uL2Jhc2UtZGFvXCI7XG5pbXBvcnQgeyBDYXRlZ29yeU1vZGVsIH0gZnJvbSBcIi4vY2F0ZWdvcnktbW9kZWxcIjtcblxuY2xhc3MgQ2F0ZWdvcnlEQU8gZXh0ZW5kcyBHZW5lcmljREFPPENhdGVnb3J5TW9kZWw+IHtcbiAgICAvKipcbiAgICAgKiBGZXRjaGVzIG9uZSBjYXRlZ29yeSBieSBgY2F0ZWdvcnlJZGAgKHRhYmxlIHByaW1hcnkga2V5KS5cbiAgICAgKlxuICAgICAqIFVzZSB3aGVuOiBjYXRlZ29yeSBkZXRhaWwgc2NyZWVuIG9yIEFQSSBhbHJlYWR5IGhhcyBgY2F0ZWdvcnlJZGAuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGNvbnN0IGNhdGVnb3J5ID0gYXdhaXQgY2F0ZWdvcnlUeXBlc0RBTy5nZXRCeUlkKFwiY2F0ZWdvcnktdXVpZFwiKTtcbiAgICAgKi9cbiAgICBnZXRCeUlkID0gYXN5bmMgKGNhdGVnb3J5SWQ6IHN0cmluZyk6IFByb21pc2U8Q2F0ZWdvcnlNb2RlbD4gPT4ge1xuICAgICAgICBjb25zdCBjYXRlZ29yeSA9IG5ldyBDYXRlZ29yeU1vZGVsKCk7XG4gICAgICAgIGNhdGVnb3J5LmNhdGVnb3J5SWQgPSBjYXRlZ29yeUlkO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXQoY2F0ZWdvcnkpO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBTY2FucyB0aGUgZnVsbCBgQ2F0ZWdvcnlUYWJsZWAgYW5kIHJldHVybnMgYWxsIGNhdGVnb3J5IHJlY29yZHMuXG4gICAgICpcbiAgICAgKiBVc2Ugd2hlbjogYWRtaW4gZHJvcGRvd24sIGNhY2hlIHdhcm0tdXAsIG9yIGxpc3RpbmcgZXZlcnkgY2F0ZWdvcnkgd2l0aG91dCBmaWx0ZXJzLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBjb25zdCBhbGxDYXRlZ29yaWVzID0gYXdhaXQgY2F0ZWdvcnlUeXBlc0RBTy5nZXRBbGxDYXRlZ29yaWVzKCk7XG4gICAgICovXG4gICAgZ2V0QWxsQ2F0ZWdvcmllcyA9IGFzeW5jICgpOiBQcm9taXNlPENhdGVnb3J5TW9kZWxbXT4gPT4ge1xuICAgICAgICBjb25zdCBjYXRlZ29yaWVzOiBDYXRlZ29yeU1vZGVsW10gPSBbXTtcbiAgICAgICAgZm9yIGF3YWl0IChjb25zdCBjYXRlZ29yeSBvZiBtYXBwZXIuc2NhbihDYXRlZ29yeU1vZGVsKSkge1xuICAgICAgICAgICAgY2F0ZWdvcmllcy5wdXNoKGNhdGVnb3J5KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY2F0ZWdvcmllcztcbiAgICB9O1xufVxuXG5leHBvcnQgY29uc3QgY2F0ZWdvcnlUeXBlc0RBTyA9IG5ldyBDYXRlZ29yeURBTygpO1xuIl19
|