vxrn 1.1.496 → 1.1.498

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.
@@ -41,6 +41,12 @@ async function applyOptimizePatches(patches, config) {
41
41
  typeof optimize < "u" && (optimize === !0 ? optimizeDeps.include.push(patch.module) : optimize === !1 || optimize === "exclude" ? (optimizeDeps?.include && (optimizeDeps.include = optimizeDeps.include.filter((x) => x !== patch.module)), optimizeDeps.exclude.push(patch.module)) : optimize === "interop" && (optimizeDeps?.include?.push(patch.module), optimizeDeps?.needsInterop?.push(patch.module)));
42
42
  }), deepMergeOptimizeDeps(config, { optimizeDeps }, void 0, !0), deepMergeOptimizeDeps(config.ssr, { optimizeDeps }, void 0, !0);
43
43
  }
44
+ const getIsAlreadyPatched = (fullFilePath) => {
45
+ if (_isAlreadyPatchedMap.has(fullFilePath))
46
+ return _isAlreadyPatchedMap.get(fullFilePath);
47
+ const isAlreadyPatched = FSExtra.existsSync(getOgFilePath(fullFilePath));
48
+ return _isAlreadyPatchedMap.set(fullFilePath, isAlreadyPatched), isAlreadyPatched;
49
+ }, _isAlreadyPatchedMap = /* @__PURE__ */ new Map(), pathsBeingPatched = /* @__PURE__ */ new Set();
44
50
  async function applyDependencyPatches(patches, { root = process.cwd() } = {}) {
45
51
  const nodeModulesDirs = findNodeModules({
46
52
  cwd: root
@@ -59,24 +65,26 @@ async function applyDependencyPatches(patches, { root = process.cwd() } = {}) {
59
65
  for (const file in patch.patchFiles) {
60
66
  if (file === "optimize" || file === "version")
61
67
  continue;
62
- const filesToApply = file.includes("*") ? globDir(nodeModuleDir, file) : [file], appliedContents = /* @__PURE__ */ new Map();
68
+ const filesToApply = file.includes("*") ? globDir(nodeModuleDir, file) : [file];
63
69
  await Promise.all(
64
70
  filesToApply.map(async (relativePath) => {
65
71
  try {
66
- const fullPath = join(nodeModuleDir, relativePath), ogFile = fullPath + ".vxrn.ogfile";
67
- let existingPatch = appliedContents.get(ogFile) || null;
68
- if (!existingPatch && !process.env.VXRN_FORCE_PATCH && FSExtra.existsSync(ogFile))
69
- try {
70
- existingPatch = await FSExtra.readFile(ogFile, "utf-8");
71
- } catch (err) {
72
- console.warn("Error reading patch", err);
73
- }
74
- let contentsIn = existingPatch || (FSExtra.existsSync(fullPath) ? await FSExtra.readFile(fullPath, "utf-8") : "");
72
+ const fullPath = join(nodeModuleDir, relativePath);
73
+ if (!process.env.VXRN_FORCE_PATCH && getIsAlreadyPatched(fullPath))
74
+ return;
75
+ let contentsIn = await (async () => pathsBeingPatched.has(fullPath) ? await FSExtra.readFile(fullPath, "utf-8") : getIsAlreadyPatched(fullPath) ? await FSExtra.readFile(getOgFilePath(fullPath), "utf-8") : await FSExtra.readFile(fullPath, "utf-8"))();
75
76
  const write = async (contents) => {
76
- contentsIn = contents, appliedContents.set(ogFile, contents), await Promise.all([
77
- FSExtra.writeFile(ogFile, contentsIn),
78
- FSExtra.writeFile(fullPath, contents)
79
- ]), hasLogged || (hasLogged = !0, console.info(` \u{1FA79} Patching ${patch.module}`)), process.env.DEBUG && console.info(` - Applied patch to ${patch.module}: ${relativePath}`);
77
+ const possibleOrigContents = contentsIn;
78
+ contentsIn = contents;
79
+ const alreadyPatchedPreviouslyInCurrentRun = pathsBeingPatched.has(fullPath);
80
+ pathsBeingPatched.add(fullPath), await Promise.all(
81
+ [
82
+ !alreadyPatchedPreviouslyInCurrentRun && !getIsAlreadyPatched(
83
+ fullPath
84
+ ) && FSExtra.writeFile(getOgFilePath(fullPath), possibleOrigContents),
85
+ FSExtra.writeFile(fullPath, contents)
86
+ ].filter((p) => !!p)
87
+ ), hasLogged || (hasLogged = !0, console.info(` \u{1FA79} Patching ${patch.module}`)), process.env.DEBUG && console.info(` - Applied patch to ${patch.module}: ${relativePath}`);
80
88
  }, patchDefinition = patch.patchFiles[file];
81
89
  if (typeof patchDefinition == "string") {
82
90
  await write(patchDefinition);
@@ -103,7 +111,7 @@ async function applyDependencyPatches(patches, { root = process.cwd() } = {}) {
103
111
  throw err;
104
112
  }
105
113
  })
106
- ), appliedContents.clear();
114
+ );
107
115
  }
108
116
  }
109
117
  } catch (err) {
@@ -112,6 +120,9 @@ async function applyDependencyPatches(patches, { root = process.cwd() } = {}) {
112
120
  }))
113
121
  );
114
122
  }
