@buoy-gg/shared-ui 7.0.26 → 7.0.28

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 (221) hide show
  1. package/lib/commonjs/JsModal.js +156 -20
  2. package/lib/commonjs/JsModal.web.js +85 -39
  3. package/lib/commonjs/dataViewer/VirtualizedDataExplorer.js +14 -4
  4. package/lib/commonjs/dataViewer/diffThemes.js +20 -18
  5. package/lib/commonjs/dataViewer/tree/TreeDiffViewer.js +8 -8
  6. package/lib/commonjs/hooks/safe-area-impl.js +1 -1
  7. package/lib/commonjs/icons/lucide-icons.js +74 -15
  8. package/lib/commonjs/index.js +86 -0
  9. package/lib/commonjs/ui/backgrounds/BackgroundSwitcher.js +248 -74
  10. package/lib/commonjs/ui/backgrounds/README.md +102 -20
  11. package/lib/commonjs/ui/backgrounds/backgroundStore.js +20 -6
  12. package/lib/commonjs/ui/backgrounds/index.js +91 -1
  13. package/lib/commonjs/ui/backgrounds/primitives.js +50 -14
  14. package/lib/commonjs/ui/backgrounds/registry.js +41 -64
  15. package/lib/commonjs/ui/backgrounds/rng.js +21 -0
  16. package/lib/commonjs/ui/backgrounds/skyClock.js +45 -0
  17. package/lib/commonjs/ui/backgrounds/variants/daylight.js +453 -0
  18. package/lib/commonjs/ui/backgrounds/variants/deepField.js +60 -30
  19. package/lib/commonjs/ui/backgrounds/variants/hyperspace.js +218 -0
  20. package/lib/commonjs/ui/backgrounds/variants/liveSky.js +898 -0
  21. package/lib/commonjs/ui/backgrounds/variants/meteors.js +257 -0
  22. package/lib/commonjs/ui/backgrounds/variants/moonlight.js +472 -0
  23. package/lib/commonjs/ui/backgrounds/variants/underwater.js +757 -0
  24. package/lib/commonjs/ui/components/Badge.js +11 -10
  25. package/lib/commonjs/ui/components/CompactRow.js +35 -18
  26. package/lib/commonjs/ui/components/CopyButton.js +6 -4
  27. package/lib/commonjs/ui/components/DevToolsCard.js +16 -9
  28. package/lib/commonjs/ui/components/DynamicFilterView.js +43 -41
  29. package/lib/commonjs/ui/components/EventStepperFooter.js +38 -10
  30. package/lib/commonjs/ui/components/FilterComponents.js +11 -11
  31. package/lib/commonjs/ui/components/ModalHeader.js +28 -15
  32. package/lib/commonjs/ui/components/SectionHeader.js +3 -1
  33. package/lib/commonjs/ui/components/StorageTypeBadge.js +3 -2
  34. package/lib/commonjs/ui/components/TabSelector.js +56 -38
  35. package/lib/commonjs/ui/components/ValueTypeBadge.js +7 -6
  36. package/lib/commonjs/ui/components/WindowControls.js +37 -10
  37. package/lib/commonjs/ui/gameUI/constants/gameUIColors.js +8 -0
  38. package/lib/commonjs/ui/night/nightTheme.js +120 -0
  39. package/lib/commonjs/ui/night/primitives.js +498 -0
  40. package/lib/module/JsModal.js +156 -20
  41. package/lib/module/JsModal.web.js +83 -39
  42. package/lib/module/dataViewer/VirtualizedDataExplorer.js +14 -4
  43. package/lib/module/dataViewer/diffThemes.js +20 -18
  44. package/lib/module/dataViewer/tree/TreeDiffViewer.js +9 -9
  45. package/lib/module/hooks/safe-area-impl.js +1 -1
  46. package/lib/module/icons/lucide-icons.js +74 -15
  47. package/lib/module/index.js +4 -0
  48. package/lib/module/ui/backgrounds/BackgroundSwitcher.js +250 -76
  49. package/lib/module/ui/backgrounds/README.md +102 -20
  50. package/lib/module/ui/backgrounds/backgroundStore.js +19 -5
  51. package/lib/module/ui/backgrounds/index.js +11 -2
  52. package/lib/module/ui/backgrounds/primitives.js +53 -16
  53. package/lib/module/ui/backgrounds/registry.js +41 -64
  54. package/lib/module/ui/backgrounds/rng.js +20 -0
  55. package/lib/module/ui/backgrounds/skyClock.js +39 -0
  56. package/lib/module/ui/backgrounds/variants/daylight.js +449 -0
  57. package/lib/module/ui/backgrounds/variants/deepField.js +62 -31
  58. package/lib/module/ui/backgrounds/variants/hyperspace.js +214 -0
  59. package/lib/module/ui/backgrounds/variants/liveSky.js +893 -0
  60. package/lib/module/ui/backgrounds/variants/meteors.js +253 -0
  61. package/lib/module/ui/backgrounds/variants/moonlight.js +468 -0
  62. package/lib/module/ui/backgrounds/variants/underwater.js +753 -0
  63. package/lib/module/ui/components/Badge.js +11 -10
  64. package/lib/module/ui/components/CompactRow.js +35 -18
  65. package/lib/module/ui/components/CopyButton.js +6 -4
  66. package/lib/module/ui/components/DevToolsCard.js +16 -9
  67. package/lib/module/ui/components/DynamicFilterView.js +43 -41
  68. package/lib/module/ui/components/EventStepperFooter.js +38 -10
  69. package/lib/module/ui/components/FilterComponents.js +11 -11
  70. package/lib/module/ui/components/ModalHeader.js +28 -15
  71. package/lib/module/ui/components/SectionHeader.js +3 -1
  72. package/lib/module/ui/components/StorageTypeBadge.js +3 -2
  73. package/lib/module/ui/components/TabSelector.js +57 -39
  74. package/lib/module/ui/components/ValueTypeBadge.js +7 -6
  75. package/lib/module/ui/components/WindowControls.js +37 -10
  76. package/lib/module/ui/gameUI/constants/gameUIColors.js +8 -0
  77. package/lib/module/ui/night/nightTheme.js +116 -0
  78. package/lib/module/ui/night/primitives.js +485 -0
  79. package/lib/typescript/commonjs/JsModal.d.ts +18 -0
  80. package/lib/typescript/commonjs/JsModal.d.ts.map +1 -1
  81. package/lib/typescript/commonjs/JsModal.web.d.ts +13 -0
  82. package/lib/typescript/commonjs/JsModal.web.d.ts.map +1 -1
  83. package/lib/typescript/commonjs/dataViewer/VirtualizedDataExplorer.d.ts.map +1 -1
  84. package/lib/typescript/commonjs/dataViewer/diffThemes.d.ts +3 -1
  85. package/lib/typescript/commonjs/dataViewer/diffThemes.d.ts.map +1 -1
  86. package/lib/typescript/commonjs/dataViewer/tree/TreeDiffViewer.d.ts.map +1 -1
  87. package/lib/typescript/commonjs/hooks/safe-area-impl.d.ts +1 -1
  88. package/lib/typescript/commonjs/icons/lucide-icons.d.ts +12 -1
  89. package/lib/typescript/commonjs/icons/lucide-icons.d.ts.map +1 -1
  90. package/lib/typescript/commonjs/index.d.ts +3 -0
  91. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  92. package/lib/typescript/commonjs/ui/backgrounds/BackgroundSwitcher.d.ts +26 -6
  93. package/lib/typescript/commonjs/ui/backgrounds/BackgroundSwitcher.d.ts.map +1 -1
  94. package/lib/typescript/commonjs/ui/backgrounds/backgroundStore.d.ts +3 -0
  95. package/lib/typescript/commonjs/ui/backgrounds/backgroundStore.d.ts.map +1 -1
  96. package/lib/typescript/commonjs/ui/backgrounds/index.d.ts +7 -1
  97. package/lib/typescript/commonjs/ui/backgrounds/index.d.ts.map +1 -1
  98. package/lib/typescript/commonjs/ui/backgrounds/primitives.d.ts +18 -3
  99. package/lib/typescript/commonjs/ui/backgrounds/primitives.d.ts.map +1 -1
  100. package/lib/typescript/commonjs/ui/backgrounds/registry.d.ts +8 -0
  101. package/lib/typescript/commonjs/ui/backgrounds/registry.d.ts.map +1 -1
  102. package/lib/typescript/commonjs/ui/backgrounds/rng.d.ts +6 -0
  103. package/lib/typescript/commonjs/ui/backgrounds/rng.d.ts.map +1 -1
  104. package/lib/typescript/commonjs/ui/backgrounds/skyClock.d.ts +17 -0
  105. package/lib/typescript/commonjs/ui/backgrounds/skyClock.d.ts.map +1 -0
  106. package/lib/typescript/commonjs/ui/backgrounds/types.d.ts +1 -1
  107. package/lib/typescript/commonjs/ui/backgrounds/types.d.ts.map +1 -1
  108. package/lib/typescript/commonjs/ui/backgrounds/variants/daylight.d.ts +30 -0
  109. package/lib/typescript/commonjs/ui/backgrounds/variants/daylight.d.ts.map +1 -0
  110. package/lib/typescript/commonjs/ui/backgrounds/variants/deepField.d.ts +19 -4
  111. package/lib/typescript/commonjs/ui/backgrounds/variants/deepField.d.ts.map +1 -1
  112. package/lib/typescript/commonjs/ui/backgrounds/variants/hyperspace.d.ts +39 -0
  113. package/lib/typescript/commonjs/ui/backgrounds/variants/hyperspace.d.ts.map +1 -0
  114. package/lib/typescript/commonjs/ui/backgrounds/variants/liveSky.d.ts +41 -0
  115. package/lib/typescript/commonjs/ui/backgrounds/variants/liveSky.d.ts.map +1 -0
  116. package/lib/typescript/commonjs/ui/backgrounds/variants/meteors.d.ts +26 -0
  117. package/lib/typescript/commonjs/ui/backgrounds/variants/meteors.d.ts.map +1 -0
  118. package/lib/typescript/commonjs/ui/backgrounds/variants/moonlight.d.ts +35 -0
  119. package/lib/typescript/commonjs/ui/backgrounds/variants/moonlight.d.ts.map +1 -0
  120. package/lib/typescript/commonjs/ui/backgrounds/variants/underwater.d.ts +51 -0
  121. package/lib/typescript/commonjs/ui/backgrounds/variants/underwater.d.ts.map +1 -0
  122. package/lib/typescript/commonjs/ui/components/Badge.d.ts.map +1 -1
  123. package/lib/typescript/commonjs/ui/components/CompactRow.d.ts +3 -1
  124. package/lib/typescript/commonjs/ui/components/CompactRow.d.ts.map +1 -1
  125. package/lib/typescript/commonjs/ui/components/CopyButton.d.ts.map +1 -1
  126. package/lib/typescript/commonjs/ui/components/DevToolsCard.d.ts +3 -1
  127. package/lib/typescript/commonjs/ui/components/DevToolsCard.d.ts.map +1 -1
  128. package/lib/typescript/commonjs/ui/components/DynamicFilterView.d.ts.map +1 -1
  129. package/lib/typescript/commonjs/ui/components/EventStepperFooter.d.ts +2 -0
  130. package/lib/typescript/commonjs/ui/components/EventStepperFooter.d.ts.map +1 -1
  131. package/lib/typescript/commonjs/ui/components/ModalHeader.d.ts.map +1 -1
  132. package/lib/typescript/commonjs/ui/components/StorageTypeBadge.d.ts.map +1 -1
  133. package/lib/typescript/commonjs/ui/components/TabSelector.d.ts +9 -0
  134. package/lib/typescript/commonjs/ui/components/TabSelector.d.ts.map +1 -1
  135. package/lib/typescript/commonjs/ui/components/ValueTypeBadge.d.ts.map +1 -1
  136. package/lib/typescript/commonjs/ui/components/WindowControls.d.ts +4 -2
  137. package/lib/typescript/commonjs/ui/components/WindowControls.d.ts.map +1 -1
  138. package/lib/typescript/commonjs/ui/gameUI/constants/gameUIColors.d.ts +8 -0
  139. package/lib/typescript/commonjs/ui/gameUI/constants/gameUIColors.d.ts.map +1 -1
  140. package/lib/typescript/commonjs/ui/night/nightTheme.d.ts +113 -0
  141. package/lib/typescript/commonjs/ui/night/nightTheme.d.ts.map +1 -0
  142. package/lib/typescript/commonjs/ui/night/primitives.d.ts +111 -0
  143. package/lib/typescript/commonjs/ui/night/primitives.d.ts.map +1 -0
  144. package/lib/typescript/module/JsModal.d.ts +18 -0
  145. package/lib/typescript/module/JsModal.d.ts.map +1 -1
  146. package/lib/typescript/module/JsModal.web.d.ts +13 -0
  147. package/lib/typescript/module/JsModal.web.d.ts.map +1 -1
  148. package/lib/typescript/module/dataViewer/VirtualizedDataExplorer.d.ts.map +1 -1
  149. package/lib/typescript/module/dataViewer/diffThemes.d.ts +3 -1
  150. package/lib/typescript/module/dataViewer/diffThemes.d.ts.map +1 -1
  151. package/lib/typescript/module/dataViewer/tree/TreeDiffViewer.d.ts.map +1 -1
  152. package/lib/typescript/module/hooks/safe-area-impl.d.ts +1 -1
  153. package/lib/typescript/module/icons/lucide-icons.d.ts +12 -1
  154. package/lib/typescript/module/icons/lucide-icons.d.ts.map +1 -1
  155. package/lib/typescript/module/index.d.ts +3 -0
  156. package/lib/typescript/module/index.d.ts.map +1 -1
  157. package/lib/typescript/module/ui/backgrounds/BackgroundSwitcher.d.ts +26 -6
  158. package/lib/typescript/module/ui/backgrounds/BackgroundSwitcher.d.ts.map +1 -1
  159. package/lib/typescript/module/ui/backgrounds/backgroundStore.d.ts +3 -0
  160. package/lib/typescript/module/ui/backgrounds/backgroundStore.d.ts.map +1 -1
  161. package/lib/typescript/module/ui/backgrounds/index.d.ts +7 -1
  162. package/lib/typescript/module/ui/backgrounds/index.d.ts.map +1 -1
  163. package/lib/typescript/module/ui/backgrounds/primitives.d.ts +18 -3
  164. package/lib/typescript/module/ui/backgrounds/primitives.d.ts.map +1 -1
  165. package/lib/typescript/module/ui/backgrounds/registry.d.ts +8 -0
  166. package/lib/typescript/module/ui/backgrounds/registry.d.ts.map +1 -1
  167. package/lib/typescript/module/ui/backgrounds/rng.d.ts +6 -0
  168. package/lib/typescript/module/ui/backgrounds/rng.d.ts.map +1 -1
  169. package/lib/typescript/module/ui/backgrounds/skyClock.d.ts +17 -0
  170. package/lib/typescript/module/ui/backgrounds/skyClock.d.ts.map +1 -0
  171. package/lib/typescript/module/ui/backgrounds/types.d.ts +1 -1
  172. package/lib/typescript/module/ui/backgrounds/types.d.ts.map +1 -1
  173. package/lib/typescript/module/ui/backgrounds/variants/daylight.d.ts +30 -0
  174. package/lib/typescript/module/ui/backgrounds/variants/daylight.d.ts.map +1 -0
  175. package/lib/typescript/module/ui/backgrounds/variants/deepField.d.ts +19 -4
  176. package/lib/typescript/module/ui/backgrounds/variants/deepField.d.ts.map +1 -1
  177. package/lib/typescript/module/ui/backgrounds/variants/hyperspace.d.ts +39 -0
  178. package/lib/typescript/module/ui/backgrounds/variants/hyperspace.d.ts.map +1 -0
  179. package/lib/typescript/module/ui/backgrounds/variants/liveSky.d.ts +41 -0
  180. package/lib/typescript/module/ui/backgrounds/variants/liveSky.d.ts.map +1 -0
  181. package/lib/typescript/module/ui/backgrounds/variants/meteors.d.ts +26 -0
  182. package/lib/typescript/module/ui/backgrounds/variants/meteors.d.ts.map +1 -0
  183. package/lib/typescript/module/ui/backgrounds/variants/moonlight.d.ts +35 -0
  184. package/lib/typescript/module/ui/backgrounds/variants/moonlight.d.ts.map +1 -0
  185. package/lib/typescript/module/ui/backgrounds/variants/underwater.d.ts +51 -0
  186. package/lib/typescript/module/ui/backgrounds/variants/underwater.d.ts.map +1 -0
  187. package/lib/typescript/module/ui/components/Badge.d.ts.map +1 -1
  188. package/lib/typescript/module/ui/components/CompactRow.d.ts +3 -1
  189. package/lib/typescript/module/ui/components/CompactRow.d.ts.map +1 -1
  190. package/lib/typescript/module/ui/components/CopyButton.d.ts.map +1 -1
  191. package/lib/typescript/module/ui/components/DevToolsCard.d.ts +3 -1
  192. package/lib/typescript/module/ui/components/DevToolsCard.d.ts.map +1 -1
  193. package/lib/typescript/module/ui/components/DynamicFilterView.d.ts.map +1 -1
  194. package/lib/typescript/module/ui/components/EventStepperFooter.d.ts +2 -0
  195. package/lib/typescript/module/ui/components/EventStepperFooter.d.ts.map +1 -1
  196. package/lib/typescript/module/ui/components/ModalHeader.d.ts.map +1 -1
  197. package/lib/typescript/module/ui/components/StorageTypeBadge.d.ts.map +1 -1
  198. package/lib/typescript/module/ui/components/TabSelector.d.ts +9 -0
  199. package/lib/typescript/module/ui/components/TabSelector.d.ts.map +1 -1
  200. package/lib/typescript/module/ui/components/ValueTypeBadge.d.ts.map +1 -1
  201. package/lib/typescript/module/ui/components/WindowControls.d.ts +4 -2
  202. package/lib/typescript/module/ui/components/WindowControls.d.ts.map +1 -1
  203. package/lib/typescript/module/ui/gameUI/constants/gameUIColors.d.ts +8 -0
  204. package/lib/typescript/module/ui/gameUI/constants/gameUIColors.d.ts.map +1 -1
  205. package/lib/typescript/module/ui/night/nightTheme.d.ts +113 -0
  206. package/lib/typescript/module/ui/night/nightTheme.d.ts.map +1 -0
  207. package/lib/typescript/module/ui/night/primitives.d.ts +111 -0
  208. package/lib/typescript/module/ui/night/primitives.d.ts.map +1 -0
  209. package/package.json +4 -4
  210. package/lib/commonjs/ui/backgrounds/variants/lattice.js +0 -579
  211. package/lib/commonjs/ui/backgrounds/variants/starfield.js +0 -210
  212. package/lib/module/ui/backgrounds/variants/lattice.js +0 -575
  213. package/lib/module/ui/backgrounds/variants/starfield.js +0 -206
  214. package/lib/typescript/commonjs/ui/backgrounds/variants/lattice.d.ts +0 -33
  215. package/lib/typescript/commonjs/ui/backgrounds/variants/lattice.d.ts.map +0 -1
  216. package/lib/typescript/commonjs/ui/backgrounds/variants/starfield.d.ts +0 -12
  217. package/lib/typescript/commonjs/ui/backgrounds/variants/starfield.d.ts.map +0 -1
  218. package/lib/typescript/module/ui/backgrounds/variants/lattice.d.ts +0 -33
  219. package/lib/typescript/module/ui/backgrounds/variants/lattice.d.ts.map +0 -1
  220. package/lib/typescript/module/ui/backgrounds/variants/starfield.d.ts +0 -12
  221. package/lib/typescript/module/ui/backgrounds/variants/starfield.d.ts.map +0 -1
