@vxrn/vite-plugin-metro 1.14.4 → 1.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/dist/cjs/babel-plugins/import-meta-env-plugin.cjs +55 -37
  2. package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js +111 -94
  3. package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
  4. package/dist/cjs/env/platformEnv.cjs +21 -14
  5. package/dist/cjs/env/platformEnv.native.js +30 -20
  6. package/dist/cjs/env/platformEnv.native.js.map +1 -1
  7. package/dist/cjs/index.cjs +16 -14
  8. package/dist/cjs/index.native.js +16 -14
  9. package/dist/cjs/index.native.js.map +1 -1
  10. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.cjs +25 -19
  11. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js +39 -29
  12. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
  13. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +103 -92
  14. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +111 -104
  15. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
  16. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.cjs +17 -13
  17. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +23 -19
  18. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -1
  19. package/dist/cjs/metro-config/types.cjs +7 -5
  20. package/dist/cjs/metro-config/types.native.js +7 -5
  21. package/dist/cjs/metro-config/types.native.js.map +1 -1
  22. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.cjs +37 -25
  23. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js +49 -33
  24. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
  25. package/dist/cjs/plugins/metroPlugin.cjs +184 -126
  26. package/dist/cjs/plugins/metroPlugin.native.js +193 -140
  27. package/dist/cjs/plugins/metroPlugin.native.js.map +1 -1
  28. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.cjs +34 -30
  29. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js +56 -44
  30. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -1
  31. package/dist/cjs/rn-commands/bundle/assetPathUtils.cjs +26 -15
  32. package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js +22 -13
  33. package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js.map +1 -1
  34. package/dist/cjs/rn-commands/bundle/buildBundle.cjs +36 -26
  35. package/dist/cjs/rn-commands/bundle/buildBundle.native.js +42 -32
  36. package/dist/cjs/rn-commands/bundle/buildBundle.native.js.map +1 -1
  37. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.cjs +52 -41
  38. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js +57 -46
  39. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -1
  40. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.cjs +23 -15
  41. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js +30 -19
  42. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -1
  43. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.cjs +28 -26
  44. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js +28 -26
  45. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -1
  46. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.cjs +26 -24
  47. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js +26 -24
  48. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -1
  49. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.cjs +22 -16
  50. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js +16 -14
  51. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -1
  52. package/dist/cjs/rn-commands/bundle/index.cjs +14 -12
  53. package/dist/cjs/rn-commands/bundle/index.native.js +14 -12
  54. package/dist/cjs/rn-commands/bundle/index.native.js.map +1 -1
  55. package/dist/cjs/rn-commands/bundle/saveAssets.cjs +69 -51
  56. package/dist/cjs/rn-commands/bundle/saveAssets.native.js +75 -55
  57. package/dist/cjs/rn-commands/bundle/saveAssets.native.js.map +1 -1
  58. package/dist/cjs/rn-commands/bundle/types.cjs +7 -5
  59. package/dist/cjs/rn-commands/bundle/types.native.js +7 -5
  60. package/dist/cjs/rn-commands/bundle/types.native.js.map +1 -1
  61. package/dist/cjs/rn-commands/index.cjs +24 -22
  62. package/dist/cjs/rn-commands/index.native.js +24 -22
  63. package/dist/cjs/rn-commands/index.native.js.map +1 -1
  64. package/dist/cjs/transformer/babel-core.cjs +12 -10
  65. package/dist/cjs/transformer/babel-core.native.js +12 -10
  66. package/dist/cjs/transformer/babel-core.native.js.map +1 -1
  67. package/dist/cjs/transformer/babel-transformer.cjs +106 -89
  68. package/dist/cjs/transformer/babel-transformer.native.js +106 -96
  69. package/dist/cjs/transformer/babel-transformer.native.js.map +1 -1
  70. package/dist/cjs/transformer/loadBabelConfig.cjs +43 -32
  71. package/dist/cjs/transformer/loadBabelConfig.native.js +51 -41
  72. package/dist/cjs/transformer/loadBabelConfig.native.js.map +1 -1
  73. package/dist/cjs/transformer/transformSync.cjs +33 -25
  74. package/dist/cjs/transformer/transformSync.native.js +38 -30
  75. package/dist/cjs/transformer/transformSync.native.js.map +1 -1
  76. package/dist/cjs/transformer/types.cjs +7 -5
  77. package/dist/cjs/transformer/types.native.js +7 -5
  78. package/dist/cjs/transformer/types.native.js.map +1 -1
  79. package/dist/cjs/utils/exit.cjs +95 -53
  80. package/dist/cjs/utils/exit.native.js +138 -81
  81. package/dist/cjs/utils/exit.native.js.map +1 -1
  82. package/dist/cjs/utils/getTerminalReporter.cjs +33 -28
  83. package/dist/cjs/utils/getTerminalReporter.native.js +40 -33
  84. package/dist/cjs/utils/getTerminalReporter.native.js.map +1 -1
  85. package/dist/cjs/utils/metroCacheManager.cjs +82 -46
  86. package/dist/cjs/utils/metroCacheManager.native.js +96 -57
  87. package/dist/cjs/utils/metroCacheManager.native.js.map +1 -1
  88. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.cjs +21 -17
  89. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +12 -10
  90. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -1
  91. package/dist/cjs/utils/projectImport.cjs +40 -30
  92. package/dist/cjs/utils/projectImport.native.js +49 -37
  93. package/dist/cjs/utils/projectImport.native.js.map +1 -1
  94. package/dist/esm/babel-plugins/import-meta-env-plugin.mjs +28 -12
  95. package/dist/esm/babel-plugins/import-meta-env-plugin.mjs.map +1 -1
  96. package/dist/esm/babel-plugins/import-meta-env-plugin.native.js +83 -68
  97. package/dist/esm/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
  98. package/dist/esm/env/platformEnv.mjs +9 -4
  99. package/dist/esm/env/platformEnv.mjs.map +1 -1
  100. package/dist/esm/env/platformEnv.native.js +18 -10
  101. package/dist/esm/env/platformEnv.native.js.map +1 -1
  102. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs +13 -9
  103. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs.map +1 -1
  104. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js +27 -19
  105. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
  106. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +75 -66
  107. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
  108. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +83 -78
  109. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
  110. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs +5 -3
  111. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs.map +1 -1
  112. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +11 -9
  113. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -1
  114. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs +22 -12
  115. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -1
  116. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js +34 -20
  117. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
  118. package/dist/esm/plugins/metroPlugin.mjs +152 -96
  119. package/dist/esm/plugins/metroPlugin.mjs.map +1 -1
  120. package/dist/esm/plugins/metroPlugin.native.js +158 -107
  121. package/dist/esm/plugins/metroPlugin.native.js.map +1 -1
  122. package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs +7 -5
  123. package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs.map +1 -1
  124. package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js +29 -19
  125. package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -1
  126. package/dist/esm/rn-commands/bundle/assetPathUtils.mjs +14 -5
  127. package/dist/esm/rn-commands/bundle/assetPathUtils.mjs.map +1 -1
  128. package/dist/esm/rn-commands/bundle/assetPathUtils.native.js +10 -3
  129. package/dist/esm/rn-commands/bundle/assetPathUtils.native.js.map +1 -1
  130. package/dist/esm/rn-commands/bundle/buildBundle.mjs +19 -11
  131. package/dist/esm/rn-commands/bundle/buildBundle.mjs.map +1 -1
  132. package/dist/esm/rn-commands/bundle/buildBundle.native.js +25 -17
  133. package/dist/esm/rn-commands/bundle/buildBundle.native.js.map +1 -1
  134. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs +23 -14
  135. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs.map +1 -1
  136. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js +27 -18
  137. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -1
  138. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs +11 -5
  139. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs.map +1 -1
  140. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js +18 -9
  141. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -1
  142. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs +2 -2
  143. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs.map +1 -1
  144. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js +2 -2
  145. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -1
  146. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs +2 -2
  147. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs.map +1 -1
  148. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js +2 -2
  149. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -1
  150. package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs +8 -4
  151. package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs.map +1 -1
  152. package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js +2 -2
  153. package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -1
  154. package/dist/esm/rn-commands/bundle/saveAssets.mjs +39 -23
  155. package/dist/esm/rn-commands/bundle/saveAssets.mjs.map +1 -1
  156. package/dist/esm/rn-commands/bundle/saveAssets.native.js +45 -27
  157. package/dist/esm/rn-commands/bundle/saveAssets.native.js.map +1 -1
  158. package/dist/esm/transformer/babel-transformer.mjs +84 -69
  159. package/dist/esm/transformer/babel-transformer.mjs.map +1 -1
  160. package/dist/esm/transformer/babel-transformer.native.js +94 -86
  161. package/dist/esm/transformer/babel-transformer.native.js.map +1 -1
  162. package/dist/esm/transformer/loadBabelConfig.mjs +17 -8
  163. package/dist/esm/transformer/loadBabelConfig.mjs.map +1 -1
  164. package/dist/esm/transformer/loadBabelConfig.native.js +19 -11
  165. package/dist/esm/transformer/loadBabelConfig.native.js.map +1 -1
  166. package/dist/esm/transformer/transformSync.mjs +9 -3
  167. package/dist/esm/transformer/transformSync.mjs.map +1 -1
  168. package/dist/esm/transformer/transformSync.native.js +14 -8
  169. package/dist/esm/transformer/transformSync.native.js.map +1 -1
  170. package/dist/esm/utils/exit.mjs +68 -28
  171. package/dist/esm/utils/exit.mjs.map +1 -1
  172. package/dist/esm/utils/exit.native.js +111 -56
  173. package/dist/esm/utils/exit.native.js.map +1 -1
  174. package/dist/esm/utils/getTerminalReporter.mjs +7 -4
  175. package/dist/esm/utils/getTerminalReporter.mjs.map +1 -1
  176. package/dist/esm/utils/getTerminalReporter.native.js +14 -9
  177. package/dist/esm/utils/getTerminalReporter.native.js.map +1 -1
  178. package/dist/esm/utils/metroCacheManager.mjs +67 -33
  179. package/dist/esm/utils/metroCacheManager.mjs.map +1 -1
  180. package/dist/esm/utils/metroCacheManager.native.js +80 -43
  181. package/dist/esm/utils/metroCacheManager.native.js.map +1 -1
  182. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs +9 -7
  183. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs.map +1 -1
  184. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -1
  185. package/dist/esm/utils/projectImport.mjs +14 -6
  186. package/dist/esm/utils/projectImport.mjs.map +1 -1
  187. package/dist/esm/utils/projectImport.native.js +23 -13
  188. package/dist/esm/utils/projectImport.native.js.map +1 -1
  189. package/package.json +3 -3
