lemon-core 2.2.20 → 3.1.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 +12 -21
- package/dist/common/test-helper.js +20 -12
- package/dist/common/test-helper.js.map +1 -1
- package/dist/controllers/dummy-controller.js.map +1 -1
- package/dist/controllers/general-api-controller.js +5 -5
- package/dist/controllers/general-api-controller.js.map +1 -1
- package/dist/controllers/general-controller.js +2 -1
- package/dist/controllers/general-controller.js.map +1 -1
- package/dist/controllers/index.js +6 -2
- package/dist/controllers/index.js.map +1 -1
- package/dist/cores/api-service.js +19 -18
- package/dist/cores/api-service.js.map +1 -1
- package/dist/cores/aws/aws-kms-service.js +10 -14
- package/dist/cores/aws/aws-kms-service.js.map +1 -1
- package/dist/cores/aws/aws-s3-service.js +19 -18
- package/dist/cores/aws/aws-s3-service.js.map +1 -1
- package/dist/cores/aws/aws-sns-service.js +12 -12
- package/dist/cores/aws/aws-sns-service.js.map +1 -1
- package/dist/cores/aws/aws-sqs-service.js +12 -12
- package/dist/cores/aws/aws-sqs-service.js.map +1 -1
- package/dist/cores/aws/index.js +1 -1
- package/dist/cores/cache-service.js +33 -33
- package/dist/cores/cache-service.js.map +1 -1
- package/dist/cores/config/config-service.js +11 -10
- package/dist/cores/config/config-service.js.map +1 -1
- package/dist/cores/core-services.js +6 -2
- package/dist/cores/core-services.js.map +1 -1
- package/dist/cores/core-types.d.ts +92 -2
- package/dist/cores/core-types.js +1 -0
- package/dist/cores/core-types.js.map +1 -1
- package/dist/cores/dynamo-query-service.js +7 -7
- package/dist/cores/dynamo-query-service.js.map +1 -1
- package/dist/cores/dynamo-scan-service.js +8 -8
- package/dist/cores/dynamo-scan-service.js.map +1 -1
- package/dist/cores/dynamo-service.js +21 -21
- package/dist/cores/dynamo-service.js.map +1 -1
- package/dist/cores/elastic6-query-service.d.ts +42 -9
- package/dist/cores/elastic6-query-service.js +148 -138
- package/dist/cores/elastic6-query-service.js.map +1 -1
- package/dist/cores/elastic6-service.d.ts +144 -57
- package/dist/cores/elastic6-service.js +522 -346
- package/dist/cores/elastic6-service.js.map +1 -1
- package/dist/cores/http-storage-service.js +1 -1
- package/dist/cores/http-storage-service.js.map +1 -1
- package/dist/cores/index.d.ts +4 -4
- package/dist/cores/index.js +6 -2
- package/dist/cores/index.js.map +1 -1
- package/dist/cores/lambda/index.js +8 -4
- package/dist/cores/lambda/index.js.map +1 -1
- package/dist/cores/lambda/lambda-cognito-handler.js +2 -2
- package/dist/cores/lambda/lambda-cognito-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-cron-handler.js +2 -2
- package/dist/cores/lambda/lambda-cron-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-dynamo-stream-handler.js +23 -23
- package/dist/cores/lambda/lambda-dynamo-stream-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-handler.js +12 -11
- package/dist/cores/lambda/lambda-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-notification-handler.js +10 -10
- package/dist/cores/lambda/lambda-notification-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-sns-handler.js +13 -13
- package/dist/cores/lambda/lambda-sns-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-sqs-handler.js +13 -13
- package/dist/cores/lambda/lambda-sqs-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-web-handler.js +58 -55
- package/dist/cores/lambda/lambda-web-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-wss-handler.js +16 -12
- package/dist/cores/lambda/lambda-wss-handler.js.map +1 -1
- package/dist/cores/model-manager.js +11 -11
- package/dist/cores/model-manager.js.map +1 -1
- package/dist/cores/protocol/protocol-service.d.ts +1 -2
- package/dist/cores/protocol/protocol-service.js +39 -36
- package/dist/cores/protocol/protocol-service.js.map +1 -1
- package/dist/cores/proxy-storage-service.js +7 -10
- package/dist/cores/proxy-storage-service.js.map +1 -1
- package/dist/cores/redis-storage-service.js +13 -13
- package/dist/cores/redis-storage-service.js.map +1 -1
- package/dist/cores/storage-service.js +8 -6
- package/dist/cores/storage-service.js.map +1 -1
- package/dist/engine/builder.d.ts +1 -0
- package/dist/engine/builder.js +28 -21
- package/dist/engine/builder.js.map +1 -1
- package/dist/engine/engine.js +55 -45
- package/dist/engine/engine.js.map +1 -1
- package/dist/engine/index.d.ts +0 -1
- package/dist/engine/index.js +9 -7
- package/dist/engine/index.js.map +1 -1
- package/dist/engine/types.d.ts +0 -4
- package/dist/engine/types.js.map +1 -1
- package/dist/engine/utilities.d.ts +5 -1
- package/dist/engine/utilities.js +146 -36
- package/dist/engine/utilities.js.map +1 -1
- package/dist/environ.js +13 -6
- package/dist/environ.js.map +1 -1
- package/dist/exec-cli.js +26 -26
- package/dist/exec-cli.js.map +1 -1
- package/dist/helpers/helpers.d.ts +266 -0
- package/dist/helpers/helpers.js +606 -0
- package/dist/helpers/helpers.js.map +1 -0
- package/dist/helpers/index.d.ts +10 -0
- package/dist/helpers/index.js +27 -0
- package/dist/helpers/index.js.map +1 -0
- package/dist/index.d.ts +6 -5
- package/dist/index.js +8 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/dynamo/expressions.js +35 -27
- package/dist/lib/dynamo/expressions.js.map +1 -1
- package/dist/lib/dynamo/query.js +24 -20
- package/dist/lib/dynamo/query.js.map +1 -1
- package/dist/lib/dynamo/scan.js +17 -13
- package/dist/lib/dynamo/scan.js.map +1 -1
- package/dist/lib/dynamo/serializer.js +11 -7
- package/dist/lib/dynamo/serializer.js.map +1 -1
- package/dist/lib/dynamo/utils.js +19 -14
- package/dist/lib/dynamo/utils.js.map +1 -1
- package/dist/lib/dynamodb-value.js +3 -3
- package/dist/lib/dynamodb-value.js.map +1 -1
- package/dist/lib/index.js +6 -2
- package/dist/lib/index.js.map +1 -1
- package/dist/tools/express.js +21 -18
- package/dist/tools/express.js.map +1 -1
- package/dist/tools/index.js +6 -2
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/shared.js +12 -6
- package/dist/tools/shared.js.map +1 -1
- package/package.json +15 -21
- package/CHANGELOG.md +0 -61
- package/dist/docs/assets/css/main.css +0 -2321
- package/dist/docs/assets/images/icons.png +0 -0
- package/dist/docs/assets/images/icons@2x.png +0 -0
- package/dist/docs/assets/images/widgets.png +0 -0
- package/dist/docs/assets/images/widgets@2x.png +0 -0
- package/dist/docs/assets/js/main.js +0 -1
- package/dist/docs/assets/js/search.js +0 -3
- package/dist/docs/classes/abstractmanager.html +0 -1054
- package/dist/docs/classes/apiproxyclient.html +0 -509
- package/dist/docs/classes/apiservice.html +0 -805
- package/dist/docs/classes/awskmsservice.html +0 -468
- package/dist/docs/classes/awsmodule.html +0 -353
- package/dist/docs/classes/awss3service.html +0 -563
- package/dist/docs/classes/awssnsservice.html +0 -543
- package/dist/docs/classes/awssqsservice.html +0 -517
- package/dist/docs/classes/cacheservice.html +0 -996
- package/dist/docs/classes/configmodule.html +0 -311
- package/dist/docs/classes/dummycacheservice.html +0 -1000
- package/dist/docs/classes/dummycontroller.html +0 -709
- package/dist/docs/classes/dummydynamoservice.html +0 -915
- package/dist/docs/classes/dummyelastic6service.html +0 -791
- package/dist/docs/classes/dummyredisstorageservice.html +0 -804
- package/dist/docs/classes/dummystoragemaker.html +0 -383
- package/dist/docs/classes/dummystorageservice.html +0 -592
- package/dist/docs/classes/dynamoqueryservice.html +0 -413
- package/dist/docs/classes/dynamoscanservice.html +0 -358
- package/dist/docs/classes/dynamoservice.html +0 -844
- package/dist/docs/classes/dynamostorageservice.html +0 -623
- package/dist/docs/classes/elastic6queryservice.html +0 -458
- package/dist/docs/classes/elastic6service.html +0 -804
- package/dist/docs/classes/generalapicontroller.html +0 -877
- package/dist/docs/classes/generalcontroller.html +0 -454
- package/dist/docs/classes/generalcontrollerlocal.html +0 -499
- package/dist/docs/classes/generalcontrollerlocal2.html +0 -523
- package/dist/docs/classes/generalkeymaker.html +0 -335
- package/dist/docs/classes/generalmodelfilter.html +0 -529
- package/dist/docs/classes/generalwebcontroller.html +0 -580
- package/dist/docs/classes/hangulservice.html +0 -636
- package/dist/docs/classes/httpstorageservice.html +0 -539
- package/dist/docs/classes/lambdacognitohandler.html +0 -355
- package/dist/docs/classes/lambdacronhandler.html +0 -390
- package/dist/docs/classes/lambdacronhandlerlocal.html +0 -371
- package/dist/docs/classes/lambdadynamostreamhandler.html +0 -472
- package/dist/docs/classes/lambdadynamostreamhandlerlocal.html +0 -455
- package/dist/docs/classes/lambdahandler.html +0 -479
- package/dist/docs/classes/lambdahandlerlocal.html +0 -472
- package/dist/docs/classes/lambdamodule.html +0 -433
- package/dist/docs/classes/lambdanotificationhandler.html +0 -474
- package/dist/docs/classes/lambdanotificationhandlerlocal.html +0 -457
- package/dist/docs/classes/lambdasnshandler.html +0 -394
- package/dist/docs/classes/lambdasnshandlerlocal.html +0 -397
- package/dist/docs/classes/lambdasqshandler.html +0 -394
- package/dist/docs/classes/lambdasqshandlerlocal.html +0 -397
- package/dist/docs/classes/lambdasubhandler.html +0 -305
- package/dist/docs/classes/lambdawebhandler.html +0 -603
- package/dist/docs/classes/lambdawebhandlerlocal.html +0 -581
- package/dist/docs/classes/lambdawsshandler.html +0 -359
- package/dist/docs/classes/memcachedbackend.html +0 -900
- package/dist/docs/classes/mocksapiservice.html +0 -691
- package/dist/docs/classes/modelutil.html +0 -311
- package/dist/docs/classes/myconfigservice.html +0 -561
- package/dist/docs/classes/myconfigservicetest.html +0 -527
- package/dist/docs/classes/myconfigservicetest2.html +0 -522
- package/dist/docs/classes/mydummysqsservice.html +0 -419
- package/dist/docs/classes/myenginemodules.html +0 -357
- package/dist/docs/classes/mygeneralapicontroller.html +0 -837
- package/dist/docs/classes/mylemonwebcontroller.html +0 -356
- package/dist/docs/classes/mymodelfilter.html +0 -479
- package/dist/docs/classes/myprotocolservice.html +0 -993
- package/dist/docs/classes/myprotocolservicetest.html +0 -983
- package/dist/docs/classes/myservice.html +0 -329
- package/dist/docs/classes/mystorage.html +0 -1370
- package/dist/docs/classes/nodecachebackend.html +0 -714
- package/dist/docs/classes/protocolmodule.html +0 -311
- package/dist/docs/classes/proxystorageservice.html +0 -1441
- package/dist/docs/classes/query.html +0 -850
- package/dist/docs/classes/redisbackend.html +0 -781
- package/dist/docs/classes/redisstorageservice.html +0 -867
- package/dist/docs/classes/s3putobjectrequestbuilder.html +0 -509
- package/dist/docs/classes/scan.html +0 -685
- package/dist/docs/classes/snsprotocoltransformer.html +0 -334
- package/dist/docs/classes/sqsprotocoltransformer.html +0 -334
- package/dist/docs/classes/typedstorageservice.html +0 -914
- package/dist/docs/classes/uniquefieldmanager.html +0 -477
- package/dist/docs/classes/usermanager.html +0 -931
- package/dist/docs/classes/utilities.html +0 -1914
- package/dist/docs/classes/webprotocoltransformer.html +0 -330
- package/dist/docs/globals.html +0 -7477
- package/dist/docs/index.html +0 -1519
- package/dist/docs/interfaces/accountitem.html +0 -277
- package/dist/docs/interfaces/accountmodel.html +0 -306
- package/dist/docs/interfaces/adaptiveparam.html +0 -203
- package/dist/docs/interfaces/apiheaders.html +0 -183
- package/dist/docs/interfaces/apihttpproxy.html +0 -304
- package/dist/docs/interfaces/apiserviceclient.html +0 -448
- package/dist/docs/interfaces/autocompletesearchparam.html +0 -309
- package/dist/docs/interfaces/betweencondition.html +0 -226
- package/dist/docs/interfaces/cachebackend.html +0 -714
- package/dist/docs/interfaces/cacheentry.html +0 -248
- package/dist/docs/interfaces/cacheoptions.html +0 -267
- package/dist/docs/interfaces/callbackdata.html +0 -279
- package/dist/docs/interfaces/callbackparam.html +0 -252
- package/dist/docs/interfaces/comparisoncondition.html +0 -226
- package/dist/docs/interfaces/coreconfigservice.html +0 -342
- package/dist/docs/interfaces/corekey.html +0 -278
- package/dist/docs/interfaces/corekeymakeable.html +0 -292
- package/dist/docs/interfaces/corekmsservice.html +0 -311
- package/dist/docs/interfaces/coremodel.html +0 -499
- package/dist/docs/interfaces/coremodelfilterable.html +0 -281
- package/dist/docs/interfaces/cores3service.html +0 -444
- package/dist/docs/interfaces/coreservices.html +0 -232
- package/dist/docs/interfaces/coresnsservice.html +0 -317
- package/dist/docs/interfaces/corewebcontroller.html +0 -271
- package/dist/docs/interfaces/cronevent.html +0 -223
- package/dist/docs/interfaces/cronparam.html +0 -212
- package/dist/docs/interfaces/dynamooption.html +0 -254
- package/dist/docs/interfaces/dynamoqueryresult.html +0 -244
- package/dist/docs/interfaces/dynamoscanresult.html +0 -244
- package/dist/docs/interfaces/dynamosimplequeriable.html +0 -308
- package/dist/docs/interfaces/dynamosimplescannable.html +0 -255
- package/dist/docs/interfaces/dynamostreambody.html +0 -268
- package/dist/docs/interfaces/dynamostreamcallback.html +0 -209
- package/dist/docs/interfaces/dynamostreamfilter.html +0 -218
- package/dist/docs/interfaces/dynamostreamparam.html +0 -240
- package/dist/docs/interfaces/elastic6item.html +0 -221
- package/dist/docs/interfaces/elastic6option.html +0 -275
- package/dist/docs/interfaces/elastic6simplequeriable.html +0 -284
- package/dist/docs/interfaces/engineconsole.html +0 -292
- package/dist/docs/interfaces/enginecore.html +0 -344
- package/dist/docs/interfaces/enginemodule.html +0 -269
- package/dist/docs/interfaces/enginemodules.html +0 -316
- package/dist/docs/interfaces/engineoption.html +0 -244
- package/dist/docs/interfaces/enginescope.html +0 -220
- package/dist/docs/interfaces/existencecondition.html +0 -212
- package/dist/docs/interfaces/filter.html +0 -253
- package/dist/docs/interfaces/generalfuntion.html +0 -207
- package/dist/docs/interfaces/generalitem.html +0 -212
- package/dist/docs/interfaces/handlermap.html +0 -171
- package/dist/docs/interfaces/incrementable.html +0 -190
- package/dist/docs/interfaces/internalkey.html +0 -210
- package/dist/docs/interfaces/internalmodel.html +0 -226
- package/dist/docs/interfaces/itementry.html +0 -241
- package/dist/docs/interfaces/jwtcommon.html +0 -242
- package/dist/docs/interfaces/lambdahandlerservice.html +0 -340
- package/dist/docs/interfaces/lemonengine.html +0 -593
- package/dist/docs/interfaces/metricpostbody.html +0 -220
- package/dist/docs/interfaces/mygeneral.html +0 -271
- package/dist/docs/interfaces/mymodel.html +0 -554
- package/dist/docs/interfaces/myprotocolparam.html +0 -359
- package/dist/docs/interfaces/nextcontext.html +0 -381
- package/dist/docs/interfaces/nextidentity.html +0 -325
- package/dist/docs/interfaces/nextidentityaccess.html +0 -495
- package/dist/docs/interfaces/nextidentitycognito.html +0 -422
- package/dist/docs/interfaces/notificationbody.html +0 -171
- package/dist/docs/interfaces/notificationparam.html +0 -304
- package/dist/docs/interfaces/options.html +0 -226
- package/dist/docs/interfaces/parrallelcallback.html +0 -203
- package/dist/docs/interfaces/parrallelparam.html +0 -285
- package/dist/docs/interfaces/protocolbody.html +0 -183
- package/dist/docs/interfaces/protocolparam.html +0 -336
- package/dist/docs/interfaces/protocolservice.html +0 -548
- package/dist/docs/interfaces/protocoltransformer.html +0 -295
- package/dist/docs/interfaces/proxyparams.html +0 -212
- package/dist/docs/interfaces/putobjectresult.html +0 -282
- package/dist/docs/interfaces/queryresult.html +0 -272
- package/dist/docs/interfaces/redisoptions.html +0 -248
- package/dist/docs/interfaces/simplesearchparam.html +0 -351
- package/dist/docs/interfaces/slackaction.html +0 -240
- package/dist/docs/interfaces/slackattachment.html +0 -459
- package/dist/docs/interfaces/slackpostbody.html +0 -240
- package/dist/docs/interfaces/sqsattribute.html +0 -171
- package/dist/docs/interfaces/sqsmessage.html +0 -254
- package/dist/docs/interfaces/sqsrecord.html +0 -324
- package/dist/docs/interfaces/sqsservice.html +0 -333
- package/dist/docs/interfaces/sqsstatistics.html +0 -240
- package/dist/docs/interfaces/storagemakeable.html +0 -258
- package/dist/docs/interfaces/storagemodel.html +0 -285
- package/dist/docs/interfaces/storageservice.html +0 -497
- package/dist/docs/interfaces/stringcondition.html +0 -226
- package/dist/docs/interfaces/tagset.html +0 -171
- package/dist/docs/interfaces/testmodel.html +0 -334
- package/dist/docs/interfaces/timeout.html +0 -233
- package/dist/docs/interfaces/updatable.html +0 -193
- package/dist/docs/interfaces/user.html +0 -534
package/dist/engine/utilities.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -14,7 +18,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
14
18
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
19
|
if (mod && mod.__esModule) return mod;
|
|
16
20
|
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
22
|
__setModuleDefault(result, mod);
|
|
19
23
|
return result;
|
|
20
24
|
};
|
|
@@ -106,7 +110,7 @@ class Utilities {
|
|
|
106
110
|
const data = dec.substr(MAGIC.length);
|
|
107
111
|
if (data && !data.startsWith('{') && !data.endsWith('}'))
|
|
108
112
|
throw new Error('400 INVALID PASSWD - invalid json string!');
|
|
109
|
-
|
|
113
|
+
const $msg = JSON.parse(data) || {};
|
|
110
114
|
return $msg.val;
|
|
111
115
|
};
|
|
112
116
|
}
|
|
@@ -141,7 +145,7 @@ class Utilities {
|
|
|
141
145
|
};
|
|
142
146
|
this.decrypt = (msg) => {
|
|
143
147
|
const buffer = Buffer.from(`${msg || ''}`, 'base64');
|
|
144
|
-
|
|
148
|
+
const key = Buffer.concat([Buffer.from(passwd)], Buffer.alloc(32).length);
|
|
145
149
|
const decipher = crypto_1.default.createDecipheriv(algorithm, key, iv);
|
|
146
150
|
const dec = Buffer.concat([decipher.update(buffer), decipher.final()]).toString('utf8');
|
|
147
151
|
if (!dec.startsWith(MAGIC))
|
|
@@ -149,7 +153,7 @@ class Utilities {
|
|
|
149
153
|
const data = dec.substr(MAGIC.length);
|
|
150
154
|
if (data && !data.startsWith('{') && !data.endsWith('}'))
|
|
151
155
|
throw new Error('400 INVALID PASSWD - invalid json string!');
|
|
152
|
-
|
|
156
|
+
const $msg = JSON.parse(data) || {};
|
|
153
157
|
return $msg.val;
|
|
154
158
|
};
|
|
155
159
|
}
|
|
@@ -216,19 +220,12 @@ class Utilities {
|
|
|
216
220
|
this.err = _$.err;
|
|
217
221
|
this.name = `${NS}-utils`;
|
|
218
222
|
}
|
|
219
|
-
lodash() {
|
|
220
|
-
// use underscore util.
|
|
221
|
-
const $_ = this._$._;
|
|
222
|
-
if (!$_)
|
|
223
|
-
throw new Error('$_(lodash) is required!');
|
|
224
|
-
return $_;
|
|
225
|
-
}
|
|
226
223
|
//! some helper function.s
|
|
227
224
|
get_env(name, def_val) {
|
|
228
225
|
if (typeof this._$.environ === 'function')
|
|
229
226
|
return this._$.environ(name, def_val);
|
|
230
227
|
// as default, load from proces.env.
|
|
231
|
-
|
|
228
|
+
const val = (process && process.env[name]) || undefined;
|
|
232
229
|
return val === undefined ? def_val : val;
|
|
233
230
|
}
|
|
234
231
|
env(name, def_val) {
|
|
@@ -246,10 +243,10 @@ class Utilities {
|
|
|
246
243
|
const fname = path_1.default.resolve(__dirname, `../${folder}/` + name + (name.endsWith('.yml') ? '' : '.yml'));
|
|
247
244
|
this.log(NS, 'load file =', fname);
|
|
248
245
|
//! prepare promised.
|
|
249
|
-
|
|
246
|
+
const chain = new Promise(function (resolve, reject) {
|
|
250
247
|
// Get document, or throw exception on error
|
|
251
248
|
try {
|
|
252
|
-
|
|
249
|
+
const doc = js_yaml_1.default.safeLoad(fs_1.default.readFileSync(fname, 'utf8'));
|
|
253
250
|
resolve(doc);
|
|
254
251
|
}
|
|
255
252
|
catch (e) {
|
|
@@ -267,7 +264,7 @@ class Utilities {
|
|
|
267
264
|
// Get document, or throw exception on error
|
|
268
265
|
try {
|
|
269
266
|
this.log(NS, 'load-sync-file =', fname);
|
|
270
|
-
|
|
267
|
+
const doc = js_yaml_1.default.safeLoad(fs_1.default.readFileSync(fname, 'utf8'));
|
|
271
268
|
return doc;
|
|
272
269
|
}
|
|
273
270
|
catch (e) {
|
|
@@ -276,7 +273,7 @@ class Utilities {
|
|
|
276
273
|
return {};
|
|
277
274
|
}
|
|
278
275
|
extend(a, b) {
|
|
279
|
-
for (
|
|
276
|
+
for (const x in b)
|
|
280
277
|
a[x] = b[x];
|
|
281
278
|
return a;
|
|
282
279
|
}
|
|
@@ -422,8 +419,8 @@ class Utilities {
|
|
|
422
419
|
* @returns {number}
|
|
423
420
|
*/
|
|
424
421
|
current_time_ms(shift) {
|
|
425
|
-
|
|
426
|
-
|
|
422
|
+
const time_shift = this.N(shift, 0);
|
|
423
|
+
let ret = new Date().getTime();
|
|
427
424
|
ret += time_shift;
|
|
428
425
|
return ret;
|
|
429
426
|
}
|
|
@@ -455,11 +452,7 @@ class Utilities {
|
|
|
455
452
|
if (typeof str == 'object') {
|
|
456
453
|
str = JSON.stringify(str);
|
|
457
454
|
}
|
|
458
|
-
str = str
|
|
459
|
-
.replace(/\\/g, '\\\\')
|
|
460
|
-
.replace(/\$/g, '\\$')
|
|
461
|
-
.replace(/'/g, "\\'")
|
|
462
|
-
.replace(/"/g, '\\"');
|
|
455
|
+
str = str.replace(/\\/g, '\\\\').replace(/\$/g, '\\$').replace(/'/g, "\\'").replace(/"/g, '\\"');
|
|
463
456
|
if (urldecode) {
|
|
464
457
|
// url-decode
|
|
465
458
|
str = decodeURI(str);
|
|
@@ -595,13 +588,12 @@ class Utilities {
|
|
|
595
588
|
diff(obj1, obj2) {
|
|
596
589
|
obj1 = obj1 || {};
|
|
597
590
|
obj2 = obj2 || {};
|
|
598
|
-
const $_ = this.lodash();
|
|
599
591
|
const diff = Object.keys(obj1)
|
|
600
592
|
.reduce((result, key) => {
|
|
601
593
|
if (!obj2.hasOwnProperty(key)) {
|
|
602
594
|
result.push(key);
|
|
603
595
|
}
|
|
604
|
-
else if (
|
|
596
|
+
else if (this.isEqual(obj1[key], obj2[key])) {
|
|
605
597
|
const resultKeyIndex = result.indexOf(key);
|
|
606
598
|
result.splice(resultKeyIndex, 1);
|
|
607
599
|
}
|
|
@@ -610,20 +602,144 @@ class Utilities {
|
|
|
610
602
|
.sort();
|
|
611
603
|
return diff;
|
|
612
604
|
}
|
|
605
|
+
/**
|
|
606
|
+
* check if equal between 2 object.
|
|
607
|
+
* - inspired from `underscore` module originally, and optimized for compartibility.
|
|
608
|
+
*/
|
|
609
|
+
isEqual(obj1, obj2) {
|
|
610
|
+
const keys = Object.keys;
|
|
611
|
+
function tagTester(name) {
|
|
612
|
+
return function (obj) {
|
|
613
|
+
return toString.call(obj) === '[object ' + name + ']';
|
|
614
|
+
};
|
|
615
|
+
}
|
|
616
|
+
const isFunction = tagTester('Function');
|
|
617
|
+
function _has(obj, path) {
|
|
618
|
+
return obj != null && Object.hasOwnProperty.call(obj, path);
|
|
619
|
+
}
|
|
620
|
+
// Internal recursive comparison function for `isEqual`.
|
|
621
|
+
function eq(a, b, aStack, bStack) {
|
|
622
|
+
// Identical objects are equal. `0 === -0`, but they aren't identical.
|
|
623
|
+
// See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal).
|
|
624
|
+
if (a === b)
|
|
625
|
+
return a !== 0 || 1 / a === 1 / b;
|
|
626
|
+
// `null` or `undefined` only equal to itself (strict comparison).
|
|
627
|
+
if (a == null || b == null)
|
|
628
|
+
return false;
|
|
629
|
+
// `NaN`s are equivalent, but non-reflexive.
|
|
630
|
+
if (a !== a)
|
|
631
|
+
return b !== b;
|
|
632
|
+
// Exhaust primitive checks
|
|
633
|
+
const type = typeof a;
|
|
634
|
+
if (type !== 'function' && type !== 'object' && typeof b != 'object')
|
|
635
|
+
return false;
|
|
636
|
+
return deepEq(a, b, aStack, bStack);
|
|
637
|
+
}
|
|
638
|
+
// Internal recursive comparison function for `isEqual`.
|
|
639
|
+
function deepEq(a, b, aStack, bStack) {
|
|
640
|
+
// Compare `[[Class]]` names.
|
|
641
|
+
const className = toString.call(a);
|
|
642
|
+
if (className !== toString.call(b))
|
|
643
|
+
return false;
|
|
644
|
+
switch (className) {
|
|
645
|
+
// Strings, numbers, regular expressions, dates, and booleans are compared by value.
|
|
646
|
+
case '[object RegExp]':
|
|
647
|
+
// RegExps are coerced to strings for comparison (Note: '' + /a/i === '/a/i')
|
|
648
|
+
case '[object String]':
|
|
649
|
+
// Primitives and their corresponding object wrappers are equivalent; thus, `"5"` is
|
|
650
|
+
// equivalent to `new String("5")`.
|
|
651
|
+
return '' + a === '' + b;
|
|
652
|
+
case '[object Number]':
|
|
653
|
+
// `NaN`s are equivalent, but non-reflexive.
|
|
654
|
+
// Object(NaN) is equivalent to NaN.
|
|
655
|
+
if (+a !== +a)
|
|
656
|
+
return +b !== +b;
|
|
657
|
+
// An `egal` comparison is performed for other numeric values.
|
|
658
|
+
return +a === 0 ? 1 / +a === 1 / b : +a === +b;
|
|
659
|
+
case '[object Date]':
|
|
660
|
+
case '[object Boolean]':
|
|
661
|
+
// Coerce dates and booleans to numeric primitive values. Dates are compared by their
|
|
662
|
+
// millisecond representations. Note that invalid dates with millisecond representations
|
|
663
|
+
// of `NaN` are not equivalent.
|
|
664
|
+
return +a === +b;
|
|
665
|
+
}
|
|
666
|
+
const areArrays = className === '[object Array]';
|
|
667
|
+
if (!areArrays) {
|
|
668
|
+
if (typeof a != 'object' || typeof b != 'object')
|
|
669
|
+
return false;
|
|
670
|
+
// Objects with different constructors are not equivalent, but `Object`s or `Array`s
|
|
671
|
+
// from different frames are.
|
|
672
|
+
const aCtor = a.constructor, bCtor = b.constructor;
|
|
673
|
+
if (aCtor !== bCtor &&
|
|
674
|
+
!(isFunction(aCtor) && aCtor instanceof aCtor && isFunction(bCtor) && bCtor instanceof bCtor) &&
|
|
675
|
+
'constructor' in a &&
|
|
676
|
+
'constructor' in b) {
|
|
677
|
+
return false;
|
|
678
|
+
}
|
|
679
|
+
}
|
|
680
|
+
// Assume equality for cyclic structures. The algorithm for detecting cyclic
|
|
681
|
+
// structures is adapted from ES 5.1 section 15.12.3, abstract operation `JO`.
|
|
682
|
+
// Initializing stack of traversed objects.
|
|
683
|
+
// It's done here since we only need them for objects and arrays comparison.
|
|
684
|
+
aStack = aStack || [];
|
|
685
|
+
bStack = bStack || [];
|
|
686
|
+
let length = aStack.length;
|
|
687
|
+
while (length--) {
|
|
688
|
+
// Linear search. Performance is inversely proportional to the number of
|
|
689
|
+
// unique nested structures.
|
|
690
|
+
if (aStack[length] === a)
|
|
691
|
+
return bStack[length] === b;
|
|
692
|
+
}
|
|
693
|
+
// Add the first object to the stack of traversed objects.
|
|
694
|
+
aStack.push(a);
|
|
695
|
+
bStack.push(b);
|
|
696
|
+
// Recursively compare objects and arrays.
|
|
697
|
+
if (areArrays) {
|
|
698
|
+
// Compare array lengths to determine if a deep comparison is necessary.
|
|
699
|
+
length = a.length;
|
|
700
|
+
if (length !== b.length)
|
|
701
|
+
return false;
|
|
702
|
+
// Deep compare the contents, ignoring non-numeric properties.
|
|
703
|
+
while (length--) {
|
|
704
|
+
if (!eq(a[length], b[length], aStack, bStack))
|
|
705
|
+
return false;
|
|
706
|
+
}
|
|
707
|
+
}
|
|
708
|
+
else {
|
|
709
|
+
// Deep compare objects.
|
|
710
|
+
const _keys = keys(a);
|
|
711
|
+
let key;
|
|
712
|
+
length = _keys.length;
|
|
713
|
+
// Ensure that both objects contain the same number of properties before comparing deep equality.
|
|
714
|
+
if (keys(b).length !== length)
|
|
715
|
+
return false;
|
|
716
|
+
while (length--) {
|
|
717
|
+
// Deep compare each member
|
|
718
|
+
key = _keys[length];
|
|
719
|
+
if (!(_has(b, key) && eq(a[key], b[key], aStack, bStack)))
|
|
720
|
+
return false;
|
|
721
|
+
}
|
|
722
|
+
}
|
|
723
|
+
// Remove the first object from the stack of traversed objects.
|
|
724
|
+
aStack.pop();
|
|
725
|
+
bStack.pop();
|
|
726
|
+
return true;
|
|
727
|
+
}
|
|
728
|
+
return eq(obj1, obj2);
|
|
729
|
+
}
|
|
613
730
|
/**
|
|
614
731
|
* calcualte node differences
|
|
615
732
|
*/
|
|
616
733
|
diff_node(obj1, obj2) {
|
|
617
734
|
obj1 = obj1 || {};
|
|
618
735
|
obj2 = obj2 || {};
|
|
619
|
-
const $_ = this.lodash();
|
|
620
736
|
const keys1 = Object.keys(obj1).filter(key => (key.startsWith('_') || key.startsWith('$') ? false : true));
|
|
621
737
|
const keys2 = Object.keys(obj2).filter(key => (key.startsWith('_') || key.startsWith('$') ? false : true));
|
|
622
738
|
const diff = keys1.reduce((list, key) => {
|
|
623
739
|
if (!obj2.hasOwnProperty(key)) {
|
|
624
740
|
list.push(key);
|
|
625
741
|
}
|
|
626
|
-
else if (
|
|
742
|
+
else if (this.isEqual(obj1[key], obj2[key])) {
|
|
627
743
|
const resultKeyIndex = list.indexOf(key);
|
|
628
744
|
list.splice(resultKeyIndex, 1);
|
|
629
745
|
}
|
|
@@ -684,10 +800,7 @@ class Utilities {
|
|
|
684
800
|
*/
|
|
685
801
|
md5(data, digest) {
|
|
686
802
|
digest = digest === undefined ? 'hex' : digest;
|
|
687
|
-
return crypto_1.default
|
|
688
|
-
.createHash('md5')
|
|
689
|
-
.update(data)
|
|
690
|
-
.digest(digest);
|
|
803
|
+
return crypto_1.default.createHash('md5').update(data).digest(digest);
|
|
691
804
|
}
|
|
692
805
|
/**
|
|
693
806
|
* get hmac hash
|
|
@@ -696,10 +809,7 @@ class Utilities {
|
|
|
696
809
|
KEY = KEY || 'XENI';
|
|
697
810
|
encoding = encoding || 'base64';
|
|
698
811
|
algorithm = algorithm || 'sha256';
|
|
699
|
-
return crypto_1.default
|
|
700
|
-
.createHmac(algorithm, KEY)
|
|
701
|
-
.update(data)
|
|
702
|
-
.digest(encoding);
|
|
812
|
+
return crypto_1.default.createHmac(algorithm, KEY).update(data).digest(encoding);
|
|
703
813
|
}
|
|
704
814
|
/**
|
|
705
815
|
* parse query-string.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../src/engine/utilities.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utilities.js","sourceRoot":"","sources":["../../src/engine/utilities.ts"],"names":[],"mappings":"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"}
|
package/dist/environ.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -14,7 +18,7 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
14
18
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
19
|
if (mod && mod.__esModule) return mod;
|
|
16
20
|
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
22
|
__setModuleDefault(result, mod);
|
|
19
23
|
return result;
|
|
20
24
|
};
|
|
@@ -63,9 +67,10 @@ const aws_sdk_1 = __importDefault(require("aws-sdk"));
|
|
|
63
67
|
* @param process
|
|
64
68
|
* @param param1
|
|
65
69
|
*/
|
|
66
|
-
|
|
70
|
+
const loadEnviron = (process, options) => {
|
|
67
71
|
options = options || {};
|
|
68
|
-
|
|
72
|
+
const { ENV, ENV_PATH } = options;
|
|
73
|
+
let { STAGE } = options;
|
|
69
74
|
const $env = (process && process.env) || {};
|
|
70
75
|
const QUIET = 0 ? 0 : $env['LS'] === '1'; // LOG SILENT - PRINT NO LOG MESSAGE
|
|
71
76
|
const PROFILE = ENV || $env['PROFILE'] || $env['ENV'] || 'none'; // Environment Profile Name.
|
|
@@ -105,6 +110,7 @@ exports.loadEnviron = (process, options) => {
|
|
|
105
110
|
return Object.assign($det, $new);
|
|
106
111
|
})($env);
|
|
107
112
|
};
|
|
113
|
+
exports.loadEnviron = loadEnviron;
|
|
108
114
|
/**
|
|
109
115
|
* dynamic loading credentials by profile. (search PROFILE -> NAME)
|
|
110
116
|
* !WARN! - could not catch AWS.Error `Profile null not found` via callback.
|
|
@@ -128,15 +134,16 @@ const credentials = (profile) => {
|
|
|
128
134
|
* @param $proc process (default `global.process`)
|
|
129
135
|
* @param $info info logger (default `console.info`)
|
|
130
136
|
*/
|
|
131
|
-
|
|
137
|
+
const loadProfile = ($proc, $info) => {
|
|
132
138
|
$proc = $proc === undefined ? process : $proc;
|
|
133
139
|
$info = $info === undefined ? console.info : $info;
|
|
134
|
-
const $env = exports.loadEnviron($proc);
|
|
140
|
+
const $env = (0, exports.loadEnviron)($proc);
|
|
135
141
|
const PROFILE = `${$env['NAME'] != 'none' ? $env['NAME'] || '' : ''}`;
|
|
136
142
|
if (PROFILE && $info)
|
|
137
143
|
$info('! PROFILE =', PROFILE);
|
|
138
144
|
return credentials(PROFILE);
|
|
139
145
|
};
|
|
146
|
+
exports.loadProfile = loadProfile;
|
|
140
147
|
//! export default.
|
|
141
148
|
exports.default = exports.loadEnviron;
|
|
142
149
|
//# sourceMappingURL=environ.js.map
|
package/dist/environ.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environ.js","sourceRoot":"","sources":["../src/environ.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"environ.js","sourceRoot":"","sources":["../src/environ.ts"],"names":[],"mappings":"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"}
|
package/dist/exec-cli.js
CHANGED
|
@@ -31,13 +31,13 @@ const engine_1 = require("./engine");
|
|
|
31
31
|
const tools_1 = require("./tools/");
|
|
32
32
|
//! - initial values.
|
|
33
33
|
const NS = engine_1.$U.NS('EXEC', 'cyan');
|
|
34
|
-
const $pack = tools_1.loadJsonSync('package.json');
|
|
34
|
+
const $pack = (0, tools_1.loadJsonSync)('package.json');
|
|
35
35
|
const NAME = $pack.name || 'LEMON API';
|
|
36
36
|
const VERS = $pack.version || '0.0.0';
|
|
37
37
|
const PORT = engine_1.$U.N($pack.port, 0); // default server port.
|
|
38
38
|
if (!PORT)
|
|
39
39
|
throw new Error('.port is required at package.json!');
|
|
40
|
-
engine_1._log(NS, `###### exec[${NAME}@${engine_1.$U.NS(VERS, 'cyan')}${PORT}] ######`);
|
|
40
|
+
(0, engine_1._log)(NS, `###### exec[${NAME}@${engine_1.$U.NS(VERS, 'cyan')}${PORT}] ######`);
|
|
41
41
|
/** ********************************************************************************************************************
|
|
42
42
|
* main application
|
|
43
43
|
** *******************************************************************************************************************/
|
|
@@ -54,10 +54,10 @@ const do_http = (options) => {
|
|
|
54
54
|
}
|
|
55
55
|
// options.headers.Cookie = (options.headers.Cookie||'') + (options.headers.Cookie ? '; ':'') + cookies;
|
|
56
56
|
return new Promise((resolve, reject) => {
|
|
57
|
-
engine_1._inf(NS, options.method, options.uri);
|
|
58
|
-
request_1.default(options, (error, res, body) => {
|
|
57
|
+
(0, engine_1._inf)(NS, options.method, options.uri);
|
|
58
|
+
(0, request_1.default)(options, (error, res, body) => {
|
|
59
59
|
if (error) {
|
|
60
|
-
engine_1._err(NS, '!ERR=', error);
|
|
60
|
+
(0, engine_1._err)(NS, '!ERR=', error);
|
|
61
61
|
return reject(error);
|
|
62
62
|
}
|
|
63
63
|
const ctype = res.headers['content-type'] || '';
|
|
@@ -71,7 +71,7 @@ const do_http = (options) => {
|
|
|
71
71
|
resolve(body);
|
|
72
72
|
}
|
|
73
73
|
catch (e) {
|
|
74
|
-
engine_1._err(NS, '! invalid json body =', body);
|
|
74
|
+
(0, engine_1._err)(NS, '! invalid json body =', body);
|
|
75
75
|
reject(e);
|
|
76
76
|
}
|
|
77
77
|
}
|
|
@@ -97,7 +97,7 @@ const prepare_json = function (method, path, qs, body) {
|
|
|
97
97
|
// if (body) options.body = typeof body == 'object' ? JSON.stringify(body) : body;
|
|
98
98
|
if (body)
|
|
99
99
|
options.method = 'POST';
|
|
100
|
-
body && engine_1._inf(NS, '> json.body =', JSON.stringify(body));
|
|
100
|
+
body && (0, engine_1._inf)(NS, '> json.body =', JSON.stringify(body));
|
|
101
101
|
return options;
|
|
102
102
|
};
|
|
103
103
|
//! wait some
|
|
@@ -121,17 +121,17 @@ const wait_sometime = (that, time) => {
|
|
|
121
121
|
*/
|
|
122
122
|
//! batch-run
|
|
123
123
|
const ENDPOINT = `http://localhost:${PORT}`;
|
|
124
|
-
const METHOD = tools_1.getRunParam('m', 'GET');
|
|
125
|
-
const EP = tools_1.getRunParam('ep', '');
|
|
126
|
-
const ID = tools_1.getRunParam('id', '0');
|
|
127
|
-
const IPP = tools_1.getRunParam('ipp', 0);
|
|
128
|
-
const WAIT = tools_1.getRunParam('wait', 1000);
|
|
129
|
-
const SID = tools_1.getRunParam('sid', '');
|
|
130
|
-
const CMD = tools_1.getRunParam('cmd', '');
|
|
131
|
-
const OPT = tools_1.getRunParam('opt', '');
|
|
124
|
+
const METHOD = (0, tools_1.getRunParam)('m', 'GET');
|
|
125
|
+
const EP = (0, tools_1.getRunParam)('ep', '');
|
|
126
|
+
const ID = (0, tools_1.getRunParam)('id', '0');
|
|
127
|
+
const IPP = (0, tools_1.getRunParam)('ipp', 0);
|
|
128
|
+
const WAIT = (0, tools_1.getRunParam)('wait', 1000);
|
|
129
|
+
const SID = (0, tools_1.getRunParam)('sid', '');
|
|
130
|
+
const CMD = (0, tools_1.getRunParam)('cmd', '');
|
|
131
|
+
const OPT = (0, tools_1.getRunParam)('opt', '');
|
|
132
132
|
const [PAGE, MAX] = (() => {
|
|
133
|
-
let page = tools_1.getRunParam('page', '');
|
|
134
|
-
let max = tools_1.getRunParam('max', 1);
|
|
133
|
+
let page = (0, tools_1.getRunParam)('page', '');
|
|
134
|
+
let max = (0, tools_1.getRunParam)('max', 1);
|
|
135
135
|
if (`${page}`.indexOf('~') > 0) {
|
|
136
136
|
const pages = `${page}`.split('~').map((_) => _.trim());
|
|
137
137
|
page = parseInt(pages[0]) || 0;
|
|
@@ -142,13 +142,13 @@ const [PAGE, MAX] = (() => {
|
|
|
142
142
|
}
|
|
143
143
|
return [page, max];
|
|
144
144
|
})();
|
|
145
|
-
engine_1._log(NS, 'PAGE ~ MAX =', PAGE, '~', MAX);
|
|
145
|
+
(0, engine_1._log)(NS, 'PAGE ~ MAX =', PAGE, '~', MAX);
|
|
146
146
|
//! execute page by page.
|
|
147
147
|
const run_batch = (that) => {
|
|
148
148
|
//! invoke http(json).
|
|
149
149
|
const my_chain_run_page = (that) => {
|
|
150
150
|
const page = engine_1.$U.N(that.page, -1);
|
|
151
|
-
engine_1._inf(NS, '#page := ', page);
|
|
151
|
+
(0, engine_1._inf)(NS, '#page := ', page);
|
|
152
152
|
if (page < 0)
|
|
153
153
|
return Promise.reject(new Error('page is required!'));
|
|
154
154
|
const body = {}; //{map: that.map, default: that.default, layout: that.layout};
|
|
@@ -164,10 +164,10 @@ const run_batch = (that) => {
|
|
|
164
164
|
(OPT ? '&' : '') +
|
|
165
165
|
OPT, null, Object.keys(body).length ? body : null);
|
|
166
166
|
return do_http(req).then((_) => {
|
|
167
|
-
_.layout && engine_1._log(NS, '! that[' + page + '].layout =', _.layout);
|
|
168
|
-
_.range && engine_1._log(NS, '! that[' + page + '].range =', _.range);
|
|
169
|
-
_.list && engine_1._log(NS, '! that[' + page + '].list =', _.list); // if has list.
|
|
170
|
-
_.list || engine_1._inf(NS, '!WARN res =', _); // if not list.
|
|
167
|
+
_.layout && (0, engine_1._log)(NS, '! that[' + page + '].layout =', _.layout);
|
|
168
|
+
_.range && (0, engine_1._log)(NS, '! that[' + page + '].range =', _.range);
|
|
169
|
+
_.list && (0, engine_1._log)(NS, '! that[' + page + '].list =', _.list); // if has list.
|
|
170
|
+
_.list || (0, engine_1._inf)(NS, '!WARN res =', _); // if not list.
|
|
171
171
|
//! attach to that.
|
|
172
172
|
if (_.map)
|
|
173
173
|
that.map = _.map;
|
|
@@ -188,17 +188,17 @@ const run_batch = (that) => {
|
|
|
188
188
|
const list = that.list;
|
|
189
189
|
const cnt = list ? list.length : -1; // '0' means EOF, -1 means N/A.
|
|
190
190
|
const total = engine_1.$U.N(that.total, 0);
|
|
191
|
-
engine_1._inf(NS, '> cnt@page =', cnt + '@' + page, ':', total);
|
|
191
|
+
(0, engine_1._inf)(NS, '> cnt@page =', cnt + '@' + page, ':', total);
|
|
192
192
|
const page2 = METHOD != 'DELETE' && page ? page + 1 : page;
|
|
193
193
|
if (cnt === 0 || (MAX > 0 && page2 > MAX)) {
|
|
194
|
-
engine_1._log(NS, 'FINISHED! Page =', page);
|
|
194
|
+
(0, engine_1._log)(NS, 'FINISHED! Page =', page);
|
|
195
195
|
return list;
|
|
196
196
|
}
|
|
197
197
|
that.page = page2;
|
|
198
198
|
return run_batch(that);
|
|
199
199
|
})
|
|
200
200
|
.catch(e => {
|
|
201
|
-
engine_1._err(NS, '!ERR! FIN=', e);
|
|
201
|
+
(0, engine_1._err)(NS, '!ERR! FIN=', e);
|
|
202
202
|
throw e;
|
|
203
203
|
});
|
|
204
204
|
};
|