@h4ad/serverless-adapter 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/README.md +4 -260
  2. package/lib/@types/binary-settings.d.ts +24 -6
  3. package/lib/@types/binary-settings.d.ts.map +1 -0
  4. package/lib/@types/binary-settings.js +1 -0
  5. package/lib/@types/binary-settings.js.map +1 -0
  6. package/lib/@types/headers.d.ts +16 -3
  7. package/lib/@types/headers.d.ts.map +1 -0
  8. package/lib/@types/headers.js +1 -0
  9. package/lib/@types/headers.js.map +1 -0
  10. package/lib/@types/helpers.d.ts +4 -0
  11. package/lib/@types/helpers.d.ts.map +1 -0
  12. package/lib/@types/helpers.js +1 -0
  13. package/lib/@types/helpers.js.map +1 -0
  14. package/lib/@types/huawei/huawei-api-gateway-event.d.ts +62 -0
  15. package/lib/@types/huawei/huawei-api-gateway-event.d.ts.map +1 -0
  16. package/lib/@types/huawei/huawei-api-gateway-event.js +2 -0
  17. package/lib/@types/huawei/huawei-api-gateway-event.js.map +1 -0
  18. package/lib/@types/huawei/huawei-api-gateway-response.d.ts +20 -0
  19. package/lib/@types/huawei/huawei-api-gateway-response.d.ts.map +1 -0
  20. package/lib/@types/huawei/huawei-api-gateway-response.js +2 -0
  21. package/lib/@types/huawei/huawei-api-gateway-response.js.map +1 -0
  22. package/lib/@types/huawei/huawei-context.d.ts +157 -0
  23. package/lib/@types/huawei/huawei-context.d.ts.map +1 -0
  24. package/lib/@types/huawei/huawei-context.js +1 -0
  25. package/lib/@types/huawei/huawei-context.js.map +1 -0
  26. package/lib/@types/huawei/index.d.ts +1 -0
  27. package/lib/@types/huawei/index.d.ts.map +1 -0
  28. package/lib/@types/huawei/index.js +6 -1
  29. package/lib/@types/huawei/index.js.map +1 -0
  30. package/lib/@types/index.d.ts +2 -1
  31. package/lib/@types/index.d.ts.map +1 -0
  32. package/lib/@types/index.js +7 -2
  33. package/lib/@types/index.js.map +1 -0
  34. package/lib/adapters/aws/alb.adapter.d.ts +18 -10
  35. package/lib/adapters/aws/alb.adapter.d.ts.map +1 -0
  36. package/lib/adapters/aws/alb.adapter.js +14 -9
  37. package/lib/adapters/aws/alb.adapter.js.map +1 -0
  38. package/lib/adapters/aws/api-gateway-v1.adapter.d.ts +20 -12
  39. package/lib/adapters/aws/api-gateway-v1.adapter.d.ts.map +1 -0
  40. package/lib/adapters/aws/api-gateway-v1.adapter.js +19 -14
  41. package/lib/adapters/aws/api-gateway-v1.adapter.js.map +1 -0
  42. package/lib/adapters/aws/api-gateway-v2.adapter.d.ts +19 -11
  43. package/lib/adapters/aws/api-gateway-v2.adapter.d.ts.map +1 -0
  44. package/lib/adapters/aws/api-gateway-v2.adapter.js +15 -10
  45. package/lib/adapters/aws/api-gateway-v2.adapter.js.map +1 -0
  46. package/lib/adapters/aws/dynamodb.adapter.d.ts +18 -10
  47. package/lib/adapters/aws/dynamodb.adapter.d.ts.map +1 -0
  48. package/lib/adapters/aws/dynamodb.adapter.js +13 -8
  49. package/lib/adapters/aws/dynamodb.adapter.js.map +1 -0
  50. package/lib/adapters/aws/event-bridge.adapter.d.ts +21 -10
  51. package/lib/adapters/aws/event-bridge.adapter.d.ts.map +1 -0
  52. package/lib/adapters/aws/event-bridge.adapter.js +13 -8
  53. package/lib/adapters/aws/event-bridge.adapter.js.map +1 -0
  54. package/lib/adapters/aws/index.d.ts +1 -0
  55. package/lib/adapters/aws/index.d.ts.map +1 -0
  56. package/lib/adapters/aws/index.js +6 -1
  57. package/lib/adapters/aws/index.js.map +1 -0
  58. package/lib/adapters/aws/lambda-edge.adapter.d.ts +76 -46
  59. package/lib/adapters/aws/lambda-edge.adapter.d.ts.map +1 -0
  60. package/lib/adapters/aws/lambda-edge.adapter.js +40 -24
  61. package/lib/adapters/aws/lambda-edge.adapter.js.map +1 -0
  62. package/lib/adapters/aws/sns.adapter.d.ts +18 -10
  63. package/lib/adapters/aws/sns.adapter.d.ts.map +1 -0
  64. package/lib/adapters/aws/sns.adapter.js +13 -8
  65. package/lib/adapters/aws/sns.adapter.js.map +1 -0
  66. package/lib/adapters/aws/sqs.adapter.d.ts +18 -10
  67. package/lib/adapters/aws/sqs.adapter.d.ts.map +1 -0
  68. package/lib/adapters/aws/sqs.adapter.js +13 -8
  69. package/lib/adapters/aws/sqs.adapter.js.map +1 -0
  70. package/lib/adapters/dummy/dummy.adapter.d.ts +9 -5
  71. package/lib/adapters/dummy/dummy.adapter.d.ts.map +1 -0
  72. package/lib/adapters/dummy/dummy.adapter.js +9 -5
  73. package/lib/adapters/dummy/dummy.adapter.js.map +1 -0
  74. package/lib/adapters/dummy/index.d.ts +1 -0
  75. package/lib/adapters/dummy/index.d.ts.map +1 -0
  76. package/lib/adapters/dummy/index.js +6 -1
  77. package/lib/adapters/dummy/index.js.map +1 -0
  78. package/lib/adapters/huawei/huawei-api-gateway.adapter.d.ts +19 -12
  79. package/lib/adapters/huawei/huawei-api-gateway.adapter.d.ts.map +1 -0
  80. package/lib/adapters/huawei/huawei-api-gateway.adapter.js +14 -9
  81. package/lib/adapters/huawei/huawei-api-gateway.adapter.js.map +1 -0
  82. package/lib/adapters/huawei/index.d.ts +1 -0
  83. package/lib/adapters/huawei/index.d.ts.map +1 -0
  84. package/lib/adapters/huawei/index.js +6 -1
  85. package/lib/adapters/huawei/index.js.map +1 -0
  86. package/lib/contracts/adapter.contract.d.ts +30 -30
  87. package/lib/contracts/adapter.contract.d.ts.map +1 -0
  88. package/lib/contracts/adapter.contract.js +2 -0
  89. package/lib/contracts/adapter.contract.js.map +1 -0
  90. package/lib/contracts/framework.contract.d.ts +7 -3
  91. package/lib/contracts/framework.contract.d.ts.map +1 -0
  92. package/lib/contracts/framework.contract.js +1 -0
  93. package/lib/contracts/framework.contract.js.map +1 -0
  94. package/lib/contracts/handler.contract.d.ts +7 -0
  95. package/lib/contracts/handler.contract.d.ts.map +1 -0
  96. package/lib/contracts/handler.contract.js +1 -0
  97. package/lib/contracts/handler.contract.js.map +1 -0
  98. package/lib/contracts/index.d.ts +1 -0
  99. package/lib/contracts/index.d.ts.map +1 -0
  100. package/lib/contracts/index.js +6 -1
  101. package/lib/contracts/index.js.map +1 -0
  102. package/lib/contracts/resolver.contract.d.ts +17 -4
  103. package/lib/contracts/resolver.contract.d.ts.map +1 -0
  104. package/lib/contracts/resolver.contract.js +1 -0
  105. package/lib/contracts/resolver.contract.js.map +1 -0
  106. package/lib/core/base-handler.d.ts +9 -5
  107. package/lib/core/base-handler.d.ts.map +1 -0
  108. package/lib/core/base-handler.js +9 -5
  109. package/lib/core/base-handler.js.map +1 -0
  110. package/lib/core/constants.d.ts +27 -0
  111. package/lib/core/constants.d.ts.map +1 -0
  112. package/lib/core/constants.js +21 -0
  113. package/lib/core/constants.js.map +1 -0
  114. package/lib/core/current-invoke.d.ts +17 -6
  115. package/lib/core/current-invoke.d.ts.map +1 -0
  116. package/lib/core/current-invoke.js +12 -4
  117. package/lib/core/current-invoke.js.map +1 -0
  118. package/lib/core/event-body.d.ts +9 -3
  119. package/lib/core/event-body.d.ts.map +1 -0
  120. package/lib/core/event-body.js +9 -3
  121. package/lib/core/event-body.js.map +1 -0
  122. package/lib/core/headers.d.ts +17 -6
  123. package/lib/core/headers.d.ts.map +1 -0
  124. package/lib/core/headers.js +17 -6
  125. package/lib/core/headers.js.map +1 -0
  126. package/lib/core/index.d.ts +1 -0
  127. package/lib/core/index.d.ts.map +1 -0
  128. package/lib/core/index.js +6 -1
  129. package/lib/core/index.js.map +1 -0
  130. package/lib/core/is-binary.d.ts +29 -11
  131. package/lib/core/is-binary.d.ts.map +1 -0
  132. package/lib/core/is-binary.js +29 -11
  133. package/lib/core/is-binary.js.map +1 -0
  134. package/lib/core/logger.d.ts +22 -5
  135. package/lib/core/logger.d.ts.map +1 -0
  136. package/lib/core/logger.js +8 -3
  137. package/lib/core/logger.js.map +1 -0
  138. package/lib/core/no-op.d.ts +4 -0
  139. package/lib/core/no-op.d.ts.map +1 -0
  140. package/lib/core/no-op.js +4 -0
  141. package/lib/core/no-op.js.map +1 -0
  142. package/lib/core/optional.d.ts +8 -3
  143. package/lib/core/optional.d.ts.map +1 -0
  144. package/lib/core/optional.js +8 -3
  145. package/lib/core/optional.js.map +1 -0
  146. package/lib/core/path.d.ts +14 -5
  147. package/lib/core/path.d.ts.map +1 -0
  148. package/lib/core/path.js +14 -5
  149. package/lib/core/path.js.map +1 -0
  150. package/lib/core/stream.d.ts +5 -1
  151. package/lib/core/stream.d.ts.map +1 -0
  152. package/lib/core/stream.js +6 -2
  153. package/lib/core/stream.js.map +1 -0
  154. package/lib/frameworks/express/express.framework.d.ts +5 -1
  155. package/lib/frameworks/express/express.framework.d.ts.map +1 -0
  156. package/lib/frameworks/express/express.framework.js +5 -1
  157. package/lib/frameworks/express/express.framework.js.map +1 -0
  158. package/lib/frameworks/express/index.d.ts +1 -0
  159. package/lib/frameworks/express/index.d.ts.map +1 -0
  160. package/lib/frameworks/express/index.js +6 -1
  161. package/lib/frameworks/express/index.js.map +1 -0
  162. package/lib/frameworks/fastify/fastify.framework.d.ts +5 -1
  163. package/lib/frameworks/fastify/fastify.framework.d.ts.map +1 -0
  164. package/lib/frameworks/fastify/fastify.framework.js +5 -1
  165. package/lib/frameworks/fastify/fastify.framework.js.map +1 -0
  166. package/lib/frameworks/fastify/index.d.ts +1 -0
  167. package/lib/frameworks/fastify/index.d.ts.map +1 -0
  168. package/lib/frameworks/fastify/index.js +6 -1
  169. package/lib/frameworks/fastify/index.js.map +1 -0
  170. package/lib/frameworks/hapi/hapi.framework.d.ts +5 -1
  171. package/lib/frameworks/hapi/hapi.framework.d.ts.map +1 -0
  172. package/lib/frameworks/hapi/hapi.framework.js +5 -1
  173. package/lib/frameworks/hapi/hapi.framework.js.map +1 -0
  174. package/lib/frameworks/hapi/index.d.ts +1 -0
  175. package/lib/frameworks/hapi/index.d.ts.map +1 -0
  176. package/lib/frameworks/hapi/index.js +6 -1
  177. package/lib/frameworks/hapi/index.js.map +1 -0
  178. package/lib/frameworks/koa/index.d.ts +1 -0
  179. package/lib/frameworks/koa/index.d.ts.map +1 -0
  180. package/lib/frameworks/koa/index.js +6 -1
  181. package/lib/frameworks/koa/index.js.map +1 -0
  182. package/lib/frameworks/koa/koa.framework.d.ts +5 -1
  183. package/lib/frameworks/koa/koa.framework.d.ts.map +1 -0
  184. package/lib/frameworks/koa/koa.framework.js +5 -1
  185. package/lib/frameworks/koa/koa.framework.js.map +1 -0
  186. package/lib/frameworks/lazy/index.d.ts +2 -0
  187. package/lib/frameworks/lazy/index.d.ts.map +1 -0
  188. package/lib/frameworks/lazy/index.js +17 -0
  189. package/lib/frameworks/lazy/index.js.map +1 -0
  190. package/lib/frameworks/lazy/lazy.framework.d.ts +7 -2
  191. package/lib/frameworks/lazy/lazy.framework.d.ts.map +1 -0
  192. package/lib/frameworks/lazy/lazy.framework.js +7 -2
  193. package/lib/frameworks/lazy/lazy.framework.js.map +1 -0
  194. package/lib/frameworks/trpc/index.d.ts +2 -0
  195. package/lib/frameworks/trpc/index.d.ts.map +1 -0
  196. package/lib/frameworks/trpc/index.js +18 -0
  197. package/lib/frameworks/trpc/index.js.map +1 -0
  198. package/lib/frameworks/trpc/trpc.framework.d.ts +152 -0
  199. package/lib/frameworks/trpc/trpc.framework.d.ts.map +1 -0
  200. package/lib/frameworks/trpc/trpc.framework.js +119 -0
  201. package/lib/frameworks/trpc/trpc.framework.js.map +1 -0
  202. package/lib/handlers/default/default.handler.d.ts +36 -32
  203. package/lib/handlers/default/default.handler.d.ts.map +1 -0
  204. package/lib/handlers/default/default.handler.js +36 -32
  205. package/lib/handlers/default/default.handler.js.map +1 -0
  206. package/lib/handlers/default/index.d.ts +1 -0
  207. package/lib/handlers/default/index.d.ts.map +1 -0
  208. package/lib/handlers/default/index.js +6 -1
  209. package/lib/handlers/default/index.js.map +1 -0
  210. package/lib/handlers/huawei/http-huawei.handler.d.ts +14 -4
  211. package/lib/handlers/huawei/http-huawei.handler.d.ts.map +1 -0
  212. package/lib/handlers/huawei/http-huawei.handler.js +15 -4
  213. package/lib/handlers/huawei/http-huawei.handler.js.map +1 -0
  214. package/lib/handlers/huawei/index.d.ts +1 -0
  215. package/lib/handlers/huawei/index.d.ts.map +1 -0
  216. package/lib/handlers/huawei/index.js +6 -1
  217. package/lib/handlers/huawei/index.js.map +1 -0
  218. package/lib/index.d.ts +1 -0
  219. package/lib/index.d.ts.map +1 -0
  220. package/lib/index.js +6 -1
  221. package/lib/index.js.map +1 -0
  222. package/lib/network/index.d.ts +1 -0
  223. package/lib/network/index.d.ts.map +1 -0
  224. package/lib/network/index.js +6 -1
  225. package/lib/network/index.js.map +1 -0
  226. package/lib/network/request.d.ts +28 -0
  227. package/lib/network/request.d.ts.map +1 -0
  228. package/lib/network/request.js +7 -0
  229. package/lib/network/request.js.map +1 -0
  230. package/lib/network/response.d.ts +18 -1
  231. package/lib/network/response.d.ts.map +1 -0
  232. package/lib/network/response.js +9 -1
  233. package/lib/network/response.js.map +1 -0
  234. package/lib/resolvers/aws-context/aws-context.resolver.d.ts +7 -9
  235. package/lib/resolvers/aws-context/aws-context.resolver.d.ts.map +1 -0
  236. package/lib/resolvers/aws-context/aws-context.resolver.js +7 -9
  237. package/lib/resolvers/aws-context/aws-context.resolver.js.map +1 -0
  238. package/lib/resolvers/aws-context/index.d.ts +1 -0
  239. package/lib/resolvers/aws-context/index.d.ts.map +1 -0
  240. package/lib/resolvers/aws-context/index.js +6 -1
  241. package/lib/resolvers/aws-context/index.js.map +1 -0
  242. package/lib/resolvers/callback/callback.resolver.d.ts +9 -2
  243. package/lib/resolvers/callback/callback.resolver.d.ts.map +1 -0
  244. package/lib/resolvers/callback/callback.resolver.js +6 -2
  245. package/lib/resolvers/callback/callback.resolver.js.map +1 -0
  246. package/lib/resolvers/callback/index.d.ts +1 -0
  247. package/lib/resolvers/callback/index.d.ts.map +1 -0
  248. package/lib/resolvers/callback/index.js +6 -1
  249. package/lib/resolvers/callback/index.js.map +1 -0
  250. package/lib/resolvers/dummy/dummy.resolver.d.ts +5 -1
  251. package/lib/resolvers/dummy/dummy.resolver.d.ts.map +1 -0
  252. package/lib/resolvers/dummy/dummy.resolver.js +5 -1
  253. package/lib/resolvers/dummy/dummy.resolver.js.map +1 -0
  254. package/lib/resolvers/dummy/index.d.ts +1 -0
  255. package/lib/resolvers/dummy/index.d.ts.map +1 -0
  256. package/lib/resolvers/dummy/index.js +6 -1
  257. package/lib/resolvers/dummy/index.js.map +1 -0
  258. package/lib/resolvers/promise/index.d.ts +1 -0
  259. package/lib/resolvers/promise/index.d.ts.map +1 -0
  260. package/lib/resolvers/promise/index.js +6 -1
  261. package/lib/resolvers/promise/index.js.map +1 -0
  262. package/lib/resolvers/promise/promise.resolver.d.ts +5 -1
  263. package/lib/resolvers/promise/promise.resolver.d.ts.map +1 -0
  264. package/lib/resolvers/promise/promise.resolver.js +5 -1
  265. package/lib/resolvers/promise/promise.resolver.js.map +1 -0
  266. package/lib/serverless-adapter.d.ts +17 -12
  267. package/lib/serverless-adapter.d.ts.map +1 -0
  268. package/lib/serverless-adapter.js +17 -12
  269. package/lib/serverless-adapter.js.map +1 -0
  270. package/package.json +29 -4
  271. package/lib/@types/proxy-params.d.ts +0 -8
  272. package/lib/@types/proxy-params.js +0 -2
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@h4ad/serverless-adapter",
3
- "version": "2.3.0",
4
- "description": "This library enables you to utilize any Cloud or Event Source to respond to web and API requests using your existing Node.js application framework.",
3
+ "version": "2.4.0",
4
+ "description": "Run REST APIs and other web applications using your existing Node.js application framework (NestJS, Express, Koa, Hapi, Fastify and many others), on top of AWS, Huawei and many other clouds.",
5
5
  "main": "./lib/index.js",
