cmp-aws-database 2.0.0-proddebug.1 → 2.0.0-proddebug.3

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.
Files changed (34) hide show
  1. package/dist/base-dynamoose-dao.d.ts +83 -0
  2. package/dist/base-dynamoose-dao.js +197 -0
  3. package/dist/base-dynamoose-model.d.ts +33 -0
  4. package/dist/base-dynamoose-model.js +14 -0
  5. package/dist/config/database-factory.js +2 -2
  6. package/dist/config/table-names.d.ts +6 -0
  7. package/dist/config/table-names.js +7 -1
  8. package/dist/customer-user/cart/cart-model.d.ts +1 -0
  9. package/dist/customer-user/cart/cart-model.js +5 -1
  10. package/dist/customer-user/content/content-model.d.ts +8 -0
  11. package/dist/customer-user/content/content-model.js +5 -1
  12. package/dist/customer-user/cutlery/cutlery-model.d.ts +1 -0
  13. package/dist/customer-user/cutlery/cutlery-model.js +5 -1
  14. package/dist/customer-user/order-module/order/order-model.d.ts +1 -0
  15. package/dist/customer-user/order-module/order/order-model.js +5 -1
  16. package/dist/customer-user/order-module/plate-order/plate-order-model.d.ts +2 -0
  17. package/dist/customer-user/order-module/plate-order/plate-order-model.js +9 -1
  18. package/dist/customer-user/platter-fit-module/platter-fit-dao.d.ts +41 -0
  19. package/dist/customer-user/platter-fit-module/platter-fit-dao.js +107 -0
  20. package/dist/customer-user/platter-fit-module/platter-fit-model.d.ts +29 -0
  21. package/dist/customer-user/platter-fit-module/platter-fit-model.js +88 -0
  22. package/dist/customer-user/platter-ranking/platter-ranking-dao.d.ts +13 -0
  23. package/dist/customer-user/platter-ranking/platter-ranking-dao.js +32 -0
  24. package/dist/customer-user/platter-ranking/platter-ranking-model.d.ts +22 -0
  25. package/dist/customer-user/platter-ranking/platter-ranking-model.js +92 -0
  26. package/dist/customer-user/promo-codes/influencer-promo-dao.d.ts +33 -0
  27. package/dist/customer-user/promo-codes/influencer-promo-dao.js +94 -0
  28. package/dist/customer-user/promo-codes/influencer-promo-model.d.ts +19 -0
  29. package/dist/customer-user/promo-codes/influencer-promo-model.js +67 -0
  30. package/dist/customer-user/promo-codes/influencer-referral-dao.d.ts +34 -0
  31. package/dist/customer-user/promo-codes/influencer-referral-dao.js +115 -0
  32. package/dist/customer-user/promo-codes/influencer-referral-model.d.ts +13 -0
  33. package/dist/customer-user/promo-codes/influencer-referral-model.js +62 -0
  34. package/package.json +1 -1
