Browse Source

Start using grapesjs-cli

pull/3229/head
Artur Arseniev 6 years ago
parent
commit
da568417cf
  1. 15365
      package-lock.json
  2. 26
      package.json
  3. 86
      webpack.config.js

15365
package-lock.json

File diff suppressed because it is too large

26
package.json

@ -16,7 +16,6 @@
"url": "https://github.com/artf/grapesjs.git" "url": "https://github.com/artf/grapesjs.git"
}, },
"dependencies": { "dependencies": {
"@babel/runtime": "^7.9.2",
"backbone": "1.3.3", "backbone": "1.3.3",
"backbone-undo": "^0.2.5", "backbone-undo": "^0.2.5",
"cash-dom": "^2.3.9", "cash-dom": "^2.3.9",
@ -28,15 +27,10 @@
"underscore": "^1.9.1" "underscore": "^1.9.1"
}, },
"devDependencies": { "devDependencies": {
"@babel/cli": "^7.8.4", "@vuepress/plugin-google-analytics": "^1.7.1",
"@babel/core": "^7.9.0",
"@babel/plugin-transform-runtime": "^7.9.0",
"@babel/preset-env": "^7.9.5",
"@vuepress/plugin-google-analytics": "^1.5.4",
"babel-loader": "^8.1.0",
"documentation": "^8.1.2", "documentation": "^8.1.2",
"eslint": "^6.6.0", "eslint": "^6.6.0",
"html-webpack-plugin": "^3.2.0", "grapesjs-cli": "^1.0.13",
"husky": "^2.7.0", "husky": "^2.7.0",
"jest": "^24.9.0", "jest": "^24.9.0",
"lint-staged": "^8.2.1", "lint-staged": "^8.2.1",
@ -45,11 +39,7 @@
"sass": "^1.29.0", "sass": "^1.29.0",
"sinon": "^7.5.0", "sinon": "^7.5.0",
"string-replace-loader": "^2.2.0", "string-replace-loader": "^2.2.0",
"vuepress": "^1.5.4", "vuepress": "^1.7.1"
"webpack": "^4.41.2",
"webpack-cli": "^3.3.10",
"webpack-dev-server": "^3.9.0",
"whatwg-fetch": "^3.0.0"
}, },
"keywords": [ "keywords": [
"grapes", "grapes",
@ -120,17 +110,15 @@
"docs:deploy": "docs/deploy.sh", "docs:deploy": "docs/deploy.sh",
"lint": "eslint src", "lint": "eslint src",
"check": "npm run lint && npm run test", "check": "npm run lint && npm run test",
"build": "npm run check && npm run v:patch && npm run build-dev && npm run build-prod", "build": "npm run check && npm run v:patch && npm run-s build:*",
"build-n": "npm run check && npm run build:css && npm run build-prod", "build-n": "npm run check && npm run build:css && npm run-s build:*",
"build-dev": "webpack --env=dev && npm run build:css && npm run build:locale", "build:js": "grapesjs-cli build --targets=\"> 1%, ie 11, safari 8, not dead\" --statsOutput=\"stats.json\"",
"build-prod": "webpack --env=prod",
"build:css": "sass src/styles/scss/main.scss dist/css/grapes.min.css --no-source-map --style=compressed --load-path=node_modules", "build:css": "sass src/styles/scss/main.scss dist/css/grapes.min.css --no-source-map --style=compressed --load-path=node_modules",
"build:locale": "rm -rf ./locale && node scripts/build-locale.js && babel locale -d locale --copy-files --no-comments", "build:locale": "rm -rf ./locale && node scripts/build-locale.js && babel locale -d locale --copy-files --no-comments",
"v:patch": "npm version --no-git-tag-version patch", "v:patch": "npm version --no-git-tag-version patch",
"start": "run-p start:*", "start": "run-p start:*",
"start:js": "grapesjs-cli serve",
"start:css": "npm run build:css -- --watch", "start:css": "npm run build:css -- --watch",
"start:js": "webpack-dev-server --open --progress --colors",
"stats": "webpack --env=prod --profile --json > stats.json && webpack-bundle-analyzer stats.json",
"format": "prettier --single-quote --write './{src,test}/**/*.js'", "format": "prettier --single-quote --write './{src,test}/**/*.js'",
"test": "jest", "test": "jest",
"test:dev": "jest --watch" "test:dev": "jest --watch"

86
webpack.config.js

@ -1,68 +1,38 @@
const HtmlWebpackPlugin = require('html-webpack-plugin'); import path from 'path';
const pkg = require('./package.json'); import pkg from './package.json';
const webpack = require('webpack');
const path = require('path');
const fs = require('fs');
const rootDir = path.resolve(__dirname); const rootDir = path.resolve(__dirname);
let plugins = [];
module.exports = env => { export default ({ config }) => ({
const name = pkg.name; ...config,
const isProd = env === 'prod'; output: {
const output = { ...config.output,
path: path.join(__dirname), filename: 'grapes.min.js',
filename: 'dist/grapes.min.js',
library: name,
libraryExport: 'default', libraryExport: 'default',
libraryTarget: 'umd', },
}; devServer: {
headers: { 'Access-Control-Allow-Origin': '*' },
if (isProd) { disableHostCheck: true,
plugins = [ },
new webpack.optimize.ModuleConcatenationPlugin(), module: {
new webpack.BannerPlugin(`${name} - ${pkg.version}`), rules: [
]; {
} else if (env === 'dev') {
output.filename = 'dist/grapes.js';
} else {
const index = 'index.html';
const indexDev = `_${index}`;
const template = fs.existsSync(indexDev) ? indexDev : index;
plugins.push(new HtmlWebpackPlugin({ template, inject: false }));
}
return {
entry: './src',
output: output,
plugins: plugins,
mode: isProd ? 'production' : 'development',
devtool: isProd ? 'source-map' : (!env ? 'cheap-module-eval-source-map' : false),
devServer: {
headers: { 'Access-Control-Allow-Origin': '*' },
disableHostCheck: true,
},
module: {
rules: [{
test: /\/index\.js$/, test: /\/index\.js$/,
loader: 'string-replace-loader', loader: 'string-replace-loader',
query: { query: {
search: '<# VERSION #>', search: '<# VERSION #>',
replace: pkg.version replace: pkg.version
} }
}, { },
test: /\.js$/, ...config.module.rules,
loader: 'babel-loader', ],
include: /src/, },
options: { cacheDirectory: true }, resolve: {
}], modules: ['src', 'node_modules'],
}, alias: {
resolve: { jquery: 'cash-dom',
modules: ['src', 'node_modules'], backbone: `${rootDir}/node_modules/backbone`,
alias: { underscore: `${rootDir}/node_modules/underscore`,
jquery: 'cash-dom',
backbone: `${rootDir}/node_modules/backbone`,
underscore: `${rootDir}/node_modules/underscore`,
}
} }
}; },
} });
Loading…
Cancel
Save