@gravity-ui/data-source 0.6.0 → 0.7.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 (200) hide show
  1. package/build/cjs/core/index.d.ts +3 -2
  2. package/build/cjs/core/index.js +7 -0
  3. package/build/cjs/core/index.js.map +1 -1
  4. package/build/cjs/core/types/{DataManger.js → DataManager.js} +1 -1
  5. package/build/cjs/core/types/DataManager.js.map +1 -0
  6. package/build/cjs/core/types/DataSource.d.ts +15 -19
  7. package/build/cjs/core/types/DataSource.js.map +1 -1
  8. package/build/cjs/core/utils/__tests__/composeFullKey.test.js +34 -0
  9. package/build/cjs/core/utils/__tests__/composeFullKey.test.js.map +1 -0
  10. package/build/cjs/core/utils/__tests__/composeKey.test.js +32 -0
  11. package/build/cjs/core/utils/__tests__/composeKey.test.js.map +1 -0
  12. package/build/cjs/core/utils/__tests__/getError.test.js +31 -0
  13. package/build/cjs/core/utils/__tests__/getError.test.js.map +1 -0
  14. package/build/cjs/core/utils/__tests__/getStatus.test.js +49 -0
  15. package/build/cjs/core/utils/__tests__/getStatus.test.js.map +1 -0
  16. package/build/cjs/core/utils/__tests__/hasTag.test.js +31 -0
  17. package/build/cjs/core/utils/__tests__/hasTag.test.js.map +1 -0
  18. package/build/cjs/core/utils/__tests__/mergeStatuses.test.js +25 -0
  19. package/build/cjs/core/utils/__tests__/mergeStatuses.test.js.map +1 -0
  20. package/build/cjs/core/utils/__tests__/skipContext.test.js +70 -0
  21. package/build/cjs/core/utils/__tests__/skipContext.test.js.map +1 -0
  22. package/build/cjs/core/utils/__tests__/withCancellation.test.js +106 -0
  23. package/build/cjs/core/utils/__tests__/withCancellation.test.js.map +1 -0
  24. package/build/cjs/core/utils/__tests__/withCatch.test.js +208 -0
  25. package/build/cjs/core/utils/__tests__/withCatch.test.js.map +1 -0
  26. package/build/cjs/core/utils/hasTag.js +1 -1
  27. package/build/cjs/core/utils/hasTag.js.map +1 -1
  28. package/build/cjs/core/utils/withCatch.d.ts +26 -0
  29. package/build/cjs/core/utils/withCatch.js +37 -0
  30. package/build/cjs/core/utils/withCatch.js.map +1 -0
  31. package/build/cjs/react/DataManagerContext.js +1 -1
  32. package/build/cjs/react/DataManagerContext.js.map +1 -1
  33. package/build/cjs/react/__tests__/DataManagerContext.test.js +46 -0
  34. package/build/cjs/react/__tests__/DataManagerContext.test.js.map +1 -0
  35. package/build/cjs/react/__tests__/withDataManager.test.js +58 -0
  36. package/build/cjs/react/__tests__/withDataManager.test.js.map +1 -0
  37. package/build/cjs/react/components/DataInfiniteLoader/__tests__/DataInfiniteLoader.test.js +187 -0
  38. package/build/cjs/react/components/DataInfiniteLoader/__tests__/DataInfiniteLoader.test.js.map +1 -0
  39. package/build/cjs/react/components/DataLoader/__tests__/DataLoader.test.js +119 -0
  40. package/build/cjs/react/components/DataLoader/__tests__/DataLoader.test.js.map +1 -0
  41. package/build/cjs/react/withDataManager.d.ts +1 -1
  42. package/build/cjs/react/withDataManager.js +3 -3
  43. package/build/cjs/react/withDataManager.js.map +1 -1
  44. package/build/cjs/react-query/ClientDataManager.d.ts +1 -1
  45. package/build/cjs/react-query/ClientDataManager.js +6 -6
  46. package/build/cjs/react-query/ClientDataManager.js.map +1 -1
  47. package/build/cjs/react-query/constants.d.ts +2 -0
  48. package/build/cjs/react-query/constants.js +9 -0
  49. package/build/cjs/react-query/constants.js.map +1 -0
  50. package/build/cjs/react-query/hooks/__tests__/useQueryContext.test.js +55 -0
  51. package/build/cjs/react-query/hooks/__tests__/useQueryContext.test.js.map +1 -0
  52. package/build/cjs/react-query/hooks/__tests__/useQueryData.test.js +97 -0
  53. package/build/cjs/react-query/hooks/__tests__/useQueryData.test.js.map +1 -0
  54. package/build/cjs/react-query/hooks/__tests__/useQueryResponses.test.js +77 -0
  55. package/build/cjs/react-query/hooks/__tests__/useQueryResponses.test.js.map +1 -0
  56. package/build/cjs/react-query/hooks/__tests__/useRefetchAll.test.js +79 -0
  57. package/build/cjs/react-query/hooks/__tests__/useRefetchAll.test.js.map +1 -0
  58. package/build/cjs/react-query/hooks/__tests__/useRefetchErrored.test.js +117 -0
  59. package/build/cjs/react-query/hooks/__tests__/useRefetchErrored.test.js.map +1 -0
  60. package/build/cjs/react-query/hooks/__tests__/useRefetchInterval.test.js +156 -0
  61. package/build/cjs/react-query/hooks/__tests__/useRefetchInterval.test.js.map +1 -0
  62. package/build/cjs/react-query/hooks/useRefetchInterval.d.ts +1 -1
  63. package/build/cjs/react-query/impl/infinite/factory.d.ts +1 -1
  64. package/build/cjs/react-query/impl/infinite/factory.js.map +1 -1
  65. package/build/cjs/react-query/impl/infinite/types.d.ts +7 -7
  66. package/build/cjs/react-query/impl/infinite/types.js.map +1 -1
  67. package/build/cjs/react-query/impl/infinite/utils.js +11 -22
  68. package/build/cjs/react-query/impl/infinite/utils.js.map +1 -1
  69. package/build/cjs/react-query/impl/plain/factory.d.ts +1 -1
  70. package/build/cjs/react-query/impl/plain/factory.js.map +1 -1
  71. package/build/cjs/react-query/impl/plain/types.d.ts +4 -4
  72. package/build/cjs/react-query/impl/plain/types.js.map +1 -1
  73. package/build/cjs/react-query/impl/plain/utils.js +12 -23
  74. package/build/cjs/react-query/impl/plain/utils.js.map +1 -1
  75. package/build/cjs/react-query/utils/__tests__/formatNullableValue.test.js +27 -0
  76. package/build/cjs/react-query/utils/__tests__/formatNullableValue.test.js.map +1 -0
  77. package/build/cjs/react-query/utils/__tests__/getProgressiveRefetch.test.js +76 -0
  78. package/build/cjs/react-query/utils/__tests__/getProgressiveRefetch.test.js.map +1 -0
  79. package/build/cjs/react-query/utils/__tests__/normalizeStatus.test.js +30 -0
  80. package/build/cjs/react-query/utils/__tests__/normalizeStatus.test.js.map +1 -0
  81. package/build/cjs/react-query/utils/__tests__/notReachable.test.js +35 -0
  82. package/build/cjs/react-query/utils/__tests__/notReachable.test.js.map +1 -0
  83. package/build/cjs/react-query/utils/__tests__/parseNullableValue.test.js +27 -0
  84. package/build/cjs/react-query/utils/__tests__/parseNullableValue.test.js.map +1 -0
  85. package/build/cjs/react-query/utils/formatNullableValue.d.ts +2 -0
  86. package/build/cjs/react-query/utils/formatNullableValue.js +17 -0
  87. package/build/cjs/react-query/utils/formatNullableValue.js.map +1 -0
  88. package/build/cjs/react-query/utils/getProgressiveRefetch.d.ts +2 -2
  89. package/build/cjs/react-query/utils/parseNullableValue.d.ts +2 -0
  90. package/build/cjs/react-query/utils/parseNullableValue.js +17 -0
  91. package/build/cjs/react-query/utils/parseNullableValue.js.map +1 -0
  92. package/build/cjs/setupTests.d.ts +1 -0
  93. package/build/cjs/setupTests.js +4 -0
  94. package/build/cjs/setupTests.js.map +1 -0
  95. package/build/esm/core/index.d.ts +3 -2
  96. package/build/esm/core/index.js +1 -0
  97. package/build/esm/core/index.js.map +1 -1
  98. package/build/esm/core/types/DataManager.js +2 -0
  99. package/build/esm/core/types/DataManager.js.map +1 -0
  100. package/build/esm/core/types/DataSource.d.ts +15 -19
  101. package/build/esm/core/types/DataSource.js.map +1 -1
  102. package/build/esm/core/utils/__tests__/composeFullKey.test.js +32 -0
  103. package/build/esm/core/utils/__tests__/composeFullKey.test.js.map +1 -0
  104. package/build/esm/core/utils/__tests__/composeKey.test.js +30 -0
  105. package/build/esm/core/utils/__tests__/composeKey.test.js.map +1 -0
  106. package/build/esm/core/utils/__tests__/getError.test.js +29 -0
  107. package/build/esm/core/utils/__tests__/getError.test.js.map +1 -0
  108. package/build/esm/core/utils/__tests__/getStatus.test.js +47 -0
  109. package/build/esm/core/utils/__tests__/getStatus.test.js.map +1 -0
  110. package/build/esm/core/utils/__tests__/hasTag.test.js +29 -0
  111. package/build/esm/core/utils/__tests__/hasTag.test.js.map +1 -0
  112. package/build/esm/core/utils/__tests__/mergeStatuses.test.js +23 -0
  113. package/build/esm/core/utils/__tests__/mergeStatuses.test.js.map +1 -0
  114. package/build/esm/core/utils/__tests__/skipContext.test.js +67 -0
  115. package/build/esm/core/utils/__tests__/skipContext.test.js.map +1 -0
  116. package/build/esm/core/utils/__tests__/withCancellation.test.js +104 -0
  117. package/build/esm/core/utils/__tests__/withCancellation.test.js.map +1 -0
  118. package/build/esm/core/utils/__tests__/withCatch.test.js +205 -0
  119. package/build/esm/core/utils/__tests__/withCatch.test.js.map +1 -0
  120. package/build/esm/core/utils/hasTag.js +1 -1
  121. package/build/esm/core/utils/hasTag.js.map +1 -1
  122. package/build/esm/core/utils/withCatch.d.ts +26 -0
  123. package/build/esm/core/utils/withCatch.js +31 -0
  124. package/build/esm/core/utils/withCatch.js.map +1 -0
  125. package/build/esm/react/DataManagerContext.js +1 -1
  126. package/build/esm/react/DataManagerContext.js.map +1 -1
  127. package/build/esm/react/__tests__/DataManagerContext.test.js +43 -0
  128. package/build/esm/react/__tests__/DataManagerContext.test.js.map +1 -0
  129. package/build/esm/react/__tests__/withDataManager.test.js +55 -0
  130. package/build/esm/react/__tests__/withDataManager.test.js.map +1 -0
  131. package/build/esm/react/components/DataInfiniteLoader/__tests__/DataInfiniteLoader.test.js +184 -0
  132. package/build/esm/react/components/DataInfiniteLoader/__tests__/DataInfiniteLoader.test.js.map +1 -0
  133. package/build/esm/react/components/DataLoader/__tests__/DataLoader.test.js +116 -0
  134. package/build/esm/react/components/DataLoader/__tests__/DataLoader.test.js.map +1 -0
  135. package/build/esm/react/withDataManager.d.ts +1 -1
  136. package/build/esm/react/withDataManager.js +3 -3
  137. package/build/esm/react/withDataManager.js.map +1 -1
  138. package/build/esm/react-query/ClientDataManager.d.ts +1 -1
  139. package/build/esm/react-query/ClientDataManager.js +6 -6
  140. package/build/esm/react-query/ClientDataManager.js.map +1 -1
  141. package/build/esm/react-query/constants.d.ts +2 -0
  142. package/build/esm/react-query/constants.js +3 -0
  143. package/build/esm/react-query/constants.js.map +1 -0
  144. package/build/esm/react-query/hooks/__tests__/useQueryContext.test.js +52 -0
  145. package/build/esm/react-query/hooks/__tests__/useQueryContext.test.js.map +1 -0
  146. package/build/esm/react-query/hooks/__tests__/useQueryData.test.js +95 -0
  147. package/build/esm/react-query/hooks/__tests__/useQueryData.test.js.map +1 -0
  148. package/build/esm/react-query/hooks/__tests__/useQueryResponses.test.js +74 -0
  149. package/build/esm/react-query/hooks/__tests__/useQueryResponses.test.js.map +1 -0
  150. package/build/esm/react-query/hooks/__tests__/useRefetchAll.test.js +77 -0
  151. package/build/esm/react-query/hooks/__tests__/useRefetchAll.test.js.map +1 -0
  152. package/build/esm/react-query/hooks/__tests__/useRefetchErrored.test.js +115 -0
  153. package/build/esm/react-query/hooks/__tests__/useRefetchErrored.test.js.map +1 -0
  154. package/build/esm/react-query/hooks/__tests__/useRefetchInterval.test.js +154 -0
  155. package/build/esm/react-query/hooks/__tests__/useRefetchInterval.test.js.map +1 -0
  156. package/build/esm/react-query/hooks/useRefetchInterval.d.ts +1 -1
  157. package/build/esm/react-query/impl/infinite/factory.d.ts +1 -1
  158. package/build/esm/react-query/impl/infinite/factory.js.map +1 -1
  159. package/build/esm/react-query/impl/infinite/types.d.ts +7 -7
  160. package/build/esm/react-query/impl/infinite/types.js.map +1 -1
  161. package/build/esm/react-query/impl/infinite/utils.js +9 -20
  162. package/build/esm/react-query/impl/infinite/utils.js.map +1 -1
  163. package/build/esm/react-query/impl/plain/factory.d.ts +1 -1
  164. package/build/esm/react-query/impl/plain/factory.js.map +1 -1
  165. package/build/esm/react-query/impl/plain/types.d.ts +4 -4
  166. package/build/esm/react-query/impl/plain/types.js.map +1 -1
  167. package/build/esm/react-query/impl/plain/utils.js +10 -21
  168. package/build/esm/react-query/impl/plain/utils.js.map +1 -1
  169. package/build/esm/react-query/utils/__tests__/formatNullableValue.test.js +25 -0
  170. package/build/esm/react-query/utils/__tests__/formatNullableValue.test.js.map +1 -0
  171. package/build/esm/react-query/utils/__tests__/getProgressiveRefetch.test.js +74 -0
  172. package/build/esm/react-query/utils/__tests__/getProgressiveRefetch.test.js.map +1 -0
  173. package/build/esm/react-query/utils/__tests__/normalizeStatus.test.js +28 -0
  174. package/build/esm/react-query/utils/__tests__/normalizeStatus.test.js.map +1 -0
  175. package/build/esm/react-query/utils/__tests__/notReachable.test.js +33 -0
  176. package/build/esm/react-query/utils/__tests__/notReachable.test.js.map +1 -0
  177. package/build/esm/react-query/utils/__tests__/parseNullableValue.test.js +25 -0
  178. package/build/esm/react-query/utils/__tests__/parseNullableValue.test.js.map +1 -0
  179. package/build/esm/react-query/utils/formatNullableValue.d.ts +2 -0
  180. package/build/esm/react-query/utils/formatNullableValue.js +11 -0
  181. package/build/esm/react-query/utils/formatNullableValue.js.map +1 -0
  182. package/build/esm/react-query/utils/getProgressiveRefetch.d.ts +2 -2
  183. package/build/esm/react-query/utils/parseNullableValue.d.ts +2 -0
  184. package/build/esm/react-query/utils/parseNullableValue.js +11 -0
  185. package/build/esm/react-query/utils/parseNullableValue.js.map +1 -0
  186. package/build/esm/setupTests.d.ts +1 -0
  187. package/build/esm/setupTests.js +2 -0
  188. package/build/esm/setupTests.js.map +1 -0
  189. package/package.json +17 -13
  190. package/build/cjs/core/types/DataManger.js.map +0 -1
  191. package/build/cjs/react-query/impl/utils.d.ts +0 -4
  192. package/build/cjs/react-query/impl/utils.js +0 -27
  193. package/build/cjs/react-query/impl/utils.js.map +0 -1
  194. package/build/esm/core/types/DataManger.js +0 -2
  195. package/build/esm/core/types/DataManger.js.map +0 -1
  196. package/build/esm/react-query/impl/utils.d.ts +0 -4
  197. package/build/esm/react-query/impl/utils.js +0 -21
  198. package/build/esm/react-query/impl/utils.js.map +0 -1
  199. /package/build/cjs/core/types/{DataManger.d.ts → DataManager.d.ts} +0 -0
  200. /package/build/esm/core/types/{DataManger.d.ts → DataManager.d.ts} +0 -0
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+
3
+ var _reactQuery = require("@tanstack/react-query");
4
+ var _react = require("@testing-library/react");
5
+ var _hooks = require("../../impl/infinite/hooks");
6
+ var _hooks2 = require("../../impl/plain/hooks");
7
+ var _notReachable = require("../../utils/notReachable");
8
+ var _useQueryContext = require("../useQueryContext");
9
+ var _useQueryData = require("../useQueryData");
10
+ jest.mock('../useQueryContext');
11
+ jest.mock('../../impl/plain/hooks');
12
+ jest.mock('../../impl/infinite/hooks');
13
+ jest.mock('../../utils/notReachable');
14
+ describe('useQueryData', function () {
15
+ var mockQueryClient = new _reactQuery.QueryClient();
16
+ var mockContext = {
17
+ queryClient: mockQueryClient
18
+ };
19
+ var mockPlainState = {
20
+ status: 'success',
21
+ data: 'plain data'
22
+ };
23
+ var mockInfiniteState = {
24
+ status: 'success',
25
+ data: ['infinite data']
26
+ };
27
+ beforeEach(function () {
28
+ jest.clearAllMocks();
29
+ _useQueryContext.useQueryContext.mockReturnValue(mockContext);
30
+ _hooks2.usePlainQueryData.mockReturnValue(mockPlainState);
31
+ _hooks.useInfiniteQueryData.mockReturnValue(mockInfiniteState);
32
+ _notReachable.notReachable.mockReturnValue('not reachable');
33
+ });
34
+ it('should call usePlainQueryData for plain data source', function () {
35
+ var dataSource = {
36
+ type: 'plain',
37
+ name: 'test',
38
+ fetch: jest.fn()
39
+ };
40
+ var params = {
41
+ id: 1
42
+ };
43
+ var options = {
44
+ refetchInterval: 1000
45
+ };
46
+ var _renderHook = (0, _react.renderHook)(function () {
47
+ return (0, _useQueryData.useQueryData)(dataSource, params, options);
48
+ }),
49
+ result = _renderHook.result;
50
+ expect(_useQueryContext.useQueryContext).toHaveBeenCalled();
51
+ expect(_hooks2.usePlainQueryData).toHaveBeenCalledWith(mockContext, dataSource, params, options);
52
+ expect(_hooks.useInfiniteQueryData).not.toHaveBeenCalled();
53
+ expect(result.current).toBe(mockPlainState);
54
+ });
55
+ it('should call useInfiniteQueryData for infinite data source', function () {
56
+ var dataSource = {
57
+ type: 'infinite',
58
+ name: 'test',
59
+ fetch: jest.fn(),
60
+ next: jest.fn()
61
+ };
62
+ var params = {
63
+ id: 1
64
+ };
65
+ var options = {
66
+ refetchInterval: 1000
67
+ };
68
+ var _renderHook2 = (0, _react.renderHook)(function () {
69
+ return (0, _useQueryData.useQueryData)(dataSource, params, options);
70
+ }),
71
+ result = _renderHook2.result;
72
+ expect(_useQueryContext.useQueryContext).toHaveBeenCalled();
73
+ expect(_hooks.useInfiniteQueryData).toHaveBeenCalledWith(mockContext, dataSource, params, options);
74
+ expect(_hooks2.usePlainQueryData).not.toHaveBeenCalled();
75
+ expect(result.current).toBe(mockInfiniteState);
76
+ });
77
+ it('should call notReachable for unknown data source type', function () {
78
+ var dataSource = {
79
+ type: 'unknown',
80
+ name: 'test',
81
+ fetch: jest.fn()
82
+ };
83
+ var params = {
84
+ id: 1
85
+ };
86
+ _notReachable.notReachable.mockImplementation(function () {
87
+ return 'not reachable';
88
+ });
89
+ (0, _react.renderHook)(function () {
90
+ return (0, _useQueryData.useQueryData)(dataSource, params);
91
+ });
92
+ expect(_hooks2.usePlainQueryData).not.toHaveBeenCalled();
93
+ expect(_hooks.useInfiniteQueryData).not.toHaveBeenCalled();
94
+ expect(_notReachable.notReachable).toHaveBeenCalledWith('unknown', expect.any(String));
95
+ });
96
+ });
97
+ // #sourceMappingURL=useQueryData.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactQuery","require","_react","_hooks","_hooks2","_notReachable","_useQueryContext","_useQueryData","jest","mock","describe","mockQueryClient","QueryClient","mockContext","queryClient","mockPlainState","status","data","mockInfiniteState","beforeEach","clearAllMocks","useQueryContext","mockReturnValue","usePlainQueryData","useInfiniteQueryData","notReachable","it","dataSource","type","name","fetch","fn","params","id","options","refetchInterval","_renderHook","renderHook","useQueryData","result","expect","toHaveBeenCalled","toHaveBeenCalledWith","not","current","toBe","next","_renderHook2","mockImplementation","any","String"],"sources":["useQueryData.test.ts"],"sourcesContent":["import {QueryClient} from '@tanstack/react-query';\nimport {renderHook} from '@testing-library/react';\n\nimport {useInfiniteQueryData} from '../../impl/infinite/hooks';\nimport type {AnyInfiniteQueryDataSource} from '../../impl/infinite/types';\nimport {usePlainQueryData} from '../../impl/plain/hooks';\nimport type {AnyPlainQueryDataSource} from '../../impl/plain/types';\nimport type {AnyQueryDataSource} from '../../types/base';\nimport {notReachable} from '../../utils/notReachable';\nimport {useQueryContext} from '../useQueryContext';\nimport {useQueryData} from '../useQueryData';\n\njest.mock('../useQueryContext');\njest.mock('../../impl/plain/hooks');\njest.mock('../../impl/infinite/hooks');\njest.mock('../../utils/notReachable');\n\ndescribe('useQueryData', () => {\n const mockQueryClient = new QueryClient();\n const mockContext = {queryClient: mockQueryClient};\n const mockPlainState = {status: 'success', data: 'plain data'};\n const mockInfiniteState = {status: 'success', data: ['infinite data']};\n\n beforeEach(() => {\n jest.clearAllMocks();\n\n (useQueryContext as jest.Mock).mockReturnValue(mockContext);\n (usePlainQueryData as jest.Mock).mockReturnValue(mockPlainState);\n (useInfiniteQueryData as jest.Mock).mockReturnValue(mockInfiniteState);\n (notReachable as unknown as jest.Mock).mockReturnValue('not reachable');\n });\n\n it('should call usePlainQueryData for plain data source', () => {\n const dataSource: AnyPlainQueryDataSource = {\n type: 'plain',\n name: 'test',\n fetch: jest.fn(),\n };\n const params = {id: 1};\n const options = {refetchInterval: 1000};\n\n const {result} = renderHook(() => useQueryData(dataSource, params, options));\n\n expect(useQueryContext).toHaveBeenCalled();\n expect(usePlainQueryData).toHaveBeenCalledWith(mockContext, dataSource, params, options);\n expect(useInfiniteQueryData).not.toHaveBeenCalled();\n expect(result.current).toBe(mockPlainState);\n });\n\n it('should call useInfiniteQueryData for infinite data source', () => {\n const dataSource: AnyInfiniteQueryDataSource = {\n type: 'infinite',\n name: 'test',\n fetch: jest.fn(),\n next: jest.fn(),\n };\n const params = {id: 1};\n const options = {refetchInterval: 1000};\n\n const {result} = renderHook(() => useQueryData(dataSource, params, options));\n\n expect(useQueryContext).toHaveBeenCalled();\n expect(useInfiniteQueryData).toHaveBeenCalledWith(mockContext, dataSource, params, options);\n expect(usePlainQueryData).not.toHaveBeenCalled();\n expect(result.current).toBe(mockInfiniteState);\n });\n\n it('should call notReachable for unknown data source type', () => {\n const dataSource = {\n type: 'unknown',\n name: 'test',\n fetch: jest.fn(),\n } as unknown as AnyQueryDataSource;\n const params = {id: 1};\n\n (notReachable as unknown as jest.Mock).mockImplementation(() => {\n return 'not reachable';\n });\n\n renderHook(() => useQueryData(dataSource, params));\n\n expect(usePlainQueryData).not.toHaveBeenCalled();\n expect(useInfiniteQueryData).not.toHaveBeenCalled();\n expect(notReachable).toHaveBeenCalledWith('unknown', expect.any(String));\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
4
+ var _react = require("@testing-library/react");
5
+ var _core = require("../../../core");
6
+ var _useQueryResponses = require("../useQueryResponses");
7
+ var _useRefetchAll = require("../useRefetchAll");
8
+ var _useRefetchErrored = require("../useRefetchErrored");
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ jest.mock('../useRefetchAll');
11
+ jest.mock('../useRefetchErrored');
12
+ jest.mock('../../../core', function () {
13
+ var originalModule = jest.requireActual('../../../core');
14
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, originalModule), {}, {
15
+ getStatus: jest.fn(),
16
+ getError: jest.fn()
17
+ });
18
+ });
19
+ describe('useQueryResponses', function () {
20
+ var mockRefetchAll = jest.fn();
21
+ var mockRefetchErrored = jest.fn();
22
+ beforeEach(function () {
23
+ jest.clearAllMocks();
24
+ _useRefetchAll.useRefetchAll.mockReturnValue(mockRefetchAll);
25
+ _useRefetchErrored.useRefetchErrored.mockReturnValue(mockRefetchErrored);
26
+ _core.getStatus.mockReturnValue('success');
27
+ _core.getError.mockReturnValue(null);
28
+ });
29
+ it('should return combined status, error, and refetch functions', function () {
30
+ var responses = [{
31
+ status: 'loading',
32
+ error: null,
33
+ refetch: jest.fn()
34
+ }, {
35
+ status: 'success',
36
+ error: null,
37
+ refetch: jest.fn()
38
+ }, {
39
+ status: 'error',
40
+ error: {
41
+ message: 'Error'
42
+ },
43
+ refetch: jest.fn()
44
+ }];
45
+ var _renderHook = (0, _react.renderHook)(function () {
46
+ return (0, _useQueryResponses.useQueryResponses)(responses);
47
+ }),
48
+ result = _renderHook.result;
49
+ expect(_core.getStatus).toHaveBeenCalledWith(responses);
50
+ expect(_core.getError).toHaveBeenCalledWith(responses);
51
+ expect(_useRefetchAll.useRefetchAll).toHaveBeenCalledWith(responses);
52
+ expect(_useRefetchErrored.useRefetchErrored).toHaveBeenCalledWith(responses);
53
+ expect(result.current).toEqual({
54
+ status: 'success',
55
+ error: null,
56
+ refetch: mockRefetchAll,
57
+ refetchErrored: mockRefetchErrored
58
+ });
59
+ });
60
+ it('should handle empty responses array', function () {
61
+ var _renderHook2 = (0, _react.renderHook)(function () {
62
+ return (0, _useQueryResponses.useQueryResponses)([]);
63
+ }),
64
+ result = _renderHook2.result;
65
+ expect(_core.getStatus).toHaveBeenCalledWith([]);
66
+ expect(_core.getError).toHaveBeenCalledWith([]);
67
+ expect(_useRefetchAll.useRefetchAll).toHaveBeenCalledWith([]);
68
+ expect(_useRefetchErrored.useRefetchErrored).toHaveBeenCalledWith([]);
69
+ expect(result.current).toEqual({
70
+ status: 'success',
71
+ error: null,
72
+ refetch: mockRefetchAll,
73
+ refetchErrored: mockRefetchErrored
74
+ });
75
+ });
76
+ });
77
+ // #sourceMappingURL=useQueryResponses.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_core","_useQueryResponses","_useRefetchAll","_useRefetchErrored","_interopRequireDefault","e","__esModule","default","jest","mock","originalModule","requireActual","_objectSpread","getStatus","fn","getError","describe","mockRefetchAll","mockRefetchErrored","beforeEach","clearAllMocks","useRefetchAll","mockReturnValue","useRefetchErrored","it","responses","status","error","refetch","message","_renderHook","renderHook","useQueryResponses","result","expect","toHaveBeenCalledWith","current","toEqual","refetchErrored","_renderHook2"],"sources":["useQueryResponses.test.ts"],"sourcesContent":["import {renderHook} from '@testing-library/react';\n\nimport {getError, getStatus} from '../../../core';\nimport type {DataLoaderStatus} from '../../../core/types/DataLoaderStatus';\nimport {useQueryResponses} from '../useQueryResponses';\nimport {useRefetchAll} from '../useRefetchAll';\nimport {useRefetchErrored} from '../useRefetchErrored';\n\njest.mock('../useRefetchAll');\njest.mock('../useRefetchErrored');\njest.mock('../../../core', () => {\n const originalModule = jest.requireActual('../../../core');\n return {\n ...originalModule,\n getStatus: jest.fn(),\n getError: jest.fn(),\n };\n});\n\ndescribe('useQueryResponses', () => {\n const mockRefetchAll = jest.fn();\n const mockRefetchErrored = jest.fn();\n\n beforeEach(() => {\n jest.clearAllMocks();\n\n (useRefetchAll as jest.Mock).mockReturnValue(mockRefetchAll);\n (useRefetchErrored as jest.Mock).mockReturnValue(mockRefetchErrored);\n (getStatus as jest.Mock).mockReturnValue('success');\n (getError as jest.Mock).mockReturnValue(null);\n });\n\n it('should return combined status, error, and refetch functions', () => {\n const responses = [\n {status: 'loading' as DataLoaderStatus, error: null, refetch: jest.fn()},\n {status: 'success' as DataLoaderStatus, error: null, refetch: jest.fn()},\n {status: 'error' as DataLoaderStatus, error: {message: 'Error'}, refetch: jest.fn()},\n ];\n\n const {result} = renderHook(() => useQueryResponses(responses));\n\n expect(getStatus).toHaveBeenCalledWith(responses);\n expect(getError).toHaveBeenCalledWith(responses);\n expect(useRefetchAll).toHaveBeenCalledWith(responses);\n expect(useRefetchErrored).toHaveBeenCalledWith(responses);\n expect(result.current).toEqual({\n status: 'success',\n error: null,\n refetch: mockRefetchAll,\n refetchErrored: mockRefetchErrored,\n });\n });\n\n it('should handle empty responses array', () => {\n const {result} = renderHook(() => useQueryResponses([]));\n\n expect(getStatus).toHaveBeenCalledWith([]);\n expect(getError).toHaveBeenCalledWith([]);\n expect(useRefetchAll).toHaveBeenCalledWith([]);\n expect(useRefetchErrored).toHaveBeenCalledWith([]);\n expect(result.current).toEqual({\n status: 'success',\n error: null,\n refetch: mockRefetchAll,\n refetchErrored: mockRefetchErrored,\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ var _react = require("@testing-library/react");
4
+ var _useRefetchAll = require("../useRefetchAll");
5
+ describe('useRefetchAll', function () {
6
+ it('should return a function that calls refetch on all states', function () {
7
+ var refetch1 = jest.fn();
8
+ var refetch2 = jest.fn();
9
+ var refetch3 = jest.fn();
10
+ var states = [{
11
+ refetch: refetch1
12
+ }, {
13
+ refetch: refetch2
14
+ }, {
15
+ refetch: refetch3
16
+ }];
17
+ var _renderHook = (0, _react.renderHook)(function () {
18
+ return (0, _useRefetchAll.useRefetchAll)(states);
19
+ }),
20
+ result = _renderHook.result;
21
+ expect(result.current).toEqual(expect.any(Function));
22
+ (0, _react.act)(function () {
23
+ result.current();
24
+ });
25
+ expect(refetch1).toHaveBeenCalledTimes(1);
26
+ expect(refetch2).toHaveBeenCalledTimes(1);
27
+ expect(refetch3).toHaveBeenCalledTimes(1);
28
+ });
29
+ it('should handle empty states array', function () {
30
+ var _renderHook2 = (0, _react.renderHook)(function () {
31
+ return (0, _useRefetchAll.useRefetchAll)([]);
32
+ }),
33
+ result = _renderHook2.result;
34
+ (0, _react.act)(function () {
35
+ result.current();
36
+ });
37
+ });
38
+ it('should memoize the refetch function when dependencies do not change', function () {
39
+ var refetch1 = jest.fn();
40
+ var refetch2 = jest.fn();
41
+ var states = [{
42
+ refetch: refetch1
43
+ }, {
44
+ refetch: refetch2
45
+ }];
46
+ var _renderHook3 = (0, _react.renderHook)(function () {
47
+ return (0, _useRefetchAll.useRefetchAll)(states);
48
+ }),
49
+ result = _renderHook3.result,
50
+ rerender = _renderHook3.rerender;
51
+ var firstRefetchAll = result.current;
52
+ rerender();
53
+ expect(result.current).toBe(firstRefetchAll);
54
+ });
55
+ it('should create a new refetch function when dependencies change', function () {
56
+ var refetch1 = jest.fn();
57
+ var refetch2 = jest.fn();
58
+ var refetch3 = jest.fn();
59
+ var states = [{
60
+ refetch: refetch1
61
+ }, {
62
+ refetch: refetch2
63
+ }];
64
+ var _renderHook4 = (0, _react.renderHook)(function () {
65
+ return (0, _useRefetchAll.useRefetchAll)(states);
66
+ }),
67
+ result = _renderHook4.result,
68
+ rerender = _renderHook4.rerender;
69
+ var firstRefetchAll = result.current;
70
+ states = [{
71
+ refetch: refetch1
72
+ }, {
73
+ refetch: refetch3
74
+ }];
75
+ rerender();
76
+ expect(result.current).not.toBe(firstRefetchAll);
77
+ });
78
+ });
79
+ // #sourceMappingURL=useRefetchAll.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_useRefetchAll","describe","it","refetch1","jest","fn","refetch2","refetch3","states","refetch","_renderHook","renderHook","useRefetchAll","result","expect","current","toEqual","any","Function","act","toHaveBeenCalledTimes","_renderHook2","_renderHook3","rerender","firstRefetchAll","toBe","_renderHook4","not"],"sources":["useRefetchAll.test.ts"],"sourcesContent":["import {act, renderHook} from '@testing-library/react';\n\nimport {useRefetchAll} from '../useRefetchAll';\n\ndescribe('useRefetchAll', () => {\n it('should return a function that calls refetch on all states', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n const refetch3 = jest.fn();\n\n const states = [{refetch: refetch1}, {refetch: refetch2}, {refetch: refetch3}];\n\n const {result} = renderHook(() => useRefetchAll(states));\n\n expect(result.current).toEqual(expect.any(Function));\n\n act(() => {\n result.current();\n });\n\n expect(refetch1).toHaveBeenCalledTimes(1);\n expect(refetch2).toHaveBeenCalledTimes(1);\n expect(refetch3).toHaveBeenCalledTimes(1);\n });\n\n it('should handle empty states array', () => {\n const {result} = renderHook(() => useRefetchAll([]));\n\n act(() => {\n result.current();\n });\n });\n\n it('should memoize the refetch function when dependencies do not change', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n\n const states = [{refetch: refetch1}, {refetch: refetch2}];\n\n const {result, rerender} = renderHook(() => useRefetchAll(states));\n\n const firstRefetchAll = result.current;\n\n rerender();\n\n expect(result.current).toBe(firstRefetchAll);\n });\n\n it('should create a new refetch function when dependencies change', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n const refetch3 = jest.fn();\n\n let states = [{refetch: refetch1}, {refetch: refetch2}];\n\n const {result, rerender} = renderHook(() => useRefetchAll(states));\n\n const firstRefetchAll = result.current;\n\n states = [{refetch: refetch1}, {refetch: refetch3}];\n\n rerender();\n\n expect(result.current).not.toBe(firstRefetchAll);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+
3
+ var _react = require("@testing-library/react");
4
+ var _useRefetchErrored = require("../useRefetchErrored");
5
+ describe('useRefetchErrored', function () {
6
+ it('should return a function that calls refetch only on states with errors', function () {
7
+ var refetch1 = jest.fn();
8
+ var refetch2 = jest.fn();
9
+ var refetch3 = jest.fn();
10
+ var states = [{
11
+ error: {
12
+ message: 'Error 1'
13
+ },
14
+ refetch: refetch1
15
+ }, {
16
+ error: null,
17
+ refetch: refetch2
18
+ }, {
19
+ error: {
20
+ message: 'Error 3'
21
+ },
22
+ refetch: refetch3
23
+ }];
24
+ var _renderHook = (0, _react.renderHook)(function () {
25
+ return (0, _useRefetchErrored.useRefetchErrored)(states);
26
+ }),
27
+ result = _renderHook.result;
28
+ expect(result.current).toEqual(expect.any(Function));
29
+ (0, _react.act)(function () {
30
+ result.current();
31
+ });
32
+ expect(refetch1).toHaveBeenCalledTimes(1);
33
+ expect(refetch2).toHaveBeenCalledTimes(0);
34
+ expect(refetch3).toHaveBeenCalledTimes(1);
35
+ });
36
+ it('should not call refetch if no states have errors', function () {
37
+ var refetch1 = jest.fn();
38
+ var refetch2 = jest.fn();
39
+ var states = [{
40
+ error: null,
41
+ refetch: refetch1
42
+ }, {
43
+ error: null,
44
+ refetch: refetch2
45
+ }];
46
+ var _renderHook2 = (0, _react.renderHook)(function () {
47
+ return (0, _useRefetchErrored.useRefetchErrored)(states);
48
+ }),
49
+ result = _renderHook2.result;
50
+ (0, _react.act)(function () {
51
+ result.current();
52
+ });
53
+ expect(refetch1).not.toHaveBeenCalled();
54
+ expect(refetch2).not.toHaveBeenCalled();
55
+ });
56
+ it('should handle empty states array', function () {
57
+ var _renderHook3 = (0, _react.renderHook)(function () {
58
+ return (0, _useRefetchErrored.useRefetchErrored)([]);
59
+ }),
60
+ result = _renderHook3.result;
61
+ (0, _react.act)(function () {
62
+ result.current();
63
+ });
64
+ });
65
+ it('should memoize the refetch function when dependencies do not change', function () {
66
+ var refetch1 = jest.fn();
67
+ var refetch2 = jest.fn();
68
+ var states = [{
69
+ error: {
70
+ message: 'Error 1'
71
+ },
72
+ refetch: refetch1
73
+ }, {
74
+ error: null,
75
+ refetch: refetch2
76
+ }];
77
+ var _renderHook4 = (0, _react.renderHook)(function () {
78
+ return (0, _useRefetchErrored.useRefetchErrored)(states);
79
+ }),
80
+ result = _renderHook4.result,
81
+ rerender = _renderHook4.rerender;
82
+ var firstRefetchErrored = result.current;
83
+ rerender();
84
+ expect(result.current).toBe(firstRefetchErrored);
85
+ });
86
+ it('should create a new refetch function when dependencies change', function () {
87
+ var refetch1 = jest.fn();
88
+ var refetch2 = jest.fn();
89
+ var states = [{
90
+ error: {
91
+ message: 'Error 1'
92
+ },
93
+ refetch: refetch1
94
+ }, {
95
+ error: null,
96
+ refetch: refetch2
97
+ }];
98
+ var _renderHook5 = (0, _react.renderHook)(function () {
99
+ return (0, _useRefetchErrored.useRefetchErrored)(states);
100
+ }),
101
+ result = _renderHook5.result,
102
+ rerender = _renderHook5.rerender;
103
+ var firstRefetchErrored = result.current;
104
+ states = [{
105
+ error: {
106
+ message: 'New Error 1'
107
+ },
108
+ refetch: refetch1
109
+ }, {
110
+ error: null,
111
+ refetch: refetch2
112
+ }];
113
+ rerender();
114
+ expect(result.current).not.toBe(firstRefetchErrored);
115
+ });
116
+ });
117
+ // #sourceMappingURL=useRefetchErrored.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_useRefetchErrored","describe","it","refetch1","jest","fn","refetch2","refetch3","states","error","message","refetch","_renderHook","renderHook","useRefetchErrored","result","expect","current","toEqual","any","Function","act","toHaveBeenCalledTimes","_renderHook2","not","toHaveBeenCalled","_renderHook3","_renderHook4","rerender","firstRefetchErrored","toBe","_renderHook5"],"sources":["useRefetchErrored.test.ts"],"sourcesContent":["import {act, renderHook} from '@testing-library/react';\n\nimport {useRefetchErrored} from '../useRefetchErrored';\n\ndescribe('useRefetchErrored', () => {\n it('should return a function that calls refetch only on states with errors', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n const refetch3 = jest.fn();\n\n const states = [\n {error: {message: 'Error 1'}, refetch: refetch1},\n {error: null, refetch: refetch2},\n {error: {message: 'Error 3'}, refetch: refetch3},\n ];\n\n const {result} = renderHook(() => useRefetchErrored(states));\n\n expect(result.current).toEqual(expect.any(Function));\n\n act(() => {\n result.current();\n });\n\n expect(refetch1).toHaveBeenCalledTimes(1);\n expect(refetch2).toHaveBeenCalledTimes(0);\n expect(refetch3).toHaveBeenCalledTimes(1);\n });\n\n it('should not call refetch if no states have errors', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n\n const states = [\n {error: null, refetch: refetch1},\n {error: null, refetch: refetch2},\n ];\n\n const {result} = renderHook(() => useRefetchErrored(states));\n\n act(() => {\n result.current();\n });\n\n expect(refetch1).not.toHaveBeenCalled();\n expect(refetch2).not.toHaveBeenCalled();\n });\n\n it('should handle empty states array', () => {\n const {result} = renderHook(() => useRefetchErrored([]));\n\n act(() => {\n result.current();\n });\n });\n\n it('should memoize the refetch function when dependencies do not change', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n\n const states = [\n {error: {message: 'Error 1'}, refetch: refetch1},\n {error: null, refetch: refetch2},\n ];\n\n const {result, rerender} = renderHook(() => useRefetchErrored(states));\n\n const firstRefetchErrored = result.current;\n\n rerender();\n\n expect(result.current).toBe(firstRefetchErrored);\n });\n\n it('should create a new refetch function when dependencies change', () => {\n const refetch1 = jest.fn();\n const refetch2 = jest.fn();\n\n let states = [\n {error: {message: 'Error 1'}, refetch: refetch1},\n {error: null, refetch: refetch2},\n ];\n\n const {result, rerender} = renderHook(() => useRefetchErrored(states));\n\n const firstRefetchErrored = result.current;\n\n states = [\n {error: {message: 'New Error 1'}, refetch: refetch1},\n {error: null, refetch: refetch2},\n ];\n\n rerender();\n\n expect(result.current).not.toBe(firstRefetchErrored);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+
3
+ var _reactQuery = require("@tanstack/react-query");
4
+ var _react = require("@testing-library/react");
5
+ var _useRefetchInterval = require("../useRefetchInterval");
6
+ describe('useRefetchInterval', function () {
7
+ it('should return undefined when no refetchInterval is provided', function () {
8
+ var _renderHook = (0, _react.renderHook)(function () {
9
+ return (0, _useRefetchInterval.useRefetchInterval)();
10
+ }),
11
+ result = _renderHook.result;
12
+ expect(result.current.refetchInterval).toBeUndefined();
13
+ expect(result.current.queryFn).toBeUndefined();
14
+ });
15
+ it('should return the provided refetchInterval when it is a number', function () {
16
+ var interval = 5000;
17
+ var _renderHook2 = (0, _react.renderHook)(function () {
18
+ return (0, _useRefetchInterval.useRefetchInterval)(interval);
19
+ }),
20
+ result = _renderHook2.result;
21
+ expect(result.current.refetchInterval).toBe(interval);
22
+ });
23
+ it('should return the provided refetchInterval when it is false', function () {
24
+ var interval = false;
25
+ var _renderHook3 = (0, _react.renderHook)(function () {
26
+ return (0, _useRefetchInterval.useRefetchInterval)(interval);
27
+ }),
28
+ result = _renderHook3.result;
29
+ expect(result.current.refetchInterval).toBe(interval);
30
+ });
31
+ it('should wrap the provided refetchInterval function', function () {
32
+ var mockQuery = {
33
+ state: {
34
+ data: {
35
+ value: 42
36
+ },
37
+ status: 'success'
38
+ }
39
+ };
40
+ var refetchInterval = jest.fn(function (_query, count) {
41
+ return count > 3 ? false : 1000;
42
+ });
43
+ var _renderHook4 = (0, _react.renderHook)(function () {
44
+ return (0, _useRefetchInterval.useRefetchInterval)(refetchInterval);
45
+ }),
46
+ result = _renderHook4.result;
47
+ expect(result.current.refetchInterval).toEqual(expect.any(Function));
48
+ var resultInterval = result.current.refetchInterval(mockQuery);
49
+ expect(refetchInterval).toHaveBeenCalledWith(mockQuery, 0);
50
+ expect(resultInterval).toBe(1000);
51
+ });
52
+ it('should wrap the provided queryFn and increment count on each call', function () {
53
+ var mockContext = {};
54
+ var mockQuery = {
55
+ state: {
56
+ data: {
57
+ value: 42
58
+ },
59
+ status: 'success'
60
+ }
61
+ };
62
+ var queryFn = jest.fn().mockResolvedValue({
63
+ value: 42
64
+ });
65
+ var refetchInterval = jest.fn(function (_query, count) {
66
+ return count > 3 ? false : 1000;
67
+ });
68
+ var _renderHook5 = (0, _react.renderHook)(function () {
69
+ return (0, _useRefetchInterval.useRefetchInterval)(refetchInterval, queryFn);
70
+ }),
71
+ result = _renderHook5.result;
72
+ expect(result.current.queryFn).toEqual(expect.any(Function));
73
+ expect(result.current.refetchInterval).toEqual(expect.any(Function));
74
+ result.current.queryFn(mockContext);
75
+ result.current.refetchInterval(mockQuery);
76
+ result.current.queryFn(mockContext);
77
+ result.current.refetchInterval(mockQuery);
78
+ result.current.queryFn(mockContext);
79
+ result.current.refetchInterval(mockQuery);
80
+ result.current.queryFn(mockContext);
81
+ result.current.refetchInterval(mockQuery);
82
+ expect(queryFn.mock.calls).toEqual([[mockContext], [mockContext], [mockContext], [mockContext]]);
83
+ expect(refetchInterval.mock.calls).toEqual([[mockQuery, 1], [mockQuery, 2], [mockQuery, 3], [mockQuery, 4]]);
84
+ expect(refetchInterval.mock.results).toEqual([{
85
+ type: 'return',
86
+ value: 1000
87
+ }, {
88
+ type: 'return',
89
+ value: 1000
90
+ }, {
91
+ type: 'return',
92
+ value: 1000
93
+ }, {
94
+ type: 'return',
95
+ value: false
96
+ }]);
97
+ });
98
+ it('should return the provided queryFn when it is not a function', function () {
99
+ var _renderHook6 = (0, _react.renderHook)(function () {
100
+ return (0, _useRefetchInterval.useRefetchInterval)(undefined, _reactQuery.skipToken);
101
+ }),
102
+ result = _renderHook6.result;
103
+ expect(result.current.queryFn).toBe(_reactQuery.skipToken);
104
+ });
105
+ it('should memoize the wrapped functions', function () {
106
+ var refetchInterval = jest.fn(function () {
107
+ return 1000;
108
+ });
109
+ var queryFn = jest.fn().mockResolvedValue({
110
+ value: 42
111
+ });
112
+ var _renderHook7 = (0, _react.renderHook)(function () {
113
+ return (0, _useRefetchInterval.useRefetchInterval)(refetchInterval, queryFn);
114
+ }),
115
+ result = _renderHook7.result,
116
+ rerender = _renderHook7.rerender;
117
+ var firstRefetchInterval = result.current.refetchInterval;
118
+ var firstQueryFn = result.current.queryFn;
119
+ rerender();
120
+ expect(result.current.refetchInterval).toBe(firstRefetchInterval);
121
+ expect(result.current.queryFn).toBe(firstQueryFn);
122
+ });
123
+ it('should create new functions when dependencies change', function () {
124
+ var refetchInterval1 = jest.fn(function () {
125
+ return 1000;
126
+ });
127
+ var queryFn1 = jest.fn().mockResolvedValue({
128
+ value: 42
129
+ });
130
+ var _renderHook8 = (0, _react.renderHook)(function (props) {
131
+ return (0, _useRefetchInterval.useRefetchInterval)(props.refetchInterval, props.queryFn);
132
+ }, {
133
+ initialProps: {
134
+ refetchInterval: refetchInterval1,
135
+ queryFn: queryFn1
136
+ }
137
+ }),
138
+ result = _renderHook8.result,
139
+ rerender = _renderHook8.rerender;
140
+ var firstRefetchInterval = result.current.refetchInterval;
141
+ var firstQueryFn = result.current.queryFn;
142
+ var refetchInterval2 = jest.fn(function () {
143
+ return 2000;
144
+ });
145
+ var queryFn2 = jest.fn().mockResolvedValue({
146
+ value: 100
147
+ });
148
+ rerender({
149
+ refetchInterval: refetchInterval2,
150
+ queryFn: queryFn2
151
+ });
152
+ expect(result.current.refetchInterval).not.toBe(firstRefetchInterval);
153
+ expect(result.current.queryFn).not.toBe(firstQueryFn);
154
+ });
155
+ });
156
+ // #sourceMappingURL=useRefetchInterval.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactQuery","require","_react","_useRefetchInterval","describe","it","_renderHook","renderHook","useRefetchInterval","result","expect","current","refetchInterval","toBeUndefined","queryFn","interval","_renderHook2","toBe","_renderHook3","mockQuery","state","data","value","status","jest","fn","_query","count","_renderHook4","toEqual","any","Function","resultInterval","toHaveBeenCalledWith","mockContext","mockResolvedValue","_renderHook5","mock","calls","results","type","_renderHook6","undefined","skipToken","_renderHook7","rerender","firstRefetchInterval","firstQueryFn","refetchInterval1","queryFn1","_renderHook8","props","initialProps","refetchInterval2","queryFn2","not"],"sources":["useRefetchInterval.test.ts"],"sourcesContent":["import {type Query, skipToken} from '@tanstack/react-query';\nimport {renderHook} from '@testing-library/react';\n\nimport {useRefetchInterval} from '../useRefetchInterval';\n\ndescribe('useRefetchInterval', () => {\n it('should return undefined when no refetchInterval is provided', () => {\n const {result} = renderHook(() => useRefetchInterval());\n\n expect(result.current.refetchInterval).toBeUndefined();\n expect(result.current.queryFn).toBeUndefined();\n });\n\n it('should return the provided refetchInterval when it is a number', () => {\n const interval = 5000;\n const {result} = renderHook(() => useRefetchInterval(interval));\n\n expect(result.current.refetchInterval).toBe(interval);\n });\n\n it('should return the provided refetchInterval when it is false', () => {\n const interval = false;\n const {result} = renderHook(() => useRefetchInterval(interval));\n\n expect(result.current.refetchInterval).toBe(interval);\n });\n\n it('should wrap the provided refetchInterval function', () => {\n const mockQuery = {\n state: {\n data: {value: 42},\n status: 'success',\n },\n } as Query;\n\n const refetchInterval = jest.fn((_query, count) => {\n return count > 3 ? false : 1000;\n });\n\n const {result} = renderHook(() => useRefetchInterval(refetchInterval));\n\n expect(result.current.refetchInterval).toEqual(expect.any(Function));\n\n const resultInterval = (result.current.refetchInterval as Function)(mockQuery);\n\n expect(refetchInterval).toHaveBeenCalledWith(mockQuery, 0);\n expect(resultInterval).toBe(1000);\n });\n\n it('should wrap the provided queryFn and increment count on each call', () => {\n const mockContext = {};\n const mockQuery = {\n state: {\n data: {value: 42},\n status: 'success',\n },\n } as Query;\n\n const queryFn = jest.fn().mockResolvedValue({value: 42});\n const refetchInterval = jest.fn((_query, count) => {\n return count > 3 ? false : 1000;\n });\n\n const {result} = renderHook(() => useRefetchInterval(refetchInterval, queryFn));\n\n expect(result.current.queryFn).toEqual(expect.any(Function));\n expect(result.current.refetchInterval).toEqual(expect.any(Function));\n\n (result.current.queryFn as Function)(mockContext);\n (result.current.refetchInterval as Function)(mockQuery);\n (result.current.queryFn as Function)(mockContext);\n (result.current.refetchInterval as Function)(mockQuery);\n (result.current.queryFn as Function)(mockContext);\n (result.current.refetchInterval as Function)(mockQuery);\n (result.current.queryFn as Function)(mockContext);\n (result.current.refetchInterval as Function)(mockQuery);\n\n expect(queryFn.mock.calls).toEqual([\n [mockContext],\n [mockContext],\n [mockContext],\n [mockContext],\n ]);\n expect(refetchInterval.mock.calls).toEqual([\n [mockQuery, 1],\n [mockQuery, 2],\n [mockQuery, 3],\n [mockQuery, 4],\n ]);\n expect(refetchInterval.mock.results).toEqual([\n {type: 'return', value: 1000},\n {type: 'return', value: 1000},\n {type: 'return', value: 1000},\n {type: 'return', value: false},\n ]);\n });\n\n it('should return the provided queryFn when it is not a function', () => {\n const {result} = renderHook(() => useRefetchInterval(undefined, skipToken));\n\n expect(result.current.queryFn).toBe(skipToken);\n });\n\n it('should memoize the wrapped functions', () => {\n const refetchInterval = jest.fn(() => 1000);\n const queryFn = jest.fn().mockResolvedValue({value: 42});\n\n const {result, rerender} = renderHook(() => useRefetchInterval(refetchInterval, queryFn));\n\n const firstRefetchInterval = result.current.refetchInterval;\n const firstQueryFn = result.current.queryFn;\n\n rerender();\n\n expect(result.current.refetchInterval).toBe(firstRefetchInterval);\n expect(result.current.queryFn).toBe(firstQueryFn);\n });\n\n it('should create new functions when dependencies change', () => {\n const refetchInterval1 = jest.fn(() => 1000);\n const queryFn1 = jest.fn().mockResolvedValue({value: 42});\n\n const {result, rerender} = renderHook(\n (props) => useRefetchInterval(props.refetchInterval, props.queryFn),\n {\n initialProps: {\n refetchInterval: refetchInterval1,\n queryFn: queryFn1,\n },\n },\n );\n\n const firstRefetchInterval = result.current.refetchInterval;\n const firstQueryFn = result.current.queryFn;\n\n const refetchInterval2 = jest.fn(() => 2000);\n const queryFn2 = jest.fn().mockResolvedValue({value: 100});\n\n rerender({\n refetchInterval: refetchInterval2,\n queryFn: queryFn2,\n });\n\n expect(result.current.refetchInterval).not.toBe(firstRefetchInterval);\n expect(result.current.queryFn).not.toBe(firstQueryFn);\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -4,4 +4,4 @@ export interface UseRefetchIntervalResult<TQueryFnData = unknown, TError = Defau
4
4
  refetchInterval?: number | false | ((query: Query<TQueryFnData, TError, TQueryData, TQueryKey>) => number | false | undefined);
