@readyfor/api-client-base 0.243.0-pr981.f3ebbce → 0.243.0-pr986.3fe5563

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 (41) hide show
  1. package/dist/apiClientConfigStore.d.mts +1 -2
  2. package/dist/apiClientConfigStore.d.ts +1 -2
  3. package/dist/apiClientConfigStore.js +0 -30
  4. package/dist/apiClientConfigStore.mjs +1 -6
  5. package/dist/apiError.mjs +0 -1
  6. package/dist/chunk-472P3XVV.mjs +13 -0
  7. package/dist/{chunk-D6TR6JPT.mjs → chunk-5ZI7SAUQ.mjs} +1 -1
  8. package/dist/{chunk-PAUHDRVC.mjs → chunk-BNXKKSJH.mjs} +1 -1
  9. package/dist/{chunk-SMMDKVWH.mjs → chunk-GIFAQKW5.mjs} +1 -10
  10. package/dist/chunk-JOSDYCJN.mjs +62 -0
  11. package/dist/{chunk-BIWBZZRT.mjs → chunk-RGDL3AEX.mjs} +1 -1
  12. package/dist/fetcher.mjs +2 -5
  13. package/dist/index.d.mts +1 -1
  14. package/dist/index.d.ts +1 -1
  15. package/dist/index.js +0 -30
  16. package/dist/index.mjs +3 -8
  17. package/dist/react/ApiClientConfigProvider.mjs +2 -5
  18. package/dist/react/index.js +30 -26
  19. package/dist/react/index.mjs +3 -6
  20. package/dist/react/swr.mjs +0 -1
  21. package/dist/react/useApiClientConfig.js +30 -26
  22. package/dist/react/useApiClientConfig.mjs +3 -6
  23. package/dist/requestUrl.mjs +2 -5
  24. package/dist/requestUrl.test.mjs +2 -5
  25. package/dist/store.mjs +0 -1
  26. package/dist/utils/headersInit.mjs +1 -2
  27. package/dist/utils/headersInit.test.mjs +1 -2
  28. package/dist/zod.mjs +0 -1
  29. package/package.json +1 -1
  30. package/dist/chunk-7P6ASYW6.mjs +0 -9
  31. package/dist/chunk-DATABM5C.mjs +0 -21
  32. package/dist/chunk-DLVEXL2J.mjs +0 -37
  33. package/dist/chunk-LYXJUKKR.mjs +0 -14
  34. package/dist/utils/requestInit.d.mts +0 -9
  35. package/dist/utils/requestInit.d.ts +0 -9
  36. package/dist/utils/requestInit.js +0 -53
  37. package/dist/utils/requestInit.mjs +0 -8
  38. package/dist/utils/requestInit.test.d.mts +0 -2
  39. package/dist/utils/requestInit.test.d.ts +0 -2
  40. package/dist/utils/requestInit.test.js +0 -133
  41. package/dist/utils/requestInit.test.mjs +0 -106
@@ -17,6 +17,5 @@ type RequestConfig = {
17
17
  type Config = RequestConfig & DeserializeResponseConfig & LoggingConfig;
18
18
  declare const store: Store<Config>;
19
19
  declare const setApiClientConfig: (config: Config) => void;
20
- declare const buildRequestInitWithDefaultConfig: (customRequestInit?: RequestInit) => RequestInit;
21
20
 
22
- export { type Config, type RequestConfig, buildRequestInitWithDefaultConfig, setApiClientConfig, store };
21
+ export { type Config, type RequestConfig, setApiClientConfig, store };
@@ -17,6 +17,5 @@ type RequestConfig = {
17
17
  type Config = RequestConfig & DeserializeResponseConfig & LoggingConfig;
18
18
  declare const store: Store<Config>;
19
19
  declare const setApiClientConfig: (config: Config) => void;
20
- declare const buildRequestInitWithDefaultConfig: (customRequestInit?: RequestInit) => RequestInit;
21
20
 
22
- export { type Config, type RequestConfig, buildRequestInitWithDefaultConfig, setApiClientConfig, store };
21
+ export { type Config, type RequestConfig, setApiClientConfig, store };
@@ -20,7 +20,6 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/apiClientConfigStore.ts
21
21
  var apiClientConfigStore_exports = {};
22
22
  __export(apiClientConfigStore_exports, {
23
- buildRequestInitWithDefaultConfig: () => buildRequestInitWithDefaultConfig,
24
23
  setApiClientConfig: () => setApiClientConfig,
25
24
  store: () => store
26
25
  });
@@ -46,41 +45,12 @@ var createStore = (initialState) => {
46
45
  };
47
46
  };
48
47
 
49
- // src/utils/headersInit.ts
50
- var mergeHeadersInit = (baseHeadersInit, overrideHeadersInit) => {
51
- const base = new Headers(baseHeadersInit);
52
- const override = new Headers(overrideHeadersInit);
53
- const setCookies = base.getSetCookie().concat(override.getSetCookie());
54
- base.delete("set-cookie");
55
- override.delete("set-cookie");
56
- const mergedHeaders = new Headers({
57
- ...Object.fromEntries(base),
58
- ...Object.fromEntries(override)
59
- });
60
- setCookies.forEach((cookie) => {
61
- mergedHeaders.append("set-cookie", cookie);
62
- });
63
- return mergedHeaders;
64
- };
65
-
66
- // src/utils/requestInit.ts
67
- var mergeRequestInit = ({ headers: baseHeaders, ...base }, { headers: overrideHeaders, ...override }) => ({
68
- ...base,
69
- ...override,
70
- headers: baseHeaders === void 0 ? overrideHeaders : overrideHeaders === void 0 ? baseHeaders : mergeHeadersInit(baseHeaders, overrideHeaders)
71
- });
72
-
73
48
  // src/apiClientConfigStore.ts
74
49
  var defaultConfig = {};
75
50
  var store = createStore(defaultConfig);
76
51
  var setApiClientConfig = (config) => store.setState(() => config);
77
- var buildRequestInitWithDefaultConfig = (customRequestInit = {}) => {
78
- const { defaultRequestInit = {} } = store.getState();
79
- return mergeRequestInit(defaultRequestInit, customRequestInit);
80
- };
81
52
  // Annotate the CommonJS export names for ESM import in node:
82
53
  0 && (module.exports = {
83
- buildRequestInitWithDefaultConfig,
84
54
  setApiClientConfig,
85
55
  store
86
56
  });
@@ -1,14 +1,9 @@
1
1
  import {
2
- buildRequestInitWithDefaultConfig,
3
2
  setApiClientConfig,
4
3
  store
5
- } from "./chunk-DATABM5C.mjs";
6
- import "./chunk-LYXJUKKR.mjs";
7
- import "./chunk-SMMDKVWH.mjs";
4
+ } from "./chunk-472P3XVV.mjs";
8
5
  import "./chunk-3SEO7S3Q.mjs";
