diff --git a/.prettierignore b/.prettierignore new file mode 100644 index 0000000..58afc3d --- /dev/null +++ b/.prettierignore @@ -0,0 +1,2 @@ +dist/www/detect-webview-engine.js +package-lock.json diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..8f8a4ac --- /dev/null +++ b/.prettierrc @@ -0,0 +1,5 @@ +{ + "singleQuote": true, + "printWidth": 140, + "useTabs": false +} diff --git a/.versionrc.json b/.versionrc.json new file mode 100644 index 0000000..f2257ad --- /dev/null +++ b/.versionrc.json @@ -0,0 +1,58 @@ +{ + "scripts": { + "prebump": "node scripts/patch-plugin-xml-version.js", + "precommit": "git add plugin.xml", + "postchangelog": "npx prettier --write CHANGELOG.md" + }, + "types": [ + { + "type": "feat", + "section": "Features" + }, + { + "type": "fix", + "section": "Bug Fixes" + }, + { + "type": "perf", + "section": "Performance Improvements" + }, + { + "type": "revert", + "section": "Reverts" + }, + { + "type": "docs", + "section": "Documentation", + "hidden": true + }, + { + "type": "style", + "section": "Styles", + "hidden": true + }, + { + "type": "chore", + "section": "Miscellaneous Chores", + "hidden": true + }, + { + "type": "refactor", + "section": "Code Refactoring" + }, + { + "type": "test", + "section": "Tests", + "hidden": true + }, + { + "type": "build", + "section": "Build System" + }, + { + "type": "ci", + "section": "Continuous Integration", + "hidden": true + } + ] +} diff --git a/package-lock.json b/package-lock.json index 9dbe71d..1a73a38 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1508,6 +1508,12 @@ "pinkie": "^2.0.0" } }, + "prettier": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", + "dev": true + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", diff --git a/package.json b/package.json index a71978a..283a54d 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ }, "devDependencies": { "@types/cordova": "^0.0.34", + "prettier": "^1.19.1", "standard-version": "^7.0.1", "tslint": "^5.20.1", "typescript": "^3.7.4" diff --git a/scripts/patch-plugin-xml-version.js b/scripts/patch-plugin-xml-version.js new file mode 100644 index 0000000..f0b59b2 --- /dev/null +++ b/scripts/patch-plugin-xml-version.js @@ -0,0 +1,35 @@ +const packageJson = require('../package.json'); +const conventionalRecommendedBump = require('conventional-recommended-bump'); +const semver = require('semver'); +const replace = require('replace'); + +const getNextVersion = currentVersion => { + return new Promise((resolve, reject) => { + conventionalRecommendedBump( + { + preset: 'angular' + }, + (err, release) => { + if (err) { + reject(err); + return; + } + + const nextVersion = semver.valid(release.releaseType) || semver.inc(currentVersion, release.releaseType); + + resolve(nextVersion); + } + ); + }); +}; + +getNextVersion(packageJson.version) + .then(version => { + replace({ + regex: /(id="[\w\.-]+" version=")([\w\.-]+)(")/, + replacement: `$1${version}$3`, + paths: ['./plugin.xml'], + silent: true + }); + }) + .catch(error => console.log(error));