vxrn 1.27.1 → 2.0.0-beta.45.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 (456) hide show
  1. package/dist/cli.mjs +212 -261
  2. package/dist/cli.mjs.map +1 -1
  3. package/dist/cli.native.js +216 -265
  4. package/dist/cli.native.js.map +1 -1
  5. package/dist/config/getAdditionalViteConfig.mjs +33 -62
  6. package/dist/config/getAdditionalViteConfig.mjs.map +1 -1
  7. package/dist/config/getAdditionalViteConfig.native.js +33 -62
  8. package/dist/config/getAdditionalViteConfig.native.js.map +1 -1
  9. package/dist/config/getBaseViteConfigOnly.mjs +84 -77
  10. package/dist/config/getBaseViteConfigOnly.mjs.map +1 -1
  11. package/dist/config/getBaseViteConfigOnly.native.js +86 -79
  12. package/dist/config/getBaseViteConfigOnly.native.js.map +1 -1
  13. package/dist/config/getBaseViteConfigWithPlugins.mjs +6 -4
  14. package/dist/config/getBaseViteConfigWithPlugins.mjs.map +1 -1
  15. package/dist/config/getBaseViteConfigWithPlugins.native.js +6 -4
  16. package/dist/config/getBaseViteConfigWithPlugins.native.js.map +1 -1
  17. package/dist/config/getBaseVitePlugins.mjs +102 -130
  18. package/dist/config/getBaseVitePlugins.mjs.map +1 -1
  19. package/dist/config/getBaseVitePlugins.native.js +123 -152
  20. package/dist/config/getBaseVitePlugins.native.js.map +1 -1
  21. package/dist/config/getNonCliModeOnlyVitePlugins.mjs +3 -3
  22. package/dist/config/getNonCliModeOnlyVitePlugins.mjs.map +1 -1
  23. package/dist/config/getNonCliModeOnlyVitePlugins.native.js +3 -1
  24. package/dist/config/getNonCliModeOnlyVitePlugins.native.js.map +1 -1
  25. package/dist/config/getOptimizeDeps.mjs +138 -42
  26. package/dist/config/getOptimizeDeps.mjs.map +1 -1
  27. package/dist/config/getOptimizeDeps.native.js +138 -42
  28. package/dist/config/getOptimizeDeps.native.js.map +1 -1
  29. package/dist/config/getOptionsFilled.mjs +48 -52
  30. package/dist/config/getOptionsFilled.mjs.map +1 -1
  31. package/dist/config/getOptionsFilled.native.js +51 -55
  32. package/dist/config/getOptionsFilled.native.js.map +1 -1
  33. package/dist/config/getReactNativePlugins.mjs +23 -15
  34. package/dist/config/getReactNativePlugins.mjs.map +1 -1
  35. package/dist/config/getReactNativePlugins.native.js +25 -16
  36. package/dist/config/getReactNativePlugins.native.js.map +1 -1
  37. package/dist/config/getServerOptionsFilled.mjs +33 -35
  38. package/dist/config/getServerOptionsFilled.mjs.map +1 -1
  39. package/dist/config/getServerOptionsFilled.native.js +35 -38
  40. package/dist/config/getServerOptionsFilled.native.js.map +1 -1
  41. package/dist/config/getViteServerConfig.mjs +34 -45
  42. package/dist/config/getViteServerConfig.mjs.map +1 -1
  43. package/dist/config/getViteServerConfig.native.js +35 -46
  44. package/dist/config/getViteServerConfig.native.js.map +1 -1
  45. package/dist/config/mergeUserConfig.mjs +50 -28
  46. package/dist/config/mergeUserConfig.mjs.map +1 -1
  47. package/dist/config/mergeUserConfig.native.js +60 -38
  48. package/dist/config/mergeUserConfig.native.js.map +1 -1
  49. package/dist/constants/defaults.mjs +29 -12
  50. package/dist/constants/defaults.mjs.map +1 -1
  51. package/dist/constants/defaults.native.js +29 -12
  52. package/dist/constants/defaults.native.js.map +1 -1
  53. package/dist/constants.mjs +41 -6
  54. package/dist/constants.mjs.map +1 -1
  55. package/dist/constants.native.js +41 -6
  56. package/dist/constants.native.js.map +1 -1
  57. package/dist/exports/build.mjs +218 -270
  58. package/dist/exports/build.mjs.map +1 -1
  59. package/dist/exports/build.native.js +226 -283
  60. package/dist/exports/build.native.js.map +1 -1
  61. package/dist/exports/clean.mjs +71 -78
  62. package/dist/exports/clean.mjs.map +1 -1
  63. package/dist/exports/clean.native.js +76 -90
  64. package/dist/exports/clean.native.js.map +1 -1
  65. package/dist/exports/createServer.mjs +43 -46
  66. package/dist/exports/createServer.mjs.map +1 -1
  67. package/dist/exports/createServer.native.js +45 -48
  68. package/dist/exports/createServer.native.js.map +1 -1
  69. package/dist/exports/dev.mjs +177 -201
  70. package/dist/exports/dev.mjs.map +1 -1
  71. package/dist/exports/dev.native.js +191 -215
  72. package/dist/exports/dev.native.js.map +1 -1
  73. package/dist/exports/loadEnv.mjs +51 -48
  74. package/dist/exports/loadEnv.mjs.map +1 -1
  75. package/dist/exports/loadEnv.native.js +59 -57
  76. package/dist/exports/loadEnv.native.js.map +1 -1
  77. package/dist/exports/patch.mjs +9 -7
  78. package/dist/exports/patch.mjs.map +1 -1
  79. package/dist/exports/patch.native.js +9 -7
  80. package/dist/exports/patch.native.js.map +1 -1
  81. package/dist/exports/prebuild.mjs +177 -157
  82. package/dist/exports/prebuild.mjs.map +1 -1
  83. package/dist/exports/prebuild.native.js +197 -160
  84. package/dist/exports/prebuild.native.js.map +1 -1
  85. package/dist/exports/prebuildWithoutExpo.mjs +46 -44
  86. package/dist/exports/prebuildWithoutExpo.mjs.map +1 -1
  87. package/dist/exports/prebuildWithoutExpo.native.js +48 -46
  88. package/dist/exports/prebuildWithoutExpo.native.js.map +1 -1
  89. package/dist/exports/runAndroid.mjs +9 -10
  90. package/dist/exports/runAndroid.mjs.map +1 -1
  91. package/dist/exports/runAndroid.native.js +10 -11
  92. package/dist/exports/runAndroid.native.js.map +1 -1
  93. package/dist/exports/runIos.mjs +9 -10
  94. package/dist/exports/runIos.mjs.map +1 -1
  95. package/dist/exports/runIos.native.js +10 -11
  96. package/dist/exports/runIos.native.js.map +1 -1
  97. package/dist/exports/serve.mjs +23 -31
  98. package/dist/exports/serve.mjs.map +1 -1
  99. package/dist/exports/serve.native.js +26 -34
  100. package/dist/exports/serve.native.js.map +1 -1
  101. package/dist/exports/serveStaticAssets.mjs +109 -113
  102. package/dist/exports/serveStaticAssets.mjs.map +1 -1
  103. package/dist/exports/serveStaticAssets.native.js +180 -192
  104. package/dist/exports/serveStaticAssets.native.js.map +1 -1
  105. package/dist/index.js +25 -14
  106. package/dist/index.mjs +25 -14
  107. package/dist/index.native.js +25 -14
  108. package/dist/patches/builtInDepPatches.mjs +346 -435
  109. package/dist/patches/builtInDepPatches.mjs.map +1 -1
  110. package/dist/patches/builtInDepPatches.native.js +349 -438
  111. package/dist/patches/builtInDepPatches.native.js.map +1 -1
  112. package/dist/plugins/applyBuiltInPatchesPlugin.mjs +11 -11
  113. package/dist/plugins/applyBuiltInPatchesPlugin.mjs.map +1 -1
  114. package/dist/plugins/applyBuiltInPatchesPlugin.native.js +11 -11
  115. package/dist/plugins/applyBuiltInPatchesPlugin.native.js.map +1 -1
  116. package/dist/plugins/autoDepOptimizePlugin.mjs +87 -90
  117. package/dist/plugins/autoDepOptimizePlugin.mjs.map +1 -1
  118. package/dist/plugins/autoDepOptimizePlugin.native.js +99 -102
  119. package/dist/plugins/autoDepOptimizePlugin.native.js.map +1 -1
  120. package/dist/plugins/clientInjectPlugin.mjs +13 -11
  121. package/dist/plugins/clientInjectPlugin.mjs.map +1 -1
  122. package/dist/plugins/clientInjectPlugin.native.js +13 -11
  123. package/dist/plugins/clientInjectPlugin.native.js.map +1 -1
  124. package/dist/plugins/defaultDepOptimizePlugin.mjs +15 -23
  125. package/dist/plugins/defaultDepOptimizePlugin.mjs.map +1 -1
  126. package/dist/plugins/defaultDepOptimizePlugin.native.js +15 -23
  127. package/dist/plugins/defaultDepOptimizePlugin.native.js.map +1 -1
  128. package/dist/plugins/expoManifestRequestHandlerPlugin.mjs +163 -179
  129. package/dist/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -1
  130. package/dist/plugins/expoManifestRequestHandlerPlugin.native.js +169 -191
  131. package/dist/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
  132. package/dist/plugins/getResolvedConfigSubset.mjs +6 -5
  133. package/dist/plugins/getResolvedConfigSubset.mjs.map +1 -1
  134. package/dist/plugins/getResolvedConfigSubset.native.js +6 -5
  135. package/dist/plugins/getResolvedConfigSubset.native.js.map +1 -1
  136. package/dist/plugins/reactNativeCommonJsPlugin.mjs +210 -178
  137. package/dist/plugins/reactNativeCommonJsPlugin.mjs.map +1 -1
  138. package/dist/plugins/reactNativeCommonJsPlugin.native.js +283 -259
  139. package/dist/plugins/reactNativeCommonJsPlugin.native.js.map +1 -1
  140. package/dist/plugins/reactNativeDevAssetPlugin.mjs +72 -83
  141. package/dist/plugins/reactNativeDevAssetPlugin.mjs.map +1 -1
  142. package/dist/plugins/reactNativeDevAssetPlugin.native.js +75 -92
  143. package/dist/plugins/reactNativeDevAssetPlugin.native.js.map +1 -1
  144. package/dist/plugins/reactNativeDevServer.mjs +283 -328
  145. package/dist/plugins/reactNativeDevServer.mjs.map +1 -1
  146. package/dist/plugins/reactNativeDevServer.native.js +332 -391
  147. package/dist/plugins/reactNativeDevServer.native.js.map +1 -1
  148. package/dist/plugins/rnCodegenPlugin.mjs +13 -12
  149. package/dist/plugins/rnCodegenPlugin.mjs.map +1 -1
  150. package/dist/plugins/rnCodegenPlugin.native.js +13 -12
  151. package/dist/plugins/rnCodegenPlugin.native.js.map +1 -1
  152. package/dist/plugins/rollupRemoveUnusedImports.mjs +8 -7
  153. package/dist/plugins/rollupRemoveUnusedImports.mjs.map +1 -1
  154. package/dist/plugins/rollupRemoveUnusedImports.native.js +8 -7
  155. package/dist/plugins/rollupRemoveUnusedImports.native.js.map +1 -1
  156. package/dist/plugins/workletImportsPlugin.mjs +127 -132
  157. package/dist/plugins/workletImportsPlugin.mjs.map +1 -1
  158. package/dist/plugins/workletImportsPlugin.native.js +192 -203
  159. package/dist/plugins/workletImportsPlugin.native.js.map +1 -1
  160. package/dist/rn-commands/bundle/buildBundle.mjs +45 -79
  161. package/dist/rn-commands/bundle/buildBundle.mjs.map +1 -1
  162. package/dist/rn-commands/bundle/buildBundle.native.js +45 -85
  163. package/dist/rn-commands/bundle/buildBundle.native.js.map +1 -1
  164. package/dist/runtime/hmr-client.mjs +133 -140
  165. package/dist/runtime/hmr-client.mjs.map +1 -1
  166. package/dist/runtime/hmr-client.native.js +223 -222
  167. package/dist/runtime/hmr-client.native.js.map +1 -1
  168. package/dist/runtime/hmr-runtime.mjs +192 -194
  169. package/dist/runtime/hmr-runtime.mjs.map +1 -1
  170. package/dist/runtime/hmr-runtime.native.js +424 -411
  171. package/dist/runtime/hmr-runtime.native.js.map +1 -1
  172. package/dist/runtime/hmr-types.mjs +0 -2
  173. package/dist/runtime/hmr-types.native.js +0 -2
  174. package/dist/runtime/native-prelude.mjs +2 -1
  175. package/dist/runtime/native-prelude.mjs.map +1 -1
  176. package/dist/runtime/native-prelude.native.js +2 -1
  177. package/dist/runtime/native-prelude.native.js.map +1 -1
  178. package/dist/runtime/react-refresh-utils.mjs +23 -22
  179. package/dist/runtime/react-refresh-utils.mjs.map +1 -1
  180. package/dist/runtime/react-refresh-utils.native.js +23 -27
  181. package/dist/runtime/react-refresh-utils.native.js.map +1 -1
  182. package/dist/serve/node.mjs +49 -49
  183. package/dist/serve/node.mjs.map +1 -1
  184. package/dist/serve/node.native.js +92 -96
  185. package/dist/serve/node.native.js.map +1 -1
  186. package/dist/types.mjs +0 -2
  187. package/dist/types.native.js +0 -2
  188. package/dist/user-interface/index.mjs +245 -262
  189. package/dist/user-interface/index.mjs.map +1 -1
  190. package/dist/user-interface/index.native.js +274 -298
  191. package/dist/user-interface/index.native.js.map +1 -1
  192. package/dist/utils/assert.mjs +7 -6
  193. package/dist/utils/assert.mjs.map +1 -1
  194. package/dist/utils/assert.native.js +7 -18
  195. package/dist/utils/assert.native.js.map +1 -1
  196. package/dist/utils/bindKeypressInput.mjs +36 -38
  197. package/dist/utils/bindKeypressInput.mjs.map +1 -1
  198. package/dist/utils/bindKeypressInput.native.js +36 -38
  199. package/dist/utils/bindKeypressInput.native.js.map +1 -1
  200. package/dist/utils/coerceToArray.mjs +2 -1
  201. package/dist/utils/coerceToArray.mjs.map +1 -1
  202. package/dist/utils/coerceToArray.native.js +2 -1
  203. package/dist/utils/coerceToArray.native.js.map +1 -1
  204. package/dist/utils/connectedNativeClients.mjs +3 -2
  205. package/dist/utils/connectedNativeClients.mjs.map +1 -1
  206. package/dist/utils/connectedNativeClients.native.js +3 -2
  207. package/dist/utils/connectedNativeClients.native.js.map +1 -1
  208. package/dist/utils/createNativeDevEngine.mjs +992 -966
  209. package/dist/utils/createNativeDevEngine.mjs.map +1 -1
  210. package/dist/utils/createNativeDevEngine.native.js +1184 -1179
  211. package/dist/utils/createNativeDevEngine.native.js.map +1 -1
  212. package/dist/utils/dispose.mjs +4 -3
  213. package/dist/utils/dispose.mjs.map +1 -1
  214. package/dist/utils/dispose.native.js +6 -5
  215. package/dist/utils/dispose.native.js.map +1 -1
  216. package/dist/utils/environmentUtils.mjs +5 -4
  217. package/dist/utils/environmentUtils.mjs.map +1 -1
  218. package/dist/utils/environmentUtils.native.js +5 -4
  219. package/dist/utils/environmentUtils.native.js.map +1 -1
  220. package/dist/utils/execSync.mjs +7 -5
  221. package/dist/utils/execSync.mjs.map +1 -1
  222. package/dist/utils/execSync.native.js +8 -6
  223. package/dist/utils/execSync.native.js.map +1 -1
  224. package/dist/utils/expoRun.mjs +27 -35
  225. package/dist/utils/expoRun.mjs.map +1 -1
  226. package/dist/utils/expoRun.native.js +27 -35
  227. package/dist/utils/expoRun.native.js.map +1 -1
  228. package/dist/utils/filterViteServerResolvedUrls.mjs +24 -22
  229. package/dist/utils/filterViteServerResolvedUrls.mjs.map +1 -1
  230. package/dist/utils/filterViteServerResolvedUrls.native.js +61 -63
  231. package/dist/utils/filterViteServerResolvedUrls.native.js.map +1 -1
  232. package/dist/utils/getBoundPort.mjs +6 -5
  233. package/dist/utils/getBoundPort.mjs.map +1 -1
  234. package/dist/utils/getBoundPort.native.js +8 -12
  235. package/dist/utils/getBoundPort.native.js.map +1 -1
  236. package/dist/utils/getCacheDir.mjs +3 -1
  237. package/dist/utils/getCacheDir.mjs.map +1 -1
  238. package/dist/utils/getCacheDir.native.js +3 -1
  239. package/dist/utils/getCacheDir.native.js.map +1 -1
  240. package/dist/utils/getServerEntry.mjs +6 -4
  241. package/dist/utils/getServerEntry.mjs.map +1 -1
  242. package/dist/utils/getServerEntry.native.js +8 -11
  243. package/dist/utils/getServerEntry.native.js.map +1 -1
  244. package/dist/utils/getVitePath.mjs +42 -42
  245. package/dist/utils/getVitePath.mjs.map +1 -1
  246. package/dist/utils/getVitePath.native.js +43 -41
  247. package/dist/utils/getVitePath.native.js.map +1 -1
  248. package/dist/utils/globDir.mjs +7 -11
  249. package/dist/utils/globDir.mjs.map +1 -1
  250. package/dist/utils/globDir.native.js +10 -14
  251. package/dist/utils/globDir.native.js.map +1 -1
  252. package/dist/utils/isWithin.mjs +4 -2
  253. package/dist/utils/isWithin.mjs.map +1 -1
  254. package/dist/utils/isWithin.native.js +4 -2
  255. package/dist/utils/isWithin.native.js.map +1 -1
  256. package/dist/utils/patches.mjs +233 -255
  257. package/dist/utils/patches.mjs.map +1 -1
  258. package/dist/utils/patches.native.js +415 -460
  259. package/dist/utils/patches.native.js.map +1 -1
  260. package/dist/utils/printServerUrls.mjs +9 -7
  261. package/dist/utils/printServerUrls.mjs.map +1 -1
  262. package/dist/utils/printServerUrls.native.js +48 -51
  263. package/dist/utils/printServerUrls.native.js.map +1 -1
  264. package/dist/utils/removeUndefined.mjs +8 -7
  265. package/dist/utils/removeUndefined.mjs.map +1 -1
  266. package/dist/utils/removeUndefined.native.js +8 -7
  267. package/dist/utils/removeUndefined.native.js.map +1 -1
  268. package/dist/utils/scanDepsToOptimize.mjs +194 -161
  269. package/dist/utils/scanDepsToOptimize.mjs.map +1 -1
  270. package/dist/utils/scanDepsToOptimize.native.js +227 -197
  271. package/dist/utils/scanDepsToOptimize.native.js.map +1 -1
  272. package/dist/utils/state.mjs +18 -18
  273. package/dist/utils/state.mjs.map +1 -1
  274. package/dist/utils/state.native.js +18 -18
  275. package/dist/utils/state.native.js.map +1 -1
  276. package/dist/utils/symbolicateNativeStack.mjs +54 -54
  277. package/dist/utils/symbolicateNativeStack.mjs.map +1 -1
  278. package/dist/utils/symbolicateNativeStack.native.js +58 -58
  279. package/dist/utils/symbolicateNativeStack.native.js.map +1 -1
  280. package/dist/utils/uniq.mjs +2 -1
  281. package/dist/utils/uniq.mjs.map +1 -1
  282. package/dist/utils/uniq.native.js +2 -1
  283. package/dist/utils/uniq.native.js.map +1 -1
  284. package/dist/utils/utils.mjs +19 -19
  285. package/dist/utils/utils.mjs.map +1 -1
  286. package/dist/utils/utils.native.js +38 -40
  287. package/dist/utils/utils.native.js.map +1 -1
  288. package/dist/vendor/debugger-app/index.mjs +0 -2
  289. package/dist/vendor/debugger-app/index.native.js +0 -2
  290. package/dist/vendor/debugger-app/src/debuggerWorker.mjs +0 -2
  291. package/dist/vendor/debugger-app/src/debuggerWorker.native.js +0 -2
  292. package/dist/vendor/debugger-app/src/index.mjs +0 -2
  293. package/dist/vendor/debugger-app/src/index.native.js +0 -2
  294. package/dist/vxrn-vite-plugin.mjs +34 -33
  295. package/dist/vxrn-vite-plugin.mjs.map +1 -1
  296. package/dist/vxrn-vite-plugin.native.js +35 -34
  297. package/dist/vxrn-vite-plugin.native.js.map +1 -1
  298. package/expo-plugin.cjs +12 -6
  299. package/package.json +12 -13
  300. package/src/config/getBaseViteConfigOnly.ts +6 -0
  301. package/src/exports/prebuild.ts +40 -12
  302. package/src/patches/builtInDepPatches.ts +24 -48
  303. package/src/utils/createNativeDevEngine.test.ts +1 -1
  304. package/src/utils/createNativeDevEngine.ts +15 -9
  305. package/src/utils/scanDepsToOptimize.ts +0 -3
  306. package/types/config/getBaseViteConfigOnly.d.ts.map +1 -1
  307. package/types/config/getOptimizeDeps.d.ts.map +1 -1
  308. package/types/config/getOptionsFilled.d.ts +15 -15
  309. package/types/config/getOptionsFilled.d.ts.map +1 -1
  310. package/types/exports/build.d.ts +11 -11
  311. package/types/exports/build.d.ts.map +1 -1
  312. package/types/exports/clean.d.ts +1 -1
  313. package/types/exports/clean.d.ts.map +1 -1
  314. package/types/exports/createServer.d.ts.map +1 -1
  315. package/types/exports/dev.d.ts.map +1 -1
  316. package/types/exports/patch.d.ts.map +1 -1
  317. package/types/exports/prebuild.d.ts +3 -3
  318. package/types/exports/prebuild.d.ts.map +1 -1
  319. package/types/exports/prebuildWithoutExpo.d.ts +1 -1
  320. package/types/exports/prebuildWithoutExpo.d.ts.map +1 -1
  321. package/types/exports/runAndroid.d.ts.map +1 -1
  322. package/types/exports/runIos.d.ts.map +1 -1
  323. package/types/exports/serve.d.ts.map +1 -1
  324. package/types/patches/builtInDepPatches.d.ts.map +1 -1
  325. package/types/plugins/autoDepOptimizePlugin.d.ts.map +1 -1
  326. package/types/plugins/rollupRemoveUnusedImports.d.ts.map +1 -1
  327. package/types/runtime/hmr-client.d.ts.map +1 -1
  328. package/types/runtime/hmr-runtime.d.ts.map +1 -1
  329. package/types/runtime/hmr-types.d.ts.map +1 -1
  330. package/types/utils/createNativeDevEngine.d.ts +1 -1
  331. package/types/utils/createNativeDevEngine.d.ts.map +1 -1
  332. package/types/utils/execSync.d.ts.map +1 -1
  333. package/types/utils/getServerEntry.d.ts.map +1 -1
  334. package/types/utils/scanDepsToOptimize.d.ts.map +1 -1
  335. package/types/vxrn-vite-plugin.d.ts.map +1 -1
  336. package/dist/config/getOptimizeDeps.test.mjs +0 -20
  337. package/dist/config/getOptimizeDeps.test.mjs.map +0 -1
  338. package/dist/config/getOptimizeDeps.test.native.js +0 -39
  339. package/dist/config/getOptimizeDeps.test.native.js.map +0 -1
  340. package/dist/config/getServerOptionsFilled.test.mjs +0 -20
  341. package/dist/config/getServerOptionsFilled.test.mjs.map +0 -1
  342. package/dist/config/getServerOptionsFilled.test.native.js +0 -20
  343. package/dist/config/getServerOptionsFilled.test.native.js.map +0 -1
  344. package/dist/config/getViteServerConfig.test.mjs +0 -26
  345. package/dist/config/getViteServerConfig.test.mjs.map +0 -1
  346. package/dist/config/getViteServerConfig.test.native.js +0 -26
  347. package/dist/config/getViteServerConfig.test.native.js.map +0 -1
  348. package/dist/config/mergeUserConfig.test.mjs +0 -108
  349. package/dist/config/mergeUserConfig.test.mjs.map +0 -1
  350. package/dist/config/mergeUserConfig.test.native.js +0 -108
  351. package/dist/config/mergeUserConfig.test.native.js.map +0 -1
  352. package/dist/exports/clean.test.mjs +0 -81
  353. package/dist/exports/clean.test.mjs.map +0 -1
  354. package/dist/exports/clean.test.native.js +0 -88
  355. package/dist/exports/clean.test.native.js.map +0 -1
  356. package/dist/exports/loadEnv.test.mjs +0 -65
  357. package/dist/exports/loadEnv.test.mjs.map +0 -1
  358. package/dist/exports/loadEnv.test.native.js +0 -65
  359. package/dist/exports/loadEnv.test.native.js.map +0 -1
  360. package/dist/index.js.map +0 -1
  361. package/dist/index.mjs.map +0 -1
  362. package/dist/index.native.js.map +0 -1
  363. package/dist/plugins/autoDepOptimizePlugin.test.mjs +0 -31
  364. package/dist/plugins/autoDepOptimizePlugin.test.mjs.map +0 -1
  365. package/dist/plugins/autoDepOptimizePlugin.test.native.js +0 -39
  366. package/dist/plugins/autoDepOptimizePlugin.test.native.js.map +0 -1
  367. package/dist/plugins/resolveIdScan.test.mjs +0 -31
  368. package/dist/plugins/resolveIdScan.test.mjs.map +0 -1
  369. package/dist/plugins/resolveIdScan.test.native.js +0 -38
  370. package/dist/plugins/resolveIdScan.test.native.js.map +0 -1
  371. package/dist/plugins/rnCodegenPlugin.test.mjs +0 -239
  372. package/dist/plugins/rnCodegenPlugin.test.mjs.map +0 -1
  373. package/dist/plugins/rnCodegenPlugin.test.native.js +0 -242
  374. package/dist/plugins/rnCodegenPlugin.test.native.js.map +0 -1
  375. package/dist/plugins/serverExtensions.test.mjs +0 -106
  376. package/dist/plugins/serverExtensions.test.mjs.map +0 -1
  377. package/dist/plugins/serverExtensions.test.native.js +0 -117
  378. package/dist/plugins/serverExtensions.test.native.js.map +0 -1
  379. package/dist/runtime/hmr-types.mjs.map +0 -1
  380. package/dist/runtime/hmr-types.native.js.map +0 -1
  381. package/dist/serve/node.test.mjs +0 -60
  382. package/dist/serve/node.test.mjs.map +0 -1
  383. package/dist/serve/node.test.native.js +0 -72
  384. package/dist/serve/node.test.native.js.map +0 -1
  385. package/dist/types.mjs.map +0 -1
  386. package/dist/types.native.js.map +0 -1
  387. package/dist/utils/bindKeypressInput.test.mjs +0 -48
  388. package/dist/utils/bindKeypressInput.test.mjs.map +0 -1
  389. package/dist/utils/bindKeypressInput.test.native.js +0 -48
  390. package/dist/utils/bindKeypressInput.test.native.js.map +0 -1
  391. package/dist/utils/createNativeDevEngine.test.mjs +0 -1788
  392. package/dist/utils/createNativeDevEngine.test.mjs.map +0 -1
  393. package/dist/utils/createNativeDevEngine.test.native.js +0 -1942
  394. package/dist/utils/createNativeDevEngine.test.native.js.map +0 -1
  395. package/dist/utils/createNativeDevEngineFailure.test.mjs +0 -44
  396. package/dist/utils/createNativeDevEngineFailure.test.mjs.map +0 -1
  397. package/dist/utils/createNativeDevEngineFailure.test.native.js +0 -54
  398. package/dist/utils/createNativeDevEngineFailure.test.native.js.map +0 -1
  399. package/dist/utils/getBoundPort.test.mjs +0 -71
  400. package/dist/utils/getBoundPort.test.mjs.map +0 -1
  401. package/dist/utils/getBoundPort.test.native.js +0 -82
  402. package/dist/utils/getBoundPort.test.native.js.map +0 -1
  403. package/dist/utils/imageSizePatch.test.mjs +0 -29
  404. package/dist/utils/imageSizePatch.test.mjs.map +0 -1
  405. package/dist/utils/imageSizePatch.test.native.js +0 -30
  406. package/dist/utils/imageSizePatch.test.native.js.map +0 -1
  407. package/dist/utils/patches.test.mjs +0 -242
  408. package/dist/utils/patches.test.mjs.map +0 -1
  409. package/dist/utils/patches.test.native.js +0 -271
  410. package/dist/utils/patches.test.native.js.map +0 -1
  411. package/dist/utils/symbolicateNativeStack.test.mjs +0 -96
  412. package/dist/utils/symbolicateNativeStack.test.mjs.map +0 -1
  413. package/dist/utils/symbolicateNativeStack.test.native.js +0 -96
  414. package/dist/utils/symbolicateNativeStack.test.native.js.map +0 -1
  415. package/dist/vendor/debugger-app/index.mjs.map +0 -1
  416. package/dist/vendor/debugger-app/index.native.js.map +0 -1
  417. package/dist/vendor/debugger-app/src/debuggerWorker.mjs.map +0 -1
  418. package/dist/vendor/debugger-app/src/debuggerWorker.native.js.map +0 -1
  419. package/dist/vendor/debugger-app/src/index.mjs.map +0 -1
  420. package/dist/vendor/debugger-app/src/index.native.js.map +0 -1
  421. package/types/config/getOptimizeDeps.test.d.ts +0 -2
  422. package/types/config/getOptimizeDeps.test.d.ts.map +0 -1
  423. package/types/config/getServerOptionsFilled.test.d.ts +0 -2
  424. package/types/config/getServerOptionsFilled.test.d.ts.map +0 -1
  425. package/types/config/getViteServerConfig.test.d.ts +0 -2
  426. package/types/config/getViteServerConfig.test.d.ts.map +0 -1
  427. package/types/config/mergeUserConfig.test.d.ts +0 -2
  428. package/types/config/mergeUserConfig.test.d.ts.map +0 -1
  429. package/types/exports/clean.test.d.ts +0 -2
  430. package/types/exports/clean.test.d.ts.map +0 -1
  431. package/types/exports/loadEnv.test.d.ts +0 -2
  432. package/types/exports/loadEnv.test.d.ts.map +0 -1
  433. package/types/plugins/autoDepOptimizePlugin.test.d.ts +0 -2
  434. package/types/plugins/autoDepOptimizePlugin.test.d.ts.map +0 -1
  435. package/types/plugins/resolveIdScan.test.d.ts +0 -2
  436. package/types/plugins/resolveIdScan.test.d.ts.map +0 -1
  437. package/types/plugins/rnCodegenPlugin.test.d.ts +0 -2
  438. package/types/plugins/rnCodegenPlugin.test.d.ts.map +0 -1
  439. package/types/plugins/serverExtensions.test.d.ts +0 -2
  440. package/types/plugins/serverExtensions.test.d.ts.map +0 -1
  441. package/types/serve/node.test.d.ts +0 -2
  442. package/types/serve/node.test.d.ts.map +0 -1
  443. package/types/utils/bindKeypressInput.test.d.ts +0 -2
  444. package/types/utils/bindKeypressInput.test.d.ts.map +0 -1
  445. package/types/utils/createNativeDevEngine.test.d.ts +0 -2
  446. package/types/utils/createNativeDevEngine.test.d.ts.map +0 -1
  447. package/types/utils/createNativeDevEngineFailure.test.d.ts +0 -2
  448. package/types/utils/createNativeDevEngineFailure.test.d.ts.map +0 -1
  449. package/types/utils/getBoundPort.test.d.ts +0 -2
  450. package/types/utils/getBoundPort.test.d.ts.map +0 -1
  451. package/types/utils/imageSizePatch.test.d.ts +0 -2
  452. package/types/utils/imageSizePatch.test.d.ts.map +0 -1
  453. package/types/utils/patches.test.d.ts +0 -2
  454. package/types/utils/patches.test.d.ts.map +0 -1
  455. package/types/utils/symbolicateNativeStack.test.d.ts +0 -2
  456. package/types/utils/symbolicateNativeStack.test.d.ts.map +0 -1
