@teardown/cli 1.2.39 → 2.0.41

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 (260) hide show
  1. package/bin/teardown.js +11 -1
  2. package/package.json +77 -57
  3. package/src/cli/commands/init.ts +254 -0
  4. package/src/cli/commands/plugins.ts +93 -0
  5. package/src/cli/commands/prebuild.ts +168 -0
  6. package/src/cli/commands/run.ts +727 -0
  7. package/src/cli/commands/start.ts +87 -0
  8. package/src/cli/commands/validate.ts +62 -0
  9. package/src/cli/index.ts +59 -0
  10. package/src/config/index.ts +45 -0
  11. package/src/config/loader.ts +366 -0
  12. package/src/config/schema.ts +235 -0
  13. package/src/config/types.ts +322 -0
  14. package/src/index.ts +177 -0
  15. package/src/pipeline/cache.ts +179 -0
  16. package/src/pipeline/index.ts +10 -0
  17. package/src/pipeline/stages.ts +692 -0
  18. package/src/plugins/base.ts +370 -0
  19. package/src/plugins/capabilities/biometrics.ts +64 -0
  20. package/src/plugins/capabilities/bluetooth.ts +86 -0
  21. package/src/plugins/capabilities/calendar.ts +57 -0
  22. package/src/plugins/capabilities/camera.ts +77 -0
  23. package/src/plugins/capabilities/contacts.ts +57 -0
  24. package/src/plugins/capabilities/deep-linking.ts +124 -0
  25. package/src/plugins/capabilities/firebase.ts +138 -0
  26. package/src/plugins/capabilities/index.ts +96 -0
  27. package/src/plugins/capabilities/location.ts +87 -0
  28. package/src/plugins/capabilities/photo-library.ts +80 -0
  29. package/src/plugins/capabilities/push-notifications.ts +98 -0
  30. package/src/plugins/capabilities/sign-in-with-apple.ts +53 -0
  31. package/src/plugins/context.ts +220 -0
  32. package/src/plugins/index.ts +26 -0
  33. package/src/plugins/resolver.ts +321 -0
  34. package/src/templates/generator.ts +507 -0
  35. package/src/templates/index.ts +9 -0
  36. package/src/templates/paths.ts +25 -0
  37. package/src/transformers/android/gradle.ts +400 -0
  38. package/src/transformers/android/index.ts +19 -0
  39. package/src/transformers/android/manifest.ts +506 -0
  40. package/src/transformers/index.ts +39 -0
  41. package/src/transformers/ios/entitlements.ts +283 -0
  42. package/src/transformers/ios/index.ts +10 -0
  43. package/src/transformers/ios/pbxproj.ts +267 -0
  44. package/src/transformers/ios/plist.ts +198 -0
  45. package/src/utils/fs.ts +429 -0
  46. package/src/utils/index.ts +21 -0
  47. package/src/utils/logger.ts +203 -0
  48. package/templates/.gitignore +63 -0
  49. package/templates/Gemfile +3 -0
  50. package/templates/android/app/build.gradle.kts +97 -0
  51. package/templates/android/app/proguard-rules.pro +10 -0
  52. package/templates/android/app/src/main/AndroidManifest.xml +26 -0
  53. package/templates/android/app/src/main/java/com/appname/MainActivity.kt +22 -0
  54. package/templates/android/app/src/main/java/com/appname/MainApplication.kt +44 -0
  55. package/templates/android/app/src/main/res/values/strings.xml +3 -0
  56. package/templates/android/app/src/main/res/values/styles.xml +7 -0
  57. package/templates/android/build.gradle.kts +44 -0
  58. package/templates/android/gradle.properties +39 -0
  59. package/templates/android/settings.gradle.kts +12 -0
  60. package/templates/babel.config.js +15 -0
  61. package/templates/index.js +7 -0
  62. package/templates/ios/.xcode.env +11 -0
  63. package/templates/ios/AppName/AppDelegate.swift +25 -0
  64. package/templates/ios/AppName/AppName-Bridging-Header.h +4 -0
  65. package/templates/ios/AppName/AppName.entitlements +6 -0
  66. package/templates/ios/AppName/Images.xcassets/AppIcon.appiconset/Contents.json +35 -0
  67. package/templates/ios/AppName/Images.xcassets/Contents.json +6 -0
  68. package/templates/ios/AppName/Info.plist +49 -0
  69. package/templates/ios/AppName/LaunchScreen.storyboard +38 -0
  70. package/templates/ios/AppName.xcodeproj/project.pbxproj +402 -0
  71. package/templates/ios/AppName.xcodeproj/xcshareddata/xcschemes/AppName.xcscheme +78 -0
  72. package/templates/ios/Podfile +35 -0
  73. package/templates/metro.config.js +41 -0
  74. package/templates/package.json +57 -0
  75. package/templates/react-native.config.js +8 -0
  76. package/templates/src/app/index.tsx +34 -0
  77. package/templates/src/assets/fonts/.gitkeep +1 -0
  78. package/templates/src/assets/images/.gitkeep +1 -0
  79. package/templates/src/components/ui/accordion.tsx +114 -0
  80. package/templates/src/components/ui/avatar.tsx +75 -0
  81. package/templates/src/components/ui/button.tsx +93 -0
  82. package/templates/src/components/ui/card.tsx +120 -0
  83. package/templates/src/components/ui/checkbox.tsx +133 -0
  84. package/templates/src/components/ui/chip.tsx +95 -0
  85. package/templates/src/components/ui/dialog.tsx +134 -0
  86. package/templates/src/components/ui/divider.tsx +67 -0
  87. package/templates/src/components/ui/error-view.tsx +82 -0
  88. package/templates/src/components/ui/form-field.tsx +101 -0
  89. package/templates/src/components/ui/index.ts +100 -0
  90. package/templates/src/components/ui/popover.tsx +92 -0
  91. package/templates/src/components/ui/pressable-feedback.tsx +88 -0
  92. package/templates/src/components/ui/radio-group.tsx +153 -0
  93. package/templates/src/components/ui/scroll-shadow.tsx +108 -0
  94. package/templates/src/components/ui/select.tsx +165 -0
  95. package/templates/src/components/ui/skeleton-group.tsx +97 -0
  96. package/templates/src/components/ui/skeleton.tsx +87 -0
  97. package/templates/src/components/ui/spinner.tsx +87 -0
  98. package/templates/src/components/ui/surface.tsx +95 -0
  99. package/templates/src/components/ui/switch.tsx +124 -0
  100. package/templates/src/components/ui/tabs.tsx +154 -0
  101. package/templates/src/components/ui/text-field.tsx +106 -0
  102. package/templates/src/components/ui/toast.tsx +129 -0
  103. package/templates/src/contexts/.gitkeep +2 -0
  104. package/templates/src/core/clients/api/api.client.ts +113 -0
  105. package/templates/src/core/clients/api/index.ts +1 -0
  106. package/templates/src/core/clients/storage/index.ts +1 -0
  107. package/templates/src/core/clients/storage/storage.client.ts +121 -0
  108. package/templates/src/core/constants/index.ts +19 -0
  109. package/templates/src/core/core.ts +40 -0
  110. package/templates/src/core/index.ts +10 -0
  111. package/templates/src/global.css +87 -0
  112. package/templates/src/hooks/index.ts +6 -0
  113. package/templates/src/hooks/use-debounce.ts +23 -0
  114. package/templates/src/hooks/use-mounted.ts +21 -0
  115. package/templates/src/index.ts +28 -0
  116. package/templates/src/lib/index.ts +5 -0
  117. package/templates/src/lib/utils.ts +115 -0
  118. package/templates/src/modules/.gitkeep +6 -0
  119. package/templates/src/navigation/index.ts +8 -0
  120. package/templates/src/navigation/navigation-provider.tsx +36 -0
  121. package/templates/src/navigation/router.tsx +137 -0
  122. package/templates/src/providers/app.provider.tsx +29 -0
  123. package/templates/src/providers/index.ts +5 -0
  124. package/templates/src/routes/(tabs)/_layout.tsx +42 -0
  125. package/templates/src/routes/(tabs)/explore.tsx +161 -0
  126. package/templates/src/routes/(tabs)/home.tsx +138 -0
  127. package/templates/src/routes/(tabs)/profile.tsx +151 -0
  128. package/templates/src/routes/_layout.tsx +18 -0
  129. package/templates/src/routes/settings.tsx +194 -0
  130. package/templates/src/screens/auth/index.ts +6 -0
  131. package/templates/src/screens/auth/login.tsx +165 -0
  132. package/templates/src/screens/auth/register.tsx +203 -0
  133. package/templates/src/screens/home.tsx +204 -0
  134. package/templates/src/screens/index.ts +17 -0
  135. package/templates/src/screens/profile.tsx +210 -0
  136. package/templates/src/screens/settings.tsx +216 -0
  137. package/templates/src/screens/welcome.tsx +101 -0
  138. package/templates/src/styles/index.ts +103 -0
  139. package/templates/src/types/common.ts +71 -0
  140. package/templates/src/types/index.ts +5 -0
  141. package/templates/tsconfig.json +14 -0
  142. package/README.md +0 -15
  143. package/assets/favicon.ico +0 -0
  144. package/dist/commands/dev/dev.d.ts +0 -22
  145. package/dist/commands/dev/dev.js +0 -56
  146. package/dist/commands/dev/dev.js.map +0 -1
  147. package/dist/commands/init/init-teardown.d.ts +0 -9
  148. package/dist/commands/init/init-teardown.js +0 -27
  149. package/dist/commands/init/init-teardown.js.map +0 -1
  150. package/dist/index.d.ts +0 -1
  151. package/dist/index.js +0 -21
  152. package/dist/index.js.map +0 -1
  153. package/dist/modules/dev/dev-menu/keyboard-handler.d.ts +0 -21
  154. package/dist/modules/dev/dev-menu/keyboard-handler.js +0 -139
  155. package/dist/modules/dev/dev-menu/keyboard-handler.js.map +0 -1
  156. package/dist/modules/dev/dev-menu/open-debugger-keyboard-handler.d.ts +0 -18
  157. package/dist/modules/dev/dev-menu/open-debugger-keyboard-handler.js +0 -106
  158. package/dist/modules/dev/dev-menu/open-debugger-keyboard-handler.js.map +0 -1
  159. package/dist/modules/dev/dev-server/cdp/cdp.adapter.d.ts +0 -6
  160. package/dist/modules/dev/dev-server/cdp/cdp.adapter.js +0 -13
  161. package/dist/modules/dev/dev-server/cdp/cdp.adapter.js.map +0 -1
  162. package/dist/modules/dev/dev-server/cdp/index.d.ts +0 -2
  163. package/dist/modules/dev/dev-server/cdp/index.js +0 -19
  164. package/dist/modules/dev/dev-server/cdp/index.js.map +0 -1
  165. package/dist/modules/dev/dev-server/cdp/types.d.ts +0 -107
  166. package/dist/modules/dev/dev-server/cdp/types.js +0 -3
  167. package/dist/modules/dev/dev-server/cdp/types.js.map +0 -1
  168. package/dist/modules/dev/dev-server/dev-server-checker.d.ts +0 -22
  169. package/dist/modules/dev/dev-server/dev-server-checker.js +0 -73
  170. package/dist/modules/dev/dev-server/dev-server-checker.js.map +0 -1
  171. package/dist/modules/dev/dev-server/dev-server.d.ts +0 -74
  172. package/dist/modules/dev/dev-server/dev-server.js +0 -272
  173. package/dist/modules/dev/dev-server/dev-server.js.map +0 -1
  174. package/dist/modules/dev/dev-server/inspector/device.d.ts +0 -46
  175. package/dist/modules/dev/dev-server/inspector/device.event-reporter.d.ts +0 -37
  176. package/dist/modules/dev/dev-server/inspector/device.event-reporter.js +0 -166
  177. package/dist/modules/dev/dev-server/inspector/device.event-reporter.js.map +0 -1
  178. package/dist/modules/dev/dev-server/inspector/device.js +0 -578
  179. package/dist/modules/dev/dev-server/inspector/device.js.map +0 -1
  180. package/dist/modules/dev/dev-server/inspector/inspector.d.ts +0 -27
  181. package/dist/modules/dev/dev-server/inspector/inspector.js +0 -225
  182. package/dist/modules/dev/dev-server/inspector/inspector.js.map +0 -1
  183. package/dist/modules/dev/dev-server/inspector/types.d.ts +0 -156
  184. package/dist/modules/dev/dev-server/inspector/types.js +0 -3
  185. package/dist/modules/dev/dev-server/inspector/types.js.map +0 -1
  186. package/dist/modules/dev/dev-server/inspector/wss/servers/debugger-connection.server.d.ts +0 -14
  187. package/dist/modules/dev/dev-server/inspector/wss/servers/debugger-connection.server.js +0 -63
  188. package/dist/modules/dev/dev-server/inspector/wss/servers/debugger-connection.server.js.map +0 -1
  189. package/dist/modules/dev/dev-server/inspector/wss/servers/device-connection.server.d.ts +0 -19
  190. package/dist/modules/dev/dev-server/inspector/wss/servers/device-connection.server.js +0 -66
  191. package/dist/modules/dev/dev-server/inspector/wss/servers/device-connection.server.js.map +0 -1
  192. package/dist/modules/dev/dev-server/plugins/devtools.plugin.d.ts +0 -1
  193. package/dist/modules/dev/dev-server/plugins/devtools.plugin.js +0 -51
  194. package/dist/modules/dev/dev-server/plugins/devtools.plugin.js.map +0 -1
  195. package/dist/modules/dev/dev-server/plugins/favicon.plugin.d.ts +0 -1
  196. package/dist/modules/dev/dev-server/plugins/favicon.plugin.js +0 -19
  197. package/dist/modules/dev/dev-server/plugins/favicon.plugin.js.map +0 -1
  198. package/dist/modules/dev/dev-server/plugins/multipart.plugin.d.ts +0 -1
  199. package/dist/modules/dev/dev-server/plugins/multipart.plugin.js +0 -63
  200. package/dist/modules/dev/dev-server/plugins/multipart.plugin.js.map +0 -1
  201. package/dist/modules/dev/dev-server/plugins/systrace.plugin.d.ts +0 -1
  202. package/dist/modules/dev/dev-server/plugins/systrace.plugin.js +0 -29
  203. package/dist/modules/dev/dev-server/plugins/systrace.plugin.js.map +0 -1
  204. package/dist/modules/dev/dev-server/plugins/types.d.ts +0 -11
  205. package/dist/modules/dev/dev-server/plugins/types.js +0 -3
  206. package/dist/modules/dev/dev-server/plugins/types.js.map +0 -1
  207. package/dist/modules/dev/dev-server/plugins/wss/index.d.ts +0 -3
  208. package/dist/modules/dev/dev-server/plugins/wss/index.js +0 -20
  209. package/dist/modules/dev/dev-server/plugins/wss/index.js.map +0 -1
  210. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-api.server.d.ts +0 -37
  211. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-api.server.js +0 -67
  212. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-api.server.js.map +0 -1
  213. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-debugger.server.d.ts +0 -63
  214. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-debugger.server.js +0 -129
  215. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-debugger.server.js.map +0 -1
  216. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-dev-client.server.d.ts +0 -32
  217. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-dev-client.server.js +0 -76
  218. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-dev-client.server.js.map +0 -1
  219. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-events.server.d.ts +0 -75
  220. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-events.server.js +0 -199
  221. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-events.server.js.map +0 -1
  222. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-hmr.server.d.ts +0 -44
  223. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-hmr.server.js +0 -121
  224. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-hmr.server.js.map +0 -1
  225. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-message.server.d.ts +0 -135
  226. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-message.server.js +0 -364
  227. package/dist/modules/dev/dev-server/plugins/wss/servers/web-socket-message.server.js.map +0 -1
  228. package/dist/modules/dev/dev-server/plugins/wss/types.d.ts +0 -6
  229. package/dist/modules/dev/dev-server/plugins/wss/types.js +0 -3
  230. package/dist/modules/dev/dev-server/plugins/wss/types.js.map +0 -1
  231. package/dist/modules/dev/dev-server/plugins/wss/web-socket-router.d.ts +0 -32
  232. package/dist/modules/dev/dev-server/plugins/wss/web-socket-router.js +0 -58
  233. package/dist/modules/dev/dev-server/plugins/wss/web-socket-router.js.map +0 -1
  234. package/dist/modules/dev/dev-server/plugins/wss/web-socket-server-adapter.d.ts +0 -13
  235. package/dist/modules/dev/dev-server/plugins/wss/web-socket-server-adapter.js +0 -27
  236. package/dist/modules/dev/dev-server/plugins/wss/web-socket-server-adapter.js.map +0 -1
  237. package/dist/modules/dev/dev-server/plugins/wss/web-socket-server.d.ts +0 -39
  238. package/dist/modules/dev/dev-server/plugins/wss/web-socket-server.js +0 -47
  239. package/dist/modules/dev/dev-server/plugins/wss/web-socket-server.js.map +0 -1
  240. package/dist/modules/dev/dev-server/plugins/wss/wss.plugin.d.ts +0 -24
  241. package/dist/modules/dev/dev-server/plugins/wss/wss.plugin.js +0 -56
  242. package/dist/modules/dev/dev-server/plugins/wss/wss.plugin.js.map +0 -1
  243. package/dist/modules/dev/dev-server/sybmolicate/sybmolicate.plugin.d.ts +0 -7
  244. package/dist/modules/dev/dev-server/sybmolicate/sybmolicate.plugin.js +0 -41
  245. package/dist/modules/dev/dev-server/sybmolicate/sybmolicate.plugin.js.map +0 -1
  246. package/dist/modules/dev/dev-server/sybmolicate/types.d.ts +0 -64
  247. package/dist/modules/dev/dev-server/sybmolicate/types.js +0 -3
  248. package/dist/modules/dev/dev-server/sybmolicate/types.js.map +0 -1
  249. package/dist/modules/dev/terminal/base.terminal.reporter.d.ts +0 -25
  250. package/dist/modules/dev/terminal/base.terminal.reporter.js +0 -79
  251. package/dist/modules/dev/terminal/base.terminal.reporter.js.map +0 -1
  252. package/dist/modules/dev/terminal/terminal.reporter.d.ts +0 -13
  253. package/dist/modules/dev/terminal/terminal.reporter.js +0 -83
  254. package/dist/modules/dev/terminal/terminal.reporter.js.map +0 -1
  255. package/dist/modules/dev/types.d.ts +0 -20
  256. package/dist/modules/dev/types.js +0 -3
  257. package/dist/modules/dev/types.js.map +0 -1
  258. package/dist/modules/dev/utils/log.d.ts +0 -23
  259. package/dist/modules/dev/utils/log.js +0 -74
  260. package/dist/modules/dev/utils/log.js.map +0 -1