6
6
  "files": [
7
7
  "lib/**/*"
@@ -10,11 +10,16 @@
10
10
  "install:peers": "npx npm-install-peers",
11
11
  "prepare": "husky install",
12
12
  "build": "tsc -p tsconfig.build.json",
13
+ "build:docs": "tsc -p tsconfig.doc.json",
13
14
  "clean": "rm -rf ./lib/",
14
15
  "cm": "cz",
15
16
  "coverage": "codecov",
16
17
  "lint": "eslint ./src/ ./test/ --fix",
17
18
  "semantic-release": "semantic-release",
19
+ "docs:generate": "npm run docs:generate:parsing && npm run docs:generate:markdown && npm run docs:generate:api-pages",
20
+ "docs:generate:parsing": "npm run build:docs && ts-node scripts/parse-docs.ts",
21
+ "docs:generate:markdown": "ts-node scripts/generate-markdown.ts",
22
+ "docs:generate:api-pages": "ts-node scripts/generate-api-pages.ts",
18
23
  "test:watch": "jest --watch",
19
24
  "test": "jest --coverage",
20
25
  "typecheck": "tsc --noEmit"
@@ -48,13 +53,19 @@
48
53
  "node.js",
49
54
  "http",
50
55
  "huawei",
51
- "functiongraph"
56
+ "functiongraph",
57
+ "trpc"
52
58
  ],
