@tremho/mist-lift 2.2.9 → 2.5.1

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 (173) hide show
  1. package/README.md +14 -1
  2. package/build/QSTest/functions/IntegrationTest/IntegrationTest.test.js +47 -0
  3. package/build/QSTest/functions/IntegrationTest/IntegrationTest.test.js.map +1 -0
  4. package/build/QSTest/functions/IntegrationTest/src/local.js +33 -0
  5. package/build/QSTest/functions/IntegrationTest/src/local.js.map +1 -0
  6. package/build/QSTest/functions/IntegrationTest/src/main.js +28 -0
  7. package/build/QSTest/functions/IntegrationTest/src/main.js.map +1 -0
  8. package/build/{commands → src/commands}/actions/initQuestions.js +18 -9
  9. package/build/src/commands/actions/initQuestions.js.map +1 -0
  10. package/build/src/commands/actions/makePackageJson.js.map +1 -0
  11. package/build/{commands → src/commands}/actions/setupPackageJson.js +20 -11
  12. package/build/src/commands/actions/setupPackageJson.js.map +1 -0
  13. package/build/src/commands/actions/updateDeployedPermissions.js +118 -0
  14. package/build/src/commands/actions/updateDeployedPermissions.js.map +1 -0
  15. package/build/{commands → src/commands}/build.js +18 -9
  16. package/build/src/commands/build.js.map +1 -0
  17. package/build/{commands → src/commands}/builtin/ApiDocMaker.js +21 -14
  18. package/build/src/commands/builtin/ApiDocMaker.js.map +1 -0
  19. package/build/{commands → src/commands}/builtin/BuiltInHandler.js +26 -14
  20. package/build/src/commands/builtin/BuiltInHandler.js.map +1 -0
  21. package/build/{commands → src/commands}/builtin/DeployBuiltInZip.js +1 -2
  22. package/build/src/commands/builtin/DeployBuiltInZip.js.map +1 -0
  23. package/build/src/commands/builtin/ExportWebroot.js +253 -0
  24. package/build/src/commands/builtin/ExportWebroot.js.map +1 -0
  25. package/build/{commands → src/commands}/builtin/StageWebrootZip.js +28 -15
  26. package/build/src/commands/builtin/StageWebrootZip.js.map +1 -0
  27. package/build/src/commands/builtin/webroot-export/s3webroot.js +128 -0
  28. package/build/src/commands/builtin/webroot-export/s3webroot.js.map +1 -0
  29. package/build/{commands → src/commands}/create.js +18 -9
  30. package/build/src/commands/create.js.map +1 -0
  31. package/build/{commands → src/commands}/deploy.js +25 -14
  32. package/build/src/commands/deploy.js.map +1 -0
  33. package/build/{commands → src/commands}/doctor.js +19 -10
  34. package/build/src/commands/doctor.js.map +1 -0
  35. package/build/{commands → src/commands}/help.js +34 -24
  36. package/build/src/commands/help.js.map +1 -0
  37. package/build/{commands → src/commands}/info.js +18 -9
  38. package/build/src/commands/info.js.map +1 -0
  39. package/build/{commands → src/commands}/init.js +67 -18
  40. package/build/src/commands/init.js.map +1 -0
  41. package/build/{commands → src/commands}/package.js +51 -10
  42. package/build/src/commands/package.js.map +1 -0
  43. package/build/{commands → src/commands}/publish.js +58 -22
  44. package/build/src/commands/publish.js.map +1 -0
  45. package/build/{commands → src/commands}/settings.js +18 -9
  46. package/build/src/commands/settings.js.map +1 -0
  47. package/build/{commands → src/commands}/start.js +20 -10
  48. package/build/src/commands/start.js.map +1 -0
  49. package/build/{commands → src/commands}/test.js +18 -9
  50. package/build/src/commands/test.js.map +1 -0
  51. package/build/{commands → src/commands}/update.js +19 -9
  52. package/build/src/commands/update.js.map +1 -0
  53. package/build/src/commands/user.js.map +1 -0
  54. package/build/{expressRoutes → src/expressRoutes}/all.js +19 -9
  55. package/build/src/expressRoutes/all.js.map +1 -0
  56. package/build/src/expressRoutes/api.js.map +1 -0
  57. package/build/{expressRoutes → src/expressRoutes}/functionBinder.js +181 -26
  58. package/build/src/expressRoutes/functionBinder.js.map +1 -0
  59. package/build/{integration-tests → src/integration-tests}/quickstart-scenario.test.js +1 -1
  60. package/build/src/integration-tests/quickstart-scenario.test.js.map +1 -0
  61. package/build/{lib → src/lib}/CaseUtils.js +5 -6
  62. package/build/src/lib/CaseUtils.js.map +1 -0
  63. package/build/{lib → src/lib}/DirectoryUtils.js +4 -4
  64. package/build/src/lib/DirectoryUtils.js.map +1 -0
  65. package/build/{lib → src/lib}/ESBuild.js +19 -10
  66. package/build/src/lib/ESBuild.js.map +1 -0
  67. package/build/src/lib/IdSrc.js +67 -0
  68. package/build/src/lib/IdSrc.js.map +1 -0
  69. package/build/{lib → src/lib}/LiftConfig.js +7 -7
  70. package/build/src/lib/LiftConfig.js.map +1 -0
  71. package/build/{lib → src/lib}/LiftVersion.js +21 -11
  72. package/build/src/lib/LiftVersion.js.map +1 -0
  73. package/build/{lib → src/lib}/Tests/fileCompare.test.js +17 -7
  74. package/build/src/lib/Tests/fileCompare.test.js.map +1 -0
  75. package/build/src/lib/TypeCheck.js +1206 -0
  76. package/build/src/lib/TypeCheck.js.map +1 -0
  77. package/build/{lib → src/lib}/askQuestion.js +18 -9
  78. package/build/src/lib/askQuestion.js.map +1 -0
  79. package/build/{lib → src/lib}/executeCommand.js +2 -3
  80. package/build/src/lib/executeCommand.js.map +1 -0
  81. package/build/{lib → src/lib}/fileCompare.js +2 -3
  82. package/build/src/lib/fileCompare.js.map +1 -0
  83. package/build/{lib → src/lib}/openAPI/ApiBuildCollector.js +1 -2
  84. package/build/src/lib/openAPI/ApiBuildCollector.js.map +1 -0
  85. package/build/{lib → src/lib}/openAPI/WebrootFileSupport.js +18 -9
  86. package/build/src/lib/openAPI/WebrootFileSupport.js.map +1 -0
  87. package/build/src/lib/openAPI/openApiConstruction.js +435 -0
  88. package/build/src/lib/openAPI/openApiConstruction.js.map +1 -0
  89. package/build/{lib → src/lib}/pathResolve.js +1 -2
  90. package/build/src/lib/pathResolve.js.map +1 -0
  91. package/build/{lib → src/lib}/utils.js +20 -11
  92. package/build/src/lib/utils.js.map +1 -0
  93. package/build/{lift.js → src/lift.js} +19 -9
  94. package/build/src/lift.js.map +1 -0
  95. package/package.json +6 -4
  96. package/src/commands/actions/updateDeployedPermissions.ts +80 -0
  97. package/src/commands/builtin/ApiDocMaker.ts +17 -10
  98. package/src/commands/builtin/BuiltInHandler.ts +7 -2
  99. package/src/commands/builtin/ExportWebroot.ts +195 -0
  100. package/src/commands/builtin/StageWebrootZip.ts +13 -5
  101. package/src/commands/builtin/prebuilt-zips/API.zip +0 -0
  102. package/src/commands/builtin/prebuilt-zips/FileServe.zip +0 -0
  103. package/src/commands/builtin/prebuilt-zips/Webroot.zip +0 -0
  104. package/src/commands/builtin/webroot-export/s3webroot.ts +82 -0
  105. package/src/commands/deploy.ts +6 -4
  106. package/src/commands/help.ts +4 -2
  107. package/src/commands/init.ts +51 -8
  108. package/src/commands/package.ts +35 -2
  109. package/src/commands/publish.ts +38 -13
  110. package/src/commands/start.ts +2 -1
  111. package/src/commands/update.ts +1 -0
  112. package/src/expressRoutes/all.ts +1 -0
  113. package/src/expressRoutes/functionBinder.ts +155 -15
  114. package/src/integration-tests/quickstart-scenario.test.ts +1 -1
  115. package/src/lib/DirectoryUtils.ts +2 -1
  116. package/src/lib/IdSrc.ts +17 -4
  117. package/src/lib/TypeCheck.ts +1171 -0
  118. package/src/lib/executeCommand.ts +1 -1
  119. package/src/lib/openAPI/openApiConstruction.ts +230 -41
  120. package/src/lift.ts +2 -2
  121. package/templateData/app/MainPage.tsx +10 -0
  122. package/templateData/app/app.tsx +39 -0
  123. package/templateData/function-main-ts +8 -1
  124. package/templateData/webroot/app.js +7 -7
  125. package/build/commands/actions/initQuestions.js.map +0 -1
  126. package/build/commands/actions/makePackageJson.js.map +0 -1
  127. package/build/commands/actions/setupPackageJson.js.map +0 -1
  128. package/build/commands/build.js.map +0 -1
  129. package/build/commands/builtin/ApiDocMaker.js.map +0 -1
  130. package/build/commands/builtin/BuiltInHandler.js.map +0 -1
  131. package/build/commands/builtin/DeployBuiltInZip.js.map +0 -1
  132. package/build/commands/builtin/StageWebrootZip.js.map +0 -1
  133. package/build/commands/builtin/prebuilt-zips/API.zip +0 -0
  134. package/build/commands/builtin/prebuilt-zips/FileServe.zip +0 -0
  135. package/build/commands/builtin/prebuilt-zips/Webroot.zip +0 -0
  136. package/build/commands/create.js.map +0 -1
  137. package/build/commands/deploy.js.map +0 -1
  138. package/build/commands/doctor.js.map +0 -1
  139. package/build/commands/help.js.map +0 -1
  140. package/build/commands/info.js.map +0 -1
  141. package/build/commands/init.js.map +0 -1
  142. package/build/commands/package.js.map +0 -1
  143. package/build/commands/publish.js.map +0 -1
  144. package/build/commands/settings.js.map +0 -1
  145. package/build/commands/start.js.map +0 -1
  146. package/build/commands/test.js.map +0 -1
  147. package/build/commands/update.js.map +0 -1
  148. package/build/commands/user.js.map +0 -1
  149. package/build/expressRoutes/all.js.map +0 -1
  150. package/build/expressRoutes/api.js.map +0 -1
  151. package/build/expressRoutes/functionBinder.js.map +0 -1
  152. package/build/integration-tests/quickstart-scenario.test.js.map +0 -1
  153. package/build/lib/CaseUtils.js.map +0 -1
  154. package/build/lib/DirectoryUtils.js.map +0 -1
  155. package/build/lib/ESBuild.js.map +0 -1
  156. package/build/lib/IdSrc.js +0 -43
  157. package/build/lib/IdSrc.js.map +0 -1
  158. package/build/lib/LiftConfig.js.map +0 -1
  159. package/build/lib/LiftVersion.js.map +0 -1
  160. package/build/lib/Tests/fileCompare.test.js.map +0 -1
  161. package/build/lib/askQuestion.js.map +0 -1
  162. package/build/lib/executeCommand.js.map +0 -1
  163. package/build/lib/fileCompare.js.map +0 -1
  164. package/build/lib/openAPI/ApiBuildCollector.js.map +0 -1
  165. package/build/lib/openAPI/WebrootFileSupport.js.map +0 -1
  166. package/build/lib/openAPI/openApiConstruction.js +0 -237
  167. package/build/lib/openAPI/openApiConstruction.js.map +0 -1
  168. package/build/lib/pathResolve.js.map +0 -1
  169. package/build/lib/utils.js.map +0 -1
  170. package/build/lift.js.map +0 -1
  171. /package/build/{commands → src/commands}/actions/makePackageJson.js +0 -0
  172. /package/build/{commands → src/commands}/user.js +0 -0
  173. /package/build/{expressRoutes → src/expressRoutes}/api.js +0 -0
