@buoy-gg/shared-ui 7.0.33 → 7.0.35

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 (323) hide show
  1. package/lib/commonjs/JsModal.js +57 -22
  2. package/lib/commonjs/dataViewer/CyberpunkInput.js +3 -2
  3. package/lib/commonjs/dataViewer/DataTreeActionBar.js +3 -2
  4. package/lib/commonjs/dataViewer/DataTreeActionDock.js +2 -1
  5. package/lib/commonjs/dataViewer/DiffSummary.js +4 -3
  6. package/lib/commonjs/dataViewer/LiveExplorer.js +11 -10
  7. package/lib/commonjs/dataViewer/SplitDiffViewer.js +10 -9
  8. package/lib/commonjs/dataViewer/ThemedSplitView.js +12 -11
  9. package/lib/commonjs/dataViewer/ValueEditModal.js +6 -5
  10. package/lib/commonjs/dataViewer/VirtualizedDataExplorer.js +4 -3
  11. package/lib/commonjs/dataViewer/tree/TreeDiffViewer.js +15 -14
  12. package/lib/commonjs/hooks/index.js +26 -0
  13. package/lib/commonjs/hooks/safe-area-impl.js +1 -1
  14. package/lib/commonjs/hooks/useChangeLog.js +55 -0
  15. package/lib/commonjs/hooks/useEventStoreEvents.js +65 -0
  16. package/lib/commonjs/hooks/usePersistedState.js +45 -10
  17. package/lib/commonjs/icons/index.js +533 -1
  18. package/lib/commonjs/index.js +143 -0
  19. package/lib/commonjs/license/FreeAccountPrompt.js +2 -1
  20. package/lib/commonjs/license/LicenseEntryModal.js +2 -1
  21. package/lib/commonjs/storage/definePersistedSetting.js +67 -0
  22. package/lib/commonjs/storage/index.js +8 -1
  23. package/lib/commonjs/stores/ChangeLog.js +197 -0
  24. package/lib/commonjs/stores/createToolStore.js +175 -0
  25. package/lib/commonjs/stores/index.js +15 -1
  26. package/lib/commonjs/sync/toolSyncAdapter.js +63 -0
  27. package/lib/commonjs/sync/wireForm.js +172 -0
  28. package/lib/commonjs/tools/defineTool.js +79 -0
  29. package/lib/commonjs/ui/components/ChangeRow.js +111 -0
  30. package/lib/commonjs/ui/components/ChipStrip.js +94 -0
  31. package/lib/commonjs/ui/components/ClipboardHintBanner.js +2 -1
  32. package/lib/commonjs/ui/components/CompactRow.js +3 -2
  33. package/lib/commonjs/ui/components/DataInspector.js +3 -2
  34. package/lib/commonjs/ui/components/DetailView.js +2 -1
  35. package/lib/commonjs/ui/components/DetailViewToggle.js +130 -0
  36. package/lib/commonjs/ui/components/DevToolsCard.js +3 -1
  37. package/lib/commonjs/ui/components/DynamicFilterView.js +8 -7
  38. package/lib/commonjs/ui/components/EntityFilterView.js +355 -0
  39. package/lib/commonjs/ui/components/EventHistoryViewer/CompareBar.js +5 -4
  40. package/lib/commonjs/ui/components/EventHistoryViewer/DiffModeTabs.js +2 -1
  41. package/lib/commonjs/ui/components/EventHistoryViewer/EventPickerModal.js +5 -4
  42. package/lib/commonjs/ui/components/EventStepperFooter.js +4 -3
  43. package/lib/commonjs/ui/components/ExpandablePopover.js +12 -4
  44. package/lib/commonjs/ui/components/ExpandedInfoRow.js +3 -2
  45. package/lib/commonjs/ui/components/ExportPreview.js +174 -0
  46. package/lib/commonjs/ui/components/FilterComponents.js +2 -1
  47. package/lib/commonjs/ui/components/InfoRow.js +91 -0
  48. package/lib/commonjs/ui/components/ModalHeader.js +40 -7
  49. package/lib/commonjs/ui/components/Pill.js +115 -0
  50. package/lib/commonjs/ui/components/ToggleRow.js +116 -0
  51. package/lib/commonjs/ui/components/ToolFooter.js +205 -0
  52. package/lib/commonjs/ui/components/index.js +100 -1
  53. package/lib/commonjs/ui/console/CyberpunkSectionButton.js +3 -2
  54. package/lib/commonjs/ui/fonts.js +12 -0
  55. package/lib/commonjs/ui/gameUI/components/GameUICollapsibleSection.js +4 -3
  56. package/lib/commonjs/ui/gameUI/components/GameUICompactStats.js +12 -11
  57. package/lib/commonjs/ui/gameUI/components/GameUIIssuesList.js +9 -8
  58. package/lib/commonjs/ui/gameUI/components/GameUIStatusHeader.js +4 -3
  59. package/lib/commonjs/ui/index.js +32 -2
  60. package/lib/commonjs/ui/listPresets.js +43 -0
  61. package/lib/commonjs/ui/night/primitives.js +3 -1
  62. package/lib/commonjs/ui/toolTheme.js +4 -3
  63. package/lib/commonjs/utils/snapshotProviderKit.js +167 -0
  64. package/lib/commonjs/utils/stateTools.js +160 -0
  65. package/lib/module/JsModal.js +57 -22
  66. package/lib/module/dataViewer/CyberpunkInput.js +3 -2
  67. package/lib/module/dataViewer/DataTreeActionBar.js +3 -2
  68. package/lib/module/dataViewer/DataTreeActionDock.js +2 -1
  69. package/lib/module/dataViewer/DiffSummary.js +4 -3
  70. package/lib/module/dataViewer/LiveExplorer.js +11 -11
  71. package/lib/module/dataViewer/SplitDiffViewer.js +10 -9
  72. package/lib/module/dataViewer/ThemedSplitView.js +12 -11
  73. package/lib/module/dataViewer/ValueEditModal.js +6 -5
  74. package/lib/module/dataViewer/VirtualizedDataExplorer.js +5 -4
  75. package/lib/module/dataViewer/tree/TreeDiffViewer.js +15 -15
  76. package/lib/module/hooks/index.js +3 -1
  77. package/lib/module/hooks/safe-area-impl.js +1 -1
  78. package/lib/module/hooks/useChangeLog.js +50 -0
  79. package/lib/module/hooks/useEventStoreEvents.js +61 -0
  80. package/lib/module/hooks/usePersistedState.js +44 -10
  81. package/lib/module/icons/index.js +27 -2
  82. package/lib/module/index.js +11 -1
  83. package/lib/module/license/FreeAccountPrompt.js +2 -2
  84. package/lib/module/license/LicenseEntryModal.js +3 -3
  85. package/lib/module/storage/definePersistedSetting.js +63 -0
  86. package/lib/module/storage/index.js +2 -1
  87. package/lib/module/stores/ChangeLog.js +192 -0
  88. package/lib/module/stores/createToolStore.js +171 -0
  89. package/lib/module/stores/index.js +3 -1
  90. package/lib/module/sync/toolSyncAdapter.js +58 -0
  91. package/lib/module/sync/wireForm.js +159 -0
  92. package/lib/module/tools/defineTool.js +74 -0
  93. package/lib/module/ui/components/ChangeRow.js +106 -0
  94. package/lib/module/ui/components/ChipStrip.js +91 -0
  95. package/lib/module/ui/components/ClipboardHintBanner.js +2 -1
  96. package/lib/module/ui/components/CompactRow.js +3 -2
  97. package/lib/module/ui/components/DataInspector.js +3 -2
  98. package/lib/module/ui/components/DetailView.js +2 -1
  99. package/lib/module/ui/components/DetailViewToggle.js +125 -0
  100. package/lib/module/ui/components/DevToolsCard.js +3 -1
  101. package/lib/module/ui/components/DynamicFilterView.js +8 -7
  102. package/lib/module/ui/components/EntityFilterView.js +351 -0
  103. package/lib/module/ui/components/EventHistoryViewer/CompareBar.js +6 -5
  104. package/lib/module/ui/components/EventHistoryViewer/DiffModeTabs.js +3 -2
  105. package/lib/module/ui/components/EventHistoryViewer/EventPickerModal.js +6 -5
  106. package/lib/module/ui/components/EventStepperFooter.js +4 -3
  107. package/lib/module/ui/components/ExpandablePopover.js +12 -4
  108. package/lib/module/ui/components/ExpandedInfoRow.js +3 -2
  109. package/lib/module/ui/components/ExportPreview.js +169 -0
  110. package/lib/module/ui/components/FilterComponents.js +2 -2
  111. package/lib/module/ui/components/InfoRow.js +87 -0
  112. package/lib/module/ui/components/ModalHeader.js +40 -7
  113. package/lib/module/ui/components/Pill.js +111 -0
  114. package/lib/module/ui/components/ToggleRow.js +112 -0
  115. package/lib/module/ui/components/ToolFooter.js +197 -0
  116. package/lib/module/ui/components/index.js +10 -1
  117. package/lib/module/ui/console/CyberpunkSectionButton.js +3 -2
  118. package/lib/module/ui/fonts.js +8 -0
  119. package/lib/module/ui/gameUI/components/GameUICollapsibleSection.js +4 -3
  120. package/lib/module/ui/gameUI/components/GameUICompactStats.js +12 -11
  121. package/lib/module/ui/gameUI/components/GameUIIssuesList.js +9 -8
  122. package/lib/module/ui/gameUI/components/GameUIStatusHeader.js +4 -3
  123. package/lib/module/ui/index.js +7 -1
  124. package/lib/module/ui/listPresets.js +39 -0
  125. package/lib/module/ui/night/primitives.js +3 -1
  126. package/lib/module/ui/toolTheme.js +4 -4
  127. package/lib/module/utils/snapshotProviderKit.js +156 -0
  128. package/lib/module/utils/stateTools.js +154 -0
  129. package/lib/typescript/commonjs/JsModal.d.ts.map +1 -1
  130. package/lib/typescript/commonjs/dataViewer/CyberpunkInput.d.ts.map +1 -1
  131. package/lib/typescript/commonjs/dataViewer/DataTreeActionBar.d.ts.map +1 -1
  132. package/lib/typescript/commonjs/dataViewer/DataTreeActionDock.d.ts.map +1 -1
  133. package/lib/typescript/commonjs/dataViewer/DiffSummary.d.ts.map +1 -1
  134. package/lib/typescript/commonjs/dataViewer/LiveExplorer.d.ts.map +1 -1
  135. package/lib/typescript/commonjs/dataViewer/SplitDiffViewer.d.ts.map +1 -1
  136. package/lib/typescript/commonjs/dataViewer/ThemedSplitView.d.ts.map +1 -1
  137. package/lib/typescript/commonjs/dataViewer/ValueEditModal.d.ts.map +1 -1
  138. package/lib/typescript/commonjs/dataViewer/VirtualizedDataExplorer.d.ts.map +1 -1
  139. package/lib/typescript/commonjs/dataViewer/tree/TreeDiffViewer.d.ts.map +1 -1
  140. package/lib/typescript/commonjs/hooks/index.d.ts +3 -1
  141. package/lib/typescript/commonjs/hooks/index.d.ts.map +1 -1
  142. package/lib/typescript/commonjs/hooks/safe-area-impl.d.ts +1 -1
  143. package/lib/typescript/commonjs/hooks/useChangeLog.d.ts +38 -0
  144. package/lib/typescript/commonjs/hooks/useChangeLog.d.ts.map +1 -0
  145. package/lib/typescript/commonjs/hooks/useEventStoreEvents.d.ts +25 -0
  146. package/lib/typescript/commonjs/hooks/useEventStoreEvents.d.ts.map +1 -0
  147. package/lib/typescript/commonjs/hooks/usePersistedState.d.ts +34 -5
  148. package/lib/typescript/commonjs/hooks/usePersistedState.d.ts.map +1 -1
  149. package/lib/typescript/commonjs/icons/index.d.ts +4 -1
  150. package/lib/typescript/commonjs/icons/index.d.ts.map +1 -1
  151. package/lib/typescript/commonjs/index.d.ts +6 -1
  152. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  153. package/lib/typescript/commonjs/license/FreeAccountPrompt.d.ts.map +1 -1
  154. package/lib/typescript/commonjs/license/LicenseEntryModal.d.ts.map +1 -1
  155. package/lib/typescript/commonjs/storage/definePersistedSetting.d.ts +39 -0
  156. package/lib/typescript/commonjs/storage/definePersistedSetting.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/storage/index.d.ts +1 -0
  158. package/lib/typescript/commonjs/storage/index.d.ts.map +1 -1
  159. package/lib/typescript/commonjs/stores/ChangeLog.d.ts +100 -0
  160. package/lib/typescript/commonjs/stores/ChangeLog.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/stores/createToolStore.d.ts +92 -0
  162. package/lib/typescript/commonjs/stores/createToolStore.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/stores/index.d.ts +2 -0
  164. package/lib/typescript/commonjs/stores/index.d.ts.map +1 -1
  165. package/lib/typescript/commonjs/sync/toolSyncAdapter.d.ts +66 -0
  166. package/lib/typescript/commonjs/sync/toolSyncAdapter.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/sync/wireForm.d.ts +100 -0
  168. package/lib/typescript/commonjs/sync/wireForm.d.ts.map +1 -0
  169. package/lib/typescript/commonjs/tools/defineTool.d.ts +100 -0
  170. package/lib/typescript/commonjs/tools/defineTool.d.ts.map +1 -0
  171. package/lib/typescript/commonjs/ui/components/ChangeRow.d.ts +52 -0
  172. package/lib/typescript/commonjs/ui/components/ChangeRow.d.ts.map +1 -0
  173. package/lib/typescript/commonjs/ui/components/ChipStrip.d.ts +41 -0
  174. package/lib/typescript/commonjs/ui/components/ChipStrip.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/ui/components/ClipboardHintBanner.d.ts.map +1 -1
  176. package/lib/typescript/commonjs/ui/components/CompactRow.d.ts.map +1 -1
  177. package/lib/typescript/commonjs/ui/components/DataInspector.d.ts.map +1 -1
  178. package/lib/typescript/commonjs/ui/components/DetailView.d.ts.map +1 -1
  179. package/lib/typescript/commonjs/ui/components/DetailViewToggle.d.ts +36 -0
  180. package/lib/typescript/commonjs/ui/components/DetailViewToggle.d.ts.map +1 -0
  181. package/lib/typescript/commonjs/ui/components/DevToolsCard.d.ts +8 -1
  182. package/lib/typescript/commonjs/ui/components/DevToolsCard.d.ts.map +1 -1
  183. package/lib/typescript/commonjs/ui/components/DynamicFilterView.d.ts.map +1 -1
  184. package/lib/typescript/commonjs/ui/components/EntityFilterView.d.ts +51 -0
  185. package/lib/typescript/commonjs/ui/components/EntityFilterView.d.ts.map +1 -0
  186. package/lib/typescript/commonjs/ui/components/EventHistoryViewer/CompareBar.d.ts.map +1 -1
  187. package/lib/typescript/commonjs/ui/components/EventHistoryViewer/DiffModeTabs.d.ts.map +1 -1
  188. package/lib/typescript/commonjs/ui/components/EventHistoryViewer/EventPickerModal.d.ts.map +1 -1
  189. package/lib/typescript/commonjs/ui/components/EventStepperFooter.d.ts.map +1 -1
  190. package/lib/typescript/commonjs/ui/components/ExpandablePopover.d.ts +5 -1
  191. package/lib/typescript/commonjs/ui/components/ExpandablePopover.d.ts.map +1 -1
  192. package/lib/typescript/commonjs/ui/components/ExpandedInfoRow.d.ts.map +1 -1
  193. package/lib/typescript/commonjs/ui/components/ExportPreview.d.ts +48 -0
  194. package/lib/typescript/commonjs/ui/components/ExportPreview.d.ts.map +1 -0
  195. package/lib/typescript/commonjs/ui/components/FilterComponents.d.ts.map +1 -1
  196. package/lib/typescript/commonjs/ui/components/InfoRow.d.ts +33 -0
  197. package/lib/typescript/commonjs/ui/components/InfoRow.d.ts.map +1 -0
  198. package/lib/typescript/commonjs/ui/components/ModalHeader.d.ts +31 -1
  199. package/lib/typescript/commonjs/ui/components/ModalHeader.d.ts.map +1 -1
  200. package/lib/typescript/commonjs/ui/components/Pill.d.ts +38 -0
  201. package/lib/typescript/commonjs/ui/components/Pill.d.ts.map +1 -0
  202. package/lib/typescript/commonjs/ui/components/ToggleRow.d.ts +33 -0
  203. package/lib/typescript/commonjs/ui/components/ToggleRow.d.ts.map +1 -0
  204. package/lib/typescript/commonjs/ui/components/ToolFooter.d.ts +69 -0
  205. package/lib/typescript/commonjs/ui/components/ToolFooter.d.ts.map +1 -0
  206. package/lib/typescript/commonjs/ui/components/index.d.ts +9 -0
  207. package/lib/typescript/commonjs/ui/components/index.d.ts.map +1 -1
  208. package/lib/typescript/commonjs/ui/console/CyberpunkSectionButton.d.ts.map +1 -1
  209. package/lib/typescript/commonjs/ui/fonts.d.ts +7 -0
  210. package/lib/typescript/commonjs/ui/fonts.d.ts.map +1 -0
  211. package/lib/typescript/commonjs/ui/gameUI/components/GameUICollapsibleSection.d.ts.map +1 -1
  212. package/lib/typescript/commonjs/ui/gameUI/components/GameUICompactStats.d.ts.map +1 -1
  213. package/lib/typescript/commonjs/ui/gameUI/components/GameUIIssuesList.d.ts.map +1 -1
  214. package/lib/typescript/commonjs/ui/gameUI/components/GameUIStatusHeader.d.ts.map +1 -1
  215. package/lib/typescript/commonjs/ui/index.d.ts +2 -0
  216. package/lib/typescript/commonjs/ui/index.d.ts.map +1 -1
  217. package/lib/typescript/commonjs/ui/listPresets.d.ts +28 -0
  218. package/lib/typescript/commonjs/ui/listPresets.d.ts.map +1 -0
  219. package/lib/typescript/commonjs/ui/night/primitives.d.ts +3 -1
  220. package/lib/typescript/commonjs/ui/night/primitives.d.ts.map +1 -1
  221. package/lib/typescript/commonjs/ui/toolTheme.d.ts.map +1 -1
  222. package/lib/typescript/commonjs/utils/snapshotProviderKit.d.ts +81 -0
  223. package/lib/typescript/commonjs/utils/snapshotProviderKit.d.ts.map +1 -0
  224. package/lib/typescript/commonjs/utils/stateTools.d.ts +44 -0
  225. package/lib/typescript/commonjs/utils/stateTools.d.ts.map +1 -0
  226. package/lib/typescript/module/JsModal.d.ts.map +1 -1
  227. package/lib/typescript/module/dataViewer/CyberpunkInput.d.ts.map +1 -1
  228. package/lib/typescript/module/dataViewer/DataTreeActionBar.d.ts.map +1 -1
  229. package/lib/typescript/module/dataViewer/DataTreeActionDock.d.ts.map +1 -1
  230. package/lib/typescript/module/dataViewer/DiffSummary.d.ts.map +1 -1
  231. package/lib/typescript/module/dataViewer/LiveExplorer.d.ts.map +1 -1
  232. package/lib/typescript/module/dataViewer/SplitDiffViewer.d.ts.map +1 -1
  233. package/lib/typescript/module/dataViewer/ThemedSplitView.d.ts.map +1 -1
  234. package/lib/typescript/module/dataViewer/ValueEditModal.d.ts.map +1 -1
  235. package/lib/typescript/module/dataViewer/VirtualizedDataExplorer.d.ts.map +1 -1
  236. package/lib/typescript/module/dataViewer/tree/TreeDiffViewer.d.ts.map +1 -1
  237. package/lib/typescript/module/hooks/index.d.ts +3 -1
  238. package/lib/typescript/module/hooks/index.d.ts.map +1 -1
  239. package/lib/typescript/module/hooks/safe-area-impl.d.ts +1 -1
  240. package/lib/typescript/module/hooks/useChangeLog.d.ts +38 -0
  241. package/lib/typescript/module/hooks/useChangeLog.d.ts.map +1 -0
  242. package/lib/typescript/module/hooks/useEventStoreEvents.d.ts +25 -0
  243. package/lib/typescript/module/hooks/useEventStoreEvents.d.ts.map +1 -0
  244. package/lib/typescript/module/hooks/usePersistedState.d.ts +34 -5
  245. package/lib/typescript/module/hooks/usePersistedState.d.ts.map +1 -1
  246. package/lib/typescript/module/icons/index.d.ts +4 -1
  247. package/lib/typescript/module/icons/index.d.ts.map +1 -1
  248. package/lib/typescript/module/index.d.ts +6 -1
  249. package/lib/typescript/module/index.d.ts.map +1 -1
  250. package/lib/typescript/module/license/FreeAccountPrompt.d.ts.map +1 -1
  251. package/lib/typescript/module/license/LicenseEntryModal.d.ts.map +1 -1
  252. package/lib/typescript/module/storage/definePersistedSetting.d.ts +39 -0
  253. package/lib/typescript/module/storage/definePersistedSetting.d.ts.map +1 -0
  254. package/lib/typescript/module/storage/index.d.ts +1 -0
  255. package/lib/typescript/module/storage/index.d.ts.map +1 -1
  256. package/lib/typescript/module/stores/ChangeLog.d.ts +100 -0
  257. package/lib/typescript/module/stores/ChangeLog.d.ts.map +1 -0
  258. package/lib/typescript/module/stores/createToolStore.d.ts +92 -0
  259. package/lib/typescript/module/stores/createToolStore.d.ts.map +1 -0
  260. package/lib/typescript/module/stores/index.d.ts +2 -0
  261. package/lib/typescript/module/stores/index.d.ts.map +1 -1
  262. package/lib/typescript/module/sync/toolSyncAdapter.d.ts +66 -0
  263. package/lib/typescript/module/sync/toolSyncAdapter.d.ts.map +1 -0
  264. package/lib/typescript/module/sync/wireForm.d.ts +100 -0
  265. package/lib/typescript/module/sync/wireForm.d.ts.map +1 -0
  266. package/lib/typescript/module/tools/defineTool.d.ts +100 -0
  267. package/lib/typescript/module/tools/defineTool.d.ts.map +1 -0
  268. package/lib/typescript/module/ui/components/ChangeRow.d.ts +52 -0
  269. package/lib/typescript/module/ui/components/ChangeRow.d.ts.map +1 -0
  270. package/lib/typescript/module/ui/components/ChipStrip.d.ts +41 -0
  271. package/lib/typescript/module/ui/components/ChipStrip.d.ts.map +1 -0
  272. package/lib/typescript/module/ui/components/ClipboardHintBanner.d.ts.map +1 -1
  273. package/lib/typescript/module/ui/components/CompactRow.d.ts.map +1 -1
  274. package/lib/typescript/module/ui/components/DataInspector.d.ts.map +1 -1
  275. package/lib/typescript/module/ui/components/DetailView.d.ts.map +1 -1
  276. package/lib/typescript/module/ui/components/DetailViewToggle.d.ts +36 -0
  277. package/lib/typescript/module/ui/components/DetailViewToggle.d.ts.map +1 -0
  278. package/lib/typescript/module/ui/components/DevToolsCard.d.ts +8 -1
  279. package/lib/typescript/module/ui/components/DevToolsCard.d.ts.map +1 -1
  280. package/lib/typescript/module/ui/components/DynamicFilterView.d.ts.map +1 -1
  281. package/lib/typescript/module/ui/components/EntityFilterView.d.ts +51 -0
  282. package/lib/typescript/module/ui/components/EntityFilterView.d.ts.map +1 -0
  283. package/lib/typescript/module/ui/components/EventHistoryViewer/CompareBar.d.ts.map +1 -1
  284. package/lib/typescript/module/ui/components/EventHistoryViewer/DiffModeTabs.d.ts.map +1 -1
  285. package/lib/typescript/module/ui/components/EventHistoryViewer/EventPickerModal.d.ts.map +1 -1
  286. package/lib/typescript/module/ui/components/EventStepperFooter.d.ts.map +1 -1
  287. package/lib/typescript/module/ui/components/ExpandablePopover.d.ts +5 -1
  288. package/lib/typescript/module/ui/components/ExpandablePopover.d.ts.map +1 -1
  289. package/lib/typescript/module/ui/components/ExpandedInfoRow.d.ts.map +1 -1
  290. package/lib/typescript/module/ui/components/ExportPreview.d.ts +48 -0
  291. package/lib/typescript/module/ui/components/ExportPreview.d.ts.map +1 -0
  292. package/lib/typescript/module/ui/components/FilterComponents.d.ts.map +1 -1
  293. package/lib/typescript/module/ui/components/InfoRow.d.ts +33 -0
  294. package/lib/typescript/module/ui/components/InfoRow.d.ts.map +1 -0
  295. package/lib/typescript/module/ui/components/ModalHeader.d.ts +31 -1
  296. package/lib/typescript/module/ui/components/ModalHeader.d.ts.map +1 -1
  297. package/lib/typescript/module/ui/components/Pill.d.ts +38 -0
  298. package/lib/typescript/module/ui/components/Pill.d.ts.map +1 -0
  299. package/lib/typescript/module/ui/components/ToggleRow.d.ts +33 -0
  300. package/lib/typescript/module/ui/components/ToggleRow.d.ts.map +1 -0
  301. package/lib/typescript/module/ui/components/ToolFooter.d.ts +69 -0
  302. package/lib/typescript/module/ui/components/ToolFooter.d.ts.map +1 -0
  303. package/lib/typescript/module/ui/components/index.d.ts +9 -0
  304. package/lib/typescript/module/ui/components/index.d.ts.map +1 -1
  305. package/lib/typescript/module/ui/console/CyberpunkSectionButton.d.ts.map +1 -1
  306. package/lib/typescript/module/ui/fonts.d.ts +7 -0
  307. package/lib/typescript/module/ui/fonts.d.ts.map +1 -0
  308. package/lib/typescript/module/ui/gameUI/components/GameUICollapsibleSection.d.ts.map +1 -1
  309. package/lib/typescript/module/ui/gameUI/components/GameUICompactStats.d.ts.map +1 -1
  310. package/lib/typescript/module/ui/gameUI/components/GameUIIssuesList.d.ts.map +1 -1
  311. package/lib/typescript/module/ui/gameUI/components/GameUIStatusHeader.d.ts.map +1 -1
  312. package/lib/typescript/module/ui/index.d.ts +2 -0
  313. package/lib/typescript/module/ui/index.d.ts.map +1 -1
  314. package/lib/typescript/module/ui/listPresets.d.ts +28 -0
  315. package/lib/typescript/module/ui/listPresets.d.ts.map +1 -0
  316. package/lib/typescript/module/ui/night/primitives.d.ts +3 -1
  317. package/lib/typescript/module/ui/night/primitives.d.ts.map +1 -1
  318. package/lib/typescript/module/ui/toolTheme.d.ts.map +1 -1
  319. package/lib/typescript/module/utils/snapshotProviderKit.d.ts +81 -0
  320. package/lib/typescript/module/utils/snapshotProviderKit.d.ts.map +1 -0
  321. package/lib/typescript/module/utils/stateTools.d.ts +44 -0
  322. package/lib/typescript/module/utils/stateTools.d.ts.map +1 -0
  323. package/package.json +4 -4