@@ -10,6 +10,7 @@ exports.StatusBadge = StatusBadge;
10
10
  exports.TypeBadge = TypeBadge;
11
11
  var _reactNative = require("react-native");
12
12
  var _gameUIColors = require("../gameUI/constants/gameUIColors.js");
13
+ var _nightTheme = require("../night/nightTheme.js");
13
14
  var _jsxRuntime = require("react/jsx-runtime");
14
15
  // Badge variants
15
16
 
@@ -19,9 +20,9 @@ const STATUS_COLORS = {
19
20
  error: _gameUIColors.buoyColors.error,
20
21
  warning: _gameUIColors.buoyColors.warning,
21
22
  info: _gameUIColors.buoyColors.primary,
22
- pending: _gameUIColors.buoyColors.textSecondary,
23
+ pending: _nightTheme.night.color.textSecondary,
23
24
  active: _gameUIColors.buoyColors.success,
24
- inactive: _gameUIColors.buoyColors.textMuted,
25
+ inactive: _nightTheme.night.color.textTertiary,
25
26
  stale: _gameUIColors.buoyColors.warning,
26
27
  fetching: _gameUIColors.buoyColors.primary
27
28
  };
@@ -31,9 +32,9 @@ const METHOD_COLORS = {
31
32
  GET: _gameUIColors.buoyColors.success,
32
33
  POST: _gameUIColors.buoyColors.primary,
33
34
  PUT: _gameUIColors.buoyColors.warning,
34
- PATCH: _gameUIColors.buoyColors.textSecondary,
35
+ PATCH: _nightTheme.night.color.textSecondary,
35
36
  DELETE: _gameUIColors.buoyColors.error,
36
- HEAD: _gameUIColors.buoyColors.textMuted,
37
+ HEAD: _nightTheme.night.color.textTertiary,
37
38
  OPTIONS: _gameUIColors.buoyColors.primary
38
39
  };
