diff --git a/.fatherrc.js b/.fatherrc.js index 470c6522..057ad028 100644 --- a/.fatherrc.js +++ b/.fatherrc.js @@ -1,10 +1,7 @@ -import { readdirSync } from "fs"; -import { join } from "path"; - // utils must build before core // runtime must build before renderer-react -const headPkgs = [ +const pkgs = [ "fes-runtime", "fes-compiler", "fes", @@ -20,19 +17,14 @@ const headPkgs = [ "fes-plugin-vuex", "create-fes-app", "fes-plugin-qiankun", - "fes-plugin-sass" + "fes-plugin-sass", + "fes-plugin-monaco-editor" ]; -const tailPkgs = []; -// const otherPkgs = readdirSync(join(__dirname, 'packages')).filter( -// (pkg) => -// pkg.charAt(0) !== '.' && !headPkgs.includes(pkg) && !tailPkgs.includes(pkg), -// ); -const otherPkgs = []; export default { target: "node", cjs: { type: "babel", lazy: false }, disableTypeCheck: true, - pkgs: [...headPkgs, ...otherPkgs, ...tailPkgs], + pkgs, }; diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 00000000..29ed0c41 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,4 @@ +{ + "singleQuote": true, + "trailingComma": "none" +} \ No newline at end of file diff --git a/package.json b/package.json index 4596e5c4..f8ce3bab 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,8 @@ "ver": "lerna version patch --no-changelog --no-commit-hooks --no-private", "release": "father-build && lerna publish from-git", "docs:dev": "vuepress dev docs --clean-cache", - "docs:build": "vuepress build docs --clean-cache" + "docs:build": "vuepress build docs --clean-cache", + "lint": "eslint -c ./.eslintrc.js --ext .js,.jsx,.vue,.ts" }, "license": "MIT", "keywords": [ @@ -34,7 +35,7 @@ "@vuepress/plugin-pwa": "^2.0.0-alpha.18", "@vuepress/plugin-pwa-popup": "^2.0.0-alpha.18", "@vuepress/theme-vue": "^2.0.0-alpha.18", - "@webank/eslint-config-webank": "0.2.10", + "@webank/eslint-config-webank": "0.3.0", "commitizen": "^4.2.1", "cz-conventional-changelog": "^3.3.0", "esbuild-loader": "^2.7.0", diff --git a/packages/fes-plugin-monaco-editor/LICENSE b/packages/fes-plugin-monaco-editor/LICENSE new file mode 100644 index 00000000..0978fbf7 --- /dev/null +++ b/packages/fes-plugin-monaco-editor/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020-present webank + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/packages/fes-plugin-monaco-editor/package.json b/packages/fes-plugin-monaco-editor/package.json new file mode 100644 index 00000000..04228ecd --- /dev/null +++ b/packages/fes-plugin-monaco-editor/package.json @@ -0,0 +1,40 @@ +{ + "name": "@fesjs/plugin-monaco-editor", + "version": "2.0.0-rc.0", + "description": "@fesjs/plugin-monaco-editor", + "main": "lib/index.js", + "files": [ + "lib" + ], + "scripts": { + }, + "repository": { + "type": "git", + "url": "git+https://github.com/WeBankFinTech/fes.js.git", + "directory": "packages/fes-plugin-monaco-editor" + }, + "keywords": [ + "fes" + ], + "author": "harrywan", + "license": "MIT", + "bugs": { + "url": "https://github.com/WeBankFinTech/fes.js/issues" + }, + "homepage": "https://github.com/WeBankFinTech/fes.js#readme", + "publishConfig": { + "access": "public" + }, + "dependencies": { + "@umijs/utils": "3.3.3", + "lodash": "^4.17.15", + "monaco-editor": "^0.20.0", + "monaco-editor-webpack-plugin": "^1.9.1" + }, + "devDependencies": { + }, + "peerDependencies": { + "@webank/fes": "^2.0.0", + "vue": "^3.0.5" + } +} diff --git a/packages/fes-plugin-monaco-editor/src/index.js b/packages/fes-plugin-monaco-editor/src/index.js new file mode 100644 index 00000000..9fed1c1b --- /dev/null +++ b/packages/fes-plugin-monaco-editor/src/index.js @@ -0,0 +1,85 @@ +import { readFileSync } from 'fs'; +import { join } from 'path'; + +const namespace = 'plugin-monaco-editor'; + +export default (api) => { + const { + utils: { Mustache } + } = api; + + api.describe({ + key: 'monacoEditor', + config: { + schema(joi) { + return joi.object().keys({ + filename: joi.string(), + publicPath: joi.string(), + languages: joi.array(), + features: joi.array(), + globalAPI: joi.boolean() + }); + } + }, + default: { + } + }); + + const absoluteFilePath = join(namespace, 'core.js'); + + const absRuntimeFilePath = join(namespace, 'runtime.js'); + + const absLoaderFilePath = join(namespace, 'loader.js'); + + api.onGenerateFiles(() => { + // 文件写出 + api.writeTmpFile({ + path: absoluteFilePath, + content: Mustache.render( + readFileSync(join(__dirname, 'runtime/core.tpl'), 'utf-8'), + { + } + ) + }); + + api.writeTmpFile({ + path: absRuntimeFilePath, + content: Mustache.render( + readFileSync(join(__dirname, 'runtime/runtime.tpl'), 'utf-8') + ) + }); + + api.writeTmpFile({ + path: absLoaderFilePath, + content: Mustache.render( + readFileSync(join(__dirname, 'runtime/loader.tpl'), 'utf-8') + ) + }); + + api.copyTmpFiles({ + namespace, + path: join(__dirname, 'runtime'), + ignore: ['.tpl'] + }); + }); + + api.addPluginExports(() => [ + { + specifiers: ['monaco', 'MonacoEditor'], + source: absoluteFilePath + } + ]); + + api.addRuntimePluginKey(() => 'monacoEditor'); + + api.addRuntimePlugin(() => `@@/${absRuntimeFilePath}`); + + api.chainWebpack((webpackConfig) => { + webpackConfig + .plugin('monaco-editor') + .use(require('monaco-editor-webpack-plugin'), [ + api.config?.monacoEditor || {} + ]); + return webpackConfig; + }); +}; diff --git a/packages/fes-plugin-monaco-editor/src/runtime/core.tpl b/packages/fes-plugin-monaco-editor/src/runtime/core.tpl new file mode 100644 index 00000000..2570bb95 --- /dev/null +++ b/packages/fes-plugin-monaco-editor/src/runtime/core.tpl @@ -0,0 +1,6 @@ +import Editor from './editor'; +import _monaco from './loader'; + +export const MonacoEditor = Editor; + +export const monaco = _monaco; \ No newline at end of file diff --git a/packages/fes-plugin-monaco-editor/src/runtime/editor.vue b/packages/fes-plugin-monaco-editor/src/runtime/editor.vue new file mode 100644 index 00000000..7c98240e --- /dev/null +++ b/packages/fes-plugin-monaco-editor/src/runtime/editor.vue @@ -0,0 +1,304 @@ + + + diff --git a/packages/fes-plugin-monaco-editor/src/runtime/loader.tpl b/packages/fes-plugin-monaco-editor/src/runtime/loader.tpl new file mode 100644 index 00000000..0c469cc3 --- /dev/null +++ b/packages/fes-plugin-monaco-editor/src/runtime/loader.tpl @@ -0,0 +1,7 @@ +import * as monaco from 'monaco-editor'; +import defaultTheme from './theme/default'; + +// 默认主题 +defaultTheme.register(monaco); + +export default monaco; \ No newline at end of file diff --git a/packages/fes-plugin-monaco-editor/src/runtime/runtime.tpl b/packages/fes-plugin-monaco-editor/src/runtime/runtime.tpl new file mode 100644 index 00000000..e69de29b diff --git a/packages/fes-plugin-monaco-editor/src/runtime/theme/default.js b/packages/fes-plugin-monaco-editor/src/runtime/theme/default.js new file mode 100644 index 00000000..f21c8cdd --- /dev/null +++ b/packages/fes-plugin-monaco-editor/src/runtime/theme/default.js @@ -0,0 +1,111 @@ +/* eslint-disable max-len */ +export default { + register(monaco) { + monaco.editor.defineTheme('defaultTheme', { + base: 'vs', + inherit: true, + rules: [ + { + foreground: 'c41a16', + token: 'string' + }, + { + foreground: '1c00cf', + token: 'constant.numeric' + }, + { + foreground: 'aa0d91', + token: 'keyword' + }, + { + foreground: '000000', + token: 'keyword.operator' + }, + { + foreground: 'aa0d91', + token: 'constant.language' + }, + { + foreground: '990000', + token: 'support.class.exception' + }, + { + foreground: '000000', + token: 'entity.name.function' + }, + { + fontStyle: 'bold underline', + token: 'entity.name.type' + }, + { + fontStyle: 'italic', + token: 'variable.parameter' + }, + { + foreground: '007400', + token: 'comment' + }, + { + foreground: 'ff0000', + token: 'invalid' + }, + { + background: 'e71a1100', + token: 'invalid.deprecated.trailing-whitespace' + }, + { + foreground: '000000', + background: 'fafafafc', + token: 'text source' + }, + { + foreground: 'aa0d91', + token: 'meta.tag' + }, + { + foreground: 'aa0d91', + token: 'declaration.tag' + }, + { + foreground: '000000', + fontStyle: 'bold', + token: 'support' + }, + { + foreground: 'aa0d91', + token: 'storage' + }, + { + fontStyle: 'bold underline', + token: 'entity.name.section' + }, + { + foreground: '000000', + fontStyle: 'bold', + token: 'entity.name.function.frame' + }, + { + foreground: '333333', + token: 'meta.tag.preprocessor.xml' + }, + { + foreground: '994500', + fontStyle: 'italic', + token: 'entity.other.attribute-name' + }, + { + foreground: '881280', + token: 'entity.name.tag' + } + ], + colors: { + 'editor.foreground': '#000000', + 'editor.background': '#FFFFFF', + 'editor.selectionBackground': '#BAD6FD', + 'editor.lineHighlightBackground': '#0000001A', + 'editorCursor.foreground': '#000000', + 'editorWhitespace.foreground': '#B3B3B3F4' + } + }); + } +}; diff --git a/packages/fes-plugin-qiankun/package.json b/packages/fes-plugin-qiankun/package.json index 985d5ea9..ca4d540d 100644 --- a/packages/fes-plugin-qiankun/package.json +++ b/packages/fes-plugin-qiankun/package.json @@ -19,7 +19,7 @@ "keywords": [ "fes" ], - "author": "michaelxxie", + "author": "michaelxxie、harrywan", "license": "MIT", "bugs": { "url": "https://github.com/WeBankFinTech/fes.js/issues" @@ -32,7 +32,7 @@ "@umijs/utils": "3.3.3", "address": "^1.1.2", "lodash": "^4.17.15", - "qiankun": "2.3.4" + "qiankun": "^2.4.4" }, "devDependencies": { "npm-run-all": "^4.1.5" diff --git a/packages/fes-template/.fes.js b/packages/fes-template/.fes.js index 974b680e..9aa3e080 100644 --- a/packages/fes-template/.fes.js +++ b/packages/fes-template/.fes.js @@ -61,7 +61,10 @@ export default { name: "test", }, ], - }, + },{ + name: 'editor', + icon: "/wine-outline.svg" + } ], }, locale: { @@ -82,5 +85,8 @@ export default { dynamicImport: true, extraBabelPlugins: [ ['import', { libraryName: 'ant-design-vue', libraryDirectory: 'es', style: 'css' }, 'ant-design-vue'], - ] + ], + monacoEditor: { + // languages: ['javascript', 'typescript', 'html', 'json'] + } }; diff --git a/packages/fes-template/package.json b/packages/fes-template/package.json index 46121b17..ed058d38 100644 --- a/packages/fes-template/package.json +++ b/packages/fes-template/package.json @@ -57,6 +57,7 @@ "@fesjs/plugin-request": "^2.0.0", "@fesjs/plugin-qiankun": "^2.0.0", "@fesjs/plugin-sass": "^2.0.0", + "@fesjs/plugin-monaco-editor": "^2.0.0-rc.0", "ant-design-vue": "2.0.0", "vue": "^3.0.5", "vuex": "^4.0.0" diff --git a/packages/fes-template/src/pages/editor.vue b/packages/fes-template/src/pages/editor.vue new file mode 100644 index 00000000..1ec87ff6 --- /dev/null +++ b/packages/fes-template/src/pages/editor.vue @@ -0,0 +1,41 @@ + + +{ + "name": "editor", + "title": "monaco-editor" +} + + diff --git a/yarn.lock b/yarn.lock index 992f1cfd..24f8e95f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -478,7 +478,7 @@ resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz#b4af32ddd473c0bfa643bd7ff0728b8e71b81ea0" integrity sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ== -"@babel/parser@^7.1.0", "@babel/parser@^7.10.4", "@babel/parser@^7.11.5", "@babel/parser@^7.12.0", "@babel/parser@^7.12.13", "@babel/parser@^7.12.3", "@babel/parser@^7.12.5", "@babel/parser@^7.13.0", "@babel/parser@^7.13.4", "@babel/parser@^7.4.3", "@babel/parser@^7.7.0": +"@babel/parser@^7.1.0", "@babel/parser@^7.10.4", "@babel/parser@^7.11.5", "@babel/parser@^7.12.0", "@babel/parser@^7.12.13", "@babel/parser@^7.12.3", "@babel/parser@^7.12.5", "@babel/parser@^7.13.0", "@babel/parser@^7.13.4", "@babel/parser@^7.4.3": version "7.13.9" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.13.9.tgz#ca34cb95e1c2dd126863a84465ae8ef66114be99" integrity sha512-nEUfRiARCcaVo3ny3ZQjURjHQZUo/JkEw7rLlSZy/psWGnvwXFtPcr6jb7Yb41DVW5LTe6KRq9LGleRNsg1Frw== @@ -1657,7 +1657,7 @@ globals "^11.1.0" lodash "^4.17.19" -"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.11.5", "@babel/traverse@^7.12.1", "@babel/traverse@^7.13.0", "@babel/traverse@^7.4.3", "@babel/traverse@^7.7.0": +"@babel/traverse@^7.0.0", "@babel/traverse@^7.1.0", "@babel/traverse@^7.11.5", "@babel/traverse@^7.12.1", "@babel/traverse@^7.13.0", "@babel/traverse@^7.4.3": version "7.13.0" resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.13.0.tgz#6d95752475f86ee7ded06536de309a65fc8966cc" integrity sha512-xys5xi5JEhzC3RzEmSGrs/b3pJW/o87SypZ+G/PhaE7uqVQNv/jlmVIBXuoh5atqQ434LfXV+sf23Oxj0bchJQ== @@ -1690,7 +1690,7 @@ lodash "^4.17.19" to-fast-properties "^2.0.0" -"@babel/types@^7.0.0", "@babel/types@^7.10.4", "@babel/types@^7.11.5", "@babel/types@^7.12.0", "@babel/types@^7.12.1", "@babel/types@^7.12.13", "@babel/types@^7.12.17", "@babel/types@^7.12.5", "@babel/types@^7.12.6", "@babel/types@^7.13.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4", "@babel/types@^7.7.0": +"@babel/types@^7.0.0", "@babel/types@^7.10.4", "@babel/types@^7.11.5", "@babel/types@^7.12.0", "@babel/types@^7.12.1", "@babel/types@^7.12.13", "@babel/types@^7.12.17", "@babel/types@^7.12.5", "@babel/types@^7.12.6", "@babel/types@^7.13.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3", "@babel/types@^7.4.0", "@babel/types@^7.4.4": version "7.13.0" resolved "https://registry.npmjs.org/@babel/types/-/types-7.13.0.tgz#74424d2816f0171b4100f0ab34e9a374efdf7f80" integrity sha512-hE+HE8rnG1Z6Wzo+MhaKE5lM5eMx71T4EHJgku2E3xIfaULhDcxiiRxUYgwX8qwP1BBSlag+TdGOt6JAidIZTA== @@ -1911,21 +1911,6 @@ "@docsearch/css" "3.0.0-alpha.31" algoliasearch "^4.0.0" -"@eslint/eslintrc@^0.4.0": - version "0.4.0" - resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz#99cc0a0584d72f1df38b900fb062ba995f395547" - integrity sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog== - dependencies: - ajv "^6.12.4" - debug "^4.1.1" - espree "^7.3.0" - globals "^12.1.0" - ignore "^4.0.6" - import-fresh "^3.2.1" - js-yaml "^3.13.1" - minimatch "^3.0.4" - strip-json-comments "^3.1.1" - "@eslint/eslintrc@^0.4.1": version "0.4.1" resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.1.tgz#442763b88cecbe3ee0ec7ca6d6dd6168550cbf14" @@ -4443,21 +4428,6 @@ ora "^5.3.0" upath "^2.0.1" -"@webank/eslint-config-webank@0.2.10": - version "0.2.10" - resolved "https://registry.npmjs.org/@webank/eslint-config-webank/-/eslint-config-webank-0.2.10.tgz#43538752a051abe8019933601aac097cb081938f" - integrity sha512-DAA71s0V+ib4dAL/w7Rj3FMUljcacgTKPNZWymv4YWkUwbHhWJApYlMw1d864MiPEg4PLQtaiAtHokERoEWOSQ== - dependencies: - babel-eslint "^10.1.0" - confusing-browser-globals "^1.0.10" - eslint "^7.15.0" - eslint-plugin-angular "^4.0.1" - eslint-plugin-html "^6.1.1" - eslint-plugin-import "^2.18.2" - eslint-plugin-node "^11.1.0" - eslint-plugin-vue "^7.5.0" - vue-eslint-parser "^7.4.1" - "@webank/eslint-config-webank@0.3.0": version "0.3.0" resolved "https://registry.yarnpkg.com/@webank/eslint-config-webank/-/eslint-config-webank-0.3.0.tgz#250e0eb726958d038529156f6be175b8766ae1d2" @@ -4757,16 +4727,6 @@ ajv@^6.1.0, ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^7.0.2: - version "7.1.1" - resolved "https://registry.npmjs.org/ajv/-/ajv-7.1.1.tgz#1e6b37a454021fa9941713f38b952fc1c8d32a84" - integrity sha512-ga/aqDYnUy/o7vbsRTFhhTsNeXiYb5JWDIcRIeZfwRNCefwjNTVYCGdGSUrEmiu3yDK3vFvNbgJxvrQW4JXrYQ== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - ajv@^8.0.1: version "8.5.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.5.0.tgz#695528274bcb5afc865446aa275484049a18ae4b" @@ -5061,7 +5021,7 @@ array-ify@^1.0.0: resolved "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= -array-includes@^3.1.1, array-includes@^3.1.3: +array-includes@^3.1.3: version "3.1.3" resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz#c7f619b382ad2afaf5326cddfdc0afc61af7690a" integrity sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A== @@ -5104,7 +5064,7 @@ array-unique@^0.3.2: resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= -array.prototype.flat@^1.2.3, array.prototype.flat@^1.2.4: +array.prototype.flat@^1.2.4: version "1.2.4" resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz#6ef638b43312bd401b4c6199fdec7e2dc9e9a123" integrity sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg== @@ -5241,18 +5201,6 @@ babel-core@^7.0.0-bridge.0: resolved "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz#95a492ddd90f9b4e9a4a1da14eb335b87b634ece" integrity sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg== -babel-eslint@^10.1.0: - version "10.1.0" - resolved "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz#6968e568a910b78fb3779cdd8b6ac2f479943232" - integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== - dependencies: - "@babel/code-frame" "^7.0.0" - "@babel/parser" "^7.7.0" - "@babel/traverse" "^7.7.0" - "@babel/types" "^7.7.0" - eslint-visitor-keys "^1.0.0" - resolve "^1.12.0" - babel-jest@^26.6.3: version "26.6.3" resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" @@ -6456,11 +6404,6 @@ consolidate@^0.16.0: dependencies: bluebird "^3.7.2" -contains-path@^0.1.0: - version "0.1.0" - resolved "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a" - integrity sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo= - content-disposition@0.5.3: version "0.5.3" resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" @@ -7407,14 +7350,6 @@ dns-txt@^2.0.2: dependencies: buffer-indexof "^1.0.0" -doctrine@1.5.0: - version "1.5.0" - resolved "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" - integrity sha1-N53Ocw9hZvds76TmcHoVmwLFpvo= - dependencies: - esutils "^2.0.2" - isarray "^1.0.0" - doctrine@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" @@ -7500,13 +7435,6 @@ domhandler@^2.3.0: dependencies: domelementtype "1" -domhandler@^3.3.0: - version "3.3.0" - resolved "https://registry.npmjs.org/domhandler/-/domhandler-3.3.0.tgz#6db7ea46e4617eb15cf875df68b2b8524ce0037a" - integrity sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA== - dependencies: - domelementtype "^2.0.1" - domhandler@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/domhandler/-/domhandler-4.0.0.tgz#01ea7821de996d85f69029e81fa873c21833098e" @@ -7537,15 +7465,6 @@ domutils@^1.5.1, domutils@^1.7.0: dom-serializer "0" domelementtype "1" -domutils@^2.4.2: - version "2.4.4" - resolved "https://registry.npmjs.org/domutils/-/domutils-2.4.4.tgz#282739c4b150d022d34699797369aad8d19bbbd3" - integrity sha512-jBC0vOsECI4OMdD0GC9mGn7NXPLb+Qt6KW1YDQzeQYRUFKmNG8lh7mO5HiELfr+lLQE7loDVI4QcAxV80HS+RA== - dependencies: - dom-serializer "^1.0.1" - domelementtype "^2.0.1" - domhandler "^4.0.0" - domutils@^2.4.3, domutils@^2.5.2: version "2.6.0" resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.6.0.tgz#2e15c04185d43fb16ae7057cb76433c6edb938b7" @@ -7864,14 +7783,6 @@ eslint-import-resolver-node@^0.3.4: debug "^2.6.9" resolve "^1.13.1" -eslint-module-utils@^2.6.0: - version "2.6.0" - resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6" - integrity sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA== - dependencies: - debug "^2.6.9" - pkg-dir "^2.0.0" - eslint-module-utils@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.1.tgz#b51be1e473dd0de1c5ea638e22429c2490ea8233" @@ -7893,13 +7804,6 @@ eslint-plugin-es@^3.0.0: eslint-utils "^2.0.0" regexpp "^3.0.0" -eslint-plugin-html@^6.1.1: - version "6.1.1" - resolved "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-6.1.1.tgz#95aee151900b9bb2da5fa017b45cc64456a0a74e" - integrity sha512-JSe3ZDb7feKMnQM27XWGeoIjvP4oWQMJD9GZ6wW67J7/plVL87NK72RBwlvfc3tTZiYUchHhxAwtgEd1GdofDA== - dependencies: - htmlparser2 "^5.0.1" - eslint-plugin-html@^6.1.2: version "6.1.2" resolved "https://registry.yarnpkg.com/eslint-plugin-html/-/eslint-plugin-html-6.1.2.tgz#fa26e4804428956c80e963b6499c192061c2daf3" @@ -7907,25 +7811,6 @@ eslint-plugin-html@^6.1.2: dependencies: htmlparser2 "^6.0.1" -eslint-plugin-import@^2.18.2: - version "2.22.1" - resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz#0896c7e6a0cf44109a2d97b95903c2bb689d7702" - integrity sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw== - dependencies: - array-includes "^3.1.1" - array.prototype.flat "^1.2.3" - contains-path "^0.1.0" - debug "^2.6.9" - doctrine "1.5.0" - eslint-import-resolver-node "^0.3.4" - eslint-module-utils "^2.6.0" - has "^1.0.3" - minimatch "^3.0.4" - object.values "^1.1.1" - read-pkg-up "^2.0.0" - resolve "^1.17.0" - tsconfig-paths "^3.9.0" - eslint-plugin-import@^2.22.1: version "2.23.3" resolved "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.23.3.tgz#8a1b073289fff03c4af0f04b6df956b7d463e191" @@ -7959,16 +7844,6 @@ eslint-plugin-node@^11.1.0: resolve "^1.10.1" semver "^6.1.0" -eslint-plugin-vue@^7.5.0: - version "7.7.0" - resolved "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.7.0.tgz#a90df4595e670821bf243bd2750ededdb74948b8" - integrity sha512-mYz4bpLGv5jx6YG/GvKkqbGSfV7uma2u1P3mLA41Q5vQl8W1MeuTneB8tfsLq6xxxesFubcrOC0BZBJ5R+eaCQ== - dependencies: - eslint-utils "^2.1.0" - natural-compare "^1.4.0" - semver "^7.3.2" - vue-eslint-parser "^7.6.0" - eslint-plugin-vue@^7.9.0: version "7.9.0" resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-7.9.0.tgz#f8e83a2a908f4c43fc8304f5401d4ff671f3d560" @@ -7994,7 +7869,7 @@ eslint-utils@^2.0.0, eslint-utils@^2.1.0: dependencies: eslint-visitor-keys "^1.1.0" -eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: +eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: version "1.3.0" resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== @@ -8009,49 +7884,6 @@ eslint-visitor-keys@^2.1.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== -eslint@^7.15.0: - version "7.21.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-7.21.0.tgz#4ecd5b8c5b44f5dedc9b8a110b01bbfeb15d1c83" - integrity sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg== - dependencies: - "@babel/code-frame" "7.12.11" - "@eslint/eslintrc" "^0.4.0" - ajv "^6.10.0" - chalk "^4.0.0" - cross-spawn "^7.0.2" - debug "^4.0.1" - doctrine "^3.0.0" - enquirer "^2.3.5" - eslint-scope "^5.1.1" - eslint-utils "^2.1.0" - eslint-visitor-keys "^2.0.0" - espree "^7.3.1" - esquery "^1.4.0" - esutils "^2.0.2" - file-entry-cache "^6.0.1" - functional-red-black-tree "^1.0.1" - glob-parent "^5.0.0" - globals "^12.1.0" - ignore "^4.0.6" - import-fresh "^3.0.0" - imurmurhash "^0.1.4" - is-glob "^4.0.0" - js-yaml "^3.13.1" - json-stable-stringify-without-jsonify "^1.0.1" - levn "^0.4.1" - lodash "^4.17.20" - minimatch "^3.0.4" - natural-compare "^1.4.0" - optionator "^0.9.1" - progress "^2.0.0" - regexpp "^3.1.0" - semver "^7.2.1" - strip-ansi "^6.0.0" - strip-json-comments "^3.1.0" - table "^6.0.4" - text-table "^0.2.0" - v8-compile-cache "^2.0.3" - eslint@^7.26.0: version "7.27.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.27.0.tgz#665a1506d8f95655c9274d84bd78f7166b07e9c7" @@ -9566,16 +9398,6 @@ htmlparser2@^3.10.1, htmlparser2@^3.9.1: inherits "^2.0.1" readable-stream "^3.1.1" -htmlparser2@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-5.0.1.tgz#7daa6fc3e35d6107ac95a4fc08781f091664f6e7" - integrity sha512-vKZZra6CSe9qsJzh0BjBGXo8dvzNsq/oGvsjfRdOrrryfeD9UOBEEQdeoqCRmKZchF5h2zOBMQ6YuQ0uRUmdbQ== - dependencies: - domelementtype "^2.0.1" - domhandler "^3.3.0" - domutils "^2.4.2" - entities "^2.0.0" - htmlparser2@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" @@ -10509,7 +10331,7 @@ is-yarn-global@^0.3.0: resolved "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz#d502d3382590ea3004893746754c89139973e232" integrity sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw== -isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: +isarray@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= @@ -11422,16 +11244,6 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" -load-json-file@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" - integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= - dependencies: - graceful-fs "^4.1.2" - parse-json "^2.2.0" - pify "^2.0.0" - strip-bom "^3.0.0" - load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -12202,6 +12014,18 @@ moment@^2.27.0: resolved "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== +monaco-editor-webpack-plugin@^1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-1.9.1.tgz#eb4bbb1c5e5bfb554541c1ae1542e74c2a9f43fd" + integrity sha512-x7fx1w3i/uwZERIgztHAAK3VQMsL8+ku0lFXXbO81hKDg8IieACqjGEa2mqEueg0c/fX+wd0oI+75wB19KJAsA== + dependencies: + loader-utils "^1.2.3" + +monaco-editor@^0.20.0: + version "0.20.0" + resolved "https://registry.yarnpkg.com/monaco-editor/-/monaco-editor-0.20.0.tgz#5d5009343a550124426cb4d965a4d27a348b4dea" + integrity sha512-hkvf4EtPJRMQlPC3UbMoRs0vTAFAYdzFQ+gpMb8A+9znae1c43q8Mab9iVsgTcg/4PNiLGGn3SlDIa8uvK1FIQ== + move-concurrently@^1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" @@ -12690,7 +12514,7 @@ object.pick@^1.3.0: dependencies: isobject "^3.0.1" -object.values@^1.1.0, object.values@^1.1.1, object.values@^1.1.3: +object.values@^1.1.0, object.values@^1.1.3: version "1.1.3" resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.3.tgz#eaa8b1e17589f02f698db093f7c62ee1699742ee" integrity sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw== @@ -13207,13 +13031,6 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" -path-type@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" - integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= - dependencies: - pify "^2.0.0" - path-type@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -14240,15 +14057,15 @@ q@^1.1.2, q@^1.5.1: resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= -qiankun@2.3.4: - version "2.3.4" - resolved "https://registry.yarnpkg.com/qiankun/-/qiankun-2.3.4.tgz#a6a6382c1e909a76f9aea1708ff46276432428f2" - integrity sha512-LJ3luGH0eAQ3xd7vH7xUtAS57eGUs4bMiCcFQx1OJ94XJ3VdKIb97jqT5p5ibOj82EPQdLJhVsB5+phm4iEXfw== +qiankun@^2.4.4: + version "2.4.4" + resolved "https://registry.yarnpkg.com/qiankun/-/qiankun-2.4.4.tgz#e98a1930af66fef9aa5a7573b789959cd742e65d" + integrity sha512-n7yrKge4po9SB6ykqyoX8JbNuDpo4G9C5V9agRy6IPWruPnyh4vxLb5UhTKVd1/CsVScP7V9gTMyy55EJFpzlA== dependencies: "@babel/runtime" "^7.10.5" import-html-entry "^1.9.0" lodash "^4.17.11" - single-spa "5.8.1" + single-spa "^5.9.2" tslib "^1.10.0" qs@6.7.0: @@ -14380,14 +14197,6 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" -read-pkg-up@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" - integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= - dependencies: - find-up "^2.0.0" - read-pkg "^2.0.0" - read-pkg-up@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" @@ -14422,15 +14231,6 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" -read-pkg@^2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" - integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= - dependencies: - load-json-file "^2.0.0" - normalize-package-data "^2.3.2" - path-type "^2.0.0" - read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -14819,7 +14619,7 @@ resolve@1.17.0: dependencies: path-parse "^1.0.6" -resolve@^1.10.0, resolve@^1.10.1, resolve@^1.12.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.16.1, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1: +resolve@^1.10.0, resolve@^1.10.1, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.16.1, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0, resolve@^1.3.2, resolve@^1.5.0, resolve@^1.8.1: version "1.20.0" resolved "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== @@ -15348,10 +15148,10 @@ simple-swizzle@^0.2.2: dependencies: is-arrayish "^0.3.1" -single-spa@5.8.1: - version "5.8.1" - resolved "https://registry.yarnpkg.com/single-spa/-/single-spa-5.8.1.tgz#86c2575e297e31d8f06945944ec97e31851a59ae" - integrity sha512-RlyLZ1IDIPdzI6mQPzCQnlgTt9jmbAXBZODmifoDut840wksPDSPhcSS8jXMpuUlqOidQiX2YuLVQSR9DEgsXw== +single-spa@^5.9.2: + version "5.9.3" + resolved "https://registry.yarnpkg.com/single-spa/-/single-spa-5.9.3.tgz#2d151cbb3b273629a5b27b30a3b8ca847dcba4c5" + integrity sha512-qMGraRzIBsodV6569Fob4cQ4/yQNrcZ5Achh3SAQDljmqUtjAZ7BAA7GAyO/l5eizb7GtTmVq9Di7ORyKw82CQ== sirv@^1.0.7: version "1.0.11" @@ -16064,16 +15864,6 @@ symbol-tree@^3.2.4: resolved "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== -table@^6.0.4: - version "6.0.7" - resolved "https://registry.npmjs.org/table/-/table-6.0.7.tgz#e45897ffbcc1bcf9e8a87bf420f2c9e5a7a52a34" - integrity sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g== - dependencies: - ajv "^7.0.2" - lodash "^4.17.20" - slice-ansi "^4.0.0" - string-width "^4.2.0" - table@^6.0.9: version "6.7.1" resolved "https://registry.yarnpkg.com/table/-/table-6.7.1.tgz#ee05592b7143831a8c94f3cee6aae4c1ccef33e2" @@ -17013,7 +16803,7 @@ vinyl@^2.0.0, vinyl@^2.1.0: remove-trailing-separator "^1.0.1" replace-ext "^1.0.0" -vue-eslint-parser@^7.4.1, vue-eslint-parser@^7.6.0: +vue-eslint-parser@^7.6.0: version "7.6.0" resolved "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.6.0.tgz#01ea1a2932f581ff244336565d712801f8f72561" integrity sha512-QXxqH8ZevBrtiZMZK0LpwaMfevQi9UL7lY6Kcp+ogWHC88AuwUPwwCIzkOUc1LR4XsYAt/F9yHXAB/QoD17QXA==