@@ -15,18 +15,28 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
28
38
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.functionBinder = void 0;
39
+ exports.functionBinder = functionBinder;
30
40
  /* eslint @typescript-eslint/no-var-requires: "off" */
31
41
  const path_1 = __importDefault(require("path"));
32
42
  const ac = __importStar(require("ansi-colors"));
@@ -35,8 +45,10 @@ const express_1 = __importDefault(require("express"));
35
45
  const ApiBuildCollector_1 = require("../lib/openAPI/ApiBuildCollector");
36
46
  const openApiConstruction_1 = require("../lib/openAPI/openApiConstruction");
37
47
  const inverse_y_1 = require("@tremho/inverse-y");
48
+ const TypeCheck_1 = require("../lib/TypeCheck");
38
49
  const clearModule = require('clear-module');
39
50
  const router = express_1.default.Router();
51
+ router.use(express_1.default.raw({ type: '*/*', limit: '6mb' }));
40
52
  function functionBinder() {
41
53
  const defs = (0, ApiBuildCollector_1.gatherFunctionDefinitions)();
42
54
  (0, openApiConstruction_1.buildOpenApi)(defs).then(() => {
@@ -66,26 +78,44 @@ function functionBinder() {
66
78
  const n = entryRoot.indexOf('/{');
67
79
  if (n !== -1)
68
80
  entryRoot = entryRoot.substring(0, n) + '/*';
69
- const callHandler = (pathMap, req, res) => {
70
- const event = requestToEvent(pathMap, req);
81
+ const callHandler = (def, req, res) => {
82
+ // console.log('>>>>>>> YES WE ARE HERE<<<<<<<<<')
83
+ if (Buffer.isBuffer(req.body)) {
84
+ const buffer = req.body;
85
+ /* eslint-disable */
86
+ console.log('body is a buffer at callHandler. Length is ' + buffer.byteLength);
87
+ console.log('First 16 bytes:', buffer.subarray(0, 16).toString('hex'));
88
+ /* eslint-enable */
89
+ }
90
+ const message = testPathRoute(def, req);
91
+ if (message !== '') {
92
+ return handleResponse(res, { statusCode: 403, body: { error: message } });
93
+ }
94
+ const event = requestToEvent(def, req);
95
+ try {
96
+ performParameterTesting(def, event);
97
+ }
98
+ catch (e) {
99
+ return handleResponse(res, { statusCode: 400, body: { error: e.message } });
100
+ }
71
101
  Promise.resolve(start(event, null, null)).then(respOut => {
72
102
  handleResponse(res, respOut);
73
103
  }).catch((reason) => undefined);
74
104
  };
75
105
  if (method === 'get') {
76
- router.get(entryRoot, (req, res) => callHandler(pathMap, req, res));
106
+ router.get(entryRoot, (req, res) => callHandler(def, req, res));
77
107
  }
78
108
  else if (method === 'post') {
79
- router.post(entryRoot, (req, res) => callHandler(pathMap, req, res));
109
+ router.post(entryRoot, (req, res) => callHandler(def, req, res));
80
110
  }
81
111
  else if (method === 'put') {
82
- router.put(entryRoot, (req, res) => callHandler(pathMap, req, res));
112
+ router.put(entryRoot, (req, res) => callHandler(def, req, res));
83
113
  }
84
114
  else if (method === 'patch') {
85
- router.patch(entryRoot, (req, res) => callHandler(pathMap, req, res));
115
+ router.patch(entryRoot, (req, res) => callHandler(def, req, res));
86
116
  }
87
117
  else if (method === 'delete') {
88
- router.delete(entryRoot, (req, res) => callHandler(pathMap, req, res));
118
+ router.delete(entryRoot, (req, res) => callHandler(def, req, res));
89
119
  }
90
120
  else {
91
121
  console.log(ac.red.bold('Cannot map method ') + ac.blue.bold(method));
@@ -100,22 +130,144 @@ function functionBinder() {
100
130
  }
101
131
  }).catch((reason) => undefined);
102
132
  }
103
- exports.functionBinder = functionBinder;
104
- function requestToEvent(template, req) {
133
+ // compare request route to the definition of this function to see if it matches
134
+ function testPathRoute(def, req) {
135
+ let path = req.path;
136
+ let pathMap = def.pathMap;
137
+ if (path.endsWith('/') === true)
138
+ path = path.substring(0, path.length - 1);
139
+ if (pathMap.endsWith('/') === true)
140
+ pathMap = pathMap.substring(0, path.length - 1);
141
+ const defParts = pathMap.split('/');
142
+ const pathParts = path.split('/');
143
+ let message = '';
144
+ if (pathParts.length > defParts.length) {
145
+ message = 'Too many parameters passed on path';
146
+ }
147
+ if (pathParts.length < defParts.length) {
148
+ message = 'Too few parameters passed on path';
149
+ }
150
+ return message;
151
+ }
152
+ function performParameterTesting(def, event) {
153
+ var _a;
154
+ // for every parameter defined in def
155
+ // find the corresponding value in event.parameters (by name)
156
+ // find the constraints for that parameter in def
157
+ // test the value against the constraints
158
+ for (const pdef of ((_a = def.parameters) !== null && _a !== void 0 ? _a : [])) {
159
+ const constraints = Array.isArray(pdef.constraints) ? (0, TypeCheck_1.parseConstraints)(pdef.type, pdef.constraints.join('\n'), '\n') : undefined;
160
+ let value = event.parameters[pdef.name];
161
+ if (value === undefined) {
162
+ if (pdef.required !== true)
163
+ return; // okay to be undefined
164
+ }
165
+ if (pdef.type === 'number')
166
+ value = Number(value); // TODO: Type coercion for all types
167
+ constraints === null || constraints === void 0 ? void 0 : constraints.test(value);
168
+ }
169
+ }
170
+ // returns 'text', 'json', or undefined
171
+ function bodyTypeCollapse(type) {
172
+ const options = {
173
+ text: 'text',
174
+ json: 'json',
175
+ 'application/json': 'json'
176
+ };
177
+ if (type !== '') {
178
+ type = type.toLowerCase().trim();
179
+ if (type.substring(0, 5) === 'text/')
180
+ return 'text';
181
+ return options[type];
182
+ }
183
+ }
184
+ function requestToEvent(def, req) {
105
185
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
106
- // console.log('requestToEvent (express)...', req.body, typeof (req.body))
107
- // unpack weird choice of express when passed from curl.
108
- if (typeof (req.body) === 'object') {
109
- const bprops = Object.getOwnPropertyNames(req.body);
110
- if (bprops.length === 1) {
186
+ console.warn('requestToEvent (express)... body is type ', typeof (req.body));
187
+ const isBuffer = Buffer.isBuffer(req.body);
188
+ console.log('Body is a buffer ', isBuffer);
189
+ console.log('bodyType from def is ', def.bodyType);
190
+ // lets assume template says the type
191
+ const type = bodyTypeCollapse(def.bodyType);
192
+ console.log('collapsed bodyType is ', type);
193
+ if (type === 'text') {
194
+ console.log('>> we want plain text');
195
+ if (typeof req.body === 'object') {
196
+ console.log('>> requestToEvent modifying body (text)');
197
+ if (Buffer.isBuffer(req.body)) {
198
+ req.body = req.body.toString();
199
+ console.log('>> just turned it to a string ', req.body);
200
+ }
201
+ else {
202
+ req.body = JSON.stringify(req.body);
203
+ console.log('>> is is an object, make it a json string ', req.body);
204
+ }
205
+ }
206
+ }
207
+ else if (type === 'json') {
208
+ console.log('>> we want json');
209
+ if (typeof req.body === 'object') {
210
+ if (Buffer.isBuffer(req.body)) {
211
+ console.log('>> converting first from buffer to string');
212
+ req.body = req.body.toString();
213
+ }
214
+ }
215
+ if (typeof req.body === 'string') {
216
+ console.log('>> body is a string', req.body);
111
217
  try {
112
- req.body = JSON.parse(bprops[0]);
218
+ console.log('>> requestToEvent modifying body (json2)');
219
+ req.body = JSON.parse(req.body);
220
+ console.log(">> it's now an object ", req.body);
113
221
  }
114
222
  catch (e) {
115
- console.error('failed request body parse', bprops[0]);
223
+ console.error(ac.bold.red('Failed request body JSON parse '), req.body);
116
224
  }
117
225
  }
226
+ else {
227
+ console.log('We already have an object here as ', req.body);
228
+ }
229
+ }
230
+ else {
231
+ console.log('>> binary type path');
232
+ // binary expects a buffer
233
+ if (!Buffer.isBuffer(req.body)) { // if already a buffer, leave as is
234
+ if (typeof req.body === 'object') {
235
+ req.body = JSON.stringify(req.body); // make a string first before we bufferize the json
236
+ }
237
+ req.body = Buffer.from(req.body);
238
+ }
239
+ }
240
+ /* eslint-disable */
241
+ if (Buffer.isBuffer(req.body)) {
242
+ const buffer = req.body;
243
+ console.log('body is buffer eventToRequest, Length = ' + buffer.byteLength);
244
+ console.log('First 16 bytes:', buffer.subarray(0, 16).toString('hex'));
245
+ }
246
+ /* eslint-enable */
247
+ const template = def.pathMap;
248
+ // unpack weird choice of express when passed from curl.
249
+ /*
250
+ if (typeof (req.body) === 'object' && !Buffer.isBuffer(req.body)) {
251
+ console.log(">> in curl case", req.body)
252
+ let bprops:string[] = []
253
+ try {
254
+ bprops = Object.getOwnPropertyNames(req.body)
255
+ console.log(">> bprops ", bprops)
256
+ } catch(e:any) {}
257
+ if (bprops.length === 1) {
258
+ const bText = req.body[bprops[0]]
259
+ console.log(">> bText ",bText)
260
+ try {
261
+ req.body = JSON.parse(bText)
262
+ } catch (e: any) {
263
+ console.warn(ac.bold.yellow.italic('Failed request body JSON parse Yellow'), '(curl)')
264
+ req.body = bText
265
+ return requestToEvent(def, req)
266
+ }
267
+ }
118
268
  }
269
+ */
270
+ console.log('last look at body', req.body);
119
271
  let path = (_a = req.originalUrl) !== null && _a !== void 0 ? _a : '';
120
272
  const qi = path.indexOf('?');
121
273
  if (qi !== -1)
@@ -146,7 +298,10 @@ function requestToEvent(template, req) {
146
298
  const brknm = ((_k = tslots[i]) !== null && _k !== void 0 ? _k : '').trim();
147
299
  if (brknm.charAt(0) === '{') {
148
300
  const pn = brknm.substring(1, brknm.length - 1);
149
- parameters[pn] = ((_l = pslots[i]) !== null && _l !== void 0 ? _l : '').trim();
301
+ let pv = ((_l = pslots[i]) !== null && _l !== void 0 ? _l : '').trim();
302
+ if (pv === 'undefined' || pv === '~')
303
+ pv = undefined;
304
+ parameters[pn] = pv;
150
305
  }
151
306
  }
152
307
  for (const p of Object.getOwnPropertyNames(req.query)) {
@@ -156,7 +311,7 @@ function requestToEvent(template, req) {
156
311
  // console.warn(">>> functionBinder geting headers", {req, headers})
157
312
  // const apiKey = req.header('x-api-key')
158
313
  // console.warn(">>> apiKey returned using header function", {apiKey})
159
- console.log('making eventOut with req.body=', req.body);
314
+ // console.log('making eventOut with req.body=', req.body)
160
315
  const eventOut = {
161
316
  requestContext: req,
162
317
  request: {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functionBinder.js","sourceRoot":"","sources":["../../../src/expressRoutes/functionBinder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,wCA4EC;AA5FD,sDAAsD;AACtD,gDAAuB;AAEvB,gDAAiC;AACjC,oDAAiD;AAEjD,sDAA6B;AAC7B,wEAA4E;AAC5E,4EAAiE;AACjE,iDAAuC;AACvC,gDAAmD;AAEnD,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;AAC3C,MAAM,MAAM,GAAG,iBAAO,CAAC,MAAM,EAAE,CAAA;AAC/B,MAAM,CAAC,GAAG,CAAC,iBAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;AAEtD,SAAgB,cAAc;IAC5B,MAAM,IAAI,GAAG,IAAA,6CAAyB,GAAE,CAAA;IACxC,IAAA,kCAAY,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;;QAC3B,MAAM,YAAY,GAAG,IAAA,0BAAY,GAAE,CAAA;QAEnC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,GAAW,GAAG,CAAC,IAAI,CAAA;YAC7B,MAAM,OAAO,GAAW,GAAG,CAAC,OAAO,CAAA;YACnC,IAAI,MAAM,GAAW,GAAG,CAAC,MAAM,CAAA;YAC/B,IAAI,KAAK,GAAG,EAAE,CAAA;YACd,IAAI,CAAC;gBACH,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,MAAM,IAAI,GAAW,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAA;oBAC3C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC,CAAA;oBACpD,IAAI,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;wBACrC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,4BAA4B,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,4BAA4B;4BAChK,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAC,CAAA;wBAC9G,MAAM,GAAG,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;oBAC3C,CAAC;gBACH,CAAC;gBAED,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;gBACpC,KAAK,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;gBAC9E,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;gBACtC,WAAW,CAAC,KAAK,CAAC,CAAA;gBAClB,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;gBAEhC,IAAI,SAAS,GAAW,OAAO,CAAA;gBAC/B,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;gBACjC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAAE,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;gBAE1D,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAE,GAAQ,EAAQ,EAAE;oBACzD,kDAAkD;oBAClD,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC9B,MAAM,MAAM,GAAW,GAAG,CAAC,IAAI,CAAA;wBAC/B,oBAAoB;wBACpB,OAAO,CAAC,GAAG,CAAC,6CAA6C,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;wBAC9E,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;wBACtE,mBAAmB;oBACrB,CAAC;oBACD,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;oBACvC,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;wBACnB,OAAO,cAAc,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;oBAC3E,CAAC;oBACD,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;oBACtC,IAAI,CAAC;wBACH,uBAAuB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;oBACrC,CAAC;oBAAC,OAAO,CAAM,EAAE,CAAC;wBAChB,OAAO,cAAc,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;oBAC7E,CAAC;oBACD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;wBACvD,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;oBAC9B,CAAC,CAAC,CAAC,KAAK,CAAM,CAAC,MAAW,EAAE,EAAE,CAAC,SAAS,CAAC,CAAA;gBAC3C,CAAC,CAAA;gBAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBACrB,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;gBACjE,CAAC;qBAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;oBAC7B,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;gBAClE,CAAC;qBAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC5B,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;gBACjE,CAAC;qBAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;oBAC9B,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;gBACnE,CAAC;qBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC/B,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;gBACpE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA;gBACvE,CAAC;YACH,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,oDAAoD;gBACpD,sEAAsE;gBACtE,eAAG,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAA;gBACtD,eAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;YAClB,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC,KAAK,CAAM,CAAC,MAAW,EAAE,EAAE,CAAC,SAAS,CAAC,CAAA;AAC3C,CAAC;AAED,gFAAgF;AAChF,SAAS,aAAa,CAAE,GAAQ,EAAE,GAAQ;IACxC,IAAI,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;IACnB,IAAI,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;IACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI;QAAE,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAC1E,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI;QAAE,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACnF,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAEjC,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,IAAI,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QACvC,OAAO,GAAG,oCAAoC,CAAA;IAChD,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;QACvC,OAAO,GAAG,mCAAmC,CAAA;IAC/C,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,SAAS,uBAAuB,CAAE,GAAQ,EAAE,KAAU;;IACpD,qCAAqC;IACrC,6DAA6D;IAC7D,iDAAiD;IACjD,yCAAyC;IACzC,KAAK,MAAM,IAAI,IAAI,CAAC,MAAA,GAAG,CAAC,UAAU,mCAAI,EAAE,CAAC,EAAE,CAAC;QAC1C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAA,4BAAgB,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAChI,IAAI,KAAK,GAAQ,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;gBAAE,OAAM,CAAC,uBAAuB;QAC5D,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;YAAE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA,CAAC,oCAAoC;QACtF,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;AACH,CAAC;AAED,uCAAuC;AACvC,SAAS,gBAAgB,CAAE,IAAY;IACrC,MAAM,OAAO,GAAQ;QACnB,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,kBAAkB,EAAE,MAAM;KAC3B,CAAA;IACD,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAA;QAChC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO;YAAE,OAAO,MAAM,CAAA;QACnD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAA;IACtB,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAE,GAAQ,EAAE,GAAQ;;IACzC,OAAO,CAAC,IAAI,CAAC,2CAA2C,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5E,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAC1C,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;IAC1C,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAA;IAClD,qCAAqC;IACrC,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC3C,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAA;IAC3C,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;QACpC,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAA;YACtD,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;gBAC9B,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;YACzD,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBACnC,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;YACrE,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;QAC9B,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAA;gBACxD,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;YAChC,CAAC;QACH,CAAC;QACD,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;YAC5C,IAAI,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA;gBACvD,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBAC/B,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;YACjD,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,iCAAiC,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;YACzE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;QAC7D,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;QAClC,0BAA0B;QAC1B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,mCAAmC;YACnE,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACjC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,mDAAmD;YACzF,CAAC;YACD,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAClC,CAAC;IACH,CAAC;IACD,oBAAoB;IACpB,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAW,GAAG,CAAC,IAAI,CAAA;QAC/B,OAAO,CAAC,GAAG,CAAC,0CAA0C,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;QAC3E,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;IACxE,CAAC;IACD,mBAAmB;IACnB,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAA;IAE5B,wDAAwD;IACxD;;;;;;;;;;;;;;;;;;;;OAoBG;IAEH,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;IAE1C,IAAI,IAAI,GAAW,MAAA,GAAG,CAAC,WAAW,mCAAI,EAAE,CAAA;IACxC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC5B,IAAI,EAAE,KAAK,CAAC,CAAC;QAAE,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAC3C,MAAM,IAAI,GAAW,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5C,MAAM,EAAE,GAAW,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1C,IAAI,IAAI,GAAW,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACxC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACb,IAAI,GAAG,MAAA,MAAA,MAAA,MAAA,GAAG,CAAC,OAAO,0CAAE,IAAI,mCAAI,MAAA,GAAG,CAAC,OAAO,0CAAE,MAAM,mCAAI,MAAA,GAAG,CAAC,OAAO,0CAAE,OAAO,mCAAI,EAAE,CAAA;QAC7E,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC9B,IAAI,GAAG,SAAS,GAAG,IAAI,CAAA;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAAQ,EAAE,CAAA;IACvB,MAAM,YAAY,GAAG,MAAA,MAAA,GAAG,CAAC,OAAO,0CAAE,MAAM,mCAAI,EAAE,CAAA;IAC9C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACtC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,IAAI,GAAa,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACnC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACnD,CAAC;IACD,MAAM,UAAU,GAAQ,EAAE,CAAA;IAC1B,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAClC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,CAAC,MAAA,MAAM,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QACtC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC5B,MAAM,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;YAC/C,IAAI,EAAE,GAAuB,CAAC,MAAA,MAAM,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;YACrD,IAAI,EAAE,KAAK,WAAW,IAAI,EAAE,KAAK,GAAG;gBAAE,EAAE,GAAG,SAAS,CAAA;YACpD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,CAAA;QACrB,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC9B,CAAC;IACD,8BAA8B;IAC9B,oEAAoE;IACpE,yCAAyC;IACzC,sEAAsE;IACtE,0DAA0D;IAC1D,MAAM,QAAQ,GAAQ;QACpB,cAAc,EAAE,GAAG;QACnB,OAAO,EAAE;YACP,WAAW,EAAE,IAAI,GAAI,GAAG,CAAC,WAAsB;YAC/C,OAAO,EAAE,GAAG,CAAC,OAAO;SACrB;QACD,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO;QACP,UAAU;KACX,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AACD,SAAS,cAAc,CAAE,GAAQ,EAAE,IAAS;IAC1C,sDAAsD;;IAEtD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,+CAA+C;YAC/C,IAAI,OAAO,GAAQ,EAAE,CAAA;YACrB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;YACxB,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAW,MAAA,IAAI,CAAC,OAAO,CAAC,aAAa,mCAAI,EAAE,CAAA,CAAC,WAAW;gBAChE,OAAO,IAAI,CAAC,aAAa,CAAA;gBACzB,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACtD,MAAM,KAAK,GAAW,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;oBACxC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,KAAK,aAAa,GAAG,IAAI,CAAC,CAAA;gBACpD,CAAC,CAAC,CAAA;YACJ,CAAC;YACD,4CAA4C;YAC5C,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAA;YACpC,OAAO,IAAI,CAAC,OAAO,CAAA;QACrB,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,4DAA4D;YAC5D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3D,wDAAwD;gBACxD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;YACvC,CAAC;YACD,OAAO,IAAI,CAAC,OAAO,CAAA;YACnB,uCAAuC;QACzC,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;YAChC,OAAO,IAAI,CAAC,UAAU,CAAA;QACxB,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;YAC/C,OAAO,IAAI,CAAC,WAAW,CAAA;QACzB,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;YAAE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;IAC/C,CAAC;IACD,sDAAsD;IACtD,2CAA2C;IAC3C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAChB,CAAC;AAED,kBAAe,MAAM,CAAA"}
@@ -32,7 +32,7 @@ function test(t) {
32
32
  fs_1.default.rmSync('QSTest', { recursive: true });
33
33
  }
34
34
  // init
35
- yield (0, init_1.doInit)('QSTest', true);
35
+ yield (0, init_1.doInit)('QSTest', '', true);
36
36
  // verify project got made
37
37
  assert.isTrue(fs_1.default.existsSync('QSTest'), 'created test project');
38
38
  // verify we have a functions dir
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickstart-scenario.test.js","sourceRoot":"","sources":["../../../src/integration-tests/quickstart-scenario.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dashCase = exports.snakeCase = exports.pascalCase = exports.camelCase = exports.separated = void 0;
3
+ exports.separated = separated;
4
+ exports.camelCase = camelCase;
5
+ exports.pascalCase = pascalCase;
6
+ exports.snakeCase = snakeCase;
7
+ exports.dashCase = dashCase;
4
8
  // separate a case-joined string into a string of space-separated words
5
9
  function separated(instr) {
6
10
  let outstr = '';
@@ -13,7 +17,6 @@ function separated(instr) {
13
17
  }
14
18
  return outstr.trim();
15
19
  }
16
- exports.separated = separated;
17
20
  function isUpperCase(instr) {
18
21
  return (instr === null || instr === void 0 ? void 0 : instr.toUpperCase()) === instr;
19
22
  }
@@ -33,7 +36,6 @@ function camelCase(instr) {
33
36
  }
34
37
  return seps.join('');
35
38
  }
36
- exports.camelCase = camelCase;
37
39
  function pascalCase(instr) {
38
40
  const seps = separated(instr).split(' ');
39
41
  for (let i = 0; i < seps.length; i++) {
@@ -41,11 +43,9 @@ function pascalCase(instr) {
41
43
  }
42
44
  return seps.join('');
43
45
  }
44
- exports.pascalCase = pascalCase;
45
46
  function snakeCase(instr) {
46
47
  return dashCase(instr, '_');
47
48
  }
48
- exports.snakeCase = snakeCase;
49
49
  function dashCase(instr, dashChar = '-', allCaps = false) {
50
50
  const seps = separated(instr).split(' ');
51
51
  let out = seps.join(dashChar);
@@ -53,5 +53,4 @@ function dashCase(instr, dashChar = '-', allCaps = false) {
53
53
  out = out.toUpperCase();
54
54
  return out;
55
55
  }
56
- exports.dashCase = dashCase;
57
56
  //# sourceMappingURL=CaseUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CaseUtils.js","sourceRoot":"","sources":["../../../src/lib/CaseUtils.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.latestModification = exports.recurseDirectory = void 0;
6
+ exports.recurseDirectory = recurseDirectory;
7
+ exports.latestModification = latestModification;
7
8
  const fs_1 = __importDefault(require("fs"));
8
9
  const path_1 = __importDefault(require("path"));
9
10
  // Recurse a directory, calling back to a 'for-each' callback for all files in tree
10
11
  function recurseDirectory(dirpath, callback) {
11
- fs_1.default.readdirSync(dirpath).forEach((file) => {
12
+ const fl = fs_1.default.readdirSync(dirpath);
13
+ fl.forEach((file) => {
12
14
  const fpath = path_1.default.join(dirpath, file);
13
15
  // if(fpath.indexOf('node_modules') === -1) {
14
16
  const stat = fs_1.default.statSync(fpath);
@@ -20,7 +22,6 @@ function recurseDirectory(dirpath, callback) {
20
22
  // }
21
23
  });
22
24
  }
23
- exports.recurseDirectory = recurseDirectory;
24
25
  // find the latest mod time for matching files in this folder tree
25
26
  function latestModification(dirpath, match) {
26
27
  let latestTime = new Date(0);
@@ -36,5 +37,4 @@ function latestModification(dirpath, match) {
36
37
  }
37
38
  return latestTime;
38
39
  }
39
- exports.latestModification = latestModification;
40
40
  //# sourceMappingURL=DirectoryUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DirectoryUtils.js","sourceRoot":"","sources":["../../../src/lib/DirectoryUtils.ts"],"names":[],"mappings":";;;;;AAQA,4CAaC;AAGD,gDAYC;AAnCD,4CAA8B;AAC9B,gDAAuB;AAKvB,mFAAmF;AACnF,SAAgB,gBAAgB,CAAE,OAAe,EAAE,QAAoB;IACrE,MAAM,EAAE,GAAG,YAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IAClC,EAAE,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE;QAC1B,MAAM,KAAK,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACtC,6CAA6C;QAC7C,MAAM,IAAI,GAAG,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;YACjD,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;YACnC,CAAC;QACH,CAAC;QACD,IAAI;IACN,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,kEAAkE;AAClE,SAAgB,kBAAkB,CAAE,OAAe,EAAE,KAAa;IAChE,IAAI,UAAU,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,YAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,gBAAgB,CAAC,OAAO,EAAE,CAAC,QAAgB,EAAE,KAAY,EAAE,EAAE;YAC3D,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;YAClE,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;gBAClC,IAAI,KAAK,CAAC,KAAK,GAAG,UAAU;oBAAE,UAAU,GAAG,KAAK,CAAC,KAAK,CAAA;YACxD,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC"}
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
36
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
37
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -35,7 +45,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
35
45
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
46
  };
37
47
  Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.readServerConfig = exports.esbuilder = void 0;
48
+ exports.esbuilder = esbuilder;
49
+ exports.readServerConfig = readServerConfig;
39
50
  const esbuild = __importStar(require("esbuild"));
40
51
  const pathResolve_1 = require("./pathResolve");
41
52
  const path_1 = __importDefault(require("path"));
@@ -77,7 +88,6 @@ function esbuilder() {
77
88
  // console.log("done building")
78
89
  });
79
90
  }
80
- exports.esbuilder = esbuilder;
81
91
  function readServerConfig() {
82
92
  // console.log('readServerConfig...')
83
93
  const projectPaths = (0, pathResolve_1.resolvePaths)();
@@ -88,7 +98,6 @@ function readServerConfig() {
88
98
  // console.log("server configuration", conf)
89
99
  return conf;
90
100
  }
91
- exports.readServerConfig = readServerConfig;
92
101
  function sleep(ms) {
93
102
  return __awaiter(this, void 0, void 0, function* () {
94
103
  return yield new Promise(resolve => {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ESBuild.js","sourceRoot":"","sources":["../../../src/lib/ESBuild.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,8BAmCC;AAED,4CASC;AArDD,iDAAkC;AAClC,+CAA4C;AAC5C,gDAAuB;AACvB,4CAAmB;AAEnB,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAA;AAEvC,SAAsB,SAAS;yDAAE,iBAAsB,IAAI,EAAE,UAAmB,IAAI;;QAClF,wCAAwC;QACxC,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;YAC/E,MAAM,OAAO,GAAkB,cAAc,EAAE,CAAA;YAC/C,OAAO,MAAM,OAAO,CAAA,CAAC,oBAAoB;QAC3C,CAAC;QAED,MAAM,WAAW,GAAG,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,WAAW,mCAAI,EAAE,CAAA;QAC3D,MAAM,MAAM,GAAG,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,MAAM,mCAAI,SAAS,CAAA;QACxD,MAAM,KAAK,GAAG,MAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,KAAK,mCAAI,KAAK,CAAA;QAClD,kEAAkE;QAClE,gEAAgE;QAEhE,kEAAkE;QAElE,MAAM,OAAO,GAAQ,MAAA,YAAY,CAAC,OAAO,mCAAI,EAAE,CAAA,CAAC,6CAA6C;QAC7F,6DAA6D;QAC7D,OAAO,OAAO,CAAC,KAAK,CAAA,CAAC,oBAAoB;QACzC,OAAO,CAAC,WAAW,GAAG,WAAW,CAAA;QACjC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAA;QACvD,OAAO,CAAC,MAAM,GAAG,MAAM,CAAA;QAEvB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC1C,mCAAmC;QAEnC,kBAAkB,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;QACtC,IAAI,IAAI,GAAY,KAAK,KAAK,IAAI,CAAA;QAClC,GAAG,CAAC;YACF,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;YAChB,+BAA+B;YAC/B,cAAc,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,CAAA;YAClC,IAAI,GAAG,KAAK,KAAK,IAAI,CAAA;YACrB,IAAI,OAAO;gBAAE,MAAK;QACpB,CAAC,QAAQ,IAAI,EAAC;QACd,+BAA+B;IACjC,CAAC;CAAA;AAED,SAAgB,gBAAgB;IAC9B,qCAAqC;IACrC,MAAM,YAAY,GAAG,IAAA,0BAAY,GAAE,CAAA;IACnC,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAA;IAC3E,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,CAAA;IAEvC,MAAM,IAAI,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;IAClE,4CAA4C;IAC5C,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAe,KAAK,CAAE,EAAU;;QAC9B,OAAO,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YACjC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;QACzB,CAAC,CAAC,CAAA;IACJ,CAAC;CAAA"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.getIdDelimiter = getIdDelimiter;
16
+ exports.getIdSrc = getIdSrc;
17
+ exports.decoratedName = decoratedName;
18
+ exports.getAccountId = getAccountId;
19
+ const LiftVersion_1 = require("../lib/LiftVersion");
20
+ const sha1_1 = __importDefault(require("sha1"));
21
+ const client_sts_1 = require("@aws-sdk/client-sts");
22
+ function getIdDelimiter() {
23
+ return '_-_';
24
+ }
25
+ function getIdSrc() {
26
+ var _a, _b, _c;
27
+ let idsrc = '' + ((_a = (0, LiftVersion_1.getProjectName)()) !== null && _a !== void 0 ? _a : '') + '__v' + ((_c = (_b = (0, LiftVersion_1.getProjectVersion)()) === null || _b === void 0 ? void 0 : _b.toString()) !== null && _c !== void 0 ? _c : '');
28
+ while (idsrc.includes(' '))
29
+ idsrc = idsrc.replace(' ', '_');
30
+ while (idsrc.includes('.'))
31
+ idsrc = idsrc.replace('.', '-');
32
+ const projectHash = (0, sha1_1.default)(idsrc).toString().substring(0, 8);
33
+ // console.log("project hash", {idsrc, projectHash})
34
+ idsrc = (0, LiftVersion_1.getProjectName)() + '_' + projectHash;
35
+ // console.log("idsrc is "+idsrc)
36
+ return idsrc;
37
+ }
38
+ function decoratedName(name) {
39
+ if (name.includes(getIdDelimiter()) && name.includes(getIdSrc())) {
40
+ // console.warn('name '+name+' appears to be decorated already')
41
+ return name;
42
+ }
43
+ while (name.includes('/'))
44
+ name = name.replace('/', '');
45
+ const hash8 = (0, sha1_1.default)(name.toLowerCase()).toString().substring(0, 8);
46
+ const fullName = name + getIdDelimiter() + '_' + getIdSrc();
47
+ // console.log("fullname is "+fullName)
48
+ let dname;
49
+ if (name.startsWith('fileserve_')) {
50
+ dname = ('fileServe_' + hash8 + getIdDelimiter() + '_' + getIdSrc()).substring(0, 64);
51
+ }
52
+ else {
53
+ dname = fullName; // .substring(0, 50) + '_' + hash8
54
+ }
55
+ // console.warn('decorated to '+dname+' from '+name)
56
+ return dname;
57
+ }
58
+ function getAccountId() {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ var _a;
61
+ const client = new client_sts_1.STSClient({});
62
+ const command = new client_sts_1.GetCallerIdentityCommand({});
63
+ const response = yield client.send(command);
64
+ return (_a = response.Account) !== null && _a !== void 0 ? _a : ''; // This is your AWS account ID
65
+ });
66
+ }
67
+ //# sourceMappingURL=IdSrc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IdSrc.js","sourceRoot":"","sources":["../../../src/lib/IdSrc.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,wCAEC;AACD,4BAUC;AACD,sCAoBC;AAED,oCAKC;AA7CD,oDAAsE;AACtE,gDAAuB;AACvB,oDAAyE;AAEzE,SAAgB,cAAc;IAC5B,OAAO,KAAK,CAAA;AACd,CAAC;AACD,SAAgB,QAAQ;;IACtB,IAAI,KAAK,GAAG,EAAE,GAAG,CAAC,MAAA,IAAA,4BAAc,GAAE,mCAAI,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,MAAA,MAAA,IAAA,+BAAiB,GAAE,0CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAC,CAAA;IAC3F,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAC3D,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAE3D,MAAM,WAAW,GAAG,IAAA,cAAI,EAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1D,oDAAoD;IACpD,KAAK,GAAG,IAAA,4BAAc,GAAE,GAAG,GAAG,GAAG,WAAW,CAAA;IAC5C,iCAAiC;IACjC,OAAO,KAAK,CAAA;AACd,CAAC;AACD,SAAgB,aAAa,CAAE,IAAY;IACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;QACjE,gEAAgE;QAChE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IAEvD,MAAM,KAAK,GAAG,IAAA,cAAI,EAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAEjE,MAAM,QAAQ,GAAG,IAAI,GAAG,cAAc,EAAE,GAAG,GAAG,GAAG,QAAQ,EAAE,CAAA;IAC3D,uCAAuC;IACvC,IAAI,KAAK,CAAA;IACT,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAClC,KAAK,GAAG,CAAC,YAAY,GAAG,KAAK,GAAG,cAAc,EAAE,GAAG,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACvF,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,QAAQ,CAAA,CAAC,kCAAkC;IACrD,CAAC;IACD,oDAAoD;IACpD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAsB,YAAY;;;QAChC,MAAM,MAAM,GAAG,IAAI,sBAAS,CAAC,EAAS,CAAC,CAAA;QACvC,MAAM,OAAO,GAAQ,IAAI,qCAAwB,CAAC,EAAE,CAAC,CAAA;QACrD,MAAM,QAAQ,GAAQ,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAChD,OAAO,MAAA,QAAQ,CAAC,OAAO,mCAAI,EAAE,CAAA,CAAC,8BAA8B;IAC9D,CAAC;CAAA"}
@@ -5,7 +5,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  return (mod && mod.__esModule) ? mod : { "default": mod };
6
6
  };
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.getAWSCredentials = exports.getSettings = exports.areSettingsAvailable = exports.resetLiftConfig = exports.LoadLiftConfig = exports.getUserHome = exports.LiftConfig = void 0;
8
+ exports.LiftConfig = void 0;
9
+ exports.getUserHome = getUserHome;
10
+ exports.LoadLiftConfig = LoadLiftConfig;
11
+ exports.resetLiftConfig = resetLiftConfig;
12
+ exports.areSettingsAvailable = areSettingsAvailable;
13
+ exports.getSettings = getSettings;
14
+ exports.getAWSCredentials = getAWSCredentials;
9
15
  const path_1 = __importDefault(require("path"));
10
16
  const fs_1 = __importDefault(require("fs"));
11
17
  const credential_providers_1 = require("@aws-sdk/credential-providers");
@@ -23,7 +29,6 @@ function getUserHome() {
23
29
  var _a, _b, _c;
24
30
  return (_c = (_b = (_a = process.env.HOME) !== null && _a !== void 0 ? _a : process.env.HOMEPATH) !== null && _b !== void 0 ? _b : process.env.USERPROFILE) !== null && _c !== void 0 ? _c : '~';
25
31
  }
26
- exports.getUserHome = getUserHome;
27
32
  function LoadLiftConfig() {
28
33
  if (sLiftConfigLoaded == null) {
29
34
  const mistlift = path_1.default.join(getUserHome(), '.mistlift');
@@ -40,22 +45,18 @@ function LoadLiftConfig() {
40
45
  }
41
46
  return sLiftConfigLoaded;
42
47
  }
43
- exports.LoadLiftConfig = LoadLiftConfig;
44
48
  function resetLiftConfig() {
45
49
  sLiftConfigLoaded = null;
46
50
  }
47
- exports.resetLiftConfig = resetLiftConfig;
48
51
  function areSettingsAvailable() {
49
52
  const mistlift = path_1.default.join(getUserHome(), '.mistlift');
50
53
  return fs_1.default.existsSync(mistlift);
51
54
  }
52
- exports.areSettingsAvailable = areSettingsAvailable;
53
55
  function getSettings() {
54
56
  if (sLiftConfigLoaded == null)
55
57
  LoadLiftConfig();
56
58
  return sLiftConfigLoaded;
57
59
  }
58
- exports.getSettings = getSettings;
59
60
  /**
60
61
  * Return the credentials required for AWS based upon our config options.
61
62
  *
@@ -77,5 +78,4 @@ function getAWSCredentials() {
77
78
  credentials = (0, credential_providers_1.fromIni)({ profile });
78
79
  return credentials;
79
80
  }
80
- exports.getAWSCredentials = getAWSCredentials;
81
81
  //# sourceMappingURL=LiftConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LiftConfig.js","sourceRoot":"","sources":["../../../src/lib/LiftConfig.ts"],"names":[],"mappings":";AAAA,uDAAuD;AACvD,2DAA2D;;;;;;AAoB3D,kCAEC;AAED,wCAcC;AACD,0CAEC;AAED,oDAGC;AAED,kCAGC;AAQD,8CAaC;AAtED,gDAAuB;AACvB,4CAAmB;AACnB,wEAAuD;AAEvD,IAAI,iBAAiB,GAAsB,IAAI,CAAA;AAE/C,kDAAkD;AAClD,0DAA0D;AAC1D,MAAa,UAAU;IAAvB;QACS,cAAS,GAAW,KAAK,CAAA,CAAC,qBAAqB;IAKxD,CAAC;CAAA;AAND,gCAMC;AAGD,8CAA8C;AAC9C,SAAgB,WAAW;;IACzB,OAAO,MAAA,MAAA,MAAA,OAAO,CAAC,GAAG,CAAC,IAAI,mCAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,mCAAI,OAAO,CAAC,GAAG,CAAC,WAAW,mCAAI,GAAG,CAAA;AACnF,CAAC;AAED,SAAgB,cAAc;IAC5B,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,CAAA;QACtD,IAAI,UAAU,GAAG,IAAI,CAAA;QACrB,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,UAAU,GAAG,YAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAA;gBACjD,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;YAC5C,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,EAAE;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,iBAAiB,CAAA;AAC1B,CAAC;AACD,SAAgB,eAAe;IAC7B,iBAAiB,GAAG,IAAI,CAAA;AAC1B,CAAC;AAED,SAAgB,oBAAoB;IAClC,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,WAAW,CAAC,CAAA;IACtD,OAAO,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;AAChC,CAAC;AAED,SAAgB,WAAW;IACzB,IAAI,iBAAiB,IAAI,IAAI;QAAE,cAAc,EAAE,CAAA;IAC/C,OAAO,iBAA+B,CAAA;AACxC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB;;IAC/B,IAAI,MAAM,GAAG,cAAc,EAAE,CAAA;IAC7B,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;QACnB,iFAAiF;QACjF,MAAM,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,CAAA;IACzD,CAAC;IACD,IAAI,CAAA,MAAA,MAAM,CAAC,SAAS,0CAAE,WAAW,EAAE,MAAK,KAAK,EAAE,CAAC;QAC9C,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAA;IACvC,CAAC;IACD,IAAI,WAAW,GAAG,EAAE,CAAA;IACpB,MAAM,OAAO,GAAG,MAAA,MAAM,CAAC,aAAa,mCAAI,SAAS,CAAA;IACjD,WAAW,GAAG,IAAA,8BAAO,EAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAClC,OAAO,WAAW,CAAA;AACpB,CAAC"}