@sentry/wizard 3.42.1 → 4.0.1

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 (585) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/bin.js +44 -35
  3. package/dist/bin.js.map +1 -1
  4. package/dist/e2e-tests/jest.config.js +1 -1
  5. package/dist/e2e-tests/jest.config.js.map +1 -1
  6. package/dist/e2e-tests/tests/flutter.test.js +62 -147
  7. package/dist/e2e-tests/tests/flutter.test.js.map +1 -1
  8. package/dist/e2e-tests/tests/nextjs.test.js +77 -175
  9. package/dist/e2e-tests/tests/nextjs.test.js.map +1 -1
  10. package/dist/e2e-tests/tests/nuxt-3.test.js +61 -162
  11. package/dist/e2e-tests/tests/nuxt-3.test.js.map +1 -1
  12. package/dist/e2e-tests/tests/nuxt-4.test.js +62 -163
  13. package/dist/e2e-tests/tests/nuxt-4.test.js.map +1 -1
  14. package/dist/e2e-tests/tests/remix.test.js +147 -189
  15. package/dist/e2e-tests/tests/remix.test.js.map +1 -1
  16. package/dist/e2e-tests/tests/sveltekit.test.js +133 -187
  17. package/dist/e2e-tests/tests/sveltekit.test.js.map +1 -1
  18. package/dist/e2e-tests/utils/index.d.ts +1 -1
  19. package/dist/e2e-tests/utils/index.js +113 -195
  20. package/dist/e2e-tests/utils/index.js.map +1 -1
  21. package/dist/lib/Constants.js +5 -5
  22. package/dist/lib/Constants.js.map +1 -1
  23. package/dist/lib/Helper/BottomBar.d.ts +1 -1
  24. package/dist/lib/Helper/BottomBar.js +14 -15
  25. package/dist/lib/Helper/BottomBar.js.map +1 -1
  26. package/dist/lib/Helper/Env.js +5 -2
  27. package/dist/lib/Helper/Env.js.map +1 -1
  28. package/dist/lib/Helper/File.js +14 -27
  29. package/dist/lib/Helper/File.js.map +1 -1
  30. package/dist/lib/Helper/Git.js +24 -59
  31. package/dist/lib/Helper/Git.js.map +1 -1
  32. package/dist/lib/Helper/Logging.js +2 -2
  33. package/dist/lib/Helper/Logging.js.map +1 -1
  34. package/dist/lib/Helper/MergeConfig.js +4 -4
  35. package/dist/lib/Helper/MergeConfig.js.map +1 -1
  36. package/dist/lib/Helper/Package.d.ts +4 -1
  37. package/dist/lib/Helper/Package.js +12 -38
  38. package/dist/lib/Helper/Package.js.map +1 -1
  39. package/dist/lib/Helper/SentryCli.js +77 -149
  40. package/dist/lib/Helper/SentryCli.js.map +1 -1
  41. package/dist/lib/Helper/Wizard.js +29 -124
  42. package/dist/lib/Helper/Wizard.js.map +1 -1
  43. package/dist/lib/Helper/__tests__/File.js +4 -4
  44. package/dist/lib/Helper/__tests__/File.js.map +1 -1
  45. package/dist/lib/Helper/__tests__/MergeConfig.js +24 -24
  46. package/dist/lib/Helper/__tests__/MergeConfig.js.map +1 -1
  47. package/dist/lib/Helper/__tests__/SentryCli.js +33 -23
  48. package/dist/lib/Helper/__tests__/SentryCli.js.map +1 -1
  49. package/dist/lib/Setup.js +23 -85
  50. package/dist/lib/Setup.js.map +1 -1
  51. package/dist/lib/Steps/BaseStep.js +8 -8
  52. package/dist/lib/Steps/BaseStep.js.map +1 -1
  53. package/dist/lib/Steps/ChooseIntegration.js +80 -125
  54. package/dist/lib/Steps/ChooseIntegration.js.map +1 -1
  55. package/dist/lib/Steps/ConfigureProject.js +6 -66
  56. package/dist/lib/Steps/ConfigureProject.js.map +1 -1
  57. package/dist/lib/Steps/Initial.js +16 -104
  58. package/dist/lib/Steps/Initial.js.map +1 -1
  59. package/dist/lib/Steps/Integrations/BaseIntegration.js +24 -118
  60. package/dist/lib/Steps/Integrations/BaseIntegration.js.map +1 -1
  61. package/dist/lib/Steps/Integrations/Cordova.js +95 -183
  62. package/dist/lib/Steps/Integrations/Cordova.js.map +1 -1
  63. package/dist/lib/Steps/Integrations/Electron.js +87 -145
  64. package/dist/lib/Steps/Integrations/Electron.js.map +1 -1
  65. package/dist/lib/Steps/Integrations/MobileProject.js +40 -148
  66. package/dist/lib/Steps/Integrations/MobileProject.js.map +1 -1
  67. package/dist/lib/Steps/OpenSentry.js +63 -126
  68. package/dist/lib/Steps/OpenSentry.js.map +1 -1
  69. package/dist/lib/Steps/PromptForParameters.js +110 -206
  70. package/dist/lib/Steps/PromptForParameters.js.map +1 -1
  71. package/dist/lib/Steps/Result.js +19 -79
  72. package/dist/lib/Steps/Result.js.map +1 -1
  73. package/dist/lib/Steps/SentryProjectSelector.js +57 -148
  74. package/dist/lib/Steps/SentryProjectSelector.js.map +1 -1
  75. package/dist/lib/Steps/ShouldConfigure.js +6 -66
  76. package/dist/lib/Steps/ShouldConfigure.js.map +1 -1
  77. package/dist/lib/Steps/WaitForSentry.js +43 -120
  78. package/dist/lib/Steps/WaitForSentry.js.map +1 -1
  79. package/dist/lib/Steps/Welcome.js +17 -76
  80. package/dist/lib/Steps/Welcome.js.map +1 -1
  81. package/dist/lib/__tests__/Env.js +3 -3
  82. package/dist/lib/__tests__/Env.js.map +1 -1
  83. package/dist/src/android/android-wizard.js +100 -176
  84. package/dist/src/android/android-wizard.js.map +1 -1
  85. package/dist/src/android/code-tools.js +24 -33
  86. package/dist/src/android/code-tools.js.map +1 -1
  87. package/dist/src/android/gradle.js +106 -165
  88. package/dist/src/android/gradle.js.map +1 -1
  89. package/dist/src/android/manifest.js +26 -27
  90. package/dist/src/android/manifest.js.map +1 -1
  91. package/dist/src/android/templates.js +76 -23
  92. package/dist/src/android/templates.js.map +1 -1
  93. package/dist/src/apple/apple-wizard.js +129 -225
  94. package/dist/src/apple/apple-wizard.js.map +1 -1
  95. package/dist/src/apple/cocoapod.js +47 -109
  96. package/dist/src/apple/cocoapod.js.map +1 -1
  97. package/dist/src/apple/code-tools.js +32 -35
  98. package/dist/src/apple/code-tools.js.map +1 -1
  99. package/dist/src/apple/fastlane.js +51 -97
  100. package/dist/src/apple/fastlane.js.map +1 -1
  101. package/dist/src/apple/templates.js +41 -5
  102. package/dist/src/apple/templates.js.map +1 -1
  103. package/dist/src/apple/xcode-manager.d.ts +2 -2
  104. package/dist/src/apple/xcode-manager.js +93 -108
  105. package/dist/src/apple/xcode-manager.js.map +1 -1
  106. package/dist/src/flutter/code-tools.js +79 -127
  107. package/dist/src/flutter/code-tools.js.map +1 -1
  108. package/dist/src/flutter/flutter-wizard.js +75 -136
  109. package/dist/src/flutter/flutter-wizard.js.map +1 -1
  110. package/dist/src/flutter/templates.js +48 -12
  111. package/dist/src/flutter/templates.js.map +1 -1
  112. package/dist/src/nextjs/nextjs-wizard.js +527 -805
  113. package/dist/src/nextjs/nextjs-wizard.js.map +1 -1
  114. package/dist/src/nextjs/templates.js +380 -40
  115. package/dist/src/nextjs/templates.js.map +1 -1
  116. package/dist/src/nextjs/utils.js +5 -5
  117. package/dist/src/nextjs/utils.js.map +1 -1
  118. package/dist/src/nuxt/nuxt-wizard.js +91 -188
  119. package/dist/src/nuxt/nuxt-wizard.js.map +1 -1
  120. package/dist/src/nuxt/sdk-example.js +68 -137
  121. package/dist/src/nuxt/sdk-example.js.map +1 -1
  122. package/dist/src/nuxt/sdk-setup.d.ts +4 -4
  123. package/dist/src/nuxt/sdk-setup.js +180 -336
  124. package/dist/src/nuxt/sdk-setup.js.map +1 -1
  125. package/dist/src/nuxt/templates.js +195 -18
  126. package/dist/src/nuxt/templates.js.map +1 -1
  127. package/dist/src/nuxt/utils.js +29 -76
  128. package/dist/src/nuxt/utils.js.map +1 -1
  129. package/dist/src/react-native/expo-env-file.js +41 -94
  130. package/dist/src/react-native/expo-env-file.js.map +1 -1
  131. package/dist/src/react-native/expo-metro.d.ts +1 -1
  132. package/dist/src/react-native/expo-metro.js +75 -130
  133. package/dist/src/react-native/expo-metro.js.map +1 -1
  134. package/dist/src/react-native/expo.js +61 -114
  135. package/dist/src/react-native/expo.js.map +1 -1
  136. package/dist/src/react-native/git.js +23 -56
  137. package/dist/src/react-native/git.js.map +1 -1
  138. package/dist/src/react-native/glob.js +3 -3
  139. package/dist/src/react-native/glob.js.map +1 -1
  140. package/dist/src/react-native/gradle.js +4 -4
  141. package/dist/src/react-native/gradle.js.map +1 -1
  142. package/dist/src/react-native/javascript.js +51 -95
  143. package/dist/src/react-native/javascript.js.map +1 -1
  144. package/dist/src/react-native/metro.js +176 -296
  145. package/dist/src/react-native/metro.js.map +1 -1
  146. package/dist/src/react-native/react-native-wizard.js +267 -418
  147. package/dist/src/react-native/react-native-wizard.js.map +1 -1
  148. package/dist/src/react-native/uninstall.js +37 -80
  149. package/dist/src/react-native/uninstall.js.map +1 -1
  150. package/dist/src/react-native/xcode.js +57 -55
  151. package/dist/src/react-native/xcode.js.map +1 -1
  152. package/dist/src/remix/codemods/express-server.js +27 -82
  153. package/dist/src/remix/codemods/express-server.js.map +1 -1
  154. package/dist/src/remix/codemods/handle-error.js +28 -31
  155. package/dist/src/remix/codemods/handle-error.js.map +1 -1
  156. package/dist/src/remix/codemods/root-common.js +11 -11
  157. package/dist/src/remix/codemods/root-common.js.map +1 -1
  158. package/dist/src/remix/codemods/root-v1.js +17 -67
  159. package/dist/src/remix/codemods/root-v1.js.map +1 -1
  160. package/dist/src/remix/codemods/root-v2.js +89 -140
  161. package/dist/src/remix/codemods/root-v2.js.map +1 -1
  162. package/dist/src/remix/remix-wizard.js +181 -343
  163. package/dist/src/remix/remix-wizard.js.map +1 -1
  164. package/dist/src/remix/sdk-example.js +84 -66
  165. package/dist/src/remix/sdk-example.js.map +1 -1
  166. package/dist/src/remix/sdk-setup.js +161 -293
  167. package/dist/src/remix/sdk-setup.js.map +1 -1
  168. package/dist/src/remix/templates.js +10 -2
  169. package/dist/src/remix/templates.js.map +1 -1
  170. package/dist/src/remix/utils.js +13 -14
  171. package/dist/src/remix/utils.js.map +1 -1
  172. package/dist/src/run.js +106 -178
  173. package/dist/src/run.js.map +1 -1
  174. package/dist/src/sourcemaps/sourcemaps-wizard.js +248 -372
  175. package/dist/src/sourcemaps/sourcemaps-wizard.js.map +1 -1
  176. package/dist/src/sourcemaps/tools/angular.js +32 -66
  177. package/dist/src/sourcemaps/tools/angular.js.map +1 -1
  178. package/dist/src/sourcemaps/tools/create-react-app.js +14 -59
  179. package/dist/src/sourcemaps/tools/create-react-app.js.map +1 -1
  180. package/dist/src/sourcemaps/tools/esbuild.js +34 -77
  181. package/dist/src/sourcemaps/tools/esbuild.js.map +1 -1
  182. package/dist/src/sourcemaps/tools/nextjs.d.ts +2 -2
  183. package/dist/src/sourcemaps/tools/nextjs.js +75 -102
  184. package/dist/src/sourcemaps/tools/nextjs.js.map +1 -1
  185. package/dist/src/sourcemaps/tools/remix.js +53 -93
  186. package/dist/src/sourcemaps/tools/remix.js.map +1 -1
  187. package/dist/src/sourcemaps/tools/rollup.js +35 -76
  188. package/dist/src/sourcemaps/tools/rollup.js.map +1 -1
  189. package/dist/src/sourcemaps/tools/sentry-cli.js +157 -289
  190. package/dist/src/sourcemaps/tools/sentry-cli.js.map +1 -1
  191. package/dist/src/sourcemaps/tools/tsc.js +68 -134
  192. package/dist/src/sourcemaps/tools/tsc.js.map +1 -1
  193. package/dist/src/sourcemaps/tools/vite.js +111 -196
  194. package/dist/src/sourcemaps/tools/vite.js.map +1 -1
  195. package/dist/src/sourcemaps/tools/webpack.d.ts +1 -1
  196. package/dist/src/sourcemaps/tools/webpack.js +158 -260
  197. package/dist/src/sourcemaps/tools/webpack.js.map +1 -1
  198. package/dist/src/sourcemaps/utils/detect-tool.js +9 -54
  199. package/dist/src/sourcemaps/utils/detect-tool.js.map +1 -1
  200. package/dist/src/sourcemaps/utils/other-wizards.js +77 -144
  201. package/dist/src/sourcemaps/utils/other-wizards.js.map +1 -1
  202. package/dist/src/sourcemaps/utils/sdk-version.js +112 -191
  203. package/dist/src/sourcemaps/utils/sdk-version.js.map +1 -1
  204. package/dist/src/sveltekit/sdk-example.js +20 -70
  205. package/dist/src/sveltekit/sdk-example.js.map +1 -1
  206. package/dist/src/sveltekit/sdk-setup.js +250 -411
  207. package/dist/src/sveltekit/sdk-setup.js.map +1 -1
  208. package/dist/src/sveltekit/sveltekit-wizard.js +107 -191
  209. package/dist/src/sveltekit/sveltekit-wizard.js.map +1 -1
  210. package/dist/src/sveltekit/templates.js +147 -13
  211. package/dist/src/sveltekit/templates.js.map +1 -1
  212. package/dist/src/sveltekit/utils.js +3 -3
  213. package/dist/src/sveltekit/utils.js.map +1 -1
  214. package/dist/src/telemetry.d.ts +2 -2
  215. package/dist/src/telemetry.js +58 -108
  216. package/dist/src/telemetry.js.map +1 -1
  217. package/dist/src/utils/ast-utils.js +39 -54
  218. package/dist/src/utils/ast-utils.js.map +1 -1
  219. package/dist/src/utils/bash.js +28 -75
  220. package/dist/src/utils/bash.js.map +1 -1
  221. package/dist/src/utils/clack-utils.d.ts +3 -7
  222. package/dist/src/utils/clack-utils.js +688 -1083
  223. package/dist/src/utils/clack-utils.js.map +1 -1
  224. package/dist/src/utils/debug.js +6 -10
  225. package/dist/src/utils/debug.js.map +1 -1
  226. package/dist/src/utils/package-json.js +5 -6
  227. package/dist/src/utils/package-json.js.map +1 -1
  228. package/dist/src/utils/package-manager.js +65 -139
  229. package/dist/src/utils/package-manager.js.map +1 -1
  230. package/dist/src/utils/release-registry.js +12 -59
  231. package/dist/src/utils/release-registry.js.map +1 -1
  232. package/dist/src/utils/semver.js +3 -4
  233. package/dist/src/utils/semver.js.map +1 -1
  234. package/dist/src/utils/sentrycli-utils.js +4 -4
  235. package/dist/src/utils/sentrycli-utils.js.map +1 -1
  236. package/dist/src/utils/url.js +5 -6
  237. package/dist/src/utils/url.js.map +1 -1
  238. package/dist/test/android/code-tools.test.js +18 -18
  239. package/dist/test/android/code-tools.test.js.map +1 -1
  240. package/dist/test/apple/cocoapod.test.js +154 -299
  241. package/dist/test/apple/cocoapod.test.js.map +1 -1
  242. package/dist/test/apple/code-tools.test.js +375 -263
  243. package/dist/test/apple/code-tools.test.js.map +1 -1
  244. package/dist/test/apple/fastfile.test.js +319 -271
  245. package/dist/test/apple/fastfile.test.js.map +1 -1
  246. package/dist/test/apple/templates.test.js +114 -30
  247. package/dist/test/apple/templates.test.js.map +1 -1
  248. package/dist/test/apple/xcode-manager.test.js +230 -234
  249. package/dist/test/apple/xcode-manager.test.js.map +1 -1
  250. package/dist/test/flutter/code-tools.test.js +119 -48
  251. package/dist/test/flutter/code-tools.test.js.map +1 -1
  252. package/dist/test/flutter/templates.test.js +63 -20
  253. package/dist/test/flutter/templates.test.js.map +1 -1
  254. package/dist/test/nextjs/templates.test.js +332 -43
  255. package/dist/test/nextjs/templates.test.js.map +1 -1
  256. package/dist/test/nuxt/templates.test.js +161 -33
  257. package/dist/test/nuxt/templates.test.js.map +1 -1
  258. package/dist/test/react-native/expo-metro.test.js +61 -15
  259. package/dist/test/react-native/expo-metro.test.js.map +1 -1
  260. package/dist/test/react-native/expo.test.js +37 -17
  261. package/dist/test/react-native/expo.test.js.map +1 -1
  262. package/dist/test/react-native/gradle.test.js +260 -28
  263. package/dist/test/react-native/gradle.test.js.map +1 -1
  264. package/dist/test/react-native/javascript.test.js +85 -19
  265. package/dist/test/react-native/javascript.test.js.map +1 -1
  266. package/dist/test/react-native/metro.test.js +261 -187
  267. package/dist/test/react-native/metro.test.js.map +1 -1
  268. package/dist/test/react-native/xcode.test.js +243 -62
  269. package/dist/test/react-native/xcode.test.js.map +1 -1
  270. package/dist/test/remix/client-entry.test.js +81 -21
  271. package/dist/test/remix/client-entry.test.js.map +1 -1
  272. package/dist/test/remix/server-instrumentation.test.js +21 -8
  273. package/dist/test/remix/server-instrumentation.test.js.map +1 -1
  274. package/dist/test/sourcemaps/tools/sentry-cli.test.js +20 -72
  275. package/dist/test/sourcemaps/tools/sentry-cli.test.js.map +1 -1
  276. package/dist/test/sourcemaps/tools/tsc.test.js +142 -68
  277. package/dist/test/sourcemaps/tools/tsc.test.js.map +1 -1
  278. package/dist/test/sourcemaps/tools/vite.test.js +106 -75
  279. package/dist/test/sourcemaps/tools/vite.test.js.map +1 -1
  280. package/dist/test/sourcemaps/tools/webpack.test.js +226 -102
  281. package/dist/test/sourcemaps/tools/webpack.test.js.map +1 -1
  282. package/dist/test/sveltekit/templates.test.js +117 -18
  283. package/dist/test/sveltekit/templates.test.js.map +1 -1
  284. package/dist/test/utils/ast-utils.test.js +99 -58
  285. package/dist/test/utils/ast-utils.test.js.map +1 -1
  286. package/dist/test/utils/clack-utils.test.js +142 -247
  287. package/dist/test/utils/clack-utils.test.js.map +1 -1
  288. package/package.json +16 -9
  289. package/bin.ts +0 -138
  290. package/codecov.yml +0 -15
  291. package/dist/package.json +0 -128
  292. package/e2e-tests/.env.example +0 -11
  293. package/e2e-tests/README.md +0 -63
  294. package/e2e-tests/jest.config.ts +0 -22
  295. package/e2e-tests/package.json +0 -14
  296. package/e2e-tests/run.sh +0 -15
  297. package/e2e-tests/test-applications/apple/damaged-missing-configuration-list/Project.xcodeproj/project.pbxproj +0 -52
  298. package/e2e-tests/test-applications/apple/damaged-missing-configuration-list/Project.xcodeproj/xcshareddata/xcschemes/Project1.xcscheme +0 -78
  299. package/e2e-tests/test-applications/apple/no-targets/Project.xcodeproj/project.pbxproj +0 -62
  300. package/e2e-tests/test-applications/apple/no-targets/Project.xcodeproj/xcshareddata/xcschemes/Project1.xcscheme +0 -78
  301. package/e2e-tests/test-applications/apple/spm-swiftui-multi-targets/Project.xcodeproj/project.pbxproj +0 -470
  302. package/e2e-tests/test-applications/apple/spm-swiftui-multi-targets/Project.xcodeproj/xcshareddata/xcschemes/Project1.xcscheme +0 -78
  303. package/e2e-tests/test-applications/apple/spm-swiftui-multi-targets/Project1/ContentView.swift +0 -7
  304. package/e2e-tests/test-applications/apple/spm-swiftui-multi-targets/Project1/Project1App.swift +0 -10
  305. package/e2e-tests/test-applications/apple/spm-swiftui-multi-targets/Project2/ContentView.swift +0 -7
  306. package/e2e-tests/test-applications/apple/spm-swiftui-multi-targets/Project2/Project2App.swift +0 -10
  307. package/e2e-tests/test-applications/apple/spm-swiftui-single-target/Project.xcodeproj/project.pbxproj +0 -382
  308. package/e2e-tests/test-applications/apple/spm-swiftui-single-target/Project.xcodeproj/xcshareddata/xcschemes/Project.xcscheme +0 -78
  309. package/e2e-tests/test-applications/apple/spm-swiftui-single-target/Sources/ContentView.swift +0 -7
  310. package/e2e-tests/test-applications/apple/spm-swiftui-single-target/Sources/MainApp.swift +0 -10
  311. package/e2e-tests/test-applications/flutter-test-app/.metadata +0 -45
  312. package/e2e-tests/test-applications/flutter-test-app/README.md +0 -16
  313. package/e2e-tests/test-applications/flutter-test-app/analysis_options.yaml +0 -28
  314. package/e2e-tests/test-applications/flutter-test-app/android/app/build.gradle +0 -44
  315. package/e2e-tests/test-applications/flutter-test-app/android/app/src/debug/AndroidManifest.xml +0 -7
  316. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/AndroidManifest.xml +0 -45
  317. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/kotlin/com/example/flutter_magic/MainActivity.kt +0 -5
  318. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/drawable/launch_background.xml +0 -12
  319. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/drawable-v21/launch_background.xml +0 -12
  320. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/mipmap-hdpi/ic_launcher.png +0 -0
  321. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/mipmap-mdpi/ic_launcher.png +0 -0
  322. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png +0 -0
  323. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png +0 -0
  324. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png +0 -0
  325. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/values/styles.xml +0 -18
  326. package/e2e-tests/test-applications/flutter-test-app/android/app/src/main/res/values-night/styles.xml +0 -18
  327. package/e2e-tests/test-applications/flutter-test-app/android/app/src/profile/AndroidManifest.xml +0 -7
  328. package/e2e-tests/test-applications/flutter-test-app/android/build.gradle +0 -18
  329. package/e2e-tests/test-applications/flutter-test-app/android/gradle/wrapper/gradle-wrapper.properties +0 -5
  330. package/e2e-tests/test-applications/flutter-test-app/android/gradle.properties +0 -3
  331. package/e2e-tests/test-applications/flutter-test-app/android/settings.gradle +0 -25
  332. package/e2e-tests/test-applications/flutter-test-app/lib/main.dart +0 -125
  333. package/e2e-tests/test-applications/flutter-test-app/linux/CMakeLists.txt +0 -145
  334. package/e2e-tests/test-applications/flutter-test-app/linux/flutter/CMakeLists.txt +0 -88
  335. package/e2e-tests/test-applications/flutter-test-app/linux/flutter/generated_plugin_registrant.cc +0 -11
  336. package/e2e-tests/test-applications/flutter-test-app/linux/flutter/generated_plugin_registrant.h +0 -15
  337. package/e2e-tests/test-applications/flutter-test-app/linux/flutter/generated_plugins.cmake +0 -23
  338. package/e2e-tests/test-applications/flutter-test-app/linux/main.cc +0 -6
  339. package/e2e-tests/test-applications/flutter-test-app/linux/my_application.cc +0 -124
  340. package/e2e-tests/test-applications/flutter-test-app/linux/my_application.h +0 -18
  341. package/e2e-tests/test-applications/flutter-test-app/macos/Flutter/Flutter-Debug.xcconfig +0 -2
  342. package/e2e-tests/test-applications/flutter-test-app/macos/Flutter/Flutter-Release.xcconfig +0 -2
  343. package/e2e-tests/test-applications/flutter-test-app/macos/Flutter/GeneratedPluginRegistrant.swift +0 -10
  344. package/e2e-tests/test-applications/flutter-test-app/macos/Podfile +0 -43
  345. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/AppDelegate.swift +0 -9
  346. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +0 -68
  347. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png +0 -0
  348. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png +0 -0
  349. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png +0 -0
  350. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png +0 -0
  351. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png +0 -0
  352. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png +0 -0
  353. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png +0 -0
  354. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Base.lproj/MainMenu.xib +0 -343
  355. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Configs/AppInfo.xcconfig +0 -14
  356. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Configs/Debug.xcconfig +0 -2
  357. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Configs/Release.xcconfig +0 -2
  358. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Configs/Warnings.xcconfig +0 -13
  359. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/DebugProfile.entitlements +0 -12
  360. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Info.plist +0 -32
  361. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/MainFlutterWindow.swift +0 -15
  362. package/e2e-tests/test-applications/flutter-test-app/macos/Runner/Release.entitlements +0 -8
  363. package/e2e-tests/test-applications/flutter-test-app/macos/Runner.xcodeproj/project.pbxproj +0 -705
  364. package/e2e-tests/test-applications/flutter-test-app/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  365. package/e2e-tests/test-applications/flutter-test-app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +0 -98
  366. package/e2e-tests/test-applications/flutter-test-app/macos/Runner.xcworkspace/contents.xcworkspacedata +0 -7
  367. package/e2e-tests/test-applications/flutter-test-app/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  368. package/e2e-tests/test-applications/flutter-test-app/macos/RunnerTests/RunnerTests.swift +0 -12
  369. package/e2e-tests/test-applications/flutter-test-app/pubspec.lock +0 -213
  370. package/e2e-tests/test-applications/flutter-test-app/pubspec.yaml +0 -89
  371. package/e2e-tests/test-applications/flutter-test-app/test/widget_test.dart +0 -30
  372. package/e2e-tests/test-applications/flutter-test-app/web/favicon.png +0 -0
  373. package/e2e-tests/test-applications/flutter-test-app/web/icons/Icon-192.png +0 -0
  374. package/e2e-tests/test-applications/flutter-test-app/web/icons/Icon-512.png +0 -0
  375. package/e2e-tests/test-applications/flutter-test-app/web/icons/Icon-maskable-192.png +0 -0
  376. package/e2e-tests/test-applications/flutter-test-app/web/icons/Icon-maskable-512.png +0 -0
  377. package/e2e-tests/test-applications/flutter-test-app/web/index.html +0 -38
  378. package/e2e-tests/test-applications/flutter-test-app/web/manifest.json +0 -35
  379. package/e2e-tests/test-applications/flutter-test-app/windows/CMakeLists.txt +0 -108
  380. package/e2e-tests/test-applications/flutter-test-app/windows/flutter/CMakeLists.txt +0 -109
  381. package/e2e-tests/test-applications/flutter-test-app/windows/flutter/generated_plugin_registrant.cc +0 -11
  382. package/e2e-tests/test-applications/flutter-test-app/windows/flutter/generated_plugin_registrant.h +0 -15
  383. package/e2e-tests/test-applications/flutter-test-app/windows/flutter/generated_plugins.cmake +0 -23
  384. package/e2e-tests/test-applications/flutter-test-app/windows/runner/CMakeLists.txt +0 -40
  385. package/e2e-tests/test-applications/flutter-test-app/windows/runner/Runner.rc +0 -121
  386. package/e2e-tests/test-applications/flutter-test-app/windows/runner/flutter_window.cpp +0 -71
  387. package/e2e-tests/test-applications/flutter-test-app/windows/runner/flutter_window.h +0 -33
  388. package/e2e-tests/test-applications/flutter-test-app/windows/runner/main.cpp +0 -43
  389. package/e2e-tests/test-applications/flutter-test-app/windows/runner/resource.h +0 -16
  390. package/e2e-tests/test-applications/flutter-test-app/windows/runner/resources/app_icon.ico +0 -0
  391. package/e2e-tests/test-applications/flutter-test-app/windows/runner/runner.exe.manifest +0 -14
  392. package/e2e-tests/test-applications/flutter-test-app/windows/runner/utils.cpp +0 -65
  393. package/e2e-tests/test-applications/flutter-test-app/windows/runner/utils.h +0 -19
  394. package/e2e-tests/test-applications/flutter-test-app/windows/runner/win32_window.cpp +0 -288
  395. package/e2e-tests/test-applications/flutter-test-app/windows/runner/win32_window.h +0 -102
  396. package/e2e-tests/test-applications/nextjs-test-app/next.config.mjs +0 -4
  397. package/e2e-tests/test-applications/nextjs-test-app/package.json +0 -22
  398. package/e2e-tests/test-applications/nextjs-test-app/src/app/layout.tsx +0 -20
  399. package/e2e-tests/test-applications/nextjs-test-app/src/app/page.tsx +0 -90
  400. package/e2e-tests/test-applications/nuxt-3-test-app/README.md +0 -75
  401. package/e2e-tests/test-applications/nuxt-3-test-app/nuxt.config.ts +0 -5
  402. package/e2e-tests/test-applications/nuxt-3-test-app/package.json +0 -18
  403. package/e2e-tests/test-applications/nuxt-3-test-app/public/favicon.ico +0 -0
  404. package/e2e-tests/test-applications/nuxt-3-test-app/public/robots.txt +0 -1
  405. package/e2e-tests/test-applications/nuxt-4-test-app/README.md +0 -75
  406. package/e2e-tests/test-applications/nuxt-4-test-app/nuxt.config.ts +0 -6
  407. package/e2e-tests/test-applications/nuxt-4-test-app/package.json +0 -18
  408. package/e2e-tests/test-applications/nuxt-4-test-app/public/favicon.ico +0 -0
  409. package/e2e-tests/test-applications/nuxt-4-test-app/public/robots.txt +0 -1
  410. package/e2e-tests/test-applications/remix-test-app/app/entry.client.tsx +0 -18
  411. package/e2e-tests/test-applications/remix-test-app/app/entry.server.tsx +0 -140
  412. package/e2e-tests/test-applications/remix-test-app/app/root.tsx +0 -30
  413. package/e2e-tests/test-applications/remix-test-app/app/routes/_index.tsx +0 -48
  414. package/e2e-tests/test-applications/remix-test-app/app/tailwind.css +0 -3
  415. package/e2e-tests/test-applications/remix-test-app/package.json +0 -37
  416. package/e2e-tests/test-applications/remix-test-app/postcss.config.js +0 -6
  417. package/e2e-tests/test-applications/remix-test-app/tailwind.config.ts +0 -9
  418. package/e2e-tests/test-applications/remix-test-app/vite.config.ts +0 -16
  419. package/e2e-tests/test-applications/sveltekit-test-app/package.json +0 -21
  420. package/e2e-tests/test-applications/sveltekit-test-app/src/app.d.ts +0 -13
  421. package/e2e-tests/test-applications/sveltekit-test-app/src/app.html +0 -11
  422. package/e2e-tests/test-applications/sveltekit-test-app/src/lib/index.ts +0 -1
  423. package/e2e-tests/test-applications/sveltekit-test-app/src/routes/+page.svelte +0 -2
  424. package/e2e-tests/test-applications/sveltekit-test-app/svelte.config.js +0 -18
  425. package/e2e-tests/test-applications/sveltekit-test-app/vite.config.ts +0 -6
  426. package/e2e-tests/tests/flutter.test.ts +0 -127
  427. package/e2e-tests/tests/nextjs.test.ts +0 -161
  428. package/e2e-tests/tests/nuxt-3.test.ts +0 -189
  429. package/e2e-tests/tests/nuxt-4.test.ts +0 -188
  430. package/e2e-tests/tests/remix.test.ts +0 -277
  431. package/e2e-tests/tests/sveltekit.test.ts +0 -284
  432. package/e2e-tests/utils/index.ts +0 -438
  433. package/index.ts +0 -2
  434. package/lib/Constants.ts +0 -118
  435. package/lib/Helper/BottomBar.ts +0 -28
  436. package/lib/Helper/Env.ts +0 -7
  437. package/lib/Helper/File.ts +0 -65
  438. package/lib/Helper/Git.ts +0 -39
  439. package/lib/Helper/Logging.ts +0 -44
  440. package/lib/Helper/MergeConfig.ts +0 -19
  441. package/lib/Helper/Package.ts +0 -78
  442. package/lib/Helper/SentryCli.ts +0 -148
  443. package/lib/Helper/Wizard.ts +0 -59
  444. package/lib/Helper/__tests__/File.ts +0 -15
  445. package/lib/Helper/__tests__/MergeConfig.ts +0 -98
  446. package/lib/Helper/__tests__/SentryCli.ts +0 -86
  447. package/lib/Helper/test-fixtures/next.config.1-merged.js +0 -18
  448. package/lib/Helper/test-fixtures/next.config.1.js +0 -6
  449. package/lib/Helper/test-fixtures/next.config.2.js +0 -8
  450. package/lib/Helper/test-fixtures/next.config.3-merged.js +0 -21
  451. package/lib/Helper/test-fixtures/next.config.3.js +0 -9
  452. package/lib/Helper/test-fixtures/next.config.4-merged.js +0 -21
  453. package/lib/Helper/test-fixtures/next.config.4.js +0 -9
  454. package/lib/Setup.ts +0 -41
  455. package/lib/Steps/BaseStep.ts +0 -25
  456. package/lib/Steps/ChooseIntegration.ts +0 -112
  457. package/lib/Steps/ConfigureProject.ts +0 -10
  458. package/lib/Steps/Initial.ts +0 -44
  459. package/lib/Steps/Integrations/BaseIntegration.ts +0 -48
  460. package/lib/Steps/Integrations/Cordova.ts +0 -289
  461. package/lib/Steps/Integrations/Electron.ts +0 -161
  462. package/lib/Steps/Integrations/MobileProject.ts +0 -69
  463. package/lib/Steps/OpenSentry.ts +0 -75
  464. package/lib/Steps/PromptForParameters.ts +0 -207
  465. package/lib/Steps/Result.ts +0 -22
  466. package/lib/Steps/SentryProjectSelector.ts +0 -82
  467. package/lib/Steps/ShouldConfigure.ts +0 -10
  468. package/lib/Steps/WaitForSentry.ts +0 -50
  469. package/lib/Steps/Welcome.ts +0 -21
  470. package/lib/Steps/index.ts +0 -10
  471. package/lib/__tests__/Env.ts +0 -29
  472. package/scripts/NextJs/configs/_error.js +0 -39
  473. package/scripts/NextJs/configs/next.config.js +0 -36
  474. package/scripts/NextJs/configs/next.config.template.js +0 -12
  475. package/scripts/NextJs/configs/sentry.client.config.js +0 -17
  476. package/scripts/NextJs/configs/sentry.edge.config.js +0 -17
  477. package/scripts/NextJs/configs/sentry.server.config.js +0 -17
  478. package/scripts/NextJs/sentry_sample_error.js +0 -47
  479. package/scripts/craft-pre-release.sh +0 -10
  480. package/src/android/android-wizard.ts +0 -192
  481. package/src/android/code-tools.ts +0 -170
  482. package/src/android/gradle.ts +0 -250
  483. package/src/android/manifest.ts +0 -180
  484. package/src/android/templates.ts +0 -86
  485. package/src/apple/apple-wizard.ts +0 -269
  486. package/src/apple/cocoapod.ts +0 -73
  487. package/src/apple/code-tools.ts +0 -147
  488. package/src/apple/fastlane.ts +0 -170
  489. package/src/apple/templates.ts +0 -65
  490. package/src/apple/xcode-manager.ts +0 -404
  491. package/src/flutter/code-tools.ts +0 -284
  492. package/src/flutter/flutter-wizard.ts +0 -164
  493. package/src/flutter/templates.ts +0 -90
  494. package/src/nextjs/nextjs-wizard.ts +0 -1007
  495. package/src/nextjs/templates.ts +0 -526
  496. package/src/nextjs/utils.ts +0 -21
  497. package/src/nuxt/nuxt-wizard.ts +0 -188
  498. package/src/nuxt/sdk-example.ts +0 -135
  499. package/src/nuxt/sdk-setup.ts +0 -349
  500. package/src/nuxt/templates.ts +0 -303
  501. package/src/nuxt/types.ts +0 -8
  502. package/src/nuxt/utils.ts +0 -42
  503. package/src/react-native/expo-env-file.ts +0 -55
  504. package/src/react-native/expo-metro.ts +0 -212
  505. package/src/react-native/expo.ts +0 -175
  506. package/src/react-native/git.ts +0 -25
  507. package/src/react-native/glob.ts +0 -13
  508. package/src/react-native/gradle.ts +0 -26
  509. package/src/react-native/javascript.ts +0 -103
  510. package/src/react-native/metro.ts +0 -599
  511. package/src/react-native/options.ts +0 -5
  512. package/src/react-native/react-native-wizard.ts +0 -513
  513. package/src/react-native/uninstall.ts +0 -110
  514. package/src/react-native/xcode.ts +0 -302
  515. package/src/remix/codemods/express-server.ts +0 -44
  516. package/src/remix/codemods/handle-error.ts +0 -118
  517. package/src/remix/codemods/root-common.ts +0 -63
  518. package/src/remix/codemods/root-v1.ts +0 -41
  519. package/src/remix/codemods/root-v2.ts +0 -153
  520. package/src/remix/remix-wizard.ts +0 -261
  521. package/src/remix/sdk-example.ts +0 -120
  522. package/src/remix/sdk-setup.ts +0 -546
  523. package/src/remix/templates.ts +0 -11
  524. package/src/remix/utils.ts +0 -96
  525. package/src/run.ts +0 -204
  526. package/src/sourcemaps/sourcemaps-wizard.ts +0 -364
  527. package/src/sourcemaps/tools/angular.ts +0 -42
  528. package/src/sourcemaps/tools/create-react-app.ts +0 -19
  529. package/src/sourcemaps/tools/esbuild.ts +0 -65
  530. package/src/sourcemaps/tools/nextjs.ts +0 -114
  531. package/src/sourcemaps/tools/remix.ts +0 -90
  532. package/src/sourcemaps/tools/rollup.ts +0 -67
  533. package/src/sourcemaps/tools/sentry-cli.ts +0 -287
  534. package/src/sourcemaps/tools/tsc.ts +0 -144
  535. package/src/sourcemaps/tools/types.ts +0 -11
  536. package/src/sourcemaps/tools/vite.ts +0 -300
  537. package/src/sourcemaps/tools/webpack.ts +0 -383
  538. package/src/sourcemaps/utils/detect-tool.ts +0 -46
  539. package/src/sourcemaps/utils/other-wizards.ts +0 -167
  540. package/src/sourcemaps/utils/sdk-version.ts +0 -266
  541. package/src/sveltekit/sdk-example.ts +0 -56
  542. package/src/sveltekit/sdk-setup.ts +0 -667
  543. package/src/sveltekit/sveltekit-wizard.ts +0 -192
  544. package/src/sveltekit/templates.ts +0 -185
  545. package/src/sveltekit/utils.ts +0 -50
  546. package/src/telemetry.ts +0 -124
  547. package/src/utils/ast-utils.ts +0 -270
  548. package/src/utils/bash.ts +0 -57
  549. package/src/utils/clack-utils.ts +0 -1533
  550. package/src/utils/debug.ts +0 -20
  551. package/src/utils/package-json.ts +0 -51
  552. package/src/utils/package-manager.ts +0 -172
  553. package/src/utils/release-registry.ts +0 -19
  554. package/src/utils/semver.ts +0 -33
  555. package/src/utils/sentrycli-utils.ts +0 -24
  556. package/src/utils/string.ts +0 -7
  557. package/src/utils/types.ts +0 -77
  558. package/src/utils/url.ts +0 -27
  559. package/src/utils/vendor/is-unicorn-supported.ts +0 -29
  560. package/test/android/code-tools.test.ts +0 -49
  561. package/test/apple/cocoapod.test.ts +0 -306
  562. package/test/apple/code-tools.test.ts +0 -1042
  563. package/test/apple/fastfile.test.ts +0 -550
  564. package/test/apple/templates.test.ts +0 -191
  565. package/test/apple/xcode-manager.test.ts +0 -1066
  566. package/test/flutter/code-tools.test.ts +0 -212
  567. package/test/flutter/templates.test.ts +0 -100
  568. package/test/nextjs/templates.test.ts +0 -429
  569. package/test/nuxt/templates.test.ts +0 -255
  570. package/test/react-native/expo-metro.test.ts +0 -81
  571. package/test/react-native/expo.test.ts +0 -86
  572. package/test/react-native/gradle.test.ts +0 -310
  573. package/test/react-native/javascript.test.ts +0 -134
  574. package/test/react-native/metro.test.ts +0 -396
  575. package/test/react-native/xcode.test.ts +0 -401
  576. package/test/remix/client-entry.test.ts +0 -122
  577. package/test/remix/server-instrumentation.test.ts +0 -36
  578. package/test/sourcemaps/tools/sentry-cli.test.ts +0 -57
  579. package/test/sourcemaps/tools/tsc.test.ts +0 -181
  580. package/test/sourcemaps/tools/vite.test.ts +0 -149
  581. package/test/sourcemaps/tools/webpack.test.ts +0 -303
  582. package/test/sveltekit/templates.test.ts +0 -152
  583. package/test/utils/ast-utils.test.ts +0 -264
  584. package/test/utils/clack-utils.test.ts +0 -234
  585. package/types/xcode.d.ts +0 -526
