diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 78582dc..404f339 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -35,7 +35,7 @@ jobs: npm install - if: steps.check.outputs.versionChanged == 'true' - run: npm publish --access public + run: npm run publish env: NODE_AUTH_TOKEN: ${{secrets.NPM_PUBLISH_TOKEN}} diff --git a/package.json b/package.json index 0be7314..98c79a9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "react-vnc", - "version": "0.1.5", + "version": "0.1.6", "description": "A React Component to connect to a websockified VNC client using noVNC.", "author": "roerohan", "license": "MIT", @@ -35,7 +35,8 @@ "test": "react-scripts test", "eject": "react-scripts eject", "build:lib": "rollup -c", - "prepack": "npm run build:lib" + "prepack": "npm run build:lib", + "publish": "npm run build:lib && cp README.md LICENSE dist/ && cd dist && npm publish" }, "eslintConfig": { "extends": [ diff --git a/rollup.config.js b/rollup.config.js index 7a239ba..7061319 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,5 +1,32 @@ import pkg from './package.json'; import typescript from 'rollup-plugin-typescript2'; +import fs from 'fs'; + +const { + react, + 'react-scripts': reactScripts, + 'react-dom': reactDom, + ...dependencies +} = pkg.dependencies; + +const peerDependencies = { + react: '>=16.0.0', + 'react-scripts': reactScripts, + 'react-dom': '>=16.0.0', +}; + +fs.writeFileSync('./dist/package.json', JSON.stringify({ + name: pkg.name, + description: pkg.description, + version: pkg.version, + private: false, + main: pkg.main.replace(/dist\//ig, ''), + typings: pkg.typings.replace(/dist\//ig, ''), + publishConfig: pkg.publishConfig, + keywords: pkg.keywords, + dependencies, + peerDependencies, +}, null, 4)); export default { input: pkg.source,