├── .gitignore ├── .npmrc ├── .vscode ├── extensions.json ├── launch.json ├── settings.json └── tasks.json ├── LICENSE ├── README.md ├── assets ├── SimpleMenuTree.png └── TreeViewExample.png ├── example ├── .vscodeignore ├── assets │ ├── dark │ │ ├── decrease.svg │ │ └── increase.svg │ └── light │ │ ├── decrease.svg │ │ └── increase.svg ├── package.json ├── src │ ├── events │ │ └── treeview.ts │ ├── extension.ts │ ├── services │ │ └── commands.ts │ └── treeview │ │ ├── api │ │ └── index.ts │ │ └── index.tsx ├── tsconfig.json └── webpack.config.js ├── package.json ├── packages └── react-vsc-treeview │ ├── .npmignore │ ├── .npmrc │ ├── package.json │ ├── src │ ├── ExtendedTreeDataProvider.ts │ ├── ExtendedTreeItem.ts │ ├── TreeItem.tsx │ ├── VSCTreeItem.tsx │ ├── index.ts │ └── reconciler.ts │ └── tsconfig.json ├── shared.tsconfig.json └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | # Referenced from https://github.com/github/gitignore/blob/master/Node.gitignore 2 | 3 | # Logs 4 | logs 5 | *.log 6 | npm-debug.log* 7 | yarn-debug.log* 8 | yarn-error.log* 9 | 10 | # Runtime data 11 | pids 12 | *.pid 13 | *.seed 14 | *.pid.lock 15 | 16 | # Directory for instrumented libs generated by jscoverage/JSCover 17 | lib-cov 18 | 19 | # Coverage directory used by tools like istanbul 20 | coverage 21 | 22 | # nyc test coverage 23 | .nyc_output 24 | 25 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 26 | .grunt 27 | 28 | # Bower dependency directory (https://bower.io/) 29 | bower_components 30 | 31 | # node-waf configuration 32 | .lock-wscript 33 | 34 | # Compiled binary addons (https://nodejs.org/api/addons.html) 35 | build/Release 36 | 37 | # Dependency directories 38 | node_modules/ 39 | jspm_packages/ 40 | 41 | # Typescript v1 declaration files 42 | typings/ 43 | 44 | # Optional npm cache directory 45 | .npm 46 | 47 | # Optional eslint cache 48 | .eslintcache 49 | 50 | # Optional REPL history 51 | .node_repl_history 52 | 53 | # Output of 'npm pack' 54 | *.tgz 55 | 56 | # Yarn Integrity file 57 | .yarn-integrity 58 | 59 | # dotenv environment variables file 60 | .env 61 | 62 | # next.js build output 63 | .next 64 | 65 | # other stuff 66 | .DS_Store 67 | Thumbs.db 68 | 69 | # IDE configurations 70 | .idea 71 | packages/**/.vscode/ 72 | 73 | # build assets 74 | output 75 | dist 76 | dll 77 | 78 | # ignore compiled results 79 | tsconfig.tsbuildinfo 80 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | registry=http://registry.npmjs.org 2 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | // See http://go.microsoft.com/fwlink/?LinkId=827846 3 | // for the documentation about the extensions.json format 4 | "recommendations": [ 5 | "eamodio.tsl-problem-matcher" 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | // A launch configuration that compiles the extension and then opens it inside a new window 2 | // Use IntelliSense to learn about possible attributes. 3 | // Hover to view descriptions of existing attributes. 4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 5 | { 6 | "version": "0.2.0", 7 | "configurations": [ 8 | { 9 | "name": "Run Example Extension", 10 | "type": "extensionHost", 11 | "request": "launch", 12 | "runtimeExecutable": "${execPath}", 13 | "args": [ 14 | "--extensionDevelopmentPath=${workspaceFolder}/example" 15 | ], 16 | "outFiles": [ 17 | "${workspaceFolder}/example/dist/**/*.js" 18 | ], 19 | "preLaunchTask": "Watch Example Extension" 20 | } 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "typescript.tsdk": "node_modules/typescript/lib" 3 | } -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "2.0.0", 3 | "tasks": [ 4 | { 5 | "label": "Build React Vsc Treeview", 6 | "type": "npm", 7 | "script": "compile", 8 | "problemMatcher": "$tsc", 9 | "path": "packages/react-vsc-treeview/", 10 | "group": "build" 11 | }, 12 | { 13 | "label": "Watch React Vsc Treeview", 14 | "type": "npm", 15 | "script": "watch", 16 | "problemMatcher": "$tsc-watch", 17 | "path": "packages/react-vsc-treeview/", 18 | "group": "build" 19 | }, 20 | { 21 | "label": "Watch Example Extension", 22 | "type": "npm", 23 | "script": "watch", 24 | "path": "example/", 25 | "group": "build", 26 | "isBackground": true, 27 | "problemMatcher": [ 28 | "$ts-webpack-watch", 29 | "$tslint-webpack-watch" 30 | ], 31 | "dependsOn": ["Build React Vsc Treeview"] 32 | } 33 | ] 34 | } 35 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT LICENSE 2 | 3 | Copyright (c) 2015-present Ant UED, https://xtech.antfin.com/ 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | "Software"), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 19 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 20 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 22 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # React VS Code TreeView 2 | 3 | ## 背景 4 | 5 | TreeView 是 VS Code 为第三方插件开发提供的最主要的视图定制方式。此 API 用于构建一个基本的树状结构来承载用户交互,如下图所示。 6 | 7 | ![TreeViewExample](/assets/TreeViewExample.png) 8 | 9 | VS Code 为用户编写 TreeView 提供了递归式的 API,即: 10 | 11 | **getChildren** 12 | 13 | 用于获取某个节点下属的节点数组,根节点记为 null; 14 | 15 | **getTreeItem** 16 | 17 | 用于获取实际渲染的 TreeItem 实例。 18 | 19 | 这种 API 非常适合文件树的场景(例如 ftp 文件浏览插件、github 文件浏览插件):不知道每一层有多少个节点,也不知道有多少层,并且对懒加载的支持也非常好。其基本使用形式如下(代码来自 [vscode-github-explorer](https://github.com/LeuisKen/vscode-github-explorer/blob/master/src/view/fileTreeDataProvider.ts#L12) ): 20 | 21 | ```ts 22 | class FileTreeView 23 | implements vscode.TreeDataProvider, vscode.Disposable { 24 | 25 | private disposables: vscode.Disposable[] = []; 26 | 27 | // 这些事件用于更新树中的内容 28 | private _onDidChangeTreeData = new vscode.EventEmitter(); 29 | readonly onDidChangeTreeData? = this._onDidChangeTreeData.event; 30 | 31 | // 这里获取 children 信息,作为数组返回 32 | async getChildren(node?: FileTreeNode) { 33 | const data = await github.getFileEntries(repository, ref, path); 34 | return data; 35 | } 36 | 37 | // 这里将每一个 children 再一一映射到 TreeItem 数据结构 38 | getTreeItem(node: FileTreeNode) { 39 | const uri = vscode.Uri.parse('...'); 40 | const item = new vscode.TreeItem(uri); 41 | return item; 42 | } 43 | 44 | dispose() { 45 | this.disposables.forEach(disposable => disposable.dispose()); 46 | this.disposables = []; 47 | } 48 | } 49 | ``` 50 | 51 | 不过,我们在使用这一 API 开发业务的过程中,会去创建的常常不止是文件树,也包括了比较常见的菜单——虽然可能不知道每层有多少个节点,但是我们知道一共有多少层,懒加载也并不总是那么必要。这种情况下,用前端更为熟悉的类 HTML 语法声明式的编写一个这样的 TreeView 是非常简单的。对于如下图的 TreeView,相信大家都能很直观的想到如何用 HTML 描述(这里为了简洁采用 markdown 描述): 52 | 53 | ![SimpleMenuTree](/assets/SimpleMenuTree.png) 54 | 55 | ```html 56 | - John 57 | - john@example.com 58 | - Operation 59 | - Add 60 | - Update 61 | - Delete 62 | ``` 63 | 64 | 而如果使用 VS Code TreeView 的递归式 API,去表示这种声明式更擅长的树状结构,代码就会稍显得有些冗余,不够清晰。 65 | 66 | ```ts 67 | class SimpleTreeView 68 | implements vscode.TreeDataProvider { 69 | 70 | private disposables: vscode.Disposable[] = []; 71 | 72 | // getChildren 无法直观的展示数据间存在的父子关系 73 | // 当然你可以借助数据结构和循环来优化下面的代码 74 | // 但我们更希望找到更为通用的解决方案,并且尽量复用我们已有的知识 75 | async getChildren(node?: Node) { 76 | if (node === null) { 77 | return ['John', 'john@example.com', 'Operation']; 78 | } 79 | else if (node === 'Operation') { 80 | return ['Add', 'Update', 'Delete']; 81 | } 82 | return []; 83 | } 84 | } 85 | ``` 86 | 87 | 为了能够更加清晰高效地解决类似“菜单”这样:我们知道有多少层,并且为每层赋予了确切含义的树状视图的开发问题,我们决定使用 React 做为视图描述方式。因此开发了本代码库。 88 | 89 | ## 下载 90 | 91 | 使用 npm 或者 yarn 安装: 92 | 93 | ```sh 94 | $ npm i react-vsc-treeview --save 95 | ``` 96 | 97 | ```sh 98 | $ yarn add react-vsc-treeview 99 | ``` 100 | 101 | ## 使用文档 102 | 103 | ### 如何在 VS Code 中添加一个 TreeView 104 | 105 | 无论你使用那种方式创建 TreeView,这里的步骤都是必须的。 106 | 107 | 关于如何创建一个 VS Code 插件,可以使用官方提供的 Yeoman Generator,具体参考官方文档:[Your First Extension](https://code.visualstudio.com/api/get-started/your-first-extension)。简化的命令如下: 108 | 109 | ```sh 110 | $ npm install -g yo generator-code 111 | $ yo code # 会有交互式命令行提示你如何配置 112 | $ code ./helloworld 113 | ``` 114 | 115 | 创建一个 TreeView 需要在 package.json 里面做一些基础的声明,具体参考官方文档:[Tree View Guide](https://code.visualstudio.com/api/extension-guides/tree-view)。其中包括 viewsContainer 和 view 两个概念,可以理解成 View 的 Tab 容器和 View 本身,官方内置提供了四个 viewsContainer (explorer:文件浏览窗口、debug:调试窗口、scm:版本控制窗口、test:测试窗口)。简单起见,我们可以像代码库中自带的 example 一样把 view 添加到现有的 test viewContainer 中,这样今需要在 `package.json` 中添加如下内容即可: 116 | 117 | ```json 118 | "contributes": { 119 | "views": { 120 | "test": [ 121 | { 122 | "id": "baidu.tree.example", 123 | "name": "用户面板" 124 | } 125 | ] 126 | } 127 | }, 128 | ``` 129 | 130 | ### 使用 React VSC TreeView 131 | 132 | 使用起来就像正常编写 React 组件一样自然: 133 | 134 | ```jsx 135 | import React, {useState, useEffect} from 'react'; 136 | import ReactTreeView, {TreeItem} from 'react-vsc-treeview'; 137 | import {getUser, User} from './api'; 138 | 139 | const App = () => { 140 | const [user, setUser] = useState(null); 141 | useEffect(() => { 142 | getUser().then((res) => { 143 | setUser(res); 144 | }); 145 | }, []); 146 | if (user === null) { 147 | return ; 148 | } 149 | return ( 150 | <> 151 | 152 | 153 | 154 | { 155 | user.collection.map((item) => ( 156 | 157 | )) 158 | } 159 | 160 | 161 | ); 162 | }; 163 | 164 | const treeview = ReactTreeView.render( 165 | , 166 | 'baidu.tree.example' // 这里对应 package.json 中配置的 view id 字段 167 | ); 168 | ``` 169 | 170 | React VSC TreeView 仅提供了上述示例代码中展示的两个 API,`ReactTreeView` 和 `TreeItem`。 171 | 172 | **ReactTreeView** 173 | 174 | 你可以简单的把它理解成 `ReactDOM`,正像我们常用的那样: 175 | 176 | ```jsx 177 | ReactDOM.render(, document.getElementById('app')); 178 | ``` 179 | 180 | 他提供的能力也是 render,使用如下: 181 | 182 | ```jsx 183 | const treeview = ReactTreeView.render( 184 | , 185 | 'baidu.tree.example' // 这里对应 package.json 中配置的 view id 字段 186 | ); 187 | ``` 188 | 189 | **TreeItem** 190 | 191 | TreeItem 是唯一允许被使用的 React 组件(因此不要尝试使用 `p` `div` `span` 这样的传统 HTML 标签)。其 Props 接口如下,除了 command 属性额外做了对字符串类型的支持,其余均与 VS Code API 提供的 [TreeItem API](https://code.visualstudio.com/api/references/vscode-api#TreeItem) 保持一致: 192 | 193 | ```ts 194 | export interface TreeItemProps { 195 | label?: string; 196 | id?: string; 197 | iconPath?: string | vscode.Uri | { light: string | vscode.Uri; dark: string | vscode.Uri } | vscode.ThemeIcon; 198 | description?: string | boolean; 199 | resourceUri?: vscode.Uri; 200 | tooltip?: string | undefined; 201 | command?: string | vscode.Command; 202 | contextValue?: string; 203 | expanded?: boolean; 204 | } 205 | ``` 206 | 207 | 接下来,就请愉快的使用你所熟悉的 React 吧,推荐使用 React hooks API。 208 | 209 | ## 感谢 210 | 211 | 本代码库灵感和代码参考都来源于 Sophie Alpert 在 React Conf 2019 上所做的分享—— [Building a Custom React Renderer](https://youtu.be/CGpMlWVcHok) ,在此感谢。 212 | -------------------------------------------------------------------------------- /assets/SimpleMenuTree.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeuisKen/react-vsc-treeview/5cf57377fa8ba286c27ef943bfce868d0908b715/assets/SimpleMenuTree.png -------------------------------------------------------------------------------- /assets/TreeViewExample.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeuisKen/react-vsc-treeview/5cf57377fa8ba286c27ef943bfce868d0908b715/assets/TreeViewExample.png -------------------------------------------------------------------------------- /example/.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | out/test/** 4 | src/** 5 | .gitignore 6 | vsc-extension-quickstart.md 7 | **/tsconfig.json 8 | **/tslint.json 9 | **/*.map 10 | **/*.ts 11 | -------------------------------------------------------------------------------- /example/assets/dark/decrease.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /example/assets/dark/increase.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /example/assets/light/decrease.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeuisKen/react-vsc-treeview/5cf57377fa8ba286c27ef943bfce868d0908b715/example/assets/light/decrease.svg -------------------------------------------------------------------------------- /example/assets/light/increase.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeuisKen/react-vsc-treeview/5cf57377fa8ba286c27ef943bfce868d0908b715/example/assets/light/increase.svg -------------------------------------------------------------------------------- /example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "react-vsc-treeview-example", 3 | "displayName": "React VSC TreeView Example", 4 | "description": "An example extension that shows how to use react vsc treeview", 5 | "publisher": "baidu", 6 | "version": "0.0.1", 7 | "license": "MIT", 8 | "engines": { 9 | "vscode": "^1.41.0" 10 | }, 11 | "categories": [ 12 | "Other" 13 | ], 14 | "activationEvents": [ 15 | "*" 16 | ], 17 | "main": "./dist/extension.js", 18 | "contributes": { 19 | "commands": [ 20 | { 21 | "command": "example.counterIncrease", 22 | "title": "Increase Counter", 23 | "category": "React VSC TreeView Example", 24 | "icon": { 25 | "dark": "./assets/dark/increase.svg", 26 | "light": "./assets/light/increase.svg" 27 | } 28 | }, 29 | { 30 | "command": "example.counterDecrease", 31 | "title": "Decrease Counter", 32 | "category": "React VSC TreeView Example", 33 | "icon": { 34 | "dark": "./assets/dark/decrease.svg", 35 | "light": "./assets/light/decrease.svg" 36 | } 37 | } 38 | ], 39 | "menus": { 40 | "view/item/context": [ 41 | { 42 | "command": "example.counterIncrease", 43 | "group": "inline@1", 44 | "when": "view == baidu.tree.example && viewItem =~ /counterIncrease/" 45 | }, 46 | { 47 | "command": "example.counterDecrease", 48 | "group": "inline@2", 49 | "when": "view == baidu.tree.example && viewItem =~ /counterDecrease/" 50 | } 51 | ] 52 | }, 53 | "views": { 54 | "test": [ 55 | { 56 | "id": "baidu.tree.example", 57 | "name": "用户面板" 58 | } 59 | ] 60 | } 61 | }, 62 | "scripts": { 63 | "clean": "rimraf dist/", 64 | "compile": "yarn run clean && webpack --mode production --info-verbosity verbose", 65 | "watch": "yarn run clean && webpack --mode none --watch --info-verbosity verbose" 66 | }, 67 | "devDependencies": { 68 | "@types/react": "^17.0.0", 69 | "@types/vscode": "^1.52.0", 70 | "rimraf": "^3.0.2", 71 | "ts-loader": "^8.0.12", 72 | "typescript": "^4.1.3", 73 | "webpack": "^4.42.0", 74 | "webpack-cli": "^3.3.11" 75 | }, 76 | "dependencies": { 77 | "react": "^17.0.1", 78 | "react-vsc-treeview": "*" 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /example/src/events/treeview.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | 3 | export const counterIncreaseEvent = new vscode.EventEmitter(); 4 | export const counterDecreaseEvent = new vscode.EventEmitter(); 5 | -------------------------------------------------------------------------------- /example/src/extension.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import treeView from './treeview'; 3 | import {commands} from './services/commands'; 4 | 5 | export function activate(context: vscode.ExtensionContext) { 6 | context.subscriptions.push(treeView); 7 | context.subscriptions.push(commands); 8 | } 9 | 10 | // this method is called when your extension is deactivated 11 | export function deactivate() {} 12 | -------------------------------------------------------------------------------- /example/src/services/commands.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import {counterIncreaseEvent, counterDecreaseEvent} from '../events/treeview'; 3 | 4 | class CommandCenter implements vscode.Disposable { 5 | 6 | private disposables: vscode.Disposable[] = []; 7 | 8 | constructor() { 9 | this.disposables.push( 10 | vscode.commands.registerCommand('example.counterIncrease', this.counterIncrease.bind(this)), 11 | vscode.commands.registerCommand('example.counterDecrease', this.counterDecrease.bind(this)), 12 | ); 13 | } 14 | 15 | private counterIncrease() { 16 | counterIncreaseEvent.fire(); 17 | } 18 | 19 | private counterDecrease() { 20 | counterDecreaseEvent.fire(); 21 | } 22 | 23 | dispose() { 24 | this.disposables.forEach(disposable => disposable.dispose()); 25 | this.disposables = []; 26 | } 27 | } 28 | 29 | export const commands = new CommandCenter(); 30 | -------------------------------------------------------------------------------- /example/src/treeview/api/index.ts: -------------------------------------------------------------------------------- 1 | export function getUser() { 2 | return new Promise(resolve => { 3 | setTimeout(() => { 4 | resolve({ 5 | username: 'John', 6 | email: 'john@example.com', 7 | collection: ['Add', 'Update', 'Delete'] 8 | }); 9 | }, 1000); 10 | }); 11 | } 12 | 13 | export interface User { 14 | username: string; 15 | email: string; 16 | collection: string[]; 17 | } 18 | -------------------------------------------------------------------------------- /example/src/treeview/index.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @file workspace tree view 3 | * @author weijiaxun 4 | */ 5 | 6 | import React, {useState, useEffect, useMemo} from 'react'; 7 | import ReactTreeView, {TreeItem} from 'react-vsc-treeview'; 8 | import * as vscode from 'vscode'; 9 | import {counterIncreaseEvent, counterDecreaseEvent} from '../events/treeview'; 10 | import {getUser, User} from './api'; 11 | 12 | const Counter = () => { 13 | const [count, setCount] = useState(0); 14 | const contextValue = useMemo( 15 | () => { 16 | const availableCommands: string[] = []; 17 | availableCommands.push( 18 | 'counterIncrease', 19 | 'counterDecrease' 20 | ); 21 | return availableCommands.join('.'); 22 | }, 23 | [] 24 | ); 25 | useEffect( 26 | () => { 27 | const disposable = counterIncreaseEvent.event(() => { 28 | setCount(count + 1); 29 | }) 30 | return () => { 31 | disposable.dispose(); 32 | }; 33 | }, 34 | [count, setCount] 35 | ); 36 | useEffect( 37 | () => { 38 | const disposable = counterDecreaseEvent.event(() => { 39 | setCount(count - 1); 40 | }); 41 | return () => { 42 | disposable.dispose(); 43 | }; 44 | }, 45 | [count, setCount] 46 | ); 47 | return ( 48 | 52 | ); 53 | }; 54 | 55 | const App = () => { 56 | const [user, setUser] = useState(null); 57 | useEffect(() => { 58 | getUser().then((res) => { 59 | setUser(res); 60 | }); 61 | }, []); 62 | if (user === null) { 63 | return ; 64 | } 65 | return ( 66 | <> 67 | 68 | 72 | 76 | 80 | { 81 | user.collection.map((item) => ( 82 | 83 | )) 84 | } 85 | 86 | 87 | ); 88 | }; 89 | 90 | const treeview = ReactTreeView.render(, 'baidu.tree.example'); 91 | 92 | export default treeview; 93 | -------------------------------------------------------------------------------- /example/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../shared.tsconfig.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "dist", 6 | "sourceMap": true, 7 | "experimentalDecorators": true, 8 | }, 9 | "exclude": [ 10 | "node_modules" 11 | ], 12 | "include": [ 13 | "src/**/*", 14 | ], 15 | "references": [ 16 | {"path": "../packages/react-vsc-treeview"} 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /example/webpack.config.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @file vscode webpack 构建配置 3 | * @author weijiaxun 4 | * @desc ref: https://code.visualstudio.com/api/working-with-extensions/bundling-extension#configure-webpack 5 | */ 6 | 7 | // @ts-check 8 | 9 | 'use strict'; 10 | 11 | const path = require('path'); 12 | 13 | /** @type {import('webpack').Configuration} */ 14 | const config = { 15 | target: 'node', // vscode extensions run in a Node.js-context 📖 -> https://webpack.js.org/configuration/node/ 16 | 17 | entry: './src/extension.ts', // the entry point of this extension, 📖 -> https://webpack.js.org/configuration/entry-context/ 18 | output: { // the bundle is stored in the 'dist' folder (check package.json), 📖 -> https://webpack.js.org/configuration/output/ 19 | path: path.resolve(__dirname, 'dist'), 20 | filename: 'extension.js', 21 | libraryTarget: 'commonjs2', 22 | devtoolModuleFilenameTemplate: '../[resource-path]' 23 | }, 24 | devtool: 'source-map', 25 | externals: { 26 | vscode: 'commonjs vscode' // the vscode-module is created on-the-fly and must be excluded. Add other modules that cannot be webpack'ed, 📖 -> https://webpack.js.org/configuration/externals/ 27 | }, 28 | resolve: { 29 | extensions: ['.ts', '.tsx', '.js', 'jsx'], 30 | alias: { 31 | '@utils': path.resolve(__dirname, '../@utils') 32 | }, 33 | symlinks: true 34 | }, 35 | module: { 36 | rules: [ 37 | { 38 | test: /\.tsx?$/, 39 | use: 'ts-loader', 40 | exclude: /node_modules/ 41 | }, 42 | ] 43 | } 44 | }; 45 | 46 | module.exports = config; 47 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "scripts": { 4 | }, 5 | "devDependencies": { 6 | }, 7 | "workspaces": [ 8 | "packages/*", 9 | "example" 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/.npmignore: -------------------------------------------------------------------------------- 1 | src/ 2 | node_modules/ 3 | tsconfig.json 4 | tsconfig.tsbuildinfo 5 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/.npmrc: -------------------------------------------------------------------------------- 1 | registry=http://registry.npmjs.org 2 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "react-vsc-treeview", 3 | "version": "0.2.3", 4 | "main": "dist/index.js", 5 | "license": "MIT", 6 | "scripts": { 7 | "clean": "rimraf ./dist tsconfig.tsbuildinfo", 8 | "compile": "tsc -p ./", 9 | "watch": "tsc -watch -p ./", 10 | "prepublishOnly": "npm run compile" 11 | }, 12 | "dependencies": { 13 | "react": "^17.0.1", 14 | "react-reconciler": "^0.26.1" 15 | }, 16 | "devDependencies": { 17 | "@types/react": "^17.0.0", 18 | "@types/react-reconciler": "^0.18.0", 19 | "@types/vscode": "^1.52.0", 20 | "typescript": "^4.1.3" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/src/ExtendedTreeDataProvider.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 基于 vscode 标准 TreeDataProvider 接口实现的扩展,除了 get,提供了 set 方法。 3 | * @author weijiaxun 4 | */ 5 | 6 | import * as vscode from 'vscode'; 7 | import ExtendedTreeItem from './ExtendedTreeItem'; 8 | 9 | export default class ExtendedTreeDataProvider implements vscode.TreeDataProvider { 10 | 11 | private _data: {children: ExtendedTreeItem[]} = {children: []}; 12 | 13 | private _onDidChangeTreeData = new vscode.EventEmitter(); 14 | readonly onDidChangeTreeData = this._onDidChangeTreeData.event; 15 | 16 | getChildren(element?: ExtendedTreeItem) { 17 | const children = element ? element.children : this._data.children; 18 | return children; 19 | } 20 | 21 | getParent(element: ExtendedTreeItem) { 22 | return element.parent; 23 | } 24 | 25 | getTreeItem(element: ExtendedTreeItem) { 26 | return element.value; 27 | } 28 | 29 | createTreeItem(value: vscode.TreeItem): ExtendedTreeItem { 30 | const item = new ExtendedTreeItem(value); 31 | item.onDidChange(() => { 32 | this._onDidChangeTreeData.fire(item); 33 | }); 34 | return item; 35 | } 36 | 37 | appendChildToRoot(element: ExtendedTreeItem) { 38 | element.parent = null; 39 | this._data.children.push(element); 40 | this._onDidChangeTreeData.fire(); 41 | } 42 | 43 | removeChildFromRoot(element: ExtendedTreeItem) { 44 | this._data.children = this._data.children.filter(item => item !== element); 45 | this._onDidChangeTreeData.fire(); 46 | } 47 | 48 | insertInRootBefore(element: ExtendedTreeItem, beforeElement: ExtendedTreeItem) { 49 | const index = this._data.children.findIndex(item => item === beforeElement); 50 | this._data.children.splice(index + 1, 0, element); 51 | this._onDidChangeTreeData.fire(); 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/src/ExtendedTreeItem.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * @file TreeItem 扩展,增加了对父子的引用和 change 事件 3 | * @author weijiaxun 4 | */ 5 | 6 | import * as vscode from 'vscode'; 7 | import {UpdatePayload} from './VSCTreeItem'; 8 | 9 | export default class ExtendedTreeItem { 10 | 11 | children: ExtendedTreeItem[] = []; 12 | parent: ExtendedTreeItem | null = null; 13 | 14 | private _onDidChange = new vscode.EventEmitter(); 15 | readonly onDidChange = this._onDidChange.event; 16 | 17 | constructor(public value: vscode.TreeItem) { 18 | } 19 | 20 | appendChild(element: ExtendedTreeItem) { 21 | element.parent = this; 22 | this.children.push(element); 23 | this._onDidChange.fire(this); 24 | } 25 | 26 | removeChild(element: ExtendedTreeItem) { 27 | this.children = this.children.filter(item => item !== element); 28 | this._onDidChange.fire(this); 29 | } 30 | 31 | insertBefore(element: ExtendedTreeItem, beforeElement: ExtendedTreeItem) { 32 | const index = this.children.findIndex(item => item === beforeElement); 33 | this.children.splice(index + 1, 0, element); 34 | this._onDidChange.fire(this); 35 | } 36 | 37 | update(props: UpdatePayload[]) { 38 | props.forEach((payload) => { 39 | this.value[payload.type] = payload.value; 40 | }); 41 | this._onDidChange.fire(this); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/src/TreeItem.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @file TreeItem 组件,这一层主要的目的是为了把一些 props 计算的逻辑拿出来 3 | * @author weijiaxun 4 | */ 5 | 6 | import * as vscode from 'vscode'; 7 | import React, {useMemo} from 'react'; 8 | import VSCTreeItem, {VSCTreeItemProps} from './VSCTreeItem'; 9 | 10 | const TreeItem: React.FC = ({ 11 | label = '', 12 | id, 13 | iconPath, 14 | description, 15 | resourceUri, 16 | tooltip, 17 | command: rawCommand, 18 | contextValue, 19 | expanded, 20 | children 21 | }) => { 22 | const collapsibleState = useMemo( 23 | () => { 24 | if (children == null) { 25 | return vscode.TreeItemCollapsibleState.None; 26 | } 27 | if (expanded === true) { 28 | return vscode.TreeItemCollapsibleState.Expanded; 29 | } 30 | return vscode.TreeItemCollapsibleState.Collapsed; 31 | }, 32 | [children, expanded] 33 | ); 34 | 35 | const command = useMemo( 36 | () => { 37 | if (!rawCommand) { 38 | return undefined; 39 | } 40 | return typeof rawCommand === 'string' 41 | ? {command: rawCommand, title: ''} 42 | : rawCommand; 43 | }, 44 | [rawCommand] 45 | ); 46 | 47 | const vscTreeItemProps: VSCTreeItemProps = { 48 | label, 49 | id, 50 | iconPath, 51 | description, 52 | resourceUri, 53 | tooltip, 54 | command, 55 | collapsibleState, 56 | contextValue 57 | }; 58 | 59 | return {children}; 60 | }; 61 | 62 | export default TreeItem; 63 | 64 | export interface TreeItemProps { 65 | label?: string; 66 | id?: string; 67 | iconPath?: string | vscode.Uri | { light: string | vscode.Uri; dark: string | vscode.Uri } | vscode.ThemeIcon; 68 | description?: string | boolean; 69 | resourceUri?: vscode.Uri; 70 | tooltip?: string | undefined; 71 | command?: string | vscode.Command; 72 | contextValue?: string; 73 | expanded?: boolean; 74 | } 75 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/src/VSCTreeItem.tsx: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 暴露给 React Reconciler 的组件,和 vscode TreeItem 直接对应 3 | * @author weijiaxun 4 | */ 5 | 6 | import React from 'react'; 7 | import * as vscode from 'vscode'; 8 | 9 | const VSCTreeItem: React.FC = (props) => { 10 | // 为了保证类型不出问题,这里借用了 div 标签 11 | return
; 12 | }; 13 | 14 | export default VSCTreeItem; 15 | 16 | export interface VSCTreeItemProps { 17 | label?: string; 18 | id?: string; 19 | iconPath?: string | vscode.Uri | { light: string | vscode.Uri; dark: string | vscode.Uri } | vscode.ThemeIcon; 20 | description?: string | boolean; 21 | resourceUri?: vscode.Uri; 22 | tooltip?: string | undefined; 23 | command?: vscode.Command; 24 | collapsibleState?: vscode.TreeItemCollapsibleState; 25 | contextValue?: string; 26 | } 27 | 28 | export type Props = React.PropsWithChildren; 29 | 30 | export const propKeys: (keyof Props)[] = [ 31 | 'label', 'id', 'iconPath', 'description', 'resourceUri', 'tooltip', 32 | 'command', 'collapsibleState', 'contextValue', 'children' 33 | ]; 34 | 35 | export interface UpdatePayload { 36 | type: T; 37 | value: Props[T]; 38 | } 39 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/src/index.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * @file 基于 reconciler 的 tree view 工厂 3 | * @author weijiaxun 4 | */ 5 | 6 | import * as vscode from 'vscode'; 7 | import ExtendedTreeDataProvider from './ExtendedTreeDataProvider'; 8 | import reconciler from './reconciler'; 9 | 10 | const ReactTreeView = { 11 | render(whatToRender, viewId) { 12 | const treeDataProvider = new ExtendedTreeDataProvider(); 13 | const treeView = vscode.window.createTreeView(viewId, { 14 | treeDataProvider 15 | }); 16 | const container = reconciler.createContainer(treeDataProvider, false, false); 17 | reconciler.updateContainer(whatToRender, container, null, () => {}); 18 | return treeView; 19 | } 20 | }; 21 | 22 | export {default as TreeItem} from './TreeItem'; 23 | export {default as ExtendedTreeItem} from './ExtendedTreeItem'; 24 | export default ReactTreeView; 25 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/src/reconciler.ts: -------------------------------------------------------------------------------- 1 | import * as vscode from 'vscode'; 2 | import ReactReconciler from 'react-reconciler'; 3 | import ExtendedTreeDataProvider from './ExtendedTreeDataProvider'; 4 | import ExtendedTreeItem from './ExtendedTreeItem'; 5 | import {Props, propKeys, UpdatePayload} from './VSCTreeItem'; 6 | 7 | export default ReactReconciler< 8 | 'div', Props, ExtendedTreeDataProvider, ExtendedTreeItem, ExtendedTreeItem, 9 | unknown, unknown, unknown, UpdatePayload[], unknown, unknown, unknown 10 | >({ 11 | supportsMutation: true, 12 | 13 | createInstance(_type, props, container) { 14 | const { 15 | label = '', 16 | id, 17 | iconPath, 18 | description, 19 | resourceUri, 20 | tooltip, 21 | command, 22 | collapsibleState, 23 | contextValue 24 | } = props; 25 | const treeItem = new vscode.TreeItem(label, collapsibleState); 26 | treeItem.id = id; 27 | treeItem.iconPath = iconPath; 28 | treeItem.description = description; 29 | treeItem.resourceUri = resourceUri; 30 | treeItem.tooltip = tooltip; 31 | treeItem.command = command; 32 | treeItem.contextValue = contextValue; 33 | return container.createTreeItem(treeItem); 34 | }, 35 | 36 | appendChildToContainer(container, child) { 37 | container.appendChildToRoot(child); 38 | }, 39 | appendChild(parentInstance, child) { 40 | parentInstance.appendChild(child); 41 | }, 42 | appendInitialChild(parentInstance, child) { 43 | parentInstance.appendChild(child); 44 | }, 45 | 46 | removeChildFromContainer(container, child) { 47 | container.removeChildFromRoot(child); 48 | }, 49 | removeChild(parentInstance, child) { 50 | parentInstance.removeChild(child); 51 | }, 52 | 53 | insertInContainerBefore(container, child, beforeChild) { 54 | container.insertInRootBefore(child, beforeChild); 55 | }, 56 | insertBefore(parentInstance, child, beforeChild) { 57 | parentInstance.insertBefore(child, beforeChild); 58 | }, 59 | 60 | prepareUpdate(_instance, _type, oldProps, newProps) { 61 | const res: UpdatePayload[] = []; 62 | for (const key of propKeys) { 63 | if (oldProps[key] !== newProps[key]) { 64 | res.push({ 65 | type: key, 66 | value: newProps[key] 67 | }); 68 | } 69 | } 70 | return res; 71 | }, 72 | commitUpdate(instance, updatePayload) { 73 | instance.update(updatePayload); 74 | }, 75 | 76 | prepareForCommit() { 77 | return null; 78 | }, 79 | 80 | clearContainer() {}, 81 | 82 | // @ts-ignore 83 | finalizeInitialChildren() {}, 84 | getChildHostContext() {}, 85 | getPublicInstance() {}, 86 | getRootHostContext() {}, 87 | resetAfterCommit() {}, 88 | 89 | shouldSetTextContent() { 90 | return false; 91 | } 92 | }); 93 | -------------------------------------------------------------------------------- /packages/react-vsc-treeview/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../shared.tsconfig.json", 3 | "compilerOptions": { 4 | "rootDir": "src", 5 | "outDir": "dist", 6 | "sourceMap": true, 7 | "experimentalDecorators": true, 8 | "noImplicitReturns": false, 9 | "noImplicitAny": false, 10 | "jsx": "react" 11 | }, 12 | "exclude": [ 13 | "node_modules" 14 | ], 15 | "include": [ 16 | "src/**/*" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /shared.tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "commonjs", 4 | "baseUrl":".", 5 | "target": "es6", 6 | "strict": true, 7 | "noImplicitReturns": true, 8 | "noUnusedLocals": true, 9 | "noUnusedParameters": true, 10 | "esModuleInterop": true, 11 | "jsx": "react", 12 | "lib": [ 13 | "dom", 14 | "es6", 15 | "es2017.object" 16 | ], 17 | "declaration": true, 18 | "declarationMap": true, 19 | "composite": true 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@types/prop-types@*": 6 | version "15.7.3" 7 | resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" 8 | integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== 9 | 10 | "@types/react-reconciler@^0.18.0": 11 | version "0.18.0" 12 | resolved "https://registry.npmjs.org/@types/react-reconciler/-/react-reconciler-0.18.0.tgz#fce2b444103f44904e73eba349ac6552e2771f64" 13 | integrity sha512-hLVaxzL7cGgk/2C/sc8yyyvi+aeeimv7SKOFgyuPFYqNb2rnnQApHabcxo5Xp+GloUAfMe3tyQm2nkrmbLXq4w== 14 | dependencies: 15 | "@types/react" "*" 16 | 17 | "@types/react@*", "@types/react@^17.0.0": 18 | version "17.0.0" 19 | resolved "https://registry.npmjs.org/@types/react/-/react-17.0.0.tgz#5af3eb7fad2807092f0046a1302b7823e27919b8" 20 | integrity sha512-aj/L7RIMsRlWML3YB6KZiXB3fV2t41+5RBGYF8z+tAKU43Px8C3cYUZsDvf1/+Bm4FK21QWBrDutu8ZJ/70qOw== 21 | dependencies: 22 | "@types/prop-types" "*" 23 | csstype "^3.0.2" 24 | 25 | "@types/vscode@^1.52.0": 26 | version "1.52.0" 27 | resolved "https://registry.npmjs.org/@types/vscode/-/vscode-1.52.0.tgz#61917968dd403932127fc4004a21fd8d69e4f61c" 28 | integrity sha512-Kt3bvWzAvvF/WH9YEcrCICDp0Z7aHhJGhLJ1BxeyNP6yRjonWqWnAIh35/pXAjswAnWOABrYlF7SwXR9+1nnLA== 29 | 30 | "@webassemblyjs/ast@1.9.0": 31 | version "1.9.0" 32 | resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz#bd850604b4042459a5a41cd7d338cbed695ed964" 33 | integrity sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA== 34 | dependencies: 35 | "@webassemblyjs/helper-module-context" "1.9.0" 36 | "@webassemblyjs/helper-wasm-bytecode" "1.9.0" 37 | "@webassemblyjs/wast-parser" "1.9.0" 38 | 39 | "@webassemblyjs/floating-point-hex-parser@1.9.0": 40 | version "1.9.0" 41 | resolved "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" 42 | integrity sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA== 43 | 44 | "@webassemblyjs/helper-api-error@1.9.0": 45 | version "1.9.0" 46 | resolved "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" 47 | integrity sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw== 48 | 49 | "@webassemblyjs/helper-buffer@1.9.0": 50 | version "1.9.0" 51 | resolved "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz#a1442d269c5feb23fcbc9ef759dac3547f29de00" 52 | integrity sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA== 53 | 54 | "@webassemblyjs/helper-code-frame@1.9.0": 55 | version "1.9.0" 56 | resolved "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz#647f8892cd2043a82ac0c8c5e75c36f1d9159f27" 57 | integrity sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA== 58 | dependencies: 59 | "@webassemblyjs/wast-printer" "1.9.0" 60 | 61 | "@webassemblyjs/helper-fsm@1.9.0": 62 | version "1.9.0" 63 | resolved "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" 64 | integrity sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw== 65 | 66 | "@webassemblyjs/helper-module-context@1.9.0": 67 | version "1.9.0" 68 | resolved "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz#25d8884b76839871a08a6c6f806c3979ef712f07" 69 | integrity sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g== 70 | dependencies: 71 | "@webassemblyjs/ast" "1.9.0" 72 | 73 | "@webassemblyjs/helper-wasm-bytecode@1.9.0": 74 | version "1.9.0" 75 | resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" 76 | integrity sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw== 77 | 78 | "@webassemblyjs/helper-wasm-section@1.9.0": 79 | version "1.9.0" 80 | resolved "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz#5a4138d5a6292ba18b04c5ae49717e4167965346" 81 | integrity sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw== 82 | dependencies: 83 | "@webassemblyjs/ast" "1.9.0" 84 | "@webassemblyjs/helper-buffer" "1.9.0" 85 | "@webassemblyjs/helper-wasm-bytecode" "1.9.0" 86 | "@webassemblyjs/wasm-gen" "1.9.0" 87 | 88 | "@webassemblyjs/ieee754@1.9.0": 89 | version "1.9.0" 90 | resolved "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz#15c7a0fbaae83fb26143bbacf6d6df1702ad39e4" 91 | integrity sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg== 92 | dependencies: 93 | "@xtuc/ieee754" "^1.2.0" 94 | 95 | "@webassemblyjs/leb128@1.9.0": 96 | version "1.9.0" 97 | resolved "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz#f19ca0b76a6dc55623a09cffa769e838fa1e1c95" 98 | integrity sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw== 99 | dependencies: 100 | "@xtuc/long" "4.2.2" 101 | 102 | "@webassemblyjs/utf8@1.9.0": 103 | version "1.9.0" 104 | resolved "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" 105 | integrity sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w== 106 | 107 | "@webassemblyjs/wasm-edit@1.9.0": 108 | version "1.9.0" 109 | resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz#3fe6d79d3f0f922183aa86002c42dd256cfee9cf" 110 | integrity sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw== 111 | dependencies: 112 | "@webassemblyjs/ast" "1.9.0" 113 | "@webassemblyjs/helper-buffer" "1.9.0" 114 | "@webassemblyjs/helper-wasm-bytecode" "1.9.0" 115 | "@webassemblyjs/helper-wasm-section" "1.9.0" 116 | "@webassemblyjs/wasm-gen" "1.9.0" 117 | "@webassemblyjs/wasm-opt" "1.9.0" 118 | "@webassemblyjs/wasm-parser" "1.9.0" 119 | "@webassemblyjs/wast-printer" "1.9.0" 120 | 121 | "@webassemblyjs/wasm-gen@1.9.0": 122 | version "1.9.0" 123 | resolved "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz#50bc70ec68ded8e2763b01a1418bf43491a7a49c" 124 | integrity sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA== 125 | dependencies: 126 | "@webassemblyjs/ast" "1.9.0" 127 | "@webassemblyjs/helper-wasm-bytecode" "1.9.0" 128 | "@webassemblyjs/ieee754" "1.9.0" 129 | "@webassemblyjs/leb128" "1.9.0" 130 | "@webassemblyjs/utf8" "1.9.0" 131 | 132 | "@webassemblyjs/wasm-opt@1.9.0": 133 | version "1.9.0" 134 | resolved "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz#2211181e5b31326443cc8112eb9f0b9028721a61" 135 | integrity sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A== 136 | dependencies: 137 | "@webassemblyjs/ast" "1.9.0" 138 | "@webassemblyjs/helper-buffer" "1.9.0" 139 | "@webassemblyjs/wasm-gen" "1.9.0" 140 | "@webassemblyjs/wasm-parser" "1.9.0" 141 | 142 | "@webassemblyjs/wasm-parser@1.9.0": 143 | version "1.9.0" 144 | resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz#9d48e44826df4a6598294aa6c87469d642fff65e" 145 | integrity sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA== 146 | dependencies: 147 | "@webassemblyjs/ast" "1.9.0" 148 | "@webassemblyjs/helper-api-error" "1.9.0" 149 | "@webassemblyjs/helper-wasm-bytecode" "1.9.0" 150 | "@webassemblyjs/ieee754" "1.9.0" 151 | "@webassemblyjs/leb128" "1.9.0" 152 | "@webassemblyjs/utf8" "1.9.0" 153 | 154 | "@webassemblyjs/wast-parser@1.9.0": 155 | version "1.9.0" 156 | resolved "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz#3031115d79ac5bd261556cecc3fa90a3ef451914" 157 | integrity sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw== 158 | dependencies: 159 | "@webassemblyjs/ast" "1.9.0" 160 | "@webassemblyjs/floating-point-hex-parser" "1.9.0" 161 | "@webassemblyjs/helper-api-error" "1.9.0" 162 | "@webassemblyjs/helper-code-frame" "1.9.0" 163 | "@webassemblyjs/helper-fsm" "1.9.0" 164 | "@xtuc/long" "4.2.2" 165 | 166 | "@webassemblyjs/wast-printer@1.9.0": 167 | version "1.9.0" 168 | resolved "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz#4935d54c85fef637b00ce9f52377451d00d47899" 169 | integrity sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA== 170 | dependencies: 171 | "@webassemblyjs/ast" "1.9.0" 172 | "@webassemblyjs/wast-parser" "1.9.0" 173 | "@xtuc/long" "4.2.2" 174 | 175 | "@xtuc/ieee754@^1.2.0": 176 | version "1.2.0" 177 | resolved "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" 178 | integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== 179 | 180 | "@xtuc/long@4.2.2": 181 | version "4.2.2" 182 | resolved "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" 183 | integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== 184 | 185 | acorn@^6.4.1: 186 | version "6.4.2" 187 | resolved "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" 188 | integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== 189 | 190 | ajv-errors@^1.0.0: 191 | version "1.0.1" 192 | resolved "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" 193 | integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== 194 | 195 | ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: 196 | version "3.5.2" 197 | resolved "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" 198 | integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== 199 | 200 | ajv@^6.1.0, ajv@^6.10.2: 201 | version "6.12.6" 202 | resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" 203 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 204 | dependencies: 205 | fast-deep-equal "^3.1.1" 206 | fast-json-stable-stringify "^2.0.0" 207 | json-schema-traverse "^0.4.1" 208 | uri-js "^4.2.2" 209 | 210 | ansi-regex@^4.1.0: 211 | version "4.1.0" 212 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" 213 | integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== 214 | 215 | ansi-styles@^3.2.0, ansi-styles@^3.2.1: 216 | version "3.2.1" 217 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 218 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 219 | dependencies: 220 | color-convert "^1.9.0" 221 | 222 | anymatch@^2.0.0: 223 | version "2.0.0" 224 | resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" 225 | integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== 226 | dependencies: 227 | micromatch "^3.1.4" 228 | normalize-path "^2.1.1" 229 | 230 | anymatch@~3.1.1: 231 | version "3.1.1" 232 | resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz#c55ecf02185e2469259399310c173ce31233b142" 233 | integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== 234 | dependencies: 235 | normalize-path "^3.0.0" 236 | picomatch "^2.0.4" 237 | 238 | aproba@^1.1.1: 239 | version "1.2.0" 240 | resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" 241 | integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== 242 | 243 | arr-diff@^4.0.0: 244 | version "4.0.0" 245 | resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" 246 | integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= 247 | 248 | arr-flatten@^1.1.0: 249 | version "1.1.0" 250 | resolved "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" 251 | integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== 252 | 253 | arr-union@^3.1.0: 254 | version "3.1.0" 255 | resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" 256 | integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= 257 | 258 | array-unique@^0.3.2: 259 | version "0.3.2" 260 | resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" 261 | integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= 262 | 263 | asn1.js@^5.2.0: 264 | version "5.4.1" 265 | resolved "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" 266 | integrity sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA== 267 | dependencies: 268 | bn.js "^4.0.0" 269 | inherits "^2.0.1" 270 | minimalistic-assert "^1.0.0" 271 | safer-buffer "^2.1.0" 272 | 273 | assert@^1.1.1: 274 | version "1.5.0" 275 | resolved "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz#55c109aaf6e0aefdb3dc4b71240c70bf574b18eb" 276 | integrity sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA== 277 | dependencies: 278 | object-assign "^4.1.1" 279 | util "0.10.3" 280 | 281 | assign-symbols@^1.0.0: 282 | version "1.0.0" 283 | resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" 284 | integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= 285 | 286 | async-each@^1.0.1: 287 | version "1.0.3" 288 | resolved "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz#b727dbf87d7651602f06f4d4ac387f47d91b0cbf" 289 | integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== 290 | 291 | atob@^2.1.2: 292 | version "2.1.2" 293 | resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" 294 | integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== 295 | 296 | balanced-match@^1.0.0: 297 | version "1.0.0" 298 | resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 299 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 300 | 301 | base64-js@^1.0.2: 302 | version "1.5.1" 303 | resolved "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" 304 | integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== 305 | 306 | base@^0.11.1: 307 | version "0.11.2" 308 | resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" 309 | integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== 310 | dependencies: 311 | cache-base "^1.0.1" 312 | class-utils "^0.3.5" 313 | component-emitter "^1.2.1" 314 | define-property "^1.0.0" 315 | isobject "^3.0.1" 316 | mixin-deep "^1.2.0" 317 | pascalcase "^0.1.1" 318 | 319 | big.js@^5.2.2: 320 | version "5.2.2" 321 | resolved "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" 322 | integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== 323 | 324 | binary-extensions@^1.0.0: 325 | version "1.13.1" 326 | resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" 327 | integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== 328 | 329 | binary-extensions@^2.0.0: 330 | version "2.1.0" 331 | resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz#30fa40c9e7fe07dbc895678cd287024dea241dd9" 332 | integrity sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ== 333 | 334 | bindings@^1.5.0: 335 | version "1.5.0" 336 | resolved "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" 337 | integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== 338 | dependencies: 339 | file-uri-to-path "1.0.0" 340 | 341 | bluebird@^3.5.5: 342 | version "3.7.2" 343 | resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" 344 | integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== 345 | 346 | bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.4.0: 347 | version "4.11.9" 348 | resolved "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz#26d556829458f9d1e81fc48952493d0ba3507828" 349 | integrity sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw== 350 | 351 | bn.js@^5.0.0, bn.js@^5.1.1: 352 | version "5.1.3" 353 | resolved "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz#beca005408f642ebebea80b042b4d18d2ac0ee6b" 354 | integrity sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ== 355 | 356 | brace-expansion@^1.1.7: 357 | version "1.1.11" 358 | resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 359 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 360 | dependencies: 361 | balanced-match "^1.0.0" 362 | concat-map "0.0.1" 363 | 364 | braces@^2.3.1, braces@^2.3.2: 365 | version "2.3.2" 366 | resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" 367 | integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== 368 | dependencies: 369 | arr-flatten "^1.1.0" 370 | array-unique "^0.3.2" 371 | extend-shallow "^2.0.1" 372 | fill-range "^4.0.0" 373 | isobject "^3.0.1" 374 | repeat-element "^1.1.2" 375 | snapdragon "^0.8.1" 376 | snapdragon-node "^2.0.1" 377 | split-string "^3.0.2" 378 | to-regex "^3.0.1" 379 | 380 | braces@^3.0.1, braces@~3.0.2: 381 | version "3.0.2" 382 | resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" 383 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== 384 | dependencies: 385 | fill-range "^7.0.1" 386 | 387 | brorand@^1.0.1: 388 | version "1.1.0" 389 | resolved "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" 390 | integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= 391 | 392 | browserify-aes@^1.0.0, browserify-aes@^1.0.4: 393 | version "1.2.0" 394 | resolved "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz#326734642f403dabc3003209853bb70ad428ef48" 395 | integrity sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA== 396 | dependencies: 397 | buffer-xor "^1.0.3" 398 | cipher-base "^1.0.0" 399 | create-hash "^1.1.0" 400 | evp_bytestokey "^1.0.3" 401 | inherits "^2.0.1" 402 | safe-buffer "^5.0.1" 403 | 404 | browserify-cipher@^1.0.0: 405 | version "1.0.1" 406 | resolved "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz#8d6474c1b870bfdabcd3bcfcc1934a10e94f15f0" 407 | integrity sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w== 408 | dependencies: 409 | browserify-aes "^1.0.4" 410 | browserify-des "^1.0.0" 411 | evp_bytestokey "^1.0.0" 412 | 413 | browserify-des@^1.0.0: 414 | version "1.0.2" 415 | resolved "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz#3af4f1f59839403572f1c66204375f7a7f703e9c" 416 | integrity sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A== 417 | dependencies: 418 | cipher-base "^1.0.1" 419 | des.js "^1.0.0" 420 | inherits "^2.0.1" 421 | safe-buffer "^5.1.2" 422 | 423 | browserify-rsa@^4.0.0, browserify-rsa@^4.0.1: 424 | version "4.1.0" 425 | resolved "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz#b2fd06b5b75ae297f7ce2dc651f918f5be158c8d" 426 | integrity sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog== 427 | dependencies: 428 | bn.js "^5.0.0" 429 | randombytes "^2.0.1" 430 | 431 | browserify-sign@^4.0.0: 432 | version "4.2.1" 433 | resolved "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz#eaf4add46dd54be3bb3b36c0cf15abbeba7956c3" 434 | integrity sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg== 435 | dependencies: 436 | bn.js "^5.1.1" 437 | browserify-rsa "^4.0.1" 438 | create-hash "^1.2.0" 439 | create-hmac "^1.1.7" 440 | elliptic "^6.5.3" 441 | inherits "^2.0.4" 442 | parse-asn1 "^5.1.5" 443 | readable-stream "^3.6.0" 444 | safe-buffer "^5.2.0" 445 | 446 | browserify-zlib@^0.2.0: 447 | version "0.2.0" 448 | resolved "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" 449 | integrity sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA== 450 | dependencies: 451 | pako "~1.0.5" 452 | 453 | buffer-from@^1.0.0: 454 | version "1.1.1" 455 | resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" 456 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== 457 | 458 | buffer-xor@^1.0.3: 459 | version "1.0.3" 460 | resolved "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" 461 | integrity sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk= 462 | 463 | buffer@^4.3.0: 464 | version "4.9.2" 465 | resolved "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" 466 | integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== 467 | dependencies: 468 | base64-js "^1.0.2" 469 | ieee754 "^1.1.4" 470 | isarray "^1.0.0" 471 | 472 | builtin-status-codes@^3.0.0: 473 | version "3.0.0" 474 | resolved "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" 475 | integrity sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug= 476 | 477 | cacache@^12.0.2: 478 | version "12.0.4" 479 | resolved "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" 480 | integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== 481 | dependencies: 482 | bluebird "^3.5.5" 483 | chownr "^1.1.1" 484 | figgy-pudding "^3.5.1" 485 | glob "^7.1.4" 486 | graceful-fs "^4.1.15" 487 | infer-owner "^1.0.3" 488 | lru-cache "^5.1.1" 489 | mississippi "^3.0.0" 490 | mkdirp "^0.5.1" 491 | move-concurrently "^1.0.1" 492 | promise-inflight "^1.0.1" 493 | rimraf "^2.6.3" 494 | ssri "^6.0.1" 495 | unique-filename "^1.1.1" 496 | y18n "^4.0.0" 497 | 498 | cache-base@^1.0.1: 499 | version "1.0.1" 500 | resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" 501 | integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== 502 | dependencies: 503 | collection-visit "^1.0.0" 504 | component-emitter "^1.2.1" 505 | get-value "^2.0.6" 506 | has-value "^1.0.0" 507 | isobject "^3.0.1" 508 | set-value "^2.0.0" 509 | to-object-path "^0.3.0" 510 | union-value "^1.0.0" 511 | unset-value "^1.0.0" 512 | 513 | camelcase@^5.0.0: 514 | version "5.3.1" 515 | resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 516 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 517 | 518 | chalk@^2.3.0, chalk@^2.4.2: 519 | version "2.4.2" 520 | resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 521 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 522 | dependencies: 523 | ansi-styles "^3.2.1" 524 | escape-string-regexp "^1.0.5" 525 | supports-color "^5.3.0" 526 | 527 | chokidar@^2.1.8: 528 | version "2.1.8" 529 | resolved "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz#804b3a7b6a99358c3c5c61e71d8728f041cff917" 530 | integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== 531 | dependencies: 532 | anymatch "^2.0.0" 533 | async-each "^1.0.1" 534 | braces "^2.3.2" 535 | glob-parent "^3.1.0" 536 | inherits "^2.0.3" 537 | is-binary-path "^1.0.0" 538 | is-glob "^4.0.0" 539 | normalize-path "^3.0.0" 540 | path-is-absolute "^1.0.0" 541 | readdirp "^2.2.1" 542 | upath "^1.1.1" 543 | optionalDependencies: 544 | fsevents "^1.2.7" 545 | 546 | chokidar@^3.4.1: 547 | version "3.4.3" 548 | resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.4.3.tgz#c1df38231448e45ca4ac588e6c79573ba6a57d5b" 549 | integrity sha512-DtM3g7juCXQxFVSNPNByEC2+NImtBuxQQvWlHunpJIS5Ocr0lG306cC7FCi7cEA0fzmybPUIl4txBIobk1gGOQ== 550 | dependencies: 551 | anymatch "~3.1.1" 552 | braces "~3.0.2" 553 | glob-parent "~5.1.0" 554 | is-binary-path "~2.1.0" 555 | is-glob "~4.0.1" 556 | normalize-path "~3.0.0" 557 | readdirp "~3.5.0" 558 | optionalDependencies: 559 | fsevents "~2.1.2" 560 | 561 | chownr@^1.1.1: 562 | version "1.1.4" 563 | resolved "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" 564 | integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== 565 | 566 | chrome-trace-event@^1.0.2: 567 | version "1.0.2" 568 | resolved "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz#234090ee97c7d4ad1a2c4beae27505deffc608a4" 569 | integrity sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ== 570 | dependencies: 571 | tslib "^1.9.0" 572 | 573 | cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: 574 | version "1.0.4" 575 | resolved "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" 576 | integrity sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q== 577 | dependencies: 578 | inherits "^2.0.1" 579 | safe-buffer "^5.0.1" 580 | 581 | class-utils@^0.3.5: 582 | version "0.3.6" 583 | resolved "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" 584 | integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== 585 | dependencies: 586 | arr-union "^3.1.0" 587 | define-property "^0.2.5" 588 | isobject "^3.0.0" 589 | static-extend "^0.1.1" 590 | 591 | cliui@^5.0.0: 592 | version "5.0.0" 593 | resolved "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" 594 | integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== 595 | dependencies: 596 | string-width "^3.1.0" 597 | strip-ansi "^5.2.0" 598 | wrap-ansi "^5.1.0" 599 | 600 | collection-visit@^1.0.0: 601 | version "1.0.0" 602 | resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" 603 | integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= 604 | dependencies: 605 | map-visit "^1.0.0" 606 | object-visit "^1.0.0" 607 | 608 | color-convert@^1.9.0: 609 | version "1.9.3" 610 | resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 611 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 612 | dependencies: 613 | color-name "1.1.3" 614 | 615 | color-name@1.1.3: 616 | version "1.1.3" 617 | resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 618 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 619 | 620 | commander@^2.20.0: 621 | version "2.20.3" 622 | resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" 623 | integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== 624 | 625 | commondir@^1.0.1: 626 | version "1.0.1" 627 | resolved "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" 628 | integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= 629 | 630 | component-emitter@^1.2.1: 631 | version "1.3.0" 632 | resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" 633 | integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== 634 | 635 | concat-map@0.0.1: 636 | version "0.0.1" 637 | resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 638 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 639 | 640 | concat-stream@^1.5.0: 641 | version "1.6.2" 642 | resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" 643 | integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== 644 | dependencies: 645 | buffer-from "^1.0.0" 646 | inherits "^2.0.3" 647 | readable-stream "^2.2.2" 648 | typedarray "^0.0.6" 649 | 650 | console-browserify@^1.1.0: 651 | version "1.2.0" 652 | resolved "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336" 653 | integrity sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA== 654 | 655 | constants-browserify@^1.0.0: 656 | version "1.0.0" 657 | resolved "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" 658 | integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U= 659 | 660 | copy-concurrently@^1.0.0: 661 | version "1.0.5" 662 | resolved "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" 663 | integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== 664 | dependencies: 665 | aproba "^1.1.1" 666 | fs-write-stream-atomic "^1.0.8" 667 | iferr "^0.1.5" 668 | mkdirp "^0.5.1" 669 | rimraf "^2.5.4" 670 | run-queue "^1.0.0" 671 | 672 | copy-descriptor@^0.1.0: 673 | version "0.1.1" 674 | resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" 675 | integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= 676 | 677 | core-util-is@~1.0.0: 678 | version "1.0.2" 679 | resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 680 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= 681 | 682 | create-ecdh@^4.0.0: 683 | version "4.0.4" 684 | resolved "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e" 685 | integrity sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A== 686 | dependencies: 687 | bn.js "^4.1.0" 688 | elliptic "^6.5.3" 689 | 690 | create-hash@^1.1.0, create-hash@^1.1.2, create-hash@^1.2.0: 691 | version "1.2.0" 692 | resolved "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz#889078af11a63756bcfb59bd221996be3a9ef196" 693 | integrity sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg== 694 | dependencies: 695 | cipher-base "^1.0.1" 696 | inherits "^2.0.1" 697 | md5.js "^1.3.4" 698 | ripemd160 "^2.0.1" 699 | sha.js "^2.4.0" 700 | 701 | create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7: 702 | version "1.1.7" 703 | resolved "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz#69170c78b3ab957147b2b8b04572e47ead2243ff" 704 | integrity sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg== 705 | dependencies: 706 | cipher-base "^1.0.3" 707 | create-hash "^1.1.0" 708 | inherits "^2.0.1" 709 | ripemd160 "^2.0.0" 710 | safe-buffer "^5.0.1" 711 | sha.js "^2.4.8" 712 | 713 | cross-spawn@^6.0.5: 714 | version "6.0.5" 715 | resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" 716 | integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== 717 | dependencies: 718 | nice-try "^1.0.4" 719 | path-key "^2.0.1" 720 | semver "^5.5.0" 721 | shebang-command "^1.2.0" 722 | which "^1.2.9" 723 | 724 | crypto-browserify@^3.11.0: 725 | version "3.12.0" 726 | resolved "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" 727 | integrity sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg== 728 | dependencies: 729 | browserify-cipher "^1.0.0" 730 | browserify-sign "^4.0.0" 731 | create-ecdh "^4.0.0" 732 | create-hash "^1.1.0" 733 | create-hmac "^1.1.0" 734 | diffie-hellman "^5.0.0" 735 | inherits "^2.0.1" 736 | pbkdf2 "^3.0.3" 737 | public-encrypt "^4.0.0" 738 | randombytes "^2.0.0" 739 | randomfill "^1.0.3" 740 | 741 | csstype@^3.0.2: 742 | version "3.0.5" 743 | resolved "https://registry.npmjs.org/csstype/-/csstype-3.0.5.tgz#7fdec6a28a67ae18647c51668a9ff95bb2fa7bb8" 744 | integrity sha512-uVDi8LpBUKQj6sdxNaTetL6FpeCqTjOvAQuQUa/qAqq8oOd4ivkbhgnqayl0dnPal8Tb/yB1tF+gOvCBiicaiQ== 745 | 746 | cyclist@^1.0.1: 747 | version "1.0.1" 748 | resolved "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" 749 | integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= 750 | 751 | debug@^2.2.0, debug@^2.3.3: 752 | version "2.6.9" 753 | resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" 754 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== 755 | dependencies: 756 | ms "2.0.0" 757 | 758 | decamelize@^1.2.0: 759 | version "1.2.0" 760 | resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 761 | integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= 762 | 763 | decode-uri-component@^0.2.0: 764 | version "0.2.0" 765 | resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" 766 | integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= 767 | 768 | define-property@^0.2.5: 769 | version "0.2.5" 770 | resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" 771 | integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= 772 | dependencies: 773 | is-descriptor "^0.1.0" 774 | 775 | define-property@^1.0.0: 776 | version "1.0.0" 777 | resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" 778 | integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= 779 | dependencies: 780 | is-descriptor "^1.0.0" 781 | 782 | define-property@^2.0.2: 783 | version "2.0.2" 784 | resolved "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" 785 | integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== 786 | dependencies: 787 | is-descriptor "^1.0.2" 788 | isobject "^3.0.1" 789 | 790 | des.js@^1.0.0: 791 | version "1.0.1" 792 | resolved "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz#5382142e1bdc53f85d86d53e5f4aa7deb91e0843" 793 | integrity sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA== 794 | dependencies: 795 | inherits "^2.0.1" 796 | minimalistic-assert "^1.0.0" 797 | 798 | detect-file@^1.0.0: 799 | version "1.0.0" 800 | resolved "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz#f0d66d03672a825cb1b73bdb3fe62310c8e552b7" 801 | integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= 802 | 803 | diffie-hellman@^5.0.0: 804 | version "5.0.3" 805 | resolved "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz#40e8ee98f55a2149607146921c63e1ae5f3d2875" 806 | integrity sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg== 807 | dependencies: 808 | bn.js "^4.1.0" 809 | miller-rabin "^4.0.0" 810 | randombytes "^2.0.0" 811 | 812 | domain-browser@^1.1.1: 813 | version "1.2.0" 814 | resolved "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" 815 | integrity sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA== 816 | 817 | duplexify@^3.4.2, duplexify@^3.6.0: 818 | version "3.7.1" 819 | resolved "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" 820 | integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== 821 | dependencies: 822 | end-of-stream "^1.0.0" 823 | inherits "^2.0.1" 824 | readable-stream "^2.0.0" 825 | stream-shift "^1.0.0" 826 | 827 | elliptic@^6.5.3: 828 | version "6.5.3" 829 | resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz#cb59eb2efdaf73a0bd78ccd7015a62ad6e0f93d6" 830 | integrity sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw== 831 | dependencies: 832 | bn.js "^4.4.0" 833 | brorand "^1.0.1" 834 | hash.js "^1.0.0" 835 | hmac-drbg "^1.0.0" 836 | inherits "^2.0.1" 837 | minimalistic-assert "^1.0.0" 838 | minimalistic-crypto-utils "^1.0.0" 839 | 840 | emoji-regex@^7.0.1: 841 | version "7.0.3" 842 | resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" 843 | integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== 844 | 845 | emojis-list@^3.0.0: 846 | version "3.0.0" 847 | resolved "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" 848 | integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== 849 | 850 | end-of-stream@^1.0.0, end-of-stream@^1.1.0: 851 | version "1.4.4" 852 | resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" 853 | integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== 854 | dependencies: 855 | once "^1.4.0" 856 | 857 | enhanced-resolve@^4.0.0, enhanced-resolve@^4.1.1, enhanced-resolve@^4.3.0: 858 | version "4.3.0" 859 | resolved "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz#3b806f3bfafc1ec7de69551ef93cca46c1704126" 860 | integrity sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ== 861 | dependencies: 862 | graceful-fs "^4.1.2" 863 | memory-fs "^0.5.0" 864 | tapable "^1.0.0" 865 | 866 | errno@^0.1.3, errno@~0.1.7: 867 | version "0.1.8" 868 | resolved "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" 869 | integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== 870 | dependencies: 871 | prr "~1.0.1" 872 | 873 | escape-string-regexp@^1.0.5: 874 | version "1.0.5" 875 | resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 876 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 877 | 878 | eslint-scope@^4.0.3: 879 | version "4.0.3" 880 | resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" 881 | integrity sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg== 882 | dependencies: 883 | esrecurse "^4.1.0" 884 | estraverse "^4.1.1" 885 | 886 | esrecurse@^4.1.0: 887 | version "4.3.0" 888 | resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" 889 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== 890 | dependencies: 891 | estraverse "^5.2.0" 892 | 893 | estraverse@^4.1.1: 894 | version "4.3.0" 895 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" 896 | integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== 897 | 898 | estraverse@^5.2.0: 899 | version "5.2.0" 900 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" 901 | integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== 902 | 903 | events@^3.0.0: 904 | version "3.2.0" 905 | resolved "https://registry.npmjs.org/events/-/events-3.2.0.tgz#93b87c18f8efcd4202a461aec4dfc0556b639379" 906 | integrity sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg== 907 | 908 | evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: 909 | version "1.0.3" 910 | resolved "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" 911 | integrity sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA== 912 | dependencies: 913 | md5.js "^1.3.4" 914 | safe-buffer "^5.1.1" 915 | 916 | expand-brackets@^2.1.4: 917 | version "2.1.4" 918 | resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" 919 | integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= 920 | dependencies: 921 | debug "^2.3.3" 922 | define-property "^0.2.5" 923 | extend-shallow "^2.0.1" 924 | posix-character-classes "^0.1.0" 925 | regex-not "^1.0.0" 926 | snapdragon "^0.8.1" 927 | to-regex "^3.0.1" 928 | 929 | expand-tilde@^2.0.0, expand-tilde@^2.0.2: 930 | version "2.0.2" 931 | resolved "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" 932 | integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= 933 | dependencies: 934 | homedir-polyfill "^1.0.1" 935 | 936 | extend-shallow@^2.0.1: 937 | version "2.0.1" 938 | resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" 939 | integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= 940 | dependencies: 941 | is-extendable "^0.1.0" 942 | 943 | extend-shallow@^3.0.0, extend-shallow@^3.0.2: 944 | version "3.0.2" 945 | resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" 946 | integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= 947 | dependencies: 948 | assign-symbols "^1.0.0" 949 | is-extendable "^1.0.1" 950 | 951 | extglob@^2.0.4: 952 | version "2.0.4" 953 | resolved "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" 954 | integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== 955 | dependencies: 956 | array-unique "^0.3.2" 957 | define-property "^1.0.0" 958 | expand-brackets "^2.1.4" 959 | extend-shallow "^2.0.1" 960 | fragment-cache "^0.2.1" 961 | regex-not "^1.0.0" 962 | snapdragon "^0.8.1" 963 | to-regex "^3.0.1" 964 | 965 | fast-deep-equal@^3.1.1: 966 | version "3.1.3" 967 | resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" 968 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 969 | 970 | fast-json-stable-stringify@^2.0.0: 971 | version "2.1.0" 972 | resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" 973 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 974 | 975 | figgy-pudding@^3.5.1: 976 | version "3.5.2" 977 | resolved "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" 978 | integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== 979 | 980 | file-uri-to-path@1.0.0: 981 | version "1.0.0" 982 | resolved "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" 983 | integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== 984 | 985 | fill-range@^4.0.0: 986 | version "4.0.0" 987 | resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" 988 | integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= 989 | dependencies: 990 | extend-shallow "^2.0.1" 991 | is-number "^3.0.0" 992 | repeat-string "^1.6.1" 993 | to-regex-range "^2.1.0" 994 | 995 | fill-range@^7.0.1: 996 | version "7.0.1" 997 | resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" 998 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== 999 | dependencies: 1000 | to-regex-range "^5.0.1" 1001 | 1002 | find-cache-dir@^2.1.0: 1003 | version "2.1.0" 1004 | resolved "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz#8d0f94cd13fe43c6c7c261a0d86115ca918c05f7" 1005 | integrity sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ== 1006 | dependencies: 1007 | commondir "^1.0.1" 1008 | make-dir "^2.0.0" 1009 | pkg-dir "^3.0.0" 1010 | 1011 | find-up@^3.0.0: 1012 | version "3.0.0" 1013 | resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" 1014 | integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== 1015 | dependencies: 1016 | locate-path "^3.0.0" 1017 | 1018 | findup-sync@^3.0.0: 1019 | version "3.0.0" 1020 | resolved "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" 1021 | integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== 1022 | dependencies: 1023 | detect-file "^1.0.0" 1024 | is-glob "^4.0.0" 1025 | micromatch "^3.0.4" 1026 | resolve-dir "^1.0.1" 1027 | 1028 | flush-write-stream@^1.0.0: 1029 | version "1.1.1" 1030 | resolved "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" 1031 | integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== 1032 | dependencies: 1033 | inherits "^2.0.3" 1034 | readable-stream "^2.3.6" 1035 | 1036 | for-in@^1.0.2: 1037 | version "1.0.2" 1038 | resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" 1039 | integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= 1040 | 1041 | fragment-cache@^0.2.1: 1042 | version "0.2.1" 1043 | resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" 1044 | integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= 1045 | dependencies: 1046 | map-cache "^0.2.2" 1047 | 1048 | from2@^2.1.0: 1049 | version "2.3.0" 1050 | resolved "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" 1051 | integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= 1052 | dependencies: 1053 | inherits "^2.0.1" 1054 | readable-stream "^2.0.0" 1055 | 1056 | fs-write-stream-atomic@^1.0.8: 1057 | version "1.0.10" 1058 | resolved "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" 1059 | integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= 1060 | dependencies: 1061 | graceful-fs "^4.1.2" 1062 | iferr "^0.1.5" 1063 | imurmurhash "^0.1.4" 1064 | readable-stream "1 || 2" 1065 | 1066 | fs.realpath@^1.0.0: 1067 | version "1.0.0" 1068 | resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 1069 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 1070 | 1071 | fsevents@^1.2.7: 1072 | version "1.2.13" 1073 | resolved "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" 1074 | integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== 1075 | dependencies: 1076 | bindings "^1.5.0" 1077 | nan "^2.12.1" 1078 | 1079 | fsevents@~2.1.2: 1080 | version "2.1.3" 1081 | resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" 1082 | integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== 1083 | 1084 | get-caller-file@^2.0.1: 1085 | version "2.0.5" 1086 | resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" 1087 | integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== 1088 | 1089 | get-value@^2.0.3, get-value@^2.0.6: 1090 | version "2.0.6" 1091 | resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" 1092 | integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= 1093 | 1094 | glob-parent@^3.1.0: 1095 | version "3.1.0" 1096 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" 1097 | integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= 1098 | dependencies: 1099 | is-glob "^3.1.0" 1100 | path-dirname "^1.0.0" 1101 | 1102 | glob-parent@~5.1.0: 1103 | version "5.1.1" 1104 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" 1105 | integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== 1106 | dependencies: 1107 | is-glob "^4.0.1" 1108 | 1109 | glob@^7.1.3, glob@^7.1.4: 1110 | version "7.1.6" 1111 | resolved "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" 1112 | integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== 1113 | dependencies: 1114 | fs.realpath "^1.0.0" 1115 | inflight "^1.0.4" 1116 | inherits "2" 1117 | minimatch "^3.0.4" 1118 | once "^1.3.0" 1119 | path-is-absolute "^1.0.0" 1120 | 1121 | global-modules@^1.0.0: 1122 | version "1.0.0" 1123 | resolved "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" 1124 | integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== 1125 | dependencies: 1126 | global-prefix "^1.0.1" 1127 | is-windows "^1.0.1" 1128 | resolve-dir "^1.0.0" 1129 | 1130 | global-modules@^2.0.0: 1131 | version "2.0.0" 1132 | resolved "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz#997605ad2345f27f51539bea26574421215c7780" 1133 | integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== 1134 | dependencies: 1135 | global-prefix "^3.0.0" 1136 | 1137 | global-prefix@^1.0.1: 1138 | version "1.0.2" 1139 | resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" 1140 | integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= 1141 | dependencies: 1142 | expand-tilde "^2.0.2" 1143 | homedir-polyfill "^1.0.1" 1144 | ini "^1.3.4" 1145 | is-windows "^1.0.1" 1146 | which "^1.2.14" 1147 | 1148 | global-prefix@^3.0.0: 1149 | version "3.0.0" 1150 | resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz#fc85f73064df69f50421f47f883fe5b913ba9b97" 1151 | integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== 1152 | dependencies: 1153 | ini "^1.3.5" 1154 | kind-of "^6.0.2" 1155 | which "^1.3.1" 1156 | 1157 | graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2: 1158 | version "4.2.4" 1159 | resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" 1160 | integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== 1161 | 1162 | has-flag@^3.0.0: 1163 | version "3.0.0" 1164 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 1165 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1166 | 1167 | has-value@^0.3.1: 1168 | version "0.3.1" 1169 | resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" 1170 | integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= 1171 | dependencies: 1172 | get-value "^2.0.3" 1173 | has-values "^0.1.4" 1174 | isobject "^2.0.0" 1175 | 1176 | has-value@^1.0.0: 1177 | version "1.0.0" 1178 | resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" 1179 | integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= 1180 | dependencies: 1181 | get-value "^2.0.6" 1182 | has-values "^1.0.0" 1183 | isobject "^3.0.0" 1184 | 1185 | has-values@^0.1.4: 1186 | version "0.1.4" 1187 | resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" 1188 | integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= 1189 | 1190 | has-values@^1.0.0: 1191 | version "1.0.0" 1192 | resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" 1193 | integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= 1194 | dependencies: 1195 | is-number "^3.0.0" 1196 | kind-of "^4.0.0" 1197 | 1198 | hash-base@^3.0.0: 1199 | version "3.1.0" 1200 | resolved "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz#55c381d9e06e1d2997a883b4a3fddfe7f0d3af33" 1201 | integrity sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA== 1202 | dependencies: 1203 | inherits "^2.0.4" 1204 | readable-stream "^3.6.0" 1205 | safe-buffer "^5.2.0" 1206 | 1207 | hash.js@^1.0.0, hash.js@^1.0.3: 1208 | version "1.1.7" 1209 | resolved "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" 1210 | integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== 1211 | dependencies: 1212 | inherits "^2.0.3" 1213 | minimalistic-assert "^1.0.1" 1214 | 1215 | hmac-drbg@^1.0.0: 1216 | version "1.0.1" 1217 | resolved "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" 1218 | integrity sha1-0nRXAQJabHdabFRXk+1QL8DGSaE= 1219 | dependencies: 1220 | hash.js "^1.0.3" 1221 | minimalistic-assert "^1.0.0" 1222 | minimalistic-crypto-utils "^1.0.1" 1223 | 1224 | homedir-polyfill@^1.0.1: 1225 | version "1.0.3" 1226 | resolved "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" 1227 | integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== 1228 | dependencies: 1229 | parse-passwd "^1.0.0" 1230 | 1231 | https-browserify@^1.0.0: 1232 | version "1.0.0" 1233 | resolved "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" 1234 | integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM= 1235 | 1236 | ieee754@^1.1.4: 1237 | version "1.2.1" 1238 | resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" 1239 | integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== 1240 | 1241 | iferr@^0.1.5: 1242 | version "0.1.5" 1243 | resolved "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" 1244 | integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= 1245 | 1246 | import-local@^2.0.0: 1247 | version "2.0.0" 1248 | resolved "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" 1249 | integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== 1250 | dependencies: 1251 | pkg-dir "^3.0.0" 1252 | resolve-cwd "^2.0.0" 1253 | 1254 | imurmurhash@^0.1.4: 1255 | version "0.1.4" 1256 | resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 1257 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= 1258 | 1259 | infer-owner@^1.0.3: 1260 | version "1.0.4" 1261 | resolved "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" 1262 | integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== 1263 | 1264 | inflight@^1.0.4: 1265 | version "1.0.6" 1266 | resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 1267 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 1268 | dependencies: 1269 | once "^1.3.0" 1270 | wrappy "1" 1271 | 1272 | inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: 1273 | version "2.0.4" 1274 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 1275 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1276 | 1277 | inherits@2.0.1: 1278 | version "2.0.1" 1279 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" 1280 | integrity sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE= 1281 | 1282 | inherits@2.0.3: 1283 | version "2.0.3" 1284 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 1285 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= 1286 | 1287 | ini@^1.3.4, ini@^1.3.5: 1288 | version "1.3.8" 1289 | resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" 1290 | integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== 1291 | 1292 | interpret@^1.4.0: 1293 | version "1.4.0" 1294 | resolved "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" 1295 | integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== 1296 | 1297 | is-accessor-descriptor@^0.1.6: 1298 | version "0.1.6" 1299 | resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" 1300 | integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= 1301 | dependencies: 1302 | kind-of "^3.0.2" 1303 | 1304 | is-accessor-descriptor@^1.0.0: 1305 | version "1.0.0" 1306 | resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" 1307 | integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== 1308 | dependencies: 1309 | kind-of "^6.0.0" 1310 | 1311 | is-binary-path@^1.0.0: 1312 | version "1.0.1" 1313 | resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" 1314 | integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= 1315 | dependencies: 1316 | binary-extensions "^1.0.0" 1317 | 1318 | is-binary-path@~2.1.0: 1319 | version "2.1.0" 1320 | resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" 1321 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== 1322 | dependencies: 1323 | binary-extensions "^2.0.0" 1324 | 1325 | is-buffer@^1.1.5: 1326 | version "1.1.6" 1327 | resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" 1328 | integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== 1329 | 1330 | is-data-descriptor@^0.1.4: 1331 | version "0.1.4" 1332 | resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" 1333 | integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= 1334 | dependencies: 1335 | kind-of "^3.0.2" 1336 | 1337 | is-data-descriptor@^1.0.0: 1338 | version "1.0.0" 1339 | resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" 1340 | integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== 1341 | dependencies: 1342 | kind-of "^6.0.0" 1343 | 1344 | is-descriptor@^0.1.0: 1345 | version "0.1.6" 1346 | resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" 1347 | integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== 1348 | dependencies: 1349 | is-accessor-descriptor "^0.1.6" 1350 | is-data-descriptor "^0.1.4" 1351 | kind-of "^5.0.0" 1352 | 1353 | is-descriptor@^1.0.0, is-descriptor@^1.0.2: 1354 | version "1.0.2" 1355 | resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" 1356 | integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== 1357 | dependencies: 1358 | is-accessor-descriptor "^1.0.0" 1359 | is-data-descriptor "^1.0.0" 1360 | kind-of "^6.0.2" 1361 | 1362 | is-extendable@^0.1.0, is-extendable@^0.1.1: 1363 | version "0.1.1" 1364 | resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" 1365 | integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= 1366 | 1367 | is-extendable@^1.0.1: 1368 | version "1.0.1" 1369 | resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" 1370 | integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== 1371 | dependencies: 1372 | is-plain-object "^2.0.4" 1373 | 1374 | is-extglob@^2.1.0, is-extglob@^2.1.1: 1375 | version "2.1.1" 1376 | resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 1377 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= 1378 | 1379 | is-fullwidth-code-point@^2.0.0: 1380 | version "2.0.0" 1381 | resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 1382 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 1383 | 1384 | is-glob@^3.1.0: 1385 | version "3.1.0" 1386 | resolved "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" 1387 | integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= 1388 | dependencies: 1389 | is-extglob "^2.1.0" 1390 | 1391 | is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: 1392 | version "4.0.1" 1393 | resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" 1394 | integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== 1395 | dependencies: 1396 | is-extglob "^2.1.1" 1397 | 1398 | is-number@^3.0.0: 1399 | version "3.0.0" 1400 | resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" 1401 | integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= 1402 | dependencies: 1403 | kind-of "^3.0.2" 1404 | 1405 | is-number@^7.0.0: 1406 | version "7.0.0" 1407 | resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" 1408 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== 1409 | 1410 | is-plain-object@^2.0.3, is-plain-object@^2.0.4: 1411 | version "2.0.4" 1412 | resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" 1413 | integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== 1414 | dependencies: 1415 | isobject "^3.0.1" 1416 | 1417 | is-windows@^1.0.1, is-windows@^1.0.2: 1418 | version "1.0.2" 1419 | resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" 1420 | integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== 1421 | 1422 | is-wsl@^1.1.0: 1423 | version "1.1.0" 1424 | resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" 1425 | integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= 1426 | 1427 | isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: 1428 | version "1.0.0" 1429 | resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 1430 | integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= 1431 | 1432 | isexe@^2.0.0: 1433 | version "2.0.0" 1434 | resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 1435 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= 1436 | 1437 | isobject@^2.0.0: 1438 | version "2.1.0" 1439 | resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" 1440 | integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= 1441 | dependencies: 1442 | isarray "1.0.0" 1443 | 1444 | isobject@^3.0.0, isobject@^3.0.1: 1445 | version "3.0.1" 1446 | resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" 1447 | integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= 1448 | 1449 | "js-tokens@^3.0.0 || ^4.0.0": 1450 | version "4.0.0" 1451 | resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 1452 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 1453 | 1454 | json-parse-better-errors@^1.0.2: 1455 | version "1.0.2" 1456 | resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 1457 | integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== 1458 | 1459 | json-schema-traverse@^0.4.1: 1460 | version "0.4.1" 1461 | resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 1462 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 1463 | 1464 | json5@^1.0.1: 1465 | version "1.0.1" 1466 | resolved "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" 1467 | integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== 1468 | dependencies: 1469 | minimist "^1.2.0" 1470 | 1471 | kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: 1472 | version "3.2.2" 1473 | resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" 1474 | integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= 1475 | dependencies: 1476 | is-buffer "^1.1.5" 1477 | 1478 | kind-of@^4.0.0: 1479 | version "4.0.0" 1480 | resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" 1481 | integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= 1482 | dependencies: 1483 | is-buffer "^1.1.5" 1484 | 1485 | kind-of@^5.0.0: 1486 | version "5.1.0" 1487 | resolved "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" 1488 | integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== 1489 | 1490 | kind-of@^6.0.0, kind-of@^6.0.2: 1491 | version "6.0.3" 1492 | resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" 1493 | integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== 1494 | 1495 | loader-runner@^2.4.0: 1496 | version "2.4.0" 1497 | resolved "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz#ed47066bfe534d7e84c4c7b9998c2a75607d9357" 1498 | integrity sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw== 1499 | 1500 | loader-utils@^1.0.2, loader-utils@^1.2.3, loader-utils@^1.4.0: 1501 | version "1.4.0" 1502 | resolved "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" 1503 | integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== 1504 | dependencies: 1505 | big.js "^5.2.2" 1506 | emojis-list "^3.0.0" 1507 | json5 "^1.0.1" 1508 | 1509 | locate-path@^3.0.0: 1510 | version "3.0.0" 1511 | resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" 1512 | integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== 1513 | dependencies: 1514 | p-locate "^3.0.0" 1515 | path-exists "^3.0.0" 1516 | 1517 | loose-envify@^1.1.0: 1518 | version "1.4.0" 1519 | resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 1520 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 1521 | dependencies: 1522 | js-tokens "^3.0.0 || ^4.0.0" 1523 | 1524 | lru-cache@^5.1.1: 1525 | version "5.1.1" 1526 | resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" 1527 | integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== 1528 | dependencies: 1529 | yallist "^3.0.2" 1530 | 1531 | make-dir@^2.0.0: 1532 | version "2.1.0" 1533 | resolved "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" 1534 | integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== 1535 | dependencies: 1536 | pify "^4.0.1" 1537 | semver "^5.6.0" 1538 | 1539 | map-cache@^0.2.2: 1540 | version "0.2.2" 1541 | resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" 1542 | integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= 1543 | 1544 | map-visit@^1.0.0: 1545 | version "1.0.0" 1546 | resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" 1547 | integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= 1548 | dependencies: 1549 | object-visit "^1.0.0" 1550 | 1551 | md5.js@^1.3.4: 1552 | version "1.3.5" 1553 | resolved "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" 1554 | integrity sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg== 1555 | dependencies: 1556 | hash-base "^3.0.0" 1557 | inherits "^2.0.1" 1558 | safe-buffer "^5.1.2" 1559 | 1560 | memory-fs@^0.4.1: 1561 | version "0.4.1" 1562 | resolved "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" 1563 | integrity sha1-OpoguEYlI+RHz7x+i7gO1me/xVI= 1564 | dependencies: 1565 | errno "^0.1.3" 1566 | readable-stream "^2.0.1" 1567 | 1568 | memory-fs@^0.5.0: 1569 | version "0.5.0" 1570 | resolved "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz#324c01288b88652966d161db77838720845a8e3c" 1571 | integrity sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA== 1572 | dependencies: 1573 | errno "^0.1.3" 1574 | readable-stream "^2.0.1" 1575 | 1576 | micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: 1577 | version "3.1.10" 1578 | resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" 1579 | integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== 1580 | dependencies: 1581 | arr-diff "^4.0.0" 1582 | array-unique "^0.3.2" 1583 | braces "^2.3.1" 1584 | define-property "^2.0.2" 1585 | extend-shallow "^3.0.2" 1586 | extglob "^2.0.4" 1587 | fragment-cache "^0.2.1" 1588 | kind-of "^6.0.2" 1589 | nanomatch "^1.2.9" 1590 | object.pick "^1.3.0" 1591 | regex-not "^1.0.0" 1592 | snapdragon "^0.8.1" 1593 | to-regex "^3.0.2" 1594 | 1595 | micromatch@^4.0.0: 1596 | version "4.0.2" 1597 | resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259" 1598 | integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== 1599 | dependencies: 1600 | braces "^3.0.1" 1601 | picomatch "^2.0.5" 1602 | 1603 | miller-rabin@^4.0.0: 1604 | version "4.0.1" 1605 | resolved "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" 1606 | integrity sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA== 1607 | dependencies: 1608 | bn.js "^4.0.0" 1609 | brorand "^1.0.1" 1610 | 1611 | minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: 1612 | version "1.0.1" 1613 | resolved "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" 1614 | integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== 1615 | 1616 | minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: 1617 | version "1.0.1" 1618 | resolved "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" 1619 | integrity sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo= 1620 | 1621 | minimatch@^3.0.4: 1622 | version "3.0.4" 1623 | resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 1624 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 1625 | dependencies: 1626 | brace-expansion "^1.1.7" 1627 | 1628 | minimist@^1.2.0, minimist@^1.2.5: 1629 | version "1.2.5" 1630 | resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" 1631 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== 1632 | 1633 | mississippi@^3.0.0: 1634 | version "3.0.0" 1635 | resolved "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" 1636 | integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== 1637 | dependencies: 1638 | concat-stream "^1.5.0" 1639 | duplexify "^3.4.2" 1640 | end-of-stream "^1.1.0" 1641 | flush-write-stream "^1.0.0" 1642 | from2 "^2.1.0" 1643 | parallel-transform "^1.1.0" 1644 | pump "^3.0.0" 1645 | pumpify "^1.3.3" 1646 | stream-each "^1.1.0" 1647 | through2 "^2.0.0" 1648 | 1649 | mixin-deep@^1.2.0: 1650 | version "1.3.2" 1651 | resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" 1652 | integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== 1653 | dependencies: 1654 | for-in "^1.0.2" 1655 | is-extendable "^1.0.1" 1656 | 1657 | mkdirp@^0.5.1, mkdirp@^0.5.3: 1658 | version "0.5.5" 1659 | resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" 1660 | integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== 1661 | dependencies: 1662 | minimist "^1.2.5" 1663 | 1664 | move-concurrently@^1.0.1: 1665 | version "1.0.1" 1666 | resolved "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" 1667 | integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= 1668 | dependencies: 1669 | aproba "^1.1.1" 1670 | copy-concurrently "^1.0.0" 1671 | fs-write-stream-atomic "^1.0.8" 1672 | mkdirp "^0.5.1" 1673 | rimraf "^2.5.4" 1674 | run-queue "^1.0.3" 1675 | 1676 | ms@2.0.0: 1677 | version "2.0.0" 1678 | resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" 1679 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= 1680 | 1681 | nan@^2.12.1: 1682 | version "2.14.2" 1683 | resolved "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" 1684 | integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== 1685 | 1686 | nanomatch@^1.2.9: 1687 | version "1.2.13" 1688 | resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" 1689 | integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== 1690 | dependencies: 1691 | arr-diff "^4.0.0" 1692 | array-unique "^0.3.2" 1693 | define-property "^2.0.2" 1694 | extend-shallow "^3.0.2" 1695 | fragment-cache "^0.2.1" 1696 | is-windows "^1.0.2" 1697 | kind-of "^6.0.2" 1698 | object.pick "^1.3.0" 1699 | regex-not "^1.0.0" 1700 | snapdragon "^0.8.1" 1701 | to-regex "^3.0.1" 1702 | 1703 | neo-async@^2.5.0, neo-async@^2.6.1: 1704 | version "2.6.2" 1705 | resolved "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" 1706 | integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== 1707 | 1708 | nice-try@^1.0.4: 1709 | version "1.0.5" 1710 | resolved "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" 1711 | integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== 1712 | 1713 | node-libs-browser@^2.2.1: 1714 | version "2.2.1" 1715 | resolved "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz#b64f513d18338625f90346d27b0d235e631f6425" 1716 | integrity sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q== 1717 | dependencies: 1718 | assert "^1.1.1" 1719 | browserify-zlib "^0.2.0" 1720 | buffer "^4.3.0" 1721 | console-browserify "^1.1.0" 1722 | constants-browserify "^1.0.0" 1723 | crypto-browserify "^3.11.0" 1724 | domain-browser "^1.1.1" 1725 | events "^3.0.0" 1726 | https-browserify "^1.0.0" 1727 | os-browserify "^0.3.0" 1728 | path-browserify "0.0.1" 1729 | process "^0.11.10" 1730 | punycode "^1.2.4" 1731 | querystring-es3 "^0.2.0" 1732 | readable-stream "^2.3.3" 1733 | stream-browserify "^2.0.1" 1734 | stream-http "^2.7.2" 1735 | string_decoder "^1.0.0" 1736 | timers-browserify "^2.0.4" 1737 | tty-browserify "0.0.0" 1738 | url "^0.11.0" 1739 | util "^0.11.0" 1740 | vm-browserify "^1.0.1" 1741 | 1742 | normalize-path@^2.1.1: 1743 | version "2.1.1" 1744 | resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" 1745 | integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= 1746 | dependencies: 1747 | remove-trailing-separator "^1.0.1" 1748 | 1749 | normalize-path@^3.0.0, normalize-path@~3.0.0: 1750 | version "3.0.0" 1751 | resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" 1752 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== 1753 | 1754 | object-assign@^4.1.1: 1755 | version "4.1.1" 1756 | resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 1757 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 1758 | 1759 | object-copy@^0.1.0: 1760 | version "0.1.0" 1761 | resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" 1762 | integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= 1763 | dependencies: 1764 | copy-descriptor "^0.1.0" 1765 | define-property "^0.2.5" 1766 | kind-of "^3.0.3" 1767 | 1768 | object-visit@^1.0.0: 1769 | version "1.0.1" 1770 | resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" 1771 | integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= 1772 | dependencies: 1773 | isobject "^3.0.0" 1774 | 1775 | object.pick@^1.3.0: 1776 | version "1.3.0" 1777 | resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" 1778 | integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= 1779 | dependencies: 1780 | isobject "^3.0.1" 1781 | 1782 | once@^1.3.0, once@^1.3.1, once@^1.4.0: 1783 | version "1.4.0" 1784 | resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1785 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 1786 | dependencies: 1787 | wrappy "1" 1788 | 1789 | os-browserify@^0.3.0: 1790 | version "0.3.0" 1791 | resolved "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" 1792 | integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= 1793 | 1794 | p-limit@^2.0.0: 1795 | version "2.3.0" 1796 | resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" 1797 | integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== 1798 | dependencies: 1799 | p-try "^2.0.0" 1800 | 1801 | p-locate@^3.0.0: 1802 | version "3.0.0" 1803 | resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" 1804 | integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== 1805 | dependencies: 1806 | p-limit "^2.0.0" 1807 | 1808 | p-try@^2.0.0: 1809 | version "2.2.0" 1810 | resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" 1811 | integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== 1812 | 1813 | pako@~1.0.5: 1814 | version "1.0.11" 1815 | resolved "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" 1816 | integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw== 1817 | 1818 | parallel-transform@^1.1.0: 1819 | version "1.2.0" 1820 | resolved "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" 1821 | integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== 1822 | dependencies: 1823 | cyclist "^1.0.1" 1824 | inherits "^2.0.3" 1825 | readable-stream "^2.1.5" 1826 | 1827 | parse-asn1@^5.0.0, parse-asn1@^5.1.5: 1828 | version "5.1.6" 1829 | resolved "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz#385080a3ec13cb62a62d39409cb3e88844cdaed4" 1830 | integrity sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw== 1831 | dependencies: 1832 | asn1.js "^5.2.0" 1833 | browserify-aes "^1.0.0" 1834 | evp_bytestokey "^1.0.0" 1835 | pbkdf2 "^3.0.3" 1836 | safe-buffer "^5.1.1" 1837 | 1838 | parse-passwd@^1.0.0: 1839 | version "1.0.0" 1840 | resolved "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" 1841 | integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= 1842 | 1843 | pascalcase@^0.1.1: 1844 | version "0.1.1" 1845 | resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" 1846 | integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= 1847 | 1848 | path-browserify@0.0.1: 1849 | version "0.0.1" 1850 | resolved "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz#e6c4ddd7ed3aa27c68a20cc4e50e1a4ee83bbc4a" 1851 | integrity sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ== 1852 | 1853 | path-dirname@^1.0.0: 1854 | version "1.0.2" 1855 | resolved "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" 1856 | integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= 1857 | 1858 | path-exists@^3.0.0: 1859 | version "3.0.0" 1860 | resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 1861 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 1862 | 1863 | path-is-absolute@^1.0.0: 1864 | version "1.0.1" 1865 | resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1866 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 1867 | 1868 | path-key@^2.0.1: 1869 | version "2.0.1" 1870 | resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" 1871 | integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= 1872 | 1873 | pbkdf2@^3.0.3: 1874 | version "3.1.1" 1875 | resolved "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz#cb8724b0fada984596856d1a6ebafd3584654b94" 1876 | integrity sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg== 1877 | dependencies: 1878 | create-hash "^1.1.2" 1879 | create-hmac "^1.1.4" 1880 | ripemd160 "^2.0.1" 1881 | safe-buffer "^5.0.1" 1882 | sha.js "^2.4.8" 1883 | 1884 | picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: 1885 | version "2.2.2" 1886 | resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" 1887 | integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== 1888 | 1889 | pify@^4.0.1: 1890 | version "4.0.1" 1891 | resolved "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" 1892 | integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== 1893 | 1894 | pkg-dir@^3.0.0: 1895 | version "3.0.0" 1896 | resolved "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" 1897 | integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== 1898 | dependencies: 1899 | find-up "^3.0.0" 1900 | 1901 | posix-character-classes@^0.1.0: 1902 | version "0.1.1" 1903 | resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" 1904 | integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= 1905 | 1906 | process-nextick-args@~2.0.0: 1907 | version "2.0.1" 1908 | resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" 1909 | integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== 1910 | 1911 | process@^0.11.10: 1912 | version "0.11.10" 1913 | resolved "https://registry.npmjs.org/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" 1914 | integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= 1915 | 1916 | promise-inflight@^1.0.1: 1917 | version "1.0.1" 1918 | resolved "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" 1919 | integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= 1920 | 1921 | prr@~1.0.1: 1922 | version "1.0.1" 1923 | resolved "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" 1924 | integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= 1925 | 1926 | public-encrypt@^4.0.0: 1927 | version "4.0.3" 1928 | resolved "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz#4fcc9d77a07e48ba7527e7cbe0de33d0701331e0" 1929 | integrity sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q== 1930 | dependencies: 1931 | bn.js "^4.1.0" 1932 | browserify-rsa "^4.0.0" 1933 | create-hash "^1.1.0" 1934 | parse-asn1 "^5.0.0" 1935 | randombytes "^2.0.1" 1936 | safe-buffer "^5.1.2" 1937 | 1938 | pump@^2.0.0: 1939 | version "2.0.1" 1940 | resolved "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" 1941 | integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== 1942 | dependencies: 1943 | end-of-stream "^1.1.0" 1944 | once "^1.3.1" 1945 | 1946 | pump@^3.0.0: 1947 | version "3.0.0" 1948 | resolved "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" 1949 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 1950 | dependencies: 1951 | end-of-stream "^1.1.0" 1952 | once "^1.3.1" 1953 | 1954 | pumpify@^1.3.3: 1955 | version "1.5.1" 1956 | resolved "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" 1957 | integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== 1958 | dependencies: 1959 | duplexify "^3.6.0" 1960 | inherits "^2.0.3" 1961 | pump "^2.0.0" 1962 | 1963 | punycode@1.3.2: 1964 | version "1.3.2" 1965 | resolved "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" 1966 | integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= 1967 | 1968 | punycode@^1.2.4: 1969 | version "1.4.1" 1970 | resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" 1971 | integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= 1972 | 1973 | punycode@^2.1.0: 1974 | version "2.1.1" 1975 | resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 1976 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 1977 | 1978 | querystring-es3@^0.2.0: 1979 | version "0.2.1" 1980 | resolved "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" 1981 | integrity sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM= 1982 | 1983 | querystring@0.2.0: 1984 | version "0.2.0" 1985 | resolved "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" 1986 | integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= 1987 | 1988 | randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.1.0: 1989 | version "2.1.0" 1990 | resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" 1991 | integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== 1992 | dependencies: 1993 | safe-buffer "^5.1.0" 1994 | 1995 | randomfill@^1.0.3: 1996 | version "1.0.4" 1997 | resolved "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" 1998 | integrity sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw== 1999 | dependencies: 2000 | randombytes "^2.0.5" 2001 | safe-buffer "^5.1.0" 2002 | 2003 | react-reconciler@^0.26.1: 2004 | version "0.26.1" 2005 | resolved "https://registry.npmjs.org/react-reconciler/-/react-reconciler-0.26.1.tgz#860952dd359fd870f94895c254271e3a9de3b2d6" 2006 | integrity sha512-6E/CvH9zcDmHjhiNJlP0qJ8+3ufnY2b5RWs774Uy8XKWN0l6qfnlkz0XnDacxqj2rbJdq76w9dlFXjPPOQrmqA== 2007 | dependencies: 2008 | loose-envify "^1.1.0" 2009 | object-assign "^4.1.1" 2010 | scheduler "^0.20.1" 2011 | 2012 | react@^17.0.1: 2013 | version "17.0.1" 2014 | resolved "https://registry.npmjs.org/react/-/react-17.0.1.tgz#6e0600416bd57574e3f86d92edba3d9008726127" 2015 | integrity sha512-lG9c9UuMHdcAexXtigOZLX8exLWkW0Ku29qPRU8uhF2R9BN96dLCt0psvzPLlHc5OWkgymP3qwTRgbnw5BKx3w== 2016 | dependencies: 2017 | loose-envify "^1.1.0" 2018 | object-assign "^4.1.1" 2019 | 2020 | "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: 2021 | version "2.3.7" 2022 | resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" 2023 | integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== 2024 | dependencies: 2025 | core-util-is "~1.0.0" 2026 | inherits "~2.0.3" 2027 | isarray "~1.0.0" 2028 | process-nextick-args "~2.0.0" 2029 | safe-buffer "~5.1.1" 2030 | string_decoder "~1.1.1" 2031 | util-deprecate "~1.0.1" 2032 | 2033 | readable-stream@^3.6.0: 2034 | version "3.6.0" 2035 | resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" 2036 | integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== 2037 | dependencies: 2038 | inherits "^2.0.3" 2039 | string_decoder "^1.1.1" 2040 | util-deprecate "^1.0.1" 2041 | 2042 | readdirp@^2.2.1: 2043 | version "2.2.1" 2044 | resolved "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" 2045 | integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== 2046 | dependencies: 2047 | graceful-fs "^4.1.11" 2048 | micromatch "^3.1.10" 2049 | readable-stream "^2.0.2" 2050 | 2051 | readdirp@~3.5.0: 2052 | version "3.5.0" 2053 | resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" 2054 | integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== 2055 | dependencies: 2056 | picomatch "^2.2.1" 2057 | 2058 | regex-not@^1.0.0, regex-not@^1.0.2: 2059 | version "1.0.2" 2060 | resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" 2061 | integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== 2062 | dependencies: 2063 | extend-shallow "^3.0.2" 2064 | safe-regex "^1.1.0" 2065 | 2066 | remove-trailing-separator@^1.0.1: 2067 | version "1.1.0" 2068 | resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" 2069 | integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= 2070 | 2071 | repeat-element@^1.1.2: 2072 | version "1.1.3" 2073 | resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz#782e0d825c0c5a3bb39731f84efee6b742e6b1ce" 2074 | integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== 2075 | 2076 | repeat-string@^1.6.1: 2077 | version "1.6.1" 2078 | resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" 2079 | integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= 2080 | 2081 | require-directory@^2.1.1: 2082 | version "2.1.1" 2083 | resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" 2084 | integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= 2085 | 2086 | require-main-filename@^2.0.0: 2087 | version "2.0.0" 2088 | resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" 2089 | integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== 2090 | 2091 | resolve-cwd@^2.0.0: 2092 | version "2.0.0" 2093 | resolved "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" 2094 | integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= 2095 | dependencies: 2096 | resolve-from "^3.0.0" 2097 | 2098 | resolve-dir@^1.0.0, resolve-dir@^1.0.1: 2099 | version "1.0.1" 2100 | resolved "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" 2101 | integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= 2102 | dependencies: 2103 | expand-tilde "^2.0.0" 2104 | global-modules "^1.0.0" 2105 | 2106 | resolve-from@^3.0.0: 2107 | version "3.0.0" 2108 | resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" 2109 | integrity sha1-six699nWiBvItuZTM17rywoYh0g= 2110 | 2111 | resolve-url@^0.2.1: 2112 | version "0.2.1" 2113 | resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" 2114 | integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= 2115 | 2116 | ret@~0.1.10: 2117 | version "0.1.15" 2118 | resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" 2119 | integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== 2120 | 2121 | rimraf@^2.5.4, rimraf@^2.6.3: 2122 | version "2.7.1" 2123 | resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" 2124 | integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== 2125 | dependencies: 2126 | glob "^7.1.3" 2127 | 2128 | rimraf@^3.0.2: 2129 | version "3.0.2" 2130 | resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" 2131 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== 2132 | dependencies: 2133 | glob "^7.1.3" 2134 | 2135 | ripemd160@^2.0.0, ripemd160@^2.0.1: 2136 | version "2.0.2" 2137 | resolved "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz#a1c1a6f624751577ba5d07914cbc92850585890c" 2138 | integrity sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA== 2139 | dependencies: 2140 | hash-base "^3.0.0" 2141 | inherits "^2.0.1" 2142 | 2143 | run-queue@^1.0.0, run-queue@^1.0.3: 2144 | version "1.0.3" 2145 | resolved "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" 2146 | integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= 2147 | dependencies: 2148 | aproba "^1.1.1" 2149 | 2150 | safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0: 2151 | version "5.2.1" 2152 | resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 2153 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 2154 | 2155 | safe-buffer@~5.1.0, safe-buffer@~5.1.1: 2156 | version "5.1.2" 2157 | resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 2158 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 2159 | 2160 | safe-regex@^1.1.0: 2161 | version "1.1.0" 2162 | resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" 2163 | integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= 2164 | dependencies: 2165 | ret "~0.1.10" 2166 | 2167 | safer-buffer@^2.1.0: 2168 | version "2.1.2" 2169 | resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 2170 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 2171 | 2172 | scheduler@^0.20.1: 2173 | version "0.20.1" 2174 | resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.20.1.tgz#da0b907e24026b01181ecbc75efdc7f27b5a000c" 2175 | integrity sha512-LKTe+2xNJBNxu/QhHvDR14wUXHRQbVY5ZOYpOGWRzhydZUqrLb2JBvLPY7cAqFmqrWuDED0Mjk7013SZiOz6Bw== 2176 | dependencies: 2177 | loose-envify "^1.1.0" 2178 | object-assign "^4.1.1" 2179 | 2180 | schema-utils@^1.0.0: 2181 | version "1.0.0" 2182 | resolved "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" 2183 | integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== 2184 | dependencies: 2185 | ajv "^6.1.0" 2186 | ajv-errors "^1.0.0" 2187 | ajv-keywords "^3.1.0" 2188 | 2189 | semver@^5.5.0, semver@^5.6.0: 2190 | version "5.7.1" 2191 | resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 2192 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 2193 | 2194 | semver@^6.0.0: 2195 | version "6.3.0" 2196 | resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 2197 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 2198 | 2199 | serialize-javascript@^4.0.0: 2200 | version "4.0.0" 2201 | resolved "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" 2202 | integrity sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw== 2203 | dependencies: 2204 | randombytes "^2.1.0" 2205 | 2206 | set-blocking@^2.0.0: 2207 | version "2.0.0" 2208 | resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" 2209 | integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= 2210 | 2211 | set-value@^2.0.0, set-value@^2.0.1: 2212 | version "2.0.1" 2213 | resolved "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" 2214 | integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== 2215 | dependencies: 2216 | extend-shallow "^2.0.1" 2217 | is-extendable "^0.1.1" 2218 | is-plain-object "^2.0.3" 2219 | split-string "^3.0.1" 2220 | 2221 | setimmediate@^1.0.4: 2222 | version "1.0.5" 2223 | resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" 2224 | integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= 2225 | 2226 | sha.js@^2.4.0, sha.js@^2.4.8: 2227 | version "2.4.11" 2228 | resolved "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7" 2229 | integrity sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ== 2230 | dependencies: 2231 | inherits "^2.0.1" 2232 | safe-buffer "^5.0.1" 2233 | 2234 | shebang-command@^1.2.0: 2235 | version "1.2.0" 2236 | resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" 2237 | integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= 2238 | dependencies: 2239 | shebang-regex "^1.0.0" 2240 | 2241 | shebang-regex@^1.0.0: 2242 | version "1.0.0" 2243 | resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" 2244 | integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= 2245 | 2246 | snapdragon-node@^2.0.1: 2247 | version "2.1.1" 2248 | resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" 2249 | integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== 2250 | dependencies: 2251 | define-property "^1.0.0" 2252 | isobject "^3.0.0" 2253 | snapdragon-util "^3.0.1" 2254 | 2255 | snapdragon-util@^3.0.1: 2256 | version "3.0.1" 2257 | resolved "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" 2258 | integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== 2259 | dependencies: 2260 | kind-of "^3.2.0" 2261 | 2262 | snapdragon@^0.8.1: 2263 | version "0.8.2" 2264 | resolved "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" 2265 | integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== 2266 | dependencies: 2267 | base "^0.11.1" 2268 | debug "^2.2.0" 2269 | define-property "^0.2.5" 2270 | extend-shallow "^2.0.1" 2271 | map-cache "^0.2.2" 2272 | source-map "^0.5.6" 2273 | source-map-resolve "^0.5.0" 2274 | use "^3.1.0" 2275 | 2276 | source-list-map@^2.0.0: 2277 | version "2.0.1" 2278 | resolved "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" 2279 | integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== 2280 | 2281 | source-map-resolve@^0.5.0: 2282 | version "0.5.3" 2283 | resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" 2284 | integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== 2285 | dependencies: 2286 | atob "^2.1.2" 2287 | decode-uri-component "^0.2.0" 2288 | resolve-url "^0.2.1" 2289 | source-map-url "^0.4.0" 2290 | urix "^0.1.0" 2291 | 2292 | source-map-support@~0.5.12: 2293 | version "0.5.19" 2294 | resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" 2295 | integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== 2296 | dependencies: 2297 | buffer-from "^1.0.0" 2298 | source-map "^0.6.0" 2299 | 2300 | source-map-url@^0.4.0: 2301 | version "0.4.0" 2302 | resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" 2303 | integrity sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM= 2304 | 2305 | source-map@^0.5.6: 2306 | version "0.5.7" 2307 | resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 2308 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 2309 | 2310 | source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: 2311 | version "0.6.1" 2312 | resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 2313 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 2314 | 2315 | split-string@^3.0.1, split-string@^3.0.2: 2316 | version "3.1.0" 2317 | resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" 2318 | integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== 2319 | dependencies: 2320 | extend-shallow "^3.0.0" 2321 | 2322 | ssri@^6.0.1: 2323 | version "6.0.1" 2324 | resolved "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz#2a3c41b28dd45b62b63676ecb74001265ae9edd8" 2325 | integrity sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA== 2326 | dependencies: 2327 | figgy-pudding "^3.5.1" 2328 | 2329 | static-extend@^0.1.1: 2330 | version "0.1.2" 2331 | resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" 2332 | integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= 2333 | dependencies: 2334 | define-property "^0.2.5" 2335 | object-copy "^0.1.0" 2336 | 2337 | stream-browserify@^2.0.1: 2338 | version "2.0.2" 2339 | resolved "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz#87521d38a44aa7ee91ce1cd2a47df0cb49dd660b" 2340 | integrity sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg== 2341 | dependencies: 2342 | inherits "~2.0.1" 2343 | readable-stream "^2.0.2" 2344 | 2345 | stream-each@^1.1.0: 2346 | version "1.2.3" 2347 | resolved "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" 2348 | integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== 2349 | dependencies: 2350 | end-of-stream "^1.1.0" 2351 | stream-shift "^1.0.0" 2352 | 2353 | stream-http@^2.7.2: 2354 | version "2.8.3" 2355 | resolved "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc" 2356 | integrity sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw== 2357 | dependencies: 2358 | builtin-status-codes "^3.0.0" 2359 | inherits "^2.0.1" 2360 | readable-stream "^2.3.6" 2361 | to-arraybuffer "^1.0.0" 2362 | xtend "^4.0.0" 2363 | 2364 | stream-shift@^1.0.0: 2365 | version "1.0.1" 2366 | resolved "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" 2367 | integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== 2368 | 2369 | string-width@^3.0.0, string-width@^3.1.0: 2370 | version "3.1.0" 2371 | resolved "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" 2372 | integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== 2373 | dependencies: 2374 | emoji-regex "^7.0.1" 2375 | is-fullwidth-code-point "^2.0.0" 2376 | strip-ansi "^5.1.0" 2377 | 2378 | string_decoder@^1.0.0, string_decoder@^1.1.1: 2379 | version "1.3.0" 2380 | resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" 2381 | integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== 2382 | dependencies: 2383 | safe-buffer "~5.2.0" 2384 | 2385 | string_decoder@~1.1.1: 2386 | version "1.1.1" 2387 | resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" 2388 | integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== 2389 | dependencies: 2390 | safe-buffer "~5.1.0" 2391 | 2392 | strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: 2393 | version "5.2.0" 2394 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" 2395 | integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== 2396 | dependencies: 2397 | ansi-regex "^4.1.0" 2398 | 2399 | supports-color@^5.3.0: 2400 | version "5.5.0" 2401 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 2402 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 2403 | dependencies: 2404 | has-flag "^3.0.0" 2405 | 2406 | supports-color@^6.1.0: 2407 | version "6.1.0" 2408 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" 2409 | integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== 2410 | dependencies: 2411 | has-flag "^3.0.0" 2412 | 2413 | tapable@^1.0.0, tapable@^1.1.3: 2414 | version "1.1.3" 2415 | resolved "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" 2416 | integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== 2417 | 2418 | terser-webpack-plugin@^1.4.3: 2419 | version "1.4.5" 2420 | resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz#a217aefaea330e734ffacb6120ec1fa312d6040b" 2421 | integrity sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw== 2422 | dependencies: 2423 | cacache "^12.0.2" 2424 | find-cache-dir "^2.1.0" 2425 | is-wsl "^1.1.0" 2426 | schema-utils "^1.0.0" 2427 | serialize-javascript "^4.0.0" 2428 | source-map "^0.6.1" 2429 | terser "^4.1.2" 2430 | webpack-sources "^1.4.0" 2431 | worker-farm "^1.7.0" 2432 | 2433 | terser@^4.1.2: 2434 | version "4.8.0" 2435 | resolved "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" 2436 | integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== 2437 | dependencies: 2438 | commander "^2.20.0" 2439 | source-map "~0.6.1" 2440 | source-map-support "~0.5.12" 2441 | 2442 | through2@^2.0.0: 2443 | version "2.0.5" 2444 | resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" 2445 | integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== 2446 | dependencies: 2447 | readable-stream "~2.3.6" 2448 | xtend "~4.0.1" 2449 | 2450 | timers-browserify@^2.0.4: 2451 | version "2.0.12" 2452 | resolved "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz#44a45c11fbf407f34f97bccd1577c652361b00ee" 2453 | integrity sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ== 2454 | dependencies: 2455 | setimmediate "^1.0.4" 2456 | 2457 | to-arraybuffer@^1.0.0: 2458 | version "1.0.1" 2459 | resolved "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" 2460 | integrity sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M= 2461 | 2462 | to-object-path@^0.3.0: 2463 | version "0.3.0" 2464 | resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" 2465 | integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= 2466 | dependencies: 2467 | kind-of "^3.0.2" 2468 | 2469 | to-regex-range@^2.1.0: 2470 | version "2.1.1" 2471 | resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" 2472 | integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= 2473 | dependencies: 2474 | is-number "^3.0.0" 2475 | repeat-string "^1.6.1" 2476 | 2477 | to-regex-range@^5.0.1: 2478 | version "5.0.1" 2479 | resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" 2480 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== 2481 | dependencies: 2482 | is-number "^7.0.0" 2483 | 2484 | to-regex@^3.0.1, to-regex@^3.0.2: 2485 | version "3.0.2" 2486 | resolved "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" 2487 | integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== 2488 | dependencies: 2489 | define-property "^2.0.2" 2490 | extend-shallow "^3.0.2" 2491 | regex-not "^1.0.2" 2492 | safe-regex "^1.1.0" 2493 | 2494 | ts-loader@^8.0.12: 2495 | version "8.0.12" 2496 | resolved "https://registry.npmjs.org/ts-loader/-/ts-loader-8.0.12.tgz#1de9f1de65176318c1e6d187bfc496182f8dc2a0" 2497 | integrity sha512-UIivVfGVJDdwwjgSrbtcL9Nf10c1BWnL1mxAQUVcnhNIn/P9W3nP5v60Z0aBMtc7ZrE11lMmU6+5jSgAXmGaYw== 2498 | dependencies: 2499 | chalk "^2.3.0" 2500 | enhanced-resolve "^4.0.0" 2501 | loader-utils "^1.0.2" 2502 | micromatch "^4.0.0" 2503 | semver "^6.0.0" 2504 | 2505 | tslib@^1.9.0: 2506 | version "1.14.1" 2507 | resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" 2508 | integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== 2509 | 2510 | tty-browserify@0.0.0: 2511 | version "0.0.0" 2512 | resolved "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" 2513 | integrity sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY= 2514 | 2515 | typedarray@^0.0.6: 2516 | version "0.0.6" 2517 | resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" 2518 | integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= 2519 | 2520 | typescript@^4.1.3: 2521 | version "4.1.3" 2522 | resolved "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz#519d582bd94cba0cf8934c7d8e8467e473f53bb7" 2523 | integrity sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg== 2524 | 2525 | union-value@^1.0.0: 2526 | version "1.0.1" 2527 | resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" 2528 | integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== 2529 | dependencies: 2530 | arr-union "^3.1.0" 2531 | get-value "^2.0.6" 2532 | is-extendable "^0.1.1" 2533 | set-value "^2.0.1" 2534 | 2535 | unique-filename@^1.1.1: 2536 | version "1.1.1" 2537 | resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" 2538 | integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== 2539 | dependencies: 2540 | unique-slug "^2.0.0" 2541 | 2542 | unique-slug@^2.0.0: 2543 | version "2.0.2" 2544 | resolved "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" 2545 | integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== 2546 | dependencies: 2547 | imurmurhash "^0.1.4" 2548 | 2549 | unset-value@^1.0.0: 2550 | version "1.0.0" 2551 | resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" 2552 | integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= 2553 | dependencies: 2554 | has-value "^0.3.1" 2555 | isobject "^3.0.0" 2556 | 2557 | upath@^1.1.1: 2558 | version "1.2.0" 2559 | resolved "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" 2560 | integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== 2561 | 2562 | uri-js@^4.2.2: 2563 | version "4.4.0" 2564 | resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz#aa714261de793e8a82347a7bcc9ce74e86f28602" 2565 | integrity sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g== 2566 | dependencies: 2567 | punycode "^2.1.0" 2568 | 2569 | urix@^0.1.0: 2570 | version "0.1.0" 2571 | resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" 2572 | integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= 2573 | 2574 | url@^0.11.0: 2575 | version "0.11.0" 2576 | resolved "https://registry.npmjs.org/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" 2577 | integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= 2578 | dependencies: 2579 | punycode "1.3.2" 2580 | querystring "0.2.0" 2581 | 2582 | use@^3.1.0: 2583 | version "3.1.1" 2584 | resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" 2585 | integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== 2586 | 2587 | util-deprecate@^1.0.1, util-deprecate@~1.0.1: 2588 | version "1.0.2" 2589 | resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 2590 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 2591 | 2592 | util@0.10.3: 2593 | version "0.10.3" 2594 | resolved "https://registry.npmjs.org/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" 2595 | integrity sha1-evsa/lCAUkZInj23/g7TeTNqwPk= 2596 | dependencies: 2597 | inherits "2.0.1" 2598 | 2599 | util@^0.11.0: 2600 | version "0.11.1" 2601 | resolved "https://registry.npmjs.org/util/-/util-0.11.1.tgz#3236733720ec64bb27f6e26f421aaa2e1b588d61" 2602 | integrity sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ== 2603 | dependencies: 2604 | inherits "2.0.3" 2605 | 2606 | v8-compile-cache@^2.1.1: 2607 | version "2.2.0" 2608 | resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz#9471efa3ef9128d2f7c6a7ca39c4dd6b5055b132" 2609 | integrity sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q== 2610 | 2611 | vm-browserify@^1.0.1: 2612 | version "1.1.2" 2613 | resolved "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz#78641c488b8e6ca91a75f511e7a3b32a86e5dda0" 2614 | integrity sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ== 2615 | 2616 | watchpack-chokidar2@^2.0.1: 2617 | version "2.0.1" 2618 | resolved "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz#38500072ee6ece66f3769936950ea1771be1c957" 2619 | integrity sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww== 2620 | dependencies: 2621 | chokidar "^2.1.8" 2622 | 2623 | watchpack@^1.7.4: 2624 | version "1.7.5" 2625 | resolved "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz#1267e6c55e0b9b5be44c2023aed5437a2c26c453" 2626 | integrity sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ== 2627 | dependencies: 2628 | graceful-fs "^4.1.2" 2629 | neo-async "^2.5.0" 2630 | optionalDependencies: 2631 | chokidar "^3.4.1" 2632 | watchpack-chokidar2 "^2.0.1" 2633 | 2634 | webpack-cli@^3.3.11: 2635 | version "3.3.12" 2636 | resolved "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.12.tgz#94e9ada081453cd0aa609c99e500012fd3ad2d4a" 2637 | integrity sha512-NVWBaz9k839ZH/sinurM+HcDvJOTXwSjYp1ku+5XKeOC03z8v5QitnK/x+lAxGXFyhdayoIf/GOpv85z3/xPag== 2638 | dependencies: 2639 | chalk "^2.4.2" 2640 | cross-spawn "^6.0.5" 2641 | enhanced-resolve "^4.1.1" 2642 | findup-sync "^3.0.0" 2643 | global-modules "^2.0.0" 2644 | import-local "^2.0.0" 2645 | interpret "^1.4.0" 2646 | loader-utils "^1.4.0" 2647 | supports-color "^6.1.0" 2648 | v8-compile-cache "^2.1.1" 2649 | yargs "^13.3.2" 2650 | 2651 | webpack-sources@^1.4.0, webpack-sources@^1.4.1: 2652 | version "1.4.3" 2653 | resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" 2654 | integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== 2655 | dependencies: 2656 | source-list-map "^2.0.0" 2657 | source-map "~0.6.1" 2658 | 2659 | webpack@^4.42.0: 2660 | version "4.44.2" 2661 | resolved "https://registry.npmjs.org/webpack/-/webpack-4.44.2.tgz#6bfe2b0af055c8b2d1e90ed2cd9363f841266b72" 2662 | integrity sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q== 2663 | dependencies: 2664 | "@webassemblyjs/ast" "1.9.0" 2665 | "@webassemblyjs/helper-module-context" "1.9.0" 2666 | "@webassemblyjs/wasm-edit" "1.9.0" 2667 | "@webassemblyjs/wasm-parser" "1.9.0" 2668 | acorn "^6.4.1" 2669 | ajv "^6.10.2" 2670 | ajv-keywords "^3.4.1" 2671 | chrome-trace-event "^1.0.2" 2672 | enhanced-resolve "^4.3.0" 2673 | eslint-scope "^4.0.3" 2674 | json-parse-better-errors "^1.0.2" 2675 | loader-runner "^2.4.0" 2676 | loader-utils "^1.2.3" 2677 | memory-fs "^0.4.1" 2678 | micromatch "^3.1.10" 2679 | mkdirp "^0.5.3" 2680 | neo-async "^2.6.1" 2681 | node-libs-browser "^2.2.1" 2682 | schema-utils "^1.0.0" 2683 | tapable "^1.1.3" 2684 | terser-webpack-plugin "^1.4.3" 2685 | watchpack "^1.7.4" 2686 | webpack-sources "^1.4.1" 2687 | 2688 | which-module@^2.0.0: 2689 | version "2.0.0" 2690 | resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" 2691 | integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= 2692 | 2693 | which@^1.2.14, which@^1.2.9, which@^1.3.1: 2694 | version "1.3.1" 2695 | resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 2696 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 2697 | dependencies: 2698 | isexe "^2.0.0" 2699 | 2700 | worker-farm@^1.7.0: 2701 | version "1.7.0" 2702 | resolved "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" 2703 | integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== 2704 | dependencies: 2705 | errno "~0.1.7" 2706 | 2707 | wrap-ansi@^5.1.0: 2708 | version "5.1.0" 2709 | resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" 2710 | integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== 2711 | dependencies: 2712 | ansi-styles "^3.2.0" 2713 | string-width "^3.0.0" 2714 | strip-ansi "^5.0.0" 2715 | 2716 | wrappy@1: 2717 | version "1.0.2" 2718 | resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 2719 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 2720 | 2721 | xtend@^4.0.0, xtend@~4.0.1: 2722 | version "4.0.2" 2723 | resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" 2724 | integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== 2725 | 2726 | y18n@^4.0.0: 2727 | version "4.0.1" 2728 | resolved "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz#8db2b83c31c5d75099bb890b23f3094891e247d4" 2729 | integrity sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ== 2730 | 2731 | yallist@^3.0.2: 2732 | version "3.1.1" 2733 | resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" 2734 | integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== 2735 | 2736 | yargs-parser@^13.1.2: 2737 | version "13.1.2" 2738 | resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz#130f09702ebaeef2650d54ce6e3e5706f7a4fb38" 2739 | integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== 2740 | dependencies: 2741 | camelcase "^5.0.0" 2742 | decamelize "^1.2.0" 2743 | 2744 | yargs@^13.3.2: 2745 | version "13.3.2" 2746 | resolved "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" 2747 | integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== 2748 | dependencies: 2749 | cliui "^5.0.0" 2750 | find-up "^3.0.0" 2751 | get-caller-file "^2.0.1" 2752 | require-directory "^2.1.1" 2753 | require-main-filename "^2.0.0" 2754 | set-blocking "^2.0.0" 2755 | string-width "^3.0.0" 2756 | which-module "^2.0.0" 2757 | y18n "^4.0.0" 2758 | yargs-parser "^13.1.2" 2759 | --------------------------------------------------------------------------------