@forgerock/sdk-request-middleware 0.0.0-beta-20251003204059 → 0.0.0-beta-20251222204813

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/CHANGELOG.md +7 -1
  2. package/coverage/block-navigation.js +1 -1
  3. package/coverage/coverage-final.json +2 -2
  4. package/coverage/index.html +7 -7
  5. package/coverage/sorter.js +21 -7
  6. package/coverage/src/index.html +1 -1
  7. package/coverage/src/index.ts.html +1 -1
  8. package/coverage/src/lib/index.html +7 -7
  9. package/coverage/src/lib/request-mware.derived.ts.html +19 -4
  10. package/coverage/src/lib/request-mware.effects.ts.html +27 -6
  11. package/coverage/src/lib/request-mware.types.ts.html +1 -1
  12. package/dist/src/lib/request-mware.derived.d.ts +3 -0
  13. package/dist/src/lib/request-mware.derived.d.ts.map +1 -1
  14. package/dist/src/lib/request-mware.derived.js +4 -0
  15. package/dist/src/lib/request-mware.effects.d.ts +1 -1
  16. package/dist/src/lib/request-mware.effects.d.ts.map +1 -1
  17. package/dist/src/lib/request-mware.effects.js +5 -2
  18. package/dist/src/lib/request-mware.types.d.ts +1 -1
  19. package/dist/src/lib/request-mware.types.d.ts.map +1 -1
  20. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  21. package/eslint.config.mjs +1 -1
  22. package/out-tsc/vitest/src/lib/request-mware.test.d.ts +2 -0
  23. package/out-tsc/vitest/src/lib/request-mware.test.d.ts.map +1 -0
  24. package/out-tsc/vitest/tsconfig.spec.tsbuildinfo +1 -0
  25. package/out-tsc/vitest/vite.config.d.ts +3 -0
  26. package/out-tsc/vitest/vite.config.d.ts.map +1 -0
  27. package/package.json +1 -1
  28. package/src/lib/request-mware.derived.ts +5 -0
  29. package/src/lib/request-mware.effects.ts +9 -2
  30. package/src/lib/request-mware.test.ts +3 -3
  31. package/src/lib/request-mware.types.ts +1 -1
@@ -58,7 +58,11 @@ export function middlewareWrapper(
58
58
  * @param {string} endpoint - The endpoint to be used for the query
59
59
  * @returns
60
60
  */
61
- export function initQuery(fetchArgs: FetchArgs, endpoint: EndpointTypes) {
61
+ export function initQuery(
62
+ fetchArgs: FetchArgs,
63
+ endpoint: EndpointTypes,
64
+ payload?: Record<string, unknown>,
65
+ ) {
62
66
  let modifiedRequest: ModifiedFetchArgs = {
63
67
  ...fetchArgs,
64
68
  url: new URL(fetchArgs.url),
@@ -70,7 +74,10 @@ export function initQuery(fetchArgs: FetchArgs, endpoint: EndpointTypes) {
70
74
  ) {
71
75
  // Iterates and executes provided middleware functions
72
76
  // Allow middleware to mutate `request` argument
73
- const runMiddleware = middlewareWrapper(modifiedRequest, { type: actionTypes[endpoint] });
77
+ const runMiddleware = middlewareWrapper(modifiedRequest, {
78
+ type: actionTypes[endpoint],
79
+ payload: payload || {},
80
+ });
74
81
  modifiedRequest = runMiddleware(middleware);
75
82
 
76
83
  return queryApi;
@@ -48,13 +48,13 @@ describe('Middleware should be called with an action', () => {
48
48
  });
49
49
  it('should run all middleware testing action for no match', () => {
50
50
  const runMiddleware = middlewareWrapper(
51
- { url: new URL('https://www.example.com') },
51
+ { url: new URL('https://www.example.com'), headers: new Headers() },
52
52
  {
53
53
  type: 'z' as ActionTypes,
54
54
  },
55
55
  );
56
56
  const newReq = runMiddleware(middleware);
57
- expect(newReq.headers).toBeUndefined();
57
+ expect(newReq.headers).toStrictEqual(new Headers());
58
58
  expect(newReq.url.toString()).toBe('https://www.example.com/');
59
59
  });
60
60
  it('should run all middleware testing add action with payload', () => {
@@ -74,7 +74,7 @@ describe('Middleware should be called with an action', () => {
74
74
  it('should not allow middleware to mutate `action`', () => {
75
75
  try {
76
76
  const runMiddleware = middlewareWrapper(
77
- { url: new URL('https://www.example.com') },
77
+ { url: new URL('https://www.example.com'), headers: new Headers() },
78
78
  {
79
79
  type: 'MUTATE-ACTION' as ActionTypes,
80
80
  },
@@ -36,7 +36,7 @@ export interface Action<Type extends ActionTypes = ActionTypes, Payload = unknow
36
36
 
37
37
  export interface ModifiedFetchArgs extends Omit<FetchArgs, 'url'> {
38
38
  url: URL;
39
- headers?: Headers;
39
+ headers: Headers;
40
40
  }
41
41
 
42
42
  export interface RequestObj {