diff --git a/.eslintrc.js b/.eslintrc.js index 43adca25e5..516029cdd4 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -4,11 +4,9 @@ module.exports = { files: [ "src/renderer/**/*.js", "build/**/*.js", - "src/renderer/**/*.vue" ], extends: [ 'eslint:recommended', - 'plugin:vue/recommended' ], env: { node: true @@ -20,9 +18,6 @@ module.exports = { rules: { "indent": ["error", 2], "no-unused-vars": "off", - "vue/order-in-components": "off", - "vue/attributes-order": "off", - "vue/max-attributes-per-line": "off" } }, { diff --git a/README.md b/README.md index 020b11ef96..7461894a02 100644 --- a/README.md +++ b/README.md @@ -41,12 +41,9 @@ brew cask install lens Allows faster separately re-run some of involved processes: 1. `yarn dev:main` compiles electron's main process and watch files -1. `yarn dev:renderer:vue` compiles electron's renderer vue-part -1. `yarn dev:renderer:react` compiles electron's renderer react-part +1. `yarn dev:renderer` compiles electron's renderer part 1. `yarn dev-run` runs app in dev-mode and restarts when electron's main process file has changed -Alternatively to compile both render parts in single command use `yarn dev:renderer` - ## Contributing Bug reports and pull requests are welcome on GitHub at https://github.com/lensapp/lens. diff --git a/package.json b/package.json index 7fcc3c230f..4426aeaa05 100644 --- a/package.json +++ b/package.json @@ -16,8 +16,6 @@ "dev-test": "yarn test --watch", "dev:main": "env DEBUG=true yarn compile:main --watch $@", "dev:renderer": "env DEBUG=true yarn compile:renderer --watch $@", - "dev:renderer:react": "yarn dev:renderer --config-name react $@", - "dev:renderer:vue": "yarn dev:renderer --config-name vue $@", "compile": "concurrently \"yarn i18n:compile\" \"yarn compile:main -p\" \"yarn compile:renderer -p\"", "compile:main": "webpack --progress --config webpack.main.ts", "compile:renderer": "webpack --progress --config webpack.renderer.ts", @@ -36,7 +34,7 @@ "download-bins": "concurrently yarn:download:*", "download:kubectl": "yarn run ts-node build/download_kubectl.ts", "download:helm": "yarn run ts-node build/download_helm.ts", - "lint": "eslint $@ --ext js,ts,tsx,vue --max-warnings=0 src/" + "lint": "eslint $@ --ext js,ts,tsx --max-warnings=0 src/" }, "config": { "bundledKubectlVersion": "1.17.4", @@ -255,8 +253,6 @@ "babel-loader": "^8.1.0", "babel-plugin-macros": "^2.8.0", "babel-runtime": "^6.26.0", - "bootstrap": "^4.5.0", - "bootstrap-vue": "^2.15.0", "chart.js": "^2.9.3", "circular-dependency-plugin": "^5.2.0", "color": "^3.1.2", @@ -268,7 +264,6 @@ "electron-builder": "^22.7.0", "electron-notarize": "^0.3.0", "eslint": "^7.3.1", - "eslint-plugin-vue": "^6.2.2", "file-loader": "^6.0.0", "flex.box": "^3.4.4", "fork-ts-checker-webpack-plugin": "^5.0.0", @@ -291,7 +286,6 @@ "patch-package": "^6.2.2", "path-to-regexp": "^6.1.0", "postinstall-postinstall": "^2.1.0", - "prismjs": "^1.20.0", "raw-loader": "^4.0.1", "react": "^16.13.1", "react-dom": "^16.13.1", @@ -308,15 +302,6 @@ "typeface-roboto": "^0.0.75", "typescript": "^3.9.5", "url-loader": "^4.1.0", - "vue": "^2.6.11", - "vue-electron": "^1.0.6", - "vue-loader": "^15.9.2", - "vue-prism-editor": "^0.6.1", - "vue-router": "^3.3.2", - "vue-style-loader": "^4.1.2", - "vue-template-compiler": "^2.6.11", - "vuedraggable": "^2.23.2", - "vuex": "^3.4.0", "webpack": "^4.43.0", "webpack-cli": "^3.3.11", "webpack-node-externals": "^1.7.2", diff --git a/src/common/user-store.ts b/src/common/user-store.ts index ba4565660f..46cbe8f763 100644 --- a/src/common/user-store.ts +++ b/src/common/user-store.ts @@ -49,6 +49,7 @@ export class UserStore extends BaseStore { @action saveLastSeenAppVersion() { + tracker.event("app", "whats-new-seen") this.lastSeenAppVersion = getAppVersion(); } diff --git a/src/common/vars.ts b/src/common/vars.ts index 753e96dbd2..ca051bc24e 100644 --- a/src/common/vars.ts +++ b/src/common/vars.ts @@ -1,9 +1,7 @@ // App's common configuration for any process (main, renderer, build pipeline, etc.) import path from "path"; -// Temp -export const reactAppName = "app_react" -export const vueAppName = "app_vue" +export const appName = "lens" // Flags export const isMac = process.platform === "darwin" diff --git a/src/main/cluster-manager.ts b/src/main/cluster-manager.ts index a092ef4d24..7f7034a2d5 100644 --- a/src/main/cluster-manager.ts +++ b/src/main/cluster-manager.ts @@ -26,6 +26,7 @@ export class ClusterManager { } constructor(protected port: number) { + ClusterManager.ipcListen(this); autorun(() => { clusterStore.clusters.forEach((cluster: Cluster) => { if (!cluster.initialized) { @@ -34,7 +35,6 @@ export class ClusterManager { } }) }); - this.listenIpcEvents(); } stop() { @@ -105,52 +105,52 @@ export class ClusterManager { return "store:///icons/" + fileName } - protected listenIpcEvents() { + static ipcListen(clusterManager: ClusterManager) { onMessages({ [ClusterIpcMessage.CLUSTER_ADD]: async (model: ClusterModel): Promise => { tracker.event("cluster", "add"); - await this.addCluster(model); + await clusterManager.addCluster(model); return true; }, [ClusterIpcMessage.CLUSTER_STOP]: (clusterId: ClusterId) => { tracker.event("cluster", "stop"); - this.getCluster(clusterId)?.stopServer(); + clusterManager.getCluster(clusterId)?.stopServer(); }, [ClusterIpcMessage.CLUSTER_REMOVE]: (clusterId: ClusterId) => { tracker.event("cluster", "remove"); - this.removeCluster(clusterId); + clusterManager.removeCluster(clusterId); }, [ClusterIpcMessage.CLUSTER_REMOVE_WORKSPACE]: (workspaceId: ClusterId) => { - this.removeAllByWorkspace(workspaceId); + clusterManager.removeAllByWorkspace(workspaceId); }, [ClusterIpcMessage.CLUSTER_REFRESH]: (clusterId: ClusterId) => { - this.getCluster(clusterId)?.refreshCluster(); + clusterManager.getCluster(clusterId)?.refreshCluster(); }, [ClusterIpcMessage.CLUSTER_EVENTS]: async (clusterId: ClusterId): Promise => { - return await this.getCluster(clusterId)?.getEventCount() || 0; + return await clusterManager.getCluster(clusterId)?.getEventCount() || 0; }, // todo: check feature failures [ClusterIpcMessage.FEATURE_INSTALL]: ({ clusterId, name, config }: FeatureInstallRequest) => { tracker.event("cluster", "install-feature") - return this.getCluster(clusterId)?.installFeature(name, config) + return clusterManager.getCluster(clusterId)?.installFeature(name, config) }, [ClusterIpcMessage.FEATURE_UPGRADE]: ({ clusterId, name, config }: FeatureInstallRequest) => { tracker.event("cluster", "upgrade-feature") - return this.getCluster(clusterId)?.upgradeFeature(name, config) + return clusterManager.getCluster(clusterId)?.upgradeFeature(name, config) }, [ClusterIpcMessage.FEATURE_REMOVE]: ({ clusterId, name }: FeatureInstallRequest) => { tracker.event("cluster", "uninstall-feature") - return this.getCluster(clusterId)?.uninstallFeature(name); + return clusterManager.getCluster(clusterId)?.uninstallFeature(name); }, [ClusterIpcMessage.ICON_SAVE]: async ({ clusterId, name, path }: ClusterIconUpload) => { tracker.event("cluster", "upload-icon"); - const cluster = this.getCluster(clusterId); + const cluster = clusterManager.getCluster(clusterId); if (!cluster) return false; - cluster.preferences.icon = await this.uploadClusterIcon(cluster, name, path); + cluster.preferences.icon = await clusterManager.uploadClusterIcon(cluster, name, path); }, [ClusterIpcMessage.ICON_RESET]: async (clusterId: ClusterId) => { tracker.event("cluster", "reset-icon") - const cluster = this.getCluster(clusterId); + const cluster = clusterManager.getCluster(clusterId); if (!cluster) return false; cluster.preferences.icon = null; // todo: remove current file-icon ? }, diff --git a/src/main/index.ts b/src/main/index.ts index 90f639e3c5..d9489b577d 100644 --- a/src/main/index.ts +++ b/src/main/index.ts @@ -3,7 +3,7 @@ import "../common/system-ca" import "../common/prometheus-providers" import { app, dialog, protocol } from "electron" -import { isDevelopment, isMac, vueAppName } from "../common/vars"; +import { appName, isDevelopment, isMac } from "../common/vars"; import { PromiseIpc } from "electron-promise-ipc" import path from "path" import { format as formatUrl } from "url" @@ -40,7 +40,7 @@ let clusterManager: ClusterManager = null; let proxyServer: proxy.LensProxy = null; const vmURL = formatUrl({ - pathname: path.join(__dirname, `${vueAppName}.html`), + pathname: path.join(__dirname, `${appName}.html`), protocol: "file", slashes: true, }) diff --git a/src/main/router.ts b/src/main/router.ts index 9ee3a47c73..95d20c7040 100644 --- a/src/main/router.ts +++ b/src/main/router.ts @@ -11,7 +11,7 @@ import { kubeconfigRoute } from "./routes/kubeconfig" import { metricsRoute } from "./routes/metrics" import { watchRoute } from "./routes/watch" import { portForwardRoute } from "./routes/port-forward" -import { apiPrefix, outDir, reactAppName } from "../common/vars"; +import { apiPrefix, outDir, appName } from "../common/vars"; const mimeTypes: Record = { "html": "text/html", @@ -94,8 +94,7 @@ export class Router { response.write(data) response.end() } catch (err) { - // default to index.html so that react routes work when page is refreshed - this.handleStaticFile(`${reactAppName}.html`, response) + this.handleStaticFile(`${appName}.html`, response) } } diff --git a/src/renderer/_vue/components/WhatsNewPage.vue b/src/renderer/_vue/components/WhatsNewPage.vue index 8766f54868..781b66253f 100644 --- a/src/renderer/_vue/components/WhatsNewPage.vue +++ b/src/renderer/_vue/components/WhatsNewPage.vue @@ -31,7 +31,6 @@ import marked from 'marked' import {readFileSync} from 'fs' import { getStaticPath } from "../../../common/register-static" import { userStore } from "../../../common/user-store" -import { tracker } from "../../../common/tracker" export default { name: 'WhatsNewPage', @@ -49,9 +48,6 @@ export default { methods: { toLanding: async function() { userStore.saveLastSeenAppVersion(); - tracker.event("app", "whats-new-seen") - - // await this.$store.dispatch("updateLastSeenAppVersion") this.$router.push({ name: "landing-page", }).catch(err => {}) diff --git a/src/renderer/_vue/index.js b/src/renderer/_vue/index.js index 2020c7d503..0b722ca637 100644 --- a/src/renderer/_vue/index.js +++ b/src/renderer/_vue/index.js @@ -1,10 +1,7 @@ import "../../common/system-ca" import "./assets/css/app.scss" -import "prismjs"; -import "prismjs/components/prism-yaml" import { PromiseIpc } from 'electron-promise-ipc' import Vue from 'vue' -import VueElectron from 'vue-electron' import BootstrapVue from 'bootstrap-vue' import App from './App' import router from './router' @@ -20,7 +17,6 @@ promiseIpc.on('navigate', async (view) => { }); Vue.config.productionTip = false -Vue.use(VueElectron) Vue.use(BootstrapVue) Vue.mixin({ diff --git a/src/renderer/components/app.scss b/src/renderer/components/app.scss index 8c7f62236c..b817b2af53 100755 --- a/src/renderer/components/app.scss +++ b/src/renderer/components/app.scss @@ -167,6 +167,14 @@ a { } } +.drag { + -webkit-app-region: drag; +} + +.nodrag { + -webkit-app-region: no-drag; +} + // app's common loading indicator, displaying on the route transitions #loading { position: absolute; diff --git a/src/renderer/components/app.tsx b/src/renderer/components/app.tsx index 894f7fece9..1387ef1b5c 100755 --- a/src/renderer/components/app.tsx +++ b/src/renderer/components/app.tsx @@ -82,6 +82,3 @@ export class App extends React.Component { ) } } - -// run -App.init(); \ No newline at end of file diff --git a/src/renderer/index.ts b/src/renderer/index.ts new file mode 100644 index 0000000000..317c47c8cd --- /dev/null +++ b/src/renderer/index.ts @@ -0,0 +1,14 @@ +import "../../common/system-ca" +import { userStore } from "../common/user-store"; +import { workspaceStore } from "../common/workspace-store"; +import { clusterStore } from "../common/cluster-store"; +// import { App } from "./components/app"; + +await Promise.all([ + userStore.whenLoaded, + workspaceStore.whenLoaded, + clusterStore.whenLoaded, +]); + +// App.init(); +document.getElementById("app").innerHTML = "

Hello from renderer!

" diff --git a/webpack.renderer.ts b/webpack.renderer.ts index 26ee62faed..c004d88f94 100755 --- a/webpack.renderer.ts +++ b/webpack.renderer.ts @@ -1,4 +1,4 @@ -import { htmlTemplate, isDevelopment, isProduction, outDir, reactAppName, rendererDir, sassCommonVars, vueAppName } from "./src/common/vars"; +import { htmlTemplate, isDevelopment, isProduction, outDir, appName, rendererDir, sassCommonVars } from "./src/common/vars"; import path from "path"; import webpack from "webpack"; import HtmlWebpackPlugin from "html-webpack-plugin"; @@ -6,23 +6,16 @@ import MiniCssExtractPlugin from "mini-css-extract-plugin"; import TerserPlugin from "terser-webpack-plugin"; import ForkTsCheckerPlugin from "fork-ts-checker-webpack-plugin" import CircularDependencyPlugin from "circular-dependency-plugin" -import { VueLoaderPlugin } from "vue-loader" -export default [ - webpackConfigReact, - webpackConfigVue, -]; - -export function webpackConfigReact(): webpack.Configuration { +export default function (): webpack.Configuration { return { context: __dirname, - name: "react", target: "web", devtool: "source-map", // todo: optimize in dev-mode with webpack.SourceMapDevToolPlugin mode: isProduction ? "production" : "development", cache: isDevelopment, entry: { - [reactAppName]: path.resolve(rendererDir, "components/app.tsx"), + [appName]: path.resolve(rendererDir, "index.tsx"), }, output: { path: outDir, @@ -149,7 +142,7 @@ export function webpackConfigReact(): webpack.Configuration { // }), new HtmlWebpackPlugin({ - filename: `${reactAppName}.html`, + filename: `${appName}.html`, template: htmlTemplate, inject: true, }), @@ -159,79 +152,4 @@ export function webpackConfigReact(): webpack.Configuration { }), ], } -} - -export function webpackConfigVue(): webpack.Configuration { - const config = webpackConfigReact(); - - config.name = "vue" - config.target = "electron-renderer"; - config.resolve.extensions.push(".vue"); - - config.entry = { - [vueAppName]: path.resolve(rendererDir, "_vue/index.js") - } - config.resolve.alias = { - "@": rendererDir, - "vue$": "vue/dist/vue.esm.js", - "vue-router$": "vue-router/dist/vue-router.esm.js", - } - - // rules and loaders - config.module.rules = config.module.rules - .filter(({ test }: { test: RegExp }) => !test.test(".ts")) - .filter(({ test }: { test: RegExp }) => !test.test(".css")) - - config.module.rules.push( - { - test: /\.node$/, - use: "node-loader" - }, - { - test: /\.vue$/, - use: { - loader: "vue-loader", - options: { - shadowMode: false, - loaders: { - css: "vue-style-loader!css-loader", - scss: "vue-style-loader!css-loader!sass-loader", - } - } - } - }, - { - test: /\.[tj]sx?$/, - exclude: /node_modules/, - use: { - loader: "ts-loader", - options: { - transpileOnly: true, - appendTsSuffixTo: [/\.vue$/], - } - }, - }, - { - test: /\.s?css$/, - use: [ - 'vue-style-loader', - 'css-loader', - 'sass-loader' - ] - } - ); - - // plugins - config.plugins = [ - new VueLoaderPlugin(), - new ForkTsCheckerPlugin(), - - new HtmlWebpackPlugin({ - filename: `${vueAppName}.html`, - template: htmlTemplate, - inject: true, - }), - ]; - - return config; -} +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 088de6a28b..615a017da4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1537,15 +1537,6 @@ dependencies: mkdirp "^1.0.4" -"@nuxt/opencollective@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@nuxt/opencollective/-/opencollective-0.3.0.tgz#11d8944dcf2d526e31660bb69570be03f8fb72b7" - integrity sha512-Vf09BxCdj1iT2IRqVwX5snaY2WCTkvM0O4cWWSO1ThCFuc4if0Q/nNwAgCxRU0FeYHJ7DdyMUNSdswCLKlVqeg== - dependencies: - chalk "^2.4.2" - consola "^2.10.1" - node-fetch "^2.6.0" - "@panva/asn1.js@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@panva/asn1.js/-/asn1.js-1.0.0.tgz#dd55ae7b8129e02049f009408b97c61ccf9032f6" @@ -2260,22 +2251,6 @@ semver "^7.3.2" tsutils "^3.17.1" -"@vue/component-compiler-utils@^3.1.0": - version "3.1.2" - resolved "https://registry.yarnpkg.com/@vue/component-compiler-utils/-/component-compiler-utils-3.1.2.tgz#8213a5ff3202f9f2137fe55370f9e8b9656081c3" - integrity sha512-QLq9z8m79mCinpaEeSURhnNCN6djxpHw0lpP/bodMlt5kALfONpryMthvnrQOlTcIKoF+VoPi+lPHUYeDFPXug== - dependencies: - consolidate "^0.15.1" - hash-sum "^1.0.2" - lru-cache "^4.1.2" - merge-source-map "^1.1.0" - postcss "^7.0.14" - postcss-selector-parser "^6.0.2" - source-map "~0.6.1" - vue-template-es2015-compiler "^1.9.0" - optionalDependencies: - prettier "^1.18.2" - "@webassemblyjs/ast@1.9.0": version "1.9.0" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" @@ -3022,7 +2997,7 @@ bluebird-lst@^1.0.9: dependencies: bluebird "^3.5.5" -bluebird@^3.1.1, bluebird@^3.5.5: +bluebird@^3.5.5: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== @@ -3047,22 +3022,6 @@ boolean@^3.0.0, boolean@^3.0.1: resolved "https://registry.yarnpkg.com/boolean/-/boolean-3.0.1.tgz#35ecf2b4a2ee191b0b44986f14eb5f052a5cbb4f" integrity sha512-HRZPIjPcbwAVQvOTxR4YE3o8Xs98NqbbL1iEZDCz7CL8ql0Lt5iOyJFxfnAB0oFs8Oh02F/lLlg30Mexv46LjA== -bootstrap-vue@^2.15.0: - version "2.15.0" - resolved "https://registry.yarnpkg.com/bootstrap-vue/-/bootstrap-vue-2.15.0.tgz#0dfc12c054496c0f10efed510da1def41697cf3c" - integrity sha512-ncxWkDG0mKFVot314wWKJELi+ESO7k6ngV//qvJFs9iVzlFI8Hx3rBVbpcPW2vrJ+0vitH8N2SOwn4fdQ3frMQ== - dependencies: - "@nuxt/opencollective" "^0.3.0" - bootstrap ">=4.5.0 <5.0.0" - popper.js "^1.16.1" - portal-vue "^2.1.7" - vue-functional-data-merge "^3.1.0" - -"bootstrap@>=4.5.0 <5.0.0", bootstrap@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.5.0.tgz#97d9dbcb5a8972f8722c9962483543b907d9b9ec" - integrity sha512-Z93QoXvodoVslA+PWNdk23Hze4RBYIkpb5h8I2HY2Tu2h7A0LpAgLcyrhrSUyo2/Oxm2l1fRZPs1e5hnxnliXA== - boxen@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/boxen/-/boxen-4.2.0.tgz#e411b62357d6d6d36587c8ac3d5d974daa070e64" @@ -3648,15 +3607,6 @@ cli-width@^2.0.0: resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== -clipboard@^2.0.0: - version "2.0.6" - resolved "https://registry.yarnpkg.com/clipboard/-/clipboard-2.0.6.tgz#52921296eec0fdf77ead1749421b21c968647376" - integrity sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg== - dependencies: - good-listener "^1.2.2" - select "^1.1.2" - tiny-emitter "^2.0.0" - cliui@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" @@ -3827,16 +3777,6 @@ component-emitter@^1.2.1: resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== -component-props@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/component-props/-/component-props-1.1.1.tgz#f9b7df9b9927b6e6d97c9bd272aa867670f34944" - integrity sha1-+bffm5kntubZfJvScqqGdnDzSUQ= - -component-xor@0.0.4: - version "0.0.4" - resolved "https://registry.yarnpkg.com/component-xor/-/component-xor-0.0.4.tgz#c55d83ccc1b94cd5089a4e93fa7891c7263e59aa" - integrity sha1-xV2DzMG5TNUImk6T+niRxyY+Wao= - compress-commons@^1.2.0: version "1.2.2" resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-1.2.2.tgz#524a9f10903f3a813389b0225d27c48bb751890f" @@ -3913,11 +3853,6 @@ configstore@^5.0.1: write-file-atomic "^3.0.0" xdg-basedir "^4.0.0" -consola@^2.10.1: - version "2.12.2" - resolved "https://registry.yarnpkg.com/consola/-/consola-2.12.2.tgz#9610f158e7b0a9ecc8f8bb0c4fc8e7c52bf41d05" - integrity sha512-c9mzemrAk57s3UIjepn8KKkuEH5fauMdot5kFSJUnqHcnApVS9Db8Rbv5AZ1Iz6lXzaGe9z1crQXhJtGX4h/Og== - console-browserify@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" @@ -3928,13 +3863,6 @@ console-control-strings@^1.0.0, console-control-strings@~1.1.0: resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= -consolidate@^0.15.1: - version "0.15.1" - resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.15.1.tgz#21ab043235c71a07d45d9aad98593b0dba56bab7" - integrity sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw== - dependencies: - bluebird "^3.1.1" - constants-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" @@ -4228,11 +4156,6 @@ date-fns@^2.0.1, date-fns@^2.14.0: resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.14.0.tgz#359a87a265bb34ef2e38f93ecf63ac453f9bc7ba" integrity sha512-1zD+68jhFgDIM0rF05rcwYO8cExdNqxjq4xP1QKM60Q45mnO6zaMWB4tOzrIr4M4GSLntsKeE4c9Bdl2jhL/yw== -de-indent@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" - integrity sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0= - debounce-fn@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/debounce-fn/-/debounce-fn-4.0.0.tgz#ed76d206d8a50e60de0dd66d494d82835ffe61c7" @@ -4368,11 +4291,6 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= -delegate@^3.1.2: - version "3.2.0" - resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" - integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== - delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" @@ -4473,14 +4391,6 @@ dom-helpers@^5.0.1: "@babel/runtime" "^7.8.7" csstype "^2.6.7" -dom-iterator@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/dom-iterator/-/dom-iterator-1.0.0.tgz#9c09899846ec41c2d257adc4d6015e4759ef05ad" - integrity sha512-7dsMOQI07EMU98gQM8NSB3GsAiIeBYIPKpnxR3c9xOvdvBjChAcOM0iJ222I3p5xyiZO9e5oggkNaCusuTdYig== - dependencies: - component-props "1.1.1" - component-xor "0.0.4" - dom-serializer@0: version "0.2.2" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" @@ -4875,11 +4785,6 @@ escape-goat@^2.0.0: resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-2.1.1.tgz#1b2dc77003676c457ec760b2dc68edb648188675" integrity sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q== -escape-html@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" - integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= - escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -4907,15 +4812,6 @@ escodegen@^1.14.1, escodegen@^1.8.1: optionalDependencies: source-map "~0.6.1" -eslint-plugin-vue@^6.2.2: - version "6.2.2" - resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-6.2.2.tgz#27fecd9a3a24789b0f111ecdd540a9e56198e0fe" - integrity sha512-Nhc+oVAHm0uz/PkJAWscwIT4ijTrK5fqNqz9QB1D35SbbuMG1uB6Yr5AJpvPSWg+WOw7nYNswerYh0kOk64gqQ== - dependencies: - natural-compare "^1.4.0" - semver "^5.6.0" - vue-eslint-parser "^7.0.0" - eslint-scope@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" @@ -4986,15 +4882,6 @@ eslint@^7.3.1: text-table "^0.2.0" v8-compile-cache "^2.0.3" -espree@^6.2.1: - version "6.2.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-6.2.1.tgz#77fc72e1fd744a2052c20f38a5b575832e82734a" - integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== - dependencies: - acorn "^7.1.1" - acorn-jsx "^5.2.0" - eslint-visitor-keys "^1.1.0" - espree@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/espree/-/espree-7.1.0.tgz#a9c7f18a752056735bf1ba14cb1b70adc3a5ce1c" @@ -5014,7 +4901,7 @@ esprima@^4.0.0, esprima@^4.0.1: resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== -esquery@^1.0.1, esquery@^1.2.0: +esquery@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== @@ -5783,13 +5670,6 @@ globule@^1.0.0: lodash "~4.17.10" minimatch "~3.0.2" -good-listener@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/good-listener/-/good-listener-1.2.2.tgz#d53b30cdf9313dffb7dc9a0d477096aa6d145c50" - integrity sha1-1TswzfkxPf+33JoNR3CWqm0UXFA= - dependencies: - delegate "^3.1.2" - got@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/got/-/got-8.3.2.tgz#1d23f64390e97f776cac52e5b936e5f514d2e937" @@ -5971,11 +5851,6 @@ hash-base@^3.0.0: readable-stream "^3.6.0" safe-buffer "^5.2.0" -hash-sum@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" - integrity sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ= - hash.js@^1.0.0, hash.js@^1.0.3: version "1.1.7" resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" @@ -5991,7 +5866,7 @@ hashicon@^0.3.0: dependencies: js-sha3 "^0.8.0" -he@^1.1.0, he@^1.2.0: +he@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== @@ -7663,7 +7538,7 @@ lowercase-keys@^2.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== -lru-cache@^4.0.1, lru-cache@^4.1.2: +lru-cache@^4.0.1: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== @@ -7832,13 +7707,6 @@ meow@^3.1.0, meow@^3.7.0: redent "^1.0.0" trim-newlines "^1.0.0" -merge-source-map@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.1.0.tgz#2fdde7e6020939f70906a68f2d7ae685e4c8c646" - integrity sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw== - dependencies: - source-map "^0.6.1" - merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -8151,11 +8019,6 @@ no-case@^3.0.3: lower-case "^2.0.1" tslib "^1.10.0" -node-fetch@^2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.0.tgz#e633456386d4aa55863f676a7ab0daa8fdecb0fd" - integrity sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA== - node-forge@^0.7.5: version "0.7.6" resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.7.6.tgz#fdf3b418aee1f94f0ef642cd63486c77ca9724ac" @@ -9090,16 +8953,6 @@ popper.js@1.16.1-lts: resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1-lts.tgz#cf6847b807da3799d80ee3d6d2f90df8a3f50b05" integrity sha512-Kjw8nKRl1m+VrSFCoVGPph93W/qrSO7ZkqPpTf7F4bk/sqcfWK019dWBUpE/fBOsOQY1dks/Bmcbfn1heM/IsA== -popper.js@^1.16.1: - version "1.16.1" - resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b" - integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== - -portal-vue@^2.1.7: - version "2.1.7" - resolved "https://registry.yarnpkg.com/portal-vue/-/portal-vue-2.1.7.tgz#ea08069b25b640ca08a5b86f67c612f15f4e4ad4" - integrity sha512-+yCno2oB3xA7irTt0EU5Ezw22L2J51uKAacE/6hMPMoO/mx3h4rXFkkBkT4GFsMDv/vEe8TNKC3ujJJ0PTwb6g== - posix-character-classes@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" @@ -9186,11 +9039,6 @@ prepend-http@^2.0.0: resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= -prettier@^1.18.2: - version "1.19.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" - integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== - pretty-bytes@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-1.0.4.tgz#0a22e8210609ad35542f8c8d5d2159aff0751c84" @@ -9227,13 +9075,6 @@ pretty-format@^26.0.1: ansi-styles "^4.0.0" react-is "^16.12.0" -prismjs@^1.20.0: - version "1.20.0" - resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.20.0.tgz#9b685fc480a3514ee7198eac6a3bf5024319ff03" - integrity sha512-AEDjSrVNkynnw6A+B1DsFkd6AVdTnp+/WoUixFRULlCLZVRZlVQMVWio/16jv7G1FscUxQxOQhWwApgbnxr6kQ== - optionalDependencies: - clipboard "^2.0.0" - private@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" @@ -10136,11 +9977,6 @@ scss-tokenizer@^0.2.3: js-base64 "^2.1.8" source-map "^0.4.2" -select@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" - integrity sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0= - semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" @@ -10373,11 +10209,6 @@ sort-keys@^2.0.0: dependencies: is-plain-obj "^1.0.0" -sortablejs@^1.10.1: - version "1.10.2" - resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.10.2.tgz#6e40364d913f98b85a14f6678f92b5c1221f5290" - integrity sha512-YkPGufevysvfwn5rfdlGyrGjt7/CRHwvRPogD/lC+TnvcN29jDpCifKP+rBqf+LRldfXSTh+0CGLcSg0VIxq3A== - source-list-map@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" @@ -11042,11 +10873,6 @@ timers-browserify@^2.0.4: dependencies: setimmediate "^1.0.4" -tiny-emitter@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/tiny-emitter/-/tiny-emitter-2.1.0.tgz#1d1a56edfc51c43e863cbb5382a72330e3555423" - integrity sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q== - tiny-invariant@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.1.0.tgz#634c5f8efdc27714b7f386c35e6760991d230875" @@ -11350,13 +11176,6 @@ underscore@^1.9.1: resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.10.2.tgz#73d6aa3668f3188e4adb0f1943bd12cfd7efaaaf" integrity sha512-N4P+Q/BuyuEKFJ43B9gYuOj4TQUHXX+j2FqguVOpjkssLUUrnJofCcBccJSCoeturDoZU6GorDTHSvUDlSQbTg== -unescape@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/unescape/-/unescape-1.0.1.tgz#956e430f61cad8a4d57d82c518f5e6cc5d0dda96" - integrity sha512-O0+af1Gs50lyH1nUu3ZyYS1cRh01Q/kUKatTOkSs7jukXE6/NebucDVxyiDsA9AQ4JC1V1jUH9EO8JX2nMDgGQ== - dependencies: - extend-shallow "^2.0.1" - unicode-canonical-property-names-ecmascript@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" @@ -11611,96 +11430,6 @@ vm-browserify@^1.0.1: resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== -vue-electron@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/vue-electron/-/vue-electron-1.0.6.tgz#e798e03180b8933539defe31f92e53b9242b9406" - integrity sha1-55jgMYC4kzU53v4x+S5TuSQrlAY= - -vue-eslint-parser@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/vue-eslint-parser/-/vue-eslint-parser-7.1.0.tgz#9cdbcc823e656b087507a1911732b867ac101e83" - integrity sha512-Kr21uPfthDc63nDl27AGQEhtt9VrZ9nkYk/NTftJ2ws9XiJwzJJCnCr3AITQ2jpRMA0XPGDECxYH8E027qMK9Q== - dependencies: - debug "^4.1.1" - eslint-scope "^5.0.0" - eslint-visitor-keys "^1.1.0" - espree "^6.2.1" - esquery "^1.0.1" - lodash "^4.17.15" - -vue-functional-data-merge@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/vue-functional-data-merge/-/vue-functional-data-merge-3.1.0.tgz#08a7797583b7f35680587f8a1d51d729aa1dc657" - integrity sha512-leT4kdJVQyeZNY1kmnS1xiUlQ9z1B/kdBFCILIjYYQDqZgLqCLa0UhjSSeRX6c3mUe6U5qYeM8LrEqkHJ1B4LA== - -vue-hot-reload-api@^2.3.0: - version "2.3.4" - resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz#532955cc1eb208a3d990b3a9f9a70574657e08f2" - integrity sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog== - -vue-loader@^15.9.2: - version "15.9.2" - resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-15.9.2.tgz#ae01f5f4c9c6a04bff4483912e72ef91a402c1ae" - integrity sha512-oXBubaY//CYEISBlHX+c2YPJbmOH68xXPXjFv4MAgPqQvUsnjrBAjCJi8HXZ/r/yfn0tPL5VZj1Zcp8mJPI8VA== - dependencies: - "@vue/component-compiler-utils" "^3.1.0" - hash-sum "^1.0.2" - loader-utils "^1.1.0" - vue-hot-reload-api "^2.3.0" - vue-style-loader "^4.1.0" - -vue-prism-editor@^0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/vue-prism-editor/-/vue-prism-editor-0.6.1.tgz#e7c5ed39eecd798d2b4a3a6864985e90ed1f0c00" - integrity sha512-UyFLZ242eAplU0C1Tx/ZHSKFTPODQDMBuW9qqgMJyZqHFL2iuIbfT8EWmKtoNUn8w9VWS9IIicPs2odz2eni4Q== - dependencies: - dom-iterator "^1.0.0" - escape-html "^1.0.3" - unescape "^1.0.1" - -vue-router@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.3.2.tgz#0099de402edb2fe92f9711053ab5a2156f239cad" - integrity sha512-5sEbcfb7MW8mY8lbUVbF4kgcipGXsagkM/X+pb6n0MhjP+RorWIUTPAPSqgPaiPOxVCXgAItBl8Vwz8vq78faA== - -vue-style-loader@^4.1.0, vue-style-loader@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-4.1.2.tgz#dedf349806f25ceb4e64f3ad7c0a44fba735fcf8" - integrity sha512-0ip8ge6Gzz/Bk0iHovU9XAUQaFt/G2B61bnWa2tCcqqdgfHs1lF9xXorFbE55Gmy92okFT+8bfmySuUOu13vxQ== - dependencies: - hash-sum "^1.0.2" - loader-utils "^1.0.2" - -vue-template-compiler@^2.6.11: - version "2.6.11" - resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.6.11.tgz#c04704ef8f498b153130018993e56309d4698080" - integrity sha512-KIq15bvQDrcCjpGjrAhx4mUlyyHfdmTaoNfeoATHLAiWB+MU3cx4lOzMwrnUh9cCxy0Lt1T11hAFY6TQgroUAA== - dependencies: - de-indent "^1.0.2" - he "^1.1.0" - -vue-template-es2015-compiler@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" - integrity sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw== - -vue@^2.6.11: - version "2.6.11" - resolved "https://registry.yarnpkg.com/vue/-/vue-2.6.11.tgz#76594d877d4b12234406e84e35275c6d514125c5" - integrity sha512-VfPwgcGABbGAue9+sfrD4PuwFar7gPb1yl1UK1MwXoQPAw0BKSqWfoYCT/ThFrdEVWoI51dBuyCoiNU9bZDZxQ== - -vuedraggable@^2.23.2: - version "2.23.2" - resolved "https://registry.yarnpkg.com/vuedraggable/-/vuedraggable-2.23.2.tgz#0d95d7fdf4f02f56755a26b3c9dca5c7ca9cfa72" - integrity sha512-PgHCjUpxEAEZJq36ys49HfQmXglattf/7ofOzUrW2/rRdG7tu6fK84ir14t1jYv4kdXewTEa2ieKEAhhEMdwkQ== - dependencies: - sortablejs "^1.10.1" - -vuex@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/vuex/-/vuex-3.4.0.tgz#20cc086062d750769fce1febb34e7fceeaebde45" - integrity sha512-ajtqwEW/QhnrBZQsZxCLHThZZaa+Db45c92Asf46ZDXu6uHXgbfVuBaJ4gzD2r4UX0oMJHstFwd2r2HM4l8umg== - w3c-hr-time@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd"