Skip to content

Commit e97420e

Browse files
author
Lionel Bijaoui
committed
WIP on the unit test
1 parent 5c48f52 commit e97420e

25 files changed

+4571
-3396
lines changed

.eslintrc.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ module.exports = {
1616
plugins: ["prettier"],
1717
rules: {
1818
indent: [1, "tab", { SwitchCase: 1 }],
19-
quotes: [1, "double"],
19+
quotes: [1, "double", { allowTemplateLiterals: true }],
2020
semi: [2, "always"],
2121
"no-var": [2],
2222
"no-console": [0],

.prettierrc

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
{
2-
"printWidth": 180,
3-
"tabWidth": 4,
4-
"singleQuote": false,
5-
"trailingComma": "none",
6-
"bracketSpacing": true,
7-
"semi": true,
8-
"useTabs": true
2+
"printWidth": 120,
3+
"tabWidth": 4,
4+
"singleQuote": false,
5+
"trailingComma": "none",
6+
"bracketSpacing": true,
7+
"semi": true,
8+
"useTabs": true
99
}

build/webpack.build.config.js

Lines changed: 41 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,43 @@
1-
let webpack = require("webpack");
2-
let version = require("./package.json").version;
3-
let banner = "/**\n" + " * vue-form-generator v" + version + "\n" + " * https://github.com/icebob/vue-form-generator\n" + " * Released under the MIT License.\n" + " */\n";
4-
let ExtractTextPlugin = require("extract-text-webpack-plugin");
5-
let StatsPlugin = require("stats-webpack-plugin");
1+
const path = require("path");
2+
const webpack = require("webpack");
3+
const version = require("./package.json").version;
4+
const banner = "/**\n" + " * vue-form-generator v" + version + "\n" + " * https://github.com/icebob/vue-form-generator\n" + " * Released under the MIT License.\n" + " */\n";
5+
const ExtractTextPlugin = require("extract-text-webpack-plugin");
6+
const StatsPlugin = require("stats-webpack-plugin");
7+
const vueLoaderConfig = require("./vue-loader.conf");
68

79
let rules = [
810
{
9-
test: /\.js?$/,
11+
test: /\.(js|vue)$/,
12+
loader: "eslint-loader",
13+
enforce: "pre",
14+
include: [path.resolve("src")],
15+
options: {
16+
formatter: require("eslint-friendly-formatter")
17+
}
18+
},
19+
{
20+
test: /\.vue$/,
21+
loader: "vue-loader",
22+
include: [path.resolve("src")],
1023
exclude: /node_modules/,
11-
use: "babel-loader"
24+
options: vueLoaderConfig
1225
},
1326
{
14-
test: /\.vue?$/,
15-
loader: "vue-loader"
27+
test: /\.js$/,
28+
loader: "babel-loader",
29+
include: [path.resolve("src")],
30+
exclude: /node_modules/
31+
},
32+
{
33+
test: /\.(woff2?|svg)$/,
34+
loader: "url-loader",
35+
include: [path.resolve("src")]
36+
},
37+
{
38+
test: /\.(ttf|eot)$/,
39+
loader: "url-loader",
40+
include: [path.resolve("src")]
1641
}
1742
];
1843
let cssFileName;
@@ -26,7 +51,7 @@ module.exports = [
2651
{
2752
entry: "./src/index.js",
2853
output: {
29-
path: "./dist",
54+
path: path.resolve("dist"),
3055
filename: "vfg.js",
3156
library: "VueFormGenerator",
3257
libraryTarget: "umd"
@@ -58,16 +83,13 @@ module.exports = [
5883
rules
5984
},
6085

61-
vue: {
62-
loaders: {
63-
css: ExtractTextPlugin.extract("css"),
64-
postcss: ExtractTextPlugin.extract("css"),
65-
sass: ExtractTextPlugin.extract("css!sass")
66-
}
67-
},
68-
6986
resolve: {
70-
packageAlias: "browser"
87+
aliasFields: ["browser"],
88+
extensions: [".js", ".vue", ".json"],
89+
alias: {
90+
vue$: "vue/dist/vue.esm.js",
91+
"@": path.resolve("src")
92+
}
7193
}
7294
}
7395
];

build/webpack.test.config.js

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
const path = require("path");
2+
const vueLoaderConfig = require("./vue-loader.conf");
3+
const nodeExternals = require("webpack-node-externals");
4+
5+
let rules = [
6+
{
7+
test: /\.(js|vue)$/,
8+
loader: "eslint-loader",
9+
enforce: "pre",
10+
include: [path.resolve("src")],
11+
options: {
12+
formatter: require("eslint-friendly-formatter")
13+
}
14+
},
15+
{
16+
test: /\.vue$/,
17+
loader: "vue-loader",
18+
include: [path.resolve("src"), path.resolve("test")],
19+
exclude: /node_modules/,
20+
options: vueLoaderConfig
21+
},
22+
{
23+
test: /\.js$/,
24+
loader: "babel-loader",
25+
include: [path.resolve("src"), path.resolve("test")],
26+
exclude: /node_modules/
27+
},
28+
{
29+
test: /\.(woff2?|svg)$/,
30+
loader: "url-loader",
31+
include: [path.resolve("src"), path.resolve("test")]
32+
},
33+
{
34+
test: /\.(ttf|eot)$/,
35+
loader: "url-loader",
36+
include: [path.resolve("src"), path.resolve("test")]
37+
}
38+
];
39+
40+
module.exports = {
41+
devtool: "inline-cheap-module-source-map",
42+
43+
entry: "./src/index.js",
44+
45+
output: {
46+
path: path.resolve("dist"),
47+
filename: "vfg.js",
48+
library: "VueFormGenerator",
49+
libraryTarget: "umd"
50+
},
51+
52+
module: {
53+
rules
54+
},
55+
56+
plugins: [],
57+
58+
resolve: {
59+
aliasFields: ["browser"],
60+
extensions: [".js", ".vue", ".json"],
61+
alias: {
62+
vue$: "vue/dist/vue.esm.js",
63+
src: path.resolve("src")
64+
}
65+
},
66+
67+
externals: [nodeExternals()]
68+
};

0 commit comments

Comments
 (0)