@@ -1,272 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DevServer = void 0;
7
- exports.makeLogEntryFromFastifyLog = makeLogEntryFromFastifyLog;
8
- const compress_1 = __importDefault(require("@fastify/compress"));
9
- const cors_1 = __importDefault(require("@fastify/cors"));
10
- const middie_1 = __importDefault(require("@fastify/middie"));
11
- const sensible_1 = __importDefault(require("@fastify/sensible"));
12
- const cli_server_api_1 = require("@react-native-community/cli-server-api");
13
- const metro_config_1 = require("@react-native/metro-config");
14
- const fastify_1 = __importDefault(require("fastify"));
15
- const metro_1 = __importDefault(require("metro"));
16
- const node_stream_1 = require("node:stream");
17
- const keyboard_handler_1 = require("../dev-menu/keyboard-handler");
18
- const terminal_reporter_1 = require("../terminal/terminal.reporter");
19
- const inspector_1 = require("./inspector/inspector");
20
- const devtools_plugin_1 = require("./plugins/devtools.plugin");
21
- const favicon_plugin_1 = require("./plugins/favicon.plugin");
22
- const multipart_plugin_1 = require("./plugins/multipart.plugin");
23
- const systrace_plugin_1 = require("./plugins/systrace.plugin");
24
- const wss_1 = require("./plugins/wss");
25
- const web_socket_api_server_1 = require("./plugins/wss/servers/web-socket-api.server");
26
- const web_socket_events_server_1 = require("./plugins/wss/servers/web-socket-events.server");
27
- const web_socket_message_server_1 = require("./plugins/wss/servers/web-socket-message.server");
28
- const sybmolicate_plugin_1 = require("./sybmolicate/sybmolicate.plugin");
29
- class DevServer {
30
- config;
31
- terminalReporter;
32
- stream;
33
- instance;
34
- apiServer;
35
- messageServer;
36
- eventsServer;
37
- keyboardHandler;
38
- inspector;
39
- constructor(config) {
40
- this.config = config;
41
- this.terminalReporter = new terminal_reporter_1.TeardownTerminalReporter(this);
42
- this.stream = new node_stream_1.Writable({
43
- write: this.onWrite.bind(this),
44
- });
45
- this.instance = (0, fastify_1.default)({
46
- // disableRequestLogging: true,
47
- logger: {
48
- level: "trace",
49
- stream: this.stream,
50
- },
51
- ...(config.https ? { https: config.https } : undefined),
52
- });
53
- this.apiServer = new web_socket_api_server_1.WebSocketApiServer(this.instance);
54
- this.messageServer = new web_socket_message_server_1.WebSocketMessageServer(this.instance);
55
- this.eventsServer = new web_socket_events_server_1.WebSocketEventsServer(this.instance, {
56
- webSocketMessageServer: this.messageServer,
57
- });
58
- this.keyboardHandler = new keyboard_handler_1.KeyboardHandlerManager(this);
59
- this.inspector = new inspector_1.Inspector({
60
- projectRoot: this.config.projectRoot,
61
- serverBaseUrl: this.getDevServerUrl(),
62
- eventReporter: this.terminalReporter,
63
- });
64
- }
65
- async onWrite(chunk, encoding, callback) {
66
- if (chunk == null) {
67
- return;
68
- }
69
- const log = JSON.parse(chunk.toString());
70
- // console.log("onWrite", log);
71
- this.apiServer.send(log);
72
- callback();
73
- }
74
- getDevServerUrl() {
75
- const https = this.config.https ? "https" : "http";
76
- return `${https}://${this.config.host}:${this.config.port}`;
77
- }
78
- onInitializeDone() {
79
- this.keyboardHandler.initialize();
80
- }
81
- reportMetroEvent(event) {
82
- // console.log("reportMetroEvent", event);
83
- this.apiServer.send({
84
- type: "metro_event",
85
- event,
86
- });
87
- switch (event.type) {
88
- case "client_log":
89
- this.eventsServer.broadcastEvent(event);
90
- break;
91
- }
92
- }
93
- onBundleBuilt(bundlePath) {
94
- console.log("onBundleBuilt", bundlePath);
95
- // this.messageServer.broadcast("reload");
96
- }
97
- onClientConnected(platform, clientId) {
98
- // this.messageServer.broadcast("reload", undefined, []);
99
- // this.instance.wss.router.onClientConnected(platform, clientId);
100
- // this.onMessage({
101
- // level: 30,
102
- // time: Date.now(),
103
- // pid: 1,
104
- // hostname: "localhost",
105
- // });
106
- }
107
- async loadMetroConfig() {
108
- const config = await metro_1.default.loadConfig({
109
- cwd: this.config.projectRoot,
110
- ...this.config,
111
- });
112
- const reactNativeConfig = (0, metro_config_1.getDefaultConfig)(this.config.projectRoot);
113
- return (0, metro_config_1.mergeConfig)(reactNativeConfig, config);
114
- }
115
- _metroConfig = null;
116
- async getMetroConfig() {
117
- if (!this._metroConfig) {
118
- this._metroConfig = await this.loadMetroConfig();
119
- }
120
- return (0, metro_config_1.mergeConfig)(this._metroConfig, {
121
- reporter: this.terminalReporter,
122
- });
123
- }
124
- async registerPlugins() {
125
- const metroConfig = await this.getMetroConfig();
126
- const serverInstance = await metro_1.default.createConnectMiddleware(metroConfig, {
127
- watch: true,
128
- onBundleBuilt: this.onBundleBuilt.bind(this),
129
- });
130
- const websockets = this.inspector.createWebSocketServers();
131
- // const devMiddleware = createDevMiddleware({
132
- // projectRoot: this.config.projectRoot,
133
- // serverBaseUrl: `http://${this.config.host}:${this.config.port}`,
134
- // logger: this.instance.log,
135
- // unstable_customInspectorMessageHandler:
136
- // this.customInspectorMessageHandler.bind(this),
137
- // unstable_experiments: {
138
- // enableNetworkInspector: true,
139
- // },
140
- // });
141
- // const debuggerConnectionServer = new DebuggerConnectionServer({
142
- // devices: this.devices,
143
- // eventReporter: this.eventReporter,
144
- // startHeartbeat: this.startHeartbeat,
145
- // });
146
- // const deviceConnectionServer = new DeviceConnectionServer(this.instance);
147
- await this.instance.register(cors_1.default, {
148
- origin: "*",
149
- // "localhost",
150
- // "localhost:8081",
151
- // "127.0.0.1",
152
- // "127.0.0.1:8081",
153
- // /localhost:\d+/,
154
- // /127\.0\.0\.1:\d+/,
155
- // ],
156
- // methods: ["GET", "PUT", "POST", "DELETE", "OPTIONS"],
157
- // allowedHeaders: ["Content-Type", "Authorization", "X-Requested-With"],
158
- // credentials: true,
159
- // maxAge: 86400,
160
- // preflight: true,
161
- preflightContinue: true,
162
- });
163
- await this.instance.register(compress_1.default);
164
- await this.instance.register(sensible_1.default);
165
- await this.instance.register(middie_1.default);
166
- await this.instance.register(wss_1.wssPlugin, {
167
- metroConfig,
168
- metroServer: serverInstance.metroServer,
169
- onClientConnected: this.onClientConnected.bind(this),
170
- messageServer: this.messageServer,
171
- eventsServer: this.eventsServer,
172
- apiServer: this.apiServer,
173
- endpoints: {
174
- "/inspector/debug": websockets["/inspector/debug"],
175
- "/inspector/device": websockets["/inspector/device"],
176
- "/inspector/network": websockets["/inspector/debug"],
177
- },
178
- });
179
- await this.instance.register(multipart_plugin_1.multipartPlugin);
180
- await this.instance.register(devtools_plugin_1.devtoolsPlugin, {
181
- host: this.config.host,
182
- port: this.config.port,
183
- https: this.config.https,
184
- });
185
- await this.instance.register(sybmolicate_plugin_1.symbolicatePlugin, {
186
- onSymbolicate: this.onSymbolicate.bind(this),
187
- });
188
- await this.instance.register(systrace_plugin_1.systracePlugin);
189
- await this.instance.register(favicon_plugin_1.faviconPlugin);
190
- // Register middleware
191
- this.instance.use("/open-url", cli_server_api_1.openURLMiddleware);
192
- this.instance.use("/open-stack-frame", (0, cli_server_api_1.openStackFrameInEditorMiddleware)({
193
- watchFolders: [this.config.projectRoot],
194
- }));
195
- this.instance.use(serverInstance.metroServer.processRequest);
196
- this.instance.use((req, resp, next) => this.inspector.handleHttpRequest(req, resp, next));
197
- }
198
- onSymbolicate(request, reply) {
199
- const result = JSON.parse(request.rawBody);
200
- const { codeFrame, stack } = result;
201
- this.instance.log.info("onSymbolicate", { codeFrame, stack });
202
- }
203
- registerHooks() {
204
- this.instance.log.info("Registering hooks");
205
- this.instance = this.instance.addHook("onSend", async (request, reply, payload) => {
206
- reply.header("X-Content-Type-Options", "nosniff");
207
- reply.header("X-React-Native-Project-Root", this.config.projectRoot);
208
- const [pathname] = request.url.split("?");
209
- if (pathname.endsWith(".map")) {
210
- reply.header("Access-Control-Allow-Origin", "devtools://devtools");
211
- }
212
- return payload;
213
- });
214
- this.instance.log.info("Hooks registered");
215
- }
216
- registerRoutes() {
217
- this.instance.log.info("Registering routes");
218
- this.instance.get("/", async () => "React Native packager is running");
219
- this.instance.get("/status", async () => "packager-status:running");
220
- this.instance.log.info("Routes registered");
221
- }
222
- async initialize() {
223
- this.instance.log.info("Initializing dev server");
224
- await this.registerPlugins();
225
- this.registerHooks();
226
- this.registerRoutes();
227
- this.instance.log.info("Dev server initialized");
228
- }
229
- async start() {
230
- this.instance.log.info("Starting dev server", this.config);
231
- await this.instance.listen({
232
- port: this.config.port,
233
- host: this.config.host,
234
- });
235
- this.instance.log.info("Dev server started", this.instance.server.address());
236
- }
237
- async stop() {
238
- this.instance.log.info("Stopping dev server");
239
- await this.instance.close();
240
- this.instance.log.info("Dev server stopped");
241
- }
242
- getInstance() {
243
- return this.instance;
244
- }
245
- }
246
- exports.DevServer = DevServer;
247
- const levelToTypeMapping = {
248
- 10: "debug",
249
- 20: "debug",
250
- 30: "info",
251
- 40: "warn",
252
- 50: "error",
253
- 60: "error",
254
- };
255
- function makeLogEntryFromFastifyLog(data) {
256
- const { level, time, pid, hostname, ...rest } = data;
257
- const levelToTypeMapping = {
258
- 10: "debug",
259
- 20: "debug",
260
- 30: "info",
261
- 40: "warn",
262
- 50: "error",
263
- 60: "error",
264
- };
265
- return {
266
- type: levelToTypeMapping[level] ?? "log",
267
- timestamp: time,
268
- issuer: "",
269
- message: [rest],
270
- };
271
- }
272
- //# sourceMappingURL=dev-server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dev-server.js","sourceRoot":"","sources":["../../../../src/modules/dev/dev-server/dev-server.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- import WS from "ws";
2
- import type { EventReporter, Page } from "./types";
3
- export declare class Device {
4
- private id;
5
- private name;
6
- private app;
7
- private messageFromDeviceQueue;
8
- private deviceSocket;
9
- private pages;
10
- private debuggerConnection;
11
- private lastConnectedLegacyReactNativePage;
12
- private isLegacyPageReloading;
13
- private lastGetPagesMessage;
14
- private scriptIdToSourcePathMapping;
15
- private projectRoot;
16
- private deviceEventReporter;
17
- private pagesPollingIntervalId;
18
- private createCustomMessageHandler;
19
- private connectedPageIds;
20
- constructor(id: string, name: string, app: string, socket: WS, projectRoot: string, eventReporter?: EventReporter);
21
- private terminateDebuggerConnection;
22
- dangerouslyRecreateDevice(id: string, name: string, app: string, socket: WS, projectRoot: string, eventReporter?: EventReporter): void;
23
- getName(): string;
24
- getApp(): string;
25
- getPagesList(): Page[];
26
- handleDebuggerConnection(socket: WS, pageId: string, metadata: {
27
- userAgent: string | null;
28
- }): void;
29
- private sendConnectEventToDevice;
30
- private sendDisconnectEventToDevice;
31
- private pageHasCapability;
32
- private createSyntheticPage;
33
- private handleMessageFromDevice;
34
- private sendMessageToDevice;
35
- private newLegacyReactNativePage;
36
- private processMessageFromDeviceLegacy;
37
- private interceptClientMessageForSourceFetching;
38
- private processDebuggerSetBreakpointByUrl;
39
- private processDebuggerGetScriptSource;
40
- private mapToDevicePageId;
41
- private tryParseHTTPURL;
42
- private fetchText;
43
- private sendErrorToDebugger;
44
- private isPageFuseboxFrontend;
45
- dangerouslyGetSocket(): WS;
46
- }
@@ -1,37 +0,0 @@
1
- import { EventReporter } from "./types";
2
- export type RequestMetadata = {
3
- pageId: string | null;
4
- frontendUserAgent: string | null;
5
- prefersFuseboxFrontend: boolean | null;
6
- };
7
- export type ResponseMetadata = RequestMetadata;
8
- export type DeviceMetadata = {
9
- appId: string;
10
- deviceId: string;
11
- deviceName: string;
12
- };
13
- export declare class DeviceEventReporter {
14
- private eventReporter;
15
- private metadata;
16
- private pendingCommands;
17
- constructor(eventReporter: EventReporter, metadata: DeviceMetadata);
18
- logRequest(req: {
19
- id: number;
20
- method: string;
21
- [key: string]: unknown;
22
- }, origin: "debugger" | "proxy", metadata: RequestMetadata): void;
23
- logResponse(res: {
24
- id: number;
25
- error?: {
26
- message: string;
27
- data?: unknown;
28
- };
29
- }, origin: "device" | "proxy", metadata: ResponseMetadata): void;
30
- logConnection(connectedEntity: "debugger", metadata: {
31
- pageId: string;
32
- frontendUserAgent: string | null;
33
- }): void;
34
- logDisconnection(disconnectedEntity: "device" | "debugger"): void;
35
- logProxyMessageHandlingError(messageOrigin: "device" | "debugger", error: Error, message: string): void;
36
- private logExpiredCommand;
37
- }
@@ -1,166 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DeviceEventReporter = void 0;
7
- const ttlcache_1 = __importDefault(require("@isaacs/ttlcache"));
8
- class DeviceEventReporter {
9
- eventReporter;
10
- metadata;
11
- pendingCommands;
12
- constructor(eventReporter, metadata) {
13
- this.eventReporter = eventReporter;
14
- this.metadata = metadata;
15
- this.pendingCommands = new ttlcache_1.default({
16
- ttl: 10000,
17
- dispose: (command, id, reason) => {
18
- if (reason === "delete" || reason === "set") {
19
- // TODO: Report clobbering ('set') using a dedicated error code
20
- return;
21
- }
22
- this.logExpiredCommand(command);
23
- },
24
- });
25
- }
26
- logRequest(req, origin, metadata) {
27
- this.pendingCommands.set(req.id, {
28
- method: req.method,
29
- requestOrigin: origin,
30
- requestTime: Date.now(),
31
- metadata,
32
- });
33
- }
34
- logResponse(res, origin, metadata) {
35
- const pendingCommand = this.pendingCommands.get(res.id);
36
- if (!pendingCommand) {
37
- this.eventReporter.logEvent({
38
- type: "debugger_command",
39
- protocol: "CDP",
40
- requestOrigin: null,
41
- method: null,
42
- status: "coded_error",
43
- errorCode: "UNMATCHED_REQUEST_ID",
44
- responseOrigin: origin,
45
- timeSinceStart: null,
46
- appId: this.metadata.appId,
47
- deviceId: this.metadata.deviceId,
48
- deviceName: this.metadata.deviceName,
49
- pageId: metadata.pageId,
50
- frontendUserAgent: metadata.frontendUserAgent,
51
- prefersFuseboxFrontend: metadata.prefersFuseboxFrontend,
52
- });
53
- return;
54
- }
55
- const timeSinceStart = Date.now() - pendingCommand.requestTime;
56
- this.pendingCommands.delete(res.id);
57
- if (res.error) {
58
- let message = res.error.message;
59
- if ("data" in res.error) {
60
- message += ` (${String(res.error.data)})`;
61
- }
62
- this.eventReporter.logEvent({
63
- type: "debugger_command",
64
- requestOrigin: pendingCommand.requestOrigin,
65
- method: pendingCommand.method,
66
- protocol: "CDP",
67
- status: "coded_error",
68
- errorCode: "PROTOCOL_ERROR",
69
- errorDetails: message,
70
- responseOrigin: origin,
71
- timeSinceStart,
72
- appId: this.metadata.appId,
73
- deviceId: this.metadata.deviceId,
74
- deviceName: this.metadata.deviceName,
75
- pageId: pendingCommand.metadata.pageId,
76
- frontendUserAgent: pendingCommand.metadata.frontendUserAgent,
77
- prefersFuseboxFrontend: metadata.prefersFuseboxFrontend,
78
- });
79
- return;
80
- }
81
- this.eventReporter.logEvent({
82
- type: "debugger_command",
83
- protocol: "CDP",
84
- requestOrigin: pendingCommand.requestOrigin,
85
- method: pendingCommand.method,
86
- status: "success",
87
- responseOrigin: origin,
88
- timeSinceStart,
89
- appId: this.metadata.appId,
90
- deviceId: this.metadata.deviceId,
91
- deviceName: this.metadata.deviceName,
92
- pageId: pendingCommand.metadata.pageId,
93
- frontendUserAgent: pendingCommand.metadata.frontendUserAgent,
94
- prefersFuseboxFrontend: metadata.prefersFuseboxFrontend,
95
- });
96
- }
97
- logConnection(connectedEntity, metadata) {
98
- this.eventReporter.logEvent({
99
- type: "connect_debugger_frontend",
100
- status: "success",
101
- appId: this.metadata.appId,
102
- deviceName: this.metadata.deviceName,
103
- deviceId: this.metadata.deviceId,
104
- pageId: metadata.pageId,
105
- frontendUserAgent: metadata.frontendUserAgent,
106
- });
107
- }
108
- logDisconnection(disconnectedEntity) {
109
- const errorCode = disconnectedEntity === "device"
110
- ? "DEVICE_DISCONNECTED"
111
- : "DEBUGGER_DISCONNECTED";
112
- for (const pendingCommand of this.pendingCommands.values()) {
113
- this.eventReporter.logEvent({
114
- type: "debugger_command",
115
- protocol: "CDP",
116
- requestOrigin: pendingCommand.requestOrigin,
117
- method: pendingCommand.method,
118
- status: "coded_error",
119
- errorCode,
120
- responseOrigin: "proxy",
121
- timeSinceStart: Date.now() - pendingCommand.requestTime,
122
- appId: this.metadata.appId,
123
- deviceId: this.metadata.deviceId,
124
- deviceName: this.metadata.deviceName,
125
- pageId: pendingCommand.metadata.pageId,
126
- frontendUserAgent: pendingCommand.metadata.frontendUserAgent,
127
- prefersFuseboxFrontend: pendingCommand.metadata.prefersFuseboxFrontend,
128
- });
129
- }
130
- this.pendingCommands.clear();
131
- }
132
- logProxyMessageHandlingError(messageOrigin, error, message) {
133
- this.eventReporter.logEvent({
134
- type: "proxy_error",
135
- status: "error",
136
- messageOrigin,
137
- message,
138
- error: error.message,
139
- errorStack: error.stack ?? "",
140
- appId: this.metadata.appId,
141
- deviceId: this.metadata.deviceId,
142
- deviceName: this.metadata.deviceName,
143
- pageId: null,
144
- });
145
- }
146
- logExpiredCommand(pendingCommand) {
147
- this.eventReporter.logEvent({
148
- type: "debugger_command",
149
- protocol: "CDP",
150
- requestOrigin: pendingCommand.requestOrigin,
151
- method: pendingCommand.method,
152
- status: "coded_error",
153
- errorCode: "TIMED_OUT",
154
- responseOrigin: "proxy",
155
- timeSinceStart: Date.now() - pendingCommand.requestTime,
156
- appId: this.metadata.appId,
157
- deviceId: this.metadata.deviceId,
158
- deviceName: this.metadata.deviceName,
159
- pageId: pendingCommand.metadata.pageId,
160
- frontendUserAgent: pendingCommand.metadata.frontendUserAgent,
161
- prefersFuseboxFrontend: pendingCommand.metadata.prefersFuseboxFrontend,
162
- });
163
- }
164
- }
165
- exports.DeviceEventReporter = DeviceEventReporter;
166
- //# sourceMappingURL=device.event-reporter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"device.event-reporter.js","sourceRoot":"","sources":["../../../../../src/modules/dev/dev-server/inspector/device.event-reporter.ts"],"names":[],"mappings":"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"}