53
59
  "bugs": {
54
60
  "url": "https://github.com/H4ad/serverless-adapter/issues"
55
61
  },
56
62
  "homepage": "https://github.com/H4ad/serverless-adapter#readme",
57
63
  "devDependencies": {
64
+ "@microsoft/api-documenter": "7.17.16",
65
+ "@microsoft/api-extractor": "7.24.2",
66
+ "@microsoft/api-extractor-model": "7.17.3",
67
+ "@microsoft/tsdoc": "0.14.1",
68
+ "@rushstack/node-core-library": "^3.45.2",
58
69
  "@types/aws-lambda": "^8.10.92",
59
70
  "@types/body-parser": "^1.19.2",
60
71
  "@types/jest": "^27.4.0",
@@ -72,30 +83,41 @@
72
83
  "eslint-plugin-import": "^2.25.4",
73
84
  "eslint-plugin-node": "^11.1.0",
74
85
  "eslint-plugin-prettier": "^4.0.0",
86
+ "eslint-plugin-tsdoc": "^0.2.14",
75
87
  "husky": "^6.0.0",
76
88
  "jest": "^27.5.1",
77
89
  "lint-staged": "^10.5.4",
78
90
  "prettier": "^2.5.1",
79
- "semantic-release": "^19.0.2",
91
+ "semantic-release": "^19.0.3",
80
92
  "stream-mock": "^2.0.5",
81
93
  "supertest": "^6.2.3",
82
94
  "ts-jest": "^27.1.3",
83
95
  "ts-node": "^10.4.0",
96
+ "typedoc": "^0.22.13",
84
97
  "typescript": "^4.5.5"
85
98
  },