9
- import "./chunk-7P6ASYW6.mjs";
10
6
  export {
11
- buildRequestInitWithDefaultConfig,
12
7
  setApiClientConfig,
13
8
  store
14
9
  };
package/dist/apiError.mjs CHANGED
@@ -5,7 +5,6 @@ import {
5
5
  getErrorStatus
6
6
  } from "./chunk-PY35XWDS.mjs";
7
7
  import "./chunk-JCZWXJBU.mjs";
8
- import "./chunk-7P6ASYW6.mjs";
9
8
  export {
10
9
  HTTPError,
11
10
  errorStatusCode,
@@ -0,0 +1,13 @@
1
+ import {
2
+ createStore
3
+ } from "./chunk-3SEO7S3Q.mjs";
4
+
5
+ // src/apiClientConfigStore.ts
6
+ var defaultConfig = {};
7
+ var store = createStore(defaultConfig);
8
+ var setApiClientConfig = (config) => store.setState(() => config);
9
+
10
+ export {
11
+ store,
12
+ setApiClientConfig
13
+ };
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-DH33ZDBG.mjs";
4
4
  import {
5
5
  store
6
- } from "./chunk-DATABM5C.mjs";
6
+ } from "./chunk-472P3XVV.mjs";
7
7
 
8
8
  // src/react/ApiClientConfigProvider.tsx
9
9
  import { createContext, useContext, useEffect } from "react";
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-PY35XWDS.mjs";
5
5
  import {
6
6
  store
7
- } from "./chunk-DATABM5C.mjs";
7
+ } from "./chunk-472P3XVV.mjs";
8
8
 
9
9
  // src/fetcher.ts
10
10
  var defaultRequestInit = {
@@ -1,12 +1,4 @@
1
- import {
2
- __export
3
- } from "./chunk-7P6ASYW6.mjs";
4
-
5
1
  // src/utils/headersInit.ts
6
- var headersInit_exports = {};
7
- __export(headersInit_exports, {
8
- mergeHeadersInit: () => mergeHeadersInit
9
- });
10
2
  var mergeHeadersInit = (baseHeadersInit, overrideHeadersInit) => {
11
3
  const base = new Headers(baseHeadersInit);
12
4
  const override = new Headers(overrideHeadersInit);
@@ -24,6 +16,5 @@ var mergeHeadersInit = (baseHeadersInit, overrideHeadersInit) => {
24
16
  };
25
17
 
26
18
  export {
27
- mergeHeadersInit,
28
- headersInit_exports
19
+ mergeHeadersInit
29
20
  };
@@ -0,0 +1,62 @@
1
+ import {
2
+ useApiClientConfigContext
3
+ } from "./chunk-5ZI7SAUQ.mjs";
4
+
5
+ // src/react/useApiClientConfig.ts
6
+ import { useCallback, useMemo } from "react";
7
+ import { useSyncExternalStore } from "use-sync-external-store/shim/index.js";
8
+ import { useSyncExternalStoreWithSelector } from "use-sync-external-store/shim/with-selector.js";
9
+ var useApiClientConfig = () => {
10
+ const store = useApiClientConfigContext();
11
+ return useSyncExternalStore(store.subscribe, store.getState);
12
+ };
13
+ var useApiClientConfigWithSelector = (selector) => {
14
+ const store = useApiClientConfigContext();
15
+ return useSyncExternalStoreWithSelector(
16
+ store.subscribe,
17
+ store.getState,
18
+ null,
19
+ selector
20
+ );
21
+ };
22
+ var useRequestInit = (customRequestInit = {}) => {
23
+ const { defaultRequestInit = {} } = useApiClientConfig();
24
+ const keys = useMemo(
25
+ () => Object.keys({
26
+ ...defaultRequestInit,
27
+ ...customRequestInit
28
+ }),
29
+ [defaultRequestInit, customRequestInit]
30
+ );
31
+ const get = useCallback((key) => {
32
+ if (customRequestInit[key] === void 0) {
33
+ return defaultRequestInit[key];
34
+ }
35
+ if (defaultRequestInit[key] === void 0) {
36
+ return customRequestInit[key];
37
+ }
38
+ if (typeof customRequestInit[key] === "object" && typeof defaultRequestInit[key] === "object") {
39
+ return { ...defaultRequestInit[key], ...customRequestInit[key] };
40
+ }
41
+ if (Array.isArray(customRequestInit[key]) && Array.isArray(defaultRequestInit[key])) {
42
+ return [...defaultRequestInit[key], ...customRequestInit[key]];
43
+ }
44
+ return customRequestInit[key] ?? defaultRequestInit[key];
45
+ }, []);
46
+ return useMemo(
47
+ () => keys.reduce(
48
+ (acc, key) => ({
49
+ ...acc,
50
+ [key]: get(key)
51
+ }),
52
+ {}
53
+ ),
54
+ [keys, get]
55
+ );
56
+ };
57
+
58
+ export {
59
+ useApiClientConfig,
60
+ useApiClientConfigWithSelector,
61
+ useRequestInit
62
+ };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  store
3
- } from "./chunk-DATABM5C.mjs";
3
+ } from "./chunk-472P3XVV.mjs";
4
4
 
