aboutsummaryrefslogtreecommitdiff
path: root/vnext
diff options
context:
space:
mode:
Diffstat (limited to 'vnext')
-rw-r--r--vnext/package.json4
-rw-r--r--vnext/src/api/index.js63
-rw-r--r--vnext/src/components/Chat.js24
-rw-r--r--vnext/src/components/Contacts.js9
-rw-r--r--vnext/src/components/Feeds.js15
-rw-r--r--vnext/src/components/LoginButton.js16
-rw-r--r--vnext/src/components/Thread.js26
-rw-r--r--vnext/src/index.js34
-rw-r--r--vnext/webpack.config.js1
-rw-r--r--vnext/yarn.lock99
10 files changed, 159 insertions, 132 deletions
diff --git a/vnext/package.json b/vnext/package.json
index a3c694c6..7833941c 100644
--- a/vnext/package.json
+++ b/vnext/package.json
@@ -35,8 +35,7 @@
"style-loader": "^0.21.0",
"webpack": "^4.12.1",
"webpack-command": "^0.3.0",
- "webpack-serve": "^1.0.4",
- "whatwg-fetch": "^2.0.4"
+ "webpack-serve": "^1.0.4"
},
"babel": {
"plugins": [
@@ -53,6 +52,7 @@
]
},
"dependencies": {
+ "axios": "^0.18.0",
"moment": "^2.22.2",
"query-string": "^6.1.0",
"react": "^16.4.1",
diff --git a/vnext/src/api/index.js b/vnext/src/api/index.js
new file mode 100644
index 00000000..130a5dc2
--- /dev/null
+++ b/vnext/src/api/index.js
@@ -0,0 +1,63 @@
+import axios from 'axios';
+
+const client = axios.create({
+ baseURL: 'https://api.juick.com/'
+});
+client.interceptors.request.use(config => {
+ if (localStorage.visitor) {
+ config.params = Object.assign(config.params || {}, {
+ hash: JSON.parse(localStorage.visitor).hash
+ });
+ }
+ return config;
+})
+
+export function auth(username, password) {
+ return new Promise((resolve, reject) => {
+ client.get('/me', {
+ headers: {
+ 'Authorization': 'Basic ' + window.btoa(unescape(encodeURIComponent(username + ":" + password)))
+ }
+ }).then(response => {
+ localStorage.visitor = JSON.stringify(response.data);
+ resolve(response.data)
+ }).catch(reason => {
+ localStorage.clear()
+ reject(reason)
+ })
+ });
+}
+
+export function getChats() {
+ return client.get('/groups_pms')
+}
+
+export function getChat(userName) {
+ return client.get('/pm', {
+ params: {
+ 'uname': userName
+ }
+ })
+}
+
+export function pm(userName, body) {
+ let form = new FormData();
+ form.set('uname', userName);
+ form.set('body', body);
+ return client.post('/pm', form)
+}
+
+export function getMessages(path, params) {
+ return client.get(path, {
+ params: params
+ })
+}
+
+export function comment(mid, rid, body, attach) {
+ let form = new FormData();
+ form.append('mid', mid);
+ form.append('rid', rid);
+ form.append('body', body);
+ form.append('attach', attach);
+ return client.post('/comment', form)
+} \ No newline at end of file
diff --git a/vnext/src/components/Chat.js b/vnext/src/components/Chat.js
index 8f3a26c0..c7a5c3ff 100644
--- a/vnext/src/components/Chat.js
+++ b/vnext/src/components/Chat.js
@@ -4,6 +4,8 @@ import moment from 'moment';
import PM from './PM';
import MessageInput from './MessageInput';
+import { getChat, pm } from '../api';
+
export default class Chat extends React.Component {
constructor(props) {
super(props);
@@ -22,30 +24,20 @@ export default class Chat extends React.Component {
chats: []
});
if (hash && uname) {
- fetch(`https://api.juick.com/pm?uname=${uname}&hash=${hash}`)
- .then(response => response.json())
- .then(jsonResponse => {
+ getChat(uname)
+ .then(response => {
this.setState({
- chats: jsonResponse
+ chats: response.data
});
});
}
}
onSend = (template) => {
- const url = `https://api.juick.com/pm?hash=${this.props.visitor.hash}`;
- let form = new FormData();
- form.append('body', template.body);
- form.append('uname', template.to.uname);
- fetch(url, {
- method: 'POST',
- body: form
- }).then(response => {
- return response.json()
- }).then(res => {
+ pm(template.to.uname, template.body)
+ .then(res => {
this.loadChat(this.props.match.params.user);
- })
- .catch(console.log)
+ }).catch(console.log)
}
render() {
diff --git a/vnext/src/components/Contacts.js b/vnext/src/components/Contacts.js
index 300e60eb..aea537d4 100644
--- a/vnext/src/components/Contacts.js
+++ b/vnext/src/components/Contacts.js
@@ -1,5 +1,5 @@
import React from 'react';
-import { Link } from 'react-router-dom';
+import { getChats } from '../api';
import Contact from './Contact.js';
@@ -16,12 +16,11 @@ export default class Contacts extends React.Component {
}
refreshChats() {
- fetch(`https://api.juick.com/groups_pms?hash=${this.props.visitor.hash}`)
- .then(response => response.json())
- .then(jsonResponse => {
+ getChats()
+ .then(response => {
this.setState({
isLoading: false,
- pms: jsonResponse.pms
+ pms: response.data.pms
});
});
}
diff --git a/vnext/src/components/Feeds.js b/vnext/src/components/Feeds.js
index 5e9c14d0..0a27ed3d 100644
--- a/vnext/src/components/Feeds.js
+++ b/vnext/src/components/Feeds.js
@@ -7,6 +7,8 @@ import moment from 'moment';
import Message from './Message';
import Spinner from './Spinner';
+import { getMessages } from '../api';
+
export function Discover(props) {
const query = {
baseUrl: "https://api.juick.com/messages",
@@ -38,7 +40,7 @@ export function Blog(props) {
export function Tag(props) {
const { tag } = props.match.params;
const query = {
- baseUrl: `https://api.juick.com/messages`,
+ baseUrl: '/messages',
search: {
tag: tag
},
@@ -49,7 +51,7 @@ export function Tag(props) {
export function Home(props) {
const query = {
- baseUrl: `https://api.juick.com/home`,
+ baseUrl: '/home',
pageParam: 'before_mid'
};
return (<Feed authRequired="true" query={query} {...props} />)
@@ -81,17 +83,12 @@ class Feed extends React.Component {
if (hash) {
params.hash = hash;
}
- if (Object.keys(params).length > 0) {
- url = `${url}?${qs.stringify(params)}`;
- }
if (!params.hash && this.props.authRequired) {
this.props.history.push('/')
}
- fetch(url)
+ getMessages(url, params)
.then(response => {
- return response.json()
- })
- .then(data => {
+ const { data } = response;
const { pageParam } = this.props.query;
const lastMessage = data.slice(-1)[0] || {};
const pageValue = pageParam === 'before_mid' ? lastMessage.mid : moment.utc(lastMessage.updated).valueOf();
diff --git a/vnext/src/components/LoginButton.js b/vnext/src/components/LoginButton.js
index fb3c087e..fbce6982 100644
--- a/vnext/src/components/LoginButton.js
+++ b/vnext/src/components/LoginButton.js
@@ -3,6 +3,8 @@ import PropTypes from 'prop-types';
import Icon from './Icon';
import Modal from './Modal';
+import { auth } from '../api';
+
export default class LoginButton extends React.Component {
constructor(props) {
super(props);
@@ -30,18 +32,10 @@ export default class LoginButton extends React.Component {
}
login = (event) => {
event.preventDefault();
- let headers = new Headers();
- headers.append('Authorization', 'Basic ' + window.btoa(unescape(encodeURIComponent(this.state.username + ":" + this.state.password))));
- fetch('https://api.juick.com/auth', {
- method: 'GET',
- credentials: 'omit',
- headers: headers
- }).then(response => {
- return response.text()
- })
- .then(data => {
+ auth(this.state.username, this.state.password)
+ .then(response => {
this.toggleModal();
- this.props.onAuth(data);
+ this.props.onAuth(response);
}
).catch(ex => {
console.log(ex);
diff --git a/vnext/src/components/Thread.js b/vnext/src/components/Thread.js
index 17c5b55c..b1e1abb3 100644
--- a/vnext/src/components/Thread.js
+++ b/vnext/src/components/Thread.js
@@ -12,6 +12,8 @@ import Button from './Button';
import { format } from '../utils/embed';
+import { getMessages, comment } from '../api';
+
export default class Thread extends React.Component {
constructor(props) {
super(props);
@@ -36,16 +38,12 @@ export default class Thread extends React.Component {
if (this.props.visitor && this.props.visitor.hash) {
params.hash = this.props.visitor.hash
};
- const url = `https://api.juick.com/thread?${qs.stringify(params)}`;
- fetch(url)
+ getMessages('/thread', params)
.then(response => {
- return response.json()
- })
- .then(data => {
- let msg = data.shift();
+ let msg = response.data.shift();
this.setState({
msg: msg,
- replies: data,
+ replies: response.data,
active: 0
})
}
@@ -62,18 +60,8 @@ export default class Thread extends React.Component {
})
}
postComment = (template) => {
- const url = `https://api.juick.com/comment?hash=${this.props.visitor.hash}`;
- let form = new FormData();
- form.append('mid', template.mid);
- form.append('rid', template.rid);
- form.append('body', template.body);
- form.append('attach', template.attach);
- fetch(url, {
- method: 'POST',
- body: form
- }).then(response => {
- return response.json()
- }).then(res => {
+ const { mid, rid, body, attach } = template;
+ comment(mid, rid, body, attach).then(res => {
this.loadReplies()
})
.catch(console.log)
diff --git a/vnext/src/index.js b/vnext/src/index.js
index aeb5357f..9527178e 100644
--- a/vnext/src/index.js
+++ b/vnext/src/index.js
@@ -20,19 +20,16 @@ class App extends React.Component {
super(props);
let params = qs.parse(window.location.search)
if (params.hash) {
- window.localStorage.hash = params.hash
window.history.replaceState({}, document.title, `${window.location.protocol}//${window.location.host}${window.location.pathname}`)
}
this.state = {
- visitor: {
- uid: Number(window.localStorage.uid) || 0,
- hash: window.localStorage.hash || params.hash || ''
+ visitor: localStorage.visitor ? JSON.parse(localStorage.visitor) : {
+ uid: 0,
+ hash: params.hash || ''
}
};
}
- componentDidMount() {
- this.auth(this.state.visitor.hash)
- }
+
render() {
const user = this.state.visitor;
return (
@@ -156,25 +153,10 @@ class App extends React.Component {
</Router>
)
}
- auth = (data) => {
- if (data) {
- window.localStorage.hash = data;
- fetch(`https://api.juick.com/users?hash=${data}`)
- .then(response => {
- return response.json()
- })
- .then(users => {
- let visitor = users[0];
- visitor.hash = data;
- window.localStorage.uid = visitor.uid;
- this.setState({
- visitor: visitor
- })
- }).catch(reason => {
- window.localStorage.clear()
- window.location.reload()
- })
- }
+ auth = (visitor) => {
+ this.setState({
+ visitor: visitor
+ })
}
}
diff --git a/vnext/webpack.config.js b/vnext/webpack.config.js
index f63beb4c..a43afc63 100644
--- a/vnext/webpack.config.js
+++ b/vnext/webpack.config.js
@@ -13,7 +13,6 @@ module.exports = {
mode: process.env.WEBPACK_SERVE ? 'development' : 'production',
entry: {
'Juick': [
- 'whatwg-fetch',
__dirname + '/src/index.js',
__dirname + '/src/style/main.css'
]
diff --git a/vnext/yarn.lock b/vnext/yarn.lock
index 8bb63672..b0412eb0 100644
--- a/vnext/yarn.lock
+++ b/vnext/yarn.lock
@@ -33,8 +33,8 @@
debug "^2.6.8"
"@types/node@*":
- version "10.3.4"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-10.3.4.tgz#c74e8aec19e555df44609b8057311052a2c84d9e"
+ version "10.3.6"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-10.3.6.tgz#ea8aab9439b59f40d19ec5f13b44642344872b11"
"@webassemblyjs/ast@1.5.12":
version "1.5.12"
@@ -305,8 +305,8 @@ anymatch@^2.0.0:
normalize-path "^2.1.1"
app-root-path@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-2.0.1.tgz#cd62dcf8e4fd5a417efc664d2e5b10653c651b46"
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-2.1.0.tgz#98bf6599327ecea199309866e8140368fd2e646a"
append-transform@^1.0.0:
version "1.0.0"
@@ -446,6 +446,13 @@ aws4@^1.6.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.7.0.tgz#d4d0e9b9dbfca77bf08eeb0a8a471550fe39e289"
+axios@^0.18.0:
+ version "0.18.0"
+ resolved "https://registry.yarnpkg.com/axios/-/axios-0.18.0.tgz#32d53e4851efdc0a11993b6cd000789d70c05102"
+ dependencies:
+ follow-redirects "^1.3.0"
+ is-buffer "^1.1.5"
+
babel-code-frame@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b"
@@ -1291,12 +1298,12 @@ caniuse-api@^1.5.2:
lodash.uniq "^4.5.0"
caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639:
- version "1.0.30000856"
- resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000856.tgz#fbebb99abe15a5654fc7747ebb5315bdfde3358f"
+ version "1.0.30000859"
+ resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000859.tgz#6e813a1757f19a93cb3675f6b5037aca80bea062"
caniuse-lite@^1.0.30000844:
- version "1.0.30000856"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000856.tgz#ecc16978135a6f219b138991eb62009d25ee8daa"
+ version "1.0.30000859"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000859.tgz#da974adc5348fffe94724877a7ef8cb5d6d3d777"
capture-exit@^1.2.0:
version "1.2.0"
@@ -2101,8 +2108,8 @@ ee-first@1.1.1:
resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.47:
- version "1.3.48"
- resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.48.tgz#d3b0d8593814044e092ece2108fc3ac9aea4b900"
+ version "1.3.50"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.50.tgz#7438b76f92b41b919f3fbdd350fbd0757dacddf7"
elliptic@^6.0.0:
version "6.4.0"
@@ -2313,10 +2320,10 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
safe-buffer "^5.1.1"
exec-sh@^0.2.0:
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.1.tgz#163b98a6e89e6b65b47c2a28d215bc1f63989c38"
+ version "0.2.2"
+ resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36"
dependencies:
- merge "^1.1.3"
+ merge "^1.2.0"
execa@^0.10.0:
version "0.10.0"
@@ -2512,6 +2519,12 @@ flush-write-stream@^1.0.0:
inherits "^2.0.1"
readable-stream "^2.0.4"
+follow-redirects@^1.3.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.5.0.tgz#234f49cf770b7f35b40e790f636ceba0c3a0ab77"
+ dependencies:
+ debug "^3.1.0"
+
for-in@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80"
@@ -2798,8 +2811,8 @@ home-or-tmp@^2.0.0:
os-tmpdir "^1.0.1"
hosted-git-info@^2.1.4:
- version "2.6.0"
- resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.0.tgz#23235b29ab230c576aab0d4f13fc046b0b038222"
+ version "2.6.1"
+ resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.1.tgz#6e4cee78b01bb849dcf93527708c69fdbee410df"
html-comment-regex@^1.1.0:
version "1.1.1"
@@ -2822,8 +2835,8 @@ html-loader@^0.5.5:
object-assign "^4.1.1"
html-minifier@^3.2.3, html-minifier@^3.5.8:
- version "3.5.16"
- resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.16.tgz#39f5aabaf78bdfc057fe67334226efd7f3851175"
+ version "3.5.17"
+ resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.17.tgz#fe9834c4288e4d5b4dfe18fbc7f3f811c108e5ea"
dependencies:
camel-case "3.0.x"
clean-css "4.1.x"
@@ -2831,7 +2844,7 @@ html-minifier@^3.2.3, html-minifier@^3.5.8:
he "1.1.x"
param-case "2.1.x"
relateurl "0.2.x"
- uglify-js "3.3.x"
+ uglify-js "3.4.x"
html-webpack-plugin@^3.2.0:
version "3.2.0"
@@ -4069,7 +4082,7 @@ merge-stream@^1.0.1:
dependencies:
readable-stream "^2.0.1"
-merge@^1.1.3:
+merge@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da"
@@ -4361,8 +4374,8 @@ node-notifier@^5.2.1:
which "^1.3.0"
node-pre-gyp@^0.10.0:
- version "0.10.0"
- resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.0.tgz#6e4ef5bb5c5203c6552448828c852c40111aac46"
+ version "0.10.2"
+ resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.10.2.tgz#e8945c20ef6795a20aac2b44f036eb13cf5146e3"
dependencies:
detect-libc "^1.0.2"
mkdirp "^0.5.1"
@@ -4370,7 +4383,7 @@ node-pre-gyp@^0.10.0:
nopt "^4.0.1"
npm-packlist "^1.1.6"
npmlog "^4.0.2"
- rc "^1.1.7"
+ rc "^1.2.7"
rimraf "^2.6.1"
semver "^5.3.0"
tar "^4"
@@ -4571,8 +4584,8 @@ optimist@^0.6.1:
wordwrap "~0.0.2"
optimize-css-assets-webpack-plugin@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-4.0.2.tgz#813d511d20fe5d9a605458441ed97074d79c1122"
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-4.0.3.tgz#4f714e276b279700892c4a6202b7e22812d6f683"
dependencies:
cssnano "^3.10.0"
last-call-webpack-plugin "^3.0.0"
@@ -5090,8 +5103,8 @@ postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0
supports-color "^3.2.3"
postcss@^6.0.0, postcss@^6.0.1:
- version "6.0.22"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.22.tgz#e23b78314905c3b90cbd61702121e7a78848f2a3"
+ version "6.0.23"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324"
dependencies:
chalk "^2.4.1"
source-map "^0.6.1"
@@ -5276,7 +5289,7 @@ range-parser@^1.0.3:
version "1.2.0"
resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e"
-rc@^1.0.1, rc@^1.1.6, rc@^1.1.7:
+rc@^1.0.1, rc@^1.1.6, rc@^1.2.7:
version "1.2.8"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
dependencies:
@@ -5793,8 +5806,8 @@ signal-exit@^3.0.0, signal-exit@^3.0.2:
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
sisteransi@^0.1.0:
- version "0.1.0"
- resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.0.tgz#2e6706ac427019b84e60f751d588d87920484f25"
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-0.1.1.tgz#5431447d5f7d1675aac667ccd0b865a4994cb3ce"
slash@^1.0.0:
version "1.0.0"
@@ -6211,8 +6224,8 @@ toposort@^1.0.0:
resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.7.tgz#2e68442d9f64ec720b8cc89e6443ac6caa950029"
tough-cookie@>=2.3.3, tough-cookie@^2.3.3:
- version "2.4.2"
- resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.2.tgz#aa9133154518b494efab98a58247bfc38818c00c"
+ version "2.4.3"
+ resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781"
dependencies:
psl "^1.1.24"
punycode "^1.4.1"
@@ -6238,8 +6251,8 @@ trim-right@^1.0.1:
resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
tslib@^1.9.0:
- version "1.9.2"
- resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.2.tgz#8be0cc9a1f6dc7727c38deb16c2ebd1a2892988e"
+ version "1.9.3"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286"
tty-browserify@0.0.0:
version "0.0.0"
@@ -6283,9 +6296,9 @@ uglify-es@^3.3.4:
commander "~2.13.0"
source-map "~0.6.1"
-uglify-js@3.3.x:
- version "3.3.28"
- resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.3.28.tgz#0efb9a13850e11303361c1051f64d2ec68d9be06"
+uglify-js@3.4.x:
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.2.tgz#70511a390eb62423675ba63c374ba1abf045116c"
dependencies:
commander "~2.15.0"
source-map "~0.6.1"
@@ -6304,8 +6317,8 @@ uglify-to-browserify@~1.0.0:
resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7"
uglifyjs-webpack-plugin@^1.2.4:
- version "1.2.6"
- resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.6.tgz#f4bb44f02431e82b301d8d4624330a6a35729381"
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.7.tgz#57638dd99c853a1ebfe9d97b42160a8a507f9d00"
dependencies:
cacache "^10.0.4"
find-cache-dir "^1.0.0"
@@ -6458,8 +6471,8 @@ utila@~0.4:
resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c"
uuid@^3.1.0:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14"
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.0.tgz#b237147804881d7b86f40a7ff8f590f15c37de32"
v8-compile-cache@^2.0.0:
version "2.0.0"
@@ -6648,8 +6661,8 @@ webpack-sources@^1.0.1, webpack-sources@^1.1.0:
source-map "~0.6.1"
webpack@^4.12.1:
- version "4.12.1"
- resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.12.1.tgz#9108078c67fdd72c2609cea22af87d7aed2acb08"
+ version "4.12.2"
+ resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.12.2.tgz#d2b8418eb40cedcbf2c1f5905d23a99546011ce9"
dependencies:
"@webassemblyjs/ast" "1.5.12"
"@webassemblyjs/helper-module-context" "1.5.12"
@@ -6683,7 +6696,7 @@ whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3:
dependencies:
iconv-lite "0.4.19"
-whatwg-fetch@>=0.10.0, whatwg-fetch@^2.0.4:
+whatwg-fetch@>=0.10.0:
version "2.0.4"
resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f"