├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── dist ├── index.d.ts ├── index.js ├── index.js.map ├── index.m.js ├── index.m.js.map ├── index.modern.js ├── index.modern.js.map ├── index.umd.js └── index.umd.js.map ├── example ├── index.html └── index.ts ├── package.json ├── screenshot.gif ├── src └── index.ts ├── tsconfig.json └── yarn.lock /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .cache 3 | example/dist -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | !dist/** 3 | !package.json 4 | !yarn.lock -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Sam McCord 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Perge 2 | 3 | Perge is a minimal p2p synchronization system for [Automerge](https://github.com/automerge/automerge) documents using [PeerJS](https://github.com/peers/peerjs). 4 | 5 | ![](screenshot.gif) 6 | 7 | - [Perge](#perge) 8 | - [Installation](#installation) 9 | - [Quick Start](#quick-start) 10 | - [API](#api) 11 | - [`Perge`](#perge-1) 12 | - [`constructor (actorId: string, config: PergeConfig = {})`](#constructor-actorid-string-config-pergeconfig--) 13 | - [`readonly docSet: Automerge.DocSet;`](#readonly-docset-automergedocsetany) 14 | - [`readonly peer: Peer`](#readonly-peer-peer) 15 | - [`connect(id: string, conn?: Peer.DataConnection, options?: Peer.PeerConnectOption): Peer.DataConnection`](#connectid-string-conn-peerdataconnection-options-peerpeerconnectoption-peerdataconnection) 16 | - [`get(id: string): Doc`](#gettid-string-doct) 17 | - [`select(id: string): (fn: Function, ...args: any[]) => Automerge.Doc`](#selecttid-string-fn-function-args-any--automergedoct) 18 | - [`subscribe(idOrSetHandler: string | Automerge.DocSetHandler, callback?: Automerge.ChangeFn): () => void`](#subscribetidorsethandler-string--automergedocsethandlert-callback-automergechangefnt---void) 19 | 20 | ## Installation 21 | 22 | `Perge` has the following dependencies: 23 | ```json 24 | { 25 | "automerge": "^0.14.1", 26 | "peerjs": "^1.2.0" 27 | } 28 | ``` 29 | 30 | Install `Perge` via npm: 31 | ```sh 32 | npm install perge 33 | ``` 34 | or via yarn: 35 | ```sh 36 | yarn add perge 37 | ``` 38 | 39 | ## Quick Start 40 | 41 | For a more complete example, see [the example page](./example/index.html). 42 | 43 | You can run the example with `yarn dev:example` which uses [Parcel](https://parceljs.org/getting_started.html) 44 | 45 | ```js 46 | import { change } from 'automerge' 47 | import Perge from 'perge' 48 | 49 | // instantiate library 50 | const perge = new Perge('my-unique-id') 51 | 52 | // connect to a peer 53 | perge.connect('someone-elses-unique-id') 54 | 55 | // subscribe to all docset changes 56 | perge.subscribe((docId, doc) => { 57 | // logs 'some-document-id', { message: 'Hey!' } 58 | console.log(docId, doc) 59 | }) 60 | 61 | // subscribe to a single doc's changes 62 | const unsubscribe = perge.subscribe('some-document-id', doc => { 63 | // { message: 'Hey!' } 64 | console.log(doc) 65 | // unsubscribe this callback 66 | unsubscribe() 67 | }) 68 | 69 | // select and change documents 70 | perge.select('some-document-id')( 71 | change, 72 | doc => { 73 | doc.message = 'Hey!' 74 | } 75 | ) 76 | 77 | ``` 78 | 79 | ## API 80 | 81 | ### `Perge` 82 | 83 | `Perge` is a class containing references to `Automerge.Connections`, and encodes and decodes passed messages using `PeerJS` and the `Automerge.Connection` protocol. 84 | 85 | #### `constructor (actorId: string, config: PergeConfig = {})` 86 | 87 | | `actorId` | `string` | Required. A unique ID used to initialize the PeerJS connection. Automerge should also be initialized with with this value. 88 | 89 | You can further configure `Perge` with the following config shape. All properties are optional. 90 | 91 | | Key | Type | Description | 92 | | -------- | ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | 93 | | `decode` | `(msg: string) => any` | A function called on a WebRTC string message before it is passed to an `Automerge.Connection` with `receiveMsg`, defaults to `JSON.parse` | 94 | | `encode` | `(msg: any) => string` | A function called on `Automerge.DocSet` change objects before it is sent to a peer, defaults to `JSON.stringify` | 95 | | `peer` | `PeerJS.Peer` | A preconfigured `PeerJS.Peer` instance. | 96 | | `docSet` | `Automerge.DocSet` | An instantiated `Automerge.DocSet` to sync between clients. | 97 | 98 | 99 | #### `readonly docSet: Automerge.DocSet;` 100 | 101 | A reference to the synchronized `Automerge.DocSet`, handy to subscribe to state changes with if you don't want to use `Perge.subscribe`: 102 | 103 | ```js 104 | docSet.registerHandler((docId, doc) => { 105 | // REACT TO STATE UPDATES 106 | }) 107 | ``` 108 | 109 | #### `readonly peer: Peer` 110 | 111 | A reference to the underlying PeerJS instance, useful for registering lifecycle handlers. 112 | 113 | ```js 114 | perge.peer.on('error', (err) => { 115 | // handle 116 | }) 117 | ``` 118 | 119 | #### `connect(id: string, conn?: Peer.DataConnection, options?: Peer.PeerConnectOption): Peer.DataConnection` 120 | 121 | Connects to a `PeerJS` peer with the given ID and sends outgoing `Automerge.DocSet` syncronization messages using the `Automerge.Connection` protocol. 122 | 123 | Returns the DataConnection so you can register your own lifecycle callbacks. 124 | 125 | Optionally, you can pass an existing `PeerJS` connection. 126 | 127 | If you don't pass an existing `PeerJS` connection, it will connect using the given options, if any. 128 | 129 | #### `get(id: string): Doc` 130 | 131 | Gets an existing doc with given ID, or initializes a new doc with the client's actor ID. 132 | 133 | #### `select(id: string): (fn: Function, ...args: any[]) => Automerge.Doc` 134 | 135 | - [Updating Automerge Documents](https://github.com/automerge/automerge#updating-a-document) 136 | 137 | Returns a function that applies a given `Automerge` document change method, then sets the returned document on the internal `DocSet` to broadcast changes to connected peers, for example: 138 | 139 | ```js 140 | // Selects the document with the ID 'foo' 141 | const exec = perge.select('foo') 142 | 143 | // Apply and broadcast changes on 'foo' 144 | const newDoc = exec( 145 | Automerge.change, // apply changes 146 | 'increase counter', // commit message 147 | doc => { // mutate proxy document and apply changes 148 | if(!doc.counter) doc.counter = new Automerge.Counter() 149 | else doc.counter.increment() 150 | } 151 | ) 152 | 153 | // which is roughly the same as: 154 | const oldDoc = docSet.getDoc('foo') || Automerge.init(actorId) 155 | const newDoc = Automerge.change(oldDoc, 'increase counter', doc => { 156 | if(!doc.counter) doc.counter = new Automerge.Counter() 157 | else doc.counter.increment() 158 | }) 159 | perge.set.setDoc(id, newDoc) 160 | ``` 161 | 162 | #### `subscribe(idOrSetHandler: string | Automerge.DocSetHandler, callback?: Automerge.ChangeFn): () => void` 163 | 164 | Subscribe to doc updates for either the entire docSet or a specific document ID. Returns a function that, when called, unsubscribes. 165 | 166 | ```js 167 | 168 | const unsubscribeFromAll = instance.subscribe((id, doc) => { 169 | // do something with the updated doc 170 | }) 171 | 172 | // subscribe returns an unsubscribe function 173 | const unsubscribeFromFoo = instance.subscribe('foo', (doc) => { 174 | console.log('foo', doc) 175 | if (doc.counter.value === 10) { 176 | unsubscribeFromFoo() 177 | console.log('unsubscribed from foo!') 178 | } 179 | }) 180 | ``` -------------------------------------------------------------------------------- /dist/index.d.ts: -------------------------------------------------------------------------------- 1 | import Peer from "peerjs"; 2 | import { DocSet, Doc, ChangeFn, DocSetHandler, change, undo, redo } from "automerge"; 3 | declare type AutomergeUpdateMethod = typeof change | typeof undo | typeof redo; 4 | export interface PergeConfig { 5 | decode?: (msg: string) => any; 6 | encode?: (msg: any) => string; 7 | peer?: Peer; 8 | docSet?: DocSet; 9 | } 10 | export default class Perge { 11 | readonly peer: Peer; 12 | readonly docSet: DocSet; 13 | private _connections; 14 | private _actorId; 15 | private _encode; 16 | private _decode; 17 | constructor(actorId: string, config?: PergeConfig); 18 | connect(id: string, conn?: Peer.DataConnection, options?: Peer.PeerConnectOption): Peer.DataConnection; 19 | get(id: string): Doc; 20 | select(id: string): (changeMethod: AutomergeUpdateMethod, ...args: any[]) => Doc; 21 | subscribe(idOrSetHandler: string | DocSetHandler, callback?: ChangeFn): () => void; 22 | } 23 | export {}; 24 | -------------------------------------------------------------------------------- /dist/index.js: -------------------------------------------------------------------------------- 1 | var e,n=(e=require("peerjs"))&&"object"==typeof e&&"default"in e?e.default:e,t=require("automerge");module.exports=function(){function e(e,o){var r=this;void 0===o&&(o={}),this._connections={},this._actorId=e,this.peer=o.peer||new n(this._actorId),this.docSet=o.docSet||new t.DocSet,this._encode=o.encode||JSON.stringify,this._decode=o.decode||JSON.parse,this.peer.on("connection",function(e){r._connections[e.peer]||r.connect(e.peer,e)})}var o=e.prototype;return o.connect=function(e,n,o){var r=this;if(this._connections[e])return this.peer.connections[e];var c=n||this.peer.connect(e,o),i=this._connections[e]=new t.Connection(this.docSet,function(e){c.send(r._encode(e))}),s=function(e){return i.receiveMsg(r._decode(e))},u=function(){c.off("data",s),r._connections[e]&&(delete r._connections[e],i.close())};return c.on("data",s),c.on("close",u),c.on("error",u),i.open(),c},o.get=function(e){return this.docSet.getDoc(e)||t.init(this._actorId)},o.select=function(e){var n=this;return function(t){var o=t.apply(void 0,[n.get(e)].concat([].slice.call(arguments,1)));return n.docSet.setDoc(e,o),o}},o.subscribe=function(e,n){var t=this;if("function"==typeof e)return this.docSet.registerHandler(e),function(){return t.docSet.unregisterHandler(e)};if("string"==typeof e&&n){var o=function(t,o){t===e&&n(o)};return this.docSet.registerHandler(o),function(){return t.docSet.unregisterHandler(o)}}return function(){}},e}(); 2 | //# sourceMappingURL=index.js.map 3 | -------------------------------------------------------------------------------- /dist/index.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import Peer from \"peerjs\";\nimport {\n init,\n Connection,\n DocSet,\n Doc,\n ChangeFn,\n DocSetHandler,\n change,\n undo,\n redo,\n} from \"automerge\";\n\ntype AutomergeUpdateMethod = typeof change | typeof undo | typeof redo;\n\nexport interface PergeConfig {\n decode?: (msg: string) => any;\n encode?: (msg: any) => string;\n peer?: Peer;\n docSet?: DocSet;\n}\n\nexport default class Perge {\n readonly peer: Peer;\n readonly docSet: DocSet;\n\n private _connections: { [id: string]: Connection } = {};\n private _actorId: string;\n private _encode: (msg: any) => string;\n private _decode: (msg: string) => any;\n\n constructor(actorId: string, config: PergeConfig = {}) {\n this._actorId = actorId;\n this.peer = config.peer || new Peer(this._actorId);\n this.docSet = config.docSet || new DocSet();\n this._encode = config.encode || JSON.stringify;\n this._decode = config.decode || JSON.parse;\n this.peer.on(\"connection\", (conn) => {\n if (!this._connections[conn.peer]) this.connect(conn.peer, conn);\n });\n }\n\n public connect(\n id: string,\n conn?: Peer.DataConnection,\n options?: Peer.PeerConnectOption\n ): Peer.DataConnection {\n if (this._connections[id]) return this.peer.connections[id];\n const peer = conn || this.peer.connect(id, options);\n const connection = (this._connections[id] = new Connection(\n this.docSet,\n (msg) => {\n peer.send(this._encode(msg));\n }\n ));\n const handleMsg = (msg: any) => connection.receiveMsg(this._decode(msg));\n const cleanup = () => {\n peer.off(\"data\", handleMsg);\n if (this._connections[id]) {\n delete this._connections[id];\n connection.close();\n }\n };\n peer.on(\"data\", handleMsg);\n peer.on(\"close\", cleanup);\n peer.on(\"error\", cleanup);\n connection.open();\n return peer;\n }\n\n public get(id: string): Doc {\n return this.docSet.getDoc(id) || init(this._actorId);\n }\n\n public select(\n id: string\n ): (changeMethod: AutomergeUpdateMethod, ...args: any[]) => Doc {\n return (changeMethod: Function, ...args: any[]): Doc => {\n const newDoc = changeMethod(this.get(id), ...args);\n this.docSet.setDoc(id, newDoc);\n return newDoc;\n };\n }\n\n public subscribe(\n idOrSetHandler: string | DocSetHandler,\n callback?: ChangeFn\n ): () => void {\n if (typeof idOrSetHandler === \"function\") {\n this.docSet.registerHandler(idOrSetHandler);\n return () => this.docSet.unregisterHandler(idOrSetHandler);\n }\n if (typeof idOrSetHandler === \"string\" && !!callback) {\n const handler = (docId: string, doc: T) => {\n if (docId === idOrSetHandler) callback(doc);\n };\n this.docSet.registerHandler(handler);\n return () => this.docSet.unregisterHandler(handler);\n }\n return () => {};\n }\n}\n"],"names":["actorId","config","this","_actorId","peer","Peer","docSet","DocSet","_encode","encode","JSON","stringify","_decode","decode","parse","on","conn","_this2","_connections","connect","id","options","connections","connection","Connection","msg","send","_this3","handleMsg","receiveMsg","cleanup","off","close","open","get","getDoc","init","select","changeMethod","newDoc","_this","setDoc","subscribe","idOrSetHandler","callback","registerHandler","_this4","unregisterHandler","handler","docId","doc"],"mappings":"8HA+BE,WAAYA,EAAiBC,uBAAAA,IAAAA,EAAsB,IAL3CC,kBAAkD,GAMxDA,KAAKC,SAAWH,EAChBE,KAAKE,KAAOH,EAAOG,MAAQ,IAAIC,EAAKH,KAAKC,UACzCD,KAAKI,OAASL,EAAOK,QAAU,IAAIC,SACnCL,KAAKM,QAAUP,EAAOQ,QAAUC,KAAKC,UACrCT,KAAKU,QAAUX,EAAOY,QAAUH,KAAKI,MACrCZ,KAAKE,KAAKW,GAAG,aAAc,SAACC,GACrBC,EAAKC,aAAaF,EAAKZ,OAAOa,EAAKE,QAAQH,EAAKZ,KAAMY,gCAIxDG,QAAA,SACLC,EACAJ,EACAK,cAEA,GAAInB,KAAKgB,aAAaE,GAAK,YAAYhB,KAAKkB,YAAYF,GACxD,IAAMhB,EAAOY,GAAQd,KAAKE,KAAKe,QAAQC,EAAIC,GACrCE,EAAcrB,KAAKgB,aAAaE,GAAM,IAAII,aAC9CtB,KAAKI,OACL,SAACmB,GACCrB,EAAKsB,KAAKC,EAAKnB,QAAQiB,MAGrBG,EAAY,SAACH,UAAaF,EAAWM,WAAWF,EAAKf,QAAQa,KAC7DK,EAAU,WACd1B,EAAK2B,IAAI,OAAQH,GACbD,EAAKT,aAAaE,YACbO,EAAKT,aAAaE,GACzBG,EAAWS,UAOf,OAJA5B,EAAKW,GAAG,OAAQa,GAChBxB,EAAKW,GAAG,QAASe,GACjB1B,EAAKW,GAAG,QAASe,GACjBP,EAAWU,OACJ7B,KAGF8B,IAAA,SAAOd,GACZ,YAAYd,OAAO6B,OAAOf,IAAOgB,OAAKlC,KAAKC,aAGtCkC,OAAA,SACLjB,cAEA,gBAAQkB,GACN,IAAMC,EAASD,gBAAaE,EAAKN,IAAId,wCAErC,OADAoB,EAAKlC,OAAOmC,OAAOrB,EAAImB,GAChBA,MAIJG,UAAA,SACLC,EACAC,cAEA,GAA8B,mBAAnBD,EAET,OADAzC,KAAKI,OAAOuC,gBAAgBF,qBACfG,EAAKxC,OAAOyC,kBAAkBJ,IAE7C,GAA8B,iBAAnBA,GAAiCC,EAAU,CACpD,IAAMI,EAAU,SAACC,EAAeC,GAC1BD,IAAUN,GAAgBC,EAASM,IAGzC,OADAhD,KAAKI,OAAOuC,gBAAgBG,qBACfF,EAAKxC,OAAOyC,kBAAkBC,IAE7C"} -------------------------------------------------------------------------------- /dist/index.m.js: -------------------------------------------------------------------------------- 1 | import e from"peerjs";import{Connection as t,init as n,DocSet as o}from"automerge";var r=function(){function r(t,n){var r=this;void 0===n&&(n={}),this._connections={},this._actorId=t,this.peer=n.peer||new e(this._actorId),this.docSet=n.docSet||new o,this._encode=n.encode||JSON.stringify,this._decode=n.decode||JSON.parse,this.peer.on("connection",function(e){r._connections[e.peer]||r.connect(e.peer,e)})}var c=r.prototype;return c.connect=function(e,n,o){var r=this;if(this._connections[e])return this.peer.connections[e];var c=n||this.peer.connect(e,o),i=this._connections[e]=new t(this.docSet,function(e){c.send(r._encode(e))}),s=function(e){return i.receiveMsg(r._decode(e))},u=function(){c.off("data",s),r._connections[e]&&(delete r._connections[e],i.close())};return c.on("data",s),c.on("close",u),c.on("error",u),i.open(),c},c.get=function(e){return this.docSet.getDoc(e)||n(this._actorId)},c.select=function(e){var t=this;return function(n){var o=n.apply(void 0,[t.get(e)].concat([].slice.call(arguments,1)));return t.docSet.setDoc(e,o),o}},c.subscribe=function(e,t){var n=this;if("function"==typeof e)return this.docSet.registerHandler(e),function(){return n.docSet.unregisterHandler(e)};if("string"==typeof e&&t){var o=function(n,o){n===e&&t(o)};return this.docSet.registerHandler(o),function(){return n.docSet.unregisterHandler(o)}}return function(){}},r}();export default r; 2 | //# sourceMappingURL=index.m.js.map 3 | -------------------------------------------------------------------------------- /dist/index.m.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"index.m.js","sources":["../src/index.ts"],"sourcesContent":["import Peer from \"peerjs\";\nimport {\n init,\n Connection,\n DocSet,\n Doc,\n ChangeFn,\n DocSetHandler,\n change,\n undo,\n redo,\n} from \"automerge\";\n\ntype AutomergeUpdateMethod = typeof change | typeof undo | typeof redo;\n\nexport interface PergeConfig {\n decode?: (msg: string) => any;\n encode?: (msg: any) => string;\n peer?: Peer;\n docSet?: DocSet;\n}\n\nexport default class Perge {\n readonly peer: Peer;\n readonly docSet: DocSet;\n\n private _connections: { [id: string]: Connection } = {};\n private _actorId: string;\n private _encode: (msg: any) => string;\n private _decode: (msg: string) => any;\n\n constructor(actorId: string, config: PergeConfig = {}) {\n this._actorId = actorId;\n this.peer = config.peer || new Peer(this._actorId);\n this.docSet = config.docSet || new DocSet();\n this._encode = config.encode || JSON.stringify;\n this._decode = config.decode || JSON.parse;\n this.peer.on(\"connection\", (conn) => {\n if (!this._connections[conn.peer]) this.connect(conn.peer, conn);\n });\n }\n\n public connect(\n id: string,\n conn?: Peer.DataConnection,\n options?: Peer.PeerConnectOption\n ): Peer.DataConnection {\n if (this._connections[id]) return this.peer.connections[id];\n const peer = conn || this.peer.connect(id, options);\n const connection = (this._connections[id] = new Connection(\n this.docSet,\n (msg) => {\n peer.send(this._encode(msg));\n }\n ));\n const handleMsg = (msg: any) => connection.receiveMsg(this._decode(msg));\n const cleanup = () => {\n peer.off(\"data\", handleMsg);\n if (this._connections[id]) {\n delete this._connections[id];\n connection.close();\n }\n };\n peer.on(\"data\", handleMsg);\n peer.on(\"close\", cleanup);\n peer.on(\"error\", cleanup);\n connection.open();\n return peer;\n }\n\n public get(id: string): Doc {\n return this.docSet.getDoc(id) || init(this._actorId);\n }\n\n public select(\n id: string\n ): (changeMethod: AutomergeUpdateMethod, ...args: any[]) => Doc {\n return (changeMethod: Function, ...args: any[]): Doc => {\n const newDoc = changeMethod(this.get(id), ...args);\n this.docSet.setDoc(id, newDoc);\n return newDoc;\n };\n }\n\n public subscribe(\n idOrSetHandler: string | DocSetHandler,\n callback?: ChangeFn\n ): () => void {\n if (typeof idOrSetHandler === \"function\") {\n this.docSet.registerHandler(idOrSetHandler);\n return () => this.docSet.unregisterHandler(idOrSetHandler);\n }\n if (typeof idOrSetHandler === \"string\" && !!callback) {\n const handler = (docId: string, doc: T) => {\n if (docId === idOrSetHandler) callback(doc);\n };\n this.docSet.registerHandler(handler);\n return () => this.docSet.unregisterHandler(handler);\n }\n return () => {};\n }\n}\n"],"names":["Perge","actorId","config","this","_actorId","peer","Peer","docSet","DocSet","_encode","encode","JSON","stringify","_decode","decode","parse","on","conn","_this2","_connections","connect","id","options","connections","connection","Connection","msg","send","_this3","handleMsg","receiveMsg","cleanup","off","close","open","get","getDoc","init","select","changeMethod","newDoc","_this","setDoc","subscribe","idOrSetHandler","callback","registerHandler","_this4","unregisterHandler","handler","docId","doc"],"mappings":"mFAsBqBA,IAAAA,aASnB,WAAYC,EAAiBC,uBAAAA,IAAAA,EAAsB,IAL3CC,kBAAkD,GAMxDA,KAAKC,SAAWH,EAChBE,KAAKE,KAAOH,EAAOG,MAAQ,IAAIC,EAAKH,KAAKC,UACzCD,KAAKI,OAASL,EAAOK,QAAU,IAAIC,EACnCL,KAAKM,QAAUP,EAAOQ,QAAUC,KAAKC,UACrCT,KAAKU,QAAUX,EAAOY,QAAUH,KAAKI,MACrCZ,KAAKE,KAAKW,GAAG,aAAc,SAACC,GACrBC,EAAKC,aAAaF,EAAKZ,OAAOa,EAAKE,QAAQH,EAAKZ,KAAMY,gCAIxDG,QAAA,SACLC,EACAJ,EACAK,cAEA,GAAInB,KAAKgB,aAAaE,GAAK,YAAYhB,KAAKkB,YAAYF,GACxD,IAAMhB,EAAOY,GAAQd,KAAKE,KAAKe,QAAQC,EAAIC,GACrCE,EAAcrB,KAAKgB,aAAaE,GAAM,IAAII,EAC9CtB,KAAKI,OACL,SAACmB,GACCrB,EAAKsB,KAAKC,EAAKnB,QAAQiB,MAGrBG,EAAY,SAACH,UAAaF,EAAWM,WAAWF,EAAKf,QAAQa,KAC7DK,EAAU,WACd1B,EAAK2B,IAAI,OAAQH,GACbD,EAAKT,aAAaE,YACbO,EAAKT,aAAaE,GACzBG,EAAWS,UAOf,OAJA5B,EAAKW,GAAG,OAAQa,GAChBxB,EAAKW,GAAG,QAASe,GACjB1B,EAAKW,GAAG,QAASe,GACjBP,EAAWU,OACJ7B,KAGF8B,IAAA,SAAOd,GACZ,YAAYd,OAAO6B,OAAOf,IAAOgB,EAAKlC,KAAKC,aAGtCkC,OAAA,SACLjB,cAEA,gBAAQkB,GACN,IAAMC,EAASD,gBAAaE,EAAKN,IAAId,wCAErC,OADAoB,EAAKlC,OAAOmC,OAAOrB,EAAImB,GAChBA,MAIJG,UAAA,SACLC,EACAC,cAEA,GAA8B,mBAAnBD,EAET,OADAzC,KAAKI,OAAOuC,gBAAgBF,qBACfG,EAAKxC,OAAOyC,kBAAkBJ,IAE7C,GAA8B,iBAAnBA,GAAiCC,EAAU,CACpD,IAAMI,EAAU,SAACC,EAAeC,GAC1BD,IAAUN,GAAgBC,EAASM,IAGzC,OADAhD,KAAKI,OAAOuC,gBAAgBG,qBACfF,EAAKxC,OAAOyC,kBAAkBC,IAE7C"} -------------------------------------------------------------------------------- /dist/index.modern.js: -------------------------------------------------------------------------------- 1 | import e from"peerjs";import{DocSet as t,Connection as n,init as o}from"automerge";export default class{constructor(n,o={}){this._connections={},this._actorId=n,this.peer=o.peer||new e(this._actorId),this.docSet=o.docSet||new t,this._encode=o.encode||JSON.stringify,this._decode=o.decode||JSON.parse,this.peer.on("connection",e=>{this._connections[e.peer]||this.connect(e.peer,e)})}connect(e,t,o){if(this._connections[e])return this.peer.connections[e];const s=t||this.peer.connect(e,o),r=this._connections[e]=new n(this.docSet,e=>{s.send(this._encode(e))}),c=e=>r.receiveMsg(this._decode(e)),i=()=>{s.off("data",c),this._connections[e]&&(delete this._connections[e],r.close())};return s.on("data",c),s.on("close",i),s.on("error",i),r.open(),s}get(e){return this.docSet.getDoc(e)||o(this._actorId)}select(e){return(t,...n)=>{const o=t(this.get(e),...n);return this.docSet.setDoc(e,o),o}}subscribe(e,t){if("function"==typeof e)return this.docSet.registerHandler(e),()=>this.docSet.unregisterHandler(e);if("string"==typeof e&&t){const n=(n,o)=>{n===e&&t(o)};return this.docSet.registerHandler(n),()=>this.docSet.unregisterHandler(n)}return()=>{}}} 2 | //# sourceMappingURL=index.modern.js.map 3 | -------------------------------------------------------------------------------- /dist/index.modern.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"index.modern.js","sources":["../src/index.ts"],"sourcesContent":["import Peer from \"peerjs\";\nimport {\n init,\n Connection,\n DocSet,\n Doc,\n ChangeFn,\n DocSetHandler,\n change,\n undo,\n redo,\n} from \"automerge\";\n\ntype AutomergeUpdateMethod = typeof change | typeof undo | typeof redo;\n\nexport interface PergeConfig {\n decode?: (msg: string) => any;\n encode?: (msg: any) => string;\n peer?: Peer;\n docSet?: DocSet;\n}\n\nexport default class Perge {\n readonly peer: Peer;\n readonly docSet: DocSet;\n\n private _connections: { [id: string]: Connection } = {};\n private _actorId: string;\n private _encode: (msg: any) => string;\n private _decode: (msg: string) => any;\n\n constructor(actorId: string, config: PergeConfig = {}) {\n this._actorId = actorId;\n this.peer = config.peer || new Peer(this._actorId);\n this.docSet = config.docSet || new DocSet();\n this._encode = config.encode || JSON.stringify;\n this._decode = config.decode || JSON.parse;\n this.peer.on(\"connection\", (conn) => {\n if (!this._connections[conn.peer]) this.connect(conn.peer, conn);\n });\n }\n\n public connect(\n id: string,\n conn?: Peer.DataConnection,\n options?: Peer.PeerConnectOption\n ): Peer.DataConnection {\n if (this._connections[id]) return this.peer.connections[id];\n const peer = conn || this.peer.connect(id, options);\n const connection = (this._connections[id] = new Connection(\n this.docSet,\n (msg) => {\n peer.send(this._encode(msg));\n }\n ));\n const handleMsg = (msg: any) => connection.receiveMsg(this._decode(msg));\n const cleanup = () => {\n peer.off(\"data\", handleMsg);\n if (this._connections[id]) {\n delete this._connections[id];\n connection.close();\n }\n };\n peer.on(\"data\", handleMsg);\n peer.on(\"close\", cleanup);\n peer.on(\"error\", cleanup);\n connection.open();\n return peer;\n }\n\n public get(id: string): Doc {\n return this.docSet.getDoc(id) || init(this._actorId);\n }\n\n public select(\n id: string\n ): (changeMethod: AutomergeUpdateMethod, ...args: any[]) => Doc {\n return (changeMethod: Function, ...args: any[]): Doc => {\n const newDoc = changeMethod(this.get(id), ...args);\n this.docSet.setDoc(id, newDoc);\n return newDoc;\n };\n }\n\n public subscribe(\n idOrSetHandler: string | DocSetHandler,\n callback?: ChangeFn\n ): () => void {\n if (typeof idOrSetHandler === \"function\") {\n this.docSet.registerHandler(idOrSetHandler);\n return () => this.docSet.unregisterHandler(idOrSetHandler);\n }\n if (typeof idOrSetHandler === \"string\" && !!callback) {\n const handler = (docId: string, doc: T) => {\n if (docId === idOrSetHandler) callback(doc);\n };\n this.docSet.registerHandler(handler);\n return () => this.docSet.unregisterHandler(handler);\n }\n return () => {};\n }\n}\n"],"names":["constructor","actorId","config","this","_actorId","peer","Peer","docSet","DocSet","_encode","encode","JSON","stringify","_decode","decode","parse","on","conn","_connections","connect","id","options","connections","connection","Connection","msg","send","handleMsg","receiveMsg","cleanup","off","close","open","get","getDoc","init","select","changeMethod","args","newDoc","setDoc","subscribe","idOrSetHandler","callback","registerHandler","unregisterHandler","handler","docId","doc"],"mappings":"wGA+BEA,YAAYC,EAAiBC,EAAsB,IAL3CC,kBAAkD,GAMxDA,KAAKC,SAAWH,EAChBE,KAAKE,KAAOH,EAAOG,MAAQ,IAAIC,EAAKH,KAAKC,UACzCD,KAAKI,OAASL,EAAOK,QAAU,IAAIC,EACnCL,KAAKM,QAAUP,EAAOQ,QAAUC,KAAKC,UACrCT,KAAKU,QAAUX,EAAOY,QAAUH,KAAKI,MACrCZ,KAAKE,KAAKW,GAAG,aAAeC,IACrBd,KAAKe,aAAaD,EAAKZ,OAAOF,KAAKgB,QAAQF,EAAKZ,KAAMY,KAIxDE,QACLC,EACAH,EACAI,GAEA,GAAIlB,KAAKe,aAAaE,GAAK,YAAYf,KAAKiB,YAAYF,GACxD,MAAMf,EAAOY,GAAQd,KAAKE,KAAKc,QAAQC,EAAIC,GACrCE,EAAcpB,KAAKe,aAAaE,GAAM,IAAII,EAC9CrB,KAAKI,OACJkB,IACCpB,EAAKqB,KAAKvB,KAAKM,QAAQgB,MAGrBE,EAAaF,GAAaF,EAAWK,WAAWzB,KAAKU,QAAQY,IAC7DI,EAAU,KACdxB,EAAKyB,IAAI,OAAQH,GACbxB,KAAKe,aAAaE,iBACRF,aAAaE,GACzBG,EAAWQ,UAOf,OAJA1B,EAAKW,GAAG,OAAQW,GAChBtB,EAAKW,GAAG,QAASa,GACjBxB,EAAKW,GAAG,QAASa,GACjBN,EAAWS,OACJ3B,EAGF4B,IAAOb,GACZ,YAAYb,OAAO2B,OAAOd,IAAOe,EAAKhC,KAAKC,UAGtCgC,OACLhB,GAEA,MAAO,CAACiB,KAA2BC,KACjC,MAAMC,EAASF,EAAalC,KAAK8B,IAAIb,MAAQkB,GAE7C,OADAnC,KAAKI,OAAOiC,OAAOpB,EAAImB,GAChBA,GAIJE,UACLC,EACAC,GAEA,GAA8B,mBAAnBD,EAET,OADAvC,KAAKI,OAAOqC,gBAAgBF,GACrB,IAAMvC,KAAKI,OAAOsC,kBAAkBH,GAE7C,GAA8B,iBAAnBA,GAAiCC,EAAU,CACpD,MAAMG,EAAU,CAACC,EAAeC,KAC1BD,IAAUL,GAAgBC,EAASK,IAGzC,OADA7C,KAAKI,OAAOqC,gBAAgBE,GACrB,IAAM3C,KAAKI,OAAOsC,kBAAkBC,GAE7C,MAAO"} -------------------------------------------------------------------------------- /dist/index.umd.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("peerjs"),require("automerge")):"function"==typeof define&&define.amd?define(["peerjs","automerge"],t):(e=e||self).perge=t(e.peerjs,e.automerge)}(this,function(e,t){return e=e&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e,function(){function n(n,o){var r=this;void 0===o&&(o={}),this._connections={},this._actorId=n,this.peer=o.peer||new e(this._actorId),this.docSet=o.docSet||new t.DocSet,this._encode=o.encode||JSON.stringify,this._decode=o.decode||JSON.parse,this.peer.on("connection",function(e){r._connections[e.peer]||r.connect(e.peer,e)})}var o=n.prototype;return o.connect=function(e,n,o){var r=this;if(this._connections[e])return this.peer.connections[e];var c=n||this.peer.connect(e,o),i=this._connections[e]=new t.Connection(this.docSet,function(e){c.send(r._encode(e))}),s=function(e){return i.receiveMsg(r._decode(e))},u=function(){c.off("data",s),r._connections[e]&&(delete r._connections[e],i.close())};return c.on("data",s),c.on("close",u),c.on("error",u),i.open(),c},o.get=function(e){return this.docSet.getDoc(e)||t.init(this._actorId)},o.select=function(e){var t=this;return function(n){var o=n.apply(void 0,[t.get(e)].concat([].slice.call(arguments,1)));return t.docSet.setDoc(e,o),o}},o.subscribe=function(e,t){var n=this;if("function"==typeof e)return this.docSet.registerHandler(e),function(){return n.docSet.unregisterHandler(e)};if("string"==typeof e&&t){var o=function(n,o){n===e&&t(o)};return this.docSet.registerHandler(o),function(){return n.docSet.unregisterHandler(o)}}return function(){}},n}()}); 2 | //# sourceMappingURL=index.umd.js.map 3 | -------------------------------------------------------------------------------- /dist/index.umd.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"index.umd.js","sources":["../src/index.ts"],"sourcesContent":["import Peer from \"peerjs\";\nimport {\n init,\n Connection,\n DocSet,\n Doc,\n ChangeFn,\n DocSetHandler,\n change,\n undo,\n redo,\n} from \"automerge\";\n\ntype AutomergeUpdateMethod = typeof change | typeof undo | typeof redo;\n\nexport interface PergeConfig {\n decode?: (msg: string) => any;\n encode?: (msg: any) => string;\n peer?: Peer;\n docSet?: DocSet;\n}\n\nexport default class Perge {\n readonly peer: Peer;\n readonly docSet: DocSet;\n\n private _connections: { [id: string]: Connection } = {};\n private _actorId: string;\n private _encode: (msg: any) => string;\n private _decode: (msg: string) => any;\n\n constructor(actorId: string, config: PergeConfig = {}) {\n this._actorId = actorId;\n this.peer = config.peer || new Peer(this._actorId);\n this.docSet = config.docSet || new DocSet();\n this._encode = config.encode || JSON.stringify;\n this._decode = config.decode || JSON.parse;\n this.peer.on(\"connection\", (conn) => {\n if (!this._connections[conn.peer]) this.connect(conn.peer, conn);\n });\n }\n\n public connect(\n id: string,\n conn?: Peer.DataConnection,\n options?: Peer.PeerConnectOption\n ): Peer.DataConnection {\n if (this._connections[id]) return this.peer.connections[id];\n const peer = conn || this.peer.connect(id, options);\n const connection = (this._connections[id] = new Connection(\n this.docSet,\n (msg) => {\n peer.send(this._encode(msg));\n }\n ));\n const handleMsg = (msg: any) => connection.receiveMsg(this._decode(msg));\n const cleanup = () => {\n peer.off(\"data\", handleMsg);\n if (this._connections[id]) {\n delete this._connections[id];\n connection.close();\n }\n };\n peer.on(\"data\", handleMsg);\n peer.on(\"close\", cleanup);\n peer.on(\"error\", cleanup);\n connection.open();\n return peer;\n }\n\n public get(id: string): Doc {\n return this.docSet.getDoc(id) || init(this._actorId);\n }\n\n public select(\n id: string\n ): (changeMethod: AutomergeUpdateMethod, ...args: any[]) => Doc {\n return (changeMethod: Function, ...args: any[]): Doc => {\n const newDoc = changeMethod(this.get(id), ...args);\n this.docSet.setDoc(id, newDoc);\n return newDoc;\n };\n }\n\n public subscribe(\n idOrSetHandler: string | DocSetHandler,\n callback?: ChangeFn\n ): () => void {\n if (typeof idOrSetHandler === \"function\") {\n this.docSet.registerHandler(idOrSetHandler);\n return () => this.docSet.unregisterHandler(idOrSetHandler);\n }\n if (typeof idOrSetHandler === \"string\" && !!callback) {\n const handler = (docId: string, doc: T) => {\n if (docId === idOrSetHandler) callback(doc);\n };\n this.docSet.registerHandler(handler);\n return () => this.docSet.unregisterHandler(handler);\n }\n return () => {};\n }\n}\n"],"names":["actorId","config","this","_actorId","peer","Peer","docSet","DocSet","_encode","encode","JSON","stringify","_decode","decode","parse","on","conn","_this2","_connections","connect","id","options","connections","connection","Connection","msg","send","_this3","handleMsg","receiveMsg","cleanup","off","close","open","get","getDoc","init","select","changeMethod","newDoc","_this","setDoc","subscribe","idOrSetHandler","callback","registerHandler","_this4","unregisterHandler","handler","docId","doc"],"mappings":"uVA+BE,WAAYA,EAAiBC,uBAAAA,IAAAA,EAAsB,IAL3CC,kBAAkD,GAMxDA,KAAKC,SAAWH,EAChBE,KAAKE,KAAOH,EAAOG,MAAQ,IAAIC,EAAKH,KAAKC,UACzCD,KAAKI,OAASL,EAAOK,QAAU,IAAIC,SACnCL,KAAKM,QAAUP,EAAOQ,QAAUC,KAAKC,UACrCT,KAAKU,QAAUX,EAAOY,QAAUH,KAAKI,MACrCZ,KAAKE,KAAKW,GAAG,aAAc,SAACC,GACrBC,EAAKC,aAAaF,EAAKZ,OAAOa,EAAKE,QAAQH,EAAKZ,KAAMY,gCAIxDG,QAAA,SACLC,EACAJ,EACAK,cAEA,GAAInB,KAAKgB,aAAaE,GAAK,YAAYhB,KAAKkB,YAAYF,GACxD,IAAMhB,EAAOY,GAAQd,KAAKE,KAAKe,QAAQC,EAAIC,GACrCE,EAAcrB,KAAKgB,aAAaE,GAAM,IAAII,aAC9CtB,KAAKI,OACL,SAACmB,GACCrB,EAAKsB,KAAKC,EAAKnB,QAAQiB,MAGrBG,EAAY,SAACH,UAAaF,EAAWM,WAAWF,EAAKf,QAAQa,KAC7DK,EAAU,WACd1B,EAAK2B,IAAI,OAAQH,GACbD,EAAKT,aAAaE,YACbO,EAAKT,aAAaE,GACzBG,EAAWS,UAOf,OAJA5B,EAAKW,GAAG,OAAQa,GAChBxB,EAAKW,GAAG,QAASe,GACjB1B,EAAKW,GAAG,QAASe,GACjBP,EAAWU,OACJ7B,KAGF8B,IAAA,SAAOd,GACZ,YAAYd,OAAO6B,OAAOf,IAAOgB,OAAKlC,KAAKC,aAGtCkC,OAAA,SACLjB,cAEA,gBAAQkB,GACN,IAAMC,EAASD,gBAAaE,EAAKN,IAAId,wCAErC,OADAoB,EAAKlC,OAAOmC,OAAOrB,EAAImB,GAChBA,MAIJG,UAAA,SACLC,EACAC,cAEA,GAA8B,mBAAnBD,EAET,OADAzC,KAAKI,OAAOuC,gBAAgBF,qBACfG,EAAKxC,OAAOyC,kBAAkBJ,IAE7C,GAA8B,iBAAnBA,GAAiCC,EAAU,CACpD,IAAMI,EAAU,SAACC,EAAeC,GAC1BD,IAAUN,GAAgBC,EAASM,IAGzC,OADAhD,KAAKI,OAAOuC,gBAAgBG,qBACfF,EAAKxC,OAAOyC,kBAAkBC,IAE7C"} -------------------------------------------------------------------------------- /example/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |

Automerge CRDT's synced with PeerJS

11 |
12 |

Actor ID:

13 |
14 | 15 | 16 |
17 |
{}
18 |
19 |
20 | 21 | 22 |
{}
23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /example/index.ts: -------------------------------------------------------------------------------- 1 | import Perge from '../src/index' 2 | import { change } from 'automerge' 3 | const docs = document.getElementById('docs') 4 | const actorEl = document.getElementById('actorId') 5 | const incrEl = document.getElementById('increment') 6 | const docIdEl = document.getElementById('docId') 7 | const peerForm = document.getElementById('peerForm') 8 | const peersEl = document.getElementById('peers') 9 | 10 | const getDocId = () => docIdEl.value || 'default' 11 | 12 | // Unique ID for this user 13 | const actorId = cuid() 14 | actorEl.innerText = actorId 15 | 16 | // Instantiate a PeerJS connection 17 | const peer = window.peer = new Peer(actorId) 18 | 19 | // Instantiate an Automerge.DocSet 20 | let docSet = window.docSet = new Automerge.DocSet() 21 | 22 | // Instantiate Perge library 23 | const instance = window.instance = new Perge(actorId, { 24 | decode: JSON.parse, // msgpack or protobuf would also be a good option 25 | encode: JSON.stringify, 26 | peer: peer, 27 | docSet: docSet 28 | }) 29 | 30 | // This handler gets invoked whenever the DocSet is updated, useful for re-rendering views. 31 | instance.subscribe(() => { 32 | docs.innerText = JSON.stringify(docSet.docs, null, 2) 33 | }) 34 | 35 | // subscribe returns an unsubscribe function 36 | const unsubscribeFromFoo = instance.subscribe('foo', (doc) => { 37 | console.log('foo', doc) 38 | if (doc.counter.value === 10) { 39 | unsubscribeFromFoo() 40 | console.log('unsubscribed from foo!') 41 | } 42 | }) 43 | 44 | incrEl.onclick = () => { 45 | const id = getDocId() 46 | // Update the document 47 | const doc = instance.select(id)(change, d => { 48 | d.now = new Date().valueOf() 49 | }) 50 | // Automerge.change(doc, d => { 51 | // if (!d.counter) d.counter = new Automerge.Counter() 52 | // else d.counter.increment() 53 | // }) 54 | } 55 | 56 | peerForm.onsubmit = (e) => { 57 | e.preventDefault() 58 | const formData = new FormData(peerForm) 59 | const peerId = formData.get('peerId') 60 | instance.connect(peerId, peer.connect(peerId)) 61 | peersEl.innerText = JSON.stringify( 62 | Array.from(peer._connections.keys() 63 | ), null, 2) 64 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "perge", 3 | "version": "1.2.1", 4 | "license": "MIT", 5 | "types": "dist/index.d.ts", 6 | "main": "dist/index.js", 7 | "umd:main": "dist/index.umd.js", 8 | "module": "dist/index.m.js", 9 | "esmodule": "dist/index.modern.js", 10 | "keywords": [ 11 | "rtc", 12 | "webrtc", 13 | "gamedev", 14 | "p2p", 15 | "crdt" 16 | ], 17 | "scripts": { 18 | "build": "microbundle src/index.ts", 19 | "clean": "rm -rf dist .cache", 20 | "dev": "microbundle watch", 21 | "dev:example": "parcel example/index.html", 22 | "prepublishOnly": "yarn clean && yarn build" 23 | }, 24 | "author": "Sam McCord ", 25 | "bugs": { 26 | "url": "https://github.com/sammccord/perge/issues" 27 | }, 28 | "repository": { 29 | "type": "git", 30 | "url": "git+https://github.com/sammccord/perge.git" 31 | }, 32 | "dependencies": { 33 | "automerge": "^0.14.1", 34 | "peerjs": "^1.2.0" 35 | }, 36 | "devDependencies": { 37 | "microbundle": "^0.12.2" 38 | }, 39 | "resolutions": { 40 | "serialize-javascript": "^2.1.1" 41 | } 42 | } -------------------------------------------------------------------------------- /screenshot.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sammccord/perge/f3b9c364303f515735d6bdaf168e73b0a7f937b7/screenshot.gif -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import Peer from "peerjs"; 2 | import { 3 | init, 4 | Connection, 5 | DocSet, 6 | Doc, 7 | ChangeFn, 8 | DocSetHandler, 9 | change, 10 | undo, 11 | redo, 12 | } from "automerge"; 13 | 14 | type AutomergeUpdateMethod = typeof change | typeof undo | typeof redo; 15 | 16 | export interface PergeConfig { 17 | decode?: (msg: string) => any; 18 | encode?: (msg: any) => string; 19 | peer?: Peer; 20 | docSet?: DocSet; 21 | } 22 | 23 | export default class Perge { 24 | readonly peer: Peer; 25 | readonly docSet: DocSet; 26 | 27 | private _connections: { [id: string]: Connection } = {}; 28 | private _actorId: string; 29 | private _encode: (msg: any) => string; 30 | private _decode: (msg: string) => any; 31 | 32 | constructor(actorId: string, config: PergeConfig = {}) { 33 | this._actorId = actorId; 34 | this.peer = config.peer || new Peer(this._actorId); 35 | this.docSet = config.docSet || new DocSet(); 36 | this._encode = config.encode || JSON.stringify; 37 | this._decode = config.decode || JSON.parse; 38 | this.peer.on("connection", (conn) => { 39 | if (!this._connections[conn.peer]) this.connect(conn.peer, conn); 40 | }); 41 | } 42 | 43 | public connect( 44 | id: string, 45 | conn?: Peer.DataConnection, 46 | options?: Peer.PeerConnectOption 47 | ): Peer.DataConnection { 48 | if (this._connections[id]) return this.peer.connections[id]; 49 | const peer = conn || this.peer.connect(id, options); 50 | const connection = (this._connections[id] = new Connection( 51 | this.docSet, 52 | (msg) => { 53 | peer.send(this._encode(msg)); 54 | } 55 | )); 56 | const handleMsg = (msg: any) => connection.receiveMsg(this._decode(msg)); 57 | const cleanup = () => { 58 | peer.off("data", handleMsg); 59 | if (this._connections[id]) { 60 | delete this._connections[id]; 61 | connection.close(); 62 | } 63 | }; 64 | peer.on("data", handleMsg); 65 | peer.on("close", cleanup); 66 | peer.on("error", cleanup); 67 | connection.open(); 68 | return peer; 69 | } 70 | 71 | public get(id: string): Doc { 72 | return this.docSet.getDoc(id) || init(this._actorId); 73 | } 74 | 75 | public select( 76 | id: string 77 | ): (changeMethod: AutomergeUpdateMethod, ...args: any[]) => Doc { 78 | return (changeMethod: Function, ...args: any[]): Doc => { 79 | const newDoc = changeMethod(this.get(id), ...args); 80 | this.docSet.setDoc(id, newDoc); 81 | return newDoc; 82 | }; 83 | } 84 | 85 | public subscribe( 86 | idOrSetHandler: string | DocSetHandler, 87 | callback?: ChangeFn 88 | ): () => void { 89 | if (typeof idOrSetHandler === "function") { 90 | this.docSet.registerHandler(idOrSetHandler); 91 | return () => this.docSet.unregisterHandler(idOrSetHandler); 92 | } 93 | if (typeof idOrSetHandler === "string" && !!callback) { 94 | const handler = (docId: string, doc: T) => { 95 | if (docId === idOrSetHandler) callback(doc); 96 | }; 97 | this.docSet.registerHandler(handler); 98 | return () => this.docSet.unregisterHandler(handler); 99 | } 100 | return () => {}; 101 | } 102 | } 103 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */ 4 | /* Basic Options */ 5 | // "incremental": true, /* Enable incremental compilation */ 6 | "target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */ 7 | "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */ 8 | // "lib": [], /* Specify library files to be included in the compilation. */ 9 | // "allowJs": true, /* Allow javascript files to be compiled. */ 10 | // "checkJs": true, /* Report errors in .js files. */ 11 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */ 12 | // "declaration": true, /* Generates corresponding '.d.ts' file. */ 13 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ 14 | // "sourceMap": true, /* Generates corresponding '.map' file. */ 15 | // "outFile": "./", /* Concatenate and emit output to single file. */ 16 | // "outDir": "./", /* Redirect output structure to the directory. */ 17 | // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ 18 | // "composite": true, /* Enable project compilation */ 19 | // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */ 20 | // "removeComments": true, /* Do not emit comments to output. */ 21 | // "noEmit": true, /* Do not emit outputs. */ 22 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */ 23 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ 24 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ 25 | /* Strict Type-Checking Options */ 26 | "strict": true, /* Enable all strict type-checking options. */ 27 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */ 28 | // "strictNullChecks": true, /* Enable strict null checks. */ 29 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */ 30 | // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */ 31 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ 32 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ 33 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ 34 | /* Additional Checks */ 35 | // "noUnusedLocals": true, /* Report errors on unused locals. */ 36 | // "noUnusedParameters": true, /* Report errors on unused parameters. */ 37 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */ 38 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */ 39 | /* Module Resolution Options */ 40 | // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ 41 | // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ 42 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ 43 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */ 44 | // "typeRoots": [], /* List of folders to include type definitions from. */ 45 | // "types": [], /* Type declaration files to be included in compilation. */ 46 | "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ 47 | "esModuleInterop": true, /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ 48 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ 49 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ 50 | /* Source Map Options */ 51 | // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */ 52 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */ 53 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */ 54 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */ 55 | /* Experimental Options */ 56 | // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */ 57 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */ 58 | /* Advanced Options */ 59 | "skipLibCheck": true, /* Skip type checking of declaration files. */ 60 | "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */ 61 | } 62 | } -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.3", "@babel/code-frame@^7.5.5": 6 | version "7.10.3" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.3.tgz#324bcfd8d35cd3d47dae18cde63d752086435e9a" 8 | integrity sha512-fDx9eNW0qz0WkUeqL6tXEXzVlPh6Y5aCDEZesl0xBGA8ndRukX91Uk44ZqnkECp01NAZUdCAl+aiQNGi0k88Eg== 9 | dependencies: 10 | "@babel/highlight" "^7.10.3" 11 | 12 | "@babel/compat-data@^7.10.1", "@babel/compat-data@^7.10.3": 13 | version "7.10.3" 14 | resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.10.3.tgz#9af3e033f36e8e2d6e47570db91e64a846f5d382" 15 | integrity sha512-BDIfJ9uNZuI0LajPfoYV28lX8kyCPMHY6uY4WH1lJdcicmAfxCK5ASzaeV0D/wsUaRH/cLk+amuxtC37sZ8TUg== 16 | dependencies: 17 | browserslist "^4.12.0" 18 | invariant "^2.2.4" 19 | semver "^5.5.0" 20 | 21 | "@babel/core@^7.10.2": 22 | version "7.10.3" 23 | resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.10.3.tgz#73b0e8ddeec1e3fdd7a2de587a60e17c440ec77e" 24 | integrity sha512-5YqWxYE3pyhIi84L84YcwjeEgS+fa7ZjK6IBVGTjDVfm64njkR2lfDhVR5OudLk8x2GK59YoSyVv+L/03k1q9w== 25 | dependencies: 26 | "@babel/code-frame" "^7.10.3" 27 | "@babel/generator" "^7.10.3" 28 | "@babel/helper-module-transforms" "^7.10.1" 29 | "@babel/helpers" "^7.10.1" 30 | "@babel/parser" "^7.10.3" 31 | "@babel/template" "^7.10.3" 32 | "@babel/traverse" "^7.10.3" 33 | "@babel/types" "^7.10.3" 34 | convert-source-map "^1.7.0" 35 | debug "^4.1.0" 36 | gensync "^1.0.0-beta.1" 37 | json5 "^2.1.2" 38 | lodash "^4.17.13" 39 | resolve "^1.3.2" 40 | semver "^5.4.1" 41 | source-map "^0.5.0" 42 | 43 | "@babel/generator@^7.10.3": 44 | version "7.10.3" 45 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.10.3.tgz#32b9a0d963a71d7a54f5f6c15659c3dbc2a523a5" 46 | integrity sha512-drt8MUHbEqRzNR0xnF8nMehbY11b1SDkRw03PSNH/3Rb2Z35oxkddVSi3rcaak0YJQ86PCuE7Qx1jSFhbLNBMA== 47 | dependencies: 48 | "@babel/types" "^7.10.3" 49 | jsesc "^2.5.1" 50 | lodash "^4.17.13" 51 | source-map "^0.5.0" 52 | 53 | "@babel/helper-annotate-as-pure@^7.10.1": 54 | version "7.10.1" 55 | resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.10.1.tgz#f6d08acc6f70bbd59b436262553fb2e259a1a268" 56 | integrity sha512-ewp3rvJEwLaHgyWGe4wQssC2vjks3E80WiUe2BpMb0KhreTjMROCbxXcEovTrbeGVdQct5VjQfrv9EgC+xMzCw== 57 | dependencies: 58 | "@babel/types" "^7.10.1" 59 | 60 | "@babel/helper-builder-binary-assignment-operator-visitor@^7.10.1": 61 | version "7.10.3" 62 | resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.10.3.tgz#4e9012d6701bef0030348d7f9c808209bd3e8687" 63 | integrity sha512-lo4XXRnBlU6eRM92FkiZxpo1xFLmv3VsPFk61zJKMm7XYJfwqXHsYJTY6agoc4a3L8QPw1HqWehO18coZgbT6A== 64 | dependencies: 65 | "@babel/helper-explode-assignable-expression" "^7.10.3" 66 | "@babel/types" "^7.10.3" 67 | 68 | "@babel/helper-builder-react-jsx-experimental@^7.10.1": 69 | version "7.10.1" 70 | resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx-experimental/-/helper-builder-react-jsx-experimental-7.10.1.tgz#9a7d58ad184d3ac3bafb1a452cec2bad7e4a0bc8" 71 | integrity sha512-irQJ8kpQUV3JasXPSFQ+LCCtJSc5ceZrPFVj6TElR6XCHssi3jV8ch3odIrNtjJFRZZVbrOEfJMI79TPU/h1pQ== 72 | dependencies: 73 | "@babel/helper-annotate-as-pure" "^7.10.1" 74 | "@babel/helper-module-imports" "^7.10.1" 75 | "@babel/types" "^7.10.1" 76 | 77 | "@babel/helper-builder-react-jsx@^7.10.3": 78 | version "7.10.3" 79 | resolved "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.10.3.tgz#62c4b7bb381153a0a5f8d83189b94b9fb5384fc5" 80 | integrity sha512-vkxmuFvmovtqTZknyMGj9+uQAZzz5Z9mrbnkJnPkaYGfKTaSsYcjQdXP0lgrWLVh8wU6bCjOmXOpx+kqUi+S5Q== 81 | dependencies: 82 | "@babel/helper-annotate-as-pure" "^7.10.1" 83 | "@babel/types" "^7.10.3" 84 | 85 | "@babel/helper-compilation-targets@^7.10.2": 86 | version "7.10.2" 87 | resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.10.2.tgz#a17d9723b6e2c750299d2a14d4637c76936d8285" 88 | integrity sha512-hYgOhF4To2UTB4LTaZepN/4Pl9LD4gfbJx8A34mqoluT8TLbof1mhUlYuNWTEebONa8+UlCC4X0TEXu7AOUyGA== 89 | dependencies: 90 | "@babel/compat-data" "^7.10.1" 91 | browserslist "^4.12.0" 92 | invariant "^2.2.4" 93 | levenary "^1.1.1" 94 | semver "^5.5.0" 95 | 96 | "@babel/helper-create-class-features-plugin@^7.10.1", "@babel/helper-create-class-features-plugin@^7.7.4": 97 | version "7.10.3" 98 | resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.10.3.tgz#2783daa6866822e3d5ed119163b50f0fc3ae4b35" 99 | integrity sha512-iRT9VwqtdFmv7UheJWthGc/h2s7MqoweBF9RUj77NFZsg9VfISvBTum3k6coAhJ8RWv2tj3yUjA03HxPd0vfpQ== 100 | dependencies: 101 | "@babel/helper-function-name" "^7.10.3" 102 | "@babel/helper-member-expression-to-functions" "^7.10.3" 103 | "@babel/helper-optimise-call-expression" "^7.10.3" 104 | "@babel/helper-plugin-utils" "^7.10.3" 105 | "@babel/helper-replace-supers" "^7.10.1" 106 | "@babel/helper-split-export-declaration" "^7.10.1" 107 | 108 | "@babel/helper-create-regexp-features-plugin@^7.10.1", "@babel/helper-create-regexp-features-plugin@^7.8.3": 109 | version "7.10.1" 110 | resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.10.1.tgz#1b8feeab1594cbcfbf3ab5a3bbcabac0468efdbd" 111 | integrity sha512-Rx4rHS0pVuJn5pJOqaqcZR4XSgeF9G/pO/79t+4r7380tXFJdzImFnxMU19f83wjSrmKHq6myrM10pFHTGzkUA== 112 | dependencies: 113 | "@babel/helper-annotate-as-pure" "^7.10.1" 114 | "@babel/helper-regex" "^7.10.1" 115 | regexpu-core "^4.7.0" 116 | 117 | "@babel/helper-define-map@^7.10.3": 118 | version "7.10.3" 119 | resolved "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.10.3.tgz#d27120a5e57c84727b30944549b2dfeca62401a8" 120 | integrity sha512-bxRzDi4Sin/k0drWCczppOhov1sBSdBvXJObM1NLHQzjhXhwRtn7aRWGvLJWCYbuu2qUk3EKs6Ci9C9ps8XokQ== 121 | dependencies: 122 | "@babel/helper-function-name" "^7.10.3" 123 | "@babel/types" "^7.10.3" 124 | lodash "^4.17.13" 125 | 126 | "@babel/helper-explode-assignable-expression@^7.10.3": 127 | version "7.10.3" 128 | resolved "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.10.3.tgz#9dc14f0cfa2833ea830a9c8a1c742b6e7461b05e" 129 | integrity sha512-0nKcR64XrOC3lsl+uhD15cwxPvaB6QKUDlD84OT9C3myRbhJqTMYir69/RWItUvHpharv0eJ/wk7fl34ONSwZw== 130 | dependencies: 131 | "@babel/traverse" "^7.10.3" 132 | "@babel/types" "^7.10.3" 133 | 134 | "@babel/helper-function-name@^7.10.1", "@babel/helper-function-name@^7.10.3": 135 | version "7.10.3" 136 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.10.3.tgz#79316cd75a9fa25ba9787ff54544307ed444f197" 137 | integrity sha512-FvSj2aiOd8zbeqijjgqdMDSyxsGHaMt5Tr0XjQsGKHD3/1FP3wksjnLAWzxw7lvXiej8W1Jt47SKTZ6upQNiRw== 138 | dependencies: 139 | "@babel/helper-get-function-arity" "^7.10.3" 140 | "@babel/template" "^7.10.3" 141 | "@babel/types" "^7.10.3" 142 | 143 | "@babel/helper-get-function-arity@^7.10.1", "@babel/helper-get-function-arity@^7.10.3": 144 | version "7.10.3" 145 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.10.3.tgz#3a28f7b28ccc7719eacd9223b659fdf162e4c45e" 146 | integrity sha512-iUD/gFsR+M6uiy69JA6fzM5seno8oE85IYZdbVVEuQaZlEzMO2MXblh+KSPJgsZAUx0EEbWXU0yJaW7C9CdAVg== 147 | dependencies: 148 | "@babel/types" "^7.10.3" 149 | 150 | "@babel/helper-hoist-variables@^7.10.3": 151 | version "7.10.3" 152 | resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.10.3.tgz#d554f52baf1657ffbd7e5137311abc993bb3f068" 153 | integrity sha512-9JyafKoBt5h20Yv1+BXQMdcXXavozI1vt401KBiRc2qzUepbVnd7ogVNymY1xkQN9fekGwfxtotH2Yf5xsGzgg== 154 | dependencies: 155 | "@babel/types" "^7.10.3" 156 | 157 | "@babel/helper-member-expression-to-functions@^7.10.1", "@babel/helper-member-expression-to-functions@^7.10.3": 158 | version "7.10.3" 159 | resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.10.3.tgz#bc3663ac81ac57c39148fef4c69bf48a77ba8dd6" 160 | integrity sha512-q7+37c4EPLSjNb2NmWOjNwj0+BOyYlssuQ58kHEWk1Z78K5i8vTUsteq78HMieRPQSl/NtpQyJfdjt3qZ5V2vw== 161 | dependencies: 162 | "@babel/types" "^7.10.3" 163 | 164 | "@babel/helper-module-imports@^7.10.1", "@babel/helper-module-imports@^7.10.3", "@babel/helper-module-imports@^7.7.4": 165 | version "7.10.3" 166 | resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.10.3.tgz#766fa1d57608e53e5676f23ae498ec7a95e1b11a" 167 | integrity sha512-Jtqw5M9pahLSUWA+76nhK9OG8nwYXzhQzVIGFoNaHnXF/r4l7kz4Fl0UAW7B6mqC5myoJiBP5/YQlXQTMfHI9w== 168 | dependencies: 169 | "@babel/types" "^7.10.3" 170 | 171 | "@babel/helper-module-transforms@^7.10.1": 172 | version "7.10.1" 173 | resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.10.1.tgz#24e2f08ee6832c60b157bb0936c86bef7210c622" 174 | integrity sha512-RLHRCAzyJe7Q7sF4oy2cB+kRnU4wDZY/H2xJFGof+M+SJEGhZsb+GFj5j1AD8NiSaVBJ+Pf0/WObiXu/zxWpFg== 175 | dependencies: 176 | "@babel/helper-module-imports" "^7.10.1" 177 | "@babel/helper-replace-supers" "^7.10.1" 178 | "@babel/helper-simple-access" "^7.10.1" 179 | "@babel/helper-split-export-declaration" "^7.10.1" 180 | "@babel/template" "^7.10.1" 181 | "@babel/types" "^7.10.1" 182 | lodash "^4.17.13" 183 | 184 | "@babel/helper-optimise-call-expression@^7.10.1", "@babel/helper-optimise-call-expression@^7.10.3": 185 | version "7.10.3" 186 | resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.10.3.tgz#f53c4b6783093195b0f69330439908841660c530" 187 | integrity sha512-kT2R3VBH/cnSz+yChKpaKRJQJWxdGoc6SjioRId2wkeV3bK0wLLioFpJROrX0U4xr/NmxSSAWT/9Ih5snwIIzg== 188 | dependencies: 189 | "@babel/types" "^7.10.3" 190 | 191 | "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.1", "@babel/helper-plugin-utils@^7.10.3", "@babel/helper-plugin-utils@^7.8.0": 192 | version "7.10.3" 193 | resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.3.tgz#aac45cccf8bc1873b99a85f34bceef3beb5d3244" 194 | integrity sha512-j/+j8NAWUTxOtx4LKHybpSClxHoq6I91DQ/mKgAXn5oNUPIUiGppjPIX3TDtJWPrdfP9Kfl7e4fgVMiQR9VE/g== 195 | 196 | "@babel/helper-regex@^7.10.1": 197 | version "7.10.1" 198 | resolved "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.10.1.tgz#021cf1a7ba99822f993222a001cc3fec83255b96" 199 | integrity sha512-7isHr19RsIJWWLLFn21ubFt223PjQyg1HY7CZEMRr820HttHPpVvrsIN3bUOo44DEfFV4kBXO7Abbn9KTUZV7g== 200 | dependencies: 201 | lodash "^4.17.13" 202 | 203 | "@babel/helper-remap-async-to-generator@^7.10.1", "@babel/helper-remap-async-to-generator@^7.10.3": 204 | version "7.10.3" 205 | resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.10.3.tgz#18564f8a6748be466970195b876e8bba3bccf442" 206 | integrity sha512-sLB7666ARbJUGDO60ZormmhQOyqMX/shKBXZ7fy937s+3ID8gSrneMvKSSb+8xIM5V7Vn6uNVtOY1vIm26XLtA== 207 | dependencies: 208 | "@babel/helper-annotate-as-pure" "^7.10.1" 209 | "@babel/helper-wrap-function" "^7.10.1" 210 | "@babel/template" "^7.10.3" 211 | "@babel/traverse" "^7.10.3" 212 | "@babel/types" "^7.10.3" 213 | 214 | "@babel/helper-replace-supers@^7.10.1": 215 | version "7.10.1" 216 | resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.10.1.tgz#ec6859d20c5d8087f6a2dc4e014db7228975f13d" 217 | integrity sha512-SOwJzEfpuQwInzzQJGjGaiG578UYmyi2Xw668klPWV5n07B73S0a9btjLk/52Mlcxa+5AdIYqws1KyXRfMoB7A== 218 | dependencies: 219 | "@babel/helper-member-expression-to-functions" "^7.10.1" 220 | "@babel/helper-optimise-call-expression" "^7.10.1" 221 | "@babel/traverse" "^7.10.1" 222 | "@babel/types" "^7.10.1" 223 | 224 | "@babel/helper-simple-access@^7.10.1": 225 | version "7.10.1" 226 | resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.10.1.tgz#08fb7e22ace9eb8326f7e3920a1c2052f13d851e" 227 | integrity sha512-VSWpWzRzn9VtgMJBIWTZ+GP107kZdQ4YplJlCmIrjoLVSi/0upixezHCDG8kpPVTBJpKfxTH01wDhh+jS2zKbw== 228 | dependencies: 229 | "@babel/template" "^7.10.1" 230 | "@babel/types" "^7.10.1" 231 | 232 | "@babel/helper-split-export-declaration@^7.10.1": 233 | version "7.10.1" 234 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.10.1.tgz#c6f4be1cbc15e3a868e4c64a17d5d31d754da35f" 235 | integrity sha512-UQ1LVBPrYdbchNhLwj6fetj46BcFwfS4NllJo/1aJsT+1dLTEnXJL0qHqtY7gPzF8S2fXBJamf1biAXV3X077g== 236 | dependencies: 237 | "@babel/types" "^7.10.1" 238 | 239 | "@babel/helper-validator-identifier@^7.10.3": 240 | version "7.10.3" 241 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.3.tgz#60d9847f98c4cea1b279e005fdb7c28be5412d15" 242 | integrity sha512-bU8JvtlYpJSBPuj1VUmKpFGaDZuLxASky3LhaKj3bmpSTY6VWooSM8msk+Z0CZoErFye2tlABF6yDkT3FOPAXw== 243 | 244 | "@babel/helper-wrap-function@^7.10.1": 245 | version "7.10.1" 246 | resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.10.1.tgz#956d1310d6696257a7afd47e4c42dfda5dfcedc9" 247 | integrity sha512-C0MzRGteVDn+H32/ZgbAv5r56f2o1fZSA/rj/TYo8JEJNHg+9BdSmKBUND0shxWRztWhjlT2cvHYuynpPsVJwQ== 248 | dependencies: 249 | "@babel/helper-function-name" "^7.10.1" 250 | "@babel/template" "^7.10.1" 251 | "@babel/traverse" "^7.10.1" 252 | "@babel/types" "^7.10.1" 253 | 254 | "@babel/helpers@^7.10.1": 255 | version "7.10.1" 256 | resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.10.1.tgz#a6827b7cb975c9d9cef5fd61d919f60d8844a973" 257 | integrity sha512-muQNHF+IdU6wGgkaJyhhEmI54MOZBKsFfsXFhboz1ybwJ1Kl7IHlbm2a++4jwrmY5UYsgitt5lfqo1wMFcHmyw== 258 | dependencies: 259 | "@babel/template" "^7.10.1" 260 | "@babel/traverse" "^7.10.1" 261 | "@babel/types" "^7.10.1" 262 | 263 | "@babel/highlight@^7.10.3": 264 | version "7.10.3" 265 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.3.tgz#c633bb34adf07c5c13156692f5922c81ec53f28d" 266 | integrity sha512-Ih9B/u7AtgEnySE2L2F0Xm0GaM729XqqLfHkalTsbjXGyqmf/6M0Cu0WpvqueUlW+xk88BHw9Nkpj49naU+vWw== 267 | dependencies: 268 | "@babel/helper-validator-identifier" "^7.10.3" 269 | chalk "^2.0.0" 270 | js-tokens "^4.0.0" 271 | 272 | "@babel/parser@^7.10.3", "@babel/parser@^7.3.3": 273 | version "7.10.3" 274 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.10.3.tgz#7e71d892b0d6e7d04a1af4c3c79d72c1f10f5315" 275 | integrity sha512-oJtNJCMFdIMwXGmx+KxuaD7i3b8uS7TTFYW/FNG2BT8m+fmGHoiPYoH0Pe3gya07WuFmM5FCDIr1x0irkD/hyA== 276 | 277 | "@babel/plugin-proposal-async-generator-functions@^7.10.3": 278 | version "7.10.3" 279 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.10.3.tgz#5a02453d46e5362e2073c7278beab2e53ad7d939" 280 | integrity sha512-WUUWM7YTOudF4jZBAJIW9D7aViYC/Fn0Pln4RIHlQALyno3sXSjqmTA4Zy1TKC2D49RCR8Y/Pn4OIUtEypK3CA== 281 | dependencies: 282 | "@babel/helper-plugin-utils" "^7.10.3" 283 | "@babel/helper-remap-async-to-generator" "^7.10.3" 284 | "@babel/plugin-syntax-async-generators" "^7.8.0" 285 | 286 | "@babel/plugin-proposal-class-properties@7.7.4": 287 | version "7.7.4" 288 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.7.4.tgz#2f964f0cb18b948450362742e33e15211e77c2ba" 289 | integrity sha512-EcuXeV4Hv1X3+Q1TsuOmyyxeTRiSqurGJ26+I/FW1WbymmRRapVORm6x1Zl3iDIHyRxEs+VXWp6qnlcfcJSbbw== 290 | dependencies: 291 | "@babel/helper-create-class-features-plugin" "^7.7.4" 292 | "@babel/helper-plugin-utils" "^7.0.0" 293 | 294 | "@babel/plugin-proposal-class-properties@^7.10.1": 295 | version "7.10.1" 296 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.10.1.tgz#046bc7f6550bb08d9bd1d4f060f5f5a4f1087e01" 297 | integrity sha512-sqdGWgoXlnOdgMXU+9MbhzwFRgxVLeiGBqTrnuS7LC2IBU31wSsESbTUreT2O418obpfPdGUR2GbEufZF1bpqw== 298 | dependencies: 299 | "@babel/helper-create-class-features-plugin" "^7.10.1" 300 | "@babel/helper-plugin-utils" "^7.10.1" 301 | 302 | "@babel/plugin-proposal-dynamic-import@^7.10.1": 303 | version "7.10.1" 304 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.10.1.tgz#e36979dc1dc3b73f6d6816fc4951da2363488ef0" 305 | integrity sha512-Cpc2yUVHTEGPlmiQzXj026kqwjEQAD9I4ZC16uzdbgWgitg/UHKHLffKNCQZ5+y8jpIZPJcKcwsr2HwPh+w3XA== 306 | dependencies: 307 | "@babel/helper-plugin-utils" "^7.10.1" 308 | "@babel/plugin-syntax-dynamic-import" "^7.8.0" 309 | 310 | "@babel/plugin-proposal-json-strings@^7.10.1": 311 | version "7.10.1" 312 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.10.1.tgz#b1e691ee24c651b5a5e32213222b2379734aff09" 313 | integrity sha512-m8r5BmV+ZLpWPtMY2mOKN7wre6HIO4gfIiV+eOmsnZABNenrt/kzYBwrh+KOfgumSWpnlGs5F70J8afYMSJMBg== 314 | dependencies: 315 | "@babel/helper-plugin-utils" "^7.10.1" 316 | "@babel/plugin-syntax-json-strings" "^7.8.0" 317 | 318 | "@babel/plugin-proposal-nullish-coalescing-operator@^7.10.1": 319 | version "7.10.1" 320 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.10.1.tgz#02dca21673842ff2fe763ac253777f235e9bbf78" 321 | integrity sha512-56cI/uHYgL2C8HVuHOuvVowihhX0sxb3nnfVRzUeVHTWmRHTZrKuAh/OBIMggGU/S1g/1D2CRCXqP+3u7vX7iA== 322 | dependencies: 323 | "@babel/helper-plugin-utils" "^7.10.1" 324 | "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" 325 | 326 | "@babel/plugin-proposal-numeric-separator@^7.10.1": 327 | version "7.10.1" 328 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.10.1.tgz#a9a38bc34f78bdfd981e791c27c6fdcec478c123" 329 | integrity sha512-jjfym4N9HtCiNfyyLAVD8WqPYeHUrw4ihxuAynWj6zzp2gf9Ey2f7ImhFm6ikB3CLf5Z/zmcJDri6B4+9j9RsA== 330 | dependencies: 331 | "@babel/helper-plugin-utils" "^7.10.1" 332 | "@babel/plugin-syntax-numeric-separator" "^7.10.1" 333 | 334 | "@babel/plugin-proposal-object-rest-spread@^7.10.3": 335 | version "7.10.3" 336 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.10.3.tgz#b8d0d22f70afa34ad84b7a200ff772f9b9fce474" 337 | integrity sha512-ZZh5leCIlH9lni5bU/wB/UcjtcVLgR8gc+FAgW2OOY+m9h1II3ItTO1/cewNUcsIDZSYcSaz/rYVls+Fb0ExVQ== 338 | dependencies: 339 | "@babel/helper-plugin-utils" "^7.10.3" 340 | "@babel/plugin-syntax-object-rest-spread" "^7.8.0" 341 | "@babel/plugin-transform-parameters" "^7.10.1" 342 | 343 | "@babel/plugin-proposal-optional-catch-binding@^7.10.1": 344 | version "7.10.1" 345 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.10.1.tgz#c9f86d99305f9fa531b568ff5ab8c964b8b223d2" 346 | integrity sha512-VqExgeE62YBqI3ogkGoOJp1R6u12DFZjqwJhqtKc2o5m1YTUuUWnos7bZQFBhwkxIFpWYJ7uB75U7VAPPiKETA== 347 | dependencies: 348 | "@babel/helper-plugin-utils" "^7.10.1" 349 | "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" 350 | 351 | "@babel/plugin-proposal-optional-chaining@^7.10.3": 352 | version "7.10.3" 353 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.10.3.tgz#9a726f94622b653c0a3a7a59cdce94730f526f7c" 354 | integrity sha512-yyG3n9dJ1vZ6v5sfmIlMMZ8azQoqx/5/nZTSWX1td6L1H1bsjzA8TInDChpafCZiJkeOFzp/PtrfigAQXxI1Ng== 355 | dependencies: 356 | "@babel/helper-plugin-utils" "^7.10.3" 357 | "@babel/plugin-syntax-optional-chaining" "^7.8.0" 358 | 359 | "@babel/plugin-proposal-private-methods@^7.10.1": 360 | version "7.10.1" 361 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.10.1.tgz#ed85e8058ab0fe309c3f448e5e1b73ca89cdb598" 362 | integrity sha512-RZecFFJjDiQ2z6maFprLgrdnm0OzoC23Mx89xf1CcEsxmHuzuXOdniEuI+S3v7vjQG4F5sa6YtUp+19sZuSxHg== 363 | dependencies: 364 | "@babel/helper-create-class-features-plugin" "^7.10.1" 365 | "@babel/helper-plugin-utils" "^7.10.1" 366 | 367 | "@babel/plugin-proposal-unicode-property-regex@^7.10.1", "@babel/plugin-proposal-unicode-property-regex@^7.4.4": 368 | version "7.10.1" 369 | resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.10.1.tgz#dc04feb25e2dd70c12b05d680190e138fa2c0c6f" 370 | integrity sha512-JjfngYRvwmPwmnbRZyNiPFI8zxCZb8euzbCG/LxyKdeTb59tVciKo9GK9bi6JYKInk1H11Dq9j/zRqIH4KigfQ== 371 | dependencies: 372 | "@babel/helper-create-regexp-features-plugin" "^7.10.1" 373 | "@babel/helper-plugin-utils" "^7.10.1" 374 | 375 | "@babel/plugin-syntax-async-generators@^7.8.0": 376 | version "7.8.4" 377 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" 378 | integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== 379 | dependencies: 380 | "@babel/helper-plugin-utils" "^7.8.0" 381 | 382 | "@babel/plugin-syntax-class-properties@^7.10.1": 383 | version "7.10.1" 384 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.10.1.tgz#d5bc0645913df5b17ad7eda0fa2308330bde34c5" 385 | integrity sha512-Gf2Yx/iRs1JREDtVZ56OrjjgFHCaldpTnuy9BHla10qyVT3YkIIGEtoDWhyop0ksu1GvNjHIoYRBqm3zoR1jyQ== 386 | dependencies: 387 | "@babel/helper-plugin-utils" "^7.10.1" 388 | 389 | "@babel/plugin-syntax-dynamic-import@^7.8.0": 390 | version "7.8.3" 391 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3" 392 | integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ== 393 | dependencies: 394 | "@babel/helper-plugin-utils" "^7.8.0" 395 | 396 | "@babel/plugin-syntax-flow@^7.10.1": 397 | version "7.10.1" 398 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.10.1.tgz#cd4bbca62fb402babacb174f64f8734310d742f0" 399 | integrity sha512-b3pWVncLBYoPP60UOTc7NMlbtsHQ6ITim78KQejNHK6WJ2mzV5kCcg4mIWpasAfJEgwVTibwo2e+FU7UEIKQUg== 400 | dependencies: 401 | "@babel/helper-plugin-utils" "^7.10.1" 402 | 403 | "@babel/plugin-syntax-import-meta@^7.10.1": 404 | version "7.10.1" 405 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.1.tgz#3e59120ed8b3c2ccc5abb1cfc7aaa3ea01cd36b6" 406 | integrity sha512-ypC4jwfIVF72og0dgvEcFRdOM2V9Qm1tu7RGmdZOlhsccyK0wisXmMObGuWEOd5jQ+K9wcIgSNftCpk2vkjUfQ== 407 | dependencies: 408 | "@babel/helper-plugin-utils" "^7.10.1" 409 | 410 | "@babel/plugin-syntax-json-strings@^7.8.0": 411 | version "7.8.3" 412 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" 413 | integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== 414 | dependencies: 415 | "@babel/helper-plugin-utils" "^7.8.0" 416 | 417 | "@babel/plugin-syntax-jsx@^7.10.1": 418 | version "7.10.1" 419 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.10.1.tgz#0ae371134a42b91d5418feb3c8c8d43e1565d2da" 420 | integrity sha512-+OxyOArpVFXQeXKLO9o+r2I4dIoVoy6+Uu0vKELrlweDM3QJADZj+Z+5ERansZqIZBcLj42vHnDI8Rz9BnRIuQ== 421 | dependencies: 422 | "@babel/helper-plugin-utils" "^7.10.1" 423 | 424 | "@babel/plugin-syntax-nullish-coalescing-operator@^7.8.0": 425 | version "7.8.3" 426 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" 427 | integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== 428 | dependencies: 429 | "@babel/helper-plugin-utils" "^7.8.0" 430 | 431 | "@babel/plugin-syntax-numeric-separator@^7.10.1": 432 | version "7.10.1" 433 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.1.tgz#25761ee7410bc8cf97327ba741ee94e4a61b7d99" 434 | integrity sha512-uTd0OsHrpe3tH5gRPTxG8Voh99/WCU78vIm5NMRYPAqC8lR4vajt6KkCAknCHrx24vkPdd/05yfdGSB4EIY2mg== 435 | dependencies: 436 | "@babel/helper-plugin-utils" "^7.10.1" 437 | 438 | "@babel/plugin-syntax-object-rest-spread@^7.8.0": 439 | version "7.8.3" 440 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" 441 | integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== 442 | dependencies: 443 | "@babel/helper-plugin-utils" "^7.8.0" 444 | 445 | "@babel/plugin-syntax-optional-catch-binding@^7.8.0": 446 | version "7.8.3" 447 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" 448 | integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== 449 | dependencies: 450 | "@babel/helper-plugin-utils" "^7.8.0" 451 | 452 | "@babel/plugin-syntax-optional-chaining@^7.8.0": 453 | version "7.8.3" 454 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" 455 | integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== 456 | dependencies: 457 | "@babel/helper-plugin-utils" "^7.8.0" 458 | 459 | "@babel/plugin-syntax-top-level-await@^7.10.1": 460 | version "7.10.1" 461 | resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.10.1.tgz#8b8733f8c57397b3eaa47ddba8841586dcaef362" 462 | integrity sha512-hgA5RYkmZm8FTFT3yu2N9Bx7yVVOKYT6yEdXXo6j2JTm0wNxgqaGeQVaSHRjhfnQbX91DtjFB6McRFSlcJH3xQ== 463 | dependencies: 464 | "@babel/helper-plugin-utils" "^7.10.1" 465 | 466 | "@babel/plugin-transform-arrow-functions@^7.10.1": 467 | version "7.10.1" 468 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.10.1.tgz#cb5ee3a36f0863c06ead0b409b4cc43a889b295b" 469 | integrity sha512-6AZHgFJKP3DJX0eCNJj01RpytUa3SOGawIxweHkNX2L6PYikOZmoh5B0d7hIHaIgveMjX990IAa/xK7jRTN8OA== 470 | dependencies: 471 | "@babel/helper-plugin-utils" "^7.10.1" 472 | 473 | "@babel/plugin-transform-async-to-generator@^7.10.1": 474 | version "7.10.1" 475 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.10.1.tgz#e5153eb1a3e028f79194ed8a7a4bf55f862b2062" 476 | integrity sha512-XCgYjJ8TY2slj6SReBUyamJn3k2JLUIiiR5b6t1mNCMSvv7yx+jJpaewakikp0uWFQSF7ChPPoe3dHmXLpISkg== 477 | dependencies: 478 | "@babel/helper-module-imports" "^7.10.1" 479 | "@babel/helper-plugin-utils" "^7.10.1" 480 | "@babel/helper-remap-async-to-generator" "^7.10.1" 481 | 482 | "@babel/plugin-transform-block-scoped-functions@^7.10.1": 483 | version "7.10.1" 484 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.10.1.tgz#146856e756d54b20fff14b819456b3e01820b85d" 485 | integrity sha512-B7K15Xp8lv0sOJrdVAoukKlxP9N59HS48V1J3U/JGj+Ad+MHq+am6xJVs85AgXrQn4LV8vaYFOB+pr/yIuzW8Q== 486 | dependencies: 487 | "@babel/helper-plugin-utils" "^7.10.1" 488 | 489 | "@babel/plugin-transform-block-scoping@^7.10.1": 490 | version "7.10.1" 491 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.1.tgz#47092d89ca345811451cd0dc5d91605982705d5e" 492 | integrity sha512-8bpWG6TtF5akdhIm/uWTyjHqENpy13Fx8chg7pFH875aNLwX8JxIxqm08gmAT+Whe6AOmaTeLPe7dpLbXt+xUw== 493 | dependencies: 494 | "@babel/helper-plugin-utils" "^7.10.1" 495 | lodash "^4.17.13" 496 | 497 | "@babel/plugin-transform-classes@^7.10.3": 498 | version "7.10.3" 499 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.10.3.tgz#8d9a656bc3d01f3ff69e1fccb354b0f9d72ac544" 500 | integrity sha512-irEX0ChJLaZVC7FvvRoSIxJlmk0IczFLcwaRXUArBKYHCHbOhe57aG8q3uw/fJsoSXvZhjRX960hyeAGlVBXZw== 501 | dependencies: 502 | "@babel/helper-annotate-as-pure" "^7.10.1" 503 | "@babel/helper-define-map" "^7.10.3" 504 | "@babel/helper-function-name" "^7.10.3" 505 | "@babel/helper-optimise-call-expression" "^7.10.3" 506 | "@babel/helper-plugin-utils" "^7.10.3" 507 | "@babel/helper-replace-supers" "^7.10.1" 508 | "@babel/helper-split-export-declaration" "^7.10.1" 509 | globals "^11.1.0" 510 | 511 | "@babel/plugin-transform-computed-properties@^7.10.3": 512 | version "7.10.3" 513 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.10.3.tgz#d3aa6eef67cb967150f76faff20f0abbf553757b" 514 | integrity sha512-GWzhaBOsdbjVFav96drOz7FzrcEW6AP5nax0gLIpstiFaI3LOb2tAg06TimaWU6YKOfUACK3FVrxPJ4GSc5TgA== 515 | dependencies: 516 | "@babel/helper-plugin-utils" "^7.10.3" 517 | 518 | "@babel/plugin-transform-destructuring@^7.10.1": 519 | version "7.10.1" 520 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.10.1.tgz#abd58e51337815ca3a22a336b85f62b998e71907" 521 | integrity sha512-V/nUc4yGWG71OhaTH705pU8ZSdM6c1KmmLP8ys59oOYbT7RpMYAR3MsVOt6OHL0WzG7BlTU076va9fjJyYzJMA== 522 | dependencies: 523 | "@babel/helper-plugin-utils" "^7.10.1" 524 | 525 | "@babel/plugin-transform-dotall-regex@^7.10.1", "@babel/plugin-transform-dotall-regex@^7.4.4": 526 | version "7.10.1" 527 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.10.1.tgz#920b9fec2d78bb57ebb64a644d5c2ba67cc104ee" 528 | integrity sha512-19VIMsD1dp02RvduFUmfzj8uknaO3uiHHF0s3E1OHnVsNj8oge8EQ5RzHRbJjGSetRnkEuBYO7TG1M5kKjGLOA== 529 | dependencies: 530 | "@babel/helper-create-regexp-features-plugin" "^7.10.1" 531 | "@babel/helper-plugin-utils" "^7.10.1" 532 | 533 | "@babel/plugin-transform-duplicate-keys@^7.10.1": 534 | version "7.10.1" 535 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.10.1.tgz#c900a793beb096bc9d4d0a9d0cde19518ffc83b9" 536 | integrity sha512-wIEpkX4QvX8Mo9W6XF3EdGttrIPZWozHfEaDTU0WJD/TDnXMvdDh30mzUl/9qWhnf7naicYartcEfUghTCSNpA== 537 | dependencies: 538 | "@babel/helper-plugin-utils" "^7.10.1" 539 | 540 | "@babel/plugin-transform-exponentiation-operator@^7.10.1": 541 | version "7.10.1" 542 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.10.1.tgz#279c3116756a60dd6e6f5e488ba7957db9c59eb3" 543 | integrity sha512-lr/przdAbpEA2BUzRvjXdEDLrArGRRPwbaF9rvayuHRvdQ7lUTTkZnhZrJ4LE2jvgMRFF4f0YuPQ20vhiPYxtA== 544 | dependencies: 545 | "@babel/helper-builder-binary-assignment-operator-visitor" "^7.10.1" 546 | "@babel/helper-plugin-utils" "^7.10.1" 547 | 548 | "@babel/plugin-transform-flow-strip-types@^7.10.1": 549 | version "7.10.1" 550 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.10.1.tgz#59eafbff9ae85ec8932d4c16c068654be814ec5e" 551 | integrity sha512-i4o0YwiJBIsIx7/liVCZ3Q2WkWr1/Yu39PksBOnh/khW2SwIFsGa5Ze+MSon5KbDfrEHP9NeyefAgvUSXzaEkw== 552 | dependencies: 553 | "@babel/helper-plugin-utils" "^7.10.1" 554 | "@babel/plugin-syntax-flow" "^7.10.1" 555 | 556 | "@babel/plugin-transform-for-of@^7.10.1": 557 | version "7.10.1" 558 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.10.1.tgz#ff01119784eb0ee32258e8646157ba2501fcfda5" 559 | integrity sha512-US8KCuxfQcn0LwSCMWMma8M2R5mAjJGsmoCBVwlMygvmDUMkTCykc84IqN1M7t+agSfOmLYTInLCHJM+RUoz+w== 560 | dependencies: 561 | "@babel/helper-plugin-utils" "^7.10.1" 562 | 563 | "@babel/plugin-transform-function-name@^7.10.1": 564 | version "7.10.1" 565 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.10.1.tgz#4ed46fd6e1d8fde2a2ec7b03c66d853d2c92427d" 566 | integrity sha512-//bsKsKFBJfGd65qSNNh1exBy5Y9gD9ZN+DvrJ8f7HXr4avE5POW6zB7Rj6VnqHV33+0vXWUwJT0wSHubiAQkw== 567 | dependencies: 568 | "@babel/helper-function-name" "^7.10.1" 569 | "@babel/helper-plugin-utils" "^7.10.1" 570 | 571 | "@babel/plugin-transform-literals@^7.10.1": 572 | version "7.10.1" 573 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.10.1.tgz#5794f8da82846b22e4e6631ea1658bce708eb46a" 574 | integrity sha512-qi0+5qgevz1NHLZroObRm5A+8JJtibb7vdcPQF1KQE12+Y/xxl8coJ+TpPW9iRq+Mhw/NKLjm+5SHtAHCC7lAw== 575 | dependencies: 576 | "@babel/helper-plugin-utils" "^7.10.1" 577 | 578 | "@babel/plugin-transform-member-expression-literals@^7.10.1": 579 | version "7.10.1" 580 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.10.1.tgz#90347cba31bca6f394b3f7bd95d2bbfd9fce2f39" 581 | integrity sha512-UmaWhDokOFT2GcgU6MkHC11i0NQcL63iqeufXWfRy6pUOGYeCGEKhvfFO6Vz70UfYJYHwveg62GS83Rvpxn+NA== 582 | dependencies: 583 | "@babel/helper-plugin-utils" "^7.10.1" 584 | 585 | "@babel/plugin-transform-modules-amd@^7.10.1": 586 | version "7.10.1" 587 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.10.1.tgz#65950e8e05797ebd2fe532b96e19fc5482a1d52a" 588 | integrity sha512-31+hnWSFRI4/ACFr1qkboBbrTxoBIzj7qA69qlq8HY8p7+YCzkCT6/TvQ1a4B0z27VeWtAeJd6pr5G04dc1iHw== 589 | dependencies: 590 | "@babel/helper-module-transforms" "^7.10.1" 591 | "@babel/helper-plugin-utils" "^7.10.1" 592 | babel-plugin-dynamic-import-node "^2.3.3" 593 | 594 | "@babel/plugin-transform-modules-commonjs@^7.10.1": 595 | version "7.10.1" 596 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.10.1.tgz#d5ff4b4413ed97ffded99961056e1fb980fb9301" 597 | integrity sha512-AQG4fc3KOah0vdITwt7Gi6hD9BtQP/8bhem7OjbaMoRNCH5Djx42O2vYMfau7QnAzQCa+RJnhJBmFFMGpQEzrg== 598 | dependencies: 599 | "@babel/helper-module-transforms" "^7.10.1" 600 | "@babel/helper-plugin-utils" "^7.10.1" 601 | "@babel/helper-simple-access" "^7.10.1" 602 | babel-plugin-dynamic-import-node "^2.3.3" 603 | 604 | "@babel/plugin-transform-modules-systemjs@^7.10.3": 605 | version "7.10.3" 606 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.10.3.tgz#004ae727b122b7b146b150d50cba5ffbff4ac56b" 607 | integrity sha512-GWXWQMmE1GH4ALc7YXW56BTh/AlzvDWhUNn9ArFF0+Cz5G8esYlVbXfdyHa1xaD1j+GnBoCeoQNlwtZTVdiG/A== 608 | dependencies: 609 | "@babel/helper-hoist-variables" "^7.10.3" 610 | "@babel/helper-module-transforms" "^7.10.1" 611 | "@babel/helper-plugin-utils" "^7.10.3" 612 | babel-plugin-dynamic-import-node "^2.3.3" 613 | 614 | "@babel/plugin-transform-modules-umd@^7.10.1": 615 | version "7.10.1" 616 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.10.1.tgz#ea080911ffc6eb21840a5197a39ede4ee67b1595" 617 | integrity sha512-EIuiRNMd6GB6ulcYlETnYYfgv4AxqrswghmBRQbWLHZxN4s7mupxzglnHqk9ZiUpDI4eRWewedJJNj67PWOXKA== 618 | dependencies: 619 | "@babel/helper-module-transforms" "^7.10.1" 620 | "@babel/helper-plugin-utils" "^7.10.1" 621 | 622 | "@babel/plugin-transform-named-capturing-groups-regex@^7.10.3": 623 | version "7.10.3" 624 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.10.3.tgz#a4f8444d1c5a46f35834a410285f2c901c007ca6" 625 | integrity sha512-I3EH+RMFyVi8Iy/LekQm948Z4Lz4yKT7rK+vuCAeRm0kTa6Z5W7xuhRxDNJv0FPya/her6AUgrDITb70YHtTvA== 626 | dependencies: 627 | "@babel/helper-create-regexp-features-plugin" "^7.8.3" 628 | 629 | "@babel/plugin-transform-new-target@^7.10.1": 630 | version "7.10.1" 631 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.10.1.tgz#6ee41a5e648da7632e22b6fb54012e87f612f324" 632 | integrity sha512-MBlzPc1nJvbmO9rPr1fQwXOM2iGut+JC92ku6PbiJMMK7SnQc1rytgpopveE3Evn47gzvGYeCdgfCDbZo0ecUw== 633 | dependencies: 634 | "@babel/helper-plugin-utils" "^7.10.1" 635 | 636 | "@babel/plugin-transform-object-super@^7.10.1": 637 | version "7.10.1" 638 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.10.1.tgz#2e3016b0adbf262983bf0d5121d676a5ed9c4fde" 639 | integrity sha512-WnnStUDN5GL+wGQrJylrnnVlFhFmeArINIR9gjhSeYyvroGhBrSAXYg/RHsnfzmsa+onJrTJrEClPzgNmmQ4Gw== 640 | dependencies: 641 | "@babel/helper-plugin-utils" "^7.10.1" 642 | "@babel/helper-replace-supers" "^7.10.1" 643 | 644 | "@babel/plugin-transform-parameters@^7.10.1": 645 | version "7.10.1" 646 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.10.1.tgz#b25938a3c5fae0354144a720b07b32766f683ddd" 647 | integrity sha512-tJ1T0n6g4dXMsL45YsSzzSDZCxiHXAQp/qHrucOq5gEHncTA3xDxnd5+sZcoQp+N1ZbieAaB8r/VUCG0gqseOg== 648 | dependencies: 649 | "@babel/helper-get-function-arity" "^7.10.1" 650 | "@babel/helper-plugin-utils" "^7.10.1" 651 | 652 | "@babel/plugin-transform-property-literals@^7.10.1": 653 | version "7.10.1" 654 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.10.1.tgz#cffc7315219230ed81dc53e4625bf86815b6050d" 655 | integrity sha512-Kr6+mgag8auNrgEpbfIWzdXYOvqDHZOF0+Bx2xh4H2EDNwcbRb9lY6nkZg8oSjsX+DH9Ebxm9hOqtKW+gRDeNA== 656 | dependencies: 657 | "@babel/helper-plugin-utils" "^7.10.1" 658 | 659 | "@babel/plugin-transform-react-jsx@^7.10.1": 660 | version "7.10.3" 661 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.10.3.tgz#c07ad86b7c159287c89b643f201f59536231048e" 662 | integrity sha512-Y21E3rZmWICRJnvbGVmDLDZ8HfNDIwjGF3DXYHx1le0v0mIHCs0Gv5SavyW5Z/jgAHLaAoJPiwt+Dr7/zZKcOQ== 663 | dependencies: 664 | "@babel/helper-builder-react-jsx" "^7.10.3" 665 | "@babel/helper-builder-react-jsx-experimental" "^7.10.1" 666 | "@babel/helper-plugin-utils" "^7.10.3" 667 | "@babel/plugin-syntax-jsx" "^7.10.1" 668 | 669 | "@babel/plugin-transform-regenerator@^7.10.1", "@babel/plugin-transform-regenerator@^7.10.3": 670 | version "7.10.3" 671 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.10.3.tgz#6ec680f140a5ceefd291c221cb7131f6d7e8cb6d" 672 | integrity sha512-H5kNeW0u8mbk0qa1jVIVTeJJL6/TJ81ltD4oyPx0P499DhMJrTmmIFCmJ3QloGpQG8K9symccB7S7SJpCKLwtw== 673 | dependencies: 674 | regenerator-transform "^0.14.2" 675 | 676 | "@babel/plugin-transform-reserved-words@^7.10.1": 677 | version "7.10.1" 678 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.10.1.tgz#0fc1027312b4d1c3276a57890c8ae3bcc0b64a86" 679 | integrity sha512-qN1OMoE2nuqSPmpTqEM7OvJ1FkMEV+BjVeZZm9V9mq/x1JLKQ4pcv8riZJMNN3u2AUGl0ouOMjRr2siecvHqUQ== 680 | dependencies: 681 | "@babel/helper-plugin-utils" "^7.10.1" 682 | 683 | "@babel/plugin-transform-shorthand-properties@^7.10.1": 684 | version "7.10.1" 685 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.10.1.tgz#e8b54f238a1ccbae482c4dce946180ae7b3143f3" 686 | integrity sha512-AR0E/lZMfLstScFwztApGeyTHJ5u3JUKMjneqRItWeEqDdHWZwAOKycvQNCasCK/3r5YXsuNG25funcJDu7Y2g== 687 | dependencies: 688 | "@babel/helper-plugin-utils" "^7.10.1" 689 | 690 | "@babel/plugin-transform-spread@^7.10.1": 691 | version "7.10.1" 692 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.10.1.tgz#0c6d618a0c4461a274418460a28c9ccf5239a7c8" 693 | integrity sha512-8wTPym6edIrClW8FI2IoaePB91ETOtg36dOkj3bYcNe7aDMN2FXEoUa+WrmPc4xa1u2PQK46fUX2aCb+zo9rfw== 694 | dependencies: 695 | "@babel/helper-plugin-utils" "^7.10.1" 696 | 697 | "@babel/plugin-transform-sticky-regex@^7.10.1": 698 | version "7.10.1" 699 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.10.1.tgz#90fc89b7526228bed9842cff3588270a7a393b00" 700 | integrity sha512-j17ojftKjrL7ufX8ajKvwRilwqTok4q+BjkknmQw9VNHnItTyMP5anPFzxFJdCQs7clLcWpCV3ma+6qZWLnGMA== 701 | dependencies: 702 | "@babel/helper-plugin-utils" "^7.10.1" 703 | "@babel/helper-regex" "^7.10.1" 704 | 705 | "@babel/plugin-transform-template-literals@^7.10.3": 706 | version "7.10.3" 707 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.10.3.tgz#69d39b3d44b31e7b4864173322565894ce939b25" 708 | integrity sha512-yaBn9OpxQra/bk0/CaA4wr41O0/Whkg6nqjqApcinxM7pro51ojhX6fv1pimAnVjVfDy14K0ULoRL70CA9jWWA== 709 | dependencies: 710 | "@babel/helper-annotate-as-pure" "^7.10.1" 711 | "@babel/helper-plugin-utils" "^7.10.3" 712 | 713 | "@babel/plugin-transform-typeof-symbol@^7.10.1": 714 | version "7.10.1" 715 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.10.1.tgz#60c0239b69965d166b80a84de7315c1bc7e0bb0e" 716 | integrity sha512-qX8KZcmbvA23zDi+lk9s6hC1FM7jgLHYIjuLgULgc8QtYnmB3tAVIYkNoKRQ75qWBeyzcoMoK8ZQmogGtC/w0g== 717 | dependencies: 718 | "@babel/helper-plugin-utils" "^7.10.1" 719 | 720 | "@babel/plugin-transform-unicode-escapes@^7.10.1": 721 | version "7.10.1" 722 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.10.1.tgz#add0f8483dab60570d9e03cecef6c023aa8c9940" 723 | integrity sha512-zZ0Poh/yy1d4jeDWpx/mNwbKJVwUYJX73q+gyh4bwtG0/iUlzdEu0sLMda8yuDFS6LBQlT/ST1SJAR6zYwXWgw== 724 | dependencies: 725 | "@babel/helper-plugin-utils" "^7.10.1" 726 | 727 | "@babel/plugin-transform-unicode-regex@^7.10.1": 728 | version "7.10.1" 729 | resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.10.1.tgz#6b58f2aea7b68df37ac5025d9c88752443a6b43f" 730 | integrity sha512-Y/2a2W299k0VIUdbqYm9X2qS6fE0CUBhhiPpimK6byy7OJ/kORLlIX+J6UrjgNu5awvs62k+6RSslxhcvVw2Tw== 731 | dependencies: 732 | "@babel/helper-create-regexp-features-plugin" "^7.10.1" 733 | "@babel/helper-plugin-utils" "^7.10.1" 734 | 735 | "@babel/preset-env@^7.10.2": 736 | version "7.10.3" 737 | resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.10.3.tgz#3e58c9861bbd93b6a679987c7e4bd365c56c80c9" 738 | integrity sha512-jHaSUgiewTmly88bJtMHbOd1bJf2ocYxb5BWKSDQIP5tmgFuS/n0gl+nhSrYDhT33m0vPxp+rP8oYYgPgMNQlg== 739 | dependencies: 740 | "@babel/compat-data" "^7.10.3" 741 | "@babel/helper-compilation-targets" "^7.10.2" 742 | "@babel/helper-module-imports" "^7.10.3" 743 | "@babel/helper-plugin-utils" "^7.10.3" 744 | "@babel/plugin-proposal-async-generator-functions" "^7.10.3" 745 | "@babel/plugin-proposal-class-properties" "^7.10.1" 746 | "@babel/plugin-proposal-dynamic-import" "^7.10.1" 747 | "@babel/plugin-proposal-json-strings" "^7.10.1" 748 | "@babel/plugin-proposal-nullish-coalescing-operator" "^7.10.1" 749 | "@babel/plugin-proposal-numeric-separator" "^7.10.1" 750 | "@babel/plugin-proposal-object-rest-spread" "^7.10.3" 751 | "@babel/plugin-proposal-optional-catch-binding" "^7.10.1" 752 | "@babel/plugin-proposal-optional-chaining" "^7.10.3" 753 | "@babel/plugin-proposal-private-methods" "^7.10.1" 754 | "@babel/plugin-proposal-unicode-property-regex" "^7.10.1" 755 | "@babel/plugin-syntax-async-generators" "^7.8.0" 756 | "@babel/plugin-syntax-class-properties" "^7.10.1" 757 | "@babel/plugin-syntax-dynamic-import" "^7.8.0" 758 | "@babel/plugin-syntax-json-strings" "^7.8.0" 759 | "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.0" 760 | "@babel/plugin-syntax-numeric-separator" "^7.10.1" 761 | "@babel/plugin-syntax-object-rest-spread" "^7.8.0" 762 | "@babel/plugin-syntax-optional-catch-binding" "^7.8.0" 763 | "@babel/plugin-syntax-optional-chaining" "^7.8.0" 764 | "@babel/plugin-syntax-top-level-await" "^7.10.1" 765 | "@babel/plugin-transform-arrow-functions" "^7.10.1" 766 | "@babel/plugin-transform-async-to-generator" "^7.10.1" 767 | "@babel/plugin-transform-block-scoped-functions" "^7.10.1" 768 | "@babel/plugin-transform-block-scoping" "^7.10.1" 769 | "@babel/plugin-transform-classes" "^7.10.3" 770 | "@babel/plugin-transform-computed-properties" "^7.10.3" 771 | "@babel/plugin-transform-destructuring" "^7.10.1" 772 | "@babel/plugin-transform-dotall-regex" "^7.10.1" 773 | "@babel/plugin-transform-duplicate-keys" "^7.10.1" 774 | "@babel/plugin-transform-exponentiation-operator" "^7.10.1" 775 | "@babel/plugin-transform-for-of" "^7.10.1" 776 | "@babel/plugin-transform-function-name" "^7.10.1" 777 | "@babel/plugin-transform-literals" "^7.10.1" 778 | "@babel/plugin-transform-member-expression-literals" "^7.10.1" 779 | "@babel/plugin-transform-modules-amd" "^7.10.1" 780 | "@babel/plugin-transform-modules-commonjs" "^7.10.1" 781 | "@babel/plugin-transform-modules-systemjs" "^7.10.3" 782 | "@babel/plugin-transform-modules-umd" "^7.10.1" 783 | "@babel/plugin-transform-named-capturing-groups-regex" "^7.10.3" 784 | "@babel/plugin-transform-new-target" "^7.10.1" 785 | "@babel/plugin-transform-object-super" "^7.10.1" 786 | "@babel/plugin-transform-parameters" "^7.10.1" 787 | "@babel/plugin-transform-property-literals" "^7.10.1" 788 | "@babel/plugin-transform-regenerator" "^7.10.3" 789 | "@babel/plugin-transform-reserved-words" "^7.10.1" 790 | "@babel/plugin-transform-shorthand-properties" "^7.10.1" 791 | "@babel/plugin-transform-spread" "^7.10.1" 792 | "@babel/plugin-transform-sticky-regex" "^7.10.1" 793 | "@babel/plugin-transform-template-literals" "^7.10.3" 794 | "@babel/plugin-transform-typeof-symbol" "^7.10.1" 795 | "@babel/plugin-transform-unicode-escapes" "^7.10.1" 796 | "@babel/plugin-transform-unicode-regex" "^7.10.1" 797 | "@babel/preset-modules" "^0.1.3" 798 | "@babel/types" "^7.10.3" 799 | browserslist "^4.12.0" 800 | core-js-compat "^3.6.2" 801 | invariant "^2.2.2" 802 | levenary "^1.1.1" 803 | semver "^5.5.0" 804 | 805 | "@babel/preset-flow@^7.10.1": 806 | version "7.10.1" 807 | resolved "https://registry.yarnpkg.com/@babel/preset-flow/-/preset-flow-7.10.1.tgz#29498ec23baf9aa6dae50c568ceba09d71692b82" 808 | integrity sha512-FuQsibb5PaX07fF1XUO5gjjxdEZbcJv8+ugPDaeFEsBIvUTib8hCtEJow/c2F0jq9ZUjpHCQ8IQKNHRvKE1kJQ== 809 | dependencies: 810 | "@babel/helper-plugin-utils" "^7.10.1" 811 | "@babel/plugin-transform-flow-strip-types" "^7.10.1" 812 | 813 | "@babel/preset-modules@^0.1.3": 814 | version "0.1.3" 815 | resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.3.tgz#13242b53b5ef8c883c3cf7dddd55b36ce80fbc72" 816 | integrity sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg== 817 | dependencies: 818 | "@babel/helper-plugin-utils" "^7.0.0" 819 | "@babel/plugin-proposal-unicode-property-regex" "^7.4.4" 820 | "@babel/plugin-transform-dotall-regex" "^7.4.4" 821 | "@babel/types" "^7.4.4" 822 | esutils "^2.0.2" 823 | 824 | "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4": 825 | version "7.10.3" 826 | resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.10.3.tgz#670d002655a7c366540c67f6fd3342cd09500364" 827 | integrity sha512-RzGO0RLSdokm9Ipe/YD+7ww8X2Ro79qiXZF3HU9ljrM+qnJmH1Vqth+hbiQZy761LnMJTMitHDuKVYTk3k4dLw== 828 | dependencies: 829 | regenerator-runtime "^0.13.4" 830 | 831 | "@babel/template@^7.10.1", "@babel/template@^7.10.3": 832 | version "7.10.3" 833 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.10.3.tgz#4d13bc8e30bf95b0ce9d175d30306f42a2c9a7b8" 834 | integrity sha512-5BjI4gdtD+9fHZUsaxPHPNpwa+xRkDO7c7JbhYn2afvrkDu5SfAAbi9AIMXw2xEhO/BR35TqiW97IqNvCo/GqA== 835 | dependencies: 836 | "@babel/code-frame" "^7.10.3" 837 | "@babel/parser" "^7.10.3" 838 | "@babel/types" "^7.10.3" 839 | 840 | "@babel/traverse@^7.10.1", "@babel/traverse@^7.10.3": 841 | version "7.10.3" 842 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.10.3.tgz#0b01731794aa7b77b214bcd96661f18281155d7e" 843 | integrity sha512-qO6623eBFhuPm0TmmrUFMT1FulCmsSeJuVGhiLodk2raUDFhhTECLd9E9jC4LBIWziqt4wgF6KuXE4d+Jz9yug== 844 | dependencies: 845 | "@babel/code-frame" "^7.10.3" 846 | "@babel/generator" "^7.10.3" 847 | "@babel/helper-function-name" "^7.10.3" 848 | "@babel/helper-split-export-declaration" "^7.10.1" 849 | "@babel/parser" "^7.10.3" 850 | "@babel/types" "^7.10.3" 851 | debug "^4.1.0" 852 | globals "^11.1.0" 853 | lodash "^4.17.13" 854 | 855 | "@babel/types@^7.10.1", "@babel/types@^7.10.3", "@babel/types@^7.4.4": 856 | version "7.10.3" 857 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.10.3.tgz#6535e3b79fea86a6b09e012ea8528f935099de8e" 858 | integrity sha512-nZxaJhBXBQ8HVoIcGsf9qWep3Oh3jCENK54V4mRF7qaJabVsAYdbTtmSD8WmAp1R6ytPiu5apMwSXyxB1WlaBA== 859 | dependencies: 860 | "@babel/helper-validator-identifier" "^7.10.3" 861 | lodash "^4.17.13" 862 | to-fast-properties "^2.0.0" 863 | 864 | "@rollup/plugin-alias@^3.1.1": 865 | version "3.1.1" 866 | resolved "https://registry.yarnpkg.com/@rollup/plugin-alias/-/plugin-alias-3.1.1.tgz#bb96cf37fefeb0a953a6566c284855c7d1cd290c" 867 | integrity sha512-hNcQY4bpBUIvxekd26DBPgF7BT4mKVNDF5tBG4Zi+3IgwLxGYRY0itHs9D0oLVwXM5pvJDWJlBQro+au8WaUWw== 868 | dependencies: 869 | slash "^3.0.0" 870 | 871 | "@rollup/plugin-babel@^5.0.3": 872 | version "5.0.3" 873 | resolved "https://registry.yarnpkg.com/@rollup/plugin-babel/-/plugin-babel-5.0.3.tgz#8d416865b0da79faf14e07c8d233abe0eac0753d" 874 | integrity sha512-NlaPf4E6YFxeOCbqc+A2PTkB1BSy3rfKu6EJuQ1MGhMHpTVvMqKi6Rf0DlwtnEsTNK9LueUgsGEgp5Occ4KDVA== 875 | dependencies: 876 | "@babel/helper-module-imports" "^7.7.4" 877 | "@rollup/pluginutils" "^3.0.8" 878 | 879 | "@rollup/plugin-commonjs@^13.0.0": 880 | version "13.0.0" 881 | resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-13.0.0.tgz#8a1d684ba6848afe8b9e3d85649d4b2f6f7217ec" 882 | integrity sha512-Anxc3qgkAi7peAyesTqGYidG5GRim9jtg8xhmykNaZkImtvjA7Wsqep08D2mYsqw1IF7rA3lYfciLgzUSgRoqw== 883 | dependencies: 884 | "@rollup/pluginutils" "^3.0.8" 885 | commondir "^1.0.1" 886 | estree-walker "^1.0.1" 887 | glob "^7.1.2" 888 | is-reference "^1.1.2" 889 | magic-string "^0.25.2" 890 | resolve "^1.11.0" 891 | 892 | "@rollup/plugin-json@^4.1.0": 893 | version "4.1.0" 894 | resolved "https://registry.yarnpkg.com/@rollup/plugin-json/-/plugin-json-4.1.0.tgz#54e09867ae6963c593844d8bd7a9c718294496f3" 895 | integrity sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw== 896 | dependencies: 897 | "@rollup/pluginutils" "^3.0.8" 898 | 899 | "@rollup/plugin-node-resolve@^6.1.0": 900 | version "6.1.0" 901 | resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-6.1.0.tgz#0d2909f4bf606ae34d43a9bc8be06a9b0c850cf0" 902 | integrity sha512-Cv7PDIvxdE40SWilY5WgZpqfIUEaDxFxs89zCAHjqyRwlTSuql4M5hjIuc5QYJkOH0/vyiyNXKD72O+LhRipGA== 903 | dependencies: 904 | "@rollup/pluginutils" "^3.0.0" 905 | "@types/resolve" "0.0.8" 906 | builtin-modules "^3.1.0" 907 | is-module "^1.0.0" 908 | resolve "^1.11.1" 909 | 910 | "@rollup/pluginutils@^3.0.0", "@rollup/pluginutils@^3.0.8": 911 | version "3.1.0" 912 | resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" 913 | integrity sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg== 914 | dependencies: 915 | "@types/estree" "0.0.39" 916 | estree-walker "^1.0.1" 917 | picomatch "^2.2.2" 918 | 919 | "@types/color-name@^1.1.1": 920 | version "1.1.1" 921 | resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0" 922 | integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ== 923 | 924 | "@types/estree@*", "@types/estree@0.0.44": 925 | version "0.0.44" 926 | resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.44.tgz#980cc5a29a3ef3bea6ff1f7d021047d7ea575e21" 927 | integrity sha512-iaIVzr+w2ZJ5HkidlZ3EJM8VTZb2MJLCjw3V+505yVts0gRC4UMvjw0d1HPtGqI/HQC/KdsYtayfzl+AXY2R8g== 928 | 929 | "@types/estree@0.0.39": 930 | version "0.0.39" 931 | resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" 932 | integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw== 933 | 934 | "@types/node@*": 935 | version "14.0.13" 936 | resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.13.tgz#ee1128e881b874c371374c1f72201893616417c9" 937 | integrity sha512-rouEWBImiRaSJsVA+ITTFM6ZxibuAlTuNOCyxVbwreu6k6+ujs7DfnU9o+PShFhET78pMBl3eH+AGSI5eOTkPA== 938 | 939 | "@types/node@^10.14.17": 940 | version "10.17.26" 941 | resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.26.tgz#a8a119960bff16b823be4c617da028570779bcfd" 942 | integrity sha512-myMwkO2Cr82kirHY8uknNRHEVtn0wV3DTQfkrjx17jmkstDRZ24gNUdl8AHXVyVclTYI/bNjgTPTAWvWLqXqkw== 943 | 944 | "@types/parse-json@^4.0.0": 945 | version "4.0.0" 946 | resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" 947 | integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== 948 | 949 | "@types/q@^1.5.1": 950 | version "1.5.4" 951 | resolved "https://registry.yarnpkg.com/@types/q/-/q-1.5.4.tgz#15925414e0ad2cd765bfef58842f7e26a7accb24" 952 | integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== 953 | 954 | "@types/resolve@0.0.8": 955 | version "0.0.8" 956 | resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-0.0.8.tgz#f26074d238e02659e323ce1a13d041eee280e194" 957 | integrity sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ== 958 | dependencies: 959 | "@types/node" "*" 960 | 961 | "@types/webrtc@^0.0.25": 962 | version "0.0.25" 963 | resolved "https://registry.yarnpkg.com/@types/webrtc/-/webrtc-0.0.25.tgz#bd2b4e7b4c13250b3d58439623f2b9adfd7dee9e" 964 | integrity sha512-ep/e+p2uUKV1h96GBgRhwomrBch/bPDHPOKbCHODLGRUDuuKe2s7sErlFVKw+5BYUzvpxSmUNqoadaZ44MePoQ== 965 | 966 | acorn@^7.1.0: 967 | version "7.3.1" 968 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.3.1.tgz#85010754db53c3fbaf3b9ea3e083aa5c5d147ffd" 969 | integrity sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA== 970 | 971 | alphanum-sort@^1.0.0: 972 | version "1.0.2" 973 | resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" 974 | integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM= 975 | 976 | ansi-escapes@^1.1.0: 977 | version "1.4.0" 978 | resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" 979 | integrity sha1-06ioOzGapneTZisT52HHkRQiMG4= 980 | 981 | ansi-regex@^2.0.0: 982 | version "2.1.1" 983 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" 984 | integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= 985 | 986 | ansi-regex@^3.0.0: 987 | version "3.0.0" 988 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" 989 | integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= 990 | 991 | ansi-styles@^2.2.1: 992 | version "2.2.1" 993 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" 994 | integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= 995 | 996 | ansi-styles@^3.2.1: 997 | version "3.2.1" 998 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 999 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 1000 | dependencies: 1001 | color-convert "^1.9.0" 1002 | 1003 | ansi-styles@^4.1.0: 1004 | version "4.2.1" 1005 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.2.1.tgz#90ae75c424d008d2624c5bf29ead3177ebfcf359" 1006 | integrity sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA== 1007 | dependencies: 1008 | "@types/color-name" "^1.1.1" 1009 | color-convert "^2.0.1" 1010 | 1011 | argparse@^1.0.7: 1012 | version "1.0.10" 1013 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" 1014 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== 1015 | dependencies: 1016 | sprintf-js "~1.0.2" 1017 | 1018 | asyncro@^3.0.0: 1019 | version "3.0.0" 1020 | resolved "https://registry.yarnpkg.com/asyncro/-/asyncro-3.0.0.tgz#3c7a732e263bc4a42499042f48d7d858e9c0134e" 1021 | integrity sha512-nEnWYfrBmA3taTiuiOoZYmgJ/CNrSoQLeLs29SeLcPu60yaw/mHDBHV0iOZ051fTvsTHxpCY+gXibqT9wbQYfg== 1022 | 1023 | automerge@^0.14.1: 1024 | version "0.14.1" 1025 | resolved "https://registry.yarnpkg.com/automerge/-/automerge-0.14.1.tgz#ba127917bd660bb68fd6a438d8d5f5ab49f5a60b" 1026 | integrity sha512-9UtszKSqxVxXesbHxS6Wv7fPjmImawIlHzKs0O1DC5zcS4cMHB5eDeP6D/rVh5z4nMLfYSWSl2UufR7cvN3JnQ== 1027 | dependencies: 1028 | immutable "^3.8.2" 1029 | transit-immutable-js "^0.7.0" 1030 | transit-js "^0.8.861" 1031 | uuid "^3.4.0" 1032 | 1033 | autoprefixer@^9.8.0: 1034 | version "9.8.2" 1035 | resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.8.2.tgz#7347396ee576b18687041bfbacd76d78e27baa56" 1036 | integrity sha512-9UwMMU8Rg7Fj0c55mbOpXrr/2WrRqoOwOlLNTyyYt+nhiyQdIBWipp5XWzt+Lge8r3DK5y+EHMc1OBf8VpZA6Q== 1037 | dependencies: 1038 | browserslist "^4.12.0" 1039 | caniuse-lite "^1.0.30001084" 1040 | kleur "^4.0.1" 1041 | normalize-range "^0.1.2" 1042 | num2fraction "^1.2.2" 1043 | postcss "^7.0.32" 1044 | postcss-value-parser "^4.1.0" 1045 | 1046 | babel-plugin-dynamic-import-node@^2.3.3: 1047 | version "2.3.3" 1048 | resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3" 1049 | integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ== 1050 | dependencies: 1051 | object.assign "^4.1.0" 1052 | 1053 | babel-plugin-macros@^2.8.0: 1054 | version "2.8.0" 1055 | resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138" 1056 | integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg== 1057 | dependencies: 1058 | "@babel/runtime" "^7.7.2" 1059 | cosmiconfig "^6.0.0" 1060 | resolve "^1.12.0" 1061 | 1062 | babel-plugin-transform-async-to-promises@^0.8.15: 1063 | version "0.8.15" 1064 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-promises/-/babel-plugin-transform-async-to-promises-0.8.15.tgz#13b6d8ef13676b4e3c576d3600b85344bb1ba346" 1065 | integrity sha512-fDXP68ZqcinZO2WCiimCL9zhGjGXOnn3D33zvbh+yheZ/qOrNVVDDIBtAaM3Faz8TRvQzHiRKsu3hfrBAhEncQ== 1066 | 1067 | babel-plugin-transform-replace-expressions@^0.2.0: 1068 | version "0.2.0" 1069 | resolved "https://registry.yarnpkg.com/babel-plugin-transform-replace-expressions/-/babel-plugin-transform-replace-expressions-0.2.0.tgz#59cba8df4b4a675e7c78cd21548f8e7685bbc30d" 1070 | integrity sha512-Eh1rRd9hWEYgkgoA3D0kGp7xJ/wgVshgsqmq60iC4HVWD+Lux+fNHSHBa2v1Hsv+dHflShC71qKhiH40OiPtDA== 1071 | dependencies: 1072 | "@babel/parser" "^7.3.3" 1073 | 1074 | babel-polyfill@6.23.0: 1075 | version "6.23.0" 1076 | resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d" 1077 | integrity sha1-g2TKYt+Or7gwSZ9pkXdGbDsDSZ0= 1078 | dependencies: 1079 | babel-runtime "^6.22.0" 1080 | core-js "^2.4.0" 1081 | regenerator-runtime "^0.10.0" 1082 | 1083 | babel-runtime@^6.22.0: 1084 | version "6.26.0" 1085 | resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" 1086 | integrity sha1-llxwWGaOgrVde/4E/yM3vItWR/4= 1087 | dependencies: 1088 | core-js "^2.4.0" 1089 | regenerator-runtime "^0.11.0" 1090 | 1091 | balanced-match@^1.0.0: 1092 | version "1.0.0" 1093 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 1094 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 1095 | 1096 | big.js@^5.2.2: 1097 | version "5.2.2" 1098 | resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" 1099 | integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== 1100 | 1101 | boolbase@^1.0.0, boolbase@~1.0.0: 1102 | version "1.0.0" 1103 | resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" 1104 | integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= 1105 | 1106 | brace-expansion@^1.1.7: 1107 | version "1.1.11" 1108 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 1109 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 1110 | dependencies: 1111 | balanced-match "^1.0.0" 1112 | concat-map "0.0.1" 1113 | 1114 | brotli-size@^4.0.0: 1115 | version "4.0.0" 1116 | resolved "https://registry.yarnpkg.com/brotli-size/-/brotli-size-4.0.0.tgz#a05ee3faad3c0e700a2f2da826ba6b4d76e69e5e" 1117 | integrity sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA== 1118 | dependencies: 1119 | duplexer "0.1.1" 1120 | 1121 | browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.8.5: 1122 | version "4.12.0" 1123 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.12.0.tgz#06c6d5715a1ede6c51fc39ff67fd647f740b656d" 1124 | integrity sha512-UH2GkcEDSI0k/lRkuDSzFl9ZZ87skSy9w2XAn1MsZnL+4c4rqbBd3e82UWHbYDpztABrPBhZsTEeuxVfHppqDg== 1125 | dependencies: 1126 | caniuse-lite "^1.0.30001043" 1127 | electron-to-chromium "^1.3.413" 1128 | node-releases "^1.1.53" 1129 | pkg-up "^2.0.0" 1130 | 1131 | buffer-from@^1.0.0: 1132 | version "1.1.1" 1133 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" 1134 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== 1135 | 1136 | builtin-modules@^3.1.0: 1137 | version "3.1.0" 1138 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.1.0.tgz#aad97c15131eb76b65b50ef208e7584cd76a7484" 1139 | integrity sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw== 1140 | 1141 | caller-callsite@^2.0.0: 1142 | version "2.0.0" 1143 | resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" 1144 | integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= 1145 | dependencies: 1146 | callsites "^2.0.0" 1147 | 1148 | caller-path@^2.0.0: 1149 | version "2.0.0" 1150 | resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" 1151 | integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= 1152 | dependencies: 1153 | caller-callsite "^2.0.0" 1154 | 1155 | callsites@^2.0.0: 1156 | version "2.0.0" 1157 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" 1158 | integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= 1159 | 1160 | callsites@^3.0.0: 1161 | version "3.1.0" 1162 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 1163 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 1164 | 1165 | camelcase@^5.3.1: 1166 | version "5.3.1" 1167 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 1168 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 1169 | 1170 | caniuse-api@^3.0.0: 1171 | version "3.0.0" 1172 | resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0" 1173 | integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw== 1174 | dependencies: 1175 | browserslist "^4.0.0" 1176 | caniuse-lite "^1.0.0" 1177 | lodash.memoize "^4.1.2" 1178 | lodash.uniq "^4.5.0" 1179 | 1180 | caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001043, caniuse-lite@^1.0.30001084: 1181 | version "1.0.30001085" 1182 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001085.tgz#bed28bd51ff7425d33ee23e730c7f3b703711db6" 1183 | integrity sha512-x0YRFRE0pmOD90z+9Xk7jwO58p4feVNXP+U8kWV+Uo/HADyrgESlepzIkUqPgaXkpyceZU6siM1gsK7sHgplqA== 1184 | 1185 | chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.3: 1186 | version "1.1.3" 1187 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" 1188 | integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= 1189 | dependencies: 1190 | ansi-styles "^2.2.1" 1191 | escape-string-regexp "^1.0.2" 1192 | has-ansi "^2.0.0" 1193 | strip-ansi "^3.0.0" 1194 | supports-color "^2.0.0" 1195 | 1196 | chalk@^2.0.0, chalk@^2.4.1, chalk@^2.4.2: 1197 | version "2.4.2" 1198 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 1199 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 1200 | dependencies: 1201 | ansi-styles "^3.2.1" 1202 | escape-string-regexp "^1.0.5" 1203 | supports-color "^5.3.0" 1204 | 1205 | chalk@^4.0.0: 1206 | version "4.1.0" 1207 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" 1208 | integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== 1209 | dependencies: 1210 | ansi-styles "^4.1.0" 1211 | supports-color "^7.1.0" 1212 | 1213 | chardet@^0.4.0: 1214 | version "0.4.2" 1215 | resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" 1216 | integrity sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I= 1217 | 1218 | cli-cursor@^2.1.0: 1219 | version "2.1.0" 1220 | resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" 1221 | integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= 1222 | dependencies: 1223 | restore-cursor "^2.0.0" 1224 | 1225 | cli-width@^2.0.0: 1226 | version "2.2.1" 1227 | resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" 1228 | integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== 1229 | 1230 | coa@^2.0.2: 1231 | version "2.0.2" 1232 | resolved "https://registry.yarnpkg.com/coa/-/coa-2.0.2.tgz#43f6c21151b4ef2bf57187db0d73de229e3e7ec3" 1233 | integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== 1234 | dependencies: 1235 | "@types/q" "^1.5.1" 1236 | chalk "^2.4.1" 1237 | q "^1.1.2" 1238 | 1239 | color-convert@^1.9.0, color-convert@^1.9.1: 1240 | version "1.9.3" 1241 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 1242 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 1243 | dependencies: 1244 | color-name "1.1.3" 1245 | 1246 | color-convert@^2.0.1: 1247 | version "2.0.1" 1248 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" 1249 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 1250 | dependencies: 1251 | color-name "~1.1.4" 1252 | 1253 | color-name@1.1.3: 1254 | version "1.1.3" 1255 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 1256 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 1257 | 1258 | color-name@^1.0.0, color-name@~1.1.4: 1259 | version "1.1.4" 1260 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 1261 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 1262 | 1263 | color-string@^1.5.2: 1264 | version "1.5.3" 1265 | resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc" 1266 | integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw== 1267 | dependencies: 1268 | color-name "^1.0.0" 1269 | simple-swizzle "^0.2.2" 1270 | 1271 | color@^3.0.0: 1272 | version "3.1.2" 1273 | resolved "https://registry.yarnpkg.com/color/-/color-3.1.2.tgz#68148e7f85d41ad7649c5fa8c8106f098d229e10" 1274 | integrity sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg== 1275 | dependencies: 1276 | color-convert "^1.9.1" 1277 | color-string "^1.5.2" 1278 | 1279 | commander@^2.20.0: 1280 | version "2.20.3" 1281 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" 1282 | integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== 1283 | 1284 | commondir@^1.0.1: 1285 | version "1.0.1" 1286 | resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" 1287 | integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= 1288 | 1289 | concat-map@0.0.1: 1290 | version "0.0.1" 1291 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 1292 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 1293 | 1294 | concat-with-sourcemaps@^1.1.0: 1295 | version "1.1.0" 1296 | resolved "https://registry.yarnpkg.com/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz#d4ea93f05ae25790951b99e7b3b09e3908a4082e" 1297 | integrity sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg== 1298 | dependencies: 1299 | source-map "^0.6.1" 1300 | 1301 | convert-source-map@^1.7.0: 1302 | version "1.7.0" 1303 | resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.7.0.tgz#17a2cb882d7f77d3490585e2ce6c524424a3a442" 1304 | integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== 1305 | dependencies: 1306 | safe-buffer "~5.1.1" 1307 | 1308 | core-js-compat@^3.6.2: 1309 | version "3.6.5" 1310 | resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.5.tgz#2a51d9a4e25dfd6e690251aa81f99e3c05481f1c" 1311 | integrity sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng== 1312 | dependencies: 1313 | browserslist "^4.8.5" 1314 | semver "7.0.0" 1315 | 1316 | core-js@^2.4.0: 1317 | version "2.6.11" 1318 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c" 1319 | integrity sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg== 1320 | 1321 | cosmiconfig@^5.0.0: 1322 | version "5.2.1" 1323 | resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" 1324 | integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== 1325 | dependencies: 1326 | import-fresh "^2.0.0" 1327 | is-directory "^0.3.1" 1328 | js-yaml "^3.13.1" 1329 | parse-json "^4.0.0" 1330 | 1331 | cosmiconfig@^6.0.0: 1332 | version "6.0.0" 1333 | resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz#da4fee853c52f6b1e6935f41c1a2fc50bd4a9982" 1334 | integrity sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg== 1335 | dependencies: 1336 | "@types/parse-json" "^4.0.0" 1337 | import-fresh "^3.1.0" 1338 | parse-json "^5.0.0" 1339 | path-type "^4.0.0" 1340 | yaml "^1.7.2" 1341 | 1342 | css-color-names@0.0.4, css-color-names@^0.0.4: 1343 | version "0.0.4" 1344 | resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" 1345 | integrity sha1-gIrcLnnPhHOAabZGyyDsJ762KeA= 1346 | 1347 | css-declaration-sorter@^4.0.1: 1348 | version "4.0.1" 1349 | resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz#c198940f63a76d7e36c1e71018b001721054cb22" 1350 | integrity sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA== 1351 | dependencies: 1352 | postcss "^7.0.1" 1353 | timsort "^0.3.0" 1354 | 1355 | css-modules-loader-core@^1.1.0: 1356 | version "1.1.0" 1357 | resolved "https://registry.yarnpkg.com/css-modules-loader-core/-/css-modules-loader-core-1.1.0.tgz#5908668294a1becd261ae0a4ce21b0b551f21d16" 1358 | integrity sha1-WQhmgpShvs0mGuCkziGwtVHyHRY= 1359 | dependencies: 1360 | icss-replace-symbols "1.1.0" 1361 | postcss "6.0.1" 1362 | postcss-modules-extract-imports "1.1.0" 1363 | postcss-modules-local-by-default "1.2.0" 1364 | postcss-modules-scope "1.1.0" 1365 | postcss-modules-values "1.3.0" 1366 | 1367 | css-select-base-adapter@^0.1.1: 1368 | version "0.1.1" 1369 | resolved "https://registry.yarnpkg.com/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz#3b2ff4972cc362ab88561507a95408a1432135d7" 1370 | integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== 1371 | 1372 | css-select@^2.0.0: 1373 | version "2.1.0" 1374 | resolved "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz#6a34653356635934a81baca68d0255432105dbef" 1375 | integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== 1376 | dependencies: 1377 | boolbase "^1.0.0" 1378 | css-what "^3.2.1" 1379 | domutils "^1.7.0" 1380 | nth-check "^1.0.2" 1381 | 1382 | css-selector-tokenizer@^0.7.0: 1383 | version "0.7.2" 1384 | resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.2.tgz#11e5e27c9a48d90284f22d45061c303d7a25ad87" 1385 | integrity sha512-yj856NGuAymN6r8bn8/Jl46pR+OC3eEvAhfGYDUe7YPtTPAYrSSw4oAniZ9Y8T5B92hjhwTBLUen0/vKPxf6pw== 1386 | dependencies: 1387 | cssesc "^3.0.0" 1388 | fastparse "^1.1.2" 1389 | regexpu-core "^4.6.0" 1390 | 1391 | css-tree@1.0.0-alpha.37: 1392 | version "1.0.0-alpha.37" 1393 | resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz#98bebd62c4c1d9f960ec340cf9f7522e30709a22" 1394 | integrity sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg== 1395 | dependencies: 1396 | mdn-data "2.0.4" 1397 | source-map "^0.6.1" 1398 | 1399 | css-tree@1.0.0-alpha.39: 1400 | version "1.0.0-alpha.39" 1401 | resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.39.tgz#2bff3ffe1bb3f776cf7eefd91ee5cba77a149eeb" 1402 | integrity sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA== 1403 | dependencies: 1404 | mdn-data "2.0.6" 1405 | source-map "^0.6.1" 1406 | 1407 | css-what@^3.2.1: 1408 | version "3.3.0" 1409 | resolved "https://registry.yarnpkg.com/css-what/-/css-what-3.3.0.tgz#10fec696a9ece2e591ac772d759aacabac38cd39" 1410 | integrity sha512-pv9JPyatiPaQ6pf4OvD/dbfm0o5LviWmwxNWzblYf/1u9QZd0ihV+PMwy5jdQWQ3349kZmKEx9WXuSka2dM4cg== 1411 | 1412 | cssesc@^3.0.0: 1413 | version "3.0.0" 1414 | resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" 1415 | integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== 1416 | 1417 | cssnano-preset-default@^4.0.7: 1418 | version "4.0.7" 1419 | resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz#51ec662ccfca0f88b396dcd9679cdb931be17f76" 1420 | integrity sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA== 1421 | dependencies: 1422 | css-declaration-sorter "^4.0.1" 1423 | cssnano-util-raw-cache "^4.0.1" 1424 | postcss "^7.0.0" 1425 | postcss-calc "^7.0.1" 1426 | postcss-colormin "^4.0.3" 1427 | postcss-convert-values "^4.0.1" 1428 | postcss-discard-comments "^4.0.2" 1429 | postcss-discard-duplicates "^4.0.2" 1430 | postcss-discard-empty "^4.0.1" 1431 | postcss-discard-overridden "^4.0.1" 1432 | postcss-merge-longhand "^4.0.11" 1433 | postcss-merge-rules "^4.0.3" 1434 | postcss-minify-font-values "^4.0.2" 1435 | postcss-minify-gradients "^4.0.2" 1436 | postcss-minify-params "^4.0.2" 1437 | postcss-minify-selectors "^4.0.2" 1438 | postcss-normalize-charset "^4.0.1" 1439 | postcss-normalize-display-values "^4.0.2" 1440 | postcss-normalize-positions "^4.0.2" 1441 | postcss-normalize-repeat-style "^4.0.2" 1442 | postcss-normalize-string "^4.0.2" 1443 | postcss-normalize-timing-functions "^4.0.2" 1444 | postcss-normalize-unicode "^4.0.1" 1445 | postcss-normalize-url "^4.0.1" 1446 | postcss-normalize-whitespace "^4.0.2" 1447 | postcss-ordered-values "^4.1.2" 1448 | postcss-reduce-initial "^4.0.3" 1449 | postcss-reduce-transforms "^4.0.2" 1450 | postcss-svgo "^4.0.2" 1451 | postcss-unique-selectors "^4.0.1" 1452 | 1453 | cssnano-util-get-arguments@^4.0.0: 1454 | version "4.0.0" 1455 | resolved "https://registry.yarnpkg.com/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz#ed3a08299f21d75741b20f3b81f194ed49cc150f" 1456 | integrity sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8= 1457 | 1458 | cssnano-util-get-match@^4.0.0: 1459 | version "4.0.0" 1460 | resolved "https://registry.yarnpkg.com/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz#c0e4ca07f5386bb17ec5e52250b4f5961365156d" 1461 | integrity sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0= 1462 | 1463 | cssnano-util-raw-cache@^4.0.1: 1464 | version "4.0.1" 1465 | resolved "https://registry.yarnpkg.com/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz#b26d5fd5f72a11dfe7a7846fb4c67260f96bf282" 1466 | integrity sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA== 1467 | dependencies: 1468 | postcss "^7.0.0" 1469 | 1470 | cssnano-util-same-parent@^4.0.0: 1471 | version "4.0.1" 1472 | resolved "https://registry.yarnpkg.com/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz#574082fb2859d2db433855835d9a8456ea18bbf3" 1473 | integrity sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q== 1474 | 1475 | cssnano@^4.1.10: 1476 | version "4.1.10" 1477 | resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-4.1.10.tgz#0ac41f0b13d13d465487e111b778d42da631b8b2" 1478 | integrity sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ== 1479 | dependencies: 1480 | cosmiconfig "^5.0.0" 1481 | cssnano-preset-default "^4.0.7" 1482 | is-resolvable "^1.0.0" 1483 | postcss "^7.0.0" 1484 | 1485 | csso@^4.0.2: 1486 | version "4.0.3" 1487 | resolved "https://registry.yarnpkg.com/csso/-/csso-4.0.3.tgz#0d9985dc852c7cc2b2cacfbbe1079014d1a8e903" 1488 | integrity sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ== 1489 | dependencies: 1490 | css-tree "1.0.0-alpha.39" 1491 | 1492 | debug@^4.1.0: 1493 | version "4.1.1" 1494 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" 1495 | integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== 1496 | dependencies: 1497 | ms "^2.1.1" 1498 | 1499 | define-properties@^1.1.2, define-properties@^1.1.3: 1500 | version "1.1.3" 1501 | resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" 1502 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== 1503 | dependencies: 1504 | object-keys "^1.0.12" 1505 | 1506 | dom-serializer@0: 1507 | version "0.2.2" 1508 | resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51" 1509 | integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== 1510 | dependencies: 1511 | domelementtype "^2.0.1" 1512 | entities "^2.0.0" 1513 | 1514 | domelementtype@1: 1515 | version "1.3.1" 1516 | resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.1.tgz#d048c44b37b0d10a7f2a3d5fee3f4333d790481f" 1517 | integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== 1518 | 1519 | domelementtype@^2.0.1: 1520 | version "2.0.1" 1521 | resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.0.1.tgz#1f8bdfe91f5a78063274e803b4bdcedf6e94f94d" 1522 | integrity sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ== 1523 | 1524 | domutils@^1.7.0: 1525 | version "1.7.0" 1526 | resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" 1527 | integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== 1528 | dependencies: 1529 | dom-serializer "0" 1530 | domelementtype "1" 1531 | 1532 | dot-prop@^5.2.0: 1533 | version "5.2.0" 1534 | resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz#c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb" 1535 | integrity sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A== 1536 | dependencies: 1537 | is-obj "^2.0.0" 1538 | 1539 | duplexer@0.1.1, duplexer@^0.1.1: 1540 | version "0.1.1" 1541 | resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" 1542 | integrity sha1-rOb/gIwc5mtX0ev5eXessCM0z8E= 1543 | 1544 | electron-to-chromium@^1.3.413: 1545 | version "1.3.480" 1546 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.480.tgz#190ae45074578349a4c4f336fba29e76b20e9ef5" 1547 | integrity sha512-wnuUfQCBMAdzu5Xe+F4FjaRK+6ToG6WvwG72s8k/3E6b+hoGVYGiQE7JD1NhiCMcqF3+wV+c2vAnaLGRSSWVqA== 1548 | 1549 | emojis-list@^3.0.0: 1550 | version "3.0.0" 1551 | resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" 1552 | integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== 1553 | 1554 | encoding@^0.1.11: 1555 | version "0.1.12" 1556 | resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" 1557 | integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s= 1558 | dependencies: 1559 | iconv-lite "~0.4.13" 1560 | 1561 | entities@^2.0.0: 1562 | version "2.0.3" 1563 | resolved "https://registry.yarnpkg.com/entities/-/entities-2.0.3.tgz#5c487e5742ab93c15abb5da22759b8590ec03b7f" 1564 | integrity sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ== 1565 | 1566 | error-ex@^1.3.1: 1567 | version "1.3.2" 1568 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 1569 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 1570 | dependencies: 1571 | is-arrayish "^0.2.1" 1572 | 1573 | es-abstract@^1.17.0-next.1, es-abstract@^1.17.2, es-abstract@^1.17.5: 1574 | version "1.17.6" 1575 | resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.6.tgz#9142071707857b2cacc7b89ecb670316c3e2d52a" 1576 | integrity sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw== 1577 | dependencies: 1578 | es-to-primitive "^1.2.1" 1579 | function-bind "^1.1.1" 1580 | has "^1.0.3" 1581 | has-symbols "^1.0.1" 1582 | is-callable "^1.2.0" 1583 | is-regex "^1.1.0" 1584 | object-inspect "^1.7.0" 1585 | object-keys "^1.1.1" 1586 | object.assign "^4.1.0" 1587 | string.prototype.trimend "^1.0.1" 1588 | string.prototype.trimstart "^1.0.1" 1589 | 1590 | es-to-primitive@^1.2.1: 1591 | version "1.2.1" 1592 | resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" 1593 | integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== 1594 | dependencies: 1595 | is-callable "^1.1.4" 1596 | is-date-object "^1.0.1" 1597 | is-symbol "^1.0.2" 1598 | 1599 | es6-promisify@^6.1.1: 1600 | version "6.1.1" 1601 | resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-6.1.1.tgz#46837651b7b06bf6fff893d03f29393668d01621" 1602 | integrity sha512-HBL8I3mIki5C1Cc9QjKUenHtnG0A5/xA8Q/AllRcfiwl2CZFXGK7ddBiCoRwAix4i2KxcQfjtIVcrVbB3vbmwg== 1603 | 1604 | escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: 1605 | version "1.0.5" 1606 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 1607 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 1608 | 1609 | escape-string-regexp@^4.0.0: 1610 | version "4.0.0" 1611 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" 1612 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== 1613 | 1614 | esprima@^4.0.0: 1615 | version "4.0.1" 1616 | resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" 1617 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== 1618 | 1619 | estree-walker@^0.6.1: 1620 | version "0.6.1" 1621 | resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362" 1622 | integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w== 1623 | 1624 | estree-walker@^1.0.1: 1625 | version "1.0.1" 1626 | resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" 1627 | integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== 1628 | 1629 | esutils@^2.0.2: 1630 | version "2.0.3" 1631 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" 1632 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 1633 | 1634 | eventemitter3@^3.1.2: 1635 | version "3.1.2" 1636 | resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" 1637 | integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== 1638 | 1639 | eventemitter3@^4.0.0: 1640 | version "4.0.4" 1641 | resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384" 1642 | integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ== 1643 | 1644 | external-editor@^2.0.1: 1645 | version "2.2.0" 1646 | resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz#045511cfd8d133f3846673d1047c154e214ad3d5" 1647 | integrity sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A== 1648 | dependencies: 1649 | chardet "^0.4.0" 1650 | iconv-lite "^0.4.17" 1651 | tmp "^0.0.33" 1652 | 1653 | fastparse@^1.1.2: 1654 | version "1.1.2" 1655 | resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9" 1656 | integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ== 1657 | 1658 | figures@^1.0.1: 1659 | version "1.7.0" 1660 | resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" 1661 | integrity sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4= 1662 | dependencies: 1663 | escape-string-regexp "^1.0.5" 1664 | object-assign "^4.1.0" 1665 | 1666 | figures@^2.0.0: 1667 | version "2.0.0" 1668 | resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" 1669 | integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= 1670 | dependencies: 1671 | escape-string-regexp "^1.0.5" 1672 | 1673 | filesize@^6.1.0: 1674 | version "6.1.0" 1675 | resolved "https://registry.yarnpkg.com/filesize/-/filesize-6.1.0.tgz#e81bdaa780e2451d714d71c0d7a4f3238d37ad00" 1676 | integrity sha512-LpCHtPQ3sFx67z+uh2HnSyWSLLu5Jxo21795uRDuar/EOuYWXib5EmPaGIBuSnRqH2IODiKA2k5re/K9OnN/Yg== 1677 | 1678 | find-cache-dir@^3.0.0: 1679 | version "3.3.1" 1680 | resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880" 1681 | integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ== 1682 | dependencies: 1683 | commondir "^1.0.1" 1684 | make-dir "^3.0.2" 1685 | pkg-dir "^4.1.0" 1686 | 1687 | find-up@^2.1.0: 1688 | version "2.1.0" 1689 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" 1690 | integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= 1691 | dependencies: 1692 | locate-path "^2.0.0" 1693 | 1694 | find-up@^4.0.0: 1695 | version "4.1.0" 1696 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" 1697 | integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== 1698 | dependencies: 1699 | locate-path "^5.0.0" 1700 | path-exists "^4.0.0" 1701 | 1702 | fs-extra@8.1.0: 1703 | version "8.1.0" 1704 | resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" 1705 | integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== 1706 | dependencies: 1707 | graceful-fs "^4.2.0" 1708 | jsonfile "^4.0.0" 1709 | universalify "^0.1.0" 1710 | 1711 | fs.realpath@^1.0.0: 1712 | version "1.0.0" 1713 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 1714 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 1715 | 1716 | function-bind@^1.1.1: 1717 | version "1.1.1" 1718 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 1719 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 1720 | 1721 | generic-names@^2.0.1: 1722 | version "2.0.1" 1723 | resolved "https://registry.yarnpkg.com/generic-names/-/generic-names-2.0.1.tgz#f8a378ead2ccaa7a34f0317b05554832ae41b872" 1724 | integrity sha512-kPCHWa1m9wGG/OwQpeweTwM/PYiQLrUIxXbt/P4Nic3LbGjCP0YwrALHW1uNLKZ0LIMg+RF+XRlj2ekT9ZlZAQ== 1725 | dependencies: 1726 | loader-utils "^1.1.0" 1727 | 1728 | gensync@^1.0.0-beta.1: 1729 | version "1.0.0-beta.1" 1730 | resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269" 1731 | integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg== 1732 | 1733 | glob@^7.1.2: 1734 | version "7.1.6" 1735 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" 1736 | integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== 1737 | dependencies: 1738 | fs.realpath "^1.0.0" 1739 | inflight "^1.0.4" 1740 | inherits "2" 1741 | minimatch "^3.0.4" 1742 | once "^1.3.0" 1743 | path-is-absolute "^1.0.0" 1744 | 1745 | globals@^11.1.0: 1746 | version "11.12.0" 1747 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 1748 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 1749 | 1750 | globalyzer@^0.1.0: 1751 | version "0.1.4" 1752 | resolved "https://registry.yarnpkg.com/globalyzer/-/globalyzer-0.1.4.tgz#bc8e273afe1ac7c24eea8def5b802340c5cc534f" 1753 | integrity sha512-LeguVWaxgHN0MNbWC6YljNMzHkrCny9fzjmEUdnF1kQ7wATFD1RHFRqA1qxaX2tgxGENlcxjOflopBwj3YZiXA== 1754 | 1755 | globrex@^0.1.1: 1756 | version "0.1.2" 1757 | resolved "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz#dd5d9ec826232730cd6793a5e33a9302985e6098" 1758 | integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== 1759 | 1760 | graceful-fs@^4.1.6, graceful-fs@^4.2.0: 1761 | version "4.2.4" 1762 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" 1763 | integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== 1764 | 1765 | gzip-size@^3.0.0: 1766 | version "3.0.0" 1767 | resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-3.0.0.tgz#546188e9bdc337f673772f81660464b389dce520" 1768 | integrity sha1-VGGI6b3DN/Zzdy+BZgRks4nc5SA= 1769 | dependencies: 1770 | duplexer "^0.1.1" 1771 | 1772 | gzip-size@^5.1.1: 1773 | version "5.1.1" 1774 | resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-5.1.1.tgz#cb9bee692f87c0612b232840a873904e4c135274" 1775 | integrity sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA== 1776 | dependencies: 1777 | duplexer "^0.1.1" 1778 | pify "^4.0.1" 1779 | 1780 | has-ansi@^2.0.0: 1781 | version "2.0.0" 1782 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" 1783 | integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= 1784 | dependencies: 1785 | ansi-regex "^2.0.0" 1786 | 1787 | has-flag@^1.0.0: 1788 | version "1.0.0" 1789 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" 1790 | integrity sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo= 1791 | 1792 | has-flag@^3.0.0: 1793 | version "3.0.0" 1794 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 1795 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1796 | 1797 | has-flag@^4.0.0: 1798 | version "4.0.0" 1799 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 1800 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 1801 | 1802 | has-symbols@^1.0.0, has-symbols@^1.0.1: 1803 | version "1.0.1" 1804 | resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.1.tgz#9f5214758a44196c406d9bd76cebf81ec2dd31e8" 1805 | integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== 1806 | 1807 | has@^1.0.0, has@^1.0.3: 1808 | version "1.0.3" 1809 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 1810 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 1811 | dependencies: 1812 | function-bind "^1.1.1" 1813 | 1814 | hex-color-regex@^1.1.0: 1815 | version "1.1.0" 1816 | resolved "https://registry.yarnpkg.com/hex-color-regex/-/hex-color-regex-1.1.0.tgz#4c06fccb4602fe2602b3c93df82d7e7dbf1a8a8e" 1817 | integrity sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ== 1818 | 1819 | hsl-regex@^1.0.0: 1820 | version "1.0.0" 1821 | resolved "https://registry.yarnpkg.com/hsl-regex/-/hsl-regex-1.0.0.tgz#d49330c789ed819e276a4c0d272dffa30b18fe6e" 1822 | integrity sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4= 1823 | 1824 | hsla-regex@^1.0.0: 1825 | version "1.0.0" 1826 | resolved "https://registry.yarnpkg.com/hsla-regex/-/hsla-regex-1.0.0.tgz#c1ce7a3168c8c6614033a4b5f7877f3b225f9c38" 1827 | integrity sha1-wc56MWjIxmFAM6S194d/OyJfnDg= 1828 | 1829 | html-comment-regex@^1.1.0: 1830 | version "1.1.2" 1831 | resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.2.tgz#97d4688aeb5c81886a364faa0cad1dda14d433a7" 1832 | integrity sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ== 1833 | 1834 | iconv-lite@^0.4.17, iconv-lite@~0.4.13: 1835 | version "0.4.24" 1836 | resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" 1837 | integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== 1838 | dependencies: 1839 | safer-buffer ">= 2.1.2 < 3" 1840 | 1841 | icss-replace-symbols@1.1.0, icss-replace-symbols@^1.1.0: 1842 | version "1.1.0" 1843 | resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" 1844 | integrity sha1-Bupvg2ead0njhs/h/oEq5dsiPe0= 1845 | 1846 | immutable@^3.8.2: 1847 | version "3.8.2" 1848 | resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz#c2439951455bb39913daf281376f1530e104adf3" 1849 | integrity sha1-wkOZUUVbs5kT2vKBN28VMOEErfM= 1850 | 1851 | import-cwd@^2.0.0: 1852 | version "2.1.0" 1853 | resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-2.1.0.tgz#aa6cf36e722761285cb371ec6519f53e2435b0a9" 1854 | integrity sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk= 1855 | dependencies: 1856 | import-from "^2.1.0" 1857 | 1858 | import-cwd@^3.0.0: 1859 | version "3.0.0" 1860 | resolved "https://registry.yarnpkg.com/import-cwd/-/import-cwd-3.0.0.tgz#20845547718015126ea9b3676b7592fb8bd4cf92" 1861 | integrity sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg== 1862 | dependencies: 1863 | import-from "^3.0.0" 1864 | 1865 | import-fresh@^2.0.0: 1866 | version "2.0.0" 1867 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" 1868 | integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= 1869 | dependencies: 1870 | caller-path "^2.0.0" 1871 | resolve-from "^3.0.0" 1872 | 1873 | import-fresh@^3.1.0: 1874 | version "3.2.1" 1875 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz#633ff618506e793af5ac91bf48b72677e15cbe66" 1876 | integrity sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ== 1877 | dependencies: 1878 | parent-module "^1.0.0" 1879 | resolve-from "^4.0.0" 1880 | 1881 | import-from@^2.1.0: 1882 | version "2.1.0" 1883 | resolved "https://registry.yarnpkg.com/import-from/-/import-from-2.1.0.tgz#335db7f2a7affd53aaa471d4b8021dee36b7f3b1" 1884 | integrity sha1-M1238qev/VOqpHHUuAId7ja387E= 1885 | dependencies: 1886 | resolve-from "^3.0.0" 1887 | 1888 | import-from@^3.0.0: 1889 | version "3.0.0" 1890 | resolved "https://registry.yarnpkg.com/import-from/-/import-from-3.0.0.tgz#055cfec38cd5a27d8057ca51376d7d3bf0891966" 1891 | integrity sha512-CiuXOFFSzkU5x/CR0+z7T91Iht4CXgfCxVOFRhh2Zyhg5wOpWvvDLQUsWl+gcN+QscYBjez8hDCt85O7RLDttQ== 1892 | dependencies: 1893 | resolve-from "^5.0.0" 1894 | 1895 | indexes-of@^1.0.1: 1896 | version "1.0.1" 1897 | resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" 1898 | integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= 1899 | 1900 | inflight@^1.0.4: 1901 | version "1.0.6" 1902 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 1903 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 1904 | dependencies: 1905 | once "^1.3.0" 1906 | wrappy "1" 1907 | 1908 | inherits@2: 1909 | version "2.0.4" 1910 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 1911 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1912 | 1913 | inquirer@3.0.6: 1914 | version "3.0.6" 1915 | resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.0.6.tgz#e04aaa9d05b7a3cb9b0f407d04375f0447190347" 1916 | integrity sha1-4EqqnQW3o8ubD0B9BDdfBEcZA0c= 1917 | dependencies: 1918 | ansi-escapes "^1.1.0" 1919 | chalk "^1.0.0" 1920 | cli-cursor "^2.1.0" 1921 | cli-width "^2.0.0" 1922 | external-editor "^2.0.1" 1923 | figures "^2.0.0" 1924 | lodash "^4.3.0" 1925 | mute-stream "0.0.7" 1926 | run-async "^2.2.0" 1927 | rx "^4.1.0" 1928 | string-width "^2.0.0" 1929 | strip-ansi "^3.0.0" 1930 | through "^2.3.6" 1931 | 1932 | invariant@^2.2.2, invariant@^2.2.4: 1933 | version "2.2.4" 1934 | resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" 1935 | integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== 1936 | dependencies: 1937 | loose-envify "^1.0.0" 1938 | 1939 | is-absolute-url@^2.0.0: 1940 | version "2.1.0" 1941 | resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" 1942 | integrity sha1-UFMN+4T8yap9vnhS6Do3uTufKqY= 1943 | 1944 | is-arrayish@^0.2.1: 1945 | version "0.2.1" 1946 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 1947 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 1948 | 1949 | is-arrayish@^0.3.1: 1950 | version "0.3.2" 1951 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" 1952 | integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== 1953 | 1954 | is-callable@^1.1.4, is-callable@^1.2.0: 1955 | version "1.2.0" 1956 | resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.0.tgz#83336560b54a38e35e3a2df7afd0454d691468bb" 1957 | integrity sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw== 1958 | 1959 | is-color-stop@^1.0.0: 1960 | version "1.1.0" 1961 | resolved "https://registry.yarnpkg.com/is-color-stop/-/is-color-stop-1.1.0.tgz#cfff471aee4dd5c9e158598fbe12967b5cdad345" 1962 | integrity sha1-z/9HGu5N1cnhWFmPvhKWe1za00U= 1963 | dependencies: 1964 | css-color-names "^0.0.4" 1965 | hex-color-regex "^1.1.0" 1966 | hsl-regex "^1.0.0" 1967 | hsla-regex "^1.0.0" 1968 | rgb-regex "^1.0.1" 1969 | rgba-regex "^1.0.0" 1970 | 1971 | is-date-object@^1.0.1: 1972 | version "1.0.2" 1973 | resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz#bda736f2cd8fd06d32844e7743bfa7494c3bfd7e" 1974 | integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== 1975 | 1976 | is-directory@^0.3.1: 1977 | version "0.3.1" 1978 | resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" 1979 | integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= 1980 | 1981 | is-fullwidth-code-point@^2.0.0: 1982 | version "2.0.0" 1983 | resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" 1984 | integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= 1985 | 1986 | is-module@^1.0.0: 1987 | version "1.0.0" 1988 | resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" 1989 | integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= 1990 | 1991 | is-obj@^2.0.0: 1992 | version "2.0.0" 1993 | resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" 1994 | integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== 1995 | 1996 | is-reference@^1.1.2: 1997 | version "1.2.0" 1998 | resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.0.tgz#d938b0cf85a0df09849417b274f02fb509293599" 1999 | integrity sha512-ZVxq+5TkOx6GQdnoMm2aRdCKADdcrOWXLGzGT+vIA8DMpqEJaRk5AL1bS80zJ2bjHunVmjdzfCt0e4BymIEqKQ== 2000 | dependencies: 2001 | "@types/estree" "0.0.44" 2002 | 2003 | is-regex@^1.1.0: 2004 | version "1.1.0" 2005 | resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.0.tgz#ece38e389e490df0dc21caea2bd596f987f767ff" 2006 | integrity sha512-iI97M8KTWID2la5uYXlkbSDQIg4F6o1sYboZKKTDpnDQMLtUL86zxhgDet3Q2SriaYsyGqZ6Mn2SjbRKeLHdqw== 2007 | dependencies: 2008 | has-symbols "^1.0.1" 2009 | 2010 | is-resolvable@^1.0.0: 2011 | version "1.1.0" 2012 | resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" 2013 | integrity sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg== 2014 | 2015 | is-stream@^1.0.1: 2016 | version "1.1.0" 2017 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" 2018 | integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= 2019 | 2020 | is-svg@^3.0.0: 2021 | version "3.0.0" 2022 | resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-3.0.0.tgz#9321dbd29c212e5ca99c4fa9794c714bcafa2f75" 2023 | integrity sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ== 2024 | dependencies: 2025 | html-comment-regex "^1.1.0" 2026 | 2027 | is-symbol@^1.0.2: 2028 | version "1.0.3" 2029 | resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz#38e1014b9e6329be0de9d24a414fd7441ec61937" 2030 | integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== 2031 | dependencies: 2032 | has-symbols "^1.0.1" 2033 | 2034 | jest-worker@^24.9.0: 2035 | version "24.9.0" 2036 | resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-24.9.0.tgz#5dbfdb5b2d322e98567898238a9697bcce67b3e5" 2037 | integrity sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw== 2038 | dependencies: 2039 | merge-stream "^2.0.0" 2040 | supports-color "^6.1.0" 2041 | 2042 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: 2043 | version "4.0.0" 2044 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 2045 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 2046 | 2047 | js-yaml@^3.13.1: 2048 | version "3.14.0" 2049 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" 2050 | integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== 2051 | dependencies: 2052 | argparse "^1.0.7" 2053 | esprima "^4.0.0" 2054 | 2055 | jsesc@^2.5.1: 2056 | version "2.5.2" 2057 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" 2058 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 2059 | 2060 | jsesc@~0.5.0: 2061 | version "0.5.0" 2062 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" 2063 | integrity sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0= 2064 | 2065 | json-parse-better-errors@^1.0.1: 2066 | version "1.0.2" 2067 | resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 2068 | integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== 2069 | 2070 | json5@^1.0.1: 2071 | version "1.0.1" 2072 | resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" 2073 | integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== 2074 | dependencies: 2075 | minimist "^1.2.0" 2076 | 2077 | json5@^2.1.2: 2078 | version "2.1.3" 2079 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.1.3.tgz#c9b0f7fa9233bfe5807fe66fcf3a5617ed597d43" 2080 | integrity sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA== 2081 | dependencies: 2082 | minimist "^1.2.5" 2083 | 2084 | jsonfile@^4.0.0: 2085 | version "4.0.0" 2086 | resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" 2087 | integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= 2088 | optionalDependencies: 2089 | graceful-fs "^4.1.6" 2090 | 2091 | kleur@^3.0.3: 2092 | version "3.0.3" 2093 | resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" 2094 | integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== 2095 | 2096 | kleur@^4.0.1: 2097 | version "4.0.1" 2098 | resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.0.1.tgz#3d4948534b666e2578f93b6fafb62108e64f05ef" 2099 | integrity sha512-Qs6SqCLm63rd0kNVh+wO4XsWLU6kgfwwaPYsLiClWf0Tewkzsa6MvB21bespb8cz+ANS+2t3So1ge3gintzhlw== 2100 | 2101 | leven@^3.1.0: 2102 | version "3.1.0" 2103 | resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" 2104 | integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== 2105 | 2106 | levenary@^1.1.1: 2107 | version "1.1.1" 2108 | resolved "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz#842a9ee98d2075aa7faeedbe32679e9205f46f77" 2109 | integrity sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ== 2110 | dependencies: 2111 | leven "^3.1.0" 2112 | 2113 | lines-and-columns@^1.1.6: 2114 | version "1.1.6" 2115 | resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" 2116 | integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= 2117 | 2118 | loader-utils@^1.1.0: 2119 | version "1.4.0" 2120 | resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" 2121 | integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== 2122 | dependencies: 2123 | big.js "^5.2.2" 2124 | emojis-list "^3.0.0" 2125 | json5 "^1.0.1" 2126 | 2127 | locate-path@^2.0.0: 2128 | version "2.0.0" 2129 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" 2130 | integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= 2131 | dependencies: 2132 | p-locate "^2.0.0" 2133 | path-exists "^3.0.0" 2134 | 2135 | locate-path@^5.0.0: 2136 | version "5.0.0" 2137 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" 2138 | integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== 2139 | dependencies: 2140 | p-locate "^4.1.0" 2141 | 2142 | lodash.camelcase@^4.3.0: 2143 | version "4.3.0" 2144 | resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" 2145 | integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= 2146 | 2147 | lodash.memoize@^4.1.2: 2148 | version "4.1.2" 2149 | resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" 2150 | integrity sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4= 2151 | 2152 | lodash.merge@^4.6.2: 2153 | version "4.6.2" 2154 | resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" 2155 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== 2156 | 2157 | lodash.uniq@^4.5.0: 2158 | version "4.5.0" 2159 | resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" 2160 | integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= 2161 | 2162 | lodash@^4.17.13, lodash@^4.3.0: 2163 | version "4.17.19" 2164 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.19.tgz#e48ddedbe30b3321783c5b4301fbd353bc1e4a4b" 2165 | integrity sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ== 2166 | 2167 | loose-envify@^1.0.0: 2168 | version "1.4.0" 2169 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 2170 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 2171 | dependencies: 2172 | js-tokens "^3.0.0 || ^4.0.0" 2173 | 2174 | magic-string@^0.22.4: 2175 | version "0.22.5" 2176 | resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.22.5.tgz#8e9cf5afddf44385c1da5bc2a6a0dbd10b03657e" 2177 | integrity sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w== 2178 | dependencies: 2179 | vlq "^0.2.2" 2180 | 2181 | magic-string@^0.25.2: 2182 | version "0.25.7" 2183 | resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051" 2184 | integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA== 2185 | dependencies: 2186 | sourcemap-codec "^1.4.4" 2187 | 2188 | make-dir@^3.0.2: 2189 | version "3.1.0" 2190 | resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" 2191 | integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== 2192 | dependencies: 2193 | semver "^6.0.0" 2194 | 2195 | maxmin@^2.1.0: 2196 | version "2.1.0" 2197 | resolved "https://registry.yarnpkg.com/maxmin/-/maxmin-2.1.0.tgz#4d3b220903d95eee7eb7ac7fa864e72dc09a3166" 2198 | integrity sha1-TTsiCQPZXu5+t6x/qGTnLcCaMWY= 2199 | dependencies: 2200 | chalk "^1.0.0" 2201 | figures "^1.0.1" 2202 | gzip-size "^3.0.0" 2203 | pretty-bytes "^3.0.0" 2204 | 2205 | mdn-data@2.0.4: 2206 | version "2.0.4" 2207 | resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.4.tgz#699b3c38ac6f1d728091a64650b65d388502fd5b" 2208 | integrity sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA== 2209 | 2210 | mdn-data@2.0.6: 2211 | version "2.0.6" 2212 | resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.6.tgz#852dc60fcaa5daa2e8cf6c9189c440ed3e042978" 2213 | integrity sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA== 2214 | 2215 | merge-stream@^2.0.0: 2216 | version "2.0.0" 2217 | resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" 2218 | integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== 2219 | 2220 | microbundle@^0.12.2: 2221 | version "0.12.2" 2222 | resolved "https://registry.yarnpkg.com/microbundle/-/microbundle-0.12.2.tgz#3d79941291ef919dd280ecdffd4c8ee15ad394e3" 2223 | integrity sha512-6/48HlmDPq/Q1HyS5liFFSvcU0v8n8NROH3K1Z/saU+TRaxCe38eNNqZwjitOyTKilXqnp1yHEEjZGYWVvr7WQ== 2224 | dependencies: 2225 | "@babel/core" "^7.10.2" 2226 | "@babel/plugin-proposal-class-properties" "7.7.4" 2227 | "@babel/plugin-syntax-import-meta" "^7.10.1" 2228 | "@babel/plugin-syntax-jsx" "^7.10.1" 2229 | "@babel/plugin-transform-flow-strip-types" "^7.10.1" 2230 | "@babel/plugin-transform-react-jsx" "^7.10.1" 2231 | "@babel/plugin-transform-regenerator" "^7.10.1" 2232 | "@babel/preset-env" "^7.10.2" 2233 | "@babel/preset-flow" "^7.10.1" 2234 | "@babel/preset-modules" "^0.1.3" 2235 | "@rollup/plugin-alias" "^3.1.1" 2236 | "@rollup/plugin-babel" "^5.0.3" 2237 | "@rollup/plugin-commonjs" "^13.0.0" 2238 | "@rollup/plugin-json" "^4.1.0" 2239 | "@rollup/plugin-node-resolve" "^6.1.0" 2240 | asyncro "^3.0.0" 2241 | autoprefixer "^9.8.0" 2242 | babel-plugin-macros "^2.8.0" 2243 | babel-plugin-transform-async-to-promises "^0.8.15" 2244 | babel-plugin-transform-replace-expressions "^0.2.0" 2245 | brotli-size "^4.0.0" 2246 | camelcase "^5.3.1" 2247 | cssnano "^4.1.10" 2248 | es6-promisify "^6.1.1" 2249 | escape-string-regexp "^4.0.0" 2250 | filesize "^6.1.0" 2251 | gzip-size "^5.1.1" 2252 | kleur "^3.0.3" 2253 | lodash.merge "^4.6.2" 2254 | module-details-from-path "^1.0.3" 2255 | pretty-bytes "^5.3.0" 2256 | rollup "^1.32.1" 2257 | rollup-plugin-bundle-size "^1.0.1" 2258 | rollup-plugin-es3 "^1.1.0" 2259 | rollup-plugin-postcss "^2.9.0" 2260 | rollup-plugin-terser "^5.3.0" 2261 | rollup-plugin-typescript2 "^0.25.3" 2262 | sade "^1.7.3" 2263 | tiny-glob "^0.2.6" 2264 | tslib "^1.13.0" 2265 | typescript "^3.9.5" 2266 | 2267 | mimic-fn@^1.0.0: 2268 | version "1.2.0" 2269 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" 2270 | integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== 2271 | 2272 | minimatch@^3.0.4: 2273 | version "3.0.4" 2274 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 2275 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 2276 | dependencies: 2277 | brace-expansion "^1.1.7" 2278 | 2279 | minimist@1.2.0: 2280 | version "1.2.0" 2281 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 2282 | integrity sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ= 2283 | 2284 | minimist@^1.2.0, minimist@^1.2.5: 2285 | version "1.2.5" 2286 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" 2287 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== 2288 | 2289 | mkdirp@~0.5.1: 2290 | version "0.5.5" 2291 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" 2292 | integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== 2293 | dependencies: 2294 | minimist "^1.2.5" 2295 | 2296 | module-details-from-path@^1.0.3: 2297 | version "1.0.3" 2298 | resolved "https://registry.yarnpkg.com/module-details-from-path/-/module-details-from-path-1.0.3.tgz#114c949673e2a8a35e9d35788527aa37b679da2b" 2299 | integrity sha1-EUyUlnPiqKNenTV4hSeqN7Z52is= 2300 | 2301 | mri@^1.1.0: 2302 | version "1.1.5" 2303 | resolved "https://registry.yarnpkg.com/mri/-/mri-1.1.5.tgz#ce21dba2c69f74a9b7cf8a1ec62307e089e223e0" 2304 | integrity sha512-d2RKzMD4JNyHMbnbWnznPaa8vbdlq/4pNZ3IgdaGrVbBhebBsGUUE/6qorTMYNS6TwuH3ilfOlD2bf4Igh8CKg== 2305 | 2306 | ms@^2.1.1: 2307 | version "2.1.2" 2308 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 2309 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 2310 | 2311 | mute-stream@0.0.7: 2312 | version "0.0.7" 2313 | resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" 2314 | integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= 2315 | 2316 | node-fetch@1.6.3: 2317 | version "1.6.3" 2318 | resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.6.3.tgz#dc234edd6489982d58e8f0db4f695029abcd8c04" 2319 | integrity sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ= 2320 | dependencies: 2321 | encoding "^0.1.11" 2322 | is-stream "^1.0.1" 2323 | 2324 | node-releases@^1.1.53: 2325 | version "1.1.58" 2326 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.58.tgz#8ee20eef30fa60e52755fcc0942def5a734fe935" 2327 | integrity sha512-NxBudgVKiRh/2aPWMgPR7bPTX0VPmGx5QBwCtdHitnqFE5/O8DeBXuIMH1nwNnw/aMo6AjOrpsHzfY3UbUJ7yg== 2328 | 2329 | normalize-range@^0.1.2: 2330 | version "0.1.2" 2331 | resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" 2332 | integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= 2333 | 2334 | normalize-url@^3.0.0: 2335 | version "3.3.0" 2336 | resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-3.3.0.tgz#b2e1c4dc4f7c6d57743df733a4f5978d18650559" 2337 | integrity sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg== 2338 | 2339 | nth-check@^1.0.2: 2340 | version "1.0.2" 2341 | resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.2.tgz#b2bd295c37e3dd58a3bf0700376663ba4d9cf05c" 2342 | integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== 2343 | dependencies: 2344 | boolbase "~1.0.0" 2345 | 2346 | num2fraction@^1.2.2: 2347 | version "1.2.2" 2348 | resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" 2349 | integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= 2350 | 2351 | number-is-nan@^1.0.0: 2352 | version "1.0.1" 2353 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 2354 | integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= 2355 | 2356 | object-assign@^4.0.1, object-assign@^4.1.0: 2357 | version "4.1.1" 2358 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 2359 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 2360 | 2361 | object-inspect@^1.7.0: 2362 | version "1.8.0" 2363 | resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.8.0.tgz#df807e5ecf53a609cc6bfe93eac3cc7be5b3a9d0" 2364 | integrity sha512-jLdtEOB112fORuypAyl/50VRVIBIdVQOSUUGQHzJ4xBSbit81zRarz7GThkEFZy1RceYrWYcPcBFPQwHyAc1gA== 2365 | 2366 | object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.1: 2367 | version "1.1.1" 2368 | resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" 2369 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== 2370 | 2371 | object.assign@^4.1.0: 2372 | version "4.1.0" 2373 | resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" 2374 | integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w== 2375 | dependencies: 2376 | define-properties "^1.1.2" 2377 | function-bind "^1.1.1" 2378 | has-symbols "^1.0.0" 2379 | object-keys "^1.0.11" 2380 | 2381 | object.getownpropertydescriptors@^2.1.0: 2382 | version "2.1.0" 2383 | resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz#369bf1f9592d8ab89d712dced5cb81c7c5352649" 2384 | integrity sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg== 2385 | dependencies: 2386 | define-properties "^1.1.3" 2387 | es-abstract "^1.17.0-next.1" 2388 | 2389 | object.values@^1.1.0: 2390 | version "1.1.1" 2391 | resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz#68a99ecde356b7e9295a3c5e0ce31dc8c953de5e" 2392 | integrity sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA== 2393 | dependencies: 2394 | define-properties "^1.1.3" 2395 | es-abstract "^1.17.0-next.1" 2396 | function-bind "^1.1.1" 2397 | has "^1.0.3" 2398 | 2399 | once@^1.3.0: 2400 | version "1.4.0" 2401 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 2402 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 2403 | dependencies: 2404 | wrappy "1" 2405 | 2406 | onetime@^2.0.0: 2407 | version "2.0.1" 2408 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" 2409 | integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= 2410 | dependencies: 2411 | mimic-fn "^1.0.0" 2412 | 2413 | opencollective-postinstall@^2.0.0: 2414 | version "2.0.3" 2415 | resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259" 2416 | integrity sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q== 2417 | 2418 | opencollective@^1.0.3: 2419 | version "1.0.3" 2420 | resolved "https://registry.yarnpkg.com/opencollective/-/opencollective-1.0.3.tgz#aee6372bc28144583690c3ca8daecfc120dd0ef1" 2421 | integrity sha1-ruY3K8KBRFg2kMPKja7PwSDdDvE= 2422 | dependencies: 2423 | babel-polyfill "6.23.0" 2424 | chalk "1.1.3" 2425 | inquirer "3.0.6" 2426 | minimist "1.2.0" 2427 | node-fetch "1.6.3" 2428 | opn "4.0.2" 2429 | 2430 | opn@4.0.2: 2431 | version "4.0.2" 2432 | resolved "https://registry.yarnpkg.com/opn/-/opn-4.0.2.tgz#7abc22e644dff63b0a96d5ab7f2790c0f01abc95" 2433 | integrity sha1-erwi5kTf9jsKltWrfyeQwPAavJU= 2434 | dependencies: 2435 | object-assign "^4.0.1" 2436 | pinkie-promise "^2.0.0" 2437 | 2438 | os-tmpdir@~1.0.2: 2439 | version "1.0.2" 2440 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 2441 | integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= 2442 | 2443 | p-finally@^1.0.0: 2444 | version "1.0.0" 2445 | resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" 2446 | integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= 2447 | 2448 | p-limit@^1.1.0: 2449 | version "1.3.0" 2450 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" 2451 | integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== 2452 | dependencies: 2453 | p-try "^1.0.0" 2454 | 2455 | p-limit@^2.2.0: 2456 | version "2.3.0" 2457 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" 2458 | integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== 2459 | dependencies: 2460 | p-try "^2.0.0" 2461 | 2462 | p-locate@^2.0.0: 2463 | version "2.0.0" 2464 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" 2465 | integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= 2466 | dependencies: 2467 | p-limit "^1.1.0" 2468 | 2469 | p-locate@^4.1.0: 2470 | version "4.1.0" 2471 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" 2472 | integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== 2473 | dependencies: 2474 | p-limit "^2.2.0" 2475 | 2476 | p-queue@^6.3.0: 2477 | version "6.4.0" 2478 | resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.4.0.tgz#5050b379393ea1814d6f9613a654f687d92c0466" 2479 | integrity sha512-X7ddxxiQ+bLR/CUt3/BVKrGcJDNxBr0pEEFKHHB6vTPWNUhgDv36GpIH18RmGM3YGPpBT+JWGjDDqsVGuF0ERw== 2480 | dependencies: 2481 | eventemitter3 "^4.0.0" 2482 | p-timeout "^3.1.0" 2483 | 2484 | p-timeout@^3.1.0: 2485 | version "3.2.0" 2486 | resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" 2487 | integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== 2488 | dependencies: 2489 | p-finally "^1.0.0" 2490 | 2491 | p-try@^1.0.0: 2492 | version "1.0.0" 2493 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" 2494 | integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= 2495 | 2496 | p-try@^2.0.0: 2497 | version "2.2.0" 2498 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" 2499 | integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== 2500 | 2501 | parent-module@^1.0.0: 2502 | version "1.0.1" 2503 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 2504 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 2505 | dependencies: 2506 | callsites "^3.0.0" 2507 | 2508 | parse-json@^4.0.0: 2509 | version "4.0.0" 2510 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" 2511 | integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= 2512 | dependencies: 2513 | error-ex "^1.3.1" 2514 | json-parse-better-errors "^1.0.1" 2515 | 2516 | parse-json@^5.0.0: 2517 | version "5.0.0" 2518 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz#73e5114c986d143efa3712d4ea24db9a4266f60f" 2519 | integrity sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw== 2520 | dependencies: 2521 | "@babel/code-frame" "^7.0.0" 2522 | error-ex "^1.3.1" 2523 | json-parse-better-errors "^1.0.1" 2524 | lines-and-columns "^1.1.6" 2525 | 2526 | path-exists@^3.0.0: 2527 | version "3.0.0" 2528 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" 2529 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= 2530 | 2531 | path-exists@^4.0.0: 2532 | version "4.0.0" 2533 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" 2534 | integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== 2535 | 2536 | path-is-absolute@^1.0.0: 2537 | version "1.0.1" 2538 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 2539 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 2540 | 2541 | path-parse@^1.0.6: 2542 | version "1.0.6" 2543 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 2544 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 2545 | 2546 | path-type@^4.0.0: 2547 | version "4.0.0" 2548 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" 2549 | integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== 2550 | 2551 | peerjs-js-binarypack@1.0.1: 2552 | version "1.0.1" 2553 | resolved "https://registry.yarnpkg.com/peerjs-js-binarypack/-/peerjs-js-binarypack-1.0.1.tgz#80fa2b61c794a6b16d64253700405e476ada29be" 2554 | integrity sha512-N6aeia3NhdpV7kiGxJV5xQiZZCVEEVjRz2T2C6UZQiBkHWHzUv/oWA4myQLcwBwO8LUoR1KWW5oStvwVesmfCg== 2555 | 2556 | peerjs@^1.2.0: 2557 | version "1.2.0" 2558 | resolved "https://registry.yarnpkg.com/peerjs/-/peerjs-1.2.0.tgz#63a0ac54b3b79bba8502e31ecb5bcb4688e1bdd6" 2559 | integrity sha512-+ZWByKOYDDzpLefueY2drUFC5U2UVv947NswaYQb6o4twKiRcoDLdcgwfIQHjhcBWwvVUhYyhGIdSJy29+4a9Q== 2560 | dependencies: 2561 | "@types/node" "^10.14.17" 2562 | "@types/webrtc" "^0.0.25" 2563 | eventemitter3 "^3.1.2" 2564 | opencollective "^1.0.3" 2565 | opencollective-postinstall "^2.0.0" 2566 | peerjs-js-binarypack "1.0.1" 2567 | webrtc-adapter "^7.3.0" 2568 | 2569 | picomatch@^2.2.2: 2570 | version "2.2.2" 2571 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad" 2572 | integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== 2573 | 2574 | pify@^4.0.1: 2575 | version "4.0.1" 2576 | resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" 2577 | integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== 2578 | 2579 | pify@^5.0.0: 2580 | version "5.0.0" 2581 | resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" 2582 | integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== 2583 | 2584 | pinkie-promise@^2.0.0: 2585 | version "2.0.1" 2586 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 2587 | integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= 2588 | dependencies: 2589 | pinkie "^2.0.0" 2590 | 2591 | pinkie@^2.0.0: 2592 | version "2.0.4" 2593 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 2594 | integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= 2595 | 2596 | pkg-dir@^4.1.0: 2597 | version "4.2.0" 2598 | resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" 2599 | integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== 2600 | dependencies: 2601 | find-up "^4.0.0" 2602 | 2603 | pkg-up@^2.0.0: 2604 | version "2.0.0" 2605 | resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" 2606 | integrity sha1-yBmscoBZpGHKscOImivjxJoATX8= 2607 | dependencies: 2608 | find-up "^2.1.0" 2609 | 2610 | postcss-calc@^7.0.1: 2611 | version "7.0.2" 2612 | resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.2.tgz#504efcd008ca0273120568b0792b16cdcde8aac1" 2613 | integrity sha512-rofZFHUg6ZIrvRwPeFktv06GdbDYLcGqh9EwiMutZg+a0oePCCw1zHOEiji6LCpyRcjTREtPASuUqeAvYlEVvQ== 2614 | dependencies: 2615 | postcss "^7.0.27" 2616 | postcss-selector-parser "^6.0.2" 2617 | postcss-value-parser "^4.0.2" 2618 | 2619 | postcss-colormin@^4.0.3: 2620 | version "4.0.3" 2621 | resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-4.0.3.tgz#ae060bce93ed794ac71264f08132d550956bd381" 2622 | integrity sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw== 2623 | dependencies: 2624 | browserslist "^4.0.0" 2625 | color "^3.0.0" 2626 | has "^1.0.0" 2627 | postcss "^7.0.0" 2628 | postcss-value-parser "^3.0.0" 2629 | 2630 | postcss-convert-values@^4.0.1: 2631 | version "4.0.1" 2632 | resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz#ca3813ed4da0f812f9d43703584e449ebe189a7f" 2633 | integrity sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ== 2634 | dependencies: 2635 | postcss "^7.0.0" 2636 | postcss-value-parser "^3.0.0" 2637 | 2638 | postcss-discard-comments@^4.0.2: 2639 | version "4.0.2" 2640 | resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz#1fbabd2c246bff6aaad7997b2b0918f4d7af4033" 2641 | integrity sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg== 2642 | dependencies: 2643 | postcss "^7.0.0" 2644 | 2645 | postcss-discard-duplicates@^4.0.2: 2646 | version "4.0.2" 2647 | resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz#3fe133cd3c82282e550fc9b239176a9207b784eb" 2648 | integrity sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ== 2649 | dependencies: 2650 | postcss "^7.0.0" 2651 | 2652 | postcss-discard-empty@^4.0.1: 2653 | version "4.0.1" 2654 | resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz#c8c951e9f73ed9428019458444a02ad90bb9f765" 2655 | integrity sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w== 2656 | dependencies: 2657 | postcss "^7.0.0" 2658 | 2659 | postcss-discard-overridden@^4.0.1: 2660 | version "4.0.1" 2661 | resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz#652aef8a96726f029f5e3e00146ee7a4e755ff57" 2662 | integrity sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg== 2663 | dependencies: 2664 | postcss "^7.0.0" 2665 | 2666 | postcss-load-config@^2.1.0: 2667 | version "2.1.0" 2668 | resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-2.1.0.tgz#c84d692b7bb7b41ddced94ee62e8ab31b417b003" 2669 | integrity sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q== 2670 | dependencies: 2671 | cosmiconfig "^5.0.0" 2672 | import-cwd "^2.0.0" 2673 | 2674 | postcss-merge-longhand@^4.0.11: 2675 | version "4.0.11" 2676 | resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz#62f49a13e4a0ee04e7b98f42bb16062ca2549e24" 2677 | integrity sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw== 2678 | dependencies: 2679 | css-color-names "0.0.4" 2680 | postcss "^7.0.0" 2681 | postcss-value-parser "^3.0.0" 2682 | stylehacks "^4.0.0" 2683 | 2684 | postcss-merge-rules@^4.0.3: 2685 | version "4.0.3" 2686 | resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz#362bea4ff5a1f98e4075a713c6cb25aefef9a650" 2687 | integrity sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ== 2688 | dependencies: 2689 | browserslist "^4.0.0" 2690 | caniuse-api "^3.0.0" 2691 | cssnano-util-same-parent "^4.0.0" 2692 | postcss "^7.0.0" 2693 | postcss-selector-parser "^3.0.0" 2694 | vendors "^1.0.0" 2695 | 2696 | postcss-minify-font-values@^4.0.2: 2697 | version "4.0.2" 2698 | resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz#cd4c344cce474343fac5d82206ab2cbcb8afd5a6" 2699 | integrity sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg== 2700 | dependencies: 2701 | postcss "^7.0.0" 2702 | postcss-value-parser "^3.0.0" 2703 | 2704 | postcss-minify-gradients@^4.0.2: 2705 | version "4.0.2" 2706 | resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz#93b29c2ff5099c535eecda56c4aa6e665a663471" 2707 | integrity sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q== 2708 | dependencies: 2709 | cssnano-util-get-arguments "^4.0.0" 2710 | is-color-stop "^1.0.0" 2711 | postcss "^7.0.0" 2712 | postcss-value-parser "^3.0.0" 2713 | 2714 | postcss-minify-params@^4.0.2: 2715 | version "4.0.2" 2716 | resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz#6b9cef030c11e35261f95f618c90036d680db874" 2717 | integrity sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg== 2718 | dependencies: 2719 | alphanum-sort "^1.0.0" 2720 | browserslist "^4.0.0" 2721 | cssnano-util-get-arguments "^4.0.0" 2722 | postcss "^7.0.0" 2723 | postcss-value-parser "^3.0.0" 2724 | uniqs "^2.0.0" 2725 | 2726 | postcss-minify-selectors@^4.0.2: 2727 | version "4.0.2" 2728 | resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz#e2e5eb40bfee500d0cd9243500f5f8ea4262fbd8" 2729 | integrity sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g== 2730 | dependencies: 2731 | alphanum-sort "^1.0.0" 2732 | has "^1.0.0" 2733 | postcss "^7.0.0" 2734 | postcss-selector-parser "^3.0.0" 2735 | 2736 | postcss-modules-extract-imports@1.1.0: 2737 | version "1.1.0" 2738 | resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz#b614c9720be6816eaee35fb3a5faa1dba6a05ddb" 2739 | integrity sha1-thTJcgvmgW6u41+zpfqh26agXds= 2740 | dependencies: 2741 | postcss "^6.0.1" 2742 | 2743 | postcss-modules-local-by-default@1.2.0: 2744 | version "1.2.0" 2745 | resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" 2746 | integrity sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk= 2747 | dependencies: 2748 | css-selector-tokenizer "^0.7.0" 2749 | postcss "^6.0.1" 2750 | 2751 | postcss-modules-scope@1.1.0: 2752 | version "1.1.0" 2753 | resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" 2754 | integrity sha1-1upkmUx5+XtipytCb75gVqGUu5A= 2755 | dependencies: 2756 | css-selector-tokenizer "^0.7.0" 2757 | postcss "^6.0.1" 2758 | 2759 | postcss-modules-values@1.3.0: 2760 | version "1.3.0" 2761 | resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" 2762 | integrity sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA= 2763 | dependencies: 2764 | icss-replace-symbols "^1.1.0" 2765 | postcss "^6.0.1" 2766 | 2767 | postcss-modules@^2.0.0: 2768 | version "2.0.0" 2769 | resolved "https://registry.yarnpkg.com/postcss-modules/-/postcss-modules-2.0.0.tgz#473d0d7326651d8408585c2a154115d5cb36cce0" 2770 | integrity sha512-eqp+Bva+U2cwQO7dECJ8/V+X+uH1HduNeITB0CPPFAu6d/8LKQ32/j+p9rQ2YL1QytVcrNU0X+fBqgGmQIA1Rw== 2771 | dependencies: 2772 | css-modules-loader-core "^1.1.0" 2773 | generic-names "^2.0.1" 2774 | lodash.camelcase "^4.3.0" 2775 | postcss "^7.0.1" 2776 | string-hash "^1.1.1" 2777 | 2778 | postcss-normalize-charset@^4.0.1: 2779 | version "4.0.1" 2780 | resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz#8b35add3aee83a136b0471e0d59be58a50285dd4" 2781 | integrity sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g== 2782 | dependencies: 2783 | postcss "^7.0.0" 2784 | 2785 | postcss-normalize-display-values@^4.0.2: 2786 | version "4.0.2" 2787 | resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz#0dbe04a4ce9063d4667ed2be476bb830c825935a" 2788 | integrity sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ== 2789 | dependencies: 2790 | cssnano-util-get-match "^4.0.0" 2791 | postcss "^7.0.0" 2792 | postcss-value-parser "^3.0.0" 2793 | 2794 | postcss-normalize-positions@^4.0.2: 2795 | version "4.0.2" 2796 | resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz#05f757f84f260437378368a91f8932d4b102917f" 2797 | integrity sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA== 2798 | dependencies: 2799 | cssnano-util-get-arguments "^4.0.0" 2800 | has "^1.0.0" 2801 | postcss "^7.0.0" 2802 | postcss-value-parser "^3.0.0" 2803 | 2804 | postcss-normalize-repeat-style@^4.0.2: 2805 | version "4.0.2" 2806 | resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz#c4ebbc289f3991a028d44751cbdd11918b17910c" 2807 | integrity sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q== 2808 | dependencies: 2809 | cssnano-util-get-arguments "^4.0.0" 2810 | cssnano-util-get-match "^4.0.0" 2811 | postcss "^7.0.0" 2812 | postcss-value-parser "^3.0.0" 2813 | 2814 | postcss-normalize-string@^4.0.2: 2815 | version "4.0.2" 2816 | resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz#cd44c40ab07a0c7a36dc5e99aace1eca4ec2690c" 2817 | integrity sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA== 2818 | dependencies: 2819 | has "^1.0.0" 2820 | postcss "^7.0.0" 2821 | postcss-value-parser "^3.0.0" 2822 | 2823 | postcss-normalize-timing-functions@^4.0.2: 2824 | version "4.0.2" 2825 | resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz#8e009ca2a3949cdaf8ad23e6b6ab99cb5e7d28d9" 2826 | integrity sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A== 2827 | dependencies: 2828 | cssnano-util-get-match "^4.0.0" 2829 | postcss "^7.0.0" 2830 | postcss-value-parser "^3.0.0" 2831 | 2832 | postcss-normalize-unicode@^4.0.1: 2833 | version "4.0.1" 2834 | resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz#841bd48fdcf3019ad4baa7493a3d363b52ae1cfb" 2835 | integrity sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg== 2836 | dependencies: 2837 | browserslist "^4.0.0" 2838 | postcss "^7.0.0" 2839 | postcss-value-parser "^3.0.0" 2840 | 2841 | postcss-normalize-url@^4.0.1: 2842 | version "4.0.1" 2843 | resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz#10e437f86bc7c7e58f7b9652ed878daaa95faae1" 2844 | integrity sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA== 2845 | dependencies: 2846 | is-absolute-url "^2.0.0" 2847 | normalize-url "^3.0.0" 2848 | postcss "^7.0.0" 2849 | postcss-value-parser "^3.0.0" 2850 | 2851 | postcss-normalize-whitespace@^4.0.2: 2852 | version "4.0.2" 2853 | resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz#bf1d4070fe4fcea87d1348e825d8cc0c5faa7d82" 2854 | integrity sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA== 2855 | dependencies: 2856 | postcss "^7.0.0" 2857 | postcss-value-parser "^3.0.0" 2858 | 2859 | postcss-ordered-values@^4.1.2: 2860 | version "4.1.2" 2861 | resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz#0cf75c820ec7d5c4d280189559e0b571ebac0eee" 2862 | integrity sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw== 2863 | dependencies: 2864 | cssnano-util-get-arguments "^4.0.0" 2865 | postcss "^7.0.0" 2866 | postcss-value-parser "^3.0.0" 2867 | 2868 | postcss-reduce-initial@^4.0.3: 2869 | version "4.0.3" 2870 | resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz#7fd42ebea5e9c814609639e2c2e84ae270ba48df" 2871 | integrity sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA== 2872 | dependencies: 2873 | browserslist "^4.0.0" 2874 | caniuse-api "^3.0.0" 2875 | has "^1.0.0" 2876 | postcss "^7.0.0" 2877 | 2878 | postcss-reduce-transforms@^4.0.2: 2879 | version "4.0.2" 2880 | resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz#17efa405eacc6e07be3414a5ca2d1074681d4e29" 2881 | integrity sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg== 2882 | dependencies: 2883 | cssnano-util-get-match "^4.0.0" 2884 | has "^1.0.0" 2885 | postcss "^7.0.0" 2886 | postcss-value-parser "^3.0.0" 2887 | 2888 | postcss-selector-parser@^3.0.0: 2889 | version "3.1.2" 2890 | resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz#b310f5c4c0fdaf76f94902bbaa30db6aa84f5270" 2891 | integrity sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA== 2892 | dependencies: 2893 | dot-prop "^5.2.0" 2894 | indexes-of "^1.0.1" 2895 | uniq "^1.0.1" 2896 | 2897 | postcss-selector-parser@^6.0.2: 2898 | version "6.0.2" 2899 | resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz#934cf799d016c83411859e09dcecade01286ec5c" 2900 | integrity sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg== 2901 | dependencies: 2902 | cssesc "^3.0.0" 2903 | indexes-of "^1.0.1" 2904 | uniq "^1.0.1" 2905 | 2906 | postcss-svgo@^4.0.2: 2907 | version "4.0.2" 2908 | resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-4.0.2.tgz#17b997bc711b333bab143aaed3b8d3d6e3d38258" 2909 | integrity sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw== 2910 | dependencies: 2911 | is-svg "^3.0.0" 2912 | postcss "^7.0.0" 2913 | postcss-value-parser "^3.0.0" 2914 | svgo "^1.0.0" 2915 | 2916 | postcss-unique-selectors@^4.0.1: 2917 | version "4.0.1" 2918 | resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz#9446911f3289bfd64c6d680f073c03b1f9ee4bac" 2919 | integrity sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg== 2920 | dependencies: 2921 | alphanum-sort "^1.0.0" 2922 | postcss "^7.0.0" 2923 | uniqs "^2.0.0" 2924 | 2925 | postcss-value-parser@^3.0.0: 2926 | version "3.3.1" 2927 | resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" 2928 | integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== 2929 | 2930 | postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0: 2931 | version "4.1.0" 2932 | resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" 2933 | integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== 2934 | 2935 | postcss@6.0.1: 2936 | version "6.0.1" 2937 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.1.tgz#000dbd1f8eef217aa368b9a212c5fc40b2a8f3f2" 2938 | integrity sha1-AA29H47vIXqjaLmiEsX8QLKo8/I= 2939 | dependencies: 2940 | chalk "^1.1.3" 2941 | source-map "^0.5.6" 2942 | supports-color "^3.2.3" 2943 | 2944 | postcss@^6.0.1: 2945 | version "6.0.23" 2946 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" 2947 | integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== 2948 | dependencies: 2949 | chalk "^2.4.1" 2950 | source-map "^0.6.1" 2951 | supports-color "^5.4.0" 2952 | 2953 | postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.27, postcss@^7.0.32: 2954 | version "7.0.32" 2955 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz#4310d6ee347053da3433db2be492883d62cec59d" 2956 | integrity sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw== 2957 | dependencies: 2958 | chalk "^2.4.2" 2959 | source-map "^0.6.1" 2960 | supports-color "^6.1.0" 2961 | 2962 | pretty-bytes@^3.0.0: 2963 | version "3.0.1" 2964 | resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-3.0.1.tgz#27d0008d778063a0b4811bb35c79f1bd5d5fbccf" 2965 | integrity sha1-J9AAjXeAY6C0gRuzXHnxvV1fvM8= 2966 | dependencies: 2967 | number-is-nan "^1.0.0" 2968 | 2969 | pretty-bytes@^5.3.0: 2970 | version "5.3.0" 2971 | resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-5.3.0.tgz#f2849e27db79fb4d6cfe24764fc4134f165989f2" 2972 | integrity sha512-hjGrh+P926p4R4WbaB6OckyRtO0F0/lQBiT+0gnxjV+5kjPBrfVBFCsCLbMqVQeydvIoouYTCmmEURiH3R1Bdg== 2973 | 2974 | private@^0.1.8: 2975 | version "0.1.8" 2976 | resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" 2977 | integrity sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg== 2978 | 2979 | promise.series@^0.2.0: 2980 | version "0.2.0" 2981 | resolved "https://registry.yarnpkg.com/promise.series/-/promise.series-0.2.0.tgz#2cc7ebe959fc3a6619c04ab4dbdc9e452d864bbd" 2982 | integrity sha1-LMfr6Vn8OmYZwEq029yeRS2GS70= 2983 | 2984 | q@^1.1.2: 2985 | version "1.5.1" 2986 | resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" 2987 | integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= 2988 | 2989 | regenerate-unicode-properties@^8.2.0: 2990 | version "8.2.0" 2991 | resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec" 2992 | integrity sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA== 2993 | dependencies: 2994 | regenerate "^1.4.0" 2995 | 2996 | regenerate@^1.4.0: 2997 | version "1.4.1" 2998 | resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.1.tgz#cad92ad8e6b591773485fbe05a485caf4f457e6f" 2999 | integrity sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A== 3000 | 3001 | regenerator-runtime@^0.10.0: 3002 | version "0.10.5" 3003 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" 3004 | integrity sha1-M2w+/BIgrc7dosn6tntaeVWjNlg= 3005 | 3006 | regenerator-runtime@^0.11.0: 3007 | version "0.11.1" 3008 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" 3009 | integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== 3010 | 3011 | regenerator-runtime@^0.13.4: 3012 | version "0.13.5" 3013 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz#d878a1d094b4306d10b9096484b33ebd55e26697" 3014 | integrity sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA== 3015 | 3016 | regenerator-transform@^0.14.2: 3017 | version "0.14.4" 3018 | resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.14.4.tgz#5266857896518d1616a78a0479337a30ea974cc7" 3019 | integrity sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw== 3020 | dependencies: 3021 | "@babel/runtime" "^7.8.4" 3022 | private "^0.1.8" 3023 | 3024 | regexpu-core@^4.6.0, regexpu-core@^4.7.0: 3025 | version "4.7.0" 3026 | resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-4.7.0.tgz#fcbf458c50431b0bb7b45d6967b8192d91f3d938" 3027 | integrity sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ== 3028 | dependencies: 3029 | regenerate "^1.4.0" 3030 | regenerate-unicode-properties "^8.2.0" 3031 | regjsgen "^0.5.1" 3032 | regjsparser "^0.6.4" 3033 | unicode-match-property-ecmascript "^1.0.4" 3034 | unicode-match-property-value-ecmascript "^1.2.0" 3035 | 3036 | regjsgen@^0.5.1: 3037 | version "0.5.2" 3038 | resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.2.tgz#92ff295fb1deecbf6ecdab2543d207e91aa33733" 3039 | integrity sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A== 3040 | 3041 | regjsparser@^0.6.4: 3042 | version "0.6.4" 3043 | resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.4.tgz#a769f8684308401a66e9b529d2436ff4d0666272" 3044 | integrity sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw== 3045 | dependencies: 3046 | jsesc "~0.5.0" 3047 | 3048 | resolve-from@^3.0.0: 3049 | version "3.0.0" 3050 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" 3051 | integrity sha1-six699nWiBvItuZTM17rywoYh0g= 3052 | 3053 | resolve-from@^4.0.0: 3054 | version "4.0.0" 3055 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 3056 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 3057 | 3058 | resolve-from@^5.0.0: 3059 | version "5.0.0" 3060 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" 3061 | integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== 3062 | 3063 | resolve@1.12.0: 3064 | version "1.12.0" 3065 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" 3066 | integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== 3067 | dependencies: 3068 | path-parse "^1.0.6" 3069 | 3070 | resolve@^1.11.0, resolve@^1.11.1, resolve@^1.12.0, resolve@^1.16.0, resolve@^1.3.2: 3071 | version "1.17.0" 3072 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.17.0.tgz#b25941b54968231cc2d1bb76a79cb7f2c0bf8444" 3073 | integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== 3074 | dependencies: 3075 | path-parse "^1.0.6" 3076 | 3077 | restore-cursor@^2.0.0: 3078 | version "2.0.0" 3079 | resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" 3080 | integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= 3081 | dependencies: 3082 | onetime "^2.0.0" 3083 | signal-exit "^3.0.2" 3084 | 3085 | rgb-regex@^1.0.1: 3086 | version "1.0.1" 3087 | resolved "https://registry.yarnpkg.com/rgb-regex/-/rgb-regex-1.0.1.tgz#c0e0d6882df0e23be254a475e8edd41915feaeb1" 3088 | integrity sha1-wODWiC3w4jviVKR16O3UGRX+rrE= 3089 | 3090 | rgba-regex@^1.0.0: 3091 | version "1.0.0" 3092 | resolved "https://registry.yarnpkg.com/rgba-regex/-/rgba-regex-1.0.0.tgz#43374e2e2ca0968b0ef1523460b7d730ff22eeb3" 3093 | integrity sha1-QzdOLiyglosO8VI0YLfXMP8i7rM= 3094 | 3095 | rollup-plugin-bundle-size@^1.0.1: 3096 | version "1.0.3" 3097 | resolved "https://registry.yarnpkg.com/rollup-plugin-bundle-size/-/rollup-plugin-bundle-size-1.0.3.tgz#d245cd988486b4040279f9fd33f357f61673e90f" 3098 | integrity sha512-aWj0Pvzq90fqbI5vN1IvUrlf4utOqy+AERYxwWjegH1G8PzheMnrRIgQ5tkwKVtQMDP0bHZEACW/zLDF+XgfXQ== 3099 | dependencies: 3100 | chalk "^1.1.3" 3101 | maxmin "^2.1.0" 3102 | 3103 | rollup-plugin-es3@^1.1.0: 3104 | version "1.1.0" 3105 | resolved "https://registry.yarnpkg.com/rollup-plugin-es3/-/rollup-plugin-es3-1.1.0.tgz#f866f91b4db839e5b475d8e4a7b9d4c77ecade14" 3106 | integrity sha512-jTMqQgMZ/tkjRW4scf4ln5c0OiTSi+Lx/IEyFd41ldgGoLvvg9AQxmVOl93+KaoyB7XRYToYjiHDvO40NPF/fA== 3107 | dependencies: 3108 | magic-string "^0.22.4" 3109 | 3110 | rollup-plugin-postcss@^2.9.0: 3111 | version "2.9.0" 3112 | resolved "https://registry.yarnpkg.com/rollup-plugin-postcss/-/rollup-plugin-postcss-2.9.0.tgz#e6ea0a1b8fdc4a49fc0385da58804e332750c282" 3113 | integrity sha512-Y7qDwlqjZMBexbB1kRJf+jKIQL8HR6C+ay53YzN+nNJ64hn1PNZfBE3c61hFUhD//zrMwmm7uBW30RuTi+CD0w== 3114 | dependencies: 3115 | chalk "^4.0.0" 3116 | concat-with-sourcemaps "^1.1.0" 3117 | cssnano "^4.1.10" 3118 | import-cwd "^3.0.0" 3119 | p-queue "^6.3.0" 3120 | pify "^5.0.0" 3121 | postcss "^7.0.27" 3122 | postcss-load-config "^2.1.0" 3123 | postcss-modules "^2.0.0" 3124 | promise.series "^0.2.0" 3125 | resolve "^1.16.0" 3126 | rollup-pluginutils "^2.8.2" 3127 | safe-identifier "^0.4.1" 3128 | style-inject "^0.3.0" 3129 | 3130 | rollup-plugin-terser@^5.3.0: 3131 | version "5.3.0" 3132 | resolved "https://registry.yarnpkg.com/rollup-plugin-terser/-/rollup-plugin-terser-5.3.0.tgz#9c0dd33d5771df9630cd027d6a2559187f65885e" 3133 | integrity sha512-XGMJihTIO3eIBsVGq7jiNYOdDMb3pVxuzY0uhOE/FM4x/u9nQgr3+McsjzqBn3QfHIpNSZmFnpoKAwHBEcsT7g== 3134 | dependencies: 3135 | "@babel/code-frame" "^7.5.5" 3136 | jest-worker "^24.9.0" 3137 | rollup-pluginutils "^2.8.2" 3138 | serialize-javascript "^2.1.2" 3139 | terser "^4.6.2" 3140 | 3141 | rollup-plugin-typescript2@^0.25.3: 3142 | version "0.25.3" 3143 | resolved "https://registry.yarnpkg.com/rollup-plugin-typescript2/-/rollup-plugin-typescript2-0.25.3.tgz#a5fb2f0f85488789334ce540abe6c7011cbdf40f" 3144 | integrity sha512-ADkSaidKBovJmf5VBnZBZe+WzaZwofuvYdzGAKTN/J4hN7QJCFYAq7IrH9caxlru6T5qhX41PNFS1S4HqhsGQg== 3145 | dependencies: 3146 | find-cache-dir "^3.0.0" 3147 | fs-extra "8.1.0" 3148 | resolve "1.12.0" 3149 | rollup-pluginutils "2.8.1" 3150 | tslib "1.10.0" 3151 | 3152 | rollup-pluginutils@2.8.1: 3153 | version "2.8.1" 3154 | resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.1.tgz#8fa6dd0697344938ef26c2c09d2488ce9e33ce97" 3155 | integrity sha512-J5oAoysWar6GuZo0s+3bZ6sVZAC0pfqKz68De7ZgDi5z63jOVZn1uJL/+z1jeKHNbGII8kAyHF5q8LnxSX5lQg== 3156 | dependencies: 3157 | estree-walker "^0.6.1" 3158 | 3159 | rollup-pluginutils@^2.8.2: 3160 | version "2.8.2" 3161 | resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz#72f2af0748b592364dbd3389e600e5a9444a351e" 3162 | integrity sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ== 3163 | dependencies: 3164 | estree-walker "^0.6.1" 3165 | 3166 | rollup@^1.32.1: 3167 | version "1.32.1" 3168 | resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.32.1.tgz#4480e52d9d9e2ae4b46ba0d9ddeaf3163940f9c4" 3169 | integrity sha512-/2HA0Ec70TvQnXdzynFffkjA6XN+1e2pEv/uKS5Ulca40g2L7KuOE3riasHoNVHOsFD5KKZgDsMk1CP3Tw9s+A== 3170 | dependencies: 3171 | "@types/estree" "*" 3172 | "@types/node" "*" 3173 | acorn "^7.1.0" 3174 | 3175 | rtcpeerconnection-shim@^1.2.15: 3176 | version "1.2.15" 3177 | resolved "https://registry.yarnpkg.com/rtcpeerconnection-shim/-/rtcpeerconnection-shim-1.2.15.tgz#e7cc189a81b435324c4949aa3dfb51888684b243" 3178 | integrity sha512-C6DxhXt7bssQ1nHb154lqeL0SXz5Dx4RczXZu2Aa/L1NJFnEVDxFwCBo3fqtuljhHIGceg5JKBV4XJ0gW5JKyw== 3179 | dependencies: 3180 | sdp "^2.6.0" 3181 | 3182 | run-async@^2.2.0: 3183 | version "2.4.1" 3184 | resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" 3185 | integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== 3186 | 3187 | rx@^4.1.0: 3188 | version "4.1.0" 3189 | resolved "https://registry.yarnpkg.com/rx/-/rx-4.1.0.tgz#a5f13ff79ef3b740fe30aa803fb09f98805d4782" 3190 | integrity sha1-pfE/957zt0D+MKqAP7CfmIBdR4I= 3191 | 3192 | sade@^1.7.3: 3193 | version "1.7.3" 3194 | resolved "https://registry.yarnpkg.com/sade/-/sade-1.7.3.tgz#a217ccc4fb4abb2d271648bf48f6628b2636fa1b" 3195 | integrity sha512-m4BctppMvJ60W1dXnHq7jMmFe3hPJZDAH85kQ3ACTo7XZNVUuTItCQ+2HfyaMeV5cKrbw7l4vD/6We3GBxvdJw== 3196 | dependencies: 3197 | mri "^1.1.0" 3198 | 3199 | safe-buffer@~5.1.1: 3200 | version "5.1.2" 3201 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" 3202 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== 3203 | 3204 | safe-identifier@^0.4.1: 3205 | version "0.4.1" 3206 | resolved "https://registry.yarnpkg.com/safe-identifier/-/safe-identifier-0.4.1.tgz#b6516bf72594f03142b5f914f4c01842ccb1b678" 3207 | integrity sha512-73tOz5TXsq3apuCc3vC8c9QRhhdNZGiBhHmPPjqpH4TO5oCDqk8UIsDcSs/RG6dYcFAkOOva0pqHS3u7hh7XXA== 3208 | 3209 | "safer-buffer@>= 2.1.2 < 3": 3210 | version "2.1.2" 3211 | resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" 3212 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== 3213 | 3214 | sax@~1.2.4: 3215 | version "1.2.4" 3216 | resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" 3217 | integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== 3218 | 3219 | sdp@^2.12.0, sdp@^2.6.0: 3220 | version "2.12.0" 3221 | resolved "https://registry.yarnpkg.com/sdp/-/sdp-2.12.0.tgz#338a106af7560c86e4523f858349680350d53b22" 3222 | integrity sha512-jhXqQAQVM+8Xj5EjJGVweuEzgtGWb3tmEEpl3CLP3cStInSbVHSg0QWOGQzNq8pSID4JkpeV2mPqlMDLrm0/Vw== 3223 | 3224 | semver@7.0.0: 3225 | version "7.0.0" 3226 | resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" 3227 | integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== 3228 | 3229 | semver@^5.4.1, semver@^5.5.0: 3230 | version "5.7.1" 3231 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 3232 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 3233 | 3234 | semver@^6.0.0: 3235 | version "6.3.0" 3236 | resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" 3237 | integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== 3238 | 3239 | serialize-javascript@^2.1.1, serialize-javascript@^2.1.2: 3240 | version "2.1.2" 3241 | resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz#ecec53b0e0317bdc95ef76ab7074b7384785fa61" 3242 | integrity sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ== 3243 | 3244 | signal-exit@^3.0.2: 3245 | version "3.0.3" 3246 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c" 3247 | integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== 3248 | 3249 | simple-swizzle@^0.2.2: 3250 | version "0.2.2" 3251 | resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" 3252 | integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= 3253 | dependencies: 3254 | is-arrayish "^0.3.1" 3255 | 3256 | slash@^3.0.0: 3257 | version "3.0.0" 3258 | resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" 3259 | integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== 3260 | 3261 | source-map-support@~0.5.12: 3262 | version "0.5.19" 3263 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" 3264 | integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== 3265 | dependencies: 3266 | buffer-from "^1.0.0" 3267 | source-map "^0.6.0" 3268 | 3269 | source-map@^0.5.0, source-map@^0.5.6: 3270 | version "0.5.7" 3271 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 3272 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 3273 | 3274 | source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: 3275 | version "0.6.1" 3276 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 3277 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 3278 | 3279 | sourcemap-codec@^1.4.4: 3280 | version "1.4.8" 3281 | resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" 3282 | integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== 3283 | 3284 | sprintf-js@~1.0.2: 3285 | version "1.0.3" 3286 | resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" 3287 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= 3288 | 3289 | stable@^0.1.8: 3290 | version "0.1.8" 3291 | resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" 3292 | integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== 3293 | 3294 | string-hash@^1.1.1: 3295 | version "1.1.3" 3296 | resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b" 3297 | integrity sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs= 3298 | 3299 | string-width@^2.0.0: 3300 | version "2.1.1" 3301 | resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" 3302 | integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== 3303 | dependencies: 3304 | is-fullwidth-code-point "^2.0.0" 3305 | strip-ansi "^4.0.0" 3306 | 3307 | string.prototype.trimend@^1.0.1: 3308 | version "1.0.1" 3309 | resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz#85812a6b847ac002270f5808146064c995fb6913" 3310 | integrity sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g== 3311 | dependencies: 3312 | define-properties "^1.1.3" 3313 | es-abstract "^1.17.5" 3314 | 3315 | string.prototype.trimstart@^1.0.1: 3316 | version "1.0.1" 3317 | resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz#14af6d9f34b053f7cfc89b72f8f2ee14b9039a54" 3318 | integrity sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw== 3319 | dependencies: 3320 | define-properties "^1.1.3" 3321 | es-abstract "^1.17.5" 3322 | 3323 | strip-ansi@^3.0.0: 3324 | version "3.0.1" 3325 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 3326 | integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= 3327 | dependencies: 3328 | ansi-regex "^2.0.0" 3329 | 3330 | strip-ansi@^4.0.0: 3331 | version "4.0.0" 3332 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" 3333 | integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= 3334 | dependencies: 3335 | ansi-regex "^3.0.0" 3336 | 3337 | style-inject@^0.3.0: 3338 | version "0.3.0" 3339 | resolved "https://registry.yarnpkg.com/style-inject/-/style-inject-0.3.0.tgz#d21c477affec91811cc82355832a700d22bf8dd3" 3340 | integrity sha512-IezA2qp+vcdlhJaVm5SOdPPTUu0FCEqfNSli2vRuSIBbu5Nq5UvygTk/VzeCqfLz2Atj3dVII5QBKGZRZ0edzw== 3341 | 3342 | stylehacks@^4.0.0: 3343 | version "4.0.3" 3344 | resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-4.0.3.tgz#6718fcaf4d1e07d8a1318690881e8d96726a71d5" 3345 | integrity sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g== 3346 | dependencies: 3347 | browserslist "^4.0.0" 3348 | postcss "^7.0.0" 3349 | postcss-selector-parser "^3.0.0" 3350 | 3351 | supports-color@^2.0.0: 3352 | version "2.0.0" 3353 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" 3354 | integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= 3355 | 3356 | supports-color@^3.2.3: 3357 | version "3.2.3" 3358 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" 3359 | integrity sha1-ZawFBLOVQXHYpklGsq48u4pfVPY= 3360 | dependencies: 3361 | has-flag "^1.0.0" 3362 | 3363 | supports-color@^5.3.0, supports-color@^5.4.0: 3364 | version "5.5.0" 3365 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 3366 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 3367 | dependencies: 3368 | has-flag "^3.0.0" 3369 | 3370 | supports-color@^6.1.0: 3371 | version "6.1.0" 3372 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.1.0.tgz#0764abc69c63d5ac842dd4867e8d025e880df8f3" 3373 | integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== 3374 | dependencies: 3375 | has-flag "^3.0.0" 3376 | 3377 | supports-color@^7.1.0: 3378 | version "7.1.0" 3379 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz#68e32591df73e25ad1c4b49108a2ec507962bfd1" 3380 | integrity sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g== 3381 | dependencies: 3382 | has-flag "^4.0.0" 3383 | 3384 | svgo@^1.0.0: 3385 | version "1.3.2" 3386 | resolved "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz#b6dc511c063346c9e415b81e43401145b96d4167" 3387 | integrity sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw== 3388 | dependencies: 3389 | chalk "^2.4.1" 3390 | coa "^2.0.2" 3391 | css-select "^2.0.0" 3392 | css-select-base-adapter "^0.1.1" 3393 | css-tree "1.0.0-alpha.37" 3394 | csso "^4.0.2" 3395 | js-yaml "^3.13.1" 3396 | mkdirp "~0.5.1" 3397 | object.values "^1.1.0" 3398 | sax "~1.2.4" 3399 | stable "^0.1.8" 3400 | unquote "~1.1.1" 3401 | util.promisify "~1.0.0" 3402 | 3403 | terser@^4.6.2: 3404 | version "4.8.0" 3405 | resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" 3406 | integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== 3407 | dependencies: 3408 | commander "^2.20.0" 3409 | source-map "~0.6.1" 3410 | source-map-support "~0.5.12" 3411 | 3412 | through@^2.3.6: 3413 | version "2.3.8" 3414 | resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" 3415 | integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= 3416 | 3417 | timsort@^0.3.0: 3418 | version "0.3.0" 3419 | resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" 3420 | integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= 3421 | 3422 | tiny-glob@^0.2.6: 3423 | version "0.2.6" 3424 | resolved "https://registry.yarnpkg.com/tiny-glob/-/tiny-glob-0.2.6.tgz#9e056e169d9788fe8a734dfa1ff02e9b92ed7eda" 3425 | integrity sha512-A7ewMqPu1B5PWwC3m7KVgAu96Ch5LA0w4SnEN/LbDREj/gAD0nPWboRbn8YoP9ISZXqeNAlMvKSKoEuhcfK3Pw== 3426 | dependencies: 3427 | globalyzer "^0.1.0" 3428 | globrex "^0.1.1" 3429 | 3430 | tmp@^0.0.33: 3431 | version "0.0.33" 3432 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" 3433 | integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== 3434 | dependencies: 3435 | os-tmpdir "~1.0.2" 3436 | 3437 | to-fast-properties@^2.0.0: 3438 | version "2.0.0" 3439 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 3440 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= 3441 | 3442 | transit-immutable-js@^0.7.0: 3443 | version "0.7.0" 3444 | resolved "https://registry.yarnpkg.com/transit-immutable-js/-/transit-immutable-js-0.7.0.tgz#993e25089b6311ff402140f556276d6d253005d9" 3445 | integrity sha1-mT4lCJtjEf9AIUD1VidtbSUwBdk= 3446 | 3447 | transit-js@^0.8.861: 3448 | version "0.8.861" 3449 | resolved "https://registry.yarnpkg.com/transit-js/-/transit-js-0.8.861.tgz#829e516b80349a41fff5d59f5e6993b5473f72c9" 3450 | integrity sha512-4O9OrYPZw6C0M5gMTvaeOp+xYz6EF79JsyxIvqXHlt+pisSrioJWFOE80N8aCPoJLcNaXF442RZrVtdmd4wkDQ== 3451 | 3452 | tslib@1.10.0: 3453 | version "1.10.0" 3454 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a" 3455 | integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ== 3456 | 3457 | tslib@^1.13.0: 3458 | version "1.13.0" 3459 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" 3460 | integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== 3461 | 3462 | typescript@^3.9.5: 3463 | version "3.9.5" 3464 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.5.tgz#586f0dba300cde8be52dd1ac4f7e1009c1b13f36" 3465 | integrity sha512-hSAifV3k+i6lEoCJ2k6R2Z/rp/H3+8sdmcn5NrS3/3kE7+RyZXm9aqvxWqjEXHAd8b0pShatpcdMTvEdvAJltQ== 3466 | 3467 | unicode-canonical-property-names-ecmascript@^1.0.4: 3468 | version "1.0.4" 3469 | resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818" 3470 | integrity sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ== 3471 | 3472 | unicode-match-property-ecmascript@^1.0.4: 3473 | version "1.0.4" 3474 | resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz#8ed2a32569961bce9227d09cd3ffbb8fed5f020c" 3475 | integrity sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg== 3476 | dependencies: 3477 | unicode-canonical-property-names-ecmascript "^1.0.4" 3478 | unicode-property-aliases-ecmascript "^1.0.4" 3479 | 3480 | unicode-match-property-value-ecmascript@^1.2.0: 3481 | version "1.2.0" 3482 | resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz#0d91f600eeeb3096aa962b1d6fc88876e64ea531" 3483 | integrity sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ== 3484 | 3485 | unicode-property-aliases-ecmascript@^1.0.4: 3486 | version "1.1.0" 3487 | resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz#dd57a99f6207bedff4628abefb94c50db941c8f4" 3488 | integrity sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg== 3489 | 3490 | uniq@^1.0.1: 3491 | version "1.0.1" 3492 | resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" 3493 | integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= 3494 | 3495 | uniqs@^2.0.0: 3496 | version "2.0.0" 3497 | resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" 3498 | integrity sha1-/+3ks2slKQaW5uFl1KWe25mOawI= 3499 | 3500 | universalify@^0.1.0: 3501 | version "0.1.2" 3502 | resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" 3503 | integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== 3504 | 3505 | unquote@~1.1.1: 3506 | version "1.1.1" 3507 | resolved "https://registry.yarnpkg.com/unquote/-/unquote-1.1.1.tgz#8fded7324ec6e88a0ff8b905e7c098cdc086d544" 3508 | integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= 3509 | 3510 | util.promisify@~1.0.0: 3511 | version "1.0.1" 3512 | resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee" 3513 | integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== 3514 | dependencies: 3515 | define-properties "^1.1.3" 3516 | es-abstract "^1.17.2" 3517 | has-symbols "^1.0.1" 3518 | object.getownpropertydescriptors "^2.1.0" 3519 | 3520 | uuid@^3.4.0: 3521 | version "3.4.0" 3522 | resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" 3523 | integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== 3524 | 3525 | vendors@^1.0.0: 3526 | version "1.0.4" 3527 | resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz#e2b800a53e7a29b93506c3cf41100d16c4c4ad8e" 3528 | integrity sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w== 3529 | 3530 | vlq@^0.2.2: 3531 | version "0.2.3" 3532 | resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" 3533 | integrity sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow== 3534 | 3535 | webrtc-adapter@^7.3.0: 3536 | version "7.6.2" 3537 | resolved "https://registry.yarnpkg.com/webrtc-adapter/-/webrtc-adapter-7.6.2.tgz#4944ae6e26b22302a54c989f9483f57199651fc1" 3538 | integrity sha512-oDiPFHxSopYeXSykznpV4HfD7AjOq/5lCjeaO3uFfuXlBVN3garJcVsMCHgDy4Zl/69EgteMnkVgAs/s6AhltA== 3539 | dependencies: 3540 | rtcpeerconnection-shim "^1.2.15" 3541 | sdp "^2.12.0" 3542 | 3543 | wrappy@1: 3544 | version "1.0.2" 3545 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 3546 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 3547 | 3548 | yaml@^1.7.2: 3549 | version "1.10.0" 3550 | resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" 3551 | integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== 3552 | --------------------------------------------------------------------------------