@prosopo/api-express-router 3.0.47 → 3.1.18

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 (31) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +10 -6
  2. package/.turbo/turbo-build$colon$tsc.log +27 -21
  3. package/.turbo/turbo-build.log +11 -7
  4. package/CHANGELOG.md +332 -0
  5. package/dist/cjs/endpointAdapter/apiExpressDefaultEndpointAdapter.cjs +2 -1
  6. package/dist/cjs/middlewares/requestLoggerMiddleware.cjs +14 -4
  7. package/dist/endpointAdapter/apiExpressDefaultEndpointAdapter.d.ts +1 -1
  8. package/dist/endpointAdapter/apiExpressDefaultEndpointAdapter.d.ts.map +1 -1
  9. package/dist/endpointAdapter/apiExpressDefaultEndpointAdapter.js +2 -1
  10. package/dist/endpointAdapter/apiExpressDefaultEndpointAdapter.js.map +1 -1
  11. package/dist/index.d.ts +1 -1
  12. package/dist/middlewares/requestLoggerMiddleware.d.ts.map +1 -1
  13. package/dist/middlewares/requestLoggerMiddleware.js +11 -1
  14. package/dist/middlewares/requestLoggerMiddleware.js.map +1 -1
  15. package/dist/tests/unit/middlewares/authMiddleware.unit.test.js +2 -1
  16. package/dist/tests/unit/middlewares/authMiddleware.unit.test.js.map +1 -1
  17. package/express.d.ts +3 -1
  18. package/package.json +14 -8
  19. package/src/apiExpressRouterFactory.ts +68 -0
  20. package/src/endpointAdapter/apiExpressDefaultEndpointAdapter.ts +65 -0
  21. package/src/endpointAdapter/apiExpressEndpointAdapter.ts +28 -0
  22. package/src/errorHandler.ts +33 -0
  23. package/src/index.ts +37 -0
  24. package/src/middlewares/authMiddleware.ts +93 -0
  25. package/src/middlewares/requestLoggerMiddleware.ts +55 -0
  26. package/src/tests/unit/errorHandler.unit.test.ts +190 -0
  27. package/src/tests/unit/middlewares/authMiddleware.unit.test.ts +183 -0
  28. package/tsconfig.cjs.json +34 -0
  29. package/tsconfig.json +41 -0
  30. package/tsconfig.tsbuildinfo +1 -0
  31. package/tsconfig.types.json +9 -0
@@ -1,17 +1,19 @@
1
1
 
2
- > @prosopo/api-express-router@3.0.47 build:cjs
2
+ > @prosopo/api-express-router@3.1.18 build:cjs
3
3
  > NODE_ENV=${NODE_ENV:-development}; vite build --config vite.cjs.config.ts --mode $NODE_ENV
4
4
 
5
5
  ViteCommonJSConfig: .