@@ -0,0 +1,83 @@
1
+ import { BaseDynamooseModel, AuthContext } from "./base-dynamoose-model";
2
+ type DynamoKeyValue = string | number | boolean | null;
3
+ export type DynamoKey = Record<string, DynamoKeyValue>;
4
+ type DynamooseModelLike = {
5
+ create: Function;
6
+ update: Function;
7
+ get: Function;
8
+ delete: Function;
9
+ batchPut: Function;
10
+ batchGet: Function;
11
+ };
12
+ export declare class GenericDynamooseDAO<T extends BaseDynamooseModel> {
13
+ protected readonly model: DynamooseModelLike;
14
+ protected readonly primaryKeyName: keyof T & string;
15
+ protected readonly sortKeyName?: (keyof T & string) | undefined;
16
+ /**
17
+ * @param model Dynamoose model instance for the target table.
18
+ * @param primaryKeyName Attribute name used as the table hash key.
19
+ */
20
+ constructor(model: DynamooseModelLike, primaryKeyName: keyof T & string, sortKeyName?: (keyof T & string) | undefined);
21
+ /**
22
+ * Builds a DynamoDB key object from a single primary key value.
23
+ */
24
+ protected getKeyObject(primaryKeyValue: string, sortKeyValue?: string): DynamoKey;
25
+ /**
26
+ * Extracts and validates string primary key value from an item.
27
+ */
28
+ protected getPrimaryKeyValueFromItem(item: T): string;
29
+ /**
30
+ * Extracts and validates sort key value from an item when sort key is configured.
31
+ */
32
+ protected getSortKeyValueFromItem(item: T): string | undefined;
33
+ /**
34
+ * Builds complete key object (hash + optional sort) from an item.
35
+ */
36
+ protected getItemKeyObject(item: T): DynamoKey;
37
+ /**
38
+ * Serializes key object for stable set/map comparisons.
39
+ */
40
+ protected serializeKey(key: DynamoKey): string;
41
+ /**
42
+ * Creates a new record and automatically stamps created audit fields.
43
+ */
44
+ save(item: T, authContext?: AuthContext): Promise<T>;
45
+ /**
46
+ * Updates an existing record and automatically stamps updated audit fields.
47
+ */
48
+ update(primaryKeyValue: string, updates: Partial<T>, authContext?: AuthContext, sortKeyValue?: string): Promise<T>;
49
+ /**
50
+ * Deletes one record by primary key.
51
+ */
52
+ delete(primaryKeyValue: string, sortKeyValue?: string): Promise<T | undefined>;
53
+ /**
54
+ * Fetches one record by primary key. Returns null when not found.
55
+ */
56
+ get(primaryKeyValue: string, sortKeyValue?: string): Promise<T | null>;
57
+ /**
58
+ * Writes multiple records in a batch and throws if any item is left unprocessed.
59
+ */
60
+ batchSave(items: T[], authContext?: AuthContext): Promise<T[]>;
61
+ /**
62
+ * Upserts multiple records by primary key.
63
+ * New keys are created (created_* fields), existing keys are updated (updated_* fields).
64
+ */
65
+ batchUpsert(items: T[], authContext?: AuthContext): Promise<T[]>;
66
+ /**
67
+ * Fetches multiple records by primary keys.
68
+ */
69
+ batchGet(primaryKeyValues: string[]): Promise<T[]>;
70
+ /**
71
+ * Fetches multiple records by key objects (supports hash + optional sort key).
72
+ */
73
+ batchGetByKeys(keys: DynamoKey[]): Promise<T[]>;
74
+ /**
75
+ * Decodes a base64 continuation token into DynamoDB last evaluated key.
76
+ */
77
+ decode(continuationToken: string | undefined): DynamoKey | undefined;
78
+ /**
79
+ * Encodes DynamoDB last evaluated key into a base64 continuation token.
80
+ */
81
+ encode(lastEvaluatedKey: DynamoKey | undefined): Promise<string | undefined>;
82
+ }
83
+ export {};
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GenericDynamooseDAO = void 0;
4
+ class GenericDynamooseDAO {
5
+ /**
6
+ * @param model Dynamoose model instance for the target table.
7
+ * @param primaryKeyName Attribute name used as the table hash key.
8
+ */
9
+ constructor(model, primaryKeyName, sortKeyName) {
10
+ this.model = model;
11
+ this.primaryKeyName = primaryKeyName;
12
+ this.sortKeyName = sortKeyName;
13
+ }
14
+ /**
15
+ * Builds a DynamoDB key object from a single primary key value.
16
+ */
17
+ getKeyObject(primaryKeyValue, sortKeyValue) {
18
+ const keyObject = { [this.primaryKeyName]: primaryKeyValue };
19
+ if (this.sortKeyName) {
20
+ if (!sortKeyValue) {
21
+ throw new Error(`Missing sort key value for '${this.sortKeyName}'`);
22
+ }
23
+ keyObject[this.sortKeyName] = sortKeyValue;
24
+ }
25
+ return keyObject;
26
+ }
27
+ /**
28
+ * Extracts and validates string primary key value from an item.
29
+ */
30
+ getPrimaryKeyValueFromItem(item) {
31
+ const keyRecord = item;
32
+ const keyValue = keyRecord[this.primaryKeyName];
33
+ if (typeof keyValue !== "string" || keyValue.length === 0) {
34
+ throw new Error(`Missing or invalid primary key value for '${this.primaryKeyName}'`);
35
+ }
36
+ return keyValue;
37
+ }
38
+ /**
39
+ * Extracts and validates sort key value from an item when sort key is configured.
40
+ */
41
+ getSortKeyValueFromItem(item) {
42
+ if (!this.sortKeyName) {
43
+ return undefined;
44
+ }
45
+ const keyRecord = item;
46
+ const keyValue = keyRecord[this.sortKeyName];
47
+ if (typeof keyValue !== "string" || keyValue.length === 0) {
48
+ throw new Error(`Missing or invalid sort key value for '${this.sortKeyName}'`);
49
+ }
50
+ return keyValue;
51
+ }
52
+ /**
53
+ * Builds complete key object (hash + optional sort) from an item.
54
+ */
55
+ getItemKeyObject(item) {
56
+ const primaryKeyValue = this.getPrimaryKeyValueFromItem(item);
57
+ const sortKeyValue = this.getSortKeyValueFromItem(item);
58
+ return this.getKeyObject(primaryKeyValue, sortKeyValue);
59
+ }
60
+ /**
61
+ * Serializes key object for stable set/map comparisons.
62
+ */
63
+ serializeKey(key) {
64
+ if (!this.sortKeyName) {
65
+ return `${key[this.primaryKeyName]}`;
66
+ }
67
+ return `${key[this.primaryKeyName]}#${key[this.sortKeyName]}`;
68
+ }
69
+ /**
70
+ * Creates a new record and automatically stamps created audit fields.
71
+ */
72
+ async save(item, authContext) {
73
+ const createFn = this.model.create;
74
+ const created = await createFn({
75
+ ...item,
76
+ created_time: new Date(),
77
+ created_user: authContext?.userSub
78
+ });
79
+ return created;
80
+ }
81
+ /**
82
+ * Updates an existing record and automatically stamps updated audit fields.
83
+ */
84
+ async update(primaryKeyValue, updates, authContext, sortKeyValue) {
85
+ const updateFn = this.model.update;
86
+ const updated = await updateFn(this.getKeyObject(primaryKeyValue, sortKeyValue), {
87
+ ...updates,
88
+ updated_time: new Date(),
89
+ updated_user: authContext?.userSub
90
+ });
91
+ return updated;
92
+ }
93
+ /**
94
+ * Deletes one record by primary key.
95
+ */
96
+ async delete(primaryKeyValue, sortKeyValue) {
97
+ const deleteFn = this.model.delete;
98
+ const deleted = await deleteFn(this.getKeyObject(primaryKeyValue, sortKeyValue));
99
+ return deleted;
100
+ }
101
+ /**
102
+ * Fetches one record by primary key. Returns null when not found.
103
+ */
104
+ async get(primaryKeyValue, sortKeyValue) {
105
+ const getFn = this.model.get;
106
+ const item = await getFn(this.getKeyObject(primaryKeyValue, sortKeyValue));
107
+ return item ?? null;
108
+ }
109
+ /**
110
+ * Writes multiple records in a batch and throws if any item is left unprocessed.
111
+ */
112
+ async batchSave(items, authContext) {
113
+ const now = new Date();
114
+ const inputItems = items.map((item) => ({
115
+ ...item,
116
+ created_time: now,
117
+ created_user: authContext?.userSub
118
+ }));
119
+ const batchPutFn = this.model.batchPut;
120
+ const result = await batchPutFn(inputItems);
121
+ if (result.unprocessedItems.length > 0) {
122
+ throw new Error(`Batch save partially failed. Unprocessed items: ${result.unprocessedItems.length}`);
123
+ }
124
+ return inputItems;
125
+ }
126
+ /**
127
+ * Upserts multiple records by primary key.
128
+ * New keys are created (created_* fields), existing keys are updated (updated_* fields).
129
+ */
130
+ async batchUpsert(items, authContext) {
131
+ const now = new Date();
132
+ const keys = items.map((item) => this.getItemKeyObject(item));
133
+ const existingItems = await this.batchGetByKeys(keys);
134
+ const existingKeySet = new Set(existingItems.map((item) => this.serializeKey(this.getItemKeyObject(item))));
135
+ const upsertItems = items.map((item) => {
136
+ const itemKey = this.getItemKeyObject(item);
137
+ if (existingKeySet.has(this.serializeKey(itemKey))) {
138
+ return {
139
+ ...item,
140
+ updated_time: now,
141
+ updated_user: authContext?.userSub
142
+ };
143
+ }
144
+ return {
145
+ ...item,
146
+ created_time: now,
147
+ created_user: authContext?.userSub
148
+ };
149
+ });
150
+ const batchPutFn = this.model.batchPut;
151
+ const result = await batchPutFn(upsertItems);
152
+ if (result.unprocessedItems.length > 0) {
153
+ throw new Error(`Batch upsert partially failed. Unprocessed items: ${result.unprocessedItems.length}`);
154
+ }
155
+ return upsertItems;
156
+ }
157
+ /**
158
+ * Fetches multiple records by primary keys.
159
+ */
160
+ async batchGet(primaryKeyValues) {
161
+ const keys = primaryKeyValues.map((value) => this.getKeyObject(value));
162
+ return this.batchGetByKeys(keys);
163
+ }
164
+ /**
165
+ * Fetches multiple records by key objects (supports hash + optional sort key).
166
+ */
167
+ async batchGetByKeys(keys) {
168
+ const batchGetFn = this.model.batchGet;
169
+ const items = await batchGetFn(keys);
170
+ return items;
171
+ }
172
+ /**
173
+ * Decodes a base64 continuation token into DynamoDB last evaluated key.
174
+ */
175
+ decode(continuationToken) {
176
+ if (!continuationToken) {
177
+ return undefined;
178
+ }
179
+ try {
180
+ return JSON.parse(Buffer.from(continuationToken, "base64").toString("utf8"));
181
+ }
182
+ catch (error) {
183
+ throw new Error("Invalid continuationToken");
184
+ }
185
+ }
186
+ /**
187
+ * Encodes DynamoDB last evaluated key into a base64 continuation token.
188
+ */
189
+ async encode(lastEvaluatedKey) {
190
+ if (!lastEvaluatedKey) {
191
+ return undefined;
192
+ }
193
+ return Buffer.from(JSON.stringify(lastEvaluatedKey)).toString("base64");
194
+ }
195
+ }
196
+ exports.GenericDynamooseDAO = GenericDynamooseDAO;
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1keW5hbW9vc2UtZGFvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Jhc2UtZHluYW1vb3NlLWRhby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF5QkEsTUFBYSxtQkFBbUI7SUFDNUI7OztPQUdHO0lBQ0gsWUFDdUIsS0FBeUIsRUFDekIsY0FBZ0MsRUFDaEMsV0FBOEI7UUFGOUIsVUFBSyxHQUFMLEtBQUssQ0FBb0I7UUFDekIsbUJBQWMsR0FBZCxjQUFjLENBQWtCO1FBQ2hDLGdCQUFXLEdBQVgsV0FBVyxDQUFtQjtJQUNqRCxDQUFDO0lBRUw7O09BRUc7SUFDTyxZQUFZLENBQUMsZUFBdUIsRUFBRSxZQUFxQjtRQUNqRSxNQUFNLFNBQVMsR0FBYyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLGVBQWUsRUFBRSxDQUFDO1FBQ3hFLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7WUFDeEUsQ0FBQztZQUNELFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsWUFBWSxDQUFDO1FBQy9DLENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDO0lBRUQ7O09BRUc7SUFDTywwQkFBMEIsQ0FBQyxJQUFPO1FBQ3hDLE1BQU0sU0FBUyxHQUFHLElBQTZELENBQUM7UUFDaEYsTUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNoRCxJQUFJLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3hELE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO1FB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dGVudCI6WyJpbXBvcnQgeyBCYXNlRHluYW1vb3NlTW9kZWwsIEF1dGhDb250ZXh0IH0gZnJvbSBcIi4vYmFzZS1keW5hbW9vc2UtbW9kZWxcIjtcblxudHlwZSBEeW5hbW9LZXlWYWx1ZSA9IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBudWxsO1xuZXhwb3J0IHR5cGUgRHluYW1vS2V5ID0gUmVjb3JkPHN0cmluZywgRHluYW1vS2V5VmFsdWU+O1xuXG50eXBlIEJhdGNoUHV0UmVzcG9uc2U8VD4gPSB7XG4gICAgdW5wcm9jZXNzZWRJdGVtczogUGFydGlhbDxUPltdO1xufTtcblxudHlwZSBDcmVhdGVGbjxUPiA9IChpdGVtOiBQYXJ0aWFsPFQ+KSA9PiBQcm9taXNlPG9iamVjdD47XG50eXBlIFVwZGF0ZUZuPFQ+ID0gKGtleTogRHluYW1vS2V5LCB1cGRhdGU6IFBhcnRpYWw8VD4pID0+IFByb21pc2U8b2JqZWN0PjtcbnR5cGUgRGVsZXRlRm4gPSAoa2V5OiBEeW5hbW9LZXkpID0+IFByb21pc2U8b2JqZWN0IHwgdW5kZWZpbmVkPjtcbnR5cGUgR2V0Rm4gPSAoa2V5OiBEeW5hbW9LZXkpID0+IFByb21pc2U8b2JqZWN0IHwgdW5kZWZpbmVkPjtcbnR5cGUgQmF0Y2hQdXRGbjxUPiA9IChpdGVtczogUGFydGlhbDxUPltdKSA9PiBQcm9taXNlPEJhdGNoUHV0UmVzcG9uc2U8VD4+O1xudHlwZSBCYXRjaEdldEZuID0gKGtleXM6IER5bmFtb0tleVtdKSA9PiBQcm9taXNlPG9iamVjdFtdPjtcblxudHlwZSBEeW5hbW9vc2VNb2RlbExpa2UgPSB7XG4gICAgY3JlYXRlOiBGdW5jdGlvbjtcbiAgICB1cGRhdGU6IEZ1bmN0aW9uO1xuICAgIGdldDogRnVuY3Rpb247XG4gICAgZGVsZXRlOiBGdW5jdGlvbjtcbiAgICBiYXRjaFB1dDogRnVuY3Rpb247XG4gICAgYmF0Y2hHZXQ6IEZ1bmN0aW9uO1xufTtcblxuZXhwb3J0IGNsYXNzIEdlbmVyaWNEeW5hbW9vc2VEQU88VCBleHRlbmRzIEJhc2VEeW5hbW9vc2VNb2RlbD4ge1xuICAgIC8qKlxuICAgICAqIEBwYXJhbSBtb2RlbCBEeW5hbW9vc2UgbW9kZWwgaW5zdGFuY2UgZm9yIHRoZSB0YXJnZXQgdGFibGUuXG4gICAgICogQHBhcmFtIHByaW1hcnlLZXlOYW1lIEF0dHJpYnV0ZSBuYW1lIHVzZWQgYXMgdGhlIHRhYmxlIGhhc2gga2V5LlxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbW9kZWw6IER5bmFtb29zZU1vZGVsTGlrZSxcbiAgICAgICAgcHJvdGVjdGVkIHJlYWRvbmx5IHByaW1hcnlLZXlOYW1lOiBrZXlvZiBUICYgc3RyaW5nLFxuICAgICAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc29ydEtleU5hbWU/OiBrZXlvZiBUICYgc3RyaW5nXG4gICAgKSB7IH1cblxuICAgIC8qKlxuICAgICAqIEJ1aWxkcyBhIER5bmFtb0RCIGtleSBvYmplY3QgZnJvbSBhIHNpbmdsZSBwcmltYXJ5IGtleSB2YWx1ZS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0S2V5T2JqZWN0KHByaW1hcnlLZXlWYWx1ZTogc3RyaW5nLCBzb3J0S2V5VmFsdWU/OiBzdHJpbmcpOiBEeW5hbW9LZXkge1xuICAgICAgICBjb25zdCBrZXlPYmplY3Q6IER5bmFtb0tleSA9IHsgW3RoaXMucHJpbWFyeUtleU5hbWVdOiBwcmltYXJ5S2V5VmFsdWUgfTtcbiAgICAgICAgaWYgKHRoaXMuc29ydEtleU5hbWUpIHtcbiAgICAgICAgICAgIGlmICghc29ydEtleVZhbHVlKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNaXNzaW5nIHNvcnQga2V5IHZhbHVlIGZvciAnJHt0aGlzLnNvcnRLZXlOYW1lfSdgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGtleU9iamVjdFt0aGlzLnNvcnRLZXlOYW1lXSA9IHNvcnRLZXlWYWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ga2V5T2JqZWN0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV4dHJhY3RzIGFuZCB2YWxpZGF0ZXMgc3RyaW5nIHByaW1hcnkga2V5IHZhbHVlIGZyb20gYW4gaXRlbS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0UHJpbWFyeUtleVZhbHVlRnJvbUl0ZW0oaXRlbTogVCk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGtleVJlY29yZCA9IGl0ZW0gYXMgdW5rbm93biBhcyBSZWNvcmQ8c3RyaW5nLCBEeW5hbW9LZXlWYWx1ZSB8IHVuZGVmaW5lZD47XG4gICAgICAgIGNvbnN0IGtleVZhbHVlID0ga2V5UmVjb3JkW3RoaXMucHJpbWFyeUtleU5hbWVdO1xuICAgICAgICBpZiAodHlwZW9mIGtleVZhbHVlICE9PSBcInN0cmluZ1wiIHx8IGtleVZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNaXNzaW5nIG9yIGludmFsaWQgcHJpbWFyeSBrZXkgdmFsdWUgZm9yICcke3RoaXMucHJpbWFyeUtleU5hbWV9J2ApO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXlWYWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFeHRyYWN0cyBhbmQgdmFsaWRhdGVzIHNvcnQga2V5IHZhbHVlIGZyb20gYW4gaXRlbSB3aGVuIHNvcnQga2V5IGlzIGNvbmZpZ3VyZWQuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGdldFNvcnRLZXlWYWx1ZUZyb21JdGVtKGl0ZW06IFQpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoIXRoaXMuc29ydEtleU5hbWUpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qga2V5UmVjb3JkID0gaXRlbSBhcyB1bmtub3duIGFzIFJlY29yZDxzdHJpbmcsIER5bmFtb0tleVZhbHVlIHwgdW5kZWZpbmVkPjtcbiAgICAgICAgY29uc3Qga2V5VmFsdWUgPSBrZXlSZWNvcmRbdGhpcy5zb3J0S2V5TmFtZV07XG4gICAgICAgIGlmICh0eXBlb2Yga2V5VmFsdWUgIT09IFwic3RyaW5nXCIgfHwga2V5VmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1pc3Npbmcgb3IgaW52YWxpZCBzb3J0IGtleSB2YWx1ZSBmb3IgJyR7dGhpcy5zb3J0S2V5TmFtZX0nYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGtleVZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEJ1aWxkcyBjb21wbGV0ZSBrZXkgb2JqZWN0IChoYXNoICsgb3B0aW9uYWwgc29ydCkgZnJvbSBhbiBpdGVtLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXRJdGVtS2V5T2JqZWN0KGl0ZW06IFQpOiBEeW5hbW9LZXkge1xuICAgICAgICBjb25zdCBwcmltYXJ5S2V5VmFsdWUgPSB0aGlzLmdldFByaW1hcnlLZXlWYWx1ZUZyb21JdGVtKGl0ZW0pO1xuICAgICAgICBjb25zdCBzb3J0S2V5VmFsdWUgPSB0aGlzLmdldFNvcnRLZXlWYWx1ZUZyb21JdGVtKGl0ZW0pO1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRLZXlPYmplY3QocHJpbWFyeUtleVZhbHVlLCBzb3J0S2V5VmFsdWUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNlcmlhbGl6ZXMga2V5IG9iamVjdCBmb3Igc3RhYmxlIHNldC9tYXAgY29tcGFyaXNvbnMuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHNlcmlhbGl6ZUtleShrZXk6IER5bmFtb0tleSk6IHN0cmluZyB7XG4gICAgICAgIGlmICghdGhpcy5zb3J0S2V5TmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIGAke2tleVt0aGlzLnByaW1hcnlLZXlOYW1lXX1gO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBgJHtrZXlbdGhpcy5wcmltYXJ5S2V5TmFtZV19IyR7a2V5W3RoaXMuc29ydEtleU5hbWVdfWA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIG5ldyByZWNvcmQgYW5kIGF1dG9tYXRpY2FsbHkgc3RhbXBzIGNyZWF0ZWQgYXVkaXQgZmllbGRzLlxuICAgICAqL1xuICAgIGFzeW5jIHNhdmUoaXRlbTogVCwgYXV0aENvbnRleHQ/OiBBdXRoQ29udGV4dCk6IFByb21pc2U8VD4ge1xuICAgICAgICBjb25zdCBjcmVhdGVGbiA9IHRoaXMubW9kZWwuY3JlYXRlIGFzIENyZWF0ZUZuPFQ+O1xuICAgICAgICBjb25zdCBjcmVhdGVkID0gYXdhaXQgY3JlYXRlRm4oe1xuICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgIGNyZWF0ZWRfdGltZTogbmV3IERhdGUoKSxcbiAgICAgICAgICAgIGNyZWF0ZWRfdXNlcjogYXV0aENvbnRleHQ/LnVzZXJTdWJcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBjcmVhdGVkIGFzIFQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyBhbiBleGlzdGluZyByZWNvcmQgYW5kIGF1dG9tYXRpY2FsbHkgc3RhbXBzIHVwZGF0ZWQgYXVkaXQgZmllbGRzLlxuICAgICAqL1xuICAgIGFzeW5jIHVwZGF0ZShwcmltYXJ5S2V5VmFsdWU6IHN0cmluZywgdXBkYXRlczogUGFydGlhbDxUPiwgYXV0aENvbnRleHQ/OiBBdXRoQ29udGV4dCwgc29ydEtleVZhbHVlPzogc3RyaW5nKTogUHJvbWlzZTxUPiB7XG4gICAgICAgIGNvbnN0IHVwZGF0ZUZuID0gdGhpcy5tb2RlbC51cGRhdGUgYXMgVXBkYXRlRm48VD47XG4gICAgICAgIGNvbnN0IHVwZGF0ZWQgPSBhd2FpdCB1cGRhdGVGbihcbiAgICAgICAgICAgIHRoaXMuZ2V0S2V5T2JqZWN0KHByaW1hcnlLZXlWYWx1ZSwgc29ydEtleVZhbHVlKSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAuLi51cGRhdGVzLFxuICAgICAgICAgICAgICAgIHVwZGF0ZWRfdGltZTogbmV3IERhdGUoKSxcbiAgICAgICAgICAgICAgICB1cGRhdGVkX3VzZXI6IGF1dGhDb250ZXh0Py51c2VyU3ViXG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiB1cGRhdGVkIGFzIFQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVsZXRlcyBvbmUgcmVjb3JkIGJ5IHByaW1hcnkga2V5LlxuICAgICAqL1xuICAgIGFzeW5jIGRlbGV0ZShwcmltYXJ5S2V5VmFsdWU6IHN0cmluZywgc29ydEtleVZhbHVlPzogc3RyaW5nKTogUHJvbWlzZTxUIHwgdW5kZWZpbmVkPiB7XG4gICAgICAgIGNvbnN0IGRlbGV0ZUZuID0gdGhpcy5tb2RlbC5kZWxldGUgYXMgRGVsZXRlRm47XG4gICAgICAgIGNvbnN0IGRlbGV0ZWQgPSBhd2FpdCBkZWxldGVGbih0aGlzLmdldEtleU9iamVjdChwcmltYXJ5S2V5VmFsdWUsIHNvcnRLZXlWYWx1ZSkpO1xuICAgICAgICByZXR1cm4gZGVsZXRlZCBhcyBUIHwgdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZldGNoZXMgb25lIHJlY29yZCBieSBwcmltYXJ5IGtleS4gUmV0dXJucyBudWxsIHdoZW4gbm90IGZvdW5kLlxuICAgICAqL1xuICAgIGFzeW5jIGdldChwcmltYXJ5S2V5VmFsdWU6IHN0cmluZywgc29ydEtleVZhbHVlPzogc3RyaW5nKTogUHJvbWlzZTxUIHwgbnVsbD4ge1xuICAgICAgICBjb25zdCBnZXRGbiA9IHRoaXMubW9kZWwuZ2V0IGFzIEdldEZuO1xuICAgICAgICBjb25zdCBpdGVtID0gYXdhaXQgZ2V0Rm4odGhpcy5nZXRLZXlPYmplY3QocHJpbWFyeUtleVZhbHVlLCBzb3J0S2V5VmFsdWUpKTtcbiAgICAgICAgcmV0dXJuIChpdGVtIGFzIFQgfCB1bmRlZmluZWQpID8/IG51bGw7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV3JpdGVzIG11bHRpcGxlIHJlY29yZHMgaW4gYSBiYXRjaCBhbmQgdGhyb3dzIGlmIGFueSBpdGVtIGlzIGxlZnQgdW5wcm9jZXNzZWQuXG4gICAgICovXG4gICAgYXN5bmMgYmF0Y2hTYXZlKGl0ZW1zOiBUW10sIGF1dGhDb250ZXh0PzogQXV0aENvbnRleHQpOiBQcm9taXNlPFRbXT4ge1xuICAgICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBjb25zdCBpbnB1dEl0ZW1zID0gaXRlbXMubWFwKChpdGVtKSA9PiAoe1xuICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgIGNyZWF0ZWRfdGltZTogbm93LFxuICAgICAgICAgICAgY3JlYXRlZF91c2VyOiBhdXRoQ29udGV4dD8udXNlclN1YlxuICAgICAgICB9KSkgYXMgVFtdO1xuXG4gICAgICAgIGNvbnN0IGJhdGNoUHV0Rm4gPSB0aGlzLm1vZGVsLmJhdGNoUHV0IGFzIEJhdGNoUHV0Rm48VD47XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGJhdGNoUHV0Rm4oaW5wdXRJdGVtcyk7XG4gICAgICAgIGlmIChyZXN1bHQudW5wcm9jZXNzZWRJdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEJhdGNoIHNhdmUgcGFydGlhbGx5IGZhaWxlZC4gVW5wcm9jZXNzZWQgaXRlbXM6ICR7cmVzdWx0LnVucHJvY2Vzc2VkSXRlbXMubGVuZ3RofWApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGlucHV0SXRlbXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBzZXJ0cyBtdWx0aXBsZSByZWNvcmRzIGJ5IHByaW1hcnkga2V5LlxuICAgICAqIE5ldyBrZXlzIGFyZSBjcmVhdGVkIChjcmVhdGVkXyogZmllbGRzKSwgZXhpc3Rpbmcga2V5cyBhcmUgdXBkYXRlZCAodXBkYXRlZF8qIGZpZWxkcykuXG4gICAgICovXG4gICAgYXN5bmMgYmF0Y2hVcHNlcnQoaXRlbXM6IFRbXSwgYXV0aENvbnRleHQ/OiBBdXRoQ29udGV4dCk6IFByb21pc2U8VFtdPiB7XG4gICAgICAgIGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7XG4gICAgICAgIGNvbnN0IGtleXMgPSBpdGVtcy5tYXAoKGl0ZW0pID0+IHRoaXMuZ2V0SXRlbUtleU9iamVjdChpdGVtKSk7XG4gICAgICAgIGNvbnN0IGV4aXN0aW5nSXRlbXMgPSBhd2FpdCB0aGlzLmJhdGNoR2V0QnlLZXlzKGtleXMpO1xuXG4gICAgICAgIGNvbnN0IGV4aXN0aW5nS2V5U2V0ID0gbmV3IFNldChcbiAgICAgICAgICAgIGV4aXN0aW5nSXRlbXMubWFwKChpdGVtKSA9PiB0aGlzLnNlcmlhbGl6ZUtleSh0aGlzLmdldEl0ZW1LZXlPYmplY3QoaXRlbSkpKVxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IHVwc2VydEl0ZW1zID0gaXRlbXMubWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpdGVtS2V5ID0gdGhpcy5nZXRJdGVtS2V5T2JqZWN0KGl0ZW0pO1xuICAgICAgICAgICAgaWYgKGV4aXN0aW5nS2V5U2V0Lmhhcyh0aGlzLnNlcmlhbGl6ZUtleShpdGVtS2V5KSkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgICAgICAgICB1cGRhdGVkX3RpbWU6IG5vdyxcbiAgICAgICAgICAgICAgICAgICAgdXBkYXRlZF91c2VyOiBhdXRoQ29udGV4dD8udXNlclN1YlxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4uaXRlbSxcbiAgICAgICAgICAgICAgICBjcmVhdGVkX3RpbWU6IG5vdyxcbiAgICAgICAgICAgICAgICBjcmVhdGVkX3VzZXI6IGF1dGhDb250ZXh0Py51c2VyU3ViXG4gICAgICAgICAgICB9O1xuICAgICAgICB9KSBhcyBUW107XG5cbiAgICAgICAgY29uc3QgYmF0Y2hQdXRGbiA9IHRoaXMubW9kZWwuYmF0Y2hQdXQgYXMgQmF0Y2hQdXRGbjxUPjtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgYmF0Y2hQdXRGbih1cHNlcnRJdGVtcyk7XG4gICAgICAgIGlmIChyZXN1bHQudW5wcm9jZXNzZWRJdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEJhdGNoIHVwc2VydCBwYXJ0aWFsbHkgZmFpbGVkLiBVbnByb2Nlc3NlZCBpdGVtczogJHtyZXN1bHQudW5wcm9jZXNzZWRJdGVtcy5sZW5ndGh9YCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdXBzZXJ0SXRlbXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmV0Y2hlcyBtdWx0aXBsZSByZWNvcmRzIGJ5IHByaW1hcnkga2V5cy5cbiAgICAgKi9cbiAgICBhc3luYyBiYXRjaEdldChwcmltYXJ5S2V5VmFsdWVzOiBzdHJpbmdbXSk6IFByb21pc2U8VFtdPiB7XG4gICAgICAgIGNvbnN0IGtleXMgPSBwcmltYXJ5S2V5VmFsdWVzLm1hcCgodmFsdWUpID0+IHRoaXMuZ2V0S2V5T2JqZWN0KHZhbHVlKSk7XG4gICAgICAgIHJldHVybiB0aGlzLmJhdGNoR2V0QnlLZXlzKGtleXMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZldGNoZXMgbXVsdGlwbGUgcmVjb3JkcyBieSBrZXkgb2JqZWN0cyAoc3VwcG9ydHMgaGFzaCArIG9wdGlvbmFsIHNvcnQga2V5KS5cbiAgICAgKi9cbiAgICBhc3luYyBiYXRjaEdldEJ5S2V5cyhrZXlzOiBEeW5hbW9LZXlbXSk6IFByb21pc2U8VFtdPiB7XG4gICAgICAgIGNvbnN0IGJhdGNoR2V0Rm4gPSB0aGlzLm1vZGVsLmJhdGNoR2V0IGFzIEJhdGNoR2V0Rm47XG4gICAgICAgIGNvbnN0IGl0ZW1zID0gYXdhaXQgYmF0Y2hHZXRGbihrZXlzKTtcbiAgICAgICAgcmV0dXJuIGl0ZW1zIGFzIFRbXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZWNvZGVzIGEgYmFzZTY0IGNvbnRpbnVhdGlvbiB0b2tlbiBpbnRvIER5bmFtb0RCIGxhc3QgZXZhbHVhdGVkIGtleS5cbiAgICAgKi9cbiAgICBkZWNvZGUoY29udGludWF0aW9uVG9rZW46IHN0cmluZyB8IHVuZGVmaW5lZCk6IER5bmFtb0tleSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICghY29udGludWF0aW9uVG9rZW4pIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoQnVmZmVyLmZyb20oY29udGludWF0aW9uVG9rZW4sIFwiYmFzZTY0XCIpLnRvU3RyaW5nKFwidXRmOFwiKSkgYXMgRHluYW1vS2V5O1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBjb250aW51YXRpb25Ub2tlblwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEVuY29kZXMgRHluYW1vREIgbGFzdCBldmFsdWF0ZWQga2V5IGludG8gYSBiYXNlNjQgY29udGludWF0aW9uIHRva2VuLlxuICAgICAqL1xuICAgIGFzeW5jIGVuY29kZShsYXN0RXZhbHVhdGVkS2V5OiBEeW5hbW9LZXkgfCB1bmRlZmluZWQpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgICAgICBpZiAoIWxhc3RFdmFsdWF0ZWRLZXkpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gQnVmZmVyLmZyb20oSlNPTi5zdHJpbmdpZnkobGFzdEV2YWx1YXRlZEtleSkpLnRvU3RyaW5nKFwiYmFzZTY0XCIpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,33 @@
1
+ import { Item } from "dynamoose/dist/Item";
2
+ /**
3
+ * Shared audit fields contract for Dynamoose entities.
4
+ * Combine with `Item` so module models satisfy Dynamoose generic constraints.
5
+ */
6
+ export interface BaseDynamooseFields {
7
+ created_time?: Date;
8
+ updated_time?: Date;
9
+ created_user?: string;
10
+ updated_user?: string;
11
+ }
12
+ /**
13
+ * Base Dynamoose model that all module models should extend.
14
+ * Provides Dynamoose Item methods plus shared audit fields.
15
+ */
16
+ export interface BaseDynamooseModel extends Item, BaseDynamooseFields {
17
+ }
18
+ /**
19
+ * Reusable runtime schema fragment for audit fields.
20
+ * Spread this into Dynamoose schema definitions to avoid duplication.
21
+ */
22
+ export declare const BASE_DYNAMOOSE_AUDIT_SCHEMA: {
23
+ readonly created_time: DateConstructor;
24
+ readonly updated_time: DateConstructor;
25
+ readonly created_user: StringConstructor;
26
+ readonly updated_user: StringConstructor;
27
+ };
28
+ /**
29
+ * Auth payload used by DAO methods for audit stamping.
30
+ */
31
+ export type AuthContext = {
32
+ userSub?: string;
33
+ };
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BASE_DYNAMOOSE_AUDIT_SCHEMA = void 0;
4
+ /**
5
+ * Reusable runtime schema fragment for audit fields.
6
+ * Spread this into Dynamoose schema definitions to avoid duplication.
7
+ */
8
+ exports.BASE_DYNAMOOSE_AUDIT_SCHEMA = {
9
+ created_time: Date,
10
+ updated_time: Date,
11
+ created_user: String,
12
+ updated_user: String
13
+ };
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1keW5hbW9vc2UtbW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYmFzZS1keW5hbW9vc2UtbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBbUJBOzs7R0FHRztBQUNVLFFBQUEsMkJBQTJCLEdBQUc7SUFDdkMsWUFBWSxFQUFFLElBQUk7SUFDbEIsWUFBWSxFQUFFLElBQUk7SUFDbEIsWUFBWSxFQUFFLE1BQU07SUFDcEIsWUFBWSxFQUFFLE1BQU07Q0FDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSXRlbSB9IGZyb20gXCJkeW5hbW9vc2UvZGlzdC9JdGVtXCI7XG5cbi8qKlxuICogU2hhcmVkIGF1ZGl0IGZpZWxkcyBjb250cmFjdCBmb3IgRHluYW1vb3NlIGVudGl0aWVzLlxuICogQ29tYmluZSB3aXRoIGBJdGVtYCBzbyBtb2R1bGUgbW9kZWxzIHNhdGlzZnkgRHluYW1vb3NlIGdlbmVyaWMgY29uc3RyYWludHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUR5bmFtb29zZUZpZWxkcyB7XG4gICAgY3JlYXRlZF90aW1lPzogRGF0ZTtcbiAgICB1cGRhdGVkX3RpbWU/OiBEYXRlO1xuICAgIGNyZWF0ZWRfdXNlcj86IHN0cmluZztcbiAgICB1cGRhdGVkX3VzZXI/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQmFzZSBEeW5hbW9vc2UgbW9kZWwgdGhhdCBhbGwgbW9kdWxlIG1vZGVscyBzaG91bGQgZXh0ZW5kLlxuICogUHJvdmlkZXMgRHluYW1vb3NlIEl0ZW0gbWV0aG9kcyBwbHVzIHNoYXJlZCBhdWRpdCBmaWVsZHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUR5bmFtb29zZU1vZGVsIGV4dGVuZHMgSXRlbSwgQmFzZUR5bmFtb29zZUZpZWxkcyB7IH1cblxuLyoqXG4gKiBSZXVzYWJsZSBydW50aW1lIHNjaGVtYSBmcmFnbWVudCBmb3IgYXVkaXQgZmllbGRzLlxuICogU3ByZWFkIHRoaXMgaW50byBEeW5hbW9vc2Ugc2NoZW1hIGRlZmluaXRpb25zIHRvIGF2b2lkIGR1cGxpY2F0aW9uLlxuICovXG5leHBvcnQgY29uc3QgQkFTRV9EWU5BTU9PU0VfQVVESVRfU0NIRU1BID0ge1xuICAgIGNyZWF0ZWRfdGltZTogRGF0ZSxcbiAgICB1cGRhdGVkX3RpbWU6IERhdGUsXG4gICAgY3JlYXRlZF91c2VyOiBTdHJpbmcsXG4gICAgdXBkYXRlZF91c2VyOiBTdHJpbmdcbn0gYXMgY29uc3Q7XG5cbi8qKlxuICogQXV0aCBwYXlsb2FkIHVzZWQgYnkgREFPIG1ldGhvZHMgZm9yIGF1ZGl0IHN0YW1waW5nLlxuICovXG5leHBvcnQgdHlwZSBBdXRoQ29udGV4dCA9IHtcbiAgICB1c2VyU3ViPzogc3RyaW5nO1xufTtcbiJdfQ==
@@ -29,7 +29,7 @@ class DatabaseFactory {
29
29
  }
