lemon-core 4.2.7 → 5.0.0
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/README.md +128 -2
- package/dist/common/lemon-error.d.ts +34 -0
- package/dist/common/lemon-error.js +52 -0
- package/dist/common/lemon-error.js.map +1 -0
- package/dist/controllers/general-api-controller.d.ts +7 -0
- package/dist/controllers/general-api-controller.js +7 -0
- package/dist/controllers/general-api-controller.js.map +1 -1
- package/dist/cores/api/api-service.js +10 -43
- package/dist/cores/api/api-service.js.map +1 -1
- package/dist/cores/aws/aws-kms-service.d.ts +13 -5
- package/dist/cores/aws/aws-kms-service.js +23 -9
- package/dist/cores/aws/aws-kms-service.js.map +1 -1
- package/dist/cores/aws/aws-s3-service.d.ts +30 -4
- package/dist/cores/aws/aws-s3-service.js +35 -15
- package/dist/cores/aws/aws-s3-service.js.map +1 -1
- package/dist/cores/aws/aws-sns-service.js +59 -9
- package/dist/cores/aws/aws-sns-service.js.map +1 -1
- package/dist/cores/aws/aws-sqs-service.d.ts +1 -1
- package/dist/cores/aws/aws-sqs-service.js +54 -12
- package/dist/cores/aws/aws-sqs-service.js.map +1 -1
- package/dist/cores/cache/cache-service.d.ts +10 -9
- package/dist/cores/cache/cache-service.js +9 -346
- package/dist/cores/cache/cache-service.js.map +1 -1
- package/dist/cores/config/config-service.d.ts +3 -15
- package/dist/cores/config/config-service.js +5 -34
- package/dist/cores/config/config-service.js.map +1 -1
- package/dist/cores/dynamo/dynamo-query-service.js +42 -2
- package/dist/cores/dynamo/dynamo-query-service.js.map +1 -1
- package/dist/cores/dynamo/dynamo-scan-service.js +42 -2
- package/dist/cores/dynamo/dynamo-scan-service.js.map +1 -1
- package/dist/cores/dynamo/dynamo-service.d.ts +45 -14
- package/dist/cores/dynamo/dynamo-service.js +48 -21
- package/dist/cores/dynamo/dynamo-service.js.map +1 -1
- package/dist/cores/dynamo/tools/expressions.js +32 -22
- package/dist/cores/dynamo/tools/expressions.js.map +1 -1
- package/dist/cores/dynamo/tools/lang.d.ts +30 -0
- package/dist/cores/dynamo/tools/lang.js +75 -0
- package/dist/cores/dynamo/tools/lang.js.map +1 -0
- package/dist/cores/dynamo/tools/query.js +20 -21
- package/dist/cores/dynamo/tools/query.js.map +1 -1
- package/dist/cores/dynamo/tools/scan.js +15 -16
- package/dist/cores/dynamo/tools/scan.js.map +1 -1
- package/dist/cores/dynamo/tools/serializer.js +40 -38
- package/dist/cores/dynamo/tools/serializer.js.map +1 -1
- package/dist/cores/dynamo/tools/utils.d.ts +6 -2
- package/dist/cores/dynamo/tools/utils.js +11 -8
- package/dist/cores/dynamo/tools/utils.js.map +1 -1
- package/dist/cores/elastic/elastic6-query-service.d.ts +1 -104
- package/dist/cores/elastic/elastic6-query-service.js +15 -489
- package/dist/cores/elastic/elastic6-query-service.js.map +1 -1
- package/dist/cores/elastic/elastic6-service.d.ts +1 -482
- package/dist/cores/elastic/elastic6-service.js +15 -1153
- package/dist/cores/elastic/elastic6-service.js.map +1 -1
- package/dist/cores/elastic/index.d.ts +2 -2
- package/dist/cores/elastic/index.js +3 -2
- package/dist/cores/elastic/index.js.map +1 -1
- package/dist/cores/elastic/os2-query-service.d.ts +104 -0
- package/dist/cores/elastic/os2-query-service.js +495 -0
- package/dist/cores/elastic/os2-query-service.js.map +1 -0
- package/dist/cores/elastic/os2-service.d.ts +372 -0
- package/dist/cores/elastic/os2-service.js +943 -0
- package/dist/cores/elastic/os2-service.js.map +1 -0
- package/dist/cores/index.d.ts +6 -1
- package/dist/cores/index.js +9 -2
- package/dist/cores/index.js.map +1 -1
- package/dist/cores/lambda/index.js +2 -1
- package/dist/cores/lambda/index.js.map +1 -1
- package/dist/cores/lambda/lambda-cron-handler.d.ts +1 -0
- package/dist/cores/lambda/lambda-cron-handler.js +5 -1
- package/dist/cores/lambda/lambda-cron-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-dynamo-stream-handler.d.ts +5 -4
- package/dist/cores/lambda/lambda-dynamo-stream-handler.js +18 -5
- package/dist/cores/lambda/lambda-dynamo-stream-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-handler.d.ts +22 -2
- package/dist/cores/lambda/lambda-handler.js +85 -23
- package/dist/cores/lambda/lambda-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-sns-handler.d.ts +1 -0
- package/dist/cores/lambda/lambda-sns-handler.js +5 -0
- package/dist/cores/lambda/lambda-sns-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-sqs-handler.d.ts +1 -0
- package/dist/cores/lambda/lambda-sqs-handler.js +20 -5
- package/dist/cores/lambda/lambda-sqs-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-web-handler.d.ts +10 -0
- package/dist/cores/lambda/lambda-web-handler.js +107 -41
- package/dist/cores/lambda/lambda-web-handler.js.map +1 -1
- package/dist/cores/protocol/aws-lambda-helper.js +58 -11
- package/dist/cores/protocol/aws-lambda-helper.js.map +1 -1
- package/dist/cores/protocol/index.js +3 -0
- package/dist/cores/protocol/index.js.map +1 -1
- package/dist/cores/protocol/protocol-service.d.ts +26 -5
- package/dist/cores/protocol/protocol-service.js +42 -12
- package/dist/cores/protocol/protocol-service.js.map +1 -1
- package/dist/cores/protocol/protocol-sign.d.ts +72 -0
- package/dist/cores/protocol/protocol-sign.js +194 -0
- package/dist/cores/protocol/protocol-sign.js.map +1 -0
- package/dist/cores/storage/index.d.ts +0 -1
- package/dist/cores/storage/index.js +0 -1
- package/dist/cores/storage/index.js.map +1 -1
- package/dist/cores/storage/model-fields.d.ts +7 -0
- package/dist/cores/storage/model-fields.js +21 -0
- package/dist/cores/storage/model-fields.js.map +1 -0
- package/dist/cores/storage/model-manager.d.ts +3 -2
- package/dist/cores/storage/model-manager.js +7 -3
- package/dist/cores/storage/model-manager.js.map +1 -1
- package/dist/engine/builder.js +20 -2
- package/dist/engine/builder.js.map +1 -1
- package/dist/engine/engine.d.ts +2 -2
- package/dist/engine/engine.js +4 -4
- package/dist/engine/engine.js.map +1 -1
- package/dist/engine/utilities.d.ts +11 -12
- package/dist/engine/utilities.js +30 -82
- package/dist/engine/utilities.js.map +1 -1
- package/dist/environ.d.ts +0 -6
- package/dist/environ.js +1 -12
- package/dist/environ.js.map +1 -1
- package/dist/esm/index.mjs +140 -0
- package/dist/esm/testing.mjs +12 -0
- package/dist/extended/abstract-service.d.ts +48 -139
- package/dist/extended/abstract-service.js +46 -382
- package/dist/extended/abstract-service.js.map +1 -1
- package/dist/extended/cores/abstract-controllers.d.ts +170 -0
- package/dist/extended/cores/abstract-controllers.js +533 -0
- package/dist/extended/cores/abstract-controllers.js.map +1 -0
- package/dist/extended/cores/abstract-rest-apis.d.ts +142 -0
- package/dist/extended/cores/abstract-rest-apis.js +203 -0
- package/dist/extended/cores/abstract-rest-apis.js.map +1 -0
- package/dist/extended/cores/abstract-services.d.ts +771 -0
- package/dist/extended/cores/abstract-services.js +2042 -0
- package/dist/extended/cores/abstract-services.js.map +1 -0
- package/dist/extended/cores/browser-cache.d.ts +2 -0
- package/dist/extended/cores/browser-cache.js +34 -0
- package/dist/extended/cores/browser-cache.js.map +1 -0
- package/dist/extended/cores/commons.d.ts +20 -0
- package/dist/extended/cores/commons.js +31 -0
- package/dist/extended/cores/commons.js.map +1 -0
- package/dist/extended/cores/index.d.ts +15 -0
- package/dist/extended/cores/index.js +32 -0
- package/dist/extended/cores/index.js.map +1 -0
- package/dist/extended/cores/types.d.ts +14 -0
- package/dist/extended/cores/types.js +31 -0
- package/dist/extended/cores/types.js.map +1 -0
- package/dist/helpers/helpers.d.ts +10 -5
- package/dist/helpers/helpers.js +46 -58
- package/dist/helpers/helpers.js.map +1 -1
- package/dist/helpers/types.d.ts +22 -10
- package/dist/index.d.ts +4 -0
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/http-fetch.d.ts +54 -0
- package/dist/lib/http-fetch.js +133 -0
- package/dist/lib/http-fetch.js.map +1 -0
- package/dist/lib/lazy.d.ts +22 -0
- package/dist/lib/lazy.js +54 -0
- package/dist/lib/lazy.js.map +1 -0
- package/dist/lib/perf.d.ts +35 -0
- package/dist/lib/perf.js +52 -0
- package/dist/lib/perf.js.map +1 -0
- package/dist/tools/tools.d.ts +15 -3
- package/dist/tools/tools.js +21 -4
- package/dist/tools/tools.js.map +1 -1
- package/package.json +96 -39
- package/dist/cores/storage/redis-storage-service.d.ts +0 -183
- package/dist/cores/storage/redis-storage-service.js +0 -377
- package/dist/cores/storage/redis-storage-service.js.map +0 -1
- package/dist/generated/field-registry.d.ts +0 -10
- package/dist/generated/field-registry.js +0 -17
- package/dist/generated/field-registry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamo-service.js","sourceRoot":"","sources":["../../../src/cores/dynamo/dynamo-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dynamo-service.js","sourceRoot":"","sources":["../../../src/cores/dynamo/dynamo-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,12 +49,13 @@ exports.buildFilterExpression = exports.stringify = exports.serializeUpdateExpre
|
|
|
49
49
|
*
|
|
50
50
|
* @copyright (C) lemoncloud.io 2019 - All Rights Reserved.
|
|
51
51
|
*/
|
|
52
|
-
const
|
|
52
|
+
const lang_1 = require("./lang");
|
|
53
53
|
const utils = __importStar(require("./utils"));
|
|
54
54
|
const serializer_1 = __importDefault(require("./serializer"));
|
|
55
55
|
const internals = {};
|
|
56
56
|
internals.actionWords = ['SET', 'ADD', 'REMOVE', 'DELETE'];
|
|
57
|
-
|
|
57
|
+
//* build one regex per action word.
|
|
58
|
+
internals.regexMap = internals.actionWords.reduce(function (result, key) {
|
|
58
59
|
result[key] = new RegExp(key + '\\s*(.+?)\\s*(SET|ADD|REMOVE|DELETE|$)');
|
|
59
60
|
return result;
|
|
60
61
|
}, {});
|
|
@@ -70,7 +71,8 @@ internals.match = function (actionWord, str) {
|
|
|
70
71
|
}
|
|
71
72
|
};
|
|
72
73
|
const parse = function (str) {
|
|
73
|
-
|
|
74
|
+
//* split the update expression by action word.
|
|
75
|
+
return internals.actionWords.reduce(function (result, actionWord) {
|
|
74
76
|
result[actionWord] = internals.match(actionWord, str);
|
|
75
77
|
return result;
|
|
76
78
|
}, {});
|
|
@@ -84,23 +86,25 @@ const serializeUpdateExpression = function (schema, item) {
|
|
|
84
86
|
attributeNames: {},
|
|
85
87
|
values: {},
|
|
86
88
|
};
|
|
87
|
-
|
|
89
|
+
//* empty list per action word.
|
|
90
|
+
memo.expressions = internals.actionWords.reduce(function (result, key) {
|
|
88
91
|
result[key] = [];
|
|
89
92
|
return result;
|
|
90
93
|
}, {});
|
|
91
|
-
|
|
94
|
+
//* walk the item attributes into REMOVE/ADD/DELETE/SET.
|
|
95
|
+
const result = Object.entries(data ?? {}).reduce(function (result, [key, value]) {
|
|
92
96
|
const valueKey = ':' + key;
|
|
93
97
|
const nameKey = '#' + key;
|
|
94
|
-
if (
|
|
98
|
+
if (value === null || (typeof value === 'string' && (0, lang_1.isEmpty)(value))) {
|
|
95
99
|
result.expressions.REMOVE.push(nameKey);
|
|
96
100
|
result.attributeNames[nameKey] = key;
|
|
97
101
|
}
|
|
98
|
-
else if (
|
|
102
|
+
else if ((0, lang_1.isPlainObject)(value) && value.$add) {
|
|
99
103
|
result.expressions.ADD.push(nameKey + ' ' + valueKey);
|
|
100
104
|
result.values[valueKey] = serializer_1.default.serializeAttribute(value.$add, datatypes[key]);
|
|
101
105
|
result.attributeNames[nameKey] = key;
|
|
102
106
|
}
|
|
103
|
-
else if (
|
|
107
|
+
else if ((0, lang_1.isPlainObject)(value) && value.$del) {
|
|
104
108
|
result.expressions.DELETE.push(nameKey + ' ' + valueKey);
|
|
105
109
|
result.values[valueKey] = serializer_1.default.serializeAttribute(value.$del, datatypes[key]);
|
|
106
110
|
result.attributeNames[nameKey] = key;
|
|
@@ -116,9 +120,11 @@ const serializeUpdateExpression = function (schema, item) {
|
|
|
116
120
|
};
|
|
117
121
|
exports.serializeUpdateExpression = serializeUpdateExpression;
|
|
118
122
|
const stringify = function (expressions) {
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
123
|
+
//* join the non-empty expressions as `<ACTION> a, b`.
|
|
124
|
+
return Object.entries(expressions ?? {})
|
|
125
|
+
.reduce(function (result, [key, value]) {
|
|
126
|
+
if (!(0, lang_1.isEmpty)(value)) {
|
|
127
|
+
if (Array.isArray(value)) {
|
|
122
128
|
result.push(key + ' ' + value.join(', '));
|
|
123
129
|
}
|
|
124
130
|
else {
|
|
@@ -126,17 +132,19 @@ const stringify = function (expressions) {
|
|
|
126
132
|
}
|
|
127
133
|
}
|
|
128
134
|
return result;
|
|
129
|
-
}, [])
|
|
135
|
+
}, [])
|
|
136
|
+
.join(' ');
|
|
130
137
|
};
|
|
131
138
|
exports.stringify = stringify;
|
|
132
139
|
internals.formatAttributeValue = function (val) {
|
|
133
|
-
if (
|
|
140
|
+
if (val instanceof Date) {
|
|
134
141
|
return val.toISOString();
|
|
135
142
|
}
|
|
136
143
|
return val;
|
|
137
144
|
};
|
|
145
|
+
//* whether the operator is written as a function, ex: `begins_with(#a, :a)`.
|
|
138
146
|
internals.isFunctionOperator = function (operator) {
|
|
139
|
-
return
|
|
147
|
+
return [
|
|
140
148
|
'attribute_exists',
|
|
141
149
|
'attribute_not_exists',
|
|
142
150
|
'attribute_type',
|
|
@@ -144,12 +152,13 @@ internals.isFunctionOperator = function (operator) {
|
|
|
144
152
|
'contains',
|
|
145
153
|
'NOT contains',
|
|
146
154
|
'size',
|
|
147
|
-
]
|
|
155
|
+
].includes(operator);
|
|
148
156
|
};
|
|
157
|
+
//* pick a value name `:key`, `:key_2`, ... not in the existing names.
|
|
149
158
|
internals.uniqAttributeValueName = function (key, existingValueNames) {
|
|
150
159
|
let potentialName = ':' + key;
|
|
151
160
|
let idx = 1;
|
|
152
|
-
while (
|
|
161
|
+
while ((existingValueNames ?? []).includes(potentialName)) {
|
|
153
162
|
idx++;
|
|
154
163
|
potentialName = ':' + key + '_' + idx;
|
|
155
164
|
}
|
|
@@ -174,7 +183,7 @@ const buildFilterExpression = function (key, operator, existingValueNames, val1,
|
|
|
174
183
|
const v2ValueName = internals.uniqAttributeValueName(key, [v1ValueName].concat(existingValueNames));
|
|
175
184
|
let statement = '';
|
|
176
185
|
if (internals.isFunctionOperator(operator)) {
|
|
177
|
-
if (
|
|
186
|
+
if (v1 !== null && v1 !== undefined) {
|
|
178
187
|
statement = operator + '(' + path + ', ' + v1ValueName + ')';
|
|
179
188
|
}
|
|
180
189
|
else {
|
|
@@ -188,10 +197,10 @@ const buildFilterExpression = function (key, operator, existingValueNames, val1,
|
|
|
188
197
|
statement = [path, operator, v1ValueName].join(' ');
|
|
189
198
|
}
|
|
190
199
|
const attributeValues = {};
|
|
191
|
-
if (
|
|
200
|
+
if (v1 !== null && v1 !== undefined) {
|
|
192
201
|
attributeValues[v1ValueName] = v1;
|
|
193
202
|
}
|
|
194
|
-
if (
|
|
203
|
+
if (v2 !== null && v2 !== undefined) {
|
|
195
204
|
attributeValues[v2ValueName] = v2;
|
|
196
205
|
}
|
|
197
206
|
const attributeNames = {};
|
|
@@ -207,15 +216,16 @@ internals.buildInFilterExpression = function (key, existingValueNames, values) {
|
|
|
207
216
|
const path = '#' + key;
|
|
208
217
|
const attributeNames = {};
|
|
209
218
|
attributeNames[path] = key;
|
|
210
|
-
|
|
211
|
-
|
|
219
|
+
//* one unique value name per IN value (an array; an object iterates its values).
|
|
220
|
+
const attributeValues = Object.values(values ?? {}).reduce(function (result, val) {
|
|
221
|
+
const existing = Object.keys(result).concat(existingValueNames);
|
|
212
222
|
const p = internals.uniqAttributeValueName(key, existing);
|
|
213
223
|
result[p] = internals.formatAttributeValue(val);
|
|
214
224
|
return result;
|
|
215
225
|
}, {});
|
|
216
226
|
return {
|
|
217
227
|
attributeNames: attributeNames,
|
|
218
|
-
statement: path + ' IN (' +
|
|
228
|
+
statement: path + ' IN (' + Object.keys(attributeValues) + ')',
|
|
219
229
|
attributeValues: attributeValues,
|
|
220
230
|
};
|
|
221
231
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expressions.js","sourceRoot":"","sources":["../../../../src/cores/dynamo/tools/expressions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA+D;AAC/D,qCAAqC;AACrC;;;;;;;;;GASG;AACH,
|
|
1
|
+
{"version":3,"file":"expressions.js","sourceRoot":"","sources":["../../../../src/cores/dynamo/tools/expressions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `lang.ts`
|
|
3
|
+
* - small language helpers that replace the `lodash` functions used by the dynamo tools.
|
|
4
|
+
* - NOTE: internal only (not exported from any barrel).
|
|
5
|
+
*
|
|
6
|
+
* @author Steve Jung <steve@lemoncloud.io>
|
|
7
|
+
* @date 2026-10-27 initial version (v5 B2-a: drop `lodash`)
|
|
8
|
+
*
|
|
9
|
+
* @copyright (C) lemoncloud.io 2026 - All Rights Reserved.
|
|
10
|
+
*/
|
|
11
|
+
/** true only for `{}`-like objects: the prototype is `Object.prototype` or `null` (rejects Set, typed arrays, class instances) */
|
|
12
|
+
export declare const isPlainObject: (value: any) => boolean;
|
|
13
|
+
/** true for objects and functions (same as lodash `isObject`) */
|
|
14
|
+
export declare const isObject: (value: any) => boolean;
|
|
15
|
+
/** true for `null`/`undefined`, an empty string or array, an empty Map/Set, an object with no own keys, and any other primitive */
|
|
16
|
+
export declare const isEmpty: (value: any) => boolean;
|
|
17
|
+
/** copy each source onto the target: `undefined` sources and values are skipped, plain objects and arrays are deep-copied, anything else by reference */
|
|
18
|
+
export declare const merge: <T = any>(target: any, ...sources: any[]) => T;
|
|
19
|
+
/** map the own values of an object into a new object with the same keys */
|
|
20
|
+
export declare const mapValues: <T = any, U = any>(obj: {
|
|
21
|
+
[key: string]: T;
|
|
22
|
+
}, fn: (value: T, key: string) => U) => {
|
|
23
|
+
[key: string]: U;
|
|
24
|
+
};
|
|
25
|
+
/** copy the own entries of an object, dropping those that match the predicate */
|
|
26
|
+
export declare const omitBy: <T = any>(obj: {
|
|
27
|
+
[key: string]: T;
|
|
28
|
+
}, predicate: (value: T, key: string) => boolean) => {
|
|
29
|
+
[key: string]: T;
|
|
30
|
+
};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* `lang.ts`
|
|
4
|
+
* - small language helpers that replace the `lodash` functions used by the dynamo tools.
|
|
5
|
+
* - NOTE: internal only (not exported from any barrel).
|
|
6
|
+
*
|
|
7
|
+
* @author Steve Jung <steve@lemoncloud.io>
|
|
8
|
+
* @date 2026-10-27 initial version (v5 B2-a: drop `lodash`)
|
|
9
|
+
*
|
|
10
|
+
* @copyright (C) lemoncloud.io 2026 - All Rights Reserved.
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.omitBy = exports.mapValues = exports.merge = exports.isEmpty = exports.isObject = exports.isPlainObject = void 0;
|
|
14
|
+
/** true only for `{}`-like objects: the prototype is `Object.prototype` or `null` (rejects Set, typed arrays, class instances) */
|
|
15
|
+
const isPlainObject = (value) => {
|
|
16
|
+
if (value === null || typeof value !== 'object')
|
|
17
|
+
return false;
|
|
18
|
+
const proto = Object.getPrototypeOf(value);
|
|
19
|
+
return proto === Object.prototype || proto === null;
|
|
20
|
+
};
|
|
21
|
+
exports.isPlainObject = isPlainObject;
|
|
22
|
+
/** true for objects and functions (same as lodash `isObject`) */
|
|
23
|
+
const isObject = (value) => value !== null && value !== undefined && (typeof value === 'object' || typeof value === 'function');
|
|
24
|
+
exports.isObject = isObject;
|
|
25
|
+
/** true for `null`/`undefined`, an empty string or array, an empty Map/Set, an object with no own keys, and any other primitive */
|
|
26
|
+
const isEmpty = (value) => {
|
|
27
|
+
if (value === null || value === undefined)
|
|
28
|
+
return true;
|
|
29
|
+
if (typeof value === 'string' || Array.isArray(value))
|
|
30
|
+
return value.length === 0;
|
|
31
|
+
if (value instanceof Map || value instanceof Set)
|
|
32
|
+
return value.size === 0;
|
|
33
|
+
if (typeof value === 'object')
|
|
34
|
+
return Object.keys(value).length === 0;
|
|
35
|
+
return true;
|
|
36
|
+
};
|
|
37
|
+
exports.isEmpty = isEmpty;
|
|
38
|
+
/** copy each source onto the target: `undefined` sources and values are skipped, plain objects and arrays are deep-copied, anything else by reference */
|
|
39
|
+
const merge = (target, ...sources) => {
|
|
40
|
+
sources.forEach(source => {
|
|
41
|
+
// skip missing sources (ex: an absent `ExpressionAttributeNames`).
|
|
42
|
+
if (source === null || source === undefined)
|
|
43
|
+
return;
|
|
44
|
+
Object.keys(source).forEach(key => {
|
|
45
|
+
const val = source[key];
|
|
46
|
+
if (val === undefined)
|
|
47
|
+
return;
|
|
48
|
+
// plain object: merge into the existing plain object, or into a new one.
|
|
49
|
+
if ((0, exports.isPlainObject)(val))
|
|
50
|
+
target[key] = (0, exports.merge)((0, exports.isPlainObject)(target[key]) ? target[key] : {}, val);
|
|
51
|
+
// array: merge by index into the existing array, or into a new one.
|
|
52
|
+
else if (Array.isArray(val))
|
|
53
|
+
target[key] = (0, exports.merge)(Array.isArray(target[key]) ? target[key] : [], val);
|
|
54
|
+
// anything else (primitives, Date, Set, Buffer, class instances): by reference.
|
|
55
|
+
else
|
|
56
|
+
target[key] = val;
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
return target;
|
|
60
|
+
};
|
|
61
|
+
exports.merge = merge;
|
|
62
|
+
/** map the own values of an object into a new object with the same keys */
|
|
63
|
+
const mapValues = (obj, fn) => Object.entries(obj ?? {}).reduce((result, [key, value]) => {
|
|
64
|
+
result[key] = fn(value, key);
|
|
65
|
+
return result;
|
|
66
|
+
}, {});
|
|
67
|
+
exports.mapValues = mapValues;
|
|
68
|
+
/** copy the own entries of an object, dropping those that match the predicate */
|
|
69
|
+
const omitBy = (obj, predicate) => Object.entries(obj ?? {}).reduce((result, [key, value]) => {
|
|
70
|
+
if (!predicate(value, key))
|
|
71
|
+
result[key] = value;
|
|
72
|
+
return result;
|
|
73
|
+
}, {});
|
|
74
|
+
exports.omitBy = omitBy;
|
|
75
|
+
//# sourceMappingURL=lang.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lang.js","sourceRoot":"","sources":["../../../../src/cores/dynamo/tools/lang.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,9 +32,6 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
32
32
|
return result;
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
36
|
// origin from: https://github.com/baseprime/dynamodb @20191106
|
|
40
37
|
// Copyright (c) 2016 Ryan Fitzgerald
|
|
@@ -48,7 +45,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
48
45
|
*
|
|
49
46
|
* @copyright (C) lemoncloud.io 2019 - All Rights Reserved.
|
|
50
47
|
*/
|
|
51
|
-
const
|
|
48
|
+
const lang_1 = require("./lang");
|
|
52
49
|
const expressions = __importStar(require("./expressions"));
|
|
53
50
|
const utils = __importStar(require("./utils"));
|
|
54
51
|
const internals = {};
|
|
@@ -56,7 +53,7 @@ internals.keyCondition = function (keyName, schema, query) {
|
|
|
56
53
|
const f = function (operator) {
|
|
57
54
|
return function ( /*values*/) {
|
|
58
55
|
const copy = [].slice.call(arguments);
|
|
59
|
-
const existingValueKeys =
|
|
56
|
+
const existingValueKeys = Object.keys(query.request.ExpressionAttributeValues ?? {});
|
|
60
57
|
const args = [keyName, operator, existingValueKeys].concat(copy);
|
|
61
58
|
const cond = expressions.buildFilterExpression.apply(null, args);
|
|
62
59
|
return query.addKeyCondition(cond);
|
|
@@ -77,7 +74,7 @@ internals.queryFilter = function (keyName, schema, query) {
|
|
|
77
74
|
const f = function (operator) {
|
|
78
75
|
return function ( /*values*/) {
|
|
79
76
|
const copy = [].slice.call(arguments);
|
|
80
|
-
const existingValueKeys =
|
|
77
|
+
const existingValueKeys = Object.keys(query.request.ExpressionAttributeValues ?? {});
|
|
81
78
|
const args = [keyName, operator, existingValueKeys].concat(copy);
|
|
82
79
|
const cond = expressions.buildFilterExpression.apply(null, args);
|
|
83
80
|
return query.addFilterCondition(cond);
|
|
@@ -147,7 +144,7 @@ class Query {
|
|
|
147
144
|
return this;
|
|
148
145
|
};
|
|
149
146
|
consistentRead = function (read) {
|
|
150
|
-
if (
|
|
147
|
+
if (typeof read !== 'boolean') {
|
|
151
148
|
read = true;
|
|
152
149
|
}
|
|
153
150
|
this.request.ConsistentRead = read;
|
|
@@ -155,7 +152,7 @@ class Query {
|
|
|
155
152
|
};
|
|
156
153
|
addKeyCondition = function (condition) {
|
|
157
154
|
internals.addExpressionAttributes(this.request, condition);
|
|
158
|
-
if (
|
|
155
|
+
if (typeof this.request.KeyConditionExpression === 'string') {
|
|
159
156
|
this.request.KeyConditionExpression =
|
|
160
157
|
this.request.KeyConditionExpression + ' AND (' + condition.statement + ')';
|
|
161
158
|
}
|
|
@@ -166,7 +163,7 @@ class Query {
|
|
|
166
163
|
};
|
|
167
164
|
addFilterCondition = function (condition) {
|
|
168
165
|
internals.addExpressionAttributes(this.request, condition);
|
|
169
|
-
if (
|
|
166
|
+
if (typeof this.request.FilterExpression === 'string') {
|
|
170
167
|
this.request.FilterExpression = this.request.FilterExpression + ' AND (' + condition.statement + ')';
|
|
171
168
|
}
|
|
172
169
|
else {
|
|
@@ -179,16 +176,17 @@ class Query {
|
|
|
179
176
|
return this;
|
|
180
177
|
};
|
|
181
178
|
attributes = function (attrs) {
|
|
182
|
-
if (!
|
|
179
|
+
if (!Array.isArray(attrs)) {
|
|
183
180
|
attrs = [attrs];
|
|
184
181
|
}
|
|
185
|
-
|
|
182
|
+
//* `#attr` → `attr` name map for the projection.
|
|
183
|
+
const expressionAttributeNames = attrs.reduce(function (result, attr) {
|
|
186
184
|
const path = '#' + attr;
|
|
187
185
|
result[path] = attr;
|
|
188
186
|
return result;
|
|
189
187
|
}, {});
|
|
190
|
-
this.request.ProjectionExpression =
|
|
191
|
-
this.request.ExpressionAttributeNames =
|
|
188
|
+
this.request.ProjectionExpression = Object.keys(expressionAttributeNames).join(',');
|
|
189
|
+
this.request.ExpressionAttributeNames = (0, lang_1.merge)({}, expressionAttributeNames, this.request.ExpressionAttributeNames);
|
|
192
190
|
return this;
|
|
193
191
|
};
|
|
194
192
|
ascending = function () {
|
|
@@ -204,7 +202,7 @@ class Query {
|
|
|
204
202
|
return this;
|
|
205
203
|
};
|
|
206
204
|
returnConsumedCapacity = function (value) {
|
|
207
|
-
if (
|
|
205
|
+
if (value === undefined) {
|
|
208
206
|
value = 'TOTAL';
|
|
209
207
|
}
|
|
210
208
|
this.request.ReturnConsumedCapacity = value;
|
|
@@ -233,25 +231,26 @@ class Query {
|
|
|
233
231
|
if (internals.isUsingGlobalIndex(this)) {
|
|
234
232
|
key = this.table.schema.globalIndexes[this.request.IndexName].hashKey;
|
|
235
233
|
}
|
|
236
|
-
const existingValueKeys =
|
|
234
|
+
const existingValueKeys = Object.keys(this.request.ExpressionAttributeValues ?? {});
|
|
237
235
|
return expressions.buildFilterExpression(key, '=', existingValueKeys, this.hashKey);
|
|
238
236
|
};
|
|
237
|
+
//* the request with `TableName`, as a deep copy (nested key and value maps are not shared).
|
|
239
238
|
buildRequest = function () {
|
|
240
|
-
return
|
|
239
|
+
return (0, lang_1.merge)({}, this.request, { TableName: this.table.tableName() });
|
|
241
240
|
};
|
|
242
241
|
}
|
|
243
242
|
internals.addExpressionAttributes = function (request, condition) {
|
|
244
|
-
const expressionAttributeNames =
|
|
245
|
-
const expressionAttributeValues =
|
|
246
|
-
if (!
|
|
243
|
+
const expressionAttributeNames = (0, lang_1.merge)({}, condition.attributeNames, request.ExpressionAttributeNames);
|
|
244
|
+
const expressionAttributeValues = (0, lang_1.merge)({}, condition.attributeValues, request.ExpressionAttributeValues);
|
|
245
|
+
if (!(0, lang_1.isEmpty)(expressionAttributeNames)) {
|
|
247
246
|
request.ExpressionAttributeNames = expressionAttributeNames;
|
|
248
247
|
}
|
|
249
|
-
if (!
|
|
248
|
+
if (!(0, lang_1.isEmpty)(expressionAttributeValues)) {
|
|
250
249
|
request.ExpressionAttributeValues = expressionAttributeValues;
|
|
251
250
|
}
|
|
252
251
|
};
|
|
253
252
|
internals.formatAttributeValue = function (val) {
|
|
254
|
-
if (
|
|
253
|
+
if (val instanceof Date) {
|
|
255
254
|
return val.toISOString();
|
|
256
255
|
}
|
|
257
256
|
return val;
|