@buoy-gg/shared-ui 7.0.36 → 7.0.39

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 (284) hide show
  1. package/README.md +33 -26
  2. package/floating.d.ts +1 -0
  3. package/floating.js +2 -0
  4. package/lib/commonjs/JsModal.js +16 -1
  5. package/lib/commonjs/JsModal.web.js +16 -1
  6. package/lib/commonjs/dataViewer/CyberpunkInput.js +6 -1
  7. package/lib/commonjs/dataViewer/LiveExplorer.js +28 -16
  8. package/lib/commonjs/hooks/safe-area-impl.js +1 -1
  9. package/lib/commonjs/icons/ReactQueryIcon.js +9 -161
  10. package/lib/commonjs/icons/SentryBugIcon.js +9 -171
  11. package/lib/commonjs/index.js +57 -6
  12. package/lib/commonjs/license/AccountSetup.js +56 -0
  13. package/lib/commonjs/license/AccountSetup.web.js +81 -0
  14. package/lib/commonjs/license/FeatureGate.js +10 -43
  15. package/lib/commonjs/license/FreeAccountPrompt.js +35 -12
  16. package/lib/commonjs/license/index.js +0 -6
  17. package/lib/commonjs/license/licenseModule.js +56 -36
  18. package/lib/commonjs/license/tierLimits.js +12 -63
  19. package/lib/commonjs/storage/devToolsStorageKeys.js +8 -1
  20. package/lib/commonjs/stores/BaseEventStore.js +21 -5
  21. package/lib/commonjs/stores/createToolStore.js +21 -3
  22. package/lib/commonjs/stores/floatingToolStore.js +71 -0
  23. package/lib/commonjs/stores/floatingToolStore.test.js +112 -0
  24. package/lib/commonjs/sync/toolActionRegistry.js +85 -2
  25. package/lib/commonjs/ui/backgrounds/README.md +52 -0
  26. package/lib/commonjs/ui/backgrounds/ToolBackground.js +4 -2
  27. package/lib/commonjs/ui/backgrounds/index.js +8 -1
  28. package/lib/commonjs/ui/backgrounds/registry.js +8 -0
  29. package/lib/commonjs/ui/backgrounds/variants/wormhole/motion.js +48 -0
  30. package/lib/commonjs/ui/backgrounds/variants/wormhole/textures.js +3 -0
  31. package/lib/commonjs/ui/backgrounds/variants/wormhole.js +133 -0
  32. package/lib/commonjs/ui/components/ClipboardHintBanner.js +5 -6
  33. package/lib/commonjs/ui/components/CompactRow.js +94 -74
  34. package/lib/commonjs/ui/components/DraggableHeader.js +16 -1
  35. package/lib/commonjs/ui/components/HeaderSearchButton.js +17 -4
  36. package/lib/commonjs/ui/floating/FloatingTool.js +1010 -0
  37. package/lib/commonjs/ui/floating/FloatingTool.web.js +591 -0
  38. package/lib/commonjs/ui/floating/FloatingToolHost.js +32 -0
  39. package/lib/commonjs/ui/floating/FloatingToolHost.web.js +28 -0
  40. package/lib/commonjs/ui/floating/index.js +105 -0
  41. package/lib/commonjs/ui/floating/index.web.js +105 -0
  42. package/lib/commonjs/ui/floating/onboardingConstants.js +70 -0
  43. package/lib/commonjs/ui/floating/onboardingConstants.web.js +34 -0
  44. package/lib/commonjs/ui/gameUI/constants/gameUIColors.js +3 -1
  45. package/lib/commonjs/ui/index.js +118 -2
  46. package/lib/commonjs/ui/night/nightTheme.js +10 -0
  47. package/lib/commonjs/ui/night/primitives.js +22 -5
  48. package/lib/commonjs/ui/otto/OttoSceneView.js +69 -0
  49. package/lib/commonjs/ui/otto/index.js +22 -0
  50. package/lib/commonjs/ui/otto/ottoEngine.js +10 -7
  51. package/lib/commonjs/ui/otto/ottoScenes.js +949 -0
  52. package/lib/commonjs/utils/minimalSuperJSON.js +13 -3
  53. package/lib/module/JsModal.js +16 -1
  54. package/lib/module/JsModal.web.js +16 -1
  55. package/lib/module/dataViewer/CyberpunkInput.js +6 -1
  56. package/lib/module/dataViewer/LiveExplorer.js +28 -16
  57. package/lib/module/hooks/safe-area-impl.js +1 -1
  58. package/lib/module/icons/ReactQueryIcon.js +9 -161
  59. package/lib/module/icons/SentryBugIcon.js +9 -171
  60. package/lib/module/index.js +4 -1
  61. package/lib/module/license/AccountSetup.js +52 -0
  62. package/lib/module/license/AccountSetup.web.js +77 -0
  63. package/lib/module/license/FeatureGate.js +10 -43
  64. package/lib/module/license/FreeAccountPrompt.js +35 -12
  65. package/lib/module/license/index.js +1 -1
  66. package/lib/module/license/licenseModule.js +50 -35
  67. package/lib/module/license/tierLimits.js +13 -63
  68. package/lib/module/storage/devToolsStorageKeys.js +8 -1
  69. package/lib/module/stores/BaseEventStore.js +21 -5
  70. package/lib/module/stores/createToolStore.js +21 -3
  71. package/lib/module/stores/floatingToolStore.js +61 -0
  72. package/lib/module/stores/floatingToolStore.test.js +111 -0
  73. package/lib/module/sync/toolActionRegistry.js +84 -2
  74. package/lib/module/ui/backgrounds/README.md +52 -0
  75. package/lib/module/ui/backgrounds/ToolBackground.js +4 -2
  76. package/lib/module/ui/backgrounds/index.js +2 -1
  77. package/lib/module/ui/backgrounds/registry.js +8 -0
  78. package/lib/module/ui/backgrounds/variants/wormhole/motion.js +44 -0
  79. package/lib/module/ui/backgrounds/variants/wormhole/textures.js +3 -0
  80. package/lib/module/ui/backgrounds/variants/wormhole.js +129 -0
  81. package/lib/module/ui/components/ClipboardHintBanner.js +5 -6
  82. package/lib/module/ui/components/CompactRow.js +94 -74
  83. package/lib/module/ui/components/DraggableHeader.js +16 -1
  84. package/lib/module/ui/components/HeaderSearchButton.js +17 -4
  85. package/lib/module/ui/floating/FloatingTool.js +1003 -0
  86. package/lib/module/ui/floating/FloatingTool.web.js +590 -0
  87. package/lib/module/ui/floating/FloatingToolHost.js +29 -0
  88. package/lib/module/ui/floating/FloatingToolHost.web.js +25 -0
  89. package/lib/module/ui/floating/index.js +6 -0
  90. package/lib/module/ui/floating/index.web.js +6 -0
  91. package/lib/module/ui/floating/onboardingConstants.js +64 -0
  92. package/lib/module/ui/floating/onboardingConstants.web.js +27 -0
  93. package/lib/module/ui/gameUI/constants/gameUIColors.js +3 -1
  94. package/lib/module/ui/index.js +5 -1
  95. package/lib/module/ui/night/nightTheme.js +10 -0
  96. package/lib/module/ui/night/primitives.js +22 -5
  97. package/lib/module/ui/otto/OttoSceneView.js +64 -0
  98. package/lib/module/ui/otto/index.js +3 -1
  99. package/lib/module/ui/otto/ottoEngine.js +10 -7
  100. package/lib/module/ui/otto/ottoScenes.js +942 -0
  101. package/lib/module/utils/minimalSuperJSON.js +13 -3
  102. package/lib/typescript/commonjs/JsModal.d.ts +43 -2
  103. package/lib/typescript/commonjs/JsModal.d.ts.map +1 -1
  104. package/lib/typescript/commonjs/JsModal.web.d.ts +5 -2
  105. package/lib/typescript/commonjs/JsModal.web.d.ts.map +1 -1
  106. package/lib/typescript/commonjs/dataViewer/CyberpunkInput.d.ts.map +1 -1
  107. package/lib/typescript/commonjs/dataViewer/LiveExplorer.d.ts.map +1 -1
  108. package/lib/typescript/commonjs/hooks/safe-area-impl.d.ts +1 -1
  109. package/lib/typescript/commonjs/icons/ReactQueryIcon.d.ts +1 -2
  110. package/lib/typescript/commonjs/icons/ReactQueryIcon.d.ts.map +1 -1
  111. package/lib/typescript/commonjs/icons/SentryBugIcon.d.ts +1 -2
  112. package/lib/typescript/commonjs/icons/SentryBugIcon.d.ts.map +1 -1
  113. package/lib/typescript/commonjs/index.d.ts +4 -1
  114. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  115. package/lib/typescript/commonjs/license/AccountSetup.d.ts +4 -0
  116. package/lib/typescript/commonjs/license/AccountSetup.d.ts.map +1 -0
  117. package/lib/typescript/commonjs/license/AccountSetup.web.d.ts +2 -0
  118. package/lib/typescript/commonjs/license/AccountSetup.web.d.ts.map +1 -0
  119. package/lib/typescript/commonjs/license/FeatureGate.d.ts +3 -19
  120. package/lib/typescript/commonjs/license/FeatureGate.d.ts.map +1 -1
  121. package/lib/typescript/commonjs/license/FreeAccountPrompt.d.ts +8 -11
  122. package/lib/typescript/commonjs/license/FreeAccountPrompt.d.ts.map +1 -1
  123. package/lib/typescript/commonjs/license/index.d.ts +1 -1
  124. package/lib/typescript/commonjs/license/index.d.ts.map +1 -1
  125. package/lib/typescript/commonjs/license/licenseModule.d.ts +18 -31
  126. package/lib/typescript/commonjs/license/licenseModule.d.ts.map +1 -1
  127. package/lib/typescript/commonjs/license/tierLimits.d.ts +9 -52
  128. package/lib/typescript/commonjs/license/tierLimits.d.ts.map +1 -1
  129. package/lib/typescript/commonjs/storage/devToolsStorageKeys.d.ts +6 -0
  130. package/lib/typescript/commonjs/storage/devToolsStorageKeys.d.ts.map +1 -1
  131. package/lib/typescript/commonjs/stores/BaseEventStore.d.ts.map +1 -1
  132. package/lib/typescript/commonjs/stores/createToolStore.d.ts.map +1 -1
  133. package/lib/typescript/commonjs/stores/floatingToolStore.d.ts +27 -0
  134. package/lib/typescript/commonjs/stores/floatingToolStore.d.ts.map +1 -0
  135. package/lib/typescript/commonjs/stores/floatingToolStore.test.d.ts +2 -0
  136. package/lib/typescript/commonjs/stores/floatingToolStore.test.d.ts.map +1 -0
  137. package/lib/typescript/commonjs/sync/toolActionRegistry.d.ts +4 -32
  138. package/lib/typescript/commonjs/sync/toolActionRegistry.d.ts.map +1 -1
  139. package/lib/typescript/commonjs/ui/backgrounds/ToolBackground.d.ts +7 -1
  140. package/lib/typescript/commonjs/ui/backgrounds/ToolBackground.d.ts.map +1 -1
  141. package/lib/typescript/commonjs/ui/backgrounds/index.d.ts +2 -1
  142. package/lib/typescript/commonjs/ui/backgrounds/index.d.ts.map +1 -1
  143. package/lib/typescript/commonjs/ui/backgrounds/registry.d.ts.map +1 -1
  144. package/lib/typescript/commonjs/ui/backgrounds/types.d.ts +11 -1
  145. package/lib/typescript/commonjs/ui/backgrounds/types.d.ts.map +1 -1
  146. package/lib/typescript/commonjs/ui/backgrounds/variants/wormhole/motion.d.ts +24 -0
  147. package/lib/typescript/commonjs/ui/backgrounds/variants/wormhole/motion.d.ts.map +1 -0
  148. package/lib/typescript/commonjs/ui/backgrounds/variants/wormhole/textures.d.ts +13 -0
  149. package/lib/typescript/commonjs/ui/backgrounds/variants/wormhole/textures.d.ts.map +1 -0
  150. package/lib/typescript/commonjs/ui/backgrounds/variants/wormhole.d.ts +3 -0
  151. package/lib/typescript/commonjs/ui/backgrounds/variants/wormhole.d.ts.map +1 -0
  152. package/lib/typescript/commonjs/ui/components/ClipboardHintBanner.d.ts.map +1 -1
  153. package/lib/typescript/commonjs/ui/components/CompactRow.d.ts +8 -1
  154. package/lib/typescript/commonjs/ui/components/CompactRow.d.ts.map +1 -1
  155. package/lib/typescript/commonjs/ui/components/DraggableHeader.d.ts +4 -1
  156. package/lib/typescript/commonjs/ui/components/DraggableHeader.d.ts.map +1 -1
  157. package/lib/typescript/commonjs/ui/components/HeaderSearchButton.d.ts +7 -1
  158. package/lib/typescript/commonjs/ui/components/HeaderSearchButton.d.ts.map +1 -1
  159. package/lib/typescript/commonjs/ui/floating/FloatingTool.d.ts +79 -0
  160. package/lib/typescript/commonjs/ui/floating/FloatingTool.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/ui/floating/FloatingTool.web.d.ts +64 -0
  162. package/lib/typescript/commonjs/ui/floating/FloatingTool.web.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/ui/floating/FloatingToolHost.d.ts +3 -0
  164. package/lib/typescript/commonjs/ui/floating/FloatingToolHost.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/ui/floating/FloatingToolHost.web.d.ts +3 -0
  166. package/lib/typescript/commonjs/ui/floating/FloatingToolHost.web.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/ui/floating/index.d.ts +7 -0
  168. package/lib/typescript/commonjs/ui/floating/index.d.ts.map +1 -0
  169. package/lib/typescript/commonjs/ui/floating/index.web.d.ts +7 -0
  170. package/lib/typescript/commonjs/ui/floating/index.web.d.ts.map +1 -0
  171. package/lib/typescript/commonjs/ui/floating/onboardingConstants.d.ts +30 -0
  172. package/lib/typescript/commonjs/ui/floating/onboardingConstants.d.ts.map +1 -0
  173. package/lib/typescript/commonjs/ui/floating/onboardingConstants.web.d.ts +13 -0
  174. package/lib/typescript/commonjs/ui/floating/onboardingConstants.web.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/ui/gameUI/constants/gameUIColors.d.ts +2 -0
  176. package/lib/typescript/commonjs/ui/gameUI/constants/gameUIColors.d.ts.map +1 -1
  177. package/lib/typescript/commonjs/ui/index.d.ts +6 -0
  178. package/lib/typescript/commonjs/ui/index.d.ts.map +1 -1
  179. package/lib/typescript/commonjs/ui/night/nightTheme.d.ts +10 -0
  180. package/lib/typescript/commonjs/ui/night/nightTheme.d.ts.map +1 -1
  181. package/lib/typescript/commonjs/ui/night/primitives.d.ts +10 -3
  182. package/lib/typescript/commonjs/ui/night/primitives.d.ts.map +1 -1
  183. package/lib/typescript/commonjs/ui/otto/OttoSceneView.d.ts +30 -0
  184. package/lib/typescript/commonjs/ui/otto/OttoSceneView.d.ts.map +1 -0
  185. package/lib/typescript/commonjs/ui/otto/index.d.ts +2 -0
  186. package/lib/typescript/commonjs/ui/otto/index.d.ts.map +1 -1
  187. package/lib/typescript/commonjs/ui/otto/ottoEngine.d.ts +1 -1
  188. package/lib/typescript/commonjs/ui/otto/ottoEngine.d.ts.map +1 -1
  189. package/lib/typescript/commonjs/ui/otto/ottoScenes.d.ts +75 -0
  190. package/lib/typescript/commonjs/ui/otto/ottoScenes.d.ts.map +1 -0
  191. package/lib/typescript/commonjs/utils/minimalSuperJSON.d.ts.map +1 -1
  192. package/lib/typescript/module/JsModal.d.ts +43 -2
  193. package/lib/typescript/module/JsModal.d.ts.map +1 -1
  194. package/lib/typescript/module/JsModal.web.d.ts +5 -2
  195. package/lib/typescript/module/JsModal.web.d.ts.map +1 -1
  196. package/lib/typescript/module/dataViewer/CyberpunkInput.d.ts.map +1 -1
  197. package/lib/typescript/module/dataViewer/LiveExplorer.d.ts.map +1 -1
  198. package/lib/typescript/module/hooks/safe-area-impl.d.ts +1 -1
  199. package/lib/typescript/module/icons/ReactQueryIcon.d.ts +1 -2
  200. package/lib/typescript/module/icons/ReactQueryIcon.d.ts.map +1 -1
  201. package/lib/typescript/module/icons/SentryBugIcon.d.ts +1 -2
  202. package/lib/typescript/module/icons/SentryBugIcon.d.ts.map +1 -1
  203. package/lib/typescript/module/index.d.ts +4 -1
  204. package/lib/typescript/module/index.d.ts.map +1 -1
  205. package/lib/typescript/module/license/AccountSetup.d.ts +4 -0
  206. package/lib/typescript/module/license/AccountSetup.d.ts.map +1 -0
  207. package/lib/typescript/module/license/AccountSetup.web.d.ts +2 -0
  208. package/lib/typescript/module/license/AccountSetup.web.d.ts.map +1 -0
  209. package/lib/typescript/module/license/FeatureGate.d.ts +3 -19
  210. package/lib/typescript/module/license/FeatureGate.d.ts.map +1 -1
  211. package/lib/typescript/module/license/FreeAccountPrompt.d.ts +8 -11
  212. package/lib/typescript/module/license/FreeAccountPrompt.d.ts.map +1 -1
  213. package/lib/typescript/module/license/index.d.ts +1 -1
  214. package/lib/typescript/module/license/index.d.ts.map +1 -1
  215. package/lib/typescript/module/license/licenseModule.d.ts +18 -31
  216. package/lib/typescript/module/license/licenseModule.d.ts.map +1 -1
  217. package/lib/typescript/module/license/tierLimits.d.ts +9 -52
  218. package/lib/typescript/module/license/tierLimits.d.ts.map +1 -1
  219. package/lib/typescript/module/storage/devToolsStorageKeys.d.ts +6 -0
  220. package/lib/typescript/module/storage/devToolsStorageKeys.d.ts.map +1 -1
  221. package/lib/typescript/module/stores/BaseEventStore.d.ts.map +1 -1
  222. package/lib/typescript/module/stores/createToolStore.d.ts.map +1 -1
  223. package/lib/typescript/module/stores/floatingToolStore.d.ts +27 -0
  224. package/lib/typescript/module/stores/floatingToolStore.d.ts.map +1 -0
  225. package/lib/typescript/module/stores/floatingToolStore.test.d.ts +2 -0
  226. package/lib/typescript/module/stores/floatingToolStore.test.d.ts.map +1 -0
  227. package/lib/typescript/module/sync/toolActionRegistry.d.ts +4 -32
  228. package/lib/typescript/module/sync/toolActionRegistry.d.ts.map +1 -1
  229. package/lib/typescript/module/ui/backgrounds/ToolBackground.d.ts +7 -1
  230. package/lib/typescript/module/ui/backgrounds/ToolBackground.d.ts.map +1 -1
  231. package/lib/typescript/module/ui/backgrounds/index.d.ts +2 -1
  232. package/lib/typescript/module/ui/backgrounds/index.d.ts.map +1 -1
  233. package/lib/typescript/module/ui/backgrounds/registry.d.ts.map +1 -1
  234. package/lib/typescript/module/ui/backgrounds/types.d.ts +11 -1
  235. package/lib/typescript/module/ui/backgrounds/types.d.ts.map +1 -1
  236. package/lib/typescript/module/ui/backgrounds/variants/wormhole/motion.d.ts +24 -0
  237. package/lib/typescript/module/ui/backgrounds/variants/wormhole/motion.d.ts.map +1 -0
  238. package/lib/typescript/module/ui/backgrounds/variants/wormhole/textures.d.ts +13 -0
  239. package/lib/typescript/module/ui/backgrounds/variants/wormhole/textures.d.ts.map +1 -0
  240. package/lib/typescript/module/ui/backgrounds/variants/wormhole.d.ts +3 -0
  241. package/lib/typescript/module/ui/backgrounds/variants/wormhole.d.ts.map +1 -0
  242. package/lib/typescript/module/ui/components/ClipboardHintBanner.d.ts.map +1 -1
  243. package/lib/typescript/module/ui/components/CompactRow.d.ts +8 -1
  244. package/lib/typescript/module/ui/components/CompactRow.d.ts.map +1 -1
  245. package/lib/typescript/module/ui/components/DraggableHeader.d.ts +4 -1
  246. package/lib/typescript/module/ui/components/DraggableHeader.d.ts.map +1 -1
  247. package/lib/typescript/module/ui/components/HeaderSearchButton.d.ts +7 -1
  248. package/lib/typescript/module/ui/components/HeaderSearchButton.d.ts.map +1 -1
  249. package/lib/typescript/module/ui/floating/FloatingTool.d.ts +79 -0
  250. package/lib/typescript/module/ui/floating/FloatingTool.d.ts.map +1 -0
  251. package/lib/typescript/module/ui/floating/FloatingTool.web.d.ts +64 -0
  252. package/lib/typescript/module/ui/floating/FloatingTool.web.d.ts.map +1 -0
  253. package/lib/typescript/module/ui/floating/FloatingToolHost.d.ts +3 -0
  254. package/lib/typescript/module/ui/floating/FloatingToolHost.d.ts.map +1 -0
  255. package/lib/typescript/module/ui/floating/FloatingToolHost.web.d.ts +3 -0
  256. package/lib/typescript/module/ui/floating/FloatingToolHost.web.d.ts.map +1 -0
  257. package/lib/typescript/module/ui/floating/index.d.ts +7 -0
  258. package/lib/typescript/module/ui/floating/index.d.ts.map +1 -0
  259. package/lib/typescript/module/ui/floating/index.web.d.ts +7 -0
  260. package/lib/typescript/module/ui/floating/index.web.d.ts.map +1 -0
  261. package/lib/typescript/module/ui/floating/onboardingConstants.d.ts +30 -0
  262. package/lib/typescript/module/ui/floating/onboardingConstants.d.ts.map +1 -0
  263. package/lib/typescript/module/ui/floating/onboardingConstants.web.d.ts +13 -0
  264. package/lib/typescript/module/ui/floating/onboardingConstants.web.d.ts.map +1 -0
  265. package/lib/typescript/module/ui/gameUI/constants/gameUIColors.d.ts +2 -0
  266. package/lib/typescript/module/ui/gameUI/constants/gameUIColors.d.ts.map +1 -1
  267. package/lib/typescript/module/ui/index.d.ts +6 -0
  268. package/lib/typescript/module/ui/index.d.ts.map +1 -1
  269. package/lib/typescript/module/ui/night/nightTheme.d.ts +10 -0
  270. package/lib/typescript/module/ui/night/nightTheme.d.ts.map +1 -1
  271. package/lib/typescript/module/ui/night/primitives.d.ts +10 -3
  272. package/lib/typescript/module/ui/night/primitives.d.ts.map +1 -1
  273. package/lib/typescript/module/ui/otto/OttoSceneView.d.ts +30 -0
  274. package/lib/typescript/module/ui/otto/OttoSceneView.d.ts.map +1 -0
  275. package/lib/typescript/module/ui/otto/index.d.ts +2 -0
  276. package/lib/typescript/module/ui/otto/index.d.ts.map +1 -1
  277. package/lib/typescript/module/ui/otto/ottoEngine.d.ts +1 -1
  278. package/lib/typescript/module/ui/otto/ottoEngine.d.ts.map +1 -1
  279. package/lib/typescript/module/ui/otto/ottoScenes.d.ts +75 -0
  280. package/lib/typescript/module/ui/otto/ottoScenes.d.ts.map +1 -0
  281. package/lib/typescript/module/utils/minimalSuperJSON.d.ts.map +1 -1
  282. package/package.json +25 -5
  283. package/scripts/generate-wormhole-textures.cjs +261 -0
  284. package/scripts/test-wormhole-motion.cjs +59 -0
