diff --git a/functions/index.js b/functions/index.js
index 38539a0b8..85a00691d 100644
--- a/functions/index.js
+++ b/functions/index.js
@@ -963,7 +963,7 @@ async function getUpdatedLbMemory(userdata, mode, mode2, globallb, dailylb) {
lbmemory = {};
}
- if (lbmemory[mode + mode2] === undefined) {
+ if (lbmemory[mode + mode2] == undefined) {
lbmemory[mode + mode2] = {
global: null,
daily: null,
diff --git a/functions/package-lock.json b/functions/package-lock.json
index 0e34675d7..cf964f140 100644
--- a/functions/package-lock.json
+++ b/functions/package-lock.json
@@ -339,6 +339,11 @@
"resolved": "https://registry.npmjs.org/@types/mime/-/mime-2.0.3.tgz",
"integrity": "sha512-Jus9s4CDbqwocc5pOAnh8ShfrnMcPHuJYzVcSUU7lrh8Ni5HuIqX3oilL86p3dlTrk0LzHRCgA/GQ7uNCw6l2Q=="
},
+ "@types/minimatch": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
+ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA=="
+ },
"@types/node": {
"version": "8.10.66",
"resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.66.tgz",
@@ -444,16 +449,25 @@
"sprintf-js": "~1.0.2"
}
},
+ "array-differ": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
+ "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg=="
+ },
"array-flatten": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
"integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
},
+ "array-union": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
+ "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw=="
+ },
"arrify": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
- "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==",
- "optional": true
+ "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug=="
},
"astral-regex": {
"version": "1.0.0",
@@ -464,8 +478,7 @@
"balanced-match": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
- "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
- "dev": true
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
},
"base64-js": {
"version": "1.5.1",
@@ -515,7 +528,6 @@
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -653,8 +665,7 @@
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
- "dev": true
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
"configstore": {
"version": "5.0.1",
@@ -838,7 +849,6 @@
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
"integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
- "optional": true,
"requires": {
"once": "^1.4.0"
}
@@ -1009,6 +1019,68 @@
"integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==",
"optional": true
},
+ "execa": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz",
+ "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
+ "requires": {
+ "cross-spawn": "^7.0.0",
+ "get-stream": "^5.0.0",
+ "human-signals": "^1.1.1",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.0",
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2",
+ "strip-final-newline": "^2.0.0"
+ },
+ "dependencies": {
+ "cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "requires": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ }
+ },
+ "get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+ "requires": {
+ "pump": "^3.0.0"
+ }
+ },
+ "path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
+ },
+ "shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "requires": {
+ "shebang-regex": "^3.0.0"
+ }
+ },
+ "shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="
+ },
+ "which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ }
+ }
+ },
"express": {
"version": "4.17.1",
"resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz",
@@ -1165,7 +1237,6 @@
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
"integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "optional": true,
"requires": {
"locate-path": "^5.0.0",
"path-exists": "^4.0.0"
@@ -1456,6 +1527,11 @@
"debug": "4"
}
},
+ "human-signals": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
+ "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw=="
+ },
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
@@ -1558,8 +1634,7 @@
"is-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
- "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
- "optional": true
+ "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw=="
},
"is-stream-ended": {
"version": "0.1.4",
@@ -1576,8 +1651,7 @@
"isexe": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
- "dev": true
+ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA="
},
"js-tokens": {
"version": "4.0.0",
@@ -1694,7 +1768,6 @@
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
"integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "optional": true,
"requires": {
"p-locate": "^4.1.0"
}
@@ -1779,6 +1852,11 @@
"resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
"integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
},
+ "merge-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w=="
+ },
"methods": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
@@ -1814,14 +1892,12 @@
"mimic-fn": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
- "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
- "optional": true
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
},
"minimatch": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -1841,11 +1917,28 @@
"minimist": "^1.2.5"
}
},
+ "mri": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/mri/-/mri-1.1.6.tgz",
+ "integrity": "sha512-oi1b3MfbyGa7FJMP9GmLTttni5JoICpYBRlq+x5V16fZbLsnL9N3wFqqIm/nIG43FjUFkFh9Epzp/kzUGUnJxQ=="
+ },
"ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
},
+ "multimatch": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-4.0.0.tgz",
+ "integrity": "sha512-lDmx79y1z6i7RNx0ZGCPq1bzJ6ZoDDKbvh7jxr9SJcWLkShMzXrHbYVpTdnhNM5MXpDUxCQ4DgqVttVXlBgiBQ==",
+ "requires": {
+ "@types/minimatch": "^3.0.3",
+ "array-differ": "^3.0.0",
+ "array-union": "^2.1.0",
+ "arrify": "^2.0.1",
+ "minimatch": "^3.0.4"
+ }
+ },
"mute-stream": {
"version": "0.0.7",
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
@@ -1880,6 +1973,21 @@
"resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz",
"integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA=="
},
+ "npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
+ "requires": {
+ "path-key": "^3.0.0"
+ },
+ "dependencies": {
+ "path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
+ }
+ }
+ },
"object-assign": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
@@ -1905,7 +2013,6 @@
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
"integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
- "optional": true,
"requires": {
"mimic-fn": "^2.1.0"
}
@@ -1934,7 +2041,6 @@
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
"integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "optional": true,
"requires": {
"p-try": "^2.0.0"
}
@@ -1943,7 +2049,6 @@
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
"integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "optional": true,
"requires": {
"p-limit": "^2.2.0"
}
@@ -1951,8 +2056,7 @@
"p-try": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
- "optional": true
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ=="
},
"parent-module": {
"version": "1.0.1",
@@ -1971,8 +2075,7 @@
"path-exists": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "optional": true
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w=="
},
"path-is-absolute": {
"version": "1.0.1",
@@ -2003,6 +2106,69 @@
"integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
"dev": true
},
+ "pretty-quick": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.0.tgz",
+ "integrity": "sha512-DtxIxksaUWCgPFN7E1ZZk4+Aav3CCuRdhrDSFZENb404sYMtuo9Zka823F+Mgeyt8Zt3bUiCjFzzWYE9LYqkmQ==",
+ "requires": {
+ "chalk": "^3.0.0",
+ "execa": "^4.0.0",
+ "find-up": "^4.1.0",
+ "ignore": "^5.1.4",
+ "mri": "^1.1.5",
+ "multimatch": "^4.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
+ },
+ "ignore": {
+ "version": "5.1.8",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz",
+ "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw=="
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
+ }
+ },
"progress": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
@@ -2051,7 +2217,6 @@
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
"integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
- "optional": true,
"requires": {
"end-of-stream": "^1.1.0",
"once": "^1.3.1"
@@ -2371,6 +2536,11 @@
"ansi-regex": "^3.0.0"
}
},
+ "strip-final-newline": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA=="
+ },
"strip-json-comments": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
diff --git a/functions/package.json b/functions/package.json
index 0028b749a..e3d176138 100644
--- a/functions/package.json
+++ b/functions/package.json
@@ -14,7 +14,8 @@
},
"dependencies": {
"firebase-admin": "^9.4.1",
- "firebase-functions": "^3.11.0"
+ "firebase-functions": "^3.11.0",
+ "pretty-quick": "^3.1.0"
},
"devDependencies": {
"eslint": "^5.12.0",
diff --git a/src/js/account.js b/src/js/account.js
index c646a1ff9..efe2493ca 100644
--- a/src/js/account.js
+++ b/src/js/account.js
@@ -168,6 +168,7 @@ function signUp() {
$(".pageLogin .preloader").addClass("hidden");
});
} else {
+ $(".pageLogin .preloader").addClass("hidden");
Notifications.add(
"Something went wrong when checking name: " + d.data.message,
-1
diff --git a/src/js/db.js b/src/js/db.js
index 37be3d0ef..2f28d30a8 100644
--- a/src/js/db.js
+++ b/src/js/db.js
@@ -84,9 +84,14 @@ export async function db_getUserSnapshot() {
started: data.startedTests,
completed: data.completedTests,
};
- if (data.lbMemory !== undefined) {
- snap.lbMemory = data.lbMemory;
- }
+ try {
+ if (data.lbMemory.time15 !== undefined) {
+ snap.lbMemory.time15 = data.lbMemory.time15;
+ }
+ if (data.lbMemory.time60 !== undefined) {
+ snap.lbMemory.time60 = data.lbMemory.time60;
+ }
+ } catch {}
})
.catch((e) => {
throw e;
diff --git a/src/js/script.js b/src/js/script.js
index d75467280..17afbc2a4 100644
--- a/src/js/script.js
+++ b/src/js/script.js
@@ -2451,9 +2451,13 @@ function showResult(difficultyFailed = false) {
//global
let globalLbString = "";
const glb = e.data.globalLeaderboard;
- const glbMemory = db_getSnapshot().lbMemory[
- config.mode + mode2
- ].global;
+ let glbMemory;
+ try {
+ glbMemory = db_getSnapshot().lbMemory[config.mode + mode2]
+ .global;
+ } catch {
+ glbMemory = null;
+ }
let dontShowGlobalDiff =
glbMemory == null || glbMemory === -1 ? true : false;
let globalLbDiff = null;
@@ -2508,9 +2512,13 @@ function showResult(difficultyFailed = false) {
//daily
let dailyLbString = "";
const dlb = e.data.dailyLeaderboard;
- const dlbMemory = db_getSnapshot().lbMemory[
- config.mode + mode2
- ].daily;
+ let dlbMemory;
+ try {
+ dlbMemory = db_getSnapshot().lbMemory[config.mode + mode2]
+ .daily;
+ } catch {
+ dlbMemory = null;
+ }
let dontShowDailyDiff =
dlbMemory == null || dlbMemory === -1 ? true : false;
let dailyLbDiff = null;
diff --git a/static/index.html b/static/index.html
index 619b95acd..c47c4f35d 100644
--- a/static/index.html
+++ b/static/index.html
@@ -1565,7 +1565,7 @@
Lawrence
Gwen
Nici
- Thomas
+ Thomas Pacheco
Gabriel
Sebastian
Nikolai
diff --git a/static/languages/_list.json b/static/languages/_list.json
index b07316353..279d02578 100644
--- a/static/languages/_list.json
+++ b/static/languages/_list.json
@@ -15,6 +15,7 @@
,"russian_10k"
,"portuguese"
,"indonesian"
+ ,"indonesian_1k"
,"german"
,"german_1k"
,"swiss_german"
diff --git a/static/languages/indonesian_1k.json b/static/languages/indonesian_1k.json
new file mode 100644
index 000000000..d24f2746e
--- /dev/null
+++ b/static/languages/indonesian_1k.json
@@ -0,0 +1,1025 @@
+{
+ "name":"indonesian_1k",
+ "leftToRight":true,
+ "words":[
+ "abad",
+ "abadi",
+ "absen",
+ "acak",
+ "ada",
+ "adalah",
+ "adanya",
+ "administrasi",
+ "aduk",
+ "agama",
+ "agraris",
+ "ahli",
+ "air",
+ "akademis",
+ "akal",
+ "akan",
+ "akomodasi",
+ "akses",
+ "aktif",
+ "aktivitas",
+ "aktor",
+ "aku",
+ "alam",
+ "alamat",
+ "alasan",
+ "alat",
+ "aluminium",
+ "anarkis",
+ "ancaman",
+ "Anda",
+ "andalan",
+ "angkatan",
+ "anugerah",
+ "apakah",
+ "arang",
+ "arsitek",
+ "arus",
+ "asap",
+ "asimilasi",
+ "asing",
+ "astronomi",
+ "asuransi",
+ "atap",
+ "atmosfer",
+ "atom",
+ "ayat",
+ "badan",
+ "bagaimana",
+ "bagan",
+ "bagi",
+ "bagian",
+ "bagus",
+ "bahasa",
+ "bahaya",
+ "balik",
+ "bambu",
+ "bangsa",
+ "banjir",
+ "barang",
+ "baris",
+ "baru",
+ "basah",
+ "batal",
+ "batang",
+ "batas",
+ "batu",
+ "beasiswa",
+ "beban",
+ "bebas",
+ "begitu",
+ "bekerja",
+ "benang",
+ "bencana",
+ "bensin",
+ "berani",
+ "berbicara",
+ "berbincang",
+ "berburu",
+ "berdampak",
+ "berdasarkan",
+ "berdaya",
+ "berdoa",
+ "berduka",
+ "berenang",
+ "bergabung",
+ "berharga",
+ "berhasil",
+ "berita",
+ "berjatuhan",
+ "berkas",
+ "berlebihan",
+ "bernyanyi",
+ "bersama",
+ "bersedih",
+ "bersifat",
+ "bersuara",
+ "bertanya",
+ "bertemu",
+ "bertindak",
+ "beruntung",
+ "berusaha",
+ "besi",
+ "bias",
+ "biaya",
+ "bijaksana",
+ "binatang",
+ "bintang",
+ "bising",
+ "blok",
+ "blokir",
+ "bohong",
+ "bonus",
+ "botol",
+ "buah",
+ "buang",
+ "budaya",
+ "bukan",
+ "bukti",
+ "bulan",
+ "bulanan",
+ "bumi",
+ "bunga",
+ "bungkus",
+ "bungsu",
+ "busa",
+ "busuk",
+ "campuran",
+ "cantik",
+ "cari",
+ "cedera",
+ "celana",
+ "cepat",
+ "cerah",
+ "cermin",
+ "cetakan",
+ "ciptaan",
+ "cuaca",
+ "cukup",
+ "curang",
+ "daerah",
+ "dagang",
+ "daging",
+ "dalam",
+ "dan",
+ "dana",
+ "darah",
+ "dari",
+ "data",
+ "datar",
+ "dataran",
+ "debu",
+ "dedaunan",
+ "dehidrasi",
+ "demokrasi",
+ "dengan",
+ "dengar",
+ "depan",
+ "depresi",
+ "derajat",
+ "deras",
+ "deret",
+ "desa",
+ "detail",
+ "dewa",
+ "di",
+ "dia",
+ "diberikan",
+ "diktator",
+ "dilarang",
+ "diploma",
+ "disebut",
+ "diskualifikasi",
+ "distribusi",
+ "dokter",
+ "dorong",
+ "drama",
+ "dukung",
+ "dukungan",
+ "dunia",
+ "efek",
+ "efisiensi",
+ "ekologi",
+ "ekonomi",
+ "eksekutif",
+ "ekspor",
+ "elektronik",
+ "elemen",
+ "eliminasi",
+ "emosi",
+ "empati",
+ "engsel",
+ "enzim",
+ "estimasi",
+ "evolusi",
+ "fakta",
+ "faktor",
+ "farmasi",
+ "fasilitas",
+ "fauna",
+ "filsafat",
+ "filter",
+ "firasat",
+ "fisika",
+ "flora",
+ "folder",
+ "fondasi",
+ "format",
+ "fotosintesis",
+ "frekuensi",
+ "frustasi",
+ "fundamental",
+ "fungsi",
+ "gabung",
+ "gagal",
+ "gambar",
+ "ganda",
+ "gantung",
+ "garis",
+ "gas",
+ "gaya",
+ "gedung",
+ "gelap",
+ "gelar",
+ "gelas",
+ "gelombang",
+ "gempa",
+ "genggam",
+ "gereja",
+ "gizi",
+ "goreng",
+ "grafik",
+ "gudang",
+ "gugur",
+ "gunakan",
+ "hadir",
+ "hak",
+ "hal",
+ "halus",
+ "hamil",
+ "hampa",
+ "hapus",
+ "harapan",
+ "harga",
+ "hari",
+ "harum",
+ "hati",
+ "hektare",
+ "hewan",
+ "hidung",
+ "hidup",
+ "hubungan",
+ "hujan",
+ "hukum",
+ "hukuman",
+ "hutan",
+ "ia",
+ "ikan",
+ "iklan",
+ "iklim",
+ "ilmu",
+ "imajinasi",
+ "imbalan",
+ "imbauan",
+ "impor",
+ "individu",
+ "Indonesia",
+ "industri",
+ "ingatan",
+ "ingin",
+ "ini",
+ "internet",
+ "intimidasi",
+ "investasi",
+ "isi",
+ "istimewa",
+ "istri",
+ "itu",
+ "izin",
+ "jahat",
+ "jahit",
+ "jalan",
+ "jaminan",
+ "jangan",
+ "janji",
+ "jantung",
+ "jari",
+ "jaringan",
+ "jatuh",
+ "jawaban",
+ "jelas",
+ "jendela",
+ "jera",
+ "jurang",
+ "jurnalis",
+ "juta",
+ "kabar",
+ "kaca",
+ "kacau",
+ "kadang",
+ "kadar",
+ "kain",
+ "kakak",
+ "kakek",
+ "kaki",
+ "kaku",
+ "kala",
+ "kalangan",
+ "kalender",
+ "kali",
+ "kamar",
+ "kamu",
+ "kamuflase",
+ "kamus",
+ "kapan",
+ "karat",
+ "karbohidrat",
+ "karena",
+ "karet",
+ "kasar",
+ "kasih",
+ "kasihan",
+ "kategori",
+ "kawah",
+ "kayu",
+ "keadaan",
+ "keadilan",
+ "keamanan",
+ "kearifan",
+ "kebakaran",
+ "kebersamaan",
+ "kebiasaan",
+ "kebudayaan",
+ "kecelakaan",
+ "kecepatan",
+ "kecuali",
+ "kegiatan",
+ "kehabisan",
+ "kehilangan",
+ "kekuatan",
+ "kekurangan",
+ "kelas",
+ "keliling",
+ "kelompok",
+ "keluar",
+ "keluarga",
+ "kemampuan",
+ "kemarau",
+ "kematian",
+ "kembar",
+ "kemungkinan",
+ "kenangan",
+ "kenapa",
+ "kendali",
+ "kendaraan",
+ "kepala",
+ "kepemilikan",
+ "kerabat",
+ "kerajinan",
+ "keram",
+ "kerangka",
+ "keras",
+ "kereta",
+ "kesabaran",
+ "kesal",
+ "kesehatan",
+ "keseimbangan",
+ "keselamatan",
+ "kesenian",
+ "kesulitan",
+ "ketahui",
+ "ketergantungan",
+ "ketertarikan",
+ "ketika",
+ "ketinggian",
+ "ketua",
+ "keturunan",
+ "keuangan",
+ "keyakinan",
+ "khianat",
+ "kimia",
+ "kini",
+ "kisaran",
+ "kita",
+ "kode",
+ "koleksi",
+ "kolom",
+ "koma",
+ "komentar",
+ "kompas",
+ "komputer",
+ "komunikasi",
+ "komunis",
+ "komunitas",
+ "koneksi",
+ "konsep",
+ "konsumsi",
+ "korosi",
+ "kosong",
+ "kota",
+ "kotor",
+ "kredit",
+ "kritik",
+ "ku",
+ "kualitas",
+ "kuantitas",
+ "kuantum",
+ "kuasa",
+ "kuat",
+ "kuil",
+ "kuis",
+ "kulit",
+ "kuman",
+ "kunci",
+ "kupas",
+ "kurang",
+ "kurung",
+ "ladang",
+ "lagi",
+ "lagu",
+ "lahir",
+ "lain",
+ "laju",
+ "laku",
+ "lakukan",
+ "lambat",
+ "lampu",
+ "landai",
+ "langka",
+ "lanjut",
+ "lapisan",
+ "latihan",
+ "laut",
+ "lautan",
+ "layar",
+ "lebar",
+ "lebih",
+ "lelah",
+ "lelaki",
+ "lembab",
+ "lembar",
+ "lembaran",
+ "lembur",
+ "liar",
+ "lihat",
+ "lima",
+ "lingkaran",
+ "lingkungan",
+ "lintas",
+ "listrik",
+ "logika",
+ "logistik",
+ "lokal",
+ "lokasi",
+ "luar",
+ "luas",
+ "lumayan",
+ "lunas",
+ "lurus",
+ "macet",
+ "magister",
+ "mahasiswa",
+ "majalah",
+ "makan",
+ "makanan",
+ "maksimal",
+ "malam",
+ "malu",
+ "mampu",
+ "mana",
+ "manajemen",
+ "manajer",
+ "mandi",
+ "mandiri",
+ "manfaat",
+ "manis",
+ "manusia",
+ "masa",
+ "masuk",
+ "masukan",
+ "masyarakat",
+ "mata",
+ "matahari",
+ "matematika",
+ "mati",
+ "maupun",
+ "media",
+ "medis",
+ "meja",
+ "mekanik",
+ "melaju",
+ "melakukan",
+ "meleleh",
+ "melompat",
+ "memadai",
+ "memanas",
+ "memasak",
+ "memastikan",
+ "membantu",
+ "membesarkan",
+ "membuang",
+ "memenuhi",
+ "memerlukan",
+ "memilih",
+ "memiliki",
+ "meminjamkan",
+ "memori",
+ "memperlakukan",
+ "menabrak",
+ "menandai",
+ "menangis",
+ "menanyakan",
+ "menarik",
+ "menatap",
+ "menciptakan",
+ "mencuci",
+ "mendadak",
+ "mendaki",
+ "mendukung",
+ "meneliti",
+ "menelurusi",
+ "menemui",
+ "menemukan",
+ "menepi",
+ "menetapkan",
+ "mengajar",
+ "mengalir",
+ "mengamati",
+ "mengancam",
+ "mengapa",
+ "mengarang",
+ "mengawasi",
+ "mengemas",
+ "mengemudi",
+ "mengencangkan",
+ "mengerjakan",
+ "mengetik",
+ "menghadirkan",
+ "menghasut",
+ "menghubungkan",
+ "mengikat",
+ "mengotori",
+ "mengubah",
+ "menikah",
+ "menindak",
+ "meninggal",
+ "menipu",
+ "menjadikan",
+ "menjawab",
+ "menjelaskan",
+ "menolak",
+ "menonton",
+ "menteri",
+ "menulis",
+ "menunggu",
+ "menurun",
+ "menurut",
+ "menyadarkan",
+ "menyebar",
+ "menyediakan",
+ "menyembunyikan",
+ "menyentuh",
+ "menyetujui",
+ "merah",
+ "meraih",
+ "merampas",
+ "merasakan",
+ "merdeka",
+ "mereka",
+ "merupakan",
+ "merusak",
+ "mesin",
+ "metal",
+ "meter",
+ "metode",
+ "miliar",
+ "militer",
+ "mimpi",
+ "mingguan",
+ "minimal",
+ "minimalis",
+ "minuman",
+ "minyak",
+ "miring",
+ "mirip",
+ "miskin",
+ "mobil",
+ "mobilitas",
+ "modal",
+ "model",
+ "motif",
+ "mudah",
+ "muka",
+ "mundur",
+ "mungkin",
+ "murid",
+ "musik",
+ "musim",
+ "mutakhir",
+ "mutlak",
+ "naif",
+ "naik",
+ "nama",
+ "nantinya",
+ "napas",
+ "nasional",
+ "naskah",
+ "natural",
+ "negeri",
+ "nelayan",
+ "nilai",
+ "noda",
+ "nomor",
+ "normal",
+ "nostalgia",
+ "nuklir",
+ "obat",
+ "objektif",
+ "oksigen",
+ "olahraga",
+ "online",
+ "opini",
+ "opsional",
+ "orang",
+ "organ",
+ "organisasi",
+ "ornamen",
+ "otomotif",
+ "otot",
+ "pada",
+ "padat",
+ "padi",
+ "pagar",
+ "pahlawan",
+ "pakaian",
+ "paket",
+ "paksaan",
+ "palsu",
+ "paman",
+ "panah",
+ "pandemi",
+ "panen",
+ "pangkat",
+ "papan",
+ "paru-paru",
+ "parut",
+ "pasal",
+ "pasar",
+ "pasir",
+ "paspor",
+ "pasti",
+ "patroli",
+ "pecah",
+ "pecundang",
+ "pedas",
+ "pedoman",
+ "pegal",
+ "pegawai",
+ "pegunungan",
+ "pelabuhan",
+ "pelajaran",
+ "pelanggan",
+ "pelanggaran",
+ "pelindungan",
+ "pelit",
+ "pelukan",
+ "pemahaman",
+ "pemancar",
+ "pembagian",
+ "pembajakan",
+ "pembaruan",
+ "pemberian",
+ "pemenang",
+ "pemerintahan",
+ "pemilik",
+ "pemimpin",
+ "pemirsa",
+ "pencarian",
+ "pencurian",
+ "pendidikan",
+ "penduduk",
+ "penekanan",
+ "penerbangan",
+ "pengadilan",
+ "pengarang",
+ "pengawasan",
+ "pengecualian",
+ "pengerjaan",
+ "penggaris",
+ "penipu",
+ "penonton",
+ "pensil",
+ "penyusutan",
+ "pepohonan",
+ "peradaban",
+ "peralatan",
+ "peralihan",
+ "perang",
+ "perasaan",
+ "perbuatan",
+ "perempuan",
+ "pergantian",
+ "pergi",
+ "perguruan",
+ "perihal",
+ "periode",
+ "peristiwa",
+ "perjalanan",
+ "perjanjian",
+ "perkiraan",
+ "perlanggaran",
+ "perlengkapan",
+ "perlombaan",
+ "permainan",
+ "permanen",
+ "permukaan",
+ "permukiman",
+ "pernah",
+ "pernikahan",
+ "pernyataan",
+ "perpustakaan",
+ "persen",
+ "persetujuan",
+ "persiapan",
+ "pertama",
+ "pertemuan",
+ "pertengahan",
+ "pertunjukan",
+ "perusahaan",
+ "peternakan",
+ "petunjuk",
+ "pihak",
+ "pintu",
+ "pisau",
+ "plastik",
+ "polisi",
+ "politik",
+ "polusi",
+ "potong",
+ "prasangka",
+ "prediksi",
+ "presisi",
+ "primadona",
+ "privasi",
+ "produk",
+ "produksi",
+ "profil",
+ "program",
+ "progres",
+ "promosi",
+ "proposal",
+ "provinsi",
+ "proyek",
+ "pujian",
+ "pulau",
+ "puluhan",
+ "punah",
+ "raja",
+ "rajin",
+ "rakyat",
+ "rambut",
+ "rantai",
+ "rapat",
+ "rapuh",
+ "ras",
+ "rasa",
+ "rata",
+ "rata-rata",
+ "ratusan",
+ "rebus",
+ "reformasi",
+ "regresi",
+ "regulasi",
+ "rem",
+ "remaja",
+ "rempah",
+ "rendah",
+ "rendam",
+ "renggang",
+ "reputasi",
+ "resesi",
+ "residu",
+ "responsif",
+ "restoran",
+ "retak",
+ "revolusi",
+ "roda",
+ "ruang",
+ "rukun",
+ "sabun",
+ "sadar",
+ "saham",
+ "sakit",
+ "saksikan",
+ "salah",
+ "saluran",
+ "sama",
+ "sampai",
+ "samping",
+ "sana",
+ "saran",
+ "sarang",
+ "sarjana",
+ "sastra",
+ "satelit",
+ "satuan",
+ "saudara",
+ "saya",
+ "sebab",
+ "sebagainya",
+ "sebelas",
+ "sebentar",
+ "sebuah",
+ "secara",
+ "segera",
+ "segitiga",
+ "sehat",
+ "sehingga",
+ "sejajar",
+ "sejarah",
+ "sejumlah",
+ "sekitar",
+ "sekolah",
+ "sekretaris",
+ "seksual",
+ "sel",
+ "selalu",
+ "selera",
+ "seluler",
+ "seluruh",
+ "sembarang",
+ "sembunyi",
+ "sembunyikan",
+ "sementara",
+ "semesta",
+ "semester",
+ "seminggu",
+ "semua",
+ "sendi",
+ "sendiri",
+ "seni",
+ "senior",
+ "sentuh",
+ "sepenuhnya",
+ "seperti",
+ "sepupu",
+ "serangga",
+ "serat",
+ "seri",
+ "seribu",
+ "serpihan",
+ "seru",
+ "serupa",
+ "sesaat",
+ "sesegera",
+ "seseorang",
+ "sesuatu",
+ "sesudah",
+ "setara",
+ "setiap",
+ "setuju",
+ "sewajarnya",
+ "siaga",
+ "siapa",
+ "sibuk",
+ "sikap",
+ "silang",
+ "silau",
+ "sinar",
+ "sini",
+ "sinyal",
+ "sirkulasi",
+ "sisi",
+ "sistem",
+ "situasi",
+ "skeptis",
+ "sketsa",
+ "sosial",
+ "spesial",
+ "standar",
+ "stasiun",
+ "status",
+ "stereotip",
+ "stiker",
+ "stoples",
+ "strata",
+ "studi",
+ "suami",
+ "suara",
+ "suatu",
+ "subjektif",
+ "suci",
+ "sudah",
+ "suka",
+ "sukses",
+ "sulit",
+ "sulung",
+ "surat",
+ "swasta",
+ "tahu",
+ "tahun",
+ "tahunan",
+ "takut",
+ "taman",
+ "tanah",
+ "tanaman",
+ "tanda",
+ "tangan",
+ "tanggul",
+ "tanggung",
+ "tangkap",
+ "tanpa",
+ "tante",
+ "tarif",
+ "tarik",
+ "tas",
+ "tatap",
+ "tautan",
+ "tebal",
+ "tegangan",
+ "tekanan",
+ "teknik",
+ "telepon",
+ "tembakan",
+ "tembok",
+ "tempat",
+ "temukan",
+ "tenaga",
+ "tenang",
+ "tengah",
+ "tentang",
+ "tentara",
+ "tepat",
+ "terbaik",
+ "terbang",
+ "terbuka",
+ "terhadap",
+ "terikat",
+ "terima",
+ "terjadi",
+ "terjamin",
+ "terkadang",
+ "termos",
+ "ternyata",
+ "terorisme",
+ "tersendiri",
+ "tertawa",
+ "tertentu",
+ "tertiup",
+ "terus",
+ "teruskan",
+ "tetangga",
+ "tetap",
+ "tetapi",
+ "tetesan",
+ "tiada",
+ "tiba",
+ "tidur",
+ "tindakan",
+ "tinggi",
+ "tingkat",
+ "tipis",
+ "titik",
+ "toleransi",
+ "tragedi",
+ "transisi",
+ "trauma",
+ "triliun",
+ "tugas",
+ "Tuhan",
+ "tujuan",
+ "tujuh",
+ "tulang",
+ "tulis",
+ "tumbuh",
+ "tumbuhan",
+ "tunangan",
+ "tunggal",
+ "tunjangan",
+ "turun",
+ "uang",
+ "uap",
+ "ubah",
+ "ujian",
+ "ujung",
+ "ukuran",
+ "umum",
+ "umur",
+ "undian",
+ "unit",
+ "universitas",
+ "unjuk",
+ "untuk",
+ "upacara",
+ "upaya",
+ "urungkan",
+ "urutan",
+ "urutkan",
+ "utama",
+ "vaksin",
+ "variabel",
+ "ventilasi",
+ "versi",
+ "wabah",
+ "wadah",
+ "wajah",
+ "wajib",
+ "wakil",
+ "waktu",
+ "warisan",
+ "warna",
+ "wisata",
+ "wujud",
+ "yaitu",
+ "yakin",
+ "yakni",
+ "yang",
+ "yayasan",
+ "zaman",
+ "zat"
+ ]
+}
diff --git a/static/languages/swedish.json b/static/languages/swedish.json
index fc7db2439..6c75b485f 100644
--- a/static/languages/swedish.json
+++ b/static/languages/swedish.json
@@ -124,7 +124,6 @@
"fick",
"nån",
"säga",
- "mr",
"år",
"kunde",
"låt",
diff --git a/static/languages/swedish_1k.json b/static/languages/swedish_1k.json
index b040ca3e9..9311f21fe 100644
--- a/static/languages/swedish_1k.json
+++ b/static/languages/swedish_1k.json
@@ -124,7 +124,6 @@
"fick",
"nån",
"säga",
- "mr",
"år",
"kunde",
"låt",
@@ -507,7 +506,6 @@
"vacker",
"försöka",
"kallar",
- "lnte",
"lovar",
"tagit",
"fortsätt",
@@ -659,7 +657,6 @@
"otroligt",
"läget",
"slog",
- "sam",
"mindre",
"kaffe",
"varsågod",
@@ -935,7 +932,6 @@
"sov",
"åtminstone",
"dödat",
- "james",
"sönder",
"svarta",
"försiktigt",
diff --git a/static/quotes/english.json b/static/quotes/english.json
index 3caac4180..23bae632e 100644
--- a/static/quotes/english.json
+++ b/static/quotes/english.json
@@ -1,22 +1,10 @@
{
"language": "english",
"groups": [
- [
- 0,
- 100
- ],
- [
- 101,
- 300
- ],
- [
- 301,
- 600
- ],
- [
- 601,
- 9999
- ]
+ [0, 100],
+ [101, 300],
+ [301, 600],
+ [601, 9999]
],
"quotes": [
{
@@ -30398,7 +30386,7 @@
"id": 5115
},
{
- "text": "The first letters I picked out did not interest me. They were from men I meet once once in a while and for whom I feel no great interest. But all at once an envelop attracted my eyes. It bore my name written in a broad, firm hand; tears filled my eyes. Here was a letter from my dearest friend, the one in whom I used to confide in my youth and who knew my hopes; he arose before me so clearly with his outstretched hand and good-natured smile that a shudder ran through my frame. Yes, the dead come back, for I saw him! Our memory is a world far more perfect that the real universe, for it brings to life those who have gone forever.",
+ "text": "The first letters I picked out did not interest me. They were from men I meet once once in a while and for whom I feel no great interest. But all at once an envelop attracted my eyes. It bore my name written in a broad, firm hand; tears filled my eyes. Here was a letter from my dearest friend, the one in whom I used to confide in my youth and who knew my hopes; he arose before me so clearly with his outstretched hand and good-natured smile that a shudder ran through my frame. Yes, the dead come back, for I saw him! Our memory is a world far more perfect than the real universe, for it brings to life those who have gone forever.",
"source": "Guy De Maupassant, Suicides",
"length": 634,
"id": 5116
@@ -30536,7 +30524,7 @@
"id": 5138
},
{
- "text": "All the world's a stage, And all the men and women merely players.",
+ "text": "All the world's a stage, and all the men and women merely players.",
"source": "William Shakespeare, As You Like It",
"length": 66,
"id": 5139
@@ -31274,4 +31262,4 @@
"id": 5261
}
]
-}
\ No newline at end of file
+}
diff --git a/static/quotes/german.json b/static/quotes/german.json
index 85c99a08f..faa7710c8 100644
--- a/static/quotes/german.json
+++ b/static/quotes/german.json
@@ -20,7 +20,7 @@
],
"quotes": [
{
- "text": "\"Das Internet der Dinge\", sagte Ogarew, \"ist ein Thema, das uns hier ganz besonders beschäftigt. Denn mit dem Web 4.0 kommt das Internet überallhin. Von Autos über TV bis hin zu Kinderspielzeug. Heute schon gibt es fünfzehn Milliarden vernetzte Geräte. 2020 wird es fünfzig Milliarden geben. Da muss alles von vornherein sicher sein. So wie Microsoft das früher gemacht hat, geht es heute nicht mehr. Erst mal auf den Markt bringen und dann nachträglich das Feuer Löschen.\" Er lächelte durch seinen grauen Bart hindurch. \"Gott durfte das noch. Er sah, dass es gut war. Und als es doch nicht gut war, kam die Sintflut. So eine Art Neustart. Aber eine Sintflut kann sich das Internet der Dinge nicht erlauben.\"",
+ "text": "\"Das Internet der Dinge\", sagte Ogarew, \"ist ein Thema, das uns hier ganz besonders beschäftigt. Denn mit dem Web 4.0 kommt das Internet überallhin. Von Autos über TV bis hin zu Kinderspielzeug. Heute schon gibt es fünfzehn Milliarden vernetzte Geräte. 2020 wird es fünfzig Milliarden geben. Da muss alles von vornherein sicher sein. So wie Microsoft das früher gemacht hat, geht es heute nicht mehr. Erst mal auf den Markt bringen und dann nachträglich das Feuer löschen.\" Er lächelte durch seinen grauen Bart hindurch. \"Gott durfte das noch. Er sah, dass es gut war. Und als es doch nicht gut war, kam die Sintflut. So eine Art Neustart. Aber eine Sintflut kann sich das Internet der Dinge nicht erlauben.\"",
"source": "Dark Web: Thriller, Veit Etzold",
"length": 708,
"id": 1
@@ -134,7 +134,7 @@
"id": 19
},
{
- "text": "Die Jugend liebt heutzutage den Luxus. Sie hat schlechte Manieren, verachtet die Autorität, hat keinen Respekt vor älteren Leuten und quasselt, wo sie arbeiten sollte. Die jungen Leute stehen nicht mehr auf wenn ältere das Zimmer betreten. Sie widersprechen ihren Eltern, schwadronieren in der Gesellschaft, verschlingen bei Tische die Süßspeisen, legen die Beine übereinander und tyrannisieren ihr Lehrer.",
+ "text": "Die Jugend liebt heutzutage den Luxus. Sie hat schlechte Manieren, verachtet die Autorität, hat keinen Respekt vor älteren Leuten und quasselt, wo sie arbeiten sollte. Die jungen Leute stehen nicht mehr auf wenn ältere das Zimmer betreten. Sie widersprechen ihren Eltern, schwadronieren in der Gesellschaft, verschlingen bei Tische die Süßspeisen, legen die Beine übereinander und tyrannisieren ihre Lehrer.",
"source": "Sokrates",
"length": 406,
"id": 20
@@ -206,4 +206,4 @@
"id": 31
}
]
-}
\ No newline at end of file
+}
diff --git a/static/themes/80s_after_dark.css b/static/themes/80s_after_dark.css
new file mode 100644
index 000000000..dd700e2a5
--- /dev/null
+++ b/static/themes/80s_after_dark.css
@@ -0,0 +1,12 @@
+:root {
+ --bg-color: #1B1D36;
+ --main-color:#FCA6D1;
+ --caret-color: #99D6EA;
+ --sub-color: #99D6EA;
+ --text-color: #FCA6D1;
+ --error-color: #FFFB85;
+ --error-extra-color: #FFFB85;
+ --colorful-error-color: #FFFB85;
+ --colorful-error-extra-color: #FFFB85;
+ }
+
\ No newline at end of file
diff --git a/static/themes/_list.json b/static/themes/_list.json
index 6b5279964..40c29e058 100644
--- a/static/themes/_list.json
+++ b/static/themes/_list.json
@@ -478,5 +478,10 @@
"name": "stealth",
"bgColor": "#010203",
"textColor": "#383e42"
+ },
+ {
+ "name": "80s_after_dark",
+ "bgColor": "#1B1D36",
+ "textColor": "#FCA6D1"
}
]