30
30
  static getTableName(baseTableName) {
31
31
  const config = environment_config_1.envManager.getDatabaseConfig();
32
- return `${config.tablePrefix}${baseTableName}`;
32
+ return `${baseTableName}`;
33
33
  }
34
34
  static resetInstances() {
35
35
  DatabaseFactory.dynamoDBInstance = undefined;
@@ -40,4 +40,4 @@ exports.DatabaseFactory = DatabaseFactory;
40
40
  // Export singleton instances for backward compatibility
41
41
  exports.dynamoDB = DatabaseFactory.getDynamoDBClient();
42
42
  exports.mapper = DatabaseFactory.getDataMapper();
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UtZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvZGF0YWJhc2UtZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw4REFBb0Q7QUFDcEQsNkNBQThDO0FBQzlDLDZEQUFrRTtBQUVsRSxNQUFhLGVBQWU7SUFJakIsTUFBTSxDQUFDLGlCQUFpQjtRQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDcEMsTUFBTSxNQUFNLEdBQUcsK0JBQVUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBRTlDLE1BQU0sWUFBWSxHQUFRO2dCQUN0QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07Z0JBQ3JCLFdBQVcsRUFBRSxNQUFNLENBQUMsV0FBVzthQUNsQyxDQUFDO1lBRUYscUNBQXFDO1lBQ3JDLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNsQixZQUFZLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDNUMsQ0FBQztZQUVELGVBQWUsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLDBCQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbEUsQ0FBQztRQUVELE9BQU8sZUFBZSxDQUFDLGdCQUFnQixDQUFDO0lBQzVDLENBQUM7SUFFTSxNQUFNLENBQUMsYUFBYTtRQUN2QixJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ25ELGVBQWUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxtQkFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNoRSxDQUFDO1FBRUQsT0FBTyxlQUFlLENBQUMsY0FBYyxDQUFDO0lBQzFDLENBQUM7SUFFTSxNQUFNLENBQUMsWUFBWSxDQUFDLGFBQXFCO1FBQzVDLE1BQU0sTUFBTSxHQUFHLCtCQUFVLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUM5QyxPQUFPLEdBQUcsTUFBTSxDQUFDLFdBQVcsR0FBRyxhQUFhLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRU0sTUFBTSxDQUFDLGNBQWM7UUFDeEIsZUFBZSxDQUFDLGdCQUFnQixHQUFHLFNBQWdCLENBQUM7UUFDcEQsZUFBZSxDQUFDLGNBQWMsR0FBRyxTQUFnQixDQUFDO0lBQ3RELENBQUM7Q0FDSjtBQTFDRCwwQ0EwQ0M7QUFFRCx3REFBd0Q7QUFDM0MsUUFBQSxRQUFRLEdBQUcsZUFBZSxDQUFDLGlCQUFpQixFQUFFLENBQUM7QUFDL0MsUUFBQSxNQUFNLEdBQUcsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHluYW1vREIgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtZHluYW1vZGInO1xuaW1wb3J0IHsgRGF0YU1hcHBlciB9IGZyb20gJ0Bub3ZhLW9kbS9tYXBwZXInO1xuaW1wb3J0IHsgZW52TWFuYWdlciwgRGF0YWJhc2VDb25maWcgfSBmcm9tICcuL2Vudmlyb25tZW50LWNvbmZpZyc7XG5cbmV4cG9ydCBjbGFzcyBEYXRhYmFzZUZhY3Rvcnkge1xuICAgIHByaXZhdGUgc3RhdGljIGR5bmFtb0RCSW5zdGFuY2U6IER5bmFtb0RCO1xuICAgIHByaXZhdGUgc3RhdGljIG1hcHBlckluc3RhbmNlOiBEYXRhTWFwcGVyO1xuXG4gICAgcHVibGljIHN0YXRpYyBnZXREeW5hbW9EQkNsaWVudCgpOiBEeW5hbW9EQiB7XG4gICAgICAgIGlmICghRGF0YWJhc2VGYWN0b3J5LmR5bmFtb0RCSW5zdGFuY2UpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IGVudk1hbmFnZXIuZ2V0RGF0YWJhc2VDb25maWcoKTtcblxuICAgICAgICAgICAgY29uc3QgZHluYW1vQ29uZmlnOiBhbnkgPSB7XG4gICAgICAgICAgICAgICAgcmVnaW9uOiBjb25maWcucmVnaW9uLFxuICAgICAgICAgICAgICAgIG1heEF0dGVtcHRzOiBjb25maWcubWF4QXR0ZW1wdHNcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIC8vIEFkZCBlbmRwb2ludCBmb3IgbG9jYWwgZGV2ZWxvcG1lbnRcbiAgICAgICAgICAgIGlmIChjb25maWcuZW5kcG9pbnQpIHtcbiAgICAgICAgICAgICAgICBkeW5hbW9Db25maWcuZW5kcG9pbnQgPSBjb25maWcuZW5kcG9pbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIERhdGFiYXNlRmFjdG9yeS5keW5hbW9EQkluc3RhbmNlID0gbmV3IER5bmFtb0RCKGR5bmFtb0NvbmZpZyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gRGF0YWJhc2VGYWN0b3J5LmR5bmFtb0RCSW5zdGFuY2U7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXREYXRhTWFwcGVyKCk6IERhdGFNYXBwZXIge1xuICAgICAgICBpZiAoIURhdGFiYXNlRmFjdG9yeS5tYXBwZXJJbnN0YW5jZSkge1xuICAgICAgICAgICAgY29uc3QgY2xpZW50ID0gRGF0YWJhc2VGYWN0b3J5LmdldER5bmFtb0RCQ2xpZW50KCk7XG4gICAgICAgICAgICBEYXRhYmFzZUZhY3RvcnkubWFwcGVySW5zdGFuY2UgPSBuZXcgRGF0YU1hcHBlcih7IGNsaWVudCB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBEYXRhYmFzZUZhY3RvcnkubWFwcGVySW5zdGFuY2U7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRUYWJsZU5hbWUoYmFzZVRhYmxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgY29uZmlnID0gZW52TWFuYWdlci5nZXREYXRhYmFzZUNvbmZpZygpO1xuICAgICAgICByZXR1cm4gYCR7Y29uZmlnLnRhYmxlUHJlZml4fSR7YmFzZVRhYmxlTmFtZX1gO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgcmVzZXRJbnN0YW5jZXMoKTogdm9pZCB7XG4gICAgICAgIERhdGFiYXNlRmFjdG9yeS5keW5hbW9EQkluc3RhbmNlID0gdW5kZWZpbmVkIGFzIGFueTtcbiAgICAgICAgRGF0YWJhc2VGYWN0b3J5Lm1hcHBlckluc3RhbmNlID0gdW5kZWZpbmVkIGFzIGFueTtcbiAgICB9XG59XG5cbi8vIEV4cG9ydCBzaW5nbGV0b24gaW5zdGFuY2VzIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5XG5leHBvcnQgY29uc3QgZHluYW1vREIgPSBEYXRhYmFzZUZhY3RvcnkuZ2V0RHluYW1vREJDbGllbnQoKTtcbmV4cG9ydCBjb25zdCBtYXBwZXIgPSBEYXRhYmFzZUZhY3RvcnkuZ2V0RGF0YU1hcHBlcigpO1xuIl19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UtZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvZGF0YWJhc2UtZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw4REFBb0Q7QUFDcEQsNkNBQThDO0FBQzlDLDZEQUFrRTtBQUVsRSxNQUFhLGVBQWU7SUFJakIsTUFBTSxDQUFDLGlCQUFpQjtRQUMzQixJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDcEMsTUFBTSxNQUFNLEdBQUcsK0JBQVUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBRTlDLE1BQU0sWUFBWSxHQUFRO2dCQUN0QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07Z0JBQ3JCLFdBQVcsRUFBRSxNQUFNLENBQUMsV0FBVzthQUNsQyxDQUFDO1lBRUYscUNBQXFDO1lBQ3JDLElBQUksTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNsQixZQUFZLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7WUFDNUMsQ0FBQztZQUVELGVBQWUsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLDBCQUFRLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbEUsQ0FBQztRQUVELE9BQU8sZUFBZSxDQUFDLGdCQUFnQixDQUFDO0lBQzVDLENBQUM7SUFFTSxNQUFNLENBQUMsYUFBYTtRQUN2QixJQUFJLENBQUMsZUFBZSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sTUFBTSxHQUFHLGVBQWUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQ25ELGVBQWUsQ0FBQyxjQUFjLEdBQUcsSUFBSSxtQkFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNoRSxDQUFDO1FBRUQsT0FBTyxlQUFlLENBQUMsY0FBYyxDQUFDO0lBQzFDLENBQUM7SUFFTSxNQUFNLENBQUMsWUFBWSxDQUFDLGFBQXFCO1FBQzVDLE1BQU0sTUFBTSxHQUFHLCtCQUFVLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUM5QyxPQUFPLEdBQUcsYUFBYSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjO1FBQ3hCLGVBQWUsQ0FBQyxnQkFBZ0IsR0FBRyxTQUFnQixDQUFDO1FBQ3BELGVBQWUsQ0FBQyxjQUFjLEdBQUcsU0FBZ0IsQ0FBQztJQUN0RCxDQUFDO0NBQ0o7QUExQ0QsMENBMENDO0FBRUQsd0RBQXdEO0FBQzNDLFFBQUEsUUFBUSxHQUFHLGVBQWUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO0FBQy9DLFFBQUEsTUFBTSxHQUFHLGVBQWUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER5bmFtb0RCIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWR5bmFtb2RiJztcbmltcG9ydCB7IERhdGFNYXBwZXIgfSBmcm9tICdAbm92YS1vZG0vbWFwcGVyJztcbmltcG9ydCB7IGVudk1hbmFnZXIsIERhdGFiYXNlQ29uZmlnIH0gZnJvbSAnLi9lbnZpcm9ubWVudC1jb25maWcnO1xuXG5leHBvcnQgY2xhc3MgRGF0YWJhc2VGYWN0b3J5IHtcbiAgICBwcml2YXRlIHN0YXRpYyBkeW5hbW9EQkluc3RhbmNlOiBEeW5hbW9EQjtcbiAgICBwcml2YXRlIHN0YXRpYyBtYXBwZXJJbnN0YW5jZTogRGF0YU1hcHBlcjtcblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0RHluYW1vREJDbGllbnQoKTogRHluYW1vREIge1xuICAgICAgICBpZiAoIURhdGFiYXNlRmFjdG9yeS5keW5hbW9EQkluc3RhbmNlKSB7XG4gICAgICAgICAgICBjb25zdCBjb25maWcgPSBlbnZNYW5hZ2VyLmdldERhdGFiYXNlQ29uZmlnKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IGR5bmFtb0NvbmZpZzogYW55ID0ge1xuICAgICAgICAgICAgICAgIHJlZ2lvbjogY29uZmlnLnJlZ2lvbixcbiAgICAgICAgICAgICAgICBtYXhBdHRlbXB0czogY29uZmlnLm1heEF0dGVtcHRzXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAvLyBBZGQgZW5kcG9pbnQgZm9yIGxvY2FsIGRldmVsb3BtZW50XG4gICAgICAgICAgICBpZiAoY29uZmlnLmVuZHBvaW50KSB7XG4gICAgICAgICAgICAgICAgZHluYW1vQ29uZmlnLmVuZHBvaW50ID0gY29uZmlnLmVuZHBvaW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBEYXRhYmFzZUZhY3RvcnkuZHluYW1vREJJbnN0YW5jZSA9IG5ldyBEeW5hbW9EQihkeW5hbW9Db25maWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIERhdGFiYXNlRmFjdG9yeS5keW5hbW9EQkluc3RhbmNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0RGF0YU1hcHBlcigpOiBEYXRhTWFwcGVyIHtcbiAgICAgICAgaWYgKCFEYXRhYmFzZUZhY3RvcnkubWFwcGVySW5zdGFuY2UpIHtcbiAgICAgICAgICAgIGNvbnN0IGNsaWVudCA9IERhdGFiYXNlRmFjdG9yeS5nZXREeW5hbW9EQkNsaWVudCgpO1xuICAgICAgICAgICAgRGF0YWJhc2VGYWN0b3J5Lm1hcHBlckluc3RhbmNlID0gbmV3IERhdGFNYXBwZXIoeyBjbGllbnQgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gRGF0YWJhc2VGYWN0b3J5Lm1hcHBlckluc3RhbmNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0VGFibGVOYW1lKGJhc2VUYWJsZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IGVudk1hbmFnZXIuZ2V0RGF0YWJhc2VDb25maWcoKTtcbiAgICAgICAgcmV0dXJuIGAke2Jhc2VUYWJsZU5hbWV9YDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHJlc2V0SW5zdGFuY2VzKCk6IHZvaWQge1xuICAgICAgICBEYXRhYmFzZUZhY3RvcnkuZHluYW1vREJJbnN0YW5jZSA9IHVuZGVmaW5lZCBhcyBhbnk7XG4gICAgICAgIERhdGFiYXNlRmFjdG9yeS5tYXBwZXJJbnN0YW5jZSA9IHVuZGVmaW5lZCBhcyBhbnk7XG4gICAgfVxufVxuXG4vLyBFeHBvcnQgc2luZ2xldG9uIGluc3RhbmNlcyBmb3IgYmFja3dhcmQgY29tcGF0aWJpbGl0eVxuZXhwb3J0IGNvbnN0IGR5bmFtb0RCID0gRGF0YWJhc2VGYWN0b3J5LmdldER5bmFtb0RCQ2xpZW50KCk7XG5leHBvcnQgY29uc3QgbWFwcGVyID0gRGF0YWJhc2VGYWN0b3J5LmdldERhdGFNYXBwZXIoKTtcbiJdfQ==
@@ -16,6 +16,9 @@ export declare const BASE_TABLE_NAMES: {
16
16
  readonly ORDER_REVIEW_FEEDBACK: "OrderReviewFeedbackTable";
17
17
  readonly CATERING_REQUEST: "CateringRequestTable";
18
18
  readonly FMP_REQUEST_CALLBACK: "FmpRequestCallbackTable";
19
+ readonly PLATTER_FIT: "PlatterFitTable";
20
+ readonly INFLUENCER_PROMO: "InfluencerPromoTable";
21
+ readonly INFLUENCER_REFERRAL: "InfluencerReferralTable";
19
22
  readonly ORDER: "OrderTable";
20
23
  readonly ORDER_ADDRESS: "OrderAddressTable";
21
24
  readonly ORDER_REVIEW: "OrderReviewTable";
@@ -71,6 +74,9 @@ export declare const TABLE_NAMES: {
71
74
  readonly ORDER_REVIEW_FEEDBACK: string;
72
75
  readonly CATERING_REQUEST: string;
73
76
  readonly FMP_REQUEST_CALLBACK: string;
77
+ readonly PLATTER_FIT: string;
78
+ readonly INFLUENCER_PROMO: string;
79
+ readonly INFLUENCER_REFERRAL: string;
74
80
  readonly ORDER: string;
75
81
  readonly ORDER_ADDRESS: string;
76
82
  readonly ORDER_REVIEW: string;
@@ -22,6 +22,9 @@ exports.BASE_TABLE_NAMES = {
22
22
  ORDER_REVIEW_FEEDBACK: 'OrderReviewFeedbackTable',
23
23
  CATERING_REQUEST: 'CateringRequestTable',
24
24
  FMP_REQUEST_CALLBACK: 'FmpRequestCallbackTable',
25
+ PLATTER_FIT: 'PlatterFitTable',
26
+ INFLUENCER_PROMO: 'InfluencerPromoTable',
27
+ INFLUENCER_REFERRAL: 'InfluencerReferralTable',
25
28
  // Order Module Tables
26
29
  ORDER: 'OrderTable',
27
30
  ORDER_ADDRESS: 'OrderAddressTable',
@@ -92,6 +95,9 @@ exports.TABLE_NAMES = {
92
95
  ORDER_REVIEW_FEEDBACK: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.ORDER_REVIEW_FEEDBACK),
93
96
  CATERING_REQUEST: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.CATERING_REQUEST),
94
97
  FMP_REQUEST_CALLBACK: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.FMP_REQUEST_CALLBACK),
98
+ PLATTER_FIT: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.PLATTER_FIT),
99
+ INFLUENCER_PROMO: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.INFLUENCER_PROMO),
100
+ INFLUENCER_REFERRAL: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.INFLUENCER_REFERRAL),
95
101
  // Order Module Tables