@@ -1,39 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- describe("getScannedOptimizeDepsConfig", function () {
3
- it("filters excluded deps from scanned results", async function () {
4
- var mockResult = {
5
- prebundleDeps: ["react", "react-native-reanimated", "lodash"],
6
- hasReanimated: true,
7
- hasNativewind: false
8
- };
9
- var excludeArray = ["react-native-reanimated"];
10
- var excludeStrings = excludeArray.filter(function (e) {
11
- return typeof e === "string";
12
- });
13
- var excludeSet = new Set(excludeStrings);
14
- var filteredDeps = mockResult.prebundleDeps.filter(function (dep) {
15
- return !excludeSet.has(dep);
16
- });
17
- expect(filteredDeps).toContain("react");
18
- expect(filteredDeps).toContain("lodash");
19
- expect(filteredDeps).not.toContain("react-native-reanimated");
20
- });
21
- it("handles RegExp exclude patterns (ignores them for dep name filtering)", async function () {
22
- var mockResult = {
23
- prebundleDeps: ["react", "react-native-reanimated"],
24
- hasReanimated: true,
25
- hasNativewind: false
26
- };
27
- var excludeArray = [/some-pattern/, "react-native-reanimated"];
28
- var excludeStrings = excludeArray.filter(function (e) {
29
- return typeof e === "string";
30
- });
31
- var excludeSet = new Set(excludeStrings);
32
- var filteredDeps = mockResult.prebundleDeps.filter(function (dep) {
33
- return !excludeSet.has(dep);
34
- });
35
- expect(filteredDeps).toContain("react");
36
- expect(filteredDeps).not.toContain("react-native-reanimated");
37
- });
38
- });
39
- //# sourceMappingURL=autoDepOptimizePlugin.test.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["describe","expect","it","mockResult","prebundleDeps","hasReanimated","hasNativewind","excludeArray","excludeStrings","filter","e","excludeSet","Set","filteredDeps","dep","has","toContain","not"],"sources":["../../src/plugins/autoDepOptimizePlugin.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,MAAA,EAAQC,EAAA,QAAU;AAGrCF,QAAA,CAAS,gCAAgC,YAAM;EAC7CE,EAAA,CAAG,8CAA8C,kBAAY;IAE3D,IAAAC,UAAM;MACJC,aAAA,EAAe,CACf,SACA,yBAAe,EACjB,SAGA;MACAC,aAAM;MACNC,aAAM;IAEN;IAEA,IAAAC,YAAO,GAAY,CACnB,yBAAqB,CACrB;IACD,IAAAC,cAAA,GAAAD,YAAA,CAAAE,MAAA,WAAAC,CAAA;MAEE,cAAAA,CAAA;IACD;IAAmB,IACjBC,UAAA,GAAe,IAACC,GAAA,CAAAJ,cAAS;IAAyB,IAClDK,YAAA,GAAeV,UAAA,CAAAC,aAAA,CAAAK,MAAA,WAAAK,GAAA;MACf,QAAAH,UAAe,CAAAI,GAAA,CAAAD,GAAA;IACjB;IAGAb,MAAM,CAAAY,YAAA,EAAoCG,SAAC,QAAgB;IAC3Df,MAAM,CAAAY,YAAA,EAAAG,SAAiB,SAAa;IACpCf,MAAM,CAAAY,YAAa,EAAAI,GAAI,CAAAD,SAAI,0BAAc;EAEzC;EAEAd,EAAA,wEAAsC;IACtC,IAAAC,UAAO;MACRC,aAAA,GACF,S","ignoreList":[]}
@@ -1,31 +0,0 @@
1
- import { describe, expect, it, vi } from "vitest";
2
- describe("resolveId hooks should skip during dep optimization scan", () => {
3
- describe("platform-specific-resolve", () => {
4
- it("should return undefined when options.scan is true", async () => {
5
- const {
6
- getBaseVitePlugins
7
- } = await import("../config/getBaseVitePlugins.mjs");
8
- const plugins = getBaseVitePlugins();
9
- const plugin = plugins.find(p => typeof p === "object" && p !== null && "name" in p && p.name === "platform-specific-resolve");
10
- expect(plugin).toBeDefined();
11
- if (!plugin || typeof plugin !== "object" || !("resolveId" in plugin)) {
12
- throw new Error("Plugin not found or missing resolveId");
13
- }
14
- const resolveId = plugin.resolveId.handler;
15
- const mockContext = {
16
- resolve: vi.fn().mockResolvedValue({
17
- id: "/some/path/file.ts"
18
- }),
19
- environment: {
20
- name: "client"
21
- }
22
- };
23
- const result = await resolveId.call(mockContext, "some-module", "/importer.ts", {
24
- scan: true
25
- });
26
- expect(result).toBeUndefined();
27
- expect(mockContext.resolve).not.toHaveBeenCalled();
28
- });
29
- });
30
- });
31
- //# sourceMappingURL=resolveIdScan.test.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["describe","expect","it","vi","getBaseVitePlugins","plugins","plugin","find","p","name","toBeDefined","Error","resolveId","handler","mockContext","resolve","fn","mockResolvedValue","id","environment","result","call","scan","toBeUndefined","not","toHaveBeenCalled"],"sources":["../../src/plugins/resolveIdScan.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAazCH,QAAA,CAAS,4DAA4D,MAAM;EACzEA,QAAA,CAAS,6BAA6B,MAAM;IAC1CE,EAAA,CAAG,qDAAqD,YAAY;MAElE,MAAM;QAAEE;MAAmB,IAAI,MAAM,OAAO,kCAA8B;MAC1E,MAAMC,OAAA,GAAUD,kBAAA,CAAmB;MAGnC,MAAME,MAAA,GAASD,OAAA,CAAQE,IAAA,CACpBC,CAAA,IACC,OAAOA,CAAA,KAAM,YACbA,CAAA,KAAM,QACN,UAAUA,CAAA,IACVA,CAAA,CAAEC,IAAA,KAAS,2BACf;MAEAR,MAAA,CAAOK,MAAM,EAAEI,WAAA,CAAY;MAC3B,IAAI,CAACJ,MAAA,IAAU,OAAOA,MAAA,KAAW,YAAY,EAAE,eAAeA,MAAA,GAAS;QACrE,MAAM,IAAIK,KAAA,CAAM,uCAAuC;MACzD;MAEA,MAAMC,SAAA,GAAaN,MAAA,CAAOM,SAAA,CAAkBC,OAAA;MAG5C,MAAMC,WAAA,GAAc;QAClBC,OAAA,EAASZ,EAAA,CAAGa,EAAA,CAAG,EAAEC,iBAAA,CAAkB;UAAEC,EAAA,EAAI;QAAqB,CAAC;QAC/DC,WAAA,EAAa;UAAEV,IAAA,EAAM;QAAS;MAChC;MAGA,MAAMW,MAAA,GAAS,MAAMR,SAAA,CAAUS,IAAA,CAAKP,WAAA,EAAa,eAAe,gBAAgB;QAC9EQ,IAAA,EAAM;MACR,CAAC;MAEDrB,MAAA,CAAOmB,MAAM,EAAEG,aAAA,CAAc;MAE7BtB,MAAA,CAAOa,WAAA,CAAYC,OAAO,EAAES,GAAA,CAAIC,gBAAA,CAAiB;IACnD,CAAC;EACH,CAAC;AACH,CAAC","ignoreList":[]}
@@ -1,38 +0,0 @@
1
- import { describe, expect, it, vi } from "vitest";
2
- function _type_of(obj) {
3
- "@swc/helpers - typeof";
4
-
5
- return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
6
- }
7
- describe("resolveId hooks should skip during dep optimization scan", function () {
8
- describe("platform-specific-resolve", function () {
9
- it("should return undefined when options.scan is true", async function () {
10
- var {
11
- getBaseVitePlugins
12
- } = await import("../config/getBaseVitePlugins.native.js");
13
- var plugins = getBaseVitePlugins();
14
- var plugin = plugins.find(function (p) {
15
- return (typeof p === "undefined" ? "undefined" : _type_of(p)) === "object" && p !== null && "name" in p && p.name === "platform-specific-resolve";
16
- });
17
- expect(plugin).toBeDefined();
18
- if (!plugin || (typeof plugin === "undefined" ? "undefined" : _type_of(plugin)) !== "object" || !("resolveId" in plugin)) {
19
- throw new Error("Plugin not found or missing resolveId");
20
- }
21
- var resolveId = plugin.resolveId.handler;
22
- var mockContext = {
23
- resolve: vi.fn().mockResolvedValue({
24
- id: "/some/path/file.ts"
25
- }),
26
- environment: {
27
- name: "client"
28
- }
29
- };
30
- var result = await resolveId.call(mockContext, "some-module", "/importer.ts", {
31
- scan: true
32
- });
33
- expect(result).toBeUndefined();
34
- expect(mockContext.resolve).not.toHaveBeenCalled();
35
- });
36
- });
37
- });
38
- //# sourceMappingURL=resolveIdScan.test.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["describe","expect","it","vi","_type_of","obj","Symbol","constructor","getBaseVitePlugins","plugins","plugin","find","p","name","toBeDefined","Error","resolveId","handler","mockContext","resolve","fn","mockResolvedValue","id","environment"],"sources":["../../src/plugins/resolveIdScan.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,MAAA,EAAQC,EAAA,EAAIC,EAAA,QAAU;AAazC,SAASC,SAAAC,GAAA;EACP,uBAAS;;EACP,OAAGA,GAAA,WAAAC,MAAA,oBAAAD,GAAA,CAAAE,WAAqD,KAAAD,MAAY,qBAAAD,GAAA;AAElE;AACAL,QAAA,2DAAmC;EAGnCA,QAAA,4BAAuB;IAAAE,EAAA,oDAInB,oBACE;MACN;QAAAM;MAAA;MAEA,IAAAC,OAAO,GAAMD,kBAAc;MAC3B,IAAIE,MAAC,GAAAD,OAAU,CAAAE,IAAO,WAAWC,CAAA;QAC/B,OAAM,QAAIA,CAAM,iCAAAR,QAAuC,CAAAQ,CAAA,mBAAAA,CAAA,uBAAAA,CAAA,IAAAA,CAAA,CAAAC,IAAA;MACzD;MAEAZ,MAAM,CAAAS,MAAA,EAAAI,WAAoB;MAG1B,KAAAJ,MAAM,YAAcA,MAAA,iCAAAN,QAAA,CAAAM,MAAA,oCAAAA,MAAA;QAClB,UAASK,KAAM,wCAA0B;MAAsB;MAEjE,IAAAC,SAAA,GAAAN,MAAA,CAAAM,SAAA,CAAAC,OAAA;MAGA,IAAAC,WAAe;QACbC,OAAM,EAAAhB,EAAA,CAAAiB,EAAA,GAAAC,iBAAA;UACPC,EAAA;QAED;QAEAC,WAAO;UACRV,IAAA;QACF;MACF","ignoreList":[]}
@@ -1,239 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { rnCodegenPlugin, transformReactNativeCodegen } from "./rnCodegenPlugin.mjs";
3
- describe("rnCodegenPlugin", () => {
4
- it("generates view-config replacement for codegenNativeComponent default export", () => {
5
- const inputCode = `
6
- import type { ViewProps, HostComponent } from 'react-native';
7
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
8
-
9
- export interface NativeProps extends ViewProps {
10
- color?: string;
11
- }
12
-
13
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
14
- `;
15
- const result = transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
16
- expect(result).toBeDefined();
17
- expect(result?.code).not.toContain("codegenNativeComponent<NativeProps>");
18
- expect(result?.code).toContain("export default NativeComponentRegistry.get(nativeComponentName, () => __INTERNAL_VIEW_CONFIG);");
19
- expect(result?.code).toContain('uiViewClassName: "MyCustomView"');
20
- expect(result?.code).toContain("export const __INTERNAL_VIEW_CONFIG");
21
- expect(result?.map).toBeDefined();
22
- });
23
- it("leaves already-generated output alone on a second pass", () => {
24
- const inputCode = `
25
- import type { ViewProps, HostComponent } from 'react-native';
26
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
27
- import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
28
-
29
- export interface NativeProps extends ViewProps {
30
- color?: string;
31
- }
32
-
33
- interface NativeCommands {
34
- reload: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
35
- }
36
-
37
- export const Commands = codegenNativeCommands<NativeCommands>({
38
- supportedCommands: ['reload'],
39
- });
40
-
41
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
42
- `;
43
- const id = "/workspace/src/MyCustomViewNativeComponent.ts";
44
- const first = transformReactNativeCodegen(inputCode, id);
45
- expect(first?.code).toContain("export const Commands");
46
- expect(() => transformReactNativeCodegen(first.code, id)).not.toThrow();
47
- expect(transformReactNativeCodegen(first.code, id)).toBeUndefined();
48
- });
49
- it("removes export const Commands = codegenNativeCommands(...) and generates runtime commands", () => {
50
- const inputCode = `
51
- import * as React from 'react';
52
- import type { ViewProps, HostComponent } from 'react-native';
53
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
54
- import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
55
-
56
- export interface NativeProps extends ViewProps {
57
- color?: string;
58
- }
59
-
60
- type ComponentType = HostComponent<NativeProps>;
61
-
62
- interface NativeCommands {
63
- flash: (viewRef: React.ElementRef<ComponentType>, enabled: boolean) => void;
64
- }
65
-
66
- export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
67
- supportedCommands: ['flash'],
68
- });
69
-
70
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
71
- `;
72
- const result = transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
73
- expect(result).toBeDefined();
74
- expect(result?.code).not.toContain("codegenNativeCommands<NativeCommands>");
75
- expect(result?.code).toContain("export const Commands = {");
76
- expect(result?.code).toContain('dispatchCommand(ref, "flash", [enabled]);');
77
- expect(result?.code).toContain("export default NativeComponentRegistry.get(nativeComponentName, () => __INTERNAL_VIEW_CONFIG);");
78
- });
79
- it("throws an error if native commands are exported with a name other than Commands", () => {
80
- const inputCode = `
81
- import * as React from 'react';
82
- import type { ViewProps, HostComponent } from 'react-native';
83
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
84
- import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
85
-
86
- export interface NativeProps extends ViewProps {
87
- color?: string;
88
- }
89
-
90
- type ComponentType = HostComponent<NativeProps>;
91
-
92
- interface NativeCommands {
93
- flash: (viewRef: React.ElementRef<ComponentType>, enabled: boolean) => void;
94
- }
95
-
96
- export const OtherCommands: NativeCommands = codegenNativeCommands<NativeCommands>({
97
- supportedCommands: ['flash'],
98
- });
99
-
100
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
101
- `;
102
- expect(() => {
103
- transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
104
- }).toThrow("Native commands must be exported with the name 'Commands'");
105
- });
106
- it("throws an error if 'Commands' is exported without codegenNativeCommands", () => {
107
- const inputCode = `
108
- import type { ViewProps, HostComponent } from 'react-native';
109
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
110
-
111
- export interface NativeProps extends ViewProps {
112
- color?: string;
113
- }
114
-
115
- export const Commands = 123;
116
-
117
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
118
- `;
119
- expect(() => {
120
- transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
121
- }).toThrow("'Commands' is a reserved export and may only be used to export the result of codegenNativeCommands.");
122
- });
123
- it("throws an error if 'Commands' is exported via export specifier without codegenNativeCommands", () => {
124
- const inputCode = `
125
- import type { ViewProps, HostComponent } from 'react-native';
126
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
127
-
128
- export interface NativeProps extends ViewProps {
129
- color?: string;
130
- }
131
-
132
- const Commands = 123;
133
- export { Commands };
134
-
135
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
136
- `;
137
- expect(() => {
138
- transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
139
- }).toThrow("'Commands' is a reserved export and may only be used to export the result of codegenNativeCommands.");
140
- });
141
- it("ignores files that do not match the codegen pattern", () => {
142
- const inputCode = `
143
- export default function Button() {
144
- return null;
145
- }
146
- `;
147
- const result = transformReactNativeCodegen(inputCode, "/workspace/src/Button.tsx");
148
- expect(result).toBeUndefined();
149
- });
150
- it("ignores matching files without codegenNativeComponent", () => {
151
- const inputCode = `
152
- export default function MyNativeComponent() {
153
- return null;
154
- }
155
- `;
156
- const result = transformReactNativeCodegen(inputCode, "/workspace/src/MyNativeComponent.tsx");
157
- expect(result).toBeUndefined();
158
- });
159
- it("supports files inside specs/ directory", () => {
160
- const inputCode = `
161
- import type { ViewProps, HostComponent } from 'react-native';
162
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
163
-
164
- export interface NativeProps extends ViewProps {
165
- color?: string;
166
- }
167
-
168
- export default codegenNativeComponent<NativeProps>('SpecView') as HostComponent<NativeProps>;
169
- `;
170
- const result = transformReactNativeCodegen(inputCode, "/workspace/specs/SpecView.ts");
171
- expect(result).toBeDefined();
172
- expect(result?.code).toContain('uiViewClassName: "SpecView"');
173
- });
174
- it("works through the Vite plugin interface", () => {
175
- const plugin = rnCodegenPlugin();
176
- expect(plugin.name).toBe("vxrn:rn-codegen");
177
- expect(plugin.enforce).toBe("pre");
178
- const inputCode = `
179
- import type { ViewProps, HostComponent } from 'react-native';
180
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
181
-
182
- export interface NativeProps extends ViewProps {
183
- color?: string;
184
- }
185
-
186
- export default codegenNativeComponent<NativeProps>('PluginView') as HostComponent<NativeProps>;
187
- `;
188
- const transformFn = typeof plugin.transform === "function" ? plugin.transform : plugin.transform?.handler;
189
- const result = transformFn.call({}, inputCode, "/workspace/src/PluginViewNativeComponent.ts");
190
- expect(result).toBeDefined();
191
- expect(result?.code).toContain('uiViewClassName: "PluginView"');
192
- expect(result?.map).toBeDefined();
193
- });
194
- it("removes export const Commands with sequence expression (e.g. coverage instrumentation)", () => {
195
- const inputCode = `
196
- import type { ViewProps, HostComponent } from 'react-native';
197
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
198
- import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
199
-
200
- export interface NativeProps extends ViewProps {
201
- color?: string;
202
- }
203
-
204
- export const Commands = (0, codegenNativeCommands({
205
- supportedCommands: [],
206
- }));
207
-
208
- export default codegenNativeComponent<NativeProps>('SequenceView') as HostComponent<NativeProps>;
209
- `;
210
- const result = transformReactNativeCodegen(inputCode, "/workspace/src/SequenceViewNativeComponent.ts");
211
- expect(result).toBeDefined();
212
- expect(result?.code).not.toContain("export const Commands");
213
- expect(result?.code).toContain('uiViewClassName: "SequenceView"');
214
- expect(result?.code).toContain("export default NativeComponentRegistry.get");
215
- });
216
- it("transforms Flow component specs correctly", () => {
217
- const flowCode = `/**
218
- * @flow strict-local
219
- * @format
220
- */
221
-
222
- import type {ViewProps} from 'react-native/Libraries/Components/View/ViewPropTypes';
223
- import type {HostComponent} from 'react-native/Libraries/Renderer/shims/ReactNativeTypes';
224
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
225
-
226
- type FlowViewProps = $ReadOnly<{
227
- ...ViewProps,
228
- title?: string,
229
- }>;
230
-
231
- export default codegenNativeComponent<FlowViewProps>('FlowView') as HostComponent<FlowViewProps>;
232
- `;
233
- const result = transformReactNativeCodegen(flowCode, "/workspace/src/FlowViewNativeComponent.js");
234
- expect(result).toBeDefined();
235
- expect(result?.code).toContain('uiViewClassName: "FlowView"');
236
- expect(result?.code).toContain("export default NativeComponentRegistry.get");
237
- });
238
- });
239
- //# sourceMappingURL=rnCodegenPlugin.test.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["describe","expect","it","rnCodegenPlugin","transformReactNativeCodegen","inputCode","result","toBeDefined","code","not","toContain","map","id","first","toThrow","toBeUndefined","plugin","name","toBe","enforce","transformFn","transform","handler","call","flowCode"],"sources":["../../src/plugins/rnCodegenPlugin.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,MAAA,EAAQC,EAAA,QAAU;AACrC,SAASC,eAAA,EAAiBC,2BAAA,QAAmC;AAE7DJ,QAAA,CAAS,mBAAmB,MAAM;EAChCE,EAAA,CAAG,+EAA+E,MAAM;IACtF,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAWlB,MAAMC,MAAA,GAASF,2BAAA,CACbC,SAAA,EACA,+CACF;IAEAJ,MAAA,CAAOK,MAAM,EAAEC,WAAA,CAAY;IAC3BN,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEC,GAAA,CAAIC,SAAA,CAAU,qCAAqC;IACxET,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CACnB,gGACF;IACAT,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,iCAAiC;IAChET,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,qCAAqC;IACpET,MAAA,CAAOK,MAAA,EAAQK,GAAG,EAAEJ,WAAA,CAAY;EAClC,CAAC;EAEDL,EAAA,CAAG,0DAA0D,MAAM;IAIjE,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAoBlB,MAAMO,EAAA,GAAK;IACX,MAAMC,KAAA,GAAQT,2BAAA,CAA4BC,SAAA,EAAWO,EAAE;IACvDX,MAAA,CAAOY,KAAA,EAAOL,IAAI,EAAEE,SAAA,CAAU,uBAAuB;IAErDT,MAAA,CAAO,MAAMG,2BAAA,CAA4BS,KAAA,CAAOL,IAAA,EAAMI,EAAE,CAAC,EAAEH,GAAA,CAAIK,OAAA,CAAQ;IACvEb,MAAA,CAAOG,2BAAA,CAA4BS,KAAA,CAAOL,IAAA,EAAMI,EAAE,CAAC,EAAEG,aAAA,CAAc;EACrE,CAAC;EAEDb,EAAA,CAAG,6FAA6F,MAAM;IACpG,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAuBlB,MAAMC,MAAA,GAASF,2BAAA,CACbC,SAAA,EACA,+CACF;IAEAJ,MAAA,CAAOK,MAAM,EAAEC,WAAA,CAAY;IAE3BN,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEC,GAAA,CAAIC,SAAA,CAAU,uCAAuC;IAE1ET,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,2BAA2B;IAC1DT,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,2CAA2C;IAC1ET,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CACnB,gGACF;EACF,CAAC;EAEDR,EAAA,CAAG,mFAAmF,MAAM;IAC1F,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAuBlBJ,MAAA,CAAO,MAAM;MACXG,2BAAA,CACEC,SAAA,EACA,+CACF;IACF,CAAC,EAAES,OAAA,CAAQ,2DAA2D;EACxE,CAAC;EAEDZ,EAAA,CAAG,2EAA2E,MAAM;IAClF,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAalBJ,MAAA,CAAO,MAAM;MACXG,2BAAA,CACEC,SAAA,EACA,+CACF;IACF,CAAC,EAAES,OAAA,CACD,qGACF;EACF,CAAC;EAEDZ,EAAA,CAAG,gGAAgG,MAAM;IACvG,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAclBJ,MAAA,CAAO,MAAM;MACXG,2BAAA,CACEC,SAAA,EACA,+CACF;IACF,CAAC,EAAES,OAAA,CACD,qGACF;EACF,CAAC;EAEDZ,EAAA,CAAG,uDAAuD,MAAM;IAC9D,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;IAKlB,MAAMC,MAAA,GAASF,2BAAA,CAA4BC,SAAA,EAAW,2BAA2B;IACjFJ,MAAA,CAAOK,MAAM,EAAES,aAAA,CAAc;EAC/B,CAAC;EAEDb,EAAA,CAAG,yDAAyD,MAAM;IAChE,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;IAKlB,MAAMC,MAAA,GAASF,2BAAA,CACbC,SAAA,EACA,sCACF;IACAJ,MAAA,CAAOK,MAAM,EAAES,aAAA,CAAc;EAC/B,CAAC;EAEDb,EAAA,CAAG,0CAA0C,MAAM;IACjD,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAWlB,MAAMC,MAAA,GAASF,2BAAA,CAA4BC,SAAA,EAAW,8BAA8B;IAEpFJ,MAAA,CAAOK,MAAM,EAAEC,WAAA,CAAY;IAC3BN,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,6BAA6B;EAC9D,CAAC;EAEDR,EAAA,CAAG,2CAA2C,MAAM;IAClD,MAAMc,MAAA,GAASb,eAAA,CAAgB;IAC/BF,MAAA,CAAOe,MAAA,CAAOC,IAAI,EAAEC,IAAA,CAAK,iBAAiB;IAC1CjB,MAAA,CAAOe,MAAA,CAAOG,OAAO,EAAED,IAAA,CAAK,KAAK;IAEjC,MAAMb,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAWlB,MAAMe,WAAA,GACJ,OAAOJ,MAAA,CAAOK,SAAA,KAAc,aACxBL,MAAA,CAAOK,SAAA,GACNL,MAAA,CAAOK,SAAA,EAAmBC,OAAA;IAEjC,MAAMhB,MAAA,GAASc,WAAA,CAAYG,IAAA,CACzB,CAAC,GACDlB,SAAA,EACA,6CACF;IAEAJ,MAAA,CAAOK,MAAM,EAAEC,WAAA,CAAY;IAC3BN,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,+BAA+B;IAC9DT,MAAA,CAAOK,MAAA,EAAQK,GAAG,EAAEJ,WAAA,CAAY;EAClC,CAAC;EAEDL,EAAA,CAAG,0FAA0F,MAAM;IACjG,MAAMG,SAAA,GAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAgBlB,MAAMC,MAAA,GAASF,2BAAA,CACbC,SAAA,EACA,+CACF;IAEAJ,MAAA,CAAOK,MAAM,EAAEC,WAAA,CAAY;IAC3BN,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEC,GAAA,CAAIC,SAAA,CAAU,uBAAuB;IAC1DT,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,iCAAiC;IAChET,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,4CAA4C;EAC7E,CAAC;EAEDR,EAAA,CAAG,6CAA6C,MAAM;IACpD,MAAMsB,QAAA,GAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAiBjB,MAAMlB,MAAA,GAASF,2BAAA,CACboB,QAAA,EACA,2CACF;IAEAvB,MAAA,CAAOK,MAAM,EAAEC,WAAA,CAAY;IAC3BN,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,6BAA6B;IAC5DT,MAAA,CAAOK,MAAA,EAAQE,IAAI,EAAEE,SAAA,CAAU,4CAA4C;EAC7E,CAAC;AACH,CAAC","ignoreList":[]}
@@ -1,242 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { rnCodegenPlugin, transformReactNativeCodegen } from "./rnCodegenPlugin.native.js";
3
- describe("rnCodegenPlugin", function () {
4
- it("generates view-config replacement for codegenNativeComponent default export", function () {
5
- var inputCode = `
6
- import type { ViewProps, HostComponent } from 'react-native';
7
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
8
-
9
- export interface NativeProps extends ViewProps {
10
- color?: string;
11
- }
12
-
13
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
14
- `;
15
- var result = transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
16
- expect(result).toBeDefined();
17
- expect(result === null || result === void 0 ? void 0 : result.code).not.toContain("codegenNativeComponent<NativeProps>");
18
- expect(result === null || result === void 0 ? void 0 : result.code).toContain("export default NativeComponentRegistry.get(nativeComponentName, () => __INTERNAL_VIEW_CONFIG);");
19
- expect(result === null || result === void 0 ? void 0 : result.code).toContain('uiViewClassName: "MyCustomView"');
20
- expect(result === null || result === void 0 ? void 0 : result.code).toContain("export const __INTERNAL_VIEW_CONFIG");
21
- expect(result === null || result === void 0 ? void 0 : result.map).toBeDefined();
22
- });
23
- it("leaves already-generated output alone on a second pass", function () {
24
- var inputCode = `
25
- import type { ViewProps, HostComponent } from 'react-native';
26
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
27
- import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
28
-
29
- export interface NativeProps extends ViewProps {
30
- color?: string;
31
- }
32
-
33
- interface NativeCommands {
34
- reload: (viewRef: React.ElementRef<HostComponent<NativeProps>>) => void;
35
- }
36
-
37
- export const Commands = codegenNativeCommands<NativeCommands>({
38
- supportedCommands: ['reload'],
39
- });
40
-
41
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
42
- `;
43
- var id = "/workspace/src/MyCustomViewNativeComponent.ts";
44
- var first = transformReactNativeCodegen(inputCode, id);
45
- expect(first === null || first === void 0 ? void 0 : first.code).toContain("export const Commands");
46
- expect(function () {
47
- return transformReactNativeCodegen(first.code, id);
48
- }).not.toThrow();
49
- expect(transformReactNativeCodegen(first.code, id)).toBeUndefined();
50
- });
51
- it("removes export const Commands = codegenNativeCommands(...) and generates runtime commands", function () {
52
- var inputCode = `
53
- import * as React from 'react';
54
- import type { ViewProps, HostComponent } from 'react-native';
55
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
56
- import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
57
-
58
- export interface NativeProps extends ViewProps {
59
- color?: string;
60
- }
61
-
62
- type ComponentType = HostComponent<NativeProps>;
63
-
64
- interface NativeCommands {
65
- flash: (viewRef: React.ElementRef<ComponentType>, enabled: boolean) => void;
66
- }
67
-
68
- export const Commands: NativeCommands = codegenNativeCommands<NativeCommands>({
69
- supportedCommands: ['flash'],
70
- });
71
-
72
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
73
- `;
74
- var result = transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
75
- expect(result).toBeDefined();
76
- expect(result === null || result === void 0 ? void 0 : result.code).not.toContain("codegenNativeCommands<NativeCommands>");
77
- expect(result === null || result === void 0 ? void 0 : result.code).toContain("export const Commands = {");
78
- expect(result === null || result === void 0 ? void 0 : result.code).toContain('dispatchCommand(ref, "flash", [enabled]);');
79
- expect(result === null || result === void 0 ? void 0 : result.code).toContain("export default NativeComponentRegistry.get(nativeComponentName, () => __INTERNAL_VIEW_CONFIG);");
80
- });
81
- it("throws an error if native commands are exported with a name other than Commands", function () {
82
- var inputCode = `
83
- import * as React from 'react';
84
- import type { ViewProps, HostComponent } from 'react-native';
85
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
86
- import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
87
-
88
- export interface NativeProps extends ViewProps {
89
- color?: string;
90
- }
91
-
92
- type ComponentType = HostComponent<NativeProps>;
93
-
94
- interface NativeCommands {
95
- flash: (viewRef: React.ElementRef<ComponentType>, enabled: boolean) => void;
96
- }
97
-
98
- export const OtherCommands: NativeCommands = codegenNativeCommands<NativeCommands>({
99
- supportedCommands: ['flash'],
100
- });
101
-
102
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
103
- `;
104
- expect(function () {
105
- transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
106
- }).toThrow("Native commands must be exported with the name 'Commands'");
107
- });
108
- it("throws an error if 'Commands' is exported without codegenNativeCommands", function () {
109
- var inputCode = `
110
- import type { ViewProps, HostComponent } from 'react-native';
111
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
112
-
113
- export interface NativeProps extends ViewProps {
114
- color?: string;
115
- }
116
-
117
- export const Commands = 123;
118
-
119
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
120
- `;
121
- expect(function () {
122
- transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
123
- }).toThrow("'Commands' is a reserved export and may only be used to export the result of codegenNativeCommands.");
124
- });
125
- it("throws an error if 'Commands' is exported via export specifier without codegenNativeCommands", function () {
126
- var inputCode = `
127
- import type { ViewProps, HostComponent } from 'react-native';
128
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
129
-
130
- export interface NativeProps extends ViewProps {
131
- color?: string;
132
- }
133
-
134
- const Commands = 123;
135
- export { Commands };
136
-
137
- export default codegenNativeComponent<NativeProps>('MyCustomView') as HostComponent<NativeProps>;
138
- `;
139
- expect(function () {
140
- transformReactNativeCodegen(inputCode, "/workspace/src/MyCustomViewNativeComponent.ts");
141
- }).toThrow("'Commands' is a reserved export and may only be used to export the result of codegenNativeCommands.");
142
- });
143
- it("ignores files that do not match the codegen pattern", function () {
144
- var inputCode = `
145
- export default function Button() {
146
- return null;
147
- }
148
- `;
149
- var result = transformReactNativeCodegen(inputCode, "/workspace/src/Button.tsx");
150
- expect(result).toBeUndefined();
151
- });
152
- it("ignores matching files without codegenNativeComponent", function () {
153
- var inputCode = `
154
- export default function MyNativeComponent() {
155
- return null;
156
- }
157
- `;
158
- var result = transformReactNativeCodegen(inputCode, "/workspace/src/MyNativeComponent.tsx");
159
- expect(result).toBeUndefined();
160
- });
161
- it("supports files inside specs/ directory", function () {
162
- var inputCode = `
163
- import type { ViewProps, HostComponent } from 'react-native';
164
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
165
-
166
- export interface NativeProps extends ViewProps {
167
- color?: string;
168
- }
169
-
170
- export default codegenNativeComponent<NativeProps>('SpecView') as HostComponent<NativeProps>;
171
- `;
172
- var result = transformReactNativeCodegen(inputCode, "/workspace/specs/SpecView.ts");
173
- expect(result).toBeDefined();
174
- expect(result === null || result === void 0 ? void 0 : result.code).toContain('uiViewClassName: "SpecView"');
175
- });
176
- it("works through the Vite plugin interface", function () {
177
- var _plugin_transform;
178
- var plugin = rnCodegenPlugin();
179
- expect(plugin.name).toBe("vxrn:rn-codegen");
180
- expect(plugin.enforce).toBe("pre");
181
- var inputCode = `
182
- import type { ViewProps, HostComponent } from 'react-native';
183
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
184
-
185
- export interface NativeProps extends ViewProps {
186
- color?: string;
187
- }
188
-
189
- export default codegenNativeComponent<NativeProps>('PluginView') as HostComponent<NativeProps>;
190
- `;
191
- var transformFn = typeof plugin.transform === "function" ? plugin.transform : (_plugin_transform = plugin.transform) === null || _plugin_transform === void 0 ? void 0 : _plugin_transform.handler;
192
- var result = transformFn.call({}, inputCode, "/workspace/src/PluginViewNativeComponent.ts");
193
- expect(result).toBeDefined();
194
- expect(result === null || result === void 0 ? void 0 : result.code).toContain('uiViewClassName: "PluginView"');
195
- expect(result === null || result === void 0 ? void 0 : result.map).toBeDefined();
196
- });
197
- it("removes export const Commands with sequence expression (e.g. coverage instrumentation)", function () {
198
- var inputCode = `
199
- import type { ViewProps, HostComponent } from 'react-native';
200
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
201
- import codegenNativeCommands from 'react-native/Libraries/Utilities/codegenNativeCommands';
202
-
203
- export interface NativeProps extends ViewProps {
204
- color?: string;
205
- }
206
-
207
- export const Commands = (0, codegenNativeCommands({
208
- supportedCommands: [],
209
- }));
210
-
211
- export default codegenNativeComponent<NativeProps>('SequenceView') as HostComponent<NativeProps>;
212
- `;
213
- var result = transformReactNativeCodegen(inputCode, "/workspace/src/SequenceViewNativeComponent.ts");
214
- expect(result).toBeDefined();
215
- expect(result === null || result === void 0 ? void 0 : result.code).not.toContain("export const Commands");
216
- expect(result === null || result === void 0 ? void 0 : result.code).toContain('uiViewClassName: "SequenceView"');
217
- expect(result === null || result === void 0 ? void 0 : result.code).toContain("export default NativeComponentRegistry.get");
218
- });
219
- it("transforms Flow component specs correctly", function () {
220
- var flowCode = `/**
221
- * @flow strict-local
222
- * @format
223
- */
224
-
225
- import type {ViewProps} from 'react-native/Libraries/Components/View/ViewPropTypes';
226
- import type {HostComponent} from 'react-native/Libraries/Renderer/shims/ReactNativeTypes';
227
- import codegenNativeComponent from 'react-native/Libraries/Utilities/codegenNativeComponent';
228
-
229
- type FlowViewProps = $ReadOnly<{
230
- ...ViewProps,
231
- title?: string,
232
- }>;
233
-
234
- export default codegenNativeComponent<FlowViewProps>('FlowView') as HostComponent<FlowViewProps>;
235
- `;
236
- var result = transformReactNativeCodegen(flowCode, "/workspace/src/FlowViewNativeComponent.js");
237
- expect(result).toBeDefined();
238
- expect(result === null || result === void 0 ? void 0 : result.code).toContain('uiViewClassName: "FlowView"');
239
- expect(result === null || result === void 0 ? void 0 : result.code).toContain("export default NativeComponentRegistry.get");
240
- });
241
- });
242
- //# sourceMappingURL=rnCodegenPlugin.test.native.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["describe","expect","it","rnCodegenPlugin","transformReactNativeCodegen","inputCode","result","toBeDefined","code","not","toContain","map","id","first","toThrow","toBeUndefined","_plugin_transform","plugin","name","toBe","enforce","transformFn","transform","handler","call","flowCode"],"sources":["../../src/plugins/rnCodegenPlugin.test.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,EAAUC,MAAA,EAAQC,EAAA,QAAU;AACrC,SAASC,eAAA,EAAiBC,2BAAA,QAAmC;AAE7DJ,QAAA,CAAS,mBAAmB,YAAM;EAChCE,EAAA,CAAG,+EAA+E,YAAM;IACtF,IAAAG,SAAM;AAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAWlB,IAAAC,MAAM,GAAAF,2BAAS,CAAAC,SAAA;IAAAJ,MACb,CAAAK,MAAA,EAAAC,WAAA;IAAAN,MACA,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAC,GAAA,CAAAC,SAAA;IACFT,MAAA,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;IAEAT,MAAA,CAAOK,MAAM,KAAE,QAAAA,MAAY,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;IAC3BT,MAAA,CAAOK,MAAA,KAAQ,IAAM,IAAIA,MAAA,KAAU,kBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAqC;IACxET,MAAA,CAAOK,MAAA,KAAQ,IAAM,IAAAA,MAAA,uBAAAA,MAAA,CAAAK,GAAA,EAAAJ,WAAA;EAAA;EACnBL,EACF;IACA,IAAAG,SAAO,GAAQ;AACf;AACA;AAAgC;AAGlC;AAIE;AAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAAA,IAAAO,EAAA;IAAA,IAAAC,KAAA,GAAAT,2BAAA,CAAAC,SAAA,EAAAO,EAAA;IAAAX,MAAA,CAAAY,KAAA,aAAAA,KAAA,uBAAAA,KAAA,CAAAL,IAAA,EAAAE,SAAA;IAAAT,MAAA;MAAA,OAAAG,2BAAA,CAAAS,KAAA,CAAAL,IAAA,EAAAI,EAAA;IAoBlB,GAAAH,GAAM,CAAAK,OAAK;IACXb,MAAM,CAAAG,2BAAQ,CAAAS,KAAA,CAAAL,IAA4B,EAAAI,EAAA,GAAAG,aAAa;EACvD;EAEAb,EAAA,4FAAuE;IACvE,IAAAG,SAAO;AAA4D;AAGrE;AACE;AAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAAA,IAAAC,MAAA,GAAAF,2BAAA,CAAAC,SAAA;IAAAJ,MAAA,CAAAK,MAAA,EAAAC,WAAA;IAAAN,MAAA,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAC,GAAA,CAAAC,SAAA;IAuBlBT,MAAM,CAAAK,MAAA,KAAS,QAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;IAAAT,MACb,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;IAAAT,MACA,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;EAAA,EACF;EAEAR,EAAA,kFAA2B;IAE3B,IAAAG,SAAO,GAAQ;AAEf;AACA;AACA;AAAqB;AACnB;AACF;AAGF;AACE;AAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAAAJ,MAAA;MAAAG,2BAAA,CAAAC,SAAA;IAAA,GAAAS,OAAA;EAAA;EAAAZ,EAAA;IAAA,IAAAG,SAAA;AAAA;AAAA;AAuBlB;AACE;AAAA;AACE;AACA;AACF;AACoE;AAGxE;AACE;IAAkBJ,MAAA;MAAAG,2BAAA,CAAAC,SAAA;IAAA,GAAAS,OAAA;EAAA;EAAAZ,EAAA;IAAA,IAAAG,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAalB;AACE;AAAA;AACE;AACA;AACF;AACC;IAEHJ,MAAA;MACDG,2BAAA,CAAAC,SAAA;IAED,CAAG,EAAAS,OAAA,sGAAsG;EACvG;EAAkBZ,EAAA;IAAA,IAAAG,SAAA;AAAA;AAAA;AAAA;AAAA;IAAA,IAAAC,MAAA,GAAAF,2BAAA,CAAAC,SAAA;IAAAJ,MAAA,CAAAK,MAAA,EAAAS,aAAA;EAAA;EAAAb,EAAA;IAAA,IAAAG,SAAA;AAAA;AAclB;AACE;AAAA;IACE,IACAC,MAAA,GAAAF,2BAAA,CAAAC,SAAA;IAAAJ,MACF,CAAAK,MAAA,EAAAS,aAAA;EAAA,EACF;EAAGb,EAAA,yCACD;IACF,IAAAG,SAAA;AAAA;AAGF;AACE;AAAkB;AAAA;AAAA;AAAA;AAKlB;AACA;IACD,IAAAC,MAAA,GAAAF,2BAAA,CAAAC,SAAA;IAEDJ,MAAG,CAAAK,MAAA,EAAAC,WAAA;IACDN,MAAM,CAAAK,MAAA,KAAY,QAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;EAAA;EAAAR,EAAA;IAAA,IAAAc,iBAAA;IAAA,IAAAC,MAAA,GAAAd,eAAA;IAKlBF,MAAM,CAAAgB,MAAA,CAAAC,IAAS,EAAAC,IAAA;IAAAlB,MACb,CAAAgB,MAAA,CAAAG,OAAA,EAAAD,IAAA;IAAA,IACAd,SAAA;AAAA;AAEF;AAA6B;AAG/B;AACE;AAAkB;AAAA;AAAA;AAAA;IAAA,IAAAgB,WAAA,UAAAJ,MAAA,CAAAK,SAAA,kBAAAL,MAAA,CAAAK,SAAA,IAAAN,iBAAA,GAAAC,MAAA,CAAAK,SAAA,cAAAN,iBAAA,uBAAAA,iBAAA,CAAAO,OAAA;IAAA,IAAAjB,MAAA,GAAAe,WAAA,CAAAG,IAAA,KAAAnB,SAAA;IAAAJ,MAAA,CAAAK,MAAA,EAAAC,WAAA;IAAAN,MAAA,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;IAAAT,MAAA,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAK,GAAA,EAAAJ,WAAA;EAWlB;EAEAL,EAAA,yFAA2B;IAC3B,IAAAG,SAAO,GAAQ;AAA6C;AAG9D;AACE;AACA;AACA;AAEA;AAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAAA,IAAAC,MAAA,GAAAF,2BAAA,CAAAC,SAAA;IAWlBJ,MAAM,CAAAK,MAAA,EAAAC,WACJ,CAAO;IAITN,MAAM,CAAAK,MAAA,KAAS,QAAAA,MAAY,uBAAAA,MAAA,CAAAE,IAAA,EAAAC,GAAA,CAAAC,SAAA;IAAAT,MACxB,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;IAAAT,MACD,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;EAAA;EACAR,EACF;IAEA,IAAAuB,QAAO,GAAQ;AACf;AACA;AAAgC;AAGlC;AACE;AAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAAA,IAAAnB,MAAA,GAAAF,2BAAA,CAAAqB,QAAA;IAAAxB,MAAA,CAAAK,MAAA,EAAAC,WAAA;IAAAN,MAAA,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;IAAAT,MAAA,CAAAK,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAE,IAAA,EAAAE,SAAA;EAgBlB;AAAe","ignoreList":[]}