123
+ function getOgFilePath(fullPath) {
124
+ return fullPath + ".vxrn.ogfile";
125
+ }
115
126
  export {
116
127
  applyBuiltInPatches,
117
128
  applyDependencyPatches,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/patches.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -43,6 +43,13 @@ async function applyOptimizePatches(patches, config) {
43
43
  optimizeDeps
44
44
  }, void 0, !0);
45
45
  }
46
+ const getIsAlreadyPatched = fullFilePath => {
47
+ if (_isAlreadyPatchedMap.has(fullFilePath)) return _isAlreadyPatchedMap.get(fullFilePath);
48
+ const isAlreadyPatched = FSExtra.existsSync(getOgFilePath(fullFilePath));
49
+ return _isAlreadyPatchedMap.set(fullFilePath, isAlreadyPatched), isAlreadyPatched;
50
+ },
51
+ _isAlreadyPatchedMap = /* @__PURE__ */new Map(),
52
+ pathsBeingPatched = /* @__PURE__ */new Set();
46
53
  async function applyDependencyPatches(patches, {
47
54
  root = process.cwd()
48
55
  } = {}) {
@@ -61,21 +68,17 @@ async function applyDependencyPatches(patches, {
61
68
  }
62
69
  for (const file in patch.patchFiles) {
63
70
  if (file === "optimize" || file === "version") continue;
64
- const filesToApply = file.includes("*") ? globDir(nodeModuleDir, file) : [file],
65
- appliedContents = /* @__PURE__ */new Map();
71
+ const filesToApply = file.includes("*") ? globDir(nodeModuleDir, file) : [file];
66
72
  await Promise.all(filesToApply.map(async relativePath => {
67
73
  try {
68
- const fullPath = join(nodeModuleDir, relativePath),
69
- ogFile = fullPath + ".vxrn.ogfile";
70
- let existingPatch = appliedContents.get(ogFile) || null;
71
- if (!existingPatch && !process.env.VXRN_FORCE_PATCH && FSExtra.existsSync(ogFile)) try {
72
- existingPatch = await FSExtra.readFile(ogFile, "utf-8");
73
- } catch (err) {
74
- console.warn("Error reading patch", err);
75
- }
76
- let contentsIn = existingPatch || (FSExtra.existsSync(fullPath) ? await FSExtra.readFile(fullPath, "utf-8") : "");
74
+ const fullPath = join(nodeModuleDir, relativePath);
75
+ if (!process.env.VXRN_FORCE_PATCH && getIsAlreadyPatched(fullPath)) return;
76
+ let contentsIn = await (async () => pathsBeingPatched.has(fullPath) ? await FSExtra.readFile(fullPath, "utf-8") : getIsAlreadyPatched(fullPath) ? await FSExtra.readFile(getOgFilePath(fullPath), "utf-8") : await FSExtra.readFile(fullPath, "utf-8"))();
77
77
  const write = async contents => {
78
- contentsIn = contents, appliedContents.set(ogFile, contents), await Promise.all([FSExtra.writeFile(ogFile, contentsIn), FSExtra.writeFile(fullPath, contents)]), hasLogged || (hasLogged = !0, console.info(` \u{1FA79} Patching ${patch.module}`)), process.env.DEBUG && console.info(` - Applied patch to ${patch.module}: ${relativePath}`);
78
+ const possibleOrigContents = contentsIn;
79
+ contentsIn = contents;
80
+ const alreadyPatchedPreviouslyInCurrentRun = pathsBeingPatched.has(fullPath);
81
+ pathsBeingPatched.add(fullPath), await Promise.all([!alreadyPatchedPreviouslyInCurrentRun && !getIsAlreadyPatched(fullPath) && FSExtra.writeFile(getOgFilePath(fullPath), possibleOrigContents), FSExtra.writeFile(fullPath, contents)].filter(p => !!p)), hasLogged || (hasLogged = !0, console.info(` \u{1FA79} Patching ${patch.module}`)), process.env.DEBUG && console.info(` - Applied patch to ${patch.module}: ${relativePath}`);
79
82
  },
80
83
  patchDefinition = patch.patchFiles[file];
81
84
  if (typeof patchDefinition == "string") {
@@ -100,7 +103,7 @@ async function applyDependencyPatches(patches, {
100
103
  if (err instanceof Bail) return;
101
104
  throw err;
102
105
  }
103
- })), appliedContents.clear();
106
+ }));
104
107
  }
105
108
  }
106
109
  } catch (err) {
@@ -108,5 +111,8 @@ async function applyDependencyPatches(patches, {
108
111
  }
109
112
  })));
