@equinor/fusion-framework-module-http 6.3.5 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/dist/esm/lib/operators/capitalize-request-method.operator.js +1 -1
- package/dist/esm/lib/operators/fetch-request.schema.js +4 -17
- package/dist/esm/lib/operators/fetch-request.schema.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/lib/operators/fetch-request.schema.d.ts +134 -119
- package/dist/types/version.d.ts +1 -1
- package/package.json +3 -3
- package/src/lib/operators/capitalize-request-method.operator.ts +1 -1
- package/src/lib/operators/fetch-request.schema.ts +9 -24
- package/src/version.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
## 7.0.0
|
|
4
|
+
|
|
5
|
+
### Major Changes
|
|
6
|
+
|
|
7
|
+
- [#3394](https://github.com/equinor/fusion-framework/pull/3394) [`c222c67`](https://github.com/equinor/fusion-framework/commit/c222c673bc7cdefff6eb0cd9436bfa3d1f185295) Thanks [@odinr](https://github.com/odinr)! - chore: bump zod from 3.25.76 to 4.1.8
|
|
8
|
+
|
|
9
|
+
Updated source code to migrate from zod v3 to v4. Updated zod dependency from v3.25.76 to v4.1.8 and modified error handling in the HTTP module to use ZodError `.issues` property instead of `.errors` and replaced `z.custom()` with `z.string().refine()` for better v4 compatibility.
|
|
10
|
+
|
|
11
|
+
Key changes in source code:
|
|
12
|
+
|
|
13
|
+
- Updated ZodError `.errors` to `.issues` property in capitalize-request-method operator
|
|
14
|
+
- Replaced `z.custom()` with `z.string().refine()` for better v4 compatibility in request method casing validation
|
|
15
|
+
- Simplified error message configuration in request method verb validation
|
|
16
|
+
- Updated error handling to use new zod v4 error structure
|
|
17
|
+
|
|
18
|
+
Breaking changes: Error handling structure has changed to use new zod v4 error format.
|
|
19
|
+
|
|
20
|
+
Links:
|
|
21
|
+
|
|
22
|
+
- [Zod v4 Migration Guide](https://github.com/colinhacks/zod/releases/tag/v4.0.0)
|
|
23
|
+
- [Zod v4.1.8 Release Notes](https://github.com/colinhacks/zod/releases/tag/v4.1.8)
|
|
24
|
+
|
|
25
|
+
### Patch Changes
|
|
26
|
+
|
|
27
|
+
- Updated dependencies [[`c222c67`](https://github.com/equinor/fusion-framework/commit/c222c673bc7cdefff6eb0cd9436bfa3d1f185295)]:
|
|
28
|
+
- @equinor/fusion-framework-module-msal@5.0.0
|
|
29
|
+
|
|
3
30
|
## 6.3.5
|
|
4
31
|
|
|
5
32
|
### Patch Changes
|
|
@@ -9,7 +9,7 @@ export const capitalizeRequestMethodOperator = (options) => (request) => {
|
|
|
9
9
|
const { error, success, data } = requestMethodCasing().safeParse(request.method);
|
|
10
10
|
request.method = success ? data : request.method?.toUpperCase();
|
|
11
11
|
if (error && !options?.silent) {
|
|
12
|
-
for (const e of error.
|
|
12
|
+
for (const e of error.issues) {
|
|
13
13
|
console.warn(e.message);
|
|
14
14
|
}
|
|
15
15
|
}
|
|
@@ -5,16 +5,13 @@ import { z } from 'zod';
|
|
|
5
5
|
* @link https://www.rfc-editor.org/rfc/rfc7231#section-4.1
|
|
6
6
|
*/
|
|
7
7
|
export const requestMethodCasing = () => {
|
|
8
|
-
return z.
|
|
9
|
-
code: z.ZodIssueCode.custom,
|
|
10
|
-
validation: 'uppercase',
|
|
11
|
-
path: ['method'],
|
|
8
|
+
return z.string().refine((value) => value === value?.toUpperCase(), {
|
|
12
9
|
message: [
|
|
13
|
-
|
|
10
|
+
'Provided HTTP method must be in uppercase.',
|
|
14
11
|
'See RFC 7231 Section 4.1 for more information',
|
|
15
12
|
'https://www.rfc-editor.org/rfc/rfc7231#section-4.1',
|
|
16
13
|
].join(' '),
|
|
17
|
-
})
|
|
14
|
+
});
|
|
18
15
|
};
|
|
19
16
|
/**
|
|
20
17
|
* Creates a Zod enum schema for HTTP request methods.
|
|
@@ -30,17 +27,7 @@ export const requestMethodCasing = () => {
|
|
|
30
27
|
*/
|
|
31
28
|
export const requestMethodVerb = () => {
|
|
32
29
|
return z.enum(['GET', 'POST', 'PUT', 'DELETE', 'PATCH', 'OPTIONS', 'HEAD', 'CONNECT', 'TRACE'], {
|
|
33
|
-
|
|
34
|
-
const { received, options } = error;
|
|
35
|
-
return {
|
|
36
|
-
message: [
|
|
37
|
-
'Invalid request method.',
|
|
38
|
-
`Expected '${options.join(' | ')}', but received '${received}'.`,
|
|
39
|
-
'See RFC 2615 Section 9 for more information',
|
|
40
|
-
'https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html',
|
|
41
|
-
].join(' '),
|
|
42
|
-
};
|
|
43
|
-
},
|
|
30
|
+
message: 'Invalid request method. Expected one of: GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD, CONNECT, TRACE. See RFC 2615 Section 9 for more information: https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html',
|
|
44
31
|
});
|
|
45
32
|
};
|
|
46
33
|
export const requestMethod = () => requestMethodCasing().pipe(requestMethodVerb());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-request.schema.js","sourceRoot":"","sources":["../../../../src/lib/operators/fetch-request.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAsB,EAAE;IACzD,OAAO,CAAC,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"fetch-request.schema.js","sourceRoot":"","sources":["../../../../src/lib/operators/fetch-request.schema.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/version.js
CHANGED