try to make standard work with html
This commit is contained in:
parent
d4e48ac6fa
commit
cd7c298149
|
@ -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
|
||||||
|
}
|
||||||
|
}
|
|
@ -152,9 +152,9 @@
|
||||||
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU="
|
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU="
|
||||||
},
|
},
|
||||||
"ansi-escapes": {
|
"ansi-escapes": {
|
||||||
"version": "1.4.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz",
|
||||||
"integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4="
|
"integrity": "sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ=="
|
||||||
},
|
},
|
||||||
"ansi-html": {
|
"ansi-html": {
|
||||||
"version": "0.0.7",
|
"version": "0.0.7",
|
||||||
|
@ -1549,6 +1549,11 @@
|
||||||
"supports-color": "2.0.0"
|
"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": {
|
"check-types": {
|
||||||
"version": "7.3.0",
|
"version": "7.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/check-types/-/check-types-7.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/check-types/-/check-types-7.3.0.tgz",
|
||||||
|
@ -1757,11 +1762,11 @@
|
||||||
"integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE="
|
"integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE="
|
||||||
},
|
},
|
||||||
"cli-cursor": {
|
"cli-cursor": {
|
||||||
"version": "1.0.2",
|
"version": "2.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
|
||||||
"integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=",
|
"integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"restore-cursor": "1.0.1"
|
"restore-cursor": "2.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"cli-width": {
|
"cli-width": {
|
||||||
|
@ -2769,51 +2774,112 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"eslint": {
|
"eslint": {
|
||||||
"version": "3.19.0",
|
"version": "4.18.2",
|
||||||
"resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint/-/eslint-4.18.2.tgz",
|
||||||
"integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=",
|
"integrity": "sha512-qy4i3wODqKMYfz9LUI8N2qYDkHkoieTbiHpMrYUI/WbjhXJQr7lI4VngixTgaG+yHX+NBCv7nW4hA0ShbvaNKw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
|
"ajv": "5.5.2",
|
||||||
"babel-code-frame": "6.26.0",
|
"babel-code-frame": "6.26.0",
|
||||||
"chalk": "1.1.3",
|
"chalk": "2.3.2",
|
||||||
"concat-stream": "1.6.0",
|
"concat-stream": "1.6.0",
|
||||||
"debug": "2.6.9",
|
"cross-spawn": "5.1.0",
|
||||||
|
"debug": "3.1.0",
|
||||||
"doctrine": "2.1.0",
|
"doctrine": "2.1.0",
|
||||||
"escope": "3.6.0",
|
"eslint-scope": "3.7.1",
|
||||||
"espree": "3.5.3",
|
"eslint-visitor-keys": "1.0.0",
|
||||||
|
"espree": "3.5.4",
|
||||||
"esquery": "1.0.0",
|
"esquery": "1.0.0",
|
||||||
"estraverse": "4.2.0",
|
|
||||||
"esutils": "2.0.2",
|
"esutils": "2.0.2",
|
||||||
"file-entry-cache": "2.0.0",
|
"file-entry-cache": "2.0.0",
|
||||||
|
"functional-red-black-tree": "1.0.1",
|
||||||
"glob": "7.1.2",
|
"glob": "7.1.2",
|
||||||
"globals": "9.18.0",
|
"globals": "11.3.0",
|
||||||
"ignore": "3.3.7",
|
"ignore": "3.3.7",
|
||||||
"imurmurhash": "0.1.4",
|
"imurmurhash": "0.1.4",
|
||||||
"inquirer": "0.12.0",
|
"inquirer": "3.3.0",
|
||||||
"is-my-json-valid": "2.17.1",
|
|
||||||
"is-resolvable": "1.1.0",
|
"is-resolvable": "1.1.0",
|
||||||
"js-yaml": "3.10.0",
|
"js-yaml": "3.10.0",
|
||||||
"json-stable-stringify": "1.0.1",
|
"json-stable-stringify-without-jsonify": "1.0.1",
|
||||||
"levn": "0.3.0",
|
"levn": "0.3.0",
|
||||||
"lodash": "4.17.4",
|
"lodash": "4.17.4",
|
||||||
|
"minimatch": "3.0.4",
|
||||||
"mkdirp": "0.5.1",
|
"mkdirp": "0.5.1",
|
||||||
"natural-compare": "1.4.0",
|
"natural-compare": "1.4.0",
|
||||||
"optionator": "0.8.2",
|
"optionator": "0.8.2",
|
||||||
"path-is-inside": "1.0.2",
|
"path-is-inside": "1.0.2",
|
||||||
"pluralize": "1.2.1",
|
"pluralize": "7.0.0",
|
||||||
"progress": "1.1.8",
|
"progress": "2.0.0",
|
||||||
"require-uncached": "1.0.3",
|
"require-uncached": "1.0.3",
|
||||||
"shelljs": "0.7.8",
|
"semver": "5.4.1",
|
||||||
"strip-bom": "3.0.0",
|
"strip-ansi": "4.0.0",
|
||||||
"strip-json-comments": "2.0.1",
|
"strip-json-comments": "2.0.1",
|
||||||
"table": "3.8.3",
|
"table": "4.0.2",
|
||||||
"text-table": "0.2.0",
|
"text-table": "0.2.0"
|
||||||
"user-home": "2.0.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": {
|
"eslint-config-standard": {
|
||||||
"version": "10.2.1",
|
"version": "11.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-config-standard/-/eslint-config-standard-11.0.0.tgz",
|
||||||
"integrity": "sha1-wGHk0GbzedwXzVYsZOgZtN1FRZE="
|
"integrity": "sha512-oDdENzpViEe5fwuRCWla7AXQd++/oyIp8zP+iP9jiUPG6NBj3SHgdgtl/kTn00AjeN+1HNvavTKmYbMo+xMOlw=="
|
||||||
},
|
},
|
||||||
"eslint-config-standard-jsx": {
|
"eslint-config-standard-jsx": {
|
||||||
"version": "4.0.2",
|
"version": "4.0.2",
|
||||||
|
@ -2821,12 +2887,11 @@
|
||||||
"integrity": "sha512-F8fRh2WFnTek7dZH9ZaE0PCBwdVGkwVWZmizla/DDNOmg7Tx6B/IlK5+oYpiX29jpu73LszeJj5i1axEZv6VMw=="
|
"integrity": "sha512-F8fRh2WFnTek7dZH9ZaE0PCBwdVGkwVWZmizla/DDNOmg7Tx6B/IlK5+oYpiX29jpu73LszeJj5i1axEZv6VMw=="
|
||||||
},
|
},
|
||||||
"eslint-import-resolver-node": {
|
"eslint-import-resolver-node": {
|
||||||
"version": "0.2.3",
|
"version": "0.3.2",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.2.3.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz",
|
||||||
"integrity": "sha1-Wt2BBujJKNssuiMrzZ76hG49oWw=",
|
"integrity": "sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"debug": "2.6.9",
|
"debug": "2.6.9",
|
||||||
"object-assign": "4.1.1",
|
|
||||||
"resolve": "1.5.0"
|
"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": {
|
"eslint-plugin-import": {
|
||||||
"version": "2.2.0",
|
"version": "2.9.0",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.9.0.tgz",
|
||||||
"integrity": "sha1-crowb60wXWfEgWNIpGmaQimsi04=",
|
"integrity": "sha1-JgAu+/ylmJtyiKwEdQi9JPIXsWk=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"builtin-modules": "1.1.1",
|
"builtin-modules": "1.1.1",
|
||||||
"contains-path": "0.1.0",
|
"contains-path": "0.1.0",
|
||||||
"debug": "2.6.9",
|
"debug": "2.6.9",
|
||||||
"doctrine": "1.5.0",
|
"doctrine": "1.5.0",
|
||||||
"eslint-import-resolver-node": "0.2.3",
|
"eslint-import-resolver-node": "0.3.2",
|
||||||
"eslint-module-utils": "2.1.1",
|
"eslint-module-utils": "2.1.1",
|
||||||
"has": "1.0.1",
|
"has": "1.0.1",
|
||||||
"lodash.cond": "4.5.2",
|
"lodash": "4.17.4",
|
||||||
"minimatch": "3.0.4",
|
"minimatch": "3.0.4",
|
||||||
"pkg-up": "1.0.0"
|
"read-pkg-up": "2.0.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"doctrine": {
|
"doctrine": {
|
||||||
|
@ -2895,28 +2968,20 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"eslint-plugin-node": {
|
"eslint-plugin-node": {
|
||||||
"version": "4.2.3",
|
"version": "6.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-4.2.3.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-6.0.1.tgz",
|
||||||
"integrity": "sha512-vIUQPuwbVYdz/CYnlTLsJrRy7iXHQjdEe5wz0XhhdTym3IInM/zZLlPf9nZ2mThsH0QcsieCOWs2vOeCy/22LQ==",
|
"integrity": "sha512-Q/Cc2sW1OAISDS+Ji6lZS2KV4b7ueA/WydVWd1BECTQwVvfQy5JAi3glhINoKzoMnfnuRgNP+ZWKrGAbp3QDxw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ignore": "3.3.7",
|
"ignore": "3.3.7",
|
||||||
"minimatch": "3.0.4",
|
"minimatch": "3.0.4",
|
||||||
"object-assign": "4.1.1",
|
|
||||||
"resolve": "1.5.0",
|
"resolve": "1.5.0",
|
||||||
"semver": "5.3.0"
|
"semver": "5.4.1"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"semver": {
|
|
||||||
"version": "5.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
|
|
||||||
"integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8="
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"eslint-plugin-promise": {
|
"eslint-plugin-promise": {
|
||||||
"version": "3.5.0",
|
"version": "3.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-3.7.0.tgz",
|
||||||
"integrity": "sha1-ePu2/+BHIBYnVp6FpsU3OvKmj8o="
|
"integrity": "sha512-2WO+ZFh7vxUKRfR0cOIMrWgYKdR6S1AlOezw6pC52B6oYpd5WFghN+QHxvrRdZMtbo8h3dfUZ2o1rWb0UPbKtg=="
|
||||||
},
|
},
|
||||||
"eslint-plugin-react": {
|
"eslint-plugin-react": {
|
||||||
"version": "6.10.3",
|
"version": "6.10.3",
|
||||||
|
@ -2955,19 +3020,24 @@
|
||||||
"estraverse": "4.2.0"
|
"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": {
|
"espree": {
|
||||||
"version": "3.5.3",
|
"version": "3.5.4",
|
||||||
"resolved": "https://registry.npmjs.org/espree/-/espree-3.5.3.tgz",
|
"resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
|
||||||
"integrity": "sha512-Zy3tAJDORxQZLl2baguiRU1syPERAIg0L+JB2MWorORgTu/CplzvxS9WWA7Xh4+Q+eOQihNs/1o1Xep8cvCxWQ==",
|
"integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"acorn": "5.4.1",
|
"acorn": "5.5.3",
|
||||||
"acorn-jsx": "3.0.1"
|
"acorn-jsx": "3.0.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"acorn": {
|
"acorn": {
|
||||||
"version": "5.4.1",
|
"version": "5.5.3",
|
||||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/acorn/-/acorn-5.5.3.tgz",
|
||||||
"integrity": "sha512-XLmq3H/BVvW6/GbxKryGxWORz1ebilSsUDlyC27bXhWGWAZWkGwS6FLHjOlwFXNFoWFQEO/Df4u0YYd0K3BQgQ=="
|
"integrity": "sha512-jd5MkIUlbbmb07nXH0DT3y7rDVtkzDi4XZOUVWAer8ajmF/DTSSbl5oNFyDOl/OXA33Bl79+ypHhl2pN20VeOQ=="
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -3219,6 +3289,26 @@
|
||||||
"is-extendable": "0.1.1"
|
"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": {
|
"extglob": {
|
||||||
"version": "2.0.4",
|
"version": "2.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
|
||||||
|
@ -3276,12 +3366,11 @@
|
||||||
"integrity": "sha512-gFtSJjMMt9it0OhXz4wJQT46/LFUrJ2Db6U/fLtwClBEMEEjmVPSWSYrbGCyFwy47Cd4ULOpR+HSWXVkUKciaQ=="
|
"integrity": "sha512-gFtSJjMMt9it0OhXz4wJQT46/LFUrJ2Db6U/fLtwClBEMEEjmVPSWSYrbGCyFwy47Cd4ULOpR+HSWXVkUKciaQ=="
|
||||||
},
|
},
|
||||||
"figures": {
|
"figures": {
|
||||||
"version": "1.7.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
|
"resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz",
|
||||||
"integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
|
"integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"escape-string-regexp": "1.0.5",
|
"escape-string-regexp": "1.0.5"
|
||||||
"object-assign": "4.1.1"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"file-api": {
|
"file-api": {
|
||||||
|
@ -4418,6 +4507,11 @@
|
||||||
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
|
||||||
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
|
"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": {
|
"gauge": {
|
||||||
"version": "2.7.4",
|
"version": "2.7.4",
|
||||||
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
|
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
|
||||||
|
@ -4959,33 +5053,68 @@
|
||||||
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
|
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
|
||||||
},
|
},
|
||||||
"inquirer": {
|
"inquirer": {
|
||||||
"version": "0.12.0",
|
"version": "3.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz",
|
"resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz",
|
||||||
"integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=",
|
"integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ansi-escapes": "1.4.0",
|
"ansi-escapes": "3.0.0",
|
||||||
"ansi-regex": "2.1.1",
|
"chalk": "2.3.2",
|
||||||
"chalk": "1.1.3",
|
"cli-cursor": "2.1.0",
|
||||||
"cli-cursor": "1.0.2",
|
|
||||||
"cli-width": "2.2.0",
|
"cli-width": "2.2.0",
|
||||||
"figures": "1.7.0",
|
"external-editor": "2.1.0",
|
||||||
|
"figures": "2.0.0",
|
||||||
"lodash": "4.17.4",
|
"lodash": "4.17.4",
|
||||||
"readline2": "1.0.1",
|
"mute-stream": "0.0.7",
|
||||||
"run-async": "0.1.0",
|
"run-async": "2.3.0",
|
||||||
"rx-lite": "3.1.2",
|
"rx-lite": "4.0.8",
|
||||||
"string-width": "1.0.2",
|
"rx-lite-aggregates": "4.0.8",
|
||||||
"strip-ansi": "3.0.1",
|
"string-width": "2.1.1",
|
||||||
|
"strip-ansi": "4.0.0",
|
||||||
"through": "2.3.8"
|
"through": "2.3.8"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"string-width": {
|
"ansi-regex": {
|
||||||
"version": "1.0.2",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
|
||||||
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
|
"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": {
|
"requires": {
|
||||||
"code-point-at": "1.1.0",
|
"color-convert": "1.9.1"
|
||||||
"is-fullwidth-code-point": "1.0.0",
|
}
|
||||||
"strip-ansi": "3.0.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",
|
"resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz",
|
||||||
"integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU="
|
"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": {
|
"is-property": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
|
||||||
|
@ -5381,6 +5515,11 @@
|
||||||
"jsonify": "0.0.0"
|
"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": {
|
"json-stringify-safe": {
|
||||||
"version": "5.0.1",
|
"version": "5.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
|
||||||
|
@ -6064,9 +6203,9 @@
|
||||||
"integrity": "sha1-QCj3d4sXcIpImTCm5SrDvKDaQdA="
|
"integrity": "sha1-QCj3d4sXcIpImTCm5SrDvKDaQdA="
|
||||||
},
|
},
|
||||||
"mute-stream": {
|
"mute-stream": {
|
||||||
"version": "0.0.5",
|
"version": "0.0.7",
|
||||||
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz",
|
||||||
"integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA="
|
"integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s="
|
||||||
},
|
},
|
||||||
"nan": {
|
"nan": {
|
||||||
"version": "2.8.0",
|
"version": "2.8.0",
|
||||||
|
@ -6515,9 +6654,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"onetime": {
|
"onetime": {
|
||||||
"version": "1.1.0",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
|
||||||
"integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k="
|
"integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
|
||||||
|
"requires": {
|
||||||
|
"mimic-fn": "1.1.0"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"opener": {
|
"opener": {
|
||||||
"version": "1.4.3",
|
"version": "1.4.3",
|
||||||
|
@ -6860,9 +7002,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"pluralize": {
|
"pluralize": {
|
||||||
"version": "1.2.1",
|
"version": "7.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz",
|
||||||
"integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU="
|
"integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow=="
|
||||||
},
|
},
|
||||||
"pngjs": {
|
"pngjs": {
|
||||||
"version": "3.3.2",
|
"version": "3.3.2",
|
||||||
|
@ -7496,9 +7638,9 @@
|
||||||
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
|
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M="
|
||||||
},
|
},
|
||||||
"progress": {
|
"progress": {
|
||||||
"version": "1.1.8",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz",
|
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz",
|
||||||
"integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74="
|
"integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8="
|
||||||
},
|
},
|
||||||
"promise-inflight": {
|
"promise-inflight": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
|
@ -7784,6 +7926,13 @@
|
||||||
"code-point-at": "1.1.0",
|
"code-point-at": "1.1.0",
|
||||||
"is-fullwidth-code-point": "1.0.0",
|
"is-fullwidth-code-point": "1.0.0",
|
||||||
"mute-stream": "0.0.5"
|
"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": {
|
"rechoir": {
|
||||||
|
@ -8033,12 +8182,12 @@
|
||||||
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo="
|
"integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo="
|
||||||
},
|
},
|
||||||
"restore-cursor": {
|
"restore-cursor": {
|
||||||
"version": "1.0.1",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
|
||||||
"integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=",
|
"integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"exit-hook": "1.1.1",
|
"onetime": "2.0.1",
|
||||||
"onetime": "1.1.0"
|
"signal-exit": "3.0.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"right-align": {
|
"right-align": {
|
||||||
|
@ -8067,11 +8216,11 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"run-async": {
|
"run-async": {
|
||||||
"version": "0.1.0",
|
"version": "2.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
|
||||||
"integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=",
|
"integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
|
||||||
"requires": {
|
"requires": {
|
||||||
"once": "1.4.0"
|
"is-promise": "2.1.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"run-parallel": {
|
"run-parallel": {
|
||||||
|
@ -8088,9 +8237,17 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rx-lite": {
|
"rx-lite": {
|
||||||
"version": "3.1.2",
|
"version": "4.0.8",
|
||||||
"resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz",
|
||||||
"integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI="
|
"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": {
|
"safe-buffer": {
|
||||||
"version": "5.1.1",
|
"version": "5.1.1",
|
||||||
|
@ -8736,9 +8893,19 @@
|
||||||
"integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU="
|
"integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU="
|
||||||
},
|
},
|
||||||
"slice-ansi": {
|
"slice-ansi": {
|
||||||
"version": "0.0.4",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz",
|
||||||
"integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU="
|
"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": {
|
"snapdragon": {
|
||||||
"version": "0.8.1",
|
"version": "0.8.1",
|
||||||
|
@ -9009,6 +9176,265 @@
|
||||||
"eslint-plugin-react": "6.10.3",
|
"eslint-plugin-react": "6.10.3",
|
||||||
"eslint-plugin-standard": "3.0.1",
|
"eslint-plugin-standard": "3.0.1",
|
||||||
"standard-engine": "7.0.0"
|
"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": {
|
"standard-engine": {
|
||||||
|
@ -9352,31 +9778,48 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"table": {
|
"table": {
|
||||||
"version": "3.8.3",
|
"version": "4.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/table/-/table-3.8.3.tgz",
|
"resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz",
|
||||||
"integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=",
|
"integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"ajv": "4.11.8",
|
"ajv": "5.5.2",
|
||||||
"ajv-keywords": "1.5.1",
|
"ajv-keywords": "2.1.1",
|
||||||
"chalk": "1.1.3",
|
"chalk": "2.3.2",
|
||||||
"lodash": "4.17.4",
|
"lodash": "4.17.4",
|
||||||
"slice-ansi": "0.0.4",
|
"slice-ansi": "1.0.0",
|
||||||
"string-width": "2.1.1"
|
"string-width": "2.1.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"ajv": {
|
"ansi-styles": {
|
||||||
"version": "4.11.8",
|
"version": "3.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
"integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"co": "4.6.0",
|
"color-convert": "1.9.1"
|
||||||
"json-stable-stringify": "1.0.1"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ajv-keywords": {
|
"chalk": {
|
||||||
"version": "1.5.1",
|
"version": "2.3.2",
|
||||||
"resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz",
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.2.tgz",
|
||||||
"integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw="
|
"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"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -33,6 +33,13 @@
|
||||||
"compression": "^1.7.1",
|
"compression": "^1.7.1",
|
||||||
"cross-env": "^5.1.3",
|
"cross-env": "^5.1.3",
|
||||||
"css-loader": "^0.28.7",
|
"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",
|
"express": "^4.16.2",
|
||||||
"extract-text-webpack-plugin": "^3.0.2",
|
"extract-text-webpack-plugin": "^3.0.2",
|
||||||
"fg-loadcss": "^2.0.1",
|
"fg-loadcss": "^2.0.1",
|
||||||
|
|
|
@ -4,15 +4,15 @@
|
||||||
|
|
||||||
<Layout page='tags'>
|
<Layout page='tags'>
|
||||||
{{#if $isUserLoggedIn}}
|
{{#if $isUserLoggedIn}}
|
||||||
<DynamicPageBanner title="" />
|
<DynamicPageBanner title=""/>
|
||||||
{{#if $currentAccountProfile}}
|
{{#if $currentAccountProfile}}
|
||||||
<AccountProfile profile="{{$currentAccountProfile}}"
|
<AccountProfile profile="{{$currentAccountProfile}}"
|
||||||
relationship="{{$currentAccountRelationship}}"
|
relationship="{{$currentAccountRelationship}}"
|
||||||
verifyCredentials="{{$currentVerifyCredentials}}"
|
verifyCredentials="{{$currentVerifyCredentials}}"
|
||||||
/>
|
/>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<PinnedStatuses accountId="{{params.accountId}}" />
|
<PinnedStatuses accountId="{{params.accountId}}"/>
|
||||||
<LazyTimeline timeline='account/{{params.accountId}}' />
|
<LazyTimeline timeline='account/{{params.accountId}}'/>
|
||||||
{{else}}
|
{{else}}
|
||||||
<HiddenFromSSR>
|
<HiddenFromSSR>
|
||||||
<FreeTextLayout>
|
<FreeTextLayout>
|
||||||
|
@ -24,41 +24,41 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../_components/Layout.html'
|
import Layout from '../_components/Layout.html'
|
||||||
import LazyTimeline from '../_components/timeline/LazyTimeline.html'
|
import LazyTimeline from '../_components/timeline/LazyTimeline.html'
|
||||||
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
||||||
import { store } from '../_store/store.js'
|
import { store } from '../_store/store.js'
|
||||||
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
||||||
import DynamicPageBanner from '../_components/DynamicPageBanner.html'
|
import DynamicPageBanner from '../_components/DynamicPageBanner.html'
|
||||||
import { updateProfileAndRelationship } from '../_actions/accounts'
|
import { updateProfileAndRelationship } from '../_actions/accounts'
|
||||||
import AccountProfile from '../_components/AccountProfile.html'
|
import AccountProfile from '../_components/AccountProfile.html'
|
||||||
import { updateVerifyCredentialsForInstance } from '../_actions/instances'
|
import { updateVerifyCredentialsForInstance } from '../_actions/instances'
|
||||||
import PinnedStatuses from '../_components/timeline/PinnedStatuses.html'
|
import PinnedStatuses from '../_components/timeline/PinnedStatuses.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
oncreate() {
|
oncreate () {
|
||||||
let accountId = this.get('params').accountId
|
let accountId = this.get('params').accountId
|
||||||
let instanceName = this.store.get('currentInstance')
|
let instanceName = this.store.get('currentInstance')
|
||||||
updateProfileAndRelationship(accountId)
|
updateProfileAndRelationship(accountId)
|
||||||
updateVerifyCredentialsForInstance(instanceName)
|
updateVerifyCredentialsForInstance(instanceName)
|
||||||
|
},
|
||||||
|
store: () => store,
|
||||||
|
computed: {
|
||||||
|
profileName: ($currentAccountProfile) => {
|
||||||
|
return ($currentAccountProfile && ('@' + $currentAccountProfile.acct)) || ''
|
||||||
},
|
},
|
||||||
store: () => store,
|
shortProfileName: ($currentAccountProfile) => {
|
||||||
computed: {
|
return ($currentAccountProfile && ('@' + $currentAccountProfile.username)) || ''
|
||||||
profileName: ($currentAccountProfile) => {
|
|
||||||
return ($currentAccountProfile && ('@' + $currentAccountProfile.acct)) || ''
|
|
||||||
},
|
|
||||||
shortProfileName: ($currentAccountProfile) => {
|
|
||||||
return ($currentAccountProfile && ('@' + $currentAccountProfile.username)) || ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
components: {
|
|
||||||
Layout,
|
|
||||||
LazyTimeline,
|
|
||||||
FreeTextLayout,
|
|
||||||
HiddenFromSSR,
|
|
||||||
DynamicPageBanner,
|
|
||||||
AccountProfile,
|
|
||||||
PinnedStatuses
|
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
Layout,
|
||||||
|
LazyTimeline,
|
||||||
|
FreeTextLayout,
|
||||||
|
HiddenFromSSR,
|
||||||
|
DynamicPageBanner,
|
||||||
|
AccountProfile,
|
||||||
|
PinnedStatuses
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -3,26 +3,26 @@
|
||||||
</:Head>
|
</:Head>
|
||||||
|
|
||||||
<Layout page='blocked'>
|
<Layout page='blocked'>
|
||||||
<DynamicPageBanner title="Blocked users" icon="#fa-ban" />
|
<DynamicPageBanner title="Blocked users" icon="#fa-ban"/>
|
||||||
<AccountsListPage :accountsFetcher />
|
<AccountsListPage :accountsFetcher/>
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import AccountsListPage from './_components/AccountsListPage.html'
|
import AccountsListPage from './_components/AccountsListPage.html'
|
||||||
import { store } from './_store/store'
|
import { store } from './_store/store'
|
||||||
import { getBlockedAccounts } from './_api/blockedAndMuted'
|
import { getBlockedAccounts } from './_api/blockedAndMuted'
|
||||||
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
computed: {
|
computed: {
|
||||||
statusId: params => params.statusId,
|
statusId: params => params.statusId,
|
||||||
accountsFetcher: ($currentInstance, $accessToken, statusId) => () => getBlockedAccounts($currentInstance, $accessToken, statusId)
|
accountsFetcher: ($currentInstance, $accessToken, statusId) => () => getBlockedAccounts($currentInstance, $accessToken, statusId)
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
AccountsListPage,
|
AccountsListPage,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -13,6 +13,7 @@
|
||||||
.page-list-wrapper {
|
.page-list-wrapper {
|
||||||
margin: 20px 20px;
|
margin: 20px 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
ul.page-list {
|
ul.page-list {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -20,6 +21,7 @@
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 767px) {
|
@media (max-width: 767px) {
|
||||||
.page-list-wrapper {
|
.page-list-wrapper {
|
||||||
margin: 20px 0;
|
margin: 20px 0;
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
<li class="page-list-item">
|
<li class="page-list-item">
|
||||||
<a :href>
|
<a :href>
|
||||||
<svg>
|
<svg>
|
||||||
<use xlink:href="{{icon}}" />
|
<use xlink:href="{{icon}}"/>
|
||||||
</svg>
|
</svg>
|
||||||
<span aria-label="{{label}} {{$pinnedPage === href ? 'Pinned page' : 'Unpinned page'}}">
|
<span aria-label="{{label}} {{$pinnedPage === href ? 'Pinned page' : 'Unpinned page'}}">
|
||||||
{{label}}
|
{{label}}
|
||||||
</span>
|
</span>
|
||||||
{{#if pinnable}}
|
{{#if pinnable}}
|
||||||
<IconButton pressable="true"
|
<IconButton pressable="true"
|
||||||
pressed="{{$pinnedPage === href}}"
|
pressed="{{$pinnedPage === href}}"
|
||||||
label="Pin page"
|
label="Pin page"
|
||||||
href="#fa-thumb-tack"
|
href="#fa-thumb-tack"
|
||||||
on:click="onPinClick(event)" />
|
on:click="onPinClick(event)"/>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
@ -22,6 +22,7 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-list-item a {
|
.page-list-item a {
|
||||||
padding: 20px 40px;
|
padding: 20px 40px;
|
||||||
background: var(--settings-list-item-bg);
|
background: var(--settings-list-item-bg);
|
||||||
|
@ -29,17 +30,21 @@
|
||||||
grid-template-columns: min-content 1fr min-content;
|
grid-template-columns: min-content 1fr min-content;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-list-item a, .page-list-item a:visited {
|
.page-list-item a, .page-list-item a:visited {
|
||||||
color: var(--body-text-color);
|
color: var(--body-text-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-list-item a:hover {
|
.page-list-item a:hover {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
background: var(--settings-list-item-bg-hover);
|
background: var(--settings-list-item-bg-hover);
|
||||||
color: var(--body-text-color);
|
color: var(--body-text-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-list-item a:active {
|
.page-list-item a:active {
|
||||||
background: var(--settings-list-item-bg-active);
|
background: var(--settings-list-item-bg-active);
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-list-item svg {
|
.page-list-item svg {
|
||||||
width: 24px;
|
width: 24px;
|
||||||
height: 24px;
|
height: 24px;
|
||||||
|
@ -47,6 +52,7 @@
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
fill: var(--body-text-color);
|
fill: var(--body-text-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-list-item span {
|
.page-list-item span {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
@ -57,6 +63,7 @@
|
||||||
.page-list-item a {
|
.page-list-item a {
|
||||||
padding: 20px 10px;
|
padding: 20px 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.page-list-item svg {
|
.page-list-item svg {
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
|
@ -64,24 +71,24 @@
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import { store } from '../../_store/store'
|
import { store } from '../../_store/store'
|
||||||
import IconButton from '../../_components/IconButton'
|
import IconButton from '../../_components/IconButton'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
IconButton
|
IconButton
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
onPinClick(e) {
|
onPinClick (e) {
|
||||||
e.preventDefault()
|
e.preventDefault()
|
||||||
let currentInstance = this.store.get('currentInstance')
|
let currentInstance = this.store.get('currentInstance')
|
||||||
let pinnedPages = this.store.get('pinnedPages')
|
let pinnedPages = this.store.get('pinnedPages')
|
||||||
let href = this.get('href')
|
let href = this.get('href')
|
||||||
pinnedPages[currentInstance] = href
|
pinnedPages[currentInstance] = href
|
||||||
this.store.set({pinnedPages: pinnedPages})
|
this.store.set({pinnedPages: pinnedPages})
|
||||||
this.store.save()
|
this.store.save()
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -30,19 +30,19 @@
|
||||||
|
|
||||||
{{#if $lists.length}}
|
{{#if $lists.length}}
|
||||||
|
|
||||||
<h2 class="community-header">
|
<h2 class="community-header">
|
||||||
Lists
|
Lists
|
||||||
</h2>
|
</h2>
|
||||||
|
|
||||||
<PageList label="Lists">
|
<PageList label="Lists">
|
||||||
{{#each $lists as list}}
|
{{#each $lists as list}}
|
||||||
<PageListItem href="/lists/{{list.id}}"
|
<PageListItem href="/lists/{{list.id}}"
|
||||||
label="{{list.title}}"
|
label="{{list.title}}"
|
||||||
icon="#fa-bars"
|
icon="#fa-bars"
|
||||||
pinnable="true"
|
pinnable="true"
|
||||||
/>
|
/>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</PageList>
|
</PageList>
|
||||||
|
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
|
@ -80,6 +80,7 @@
|
||||||
.community-page {
|
.community-page {
|
||||||
margin: 20px;
|
margin: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 767px) {
|
@media (max-width: 767px) {
|
||||||
.community-page {
|
.community-page {
|
||||||
margin: 20px 10px;
|
margin: 20px 10px;
|
||||||
|
@ -87,25 +88,25 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../_components/Layout.html'
|
import Layout from '../_components/Layout.html'
|
||||||
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
||||||
import { store } from '../_store/store.js'
|
import { store } from '../_store/store.js'
|
||||||
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
||||||
import PageList from './_components/PageList.html'
|
import PageList from './_components/PageList.html'
|
||||||
import PageListItem from './_components/PageListItem.html'
|
import PageListItem from './_components/PageListItem.html'
|
||||||
import { updateLists } from '../_actions/lists'
|
import { updateLists } from '../_actions/lists'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
async oncreate() {
|
async oncreate () {
|
||||||
await updateLists()
|
await updateLists()
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR,
|
HiddenFromSSR,
|
||||||
PageList,
|
PageList,
|
||||||
PageListItem
|
PageListItem
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
|
@ -5,9 +5,9 @@
|
||||||
<Layout page='favorites'>
|
<Layout page='favorites'>
|
||||||
{{#if $isUserLoggedIn}}
|
{{#if $isUserLoggedIn}}
|
||||||
{{#if $pinnedPage !== '/favorites'}}
|
{{#if $pinnedPage !== '/favorites'}}
|
||||||
<DynamicPageBanner title="Favorites" icon="#fa-star"/>
|
<DynamicPageBanner title="Favorites" icon="#fa-star"/>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<LazyTimeline timeline='favorites' />
|
<LazyTimeline timeline='favorites'/>
|
||||||
{{else}}
|
{{else}}
|
||||||
<HiddenFromSSR>
|
<HiddenFromSSR>
|
||||||
<FreeTextLayout>
|
<FreeTextLayout>
|
||||||
|
@ -20,21 +20,21 @@
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
||||||
import FreeTextLayout from './_components/FreeTextLayout.html'
|
import FreeTextLayout from './_components/FreeTextLayout.html'
|
||||||
import { store } from './_store/store.js'
|
import { store } from './_store/store.js'
|
||||||
import HiddenFromSSR from './_components/HiddenFromSSR'
|
import HiddenFromSSR from './_components/HiddenFromSSR'
|
||||||
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
LazyTimeline,
|
LazyTimeline,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR,
|
HiddenFromSSR,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -20,21 +20,21 @@
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
||||||
import FreeTextLayout from './_components/FreeTextLayout.html'
|
import FreeTextLayout from './_components/FreeTextLayout.html'
|
||||||
import { store } from './_store/store.js'
|
import { store } from './_store/store.js'
|
||||||
import HiddenFromSSR from './_components/HiddenFromSSR'
|
import HiddenFromSSR from './_components/HiddenFromSSR'
|
||||||
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
LazyTimeline,
|
LazyTimeline,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR,
|
HiddenFromSSR,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -15,21 +15,21 @@
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import NotLoggedInHome from './_components/NotLoggedInHome.html'
|
import NotLoggedInHome from './_components/NotLoggedInHome.html'
|
||||||
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
||||||
import ComposeBox from './_components/compose/ComposeBox.html'
|
import ComposeBox from './_components/compose/ComposeBox.html'
|
||||||
import { store } from './_store/store.js'
|
import { store } from './_store/store.js'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
LazyTimeline,
|
LazyTimeline,
|
||||||
NotLoggedInHome,
|
NotLoggedInHome,
|
||||||
ComposeBox
|
ComposeBox
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style>
|
<style>
|
||||||
</style>
|
</style>
|
|
@ -5,9 +5,9 @@
|
||||||
<Layout page='lists'>
|
<Layout page='lists'>
|
||||||
{{#if $isUserLoggedIn}}
|
{{#if $isUserLoggedIn}}
|
||||||
{{#if $pinnedPage !== `/lists/${params.listId}`}}
|
{{#if $pinnedPage !== `/lists/${params.listId}`}}
|
||||||
<DynamicPageBanner title="{{listTitle}}" icon="#fa-bars"/>
|
<DynamicPageBanner title="{{listTitle}}" icon="#fa-bars"/>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<LazyTimeline timeline='list/{{params.listId}}' />
|
<LazyTimeline timeline='list/{{params.listId}}'/>
|
||||||
{{else}}
|
{{else}}
|
||||||
<HiddenFromSSR>
|
<HiddenFromSSR>
|
||||||
<FreeTextLayout>
|
<FreeTextLayout>
|
||||||
|
@ -19,25 +19,25 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../_components/Layout.html'
|
import Layout from '../_components/Layout.html'
|
||||||
import LazyTimeline from '../_components/timeline/LazyTimeline.html'
|
import LazyTimeline from '../_components/timeline/LazyTimeline.html'
|
||||||
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
||||||
import { store } from '../_store/store.js'
|
import { store } from '../_store/store.js'
|
||||||
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
||||||
import DynamicPageBanner from '../_components/DynamicPageBanner.html'
|
import DynamicPageBanner from '../_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
computed: {
|
computed: {
|
||||||
list: (params, $lists) => $lists && $lists.find(_ => _.id === params['listId']),
|
list: (params, $lists) => $lists && $lists.find(_ => _.id === params['listId']),
|
||||||
listTitle: (list) => list ? list.title : ''
|
listTitle: (list) => list ? list.title : ''
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
LazyTimeline,
|
LazyTimeline,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR,
|
HiddenFromSSR,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -20,21 +20,21 @@
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
||||||
import FreeTextLayout from './_components/FreeTextLayout.html'
|
import FreeTextLayout from './_components/FreeTextLayout.html'
|
||||||
import { store } from './_store/store.js'
|
import { store } from './_store/store.js'
|
||||||
import HiddenFromSSR from './_components/HiddenFromSSR'
|
import HiddenFromSSR from './_components/HiddenFromSSR'
|
||||||
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
LazyTimeline,
|
LazyTimeline,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR,
|
HiddenFromSSR,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -3,26 +3,26 @@
|
||||||
</:Head>
|
</:Head>
|
||||||
|
|
||||||
<Layout page='muted'>
|
<Layout page='muted'>
|
||||||
<DynamicPageBanner title="Muted users" icon="#fa-volume-off" />
|
<DynamicPageBanner title="Muted users" icon="#fa-volume-off"/>
|
||||||
<AccountsListPage :accountsFetcher />
|
<AccountsListPage :accountsFetcher/>
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import AccountsListPage from './_components/AccountsListPage.html'
|
import AccountsListPage from './_components/AccountsListPage.html'
|
||||||
import { store } from './_store/store'
|
import { store } from './_store/store'
|
||||||
import { getMutedAccounts } from './_api/blockedAndMuted'
|
import { getMutedAccounts } from './_api/blockedAndMuted'
|
||||||
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
computed: {
|
computed: {
|
||||||
statusId: params => params.statusId,
|
statusId: params => params.statusId,
|
||||||
accountsFetcher: ($currentInstance, $accessToken, statusId) => () => getMutedAccounts($currentInstance, $accessToken, statusId)
|
accountsFetcher: ($currentInstance, $accessToken, statusId) => () => getMutedAccounts($currentInstance, $accessToken, statusId)
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
AccountsListPage,
|
AccountsListPage,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -1,10 +1,10 @@
|
||||||
<:Head>
|
<:Head>
|
||||||
<title>Pinafore – Notifications</title>
|
<title>Pinafore – Notifications</title>
|
||||||
</:Head>
|
</:Head>
|
||||||
|
|
||||||
<Layout page='notifications'>
|
<Layout page='notifications'>
|
||||||
{{#if $isUserLoggedIn}}
|
{{#if $isUserLoggedIn}}
|
||||||
<LazyTimeline timeline='notifications' />
|
<LazyTimeline timeline='notifications'/>
|
||||||
{{else}}
|
{{else}}
|
||||||
<HiddenFromSSR>
|
<HiddenFromSSR>
|
||||||
<FreeTextLayout>
|
<FreeTextLayout>
|
||||||
|
@ -17,19 +17,19 @@
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
import LazyTimeline from './_components/timeline/LazyTimeline.html'
|
||||||
import FreeTextLayout from './_components/FreeTextLayout.html'
|
import FreeTextLayout from './_components/FreeTextLayout.html'
|
||||||
import { store } from './_store/store.js'
|
import { store } from './_store/store.js'
|
||||||
import HiddenFromSSR from './_components/HiddenFromSSR'
|
import HiddenFromSSR from './_components/HiddenFromSSR'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
LazyTimeline,
|
LazyTimeline,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR
|
HiddenFromSSR
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
|
@ -3,14 +3,14 @@
|
||||||
</:Head>
|
</:Head>
|
||||||
|
|
||||||
<Layout page='pinned'>
|
<Layout page='pinned'>
|
||||||
<DynamicPageBanner title="Pinned toots" icon="#fa-thumb-tack" />
|
<DynamicPageBanner title="Pinned toots" icon="#fa-thumb-tack"/>
|
||||||
<div class="pinned-toots-page">
|
<div class="pinned-toots-page">
|
||||||
{{#if loading}}
|
{{#if loading}}
|
||||||
<LoadingPage />
|
<LoadingPage/>
|
||||||
{{elseif statuses && statuses.length}}
|
{{elseif statuses && statuses.length}}
|
||||||
<ul class="pinned-toots-results">
|
<ul class="pinned-toots-results">
|
||||||
{{#each statuses as status, index}}
|
{{#each statuses as status, index}}
|
||||||
<StatusSearchResult :status :index length="{{statuses.length}}" />
|
<StatusSearchResult :status :index length="{{statuses.length}}"/>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</ul>
|
</ul>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
@ -22,12 +22,14 @@
|
||||||
padding: 20px 20px;
|
padding: 20px 20px;
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|
||||||
.pinned-toots-results {
|
.pinned-toots-results {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border: 1px solid var(--main-border);
|
border: 1px solid var(--main-border);
|
||||||
border-radius: 2px;
|
border-radius: 2px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 767px) {
|
@media (max-width: 767px) {
|
||||||
.pinned-toots-page {
|
.pinned-toots-page {
|
||||||
padding: 20px 10px;
|
padding: 20px 10px;
|
||||||
|
@ -35,41 +37,41 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import { store } from './_store/store'
|
import { store } from './_store/store'
|
||||||
import LoadingPage from './_components/LoadingPage.html'
|
import LoadingPage from './_components/LoadingPage.html'
|
||||||
import StatusSearchResult from './_components/search/StatusSearchResult.html'
|
import StatusSearchResult from './_components/search/StatusSearchResult.html'
|
||||||
import { toast } from './_utils/toast'
|
import { toast } from './_utils/toast'
|
||||||
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
import DynamicPageBanner from './_components/DynamicPageBanner.html'
|
||||||
import { getPinnedStatuses } from './_api/pinnedStatuses'
|
import { getPinnedStatuses } from './_api/pinnedStatuses'
|
||||||
import { updateVerifyCredentialsForInstance } from './_actions/instances'
|
import { updateVerifyCredentialsForInstance } from './_actions/instances'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
async oncreate() {
|
async oncreate () {
|
||||||
let accountsFetcher = this.get('accountsFetcher')
|
let accountsFetcher = this.get('accountsFetcher')
|
||||||
try {
|
try {
|
||||||
let currentInstance = this.store.get('currentInstance')
|
let currentInstance = this.store.get('currentInstance')
|
||||||
await updateVerifyCredentialsForInstance(currentInstance)
|
await updateVerifyCredentialsForInstance(currentInstance)
|
||||||
let accessToken = this.store.get('accessToken')
|
let accessToken = this.store.get('accessToken')
|
||||||
let verifyCredentials = this.store.get('currentVerifyCredentials')
|
let verifyCredentials = this.store.get('currentVerifyCredentials')
|
||||||
let statuses = await getPinnedStatuses(currentInstance, accessToken, verifyCredentials.id)
|
let statuses = await getPinnedStatuses(currentInstance, accessToken, verifyCredentials.id)
|
||||||
this.set({ statuses: statuses })
|
this.set({statuses: statuses})
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
toast.say('Error: ' + (e.name || '') + ' ' + (e.message || ''))
|
toast.say('Error: ' + (e.name || '') + ' ' + (e.message || ''))
|
||||||
} finally {
|
} finally {
|
||||||
this.set({loading: false})
|
this.set({loading: false})
|
||||||
}
|
|
||||||
},
|
|
||||||
data: () => ({
|
|
||||||
loading: true,
|
|
||||||
accounts: []
|
|
||||||
}),
|
|
||||||
store: () => store,
|
|
||||||
components: {
|
|
||||||
Layout,
|
|
||||||
LoadingPage,
|
|
||||||
StatusSearchResult,
|
|
||||||
DynamicPageBanner
|
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
data: () => ({
|
||||||
|
loading: true,
|
||||||
|
accounts: []
|
||||||
|
}),
|
||||||
|
store: () => store,
|
||||||
|
components: {
|
||||||
|
Layout,
|
||||||
|
LoadingPage,
|
||||||
|
StatusSearchResult,
|
||||||
|
DynamicPageBanner
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -30,19 +30,19 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import Layout from './_components/Layout.html'
|
import Layout from './_components/Layout.html'
|
||||||
import FreeTextLayout from './_components/FreeTextLayout.html'
|
import FreeTextLayout from './_components/FreeTextLayout.html'
|
||||||
import { store } from './_store/store.js'
|
import { store } from './_store/store.js'
|
||||||
import HiddenFromSSR from './_components/HiddenFromSSR'
|
import HiddenFromSSR from './_components/HiddenFromSSR'
|
||||||
import Search from './_components/search/Search.html'
|
import Search from './_components/search/Search.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
Search,
|
Search,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR
|
HiddenFromSSR
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -9,12 +9,15 @@
|
||||||
.settings {
|
.settings {
|
||||||
margin: 20px;
|
margin: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:global(.settings .free-text h1) {
|
:global(.settings .free-text h1) {
|
||||||
margin-bottom: 30px;
|
margin-bottom: 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:global(.settings .free-text h2) {
|
:global(.settings .free-text h2) {
|
||||||
margin: 20px 0 10px;
|
margin: 20px 0 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 767px) {
|
@media (max-width: 767px) {
|
||||||
.settings {
|
.settings {
|
||||||
margin: 20px 10px;
|
margin: 20px 10px;
|
||||||
|
@ -22,13 +25,13 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import SettingsNav from './SettingsNav.html';
|
import SettingsNav from './SettingsNav.html'
|
||||||
import FreeTextLayout from '../../_components/FreeTextLayout'
|
import FreeTextLayout from '../../_components/FreeTextLayout'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
SettingsNav
|
SettingsNav
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
|
@ -13,6 +13,7 @@
|
||||||
.settings-list-wrapper {
|
.settings-list-wrapper {
|
||||||
margin: 20px 20px;
|
margin: 20px 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
ul.settings-list {
|
ul.settings-list {
|
||||||
list-style: none;
|
list-style: none;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -20,6 +21,7 @@
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 767px) {
|
@media (max-width: 767px) {
|
||||||
.settings-list-wrapper {
|
.settings-list-wrapper {
|
||||||
margin: 20px 0;
|
margin: 20px 0;
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<a :href>
|
<a :href>
|
||||||
{{#if icon}}
|
{{#if icon}}
|
||||||
<svg>
|
<svg>
|
||||||
<use xlink:href="{{icon}}" />
|
<use xlink:href="{{icon}}"/>
|
||||||
</svg>
|
</svg>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{#if ariaLabel}}
|
{{#if ariaLabel}}
|
||||||
|
@ -23,22 +23,27 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item a {
|
.settings-list-item a {
|
||||||
display: flex;
|
display: flex;
|
||||||
padding: 20px 40px;
|
padding: 20px 40px;
|
||||||
background: var(--settings-list-item-bg);
|
background: var(--settings-list-item-bg);
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item a, .settings-list-item a:visited {
|
.settings-list-item a, .settings-list-item a:visited {
|
||||||
color: var(--settings-list-item-text);
|
color: var(--settings-list-item-text);
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item a:hover {
|
.settings-list-item a:hover {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
background: var(--settings-list-item-bg-hover);
|
background: var(--settings-list-item-bg-hover);
|
||||||
color: var(--settings-list-item-text-hover);
|
color: var(--settings-list-item-text-hover);
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item a:active {
|
.settings-list-item a:active {
|
||||||
background: var(--settings-list-item-bg-active);
|
background: var(--settings-list-item-bg-active);
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item svg {
|
.settings-list-item svg {
|
||||||
width: 24px;
|
width: 24px;
|
||||||
height: 24px;
|
height: 24px;
|
||||||
|
@ -46,9 +51,11 @@
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
fill: var(--svg-fill);
|
fill: var(--svg-fill);
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item .offset-for-icon {
|
.settings-list-item .offset-for-icon {
|
||||||
margin-left: 44px;
|
margin-left: 44px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item span {
|
.settings-list-item span {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
@ -59,9 +66,11 @@
|
||||||
.settings-list-item a {
|
.settings-list-item a {
|
||||||
padding: 20px 10px;
|
padding: 20px 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item svg {
|
.settings-list-item svg {
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.settings-list-item .offset-for-icon {
|
.settings-list-item .offset-for-icon {
|
||||||
margin-left: 34px;
|
margin-left: 34px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
<ul>
|
<ul>
|
||||||
{{#each navItems as navItem}}
|
{{#each navItems as navItem}}
|
||||||
<li>
|
<li>
|
||||||
<SettingsNavItem :page name="{{navItem.name}}" href="{{navItem.href}}" label="{{navItem.label}}" />
|
<SettingsNavItem :page name="{{navItem.name}}" href="{{navItem.href}}" label="{{navItem.label}}"/>
|
||||||
</li>
|
</li>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
<li>
|
<li>
|
||||||
<SettingsNavItem :page name="{{page}}" href="/{{page}}" :label />
|
<SettingsNavItem :page name="{{page}}" href="/{{page}}" :label/>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
|
@ -38,37 +38,37 @@
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import SettingsNavItem from './SettingsNavItem.html'
|
import SettingsNavItem from './SettingsNavItem.html'
|
||||||
|
|
||||||
const NAV_ITEMS = {
|
const NAV_ITEMS = {
|
||||||
'settings': 'Settings',
|
'settings': 'Settings',
|
||||||
'settings/about': 'About Pinafore',
|
'settings/about': 'About Pinafore',
|
||||||
'settings/general': 'General',
|
'settings/general': 'General',
|
||||||
'settings/instances': 'Instances',
|
'settings/instances': 'Instances',
|
||||||
'settings/instances/add': 'Add an instance',
|
'settings/instances/add': 'Add an instance',
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
SettingsNavItem
|
SettingsNavItem
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
navItems: page => {
|
navItems: page => {
|
||||||
let res = []
|
let res = []
|
||||||
let breadcrumbs = page.split('/')
|
let breadcrumbs = page.split('/')
|
||||||
let path = ''
|
let path = ''
|
||||||
for (let i = 0; i < breadcrumbs.length - 1; i++) {
|
for (let i = 0; i < breadcrumbs.length - 1; i++) {
|
||||||
let currentPage = breadcrumbs[i]
|
let currentPage = breadcrumbs[i]
|
||||||
path += currentPage
|
path += currentPage
|
||||||
res.push({
|
res.push({
|
||||||
label: NAV_ITEMS[path],
|
label: NAV_ITEMS[path],
|
||||||
href: `/${path}`,
|
href: `/${path}`,
|
||||||
name: path
|
name: path
|
||||||
})
|
})
|
||||||
path += '/'
|
path += '/'
|
||||||
}
|
|
||||||
return res
|
|
||||||
}
|
}
|
||||||
|
return res
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -1,4 +1,5 @@
|
||||||
<a class='settings-nav-item {{getCurrentClass(page, name)}}' aria-label='{{getAriaLabel(page, name, label)}}' href='{{href}}'>
|
<a class='settings-nav-item {{getCurrentClass(page, name)}}' aria-label='{{getAriaLabel(page, name, label)}}'
|
||||||
|
href='{{href}}'>
|
||||||
{{label}}
|
{{label}}
|
||||||
</a>
|
</a>
|
||||||
<style>
|
<style>
|
||||||
|
@ -11,14 +12,14 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
helpers: {
|
helpers: {
|
||||||
getCurrentClass(page, name) {
|
getCurrentClass (page, name) {
|
||||||
return page === name ? "selected" : ""
|
return page === name ? 'selected' : ''
|
||||||
},
|
},
|
||||||
getAriaLabel(page, name, label) {
|
getAriaLabel (page, name, label) {
|
||||||
return page === name ? `${label} (current page)` : label
|
return page === name ? `${label} (current page)` : label
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -7,27 +7,39 @@
|
||||||
<h1>About Pinafore</h1>
|
<h1>About Pinafore</h1>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Pinafore is <ExternalLink href="https://github.com/nolanlawson/pinafore">free and open-source software</ExternalLink>
|
Pinafore is
|
||||||
created by <ExternalLink href="https://nolanlawson.com">Nolan Lawson</ExternalLink> and distributed under the
|
<ExternalLink href="https://github.com/nolanlawson/pinafore">free and open-source software</ExternalLink>
|
||||||
<ExternalLink href="https://github.com/nolanlawson/pinafore/blob/master/LICENSE">GNU Affero General Public License</ExternalLink>.
|
created by
|
||||||
|
<ExternalLink href="https://nolanlawson.com">Nolan Lawson</ExternalLink>
|
||||||
|
and distributed under the
|
||||||
|
<ExternalLink href="https://github.com/nolanlawson/pinafore/blob/master/LICENSE">GNU Affero General Public
|
||||||
|
License
|
||||||
|
</ExternalLink>
|
||||||
|
.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>Icons provided by <ExternalLink href="http://fontawesome.io/">Font Awesome</ExternalLink>.</p>
|
<p>Icons provided by
|
||||||
|
<ExternalLink href="http://fontawesome.io/">Font Awesome</ExternalLink>
|
||||||
|
.
|
||||||
|
</p>
|
||||||
|
|
||||||
<p>Logo thanks to "sailboat" by Gregor Cresnar from <ExternalLink href="https://thenounproject.com/">the Noun Project</ExternalLink>.</p>
|
<p>Logo thanks to "sailboat" by Gregor Cresnar from
|
||||||
|
<ExternalLink href="https://thenounproject.com/">the Noun Project</ExternalLink>
|
||||||
|
.
|
||||||
|
</p>
|
||||||
</SettingsLayout>
|
</SettingsLayout>
|
||||||
</Layout>
|
</Layout>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../_components/Layout.html';
|
import Layout from '../_components/Layout.html'
|
||||||
import SettingsLayout from './_components/SettingsLayout.html'
|
import SettingsLayout from './_components/SettingsLayout.html'
|
||||||
import ExternalLink from '../_components/ExternalLink.html'
|
import ExternalLink from '../_components/ExternalLink.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
SettingsLayout,
|
SettingsLayout,
|
||||||
ExternalLink
|
ExternalLink
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
|
@ -31,20 +31,21 @@
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
line-height: 2em;
|
line-height: 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.setting-group {
|
.setting-group {
|
||||||
padding: 5px 0;
|
padding: 5px 0;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../_components/Layout.html';
|
import Layout from '../_components/Layout.html'
|
||||||
import SettingsLayout from './_components/SettingsLayout.html'
|
import SettingsLayout from './_components/SettingsLayout.html'
|
||||||
import { store } from '../_store/store'
|
import { store } from '../_store/store'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
SettingsLayout
|
SettingsLayout
|
||||||
},
|
},
|
||||||
store: () => store
|
store: () => store
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
|
@ -15,17 +15,17 @@
|
||||||
</SettingsLayout>
|
</SettingsLayout>
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../_components/Layout.html';
|
import Layout from '../_components/Layout.html'
|
||||||
import SettingsLayout from './_components/SettingsLayout.html'
|
import SettingsLayout from './_components/SettingsLayout.html'
|
||||||
import SettingsList from './_components/SettingsList.html'
|
import SettingsList from './_components/SettingsList.html'
|
||||||
import SettingsListItem from './_components/SettingsListItem.html'
|
import SettingsListItem from './_components/SettingsListItem.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
SettingsLayout,
|
SettingsLayout,
|
||||||
SettingsList,
|
SettingsList,
|
||||||
SettingsListItem
|
SettingsListItem
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
|
@ -7,36 +7,36 @@
|
||||||
<h1 class="instance-name-h1">{{params.instanceName}}</h1>
|
<h1 class="instance-name-h1">{{params.instanceName}}</h1>
|
||||||
|
|
||||||
{{#if verifyCredentials}}
|
{{#if verifyCredentials}}
|
||||||
<h2>Logged in as:</h2>
|
<h2>Logged in as:</h2>
|
||||||
<div class="acct-current-user">
|
<div class="acct-current-user">
|
||||||
<Avatar account="{{verifyCredentials}}" className="acct-avatar" size="big"/>
|
<Avatar account="{{verifyCredentials}}" className="acct-avatar" size="big"/>
|
||||||
<ExternalLink class="acct-handle"
|
<ExternalLink class="acct-handle"
|
||||||
href="{{verifyCredentials.url}}">
|
href="{{verifyCredentials.url}}">
|
||||||
{{'@' + verifyCredentials.acct}}
|
{{'@' + verifyCredentials.acct}}
|
||||||
</ExternalLink>
|
</ExternalLink>
|
||||||
<span class="acct-display-name">{{verifyCredentials.display_name || verifyCredentials.acct}}</span>
|
<span class="acct-display-name">{{verifyCredentials.display_name || verifyCredentials.acct}}</span>
|
||||||
|
</div>
|
||||||
|
<h2>Theme:</h2>
|
||||||
|
<form class="theme-chooser" aria-label="Choose a theme">
|
||||||
|
{{#each themes as theme}}
|
||||||
|
<div class="theme-group">
|
||||||
|
<input type="radio" id="choice-theme-{{theme.name}}"
|
||||||
|
value="{{theme.name}}" checked="$currentTheme === theme.name"
|
||||||
|
bind:group="selectedTheme" on:change="onThemeChange()">
|
||||||
|
<label for="choice-theme-{{theme.name}}">{{theme.label}}</label>
|
||||||
</div>
|
</div>
|
||||||
<h2>Theme:</h2>
|
{{/each}}
|
||||||
<form class="theme-chooser" aria-label="Choose a theme">
|
</form>
|
||||||
{{#each themes as theme}}
|
|
||||||
<div class="theme-group">
|
|
||||||
<input type="radio" id="choice-theme-{{theme.name}}"
|
|
||||||
value="{{theme.name}}" checked="$currentTheme === theme.name"
|
|
||||||
bind:group="selectedTheme" on:change="onThemeChange()">
|
|
||||||
<label for="choice-theme-{{theme.name}}">{{theme.label}}</label>
|
|
||||||
</div>
|
|
||||||
{{/each}}
|
|
||||||
</form>
|
|
||||||
|
|
||||||
<form class="instance-actions" aria-label="Switch to or log out of this instance">
|
<form class="instance-actions" aria-label="Switch to or log out of this instance">
|
||||||
{{#if $loggedInInstancesInOrder.length > 1 && $currentInstance !== params.instanceName}}
|
{{#if $loggedInInstancesInOrder.length > 1 && $currentInstance !== params.instanceName}}
|
||||||
<button class="primary"
|
<button class="primary"
|
||||||
on:click="onSwitchToThisInstance(event)">
|
on:click="onSwitchToThisInstance(event)">
|
||||||
Switch to this instance
|
Switch to this instance
|
||||||
</button>
|
</button>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<button on:click="onLogOut(event)">Log out</button>
|
<button on:click="onLogOut(event)">Log out</button>
|
||||||
</form>
|
</form>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</SettingsLayout>
|
</SettingsLayout>
|
||||||
</Layout>
|
</Layout>
|
||||||
|
@ -49,22 +49,24 @@
|
||||||
display: grid;
|
display: grid;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
font-size: 1.3em;
|
font-size: 1.3em;
|
||||||
grid-template-areas:
|
grid-template-areas: "avatar handle" "avatar display-name";
|
||||||
"avatar handle"
|
|
||||||
"avatar display-name";
|
|
||||||
grid-template-columns: min-content 1fr;
|
grid-template-columns: min-content 1fr;
|
||||||
grid-column-gap: 20px;
|
grid-column-gap: 20px;
|
||||||
grid-row-gap: 10px;
|
grid-row-gap: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
:global(.acct-avatar) {
|
:global(.acct-avatar) {
|
||||||
grid-area: avatar;
|
grid-area: avatar;
|
||||||
}
|
}
|
||||||
|
|
||||||
:global(.acct-handle) {
|
:global(.acct-handle) {
|
||||||
grid-area: handle;
|
grid-area: handle;
|
||||||
}
|
}
|
||||||
|
|
||||||
.acct-display-name {
|
.acct-display-name {
|
||||||
grid-area: display-name;
|
grid-area: display-name;
|
||||||
}
|
}
|
||||||
|
|
||||||
.theme-chooser {
|
.theme-chooser {
|
||||||
background: var(--form-bg);
|
background: var(--form-bg);
|
||||||
border: 1px solid var(--main-border);
|
border: 1px solid var(--main-border);
|
||||||
|
@ -73,23 +75,28 @@
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
line-height: 2em;
|
line-height: 2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
.theme-group {
|
.theme-group {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.theme-chooser label {
|
.theme-chooser label {
|
||||||
margin: 2px 10px 0;
|
margin: 2px 10px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.instance-actions {
|
.instance-actions {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: right;
|
justify-content: right;
|
||||||
margin: 20px 0;
|
margin: 20px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.instance-actions button {
|
.instance-actions button {
|
||||||
margin: 0 5px;
|
margin: 0 5px;
|
||||||
flex-basis: 100%;
|
flex-basis: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.instance-name-h1 {
|
.instance-name-h1 {
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
@ -97,63 +104,63 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import { store } from '../../_store/store'
|
import { store } from '../../_store/store'
|
||||||
import Layout from '../../_components/Layout.html'
|
import Layout from '../../_components/Layout.html'
|
||||||
import SettingsLayout from '../_components/SettingsLayout.html'
|
import SettingsLayout from '../_components/SettingsLayout.html'
|
||||||
import ExternalLink from '../../_components/ExternalLink.html'
|
import ExternalLink from '../../_components/ExternalLink.html'
|
||||||
import Avatar from '../../_components/Avatar.html'
|
import Avatar from '../../_components/Avatar.html'
|
||||||
import { importDialogs } from '../../_utils/asyncModules'
|
import { importDialogs } from '../../_utils/asyncModules'
|
||||||
import {
|
import {
|
||||||
changeTheme,
|
changeTheme,
|
||||||
switchToInstance,
|
switchToInstance,
|
||||||
logOutOfInstance,
|
logOutOfInstance,
|
||||||
updateVerifyCredentialsForInstance
|
updateVerifyCredentialsForInstance
|
||||||
} from '../../_actions/instances'
|
} from '../../_actions/instances'
|
||||||
import { themes } from '../../_static/themes'
|
import { themes } from '../../_static/themes'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
SettingsLayout,
|
SettingsLayout,
|
||||||
ExternalLink,
|
ExternalLink,
|
||||||
Avatar
|
Avatar
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
data: () => ({
|
data: () => ({
|
||||||
themes: themes,
|
themes: themes,
|
||||||
}),
|
}),
|
||||||
async oncreate() {
|
async oncreate () {
|
||||||
|
let instanceName = this.get('instanceName')
|
||||||
|
await updateVerifyCredentialsForInstance(instanceName)
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
instanceName: (params) => params.instanceName,
|
||||||
|
selectedTheme: ($instanceThemes, instanceName) => $instanceThemes[instanceName],
|
||||||
|
verifyCredentials: ($verifyCredentials, instanceName) => $verifyCredentials && $verifyCredentials[instanceName]
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onThemeChange () {
|
||||||
|
let newTheme = this.get('selectedTheme')
|
||||||
let instanceName = this.get('instanceName')
|
let instanceName = this.get('instanceName')
|
||||||
await updateVerifyCredentialsForInstance(instanceName)
|
changeTheme(instanceName, newTheme)
|
||||||
},
|
},
|
||||||
computed: {
|
onSwitchToThisInstance (e) {
|
||||||
instanceName: (params) => params.instanceName,
|
e.preventDefault()
|
||||||
selectedTheme: ($instanceThemes, instanceName) => $instanceThemes[instanceName],
|
let instanceName = this.get('instanceName')
|
||||||
verifyCredentials: ($verifyCredentials, instanceName) => $verifyCredentials && $verifyCredentials[instanceName]
|
switchToInstance(instanceName)
|
||||||
},
|
},
|
||||||
methods: {
|
async onLogOut (e) {
|
||||||
onThemeChange() {
|
e.preventDefault()
|
||||||
let newTheme = this.get('selectedTheme')
|
let instanceName = this.get('instanceName')
|
||||||
let instanceName = this.get('instanceName')
|
|
||||||
changeTheme(instanceName, newTheme)
|
|
||||||
},
|
|
||||||
onSwitchToThisInstance(e) {
|
|
||||||
e.preventDefault()
|
|
||||||
let instanceName = this.get('instanceName')
|
|
||||||
switchToInstance(instanceName)
|
|
||||||
},
|
|
||||||
async onLogOut(e) {
|
|
||||||
e.preventDefault()
|
|
||||||
let instanceName = this.get('instanceName')
|
|
||||||
|
|
||||||
let dialogs = await importDialogs()
|
let dialogs = await importDialogs()
|
||||||
dialogs.showConfirmationDialog({
|
dialogs.showConfirmationDialog({
|
||||||
text: `Log out of ${instanceName}?`,
|
text: `Log out of ${instanceName}?`,
|
||||||
onPositive() {
|
onPositive () {
|
||||||
logOutOfInstance(instanceName)
|
logOutOfInstance(instanceName)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -37,7 +37,9 @@
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
{{#if !$isUserLoggedIn}}
|
{{#if !$isUserLoggedIn}}
|
||||||
<p>Don't have an instance? <ExternalLink href="https://joinmastodon.org">Join Mastodon!</ExternalLink></p>
|
<p>Don't have an instance?
|
||||||
|
<ExternalLink href="https://joinmastodon.org">Join Mastodon!</ExternalLink>
|
||||||
|
</p>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</SettingsLayout>
|
</SettingsLayout>
|
||||||
</Layout>
|
</Layout>
|
||||||
|
@ -50,6 +52,7 @@
|
||||||
margin: 5px;
|
margin: 5px;
|
||||||
background-color: var(--main-bg);
|
background-color: var(--main-bg);
|
||||||
}
|
}
|
||||||
|
|
||||||
input.new-instance-input {
|
input.new-instance-input {
|
||||||
min-width: 60%;
|
min-width: 60%;
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
|
@ -69,30 +72,30 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../../_components/Layout.html';
|
import Layout from '../../_components/Layout.html'
|
||||||
import SettingsLayout from '../_components/SettingsLayout.html'
|
import SettingsLayout from '../_components/SettingsLayout.html'
|
||||||
import { store } from '../../_store/store'
|
import { store } from '../../_store/store'
|
||||||
import { logInToInstance, handleOauthCode } from '../../_actions/addInstance'
|
import { logInToInstance, handleOauthCode } from '../../_actions/addInstance'
|
||||||
import ExternalLink from '../../_components/ExternalLink.html'
|
import ExternalLink from '../../_components/ExternalLink.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
async oncreate () {
|
async oncreate () {
|
||||||
let codeMatch = location.search.match(/code=([^&]+)/)
|
let codeMatch = location.search.match(/code=([^&]+)/)
|
||||||
if (codeMatch) {
|
if (codeMatch) {
|
||||||
handleOauthCode(codeMatch[1])
|
handleOauthCode(codeMatch[1])
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
SettingsLayout,
|
SettingsLayout,
|
||||||
ExternalLink
|
ExternalLink
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
methods: {
|
methods: {
|
||||||
onSubmit(event) {
|
onSubmit (event) {
|
||||||
event.preventDefault()
|
event.preventDefault()
|
||||||
logInToInstance()
|
logInToInstance()
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -10,11 +10,11 @@
|
||||||
<p>Instances you've logged in to:</p>
|
<p>Instances you've logged in to:</p>
|
||||||
<SettingsList label="Instances">
|
<SettingsList label="Instances">
|
||||||
{{#each $loggedInInstancesAsList as instance}}
|
{{#each $loggedInInstancesAsList as instance}}
|
||||||
<SettingsListItem offsetForIcon="{{instance.name !== $currentInstance}}"
|
<SettingsListItem offsetForIcon="{{instance.name !== $currentInstance}}"
|
||||||
icon="{{instance.name === $currentInstance ? '#fa-star' : ''}}"
|
icon="{{instance.name === $currentInstance ? '#fa-star' : ''}}"
|
||||||
href="/settings/instances/{{instance.name}}"
|
href="/settings/instances/{{instance.name}}"
|
||||||
label="{{instance.name}}"
|
label="{{instance.name}}"
|
||||||
ariaLabel="{{instance.name}} {{instance.name === $currentInstance ? '(current instance)' : ''}}" />
|
ariaLabel="{{instance.name}} {{instance.name === $currentInstance ? '(current instance)' : ''}}"/>
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</SettingsList>
|
</SettingsList>
|
||||||
<p><a href="/settings/instances/add">Add another instance</a></p>
|
<p><a href="/settings/instances/add">Add another instance</a></p>
|
||||||
|
@ -25,19 +25,19 @@
|
||||||
</SettingsLayout>
|
</SettingsLayout>
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import { store } from '../../_store/store'
|
import { store } from '../../_store/store'
|
||||||
import Layout from '../../_components/Layout.html'
|
import Layout from '../../_components/Layout.html'
|
||||||
import SettingsLayout from '../_components/SettingsLayout.html'
|
import SettingsLayout from '../_components/SettingsLayout.html'
|
||||||
import SettingsList from '../_components/SettingsList.html'
|
import SettingsList from '../_components/SettingsList.html'
|
||||||
import SettingsListItem from '../_components/SettingsListItem.html'
|
import SettingsListItem from '../_components/SettingsListItem.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
SettingsLayout,
|
SettingsLayout,
|
||||||
SettingsList,
|
SettingsList,
|
||||||
SettingsListItem
|
SettingsListItem
|
||||||
},
|
},
|
||||||
store: () => store
|
store: () => store
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
|
@ -3,26 +3,26 @@
|
||||||
</:Head>
|
</:Head>
|
||||||
|
|
||||||
<Layout page='favorites'>
|
<Layout page='favorites'>
|
||||||
<DynamicPageBanner title="Favorites" icon="#fa-star" />
|
<DynamicPageBanner title="Favorites" icon="#fa-star"/>
|
||||||
<AccountsListPage :accountsFetcher />
|
<AccountsListPage :accountsFetcher/>
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../../_components/Layout.html'
|
import Layout from '../../_components/Layout.html'
|
||||||
import { getFavorites } from '../../_api/reblogsAndFavs'
|
import { getFavorites } from '../../_api/reblogsAndFavs'
|
||||||
import AccountsListPage from '../../_components/AccountsListPage.html'
|
import AccountsListPage from '../../_components/AccountsListPage.html'
|
||||||
import { store } from '../../_store/store'
|
import { store } from '../../_store/store'
|
||||||
import DynamicPageBanner from '../../_components/DynamicPageBanner.html'
|
import DynamicPageBanner from '../../_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
computed: {
|
computed: {
|
||||||
statusId: params => params.statusId,
|
statusId: params => params.statusId,
|
||||||
accountsFetcher: ($currentInstance, $accessToken, statusId) => () => getFavorites($currentInstance, $accessToken, statusId)
|
accountsFetcher: ($currentInstance, $accessToken, statusId) => () => getFavorites($currentInstance, $accessToken, statusId)
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
AccountsListPage,
|
AccountsListPage,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -2,10 +2,10 @@
|
||||||
<title>Pinafore – Status</title>
|
<title>Pinafore – Status</title>
|
||||||
</:Head>
|
</:Head>
|
||||||
|
|
||||||
<Layout page='statuses' >
|
<Layout page='statuses'>
|
||||||
{{#if $isUserLoggedIn}}
|
{{#if $isUserLoggedIn}}
|
||||||
<DynamicPageBanner title=""/>
|
<DynamicPageBanner title=""/>
|
||||||
<LazyTimeline timeline='status/{{params.statusId}}' />
|
<LazyTimeline timeline='status/{{params.statusId}}'/>
|
||||||
{{else}}
|
{{else}}
|
||||||
<HiddenFromSSR>
|
<HiddenFromSSR>
|
||||||
<FreeTextLayout>
|
<FreeTextLayout>
|
||||||
|
@ -17,21 +17,21 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../../_components/Layout.html'
|
import Layout from '../../_components/Layout.html'
|
||||||
import LazyTimeline from '../../_components/timeline/LazyTimeline.html'
|
import LazyTimeline from '../../_components/timeline/LazyTimeline.html'
|
||||||
import FreeTextLayout from '../../_components/FreeTextLayout.html'
|
import FreeTextLayout from '../../_components/FreeTextLayout.html'
|
||||||
import { store } from '../../_store/store.js'
|
import { store } from '../../_store/store.js'
|
||||||
import HiddenFromSSR from '../../_components/HiddenFromSSR'
|
import HiddenFromSSR from '../../_components/HiddenFromSSR'
|
||||||
import DynamicPageBanner from '../../_components/DynamicPageBanner.html'
|
import DynamicPageBanner from '../../_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
LazyTimeline,
|
LazyTimeline,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR,
|
HiddenFromSSR,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -3,26 +3,26 @@
|
||||||
</:Head>
|
</:Head>
|
||||||
|
|
||||||
<Layout page='reblogs'>
|
<Layout page='reblogs'>
|
||||||
<DynamicPageBanner title="Boosts" icon="#fa-retweet" />
|
<DynamicPageBanner title="Boosts" icon="#fa-retweet"/>
|
||||||
<AccountsListPage :accountsFetcher />
|
<AccountsListPage :accountsFetcher/>
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../../_components/Layout.html'
|
import Layout from '../../_components/Layout.html'
|
||||||
import { getReblogs } from '../../_api/reblogsAndFavs'
|
import { getReblogs } from '../../_api/reblogsAndFavs'
|
||||||
import AccountsListPage from '../../_components/AccountsListPage.html'
|
import AccountsListPage from '../../_components/AccountsListPage.html'
|
||||||
import { store } from '../../_store/store'
|
import { store } from '../../_store/store'
|
||||||
import DynamicPageBanner from '../../_components/DynamicPageBanner.html'
|
import DynamicPageBanner from '../../_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
computed: {
|
computed: {
|
||||||
statusId: params => params.statusId,
|
statusId: params => params.statusId,
|
||||||
accountsFetcher: ($currentInstance, $accessToken, statusId) => () => getReblogs($currentInstance, $accessToken, statusId)
|
accountsFetcher: ($currentInstance, $accessToken, statusId) => () => getReblogs($currentInstance, $accessToken, statusId)
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
AccountsListPage,
|
AccountsListPage,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -2,19 +2,19 @@
|
||||||
<title>Pinafore – Reply</title>
|
<title>Pinafore – Reply</title>
|
||||||
</:Head>
|
</:Head>
|
||||||
|
|
||||||
<Layout page='reply' >
|
<Layout page='reply'>
|
||||||
<DynamicPageBanner title=""/>
|
<DynamicPageBanner title=""/>
|
||||||
<div class="reply-container">
|
<div class="reply-container">
|
||||||
{{#if status}}
|
{{#if status}}
|
||||||
<Status index="0"
|
<Status index="0"
|
||||||
length="1"
|
length="1"
|
||||||
timelineType="reply"
|
timelineType="reply"
|
||||||
timelineValue="{{params.statusId}}"
|
timelineValue="{{params.statusId}}"
|
||||||
:status
|
:status
|
||||||
/>
|
/>
|
||||||
<ComposeBox realm="{{params.statusId}}" />
|
<ComposeBox realm="{{params.statusId}}"/>
|
||||||
{{else}}
|
{{else}}
|
||||||
<LoadingPage />
|
<LoadingPage/>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</div>
|
</div>
|
||||||
</Layout>
|
</Layout>
|
||||||
|
@ -26,28 +26,28 @@
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../../_components/Layout.html'
|
import Layout from '../../_components/Layout.html'
|
||||||
import { store } from '../../_store/store.js'
|
import { store } from '../../_store/store.js'
|
||||||
import DynamicPageBanner from '../../_components/DynamicPageBanner.html'
|
import DynamicPageBanner from '../../_components/DynamicPageBanner.html'
|
||||||
import LoadingPage from '../../_components/LoadingPage.html'
|
import LoadingPage from '../../_components/LoadingPage.html'
|
||||||
import ComposeBox from '../../_components/compose/ComposeBox.html'
|
import ComposeBox from '../../_components/compose/ComposeBox.html'
|
||||||
import Status from '../../_components/status/Status.html'
|
import Status from '../../_components/status/Status.html'
|
||||||
import { database } from '../../_database/database'
|
import { database } from '../../_database/database'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
async oncreate() {
|
async oncreate () {
|
||||||
let statusId = this.get('params').statusId
|
let statusId = this.get('params').statusId
|
||||||
let instanceName = this.store.get('currentInstance')
|
let instanceName = this.store.get('currentInstance')
|
||||||
let status = await database.getStatus(instanceName, statusId)
|
let status = await database.getStatus(instanceName, statusId)
|
||||||
this.set({status})
|
this.set({status})
|
||||||
},
|
},
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
DynamicPageBanner,
|
DynamicPageBanner,
|
||||||
LoadingPage,
|
LoadingPage,
|
||||||
ComposeBox,
|
ComposeBox,
|
||||||
Status
|
Status
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
|
@ -5,7 +5,7 @@
|
||||||
<Layout page='tags'>
|
<Layout page='tags'>
|
||||||
{{#if $isUserLoggedIn}}
|
{{#if $isUserLoggedIn}}
|
||||||
<DynamicPageBanner title="{{'#' + params.tagName}}"/>
|
<DynamicPageBanner title="{{'#' + params.tagName}}"/>
|
||||||
<LazyTimeline timeline='tag/{{params.tagName}}' />
|
<LazyTimeline timeline='tag/{{params.tagName}}'/>
|
||||||
{{else}}
|
{{else}}
|
||||||
<HiddenFromSSR>
|
<HiddenFromSSR>
|
||||||
<FreeTextLayout>
|
<FreeTextLayout>
|
||||||
|
@ -17,21 +17,21 @@
|
||||||
{{/if}}
|
{{/if}}
|
||||||
</Layout>
|
</Layout>
|
||||||
<script>
|
<script>
|
||||||
import Layout from '../_components/Layout.html'
|
import Layout from '../_components/Layout.html'
|
||||||
import LazyTimeline from '../_components/timeline/LazyTimeline.html'
|
import LazyTimeline from '../_components/timeline/LazyTimeline.html'
|
||||||
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
import FreeTextLayout from '../_components/FreeTextLayout.html'
|
||||||
import { store } from '../_store/store.js'
|
import { store } from '../_store/store.js'
|
||||||
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
import HiddenFromSSR from '../_components/HiddenFromSSR'
|
||||||
import DynamicPageBanner from '../_components/DynamicPageBanner.html'
|
import DynamicPageBanner from '../_components/DynamicPageBanner.html'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
store: () => store,
|
store: () => store,
|
||||||
components: {
|
components: {
|
||||||
Layout,
|
Layout,
|
||||||
LazyTimeline,
|
LazyTimeline,
|
||||||
FreeTextLayout,
|
FreeTextLayout,
|
||||||
HiddenFromSSR,
|
HiddenFromSSR,
|
||||||
DynamicPageBanner
|
DynamicPageBanner
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
Loading…
Reference in New Issue