@@ -2,29 +2,44 @@ import { ChildProcess } from "child_process";
2
2
  import process from "process";
3
3
  import colors from "picocolors";
4
4
  function _instanceof(left, right) {
5
- return right != null && typeof Symbol < "u" && right[Symbol.hasInstance] ? !!right[Symbol.hasInstance](left) : left instanceof right;
5
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
6
+ return !!right[Symbol.hasInstance](left);
7
+ } else {
8
+ return left instanceof right;
9
+ }
6
10
  }
7
11
  var debug = function () {
8
- for (var _len = arguments.length, _ = new Array(_len), _key = 0; _key < _len; _key++) _[_key] = arguments[_key];
9
- },
10
- PRE_EXIT_SIGNALS = ["SIGHUP", "SIGINT", "SIGTERM", "SIGBREAK"],
11
- queue = [],
12
- unsubscribe = null;
12
+ for (var _len = arguments.length, _ = new Array(_len), _key = 0; _key < _len; _key++) {
13
+ _[_key] = arguments[_key];
14
+ }
15
+ };
16
+ var PRE_EXIT_SIGNALS = ["SIGHUP", "SIGINT", "SIGTERM", "SIGBREAK"];
17
+ var queue = [];
18
+ var unsubscribe = null;
13
19
  function installExitHooks(asyncExitHook) {
14
- return queue.length || (unsubscribe = attachMasterListener()), queue.push(asyncExitHook), function () {
20
+ if (!queue.length) {
21
+ unsubscribe = attachMasterListener();
22
+ }
23
+ queue.push(asyncExitHook);
24
+ return function () {
15
25
  var index = queue.indexOf(asyncExitHook);
16
- index >= 0 && queue.splice(index, 1), queue.length || unsubscribe?.();
26
+ if (index >= 0) {
27
+ queue.splice(index, 1);
28
+ }
29
+ if (!queue.length) {
30
+ unsubscribe === null || unsubscribe === void 0 ? void 0 : unsubscribe();
31
+ }
17
32
  };
18
33
  }
19
34
  function createExitHook(signal) {
20
35
  return guardAsync(async function () {
21
36
  var _process_exitCode;
22
37
  debug(`pre-exit (signal: ${signal}, queue length: ${queue.length})`);
23
- var _iteratorNormalCompletion = !0,
24
- _didIteratorError = !1,
38
+ var _iteratorNormalCompletion = true,
39
+ _didIteratorError = false,
25
40
  _iteratorError = void 0;
26
41
  try {
27
- for (var _iterator = Object.entries(queue)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
42
+ for (var _iterator = Object.entries(queue)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
28
43
  var [index, hookAsync] = _step.value;
29
44
  try {
30
45
  await hookAsync(signal);
@@ -33,73 +48,101 @@ function createExitHook(signal) {
33
48
  }
34
49
  }
35
50
  } catch (err) {
36
- _didIteratorError = !0, _iteratorError = err;
51
+ _didIteratorError = true;
52
+ _iteratorError = err;
37
53
  } finally {
38
54
  try {
39
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
55
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
56
+ _iterator.return();
57
+ }
40
58
  } finally {
41
- if (_didIteratorError) throw _iteratorError;
59
+ if (_didIteratorError) {
60
+ throw _iteratorError;
61
+ }
42
62
  }
43
63
  }
44
- debug(`post-exit (code: ${(_process_exitCode = process.exitCode) !== null && _process_exitCode !== void 0 ? _process_exitCode : 0})`), process.exit();
64
+ debug(`post-exit (code: ${(_process_exitCode = process.exitCode) !== null && _process_exitCode !== void 0 ? _process_exitCode : 0})`);
65
+ process.exit();
45
66
  });
46
67
  }
47
68
  function attachMasterListener() {
48
- var hooks = [],
49
- _iteratorNormalCompletion = !0,
50
- _didIteratorError = !1,
69
+ var hooks = [];
70
+ var _iteratorNormalCompletion = true,
71
+ _didIteratorError = false,
51
72
  _iteratorError = void 0;
52
73
  try {
53
- for (var _iterator = PRE_EXIT_SIGNALS[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
54
- var signal = _step.value,
55
- hook = createExitHook(signal);
56
- hooks.push([signal, hook]), process.on(signal, hook);
74
+ for (var _iterator = PRE_EXIT_SIGNALS[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
75
+ var signal = _step.value;
76
+ var hook = createExitHook(signal);
77
+ hooks.push([signal, hook]);
78
+ process.on(signal, hook);
57
79
  }
58
80
  } catch (err) {
59
- _didIteratorError = !0, _iteratorError = err;
81
+ _didIteratorError = true;
82
+ _iteratorError = err;
60
83
  } finally {
61
84
  try {
62
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
85
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
86
+ _iterator.return();
87
+ }
63
88
  } finally {
64
- if (_didIteratorError) throw _iteratorError;
89
+ if (_didIteratorError) {
90
+ throw _iteratorError;
91
+ }
65
92
  }
66
93
  }
67
94
  return function () {
68
- var _iteratorNormalCompletion2 = !0,
69
- _didIteratorError2 = !1,
95
+ var _iteratorNormalCompletion2 = true,
96
+ _didIteratorError2 = false,
70
97
  _iteratorError2 = void 0;
71
98
  try {
72
- for (var _iterator2 = hooks[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = !0) {
99
+ for (var _iterator2 = hooks[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
73
100
  var [signal2, hook2] = _step2.value;
74
101
  process.removeListener(signal2, hook2);
75
102
  }
76
103
  } catch (err) {
77
- _didIteratorError2 = !0, _iteratorError2 = err;
104
+ _didIteratorError2 = true;
105
+ _iteratorError2 = err;
78
106
  } finally {
79
107
  try {
80
- !_iteratorNormalCompletion2 && _iterator2.return != null && _iterator2.return();
108
+ if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
109
+ _iterator2.return();
110
+ }
81
111
  } finally {
82
- if (_didIteratorError2) throw _iteratorError2;
112
+ if (_didIteratorError2) {
113
+ throw _iteratorError2;
114
+ }
83
115
  }
84
116
  }
85
117
  };
86
118
  }
87
119
  function ensureProcessExitsAfterDelay() {
88
120
  var waitUntilExitMs = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 1e4,
89
- startedAtMs = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : Date.now(),
90
- expectedResources = [process.stdout.isTTY ? "TTYWrap" : "PipeWrap", process.stderr.isTTY ? "TTYWrap" : "PipeWrap", process.stdin.isTTY ? "TTYWrap" : "PipeWrap"],
91
- activeResources = process.getActiveResourcesInfo(),
92
- unexpectedActiveResources = activeResources.filter(function (activeResource) {
93
- var index = expectedResources.indexOf(activeResource);
94
- return index >= 0 ? (expectedResources.splice(index, 1), !1) : !0;
95
- }),
96
- canExitProcess = !unexpectedActiveResources.length;
97
- if (canExitProcess) return debug("no active resources detected, process can safely exit");
98
- debug("process is trying to exit, but is stuck on unexpected active resources:", unexpectedActiveResources);
121
+ startedAtMs = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : Date.now();
122
+ var expectedResources = [process.stdout.isTTY ? "TTYWrap" : "PipeWrap", process.stderr.isTTY ? "TTYWrap" : "PipeWrap", process.stdin.isTTY ? "TTYWrap" : "PipeWrap"];
123
+ var activeResources = process.getActiveResourcesInfo();
124
+ var unexpectedActiveResources = activeResources.filter(function (activeResource) {
125
+ var index = expectedResources.indexOf(activeResource);
126
+ if (index >= 0) {
127
+ expectedResources.splice(index, 1);
128
+ return false;
129
+ }
130
+ return true;
131
+ });
132
+ var canExitProcess = !unexpectedActiveResources.length;
133
+ if (canExitProcess) {
134
+ return debug("no active resources detected, process can safely exit");
135
+ }
136
+ debug(`process is trying to exit, but is stuck on unexpected active resources:`, unexpectedActiveResources);
99
137
  var elapsedTime = Date.now() - startedAtMs;
100
- if (elapsedTime > waitUntilExitMs) return debug("active handles detected past the exit delay, forcefully exiting:", activeResources), tryWarnActiveProcesses(), process.exit(0);
138
+ if (elapsedTime > waitUntilExitMs) {
139
+ debug("active handles detected past the exit delay, forcefully exiting:", activeResources);
140
+ tryWarnActiveProcesses();
141
+ return process.exit(0);
142
+ }
101
143
  var timeoutId = setTimeout(function () {
102
- clearTimeout(timeoutId), ensureProcessExitsAfterDelay(waitUntilExitMs, startedAtMs);
144
+ clearTimeout(timeoutId);
145
+ ensureProcessExitsAfterDelay(waitUntilExitMs, startedAtMs);
103
146
  }, 100);
104
147
  }
105
148
  function tryWarnActiveProcesses() {
@@ -108,29 +151,41 @@ function tryWarnActiveProcesses() {
108
151
  var children = process._getActiveHandles().filter(function (handle) {
109
152
  return _instanceof(handle, ChildProcess);
110
153
  });
111
- children.length && (activeProcesses = children.map(function (child) {
112
- return child.spawnargs.join(" ");
113
- }));
154
+ if (children.length) {
155
+ activeProcesses = children.map(function (child) {
156
+ return child.spawnargs.join(" ");
157
+ });
158
+ }
114
159
  } catch (error) {
115
160
  debug("failed to get active process information:", error);
116
161
  }
117
- if (!activeProcesses.length) warn("Something prevented Expo from exiting, forcefully exiting now.");else {
162
+ if (!activeProcesses.length) {
163
+ warn("Something prevented Expo from exiting, forcefully exiting now.");
164
+ } else {
118
165
  var singularOrPlural = activeProcesses.length === 1 ? "1 process" : `${activeProcesses.length} processes`;
119
- warn(`Detected ${singularOrPlural} preventing process from exiting, forcefully exiting now.`), warn(" - " + activeProcesses.join(`
120
- - `));
166
+ warn(`Detected ${singularOrPlural} preventing process from exiting, forcefully exiting now.`);
167
+ warn(" - " + activeProcesses.join("\n - "));
121
168
  }
122
169
  }
123
170
  function guardAsync(fn) {
124
- var invoked = !1,
125
- returnValue,
126
- guard = async function () {
127
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
128
- return invoked || (invoked = !0, returnValue = await fn(...args)), returnValue;
129
- };
171
+ var invoked = false;
172
+ var returnValue;
173
+ var guard = async function () {
174
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
175
+ args[_key] = arguments[_key];
176
+ }
177
+ if (!invoked) {
178
+ invoked = true;
179
+ returnValue = await fn(...args);
180
+ }
181
+ return returnValue;
182
+ };
130
183
  return guard;
131
184
  }
132
185
  function warn() {
133
- for (var _len = arguments.length, message = new Array(_len), _key = 0; _key < _len; _key++) message[_key] = arguments[_key];
186
+ for (var _len = arguments.length, message = new Array(_len), _key = 0; _key < _len; _key++) {
187
+ message[_key] = arguments[_key];
188
+ }
134
189
  console.warn(...message.map(function (value) {
135
190
  return colors.yellow(value);
136
191
  }));
@@ -1 +1 @@
1
- {"version":3,"names":["ChildProcess","process","colors","_instanceof","left","right","Symbol","hasInstance","debug","_len","arguments","length","_","Array","_key","PRE_EXIT_SIGNALS","queue","unsubscribe","installExitHooks","asyncExitHook","attachMasterListener","push","index","indexOf","splice","createExitHook","signal","guardAsync","_process_exitCode","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","iterator","_step","next","done","hookAsync","value","error","err","return","exitCode","exit","hooks","hook","on","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","signal2","hook2","removeListener"],"sources":["../../../src/utils/exit.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["ChildProcess","process","colors","_instanceof","left","right","Symbol","hasInstance","debug","_len","arguments","length","_","Array","_key","PRE_EXIT_SIGNALS","queue","unsubscribe","installExitHooks","asyncExitHook","attachMasterListener","push","index","indexOf","splice","createExitHook","signal","guardAsync","_process_exitCode","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","iterator","_step","next","done","hookAsync","value","error","err","return","exitCode","exit","hooks","hook","on","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","signal2","hook2","removeListener","ensureProcessExitsAfterDelay","waitUntilExitMs","startedAtMs","Date","now"],"sources":["../../../src/utils/exit.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -5,21 +5,24 @@ async function getTerminalReporter(projectRoot) {
5
5
  Terminal,
6
6
  TerminalReporter
7
7
  } = await projectImport(projectRoot, "metro");
8
- let metroWelcomeMessagePrinted = !1;
8
+ let metroWelcomeMessagePrinted = false;
9
9
  const terminal = new Terminal(process.stdout);
10
- terminal._log = terminal.log, terminal.log = (message, ...rest) => {
10
+ terminal._log = terminal.log;
11
+ terminal.log = (message, ...rest) => {
11
12
  if (!metroWelcomeMessagePrinted) {
12
13
  const match = message.match(/Welcome to Metro.+v(\d+\.\d+\.\d+)/);
13
14
  if (match) {
14
15
  const version = match[1];
15
- return metroWelcomeMessagePrinted = !0, terminal._log(colors.dim(`
16
+ metroWelcomeMessagePrinted = true;
17
+ return terminal._log(colors.dim(`
16
18
  Using Metro Bundler v${version}`), ...rest);
17
19
  }
18
20
  }
19
21
  return terminal._log(message, ...rest);
20
22
  };
21
23
  const terminalReporter = new TerminalReporter(terminal);
22
- return terminalReporter._logInitializing = () => {}, terminalReporter;
24
+ terminalReporter._logInitializing = () => {};
25
+ return terminalReporter;
23
26
  }
24
27
  export { getTerminalReporter };
25
28
  //# sourceMappingURL=getTerminalReporter.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["colors","projectImport","getTerminalReporter","projectRoot","Terminal","TerminalReporter","metroWelcomeMessagePrinted","terminal","process","stdout","_log","log","message","rest","match","version","dim","terminalReporter","_logInitializing"],"sources":["../../../src/utils/getTerminalReporter.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAOA,MAAA,MAAY;AAEnB,SAASC,aAAA,QAAqB;AAE9B,eAAsBC,oBAAoBC,WAAA,EAAqB;EAC7D,MAAM;IAAEC,QAAA;IAAUC;EAAiB,IAAI,MAAMJ,aAAA,CAG1CE,WAAA,EAAa,OAAO;EAEvB,IAAIG,0BAAA,GAA6B;EAEjC,MAAMC,QAAA,GAAW,IAAIH,QAAA,CAASI,OAAA,CAAQC,MAAM;EAC1CF,QAAA,CAAiBG,IAAA,GAAOH,QAAA,CAASI,GAAA,EACnCJ,QAAA,CAASI,GAAA,GAAM,CAACC,OAAA,KAAYC,IAAA,KAAS;IAGnC,IAAI,CAACP,0BAAA,EAA4B;MAC/B,MAAMQ,KAAA,GAAQF,OAAA,CAAQE,KAAA,CAAM,oCAAoC;MAChE,IAAIA,KAAA,EAAO;QACT,MAAMC,OAAA,GAAUD,KAAA,CAAM,CAAC;QACvB,OAAAR,0BAAA,GAA6B,IACrBC,QAAA,CAAiBG,IAAA,CACvBV,MAAA,CAAOgB,GAAA,CAAI;AAAA,yBAA4BD,OAAO,EAAE,GAChD,GAAGF,IACL;MACF;IACF;IAEA,OAAQN,QAAA,CAAiBG,IAAA,CAAKE,OAAA,EAAS,GAAGC,IAAI;EAChD;EAGA,MAAMI,gBAAA,GAAmB,IAAIZ,gBAAA,CAAiBE,QAAQ;EAIrD,OAACU,gBAAA,CAAyBC,gBAAA,GAAmB,MAAM,CAAC,GAE9CD,gBAAA;AACT","ignoreList":[]}
1
+ {"version":3,"names":["colors","projectImport","getTerminalReporter","projectRoot","Terminal","TerminalReporter","metroWelcomeMessagePrinted","terminal","process","stdout","_log","log","message","rest","match","version","dim","terminalReporter","_logInitializing"],"sources":["../../../src/utils/getTerminalReporter.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAOA,MAAA,MAAY;AAEnB,SAASC,aAAA,QAAqB;AAE9B,eAAsBC,oBAAoBC,WAAA,EAAqB;EAC7D,MAAM;IAAEC,QAAA;IAAUC;EAAiB,IAAI,MAAMJ,aAAA,CAG1CE,WAAA,EAAa,OAAO;EAEvB,IAAIG,0BAAA,GAA6B;EAEjC,MAAMC,QAAA,GAAW,IAAIH,QAAA,CAASI,OAAA,CAAQC,MAAM;EAC1CF,QAAA,CAAiBG,IAAA,GAAOH,QAAA,CAASI,GAAA;EACnCJ,QAAA,CAASI,GAAA,GAAM,CAACC,OAAA,KAAYC,IAAA,KAAS;IAGnC,IAAI,CAACP,0BAAA,EAA4B;MAC/B,MAAMQ,KAAA,GAAQF,OAAA,CAAQE,KAAA,CAAM,oCAAoC;MAChE,IAAIA,KAAA,EAAO;QACT,MAAMC,OAAA,GAAUD,KAAA,CAAM,CAAC;QACvBR,0BAAA,GAA6B;QAC7B,OAAQC,QAAA,CAAiBG,IAAA,CACvBV,MAAA,CAAOgB,GAAA,CAAI;AAAA,yBAA4BD,OAAO,EAAE,GAChD,GAAGF,IACL;MACF;IACF;IAEA,OAAQN,QAAA,CAAiBG,IAAA,CAAKE,OAAA,EAAS,GAAGC,IAAI;EAChD;EAGA,MAAMI,gBAAA,GAAmB,IAAIZ,gBAAA,CAAiBE,QAAQ;EAIpDU,gBAAA,CAAyBC,gBAAA,GAAmB,MAAM,CAAC;EAErD,OAAOD,gBAAA;AACT","ignoreList":[]}
@@ -2,25 +2,30 @@ import colors from "picocolors";
2
2
  import { projectImport } from "./projectImport.native.js";
3
3
  async function getTerminalReporter(projectRoot) {
4
4
  var {
5
- Terminal,
6
- TerminalReporter
7
- } = await projectImport(projectRoot, "metro"),
8
- metroWelcomeMessagePrinted = !1,
9
- terminal = new Terminal(process.stdout);
10
- terminal._log = terminal.log, terminal.log = function (message) {
11
- for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) rest[_key - 1] = arguments[_key];
5
+ Terminal,
6
+ TerminalReporter
7
+ } = await projectImport(projectRoot, "metro");
8
+ var metroWelcomeMessagePrinted = false;
9
+ var terminal = new Terminal(process.stdout);
10
+ terminal._log = terminal.log;
11
+ terminal.log = function (message) {
12
+ for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
13
+ rest[_key - 1] = arguments[_key];
14
+ }
12
15
  if (!metroWelcomeMessagePrinted) {
13
16
  var match = message.match(/Welcome to Metro.+v(\d+\.\d+\.\d+)/);
14
17
  if (match) {
15
18
  var version = match[1];
16
- return metroWelcomeMessagePrinted = !0, terminal._log(colors.dim(`
19
+ metroWelcomeMessagePrinted = true;
20
+ return terminal._log(colors.dim(`
17
21
  Using Metro Bundler v${version}`), ...rest);
18
22
  }
19
23
  }
20
24
  return terminal._log(message, ...rest);
21
25
  };
22
26
  var terminalReporter = new TerminalReporter(terminal);
23
- return terminalReporter._logInitializing = function () {}, terminalReporter;
27
+ terminalReporter._logInitializing = function () {};
28
+ return terminalReporter;
24
29
  }
25
30
  export { getTerminalReporter };
26
31
  //# sourceMappingURL=getTerminalReporter.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["colors","projectImport","getTerminalReporter","projectRoot","Terminal","TerminalReporter","metroWelcomeMessagePrinted","terminal","process","stdout","_log","log","message","_len","arguments","length","rest","Array","_key","match","version","dim","terminalReporter","_logInitializing"],"sources":["../../../src/utils/getTerminalReporter.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAOA,MAAA,MAAY;AAEnB,SAASC,aAAA,QAAqB;AAE9B,eAAsBC,oBAAoBC,WAAA,EAAqB;EAC7D;MAAMC,QAAE;MAAAC;IAAU,IAAiB,MAAIJ,aAAM,CAAAE,WAG1C,SAAa;IAAOG,0BAAA;IAAAC,QAAA,OAAAH,QAAA,CAAAI,OAAA,CAAAC,MAAA;EAEvBF,QAAI,CAAAG,IAAA,GAAAH,QAAA,CAAAI,GAAA,EAAAJ,QAA6B,CAAAI,GAAA,aAAAC,OAAA;IAEjC,KAAM,IAAAC,IAAA,GAAWC,SAAI,CAAAC,MAAS,EAAAC,IAAQ,OAAMC,KAAA,CAAAJ,IAAA,OAAAA,IAAA,WAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,IAC1CF,IAAA,CAAiBE,IAAA,GAAO,KAAAJ,SAC1B,CAAAI,IAAA;IAGE,IAAI,CAACZ,0BAAA,EAA4B;MAC/B,IAAAa,KAAM,GAAAP,OAAQ,CAAAO,KAAQ,qCAAM;MAC5B,IAAIA,KAAA,EAAO;QACT,IAAAC,OAAM,GAAAD,KAAU,GAAM;QACtB,OAAAb,0BAAA,GAA6B,IACrBC,QAAA,CAAiBG,IAAA,CAAAV,MAAA,CAAAqB,GAAA;AAAA,yBACZD,OAAA,QAAAJ,IAAA;MAAA;IAAqC;IAC7C,OACLT,QAAA,CAAAG,IAAA,CAAAE,OAAA,KAAAI,IAAA;EAAA;EACF,IACFM,gBAAA,OAAAjB,gBAAA,CAAAE,QAAA;EAEA,OAAAe,gBAA8B,CAAAC,gBAAgB,gBAChD,GAAAD,gBAAA;AAGA;AAIC,SAAoDpB,mBAE9C","ignoreList":[]}
1
+ {"version":3,"names":["colors","projectImport","getTerminalReporter","projectRoot","Terminal","TerminalReporter","metroWelcomeMessagePrinted","terminal","process","stdout","_log","log","message","_len","arguments","length","rest","Array","_key","match","version","dim","terminalReporter","_logInitializing"],"sources":["../../../src/utils/getTerminalReporter.ts"],"sourcesContent":[null],"mappings":"AAIA,OAAOA,MAAA,MAAY;AAEnB,SAASC,aAAA,QAAqB;AAE9B,eAAsBC,oBAAoBC,WAAA,EAAqB;EAC7D;IAAMC,QAAE;IAAAC;EAAU,IAAiB,MAAIJ,aAAM,CAAAE,WAG1C,SAAa;EAEhB,IAAIG,0BAAA,GAA6B;EAEjC,IAAAC,QAAM,OAAWH,QAAI,CAAAI,OAAS,CAAAC,MAAQ;EACpCF,QAAA,CAAiBG,IAAA,GAAOH,QAAA,CAASI,GAAA;EACnCJ,QAAA,CAASI,GAAA,GAAM,UAACC,OAAY;IAG1B,KAAK,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAA4BC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,OAAAA,IAAA,WAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAC/BF,IAAA,CAAAE,IAAM,KAAQ,GAAAJ,SAAQ,CAAAI,IAAM;IAC5B;IACE,KAAAZ,0BAAuB;MACvB,IAAAa,KAAA,GAAAP,OAAA,CAAAO,KAAA,qCAA6B;MAC7B,IAAAA,KAAQ;QAAiB,IACvBC,OAAO,GAAID,KAAA;QAAAb,0BAAqC;QAAA,OAC7CC,QAAA,CAAAG,IAAA,CAAAV,MAAA,CAAAqB,GAAA;AAAA,yBACLD,OAAA,QAAAJ,IAAA;MACF;IACF;IAEA,OAAQT,QAAA,CAAiBG,IAAA,CAAKE,OAAA,EAAS,GAAGI,IAAI;EAChD;EAGA,IAAAM,gBAAM,OAAmBjB,gBAAI,CAAAE,QAAiB;EAI5Ce,gBAAA,CAAyBC,gBAAA,GAAmB,YAAM,CAAC;EAErD,OAAOD,gBAAA;AACT","ignoreList":[]}
@@ -2,15 +2,18 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync, rmSync } from "node
2
2
  import { join } from "node:path";
3
3
  import { createDebugger } from "@vxrn/debug";
4
4
  const {
5
- debug
6
- } = createDebugger("vite-plugin-metro:cache"),
7
- CACHE_METADATA_FILE = "_vite_metro_metadata.json";
5
+ debug
6
+ } = createDebugger("vite-plugin-metro:cache");
7
+ const CACHE_METADATA_FILE = "_vite_metro_metadata.json";
8
8
  function getMetroCacheDir(root) {
9
9
  return join(root, "node_modules", ".cache", "vite-plugin-metro");
10
10
  }
11
11
  function getMetroCachePaths(root) {
12
12
  const paths = [];
13
- return paths.push(join(root, "node_modules", ".cache", "metro")), paths.push(join(root, "node_modules", ".cache", "babel-loader")), paths.push(join(root, "node_modules", ".cache", "haste-map")), paths;
13
+ paths.push(join(root, "node_modules", ".cache", "metro"));
14
+ paths.push(join(root, "node_modules", ".cache", "babel-loader"));
15
+ paths.push(join(root, "node_modules", ".cache", "haste-map"));
16
+ return paths;
14
17
  }
15
18
  function readCacheMetadata(cacheDir) {
16
19
  const metadataPath = join(cacheDir, CACHE_METADATA_FILE);
@@ -22,45 +25,76 @@ function readCacheMetadata(cacheDir) {
22
25
  }
23
26
  }
24
27
  function writeCacheMetadata(cacheDir, metadata) {
25
- existsSync(cacheDir) || mkdirSync(cacheDir, {
26
- recursive: !0
27
- }), writeFileSync(join(cacheDir, CACHE_METADATA_FILE), JSON.stringify(metadata, null, 2));
28
+ if (!existsSync(cacheDir)) {
29
+ mkdirSync(cacheDir, {
30
+ recursive: true
31
+ });
32
+ }
33
+ writeFileSync(join(cacheDir, CACHE_METADATA_FILE), JSON.stringify(metadata, null, 2));
28
34
  }
29
35
  function clearMetroCache(root) {
30
36
  const paths = getMetroCachePaths(root);
31
- for (const cachePath of paths) if (existsSync(cachePath)) try {
32
- rmSync(cachePath, {
33
- recursive: !0,
34
- force: !0
35
- }), debug?.(`Cleared cache: ${cachePath}`);
36
- } catch (e) {
37
- debug?.(`Failed to clear cache ${cachePath}: ${e}`);
37
+ for (const cachePath of paths) {
38
+ if (existsSync(cachePath)) {
39
+ try {
40
+ rmSync(cachePath, {
41
+ recursive: true,
42
+ force: true
43
+ });
44
+ debug?.(`Cleared cache: ${cachePath}`);
45
+ } catch (e) {
46
+ debug?.(`Failed to clear cache ${cachePath}: ${e}`);
47
+ }
48
+ }
38
49
  }
39
50
  process.env.METRO_RESET_CACHE = "1";
40
51
  }
41
52
  const PLUGIN_VERSION = "1";
42
53
  function checkAndClearMetroCacheFromVite(server, logger) {
43
54
  const {
44
- root
45
- } = server.config,
46
- cacheDir = getMetroCacheDir(root),
47
- depsOptimizer = server.environments.client?.depsOptimizer;
48
- if (!depsOptimizer) return debug?.("No depsOptimizer available, skipping Metro cache check"), !1;
55
+ root
56
+ } = server.config;
57
+ const cacheDir = getMetroCacheDir(root);
58
+ const depsOptimizer = server.environments.client?.depsOptimizer;
59
+ if (!depsOptimizer) {
60
+ debug?.("No depsOptimizer available, skipping Metro cache check");
61
+ return false;
62
+ }
49
63
  const {
50
- lockfileHash,
51
- configHash
52
- } = depsOptimizer.metadata,
53
- currentMetadata = {
54
- lockfileHash,
55
- configHash,
56
- pluginVersion: PLUGIN_VERSION
57
- },
58
- cachedMetadata = readCacheMetadata(cacheDir);
59
- let shouldClear = !1,
60
- reason = "";
61
- return cachedMetadata ? (cachedMetadata.pluginVersion !== PLUGIN_VERSION ? (shouldClear = !0, reason = "vite-plugin-metro was updated") : cachedMetadata.lockfileHash !== lockfileHash ? (shouldClear = !0, reason = "lockfile has changed") : cachedMetadata.configHash !== configHash && (shouldClear = !0, reason = "vite config has changed"), shouldClear ? (logger.info(`Clearing Metro cache because ${reason}`, {
62
- timestamp: !0
63
- }), clearMetroCache(root), writeCacheMetadata(cacheDir, currentMetadata), !0) : !1) : (writeCacheMetadata(cacheDir, currentMetadata), !1);
64
+ lockfileHash,
65
+ configHash
66
+ } = depsOptimizer.metadata;
67
+ const currentMetadata = {
68
+ lockfileHash,
69
+ configHash,
70
+ pluginVersion: PLUGIN_VERSION
71
+ };
72
+ const cachedMetadata = readCacheMetadata(cacheDir);
73
+ let shouldClear = false;
74
+ let reason = "";
75
+ if (!cachedMetadata) {
76
+ writeCacheMetadata(cacheDir, currentMetadata);
77
+ return false;
78
+ }
79
+ if (cachedMetadata.pluginVersion !== PLUGIN_VERSION) {
80
+ shouldClear = true;
81
+ reason = "vite-plugin-metro was updated";
82
+ } else if (cachedMetadata.lockfileHash !== lockfileHash) {
83
+ shouldClear = true;
84
+ reason = "lockfile has changed";
85
+ } else if (cachedMetadata.configHash !== configHash) {
86
+ shouldClear = true;
87
+ reason = "vite config has changed";
88
+ }
89
+ if (shouldClear) {
90
+ logger.info(`Clearing Metro cache because ${reason}`, {
91
+ timestamp: true
92
+ });
93
+ clearMetroCache(root);
94
+ writeCacheMetadata(cacheDir, currentMetadata);
95
+ return true;
96
+ }
97
+ return false;
64
98
  }
65
99
  export { checkAndClearMetroCacheFromVite };
66
100
  //# sourceMappingURL=metroCacheManager.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["existsSync","mkdirSync","readFileSync","writeFileSync","rmSync","join","createDebugger","debug","CACHE_METADATA_FILE","getMetroCacheDir","root","getMetroCachePaths","paths","push","readCacheMetadata","cacheDir","metadataPath","JSON","parse","writeCacheMetadata","metadata","recursive","stringify","clearMetroCache","cachePath","force","e","process","env","METRO_RESET_CACHE","PLUGIN_VERSION","checkAndClearMetroCacheFromVite","server","logger","config","depsOptimizer","environments","client","lockfileHash","configHash","currentMetadata","pluginVersion","cachedMetadata","shouldClear","reason","info","timestamp"],"sources":["../../../src/utils/metroCacheManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["existsSync","mkdirSync","readFileSync","writeFileSync","rmSync","join","createDebugger","debug","CACHE_METADATA_FILE","getMetroCacheDir","root","getMetroCachePaths","paths","push","readCacheMetadata","cacheDir","metadataPath","JSON","parse","writeCacheMetadata","metadata","recursive","stringify","clearMetroCache","cachePath","force","e","process","env","METRO_RESET_CACHE","PLUGIN_VERSION","checkAndClearMetroCacheFromVite","server","logger","config","depsOptimizer","environments","client","lockfileHash","configHash","currentMetadata","pluginVersion","cachedMetadata","shouldClear","reason","info","timestamp"],"sources":["../../../src/utils/metroCacheManager.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,EAAYC,SAAA,EAAWC,YAAA,EAAcC,aAAA,EAAeC,MAAA,QAAc;AAC3E,SAASC,IAAA,QAAY;AAErB,SAASC,cAAA,QAAsB;AAE/B,MAAM;EAAEC;AAAM,IAAID,cAAA,CAAe,yBAAyB;AAE1D,MAAME,mBAAA,GAAsB;AAW5B,SAASC,iBAAiBC,IAAA,EAAsB;EAE9C,OAAOL,IAAA,CAAKK,IAAA,EAAM,gBAAgB,UAAU,mBAAmB;AACjE;AAKA,SAASC,mBAAmBD,IAAA,EAAwB;EAClD,MAAME,KAAA,GAAkB,EAAC;EAGzBA,KAAA,CAAMC,IAAA,CAAKR,IAAA,CAAKK,IAAA,EAAM,gBAAgB,UAAU,OAAO,CAAC;EACxDE,KAAA,CAAMC,IAAA,CAAKR,IAAA,CAAKK,IAAA,EAAM,gBAAgB,UAAU,cAAc,CAAC;EAC/DE,KAAA,CAAMC,IAAA,CAAKR,IAAA,CAAKK,IAAA,EAAM,gBAAgB,UAAU,WAAW,CAAC;EAE5D,OAAOE,KAAA;AACT;AAKA,SAASE,kBAAkBC,QAAA,EAAwC;EACjE,MAAMC,YAAA,GAAeX,IAAA,CAAKU,QAAA,EAAUP,mBAAmB;EACvD,IAAI,CAACR,UAAA,CAAWgB,YAAY,GAAG,OAAO;EAEtC,IAAI;IACF,OAAOC,IAAA,CAAKC,KAAA,CAAMhB,YAAA,CAAac,YAAA,EAAc,OAAO,CAAC;EACvD,QAAQ;IACN,OAAO;EACT;AACF;AAKA,SAASG,mBAAmBJ,QAAA,EAAkBK,QAAA,EAA+B;EAC3E,IAAI,CAACpB,UAAA,CAAWe,QAAQ,GAAG;IACzBd,SAAA,CAAUc,QAAA,EAAU;MAAEM,SAAA,EAAW;IAAK,CAAC;EACzC;EACAlB,aAAA,CAAcE,IAAA,CAAKU,QAAA,EAAUP,mBAAmB,GAAGS,IAAA,CAAKK,SAAA,CAAUF,QAAA,EAAU,MAAM,CAAC,CAAC;AACtF;AAKA,SAASG,gBAAgBb,IAAA,EAAoB;EAC3C,MAAME,KAAA,GAAQD,kBAAA,CAAmBD,IAAI;EAErC,WAAWc,SAAA,IAAaZ,KAAA,EAAO;IAC7B,IAAIZ,UAAA,CAAWwB,SAAS,GAAG;MACzB,IAAI;QACFpB,MAAA,CAAOoB,SAAA,EAAW;UAAEH,SAAA,EAAW;UAAMI,KAAA,EAAO;QAAK,CAAC;QAClDlB,KAAA,GAAQ,kBAAkBiB,SAAS,EAAE;MACvC,SAASE,CAAA,EAAG;QACVnB,KAAA,GAAQ,yBAAyBiB,SAAS,KAAKE,CAAC,EAAE;MACpD;IACF;EACF;EAGAC,OAAA,CAAQC,GAAA,CAAIC,iBAAA,GAAoB;AAClC;AAGA,MAAMC,cAAA,GAAiB;AAOhB,SAASC,gCACdC,MAAA,EACAC,MAAA,EACS;EACT,MAAM;IAAEvB;EAAK,IAAIsB,MAAA,CAAOE,MAAA;EACxB,MAAMnB,QAAA,GAAWN,gBAAA,CAAiBC,IAAI;EAGtC,MAAMyB,aAAA,GAAgBH,MAAA,CAAOI,YAAA,CAAaC,MAAA,EAAQF,aAAA;EAClD,IAAI,CAACA,aAAA,EAAe;IAClB5B,KAAA,GAAQ,wDAAwD;IAChE,OAAO;EACT;EAEA,MAAM;IAAE+B,YAAA;IAAcC;EAAW,IAAIJ,aAAA,CAAcf,QAAA;EAEnD,MAAMoB,eAAA,GAAiC;IACrCF,YAAA;IACAC,UAAA;IACAE,aAAA,EAAeX;EACjB;EAEA,MAAMY,cAAA,GAAiB5B,iBAAA,CAAkBC,QAAQ;EAEjD,IAAI4B,WAAA,GAAc;EAClB,IAAIC,MAAA,GAAS;EAEb,IAAI,CAACF,cAAA,EAAgB;IAEnBvB,kBAAA,CAAmBJ,QAAA,EAAUyB,eAAe;IAC5C,OAAO;EACT;EAEA,IAAIE,cAAA,CAAeD,aAAA,KAAkBX,cAAA,EAAgB;IACnDa,WAAA,GAAc;IACdC,MAAA,GAAS;EACX,WAAWF,cAAA,CAAeJ,YAAA,KAAiBA,YAAA,EAAc;IACvDK,WAAA,GAAc;IACdC,MAAA,GAAS;EACX,WAAWF,cAAA,CAAeH,UAAA,KAAeA,UAAA,EAAY;IACnDI,WAAA,GAAc;IACdC,MAAA,GAAS;EACX;EAEA,IAAID,WAAA,EAAa;IACfV,MAAA,CAAOY,IAAA,CAAK,gCAAgCD,MAAM,IAAI;MAAEE,SAAA,EAAW;IAAK,CAAC;IACzEvB,eAAA,CAAgBb,IAAI;IACpBS,kBAAA,CAAmBJ,QAAA,EAAUyB,eAAe;IAC5C,OAAO;EACT;EAEA,OAAO;AACT","ignoreList":[]}