@@ -0,0 +1,355 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.EntityFilterView = EntityFilterView;
7
+ var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ var _index = require("../../icons/index.js");
10
+ var _nightTheme = require("../night/nightTheme.js");
11
+ var _SectionHeader = require("./SectionHeader.js");
12
+ var _FilterComponents = require("./FilterComponents.js");
13
+ var _fonts = require("../fonts.js");
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ /**
16
+ * EntityFilterView — the "hide these by name" filter screen the state tools
17
+ * share: a list of registered entities (stores, atoms) you can tap to hide,
18
+ * the active name patterns with a remove ✕, an add-pattern affordance, and
19
+ * a how-it-works card.
20
+ *
21
+ * zustand and jotai each shipped their own copy (~370 lines apiece). The
22
+ * tool supplies the entities, the nouns and the testID prefix; the screen
23
+ * is drawn once.
24
+ *
25
+ * testID convention (unchanged from zustand's):
26
+ * `${prefix}-filters-scroll`, `${prefix}-filters-${entityKey}-count`,
27
+ * `${prefix}-filters-${entityKey}-${slug(name)}`, `${prefix}-filters-count`,
28
+ * `${prefix}-filters-add-open`, `${prefix}-filters-add-input`,
29
+ * `${prefix}-filters-chip-${slug(pattern)}`.
30
+ */
31
+
32
+ /** True if any active pattern hides this entity. */
33
+ function isHidden(entity, ignoredPatterns) {
34
+ return Array.from(ignoredPatterns).some(p => entity.name.toLowerCase().includes(p.toLowerCase()));
35
+ }
36
+
37
+ /** The entity color for a pattern that exactly names a registered entity. */
38
+ function colorForPattern(pattern, entities) {
39
+ const match = entities.find(e => e.name.toLowerCase() === pattern.toLowerCase());
40
+ return match ? match.color : null;
41
+ }
42
+ function EntityFilterView({
43
+ entities,
44
+ ignoredPatterns,
45
+ onTogglePattern,
46
+ onAddPattern,
47
+ entityNoun,
48
+ entitySingular,
49
+ entityKey,
50
+ testIDPrefix,
51
+ slug,
52
+ howItWorks,
53
+ examples,
54
+ addPlaceholder,
55
+ emptyMessage
56
+ }) {
57
+ const [showAddInput, setShowAddInput] = (0, _react.useState)(false);
58
+ const [inputValue, setInputValue] = (0, _react.useState)("");
59
+ const handleAddPattern = () => {
60
+ const trimmed = inputValue.trim();
61
+ if (trimmed) {
62
+ onAddPattern(trimmed);
63
+ setInputValue("");
64
+ setShowAddInput(false);
65
+ }
66
+ };
67
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.ScrollView, {
68
+ style: styles.container,
69
+ contentContainerStyle: styles.scrollContent,
70
+ showsVerticalScrollIndicator: false,
71
+ nestedScrollEnabled: true,
72
+ testID: `${testIDPrefix}-filters-scroll`,
73
+ children: [entities.length === 0 && emptyMessage ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
74
+ style: styles.section,
75
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SectionHeader.SectionHeader, {
76
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_SectionHeader.SectionHeader.Title, {
77
+ children: ["REGISTERED ", entityNoun]
78
+ })
79
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
80
+ style: styles.emptyText,
81
+ testID: `${testIDPrefix}-filters-${entityKey}s-empty`,
82
+ children: emptyMessage
83
+ })]
84
+ }) : null, entities.length > 0 && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
85
+ style: styles.section,
86
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_SectionHeader.SectionHeader, {
87
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_SectionHeader.SectionHeader.Title, {
88
+ children: ["REGISTERED ", entityNoun]
89
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_SectionHeader.SectionHeader.Badge, {
90
+ count: entities.length,
91
+ color: _nightTheme.night.color.accent,
92
+ testID: `${testIDPrefix}-filters-${entityKey}-count`
93
+ })]
94
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ScrollView, {
95
+ style: styles.entityList,
96
+ contentContainerStyle: styles.entityListContent,
97
+ showsVerticalScrollIndicator: true,
98
+ nestedScrollEnabled: true,
99
+ testID: `${testIDPrefix}-filters-${entityKey}-list`,
100
+ children: entities.map(entity => {
101
+ const hidden = isHidden(entity, ignoredPatterns);
102
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.TouchableOpacity, {
103
+ style: [styles.entityRow, hidden && styles.entityRowHidden],
104
+ onPress: () => onAddPattern(entity.name),
105
+ disabled: hidden,
106
+ testID: `${testIDPrefix}-filters-${entityKey}-${slug(entity.name)}`,
107
+ accessibilityRole: "button",
108
+ accessibilityLabel: `Hide ${entity.name}`,
109
+ accessibilityState: {
110
+ disabled: hidden
111
+ },
112
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
113
+ style: [styles.dot, {
114
+ backgroundColor: hidden ? _nightTheme.night.color.textTertiary : entity.color
115
+ }]
116
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
117
+ style: [styles.entityText, hidden ? styles.entityTextHidden : {
118
+ color: entity.color
119
+ }],
120
+ numberOfLines: 1,
121
+ children: entity.name
122
+ }), hidden ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
123
+ style: styles.hiddenLabel,
124
+ children: "hidden"
125
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
126
+ style: [styles.addLabel, {
127
+ color: entity.color + "99"
128
+ }],
129
+ children: "+ hide"
130
+ })]
131
+ }, entity.name);
132
+ })
133
+ })]
134
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
135
+ style: styles.section,
136
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_SectionHeader.SectionHeader, {
137
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SectionHeader.SectionHeader.Icon, {
138
+ icon: _index.Filter,
139
+ color: _nightTheme.night.color.accent,
140
+ size: 12
141
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_SectionHeader.SectionHeader.Title, {
142
+ children: [entitySingular.toUpperCase(), " NAME FILTERS"]
143
+ }), ignoredPatterns.size > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_SectionHeader.SectionHeader.Badge, {
144
+ count: ignoredPatterns.size,
145
+ color: _nightTheme.night.color.accent,
146
+ testID: `${testIDPrefix}-filters-count`
147
+ })]
148
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
149
+ style: styles.addInputWrapper,
150
+ children: !showAddInput ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_FilterComponents.AddFilterButton, {
151
+ onPress: () => setShowAddInput(true),
152
+ color: _nightTheme.night.color.accent,
153
+ label: `Add ${entitySingular} name pattern`,
154
+ testID: `${testIDPrefix}-filters-add-open`
155
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_FilterComponents.AddFilterInput, {
156
+ value: inputValue,
157
+ onChange: setInputValue,
158
+ onSubmit: handleAddPattern,
159
+ onCancel: () => {
160
+ setShowAddInput(false);
161
+ setInputValue("");
162
+ },
163
+ placeholder: addPlaceholder ?? `Enter ${entitySingular} name pattern to hide...`,
164
+ color: _nightTheme.night.color.accent,
165
+ testID: `${testIDPrefix}-filters-add-input`
166
+ })
167
+ }), ignoredPatterns.size > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
168
+ style: styles.patternList,
169
+ children: Array.from(ignoredPatterns).map(pattern => {
170
+ const color = colorForPattern(pattern, entities);
171
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.TouchableOpacity, {
172
+ style: styles.patternRow,
173
+ onPress: () => onTogglePattern(pattern),
174
+ activeOpacity: 0.8,
175
+ testID: `${testIDPrefix}-filters-chip-${slug(pattern)}`,
176
+ accessibilityRole: "button",
177
+ accessibilityLabel: `Remove filter ${pattern}`,
178
+ children: [color ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
179
+ style: [styles.dot, {
180
+ backgroundColor: color
181
+ }]
182
+ }) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
183
+ style: [styles.patternText, color ? {
184
+ color
185
+ } : null],
186
+ numberOfLines: 1,
187
+ children: pattern
188
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.X, {
189
+ size: 12,
190
+ color: _nightTheme.night.color.accent + "80"
191
+ })]
192
+ }, pattern);
193
+ })
194
+ })]
195
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
196
+ style: styles.section,
197
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_SectionHeader.SectionHeader, {
198
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SectionHeader.SectionHeader.Icon, {
199
+ icon: _index.Filter,
200
+ color: _nightTheme.night.color.textSecondary,
201
+ size: 12
202
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_SectionHeader.SectionHeader.Title, {
203
+ children: "HOW EVENT FILTERS WORK"
204
+ })]
205
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
206
+ style: styles.howItWorksText,
207
+ children: howItWorks
208
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
209
+ style: styles.examplesContainer,
210
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
211
+ style: styles.examplesTitle,
212
+ children: "EXAMPLES:"
213
+ }), examples.map(ex => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
214
+ style: styles.exampleItem,
215
+ children: ex
216
+ }, ex))]
217
+ })]
218
+ })]
219
+ });
220
+ }
221
+ const styles = _reactNative.StyleSheet.create({
222
+ container: {
223
+ flex: 1,
224
+ // Transparent so the night sheet's star field shows through.
225
+ backgroundColor: "transparent"
226
+ },
227
+ scrollContent: {
228
+ paddingTop: 16,
229
+ paddingHorizontal: 16,
230
+ paddingBottom: 24,
231
+ gap: 16
232
+ },
233
+ section: {
234
+ backgroundColor: _nightTheme.night.color.surface,
235
+ borderRadius: 16,
236
+ borderWidth: 1,
237
+ borderColor: _nightTheme.night.color.border,
238
+ overflow: "hidden"
239
+ },
240
+ entityList: {
241
+ maxHeight: 180
242
+ },
243
+ entityListContent: {
244
+ paddingHorizontal: 16,
245
+ paddingTop: 8,
246
+ paddingBottom: 16,
247
+ gap: 10
248
+ },
249
+ entityRow: {
250
+ flexDirection: "row",
251
+ alignItems: "center",
252
+ gap: 10,
253
+ paddingVertical: 10,
254
+ paddingHorizontal: 12,
255
+ backgroundColor: _nightTheme.night.color.surfaceElevated,
256
+ borderRadius: 8,
257
+ borderWidth: 1,
258
+ borderColor: _nightTheme.night.color.border
259
+ },
260
+ entityRowHidden: {
261
+ opacity: 0.45
262
+ },
263
+ dot: {
264
+ width: 7,
265
+ height: 7,
266
+ borderRadius: 3.5
267
+ },
268
+ entityText: {
269
+ flex: 1,
270
+ fontSize: 12,
271
+ fontWeight: "600",
272
+ fontFamily: _fonts.monoFont
273
+ },
274
+ entityTextHidden: {
275
+ color: _nightTheme.night.color.textTertiary,
276
+ textDecorationLine: "line-through"
277
+ },
278
+ hiddenLabel: {
279
+ fontSize: 10,
280
+ fontWeight: "500",
281
+ color: _nightTheme.night.color.textTertiary,
282
+ fontFamily: _fonts.monoFont
283
+ },
284
+ addLabel: {
285
+ fontSize: 10,
286
+ fontWeight: "600",
287
+ fontFamily: _fonts.monoFont
288
+ },
289
+ addInputWrapper: {
290
+ paddingHorizontal: 16,
291
+ paddingTop: 8,
292
+ paddingBottom: 8
293
+ },
294
+ patternList: {
295
+ paddingHorizontal: 16,
296
+ paddingBottom: 16,
297
+ gap: 8
298
+ },
299
+ patternRow: {
300
+ flexDirection: "row",
301
+ alignItems: "center",
302
+ justifyContent: "space-between",
303
+ paddingVertical: 10,
304
+ paddingHorizontal: 12,
305
+ backgroundColor: _nightTheme.night.color.surfaceElevated,
306
+ borderRadius: 8,
307
+ borderWidth: 1,
308
+ borderColor: _nightTheme.night.color.border,
309
+ gap: 8
310
+ },
311
+ patternText: {
312
+ flex: 1,
313
+ fontSize: 12,
314
+ fontFamily: _fonts.monoFont,
315
+ color: _nightTheme.night.color.text
316
+ },
317
+ emptyText: {
318
+ fontSize: 11,
319
+ color: _nightTheme.night.color.textTertiary,
320
+ paddingHorizontal: 16,
321
+ paddingTop: 8,
322
+ paddingBottom: 16,
323
+ fontFamily: _fonts.monoFont
324
+ },
325
+ howItWorksText: {
326
+ fontSize: 11,
327
+ color: _nightTheme.night.color.textSecondary,
328
+ lineHeight: 16,
329
+ marginTop: 8,
330
+ paddingHorizontal: 16,
331
+ fontFamily: _fonts.monoFont
332
+ },
333
+ examplesContainer: {
334
+ paddingTop: 8,
335
+ paddingHorizontal: 16,
336
+ paddingBottom: 16,
337
+ borderTopWidth: 1,
338
+ borderTopColor: _nightTheme.night.color.border,
339
+ marginTop: 12
340
+ },
341
+ examplesTitle: {
342
+ fontSize: 10,
343
+ fontWeight: "600",
344
+ color: _nightTheme.night.color.textTertiary,
345
+ fontFamily: _fonts.monoFont,
346
+ letterSpacing: 0.5,
347
+ marginBottom: 6
348
+ },
349
+ exampleItem: {
350
+ fontSize: 10,
351
+ color: _nightTheme.night.color.textTertiary,
352
+ fontFamily: _fonts.monoFont,
353
+ lineHeight: 16
354
+ }
355
+ });
@@ -8,6 +8,7 @@ var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _macOSDesignSystemColors = require("../../gameUI/constants/macOSDesignSystemColors.js");
10
10
  var _lucideIcons = require("../../../icons/lucide-icons.js");
