|
|
|
const fs = require('fs')
|
|
|
|
const Zip = require('adm-zip')
|
|
|
|
|
|
|
|
const currentVersion = JSON.parse(fs.readFileSync('./src/package.json')).version
|
|
|
|
|
|
|
|
const version = process.argv[2]
|
|
|
|
|
|
|
|
if (!version) {
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
console.error(
|
|
|
|
`No version number specified. Current version is ${currentVersion}.`
|
|
|
|
)
|
|
|
|
|
|
|
|
process.exit(1)
|
|
|
|
}
|
|
|
|
|
|
|
|
;[
|
|
|
|
'./src/package.json',
|
|
|
|
'./src/drivers/npm/package.json',
|
|
|
|
'./src/drivers/webextension/manifest-v2.json',
|
|
|
|
'./src/drivers/webextension/manifest-v3.json',
|
|
|
|
].forEach((file) => {
|
|
|
|
const json = JSON.parse(fs.readFileSync(file))
|
|
|
|
|
|
|
|
json.version = version
|
|
|
|
|
|
|
|
fs.writeFileSync(file, JSON.stringify(json, null, 2))
|
|
|
|
})
|
|
|
|
|
|
|
|
fs.copyFileSync(
|
|
|
|
`./src/drivers/webextension/manifest.json`,
|
|
|
|
'./src/drivers/webextension/manifest.bak.json'
|
|
|
|
)
|
|
|
|
|
|
|
|
fs.copyFileSync(
|
|
|
|
`./src/drivers/webextension/manifest-v2.json`,
|
|
|
|
'./src/drivers/webextension/manifest.json'
|
|
|
|
)
|
|
|
|
|
|
|
|
let zip = new Zip()
|
|
|
|
|
|
|
|
zip.addLocalFolder('./src/drivers/webextension', '')
|
|
|
|
|
|
|
|
zip.writeZip('./build/webextension-v2.zip')
|
|
|
|
|
|
|
|
fs.copyFileSync(
|
|
|
|
`./src/drivers/webextension/manifest-v3.json`,
|
|
|
|
'./src/drivers/webextension/manifest.json'
|
|
|
|
)
|
|
|
|
|
|
|
|
zip = new Zip()
|
|
|
|
|
|
|
|
zip.addLocalFolder('./src/drivers/webextension', '')
|
|
|
|
|
|
|
|
zip.writeZip('./build/webextension-v3.zip')
|
|
|
|
|
|
|
|
fs.copyFileSync(
|
|
|
|
`./src/drivers/webextension/manifest.bak.json`,
|
|
|
|
'./src/drivers/webextension/manifest.json'
|
|
|
|
)
|