@bitblit/ratchet-epsilon-common 4.0.116-alpha → 4.0.119-alpha

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 (323) hide show
  1. package/lib/background/background-handler.d.ts +1 -1
  2. package/lib/background/background-http-adapter-handler.d.ts +1 -1
  3. package/lib/background/background-validator.d.ts +1 -1
  4. package/lib/build/ratchet-epsilon-common-info.d.ts +1 -1
  5. package/lib/built-in/http/built-in-auth-filters.d.ts +1 -1
  6. package/lib/cli/ratchet-cli-handler.d.ts +2 -2
  7. package/lib/config/epsilon-logger-config.d.ts +2 -2
  8. package/lib/config/http/filter-chain-context.d.ts +1 -1
  9. package/lib/config/http/http-config.d.ts +1 -1
  10. package/lib/epsilon-global-handler.d.ts +1 -1
  11. package/lib/epsilon-instance.d.ts +1 -1
  12. package/lib/epsilon-logging-extension-processor.d.ts +2 -2
  13. package/lib/http/auth/auth0-web-token-manipulator.d.ts +1 -1
  14. package/lib/http/auth/google-web-token-manipulator.d.ts +1 -1
  15. package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.d.ts +2 -2
  16. package/lib/http/auth/local-web-token-manipulator.d.ts +3 -3
  17. package/lib/http/auth/web-token-manipulator.d.ts +1 -1
  18. package/lib/http/event-util.d.ts +1 -1
  19. package/lib/http/response-util.d.ts +1 -1
  20. package/lib/http/route/epsilon-router.d.ts +1 -1
  21. package/lib/http/route/router-util.d.ts +2 -2
  22. package/lib/index.d.ts +132 -1
  23. package/lib/index.mjs +344 -0
  24. package/lib/index.mjs.map +1 -0
  25. package/lib/local-container-server.d.ts +1 -1
  26. package/lib/local-server.d.ts +1 -1
  27. package/lib/sample/test-error-server.d.ts +1 -1
  28. package/lib/util/epsilon-config-parser.d.ts +1 -1
  29. package/package.json +18 -19
  30. package/lib/background/background-dynamo-log-table-handler.js +0 -38
  31. package/lib/background/background-dynamo-log-table-handler.js.map +0 -1
  32. package/lib/background/background-entry.js +0 -2
  33. package/lib/background/background-entry.js.map +0 -1
  34. package/lib/background/background-execution-event-type.js +0 -9
  35. package/lib/background/background-execution-event-type.js.map +0 -1
  36. package/lib/background/background-execution-event.js +0 -2
  37. package/lib/background/background-execution-event.js.map +0 -1
  38. package/lib/background/background-execution-listener.js +0 -2
  39. package/lib/background/background-execution-listener.js.map +0 -1
  40. package/lib/background/background-handler.js +0 -274
  41. package/lib/background/background-handler.js.map +0 -1
  42. package/lib/background/background-http-adapter-handler.js +0 -129
  43. package/lib/background/background-http-adapter-handler.js.map +0 -1
  44. package/lib/background/background-meta-response-internal.js +0 -2
  45. package/lib/background/background-meta-response-internal.js.map +0 -1
  46. package/lib/background/background-process-handling.js +0 -6
  47. package/lib/background/background-process-handling.js.map +0 -1
  48. package/lib/background/background-process-log-table-entry.js +0 -2
  49. package/lib/background/background-process-log-table-entry.js.map +0 -1
  50. package/lib/background/background-queue-response-internal.js +0 -2
  51. package/lib/background/background-queue-response-internal.js.map +0 -1
  52. package/lib/background/background-validator.js +0 -87
  53. package/lib/background/background-validator.js.map +0 -1
  54. package/lib/background/epsilon-background-process-error.js +0 -95
  55. package/lib/background/epsilon-background-process-error.js.map +0 -1
  56. package/lib/background/internal-background-entry.js +0 -2
  57. package/lib/background/internal-background-entry.js.map +0 -1
  58. package/lib/background/manager/abstract-background-manager.js +0 -90
  59. package/lib/background/manager/abstract-background-manager.js.map +0 -1
  60. package/lib/background/manager/aws-sqs-sns-background-manager.js +0 -154
  61. package/lib/background/manager/aws-sqs-sns-background-manager.js.map +0 -1
  62. package/lib/background/manager/background-manager-like.js +0 -2
  63. package/lib/background/manager/background-manager-like.js.map +0 -1
  64. package/lib/background/manager/background-manager.spec.js +0 -74
  65. package/lib/background/manager/background-manager.spec.js.map +0 -1
  66. package/lib/background/manager/single-thread-local-background-manager.js +0 -46
  67. package/lib/background/manager/single-thread-local-background-manager.js.map +0 -1
  68. package/lib/background/s3-background-transaction-logger.js +0 -53
  69. package/lib/background/s3-background-transaction-logger.js.map +0 -1
  70. package/lib/build/ratchet-epsilon-common-info.js +0 -15
  71. package/lib/build/ratchet-epsilon-common-info.js.map +0 -1
  72. package/lib/built-in/background/echo-processor.js +0 -17
  73. package/lib/built-in/background/echo-processor.js.map +0 -1
  74. package/lib/built-in/background/log-and-enqueue-echo-processor.js +0 -13
  75. package/lib/built-in/background/log-and-enqueue-echo-processor.js.map +0 -1
  76. package/lib/built-in/background/log-message-background-error-processor.js +0 -7
  77. package/lib/built-in/background/log-message-background-error-processor.js.map +0 -1
  78. package/lib/built-in/background/no-op-processor.js +0 -10
  79. package/lib/built-in/background/no-op-processor.js.map +0 -1
  80. package/lib/built-in/background/retry-processor.js +0 -42
  81. package/lib/built-in/background/retry-processor.js.map +0 -1
  82. package/lib/built-in/background/sample-delay-processor.js +0 -14
  83. package/lib/built-in/background/sample-delay-processor.js.map +0 -1
  84. package/lib/built-in/background/sample-input-validated-processor-data.js +0 -2
  85. package/lib/built-in/background/sample-input-validated-processor-data.js.map +0 -1
  86. package/lib/built-in/background/sample-input-validated-processor.js +0 -13
  87. package/lib/built-in/background/sample-input-validated-processor.js.map +0 -1
  88. package/lib/built-in/built-in-trace-id-generators.js +0 -22
  89. package/lib/built-in/built-in-trace-id-generators.js.map +0 -1
  90. package/lib/built-in/daemon/daemon-authorizer-function.js +0 -2
  91. package/lib/built-in/daemon/daemon-authorizer-function.js.map +0 -1
  92. package/lib/built-in/daemon/daemon-config.js +0 -2
  93. package/lib/built-in/daemon/daemon-config.js.map +0 -1
  94. package/lib/built-in/daemon/daemon-group-selection-function.js +0 -2
  95. package/lib/built-in/daemon/daemon-group-selection-function.js.map +0 -1
  96. package/lib/built-in/daemon/daemon-handler.js +0 -61
  97. package/lib/built-in/daemon/daemon-handler.js.map +0 -1
  98. package/lib/built-in/daemon/daemon-process-state-list.js +0 -2
  99. package/lib/built-in/daemon/daemon-process-state-list.js.map +0 -1
  100. package/lib/built-in/http/apollo-filter.js +0 -60
  101. package/lib/built-in/http/apollo-filter.js.map +0 -1
  102. package/lib/built-in/http/built-in-auth-filters.js +0 -108
  103. package/lib/built-in/http/built-in-auth-filters.js.map +0 -1
  104. package/lib/built-in/http/built-in-authorizers.js +0 -40
  105. package/lib/built-in/http/built-in-authorizers.js.map +0 -1
  106. package/lib/built-in/http/built-in-filters.js +0 -210
  107. package/lib/built-in/http/built-in-filters.js.map +0 -1
  108. package/lib/built-in/http/built-in-handlers.js +0 -70
  109. package/lib/built-in/http/built-in-handlers.js.map +0 -1
  110. package/lib/built-in/http/log-level-manipulation-filter.js +0 -18
  111. package/lib/built-in/http/log-level-manipulation-filter.js.map +0 -1
  112. package/lib/built-in/http/run-handler-as-filter.js +0 -61
  113. package/lib/built-in/http/run-handler-as-filter.js.map +0 -1
  114. package/lib/built-in/http/run-handler-as-filter.spec.js +0 -41
  115. package/lib/built-in/http/run-handler-as-filter.spec.js.map +0 -1
  116. package/lib/cli/ratchet-cli-handler.js +0 -21
  117. package/lib/cli/ratchet-cli-handler.js.map +0 -1
  118. package/lib/cli/run-background-process-from-command-line.js +0 -23
  119. package/lib/cli/run-background-process-from-command-line.js.map +0 -1
  120. package/lib/config/background/background-aws-config.js +0 -2
  121. package/lib/config/background/background-aws-config.js.map +0 -1
  122. package/lib/config/background/background-config.js +0 -2
  123. package/lib/config/background/background-config.js.map +0 -1
  124. package/lib/config/background/background-error-processor.js +0 -2
  125. package/lib/config/background/background-error-processor.js.map +0 -1
  126. package/lib/config/background/background-processor.js +0 -2
  127. package/lib/config/background/background-processor.js.map +0 -1
  128. package/lib/config/background/background-transaction-log.js +0 -2
  129. package/lib/config/background/background-transaction-log.js.map +0 -1
  130. package/lib/config/background/background-transaction-logger.js +0 -2
  131. package/lib/config/background/background-transaction-logger.js.map +0 -1
  132. package/lib/config/cron/abstract-cron-entry.js +0 -2
  133. package/lib/config/cron/abstract-cron-entry.js.map +0 -1
  134. package/lib/config/cron/cron-background-entry.js +0 -2
  135. package/lib/config/cron/cron-background-entry.js.map +0 -1
  136. package/lib/config/cron/cron-config.js +0 -2
  137. package/lib/config/cron/cron-config.js.map +0 -1
  138. package/lib/config/dynamo-db-config.js +0 -2
  139. package/lib/config/dynamo-db-config.js.map +0 -1
  140. package/lib/config/epsilon-config.js +0 -2
  141. package/lib/config/epsilon-config.js.map +0 -1
  142. package/lib/config/epsilon-lambda-event-handler.js +0 -2
  143. package/lib/config/epsilon-lambda-event-handler.js.map +0 -1
  144. package/lib/config/epsilon-logger-config.js +0 -2
  145. package/lib/config/epsilon-logger-config.js.map +0 -1
  146. package/lib/config/generic-aws-event-handler-function.js +0 -2
  147. package/lib/config/generic-aws-event-handler-function.js.map +0 -1
  148. package/lib/config/http/authorizer-function.js +0 -2
  149. package/lib/config/http/authorizer-function.js.map +0 -1
  150. package/lib/config/http/epsilon-authorization-context.js +0 -2
  151. package/lib/config/http/epsilon-authorization-context.js.map +0 -1
  152. package/lib/config/http/extended-api-gateway-event.js +0 -2
  153. package/lib/config/http/extended-api-gateway-event.js.map +0 -1
  154. package/lib/config/http/filter-chain-context.js +0 -2
  155. package/lib/config/http/filter-chain-context.js.map +0 -1
  156. package/lib/config/http/filter-function.js +0 -2
  157. package/lib/config/http/filter-function.js.map +0 -1
  158. package/lib/config/http/handler-function.js +0 -2
  159. package/lib/config/http/handler-function.js.map +0 -1
  160. package/lib/config/http/http-config.js +0 -2
  161. package/lib/config/http/http-config.js.map +0 -1
  162. package/lib/config/http/http-processing-config.js +0 -2
  163. package/lib/config/http/http-processing-config.js.map +0 -1
  164. package/lib/config/http/mapped-http-processing-config.js +0 -2
  165. package/lib/config/http/mapped-http-processing-config.js.map +0 -1
  166. package/lib/config/http/null-returned-object-handling.js +0 -7
  167. package/lib/config/http/null-returned-object-handling.js.map +0 -1
  168. package/lib/config/inter-api/inter-api-aws-config.js +0 -2
  169. package/lib/config/inter-api/inter-api-aws-config.js.map +0 -1
  170. package/lib/config/inter-api/inter-api-config.js +0 -2
  171. package/lib/config/inter-api/inter-api-config.js.map +0 -1
  172. package/lib/config/inter-api/inter-api-process-mapping.js +0 -2
  173. package/lib/config/inter-api/inter-api-process-mapping.js.map +0 -1
  174. package/lib/config/logging-trace-id-generator.js +0 -2
  175. package/lib/config/logging-trace-id-generator.js.map +0 -1
  176. package/lib/config/open-api/open-api-document-components.js +0 -2
  177. package/lib/config/open-api/open-api-document-components.js.map +0 -1
  178. package/lib/config/open-api/open-api-document-path.js +0 -2
  179. package/lib/config/open-api/open-api-document-path.js.map +0 -1
  180. package/lib/config/open-api/open-api-document.js +0 -2
  181. package/lib/config/open-api/open-api-document.js.map +0 -1
  182. package/lib/config/s3-config.js +0 -2
  183. package/lib/config/s3-config.js.map +0 -1
  184. package/lib/config/sns-config.js +0 -2
  185. package/lib/config/sns-config.js.map +0 -1
  186. package/lib/epsilon-build-properties.js +0 -25
  187. package/lib/epsilon-build-properties.js.map +0 -1
  188. package/lib/epsilon-constants.js +0 -48
  189. package/lib/epsilon-constants.js.map +0 -1
  190. package/lib/epsilon-global-handler.js +0 -156
  191. package/lib/epsilon-global-handler.js.map +0 -1
  192. package/lib/epsilon-instance.js +0 -2
  193. package/lib/epsilon-instance.js.map +0 -1
  194. package/lib/epsilon-logging-extension-processor.js +0 -16
  195. package/lib/epsilon-logging-extension-processor.js.map +0 -1
  196. package/lib/http/auth/api-gateway-adapter-authentication-handler.js +0 -73
  197. package/lib/http/auth/api-gateway-adapter-authentication-handler.js.map +0 -1
  198. package/lib/http/auth/auth0-web-token-manipulator.js +0 -62
  199. package/lib/http/auth/auth0-web-token-manipulator.js.map +0 -1
  200. package/lib/http/auth/basic-auth-token.js +0 -2
  201. package/lib/http/auth/basic-auth-token.js.map +0 -1
  202. package/lib/http/auth/google-web-token-manipulator.js +0 -72
  203. package/lib/http/auth/google-web-token-manipulator.js.map +0 -1
  204. package/lib/http/auth/google-web-token-manipulator.spec.js +0 -11
  205. package/lib/http/auth/google-web-token-manipulator.spec.js.map +0 -1
  206. package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.js +0 -28
  207. package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.js.map +0 -1
  208. package/lib/http/auth/local-web-token-manipulator.js +0 -75
  209. package/lib/http/auth/local-web-token-manipulator.js.map +0 -1
  210. package/lib/http/auth/local-web-token-manipulator.spec.js +0 -25
  211. package/lib/http/auth/local-web-token-manipulator.spec.js.map +0 -1
  212. package/lib/http/auth/web-token-manipulator.js +0 -2
  213. package/lib/http/auth/web-token-manipulator.js.map +0 -1
  214. package/lib/http/error/bad-gateway.js +0 -10
  215. package/lib/http/error/bad-gateway.js.map +0 -1
  216. package/lib/http/error/bad-request-error.js +0 -10
  217. package/lib/http/error/bad-request-error.js.map +0 -1
  218. package/lib/http/error/conflict-error.js +0 -10
  219. package/lib/http/error/conflict-error.js.map +0 -1
  220. package/lib/http/error/epsilon-http-error.js +0 -135
  221. package/lib/http/error/epsilon-http-error.js.map +0 -1
  222. package/lib/http/error/epsilon-http-error.spec.js +0 -12
  223. package/lib/http/error/epsilon-http-error.spec.js.map +0 -1
  224. package/lib/http/error/forbidden-error.js +0 -10
  225. package/lib/http/error/forbidden-error.js.map +0 -1
  226. package/lib/http/error/gateway-timeout.js +0 -10
  227. package/lib/http/error/gateway-timeout.js.map +0 -1
  228. package/lib/http/error/method-not-allowed-error.js +0 -10
  229. package/lib/http/error/method-not-allowed-error.js.map +0 -1
  230. package/lib/http/error/misconfigured-error.js +0 -10
  231. package/lib/http/error/misconfigured-error.js.map +0 -1
  232. package/lib/http/error/not-found-error.js +0 -10
  233. package/lib/http/error/not-found-error.js.map +0 -1
  234. package/lib/http/error/not-implemented.js +0 -10
  235. package/lib/http/error/not-implemented.js.map +0 -1
  236. package/lib/http/error/request-timeout-error.js +0 -10
  237. package/lib/http/error/request-timeout-error.js.map +0 -1
  238. package/lib/http/error/service-unavailable.js +0 -10
  239. package/lib/http/error/service-unavailable.js.map +0 -1
  240. package/lib/http/error/too-many-requests-error.js +0 -10
  241. package/lib/http/error/too-many-requests-error.js.map +0 -1
  242. package/lib/http/error/unauthorized-error.js +0 -10
  243. package/lib/http/error/unauthorized-error.js.map +0 -1
  244. package/lib/http/event-util.js +0 -177
  245. package/lib/http/event-util.js.map +0 -1
  246. package/lib/http/event-util.spec.js +0 -162
  247. package/lib/http/event-util.spec.js.map +0 -1
  248. package/lib/http/response-util.js +0 -142
  249. package/lib/http/response-util.js.map +0 -1
  250. package/lib/http/response-util.spec.js +0 -93
  251. package/lib/http/response-util.spec.js.map +0 -1
  252. package/lib/http/route/epsilon-router.js +0 -2
  253. package/lib/http/route/epsilon-router.js.map +0 -1
  254. package/lib/http/route/extended-auth-response-context.js +0 -2
  255. package/lib/http/route/extended-auth-response-context.js.map +0 -1
  256. package/lib/http/route/route-mapping.js +0 -2
  257. package/lib/http/route/route-mapping.js.map +0 -1
  258. package/lib/http/route/route-validator-config.js +0 -2
  259. package/lib/http/route/route-validator-config.js.map +0 -1
  260. package/lib/http/route/router-util.js +0 -234
  261. package/lib/http/route/router-util.js.map +0 -1
  262. package/lib/http/route/router-util.spec.js +0 -24
  263. package/lib/http/route/router-util.spec.js.map +0 -1
  264. package/lib/http/web-handler.js +0 -119
  265. package/lib/http/web-handler.js.map +0 -1
  266. package/lib/http/web-handler.spec.js +0 -33
  267. package/lib/http/web-handler.spec.js.map +0 -1
  268. package/lib/http/web-v2-handler.js +0 -23
  269. package/lib/http/web-v2-handler.js.map +0 -1
  270. package/lib/index.js +0 -2
  271. package/lib/index.js.map +0 -1
  272. package/lib/inter-api/inter-api-entry.js +0 -2
  273. package/lib/inter-api/inter-api-entry.js.map +0 -1
  274. package/lib/inter-api/inter-api-util.js +0 -60
  275. package/lib/inter-api/inter-api-util.js.map +0 -1
  276. package/lib/inter-api/inter-api-util.spec.js +0 -62
  277. package/lib/inter-api/inter-api-util.spec.js.map +0 -1
  278. package/lib/inter-api-manager.js +0 -66
  279. package/lib/inter-api-manager.js.map +0 -1
  280. package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.js +0 -74
  281. package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.js.map +0 -1
  282. package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.spec.js +0 -51
  283. package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.spec.js.map +0 -1
  284. package/lib/lambda-event-handler/dynamo-epsilon-lambda-event-handler.js +0 -34
  285. package/lib/lambda-event-handler/dynamo-epsilon-lambda-event-handler.js.map +0 -1
  286. package/lib/lambda-event-handler/generic-sns-epsilon-lambda-event-handler.js +0 -30
  287. package/lib/lambda-event-handler/generic-sns-epsilon-lambda-event-handler.js.map +0 -1
  288. package/lib/lambda-event-handler/inter-api-epsilon-lambda-event-handler.js +0 -24
  289. package/lib/lambda-event-handler/inter-api-epsilon-lambda-event-handler.js.map +0 -1
  290. package/lib/lambda-event-handler/s3-epsilon-lambda-event-handler.js +0 -42
  291. package/lib/lambda-event-handler/s3-epsilon-lambda-event-handler.js.map +0 -1
  292. package/lib/local-container-server.js +0 -77
  293. package/lib/local-container-server.js.map +0 -1
  294. package/lib/local-server-cert.js +0 -69
  295. package/lib/local-server-cert.js.map +0 -1
  296. package/lib/local-server.js +0 -163
  297. package/lib/local-server.js.map +0 -1
  298. package/lib/open-api-util/open-api-doc-modifications.js +0 -2
  299. package/lib/open-api-util/open-api-doc-modifications.js.map +0 -1
  300. package/lib/open-api-util/open-api-doc-modifier.js +0 -80
  301. package/lib/open-api-util/open-api-doc-modifier.js.map +0 -1
  302. package/lib/open-api-util/open-api-doc-modifier.spec.js +0 -17
  303. package/lib/open-api-util/open-api-doc-modifier.spec.js.map +0 -1
  304. package/lib/open-api-util/yaml-combiner.js +0 -28
  305. package/lib/open-api-util/yaml-combiner.js.map +0 -1
  306. package/lib/open-api-util/yaml-combiner.spec.js +0 -23
  307. package/lib/open-api-util/yaml-combiner.spec.js.map +0 -1
  308. package/lib/sample/sample-server-components.js +0 -186
  309. package/lib/sample/sample-server-components.js.map +0 -1
  310. package/lib/sample/sample-server-static-files.js +0 -595
  311. package/lib/sample/sample-server-static-files.js.map +0 -1
  312. package/lib/sample/test-error-server.js +0 -45
  313. package/lib/sample/test-error-server.js.map +0 -1
  314. package/lib/util/aws-util.js +0 -66
  315. package/lib/util/aws-util.js.map +0 -1
  316. package/lib/util/context-util.js +0 -103
  317. package/lib/util/context-util.js.map +0 -1
  318. package/lib/util/cron-util.js +0 -69
  319. package/lib/util/cron-util.js.map +0 -1
  320. package/lib/util/cron-util.spec.js +0 -125
  321. package/lib/util/cron-util.spec.js.map +0 -1
  322. package/lib/util/epsilon-config-parser.js +0 -66
  323. package/lib/util/epsilon-config-parser.js.map +0 -1
