@tanstack/vue-query 4.37.1 → 4.39.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 (138) hide show
  1. package/README.md +13 -5
  2. package/build/lib/queryCache.d.ts +2 -1
  3. package/package.json +3 -10
  4. package/build/lib/__mocks__/useBaseQuery.d.ts.map +0 -1
  5. package/build/lib/__mocks__/useQueryClient.d.ts.map +0 -1
  6. package/build/lib/__tests__/mutationCache.test.d.ts.map +0 -1
  7. package/build/lib/__tests__/queryCache.test.d.ts.map +0 -1
  8. package/build/lib/__tests__/queryClient.test.d.ts.map +0 -1
  9. package/build/lib/__tests__/test-utils.d.ts.map +0 -1
  10. package/build/lib/__tests__/useInfiniteQuery.test.d.ts.map +0 -1
  11. package/build/lib/__tests__/useInfiniteQuery.types.test.d.ts.map +0 -1
  12. package/build/lib/__tests__/useIsFetching.test.d.ts.map +0 -1
  13. package/build/lib/__tests__/useIsMutating.test.d.ts.map +0 -1
  14. package/build/lib/__tests__/useMutation.test.d.ts.map +0 -1
  15. package/build/lib/__tests__/useMutation.types.test.d.ts.map +0 -1
  16. package/build/lib/__tests__/useQueries.test.d.ts.map +0 -1
  17. package/build/lib/__tests__/useQuery.test.d.ts.map +0 -1
  18. package/build/lib/__tests__/useQuery.types.test.d.ts.map +0 -1
  19. package/build/lib/__tests__/useQueryClient.test.d.ts.map +0 -1
  20. package/build/lib/__tests__/utils.test.d.ts.map +0 -1
  21. package/build/lib/__tests__/vueQueryPlugin.test.d.ts.map +0 -1
  22. package/build/lib/devtools/devtools.d.ts.map +0 -1
  23. package/build/lib/devtools/devtools.esm.js +0 -162
  24. package/build/lib/devtools/devtools.esm.js.map +0 -1
  25. package/build/lib/devtools/devtools.js +0 -166
  26. package/build/lib/devtools/devtools.js.map +0 -1
  27. package/build/lib/devtools/devtools.mjs +0 -162
  28. package/build/lib/devtools/devtools.mjs.map +0 -1
  29. package/build/lib/devtools/utils.d.ts.map +0 -1
  30. package/build/lib/devtools/utils.esm.js +0 -103
  31. package/build/lib/devtools/utils.esm.js.map +0 -1
  32. package/build/lib/devtools/utils.js +0 -111
  33. package/build/lib/devtools/utils.js.map +0 -1
  34. package/build/lib/devtools/utils.mjs +0 -103
  35. package/build/lib/devtools/utils.mjs.map +0 -1
  36. package/build/lib/index.d.ts.map +0 -1
  37. package/build/lib/index.esm.js +0 -14
  38. package/build/lib/index.esm.js.map +0 -1
  39. package/build/lib/index.js +0 -39
  40. package/build/lib/index.js.map +0 -1
  41. package/build/lib/index.mjs +0 -14
  42. package/build/lib/index.mjs.map +0 -1
  43. package/build/lib/mutationCache.d.ts.map +0 -1
  44. package/build/lib/mutationCache.esm.js +0 -16
  45. package/build/lib/mutationCache.esm.js.map +0 -1
  46. package/build/lib/mutationCache.js +0 -20
  47. package/build/lib/mutationCache.js.map +0 -1
  48. package/build/lib/mutationCache.mjs +0 -16
  49. package/build/lib/mutationCache.mjs.map +0 -1
  50. package/build/lib/queryCache.d.ts.map +0 -1
  51. package/build/lib/queryCache.esm.js +0 -25
  52. package/build/lib/queryCache.esm.js.map +0 -1
  53. package/build/lib/queryCache.js +0 -29
  54. package/build/lib/queryCache.js.map +0 -1
  55. package/build/lib/queryCache.mjs +0 -25
  56. package/build/lib/queryCache.mjs.map +0 -1
  57. package/build/lib/queryClient.d.ts.map +0 -1
  58. package/build/lib/queryClient.esm.js +0 -175
  59. package/build/lib/queryClient.esm.js.map +0 -1
  60. package/build/lib/queryClient.js +0 -179
  61. package/build/lib/queryClient.js.map +0 -1
  62. package/build/lib/queryClient.mjs +0 -175
  63. package/build/lib/queryClient.mjs.map +0 -1
  64. package/build/lib/types.d.ts.map +0 -1
  65. package/build/lib/useBaseQuery.d.ts.map +0 -1
  66. package/build/lib/useBaseQuery.esm.js +0 -125
  67. package/build/lib/useBaseQuery.esm.js.map +0 -1
  68. package/build/lib/useBaseQuery.js +0 -130
  69. package/build/lib/useBaseQuery.js.map +0 -1
  70. package/build/lib/useBaseQuery.mjs +0 -125
  71. package/build/lib/useBaseQuery.mjs.map +0 -1
  72. package/build/lib/useInfiniteQuery.d.ts.map +0 -1
  73. package/build/lib/useInfiniteQuery.esm.js +0 -10
  74. package/build/lib/useInfiniteQuery.esm.js.map +0 -1
  75. package/build/lib/useInfiniteQuery.js +0 -14
  76. package/build/lib/useInfiniteQuery.js.map +0 -1
  77. package/build/lib/useInfiniteQuery.mjs +0 -10
  78. package/build/lib/useInfiniteQuery.mjs.map +0 -1
  79. package/build/lib/useIsFetching.d.ts.map +0 -1
  80. package/build/lib/useIsFetching.esm.js +0 -47
  81. package/build/lib/useIsFetching.esm.js.map +0 -1
  82. package/build/lib/useIsFetching.js +0 -52
  83. package/build/lib/useIsFetching.js.map +0 -1
  84. package/build/lib/useIsFetching.mjs +0 -47
  85. package/build/lib/useIsFetching.mjs.map +0 -1
  86. package/build/lib/useIsMutating.d.ts.map +0 -1
  87. package/build/lib/useIsMutating.esm.js +0 -47
  88. package/build/lib/useIsMutating.esm.js.map +0 -1
  89. package/build/lib/useIsMutating.js +0 -52
  90. package/build/lib/useIsMutating.js.map +0 -1
  91. package/build/lib/useIsMutating.mjs +0 -47
  92. package/build/lib/useIsMutating.mjs.map +0 -1
  93. package/build/lib/useMutation.d.ts.map +0 -1
  94. package/build/lib/useMutation.esm.js +0 -77
  95. package/build/lib/useMutation.esm.js.map +0 -1
  96. package/build/lib/useMutation.js +0 -82
  97. package/build/lib/useMutation.js.map +0 -1
  98. package/build/lib/useMutation.mjs +0 -77
  99. package/build/lib/useMutation.mjs.map +0 -1
  100. package/build/lib/useQueries.d.ts.map +0 -1
  101. package/build/lib/useQueries.esm.js +0 -72
  102. package/build/lib/useQueries.esm.js.map +0 -1
  103. package/build/lib/useQueries.js +0 -76
  104. package/build/lib/useQueries.js.map +0 -1
  105. package/build/lib/useQueries.mjs +0 -72
  106. package/build/lib/useQueries.mjs.map +0 -1
  107. package/build/lib/useQuery.d.ts.map +0 -1
  108. package/build/lib/useQuery.esm.js +0 -10
  109. package/build/lib/useQuery.esm.js.map +0 -1
  110. package/build/lib/useQuery.js +0 -14
  111. package/build/lib/useQuery.js.map +0 -1
  112. package/build/lib/useQuery.mjs +0 -10
  113. package/build/lib/useQuery.mjs.map +0 -1
  114. package/build/lib/useQueryClient.d.ts.map +0 -1
  115. package/build/lib/useQueryClient.esm.js +0 -24
  116. package/build/lib/useQueryClient.esm.js.map +0 -1
  117. package/build/lib/useQueryClient.js +0 -28
  118. package/build/lib/useQueryClient.js.map +0 -1
  119. package/build/lib/useQueryClient.mjs +0 -24
  120. package/build/lib/useQueryClient.mjs.map +0 -1
  121. package/build/lib/utils.d.ts.map +0 -1
  122. package/build/lib/utils.esm.js +0 -67
  123. package/build/lib/utils.esm.js.map +0 -1
  124. package/build/lib/utils.js +0 -78
  125. package/build/lib/utils.js.map +0 -1
  126. package/build/lib/utils.mjs +0 -67
  127. package/build/lib/utils.mjs.map +0 -1
  128. package/build/lib/vueQueryPlugin.d.ts.map +0 -1
  129. package/build/lib/vueQueryPlugin.esm.js +0 -101
  130. package/build/lib/vueQueryPlugin.esm.js.map +0 -1
  131. package/build/lib/vueQueryPlugin.js +0 -105
  132. package/build/lib/vueQueryPlugin.js.map +0 -1
  133. package/build/lib/vueQueryPlugin.mjs +0 -101
  134. package/build/lib/vueQueryPlugin.mjs.map +0 -1
  135. package/build/umd/index.development.js +0 -5187
  136. package/build/umd/index.development.js.map +0 -1
  137. package/build/umd/index.production.js +0 -2
  138. package/build/umd/index.production.js.map +0 -1