11
+ var _fonts = require("../../fonts.js");
11
12
  var _jsxRuntime = require("react/jsx-runtime");
12
13
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
14
  /**
@@ -155,7 +156,7 @@ const styles = _reactNative.StyleSheet.create({
155
156
  },
156
157
  label: {
157
158
  fontSize: 10,
158
- fontFamily: "monospace",
159
+ fontFamily: _fonts.monoFont,
159
160
  fontWeight: "700",
160
161
  letterSpacing: 0.5,
161
162
  textTransform: "uppercase"
@@ -190,17 +191,17 @@ const styles = _reactNative.StyleSheet.create({
190
191
  index: {
191
192
  fontSize: 10,
192
193
  color: _macOSDesignSystemColors.macOSColors.text.secondary,
193
- fontFamily: "monospace"
194
+ fontFamily: _fonts.monoFont
194
195
  },
195
196
  time: {
196
197
  fontSize: 11,
197
198
  color: _macOSDesignSystemColors.macOSColors.text.primary,
198
- fontFamily: "monospace"
199
+ fontFamily: _fonts.monoFont
199
200
  },
200
201
  relative: {
201
202
  fontSize: 10,
202
203
  color: _macOSDesignSystemColors.macOSColors.text.secondary,
203
- fontFamily: "monospace"
204
+ fontFamily: _fonts.monoFont
204
205
  },
205
206
  divider: {
206
207
  width: 1,
@@ -7,6 +7,7 @@ exports.DiffModeTabs = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
9
  var _macOSDesignSystemColors = require("../../gameUI/constants/macOSDesignSystemColors.js");
10
+ var _fonts = require("../../fonts.js");
10
11
  var _jsxRuntime = require("react/jsx-runtime");
11
12
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
13
  /**
@@ -84,7 +85,7 @@ const styles = _reactNative.StyleSheet.create({
84
85
  },
85
86
  tabText: {
86
87
  fontSize: 11,
87
- fontFamily: "monospace",
88
+ fontFamily: _fonts.monoFont,
88
89
  fontWeight: "600",
89
90
  color: _macOSDesignSystemColors.macOSColors.text.secondary,
90
91
  letterSpacing: 0.5
@@ -9,6 +9,7 @@ var _reactNative = require("react-native");
9
9
  var _absoluteFill = require("../../../utils/absoluteFill.js");
10
10
  var _macOSDesignSystemColors = require("../../gameUI/constants/macOSDesignSystemColors.js");
11
11
  var _lucideIcons = require("../../../icons/lucide-icons.js");
12
+ var _fonts = require("../../fonts.js");
12
13
  var _jsxRuntime = require("react/jsx-runtime");
13
14
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
15
  /**
@@ -123,7 +124,7 @@ const styles = _reactNative.StyleSheet.create({
123
124
  title: {
124
125
  fontSize: 13,
125
126
  fontWeight: "700",
126
- fontFamily: "monospace",
127
+ fontFamily: _fonts.monoFont,
127
128
  textTransform: "uppercase",
128
129
  marginBottom: 8,
129
130
  letterSpacing: 0.6
@@ -190,18 +191,18 @@ const styles = _reactNative.StyleSheet.create({
190
191
  itemIndex: {
191
192
  fontSize: 10,
192
193
  color: _macOSDesignSystemColors.macOSColors.text.secondary,
193
- fontFamily: "monospace",
194
+ fontFamily: _fonts.monoFont,
194
195
  width: 40
195
196
  },
196
197
  itemTime: {
197
198
  fontSize: 11,
198
199
  color: _macOSDesignSystemColors.macOSColors.text.primary,
199
- fontFamily: "monospace",
200
+ fontFamily: _fonts.monoFont,
200
201
  flex: 1
201
202
  },
202
203
  itemRelative: {
203
204
  fontSize: 10,
204
205
  color: _macOSDesignSystemColors.macOSColors.text.secondary,
205
- fontFamily: "monospace"
206
+ fontFamily: _fonts.monoFont
206
207
  }
207
208
  });
@@ -10,6 +10,7 @@ var _lucideIcons = require("../../icons/lucide-icons.js");
10
10
  var _macOSDesignSystemColors = require("../gameUI/constants/macOSDesignSystemColors.js");
11
11
  var _nightTheme = require("../night/nightTheme.js");
12
12
  var _useSafeAreaInsets = require("../../hooks/useSafeAreaInsets.js");
13
+ var _fonts = require("../fonts.js");
13
14
  var _jsxRuntime = require("react/jsx-runtime");
14
15
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
16
  /**
@@ -137,7 +138,7 @@ const styles = _reactNative.StyleSheet.create({
137
138
  fontSize: 12,
138
139
  fontWeight: "600",
139
140
  color: _macOSDesignSystemColors.macOSColors.text.primary,
140
- fontFamily: "monospace",
141
+ fontFamily: _fonts.monoFont,
141
142
  textTransform: "uppercase"
142
143
  },
143
144
  navButtonTextDisabled: {
@@ -150,13 +151,13 @@ const styles = _reactNative.StyleSheet.create({
150
151
  fontSize: 14,
151
152
  fontWeight: "700",
152
153
  color: _macOSDesignSystemColors.macOSColors.text.primary,
153
- fontFamily: "monospace",
154
+ fontFamily: _fonts.monoFont,
154
155
  textTransform: "uppercase"
155
156
  },
156
157
  subtitleText: {
157
158
  fontSize: 11,
158
159
  color: _macOSDesignSystemColors.macOSColors.text.secondary,
159
- fontFamily: "monospace",
160
+ fontFamily: _fonts.monoFont,
160
161
  marginTop: 2
161
162
  },
162
163
  // ── Night variant (see ui/night/nightTheme.ts): near-black glass bar with
@@ -31,7 +31,8 @@ function CollapsedPeek({
31
31
  width,
32
32
  height,
33
33
  customContent,
34
- label
34
+ label,
35
+ testID
35
36
  }) {
36
37
  // When progress=0 (collapsed): peek is visible (opacity=1, scale=1)
37
38
  // When progress=1 (expanded): peek is hidden (opacity=0, scale=0.9)
@@ -60,6 +61,7 @@ function CollapsedPeek({
60
61
  }],
61
62
  accessibilityLabel: label || `Expand options`,
62
63
  accessibilityRole: "button",
64
+ testID: testID,
63
65
  children: customContent || /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
64
66
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ChevronUp, {
65
67
  size: 12,
@@ -85,7 +87,8 @@ function ExpandedWrapper({
85
87
  width,
86
88
  expandedHeight,
87
89
  isExpanded,
88
- style
90
+ style,
91
+ collapseTestID
89
92
  }) {
90
93
  // Animate height from 0 to full height
91
94
  const animatedHeight = progress.interpolate({
@@ -108,6 +111,7 @@ function ExpandedWrapper({
108
111
  style: styles.collapseButton,
109
112
  accessibilityLabel: "Collapse",
110
113
  accessibilityRole: "button",
114
+ testID: collapseTestID,
111
115
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ChevronUp, {
112
116
  size: 12,
113
117
  color: _gameUIColors.buoyColors.textMuted,
@@ -140,7 +144,9 @@ function ExpandablePopover({
140
144
  expandedStyle,
141
145
  persistState = false,
142
146
  storageKey,
143
- peekHeight = DEFAULT_PEEK_HEIGHT
147
+ peekHeight = DEFAULT_PEEK_HEIGHT,
148
+ testID,
149
+ collapseTestID
144
150
  }) {
145
151
  const [isExpanded, setIsExpanded] = (0, _react.useState)(defaultExpanded);
146
152
  const [isStateRestored, setIsStateRestored] = (0, _react.useState)(!persistState);
@@ -243,6 +249,7 @@ function ExpandablePopover({
243
249
  style: styles.expandedWrapper,
244
250
  pointerEvents: isExpanded ? "box-none" : "none",
245
251
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(ExpandedWrapper, {
252
+ collapseTestID: collapseTestID,
246
253
  onCollapse: handleCollapse,
247
254
  progress: progress,
248
255
  width: width,
@@ -262,7 +269,8 @@ function ExpandablePopover({
262
269
  width: width,
263
270
  height: peekHeight,
264
271
  customContent: collapsedContent,
265
- label: collapsedLabel
272
+ label: collapsedLabel,
273
+ testID: testID
266
274
  })
267
275
  })]
268
276
  });
@@ -7,6 +7,7 @@ exports.ExpandedInfoRow = ExpandedInfoRow;
7
7
  exports.PillBadge = PillBadge;
8
8
  var _reactNative = require("react-native");
9
9
  var _macOSDesignSystemColors = require("../gameUI/constants/macOSDesignSystemColors.js");
10
+ var _fonts = require("../fonts.js");
10
11
  var _jsxRuntime = require("react/jsx-runtime");
11
12
  /**
12
13
  * ExpandedInfoRow
@@ -77,7 +78,7 @@ const styles = _reactNative.StyleSheet.create({
77
78
  color: _macOSDesignSystemColors.macOSColors.text.muted,
78
79
  fontWeight: "600",
79
80
  minWidth: 70,
80
- fontFamily: "monospace"
81
+ fontFamily: _fonts.monoFont
81
82
  },
82
83
  pill: {
83
84
  flexDirection: "row",
@@ -97,7 +98,7 @@ const styles = _reactNative.StyleSheet.create({
97
98
  pillText: {
98
99
  fontSize: 10,
99
100
  fontWeight: "700",
100
- fontFamily: "monospace",
101
+ fontFamily: _fonts.monoFont,
101
102
  letterSpacing: 0.5
102
103
  },
103
104
  pillTextSm: {