39
40
 
@@ -191,13 +192,13 @@ function getTypeColor(type) {
191
192
  string: _gameUIColors.buoyColors.primary,
192
193
  number: _gameUIColors.buoyColors.primary,
193
194
  boolean: _gameUIColors.buoyColors.primary,
194
- object: _gameUIColors.buoyColors.textSecondary,
195
- array: _gameUIColors.buoyColors.textSecondary,
196
- null: _gameUIColors.buoyColors.textMuted,
197
- undefined: _gameUIColors.buoyColors.textMuted,
198
- function: _gameUIColors.buoyColors.textSecondary
195
+ object: _nightTheme.night.color.textSecondary,
196
+ array: _nightTheme.night.color.textSecondary,
197
+ null: _nightTheme.night.color.textTertiary,
198
+ undefined: _nightTheme.night.color.textTertiary,
199
+ function: _nightTheme.night.color.textSecondary
199
200
  };
200
- return typeColors[type.toLowerCase()] || _gameUIColors.buoyColors.textMuted;
201
+ return typeColors[type.toLowerCase()] || _nightTheme.night.color.textTertiary;
201
202
  }
202
203
  const styles = _reactNative.StyleSheet.create({
203
204
  statusDot: {
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.CompactRow = CompactRow;
7
7
  var _reactNative = require("react-native");
8
8
  var _index = require("../../icons/index.js");
9
- var _gameUIColors = require("../gameUI/constants/gameUIColors.js");
9
+ var _nightTheme = require("../night/nightTheme.js");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  function CompactRow({
12
12
  statusDotColor,
@@ -25,19 +25,27 @@ function CompactRow({
25
25
  isSelected,
26
26
  onPress,
27
27
  disabled,
28
- expandedGlowColor
28
+ expandedGlowColor,
29
+ testID,
30
+ accessibilityLabel
29
31
  }) {
30
32
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
31
- style: styles.rowWrapper,
33
+ style: [styles.rowWrapper, isExpanded && styles.rowWrapperExpanded],
32
34
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
33
35
  style: [styles.row, isSelected && styles.selectedRow, isExpanded && [styles.expandedRowActive, {
34
- borderColor: expandedGlowColor || _gameUIColors.buoyColors.primary,
35
- shadowColor: expandedGlowColor || _gameUIColors.buoyColors.primary
36
+ borderColor: expandedGlowColor || _nightTheme.night.color.accent,
37
+ // The resting hairline sets borderBottomColor specifically, and a
38
+ // specific side always beats the generic borderColor — restate it
39
+ // or the expanded card's bottom edge keeps the faint separator.
40
+ borderBottomColor: expandedGlowColor || _nightTheme.night.color.accent,
41
+ shadowColor: expandedGlowColor || _nightTheme.night.color.accent
36
42
  }]],
37
43
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
38
44
  onPress: onPress,
39
45
  activeOpacity: 0.8,
40
46
  disabled: disabled || !onPress,
47
+ testID: testID,
48
+ accessibilityLabel: accessibilityLabel,
41
49
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
42
50
  style: styles.rowContent,
43
51
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
@@ -92,10 +100,10 @@ function CompactRow({
92
100
  style: styles.chevronContainer,
93
101
  children: isExpanded ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ChevronDown, {
94
102
  size: 14,
95
- color: _gameUIColors.buoyColors.textMuted
103
+ color: _nightTheme.night.color.textTertiary
96
104
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ChevronRight, {
97
105
  size: 14,
98
- color: _gameUIColors.buoyColors.textMuted
106
+ color: _nightTheme.night.color.textTertiary
99
107
  })
100
108
  })]
101
109
  })]
@@ -113,15 +121,23 @@ const styles = _reactNative.StyleSheet.create({
113
121
  marginHorizontal: 8,
114
122
  marginVertical: 3
115
123
  },
124
+ /** The expanded card scales to 1.02 and grows a 2px glow border, which eats
125
+ * the 3px resting margin — without extra room its bottom edge sits on the
126
+ * next card. */
127
+ rowWrapperExpanded: {
128
+ marginVertical: 12
129
+ },
116
130
  row: {
117
- backgroundColor: _gameUIColors.buoyColors.card,
131
+ // Translucent night scrim so the shared ToolBackground reads through —
132
+ // kept in step with DevToolsCard (same fill, same luminance contract).
133
+ backgroundColor: "rgba(12, 12, 12, 0.9)",
118
134
  borderRadius: 8,
119
135
  borderWidth: 1,
120
- borderColor: _gameUIColors.buoyColors.border + "40",
136
+ borderColor: _nightTheme.night.color.border,
121
137
  // …separated by a single hairline instead of four borders per row.
122
138
  // Declared after borderWidth so the specific side wins on the chat path.
123
139
  borderBottomWidth: 1,
124
- borderBottomColor: _gameUIColors.buoyColors.border + "40",
140
+ borderBottomColor: _nightTheme.night.color.separator,
125
141
  padding: 12,
126
142
  paddingHorizontal: 12,
127
143
  transform: [{
@@ -131,12 +147,12 @@ const styles = _reactNative.StyleSheet.create({
131
147
  selectedRow: {
132
148
  // Neutral fill, no outline, no lift — the same selection language as the
133
149
  // sidebar. The classic path keeps its tinted, scaled, glowing card.
134
- backgroundColor: _gameUIColors.buoyColors.primary + "15",
135
- borderColor: _gameUIColors.buoyColors.primary + "50",
150
+ backgroundColor: _nightTheme.night.color.accentSoft,
151
+ borderColor: _nightTheme.night.color.accentBorderStrong,
136
152
  transform: [{
137
153
  scale: 1.01
138
154
  }],
139
- shadowColor: _gameUIColors.buoyColors.primary,
155
+ shadowColor: _nightTheme.night.color.accent,
140
156
  shadowOffset: {
141
157
  width: 0,
142
158
  height: 0
@@ -150,6 +166,7 @@ const styles = _reactNative.StyleSheet.create({
150
166
  scale: 1.02
151
167
  }],
152
168
  borderWidth: 2,
169
+ paddingBottom: 16,
153
170
  shadowOffset: {
154
171
  width: 0,
155
172
  height: 0
@@ -187,7 +204,7 @@ const styles = _reactNative.StyleSheet.create({
187
204
  },
188
205
  observerText: {
189
206
  fontSize: 10,
190
- color: _gameUIColors.buoyColors.textMuted,
207
+ color: _nightTheme.night.color.textTertiary,
191
208
  marginTop: 1
192
209
  },
193
210
  querySection: {
@@ -197,7 +214,7 @@ const styles = _reactNative.StyleSheet.create({
197
214
  queryHash: {
198
215
  fontFamily: "monospace",
199
216
  fontSize: 12,
200
- color: _gameUIColors.buoyColors.text,
217
+ color: _nightTheme.night.color.text,
201
218
  lineHeight: 16
202
219
  },
203
220
  secondaryRow: {
@@ -208,7 +225,7 @@ const styles = _reactNative.StyleSheet.create({
208
225
  },
209
226
  secondaryText: {
210
227
  fontSize: 10,
211
- color: _gameUIColors.buoyColors.textMuted,
228
+ color: _nightTheme.night.color.textTertiary,
212
229
  marginTop: 1
213
230
  },
214
231
  rightSection: {
@@ -233,12 +250,12 @@ const styles = _reactNative.StyleSheet.create({
233
250
  marginTop: 8,
234
251
  paddingTop: 8,
235
252
  borderTopWidth: 1,
236
- borderTopColor: _gameUIColors.buoyColors.border + "20",
253
+ borderTopColor: _nightTheme.night.color.separator,
237
254
  marginLeft: 24 // Align with content after status dot
238
255
  },
239
256
  bottomRightText: {
240
257
  fontSize: 9,
241
- color: _gameUIColors.buoyColors.textMuted,
258
+ color: _nightTheme.night.color.textTertiary,
242
259
  fontFamily: "monospace"
243
260
  }
244
261
  });
@@ -188,10 +188,10 @@ const CopyButton = exports.CopyButton = /*#__PURE__*/(0, _react.memo)(function C
188
188
  onPress: copyState === "idle" || !isPro ? handlePress : undefined,
189
189
  activeOpacity: 0.7,
190
190
  hitSlop: {
191
- top: 8,
192
- bottom: 8,
193
- left: 8,
194
- right: 8
191
+ top: 4,
192
+ bottom: 4,
193
+ left: 4,
194
+ right: 4
195
195
  },
196
196
  accessibilityLabel: copyState === "idle" ? "Copy to clipboard" : copyState === "success" ? "Copied to clipboard" : "Failed to copy",
197
197
  accessibilityRole: "button",
@@ -216,6 +216,8 @@ const styles = _reactNative.StyleSheet.create({
216
216
  padding: 4,
217
217
  justifyContent: "center",
218
218
  alignItems: "center",
219
+ alignSelf: "flex-start",
220
+ overflow: "hidden",
219
221
  // Only relevant when a `label` is present; a bare icon button has one
220
222
  // child, so the row direction and gap cost it nothing.
221
223
  flexDirection: "row",
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.DEVTOOLS_CARD_CONSTANTS = void 0;
7
7
  exports.DevToolsCard = DevToolsCard;
8
8
  var _reactNative = require("react-native");
9
- var _gameUIColors = require("../gameUI/constants/gameUIColors.js");
9
+ var _nightTheme = require("../night/nightTheme.js");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  /**
12
12
  * DevToolsCard
@@ -48,7 +48,8 @@ function DevToolsCard({
48
48
  activeOpacity = 0.8,
49
49
  style,
50
50
  contentStyle,
51
- testID
51
+ testID,
52
+ accessibilityLabel
52
53
  }) {
53
54
  const isInteractive = !!onPress || !!onLongPress;
54
55
 
@@ -57,6 +58,7 @@ function DevToolsCard({
57
58
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
58
59
  style: [styles.wrapper, style],
59
60
  testID: testID,
61
+ accessibilityLabel: accessibilityLabel,
60
62
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
61
63
  style: [styles.card, isSelected && styles.selectedCard, contentStyle],
62
64
  children: children
@@ -74,6 +76,7 @@ function DevToolsCard({
74
76
  activeOpacity: activeOpacity,
75
77
  disabled: disabled,
76
78
  testID: testID,
79
+ accessibilityLabel: accessibilityLabel,
77
80
  children: children
78
81
  })
79
82
  });
@@ -89,23 +92,27 @@ const styles = _reactNative.StyleSheet.create({
89
92
  marginVertical: DEVTOOLS_CARD_CONSTANTS.marginVertical
90
93
  },
91
94
  card: {
92
- backgroundColor: _gameUIColors.buoyColors.card,
95
+ // Translucent night scrim — same luminance contract as the old
96
+ // buoyColors.cardScrim (backing stays readable under the brightest
97
+ // scenes), re-based on the night surface so the ToolBackground reads
98
+ // through every tool's card lists, not only around them.
99
+ backgroundColor: "rgba(12, 12, 12, 0.9)",
93
100
  borderRadius: DEVTOOLS_CARD_CONSTANTS.borderRadius,
94
101
  borderWidth: DEVTOOLS_CARD_CONSTANTS.borderWidth,
95
- borderColor: _gameUIColors.buoyColors.border + "40",
102
+ borderColor: _nightTheme.night.color.border,
96
103
  // The separator. On classic this just re-states the full outline; on chat
97
104
  // it is the ONLY edge the row has.
98
105
  borderBottomWidth: 1,
99
- borderBottomColor: _gameUIColors.buoyColors.border + "40",
106
+ borderBottomColor: _nightTheme.night.color.separator,
100
107
  padding: DEVTOOLS_CARD_CONSTANTS.padding,
101
108
  paddingHorizontal: DEVTOOLS_CARD_CONSTANTS.padding,
102
109
  minHeight: DEVTOOLS_CARD_CONSTANTS.minHeight
103
110
  },
104
111
  selectedCard: {
105
- // Neutral grey fill, no tinted outline and no lift — see CompactRow.
106
- backgroundColor: _gameUIColors.buoyColors.primary + "15",
107
- borderColor: _gameUIColors.buoyColors.primary + "50",
108
- shadowColor: _gameUIColors.buoyColors.primary,
112
+ // The night selection language: soft accent fill + accent border.
113
+ backgroundColor: _nightTheme.night.color.accentSoft,
114
+ borderColor: _nightTheme.night.color.accentBorderStrong,
115
+ shadowColor: _nightTheme.night.color.accent,
109
116
  shadowOffset: {
110
117
  width: 0,
111
118
  height: 0
@@ -11,6 +11,7 @@ var _SectionHeader = require("./SectionHeader.js");
11
11
  var _FilterComponents = require("./FilterComponents.js");
12
12
  var _useFilterManager = require("../../hooks/useFilterManager.js");
13
13
  var _gameUIColors = require("../gameUI/constants/gameUIColors.js");
14
+ var _nightTheme = require("../night/nightTheme.js");
14
15
  var _jsxRuntime = require("react/jsx-runtime");
15
16
  function DynamicFilterView({
16
17
  sections = [],
@@ -64,7 +65,7 @@ function DynamicFilterView({
64
65
  style: [styles.tabButton, currentActiveTab === tab.id ? styles.tabButtonActive : styles.tabButtonInactive],
65
66
  children: [tab.icon && /*#__PURE__*/(0, _jsxRuntime.jsx)(tab.icon, {
66
67
  size: 14,
67
- color: currentActiveTab === tab.id ? _gameUIColors.buoyColors.primary : _gameUIColors.buoyColors.textMuted
68
+ color: currentActiveTab === tab.id ? _gameUIColors.buoyColors.primary : _nightTheme.night.color.textTertiary
68
69
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
69
70
  style: [styles.tabButtonText, currentActiveTab === tab.id ? styles.tabButtonTextActive : styles.tabButtonTextInactive],
70
71
  children: tab.label
@@ -304,7 +305,7 @@ function DynamicFilterView({
304
305
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_SectionHeader.SectionHeader, {
305
306
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SectionHeader.SectionHeader.Icon, {
306
307
  icon: howItWorksSection.icon || _index.Filter,
307
- color: _gameUIColors.buoyColors.textSecondary,
308
+ color: _nightTheme.night.color.textSecondary,
308
309
  size: 12
309
310
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_SectionHeader.SectionHeader.Title, {
310
311
  children: howItWorksSection.title || "HOW FILTERS WORK"
@@ -355,7 +356,8 @@ function DynamicFilterView({
355
356
  const styles = _reactNative.StyleSheet.create({
356
357
  container: {
357
358
  flex: 1,
358
- backgroundColor: _gameUIColors.buoyColors.base
359
+ // Transparent so the host modal's night star field shows through.
360
+ backgroundColor: "transparent"
359
361
  },
360
362
  content: {
361
363
  flex: 1
@@ -370,9 +372,9 @@ const styles = _reactNative.StyleSheet.create({
370
372
  paddingHorizontal: 16,
371
373
  paddingVertical: 12,
372
374
  gap: 8,
373
- backgroundColor: _gameUIColors.buoyColors.card,
375
+ backgroundColor: _nightTheme.night.color.surface,
374
376
  borderBottomWidth: 1,
375
- borderBottomColor: _gameUIColors.buoyColors.border
377
+ borderBottomColor: _nightTheme.night.color.border
376
378
  },
377
379
  tabButton: {
378
380
  flex: 1,
@@ -392,14 +394,14 @@ const styles = _reactNative.StyleSheet.create({
392
394
  */
393
395
  tabButtonActive: {
394
396
  // White THUMB, not a grey one — the INACTIVE tab is already
395
- // `buoyColors.hover` here, so a grey active state would be invisible.
397
+ // `night.color.surfaceElevated` here, so a grey active state would be invisible.
396
398
  backgroundColor: _gameUIColors.buoyColors.primary + "20",
397
399
  borderColor: _gameUIColors.buoyColors.primary,
398
400
  borderWidth: 2
399
401
  },
400
402
  tabButtonInactive: {
401
- backgroundColor: _gameUIColors.buoyColors.hover,
402
- borderColor: _gameUIColors.buoyColors.border
403
+ backgroundColor: _nightTheme.night.color.surfaceElevated,
404
+ borderColor: _nightTheme.night.color.border
403
405
  },
404
406
  tabButtonText: {
405
407
  fontSize: 11,
@@ -410,7 +412,7 @@ const styles = _reactNative.StyleSheet.create({
410
412
  color: _gameUIColors.buoyColors.primary
411
413
  },
412
414
  tabButtonTextInactive: {
413
- color: _gameUIColors.buoyColors.textMuted
415
+ color: _nightTheme.night.color.textTertiary
414
416
  },
415
417
  tabBadge: {
416
418
  backgroundColor: _gameUIColors.buoyColors.primary + "40",
@@ -438,7 +440,7 @@ const styles = _reactNative.StyleSheet.create({
438
440
  marginTop: 8
439
441
  },
440
442
  filterCard: {
441
- backgroundColor: _gameUIColors.buoyColors.card,
443
+ backgroundColor: _nightTheme.night.color.surface,
442
444
  borderRadius: 12,
443
445
  // rounded-xl
444
446
  paddingHorizontal: 8,
@@ -447,7 +449,7 @@ const styles = _reactNative.StyleSheet.create({
447
449
  alignItems: "center",
448
450
  justifyContent: "center",
449
451
  borderWidth: 1,
450
- borderColor: _gameUIColors.buoyColors.border,
452
+ borderColor: _nightTheme.night.color.border,
451
453
  width: 72,
452
454
  minHeight: 68
453
455
  },
@@ -471,7 +473,7 @@ const styles = _reactNative.StyleSheet.create({
471
473
  filterCountActive: {
472
474
  fontSize: 14,
473
475
  fontWeight: "700",
474
- color: _gameUIColors.buoyColors.text,
476
+ color: _nightTheme.night.color.text,
475
477
  fontFamily: "monospace",
476
478
  marginTop: 3,
477
479
  marginBottom: 1,
@@ -485,14 +487,14 @@ const styles = _reactNative.StyleSheet.create({
485
487
  filterCountZero: {
486
488
  fontSize: 11,
487
489
  fontWeight: "500",
488
- color: _gameUIColors.buoyColors.textMuted,
490
+ color: _nightTheme.night.color.textTertiary,
489
491
  fontFamily: "monospace",
490
492
  marginTop: 3,
491
493
  marginBottom: 1
492
494
  },
493
495
  filterLabelCompact: {
494
496
  fontSize: 10,
495
- color: _gameUIColors.buoyColors.text,
497
+ color: _nightTheme.night.color.text,
496
498
  fontWeight: "600",
497
499
  textAlign: "center",
498
500
  textTransform: "capitalize",
@@ -505,14 +507,14 @@ const styles = _reactNative.StyleSheet.create({
505
507
  },
506
508
  filterDescriptionBottom: {
507
509
  fontSize: 8,
508
- color: _gameUIColors.buoyColors.textMuted,
510
+ color: _nightTheme.night.color.textTertiary,
509
511
  textAlign: "center",
510
512
  marginTop: 2,
511
513
  lineHeight: 11
512
514
  },
513
515
  sectionDescription: {
514
516
  fontSize: 10,
515
- color: _gameUIColors.buoyColors.textSecondary,
517
+ color: _nightTheme.night.color.textSecondary,
516
518
  marginTop: 4,
517
519
  marginBottom: 4,
518
520
  lineHeight: 14
@@ -533,11 +535,11 @@ const styles = _reactNative.StyleSheet.create({
533
535
  fontFamily: "monospace"
534
536
  },
535
537
  activeFiltersSection: {
536
- backgroundColor: _gameUIColors.buoyColors.card,
538
+ backgroundColor: _nightTheme.night.color.surface,
537
539
  borderRadius: 16,
538
540
  // rounded-2xl like web
539
541
  borderWidth: 1,
540
- borderColor: _gameUIColors.buoyColors.border,
542
+ borderColor: _nightTheme.night.color.border,
541
543
  marginTop: 16,
542
544
  overflow: "hidden"
543
545
  },
@@ -548,17 +550,17 @@ const styles = _reactNative.StyleSheet.create({
548
550
  maxHeight: 200
549
551
  },
550
552
  includeOnlySection: {
551
- backgroundColor: _gameUIColors.buoyColors.card,
553
+ backgroundColor: _nightTheme.night.color.surface,
552
554
  borderRadius: 16,
553
555
  // rounded-2xl like web
554
556
  borderWidth: 1,
555
- borderColor: _gameUIColors.buoyColors.border,
557
+ borderColor: _nightTheme.night.color.border,
556
558
  marginTop: 16,
557
559
  overflow: "hidden"
558
560
  },
559
561
  includeOnlyDescription: {
560
562
  fontSize: 10,
561
- color: _gameUIColors.buoyColors.textSecondary,
563
+ color: _nightTheme.night.color.textSecondary,
562
564
  paddingHorizontal: 16,
563
565
  paddingTop: 8,
564
566
  lineHeight: 14
@@ -574,17 +576,17 @@ const styles = _reactNative.StyleSheet.create({
574
576
  maxHeight: 150
575
577
  },
576
578
  excludeFiltersSection: {
577
- backgroundColor: _gameUIColors.buoyColors.card,
579
+ backgroundColor: _nightTheme.night.color.surface,
578
580
  borderRadius: 16,
579
581
  // rounded-2xl like web
580
582
  borderWidth: 1,
581
- borderColor: _gameUIColors.buoyColors.border,
583
+ borderColor: _nightTheme.night.color.border,
582
584
  marginTop: 16,
583
585
  overflow: "hidden"
584
586
  },
585
587
  excludeFiltersDescription: {
586
588
  fontSize: 10,
587
- color: _gameUIColors.buoyColors.textSecondary,
589
+ color: _nightTheme.night.color.textSecondary,
588
590
  paddingHorizontal: 16,
589
591
  paddingTop: 8,
590
592
  lineHeight: 14
@@ -620,7 +622,7 @@ const styles = _reactNative.StyleSheet.create({
620
622
  },
621
623
  filterSummaryText: {
622
624
  fontSize: 11,
623
- color: _gameUIColors.buoyColors.text,
625
+ color: _nightTheme.night.color.text,
624
626
  lineHeight: 16
625
627
  },
626
628
  filterSummaryInclude: {
@@ -633,17 +635,17 @@ const styles = _reactNative.StyleSheet.create({
633
635
  },
634
636
  emptyStateText: {
635
637
  fontSize: 11,
636
- color: _gameUIColors.buoyColors.textMuted,
638
+ color: _nightTheme.night.color.textTertiary,
637
639
  fontStyle: "italic",
638
640
  textAlign: "center",
639
641
  paddingVertical: 12
640
642
  },
641
643
  availableKeysSection: {
642
- backgroundColor: _gameUIColors.buoyColors.card,
644
+ backgroundColor: _nightTheme.night.color.surface,
643
645
  borderRadius: 16,
644
646
  // rounded-2xl like web
645
647
  borderWidth: 1,
646
- borderColor: _gameUIColors.buoyColors.border,
648
+ borderColor: _nightTheme.night.color.border,
647
649
  marginTop: 16,
648
650
  overflow: "hidden"
649
651
  },
@@ -659,31 +661,31 @@ const styles = _reactNative.StyleSheet.create({
659
661
  justifyContent: "space-between",
660
662
  paddingVertical: 10,
661
663
  paddingHorizontal: 12,
662
- backgroundColor: _gameUIColors.buoyColors.hover,
664
+ backgroundColor: _nightTheme.night.color.surfaceElevated,
663
665
  borderRadius: 8,
664
666
  borderWidth: 1,
665
- borderColor: _gameUIColors.buoyColors.border,
667
+ borderColor: _nightTheme.night.color.border,
666
668
  marginBottom: 8
667
669
  },
668
670
  availableKeyText: {
669
671
  flex: 1,
670
672
  fontSize: 11,
671
- color: _gameUIColors.buoyColors.text,
673
+ color: _nightTheme.night.color.text,
672
674
  fontFamily: "monospace",
673
675
  marginRight: 8
674
676
  },
675
677
  howItWorksSection: {
676
- backgroundColor: _gameUIColors.buoyColors.card,
678
+ backgroundColor: _nightTheme.night.color.surface,
677
679
  borderRadius: 16,
678
680
  // rounded-2xl like web
679
681
  borderWidth: 1,
680
- borderColor: _gameUIColors.buoyColors.border,
682
+ borderColor: _nightTheme.night.color.border,
681
683
  marginTop: 16,
682
684
  overflow: "hidden"
683
685
  },
684
686
  howItWorksText: {
685
687
  fontSize: 11,
686
- color: _gameUIColors.buoyColors.textSecondary,
688
+ color: _nightTheme.night.color.textSecondary,
687
689
  lineHeight: 16,
688
690
  marginBottom: 12,
689
691
  marginTop: 8,
@@ -695,29 +697,29 @@ const styles = _reactNative.StyleSheet.create({
695
697
  paddingHorizontal: 16,
696
698
  paddingBottom: 16,
697
699
  borderTopWidth: 1,
698
- borderTopColor: _gameUIColors.buoyColors.border
700
+ borderTopColor: _nightTheme.night.color.border
699
701
  },
700
702
  examplesTitle: {
701
703
  fontSize: 10,
702
704
  fontWeight: "600",
703
- color: _gameUIColors.buoyColors.textMuted,
705
+ color: _nightTheme.night.color.textTertiary,
704
706
  fontFamily: "monospace",
705
707
  letterSpacing: 0.5,
706
708
  marginBottom: 6
707
709
  },
708
710
  exampleItem: {
709
711
  fontSize: 10,
710
- color: _gameUIColors.buoyColors.textMuted,
712
+ color: _nightTheme.night.color.textTertiary,
711
713
  fontFamily: "monospace",
712
714
  lineHeight: 16
713
715
  },
714
716
  previewSection: {
715
- backgroundColor: _gameUIColors.buoyColors.hover,
717
+ backgroundColor: _nightTheme.night.color.surfaceElevated,
716
718
  // Slightly lighter to distinguish from other sections
717
719
  borderRadius: 16,
718
720
  // rounded-2xl like web
719
721
  borderWidth: 1,
720
- borderColor: _gameUIColors.buoyColors.borderStrong,
722
+ borderColor: _nightTheme.night.color.fillTertiary,
721
723
  marginTop: 16,
722
724
  overflow: "hidden"
723
725
  },
@@ -725,12 +727,12 @@ const styles = _reactNative.StyleSheet.create({
725
727
  paddingHorizontal: 16,
726
728
  paddingTop: 12,
727
729
  paddingBottom: 16,
728
- backgroundColor: _gameUIColors.buoyColors.base,
730
+ backgroundColor: _nightTheme.night.color.bg,
729
731
  // Darker content area for contrast
730
732
  marginHorizontal: 12,
731
733
  marginBottom: 12,
732
734
  borderRadius: 8,
733
735
  borderWidth: 1,
734
- borderColor: _gameUIColors.buoyColors.border
736
+ borderColor: _nightTheme.night.color.border
735
737
  }
736
738
  });