package/README.md CHANGED
@@ -1,34 +1,41 @@
1
- # @buoy/shared-ui
1
+ # @buoy-gg/shared-ui
2
2
 
3
- [![npm](https://img.shields.io/npm/v/@buoy%2Fshared-ui)](https://www.npmjs.com/package/@buoy/shared-ui)
4
-
5
-
6
- Design system pieces shared across the React Buoy dev tools.
3
+ Shared components, colors, hooks, and utilities used by Buoy's React Native tools. Use this package when implementing a custom tool or a compatible internal interface. To install the existing tool suite, start with [@buoy-gg/core](https://www.npmjs.com/package/@buoy-gg/core).
7
4
 
8
5
  ## Install
6
+
9
7
  ```bash
10
- pnpm add @buoy/shared-ui
8
+ npm install @buoy-gg/shared-ui
11
9
  ```
12
10
 
13
- ## What You Get
14
- - Icon set with cyberpunk variants (`EnvLaptopIcon`, `WifiCircuitIcon`, etc.).
15
- - Themed UI primitives (`CyberpunkSectionButton`, `CompactRow`).
16
- - Utility helpers (safe storage wrappers, display formatting).
17
- - Hooks (`useSafeAreaInsets`, `useHoverState`) tuned for React Native.
18
-
19
- ## Usage
20
- ```tsx
21
- import { CyberpunkSectionButton, ReactQueryIcon } from '@buoy/shared-ui';
22
-
23
- export function LaunchReactQuery({ onPress }: { onPress: () => void }) {
24
- return (
25
- <CyberpunkSectionButton
26
- label="React Query"
27
- icon={<ReactQueryIcon size={18} />}
28
- onPress={onPress}
29
- />
30
- );
31
- }
11
+ Keep peer dependencies compatible with your other Buoy packages, including the license package. This is the `@buoy-gg` scope.
12
+
13
+ ## Public entry points
14
+
15
+ | Import | Contents |
16
+ | --- | --- |
17
+ | `@buoy-gg/shared-ui` | Main component and utility exports. |
18
+ | `@buoy-gg/shared-ui/colors` | Palette exports for initialization before component modules load. |
19
+ | `@buoy-gg/shared-ui/ui` | UI components and styling helpers. |
20
+ | `@buoy-gg/shared-ui/hooks` | Shared hooks. |
21
+ | `@buoy-gg/shared-ui/utils` | Utility functions. |
22
+ | `@buoy-gg/shared-ui/dataViewer` | Data inspection components. |
23
+ | `@buoy-gg/shared-ui/history` | History-related exports. |
24
+
25
+ For example, read the shared palette through its dedicated entry point:
26
+
27
+ ```ts
28
+ import { macOSColors } from "@buoy-gg/shared-ui/colors";
29
+
30
+ const panelBackground = macOSColors.background.card;
32
31
  ```
33
32
 
34
- These primitives back every `@buoy/*` package, but you can also use them directly in your own tooling to stay visually consistent.
33
+ Use the installed declarations to select components and their props. Avoid private source imports. Some components and stores depend on account state or provider context; importing a primitive does not initialize the surrounding tool lifecycle.
34
+
35
+ Follow the [custom-tool guide](https://buoy.gg/buoy/latest/docs/custom-tools) to register a tool and its adapter. Verify your panel with empty data, a known populated state, and the supported app theme before connecting remote actions.
36
+
37
+ ## Custom floating tools
38
+
39
+ `FloatingTool` provides the same drag, hide/restore and position behavior used by the DevTools bubble. Use `FloatingToolHost` with `openFloatingTool` to keep compact custom controls mounted across navigation. Each tool supplies its own content and actions. Set `dragFromSurface` to make the background draggable while buttons keep their gestures; the default uses the grip only.
40
+
41
+ See the [custom floating tools guide](https://buoy.gg/buoy/latest/docs/custom-tools/floating-tools) for native and browser integration, lifecycle rules and examples. Browser consumers can import the dedicated `@buoy-gg/shared-ui/floating` entry.
package/floating.d.ts ADDED
@@ -0,0 +1 @@
1
+ export * from "./lib/typescript/module/ui/floating/index";
package/floating.js ADDED
@@ -0,0 +1,2 @@
1
+ // Metro compatibility when package exports are disabled.
2
+ module.exports = require("./lib/module/ui/floating/index.js");
@@ -4,6 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.JsModal = void 0;
7
+ var _licenseModule = require("./license/licenseModule.js");
8
+ var _AccountSetup = require("./license/AccountSetup");
7
9
  var _react = require("react");
8
10
  var _reactNative = require("react-native");
9
11
  var _absoluteFill = require("./utils/absoluteFill.js");
@@ -381,6 +383,7 @@ const JsModalComponent = ({
381
383
  footerHeight = 0,
382
384
  onBack,
383
385
  onMinimize,
386
+ minimizeRequest = 0,
384
387
  minimizeTargetPosition,
385
388
  initialModalState,
386
389
  zIndex,
@@ -688,6 +691,12 @@ const JsModalComponent = ({
688
691
  });
689
692
  }
690
693
  }, [mode, onMinimize, minimizeTargetPosition, visibilityProgress, bottomSheetTranslateY, floatingScale, floatingPosition]);
694
+ const lastMinimizeRequest = (0, _react.useRef)(minimizeRequest);
695
+ (0, _react.useEffect)(() => {
696
+ if (lastMinimizeRequest.current === minimizeRequest) return;
697
+ lastMinimizeRequest.current = minimizeRequest;
698
+ handleMinimize();
699
+ }, [minimizeRequest, handleMinimize]);
691
700
 
692
701
  // Apply initial modal state when restoring from minimized
693
702
  (0, _react.useEffect)(() => {
@@ -1796,4 +1805,10 @@ const footerStyles = _reactNative.StyleSheet.create({
1796
1805
  // ============================================================================
1797
1806
  // EXPORT - Memoized modal component for optimal performance
1798
1807
  // ============================================================================
1799
- const JsModal = exports.JsModal = /*#__PURE__*/(0, _react.memo)(JsModalComponent);
1808
+ const JsModal = exports.JsModal = /*#__PURE__*/(0, _react.memo)(props => {
1809
+ const access = (0, _licenseModule.getUseAccountAccess)()();
1810
+ if (access.status !== "admitted") return props.visible ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_AccountSetup.AccountSetup, {}) : null;
1811
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(JsModalComponent, {
1812
+ ...props
1813
+ });
1814
+ });
@@ -4,6 +4,8 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.JsModal = void 0;
7
+ var _licenseModule = require("./license/licenseModule.js");
8
+ var _AccountSetup = require("./license/AccountSetup");
7
9
  var _react = require("react");
8
10
  var _devToolsStorageKeys = require("./storage/devToolsStorageKeys.js");
9
11
  var _index = require("./context/index.js");
@@ -757,6 +759,7 @@ const JsModalComponent = ({
757
759
  onBack: _onBack,
758
760
  // native never invokes it from JsModal either
759
761
  onMinimize,
762
+ minimizeRequest = 0,
760
763
  minimizeTargetPosition,
761
764
  initialModalState,
762
765
  zIndex,
@@ -962,6 +965,12 @@ const JsModalComponent = ({
962
965
  }, () => onMinimize(currentState)));
963
966
  }
964
967
  }, [mode, onMinimize, minimizeTargetPosition, cancelAnims]);
968
+ const lastMinimizeRequest = (0, _react.useRef)(minimizeRequest);
969
+ (0, _react.useEffect)(() => {
970
+ if (lastMinimizeRequest.current === minimizeRequest) return;
971
+ lastMinimizeRequest.current = minimizeRequest;
972
+ handleMinimize();
973
+ }, [minimizeRequest, handleMinimize]);
965
974
 
966
975
  // Apply initial modal state when restoring from minimized (native parity).
967
976
  (0, _react.useEffect)(() => {
@@ -1634,4 +1643,10 @@ const JsModalComponent = ({
1634
1643
  // ============================================================================
1635
1644
  // EXPORT — memoized like native
1636
1645
  // ============================================================================
1637
- const JsModal = exports.JsModal = /*#__PURE__*/(0, _react.memo)(JsModalComponent);
1646
+ const JsModal = exports.JsModal = /*#__PURE__*/(0, _react.memo)(props => {
1647
+ const access = (0, _licenseModule.getUseAccountAccess)()();
1648
+ if (access.status !== "admitted") return props.visible ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_AccountSetup.AccountSetup, {}) : null;
1649
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(JsModalComponent, {
1650
+ ...props
1651
+ });
1652
+ });
@@ -226,7 +226,12 @@ function CyberpunkInput({
226
226
  }), showDeleteButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
227
227
  style: [styles.deleteButton, isFocused && styles.deleteButtonFocused],
228
228
  onPress: onDelete,
229
- activeOpacity: 0.7,
229
+ activeOpacity: 0.7
230
+ // The same handle scheme container nodes use (`<node>-delete`):
231
+ // the input is `<node>-input`, so its delete is `<node>-delete`.
232
+ ,
233
+ testID: typeof props.testID === "string" && props.testID.endsWith("-input") ? `${props.testID.slice(0, -"-input".length)}-delete` : undefined,
234
+ accessibilityLabel: "Delete item",
230
235
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Trash, {
231
236
  size: 14,
232
237
  strokeWidth: 2,
@@ -194,22 +194,29 @@ function ToggleValueButton({
194
194
  // Pre-compute styles based on value state
195
195
  const badgeStyle = value ? styles.toggleBadgeTrue : styles.toggleBadgeFalse;
196
196
  const textStyle = value ? styles.toggleTextTrue : styles.toggleTextFalse;
197
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.TouchableOpacity, {
198
- "sentry-label": "ignore devtools explorer toggle button",
199
- testID: `${testID}-toggle`,
200
- accessibilityRole: "button",
201
- accessibilityLabel: `${dataPath[dataPath.length - 1] ?? "value"}, ${value ? "true" : "false"}`,
202
- style: styles.modernToggleButton,
203
- onPress: handleClick,
204
- hitSlop: HIT_SLOP_OPTIMIZED,
205
- activeOpacity: 0.8,
206
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
207
- style: [styles.toggleBadge, badgeStyle],
208
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
209
- style: [styles.toggleBadgeText, textStyle],
210
- children: value ? "TRUE" : "FALSE"
197
+
198
+ // Two sibling buttons: on web each renders a real <button>, and a delete
199
+ // button inside the toggle button is invalid HTML (its press would also
200
+ // flip the toggle).
201
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
202
+ style: styles.toggleRow,
203
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
204
+ "sentry-label": "ignore devtools explorer toggle button",
205
+ testID: `${testID}-toggle`,
206
+ accessibilityRole: "button",
207
+ accessibilityLabel: `${dataPath[dataPath.length - 1] ?? "value"}, ${value ? "true" : "false"}`,
208
+ style: styles.modernToggleButton,
209
+ onPress: handleClick,
210
+ hitSlop: HIT_SLOP_OPTIMIZED,
211
+ activeOpacity: 0.8,
212
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
213
+ style: [styles.toggleBadge, badgeStyle],
214
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
215
+ style: [styles.toggleBadgeText, textStyle],
216
+ children: value ? "TRUE" : "FALSE"
217
+ })
211
218
  })
212
- }), removable && writer.remove && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
219
+ }), removable && writer.remove ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
213
220
  "sentry-label": "ignore devtools explorer delete button in toggle",
