Merge pull request #583 from mozilla/beef

Promote the beefy UI to default
This commit is contained in:
Danny Coates 2017-10-10 10:27:10 -07:00 committed by GitHub
commit a8c32ae49c
7 changed files with 248 additions and 205 deletions

View File

@ -1,38 +1,9 @@
import hash from 'string-hash';
const experiments = {
'5YHCzn2CQTmBwWwTmZupBA': {
id: '5YHCzn2CQTmBwWwTmZupBA',
run: function(variant, state, emitter) {
state.experiment = {
xid: this.id,
xvar: variant
};
// Beefy UI
if (variant === 1) {
state.config.uploadWindowStyle = 'upload-window upload-window-b';
state.config.uploadButtonStyle = 'btn browse browse-b';
} else {
state.config.uploadWindowStyle = 'upload-window';
state.config.uploadButtonStyle = 'btn browse';
}
emitter.emit('render');
},
eligible: function(state) {
return this.luckyNumber(state) >= 0.5;
},
variant: function(state) {
return this.luckyNumber(state) < 0.75 ? 0 : 1;
},
luckyNumber: function(state) {
return luckyNumber(
`${this.id}:${state.storage.get('testpilot_ga__cid')}`
);
}
}
};
const experiments = {};
//Returns a number between 0 and 1
// eslint-disable-next-line no-unused-vars
function luckyNumber(str) {
return hash(str) / 0xffffffff;
}

View File

@ -20,10 +20,6 @@ app.use((state, emitter) => {
state.translate = locale.getTranslator();
state.storage = storage;
state.raven = Raven;
state.config = {
uploadWindowStyle: 'upload-window',
uploadButtonStyle: 'browse btn'
};
emitter.on('DOMContentLoaded', async () => {
if (
/firefox/i.test(navigator.userAgent) &&

View File

@ -13,8 +13,7 @@ module.exports = function(state, emit) {
'uploadPageLearnMore'
)}</a>
</div>
<div class="${state.config
.uploadWindowStyle}" ondragover=${dragover} ondragleave=${dragleave}>
<div class="upload-window" ondragover=${dragover} ondragleave=${dragleave}>
<div id="upload-img"><img src="${assets.get(
'upload.svg'
)}" title="${state.translate('uploadSvgAlt')}"/></div>
@ -24,10 +23,9 @@ module.exports = function(state, emit) {
)}</em></span>
<form method="post" action="upload" enctype="multipart/form-data">
<input id="file-upload" type="file" name="fileUploaded" onchange=${upload} onfocus=${onfocus} onblur=${onblur} />
<label for="file-upload" id="browse" class="${state.config
.uploadButtonStyle}" title="${state.translate(
'uploadPageBrowseButton1'
)}">${state.translate('uploadPageBrowseButton1')}</label>
<label for="file-upload" id="browse" class="btn browse" title="${state.translate(
'uploadPageBrowseButton1'
)}">${state.translate('uploadPageBrowseButton1')}</label>
</form>
</div>
${fileList(state, emit)}

View File