110
113
  }
114
+ function getOgFilePath(fullPath) {
115
+ return fullPath + ".vxrn.ogfile";
116
+ }
111
117
  export { applyBuiltInPatches, applyDependencyPatches, applyOptimizePatches, bailIfExists, bailIfUnchanged };
112
118
  //# sourceMappingURL=patches.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["transformFlow","transformSWC","findNodeModules","FSExtra","join","semver","depPatches","globDir","deepMergeOptimizeDeps","Bail","Error","bailIfUnchanged","obj1","obj2","JSON","stringify","bailIfExists","haystack","needle","includes","applyBuiltInPatches","options","extraPatches","all","key","extraPatchFiles","existing","find","x","module","patchKey","patchFiles","console","warn","push","applyDependencyPatches","root","applyOptimizePatches","patches","config","optimizeDeps","include","exclude","needsInterop","forEach","patch","optimize","filter","ssr","process","cwd","nodeModulesDirs","map","relativePath","Promise","flatMap","dir","nodeModuleDir","version","hasLogged","existsSync","pkgJSON","readJSON","satisfies","file","filesToApply","appliedContents","Map","fullPath","ogFile","existingPatch","get","env","VXRN_FORCE_PATCH","readFile","err","contentsIn","write","contents","set","writeFile","info","DEBUG","patchDefinition","Array","isArray","strategy","mode","environment","forceJSX","noHMR","fixNonTypeSpecificImports","code","out","clear","error"],"sources":["../../src/utils/patches.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["transformFlow","transformSWC","findNodeModules","FSExtra","join","semver","depPatches","globDir","deepMergeOptimizeDeps","Bail","Error","bailIfUnchanged","obj1","obj2","JSON","stringify","bailIfExists","haystack","needle","includes","applyBuiltInPatches","options","extraPatches","all","key","extraPatchFiles","existing","find","x","module","patchKey","patchFiles","console","warn","push","applyDependencyPatches","root","applyOptimizePatches","patches","config","optimizeDeps","include","exclude","needsInterop","forEach","patch","optimize","filter","ssr","getIsAlreadyPatched","fullFilePath","_isAlreadyPatchedMap","has","get","isAlreadyPatched","existsSync","getOgFilePath","set","Map","pathsBeingPatched","Set","process","cwd","nodeModulesDirs","map","relativePath","Promise","flatMap","dir","nodeModuleDir","version","hasLogged","pkgJSON","readJSON","satisfies","file","filesToApply","fullPath","env","VXRN_FORCE_PATCH","contentsIn","readFile","write","contents","possibleOrigContents","alreadyPatchedPreviouslyInCurrentRun","add","writeFile","p","info","DEBUG","patchDefinition","Array","isArray","strategy","mode","environment","forceJSX","noHMR","fixNonTypeSpecificImports","code","out","err","error"],"sources":["../../src/utils/patches.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -143,6 +143,13 @@ async function applyOptimizePatches(patches, config) {
