@alistt69/create-api 0.2.11 → 0.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 (60) hide show
  1. package/README.md +328 -101
  2. package/dist/controller.d.ts +3 -0
  3. package/dist/controller.d.ts.map +1 -0
  4. package/dist/controller.js +2 -0
  5. package/dist/controller.js.map +1 -0
  6. package/dist/index.d.ts +3 -3
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +2 -3
  9. package/dist/index.js.map +1 -1
  10. package/dist/lib/createApi.d.ts +1 -1
  11. package/dist/lib/createApi.d.ts.map +1 -1
  12. package/dist/lib/createApi.js +22 -2
  13. package/dist/lib/createApi.js.map +1 -1
  14. package/dist/lib/createController.d.ts +4 -0
  15. package/dist/lib/createController.d.ts.map +1 -0
  16. package/dist/lib/createController.js +113 -0
  17. package/dist/lib/createController.js.map +1 -0
  18. package/dist/lib/createRequestId.d.ts +2 -0
  19. package/dist/lib/createRequestId.d.ts.map +1 -0
  20. package/dist/lib/createRequestId.js +6 -0
  21. package/dist/lib/createRequestId.js.map +1 -0
  22. package/dist/lib/fetchBaseQuery.d.ts +1 -1
  23. package/dist/lib/fetchBaseQuery.d.ts.map +1 -1
  24. package/dist/lib/getHookName.d.ts +1 -1
  25. package/dist/lib/getHookName.d.ts.map +1 -1
  26. package/dist/lib/initiateMutation.d.ts +7 -0
  27. package/dist/lib/initiateMutation.d.ts.map +1 -0
  28. package/dist/lib/initiateMutation.js +47 -0
  29. package/dist/lib/initiateMutation.js.map +1 -0
  30. package/dist/lib/initiateQuery.d.ts +4 -0
  31. package/dist/lib/initiateQuery.d.ts.map +1 -0
  32. package/dist/lib/initiateQuery.js +35 -0
  33. package/dist/lib/initiateQuery.js.map +1 -0
  34. package/dist/lib/makeLazyQueryHook.d.ts +8 -8
  35. package/dist/lib/makeLazyQueryHook.d.ts.map +1 -1
  36. package/dist/lib/makeLazyQueryHook.js +10 -87
  37. package/dist/lib/makeLazyQueryHook.js.map +1 -1
  38. package/dist/lib/makeMutationHook.d.ts +1 -1
  39. package/dist/lib/makeMutationHook.d.ts.map +1 -1
  40. package/dist/lib/makeMutationHook.js +2 -6
  41. package/dist/lib/makeMutationHook.js.map +1 -1
  42. package/dist/lib/makeQueryHook.d.ts +9 -8
  43. package/dist/lib/makeQueryHook.d.ts.map +1 -1
  44. package/dist/lib/makeQueryHook.js +8 -79
  45. package/dist/lib/makeQueryHook.js.map +1 -1
  46. package/dist/lib/runQuery.d.ts +11 -0
  47. package/dist/lib/runQuery.d.ts.map +1 -0
  48. package/dist/lib/runQuery.js +83 -0
  49. package/dist/lib/runQuery.js.map +1 -0
  50. package/dist/model/mutation.d.ts +1 -1
  51. package/dist/model/mutation.d.ts.map +1 -1
  52. package/dist/model/query.d.ts +1 -1
  53. package/dist/model/query.d.ts.map +1 -1
  54. package/dist/model/queryStore.d.ts +10 -5
  55. package/dist/model/queryStore.d.ts.map +1 -1
  56. package/dist/model/queryStore.js +46 -8
  57. package/dist/model/queryStore.js.map +1 -1
  58. package/dist/model/types.d.ts +63 -6
  59. package/dist/model/types.d.ts.map +1 -1
  60. package/package.json +5 -1
