@buoy-gg/react-query 7.0.25 → 7.0.27
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/react-query/components/DataEditorMode.js +17 -16
- package/lib/commonjs/react-query/components/FilterStatusBadge.js +1 -1
- package/lib/commonjs/react-query/components/MutationBrowserMode.js +4 -3
- package/lib/commonjs/react-query/components/MutationEditorMode.js +51 -34
- package/lib/commonjs/react-query/components/QueryBrowserMode.js +4 -3
- package/lib/commonjs/react-query/components/modals/DataEditorModal.js +10 -1
- package/lib/commonjs/react-query/components/modals/MutationBrowserFooter.js +4 -2
- package/lib/commonjs/react-query/components/modals/MutationBrowserModal.js +10 -1
- package/lib/commonjs/react-query/components/modals/MutationEditorModal.js +17 -1
- package/lib/commonjs/react-query/components/modals/QueryBrowserFooter.js +4 -2
- package/lib/commonjs/react-query/components/modals/QueryBrowserModal.js +12 -2
- package/lib/commonjs/react-query/components/modals/ReactQueryModalHeader.js +10 -10
- package/lib/commonjs/react-query/components/modals/SwipeIndicator.js +4 -4
- package/lib/commonjs/react-query/components/query-browser/ActionButton.js +21 -21
- package/lib/commonjs/react-query/components/query-browser/ClearCacheButton.js +5 -5
- package/lib/commonjs/react-query/components/query-browser/Explorer.js +69 -69
- package/lib/commonjs/react-query/components/query-browser/MutationButton.js +7 -7
- package/lib/commonjs/react-query/components/query-browser/MutationDetails.js +12 -12
- package/lib/commonjs/react-query/components/query-browser/MutationInformation.js +7 -6
- package/lib/commonjs/react-query/components/query-browser/MutationsList.js +15 -11
- package/lib/commonjs/react-query/components/query-browser/QueryActions.js +1 -1
- package/lib/commonjs/react-query/components/query-browser/QueryBrowser.js +5 -4
- package/lib/commonjs/react-query/components/query-browser/QueryDetails.js +12 -12
- package/lib/commonjs/react-query/components/query-browser/QueryInformation.js +5 -4
- package/lib/commonjs/react-query/components/query-browser/QueryStatus.js +22 -16
- package/lib/module/react-query/components/DataEditorMode.js +18 -17
- package/lib/module/react-query/components/FilterStatusBadge.js +2 -2
- package/lib/module/react-query/components/MutationBrowserMode.js +4 -3
- package/lib/module/react-query/components/MutationEditorMode.js +51 -35
- package/lib/module/react-query/components/QueryBrowserMode.js +4 -3
- package/lib/module/react-query/components/modals/DataEditorModal.js +11 -2
- package/lib/module/react-query/components/modals/MutationBrowserFooter.js +5 -3
- package/lib/module/react-query/components/modals/MutationBrowserModal.js +11 -2
- package/lib/module/react-query/components/modals/MutationEditorModal.js +19 -3
- package/lib/module/react-query/components/modals/QueryBrowserFooter.js +5 -3
- package/lib/module/react-query/components/modals/QueryBrowserModal.js +14 -4
- package/lib/module/react-query/components/modals/ReactQueryModalHeader.js +11 -11
- package/lib/module/react-query/components/modals/SwipeIndicator.js +5 -5
- package/lib/module/react-query/components/query-browser/ActionButton.js +22 -22
- package/lib/module/react-query/components/query-browser/ClearCacheButton.js +6 -6
- package/lib/module/react-query/components/query-browser/Explorer.js +70 -70
- package/lib/module/react-query/components/query-browser/MutationButton.js +8 -8
- package/lib/module/react-query/components/query-browser/MutationDetails.js +13 -13
- package/lib/module/react-query/components/query-browser/MutationInformation.js +8 -7
- package/lib/module/react-query/components/query-browser/MutationsList.js +16 -12
- package/lib/module/react-query/components/query-browser/QueryActions.js +2 -2
- package/lib/module/react-query/components/query-browser/QueryBrowser.js +6 -5
- package/lib/module/react-query/components/query-browser/QueryDetails.js +13 -13
- package/lib/module/react-query/components/query-browser/QueryInformation.js +6 -5
- package/lib/module/react-query/components/query-browser/QueryStatus.js +23 -17
- package/lib/typescript/react-query/components/MutationBrowserMode.d.ts.map +1 -1
- package/lib/typescript/react-query/components/MutationEditorMode.d.ts +12 -1
- package/lib/typescript/react-query/components/MutationEditorMode.d.ts.map +1 -1
- package/lib/typescript/react-query/components/QueryBrowserMode.d.ts.map +1 -1
- package/lib/typescript/react-query/components/modals/DataEditorModal.d.ts.map +1 -1
- package/lib/typescript/react-query/components/modals/MutationBrowserFooter.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/MutationEditorModal.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/QueryStatus.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -5,7 +5,6 @@ import { useMemo } from "react";
|
|
|
5
5
|
import { QueryBrowser } from "./query-browser/index";
|
|
6
6
|
import { FilterStatusBadge } from "./FilterStatusBadge";
|
|
7
7
|
import useAllQueries from "../hooks/useAllQueries";
|
|
8
|
-
import { buoyColors } from "@buoy-gg/shared-ui";
|
|
9
8
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
9
|
/** Wrapper around the query list experience used inside the modal view. */
|
|
11
10
|
export function QueryBrowserMode({
|
|
@@ -67,11 +66,13 @@ export function QueryBrowserMode({
|
|
|
67
66
|
const styles = StyleSheet.create({
|
|
68
67
|
queryListContainer: {
|
|
69
68
|
flex: 1,
|
|
70
|
-
|
|
69
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
70
|
+
backgroundColor: "transparent"
|
|
71
71
|
},
|
|
72
72
|
queryListContent: {
|
|
73
73
|
padding: 8,
|
|
74
|
-
|
|
74
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
75
|
+
backgroundColor: "transparent",
|
|
75
76
|
flexGrow: 1
|
|
76
77
|
}
|
|
77
78
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { JsModal, devToolsStorageKeys } from "@buoy-gg/shared-ui";
|
|
3
|
+
import { JsModal, devToolsStorageKeys, useSafeAreaInsets } from "@buoy-gg/shared-ui";
|
|
4
4
|
import { useGetQueryByQueryKeyWithVersion } from "../../hooks/useSelectedQuery";
|
|
5
5
|
import { ReactQueryModalHeader } from "./ReactQueryModalHeader";
|
|
6
6
|
import { DataEditorMode, DataEditorActionsFooter } from "../DataEditorMode";
|
|
@@ -27,6 +27,15 @@ export function DataEditorModal({
|
|
|
27
27
|
const handleModeChange = useCallback(mode => {
|
|
28
28
|
setModalMode(mode);
|
|
29
29
|
}, []);
|
|
30
|
+
|
|
31
|
+
// JsModal overlays the footer on the content and only reserves `footerHeight`
|
|
32
|
+
// of padding beneath it. DataEditorActionsFooter pads its bottom with
|
|
33
|
+
// `insets.bottom + 8` when docked, so the reserve must grow by the same
|
|
34
|
+
// amount or the editor bottom hides behind the footer.
|
|
35
|
+
const insets = useSafeAreaInsets({
|
|
36
|
+
minBottom: 16
|
|
37
|
+
});
|
|
38
|
+
const footerHeight = modalMode === "floating" ? 72 : 80 + insets.bottom;
|
|
30
39
|
const renderHeaderContent = () => /*#__PURE__*/_jsx(ReactQueryModalHeader, {
|
|
31
40
|
selectedQuery: selectedQuery,
|
|
32
41
|
activeTab: "queries",
|
|
@@ -55,7 +64,7 @@ export function DataEditorModal({
|
|
|
55
64
|
enableGlitchEffects: true,
|
|
56
65
|
styles: {},
|
|
57
66
|
footer: footerNode,
|
|
58
|
-
footerHeight:
|
|
67
|
+
footerHeight: footerHeight,
|
|
59
68
|
children: /*#__PURE__*/_jsx(DataEditorMode, {
|
|
60
69
|
selectedQuery: selectedQuery,
|
|
61
70
|
isFloatingMode: modalMode === "floating",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { View, StyleSheet } from "react-native";
|
|
4
|
-
import { useSafeAreaInsets,
|
|
4
|
+
import { useSafeAreaInsets, night } from "@buoy-gg/shared-ui";
|
|
5
5
|
import MutationStatusCount from "../query-browser/MutationStatusCount";
|
|
6
6
|
import { useMemo } from "react";
|
|
7
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -48,10 +48,12 @@ export function MutationBrowserFooter({
|
|
|
48
48
|
const styles = StyleSheet.create({
|
|
49
49
|
filterFooter: {
|
|
50
50
|
borderTopWidth: 1,
|
|
51
|
-
borderTopColor:
|
|
51
|
+
borderTopColor: night.color.border,
|
|
52
52
|
paddingVertical: 8,
|
|
53
53
|
paddingHorizontal: 0,
|
|
54
|
-
|
|
54
|
+
// Transparent so the night sheet's star field shows through.
|
|
55
|
+
// Night glass bar — matches the shared EventStepperFooter backing.
|
|
56
|
+
backgroundColor: "rgba(5, 5, 5, 0.92)",
|
|
55
57
|
borderBottomLeftRadius: 14,
|
|
56
58
|
borderBottomRightRadius: 14
|
|
57
59
|
},
|
|
@@ -5,7 +5,7 @@ import { useCallback, useState, useRef } from "react";
|
|
|
5
5
|
import { useGetMutationById } from "../../hooks/useSelectedMutation";
|
|
6
6
|
import { MutationBrowserMode } from "../MutationBrowserMode";
|
|
7
7
|
import { MutationBrowserFooter } from "./MutationBrowserFooter";
|
|
8
|
-
import { JsModal } from "@buoy-gg/shared-ui";
|
|
8
|
+
import { JsModal, useSafeAreaInsets } from "@buoy-gg/shared-ui";
|
|
9
9
|
import { ReactQueryModalHeader } from "./ReactQueryModalHeader";
|
|
10
10
|
import { View, Animated, PanResponder } from "react-native";
|
|
11
11
|
import { SwipeIndicator } from "./SwipeIndicator";
|
|
@@ -56,6 +56,15 @@ export function MutationBrowserModal({
|
|
|
56
56
|
setModalMode(mode);
|
|
57
57
|
}, []);
|
|
58
58
|
|
|
59
|
+
// JsModal overlays the footer on the content and only reserves `footerHeight`
|
|
60
|
+
// of padding beneath it. MutationBrowserFooter grows by the safe-area inset
|
|
61
|
+
// when docked, so the reserve must track that or the list bottom hides
|
|
62
|
+
// behind the footer.
|
|
63
|
+
const insets = useSafeAreaInsets({
|
|
64
|
+
minBottom: 16
|
|
65
|
+
});
|
|
66
|
+
const footerHeight = modalMode === "floating" ? 56 : 48 + insets.bottom;
|
|
67
|
+
|
|
59
68
|
// Create PanResponder for swipe navigation
|
|
60
69
|
const panResponder = useRef(PanResponder.create({
|
|
61
70
|
onStartShouldSetPanResponder: () => false,
|
|
@@ -126,7 +135,7 @@ export function MutationBrowserModal({
|
|
|
126
135
|
enableGlitchEffects: true,
|
|
127
136
|
styles: {},
|
|
128
137
|
footer: footerNode,
|
|
129
|
-
footerHeight:
|
|
138
|
+
footerHeight: footerHeight,
|
|
130
139
|
children: /*#__PURE__*/_jsx(View, {
|
|
131
140
|
style: {
|
|
132
141
|
flex: 1
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { JsModal, devToolsStorageKeys } from "@buoy-gg/shared-ui";
|
|
3
|
+
import { JsModal, useSafeAreaInsets, devToolsStorageKeys } from "@buoy-gg/shared-ui";
|
|
4
4
|
import { useGetMutationById } from "../../hooks/useSelectedMutation";
|
|
5
5
|
import { ReactQueryModalHeader } from "./ReactQueryModalHeader";
|
|
6
|
-
import { MutationEditorMode } from "../MutationEditorMode";
|
|
6
|
+
import { MutationEditorMode, MutationEditorActionsFooter } from "../MutationEditorMode";
|
|
7
7
|
import { useState, useCallback } from "react";
|
|
8
8
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
9
|
/**
|
|
@@ -24,6 +24,15 @@ export function MutationEditorModal({
|
|
|
24
24
|
const handleModeChange = useCallback(mode => {
|
|
25
25
|
setModalMode(mode);
|
|
26
26
|
}, []);
|
|
27
|
+
|
|
28
|
+
// JsModal overlays the footer on the content and only reserves `footerHeight`
|
|
29
|
+
// of padding beneath it. MutationEditorActionsFooter pads its bottom with
|
|
30
|
+
// `insets.bottom + 8` when docked, so the reserve must grow by the same
|
|
31
|
+
// amount or the editor bottom hides behind the action bar.
|
|
32
|
+
const insets = useSafeAreaInsets({
|
|
33
|
+
minBottom: 16
|
|
34
|
+
});
|
|
35
|
+
const footerHeight = modalMode === "floating" ? 72 : 80 + insets.bottom;
|
|
27
36
|
const renderHeaderContent = () => /*#__PURE__*/_jsx(ReactQueryModalHeader, {
|
|
28
37
|
selectedMutation: selectedMutation,
|
|
29
38
|
activeTab: "mutations",
|
|
@@ -32,6 +41,10 @@ export function MutationEditorModal({
|
|
|
32
41
|
});
|
|
33
42
|
const storagePrefix = enableSharedModalDimensions ? devToolsStorageKeys.reactQuery.modal() : devToolsStorageKeys.reactQuery.mutationModal();
|
|
34
43
|
if (!visible || !selectedMutation) return null;
|
|
44
|
+
const footerNode = /*#__PURE__*/_jsx(MutationEditorActionsFooter, {
|
|
45
|
+
selectedMutation: selectedMutation,
|
|
46
|
+
isFloatingMode: modalMode === "floating"
|
|
47
|
+
});
|
|
35
48
|
return /*#__PURE__*/_jsx(JsModal, {
|
|
36
49
|
visible: visible,
|
|
37
50
|
onClose: onClose,
|
|
@@ -46,9 +59,12 @@ export function MutationEditorModal({
|
|
|
46
59
|
initialMode: "bottomSheet",
|
|
47
60
|
enableGlitchEffects: true,
|
|
48
61
|
styles: {},
|
|
62
|
+
footer: footerNode,
|
|
63
|
+
footerHeight: footerHeight,
|
|
49
64
|
children: /*#__PURE__*/_jsx(MutationEditorMode, {
|
|
50
65
|
selectedMutation: selectedMutation,
|
|
51
|
-
isFloatingMode: modalMode === "floating"
|
|
66
|
+
isFloatingMode: modalMode === "floating",
|
|
67
|
+
disableInternalFooter: true
|
|
52
68
|
})
|
|
53
69
|
});
|
|
54
70
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { View, StyleSheet } from "react-native";
|
|
4
|
-
import { useSafeAreaInsets,
|
|
4
|
+
import { useSafeAreaInsets, night } from "@buoy-gg/shared-ui";
|
|
5
5
|
import QueryStatusCount from "../query-browser/QueryStatusCount";
|
|
6
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
7
|
/**
|
|
@@ -43,10 +43,12 @@ export function QueryBrowserFooter({
|
|
|
43
43
|
const styles = StyleSheet.create({
|
|
44
44
|
filterFooter: {
|
|
45
45
|
borderTopWidth: 1,
|
|
46
|
-
borderTopColor:
|
|
46
|
+
borderTopColor: night.color.border,
|
|
47
47
|
paddingVertical: 8,
|
|
48
48
|
paddingHorizontal: 0,
|
|
49
|
-
|
|
49
|
+
// Transparent so the night sheet's star field shows through.
|
|
50
|
+
// Night glass bar — matches the shared EventStepperFooter backing.
|
|
51
|
+
backgroundColor: "rgba(5, 5, 5, 0.92)",
|
|
50
52
|
borderBottomLeftRadius: 14,
|
|
51
53
|
borderBottomRightRadius: 14
|
|
52
54
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { useQueryClient } from "@tanstack/react-query";
|
|
4
|
-
import { JsModal, ModalHeader, TabSelector } from "@buoy-gg/shared-ui";
|
|
4
|
+
import { JsModal, useSafeAreaInsets, ModalHeader, TabSelector } from "@buoy-gg/shared-ui";
|
|
5
5
|
import { useGetQueryByQueryKey } from "../../hooks/useSelectedQuery";
|
|
6
6
|
import { ReactQueryModalHeader } from "./ReactQueryModalHeader";
|
|
7
7
|
import { QueryBrowserMode } from "../QueryBrowserMode";
|
|
@@ -9,7 +9,7 @@ import { QueryBrowserFooter } from "./QueryBrowserFooter";
|
|
|
9
9
|
import { QueryFilterViewV3 } from "../QueryFilterViewV3";
|
|
10
10
|
import { useState, useCallback, useEffect } from "react";
|
|
11
11
|
import { View, StyleSheet } from "react-native";
|
|
12
|
-
import { devToolsStorageKeys, persistentStorage
|
|
12
|
+
import { devToolsStorageKeys, persistentStorage } from "@buoy-gg/shared-ui";
|
|
13
13
|
import useAllQueries from "../../hooks/useAllQueries";
|
|
14
14
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
15
|
/**
|
|
@@ -142,6 +142,15 @@ export function QueryBrowserModal({
|
|
|
142
142
|
const handleModeChange = useCallback(mode => {
|
|
143
143
|
setModalMode(mode);
|
|
144
144
|
}, []);
|
|
145
|
+
|
|
146
|
+
// JsModal overlays the footer on the content and only reserves `footerHeight`
|
|
147
|
+
// of padding beneath it. QueryBrowserFooter grows by the safe-area inset when
|
|
148
|
+
// docked, so the reserve must track that or the list bottom hides behind the
|
|
149
|
+
// footer.
|
|
150
|
+
const insets = useSafeAreaInsets({
|
|
151
|
+
minBottom: 16
|
|
152
|
+
});
|
|
153
|
+
const footerHeight = modalMode === "floating" ? 56 : 48 + insets.bottom;
|
|
145
154
|
if (!visible) return null;
|
|
146
155
|
const renderHeaderContent = () => {
|
|
147
156
|
// Filter view header with back button
|
|
@@ -202,7 +211,7 @@ export function QueryBrowserModal({
|
|
|
202
211
|
disableScrollWrapper: !showFilterView,
|
|
203
212
|
styles: {},
|
|
204
213
|
footer: !showFilterView ? footerNode : undefined,
|
|
205
|
-
footerHeight: !showFilterView ?
|
|
214
|
+
footerHeight: !showFilterView ? footerHeight : undefined,
|
|
206
215
|
children: /*#__PURE__*/_jsx(View, {
|
|
207
216
|
style: styles.container,
|
|
208
217
|
children: showFilterView ?
|
|
@@ -234,6 +243,7 @@ export function QueryBrowserModal({
|
|
|
234
243
|
const styles = StyleSheet.create({
|
|
235
244
|
container: {
|
|
236
245
|
flex: 1,
|
|
237
|
-
|
|
246
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
247
|
+
backgroundColor: "transparent"
|
|
238
248
|
}
|
|
239
249
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { ModalHeader, TabSelector, Search, X, Filter, Trash,
|
|
3
|
+
import { ModalHeader, TabSelector, Search, X, Filter, Trash, night } from "@buoy-gg/shared-ui";
|
|
4
4
|
import { useState, useRef, useEffect } from "react";
|
|
5
5
|
import { View, TextInput, TouchableOpacity, StyleSheet } from "react-native";
|
|
6
6
|
import { WifiToggle } from "../WifiToggle";
|
|
@@ -83,12 +83,12 @@ export function ReactQueryModalHeader({
|
|
|
83
83
|
style: styles.headerSearchContainer,
|
|
84
84
|
children: [/*#__PURE__*/_jsx(Search, {
|
|
85
85
|
size: 14,
|
|
86
|
-
color:
|
|
86
|
+
color: night.color.textSecondary
|
|
87
87
|
}), /*#__PURE__*/_jsx(TextInput, {
|
|
88
88
|
ref: searchInputRef,
|
|
89
89
|
style: styles.headerSearchInput,
|
|
90
90
|
placeholder: "Search query keys...",
|
|
91
|
-
placeholderTextColor:
|
|
91
|
+
placeholderTextColor: night.color.textTertiary,
|
|
92
92
|
value: searchText,
|
|
93
93
|
onChangeText: handleSearch,
|
|
94
94
|
onSubmitEditing: () => setIsSearchActive(false),
|
|
@@ -107,7 +107,7 @@ export function ReactQueryModalHeader({
|
|
|
107
107
|
style: styles.headerSearchClear,
|
|
108
108
|
children: /*#__PURE__*/_jsx(X, {
|
|
109
109
|
size: 14,
|
|
110
|
-
color:
|
|
110
|
+
color: night.color.textSecondary
|
|
111
111
|
})
|
|
112
112
|
}) : null]
|
|
113
113
|
}) : showWifiToggle ? /*#__PURE__*/_jsxs(View, {
|
|
@@ -134,7 +134,7 @@ export function ReactQueryModalHeader({
|
|
|
134
134
|
style: styles.headerActionButton,
|
|
135
135
|
children: /*#__PURE__*/_jsx(Search, {
|
|
136
136
|
size: 14,
|
|
137
|
-
color:
|
|
137
|
+
color: night.color.textSecondary
|
|
138
138
|
})
|
|
139
139
|
}), onFilterPress && /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
140
140
|
"sentry-label": "ignore open filter",
|
|
@@ -142,7 +142,7 @@ export function ReactQueryModalHeader({
|
|
|
142
142
|
style: [styles.headerActionButton, hasActiveFilters && styles.activeFilterButton],
|
|
143
143
|
children: /*#__PURE__*/_jsx(Filter, {
|
|
144
144
|
size: 14,
|
|
145
|
-
color: hasActiveFilters ?
|
|
145
|
+
color: hasActiveFilters ? night.color.accent : night.color.textSecondary
|
|
146
146
|
})
|
|
147
147
|
}), onClearCache && /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
148
148
|
"sentry-label": "ignore clear cache",
|
|
@@ -151,7 +151,7 @@ export function ReactQueryModalHeader({
|
|
|
151
151
|
accessibilityLabel: `Clear ${activeTab} cache`,
|
|
152
152
|
children: /*#__PURE__*/_jsx(Trash, {
|
|
153
153
|
size: 14,
|
|
154
|
-
color:
|
|
154
|
+
color: night.color.warning
|
|
155
155
|
})
|
|
156
156
|
})]
|
|
157
157
|
})]
|
|
@@ -170,7 +170,7 @@ const styles = StyleSheet.create({
|
|
|
170
170
|
headerSearchContainer: {
|
|
171
171
|
flexDirection: "row",
|
|
172
172
|
alignItems: "center",
|
|
173
|
-
backgroundColor:
|
|
173
|
+
backgroundColor: night.color.surfaceElevated,
|
|
174
174
|
borderRadius: 6,
|
|
175
175
|
paddingHorizontal: 8,
|
|
176
176
|
paddingVertical: 4,
|
|
@@ -180,7 +180,7 @@ const styles = StyleSheet.create({
|
|
|
180
180
|
},
|
|
181
181
|
headerSearchInput: {
|
|
182
182
|
flex: 1,
|
|
183
|
-
color:
|
|
183
|
+
color: night.color.text,
|
|
184
184
|
fontSize: 13,
|
|
185
185
|
fontFamily: "monospace",
|
|
186
186
|
padding: 0,
|
|
@@ -195,9 +195,9 @@ const styles = StyleSheet.create({
|
|
|
195
195
|
borderRadius: 4
|
|
196
196
|
},
|
|
197
197
|
activeFilterButton: {
|
|
198
|
-
backgroundColor:
|
|
198
|
+
backgroundColor: night.color.accentSoft
|
|
199
199
|
},
|
|
200
200
|
clearCacheButton: {
|
|
201
|
-
backgroundColor:
|
|
201
|
+
backgroundColor: night.color.warningSoft
|
|
202
202
|
}
|
|
203
203
|
});
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { View, StyleSheet, Animated } from "react-native";
|
|
4
4
|
import { absoluteFill } from "@buoy-gg/shared-ui";
|
|
5
5
|
import { useMemo } from "react";
|
|
6
|
-
import { ChevronLeft, ChevronRight,
|
|
6
|
+
import { ChevronLeft, ChevronRight, night } from "@buoy-gg/shared-ui";
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* Morphing swipe indicator – thin line ➜ pill ➜ circle with a pop-out cue at
|
|
@@ -129,7 +129,7 @@ export function SwipeIndicator({
|
|
|
129
129
|
width: leftIndicatorWidth,
|
|
130
130
|
height: INDICATOR_HEIGHT,
|
|
131
131
|
borderRadius: INDICATOR_HEIGHT / 2,
|
|
132
|
-
backgroundColor:
|
|
132
|
+
backgroundColor: night.color.text + "E6",
|
|
133
133
|
justifyContent: "center",
|
|
134
134
|
alignItems: "center",
|
|
135
135
|
opacity: leftIndicatorOpacity,
|
|
@@ -148,7 +148,7 @@ export function SwipeIndicator({
|
|
|
148
148
|
},
|
|
149
149
|
children: /*#__PURE__*/_jsx(ChevronLeft, {
|
|
150
150
|
size: INDICATOR_HEIGHT * 0.6,
|
|
151
|
-
color:
|
|
151
|
+
color: night.color.accent,
|
|
152
152
|
strokeWidth: 3
|
|
153
153
|
})
|
|
154
154
|
})
|
|
@@ -157,7 +157,7 @@ export function SwipeIndicator({
|
|
|
157
157
|
width: rightIndicatorWidth,
|
|
158
158
|
height: INDICATOR_HEIGHT,
|
|
159
159
|
borderRadius: INDICATOR_HEIGHT / 2,
|
|
160
|
-
backgroundColor:
|
|
160
|
+
backgroundColor: night.color.text + "E6",
|
|
161
161
|
justifyContent: "center",
|
|
162
162
|
alignItems: "center",
|
|
163
163
|
opacity: rightIndicatorOpacity,
|
|
@@ -176,7 +176,7 @@ export function SwipeIndicator({
|
|
|
176
176
|
},
|
|
177
177
|
children: /*#__PURE__*/_jsx(ChevronRight, {
|
|
178
178
|
size: INDICATOR_HEIGHT * 0.6,
|
|
179
|
-
color:
|
|
179
|
+
color: night.color.accent,
|
|
180
180
|
strokeWidth: 3
|
|
181
181
|
})
|
|
182
182
|
})
|
|
@@ -1,39 +1,39 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { TouchableOpacity, Text, View, StyleSheet } from "react-native";
|
|
4
|
-
import {
|
|
4
|
+
import { night } from "@buoy-gg/shared-ui";
|
|
5
5
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
6
6
|
// Clean, minimal color config matching React Query DevTools style
|
|
7
7
|
const buttonConfigs = {
|
|
8
8
|
refetch: {
|
|
9
|
-
dotColor:
|
|
10
|
-
textColor:
|
|
11
|
-
borderColor:
|
|
9
|
+
dotColor: night.color.accent,
|
|
10
|
+
textColor: night.color.text,
|
|
11
|
+
borderColor: night.color.border
|
|
12
12
|
},
|
|
13
13
|
invalidate: {
|
|
14
|
-
dotColor:
|
|
15
|
-
textColor:
|
|
16
|
-
borderColor:
|
|
14
|
+
dotColor: night.color.warning,
|
|
15
|
+
textColor: night.color.text,
|
|
16
|
+
borderColor: night.color.border
|
|
17
17
|
},
|
|
18
18
|
reset: {
|
|
19
|
-
dotColor:
|
|
20
|
-
textColor:
|
|
21
|
-
borderColor:
|
|
19
|
+
dotColor: night.color.textSecondary,
|
|
20
|
+
textColor: night.color.text,
|
|
21
|
+
borderColor: night.color.border
|
|
22
22
|
},
|
|
23
23
|
remove: {
|
|
24
|
-
dotColor:
|
|
25
|
-
textColor:
|
|
26
|
-
borderColor:
|
|
24
|
+
dotColor: night.color.danger,
|
|
25
|
+
textColor: night.color.danger,
|
|
26
|
+
borderColor: night.color.danger + "40"
|
|
27
27
|
},
|
|
28
28
|
triggerLoading: {
|
|
29
|
-
dotColor:
|
|
30
|
-
textColor:
|
|
31
|
-
borderColor:
|
|
29
|
+
dotColor: night.color.info,
|
|
30
|
+
textColor: night.color.info,
|
|
31
|
+
borderColor: night.color.info + "40"
|
|
32
32
|
},
|
|
33
33
|
triggerError: {
|
|
34
|
-
dotColor:
|
|
35
|
-
textColor:
|
|
36
|
-
borderColor:
|
|
34
|
+
dotColor: night.color.danger,
|
|
35
|
+
textColor: night.color.danger,
|
|
36
|
+
borderColor: night.color.danger + "40"
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
39
|
/** Clean, minimal action button matching React Query DevTools style. */
|
|
@@ -49,7 +49,7 @@ export default function ActionButton({
|
|
|
49
49
|
disabled: disabled,
|
|
50
50
|
onPress: onClick,
|
|
51
51
|
style: [styles.button, {
|
|
52
|
-
borderColor: disabled ?
|
|
52
|
+
borderColor: disabled ? night.color.border : config.borderColor,
|
|
53
53
|
opacity: disabled ? 0.4 : 1
|
|
54
54
|
}],
|
|
55
55
|
activeOpacity: 0.7,
|
|
@@ -60,11 +60,11 @@ export default function ActionButton({
|
|
|
60
60
|
},
|
|
61
61
|
children: [/*#__PURE__*/_jsx(View, {
|
|
62
62
|
style: [styles.dot, {
|
|
63
|
-
backgroundColor: disabled ?
|
|
63
|
+
backgroundColor: disabled ? night.color.textTertiary : config.dotColor
|
|
64
64
|
}]
|
|
65
65
|
}), /*#__PURE__*/_jsx(Text, {
|
|
66
66
|
style: [styles.text, {
|
|
67
|
-
color: disabled ?
|
|
67
|
+
color: disabled ? night.color.textTertiary : config.textColor
|
|
68
68
|
}],
|
|
69
69
|
children: text
|
|
70
70
|
})]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { TouchableOpacity, StyleSheet } from "react-native";
|
|
4
|
-
import { Trash,
|
|
4
|
+
import { Trash, night } from "@buoy-gg/shared-ui";
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
6
|
/**
|
|
7
7
|
* Icon-only button for clearing either the query or mutation cache from the dev tools UI.
|
|
@@ -25,7 +25,7 @@ const ClearCacheButton = ({
|
|
|
25
25
|
children: /*#__PURE__*/_jsx(Trash, {
|
|
26
26
|
size: 16,
|
|
27
27
|
strokeWidth: 2,
|
|
28
|
-
color: disabled ?
|
|
28
|
+
color: disabled ? night.color.textTertiary : night.color.warning
|
|
29
29
|
})
|
|
30
30
|
});
|
|
31
31
|
};
|
|
@@ -34,16 +34,16 @@ const styles = StyleSheet.create({
|
|
|
34
34
|
width: 32,
|
|
35
35
|
height: 32,
|
|
36
36
|
borderRadius: 6,
|
|
37
|
-
backgroundColor:
|
|
37
|
+
backgroundColor: night.color.warningSoft,
|
|
38
38
|
justifyContent: "center",
|
|
39
39
|
alignItems: "center",
|
|
40
40
|
borderWidth: 1,
|
|
41
|
-
borderColor:
|
|
41
|
+
borderColor: night.color.warning + "33"
|
|
42
42
|
},
|
|
43
43
|
disabledButton: {
|
|
44
44
|
opacity: 0.5,
|
|
45
|
-
backgroundColor:
|
|
46
|
-
borderColor:
|
|
45
|
+
backgroundColor: night.color.fill,
|
|
46
|
+
borderColor: night.color.border
|
|
47
47
|
}
|
|
48
48
|
});
|
|
49
49
|
export default ClearCacheButton;
|