143
143
  optimizeDeps
144
144
  }, void 0, !0);
145
145
  }
146
+ var getIsAlreadyPatched = function (fullFilePath) {
147
+ if (_isAlreadyPatchedMap.has(fullFilePath)) return _isAlreadyPatchedMap.get(fullFilePath);
148
+ var isAlreadyPatched = FSExtra.existsSync(getOgFilePath(fullFilePath));
149
+ return _isAlreadyPatchedMap.set(fullFilePath, isAlreadyPatched), isAlreadyPatched;
150
+ },
151
+ _isAlreadyPatchedMap = /* @__PURE__ */new Map(),
152
+ pathsBeingPatched = /* @__PURE__ */new Set();
146
153
  async function applyDependencyPatches(patches) {
147
154
  var {
148
155
  root = process.cwd()
@@ -161,21 +168,23 @@ async function applyDependencyPatches(patches) {
161
168
  if (FSExtra.existsSync(nodeModuleDir)) {
162
169
  var _loop = async function (file2) {
163
170
  if (file2 === "optimize" || file2 === "version") return "continue";
164
- var filesToApply = file2.includes("*") ? globDir(nodeModuleDir, file2) : [file2],
165
- appliedContents = /* @__PURE__ */new Map();
171
+ var filesToApply = file2.includes("*") ? globDir(nodeModuleDir, file2) : [file2];
166
172
  await Promise.all(filesToApply.map(async function (relativePath) {
167
173
  try {
168
- var fullPath = join(nodeModuleDir, relativePath),
169
- ogFile = fullPath + ".vxrn.ogfile",
170
- existingPatch = appliedContents.get(ogFile) || null;
171
- if (!existingPatch && !process.env.VXRN_FORCE_PATCH && FSExtra.existsSync(ogFile)) try {
172
- existingPatch = await FSExtra.readFile(ogFile, "utf-8");
173
- } catch (err) {
174
- console.warn("Error reading patch", err);
175
- }
176
- var contentsIn = existingPatch || (FSExtra.existsSync(fullPath) ? await FSExtra.readFile(fullPath, "utf-8") : ""),
174
+ var fullPath = join(nodeModuleDir, relativePath);
175
+ if (!process.env.VXRN_FORCE_PATCH && getIsAlreadyPatched(fullPath)) return;
176
+ var contentsIn = await async function () {
177
+ return pathsBeingPatched.has(fullPath) ? await FSExtra.readFile(fullPath, "utf-8") : getIsAlreadyPatched(fullPath) ? await FSExtra.readFile(getOgFilePath(fullPath), "utf-8") : await FSExtra.readFile(fullPath, "utf-8");
178
+ }(),
177
179
  write = async function (contents2) {
178
- contentsIn = contents2, appliedContents.set(ogFile, contents2), await Promise.all([FSExtra.writeFile(ogFile, contentsIn), FSExtra.writeFile(fullPath, contents2)]), hasLogged || (hasLogged = !0, console.info(` \u{1FA79} Patching ${patch.module}`)), process.env.DEBUG && console.info(` - Applied patch to ${patch.module}: ${relativePath}`);
180
+ var possibleOrigContents = contentsIn;
181
+ contentsIn = contents2;
182
+ var alreadyPatchedPreviouslyInCurrentRun = pathsBeingPatched.has(fullPath);
183
+ pathsBeingPatched.add(fullPath), await Promise.all([!alreadyPatchedPreviouslyInCurrentRun && /* only write ogfile if this is the first patch, otherwise contentsIn will be already patched content */
184
+ !getIsAlreadyPatched(fullPath) && /* an ogfile must already be there, no need to write */
185
+ FSExtra.writeFile(getOgFilePath(fullPath), possibleOrigContents), FSExtra.writeFile(fullPath, contents2)].filter(function (p) {
186
+ return !!p;
187
+ })), hasLogged || (hasLogged = !0, console.info(` \u{1FA79} Patching ${patch.module}`)), process.env.DEBUG && console.info(` - Applied patch to ${patch.module}: ${relativePath}`);
179
188
  },
180
189
  patchDefinition = patch.patchFiles[file2];
181
190
  if (typeof patchDefinition == "string") {
@@ -219,7 +228,7 @@ async function applyDependencyPatches(patches) {
219
228
  if (err instanceof Bail) return;
220
229
  throw err;
221
230
  }
222
- })), appliedContents.clear();
231
+ }));
223
232
  };
224
233
  if (typeof version == "string") {
225
234
  var pkgJSON = await FSExtra.readJSON(join(nodeModuleDir, "package.json"));
@@ -233,5 +242,8 @@ async function applyDependencyPatches(patches) {
233
242
  });
234
243
  }));