5
5
  queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken;
6
6
  }
7
- export declare const useRefetchInterval: <TQueryFnData = unknown, TError = Error, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = never>(refetchInterval?: RefetchInterval<TQueryFnData, TError, TQueryData, TQueryKey>, queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken) => UseRefetchIntervalResult<TQueryFnData, TError, TQueryData, TQueryKey, TPageParam>;
7
+ export declare const useRefetchInterval: <TQueryFnData = unknown, TError = DefaultError, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = never>(refetchInterval?: RefetchInterval<TQueryFnData, TError, TQueryData, TQueryKey>, queryFn?: QueryFunction<TQueryFnData, TQueryKey, TPageParam> | SkipToken) => UseRefetchIntervalResult<TQueryFnData, TError, TQueryData, TQueryKey, TPageParam>;
@@ -1,2 +1,2 @@
1
1
  import type { InfiniteQueryDataSource } from './types';
2
- export declare const makeInfiniteQueryDataSource: <TParams, TRequest, TResponse, TData, TError, TErrorResponse>(config: Omit<InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError, TErrorResponse>, "type">) => InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError, TErrorResponse>;
2
+ export declare const makeInfiniteQueryDataSource: <TParams, TRequest, TResponse, TData, TError>(config: Omit<InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError>, "type">) => InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError>;
@@ -1 +1 @@
1
- {"version":3,"names":["makeInfiniteQueryDataSource","exports","config","_objectSpread","type"],"sources":["factory.ts"],"sourcesContent":["import type {InfiniteQueryDataSource} from './types';\n\nexport const makeInfiniteQueryDataSource = <\n TParams,\n TRequest,\n TResponse,\n TData,\n TError,\n TErrorResponse,\n>(\n config: Omit<\n InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError, TErrorResponse>,\n 'type'\n >,\n): InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError, TErrorResponse> => ({\n ...config,\n type: 'infinite',\n});\n"],"mappings":";;;;;;;;AAEO,IAAMA,2BAA2B,GAAAC,OAAA,CAAAD,2BAAA,GAAG,SAA9BA,2BAA2BA,CAQpCE,MAGC;EAAA,WAAAC,sBAAA,MAAAA,sBAAA,MAEED,MAAM;IACTE,IAAI,EAAE;EAAU;AAAA,CAClB","ignoreList":[]}
1
+ {"version":3,"names":["makeInfiniteQueryDataSource","exports","config","_objectSpread","type"],"sources":["factory.ts"],"sourcesContent":["import type {InfiniteQueryDataSource} from './types';\n\nexport const makeInfiniteQueryDataSource = <TParams, TRequest, TResponse, TData, TError>(\n config: Omit<InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError>, 'type'>,\n): InfiniteQueryDataSource<TParams, TRequest, TResponse, TData, TError> => ({\n ...config,\n type: 'infinite',\n});\n"],"mappings":";;;;;;;;AAEO,IAAMA,2BAA2B,GAAAC,OAAA,CAAAD,2BAAA,GAAG,SAA9BA,2BAA2BA,CACpCE,MAA0F;EAAA,WAAAC,sBAAA,MAAAA,sBAAA,MAEvFD,MAAM;IACTE,IAAI,EAAE;EAAU;AAAA,CAClB","ignoreList":[]}