@@ -1,163 +0,0 @@
1
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
2
- import http from 'http';
3
- import https from 'https';
4
- import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
5
- import { DateTime } from 'luxon';
6
- import qs from 'querystring';
7
- import { EventUtil } from './http/event-util.js';
8
- import { LoggerLevelName } from '@bitblit/ratchet-common/lib/logger/logger-level-name.js';
9
- import { LocalServerCert } from './local-server-cert.js';
10
- import { SampleServerComponents } from './sample/sample-server-components.js';
11
- import { LocalWebTokenManipulator } from './http/auth/local-web-token-manipulator.js';
12
- export class LocalServer {
13
- globalHandler;
14
- port;
15
- server;
16
- aborted = false;
17
- constructor(globalHandler, port = 8888, https = false) {
18
- this.globalHandler = globalHandler;
19
- this.port = port;
20
- }
21
- async runServer() {
22
- return new Promise((res, rej) => {
23
- try {
24
- Logger.info('Starting Epsilon server on port %d', this.port);
25
- if (https) {
26
- const options = {
27
- key: LocalServerCert.CLIENT_KEY_PEM,
28
- cert: LocalServerCert.CLIENT_CERT_PEM,
29
- };
30
- Logger.info('Starting https server - THIS SERVER IS NOT SECURE! The KEYS are in the code! Testing Server Only - Use at your own risk!');
31
- this.server = https.createServer(options, this.requestHandler.bind(this)).listen(this.port);
32
- }
33
- else {
34
- this.server = http.createServer(this.requestHandler.bind(this)).listen(this.port);
35
- }
36
- Logger.info('Epsilon server is listening');
37
- process.on('SIGINT', () => {
38
- Logger.info('Caught SIGINT - shutting down test server...');
39
- this.aborted = true;
40
- res(true);
41
- });
42
- }
43
- catch (err) {
44
- Logger.error('Local server failed : %s', err, err);
45
- rej(err);
46
- }
47
- });
48
- }
49
- async requestHandler(request, response) {
50
- const context = {
51
- awsRequestId: 'LOCAL-' + StringRatchet.createType4Guid(),
52
- getRemainingTimeInMillis() {
53
- return 300000;
54
- },
55
- };
56
- const evt = await LocalServer.messageToApiGatewayEvent(request, context);
57
- const logEventLevel = EventUtil.eventIsAGraphQLIntrospection(evt) ? LoggerLevelName.silly : LoggerLevelName.info;
58
- if (evt.path == '/epsilon-poison-pill') {
59
- this.aborted = true;
60
- return true;
61
- }
62
- else {
63
- const result = await this.globalHandler.lambdaHandler(evt, context);
64
- const written = await LocalServer.writeProxyResultToServerResponse(result, response);
65
- return written;
66
- }
67
- }
68
- static async bodyAsBase64String(request) {
69
- return new Promise((res, rej) => {
70
- const body = [];
71
- request.on('data', (chunk) => {
72
- body.push(chunk);
73
- });
74
- request.on('end', () => {
75
- const rval = Buffer.concat(body).toString('base64');
76
- res(rval);
77
- });
78
- });
79
- }
80
- static async messageToApiGatewayEvent(request, context) {
81
- const bodyString = await LocalServer.bodyAsBase64String(request);
82
- const stageIdx = request.url.indexOf('/', 1);
83
- const stage = request.url.substring(1, stageIdx);
84
- const path = request.url.substring(stageIdx + 1);
85
- const reqTime = new Date().getTime();
86
- const formattedTime = DateTime.utc().toFormat('dd/MMM/yyyy:hh:mm:ss ZZ');
87
- const queryIdx = request.url.indexOf('?');
88
- const queryStringParams = queryIdx > -1 ? qs.parse(request.url.substring(queryIdx + 1)) : {};
89
- const headers = Object.assign({}, request.headers);
90
- headers['X-Forwarded-Proto'] = 'http';
91
- const rval = {
92
- body: bodyString,
93
- multiValueHeaders: {},
94
- multiValueQueryStringParameters: {},
95
- resource: '/{proxy+}',
96
- path: request.url,
97
- httpMethod: request.method.toLowerCase(),
98
- isBase64Encoded: true,
99
- queryStringParameters: queryStringParams,
100
- pathParameters: {
101
- proxy: path,
102
- },
103
- stageVariables: {
104
- baz: 'qux',
105
- },
106
- headers: headers,
107
- requestContext: {
108
- accountId: '123456789012',
109
- resourceId: '123456',
110
- stage: stage,
111
- requestId: context.awsRequestId,
112
- requestTime: formattedTime,
113
- requestTimeEpoch: reqTime,
114
- identity: null,
115
- path: request.url,
116
- domainName: request.headers['host'],
117
- resourcePath: '/{proxy+}',
118
- httpMethod: request.method.toLowerCase(),
119
- apiId: '1234567890',
120
- protocol: 'HTTP/1.1',
121
- },
122
- };
123
- return rval;
124
- }
125
- static async writeProxyResultToServerResponse(proxyResult, response) {
126
- const isGraphQLSchemaResponse = !!proxyResult && !!proxyResult.body && proxyResult.body.indexOf('{"data":{"__schema"') > -1;
127
- if (!isGraphQLSchemaResponse) {
128
- Logger.debug('Result: %j', proxyResult);
129
- }
130
- response.statusCode = proxyResult.statusCode;
131
- if (proxyResult.headers) {
132
- Object.keys(proxyResult.headers).forEach((hk) => {
133
- response.setHeader(hk, String(proxyResult.headers[hk]));
134
- });
135
- }
136
- if (proxyResult.multiValueHeaders) {
137
- Object.keys(proxyResult.multiValueHeaders).forEach((hk) => {
138
- response.setHeader(hk, proxyResult.multiValueHeaders[hk].join(','));
139
- });
140
- }
141
- const toWrite = proxyResult.isBase64Encoded ? Buffer.from(proxyResult.body, 'base64') : Buffer.from(proxyResult.body);
142
- response.end(toWrite);
143
- return !!proxyResult.body;
144
- }
145
- static async runSampleBatchOnlyServerFromCliArgs(args) {
146
- Logger.setLevel(LoggerLevelName.debug);
147
- const handler = await SampleServerComponents.createSampleBatchOnlyEpsilonGlobalHandler('SampleBatchOnlyLocalServer-' + Date.now());
148
- const testServer = new LocalServer(handler);
149
- const res = await testServer.runServer();
150
- Logger.info('Res was : %s', res);
151
- }
152
- static async runSampleLocalServerFromCliArgs(args) {
153
- Logger.setLevel(LoggerLevelName.debug);
154
- const localTokenHandler = new LocalWebTokenManipulator(['abcd1234'], 'sample-server');
155
- const token = await localTokenHandler.createJWTStringAsync('asdf', {}, ['USER'], 3600);
156
- Logger.info('Use token: %s', token);
157
- const handler = await SampleServerComponents.createSampleEpsilonGlobalHandler('SampleLocalServer-' + Date.now());
158
- const testServer = new LocalServer(handler, 8888, true);
159
- const res = await testServer.runServer();
160
- Logger.info('Res was : %s', res);
161
- }
162
- }
163
- //# sourceMappingURL=local-server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"local-server.js","sourceRoot":"","sources":["../src/local-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AACtE,OAAO,IAAiD,MAAM,MAAM,CAAC;AACrE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AACnF,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,eAAe,EAAE,MAAM,yDAAyD,CAAC;AAE1F,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AAKtF,MAAM,OAAO,WAAW;IAIF;IAA6C;IAHzD,MAAM,CAAS;IACf,OAAO,GAAY,KAAK,CAAC;IAEjC,YAAoB,aAAmC,EAAU,OAAe,IAAI,EAAE,QAAiB,KAAK;QAAxF,kBAAa,GAAb,aAAa,CAAsB;QAAU,SAAI,GAAJ,IAAI,CAAe;IAA2B,CAAC;IAEhH,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,OAAO,CAAU,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACvC,IAAI;gBACF,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAE7D,IAAI,KAAK,EAAE;oBACT,MAAM,OAAO,GAAG;wBACd,GAAG,EAAE,eAAe,CAAC,cAAc;wBACnC,IAAI,EAAE,eAAe,CAAC,eAAe;qBACtC,CAAC;oBACF,MAAM,CAAC,IAAI,CACT,4HAA4H,CAC7H,CAAC;oBACF,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC7F;qBAAM;oBACL,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACnF;gBACD,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBAG3C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;oBACxB,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;oBAC5D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;oBACpB,GAAG,CAAC,IAAI,CAAC,CAAC;gBACZ,CAAC,CAAC,CAAC;aACJ;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnD,GAAG,CAAC,GAAG,CAAC,CAAC;aACV;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAwB,EAAE,QAAwB;QACrE,MAAM,OAAO,GAAY;YACvB,YAAY,EAAE,QAAQ,GAAG,aAAa,CAAC,eAAe,EAAE;YACxD,wBAAwB;gBACtB,OAAO,MAAM,CAAC;YAChB,CAAC;SACS,CAAC;QACb,MAAM,GAAG,GAAoB,MAAM,WAAW,CAAC,wBAAwB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1F,MAAM,aAAa,GAAoB,SAAS,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC;QAElI,IAAI,GAAG,CAAC,IAAI,IAAI,sBAAsB,EAAE;YACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,OAAO,IAAI,CAAC;SACb;aAAM;YACL,MAAM,MAAM,GAAgB,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACjF,MAAM,OAAO,GAAY,MAAM,WAAW,CAAC,gCAAgC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC9F,OAAO,OAAO,CAAC;SAChB;IACH,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,OAAwB;QAC7D,OAAO,IAAI,OAAO,CAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACtC,MAAM,IAAI,GAAG,EAAE,CAAC;YAChB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC3B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBACrB,MAAM,IAAI,GAAW,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAC5D,GAAG,CAAC,IAAI,CAAC,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,OAAwB,EAAE,OAAgB;QACrF,MAAM,UAAU,GAAW,MAAM,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACzE,MAAM,QAAQ,GAAW,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrD,MAAM,KAAK,GAAW,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QACzD,MAAM,IAAI,GAAW,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAEzD,MAAM,OAAO,GAAW,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7C,MAAM,aAAa,GAAW,QAAQ,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAW,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,iBAAiB,GAAQ,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClG,MAAM,OAAO,GAAQ,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACxD,OAAO,CAAC,mBAAmB,CAAC,GAAG,MAAM,CAAC;QAEtC,MAAM,IAAI,GAAoB;YAC5B,IAAI,EAAE,UAAU;YAChB,iBAAiB,EAAE,EAAE;YACrB,+BAA+B,EAAE,EAAE;YACnC,QAAQ,EAAE,WAAW;YACrB,IAAI,EAAE,OAAO,CAAC,GAAG;YACjB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;YACxC,eAAe,EAAE,IAAI;YACrB,qBAAqB,EAAE,iBAAiB;YACxC,cAAc,EAAE;gBACd,KAAK,EAAE,IAAI;aACZ;YACD,cAAc,EAAE;gBACd,GAAG,EAAE,KAAK;aACX;YACD,OAAO,EAAE,OAAO;YAChB,cAAc,EAAE;gBACd,SAAS,EAAE,cAAc;gBACzB,UAAU,EAAE,QAAQ;gBACpB,KAAK,EAAE,KAAK;gBACZ,SAAS,EAAE,OAAO,CAAC,YAAY;gBAC/B,WAAW,EAAE,aAAa;gBAC1B,gBAAgB,EAAE,OAAO;gBACzB,QAAQ,EAAE,IAAI;gBAiBd,IAAI,EAAE,OAAO,CAAC,GAAG;gBACjB,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;gBACnC,YAAY,EAAE,WAAW;gBACzB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE;gBACxC,KAAK,EAAE,YAAY;gBACnB,QAAQ,EAAE,UAAU;aACY;SAChB,CAAC;QAErB,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,WAAwB,EAAE,QAAwB;QACrG,MAAM,uBAAuB,GAAY,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;QAErI,IAAI,CAAC,uBAAuB,EAAE;YAC5B,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;SACzC;QAED,QAAQ,CAAC,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;QAC7C,IAAI,WAAW,CAAC,OAAO,EAAE;YACvB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gBAC9C,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1D,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,WAAW,CAAC,iBAAiB,EAAE;YACjC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;gBACxD,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACtE,CAAC,CAAC,CAAC;SACJ;QACD,MAAM,OAAO,GAAW,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE9H,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;IAC5B,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,IAAc;QACpE,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,OAAO,GAAyB,MAAM,sBAAsB,CAAC,yCAAyC,CAC1G,6BAA6B,GAAG,IAAI,CAAC,GAAG,EAAE,CAC3C,CAAC;QACF,MAAM,UAAU,GAAgB,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,GAAG,GAAY,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,IAAc;QAChE,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,iBAAiB,GAA2C,IAAI,wBAAwB,CAC5F,CAAC,UAAU,CAAC,EACZ,eAAe,CAChB,CAAC;QACF,MAAM,KAAK,GAAW,MAAM,iBAAiB,CAAC,oBAAoB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;QAE/F,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QACpC,MAAM,OAAO,GAAyB,MAAM,sBAAsB,CAAC,gCAAgC,CAAC,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACvI,MAAM,UAAU,GAAgB,IAAI,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACrE,MAAM,GAAG,GAAY,MAAM,UAAU,CAAC,SAAS,EAAE,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC;CACF"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=open-api-doc-modifications.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"open-api-doc-modifications.js","sourceRoot":"","sources":["../../src/open-api-util/open-api-doc-modifications.ts"],"names":[],"mappings":""}
@@ -1,80 +0,0 @@
1
- import yaml from 'js-yaml';
2
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
3
- export class OpenApiDocModifier {
4
- options;
5
- constructor(options) {
6
- this.options = options;
7
- }
8
- modifyOpenApiDoc(yamlString) {
9
- let rval;
10
- if (!!yamlString && !!this.options) {
11
- try {
12
- const openApi = yaml.load(yamlString);
13
- const removeTags = this.options.removeTags ? this.options.removeTags.map((t) => t.toLowerCase()) : [];
14
- if (this.options.newServerPath) {
15
- openApi['servers'] = [{ url: this.options.newServerPath }];
16
- }
17
- if (!!this.options.removeTags && openApi['tags']) {
18
- if (openApi['tags']) {
19
- openApi['tags'] = openApi.tags.filter((f) => {
20
- const n = !!f && !!f['name'] ? f['name'].toLowerCase() : '';
21
- const i = removeTags.indexOf(n);
22
- return i === -1;
23
- });
24
- }
25
- }
26
- if (openApi['paths']) {
27
- let newPaths = {};
28
- Object.keys(openApi['paths']).forEach((p) => {
29
- const path = openApi['paths'][p];
30
- Object.keys(path).forEach((verb) => {
31
- const entry = path[verb];
32
- entry.tags = !!entry.tags ? entry.tags.filter((t) => removeTags.lastIndexOf(t.toLowerCase()) == -1) : entry.tags;
33
- const matcher = verb.toLowerCase() + ' ' + p.toLowerCase();
34
- if (this.matchNone(matcher, this.options.removeEndpoints)) {
35
- newPaths[p] = newPaths[p] || {};
36
- newPaths[p][verb] = entry;
37
- }
38
- });
39
- });
40
- if (this.options.sortEndpoints) {
41
- const keys = Object.keys(newPaths).sort();
42
- const newPaths2 = {};
43
- keys.forEach((k) => {
44
- newPaths2[k] = newPaths[k];
45
- });
46
- newPaths = newPaths2;
47
- }
48
- openApi['paths'] = newPaths;
49
- }
50
- let remSchemas = this.options.removeSchemas || [];
51
- remSchemas = remSchemas.map((s) => s.toLowerCase());
52
- if (openApi['components'] && openApi['components']['schemas']) {
53
- const keys = Object.keys(openApi['components']['schemas']).sort();
54
- const newComp = {};
55
- keys.forEach((k) => {
56
- if (remSchemas.indexOf(k.toLowerCase()) === -1) {
57
- newComp[k] = openApi['components']['schemas'][k];
58
- }
59
- });
60
- openApi['components']['schemas'] = newComp;
61
- }
62
- rval = yaml.dump(openApi);
63
- }
64
- catch (err) {
65
- Logger.error('Error processing yaml: %s', err, err);
66
- }
67
- }
68
- return rval;
69
- }
70
- matchNone(input, regex) {
71
- let rval = true;
72
- if (!!input && !!regex) {
73
- regex.forEach((r) => {
74
- rval = rval && !r.test(input);
75
- });
76
- }
77
- return rval;
78
- }
79
- }
80
- //# sourceMappingURL=open-api-doc-modifier.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"open-api-doc-modifier.js","sourceRoot":"","sources":["../../src/open-api-util/open-api-doc-modifier.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import { OpenApiDocModifier } from './open-api-doc-modifier.js';
2
- import { SampleServerStaticFiles } from '../sample/sample-server-static-files.js';
3
- describe('#openApiDocModifier', function () {
4
- it('should exist', async () => {
5
- const data = SampleServerStaticFiles.SAMPLE_OPEN_API_DOC;
6
- expect(data).toBeTruthy();
7
- expect(data.length).toBeGreaterThan(0);
8
- const mods = {
9
- newServerPath: 'https://api.sample.com/cw',
10
- removeTags: ['Neon', 'CORS'],
11
- removeEndpoints: [new RegExp('options .*')],
12
- };
13
- const result = new OpenApiDocModifier(mods).modifyOpenApiDoc(data);
14
- expect(result).toBeTruthy();
15
- }, 30000);
16
- });
17
- //# sourceMappingURL=open-api-doc-modifier.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"open-api-doc-modifier.spec.js","sourceRoot":"","sources":["../../src/open-api-util/open-api-doc-modifier.spec.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF,QAAQ,CAAC,qBAAqB,EAAE;IAC9B,EAAE,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE;QAC5B,MAAM,IAAI,GAAW,uBAAuB,CAAC,mBAAmB,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAEvC,MAAM,IAAI,GAA4B;YACpC,aAAa,EAAE,2BAA2B;YAC1C,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;YAC5B,eAAe,EAAE,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;SACjB,CAAC;QAE7B,MAAM,MAAM,GAAW,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC3E,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;IAE9B,CAAC,EAAE,KAAK,CAAC,CAAC;AACZ,CAAC,CAAC,CAAC"}
@@ -1,28 +0,0 @@
1
- import fs from 'fs';
2
- import { RequireRatchet } from '@bitblit/ratchet-common/lib/lang/require-ratchet.js';
3
- import yaml from 'js-yaml';
4
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
5
- export class YamlCombiner {
6
- static combine(files, inRootPath = []) {
7
- RequireRatchet.notNullOrUndefined(files, 'Files argument');
8
- RequireRatchet.true(files.length > 0, 'Files argument larger than 0');
9
- RequireRatchet.notNullOrUndefined(inRootPath, 'Root path argument');
10
- Logger.info('Processing %d files into output', files.length);
11
- let allElements = {};
12
- for (let i = 0; i < files.length; i++) {
13
- const fileContents = fs.readFileSync(files[i]).toString();
14
- const openApi = yaml.load(fileContents);
15
- allElements = Object.assign(allElements, openApi);
16
- }
17
- const rootPath = Object.assign([], inRootPath);
18
- while (rootPath.length > 0) {
19
- const next = {};
20
- next[rootPath[rootPath.length - 1]] = allElements;
21
- rootPath.splice(rootPath.length - 1, 1);
22
- allElements = next;
23
- }
24
- const rval = yaml.dump(allElements);
25
- return rval;
26
- }
27
- }
28
- //# sourceMappingURL=yaml-combiner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"yaml-combiner.js","sourceRoot":"","sources":["../../src/open-api-util/yaml-combiner.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAEtE,MAAM,OAAO,YAAY;IAChB,MAAM,CAAC,OAAO,CAAC,KAAe,EAAE,aAAuB,EAAE;QAC9D,cAAc,CAAC,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAC3D,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,8BAA8B,CAAC,CAAC;QACtE,cAAc,CAAC,kBAAkB,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAE7D,IAAI,WAAW,GAAQ,EAAE,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,YAAY,GAAW,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;YAClE,MAAM,OAAO,GAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC7C,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;SACnD;QACD,MAAM,QAAQ,GAAa,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QACzD,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,MAAM,IAAI,GAAQ,EAAE,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC;YAClD,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACxC,WAAW,GAAG,IAAI,CAAC;SACpB;QAED,MAAM,IAAI,GAAW,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -1,23 +0,0 @@
1
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
2
- import path from 'path';
3
- import { YamlCombiner } from './yaml-combiner.js';
4
- import { EsmRatchet } from '@bitblit/ratchet-common/lib/lang/esm-ratchet.js';
5
- describe('#yamlCombiner', function () {
6
- it('should combine yamls', async () => {
7
- const files = [
8
- path.join(EsmRatchet.fetchDirName(import.meta.url), '../../../../test-data/epsilon/sample-yaml/test1.yaml'),
9
- path.join(EsmRatchet.fetchDirName(import.meta.url), '../../../../test-data/epsilon/sample-yaml/test2.yaml'),
10
- ];
11
- const root = ['components', 'schemas'];
12
- const result = YamlCombiner.combine(files, root);
13
- expect(result).toBeTruthy();
14
- expect(result.indexOf('Object1')).toBeGreaterThan(0);
15
- expect(result.indexOf('Object2')).toBeGreaterThan(0);
16
- expect(result.indexOf('Object3')).toBeGreaterThan(0);
17
- expect(result.indexOf('Object4')).toBeGreaterThan(0);
18
- expect(result.indexOf('components')).toEqual(0);
19
- expect(result.indexOf('schemas')).toBeGreaterThan(0);
20
- Logger.info('G: \n\n%s', result);
21
- }, 30000);
22
- });
23
- //# sourceMappingURL=yaml-combiner.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"yaml-combiner.spec.js","sourceRoot":"","sources":["../../src/open-api-util/yaml-combiner.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AACtE,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,iDAAiD,CAAC;AAE7E,QAAQ,CAAC,eAAe,EAAE;IACxB,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;QACpC,MAAM,KAAK,GAAa;YACtB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,sDAAsD,CAAC;YAC3G,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,sDAAsD,CAAC;SAC5G,CAAC;QACF,MAAM,IAAI,GAAa,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAEjD,MAAM,MAAM,GAAW,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAEzD,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC,EAAE,KAAK,CAAC,CAAC;AACZ,CAAC,CAAC,CAAC"}
@@ -1,186 +0,0 @@
1
- import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
2
- import { ApolloServer, gql } from 'apollo-server-lambda';
3
- import { ApolloServerPluginLandingPageGraphQLPlayground } from 'apollo-server-core';
4
- import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
5
- import { ErrorRatchet } from '@bitblit/ratchet-common/lib/lang/error-ratchet.js';
6
- import { LoggerLevelName } from '@bitblit/ratchet-common/lib/logger/logger-level-name.js';
7
- import { PromiseRatchet } from '@bitblit/ratchet-common/lib/lang/promise-ratchet.js';
8
- import { BooleanRatchet } from '@bitblit/ratchet-common/lib/lang/boolean-ratchet.js';
9
- import { NumberRatchet } from '@bitblit/ratchet-common/lib/lang/number-ratchet.js';
10
- import { EpsilonGlobalHandler } from '../epsilon-global-handler.js';
11
- import { BuiltInHandlers } from '../built-in/http/built-in-handlers.js';
12
- import { LocalWebTokenManipulator } from '../http/auth/local-web-token-manipulator.js';
13
- import { EchoProcessor } from '../built-in/background/echo-processor.js';
14
- import { NoOpProcessor } from '../built-in/background/no-op-processor.js';
15
- import { SampleDelayProcessor } from '../built-in/background/sample-delay-processor.js';
16
- import { LogAndEnqueueEchoProcessor } from '../built-in/background/log-and-enqueue-echo-processor.js';
17
- import { EpsilonConfigParser } from '../util/epsilon-config-parser.js';
18
- import { RouterUtil } from '../http/route/router-util.js';
19
- import { SampleInputValidatedProcessor } from '../built-in/background/sample-input-validated-processor.js';
20
- import { BuiltInAuthorizers } from '../built-in/http/built-in-authorizers.js';
21
- import { ApolloFilter } from '../built-in/http/apollo-filter.js';
22
- import { BuiltInFilters } from '../built-in/http/built-in-filters.js';
23
- import { EventUtil } from '../http/event-util.js';
24
- import { LogMessageBackgroundErrorProcessor } from '../built-in/background/log-message-background-error-processor.js';
25
- import { SingleThreadLocalBackgroundManager } from '../background/manager/single-thread-local-background-manager.js';
26
- import { SampleServerStaticFiles } from './sample-server-static-files.js';
27
- export class SampleServerComponents {
28
- constructor() { }
29
- static async createSampleApollo() {
30
- const gqlString = SampleServerStaticFiles.SAMPLE_SERVER_GRAPHQL;
31
- Logger.silly('Creating apollo from : %s', gqlString);
32
- const typeDefs = gql(gqlString);
33
- const resolvers = {
34
- RootQueryType: {
35
- serverMeta: async (root) => {
36
- return { version: 'A1', serverTime: new Date().toISOString() };
37
- },
38
- forceTimeout: async (root) => {
39
- await PromiseRatchet.wait(1000 * 60 * 30);
40
- return { placeholder: 'A1' };
41
- },
42
- },
43
- };
44
- const server = new ApolloServer({
45
- debug: false,
46
- introspection: true,
47
- typeDefs,
48
- resolvers,
49
- plugins: [ApolloServerPluginLandingPageGraphQLPlayground({ endpoint: '/graphql' })],
50
- context: async ({ event, context, express }) => {
51
- const authTokenSt = EventUtil.extractBearerTokenFromEvent(event);
52
- const token = null;
53
- if (!!authTokenSt && authTokenSt.startsWith('Bearer')) {
54
- Logger.info('Got : %s', authTokenSt);
55
- }
56
- const rval = {
57
- user: token,
58
- headers: event.headers,
59
- functionName: context.functionName,
60
- event,
61
- context,
62
- };
63
- return rval;
64
- },
65
- });
66
- return server;
67
- }
68
- static async createSampleEpsilonConfig(label) {
69
- const yamlString = SampleServerStaticFiles.SAMPLE_OPEN_API_DOC;
70
- const authorizers = new Map();
71
- authorizers.set('SampleAuthorizer', (token, evt) => BuiltInAuthorizers.simpleLoggedInAuth(token, evt));
72
- authorizers.set('LogAuthorizer', (token, evt) => BuiltInAuthorizers.simpleNoAuthenticationLogAccess(token, evt));
73
- const handlers = new Map();
74
- handlers.set('get /', (event, context) => BuiltInHandlers.sample(event, null, context));
75
- handlers.set('get /meta/server', (event) => BuiltInHandlers.sample(event));
76
- handlers.set('get /meta/user', (event) => BuiltInHandlers.sample(event));
77
- handlers.set('get /meta/item/{itemId}', (event) => BuiltInHandlers.sample(event));
78
- handlers.set('post /secure/access-token', (event) => BuiltInHandlers.sample(event));
79
- handlers.set('get /multi/fixed', (event) => BuiltInHandlers.sample(event, 'fixed'));
80
- handlers.set('get /multi/{v}', (event) => BuiltInHandlers.sample(event, 'variable'));
81
- handlers.set('get /err/{code}', (event) => {
82
- const err = ErrorRatchet.fErr('Fake Err : %j', event);
83
- err['statusCode'] = NumberRatchet.safeNumber(event.pathParameters['code']);
84
- throw err;
85
- });
86
- handlers.set('get /meta/sample-item', async (event) => {
87
- const numberToUse = NumberRatchet.safeNumber(event.queryStringParameters['num']) || 5;
88
- const rval = {
89
- numberParam: numberToUse,
90
- nameParam: 'Test-String',
91
- };
92
- return rval;
93
- });
94
- handlers.set('post /meta/sample-item', async (event) => {
95
- const parsed = event.parsedBody;
96
- const forceFail = BooleanRatchet.parseBool(StringRatchet.trimToNull(event.queryStringParameters['forceFail'])) === true;
97
- if (forceFail) {
98
- parsed['numberParam'] = 'test';
99
- }
100
- return parsed;
101
- });
102
- const tokenManipulator = new LocalWebTokenManipulator(['abcd1234'], 'sample.erigir.com')
103
- .withParseFailureLogLevel(LoggerLevelName.debug)
104
- .withExtraDecryptionKeys(['abcdefabcdef'])
105
- .withOldKeyUseLogLevel(LoggerLevelName.info);
106
- const meta = RouterUtil.defaultHttpMetaProcessingConfigWithAuthenticationHeaderParsing(tokenManipulator);
107
- meta.timeoutMS = 10_000;
108
- ApolloFilter.addApolloFilterToList(meta.preFilters, new RegExp('.*graphql.*'), await SampleServerComponents.createSampleApollo(), {
109
- cors: {
110
- origin: '*',
111
- credentials: true,
112
- },
113
- });
114
- meta.errorFilters.push((fCtx) => BuiltInFilters.secureOutboundServerErrorForProduction(fCtx, 'Clean Internal Server Error', 500));
115
- const preFiltersAllowingNull = Object.assign({}, meta);
116
- preFiltersAllowingNull.preFilters = Object.assign([], preFiltersAllowingNull.preFilters);
117
- preFiltersAllowingNull.preFilters.splice(8, 1);
118
- const cfg = {
119
- defaultMetaHandling: meta,
120
- handlers: handlers,
121
- authorizers: authorizers,
122
- overrideMetaHandling: [
123
- {
124
- pathRegex: '/background',
125
- methods: null,
126
- config: Object.assign({}, meta, { overrideAuthorizerName: 'LogAuthorizer' }),
127
- },
128
- {
129
- pathRegex: '/meta/server',
130
- methods: ['GET'],
131
- config: preFiltersAllowingNull,
132
- },
133
- ],
134
- prefixesToStripBeforeRouteMatch: ['v0'],
135
- filterHandledRouteMatches: ['options .*'],
136
- };
137
- const background = {
138
- httpMetaEndpoint: '/background/meta',
139
- httpSubmissionPath: '/background',
140
- implyTypeFromPathSuffix: false,
141
- processors: [
142
- new EchoProcessor(),
143
- new NoOpProcessor(),
144
- new SampleDelayProcessor(),
145
- new SampleInputValidatedProcessor(),
146
- new LogAndEnqueueEchoProcessor(),
147
- ],
148
- errorProcessor: new LogMessageBackgroundErrorProcessor(),
149
- };
150
- const epsilonConfig = {
151
- label: label,
152
- openApiYamlString: yamlString,
153
- httpConfig: cfg,
154
- backgroundConfig: background,
155
- };
156
- return epsilonConfig;
157
- }
158
- static async createSampleEpsilonGlobalHandler(label) {
159
- const epsilonConfig = await SampleServerComponents.createSampleEpsilonConfig(label);
160
- const backgroundManager = new SingleThreadLocalBackgroundManager();
161
- const epsilonInstance = EpsilonConfigParser.epsilonConfigToEpsilonInstance(epsilonConfig, backgroundManager);
162
- const rval = new EpsilonGlobalHandler(epsilonInstance);
163
- return rval;
164
- }
165
- static async createSampleBatchOnlyEpsilonGlobalHandler(label) {
166
- const epsilonConfig = await SampleServerComponents.createSampleEpsilonConfig(label);
167
- epsilonConfig.httpConfig.handlers = new Map();
168
- const byPassCfg = Object.assign({}, epsilonConfig.httpConfig.defaultMetaHandling);
169
- byPassCfg.preFilters = byPassCfg.preFilters.concat([
170
- (fCtx) => BuiltInFilters.autoRespond(fCtx, { message: 'Background Processing Only' }),
171
- ]);
172
- epsilonConfig.httpConfig.overrideMetaHandling = [
173
- {
174
- pathRegex: '.*background.*',
175
- invertPathMatching: true,
176
- config: byPassCfg,
177
- },
178
- ];
179
- epsilonConfig.httpConfig.filterHandledRouteMatches = ['.*'];
180
- const backgroundManager = new SingleThreadLocalBackgroundManager();
181
- const epsilonInstance = EpsilonConfigParser.epsilonConfigToEpsilonInstance(epsilonConfig, backgroundManager);
182
- const rval = new EpsilonGlobalHandler(epsilonInstance);
183
- return rval;
184
- }
185
- }
186
- //# sourceMappingURL=sample-server-components.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sample-server-components.js","sourceRoot":"","sources":["../../src/sample/sample-server-components.ts"],"names":[],"mappings":"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"}