235
244
  }
245
+ function getOgFilePath(fullPath) {
246
+ return fullPath + ".vxrn.ogfile";
247
+ }
236
248
  export { applyBuiltInPatches, applyDependencyPatches, applyOptimizePatches, bailIfExists, bailIfUnchanged };
237
249
  //# sourceMappingURL=patches.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["transformFlow","transformSWC","findNodeModules","FSExtra","join","semver","depPatches","globDir","deepMergeOptimizeDeps","_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","prototype","arguments","o","Object","setPrototypeOf","getPrototypeOf","o2","__proto__","_inherits","subClass","superClass","create","value","writable","configurable","_is_native_function","fn","toString","call","indexOf","_type_of","p","p2","obj","Symbol","_wrap_native_super","_cache","Map","has","get","set","Wrapper","enumerable","result","Boolean","valueOf","Bail","Error1","Bail2","Error","bailIfUnchanged","obj1","obj2","JSON","stringify","bailIfExists","haystack","needle","includes","applyBuiltInPatches","options","extraPatches","all"],"sources":["../../src/utils/patches.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["transformFlow","transformSWC","findNodeModules","FSExtra","join","semver","depPatches","globDir","deepMergeOptimizeDeps","_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","prototype","arguments","o","Object","setPrototypeOf","getPrototypeOf","o2","__proto__","_inherits","subClass","superClass","create","value","writable","configurable","_is_native_function","fn","toString","call","indexOf","_type_of","p","p2","obj","Symbol","_wrap_native_super","_cache","Map","has","get","set","Wrapper","enumerable","result","Boolean","valueOf","Bail","Error1","Bail2","Error","bailIfUnchanged","obj1","obj2","JSON","stringify","bailIfExists","haystack","needle","includes","applyBuiltInPatches","options","extraPatches","all","_loop","key2","extraPatchFiles","existing","find","x","module","patchKey","patchFiles","console","warn"],"sources":["../../src/utils/patches.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxrn",
3
- "version": "1.1.496",
3
+ "version": "1.1.498",
4
4
  "sideEffects": false,
5
5
  "type": "module",
