@buoy-gg/react-query 1.7.8 → 2.1.2
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.
- package/lib/commonjs/index.js +619 -24
- package/lib/commonjs/preset.js +1 -1
- package/lib/commonjs/react-query/components/DataEditorMode.js +9 -16
- package/lib/commonjs/react-query/components/MutationEditorMode.js +1 -3
- package/lib/commonjs/react-query/components/ReactQueryDevToolsModal.js +12 -0
- package/lib/commonjs/react-query/components/modals/MutationBrowserModal.js +2 -1
- package/lib/commonjs/react-query/components/modals/QueryBrowserModal.js +8 -14
- package/lib/commonjs/react-query/components/query-browser/ActionButton.js +40 -69
- package/lib/commonjs/react-query/components/query-browser/QueryActions.js +70 -84
- package/lib/commonjs/react-query/hooks/useActionButtons.js +7 -15
- package/lib/commonjs/react-query/hooks/useAllMutations.js +65 -15
- package/lib/commonjs/react-query/hooks/useMutationActionButtons.js +1 -2
- package/lib/commonjs/react-query/hooks/useWifiState.js +3 -3
- package/lib/commonjs/react-query/index.js +11 -0
- package/lib/commonjs/react-query/stores/index.js +48 -0
- package/lib/commonjs/react-query/stores/reactQueryEventStore.js +311 -0
- package/lib/commonjs/react-query/utils/modalStorageOperations.js +2 -2
- package/lib/module/index.js +113 -8
- package/lib/module/preset.js +2 -2
- package/lib/module/react-query/components/DataEditorMode.js +9 -16
- package/lib/module/react-query/components/MutationEditorMode.js +1 -3
- package/lib/module/react-query/components/ReactQueryDevToolsModal.js +13 -1
- package/lib/module/react-query/components/modals/MutationBrowserModal.js +2 -1
- package/lib/module/react-query/components/modals/QueryBrowserModal.js +9 -15
- package/lib/module/react-query/components/query-browser/ActionButton.js +40 -70
- package/lib/module/react-query/components/query-browser/QueryActions.js +70 -84
- package/lib/module/react-query/hooks/useActionButtons.js +7 -15
- package/lib/module/react-query/hooks/useAllMutations.js +66 -16
- package/lib/module/react-query/hooks/useMutationActionButtons.js +1 -2
- package/lib/module/react-query/hooks/useWifiState.js +4 -4
- package/lib/module/react-query/index.js +2 -1
- package/lib/module/react-query/stores/index.js +3 -0
- package/lib/module/react-query/stores/reactQueryEventStore.js +302 -0
- package/lib/module/react-query/utils/modalStorageOperations.js +3 -3
- package/lib/typescript/index.d.ts +61 -5
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/react-query/components/DataEditorMode.d.ts.map +1 -1
- package/lib/typescript/react-query/components/MutationEditorMode.d.ts.map +1 -1
- package/lib/typescript/react-query/components/ReactQueryDevToolsModal.d.ts.map +1 -1
- package/lib/typescript/react-query/components/modals/MutationBrowserModal.d.ts.map +1 -1
- package/lib/typescript/react-query/components/modals/QueryBrowserModal.d.ts.map +1 -1
- package/lib/typescript/react-query/components/query-browser/ActionButton.d.ts +4 -42
- package/lib/typescript/react-query/components/query-browser/ActionButton.d.ts.map +1 -1
- package/lib/typescript/react-query/components/query-browser/QueryActions.d.ts.map +1 -1
- package/lib/typescript/react-query/hooks/useActionButtons.d.ts +5 -8
- package/lib/typescript/react-query/hooks/useActionButtons.d.ts.map +1 -1
- package/lib/typescript/react-query/hooks/useAllMutations.d.ts +2 -2
- package/lib/typescript/react-query/hooks/useAllMutations.d.ts.map +1 -1
- package/lib/typescript/react-query/hooks/useMutationActionButtons.d.ts +1 -8
- package/lib/typescript/react-query/hooks/useMutationActionButtons.d.ts.map +1 -1
- package/lib/typescript/react-query/hooks/useWifiState.d.ts +1 -1
- package/lib/typescript/react-query/hooks/useWifiState.d.ts.map +1 -1
- package/lib/typescript/react-query/index.d.ts +1 -0
- package/lib/typescript/react-query/index.d.ts.map +1 -1
- package/lib/typescript/react-query/stores/index.d.ts +2 -0
- package/lib/typescript/react-query/stores/index.d.ts.map +1 -0
- package/lib/typescript/react-query/stores/reactQueryEventStore.d.ts +99 -0
- package/lib/typescript/react-query/stores/reactQueryEventStore.d.ts.map +1 -0
- package/package.json +17 -3
|
@@ -1,30 +1,80 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useEffect, useRef, useState } from "react";
|
|
3
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
4
4
|
import { useQueryClient } from "@tanstack/react-query";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
|
-
* Tracks all active React Query mutations with lightweight change detection.
|
|
8
|
-
*
|
|
7
|
+
* Tracks all active React Query mutations with lightweight change detection.
|
|
8
|
+
* Mirrors the pattern used in useAllQueries for consistency.
|
|
9
9
|
*/
|
|
10
10
|
function useAllMutations() {
|
|
11
11
|
const queryClient = useQueryClient();
|
|
12
|
-
const [mutations, setMutations] = useState(
|
|
13
|
-
|
|
12
|
+
const [mutations, setMutations] = useState(() => {
|
|
13
|
+
// Initialize with current mutations to avoid flash
|
|
14
|
+
return queryClient.getMutationCache().getAll();
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
// Track mutation states using a Map for O(1) lookups
|
|
18
|
+
const mutationStatesRef = useRef(new Map());
|
|
19
|
+
const updateTimerRef = useRef(undefined);
|
|
20
|
+
|
|
21
|
+
// Check if mutations have changed
|
|
22
|
+
const hasMutationsChanged = useCallback(newMutations => {
|
|
23
|
+
const statesMap = mutationStatesRef.current;
|
|
24
|
+
|
|
25
|
+
// Quick length check first
|
|
26
|
+
if (newMutations.length !== statesMap.size) {
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// Check if any mutation state has changed
|
|
31
|
+
for (const mutation of newMutations) {
|
|
32
|
+
const prevState = statesMap.get(mutation.mutationId);
|
|
33
|
+
if (!prevState) return true;
|
|
34
|
+
if (prevState.status !== mutation.state.status || prevState.submittedAt !== mutation.state.submittedAt || prevState.isPaused !== mutation.state.isPaused) {
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return false;
|
|
39
|
+
}, []);
|
|
40
|
+
|
|
41
|
+
// Update function
|
|
42
|
+
const updateMutations = useCallback(() => {
|
|
43
|
+
const allMutations = queryClient.getMutationCache().getAll();
|
|
44
|
+
if (hasMutationsChanged(allMutations)) {
|
|
45
|
+
// Update states map
|
|
46
|
+
const newStatesMap = new Map();
|
|
47
|
+
allMutations.forEach(m => {
|
|
48
|
+
newStatesMap.set(m.mutationId, m.state);
|
|
49
|
+
});
|
|
50
|
+
mutationStatesRef.current = newStatesMap;
|
|
51
|
+
setMutations(allMutations);
|
|
52
|
+
}
|
|
53
|
+
}, [queryClient, hasMutationsChanged]);
|
|
14
54
|
useEffect(() => {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
55
|
+
// Initial update
|
|
56
|
+
updateMutations();
|
|
57
|
+
|
|
58
|
+
// Subscribe with event filtering (matching useAllQueries pattern)
|
|
59
|
+
const unsubscribe = queryClient.getMutationCache().subscribe(event => {
|
|
60
|
+
// Process events that affect mutation list
|
|
61
|
+
if (event.type === "added" || event.type === "removed" || event.type === "updated") {
|
|
62
|
+
// Debounce updates to batch rapid changes
|
|
63
|
+
if (updateTimerRef.current) {
|
|
64
|
+
clearTimeout(updateTimerRef.current);
|
|
65
|
+
}
|
|
66
|
+
updateTimerRef.current = setTimeout(() => {
|
|
67
|
+
updateMutations();
|
|
68
|
+
}, 10);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
return () => {
|
|
72
|
+
unsubscribe();
|
|
73
|
+
if (updateTimerRef.current) {
|
|
74
|
+
clearTimeout(updateTimerRef.current);
|
|
22
75
|
}
|
|
23
76
|
};
|
|
24
|
-
|
|
25
|
-
const unsubscribe = queryClient.getMutationCache().subscribe(updateMutations);
|
|
26
|
-
return () => unsubscribe();
|
|
27
|
-
}, [queryClient]);
|
|
77
|
+
}, [queryClient, updateMutations]);
|
|
28
78
|
return {
|
|
29
79
|
mutations
|
|
30
80
|
};
|
|
@@ -10,8 +10,7 @@ export function useMutationActionButtons(selectedMutation) {
|
|
|
10
10
|
const queryClient = useQueryClient();
|
|
11
11
|
return useMemo(() => [{
|
|
12
12
|
label: "Remove",
|
|
13
|
-
|
|
14
|
-
textColorClass: "btnRemove",
|
|
13
|
+
variant: "remove",
|
|
15
14
|
disabled: false,
|
|
16
15
|
onPress: () => queryClient.getMutationCache().remove(selectedMutation)
|
|
17
16
|
}], [selectedMutation, queryClient]);
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
import { useEffect, useState, useRef } from "react";
|
|
4
4
|
import { onlineManager } from "@tanstack/react-query";
|
|
5
|
-
import { devToolsStorageKeys,
|
|
5
|
+
import { devToolsStorageKeys, persistentStorage } from "@buoy-gg/shared-ui";
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* Synchronizes a local Wi-Fi toggle with React Query
|
|
8
|
+
* Synchronizes a local Wi-Fi toggle with React Query's `onlineManager`, persisting the selection
|
|
9
9
|
* so developers can simulate offline mode across reloads.
|
|
10
10
|
*/
|
|
11
11
|
export function useWifiState() {
|
|
@@ -17,7 +17,7 @@ export function useWifiState() {
|
|
|
17
17
|
if (hasLoadedPersistedState.current) return;
|
|
18
18
|
const loadPersistedState = async () => {
|
|
19
19
|
try {
|
|
20
|
-
const savedState = await
|
|
20
|
+
const savedState = await persistentStorage.getItem(devToolsStorageKeys.settings.wifiEnabled());
|
|
21
21
|
if (savedState !== null) {
|
|
22
22
|
const isEnabled = savedState === "true";
|
|
23
23
|
setIsOnline(isEnabled);
|
|
@@ -34,7 +34,7 @@ export function useWifiState() {
|
|
|
34
34
|
// Save WiFi state when it changes
|
|
35
35
|
const saveWifiState = async enabled => {
|
|
36
36
|
try {
|
|
37
|
-
await
|
|
37
|
+
await persistentStorage.setItem(devToolsStorageKeys.settings.wifiEnabled(), enabled.toString());
|
|
38
38
|
} catch (error) {
|
|
39
39
|
// Failed to save WiFi state
|
|
40
40
|
}
|
|
@@ -0,0 +1,302 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* React Query Event Store
|
|
5
|
+
*
|
|
6
|
+
* Bridges React Query's cache subscription system to a simple pub/sub pattern
|
|
7
|
+
* that can be consumed by the unified Events DevTools.
|
|
8
|
+
*
|
|
9
|
+
* Usage:
|
|
10
|
+
* 1. In your app, call setQueryClient(queryClient) to connect
|
|
11
|
+
* 2. The store will emit events for query/mutation state changes
|
|
12
|
+
* 3. The Events DevTools subscribes to these events
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
import { isStorageQuery } from "../utils/storageQueryUtils";
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* React Query event types for the unified timeline
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Unified React Query event for the timeline
|
|
23
|
+
*/
|
|
24
|
+
|
|
25
|
+
let eventIdCounter = 0;
|
|
26
|
+
function generateEventId() {
|
|
27
|
+
return `rq-${Date.now()}-${++eventIdCounter}`;
|
|
28
|
+
}
|
|
29
|
+
class ReactQueryEventStore {
|
|
30
|
+
events = [];
|
|
31
|
+
listeners = new Set();
|
|
32
|
+
queryClient = null;
|
|
33
|
+
queryUnsubscribe = null;
|
|
34
|
+
mutationUnsubscribe = null;
|
|
35
|
+
maxEvents = 200;
|
|
36
|
+
|
|
37
|
+
// Track fetch start times for duration calculation
|
|
38
|
+
fetchStartTimes = new Map();
|
|
39
|
+
mutationStartTimes = new Map();
|
|
40
|
+
|
|
41
|
+
// Track last known states to detect transitions
|
|
42
|
+
lastQueryStates = new Map();
|
|
43
|
+
lastMutationStates = new Map();
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Connect a QueryClient to the store
|
|
47
|
+
* Call this in your app after creating the QueryClient
|
|
48
|
+
*/
|
|
49
|
+
setQueryClient(queryClient) {
|
|
50
|
+
// Cleanup previous connection
|
|
51
|
+
this.disconnect();
|
|
52
|
+
this.queryClient = queryClient;
|
|
53
|
+
|
|
54
|
+
// Subscribe to query cache
|
|
55
|
+
this.queryUnsubscribe = queryClient.getQueryCache().subscribe(event => {
|
|
56
|
+
if (event.type === "updated" && event.query) {
|
|
57
|
+
this.handleQueryUpdate(event.query);
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
// Subscribe to mutation cache
|
|
62
|
+
this.mutationUnsubscribe = queryClient.getMutationCache().subscribe(event => {
|
|
63
|
+
if (event.type === "updated" && event.mutation) {
|
|
64
|
+
this.handleMutationUpdate(event.mutation);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Disconnect from the QueryClient
|
|
71
|
+
*/
|
|
72
|
+
disconnect() {
|
|
73
|
+
if (this.queryUnsubscribe) {
|
|
74
|
+
this.queryUnsubscribe();
|
|
75
|
+
this.queryUnsubscribe = null;
|
|
76
|
+
}
|
|
77
|
+
if (this.mutationUnsubscribe) {
|
|
78
|
+
this.mutationUnsubscribe();
|
|
79
|
+
this.mutationUnsubscribe = null;
|
|
80
|
+
}
|
|
81
|
+
this.queryClient = null;
|
|
82
|
+
this.lastQueryStates.clear();
|
|
83
|
+
this.lastMutationStates.clear();
|
|
84
|
+
this.fetchStartTimes.clear();
|
|
85
|
+
this.mutationStartTimes.clear();
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Handle query state updates and emit appropriate events
|
|
90
|
+
*/
|
|
91
|
+
handleQueryUpdate(query) {
|
|
92
|
+
// Skip storage queries (internal to the devtools)
|
|
93
|
+
if (isStorageQuery(query.queryKey)) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const queryHash = query.queryHash;
|
|
97
|
+
const currentState = {
|
|
98
|
+
fetchStatus: query.state.fetchStatus,
|
|
99
|
+
status: query.state.status
|
|
100
|
+
};
|
|
101
|
+
const lastState = this.lastQueryStates.get(queryHash);
|
|
102
|
+
|
|
103
|
+
// Detect state transitions
|
|
104
|
+
if (!lastState) {
|
|
105
|
+
// New query - if it's fetching, emit fetch start
|
|
106
|
+
if (currentState.fetchStatus === "fetching") {
|
|
107
|
+
this.fetchStartTimes.set(queryHash, Date.now());
|
|
108
|
+
this.addEvent({
|
|
109
|
+
id: generateEventId(),
|
|
110
|
+
type: "query-fetch-start",
|
|
111
|
+
timestamp: Date.now(),
|
|
112
|
+
queryKey: query.queryKey,
|
|
113
|
+
queryHash,
|
|
114
|
+
query
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
} else {
|
|
118
|
+
// Existing query - check for transitions
|
|
119
|
+
const wasFetching = lastState.fetchStatus === "fetching";
|
|
120
|
+
const isFetching = currentState.fetchStatus === "fetching";
|
|
121
|
+
|
|
122
|
+
// Started fetching
|
|
123
|
+
if (!wasFetching && isFetching) {
|
|
124
|
+
this.fetchStartTimes.set(queryHash, Date.now());
|
|
125
|
+
this.addEvent({
|
|
126
|
+
id: generateEventId(),
|
|
127
|
+
type: "query-fetch-start",
|
|
128
|
+
timestamp: Date.now(),
|
|
129
|
+
queryKey: query.queryKey,
|
|
130
|
+
queryHash,
|
|
131
|
+
query
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// Finished fetching
|
|
136
|
+
if (wasFetching && !isFetching) {
|
|
137
|
+
const startTime = this.fetchStartTimes.get(queryHash);
|
|
138
|
+
const duration = startTime ? Date.now() - startTime : undefined;
|
|
139
|
+
this.fetchStartTimes.delete(queryHash);
|
|
140
|
+
if (currentState.status === "error") {
|
|
141
|
+
this.addEvent({
|
|
142
|
+
id: generateEventId(),
|
|
143
|
+
type: "query-fetch-error",
|
|
144
|
+
timestamp: Date.now(),
|
|
145
|
+
queryKey: query.queryKey,
|
|
146
|
+
queryHash,
|
|
147
|
+
queryError: query.state.error,
|
|
148
|
+
duration,
|
|
149
|
+
query
|
|
150
|
+
});
|
|
151
|
+
} else {
|
|
152
|
+
this.addEvent({
|
|
153
|
+
id: generateEventId(),
|
|
154
|
+
type: "query-fetch-success",
|
|
155
|
+
timestamp: Date.now(),
|
|
156
|
+
queryKey: query.queryKey,
|
|
157
|
+
queryHash,
|
|
158
|
+
queryData: query.state.data,
|
|
159
|
+
duration,
|
|
160
|
+
query
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
// Query was invalidated
|
|
166
|
+
if (!lastState.status && query.state.isInvalidated) {
|
|
167
|
+
this.addEvent({
|
|
168
|
+
id: generateEventId(),
|
|
169
|
+
type: "query-invalidated",
|
|
170
|
+
timestamp: Date.now(),
|
|
171
|
+
queryKey: query.queryKey,
|
|
172
|
+
queryHash,
|
|
173
|
+
query
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
// Update last known state
|
|
179
|
+
this.lastQueryStates.set(queryHash, currentState);
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Handle mutation state updates and emit appropriate events
|
|
184
|
+
*/
|
|
185
|
+
handleMutationUpdate(mutation) {
|
|
186
|
+
const mutationId = mutation.mutationId;
|
|
187
|
+
const currentStatus = mutation.state.status;
|
|
188
|
+
const lastStatus = this.lastMutationStates.get(mutationId);
|
|
189
|
+
if (lastStatus !== currentStatus) {
|
|
190
|
+
// Status changed
|
|
191
|
+
if (currentStatus === "pending" && lastStatus !== "pending") {
|
|
192
|
+
// Mutation started
|
|
193
|
+
this.mutationStartTimes.set(mutationId, Date.now());
|
|
194
|
+
this.addEvent({
|
|
195
|
+
id: generateEventId(),
|
|
196
|
+
type: "mutation-start",
|
|
197
|
+
timestamp: Date.now(),
|
|
198
|
+
mutationId,
|
|
199
|
+
mutationKey: mutation.options.mutationKey,
|
|
200
|
+
mutationVariables: mutation.state.variables,
|
|
201
|
+
mutation
|
|
202
|
+
});
|
|
203
|
+
} else if (currentStatus === "success" && lastStatus === "pending") {
|
|
204
|
+
// Mutation succeeded
|
|
205
|
+
const startTime = this.mutationStartTimes.get(mutationId);
|
|
206
|
+
const duration = startTime ? Date.now() - startTime : undefined;
|
|
207
|
+
this.mutationStartTimes.delete(mutationId);
|
|
208
|
+
this.addEvent({
|
|
209
|
+
id: generateEventId(),
|
|
210
|
+
type: "mutation-success",
|
|
211
|
+
timestamp: Date.now(),
|
|
212
|
+
mutationId,
|
|
213
|
+
mutationKey: mutation.options.mutationKey,
|
|
214
|
+
mutationVariables: mutation.state.variables,
|
|
215
|
+
mutationData: mutation.state.data,
|
|
216
|
+
duration,
|
|
217
|
+
mutation
|
|
218
|
+
});
|
|
219
|
+
} else if (currentStatus === "error" && lastStatus === "pending") {
|
|
220
|
+
// Mutation failed
|
|
221
|
+
const startTime = this.mutationStartTimes.get(mutationId);
|
|
222
|
+
const duration = startTime ? Date.now() - startTime : undefined;
|
|
223
|
+
this.mutationStartTimes.delete(mutationId);
|
|
224
|
+
this.addEvent({
|
|
225
|
+
id: generateEventId(),
|
|
226
|
+
type: "mutation-error",
|
|
227
|
+
timestamp: Date.now(),
|
|
228
|
+
mutationId,
|
|
229
|
+
mutationKey: mutation.options.mutationKey,
|
|
230
|
+
mutationVariables: mutation.state.variables,
|
|
231
|
+
mutationError: mutation.state.error,
|
|
232
|
+
duration,
|
|
233
|
+
mutation
|
|
234
|
+
});
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
// Update last known status
|
|
239
|
+
this.lastMutationStates.set(mutationId, currentStatus);
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
/**
|
|
243
|
+
* Add an event to the store
|
|
244
|
+
*/
|
|
245
|
+
addEvent(event) {
|
|
246
|
+
this.events = [event, ...this.events].slice(0, this.maxEvents);
|
|
247
|
+
this.notifyListeners();
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
/**
|
|
251
|
+
* Get all events
|
|
252
|
+
*/
|
|
253
|
+
getEvents() {
|
|
254
|
+
return this.events;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Subscribe to event changes
|
|
259
|
+
*/
|
|
260
|
+
subscribe(listener) {
|
|
261
|
+
this.listeners.add(listener);
|
|
262
|
+
// Immediately call with current events
|
|
263
|
+
listener(this.events);
|
|
264
|
+
return () => {
|
|
265
|
+
this.listeners.delete(listener);
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
/**
|
|
270
|
+
* Notify all listeners
|
|
271
|
+
*/
|
|
272
|
+
notifyListeners() {
|
|
273
|
+
const events = this.events;
|
|
274
|
+
this.listeners.forEach(listener => listener(events));
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
/**
|
|
278
|
+
* Clear all events
|
|
279
|
+
*/
|
|
280
|
+
clearEvents() {
|
|
281
|
+
this.events = [];
|
|
282
|
+
this.notifyListeners();
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
/**
|
|
286
|
+
* Check if connected to a QueryClient
|
|
287
|
+
*/
|
|
288
|
+
isConnected() {
|
|
289
|
+
return this.queryClient !== null;
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
// Singleton instance
|
|
294
|
+
export const reactQueryEventStore = new ReactQueryEventStore();
|
|
295
|
+
|
|
296
|
+
// Convenience exports
|
|
297
|
+
export const setQueryClient = queryClient => reactQueryEventStore.setQueryClient(queryClient);
|
|
298
|
+
export const disconnectQueryClient = () => reactQueryEventStore.disconnect();
|
|
299
|
+
export const getReactQueryEvents = () => reactQueryEventStore.getEvents();
|
|
300
|
+
export const subscribeToReactQueryEvents = listener => reactQueryEventStore.subscribe(listener);
|
|
301
|
+
export const clearReactQueryEvents = () => reactQueryEventStore.clearEvents();
|
|
302
|
+
export const isReactQueryConnected = () => reactQueryEventStore.isConnected();
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { persistentStorage } from "@buoy-gg/shared-ui";
|
|
4
4
|
|
|
5
5
|
// Helper functions for persisting panel state using shared storage wrapper
|
|
6
6
|
const setItem = async (key, value) => {
|
|
7
|
-
await
|
|
7
|
+
await persistentStorage.setItem(key, value);
|
|
8
8
|
};
|
|
9
9
|
const getItem = async key => {
|
|
10
|
-
return
|
|
10
|
+
return persistentStorage.getItem(key);
|
|
11
11
|
};
|
|
12
12
|
// Storage operations
|
|
13
13
|
/**
|
|
@@ -1,7 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @buoy-gg/react-query
|
|
3
|
+
*
|
|
4
|
+
* React Query DevTools for React Native.
|
|
5
|
+
*
|
|
6
|
+
* PUBLIC API - Only these exports are supported for external use.
|
|
7
|
+
* Internal stores and event subscription mechanisms are not exported
|
|
8
|
+
* to prevent bypassing the tool's intended usage patterns.
|
|
9
|
+
*/
|
|
1
10
|
export { reactQueryToolPreset, createReactQueryTool, wifiTogglePreset, createWifiToggleTool, } from "./preset";
|
|
2
|
-
export
|
|
3
|
-
export
|
|
4
|
-
export
|
|
5
|
-
export
|
|
6
|
-
export
|
|
11
|
+
export { setQueryClient, disconnectQueryClient, type ReactQueryEvent, type ReactQueryEventType, } from "./react-query/stores/reactQueryEventStore";
|
|
12
|
+
export { ReactQueryModal } from "./react-query/components/modals/ReactQueryModal";
|
|
13
|
+
export { ReactQueryModalHeader } from "./react-query/components/modals/ReactQueryModalHeader";
|
|
14
|
+
export { QueryBrowserModal } from "./react-query/components/modals/QueryBrowserModal";
|
|
15
|
+
export { MutationBrowserModal } from "./react-query/components/modals/MutationBrowserModal";
|
|
16
|
+
export { MutationEditorModal } from "./react-query/components/modals/MutationEditorModal";
|
|
17
|
+
export { DataEditorModal } from "./react-query/components/modals/DataEditorModal";
|
|
18
|
+
export { QueryBrowserFooter } from "./react-query/components/modals/QueryBrowserFooter";
|
|
19
|
+
export { MutationBrowserFooter } from "./react-query/components/modals/MutationBrowserFooter";
|
|
20
|
+
export { SwipeIndicator } from "./react-query/components/modals/SwipeIndicator";
|
|
21
|
+
export { Explorer, QueryBrowser, QueryDetails, QueryInformation, QueryActions, QueryRow, QueryStatus, QueryStatusCount, QueryDetailsChip, MutationsList, MutationDetails, MutationInformation, MutationButton, MutationStatusCount, MutationDetailsChips, ActionButton, ClearCacheButton, NetworkToggleButton, StorageStatusCount, } from "./react-query/components/query-browser";
|
|
22
|
+
export { QueryBrowserMode } from "./react-query/components/QueryBrowserMode";
|
|
23
|
+
export { MutationBrowserMode } from "./react-query/components/MutationBrowserMode";
|
|
24
|
+
export { MutationEditorMode } from "./react-query/components/MutationEditorMode";
|
|
25
|
+
export { DataEditorMode } from "./react-query/components/DataEditorMode";
|
|
26
|
+
export { QuerySelector } from "./react-query/components/QuerySelector";
|
|
27
|
+
export { QueryDebugInfo } from "./react-query/components/QueryDebugInfo";
|
|
28
|
+
export { WifiToggle } from "./react-query/components/WifiToggle";
|
|
29
|
+
export { ReactQuerySection } from "./react-query/components/ReactQuerySection";
|
|
30
|
+
export { ReactQueryDevToolsModal } from "./react-query/components/ReactQueryDevToolsModal";
|
|
31
|
+
export { VirtualizedDataExplorer, DataViewer, TypeLegend, } from "@buoy-gg/shared-ui/dataViewer";
|
|
32
|
+
export { default as useAllQueries } from "./react-query/hooks/useAllQueries";
|
|
33
|
+
export { default as useAllMutations } from "./react-query/hooks/useAllMutations";
|
|
34
|
+
export { useGetQueryByQueryKey, useGetQueryByQueryKeyWithVersion, } from "./react-query/hooks/useSelectedQuery";
|
|
35
|
+
export { useGetMutationById } from "./react-query/hooks/useSelectedMutation";
|
|
36
|
+
export { default as useQueryStatusCounts } from "./react-query/hooks/useQueryStatusCounts";
|
|
37
|
+
export { useStorageQueryCounts } from "./react-query/hooks/useStorageQueryCounts";
|
|
38
|
+
export { useReactQueryState } from "./react-query/hooks/useReactQueryState";
|
|
39
|
+
export { useActionButtons } from "./react-query/hooks/useActionButtons";
|
|
40
|
+
export { useMutationActionButtons } from "./react-query/hooks/useMutationActionButtons";
|
|
41
|
+
export { useModalManager } from "./react-query/hooks/useModalManager";
|
|
42
|
+
export { useModalPersistence } from "./react-query/hooks/useModalPersistence";
|
|
43
|
+
export { useWifiState } from "./react-query/hooks/useWifiState";
|
|
44
|
+
export { default as invalidate } from "./react-query/utils/actions/invalidate";
|
|
45
|
+
export { default as refetch } from "./react-query/utils/actions/refetch";
|
|
46
|
+
export { default as reset } from "./react-query/utils/actions/reset";
|
|
47
|
+
export { default as remove } from "./react-query/utils/actions/remove";
|
|
48
|
+
export { default as deleteItem } from "./react-query/utils/actions/deleteItem";
|
|
49
|
+
export { default as triggerError } from "./react-query/utils/actions/triggerError";
|
|
50
|
+
export { default as triggerLoading } from "./react-query/utils/actions/triggerLoading";
|
|
51
|
+
export * from "./react-query/utils/getQueryStatusLabel";
|
|
52
|
+
export * from "./react-query/utils/getQueryStatusColor";
|
|
53
|
+
export * from "./react-query/utils/getStorageQueryCounts";
|
|
54
|
+
export * from "./react-query/utils/storageQueryUtils";
|
|
55
|
+
export * from "./react-query/utils/modalStorageOperations";
|
|
56
|
+
export * from "./react-query/utils/updateNestedDataByPath";
|
|
57
|
+
export * from "./react-query/utils/deleteNestedDataByPath";
|
|
58
|
+
export { safeStringify, displayValue, parseDisplayValue } from "@buoy-gg/shared-ui";
|
|
59
|
+
export type { JsonValue } from "./react-query/types/types";
|
|
60
|
+
export { isPlainObject } from "./react-query/types/types";
|
|
61
|
+
/** @internal */
|
|
62
|
+
export { reactQueryEventStore } from "./react-query/stores/reactQueryEventStore";
|
|
7
63
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataEditorMode.d.ts","sourceRoot":"","sources":["../../../../src/react-query/components/DataEditorMode.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAkB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"DataEditorMode.d.ts","sourceRoot":"","sources":["../../../../src/react-query/components/DataEditorMode.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAkB,MAAM,uBAAuB,CAAC;AAS9D,UAAU,mBAAmB;IAC3B,aAAa,EAAE,KAAK,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,wFAAwF;IACxF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,EAC7B,aAAa,EACb,cAAc,EACd,qBAA6B,EAC7B,YAAY,GACb,EAAE,mBAAmB,+BA4ErB;AAGD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,aAAa,EACb,cAAc,EACd,YAAY,GACb,EAAE;IACD,aAAa,EAAE,KAAK,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,wFAAwF;IACxF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,+BAyBA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MutationEditorMode.d.ts","sourceRoot":"","sources":["../../../../src/react-query/components/MutationEditorMode.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAQjD,UAAU,uBAAuB;IAC/B,gBAAgB,EAAE,QAAQ,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,gBAAgB,EAChB,cAAc,GACf,EAAE,uBAAuB,+
|
|
1
|
+
{"version":3,"file":"MutationEditorMode.d.ts","sourceRoot":"","sources":["../../../../src/react-query/components/MutationEditorMode.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAQjD,UAAU,uBAAuB;IAC/B,gBAAgB,EAAE,QAAQ,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,gBAAgB,EAChB,cAAc,GACf,EAAE,uBAAuB,+BAqEzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReactQueryDevToolsModal.d.ts","sourceRoot":"","sources":["../../../../src/react-query/components/ReactQueryDevToolsModal.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ReactQueryDevToolsModal.d.ts","sourceRoot":"","sources":["../../../../src/react-query/components/ReactQueryDevToolsModal.tsx"],"names":[],"mappings":"AAKA,oFAAoF;AACpF,MAAM,WAAW,4BAA4B;IAC3C,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,yEAAyE;IACzE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,yFAAyF;IACzF,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;CACvC;AAQD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,EACtC,OAAO,EACP,OAAO,EACP,UAAU,EACV,2BAAkC,GACnC,EAAE,4BAA4B,sCAoF9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MutationBrowserModal.d.ts","sourceRoot":"","sources":["../../../../../src/react-query/components/modals/MutationBrowserModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,uBAAuB,CAAC;AAcjE,UAAU,yBAAyB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,KAAK,IAAI,CAAC;IAC3D,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,WAAW,EAAE,CAAC,GAAG,EAAE,SAAS,GAAG,WAAW,KAAK,IAAI,CAAC;IACpD,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,OAAO,EACP,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,YAAY,EAAE,oBAAoB,EAClC,cAAc,EAAE,sBAAsB,EACtC,WAAW,EACX,2BAAmC,EACnC,UAAe,EACf,cAAc,GACf,EAAE,yBAAyB,
|
|
1
|
+
{"version":3,"file":"MutationBrowserModal.d.ts","sourceRoot":"","sources":["../../../../../src/react-query/components/modals/MutationBrowserModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,uBAAuB,CAAC;AAcjE,UAAU,yBAAyB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gBAAgB,EAAE,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,KAAK,IAAI,CAAC;IAC3D,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,WAAW,EAAE,CAAC,GAAG,EAAE,SAAS,GAAG,WAAW,KAAK,IAAI,CAAC;IACpD,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,OAAO,EACP,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,UAAU,EACV,YAAY,EAAE,oBAAoB,EAClC,cAAc,EAAE,sBAAsB,EACtC,WAAW,EACX,2BAAmC,EACnC,UAAe,EACf,cAAc,GACf,EAAE,yBAAyB,sCA2I3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryBrowserModal.d.ts","sourceRoot":"","sources":["../../../../../src/react-query/components/modals/QueryBrowserModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAkB,MAAM,uBAAuB,CAAC;AAiBxE,UAAU,sBAAsB;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,QAAQ,CAAC;IAC5B,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,KAAK,IAAI,CAAC;IAClD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,WAAW,EAAE,CAAC,GAAG,EAAE,SAAS,GAAG,WAAW,KAAK,IAAI,CAAC;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,UAAU,EACV,YAAY,EAAE,oBAAoB,EAClC,cAAc,EAAE,sBAAsB,EACtC,2BAAmC,EACnC,WAAW,EACX,UAAe,EACf,cAAc,GACf,EAAE,sBAAsB,
|
|
1
|
+
{"version":3,"file":"QueryBrowserModal.d.ts","sourceRoot":"","sources":["../../../../../src/react-query/components/modals/QueryBrowserModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAkB,MAAM,uBAAuB,CAAC;AAiBxE,UAAU,sBAAsB;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,QAAQ,CAAC;IAC5B,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,KAAK,IAAI,CAAC;IAClD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjD,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,WAAW,EAAE,CAAC,GAAG,EAAE,SAAS,GAAG,WAAW,KAAK,IAAI,CAAC;IACpD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,gBAAgB,EAChB,aAAa,EACb,OAAO,EACP,UAAU,EACV,YAAY,EAAE,oBAAoB,EAClC,cAAc,EAAE,sBAAsB,EACtC,2BAAmC,EACnC,WAAW,EACX,UAAe,EACf,cAAc,GACf,EAAE,sBAAsB,sCA4NxB"}
|
|
@@ -1,49 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
btnRefetch: {
|
|
3
|
-
color: "#20C997";
|
|
4
|
-
backgroundColor: string;
|
|
5
|
-
borderColor: string;
|
|
6
|
-
textColor: "#20C997";
|
|
7
|
-
};
|
|
8
|
-
btnInvalidate: {
|
|
9
|
-
color: "#FFA94D";
|
|
10
|
-
backgroundColor: string;
|
|
11
|
-
borderColor: string;
|
|
12
|
-
textColor: "#FFA94D";
|
|
13
|
-
};
|
|
14
|
-
btnReset: {
|
|
15
|
-
color: "#A0A0A0";
|
|
16
|
-
backgroundColor: string;
|
|
17
|
-
borderColor: string;
|
|
18
|
-
textColor: "#A0A0A0";
|
|
19
|
-
};
|
|
20
|
-
btnRemove: {
|
|
21
|
-
color: "#EF4444";
|
|
22
|
-
backgroundColor: string;
|
|
23
|
-
borderColor: string;
|
|
24
|
-
textColor: "#EF4444";
|
|
25
|
-
};
|
|
26
|
-
btnTriggerLoading: {
|
|
27
|
-
color: "#20C997";
|
|
28
|
-
backgroundColor: string;
|
|
29
|
-
borderColor: string;
|
|
30
|
-
textColor: "#20C997";
|
|
31
|
-
};
|
|
32
|
-
btnTriggerLoadiError: {
|
|
33
|
-
color: "#888888";
|
|
34
|
-
backgroundColor: string;
|
|
35
|
-
borderColor: string;
|
|
36
|
-
textColor: "#888888";
|
|
37
|
-
};
|
|
38
|
-
};
|
|
1
|
+
export type ButtonVariant = "refetch" | "invalidate" | "reset" | "remove" | "triggerLoading" | "triggerError";
|
|
39
2
|
interface Props {
|
|
40
3
|
onClick: () => void;
|
|
41
4
|
text: string;
|
|
42
|
-
|
|
43
|
-
_textColorClass: keyof typeof buttonConfigs;
|
|
5
|
+
variant: ButtonVariant;
|
|
44
6
|
disabled: boolean;
|
|
45
7
|
}
|
|
46
|
-
/**
|
|
47
|
-
export default function ActionButton({ onClick, text,
|
|
8
|
+
/** Clean, minimal action button matching React Query DevTools style. */
|
|
9
|
+
export default function ActionButton({ onClick, text, variant, disabled, }: Props): import("react").JSX.Element;
|
|
48
10
|
export {};
|
|
49
11
|
//# sourceMappingURL=ActionButton.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionButton.d.ts","sourceRoot":"","sources":["../../../../../src/react-query/components/query-browser/ActionButton.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ActionButton.d.ts","sourceRoot":"","sources":["../../../../../src/react-query/components/query-browser/ActionButton.tsx"],"names":[],"mappings":"AAGA,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,YAAY,GACZ,OAAO,GACP,QAAQ,GACR,gBAAgB,GAChB,cAAc,CAAC;AAuCnB,UAAU,KAAK;IACb,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,aAAa,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,wEAAwE;AACxE,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,OAAO,EACP,IAAI,EACJ,OAAO,EACP,QAAQ,GACT,EAAE,KAAK,+BAoCP"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryActions.d.ts","sourceRoot":"","sources":["../../../../../src/react-query/components/query-browser/QueryActions.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,KAAK,EAAkB,MAAM,uBAAuB,CAAC;AAY9D,UAAU,KAAK;IACb,gBAAgB,EAAE,QAAQ,CAAC,cAAc,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;IAC9D,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;CAC1B;
|
|
1
|
+
{"version":3,"file":"QueryActions.d.ts","sourceRoot":"","sources":["../../../../../src/react-query/components/query-browser/QueryActions.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,KAAK,EAAkB,MAAM,uBAAuB,CAAC;AAY9D,UAAU,KAAK;IACb,gBAAgB,EAAE,QAAQ,CAAC,cAAc,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC;IAC9D,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,KAAK,sCAoEtE"}
|