cmp-aws-database 2.3.0 → 2.3.2
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.
- package/dist/config/table-names.d.ts +4 -0
- package/dist/config/table-names.js +5 -1
- package/dist/customer-user/browse-history/browse-history-dao.d.ts +122 -0
- package/dist/customer-user/browse-history/browse-history-dao.js +173 -0
- package/dist/customer-user/browse-history/browse-history-model.d.ts +30 -0
- package/dist/customer-user/browse-history/browse-history-model.js +114 -0
- package/dist/customer-user/category/category-dao.d.ts +29 -0
- package/dist/customer-user/category/category-dao.js +52 -1
- package/dist/customer-user/category/category-model.d.ts +1 -0
- package/dist/customer-user/category/category-model.js +5 -1
- package/dist/customer-user/cutlery/cutlery-model.d.ts +2 -0
- package/dist/customer-user/cutlery/cutlery-model.js +9 -1
- package/dist/customer-user/default-platter/default-platters-model.d.ts +2 -0
- package/dist/customer-user/default-platter/default-platters-model.js +9 -1
- package/dist/customer-user/resume-journey/resume-journey-model.d.ts +4 -0
- package/dist/customer-user/resume-journey/resume-journey-model.js +17 -1
- package/dist/customer-user/testing-session/testing-session-dao.d.ts +86 -0
- package/dist/customer-user/testing-session/testing-session-dao.js +149 -0
- package/dist/customer-user/testing-session/testing-session-model.d.ts +30 -0
- package/dist/customer-user/testing-session/testing-session-model.js +96 -0
- package/package.json +1 -1
|
@@ -20,6 +20,8 @@ export declare const BASE_TABLE_NAMES: {
|
|
|
20
20
|
readonly INFLUENCER_PROMO: "InfluencerPromoTable";
|
|
21
21
|
readonly INFLUENCER_REFERRAL: "InfluencerReferralTable";
|
|
22
22
|
readonly CATALOGUE_ITEMS: "CatalogueItemsTable";
|
|
23
|
+
readonly BROWSE_HISTORY: "BrowseHistoryTable";
|
|
24
|
+
readonly TESTING_SESSION: "TestingSessionTable";
|
|
23
25
|
readonly THIRD_PARTY_API_KEY: "ThirdPartyApiKeyTable";
|
|
24
26
|
readonly ORDER: "OrderTable";
|
|
25
27
|
readonly ORDER_ADDRESS: "OrderAddressTable";
|
|
@@ -80,6 +82,8 @@ export declare const TABLE_NAMES: {
|
|
|
80
82
|
readonly INFLUENCER_PROMO: string;
|
|
81
83
|
readonly INFLUENCER_REFERRAL: string;
|
|
82
84
|
readonly CATALOGUE_ITEMS: string;
|
|
85
|
+
readonly BROWSE_HISTORY: string;
|
|
86
|
+
readonly TESTING_SESSION: string;
|
|
83
87
|
readonly THIRD_PARTY_API_KEY: string;
|
|
84
88
|
readonly ORDER: string;
|
|
85
89
|
readonly ORDER_ADDRESS: string;
|
|
@@ -26,6 +26,8 @@ exports.BASE_TABLE_NAMES = {
|
|
|
26
26
|
INFLUENCER_PROMO: 'InfluencerPromoTable',
|
|
27
27
|
INFLUENCER_REFERRAL: 'InfluencerReferralTable',
|
|
28
28
|
CATALOGUE_ITEMS: 'CatalogueItemsTable',
|
|
29
|
+
BROWSE_HISTORY: 'BrowseHistoryTable',
|
|
30
|
+
TESTING_SESSION: 'TestingSessionTable',
|
|
29
31
|
THIRD_PARTY_API_KEY: 'ThirdPartyApiKeyTable',
|
|
30
32
|
// Order Module Tables
|
|
31
33
|
ORDER: 'OrderTable',
|
|
@@ -101,6 +103,8 @@ exports.TABLE_NAMES = {
|
|
|
101
103
|
INFLUENCER_PROMO: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.INFLUENCER_PROMO),
|
|
102
104
|
INFLUENCER_REFERRAL: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.INFLUENCER_REFERRAL),
|
|
103
105
|
CATALOGUE_ITEMS: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.CATALOGUE_ITEMS),
|
|
106
|
+
BROWSE_HISTORY: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.BROWSE_HISTORY),
|
|
107
|
+
TESTING_SESSION: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.TESTING_SESSION),
|
|
104
108
|
THIRD_PARTY_API_KEY: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.THIRD_PARTY_API_KEY),
|
|
105
109
|
// Order Module Tables
|
|
106
110
|
ORDER: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.ORDER),
|
|
@@ -138,4 +142,4 @@ exports.TABLE_NAMES = {
|
|
|
138
142
|
ACTIVITY_LOGS: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.ACTIVITY_LOGS),
|
|
139
143
|
QUOTATIONS: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.QUOTATIONS),
|
|
140
144
|
};
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3RhYmxlLW5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlEQUFxRDtBQUVyRCxnREFBZ0Q7QUFDbkMsUUFBQSxnQkFBZ0IsR0FBRztJQUM1QixzQkFBc0I7SUFDdEIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxPQUFPLEVBQUUsYUFBYTtJQUN0QixPQUFPLEVBQUUsY0FBYztJQUN2QixtQkFBbUIsRUFBRSx5QkFBeUI7SUFDOUMsT0FBTyxFQUFFLGNBQWM7SUFDdkIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxrQkFBa0IsRUFBRSx1QkFBdUI7SUFDM0MsYUFBYSxFQUFFLG1CQUFtQjtJQUNsQyxvQkFBb0IsRUFBRSx5QkFBeUI7SUFDL0MsZUFBZSxFQUFFLHFCQUFxQjtJQUN0QyxjQUFjLEVBQUUsb0JBQW9CO0lBQ3BDLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLGVBQWUsRUFBRSxxQkFBcUI7SUFDdEMscUJBQXFCLEVBQUUsMEJBQTBCO0lBQ2pELHFCQUFxQixFQUFFLDBCQUEwQjtJQUNqRCxnQkFBZ0IsRUFBRSxzQkFBc0I7SUFDeEMsb0JBQW9CLEVBQUUseUJBQXlCO0lBQy9DLFdBQVcsRUFBRSxpQkFBaUI7SUFDOUIsZ0JBQWdCLEVBQUUsc0JBQXNCO0lBQ3hDLG1CQUFtQixFQUFFLHlCQUF5QjtJQUM5QyxlQUFlLEVBQUUscUJBQXFCO0lBQ3RDLG1CQUFtQixFQUFFLHVCQUF1QjtJQUU1QyxzQkFBc0I7SUFDdEIsS0FBSyxFQUFFLFlBQVk7SUFDbkIsYUFBYSxFQUFFLG1CQUFtQjtJQUNsQyxZQUFZLEVBQUUsa0JBQWtCO0lBQ2hDLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLFdBQVcsRUFBRSxpQkFBaUI7SUFDOUIsUUFBUSxFQUFFLGVBQWU7SUFDekIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxjQUFjLEVBQUUsb0JBQW9CO0lBQ3BD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LHFCQUFxQixDQUFDO0lBQzVGLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLFlBQVksQ0FBQyx3QkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQztJQUNsRixLQUFLLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLEtBQUssQ0FBQztJQUM1RCxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLElBQUksQ0FBQztJQUMxRCxRQUFRLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLFFBQVEsQ0FBQztJQUNsRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsZ0JBQWdCLENBQUM7SUFDbEYsSUFBSSxFQUFFLGdCQUFnQixDQUFDLFlBQVksQ0FBQyx3QkFBZ0IsQ0FBQyxJQUFJLENBQUM7SUFDMUQsTUFBTSxFQUFFLGdCQUFnQixDQUFDLFlBQVksQ0FBQyx3QkFBZ0IsQ0FBQyxNQUFNLENBQUM7SUFDOUQsa0JBQWtCLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLGtCQUFrQixDQUFDO0lBQ3RGLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsU0FBUyxDQUFDO0lBRXBFLHVCQUF1QjtJQUN2QixhQUFhLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLGFBQWEsQ0FBQztJQUM1RSxhQUFhLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLGFBQWEsQ0FBQztJQUM1RSxVQUFVLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLFVBQVUsQ0FBQztDQUNoRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YWJhc2VGYWN0b3J5IH0gZnJvbSAnLi9kYXRhYmFzZS1mYWN0b3J5JztcblxuLy8gQmFzZSB0YWJsZSBuYW1lcyAod2l0aG91dCBlbnZpcm9ubWVudCBwcmVmaXgpXG5leHBvcnQgY29uc3QgQkFTRV9UQUJMRV9OQU1FUyA9IHtcbiAgICAvLyBDdXN0b21lciBBcHAgVGFibGVzXG4gICAgQVBQX0ZFRURCQUNLOiAnQXBwRmVlZGJhY2tUYWJsZScsXG4gICAgTFNRX0NSTTogJ0xzcUNybVRhYmxlJyxcbiAgICBDVVRMRVJZOiAnQ3V0bGVyeVRhYmxlJyxcbiAgICBJVEVNX0FDQ09NUEFOSU1FTlRTOiAnSXRlbUFjY29tcGFuaW1lbnRzVGFibGUnLFxuICAgIENVSVNJTkU6ICdDdWlzaW5lVGFibGUnLFxuICAgIFRJRVJfREVUQUlMUzogJ1RpZXJEZXRhaWxzVGFibGUnLFxuICAgIFVTRVJfT1JERVJfU1VNTUFSWTogJ1VzZXJPcmRlclN1bW1hcnlUYWJsZScsXG4gICAgVElFUl9SRUZFUlJBTDogJ1RpZXJSZWZlcnJhbFRhYmxlJyxcbiAgICBVU0VSX0FERFJFU1NfUkVRVUVTVDogJ1VzZXJBZGRyZXNzUmVxdWVzdFRhYmxlJyxcbiAgICBDT01NT05fRkVFREJBQ0s6ICdDb21tb25GZWVkYmFja1RhYmxlJyxcbiAgICBHVUVTVF9GRUVEQkFDSzogJ0d1ZXN0RmVlZGJhY2tUYWJsZScsXG4gICAgQ09VTlRFUjogJ0NvdW50ZXJUYWJsZScsXG4gICAgUkVRVUVTVF9JTlZPSUNFOiAnUmVxdWVzdEludm9pY2VUYWJsZScsXG4gICAgUExBVFRFUl9TRUFSQ0hfRVZFTlRTOiAnUGxhdHRlclNlYXJjaEV2ZW50c1RhYmxlJyxcbiAgICBPUkRFUl9SRVZJRVdfRkVFREJBQ0s6ICdPcmRlclJldmlld0ZlZWRiYWNrVGFibGUnLFxuICAgIENBVEVSSU5HX1JFUVVFU1Q6ICdDYXRlcmluZ1JlcXVlc3RUYWJsZScsXG4gICAgRk1QX1JFUVVFU1RfQ0FMTEJBQ0s6ICdGbXBSZXF1ZXN0Q2FsbGJhY2tUYWJsZScsXG4gICAgUExBVFRFUl9GSVQ6ICdQbGF0dGVyRml0VGFibGUnLFxuICAgIElORkxVRU5DRVJfUFJPTU86ICdJbmZsdWVuY2VyUHJvbW9UYWJsZScsXG4gICAgSU5GTFVFTkNFUl9SRUZFUlJBTDogJ0luZmx1ZW5jZXJSZWZlcnJhbFRhYmxlJyxcbiAgICBDQVRBTE9HVUVfSVRFTVM6ICdDYXRhbG9ndWVJdGVtc1RhYmxlJyxcbiAgICBUSElSRF9QQVJUWV9BUElfS0VZOiAnVGhpcmRQYXJ0eUFwaUtleVRhYmxlJyxcblxuICAgIC8vIE9yZGVyIE1vZHVsZSBUYWJsZXNcbiAgICBPUkRFUjogJ09yZGVyVGFibGUnLFxuICAgIE9SREVSX0FERFJFU1M6ICdPcmRlckFkZHJlc3NUYWJsZScsXG4gICAgT1JERVJfUkVWSUVXOiAnT3JkZXJSZXZpZXdUYWJsZScsXG4gICAgUEFZTUVOVDogJ1BheW1lbnRUYWJsZScsXG4gICAgUExBVEVfT1JERVI6ICdQbGF0ZU9yZGVyVGFibGUnLFxuICAgIFRSQUNLSU5HOiAnVHJhY2tpbmdUYWJsZScsXG4gICAgVVNFUl9BRERSRVNTOiAnVXNlckFkZHJlc3NUYWJsZScsXG4gICAgVVNFUl9TUEVDSUZJQ1M6ICdVc2VyU3BlY2lmaWNzVGFibGUnLFxuICAgIEJCUV9TS0VXRVJTOiAnQmJxU2tld2Vyc1RhYmxlJyxcblxuICAgIC8vIE90aGVyIEN1c3RvbWVyIFRhYmxlc1xuICAgIEFERF9PTlM6ICdBZGRPbnNUYWJsZScsXG4gICAgQkFOS19ERVRBSUxTOiAnQmFua0RldGFpbHNUYWJsZScsXG4gICAgQ0FSVDogJ0NhcnRUYWJsZScsXG4gICAgQ0FSVF9DQVRFR09SSUVTOiAnQ2FydENhdGVnb3JpZXNUYWJsZScsXG4gICAgQ0FURUdPUlk6ICdDYXRlZ29yeVRhYmxlJyxcbiAgICBDQVRFUklORzogJ0NhdGVyaW5nVGFibGUnLFxuICAgIENPTlRFTlQ6ICdDb250ZW50VGFibGUnLFxuICAgIENPVVBPTlM6ICdDb3Vwb25zVGFibGUnLFxuICAgIERFRkFVTFRfUExBVFRFUjogJ0RlZmF1bHRQbGF0dGVyVGFibGUnLFxuICAgIERFRkFVTFRfUExBVFRFUl9DQVRFR09SSUVTOiAnRGVmYXVsdFBsYXR0ZXJDYXRlZ29yaWVzVGFibGUnLFxuICAgIERFRkFVTFRfUExBVFRFUl9JVEVNUzogJ0RlZmF1bHRQbGF0dGVySXRlbXNUYWJsZScsXG4gICAgRVZFTlRfRVhFQ1VUSVZFUzogJ0V2ZW50RXhlY3V0aXZlc1RhYmxlJyxcbiAgICBJVEVNUzogJ0l0ZW1zVGFibGUnLFxuICAgIExFQUQ6ICdMZWFkVGFibGUnLFxuICAgIE9DQ0FTSU9OOiAnT2NjYXNpb25UYWJsZScsXG4gICAgUkVGRVJSQUxfQ09OVEVOVDogJ1JlZmVycmFsQ29udGVudFRhYmxlJyxcbiAgICBVU0VSOiAnVXNlclRhYmxlJyxcbiAgICBXQUxMRVQ6ICdXYWxsZXRUYWJsZScsXG4gICAgV0FMTEVUX1RSQU5TQUNUSU9OOiAnV2FsbGV0VHJhbnNhY3Rpb25UYWJsZScsXG4gICAgV0lUSERSQVdOOiAnV2l0aGRyYXduVGFibGUnLFxuXG4gICAgLy8gSW50ZXJuYWwgVXNlciBUYWJsZXNcbiAgICBJTlRFUk5BTF9VU0VSOiAnSW50ZXJuYWxVc2VyVGFibGUnLFxuICAgIEFDVElWSVRZX0xPR1M6ICdBY3Rpdml0eUxvZ3NUYWJsZScsXG4gICAgUVVPVEFUSU9OUzogJ1F1b3RhdGlvbnNUYWJsZScsXG59IGFzIGNvbnN0O1xuXG4vLyBFbnZpcm9ubWVudC1hd2FyZSB0YWJsZSBuYW1lIGdldHRlclxuZXhwb3J0IGNsYXNzIFRhYmxlTmFtZU1hbmFnZXIge1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0VGFibGVOYW1lKGJhc2VUYWJsZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBEYXRhYmFzZUZhY3RvcnkuZ2V0VGFibGVOYW1lKGJhc2VUYWJsZU5hbWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0QWxsVGFibGVOYW1lcygpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICAgICAgY29uc3QgdGFibGVOYW1lczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuXG4gICAgICAgIE9iamVjdC5lbnRyaWVzKEJBU0VfVEFCTEVfTkFNRVMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgdGFibGVOYW1lc1trZXldID0gdGhpcy5nZXRUYWJsZU5hbWUodmFsdWUpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGFibGVOYW1lcztcbiAgICB9XG59XG5cbi8vIEV4cG9ydCBlbnZpcm9ubWVudC1hd2FyZSB0YWJsZSBuYW1lc1xuZXhwb3J0IGNvbnN0IFRBQkxFX05BTUVTID0ge1xuICAgIC8vIEN1c3RvbWVyIEFwcCBUYWJsZXNcbiAgICBBUFBfRkVFREJBQ0s6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQVBQX0ZFRURCQUNLKSxcbiAgICBMU1FfQ1JNOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkxTUV9DUk0pLFxuICAgIENVVExFUlk6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ1VUTEVSWSksXG4gICAgSVRFTV9BQ0NPTVBBTklNRU5UUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5JVEVNX0FDQ09NUEFOSU1FTlRTKSxcbiAgICBDVUlTSU5FOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNVSVNJTkUpLFxuICAgIFRJRVJfREVUQUlMUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5USUVSX0RFVEFJTFMpLFxuICAgIFVTRVJfT1JERVJfU1VNTUFSWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5VU0VSX09SREVSX1NVTU1BUlkpLFxuICAgIFRJRVJfUkVGRVJSQUw6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVElFUl9SRUZFUlJBTCksXG4gICAgVVNFUl9BRERSRVNTX1JFUVVFU1Q6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVVNFUl9BRERSRVNTX1JFUVVFU1QpLFxuICAgIENPTU1PTl9GRUVEQkFDSzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DT01NT05fRkVFREJBQ0spLFxuICAgIEdVRVNUX0ZFRURCQUNLOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkdVRVNUX0ZFRURCQUNLKSxcbiAgICBDT1VOVEVSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNPVU5URVIpLFxuICAgIFJFUVVFU1RfSU5WT0lDRTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5SRVFVRVNUX0lOVk9JQ0UpLFxuICAgIFBMQVRURVJfU0VBUkNIX0VWRU5UUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5QTEFUVEVSX1NFQVJDSF9FVkVOVFMpLFxuICAgIE9SREVSX1JFVklFV19GRUVEQkFDSzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUl9SRVZJRVdfRkVFREJBQ0spLFxuICAgIENBVEVSSU5HX1JFUVVFU1Q6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FURVJJTkdfUkVRVUVTVCksXG4gICAgRk1QX1JFUVVFU1RfQ0FMTEJBQ0s6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuRk1QX1JFUVVFU1RfQ0FMTEJBQ0spLFxuICAgIFBMQVRURVJfRklUOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBMQVRURVJfRklUKSxcbiAgICBJTkZMVUVOQ0VSX1BST01POiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLklORkxVRU5DRVJfUFJPTU8pLFxuICAgIElORkxVRU5DRVJfUkVGRVJSQUw6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuSU5GTFVFTkNFUl9SRUZFUlJBTCksXG4gICAgQ0FUQUxPR1VFX0lURU1TOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNBVEFMT0dVRV9JVEVNUyksXG4gICAgVEhJUkRfUEFSVFlfQVBJX0tFWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5USElSRF9QQVJUWV9BUElfS0VZKSxcblxuICAgIC8vIE9yZGVyIE1vZHVsZSBUYWJsZXNcbiAgICBPUkRFUjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUiksXG4gICAgT1JERVJfQUREUkVTUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUl9BRERSRVNTKSxcbiAgICBPUkRFUl9SRVZJRVc6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuT1JERVJfUkVWSUVXKSxcbiAgICBQQVlNRU5UOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBBWU1FTlQpLFxuICAgIFBMQVRFX09SREVSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBMQVRFX09SREVSKSxcbiAgICBUUkFDS0lORzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5UUkFDS0lORyksXG4gICAgVVNFUl9BRERSRVNTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlVTRVJfQUREUkVTUyksXG4gICAgVVNFUl9TUEVDSUZJQ1M6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVVNFUl9TUEVDSUZJQ1MpLFxuICAgIEJCUV9TS0VXRVJTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkJCUV9TS0VXRVJTKSxcblxuICAgIC8vIE90aGVyIEN1c3RvbWVyIFRhYmxlc1xuICAgIEFERF9PTlM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQUREX09OUyksXG4gICAgQkFOS19ERVRBSUxTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkJBTktfREVUQUlMUyksXG4gICAgQ0FSVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVJUKSxcbiAgICBDQVJUX0NBVEVHT1JJRVM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FSVF9DQVRFR09SSUVTKSxcbiAgICBDQVRFR09SWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVRFR09SWSksXG4gICAgQ0FURVJJTkc6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FURVJJTkcpLFxuICAgIENPTlRFTlQ6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ09OVEVOVCksXG4gICAgQ09VUE9OUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DT1VQT05TKSxcbiAgICBERUZBVUxUX1BMQVRURVI6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuREVGQVVMVF9QTEFUVEVSKSxcbiAgICBERUZBVUxUX1BMQVRURVJfQ0FURUdPUklFUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5ERUZBVUxUX1BMQVRURVJfQ0FURUdPUklFUyksXG4gICAgREVGQVVMVF9QTEFUVEVSX0lURU1TOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkRFRkFVTFRfUExBVFRFUl9JVEVNUyksXG4gICAgRVZFTlRfRVhFQ1VUSVZFUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5FVkVOVF9FWEVDVVRJVkVTKSxcbiAgICBJVEVNUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5JVEVNUyksXG4gICAgTEVBRDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5MRUFEKSxcbiAgICBPQ0NBU0lPTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PQ0NBU0lPTiksXG4gICAgUkVGRVJSQUxfQ09OVEVOVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5SRUZFUlJBTF9DT05URU5UKSxcbiAgICBVU0VSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlVTRVIpLFxuICAgIFdBTExFVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XQUxMRVQpLFxuICAgIFdBTExFVF9UUkFOU0FDVElPTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XQUxMRVRfVFJBTlNBQ1RJT04pLFxuICAgIFdJVEhEUkFXTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XSVRIRFJBV04pLFxuXG4gICAgLy8gSW50ZXJuYWwgVXNlciBUYWJsZXNcbiAgICBJTlRFUk5BTF9VU0VSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLklOVEVSTkFMX1VTRVIpLFxuICAgIEFDVElWSVRZX0xPR1M6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQUNUSVZJVFlfTE9HUyksXG4gICAgUVVPVEFUSU9OUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5RVU9UQVRJT05TKSxcbn0gYXMgY29uc3Q7XG4iXX0=
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3RhYmxlLW5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlEQUFxRDtBQUVyRCxnREFBZ0Q7QUFDbkMsUUFBQSxnQkFBZ0IsR0FBRztJQUM1QixzQkFBc0I7SUFDdEIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxPQUFPLEVBQUUsYUFBYTtJQUN0QixPQUFPLEVBQUUsY0FBYztJQUN2QixtQkFBbUIsRUFBRSx5QkFBeUI7SUFDOUMsT0FBTyxFQUFFLGNBQWM7SUFDdkIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxrQkFBa0IsRUFBRSx1QkFBdUI7SUFDM0MsYUFBYSxFQUFFLG1CQUFtQjtJQUNsQyxvQkFBb0IsRUFBRSx5QkFBeUI7SUFDL0MsZUFBZSxFQUFFLHFCQUFxQjtJQUN0QyxjQUFjLEVBQUUsb0JBQW9CO0lBQ3BDLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLGVBQWUsRUFBRSxxQkFBcUI7SUFDdEMscUJBQXFCLEVBQUUsMEJBQTBCO0lBQ2pELHFCQUFxQixFQUFFLDBCQUEwQjtJQUNqRCxnQkFBZ0IsRUFBRSxzQkFBc0I7SUFDeEMsb0JBQW9CLEVBQUUseUJBQXlCO0lBQy9DLFdBQVcsRUFBRSxpQkFBaUI7SUFDOUIsZ0JBQWdCLEVBQUUsc0JBQXNCO0lBQ3hDLG1CQUFtQixFQUFFLHlCQUF5QjtJQUM5QyxlQUFlLEVBQUUscUJBQXFCO0lBQ3RDLGNBQWMsRUFBRSxvQkFBb0I7SUFDcEMsZUFBZSxFQUFFLHFCQUFxQjtJQUN0QyxtQkFBbUIsRUFBRSx1QkFBdUI7SUFFNUMsc0JBQXNCO0lBQ3RCLEtBQUssRUFBRSxZQUFZO0lBQ25CLGFBQWEsRUFBRSxtQkFBbUI7SUFDbEMsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxPQUFPLEVBQUUsY0FBYztJQUN2QixXQUFXLEVBQUUsaUJBQWlCO0lBQzlCLFFBQVEsRUFBRSxlQUFlO0lBQ3pC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Qyx3QkFBZ0IsQ0FBQyxVQUFVLENBQUM7Q0FDaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGFiYXNlRmFjdG9yeSB9IGZyb20gJy4vZGF0YWJhc2UtZmFjdG9yeSc7XG5cbi8vIEJhc2UgdGFibGUgbmFtZXMgKHdpdGhvdXQgZW52aXJvbm1lbnQgcHJlZml4KVxuZXhwb3J0IGNvbnN0IEJBU0VfVEFCTEVfTkFNRVMgPSB7XG4gICAgLy8gQ3VzdG9tZXIgQXBwIFRhYmxlc1xuICAgIEFQUF9GRUVEQkFDSzogJ0FwcEZlZWRiYWNrVGFibGUnLFxuICAgIExTUV9DUk06ICdMc3FDcm1UYWJsZScsXG4gICAgQ1VUTEVSWTogJ0N1dGxlcnlUYWJsZScsXG4gICAgSVRFTV9BQ0NPTVBBTklNRU5UUzogJ0l0ZW1BY2NvbXBhbmltZW50c1RhYmxlJyxcbiAgICBDVUlTSU5FOiAnQ3Vpc2luZVRhYmxlJyxcbiAgICBUSUVSX0RFVEFJTFM6ICdUaWVyRGV0YWlsc1RhYmxlJyxcbiAgICBVU0VSX09SREVSX1NVTU1BUlk6ICdVc2VyT3JkZXJTdW1tYXJ5VGFibGUnLFxuICAgIFRJRVJfUkVGRVJSQUw6ICdUaWVyUmVmZXJyYWxUYWJsZScsXG4gICAgVVNFUl9BRERSRVNTX1JFUVVFU1Q6ICdVc2VyQWRkcmVzc1JlcXVlc3RUYWJsZScsXG4gICAgQ09NTU9OX0ZFRURCQUNLOiAnQ29tbW9uRmVlZGJhY2tUYWJsZScsXG4gICAgR1VFU1RfRkVFREJBQ0s6ICdHdWVzdEZlZWRiYWNrVGFibGUnLFxuICAgIENPVU5URVI6ICdDb3VudGVyVGFibGUnLFxuICAgIFJFUVVFU1RfSU5WT0lDRTogJ1JlcXVlc3RJbnZvaWNlVGFibGUnLFxuICAgIFBMQVRURVJfU0VBUkNIX0VWRU5UUzogJ1BsYXR0ZXJTZWFyY2hFdmVudHNUYWJsZScsXG4gICAgT1JERVJfUkVWSUVXX0ZFRURCQUNLOiAnT3JkZXJSZXZpZXdGZWVkYmFja1RhYmxlJyxcbiAgICBDQVRFUklOR19SRVFVRVNUOiAnQ2F0ZXJpbmdSZXF1ZXN0VGFibGUnLFxuICAgIEZNUF9SRVFVRVNUX0NBTExCQUNLOiAnRm1wUmVxdWVzdENhbGxiYWNrVGFibGUnLFxuICAgIFBMQVRURVJfRklUOiAnUGxhdHRlckZpdFRhYmxlJyxcbiAgICBJTkZMVUVOQ0VSX1BST01POiAnSW5mbHVlbmNlclByb21vVGFibGUnLFxuICAgIElORkxVRU5DRVJfUkVGRVJSQUw6ICdJbmZsdWVuY2VyUmVmZXJyYWxUYWJsZScsXG4gICAgQ0FUQUxPR1VFX0lURU1TOiAnQ2F0YWxvZ3VlSXRlbXNUYWJsZScsXG4gICAgQlJPV1NFX0hJU1RPUlk6ICdCcm93c2VIaXN0b3J5VGFibGUnLFxuICAgIFRFU1RJTkdfU0VTU0lPTjogJ1Rlc3RpbmdTZXNzaW9uVGFibGUnLFxuICAgIFRISVJEX1BBUlRZX0FQSV9LRVk6ICdUaGlyZFBhcnR5QXBpS2V5VGFibGUnLFxuXG4gICAgLy8gT3JkZXIgTW9kdWxlIFRhYmxlc1xuICAgIE9SREVSOiAnT3JkZXJUYWJsZScsXG4gICAgT1JERVJfQUREUkVTUzogJ09yZGVyQWRkcmVzc1RhYmxlJyxcbiAgICBPUkRFUl9SRVZJRVc6ICdPcmRlclJldmlld1RhYmxlJyxcbiAgICBQQVlNRU5UOiAnUGF5bWVudFRhYmxlJyxcbiAgICBQTEFURV9PUkRFUjogJ1BsYXRlT3JkZXJUYWJsZScsXG4gICAgVFJBQ0tJTkc6ICdUcmFja2luZ1RhYmxlJyxcbiAgICBVU0VSX0FERFJFU1M6ICdVc2VyQWRkcmVzc1RhYmxlJyxcbiAgICBVU0VSX1NQRUNJRklDUzogJ1VzZXJTcGVjaWZpY3NUYWJsZScsXG4gICAgQkJRX1NLRVdFUlM6ICdCYnFTa2V3ZXJzVGFibGUnLFxuXG4gICAgLy8gT3RoZXIgQ3VzdG9tZXIgVGFibGVzXG4gICAgQUREX09OUzogJ0FkZE9uc1RhYmxlJyxcbiAgICBCQU5LX0RFVEFJTFM6ICdCYW5rRGV0YWlsc1RhYmxlJyxcbiAgICBDQVJUOiAnQ2FydFRhYmxlJyxcbiAgICBDQVJUX0NBVEVHT1JJRVM6ICdDYXJ0Q2F0ZWdvcmllc1RhYmxlJyxcbiAgICBDQVRFR09SWTogJ0NhdGVnb3J5VGFibGUnLFxuICAgIENBVEVSSU5HOiAnQ2F0ZXJpbmdUYWJsZScsXG4gICAgQ09OVEVOVDogJ0NvbnRlbnRUYWJsZScsXG4gICAgQ09VUE9OUzogJ0NvdXBvbnNUYWJsZScsXG4gICAgREVGQVVMVF9QTEFUVEVSOiAnRGVmYXVsdFBsYXR0ZXJUYWJsZScsXG4gICAgREVGQVVMVF9QTEFUVEVSX0NBVEVHT1JJRVM6ICdEZWZhdWx0UGxhdHRlckNhdGVnb3JpZXNUYWJsZScsXG4gICAgREVGQVVMVF9QTEFUVEVSX0lURU1TOiAnRGVmYXVsdFBsYXR0ZXJJdGVtc1RhYmxlJyxcbiAgICBFVkVOVF9FWEVDVVRJVkVTOiAnRXZlbnRFeGVjdXRpdmVzVGFibGUnLFxuICAgIElURU1TOiAnSXRlbXNUYWJsZScsXG4gICAgTEVBRDogJ0xlYWRUYWJsZScsXG4gICAgT0NDQVNJT046ICdPY2Nhc2lvblRhYmxlJyxcbiAgICBSRUZFUlJBTF9DT05URU5UOiAnUmVmZXJyYWxDb250ZW50VGFibGUnLFxuICAgIFVTRVI6ICdVc2VyVGFibGUnLFxuICAgIFdBTExFVDogJ1dhbGxldFRhYmxlJyxcbiAgICBXQUxMRVRfVFJBTlNBQ1RJT046ICdXYWxsZXRUcmFuc2FjdGlvblRhYmxlJyxcbiAgICBXSVRIRFJBV046ICdXaXRoZHJhd25UYWJsZScsXG5cbiAgICAvLyBJbnRlcm5hbCBVc2VyIFRhYmxlc1xuICAgIElOVEVSTkFMX1VTRVI6ICdJbnRlcm5hbFVzZXJUYWJsZScsXG4gICAgQUNUSVZJVFlfTE9HUzogJ0FjdGl2aXR5TG9nc1RhYmxlJyxcbiAgICBRVU9UQVRJT05TOiAnUXVvdGF0aW9uc1RhYmxlJyxcbn0gYXMgY29uc3Q7XG5cbi8vIEVudmlyb25tZW50LWF3YXJlIHRhYmxlIG5hbWUgZ2V0dGVyXG5leHBvcnQgY2xhc3MgVGFibGVOYW1lTWFuYWdlciB7XG4gICAgcHVibGljIHN0YXRpYyBnZXRUYWJsZU5hbWUoYmFzZVRhYmxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIERhdGFiYXNlRmFjdG9yeS5nZXRUYWJsZU5hbWUoYmFzZVRhYmxlTmFtZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRBbGxUYWJsZU5hbWVzKCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICAgICAgICBjb25zdCB0YWJsZU5hbWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG5cbiAgICAgICAgT2JqZWN0LmVudHJpZXMoQkFTRV9UQUJMRV9OQU1FUykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICB0YWJsZU5hbWVzW2tleV0gPSB0aGlzLmdldFRhYmxlTmFtZSh2YWx1ZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0YWJsZU5hbWVzO1xuICAgIH1cbn1cblxuLy8gRXhwb3J0IGVudmlyb25tZW50LWF3YXJlIHRhYmxlIG5hbWVzXG5leHBvcnQgY29uc3QgVEFCTEVfTkFNRVMgPSB7XG4gICAgLy8gQ3VzdG9tZXIgQXBwIFRhYmxlc1xuICAgIEFQUF9GRUVEQkFDSzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5BUFBfRkVFREJBQ0spLFxuICAgIExTUV9DUk06IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuTFNRX0NSTSksXG4gICAgQ1VUTEVSWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DVVRMRVJZKSxcbiAgICBJVEVNX0FDQ09NUEFOSU1FTlRTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLklURU1fQUNDT01QQU5JTUVOVFMpLFxuICAgIENVSVNJTkU6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ1VJU0lORSksXG4gICAgVElFUl9ERVRBSUxTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlRJRVJfREVUQUlMUyksXG4gICAgVVNFUl9PUkRFUl9TVU1NQVJZOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlVTRVJfT1JERVJfU1VNTUFSWSksXG4gICAgVElFUl9SRUZFUlJBTDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5USUVSX1JFRkVSUkFMKSxcbiAgICBVU0VSX0FERFJFU1NfUkVRVUVTVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5VU0VSX0FERFJFU1NfUkVRVUVTVCksXG4gICAgQ09NTU9OX0ZFRURCQUNLOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNPTU1PTl9GRUVEQkFDSyksXG4gICAgR1VFU1RfRkVFREJBQ0s6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuR1VFU1RfRkVFREJBQ0spLFxuICAgIENPVU5URVI6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ09VTlRFUiksXG4gICAgUkVRVUVTVF9JTlZPSUNFOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlJFUVVFU1RfSU5WT0lDRSksXG4gICAgUExBVFRFUl9TRUFSQ0hfRVZFTlRTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBMQVRURVJfU0VBUkNIX0VWRU5UUyksXG4gICAgT1JERVJfUkVWSUVXX0ZFRURCQUNLOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLk9SREVSX1JFVklFV19GRUVEQkFDSyksXG4gICAgQ0FURVJJTkdfUkVRVUVTVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVRFUklOR19SRVFVRVNUKSxcbiAgICBGTVBfUkVRVUVTVF9DQUxMQkFDSzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5GTVBfUkVRVUVTVF9DQUxMQkFDSyksXG4gICAgUExBVFRFUl9GSVQ6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuUExBVFRFUl9GSVQpLFxuICAgIElORkxVRU5DRVJfUFJPTU86IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuSU5GTFVFTkNFUl9QUk9NTyksXG4gICAgSU5GTFVFTkNFUl9SRUZFUlJBTDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5JTkZMVUVOQ0VSX1JFRkVSUkFMKSxcbiAgICBDQVRBTE9HVUVfSVRFTVM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FUQUxPR1VFX0lURU1TKSxcbiAgICBCUk9XU0VfSElTVE9SWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5CUk9XU0VfSElTVE9SWSksXG4gICAgVEVTVElOR19TRVNTSU9OOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlRFU1RJTkdfU0VTU0lPTiksXG4gICAgVEhJUkRfUEFSVFlfQVBJX0tFWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5USElSRF9QQVJUWV9BUElfS0VZKSxcblxuICAgIC8vIE9yZGVyIE1vZHVsZSBUYWJsZXNcbiAgICBPUkRFUjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUiksXG4gICAgT1JERVJfQUREUkVTUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUl9BRERSRVNTKSxcbiAgICBPUkRFUl9SRVZJRVc6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuT1JERVJfUkVWSUVXKSxcbiAgICBQQVlNRU5UOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBBWU1FTlQpLFxuICAgIFBMQVRFX09SREVSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBMQVRFX09SREVSKSxcbiAgICBUUkFDS0lORzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5UUkFDS0lORyksXG4gICAgVVNFUl9BRERSRVNTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlVTRVJfQUREUkVTUyksXG4gICAgVVNFUl9TUEVDSUZJQ1M6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVVNFUl9TUEVDSUZJQ1MpLFxuICAgIEJCUV9TS0VXRVJTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkJCUV9TS0VXRVJTKSxcblxuICAgIC8vIE90aGVyIEN1c3RvbWVyIFRhYmxlc1xuICAgIEFERF9PTlM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQUREX09OUyksXG4gICAgQkFOS19ERVRBSUxTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkJBTktfREVUQUlMUyksXG4gICAgQ0FSVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVJUKSxcbiAgICBDQVJUX0NBVEVHT1JJRVM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FSVF9DQVRFR09SSUVTKSxcbiAgICBDQVRFR09SWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVRFR09SWSksXG4gICAgQ0FURVJJTkc6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FURVJJTkcpLFxuICAgIENPTlRFTlQ6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ09OVEVOVCksXG4gICAgQ09VUE9OUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DT1VQT05TKSxcbiAgICBERUZBVUxUX1BMQVRURVI6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuREVGQVVMVF9QTEFUVEVSKSxcbiAgICBERUZBVUxUX1BMQVRURVJfQ0FURUdPUklFUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5ERUZBVUxUX1BMQVRURVJfQ0FURUdPUklFUyksXG4gICAgREVGQVVMVF9QTEFUVEVSX0lURU1TOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkRFRkFVTFRfUExBVFRFUl9JVEVNUyksXG4gICAgRVZFTlRfRVhFQ1VUSVZFUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5FVkVOVF9FWEVDVVRJVkVTKSxcbiAgICBJVEVNUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5JVEVNUyksXG4gICAgTEVBRDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5MRUFEKSxcbiAgICBPQ0NBU0lPTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PQ0NBU0lPTiksXG4gICAgUkVGRVJSQUxfQ09OVEVOVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5SRUZFUlJBTF9DT05URU5UKSxcbiAgICBVU0VSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlVTRVIpLFxuICAgIFdBTExFVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XQUxMRVQpLFxuICAgIFdBTExFVF9UUkFOU0FDVElPTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XQUxMRVRfVFJBTlNBQ1RJT04pLFxuICAgIFdJVEhEUkFXTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XSVRIRFJBV04pLFxuXG4gICAgLy8gSW50ZXJuYWwgVXNlciBUYWJsZXNcbiAgICBJTlRFUk5BTF9VU0VSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLklOVEVSTkFMX1VTRVIpLFxuICAgIEFDVElWSVRZX0xPR1M6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQUNUSVZJVFlfTE9HUyksXG4gICAgUVVPVEFUSU9OUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5RVU9UQVRJT05TKSxcbn0gYXMgY29uc3Q7XG4iXX0=
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import { GenericDynamooseDAO } from "../../base-dynamoose-dao";
|
|
2
|
+
import { AuthContext } from "../../base-dynamoose-model";
|
|
3
|
+
import { BrowseHistory, CreateBrowseHistoryInput } from "./browse-history-model";
|
|
4
|
+
type ListResult = {
|
|
5
|
+
items: BrowseHistory[];
|
|
6
|
+
nextToken?: string;
|
|
7
|
+
};
|
|
8
|
+
export type BrowseHistorySortField = "created_time" | "updated_time";
|
|
9
|
+
export type BrowseHistorySortOrder = "asc" | "desc";
|
|
10
|
+
/**
|
|
11
|
+
* DAO for user platter browse history.
|
|
12
|
+
*
|
|
13
|
+
* Table keys: `browsHistoryId` (PK).
|
|
14
|
+
* User lookup: query GSI `userIdIndex` by `userId`.
|
|
15
|
+
*/
|
|
16
|
+
declare class BrowseHistoryDao extends GenericDynamooseDAO<BrowseHistory> {
|
|
17
|
+
constructor();
|
|
18
|
+
/**
|
|
19
|
+
* Creates one browse-history record.
|
|
20
|
+
*
|
|
21
|
+
* Use when: user views a platter and you want to persist that browse event.
|
|
22
|
+
* - `browsHistoryId` auto-generates if omitted.
|
|
23
|
+
* - `userId` is required for later `getByUserId` / `listByUserId` lookups.
|
|
24
|
+
* - Stamps `created_time` / `created_user` automatically.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* await browsHistoryDao.save({
|
|
28
|
+
* userId: "user-123",
|
|
29
|
+
* platterId: "platter-abc",
|
|
30
|
+
* platterName: "Birthday Feast",
|
|
31
|
+
* platterType: "CATERING",
|
|
32
|
+
* platterPrice: 4999,
|
|
33
|
+
* totalItems: 12,
|
|
34
|
+
* menuType: "VEG",
|
|
35
|
+
* mealTime: "Dinner",
|
|
36
|
+
* platterImage: "https://...",
|
|
37
|
+
* replaceItemIds: [{ originalItemId: "item-1", replaceItemId: "item-2" }],
|
|
38
|
+
* addonIds: [],
|
|
39
|
+
* cutleryIds: [],
|
|
40
|
+
* liveCounterIds: [],
|
|
41
|
+
* skewerAddonIds: []
|
|
42
|
+
* }, { userSub: "user-123" });
|
|
43
|
+
*/
|
|
44
|
+
save: (item: CreateBrowseHistoryInput, authContext?: AuthContext) => Promise<BrowseHistory>;
|
|
45
|
+
/**
|
|
46
|
+
* Updates one browse-history record by `browsHistoryId`.
|
|
47
|
+
*
|
|
48
|
+
* Use when: user re-visits same platter and you need to update selections or metadata.
|
|
49
|
+
* - Fails if the record does not exist.
|
|
50
|
+
* - Stamps `updated_time` / `updated_user` automatically.
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* await browsHistoryDao.update(
|
|
54
|
+
* "brows-history-uuid",
|
|
55
|
+
* { addonIds: ["addon-1", "addon-2"], platterPrice: 5499 },
|
|
56
|
+
* { userSub: "user-123" }
|
|
57
|
+
* );
|
|
58
|
+
*/
|
|
59
|
+
update: (browseHistoryId: string, updates: Partial<BrowseHistory>, authContext?: AuthContext) => Promise<BrowseHistory>;
|
|
60
|
+
/**
|
|
61
|
+
* Fetches one browse-history record by primary key.
|
|
62
|
+
*
|
|
63
|
+
* Use when: detail screen already has `browsHistoryId` from a previous list response.
|
|
64
|
+
* Returns `null` when record is not found.
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* const item = await browsHistoryDao.getById("brows-history-uuid");
|
|
68
|
+
*/
|
|
69
|
+
getById: (browseHistoryId: string) => Promise<BrowseHistory | null>;
|
|
70
|
+
/**
|
|
71
|
+
* Returns browse-history for a user with optional sort and limit.
|
|
72
|
+
*
|
|
73
|
+
* Use when: showing "Recently Viewed" or full browse history on home/profile screen.
|
|
74
|
+
* - Queries all pages from GSI `userIdIndex`, then sorts in memory.
|
|
75
|
+
* - Pass `sortBy` as `"created_time"` or `"updated_time"` to order results.
|
|
76
|
+
* - Default `sortOrder` is `"desc"` (newest first).
|
|
77
|
+
* - `limit` is applied after sorting so latest N items are returned correctly.
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* // Latest 10 browsed platters (most recently updated first)
|
|
81
|
+
* const recent = await browsHistoryDao.getByUserId("user-123", 10, "updated_time");
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* // Oldest viewed first
|
|
85
|
+
* const oldestFirst = await browsHistoryDao.getByUserId("user-123", undefined, "created_time", "asc");
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* // All history without sorting (raw DynamoDB order)
|
|
89
|
+
* const all = await browsHistoryDao.getByUserId("user-123");
|
|
90
|
+
*/
|
|
91
|
+
getByUserId: (userId: string, limit?: number, sortBy?: BrowseHistorySortField, sortOrder?: BrowseHistorySortOrder) => Promise<BrowseHistory[]>;
|
|
92
|
+
/**
|
|
93
|
+
* Reads timestamp from audit field used for in-memory sorting.
|
|
94
|
+
*/
|
|
95
|
+
private getBrowsHistorySortTime;
|
|
96
|
+
/**
|
|
97
|
+
* Sorts browse-history items by `created_time` or `updated_time`.
|
|
98
|
+
*/
|
|
99
|
+
private sortBrowsHistoryItems;
|
|
100
|
+
/**
|
|
101
|
+
* Paginated query on GSI `userIdIndex`.
|
|
102
|
+
*
|
|
103
|
+
* Use when: infinite scroll / load-more UI where you pass `nextToken` from previous response.
|
|
104
|
+
* For sorted "recent N" views prefer `getByUserId` instead.
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* const page1 = await browsHistoryDao.listByUserId("user-123", 20);
|
|
108
|
+
* const page2 = await browsHistoryDao.listByUserId("user-123", 20, page1.nextToken);
|
|
109
|
+
*/
|
|
110
|
+
listByUserId: (userId: string, limit?: number, token?: string) => Promise<ListResult>;
|
|
111
|
+
/**
|
|
112
|
+
* Deletes one browse-history record by primary key.
|
|
113
|
+
*
|
|
114
|
+
* Use when: user clears a single item from browse history.
|
|
115
|
+
*
|
|
116
|
+
* @example
|
|
117
|
+
* await browsHistoryDao.deleteById("brows-history-uuid");
|
|
118
|
+
*/
|
|
119
|
+
deleteById: (browsHistoryId: string) => Promise<void>;
|
|
120
|
+
}
|
|
121
|
+
export declare const browseHistoryDao: BrowseHistoryDao;
|
|
122
|
+
export {};
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.browseHistoryDao = void 0;
|
|
7
|
+
const dynamoose_1 = __importDefault(require("dynamoose"));
|
|
8
|
+
const base_dynamoose_dao_1 = require("../../base-dynamoose-dao");
|
|
9
|
+
const browse_history_model_1 = require("./browse-history-model");
|
|
10
|
+
/**
|
|
11
|
+
* DAO for user platter browse history.
|
|
12
|
+
*
|
|
13
|
+
* Table keys: `browsHistoryId` (PK).
|
|
14
|
+
* User lookup: query GSI `userIdIndex` by `userId`.
|
|
15
|
+
*/
|
|
16
|
+
class BrowseHistoryDao extends base_dynamoose_dao_1.GenericDynamooseDAO {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(browse_history_model_1.BrowseHistoryModel, "browseHistoryId");
|
|
19
|
+
/**
|
|
20
|
+
* Creates one browse-history record.
|
|
21
|
+
*
|
|
22
|
+
* Use when: user views a platter and you want to persist that browse event.
|
|
23
|
+
* - `browsHistoryId` auto-generates if omitted.
|
|
24
|
+
* - `userId` is required for later `getByUserId` / `listByUserId` lookups.
|
|
25
|
+
* - Stamps `created_time` / `created_user` automatically.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* await browsHistoryDao.save({
|
|
29
|
+
* userId: "user-123",
|
|
30
|
+
* platterId: "platter-abc",
|
|
31
|
+
* platterName: "Birthday Feast",
|
|
32
|
+
* platterType: "CATERING",
|
|
33
|
+
* platterPrice: 4999,
|
|
34
|
+
* totalItems: 12,
|
|
35
|
+
* menuType: "VEG",
|
|
36
|
+
* mealTime: "Dinner",
|
|
37
|
+
* platterImage: "https://...",
|
|
38
|
+
* replaceItemIds: [{ originalItemId: "item-1", replaceItemId: "item-2" }],
|
|
39
|
+
* addonIds: [],
|
|
40
|
+
* cutleryIds: [],
|
|
41
|
+
* liveCounterIds: [],
|
|
42
|
+
* skewerAddonIds: []
|
|
43
|
+
* }, { userSub: "user-123" });
|
|
44
|
+
*/
|
|
45
|
+
this.save = async (item, authContext) => {
|
|
46
|
+
return super.save(item, authContext);
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Updates one browse-history record by `browsHistoryId`.
|
|
50
|
+
*
|
|
51
|
+
* Use when: user re-visits same platter and you need to update selections or metadata.
|
|
52
|
+
* - Fails if the record does not exist.
|
|
53
|
+
* - Stamps `updated_time` / `updated_user` automatically.
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* await browsHistoryDao.update(
|
|
57
|
+
* "brows-history-uuid",
|
|
58
|
+
* { addonIds: ["addon-1", "addon-2"], platterPrice: 5499 },
|
|
59
|
+
* { userSub: "user-123" }
|
|
60
|
+
* );
|
|
61
|
+
*/
|
|
62
|
+
this.update = async (browseHistoryId, updates, authContext) => {
|
|
63
|
+
const updated = await browse_history_model_1.BrowseHistoryModel.update({ browseHistoryId }, {
|
|
64
|
+
...updates,
|
|
65
|
+
updated_time: new Date(),
|
|
66
|
+
updated_user: authContext?.userSub
|
|
67
|
+
}, {
|
|
68
|
+
condition: new dynamoose_1.default.Condition().attribute("browseHistoryId").exists()
|
|
69
|
+
});
|
|
70
|
+
return updated;
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* Fetches one browse-history record by primary key.
|
|
74
|
+
*
|
|
75
|
+
* Use when: detail screen already has `browsHistoryId` from a previous list response.
|
|
76
|
+
* Returns `null` when record is not found.
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* const item = await browsHistoryDao.getById("brows-history-uuid");
|
|
80
|
+
*/
|
|
81
|
+
this.getById = async (browseHistoryId) => this.get(browseHistoryId);
|
|
82
|
+
/**
|
|
83
|
+
* Returns browse-history for a user with optional sort and limit.
|
|
84
|
+
*
|
|
85
|
+
* Use when: showing "Recently Viewed" or full browse history on home/profile screen.
|
|
86
|
+
* - Queries all pages from GSI `userIdIndex`, then sorts in memory.
|
|
87
|
+
* - Pass `sortBy` as `"created_time"` or `"updated_time"` to order results.
|
|
88
|
+
* - Default `sortOrder` is `"desc"` (newest first).
|
|
89
|
+
* - `limit` is applied after sorting so latest N items are returned correctly.
|
|
90
|
+
*
|
|
91
|
+
* @example
|
|
92
|
+
* // Latest 10 browsed platters (most recently updated first)
|
|
93
|
+
* const recent = await browsHistoryDao.getByUserId("user-123", 10, "updated_time");
|
|
94
|
+
*
|
|
95
|
+
* @example
|
|
96
|
+
* // Oldest viewed first
|
|
97
|
+
* const oldestFirst = await browsHistoryDao.getByUserId("user-123", undefined, "created_time", "asc");
|
|
98
|
+
*
|
|
99
|
+
* @example
|
|
100
|
+
* // All history without sorting (raw DynamoDB order)
|
|
101
|
+
* const all = await browsHistoryDao.getByUserId("user-123");
|
|
102
|
+
*/
|
|
103
|
+
this.getByUserId = async (userId, limit, sortBy, sortOrder = "desc") => {
|
|
104
|
+
const items = [];
|
|
105
|
+
let token;
|
|
106
|
+
do {
|
|
107
|
+
const result = await this.listByUserId(userId, undefined, token);
|
|
108
|
+
items.push(...result.items);
|
|
109
|
+
token = result.nextToken;
|
|
110
|
+
} while (token);
|
|
111
|
+
const sortedItems = this.sortBrowsHistoryItems(items, sortBy, sortOrder);
|
|
112
|
+
return typeof limit === "number" ? sortedItems.slice(0, limit) : sortedItems;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* Reads timestamp from audit field used for in-memory sorting.
|
|
116
|
+
*/
|
|
117
|
+
this.getBrowsHistorySortTime = (item, field) => {
|
|
118
|
+
const value = item[field];
|
|
119
|
+
if (!value) {
|
|
120
|
+
return 0;
|
|
121
|
+
}
|
|
122
|
+
return value instanceof Date ? value.getTime() : new Date(value).getTime();
|
|
123
|
+
};
|
|
124
|
+
/**
|
|
125
|
+
* Sorts browse-history items by `created_time` or `updated_time`.
|
|
126
|
+
*/
|
|
127
|
+
this.sortBrowsHistoryItems = (items, sortBy, sortOrder = "desc") => {
|
|
128
|
+
if (!sortBy) {
|
|
129
|
+
return items;
|
|
130
|
+
}
|
|
131
|
+
const direction = sortOrder === "asc" ? 1 : -1;
|
|
132
|
+
return [...items].sort((a, b) => (this.getBrowsHistorySortTime(a, sortBy) - this.getBrowsHistorySortTime(b, sortBy)) * direction);
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* Paginated query on GSI `userIdIndex`.
|
|
136
|
+
*
|
|
137
|
+
* Use when: infinite scroll / load-more UI where you pass `nextToken` from previous response.
|
|
138
|
+
* For sorted "recent N" views prefer `getByUserId` instead.
|
|
139
|
+
*
|
|
140
|
+
* @example
|
|
141
|
+
* const page1 = await browsHistoryDao.listByUserId("user-123", 20);
|
|
142
|
+
* const page2 = await browsHistoryDao.listByUserId("user-123", 20, page1.nextToken);
|
|
143
|
+
*/
|
|
144
|
+
this.listByUserId = async (userId, limit, token) => {
|
|
145
|
+
const decodedToken = this.decode(token);
|
|
146
|
+
let queryBuilder = browse_history_model_1.BrowseHistoryModel.query("userId").eq(userId).using("userIdIndex");
|
|
147
|
+
if (decodedToken) {
|
|
148
|
+
queryBuilder = queryBuilder.startAt(decodedToken);
|
|
149
|
+
}
|
|
150
|
+
if (typeof limit === "number") {
|
|
151
|
+
queryBuilder = queryBuilder.limit(limit);
|
|
152
|
+
}
|
|
153
|
+
const queryResult = await queryBuilder.exec();
|
|
154
|
+
return {
|
|
155
|
+
items: queryResult,
|
|
156
|
+
nextToken: await this.encode(queryResult.lastKey)
|
|
157
|
+
};
|
|
158
|
+
};
|
|
159
|
+
/**
|
|
160
|
+
* Deletes one browse-history record by primary key.
|
|
161
|
+
*
|
|
162
|
+
* Use when: user clears a single item from browse history.
|
|
163
|
+
*
|
|
164
|
+
* @example
|
|
165
|
+
* await browsHistoryDao.deleteById("brows-history-uuid");
|
|
166
|
+
*/
|
|
167
|
+
this.deleteById = async (browsHistoryId) => {
|
|
168
|
+
await this.delete(browsHistoryId);
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
exports.browseHistoryDao = new BrowseHistoryDao();
|
|
173
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlLWhpc3RvcnktZGFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2N1c3RvbWVyLXVzZXIvYnJvd3NlLWhpc3RvcnkvYnJvd3NlLWhpc3RvcnktZGFvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDBEQUFrQztBQUNsQyxpRUFBMEU7QUFFMUUsaUVBSWdDO0FBVWhDOzs7OztHQUtHO0FBQ0gsTUFBTSxnQkFBaUIsU0FBUSx3Q0FBa0M7SUFDN0Q7UUFDSSxLQUFLLENBQUMseUNBQWtCLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUdqRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztXQXlCRztRQUNILFNBQUksR0FBRyxLQUFLLEVBQUUsSUFBOEIsRUFBRSxXQUF5QixFQUEwQixFQUFFO1lBQy9GLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFxQixFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzFELENBQUMsQ0FBQztRQUVGOzs7Ozs7Ozs7Ozs7O1dBYUc7UUFDSCxXQUFNLEdBQUcsS0FBSyxFQUNWLGVBQXVCLEVBQ3ZCLE9BQStCLEVBQy9CLFdBQXlCLEVBQ0gsRUFBRTtZQUN4QixNQUFNLE9BQU8sR0FBRyxNQUFNLHlDQUFrQixDQUFDLE1BQU0sQ0FDM0MsRUFBRSxlQUFlLEVBQUUsRUFDbkI7Z0JBQ0ksR0FBRyxPQUFPO2dCQUNWLFlBQVksRUFBRSxJQUFJLElBQUksRUFBRTtnQkFDeEIsWUFBWSxFQUFFLFdBQVcsRUFBRSxPQUFPO2FBQ3JDLEVBQ0Q7Z0JBQ0ksU0FBUyxFQUFFLElBQUksbUJBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxNQUFNLEVBQUU7YUFDN0UsQ0FDSixDQUFDO1lBQ0YsT0FBTyxPQUFtQyxDQUFDO1FBQy9DLENBQUMsQ0FBQztRQUVGOzs7Ozs7OztXQVFHO1FBQ0gsWUFBTyxHQUFHLEtBQUssRUFBRSxlQUF1QixFQUFpQyxF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QUFDO1lBQzdDLENBQUM7WUFDRCxNQUFNLFdBQVcsR0FBRyxNQUFNLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM5QyxPQUFPO2dCQUNILEtBQUssRUFBRSxXQUF5QztnQkFDaEQsU0FBUyxFQUFFLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBZ0MsQ0FBQzthQUM3RSxDQUFDO1FBQ04sQ0FBQyxDQUFDO1FBRUY7Ozs7Ozs7V0FPRztRQUNILGVBQVUsR0FBRyxLQUFLLEVBQUUsY0FBc0IsRUFBaUIsRUFBRTtZQUN6RCxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDO0lBckxGLENBQUM7Q0FzTEo7QUFFWSxRQUFBLGdCQUFnQixHQUFHLElBQUksZ0JBQWdCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkeW5hbW9vc2UgZnJvbSBcImR5bmFtb29zZVwiO1xuaW1wb3J0IHsgRHluYW1vS2V5LCBHZW5lcmljRHluYW1vb3NlREFPIH0gZnJvbSBcIi4uLy4uL2Jhc2UtZHluYW1vb3NlLWRhb1wiO1xuaW1wb3J0IHsgQXV0aENvbnRleHQgfSBmcm9tIFwiLi4vLi4vYmFzZS1keW5hbW9vc2UtbW9kZWxcIjtcbmltcG9ydCB7XG4gICAgQnJvd3NlSGlzdG9yeSxcbiAgICBCcm93c2VIaXN0b3J5TW9kZWwsXG4gICAgQ3JlYXRlQnJvd3NlSGlzdG9yeUlucHV0XG59IGZyb20gXCIuL2Jyb3dzZS1oaXN0b3J5LW1vZGVsXCI7XG5cbnR5cGUgTGlzdFJlc3VsdCA9IHtcbiAgICBpdGVtczogQnJvd3NlSGlzdG9yeVtdO1xuICAgIG5leHRUb2tlbj86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEJyb3dzZUhpc3RvcnlTb3J0RmllbGQgPSBcImNyZWF0ZWRfdGltZVwiIHwgXCJ1cGRhdGVkX3RpbWVcIjtcbmV4cG9ydCB0eXBlIEJyb3dzZUhpc3RvcnlTb3J0T3JkZXIgPSBcImFzY1wiIHwgXCJkZXNjXCI7XG5cbi8qKlxuICogREFPIGZvciB1c2VyIHBsYXR0ZXIgYnJvd3NlIGhpc3RvcnkuXG4gKlxuICogVGFibGUga2V5czogYGJyb3dzSGlzdG9yeUlkYCAoUEspLlxuICogVXNlciBsb29rdXA6IHF1ZXJ5IEdTSSBgdXNlcklkSW5kZXhgIGJ5IGB1c2VySWRgLlxuICovXG5jbGFzcyBCcm93c2VIaXN0b3J5RGFvIGV4dGVuZHMgR2VuZXJpY0R5bmFtb29zZURBTzxCcm93c2VIaXN0b3J5PiB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKEJyb3dzZUhpc3RvcnlNb2RlbCwgXCJicm93c2VIaXN0b3J5SWRcIik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBvbmUgYnJvd3NlLWhpc3RvcnkgcmVjb3JkLlxuICAgICAqXG4gICAgICogVXNlIHdoZW46IHVzZXIgdmlld3MgYSBwbGF0dGVyIGFuZCB5b3Ugd2FudCB0byBwZXJzaXN0IHRoYXQgYnJvd3NlIGV2ZW50LlxuICAgICAqIC0gYGJyb3dzSGlzdG9yeUlkYCBhdXRvLWdlbmVyYXRlcyBpZiBvbWl0dGVkLlxuICAgICAqIC0gYHVzZXJJZGAgaXMgcmVxdWlyZWQgZm9yIGxhdGVyIGBnZXRCeVVzZXJJZGAgLyBgbGlzdEJ5VXNlcklkYCBsb29rdXBzLlxuICAgICAqIC0gU3RhbXBzIGBjcmVhdGVkX3RpbWVgIC8gYGNyZWF0ZWRfdXNlcmAgYXV0b21hdGljYWxseS5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogYXdhaXQgYnJvd3NIaXN0b3J5RGFvLnNhdmUoe1xuICAgICAqICAgICB1c2VySWQ6IFwidXNlci0xMjNcIixcbiAgICAgKiAgICAgcGxhdHRlcklkOiBcInBsYXR0ZXItYWJjXCIsXG4gICAgICogICAgIHBsYXR0ZXJOYW1lOiBcIkJpcnRoZGF5IEZlYXN0XCIsXG4gICAgICogICAgIHBsYXR0ZXJUeXBlOiBcIkNBVEVSSU5HXCIsXG4gICAgICogICAgIHBsYXR0ZXJQcmljZTogNDk5OSxcbiAgICAgKiAgICAgdG90YWxJdGVtczogMTIsXG4gICAgICogICAgIG1lbnVUeXBlOiBcIlZFR1wiLFxuICAgICAqICAgICBtZWFsVGltZTogXCJEaW5uZXJcIixcbiAgICAgKiAgICAgcGxhdHRlckltYWdlOiBcImh0dHBzOi8vLi4uXCIsXG4gICAgICogICAgIHJlcGxhY2VJdGVtSWRzOiBbeyBvcmlnaW5hbEl0ZW1JZDogXCJpdGVtLTFcIiwgcmVwbGFjZUl0ZW1JZDogXCJpdGVtLTJcIiB9XSxcbiAgICAgKiAgICAgYWRkb25JZHM6IFtdLFxuICAgICAqICAgICBjdXRsZXJ5SWRzOiBbXSxcbiAgICAgKiAgICAgbGl2ZUNvdW50ZXJJZHM6IFtdLFxuICAgICAqICAgICBza2V3ZXJBZGRvbklkczogW11cbiAgICAgKiB9LCB7IHVzZXJTdWI6IFwidXNlci0xMjNcIiB9KTtcbiAgICAgKi9cbiAgICBzYXZlID0gYXN5bmMgKGl0ZW06IENyZWF0ZUJyb3dzZUhpc3RvcnlJbnB1dCwgYXV0aENvbnRleHQ/OiBBdXRoQ29udGV4dCk6IFByb21pc2U8QnJvd3NlSGlzdG9yeT4gPT4ge1xuICAgICAgICByZXR1cm4gc3VwZXIuc2F2ZShpdGVtIGFzIEJyb3dzZUhpc3RvcnksIGF1dGhDb250ZXh0KTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyBvbmUgYnJvd3NlLWhpc3RvcnkgcmVjb3JkIGJ5IGBicm93c0hpc3RvcnlJZGAuXG4gICAgICpcbiAgICAgKiBVc2Ugd2hlbjogdXNlciByZS12aXNpdHMgc2FtZSBwbGF0dGVyIGFuZCB5b3UgbmVlZCB0byB1cGRhdGUgc2VsZWN0aW9ucyBvciBtZXRhZGF0YS5cbiAgICAgKiAtIEZhaWxzIGlmIHRoZSByZWNvcmQgZG9lcyBub3QgZXhpc3QuXG4gICAgICogLSBTdGFtcHMgYHVwZGF0ZWRfdGltZWAgLyBgdXBkYXRlZF91c2VyYCBhdXRvbWF0aWNhbGx5LlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBhd2FpdCBicm93c0hpc3RvcnlEYW8udXBkYXRlKFxuICAgICAqICAgICBcImJyb3dzLWhpc3RvcnktdXVpZFwiLFxuICAgICAqICAgICB7IGFkZG9uSWRzOiBbXCJhZGRvbi0xXCIsIFwiYWRkb24tMlwiXSwgcGxhdHRlclByaWNlOiA1NDk5IH0sXG4gICAgICogICAgIHsgdXNlclN1YjogXCJ1c2VyLTEyM1wiIH1cbiAgICAgKiApO1xuICAgICAqL1xuICAgIHVwZGF0ZSA9IGFzeW5jIChcbiAgICAgICAgYnJvd3NlSGlzdG9yeUlkOiBzdHJpbmcsXG4gICAgICAgIHVwZGF0ZXM6IFBhcnRpYWw8QnJvd3NlSGlzdG9yeT4sXG4gICAgICAgIGF1dGhDb250ZXh0PzogQXV0aENvbnRleHRcbiAgICApOiBQcm9taXNlPEJyb3dzZUhpc3Rvcnk+ID0+IHtcbiAgICAgICAgY29uc3QgdXBkYXRlZCA9IGF3YWl0IEJyb3dzZUhpc3RvcnlNb2RlbC51cGRhdGUoXG4gICAgICAgICAgICB7IGJyb3dzZUhpc3RvcnlJZCB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIC4uLnVwZGF0ZXMsXG4gICAgICAgICAgICAgICAgdXBkYXRlZF90aW1lOiBuZXcgRGF0ZSgpLFxuICAgICAgICAgICAgICAgIHVwZGF0ZWRfdXNlcjogYXV0aENvbnRleHQ/LnVzZXJTdWJcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uOiBuZXcgZHluYW1vb3NlLkNvbmRpdGlvbigpLmF0dHJpYnV0ZShcImJyb3dzZUhpc3RvcnlJZFwiKS5leGlzdHMoKVxuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gdXBkYXRlZCBhcyB1bmtub3duIGFzIEJyb3dzZUhpc3Rvcnk7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIEZldGNoZXMgb25lIGJyb3dzZS1oaXN0b3J5IHJlY29yZCBieSBwcmltYXJ5IGtleS5cbiAgICAgKlxuICAgICAqIFVzZSB3aGVuOiBkZXRhaWwgc2NyZWVuIGFscmVhZHkgaGFzIGBicm93c0hpc3RvcnlJZGAgZnJvbSBhIHByZXZpb3VzIGxpc3QgcmVzcG9uc2UuXG4gICAgICogUmV0dXJucyBgbnVsbGAgd2hlbiByZWNvcmQgaXMgbm90IGZvdW5kLlxuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiBjb25zdCBpdGVtID0gYXdhaXQgYnJvd3NIaXN0b3J5RGFvLmdldEJ5SWQoXCJicm93cy1oaXN0b3J5LXV1aWRcIik7XG4gICAgICovXG4gICAgZ2V0QnlJZCA9IGFzeW5jIChicm93c2VIaXN0b3J5SWQ6IHN0cmluZyk6IFByb21pc2U8QnJvd3NlSGlzdG9yeSB8IG51bGw+ID0+IHRoaXMuZ2V0KGJyb3dzZUhpc3RvcnlJZCk7XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGJyb3dzZS1oaXN0b3J5IGZvciBhIHVzZXIgd2l0aCBvcHRpb25hbCBzb3J0IGFuZCBsaW1pdC5cbiAgICAgKlxuICAgICAqIFVzZSB3aGVuOiBzaG93aW5nIFwiUmVjZW50bHkgVmlld2VkXCIgb3IgZnVsbCBicm93c2UgaGlzdG9yeSBvbiBob21lL3Byb2ZpbGUgc2NyZWVuLlxuICAgICAqIC0gUXVlcmllcyBhbGwgcGFnZXMgZnJvbSBHU0kgYHVzZXJJZEluZGV4YCwgdGhlbiBzb3J0cyBpbiBtZW1vcnkuXG4gICAgICogLSBQYXNzIGBzb3J0QnlgIGFzIGBcImNyZWF0ZWRfdGltZVwiYCBvciBgXCJ1cGRhdGVkX3RpbWVcImAgdG8gb3JkZXIgcmVzdWx0cy5cbiAgICAgKiAtIERlZmF1bHQgYHNvcnRPcmRlcmAgaXMgYFwiZGVzY1wiYCAobmV3ZXN0IGZpcnN0KS5cbiAgICAgKiAtIGBsaW1pdGAgaXMgYXBwbGllZCBhZnRlciBzb3J0aW5nIHNvIGxhdGVzdCBOIGl0ZW1zIGFyZSByZXR1cm5lZCBjb3JyZWN0bHkuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIC8vIExhdGVzdCAxMCBicm93c2VkIHBsYXR0ZXJzIChtb3N0IHJlY2VudGx5IHVwZGF0ZWQgZmlyc3QpXG4gICAgICogY29uc3QgcmVjZW50ID0gYXdhaXQgYnJvd3NIaXN0b3J5RGFvLmdldEJ5VXNlcklkKFwidXNlci0xMjNcIiwgMTAsIFwidXBkYXRlZF90aW1lXCIpO1xuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiAvLyBPbGRlc3Qgdmlld2VkIGZpcnN0XG4gICAgICogY29uc3Qgb2xkZXN0Rmlyc3QgPSBhd2FpdCBicm93c0hpc3RvcnlEYW8uZ2V0QnlVc2VySWQoXCJ1c2VyLTEyM1wiLCB1bmRlZmluZWQsIFwiY3JlYXRlZF90aW1lXCIsIFwiYXNjXCIpO1xuICAgICAqXG4gICAgICogQGV4YW1wbGVcbiAgICAgKiAvLyBBbGwgaGlzdG9yeSB3aXRob3V0IHNvcnRpbmcgKHJhdyBEeW5hbW9EQiBvcmRlcilcbiAgICAgKiBjb25zdCBhbGwgPSBhd2FpdCBicm93c0hpc3RvcnlEYW8uZ2V0QnlVc2VySWQoXCJ1c2VyLTEyM1wiKTtcbiAgICAgKi9cbiAgICBnZXRCeVVzZXJJZCA9IGFzeW5jIChcbiAgICAgICAgdXNlcklkOiBzdHJpbmcsXG4gICAgICAgIGxpbWl0PzogbnVtYmVyLFxuICAgICAgICBzb3J0Qnk/OiBCcm93c2VIaXN0b3J5U29ydEZpZWxkLFxuICAgICAgICBzb3J0T3JkZXI6IEJyb3dzZUhpc3RvcnlTb3J0T3JkZXIgPSBcImRlc2NcIlxuICAgICk6IFByb21pc2U8QnJvd3NlSGlzdG9yeVtdPiA9PiB7XG4gICAgICAgIGNvbnN0IGl0ZW1zOiBCcm93c2VIaXN0b3J5W10gPSBbXTtcbiAgICAgICAgbGV0IHRva2VuOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgICAgICAgZG8ge1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5saXN0QnlVc2VySWQodXNlcklkLCB1bmRlZmluZWQsIHRva2VuKTtcbiAgICAgICAgICAgIGl0ZW1zLnB1c2goLi4ucmVzdWx0Lml0ZW1zKTtcbiAgICAgICAgICAgIHRva2VuID0gcmVzdWx0Lm5leHRUb2tlbjtcbiAgICAgICAgfSB3aGlsZSAodG9rZW4pO1xuXG4gICAgICAgIGNvbnN0IHNvcnRlZEl0ZW1zID0gdGhpcy5zb3J0QnJvd3NIaXN0b3J5SXRlbXMoaXRlbXMsIHNvcnRCeSwgc29ydE9yZGVyKTtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBsaW1pdCA9PT0gXCJudW1iZXJcIiA/IHNvcnRlZEl0ZW1zLnNsaWNlKDAsIGxpbWl0KSA6IHNvcnRlZEl0ZW1zO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBSZWFkcyB0aW1lc3RhbXAgZnJvbSBhdWRpdCBmaWVsZCB1c2VkIGZvciBpbi1tZW1vcnkgc29ydGluZy5cbiAgICAgKi9cbiAgICBwcml2YXRlIGdldEJyb3dzSGlzdG9yeVNvcnRUaW1lID0gKGl0ZW06IEJyb3dzZUhpc3RvcnksIGZpZWxkOiBCcm93c2VIaXN0b3J5U29ydEZpZWxkKTogbnVtYmVyID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBpdGVtW2ZpZWxkXTtcbiAgICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRGF0ZSA/IHZhbHVlLmdldFRpbWUoKSA6IG5ldyBEYXRlKHZhbHVlKS5nZXRUaW1lKCk7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFNvcnRzIGJyb3dzZS1oaXN0b3J5IGl0ZW1zIGJ5IGBjcmVhdGVkX3RpbWVgIG9yIGB1cGRhdGVkX3RpbWVgLlxuICAgICAqL1xuICAgIHByaXZhdGUgc29ydEJyb3dzSGlzdG9yeUl0ZW1zID0gKFxuICAgICAgICBpdGVtczogQnJvd3NlSGlzdG9yeVtdLFxuICAgICAgICBzb3J0Qnk/OiBCcm93c2VIaXN0b3J5U29ydEZpZWxkLFxuICAgICAgICBzb3J0T3JkZXI6IEJyb3dzZUhpc3RvcnlTb3J0T3JkZXIgPSBcImRlc2NcIlxuICAgICk6IEJyb3dzZUhpc3RvcnlbXSA9PiB7XG4gICAgICAgIGlmICghc29ydEJ5KSB7XG4gICAgICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPSBzb3J0T3JkZXIgPT09IFwiYXNjXCIgPyAxIDogLTE7XG4gICAgICAgIHJldHVybiBbLi4uaXRlbXNdLnNvcnQoXG4gICAgICAgICAgICAoYSwgYikgPT4gKHRoaXMuZ2V0QnJvd3NIaXN0b3J5U29ydFRpbWUoYSwgc29ydEJ5KSAtIHRoaXMuZ2V0QnJvd3NIaXN0b3J5U29ydFRpbWUoYiwgc29ydEJ5KSkgKiBkaXJlY3Rpb25cbiAgICAgICAgKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogUGFnaW5hdGVkIHF1ZXJ5IG9uIEdTSSBgdXNlcklkSW5kZXhgLlxuICAgICAqXG4gICAgICogVXNlIHdoZW46IGluZmluaXRlIHNjcm9sbCAvIGxvYWQtbW9yZSBVSSB3aGVyZSB5b3UgcGFzcyBgbmV4dFRva2VuYCBmcm9tIHByZXZpb3VzIHJlc3BvbnNlLlxuICAgICAqIEZvciBzb3J0ZWQgXCJyZWNlbnQgTlwiIHZpZXdzIHByZWZlciBgZ2V0QnlVc2VySWRgIGluc3RlYWQuXG4gICAgICpcbiAgICAgKiBAZXhhbXBsZVxuICAgICAqIGNvbnN0IHBhZ2UxID0gYXdhaXQgYnJvd3NIaXN0b3J5RGFvLmxpc3RCeVVzZXJJZChcInVzZXItMTIzXCIsIDIwKTtcbiAgICAgKiBjb25zdCBwYWdlMiA9IGF3YWl0IGJyb3dzSGlzdG9yeURhby5saXN0QnlVc2VySWQoXCJ1c2VyLTEyM1wiLCAyMCwgcGFnZTEubmV4dFRva2VuKTtcbiAgICAgKi9cbiAgICBsaXN0QnlVc2VySWQgPSBhc3luYyAodXNlcklkOiBzdHJpbmcsIGxpbWl0PzogbnVtYmVyLCB0b2tlbj86IHN0cmluZyk6IFByb21pc2U8TGlzdFJlc3VsdD4gPT4ge1xuICAgICAgICBjb25zdCBkZWNvZGVkVG9rZW4gPSB0aGlzLmRlY29kZSh0b2tlbik7XG4gICAgICAgIGxldCBxdWVyeUJ1aWxkZXIgPSBCcm93c2VIaXN0b3J5TW9kZWwucXVlcnkoXCJ1c2VySWRcIikuZXEodXNlcklkKS51c2luZyhcInVzZXJJZEluZGV4XCIpO1xuICAgICAgICBpZiAoZGVjb2RlZFRva2VuKSB7XG4gICAgICAgICAgICBxdWVyeUJ1aWxkZXIgPSBxdWVyeUJ1aWxkZXIuc3RhcnRBdChkZWNvZGVkVG9rZW4pO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgbGltaXQgPT09IFwibnVtYmVyXCIpIHtcbiAgICAgICAgICAgIHF1ZXJ5QnVpbGRlciA9IHF1ZXJ5QnVpbGRlci5saW1pdChsaW1pdCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcXVlcnlSZXN1bHQgPSBhd2FpdCBxdWVyeUJ1aWxkZXIuZXhlYygpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaXRlbXM6IHF1ZXJ5UmVzdWx0IGFzIHVua25vd24gYXMgQnJvd3NlSGlzdG9yeVtdLFxuICAgICAgICAgICAgbmV4dFRva2VuOiBhd2FpdCB0aGlzLmVuY29kZShxdWVyeVJlc3VsdC5sYXN0S2V5IGFzIER5bmFtb0tleSB8IHVuZGVmaW5lZClcbiAgICAgICAgfTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogRGVsZXRlcyBvbmUgYnJvd3NlLWhpc3RvcnkgcmVjb3JkIGJ5IHByaW1hcnkga2V5LlxuICAgICAqXG4gICAgICogVXNlIHdoZW46IHVzZXIgY2xlYXJzIGEgc2luZ2xlIGl0ZW0gZnJvbSBicm93c2UgaGlzdG9yeS5cbiAgICAgKlxuICAgICAqIEBleGFtcGxlXG4gICAgICogYXdhaXQgYnJvd3NIaXN0b3J5RGFvLmRlbGV0ZUJ5SWQoXCJicm93cy1oaXN0b3J5LXV1aWRcIik7XG4gICAgICovXG4gICAgZGVsZXRlQnlJZCA9IGFzeW5jIChicm93c0hpc3RvcnlJZDogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgICAgIGF3YWl0IHRoaXMuZGVsZXRlKGJyb3dzSGlzdG9yeUlkKTtcbiAgICB9O1xufVxuXG5leHBvcnQgY29uc3QgYnJvd3NlSGlzdG9yeURhbyA9IG5ldyBCcm93c2VIaXN0b3J5RGFvKCk7XG4iXX0=
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { BaseDynamooseModel } from "../../base-dynamoose-model";
|
|
2
|
+
export interface BrowseHistoryReplaceItem {
|
|
3
|
+
originalItemId: string;
|
|
4
|
+
replaceItemId: string;
|
|
5
|
+
}
|
|
6
|
+
export interface BrowseHistory extends BaseDynamooseModel {
|
|
7
|
+
browseHistoryId: string;
|
|
8
|
+
userId: string;
|
|
9
|
+
resumeJourneyId: string;
|
|
10
|
+
platterId: string;
|
|
11
|
+
platterName: string;
|
|
12
|
+
platterType: string;
|
|
13
|
+
platterSubType?: string;
|
|
14
|
+
platterPrice: number;
|
|
15
|
+
totalItems: number;
|
|
16
|
+
menuType: string;
|
|
17
|
+
mealTime: string;
|
|
18
|
+
platterImage: string;
|
|
19
|
+
replaceItemIds: BrowseHistoryReplaceItem[];
|
|
20
|
+
addonIds: string[];
|
|
21
|
+
cutleryIds: string[];
|
|
22
|
+
liveCounterIds: string[];
|
|
23
|
+
skewerAddonIds: string[];
|
|
24
|
+
mandatoryServiceBottomSheet: boolean;
|
|
25
|
+
}
|
|
26
|
+
export type CreateBrowseHistoryInput = Omit<BrowseHistory, "browseHistoryId"> & {
|
|
27
|
+
browseHistoryId?: string;
|
|
28
|
+
};
|
|
29
|
+
export declare const BrowseHistoryModel: import("dynamoose/dist/General").ModelType<BrowseHistory>;
|
|
30
|
+
export declare const convertToBrowseHistoryModel: (input: CreateBrowseHistoryInput | BrowseHistory) => BrowseHistory;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.convertToBrowseHistoryModel = exports.BrowseHistoryModel = void 0;
|
|
7
|
+
const dynamoose_1 = __importDefault(require("dynamoose"));
|
|
8
|
+
const crypto_1 = require("crypto");
|
|
9
|
+
const base_dynamoose_model_1 = require("../../base-dynamoose-model");
|
|
10
|
+
const table_names_1 = require("../../config/table-names");
|
|
11
|
+
const browseHistorySchema = new dynamoose_1.default.Schema({
|
|
12
|
+
browseHistoryId: {
|
|
13
|
+
type: String,
|
|
14
|
+
hashKey: true,
|
|
15
|
+
required: true,
|
|
16
|
+
default: () => (0, crypto_1.randomUUID)()
|
|
17
|
+
},
|
|
18
|
+
userId: {
|
|
19
|
+
type: String,
|
|
20
|
+
required: true,
|
|
21
|
+
index: {
|
|
22
|
+
name: "userIdIndex",
|
|
23
|
+
type: "global"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
resumeJourneyId: {
|
|
27
|
+
type: String,
|
|
28
|
+
required: true
|
|
29
|
+
},
|
|
30
|
+
platterId: {
|
|
31
|
+
type: String,
|
|
32
|
+
required: true
|
|
33
|
+
},
|
|
34
|
+
platterName: {
|
|
35
|
+
type: String,
|
|
36
|
+
required: true
|
|
37
|
+
},
|
|
38
|
+
platterType: {
|
|
39
|
+
type: String,
|
|
40
|
+
required: true
|
|
41
|
+
},
|
|
42
|
+
platterSubType: String,
|
|
43
|
+
platterPrice: {
|
|
44
|
+
type: Number,
|
|
45
|
+
required: true
|
|
46
|
+
},
|
|
47
|
+
totalItems: {
|
|
48
|
+
type: Number,
|
|
49
|
+
required: true
|
|
50
|
+
},
|
|
51
|
+
menuType: {
|
|
52
|
+
type: String,
|
|
53
|
+
required: true
|
|
54
|
+
},
|
|
55
|
+
mealTime: {
|
|
56
|
+
type: String,
|
|
57
|
+
required: true
|
|
58
|
+
},
|
|
59
|
+
platterImage: {
|
|
60
|
+
type: String,
|
|
61
|
+
required: true
|
|
62
|
+
},
|
|
63
|
+
replaceItemIds: {
|
|
64
|
+
type: Array,
|
|
65
|
+
schema: [{
|
|
66
|
+
type: Object,
|
|
67
|
+
schema: {
|
|
68
|
+
originalItemId: {
|
|
69
|
+
type: String,
|
|
70
|
+
required: true
|
|
71
|
+
},
|
|
72
|
+
replaceItemId: {
|
|
73
|
+
type: String,
|
|
74
|
+
required: true
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}],
|
|
78
|
+
default: []
|
|
79
|
+
},
|
|
80
|
+
addonIds: {
|
|
81
|
+
type: Array,
|
|
82
|
+
schema: [String],
|
|
83
|
+
default: []
|
|
84
|
+
},
|
|
85
|
+
cutleryIds: {
|
|
86
|
+
type: Array,
|
|
87
|
+
schema: [String],
|
|
88
|
+
default: []
|
|
89
|
+
},
|
|
90
|
+
liveCounterIds: {
|
|
91
|
+
type: Array,
|
|
92
|
+
schema: [String],
|
|
93
|
+
default: []
|
|
94
|
+
},
|
|
95
|
+
skewerAddonIds: {
|
|
96
|
+
type: Array,
|
|
97
|
+
schema: [String],
|
|
98
|
+
default: []
|
|
99
|
+
},
|
|
100
|
+
mandatoryServiceBottomSheet: {
|
|
101
|
+
type: Boolean,
|
|
102
|
+
required: true
|
|
103
|
+
},
|
|
104
|
+
...base_dynamoose_model_1.BASE_DYNAMOOSE_AUDIT_SCHEMA
|
|
105
|
+
}, {
|
|
106
|
+
saveUnknown: false,
|
|
107
|
+
timestamps: true
|
|
108
|
+
});
|
|
109
|
+
exports.BrowseHistoryModel = dynamoose_1.default.model(table_names_1.TABLE_NAMES.BROWSE_HISTORY, browseHistorySchema, { create: false, waitForActive: false });
|
|
110
|
+
const convertToBrowseHistoryModel = (input) => {
|
|
111
|
+
return new exports.BrowseHistoryModel(input);
|
|
112
|
+
};
|
|
113
|
+
exports.convertToBrowseHistoryModel = convertToBrowseHistoryModel;
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlLWhpc3RvcnktbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY3VzdG9tZXItdXNlci9icm93c2UtaGlzdG9yeS9icm93c2UtaGlzdG9yeS1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwwREFBa0M7QUFDbEMsbUNBQW9DO0FBQ3BDLHFFQUE2RjtBQUM3RiwwREFBdUQ7QUFnQ3ZELE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxtQkFBUyxDQUFDLE1BQU0sQ0FDNUM7SUFDSSxlQUFlLEVBQUU7UUFDYixJQUFJLEVBQUUsTUFBTTtRQUNaLE9BQU8sRUFBRSxJQUFJO1FBQ2IsUUFBUSxFQUFFLElBQUk7UUFDZCxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBQSxtQkFBVSxHQUFFO0tBQzlCO0lBQ0QsTUFBTSxFQUFFO1FBQ0osSUFBSSxFQUFFLE1BQU07UUFDWixRQUFRLEVBQUUsSUFBSTtRQUNkLEtBQUssRUFBRTtZQUNILElBQUksRUFBRSxhQUFhO1lBQ25CLElBQUksRUFBRSxRQUFRO1NBQ2pCO0tBQ0o7SUFDRCxlQUFlLEVBQUU7UUFDYixJQUFJLEVBQUUsTUFBTTtRQUNaLFFBQVEsRUFBRSxJQUFJO0tBQ2pCO0lBQ0QsU0FBUyxFQUFFO1FBQ1AsSUFBSSxFQUFFLE1BQU07UUFDWixRQUFRLEVBQUUsSUFBSTtLQUNqQjtJQUNELFdBQVcsRUFBRTtRQUNULElBQUksRUFBRSxNQUFNO1FBQ1osUUFBUSxFQUFFLElBQUk7S0FDakI7SUFDRCxXQUFXLEVBQUU7UUFDVCxJQUFJLEVBQUUsTUFBTTtRQUNaLFFBQVEsRUFBRSxJQUFJO0tBQ2pCO0lBQ0QsY0FBYyxFQUFFLE1BQU07SUFDdEIsWUFBWSxFQUFFO1FBQ1YsSUFBSSxFQUFFLE1BQU07UUFDWixRQUFRLEVBQUUsSUFBSTtLQUNqQjtJQUNELFVBQVUsRUFBRTtRQUNSLElBQUksRUFBRSxNQUFNO1FBQ1osUUFBUSxFQUFFLElBQUk7S0FDakI7SUFDRCxRQUFRLEVBQUU7UUFDTixJQUFJLEVBQUUsTUFBTTtRQUNaLFFBQVEsRUFBRSxJQUFJO0tBQ2pCO0lBQ0QsUUFBUSxFQUFFO1FBQ04sSUFBSSxFQUFFLE1BQU07UUFDWixRQUFRLEVBQUUsSUFBSTtLQUNqQjtJQUNELFlBQVksRUFBRTtRQUNWLElBQUksRUFBRSxNQUFNO1FBQ1osUUFBUSxFQUFFLElBQUk7S0FDakI7SUFDRCxjQUFjLEVBQUU7UUFDWixJQUFJLEVBQUUsS0FBSztRQUNYLE1BQU0sRUFBRSxDQUFDO2dCQUNMLElBQUksRUFBRSxNQUFNO2dCQUNaLE1BQU0sRUFBRTtvQkFDSixjQUFjLEVBQUU7d0JBQ1osSUFBSSxFQUFFLE1BQU07d0JBQ1osUUFBUSxFQUFFLElBQUk7cUJBQ2pCO29CQUNELGFBQWEsRUFBRTt3QkFDWCxJQUFJLEVBQUUsTUFBTTt3QkFDWixRQUFRLEVBQUUsSUFBSTtxQkFDakI7aUJBQ0o7YUFDSixDQUFDO1FBQ0YsT0FBTyxFQUFFLEVBQUU7S0FDZDtJQUNELFFBQVEsRUFBRTtRQUNOLElBQUksRUFBRSxLQUFLO1FBQ1gsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDO1FBQ2hCLE9BQU8sRUFBRSxFQUFFO0tBQ2Q7SUFDRCxVQUFVLEVBQUU7UUFDUixJQUFJLEVBQUUsS0FBSztRQUNYLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQztRQUNoQixPQUFPLEVBQUUsRUFBRTtLQUNkO0lBQ0QsY0FBYyxFQUFFO1FBQ1osSUFBSSxFQUFFLEtBQUs7UUFDWCxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUM7UUFDaEIsT0FBTyxFQUFFLEVBQUU7S0FDZDtJQUNELGNBQWMsRUFBRTtRQUNaLElBQUksRUFBRSxLQUFLO1FBQ1gsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDO1FBQ2hCLE9BQU8sRUFBRSxFQUFFO0tBQ2Q7SUFDRCwyQkFBMkIsRUFBRTtRQUN6QixJQUFJLEVBQUUsT0FBTztRQUNiLFFBQVEsRUFBRSxJQUFJO0tBQ2pCO0lBQ0QsR0FBRyxrREFBMkI7Q0FDakMsRUFDRDtJQUNJLFdBQVcsRUFBRSxLQUFLO0lBQ2xCLFVBQVUsRUFBRSxJQUFJO0NBQ25CLENBQ0osQ0FBQztBQUVXLFFBQUEsa0JBQWtCLEdBQUcsbUJBQVMsQ0FBQyxLQUFLLENBQzdDLHlCQUFXLENBQUMsY0FBYyxFQUMxQixtQkFBbUIsRUFDbkIsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsQ0FDMUMsQ0FBQztBQUVLLE1BQU0sMkJBQTJCLEdBQUcsQ0FBQyxLQUErQyxFQUFFLEVBQUU7SUFDM0YsT0FBTyxJQUFJLDBCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3pDLENBQUMsQ0FBQztBQUZXLFFBQUEsMkJBQTJCLCtCQUV0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkeW5hbW9vc2UgZnJvbSBcImR5bmFtb29zZVwiO1xuaW1wb3J0IHsgcmFuZG9tVVVJRCB9IGZyb20gXCJjcnlwdG9cIjtcbmltcG9ydCB7IEJBU0VfRFlOQU1PT1NFX0FVRElUX1NDSEVNQSwgQmFzZUR5bmFtb29zZU1vZGVsIH0gZnJvbSBcIi4uLy4uL2Jhc2UtZHluYW1vb3NlLW1vZGVsXCI7XG5pbXBvcnQgeyBUQUJMRV9OQU1FUyB9IGZyb20gXCIuLi8uLi9jb25maWcvdGFibGUtbmFtZXNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBCcm93c2VIaXN0b3J5UmVwbGFjZUl0ZW0ge1xuICAgIG9yaWdpbmFsSXRlbUlkOiBzdHJpbmc7XG4gICAgcmVwbGFjZUl0ZW1JZDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJyb3dzZUhpc3RvcnkgZXh0ZW5kcyBCYXNlRHluYW1vb3NlTW9kZWwge1xuICAgIGJyb3dzZUhpc3RvcnlJZDogc3RyaW5nO1xuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIHJlc3VtZUpvdXJuZXlJZDogc3RyaW5nO1xuICAgIHBsYXR0ZXJJZDogc3RyaW5nO1xuICAgIHBsYXR0ZXJOYW1lOiBzdHJpbmc7XG4gICAgcGxhdHRlclR5cGU6IHN0cmluZztcbiAgICBwbGF0dGVyU3ViVHlwZT86IHN0cmluZztcbiAgICBwbGF0dGVyUHJpY2U6IG51bWJlcjtcbiAgICB0b3RhbEl0ZW1zOiBudW1iZXI7XG4gICAgbWVudVR5cGU6IHN0cmluZztcbiAgICBtZWFsVGltZTogc3RyaW5nO1xuICAgIHBsYXR0ZXJJbWFnZTogc3RyaW5nO1xuICAgIHJlcGxhY2VJdGVtSWRzOiBCcm93c2VIaXN0b3J5UmVwbGFjZUl0ZW1bXTtcbiAgICBhZGRvbklkczogc3RyaW5nW107XG4gICAgY3V0bGVyeUlkczogc3RyaW5nW107XG4gICAgbGl2ZUNvdW50ZXJJZHM6IHN0cmluZ1tdO1xuICAgIHNrZXdlckFkZG9uSWRzOiBzdHJpbmdbXTtcbiAgICBtYW5kYXRvcnlTZXJ2aWNlQm90dG9tU2hlZXQ6IGJvb2xlYW5cbn1cblxuZXhwb3J0IHR5cGUgQ3JlYXRlQnJvd3NlSGlzdG9yeUlucHV0ID0gT21pdDxCcm93c2VIaXN0b3J5LCBcImJyb3dzZUhpc3RvcnlJZFwiPiAmIHtcbiAgICBicm93c2VIaXN0b3J5SWQ/OiBzdHJpbmc7XG59O1xuXG5jb25zdCBicm93c2VIaXN0b3J5U2NoZW1hID0gbmV3IGR5bmFtb29zZS5TY2hlbWEoXG4gICAge1xuICAgICAgICBicm93c2VIaXN0b3J5SWQ6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIGhhc2hLZXk6IHRydWUsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgICAgIGRlZmF1bHQ6ICgpID0+IHJhbmRvbVVVSUQoKVxuICAgICAgICB9LFxuICAgICAgICB1c2VySWQ6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgICAgICAgICAgaW5kZXg6IHtcbiAgICAgICAgICAgICAgICBuYW1lOiBcInVzZXJJZEluZGV4XCIsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJnbG9iYWxcIlxuICAgICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgICByZXN1bWVKb3VybmV5SWQ6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHBsYXR0ZXJJZDoge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgcGxhdHRlck5hbWU6IHtcbiAgICAgICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHBsYXR0ZXJUeXBlOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBwbGF0dGVyU3ViVHlwZTogU3RyaW5nLFxuICAgICAgICBwbGF0dGVyUHJpY2U6IHtcbiAgICAgICAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHRvdGFsSXRlbXM6IHtcbiAgICAgICAgICAgIHR5cGU6IE51bWJlcixcbiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIG1lbnVUeXBlOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBtZWFsVGltZToge1xuICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgcGxhdHRlckltYWdlOiB7XG4gICAgICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgICAgICByZXF1aXJlZDogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICByZXBsYWNlSXRlbUlkczoge1xuICAgICAgICAgICAgdHlwZTogQXJyYXksXG4gICAgICAgICAgICBzY2hlbWE6IFt7XG4gICAgICAgICAgICAgICAgdHlwZTogT2JqZWN0LFxuICAgICAgICAgICAgICAgIHNjaGVtYToge1xuICAgICAgICAgICAgICAgICAgICBvcmlnaW5hbEl0ZW1JZDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgcmVwbGFjZUl0ZW1JZDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1dLFxuICAgICAgICAgICAgZGVmYXVsdDogW11cbiAgICAgICAgfSxcbiAgICAgICAgYWRkb25JZHM6IHtcbiAgICAgICAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgICAgICAgc2NoZW1hOiBbU3RyaW5nXSxcbiAgICAgICAgICAgIGRlZmF1bHQ6IFtdXG4gICAgICAgIH0sXG4gICAgICAgIGN1dGxlcnlJZHM6IHtcbiAgICAgICAgICAgIHR5cGU6IEFycmF5LFxuICAgICAgICAgICAgc2NoZW1hOiBbU3RyaW5nXSxcbiAgICAgICAgICAgIGRlZmF1bHQ6IFtdXG4gICAgICAgIH0sXG4gICAgICAgIGxpdmVDb3VudGVySWRzOiB7XG4gICAgICAgICAgICB0eXBlOiBBcnJheSxcbiAgICAgICAgICAgIHNjaGVtYTogW1N0cmluZ10sXG4gICAgICAgICAgICBkZWZhdWx0OiBbXVxuICAgICAgICB9LFxuICAgICAgICBza2V3ZXJBZGRvbklkczoge1xuICAgICAgICAgICAgdHlwZTogQXJyYXksXG4gICAgICAgICAgICBzY2hlbWE6IFtTdHJpbmddLFxuICAgICAgICAgICAgZGVmYXVsdDogW11cbiAgICAgICAgfSxcbiAgICAgICAgbWFuZGF0b3J5U2VydmljZUJvdHRvbVNoZWV0OiB7XG4gICAgICAgICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWVcbiAgICAgICAgfSxcbiAgICAgICAgLi4uQkFTRV9EWU5BTU9PU0VfQVVESVRfU0NIRU1BXG4gICAgfSxcbiAgICB7XG4gICAgICAgIHNhdmVVbmtub3duOiBmYWxzZSxcbiAgICAgICAgdGltZXN0YW1wczogdHJ1ZVxuICAgIH1cbik7XG5cbmV4cG9ydCBjb25zdCBCcm93c2VIaXN0b3J5TW9kZWwgPSBkeW5hbW9vc2UubW9kZWw8QnJvd3NlSGlzdG9yeT4oXG4gICAgVEFCTEVfTkFNRVMuQlJPV1NFX0hJU1RPUlksXG4gICAgYnJvd3NlSGlzdG9yeVNjaGVtYSxcbiAgICB7IGNyZWF0ZTogZmFsc2UsIHdhaXRGb3JBY3RpdmU6IGZhbHNlIH1cbik7XG5cbmV4cG9ydCBjb25zdCBjb252ZXJ0VG9Ccm93c2VIaXN0b3J5TW9kZWwgPSAoaW5wdXQ6IENyZWF0ZUJyb3dzZUhpc3RvcnlJbnB1dCB8IEJyb3dzZUhpc3RvcnkpID0+IHtcbiAgICByZXR1cm4gbmV3IEJyb3dzZUhpc3RvcnlNb2RlbChpbnB1dCk7XG59O1xuIl19
|
|
@@ -1,6 +1,35 @@
|
|
|
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.getAllActiveCategories();
|
|
21
|
+
*/
|
|
22
|
+
getAllActiveCategories: () => Promise<CategoryModel[]>;
|
|
23
|
+
/**
|
|
24
|
+
* Returns active categories where `isFilterApplied === true`.
|
|
25
|
+
*
|
|
26
|
+
* Use when: filter chips / menu filters that should only show categories
|
|
27
|
+
* explicitly marked for filtering in admin.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* const filterCategories = await categoryTypesDAO.getActiveFilterCategories();
|
|
31
|
+
*/
|
|
32
|
+
getActiveFilterCategories: () => Promise<CategoryModel[]>;
|
|
4
33
|
}
|
|
5
34
|
export declare const categoryTypesDAO: CategoryDAO;
|
|
6
35
|
export {};
|