diff --git a/README.md b/README.md index 40119d6a..e1bc5d8b 100644 --- a/README.md +++ b/README.md @@ -9,14 +9,20 @@ # @polkadot/ui -Basic browser and React components for creating apps using the polkadot{.js} libraries +Basic browser and UI components for creating apps using the polkadot{.js} libraries ## overview -The following libraries are currently available +The following UI components are currently available - -- [react-identicon](packages/react-identicon/) Identity icon generator with address as input +- [react-identicon](packages/react-identicon/) React identity icon generator with address as input +- [reactnative-identicon](packages/reactnative-identicon/) React Native identity icon generator with address as input +- [vue-identicon](packages/vue-identicon/) Vue identity icon generator with address as input - [react-qr](packages/react-qr/) QR code generator/reader for [uos](https://github.com/maciejhirsz/uos) (Substrate/Polkadot only) + +Additionally some shared libraries - + - [ui-assets](packages/ui-assets/) Static assets, images and others, shared accross projects - [ui-keyring](packages/ui-keyring/) A browser-specific wrapper around the base [@polkadot/util-keyring](https://github.com/polkadot-js/util/) library - [ui-settings](packages/ui-settings/) A browser local storage wrapper for app settings & configuration +- [ui-shared](packages/ui-shared) Shared logic that is used accross UI components, e.g. for icon generation diff --git a/babel.config.js b/babel.config.js index 1646d4f0..a78c34ee 100644 --- a/babel.config.js +++ b/babel.config.js @@ -1,3 +1,14 @@ -module.exports = { - extends: '@polkadot/dev-react/config/babel' -}; +/* eslint-disable @typescript-eslint/no-var-requires */ +const base = require('@polkadot/dev-react/config/babel'); + +module.exports = Object.keys(base).reduce((config, key) => { + config[key] = base[key]; + + if (key === 'plugins') { + config[key] = config[key].concat([ + 'transform-vue-template' + ]); + } + + return config; +}, {}); diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index fce640cf..aa729e36 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -24,8 +24,11 @@ module.exports = { sidebar: [ ['/react-identicon/', '@polkadot/react-identicon'], ['/react-qr/', '@polkadot/react-qr'], + ['/reactnative-identicon/', '@polkadot/reactnative-identicon'], ['/ui-keyring/', '@polkadot/ui-keyring'], ['/ui-settings/', '@polkadot/ui-settings'], + ['/ui-shared/', '@polkadot/ui-shared'], + ['/vue-identicon/', '@polkadot/vue-identicon'], '/CONTRIBUTING.md' ] } diff --git a/docs/README.md b/docs/README.md index e651d23f..d02b9fdc 100644 --- a/docs/README.md +++ b/docs/README.md @@ -18,7 +18,7 @@ footer: Apache-2 Licensed | Copyright © 2017-2019 polkadot-js authors and contr ## Welcome -This is a collection of UI (React) libraries, utlities and classes that allows for easier use of the Polkadot JS infrastructure inside your apps. +This is a collection of UI libraries, utlities and classes that allows for easier use of the Polkadot JS infrastructure inside your apps. ::: tip Examples In a rush and just want examples? [Jump right in](react-identicon/README.md) and get a handle the libraries in your projects. @@ -28,10 +28,9 @@ In a rush and just want examples? [Jump right in](react-identicon/README.md) and This repository split up into a number of internal packages, namely - -- [identicon](react-identicon/README.md) Display of identity icons based on theme +- [React Identicon](react-identicon/README.md) Display of identity icons based on theme, also availble for [React Native](reactnative-identicon/README.md) and [Vue](vue-identicon/README.md) - [keyring](ui-keyring/README.md) A keyring with browser-specific extensions - [settings](ui-settings/README.md) Setting management and defaults -- [util](ui-util/README.md) UI-specific utility functions ## The Polkadot Project diff --git a/package.json b/package.json index aee7279e..309b5570 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,8 @@ "check": "yarn lint", "lint": "eslint --ext .js,.jsx,.ts,.tsx . && tsc --noEmit --pretty", "clean": "polkadot-dev-clean-build", - "demo:identicon": "webpack-serve --config packages/ui-identicon/webpack.config.js --content packages/ui-identicon --port 3000", + "demo:identicon:react": "webpack-serve --config packages/react-identicon/webpack.config.js --content packages/react-identicon --port 3000", + "demo:identicon:vue": "webpack-serve --config packages/vue-identicon/webpack.config.js --content packages/vue-identicon --port 3000", "postinstall": "polkadot-dev-yarn-only", "test": "jest --coverage", "test:one": "jest" @@ -27,7 +28,9 @@ "@babel/runtime": "^7.5.5", "@polkadot/dev-react": "^0.30.0-beta.24", "@polkadot/ts": "^0.1.63", + "babel-plugin-transform-vue-template": "^0.4.2", "empty": "^0.10.1", - "gh-pages": "^2.1.0" + "gh-pages": "2.0.1", + "webpack-serve": "^3.1.1" } } diff --git a/packages/react-identicon/src/icons/Beachball.tsx b/packages/react-identicon/src/icons/Beachball.tsx index ee992d18..9d5daa99 100644 --- a/packages/react-identicon/src/icons/Beachball.tsx +++ b/packages/react-identicon/src/icons/Beachball.tsx @@ -5,8 +5,7 @@ import { Props } from '../types'; import React from 'react'; - -import identicon from '../beachball'; +import generate from '@polkadot/ui-shared/beachballIcon'; export default class Beachball extends React.PureComponent { public render (): React.ReactNode { @@ -26,7 +25,7 @@ export default class Beachball extends React.PureComponent { if (node) { node.appendChild( - identicon(address, size) + generate(address, size) ); } } diff --git a/packages/reactnative-identicon/package.json b/packages/reactnative-identicon/package.json index 32943c0d..041c2b6b 100644 --- a/packages/reactnative-identicon/package.json +++ b/packages/reactnative-identicon/package.json @@ -14,14 +14,10 @@ "react-native-svg": "^9.5.3" }, "peerDependencies": { - "@polkadot/keyring": "*", - "@polkadot/util-crypto": "*", "react": "*", "react-native": "*" }, "devDependencies": { - "@polkadot/keyring": "^1.0.1", - "@polkadot/util-crypto": "^1.0.1", "react-native": "^0.60.4" } } diff --git a/packages/reactnative-identicon/src/Identicon.tsx b/packages/reactnative-identicon/src/Identicon.tsx index dd4c51ac..4b35c46e 100644 --- a/packages/reactnative-identicon/src/Identicon.tsx +++ b/packages/reactnative-identicon/src/Identicon.tsx @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/reactnative-identicon authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/reactnative-identicon/src/icons/Empty.tsx b/packages/reactnative-identicon/src/icons/Empty.tsx index b3b24f9d..c7e98e65 100644 --- a/packages/reactnative-identicon/src/icons/Empty.tsx +++ b/packages/reactnative-identicon/src/icons/Empty.tsx @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/reactnative-identicon authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/reactnative-identicon/src/icons/Polkadot.tsx b/packages/reactnative-identicon/src/icons/Polkadot.tsx index 6954e054..46d1675f 100644 --- a/packages/reactnative-identicon/src/icons/Polkadot.tsx +++ b/packages/reactnative-identicon/src/icons/Polkadot.tsx @@ -1,4 +1,4 @@ -// Copyright 2018 @polkadot/react-identicon authors & contributors +// Copyright 2018 @polkadot/reactnative-identicon authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/reactnative-identicon/src/icons/index.ts b/packages/reactnative-identicon/src/icons/index.ts index ead1e775..de7675e2 100644 --- a/packages/reactnative-identicon/src/icons/index.ts +++ b/packages/reactnative-identicon/src/icons/index.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/reactnative-identicon authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/reactnative-identicon/src/index.ts b/packages/reactnative-identicon/src/index.ts index d0269426..40805e73 100644 --- a/packages/reactnative-identicon/src/index.ts +++ b/packages/reactnative-identicon/src/index.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/reactnative-identicon authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/reactnative-identicon/src/type-stubs.d.ts b/packages/reactnative-identicon/src/type-stubs.d.ts index 541adb0e..2c8157bb 100644 --- a/packages/reactnative-identicon/src/type-stubs.d.ts +++ b/packages/reactnative-identicon/src/type-stubs.d.ts @@ -1,4 +1,4 @@ -// Copyright 2018 @polkadot/react-identicon authors & contributors +// Copyright 2018 @polkadot/reactnative-identicon authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/reactnative-identicon/src/types.ts b/packages/reactnative-identicon/src/types.ts index 01ca837e..b50a51f8 100644 --- a/packages/reactnative-identicon/src/types.ts +++ b/packages/reactnative-identicon/src/types.ts @@ -1,4 +1,4 @@ -// Copyright 2018 @polkadot/react-identicon authors & contributors +// Copyright 2018 @polkadot/reactnative-identicon authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/ui-shared/.nodoc b/packages/ui-shared/.nodoc deleted file mode 100644 index e69de29b..00000000 diff --git a/packages/ui-shared/README.md b/packages/ui-shared/README.md index 96194164..84a392c0 100644 --- a/packages/ui-shared/README.md +++ b/packages/ui-shared/README.md @@ -1,3 +1,3 @@ -# @polkadot/ui-assets +# @polkadot/ui-shared -Static assets including images shared across projects +Shared logic for various logic, i.e. for identicon generation diff --git a/packages/ui-shared/package.json b/packages/ui-shared/package.json index 5bf2745c..0f58e185 100644 --- a/packages/ui-shared/package.json +++ b/packages/ui-shared/package.json @@ -15,5 +15,8 @@ }, "peerDependencies": { "@polkadot/util-crypto": "*" + }, + "devDependencies": { + "@polkadot/util-crypto": "^1.0.1" } } diff --git a/packages/react-identicon/src/beachball/LICENSE b/packages/ui-shared/src/beachballIcon/LICENSE similarity index 91% rename from packages/react-identicon/src/beachball/LICENSE rename to packages/ui-shared/src/beachballIcon/LICENSE index 6255b215..15495cb8 100644 --- a/packages/react-identicon/src/beachball/LICENSE +++ b/packages/ui-shared/src/beachballIcon/LICENSE @@ -1,7 +1,7 @@ Apache-2.0 License (Apache-2.0) Copyright 2016 Dan Finlay -Copyright 2017-2019 @polkadot/react-identicon authors & contributors +Copyright 2017-2019 @polkadot/ui-shared authors & contributors Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above diff --git a/packages/react-identicon/src/beachball/README.md b/packages/ui-shared/src/beachballIcon/README.md similarity index 92% rename from packages/react-identicon/src/beachball/README.md rename to packages/ui-shared/src/beachballIcon/README.md index e00ebd04..96c91a00 100644 --- a/packages/react-identicon/src/beachball/README.md +++ b/packages/ui-shared/src/beachballIcon/README.md @@ -1,4 +1,4 @@ -# @polkadot/react-identicon/beachball +# @polkadot/ui-shared/beachball Adapted from [Jazzicon](https://github.com/danfinlay/jazzicon) by Dan Finlay with the following changes - @@ -16,4 +16,4 @@ Adapted from [Jazzicon](https://github.com/danfinlay/jazzicon) by Dan Finlay wit Also see [src/demo.js](src/demo.js) for a randomly generated example. -![demo](https://raw.githubusercontent.com/polkadot-js/ui/master/packages/react-identicon/demo.png) +![demo](https://raw.githubusercontent.com/polkadot-js/ui/master/packages/ui-shared/demo.png) diff --git a/packages/react-identicon/src/beachball/colors.spec.ts b/packages/ui-shared/src/beachballIcon/colors.spec.ts similarity index 94% rename from packages/react-identicon/src/beachball/colors.spec.ts rename to packages/ui-shared/src/beachballIcon/colors.spec.ts index 8ee4cb45..266fcde3 100644 --- a/packages/react-identicon/src/beachball/colors.spec.ts +++ b/packages/ui-shared/src/beachballIcon/colors.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/colors.ts b/packages/ui-shared/src/beachballIcon/colors.ts similarity index 90% rename from packages/react-identicon/src/beachball/colors.ts rename to packages/ui-shared/src/beachballIcon/colors.ts index b61a3ef0..f2b81de0 100644 --- a/packages/react-identicon/src/beachball/colors.ts +++ b/packages/ui-shared/src/beachballIcon/colors.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/container.spec.ts b/packages/ui-shared/src/beachballIcon/container.spec.ts similarity index 94% rename from packages/react-identicon/src/beachball/container.spec.ts rename to packages/ui-shared/src/beachballIcon/container.spec.ts index 3db6426c..b616dd79 100644 --- a/packages/react-identicon/src/beachball/container.spec.ts +++ b/packages/ui-shared/src/beachballIcon/container.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/container.ts b/packages/ui-shared/src/beachballIcon/container.ts similarity index 92% rename from packages/react-identicon/src/beachball/container.ts rename to packages/ui-shared/src/beachballIcon/container.ts index 2d31aa58..e24e8070 100644 --- a/packages/react-identicon/src/beachball/container.ts +++ b/packages/ui-shared/src/beachballIcon/container.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/defaults.ts b/packages/ui-shared/src/beachballIcon/defaults.ts similarity index 85% rename from packages/react-identicon/src/beachball/defaults.ts rename to packages/ui-shared/src/beachballIcon/defaults.ts index 12c81479..33d139a1 100644 --- a/packages/react-identicon/src/beachball/defaults.ts +++ b/packages/ui-shared/src/beachballIcon/defaults.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/demo.ts b/packages/ui-shared/src/beachballIcon/demo.ts similarity index 92% rename from packages/react-identicon/src/beachball/demo.ts rename to packages/ui-shared/src/beachballIcon/demo.ts index 824df742..f30d9cb7 100644 --- a/packages/react-identicon/src/beachball/demo.ts +++ b/packages/ui-shared/src/beachballIcon/demo.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/index.spec.ts b/packages/ui-shared/src/beachballIcon/index.spec.ts similarity index 96% rename from packages/react-identicon/src/beachball/index.spec.ts rename to packages/ui-shared/src/beachballIcon/index.spec.ts index 0ca1ac11..806691cc 100644 --- a/packages/react-identicon/src/beachball/index.spec.ts +++ b/packages/ui-shared/src/beachballIcon/index.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/index.ts b/packages/ui-shared/src/beachballIcon/index.ts similarity index 93% rename from packages/react-identicon/src/beachball/index.ts rename to packages/ui-shared/src/beachballIcon/index.ts index 0803eac2..577eae4e 100644 --- a/packages/react-identicon/src/beachball/index.ts +++ b/packages/ui-shared/src/beachballIcon/index.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/seeder.spec.ts b/packages/ui-shared/src/beachballIcon/seeder.spec.ts similarity index 89% rename from packages/react-identicon/src/beachball/seeder.spec.ts rename to packages/ui-shared/src/beachballIcon/seeder.spec.ts index acf60568..e3b1ad09 100644 --- a/packages/react-identicon/src/beachball/seeder.spec.ts +++ b/packages/ui-shared/src/beachballIcon/seeder.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/seeder.ts b/packages/ui-shared/src/beachballIcon/seeder.ts similarity index 90% rename from packages/react-identicon/src/beachball/seeder.ts rename to packages/ui-shared/src/beachballIcon/seeder.ts index 4f415437..954a8d4f 100644 --- a/packages/react-identicon/src/beachball/seeder.ts +++ b/packages/ui-shared/src/beachballIcon/seeder.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/shape/circle.spec.ts b/packages/ui-shared/src/beachballIcon/shape/circle.spec.ts similarity index 87% rename from packages/react-identicon/src/beachball/shape/circle.spec.ts rename to packages/ui-shared/src/beachballIcon/shape/circle.spec.ts index 3a0c2092..41b92c3f 100644 --- a/packages/react-identicon/src/beachball/shape/circle.spec.ts +++ b/packages/ui-shared/src/beachballIcon/shape/circle.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/shape/circle.ts b/packages/ui-shared/src/beachballIcon/shape/circle.ts similarity index 91% rename from packages/react-identicon/src/beachball/shape/circle.ts rename to packages/ui-shared/src/beachballIcon/shape/circle.ts index 753ff668..ab22a1cc 100644 --- a/packages/react-identicon/src/beachball/shape/circle.ts +++ b/packages/ui-shared/src/beachballIcon/shape/circle.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/shape/square.ts b/packages/ui-shared/src/beachballIcon/shape/square.ts similarity index 93% rename from packages/react-identicon/src/beachball/shape/square.ts rename to packages/ui-shared/src/beachballIcon/shape/square.ts index d68f4174..7598c289 100644 --- a/packages/react-identicon/src/beachball/shape/square.ts +++ b/packages/ui-shared/src/beachballIcon/shape/square.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/svg/circle.spec.ts b/packages/ui-shared/src/beachballIcon/svg/circle.spec.ts similarity index 86% rename from packages/react-identicon/src/beachball/svg/circle.spec.ts rename to packages/ui-shared/src/beachballIcon/svg/circle.spec.ts index 1d37f380..f86be9d2 100644 --- a/packages/react-identicon/src/beachball/svg/circle.spec.ts +++ b/packages/ui-shared/src/beachballIcon/svg/circle.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/svg/circle.ts b/packages/ui-shared/src/beachballIcon/svg/circle.ts similarity index 85% rename from packages/react-identicon/src/beachball/svg/circle.ts rename to packages/ui-shared/src/beachballIcon/svg/circle.ts index 18b2bafa..cf3aabee 100644 --- a/packages/react-identicon/src/beachball/svg/circle.ts +++ b/packages/ui-shared/src/beachballIcon/svg/circle.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/svg/element.spec.ts b/packages/ui-shared/src/beachballIcon/svg/element.spec.ts similarity index 86% rename from packages/react-identicon/src/beachball/svg/element.spec.ts rename to packages/ui-shared/src/beachballIcon/svg/element.spec.ts index 5aded045..6f1f7bbf 100644 --- a/packages/react-identicon/src/beachball/svg/element.spec.ts +++ b/packages/ui-shared/src/beachballIcon/svg/element.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/svg/element.ts b/packages/ui-shared/src/beachballIcon/svg/element.ts similarity index 87% rename from packages/react-identicon/src/beachball/svg/element.ts rename to packages/ui-shared/src/beachballIcon/svg/element.ts index 20a8f545..4b955f1d 100644 --- a/packages/react-identicon/src/beachball/svg/element.ts +++ b/packages/ui-shared/src/beachballIcon/svg/element.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/svg/rect.spec.ts b/packages/ui-shared/src/beachballIcon/svg/rect.spec.ts similarity index 87% rename from packages/react-identicon/src/beachball/svg/rect.spec.ts rename to packages/ui-shared/src/beachballIcon/svg/rect.spec.ts index be94d2b4..a872d279 100644 --- a/packages/react-identicon/src/beachball/svg/rect.spec.ts +++ b/packages/ui-shared/src/beachballIcon/svg/rect.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/svg/rect.ts b/packages/ui-shared/src/beachballIcon/svg/rect.ts similarity index 84% rename from packages/react-identicon/src/beachball/svg/rect.ts rename to packages/ui-shared/src/beachballIcon/svg/rect.ts index bbb21da0..1533c46f 100644 --- a/packages/react-identicon/src/beachball/svg/rect.ts +++ b/packages/ui-shared/src/beachballIcon/svg/rect.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/svg/svg.spec.ts b/packages/ui-shared/src/beachballIcon/svg/svg.spec.ts similarity index 85% rename from packages/react-identicon/src/beachball/svg/svg.spec.ts rename to packages/ui-shared/src/beachballIcon/svg/svg.spec.ts index 11af9a25..9351f04d 100644 --- a/packages/react-identicon/src/beachball/svg/svg.spec.ts +++ b/packages/ui-shared/src/beachballIcon/svg/svg.spec.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/svg/svg.ts b/packages/ui-shared/src/beachballIcon/svg/svg.ts similarity index 81% rename from packages/react-identicon/src/beachball/svg/svg.ts rename to packages/ui-shared/src/beachballIcon/svg/svg.ts index d16b5d3c..1f6b033b 100644 --- a/packages/react-identicon/src/beachball/svg/svg.ts +++ b/packages/ui-shared/src/beachballIcon/svg/svg.ts @@ -1,5 +1,5 @@ // Copyright 2016 Dan Finlay -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/types.ts b/packages/ui-shared/src/beachballIcon/types.ts similarity index 75% rename from packages/react-identicon/src/beachball/types.ts rename to packages/ui-shared/src/beachballIcon/types.ts index 0fa6022c..fce8e07d 100644 --- a/packages/react-identicon/src/beachball/types.ts +++ b/packages/ui-shared/src/beachballIcon/types.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/react-identicon/src/beachball/xmlserializer.d.ts b/packages/ui-shared/src/beachballIcon/xmlserializer.d.ts similarity index 69% rename from packages/react-identicon/src/beachball/xmlserializer.d.ts rename to packages/ui-shared/src/beachballIcon/xmlserializer.d.ts index 4d09f73d..bb6855ae 100644 --- a/packages/react-identicon/src/beachball/xmlserializer.d.ts +++ b/packages/ui-shared/src/beachballIcon/xmlserializer.d.ts @@ -1,4 +1,4 @@ -// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// Copyright 2017-2019 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. diff --git a/packages/ui-shared/src/polkadotIcon.ts b/packages/ui-shared/src/polkadotIcon.ts index f2155ec7..5ed0d244 100644 --- a/packages/ui-shared/src/polkadotIcon.ts +++ b/packages/ui-shared/src/polkadotIcon.ts @@ -1,5 +1,5 @@ // Copyright 2018 Paritytech via paritytech/oo7/polkadot-identicon -// Copyright 2018 @polkadot/react-identicon authors & contributors +// Copyright 2018 @polkadot/ui-shared authors & contributors // This software may be modified and distributed under the terms // of the Apache-2.0 license. See the LICENSE file for details. @@ -131,6 +131,9 @@ function getColors (address: string): string[] { ); } +/** + * @description Generate a array of the circles that make up an indenticon + */ export default function generate (address: string, isSixPoint: boolean = false): Circle[] { const colors = getColors(address); diff --git a/packages/vue-identicon/LICENSE b/packages/vue-identicon/LICENSE new file mode 100644 index 00000000..0d381b2e --- /dev/null +++ b/packages/vue-identicon/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright [yyyy] [name of copyright owner] + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/packages/vue-identicon/README.md b/packages/vue-identicon/README.md new file mode 100644 index 00000000..96d0b58d --- /dev/null +++ b/packages/vue-identicon/README.md @@ -0,0 +1,32 @@ +# @polkadot/vue-identicon + +A generic identity icon that can render icons based on an address. + +## Usage Examples + +To install the component, do `yarn add @polkadot/vue-identicon` and then use it with `import Identicon from '@polkadot/vu-identicon';` + +Inside a Vue component, you can now render any account with the associated icon, with associated props - + +- `value` - the address you wish to display +- `size` (optional, defaults to `64`) - the size in pixels +- `theme` (optional, defaults to `substrate`) - the theme to use, one of + - `polkadot` or + - `substrate` (equivalent to `jdenticon`) or + - `beachball` or + - `empty` (displaying nothing) + +``` + + + +``` diff --git a/packages/vue-identicon/index.html b/packages/vue-identicon/index.html new file mode 100644 index 00000000..9819328a --- /dev/null +++ b/packages/vue-identicon/index.html @@ -0,0 +1,17 @@ + + + + + + +
+ + + diff --git a/packages/vue-identicon/package.json b/packages/vue-identicon/package.json new file mode 100644 index 00000000..bb32b6f4 --- /dev/null +++ b/packages/vue-identicon/package.json @@ -0,0 +1,19 @@ +{ + "name": "@polkadot/vue-identicon", + "version": "0.42.0-beta.27", + "description": "Renders an SVG picture representing an address", + "author": "Jaco Greeff ", + "maintainers": [ + "Jaco Greeff " + ], + "main": "index.js", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime": "^7.5.5", + "@polkadot/ui-shared": "^0.42.0-beta.27", + "jdenticon": "2.2.0" + }, + "peerDependencies": { + "vue": "*" + } +} diff --git a/packages/vue-identicon/src/Demo.ts b/packages/vue-identicon/src/Demo.ts new file mode 100644 index 00000000..2c44b642 --- /dev/null +++ b/packages/vue-identicon/src/Demo.ts @@ -0,0 +1,41 @@ +// Copyright 2017-2019 @polkadot/vue-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +import Vue, { VNode } from 'vue'; + +import Identicon from './index'; + +interface Data { + address: string; + size: number; +} + +/** + * @name Demo + * @description Demo component + */ +const Demo = Vue.extend({ + template: ` +
+ + + + +
+ `, + name: 'Demo', + data: function (): Data { + return { + address: '5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY', + size: 128 + }; + }, + components: { + Identicon + } +}); + +new Vue({ + render: (h): VNode => h(Demo) +}).$mount('#demo'); diff --git a/packages/vue-identicon/src/Identicon.ts b/packages/vue-identicon/src/Identicon.ts new file mode 100644 index 00000000..51a0baf6 --- /dev/null +++ b/packages/vue-identicon/src/Identicon.ts @@ -0,0 +1,78 @@ +// Copyright 2017-2019 @polkadot/vue-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +import Vue from 'vue'; +import { isHex, isU8a, u8aToHex } from '@polkadot/util'; +import { decodeAddress, encodeAddress } from '@polkadot/util-crypto'; + +import { Beachball, Empty, Jdenticon, Polkadot } from './icons'; + +interface Data { + address: string; + iconSize: number; + publicKey: string; + type: 'beachball' | 'empty' | 'jdenticon' | 'polkadot' | 'substrate'; +} + +const DEFAULT_SIZE = 64; + +/** + * @name Identicon + * @description The main Identicon component, taking a number of properties + * @example + * ```html + * + * ``` + */ +export const Identicon = Vue.extend({ + // FIXME These nested divs are not correct, would like a different way + // here so we don't create a div wrapped for the div wrapper of the icon + template: ` +
+ +
+
+ +
+
+ +
+
+ +
+ `, + props: ['prefix', 'size', 'theme', 'value'], + components: { + Beachball, + Empty, + Jdenticon, + Polkadot + }, + data: function (): Data { + return { + address: '', + iconSize: DEFAULT_SIZE, + publicKey: '0x', + type: 'empty' + }; + }, + created: function (): void { + this.createData(); + }, + methods: { + createData: function (): void { + this.iconSize = this.size || DEFAULT_SIZE; + + try { + this.address = isU8a(this.value) || isHex(this.value) + ? encodeAddress(this.value as string, this.prefix) + : this.value; + this.publicKey = u8aToHex(decodeAddress(this.address, false, this.prefix)); + this.type = this.theme; + } catch (error) { + this.address = ''; + } + } + } +}); diff --git a/packages/vue-identicon/src/icons/Beachball.ts b/packages/vue-identicon/src/icons/Beachball.ts new file mode 100644 index 00000000..155a12ba --- /dev/null +++ b/packages/vue-identicon/src/icons/Beachball.ts @@ -0,0 +1,32 @@ +// Copyright 2017-2019 @polkadot/vue-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +import Vue from 'vue'; +import generate from '@polkadot/ui-shared/beachballIcon'; + +interface Data { + html: string; +} + +/** + * @name Beachball + * @description The Beachball identicon + */ +export const Beachball = Vue.extend({ + template: `
`, + props: ['address', 'size'], + data: function (): Data { + return { + html: `
` + }; + }, + created: function (): void { + this.createHtml(); + }, + methods: { + createHtml: function (): void { + this.html = generate(this.address, this.size).outerHTML; + } + } +}); diff --git a/packages/vue-identicon/src/icons/Empty.ts b/packages/vue-identicon/src/icons/Empty.ts new file mode 100644 index 00000000..f4681aee --- /dev/null +++ b/packages/vue-identicon/src/icons/Empty.ts @@ -0,0 +1,18 @@ +// Copyright 2017-2019 @polkadot/vue-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +import Vue from 'vue'; + +/** + * @name Empty + * @description An empty identicon + */ +export const Empty = Vue.extend({ + template: ` + + + + `, + props: ['size'] +}); diff --git a/packages/vue-identicon/src/icons/Jdenticon.ts b/packages/vue-identicon/src/icons/Jdenticon.ts new file mode 100644 index 00000000..0bfb5e9c --- /dev/null +++ b/packages/vue-identicon/src/icons/Jdenticon.ts @@ -0,0 +1,32 @@ +// Copyright 2017-2019 @polkadot/vue-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +import Vue from 'vue'; +import jdenticon from 'jdenticon'; + +interface Data { + svgHtml: string; +} + +/** + * @name Jdenticon + * @description The substrate default via Jdenticon + */ +export const Jdenticon = Vue.extend({ + template: `
`, + props: ['publicKey', 'size'], + data: function (): Data { + return { + svgHtml: `` + }; + }, + created: function (): void { + this.createSvgHtml(); + }, + methods: { + createSvgHtml: function (): void { + this.svgHtml = jdenticon.toSvg(this.publicKey.substr(2), this.size); + } + } +}); diff --git a/packages/vue-identicon/src/icons/Polkadot.ts b/packages/vue-identicon/src/icons/Polkadot.ts new file mode 100644 index 00000000..17bb220c --- /dev/null +++ b/packages/vue-identicon/src/icons/Polkadot.ts @@ -0,0 +1,36 @@ +// Copyright 2017-2019 @polkadot/vue-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +import Vue from 'vue'; +import generateIcon from '@polkadot/ui-shared/polkadotIcon'; + +interface Data { + svgHtml: string; +} + +/** + * @name Polkadot + * @description The Polkadot default identicon + */ +export const Polkadot = Vue.extend({ + template: `
`, + props: ['address', 'size'], + data: function (): Data { + return { + svgHtml: `` + }; + }, + created: function (): void { + this.createSvgHtml(); + }, + methods: { + createSvgHtml: function (): void { + const circles = generateIcon(this.address).map(({ cx, cy, fill, r }): string => + `` + ).join(''); + + this.svgHtml = `${circles}`; + } + } +}); diff --git a/packages/vue-identicon/src/icons/index.ts b/packages/vue-identicon/src/icons/index.ts new file mode 100644 index 00000000..3e2b7efd --- /dev/null +++ b/packages/vue-identicon/src/icons/index.ts @@ -0,0 +1,8 @@ +// Copyright 2017-2019 @polkadot/reactnative-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +export * from './Beachball'; +export * from './Empty'; +export * from './Jdenticon'; +export * from './Polkadot'; diff --git a/packages/vue-identicon/src/index.ts b/packages/vue-identicon/src/index.ts new file mode 100644 index 00000000..5867cbf0 --- /dev/null +++ b/packages/vue-identicon/src/index.ts @@ -0,0 +1,7 @@ +// Copyright 2017-2019 @polkadot/vue-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +import { Identicon } from './Identicon'; + +export default Identicon; diff --git a/packages/vue-identicon/webpack.config.js b/packages/vue-identicon/webpack.config.js new file mode 100644 index 00000000..477d2edb --- /dev/null +++ b/packages/vue-identicon/webpack.config.js @@ -0,0 +1,45 @@ +/* eslint-disable @typescript-eslint/no-var-requires */ +// Copyright 2017-2019 @polkadot/react-identicon authors & contributors +// This software may be modified and distributed under the terms +// of the Apache-2.0 license. See the LICENSE file for details. + +const path = require('path'); +const VueLoaderPlugin = require('vue-loader/lib/plugin'); + +const ENV = process.env.NODE_ENV || 'development'; +const isProd = ENV === 'production'; + +module.exports = { + context: __dirname, + devtool: isProd ? 'source-map' : 'cheap-eval-source-map', + entry: './src/Demo.ts', + mode: ENV, + output: { + path: path.join(__dirname, 'build'), + filename: './demo.js' + }, + resolve: { + alias: { + '@polkadot/ui-shared': path.resolve(__dirname, '../ui-shared/src') + }, + extensions: ['.js', '.ts'] + }, + module: { + rules: [ + { + test: /\.(js|ts)$/, + exclude: /(node_modules)/, + use: [ + 'babel-loader' + ] + }, + { + test: /\.vue$/, + loader: 'vue-loader' + } + ] + }, + plugins: [ + new VueLoaderPlugin() + ] +}; diff --git a/tsconfig.json b/tsconfig.json index aca1e010..c3d01d00 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -16,7 +16,9 @@ "@polkadot/ui-settings": [ "packages/ui-settings/src" ], "@polkadot/ui-settings/*": [ "packages/ui-settings/src/*" ], "@polkadot/ui-shared": [ "packages/ui-shared/src" ], - "@polkadot/ui-shared/*": [ "packages/ui-shared/src/*" ] + "@polkadot/ui-shared/*": [ "packages/ui-shared/src/*" ], + "@polkadot/vue-identicon": [ "packages/vue-identicon/src" ], + "@polkadot/vue-identicon/*": [ "packages/vue-identicon/src/*" ] }, "typeRoots": [ "./node_modules/@polkadot/ts", diff --git a/yarn.lock b/yarn.lock index d106d0df..47554b10 100644 --- a/yarn.lock +++ b/yarn.lock @@ -922,7 +922,7 @@ dependencies: regenerator-runtime "^0.13.2" -"@babel/template@^7.0.0", "@babel/template@^7.1.0", "@babel/template@^7.4.0", "@babel/template@^7.4.4": +"@babel/template@^7.0.0", "@babel/template@^7.0.0-beta.46", "@babel/template@^7.1.0", "@babel/template@^7.4.0", "@babel/template@^7.4.4": version "7.4.4" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237" integrity sha512-CiGzLN9KgAvgZsnivND7rkA+AeJ9JB0ciPOD4U59GKbQP2iQl+olF1l76kJOupqidozfZ32ghwBEJDhnk9MEcw== @@ -2369,9 +2369,9 @@ integrity sha512-yALhelO3i0hqZwhjtcr6dYyaLoCHbAMshwtj6cGxTvHZAKXHsYGdff6E8EPw3xLKY0ELUTQ69Q1rQiJENnccMA== "@types/jest@^24.0.16": - version "24.0.16" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.16.tgz#8d3e406ec0f0dc1688d6711af3062ff9bd428066" - integrity sha512-JrAiyV+PPGKZzw6uxbI761cHZ0G7QMOHXPhtSpcl08rZH6CswXaaejckn3goFKmF7M3nzEoJ0lwYCbqLMmjziQ== + version "24.0.17" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.17.tgz#b66ea026efb746eb5db1356ee28518aaff7af416" + integrity sha512-1cy3xkOAfSYn78dsBWy4M3h/QF/HeWPchNFDjysVtp3GHeTdSmtluNnELfCmfNRRHo0OWEcpf+NsEJQvwQfdqQ== dependencies: "@types/jest-diff" "*" @@ -2547,9 +2547,9 @@ svg-tags "^1.0.0" "@vue/babel-preset-app@^3.1.1": - version "3.9.2" - resolved "https://registry.yarnpkg.com/@vue/babel-preset-app/-/babel-preset-app-3.9.2.tgz#b72a9b06abbe3f8f272783be13951271277be338" - integrity sha512-0suuCbu4jkVcVYBjPmuKxeDbrhwThYZHu3DUmtsVuOzFEGeXmco60VmXveniL/bnDUdZyknSuYP4FxgS34gw9w== + version "3.10.0" + resolved "https://registry.yarnpkg.com/@vue/babel-preset-app/-/babel-preset-app-3.10.0.tgz#3f89d631dd0f174c8a72e769b55f081c533c4677" + integrity sha512-NzJLI4Qe0SYm9gVHQC9RXyP0YcPjI28TmZ0ds2RJa9NO96LXHLES2U1HqiMDN4+CVjOQFrWUNd7wWeaETRPXbg== dependencies: "@babel/helper-module-imports" "^7.0.0" "@babel/plugin-proposal-class-properties" "^7.0.0" @@ -3565,6 +3565,14 @@ babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== +babel-plugin-transform-vue-template@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-vue-template/-/babel-plugin-transform-vue-template-0.4.2.tgz#7899dee289ba743644d7091e23db9f46695ce649" + integrity sha512-4rqM83oRbLnbFYMri5dMAqlJgLOBFw0begZ+5z0YimpKCEavuugtVSEN1jSB0IS0N9H1+umuK3hahbaAPp3deA== + dependencies: + "@babel/template" "^7.0.0-beta.46" + vue-template-es2015-compiler "^1.5.3" + babel-preset-fbjs@^3.1.2, babel-preset-fbjs@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.2.0.tgz#c0e6347d3e0379ed84b3c2434d3467567aa05297" @@ -3646,9 +3654,9 @@ base62@^1.1.0: integrity sha512-V6YHUbjLxN1ymqNLb1DPHoU1CpfdL7d2YTIp5W3U4hhoG4hhxNmsFDs66M9EXxBiSEke5Bt5dwdfMwwZF70iLA== base64-js@^1.0.2, base64-js@^1.1.2, base64-js@^1.2.3: - version "1.3.0" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.0.tgz#cab1e6118f051095e58b5281aea8c1cd22bfc0e3" - integrity sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw== + version "1.3.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.3.1.tgz#58ece8cb75dd07e71ed08c736abc5fac4dbf8df1" + integrity sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g== base@^0.11.1: version "0.11.2" @@ -4173,9 +4181,9 @@ caniuse-api@^3.0.0: lodash.uniq "^4.5.0" caniuse-lite@^1.0.0, caniuse-lite@^1.0.30000980, caniuse-lite@^1.0.30000984: - version "1.0.30000988" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000988.tgz#742f35ec1b8b75b9628d705d7652eea1fef983db" - integrity sha512-lPj3T8poYrRc/bniW5SQPND3GRtSrQdUM/R4mCYTbZxyi3jQiggLvZH4+BYUuX0t4TXjU+vMM7KFDQg+rSzZUQ== + version "1.0.30000989" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000989.tgz#b9193e293ccf7e4426c5245134b8f2a56c0ac4b9" + integrity sha512-vrMcvSuMz16YY6GSVZ0dWDTJP8jqk3iFQ/Aq5iqblPwxSVVZI+zxDyTX0VPqtQsDnfdrBDcsmhgTEOh5R8Lbpw== canvas-renderer@~2.1.1: version "2.1.1" @@ -4583,9 +4591,9 @@ connect@^3.6.5: utils-merge "1.0.1" consola@^2.6.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/consola/-/consola-2.9.0.tgz#57760e3a65a53ec27337f4add31505802d902278" - integrity sha512-34Iue+LRcWbndFIfZc5boNizWlsrRjqIBJZTe591vImgbnq7nx2EzlrLtANj9TH2Fxm7puFJBJAOk5BhvZOddQ== + version "2.10.1" + resolved "https://registry.yarnpkg.com/consola/-/consola-2.10.1.tgz#4693edba714677c878d520e4c7e4f69306b4b927" + integrity sha512-4sxpH6SGFYLADfUip4vuY65f/gEogrzJoniVhNUYkJHtng0l8ZjnDCqxxrSVRHOHwKxsy8Vm5ONZh1wOR3/l/w== console-browserify@^1.1.0: version "1.1.0" @@ -5257,6 +5265,13 @@ decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= +decamelize@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-3.2.0.tgz#84b8e8f4f8c579f938e35e2cc7024907e0090851" + integrity sha512-4TgkVUsmmu7oCSyGBm5FvfMoACuoh9EOidm7V5/J2X2djAwwt57qb3F2KMP2ITqODTCSwb+YRV+0Zqrv18k/hw== + dependencies: + xregexp "^4.2.4" + decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" @@ -5674,9 +5689,9 @@ ee-first@1.1.1: integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= electron-to-chromium@^1.3.191: - version "1.3.212" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.212.tgz#15d81ba96edb8ae6f937cde0fdb18c1c3c2bfec5" - integrity sha512-H8z5Smi1s1u1zGegEBfbxUAzrxyk1JoRHHHrlNGfhxv3sTb+p/Jz7JDvrR4196Q/Ip8r4+XwWcLvKrUjFKoJAg== + version "1.3.215" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.215.tgz#c833cb31110c2e0a7dade1110648c2174f75233b" + integrity sha512-ZV3OnwF0FlIygwxAG2H92yt7WGjWBpawyFAFu8e9k7xJatY+BPowID0D0Bs3PMACYAJATEejw/I9cawO27ZvTg== elliptic@^6.0.0, elliptic@^6.4.1: version "6.5.0" @@ -6987,10 +7002,10 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" -gh-pages@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/gh-pages/-/gh-pages-2.1.0.tgz#dcf519825d77d3a3ee78763076f4158403fc88c4" - integrity sha512-QmV1fh/2W5GZkfoLsG4g6dRTWiNYuCetMQmm8CL6Us8JVnAufYtS0uJPD8NYogmNB4UZzdRG44uPAL+jcBzEwQ== +gh-pages@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/gh-pages/-/gh-pages-2.0.1.tgz#aefe47a43b8d9d2aa3130576b33fe95641e29a2f" + integrity sha512-uFlk3bukljeiWKQ2XvPfjcSi/ou7IfoDf2p+Fj672saLAr8bnOdFVqI/JSgrSgInKpCg5BksxEwGUl++dbg8Dg== dependencies: async "^2.6.1" commander "^2.18.0" @@ -7235,9 +7250,9 @@ good-listener@^1.2.2: delegate "^3.1.2" graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.0.tgz#8d8fdc73977cb04104721cb53666c1ca64cd328b" - integrity sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg== + version "4.2.1" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.1.tgz#1c1f0c364882c868f5bff6512146328336a11b1d" + integrity sha512-b9usnbDGnD928gJB3LrCmxoibr3VE4U2SMo5PBuBnokWyDADTqDPXg4YpwKF1trpH+UbGp7QLicO3+aWEy0+mw== gray-matter@^4.0.1: version "4.0.2" @@ -7398,6 +7413,11 @@ hmac-drbg@^1.0.0: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" +hoek@6.x.x: + version "6.1.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-6.1.3.tgz#73b7d33952e01fe27a38b0457294b79dd8da242c" + integrity sha512-YXXAAhmF9zpQbC7LEcREFtXfGq5K1fmd+4PHkBq8NUqmzW3G+Dq10bI/i0KucLRwss3YYFQ0fSfoxBZYiGUqtQ== + hogan.js@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/hogan.js/-/hogan.js-3.0.2.tgz#4cd9e1abd4294146e7679e41d7898732b02c7bfd" @@ -7421,9 +7441,11 @@ homedir-polyfill@^1.0.1: parse-passwd "^1.0.0" hosted-git-info@^2.1.4, hosted-git-info@^2.6.0: - version "2.7.1" - resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047" - integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w== + version "2.8.2" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.2.tgz#a35c3f355ac1249f1093c0c2a542ace8818c171a" + integrity sha512-CyjlXII6LMsPMyUzxpTt8fzh5QwzGqPmQXgY/Jyf4Zfp27t/FvfhwoE/8laaMUcMy816CkWF20I7NeQhwwY88w== + dependencies: + lru-cache "^5.1.1" hpack.js@^2.1.6: version "2.1.6" @@ -7730,6 +7752,14 @@ import-local@2.0.0, import-local@^2.0.0: pkg-dir "^3.0.0" resolve-cwd "^2.0.0" +import-local@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.2.tgz#a8cfd0431d1de4a2199703d003e3e62364fa6db6" + integrity sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA== + dependencies: + pkg-dir "^4.2.0" + resolve-cwd "^3.0.0" + imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -8147,6 +8177,11 @@ is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= +is-plain-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.0.0.tgz#7fd1a7f1b69e160cde9181d2313f445c68aa2679" + integrity sha512-EYisGhpgSCwspmIuRHGjROWTon2Xp8Z7U03Wubk/bTL5TTRC5R1rGVgyjzBrk9+ULdH6cRD06KRcw/xfqhVYKQ== + is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" @@ -8276,6 +8311,13 @@ isarray@^2.0.1: resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== +isemail@3.x.x: + version "3.2.0" + resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.2.0.tgz#59310a021931a9fb06bbb51e155ce0b3f236832c" + integrity sha512-zKqkK+O+dGqevc93KNsbZ/TqTUFd46MwWjYOoMrjIMZ51eU7DtQG3Wmd9SQQT7i7RVnuTPEiYEWHU3MSbxC1Tg== + dependencies: + punycode "2.x.x" + isexe@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" @@ -8726,6 +8768,15 @@ jetifier@^1.6.2: resolved "https://registry.yarnpkg.com/jetifier/-/jetifier-1.6.3.tgz#61a95b29aefddfe3b6d81ee956f5e99f8b9cba19" integrity sha512-i0rb2nHVPZDPzFhgs9+yYxEDMh2z0iSHRD3vBQmvn98wlgWKwhmU2F3MUEEXfK+MLnKwLKqsCTvlcS1+CpDTUg== +joi@^14.3.0: + version "14.3.1" + resolved "https://registry.yarnpkg.com/joi/-/joi-14.3.1.tgz#164a262ec0b855466e0c35eea2a885ae8b6c703c" + integrity sha512-LQDdM+pkOrpAn4Lp+neNIFV3axv1Vna3j38bisbQhETPMANYRbFJFUyOZcOClYvM/hppMhGWuKSFEK9vjrB+bQ== + dependencies: + hoek "6.x.x" + isemail "3.x.x" + topo "3.x.x" + jquery@^3.4.1: version "3.4.1" resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.4.1.tgz#714f1f8d9dde4bdfa55764ba37ef214630d80ef2" @@ -8966,7 +9017,7 @@ klaw@^1.0.0: optionalDependencies: graceful-fs "^4.1.9" -kleur@^3.0.2: +kleur@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== @@ -9179,7 +9230,7 @@ load-json-file@^4.0.0: pify "^3.0.0" strip-bom "^3.0.0" -load-json-file@^5.3.0: +load-json-file@^5.2.0, load-json-file@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== @@ -10392,9 +10443,9 @@ node-modules-regexp@^1.0.0: integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= node-notifier@^5.2.1: - version "5.4.0" - resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.0.tgz#7b455fdce9f7de0c63538297354f3db468426e6a" - integrity sha512-SUDEb+o71XR5lXSTyivXd9J7fCloE3SyP4lSgt3lU2oSANiox+SxlNRGPjDKrwU1YN3ix2KN/VGGCg0t01rttQ== + version "5.4.1" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.4.1.tgz#7c0192cc63aedb25cd99619174daa27902b10903" + integrity sha512-p52B+onAEHKW1OF9MGO/S7k/ahGEHfhP5/tvwYzog/5XLYOd8ZuD6vdNZdUuWMONRnKPneXV43v3s6Snx1wsCQ== dependencies: growly "^1.3.0" is-wsl "^1.1.0" @@ -10644,6 +10695,11 @@ object-keys@^1.0.11, object-keys@^1.0.12, object-keys@^1.1.0: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== +object-path@^0.11.4: + version "0.11.4" + resolved "https://registry.yarnpkg.com/object-path/-/object-path-0.11.4.tgz#370ae752fbf37de3ea70a861c23bba8915691949" + integrity sha1-NwrnUvvzfePqcKhhwju6iRVpGUk= + object-visit@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" @@ -10750,6 +10806,13 @@ onetime@^2.0.0: dependencies: mimic-fn "^1.0.0" +onetime@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-3.0.0.tgz#7fc4d348742091d2510328455a556cf137e16d75" + integrity sha512-t2j1nTo7vb2m/ZQAq5rcWjQgAglF/2rnvlO0cxkZ1GFOSEt0sQBHaytm5tC1ZNUlmKZAp5XF44kolGL9W/XJ2w== + dependencies: + mimic-fn "^1.0.0" + onetime@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz#fff0f3c91617fe62bb50189636e99ac8a6df7be5" @@ -10774,7 +10837,7 @@ opencollective-postinstall@^2.0.2: resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.2.tgz#5657f1bede69b6e33a45939b061eb53d3c6c3a89" integrity sha512-pVOEP16TrAO2/fjej1IdOyupJY8KDUM1CvsaScRbw6oddvpQoOfGk4ywha0HKKVAD6RkW4x6Q+tNBwhf3Bgpuw== -opn@^5.5.0: +opn@^5.4.0, opn@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/opn/-/opn-5.5.0.tgz#fc7164fab56d235904c51c3b27da6758ca3b9bfc" integrity sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA== @@ -11295,6 +11358,14 @@ pirates@^4.0.0, pirates@^4.0.1: dependencies: node-modules-regexp "^1.0.0" +pkg-conf@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/pkg-conf/-/pkg-conf-3.1.0.tgz#d9f9c75ea1bae0e77938cde045b276dac7cc69ae" + integrity sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ== + dependencies: + find-up "^3.0.0" + load-json-file "^5.2.0" + pkg-dir@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" @@ -11309,6 +11380,13 @@ pkg-dir@^3.0.0: dependencies: find-up "^3.0.0" +pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + pkg-up@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz#c819ac728059a461cab1c3889a2be3c49a004d7f" @@ -11711,9 +11789,9 @@ postcss-value-parser@^3.0.0, postcss-value-parser@^3.3.0, postcss-value-parser@^ integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== postcss-value-parser@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.0.tgz#99a983d365f7b2ad8d0f9b8c3094926eab4b936d" - integrity sha512-ESPktioptiSUchCKgggAkzdmkgzKfmp0EU8jXH+5kbIUB+unr0Y4CY9SRMvibuvYUBjNh1ACLbxqYNpdTQOteQ== + version "4.0.1" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.1.tgz#e3f6172cc91302912c89da55a42454025485250f" + integrity sha512-3Jk+/CVH0HBfgSSFWALKm9Hyzf4kumPjZfUxkRYZNcqFztELb2APKxv0nlX8HCdc1/ymePmT/nFf1ST6fjWH2A== postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.5, postcss@^7.0.6: version "7.0.17" @@ -11820,12 +11898,12 @@ promise@^7.1.1: asap "~2.0.3" prompts@^2.0.1: - version "2.1.0" - resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.1.0.tgz#bf90bc71f6065d255ea2bdc0fe6520485c1b45db" - integrity sha512-+x5TozgqYdOwWsQFZizE/Tra3fKvAoy037kOyU6cgz84n8f6zxngLOV4O32kTwt9FcLCxAqw0P/c8rOr9y+Gfg== + version "2.2.1" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.2.1.tgz#f901dd2a2dfee080359c0e20059b24188d75ad35" + integrity sha512-VObPvJiWPhpZI6C5m60XOzTfnYg/xc/an+r9VYymj9WJW3B/DIH+REzjpAACPf8brwPeP+7vz3bIim3S+AaMjw== dependencies: - kleur "^3.0.2" - sisteransi "^1.0.0" + kleur "^3.0.3" + sisteransi "^1.0.3" promzard@^0.3.0: version "0.3.0" @@ -11934,16 +12012,16 @@ punycode@1.3.2: resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= +punycode@2.x.x, punycode@^2.1.0, punycode@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + punycode@^1.2.4, punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= -punycode@^2.1.0, punycode@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" - integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== - q@^1.1.2, q@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" @@ -12126,9 +12204,9 @@ react-lifecycles-compat@^3.0.4: integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== react-native-svg@^9.5.3: - version "9.5.3" - resolved "https://registry.yarnpkg.com/react-native-svg/-/react-native-svg-9.5.3.tgz#2389f3ffd700c6441166496a1aeade31ead89c59" - integrity sha512-VUOe4TLz7RFdmm/XT9EH87VSwlRykx49qbwJMA+dh9eFM7KPY1qH3kEyN7uRCqJD2eE8toxt9NpjR6ByvtPNlA== + version "9.6.2" + resolved "https://registry.yarnpkg.com/react-native-svg/-/react-native-svg-9.6.2.tgz#e29b626f115230e0f0f3693887f36e60b5b01408" + integrity sha512-TwTEkGTe2aRh1VBemFIuc6bCvPmlVUAd2kk4HmZLuxyBDAzEAbWYFsvDSkGd9mZ06ghx1gDg+c0hrH3y0q/eDA== react-native@^0.60.4: version "0.60.4" @@ -12387,6 +12465,13 @@ rechoir@^0.6.2: dependencies: resolve "^1.1.6" +rechoir@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.0.tgz#32650fd52c21ab252aa5d65b19310441c7e03aca" + integrity sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q== + dependencies: + resolve "^1.9.0" + redent@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" @@ -12605,6 +12690,13 @@ resolve-cwd@^2.0.0: dependencies: resolve-from "^3.0.0" +resolve-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== + dependencies: + resolve-from "^5.0.0" + resolve-dir@^1.0.0, resolve-dir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" @@ -12623,6 +12715,11 @@ resolve-from@^4.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + resolve-path@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/resolve-path/-/resolve-path-1.4.0.tgz#c4bda9f5efb2fce65247873ab36bb4d834fe16f7" @@ -12641,7 +12738,7 @@ resolve@1.1.7: resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs= -resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.2.0, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1: +resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.10.1, resolve@^1.11.0, resolve@^1.2.0, resolve@^1.3.2, resolve@^1.4.0, resolve@^1.5.0, resolve@^1.8.1, resolve@^1.9.0: version "1.12.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz#3fc644a35c84a48554609ff26ec52b66fa577df6" integrity sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w== @@ -12860,9 +12957,9 @@ schema-utils@^2.0.0: ajv-keywords "^3.1.0" sdp@^2.6.0, sdp@^2.9.0: - version "2.9.0" - resolved "https://registry.yarnpkg.com/sdp/-/sdp-2.9.0.tgz#2eed2d9c0b26c81ff87593107895c68d6fb9a0a6" - integrity sha512-XAVZQO4qsfzVTHorF49zCpkdxiGmPNjA8ps8RcJGtGP3QJ/A8I9/SVg/QnkAFDMXIyGbHZBBFwYBw6WdnhT96w== + version "2.10.0" + resolved "https://registry.yarnpkg.com/sdp/-/sdp-2.10.0.tgz#643fff1a43cdba54a739c7b202f56bd854474af2" + integrity sha512-H+VjfyQpRz9GezhshJmkXTtCAT9/2g9az3GFDPYfGOz0eAOQU1fCrL3S9Dq/eUT9FtOyLi/czdR9PzK3fKUYOQ== secp256k1@^3.7.0: version "3.7.1" @@ -13075,10 +13172,10 @@ simple-swizzle@^0.2.2: dependencies: is-arrayish "^0.3.1" -sisteransi@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.2.tgz#ec57d64b6f25c4f26c0e2c7dd23f2d7f12f7e418" - integrity sha512-ZcYcZcT69nSLAR2oLN2JwNmLkJEKGooFMCdvOkFrToUt/WfcRWqhIg4P4KwY4dmLbuyXIx4o4YmPsvMRJYJd/w== +sisteransi@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.3.tgz#98168d62b79e3a5e758e27ae63c4a053d748f4eb" + integrity sha512-SbEG75TzH8G7eVXFSN5f9EExILKfly7SUvVY5DhhYLvfhKqhDFY0OzevWa/zwak0RLRfWS5AvfMWpd9gJvr5Yg== slash@^1.0.0: version "1.0.0" @@ -13972,6 +14069,13 @@ toml@^3.0.0: resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== +topo@3.x.x: + version "3.0.3" + resolved "https://registry.yarnpkg.com/topo/-/topo-3.0.3.tgz#d5a67fb2e69307ebeeb08402ec2a2a6f5f7ad95c" + integrity sha512-IgpPtvD4kjrJ7CRA3ov2FhWQADwv+Tdqbsf1ZnPUSAtCJ9e1Z44MmoSGDXGk4IppoZA7jd/QRkNddlLJWlUZsQ== + dependencies: + hoek "6.x.x" + toposort@^1.0.0: version "1.0.7" resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029" @@ -14087,9 +14191,9 @@ tsutils@^2.29.0: tslib "^1.8.1" tsutils@^3.0.0, tsutils@^3.7.0, tsutils@^3.9.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.14.1.tgz#f1d2b93d2a0876481f2f1f98c25ba42bbd7ee860" - integrity sha512-kiuZzD1uUA5DxGj/uxbde+ymp6VVdAxdzOIlAFbYKrPyla8/uiJ9JLBm1QsPhOm4Muj0/+cWEDP99yoCUcSl6Q== + version "3.17.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.0.tgz#c3ccab927a475aa2beef6a3695c2ff76da13cdf8" + integrity sha512-fyveWOtAXfumAxIqkcMHuPaaVyLBKjB8Y00ANZkqh+HITBAQscCbQIHwwBTJdvQq7RykLEbOPcUUnJ16X4NA0g== dependencies: tslib "^1.8.1" @@ -14166,9 +14270,9 @@ typedoc-default-themes@^0.6.0: underscore "^1.9.1" typedoc-plugin-markdown@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/typedoc-plugin-markdown/-/typedoc-plugin-markdown-2.1.0.tgz#17b7b97415b97214985d1a61ef7b9a4dce3e8305" - integrity sha512-f7CgreapeUIpm85BnC4ec9PZp10INOpLpItSCV4YFlZS4VaBA/a1D2nYv9+7TVJugc084XlSFUY+OX9fwGAUpA== + version "2.1.1" + resolved "https://registry.yarnpkg.com/typedoc-plugin-markdown/-/typedoc-plugin-markdown-2.1.1.tgz#b9bbb48c23b1994be3b9b09f2626887bac613aa0" + integrity sha512-AQxnYLwdOzwCTo+VAVIxIXuVdMsK3Jamyd4m29630Llga+i59dqsYyduFFlzlJM8Xu8EiVCeURwr+vwMl87Gqg== typedoc-plugin-no-inherit@^1.1.9: version "1.1.9" @@ -14463,11 +14567,16 @@ uuid@^3.0.1, uuid@^3.3.2: resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131" integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA== -v8-compile-cache@2.0.3, v8-compile-cache@^2.0.3: +v8-compile-cache@2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz#00f7494d2ae2b688cfe2899df6ed2c54bef91dbe" integrity sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w== +v8-compile-cache@^2.0.2, v8-compile-cache@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz#e14de37b31a6d194f5690d67efc4e7f6fc6ab30e" + integrity sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g== + validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" @@ -14529,9 +14638,9 @@ vue-loader@^15.2.4: vue-style-loader "^4.1.0" vue-router@^3.0.2: - version "3.0.7" - resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.0.7.tgz#b36ca107b4acb8ff5bc4ff824584059c23fcb87b" - integrity sha512-utJ+QR3YlIC/6x6xq17UMXeAfxEvXA0VKD3PiSio7hBOZNusA1jXcbxZxVEfJunLp48oonjTepY8ORoIlRx/EQ== + version "3.1.0" + resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.1.0.tgz#e193d2de7abff75fd793a038a92bdb399259327c" + integrity sha512-i1jCgNtJeRqIXPz91BAZ9/eSnqiQjJHXIToOmeqBtKLSqt4Ok8vzBhVJ/pd/nDDX4wQ5OfVXRn9BaCkI19nZsA== vue-server-renderer@^2.5.16: version "2.6.10" @@ -14563,7 +14672,7 @@ vue-template-compiler@^2.5.16: de-indent "^1.0.2" he "^1.1.0" -vue-template-es2015-compiler@^1.9.0: +vue-template-es2015-compiler@^1.5.3, vue-template-es2015-compiler@^1.9.0: version "1.9.1" resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz#1ee3bc9a16ecbf5118be334bb15f9c46f82f5825" integrity sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw== @@ -14742,6 +14851,30 @@ webpack-plugin-ramdisk@^0.1.2: chalk "^2.4.1" execa "^2.0.0" +webpack-plugin-serve@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/webpack-plugin-serve/-/webpack-plugin-serve-0.11.0.tgz#40718a050a1c055b6fa72390599c6587b1a27d0a" + integrity sha512-5ZokdVdq5m+JnYYgtuiipg8cjs1f3eyXXX+gbRpftlYEvmzpI9SWEWj3imBTUDSxFbMWSBsoqiW5N3oAY8N1Nw== + dependencies: + chalk "^2.4.1" + connect-history-api-fallback "^1.5.0" + globby "^9.2.0" + http-proxy-middleware "^0.19.0" + is-promise "^2.1.0" + joi "^14.3.0" + koa "^2.5.3" + koa-compress "^3.0.0" + koa-connect "^2.0.1" + koa-route "^3.2.0" + koa-static "^5.0.0" + loglevelnext "^3.0.0" + nanoid "^2.0.0" + onetime "^3.0.0" + opn "^5.4.0" + p-defer "^1.0.0" + strip-ansi "^5.0.0" + ws "^6.0.0" + webpack-plugin-serve@^0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/webpack-plugin-serve/-/webpack-plugin-serve-0.12.0.tgz#402281b18a06ec83c9acd85e9be5b1da35b311af" @@ -14770,10 +14903,26 @@ webpack-plugin-serve@^0.12.0: webpack-plugin-ramdisk "^0.1.2" ws "^7.1.0" +webpack-serve@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/webpack-serve/-/webpack-serve-3.1.1.tgz#7d2ca78dd54e81fc6d6239a93badb6a86727149d" + integrity sha512-8alr/2EJSwv9MN1Q5IAazfDPcUSQeEEkv1J70+xmcrzXa4IxZxkFhkoYGZ4aghS/2Rc3c0Kg5gd/ou8XMTti5w== + dependencies: + chalk "^2.4.2" + decamelize "^3.0.0" + import-local "^3.0.1" + is-plain-obj "^2.0.0" + object-path "^0.11.4" + pkg-conf "^3.0.0" + rechoir "^0.7.0" + v8-compile-cache "^2.0.2" + webpack-plugin-serve "^0.11.0" + yargs-parser "^13.0.0" + webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.1.tgz#b91b2c5b1c4e890ff50d1d35b7fa3657040da1da" - integrity sha512-XSz38193PTo/1csJabKaV4b53uRVotlMgqJXm3s3eje0Bu6gQTxYDqpD38CmQfDBA+gN+QqaGjasuC8I/7eW3Q== + version "1.4.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" + integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== dependencies: source-list-map "^2.0.0" source-map "~0.6.1" @@ -15046,6 +15195,13 @@ ws@^5.2.0: dependencies: async-limiter "~1.0.0" +ws@^6.0.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.1.tgz#442fdf0a47ed64f59b6a5d8ff130f4748ed524fb" + integrity sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA== + dependencies: + async-limiter "~1.0.0" + ws@^7.1.0: version "7.1.1" resolved "https://registry.yarnpkg.com/ws/-/ws-7.1.1.tgz#f9942dc868b6dffb72c14fd8f2ba05f77a4d5983" @@ -15093,6 +15249,13 @@ xpipe@^1.0.5: resolved "https://registry.yarnpkg.com/xpipe/-/xpipe-1.0.5.tgz#8dd8bf45fc3f7f55f0e054b878f43a62614dafdf" integrity sha1-jdi/Rfw/f1Xw4FS4ePQ6YmFNr98= +xregexp@^4.2.4: + version "4.2.4" + resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-4.2.4.tgz#02a4aea056d65a42632c02f0233eab8e4d7e57ed" + integrity sha512-sO0bYdYeJAJBcJA8g7MJJX7UrOZIfJPd8U2SC7B2Dd/J24U0aQNoGp33shCaBSWeb0rD5rh6VBUIXOkGal1TZA== + dependencies: + "@babel/runtime-corejs2" "^7.2.0" + xtend@^4.0.0, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" @@ -15133,7 +15296,7 @@ yargs-parser@^11.1.1: camelcase "^5.0.0" decamelize "^1.2.0" -yargs-parser@^13.1.0: +yargs-parser@^13.0.0, yargs-parser@^13.1.0: version "13.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-13.1.1.tgz#d26058532aa06d365fe091f6a1fc06b2f7e5eca0" integrity sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==