diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 00000000..6204da71 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,27 @@ +name: Deploy + +on: + push: + branches: + - textlint + +jobs: + deploy: + runs-on: ubuntu-latest + permissions: + contents: write + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + with: + node-version: '18' + - name: Build + run: yarn install && yarn run build + working-directory: ./website + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./out diff --git a/README.md b/README.md index 7381907e..a5e3d030 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,22 @@ ## AST explorer +## Fork version for textlint + +This version limited for [textlint](http://textlint.github.io/ "textlint"). + +- [@textlint/textlint-plugin-markdown](https://github.com/textlint/textlint/tree/master/packages/%40textlint/textlint-plugin-markdown) +- [@textlint/textlint-plugin-text](https://github.com/textlint/textlint/tree/master/packages/%40textlint/textlint-plugin-text) +- [textlint-plugin-html](https://github.com/textlint/textlint-plugin-html) + +Visit [https://textlint.github.io/astexplorer](https://textlint.github.io/astexplorer). + +**Developer Notes** + +- Deploy: use `website/deploy.sh` + +------ + + [![Join the chat at https://gitter.im/astexplorer/Lobby](https://badges.gitter.im/astexplorer/Lobby.svg)](https://gitter.im/astexplorer/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [![Build Status](https://travis-ci.org/fkling/astexplorer.svg?branch=master)](https://travis-ci.org/fkling/astexplorer) diff --git a/renovate.json b/renovate.json new file mode 100644 index 00000000..d7d46b39 --- /dev/null +++ b/renovate.json @@ -0,0 +1,26 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "config:base" + ], + "enabledManagers": [ + "npm" + ], + "packageRules": [ + { + "matchPackagePatterns": [ + "*" + ], + "enabled": false + }, + { + "groupName": "textlint", + "matchPackagePatterns": [ + "textlint", + "^@textlint/", + "textlint-plugin-html" + ], + "enabled": true + } + ] +} diff --git a/scripts/inject-rev.sh b/scripts/inject-rev.sh index fb6e55e8..a791791f 100755 --- a/scripts/inject-rev.sh +++ b/scripts/inject-rev.sh @@ -5,4 +5,4 @@ # likely just out/index.html rev=$(git rev-parse --short HEAD) -sed -i "s%@@COMMIT@@%Build: $rev%" "$1" +sed -i "s%@@COMMIT@@%Build: $rev%" "$1" diff --git a/website/index.ejs b/website/index.ejs index 1a2d5af4..0f82abb6 100644 --- a/website/index.ejs +++ b/website/index.ejs @@ -1,9 +1,13 @@ - AST explorer + textlint AST explorer + <%= htmlWebpackPlugin.files.webpackManifest %> @@ -19,21 +23,10 @@ and webpack | - GitHub + GitHub | @@COMMIT@@ - - - - diff --git a/website/package.json b/website/package.json index dfcfc064..7e17db0a 100644 --- a/website/package.json +++ b/website/package.json @@ -24,6 +24,7 @@ "eslint-plugin-require-in-package": "^1.0.3", "exports-loader": "^0.7.0", "file-loader": "^6.0.0", + "gh-pages": "^0.12.0", "html-webpack-plugin": "^3.2.0", "inline-manifest-webpack-plugin": "^4.0.1", "js-yaml": "^3.13.1", @@ -44,6 +45,7 @@ "@angular-eslint/template-parser": "^1.0.0", "@angular/compiler": "^11.2.0", "@babel/eslint-parser": "^7.12.0", + "@babel/parser": "^7.14.3", "@babel/runtime": "^7.12.0", "@creditkarma/thrift-parser": "^1.2.0", "@gengjiawen/monkey-wasm": "^0.5.0", @@ -51,6 +53,11 @@ "@glimmer/syntax": "^0.73.1", "@humanwhocodes/momoa": "^1.0.0", "@mdx-js/mdx": "^1.5.8", + "@textlint/kernel": "^14.0.0", + "@textlint/markdown-to-ast": "^14.0.0", + "@textlint/text-to-ast": "^14.0.0", + "@textlint/textlint-plugin-markdown": "^14.0.0", + "@textlint/textlint-plugin-text": "^14.0.0", "@typescript-eslint/parser": "^4.1.0", "@vue/compiler-dom": "^3.0.0-rc.10", "@webassemblyjs/wast-parser": "^1.9.0", @@ -107,6 +114,7 @@ "jscodeshift": "^0.11.0", "json-stringify-safe": "^5.0.1", "json-to-ast": "^2.1.0", + "json-url": "^3.0.0", "lodash.isequal": "^4.5.0", "luaparse": "^0.3.0", "lucene": "^2.1.1", @@ -149,6 +157,7 @@ "svelte": "^3.4.1", "tenko": "^1.0.6", "tern": "^0.24.3", + "textlint-plugin-html": "^1.0.0", "traceur": "0.0.111", "tslint": "^6.1.1", "typescript": "^4.0.3", @@ -166,10 +175,11 @@ "browserslist": "> 0.25%, not dead", "scripts": { "start": "serve -l 8080 ../out", - "build": "rimraf ../out/* && cross-env NODE_ENV=production webpack --mode=production", - "build-dev": "rimraf ../out/* && cross-env NODE_ENV=development webpack -d --mode=development", - "watch": "webpack -dw --mode=development", + "build": "rimraf ../out/* && cross-env NODE_ENV=production NODE_OPTIONS='--openssl-legacy-provider' webpack --mode=production", + "build-dev": "rimraf ../out/* && cross-env NODE_ENV=development NODE_OPTIONS='--openssl-legacy-provider' webpack -d --mode=development", + "watch": "NODE_OPTIONS='--openssl-legacy-provider' webpack -dw --mode=development", "lint": "node_modules/eslint/bin/eslint.js src/", - "fontcustom": "fontcustom compile ./fontcustom/input-svg/ --config=./fontcustom/config.yml" + "fontcustom": "fontcustom compile ./fontcustom/input-svg/ --config=./fontcustom/config.yml", + "deploy": "npm run build && gh-pages -d ../out" } } diff --git a/website/src/app.js b/website/src/app.js index 13a2f60d..b7efb927 100644 --- a/website/src/app.js +++ b/website/src/app.js @@ -20,8 +20,9 @@ import {createStore, applyMiddleware, compose} from 'redux'; import {canSaveTransform, getRevision} from './store/selectors'; import {loadSnippet} from './store/actions'; import {render} from 'react-dom'; -import * as gist from './storage/gist'; -import * as parse from './storage/parse'; +import * as urlStore from './storage/urlStore'; +// import * as gist from './storage/gist'; +// import * as parse from './storage/parse'; import StorageHandler from './storage'; import '../css/style.css'; import parserMiddleware from './store/parserMiddleware'; @@ -73,7 +74,7 @@ const AppContainer = connect( )(App); const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose; -const storageAdapter = new StorageHandler([gist, parse]); +const storageAdapter = new StorageHandler([urlStore]); const store = createStore( astexplorer, revive(LocalStorage.readState()), diff --git a/website/src/parsers/html/codeExample.txt b/website/src/parsers/html/codeExample.txt index e18c579f..3cce0220 100644 --- a/website/src/parsers/html/codeExample.txt +++ b/website/src/parsers/html/codeExample.txt @@ -1,9 +1,5 @@ - - +

Title

- -

My First Heading

-

My first paragraph.

- - - +
+

This is a paragraph.

+
diff --git a/website/src/parsers/html/index.js b/website/src/parsers/html/index.js index 059680c5..024013ae 100644 --- a/website/src/parsers/html/index.js +++ b/website/src/parsers/html/index.js @@ -1,6 +1,5 @@ -import 'codemirror/mode/htmlmixed/htmlmixed'; +import 'codemirror/mode/htmlembedded/htmlembedded'; -export const id = 'htmlmixed'; +export const id = 'html'; export const displayName = 'HTML'; export const mimeTypes = ['text/html']; -export const fileExtension = 'html'; diff --git a/website/src/parsers/html/textlint-plugin-html.js b/website/src/parsers/html/textlint-plugin-html.js new file mode 100644 index 00000000..7bebae06 --- /dev/null +++ b/website/src/parsers/html/textlint-plugin-html.js @@ -0,0 +1,29 @@ +import defaultParserInterface from '../utils/defaultParserInterface'; + +import pkg from 'textlint-plugin-html/package.json'; + +const ID = 'textlint:html'; + +export default { + ...defaultParserInterface, + id: ID, + displayName: "textlint-plugin-html", + version: pkg.version, + homepage: pkg.homepage, + locationProps: new Set(['loc', 'range']), + + loadParser(callback) { + require(['textlint-plugin-html/module/html-to-ast'], callback); + }, + + parse(parser, text) { + console.log("parser", parser); + return parser.parse(text); + }, + + opensByDefault(node, key) { + return key === 'rules'; + }, + + _ignoredProperties: new Set(['location']) +}; diff --git a/website/src/parsers/html/transformers/textlint-markdown-to-ast/codeExample.txt b/website/src/parsers/html/transformers/textlint-markdown-to-ast/codeExample.txt new file mode 100644 index 00000000..17806f58 --- /dev/null +++ b/website/src/parsers/html/transformers/textlint-markdown-to-ast/codeExample.txt @@ -0,0 +1,8 @@ +module.exports = function (context) { + const {Syntax, RuleError, report, getSource} = context; + return { + [Syntax.Str](node){ + report(node, new Error("error")); + } + }; +} diff --git a/website/src/parsers/html/transformers/textlint-markdown-to-ast/index.js b/website/src/parsers/html/transformers/textlint-markdown-to-ast/index.js new file mode 100644 index 00000000..3fe2bec6 --- /dev/null +++ b/website/src/parsers/html/transformers/textlint-markdown-to-ast/index.js @@ -0,0 +1,61 @@ +import compileModule from '../../../utils/compileModule'; +import pkg from '@textlint/kernel/package.json'; + +const ID = 'textlint-plugin-html'; + +function formatResults(results, code) { + const format = (message) => { + return formatResult(message, code); + }; + return results.messages.length === 0 + ? 'Lint rule not fired.' + : results.messages.map(format).join('').trim(); +} + +function formatResult(result, code) { + const pointer = '-'.repeat(result.column - 1) + '^'; + console.log(code.split('\n')[result.line - 1]); + return ` +| ${result.message} (at ${result.line}:${result.column}) + ${code.split('\n')[result.line - 1] || ''} +| ${pointer} +`; +} + +export default { + id: ID, + displayName: ID, + version: pkg.version, + homepage: pkg.homepage, + + defaultParserID: 'textlint-plugin-html', + + loadTransformer(callback) { + require(['@textlint/kernel', "textlint-plugin-html"], ({ TextlintKernel }, plugin) => { + callback({ TextlintKernel, plugin }); + }) + }, + + transform({ TextlintKernel, plugin }, transformCode, code) { + const kernel = new TextlintKernel(); + const rule = compileModule( // eslint-disable-line no-shadow + transformCode + ); + return kernel.lintText(code, { + rules: [{ + ruleId: "astExplorerRule", + rule: rule, + options: true + }], + plugins: [{ + pluginId: "html", + plugin: plugin, + options: true + }], + ext: ".html" + }).then(result => { + return formatResults(result, code); + }); + }, +}; + diff --git a/website/src/parsers/index.js b/website/src/parsers/index.js index 732973fa..2adcdcbc 100644 --- a/website/src/parsers/index.js +++ b/website/src/parsers/index.js @@ -1,13 +1,12 @@ -const localRequire = require.context('./', true, /^\.\/(?!utils|transpilers)[^/]+\/(transformers\/([^/]+)\/)?(codeExample\.txt|[^/]+?\.js)$/); - +// const localRequire = require.context('./', true, /^\.\/(?!utils)[^/]+\/(transformers\/([^/]+)\/)?(codeExample\.txt|[^/]+?\.js)$/); +const localRequire = require.context('./', true, /^\.\/(textlint-.*?)\/(transformers\/([^/]+)\/)?(codeExample\.txt|[^/]+?\.js)$/); function interopRequire(module) { - return module.__esModule ? module.default : module; + return module.__esModule ? module.default : module; } const files = localRequire.keys() .map(name => name.split('/').slice(1)); - const categoryByID = {}; const parserByID = {}; const transformerByID = {}; @@ -24,7 +23,6 @@ export const categories = .filter(name => name[1] === 'index.js') .map(([catName]) => { let category = localRequire(`./${catName}/index.js`); - categoryByID[category.id] = category; category.codeExample = interopRequire(localRequire(`./${catName}/codeExample.txt`)) @@ -59,7 +57,8 @@ export const categories = }); export function getDefaultCategory() { - return categoryByID.javascript; + return categoryByID["markdown"]; + // return categoryByID.javascript; } export function getDefaultParser(category = getDefaultCategory()) { diff --git a/website/src/parsers/textlint-html/codeExample.txt b/website/src/parsers/textlint-html/codeExample.txt new file mode 100644 index 00000000..3cce0220 --- /dev/null +++ b/website/src/parsers/textlint-html/codeExample.txt @@ -0,0 +1,5 @@ +

Title

+ +
+

This is a paragraph.

+
diff --git a/website/src/parsers/textlint-html/index.js b/website/src/parsers/textlint-html/index.js new file mode 100644 index 00000000..024013ae --- /dev/null +++ b/website/src/parsers/textlint-html/index.js @@ -0,0 +1,5 @@ +import 'codemirror/mode/htmlembedded/htmlembedded'; + +export const id = 'html'; +export const displayName = 'HTML'; +export const mimeTypes = ['text/html']; diff --git a/website/src/parsers/textlint-html/textlint-plugin-html.js b/website/src/parsers/textlint-html/textlint-plugin-html.js new file mode 100644 index 00000000..c220b367 --- /dev/null +++ b/website/src/parsers/textlint-html/textlint-plugin-html.js @@ -0,0 +1,28 @@ +import defaultParserInterface from '../utils/defaultParserInterface'; + +import pkg from 'textlint-plugin-html/package.json'; + +const ID = 'textlint-plugin-html'; + +export default { + ...defaultParserInterface, + id: ID, + displayName: "textlint-plugin-html", + version: pkg.version, + homepage: pkg.homepage, + locationProps: new Set(['loc', 'range']), + + loadParser(callback) { + require(['textlint-plugin-html/module/html-to-ast'], callback); + }, + + parse(parser, text) { + return parser.parse(text); + }, + + opensByDefault(node, key) { + return key === 'rules'; + }, + + _ignoredProperties: new Set(['location', 'position']) +}; diff --git a/website/src/parsers/textlint-html/transformers/textlint-plugin-html/codeExample.txt b/website/src/parsers/textlint-html/transformers/textlint-plugin-html/codeExample.txt new file mode 100644 index 00000000..b786a71e --- /dev/null +++ b/website/src/parsers/textlint-html/transformers/textlint-plugin-html/codeExample.txt @@ -0,0 +1,11 @@ +module.exports = function (context) { + const {Syntax, RuleError, report, getSource} = context; + return { + [Syntax.Str](node){ + const value = getSource(node); + if(/TITLE/i.test(value)) { + report(node, new RuleError("Error: includes title")); + } + } + }; +} diff --git a/website/src/parsers/textlint-html/transformers/textlint-plugin-html/index.js b/website/src/parsers/textlint-html/transformers/textlint-plugin-html/index.js new file mode 100644 index 00000000..3219513f --- /dev/null +++ b/website/src/parsers/textlint-html/transformers/textlint-plugin-html/index.js @@ -0,0 +1,62 @@ +import compileModule from '../../../utils/compileModule'; +import pkg from '@textlint/kernel/package.json'; + +const ID = 'textlint-plugin-html'; + +function formatResults(results, code) { + const format = (message) => { + return formatResult(message, code); + }; + return results.messages.length === 0 + ? 'Lint rule not fired.' + : results.messages.map(format).join('').trim(); +} + +function formatResult(result, code) { + const pointer = '-'.repeat(result.column - 1) + '^'; + console.log(code.split('\n')[result.line - 1]); + return ` +| ${result.message} (at ${result.line}:${result.column}) + ${code.split('\n')[result.line - 1] || ''} +| ${pointer} +`; +} + +export default { + id: ID, + displayName: ID, + version: pkg.version, + homepage: pkg.homepage, + + defaultParserID: 'textlint-plugin-html', + + loadTransformer(callback) { + require(['@textlint/kernel', "textlint-plugin-html"], ({ TextlintKernel }, plugin) => { + callback({ TextlintKernel, plugin }); + }) + }, + + transform({ TextlintKernel, plugin }, transformCode, code) { + console.log({ TextlintKernel, plugin }) + const kernel = new TextlintKernel(); + const rule = compileModule( // eslint-disable-line no-shadow + transformCode + ); + return kernel.lintText(code, { + rules: [{ + ruleId: "astExplorerRule", + rule: rule, + options: true + }], + plugins: [{ + pluginId: "html", + plugin: plugin.default, + options: true + }], + ext: ".html" + }).then(result => { + return formatResults(result, code); + }); + }, +}; + diff --git a/website/src/parsers/textlint-md/codeExample.txt b/website/src/parsers/textlint-md/codeExample.txt new file mode 100644 index 00000000..b87393ca --- /dev/null +++ b/website/src/parsers/textlint-md/codeExample.txt @@ -0,0 +1,7 @@ +# Title + +This is text. + +- list item + +[Link](http://example.com) \ No newline at end of file diff --git a/website/src/parsers/textlint-md/index.js b/website/src/parsers/textlint-md/index.js new file mode 100644 index 00000000..7d70694d --- /dev/null +++ b/website/src/parsers/textlint-md/index.js @@ -0,0 +1,5 @@ +import 'codemirror/mode/markdown/markdown'; + +export const id = 'markdown'; +export const displayName = 'Markdown'; +export const mimeTypes = ['text/markdown']; diff --git a/website/src/parsers/textlint-md/textlint-markdown-to-ast.js b/website/src/parsers/textlint-md/textlint-markdown-to-ast.js new file mode 100644 index 00000000..7e89e362 --- /dev/null +++ b/website/src/parsers/textlint-md/textlint-markdown-to-ast.js @@ -0,0 +1,28 @@ +import defaultParserInterface from '../utils/defaultParserInterface'; + +import pkg from '@textlint/markdown-to-ast/package.json'; + +const ID = 'textlint:markdown-to-ast'; + +export default { + ...defaultParserInterface, + id: ID, + displayName: "@textlint/text-to-ast", + version: pkg.version, + homepage: pkg.homepage, + locationProps: new Set(['loc', 'range']), + + loadParser(callback) { + require(['@textlint/markdown-to-ast'], callback); + }, + + parse(parser, text) { + return parser.parse(text); + }, + + opensByDefault(node, key) { + return key === 'rules'; + }, + + _ignoredProperties: new Set(['location', 'position']) +}; diff --git a/website/src/parsers/textlint-md/transformers/textlint-markdown-to-ast/codeExample.txt b/website/src/parsers/textlint-md/transformers/textlint-markdown-to-ast/codeExample.txt new file mode 100644 index 00000000..17806f58 --- /dev/null +++ b/website/src/parsers/textlint-md/transformers/textlint-markdown-to-ast/codeExample.txt @@ -0,0 +1,8 @@ +module.exports = function (context) { + const {Syntax, RuleError, report, getSource} = context; + return { + [Syntax.Str](node){ + report(node, new Error("error")); + } + }; +} diff --git a/website/src/parsers/textlint-md/transformers/textlint-markdown-to-ast/index.js b/website/src/parsers/textlint-md/transformers/textlint-markdown-to-ast/index.js new file mode 100644 index 00000000..2b298deb --- /dev/null +++ b/website/src/parsers/textlint-md/transformers/textlint-markdown-to-ast/index.js @@ -0,0 +1,61 @@ +import compileModule from '../../../utils/compileModule'; +import pkg from '@textlint/kernel/package.json'; + +const ID = 'textlint:markdown'; + +function formatResults(results, code) { + const format = (message) => { + return formatResult(message, code); + }; + return results.messages.length === 0 + ? 'Lint rule not fired.' + : results.messages.map(format).join('').trim(); +} + +function formatResult(result, code) { + const pointer = '-'.repeat(result.column - 1) + '^'; + console.log(code.split('\n')[result.line - 1]); + return ` +| ${result.message} (at ${result.line}:${result.column}) + ${code.split('\n')[result.line - 1] || ''} +| ${pointer} +`; +} + +export default { + id: ID, + displayName: ID, + version: pkg.version, + homepage: pkg.homepage, + + defaultParserID: 'textlint:markdown-to-ast', + + loadTransformer(callback) { + require(['@textlint/kernel', "@textlint/textlint-plugin-markdown"], ({ TextlintKernel }, { default: plugin }) => { + callback({ TextlintKernel, plugin }); + }) + }, + + transform({ TextlintKernel, plugin }, transformCode, code) { + const kernel = new TextlintKernel(); + const rule = compileModule( // eslint-disable-line no-shadow + transformCode + ); + return kernel.lintText(code, { + rules: [{ + ruleId: "astExplorerRule", + rule: rule, + options: true + }], + plugins: [{ + pluginId: "markdown", + plugin: plugin, + options: true + }], + ext: ".md" + }).then(result => { + return formatResults(result, code); + }); + }, +}; + diff --git a/website/src/parsers/textlint-txt/codeExample.txt b/website/src/parsers/textlint-txt/codeExample.txt new file mode 100644 index 00000000..f2681843 --- /dev/null +++ b/website/src/parsers/textlint-txt/codeExample.txt @@ -0,0 +1,3 @@ +■ Title + +This is plain texts. \ No newline at end of file diff --git a/website/src/parsers/textlint-txt/index.js b/website/src/parsers/textlint-txt/index.js new file mode 100644 index 00000000..3fb0c19e --- /dev/null +++ b/website/src/parsers/textlint-txt/index.js @@ -0,0 +1,3 @@ +export const id = 'txt'; +export const displayName = 'Plain text'; +export const mimeTypes = ['text/plain']; diff --git a/website/src/parsers/textlint-txt/textlint-txt-to-ast.js b/website/src/parsers/textlint-txt/textlint-txt-to-ast.js new file mode 100644 index 00000000..44c76bc4 --- /dev/null +++ b/website/src/parsers/textlint-txt/textlint-txt-to-ast.js @@ -0,0 +1,28 @@ +import defaultParserInterface from '../utils/defaultParserInterface'; + +import pkg from '@textlint/text-to-ast/package.json'; + +const ID = 'textlint:txt-to-ast'; + +export default { + ...defaultParserInterface, + id: ID, + displayName: "@textlint/text-to-ast", + version: pkg.version, + homepage: pkg.homepage, + locationProps: new Set(['loc', 'range']), + + loadParser(callback) { + require(['@textlint/text-to-ast'], callback); + }, + + parse(parser, text) { + return parser.parse(text); + }, + + opensByDefault(node, key) { + return key === 'rules'; + }, + + _ignoredProperties: new Set(['location']) +}; diff --git a/website/src/parsers/textlint-txt/transformers/textlint-txt-to-ast/codeExample.txt b/website/src/parsers/textlint-txt/transformers/textlint-txt-to-ast/codeExample.txt new file mode 100644 index 00000000..17806f58 --- /dev/null +++ b/website/src/parsers/textlint-txt/transformers/textlint-txt-to-ast/codeExample.txt @@ -0,0 +1,8 @@ +module.exports = function (context) { + const {Syntax, RuleError, report, getSource} = context; + return { + [Syntax.Str](node){ + report(node, new Error("error")); + } + }; +} diff --git a/website/src/parsers/textlint-txt/transformers/textlint-txt-to-ast/index.js b/website/src/parsers/textlint-txt/transformers/textlint-txt-to-ast/index.js new file mode 100644 index 00000000..e454987b --- /dev/null +++ b/website/src/parsers/textlint-txt/transformers/textlint-txt-to-ast/index.js @@ -0,0 +1,61 @@ +import compileModule from '../../../utils/compileModule'; +import pkg from '@textlint/kernel/package.json'; + +const ID = 'textlint:txt'; + +function formatResults(results, code) { + const format = (message) => { + return formatResult(message, code); + }; + return results.messages.length === 0 + ? 'Lint rule not fired.' + : results.messages.map(format).join('').trim(); +} + +function formatResult(result, code) { + const pointer = '-'.repeat(result.column - 1) + '^'; + console.log(code.split('\n')[result.line - 1]); + return ` +| ${result.message} (at ${result.line}:${result.column}) + ${code.split('\n')[result.line - 1] || ''} +| ${pointer} +`; +} + +export default { + id: ID, + displayName: ID, + version: pkg.version, + homepage: pkg.homepage, + + defaultParserID: 'textlint:txt-to-ast', + + loadTransformer(callback) { + require(['@textlint/kernel'], ({ TextlintKernel }, { default: plugin }) => { + callback({ TextlintKernel, plugin }); + }) + }, + + transform({ TextlintKernel, plugin }, transformCode, code) { + const kernel = new Kernel(); + const rule = compileModule( // eslint-disable-line no-shadow + transformCode + ); + return kernel.lintText(code, { + rules: [{ + ruleId: "astExplorerRule", + rule: rule, + options: true + }], + plugins: [{ + pluginId: "txt", + plugin: plugin, + options: true + }], + ext: ".txt" + }).then(result => { + return formatResults(result, code); + }); + }, +}; + diff --git a/website/src/storage/urlStore.js b/website/src/storage/urlStore.js new file mode 100644 index 00000000..f8e8fbe5 --- /dev/null +++ b/website/src/storage/urlStore.js @@ -0,0 +1,125 @@ +import React from 'react'; +import json_url from "json-url"; + +const codec = json_url('lzw'); + +function getIDAndRevisionFromHash() { + let match = global.location.hash.match(/^#\/snippet\/([^/]+)/); + if (match) { + return { + hash: match[1] + }; + } + return null; +} + +async function fetchSnippet(hash) { + const data = await codec.decompress(hash); + return new Revision({ data, hash }); +} + +export function owns(snippet) { + return snippet instanceof Revision; +} + +export function matchesURL() { + return getIDAndRevisionFromHash() !== null; +} + +export function fetchFromURL() { + const data = getIDAndRevisionFromHash(); + if (!data) { + return Promise.resolve(null); + } + return fetchSnippet(data.hash); +} + +/** + * Create a new snippet. + */ +export async function create(data) { + const hash = await codec.compress(data); + return new Revision({ data, hash }); +} + +/** + * Update an existing snippet. + */ +export async function update(revision, data) { + // Fetch latest version of snippet + const hash = await codec.compress(data); + return new Revision({ data, hash }); +} + +/** + * Fork existing snippet. + */ +export function fork(revision, data) { + return Promise.resolve(null); +} + +class Revision { + constructor({ data, hash }) { + console.log({data, hash}) + this.data = data; + this.hash = hash; + } + + canSave() { + return true; + } + + getPath() { + return `/snippet/${this.hash}}`; + } + + getSnippetID() { + return this.hash; + } + + getRevisionID() { + return null; + } + + getTransformerID() { + return this.data.toolID; + } + + getTransformCode() { + return ""; + } + + getParserID() { + return this.data.parserID; + } + + getCode() { + if (this.data.code == null) { + return ''; + } + return this.data.code; + } + + getParserSettings() { + return this.data.settings[this.data.parserID]; + } + + getShareInfo() { + const snippetID = this.getSnippetID(); + const revisionID = this.getRevisionID(); + return ( +
+
+
Share
+
+ e.target.select()} + value={`https://textlint.github.io/astexplorer/#/snippet/${snippetID}`} + /> +
+
+
+ ); + } +} diff --git a/website/src/utils/logger.js b/website/src/utils/logger.js index 26ea1704..090d35bc 100644 --- a/website/src/utils/logger.js +++ b/website/src/utils/logger.js @@ -1,7 +1,7 @@ export function logEvent(category, action, label) { - global.ga('send', 'event', category, action, label); + // global.ga('send', 'event', category, action, label); } export function logError(message, fatal) { - global.ga('send', 'exception', {exDescription: message, exFatal: fatal}); + // global.ga('send', 'exception', {exDescription: message, exFatal: fatal}); } diff --git a/website/yarn.lock b/website/yarn.lock index 6bb5f2c0..68a48374 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -56,8 +56,7 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/core@^7.1.6", "babel7@npm:@babel/core@^7": - name babel7 +"@babel/core@^7.1.6": version "7.13.8" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.13.8.tgz#c191d9c5871788a591d69ea1dc03e5843a3680fb" integrity sha512-oYapIySGw1zGhEFRd6lzWNLWFX2s5dA/jm+Pw/+59ZdXtjyIuwlXbrId22Md0rgZVop+aVoqow2riXhBLNyuQg== @@ -374,11 +373,16 @@ chalk "^2.0.0" js-tokens "^4.0.0" -"@babel/parser@^7.0.0", "@babel/parser@^7.1.6", "@babel/parser@^7.10.4", "@babel/parser@^7.12.13", "@babel/parser@^7.12.17", "@babel/parser@^7.13.0", "@babel/parser@^7.13.4", "@babel/parser@^7.8.4", "babylon7@npm:@babel/parser@^7": +"@babel/parser@^7.0.0", "@babel/parser@^7.1.6", "@babel/parser@^7.10.4", "@babel/parser@^7.12.13", "@babel/parser@^7.12.17", "@babel/parser@^7.13.0", "@babel/parser@^7.13.4", "@babel/parser@^7.8.4": version "7.13.9" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.13.9.tgz#ca34cb95e1c2dd126863a84465ae8ef66114be99" integrity sha512-nEUfRiARCcaVo3ny3ZQjURjHQZUo/JkEw7rLlSZy/psWGnvwXFtPcr6jb7Yb41DVW5LTe6KRq9LGleRNsg1Frw== +"@babel/parser@^7.14.3": + version "7.14.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.14.3.tgz#9b530eecb071fd0c93519df25c5ff9f14759f298" + integrity sha512-7MpZDIfI7sUC5zWo2+foJ50CSI5lcqDehZ0lVgIhSi4bFEk94fLAKlF3Q0nzSQQ+ca0lm+O6G9ztKVBeu8PMRQ== + "@babel/plugin-proposal-async-generator-functions@^7.13.8": version "7.13.8" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.13.8.tgz#87aacb574b3bc4b5603f6fe41458d72a5a2ec4b1" @@ -1042,6 +1046,14 @@ pirates "^4.0.0" source-map-support "^0.5.16" +"@babel/runtime-corejs2@^7.0.0": + version "7.14.0" + resolved "https://registry.yarnpkg.com/@babel/runtime-corejs2/-/runtime-corejs2-7.14.0.tgz#5519b92ccc819bd3d0a1ecb25ab3cb5a775485f8" + integrity sha512-btR4E8JiGlmmDI5YgirlG9z3T91rBdxnVh2YuEStrHDcekffaaIeK+CE0S4IaYUyYhMa7rFDfF2GEO79XNbLEA== + dependencies: + core-js "^2.6.5" + regenerator-runtime "^0.13.4" + "@babel/runtime-corejs3@^7.8.3": version "7.13.9" resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.13.9.tgz#b2fa9a6e5690ef8d4c4f2d30cac3ec1a8bb633ce" @@ -1314,17 +1326,126 @@ resolved "https://registry.yarnpkg.com/@simple-dom/interface/-/interface-1.4.0.tgz#e8feea579232017f89b0138e2726facda6fbb71f" integrity sha512-l5qumKFWU0S+4ZzMaLXFU8tQZsicHEMEyAxI5kDFGhJsRqDwe0a7/iPA/GdxlGyDKseQQAgIz5kzU7eXTrlSpA== +"@textlint/ast-node-types@^13.0.5": + version "13.4.1" + resolved "https://registry.yarnpkg.com/@textlint/ast-node-types/-/ast-node-types-13.4.1.tgz#00424f7b9bc6fe15cf6a78468ffe1e5d1adce5b2" + integrity sha512-qrZyhCh8Ekk6nwArx3BROybm9BnX6vF7VcZbijetV/OM3yfS4rTYhoMWISmhVEP2H2re0CtWEyMl/XF+WdvVLQ== + +"@textlint/ast-node-types@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/ast-node-types/-/ast-node-types-14.4.2.tgz#bc90a143f414cae83ec5b0666678b34c0384177b" + integrity sha512-e8/drNznaZHS/qGDC83k6Ht1wDWNHzGQ0RHcXD+72YMFercEFvp6WVfW5XbCbxGbSITEO5NBCOCTyeccS9lxEA== + +"@textlint/ast-tester@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/ast-tester/-/ast-tester-14.4.2.tgz#51b2694fc7b209daed5fc6497628e827d431824b" + integrity sha512-w1MlGa9DsJgp2W+ifNZ57vIWDoRVRExy0rXek7/voxBmSpTo76zHq74ggwjOrmoZpX8ADkvDc0tUWWWyiUVskQ== + dependencies: + "@textlint/ast-node-types" "^14.4.2" + debug "^4.4.0" + +"@textlint/ast-traverse@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/ast-traverse/-/ast-traverse-14.4.2.tgz#d3b0ffcf978f5838e2e562a0d635679a2c5a792d" + integrity sha512-HQp1iatBiLn9Qg8wqN3WxYWoiHJnkcv+30MdVPe5d0CmnBBXXRqFO1eSUHUlYarGNc3LyE0GFEkS72D7lefyNg== + dependencies: + "@textlint/ast-node-types" "^14.4.2" + +"@textlint/feature-flag@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/feature-flag/-/feature-flag-14.4.2.tgz#c16b0287897472fad8e7030cd3830ae8befb47d3" + integrity sha512-jeK7FuaYVr+gqgvjZazYHLCA+0oJybXa26kgF7P0qJ4yWq9qoENnjZtHF1VCi40euIS60z+/VJ8SlQj3LfnaoQ== + +"@textlint/kernel@^14.0.0": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/kernel/-/kernel-14.4.2.tgz#1c7e88615c2ca9e18bbcfc4621b0a0e8329042cd" + integrity sha512-nwUpdOl/whw8Cq9ELYRatmxEUEGApzKRAFJQpdIB/Ex0gKG1S/ctzSYbqSBUZ/Xctnn93yBDgOngDFdgoHbfWg== + dependencies: + "@textlint/ast-node-types" "^14.4.2" + "@textlint/ast-tester" "^14.4.2" + "@textlint/ast-traverse" "^14.4.2" + "@textlint/feature-flag" "^14.4.2" + "@textlint/source-code-fixer" "^14.4.2" + "@textlint/types" "^14.4.2" + "@textlint/utils" "^14.4.2" + debug "^4.4.0" + fast-equals "^4.0.3" + structured-source "^4.0.0" + +"@textlint/markdown-to-ast@^14.0.0", "@textlint/markdown-to-ast@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/markdown-to-ast/-/markdown-to-ast-14.4.2.tgz#f44d4bda3a24fc3a2a94bc6710c7064dc61d18d3" + integrity sha512-hj2xR9hz5/Tu7Hlrn6VORJgdAfUhAd5j6cBkEVpnKAU4LaERkNyVCgK/da2JHK2w84YHmaDjER4D6zUUkllwag== + dependencies: + "@textlint/ast-node-types" "^14.4.2" + debug "^4.4.0" + mdast-util-gfm-autolink-literal "^0.1.3" + neotraverse "^0.6.15" + remark-footnotes "^3.0.0" + remark-frontmatter "^3.0.0" + remark-gfm "^1.0.0" + remark-parse "^9.0.0" + unified "^9.2.2" + +"@textlint/source-code-fixer@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/source-code-fixer/-/source-code-fixer-14.4.2.tgz#73f5f611a2a3314dbabf3040f369b0658a977f8f" + integrity sha512-8AFoRL0uQPiu7hlszM1jlido+PdL3/3Ddp8sz1XxOpFgnjuTKnlRLYjziaL8X4JCpXQjUy4Q9am8NI6M1Y18lw== + dependencies: + "@textlint/types" "^14.4.2" + debug "^4.4.0" + +"@textlint/text-to-ast@^14.0.0", "@textlint/text-to-ast@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/text-to-ast/-/text-to-ast-14.4.2.tgz#b9abfc69bbce842f02dcc537da1d0726f3638a11" + integrity sha512-fLyNHMczXZOP/jkKqBbjntszJR0ytsdQOPg9E8fnnbcX6eBMw3q924+M/vkYno/9ArSnUMPbdfhKBc/lWTXvcQ== + dependencies: + "@textlint/ast-node-types" "^14.4.2" + +"@textlint/textlint-plugin-markdown@^14.0.0": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/textlint-plugin-markdown/-/textlint-plugin-markdown-14.4.2.tgz#20adb97ae51f1c0464a66c24a06d4254ea48180b" + integrity sha512-qtUta0iHEn843Hzhq7VnYPRp5rsYLnaZC5fOGOMh8DIpUlnuNXI1ANs9TkL5LsgexyYyMuPtFbvwr7S4JNu6ig== + dependencies: + "@textlint/markdown-to-ast" "^14.4.2" + +"@textlint/textlint-plugin-text@^14.0.0": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/textlint-plugin-text/-/textlint-plugin-text-14.4.2.tgz#60bca54157a5346b90dfea534180f16e132e1811" + integrity sha512-cg7J6qTgAsV7ms2fP2KpEBIaI+3GQAbQtjNTF4Zu5d8Kn07wNqFqZIpTnsKUC/b64Fn/ujo+HYse76nSU+5EZg== + dependencies: + "@textlint/text-to-ast" "^14.4.2" + +"@textlint/types@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/types/-/types-14.4.2.tgz#05726846d163acde65edf57b6555c203d955bdcf" + integrity sha512-s2UbCeYY8TQNdSusPs0n+g57g6fwx8Vz6nDZLD7vIXMEW10zIwkQnQf9IpxDwvKnstBWYTJ24Kx9nzddpBS9oQ== + dependencies: + "@textlint/ast-node-types" "^14.4.2" + +"@textlint/utils@^14.4.2": + version "14.4.2" + resolved "https://registry.yarnpkg.com/@textlint/utils/-/utils-14.4.2.tgz#b709cbbf1ee4023c7ee1b47d7f1ca5979608c583" + integrity sha512-bhns1Cws+4dERz6KGFVLLGf0vFK6r5LiKKeg7N3Hnh0QNbzy7TYO+HTfZsgcqBvZSJeAeowzKyDQ8nSsflPbJw== + "@types/color-name@^1.1.1": version "1.1.1" resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== +"@types/hast@^2.0.0": + version "2.3.10" + resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.10.tgz#5c9d9e0b304bbb8879b857225c5ebab2d81d7643" + integrity sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw== + dependencies: + "@types/unist" "^2" + "@types/mdast@^3.0.0": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.3.tgz#2d7d671b1cd1ea3deb306ea75036c2a0407d2deb" - integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw== + version "3.0.15" + resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.15.tgz#49c524a263f30ffa28b71ae282f813ed000ab9f5" + integrity sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ== dependencies: - "@types/unist" "*" + "@types/unist" "^2" "@types/node@*": version "12.7.4" @@ -1336,10 +1457,15 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2", "@types/unist@^2.0.3": - version "2.0.3" - resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e" - integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== +"@types/unist@*": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" + integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q== + +"@types/unist@^2", "@types/unist@^2.0.0", "@types/unist@^2.0.2": + version "2.0.11" + resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.11.tgz#11af57b127e32487774841f7a4e54eab166d03c4" + integrity sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA== "@types/vfile-message@*": version "1.0.1" @@ -1886,11 +2012,23 @@ array-includes@^3.0.3, array-includes@^3.1.1: es-abstract "^1.17.0" is-string "^1.0.5" +array-union@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= + dependencies: + array-uniq "^1.0.1" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== +array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= + array-unique@^0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" @@ -1986,6 +2124,13 @@ async-promise-queue@^1.0.5: async "^2.4.1" debug "^2.6.8" +async@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/async/-/async-2.1.2.tgz#612a4ab45ef42a70cde806bad86ee6db047e8385" + integrity sha1-YSpKtF70KnDN6Aa62G7m2wR+g4U= + dependencies: + lodash "^4.14.0" + async@^2.4.1: version "2.6.3" resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" @@ -2020,7 +2165,7 @@ babel-code-frame@^6.16.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: esutils "^2.0.2" js-tokens "^3.0.2" -babel-core@^6.24.0, babel-core@^6.26.0, "babel6@npm:babel-core@^6": +babel-core@^6.24.0, babel-core@^6.26.0: version "6.26.3" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== @@ -2934,26 +3079,93 @@ babel-types@^6.19.0, babel-types@^6.23.0, babel-types@^6.24.1, babel-types@^6.26 trim-right "^1.0.0" try-resolve "^1.0.0" -"babylon5@npm:babylon@^5", babylon@^5.8.38: +"babel6@npm:babel-core@^6": + version "6.26.3" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.3.tgz#b2e2f09e342d0f0c88e2f02e067794125e75c207" + integrity sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA== + dependencies: + babel-code-frame "^6.26.0" + babel-generator "^6.26.0" + babel-helpers "^6.24.1" + babel-messages "^6.23.0" + babel-register "^6.26.0" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + convert-source-map "^1.5.1" + debug "^2.6.9" + json5 "^0.5.1" + lodash "^4.17.4" + minimatch "^3.0.4" + path-is-absolute "^1.0.1" + private "^0.1.8" + slash "^1.0.0" + source-map "^0.5.7" + +"babel7@npm:@babel/core@^7": + version "7.13.8" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.13.8.tgz#c191d9c5871788a591d69ea1dc03e5843a3680fb" + integrity sha512-oYapIySGw1zGhEFRd6lzWNLWFX2s5dA/jm+Pw/+59ZdXtjyIuwlXbrId22Md0rgZVop+aVoqow2riXhBLNyuQg== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.13.0" + "@babel/helper-compilation-targets" "^7.13.8" + "@babel/helper-module-transforms" "^7.13.0" + "@babel/helpers" "^7.13.0" + "@babel/parser" "^7.13.4" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.13.0" + "@babel/types" "^7.13.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.1.2" + lodash "^4.17.19" + semver "^6.3.0" + source-map "^0.5.0" + +"babylon5@npm:babylon@^5": version "5.8.38" resolved "https://registry.yarnpkg.com/babylon/-/babylon-5.8.38.tgz#ec9b120b11bf6ccd4173a18bf217e60b79859ffd" integrity sha1-7JsSCxG/bM1Bc6GL8hfmC3mFn/0= -"babylon6@npm:babylon@^6", babylon@^6.17.0, babylon@^6.18.0, babylon@^6.8.0: +"babylon6@npm:babylon@^6": version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== +"babylon7@npm:@babel/parser@^7": + version "7.13.9" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.13.9.tgz#ca34cb95e1c2dd126863a84465ae8ef66114be99" + integrity sha512-nEUfRiARCcaVo3ny3ZQjURjHQZUo/JkEw7rLlSZy/psWGnvwXFtPcr6jb7Yb41DVW5LTe6KRq9LGleRNsg1Frw== + babylon@7.0.0-beta.44: version "7.0.0-beta.44" resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.44.tgz#89159e15e6e30c5096e22d738d8c0af8a0e8ca1d" integrity sha512-5Hlm13BJVAioCHpImtFqNOF2H3ieTOHd0fmFGMxOJ9jgeFqeAwsv3u5P5cR7CSeFrkgHsT19DgFJkHV0/Mcd8g== +babylon@^5.8.38: + version "5.8.38" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-5.8.38.tgz#ec9b120b11bf6ccd4173a18bf217e60b79859ffd" + integrity sha1-7JsSCxG/bM1Bc6GL8hfmC3mFn/0= + +babylon@^6.17.0, babylon@^6.18.0, babylon@^6.8.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + integrity sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ== + bail@^1.0.0: version "1.0.5" resolved "https://registry.yarnpkg.com/bail/-/bail-1.0.5.tgz#b6fa133404a392cbc1f8c4bf63f5953351e7a776" integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== +bail@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d" + integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw== + balanced-match@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" @@ -3004,6 +3216,14 @@ bindings@^1.5.0: dependencies: file-uri-to-path "1.0.0" +bl@^2.0.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/bl/-/bl-2.2.1.tgz#8c11a7b730655c5d56898cdc871224f40fd901d5" + integrity sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g== + dependencies: + readable-stream "^2.3.5" + safe-buffer "^5.1.1" + bl@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/bl/-/bl-4.0.3.tgz#12d6287adc29080e22a705e5764b2a9522cdc489" @@ -3018,7 +3238,7 @@ bluebird@^2.9.33: resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-2.11.0.tgz#534b9033c022c9579c56ba3b3e5a5caafbb650e1" integrity sha1-U0uQM8AiyVecVro7Plpcqvu2UOE= -bluebird@^3.5.5: +bluebird@^3.0.6, 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== @@ -3033,6 +3253,11 @@ boolbase@~1.0.0: resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= +boundary@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/boundary/-/boundary-2.0.0.tgz#169c8b1f0d44cf2c25938967a328f37e0a4e5efc" + integrity sha512-rJKn5ooC9u8q13IMCrW0RSp31pxBCHE3y9V/tp3TdWSLf8Em3p6Di4NBpfzbJge9YjjFEsD0RtFEjtvHL5VyEA== + boxen@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" @@ -3343,6 +3568,11 @@ caniuse-lite@^1.0.30001181: resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001194.tgz#3d16ff3d734a5a7d9818402c28b1f636c5be5bed" integrity sha512-iDUOH+oFeBYk5XawYsPtsx/8fFpndAPUQJC7gBTfxHM8xw5nOZv7ceAD4frS1MKCLUac7QL5wdAJiFQlDRjXlA== +ccount@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" + integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== + ccount@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.0.4.tgz#9cf2de494ca84060a2a8d2854edd6dfb0445f386" @@ -3634,6 +3864,13 @@ collection-visit@^1.0.0: map-visit "^1.0.0" object-visit "^1.0.0" +collections@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/collections/-/collections-0.2.2.tgz#1f23026b2ef36f927eecc901e99c5f0d48fa334e" + integrity sha1-HyMCay7zb5J+7MkB6ZxfDUj6M04= + dependencies: + weak-map "1.0.0" + color-convert@^1.9.0: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -3678,12 +3915,17 @@ comma-separated-tokens@^1.0.0: resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.7.tgz#419cd7fb3258b1ed838dc0953167a25e152f5b59" integrity sha512-Jrx3xsP4pPv4AwJUDWY9wOXGtwPXARej6Xd99h4TUGotmf8APuquKMpK+dnD3UgyxK7OEWaisjZz+3b5jtL6xQ== +comma-separated-tokens@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" + integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== + commander@2.17.x: version "2.17.1" resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf" integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== -commander@2.9.x: +commander@2.9.0, commander@2.9.x: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" integrity sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q= @@ -3849,6 +4091,11 @@ core-js@^2.4.0, core-js@^2.5.0: resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.9.tgz#6b4b214620c834152e179323727fc19741b084f2" integrity sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A== +core-js@^2.6.5: + version "2.6.12" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" + integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== + core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -4061,12 +4308,12 @@ debug@^3.1.0: dependencies: ms "^2.1.1" -debug@^4.0.0, debug@^4.1.0: - version "4.3.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" - integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== +debug@^4.0.0, debug@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" + integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== dependencies: - ms "2.1.2" + ms "^2.1.3" debug@^4.0.1, debug@^4.1.1: version "4.1.1" @@ -4075,6 +4322,13 @@ debug@^4.0.1, debug@^4.1.1: dependencies: ms "^2.1.1" +debug@^4.1.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== + dependencies: + ms "2.1.2" + decamelize@^1.0.0, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -4615,6 +4869,11 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + escodegen@^1.14.1: version "1.14.1" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.1.tgz#ba01d0c8278b5e95a9a45350142026659027a457" @@ -5264,6 +5523,11 @@ fast-deep-equal@^3.1.1: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4" integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA== +fast-equals@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/fast-equals/-/fast-equals-4.0.3.tgz#72884cc805ec3c6679b99875f6b7654f39f0e8c7" + integrity sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg== + fast-glob@^3.1.1: version "3.2.2" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.2.tgz#ade1a9d91148965d4bf7c51f72e1ca662d32e63d" @@ -5627,6 +5891,19 @@ get-value@^2.0.3, get-value@^2.0.6: resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= +gh-pages@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/gh-pages/-/gh-pages-0.12.0.tgz#d951e3ed98b85699d4b0418eb1a15b1a04988dc1" + integrity sha1-2VHj7Zi4VpnUsEGOsaFbGgSYjcE= + dependencies: + async "2.1.2" + commander "2.9.0" + globby "^6.1.0" + graceful-fs "4.1.10" + q "1.4.1" + q-io "1.13.2" + rimraf "^2.5.4" + glob-parent@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" @@ -5752,6 +6029,17 @@ globby@^11.0.1: merge2 "^1.3.0" slash "^3.0.0" +globby@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + integrity sha1-9abXDoOV4hyFj7BInWTfAkJNUGw= + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + glsl-parser@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/glsl-parser/-/glsl-parser-2.0.1.tgz#3ffac4ee05cc4d8141fd6b1e41e82b3766ff61b9" @@ -5768,6 +6056,11 @@ glsl-tokenizer@^2.1.2, glsl-tokenizer@^2.1.4: dependencies: through2 "^0.6.3" +graceful-fs@4.1.10: + version "4.1.10" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.10.tgz#f2d720c22092f743228775c75e3612632501f131" + integrity sha1-8tcgwiCS90Mih3XHXjYSYyUB8TE= + graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.2.2: version "4.2.3" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423" @@ -5982,11 +6275,31 @@ hast-util-from-parse5@^5.0.0: web-namespaces "^1.1.2" xtend "^4.0.1" +hast-util-from-parse5@^7.0.0: + version "7.1.2" + resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-7.1.2.tgz#aecfef73e3ceafdfa4550716443e4eb7b02e22b0" + integrity sha512-Nz7FfPBuljzsN3tCQ4kCBKqdNhQE2l0Tn+X1ubgKBPRoiDIu1mL08Cfw4k7q71+Duyaw7DXDN+VTAp4Vh3oCOw== + dependencies: + "@types/hast" "^2.0.0" + "@types/unist" "^2.0.0" + hastscript "^7.0.0" + property-information "^6.0.0" + vfile "^5.0.0" + vfile-location "^4.0.0" + web-namespaces "^2.0.0" + hast-util-parse-selector@^2.2.0: version "2.2.2" resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-2.2.2.tgz#66aabccb252c47d94975f50a281446955160380b" integrity sha512-jIMtnzrLTjzqgVEQqPEmwEZV+ea4zHRFTP8Z2Utw0I5HuBOXHzUPPQWr6ouJdJqDKLbFU/OEiYwZ79LalZkmmw== +hast-util-parse-selector@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-3.1.1.tgz#25ab00ae9e75cbc62cf7a901f68a247eade659e2" + integrity sha512-jdlwBjEexy1oGz0aJ2f4GKMaVKkA9jwjr4MjAAI22E5fM/TXVZHuS5OpONtdeIkRKqAaryQ2E9xNQxijoThSZA== + dependencies: + "@types/hast" "^2.0.0" + hast-util-raw@5.0.2: version "5.0.2" resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-5.0.2.tgz#62288f311ec2f35e066a30d5e0277f963ad43a67" @@ -6022,6 +6335,17 @@ hastscript@^5.0.0: property-information "^5.0.1" space-separated-tokens "^1.0.0" +hastscript@^7.0.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-7.2.0.tgz#0eafb7afb153d047077fa2a833dc9b7ec604d10b" + integrity sha512-TtYPq24IldU8iKoJQqvZOuhi5CyCQRAbvDOX0x1eW6rsHSxa/1i2CCiptNTotGHJ3VoHRGmqiv6/D3q113ikkw== + dependencies: + "@types/hast" "^2.0.0" + comma-separated-tokens "^2.0.0" + hast-util-parse-selector "^3.0.0" + property-information "^6.0.0" + space-separated-tokens "^2.0.0" + he@1.2.x, he@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" @@ -6442,9 +6766,9 @@ is-buffer@^1.1.5: integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== is-buffer@^2.0.0: - version "2.0.4" - resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623" - integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A== + version "2.0.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== is-builtin-module@^1.0.0: version "1.0.0" @@ -6637,6 +6961,11 @@ is-plain-obj@^2.0.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== +is-plain-obj@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0" + integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg== + is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" @@ -6877,6 +7206,19 @@ json-to-ast@^2.1.0: code-error-fragment "0.0.230" grapheme-splitter "^1.0.4" +json-url@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/json-url/-/json-url-3.0.0.tgz#454fbca31342984c3f4ca8ebc6e53c89f4f7bd29" + integrity sha512-c5iQnrKGNJ4/qAV1APNFHBDSgB0qgekmcVTBV3RRa2UUw8liUIrUvI3+Om7qtnM8JwobnEsPuAWMYmtCfxSkcw== + dependencies: + "@babel/runtime-corejs2" "^7.0.0" + bluebird "^3.0.6" + lz-string "^1.4.4" + lzma "^2.3.2" + msgpack5 "^4.2.1" + node-lzw "^0.3.1" + urlsafe-base64 "^1.0.0" + json5@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/json5/-/json5-0.4.0.tgz#054352e4c4c80c86c0923877d449de176a732c8d" @@ -7316,16 +7658,16 @@ lodash@^3.10.0, lodash@^3.3.1, lodash@^3.9.3: resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" integrity sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y= +lodash@^4.14.0, lodash@^4.17.19: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + lodash@^4.17.13: version "4.17.20" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== -lodash@^4.17.19: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== - log-symbols@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.0.0.tgz#69b3cc46d20f448eccdb75ea1fa733d9e821c920" @@ -7380,6 +7722,16 @@ lucene@^2.1.1: resolved "https://registry.yarnpkg.com/lucene/-/lucene-2.1.1.tgz#e710cc123b214eaf72a4c5f1da06943c0af44d86" integrity sha512-l0qCX+pgXEZh/7sYQNG+vzhOIFRPjlJJkQ/irk9n7Ak3d+1MrU6F7IV31KILwFkUn153oLK8a2AIt48DzLdVPg== +lz-string@^1.4.4: + version "1.4.4" + resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.4.4.tgz#c0d8eaf36059f705796e1e344811cf4c498d3a26" + integrity sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY= + +lzma@^2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/lzma/-/lzma-2.3.2.tgz#3783b24858b9c0e747a0df3cbf1fb5fcaa92c441" + integrity sha1-N4OySFi5wOdHoN88vx+1/KqSxEE= + make-dir@^2.0.0, make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -7460,15 +7812,33 @@ mdast-util-directive@^1.0.0: stringify-entities "^3.1.0" unist-util-visit-parents "^3.0.0" +mdast-util-find-and-replace@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-1.1.1.tgz#b7db1e873f96f66588c321f1363069abf607d1b5" + integrity sha512-9cKl33Y21lyckGzpSmEQnIDjEfeeWelN5s1kUW1LwdB0Fkuq2u+4GdqcGEygYxJE8GVqCl0741bYXHgamfWAZA== + dependencies: + escape-string-regexp "^4.0.0" + unist-util-is "^4.0.0" + unist-util-visit-parents "^3.0.0" + +mdast-util-footnote@^0.1.0: + version "0.1.7" + resolved "https://registry.yarnpkg.com/mdast-util-footnote/-/mdast-util-footnote-0.1.7.tgz#4b226caeab4613a3362c144c94af0fdd6f7e0ef0" + integrity sha512-QxNdO8qSxqbO2e3m09KwDKfWiLgqyCurdWTQ198NpbZ2hxntdc+VKS4fDJCmNWbAroUdYnSthu+XbZ8ovh8C3w== + dependencies: + mdast-util-to-markdown "^0.6.0" + micromark "~2.11.0" + mdast-util-from-markdown@^0.8.0: - version "0.8.1" - resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.1.tgz#781371d493cac11212947226190270c15dc97116" - integrity sha512-qJXNcFcuCSPqUF0Tb0uYcFDIq67qwB3sxo9RPdf9vG8T90ViKnksFqdB/Coq2a7sTnxL/Ify2y7aIQXDkQFH0w== + version "0.8.5" + resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz#d1ef2ca42bc377ecb0463a987910dae89bd9a28c" + integrity sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ== dependencies: "@types/mdast" "^3.0.0" - mdast-util-to-string "^1.0.0" - micromark "~2.10.0" + mdast-util-to-string "^2.0.0" + micromark "~2.11.0" parse-entities "^2.0.0" + unist-util-stringify-position "^2.0.0" mdast-util-frontmatter@^0.2.0: version "0.2.0" @@ -7482,6 +7852,15 @@ mdast-util-gfm-autolink-literal@^0.1.0: resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.1.tgz#94675074d725ed7254b3172fa7e7c3252960de39" integrity sha512-gJ2xSpqKCetSr22GEWpZH3f5ffb4pPn/72m4piY0v7T/S+O7n7rw+sfoPLhb2b4O7WdnERoYdALRcmD68FMtlw== +mdast-util-gfm-autolink-literal@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-0.1.3.tgz#9c4ff399c5ddd2ece40bd3b13e5447d84e385fb7" + integrity sha512-GjmLjWrXg1wqMIO9+ZsRik/s7PLwTaeCHVB7vRxUwLntZc8mzmTsLVr6HW1yLokcnhfURsn5zmSVdi3/xWWu1A== + dependencies: + ccount "^1.0.0" + mdast-util-find-and-replace "^1.1.0" + micromark "^2.11.3" + mdast-util-gfm-strikethrough@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-0.2.2.tgz#6e9ddd33ce41b06a60463e817f6ef4cf7bfa0655" @@ -7550,11 +7929,28 @@ mdast-util-to-markdown@^0.5.0: repeat-string "^1.0.0" zwitch "^1.0.0" +mdast-util-to-markdown@^0.6.0: + version "0.6.5" + resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz#b33f67ca820d69e6cc527a93d4039249b504bebe" + integrity sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ== + dependencies: + "@types/unist" "^2.0.0" + longest-streak "^2.0.0" + mdast-util-to-string "^2.0.0" + parse-entities "^2.0.0" + repeat-string "^1.0.0" + zwitch "^1.0.0" + mdast-util-to-string@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-1.1.0.tgz#27055500103f51637bd07d01da01eb1967a43527" integrity sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A== +mdast-util-to-string@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz#b8cfe6a713e1091cb5b728fc48885a4767f8b97b" + integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w== + mdn-data@2.0.12: version "2.0.12" resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.12.tgz#bbb658d08b38f574bbb88f7b83703defdcc46844" @@ -7626,6 +8022,13 @@ micromark-extension-directive@^1.0.0: micromark "~2.10.0" parse-entities "^2.0.0" +micromark-extension-footnote@^0.3.0: + version "0.3.2" + resolved "https://registry.yarnpkg.com/micromark-extension-footnote/-/micromark-extension-footnote-0.3.2.tgz#129b74ef4920ce96719b2c06102ee7abb2b88a20" + integrity sha512-gr/BeIxbIWQoUm02cIfK7mdMZ/fbroRpLsck4kvFtjbzP4yi+OPVbnukTc/zy0i7spC2xYE/dbX1Sur8BEDJsQ== + dependencies: + micromark "~2.11.0" + micromark-extension-frontmatter@^0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/micromark-extension-frontmatter/-/micromark-extension-frontmatter-0.2.2.tgz#61b8e92e9213e1d3c13f5a59e7862f5ca98dfa53" @@ -7686,6 +8089,14 @@ micromark-extension-math@^0.1.0: katex "^0.12.0" micromark "~2.10.0" +micromark@^2.11.3, micromark@~2.11.0: + version "2.11.4" + resolved "https://registry.yarnpkg.com/micromark/-/micromark-2.11.4.tgz#d13436138eea826383e822449c9a5c50ee44665a" + integrity sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA== + dependencies: + debug "^4.0.0" + parse-entities "^2.0.0" + micromark@~2.10.0: version "2.10.1" resolved "https://registry.yarnpkg.com/micromark/-/micromark-2.10.1.tgz#cd73f54e0656f10e633073db26b663a221a442a7" @@ -7770,6 +8181,16 @@ mime-types@~2.1.24: dependencies: mime-db "1.44.0" +mime@^1.2.11: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mimeparse@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/mimeparse/-/mimeparse-0.1.4.tgz#dafb02752370fd226093ae3152c271af01ac254a" + integrity sha1-2vsCdSNw/SJgk64xUsJxrwGsJUo= + mimic-fn@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" @@ -7910,6 +8331,21 @@ ms@2.1.2, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== +ms@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +msgpack5@^4.2.1: + version "4.5.1" + resolved "https://registry.yarnpkg.com/msgpack5/-/msgpack5-4.5.1.tgz#2da4dba4ea20c09fd4309c9c04f046e38cb4975e" + integrity sha512-zC1vkcliryc4JGlL6OfpHumSYUHWFGimSI+OgfRCjTFLmKA2/foR9rMTOhWiqfOrfxJOctrpWPvrppf8XynJxw== + dependencies: + bl "^2.0.1" + inherits "^2.0.3" + readable-stream "^2.3.6" + safe-buffer "^5.1.2" + multimap@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/multimap/-/multimap-1.0.2.tgz#6aa76fc3233905ba948bbe4c74dc2c3a0356eb36" @@ -7967,6 +8403,11 @@ neo-async@^2.5.0, neo-async@^2.6.0, neo-async@^2.6.1: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c" integrity sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw== +neotraverse@^0.6.15: + version "0.6.18" + resolved "https://registry.yarnpkg.com/neotraverse/-/neotraverse-0.6.18.tgz#abcb33dda2e8e713cf6321b29405e822230cdb30" + integrity sha512-Z4SmBUweYa09+o6pG+eASabEpP6QkQ70yHj351pQoEXIs8uHbaU2DWVmzBANKgflPa47A50PtB2+NgRpQvr7vA== + next-tick@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" @@ -8033,6 +8474,11 @@ node-fetch@^1.0.1: util "^0.11.0" vm-browserify "^1.0.1" +node-lzw@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/node-lzw/-/node-lzw-0.3.1.tgz#f50e37968976aca83320028b91f101df4a436b2d" + integrity sha1-9Q43lol2rKgzIAKLkfEB30pDay0= + node-modules-regexp@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" @@ -8613,6 +9059,18 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= + pirates@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" @@ -8856,6 +9314,11 @@ property-information@^5.0.0, property-information@^5.0.1: dependencies: xtend "^4.0.1" +property-information@^6.0.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.5.0.tgz#6212fbb52ba757e92ef4fb9d657563b933b7ffec" + integrity sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig== + prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" @@ -8940,11 +9403,33 @@ punycode@^2.1.0: resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -q@^1.1.2: +q-io@1.13.2: + version "1.13.2" + resolved "https://registry.yarnpkg.com/q-io/-/q-io-1.13.2.tgz#eea130d481ddb5e1aa1bc5a66855f7391d06f003" + integrity sha1-7qEw1IHdteGqG8WmaFX3OR0G8AM= + dependencies: + collections "^0.2.0" + mime "^1.2.11" + mimeparse "^0.1.4" + q "^1.0.1" + qs "^1.2.1" + url2 "^0.0.0" + +q@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.4.1.tgz#55705bcd93c5f3673530c2c2cbc0c2b3addc286e" + integrity sha1-VXBbzZPF82c1MMLCy8DCs63cKG4= + +q@^1.0.1, q@^1.1.2: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= +qs@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-1.2.2.tgz#19b57ff24dc2a99ce1f8bdf6afcda59f8ef61f88" + integrity sha1-GbV/8k3CqZzh+L32r82ln472H4g= + query-string@^4.1.0: version "4.3.4" resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" @@ -9058,7 +9543,7 @@ read-pkg@^2.0.0: normalize-package-data "^2.3.2" path-type "^2.0.0" -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.6, readable-stream@~2.3.6: +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -9346,6 +9831,16 @@ regjsparser@^0.6.0, regjsparser@^0.6.4: dependencies: jsesc "~0.5.0" +rehype-parse@^8.0.4: + version "8.0.5" + resolved "https://registry.yarnpkg.com/rehype-parse/-/rehype-parse-8.0.5.tgz#ccffc21e08e288c7846614f8dc1dc23d603a4a80" + integrity sha512-Ds3RglaY/+clEX2U2mHflt7NlMA72KspZ0JLUJgBBLpRddBcEw3H8uYZQliQriku22NZpYMfjDdSgHcjxue24A== + dependencies: + "@types/hast" "^2.0.0" + hast-util-from-parse5 "^7.0.0" + parse5 "^6.0.0" + unified "^10.0.0" + relateurl@0.2.x: version "0.2.7" resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" @@ -9359,6 +9854,14 @@ remark-directive@^1.0.0: mdast-util-directive "^1.0.0" micromark-extension-directive "^1.0.0" +remark-footnotes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/remark-footnotes/-/remark-footnotes-3.0.0.tgz#5756b56f8464fa7ed80dbba0c966136305d8cb8d" + integrity sha512-ZssAvH9FjGYlJ/PBVKdSmfyPc3Cz4rTWgZLI4iE/SX8Nt5l3o3oEjv3wwG5VD7xOjktzdwp5coac+kJV9l4jgg== + dependencies: + mdast-util-footnote "^0.1.0" + micromark-extension-footnote "^0.3.0" + remark-frontmatter@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/remark-frontmatter/-/remark-frontmatter-3.0.0.tgz#ca5d996361765c859bd944505f377d6b186a6ec6" @@ -9491,7 +9994,7 @@ repeating@^2.0.0: replace-ext@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" - integrity sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs= + integrity sha512-vuNYXC7gG7IeVNBC1xUllqCcZKRbJoSPOBhnTEcAIiKCsbuef6zO3F0Rve3isPMMoNoQRWjQwbAgAjHUHniyEA== require-directory@^2.1.1: version "2.1.1" @@ -10141,6 +10644,11 @@ space-separated-tokens@^1.0.0: resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-1.1.4.tgz#27910835ae00d0adfcdbd0ad7e611fb9544351fa" integrity sha512-UyhMSmeIqZrQn2UdjYpxEkwY9JUrn8pP+7L4f91zRzOQuI8MF1FGLfYU9DKCYeLdo7LXMxwrX5zKFy7eeeVHuA== +space-separated-tokens@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f" + integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q== + spdx-correct@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.0.tgz#fb83e504445268f154b074e218c87c003cd31df4" @@ -10426,6 +10934,13 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= +structured-source@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/structured-source/-/structured-source-4.0.0.tgz#0c9e59ee43dedd8fc60a63731f60e358102a4948" + integrity sha512-qGzRFNJDjFieQkl/sVOI2dUjHKRyL9dAJi2gCPGJLbJHBIkyOHxjuocpIEfbLioX+qSJpvbYdT49/YCdMznKxA== + dependencies: + boundary "^2.0.0" + style-loader@^1.1.3: version "1.1.4" resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.1.4.tgz#1ad81283cefe51096756fd62697258edad933230" @@ -10610,6 +11125,17 @@ text-table@^0.2.0, text-table@~0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= +textlint-plugin-html@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/textlint-plugin-html/-/textlint-plugin-html-1.0.1.tgz#bf5e82b68b033cc0f1b96520f37c04db0cec71e0" + integrity sha512-BsuRnb8G3viZPZsDCplGY0z2LKtV6W517JAJsoJemzAWfvHqg9O2Wz05QZaSFcBF2/KS/A36eeXzviLuarvduA== + dependencies: + "@textlint/ast-node-types" "^13.0.5" + neotraverse "^0.6.15" + rehype-parse "^8.0.4" + structured-source "^4.0.0" + unified "^10.1.2" + through2@^0.6.3: version "0.6.5" resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" @@ -10750,6 +11276,11 @@ trough@^1.0.0: resolved "https://registry.yarnpkg.com/trough/-/trough-1.0.5.tgz#b8b639cefad7d0bb2abd37d433ff8293efa5f406" integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== +trough@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/trough/-/trough-2.2.0.tgz#94a60bd6bd375c152c1df911a4b11d5b0256f50f" + integrity sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw== + try-resolve@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/try-resolve/-/try-resolve-1.0.1.tgz#cfde6fabd72d63e5797cfaab873abbe8e700e912" @@ -10937,6 +11468,19 @@ unified@8.4.2: trough "^1.0.0" vfile "^4.0.0" +unified@^10.0.0, unified@^10.1.2: + version "10.1.2" + resolved "https://registry.yarnpkg.com/unified/-/unified-10.1.2.tgz#b1d64e55dafe1f0b98bb6c719881103ecf6c86df" + integrity sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q== + dependencies: + "@types/unist" "^2.0.0" + bail "^2.0.0" + extend "^3.0.0" + is-buffer "^2.0.0" + is-plain-obj "^4.0.0" + trough "^2.0.0" + vfile "^5.0.0" + unified@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/unified/-/unified-7.1.0.tgz#5032f1c1ee3364bd09da12e27fdd4a7553c7be13" @@ -10963,6 +11507,18 @@ unified@^9.1.0: trough "^1.0.0" vfile "^4.0.0" +unified@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/unified/-/unified-9.2.2.tgz#67649a1abfc3ab85d2969502902775eb03146975" + integrity sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ== + dependencies: + bail "^1.0.0" + extend "^3.0.0" + is-buffer "^2.0.0" + is-plain-obj "^2.0.0" + trough "^1.0.0" + vfile "^4.0.0" + union-value@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" @@ -11008,9 +11564,9 @@ unist-util-is@^3.0.0: integrity sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A== unist-util-is@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.0.0.tgz#85672993f0d88a8bffb45137aba003ee8da11a38" - integrity sha512-E5JLUKRQlAYiJmN2PVBdSz01R3rUKRSM00X+0DB/yLqxdLu6wZZkRdTIsxDp9X+bkxh8Eq+O2YYRbZvLZtQT1A== + version "4.1.0" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-4.1.0.tgz#976e5f462a7a5de73d94b706bac1b90671b57797" + integrity sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg== unist-util-is@^4.0.3: version "4.0.3" @@ -11048,6 +11604,13 @@ unist-util-stringify-position@^2.0.0: dependencies: "@types/unist" "^2.0.2" +unist-util-stringify-position@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz#03ad3348210c2d930772d64b489580c13a7db39d" + integrity sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg== + dependencies: + "@types/unist" "^2.0.0" + unist-util-visit-parents@^2.0.0: version "2.1.2" resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz#25e43e55312166f3348cae6743588781d112c1e9" @@ -11055,15 +11618,7 @@ unist-util-visit-parents@^2.0.0: dependencies: unist-util-is "^3.0.0" -unist-util-visit-parents@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.0.0.tgz#dd4cdcd86d505ec7a81bdc01bc790f9def742bee" - integrity sha512-H3K8d81S4V3XVXVwLvrLGk+R5VILryfUotD06/R/rLsTsPLGjkn6gIP8qEEVITcuIySNYj0ocJLsePjm9F/Vcg== - dependencies: - "@types/unist" "^2.0.3" - unist-util-is "^4.0.0" - -unist-util-visit-parents@^3.1.1: +unist-util-visit-parents@^3.0.0, unist-util-visit-parents@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz#65a6ce698f78a6b0f56aa0e88f13801886cdaef6" integrity sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg== @@ -11143,6 +11698,11 @@ url-loader@^4.1.0: mime-types "^2.1.26" schema-utils "^2.6.5" +url2@^0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/url2/-/url2-0.0.0.tgz#4eaabd1d5c3ac90d62ab4485c998422865a04b1a" + integrity sha1-Tqq9HVw6yQ1iq0SFyZhCKGWgSxo= + url@^0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" @@ -11151,6 +11711,11 @@ url@^0.11.0: punycode "1.3.2" querystring "0.2.0" +urlsafe-base64@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/urlsafe-base64/-/urlsafe-base64-1.0.0.tgz#23f89069a6c62f46cf3a1d3b00169cefb90be0c6" + integrity sha1-I/iQaabGL0bPOh07ABac77kL4MY= + use@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" @@ -11228,6 +11793,14 @@ vfile-location@^2.0.0: resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-2.0.6.tgz#8a274f39411b8719ea5728802e10d9e0dff1519e" integrity sha512-sSFdyCP3G6Ka0CEmN83A2YCMKIieHx0EDaj5IDP4g1pa5ZJ4FJDvpO0WODLxo4LUX4oe52gmSCK7Jw4SBghqxA== +vfile-location@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-4.1.0.tgz#69df82fb9ef0a38d0d02b90dd84620e120050dd0" + integrity sha512-YF23YMyASIIJXpktBa4vIGLJ5Gs88UB/XePgqPmTa7cDA+JeO3yclbpheQYCHjVHBn/yePzrXuygIL+xbvRYHw== + dependencies: + "@types/unist" "^2.0.0" + vfile "^5.0.0" + vfile-message@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-1.1.1.tgz#5833ae078a1dfa2d96e9647886cd32993ab313e1" @@ -11243,6 +11816,14 @@ vfile-message@^2.0.0: "@types/unist" "^2.0.0" unist-util-stringify-position "^2.0.0" +vfile-message@^3.0.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-3.1.4.tgz#15a50816ae7d7c2d1fa87090a7f9f96612b59dea" + integrity sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw== + dependencies: + "@types/unist" "^2.0.0" + unist-util-stringify-position "^3.0.0" + vfile@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/vfile/-/vfile-3.0.1.tgz#47331d2abe3282424f4a4bb6acd20a44c4121803" @@ -11254,16 +11835,25 @@ vfile@^3.0.0: vfile-message "^1.0.0" vfile@^4.0.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.1.0.tgz#d79248957f43225d57ff67a56effc67bef08946e" - integrity sha512-BaTPalregj++64xbGK6uIlsurN3BCRNM/P2Pg8HezlGzKd1O9PrwIac6bd9Pdx2uTb0QHoioZ+rXKolbVXEgJg== + version "4.2.1" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-4.2.1.tgz#03f1dce28fc625c625bc6514350fbdb00fa9e624" + integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== dependencies: "@types/unist" "^2.0.0" is-buffer "^2.0.0" - replace-ext "1.0.0" unist-util-stringify-position "^2.0.0" vfile-message "^2.0.0" +vfile@^5.0.0: + version "5.3.7" + resolved "https://registry.yarnpkg.com/vfile/-/vfile-5.3.7.tgz#de0677e6683e3380fafc46544cfe603118826ab7" + integrity sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g== + dependencies: + "@types/unist" "^2.0.0" + is-buffer "^2.0.0" + unist-util-stringify-position "^3.0.0" + vfile-message "^3.0.0" + vm-browserify@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" @@ -11305,11 +11895,21 @@ wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +weak-map@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/weak-map/-/weak-map-1.0.0.tgz#b66e56a9df0bd25a76bbf1b514db129080614a37" + integrity sha1-tm5Wqd8L0lp2u/G1FNsSkIBhSjc= + web-namespaces@^1.0.0, web-namespaces@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-1.1.3.tgz#9bbf5c99ff0908d2da031f1d732492a96571a83f" integrity sha512-r8sAtNmgR0WKOKOxzuSgk09JsHlpKlB+uHi937qypOu3PZ17UxPrierFKDye/uNHjNTTEshu5PId8rojIPj/tA== +web-namespaces@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692" + integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ== + webidl2@^23.5.1: version "23.11.0" resolved "https://registry.yarnpkg.com/webidl2/-/webidl2-23.11.0.tgz#3c3d492877c6b90171de4174e16b1e2b87f99267" @@ -11576,6 +12176,6 @@ yargs@~3.27.0: y18n "^3.2.0" zwitch@^1.0.0: - version "1.0.4" - resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.4.tgz#93b1b993b13c8926753a41afaf8f27bbfac6be8b" - integrity sha512-YO803/X+13GNaZB7fVopjvHH0uWQKgJkgKnU1YCjxShjKGVuN9PPHHW8g+uFDpkHpSTNi3rCMKMewIcbC1BAYg== + version "1.0.5" + resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-1.0.5.tgz#d11d7381ffed16b742f6af7b3f223d5cd9fe9920" + integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==