From d30f58f655cf2af489b8c7ce5f365cfe1a2ba231 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 31 Jul 2020 19:15:37 +0000 Subject: [PATCH 1/5] Bump webpack-merge from 4.2.2 to 5.0.9 Bumps [webpack-merge](https://github.com/survivejs/webpack-merge) from 4.2.2 to 5.0.9. - [Release notes](https://github.com/survivejs/webpack-merge/releases) - [Changelog](https://github.com/survivejs/webpack-merge/blob/master/CHANGELOG.md) - [Commits](https://github.com/survivejs/webpack-merge/compare/v4.2.2...v5.0.9) Signed-off-by: dependabot-preview[bot] --- package-lock.json | 51 +++++++++++++++++++++++++++++++++++++++++++---- package.json | 2 +- 2 files changed, 48 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 0116619ab..7a2659e87 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8126,6 +8126,25 @@ "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", "dev": true }, + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "dependencies": { + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + } + } + }, "clone-regexp": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", @@ -19510,6 +19529,23 @@ "safe-buffer": "^5.0.1" } }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + }, + "dependencies": { + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + } + } + }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -22829,12 +22865,13 @@ } }, "webpack-merge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", - "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.0.9.tgz", + "integrity": "sha512-P4teh6O26xIDPugOGX61wPxaeP918QOMjmzhu54zTVcLtOS28ffPWtnv+ilt3wscwBUCL2WNMnh97XkrKqt9Fw==", "dev": true, "requires": { - "lodash": "^4.17.15" + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" } }, "webpack-sources": { @@ -22928,6 +22965,12 @@ "string-width": "^1.0.2 || 2" } }, + "wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "dev": true + }, "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", diff --git a/package.json b/package.json index 9de58b963..39ea7c0f6 100644 --- a/package.json +++ b/package.json @@ -107,7 +107,7 @@ "webpack": "^4.44.0", "webpack-cli": "^3.3.12", "webpack-dev-server": "^3.11.0", - "webpack-merge": "^4.2.2" + "webpack-merge": "^5.0.9" }, "jest": { "moduleFileExtensions": [ From ccb09fdab8f38b24de4f6f48973bc8d0b0ee97f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Fri, 31 Jul 2020 21:30:39 +0200 Subject: [PATCH 2/5] Use shared webpack config MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- package-lock.json | 6 +++++ package.json | 11 +++++---- webpack.common.js | 59 ----------------------------------------------- webpack.dev.js | 11 --------- webpack.js | 25 ++++++++++++++++++++ webpack.prod.js | 7 ------ 6 files changed, 37 insertions(+), 82 deletions(-) delete mode 100644 webpack.common.js delete mode 100644 webpack.dev.js create mode 100644 webpack.js delete mode 100644 webpack.prod.js diff --git a/package-lock.json b/package-lock.json index 7a2659e87..df0ec572f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5601,6 +5601,12 @@ } } }, + "@nextcloud/webpack-vue-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@nextcloud/webpack-vue-config/-/webpack-vue-config-1.1.0.tgz", + "integrity": "sha512-3eDbH05tlkfM12syuM36QS+xU1r80iX21PZ5tN+/O9Ekto2psmt+vf7Vgs5JX20M97Uy89POQ09A8tQUj83Yuw==", + "dev": true + }, "@nodelib/fs.scandir": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz", diff --git a/package.json b/package.json index 39ea7c0f6..13671f06f 100644 --- a/package.json +++ b/package.json @@ -17,13 +17,13 @@ "license": "agpl", "private": true, "scripts": { - "dev": "NODE_ENV=development webpack --config webpack.dev.js", - "watch": "NODE_ENV=development webpack --progress --watch --config webpack.dev.js", - "build": "NODE_ENV=production webpack --progress --hide-modules --config webpack.prod.js", + "build": "NODE_ENV=production webpack --progress --hide-modules --config webpack.js", + "dev": "NODE_ENV=development webpack --progress --config webpack.js", + "watch": "NODE_ENV=development webpack --progress --watch --config webpack.js", "lint": "eslint --ext .js,.vue src", "lint:fix": "eslint --ext .js,.vue src --fix", - "stylelint": "stylelint **/*.css **/*.scss **/*.vue", - "stylelint:fix": "stylelint **/*.css **/*.scss **/*.vue --fix", + "stylelint": "stylelint src", + "stylelint:fix": "stylelint src --fix", "test": "jest", "test:coverage": "jest --coverage" }, @@ -72,6 +72,7 @@ "@nextcloud/browserslist-config": "^1.0.0", "@nextcloud/eslint-config": "^2.0.0", "@nextcloud/eslint-plugin": "^1.4.0", + "@nextcloud/webpack-vue-config": "^1.1.0", "@vue/test-utils": "^1.0.3", "acorn": "^7.3.1", "babel-eslint": "^10.1.0", diff --git a/webpack.common.js b/webpack.common.js deleted file mode 100644 index ac9189533..000000000 --- a/webpack.common.js +++ /dev/null @@ -1,59 +0,0 @@ -const path = require('path'); -const { VueLoaderPlugin } = require('vue-loader'); - -module.exports = { - entry: { - deck: path.join(__dirname, 'src', 'main.js'), - collections: path.join(__dirname, 'src', 'init-collections.js'), - }, - output: { - filename: '[name].js', - path: __dirname + '/js', - publicPath: '/js/', - jsonpFunction: 'webpackJsonpOCADeck', - chunkFilename: '[name].js?v=[contenthash]', - }, - module: { - rules: [ - { - test: /\.css$/, - use: ['vue-style-loader', 'css-loader'] - }, - { - test: /\.scss$/, - use: [ - 'vue-style-loader', - 'css-loader', - 'sass-loader' - ] - }, - { - test: /\.vue$/, - loader: 'vue-loader' - }, - { - test: /\.js$/, - loader: 'babel-loader', - exclude: /node_modules/ - }, - { - test: /\.(png|jpg|gif|svg)$/, - loader: 'url-loader', - options: { - name: '[name].[ext]?[hash]' - } - } - ] - }, - plugins: [new VueLoaderPlugin()], - resolve: { - alias: { - vue$: 'vue/dist/vue.esm.js' - }, - extensions: ['*', '.js', '.vue', '.json'], - modules: [ - path.resolve(__dirname, 'node_modules'), - 'node_modules' - ] - } -}; diff --git a/webpack.dev.js b/webpack.dev.js deleted file mode 100644 index 1de72b2e3..000000000 --- a/webpack.dev.js +++ /dev/null @@ -1,11 +0,0 @@ -const merge = require('webpack-merge'); -const common = require('./webpack.common.js'); - -module.exports = merge(common, { - mode: 'development', - devServer: { - historyApiFallback: true, - overlay: true - }, - devtool: 'source-map', -}) diff --git a/webpack.js b/webpack.js new file mode 100644 index 000000000..fffccc536 --- /dev/null +++ b/webpack.js @@ -0,0 +1,25 @@ +const webpackConfig = require('@nextcloud/webpack-vue-config') +const path = require('path'); +const { merge } = require('webpack-merge') + +const config = { + entry: { + deck: path.join(__dirname, 'src', 'main.js'), + collections: path.join(__dirname, 'src', 'init-collections.js'), + }, + output: { + filename: '[name].js', + jsonpFunction: 'webpackJsonpOCADeck', + chunkFilename: '[name].js?v=[contenthash]', + }, + resolve: { + extensions: ['*', '.js', '.vue', '.json'], + modules: [ + path.resolve(__dirname, 'node_modules'), + 'node_modules' + ] + } +}; + +module.exports = merge(config, webpackConfig) + diff --git a/webpack.prod.js b/webpack.prod.js deleted file mode 100644 index f081567bd..000000000 --- a/webpack.prod.js +++ /dev/null @@ -1,7 +0,0 @@ -const merge = require('webpack-merge') -const common = require('./webpack.common.js') - -module.exports = merge(common, { - mode: 'production', - devtool: '#source-map' -}) From d6b03cd69cc2ede7bdca6f494bcbf6143fe2aae8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Fri, 31 Jul 2020 21:30:52 +0200 Subject: [PATCH 3/5] Fix stylelint MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- src/components/ActivityEntry.vue | 1 + src/components/Controls.vue | 3 +++ src/components/board/Board.vue | 2 +- src/components/board/SharingTabSidebar.vue | 5 +++++ src/components/board/Stack.vue | 2 ++ src/components/card/CardSidebar.vue | 6 ++++-- src/components/card/CardSidebarTabComments.vue | 2 +- src/components/card/CommentForm.vue | 2 +- src/components/card/CommentItem.vue | 3 ++- src/components/cards/AvatarList.vue | 2 ++ src/components/cards/CardBadges.vue | 1 + src/components/cards/CardItem.vue | 2 ++ src/components/navigation/AppNavigation.vue | 1 + src/components/navigation/AppNavigationAddBoard.vue | 2 +- src/components/navigation/AppNavigationBoard.vue | 2 +- src/css/animations.scss | 2 ++ src/css/comments.scss | 4 +++- src/css/markdown.scss | 8 +++++--- 18 files changed, 38 insertions(+), 12 deletions(-) diff --git a/src/components/ActivityEntry.vue b/src/components/ActivityEntry.vue index 2d65d1ece..782503503 100644 --- a/src/components/ActivityEntry.vue +++ b/src/components/ActivityEntry.vue @@ -154,6 +154,7 @@ export default { .visualdiff ins { color: green; } + .visualdiff del { color: darkred; } diff --git a/src/components/Controls.vue b/src/components/Controls.vue index fd847f1fb..f134896bb 100644 --- a/src/components/Controls.vue +++ b/src/components/Controls.vue @@ -350,6 +350,7 @@ export default { background-color: transparent; } } + .filter--item { input + label { display: block; @@ -366,11 +367,13 @@ export default { } } } + .filter { width: 250px; max-height: 80vh; overflow: auto; } + .filter h3 { margin-top: 0px; margin-bottom: 5px; diff --git a/src/components/board/Board.vue b/src/components/board/Board.vue index 50e388031..8a19b58ad 100644 --- a/src/components/board/Board.vue +++ b/src/components/board/Board.vue @@ -131,7 +131,7 @@ export default { diff --git a/src/components/card/CommentForm.vue b/src/components/card/CommentForm.vue index 4601e7dff..69714b66b 100644 --- a/src/components/card/CommentForm.vue +++ b/src/components/card/CommentForm.vue @@ -173,7 +173,7 @@ export default { diff --git a/src/components/board/DeletedTabSidebar.vue b/src/components/board/DeletedTabSidebar.vue index 9cae68061..fc4cc82d4 100644 --- a/src/components/board/DeletedTabSidebar.vue +++ b/src/components/board/DeletedTabSidebar.vue @@ -89,6 +89,12 @@ export default { li { display: flex; height: 44px; + + &:hover, &:active, &.focus { + button { + opacity: 1; + } + } } span { @@ -119,12 +125,5 @@ export default { background-color: transparent; opacity: 0.5; } - li { - &:hover, &:active, &.focus { - button { - opacity: 1; - } - } - } } diff --git a/src/components/cards/AvatarList.vue b/src/components/cards/AvatarList.vue index 29d120202..d54027273 100644 --- a/src/components/cards/AvatarList.vue +++ b/src/components/cards/AvatarList.vue @@ -154,6 +154,9 @@ export default { width: 36px; height: 36px; box-sizing: content-box !important; + margin-right: -12px; + transition: margin-right 0.2s ease-in-out; + &.icon-more { width: 32px; height: 32px; @@ -161,10 +164,6 @@ export default { background-color: var(--color-background-dark) !important; cursor: pointer; } - & { - margin-right: -12px; - transition: margin-right 0.2s ease-in-out; - } } &:hover div:nth-child(n+2) /deep/ .avatardiv { margin-right: 1px; diff --git a/stylelint.config.js b/stylelint.config.js index b9937526d..d68fda184 100644 --- a/stylelint.config.js +++ b/stylelint.config.js @@ -20,7 +20,13 @@ module.exports = { 'selector-type-case': null, 'selector-list-comma-newline-after': null, 'no-descending-specificity': null, - 'string-quotes': 'single' + 'string-quotes': 'single', + 'selector-pseudo-element-no-unknown': [ + true, + { + ignorePseudoElements: ['v-deep'] + } + ] }, plugins: ['stylelint-scss'] } From ef6caf361711b6fc155a85444f068a1edd36fb4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Fri, 31 Jul 2020 21:42:13 +0200 Subject: [PATCH 5/5] Keep url-loader for images MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- webpack.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/webpack.js b/webpack.js index fffccc536..65068d595 100644 --- a/webpack.js +++ b/webpack.js @@ -12,6 +12,17 @@ const config = { jsonpFunction: 'webpackJsonpOCADeck', chunkFilename: '[name].js?v=[contenthash]', }, + module: { + rules: [ + { + test: /\.(png|jpg|gif|svg)$/, + loader: 'url-loader', + options: { + name: '[name].[ext]?[hash]' + } + } + ] + }, resolve: { extensions: ['*', '.js', '.vue', '.json'], modules: [