Autogenerate src/ol/package.json from package.json

This commit is contained in:
ahocevar
2018-07-08 18:39:59 +02:00
parent 9ddd7e4751
commit afec93ae62
5 changed files with 31 additions and 40 deletions

27
tasks/prepare-package.js Normal file
View File

@@ -0,0 +1,27 @@
const fs = require('fs');
const path = require('path');
const pkg = require('../package.json');
const util = require.resolve('../src/ol/util');
const lines = fs.readFileSync(util, 'utf-8').split('\n');
const versionRegEx = /const VERSION = '(.*)';$/;
for (let i = 0, ii = lines.length; i < ii; ++i) {
const line = lines[i];
if (versionRegEx.test(line)) {
lines[i] = line.replace(versionRegEx, `const VERSION = '${pkg.version}';`);
break;
}
}
fs.writeFileSync(util, lines.join('\n'), 'utf-8');
const src = path.join('src', 'ol');
const packageJson = path.resolve(__dirname, path.join('..', src, 'package.json'));
delete pkg.scripts;
delete pkg.devDependencies;
delete pkg.style;
delete pkg.eslintConfig;
const main = path.posix.relative(src, require.resolve(path.join('..', pkg.main)));
pkg.main = pkg.module = main;
pkg.name = 'ol';
fs.writeFileSync(packageJson, JSON.stringify(pkg, null, 2), 'utf-8');

View File

@@ -1,23 +0,0 @@
const fs = require('fs');
const pkg = require('../package.json');
const index = require.resolve('../src/ol/util');
const lines = fs.readFileSync(index, 'utf-8').split('\n');
const versionRegEx = /const VERSION = '(.*)';$/;
for (let i = 0, ii = lines.length; i < ii; ++i) {
const line = lines[i];
if (versionRegEx.test(line)) {
lines[i] = line.replace(versionRegEx, `const VERSION = '${pkg.version}';`);
break;
}
}
const packageJson = require.resolve('../src/ol/package.json');
const packageJsonObj = JSON.parse(fs.readFileSync(packageJson, 'utf-8'));
packageJsonObj.version = pkg.version;
fs.writeFileSync(packageJson, JSON.stringify(packageJsonObj, null, 2), 'utf-8');
fs.writeFileSync(index, lines.join('\n'), 'utf-8');