@ -205,7 +205,7 @@ a {
}
.upload-window {
border: 1px dashed rgba(0, 148, 251, 0.5);
border: 3px dashed rgba(0, 148, 251, 0.5);
margin: 0 auto;
height: 255px;
border-radius: 4px;
@ -219,7 +219,7 @@ a {
}
.upload-window.ondrag {
border: 3px dashed rgba(0, 148, 251, 0.5);
border: 5px dashed rgba(0, 148, 251, 0.5);
margin: 0 auto;
height: 251px;
transform: scale(1.04);
@ -231,14 +231,6 @@ a {
text-align: center;
}
.upload-window-b {
border: 3px dashed rgba(0, 148, 251, 0.5);
}
.upload-window-b.ondrag {
border: 5px dashed rgba(0, 148, 251, 0.5);
}
.link {
color: #0094fb;
text-decoration: none;
@ -258,10 +250,10 @@ a {
.browse {
background: #0297f8;
border-radius: 5px;
font-size: 15px;
font-size: 20px;
color: #fff;
min-width: 240px;
height: 44px;
height: 60px;
display: flex;
justify-content: center;
align-items: center;
@ -273,11 +265,6 @@ a {
background-color: #0287e8;
}
.browse-b {
height: 60px;
font-size: 20px;
}
input[type='file'] {
opacity: 0;
overflow: hidden;

359
package-lock.json generated
View File

@ -343,23 +343,87 @@
"dev": true
},
"autoprefixer": {
"version": "7.1.4",
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-7.1.4.tgz",
"integrity": "sha512-MB1XybOJqu1uAwpfSilAa1wSURNc4W310CFKvMj1fNaJBFxr1PGgz72vZaPr9ryKGqs2vYZ6jDyJ0aiGELjsoA==",
"version": "7.1.5",
"resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-7.1.5.tgz",
"integrity": "sha512-sMN453qIm8Z+tunzYWW+Y490wWkICHhCYm/VohLjjl+N7ARSFuF5au7E6tr7oEbeeXj8mNjpSw2kxjJaO6YCOw==",
"dev": true,
"requires": {
"browserslist": "2.4.0",
"caniuse-lite": "1.0.30000740",
"browserslist": "2.5.1",
"caniuse-lite": "1.0.30000745",
"normalize-range": "0.1.2",
"num2fraction": "1.2.2",
"postcss": "6.0.12",
"postcss": "6.0.13",
"postcss-value-parser": "3.3.0"
},
"dependencies": {
"ansi-styles": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz",
"integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==",
"dev": true,
"requires": {
"color-convert": "1.9.0"
}
},
"browserslist": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.5.1.tgz",
"integrity": "sha512-jAvM2ku7YDJ+leAq3bFH1DE0Ylw+F+EQDq4GkqZfgPEqpWYw9ofQH85uKSB9r3Tv7XDbfqVtE+sdvKJW7IlPJA==",
"dev": true,
"requires": {
"caniuse-lite": "1.0.30000745",
"electron-to-chromium": "1.3.24"
}
},
"caniuse-lite": {
"version": "1.0.30000745",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000745.tgz",
"integrity": "sha1-INb+3hFXpJNRM1ApRvx+DmuIDaU=",
"dev": true
},
"chalk": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz",
"integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==",
"dev": true,
"requires": {
"ansi-styles": "3.2.0",
"escape-string-regexp": "1.0.5",
"supports-color": "4.4.0"
}
},
"postcss": {
"version": "6.0.13",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz",
"integrity": "sha512-nHsrD1PPTMSJDfU+osVsLtPkSP9YGeoOz4FDLN4r1DW4N5vqL1J+gACzTQHsfwIiWG/0/nV4yCzjTMo1zD8U1g==",
"dev": true,
"requires": {
"chalk": "2.1.0",
"source-map": "0.6.1",
"supports-color": "4.4.0"
}
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
},
"supports-color": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz",
"integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==",
"dev": true,
"requires": {
"has-flag": "2.0.0"
}
}
}
},
"aws-sdk": {
"version": "2.125.0",
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.125.0.tgz",
"integrity": "sha1-wMMTG1fu9KBRxyZsw7R6cE5+Nqs=",
"version": "2.130.0",
"resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.130.0.tgz",
"integrity": "sha1-8Mbafb2poVywwr6zAw9toqTAPDY=",
"requires": {
"buffer": "4.9.1",
"crypto-browserify": "1.0.9",
@ -368,7 +432,7 @@
"querystring": "0.2.0",
"sax": "1.2.1",
"url": "0.10.3",
"uuid": "3.0.1",
"uuid": "3.1.0",
"xml2js": "0.4.17",
"xmlbuilder": "4.2.1"
}
@ -992,15 +1056,15 @@
}
},
"babel-plugin-yo-yoify": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/babel-plugin-yo-yoify/-/babel-plugin-yo-yoify-1.0.0.tgz",
"integrity": "sha512-W2qop8MeK20rECF6fzD1U8yiDWLGZkW9KieQRKFqEoNdCIRsHVVc6PAWBUic9lszh9+P8WONCi9/Tdl+P/Vejg==",
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/babel-plugin-yo-yoify/-/babel-plugin-yo-yoify-1.0.1.tgz",
"integrity": "sha512-apPjOzas8nhKR1GT1h8fuJhClS/BJck6+bVZph7rjrHYgLkrkEBQVpOQ7y1HydKgVEj2dL6BRNpp+nAJAj/Q7A==",
"dev": true,
"requires": {
"@f/is-svg": "1.0.0",
"@f/svg-namespace": "1.0.1",
"camel-case": "3.0.0",
"hyperx": "2.3.0",
"hyperx": "2.3.1",
"is-boolean-attribute": "0.0.1",
"normalize-html-whitespace": "0.2.0",
"yo-yoify": "4.0.0"
@ -1220,7 +1284,7 @@
"resolved": "https://registry.npmjs.org/bel/-/bel-5.1.3.tgz",
"integrity": "sha512-sy80sWU0BPpzbpU+EJOLv2VtGGzWL966xcqDbAaIvvxJgujld69B4hGgDEtGpQx0CdVDTbyCjVGK/3OTLNeJRA==",
"requires": {
"hyperx": "2.3.0",
"hyperx": "2.3.1",
"is-electron": "2.1.0",
"pelo": "0.0.3"
}
@ -1267,9 +1331,9 @@
}
},
"bluebird": {
"version": "2.11.0",
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.11.0.tgz",
"integrity": "sha1-U0uQM8AiyVecVro7Plpcqvu2UOE=",
"version": "3.5.1",
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
"integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
"dev": true
},
"bn.js": {
@ -1661,9 +1725,9 @@
}
},
"choo": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/choo/-/choo-6.1.0.tgz",
"integrity": "sha512-IdRMFD/qoE0TFi3P8JfQwa19GRs3VBy6JyTaWclojRRuiSi0qsSAy0MPNnbL7GvytzbNKuPQx5zq02fjCcDxIw==",
"version": "6.4.2",
"resolved": "https://registry.npmjs.org/choo/-/choo-6.4.2.tgz",
"integrity": "sha512-GZIK/L8bVtn9dLeSPs5/juuV9OKKxjDXYzyaeDBsbvOhjSROpyST7pBEcvTbq4nIeV0iGIGklBzVSwClwMyYfA==",
"requires": {
"bel": "5.1.3",
"document-ready": "2.0.1",
@ -2111,21 +2175,30 @@
"dev": true
},
"copy-webpack-plugin": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.1.0.tgz",
"integrity": "sha512-7T5TZhRLwgTCA7vXhAKgwafACLlmMG8mNQ1gsTBAsnYfRFuIzrQsXLxJRI9GyzBZ7W208d26Xj+hTPLD/7QvzA==",
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.1.1.tgz",
"integrity": "sha512-qcjV9uj5PFuKo9GDr0xYAZ3DwFA3ugwDcfbLHfiDrvnUx66Z7C4r00/ds856GaGb2cGHqLTwrGxwfvW+lgAQew==",
"dev": true,
"requires": {
"bluebird": "2.11.0",
"fs-extra": "0.26.7",
"glob": "6.0.4",
"is-glob": "3.1.0",
"bluebird": "3.5.1",
"fs-extra": "4.0.2",
"glob": "7.1.2",
"is-glob": "4.0.0",
"loader-utils": "0.2.17",
"lodash": "4.17.4",
"minimatch": "3.0.4",
"node-dir": "0.1.17"
},
"dependencies": {
"is-glob": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz",
"integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=",
"dev": true,
"requires": {
"is-extglob": "2.1.1"
}
},
"loader-utils": {
"version": "0.2.17",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
@ -2733,9 +2806,9 @@
"integrity": "sha1-PjvzHTI1uU4jLnssX6GmNOhzuuQ="
},
"doiuse": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/doiuse/-/doiuse-3.0.1.tgz",
"integrity": "sha512-SkML1LoeADPVc2LPxRHG5LhPzAWInRMhLO0gn74aiMUL5jimYFZR1PLxCD2vNc3v8RwJlMNEpZb+QWkkoUw0fw==",
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/doiuse/-/doiuse-4.0.0.tgz",
"integrity": "sha512-j2KwY4eJdysCnRY/CVYG3/cE0t5SEOCtGMvdfVLkcmyay9W43rmZbb4bOmkCN25aJ9EkkRhxCJe44uMt92WqgQ==",
"dev": true,
"requires": {
"browserslist": "2.4.0",
@ -3399,9 +3472,9 @@
"dev": true
},
"express": {
"version": "4.16.1",
"resolved": "https://registry.npmjs.org/express/-/express-4.16.1.tgz",
"integrity": "sha512-STB7LZ4N0L+81FJHGla2oboUHTk4PaN1RsOkoRh9OSeEKylvF5hwKYVX1xCLFaCT7MD0BNG/gX2WFMLqY6EMBw==",
"version": "4.16.2",
"resolved": "https://registry.npmjs.org/express/-/express-4.16.2.tgz",
"integrity": "sha1-41xt/i1kt9ygpc1PIXgb4ymeB2w=",
"requires": {
"accepts": "1.3.4",
"array-flatten": "1.1.1",
@ -3561,9 +3634,9 @@
}
},
"file-loader": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.4.tgz",
"integrity": "sha512-E4mCBrAVk8pB6VmuCW/rbHvtQDy2sknh0G4c2c449Q5qC7fCkL1P6sZGxQXWPaAxXBdU8WsTzPEB973Ei8vkxg==",
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.5.tgz",
"integrity": "sha512-RzGHDatcVNpGISTvCpfUfOGpYuSR7HSsSg87ki+wF6rw1Hm0RALPTiAdsxAq1UwLf0RRhbe22/eHK6nhXspiOQ==",
"dev": true,
"requires": {
"loader-utils": "1.1.0",
@ -3721,7 +3794,7 @@
"integrity": "sha1-87IWfZBoxGmKjVH092CjmlTYGOs=",
"dev": true,
"requires": {
"samsam": "1.2.1"
"samsam": "1.3.0"
}
},
"formidable": {
@ -3752,16 +3825,25 @@
"dev": true
},
"fs-extra": {
"version": "0.26.7",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.26.7.tgz",
"integrity": "sha1-muH92UiXeY7at20JGM9C0MMYT6k=",
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz",
"integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=",
"dev": true,
"requires": {
"graceful-fs": "4.1.11",
"jsonfile": "2.4.0",
"klaw": "1.3.1",
"path-is-absolute": "1.0.1",
"rimraf": "2.6.2"
"jsonfile": "4.0.0",
"universalify": "0.1.1"
},
"dependencies": {
"jsonfile": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
"integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
"dev": true,
"requires": {
"graceful-fs": "4.1.11"
}
}
}
},
"fs.realpath": {
@ -4786,11 +4868,12 @@
}
},
"glob": {
"version": "6.0.4",
"resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz",
"integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=",
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"dev": true,
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
@ -5271,9 +5354,9 @@
"integrity": "sha1-glMI1Ju44pV5I/cxmBvMgRytev8="
},
"hyperx": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/hyperx/-/hyperx-2.3.0.tgz",
"integrity": "sha1-cPRz1m1K1VDd0cg+S+JlEna78eI=",
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/hyperx/-/hyperx-2.3.1.tgz",
"integrity": "sha512-wBbSBfbWEqMsr5bJ6h7rV9a1y2hDCsV/0Lqz2zqa/nEfbZ4WR/1FDi/gkNsHK7894zf8ilbgv8RHY7DkgM9wJw==",
"requires": {
"hyperscript-attribute-to-property": "1.0.0"
}
@ -6056,9 +6139,9 @@
}
},
"known-css-properties": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.3.0.tgz",
"integrity": "sha512-QMQcnKAiQccfQTqtBh/qwquGZ2XK/DXND1jrcN9M8gMMy99Gwla7GQjndVUsEqIaRyP6bsFRuhwRj5poafBGJQ==",
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.4.1.tgz",
"integrity": "sha512-n+ThoCKhyMFKkMfksdLMP5ndp+VzwDRzQdH6JlmZ2GTpUenYB2EeEKjOue2SErAAG/MmBSUISpwvawDhydWQdQ==",
"dev": true
},
"lazy-cache": {
@ -6582,9 +6665,9 @@
"dev": true
},
"lolex": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/lolex/-/lolex-2.1.2.tgz",
"integrity": "sha1-JpS5U8nqTQE+W4v7qJHJkQJbJik=",
"version": "2.1.3",
"resolved": "https://registry.npmjs.org/lolex/-/lolex-2.1.3.tgz",
"integrity": "sha512-BdHq78SeI+6PAUtl4atDuCt7L6E4fab3mSRtqxm4ywaXe4uP7jZ0TTcFNuU20syUjxZc2l7jFqKVMJ+AX0LnpQ==",
"dev": true
},
"longest": {
@ -7240,9 +7323,9 @@
"integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk="
},
"nise": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/nise/-/nise-1.1.0.tgz",
"integrity": "sha512-lIFidCxB0mJGyq1i33tLRNojtMoYX95EAI7WQEU+/ees0w6hvXZQHZ7WD130Tjeh5+YJAUVLfQ3k/s9EA8jj+w==",
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/nise/-/nise-1.1.1.tgz",
"integrity": "sha512-f5DMJB0MqBaSuP2NAwPx7HyVKPdaozds0KsNe9XIP3npKWt/QUg73l5TTLRTSwfG/Y3AB0ktacuxX4QNcg6vVw==",
"dev": true,
"requires": {
"formatio": "1.2.0",
@ -8426,7 +8509,7 @@
"integrity": "sha512-zl0EEqq8Urh37Ppdv9zzhpZpLHrgkxmt6e3O4ftRa7/b8Uq2LV+/KBVM8/KuzmHNu+mthhOArg1lxbfqQ3NUdg==",
"dev": true,
"requires": {
"postcss": "5.2.17"
"postcss": "5.2.18"
},
"dependencies": {
"has-flag": {
@ -8436,9 +8519,9 @@
"dev": true
},
"postcss": {
"version": "5.2.17",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.17.tgz",
"integrity": "sha1-z09Ze4ZNZcikkrLqvp1wbIecOIs=",
"version": "5.2.18",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz",
"integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==",
"dev": true,
"requires": {
"chalk": "1.1.3",
@ -9215,6 +9298,15 @@
"integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=",
"dev": true
},
"postcss-safe-parser": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-3.0.1.tgz",
"integrity": "sha1-t1Pv9sfArqXoN1++TN6L+QY/8UI=",
"dev": true,
"requires": {
"postcss": "6.0.12"
}
},
"postcss-scss": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-1.0.2.tgz",
@ -9381,9 +9473,9 @@
"dev": true
},
"prettier": {
"version": "1.7.3",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-1.7.3.tgz",
"integrity": "sha1-jml0clJzkUscR0OZWd09O6U2ZLY=",
"version": "1.7.4",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-1.7.4.tgz",
"integrity": "sha1-XoYkrpNjyA+V7GRFhOzfVddPk/o=",
"dev": true
},
"pretty-format": {
@ -10163,9 +10255,9 @@
}
},
"samsam": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/samsam/-/samsam-1.2.1.tgz",
"integrity": "sha1-7dOQk6MYQ3DLhZJDsr3yVefY6mc=",
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/samsam/-/samsam-1.3.0.tgz",
"integrity": "sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg==",
"dev": true
},
"sax": {
@ -10194,9 +10286,9 @@
"dev": true
},
"selenium-webdriver": {
"version": "3.5.0",
"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.5.0.tgz",
"integrity": "sha512-1bCZYRfDy7vsu1dkLrclTLvWPxSo6rOIkxZXvB2wnzeWkEoiTKpw612EUGA3jRZxPzAzI9OlxuULJV8ge1vVXQ==",
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz",
"integrity": "sha512-WH7Aldse+2P5bbFBO4Gle/nuQOdVwpHMTL6raL3uuBj/vPG07k6uzt3aiahu352ONBr5xXh0hDlM3LhtXPOC4Q==",
"dev": true,
"requires": {
"jszip": "3.1.4",
@ -10371,19 +10463,19 @@
"dev": true
},
"sinon": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/sinon/-/sinon-4.0.0.tgz",
"integrity": "sha1-pUpfAjeqHdIhXl6ByJtCtQxP22s=",
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/sinon/-/sinon-4.0.1.tgz",
"integrity": "sha512-4qIY0pCWCvGCJpV/1JkFu9kbsNEZ9O34cG1oru/c7OCDtrEs50Gq/VjkA2ID5ZwLyoNx1i1ws118oh/p6fVeDg==",
"dev": true,
"requires": {
"diff": "3.2.0",
"formatio": "1.2.0",
"lodash.get": "4.4.2",
"lolex": "2.1.2",
"lolex": "2.1.3",
"native-promise-only": "0.8.1",
"nise": "1.1.0",
"nise": "1.1.1",
"path-to-regexp": "1.7.0",
"samsam": "1.2.1",
"samsam": "1.3.0",
"text-encoding": "0.6.4",
"type-detect": "4.0.3"
},
@ -10872,15 +10964,15 @@
"dev": true
},
"stylelint": {
"version": "8.1.1",
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-8.1.1.tgz",
"integrity": "sha512-RtjUtqG2h3dP4CuMU1M++GRJGvKXWozmv5yhLoOLy7NWP2jJZOwLZSVwtcjXQsBJBfGuC33mooBOwNaCIhi2tQ==",
"version": "8.2.0",
"resolved": "https://registry.npmjs.org/stylelint/-/stylelint-8.2.0.tgz",
"integrity": "sha512-57JWIz/1Uh9ehZMZyAqlFC0EDfQrMXCH8yqt8ZuJQQvV3LBKgAM/JYd+CWi1hC4eJtRODSPbIIBYKdGjkPZdMg==",
"dev": true,
"requires": {
"autoprefixer": "7.1.4",
"autoprefixer": "7.1.5",
"balanced-match": "1.0.0",
"chalk": "2.1.0",
"cosmiconfig": "2.2.2",
"cosmiconfig": "3.1.0",
"debug": "3.1.0",
"execall": "1.0.0",
"file-entry-cache": "2.0.0",
@ -10890,7 +10982,7 @@
"html-tags": "2.0.0",
"ignore": "3.3.5",
"imurmurhash": "0.1.4",
"known-css-properties": "0.3.0",
"known-css-properties": "0.4.1",
"lodash": "4.17.4",
"log-symbols": "2.1.0",
"mathml-tag-names": "2.0.1",
@ -10903,10 +10995,11 @@
"postcss-media-query-parser": "0.2.3",
"postcss-reporter": "5.0.0",
"postcss-resolve-nested-selector": "0.1.1",
"postcss-safe-parser": "3.0.1",
"postcss-scss": "1.0.2",
"postcss-selector-parser": "2.2.3",
"postcss-value-parser": "3.3.0",
"resolve-from": "3.0.0",
"resolve-from": "4.0.0",
"specificity": "0.3.2",
"string-width": "2.1.1",
"style-search": "0.1.0",
@ -10936,18 +11029,15 @@
}
},
"cosmiconfig": {
"version": "2.2.2",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz",
"integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==",
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-3.1.0.tgz",
"integrity": "sha512-zedsBhLSbPBms+kE7AH4vHg6JsKDz6epSv2/+5XHs8ILHlgDciSJfSWf8sX9aQ52Jb7KI7VswUTsLpR/G0cr2Q==",
"dev": true,
"requires": {
"is-directory": "0.3.1",
"js-yaml": "3.7.0",
"minimist": "1.2.0",
"object-assign": "4.1.1",
"os-homedir": "1.0.2",
"parse-json": "2.2.0",
"require-from-string": "1.2.1"
"js-yaml": "3.10.0",
"parse-json": "3.0.0",
"require-from-string": "2.0.1"
}
},
"debug": {
@ -10959,19 +11049,11 @@
"ms": "2.0.0"
}
},
"glob": {
"version": "7.1.2",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"dev": true,
"requires": {
"fs.realpath": "1.0.0",
"inflight": "1.0.6",
"inherits": "2.0.3",
"minimatch": "3.0.4",
"once": "1.4.0",
"path-is-absolute": "1.0.1"
}
"esprima": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
"integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
"dev": true
},
"globby": {
"version": "6.1.0",
@ -10994,11 +11076,24 @@
}
}
},
"minimist": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
"js-yaml": {
"version": "3.10.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz",
"integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==",
"dev": true,
"requires": {
"argparse": "1.0.9",
"esprima": "4.0.0"
}
},
"parse-json": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-3.0.0.tgz",
"integrity": "sha1-+m9HsY4jgm6tMvJj50TQ4ehH+xM=",
"dev": true,
"requires": {
"error-ex": "1.3.1"
}
},
"pify": {
"version": "3.0.0",
@ -11006,16 +11101,10 @@
"integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
"dev": true
},
"require-from-string": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz",
"integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=",
"dev": true
},
"resolve-from": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
"integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
"integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
"dev": true
},
"supports-color": {
@ -11045,15 +11134,15 @@
}
},
"stylelint-no-unsupported-browser-features": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-1.0.0.tgz",
"integrity": "sha1-hKiJw0mbM3RBbVAM4V9ssXIi1FI=",
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-1.0.1.tgz",
"integrity": "sha512-6uaoXV/WA5BLKo9bbjERFE3oAOA0UY4FgGDaQWarV9x3qrDLS2o2SJqk0TaxwAIAgROwj9RhbQ2FF1QKRzZBNw==",
"dev": true,
"requires": {
"doiuse": "3.0.1",
"doiuse": "4.0.0",
"lodash": "4.17.4",
"postcss": "6.0.12",
"stylelint": "8.1.1"
"stylelint": "8.2.0"
}
},
"sugarss": {
@ -11540,6 +11629,12 @@
"integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=",
"dev": true
},
"universalify": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz",
"integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=",
"dev": true
},
"unpipe": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
@ -11612,9 +11707,9 @@
"integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
},
"uuid": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.0.1.tgz",
"integrity": "sha1-ZUS7ot/ajBzxfmKaOjBeK7H+5sE="
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz",
"integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g=="
},
"val-loader": {
"version": "1.0.2",
@ -11785,7 +11880,7 @@
"compression": "1.7.1",
"connect-history-api-fallback": "1.3.0",
"del": "3.0.0",
"express": "4.16.1",
"express": "4.16.2",
"html-entities": "1.2.1",
"http-proxy-middleware": "0.17.4",
"internal-ip": "1.2.0",
@ -12263,7 +12358,7 @@
"requires": {
"acorn": "5.1.2",
"falafel": "2.1.0",
"hyperx": "2.3.0",
"hyperx": "2.3.1",
"on-load": "3.3.1",
"through2": "2.0.3"
}

View File

@ -43,15 +43,15 @@
"node": ">=8.2.0"
},
"devDependencies": {
"autoprefixer": "^7.1.4",
"autoprefixer": "^7.1.5",
"babel-core": "^6.26.0",
"babel-loader": "^7.1.2",
"babel-plugin-yo-yoify": "^1.0.0",
"babel-plugin-yo-yoify": "^1.0.1",
"babel-polyfill": "^6.26.0",
"babel-preset-env": "^1.6.0",
"babel-preset-es2015": "^6.24.1",
"babel-preset-stage-2": "^6.24.1",
"copy-webpack-plugin": "^4.1.0",
"copy-webpack-plugin": "^4.1.1",
"cross-env": "^5.0.5",
"css-loader": "^0.28.7",
"css-mqpacker": "^6.0.1",
@ -62,7 +62,7 @@
"eslint-plugin-security": "^1.4.0",
"expose-loader": "^0.7.3",
"extract-loader": "^1.0.1",
"file-loader": "^1.1.4",
"file-loader": "^1.1.5",
"git-rev-sync": "^1.9.1",
"github-changes": "^1.1.0",
"html-loader": "^0.5.1",
@ -72,17 +72,17 @@
"nanobus": "^4.2.0",
"npm-run-all": "^4.1.1",
"postcss-loader": "^2.0.6",
"prettier": "^1.7.3",
"prettier": "^1.7.4",
"proxyquire": "^1.8.0",
"raven-js": "^3.18.1",
"redis-mock": "^0.20.0",
"require-from-string": "^2.0.1",
"rimraf": "^2.6.2",
"selenium-webdriver": "^3.5.0",
"sinon": "^4.0.0",
"selenium-webdriver": "^3.6.0",
"sinon": "^4.0.1",
"string-hash": "^1.1.3",
"stylelint-config-standard": "^17.0.0",
"stylelint-no-unsupported-browser-features": "^1.0.0",
"stylelint-no-unsupported-browser-features": "^1.0.1",
"supertest": "^3.0.0",
"testpilot-ga": "^0.3.0",
"val-loader": "^1.0.2",
@ -92,12 +92,12 @@
"webpack-unassert-loader": "^1.2.0"
},
"dependencies": {
"aws-sdk": "^2.125.0",
"aws-sdk": "^2.130.0",
"body-parser": "^1.18.2",
"choo": "^6.1.0",
"choo": "^6.4.2",
"connect-busboy": "0.0.2",
"convict": "^4.0.1",
"express": "^4.16.1",
"express": "^4.16.2",
"express-request-language": "^1.1.12",
"fluent": "^0.4.1",
"fluent-langneg": "^0.1.0",

View File

@ -15,10 +15,6 @@ module.exports = function(req) {
storage: {
files: []
},
config: {
uploadWindowStyle: 'upload-window',
uploadButtonStyle: 'browse btn'
},
fira: false,
fileInfo: {},
layout