react-native-debug-toolkit 0.6.4 → 2.1.0

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 (340) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +149 -211
  3. package/README.zh-CN.md +150 -171
  4. package/lib/commonjs/components/ClipboardTab.js +91 -0
  5. package/lib/commonjs/components/ClipboardTab.js.map +1 -0
  6. package/lib/commonjs/components/ConsoleLogTab.js +162 -0
  7. package/lib/commonjs/components/ConsoleLogTab.js.map +1 -0
  8. package/lib/commonjs/components/DebugPanel.js +230 -0
  9. package/lib/commonjs/components/DebugPanel.js.map +1 -0
  10. package/lib/commonjs/components/DebugView.js +66 -0
  11. package/lib/commonjs/components/DebugView.js.map +1 -0
  12. package/lib/commonjs/components/EnvironmentTab.js +287 -0
  13. package/lib/commonjs/components/EnvironmentTab.js.map +1 -0
  14. package/lib/commonjs/components/FeatureTabBar.js +182 -0
  15. package/lib/commonjs/components/FeatureTabBar.js.map +1 -0
  16. package/lib/commonjs/components/FloatIcon.js +187 -0
  17. package/lib/commonjs/components/FloatIcon.js.map +1 -0
  18. package/lib/commonjs/components/FloatPanelView.js +214 -0
  19. package/lib/commonjs/components/FloatPanelView.js.map +1 -0
  20. package/lib/commonjs/components/NavigationLogTab.js +131 -0
  21. package/lib/commonjs/components/NavigationLogTab.js.map +1 -0
  22. package/lib/commonjs/components/NetworkLogTab.js +404 -0
  23. package/lib/commonjs/components/NetworkLogTab.js.map +1 -0
  24. package/lib/commonjs/components/ThirdPartyLibsTab.js +97 -0
  25. package/lib/commonjs/components/ThirdPartyLibsTab.js.map +1 -0
  26. package/lib/commonjs/components/TrackLogTab.js +230 -0
  27. package/lib/commonjs/components/TrackLogTab.js.map +1 -0
  28. package/lib/commonjs/components/ZustandLogTab.js +311 -0
  29. package/lib/commonjs/components/ZustandLogTab.js.map +1 -0
  30. package/lib/commonjs/components/shared/CollapsibleSection.js +84 -0
  31. package/lib/commonjs/components/shared/CollapsibleSection.js.map +1 -0
  32. package/lib/commonjs/components/shared/CopyButton.js +64 -0
  33. package/lib/commonjs/components/shared/CopyButton.js.map +1 -0
  34. package/lib/commonjs/components/shared/JsonView.js +157 -0
  35. package/lib/commonjs/components/shared/JsonView.js.map +1 -0
  36. package/lib/commonjs/components/shared/LogListScreen.js +174 -0
  37. package/lib/commonjs/components/shared/LogListScreen.js.map +1 -0
  38. package/lib/commonjs/core/DebugToolkit.js +122 -0
  39. package/lib/commonjs/core/DebugToolkit.js.map +1 -0
  40. package/lib/commonjs/core/DebugToolkitProvider.js +66 -0
  41. package/lib/commonjs/core/DebugToolkitProvider.js.map +1 -0
  42. package/lib/commonjs/features/ClipboardFeature.js +21 -0
  43. package/lib/commonjs/features/ClipboardFeature.js.map +1 -0
  44. package/lib/commonjs/features/ConsoleLogFeature.js +115 -0
  45. package/lib/commonjs/features/ConsoleLogFeature.js.map +1 -0
  46. package/lib/commonjs/features/EnvironmentFeature.js +160 -0
  47. package/lib/commonjs/features/EnvironmentFeature.js.map +1 -0
  48. package/lib/commonjs/features/NavigationLogFeature.js +39 -0
  49. package/lib/commonjs/features/NavigationLogFeature.js.map +1 -0
  50. package/lib/commonjs/features/NetworkFeature.js +107 -0
  51. package/lib/commonjs/features/NetworkFeature.js.map +1 -0
  52. package/lib/commonjs/features/ThirdPartyLibsFeature.js +51 -0
  53. package/lib/commonjs/features/ThirdPartyLibsFeature.js.map +1 -0
  54. package/lib/commonjs/features/TrackFeature.js +34 -0
  55. package/lib/commonjs/features/TrackFeature.js.map +1 -0
  56. package/lib/commonjs/features/ZustandLogFeature.js +59 -0
  57. package/lib/commonjs/features/ZustandLogFeature.js.map +1 -0
  58. package/lib/commonjs/hooks/useNavigationLogger.js +78 -0
  59. package/lib/commonjs/hooks/useNavigationLogger.js.map +1 -0
  60. package/lib/commonjs/hooks/useSlideDetailAnimation.js +53 -0
  61. package/lib/commonjs/hooks/useSlideDetailAnimation.js.map +1 -0
  62. package/lib/commonjs/index.js +152 -0
  63. package/lib/commonjs/index.js.map +1 -0
  64. package/lib/commonjs/initialize.js +84 -0
  65. package/lib/commonjs/initialize.js.map +1 -0
  66. package/lib/commonjs/interceptors/networkInterceptor.js +466 -0
  67. package/lib/commonjs/interceptors/networkInterceptor.js.map +1 -0
  68. package/lib/commonjs/native/NativeDebugLibs.js +58 -0
  69. package/lib/commonjs/native/NativeDebugLibs.js.map +1 -0
  70. package/lib/commonjs/package.json +1 -0
  71. package/lib/commonjs/types/index.js +6 -0
  72. package/lib/commonjs/types/index.js.map +1 -0
  73. package/lib/commonjs/utils/colors.js +48 -0
  74. package/lib/commonjs/utils/colors.js.map +1 -0
  75. package/lib/commonjs/utils/copyToComputer.js +97 -0
  76. package/lib/commonjs/utils/copyToComputer.js.map +1 -0
  77. package/lib/commonjs/utils/createChannelFeature.js +48 -0
  78. package/lib/commonjs/utils/createChannelFeature.js.map +1 -0
  79. package/lib/commonjs/utils/createEventChannel.js +21 -0
  80. package/lib/commonjs/utils/createEventChannel.js.map +1 -0
  81. package/lib/commonjs/utils/createObservableStore.js +38 -0
  82. package/lib/commonjs/utils/createObservableStore.js.map +1 -0
  83. package/lib/commonjs/utils/layout.js +8 -0
  84. package/lib/commonjs/utils/layout.js.map +1 -0
  85. package/lib/commonjs/utils/safeStringify.js +27 -0
  86. package/lib/commonjs/utils/safeStringify.js.map +1 -0
  87. package/lib/commonjs/utils/urlRewriterRegistry.js +14 -0
  88. package/lib/commonjs/utils/urlRewriterRegistry.js.map +1 -0
  89. package/lib/module/components/ClipboardTab.js +86 -0
  90. package/lib/module/components/ClipboardTab.js.map +1 -0
  91. package/lib/module/components/ConsoleLogTab.js +157 -0
  92. package/lib/module/components/ConsoleLogTab.js.map +1 -0
  93. package/lib/module/components/DebugPanel.js +225 -0
  94. package/lib/module/components/DebugPanel.js.map +1 -0
  95. package/lib/module/components/DebugView.js +61 -0
  96. package/lib/module/components/DebugView.js.map +1 -0
  97. package/lib/module/components/EnvironmentTab.js +282 -0
  98. package/lib/module/components/EnvironmentTab.js.map +1 -0
  99. package/lib/module/components/FeatureTabBar.js +177 -0
  100. package/lib/module/components/FeatureTabBar.js.map +1 -0
  101. package/lib/module/components/FloatIcon.js +182 -0
  102. package/lib/module/components/FloatIcon.js.map +1 -0
  103. package/lib/module/components/FloatPanelView.js +209 -0
  104. package/lib/module/components/FloatPanelView.js.map +1 -0
  105. package/lib/module/components/NavigationLogTab.js +126 -0
  106. package/lib/module/components/NavigationLogTab.js.map +1 -0
  107. package/lib/module/components/NetworkLogTab.js +399 -0
  108. package/lib/module/components/NetworkLogTab.js.map +1 -0
  109. package/lib/module/components/ThirdPartyLibsTab.js +91 -0
  110. package/lib/module/components/ThirdPartyLibsTab.js.map +1 -0
  111. package/lib/module/components/TrackLogTab.js +225 -0
  112. package/lib/module/components/TrackLogTab.js.map +1 -0
  113. package/lib/module/components/ZustandLogTab.js +306 -0
  114. package/lib/module/components/ZustandLogTab.js.map +1 -0
  115. package/lib/module/components/shared/CollapsibleSection.js +78 -0
  116. package/lib/module/components/shared/CollapsibleSection.js.map +1 -0
  117. package/lib/module/components/shared/CopyButton.js +58 -0
  118. package/lib/module/components/shared/CopyButton.js.map +1 -0
  119. package/lib/module/components/shared/JsonView.js +152 -0
  120. package/lib/module/components/shared/JsonView.js.map +1 -0
  121. package/lib/module/components/shared/LogListScreen.js +169 -0
  122. package/lib/module/components/shared/LogListScreen.js.map +1 -0
  123. package/lib/module/core/DebugToolkit.js +118 -0
  124. package/lib/module/core/DebugToolkit.js.map +1 -0
  125. package/lib/module/core/DebugToolkitProvider.js +60 -0
  126. package/lib/module/core/DebugToolkitProvider.js.map +1 -0
  127. package/lib/module/features/ClipboardFeature.js +16 -0
  128. package/lib/module/features/ClipboardFeature.js.map +1 -0
  129. package/lib/module/features/ConsoleLogFeature.js +109 -0
  130. package/lib/module/features/ConsoleLogFeature.js.map +1 -0
  131. package/lib/module/features/EnvironmentFeature.js +156 -0
  132. package/lib/module/features/EnvironmentFeature.js.map +1 -0
  133. package/lib/module/features/NavigationLogFeature.js +32 -0
  134. package/lib/module/features/NavigationLogFeature.js.map +1 -0
  135. package/lib/module/features/NetworkFeature.js +101 -0
  136. package/lib/module/features/NetworkFeature.js.map +1 -0
  137. package/lib/module/features/ThirdPartyLibsFeature.js +46 -0
  138. package/lib/module/features/ThirdPartyLibsFeature.js.map +1 -0
  139. package/lib/module/features/TrackFeature.js +27 -0
  140. package/lib/module/features/TrackFeature.js.map +1 -0
  141. package/lib/module/features/ZustandLogFeature.js +53 -0
  142. package/lib/module/features/ZustandLogFeature.js.map +1 -0
  143. package/lib/module/hooks/useNavigationLogger.js +74 -0
  144. package/lib/module/hooks/useNavigationLogger.js.map +1 -0
  145. package/lib/module/hooks/useSlideDetailAnimation.js +50 -0
  146. package/lib/module/hooks/useSlideDetailAnimation.js.map +1 -0
  147. package/lib/module/index.js +28 -0
  148. package/lib/module/index.js.map +1 -0
  149. package/lib/module/initialize.js +80 -0
  150. package/lib/module/initialize.js.map +1 -0
  151. package/lib/module/interceptors/networkInterceptor.js +460 -0
  152. package/lib/module/interceptors/networkInterceptor.js.map +1 -0
  153. package/lib/module/native/NativeDebugLibs.js +54 -0
  154. package/lib/module/native/NativeDebugLibs.js.map +1 -0
  155. package/lib/module/package.json +1 -0
  156. package/lib/module/types/index.js +4 -0
  157. package/lib/module/types/index.js.map +1 -0
  158. package/lib/module/utils/colors.js +43 -0
  159. package/lib/module/utils/colors.js.map +1 -0
  160. package/lib/module/utils/copyToComputer.js +91 -0
  161. package/lib/module/utils/copyToComputer.js.map +1 -0
  162. package/lib/module/utils/createChannelFeature.js +44 -0
  163. package/lib/module/utils/createChannelFeature.js.map +1 -0
  164. package/lib/module/utils/createEventChannel.js +17 -0
  165. package/lib/module/utils/createEventChannel.js.map +1 -0
  166. package/lib/module/utils/createObservableStore.js +34 -0
  167. package/lib/module/utils/createObservableStore.js.map +1 -0
  168. package/lib/module/utils/layout.js +4 -0
  169. package/lib/module/utils/layout.js.map +1 -0
  170. package/lib/module/utils/safeStringify.js +23 -0
  171. package/lib/module/utils/safeStringify.js.map +1 -0
  172. package/lib/module/utils/urlRewriterRegistry.js +10 -0
  173. package/lib/module/utils/urlRewriterRegistry.js.map +1 -0
  174. package/lib/typescript/src/components/ClipboardTab.d.ts +4 -0
  175. package/lib/typescript/src/components/ClipboardTab.d.ts.map +1 -0
  176. package/lib/typescript/src/components/ConsoleLogTab.d.ts +4 -0
  177. package/lib/typescript/src/components/ConsoleLogTab.d.ts.map +1 -0
  178. package/lib/typescript/src/components/DebugPanel.d.ts +9 -0
  179. package/lib/typescript/src/components/DebugPanel.d.ts.map +1 -0
  180. package/lib/typescript/src/components/DebugView.d.ts +19 -0
  181. package/lib/typescript/src/components/DebugView.d.ts.map +1 -0
  182. package/lib/typescript/src/components/EnvironmentTab.d.ts +4 -0
  183. package/lib/typescript/src/components/EnvironmentTab.d.ts.map +1 -0
  184. package/lib/typescript/src/components/FeatureTabBar.d.ts +13 -0
  185. package/lib/typescript/src/components/FeatureTabBar.d.ts.map +1 -0
  186. package/lib/typescript/src/components/FloatIcon.d.ts +12 -0
  187. package/lib/typescript/src/components/FloatIcon.d.ts.map +1 -0
  188. package/lib/typescript/src/components/FloatPanelView.d.ts +9 -0
  189. package/lib/typescript/src/components/FloatPanelView.d.ts.map +1 -0
  190. package/lib/typescript/src/components/NavigationLogTab.d.ts +4 -0
  191. package/lib/typescript/src/components/NavigationLogTab.d.ts.map +1 -0
  192. package/lib/typescript/src/components/NetworkLogTab.d.ts +4 -0
  193. package/lib/typescript/src/components/NetworkLogTab.d.ts.map +1 -0
  194. package/lib/typescript/src/components/ThirdPartyLibsTab.d.ts +4 -0
  195. package/lib/typescript/src/components/ThirdPartyLibsTab.d.ts.map +1 -0
  196. package/lib/typescript/src/components/TrackLogTab.d.ts +4 -0
  197. package/lib/typescript/src/components/TrackLogTab.d.ts.map +1 -0
  198. package/lib/typescript/src/components/ZustandLogTab.d.ts +4 -0
  199. package/lib/typescript/src/components/ZustandLogTab.d.ts.map +1 -0
  200. package/lib/typescript/src/components/shared/CollapsibleSection.d.ts +9 -0
  201. package/lib/typescript/src/components/shared/CollapsibleSection.d.ts.map +1 -0
  202. package/lib/typescript/src/components/shared/CopyButton.d.ts +12 -0
  203. package/lib/typescript/src/components/shared/CopyButton.d.ts.map +1 -0
  204. package/lib/typescript/src/components/shared/JsonView.d.ts +6 -0
  205. package/lib/typescript/src/components/shared/JsonView.d.ts.map +1 -0
  206. package/lib/typescript/src/components/shared/LogListScreen.d.ts +21 -0
  207. package/lib/typescript/src/components/shared/LogListScreen.d.ts.map +1 -0
  208. package/lib/typescript/src/core/DebugToolkit.d.ts +20 -0
  209. package/lib/typescript/src/core/DebugToolkit.d.ts.map +1 -0
  210. package/lib/typescript/src/core/DebugToolkitProvider.d.ts +15 -0
  211. package/lib/typescript/src/core/DebugToolkitProvider.d.ts.map +1 -0
  212. package/lib/typescript/src/features/ClipboardFeature.d.ts +7 -0
  213. package/lib/typescript/src/features/ClipboardFeature.d.ts.map +1 -0
  214. package/lib/typescript/src/features/ConsoleLogFeature.d.ts +9 -0
  215. package/lib/typescript/src/features/ConsoleLogFeature.d.ts.map +1 -0
  216. package/lib/typescript/src/features/EnvironmentFeature.d.ts +8 -0
  217. package/lib/typescript/src/features/EnvironmentFeature.d.ts.map +1 -0
  218. package/lib/typescript/src/features/NavigationLogFeature.d.ts +10 -0
  219. package/lib/typescript/src/features/NavigationLogFeature.d.ts.map +1 -0
  220. package/lib/typescript/src/features/NetworkFeature.d.ts +15 -0
  221. package/lib/typescript/src/features/NetworkFeature.d.ts.map +1 -0
  222. package/lib/typescript/src/features/ThirdPartyLibsFeature.d.ts +3 -0
  223. package/lib/typescript/src/features/ThirdPartyLibsFeature.d.ts.map +1 -0
  224. package/lib/typescript/src/features/TrackFeature.d.ts +14 -0
  225. package/lib/typescript/src/features/TrackFeature.d.ts.map +1 -0
  226. package/lib/typescript/src/features/ZustandLogFeature.d.ts +31 -0
  227. package/lib/typescript/src/features/ZustandLogFeature.d.ts.map +1 -0
  228. package/lib/typescript/src/hooks/useNavigationLogger.d.ts +13 -0
  229. package/lib/typescript/src/hooks/useNavigationLogger.d.ts.map +1 -0
  230. package/lib/typescript/src/hooks/useSlideDetailAnimation.d.ts +11 -0
  231. package/lib/typescript/src/hooks/useSlideDetailAnimation.d.ts.map +1 -0
  232. package/lib/typescript/src/index.d.ts +26 -0
  233. package/lib/typescript/src/index.d.ts.map +1 -0
  234. package/lib/typescript/src/initialize.d.ts +32 -0
  235. package/lib/typescript/src/initialize.d.ts.map +1 -0
  236. package/lib/typescript/src/interceptors/networkInterceptor.d.ts +18 -0
  237. package/lib/typescript/src/interceptors/networkInterceptor.d.ts.map +1 -0
  238. package/lib/typescript/src/native/NativeDebugLibs.d.ts +11 -0
  239. package/lib/typescript/src/native/NativeDebugLibs.d.ts.map +1 -0
  240. package/lib/typescript/src/types/index.d.ts +109 -0
  241. package/lib/typescript/src/types/index.d.ts.map +1 -0
  242. package/lib/typescript/src/utils/colors.d.ts +21 -0
  243. package/lib/typescript/src/utils/colors.d.ts.map +1 -0
  244. package/lib/typescript/src/utils/copyToComputer.d.ts +30 -0
  245. package/lib/typescript/src/utils/copyToComputer.d.ts.map +1 -0
  246. package/lib/typescript/src/utils/createChannelFeature.d.ts +18 -0
  247. package/lib/typescript/src/utils/createChannelFeature.d.ts.map +1 -0
  248. package/lib/typescript/src/utils/createEventChannel.d.ts +7 -0
  249. package/lib/typescript/src/utils/createEventChannel.d.ts.map +1 -0
  250. package/lib/typescript/src/utils/createObservableStore.d.ts +9 -0
  251. package/lib/typescript/src/utils/createObservableStore.d.ts.map +1 -0
  252. package/lib/typescript/src/utils/layout.d.ts +2 -0
  253. package/lib/typescript/src/utils/layout.d.ts.map +1 -0
  254. package/lib/typescript/src/utils/safeStringify.d.ts +6 -0
  255. package/lib/typescript/src/utils/safeStringify.d.ts.map +1 -0
  256. package/lib/typescript/src/utils/urlRewriterRegistry.d.ts +7 -0
  257. package/lib/typescript/src/utils/urlRewriterRegistry.d.ts.map +1 -0
  258. package/package.json +67 -24
  259. package/src/components/ClipboardTab.tsx +81 -0
  260. package/src/components/ConsoleLogTab.tsx +95 -0
  261. package/src/components/DebugPanel.tsx +215 -0
  262. package/src/components/DebugView.tsx +80 -0
  263. package/src/components/EnvironmentTab.tsx +276 -0
  264. package/src/components/FeatureTabBar.tsx +204 -0
  265. package/src/components/FloatIcon.tsx +171 -0
  266. package/src/components/FloatPanelView.tsx +202 -0
  267. package/src/components/NavigationLogTab.tsx +66 -0
  268. package/src/components/NetworkLogTab.tsx +270 -0
  269. package/src/components/ThirdPartyLibsTab.tsx +63 -0
  270. package/src/components/TrackLogTab.tsx +110 -0
  271. package/src/components/ZustandLogTab.tsx +203 -0
  272. package/src/components/shared/CollapsibleSection.tsx +78 -0
  273. package/src/components/shared/CopyButton.tsx +68 -0
  274. package/src/components/shared/JsonView.tsx +125 -0
  275. package/src/components/shared/LogListScreen.tsx +164 -0
  276. package/src/core/DebugToolkit.tsx +150 -0
  277. package/src/core/DebugToolkitProvider.tsx +83 -0
  278. package/src/features/ClipboardFeature.ts +15 -0
  279. package/src/features/ConsoleLogFeature.ts +116 -0
  280. package/src/features/EnvironmentFeature.ts +186 -0
  281. package/src/features/NavigationLogFeature.ts +44 -0
  282. package/src/features/NetworkFeature.ts +126 -0
  283. package/src/features/ThirdPartyLibsFeature.ts +42 -0
  284. package/src/features/TrackFeature.ts +34 -0
  285. package/src/features/ZustandLogFeature.ts +101 -0
  286. package/src/hooks/useNavigationLogger.ts +102 -0
  287. package/src/hooks/useSlideDetailAnimation.ts +45 -0
  288. package/src/index.ts +48 -0
  289. package/src/initialize.ts +122 -0
  290. package/src/interceptors/networkInterceptor.ts +646 -0
  291. package/src/native/NativeDebugLibs.ts +74 -0
  292. package/src/types/index.ts +127 -0
  293. package/src/utils/colors.ts +38 -0
  294. package/src/utils/copyToComputer.ts +104 -0
  295. package/src/utils/createChannelFeature.ts +55 -0
  296. package/src/utils/createEventChannel.ts +22 -0
  297. package/src/utils/createObservableStore.ts +42 -0
  298. package/src/utils/layout.ts +1 -0
  299. package/src/utils/safeStringify.ts +25 -0
  300. package/src/utils/urlRewriterRegistry.ts +10 -0
  301. package/.cursor/rules/react-native.mdc +0 -41
  302. package/index.js +0 -41
  303. package/ios/BuildTypeModule.h +0 -9
  304. package/ios/BuildTypeModule.m +0 -42
  305. package/ios/RNDebugLibs.h +0 -10
  306. package/ios/RNDebugLibs.m +0 -79
  307. package/lib/DebugToolKit.js +0 -126
  308. package/lib/EnvironmentManager.ts +0 -80
  309. package/lib/NativeDebugLibs.js +0 -67
  310. package/lib/features/ConsoleLogFeature.js +0 -70
  311. package/lib/features/NavigationLogFeature.js +0 -45
  312. package/lib/features/NetworkFeature.js +0 -389
  313. package/lib/features/PerformanceFeature.js +0 -390
  314. package/lib/features/ThirdPartyLibsFeature.js +0 -63
  315. package/lib/features/TrackFeature.js +0 -94
  316. package/lib/features/ZustandLogFeature.js +0 -44
  317. package/lib/hooks/useNavigationLogger.js +0 -92
  318. package/lib/index.js +0 -114
  319. package/lib/navigation/NavigationLogger.js +0 -1
  320. package/lib/types/TrackTypes.ts +0 -92
  321. package/lib/utils/DebugConst.js +0 -67
  322. package/lib/utils/StorageUtils.js +0 -80
  323. package/lib/views/ConsoleLogDetails.js +0 -314
  324. package/lib/views/FloatPanelView.js +0 -697
  325. package/lib/views/HttpLogDetails.js +0 -648
  326. package/lib/views/NavigationLogDetails.js +0 -302
  327. package/lib/views/RestartModal.js +0 -75
  328. package/lib/views/SubViewConsoleLogs.js +0 -209
  329. package/lib/views/SubViewEnvironment.js +0 -73
  330. package/lib/views/SubViewHTTPLogs.js +0 -235
  331. package/lib/views/SubViewNavigationLogs.js +0 -199
  332. package/lib/views/SubViewPerformance.js +0 -515
  333. package/lib/views/SubViewThirdPartyLibs.js +0 -239
  334. package/lib/views/SubViewTrackLogs.js +0 -318
  335. package/lib/views/SubViewZustandLogs.js +0 -279
  336. package/lib/views/TabView.js +0 -66
  337. package/lib/views/TrackLogDetails.js +0 -481
  338. package/lib/views/ZustandLogDetails.js +0 -355
  339. package/react-native-debug-toolkit.podspec +0 -25
  340. package/react-native.config.js +0 -18
