lemon-core 4.3.0 → 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 +127 -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.js +7 -7
- package/dist/extended/cores/abstract-controllers.js.map +1 -1
- package/dist/extended/cores/abstract-rest-apis.d.ts +2 -1
- package/dist/extended/cores/abstract-rest-apis.js +2 -1
- package/dist/extended/cores/abstract-rest-apis.js.map +1 -1
- package/dist/extended/cores/abstract-services.d.ts +48 -87
- package/dist/extended/cores/abstract-services.js +105 -244
- package/dist/extended/cores/abstract-services.js.map +1 -1
- package/dist/extended/cores/commons.d.ts +4 -113
- package/dist/extended/cores/commons.js +26 -180
- package/dist/extended/cores/commons.js.map +1 -1
- package/dist/extended/cores/types.d.ts +3 -225
- package/dist/extended/cores/types.js +28 -0
- package/dist/extended/cores/types.js.map +1 -1
- 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 +1 -5
- package/dist/index.js +8 -14
- 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 -12
- package/dist/generated/field-registry.js +0 -21
- package/dist/generated/field-registry.js.map +0 -1
package/dist/helpers/helpers.js
CHANGED
|
@@ -52,6 +52,7 @@ exports.parseRange = parseRange;
|
|
|
52
52
|
* @date 2021-12-21 protocol support `//self` url.
|
|
53
53
|
* @date 2021-12-23 optimize types of $protocol.
|
|
54
54
|
* @date 2022-03-17 addition text processing. (S2, P)
|
|
55
|
+
* @date 2026-10-28 v5 B3: single `$T` (L1/L2 merged), single `parseListParam`/`parsePaginateParam`.
|
|
55
56
|
*
|
|
56
57
|
* @copyright (C) 2021 LemonCloud Co Ltd. - All Rights Reserved.
|
|
57
58
|
*/
|
|
@@ -60,7 +61,7 @@ const engine_1 = __importStar(require("../engine/"));
|
|
|
60
61
|
const test_helper_1 = require("../common/test-helper");
|
|
61
62
|
const sig_v4_1 = require("../extended/libs/sig-v4");
|
|
62
63
|
const perf_hooks_1 = require("perf_hooks");
|
|
63
|
-
const
|
|
64
|
+
const http_fetch_1 = require("../lib/http-fetch");
|
|
64
65
|
const query_string_1 = __importDefault(require("query-string"));
|
|
65
66
|
const _B = (val, def = 0) => {
|
|
66
67
|
if (val === null || val === undefined)
|
|
@@ -75,6 +76,18 @@ const _N = (val, def = 0) => {
|
|
|
75
76
|
const n = engine_1.$U.N(val, def);
|
|
76
77
|
return Number.isNaN(n) ? def : n;
|
|
77
78
|
};
|
|
79
|
+
//* the former L1 `$T.S2` body (with `delim`) — kept local as the base of the L2 `S2`/`SS`.
|
|
80
|
+
const _S2 = (val, def = '', delim = ' ') => `${val ?? def}`.replace(/\s+/g, delim).trim();
|
|
81
|
+
//* the former L1 `$T.SS` body — kept local: the L2 `SS` splits a non-array value with it.
|
|
82
|
+
const _SS = (val, def = []) => {
|
|
83
|
+
if (val === null || val === undefined)
|
|
84
|
+
return def;
|
|
85
|
+
if (typeof val === 'string')
|
|
86
|
+
return val ? val.split(',').map(_ => _S2(_)) : def;
|
|
87
|
+
if (Array.isArray(val))
|
|
88
|
+
return val.length > 0 ? val.map(_ => exports.$T.S(_, '')) : def;
|
|
89
|
+
return [exports.$T.S(val)];
|
|
90
|
+
};
|
|
78
91
|
/**
|
|
79
92
|
* list param parser
|
|
80
93
|
* @param param
|
|
@@ -119,27 +132,31 @@ options) {
|
|
|
119
132
|
/**
|
|
120
133
|
* Helpers to transform data-types.
|
|
121
134
|
*/
|
|
135
|
+
//* v5 B3: the single `$T` (32 members; L1 + the L2 `S2`/`SS`/`N`/`US`). `extended/cores/commons.ts` re-exports it.
|
|
122
136
|
exports.$T = {
|
|
123
137
|
/**
|
|
124
138
|
* transform to string w/ trim()
|
|
125
139
|
*/
|
|
126
140
|
S: (val, def = '') => `${val ?? def}`.trim(),
|
|
127
141
|
/**
|
|
128
|
-
*
|
|
142
|
+
* clear white-spaces and trim.
|
|
129
143
|
*/
|
|
130
|
-
|
|
144
|
+
//* v5 B3: L2 body (the root `$T` already had it) — a 3rd `delim` argument is no longer honoured.
|
|
145
|
+
S2: (v, def = '') => _S2(v, def).trim(),
|
|
131
146
|
/**
|
|
132
|
-
*
|
|
147
|
+
* array string with clear white-spaces and trim
|
|
133
148
|
*/
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
149
|
+
//* v5 B3: L2 body — `def` is not taken; array items get their inner white-spaces collapsed too.
|
|
150
|
+
SS: (v) => (v && Array.isArray(v) ? v : _SS(v)).map(v => _S2(v, '').trim()),
|
|
151
|
+
/**
|
|
152
|
+
* remove duplicates from string array using reduce
|
|
153
|
+
*/
|
|
154
|
+
//* v5 B3: moved from the L2 `$T` (`extended/cores/commons.ts`) so one object has all 32 members.
|
|
155
|
+
US: (arr) => arr?.reduce((acc, v) => {
|
|
156
|
+
if (!acc.includes(v))
|
|
157
|
+
acc.push(v);
|
|
158
|
+
return acc;
|
|
159
|
+
}, []) ?? [],
|
|
143
160
|
/**
|
|
144
161
|
* text to Plain text (remove html tag)
|
|
145
162
|
*/
|
|
@@ -154,6 +171,7 @@ exports.$T = {
|
|
|
154
171
|
/**
|
|
155
172
|
* transform to number(integer).
|
|
156
173
|
*/
|
|
174
|
+
//* v5 B3: L2 signature (`unknown` accepted); same result as before.
|
|
157
175
|
N: (v, def = 0) => typeof v === 'boolean' ? (v ? 1 : 0) : typeof v === 'number' || typeof v === 'string' ? _N(v, def) : def,
|
|
158
176
|
/**
|
|
159
177
|
* number array
|
|
@@ -715,7 +733,8 @@ exports.$event = $event;
|
|
|
715
733
|
*/
|
|
716
734
|
function getIdentityId(context) {
|
|
717
735
|
const identityId = context?.identity?.identityId;
|
|
718
|
-
|
|
736
|
+
//* v5: `env[LOCAL_ACCOUNT]` only in local mode, never from `context.domain` (B5 § 6.3).
|
|
737
|
+
if (!identityId && engine_1.$U.isLocalMode()) {
|
|
719
738
|
//* use `env[LOCAL_ACCOUNT]` only if runs in local server.
|
|
720
739
|
return engine_1.$U.env('LOCAL_ACCOUNT', '');
|
|
721
740
|
}
|
|
@@ -731,8 +750,8 @@ function getIdentityId(context) {
|
|
|
731
750
|
*/
|
|
732
751
|
function isUserAuthorized(context, params) {
|
|
733
752
|
const identityId = getIdentityId(context);
|
|
734
|
-
//WARN - in local server, override the identity w/ param
|
|
735
|
-
if (
|
|
753
|
+
//WARN - in local server, override the identity w/ param (v5: local mode only — B5 § 6.3)
|
|
754
|
+
if (engine_1.$U.isLocalMode()) {
|
|
736
755
|
//!* override with optional parameter.
|
|
737
756
|
if (context) {
|
|
738
757
|
context.identity = {
|
|
@@ -911,14 +930,17 @@ options) => {
|
|
|
911
930
|
(_isNa(path1) ? '' : `/${encoder('host', path1)}`) +
|
|
912
931
|
(_isNa(path1) && _isNa(path2) ? '' : `/${encoder('path', path2)}`) +
|
|
913
932
|
(!query_string ? '' : '?' + query_string);
|
|
914
|
-
|
|
933
|
+
//* serialize the body once: the same string is signed and sent.
|
|
934
|
+
const json = (0, http_fetch_1.isJsonBody)($body);
|
|
935
|
+
const payload = (0, http_fetch_1.toPayload)($body, json);
|
|
915
936
|
const options = {
|
|
916
937
|
method,
|
|
917
938
|
uri: url,
|
|
918
939
|
headers: { ...this.headers },
|
|
919
|
-
body:
|
|
920
|
-
json
|
|
940
|
+
body: payload,
|
|
941
|
+
json,
|
|
921
942
|
};
|
|
943
|
+
//* sign with SigV4 (the signed body is the exact `payload` string)
|
|
922
944
|
if (sigClient) {
|
|
923
945
|
const signedRequest = sigClient.signRequest({
|
|
924
946
|
method,
|
|
@@ -926,7 +948,7 @@ options) => {
|
|
|
926
948
|
(_isNa(path1) && _isNa(path2) ? '' : `/${encoder('path', path2)}`),
|
|
927
949
|
queryParams: $param,
|
|
928
950
|
headers: options.headers,
|
|
929
|
-
body:
|
|
951
|
+
body: payload,
|
|
930
952
|
});
|
|
931
953
|
options.headers = { ...options.headers, ...signedRequest.headers };
|
|
932
954
|
options.uri = signedRequest.url;
|
|
@@ -945,44 +967,10 @@ options) => {
|
|
|
945
967
|
_log(NS, ' url :=', options.method, url);
|
|
946
968
|
_log(NS, '*', options.method, url, options.json ? 'json' : 'plain');
|
|
947
969
|
_log(NS, '> options =', engine_1.$U.json(options));
|
|
948
|
-
//*
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
error && _err(NS, '>>>>> requested! err=', error);
|
|
953
|
-
if (error)
|
|
954
|
-
return reject(error instanceof Error ? error : new Error((0, test_helper_1.GETERR)(error)));
|
|
955
|
-
//* detect trouble.
|
|
956
|
-
const statusCode = response.statusCode;
|
|
957
|
-
const statusMessage = response.statusMessage;
|
|
958
|
-
//* if not in success
|
|
959
|
-
if (statusCode !== 200 && statusCode !== 201) {
|
|
960
|
-
const msg = body ? (0, test_helper_1.GETERR)(body) : `${statusMessage || ''}`;
|
|
961
|
-
if (statusCode === 400 || statusCode === 404) {
|
|
962
|
-
const title = `${(statusCode == 404 ? '' : statusMessage) || 'NOT FOUND'}`.toUpperCase();
|
|
963
|
-
const message = msg.startsWith('404 NOT FOUND') ? msg : `${statusCode} ${title} - ${msg}`;
|
|
964
|
-
return reject(new Error(message));
|
|
965
|
-
}
|
|
966
|
-
statusMessage && _log(NS, `> statusMessage[${statusCode}] =`, statusMessage);
|
|
967
|
-
body && _log(NS, `> body[${statusCode}] =`, engine_1.$U.json(body));
|
|
968
|
-
return reject(new Error(`${statusCode} ${statusMessage || 'FAILURE'} - ${msg}`));
|
|
969
|
-
}
|
|
970
|
-
//* try to parse body.
|
|
971
|
-
try {
|
|
972
|
-
if (body && typeof body == 'string' && body.startsWith('{') && body.endsWith('}')) {
|
|
973
|
-
body = JSON.parse(body);
|
|
974
|
-
}
|
|
975
|
-
else if (body && typeof body == 'string' && body.startsWith('[') && body.endsWith(']')) {
|
|
976
|
-
body = JSON.parse(body);
|
|
977
|
-
}
|
|
978
|
-
}
|
|
979
|
-
catch (e) {
|
|
980
|
-
_err(NS, '!WARN! parse(body) =', e instanceof Error ? e : engine_1.$U.json(e));
|
|
981
|
-
}
|
|
982
|
-
//* ok! succeeded.
|
|
983
|
-
resolve(body);
|
|
984
|
-
});
|
|
985
|
-
}).then((res) => {
|
|
970
|
+
//* send via `fetch` (status check, error format and body parse in `http-fetch`)
|
|
971
|
+
const logger = { log: (...a) => _log(NS, ...a), err: (...a) => _err(NS, ...a) };
|
|
972
|
+
const req = { method, url: options.uri, headers: options.headers, payload, json };
|
|
973
|
+
return (0, http_fetch_1.fetchProxyBody)(req, logger).then((res) => {
|
|
986
974
|
if (resultKey && res && res[resultKey] !== undefined)
|
|
987
975
|
return res[resultKey];
|
|
988
976
|
return res;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers/helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers/helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers/types.d.ts
CHANGED
|
@@ -8,12 +8,13 @@
|
|
|
8
8
|
* @date 2023-01-18 optimized with `lemon-core@3.2.4`
|
|
9
9
|
* @date 2023-02-15 optimized with `lemon-core@3.2.5`
|
|
10
10
|
* @date 2024-11-14 optimized `IdentityToken`.
|
|
11
|
+
* @date 2026-10-28 v5 B3: the single definition (L2 content; `extended/cores/types.ts` re-exports it).
|
|
11
12
|
*
|
|
12
13
|
* @copyright (C) 2022 LemonCloud Co Ltd. - All Rights Reserved.
|
|
13
14
|
* @origin `@lemoncloud/lemon-templates-api/cores`
|
|
14
15
|
*/
|
|
15
16
|
import { NextIdentity, CoreModel, View, Body } from 'lemon-model';
|
|
16
|
-
export { CoreModel, View, Body };
|
|
17
|
+
export type { CoreModel, View, Body };
|
|
17
18
|
/** type: `IdentityTokenSite` */
|
|
18
19
|
export interface IdentityTokenSite {
|
|
19
20
|
/** site-code (ex: kwonsun) */
|
|
@@ -46,6 +47,12 @@ export interface IdentityTokenGroup {
|
|
|
46
47
|
* - 세션토큰 검사는 `proxy.getCurrentSession()` 이용하기
|
|
47
48
|
*/
|
|
48
49
|
export interface IdentityToken<T = any, U extends IdentityTokenUser = IdentityTokenUser, S extends IdentityTokenSite = IdentityTokenSite, G extends IdentityTokenGroup = IdentityTokenGroup> extends NextIdentity<T> {
|
|
50
|
+
/**
|
|
51
|
+
* cloud-id (= id in `AWS ACCOUNT_NO`)
|
|
52
|
+
* - `#` 일경우, 무시됨.
|
|
53
|
+
* - aws 계정 수준의 cloud-id
|
|
54
|
+
*/
|
|
55
|
+
cid: string;
|
|
49
56
|
/**
|
|
50
57
|
* site-id (= id in `SiteModel(사이트)`)
|
|
51
58
|
* - `#` 일경우, 특정 site에 엮이지 않음 (무시됨)
|
|
@@ -78,17 +85,17 @@ export interface IdentityToken<T = any, U extends IdentityTokenUser = IdentityTo
|
|
|
78
85
|
*/
|
|
79
86
|
aid: string;
|
|
80
87
|
/**
|
|
81
|
-
*
|
|
88
|
+
* (optional) delegator-id (= 위임된 게스트 User ID)
|
|
89
|
+
* - **중계서버(`backend-api`)에서만 유효한 필드.** 다른 시스템(socials 등)은 이 필드를 신뢰하지 말 것.
|
|
90
|
+
* - 소셜 로그인 세션에서 원본 디바이스 게스트 User ID를 가리킴 (= `AuthModel.linkUserId`).
|
|
91
|
+
* - 채팅(개인 채팅방) 도메인은 본 신원이 아닌 `did`를 채택하여 게스트의 데이터를 그대로 이용함.
|
|
92
|
+
* - 게스트 세션이거나 위임이 없을 때는 `undefined`.
|
|
82
93
|
*/
|
|
83
|
-
|
|
94
|
+
did?: string;
|
|
84
95
|
/**
|
|
85
|
-
* (
|
|
86
|
-
* - `.identityId` 는 aws cognito 인증을 통해서, 현재 인증된 `identity-id`를 알 수 있음
|
|
87
|
-
* - 다만, `delegated`된 경우에는 위임된 id 가 들어감.
|
|
88
|
-
*
|
|
89
|
-
* @deprecated 삭제될 예정! @241114
|
|
96
|
+
* list of roles (like `user`, `admin`, `super`)
|
|
90
97
|
*/
|
|
91
|
-
|
|
98
|
+
roles: string[];
|
|
92
99
|
/**
|
|
93
100
|
* service-name of issuer
|
|
94
101
|
* ex) `lemon-backend-api`
|
|
@@ -128,7 +135,12 @@ export interface ListResult<T, R = any> {
|
|
|
128
135
|
/**
|
|
129
136
|
* (optional) aggr list
|
|
130
137
|
*/
|
|
131
|
-
aggr?: R[];
|
|
138
|
+
aggr?: R | R[];
|
|
139
|
+
}
|
|
140
|
+
export interface AggrResult {
|
|
141
|
+
[key: string]: {
|
|
142
|
+
[key: string]: number;
|
|
143
|
+
};
|
|
132
144
|
}
|
|
133
145
|
export interface AggrKeyCount {
|
|
134
146
|
/** name of key(or bucket name) */
|
package/dist/index.d.ts
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
export * from './common/types';
|
|
15
15
|
export * from './common/test-helper';
|
|
16
|
+
export { LemonError } from './common/lemon-error';
|
|
16
17
|
export * from './engine/';
|
|
17
18
|
export * from './cores/';
|
|
18
19
|
export * from './tools/';
|
|
@@ -24,13 +25,8 @@ export { lib, tools };
|
|
|
24
25
|
export * from './helpers/';
|
|
25
26
|
export * from './extended/';
|
|
26
27
|
export * from './extended/cores/';
|
|
27
|
-
export { $T } from './extended/cores/commons';
|
|
28
|
-
export { onlyDefined } from './common/test-helper';
|
|
29
|
-
export { sourceToItem, $ES6 } from './extended/abstract-service';
|
|
30
28
|
export { withBrowserCache } from './extended/cores/browser-cache';
|
|
31
29
|
export { $ES6Routed } from './extended/cores/abstract-services';
|
|
32
|
-
export type { IdentityToken, IdentityTokenSite, IdentityTokenUser, IdentityTokenGroup, ListResult, PaginatedListResult, AggrKeyCount, ListParam, PaginateParam, BulkUpdateBody, BulkBody, BodyList, BulkItemsResult, } from './extended/cores/types';
|
|
33
|
-
export { parseListParam, parsePaginateParam } from './extended/cores/commons';
|
|
34
30
|
declare const _default: {
|
|
35
31
|
engine: import("./engine/types").LemonEngine;
|
|
36
32
|
cores: {
|
package/dist/index.js
CHANGED
|
@@ -39,7 +39,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
39
39
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
40
|
};
|
|
41
41
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
-
exports
|
|
42
|
+
exports.$ES6Routed = exports.withBrowserCache = exports.tools = exports.lib = exports.LemonError = void 0;
|
|
43
43
|
/**
|
|
44
44
|
* `index.ts`
|
|
45
45
|
* - main index
|
|
@@ -56,6 +56,8 @@ exports.parsePaginateParam = exports.parseListParam = exports.$ES6Routed = expor
|
|
|
56
56
|
//NOTE! - if loading this index.ts, it will trigger `bootloader` in `/engine`.
|
|
57
57
|
__exportStar(require("./common/types"), exports);
|
|
58
58
|
__exportStar(require("./common/test-helper"), exports);
|
|
59
|
+
var lemon_error_1 = require("./common/lemon-error"); //* v5 B5: the only new root name (status-carrying error, SPEC § 6.6)
|
|
60
|
+
Object.defineProperty(exports, "LemonError", { enumerable: true, get: function () { return lemon_error_1.LemonError; } });
|
|
59
61
|
__exportStar(require("./engine/"), exports);
|
|
60
62
|
__exportStar(require("./cores/"), exports);
|
|
61
63
|
__exportStar(require("./tools/"), exports);
|
|
@@ -63,6 +65,7 @@ __exportStar(require("./controllers/"), exports);
|
|
|
63
65
|
//* init an instance of core modules.
|
|
64
66
|
const engine_1 = __importDefault(require("./engine/"));
|
|
65
67
|
const cores_1 = __importDefault(require("./cores/"));
|
|
68
|
+
const engine_2 = require("./engine/");
|
|
66
69
|
//* export as group.
|
|
67
70
|
const lib = __importStar(require("./lib/"));
|
|
68
71
|
exports.lib = lib;
|
|
@@ -71,23 +74,14 @@ exports.tools = tools;
|
|
|
71
74
|
const controllers = __importStar(require("./controllers/"));
|
|
72
75
|
__exportStar(require("./helpers/"), exports);
|
|
73
76
|
__exportStar(require("./extended/"), exports);
|
|
74
|
-
//* export the L2 template layer.
|
|
77
|
+
//* export the L2 template layer. v5 B3: every L1/L2 name has one definition, so no collision pins are needed.
|
|
75
78
|
__exportStar(require("./extended/cores/"), exports);
|
|
76
|
-
var commons_1 = require("./extended/cores/commons"); //* L2 wins — 4.2.x semantics (`asLut`/`BN`/`asMeta`, `S2` trims)
|
|
77
|
-
Object.defineProperty(exports, "$T", { enumerable: true, get: function () { return commons_1.$T; } });
|
|
78
|
-
var test_helper_1 = require("./common/test-helper"); //* L1 wins — signature compat (`(N, $def)`)
|
|
79
|
-
Object.defineProperty(exports, "onlyDefined", { enumerable: true, get: function () { return test_helper_1.onlyDefined; } });
|
|
80
|
-
var abstract_service_1 = require("./extended/abstract-service"); //* L1 wins — keep existing behavior
|
|
81
|
-
Object.defineProperty(exports, "sourceToItem", { enumerable: true, get: function () { return abstract_service_1.sourceToItem; } });
|
|
82
|
-
Object.defineProperty(exports, "$ES6", { enumerable: true, get: function () { return abstract_service_1.$ES6; } });
|
|
83
79
|
var browser_cache_1 = require("./extended/cores/browser-cache"); //* not in the cores barrel (optional util)
|
|
84
80
|
Object.defineProperty(exports, "withBrowserCache", { enumerable: true, get: function () { return browser_cache_1.withBrowserCache; } });
|
|
85
|
-
var abstract_services_1 = require("./extended/cores/abstract-services"); //*
|
|
81
|
+
var abstract_services_1 = require("./extended/cores/abstract-services"); //* v5 B2-b: the same lazy object as `$OS2` (root `$ES6` is removed)
|
|
86
82
|
Object.defineProperty(exports, "$ES6Routed", { enumerable: true, get: function () { return abstract_services_1.$ES6Routed; } });
|
|
87
|
-
//* same L2-wins rationale as `$T` above — these call the same underlying parsing, duplicated verbatim.
|
|
88
|
-
var commons_2 = require("./extended/cores/commons");
|
|
89
|
-
Object.defineProperty(exports, "parseListParam", { enumerable: true, get: function () { return commons_2.parseListParam; } });
|
|
90
|
-
Object.defineProperty(exports, "parsePaginateParam", { enumerable: true, get: function () { return commons_2.parsePaginateParam; } });
|
|
91
83
|
//* export as default.
|
|
92
84
|
exports.default = { engine: engine_1.default, cores: cores_1.default, tools, controllers };
|
|
85
|
+
//* PERF (D40): process time at the end of this barrel (the baseline to compare the lazy loads against).
|
|
86
|
+
(0, engine_2._inf)(engine_2.$U.NS('PERF', 'cyan'), '>', 'loaded lemon-core', `${(process.uptime() * 1000).toFixed(1)} ms`);
|
|
93
87
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;GAYG;AACH,8EAA8E;AAC9E,iDAA+B;AAC/B,uDAAqC;AACrC,4CAA0B;AAC1B,2CAAyB;AACzB,2CAAyB;AACzB,iDAA+B;AAE/B,qCAAqC;AACrC,uDAA+B;AAC/B,qDAA6B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;GAYG;AACH,8EAA8E;AAC9E,iDAA+B;AAC/B,uDAAqC;AACrC,oDAAkD,CAAC,qEAAqE;AAA/G,yGAAA,UAAU,OAAA;AACnB,4CAA0B;AAC1B,2CAAyB;AACzB,2CAAyB;AACzB,iDAA+B;AAE/B,qCAAqC;AACrC,uDAA+B;AAC/B,qDAA6B;AAC7B,sCAAqC;AAErC,oBAAoB;AACpB,4CAA8B;AAKrB,kBAAG;AAJZ,gDAAkC;AAIpB,sBAAK;AAHnB,4DAA8C;AAI9C,6CAA2B;AAC3B,8CAA4B;AAE5B,8GAA8G;AAC9G,oDAAkC;AAClC,gEAAkE,CAAC,2CAA2C;AAArG,iHAAA,gBAAgB,OAAA;AACzB,wEAAgE,CAAC,oEAAoE;AAA5H,+GAAA,UAAU,OAAA;AAEnB,sBAAsB;AACtB,kBAAe,EAAE,MAAM,EAAN,gBAAM,EAAE,KAAK,EAAL,eAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AAErD,wGAAwG;AACxG,IAAA,aAAI,EAAC,WAAE,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,mBAAmB,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
export declare const DEFAULT_FETCH_TIMEOUT = 25000;
|
|
2
|
+
/** one request to send (the payload is serialized already, see `toPayload()`) */
|
|
3
|
+
export interface HttpFetchRequest {
|
|
4
|
+
/** http method (GET, PUT, POST, ...) */
|
|
5
|
+
method: string;
|
|
6
|
+
/** full url with query-string */
|
|
7
|
+
url: string;
|
|
8
|
+
/** headers to send (`undefined`/`null` values are skipped) */
|
|
9
|
+
headers?: {
|
|
10
|
+
[key: string]: any;
|
|
11
|
+
};
|
|
12
|
+
/** serialized body sent as-is (for SigV4 it must be the exact signed string) */
|
|
13
|
+
payload?: string;
|
|
14
|
+
/** json mode, same meaning as `request` option `json:true` */
|
|
15
|
+
json: boolean;
|
|
16
|
+
/** (optional) timeout in ms (v5 default `DEFAULT_FETCH_TIMEOUT` = 25000) */
|
|
17
|
+
timeout?: number;
|
|
18
|
+
}
|
|
19
|
+
/** optional log hooks, so each factory keeps its own namespace and verbosity */
|
|
20
|
+
export interface HttpFetchLogger {
|
|
21
|
+
/** normal log */
|
|
22
|
+
log?: (...args: any[]) => void;
|
|
23
|
+
/** error log */
|
|
24
|
+
err?: (...args: any[]) => void;
|
|
25
|
+
}
|
|
26
|
+
/** json mode rule of the factories: a string body goes plain, anything else as json */
|
|
27
|
+
export declare const isJsonBody: ($body: any) => boolean;
|
|
28
|
+
/** serialize the body once: `null`/`undefined` → no body, json → `JSON.stringify`, string → as-is */
|
|
29
|
+
export declare const toPayload: ($body: any, json: boolean) => string | undefined;
|
|
30
|
+
/** turn a `fetch` failure into an Error whose message starts with the errno (ex: `ECONNREFUSED ...`) */
|
|
31
|
+
export declare const asFetchError: (e: any, timeout?: number) => Error;
|
|
32
|
+
/** parse response text like `request` did: json → try `JSON.parse` on any text (empty → `undefined`), else the text */
|
|
33
|
+
export declare const parseResponseText: (text: string, json: boolean) => any;
|
|
34
|
+
/** build fetch headers: string values, last one wins case-insensitively, json defaults added if absent */
|
|
35
|
+
export declare const buildHeaders: (req: HttpFetchRequest) => Headers;
|
|
36
|
+
/** the raw response: status and the parsed body (`statusMessage` is `res.statusText`) */
|
|
37
|
+
export interface HttpFetchResponse {
|
|
38
|
+
/** http status code */
|
|
39
|
+
statusCode: number;
|
|
40
|
+
/** http status text */
|
|
41
|
+
statusMessage: string;
|
|
42
|
+
/** body parsed by `parseResponseText()` */
|
|
43
|
+
body: any;
|
|
44
|
+
}
|
|
45
|
+
/** send one request with `fetch`, and read the body. network errors (and timeout) are rethrown by `asFetchError()` */
|
|
46
|
+
export declare const sendRequest: (req: HttpFetchRequest) => Promise<HttpFetchResponse>;
|
|
47
|
+
/** re-parse a string body that looks like a json object or array (kept from the v4 code) */
|
|
48
|
+
export declare const reparseBody: (body: any, logger?: HttpFetchLogger) => any;
|
|
49
|
+
/** turn a non-success response into the v4 error message (400·404 and other formats) — v5: a `LemonError` with the peer status */
|
|
50
|
+
export declare const asStatusError: (res: HttpFetchResponse, logger?: HttpFetchLogger) => Error;
|
|
51
|
+
/** v5: any 2xx is a success (B5 § 6.6) */
|
|
52
|
+
export declare const isSuccessStatus: (status: number) => boolean;
|
|
53
|
+
/** send a request and resolve the body: v5 success on any 2xx (204, or another 2xx with no body → `null`), other status codes reject */
|
|
54
|
+
export declare const fetchProxyBody: <T = any>(req: HttpFetchRequest, logger?: HttpFetchLogger) => Promise<T>;
|