From 2bacc3c967885fb7de93ba824ff6e3a0e78a08dc Mon Sep 17 00:00:00 2001 From: Dan Brown Date: Sat, 25 Jul 2020 00:25:30 +0100 Subject: [PATCH] Removed vuejs from the project --- package-lock.json | 96 ++++++++++++++---------- package.json | 14 ++-- readme.md | 1 - resources/js/index.js | 9 +-- resources/js/vues/components/dropzone.js | 80 -------------------- resources/js/vues/vues.js | 25 ------ 6 files changed, 64 insertions(+), 161 deletions(-) delete mode 100644 resources/js/vues/components/dropzone.js delete mode 100644 resources/js/vues/vues.js diff --git a/package-lock.json b/package-lock.json index 3687566ba..402edf00b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -196,9 +196,9 @@ "dev": true }, "ajv": { - "version": "6.12.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", - "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", + "version": "6.12.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", + "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -214,9 +214,9 @@ "dev": true }, "ajv-keywords": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.0.tgz", - "integrity": "sha512-eyoaac3btgU8eJlvh01En8OCKzRqlLe2G5jDsCr3RiE2uLGMEEB1aaGwVVpwR8M95956tGH6R+9edC++OvzaVw==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.1.tgz", + "integrity": "sha512-KWcq3xN8fDjSB+IMoh2VaXVhRI0BBGxoYp3rx7Pkb6z0cFjYR9Q9l4yZqqals0/zsioCmocC5H6UvsGD4MoIBA==", "dev": true }, "ansi-regex": { @@ -773,9 +773,9 @@ } }, "codemirror": { - "version": "5.55.0", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.55.0.tgz", - "integrity": "sha512-TumikSANlwiGkdF/Blnu/rqovZ0Y3Jh8yy9TqrPbSM0xxSucq3RgnpVDQ+mD9q6JERJEIT2FMuF/fBGfkhIR/g==" + "version": "5.56.0", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.56.0.tgz", + "integrity": "sha512-MfKVmYgifXjQpLSgpETuih7A7WTTIsxvKfSLGseTY5+qt0E1UD1wblZGM6WLenORo8sgmf+3X+WTe2WF7mufyw==" }, "collection-visit": { "version": "1.0.0", @@ -1077,9 +1077,9 @@ "dev": true }, "dropzone": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/dropzone/-/dropzone-5.7.1.tgz", - "integrity": "sha512-eqcJafupMKRlVUihZtsLkzLn02WTPUMHeImP5ZtWm3ERObC/dv15te0qqn/X2rEKaSqRC0pNTHUBPgrPWcP52w==" + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/dropzone/-/dropzone-5.7.2.tgz", + "integrity": "sha512-m217bJHtf0J1IiKn4Tv6mnu1h5QvQNBnKZ39gma7hzGQhIZMxYq1vYEHs4AVd4ThFwmALys+52NAOD4zdLTG4w==" }, "duplexify": { "version": "3.7.1", @@ -1239,9 +1239,9 @@ "dev": true }, "events": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", - "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", + "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", "dev": true }, "evp_bytestokey": { @@ -2406,9 +2406,9 @@ } }, "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", "dev": true }, "nice-try": { @@ -3055,9 +3055,9 @@ } }, "sass": { - "version": "1.26.9", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.9.tgz", - "integrity": "sha512-t8AkRVi+xvba4yZiLWkJdgJHBFCB3Dh4johniQkPy9ywkgFHNasXFEFP+RG/F6LhQ+aoE4aX+IorIWQjS0esVw==", + "version": "1.26.10", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.10.tgz", + "integrity": "sha512-bzN0uvmzfsTvjz0qwccN1sPm2HxxpNI/Xa+7PlUEMS+nQvbyuEK7Y0qFqxlPHhiNHb1Ze8WQJtU31olMObkAMw==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -3796,27 +3796,22 @@ "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", "dev": true }, - "vue": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.11.tgz", - "integrity": "sha512-VfPwgcGABbGAue9+sfrD4PuwFar7gPb1yl1UK1MwXoQPAw0BKSqWfoYCT/ThFrdEVWoI51dBuyCoiNU9bZDZxQ==" - }, "watchpack": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.2.tgz", - "integrity": "sha512-ymVbbQP40MFTp+cNMvpyBpBtygHnPzPkHqoIwRRj/0B8KhqQwV8LaKjtbaxF2lK4vl8zN9wCxS46IFCU5K4W0g==", + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", + "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", "dev": true, "requires": { - "chokidar": "^3.4.0", + "chokidar": "^3.4.1", "graceful-fs": "^4.1.2", "neo-async": "^2.5.0", "watchpack-chokidar2": "^2.0.0" }, "dependencies": { "chokidar": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.0.tgz", - "integrity": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.1.tgz", + "integrity": "sha512-TQTJyr2stihpC4Sya9hs2Xh+O2wf+igjL36Y75xx2WdHuiICcn/XJza46Jwt0eT5hVpQOzo3FpY3cj3RVYLX0g==", "dev": true, "optional": true, "requires": { @@ -4031,9 +4026,9 @@ } }, "webpack": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.43.0.tgz", - "integrity": "sha512-GW1LjnPipFW2Y78OOab8NJlCflB7EFskMih2AHdvjbpKMeDJqEgSx24cXXXiPS65+WSwVyxtDsJH6jGX2czy+g==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.0.tgz", + "integrity": "sha512-wAuJxK123sqAw31SpkPiPW3iKHgFUiKvO7E7UZjtdExcsRe3fgav4mvoMM7vvpjLHVoJ6a0Mtp2fzkoA13e0Zw==", "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", @@ -4044,7 +4039,7 @@ "ajv": "^6.10.2", "ajv-keywords": "^3.4.1", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.1.0", + "enhanced-resolve": "^4.3.0", "eslint-scope": "^4.0.3", "json-parse-better-errors": "^1.0.2", "loader-runner": "^2.4.0", @@ -4057,8 +4052,33 @@ "schema-utils": "^1.0.0", "tapable": "^1.1.3", "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.6.1", + "watchpack": "^1.7.4", "webpack-sources": "^1.4.1" + }, + "dependencies": { + "enhanced-resolve": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", + "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "dependencies": { + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + } + } + } } }, "webpack-cli": { diff --git a/package.json b/package.json index 0f1855cd9..387f20ff7 100644 --- a/package.json +++ b/package.json @@ -17,20 +17,16 @@ "devDependencies": { "livereload": "^0.9.1", "npm-run-all": "^4.1.5", - "sass": "^1.26.9", - "webpack": "^4.43.0", + "sass": "^1.26.10", + "webpack": "^4.44.0", "webpack-cli": "^3.3.12" }, "dependencies": { "clipboard": "^2.0.6", - "codemirror": "^5.55.0", - "dropzone": "^5.7.1", + "codemirror": "^5.56.0", + "dropzone": "^5.7.2", "markdown-it": "^11.0.0", "markdown-it-task-lists": "^2.1.1", - "sortablejs": "^1.10.2", - "vue": "^2.6.11" - }, - "browser": { - "vue": "vue/dist/vue.common.js" + "sortablejs": "^1.10.2" } } diff --git a/readme.md b/readme.md index c6db7a8e4..75c67b25f 100644 --- a/readme.md +++ b/readme.md @@ -157,7 +157,6 @@ These are the great open-source projects used to help build BookStack: * [Laravel](http://laravel.com/) * [TinyMCE](https://www.tinymce.com/) * [CodeMirror](https://codemirror.net) -* [Vue.js](http://vuejs.org/) * [Sortable](https://github.com/SortableJS/Sortable) * [Google Material Icons](https://material.io/icons/) * [Dropzone.js](http://www.dropzonejs.com/) diff --git a/resources/js/index.js b/resources/js/index.js index e0c7b34e5..913313603 100644 --- a/resources/js/index.js +++ b/resources/js/index.js @@ -20,13 +20,6 @@ const translator = new Translations(); window.trans = translator.get.bind(translator); window.trans_choice = translator.getPlural.bind(translator); -// Make services available to Vue instances -import Vue from "vue" -Vue.prototype.$http = httpInstance; -Vue.prototype.$events = eventManager; - -// Load Vues and components -import vues from "./vues/vues" +// Load Components import components from "./components" -vues(); components(); \ No newline at end of file diff --git a/resources/js/vues/components/dropzone.js b/resources/js/vues/components/dropzone.js deleted file mode 100644 index 1c045727f..000000000 --- a/resources/js/vues/components/dropzone.js +++ /dev/null @@ -1,80 +0,0 @@ -import DropZone from "dropzone"; -import { fadeOut } from "../../services/animations"; - -const template = ` -
- -
-`; - -const props = ['placeholder', 'uploadUrl', 'uploadedTo']; - -function mounted() { - const container = this.$el; - const _this = this; - this._dz = new DropZone(container, { - addRemoveLinks: true, - dictRemoveFile: trans('components.image_upload_remove'), - timeout: Number(window.uploadTimeout) || 60000, - maxFilesize: Number(window.uploadLimit) || 256, - url: function() { - return _this.uploadUrl; - }, - init: function () { - const dz = this; - - dz.on('sending', function (file, xhr, data) { - const token = window.document.querySelector('meta[name=token]').getAttribute('content'); - data.append('_token', token); - const uploadedTo = typeof _this.uploadedTo === 'undefined' ? 0 : _this.uploadedTo; - data.append('uploaded_to', uploadedTo); - - xhr.ontimeout = function (e) { - dz.emit('complete', file); - dz.emit('error', file, trans('errors.file_upload_timeout')); - } - }); - - dz.on('success', function (file, data) { - _this.$emit('success', {file, data}); - fadeOut(file.previewElement, 800, () => { - dz.removeFile(file); - }); - }); - - dz.on('error', function (file, errorMessage, xhr) { - _this.$emit('error', {file, errorMessage, xhr}); - - function setMessage(message) { - const messsageEl = file.previewElement.querySelector('[data-dz-errormessage]'); - messsageEl.textContent = message; - } - - if (xhr && xhr.status === 413) { - setMessage(trans('errors.server_upload_limit')) - } else if (errorMessage.file) { - setMessage(errorMessage.file); - } - - }); - } - }); -} - -function data() { - return {}; -} - -const methods = { - onClose: function () { - this._dz.removeAllFiles(true); - } -}; - -export default { - template, - props, - mounted, - data, - methods -}; diff --git a/resources/js/vues/vues.js b/resources/js/vues/vues.js deleted file mode 100644 index d4bd88a52..000000000 --- a/resources/js/vues/vues.js +++ /dev/null @@ -1,25 +0,0 @@ -import Vue from "vue"; - -function exists(id) { - return document.getElementById(id) !== null; -} - -let vueMapping = { -}; - -window.vues = {}; - -function load() { - let ids = Object.keys(vueMapping); - for (let i = 0, len = ids.length; i < len; i++) { - if (!exists(ids[i])) continue; - let config = vueMapping[ids[i]]; - config.el = '#' + ids[i]; - window.vues[ids[i]] = new Vue(config); - } -} - -export default load; - - -