@@ -0,0 +1,466 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.resetInterceptors = resetInterceptors;
7
+ exports.setupAxios = setupAxios;
8
+ exports.startFetch = startFetch;
9
+ exports.startXMLHttpRequest = startXMLHttpRequest;
10
+ var _urlRewriterRegistry = require("../utils/urlRewriterRegistry");
11
+ // ─── Axios types ───────────────────────────────────────
12
+
13
+ // ─── XMLHttpRequest types ─────────────────────────────
14
+
15
+ // ─── Shared helpers ────────────────────────────────────
16
+
17
+ function rewriteUrl(url) {
18
+ const rewriter = _urlRewriterRegistry.urlRewriter.get();
19
+ if (!rewriter) {
20
+ return url;
21
+ }
22
+ try {
23
+ return rewriter(url);
24
+ } catch {
25
+ return url;
26
+ }
27
+ }
28
+ function headersToObject(headers) {
29
+ const result = {};
30
+ if (!headers) {
31
+ return result;
32
+ }
33
+ if (typeof headers.forEach === 'function') {
34
+ headers.forEach((value, key) => {
35
+ result[key] = value;
36
+ });
37
+ return result;
38
+ }
39
+ Object.keys(headers).forEach(key => {
40
+ result[key] = headers[key];
41
+ });
42
+ return result;
43
+ }
44
+ function getRequestSnapshot(input, init) {
45
+ const request = input instanceof Request ? input : null;
46
+ return {
47
+ url: typeof input === 'string' ? input : request?.url ?? String(input),
48
+ method: (init?.method || request?.method || 'GET').toUpperCase(),
49
+ headers: init?.headers ? headersToObject(init.headers) : request?.headers ? headersToObject(request.headers) : undefined,
50
+ body: init?.body
51
+ };
52
+ }
53
+ async function parseResponseBody(response) {
54
+ const raw = await response.clone().text();
55
+ if (!raw) {
56
+ return undefined;
57
+ }
58
+ try {
59
+ return JSON.parse(raw);
60
+ } catch {
61
+ return raw;
62
+ }
63
+ }
64
+ function parseMaybeJson(raw) {
65
+ if (!raw) {
66
+ return undefined;
67
+ }
68
+ try {
69
+ return JSON.parse(raw);
70
+ } catch {
71
+ return raw;
72
+ }
73
+ }
74
+ function parseRawHeaders(rawHeaders) {
75
+ if (!rawHeaders) {
76
+ return undefined;
77
+ }
78
+ const headers = {};
79
+ rawHeaders.split(/\r?\n/).forEach(line => {
80
+ const separatorIndex = line.indexOf(':');
81
+ if (separatorIndex <= 0) {
82
+ return;
83
+ }
84
+ const key = line.slice(0, separatorIndex).trim();
85
+ const value = line.slice(separatorIndex + 1).trim();
86
+ if (!key) {
87
+ return;
88
+ }
89
+ headers[key] = value;
90
+ });
91
+ return Object.keys(headers).length > 0 ? headers : undefined;
92
+ }
93
+ function getXMLHttpRequestConstructor() {
94
+ const globalWithXhr = globalThis;
95
+ const candidate = globalWithXhr.XMLHttpRequest;
96
+ if (typeof candidate !== 'function') {
97
+ return undefined;
98
+ }
99
+ const prototype = candidate.prototype;
100
+ if (!prototype || typeof prototype.open !== 'function' || typeof prototype.send !== 'function') {
101
+ return undefined;
102
+ }
103
+ return candidate;
104
+ }
105
+ function getXhrResponseHeaders(xhr) {
106
+ if (typeof xhr.getAllResponseHeaders !== 'function') {
107
+ return undefined;
108
+ }
109
+ try {
110
+ return parseRawHeaders(xhr.getAllResponseHeaders());
111
+ } catch {
112
+ return undefined;
113
+ }
114
+ }
115
+ function getXhrResponseData(xhr) {
116
+ const responseType = typeof xhr.responseType === 'string' ? xhr.responseType : '';
117
+ if (responseType === 'json') {
118
+ return xhr.response;
119
+ }
120
+ if (responseType && responseType !== 'text') {
121
+ return undefined;
122
+ }
123
+ try {
124
+ if (typeof xhr.responseText === 'string') {
125
+ return parseMaybeJson(xhr.responseText);
126
+ }
127
+ } catch {
128
+ return undefined;
129
+ }
130
+ return typeof xhr.response === 'string' ? parseMaybeJson(xhr.response) : xhr.response;
131
+ }
132
+
133
+ // ─── Interceptor manager (encapsulated mutable state) ──
134
+
135
+ let originalFetch = null;
136
+ let fetchRefCount = 0;
137
+ const pendingAxiosRequests = new WeakMap();
138
+ const axiosRegistrations = new WeakMap();
139
+ let originalXMLHttpRequest = null;
140
+ let xhrRefCount = 0;
141
+ const pendingXhrRequests = new WeakMap();
142
+ function stopFetch() {
143
+ fetchRefCount = Math.max(0, fetchRefCount - 1);
144
+ if (fetchRefCount === 0 && originalFetch) {
145
+ globalThis.fetch = originalFetch;
146
+ originalFetch = null;
147
+ }
148
+ }
149
+ function startFetch(emit) {
150
+ fetchRefCount += 1;
151
+ if (originalFetch) {
152
+ return () => {
153
+ stopFetch();
154
+ };
155
+ }
156
+ originalFetch = globalThis.fetch;
157
+ globalThis.fetch = async function interceptedFetch(input, init) {
158
+ const startTime = Date.now();
159
+ let rewrittenInput = input;
160
+ if (_urlRewriterRegistry.urlRewriter.get()) {
161
+ if (typeof input === 'string') {
162
+ rewrittenInput = rewriteUrl(input);
163
+ } else if (input instanceof Request) {
164
+ rewrittenInput = new Request(rewriteUrl(input.url), input);
165
+ }
166
+ }
167
+ const request = getRequestSnapshot(rewrittenInput, init);
168
+ try {
169
+ const response = await originalFetch.call(globalThis, rewrittenInput, init);
170
+ const duration = Date.now() - startTime;
171
+ try {
172
+ const data = await parseResponseBody(response);
173
+ emit({
174
+ timestamp: startTime,
175
+ duration,
176
+ request,
177
+ response: {
178
+ status: response.status,
179
+ statusText: response.statusText,
180
+ data
181
+ }
182
+ });
183
+ } catch {
184
+ emit({
185
+ timestamp: startTime,
186
+ duration,
187
+ request,
188
+ response: {
189
+ status: response.status,
190
+ statusText: response.statusText
191
+ }
192
+ });
193
+ }
194
+ return response;
195
+ } catch (error) {
196
+ emit({
197
+ timestamp: startTime,
198
+ duration: Date.now() - startTime,
199
+ request,
200
+ error: error instanceof Error ? error.message : String(error)
201
+ });
202
+ throw error;
203
+ }
204
+ };
205
+ return () => {
206
+ stopFetch();
207
+ };
208
+ }
209
+ function emitXhrLog(xhr, emit, error) {
210
+ const pending = pendingXhrRequests.get(xhr);
211
+ if (!pending) {
212
+ return;
213
+ }
214
+ const status = typeof xhr.status === 'number' ? xhr.status : 0;
215
+ const statusText = typeof xhr.statusText === 'string' ? xhr.statusText : undefined;
216
+ emit({
217
+ timestamp: pending.timestamp,
218
+ duration: Date.now() - pending.startTime,
219
+ request: {
220
+ url: pending.url,
221
+ method: pending.method,
222
+ headers: Object.keys(pending.headers).length > 0 ? pending.headers : undefined,
223
+ body: pending.body
224
+ },
225
+ response: error ? undefined : {
226
+ status,
227
+ statusText,
228
+ headers: getXhrResponseHeaders(xhr),
229
+ data: getXhrResponseData(xhr),
230
+ success: status >= 200 && status < 300
231
+ },
232
+ error
233
+ });
234
+ pendingXhrRequests.delete(xhr);
235
+ }
236
+ function isXhrDone(xhr) {
237
+ return typeof xhr.readyState === 'number' && xhr.readyState === (xhr.DONE ?? 4);
238
+ }
239
+ function attachXhrCompletion(xhr, emit) {
240
+ let completed = false;
241
+ const finish = error => {
242
+ if (completed) {
243
+ return;
244
+ }
245
+ completed = true;
246
+ if (typeof xhr.removeEventListener === 'function') {
247
+ xhr.removeEventListener('loadend', onLoadEnd);
248
+ xhr.removeEventListener('error', onError);
249
+ xhr.removeEventListener('abort', onAbort);
250
+ xhr.removeEventListener('timeout', onTimeout);
251
+ }
252
+ emitXhrLog(xhr, emit, error);
253
+ };
254
+ const onLoadEnd = () => finish();
255
+ const onError = () => finish('XMLHttpRequest error');
256
+ const onAbort = () => finish('XMLHttpRequest aborted');
257
+ const onTimeout = () => finish('XMLHttpRequest timeout');
258
+ if (typeof xhr.addEventListener === 'function') {
259
+ xhr.addEventListener('loadend', onLoadEnd);
260
+ xhr.addEventListener('error', onError);
261
+ xhr.addEventListener('abort', onAbort);
262
+ xhr.addEventListener('timeout', onTimeout);
263
+ return;
264
+ }
265
+ const originalOnReadyStateChange = xhr.onreadystatechange;
266
+ const originalOnLoadEnd = xhr.onloadend;
267
+ xhr.onreadystatechange = function interceptedReadyStateChange(event) {
268
+ originalOnReadyStateChange?.call(this, event);
269
+ if (isXhrDone(this)) {
270
+ finish();
271
+ }
272
+ };
273
+ xhr.onloadend = function interceptedLoadEnd(event) {
274
+ originalOnLoadEnd?.call(this, event);
275
+ finish();
276
+ };
277
+ }
278
+ function stopXMLHttpRequest() {
279
+ xhrRefCount = Math.max(0, xhrRefCount - 1);
280
+ if (xhrRefCount === 0 && originalXMLHttpRequest) {
281
+ const prototype = originalXMLHttpRequest.constructor.prototype;
282
+ prototype.open = originalXMLHttpRequest.open;
283
+ prototype.send = originalXMLHttpRequest.send;
284
+ if (originalXMLHttpRequest.setRequestHeader) {
285
+ prototype.setRequestHeader = originalXMLHttpRequest.setRequestHeader;
286
+ }
287
+ originalXMLHttpRequest = null;
288
+ }
289
+ }
290
+ function startXMLHttpRequest(emit) {
291
+ xhrRefCount += 1;
292
+ if (originalXMLHttpRequest) {
293
+ return () => {
294
+ stopXMLHttpRequest();
295
+ };
296
+ }
297
+ const XMLHttpRequestConstructor = getXMLHttpRequestConstructor();
298
+ if (!XMLHttpRequestConstructor) {
299
+ return () => {
300
+ stopXMLHttpRequest();
301
+ };
302
+ }
303
+ const prototype = XMLHttpRequestConstructor.prototype;
304
+ const originalOpen = prototype.open;
305
+ const originalSend = prototype.send;
306
+ const originalSetRequestHeader = prototype.setRequestHeader;
307
+ originalXMLHttpRequest = {
308
+ constructor: XMLHttpRequestConstructor,
309
+ open: originalOpen,
310
+ send: originalSend,
311
+ setRequestHeader: originalSetRequestHeader
312
+ };
313
+ prototype.open = function interceptedOpen(method, url, async, username, password) {
314
+ const rewrittenUrl = _urlRewriterRegistry.urlRewriter.get() ? rewriteUrl(url) : url;
315
+ const now = Date.now();
316
+ pendingXhrRequests.set(this, {
317
+ method: method.toUpperCase(),
318
+ url: rewrittenUrl,
319
+ headers: {},
320
+ startTime: now,
321
+ timestamp: now
322
+ });
323
+ if (typeof password !== 'undefined') {
324
+ return originalOpen.call(this, method, rewrittenUrl, async, username, password);
325
+ }
326
+ if (typeof username !== 'undefined') {
327
+ return originalOpen.call(this, method, rewrittenUrl, async, username);
328
+ }
329
+ if (typeof async !== 'undefined') {
330
+ return originalOpen.call(this, method, rewrittenUrl, async);
331
+ }
332
+ return originalOpen.call(this, method, rewrittenUrl);
333
+ };
334
+ if (originalSetRequestHeader) {
335
+ prototype.setRequestHeader = function interceptedSetRequestHeader(name, value) {
336
+ const pending = pendingXhrRequests.get(this);
337
+ if (pending) {
338
+ pending.headers[name] = value;
339
+ }
340
+ return originalSetRequestHeader.call(this, name, value);
341
+ };
342
+ }
343
+ prototype.send = function interceptedSend(body) {
344
+ const pending = pendingXhrRequests.get(this);
345
+ if (pending) {
346
+ const now = Date.now();
347
+ pending.body = body;
348
+ pending.startTime = now;
349
+ pending.timestamp = now;
350
+ attachXhrCompletion(this, emit);
351
+ }
352
+ try {
353
+ return originalSend.call(this, body);
354
+ } catch (error) {
355
+ emitXhrLog(this, emit, error instanceof Error ? error.message : String(error));
356
+ throw error;
357
+ }
358
+ };
359
+ return () => {
360
+ stopXMLHttpRequest();
361
+ };
362
+ }
363
+ function teardownAxios(axiosInstance) {
364
+ const registration = axiosRegistrations.get(axiosInstance);
365
+ if (!registration) {
366
+ return;
367
+ }
368
+ registration.refCount -= 1;
369
+ if (registration.refCount > 0) {
370
+ return;
371
+ }
372
+ if (typeof registration.requestId === 'number') {
373
+ axiosInstance.interceptors.request.eject?.(registration.requestId);
374
+ }
375
+ if (typeof registration.responseId === 'number') {
376
+ axiosInstance.interceptors.response.eject?.(registration.responseId);
377
+ }
378
+ axiosRegistrations.delete(axiosInstance);
379
+ }
380
+ function setupAxios(axiosInstance, emit) {
381
+ const existing = axiosRegistrations.get(axiosInstance);
382
+ if (existing) {
383
+ existing.refCount += 1;
384
+ return () => {
385
+ teardownAxios(axiosInstance);
386
+ };
387
+ }
388
+ const requestId = axiosInstance.interceptors.request.use(config => {
389
+ if (_urlRewriterRegistry.urlRewriter.get() && config.url) {
390
+ const fullUrl = config.baseURL ? `${config.baseURL}${config.url}` : config.url;
391
+ const rewritten = rewriteUrl(fullUrl);
392
+ if (rewritten !== fullUrl) {
393
+ if (config.baseURL && rewritten.startsWith(config.baseURL)) {
394
+ config.url = rewritten.slice(config.baseURL.length);
395
+ } else {
396
+ config.baseURL = '';
397
+ config.url = rewritten;
398
+ }
399
+ }
400
+ }
401
+ pendingAxiosRequests.set(config, {
402
+ startTime: Date.now(),
403
+ timestamp: Date.now()
404
+ });
405
+ return config;
406
+ }, error => Promise.reject(error));
407
+ const responseId = axiosInstance.interceptors.response.use(response => {
408
+ const pending = pendingAxiosRequests.get(response.config);
409
+ if (pending) {
410
+ emit({
411
+ timestamp: pending.timestamp,
412
+ duration: Date.now() - pending.startTime,
413
+ request: {
414
+ url: `${response.config.baseURL || ''}${response.config.url}`,
415
+ method: (response.config.method || 'GET').toUpperCase(),
416
+ headers: response.config.headers,
417
+ body: response.config.data || response.config.params
418
+ },
419
+ response: {
420
+ status: response.status,
421
+ statusText: response.statusText,
422
+ headers: response.headers,
423
+ data: response.data,
424
+ success: response.data && typeof response.data === 'object' ? response.data.success !== false : response.status >= 200 && response.status < 300
425
+ }
426
+ });
427
+ pendingAxiosRequests.delete(response.config);
428
+ }
429
+ return response;
430
+ }, error => {
431
+ if (error.config) {
432
+ const pending = pendingAxiosRequests.get(error.config);
433
+ emit({
434
+ timestamp: pending ? pending.timestamp : Date.now(),
435
+ duration: pending ? Date.now() - pending.startTime : undefined,
436
+ request: {
437
+ url: `${error.config.baseURL || ''}${error.config.url}`,
438
+ method: (error.config.method || 'GET').toUpperCase(),
439
+ headers: error.config.headers,
440
+ body: error.config.data || error.config.params
441
+ },
442
+ error: error.message
443
+ });
444
+ pendingAxiosRequests.delete(error.config);
445
+ }
446
+ return Promise.reject(error);
447
+ });
448
+ axiosRegistrations.set(axiosInstance, {
449
+ refCount: 1,
450
+ requestId: typeof requestId === 'number' ? requestId : undefined,
451
+ responseId: typeof responseId === 'number' ? responseId : undefined
452
+ });
453
+ return () => {
454
+ teardownAxios(axiosInstance);
455
+ };
456
+ }
457
+ function resetInterceptors() {
458
+ if (originalFetch) {
459
+ globalThis.fetch = originalFetch;
460
+ originalFetch = null;
461
+ }
462
+ fetchRefCount = 0;
463
+ xhrRefCount = 1;
464
+ stopXMLHttpRequest();
465
+ }
466
+ //# sourceMappingURL=networkInterceptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_urlRewriterRegistry","require","rewriteUrl","url","rewriter","urlRewriter","get","headersToObject","headers","result","forEach","value","key","Object","keys","getRequestSnapshot","input","init","request","Request","String","method","toUpperCase","undefined","body","parseResponseBody","response","raw","clone","text","JSON","parse","parseMaybeJson","parseRawHeaders","rawHeaders","split","line","separatorIndex","indexOf","slice","trim","length","getXMLHttpRequestConstructor","globalWithXhr","globalThis","candidate","XMLHttpRequest","prototype","open","send","getXhrResponseHeaders","xhr","getAllResponseHeaders","getXhrResponseData","responseType","responseText","originalFetch","fetchRefCount","pendingAxiosRequests","WeakMap","axiosRegistrations","originalXMLHttpRequest","xhrRefCount","pendingXhrRequests","stopFetch","Math","max","fetch","startFetch","emit","interceptedFetch","startTime","Date","now","rewrittenInput","call","duration","data","timestamp","status","statusText","error","Error","message","emitXhrLog","pending","success","delete","isXhrDone","readyState","DONE","attachXhrCompletion","completed","finish","removeEventListener","onLoadEnd","onError","onAbort","onTimeout","addEventListener","originalOnReadyStateChange","onreadystatechange","originalOnLoadEnd","onloadend","interceptedReadyStateChange","event","interceptedLoadEnd","stopXMLHttpRequest","constructor","setRequestHeader","startXMLHttpRequest","XMLHttpRequestConstructor","originalOpen","originalSend","originalSetRequestHeader","interceptedOpen","async","username","password","rewrittenUrl","set","interceptedSetRequestHeader","name","interceptedSend","teardownAxios","axiosInstance","registration","refCount","requestId","interceptors","eject","responseId","setupAxios","existing","use","config","fullUrl","baseURL","rewritten","startsWith","Promise","reject","params","resetInterceptors"],"sourceRoot":"../../../src","sources":["interceptors/networkInterceptor.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.NativeDebugLibs = void 0;
7
+ var _reactNative = require("react-native");
8
+ const RNDebugLibs = _reactNative.NativeModules.RNDebugLibs ?? {};
9
+ const BuildTypeModule = _reactNative.NativeModules.BuildTypeModule ?? null;
10
+ const NativeDebugLibs = exports.NativeDebugLibs = {
11
+ getBuildType() {
12
+ if (BuildTypeModule) {
13
+ return BuildTypeModule.getBuildType();
14
+ }
15
+ return Promise.resolve(null);
16
+ },
17
+ getBuildTypeSync() {
18
+ if (BuildTypeModule) {
19
+ return BuildTypeModule.getBuildTypeSync();
20
+ }
21
+ return null;
22
+ },
23
+ isDebugBuild() {
24
+ if (BuildTypeModule) {
25
+ return BuildTypeModule.getBuildTypeSync() === 'debug';
26
+ }
27
+ // Fallback: assume __DEV__ is the source of truth
28
+ return __DEV__;
29
+ },
30
+ // FLEX (iOS only)
31
+ showExplorer() {
32
+ if (_reactNative.Platform.OS === 'ios' && RNDebugLibs.showExplorer) {
33
+ RNDebugLibs.showExplorer();
34
+ }
35
+ },
36
+ hideExplorer() {
37
+ if (_reactNative.Platform.OS === 'ios' && RNDebugLibs.hideExplorer) {
38
+ RNDebugLibs.hideExplorer();
39
+ }
40
+ },
41
+ // DoraemonKit
42
+ installDoraemonKit(productId) {
43
+ if (RNDebugLibs.installDoraemonKit) {
44
+ RNDebugLibs.installDoraemonKit(productId);
45
+ }
46
+ },
47
+ showDoraemonKit() {
48
+ if (RNDebugLibs.showDoraemonKit) {
49
+ RNDebugLibs.showDoraemonKit();
50
+ }
51
+ },
52
+ hideDoraemonKit() {
53
+ if (RNDebugLibs.hideDoraemonKit) {
54
+ RNDebugLibs.hideDoraemonKit();
55
+ }
56
+ }
57
+ };
58
+ //# sourceMappingURL=NativeDebugLibs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","RNDebugLibs","NativeModules","BuildTypeModule","NativeDebugLibs","exports","getBuildType","Promise","resolve","getBuildTypeSync","isDebugBuild","__DEV__","showExplorer","Platform","OS","hideExplorer","installDoraemonKit","productId","showDoraemonKit","hideDoraemonKit"],"sourceRoot":"../../../src","sources":["native/NativeDebugLibs.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAgBA,MAAMC,WAA4B,GAAGC,0BAAa,CAACD,WAAW,IAAI,CAAC,CAAC;AACpE,MAAME,eAA2C,GAAGD,0BAAa,CAACC,eAAe,IAAI,IAAI;AAElF,MAAMC,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG;EAC7BE,YAAYA,CAAA,EAA2B;IACrC,IAAIH,eAAe,EAAE;MACnB,OAAOA,eAAe,CAACG,YAAY,CAAC,CAAC;IACvC;IACA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;EAC9B,CAAC;EAEDC,gBAAgBA,CAAA,EAAkB;IAChC,IAAIN,eAAe,EAAE;MACnB,OAAOA,eAAe,CAACM,gBAAgB,CAAC,CAAC;IAC3C;IACA,OAAO,IAAI;EACb,CAAC;EAEDC,YAAYA,CAAA,EAAY;IACtB,IAAIP,eAAe,EAAE;MACnB,OAAOA,eAAe,CAACM,gBAAgB,CAAC,CAAC,KAAK,OAAO;IACvD;IACA;IACA,OAAOE,OAAO;EAChB,CAAC;EAED;EACAC,YAAYA,CAAA,EAAS;IACnB,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAIb,WAAW,CAACW,YAAY,EAAE;MACrDX,WAAW,CAACW,YAAY,CAAC,CAAC;IAC5B;EACF,CAAC;EAEDG,YAAYA,CAAA,EAAS;IACnB,IAAIF,qBAAQ,CAACC,EAAE,KAAK,KAAK,IAAIb,WAAW,CAACc,YAAY,EAAE;MACrDd,WAAW,CAACc,YAAY,CAAC,CAAC;IAC5B;EACF,CAAC;EAED;EACAC,kBAAkBA,CAACC,SAAiB,EAAQ;IAC1C,IAAIhB,WAAW,CAACe,kBAAkB,EAAE;MAClCf,WAAW,CAACe,kBAAkB,CAACC,SAAS,CAAC;IAC3C;EACF,CAAC;EAEDC,eAAeA,CAAA,EAAS;IACtB,IAAIjB,WAAW,CAACiB,eAAe,EAAE;MAC/BjB,WAAW,CAACiB,eAAe,CAAC,CAAC;IAC/B;EACF,CAAC;EAEDC,eAAeA,CAAA,EAAS;IACtB,IAAIlB,WAAW,CAACkB,eAAe,EAAE;MAC/BlB,WAAW,CAACkB,eAAe,CAAC,CAAC;IAC/B;EACF;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["types/index.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Colors = void 0;
7
+ exports.getMethodColor = getMethodColor;
8
+ // Apple iOS System Color Palette
9
+ const Colors = exports.Colors = {
10
+ // System
11
+ primary: '#007AFF',
12
+ text: '#1C1C1E',
13
+ textSecondary: '#8E8E93',
14
+ textLight: '#C7C7CC',
15
+ border: '#E5E5EA',
16
+ background: '#F2F2F7',
17
+ surface: '#FFFFFF',
18
+ // Semantic
19
+ success: '#34C759',
20
+ error: '#FF3B30',
21
+ warning: '#FF9500',
22
+ info: '#5AC8FA',
23
+ // Accent
24
+ purple: '#AF52DE',
25
+ // HTTP Method Colors
26
+ get: '#007AFF',
27
+ post: '#34C759',
28
+ put: '#FF9500',
29
+ delete: '#FF3B30',
30
+ patch: '#5AC8FA'
31
+ };
32
+ function getMethodColor(method) {
33
+ switch (method.toUpperCase()) {
34
+ case 'GET':
35
+ return Colors.get;
36
+ case 'POST':
37
+ return Colors.post;
38
+ case 'PUT':
39
+ return Colors.put;
40
+ case 'DELETE':
41
+ return Colors.delete;
42
+ case 'PATCH':
43
+ return Colors.patch;
44
+ default:
45
+ return Colors.textSecondary;
46
+ }
47
+ }
48
+ //# sourceMappingURL=colors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Colors","exports","primary","text","textSecondary","textLight","border","background","surface","success","error","warning","info","purple","get","post","put","delete","patch","getMethodColor","method","toUpperCase"],"sourceRoot":"../../../src","sources":["utils/colors.ts"],"mappings":";;;;;;;AAAA;AACO,MAAMA,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG;EACpB;EACAE,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EACfC,aAAa,EAAE,SAAS;EACxBC,SAAS,EAAE,SAAS;EACpBC,MAAM,EAAE,SAAS;EACjBC,UAAU,EAAE,SAAS;EACrBC,OAAO,EAAE,SAAS;EAElB;EACAC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,IAAI,EAAE,SAAS;EAEf;EACAC,MAAM,EAAE,SAAS;EAEjB;EACAC,GAAG,EAAE,SAAS;EACdC,IAAI,EAAE,SAAS;EACfC,GAAG,EAAE,SAAS;EACdC,MAAM,EAAE,SAAS;EACjBC,KAAK,EAAE;AACT,CAAU;AAEH,SAASC,cAAcA,CAACC,MAAc,EAAU;EACrD,QAAQA,MAAM,CAACC,WAAW,CAAC,CAAC;IAC1B,KAAK,KAAK;MAAE,OAAOrB,MAAM,CAACc,GAAG;IAC7B,KAAK,MAAM;MAAE,OAAOd,MAAM,CAACe,IAAI;IAC/B,KAAK,KAAK;MAAE,OAAOf,MAAM,CAACgB,GAAG;IAC7B,KAAK,QAAQ;MAAE,OAAOhB,MAAM,CAACiB,MAAM;IACnC,KAAK,OAAO;MAAE,OAAOjB,MAAM,CAACkB,KAAK;IACjC;MAAS,OAAOlB,MAAM,CAACI,aAAa;EACtC;AACF","ignoreList":[]}