@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
|
@@ -213,14 +213,14 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
213
213
|
padding: 32
|
|
214
214
|
},
|
|
215
215
|
emptyTitle: {
|
|
216
|
-
color: _sharedUi.
|
|
216
|
+
color: _sharedUi.night.color.text,
|
|
217
217
|
fontSize: 18,
|
|
218
218
|
fontWeight: "600",
|
|
219
219
|
marginBottom: 8,
|
|
220
220
|
textAlign: "center"
|
|
221
221
|
},
|
|
222
222
|
emptyDescription: {
|
|
223
|
-
color: _sharedUi.
|
|
223
|
+
color: _sharedUi.night.color.textSecondary,
|
|
224
224
|
fontSize: 14,
|
|
225
225
|
textAlign: "center",
|
|
226
226
|
lineHeight: 20,
|
|
@@ -229,10 +229,11 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
229
229
|
// Action footer - compact single row layout
|
|
230
230
|
actionFooter: {
|
|
231
231
|
borderTopWidth: 1,
|
|
232
|
-
borderTopColor: _sharedUi.
|
|
232
|
+
borderTopColor: _sharedUi.night.color.border,
|
|
233
233
|
paddingTop: 8,
|
|
234
234
|
paddingHorizontal: 12,
|
|
235
|
-
|
|
235
|
+
// Transparent so the night sheet's star field shows through.
|
|
236
|
+
backgroundColor: "transparent",
|
|
236
237
|
borderBottomLeftRadius: 14,
|
|
237
238
|
borderBottomRightRadius: 14
|
|
238
239
|
},
|
|
@@ -244,12 +245,12 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
244
245
|
// Query Explorer styled container matching QueryDetails
|
|
245
246
|
queryExplorerContainer: {
|
|
246
247
|
minWidth: 200,
|
|
247
|
-
backgroundColor: _sharedUi.
|
|
248
|
+
backgroundColor: _sharedUi.night.color.surface,
|
|
248
249
|
borderRadius: 6,
|
|
249
250
|
borderWidth: 1,
|
|
250
|
-
borderColor: _sharedUi.
|
|
251
|
+
borderColor: _sharedUi.night.color.accent + "4D",
|
|
251
252
|
overflow: "hidden",
|
|
252
|
-
shadowColor: _sharedUi.
|
|
253
|
+
shadowColor: _sharedUi.night.color.accent,
|
|
253
254
|
shadowOffset: {
|
|
254
255
|
width: 0,
|
|
255
256
|
height: 0
|
|
@@ -258,14 +259,14 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
258
259
|
shadowRadius: 6
|
|
259
260
|
},
|
|
260
261
|
queryExplorerHeader: {
|
|
261
|
-
backgroundColor: _sharedUi.
|
|
262
|
+
backgroundColor: _sharedUi.night.color.accent + "1A",
|
|
262
263
|
paddingHorizontal: 12,
|
|
263
264
|
paddingVertical: 10,
|
|
264
265
|
fontWeight: "600",
|
|
265
266
|
fontSize: 12,
|
|
266
|
-
color: _sharedUi.
|
|
267
|
+
color: _sharedUi.night.color.accent,
|
|
267
268
|
borderBottomWidth: 1,
|
|
268
|
-
borderBottomColor: _sharedUi.
|
|
269
|
+
borderBottomColor: _sharedUi.night.color.accent + "33",
|
|
269
270
|
letterSpacing: 0.5,
|
|
270
271
|
textTransform: "uppercase",
|
|
271
272
|
fontFamily: "monospace"
|
|
@@ -276,12 +277,12 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
276
277
|
// Data section with teal accent - editable/success theme
|
|
277
278
|
dataContainer: {
|
|
278
279
|
minWidth: 200,
|
|
279
|
-
backgroundColor: _sharedUi.
|
|
280
|
+
backgroundColor: _sharedUi.night.color.surface,
|
|
280
281
|
borderRadius: 6,
|
|
281
282
|
borderWidth: 1,
|
|
282
|
-
borderColor: _sharedUi.
|
|
283
|
+
borderColor: _sharedUi.night.color.accent + "4D",
|
|
283
284
|
overflow: "hidden",
|
|
284
|
-
shadowColor: _sharedUi.
|
|
285
|
+
shadowColor: _sharedUi.night.color.accent,
|
|
285
286
|
shadowOffset: {
|
|
286
287
|
width: 0,
|
|
287
288
|
height: 0
|
|
@@ -291,14 +292,14 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
291
292
|
marginTop: 8
|
|
292
293
|
},
|
|
293
294
|
dataHeader: {
|
|
294
|
-
backgroundColor: _sharedUi.
|
|
295
|
+
backgroundColor: _sharedUi.night.color.accent + "1A",
|
|
295
296
|
paddingHorizontal: 12,
|
|
296
297
|
paddingVertical: 10,
|
|
297
298
|
fontWeight: "600",
|
|
298
299
|
fontSize: 12,
|
|
299
|
-
color: _sharedUi.
|
|
300
|
+
color: _sharedUi.night.color.accent,
|
|
300
301
|
borderBottomWidth: 1,
|
|
301
|
-
borderBottomColor: _sharedUi.
|
|
302
|
+
borderBottomColor: _sharedUi.night.color.accent + "33",
|
|
302
303
|
letterSpacing: 0.5,
|
|
303
304
|
textTransform: "uppercase",
|
|
304
305
|
fontFamily: "monospace"
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.MutationBrowserMode = MutationBrowserMode;
|
|
7
7
|
var _reactNative = require("react-native");
|
|
8
8
|
var _MutationsList = _interopRequireDefault(require("./query-browser/MutationsList"));
|
|
9
|
-
var _sharedUi = require("@buoy-gg/shared-ui");
|
|
10
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
10
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
11
|
/**
|
|
@@ -42,10 +41,12 @@ function MutationBrowserMode({
|
|
|
42
41
|
const styles = _reactNative.StyleSheet.create({
|
|
43
42
|
mutationListContainer: {
|
|
44
43
|
flex: 1,
|
|
45
|
-
|
|
44
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
45
|
+
backgroundColor: "transparent"
|
|
46
46
|
},
|
|
47
47
|
mutationListContent: {
|
|
48
48
|
padding: 8,
|
|
49
|
-
|
|
49
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
50
|
+
backgroundColor: "transparent"
|
|
50
51
|
}
|
|
51
52
|
});
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
exports.MutationEditorActionsFooter = MutationEditorActionsFooter;
|
|
6
7
|
exports.MutationEditorMode = MutationEditorMode;
|
|
7
8
|
var _reactNative = require("react-native");
|
|
8
9
|
var _sharedUi = require("@buoy-gg/shared-ui");
|
|
@@ -19,12 +20,9 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
19
20
|
*/
|
|
20
21
|
function MutationEditorMode({
|
|
21
22
|
selectedMutation,
|
|
22
|
-
isFloatingMode
|
|
23
|
+
isFloatingMode,
|
|
24
|
+
disableInternalFooter = false
|
|
23
25
|
}) {
|
|
24
|
-
const insets = (0, _sharedUi.useSafeAreaInsets)({
|
|
25
|
-
minBottom: 16
|
|
26
|
-
});
|
|
27
|
-
const actionButtons = (0, _useMutationActionButtons.useMutationActionButtons)(selectedMutation);
|
|
28
26
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
29
27
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.ScrollView, {
|
|
30
28
|
accessibilityLabel: "Mutation editor mode",
|
|
@@ -66,22 +64,40 @@ function MutationEditorMode({
|
|
|
66
64
|
})]
|
|
67
65
|
})
|
|
68
66
|
})]
|
|
69
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}],
|
|
73
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
74
|
-
style: styles.actionsGrid,
|
|
75
|
-
children: actionButtons.map((action, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_ActionButton.default, {
|
|
76
|
-
onClick: action.onPress,
|
|
77
|
-
text: action.label,
|
|
78
|
-
variant: action.variant,
|
|
79
|
-
disabled: action.disabled
|
|
80
|
-
}, index))
|
|
81
|
-
})
|
|
67
|
+
}), !disableInternalFooter && /*#__PURE__*/(0, _jsxRuntime.jsx)(MutationEditorActionsFooter, {
|
|
68
|
+
selectedMutation: selectedMutation,
|
|
69
|
+
isFloatingMode: isFloatingMode
|
|
82
70
|
})]
|
|
83
71
|
});
|
|
84
72
|
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Standalone action footer for the mutation editor, so modal wrappers can pin it through
|
|
76
|
+
* JsModal's footer prop (mirrors DataEditorActionsFooter).
|
|
77
|
+
*/
|
|
78
|
+
function MutationEditorActionsFooter({
|
|
79
|
+
selectedMutation,
|
|
80
|
+
isFloatingMode
|
|
81
|
+
}) {
|
|
82
|
+
const insets = (0, _sharedUi.useSafeAreaInsets)({
|
|
83
|
+
minBottom: 16
|
|
84
|
+
});
|
|
85
|
+
const actionButtons = (0, _useMutationActionButtons.useMutationActionButtons)(selectedMutation);
|
|
86
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
87
|
+
style: [styles.actionFooter, {
|
|
88
|
+
paddingBottom: isFloatingMode ? 0 : insets.bottom + 8
|
|
89
|
+
}],
|
|
90
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
91
|
+
style: styles.actionsGrid,
|
|
92
|
+
children: actionButtons.map((action, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_ActionButton.default, {
|
|
93
|
+
onClick: action.onPress,
|
|
94
|
+
text: action.label,
|
|
95
|
+
variant: action.variant,
|
|
96
|
+
disabled: action.disabled
|
|
97
|
+
}, index))
|
|
98
|
+
})
|
|
99
|
+
});
|
|
100
|
+
}
|
|
85
101
|
function DataExplorer({
|
|
86
102
|
visible,
|
|
87
103
|
selectedMutation
|
|
@@ -160,14 +176,14 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
160
176
|
padding: 32
|
|
161
177
|
},
|
|
162
178
|
emptyTitle: {
|
|
163
|
-
color: _sharedUi.
|
|
179
|
+
color: _sharedUi.night.color.text,
|
|
164
180
|
fontSize: 18,
|
|
165
181
|
fontWeight: "600",
|
|
166
182
|
marginBottom: 8,
|
|
167
183
|
textAlign: "center"
|
|
168
184
|
},
|
|
169
185
|
emptyDescription: {
|
|
170
|
-
color: _sharedUi.
|
|
186
|
+
color: _sharedUi.night.color.textSecondary,
|
|
171
187
|
fontSize: 14,
|
|
172
188
|
textAlign: "center",
|
|
173
189
|
lineHeight: 20,
|
|
@@ -175,10 +191,11 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
175
191
|
},
|
|
176
192
|
actionFooter: {
|
|
177
193
|
borderTopWidth: 1,
|
|
178
|
-
borderTopColor: _sharedUi.
|
|
194
|
+
borderTopColor: _sharedUi.night.color.border,
|
|
179
195
|
paddingVertical: 8,
|
|
180
196
|
paddingHorizontal: 12,
|
|
181
|
-
|
|
197
|
+
// Transparent so the night sheet's star field shows through.
|
|
198
|
+
backgroundColor: "transparent",
|
|
182
199
|
borderBottomLeftRadius: 14,
|
|
183
200
|
borderBottomRightRadius: 14
|
|
184
201
|
},
|
|
@@ -191,12 +208,12 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
191
208
|
// Mutation Explorer styled container matching QueryDetails
|
|
192
209
|
mutationExplorerContainer: {
|
|
193
210
|
minWidth: 200,
|
|
194
|
-
backgroundColor: _sharedUi.
|
|
211
|
+
backgroundColor: _sharedUi.night.color.surface,
|
|
195
212
|
borderRadius: 6,
|
|
196
213
|
borderWidth: 1,
|
|
197
|
-
borderColor: _sharedUi.
|
|
214
|
+
borderColor: _sharedUi.night.color.accent + "4D",
|
|
198
215
|
overflow: "hidden",
|
|
199
|
-
shadowColor: _sharedUi.
|
|
216
|
+
shadowColor: _sharedUi.night.color.accent,
|
|
200
217
|
shadowOffset: {
|
|
201
218
|
width: 0,
|
|
202
219
|
height: 0
|
|
@@ -205,14 +222,14 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
205
222
|
shadowRadius: 6
|
|
206
223
|
},
|
|
207
224
|
mutationExplorerHeader: {
|
|
208
|
-
backgroundColor: _sharedUi.
|
|
225
|
+
backgroundColor: _sharedUi.night.color.accent + "1A",
|
|
209
226
|
paddingHorizontal: 12,
|
|
210
227
|
paddingVertical: 10,
|
|
211
228
|
fontWeight: "600",
|
|
212
229
|
fontSize: 12,
|
|
213
|
-
color: _sharedUi.
|
|
230
|
+
color: _sharedUi.night.color.accent,
|
|
214
231
|
borderBottomWidth: 1,
|
|
215
|
-
borderBottomColor: _sharedUi.
|
|
232
|
+
borderBottomColor: _sharedUi.night.color.accent + "33",
|
|
216
233
|
letterSpacing: 0.5,
|
|
217
234
|
textTransform: "uppercase",
|
|
218
235
|
fontFamily: "monospace"
|
|
@@ -223,12 +240,12 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
223
240
|
// Data section matching query editor theme for consistency
|
|
224
241
|
dataContainer: {
|
|
225
242
|
minWidth: 200,
|
|
226
|
-
backgroundColor: _sharedUi.
|
|
243
|
+
backgroundColor: _sharedUi.night.color.surface,
|
|
227
244
|
borderRadius: 6,
|
|
228
245
|
borderWidth: 1,
|
|
229
|
-
borderColor: _sharedUi.
|
|
246
|
+
borderColor: _sharedUi.night.color.accent + "4D",
|
|
230
247
|
overflow: "hidden",
|
|
231
|
-
shadowColor: _sharedUi.
|
|
248
|
+
shadowColor: _sharedUi.night.color.accent,
|
|
232
249
|
shadowOffset: {
|
|
233
250
|
width: 0,
|
|
234
251
|
height: 0
|
|
@@ -237,14 +254,14 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
237
254
|
shadowRadius: 6
|
|
238
255
|
},
|
|
239
256
|
dataHeader: {
|
|
240
|
-
backgroundColor: _sharedUi.
|
|
257
|
+
backgroundColor: _sharedUi.night.color.accent + "1A",
|
|
241
258
|
paddingHorizontal: 12,
|
|
242
259
|
paddingVertical: 10,
|
|
243
260
|
fontWeight: "600",
|
|
244
261
|
fontSize: 12,
|
|
245
|
-
color: _sharedUi.
|
|
262
|
+
color: _sharedUi.night.color.accent,
|
|
246
263
|
borderBottomWidth: 1,
|
|
247
|
-
borderBottomColor: _sharedUi.
|
|
264
|
+
borderBottomColor: _sharedUi.night.color.accent + "33",
|
|
248
265
|
letterSpacing: 0.5,
|
|
249
266
|
textTransform: "uppercase",
|
|
250
267
|
fontFamily: "monospace"
|
|
@@ -9,7 +9,6 @@ var _react = require("react");
|
|
|
9
9
|
var _index = require("./query-browser/index");
|
|
10
10
|
var _FilterStatusBadge = require("./FilterStatusBadge");
|
|
11
11
|
var _useAllQueries = _interopRequireDefault(require("../hooks/useAllQueries"));
|
|
12
|
-
var _sharedUi = require("@buoy-gg/shared-ui");
|
|
13
12
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
13
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
14
|
/** Wrapper around the query list experience used inside the modal view. */
|
|
@@ -72,11 +71,13 @@ function QueryBrowserMode({
|
|
|
72
71
|
const styles = _reactNative.StyleSheet.create({
|
|
73
72
|
queryListContainer: {
|
|
74
73
|
flex: 1,
|
|
75
|
-
|
|
74
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
75
|
+
backgroundColor: "transparent"
|
|
76
76
|
},
|
|
77
77
|
queryListContent: {
|
|
78
78
|
padding: 8,
|
|
79
|
-
|
|
79
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
80
|
+
backgroundColor: "transparent",
|
|
80
81
|
flexGrow: 1
|
|
81
82
|
}
|
|
82
83
|
});
|
|
@@ -31,6 +31,15 @@ function DataEditorModal({
|
|
|
31
31
|
const handleModeChange = (0, _react.useCallback)(mode => {
|
|
32
32
|
setModalMode(mode);
|
|
33
33
|
}, []);
|
|
34
|
+
|
|
35
|
+
// JsModal overlays the footer on the content and only reserves `footerHeight`
|
|
36
|
+
// of padding beneath it. DataEditorActionsFooter pads its bottom with
|
|
37
|
+
// `insets.bottom + 8` when docked, so the reserve must grow by the same
|
|
38
|
+
// amount or the editor bottom hides behind the footer.
|
|
39
|
+
const insets = (0, _sharedUi.useSafeAreaInsets)({
|
|
40
|
+
minBottom: 16
|
|
41
|
+
});
|
|
42
|
+
const footerHeight = modalMode === "floating" ? 72 : 80 + insets.bottom;
|
|
34
43
|
const renderHeaderContent = () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_ReactQueryModalHeader.ReactQueryModalHeader, {
|
|
35
44
|
selectedQuery: selectedQuery,
|
|
36
45
|
activeTab: "queries",
|
|
@@ -59,7 +68,7 @@ function DataEditorModal({
|
|
|
59
68
|
enableGlitchEffects: true,
|
|
60
69
|
styles: {},
|
|
61
70
|
footer: footerNode,
|
|
62
|
-
footerHeight:
|
|
71
|
+
footerHeight: footerHeight,
|
|
63
72
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_DataEditorMode.DataEditorMode, {
|
|
64
73
|
selectedQuery: selectedQuery,
|
|
65
74
|
isFloatingMode: modalMode === "floating",
|
|
@@ -53,10 +53,12 @@ function MutationBrowserFooter({
|
|
|
53
53
|
const styles = _reactNative.StyleSheet.create({
|
|
54
54
|
filterFooter: {
|
|
55
55
|
borderTopWidth: 1,
|
|
56
|
-
borderTopColor: _sharedUi.
|
|
56
|
+
borderTopColor: _sharedUi.night.color.border,
|
|
57
57
|
paddingVertical: 8,
|
|
58
58
|
paddingHorizontal: 0,
|
|
59
|
-
|
|
59
|
+
// Transparent so the night sheet's star field shows through.
|
|
60
|
+
// Night glass bar — matches the shared EventStepperFooter backing.
|
|
61
|
+
backgroundColor: "rgba(5, 5, 5, 0.92)",
|
|
60
62
|
borderBottomLeftRadius: 14,
|
|
61
63
|
borderBottomRightRadius: 14
|
|
62
64
|
},
|
|
@@ -59,6 +59,15 @@ function MutationBrowserModal({
|
|
|
59
59
|
setModalMode(mode);
|
|
60
60
|
}, []);
|
|
61
61
|
|
|
62
|
+
// JsModal overlays the footer on the content and only reserves `footerHeight`
|
|
63
|
+
// of padding beneath it. MutationBrowserFooter grows by the safe-area inset
|
|
64
|
+
// when docked, so the reserve must track that or the list bottom hides
|
|
65
|
+
// behind the footer.
|
|
66
|
+
const insets = (0, _sharedUi.useSafeAreaInsets)({
|
|
67
|
+
minBottom: 16
|
|
68
|
+
});
|
|
69
|
+
const footerHeight = modalMode === "floating" ? 56 : 48 + insets.bottom;
|
|
70
|
+
|
|
62
71
|
// Create PanResponder for swipe navigation
|
|
63
72
|
const panResponder = (0, _react.useRef)(_reactNative.PanResponder.create({
|
|
64
73
|
onStartShouldSetPanResponder: () => false,
|
|
@@ -129,7 +138,7 @@ function MutationBrowserModal({
|
|
|
129
138
|
enableGlitchEffects: true,
|
|
130
139
|
styles: {},
|
|
131
140
|
footer: footerNode,
|
|
132
|
-
footerHeight:
|
|
141
|
+
footerHeight: footerHeight,
|
|
133
142
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
134
143
|
style: {
|
|
135
144
|
flex: 1
|
|
@@ -28,6 +28,15 @@ function MutationEditorModal({
|
|
|
28
28
|
const handleModeChange = (0, _react.useCallback)(mode => {
|
|
29
29
|
setModalMode(mode);
|
|
30
30
|
}, []);
|
|
31
|
+
|
|
32
|
+
// JsModal overlays the footer on the content and only reserves `footerHeight`
|
|
33
|
+
// of padding beneath it. MutationEditorActionsFooter pads its bottom with
|
|
34
|
+
// `insets.bottom + 8` when docked, so the reserve must grow by the same
|
|
35
|
+
// amount or the editor bottom hides behind the action bar.
|
|
36
|
+
const insets = (0, _sharedUi.useSafeAreaInsets)({
|
|
37
|
+
minBottom: 16
|
|
38
|
+
});
|
|
39
|
+
const footerHeight = modalMode === "floating" ? 72 : 80 + insets.bottom;
|
|
31
40
|
const renderHeaderContent = () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_ReactQueryModalHeader.ReactQueryModalHeader, {
|
|
32
41
|
selectedMutation: selectedMutation,
|
|
33
42
|
activeTab: "mutations",
|
|
@@ -36,6 +45,10 @@ function MutationEditorModal({
|
|
|
36
45
|
});
|
|
37
46
|
const storagePrefix = enableSharedModalDimensions ? _sharedUi.devToolsStorageKeys.reactQuery.modal() : _sharedUi.devToolsStorageKeys.reactQuery.mutationModal();
|
|
38
47
|
if (!visible || !selectedMutation) return null;
|
|
48
|
+
const footerNode = /*#__PURE__*/(0, _jsxRuntime.jsx)(_MutationEditorMode.MutationEditorActionsFooter, {
|
|
49
|
+
selectedMutation: selectedMutation,
|
|
50
|
+
isFloatingMode: modalMode === "floating"
|
|
51
|
+
});
|
|
39
52
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.JsModal, {
|
|
40
53
|
visible: visible,
|
|
41
54
|
onClose: onClose,
|
|
@@ -50,9 +63,12 @@ function MutationEditorModal({
|
|
|
50
63
|
initialMode: "bottomSheet",
|
|
51
64
|
enableGlitchEffects: true,
|
|
52
65
|
styles: {},
|
|
66
|
+
footer: footerNode,
|
|
67
|
+
footerHeight: footerHeight,
|
|
53
68
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_MutationEditorMode.MutationEditorMode, {
|
|
54
69
|
selectedMutation: selectedMutation,
|
|
55
|
-
isFloatingMode: modalMode === "floating"
|
|
70
|
+
isFloatingMode: modalMode === "floating",
|
|
71
|
+
disableInternalFooter: true
|
|
56
72
|
})
|
|
57
73
|
});
|
|
58
74
|
}
|
|
@@ -48,10 +48,12 @@ function QueryBrowserFooter({
|
|
|
48
48
|
const styles = _reactNative.StyleSheet.create({
|
|
49
49
|
filterFooter: {
|
|
50
50
|
borderTopWidth: 1,
|
|
51
|
-
borderTopColor: _sharedUi.
|
|
51
|
+
borderTopColor: _sharedUi.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
|
},
|
|
@@ -146,6 +146,15 @@ function QueryBrowserModal({
|
|
|
146
146
|
const handleModeChange = (0, _react.useCallback)(mode => {
|
|
147
147
|
setModalMode(mode);
|
|
148
148
|
}, []);
|
|
149
|
+
|
|
150
|
+
// JsModal overlays the footer on the content and only reserves `footerHeight`
|
|
151
|
+
// of padding beneath it. QueryBrowserFooter grows by the safe-area inset when
|
|
152
|
+
// docked, so the reserve must track that or the list bottom hides behind the
|
|
153
|
+
// footer.
|
|
154
|
+
const insets = (0, _sharedUi.useSafeAreaInsets)({
|
|
155
|
+
minBottom: 16
|
|
156
|
+
});
|
|
157
|
+
const footerHeight = modalMode === "floating" ? 56 : 48 + insets.bottom;
|
|
149
158
|
if (!visible) return null;
|
|
150
159
|
const renderHeaderContent = () => {
|
|
151
160
|
// Filter view header with back button
|
|
@@ -206,7 +215,7 @@ function QueryBrowserModal({
|
|
|
206
215
|
disableScrollWrapper: !showFilterView,
|
|
207
216
|
styles: {},
|
|
208
217
|
footer: !showFilterView ? footerNode : undefined,
|
|
209
|
-
footerHeight: !showFilterView ?
|
|
218
|
+
footerHeight: !showFilterView ? footerHeight : undefined,
|
|
210
219
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
211
220
|
style: styles.container,
|
|
212
221
|
children: showFilterView ?
|
|
@@ -238,6 +247,7 @@ function QueryBrowserModal({
|
|
|
238
247
|
const styles = _reactNative.StyleSheet.create({
|
|
239
248
|
container: {
|
|
240
249
|
flex: 1,
|
|
241
|
-
|
|
250
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
251
|
+
backgroundColor: "transparent"
|
|
242
252
|
}
|
|
243
253
|
});
|
|
@@ -87,12 +87,12 @@ function ReactQueryModalHeader({
|
|
|
87
87
|
style: styles.headerSearchContainer,
|
|
88
88
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Search, {
|
|
89
89
|
size: 14,
|
|
90
|
-
color: _sharedUi.
|
|
90
|
+
color: _sharedUi.night.color.textSecondary
|
|
91
91
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
|
|
92
92
|
ref: searchInputRef,
|
|
93
93
|
style: styles.headerSearchInput,
|
|
94
94
|
placeholder: "Search query keys...",
|
|
95
|
-
placeholderTextColor: _sharedUi.
|
|
95
|
+
placeholderTextColor: _sharedUi.night.color.textTertiary,
|
|
96
96
|
value: searchText,
|
|
97
97
|
onChangeText: handleSearch,
|
|
98
98
|
onSubmitEditing: () => setIsSearchActive(false),
|
|
@@ -111,7 +111,7 @@ function ReactQueryModalHeader({
|
|
|
111
111
|
style: styles.headerSearchClear,
|
|
112
112
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.X, {
|
|
113
113
|
size: 14,
|
|
114
|
-
color: _sharedUi.
|
|
114
|
+
color: _sharedUi.night.color.textSecondary
|
|
115
115
|
})
|
|
116
116
|
}) : null]
|
|
117
117
|
}) : showWifiToggle ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
@@ -138,7 +138,7 @@ function ReactQueryModalHeader({
|
|
|
138
138
|
style: styles.headerActionButton,
|
|
139
139
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Search, {
|
|
140
140
|
size: 14,
|
|
141
|
-
color: _sharedUi.
|
|
141
|
+
color: _sharedUi.night.color.textSecondary
|
|
142
142
|
})
|
|
143
143
|
}), onFilterPress && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
144
144
|
"sentry-label": "ignore open filter",
|
|
@@ -146,7 +146,7 @@ function ReactQueryModalHeader({
|
|
|
146
146
|
style: [styles.headerActionButton, hasActiveFilters && styles.activeFilterButton],
|
|
147
147
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Filter, {
|
|
148
148
|
size: 14,
|
|
149
|
-
color: hasActiveFilters ? _sharedUi.
|
|
149
|
+
color: hasActiveFilters ? _sharedUi.night.color.accent : _sharedUi.night.color.textSecondary
|
|
150
150
|
})
|
|
151
151
|
}), onClearCache && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
152
152
|
"sentry-label": "ignore clear cache",
|
|
@@ -155,7 +155,7 @@ function ReactQueryModalHeader({
|
|
|
155
155
|
accessibilityLabel: `Clear ${activeTab} cache`,
|
|
156
156
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Trash, {
|
|
157
157
|
size: 14,
|
|
158
|
-
color: _sharedUi.
|
|
158
|
+
color: _sharedUi.night.color.warning
|
|
159
159
|
})
|
|
160
160
|
})]
|
|
161
161
|
})]
|
|
@@ -174,7 +174,7 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
174
174
|
headerSearchContainer: {
|
|
175
175
|
flexDirection: "row",
|
|
176
176
|
alignItems: "center",
|
|
177
|
-
backgroundColor: _sharedUi.
|
|
177
|
+
backgroundColor: _sharedUi.night.color.surfaceElevated,
|
|
178
178
|
borderRadius: 6,
|
|
179
179
|
paddingHorizontal: 8,
|
|
180
180
|
paddingVertical: 4,
|
|
@@ -184,7 +184,7 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
184
184
|
},
|
|
185
185
|
headerSearchInput: {
|
|
186
186
|
flex: 1,
|
|
187
|
-
color: _sharedUi.
|
|
187
|
+
color: _sharedUi.night.color.text,
|
|
188
188
|
fontSize: 13,
|
|
189
189
|
fontFamily: "monospace",
|
|
190
190
|
padding: 0,
|
|
@@ -199,9 +199,9 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
199
199
|
borderRadius: 4
|
|
200
200
|
},
|
|
201
201
|
activeFilterButton: {
|
|
202
|
-
backgroundColor: _sharedUi.
|
|
202
|
+
backgroundColor: _sharedUi.night.color.accentSoft
|
|
203
203
|
},
|
|
204
204
|
clearCacheButton: {
|
|
205
|
-
backgroundColor: _sharedUi.
|
|
205
|
+
backgroundColor: _sharedUi.night.color.warningSoft
|
|
206
206
|
}
|
|
207
207
|
});
|
|
@@ -132,7 +132,7 @@ function SwipeIndicator({
|
|
|
132
132
|
width: leftIndicatorWidth,
|
|
133
133
|
height: INDICATOR_HEIGHT,
|
|
134
134
|
borderRadius: INDICATOR_HEIGHT / 2,
|
|
135
|
-
backgroundColor: _sharedUi.
|
|
135
|
+
backgroundColor: _sharedUi.night.color.text + "E6",
|
|
136
136
|
justifyContent: "center",
|
|
137
137
|
alignItems: "center",
|
|
138
138
|
opacity: leftIndicatorOpacity,
|
|
@@ -151,7 +151,7 @@ function SwipeIndicator({
|
|
|
151
151
|
},
|
|
152
152
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.ChevronLeft, {
|
|
153
153
|
size: INDICATOR_HEIGHT * 0.6,
|
|
154
|
-
color: _sharedUi.
|
|
154
|
+
color: _sharedUi.night.color.accent,
|
|
155
155
|
strokeWidth: 3
|
|
156
156
|
})
|
|
157
157
|
})
|
|
@@ -160,7 +160,7 @@ function SwipeIndicator({
|
|
|
160
160
|
width: rightIndicatorWidth,
|
|
161
161
|
height: INDICATOR_HEIGHT,
|
|
162
162
|
borderRadius: INDICATOR_HEIGHT / 2,
|
|
163
|
-
backgroundColor: _sharedUi.
|
|
163
|
+
backgroundColor: _sharedUi.night.color.text + "E6",
|
|
164
164
|
justifyContent: "center",
|
|
165
165
|
alignItems: "center",
|
|
166
166
|
opacity: rightIndicatorOpacity,
|
|
@@ -179,7 +179,7 @@ function SwipeIndicator({
|
|
|
179
179
|
},
|
|
180
180
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.ChevronRight, {
|
|
181
181
|
size: INDICATOR_HEIGHT * 0.6,
|
|
182
|
-
color: _sharedUi.
|
|
182
|
+
color: _sharedUi.night.color.accent,
|
|
183
183
|
strokeWidth: 3
|
|
184
184
|
})
|
|
185
185
|
})
|