lemon-core 4.0.2 → 4.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/cores/aws/aws-kms-service.js +3 -4
  2. package/dist/cores/aws/aws-kms-service.js.map +1 -1
  3. package/dist/cores/aws/aws-s3-service.js +3 -3
  4. package/dist/cores/aws/aws-s3-service.js.map +1 -1
  5. package/dist/cores/aws/aws-sns-service.d.ts +14 -1
  6. package/dist/cores/aws/aws-sns-service.js +12 -9
  7. package/dist/cores/aws/aws-sns-service.js.map +1 -1
  8. package/dist/cores/aws/aws-sqs-service.d.ts +1 -1
  9. package/dist/cores/aws/aws-sqs-service.js +15 -9
  10. package/dist/cores/aws/aws-sqs-service.js.map +1 -1
  11. package/dist/cores/core-services.d.ts +1 -1
  12. package/dist/cores/dynamo/dynamo-query-service.js +1 -1
  13. package/dist/cores/dynamo/dynamo-query-service.js.map +1 -1
  14. package/dist/cores/dynamo/dynamo-scan-service.js +1 -1
  15. package/dist/cores/dynamo/dynamo-scan-service.js.map +1 -1
  16. package/dist/cores/dynamo/dynamo-service.d.ts +1 -1
  17. package/dist/cores/dynamo/dynamo-service.js +45 -14
  18. package/dist/cores/dynamo/dynamo-service.js.map +1 -1
  19. package/dist/cores/lambda/lambda-handler.d.ts +5 -0
  20. package/dist/cores/lambda/lambda-handler.js +13 -0
  21. package/dist/cores/lambda/lambda-handler.js.map +1 -1
  22. package/dist/cores/lambda/lambda-web-handler.d.ts +10 -2
  23. package/dist/cores/lambda/lambda-web-handler.js +4 -14
  24. package/dist/cores/lambda/lambda-web-handler.js.map +1 -1
  25. package/dist/cores/protocol/protocol-service.d.ts +2 -1
  26. package/dist/cores/protocol/protocol-service.js +74 -25
  27. package/dist/cores/protocol/protocol-service.js.map +1 -1
  28. package/dist/engine/utilities.d.ts +4 -0
  29. package/dist/engine/utilities.js +34 -8
  30. package/dist/engine/utilities.js.map +1 -1
  31. package/dist/environ.d.ts +9 -30
  32. package/dist/environ.js +54 -18
  33. package/dist/environ.js.map +1 -1
  34. package/dist/extended/abstract-service.d.ts +3 -12
  35. package/dist/extended/abstract-service.js +1 -28
  36. package/dist/extended/abstract-service.js.map +1 -1
  37. package/dist/helpers/helpers.js +2 -7
  38. package/dist/helpers/helpers.js.map +1 -1
  39. package/dist/tools/express.d.ts +18 -32
  40. package/dist/tools/express.js +56 -7
  41. package/dist/tools/express.js.map +1 -1
  42. package/dist/tools/shared.d.ts +1 -10
  43. package/dist/tools/shared.js +26 -13
  44. package/dist/tools/shared.js.map +1 -1
  45. package/dist/tools/tools.d.ts +34 -2
  46. package/dist/tools/tools.js +52 -2
  47. package/dist/tools/tools.js.map +1 -1
  48. package/package.json +3 -2
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.asyncCredentials = exports.loadDataYml = exports.loadJsonSync = void 0;
15
+ exports.awsConfig = exports.asyncCredentials = exports.loadDataYml = exports.loadJsonSync = exports.onlyDefined = void 0;
16
16
  /**
17
17
  * `tools/tools.ts`
18
18
  * - additional helper.
@@ -33,6 +33,15 @@ exports.asyncCredentials = exports.loadDataYml = exports.loadJsonSync = void 0;
33
33
  const fs_1 = __importDefault(require("fs"));
34
34
  const js_yaml_1 = __importDefault(require("js-yaml"));
35
35
  const credential_providers_1 = require("@aws-sdk/credential-providers");
36
+ /** returns only defined */
37
+ const onlyDefined = (N, $def = null) => N && typeof N === 'object'
38
+ ? Object.entries(N).reduce((N, [k, v]) => {
39
+ if (v !== undefined)
40
+ N[k] = v;
41
+ return N;
42
+ }, {})
43
+ : $def;
44
+ exports.onlyDefined = onlyDefined;
36
45
  /**
37
46
  * load json in sync.
38
47
  */
@@ -63,7 +72,7 @@ exports.loadDataYml = loadDataYml;
63
72
  /**
64
73
  * dynamic loading credentials by profile. (search PROFILE -> NAME)
65
74
  *
66
- * @returns {Promise<any>} - AWS credentials
75
+ * @returns {Promise<CrendentialForAWS>} - AWS credentials
67
76
  */