5
5
  // src/requestUrl.ts
6
6
  import qs from "qs";
package/dist/fetcher.mjs CHANGED
@@ -3,14 +3,11 @@ import {
3
3
  createJsonFetcher,
4
4
  createTextFetcher,
5
5
  createVoidFetcher
6
- } from "./chunk-PAUHDRVC.mjs";
6
+ } from "./chunk-BNXKKSJH.mjs";
7
7
  import "./chunk-PY35XWDS.mjs";
8
8
  import "./chunk-JCZWXJBU.mjs";
9
- import "./chunk-DATABM5C.mjs";
10
- import "./chunk-LYXJUKKR.mjs";
11
- import "./chunk-SMMDKVWH.mjs";
9
+ import "./chunk-472P3XVV.mjs";
12
10
  import "./chunk-3SEO7S3Q.mjs";
13
- import "./chunk-7P6ASYW6.mjs";
14
11
  export {
15
12
  createBlobFetcher,
16
13
  createJsonFetcher,
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- export { Config, RequestConfig, buildRequestInitWithDefaultConfig, setApiClientConfig, store } from './apiClientConfigStore.mjs';
1
+ export { Config, RequestConfig, setApiClientConfig, store } from './apiClientConfigStore.mjs';
2
2
  export { ErrorStatusCode, HTTPError, errorStatusCode, errorTitle, getErrorStatus } from './apiError.mjs';
3
3
  export { BlobFetcherResponse, createBlobFetcher, createJsonFetcher, createTextFetcher, createVoidFetcher } from './fetcher.mjs';
4
4
  export { __internal__requestUrl } from './requestUrl.mjs';
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { Config, RequestConfig, buildRequestInitWithDefaultConfig, setApiClientConfig, store } from './apiClientConfigStore.js';
1
+ export { Config, RequestConfig, setApiClientConfig, store } from './apiClientConfigStore.js';
2
2
  export { ErrorStatusCode, HTTPError, errorStatusCode, errorTitle, getErrorStatus } from './apiError.js';
3
3
  export { BlobFetcherResponse, createBlobFetcher, createJsonFetcher, createTextFetcher, createVoidFetcher } from './fetcher.js';
4
4
  export { __internal__requestUrl } from './requestUrl.js';
package/dist/index.js CHANGED
@@ -32,7 +32,6 @@ var index_exports = {};
32
32
  __export(index_exports, {
33
33
  HTTPError: () => HTTPError,
34
34
  __internal__requestUrl: () => __internal__requestUrl,
35
- buildRequestInitWithDefaultConfig: () => buildRequestInitWithDefaultConfig,
36
35
  createBlobFetcher: () => createBlobFetcher,
37
36
  createJsonFetcher: () => createJsonFetcher,
38
37
  createStore: () => createStore,
@@ -68,38 +67,10 @@ var createStore = (initialState) => {
68
67
  };
69
68
  };
70
69
 
71
- // src/utils/headersInit.ts
72
- var mergeHeadersInit = (baseHeadersInit, overrideHeadersInit) => {
73
- const base = new Headers(baseHeadersInit);
74
- const override = new Headers(overrideHeadersInit);
75
- const setCookies = base.getSetCookie().concat(override.getSetCookie());
76
- base.delete("set-cookie");
77
- override.delete("set-cookie");
78
- const mergedHeaders = new Headers({
79
- ...Object.fromEntries(base),
80
- ...Object.fromEntries(override)
81
- });
82
- setCookies.forEach((cookie) => {
83
- mergedHeaders.append("set-cookie", cookie);
84
- });
85
- return mergedHeaders;
86
- };
87
-
88
- // src/utils/requestInit.ts
89
- var mergeRequestInit = ({ headers: baseHeaders, ...base }, { headers: overrideHeaders, ...override }) => ({
90
- ...base,
91
- ...override,
92
- headers: baseHeaders === void 0 ? overrideHeaders : overrideHeaders === void 0 ? baseHeaders : mergeHeadersInit(baseHeaders, overrideHeaders)
93
- });
94
-
95
70
  // src/apiClientConfigStore.ts
96
71
  var defaultConfig = {};
97
72
  var store = createStore(defaultConfig);
98
73
  var setApiClientConfig = (config) => store.setState(() => config);
99
- var buildRequestInitWithDefaultConfig = (customRequestInit = {}) => {
100
- const { defaultRequestInit: defaultRequestInit2 = {} } = store.getState();
101
- return mergeRequestInit(defaultRequestInit2, customRequestInit);
102
- };
103
74
 
104
75
  // src/zod.ts
105
76
  var schemaForType = () => (arg) => {
@@ -276,7 +247,6 @@ function __internal__requestUrl(...args) {
276
247
  0 && (module.exports = {
277
248
  HTTPError,
278
249
  __internal__requestUrl,
279
- buildRequestInitWithDefaultConfig,
280
250
  createBlobFetcher,
281
251
  createJsonFetcher,
282
252
  createStore,
package/dist/index.mjs CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  createJsonFetcher,
4
4
  createTextFetcher,
5
5
  createVoidFetcher
6
- } from "./chunk-PAUHDRVC.mjs";
6
+ } from "./chunk-BNXKKSJH.mjs";
7
7
  import {
8
8
  HTTPError,
9
9
  errorStatusCode,
@@ -16,23 +16,18 @@ import {
16
16
  } from "./chunk-JCZWXJBU.mjs";
17
17
  import {
18
18
  __internal__requestUrl
19
- } from "./chunk-BIWBZZRT.mjs";
19
+ } from "./chunk-RGDL3AEX.mjs";
20
20
  import {
21
- buildRequestInitWithDefaultConfig,
22
21
  setApiClientConfig,
23
22
  store
24
- } from "./chunk-DATABM5C.mjs";
25
- import "./chunk-LYXJUKKR.mjs";
26
- import "./chunk-SMMDKVWH.mjs";
23
+ } from "./chunk-472P3XVV.mjs";
27
24
  import {
28
25
  createStore
29
26
  } from "./chunk-3SEO7S3Q.mjs";
30
- import "./chunk-7P6ASYW6.mjs";
31
27
  import "./chunk-WBQAMGXK.mjs";
32
28
  export {
33
29
  HTTPError,
34
30
  __internal__requestUrl,
35
- buildRequestInitWithDefaultConfig,
36
31
  createBlobFetcher,
37
32
  createJsonFetcher,
38
33
  createStore,
@@ -1,13 +1,10 @@
1
1
  import {
2
2
  ApiClientConfigProvider,
3
3
  useApiClientConfigContext
4
- } from "../chunk-D6TR6JPT.mjs";
4
+ } from "../chunk-5ZI7SAUQ.mjs";
5
5
  import "../chunk-DH33ZDBG.mjs";
6
- import "../chunk-DATABM5C.mjs";
7
- import "../chunk-LYXJUKKR.mjs";
8
- import "../chunk-SMMDKVWH.mjs";
6
+ import "../chunk-472P3XVV.mjs";
9
7
  import "../chunk-3SEO7S3Q.mjs";
10
- import "../chunk-7P6ASYW6.mjs";
11
8
  export {
12
9
  ApiClientConfigProvider,
13
10
  useApiClientConfigContext
@@ -52,30 +52,6 @@ var createStore = (initialState) => {
52
52
  };
53
53
  };
54
54
 
55
- // src/utils/headersInit.ts
56
- var mergeHeadersInit = (baseHeadersInit, overrideHeadersInit) => {
57
- const base = new Headers(baseHeadersInit);
58
- const override = new Headers(overrideHeadersInit);
59
- const setCookies = base.getSetCookie().concat(override.getSetCookie());
60
- base.delete("set-cookie");
61
- override.delete("set-cookie");
62
- const mergedHeaders = new Headers({
63
- ...Object.fromEntries(base),
64
- ...Object.fromEntries(override)
65
- });
66
- setCookies.forEach((cookie) => {
67
- mergedHeaders.append("set-cookie", cookie);
68
- });
69
- return mergedHeaders;
70
- };
71
-
72
- // src/utils/requestInit.ts
73
- var mergeRequestInit = ({ headers: baseHeaders, ...base }, { headers: overrideHeaders, ...override }) => ({
74
- ...base,
75
- ...override,
76
- headers: baseHeaders === void 0 ? overrideHeaders : overrideHeaders === void 0 ? baseHeaders : mergeHeadersInit(baseHeaders, overrideHeaders)
77
- });
78
-
79
55
  // src/apiClientConfigStore.ts
80
56
  var defaultConfig = {};
81
57
  var store = createStore(defaultConfig);
@@ -130,10 +106,38 @@ var useApiClientConfigWithSelector = (selector) => {
130
106
  };
131
107
  var useRequestInit = (customRequestInit = {}) => {
132
108
  const { defaultRequestInit = {} } = useApiClientConfig();
133
- return (0, import_react3.useMemo)(
134
- () => mergeRequestInit(defaultRequestInit, customRequestInit),
109
+ const keys = (0, import_react3.useMemo)(
110
+ () => Object.keys({
111
+ ...defaultRequestInit,
112
+ ...customRequestInit
113
+ }),
135
114
  [defaultRequestInit, customRequestInit]
136
115
  );
116
+ const get = (0, import_react3.useCallback)((key) => {
117
+ if (customRequestInit[key] === void 0) {
118
+ return defaultRequestInit[key];
119
+ }
120
+ if (defaultRequestInit[key] === void 0) {
121
+ return customRequestInit[key];
122
+ }
123
+ if (typeof customRequestInit[key] === "object" && typeof defaultRequestInit[key] === "object") {
124
+ return { ...defaultRequestInit[key], ...customRequestInit[key] };
125
+ }
126
+ if (Array.isArray(customRequestInit[key]) && Array.isArray(defaultRequestInit[key])) {
127
+ return [...defaultRequestInit[key], ...customRequestInit[key]];
128
+ }
129
+ return customRequestInit[key] ?? defaultRequestInit[key];
130
+ }, []);
131
+ return (0, import_react3.useMemo)(
132
+ () => keys.reduce(
133
+ (acc, key) => ({
134
+ ...acc,
135
+ [key]: get(key)
136
+ }),
137
+ {}
138
+ ),
139
+ [keys, get]
140
+ );
137
141
  };
138
142
  // Annotate the CommonJS export names for ESM import in node:
139
143
  0 && (module.exports = {
@@ -2,19 +2,16 @@ import {
2
2
  useApiClientConfig,
3
3
  useApiClientConfigWithSelector,
4
4
  useRequestInit
5
- } from "../chunk-DLVEXL2J.mjs";
5
+ } from "../chunk-JOSDYCJN.mjs";
6
6
  import {
7
7
  ApiClientConfigProvider,
8
8
  useApiClientConfigContext
9
- } from "../chunk-D6TR6JPT.mjs";
9
+ } from "../chunk-5ZI7SAUQ.mjs";
10
10
  import {
11
11
  createSwrConfig
12
12
  } from "../chunk-DH33ZDBG.mjs";
13
- import "../chunk-DATABM5C.mjs";
14
- import "../chunk-LYXJUKKR.mjs";
15
- import "../chunk-SMMDKVWH.mjs";
13
+ import "../chunk-472P3XVV.mjs";
16
14
  import "../chunk-3SEO7S3Q.mjs";
17
- import "../chunk-7P6ASYW6.mjs";
18
15
  export {
19
16
  ApiClientConfigProvider,
20
17
  createSwrConfig,
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  createSwrConfig
3
3
  } from "../chunk-DH33ZDBG.mjs";
4
- import "../chunk-7P6ASYW6.mjs";
5
4
  export {
6
5
  createSwrConfig
7
6
  };
@@ -49,30 +49,6 @@ var createStore = (initialState) => {
49
49
  };
50
50
  };
51
51
 
52
- // src/utils/headersInit.ts
53
- var mergeHeadersInit = (baseHeadersInit, overrideHeadersInit) => {
54
- const base = new Headers(baseHeadersInit);
55
- const override = new Headers(overrideHeadersInit);
56
- const setCookies = base.getSetCookie().concat(override.getSetCookie());
57
- base.delete("set-cookie");
58
- override.delete("set-cookie");
59
- const mergedHeaders = new Headers({
60
- ...Object.fromEntries(base),
61
- ...Object.fromEntries(override)
62
- });
63
- setCookies.forEach((cookie) => {
64
- mergedHeaders.append("set-cookie", cookie);
65
- });
66
- return mergedHeaders;
67
- };
68
-
69
- // src/utils/requestInit.ts
70
- var mergeRequestInit = ({ headers: baseHeaders, ...base }, { headers: overrideHeaders, ...override }) => ({
71
- ...base,
72
- ...override,
73
- headers: baseHeaders === void 0 ? overrideHeaders : overrideHeaders === void 0 ? baseHeaders : mergeHeadersInit(baseHeaders, overrideHeaders)
74
- });
75
-
76
52
  // src/apiClientConfigStore.ts
77
53
  var defaultConfig = {};
78
54
  var store = createStore(defaultConfig);
@@ -107,10 +83,38 @@ var useApiClientConfigWithSelector = (selector) => {
107
83
  };
108
84
  var useRequestInit = (customRequestInit = {}) => {
109
85
  const { defaultRequestInit = {} } = useApiClientConfig();
110
- return (0, import_react3.useMemo)(
111
- () => mergeRequestInit(defaultRequestInit, customRequestInit),
86
+ const keys = (0, import_react3.useMemo)(
87
+ () => Object.keys({
88
+ ...defaultRequestInit,
89
+ ...customRequestInit
90
+ }),
112
91
  [defaultRequestInit, customRequestInit]
113
92
  );
93
+ const get = (0, import_react3.useCallback)((key) => {
94
+ if (customRequestInit[key] === void 0) {
95
+ return defaultRequestInit[key];
96
+ }
97
+ if (defaultRequestInit[key] === void 0) {
98
+ return customRequestInit[key];
99
+ }
100
+ if (typeof customRequestInit[key] === "object" && typeof defaultRequestInit[key] === "object") {
101
+ return { ...defaultRequestInit[key], ...customRequestInit[key] };
102
+ }
103
+ if (Array.isArray(customRequestInit[key]) && Array.isArray(defaultRequestInit[key])) {
104
+ return [...defaultRequestInit[key], ...customRequestInit[key]];
105
+ }
106
+ return customRequestInit[key] ?? defaultRequestInit[key];
107
+ }, []);
108
+ return (0, import_react3.useMemo)(
109
+ () => keys.reduce(
110
+ (acc, key) => ({
111
+ ...acc,
112
+ [key]: get(key)
113
+ }),
114
+ {}
115
+ ),
116
+ [keys, get]
117
+ );
114
118
  };
115
119
  // Annotate the CommonJS export names for ESM import in node:
116
120
  0 && (module.exports = {
@@ -2,14 +2,11 @@ import {
2
2
  useApiClientConfig,
3
3
  useApiClientConfigWithSelector,
4
4
  useRequestInit
5
- } from "../chunk-DLVEXL2J.mjs";
6
- import "../chunk-D6TR6JPT.mjs";
5
+ } from "../chunk-JOSDYCJN.mjs";
6
+ import "../chunk-5ZI7SAUQ.mjs";
7
7
  import "../chunk-DH33ZDBG.mjs";
8
- import "../chunk-DATABM5C.mjs";
9
- import "../chunk-LYXJUKKR.mjs";
10
- import "../chunk-SMMDKVWH.mjs";
8
+ import "../chunk-472P3XVV.mjs";
11
9
  import "../chunk-3SEO7S3Q.mjs";
12
- import "../chunk-7P6ASYW6.mjs";
13
10
  export {
14
11
  useApiClientConfig,
15
12
  useApiClientConfigWithSelector,
@@ -1,11 +1,8 @@
1
1
  import {
2
2
  __internal__requestUrl
3
- } from "./chunk-BIWBZZRT.mjs";
4
- import "./chunk-DATABM5C.mjs";
5
- import "./chunk-LYXJUKKR.mjs";
6
- import "./chunk-SMMDKVWH.mjs";
3
+ } from "./chunk-RGDL3AEX.mjs";
4
+ import "./chunk-472P3XVV.mjs";
7
5
  import "./chunk-3SEO7S3Q.mjs";
8
- import "./chunk-7P6ASYW6.mjs";
9
6
  export {
10
7
  __internal__requestUrl
11
8
  };
@@ -1,13 +1,10 @@
1
1
  import {
2
2
  __internal__requestUrl
3
- } from "./chunk-BIWBZZRT.mjs";
3
+ } from "./chunk-RGDL3AEX.mjs";
4
4
  import {
5
5
  store
6
- } from "./chunk-DATABM5C.mjs";
7
- import "./chunk-LYXJUKKR.mjs";
8
- import "./chunk-SMMDKVWH.mjs";
6
+ } from "./chunk-472P3XVV.mjs";
9
7
  import "./chunk-3SEO7S3Q.mjs";
10
- import "./chunk-7P6ASYW6.mjs";
11
8
 
12
9
  // src/requestUrl.test.ts
13
10
  var config = {
package/dist/store.mjs CHANGED
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  createStore
3
3
  } from "./chunk-3SEO7S3Q.mjs";
4
- import "./chunk-7P6ASYW6.mjs";
5
4
  export {
6
5
  createStore
7
6
  };
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  mergeHeadersInit
3
- } from "../chunk-SMMDKVWH.mjs";
4
- import "../chunk-7P6ASYW6.mjs";
3
+ } from "../chunk-GIFAQKW5.mjs";
5
4
  export {
6
5
  mergeHeadersInit
7
6
  };
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  mergeHeadersInit
3
- } from "../chunk-SMMDKVWH.mjs";
4
- import "../chunk-7P6ASYW6.mjs";
3
+ } from "../chunk-GIFAQKW5.mjs";
5
4
 
