cordova-plugin-webpack
Advanced tools
Comparing version 0.0.2 to 0.1.0
{ | ||
"name": "cordova-plugin-webpack", | ||
"version": "0.0.2", | ||
"version": "0.1.0", | ||
"description": "Cordova Webpack Plugin", | ||
@@ -14,6 +14,9 @@ "cordova": { | ||
"scripts": { | ||
"upgrade-interactive": "npm-check --update", | ||
"precommit": "lint-staged", | ||
"prepare": "npm run build", | ||
"build": "rimraf scripts/* && babili src --out-dir scripts", | ||
"lint": "eslint 'scripts/**/*.js'" | ||
"build": "rimraf scripts/* && tsc && webpack", | ||
"lint": "eslint '**/*.{js,ts}'", | ||
"lint:fix": "npm run lint -- --fix", | ||
"commit": "commit" | ||
}, | ||
@@ -39,55 +42,54 @@ "repository": { | ||
"dependencies": { | ||
"webpack": "^4.6.0" | ||
"@types/elementtree": "^0.1.0", | ||
"@types/node": "^12.0.0", | ||
"@types/webpack": "^4.4.31", | ||
"@types/webpack-dev-server": "^3.1.5", | ||
"cordova-common": "^3.1.0", | ||
"csp-parse": "0.0.2", | ||
"current-device": "^0.8.0", | ||
"elementtree": "^0.1.7", | ||
"express": "^4.16.4", | ||
"glob": "^7.1.4", | ||
"source-map-support": "^0.5.12", | ||
"webpack": "^4.31.0", | ||
"webpack-dev-server": "^3.3.1", | ||
"webpack-inject-plugin": "^1.5.0" | ||
}, | ||
"devDependencies": { | ||
"babel-preset-env": "^1.6.1", | ||
"babili": "^0.1.4", | ||
"eslint": "^4.19.1", | ||
"eslint-config-airbnb": "^16.1.0", | ||
"@commitlint/cli": "^7.6.0", | ||
"@commitlint/config-conventional": "^7.6.0", | ||
"@commitlint/prompt-cli": "^7.6.1", | ||
"@typescript-eslint/eslint-plugin": "^1.7.0", | ||
"eslint": "^5.16.0", | ||
"eslint-config-airbnb-base": "^13.1.0", | ||
"eslint-config-prettier": "^2.9.0", | ||
"eslint-plugin-import": "^2.11.0", | ||
"eslint-plugin-jsx-a11y": "^6.0.3", | ||
"eslint-plugin-prettier": "^2.6.0", | ||
"eslint-plugin-react": "^7.7.0", | ||
"husky": "^0.14.3", | ||
"lint-staged": "^7.0.5", | ||
"prettier": "^1.12.1", | ||
"rimraf": "^2.6.2" | ||
"eslint-plugin-import": "^2.17.2", | ||
"eslint-plugin-prettier": "^3.0.1", | ||
"husky": "^2.2.0", | ||
"lint-staged": "^8.1.6", | ||
"npm-check": "^5.9.0", | ||
"prettier": "^1.17.0", | ||
"rimraf": "^2.6.3", | ||
"ts-loader": "^6.0.0", | ||
"typescript": "^3.4.5", | ||
"webpack-cli": "^3.3.2" | ||
}, | ||
"babel": { | ||
"presets": [ | ||
[ | ||
"env", | ||
{ | ||
"targets": { | ||
"node": "4.2.0" | ||
} | ||
} | ||
] | ||
] | ||
}, | ||
"eslintConfig": { | ||
"extends": [ | ||
"airbnb", | ||
"prettier" | ||
], | ||
"plugins": [ | ||
"prettier" | ||
], | ||
"rules": { | ||
"prettier/prettier": [ | ||
"error", | ||
{ | ||
"singleQuote": true, | ||
"trailingComma": "es5" | ||
} | ||
] | ||
"husky": { | ||
"hooks": { | ||
"pre-commit": "lint-staged", | ||
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS" | ||
} | ||
}, | ||
"lint-staged": { | ||
"scripts/**/*.js": [ | ||
"npm run lint -- --fix", | ||
"git add" | ||
"linters": { | ||
"*.{js,ts}": [ | ||
"npm run lint:fix", | ||
"git add" | ||
] | ||
}, | ||
"ignore": [ | ||
"node_modules/**", | ||
"scripts/**" | ||
] | ||
} | ||
} |
@@ -9,3 +9,3 @@ # cordova-plugin-webpack | ||
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) | ||
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/dwyl/esta/issues) | ||
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/kotarella1110/cordova-plugin-webpack/issues) | ||
@@ -16,22 +16,33 @@ This plugin integrates [webpack](https://webpack.js.org "webpack") into your Cordova workflow. | ||
``` | ||
```shell | ||
cordova plugin add cordova-plugin-webpack | ||
``` | ||
You can bundle using webpack you installed. | ||
By default, the this plugin's webpack is used. | ||
## Usage | ||
### Create the App | ||
```shell | ||
$ cordova create cordova-plugin-webpack-example cordova.plugin.webpack.example CordovaPluginWebpackExample | ||
$ cd cordova-plugin-webpack-example | ||
``` | ||
npm install webpack | ||
cordova plugin add cordova-plugin-webpack | ||
### Add Platforms | ||
```shell | ||
$ cordova platform add android ios | ||
``` | ||
## Usage | ||
### Add Plugin | ||
**Just create _webpack.config.js_ file in project root!** | ||
```shell | ||
$ cordova plugin add cordova-plugin-webpack | ||
``` | ||
Example: | ||
### Create webpack configuration file | ||
_webpack.config.js_ | ||
**Just create a `webpack.config.js` file in the project root folder!** | ||
`webpack.config.js`: | ||
```js | ||
@@ -41,7 +52,9 @@ const path = require('path'); | ||
module.exports = { | ||
entry: './src/entry.js', | ||
mode: 'development' | ||
entry: './src/index.js', | ||
output: { | ||
path: path.resolve(__dirname, 'www'), | ||
filename: 'bundle.js' | ||
} | ||
filename: 'index.bundle.js' | ||
}, | ||
devtool: 'inline-source-map', | ||
}; | ||
@@ -52,15 +65,42 @@ ``` | ||
### Fix HTML file | ||
`www/index.html`: | ||
```diff | ||
# | ||
- <script type="text/javascript" src="js/index.js"></script> | ||
+ <script type="text/javascript" src="index.bundle.js"></script> | ||
``` | ||
### Build the App | ||
Before preparing your application, it is bundled with webpack. | ||
※ Specifically, to be bundlled before executing the following cordova commands. | ||
``` | ||
$ cordova build | ||
``` | ||
- `cordova prepare` | ||
- `cordova platform add` | ||
- `cordova build` | ||
- `cordova run` | ||
Processing flow: | ||
`webpack compile` > `cordova prepare` > `cordova compile` | ||
### Live Reload (Hot Module Replacement) the App | ||
``` | ||
$ cordova prepare -- --livereload | ||
$ cordova build -- --livereload | ||
$ cordova run -- --livereload | ||
``` | ||
Processing flow: | ||
`webpack compile` > `cordova prepare` > `webpack serve` > `cordova compile` | ||
## TODO | ||
- [x] Bundle with webpack before preparing. | ||
- [ ] Live Reload (Hot Module Replacement) with webpack-dev-server. | ||
- [x] Live Reload (Hot Module Replacement) with webpack-dev-server. | ||
- [x] Emulator | ||
- [ ] Device | ||
@@ -73,2 +113,2 @@ ## License | ||
This plugin was created in 2018 by Kotaro Sugawara. | ||
This plugin was created in 2018 by Kotaro Sugawara. |
@@ -1,1 +0,33 @@ | ||
const path=require('path'),webpack=require('./vendor/webpack');module.exports=(a)=>{const b=a.requireCordovaModule('q').defer(),c=path.resolve(a.opts.projectRoot,'webpack.config.js'),d=require(c),e=webpack(d);return e.run((a,c)=>{a&&b.reject(a),console.log(c.toString({chunks:!1,colors:!0})),b.resolve()}),b.promise}; | ||
"use strict"; | ||
var __importStar = (this && this.__importStar) || function (mod) { | ||
if (mod && mod.__esModule) return mod; | ||
var result = {}; | ||
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; | ||
result["default"] = mod; | ||
return result; | ||
}; | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
require("source-map-support/register"); | ||
var path = __importStar(require("path")); | ||
var webpack_1 = __importDefault(require("webpack")); | ||
module.exports = function (ctx) { | ||
return new Promise(function (resolve, reject) { | ||
var webpackConfigPath = path.resolve(ctx.opts.projectRoot, 'webpack.config.js'); | ||
var webpackConfig = require(webpackConfigPath); | ||
var compiler = webpack_1.default(webpackConfig); | ||
compiler.run(function (err, stats) { | ||
if (err) { | ||
reject(err); | ||
} | ||
console.log(stats.toString({ | ||
chunks: false, | ||
colors: true, | ||
})); | ||
resolve(); | ||
}); | ||
}); | ||
}; | ||
//# sourceMappingURL=webpackCompile.js.map |
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Empty package
Supply chain riskPackage does not contain any code. It may be removed, is name squatting, or the result of a faulty package publish.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
74213
19
594
1
110
14
17
3
+ Added@types/elementtree@^0.1.0
+ Added@types/node@^12.0.0
+ Added@types/webpack@^4.4.31
+ Addedcordova-common@^3.1.0
+ Addedcsp-parse@0.0.2
+ Addedcurrent-device@^0.8.0
+ Addedelementtree@^0.1.7
+ Addedexpress@^4.16.4
+ Addedglob@^7.1.4
+ Addedsource-map-support@^0.5.12
+ Addedwebpack-dev-server@^3.3.1
+ Addedwebpack-inject-plugin@^1.5.0
+ Added@types/body-parser@1.19.5(transitive)
+ Added@types/connect@3.4.38(transitive)
+ Added@types/connect-history-api-fallback@1.5.4(transitive)
+ Added@types/elementtree@0.1.5(transitive)
+ Added@types/express@4.17.21(transitive)
+ Added@types/express-serve-static-core@4.19.0(transitive)
+ Added@types/glob@7.2.0(transitive)
+ Added@types/http-errors@2.0.4(transitive)
+ Added@types/http-proxy@1.17.14(transitive)
+ Added@types/mime@1.3.5(transitive)
+ Added@types/minimatch@5.1.2(transitive)
+ Added@types/node@12.20.55(transitive)
+ Added@types/qs@6.9.15(transitive)
+ Added@types/range-parser@1.2.7(transitive)
+ Added@types/send@0.17.4(transitive)
+ Added@types/serve-static@1.15.7(transitive)
+ Added@types/source-list-map@0.1.6(transitive)
+ Added@types/tapable@1.0.12(transitive)
+ Added@types/uglify-js@3.17.5(transitive)
+ Added@types/webpack@4.41.38(transitive)
+ Added@types/webpack-dev-server@3.11.6(transitive)
+ Added@types/webpack-sources@3.2.3(transitive)
+ Added@xmldom/xmldom@0.8.10(transitive)
+ Addedaccepts@1.3.8(transitive)
+ Addedansi@0.3.1(transitive)
+ Addedansi-colors@3.2.4(transitive)
+ Addedansi-html-community@0.0.8(transitive)
+ Addedansi-regex@2.1.14.1.1(transitive)
+ Addedansi-styles@3.2.1(transitive)
+ Addedarray-flatten@1.1.12.1.2(transitive)
+ Addedarray-union@1.0.2(transitive)
+ Addedarray-uniq@1.0.3(transitive)
+ Addedasync@2.6.4(transitive)
+ Addedasync-limiter@1.0.1(transitive)
+ Addedbatch@0.6.1(transitive)
+ Addedbig-integer@1.6.52(transitive)
+ Addedbody-parser@1.20.2(transitive)
+ Addedbonjour@3.5.0(transitive)
+ Addedbplist-parser@0.1.1(transitive)
+ Addedbuffer-indexof@1.1.1(transitive)
+ Addedbytes@3.0.03.1.2(transitive)
+ Addedcamelcase@5.3.1(transitive)
+ Addedcliui@5.0.0(transitive)
+ Addedcolor-convert@1.9.3(transitive)
+ Addedcolor-name@1.1.3(transitive)
+ Addedcompressible@2.0.18(transitive)
+ Addedcompression@1.7.4(transitive)
+ Addedconnect-history-api-fallback@1.6.0(transitive)
+ Addedcontent-disposition@0.5.4(transitive)
+ Addedcontent-type@1.0.5(transitive)
+ Addedcookie@0.6.0(transitive)
+ Addedcookie-signature@1.0.6(transitive)
+ Addedcordova-common@3.2.1(transitive)
+ Addedcross-spawn@6.0.5(transitive)
+ Addedcsp-parse@0.0.2(transitive)
+ Addedcurrent-device@0.8.2(transitive)
+ Addeddebug@3.2.74.3.4(transitive)
+ Addeddecamelize@1.2.0(transitive)
+ Addeddedent@0.7.0(transitive)
+ Addeddeep-equal@1.1.2(transitive)
+ Addeddefault-gateway@4.2.0(transitive)
+ Addeddel@4.1.1(transitive)
+ Addeddepd@1.1.22.0.0(transitive)
+ Addeddestroy@1.2.0(transitive)
+ Addeddetect-node@2.1.0(transitive)
+ Addeddns-equal@1.0.0(transitive)
+ Addeddns-packet@1.3.4(transitive)
+ Addeddns-txt@2.0.2(transitive)
+ Addedee-first@1.1.1(transitive)
+ Addedelementtree@0.1.7(transitive)
+ Addedemoji-regex@7.0.3(transitive)
+ Addedemojis-list@2.1.0(transitive)
+ Addedencodeurl@1.0.2(transitive)
+ Addedendent@1.4.1(transitive)
+ Addedescape-html@1.0.3(transitive)
+ Addedetag@1.8.1(transitive)
+ Addedeventemitter3@4.0.7(transitive)
+ Addedeventsource@2.0.2(transitive)
+ Addedexeca@1.0.0(transitive)
+ Addedexpress@4.19.2(transitive)
+ Addedfast-json-parse@1.0.3(transitive)
+ Addedfaye-websocket@0.11.4(transitive)
+ Addedfinalhandler@1.2.0(transitive)
+ Addedfollow-redirects@1.15.6(transitive)
+ Addedforwarded@0.2.0(transitive)
+ Addedfresh@0.5.2(transitive)
+ Addedfs-extra@8.1.0(transitive)
+ Addedfunctions-have-names@1.2.3(transitive)
+ Addedget-caller-file@2.0.5(transitive)
+ Addedget-stream@4.1.0(transitive)
+ Addedglobby@6.1.0(transitive)
+ Addedhandle-thing@2.0.1(transitive)
+ Addedhas-flag@3.0.0(transitive)
+ Addedhas-tostringtag@1.0.2(transitive)
+ Addedhpack.js@2.1.6(transitive)
+ Addedhtml-entities@1.4.0(transitive)
+ Addedhttp-deceiver@1.2.7(transitive)
+ Addedhttp-errors@1.6.32.0.0(transitive)
+ Addedhttp-parser-js@0.5.8(transitive)
+ Addedhttp-proxy@1.18.1(transitive)
+ Addedhttp-proxy-middleware@0.19.11.3.1(transitive)
+ Addediconv-lite@0.4.24(transitive)
+ Addedimport-local@2.0.0(transitive)
+ Addedinternal-ip@4.3.0(transitive)
+ Addedip@1.1.9(transitive)
+ Addedip-regex@2.1.0(transitive)
+ Addedipaddr.js@1.9.1(transitive)
+ Addedis-absolute-url@3.0.3(transitive)
+ Addedis-arguments@1.1.1(transitive)
+ Addedis-date-object@1.0.5(transitive)
+ Addedis-fullwidth-code-point@2.0.0(transitive)
+ Addedis-path-cwd@2.2.0(transitive)
+ Addedis-path-in-cwd@2.1.0(transitive)
+ Addedis-path-inside@2.1.0(transitive)
+ Addedis-plain-obj@3.0.0(transitive)
+ Addedis-regex@1.1.4(transitive)
+ Addedis-stream@1.1.0(transitive)
+ Addedisexe@2.0.0(transitive)
+ Addedjsonfile@4.0.0(transitive)
+ Addedkillable@1.0.1(transitive)
+ Addedloader-utils@1.2.3(transitive)
+ Addedlodash@4.17.21(transitive)
+ Addedloglevel@1.9.1(transitive)
+ Addedmedia-typer@0.3.0(transitive)
+ Addedmerge-descriptors@1.0.1(transitive)
+ Addedmethods@1.1.2(transitive)
+ Addedmicromatch@4.0.5(transitive)
+ Addedmime@1.6.02.6.0(transitive)
+ Addedmime-db@1.52.0(transitive)
+ Addedmime-types@2.1.35(transitive)
+ Addedms@2.1.22.1.3(transitive)
+ Addedmulticast-dns@6.2.3(transitive)
+ Addedmulticast-dns-service-types@1.1.0(transitive)
+ Addednegotiator@0.6.3(transitive)
+ Addednice-try@1.0.5(transitive)
+ Addednode-forge@0.10.0(transitive)
+ Addednpm-run-path@2.0.2(transitive)
+ Addedobject-assign@4.1.1(transitive)
+ Addedobject-is@1.1.6(transitive)
+ Addedobjectorarray@1.0.5(transitive)
+ Addedobuf@1.1.2(transitive)
+ Addedon-finished@2.4.1(transitive)
+ Addedon-headers@1.0.2(transitive)
+ Addedopn@5.5.0(transitive)
+ Addedp-finally@1.0.0(transitive)
+ Addedp-map@2.1.0(transitive)
+ Addedp-retry@3.0.1(transitive)
+ Addedparseurl@1.3.3(transitive)
+ Addedpath-is-inside@1.0.2(transitive)
+ Addedpath-key@2.0.1(transitive)
+ Addedpath-to-regexp@0.1.7(transitive)
+ Addedpify@2.3.0(transitive)
+ Addedpinkie@2.0.4(transitive)
+ Addedpinkie-promise@2.0.1(transitive)
+ Addedplist@3.1.0(transitive)
+ Addedportfinder@1.0.32(transitive)
+ Addedproxy-addr@2.0.7(transitive)
+ Addedq@1.5.1(transitive)
+ Addedqs@6.11.0(transitive)
+ Addedquerystringify@2.2.0(transitive)
+ Addedrange-parser@1.2.1(transitive)
+ Addedraw-body@2.5.2(transitive)
+ Addedreadable-stream@3.6.2(transitive)
+ Addedregexp.prototype.flags@1.5.2(transitive)
+ Addedrequire-directory@2.1.1(transitive)
+ Addedrequire-main-filename@2.0.0(transitive)
+ Addedrequires-port@1.0.0(transitive)
+ Addedresolve-cwd@2.0.0(transitive)
+ Addedresolve-from@3.0.0(transitive)
+ Addedretry@0.12.0(transitive)
+ Addedsafer-buffer@2.1.2(transitive)
+ Addedsax@1.1.4(transitive)
+ Addedselect-hose@2.0.0(transitive)
+ Addedselfsigned@1.10.14(transitive)
+ Addedsemver@6.3.1(transitive)
+ Addedsend@0.18.0(transitive)
+ Addedserve-index@1.9.1(transitive)
+ Addedserve-static@1.15.0(transitive)
+ Addedset-blocking@2.0.0(transitive)
+ Addedset-function-name@2.0.2(transitive)
+ Addedsetprototypeof@1.1.01.2.0(transitive)
+ Addedshebang-command@1.2.0(transitive)
+ Addedshebang-regex@1.0.0(transitive)
+ Addedsignal-exit@3.0.7(transitive)
+ Addedsockjs@0.3.24(transitive)
+ Addedsockjs-client@1.6.1(transitive)
+ Addedsource-map@0.7.4(transitive)
+ Addedspdy@4.0.2(transitive)
+ Addedspdy-transport@3.0.0(transitive)
+ Addedstatuses@1.5.02.0.1(transitive)
+ Addedstring-width@3.1.0(transitive)
+ Addedstrip-ansi@3.0.15.2.0(transitive)
+ Addedstrip-bom@3.0.0(transitive)
+ Addedstrip-eof@1.0.0(transitive)
+ Addedsupports-color@6.1.0(transitive)
+ Addedthunky@1.1.0(transitive)
+ Addedtoidentifier@1.0.1(transitive)
+ Addedtype-is@1.6.18(transitive)
+ Addedunderscore@1.13.6(transitive)
+ Addeduniversalify@0.1.2(transitive)
+ Addedunpipe@1.0.0(transitive)
+ Addedurl-parse@1.5.10(transitive)
+ Addedutils-merge@1.0.1(transitive)
+ Addeduuid@3.4.08.3.2(transitive)
+ Addedvary@1.1.2(transitive)
+ Addedwbuf@1.7.3(transitive)
+ Addedwebpack-dev-middleware@3.7.3(transitive)
+ Addedwebpack-dev-server@3.11.3(transitive)
+ Addedwebpack-inject-plugin@1.5.5(transitive)
+ Addedwebpack-log@2.0.0(transitive)
+ Addedwebsocket-driver@0.7.4(transitive)
+ Addedwebsocket-extensions@0.1.4(transitive)
+ Addedwhich@1.3.1(transitive)
+ Addedwhich-module@2.0.1(transitive)
+ Addedwrap-ansi@5.1.0(transitive)
+ Addedws@6.2.2(transitive)
+ Addedxmlbuilder@15.1.1(transitive)
+ Addedyargs@13.3.2(transitive)
+ Addedyargs-parser@13.1.2(transitive)
Updatedwebpack@^4.31.0