6
6
  {
7
7
  tsConfigPaths: [
8
8
  '/home/runner/work/captcha/captcha/packages/api-route/tsconfig.json',
9
+ '/home/runner/work/captcha/captcha/packages/logger/tsconfig.json',
10
+ '/home/runner/work/captcha/captcha/packages/util/tsconfig.json',
9
11
  '/home/runner/work/captcha/captcha/packages/common/tsconfig.json',
10
12
  '/home/runner/work/captcha/captcha/packages/locale/tsconfig.json',
11
13
  '/home/runner/work/captcha/captcha/packages/types/tsconfig.json',
12
- '/home/runner/work/captcha/captcha/packages/util/tsconfig.json',
13
14
  '/home/runner/work/captcha/captcha/packages/util-crypto/tsconfig.json',
14
15
  '/home/runner/work/captcha/captcha/packages/env/tsconfig.json',
16
+ '/home/runner/work/captcha/captcha/packages/ipinfo/tsconfig.json',
15
17
  '/home/runner/work/captcha/captcha/packages/database/tsconfig.json',
16
18
  '/home/runner/work/captcha/captcha/packages/types-database/tsconfig.json',
17
19
  '/home/runner/work/captcha/captcha/packages/user-access-policy/tsconfig.json',
@@ -24,12 +26,14 @@ ViteCommonJSConfig: .
24
26
  {
25
27
  externals: [
26
28
  '@prosopo/api-route',
29
+ '@prosopo/logger',
30
+ '@prosopo/util',
27
31
  '@prosopo/common',
28
32
  '@prosopo/locale',
29
33
  '@prosopo/types',
30
- '@prosopo/util',
31
34
  '@prosopo/util-crypto',
32
35
  '@prosopo/env',
36
+ '@prosopo/ipinfo',
33
37
  '@prosopo/database',
34
38
  '@prosopo/types-database',
35
39
  '@prosopo/user-access-policy',
@@ -46,9 +50,9 @@ Build end
46
50
  ✓ 6 modules transformed.
47
51
  rendering chunks...
48
52
  dist/cjs/errorHandler.cjs 0.49 kB
49
- dist/cjs/middlewares/requestLoggerMiddleware.cjs 0.69 kB
50
53
  dist/cjs/apiExpressRouterFactory.cjs 0.92 kB
51
- dist/cjs/endpointAdapter/apiExpressDefaultEndpointAdapter.cjs 1.09 kB
54
+ dist/cjs/middlewares/requestLoggerMiddleware.cjs 1.06 kB
55
+ dist/cjs/endpointAdapter/apiExpressDefaultEndpointAdapter.cjs 1.13 kB
52
56
  dist/cjs/index.cjs 1.16 kB
53
57
  dist/cjs/middlewares/authMiddleware.cjs 1.86 kB
54
- ✓ built in 118ms
58
+ ✓ built in 104ms
@@ -1,15 +1,17 @@
1
1
 
2
- > @prosopo/api-express-router@3.0.47 build:tsc
2
+ > @prosopo/api-express-router@3.1.18 build:tsc
3
3
  > tsc --build --verbose
4
4
 
5
- 4:57:39 PM - Projects in this build:
5
+ 10:14:05 AM - Projects in this build:
6
6
  * ../../dev/config/tsconfig.json
7
- * ../locale/tsconfig.json
8
7
  * ../util/tsconfig.json
8
+ * ../logger/tsconfig.json
9
+ * ../api-route/tsconfig.json
10
+ * ../locale/tsconfig.json
9
11
  * ../util-crypto/tsconfig.json
10
12
  * ../types/tsconfig.json
11
13
  * ../common/tsconfig.json
12
- * ../api-route/tsconfig.json
14
+ * ../ipinfo/tsconfig.json
13
15
  * ../redis-client/tsconfig.json
14
16
  * ../api/tsconfig.json
15
17
  * ../user-access-policy/tsconfig.json
@@ -20,37 +22,41 @@
20
22
  * ../env/tsconfig.json
21
23
  * tsconfig.json
22
24
 
23
- 4:57:39 PM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/dependencies.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
25
+ 10:14:05 AM - Project '../../dev/config/tsconfig.json' is up to date because newest input '../../dev/config/src/webpack/webpack.config.ts' is older than output '../../dev/config/tsconfig.tsbuildinfo'
26
+
27
+ 10:14:05 AM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/url.ts' is older than output '../util/tsconfig.tsbuildinfo'
28
+
29
+ 10:14:05 AM - Project '../logger/tsconfig.json' is up to date because newest input '../logger/src/index.ts' is older than output '../logger/tsconfig.tsbuildinfo'
24
30
 
25
- 4:57:39 PM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/translationKey.ts' is older than output '../locale/tsconfig.tsbuildinfo'
31
+ 10:14:05 AM - Project '../api-route/tsconfig.json' is up to date because newest input '../api-route/src/apiRoutes.ts' is older than output '../api-route/tsconfig.tsbuildinfo'
26
32
 
27
- 4:57:39 PM - Project '../util/tsconfig.json' is up to date because newest input '../util/src/verifyRecency.ts' is older than output '../util/tsconfig.tsbuildinfo'
33
+ 10:14:05 AM - Project '../locale/tsconfig.json' is up to date because newest input '../locale/src/util.ts' is older than output '../locale/tsconfig.tsbuildinfo'
28
34
 
29
- 4:57:39 PM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
35
+ 10:14:05 AM - Project '../util-crypto/tsconfig.json' is up to date because newest input '../util-crypto/src/types.ts' is older than output '../util-crypto/tsconfig.tsbuildinfo'
30
36
 
31
- 4:57:39 PM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/procaptcha/api.ts' is older than output '../types/tsconfig.tsbuildinfo'
37
+ 10:14:05 AM - Project '../types/tsconfig.json' is up to date because newest input '../types/src/procaptcha/api.ts' is older than output '../types/tsconfig.tsbuildinfo'
32
38
 
33
- 4:57:39 PM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/logger.ts' is older than output '../common/tsconfig.tsbuildinfo'
39
+ 10:14:05 AM - Project '../common/tsconfig.json' is up to date because newest input '../common/src/index.ts' is older than output '../common/tsconfig.tsbuildinfo'
34
40
 
35
- 4:57:39 PM - Project '../api-route/tsconfig.json' is up to date because newest input '../api-route/src/index.ts' is older than output '../api-route/tsconfig.tsbuildinfo'
41
+ 10:14:05 AM - Project '../ipinfo/tsconfig.json' is up to date because newest input '../ipinfo/src/IpInfoService.ts' is older than output '../ipinfo/tsconfig.tsbuildinfo'
36
42
 
37
- 4:57:39 PM - Project '../redis-client/tsconfig.json' is up to date because newest input '../redis-client/src/index.ts' is older than output '../redis-client/tsconfig.tsbuildinfo'
43
+ 10:14:05 AM - Project '../redis-client/tsconfig.json' is up to date because newest input '../redis-client/src/index.ts' is older than output '../redis-client/tsconfig.tsbuildinfo'
38
44
 
39
- 4:57:39 PM - Project '../api/tsconfig.json' is up to date because newest input '../api/src/index.ts' is older than output '../api/tsconfig.tsbuildinfo'
45
+ 10:14:05 AM - Project '../api/tsconfig.json' is up to date because newest input '../api/src/index.ts' is older than output '../api/tsconfig.tsbuildinfo'
40
46
 
41
- 4:57:39 PM - Project '../user-access-policy/tsconfig.json' is up to date because newest input '../user-access-policy/src/transformRule.ts' is older than output '../user-access-policy/tsconfig.tsbuildinfo'
47
+ 10:14:05 AM - Project '../user-access-policy/tsconfig.json' is up to date because newest input '../user-access-policy/src/transformRule.ts' is older than output '../user-access-policy/tsconfig.tsbuildinfo'
42
48
 
43
- 4:57:39 PM - Project '../types-database/tsconfig.json' is up to date because newest input '../types-database/src/index.ts' is older than output '../types-database/tsconfig.tsbuildinfo'
49
+ 10:14:05 AM - Project '../types-database/tsconfig.json' is up to date because newest input '../types-database/src/types/captcha.ts' is older than output '../types-database/tsconfig.tsbuildinfo'
44
50
 
45
- 4:57:39 PM - Project '../database/tsconfig.json' is up to date because newest input '../database/src/index.ts' is older than output '../database/tsconfig.tsbuildinfo'
51
+ 10:14:05 AM - Project '../database/tsconfig.json' is up to date because newest input '../database/src/tests/unit/databases/centralDbStreamer.unit.test.ts' is older than output '../database/tsconfig.tsbuildinfo'
46
52
 
47
- 4:57:39 PM - Project '../keyring/tsconfig.json' is up to date because newest input '../keyring/src/index.ts' is older than output '../keyring/tsconfig.tsbuildinfo'
53
+ 10:14:05 AM - Project '../keyring/tsconfig.json' is up to date because newest input '../keyring/src/index.ts' is older than output '../keyring/tsconfig.tsbuildinfo'
48
54
 
49
- 4:57:39 PM - Project '../types-env/tsconfig.json' is up to date because newest input '../types-env/src/env.ts' is older than output '../types-env/tsconfig.tsbuildinfo'
55
+ 10:14:05 AM - Project '../types-env/tsconfig.json' is up to date because newest input '../types-env/src/env.ts' is older than output '../types-env/tsconfig.tsbuildinfo'
50
56
 
51
- 4:57:39 PM - Project '../env/tsconfig.json' is up to date because newest input '../env/src/env.ts' is older than output '../env/tsconfig.tsbuildinfo'
57
+ 10:14:05 AM - Project '../env/tsconfig.json' is up to date because newest input '../env/src/env.ts' is older than output '../env/tsconfig.tsbuildinfo'
52
58
 
53
- 4:57:39 PM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
59
+ 10:14:05 AM - Project 'tsconfig.json' is out of date because output file 'tsconfig.tsbuildinfo' does not exist
54
60
 
55
- 4:57:39 PM - Building project '/home/runner/work/captcha/captcha/packages/api-express-router/tsconfig.json'...
61
+ 10:14:05 AM - Building project '/home/runner/work/captcha/captcha/packages/api-express-router/tsconfig.json'...
56
62
 
@@ -1,21 +1,23 @@
1
1
 
2
- > @prosopo/api-express-router@3.0.47 build
2
+ > @prosopo/api-express-router@3.1.18 build
3
3
  > npm run build:cross-env -- --mode ${NODE_ENV:-development}
4
4
 
5
5
 
6
- > @prosopo/api-express-router@3.0.47 build:cross-env
6
+ > @prosopo/api-express-router@3.1.18 build:cross-env
7
7
  > vite build --config vite.esm.config.ts --mode production
8
8
 
9
9
  ViteEsmConfig: .
10
10
  {
11
11
  tsConfigPaths: [
12
12
  '/home/runner/work/captcha/captcha/packages/api-route/tsconfig.json',
13
+ '/home/runner/work/captcha/captcha/packages/logger/tsconfig.json',
14
+ '/home/runner/work/captcha/captcha/packages/util/tsconfig.json',
13
15
  '/home/runner/work/captcha/captcha/packages/common/tsconfig.json',
14
16
  '/home/runner/work/captcha/captcha/packages/locale/tsconfig.json',
15
17
  '/home/runner/work/captcha/captcha/packages/types/tsconfig.json',
16
- '/home/runner/work/captcha/captcha/packages/util/tsconfig.json',
17
18
  '/home/runner/work/captcha/captcha/packages/util-crypto/tsconfig.json',
18
19
  '/home/runner/work/captcha/captcha/packages/env/tsconfig.json',
20
+ '/home/runner/work/captcha/captcha/packages/ipinfo/tsconfig.json',
19
21
  '/home/runner/work/captcha/captcha/packages/database/tsconfig.json',
20
22
  '/home/runner/work/captcha/captcha/packages/types-database/tsconfig.json',
21
23
  '/home/runner/work/captcha/captcha/packages/user-access-policy/tsconfig.json',
@@ -28,12 +30,14 @@ ViteEsmConfig: .
28
30
  {
29
31
  externals: [
30
32
  '@prosopo/api-route',
33
+ '@prosopo/logger',
34
+ '@prosopo/util',
31
35
  '@prosopo/common',
32
36
  '@prosopo/locale',
33
37
  '@prosopo/types',
34
- '@prosopo/util',
35
38
  '@prosopo/util-crypto',
36
39
  '@prosopo/env',
40
+ '@prosopo/ipinfo',
37
41
  '@prosopo/database',
38
42
  '@prosopo/types-database',
39
43
  '@prosopo/user-access-policy',
@@ -50,9 +54,9 @@ Build end
50
54
  ✓ 6 modules transformed.
51
55
  rendering chunks...
52
56
  dist/errorHandler.js 0.39 kB
53
- dist/middlewares/requestLoggerMiddleware.js 0.58 kB
54
57
  dist/index.js 0.78 kB
55
58
  dist/apiExpressRouterFactory.js 0.78 kB
56
- dist/endpointAdapter/apiExpressDefaultEndpointAdapter.js 0.98 kB
59
+ dist/middlewares/requestLoggerMiddleware.js 0.94 kB
60
+ dist/endpointAdapter/apiExpressDefaultEndpointAdapter.js 1.02 kB
57
61
  dist/middlewares/authMiddleware.js 1.73 kB
58
- ✓ built in 205ms
62
+ ✓ built in 161ms
package/CHANGELOG.md CHANGED
@@ -1,5 +1,337 @@
1
1
  # @prosopo/api-express-router
2
2
 
3
+ ## 3.1.18
4
+ ### Patch Changes
5
+
6
+ - Updated dependencies [b03dad1]
7
+ - @prosopo/types@4.3.1
8
+ - @prosopo/env@3.5.8
9
+
10
+ ## 3.1.17
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies [a1d60db]
14
+ - Updated dependencies [2392aaf]
15
+ - Updated dependencies [97cf7bd]
16
+ - Updated dependencies [6ca1125]
17
+ - Updated dependencies [32a591b]
18
+ - @prosopo/types@4.3.0
19
+ - @prosopo/logger@1.0.2
20
+ - @prosopo/common@3.1.38
21
+ - @prosopo/env@3.5.7
22
+ - @prosopo/api-route@2.6.46
23
+
24
+ ## 3.1.16
25
+ ### Patch Changes
26
+
27
+ - Updated dependencies [6c26669]
28
+ - Updated dependencies [f7f9ec5]
29
+ - @prosopo/types@4.2.1
30
+ - @prosopo/env@3.5.6
31
+
32
+ ## 3.1.15
33
+ ### Patch Changes
34
+
35
+ - 0fd81af: Extract the logger into its own `@prosopo/logger` package, out of `@prosopo/common`. Consumers now import logger symbols from `@prosopo/logger`; `@prosopo/common` no longer re-exports them. Unused `@prosopo/common` dependencies pruned where the only usage was the logger.
36
+ - Updated dependencies [0fd81af]
37
+ - @prosopo/api-route@2.6.45
38
+ - @prosopo/common@3.1.37
39
+ - @prosopo/env@3.5.5
40
+ - @prosopo/logger@1.0.1
41
+
42
+ ## 3.1.14
43
+ ### Patch Changes
44
+
45
+ - Updated dependencies [20cae63]
46
+ - Updated dependencies [4d9923e]
47
+ - @prosopo/types@4.2.0
48
+ - @prosopo/env@3.5.4
49
+
50
+ ## 3.1.13
51
+ ### Patch Changes
52
+
53
+ - Updated dependencies [d351362]
54
+ - @prosopo/types@4.1.4
55
+ - @prosopo/env@3.5.3
56
+
57
+ ## 3.1.12
58
+ ### Patch Changes
59
+
60
+ - Updated dependencies [e2711ae]
61
+ - Updated dependencies [5786629]
62
+ - @prosopo/types@4.1.3
63
+ - @prosopo/locale@3.2.4
64
+ - @prosopo/common@3.1.36
65
+ - @prosopo/env@3.5.2
66
+ - @prosopo/api-route@2.6.44
67
+
68
+ ## 3.1.11
69
+ ### Patch Changes
70
+
71
+ - @prosopo/types@4.1.2
72
+ - @prosopo/env@3.5.1
73
+
74
+ ## 3.1.10
75
+ ### Patch Changes
76
+
77
+ - Updated dependencies [53bfd45]
78
+ - Updated dependencies [91958da]
79
+ - @prosopo/locale@3.2.3
80
+ - @prosopo/env@3.5.0
81
+ - @prosopo/types@4.1.1
82
+ - @prosopo/common@3.1.35
83
+ - @prosopo/api-route@2.6.43
84
+
85
+ ## 3.1.9
86
+ ### Patch Changes
87
+
88
+ - Updated dependencies [6a741ce]
89
+ - @prosopo/types@4.1.0
90
+ - @prosopo/env@3.4.9
91
+
92
+ ## 3.1.8
93
+ ### Patch Changes
94
+
95
+ - Updated dependencies [3c0be68]
96
+ - Updated dependencies [f9ea09d]
97
+ - Updated dependencies [4aae4e6]
98
+ - Updated dependencies [d865319]
99
+ - Updated dependencies [753304b]
100
+ - Updated dependencies [8bb7286]
101
+ - Updated dependencies [f9ea09d]
102
+ - Updated dependencies [4aae4e6]
103
+ - Updated dependencies [4993813]
104
+ - @prosopo/types@4.0.0
105
+ - @prosopo/locale@3.2.2
106
+ - @prosopo/common@3.1.34
107
+ - @prosopo/env@3.4.8
108
+ - @prosopo/api-route@2.6.42
109
+
110
+ ## 3.1.7
111
+ ### Patch Changes
112
+
113
+ - Updated dependencies [819ed95]
114
+ - @prosopo/types@3.16.1
115
+ - @prosopo/env@3.4.7
116
+
117
+ ## 3.1.6
118
+ ### Patch Changes
119
+
120
+ - @prosopo/env@3.4.6
121
+
122
+ ## 3.1.5
123
+ ### Patch Changes
124
+
125
+ - @prosopo/env@3.4.5
126
+
127
+ ## 3.1.4
128
+ ### Patch Changes
129
+
130
+ - @prosopo/env@3.4.4
131
+
132
+ ## 3.1.3
133
+ ### Patch Changes
134
+
135
+ - Updated dependencies [f6a4402]
136
+ - Updated dependencies [99dfb44]
137
+ - @prosopo/types@3.16.0
138
+ - @prosopo/env@3.4.3
139
+
140
+ ## 3.1.2
141
+ ### Patch Changes
142
+
143
+ - Updated dependencies [3e54c0a]
144
+ - @prosopo/types@3.15.0
145
+ - @prosopo/env@3.4.2
146
+
147
+ ## 3.1.1
148
+ ### Patch Changes
149
+
150
+ - Updated dependencies [946a8ba]
151
+ - Updated dependencies [5614814]
152
+ - Updated dependencies [b94890c]
153
+ - @prosopo/types@3.14.1
154
+ - @prosopo/locale@3.2.1
155
+ - @prosopo/common@3.1.33
156
+ - @prosopo/env@3.4.1
157
+ - @prosopo/api-route@2.6.41
158
+
159
+ ## 3.1.0
160
+ ### Minor Changes
161
+
162
+ - 42650db: Add better spam rules and move ipinfo service to local instead of external
163
+
164
+ ### Patch Changes
165
+
166
+ - Updated dependencies [fc514dd]
167
+ - Updated dependencies [42650db]
168
+ - @prosopo/locale@3.2.0
169
+ - @prosopo/types@3.14.0
170
+ - @prosopo/env@3.4.0
171
+ - @prosopo/common@3.1.32
172
+ - @prosopo/api-route@2.6.40
173
+
174
+ ## 3.0.70
175
+ ### Patch Changes
176
+
177
+ - Updated dependencies [4a9c518]
178
+ - @prosopo/common@3.1.31
179
+ - @prosopo/api-route@2.6.39
180
+ - @prosopo/env@3.3.15
181
+
182
+ ## 3.0.69
183
+ ### Patch Changes
184
+
185
+ - @prosopo/types@3.13.3
186
+ - @prosopo/env@3.3.14
187
+
188
+ ## 3.0.68
189
+ ### Patch Changes
190
+
191
+ - @prosopo/types@3.13.2
192
+ - @prosopo/env@3.3.13
193
+
194
+ ## 3.0.67
195
+ ### Patch Changes
196
+
197
+ - @prosopo/types@3.13.1
198
+ - @prosopo/env@3.3.12
199
+
200
+ ## 3.0.66
201
+ ### Patch Changes
202
+
203
+ - Updated dependencies [e6d9553]
204
+ - @prosopo/types@3.13.0
205
+ - @prosopo/env@3.3.11
206
+
207
+ ## 3.0.65
208
+ ### Patch Changes
209
+
210
+ - Updated dependencies [d5082a9]
211
+ - Updated dependencies [e1ea65f]
212
+ - Updated dependencies [c316257]
213
+ - @prosopo/types@3.12.3
214
+ - @prosopo/env@3.3.10
215
+
216
+ ## 3.0.64
217
+ ### Patch Changes
218
+
219
+ - Updated dependencies [adb89a6]
220
+ - @prosopo/locale@3.1.29
221
+ - @prosopo/types@3.12.2
222
+ - @prosopo/env@3.3.9
223
+ - @prosopo/common@3.1.30
224
+ - @prosopo/api-route@2.6.38
225
+
226
+ ## 3.0.63
227
+ ### Patch Changes
228
+
229
+ - Updated dependencies [c5ee492]
230
+ - Updated dependencies [a90eb54]
231
+ - @prosopo/common@3.1.29
232
+ - @prosopo/types@3.12.1
233
+ - @prosopo/api-route@2.6.37
234
+ - @prosopo/env@3.3.8
235
+
236
+ ## 3.0.62
237
+ ### Patch Changes
238
+
239
+ - Updated dependencies [676c5f2]
240
+ - Updated dependencies [feaca02]
241
+ - @prosopo/types@3.12.0
242
+ - @prosopo/env@3.3.7
243
+
244
+ ## 3.0.61
245
+ ### Patch Changes
246
+
247
+ - Updated dependencies [8148587]
248
+ - @prosopo/types@3.11.1
249
+ - @prosopo/env@3.3.6
250
+
251
+ ## 3.0.60
252
+ ### Patch Changes
253
+
254
+ - @prosopo/env@3.3.5
255
+
256
+ ## 3.0.59
257
+ ### Patch Changes
258
+
259
+ - ca7f4ad: Attach site key and user to logger earlier
260
+ - Updated dependencies [7f6ffc5]
261
+ - @prosopo/types@3.11.0
262
+ - @prosopo/env@3.3.4
263
+
264
+ ## 3.0.58
265
+ ### Patch Changes
266
+
267
+ - Updated dependencies [93fa086]
268
+ - @prosopo/types@3.10.2
269
+ - @prosopo/env@3.3.3
270
+
271
+ ## 3.0.57
272
+ ### Patch Changes
273
+
274
+ - Updated dependencies [cde7550]
275
+ - @prosopo/types@3.10.1
276
+ - @prosopo/env@3.3.2
277
+
278
+ ## 3.0.56
279
+ ### Patch Changes
280
+
281
+ - Updated dependencies [ad6d622]
282
+ - @prosopo/types@3.10.0
283
+ - @prosopo/env@3.3.1
284
+
285
+ ## 3.0.55
286
+ ### Patch Changes
287
+
288
+ - Updated dependencies [ff58a70]
289
+ - @prosopo/types@3.9.0
290
+ - @prosopo/env@3.3.0
291
+
292
+ ## 3.0.54
293
+ ### Patch Changes
294
+
295
+ - @prosopo/env@3.2.42
296
+
297
+ ## 3.0.53
298
+ ### Patch Changes
299
+
300
+ - Updated dependencies [d2431cd]
301
+ - @prosopo/types@3.8.4
302
+ - @prosopo/env@3.2.41
303
+
304
+ ## 3.0.52
305
+ ### Patch Changes
306
+
307
+ - @prosopo/env@3.2.40
308
+
309
+ ## 3.0.51
310
+ ### Patch Changes
311
+
312
+ - Updated dependencies [bd6995b]
313
+ - @prosopo/types@3.8.3
314
+ - @prosopo/env@3.2.39
315
+
316
+ ## 3.0.50
317
+ ### Patch Changes
318
+
319
+ - Updated dependencies [9633e58]
320
+ - @prosopo/types@3.8.2
321
+ - @prosopo/env@3.2.38
322
+
323
+ ## 3.0.49
324
+ ### Patch Changes
325
+
326
+ - Updated dependencies [f52a5c1]
327
+ - @prosopo/types@3.8.1
328
+ - @prosopo/env@3.2.37
329
+
330
+ ## 3.0.48
331
+ ### Patch Changes
332
+
333
+ - @prosopo/env@3.2.36
334
+
3
335
  ## 3.0.47
4
336
  ### Patch Changes
5
337
 
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const common = require("@prosopo/common");
4
+ const logger = require("@prosopo/logger");
4
5
  class ApiExpressDefaultEndpointAdapter {
5
6
  constructor(logLevel, errorStatusCode) {
6
7
  this.logLevel = logLevel;
@@ -22,7 +23,7 @@ class ApiExpressDefaultEndpointAdapter {
22
23
  args,
23
24
  request.logger
24
25
  );
25
- const responseObject = common.stringifyBigInts(apiEndpointResponse);
26
+ const responseObject = logger.stringifyBigInts(apiEndpointResponse);
26
27
  response.json(responseObject);
27
28
  } catch (error) {
28
29
  request.logger.error(() => ({
@@ -1,19 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const common = require("@prosopo/common");
3
+ const logger = require("@prosopo/logger");
4
4
  const uuid = require("uuid");
5
+ const getHeaderValue = (req, headerName) => {
6
+ if (headerName in req.headers && req.headers[headerName]) {
7
+ return req.headers[headerName].toString();
8
+ }
9
+ return void 0;
10
+ };
5
11
  function requestLoggerMiddleware(env) {
6
12
  return (req, res, next) => {
7
13
  const requestId = req.headers["x-request-id"] || `e-${uuid.v4()}`;
14
+ const user = getHeaderValue(req, "prosopo-user");
15
+ const siteKey = getHeaderValue(req, "prosopo-site-key");
8
16
  const sessionId = req.body?.sessionId ? req.body.sessionId : null;
9
- const logger = common.getLogger(
10
- common.parseLogLevel(env.config.logLevel),
17
+ const logger$1 = logger.getLogger(
18
+ logger.parseLogLevel(env.config.logLevel),
11
19
  "request-logger"
12
20
  ).with({
13
21
  requestId,
22
+ ...user ? { user } : {},
23
+ ...siteKey ? { siteKey } : {},
14
24
  ...sessionId ? { sessionId } : {}
15
25
  });
16
- req.logger = logger;
26
+ req.logger = logger$1;
17
27
  req.requestId = requestId;
18
28
  next();
19
29
  };
@@ -1,5 +1,5 @@
1
1
  import type { ApiEndpoint } from "@prosopo/api-route";
2
- import { type LogLevel } from "@prosopo/common";
2
+ import { type LogLevel } from "@prosopo/logger";
3
3
  import type { NextFunction, Request, Response } from "express";
4
4
  import type { ZodType } from "zod";
5
5
  import type { ApiExpressEndpointAdapter } from "./apiExpressEndpointAdapter.js";
@@ -1 +1 @@
1
- {"version":3,"file":"apiExpressDefaultEndpointAdapter.d.ts","sourceRoot":"","sources":["../../src/endpointAdapter/apiExpressDefaultEndpointAdapter.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACN,KAAK,QAAQ,EAGb,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAEhF,cAAM,gCAAiC,YAAW,yBAAyB;IAEzE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe;gBADf,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,MAAM;IAG5B,aAAa,CACzB,QAAQ,EAAE,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC,EAC1C,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC;CA8BhB;AAED,OAAO,EAAE,gCAAgC,EAAE,CAAC"}
1
+ {"version":3,"file":"apiExpressDefaultEndpointAdapter.d.ts","sourceRoot":"","sources":["../../src/endpointAdapter/apiExpressDefaultEndpointAdapter.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,KAAK,QAAQ,EAAoB,MAAM,iBAAiB,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAEhF,cAAM,gCAAiC,YAAW,yBAAyB;IAEzE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe;gBADf,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,MAAM;IAG5B,aAAa,CACzB,QAAQ,EAAE,WAAW,CAAC,OAAO,GAAG,SAAS,CAAC,EAC1C,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC;CA8BhB;AAED,OAAO,EAAE,gCAAgC,EAAE,CAAC"}
@@ -1,4 +1,5 @@
1
- import { ProsopoApiError, stringifyBigInts } from "@prosopo/common";
1
+ import { ProsopoApiError } from "@prosopo/common";
2
+ import { stringifyBigInts } from "@prosopo/logger";
2
3
  class ApiExpressDefaultEndpointAdapter {
3
4
  constructor(logLevel, errorStatusCode) {
4
5
  this.logLevel = logLevel;
@@ -1 +1 @@
1
- {"version":3,"file":"apiExpressDefaultEndpointAdapter.js","sourceRoot":"","sources":["../../src/endpointAdapter/apiExpressDefaultEndpointAdapter.ts"],"names":[],"mappings":"AAeA,OAAO,EAEN,eAAe,EACf,gBAAgB,GAChB,MAAM,iBAAiB,CAAC;AAKzB,MAAM,gCAAgC;IACrC,YACkB,QAAkB,EAClB,eAAuB;QADvB,aAAQ,GAAR,QAAQ,CAAU;QAClB,oBAAe,GAAf,eAAe,CAAQ;IACtC,CAAC;IAEG,KAAK,CAAC,aAAa,CACzB,QAA0C,EAC1C,OAAgB,EAChB,QAAkB,EAClB,IAAkB;QAElB,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACJ,IAAI,GAAG,QAAQ,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,IAAI,CACV,IAAI,eAAe,CAAC,iBAAiB,EAAE;gBACtC,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE;aACpC,CAAC,CACF,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,mBAAmB,GAAG,MAAM,QAAQ,CAAC,cAAc,CACxD,IAAI,EACJ,OAAO,CAAC,MAAM,CACd,CAAC;YAGF,MAAM,cAAc,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;YAE7D,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC3B,GAAG,EAAE,KAAK;aACV,CAAC,CAAC,CAAC;YAEJ,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QACjE,CAAC;IACF,CAAC;CACD;AAED,OAAO,EAAE,gCAAgC,EAAE,CAAC"}
1
+ {"version":3,"file":"apiExpressDefaultEndpointAdapter.js","sourceRoot":"","sources":["../../src/endpointAdapter/apiExpressDefaultEndpointAdapter.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAiB,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAKlE,MAAM,gCAAgC;IACrC,YACkB,QAAkB,EAClB,eAAuB;QADvB,aAAQ,GAAR,QAAQ,CAAU;QAClB,oBAAe,GAAf,eAAe,CAAQ;IACtC,CAAC;IAEG,KAAK,CAAC,aAAa,CACzB,QAA0C,EAC1C,OAAgB,EAChB,QAAkB,EAClB,IAAkB;QAElB,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACJ,IAAI,GAAG,QAAQ,CAAC,oBAAoB,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,IAAI,CACV,IAAI,eAAe,CAAC,iBAAiB,EAAE;gBACtC,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE;aACpC,CAAC,CACF,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,mBAAmB,GAAG,MAAM,QAAQ,CAAC,cAAc,CACxD,IAAI,EACJ,OAAO,CAAC,MAAM,CACd,CAAC;YAGF,MAAM,cAAc,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;YAE7D,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC3B,GAAG,EAAE,KAAK;aACV,CAAC,CAAC,CAAC;YAEJ,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QACjE,CAAC;IACF,CAAC;CACD;AAED,OAAO,EAAE,gCAAgC,EAAE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { LogLevel } from "@prosopo/common";
1
+ import type { LogLevel } from "@prosopo/logger";
2
2
  import { ApiExpressRouterFactory } from "./apiExpressRouterFactory.js";
3
3
  import type { ApiExpressEndpointAdapter } from "./endpointAdapter/apiExpressEndpointAdapter.js";
4
4
  declare const apiExpressRouterFactory: ApiExpressRouterFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"requestLoggerMiddleware.d.ts","sourceRoot":"","sources":["../../src/middlewares/requestLoggerMiddleware.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG/D,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,mBAAmB,SAClD,OAAO,OAAO,QAAQ,QAAQ,YAAY,UAqBvD"}
1
+ {"version":3,"file":"requestLoggerMiddleware.d.ts","sourceRoot":"","sources":["../../src/middlewares/requestLoggerMiddleware.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAa/D,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,mBAAmB,SAClD,OAAO,OAAO,QAAQ,QAAQ,YAAY,UAwBvD"}
@@ -1,14 +1,24 @@
1
- import { getLogger, parseLogLevel } from "@prosopo/common";
1
+ import { getLogger, parseLogLevel } from "@prosopo/logger";
2
2
  import { v4 } from "uuid";
3
+ const getHeaderValue = (req, headerName) => {
4
+ if (headerName in req.headers && req.headers[headerName]) {
5
+ return req.headers[headerName].toString();
6
+ }
7
+ return void 0;
8
+ };
3
9
  function requestLoggerMiddleware(env) {
4
10
  return (req, res, next) => {
5
11
  const requestId = req.headers["x-request-id"] || `e-${v4()}`;
12
+ const user = getHeaderValue(req, "prosopo-user");
13
+ const siteKey = getHeaderValue(req, "prosopo-site-key");
6
14
  const sessionId = req.body?.sessionId ? req.body.sessionId : null;
7
15
  const logger = getLogger(
8
16
  parseLogLevel(env.config.logLevel),
9
17
  "request-logger"
10
18
  ).with({
11
19
  requestId,
20
+ ...user ? { user } : {},
21
+ ...siteKey ? { siteKey } : {},
12
22
  ...sessionId ? { sessionId } : {}
13
23
  });
14
24
  req.logger = logger;
@@ -1 +1 @@
1
- {"version":3,"file":"requestLoggerMiddleware.js","sourceRoot":"","sources":["../../src/middlewares/requestLoggerMiddleware.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAG3D,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,MAAM,UAAU,uBAAuB,CAAC,GAAwB;IAC/D,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;QAC1D,MAAM,SAAS,GACb,GAAG,CAAC,OAAO,CAAC,cAAc,CAAY,IAAI,KAAK,MAAM,EAAE,EAAE,CAAC;QAE5D,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QAElE,MAAM,MAAM,GAAG,SAAS,CACvB,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAClC,gBAAgB,CAChB,CAAC,IAAI,CAAC;YACN,SAAS;YACT,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnC,CAAC,CAAC;QAGH,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;QACpB,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QAG1B,IAAI,EAAE,CAAC;IACR,CAAC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"requestLoggerMiddleware.js","sourceRoot":"","sources":["../../src/middlewares/requestLoggerMiddleware.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE3D,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,MAAM,cAAc,GAAG,CACtB,GAAY,EACZ,UAAkB,EACG,EAAE;IACvB,IAAI,UAAU,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1D,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,UAAU,uBAAuB,CAAC,GAAwB;IAC/D,OAAO,CAAC,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;QAC1D,MAAM,SAAS,GACb,GAAG,CAAC,OAAO,CAAC,cAAc,CAAY,IAAI,KAAK,MAAM,EAAE,EAAE,CAAC;QAC5D,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACxD,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QAElE,MAAM,MAAM,GAAG,SAAS,CACvB,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAClC,gBAAgB,CAChB,CAAC,IAAI,CAAC;YACN,SAAS;YACT,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnC,CAAC,CAAC;QAGH,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;QACpB,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;QAG1B,IAAI,EAAE,CAAC;IACR,CAAC,CAAC;AACH,CAAC"}