Apply some measurements for shaving off the few kilobytes.
- Shave off about 30 kB by building with preact instead of react. - Shave off another 20 kB by using a moment-timezone build with only data for 2012~2022. Should be updated in time!pull/1/head
parent
02aff29fc1
commit
b87e1e7577
|
@ -12,6 +12,10 @@ module.exports = {
|
||||||
},
|
},
|
||||||
|
|
||||||
webpack: {
|
webpack: {
|
||||||
|
aliases: {
|
||||||
|
'moment-timezone': 'moment-timezone/builds/moment-timezone-with-data-2012-2022.js',
|
||||||
|
},
|
||||||
|
|
||||||
autoprefixer: '> 1%, last 2 versions, Firefox ESR, ios >= 8',
|
autoprefixer: '> 1%, last 2 versions, Firefox ESR, ios >= 8',
|
||||||
|
|
||||||
extra: {
|
extra: {
|
||||||
|
|
|
@ -4980,6 +4980,14 @@
|
||||||
"integrity": "sha1-QyNS5XrM2HqzEQ6C0/6g5HgSFW0=",
|
"integrity": "sha1-QyNS5XrM2HqzEQ6C0/6g5HgSFW0=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"immutability-helper": {
|
||||||
|
"version": "2.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/immutability-helper/-/immutability-helper-2.3.1.tgz",
|
||||||
|
"integrity": "sha1-jM/OkhVyCMEgsq+tftBcERFMCG4=",
|
||||||
|
"requires": {
|
||||||
|
"invariant": "2.2.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
"imurmurhash": {
|
"imurmurhash": {
|
||||||
"version": "0.1.4",
|
"version": "0.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
|
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
|
||||||
|
@ -8752,6 +8760,36 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"preact": {
|
||||||
|
"version": "8.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/preact/-/preact-8.2.1.tgz",
|
||||||
|
"integrity": "sha1-Z0JD3wyEeITQGYNARKovzTEecu0="
|
||||||
|
},
|
||||||
|
"preact-compat": {
|
||||||
|
"version": "3.17.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/preact-compat/-/preact-compat-3.17.0.tgz",
|
||||||
|
"integrity": "sha1-Uoz9/DARkMGg9HVnM2vh9L4CZrM=",
|
||||||
|
"requires": {
|
||||||
|
"immutability-helper": "2.3.1",
|
||||||
|
"preact-render-to-string": "3.6.3",
|
||||||
|
"preact-transition-group": "1.1.1",
|
||||||
|
"prop-types": "15.5.10",
|
||||||
|
"standalone-react-addons-pure-render-mixin": "0.1.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"preact-render-to-string": {
|
||||||
|
"version": "3.6.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-3.6.3.tgz",
|
||||||
|
"integrity": "sha1-SB0NW9rJGS0zR1V0N9XNAKoxIEM=",
|
||||||
|
"requires": {
|
||||||
|
"pretty-format": "3.8.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"preact-transition-group": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/preact-transition-group/-/preact-transition-group-1.1.1.tgz",
|
||||||
|
"integrity": "sha1-8KSTJ+pRXs406ivoZMSn0p5dbhA="
|
||||||
|
},
|
||||||
"prelude-ls": {
|
"prelude-ls": {
|
||||||
"version": "1.1.2",
|
"version": "1.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
|
||||||
|
@ -8780,6 +8818,11 @@
|
||||||
"utila": "0.4.0"
|
"utila": "0.4.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"pretty-format": {
|
||||||
|
"version": "3.8.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-3.8.0.tgz",
|
||||||
|
"integrity": "sha1-v77VbV6ad2ZF9LH/eqGjrE+jw4U="
|
||||||
|
},
|
||||||
"private": {
|
"private": {
|
||||||
"version": "0.1.7",
|
"version": "0.1.7",
|
||||||
"resolved": "https://registry.npmjs.org/private/-/private-0.1.7.tgz",
|
"resolved": "https://registry.npmjs.org/private/-/private-0.1.7.tgz",
|
||||||
|
@ -10272,6 +10315,11 @@
|
||||||
"integrity": "sha1-M6qE8Rd6VUjIk1Uzy/6zQgl19aQ=",
|
"integrity": "sha1-M6qE8Rd6VUjIk1Uzy/6zQgl19aQ=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"standalone-react-addons-pure-render-mixin": {
|
||||||
|
"version": "0.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/standalone-react-addons-pure-render-mixin/-/standalone-react-addons-pure-render-mixin-0.1.1.tgz",
|
||||||
|
"integrity": "sha1-PHQJ9MecQN6axyxhbPZ5qZTzdVE="
|
||||||
|
},
|
||||||
"statuses": {
|
"statuses": {
|
||||||
"version": "1.3.1",
|
"version": "1.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"private": true,
|
"private": true,
|
||||||
"main": "src/index.jsx",
|
"main": "src/index.jsx",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"build": "nwb build-react-app ./src",
|
"build": "nwb build-react-app ./src --preact",
|
||||||
"clean": "nwb clean-app",
|
"clean": "nwb clean-app",
|
||||||
"start": "nwb serve-react-app ./src",
|
"start": "nwb serve-react-app ./src",
|
||||||
"test": "nwb test-react",
|
"test": "nwb test-react",
|
||||||
|
@ -45,6 +45,8 @@
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"moment-timezone": "^0.5.13",
|
"moment-timezone": "^0.5.13",
|
||||||
"normalize-scss": "^7.0.0",
|
"normalize-scss": "^7.0.0",
|
||||||
|
"preact": "^8.2.1",
|
||||||
|
"preact-compat": "^3.17.0",
|
||||||
"prop-types": "^15.5.10",
|
"prop-types": "^15.5.10",
|
||||||
"react": "^15.6.1",
|
"react": "^15.6.1",
|
||||||
"react-dom": "^15.6.1",
|
"react-dom": "^15.6.1",
|
||||||
|
|
|
@ -50,6 +50,9 @@ class App extends React.Component {
|
||||||
}
|
}
|
||||||
|
|
||||||
const { nextUpcomingDate } = this.state;
|
const { nextUpcomingDate } = this.state;
|
||||||
|
if (!nextUpcomingDate) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={style.app}>
|
<div className={style.app}>
|
||||||
|
|
Loading…
Reference in New Issue