6
5
  // src/utils/headersInit.test.ts
7
6
  describe("mergeHeadersInit", () => {
package/dist/zod.mjs CHANGED
@@ -2,7 +2,6 @@ import {
2
2
  isZodError,
3
3
  schemaForType
4
4
  } from "./chunk-JCZWXJBU.mjs";
5
- import "./chunk-7P6ASYW6.mjs";
6
5
  export {
7
6
  isZodError,
8
7
  schemaForType
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@readyfor/api-client-base",
3
- "version": "0.243.0-pr981.f3ebbce",
3
+ "version": "0.243.0-pr986.3fe5563",
4
4
  "license": "SEE LICENSE IN LICENSE.md",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -1,9 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __export = (target, all) => {
3
- for (var name in all)
4
- __defProp(target, name, { get: all[name], enumerable: true });
5
- };
6
-
7
- export {
8
- __export
9
- };
@@ -1,21 +0,0 @@
1
- import {
2
- mergeRequestInit
3
- } from "./chunk-LYXJUKKR.mjs";
4
- import {
5
- createStore
6
- } from "./chunk-3SEO7S3Q.mjs";
7
-
8
- // src/apiClientConfigStore.ts
9
- var defaultConfig = {};
10
- var store = createStore(defaultConfig);
11
- var setApiClientConfig = (config) => store.setState(() => config);
12
- var buildRequestInitWithDefaultConfig = (customRequestInit = {}) => {
13
- const { defaultRequestInit = {} } = store.getState();
14
- return mergeRequestInit(defaultRequestInit, customRequestInit);
15
- };
16
-
17
- export {
18
- store,
19
- setApiClientConfig,
20
- buildRequestInitWithDefaultConfig
21
- };
@@ -1,37 +0,0 @@
1
- import {
2
- useApiClientConfigContext
3
- } from "./chunk-D6TR6JPT.mjs";
4
- import {
5
- mergeRequestInit
6
- } from "./chunk-LYXJUKKR.mjs";
7
-
8
- // src/react/useApiClientConfig.ts
9
- import { useMemo } from "react";
10
- import { useSyncExternalStore } from "use-sync-external-store/shim/index.js";
11
- import { useSyncExternalStoreWithSelector } from "use-sync-external-store/shim/with-selector.js";
12
- var useApiClientConfig = () => {
13
- const store = useApiClientConfigContext();
14
- return useSyncExternalStore(store.subscribe, store.getState);
15
- };
16
- var useApiClientConfigWithSelector = (selector) => {
17
- const store = useApiClientConfigContext();
18
- return useSyncExternalStoreWithSelector(
19
- store.subscribe,
20
- store.getState,
21
- null,
22
- selector
23
- );
24
- };
25
- var useRequestInit = (customRequestInit = {}) => {
26
- const { defaultRequestInit = {} } = useApiClientConfig();
27
- return useMemo(
28
- () => mergeRequestInit(defaultRequestInit, customRequestInit),
29
- [defaultRequestInit, customRequestInit]
30
- );
31
- };
32
-
33
- export {
34
- useApiClientConfig,
35
- useApiClientConfigWithSelector,
36
- useRequestInit
37
- };
@@ -1,14 +0,0 @@
1
- import {
2
- mergeHeadersInit
3
- } from "./chunk-SMMDKVWH.mjs";
4
-
5
- // src/utils/requestInit.ts
6
- var mergeRequestInit = ({ headers: baseHeaders, ...base }, { headers: overrideHeaders, ...override }) => ({
7
- ...base,
8
- ...override,
9
- headers: baseHeaders === void 0 ? overrideHeaders : overrideHeaders === void 0 ? baseHeaders : mergeHeadersInit(baseHeaders, overrideHeaders)
10
- });
11
-
12
- export {
13
- mergeRequestInit
14
- };
@@ -1,9 +0,0 @@
1
- /**
2
- * 第一引数と第二引数のequestInitをマージした新たなRequestInitを返す。
3
- * 同じフィールドが存在する場合、第二引数の値で上書きされる。
4
- * ただし、`headers`フィールドに関しては、`base`と`override`両方に有効なHeadersInitがある場合に限り、
5
- * `mergeHeadersInit`を使用してヘッダーの内容をマージする
6
- */
7
- declare const mergeRequestInit: ({ headers: baseHeaders, ...base }: RequestInit, { headers: overrideHeaders, ...override }: RequestInit) => RequestInit;
8
-
9
- export { mergeRequestInit };
@@ -1,9 +0,0 @@
1
- /**
2
- * 第一引数と第二引数のequestInitをマージした新たなRequestInitを返す。
3
- * 同じフィールドが存在する場合、第二引数の値で上書きされる。
4
- * ただし、`headers`フィールドに関しては、`base`と`override`両方に有効なHeadersInitがある場合に限り、
5
- * `mergeHeadersInit`を使用してヘッダーの内容をマージする
6
- */
7
- declare const mergeRequestInit: ({ headers: baseHeaders, ...base }: RequestInit, { headers: overrideHeaders, ...override }: RequestInit) => RequestInit;
8
-
9
- export { mergeRequestInit };
@@ -1,53 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
-
20
- // src/utils/requestInit.ts
21
- var requestInit_exports = {};
22
- __export(requestInit_exports, {
23
- mergeRequestInit: () => mergeRequestInit
24
- });
25
- module.exports = __toCommonJS(requestInit_exports);
26
-
27
- // src/utils/headersInit.ts
28
- var mergeHeadersInit = (baseHeadersInit, overrideHeadersInit) => {
29
- const base = new Headers(baseHeadersInit);
30
- const override = new Headers(overrideHeadersInit);
31
- const setCookies = base.getSetCookie().concat(override.getSetCookie());
32
- base.delete("set-cookie");
33
- override.delete("set-cookie");
34
- const mergedHeaders = new Headers({
35
- ...Object.fromEntries(base),
36
- ...Object.fromEntries(override)
37
- });
38
- setCookies.forEach((cookie) => {
39
- mergedHeaders.append("set-cookie", cookie);
40
- });
41
- return mergedHeaders;
42
- };
43
-
44
- // src/utils/requestInit.ts
45
- var mergeRequestInit = ({ headers: baseHeaders, ...base }, { headers: overrideHeaders, ...override }) => ({
46
- ...base,
47
- ...override,
48
- headers: baseHeaders === void 0 ? overrideHeaders : overrideHeaders === void 0 ? baseHeaders : mergeHeadersInit(baseHeaders, overrideHeaders)
49
- });
50
- // Annotate the CommonJS export names for ESM import in node:
51
- 0 && (module.exports = {
52
- mergeRequestInit
53
- });
@@ -1,8 +0,0 @@
1
- import {
2
- mergeRequestInit
3
- } from "../chunk-LYXJUKKR.mjs";
4
- import "../chunk-SMMDKVWH.mjs";
5
- import "../chunk-7P6ASYW6.mjs";
6
- export {
7
- mergeRequestInit
8
- };
@@ -1,2 +0,0 @@
1
-
2
- export { }
@@ -1,2 +0,0 @@
1
-
2
- export { }
@@ -1,133 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __export = (target, all) => {
4
- for (var name in all)
5
- __defProp(target, name, { get: all[name], enumerable: true });
6
- };
7
-
8
- // src/utils/headersInit.ts
9
- var headersInit_exports = {};
10
- __export(headersInit_exports, {
11
- mergeHeadersInit: () => mergeHeadersInit
12
- });
13
- var mergeHeadersInit = (baseHeadersInit, overrideHeadersInit) => {
14
- const base = new Headers(baseHeadersInit);
15
- const override = new Headers(overrideHeadersInit);
16
- const setCookies = base.getSetCookie().concat(override.getSetCookie());
17
- base.delete("set-cookie");
18
- override.delete("set-cookie");
19
- const mergedHeaders = new Headers({
20
- ...Object.fromEntries(base),
21
- ...Object.fromEntries(override)
22
- });
23
- setCookies.forEach((cookie) => {
24
- mergedHeaders.append("set-cookie", cookie);
25
- });
26
- return mergedHeaders;
27
- };
28
-
29
- // src/utils/requestInit.ts
30
- var mergeRequestInit = ({ headers: baseHeaders, ...base }, { headers: overrideHeaders, ...override }) => ({
31
- ...base,
32
- ...override,
33
- headers: baseHeaders === void 0 ? overrideHeaders : overrideHeaders === void 0 ? baseHeaders : mergeHeadersInit(baseHeaders, overrideHeaders)
34
- });
35
-
36
- // src/utils/requestInit.test.ts
37
- describe("mergeRequestInit", () => {
38
- test("RequestInit\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3092\u30DE\u30FC\u30B8\u3067\u304D\u308B", () => {
39
- const base = {
40
- method: "GET",
41
- cache: "force-cache"
42
- };
43
- const overrideSignal = new AbortController().signal;
44
- const override = {
45
- method: "POST",
46
- body: JSON.stringify({ key: "value" }),
47
- headers: {
48
- "Content-Type": "application/json"
49
- },
50
- cache: "no-cache",
51
- signal: overrideSignal
52
- };
53
- const result = mergeRequestInit(base, override);
54
- expect(result).toEqual({
55
- cache: "no-cache",
56
- method: "POST",
57
- headers: {
58
- "Content-Type": "application/json"
59
- },
60
- body: JSON.stringify({ key: "value" }),
61
- signal: overrideSignal
62
- });
63
- });
64
- test("header\u4EE5\u5916\u306F\u3001null\u3084undefined\u3092\u8A2D\u5B9A\u3059\u308B\u4E8B\u3067base\u306E\u8A2D\u5B9A\u3092\u7121\u52B9\u306B\u3067\u304D\u308B", () => {
65
- const base = {
66
- method: "POST",
67
- body: "request body",
68
- mode: "cors",
69
- signal: new AbortController().signal,
70
- headers: {
71
- Authorization: "Bearer token"
72
- }
73
- };
74
- const override = {
75
- body: null,
76
- mode: void 0,
77
- signal: null
78
- };
79
- const result = mergeRequestInit(base, override);
80
- expect(result).toEqual({
81
- method: "POST",
82
- body: null,
83
- mode: void 0,
84
- headers: {
85
- Authorization: "Bearer token"
86
- },
87
- signal: null
88
- });
89
- });
90
- describe("headers\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u7279\u6B8A\u51E6\u7406", () => {
91
- test("headers\u3092\u5408\u6210\u3059\u308B\u3068\u304D\u3001\u7247\u65B9\u306E\u307F\u6307\u5B9A\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u305D\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u305D\u306E\u307E\u307E\u8FD4\u3059\u3088\u3046\u3059\u308B", () => {
92
- const arr = [["X-Test", "value"]];
93
- expect(mergeRequestInit({ headers: arr }, {}).headers).toBe(arr);
94
- expect(mergeRequestInit({}, { headers: arr }).headers).toBe(arr);
95
- const record = { "X-Test": "value" };
96
- expect(mergeRequestInit({ headers: record }, {}).headers).toBe(record);
97
- expect(mergeRequestInit({}, { headers: record }).headers).toBe(record);
98
- const instance = new Headers({ "X-Test": "value" });
99
- expect(mergeRequestInit({ headers: instance }, {}).headers).toBe(
100
- instance
101
- );
102
- expect(mergeRequestInit({}, { headers: instance }).headers).toBe(
103
- instance
104
- );
105
- });
106
- test("headers\u304C\u4E21\u65B9\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B\u6642\u306F\u3001mergeHeadersInit\u3092\u4F7F\u7528\u3057\u3066\u30DE\u30FC\u30B8\u3055\u308C\u308B", () => {
107
- const mergeHeadersInitSpy = jest.spyOn(headersInit_exports, "mergeHeadersInit");
108
- const base = {
109
- headers: {
110
- "Content-Type": "application/json",
111
- Authorization: "Bearer token"
112
- }
113
- };
114
- const override = {
115
- headers: {
116
- "X-Test": "value"
117
- }
118
- };
119
- const result = mergeRequestInit(base, override);
120
- expect([...new Headers(result.headers)]).toEqual([
121
- ["authorization", "Bearer token"],
122
- ["content-type", "application/json"],
123
- ["x-test", "value"]
124
- ]);
125
- expect(mergeHeadersInitSpy).toHaveBeenCalledTimes(1);
126
- expect(mergeHeadersInitSpy).toHaveBeenCalledWith(
127
- base.headers,
128
- override.headers
129
- );
130
- mergeHeadersInitSpy.mockRestore();
131
- });
132
- });
133
- });
@@ -1,106 +0,0 @@
1
- import {
2
- mergeRequestInit
3
- } from "../chunk-LYXJUKKR.mjs";
4
- import {
5
- headersInit_exports
6
- } from "../chunk-SMMDKVWH.mjs";
7
- import "../chunk-7P6ASYW6.mjs";
8
-
9
- // src/utils/requestInit.test.ts
10
- describe("mergeRequestInit", () => {
11
- test("RequestInit\u30AA\u30D6\u30B8\u30A7\u30AF\u30C8\u3092\u30DE\u30FC\u30B8\u3067\u304D\u308B", () => {
12
- const base = {
13
- method: "GET",
14
- cache: "force-cache"
15
- };
16
- const overrideSignal = new AbortController().signal;
17
- const override = {
18
- method: "POST",
19
- body: JSON.stringify({ key: "value" }),
20
- headers: {
21
- "Content-Type": "application/json"
22
- },
23
- cache: "no-cache",
24
- signal: overrideSignal
25
- };
26
- const result = mergeRequestInit(base, override);
27
- expect(result).toEqual({
28
- cache: "no-cache",
29
- method: "POST",
30
- headers: {
31
- "Content-Type": "application/json"
32
- },
33
- body: JSON.stringify({ key: "value" }),
34
- signal: overrideSignal
35
- });
36
- });
37
- test("header\u4EE5\u5916\u306F\u3001null\u3084undefined\u3092\u8A2D\u5B9A\u3059\u308B\u4E8B\u3067base\u306E\u8A2D\u5B9A\u3092\u7121\u52B9\u306B\u3067\u304D\u308B", () => {
38
- const base = {
39
- method: "POST",
40
- body: "request body",
41
- mode: "cors",
42
- signal: new AbortController().signal,
43
- headers: {
44
- Authorization: "Bearer token"
45
- }
46
- };
47
- const override = {
48
- body: null,
49
- mode: void 0,
50
- signal: null
51
- };
52
- const result = mergeRequestInit(base, override);
53
- expect(result).toEqual({
54
- method: "POST",
55
- body: null,
56
- mode: void 0,
57
- headers: {
58
- Authorization: "Bearer token"
59
- },
60
- signal: null
61
- });
62
- });
63
- describe("headers\u30D5\u30A3\u30FC\u30EB\u30C9\u306E\u7279\u6B8A\u51E6\u7406", () => {
64
- test("headers\u3092\u5408\u6210\u3059\u308B\u3068\u304D\u3001\u7247\u65B9\u306E\u307F\u6307\u5B9A\u304C\u3042\u308B\u5834\u5408\u306F\u3001\u305D\u306E\u30A4\u30F3\u30B9\u30BF\u30F3\u30B9\u3092\u305D\u306E\u307E\u307E\u8FD4\u3059\u3088\u3046\u3059\u308B", () => {
65
- const arr = [["X-Test", "value"]];
66
- expect(mergeRequestInit({ headers: arr }, {}).headers).toBe(arr);
67
- expect(mergeRequestInit({}, { headers: arr }).headers).toBe(arr);
68
- const record = { "X-Test": "value" };
69
- expect(mergeRequestInit({ headers: record }, {}).headers).toBe(record);
70
- expect(mergeRequestInit({}, { headers: record }).headers).toBe(record);
71
- const instance = new Headers({ "X-Test": "value" });
72
- expect(mergeRequestInit({ headers: instance }, {}).headers).toBe(
73
- instance
74
- );
75
- expect(mergeRequestInit({}, { headers: instance }).headers).toBe(
76
- instance
77
- );
78
- });
79
- test("headers\u304C\u4E21\u65B9\u6307\u5B9A\u3055\u308C\u3066\u3044\u308B\u6642\u306F\u3001mergeHeadersInit\u3092\u4F7F\u7528\u3057\u3066\u30DE\u30FC\u30B8\u3055\u308C\u308B", () => {
80
- const mergeHeadersInitSpy = jest.spyOn(headersInit_exports, "mergeHeadersInit");
81
- const base = {
82
- headers: {
83
- "Content-Type": "application/json",
84
- Authorization: "Bearer token"
85
- }
86
- };
87
- const override = {
88
- headers: {
89
- "X-Test": "value"
90
- }
91
- };
92
- const result = mergeRequestInit(base, override);
93
- expect([...new Headers(result.headers)]).toEqual([
94
- ["authorization", "Bearer token"],
95
- ["content-type", "application/json"],
96
- ["x-test", "value"]
97
- ]);
98
- expect(mergeHeadersInitSpy).toHaveBeenCalledTimes(1);
99
- expect(mergeHeadersInitSpy).toHaveBeenCalledWith(
100
- base.headers,
101
- override.headers
102
- );
103
- mergeHeadersInitSpy.mockRestore();
104
- });
105
- });
106
- });