@voxgig/build 0.3.0 → 0.5.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/build.ts CHANGED
@@ -20,23 +20,43 @@ const EnvLambda = {
20
20
  const lambda = srv.env.lambda
21
21
  const handler = lambda.handler
22
22
 
23
+ // NOTE: gen.custom covention: allows for complete overwrite
24
+ // as a get-out-of-jail
25
+ if (srv.gen?.custom?.lambda?.srv_yml) {
26
+ return srv.gen.custom.lambda.srv_yml
27
+ }
28
+
23
29
  let srvyml = `${name}:
24
30
  handler: ${handler.path.prefix}${name}${handler.path.suffix}
25
31
  events:
26
32
  `
27
33
  const web = srv.api.web
28
34
 
29
- console.log(web)
30
-
31
35
  if (web.active) {
32
36
  let prefix = web.path.prefix
33
37
  let area = web.path.area
34
38
  let method = web.method
35
- let cors = web.cors.active ? 'true' : 'false'
39
+ let corsflag = 'false'
40
+ let corsprops = ''
41
+
42
+ if (web.cors.active) {
43
+ corsflag = 'true'
44
+ if (web.cors.props && !empty(web.cors.props)) {
45
+ corsflag = ''
46
+ corsprops = Object
47
+ .entries(web.cors.props)
48
+ .reduce(((a: any, nv: any) => (
49
+ a += ` ${nv[0]}: ${nv[1]}\n`
50
+ , a)), '')
51
+ }
52
+ }
53
+
54
+
36
55
  srvyml += ` - http:
37
56
  path: "${prefix}${area}${name}"
38
57
  method: ${method}
39
- cors: ${cors}
58
+ cors: ${corsflag}
59
+ ${corsprops}
40
60
  `
41
61
  }
42
62
 
@@ -78,6 +98,12 @@ exports.handler = async (event, context) => {
78
98
 
79
99
  }
80
100
 
101
+
102
+ function empty(o: any) {
103
+ return null == o ? true : 0 === Object.keys(o).length
104
+ }
105
+
106
+
81
107
  export {
82
108
  EnvLambda
83
109
  }
package/dist/build.js CHANGED
@@ -14,25 +14,42 @@ const EnvLambda = {
14
14
  .entries(model.main.srv)
15
15
  .filter((entry) => { var _a, _b; return (_b = (_a = entry[1].env) === null || _a === void 0 ? void 0 : _a.lambda) === null || _b === void 0 ? void 0 : _b.active; })
16
16
  .map((entry) => {
17
+ var _a, _b, _c;
17
18
  const name = entry[0];
18
19
  const srv = entry[1];
19
20
  const lambda = srv.env.lambda;
20
21
  const handler = lambda.handler;
22
+ // NOTE: gen.custom covention: allows for complete overwrite
23
+ // as a get-out-of-jail
24
+ if ((_c = (_b = (_a = srv.gen) === null || _a === void 0 ? void 0 : _a.custom) === null || _b === void 0 ? void 0 : _b.lambda) === null || _c === void 0 ? void 0 : _c.srv_yml) {
25
+ return srv.gen.custom.lambda.srv_yml;
26
+ }
21
27
  let srvyml = `${name}:
22
28
  handler: ${handler.path.prefix}${name}${handler.path.suffix}
23
29
  events:
24
30
  `;
25
31
  const web = srv.api.web;
26
- console.log(web);
27
32
  if (web.active) {
28
33
  let prefix = web.path.prefix;
29
34
  let area = web.path.area;
30
35
  let method = web.method;
31
- let cors = web.cors.active ? 'true' : 'false';
36
+ let corsflag = 'false';
37
+ let corsprops = '';
38
+ if (web.cors.active) {
39
+ corsflag = 'true';
40
+ if (web.cors.props && !empty(web.cors.props)) {
41
+ corsflag = '';
42
+ corsprops = Object
43
+ .entries(web.cors.props)
44
+ .reduce(((a, nv) => (a += ` ${nv[0]}: ${nv[1]}\n`
45
+ , a)), '');
46
+ }
47
+ }
32
48
  srvyml += ` - http:
33
49
  path: "${prefix}${area}${name}"
34
50
  method: ${method}
35
- cors: ${cors}
51
+ cors: ${corsflag}
52
+ ${corsprops}
36
53
  `;
37
54
  }
38
55
  return srvyml;
@@ -65,4 +82,7 @@ exports.handler = async (event, context) => {
65
82
  },
66
83
  };
67
84
  exports.EnvLambda = EnvLambda;
85
+ function empty(o) {
86
+ return null == o ? true : 0 === Object.keys(o).length;
87
+ }
68
88
  //# sourceMappingURL=build.js.map
package/dist/build.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../build.ts"],"names":[],"mappings":";AAAA,+CAA+C;;;;;;AAE/C,4CAAmB;AACnB,gDAAuB;AAEvB,MAAM,SAAS,GAAG;IAEhB,OAAO,EAAE,CAAC,KAAU,EAAE,IAErB,EAAE,EAAE;QACH,IAAI,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAEpD,IAAI,OAAO,GAAG,MAAM;aACjB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;aACvB,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,eAAC,OAAA,MAAA,MAAA,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,0CAAE,MAAM,0CAAE,MAAM,CAAA,EAAA,CAAC;aACpD,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE;YAClB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YACrB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YAEpB,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAA;YAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;YAE9B,IAAI,MAAM,GAAG,GAAG,IAAI;aACf,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM;;CAE5D,CAAA;YACO,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAA;YAEvB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAEhB,IAAI,GAAG,CAAC,MAAM,EAAE;gBACd,IAAI,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAA;gBAC5B,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAA;gBACxB,IAAI,MAAM,GAAG,GAAG,CAAC,MAAM,CAAA;gBACvB,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAA;gBAC7C,MAAM,IAAI;iBACH,MAAM,GAAG,IAAI,GAAG,IAAI;kBACnB,MAAM;gBACR,IAAI;CACnB,CAAA;aACQ;YAED,OAAO,MAAM,CAAA;QACf,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEnB,YAAE,CAAC,aAAa,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;IACzC,CAAC;IAGD,gCAAgC;IAChC,WAAW,EAAE,CAAC,KAAU,EAAE,IAEzB,EAAE,EAAE;QACH,MAAM;aACH,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;aACvB,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,WAAC,OAAA,MAAA,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,0CAAE,MAAM,CAAA,EAAA,CAAC;aAC5C,OAAO,CAAC,CAAC,KAAU,EAAE,EAAE;YACtB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YACrB,uBAAuB;YACvB,IAAI,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,KAAK,CAAC,CAAA;YAE3D,IAAI,OAAO,GAAG;;;;;;;;;CASrB,CAAA;YAEO,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;gBACpC,YAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAA;aAC5C;QACH,CAAC,CAAC,CAAA;IACN,CAAC;CAEF,CAAA;AAGC,8BAAS"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../build.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voxgig/build",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "main": "dist/build.js",
5
5
  "type": "commonjs",
6
6
  "types": "dist/build.d.ts",
@@ -41,9 +41,9 @@
41
41
  "dependencies": {},
42
42
  "devDependencies": {
43
43
  "@types/jest": "^28.1.6",
44
- "@voxgig/model": "^0.6.1",
44
+ "@voxgig/model": "^0.7.0",
45
45
  "@voxgig/system": "^0.4.1",
46
- "esbuild": "^0.14.53",
46
+ "esbuild": "^0.15.2",
47
47
  "esbuild-jest": "^0.5.0",
48
48
  "jest": "^28.1.3",
49
49
  "tinyify": "^3.1.0",