214
221
  testID: `${testID}-delete`,
215
222
  accessibilityRole: "button",
@@ -223,7 +230,7 @@ function ToggleValueButton({
223
230
  strokeWidth: 2,
224
231
  color: _nightTheme.night.color.danger + "CC"
225
232
  })
226
- })]
233
+ }) : null]
227
234
  });
228
235
  }
229
236
  // Optimized Explorer component following rule2 guidelines [[memory:4875251]]
@@ -866,6 +873,11 @@ const styles = _reactNative.StyleSheet.create({
866
873
  borderColor: _nightTheme.night.color.textTertiary + "66",
867
874
  minHeight: 34
868
875
  },
876
+ toggleRow: {
877
+ flexDirection: "row",
878
+ alignItems: "center",
879
+ gap: 6
880
+ },
869
881
  modernToggleButton: {
870
882
  flexDirection: "row",
871
883
  alignItems: "center",
@@ -7,7 +7,7 @@ exports.useNativeSafeAreaInsets = exports.safeAreaType = exports.hasSafeAreaPack
7
7
  /**
8
8
  * Auto-generated safe area implementation
9
9
  * Detected: none
10
- * Generated at: 2026-09-10T21:40:50.832Z
10
+ * Generated at: 2026-09-18T01:47:02.828Z
11
11
  *
12
12
  * DO NOT EDIT - This file is generated by scripts/detect-safe-area.js
13
13
  *
@@ -3,167 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.ReactQueryIcon = void 0;
7
- var _reactNative = require("react-native");
8
- var _IconBackground = require("./IconBackground.js");
6
+ exports.ReactQueryIcon = ReactQueryIcon;
7
+ var _floatingToolsCore = require("@buoy-gg/floating-tools-core");
9
8
  var _jsxRuntime = require("react/jsx-runtime");
10
- const ColorPresets = {
11
- red: {
12
- color: "#FF3366",
13
- glow: "#FF3366"
14
- },
15
- orange: {
16
- color: "#FF8800",
17
- glow: "#FF8800"
18
- },
19
- yellow: {
20
- color: "#FFD700",
21
- glow: "#FFD700"
22
- },
23
- purple: {
24
- color: "#9945FF",
25
- glow: "#9945FF"
26
- },
27
- cyan: {
28
- color: "#00D4FF",
29
- glow: "#00D4FF"
30
- },
31
- pink: {
32
- color: "#FF45FF",
33
- glow: "#FF45FF"
34
- }
35
- };
9
+ // Compatibility export: all tool surfaces use the approved raster artwork.
36
10
 
37
- // Simplified orbital dots
38
- const ORBITAL_DOTS = [{
39
- x: 0.08,
40
- y: 0.5
41
- }, {
42
- x: 0.92,
43
- y: 0.5
44
- }, {
45
- x: 0.5,
46
- y: 0.2
47
- }, {
48
- x: 0.5,
49
- y: 0.8
50
- }];
51
- const ReactQueryIcon = ({
52
- size = 24,
53
- color,
54
- glowColor,
55
- colorPreset = "red",
56
- variant = "circuit",
57
- noBackground = true
58
- }) => {
59
- const scale = noBackground ? size / 24 : size / 60;
60
- const preset = ColorPresets[colorPreset] || ColorPresets.red;
61
- const activeColor = color || preset.color;
62
- const activeGlow = glowColor || preset.glow;
63
-
64
- // Simplified hexagon using loop
65
- const renderHexagon = () => {
66
- const hexWidth = 8 * scale;
67
- const hexHeight = 2.5 * scale;
68
- const hexLeft = size / 2 - hexWidth / 2;
69
- const hexTop = size / 2 - hexHeight / 2;
70
- const rotations = [0, 60, -60];
71
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
72
- children: [rotations.map((rotation, i) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
73
- style: {
74
- position: "absolute",
75
- width: hexWidth,
76
- height: hexHeight,
77
- backgroundColor: activeColor,
78
- left: hexLeft,
79
- top: hexTop,
80
- transform: rotation !== 0 ? [{
81
- rotate: `${rotation}deg`
82
- }] : undefined,
83
- opacity: 0.9
84
- }
85
- }, `hex-${i}`)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
86
- style: {
87
- position: "absolute",
88
- width: 10 * scale,
89
- height: 10 * scale,
90
- borderRadius: 2 * scale,
91
- backgroundColor: activeGlow,
92
- left: size / 2 - 5 * scale,
93
- top: size / 2 - 5 * scale,
94
- opacity: 0.15
95
- }
96
- })]
97
- });
98
- };
99
-
100
- // Simplified orbital lines using loop
101
- const renderOrbitalLines = () => {
102
- const lineLength = 18 * scale;
103
- const lineThickness = 2 * scale;
104
- const orbitRadius = lineThickness / 2;
105
- const rotations = [0, 60, -60];
106
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
107
- children: [rotations.map((rotation, i) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
108
- style: {
109
- position: "absolute",
110
- width: lineLength,
111
- height: lineThickness,
112
- backgroundColor: activeColor,
113
- borderRadius: orbitRadius,
114
- left: size / 2 - lineLength / 2,
115
- top: size / 2 - lineThickness / 2,
116
- transform: rotation !== 0 ? [{
117
- rotate: `${rotation}deg`
118
- }] : undefined,
119
- opacity: 0.7
120
- }
121
- }, `orbit-${i}`)), ORBITAL_DOTS.map((dot, i) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
122
- style: {
123
- position: "absolute",
124
- width: 2.5 * scale,
125
- height: 2.5 * scale,
126
- borderRadius: 1.25 * scale,
127
- backgroundColor: activeGlow,
128
- left: dot.x * size - 1.25 * scale,
129
- top: dot.y * size - 1.25 * scale,
130
- opacity: 0.5
131
- }
132
- }, `dot-${i}`))]
133
- });
134
- };
135
- const iconContent = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
136
- children: [renderOrbitalLines(), renderHexagon(), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
137
- style: {
138
- position: "absolute",
139
- width: size * 0.7,
140
- height: size * 0.7,
141
- borderRadius: size * 0.35,
142
- borderWidth: 0.5 * scale,
143
- borderColor: activeGlow,
144
- left: size * 0.15,
145
- top: size * 0.15,
146
- opacity: 0.2
147
- }
148
- })]
149
- });
150
- if (noBackground) {
151
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
152
- style: {
153
- width: size,
154
- height: size,
155
- position: "relative",
156
- alignItems: "center",
157
- justifyContent: "center"
158
- },
159
- children: iconContent
160
- });
161
- }
162
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconBackground.IconBackground, {
163
- size: size,
164
- glowColor: activeGlow,
165
- variant: variant,
166
- children: iconContent
11
+ function ReactQueryIcon({
12
+ size = 24
13
+ }) {
14
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.QueryIcon, {
15
+ size: size
167
16
  });
168
- };
169
- exports.ReactQueryIcon = ReactQueryIcon;
17
+ }
@@ -3,179 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.SentryBugIcon = void 0;
7
- var _react = require("react");
8
- var _reactNative = require("react-native");
9
- var _IconBackground = require("./IconBackground.js");
6
+ exports.SentryBugIcon = SentryBugIcon;
7
+ var _floatingToolsCore = require("@buoy-gg/floating-tools-core");
10
8
  var _jsxRuntime = require("react/jsx-runtime");
11
- const ColorPresets = {
12
- red: {
13
- color: "#FF3366",
14
- glow: "#FF3366"
15
- },
16
- purple: {
17
- color: "#9945FF",
18
- glow: "#9945FF"
19
- },
20
- orange: {
21
- color: "#FF8800",
22
- glow: "#FF8800"
23
- },
24
- pink: {
25
- color: "#FF45FF",
26
- glow: "#FF45FF"
27
- },
28
- cyan: {
29
- color: "#00D4FF",
30
- glow: "#00D4FF"
31
- },
32
- green: {
33
- color: "#00FF88",
34
- glow: "#00FF88"
35
- }
36
- };
9
+ // Compatibility export: all tool surfaces use the approved raster artwork.
37
10
 
38
- // Leg positions simplified
39
- const LEGS = [{
40
- y: 0.3,
41
- side: "left",
42
- rotation: -20
43
- }, {
44
- y: 0.5,
45
- side: "left",
46
- rotation: -20
47
- }, {
48
- y: 0.7,
49
- side: "left",
50
- rotation: -20
51
- }, {
52
- y: 0.3,
53
- side: "right",
54
- rotation: 20
55
- }, {
56
- y: 0.5,
57
- side: "right",
58
- rotation: 20
59
- }, {
60
- y: 0.7,
61
- side: "right",
62
- rotation: 20
63
- }];
64
- const SentryBugIcon = ({
11
+ function SentryBugIcon({
65
12
  size = 24,
66
- color,
67
- glowColor,
68
- colorPreset = "red",
69
- variant = "circuit",
70
- noBackground = true
71
- }) => {
72
- const scale = noBackground ? size / 24 : size / 60;
73
- const preset = ColorPresets[colorPreset] || ColorPresets.red;
74
- const activeColor = color || preset.color;
75
- const activeGlow = glowColor || preset.glow;
76
- const iconContent = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
77
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
78
- style: {
79
- position: "absolute",
80
- width: 12 * scale,
81
- height: 14 * scale,
82
- borderRadius: 6 * scale,
83
- backgroundColor: activeColor,
84
- left: size / 2 - 6 * scale,
85
- top: size / 2 - 5 * scale,
86
- opacity: 0.9
87
- }
88
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
89
- style: {
90
- position: "absolute",
91
- width: 8 * scale,
92
- height: 6 * scale,
93
- borderRadius: 4 * scale,
94
- backgroundColor: activeColor,
95
- left: size / 2 - 4 * scale,
96
- top: size / 2 - 9 * scale,
97
- opacity: 0.95
98
- }
99
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
100
- style: {
101
- position: "absolute",
102
- width: 14 * scale,
103
- height: 16 * scale,
104
- borderRadius: 7 * scale,
105
- backgroundColor: activeGlow,
106
- left: size / 2 - 7 * scale,
107
- top: size / 2 - 6 * scale,
108
- opacity: 0.15
109
- }
110
- }), LEGS.map((leg, i) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
111
- style: {
112
- position: "absolute",
113
- width: 4 * scale,
114
- height: 0.8 * scale,
115
- backgroundColor: activeColor,
116
- [leg.side]: size / 2 - 10 * scale,
117
- top: size / 2 - 4 * scale + leg.y * 10 * scale,
118
- transform: [{
119
- rotate: `${leg.rotation}deg`
120
- }],
121
- opacity: 0.8
122
- }
123
- }, `leg-${i}`)), [-15, 15].map((rotation, i) => /*#__PURE__*/(0, _jsxRuntime.jsxs)(_react.Fragment, {
124
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
125
- style: {
126
- position: "absolute",
127
- width: 0.5 * scale,
128
- height: 4 * scale,
129
- backgroundColor: activeColor,
130
- [i === 0 ? "left" : "right"]: size / 2 - 2 * scale,
131
- top: size / 2 - 11 * scale,
132
- transform: [{
133
- rotate: `${rotation}deg`
134
- }],
135
- opacity: 0.7
136
- }
137
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
138
- style: {
139
- position: "absolute",
140
- width: 1.5 * scale,
141
- height: 1.5 * scale,
142
- borderRadius: 0.75 * scale,
143
- backgroundColor: activeGlow,
144
- [i === 0 ? "left" : "right"]: size / 2 - 3 * scale,
145
- top: size / 2 - 12 * scale,
146
- opacity: 0.6
147
- }
148
- })]
149
- }, `antenna-${i}`)), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
150
- style: {
151
- position: "absolute",
152
- width: 1 * scale,
153
- height: 1 * scale,
154
- borderRadius: 0.5 * scale,
155
- backgroundColor: "#fff",
156
- left: size / 2 - 0.5 * scale,
157
- top: size / 2,
158
- opacity: 0.3
159
- }
160
- })]
161
- });
162
- if (noBackground) {
163
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
164
- style: {
165
- width: size,
166
- height: size,
167
- position: "relative",
168
- alignItems: "center",
169
- justifyContent: "center"
170
- },
171
- children: iconContent
172
- });
173
- }
174
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_IconBackground.IconBackground, {
13
+ color
14
+ }) {
15
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_floatingToolsCore.SentryIcon, {
175
16
  size: size,
176
- glowColor: activeGlow,
177
- variant: variant,
178
- children: iconContent
17
+ color: color ?? "#9945FF"
179
18
  });
180
- };
181
- exports.SentryBugIcon = SentryBugIcon;
19
+ }