@@ -1,401 +0,0 @@
1
- /* eslint-disable no-useless-escape */
2
- import {
3
- addSentryWithBundledScriptsToBundleShellScript,
4
- addSentryWithCliToBundleShellScript,
5
- doesBundlePhaseIncludeSentry,
6
- findBundlePhase,
7
- findDebugFilesUploadPhase,
8
- removeSentryFromBundleShellScript,
9
- } from '../../src/react-native/xcode';
10
-
11
- describe('react-native xcode', () => {
12
- describe('addSentryWithCliToBundleShellScript', () => {
13
- it('adds sentry cli to rn bundle build phase', () => {
14
- const input = `set -e
15
-
16
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
17
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
18
-
19
- /bin/sh -c "$WITH_ENVIRONMENT $REACT_NATIVE_XCODE"`;
20
- // actual shell script looks like this:
21
- // /bin/sh -c "$WITH_ENVIRONMENT \"$REACT_NATIVE_XCODE\""
22
- // but during parsing xcode library removes the quotes
23
- const expectedOutput = `export SENTRY_PROPERTIES=sentry.properties
24
- export EXTRA_PACKAGER_ARGS="--sourcemap-output $DERIVED_FILE_DIR/main.jsbundle.map"
25
- set -e
26
-
27
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
28
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
29
-
30
- /bin/sh -c "$WITH_ENVIRONMENT \\"../node_modules/@sentry/cli/bin/sentry-cli react-native xcode $REACT_NATIVE_XCODE\\""
31
- /bin/sh -c "$WITH_ENVIRONMENT ../node_modules/@sentry/react-native/scripts/collect-modules.sh"
32
- `;
33
-
34
- expect(addSentryWithCliToBundleShellScript(input)).toBe(expectedOutput);
35
- });
36
- });
37
-
38
- describe('addSentryBundledScriptsToBundleShellScript', () => {
39
- it('adds sentry cli to rn bundle build phase', () => {
40
- const input = `set -e
41
-
42
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
43
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
44
-
45
- /bin/sh -c "$WITH_ENVIRONMENT $REACT_NATIVE_XCODE"`;
46
- // actual shell script looks like this:
47
- // /bin/sh -c "$WITH_ENVIRONMENT \"$REACT_NATIVE_XCODE\""
48
- // but during parsing xcode library removes the quotes
49
- const expectedOutput = `set -e
50
-
51
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
52
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
53
-
54
- /bin/sh -c "$WITH_ENVIRONMENT \\"/bin/sh ../node_modules/@sentry/react-native/scripts/sentry-xcode.sh $REACT_NATIVE_XCODE\\""`;
55
-
56
- expect(addSentryWithBundledScriptsToBundleShellScript(input)).toBe(
57
- expectedOutput,
58
- );
59
- });
60
-
61
- it('adds sentry cli to expo bundle build phase', () => {
62
- const input = `
63
- if [[ -f "$PODS_ROOT/../.xcode.env" ]]; then
64
- source "$PODS_ROOT/../.xcode.env"
65
- fi
66
- if [[ -f "$PODS_ROOT/../.xcode.env.local" ]]; then
67
- source "$PODS_ROOT/../.xcode.env.local"
68
- fi
69
-
70
- # The project root by default is one level up from the ios directory
71
- export PROJECT_ROOT="$PROJECT_DIR"/..
72
-
73
- if [[ "$CONFIGURATION" = *Debug* ]]; then
74
- export SKIP_BUNDLING=1
75
- fi
76
- if [[ -z "$ENTRY_FILE" ]]; then
77
- # Set the entry JS file using the bundler's entry resolution.
78
- export ENTRY_FILE="$("$NODE_BINARY" -e "require('expo/scripts/resolveAppEntry')" "$PROJECT_ROOT" ios absolute | tail -n 1)"
79
- fi
80
-
81
- if [[ -z "$CLI_PATH" ]]; then
82
- # Use Expo CLI
83
- export CLI_PATH="$("$NODE_BINARY" --print "require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })")"
84
- fi
85
- if [[ -z "$BUNDLE_COMMAND" ]]; then
86
- # Default Expo CLI command for bundling
87
- export BUNDLE_COMMAND="export:embed"
88
- fi
89
-
90
- # Source .xcode.env.updates if it exists to allow
91
- # SKIP_BUNDLING to be unset if needed
92
- if [[ -f "$PODS_ROOT/../.xcode.env.updates" ]]; then
93
- source "$PODS_ROOT/../.xcode.env.updates"
94
- fi
95
- # Source local changes to allow overrides
96
- # if needed
97
- if [[ -f "$PODS_ROOT/../.xcode.env.local" ]]; then
98
- source "$PODS_ROOT/../.xcode.env.local"
99
- fi
100
-
101
- \`"$NODE_BINARY" --print "require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/react-native-xcode.sh'"\`
102
- `;
103
-
104
- const expectedOutput = `
105
- if [[ -f "$PODS_ROOT/../.xcode.env" ]]; then
106
- source "$PODS_ROOT/../.xcode.env"
107
- fi
108
- if [[ -f "$PODS_ROOT/../.xcode.env.local" ]]; then
109
- source "$PODS_ROOT/../.xcode.env.local"
110
- fi
111
-
112
- # The project root by default is one level up from the ios directory
113
- export PROJECT_ROOT="$PROJECT_DIR"/..
114
-
115
- if [[ "$CONFIGURATION" = *Debug* ]]; then
116
- export SKIP_BUNDLING=1
117
- fi
118
- if [[ -z "$ENTRY_FILE" ]]; then
119
- # Set the entry JS file using the bundler's entry resolution.
120
- export ENTRY_FILE="$("$NODE_BINARY" -e "require('expo/scripts/resolveAppEntry')" "$PROJECT_ROOT" ios absolute | tail -n 1)"
121
- fi
122
-
123
- if [[ -z "$CLI_PATH" ]]; then
124
- # Use Expo CLI
125
- export CLI_PATH="$("$NODE_BINARY" --print "require.resolve('@expo/cli', { paths: [require.resolve('expo/package.json')] })")"
126
- fi
127
- if [[ -z "$BUNDLE_COMMAND" ]]; then
128
- # Default Expo CLI command for bundling
129
- export BUNDLE_COMMAND="export:embed"
130
- fi
131
-
132
- # Source .xcode.env.updates if it exists to allow
133
- # SKIP_BUNDLING to be unset if needed
134
- if [[ -f "$PODS_ROOT/../.xcode.env.updates" ]]; then
135
- source "$PODS_ROOT/../.xcode.env.updates"
136
- fi
137
- # Source local changes to allow overrides
138
- # if needed
139
- if [[ -f "$PODS_ROOT/../.xcode.env.local" ]]; then
140
- source "$PODS_ROOT/../.xcode.env.local"
141
- fi
142
-
143
- /bin/sh \`"$NODE_BINARY" --print "require('path').dirname(require.resolve('@sentry/react-native/package.json')) + '/scripts/sentry-xcode.sh'"\` \`"$NODE_BINARY" --print "require('path').dirname(require.resolve('react-native/package.json')) + '/scripts/react-native-xcode.sh'"\`
144
- `;
145
-
146
- expect(addSentryWithBundledScriptsToBundleShellScript(input)).toBe(
147
- expectedOutput,
148
- );
149
- });
150
- });
151
-
152
- describe('removeSentryFromBundleShellScript', () => {
153
- it('removes sentry cli from rn bundle build phase', () => {
154
- const input = `export SENTRY_PROPERTIES=sentry.properties
155
- export EXTRA_PACKAGER_ARGS="--sourcemap-output $DERIVED_FILE_DIR/main.jsbundle.map"
156
- set -e
157
-
158
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
159
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
160
-
161
- /bin/sh -c "$WITH_ENVIRONMENT \"../node_modules/@sentry/cli/bin/sentry-cli react-native xcode $REACT_NATIVE_XCODE\""
162
-
163
- /bin/sh -c "$WITH_ENVIRONMENT ../node_modules/@sentry/react-native/scripts/collect-modules.sh"
164
- `;
165
- const expectedOutput = `export EXTRA_PACKAGER_ARGS="--sourcemap-output $DERIVED_FILE_DIR/main.jsbundle.map"
166
- set -e
167
-
168
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
169
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
170
-
171
- /bin/sh -c "$WITH_ENVIRONMENT \"$REACT_NATIVE_XCODE\""
172
-
173
- `;
174
-
175
- expect(removeSentryFromBundleShellScript(input)).toBe(expectedOutput);
176
- });
177
-
178
- it('removes sentry bundled scripts from rn bundle build phase', () => {
179
- const input = `set -e
180
-
181
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
182
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
183
-
184
- /bin/sh -c "$WITH_ENVIRONMENT \"/bin/sh ../node_modules/@sentry/react-native/scripts/sentry-xcode.sh $REACT_NATIVE_XCODE\""`;
185
- const expectedOutput = `set -e
186
-
187
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
188
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
189
-
190
- /bin/sh -c "$WITH_ENVIRONMENT \"$REACT_NATIVE_XCODE\""`;
191
-
192
- expect(removeSentryFromBundleShellScript(input)).toBe(expectedOutput);
193
- });
194
- });
195
-
196
- describe('findBundlePhase', () => {
197
- it('returns build phase with react native xcode shell script', () => {
198
- const inputMap = {
199
- 1: {
200
- shellScript: 'foo',
201
- },
202
- 2: {
203
- shellScript: 'bar',
204
- },
205
- 3: {
206
- shellScript: `set -e
207
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
208
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
209
-
210
- /bin/sh -c "$WITH_ENVIRONMENT \"$REACT_NATIVE_XCODE\""
211
-
212
- `,
213
- },
214
- 4: {
215
- shellScript: 'qux',
216
- },
217
- };
218
-
219
- const expected = {
220
- shellScript: `set -e
221
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
222
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
223
-
224
- /bin/sh -c "$WITH_ENVIRONMENT \"$REACT_NATIVE_XCODE\""
225
-
226
- `,
227
- };
228
-
229
- expect(findBundlePhase(inputMap)).toEqual(expected);
230
- });
231
-
232
- it('returns undefined if bundle phase not present', () => {
233
- const inputMap = {
234
- 1: {
235
- shellScript: 'foo',
236
- },
237
- 2: {
238
- shellScript: 'bar',
239
- },
240
- 3: {
241
- // note different path to the script
242
- shellScript: `set -e
243
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
244
- REACT_NATIVE_XCODE="../node_modules/react-native/unknown/react-native-xcode.sh"
245
-
246
- /bin/sh -c "$WITH_ENVIRONMENT \"$REACT_NATIVE_XCODE\""
247
-
248
- `,
249
- },
250
- 4: {
251
- shellScript: 'qux',
252
- },
253
- };
254
-
255
- expect(findBundlePhase(inputMap)).toBeUndefined();
256
- });
257
- });
258
-
259
- describe('doesBundlePhaseIncludeSentry', () => {
260
- it('returns true for script containing sentry cli calling react native xcode command', () => {
261
- const input = {
262
- shellScript: `set -e
263
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
264
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
265
- SENTRY_CLI="sentry-cli react-native xcode"
266
-
267
- /bin/sh -c "$WITH_ENVIRONMENT \"$SENTRY_CLI $REACT_NATIVE_XCODE\""
268
- `,
269
- };
270
- expect(doesBundlePhaseIncludeSentry(input)).toBeTruthy();
271
- });
272
-
273
- it('returns true for script containing sentry bundled script', () => {
274
- const input = {
275
- shellScript: `set -e
276
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
277
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
278
- SENTRY_CLI="sentry-cli react-native xcode"
279
-
280
- /bin/sh -c "$WITH_ENVIRONMENT \\"/bin/sh ../node_modules/@sentry/react-native/scripts/sentry-xcode.sh $REACT_NATIVE_XCODE"\\"
281
- `,
282
- };
283
- expect(doesBundlePhaseIncludeSentry(input)).toBeTruthy();
284
- });
285
-
286
- it('returns false', () => {
287
- const input = {
288
- // note sentry-cli can be part of the script but doesn't call react native xcode script
289
- shellScript: `set -e
290
- WITH_ENVIRONMENT="../node_modules/react-native/scripts/xcode/with-environment.sh"
291
- REACT_NATIVE_XCODE="../node_modules/react-native/scripts/react-native-xcode.sh"
292
-
293
- /bin/sh -c "$WITH_ENVIRONMENT \"$REACT_NATIVE_XCODE\""
294
-
295
- sentry-cli --version
296
- `,
297
- };
298
- expect(doesBundlePhaseIncludeSentry(input)).toBeFalsy();
299
- });
300
- });
301
-
302
- describe('findDebugFilesUploadPhase', () => {
303
- it('returns debug files build phase using debug files command', () => {
304
- const input = {
305
- 1: {
306
- shellScript: 'foo',
307
- },
308
- 2: {
309
- shellScript: `set -e
310
- sentry-cli debug-files upload path/to/dsym --include-sources
311
- `,
312
- },
313
- };
314
- const expected = [
315
- '2',
316
- {
317
- shellScript: `set -e
318
- sentry-cli debug-files upload path/to/dsym --include-sources
319
- `,
320
- },
321
- ];
322
- expect(findDebugFilesUploadPhase(input)).toEqual(expected);
323
- });
324
-
325
- it('returns debug files build phase with sentry-cli absolute path', () => {
326
- const input = {
327
- 1: {
328
- shellScript: 'foo',
329
- },
330
- 2: {
331
- shellScript: `set -e
332
- /path/to/bin/sentry-cli debug-files upload path/to/dsym --include-sources
333
- `,
334
- },
335
- };
336
- const expected = [
337
- '2',
338
- {
339
- shellScript: `set -e
340
- /path/to/bin/sentry-cli debug-files upload path/to/dsym --include-sources
341
- `,
342
- },
343
- ];
344
- expect(findDebugFilesUploadPhase(input)).toEqual(expected);
345
- });
346
-
347
- it('returns debug files build phase using dsym command', () => {
348
- const input = {
349
- 1: {
350
- shellScript: 'foo',
351
- },
352
- 2: {
353
- shellScript: `set -e
354
- sentry-cli upload-dsym path/to/dsym --include-sources
355
- `,
356
- },
357
- };
358
- const expected = [
359
- '2',
360
- {
361
- shellScript: `set -e
362
- sentry-cli upload-dsym path/to/dsym --include-sources
363
- `,
364
- },
365
- ];
366
- expect(findDebugFilesUploadPhase(input)).toEqual(expected);
367
- });
368
-
369
- it('returns debug files build phase using bundled scripts', () => {
370
- const input = {
371
- 1: {
372
- shellScript: 'foo',
373
- },
374
- 2: {
375
- shellScript: `/bin/sh ../node_modules/@sentry/react-native/scripts/sentry-xcode-debug-files.sh`,
376
- },
377
- };
378
- const expected = [
379
- '2',
380
- {
381
- shellScript: `/bin/sh ../node_modules/@sentry/react-native/scripts/sentry-xcode-debug-files.sh`,
382
- },
383
- ];
384
- expect(findDebugFilesUploadPhase(input)).toEqual(expected);
385
- });
386
-
387
- it('returns undefined if build phase not present', () => {
388
- const input = {
389
- 1: {
390
- shellScript: 'foo',
391
- },
392
- 2: {
393
- // sentry-cli present but with different command
394
- shellScript: 'sentry-cli sourcempas upload',
395
- },
396
- };
397
-
398
- expect(findDebugFilesUploadPhase(input)).toBeUndefined();
399
- });
400
- });
401
- });
@@ -1,122 +0,0 @@
1
- // @ts-expect-error - magicast is ESM and TS complains about that. It works though
2
- import { parseModule } from 'magicast';
3
- import { updateEntryClientMod } from '../../src/remix/sdk-setup';
4
-
5
- describe('initializeSentryOnEntryClient', () => {
6
- it('should initialize Sentry on client entry with all features enabled', () => {
7
- // Empty entry.client.tsx file for testing
8
- const originalEntryClientMod = parseModule('');
9
-
10
- const dsn = 'https://sentry.io/123';
11
- const selectedFeatures = {
12
- performance: true,
13
- replay: true,
14
- };
15
-
16
- const result = updateEntryClientMod(
17
- originalEntryClientMod,
18
- dsn,
19
- selectedFeatures,
20
- );
21
-
22
- expect(result.generate().code).toMatchInlineSnapshot(`
23
- "import { useEffect,} from "react";
24
-
25
- import {
26
- useLocation,
27
- useMatches,
28
- } from "@remix-run/react";
29
-
30
- import * as Sentry from "@sentry/remix";
31
-
32
- Sentry.init({
33
- dsn: "https://sentry.io/123",
34
- tracesSampleRate: 1,
35
-
36
- integrations: [Sentry.browserTracingIntegration({
37
- useEffect,
38
- useLocation,
39
- useMatches
40
- }), Sentry.replayIntegration({
41
- maskAllText: true,
42
- blockAllMedia: true
43
- })],
44
-
45
- replaysSessionSampleRate: 0.1,
46
- replaysOnErrorSampleRate: 1
47
- })"
48
- `);
49
- });
50
-
51
- it('should initialize Sentry on client entry when performance disabled', () => {
52
- // Empty entry.client.tsx file for testing
53
- const originalEntryClientMod = parseModule('');
54
-
55
- const dsn = 'https://sentry.io/123';
56
- const selectedFeatures = {
57
- performance: false,
58
- replay: true,
59
- };
60
-
61
- const result = updateEntryClientMod(
62
- originalEntryClientMod,
63
- dsn,
64
- selectedFeatures,
65
- );
66
-
67
- expect(result.generate().code).toMatchInlineSnapshot(`
68
- "import * as Sentry from "@sentry/remix";
69
-
70
- Sentry.init({
71
- dsn: "https://sentry.io/123",
72
-
73
- integrations: [Sentry.replayIntegration({
74
- maskAllText: true,
75
- blockAllMedia: true
76
- })],
77
-
78
- replaysSessionSampleRate: 0.1,
79
- replaysOnErrorSampleRate: 1
80
- })"
81
- `);
82
- });
83
-
84
- it('should initialize Sentry on client entry when replay disabled', () => {
85
- // Empty entry.client.tsx file for testing
86
- const originalEntryClientMod = parseModule('');
87
-
88
- const dsn = 'https://sentry.io/123';
89
- const selectedFeatures = {
90
- performance: true,
91
- replay: false,
92
- };
93
-
94
- const result = updateEntryClientMod(
95
- originalEntryClientMod,
96
- dsn,
97
- selectedFeatures,
98
- );
99
-
100
- expect(result.generate().code).toMatchInlineSnapshot(`
101
- "import { useEffect,} from "react";
102
-
103
- import {
104
- useLocation,
105
- useMatches,
106
- } from "@remix-run/react";
107
-
108
- import * as Sentry from "@sentry/remix";
109
-
110
- Sentry.init({
111
- dsn: "https://sentry.io/123",
112
- tracesSampleRate: 1,
113
-
114
- integrations: [Sentry.browserTracingIntegration({
115
- useEffect,
116
- useLocation,
117
- useMatches
118
- })]
119
- })"
120
- `);
121
- });
122
- });
@@ -1,36 +0,0 @@
1
- import { generateServerInstrumentationFile } from '../../src/remix/sdk-setup';
2
-
3
- describe('generateServerInstrumentationFile', () => {
4
- it('should generate server instrumentation file', () => {
5
- const result = generateServerInstrumentationFile('https://sentry.io/123', {
6
- performance: true,
7
- replay: true,
8
- });
9
-
10
- expect(result.instrumentationFileMod.generate().code)
11
- .toMatchInlineSnapshot(`
12
- "import * as Sentry from "@sentry/remix";
13
-
14
- Sentry.init({
15
- dsn: "https://sentry.io/123",
16
- tracesSampleRate: 1
17
- })"
18
- `);
19
- });
20
-
21
- it('should generate server instrumentation file when performance is disabled', () => {
22
- const result = generateServerInstrumentationFile('https://sentry.io/123', {
23
- performance: false,
24
- replay: true,
25
- });
26
-
27
- expect(result.instrumentationFileMod.generate().code)
28
- .toMatchInlineSnapshot(`
29
- "import * as Sentry from "@sentry/remix";
30
-
31
- Sentry.init({
32
- dsn: "https://sentry.io/123"
33
- })"
34
- `);
35
- });
36
- });
@@ -1,57 +0,0 @@
1
- import * as fs from 'fs';
2
-
3
- import { addSentryCommandToBuildCommand } from '../../../src/sourcemaps/tools/sentry-cli';
4
-
5
- import * as packageManagerHelpers from '../../../src/utils/package-manager';
6
-
7
- const writeFileSpy = jest
8
- .spyOn(fs.promises, 'writeFile')
9
- .mockImplementation(() => Promise.resolve());
10
-
11
- jest.mock('@clack/prompts', () => {
12
- return {
13
- log: {
14
- info: jest.fn(),
15
- success: jest.fn(),
16
- },
17
- confirm: jest.fn().mockResolvedValue(true),
18
- isCancel: jest.fn().mockReturnValue(false),
19
- };
20
- });
21
-
22
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return
23
- jest.mock('../../../src/utils/clack-utils', () => ({
24
- ...jest.requireActual('../../../src/utils/clack-utils'),
25
- getPackageDotJson: jest.fn().mockResolvedValue({
26
- scripts: {
27
- build: 'tsc',
28
- },
29
- version: '1.0.0',
30
- }),
31
- }));
32
-
33
- describe('addSentryCommandToBuildCommand', () => {
34
- afterEach(() => {
35
- jest.clearAllMocks();
36
- });
37
- it.each([
38
- [
39
- packageManagerHelpers.NPM,
40
- packageManagerHelpers.PNPM,
41
- packageManagerHelpers.YARN_V1,
42
- packageManagerHelpers.YARN_V2,
43
- packageManagerHelpers.BUN,
44
- ],
45
- ])('adds the cli command to the script command (%s)', async (_, pacMan) => {
46
- jest
47
- .spyOn(packageManagerHelpers, 'detectPackageManger')
48
- .mockReturnValue(pacMan);
49
- await addSentryCommandToBuildCommand();
50
- expect(writeFileSpy).toHaveBeenCalledWith(
51
- expect.stringContaining('package.json'),
52
- expect.stringContaining(
53
- `tsc && ${pacMan.runScriptCommand} sentry:sourcemaps`,
54
- ),
55
- );
56
- });
57
- });