86
99
  "peerDependencies": {
87
100
  "@hapi/hapi": ">= 20.0.0",
101
+ "@trpc/server": ">= 9.0.0",
102
+ "@types/aws-lambda": ">= 8.10.92",
88
103
  "@types/express": ">= 4.15.4",
89
104
  "@types/hapi": ">= 18.0.7",
90
105
  "@types/koa": ">= 2.11.2",
91
106
  "express": ">= 4.15.4",
92
107
  "fastify": ">= 3.0.0",
108
+ "fastify-3": "npm:fastify@3.29.0",
93
109
  "koa": ">= 2.5.1"
94
110
  },
95
111
  "peerDependenciesMeta": {
96
112
  "@hapi/hapi": {
97
113
  "optional": true
98
114
  },
115
+ "@trpc/server": {
116
+ "optional": true
117
+ },
118
+ "@types/aws-lambda": {
119
+ "optional": true
120
+ },
99
121
  "express": {
100
122
  "optional": true
101
123
  },
@@ -113,6 +135,9 @@
113
135
  },
114
136
  "@types/koa": {
115
137
  "optional": true
138
+ },
139
+ "fastify-3": {
140
+ "optional": true
116
141
  }
117
142
  },
118
143
  "config": {
@@ -1,8 +0,0 @@
1
- /// <reference types="node" />
2
- import { RequestListener } from 'http';
3
- import { BinarySettings } from './binary-settings';
4
- export interface ProxyParams {
5
- app: RequestListener;
6
- binaryMimeTypes?: string[];
7
- binarySettings?: BinarySettings;
8
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });