diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 00000000..a42cc302 --- /dev/null +++ b/.eslintrc @@ -0,0 +1,30 @@ +{ + "extends": "standard", + "globals": { + "fetch": true, + "IDBKeyRange": true, + "IDBObjectStore": true, + "indexedDB": true, + "requestAnimationFrame": true, + "requestIdleCallback": true, + "location": true, + "localStorage": true, + "IntersectionObserver": true, + "URL": true, + "Event": true, + "history": true, + "performance": true, + "self": true, + "caches": true, + "__routes__": true, + "__shell__": true, + "__assets__": true, + "test": true, + "fixture": true, + "Element": true, + "FormData": true, + "atob": true, + "btoa": true, + "Blob": true + } +} diff --git a/package-lock.json b/package-lock.json index 229ef326..2ea5cf0b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -152,9 +152,9 @@ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" }, "ansi-escapes": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz", + "integrity": "sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ==" }, "ansi-html": { "version": "0.0.7", @@ -1549,6 +1549,11 @@ "supports-color": "2.0.0" } }, + "chardet": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=" + }, "check-types": { "version": "7.3.0", "resolved": "https://registry.npmjs.org/check-types/-/check-types-7.3.0.tgz", @@ -1757,11 +1762,11 @@ "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=" }, "cli-cursor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "requires": { - "restore-cursor": "1.0.1" + "restore-cursor": "2.0.0" } }, "cli-width": { @@ -2769,51 +2774,112 @@ } }, "eslint": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", - "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.18.2.tgz", + "integrity": "sha512-qy4i3wODqKMYfz9LUI8N2qYDkHkoieTbiHpMrYUI/WbjhXJQr7lI4VngixTgaG+yHX+NBCv7nW4hA0ShbvaNKw==", "requires": { + "ajv": "5.5.2", "babel-code-frame": "6.26.0", - "chalk": "1.1.3", + "chalk": "2.3.2", "concat-stream": "1.6.0", - "debug": "2.6.9", + "cross-spawn": "5.1.0", + "debug": "3.1.0", "doctrine": "2.1.0", - "escope": "3.6.0", - "espree": "3.5.3", + "eslint-scope": "3.7.1", + "eslint-visitor-keys": "1.0.0", + "espree": "3.5.4", "esquery": "1.0.0", - "estraverse": "4.2.0", "esutils": "2.0.2", "file-entry-cache": "2.0.0", + "functional-red-black-tree": "1.0.1", "glob": "7.1.2", - "globals": "9.18.0", + "globals": "11.3.0", "ignore": "3.3.7", "imurmurhash": "0.1.4", - "inquirer": "0.12.0", - "is-my-json-valid": "2.17.1", + "inquirer": "3.3.0", "is-resolvable": "1.1.0", "js-yaml": "3.10.0", - "json-stable-stringify": "1.0.1", + "json-stable-stringify-without-jsonify": "1.0.1", "levn": "0.3.0", "lodash": "4.17.4", + "minimatch": "3.0.4", "mkdirp": "0.5.1", "natural-compare": "1.4.0", "optionator": "0.8.2", "path-is-inside": "1.0.2", - "pluralize": "1.2.1", - "progress": "1.1.8", + "pluralize": "7.0.0", + "progress": "2.0.0", "require-uncached": "1.0.3", - "shelljs": "0.7.8", - "strip-bom": "3.0.0", + "semver": "5.4.1", + "strip-ansi": "4.0.0", "strip-json-comments": "2.0.1", - "table": "3.8.3", - "text-table": "0.2.0", - "user-home": "2.0.0" + "table": "4.0.2", + "text-table": "0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", + "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.3.0" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "requires": { + "ms": "2.0.0" + } + }, + "globals": { + "version": "11.3.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.3.0.tgz", + "integrity": "sha512-kkpcKNlmQan9Z5ZmgqKH/SMbSmjxQ7QjyNqfXVc8VJcoBV2UEg+sxQD15GQofGRh2hfpwUb70VC31DR7Rq5Hdw==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" + } + }, + "supports-color": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", + "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", + "requires": { + "has-flag": "3.0.0" + } + } } }, "eslint-config-standard": { - "version": "10.2.1", - "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz", - "integrity": "sha1-wGHk0GbzedwXzVYsZOgZtN1FRZE=" + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-11.0.0.tgz", + "integrity": "sha512-oDdENzpViEe5fwuRCWla7AXQd++/oyIp8zP+iP9jiUPG6NBj3SHgdgtl/kTn00AjeN+1HNvavTKmYbMo+xMOlw==" }, "eslint-config-standard-jsx": { "version": "4.0.2", @@ -2821,12 +2887,11 @@ "integrity": "sha512-F8fRh2WFnTek7dZH9ZaE0PCBwdVGkwVWZmizla/DDNOmg7Tx6B/IlK5+oYpiX29jpu73LszeJj5i1axEZv6VMw==" }, "eslint-import-resolver-node": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.2.3.tgz", - "integrity": "sha1-Wt2BBujJKNssuiMrzZ76hG49oWw=", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz", + "integrity": "sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==", "requires": { "debug": "2.6.9", - "object-assign": "4.1.1", "resolve": "1.5.0" } }, @@ -2866,21 +2931,29 @@ } } }, + "eslint-plugin-html": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-html/-/eslint-plugin-html-4.0.2.tgz", + "integrity": "sha512-CrQd0F8GWdNWnu4PFrYZl+LjUCXNVy2h0uhDMtnf/7VKc9HRcnkXSrlg0BSGfptZPSzmwnnwCaREAa9+fnQhYw==", + "requires": { + "htmlparser2": "3.9.2" + } + }, "eslint-plugin-import": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.2.0.tgz", - "integrity": "sha1-crowb60wXWfEgWNIpGmaQimsi04=", + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.9.0.tgz", + "integrity": "sha1-JgAu+/ylmJtyiKwEdQi9JPIXsWk=", "requires": { "builtin-modules": "1.1.1", "contains-path": "0.1.0", "debug": "2.6.9", "doctrine": "1.5.0", - "eslint-import-resolver-node": "0.2.3", + "eslint-import-resolver-node": "0.3.2", "eslint-module-utils": "2.1.1", "has": "1.0.1", - "lodash.cond": "4.5.2", + "lodash": "4.17.4", "minimatch": "3.0.4", - "pkg-up": "1.0.0" + "read-pkg-up": "2.0.0" }, "dependencies": { "doctrine": { @@ -2895,28 +2968,20 @@ } }, "eslint-plugin-node": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-4.2.3.tgz", - "integrity": "sha512-vIUQPuwbVYdz/CYnlTLsJrRy7iXHQjdEe5wz0XhhdTym3IInM/zZLlPf9nZ2mThsH0QcsieCOWs2vOeCy/22LQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-6.0.1.tgz", + "integrity": "sha512-Q/Cc2sW1OAISDS+Ji6lZS2KV4b7ueA/WydVWd1BECTQwVvfQy5JAi3glhINoKzoMnfnuRgNP+ZWKrGAbp3QDxw==", "requires": { "ignore": "3.3.7", "minimatch": "3.0.4", - "object-assign": "4.1.1", "resolve": "1.5.0", - "semver": "5.3.0" - }, - "dependencies": { - "semver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" - } + "semver": "5.4.1" } }, "eslint-plugin-promise": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz", - "integrity": "sha1-ePu2/+BHIBYnVp6FpsU3OvKmj8o=" + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.7.0.tgz", + "integrity": "sha512-2WO+ZFh7vxUKRfR0cOIMrWgYKdR6S1AlOezw6pC52B6oYpd5WFghN+QHxvrRdZMtbo8h3dfUZ2o1rWb0UPbKtg==" }, "eslint-plugin-react": { "version": "6.10.3", @@ -2955,19 +3020,24 @@ "estraverse": "4.2.0" } }, + "eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==" + }, "espree": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.3.tgz", - "integrity": "sha512-Zy3tAJDORxQZLl2baguiRU1syPERAIg0L+JB2MWorORgTu/CplzvxS9WWA7Xh4+Q+eOQihNs/1o1Xep8cvCxWQ==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", + "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", "requires": { - "acorn": "5.4.1", + "acorn": "5.5.3", "acorn-jsx": "3.0.1" }, "dependencies": { "acorn": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.4.1.tgz", - "integrity": "sha512-XLmq3H/BVvW6/GbxKryGxWORz1ebilSsUDlyC27bXhWGWAZWkGwS6FLHjOlwFXNFoWFQEO/Df4u0YYd0K3BQgQ==" + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz", + "integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ==" } } }, @@ -3219,6 +3289,26 @@ "is-extendable": "0.1.1" } }, + "external-editor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz", + "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==", + "requires": { + "chardet": "0.4.2", + "iconv-lite": "0.4.19", + "tmp": "0.0.33" + }, + "dependencies": { + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "requires": { + "os-tmpdir": "1.0.2" + } + } + } + }, "extglob": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", @@ -3276,12 +3366,11 @@ "integrity": "sha512-gFtSJjMMt9it0OhXz4wJQT46/LFUrJ2Db6U/fLtwClBEMEEjmVPSWSYrbGCyFwy47Cd4ULOpR+HSWXVkUKciaQ==" }, "figures": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "requires": { - "escape-string-regexp": "1.0.5", - "object-assign": "4.1.1" + "escape-string-regexp": "1.0.5" } }, "file-api": { @@ -4418,6 +4507,11 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" + }, "gauge": { "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", @@ -4959,33 +5053,68 @@ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, "inquirer": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", - "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "requires": { - "ansi-escapes": "1.4.0", - "ansi-regex": "2.1.1", - "chalk": "1.1.3", - "cli-cursor": "1.0.2", + "ansi-escapes": "3.0.0", + "chalk": "2.3.2", + "cli-cursor": "2.1.0", "cli-width": "2.2.0", - "figures": "1.7.0", + "external-editor": "2.1.0", + "figures": "2.0.0", "lodash": "4.17.4", - "readline2": "1.0.1", - "run-async": "0.1.0", - "rx-lite": "3.1.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", + "mute-stream": "0.0.7", + "run-async": "2.3.0", + "rx-lite": "4.0.8", + "rx-lite-aggregates": "4.0.8", + "string-width": "2.1.1", + "strip-ansi": "4.0.0", "through": "2.3.8" }, "dependencies": { - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", + "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.3.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" + } + }, + "supports-color": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", + "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", + "requires": { + "has-flag": "3.0.0" } } } @@ -5249,6 +5378,11 @@ "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" + }, "is-property": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", @@ -5381,6 +5515,11 @@ "jsonify": "0.0.0" } }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" + }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", @@ -6064,9 +6203,9 @@ "integrity": "sha1-QCj3d4sXcIpImTCm5SrDvKDaQdA=" }, "mute-stream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", - "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=" + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" }, "nan": { "version": "2.8.0", @@ -6515,9 +6654,12 @@ } }, "onetime": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "requires": { + "mimic-fn": "1.1.0" + } }, "opener": { "version": "1.4.3", @@ -6860,9 +7002,9 @@ } }, "pluralize": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", - "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=" + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==" }, "pngjs": { "version": "3.3.2", @@ -7496,9 +7638,9 @@ "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" }, "progress": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", - "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", + "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=" }, "promise-inflight": { "version": "1.0.1", @@ -7784,6 +7926,13 @@ "code-point-at": "1.1.0", "is-fullwidth-code-point": "1.0.0", "mute-stream": "0.0.5" + }, + "dependencies": { + "mute-stream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz", + "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=" + } } }, "rechoir": { @@ -8033,12 +8182,12 @@ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" }, "restore-cursor": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "requires": { - "exit-hook": "1.1.1", - "onetime": "1.1.0" + "onetime": "2.0.1", + "signal-exit": "3.0.2" } }, "right-align": { @@ -8067,11 +8216,11 @@ } }, "run-async": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", - "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", "requires": { - "once": "1.4.0" + "is-promise": "2.1.0" } }, "run-parallel": { @@ -8088,9 +8237,17 @@ } }, "rx-lite": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", - "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=" + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=" + }, + "rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "requires": { + "rx-lite": "4.0.8" + } }, "safe-buffer": { "version": "5.1.1", @@ -8736,9 +8893,19 @@ "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" }, "slice-ansi": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=" + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "requires": { + "is-fullwidth-code-point": "2.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + } + } }, "snapdragon": { "version": "0.8.1", @@ -9009,6 +9176,265 @@ "eslint-plugin-react": "6.10.3", "eslint-plugin-standard": "3.0.1", "standard-engine": "7.0.0" + }, + "dependencies": { + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "ajv-keywords": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", + "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=" + }, + "ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=" + }, + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "requires": { + "restore-cursor": "1.0.1" + } + }, + "eslint": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz", + "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=", + "requires": { + "babel-code-frame": "6.26.0", + "chalk": "1.1.3", + "concat-stream": "1.6.0", + "debug": "2.6.9", + "doctrine": "2.1.0", + "escope": "3.6.0", + "espree": "3.5.4", + "esquery": "1.0.0", + "estraverse": "4.2.0", + "esutils": "2.0.2", + "file-entry-cache": "2.0.0", + "glob": "7.1.2", + "globals": "9.18.0", + "ignore": "3.3.7", + "imurmurhash": "0.1.4", + "inquirer": "0.12.0", + "is-my-json-valid": "2.17.1", + "is-resolvable": "1.1.0", + "js-yaml": "3.10.0", + "json-stable-stringify": "1.0.1", + "levn": "0.3.0", + "lodash": "4.17.4", + "mkdirp": "0.5.1", + "natural-compare": "1.4.0", + "optionator": "0.8.2", + "path-is-inside": "1.0.2", + "pluralize": "1.2.1", + "progress": "1.1.8", + "require-uncached": "1.0.3", + "shelljs": "0.7.8", + "strip-bom": "3.0.0", + "strip-json-comments": "2.0.1", + "table": "3.8.3", + "text-table": "0.2.0", + "user-home": "2.0.0" + } + }, + "eslint-config-standard": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz", + "integrity": "sha1-wGHk0GbzedwXzVYsZOgZtN1FRZE=" + }, + "eslint-import-resolver-node": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.2.3.tgz", + "integrity": "sha1-Wt2BBujJKNssuiMrzZ76hG49oWw=", + "requires": { + "debug": "2.6.9", + "object-assign": "4.1.1", + "resolve": "1.5.0" + } + }, + "eslint-plugin-import": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.2.0.tgz", + "integrity": "sha1-crowb60wXWfEgWNIpGmaQimsi04=", + "requires": { + "builtin-modules": "1.1.1", + "contains-path": "0.1.0", + "debug": "2.6.9", + "doctrine": "1.5.0", + "eslint-import-resolver-node": "0.2.3", + "eslint-module-utils": "2.1.1", + "has": "1.0.1", + "lodash.cond": "4.5.2", + "minimatch": "3.0.4", + "pkg-up": "1.0.0" + }, + "dependencies": { + "doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "requires": { + "esutils": "2.0.2", + "isarray": "1.0.0" + } + } + } + }, + "eslint-plugin-node": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-4.2.3.tgz", + "integrity": "sha512-vIUQPuwbVYdz/CYnlTLsJrRy7iXHQjdEe5wz0XhhdTym3IInM/zZLlPf9nZ2mThsH0QcsieCOWs2vOeCy/22LQ==", + "requires": { + "ignore": "3.3.7", + "minimatch": "3.0.4", + "object-assign": "4.1.1", + "resolve": "1.5.0", + "semver": "5.3.0" + } + }, + "eslint-plugin-promise": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz", + "integrity": "sha1-ePu2/+BHIBYnVp6FpsU3OvKmj8o=" + }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + } + }, + "inquirer": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz", + "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=", + "requires": { + "ansi-escapes": "1.4.0", + "ansi-regex": "2.1.1", + "chalk": "1.1.3", + "cli-cursor": "1.0.2", + "cli-width": "2.2.0", + "figures": "1.7.0", + "lodash": "4.17.4", + "readline2": "1.0.1", + "run-async": "0.1.0", + "rx-lite": "3.1.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "through": "2.3.8" + } + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" + }, + "pluralize": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz", + "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=" + }, + "progress": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz", + "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=" + }, + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "requires": { + "exit-hook": "1.1.1", + "onetime": "1.1.0" + } + }, + "run-async": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz", + "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=", + "requires": { + "once": "1.4.0" + } + }, + "rx-lite": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz", + "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=" + }, + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" + }, + "slice-ansi": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=" + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "table": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", + "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "requires": { + "ajv": "4.11.8", + "ajv-keywords": "1.5.1", + "chalk": "1.1.3", + "lodash": "4.17.4", + "slice-ansi": "0.0.4", + "string-width": "2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "3.0.0" + } + } + } + } } }, "standard-engine": { @@ -9352,31 +9778,48 @@ } }, "table": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz", - "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", + "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", "requires": { - "ajv": "4.11.8", - "ajv-keywords": "1.5.1", - "chalk": "1.1.3", + "ajv": "5.5.2", + "ajv-keywords": "2.1.1", + "chalk": "2.3.2", "lodash": "4.17.4", - "slice-ansi": "0.0.4", + "slice-ansi": "1.0.0", "string-width": "2.1.1" }, "dependencies": { - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" + "color-convert": "1.9.1" } }, - "ajv-keywords": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz", - "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=" + "chalk": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz", + "integrity": "sha512-ZM4j2/ld/YZDc3Ma8PgN7gyAk+kHMMMyzLNryCPGhWrsfAuDVeuid5bpRFTDgMH9JBK2lA4dyyAkkZYF/WcqDQ==", + "requires": { + "ansi-styles": "3.2.1", + "escape-string-regexp": "1.0.5", + "supports-color": "5.3.0" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + }, + "supports-color": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.3.0.tgz", + "integrity": "sha512-0aP01LLIskjKs3lq52EC0aGBAJhLq7B2Rd8HC/DR/PtNNpcLilNmHC12O+hu0usQpo7wtHNRqtrhBwtDb0+dNg==", + "requires": { + "has-flag": "3.0.0" + } } } }, diff --git a/package.json b/package.json index cfb73f29..1f1b349e 100644 --- a/package.json +++ b/package.json @@ -33,6 +33,13 @@ "compression": "^1.7.1", "cross-env": "^5.1.3", "css-loader": "^0.28.7", + "eslint": "^4.18.2", + "eslint-config-standard": "^11.0.0", + "eslint-plugin-html": "^4.0.2", + "eslint-plugin-import": "^2.9.0", + "eslint-plugin-node": "^6.0.1", + "eslint-plugin-promise": "^3.7.0", + "eslint-plugin-standard": "^3.0.1", "express": "^4.16.2", "extract-text-webpack-plugin": "^3.0.2", "fg-loadcss": "^2.0.1", diff --git a/routes/accounts/[accountId].html b/routes/accounts/[accountId].html index 51d8d632..0c3311f4 100644 --- a/routes/accounts/[accountId].html +++ b/routes/accounts/[accountId].html @@ -4,15 +4,15 @@ {{#if $isUserLoggedIn}} - - {{#if $currentAccountProfile}} - - {{/if}} - - + + {{#if $currentAccountProfile}} + + {{/if}} + + {{else}} @@ -24,41 +24,41 @@ {{/if}} \ No newline at end of file diff --git a/routes/blocked.html b/routes/blocked.html index c324799c..ceec01de 100644 --- a/routes/blocked.html +++ b/routes/blocked.html @@ -3,26 +3,26 @@ - - + + \ No newline at end of file diff --git a/routes/community/_components/PageList.html b/routes/community/_components/PageList.html index 874444e4..fd147935 100644 --- a/routes/community/_components/PageList.html +++ b/routes/community/_components/PageList.html @@ -13,6 +13,7 @@ .page-list-wrapper { margin: 20px 20px; } + ul.page-list { list-style: none; width: 100%; @@ -20,6 +21,7 @@ margin: 0 auto; box-sizing: border-box; } + @media (max-width: 767px) { .page-list-wrapper { margin: 20px 0; diff --git a/routes/community/_components/PageListItem.html b/routes/community/_components/PageListItem.html index d5663676..70f203bf 100644 --- a/routes/community/_components/PageListItem.html +++ b/routes/community/_components/PageListItem.html @@ -1,17 +1,17 @@
  • - + {{label}} {{#if pinnable}} - + {{/if}}
  • @@ -22,6 +22,7 @@ display: flex; flex-direction: column; } + .page-list-item a { padding: 20px 40px; background: var(--settings-list-item-bg); @@ -29,17 +30,21 @@ grid-template-columns: min-content 1fr min-content; align-items: center; } + .page-list-item a, .page-list-item a:visited { color: var(--body-text-color); } + .page-list-item a:hover { text-decoration: none; background: var(--settings-list-item-bg-hover); color: var(--body-text-color); } + .page-list-item a:active { background: var(--settings-list-item-bg-active); } + .page-list-item svg { width: 24px; height: 24px; @@ -47,6 +52,7 @@ margin-right: 20px; fill: var(--body-text-color); } + .page-list-item span { white-space: nowrap; overflow: hidden; @@ -57,6 +63,7 @@ .page-list-item a { padding: 20px 10px; } + .page-list-item svg { margin-right: 10px; } @@ -64,24 +71,24 @@ \ No newline at end of file diff --git a/routes/community/index.html b/routes/community/index.html index 0af34812..2f976131 100644 --- a/routes/community/index.html +++ b/routes/community/index.html @@ -30,19 +30,19 @@ {{#if $lists.length}} -

    - Lists -

    +

    + Lists +

    - - {{#each $lists as list}} - - {{/each}} - + + {{#each $lists as list}} + + {{/each}} + {{/if}} @@ -80,6 +80,7 @@ .community-page { margin: 20px; } + @media (max-width: 767px) { .community-page { margin: 20px 10px; @@ -87,25 +88,25 @@ } \ No newline at end of file diff --git a/routes/favorites.html b/routes/favorites.html index 15430260..1dedf233 100644 --- a/routes/favorites.html +++ b/routes/favorites.html @@ -5,9 +5,9 @@ {{#if $isUserLoggedIn}} {{#if $pinnedPage !== '/favorites'}} - + {{/if}} - + {{else}} @@ -20,21 +20,21 @@ \ No newline at end of file diff --git a/routes/federated.html b/routes/federated.html index 4b464c71..5fff7b53 100644 --- a/routes/federated.html +++ b/routes/federated.html @@ -20,21 +20,21 @@ \ No newline at end of file diff --git a/routes/index.html b/routes/index.html index 3e9a6a36..c73e9387 100644 --- a/routes/index.html +++ b/routes/index.html @@ -15,21 +15,21 @@ \ No newline at end of file diff --git a/routes/lists/[listId].html b/routes/lists/[listId].html index 60f4e499..34467014 100644 --- a/routes/lists/[listId].html +++ b/routes/lists/[listId].html @@ -5,9 +5,9 @@ {{#if $isUserLoggedIn}} {{#if $pinnedPage !== `/lists/${params.listId}`}} - + {{/if}} - + {{else}} @@ -19,25 +19,25 @@ {{/if}} \ No newline at end of file diff --git a/routes/local.html b/routes/local.html index 685b766c..3fb2e5f9 100644 --- a/routes/local.html +++ b/routes/local.html @@ -20,21 +20,21 @@ \ No newline at end of file diff --git a/routes/muted.html b/routes/muted.html index 2c2b9d4f..e1682133 100644 --- a/routes/muted.html +++ b/routes/muted.html @@ -3,26 +3,26 @@ - - + + \ No newline at end of file diff --git a/routes/notifications.html b/routes/notifications.html index c7cd9c10..f88eef7e 100644 --- a/routes/notifications.html +++ b/routes/notifications.html @@ -1,10 +1,10 @@ <:Head> - Pinafore – Notifications + Pinafore – Notifications {{#if $isUserLoggedIn}} - + {{else}} @@ -17,19 +17,19 @@ \ No newline at end of file diff --git a/routes/pinned.html b/routes/pinned.html index 60239eff..54e46df2 100644 --- a/routes/pinned.html +++ b/routes/pinned.html @@ -3,14 +3,14 @@ - +
    {{#if loading}} - + {{elseif statuses && statuses.length}}
      {{#each statuses as status, index}} - + {{/each}}
    {{/if}} @@ -22,12 +22,14 @@ padding: 20px 20px; position: relative; } + .pinned-toots-results { list-style: none; box-sizing: border-box; border: 1px solid var(--main-border); border-radius: 2px; } + @media (max-width: 767px) { .pinned-toots-page { padding: 20px 10px; @@ -35,41 +37,41 @@ } \ No newline at end of file diff --git a/routes/search.html b/routes/search.html index d3a4830d..3266141a 100644 --- a/routes/search.html +++ b/routes/search.html @@ -30,19 +30,19 @@ } \ No newline at end of file diff --git a/routes/settings/_components/SettingsLayout.html b/routes/settings/_components/SettingsLayout.html index e5cf55f6..f413cda3 100644 --- a/routes/settings/_components/SettingsLayout.html +++ b/routes/settings/_components/SettingsLayout.html @@ -9,12 +9,15 @@ .settings { margin: 20px; } + :global(.settings .free-text h1) { margin-bottom: 30px; } + :global(.settings .free-text h2) { margin: 20px 0 10px; } + @media (max-width: 767px) { .settings { margin: 20px 10px; @@ -22,13 +25,13 @@ } \ No newline at end of file diff --git a/routes/settings/_components/SettingsList.html b/routes/settings/_components/SettingsList.html index 062c01d1..ad9aa1c1 100644 --- a/routes/settings/_components/SettingsList.html +++ b/routes/settings/_components/SettingsList.html @@ -13,6 +13,7 @@ .settings-list-wrapper { margin: 20px 20px; } + ul.settings-list { list-style: none; width: 100%; @@ -20,6 +21,7 @@ margin: 0 auto; box-sizing: border-box; } + @media (max-width: 767px) { .settings-list-wrapper { margin: 20px 0; diff --git a/routes/settings/_components/SettingsListItem.html b/routes/settings/_components/SettingsListItem.html index 02fc3129..2fc27eea 100644 --- a/routes/settings/_components/SettingsListItem.html +++ b/routes/settings/_components/SettingsListItem.html @@ -2,7 +2,7 @@ {{#if icon}} - + {{/if}} {{#if ariaLabel}} @@ -23,22 +23,27 @@ display: flex; flex-direction: column; } + .settings-list-item a { display: flex; padding: 20px 40px; background: var(--settings-list-item-bg); } + .settings-list-item a, .settings-list-item a:visited { color: var(--settings-list-item-text); } + .settings-list-item a:hover { text-decoration: none; background: var(--settings-list-item-bg-hover); color: var(--settings-list-item-text-hover); } + .settings-list-item a:active { background: var(--settings-list-item-bg-active); } + .settings-list-item svg { width: 24px; height: 24px; @@ -46,9 +51,11 @@ margin-right: 20px; fill: var(--svg-fill); } + .settings-list-item .offset-for-icon { margin-left: 44px; } + .settings-list-item span { white-space: nowrap; overflow: hidden; @@ -59,9 +66,11 @@ .settings-list-item a { padding: 20px 10px; } + .settings-list-item svg { margin-right: 10px; } + .settings-list-item .offset-for-icon { margin-left: 34px; } diff --git a/routes/settings/_components/SettingsNav.html b/routes/settings/_components/SettingsNav.html index 6fbb0af0..3345a9fb 100644 --- a/routes/settings/_components/SettingsNav.html +++ b/routes/settings/_components/SettingsNav.html @@ -2,11 +2,11 @@
      {{#each navItems as navItem}}
    • - +
    • {{/each}}
    • - +
    @@ -38,37 +38,37 @@ \ No newline at end of file diff --git a/routes/settings/_components/SettingsNavItem.html b/routes/settings/_components/SettingsNavItem.html index bf2886c4..d802680d 100644 --- a/routes/settings/_components/SettingsNavItem.html +++ b/routes/settings/_components/SettingsNavItem.html @@ -1,4 +1,5 @@ -
    + {{label}} \ No newline at end of file diff --git a/routes/settings/about.html b/routes/settings/about.html index 8790444b..656e62b7 100644 --- a/routes/settings/about.html +++ b/routes/settings/about.html @@ -7,27 +7,39 @@

    About Pinafore

    - Pinafore is free and open-source software - created by Nolan Lawson and distributed under the - GNU Affero General Public License. + Pinafore is + free and open-source software + created by + Nolan Lawson + and distributed under the + GNU Affero General Public + License + + .

    -

    Icons provided by Font Awesome.

    +

    Icons provided by + Font Awesome + . +

    -

    Logo thanks to "sailboat" by Gregor Cresnar from the Noun Project.

    +

    Logo thanks to "sailboat" by Gregor Cresnar from + the Noun Project + . +

    \ No newline at end of file diff --git a/routes/settings/general.html b/routes/settings/general.html index 63c36722..86257e92 100644 --- a/routes/settings/general.html +++ b/routes/settings/general.html @@ -31,20 +31,21 @@ padding: 20px; line-height: 2em; } + .setting-group { padding: 5px 0; } \ No newline at end of file diff --git a/routes/settings/index.html b/routes/settings/index.html index 50ade4d7..c392fa1d 100644 --- a/routes/settings/index.html +++ b/routes/settings/index.html @@ -15,17 +15,17 @@ \ No newline at end of file diff --git a/routes/settings/instances/[instanceName].html b/routes/settings/instances/[instanceName].html index 3d455479..6d48e3d5 100644 --- a/routes/settings/instances/[instanceName].html +++ b/routes/settings/instances/[instanceName].html @@ -7,36 +7,36 @@

    {{params.instanceName}}

    {{#if verifyCredentials}} -

    Logged in as:

    -
    - - - {{'@' + verifyCredentials.acct}} - - {{verifyCredentials.display_name || verifyCredentials.acct}} +

    Logged in as:

    +
    + + + {{'@' + verifyCredentials.acct}} + + {{verifyCredentials.display_name || verifyCredentials.acct}} +
    +

    Theme:

    +
    + {{#each themes as theme}} +
    + +
    -

    Theme:

    - - {{#each themes as theme}} -
    - - -
    - {{/each}} -
    + {{/each}} + -
    - {{#if $loggedInInstancesInOrder.length > 1 && $currentInstance !== params.instanceName}} - - {{/if}} - -
    +
    + {{#if $loggedInInstancesInOrder.length > 1 && $currentInstance !== params.instanceName}} + + {{/if}} + +
    {{/if}} @@ -49,22 +49,24 @@ display: grid; align-items: center; font-size: 1.3em; - grid-template-areas: - "avatar handle" - "avatar display-name"; + grid-template-areas: "avatar handle" "avatar display-name"; grid-template-columns: min-content 1fr; grid-column-gap: 20px; grid-row-gap: 10px; } + :global(.acct-avatar) { grid-area: avatar; } + :global(.acct-handle) { grid-area: handle; } + .acct-display-name { grid-area: display-name; } + .theme-chooser { background: var(--form-bg); border: 1px solid var(--main-border); @@ -73,23 +75,28 @@ padding: 20px; line-height: 2em; } + .theme-group { display: flex; align-items: center; } + .theme-chooser label { margin: 2px 10px 0; } + .instance-actions { width: 100%; display: flex; justify-content: right; margin: 20px 0; } + .instance-actions button { margin: 0 5px; flex-basis: 100%; } + .instance-name-h1 { white-space: nowrap; overflow: hidden; @@ -97,63 +104,63 @@ } \ No newline at end of file diff --git a/routes/settings/instances/add.html b/routes/settings/instances/add.html index d6b1b122..19d12349 100644 --- a/routes/settings/instances/add.html +++ b/routes/settings/instances/add.html @@ -37,7 +37,9 @@ {{#if !$isUserLoggedIn}} -

    Don't have an instance? Join Mastodon!

    +

    Don't have an instance? + Join Mastodon! +

    {{/if}} @@ -50,6 +52,7 @@ margin: 5px; background-color: var(--main-bg); } + input.new-instance-input { min-width: 60%; max-width: 100%; @@ -69,30 +72,30 @@ } \ No newline at end of file diff --git a/routes/settings/instances/index.html b/routes/settings/instances/index.html index 7d5d21be..94ca089b 100644 --- a/routes/settings/instances/index.html +++ b/routes/settings/instances/index.html @@ -10,11 +10,11 @@

    Instances you've logged in to:

    {{#each $loggedInInstancesAsList as instance}} - + {{/each}}

    Add another instance

    @@ -25,19 +25,19 @@ \ No newline at end of file diff --git a/routes/statuses/[statusId]/favorites.html b/routes/statuses/[statusId]/favorites.html index 8bf0df8c..badb6257 100644 --- a/routes/statuses/[statusId]/favorites.html +++ b/routes/statuses/[statusId]/favorites.html @@ -3,26 +3,26 @@ - - + + \ No newline at end of file diff --git a/routes/statuses/[statusId]/index.html b/routes/statuses/[statusId]/index.html index 04916ed7..854b3cce 100644 --- a/routes/statuses/[statusId]/index.html +++ b/routes/statuses/[statusId]/index.html @@ -2,10 +2,10 @@ Pinafore – Status - + {{#if $isUserLoggedIn}} - + {{else}} @@ -17,21 +17,21 @@ {{/if}} \ No newline at end of file diff --git a/routes/statuses/[statusId]/reblogs.html b/routes/statuses/[statusId]/reblogs.html index 4a8b5890..c3d4df21 100644 --- a/routes/statuses/[statusId]/reblogs.html +++ b/routes/statuses/[statusId]/reblogs.html @@ -3,26 +3,26 @@ - - + + \ No newline at end of file diff --git a/routes/statuses/[statusId]/reply.html b/routes/statuses/[statusId]/reply.html index ba4302c8..3cdcb9ea 100644 --- a/routes/statuses/[statusId]/reply.html +++ b/routes/statuses/[statusId]/reply.html @@ -2,19 +2,19 @@ Pinafore – Reply - +
    {{#if status}} - - + + {{else}} - + {{/if}}
    @@ -26,28 +26,28 @@ } \ No newline at end of file diff --git a/routes/tags/[tagName].html b/routes/tags/[tagName].html index ba3c03fa..1a5862b9 100644 --- a/routes/tags/[tagName].html +++ b/routes/tags/[tagName].html @@ -5,7 +5,7 @@ {{#if $isUserLoggedIn}} - + {{else}} @@ -17,21 +17,21 @@ {{/if}} \ No newline at end of file