@buoy-gg/storage 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.
Files changed (49) hide show
  1. package/lib/commonjs/storage/components/DiffViewer/DiffOptionsPanel.js +36 -36
  2. package/lib/commonjs/storage/components/DiffViewer/TreeDiffViewer.js +2 -2
  3. package/lib/commonjs/storage/components/DiffViewer/themes/diffThemes.js +19 -108
  4. package/lib/commonjs/storage/components/GameUIStorageBrowser.js +45 -42
  5. package/lib/commonjs/storage/components/MMKVInstanceInfoPanel.js +9 -9
  6. package/lib/commonjs/storage/components/MMKVInstanceSelector.js +24 -24
  7. package/lib/commonjs/storage/components/SelectionActionBar.js +13 -13
  8. package/lib/commonjs/storage/components/StorageActionButtons.js +12 -12
  9. package/lib/commonjs/storage/components/StorageEventActionButton.js +18 -18
  10. package/lib/commonjs/storage/components/StorageEventDetailContent.js +7 -7
  11. package/lib/commonjs/storage/components/StorageEventFilterView.js +9 -9
  12. package/lib/commonjs/storage/components/StorageFilterCards.js +15 -15
  13. package/lib/commonjs/storage/components/StorageKeyCard.js +21 -21
  14. package/lib/commonjs/storage/components/StorageKeyEditorScreen.js +19 -18
  15. package/lib/commonjs/storage/components/StorageKeyRow.js +23 -21
  16. package/lib/commonjs/storage/components/StorageKeySection.js +3 -3
  17. package/lib/commonjs/storage/components/StorageKeyStats.js +10 -10
  18. package/lib/commonjs/storage/components/StorageModalWithTabs.js +19 -14
  19. package/lib/commonjs/storage/components/StorageTypeFilterBar.js +8 -8
  20. package/lib/commonjs/storage/components/StorageValueEditModal.js +19 -19
  21. package/lib/module/storage/components/DiffViewer/DiffOptionsPanel.js +37 -37
  22. package/lib/module/storage/components/DiffViewer/TreeDiffViewer.js +3 -3
  23. package/lib/module/storage/components/DiffViewer/themes/diffThemes.js +6 -105
  24. package/lib/module/storage/components/GameUIStorageBrowser.js +46 -43
  25. package/lib/module/storage/components/MMKVInstanceInfoPanel.js +10 -10
  26. package/lib/module/storage/components/MMKVInstanceSelector.js +25 -25
  27. package/lib/module/storage/components/SelectionActionBar.js +14 -14
  28. package/lib/module/storage/components/StorageActionButtons.js +13 -13
  29. package/lib/module/storage/components/StorageEventActionButton.js +19 -19
  30. package/lib/module/storage/components/StorageEventDetailContent.js +8 -8
  31. package/lib/module/storage/components/StorageEventFilterView.js +10 -10
  32. package/lib/module/storage/components/StorageFilterCards.js +16 -16
  33. package/lib/module/storage/components/StorageKeyCard.js +22 -22
  34. package/lib/module/storage/components/StorageKeyEditorScreen.js +20 -19
  35. package/lib/module/storage/components/StorageKeyRow.js +24 -22
  36. package/lib/module/storage/components/StorageKeySection.js +4 -4
  37. package/lib/module/storage/components/StorageKeyStats.js +11 -11
  38. package/lib/module/storage/components/StorageModalWithTabs.js +20 -15
  39. package/lib/module/storage/components/StorageTypeFilterBar.js +9 -9
  40. package/lib/module/storage/components/StorageValueEditModal.js +20 -20
  41. package/lib/typescript/storage/components/DiffViewer/DiffOptionsPanel.d.ts.map +1 -1
  42. package/lib/typescript/storage/components/DiffViewer/themes/diffThemes.d.ts +6 -61
  43. package/lib/typescript/storage/components/DiffViewer/themes/diffThemes.d.ts.map +1 -1
  44. package/lib/typescript/storage/components/StorageEventActionButton.d.ts +8 -8
  45. package/lib/typescript/storage/components/StorageEventFilterView.d.ts.map +1 -1
  46. package/lib/typescript/storage/components/StorageKeyCard.d.ts.map +1 -1
  47. package/lib/typescript/storage/components/StorageKeyEditorScreen.d.ts.map +1 -1
  48. package/lib/typescript/storage/components/StorageModalWithTabs.d.ts.map +1 -1
  49. package/package.json +5 -5