@@ -0,0 +1,113 @@
1
+ import { getInitialQueryState } from '../model/queryStore.js';
2
+ export function createController(endpoint) {
3
+ if (endpoint.type === 'query') {
4
+ return createQueryController(endpoint);
5
+ }
6
+ return createMutationController(endpoint);
7
+ }
8
+ function createQueryController(endpoint) {
9
+ let currentArg;
10
+ let currentRequest;
11
+ let unsubscribeFromEndpoint;
12
+ let state = getInitialQueryState();
13
+ const syncState = () => {
14
+ if (currentArg === undefined) {
15
+ return;
16
+ }
17
+ state = endpoint.select(currentArg);
18
+ };
19
+ const disposeSubscription = () => {
20
+ unsubscribeFromEndpoint?.();
21
+ unsubscribeFromEndpoint = undefined;
22
+ };
23
+ return {
24
+ get state() {
25
+ return state;
26
+ },
27
+ run(arg) {
28
+ currentArg = arg;
29
+ disposeSubscription();
30
+ currentRequest?.unsubscribe();
31
+ currentRequest = endpoint.initiate(arg);
32
+ state = endpoint.select(arg);
33
+ unsubscribeFromEndpoint = endpoint.subscribe(arg, syncState);
34
+ return currentRequest.unwrap();
35
+ },
36
+ refetch() {
37
+ return currentRequest?.refetch();
38
+ },
39
+ abort() {
40
+ currentRequest?.abort();
41
+ },
42
+ dispose() {
43
+ disposeSubscription();
44
+ currentRequest?.unsubscribe();
45
+ currentRequest = undefined;
46
+ currentArg = undefined;
47
+ state = getInitialQueryState();
48
+ },
49
+ };
50
+ }
51
+ function getInitialMutationState() {
52
+ return {
53
+ data: undefined,
54
+ error: undefined,
55
+ isLoading: false,
56
+ };
57
+ }
58
+ function createMutationController(endpoint) {
59
+ let currentRequest;
60
+ let currentRequestId;
61
+ let state = getInitialMutationState();
62
+ const reset = () => {
63
+ currentRequestId = undefined;
64
+ state = getInitialMutationState();
65
+ };
66
+ return {
67
+ get state() {
68
+ return state;
69
+ },
70
+ async run(arg) {
71
+ currentRequest?.abort();
72
+ currentRequest = endpoint.initiate(arg);
73
+ currentRequestId = currentRequest.requestId;
74
+ const requestId = currentRequest.requestId;
75
+ state = {
76
+ data: undefined,
77
+ error: undefined,
78
+ isLoading: true,
79
+ };
80
+ try {
81
+ const data = await currentRequest.unwrap();
82
+ if (currentRequestId === requestId) {
83
+ state = {
84
+ data,
85
+ error: undefined,
86
+ isLoading: false,
87
+ };
88
+ }
89
+ return data;
90
+ }
91
+ catch (error) {
92
+ if (currentRequestId === requestId) {
93
+ state = {
94
+ data: undefined,
95
+ error,
96
+ isLoading: false,
97
+ };
98
+ }
99
+ throw error;
100
+ }
101
+ },
102
+ abort() {
103
+ currentRequest?.abort();
104
+ },
105
+ reset,
106
+ dispose() {
107
+ currentRequest?.abort();
108
+ currentRequest = undefined;
109
+ reset();
110
+ },
111
+ };
112
+ }
113
+ //# sourceMappingURL=createController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createController.js","sourceRoot":"","sources":["../../src/lib/createController.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function createRequestId(): string;
2
+ //# sourceMappingURL=createRequestId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createRequestId.d.ts","sourceRoot":"","sources":["../../src/lib/createRequestId.ts"],"names":[],"mappings":"AAEA,wBAAgB,eAAe,IAAI,MAAM,CAIxC"}
@@ -0,0 +1,6 @@
1
+ let nextRequestId = 0;
2
+ export function createRequestId() {
3
+ nextRequestId += 1;
4
+ return `request-${nextRequestId}`;
5
+ }
6
+ //# sourceMappingURL=createRequestId.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createRequestId.js","sourceRoot":"","sources":["../../src/lib/createRequestId.ts"],"names":[],"mappings":"AAAA,IAAI,aAAa,GAAG,CAAC,CAAC;AAEtB,MAAM,UAAU,eAAe;IAC3B,aAAa,IAAI,CAAC,CAAC;IAEnB,OAAO,WAAW,aAAa,EAAE,CAAC;AACtC,CAAC"}
@@ -1,3 +1,3 @@
1
- import { BaseQueryFn, FetchBaseQueryArgs, FetchBaseQueryError, FetchBaseQueryMeta, FetchBaseQueryOptions } from '../model/types.js';
1
+ import { type BaseQueryFn, type FetchBaseQueryArgs, type FetchBaseQueryError, type FetchBaseQueryMeta, type FetchBaseQueryOptions } from '../model/types.js';
2
2
  export declare function fetchBaseQuery(options?: FetchBaseQueryOptions): BaseQueryFn<unknown, FetchBaseQueryError, FetchBaseQueryMeta, FetchBaseQueryArgs>;
