diff --git a/app/components/TextDiv.jsx b/app/components/TextDiv.jsx
new file mode 100644
index 0000000..7e2d147
--- /dev/null
+++ b/app/components/TextDiv.jsx
@@ -0,0 +1,9 @@
+import styled from 'styled-components'
+
+export const Centered = styled.div`
+ text-align: center !important;
+`
+
+export const LeftAligned = styled.div`
+ text-align: left !important;
+`
diff --git a/app/index.js b/app/index.js
index b02970b..500bd3d 100644
--- a/app/index.js
+++ b/app/index.js
@@ -73,6 +73,34 @@ function askWhichNodeToUse (apiVersion) {
return btnId === 1
}
+/**
+ * startWelcome will open a new window and waint until the user closes it by
+ * ending the Welcome Flow.
+ * It checks if the user has already been through the Welcome page by validating
+ * it as a version. This will help Orion to show the welcome page if there are
+ * important changes to show.
+ * It returns a promise.
+ */
+function startWelcome () {
+ const welcomeVersion = Settings.getSync('welcomeVersion')
+ // To do, change this to a variable?
+ if (welcomeVersion <= 1) {
+ return Promise.resolve()
+ }
+
+ return new Promise((resolve, reject) => {
+ // If the user did not accept our ToS, show the welcome window
+ const welcomeWindow = WelcomeWindow.create(app)
+ app.mainWindow = welcomeWindow
+ welcomeWindow.on('closed', () => {
+ if (Settings.getSync('welcomeVersion') === 1) {
+ return resolve()
+ }
+ app.quit()
+ })
+ })
+}
+
/**
* This method will:
* 1. setup the tray icon (except on macOS)
@@ -107,6 +135,7 @@ function startOrion () {
const loadingWindow = LoadingWindow.create(app)
loadingWindow.on('ready-to-show', () => {
+ app.mainWindow = loadingWindow
console.log('Loading window ready to show')
loadingWindow.webContents.send('set-progress', {
text: 'Getting started...',
@@ -252,25 +281,11 @@ function startOrion () {
}
app.on('start-orion', () => {
- startOrion()
+ startWelcome().then(startOrion)
})
app.on('ready', () => {
- const userAgreement = Settings.getSync('userAgreement')
-
- if (userAgreement) {
- startOrion()
- } else {
- // If the user did not accept our ToS, show the welcome window
- const welcomeWindow = WelcomeWindow.create(app)
- welcomeWindow.on('closed', () => {
- // If the user did not accept ToS, but closed the welcome window, quit (don't run the the bg)
- const userAgreement = Settings.getSync('userAgreement')
- if (!userAgreement) {
- app.quit()
- }
- })
- }
+ startWelcome().then(startOrion)
})
app.on('activate', () => {
diff --git a/app/stats.js b/app/stats.js
index 20e20a8..3c0d4bd 100644
--- a/app/stats.js
+++ b/app/stats.js
@@ -2,7 +2,6 @@ import Mixpanel from 'mixpanel'
import Settings from 'electron-settings'
import uuidv4 from 'uuid/v4'
import pjson from '../package.json'
-import publicIp from 'public-ip'
import { release, platform } from 'os'
const SettingsUserIDKey = 'statsUserID'
@@ -17,7 +16,7 @@ let UserID = Settings.getSync(SettingsUserIDKey)
* setUpUser will configure the client in order to track errors, events and
* follow users when debugging process.
*/
-export function setUpUser (ipAddress) {
+export function setUpUser () {
if (!Settings.getSync(SettingsUserIDKey)) {
UserID = uuidv4()
Settings.setSync(SettingsUserIDKey, UserID)
@@ -29,8 +28,6 @@ export function setUpUser (ipAddress) {
version: `${pjson.version}`,
os_release: `${release()}`,
os_platform: `${platform()}`
- }, {
- $ip: ipAddress
})
}
@@ -48,21 +45,18 @@ export function trackEvent (eventName, data) {
return resolve()
}
- return publicIp.v4().then(ipAddress => {
- setUpUser(ipAddress)
+ setUpUser()
+ if (!data) {
+ data = {}
+ }
- if (!data) {
- data = {}
+ data.distinct_id = UserID
+ data.version = `${pjson.version}`
+ client.track(eventName, data, (err) => {
+ if (err) {
+ return reject(err)
}
-
- data.distinct_id = UserID
- data.version = `${pjson.version}`
- client.track(eventName, data, (err) => {
- if (err) {
- return reject(err)
- }
- return resolve()
- })
+ return resolve()
})
})
}
diff --git a/app/windows/Welcome/Components/ServicesPage.jsx b/app/windows/Welcome/Components/ServicesPage.jsx
new file mode 100644
index 0000000..0f16bd6
--- /dev/null
+++ b/app/windows/Welcome/Components/ServicesPage.jsx
@@ -0,0 +1,50 @@
+import React from 'react'
+import { Centered, LeftAligned } from '../../../components/TextDiv'
+
+import SiderusLogo from '../../../../docs/siderus-logo.svg'
+
+import {
+ Window,
+ Content,
+ Toolbar,
+ Actionbar,
+ Button
+} from 'react-photonkit'
+
+class ServicesPage extends React.Component {
+ render () {
+ const { onNext } = this.props
+ return (
+
+
+
+
+ Siderus Services
+ Enable a better experience
+
+
+ Siderus offers a set of services designed to ease and improve the
+ user experience of IPFS. Orion will always connect to Siderus IPFS
+ Nodes and you can enable the services to gain some benefits,
+ including, but not limiting to:
+
+ Pre-fetching of the content on public Gateways
+ Siderus Mercury, ACL and Encryption
+ Siderus Hera, remote syncronization
+ Siderus Hera, remote pinning
+
+
+
+
+
+
+
+
+
+
+
+ )
+ }
+}
+
+export default ServicesPage
diff --git a/app/windows/Welcome/Components/StatsPage.jsx b/app/windows/Welcome/Components/StatsPage.jsx
new file mode 100644
index 0000000..3887327
--- /dev/null
+++ b/app/windows/Welcome/Components/StatsPage.jsx
@@ -0,0 +1,75 @@
+import React from 'react'
+import styled from 'styled-components'
+import { shell } from 'electron'
+import Settings from 'electron-settings'
+
+import {
+ Window,
+ Content,
+ Toolbar,
+ Actionbar,
+ Button
+} from 'react-photonkit'
+
+const StyledContent = styled.div`
+ h1:first-child {
+ margin-top: 0px;
+ }
+`
+
+const PrivacyLink = shell.openExternal('https://siderus.io/privacy')} href='#'>Privacy policy
+
+class StatsPage extends React.Component {
+ enableStats = () => {
+ Settings.setSync('allowUserTracking', true)
+ this.props.onNext()
+ }
+
+ disableStats = () => {
+ Settings.setSync('allowUserTracking', false)
+ this.props.onNext()
+ }
+
+ render () {
+ return (
+
+
+
+ Support Orion development
+
+ Siderus Orion is integrated with Mixpanel and Sentry to help us
+ debugging errors, understanding how to improve the
+ application and your user experience with IPFS .
+
+ Both the integrations are using anonymized information, and
+ focusing on only the important details. Some of them are:
+
+ An unique random ID generated on the first usage
+ Features used (Windows, Screens and Sessions)
+ Operative System and release/version
+ Amount of files shared, NOT the hashes
+
+ You can opt-in as well as opt out at any time from the Settings.
+
+ By enabling this feature, you will provide extra valuable metrics
+ and data useful for improving your user experience, the
+ services and fixing bugs on top of the default Sentry anonymous
+ errors reporting always enabled.
+
+ You can validate these information by reading and checking the
+ source code on GitHub. You can also read Siderus {PrivacyLink}.
+
+
+
+
+
+
+
+
+
+
+ )
+ }
+}
+
+export default StatsPage
diff --git a/app/windows/Welcome/Components/TermsOfServicePage.jsx b/app/windows/Welcome/Components/TermsOfServicePage.jsx
deleted file mode 100644
index ae25771..0000000
--- a/app/windows/Welcome/Components/TermsOfServicePage.jsx
+++ /dev/null
@@ -1,103 +0,0 @@
-import React from 'react'
-import styled from 'styled-components'
-import ToS from './ToS'
-import { shell } from 'electron'
-import Settings from 'electron-settings'
-
-import {
- Window,
- Content,
- Toolbar,
- Actionbar,
- Button,
- CheckBox
-} from 'react-photonkit'
-
-const StyledContent = styled.div`
- h1:first-child {
- margin-top: 0px;
- }
-`
-
-const TermsSection = styled.section`
- background: white;
- height: calc(100vh - 270px);
- overflow: auto;
- padding: 0px 10px;
-`
-
-const ToSLink = shell.openExternal('https://siderus.io/tos.html')} href='#'>Siderus Terms of Service
-const PrivacyLink = shell.openExternal('https://siderus.io/privacy')} href='#'>Privacy policy
-const checkboxLabel = I have read and I agree to {ToSLink} and {PrivacyLink}
-
-class TermsOfServicePage extends React.Component {
- state = {
- tosChecked: false,
- allowUserTracking: false
- }
-
- handleToSChange = () => {
- const nextValue = !this.state.tosChecked
- this.setState({ tosChecked: nextValue })
- }
-
- handleUserTrackingChange = () => {
- const nextValue = !this.state.allowUserTracking
- Settings.setSync('allowUserTracking', nextValue)
- this.setState({ allowUserTracking: nextValue })
- }
-
- handleSubmit = (event) => {
- event.preventDefault()
- if (!this.state.tosChecked) return
-
- this.props.onAccept()
- }
-
- render () {
- const { onQuit } = this.props
- const { tosChecked, allowUserTracking } = this.state
-
- return (
-
- )
- }
-}
-
-export default TermsOfServicePage
diff --git a/app/windows/Welcome/Components/ToS.jsx b/app/windows/Welcome/Components/ToS.jsx
deleted file mode 100644
index 6865601..0000000
--- a/app/windows/Welcome/Components/ToS.jsx
+++ /dev/null
@@ -1,31 +0,0 @@
-import React from 'react'
-import request from 'request-promise-native'
-import Spinner from 'react-spin'
-
-class ToS extends React.Component {
- state = {}
-
- constructor () {
- super()
- this.fetchContent()
- }
-
- fetchContent = () => {
- request({ uri: 'https://siderus.io/tos.html' })
- .then(res => this.setState({ tos: res }))
- .catch(err => {
- console.error(err)
- throw err
- })
- }
-
- render () {
- return (
- this.state.tos
- ?
- :
- )
- }
-}
-
-export default ToS
diff --git a/app/windows/Welcome/Components/WelcomePage.jsx b/app/windows/Welcome/Components/WelcomePage.jsx
index a819d37..3514e49 100644
--- a/app/windows/Welcome/Components/WelcomePage.jsx
+++ b/app/windows/Welcome/Components/WelcomePage.jsx
@@ -1,6 +1,6 @@
import React from 'react'
import OrionLogo from '../../../../docs/logo.svg'
-import styled from 'styled-components'
+import { Centered } from '../../../components/TextDiv'
import { shell } from 'electron'
import {
@@ -11,10 +11,6 @@ import {
Button
} from 'react-photonkit'
-const Centered = styled.div`
- text-align: center !important;
-`
-
const handleSubscribe = () => {
shell.openExternal('http://eepurl.com/dfB6q5')
}
@@ -24,7 +20,7 @@ function WelcomePage ({ onNext }) {
-
+
Siderus Orion
Welcome
Siderus Orion is the easiest way to start using the decentralised web with IPFS and Siderus Network. It supports a larger number of dApps as wel as the IPFS Browser Companion, to speed up your connection when surfing the decentralised web.
diff --git a/app/windows/Welcome/renderer.jsx b/app/windows/Welcome/renderer.jsx
index cf9fc40..d599e77 100644
--- a/app/windows/Welcome/renderer.jsx
+++ b/app/windows/Welcome/renderer.jsx
@@ -1,40 +1,35 @@
import React from 'react'
import ReactDom from 'react-dom'
-import { remote } from 'electron'
import Settings from 'electron-settings'
import WelcomePage from './Components/WelcomePage'
-import TermsOfServicePage from './Components/TermsOfServicePage'
-import { trackEvent } from '../../stats'
+// import ServicesPage from './Components/ServicesPage'
+import StatsPage from './Components/StatsPage'
class WelcomeWindow extends React.Component {
state = {
- page: 0
+ pageIndex: 0
}
handleNext = () => {
- this.setState({ page: 1 })
+ this.setState({ pageIndex: this.state.pageIndex + 1 })
}
handleQuit = () => {
- window.close()
- }
-
- handleAccept = () => {
- Settings.setSync('userAgreement', true)
- trackEvent('userAgreementAccepted', {})
- remote.app.emit('start-orion')
+ Settings.setSync('welcomeVersion', 1)
window.close()
}
render () {
- const { page } = this.state
-
- return (
- page === 0
- ?
- :
- )
+ const { pageIndex } = this.state
+ switch (pageIndex) {
+ case 1:
+ return
+ // case 2:
+ // return
+ default:
+ return
+ }
}
}
diff --git a/app/windows/Welcome/window.js b/app/windows/Welcome/window.js
index c34a746..968f863 100644
--- a/app/windows/Welcome/window.js
+++ b/app/windows/Welcome/window.js
@@ -25,12 +25,12 @@ module.exports.create = function createResolveIPNSWindow (app) {
let thisWindow = new BrowserWindowClass({
title: 'Welcome',
parent: app.mainWindow,
- modal: true,
+ modal: false,
width: 600,
minWidth: 600,
- height: 600,
- minHeight: 600,
+ height: 610,
+ minHeight: 610,
maximizable: false,
resizable: true,
diff --git a/package.json b/package.json
index 6762632..31cb23d 100644
--- a/package.json
+++ b/package.json
@@ -62,7 +62,6 @@
"mobx-react": "^4.1.0",
"multiaddr": "^3.0.2",
"photon": "git+https://github.com/connors/photon.git",
- "public-ip": "^2.4.0",
"query-string": "^5.1.0",
"react": "^15.4.2",
"react-dom": "^15.4.2",
diff --git a/yarn.lock b/yarn.lock
index 66d4e0a..54bb496 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -184,10 +184,6 @@
version "0.5.4"
resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-0.5.4.tgz#8ede78ace960216dd632fd561c83f50062e5aee1"
-"@sindresorhus/is@^0.7.0":
- version "0.7.0"
- resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.7.0.tgz#9a06f4f137ee84d7df0460c1fdb1135ffa6c50fd"
-
"@types/node@^7.0.12":
version "7.0.65"
resolved "https://registry.yarnpkg.com/@types/node/-/node-7.0.65.tgz#c160979ff66c4842adc76cc181a11b5e8722d13d"
@@ -1631,18 +1627,6 @@ cache-base@^1.0.1:
union-value "^1.0.0"
unset-value "^1.0.0"
-cacheable-request@^2.1.1:
- version "2.1.4"
- resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-2.1.4.tgz#0d808801b6342ad33c91df9d0b44dc09b91e5c3d"
- dependencies:
- clone-response "1.0.2"
- get-stream "3.0.0"
- http-cache-semantics "3.8.1"
- keyv "3.0.0"
- lowercase-keys "1.0.0"
- normalize-url "2.0.1"
- responselike "1.0.2"
-
caller-path@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f"
@@ -1859,12 +1843,6 @@ cliui@^4.0.0:
strip-ansi "^4.0.0"
wrap-ansi "^2.0.0"
-clone-response@1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
- dependencies:
- mimic-response "^1.0.0"
-
clone@^1.0.2:
version "1.0.4"
resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e"
@@ -2255,12 +2233,6 @@ 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"
-decompress-response@^3.3.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3"
- dependencies:
- mimic-response "^1.0.0"
-
deep-equal@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5"
@@ -2411,19 +2383,6 @@ dmg-builder@4.1.8:
parse-color "^1.0.0"
sanitize-filename "^1.6.1"
-dns-packet@^1.1.0:
- version "1.3.1"
- resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a"
- dependencies:
- ip "^1.1.0"
- safe-buffer "^5.0.1"
-
-dns-socket@^1.6.2:
- version "1.6.3"
- resolved "https://registry.yarnpkg.com/dns-socket/-/dns-socket-1.6.3.tgz#5268724fad4aa46ad9c5ca4ffcd16e1de5342aab"
- dependencies:
- dns-packet "^1.1.0"
-
doctrine@1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
@@ -3318,13 +3277,6 @@ fragment-cache@^0.2.1:
dependencies:
map-cache "^0.2.2"
-from2@^2.1.1:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af"
- dependencies:
- inherits "^2.0.1"
- readable-stream "^2.0.0"
-
fs-constants@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad"
@@ -3416,7 +3368,7 @@ get-stdin@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
-get-stream@3.0.0, get-stream@^3.0.0:
+get-stream@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14"
@@ -3532,28 +3484,6 @@ got@^6.7.1:
unzip-response "^2.0.1"
url-parse-lax "^1.0.0"
-got@^8.0.0:
- version "8.3.1"
- resolved "https://registry.yarnpkg.com/got/-/got-8.3.1.tgz#093324403d4d955f5a16a7a8d39955d055ae10ed"
- dependencies:
- "@sindresorhus/is" "^0.7.0"
- cacheable-request "^2.1.1"
- decompress-response "^3.3.0"
- duplexer3 "^0.1.4"
- get-stream "^3.0.0"
- into-stream "^3.1.0"
- is-retry-allowed "^1.1.0"
- isurl "^1.0.0-alpha5"
- lowercase-keys "^1.0.0"
- mimic-response "^1.0.0"
- p-cancelable "^0.4.0"
- p-timeout "^2.0.1"
- pify "^3.0.0"
- safe-buffer "^5.1.1"
- timed-out "^4.0.1"
- url-parse-lax "^3.0.0"
- url-to-options "^1.0.1"
-
graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.4, graceful-fs@^4.1.6, graceful-fs@^4.1.9:
version "4.1.11"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
@@ -3622,16 +3552,6 @@ has-flag@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
-has-symbol-support-x@^1.4.1:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455"
-
-has-to-string-tag-x@^1.2.0:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d"
- dependencies:
- has-symbol-support-x "^1.4.1"
-
has-unicode@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
@@ -3758,10 +3678,6 @@ htmlparser2@~3.8.1:
entities "1.0"
readable-stream "1.1"
-http-cache-semantics@3.8.1:
- version "3.8.1"
- resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2"
-
http-signature@~1.1.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf"
@@ -3882,13 +3798,6 @@ inquirer@^3.0.6:
strip-ansi "^4.0.0"
through "^2.3.6"
-into-stream@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/into-stream/-/into-stream-3.1.0.tgz#96fb0a936c12babd6ff1752a17d05616abd094c6"
- dependencies:
- from2 "^2.1.1"
- p-is-promise "^1.1.0"
-
invariant@^2.2.0, invariant@^2.2.2:
version "2.2.4"
resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
@@ -3911,11 +3820,7 @@ ip-address@^5.8.9:
lodash.repeat "^4.1.0"
sprintf-js "1.1.0"
-ip-regex@^2.0.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9"
-
-ip@^1.1.0, ip@^1.1.5:
+ip@^1.1.5:
version "1.1.5"
resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a"
@@ -4139,12 +4044,6 @@ is-installed-globally@^0.1.0:
global-dirs "^0.1.0"
is-path-inside "^1.0.0"
-is-ip@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/is-ip/-/is-ip-2.0.0.tgz#68eea07e8a0a0a94c2d080dd674c731ab2a461ab"
- dependencies:
- ip-regex "^2.0.0"
-
is-ipfs@^0.3.0, is-ipfs@~0.3.2:
version "0.3.2"
resolved "https://registry.yarnpkg.com/is-ipfs/-/is-ipfs-0.3.2.tgz#c4650b838e36fd0151de5896b2ff319fe8936182"
@@ -4177,10 +4076,6 @@ is-obj@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
-is-object@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.1.tgz#8952688c5ec2ffd6b03ecc85e769e02903083470"
-
is-odd@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24"
@@ -4251,7 +4146,7 @@ is-resolvable@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88"
-is-retry-allowed@^1.0.0, is-retry-allowed@^1.1.0:
+is-retry-allowed@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34"
@@ -4411,13 +4306,6 @@ istanbul@^0.4.5:
which "^1.1.1"
wordwrap "^1.0.0"
-isurl@^1.0.0-alpha5:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/isurl/-/isurl-1.0.0.tgz#b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67"
- dependencies:
- has-to-string-tag-x "^1.2.0"
- is-object "^1.0.1"
-
iterall@^1.0.0:
version "1.2.2"
resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.2.2.tgz#92d70deb8028e0c39ff3164fdbf4d8b088130cd7"
@@ -4797,10 +4685,6 @@ jsesc@~0.5.0:
version "0.5.0"
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
-json-buffer@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898"
-
json-schema-traverse@^0.3.0:
version "0.3.1"
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
@@ -4889,12 +4773,6 @@ keypair@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/keypair/-/keypair-1.0.1.tgz#7603719270afb6564ed38a22087a06fc9aa4ea1b"
-keyv@3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.0.0.tgz#44923ba39e68b12a7cec7df6c3268c031f2ef373"
- dependencies:
- json-buffer "3.0.0"
-
kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0:
version "3.2.2"
resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64"
@@ -5122,10 +5000,6 @@ loud-rejection@^1.0.0:
currently-unhandled "^0.4.1"
signal-exit "^3.0.0"
-lowercase-keys@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306"
-
lowercase-keys@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f"
@@ -5285,10 +5159,6 @@ mimic-fn@^1.0.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
-mimic-response@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.0.tgz#df3d3652a73fded6b9b0b24146e6fd052353458e"
-
minimalistic-assert@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
@@ -5578,14 +5448,6 @@ normalize-range@^0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
-normalize-url@2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6"
- dependencies:
- prepend-http "^2.0.0"
- query-string "^5.0.1"
- sort-keys "^2.0.0"
-
normalize-url@^1.4.0:
version "1.9.1"
resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c"
@@ -5770,18 +5632,10 @@ osenv@^0.1.4:
os-homedir "^1.0.0"
os-tmpdir "^1.0.0"
-p-cancelable@^0.4.0:
- version "0.4.1"
- resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-0.4.1.tgz#35f363d67d52081c8d9585e37bcceb7e0bbcb2a0"
-
p-finally@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
-p-is-promise@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-1.1.0.tgz#9c9456989e9f6588017b0434d56097675c3da05e"
-
p-limit@^1.1.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c"
@@ -5798,12 +5652,6 @@ p-map@^1.1.1:
version "1.2.0"
resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b"
-p-timeout@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-2.0.1.tgz#d8dd1979595d2dc0139e1fe46b8b646cb3cdf038"
- dependencies:
- p-finally "^1.0.0"
-
p-try@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
@@ -6225,10 +6073,6 @@ prepend-http@^1.0.0, prepend-http@^1.0.1:
version "1.0.4"
resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc"
-prepend-http@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897"
-
preserve@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b"
@@ -6327,15 +6171,6 @@ pseudomap@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3"
-public-ip@^2.4.0:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/public-ip/-/public-ip-2.4.0.tgz#f00c028a15366d8c798e47efab6acd09a17666da"
- dependencies:
- dns-socket "^1.6.2"
- got "^8.0.0"
- is-ip "^2.0.0"
- pify "^3.0.0"
-
pull-defer@^0.2.2:
version "0.2.2"
resolved "https://registry.yarnpkg.com/pull-defer/-/pull-defer-0.2.2.tgz#0887b0ffb30af32a56dbecfa72c1672271f07b13"
@@ -6390,7 +6225,7 @@ query-string@^4.1.0:
object-assign "^4.1.0"
strict-uri-encode "^1.0.0"
-query-string@^5.0.1, query-string@^5.1.0:
+query-string@^5.1.0:
version "5.1.1"
resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb"
dependencies:
@@ -6514,7 +6349,7 @@ readable-stream@1.1:
isarray "0.0.1"
string_decoder "~0.10.x"
-readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.5, readable-stream@^2.3.6:
+readable-stream@^2.0.1, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.0, readable-stream@^2.3.5, readable-stream@^2.3.6:
version "2.3.6"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
dependencies:
@@ -6769,12 +6604,6 @@ resolve@^1.2.0, resolve@^1.3.3, resolve@^1.5.0, resolve@^1.6.0:
dependencies:
path-parse "^1.0.5"
-responselike@1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
- dependencies:
- lowercase-keys "^1.0.0"
-
restore-cursor@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf"
@@ -7058,12 +6887,6 @@ sort-keys@^1.0.0:
dependencies:
is-plain-obj "^1.0.0"
-sort-keys@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128"
- dependencies:
- is-plain-obj "^1.0.0"
-
sortablejs@^1.4.2:
version "1.7.0"
resolved "https://registry.yarnpkg.com/sortablejs/-/sortablejs-1.7.0.tgz#80a2b2370abd568e1cec8c271131ef30a904fa28"
@@ -7519,7 +7342,7 @@ through@^2.3.6:
version "2.3.8"
resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
-timed-out@4.0.1, timed-out@^4.0.0, timed-out@^4.0.1:
+timed-out@4.0.1, timed-out@^4.0.0:
version "4.0.1"
resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f"
@@ -7757,16 +7580,6 @@ url-parse-lax@^1.0.0:
dependencies:
prepend-http "^1.0.1"
-url-parse-lax@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c"
- dependencies:
- prepend-http "^2.0.0"
-
-url-to-options@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/url-to-options/-/url-to-options-1.0.1.tgz#1505a03a289a48cbd7a434efbaeec5055f5633a9"
-
use@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/use/-/use-3.1.0.tgz#14716bf03fdfefd03040aef58d8b4b85f3a7c544"