@@ -19,7 +19,7 @@
19
19
 
20
20
  import { useMemo } from "react";
21
21
  import { Alert, ScrollView, StyleSheet, Text, TouchableOpacity, View } from "react-native";
22
- import { macOSColors, FileJson, PillBadge, useSafeAreaInsets, X } from "@buoy-gg/shared-ui";
22
+ import { macOSColors, night, FileJson, PillBadge, useSafeAreaInsets, X } from "@buoy-gg/shared-ui";
23
23
  import { DataViewer, DataTreeActionDock, getAtPath } from "@buoy-gg/shared-ui/dataViewer";
24
24
  import { useKeyEditor } from "../hooks/useKeyEditor";
25
25
  import { StorageValueEditModal } from "./StorageValueEditModal";
@@ -206,7 +206,7 @@ function EditorHeader({
206
206
  },
207
207
  children: /*#__PURE__*/_jsx(X, {
208
208
  size: 16,
209
- color: macOSColors.text.secondary
209
+ color: night.color.textSecondary
210
210
  })
211
211
  }), /*#__PURE__*/_jsxs(View, {
212
212
  style: styles.headerTitle,
@@ -230,7 +230,7 @@ function EditorHeader({
230
230
  },
231
231
  children: [/*#__PURE__*/_jsx(FileJson, {
232
232
  size: 16,
233
- color: macOSColors.semantic.info
233
+ color: night.color.accent
234
234
  }), /*#__PURE__*/_jsx(Text, {
235
235
  style: styles.headerRawText,
236
236
  children: "Raw"
@@ -265,7 +265,8 @@ function storageTypeColor(storageType) {
265
265
  const styles = StyleSheet.create({
266
266
  screen: {
267
267
  flex: 1,
268
- backgroundColor: macOSColors.background.base
268
+ // Transparent so the night sheet's star field shows through.
269
+ backgroundColor: "transparent"
269
270
  },
270
271
  header: {
271
272
  flexDirection: "row",
@@ -274,7 +275,7 @@ const styles = StyleSheet.create({
274
275
  paddingHorizontal: 10,
275
276
  paddingVertical: 8,
276
277
  borderBottomWidth: 1,
277
- borderBottomColor: macOSColors.border.default
278
+ borderBottomColor: night.color.border
278
279
  },
279
280
  headerButton: {
280
281
  flexDirection: "row",
@@ -284,7 +285,7 @@ const styles = StyleSheet.create({
284
285
  paddingHorizontal: 4
285
286
  },
286
287
  headerRawText: {
287
- color: macOSColors.semantic.info,
288
+ color: night.color.accent,
288
289
  fontSize: 12,
289
290
  fontWeight: "700"
290
291
  },
@@ -294,17 +295,17 @@ const styles = StyleSheet.create({
294
295
  gap: 2
295
296
  },
296
297
  headerKey: {
297
- color: macOSColors.text.primary,
298
+ color: night.color.text,
298
299
  fontSize: 13,
299
300
  fontWeight: "600",
300
301
  fontFamily: "monospace"
301
302
  },
302
303
  headerState: {
303
- color: macOSColors.text.muted,
304
+ color: night.color.textTertiary,
304
305
  fontSize: 10
305
306
  },
306
307
  headerDirty: {
307
- color: macOSColors.semantic.warning
308
+ color: night.color.warning
308
309
  },
309
310
  metaRow: {
310
311
  flexDirection: "row",
@@ -314,7 +315,7 @@ const styles = StyleSheet.create({
314
315
  paddingVertical: 8
315
316
  },
316
317
  metaText: {
317
- color: macOSColors.text.muted,
318
+ color: night.color.textTertiary,
318
319
  fontSize: 11,
319
320
  fontFamily: "monospace"
320
321
  },
@@ -326,27 +327,27 @@ const styles = StyleSheet.create({
326
327
  paddingBottom: 16
327
328
  },
328
329
  treeCard: {
329
- backgroundColor: macOSColors.background.card,
330
+ backgroundColor: night.color.surface,
330
331
  borderRadius: 10,
331
332
  borderWidth: 1,
332
- borderColor: macOSColors.border.default,
333
+ borderColor: night.color.border,
333
334
  padding: 6
334
335
  },
335
336
  treeHint: {
336
- color: macOSColors.text.muted,
337
+ color: night.color.textTertiary,
337
338
  fontSize: 10,
338
339
  paddingTop: 8,
339
340
  paddingHorizontal: 4
340
341
  },
341
342
  error: {
342
- color: macOSColors.semantic.error,
343
+ color: night.color.danger,
343
344
  fontSize: 11,
344
345
  fontFamily: "monospace",
345
346
  paddingHorizontal: 12,
346
347
  paddingBottom: 6
347
348
  },
348
349
  footer: {
349
- backgroundColor: macOSColors.background.card
350
+ backgroundColor: night.color.surface
350
351
  },
351
352
  commitRow: {
352
353
  flexDirection: "row",
@@ -362,10 +363,10 @@ const styles = StyleSheet.create({
362
363
  justifyContent: "center",
363
364
  borderRadius: 12,
364
365
  borderWidth: 1,
365
- borderColor: macOSColors.border.default
366
+ borderColor: night.color.border
366
367
  },
367
368
  discardText: {
368
- color: macOSColors.text.secondary,
369
+ color: night.color.textSecondary,
369
370
  fontSize: 14,
370
371
  fontWeight: "600"
371
372
  },
@@ -375,13 +376,13 @@ const styles = StyleSheet.create({
375
376
  alignItems: "center",
376
377
  justifyContent: "center",
377
378
  borderRadius: 12,
378
- backgroundColor: macOSColors.semantic.success
379
+ backgroundColor: night.color.accent
379
380
  },
380
381
  saveDisabled: {
381
382
  opacity: 0.5
382
383
  },
383
384
  saveText: {
384
- color: macOSColors.background.base,
385
+ color: night.color.onAccent,
385
386
  fontSize: 15,
386
387
  fontWeight: "700"
387
388
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { memo } from "react";
4
4
  import { View, Text, StyleSheet, TouchableOpacity } from "react-native";
5
- import { macOSColors, CompactRow, TypeBadge, HardDrive, Square, CheckSquare, Edit3, EyeOff, Pin, ExpandedInfoRow, PillBadge } from "@buoy-gg/shared-ui";
5
+ import { macOSColors, night, CompactRow, TypeBadge, HardDrive, Square, CheckSquare, Edit3, EyeOff, Pin, ExpandedInfoRow, PillBadge } from "@buoy-gg/shared-ui";
6
6
  import { getStorageTypeLabel } from "../utils/storageQueryUtils";
7
7
  import { getValueTypeLabel, getValueTypeWithPreview, parseStorageValue } from "../utils/valueType";
8
8
  import { DataViewer } from "@buoy-gg/shared-ui/dataViewer";
@@ -227,7 +227,7 @@ export const StorageKeyRow = /*#__PURE__*/memo(function StorageKeyRow({
227
227
  },
228
228
  children: [/*#__PURE__*/_jsx(Edit3, {
229
229
  size: 13,
230
- color: macOSColors.background.base
230
+ color: night.color.onAccent
231
231
  }), /*#__PURE__*/_jsx(Text, {
232
232
  style: styles.editButtonText,
233
233
  children: isBoolean && onToggleKey ? "Toggle" : "Edit"
@@ -243,10 +243,11 @@ export const StorageKeyRow = /*#__PURE__*/memo(function StorageKeyRow({
243
243
  },
244
244
  children: [/*#__PURE__*/_jsx(Pin, {
245
245
  size: 12,
246
- color: macOSColors.semantic.info
246
+ active: isPinned,
247
+ color: night.color.accent
247
248
  }), /*#__PURE__*/_jsx(Text, {
248
249
  style: [styles.actionChipText, {
249
- color: macOSColors.semantic.info
250
+ color: night.color.accent
250
251
  }],
251
252
  children: isPinned ? "Unpin" : "Pin to top"
252
253
  })]
@@ -261,10 +262,10 @@ export const StorageKeyRow = /*#__PURE__*/memo(function StorageKeyRow({
261
262
  },
262
263
  children: [/*#__PURE__*/_jsx(EyeOff, {
263
264
  size: 12,
264
- color: macOSColors.semantic.warning
265
+ color: night.color.warning
265
266
  }), /*#__PURE__*/_jsx(Text, {
266
267
  style: [styles.actionChipText, {
267
- color: macOSColors.semantic.warning
268
+ color: night.color.warning
268
269
  }],
269
270
  children: "Hide from list"
270
271
  })]
@@ -289,10 +290,10 @@ export const StorageKeyRow = /*#__PURE__*/memo(function StorageKeyRow({
289
290
  },
290
291
  children: isSelected ? /*#__PURE__*/_jsx(CheckSquare, {
291
292
  size: 18,
292
- color: macOSColors.semantic.info
293
+ color: night.color.accent
293
294
  }) : /*#__PURE__*/_jsx(Square, {
294
295
  size: 18,
295
- color: macOSColors.text.muted
296
+ color: night.color.textTertiary
296
297
  })
297
298
  }) : null;
298
299
  return /*#__PURE__*/_jsxs(View, {
@@ -317,7 +318,8 @@ export const StorageKeyRow = /*#__PURE__*/memo(function StorageKeyRow({
317
318
  style: styles.badgeRow,
318
319
  children: [isPinned && /*#__PURE__*/_jsx(Pin, {
319
320
  size: 12,
320
- color: macOSColors.semantic.info
321
+ active: true,
322
+ color: night.color.accent
321
323
  }), /*#__PURE__*/_jsx(PillBadge, {
322
324
  color: getStorageTypeColor(storageKey.storageType),
323
325
  children: storageTypeLabel
@@ -369,14 +371,14 @@ const styles = StyleSheet.create({
369
371
  },
370
372
  expandedLabel: {
371
373
  fontSize: 10,
372
- color: macOSColors.text.muted,
374
+ color: night.color.textTertiary,
373
375
  fontWeight: "600",
374
376
  minWidth: 70,
375
377
  fontFamily: "monospace"
376
378
  },
377
379
  expandedValue: {
378
380
  fontSize: 11,
379
- color: macOSColors.text.secondary,
381
+ color: night.color.textSecondary,
380
382
  fontFamily: "monospace",
381
383
  flex: 1
382
384
  },
@@ -388,16 +390,16 @@ const styles = StyleSheet.create({
388
390
  },
389
391
  expandedDescription: {
390
392
  fontSize: 11,
391
- color: macOSColors.text.secondary,
393
+ color: night.color.textSecondary,
392
394
  flex: 1
393
395
  },
394
396
  dataViewerContainer: {
395
397
  marginTop: 6,
396
398
  marginBottom: 6,
397
- backgroundColor: macOSColors.background.base,
399
+ backgroundColor: night.color.bg,
398
400
  borderRadius: 6,
399
401
  borderWidth: 1,
400
- borderColor: macOSColors.border.default,
402
+ borderColor: night.color.border,
401
403
  padding: 6
402
404
  },
403
405
  rowContainer: {
@@ -405,7 +407,7 @@ const styles = StyleSheet.create({
405
407
  alignItems: "flex-start"
406
408
  },
407
409
  rowContainerSelected: {
408
- backgroundColor: macOSColors.semantic.info + "08",
410
+ backgroundColor: night.color.accentSoft,
409
411
  borderRadius: 8
410
412
  },
411
413
  checkboxContainer: {
@@ -446,13 +448,13 @@ const styles = StyleSheet.create({
446
448
  paddingVertical: 6,
447
449
  paddingHorizontal: 10,
448
450
  borderRadius: 6,
449
- backgroundColor: macOSColors.background.card,
451
+ backgroundColor: night.color.surface,
450
452
  borderWidth: 1,
451
- borderColor: macOSColors.border.default
453
+ borderColor: night.color.border
452
454
  },
453
455
  actionChipActive: {
454
- backgroundColor: macOSColors.semantic.info + "15",
455
- borderColor: macOSColors.semantic.info + "44"
456
+ backgroundColor: night.color.accentSoft,
457
+ borderColor: night.color.accentBorderStrong
456
458
  },
457
459
  /** Filled, and first — the one action in this row that changes anything. */
458
460
  editButton: {
@@ -462,10 +464,10 @@ const styles = StyleSheet.create({
462
464
  paddingVertical: 8,
463
465
  paddingHorizontal: 14,
464
466
  borderRadius: 8,
465
- backgroundColor: macOSColors.semantic.success
467
+ backgroundColor: night.color.accent
466
468
  },
467
469
  editButtonText: {
468
- color: macOSColors.background.base,
470
+ color: night.color.onAccent,
469
471
  fontSize: 12,
470
472
  fontWeight: "700"
471
473
  },
@@ -481,6 +483,6 @@ const styles = StyleSheet.create({
481
483
  fontSize: 10,
482
484
  fontWeight: "600",
483
485
  fontFamily: "monospace",
484
- color: macOSColors.semantic.info
486
+ color: night.color.accent
485
487
  }
486
488
  });
@@ -3,7 +3,7 @@
3
3
  import { useCallback, useState } from "react";
4
4
  import { View, Text, StyleSheet } from "react-native";
5
5
  import { StorageKeyRow } from "./StorageKeyRow";
6
- import { SectionHeader, macOSColors } from "@buoy-gg/shared-ui";
6
+ import { SectionHeader, night } from "@buoy-gg/shared-ui";
7
7
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
8
  /**
9
9
  * Storage key section component following composition principles [[rule3]]
@@ -102,15 +102,15 @@ const styles = StyleSheet.create({
102
102
  // No gap needed, StorageKeyRow has its own margins
103
103
  },
104
104
  emptySection: {
105
- backgroundColor: "rgba(128, 128, 128, 0.04)",
105
+ backgroundColor: night.color.surface,
106
106
  borderRadius: 6,
107
107
  padding: 16,
108
108
  borderWidth: 1,
109
- borderColor: "rgba(128, 128, 128, 0.1)",
109
+ borderColor: night.color.border,
110
110
  alignItems: "center"
111
111
  },
112
112
  emptySectionText: {
113
- color: macOSColors.text.icon,
113
+ color: night.color.textTertiary,
114
114
  fontSize: 11,
115
115
  textAlign: "center"
116
116
  }
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { View, Text, StyleSheet } from "react-native";
4
4
  import { AlertCircle, CheckCircle2, XCircle, Eye, Database, Shield } from "@buoy-gg/shared-ui";
5
- import { macOSColors, buoyColors } from "@buoy-gg/shared-ui";
5
+ import { night } from "@buoy-gg/shared-ui";
6
6
  import { getStorageTypeHexColor } from "../utils/storageQueryUtils";
7
7
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
8
  // Variable type configurations matching env vars design
@@ -256,15 +256,15 @@ export function StorageKeyStatsSection({
256
256
  const styles = StyleSheet.create({
257
257
  statsContainer: {
258
258
  marginBottom: 24,
259
- backgroundColor: "rgba(128, 128, 128, 0.06)",
259
+ backgroundColor: night.color.surface,
260
260
  borderRadius: 8,
261
261
  padding: 16,
262
262
  borderWidth: 1,
263
- borderColor: "rgba(128, 128, 128, 0.16)"
263
+ borderColor: night.color.border
264
264
  },
265
265
  // Section titles
266
266
  sectionTitle: {
267
- color: buoyColors.textSecondary,
267
+ color: night.color.textSecondary,
268
268
  fontSize: 12,
269
269
  fontWeight: "500",
270
270
  marginBottom: 16,
@@ -280,11 +280,11 @@ const styles = StyleSheet.create({
280
280
  gap: 12
281
281
  },
282
282
  breakdownItem: {
283
- backgroundColor: "rgba(128, 128, 128, 0.04)",
283
+ backgroundColor: night.color.surfaceElevated,
284
284
  padding: 12,
285
285
  borderRadius: 8,
286
286
  borderWidth: 1,
287
- borderColor: "rgba(128, 128, 128, 0.1)"
287
+ borderColor: night.color.border
288
288
  },
289
289
  breakdownItemRow: {
290
290
  flexDirection: "row",
@@ -307,12 +307,12 @@ const styles = StyleSheet.create({
307
307
  minWidth: 0
308
308
  },
309
309
  breakdownItemLabel: {
310
- color: macOSColors.text.primary,
310
+ color: night.color.text,
311
311
  fontSize: 14,
312
312
  fontWeight: "500"
313
313
  },
314
314
  breakdownItemDesc: {
315
- color: buoyColors.textSecondary,
315
+ color: night.color.textSecondary,
316
316
  fontSize: 12
317
317
  },
318
318
  breakdownItemRight: {
@@ -323,18 +323,18 @@ const styles = StyleSheet.create({
323
323
  fontWeight: "600"
324
324
  },
325
325
  breakdownPercentage: {
326
- color: macOSColors.text.icon,
326
+ color: night.color.textTertiary,
327
327
  fontSize: 10
328
328
  },
329
329
  // Empty state
330
330
  emptyState: {
331
331
  padding: 16,
332
- backgroundColor: "rgba(128, 128, 128, 0.04)",
332
+ backgroundColor: night.color.surfaceElevated,
333
333
  borderRadius: 6,
334
334
  alignItems: "center"
335
335
  },
336
336
  emptyStateText: {
337
- color: macOSColors.text.icon,
337
+ color: night.color.textTertiary,
338
338
  fontSize: 11,
339
339
  textAlign: "center"
340
340
  }
@@ -3,7 +3,7 @@
3
3
  import { useState, useCallback, useEffect, useRef, useMemo } from "react";
4
4
  import { Text, View, TouchableOpacity, StyleSheet, FlatList, Alert } from "react-native";
5
5
  import AsyncStorage from "@react-native-async-storage/async-storage";
6
- import { JsModal, ModalHeader, TabSelector, parseValue, devToolsStorageKeys, macOSColors, Database, Filter, RefreshCw, Search, SearchBar, PowerToggleButton, ToolbarCopyButton, ToolbarClearButton, truncatePayload, TickProvider, useLimit, TIER_LIMITS } from "@buoy-gg/shared-ui";
6
+ import { JsModal, ModalHeader, TabSelector, parseValue, devToolsStorageKeys, macOSColors, night, Database, Filter, RefreshCw, Search, SearchBar, PowerToggleButton, ToolbarCopyButton, ToolbarClearButton, truncatePayload, TickProvider, useLimit, TIER_LIMITS } from "@buoy-gg/shared-ui";
7
7
  import { StorageBrowserMode } from "./StorageBrowserMode";
8
8
  import { StorageTypeFilterBar, countByStorageType } from "./StorageTypeFilterBar";
9
9
  import { clearAllAppStorage, clearAllStorageIncludingDevTools } from "../utils/clearAllStorage";
@@ -663,7 +663,7 @@ export function StorageModalWithTabs({
663
663
  style: styles.emptyState,
664
664
  children: [/*#__PURE__*/_jsx(Database, {
665
665
  size: 48,
666
- color: macOSColors.text.muted
666
+ color: night.color.textTertiary
667
667
  }), /*#__PURE__*/_jsx(Text, {
668
668
  style: styles.emptyTitle,
669
669
  children: !isListening ? "Event listener is paused" : filtered ? `No ${storageTypeFilter} events` : "No storage events yet"
@@ -783,14 +783,14 @@ export function StorageModalWithTabs({
783
783
  accessibilityLabel: "Refresh storage",
784
784
  children: /*#__PURE__*/_jsx(RefreshCw, {
785
785
  size: 14,
786
- color: macOSColors.text.secondary
786
+ color: night.color.textSecondary
787
787
  })
788
788
  }) : null, /*#__PURE__*/_jsx(TouchableOpacity, {
789
789
  onPress: handleToggleFilters,
790
790
  style: [styles.iconButton, (ignoredPatterns.size > 0 || enabledStorageTypes.size < 3) && styles.activeFilterButton],
791
791
  children: /*#__PURE__*/_jsx(Filter, {
792
792
  size: 14,
793
- color: ignoredPatterns.size > 0 || enabledStorageTypes.size < 3 ? macOSColors.semantic.debug : macOSColors.text.secondary
793
+ color: ignoredPatterns.size > 0 || enabledStorageTypes.size < 3 ? night.color.accent : night.color.textSecondary
794
794
  })
795
795
  }), activeTab === "browser" && !isSearchActive && /*#__PURE__*/_jsxs(_Fragment, {
796
796
  children: [/*#__PURE__*/_jsx(TouchableOpacity, {
@@ -798,7 +798,7 @@ export function StorageModalWithTabs({
798
798
  style: styles.iconButton,
799
799
  children: /*#__PURE__*/_jsx(Search, {
800
800
  size: 14,
801
- color: macOSColors.text.secondary
801
+ color: night.color.textSecondary
802
802
  })
803
803
  }), /*#__PURE__*/_jsx(ToolbarCopyButton, {
804
804
  value: getStorageSnapshot,
@@ -877,7 +877,9 @@ const styles = StyleSheet.create({
877
877
  inlineRoot: {
878
878
  flex: 1,
879
879
  minHeight: 0,
880
- backgroundColor: macOSColors.background.base
880
+ // Transparent so the desktop workbench's hoisted sky (one field spanning
881
+ // sidebar + panel) shows through — the shell paints its base beneath it.
882
+ backgroundColor: "transparent"
881
883
  },
882
884
  inlineHeader: {
883
885
  paddingHorizontal: 12,
@@ -892,18 +894,21 @@ const styles = StyleSheet.create({
892
894
  flexFill: {
893
895
  flex: 1
894
896
  },
897
+ // Night chrome — the header is glass over the star field, so the action
898
+ // chips sit on the Everlights dark-glass fill.
895
899
  iconButton: {
896
900
  width: 32,
897
901
  height: 32,
898
902
  borderRadius: 8,
899
- backgroundColor: macOSColors.background.hover,
903
+ backgroundColor: night.color.buttonSurface,
900
904
  borderWidth: 1,
901
- borderColor: macOSColors.border.default,
905
+ borderColor: night.color.border,
902
906
  alignItems: "center",
903
907
  justifyContent: "center"
904
908
  },
905
909
  activeFilterButton: {
906
- backgroundColor: macOSColors.semantic.infoBackground
910
+ backgroundColor: night.color.accentSoft,
911
+ borderColor: night.color.accentBorderStrong
907
912
  },
908
913
  separator: {
909
914
  height: 8
@@ -928,7 +933,7 @@ const styles = StyleSheet.create({
928
933
  padding: 32
929
934
  },
930
935
  emptyTitle: {
931
- color: macOSColors.text.primary,
936
+ color: night.color.text,
932
937
  fontSize: 16,
933
938
  fontWeight: "600",
934
939
  marginTop: 16,
@@ -938,7 +943,7 @@ const styles = StyleSheet.create({
938
943
  textTransform: "uppercase"
939
944
  },
940
945
  emptySubtitle: {
941
- color: macOSColors.text.secondary,
946
+ color: night.color.textSecondary,
942
947
  fontSize: 14,
943
948
  textAlign: "center",
944
949
  fontFamily: "monospace"
@@ -957,7 +962,7 @@ const styles = StyleSheet.create({
957
962
  opacity: 0.3
958
963
  },
959
964
  eventCounter: {
960
- color: macOSColors.text.primary,
965
+ color: night.color.text,
961
966
  fontSize: 12,
962
967
  fontWeight: "600",
963
968
  fontFamily: "monospace",
@@ -974,19 +979,19 @@ const styles = StyleSheet.create({
974
979
  flexDirection: "row",
975
980
  alignItems: "center",
976
981
  gap: 6,
977
- backgroundColor: macOSColors.background.input,
982
+ backgroundColor: night.color.surfaceElevated,
978
983
  paddingHorizontal: 10,
979
984
  paddingVertical: 4,
980
985
  borderRadius: 6,
981
986
  borderWidth: 1,
982
- borderColor: macOSColors.border.input,
987
+ borderColor: night.color.border,
983
988
  height: 28
984
989
  },
985
990
  keyNameText: {
986
991
  flex: 1,
987
992
  fontSize: 13,
988
993
  fontWeight: "600",
989
- color: macOSColors.semantic.debug,
994
+ color: night.color.accent,
990
995
  fontFamily: "monospace",
991
996
  letterSpacing: 0.5
992
997
  },
@@ -17,7 +17,7 @@
17
17
  */
18
18
 
19
19
  import { StyleSheet, Text, TouchableOpacity, View } from "react-native";
20
- import { macOSColors } from "@buoy-gg/shared-ui";
20
+ import { macOSColors, night } from "@buoy-gg/shared-ui";
21
21
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
22
22
  /**
23
23
  * One entry per pill. This was four near-identical blocks of JSX differing only
@@ -50,7 +50,7 @@ export function StorageTypeFilterBar({
50
50
  style: styles.row,
51
51
  children: SEGMENTS.map(segment => {
52
52
  const isActive = active === segment.id;
53
- const accent = segment.color ?? macOSColors.text.primary;
53
+ const accent = segment.color ?? night.color.accent;
54
54
  return /*#__PURE__*/_jsxs(TouchableOpacity, {
55
55
  accessibilityLabel: `Filter by ${segment.label}`,
56
56
  accessibilityState: {
@@ -59,13 +59,13 @@ export function StorageTypeFilterBar({
59
59
  activeOpacity: 0.8,
60
60
  onPress: () => onChange(segment.id),
61
61
  style: [styles.pill, {
62
- borderColor: macOSColors.border.default
62
+ borderColor: night.color.border
63
63
  }, isActive && [styles.pillActive, segment.color ? {
64
64
  backgroundColor: segment.color + "15",
65
65
  borderColor: segment.color + "40"
66
66
  } : {
67
- backgroundColor: macOSColors.background.hover,
68
- borderColor: macOSColors.border.hover
67
+ backgroundColor: night.color.accentSoft,
68
+ borderColor: night.color.accentBorderStrong
69
69
  }]],
70
70
  children: [/*#__PURE__*/_jsx(Text, {
71
71
  style: [styles.label, isActive && {
@@ -75,7 +75,7 @@ export function StorageTypeFilterBar({
75
75
  children: segment.label
76
76
  }), /*#__PURE__*/_jsx(Text, {
77
77
  style: [styles.value, {
78
- color: isActive ? accent : macOSColors.text.muted
78
+ color: isActive ? accent : night.color.textTertiary
79
79
  }],
80
80
  children: counts[segment.id]
81
81
  })]
@@ -103,10 +103,10 @@ const styles = StyleSheet.create({
103
103
  },
104
104
  pill: {
105
105
  flex: 1,
106
- backgroundColor: macOSColors.background.input + "80",
106
+ backgroundColor: night.color.buttonSurface,
107
107
  borderRadius: 8,
108
108
  borderWidth: 1,
109
- borderColor: macOSColors.border.default + "30",
109
+ borderColor: night.color.border,
110
110
  paddingVertical: 6,
111
111
  paddingHorizontal: 8,
112
112
  alignItems: "center",
@@ -121,7 +121,7 @@ const styles = StyleSheet.create({
121
121
  },
122
122
  label: {
123
123
  fontSize: 9,
124
- color: macOSColors.text.secondary,
124
+ color: night.color.textSecondary,
125
125
  textTransform: "uppercase",
126
126
  letterSpacing: 0.4,
127
127
  fontWeight: "500",