Skip to content

Instantly share code, notes, and snippets.

@kibolho
Created December 6, 2022 00:04
Show Gist options
  • Select an option

  • Save kibolho/28922610fc3016bf64215ec8748d9483 to your computer and use it in GitHub Desktop.

Select an option

Save kibolho/28922610fc3016bf64215ec8748d9483 to your computer and use it in GitHub Desktop.
Remove dependency from yarn lock
// add to package.json
// "postinstall": "node scripts/removeDependencyFromYarnLock.js"
const fs = require('fs');
const FILE_SRC = 'yarn.lock';
const REPLACE = '';
const replace = (path, opts = 'utf8') =>
new Promise((resolve, reject) => {
fs.readFile(path, opts, (error, data) => {
if (error) {
reject(error);
} else {
const updatedData = data.replace(
new RegExp(
/\n\"@react-native-picker\/picker@\^1.8.3\":\n. version \"1.16.8\"\n {2}resolved \"https:\/\/registry.yarnpkg.com\/@react-native-picker\/picker\/-\/picker-1.16.8.tgz#2126ca54d4a5a3e9ea5e3f39ad1e6643f8e4b3d4\"\n {2}integrity sha512-pacdQDX6V6EmjF\+HoiIh6u\+\+qx4mTK0WnhgUHRc01B\+Qt5eoeUwseBqmqfTSXTx\/aHDEd6PiIw7UGvKgFoqgFQ==\n/g,
),
REPLACE,
);
resolve(updatedData);
}
});
});
const updateFile = (path, input) =>
new Promise((resolve, reject) => {
fs.writeFile(path, input, (error) => {
if (error) {
reject(error);
}
resolve('Removing @react-native-picker/picker wrong version');
});
});
replace(FILE_SRC)
.then((data) => updateFile(FILE_SRC, data).then((res) => console.log(res)))
.catch((error) => console.log('Something went wrong', error));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment