@buoy-gg/jotai 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/jotai/components/JotaiAtomBrowser.js +10 -9
- package/lib/commonjs/jotai/components/JotaiAtomChangeItem.js +1 -1
- package/lib/commonjs/jotai/components/JotaiAtomDetailContent.js +44 -41
- package/lib/commonjs/jotai/components/JotaiEventFilterView.js +24 -23
- package/lib/commonjs/jotai/components/JotaiModal.js +32 -27
- package/lib/module/jotai/components/JotaiAtomBrowser.js +11 -10
- package/lib/module/jotai/components/JotaiAtomChangeItem.js +2 -2
- package/lib/module/jotai/components/JotaiAtomDetailContent.js +45 -42
- package/lib/module/jotai/components/JotaiEventFilterView.js +25 -24
- package/lib/module/jotai/components/JotaiModal.js +33 -28
- package/lib/typescript/jotai/components/JotaiEventFilterView.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -30,7 +30,7 @@ function EventsEmptyState({
|
|
|
30
30
|
style: styles.emptyState,
|
|
31
31
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Box, {
|
|
32
32
|
size: 32,
|
|
33
|
-
color: _sharedUi.
|
|
33
|
+
color: _sharedUi.night.color.textTertiary
|
|
34
34
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
35
35
|
style: styles.emptyTitle,
|
|
36
36
|
children: "No atom changes"
|
|
@@ -277,12 +277,12 @@ function JotaiModal({
|
|
|
277
277
|
style: styles.headerSearchContainer,
|
|
278
278
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Search, {
|
|
279
279
|
size: 14,
|
|
280
|
-
color: _sharedUi.
|
|
280
|
+
color: _sharedUi.night.color.textSecondary
|
|
281
281
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
|
|
282
282
|
ref: searchInputRef,
|
|
283
283
|
style: styles.headerSearchInput,
|
|
284
284
|
placeholder: activeTab === "atoms" ? "Search atoms..." : "Search events...",
|
|
285
|
-
placeholderTextColor: _sharedUi.
|
|
285
|
+
placeholderTextColor: _sharedUi.night.color.placeholder,
|
|
286
286
|
value: searchText,
|
|
287
287
|
onChangeText: handleSearch,
|
|
288
288
|
onSubmitEditing: () => setIsSearchActive(false),
|
|
@@ -298,7 +298,7 @@ function JotaiModal({
|
|
|
298
298
|
style: styles.headerSearchClear,
|
|
299
299
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.X, {
|
|
300
300
|
size: 14,
|
|
301
|
-
color: _sharedUi.
|
|
301
|
+
color: _sharedUi.night.color.textSecondary
|
|
302
302
|
})
|
|
303
303
|
})]
|
|
304
304
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.TabSelector, {
|
|
@@ -318,14 +318,14 @@ function JotaiModal({
|
|
|
318
318
|
style: styles.headerActionButton,
|
|
319
319
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Search, {
|
|
320
320
|
size: 14,
|
|
321
|
-
color: _sharedUi.
|
|
321
|
+
color: _sharedUi.night.color.textSecondary
|
|
322
322
|
})
|
|
323
323
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
324
324
|
onPress: () => setShowFilters(true),
|
|
325
325
|
style: [styles.headerActionButton, hasActiveFilters && styles.headerActionButtonActive],
|
|
326
326
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Filter, {
|
|
327
327
|
size: 14,
|
|
328
|
-
color: hasActiveFilters ? _sharedUi.
|
|
328
|
+
color: hasActiveFilters ? _sharedUi.night.color.accent : _sharedUi.night.color.textSecondary
|
|
329
329
|
})
|
|
330
330
|
}), activeTab === "atoms" && /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.ToolbarCopyButton, {
|
|
331
331
|
value: getAtomsSnapshot,
|
|
@@ -387,7 +387,7 @@ function JotaiModal({
|
|
|
387
387
|
style: styles.emptyState,
|
|
388
388
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Box, {
|
|
389
389
|
size: 32,
|
|
390
|
-
color: _sharedUi.
|
|
390
|
+
color: _sharedUi.night.color.textTertiary
|
|
391
391
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
392
392
|
style: styles.emptyTitle,
|
|
393
393
|
children: "No history yet"
|
|
@@ -412,7 +412,7 @@ function JotaiModal({
|
|
|
412
412
|
style: styles.disabledBanner,
|
|
413
413
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Power, {
|
|
414
414
|
size: 14,
|
|
415
|
-
color: _sharedUi.
|
|
415
|
+
color: _sharedUi.night.color.warning
|
|
416
416
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
417
417
|
style: styles.disabledText,
|
|
418
418
|
children: "Atom capture is disabled"
|
|
@@ -525,7 +525,9 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
525
525
|
inlineRoot: {
|
|
526
526
|
flex: 1,
|
|
527
527
|
minHeight: 0,
|
|
528
|
-
|
|
528
|
+
// Transparent so the desktop workbench's hoisted sky (one field spanning
|
|
529
|
+
// sidebar + panel) shows through — the shell paints its base beneath it.
|
|
530
|
+
backgroundColor: "transparent"
|
|
529
531
|
},
|
|
530
532
|
inlineHeader: {
|
|
531
533
|
paddingHorizontal: 12,
|
|
@@ -536,21 +538,22 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
536
538
|
},
|
|
537
539
|
container: {
|
|
538
540
|
flex: 1,
|
|
539
|
-
|
|
541
|
+
// Transparent so JsModal's ToolBackground shows through (the modal paints opaque base beneath it).
|
|
542
|
+
backgroundColor: "transparent"
|
|
540
543
|
},
|
|
541
544
|
headerSearchContainer: {
|
|
542
545
|
flexDirection: "row",
|
|
543
546
|
alignItems: "center",
|
|
544
|
-
backgroundColor: _sharedUi.
|
|
545
|
-
borderRadius:
|
|
547
|
+
backgroundColor: _sharedUi.night.color.surfaceElevated,
|
|
548
|
+
borderRadius: _sharedUi.night.radius.row,
|
|
546
549
|
borderWidth: 1,
|
|
547
|
-
borderColor: _sharedUi.
|
|
550
|
+
borderColor: _sharedUi.night.color.border,
|
|
548
551
|
paddingHorizontal: 12,
|
|
549
552
|
paddingVertical: 5
|
|
550
553
|
},
|
|
551
554
|
headerSearchInput: {
|
|
552
555
|
flex: 1,
|
|
553
|
-
color: _sharedUi.
|
|
556
|
+
color: _sharedUi.night.color.text,
|
|
554
557
|
fontSize: 13,
|
|
555
558
|
marginLeft: 6,
|
|
556
559
|
paddingVertical: 2
|
|
@@ -563,14 +566,15 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
563
566
|
width: 32,
|
|
564
567
|
height: 32,
|
|
565
568
|
borderRadius: 8,
|
|
566
|
-
backgroundColor: _sharedUi.
|
|
569
|
+
backgroundColor: _sharedUi.night.color.buttonSurface,
|
|
567
570
|
borderWidth: 1,
|
|
568
|
-
borderColor: _sharedUi.
|
|
571
|
+
borderColor: _sharedUi.night.color.border,
|
|
569
572
|
alignItems: "center",
|
|
570
573
|
justifyContent: "center"
|
|
571
574
|
},
|
|
572
575
|
headerActionButtonActive: {
|
|
573
|
-
backgroundColor: _sharedUi.
|
|
576
|
+
backgroundColor: _sharedUi.night.color.accentSoft,
|
|
577
|
+
borderColor: _sharedUi.night.color.accentBorderStrong
|
|
574
578
|
},
|
|
575
579
|
disabledBanner: {
|
|
576
580
|
flexDirection: "row",
|
|
@@ -579,13 +583,13 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
579
583
|
padding: 10,
|
|
580
584
|
marginHorizontal: 12,
|
|
581
585
|
marginTop: 8,
|
|
582
|
-
backgroundColor: _sharedUi.
|
|
586
|
+
backgroundColor: _sharedUi.night.color.warningSoft,
|
|
583
587
|
borderRadius: 8,
|
|
584
588
|
borderWidth: 1,
|
|
585
|
-
borderColor: _sharedUi.
|
|
589
|
+
borderColor: _sharedUi.night.color.warning + "20"
|
|
586
590
|
},
|
|
587
591
|
disabledText: {
|
|
588
|
-
color: _sharedUi.
|
|
592
|
+
color: _sharedUi.night.color.warning,
|
|
589
593
|
fontSize: 11,
|
|
590
594
|
flex: 1
|
|
591
595
|
},
|
|
@@ -598,14 +602,14 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
598
602
|
paddingVertical: 40
|
|
599
603
|
},
|
|
600
604
|
emptyTitle: {
|
|
601
|
-
color: _sharedUi.
|
|
605
|
+
color: _sharedUi.night.color.text,
|
|
602
606
|
fontSize: 14,
|
|
603
607
|
fontWeight: "600",
|
|
604
608
|
marginTop: 12,
|
|
605
609
|
marginBottom: 6
|
|
606
610
|
},
|
|
607
611
|
emptyText: {
|
|
608
|
-
color: _sharedUi.
|
|
612
|
+
color: _sharedUi.night.color.textTertiary,
|
|
609
613
|
fontSize: 12,
|
|
610
614
|
textAlign: "center",
|
|
611
615
|
lineHeight: 18
|
|
@@ -617,25 +621,26 @@ const styles = _reactNative.StyleSheet.create({
|
|
|
617
621
|
padding: 10,
|
|
618
622
|
marginHorizontal: 12,
|
|
619
623
|
marginTop: 8,
|
|
620
|
-
backgroundColor: _sharedUi.
|
|
624
|
+
backgroundColor: _sharedUi.night.color.accentSoft,
|
|
621
625
|
borderRadius: 8,
|
|
622
626
|
borderWidth: 1,
|
|
623
|
-
borderColor: _sharedUi.
|
|
627
|
+
borderColor: _sharedUi.night.color.accentBorder
|
|
624
628
|
},
|
|
625
629
|
lockedText: {
|
|
626
|
-
color: _sharedUi.
|
|
630
|
+
color: _sharedUi.night.color.accent,
|
|
627
631
|
fontSize: 11,
|
|
628
632
|
fontWeight: "500",
|
|
629
633
|
flex: 1
|
|
630
634
|
},
|
|
631
635
|
upgradeBadge: {
|
|
632
|
-
backgroundColor: _sharedUi.
|
|
636
|
+
backgroundColor: _sharedUi.night.color.accent,
|
|
633
637
|
paddingHorizontal: 8,
|
|
634
638
|
paddingVertical: 3,
|
|
635
639
|
borderRadius: 4
|
|
636
640
|
},
|
|
637
641
|
upgradeBadgeText: {
|
|
638
|
-
|
|
642
|
+
// Ink on a filled accent surface — the night accent takes dark ink.
|
|
643
|
+
color: _sharedUi.night.color.onAccent,
|
|
639
644
|
fontSize: 9,
|
|
640
645
|
fontWeight: "700",
|
|
641
646
|
letterSpacing: 0.5
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
import { useState, useMemo, useCallback } from "react";
|
|
11
11
|
import { View, Text, StyleSheet, ScrollView, TouchableOpacity } from "react-native";
|
|
12
|
-
import { CompactRow,
|
|
12
|
+
import { CompactRow, buoyColors, night, Box, ExpandedInfoRow, PillBadge, parseValue } from "@buoy-gg/shared-ui";
|
|
13
13
|
import { DataViewer } from "@buoy-gg/shared-ui/dataViewer";
|
|
14
14
|
import { jotaiStateStore } from "../utils/jotaiStateStore";
|
|
15
15
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -111,7 +111,7 @@ function EmptyBrowserState() {
|
|
|
111
111
|
style: styles.emptyState,
|
|
112
112
|
children: [/*#__PURE__*/_jsx(Box, {
|
|
113
113
|
size: 32,
|
|
114
|
-
color:
|
|
114
|
+
color: night.color.textTertiary
|
|
115
115
|
}), /*#__PURE__*/_jsx(Text, {
|
|
116
116
|
style: styles.emptyTitle,
|
|
117
117
|
children: "No atoms registered"
|
|
@@ -243,10 +243,10 @@ const styles = StyleSheet.create({
|
|
|
243
243
|
fontSize: 11,
|
|
244
244
|
fontWeight: "700",
|
|
245
245
|
letterSpacing: 0.5,
|
|
246
|
-
color:
|
|
246
|
+
color: night.color.textTertiary
|
|
247
247
|
},
|
|
248
248
|
sectionCountBadge: {
|
|
249
|
-
backgroundColor:
|
|
249
|
+
backgroundColor: night.color.accentFill,
|
|
250
250
|
paddingHorizontal: 8,
|
|
251
251
|
paddingVertical: 2,
|
|
252
252
|
borderRadius: 4
|
|
@@ -254,7 +254,7 @@ const styles = StyleSheet.create({
|
|
|
254
254
|
sectionCountText: {
|
|
255
255
|
fontSize: 10,
|
|
256
256
|
fontWeight: "700",
|
|
257
|
-
color:
|
|
257
|
+
color: night.color.accent,
|
|
258
258
|
fontFamily: "monospace"
|
|
259
259
|
},
|
|
260
260
|
emptyState: {
|
|
@@ -262,14 +262,14 @@ const styles = StyleSheet.create({
|
|
|
262
262
|
paddingVertical: 40
|
|
263
263
|
},
|
|
264
264
|
emptyTitle: {
|
|
265
|
-
color:
|
|
265
|
+
color: night.color.text,
|
|
266
266
|
fontSize: 14,
|
|
267
267
|
fontWeight: "600",
|
|
268
268
|
marginTop: 12,
|
|
269
269
|
marginBottom: 6
|
|
270
270
|
},
|
|
271
271
|
emptyText: {
|
|
272
|
-
color:
|
|
272
|
+
color: night.color.textTertiary,
|
|
273
273
|
fontSize: 12,
|
|
274
274
|
textAlign: "center",
|
|
275
275
|
lineHeight: 18
|
|
@@ -288,15 +288,16 @@ const expandedStyles = StyleSheet.create({
|
|
|
288
288
|
fontFamily: "monospace"
|
|
289
289
|
},
|
|
290
290
|
dataContainer: {
|
|
291
|
-
|
|
291
|
+
// Inset display panel — darker than the card, the night track color.
|
|
292
|
+
backgroundColor: night.color.bg,
|
|
292
293
|
borderRadius: 6,
|
|
293
294
|
borderWidth: 1,
|
|
294
|
-
borderColor:
|
|
295
|
+
borderColor: night.color.border,
|
|
295
296
|
overflow: "hidden",
|
|
296
297
|
minHeight: 60
|
|
297
298
|
},
|
|
298
299
|
primitiveText: {
|
|
299
|
-
color:
|
|
300
|
+
color: night.color.text,
|
|
300
301
|
fontSize: 12,
|
|
301
302
|
fontFamily: "monospace",
|
|
302
303
|
padding: 14
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
import { memo } from "react";
|
|
10
10
|
import { View, Text, StyleSheet } from "react-native";
|
|
11
|
-
import { CompactRow, buoyColors, Zap, RelativeTime } from "@buoy-gg/shared-ui";
|
|
11
|
+
import { CompactRow, buoyColors, night, Zap, RelativeTime } from "@buoy-gg/shared-ui";
|
|
12
12
|
import { jotaiStateStore } from "../utils/jotaiStateStore";
|
|
13
13
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
14
|
function getStatusLabel(category, atomLabel) {
|
|
@@ -16,7 +16,7 @@ function getStatusLabel(category, atomLabel) {
|
|
|
16
16
|
return atomLabel.charAt(0).toUpperCase() + atomLabel.slice(1);
|
|
17
17
|
}
|
|
18
18
|
function getCategoryColor(category, atomLabel) {
|
|
19
|
-
if (category === "initial") return
|
|
19
|
+
if (category === "initial") return night.color.textTertiary;
|
|
20
20
|
return jotaiStateStore.getAtomColor(atomLabel);
|
|
21
21
|
}
|
|
22
22
|
function formatCompact(value, maxLen = 20) {
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
import React, { memo, useState, useCallback, useMemo } from "react";
|
|
15
15
|
import { View, Text, StyleSheet, ScrollView, TouchableOpacity } from "react-native";
|
|
16
|
-
import {
|
|
16
|
+
import { buoyColors, night, EventStepperFooter, formatRelativeTime, parseValue, Info, Zap, FileText, Database, GitBranch, copyToClipboard, ProUpgradeModal, DiffModeTabs, CompareBar } from "@buoy-gg/shared-ui";
|
|
17
17
|
import { DataViewer, SplitDiffViewer, TreeDiffViewer, diffThemes } from "@buoy-gg/shared-ui/dataViewer";
|
|
18
18
|
import { useIsPro } from "@buoy-gg/license";
|
|
19
19
|
import { jotaiStateStore } from "../utils/jotaiStateStore";
|
|
@@ -24,17 +24,17 @@ const VIEW_CONFIGS = [{
|
|
|
24
24
|
key: "change",
|
|
25
25
|
label: "CHANGE",
|
|
26
26
|
icon: FileText,
|
|
27
|
-
activeColor:
|
|
27
|
+
activeColor: night.color.accent
|
|
28
28
|
}, {
|
|
29
29
|
key: "value",
|
|
30
30
|
label: "VALUE",
|
|
31
31
|
icon: Database,
|
|
32
|
-
activeColor:
|
|
32
|
+
activeColor: night.color.accent
|
|
33
33
|
}, {
|
|
34
34
|
key: "diff",
|
|
35
35
|
label: "DIFF",
|
|
36
36
|
icon: GitBranch,
|
|
37
|
-
activeColor:
|
|
37
|
+
activeColor: night.color.accent
|
|
38
38
|
}];
|
|
39
39
|
function DetailViewToggle({
|
|
40
40
|
activeView,
|
|
@@ -57,12 +57,12 @@ function DetailViewToggle({
|
|
|
57
57
|
style: toggleStyles.cardContent,
|
|
58
58
|
children: [/*#__PURE__*/_jsx(IconComponent, {
|
|
59
59
|
size: 14,
|
|
60
|
-
color: isActive ? config.activeColor : isDisabled ?
|
|
60
|
+
color: isActive ? config.activeColor : isDisabled ? night.color.textTertiary : night.color.textSecondary
|
|
61
61
|
}), /*#__PURE__*/_jsx(Text, {
|
|
62
62
|
style: [toggleStyles.cardLabel, isActive && {
|
|
63
63
|
color: config.activeColor
|
|
64
64
|
}, isDisabled && {
|
|
65
|
-
color:
|
|
65
|
+
color: night.color.textTertiary
|
|
66
66
|
}],
|
|
67
67
|
children: config.label
|
|
68
68
|
})]
|
|
@@ -79,8 +79,8 @@ function getCategoryInfo(category) {
|
|
|
79
79
|
case "initial":
|
|
80
80
|
return {
|
|
81
81
|
label: "INITIAL",
|
|
82
|
-
color:
|
|
83
|
-
bgColor:
|
|
82
|
+
color: night.color.textTertiary,
|
|
83
|
+
bgColor: night.color.textTertiary + "26"
|
|
84
84
|
};
|
|
85
85
|
default:
|
|
86
86
|
return {
|
|
@@ -151,7 +151,7 @@ const JotaiAtomInfoView = /*#__PURE__*/memo(function JotaiAtomInfoView({
|
|
|
151
151
|
style: infoStyles.sectionHeaderLeft,
|
|
152
152
|
children: [/*#__PURE__*/_jsx(Info, {
|
|
153
153
|
size: 14,
|
|
154
|
-
color:
|
|
154
|
+
color: night.color.accent
|
|
155
155
|
}), /*#__PURE__*/_jsx(Text, {
|
|
156
156
|
style: infoStyles.sectionTitle,
|
|
157
157
|
children: "CHANGE INFO"
|
|
@@ -219,7 +219,7 @@ const JotaiAtomInfoView = /*#__PURE__*/memo(function JotaiAtomInfoView({
|
|
|
219
219
|
style: infoStyles.sectionHeaderLeft,
|
|
220
220
|
children: [/*#__PURE__*/_jsx(Zap, {
|
|
221
221
|
size: 14,
|
|
222
|
-
color:
|
|
222
|
+
color: night.color.accent
|
|
223
223
|
}), /*#__PURE__*/_jsx(Text, {
|
|
224
224
|
style: infoStyles.sectionTitle,
|
|
225
225
|
children: "CHANGED KEYS"
|
|
@@ -251,7 +251,7 @@ const JotaiAtomInfoView = /*#__PURE__*/memo(function JotaiAtomInfoView({
|
|
|
251
251
|
onTouchEnd: handleCopyValue,
|
|
252
252
|
children: /*#__PURE__*/_jsx(Text, {
|
|
253
253
|
style: [infoStyles.actionButtonText, {
|
|
254
|
-
color:
|
|
254
|
+
color: night.color.accent
|
|
255
255
|
}],
|
|
256
256
|
children: "COPY VALUE"
|
|
257
257
|
})
|
|
@@ -455,7 +455,8 @@ export function JotaiAtomDetailFooter({
|
|
|
455
455
|
const styles = StyleSheet.create({
|
|
456
456
|
container: {
|
|
457
457
|
flex: 1,
|
|
458
|
-
|
|
458
|
+
// Transparent so the night sheet's star field shows through.
|
|
459
|
+
backgroundColor: "transparent"
|
|
459
460
|
},
|
|
460
461
|
contentArea: {
|
|
461
462
|
flex: 1,
|
|
@@ -466,11 +467,11 @@ const styles = StyleSheet.create({
|
|
|
466
467
|
padding: 14
|
|
467
468
|
},
|
|
468
469
|
contentCard: {
|
|
469
|
-
backgroundColor:
|
|
470
|
+
backgroundColor: night.color.surface,
|
|
470
471
|
borderRadius: 14,
|
|
471
472
|
padding: 14,
|
|
472
473
|
borderWidth: 1,
|
|
473
|
-
borderColor:
|
|
474
|
+
borderColor: night.color.border
|
|
474
475
|
},
|
|
475
476
|
valueHeader: {
|
|
476
477
|
flexDirection: "row",
|
|
@@ -480,7 +481,7 @@ const styles = StyleSheet.create({
|
|
|
480
481
|
},
|
|
481
482
|
valueLabel: {
|
|
482
483
|
fontSize: 10,
|
|
483
|
-
color:
|
|
484
|
+
color: night.color.textSecondary,
|
|
484
485
|
fontFamily: "monospace",
|
|
485
486
|
letterSpacing: 0.5,
|
|
486
487
|
fontWeight: "600"
|
|
@@ -505,24 +506,25 @@ const styles = StyleSheet.create({
|
|
|
505
506
|
paddingHorizontal: 8,
|
|
506
507
|
paddingVertical: 2,
|
|
507
508
|
borderRadius: 4,
|
|
508
|
-
backgroundColor:
|
|
509
|
+
backgroundColor: night.color.surfaceElevated
|
|
509
510
|
},
|
|
510
511
|
typeText: {
|
|
511
512
|
fontSize: 9,
|
|
512
513
|
fontWeight: "600",
|
|
513
|
-
color:
|
|
514
|
+
color: night.color.textTertiary,
|
|
514
515
|
fontFamily: "monospace"
|
|
515
516
|
},
|
|
516
517
|
valueBox: {
|
|
517
|
-
|
|
518
|
+
// Inset code box — darker than the card, the night track color.
|
|
519
|
+
backgroundColor: night.color.bg,
|
|
518
520
|
borderRadius: 6,
|
|
519
521
|
borderWidth: 1,
|
|
520
|
-
borderColor:
|
|
522
|
+
borderColor: night.color.border,
|
|
521
523
|
padding: 8
|
|
522
524
|
},
|
|
523
525
|
valueText: {
|
|
524
526
|
fontSize: 12,
|
|
525
|
-
color:
|
|
527
|
+
color: night.color.text,
|
|
526
528
|
fontFamily: "monospace",
|
|
527
529
|
lineHeight: 18
|
|
528
530
|
},
|
|
@@ -549,21 +551,22 @@ const toggleStyles = StyleSheet.create({
|
|
|
549
551
|
flexDirection: "row",
|
|
550
552
|
gap: 8,
|
|
551
553
|
padding: 14,
|
|
552
|
-
|
|
554
|
+
// Transparent so the night sheet's star field shows through.
|
|
555
|
+
backgroundColor: "transparent"
|
|
553
556
|
},
|
|
554
557
|
card: {
|
|
555
558
|
flex: 1,
|
|
556
|
-
backgroundColor:
|
|
559
|
+
backgroundColor: night.color.surface,
|
|
557
560
|
borderRadius: 12,
|
|
558
561
|
borderWidth: 1,
|
|
559
|
-
borderColor:
|
|
562
|
+
borderColor: night.color.border,
|
|
560
563
|
paddingVertical: 10,
|
|
561
564
|
paddingHorizontal: 10,
|
|
562
565
|
justifyContent: "center"
|
|
563
566
|
},
|
|
564
567
|
cardActive: {
|
|
565
568
|
borderWidth: 1.5,
|
|
566
|
-
backgroundColor:
|
|
569
|
+
backgroundColor: night.color.accentSoft
|
|
567
570
|
},
|
|
568
571
|
cardDisabled: {
|
|
569
572
|
opacity: 0.5
|
|
@@ -577,7 +580,7 @@ const toggleStyles = StyleSheet.create({
|
|
|
577
580
|
fontSize: 10,
|
|
578
581
|
fontWeight: "700",
|
|
579
582
|
letterSpacing: 0.5,
|
|
580
|
-
color:
|
|
583
|
+
color: night.color.textSecondary
|
|
581
584
|
}
|
|
582
585
|
});
|
|
583
586
|
const infoStyles = StyleSheet.create({
|
|
@@ -590,12 +593,12 @@ const infoStyles = StyleSheet.create({
|
|
|
590
593
|
gap: 16
|
|
591
594
|
},
|
|
592
595
|
card: {
|
|
593
|
-
backgroundColor:
|
|
596
|
+
backgroundColor: night.color.surface,
|
|
594
597
|
borderRadius: 6,
|
|
595
598
|
borderWidth: 1,
|
|
596
|
-
borderColor:
|
|
599
|
+
borderColor: night.color.accentBorderStrong,
|
|
597
600
|
overflow: "hidden",
|
|
598
|
-
shadowColor:
|
|
601
|
+
shadowColor: night.color.accent,
|
|
599
602
|
shadowOffset: {
|
|
600
603
|
width: 0,
|
|
601
604
|
height: 0
|
|
@@ -610,8 +613,8 @@ const infoStyles = StyleSheet.create({
|
|
|
610
613
|
paddingHorizontal: 12,
|
|
611
614
|
paddingVertical: 10,
|
|
612
615
|
borderBottomWidth: 1,
|
|
613
|
-
borderBottomColor:
|
|
614
|
-
backgroundColor:
|
|
616
|
+
borderBottomColor: night.color.accentBorder,
|
|
617
|
+
backgroundColor: night.color.accentSoft
|
|
615
618
|
},
|
|
616
619
|
sectionHeaderLeft: {
|
|
617
620
|
flexDirection: "row",
|
|
@@ -622,7 +625,7 @@ const infoStyles = StyleSheet.create({
|
|
|
622
625
|
fontSize: 12,
|
|
623
626
|
fontWeight: "600",
|
|
624
627
|
letterSpacing: 0.5,
|
|
625
|
-
color:
|
|
628
|
+
color: night.color.accent,
|
|
626
629
|
fontFamily: "monospace"
|
|
627
630
|
},
|
|
628
631
|
cardContent: {
|
|
@@ -636,12 +639,12 @@ const infoStyles = StyleSheet.create({
|
|
|
636
639
|
},
|
|
637
640
|
infoLabel: {
|
|
638
641
|
fontSize: 11,
|
|
639
|
-
color:
|
|
642
|
+
color: night.color.textTertiary,
|
|
640
643
|
fontWeight: "500"
|
|
641
644
|
},
|
|
642
645
|
infoValue: {
|
|
643
646
|
fontSize: 11,
|
|
644
|
-
color:
|
|
647
|
+
color: night.color.text,
|
|
645
648
|
fontWeight: "500",
|
|
646
649
|
flex: 1,
|
|
647
650
|
textAlign: "right",
|
|
@@ -684,12 +687,12 @@ const infoStyles = StyleSheet.create({
|
|
|
684
687
|
paddingHorizontal: 8,
|
|
685
688
|
paddingVertical: 3,
|
|
686
689
|
borderRadius: 4,
|
|
687
|
-
backgroundColor:
|
|
690
|
+
backgroundColor: night.color.surfaceElevated
|
|
688
691
|
},
|
|
689
692
|
noChangesText: {
|
|
690
693
|
fontSize: 9,
|
|
691
694
|
fontWeight: "600",
|
|
692
|
-
color:
|
|
695
|
+
color: night.color.textTertiary
|
|
693
696
|
},
|
|
694
697
|
keysContainer: {
|
|
695
698
|
flexDirection: "row",
|
|
@@ -700,26 +703,26 @@ const infoStyles = StyleSheet.create({
|
|
|
700
703
|
paddingHorizontal: 8,
|
|
701
704
|
paddingVertical: 4,
|
|
702
705
|
borderRadius: 4,
|
|
703
|
-
backgroundColor:
|
|
706
|
+
backgroundColor: night.color.accentSoft,
|
|
704
707
|
borderWidth: 1,
|
|
705
|
-
borderColor:
|
|
708
|
+
borderColor: night.color.accentBorder
|
|
706
709
|
},
|
|
707
710
|
keyText: {
|
|
708
711
|
fontSize: 11,
|
|
709
712
|
fontWeight: "600",
|
|
710
|
-
color:
|
|
713
|
+
color: night.color.accent,
|
|
711
714
|
fontFamily: "monospace"
|
|
712
715
|
},
|
|
713
716
|
countBadge: {
|
|
714
717
|
paddingHorizontal: 8,
|
|
715
718
|
paddingVertical: 3,
|
|
716
719
|
borderRadius: 4,
|
|
717
|
-
backgroundColor:
|
|
720
|
+
backgroundColor: night.color.accentFill
|
|
718
721
|
},
|
|
719
722
|
countText: {
|
|
720
723
|
fontSize: 9,
|
|
721
724
|
fontWeight: "700",
|
|
722
|
-
color:
|
|
725
|
+
color: night.color.accent,
|
|
723
726
|
fontFamily: "monospace"
|
|
724
727
|
},
|
|
725
728
|
actionsRow: {
|
|
@@ -733,8 +736,8 @@ const infoStyles = StyleSheet.create({
|
|
|
733
736
|
borderWidth: 1
|
|
734
737
|
},
|
|
735
738
|
actionButtonCopy: {
|
|
736
|
-
borderColor:
|
|
737
|
-
backgroundColor:
|
|
739
|
+
borderColor: night.color.accentBorder,
|
|
740
|
+
backgroundColor: night.color.accentSoft
|
|
738
741
|
},
|
|
739
742
|
actionButtonText: {
|
|
740
743
|
fontSize: 10,
|