package/README.md CHANGED
@@ -35,11 +35,19 @@ Visit https://tanstack.com/query/v4/docs/adapters/vue-query
35
35
  1. Install `vue-query`
36
36
 
37
37
  ```bash
38
- $ npm i @tanstack/vue-query
39
- # or
40
- $ pnpm add @tanstack/vue-query
41
- # or
42
- $ yarn add @tanstack/vue-query
38
+ npm i @tanstack/vue-query
39
+ ```
40
+
41
+ or
42
+
43
+ ```bash
44
+ pnpm add @tanstack/vue-query
45
+ ```
46
+
47
+ or
48
+
49
+ ```bash
50
+ yarn add @tanstack/vue-query
43
51
  ```
44
52
 
45
53
  > If you are using Vue 2.6, make sure to also setup [@vue/composition-api](https://github.com/vuejs/composition-api)
@@ -2,7 +2,8 @@ import { QueryCache as QC } from '@tanstack/query-core';
2
2
  import type { Query, QueryFilters, QueryKey } from '@tanstack/query-core';
3
3
  import type { MaybeRefDeep } from './types';
4
4
  export declare class QueryCache extends QC {
5
- find<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData>(arg1: MaybeRefDeep<QueryKey>, arg2?: MaybeRefDeep<QueryFilters>): Query<TQueryFnData, TError, TData> | undefined;
5
+ find<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData>(filters: MaybeRefDeep<QueryFilters>): Query<TQueryFnData, TError, TData> | undefined;
6
+ find<TQueryFnData = unknown, TError = unknown, TData = TQueryFnData>(queryKey: MaybeRefDeep<QueryKey>, filters?: MaybeRefDeep<QueryFilters>): Query<TQueryFnData, TError, TData> | undefined;
6
7
  findAll(queryKey?: MaybeRefDeep<QueryKey>, filters?: MaybeRefDeep<QueryFilters>): Query[];
7
8
  findAll(filters?: MaybeRefDeep<QueryFilters>): Query[];
8
9
  findAll(arg1?: MaybeRefDeep<QueryKey | QueryFilters>, arg2?: MaybeRefDeep<QueryFilters>): Query[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tanstack/vue-query",
3
- "version": "4.37.1",
3
+ "version": "4.39.0",
4
4
  "description": "Hooks for managing, caching and syncing asynchronous and remote data in Vue",
5
5
  "author": "Damian Osipiuk",
6
6
  "license": "MIT",
@@ -39,7 +39,7 @@
39
39
  "@tanstack/match-sorter-utils": "^8.1.1",
40
40
  "@vue/devtools-api": "^6.4.2",
41
41
  "vue-demi": "^0.13.11",
42
- "@tanstack/query-core": "4.36.1"
42
+ "@tanstack/query-core": "4.39.0"
43
43
  },
44
44
  "peerDependencies": {
45
45
  "@vue/composition-api": "^1.1.2",
@@ -50,12 +50,5 @@
50
50
  "optional": true
51
51
  }
52
52
  },
53
- "scripts": {
54
- "clean": "rimraf ./build",
55
- "test:eslint": "eslint --ext .ts ./src",
56
- "test:types": "tsc",
57
- "test:lib": "jest --config ./jest.config.ts",
58
- "test:lib:dev": "pnpm run test:lib --watch",
59
- "build:types": "tsc --build"
60
- }
53
+ "scripts": {}
61
54
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"useBaseQuery.d.ts","sourceRoot":"","sources":["../../../src/__mocks__/useBaseQuery.ts"],"names":[],"mappings":";AAGA,eAAO,MAAM,YAAY,2BAAsB,CAAA;AAC/C,eAAO,MAAM,cAAc,KAAgB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useQueryClient.d.ts","sourceRoot":"","sources":["../../../src/__mocks__/useQueryClient.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAc5C,eAAO,MAAM,cAAc,4BAA6B,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"mutationCache.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/mutationCache.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryCache.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/queryCache.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryClient.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/queryClient.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../../src/__tests__/test-utils.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAC,OAAO,SAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAI3D;AAED,wBAAgB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,CAM/C;AAED,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,OAAO,0BAGjE;AAED,wBAAgB,eAAe,CAAC,EAC9B,SAAa,GACd,EAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,GAAG,OAAO,CAAC,MAAM,CAAC,CAMlB;AAED,wBAAgB,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC,CAM9C;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAMtD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAEpD;AAED,oBAAY,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAC/D,CAAC,OACI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,GACtB,IAAI,GACJ,KAAK,CAAA;AAET,oBAAY,MAAM,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,CAAA;AAEtC,eAAO,MAAM,YAAY,UAAW,MAAM,IAAI,YAAS,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useInfiniteQuery.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useInfiniteQuery.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useInfiniteQuery.types.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useInfiniteQuery.types.test.tsx"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useIsFetching.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useIsFetching.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useIsMutating.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useIsMutating.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useMutation.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useMutation.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useMutation.types.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useMutation.types.test.tsx"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useQueries.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useQueries.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useQuery.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useQuery.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useQuery.types.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useQuery.types.test.tsx"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useQueryClient.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/useQueryClient.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/utils.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"vueQueryPlugin.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/vueQueryPlugin.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"devtools.d.ts","sourceRoot":"","sources":["../../../src/devtools/devtools.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAKjD,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,QA+L/D"}
@@ -1,162 +0,0 @@
1
- import { setupDevtoolsPlugin } from '@vue/devtools-api';
2
- import { rankItem } from '@tanstack/match-sorter-utils';
3
- import { sortFns, getQueryStateLabel, getQueryStatusFg, getQueryStatusBg } from './utils.esm.js';
4
-
5
- /* istanbul ignore file */
6
- const pluginId = 'vue-query';
7
- const pluginName = 'Vue Query';
8
- function setupDevtools(app, queryClient) {
9
- setupDevtoolsPlugin({
10
- id: pluginId,
11
- label: pluginName,
12
- packageName: 'vue-query',
13
- homepage: 'https://tanstack.com/query/v4',
14
- logo: 'https://vue-query.vercel.app/vue-query.svg',
15
- app,
16
- settings: {
17
- baseSort: {
18
- type: 'choice',
19
- component: 'button-group',
20
- label: 'Sort Cache Entries',
21
- options: [{
22
- label: 'ASC',
23
- value: 1
24
- }, {
25
- label: 'DESC',
26
- value: -1
27
- }],
28
- defaultValue: 1
29
- },
30
- sortFn: {
31
- type: 'choice',
32
- label: 'Sort Function',
33
- options: Object.keys(sortFns).map(key => ({
34
- label: key,
35
- value: key
36
- })),
37
- defaultValue: Object.keys(sortFns)[0]
38
- }
39
- }
40
- }, api => {
41
- const queryCache = queryClient.getQueryCache();
42
- api.addInspector({
43
- id: pluginId,
44
- label: pluginName,
45
- icon: 'api',
46
- nodeActions: [{
47
- icon: 'cloud_download',
48
- tooltip: 'Refetch',
49
- action: queryHash => {
50
- var _queryCache$get;
51
-
52
- (_queryCache$get = queryCache.get(queryHash)) == null ? void 0 : _queryCache$get.fetch();
53
- }
54
- }, {
55
- icon: 'alarm',
56
- tooltip: 'Invalidate',
57
- action: queryHash => {
58
- const query = queryCache.get(queryHash);
59
- queryClient.invalidateQueries(query.queryKey);
60
- }
61
- }, {
62
- icon: 'settings_backup_restore',
63
- tooltip: 'Reset',
64
- action: queryHash => {
65
- var _queryCache$get2;
66
-
67
- (_queryCache$get2 = queryCache.get(queryHash)) == null ? void 0 : _queryCache$get2.reset();
68
- }
69
- }, {
70
- icon: 'delete',
71
- tooltip: 'Remove',
72
- action: queryHash => {
73
- const query = queryCache.get(queryHash);
74
- queryCache.remove(query);
75
- }
76
- }]
77
- });
78
- api.addTimelineLayer({
79
- id: pluginId,
80
- label: pluginName,
81
- color: 0xffd94c
82
- });
83
- queryCache.subscribe(event => {
84
- api.sendInspectorTree(pluginId);
85
- api.sendInspectorState(pluginId);
86
- const queryEvents = ['added', 'removed', 'updated'];
87
-
88
- if ( // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
89
- event && queryEvents.includes(event.type)) {
90
- api.addTimelineEvent({
91
- layerId: pluginId,
92
- event: {
93
- title: event.type,
94
- subtitle: event.query.queryHash,
95
- time: api.now(),
96
- data: {
97
- queryHash: event.query.queryHash,
98
- ...event
99
- }
100
- }
101
- });
102
- }
103
- });
104
- api.on.getInspectorTree(payload => {
105
- if (payload.inspectorId === pluginId) {
106
- const queries = queryCache.getAll();
107
- const settings = api.getSettings();
108
- const filtered = payload.filter ? queries.filter(item => rankItem(item.queryHash, payload.filter).passed) : [...queries];
109
- const sorted = filtered.sort((a, b) => sortFns[settings.sortFn](a, b) * settings.baseSort);
110
- const nodes = sorted.map(query => {
111
- const stateLabel = getQueryStateLabel(query);
112
- return {
113
- id: query.queryHash,
114
- label: query.queryHash,
115
- tags: [{
116
- label: stateLabel + " [" + query.getObserversCount() + "]",
117
- textColor: getQueryStatusFg(query),
118
- backgroundColor: getQueryStatusBg(query)
119
- }]
120
- };
121
- });
122
- payload.rootNodes = nodes;
123
- }
124
- });
125
- api.on.getInspectorState(payload => {
126
- if (payload.inspectorId === pluginId) {
127
- const query = queryCache.get(payload.nodeId);
128
-
129
- if (!query) {
130
- return;
131
- }
132
-
133
- payload.state = {
134
- ' Query Details': [{
135
- key: 'Query key',
136
- value: query.queryHash
137
- }, {
138
- key: 'Query status',
139
- value: getQueryStateLabel(query)
140
- }, {
141
- key: 'Observers',
142
- value: query.getObserversCount()
143
- }, {
144
- key: 'Last Updated',
145
- value: new Date(query.state.dataUpdatedAt).toLocaleTimeString()
146
- }],
147
- 'Data Explorer': [{
148
- key: 'Data',
149
- value: query.state.data
150
- }],
151
- 'Query Explorer': [{
152
- key: 'Query',
153
- value: query
154
- }]
155
- };
156
- }
157
- });
158
- });
159
- }
160
-
161
- export { setupDevtools };
162
- //# sourceMappingURL=devtools.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"devtools.esm.js","sources":["../../../src/devtools/devtools.ts"],"sourcesContent":["/* istanbul ignore file */\n\nimport { setupDevtoolsPlugin } from '@vue/devtools-api'\nimport { rankItem } from '@tanstack/match-sorter-utils'\nimport {\n getQueryStateLabel,\n getQueryStatusBg,\n getQueryStatusFg,\n sortFns,\n} from './utils'\nimport type { CustomInspectorNode } from '@vue/devtools-api'\nimport type { Query, QueryCacheNotifyEvent } from '@tanstack/query-core'\nimport type { QueryClient } from '../queryClient'\n\nconst pluginId = 'vue-query'\nconst pluginName = 'Vue Query'\n\nexport function setupDevtools(app: any, queryClient: QueryClient) {\n setupDevtoolsPlugin(\n {\n id: pluginId,\n label: pluginName,\n packageName: 'vue-query',\n homepage: 'https://tanstack.com/query/v4',\n logo: 'https://vue-query.vercel.app/vue-query.svg',\n app,\n settings: {\n baseSort: {\n type: 'choice',\n component: 'button-group',\n label: 'Sort Cache Entries',\n options: [\n {\n label: 'ASC',\n value: 1,\n },\n {\n label: 'DESC',\n value: -1,\n },\n ],\n defaultValue: 1,\n },\n sortFn: {\n type: 'choice',\n label: 'Sort Function',\n options: Object.keys(sortFns).map((key) => ({\n label: key,\n value: key,\n })),\n defaultValue: Object.keys(sortFns)[0]!,\n },\n },\n },\n (api) => {\n const queryCache = queryClient.getQueryCache()\n\n api.addInspector({\n id: pluginId,\n label: pluginName,\n icon: 'api',\n nodeActions: [\n {\n icon: 'cloud_download',\n tooltip: 'Refetch',\n action: (queryHash: string) => {\n queryCache.get(queryHash)?.fetch()\n },\n },\n {\n icon: 'alarm',\n tooltip: 'Invalidate',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n queryClient.invalidateQueries(query.queryKey)\n },\n },\n {\n icon: 'settings_backup_restore',\n tooltip: 'Reset',\n action: (queryHash: string) => {\n queryCache.get(queryHash)?.reset()\n },\n },\n {\n icon: 'delete',\n tooltip: 'Remove',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n queryCache.remove(query)\n },\n },\n ],\n })\n\n api.addTimelineLayer({\n id: pluginId,\n label: pluginName,\n color: 0xffd94c,\n })\n\n queryCache.subscribe((event) => {\n api.sendInspectorTree(pluginId)\n api.sendInspectorState(pluginId)\n\n const queryEvents: QueryCacheNotifyEvent['type'][] = [\n 'added',\n 'removed',\n 'updated',\n ]\n if (\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n event &&\n queryEvents.includes(event.type)\n ) {\n api.addTimelineEvent({\n layerId: pluginId,\n event: {\n title: event.type,\n subtitle: event.query.queryHash,\n time: api.now(),\n data: {\n queryHash: event.query.queryHash,\n ...event,\n },\n },\n })\n }\n })\n\n api.on.getInspectorTree((payload) => {\n if (payload.inspectorId === pluginId) {\n const queries = queryCache.getAll()\n const settings = api.getSettings()\n\n const filtered = payload.filter\n ? queries.filter(\n (item) => rankItem(item.queryHash, payload.filter).passed,\n )\n : [...queries]\n\n const sorted = filtered.sort(\n (a, b) => sortFns[settings.sortFn]!(a, b) * settings.baseSort,\n )\n\n const nodes: CustomInspectorNode[] = sorted.map((query) => {\n const stateLabel = getQueryStateLabel(query)\n\n return {\n id: query.queryHash,\n label: query.queryHash,\n tags: [\n {\n label: `${stateLabel} [${query.getObserversCount()}]`,\n textColor: getQueryStatusFg(query),\n backgroundColor: getQueryStatusBg(query),\n },\n ],\n }\n })\n payload.rootNodes = nodes\n }\n })\n\n api.on.getInspectorState((payload) => {\n if (payload.inspectorId === pluginId) {\n const query = queryCache.get(payload.nodeId)\n\n if (!query) {\n return\n }\n\n payload.state = {\n ' Query Details': [\n {\n key: 'Query key',\n value: query.queryHash as string,\n },\n {\n key: 'Query status',\n value: getQueryStateLabel(query),\n },\n {\n key: 'Observers',\n value: query.getObserversCount(),\n },\n {\n key: 'Last Updated',\n value: new Date(query.state.dataUpdatedAt).toLocaleTimeString(),\n },\n ],\n 'Data Explorer': [\n {\n key: 'Data',\n value: query.state.data,\n },\n ],\n 'Query Explorer': [\n {\n key: 'Query',\n value: query,\n },\n ],\n }\n }\n })\n },\n )\n}\n"],"names":["pluginId","pluginName","setupDevtools","app","queryClient","setupDevtoolsPlugin","id","label","packageName","homepage","logo","settings","baseSort","type","component","options","value","defaultValue","sortFn","Object","keys","sortFns","map","key","api","queryCache","getQueryCache","addInspector","icon","nodeActions","tooltip","action","queryHash","get","fetch","query","invalidateQueries","queryKey","reset","remove","addTimelineLayer","color","subscribe","event","sendInspectorTree","sendInspectorState","queryEvents","includes","addTimelineEvent","layerId","title","subtitle","time","now","data","on","getInspectorTree","payload","inspectorId","queries","getAll","getSettings","filtered","filter","item","rankItem","passed","sorted","sort","a","b","nodes","stateLabel","getQueryStateLabel","tags","getObserversCount","textColor","getQueryStatusFg","backgroundColor","getQueryStatusBg","rootNodes","getInspectorState","nodeId","state","Date","dataUpdatedAt","toLocaleTimeString"],"mappings":"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"}
@@ -1,166 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var devtoolsApi = require('@vue/devtools-api');
6
- var matchSorterUtils = require('@tanstack/match-sorter-utils');
7
- var utils = require('./utils.js');
8
-
9
- /* istanbul ignore file */
10
- const pluginId = 'vue-query';
11
- const pluginName = 'Vue Query';
12
- function setupDevtools(app, queryClient) {
13
- devtoolsApi.setupDevtoolsPlugin({
14
- id: pluginId,
15
- label: pluginName,
16
- packageName: 'vue-query',
17
- homepage: 'https://tanstack.com/query/v4',
18
- logo: 'https://vue-query.vercel.app/vue-query.svg',
19
- app,
20
- settings: {
21
- baseSort: {
22
- type: 'choice',
23
- component: 'button-group',
24
- label: 'Sort Cache Entries',
25
- options: [{
26
- label: 'ASC',
27
- value: 1
28
- }, {
29
- label: 'DESC',
30
- value: -1
31
- }],
32
- defaultValue: 1
33
- },
34
- sortFn: {
35
- type: 'choice',
36
- label: 'Sort Function',
37
- options: Object.keys(utils.sortFns).map(key => ({
38
- label: key,
39
- value: key
40
- })),
41
- defaultValue: Object.keys(utils.sortFns)[0]
42
- }
43
- }
44
- }, api => {
45
- const queryCache = queryClient.getQueryCache();
46
- api.addInspector({
47
- id: pluginId,
48
- label: pluginName,
49
- icon: 'api',
50
- nodeActions: [{
51
- icon: 'cloud_download',
52
- tooltip: 'Refetch',
53
- action: queryHash => {
54
- var _queryCache$get;
55
-
56
- (_queryCache$get = queryCache.get(queryHash)) == null ? void 0 : _queryCache$get.fetch();
57
- }
58
- }, {
59
- icon: 'alarm',
60
- tooltip: 'Invalidate',
61
- action: queryHash => {
62
- const query = queryCache.get(queryHash);
63
- queryClient.invalidateQueries(query.queryKey);
64
- }
65
- }, {
66
- icon: 'settings_backup_restore',
67
- tooltip: 'Reset',
68
- action: queryHash => {
69
- var _queryCache$get2;
70
-
71
- (_queryCache$get2 = queryCache.get(queryHash)) == null ? void 0 : _queryCache$get2.reset();
72
- }
73
- }, {
74
- icon: 'delete',
75
- tooltip: 'Remove',
76
- action: queryHash => {
77
- const query = queryCache.get(queryHash);
78
- queryCache.remove(query);
79
- }
80
- }]
81
- });
82
- api.addTimelineLayer({
83
- id: pluginId,
84
- label: pluginName,
85
- color: 0xffd94c
86
- });
87
- queryCache.subscribe(event => {
88
- api.sendInspectorTree(pluginId);
89
- api.sendInspectorState(pluginId);
90
- const queryEvents = ['added', 'removed', 'updated'];
91
-
92
- if ( // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
93
- event && queryEvents.includes(event.type)) {
94
- api.addTimelineEvent({
95
- layerId: pluginId,
96
- event: {
97
- title: event.type,
98
- subtitle: event.query.queryHash,
99
- time: api.now(),
100
- data: {
101
- queryHash: event.query.queryHash,
102
- ...event
103
- }
104
- }
105
- });
106
- }
107
- });
108
- api.on.getInspectorTree(payload => {
109
- if (payload.inspectorId === pluginId) {
110
- const queries = queryCache.getAll();
111
- const settings = api.getSettings();
112
- const filtered = payload.filter ? queries.filter(item => matchSorterUtils.rankItem(item.queryHash, payload.filter).passed) : [...queries];
113
- const sorted = filtered.sort((a, b) => utils.sortFns[settings.sortFn](a, b) * settings.baseSort);
114
- const nodes = sorted.map(query => {
115
- const stateLabel = utils.getQueryStateLabel(query);
116
- return {
117
- id: query.queryHash,
118
- label: query.queryHash,
119
- tags: [{
120
- label: stateLabel + " [" + query.getObserversCount() + "]",
121
- textColor: utils.getQueryStatusFg(query),
122
- backgroundColor: utils.getQueryStatusBg(query)
123
- }]
124
- };
125
- });
126
- payload.rootNodes = nodes;
127
- }
128
- });
129
- api.on.getInspectorState(payload => {
130
- if (payload.inspectorId === pluginId) {
131
- const query = queryCache.get(payload.nodeId);
132
-
133
- if (!query) {
134
- return;
135
- }
136
-
137
- payload.state = {
138
- ' Query Details': [{
139
- key: 'Query key',
140
- value: query.queryHash
141
- }, {
142
- key: 'Query status',
143
- value: utils.getQueryStateLabel(query)
144
- }, {
145
- key: 'Observers',
146
- value: query.getObserversCount()
147
- }, {
148
- key: 'Last Updated',
149
- value: new Date(query.state.dataUpdatedAt).toLocaleTimeString()
150
- }],
151
- 'Data Explorer': [{
152
- key: 'Data',
153
- value: query.state.data
154
- }],
155
- 'Query Explorer': [{
156
- key: 'Query',
157
- value: query
158
- }]
159
- };
160
- }
161
- });
162
- });
163
- }
164
-
165
- exports.setupDevtools = setupDevtools;
166
- //# sourceMappingURL=devtools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"devtools.js","sources":["../../../src/devtools/devtools.ts"],"sourcesContent":["/* istanbul ignore file */\n\nimport { setupDevtoolsPlugin } from '@vue/devtools-api'\nimport { rankItem } from '@tanstack/match-sorter-utils'\nimport {\n getQueryStateLabel,\n getQueryStatusBg,\n getQueryStatusFg,\n sortFns,\n} from './utils'\nimport type { CustomInspectorNode } from '@vue/devtools-api'\nimport type { Query, QueryCacheNotifyEvent } from '@tanstack/query-core'\nimport type { QueryClient } from '../queryClient'\n\nconst pluginId = 'vue-query'\nconst pluginName = 'Vue Query'\n\nexport function setupDevtools(app: any, queryClient: QueryClient) {\n setupDevtoolsPlugin(\n {\n id: pluginId,\n label: pluginName,\n packageName: 'vue-query',\n homepage: 'https://tanstack.com/query/v4',\n logo: 'https://vue-query.vercel.app/vue-query.svg',\n app,\n settings: {\n baseSort: {\n type: 'choice',\n component: 'button-group',\n label: 'Sort Cache Entries',\n options: [\n {\n label: 'ASC',\n value: 1,\n },\n {\n label: 'DESC',\n value: -1,\n },\n ],\n defaultValue: 1,\n },\n sortFn: {\n type: 'choice',\n label: 'Sort Function',\n options: Object.keys(sortFns).map((key) => ({\n label: key,\n value: key,\n })),\n defaultValue: Object.keys(sortFns)[0]!,\n },\n },\n },\n (api) => {\n const queryCache = queryClient.getQueryCache()\n\n api.addInspector({\n id: pluginId,\n label: pluginName,\n icon: 'api',\n nodeActions: [\n {\n icon: 'cloud_download',\n tooltip: 'Refetch',\n action: (queryHash: string) => {\n queryCache.get(queryHash)?.fetch()\n },\n },\n {\n icon: 'alarm',\n tooltip: 'Invalidate',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n queryClient.invalidateQueries(query.queryKey)\n },\n },\n {\n icon: 'settings_backup_restore',\n tooltip: 'Reset',\n action: (queryHash: string) => {\n queryCache.get(queryHash)?.reset()\n },\n },\n {\n icon: 'delete',\n tooltip: 'Remove',\n action: (queryHash: string) => {\n const query = queryCache.get(queryHash) as Query\n queryCache.remove(query)\n },\n },\n ],\n })\n\n api.addTimelineLayer({\n id: pluginId,\n label: pluginName,\n color: 0xffd94c,\n })\n\n queryCache.subscribe((event) => {\n api.sendInspectorTree(pluginId)\n api.sendInspectorState(pluginId)\n\n const queryEvents: QueryCacheNotifyEvent['type'][] = [\n 'added',\n 'removed',\n 'updated',\n ]\n if (\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n event &&\n queryEvents.includes(event.type)\n ) {\n api.addTimelineEvent({\n layerId: pluginId,\n event: {\n title: event.type,\n subtitle: event.query.queryHash,\n time: api.now(),\n data: {\n queryHash: event.query.queryHash,\n ...event,\n },\n },\n })\n }\n })\n\n api.on.getInspectorTree((payload) => {\n if (payload.inspectorId === pluginId) {\n const queries = queryCache.getAll()\n const settings = api.getSettings()\n\n const filtered = payload.filter\n ? queries.filter(\n (item) => rankItem(item.queryHash, payload.filter).passed,\n )\n : [...queries]\n\n const sorted = filtered.sort(\n (a, b) => sortFns[settings.sortFn]!(a, b) * settings.baseSort,\n )\n\n const nodes: CustomInspectorNode[] = sorted.map((query) => {\n const stateLabel = getQueryStateLabel(query)\n\n return {\n id: query.queryHash,\n label: query.queryHash,\n tags: [\n {\n label: `${stateLabel} [${query.getObserversCount()}]`,\n textColor: getQueryStatusFg(query),\n backgroundColor: getQueryStatusBg(query),\n },\n ],\n }\n })\n payload.rootNodes = nodes\n }\n })\n\n api.on.getInspectorState((payload) => {\n if (payload.inspectorId === pluginId) {\n const query = queryCache.get(payload.nodeId)\n\n if (!query) {\n return\n }\n\n payload.state = {\n ' Query Details': [\n {\n key: 'Query key',\n value: query.queryHash as string,\n },\n {\n key: 'Query status',\n value: getQueryStateLabel(query),\n },\n {\n key: 'Observers',\n value: query.getObserversCount(),\n },\n {\n key: 'Last Updated',\n value: new Date(query.state.dataUpdatedAt).toLocaleTimeString(),\n },\n ],\n 'Data Explorer': [\n {\n key: 'Data',\n value: query.state.data,\n },\n ],\n 'Query Explorer': [\n {\n key: 'Query',\n value: query,\n },\n ],\n }\n }\n })\n },\n )\n}\n"],"names":["pluginId","pluginName","setupDevtools","app","queryClient","setupDevtoolsPlugin","id","label","packageName","homepage","logo","settings","baseSort","type","component","options","value","defaultValue","sortFn","Object","keys","sortFns","map","key","api","queryCache","getQueryCache","addInspector","icon","nodeActions","tooltip","action","queryHash","get","fetch","query","invalidateQueries","queryKey","reset","remove","addTimelineLayer","color","subscribe","event","sendInspectorTree","sendInspectorState","queryEvents","includes","addTimelineEvent","layerId","title","subtitle","time","now","data","on","getInspectorTree","payload","inspectorId","queries","getAll","getSettings","filtered","filter","item","rankItem","passed","sorted","sort","a","b","nodes","stateLabel","getQueryStateLabel","tags","getObserversCount","textColor","getQueryStatusFg","backgroundColor","getQueryStatusBg","rootNodes","getInspectorState","nodeId","state","Date","dataUpdatedAt","toLocaleTimeString"],"mappings":"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"}