68
77
  const asyncCredentials = (profile) => __awaiter(void 0, void 0, void 0, function* () {
69
78
  const provider = (0, credential_providers_1.fromIni)({ profile });
@@ -71,4 +80,45 @@ const asyncCredentials = (profile) => __awaiter(void 0, void 0, void 0, function
71
80
  return Object.assign(Object.assign({}, $res), { profile });
72
81
  });
73
82
  exports.asyncCredentials = asyncCredentials;
83
+ /**
84
+ * load config for aws sdk
85
+ * - if `profile` is not defined, use `AWS_PROFILE` or `default`
86
+ * - if `region` is not defined, use `AWS_REGION` or `ap-northeast-2`
87
+ *
88
+ * ```
89
+ * # run with default profile
90
+ * $ npm run test:watch
91
+ *
92
+ * # run with `lemon` profile
93
+ * #npm run test:watch.lemon
94
+ */
95
+ const awsConfig = ($engine,
96
+ /** params or region */
97
+ params) => {
98
+ var _a;
99
+ const errScope = `awsConfig(${(_a = $engine === null || $engine === void 0 ? void 0 : $engine.id) !== null && _a !== void 0 ? _a : ''})`;
100
+ const region = params === undefined
101
+ ? 'ap-northeast-2'
102
+ : typeof params === 'string'
103
+ ? params
104
+ : typeof params === 'function'
105
+ ? params()
106
+ : params === null || params === void 0 ? void 0 : params.region;
107
+ const _conf = typeof params === 'object' ? params : null;
108
+ const profile = $engine === null || $engine === void 0 ? void 0 : $engine.environ('NAME', 'none');
109
+ if (typeof profile !== 'string')
110
+ throw new Error(`@env.NAME[${typeof profile}] is invalid (check $engine) - ${errScope}`);
111
+ //* build defualt config.
112
+ const $conf = (0, exports.onlyDefined)(Object.assign({ profile: profile && profile !== 'none' ? profile : undefined, region }, _conf));
113
+ if (typeof $conf.region === 'string' && !$conf.region)
114
+ throw new Error(`.region[${$conf.region}] is invalid (empty) - ${errScope}`);
115
+ //! load the credentials provider(async function).
116
+ const credentials = typeof $conf.credentials === 'function'
117
+ ? $conf.credentials
118
+ : $conf.profile
119
+ ? (0, credential_providers_1.fromIni)({ profile: $conf.profile })
120
+ : undefined;
121
+ return (0, exports.onlyDefined)(Object.assign(Object.assign({}, $conf), { credentials }));
122
+ };
123
+ exports.awsConfig = awsConfig;
74
124
  //# sourceMappingURL=tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/tools/tools.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;;GAgBG;AACH,4CAAoB;AACpB,sDAA2B;AAC3B,wEAAwD;AAGxD;;GAEG;AACI,MAAM,YAAY,GAAG,CAAyB,IAAY,EAAE,GAAG,GAAG,EAAE,EAAK,EAAE;IAC9E,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,IAAI;QACA,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAM,CAAC;KAC9C;IAAC,OAAO,CAAC,EAAE;QACR,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAG,GAAW,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC;QAC7E,OAAO,GAAQ,CAAC;KACnB;AACL,CAAC,CAAC;AATW,QAAA,YAAY,gBASvB;AAEF;;GAEG;AACI,MAAM,WAAW,GAAG,CAAyB,IAAY,EAAE,MAAe,EAAK,EAAE;IACpF,MAAM,GAAG,MAAM,IAAI,MAAM,CAAC;IAC1B,MAAM,IAAI,GAAG,KAAK,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3E,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,IAAI,CAAC,CAAC;IAC/E,OAAO,iBAAI,CAAC,IAAI,CAAC,YAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AACpD,CAAC,CAAC;AALW,QAAA,WAAW,eAKtB;AAEF;;;;GAIG;AACI,MAAM,gBAAgB,GAAG,CAAO,OAAe,EAA8B,EAAE;IAClF,MAAM,QAAQ,GAAG,IAAA,8BAAO,EAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC9B,uCAAY,IAAI,KAAE,OAAO,IAAG;AAChC,CAAC,CAAA,CAAC;AAJW,QAAA,gBAAgB,oBAI3B"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/tools/tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lemon-core",
3
- "version": "4.0.2",
3
+ "version": "4.0.3",
4
4
  "description": "Lemon Serverless Micro-Service Platform",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "test.lemon": "ENV=lemon npm run test",
19
19
  "test:dev": "LS=1 jest --config=jest.config.json --watchAll",
20
20
  "!test:watch": "---- custom test with profile -----",
21
- "test:watch": "LS=1 AWS_SDK_JS_SUPPRESS_MAINTENANCE_MODE_MESSAGE=1 jest --config=jest.config.json --watchAll",
21
+ "test:watch": "LS=1 jest --config=jest.config.json --watchAll",
22
22
  "test:watch.lemon": "ENV=lemon npm run test:watch",
23
23
  "!prepare": "------- run self-test with jest -----",
24
24
  "prepare": "npm run build",
@@ -106,6 +106,7 @@
106
106
  "husky": "^8.0.3",
107
107
  "jest": "^28.1.3",
108
108
  "jest-jasmine2": "^28.1.3",
109
+ "lemon-devkit": "^0.0.3",
109
110
  "lint-staged": "^13.1.0",
110
111
  "prettier": "^2.7.1",
111
112
  "superagent": "^5.3.1",