96
102
  ORDER: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.ORDER),
97
103
  ORDER_ADDRESS: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.ORDER_ADDRESS),
@@ -128,4 +134,4 @@ exports.TABLE_NAMES = {
128
134
  ACTIVITY_LOGS: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.ACTIVITY_LOGS),
129
135
  QUOTATIONS: TableNameManager.getTableName(exports.BASE_TABLE_NAMES.QUOTATIONS),
130
136
  };
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3RhYmxlLW5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlEQUFxRDtBQUVyRCxnREFBZ0Q7QUFDbkMsUUFBQSxnQkFBZ0IsR0FBRztJQUM1QixzQkFBc0I7SUFDdEIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxPQUFPLEVBQUUsYUFBYTtJQUN0QixPQUFPLEVBQUUsY0FBYztJQUN2QixtQkFBbUIsRUFBRSx5QkFBeUI7SUFDOUMsT0FBTyxFQUFFLGNBQWM7SUFDdkIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxrQkFBa0IsRUFBRSx1QkFBdUI7SUFDM0MsYUFBYSxFQUFFLG1CQUFtQjtJQUNsQyxvQkFBb0IsRUFBRSx5QkFBeUI7SUFDL0MsZUFBZSxFQUFFLHFCQUFxQjtJQUN0QyxjQUFjLEVBQUUsb0JBQW9CO0lBQ3BDLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLGVBQWUsRUFBRSxxQkFBcUI7SUFDdEMscUJBQXFCLEVBQUUsMEJBQTBCO0lBQ2pELHFCQUFxQixFQUFFLDBCQUEwQjtJQUNqRCxnQkFBZ0IsRUFBRSxzQkFBc0I7SUFDeEMsb0JBQW9CLEVBQUUseUJBQXlCO0lBRS9DLHNCQUFzQjtJQUN0QixLQUFLLEVBQUUsWUFBWTtJQUNuQixhQUFhLEVBQUUsbUJBQW1CO0lBQ2xDLFlBQVksRUFBRSxrQkFBa0I7SUFDaEMsT0FBTyxFQUFFLGNBQWM7SUFDdkIsV0FBVyxFQUFFLGlCQUFpQjtJQUM5QixRQUFRLEVBQUUsZUFBZTtJQUN6QixZQUFZLEVBQUUsa0JBQWtCO0lBQ2hDLGNBQWMsRUFBRSxvQkFBb0I7SUFDcEMsV0FBVyxFQUFFLGlCQUFpQjtJQUU5Qix3QkFBd0I7SUFDeEIsT0FBTyxFQUFFLGFBQWE7SUFDdEIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxJQUFJLEVBQUUsV0FBVztJQUNqQixlQUFlLEVBQUUscUJBQXFCO0lB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QU0sQ0FBQztJQUM5RCxrQkFBa0IsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsa0JBQWtCLENBQUM7SUFDdEYsU0FBUyxFQUFFLGdCQUFnQixDQUFDLFlBQVksQ0FBQyx3QkFBZ0IsQ0FBQyxTQUFTLENBQUM7SUFFcEUsdUJBQXVCO0lBQ3ZCLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzVFLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzVFLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsVUFBVSxDQUFDO0NBQ2hFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhYmFzZUZhY3RvcnkgfSBmcm9tICcuL2RhdGFiYXNlLWZhY3RvcnknO1xuXG4vLyBCYXNlIHRhYmxlIG5hbWVzICh3aXRob3V0IGVudmlyb25tZW50IHByZWZpeClcbmV4cG9ydCBjb25zdCBCQVNFX1RBQkxFX05BTUVTID0ge1xuICAgIC8vIEN1c3RvbWVyIEFwcCBUYWJsZXNcbiAgICBBUFBfRkVFREJBQ0s6ICdBcHBGZWVkYmFja1RhYmxlJyxcbiAgICBMU1FfQ1JNOiAnTHNxQ3JtVGFibGUnLFxuICAgIENVVExFUlk6ICdDdXRsZXJ5VGFibGUnLFxuICAgIElURU1fQUNDT01QQU5JTUVOVFM6ICdJdGVtQWNjb21wYW5pbWVudHNUYWJsZScsXG4gICAgQ1VJU0lORTogJ0N1aXNpbmVUYWJsZScsXG4gICAgVElFUl9ERVRBSUxTOiAnVGllckRldGFpbHNUYWJsZScsXG4gICAgVVNFUl9PUkRFUl9TVU1NQVJZOiAnVXNlck9yZGVyU3VtbWFyeVRhYmxlJyxcbiAgICBUSUVSX1JFRkVSUkFMOiAnVGllclJlZmVycmFsVGFibGUnLFxuICAgIFVTRVJfQUREUkVTU19SRVFVRVNUOiAnVXNlckFkZHJlc3NSZXF1ZXN0VGFibGUnLFxuICAgIENPTU1PTl9GRUVEQkFDSzogJ0NvbW1vbkZlZWRiYWNrVGFibGUnLFxuICAgIEdVRVNUX0ZFRURCQUNLOiAnR3Vlc3RGZWVkYmFja1RhYmxlJyxcbiAgICBDT1VOVEVSOiAnQ291bnRlclRhYmxlJyxcbiAgICBSRVFVRVNUX0lOVk9JQ0U6ICdSZXF1ZXN0SW52b2ljZVRhYmxlJyxcbiAgICBQTEFUVEVSX1NFQVJDSF9FVkVOVFM6ICdQbGF0dGVyU2VhcmNoRXZlbnRzVGFibGUnLFxuICAgIE9SREVSX1JFVklFV19GRUVEQkFDSzogJ09yZGVyUmV2aWV3RmVlZGJhY2tUYWJsZScsXG4gICAgQ0FURVJJTkdfUkVRVUVTVDogJ0NhdGVyaW5nUmVxdWVzdFRhYmxlJyxcbiAgICBGTVBfUkVRVUVTVF9DQUxMQkFDSzogJ0ZtcFJlcXVlc3RDYWxsYmFja1RhYmxlJyxcblxuICAgIC8vIE9yZGVyIE1vZHVsZSBUYWJsZXNcbiAgICBPUkRFUjogJ09yZGVyVGFibGUnLFxuICAgIE9SREVSX0FERFJFU1M6ICdPcmRlckFkZHJlc3NUYWJsZScsXG4gICAgT1JERVJfUkVWSUVXOiAnT3JkZXJSZXZpZXdUYWJsZScsXG4gICAgUEFZTUVOVDogJ1BheW1lbnRUYWJsZScsXG4gICAgUExBVEVfT1JERVI6ICdQbGF0ZU9yZGVyVGFibGUnLFxuICAgIFRSQUNLSU5HOiAnVHJhY2tpbmdUYWJsZScsXG4gICAgVVNFUl9BRERSRVNTOiAnVXNlckFkZHJlc3NUYWJsZScsXG4gICAgVVNFUl9TUEVDSUZJQ1M6ICdVc2VyU3BlY2lmaWNzVGFibGUnLFxuICAgIEJCUV9TS0VXRVJTOiAnQmJxU2tld2Vyc1RhYmxlJyxcblxuICAgIC8vIE90aGVyIEN1c3RvbWVyIFRhYmxlc1xuICAgIEFERF9PTlM6ICdBZGRPbnNUYWJsZScsXG4gICAgQkFOS19ERVRBSUxTOiAnQmFua0RldGFpbHNUYWJsZScsXG4gICAgQ0FSVDogJ0NhcnRUYWJsZScsXG4gICAgQ0FSVF9DQVRFR09SSUVTOiAnQ2FydENhdGVnb3JpZXNUYWJsZScsXG4gICAgQ0FURUdPUlk6ICdDYXRlZ29yeVRhYmxlJyxcbiAgICBDQVRFUklORzogJ0NhdGVyaW5nVGFibGUnLFxuICAgIENPTlRFTlQ6ICdDb250ZW50VGFibGUnLFxuICAgIENPVVBPTlM6ICdDb3Vwb25zVGFibGUnLFxuICAgIERFRkFVTFRfUExBVFRFUjogJ0RlZmF1bHRQbGF0dGVyVGFibGUnLFxuICAgIERFRkFVTFRfUExBVFRFUl9DQVRFR09SSUVTOiAnRGVmYXVsdFBsYXR0ZXJDYXRlZ29yaWVzVGFibGUnLFxuICAgIERFRkFVTFRfUExBVFRFUl9JVEVNUzogJ0RlZmF1bHRQbGF0dGVySXRlbXNUYWJsZScsXG4gICAgRVZFTlRfRVhFQ1VUSVZFUzogJ0V2ZW50RXhlY3V0aXZlc1RhYmxlJyxcbiAgICBJVEVNUzogJ0l0ZW1zVGFibGUnLFxuICAgIExFQUQ6ICdMZWFkVGFibGUnLFxuICAgIE9DQ0FTSU9OOiAnT2NjYXNpb25UYWJsZScsXG4gICAgUkVGRVJSQUxfQ09OVEVOVDogJ1JlZmVycmFsQ29udGVudFRhYmxlJyxcbiAgICBVU0VSOiAnVXNlclRhYmxlJyxcbiAgICBXQUxMRVQ6ICdXYWxsZXRUYWJsZScsXG4gICAgV0FMTEVUX1RSQU5TQUNUSU9OOiAnV2FsbGV0VHJhbnNhY3Rpb25UYWJsZScsXG4gICAgV0lUSERSQVdOOiAnV2l0aGRyYXduVGFibGUnLFxuXG4gICAgLy8gSW50ZXJuYWwgVXNlciBUYWJsZXNcbiAgICBJTlRFUk5BTF9VU0VSOiAnSW50ZXJuYWxVc2VyVGFibGUnLFxuICAgIEFDVElWSVRZX0xPR1M6ICdBY3Rpdml0eUxvZ3NUYWJsZScsXG4gICAgUVVPVEFUSU9OUzogJ1F1b3RhdGlvbnNUYWJsZScsXG59IGFzIGNvbnN0O1xuXG4vLyBFbnZpcm9ubWVudC1hd2FyZSB0YWJsZSBuYW1lIGdldHRlclxuZXhwb3J0IGNsYXNzIFRhYmxlTmFtZU1hbmFnZXIge1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0VGFibGVOYW1lKGJhc2VUYWJsZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBEYXRhYmFzZUZhY3RvcnkuZ2V0VGFibGVOYW1lKGJhc2VUYWJsZU5hbWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0QWxsVGFibGVOYW1lcygpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICAgICAgY29uc3QgdGFibGVOYW1lczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuXG4gICAgICAgIE9iamVjdC5lbnRyaWVzKEJBU0VfVEFCTEVfTkFNRVMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgdGFibGVOYW1lc1trZXldID0gdGhpcy5nZXRUYWJsZU5hbWUodmFsdWUpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGFibGVOYW1lcztcbiAgICB9XG59XG5cbi8vIEV4cG9ydCBlbnZpcm9ubWVudC1hd2FyZSB0YWJsZSBuYW1lc1xuZXhwb3J0IGNvbnN0IFRBQkxFX05BTUVTID0ge1xuICAgIC8vIEN1c3RvbWVyIEFwcCBUYWJsZXNcbiAgICBBUFBfRkVFREJBQ0s6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQVBQX0ZFRURCQUNLKSxcbiAgICBMU1FfQ1JNOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkxTUV9DUk0pLFxuICAgIENVVExFUlk6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ1VUTEVSWSksXG4gICAgSVRFTV9BQ0NPTVBBTklNRU5UUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5JVEVNX0FDQ09NUEFOSU1FTlRTKSxcbiAgICBDVUlTSU5FOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNVSVNJTkUpLFxuICAgIFRJRVJfREVUQUlMUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5USUVSX0RFVEFJTFMpLFxuICAgIFVTRVJfT1JERVJfU1VNTUFSWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5VU0VSX09SREVSX1NVTU1BUlkpLFxuICAgIFRJRVJfUkVGRVJSQUw6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVElFUl9SRUZFUlJBTCksXG4gICAgVVNFUl9BRERSRVNTX1JFUVVFU1Q6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVVNFUl9BRERSRVNTX1JFUVVFU1QpLFxuICAgIENPTU1PTl9GRUVEQkFDSzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DT01NT05fRkVFREJBQ0spLFxuICAgIEdVRVNUX0ZFRURCQUNLOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkdVRVNUX0ZFRURCQUNLKSxcbiAgICBDT1VOVEVSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNPVU5URVIpLFxuICAgIFJFUVVFU1RfSU5WT0lDRTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5SRVFVRVNUX0lOVk9JQ0UpLFxuICAgIFBMQVRURVJfU0VBUkNIX0VWRU5UUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5QTEFUVEVSX1NFQVJDSF9FVkVOVFMpLFxuICAgIE9SREVSX1JFVklFV19GRUVEQkFDSzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUl9SRVZJRVdfRkVFREJBQ0spLFxuICAgIENBVEVSSU5HX1JFUVVFU1Q6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FURVJJTkdfUkVRVUVTVCksXG4gICAgRk1QX1JFUVVFU1RfQ0FMTEJBQ0s6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuRk1QX1JFUVVFU1RfQ0FMTEJBQ0spLFxuXG4gICAgLy8gT3JkZXIgTW9kdWxlIFRhYmxlc1xuICAgIE9SREVSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLk9SREVSKSxcbiAgICBPUkRFUl9BRERSRVNTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLk9SREVSX0FERFJFU1MpLFxuICAgIE9SREVSX1JFVklFVzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUl9SRVZJRVcpLFxuICAgIFBBWU1FTlQ6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuUEFZTUVOVCksXG4gICAgUExBVEVfT1JERVI6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuUExBVEVfT1JERVIpLFxuICAgIFRSQUNLSU5HOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlRSQUNLSU5HKSxcbiAgICBVU0VSX0FERFJFU1M6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVVNFUl9BRERSRVNTKSxcbiAgICBVU0VSX1NQRUNJRklDUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5VU0VSX1NQRUNJRklDUyksXG4gICAgQkJRX1NLRVdFUlM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQkJRX1NLRVdFUlMpLFxuXG4gICAgLy8gT3RoZXIgQ3VzdG9tZXIgVGFibGVzXG4gICAgQUREX09OUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5BRERfT05TKSxcbiAgICBCQU5LX0RFVEFJTFM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQkFOS19ERVRBSUxTKSxcbiAgICBDQVJUOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNBUlQpLFxuICAgIENBUlRfQ0FURUdPUklFUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVJUX0NBVEVHT1JJRVMpLFxuICAgIENBVEVHT1JZOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNBVEVHT1JZKSxcbiAgICBDQVRFUklORzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVRFUklORyksXG4gICAgQ09OVEVOVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DT05URU5UKSxcbiAgICBDT1VQT05TOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNPVVBPTlMpLFxuICAgIERFRkFVTFRfUExBVFRFUjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5ERUZBVUxUX1BMQVRURVIpLFxuICAgIERFRkFVTFRfUExBVFRFUl9DQVRFR09SSUVTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkRFRkFVTFRfUExBVFRFUl9DQVRFR09SSUVTKSxcbiAgICBERUZBVUxUX1BMQVRURVJfSVRFTVM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuREVGQVVMVF9QTEFUVEVSX0lURU1TKSxcbiAgICBFVkVOVF9FWEVDVVRJVkVTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkVWRU5UX0VYRUNVVElWRVMpLFxuICAgIElURU1TOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLklURU1TKSxcbiAgICBMRUFEOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkxFQUQpLFxuICAgIE9DQ0FTSU9OOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLk9DQ0FTSU9OKSxcbiAgICBSRUZFUlJBTF9DT05URU5UOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlJFRkVSUkFMX0NPTlRFTlQpLFxuICAgIFVTRVI6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVVNFUiksXG4gICAgV0FMTEVUOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLldBTExFVCksXG4gICAgV0FMTEVUX1RSQU5TQUNUSU9OOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLldBTExFVF9UUkFOU0FDVElPTiksXG4gICAgV0lUSERSQVdOOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLldJVEhEUkFXTiksXG5cbiAgICAvLyBJbnRlcm5hbCBVc2VyIFRhYmxlc1xuICAgIElOVEVSTkFMX1VTRVI6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuSU5URVJOQUxfVVNFUiksXG4gICAgQUNUSVZJVFlfTE9HUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5BQ1RJVklUWV9MT0dTKSxcbiAgICBRVU9UQVRJT05TOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlFVT1RBVElPTlMpLFxufSBhcyBjb25zdDtcbiJdfQ==
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3RhYmxlLW5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlEQUFxRDtBQUVyRCxnREFBZ0Q7QUFDbkMsUUFBQSxnQkFBZ0IsR0FBRztJQUM1QixzQkFBc0I7SUFDdEIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxPQUFPLEVBQUUsYUFBYTtJQUN0QixPQUFPLEVBQUUsY0FBYztJQUN2QixtQkFBbUIsRUFBRSx5QkFBeUI7SUFDOUMsT0FBTyxFQUFFLGNBQWM7SUFDdkIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxrQkFBa0IsRUFBRSx1QkFBdUI7SUFDM0MsYUFBYSxFQUFFLG1CQUFtQjtJQUNsQyxvQkFBb0IsRUFBRSx5QkFBeUI7SUFDL0MsZUFBZSxFQUFFLHFCQUFxQjtJQUN0QyxjQUFjLEVBQUUsb0JBQW9CO0lBQ3BDLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLGVBQWUsRUFBRSxxQkFBcUI7SUFDdEMscUJBQXFCLEVBQUUsMEJBQTBCO0lBQ2pELHFCQUFxQixFQUFFLDBCQUEwQjtJQUNqRCxnQkFBZ0IsRUFBRSxzQkFBc0I7SUFDeEMsb0JBQW9CLEVBQUUseUJBQXlCO0lBQy9DLFdBQVcsRUFBRSxpQkFBaUI7SUFDOUIsZ0JBQWdCLEVBQUUsc0JBQXNCO0lBQ3hDLG1CQUFtQixFQUFFLHlCQUF5QjtJQUU5QyxzQkFBc0I7SUFDdEIsS0FBSyxFQUFFLFlBQVk7SUFDbkIsYUFBYSxFQUFFLG1CQUFtQjtJQUNsQyxZQUFZLEVBQUUsa0JBQWtCO0lBQ2hDLE9BQU8sRUFBRSxjQUFjO0lBQ3ZCLFdBQVcsRUFBRSxpQkFBaUI7SUFDOUIsUUFBUSxFQUFFLGVBQWU7SUFDekIsWUFBWSxFQUFFLGtCQUFrQjtJQUNoQyxjQUFjLEVBQUUsb0JBQW9CO0lBQ3BDLFdBQVcsRUFBRSxpQkFBaUI7SUFFOUIsd0JBQXdCO0lBQ3hCLE9BQU8sRUFBRSxh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QUMsd0JBQWdCLENBQUMsSUFBSSxDQUFDO0lBQzFELFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsUUFBUSxDQUFDO0lBQ2xFLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLFlBQVksQ0FBQyx3QkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQztJQUNsRixJQUFJLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLElBQUksQ0FBQztJQUMxRCxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsWUFBWSxDQUFDLHdCQUFnQixDQUFDLE1BQU0sQ0FBQztJQUM5RCxrQkFBa0IsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsa0JBQWtCLENBQUM7SUFDdEYsU0FBUyxFQUFFLGdCQUFnQixDQUFDLFlBQVksQ0FBQyx3QkFBZ0IsQ0FBQyxTQUFTLENBQUM7SUFFcEUsdUJBQXVCO0lBQ3ZCLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzVFLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsYUFBYSxDQUFDO0lBQzVFLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsd0JBQWdCLENBQUMsVUFBVSxDQUFDO0NBQ2hFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEYXRhYmFzZUZhY3RvcnkgfSBmcm9tICcuL2RhdGFiYXNlLWZhY3RvcnknO1xuXG4vLyBCYXNlIHRhYmxlIG5hbWVzICh3aXRob3V0IGVudmlyb25tZW50IHByZWZpeClcbmV4cG9ydCBjb25zdCBCQVNFX1RBQkxFX05BTUVTID0ge1xuICAgIC8vIEN1c3RvbWVyIEFwcCBUYWJsZXNcbiAgICBBUFBfRkVFREJBQ0s6ICdBcHBGZWVkYmFja1RhYmxlJyxcbiAgICBMU1FfQ1JNOiAnTHNxQ3JtVGFibGUnLFxuICAgIENVVExFUlk6ICdDdXRsZXJ5VGFibGUnLFxuICAgIElURU1fQUNDT01QQU5JTUVOVFM6ICdJdGVtQWNjb21wYW5pbWVudHNUYWJsZScsXG4gICAgQ1VJU0lORTogJ0N1aXNpbmVUYWJsZScsXG4gICAgVElFUl9ERVRBSUxTOiAnVGllckRldGFpbHNUYWJsZScsXG4gICAgVVNFUl9PUkRFUl9TVU1NQVJZOiAnVXNlck9yZGVyU3VtbWFyeVRhYmxlJyxcbiAgICBUSUVSX1JFRkVSUkFMOiAnVGllclJlZmVycmFsVGFibGUnLFxuICAgIFVTRVJfQUREUkVTU19SRVFVRVNUOiAnVXNlckFkZHJlc3NSZXF1ZXN0VGFibGUnLFxuICAgIENPTU1PTl9GRUVEQkFDSzogJ0NvbW1vbkZlZWRiYWNrVGFibGUnLFxuICAgIEdVRVNUX0ZFRURCQUNLOiAnR3Vlc3RGZWVkYmFja1RhYmxlJyxcbiAgICBDT1VOVEVSOiAnQ291bnRlclRhYmxlJyxcbiAgICBSRVFVRVNUX0lOVk9JQ0U6ICdSZXF1ZXN0SW52b2ljZVRhYmxlJyxcbiAgICBQTEFUVEVSX1NFQVJDSF9FVkVOVFM6ICdQbGF0dGVyU2VhcmNoRXZlbnRzVGFibGUnLFxuICAgIE9SREVSX1JFVklFV19GRUVEQkFDSzogJ09yZGVyUmV2aWV3RmVlZGJhY2tUYWJsZScsXG4gICAgQ0FURVJJTkdfUkVRVUVTVDogJ0NhdGVyaW5nUmVxdWVzdFRhYmxlJyxcbiAgICBGTVBfUkVRVUVTVF9DQUxMQkFDSzogJ0ZtcFJlcXVlc3RDYWxsYmFja1RhYmxlJyxcbiAgICBQTEFUVEVSX0ZJVDogJ1BsYXR0ZXJGaXRUYWJsZScsXG4gICAgSU5GTFVFTkNFUl9QUk9NTzogJ0luZmx1ZW5jZXJQcm9tb1RhYmxlJyxcbiAgICBJTkZMVUVOQ0VSX1JFRkVSUkFMOiAnSW5mbHVlbmNlclJlZmVycmFsVGFibGUnLFxuXG4gICAgLy8gT3JkZXIgTW9kdWxlIFRhYmxlc1xuICAgIE9SREVSOiAnT3JkZXJUYWJsZScsXG4gICAgT1JERVJfQUREUkVTUzogJ09yZGVyQWRkcmVzc1RhYmxlJyxcbiAgICBPUkRFUl9SRVZJRVc6ICdPcmRlclJldmlld1RhYmxlJyxcbiAgICBQQVlNRU5UOiAnUGF5bWVudFRhYmxlJyxcbiAgICBQTEFURV9PUkRFUjogJ1BsYXRlT3JkZXJUYWJsZScsXG4gICAgVFJBQ0tJTkc6ICdUcmFja2luZ1RhYmxlJyxcbiAgICBVU0VSX0FERFJFU1M6ICdVc2VyQWRkcmVzc1RhYmxlJyxcbiAgICBVU0VSX1NQRUNJRklDUzogJ1VzZXJTcGVjaWZpY3NUYWJsZScsXG4gICAgQkJRX1NLRVdFUlM6ICdCYnFTa2V3ZXJzVGFibGUnLFxuXG4gICAgLy8gT3RoZXIgQ3VzdG9tZXIgVGFibGVzXG4gICAgQUREX09OUzogJ0FkZE9uc1RhYmxlJyxcbiAgICBCQU5LX0RFVEFJTFM6ICdCYW5rRGV0YWlsc1RhYmxlJyxcbiAgICBDQVJUOiAnQ2FydFRhYmxlJyxcbiAgICBDQVJUX0NBVEVHT1JJRVM6ICdDYXJ0Q2F0ZWdvcmllc1RhYmxlJyxcbiAgICBDQVRFR09SWTogJ0NhdGVnb3J5VGFibGUnLFxuICAgIENBVEVSSU5HOiAnQ2F0ZXJpbmdUYWJsZScsXG4gICAgQ09OVEVOVDogJ0NvbnRlbnRUYWJsZScsXG4gICAgQ09VUE9OUzogJ0NvdXBvbnNUYWJsZScsXG4gICAgREVGQVVMVF9QTEFUVEVSOiAnRGVmYXVsdFBsYXR0ZXJUYWJsZScsXG4gICAgREVGQVVMVF9QTEFUVEVSX0NBVEVHT1JJRVM6ICdEZWZhdWx0UGxhdHRlckNhdGVnb3JpZXNUYWJsZScsXG4gICAgREVGQVVMVF9QTEFUVEVSX0lURU1TOiAnRGVmYXVsdFBsYXR0ZXJJdGVtc1RhYmxlJyxcbiAgICBFVkVOVF9FWEVDVVRJVkVTOiAnRXZlbnRFeGVjdXRpdmVzVGFibGUnLFxuICAgIElURU1TOiAnSXRlbXNUYWJsZScsXG4gICAgTEVBRDogJ0xlYWRUYWJsZScsXG4gICAgT0NDQVNJT046ICdPY2Nhc2lvblRhYmxlJyxcbiAgICBSRUZFUlJBTF9DT05URU5UOiAnUmVmZXJyYWxDb250ZW50VGFibGUnLFxuICAgIFVTRVI6ICdVc2VyVGFibGUnLFxuICAgIFdBTExFVDogJ1dhbGxldFRhYmxlJyxcbiAgICBXQUxMRVRfVFJBTlNBQ1RJT046ICdXYWxsZXRUcmFuc2FjdGlvblRhYmxlJyxcbiAgICBXSVRIRFJBV046ICdXaXRoZHJhd25UYWJsZScsXG5cbiAgICAvLyBJbnRlcm5hbCBVc2VyIFRhYmxlc1xuICAgIElOVEVSTkFMX1VTRVI6ICdJbnRlcm5hbFVzZXJUYWJsZScsXG4gICAgQUNUSVZJVFlfTE9HUzogJ0FjdGl2aXR5TG9nc1RhYmxlJyxcbiAgICBRVU9UQVRJT05TOiAnUXVvdGF0aW9uc1RhYmxlJyxcbn0gYXMgY29uc3Q7XG5cbi8vIEVudmlyb25tZW50LWF3YXJlIHRhYmxlIG5hbWUgZ2V0dGVyXG5leHBvcnQgY2xhc3MgVGFibGVOYW1lTWFuYWdlciB7XG4gICAgcHVibGljIHN0YXRpYyBnZXRUYWJsZU5hbWUoYmFzZVRhYmxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIERhdGFiYXNlRmFjdG9yeS5nZXRUYWJsZU5hbWUoYmFzZVRhYmxlTmFtZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRBbGxUYWJsZU5hbWVzKCk6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4ge1xuICAgICAgICBjb25zdCB0YWJsZU5hbWVzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG5cbiAgICAgICAgT2JqZWN0LmVudHJpZXMoQkFTRV9UQUJMRV9OQU1FUykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICB0YWJsZU5hbWVzW2tleV0gPSB0aGlzLmdldFRhYmxlTmFtZSh2YWx1ZSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB0YWJsZU5hbWVzO1xuICAgIH1cbn1cblxuLy8gRXhwb3J0IGVudmlyb25tZW50LWF3YXJlIHRhYmxlIG5hbWVzXG5leHBvcnQgY29uc3QgVEFCTEVfTkFNRVMgPSB7XG4gICAgLy8gQ3VzdG9tZXIgQXBwIFRhYmxlc1xuICAgIEFQUF9GRUVEQkFDSzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5BUFBfRkVFREJBQ0spLFxuICAgIExTUV9DUk06IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuTFNRX0NSTSksXG4gICAgQ1VUTEVSWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DVVRMRVJZKSxcbiAgICBJVEVNX0FDQ09NUEFOSU1FTlRTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLklURU1fQUNDT01QQU5JTUVOVFMpLFxuICAgIENVSVNJTkU6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ1VJU0lORSksXG4gICAgVElFUl9ERVRBSUxTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlRJRVJfREVUQUlMUyksXG4gICAgVVNFUl9PUkRFUl9TVU1NQVJZOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlVTRVJfT1JERVJfU1VNTUFSWSksXG4gICAgVElFUl9SRUZFUlJBTDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5USUVSX1JFRkVSUkFMKSxcbiAgICBVU0VSX0FERFJFU1NfUkVRVUVTVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5VU0VSX0FERFJFU1NfUkVRVUVTVCksXG4gICAgQ09NTU9OX0ZFRURCQUNLOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkNPTU1PTl9GRUVEQkFDSyksXG4gICAgR1VFU1RfRkVFREJBQ0s6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuR1VFU1RfRkVFREJBQ0spLFxuICAgIENPVU5URVI6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ09VTlRFUiksXG4gICAgUkVRVUVTVF9JTlZPSUNFOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlJFUVVFU1RfSU5WT0lDRSksXG4gICAgUExBVFRFUl9TRUFSQ0hfRVZFTlRTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBMQVRURVJfU0VBUkNIX0VWRU5UUyksXG4gICAgT1JERVJfUkVWSUVXX0ZFRURCQUNLOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLk9SREVSX1JFVklFV19GRUVEQkFDSyksXG4gICAgQ0FURVJJTkdfUkVRVUVTVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVRFUklOR19SRVFVRVNUKSxcbiAgICBGTVBfUkVRVUVTVF9DQUxMQkFDSzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5GTVBfUkVRVUVTVF9DQUxMQkFDSyksXG4gICAgUExBVFRFUl9GSVQ6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuUExBVFRFUl9GSVQpLFxuICAgIElORkxVRU5DRVJfUFJPTU86IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuSU5GTFVFTkNFUl9QUk9NTyksXG4gICAgSU5GTFVFTkNFUl9SRUZFUlJBTDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5JTkZMVUVOQ0VSX1JFRkVSUkFMKSxcblxuICAgIC8vIE9yZGVyIE1vZHVsZSBUYWJsZXNcbiAgICBPUkRFUjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUiksXG4gICAgT1JERVJfQUREUkVTUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PUkRFUl9BRERSRVNTKSxcbiAgICBPUkRFUl9SRVZJRVc6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuT1JERVJfUkVWSUVXKSxcbiAgICBQQVlNRU5UOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBBWU1FTlQpLFxuICAgIFBMQVRFX09SREVSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlBMQVRFX09SREVSKSxcbiAgICBUUkFDS0lORzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5UUkFDS0lORyksXG4gICAgVVNFUl9BRERSRVNTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlVTRVJfQUREUkVTUyksXG4gICAgVVNFUl9TUEVDSUZJQ1M6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuVVNFUl9TUEVDSUZJQ1MpLFxuICAgIEJCUV9TS0VXRVJTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkJCUV9TS0VXRVJTKSxcblxuICAgIC8vIE90aGVyIEN1c3RvbWVyIFRhYmxlc1xuICAgIEFERF9PTlM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQUREX09OUyksXG4gICAgQkFOS19ERVRBSUxTOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkJBTktfREVUQUlMUyksXG4gICAgQ0FSVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVJUKSxcbiAgICBDQVJUX0NBVEVHT1JJRVM6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FSVF9DQVRFR09SSUVTKSxcbiAgICBDQVRFR09SWTogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DQVRFR09SWSksXG4gICAgQ0FURVJJTkc6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ0FURVJJTkcpLFxuICAgIENPTlRFTlQ6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQ09OVEVOVCksXG4gICAgQ09VUE9OUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5DT1VQT05TKSxcbiAgICBERUZBVUxUX1BMQVRURVI6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuREVGQVVMVF9QTEFUVEVSKSxcbiAgICBERUZBVUxUX1BMQVRURVJfQ0FURUdPUklFUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5ERUZBVUxUX1BMQVRURVJfQ0FURUdPUklFUyksXG4gICAgREVGQVVMVF9QTEFUVEVSX0lURU1TOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLkRFRkFVTFRfUExBVFRFUl9JVEVNUyksXG4gICAgRVZFTlRfRVhFQ1VUSVZFUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5FVkVOVF9FWEVDVVRJVkVTKSxcbiAgICBJVEVNUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5JVEVNUyksXG4gICAgTEVBRDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5MRUFEKSxcbiAgICBPQ0NBU0lPTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5PQ0NBU0lPTiksXG4gICAgUkVGRVJSQUxfQ09OVEVOVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5SRUZFUlJBTF9DT05URU5UKSxcbiAgICBVU0VSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLlVTRVIpLFxuICAgIFdBTExFVDogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XQUxMRVQpLFxuICAgIFdBTExFVF9UUkFOU0FDVElPTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XQUxMRVRfVFJBTlNBQ1RJT04pLFxuICAgIFdJVEhEUkFXTjogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5XSVRIRFJBV04pLFxuXG4gICAgLy8gSW50ZXJuYWwgVXNlciBUYWJsZXNcbiAgICBJTlRFUk5BTF9VU0VSOiBUYWJsZU5hbWVNYW5hZ2VyLmdldFRhYmxlTmFtZShCQVNFX1RBQkxFX05BTUVTLklOVEVSTkFMX1VTRVIpLFxuICAgIEFDVElWSVRZX0xPR1M6IFRhYmxlTmFtZU1hbmFnZXIuZ2V0VGFibGVOYW1lKEJBU0VfVEFCTEVfTkFNRVMuQUNUSVZJVFlfTE9HUyksXG4gICAgUVVPVEFUSU9OUzogVGFibGVOYW1lTWFuYWdlci5nZXRUYWJsZU5hbWUoQkFTRV9UQUJMRV9OQU1FUy5RVU9UQVRJT05TKSxcbn0gYXMgY29uc3Q7XG4iXX0=
@@ -97,6 +97,7 @@ export declare class CartModel extends BaseModel {
97
97
  baseItemCount?: number;
98
98
  liveCounterDetails?: LiveCounterDetails[];
99
99
  skewerAddons?: SkewerAddons[];
100
+ inprogressPlatterValue?: number;
100
101
  }