6
6
  "exports": {
@@ -61,17 +61,16 @@
61
61
  "@hono/node-server": "^1.13.7",
62
62
  "@react-native/dev-middleware": "^0.76.5",
63
63
  "@rollup/plugin-node-resolve": "^15.2.3",
64
- "@tamagui/react-native-svg": "^1.127.2",
65
- "@vxrn/compiler": "1.1.496",
66
- "@vxrn/debug": "1.1.496",
67
- "@vxrn/query-string": "1.1.496",
68
- "@vxrn/react-native-prebuilt": "1.1.496",
69
- "@vxrn/resolve": "1.1.496",
70
- "@vxrn/safe-area": "1.1.496",
71
- "@vxrn/url-parse": "1.1.496",
72
- "@vxrn/utils": "1.1.496",
73
- "@vxrn/vendor": "1.1.496",
74
- "@vxrn/vite-flow": "1.1.496",
64
+ "@vxrn/compiler": "1.1.498",
65
+ "@vxrn/debug": "1.1.498",
66
+ "@vxrn/query-string": "1.1.498",
67
+ "@vxrn/react-native-prebuilt": "1.1.498",
68
+ "@vxrn/resolve": "1.1.498",
69
+ "@vxrn/safe-area": "1.1.498",
70
+ "@vxrn/url-parse": "1.1.498",
71
+ "@vxrn/utils": "1.1.498",
72
+ "@vxrn/vendor": "1.1.498",
73
+ "@vxrn/vite-flow": "1.1.498",
75
74
  "citty": "^0.1.6",
76
75
  "env-editor": "^1.1.0",
77
76
  "es-module-lexer": "^1.3.0",
@@ -96,6 +96,34 @@ export async function applyOptimizePatches(patches: DepPatch[], config: UserConf
96
96
  deepMergeOptimizeDeps(config.ssr!, { optimizeDeps }, undefined, true)
97
97
  }
98
98
 
99
+ // --- HACK! ---
100
+ // These originally lives inside applyDependencyPatches
101
+ // but we can't be sure that `applyDependencyPatches` will only be called
102
+ // once, at least one is calling applyDependencyPatches directly, in fixDependenciesPlugin.ts
103
+ /**
104
+ * Determine if a file has already been patched by a previous run.
105
+ *
106
+ * We need this to be cached not only for performance but also for the
107
+ * fact that we may patch the same file multiple times but the "ogfile"
108
+ * will be created during the first patching.
109
+ */
110
+ const getIsAlreadyPatched = (fullFilePath: string) => {
111
+ if (_isAlreadyPatchedMap.has(fullFilePath)) {
112
+ return _isAlreadyPatchedMap.get(fullFilePath)
113
+ }
114
+ const isAlreadyPatched = FSExtra.existsSync(getOgFilePath(fullFilePath))
115
+ _isAlreadyPatchedMap.set(fullFilePath, isAlreadyPatched)
116
+ return isAlreadyPatched
117
+ }
118
+ const _isAlreadyPatchedMap = new Map<string, boolean>()
119
+
120
+ /**
121
+ * A set of full paths to files that have been patched during the
122
+ * current run.
123
+ */
124
+ const pathsBeingPatched = new Set<string>()
125
+ // --- HACK! ---
126
+
99
127
  export async function applyDependencyPatches(
100
128
  patches: DepPatch[],
101
129
  { root = process.cwd() }: { root?: string } = {}
@@ -127,44 +155,50 @@ export async function applyDependencyPatches(
127
155
  }
128
156
 
129
157
  const filesToApply = file.includes('*') ? globDir(nodeModuleDir, file) : [file]
130
- const appliedContents = new Map<string, string>()
131
158
 
132
159
  await Promise.all(
133
160
  filesToApply.map(async (relativePath) => {
134
161
  try {
135
162
  const fullPath = join(nodeModuleDir, relativePath)
136
- const ogFile = fullPath + '.vxrn.ogfile'
137
-
138
- // for any update we store an "og" file to compare and decide if we need to run again
139
- let existingPatch: string | null = appliedContents.get(ogFile) || null
140
-
141
- if (!existingPatch) {
142
- if (!process.env.VXRN_FORCE_PATCH) {
143
- if (FSExtra.existsSync(ogFile)) {
144
- try {
145
- // for some reason with bun install this would say it exists? but then fail here?
146
- existingPatch = await FSExtra.readFile(ogFile, 'utf-8')
147
- } catch (err) {
148
- console.warn(`Error reading patch`, err)
149
- }
150
- }
151
- }
163
+
164
+ if (!process.env.VXRN_FORCE_PATCH && getIsAlreadyPatched(fullPath)) {
165
+ // if the file is already patched, skip it
166
+ return
152
167
  }
153
168
 
154
- let contentsIn =
155
- existingPatch ||
156
- (FSExtra.existsSync(fullPath)
157
- ? await FSExtra.readFile(fullPath, 'utf-8')
158
- : '')
169
+ let contentsIn = await (async () => {
170
+ if (pathsBeingPatched.has(fullPath)) {
171
+ // If the file has been patched during the current run,
172
+ // we should always start from the already patched file
173
+ return await FSExtra.readFile(fullPath, 'utf-8')
174
+ }
175
+
176
+ if (getIsAlreadyPatched(fullPath)) {
177
+ // If a original file exists, we should start from it
178
+ // If we can reach here, basically it means
179
+ // VXRN_FORCE_PATCH is set
180
+ return await FSExtra.readFile(getOgFilePath(fullPath), 'utf-8')
181
+ }
182
+
183
+ return await FSExtra.readFile(fullPath, 'utf-8')
184
+ })()
159
185
 
160
186
  const write = async (contents: string) => {
187
+ const possibleOrigContents = contentsIn
161
188
  // update contentsIn so the next patch gets the new value if it runs multiple
162
189
  contentsIn = contents
163
- appliedContents.set(ogFile, contents)
164
- await Promise.all([
165
- FSExtra.writeFile(ogFile, contentsIn),
166
- FSExtra.writeFile(fullPath, contents),
167
- ])
190
+ const alreadyPatchedPreviouslyInCurrentRun = pathsBeingPatched.has(fullPath)
191
+ pathsBeingPatched.add(fullPath)
192
+ await Promise.all(
193
+ [
194
+ !alreadyPatchedPreviouslyInCurrentRun /* only write ogfile if this is the first patch, otherwise contentsIn will be already patched content */ &&
195
+ !getIsAlreadyPatched(
196
+ fullPath
197
+ ) /* an ogfile must already be there, no need to write */ &&
198
+ FSExtra.writeFile(getOgFilePath(fullPath), possibleOrigContents),
199
+ FSExtra.writeFile(fullPath, contents),
200
+ ].filter((p) => !!p)
201
+ )
168
202
 
169
203
  if (!hasLogged) {
170
204
  hasLogged = true
@@ -226,8 +260,6 @@ export async function applyDependencyPatches(
226
260
  }
227
261
  })
228
262
  )
229
-
230
- appliedContents.clear()
231
263
  }
232
264
  }
233
265
  } catch (err) {
@@ -238,3 +270,14 @@ export async function applyDependencyPatches(
238
270
  })
239
271
  )
240
272
  }
273
+
274
+ /**
275
+ * For every patch we store an "og" file as a backup of the original.
276
+ * If such file exists, we can skip the patching since the
277
+ * file should be already patched, unless the user forces
278
+ * to apply the patch again - in such case we use the
279
+ * contents of the original file as a base to reapply patches.
280
+ */
281
+ function getOgFilePath(fullPath: string) {
282
+ return fullPath + '.vxrn.ogfile'
283
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"patches.d.ts","sourceRoot":"","sources":["../../src/utils/patches.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAEtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAI3D,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,CAAA;AAExC,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAEzD,MAAM,MAAM,eAAe,GACvB,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,GAC/D,MAAM,GACN,UAAU,EAAE,CAAA;AAEhB,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE;QAAE,QAAQ,CAAC,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,CAAA;CAC9F,CAAA;AAID,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,QAInD;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAI5D;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA;AAEzE,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,iBAAiB,EAC1B,YAAY,CAAC,EAAE,oBAAoB,iBAuBpC;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,iBA2BjF;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,QAAQ,EAAE,EACnB,EAAE,IAAoB,EAAE,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,iBA2IjD"}
1
+ {"version":3,"file":"patches.d.ts","sourceRoot":"","sources":["../../src/utils/patches.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAEtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAI3D,KAAK,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,CAAA;AAExC,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAA;AAEzD,MAAM,MAAM,eAAe,GACvB,CAAC,CAAC,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,GAC/D,MAAM,GACN,UAAU,EAAE,CAAA;AAEhB,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE;QAAE,QAAQ,CAAC,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,CAAA;CAC9F,CAAA;AAID,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,QAInD;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAI5D;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA;AAEzE,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,iBAAiB,EAC1B,YAAY,CAAC,EAAE,oBAAoB,iBAuBpC;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,iBA2BjF;AA8BD,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,QAAQ,EAAE,EACnB,EAAE,IAAoB,EAAE,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,iBA+IjD"}