3
3
  //# sourceMappingURL=fetchBaseQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetchBaseQuery.d.ts","sourceRoot":"","sources":["../../src/lib/fetchBaseQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,WAAW,EACX,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACxB,MAAM,mBAAmB,CAAC;AAqF3B,wBAAgB,cAAc,CAC1B,OAAO,GAAE,qBAA0B,GACpC,WAAW,CAAC,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAoInF"}
1
+ {"version":3,"file":"fetchBaseQuery.d.ts","sourceRoot":"","sources":["../../src/lib/fetchBaseQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC7B,MAAM,mBAAmB,CAAC;AAqF3B,wBAAgB,cAAc,CAC1B,OAAO,GAAE,qBAA0B,GACpC,WAAW,CAAC,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,CAoInF"}
@@ -1,3 +1,3 @@
1
- import { EndpointType, HookName } from '../model/types.js';
1
+ import { type EndpointType, type HookName } from '../model/types.js';
2
2
  export declare function getHookName<K extends string, T extends EndpointType, L extends string = ''>(key: K, type: T, lazy: L): HookName<K, T, L>;
3
3
  //# sourceMappingURL=getHookName.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getHookName.d.ts","sourceRoot":"","sources":["../../src/lib/getHookName.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG3D,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,MAAM,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAExI"}
1
+ {"version":3,"file":"getHookName.d.ts","sourceRoot":"","sources":["../../src/lib/getHookName.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGrE,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,YAAY,EAAE,CAAC,SAAS,MAAM,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAExI"}
@@ -0,0 +1,7 @@
1
+ import { type BaseQueryFn, type MutationBuilderDefinition, type MutationInitiateResult } from '../model/types.js';
2
+ type InitiateMutationProps<R, A, Raw = R> = {
3
+ baseQuery: BaseQueryFn<Raw>;
4
+ } & Omit<MutationBuilderDefinition<R, A, Raw>, 'type'>;
5
+ export declare function initiateMutation<R, A, Raw = R>({ query, baseQuery, invalidates, invalidatesTags, transformResponse, transformErrorResponse, }: InitiateMutationProps<R, A, Raw>, arg: A): MutationInitiateResult<R, A>;
6
+ export {};
7
+ //# sourceMappingURL=initiateMutation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initiateMutation.d.ts","sourceRoot":"","sources":["../../src/lib/initiateMutation.ts"],"names":[],"mappings":"AACA,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC9B,MAAM,mBAAmB,CAAC;AAG3B,KAAK,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI;IACxC,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;CAC/B,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AAEvD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAC1C,EACI,KAAK,EACL,SAAS,EACT,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,sBAAsB,GACzB,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EACnC,GAAG,EAAE,CAAC,GACP,sBAAsB,CAAC,CAAC,EAAE,CAAC,CAAC,CAqD9B"}
@@ -0,0 +1,47 @@
1
+ import { invalidateTags, refetchQueriesByEndpoint } from '../model/queryStore.js';
2
+ import { createRequestId } from './createRequestId.js';
3
+ export function initiateMutation({ query, baseQuery, invalidates, invalidatesTags, transformResponse, transformErrorResponse, }, arg) {
4
+ const requestId = createRequestId();
5
+ const controller = new AbortController();
6
+ const promise = (async () => {
7
+ try {
8
+ const request = query(arg);
9
+ const result = await baseQuery({
10
+ ...request,
11
+ signal: controller.signal,
12
+ });
13
+ if ('error' in result) {
14
+ const transformedError = transformErrorResponse
15
+ ? transformErrorResponse(result.error, arg)
16
+ : result.error;
17
+ throw transformedError;
18
+ }
19
+ const raw = result.data;
20
+ const data = transformResponse ? transformResponse(raw, arg) : raw;
21
+ invalidates?.forEach((endpointName) => {
22
+ refetchQueriesByEndpoint(endpointName);
23
+ });
24
+ if (invalidatesTags) {
25
+ invalidateTags(invalidatesTags(data, arg));
26
+ }
27
+ return data;
28
+ }
29
+ catch (error) {
30
+ if (controller.signal.aborted) {
31
+ throw error;
32
+ }
33
+ throw error;
34
+ }
35
+ })();
36
+ promise.catch(() => undefined);
37
+ return {
38
+ requestId,
39
+ arg,
40
+ promise,
41
+ unwrap: () => promise,
42
+ abort: () => {
43
+ controller.abort();
44
+ },
45
+ };
46
+ }
47
+ //# sourceMappingURL=initiateMutation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initiateMutation.js","sourceRoot":"","sources":["../../src/lib/initiateMutation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAMlF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,MAAM,UAAU,gBAAgB,CAC5B,EACI,KAAK,EACL,SAAS,EACT,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,sBAAsB,GACS,EACnC,GAAM;IAEN,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;IACpC,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IAEzC,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;QACxB,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC;gBAC3B,GAAG,OAAO;gBACV,MAAM,EAAE,UAAU,CAAC,MAAM;aAC5B,CAAC,CAAC;YAEH,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;gBACpB,MAAM,gBAAgB,GAAG,sBAAsB;oBAC3C,CAAC,CAAC,sBAAsB,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;oBAC3C,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAEnB,MAAM,gBAAgB,CAAC;YAC3B,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC;YACxB,MAAM,IAAI,GAAG,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAmB,CAAC;YAEnF,WAAW,EAAE,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;gBAClC,wBAAwB,CAAC,YAAY,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;YAEH,IAAI,eAAe,EAAE,CAAC;gBAClB,cAAc,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/C,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,EAAE,CAAC;YACX,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC5B,MAAM,KAAK,CAAC;YAChB,CAAC;YAED,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAE/B,OAAO;QACH,SAAS;QACT,GAAG;QACH,OAAO;QACP,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO;QACrB,KAAK,EAAE,GAAG,EAAE;YACR,UAAU,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type QueryInitiateResult } from '../model/types.js';
2
+ import { type RunQueryProps } from './runQuery.js';
3
+ export declare function initiateQuery<R, A, Raw = R>(props: RunQueryProps<R, A, Raw>, arg: A): QueryInitiateResult<R, A>;
4
+ //# sourceMappingURL=initiateQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initiateQuery.d.ts","sourceRoot":"","sources":["../../src/lib/initiateQuery.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAE7D,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EACvC,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAC/B,GAAG,EAAE,CAAC,GACP,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAyC3B"}
@@ -0,0 +1,35 @@
1
+ import { abortQueryByKey, getQueryKeyByEndpointArg, registerQueryKey, setQueryRunner, subscribeToQuery, } from '../model/queryStore.js';
2
+ import { createRequestId } from './createRequestId.js';
3
+ import { runQuery } from './runQuery.js';
4
+ export function initiateQuery(props, arg) {
5
+ const { endpointName, keepUnusedDataFor = 0, } = props;
6
+ const key = getQueryKeyByEndpointArg(endpointName, arg);
7
+ const requestId = createRequestId();
8
+ registerQueryKey(endpointName, key);
9
+ setQueryRunner(key, () => runQuery(props, arg, {
10
+ key,
11
+ requestId: createRequestId(),
12
+ }));
13
+ const unsubscribeFromQuery = subscribeToQuery(key, () => undefined, keepUnusedDataFor);
14
+ const promise = runQuery(props, arg, { key, requestId });
15
+ let didUnsubscribe = false;
16
+ const unsubscribe = () => {
17
+ if (didUnsubscribe) {
18
+ return;
19
+ }
20
+ didUnsubscribe = true;
21
+ unsubscribeFromQuery();
22
+ };
23
+ return {
24
+ requestId,
25
+ arg,
26
+ promise,
27
+ unwrap: () => promise,
28
+ abort: () => {
29
+ abortQueryByKey(key);
30
+ },
31
+ unsubscribe,
32
+ refetch: () => runQuery(props, arg, { key, requestId: createRequestId() }),
33
+ };
34
+ }
35
+ //# sourceMappingURL=initiateQuery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initiateQuery.js","sourceRoot":"","sources":["../../src/lib/initiateQuery.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,EACf,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,GACnB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAsB,MAAM,eAAe,CAAC;AAE7D,MAAM,UAAU,aAAa,CACzB,KAA+B,EAC/B,GAAM;IAEN,MAAM,EACF,YAAY,EACZ,iBAAiB,GAAG,CAAC,GACxB,GAAG,KAAK,CAAC;IAEV,MAAM,GAAG,GAAG,wBAAwB,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;IACxD,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;IAEpC,gBAAgB,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;IAEpC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE;QAC3C,GAAG;QACH,SAAS,EAAE,eAAe,EAAE;KAC/B,CAAC,CAAC,CAAC;IAEJ,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IACvF,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC;IAEzD,IAAI,cAAc,GAAG,KAAK,CAAC;IAE3B,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,IAAI,cAAc,EAAE,CAAC;YACjB,OAAO;QACX,CAAC;QAED,cAAc,GAAG,IAAI,CAAC;QACtB,oBAAoB,EAAE,CAAC;IAC3B,CAAC,CAAC;IAEF,OAAO;QACH,SAAS;QACT,GAAG;QACH,OAAO;QACP,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO;QACrB,KAAK,EAAE,GAAG,EAAE;YACR,eAAe,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QACD,WAAW;QACX,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,CAAC;KAC7E,CAAC;AACN,CAAC"}
@@ -1,15 +1,15 @@
1
- import { BaseQueryFn, QueryBuilderDefinition } from '../model/types.js';
2
- type MakeLazyQueryHookProps<R, A, Raw = R> = {
3
- endpointName: string;
4
- baseQuery: BaseQueryFn<Raw>;
5
- } & Omit<QueryBuilderDefinition<R, A, Raw>, 'type'>;
6
- export declare function makeLazyQueryHook<R, A, Raw = R>({ query, baseQuery, endpointName, providesTags, serializeArgs, transformResponse, keepUnusedDataFor, transformErrorResponse, }: MakeLazyQueryHookProps<R, A, Raw>): () => readonly [(arg: A) => Promise<R>, {
1
+ import { type RunQueryProps } from './runQuery.js';
2
+ export declare function makeLazyQueryHook<R, A, Raw = R>(props: RunQueryProps<R, A, Raw>): () => readonly [(arg: A) => Promise<R>, {
7
3
  readonly refetch: () => Promise<R> | undefined;
8
4
  readonly data?: unknown;
5
+ readonly error?: unknown;
6
+ readonly status: import("../model/types.js").QueryStatus;
7
+ readonly isUninitialized: boolean;
9
8
  readonly isLoading: boolean;
10
9
  readonly isFetching: boolean;
11
- readonly error?: unknown;
10
+ readonly isSuccess: boolean;
11
+ readonly isError: boolean;
12
12
  readonly fulfilledAt?: number;
13
+ readonly requestId?: string;
13
14
  }];
14
- export {};
15
15
  //# sourceMappingURL=makeLazyQueryHook.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"makeLazyQueryHook.d.ts","sourceRoot":"","sources":["../../src/lib/makeLazyQueryHook.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAmB,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEzF,KAAK,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;CAC/B,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AAEpD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,EAC7C,KAAK,EACL,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,iBAAqB,EACrB,sBAAsB,GACzB,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,yBAqJM,CAAC;;;;;;;GA8C1C"}
1
+ {"version":3,"file":"makeLazyQueryHook.d.ts","sourceRoot":"","sources":["../../src/lib/makeLazyQueryHook.ts"],"names":[],"mappings":"AAUA,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAE7D,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAC3C,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,yBA+DO,CAAC;;;;;;;;;;;;GA8C1C"}
@@ -1,7 +1,9 @@
1
1
  import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
2
2
  import { useSyncExternalStore } from 'use-sync-external-store/shim';
3
- import { setQueryRunner, initQueryState, getInFlightQuery, registerQueryKey, setInFlightQuery, updateQueryState, subscribeToQuery, clearInFlightQuery, setTagsForQueryKey, setQueryAbortController, scheduleCleanupIfUnused, clearQueryAbortController, } from '../model/queryStore.js';
4
- export function makeLazyQueryHook({ query, baseQuery, endpointName, providesTags, serializeArgs, transformResponse, keepUnusedDataFor = 0, transformErrorResponse, }) {
3
+ import { setQueryRunner, initQueryState, registerQueryKey, subscribeToQuery, scheduleCleanupIfUnused, getInitialQueryState, } from '../model/queryStore.js';
4
+ import { runQuery } from './runQuery.js';
5
+ export function makeLazyQueryHook(props) {
6
+ const { endpointName, serializeArgs, keepUnusedDataFor = 0, } = props;
5
7
  return function useGeneratedLazyQuery() {
6
8
  const [currentArg, setCurrentArg] = useState(undefined);
7
9
  const currentKey = useMemo(() => {
@@ -12,17 +14,11 @@ export function makeLazyQueryHook({ query, baseQuery, endpointName, providesTags
12
14
  ? serializeArgs(currentArg)
13
15
  : JSON.stringify(currentArg);
14
16
  return `${endpointName}::${serializedArg}`;
15
- }, [currentArg, endpointName, serializeArgs]);
17
+ }, [currentArg]);
16
18
  const argRef = useRef(currentArg);
17
19
  argRef.current = currentArg;
18
20
  const ownedKeyRef = useRef(null);
19
- const emptyState = {
20
- data: undefined,
21
- isLoading: false,
22
- isFetching: false,
23
- error: undefined,
24
- fulfilledAt: undefined,
25
- };
21
+ const emptyState = useMemo(() => getInitialQueryState(), []);
26
22
  const state = useSyncExternalStore((onStoreChange) => {
27
23
  if (!currentKey) {
28
24
  return () => undefined;
@@ -44,81 +40,8 @@ export function makeLazyQueryHook({ query, baseQuery, endpointName, providesTags
44
40
  ? serializeArgs(arg)
45
41
  : JSON.stringify(arg);
46
42
  const key = `${endpointName}::${serializedArg}`;
47
- const existingPromise = getInFlightQuery(key);
48
- if (existingPromise) {
49
- return existingPromise;
50
- }
51
- const controller = new AbortController();
52
- setQueryAbortController(key, controller);
53
- let promise;
54
- // eslint-disable-next-line prefer-const
55
- promise = (async () => {
56
- updateQueryState(key, (prevState) => ({
57
- ...prevState,
58
- error: undefined,
59
- ...(prevState.data !== undefined
60
- ? { isFetching: true, isLoading: false }
61
- : { isLoading: true, isFetching: false }),
62
- }));
63
- try {
64
- const request = query(arg);
65
- const result = await baseQuery({
66
- ...request,
67
- signal: controller.signal,
68
- });
69
- if ('error' in result) {
70
- const transformedError = transformErrorResponse
71
- ? transformErrorResponse(result.error, arg)
72
- : result.error;
73
- throw transformedError;
74
- }
75
- const raw = result.data;
76
- const data = transformResponse ? transformResponse(raw, arg) : raw;
77
- if (!controller.signal.aborted) {
78
- updateQueryState(key, (prevState) => ({
79
- ...prevState,
80
- data,
81
- error: undefined,
82
- fulfilledAt: Date.now(),
83
- }));
84
- if (providesTags) {
85
- setTagsForQueryKey(key, providesTags(data, arg));
86
- }
87
- }
88
- return data;
89
- }
90
- catch (error) {
91
- if (controller.signal.aborted)
92
- throw error;
93
- updateQueryState(key, (prevState) => ({
94
- ...prevState,
95
- error,
96
- }));
97
- throw error;
98
- }
99
- finally {
100
- if (!controller.signal.aborted) {
101
- updateQueryState(key, (prevState) => ({
102
- ...prevState,
103
- isLoading: false,
104
- isFetching: false,
105
- }));
106
- }
107
- clearInFlightQuery(key, promise);
108
- clearQueryAbortController(key, controller);
109
- }
110
- })();
111
- setInFlightQuery(key, promise);
112
- return promise;
113
- }, [
114
- query,
115
- baseQuery,
116
- endpointName,
117
- providesTags,
118
- serializeArgs,
119
- transformResponse,
120
- transformErrorResponse,
121
- ]);
43
+ return runQuery(props, arg, { key });
44
+ }, []);
122
45
  const trigger = useCallback((arg) => {
123
46
  const serializedArg = serializeArgs
124
47
  ? serializeArgs(arg)
@@ -133,7 +56,7 @@ export function makeLazyQueryHook({ query, baseQuery, endpointName, providesTags
133
56
  ownedKeyRef.current = nextKey;
134
57
  setCurrentArg(arg);
135
58
  return run(arg);
136
- }, [endpointName, keepUnusedDataFor, run, serializeArgs]);
59
+ }, [run]);
137
60
  const refetch = useCallback(() => {
138
61
  if (argRef.current === undefined) {
139
62
  return undefined;
@@ -150,7 +73,7 @@ export function makeLazyQueryHook({ query, baseQuery, endpointName, providesTags
150
73
  ownedKeyRef.current = null;
151
74
  }
152
75
  };
153
- }, [currentKey, keepUnusedDataFor]);
76
+ }, [currentKey]);
154
77
  return [trigger, { ...state, refetch }];
155
78
  };
156
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"makeLazyQueryHook.js","sourceRoot":"","sources":["../../src/lib/makeLazyQueryHook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makeLazyQueryHook.js","sourceRoot":"","sources":["../../src/lib/makeLazyQueryHook.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { BaseQueryFn, MutationBuilderDefinition } from '../model/types.js';
1
+ import { type BaseQueryFn, type MutationBuilderDefinition } from '../model/types.js';
2
2
  type MakeMutationHookProps<R, A, Raw = R> = {
3
3
  baseQuery: BaseQueryFn<Raw>;
4
4
  } & Omit<MutationBuilderDefinition<R, A, Raw>, 'type'>;
@@ -1 +1 @@
1
- {"version":3,"file":"makeMutationHook.d.ts","sourceRoot":"","sources":["../../src/lib/makeMutationHook.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAsB,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE/F,KAAK,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI;IACxC,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;CAC/B,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AAEvD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,EAC5C,KAAK,EACL,SAAS,EACT,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,sBAAsB,GACzB,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,yBAea,CAAC;;;;;GA+EhD"}
1
+ {"version":3,"file":"makeMutationHook.d.ts","sourceRoot":"","sources":["../../src/lib/makeMutationHook.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,WAAW,EAA2B,KAAK,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9G,KAAK,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI;IACxC,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;CAC/B,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AAEvD,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,EAC5C,KAAK,EACL,SAAS,EACT,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,sBAAsB,GACzB,EAAE,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,yBAea,CAAC;;;;;GA0EhD"}
@@ -1,5 +1,5 @@
1
1
  import { useCallback, useMemo, useRef, useState } from 'react';
2
- import { getQueryKeysByTag, refetchQueryByKey, refetchQueriesByEndpoint, } from '../model/queryStore.js';
2
+ import { invalidateTags, refetchQueriesByEndpoint } from '../model/queryStore.js';
3
3
  export function makeMutationHook({ query, baseQuery, invalidates, invalidatesTags, transformResponse, transformErrorResponse, }) {
4
4
  return function useGeneratedMutation() {
5
5
  const initialState = useMemo(() => ({
@@ -43,11 +43,7 @@ export function makeMutationHook({ query, baseQuery, invalidates, invalidatesTag
43
43
  refetchQueriesByEndpoint(endpointName);
44
44
  });
45
45
  if (invalidatesTags) {
46
- const tags = invalidatesTags(data, arg);
47
- const keys = new Set(tags.flatMap((tag) => getQueryKeysByTag(tag)));
48
- keys.forEach((key) => {
49
- refetchQueryByKey(key);
50
- });
46
+ invalidateTags(invalidatesTags(data, arg));
51
47
  }
52
48
  return data;
53
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"makeMutationHook.js","sourceRoot":"","sources":["../../src/lib/makeMutationHook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makeMutationHook.js","sourceRoot":"","sources":["../../src/lib/makeMutationHook.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,16 @@
1
- import { BaseQueryFn, QueryBuilderDefinition, QueryHookOptions } from '../model/types.js';
2
- type MakeQueryHookProps<R, A, Raw = R> = {
3
- endpointName: string;
4
- baseQuery: BaseQueryFn<Raw>;
5
- } & Omit<QueryBuilderDefinition<R, A, Raw>, 'type'>;
6
- export declare function makeQueryHook<R, A, Raw = R>({ query, baseQuery, endpointName, providesTags, serializeArgs, staleTime, transformResponse, keepUnusedDataFor, transformErrorResponse, }: MakeQueryHookProps<R, A, Raw>): (arg: A, options?: QueryHookOptions) => {
1
+ import { type QueryHookOptions } from '../model/types.js';
2
+ import { type RunQueryProps } from './runQuery.js';
3
+ export declare function makeQueryHook<R, A, Raw = R>(props: RunQueryProps<R, A, Raw>): (arg: A, options?: QueryHookOptions) => {
7
4
  refetch: () => Promise<R>;
8
5
  data?: unknown;
6
+ error?: unknown;
7
+ status: import("../model/types.js").QueryStatus;
8
+ isUninitialized: boolean;
9
9
  isLoading: boolean;
10
10
  isFetching: boolean;
11
- error?: unknown;
11
+ isSuccess: boolean;
12
+ isError: boolean;
12
13
  fulfilledAt?: number;
14
+ requestId?: string;
13
15
  };
14
- export {};
15
16
  //# sourceMappingURL=makeQueryHook.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"makeQueryHook.d.ts","sourceRoot":"","sources":["../../src/lib/makeQueryHook.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1F,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;CAC/B,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AAEpD,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,EACzC,KAAK,EACL,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,SAAa,EACb,iBAAiB,EACjB,iBAAqB,EACrB,sBAAsB,GACzB,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IACM,KAAK,CAAC,EAAE,UAAU,gBAAgB;;;;;;;EAoJvE"}
1
+ {"version":3,"file":"makeQueryHook.d.ts","sourceRoot":"","sources":["../../src/lib/makeQueryHook.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAE7D,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,EACvC,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IASG,KAAK,CAAC,EAAE,UAAU,gBAAgB;;;;;;;;;;;;EA4DvE"}