101
102
  export declare class SkewerAddons {
102
103
  itemId: string;
@@ -294,6 +294,10 @@ __decorate([
294
294
  (0, annotations_1.attribute)(),
295
295
  __metadata("design:type", Array)
296
296
  ], CartModel.prototype, "skewerAddons", void 0);
297
+ __decorate([
298
+ (0, annotations_1.attribute)(),
299
+ __metadata("design:type", Number)
300
+ ], CartModel.prototype, "inprogressPlatterValue", void 0);
297
301
  exports.CartModel = CartModel = __decorate([
298
302
  (0, annotations_1.table)("CartTable")
299
303
  ], CartModel);
@@ -320,4 +324,4 @@ __decorate([
320
324
  (0, annotations_1.attribute)(),
321
325
  __metadata("design:type", Array)
322
326
  ], SkewerAddons.prototype, "accompaniments", void 0);
323
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FydC1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jdXN0b21lci11c2VyL2NhcnQvY2FydC1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSx1REFBMkU7QUFDM0UsaURBQTZDO0FBRzdDLE1BQWEsVUFBVTtDQU90QjtBQVBELGdDQU9DO0FBTEc7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O2lEQUNVO0FBRXRCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztvREFDYTtBQUV6QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7bURBQ2E7QUE2QjdCLE1BQWEsY0FBYztDQVMxQjtBQVRELHdDQVNDO0FBUEc7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O29EQUNVO0FBRXRCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztrREFDUTtBQUVwQjtJQURDLElBQUEsdUJBQVMsR0FBRTs7a0RBQ1E7QUFFcEI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O3NEQUNZO0FBRzVCLE1BQWEsYUFBYTtDQVN6QjtBQVRELHNDQVNDO0FBUEc7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O3FEQUNZO0FBRXhCO0lBREMsSUFBQSx1QkFBUyxHQUFFOzsrQ0FDSztBQUVqQjtJQURDLElBQUEsdUJBQVMsR0FBRTs7cURBQ1c7QUFFdkI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O2tEQUNRO0FBR3hCLE1BQWEsa0JBQWtCO0NBVzlCO0FBWEQsZ0RBV0M7QUFURztJQURDLElBQUEsdUJBQVMsR0FBRTs7eURBQ1U7QUFFdEI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7OzJEQUNZO0FBRXhCO0lBREMsSUFBQSx1QkFBUyxHQUFFOzsyREFDWTtBQUV4QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7NkRBQ2M7QUFFMUI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O29EQUNTO0FBR3pCLE1BQWEsUUFBUTtDQWFwQjtBQWJELDRCQWFDO0FBWEc7SUFEQyxJQUFBLHVCQUFT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LEdBQUU7O2dEQUNZO0FBRXhCO0lBREMsSUFBQSx1QkFBUyxHQUFFOzsrQ0FDVztBQUl2QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7OENBQ1M7QUFHckI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O3NEQUNpQjtBQUc3QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7Z0RBQ2E7QUFHekI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O2dEQUNXO0FBR3ZCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztxREFDOEI7QUFHMUM7SUFEQyxJQUFBLHVCQUFTLEdBQUU7OytDQUNrQjtvQkEvRnJCLFNBQVM7SUFEckIsSUFBQSxtQkFBSyxFQUFDLFdBQVcsQ0FBQztHQUNOLFNBQVMsQ0FnR3JCO0FBRUQsTUFBYSxZQUFZO0NBZ0J4QjtBQWhCRCxvQ0FnQkM7QUFiRztJQURDLElBQUEsdUJBQVMsR0FBRTs7NENBQ0c7QUFHZjtJQURDLElBQUEsdUJBQVMsR0FBRTs7K0NBQ007QUFHbEI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O21EQUNVO0FBR3RCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztvREFDVztBQUd2QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7b0RBQzZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYXR0cmlidXRlLCBoYXNoS2V5LCByYW5nZUtleSwgdGFibGUgfSBmcm9tIFwiQG5vdmEtb2RtL2Fubm90YXRpb25zXCJcbmltcG9ydCB7IEJhc2VNb2RlbCB9IGZyb20gXCIuLi8uLi9iYXNlLW1vZGVsXCI7XG5cblxuZXhwb3J0IGNsYXNzIEd1ZXN0Q291bnQge1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHZlZ0d1ZXN0Q291bnQ6IG51bWJlcjtcbiAgICBAYXR0cmlidXRlKClcbiAgICBub25WZWdHdWVzdENvdW50OiBudW1iZXI7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgdG90YWxHdWVzdENvdW50PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZE9uc0RldGFpbHMge1xuICAgIGFkZE9uc0lkOiBzdHJpbmc7XG4gICAgYWRkT25zUXR5OiBudW1iZXI7XG4gICAgYWRkT25zUXR5VW5pdDogc3RyaW5nO1xuICAgIGlzQm9uZWxlc3NJdGVtPzogYm9vbGVhbjsgLy8gVjJcbiAgICBib25lSXRlbVByaWNlPzogbnVtYmVyOyAvLyBWMlxuICAgIGFjY29tcGFuaW1lbnRzPzogQWNjb21wYW5pbWVudHNEZXRhaWxzW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWNjb21wYW5pbWVudHNEZXRhaWxzIHtcbiAgICBhY2NvbXBhbmltZW50SWQ6IHN0cmluZztcbiAgICBhY2NvbXBhbmltZW50UXR5OiBudW1iZXI7XG4gICAgYWNjb21wYW5pbWVudFF0eVVuaXQ6IHN0cmluZztcbiAgICBpc0ZyZWU/OiBib29sZWFuOyAvLyBBZGRlZCBOZXcgMTEtMTEtMjAyNVxuICAgIGlzQm9uZWxlc3NJdGVtPzogYm9vbGVhbjsgLy8gQWRkZWQgTmV3IDExLTExLTIwMjVcbiAgICBib25lSXRlbVByaWNlPzogbnVtYmVyOyAvLyBBZGRlZCBOZXcgMTEtMTEtMjAyNVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1dGxlcnlEZXRhaWxzIHtcbiAgICBjdXRsZXJ5SWQ6IHN0cmluZzsgLy8gQWRkZWQgTmV3IDI0LTExLTIwMjVcbiAgICBjdXRsZXJ5UXR5OiBudW1iZXI7IC8vIEFkZGVkIE5ldyAyNC0xMS0yMDI1XG4gICAgaXNTZXJ2aW5nPzogYm9vbGVhbjsgLy8gQWRkZWQgTmV3IDI0LTExLTIwMjUgLy8gdHJ1ZSB8IGZhbHNlXG59XG5cblxuXG5leHBvcnQgY2xhc3MgU2V0UHJlZmVyZW5jZXMge1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHB1cmVWZWdHdWVzdD86IG51bWJlcjsgLy8gSW4gRnV0dXJlIHRoZXkgc2hvdWxkIGJlIHJlbW92ZWQuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgc3BpY3lMZXZlbD86IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICB0ZWxsVXNNb3JlPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGNvbnN1bWVBbGNvaG9sPzogc3RyaW5nOyAvLyBJbiBGdXR1cmUgdGhleSBzaG91bGQgYmUgcmVtb3ZlZC5cbn1cblxuZXhwb3J0IGNsYXNzIEJicUNyZWRlbnRpYWwge1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGlzUGFydGlhbEdyaWxsOiBib29sZWFuO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGZyZWVLaXRzOiBudW1iZXI7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgY2hhcmdlYWJsZUtpdHM6IG51bWJlcjtcbiAgICBAYXR0cmlidXRlKClcbiAgICBwcmljZVBlcktpdDogbnVtYmVyO1xufVxuXG5leHBvcnQgY2xhc3MgTGl2ZUNvdW50ZXJEZXRhaWxzIHtcbiAgICBAYXR0cmlidXRlKClcbiAgICBsaXZlQ291bnRlcklkOiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgbGl2ZUNvdW50ZXJOYW1lOiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgbGl2ZUNvdW50ZXJUeXBlOiBzdHJpbmc7IC8vIENIQUFUX0NPVU5URVJcbiAgICBAYXR0cmlidXRlKClcbiAgICBpbmNsdWRlZEJhdGNoU2l6ZTogbnVtYmVyOyAvLyAyLDQsNlxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGl0ZW1MaXN0OiBJdGVtTGlzdFtdO1xufVxuXG5leHBvcnQgY2xhc3MgSXRlbUxpc3Qge1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGl0ZW1JZDogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGl0ZW1OYW1lOiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXRlbVF1YW50aXR5OiBudW1iZXI7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXRlbVF1YW50aXR5VW5pdDogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGl0ZW1UeXBlOiBzdHJpbmc7IC8vIFZFRywgTk9OVkVHXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXNGcmVlOiBib29sZWFuO1xufVxuXG5AdGFibGUoXCJDYXJ0VGFibGVcIilcbmV4cG9ydCBjbGFzcyBDYXJ0TW9kZWwgZXh0ZW5kcyBCYXNlTW9kZWwge1xuICAgIEBoYXNoS2V5KHsgdHlwZTogJ1N0cmluZycgfSlcbiAgICB1c2VySWQ6IHN0cmluZztcbiAgICBAcmFuZ2VLZXkoeyB0eXBlOiAnU3RyaW5nJyB9KVxuICAgIGNhcnRJZDogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHBsYXR0ZXJUeXBlPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoeyBpbmRleEtleUNvbmZpZ3VyYXRpb25zOiB7IFwiY2FydFN0YXR1c0luZGV4XCI6IFwiSEFTSFwiIH0sIHR5cGU6ICdTdHJpbmcnIH0pXG4gICAgY2FydFN0YXR1czogc3RyaW5nOyAvLyBBQ1RJVkUsIElOQUNUSVZFLCBJTkRSQUZUXG4gICAgQGF0dHJpYnV0ZSh7IGluZGV4S2V5Q29uZmlndXJhdGlvbnM6IHsgXCJjYXJ0U3RhZ2VJbmRleFwiOiBcIkhBU0hcIiB9LCB0eXBlOiAnU3RyaW5nJyB9KVxuICAgIGNhcnRTdGFnZTogc3RyaW5nOyAvLyBERVRBSUxTX05PVF9GSUxMRUQsIENPTVBMRVRFRCwgSVRFTV9OT1RfRklMTEVELCBNSVNTVElOR19EQVRFX1RJTUVcbiAgICBAYXR0cmlidXRlKHsgaW5kZXhLZXlDb25maWd1cmF0aW9uczogeyBcInBob25lTnVtYmVySW5kZXhcIjogXCJIQVNIXCIgfSwgdHlwZTogJ1N0cmluZycgfSlcbiAgICBwaG9uZU51bWJlcjogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIG9jY2FzaW9uSWQ/OiBzdHJpbmc7IC8vIFRoaW5rIEFnYWluXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgY2FydE5hbWU6IHN0cmluZzsgLy8gYnkgZGVmYXVsdCBDdXN0b20gUGxhdHRlciBvciBDaG9pY2Ugb2YgVXNlcnMgYmFzZWQgb24gdGhlaXIgY2hhbmdlc1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGNhcnRJbWFnZT86IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICBkZWZhdWx0UGxhdHRlcklkPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGNhcnRDYXRlZ29yaWVzSWQ/OiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgYWRkcmVzc0lkPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGFkZG9uc0lkPzogc3RyaW5nW107IC8vIFJlbW92ZSBBZnRlciBUaGlzIEJ1aWxkIGdvbmVcbiAgICBAYXR0cmlidXRlKClcbiAgICBjb3Vwb25Db2RlPzogc3RyaW5nOyAvLyBSZW1vdmUgQWZ0ZXIgVGhpcyBCdWlsZCBnb25lXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgZ3Vlc3RDb3VudD86IG51bWJlcjsgLy8gUmVtb3ZlIEFmdGVyIFRoaXMgQnVpbGQgZ29uZVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGFkZG9uc0lkcz86IEFkZE9uc0RldGFpbHNbXTsgLy8gcHJldmlvdWxseSB0aGV5IHNob3cgb25seSBhZGRvbnNJZFxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGN1dGxlcnlJZHM/OiBDdXRsZXJ5RGV0YWlsc1tdOyAvLyBBZGRlZCBOZXcgMjQtMTEtMjAyNVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGd1ZXN0Q291bnRzPzogR3Vlc3RDb3VudDsgLy8gcHJldmlvdWxseSB0aGV5IHNob3cgb25seSBndWVzdENvdW50IGFzIGEgbnVtYmVyXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgc2VsZWN0ZWRTZXJ2aWNlVHlwZT86IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICBldmVudERhdGU/OiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgZXZlbnRUaW1lPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIG1pblByaWNlPzogbnVtYmVyOyAvLyBSZW1vdmUgQWZ0ZXIgVGhpcyBCdWlsZCBnb25lXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgbWF4UHJpY2U/OiBudW1iZXI7IC8vIFJlbW92ZSBBZnRlciBUaGlzIEJ1aWxkIGdvbmVcbiAgICBAYXR0cmlidXRlKClcbiAgICBkb29yU3RlcFNlcnZpY2U6IHN0cmluZzsgLy8gUmVtb3ZlIEFmdGVyIFRoaXMgQnVpbGQgZ29uZVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGRlbGl2ZXJ5U2VydmljZTogc3RyaW5nOyAvLyBTVEFOREFSRCwgRE9PUlNURVAsIFBSRU1JVU1cbiAgICBAYXR0cmlidXRlKClcbiAgICBzZXRQcmVmZXJlbmNlcz86IFNldFByZWZlcmVuY2VzW107XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgY3JlYXRlT3duPzogYm9vbGVhbjtcbiAgICBAYXR0cmlidXRlKClcbiAgICBtZW51VHlwZT86IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICBtZWFsVGltZT86IHN0cmluZzsgLy8gXCJCUkVBS0ZBU1RcIiwgXCJMVU5DSFwiLCBcIkRJTk5FUlwiXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgcGxhdHRlclN1YlR5cGU/OiBzdHJpbmc7IC8vIFwiRElTQ09VTlRFRFwiLCBcIlJFR1VMQVJcIiwgXCJDUkVBVEVfT1dOXCJcbiAgICBAYXR0cmlidXRlKClcbiAgICBwbGF0dGVyTWluUHJpY2U/OiBudW1iZXI7IC8vIE5ldyBBZGRlZCAxMC0wOS0yMDI1XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgYWRkb25zQWNjb21wYW5pbWVudHNDb3N0PzogbnVtYmVyOyAvLyBOZXcgQWRkZWQgMTAtMDktMjAyNVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGV4dHJhUXR5Q29zdD86IG51bWJlcjsgLy8gTmV3IEFkZGVkIDEwLTA5LTIwMjVcbiAgICBAYXR0cmlidXRlKClcbiAgICBwcmVtaXVtSXRlbXNDb3N0PzogbnVtYmVyOyAvLyBOZXcgQWRkZWQgMTAtMDktMjAyNVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGN1dGxlcnlDb3N0PzogbnVtYmVyOyAvLyBOZXcgQWRkZWQgMTAtMDktMjAyNVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGJicUNyZWRlbnRpYWw/OiBCYnFDcmVkZW50aWFsOyAvLyBOZXcgQWRkZWQgMTEtMTItMjAyNVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGJicUd1aWRlbGluZXM/OiBib29sZWFuOyAvLyBOZXcgQWRkZWQgMjItMTItMjAyNVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGlzRk1QQ3JlYXRlZD86IGJvb2xlYW47IC8vIE5ldyBBZGRlZCAwNi0wMy0yMDI2XG5cbiAgICAvLyBjYXRlcmluZyBhdHRyaWJ1dGVzXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaGVscGVyQ291bnQ/OiBudW1iZXI7XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBjYXRlcmluZ1NlcnZpY2VUeXBlPzogc3RyaW5nO1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgb2NjYXNzaW9uTGlzdD86IHN0cmluZ1tdO1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgYmFzZUl0ZW1Db3VudD86IG51bWJlcjtcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGxpdmVDb3VudGVyRGV0YWlscz86IExpdmVDb3VudGVyRGV0YWlsc1tdO1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgc2tld2VyQWRkb25zPzogU2tld2VyQWRkb25zW107XG59XG5cbmV4cG9ydCBjbGFzcyBTa2V3ZXJBZGRvbnMge1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXRlbUlkOiBzdHJpbmc7XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBza2V3ZXJRdHk6IG51bWJlcjtcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHNrZXdlclF0eVVuaXQ6IHN0cmluZztcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHByaWNlUGVyU2tld2VyOiBudW1iZXI7XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBhY2NvbXBhbmltZW50cz86IEFjY29tcGFuaW1lbnRzRGV0YWlsc1tdO1xufVxuIl19
327
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FydC1tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jdXN0b21lci11c2VyL2NhcnQvY2FydC1tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSx1REFBMkU7QUFDM0UsaURBQTZDO0FBRzdDLE1BQWEsVUFBVTtDQU90QjtBQVBELGdDQU9DO0FBTEc7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O2lEQUNVO0FBRXRCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztvREFDYTtBQUV6QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7bURBQ2E7QUE2QjdCLE1BQWEsY0FBYztDQVMxQjtBQVRELHdDQVNDO0FBUEc7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O29EQUNVO0FBRXRCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztrREFDUTtBQUVwQjtJQURDLElBQUEsdUJBQVMsR0FBRTs7a0RBQ1E7QUFFcEI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O3NEQUNZO0FBRzVCLE1BQWEsYUFBYTtDQVN6QjtBQVRELHNDQVNDO0FBUEc7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O3FEQUNZO0FBRXhCO0lBREMsSUFBQSx1QkFBUyxHQUFFOzsrQ0FDSztBQUVqQjtJQURDLElBQUEsdUJBQVMsR0FBRTs7cURBQ1c7QUFFdkI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O2tEQUNRO0FBR3hCLE1BQWEsa0JBQWtCO0NBVzlCO0FBWEQsZ0RBV0M7QUFURztJQURDLElBQUEsdUJBQVMsR0FBRTs7eURBQ1U7QUFFdEI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7OzJEQUNZO0FBRXhCO0lBREMsSUFBQSx1QkFBUyxHQUFFOzsyREFDWTtBQUV4QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7NkRBQ2M7QUFFMUI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O29EQUNTO0FBR3pCLE1BQWEsUUFBUTtDQWFwQjtBQWJELDRCQWFDO0FBWEc7SUFEQyxJQUFBLHVCQUFT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LEdBQUU7O2dEQUNZO0FBRXhCO0lBREMsSUFBQSx1QkFBUyxHQUFFOzsrQ0FDVztBQUl2QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7OENBQ1M7QUFHckI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O3NEQUNpQjtBQUc3QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7Z0RBQ2E7QUFHekI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O2dEQUNXO0FBR3ZCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztxREFDOEI7QUFHMUM7SUFEQyxJQUFBLHVCQUFTLEdBQUU7OytDQUNrQjtBQUc5QjtJQURDLElBQUEsdUJBQVMsR0FBRTs7eURBQ29CO29CQWxHdkIsU0FBUztJQURyQixJQUFBLG1CQUFLLEVBQUMsV0FBVyxDQUFDO0dBQ04sU0FBUyxDQW1HckI7QUFFRCxNQUFhLFlBQVk7Q0FnQnhCO0FBaEJELG9DQWdCQztBQWJHO0lBREMsSUFBQSx1QkFBUyxHQUFFOzs0Q0FDRztBQUdmO0lBREMsSUFBQSx1QkFBUyxHQUFFOzsrQ0FDTTtBQUdsQjtJQURDLElBQUEsdUJBQVMsR0FBRTs7bURBQ1U7QUFHdEI7SUFEQyxJQUFBLHVCQUFTLEdBQUU7O29EQUNXO0FBR3ZCO0lBREMsSUFBQSx1QkFBUyxHQUFFOztvREFDNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhdHRyaWJ1dGUsIGhhc2hLZXksIHJhbmdlS2V5LCB0YWJsZSB9IGZyb20gXCJAbm92YS1vZG0vYW5ub3RhdGlvbnNcIlxuaW1wb3J0IHsgQmFzZU1vZGVsIH0gZnJvbSBcIi4uLy4uL2Jhc2UtbW9kZWxcIjtcblxuXG5leHBvcnQgY2xhc3MgR3Vlc3RDb3VudCB7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgdmVnR3Vlc3RDb3VudDogbnVtYmVyO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIG5vblZlZ0d1ZXN0Q291bnQ6IG51bWJlcjtcbiAgICBAYXR0cmlidXRlKClcbiAgICB0b3RhbEd1ZXN0Q291bnQ/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWRkT25zRGV0YWlscyB7XG4gICAgYWRkT25zSWQ6IHN0cmluZztcbiAgICBhZGRPbnNRdHk6IG51bWJlcjtcbiAgICBhZGRPbnNRdHlVbml0OiBzdHJpbmc7XG4gICAgaXNCb25lbGVzc0l0ZW0/OiBib29sZWFuOyAvLyBWMlxuICAgIGJvbmVJdGVtUHJpY2U/OiBudW1iZXI7IC8vIFYyXG4gICAgYWNjb21wYW5pbWVudHM/OiBBY2NvbXBhbmltZW50c0RldGFpbHNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBY2NvbXBhbmltZW50c0RldGFpbHMge1xuICAgIGFjY29tcGFuaW1lbnRJZDogc3RyaW5nO1xuICAgIGFjY29tcGFuaW1lbnRRdHk6IG51bWJlcjtcbiAgICBhY2NvbXBhbmltZW50UXR5VW5pdDogc3RyaW5nO1xuICAgIGlzRnJlZT86IGJvb2xlYW47IC8vIEFkZGVkIE5ldyAxMS0xMS0yMDI1XG4gICAgaXNCb25lbGVzc0l0ZW0/OiBib29sZWFuOyAvLyBBZGRlZCBOZXcgMTEtMTEtMjAyNVxuICAgIGJvbmVJdGVtUHJpY2U/OiBudW1iZXI7IC8vIEFkZGVkIE5ldyAxMS0xMS0yMDI1XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3V0bGVyeURldGFpbHMge1xuICAgIGN1dGxlcnlJZDogc3RyaW5nOyAvLyBBZGRlZCBOZXcgMjQtMTEtMjAyNVxuICAgIGN1dGxlcnlRdHk6IG51bWJlcjsgLy8gQWRkZWQgTmV3IDI0LTExLTIwMjVcbiAgICBpc1NlcnZpbmc/OiBib29sZWFuOyAvLyBBZGRlZCBOZXcgMjQtMTEtMjAyNSAvLyB0cnVlIHwgZmFsc2Vcbn1cblxuXG5cbmV4cG9ydCBjbGFzcyBTZXRQcmVmZXJlbmNlcyB7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgcHVyZVZlZ0d1ZXN0PzogbnVtYmVyOyAvLyBJbiBGdXR1cmUgdGhleSBzaG91bGQgYmUgcmVtb3ZlZC5cbiAgICBAYXR0cmlidXRlKClcbiAgICBzcGljeUxldmVsPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHRlbGxVc01vcmU/OiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgY29uc3VtZUFsY29ob2w/OiBzdHJpbmc7IC8vIEluIEZ1dHVyZSB0aGV5IHNob3VsZCBiZSByZW1vdmVkLlxufVxuXG5leHBvcnQgY2xhc3MgQmJxQ3JlZGVudGlhbCB7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXNQYXJ0aWFsR3JpbGw6IGJvb2xlYW47XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgZnJlZUtpdHM6IG51bWJlcjtcbiAgICBAYXR0cmlidXRlKClcbiAgICBjaGFyZ2VhYmxlS2l0czogbnVtYmVyO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHByaWNlUGVyS2l0OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBMaXZlQ291bnRlckRldGFpbHMge1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGxpdmVDb3VudGVySWQ6IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICBsaXZlQ291bnRlck5hbWU6IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICBsaXZlQ291bnRlclR5cGU6IHN0cmluZzsgLy8gQ0hBQVRfQ09VTlRFUlxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGluY2x1ZGVkQmF0Y2hTaXplOiBudW1iZXI7IC8vIDIsNCw2XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXRlbUxpc3Q6IEl0ZW1MaXN0W107XG59XG5cbmV4cG9ydCBjbGFzcyBJdGVtTGlzdCB7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXRlbUlkOiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXRlbU5hbWU6IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICBpdGVtUXVhbnRpdHk6IG51bWJlcjtcbiAgICBAYXR0cmlidXRlKClcbiAgICBpdGVtUXVhbnRpdHlVbml0OiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXRlbVR5cGU6IHN0cmluZzsgLy8gVkVHLCBOT05WRUdcbiAgICBAYXR0cmlidXRlKClcbiAgICBpc0ZyZWU6IGJvb2xlYW47XG59XG5cbkB0YWJsZShcIkNhcnRUYWJsZVwiKVxuZXhwb3J0IGNsYXNzIENhcnRNb2RlbCBleHRlbmRzIEJhc2VNb2RlbCB7XG4gICAgQGhhc2hLZXkoeyB0eXBlOiAnU3RyaW5nJyB9KVxuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIEByYW5nZUtleSh7IHR5cGU6ICdTdHJpbmcnIH0pXG4gICAgY2FydElkOiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgcGxhdHRlclR5cGU/OiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSh7IGluZGV4S2V5Q29uZmlndXJhdGlvbnM6IHsgXCJjYXJ0U3RhdHVzSW5kZXhcIjogXCJIQVNIXCIgfSwgdHlwZTogJ1N0cmluZycgfSlcbiAgICBjYXJ0U3RhdHVzOiBzdHJpbmc7IC8vIEFDVElWRSwgSU5BQ1RJVkUsIElORFJBRlRcbiAgICBAYXR0cmlidXRlKHsgaW5kZXhLZXlDb25maWd1cmF0aW9uczogeyBcImNhcnRTdGFnZUluZGV4XCI6IFwiSEFTSFwiIH0sIHR5cGU6ICdTdHJpbmcnIH0pXG4gICAgY2FydFN0YWdlOiBzdHJpbmc7IC8vIERFVEFJTFNfTk9UX0ZJTExFRCwgQ09NUExFVEVELCBJVEVNX05PVF9GSUxMRUQsIE1JU1NUSU5HX0RBVEVfVElNRVxuICAgIEBhdHRyaWJ1dGUoeyBpbmRleEtleUNvbmZpZ3VyYXRpb25zOiB7IFwicGhvbmVOdW1iZXJJbmRleFwiOiBcIkhBU0hcIiB9LCB0eXBlOiAnU3RyaW5nJyB9KVxuICAgIHBob25lTnVtYmVyOiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgb2NjYXNpb25JZD86IHN0cmluZzsgLy8gVGhpbmsgQWdhaW5cbiAgICBAYXR0cmlidXRlKClcbiAgICBjYXJ0TmFtZTogc3RyaW5nOyAvLyBieSBkZWZhdWx0IEN1c3RvbSBQbGF0dGVyIG9yIENob2ljZSBvZiBVc2VycyBiYXNlZCBvbiB0aGVpciBjaGFuZ2VzXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgY2FydEltYWdlPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGRlZmF1bHRQbGF0dGVySWQ/OiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgY2FydENhdGVnb3JpZXNJZD86IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICBhZGRyZXNzSWQ/OiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgYWRkb25zSWQ/OiBzdHJpbmdbXTsgLy8gUmVtb3ZlIEFmdGVyIFRoaXMgQnVpbGQgZ29uZVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGNvdXBvbkNvZGU/OiBzdHJpbmc7IC8vIFJlbW92ZSBBZnRlciBUaGlzIEJ1aWxkIGdvbmVcbiAgICBAYXR0cmlidXRlKClcbiAgICBndWVzdENvdW50PzogbnVtYmVyOyAvLyBSZW1vdmUgQWZ0ZXIgVGhpcyBCdWlsZCBnb25lXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgYWRkb25zSWRzPzogQWRkT25zRGV0YWlsc1tdOyAvLyBwcmV2aW91bGx5IHRoZXkgc2hvdyBvbmx5IGFkZG9uc0lkXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgY3V0bGVyeUlkcz86IEN1dGxlcnlEZXRhaWxzW107IC8vIEFkZGVkIE5ldyAyNC0xMS0yMDI1XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgZ3Vlc3RDb3VudHM/OiBHdWVzdENvdW50OyAvLyBwcmV2aW91bGx5IHRoZXkgc2hvdyBvbmx5IGd1ZXN0Q291bnQgYXMgYSBudW1iZXJcbiAgICBAYXR0cmlidXRlKClcbiAgICBzZWxlY3RlZFNlcnZpY2VUeXBlPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGV2ZW50RGF0ZT86IHN0cmluZztcbiAgICBAYXR0cmlidXRlKClcbiAgICBldmVudFRpbWU/OiBzdHJpbmc7XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgbWluUHJpY2U/OiBudW1iZXI7IC8vIFJlbW92ZSBBZnRlciBUaGlzIEJ1aWxkIGdvbmVcbiAgICBAYXR0cmlidXRlKClcbiAgICBtYXhQcmljZT86IG51bWJlcjsgLy8gUmVtb3ZlIEFmdGVyIFRoaXMgQnVpbGQgZ29uZVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGRvb3JTdGVwU2VydmljZTogc3RyaW5nOyAvLyBSZW1vdmUgQWZ0ZXIgVGhpcyBCdWlsZCBnb25lXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgZGVsaXZlcnlTZXJ2aWNlOiBzdHJpbmc7IC8vIFNUQU5EQVJELCBET09SU1RFUCwgUFJFTUlVTVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHNldFByZWZlcmVuY2VzPzogU2V0UHJlZmVyZW5jZXNbXTtcbiAgICBAYXR0cmlidXRlKClcbiAgICBjcmVhdGVPd24/OiBib29sZWFuO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIG1lbnVUeXBlPzogc3RyaW5nO1xuICAgIEBhdHRyaWJ1dGUoKVxuICAgIG1lYWxUaW1lPzogc3RyaW5nOyAvLyBcIkJSRUFLRkFTVFwiLCBcIkxVTkNIXCIsIFwiRElOTkVSXCJcbiAgICBAYXR0cmlidXRlKClcbiAgICBwbGF0dGVyU3ViVHlwZT86IHN0cmluZzsgLy8gXCJESVNDT1VOVEVEXCIsIFwiUkVHVUxBUlwiLCBcIkNSRUFURV9PV05cIlxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHBsYXR0ZXJNaW5QcmljZT86IG51bWJlcjsgLy8gTmV3IEFkZGVkIDEwLTA5LTIwMjVcbiAgICBAYXR0cmlidXRlKClcbiAgICBhZGRvbnNBY2NvbXBhbmltZW50c0Nvc3Q/OiBudW1iZXI7IC8vIE5ldyBBZGRlZCAxMC0wOS0yMDI1XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgZXh0cmFRdHlDb3N0PzogbnVtYmVyOyAvLyBOZXcgQWRkZWQgMTAtMDktMjAyNVxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHByZW1pdW1JdGVtc0Nvc3Q/OiBudW1iZXI7IC8vIE5ldyBBZGRlZCAxMC0wOS0yMDI1XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgY3V0bGVyeUNvc3Q/OiBudW1iZXI7IC8vIE5ldyBBZGRlZCAxMC0wOS0yMDI1XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgYmJxQ3JlZGVudGlhbD86IEJicUNyZWRlbnRpYWw7IC8vIE5ldyBBZGRlZCAxMS0xMi0yMDI1XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgYmJxR3VpZGVsaW5lcz86IGJvb2xlYW47IC8vIE5ldyBBZGRlZCAyMi0xMi0yMDI1XG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXNGTVBDcmVhdGVkPzogYm9vbGVhbjsgLy8gTmV3IEFkZGVkIDA2LTAzLTIwMjZcblxuICAgIC8vIGNhdGVyaW5nIGF0dHJpYnV0ZXNcbiAgICBAYXR0cmlidXRlKClcbiAgICBoZWxwZXJDb3VudD86IG51bWJlcjtcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGNhdGVyaW5nU2VydmljZVR5cGU/OiBzdHJpbmc7XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBvY2Nhc3Npb25MaXN0Pzogc3RyaW5nW107XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBiYXNlSXRlbUNvdW50PzogbnVtYmVyO1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgbGl2ZUNvdW50ZXJEZXRhaWxzPzogTGl2ZUNvdW50ZXJEZXRhaWxzW107XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBza2V3ZXJBZGRvbnM/OiBTa2V3ZXJBZGRvbnNbXTtcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIGlucHJvZ3Jlc3NQbGF0dGVyVmFsdWU/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBjbGFzcyBTa2V3ZXJBZGRvbnMge1xuXG4gICAgQGF0dHJpYnV0ZSgpXG4gICAgaXRlbUlkOiBzdHJpbmc7XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBza2V3ZXJRdHk6IG51bWJlcjtcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHNrZXdlclF0eVVuaXQ6IHN0cmluZztcblxuICAgIEBhdHRyaWJ1dGUoKVxuICAgIHByaWNlUGVyU2tld2VyOiBudW1iZXI7XG5cbiAgICBAYXR0cmlidXRlKClcbiAgICBhY2NvbXBhbmltZW50cz86IEFjY29tcGFuaW1lbnRzRGV0YWlsc1tdO1xufVxuIl19
@@ -1,4 +1,11 @@
1
1
  import { BaseModel } from "../../base-model";
2
+ /**
3
+ * Arbitrary metadata: any key name, values can be primitives, nested maps, or lists (including lists of objects).
4
+ * Example: metadata.homeBanner = [{ platterImage, platterId, ... }, ...]; metadata.tags = ["a","b"];
5
+ */
6
+ export type ContentMetadataValue = string | number | boolean | null | ContentMetadataValue[] | {
7
+ [key: string]: ContentMetadataValue;
8
+ };
2
9
  export declare class ContentModel extends BaseModel {
3
10
  id: string;
4
11
  category: string;
@@ -14,4 +21,5 @@ export declare class ContentModel extends BaseModel {
14
21
  contentActive: string;
15
22
  description?: string;
16
23
  content_title?: string[];
24
+ metadata?: Record<string, ContentMetadataValue>;
17
25
  }