mirror of
https://github.com/tachiyomiorg/website.git
synced 2024-12-21 07:31:58 +01:00
Bump dependencies
This commit is contained in:
parent
65f05f55ad
commit
78e482d269
242
package-lock.json
generated
242
package-lock.json
generated
@ -9,14 +9,14 @@
|
||||
"version": "1.0.0",
|
||||
"license": "MPL-2.0",
|
||||
"dependencies": {
|
||||
"@mr-hope/vuepress-plugin-sitemap": "1.28.5",
|
||||
"@mr-hope/vuepress-plugin-sitemap": "1.30.0",
|
||||
"axios": "0.26.1",
|
||||
"core-js": "2.6.12",
|
||||
"docsearch.js": "2.6.3",
|
||||
"element-ui": "2.15.8",
|
||||
"element-ui": "2.15.9",
|
||||
"lodash.groupby": "4.6.0",
|
||||
"lodash.sortby": "4.7.0",
|
||||
"marked": "4.0.16",
|
||||
"marked": "4.0.17",
|
||||
"material-design-icons-iconfont": "6.7.0",
|
||||
"moment": "2.29.3",
|
||||
"vue": "2.6.14",
|
||||
@ -35,12 +35,12 @@
|
||||
"@vuepress/plugin-pwa": "1.9.7",
|
||||
"babel-eslint": "10.1.0",
|
||||
"eslint": "7.32.0",
|
||||
"eslint-config-vuepress": "3.9.0",
|
||||
"eslint-config-vuepress": "3.10.0",
|
||||
"eslint-plugin-markdown": "2.2.1",
|
||||
"eslint-plugin-promise": "6.0.0",
|
||||
"eslint-plugin-vue": "9.1.0",
|
||||
"eslint-plugin-vue": "9.1.1",
|
||||
"node-sass": "6.0.1",
|
||||
"prettier": "2.6.2",
|
||||
"prettier": "2.7.1",
|
||||
"sass-loader": "10.2.1",
|
||||
"vuepress": "1.9.7",
|
||||
"vuepress-plugin-clean-urls": "1.1.2",
|
||||
@ -1828,11 +1828,11 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@mr-hope/vuepress-plugin-sitemap": {
|
||||
"version": "1.28.5",
|
||||
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-1.28.5.tgz",
|
||||
"integrity": "sha512-8G+7Ya36uYKUNzTi+bJV14E6P3P1huE4lO8+WeOJ/rIe5NNCS3Z4AkB7zDTeWGMbvAWLMLMJfGFJ/EAUSf3plg==",
|
||||
"version": "1.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-1.30.0.tgz",
|
||||
"integrity": "sha512-RWpyvsB8y4WlAc4jh84uogw03U4mGUsmSy/nf7m+kD3fPHQEfyL4CI/Boh1LDc//D6SsuZeL0QVUB/T+bJKz4A==",
|
||||
"dependencies": {
|
||||
"@mr-hope/vuepress-types": "1.28.3",
|
||||
"@mr-hope/vuepress-types": "1.30.0",
|
||||
"@types/fs-extra": "^9.0.13",
|
||||
"chalk": "^4.1.2",
|
||||
"fs-extra": "^10.1.0",
|
||||
@ -1840,9 +1840,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@mr-hope/vuepress-types": {
|
||||
"version": "1.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-types/-/vuepress-types-1.28.3.tgz",
|
||||
"integrity": "sha512-c/adRtW6G4B5dA8k2pbQF+8LenzPbjEmmQnIJ/7zfkhw81XboRN0v3EgBW5T2l4xggOJQCPwG+/4XNLXOGPENg==",
|
||||
"version": "1.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-types/-/vuepress-types-1.30.0.tgz",
|
||||
"integrity": "sha512-XsPxmevdUxrKKx5l/1JS/wkzzRWMcd1wGrQaahETUbeZ9HuxUCNrLnUc9aH8ngss91LZ01qPiAx69zxIBQUcOw==",
|
||||
"dependencies": {
|
||||
"@types/express": "^4.17.13",
|
||||
"@types/markdown-it": "^10.0.3",
|
||||
@ -4220,9 +4220,9 @@
|
||||
"integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug="
|
||||
},
|
||||
"node_modules/builtins": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/builtins/-/builtins-4.1.0.tgz",
|
||||
"integrity": "sha512-1bPRZQtmKaO6h7qV1YHXNtr6nCK28k0Zo95KM4dXfILcZZwoHJBN1m3lfLv9LPkcOZlrSr+J1bzMaZFO98Yq0w==",
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz",
|
||||
"integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"semver": "^7.0.0"
|
||||
@ -4771,7 +4771,7 @@
|
||||
"node_modules/chokidar/node_modules/glob-parent": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
|
||||
"integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
|
||||
"integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
|
||||
"dependencies": {
|
||||
"is-glob": "^3.1.0",
|
||||
"path-dirname": "^1.0.0"
|
||||
@ -5432,7 +5432,7 @@
|
||||
"node_modules/copy-webpack-plugin/node_modules/glob-parent": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
|
||||
"integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
|
||||
"integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
|
||||
"dependencies": {
|
||||
"is-glob": "^3.1.0",
|
||||
"path-dirname": "^1.0.0"
|
||||
@ -6488,9 +6488,9 @@
|
||||
"integrity": "sha512-mfBcbqc0qc6RlxrsIgLG2wCqkiPAjEezHxGTu7p3dHHFOurH4EjS9rFZndX5axC8264rI1Pcbw8uQP39oZckeA=="
|
||||
},
|
||||
"node_modules/element-ui": {
|
||||
"version": "2.15.8",
|
||||
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.8.tgz",
|
||||
"integrity": "sha512-N54zxosRFqpYax3APY3GeRmtOZwIls6Z756WM0kdPZ5Q92PIeKHnZgF1StlamIg9bLxP1k+qdhTZvIeQlim09A==",
|
||||
"version": "2.15.9",
|
||||
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.9.tgz",
|
||||
"integrity": "sha512-dx45nQLt4Hn87/Z9eRr3ex6KFZbxlFAwEU3QoW3wA5EsYftvHTyL9Pq7VnXXD7hu1Eiaup2jcs6kp+/VSFmXuA==",
|
||||
"dependencies": {
|
||||
"async-validator": "~1.8.1",
|
||||
"babel-helper-vue-jsx-merge-props": "^2.0.0",
|
||||
@ -7045,18 +7045,18 @@
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-config-vuepress": {
|
||||
"version": "3.9.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-vuepress/-/eslint-config-vuepress-3.9.0.tgz",
|
||||
"integrity": "sha512-zraEmHRt2BNc4k0/PkD6HrNXVdg4x5gbMHAZ3CycksOItVJoW7Qe2vq6bR5bEjYt4G4Ks9HeW9LEAgGIFSGE2Q==",
|
||||
"version": "3.10.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-vuepress/-/eslint-config-vuepress-3.10.0.tgz",
|
||||
"integrity": "sha512-Aej2ifGTxqigU08oLxxBjLbulPxe1KOcTz7mZRLbyzfPmS1nxlUd0d6LEFeEmBoiOOPw1+zoJWhI4FafO3TRbQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"eslint-config-prettier": "^8.5.0",
|
||||
"eslint-config-standard": "^17.0.0",
|
||||
"eslint-plugin-import": "^2.26.0",
|
||||
"eslint-plugin-n": "^15.2.0",
|
||||
"eslint-plugin-n": "^15.2.1",
|
||||
"eslint-plugin-prettier": "^4.0.0",
|
||||
"eslint-plugin-promise": "^6.0.0",
|
||||
"eslint-plugin-vue": "^9.0.1"
|
||||
"eslint-plugin-vue": "^9.1.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@babel/core": "^7.18.2",
|
||||
@ -7484,19 +7484,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-n": {
|
||||
"version": "15.2.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.0.tgz",
|
||||
"integrity": "sha512-lWLg++jGwC88GDGGBX3CMkk0GIWq0y41aH51lavWApOKcMQcYoL3Ayd0lEdtD3SnQtR+3qBvWQS3qGbR2BxRWg==",
|
||||
"version": "15.2.3",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.3.tgz",
|
||||
"integrity": "sha512-H+KC7U5R+3IWTeRnACm/4wlqLvS1Q7M6t7BGhn89qXDkZan8HTAEv3ouIONA0ifDwc2YzPFmyPzHuNLddNK4jw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"builtins": "^4.0.0",
|
||||
"builtins": "^5.0.1",
|
||||
"eslint-plugin-es": "^4.1.0",
|
||||
"eslint-utils": "^3.0.0",
|
||||
"ignore": "^5.1.1",
|
||||
"is-core-module": "^2.3.0",
|
||||
"minimatch": "^3.0.4",
|
||||
"is-core-module": "^2.9.0",
|
||||
"minimatch": "^3.1.2",
|
||||
"resolve": "^1.10.1",
|
||||
"semver": "^6.3.0"
|
||||
"semver": "^7.3.7"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.22.0"
|
||||
@ -7544,6 +7544,45 @@
|
||||
"node": ">= 4"
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-n/node_modules/lru-cache": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||
"integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"yallist": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-n/node_modules/minimatch": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
||||
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-n/node_modules/semver": {
|
||||
"version": "7.3.7",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
|
||||
"integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"lru-cache": "^6.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"semver": "bin/semver.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-prettier": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz",
|
||||
@ -7578,9 +7617,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/eslint-plugin-vue": {
|
||||
"version": "9.1.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.1.0.tgz",
|
||||
"integrity": "sha512-EPCeInPicQ/YyfOWJDr1yfEeSNoFCMzUus107lZyYi37xejdOolNzS5MXGXp8+9bkoKZMdv/1AcZzQebME6r+g==",
|
||||
"version": "9.1.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.1.1.tgz",
|
||||
"integrity": "sha512-W9n5PB1X2jzC7CK6riG0oAcxjmKrjTF6+keL1rni8n57DZeilx/Fulz+IRJK3lYseLNAygN0I62L7DvioW40Tw==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"eslint-utils": "^3.0.0",
|
||||
@ -8334,7 +8373,7 @@
|
||||
"node_modules/fast-glob/node_modules/glob-parent": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
|
||||
"integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
|
||||
"integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
|
||||
"dependencies": {
|
||||
"is-glob": "^3.1.0",
|
||||
"path-dirname": "^1.0.0"
|
||||
@ -9006,7 +9045,7 @@
|
||||
"node_modules/generate-robotstxt/node_modules/trim-newlines": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz",
|
||||
"integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=",
|
||||
"integrity": "sha512-MTBWv3jhVjTU7XR3IQHllbiJs8sc75a80OEhB6or/q7pLTWgQ0bMGQXXYQSrSuXe6WiKWDZ5txXY5P59a/coVA==",
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
@ -11047,9 +11086,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/markdown-it-anchor": {
|
||||
"version": "8.6.2",
|
||||
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.2.tgz",
|
||||
"integrity": "sha512-JNaekTlIwwyYGBN3zifZDxgz4bSL8sbEj58fdTZGmPSMMGXBZapFjcZk2I33Jy79c1fvCKHpF7MA/67FOTjvzA==",
|
||||
"version": "8.6.4",
|
||||
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz",
|
||||
"integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==",
|
||||
"peerDependencies": {
|
||||
"@types/markdown-it": "*",
|
||||
"markdown-it": "*"
|
||||
@ -11120,9 +11159,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/marked": {
|
||||
"version": "4.0.16",
|
||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.0.16.tgz",
|
||||
"integrity": "sha512-wahonIQ5Jnyatt2fn8KqF/nIqZM8mh3oRu2+l5EANGMhu6RFjiSG52QNE2eWzFMI94HqYSgN184NurgNG6CztA==",
|
||||
"version": "4.0.17",
|
||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz",
|
||||
"integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA==",
|
||||
"bin": {
|
||||
"marked": "bin/marked.js"
|
||||
},
|
||||
@ -13516,9 +13555,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/prettier": {
|
||||
"version": "2.6.2",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz",
|
||||
"integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==",
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz",
|
||||
"integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==",
|
||||
"devOptional": true,
|
||||
"bin": {
|
||||
"prettier": "bin-prettier.js"
|
||||
@ -19649,11 +19688,11 @@
|
||||
}
|
||||
},
|
||||
"@mr-hope/vuepress-plugin-sitemap": {
|
||||
"version": "1.28.5",
|
||||
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-1.28.5.tgz",
|
||||
"integrity": "sha512-8G+7Ya36uYKUNzTi+bJV14E6P3P1huE4lO8+WeOJ/rIe5NNCS3Z4AkB7zDTeWGMbvAWLMLMJfGFJ/EAUSf3plg==",
|
||||
"version": "1.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-1.30.0.tgz",
|
||||
"integrity": "sha512-RWpyvsB8y4WlAc4jh84uogw03U4mGUsmSy/nf7m+kD3fPHQEfyL4CI/Boh1LDc//D6SsuZeL0QVUB/T+bJKz4A==",
|
||||
"requires": {
|
||||
"@mr-hope/vuepress-types": "1.28.3",
|
||||
"@mr-hope/vuepress-types": "1.30.0",
|
||||
"@types/fs-extra": "^9.0.13",
|
||||
"chalk": "^4.1.2",
|
||||
"fs-extra": "^10.1.0",
|
||||
@ -19661,9 +19700,9 @@
|
||||
}
|
||||
},
|
||||
"@mr-hope/vuepress-types": {
|
||||
"version": "1.28.3",
|
||||
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-types/-/vuepress-types-1.28.3.tgz",
|
||||
"integrity": "sha512-c/adRtW6G4B5dA8k2pbQF+8LenzPbjEmmQnIJ/7zfkhw81XboRN0v3EgBW5T2l4xggOJQCPwG+/4XNLXOGPENg==",
|
||||
"version": "1.30.0",
|
||||
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-types/-/vuepress-types-1.30.0.tgz",
|
||||
"integrity": "sha512-XsPxmevdUxrKKx5l/1JS/wkzzRWMcd1wGrQaahETUbeZ9HuxUCNrLnUc9aH8ngss91LZ01qPiAx69zxIBQUcOw==",
|
||||
"requires": {
|
||||
"@types/express": "^4.17.13",
|
||||
"@types/markdown-it": "^10.0.3",
|
||||
@ -21665,9 +21704,9 @@
|
||||
"integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug="
|
||||
},
|
||||
"builtins": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/builtins/-/builtins-4.1.0.tgz",
|
||||
"integrity": "sha512-1bPRZQtmKaO6h7qV1YHXNtr6nCK28k0Zo95KM4dXfILcZZwoHJBN1m3lfLv9LPkcOZlrSr+J1bzMaZFO98Yq0w==",
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz",
|
||||
"integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"semver": "^7.0.0"
|
||||
@ -22080,7 +22119,7 @@
|
||||
"glob-parent": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
|
||||
"integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
|
||||
"integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
|
||||
"requires": {
|
||||
"is-glob": "^3.1.0",
|
||||
"path-dirname": "^1.0.0"
|
||||
@ -22613,7 +22652,7 @@
|
||||
"glob-parent": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
|
||||
"integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
|
||||
"integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
|
||||
"requires": {
|
||||
"is-glob": "^3.1.0",
|
||||
"path-dirname": "^1.0.0"
|
||||
@ -23468,9 +23507,9 @@
|
||||
"integrity": "sha512-mfBcbqc0qc6RlxrsIgLG2wCqkiPAjEezHxGTu7p3dHHFOurH4EjS9rFZndX5axC8264rI1Pcbw8uQP39oZckeA=="
|
||||
},
|
||||
"element-ui": {
|
||||
"version": "2.15.8",
|
||||
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.8.tgz",
|
||||
"integrity": "sha512-N54zxosRFqpYax3APY3GeRmtOZwIls6Z756WM0kdPZ5Q92PIeKHnZgF1StlamIg9bLxP1k+qdhTZvIeQlim09A==",
|
||||
"version": "2.15.9",
|
||||
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.9.tgz",
|
||||
"integrity": "sha512-dx45nQLt4Hn87/Z9eRr3ex6KFZbxlFAwEU3QoW3wA5EsYftvHTyL9Pq7VnXXD7hu1Eiaup2jcs6kp+/VSFmXuA==",
|
||||
"requires": {
|
||||
"async-validator": "~1.8.1",
|
||||
"babel-helper-vue-jsx-merge-props": "^2.0.0",
|
||||
@ -23924,18 +23963,18 @@
|
||||
"requires": {}
|
||||
},
|
||||
"eslint-config-vuepress": {
|
||||
"version": "3.9.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-vuepress/-/eslint-config-vuepress-3.9.0.tgz",
|
||||
"integrity": "sha512-zraEmHRt2BNc4k0/PkD6HrNXVdg4x5gbMHAZ3CycksOItVJoW7Qe2vq6bR5bEjYt4G4Ks9HeW9LEAgGIFSGE2Q==",
|
||||
"version": "3.10.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-config-vuepress/-/eslint-config-vuepress-3.10.0.tgz",
|
||||
"integrity": "sha512-Aej2ifGTxqigU08oLxxBjLbulPxe1KOcTz7mZRLbyzfPmS1nxlUd0d6LEFeEmBoiOOPw1+zoJWhI4FafO3TRbQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"eslint-config-prettier": "^8.5.0",
|
||||
"eslint-config-standard": "^17.0.0",
|
||||
"eslint-plugin-import": "^2.26.0",
|
||||
"eslint-plugin-n": "^15.2.0",
|
||||
"eslint-plugin-n": "^15.2.1",
|
||||
"eslint-plugin-prettier": "^4.0.0",
|
||||
"eslint-plugin-promise": "^6.0.0",
|
||||
"eslint-plugin-vue": "^9.0.1"
|
||||
"eslint-plugin-vue": "^9.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@eslint/eslintrc": {
|
||||
@ -24244,19 +24283,19 @@
|
||||
}
|
||||
},
|
||||
"eslint-plugin-n": {
|
||||
"version": "15.2.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.0.tgz",
|
||||
"integrity": "sha512-lWLg++jGwC88GDGGBX3CMkk0GIWq0y41aH51lavWApOKcMQcYoL3Ayd0lEdtD3SnQtR+3qBvWQS3qGbR2BxRWg==",
|
||||
"version": "15.2.3",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.3.tgz",
|
||||
"integrity": "sha512-H+KC7U5R+3IWTeRnACm/4wlqLvS1Q7M6t7BGhn89qXDkZan8HTAEv3ouIONA0ifDwc2YzPFmyPzHuNLddNK4jw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"builtins": "^4.0.0",
|
||||
"builtins": "^5.0.1",
|
||||
"eslint-plugin-es": "^4.1.0",
|
||||
"eslint-utils": "^3.0.0",
|
||||
"ignore": "^5.1.1",
|
||||
"is-core-module": "^2.3.0",
|
||||
"minimatch": "^3.0.4",
|
||||
"is-core-module": "^2.9.0",
|
||||
"minimatch": "^3.1.2",
|
||||
"resolve": "^1.10.1",
|
||||
"semver": "^6.3.0"
|
||||
"semver": "^7.3.7"
|
||||
},
|
||||
"dependencies": {
|
||||
"eslint-utils": {
|
||||
@ -24279,6 +24318,33 @@
|
||||
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
|
||||
"integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==",
|
||||
"dev": true
|
||||
},
|
||||
"lru-cache": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||
"integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"yallist": "^4.0.0"
|
||||
}
|
||||
},
|
||||
"minimatch": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
|
||||
"integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
}
|
||||
},
|
||||
"semver": {
|
||||
"version": "7.3.7",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
|
||||
"integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lru-cache": "^6.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -24299,9 +24365,9 @@
|
||||
"requires": {}
|
||||
},
|
||||
"eslint-plugin-vue": {
|
||||
"version": "9.1.0",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.1.0.tgz",
|
||||
"integrity": "sha512-EPCeInPicQ/YyfOWJDr1yfEeSNoFCMzUus107lZyYi37xejdOolNzS5MXGXp8+9bkoKZMdv/1AcZzQebME6r+g==",
|
||||
"version": "9.1.1",
|
||||
"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.1.1.tgz",
|
||||
"integrity": "sha512-W9n5PB1X2jzC7CK6riG0oAcxjmKrjTF6+keL1rni8n57DZeilx/Fulz+IRJK3lYseLNAygN0I62L7DvioW40Tw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"eslint-utils": "^3.0.0",
|
||||
@ -24791,7 +24857,7 @@
|
||||
"glob-parent": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
|
||||
"integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
|
||||
"integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
|
||||
"requires": {
|
||||
"is-glob": "^3.1.0",
|
||||
"path-dirname": "^1.0.0"
|
||||
@ -25307,7 +25373,7 @@
|
||||
"trim-newlines": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz",
|
||||
"integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA="
|
||||
"integrity": "sha512-MTBWv3jhVjTU7XR3IQHllbiJs8sc75a80OEhB6or/q7pLTWgQ0bMGQXXYQSrSuXe6WiKWDZ5txXY5P59a/coVA=="
|
||||
},
|
||||
"universalify": {
|
||||
"version": "0.1.2",
|
||||
@ -26849,9 +26915,9 @@
|
||||
}
|
||||
},
|
||||
"markdown-it-anchor": {
|
||||
"version": "8.6.2",
|
||||
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.2.tgz",
|
||||
"integrity": "sha512-JNaekTlIwwyYGBN3zifZDxgz4bSL8sbEj58fdTZGmPSMMGXBZapFjcZk2I33Jy79c1fvCKHpF7MA/67FOTjvzA==",
|
||||
"version": "8.6.4",
|
||||
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz",
|
||||
"integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==",
|
||||
"requires": {}
|
||||
},
|
||||
"markdown-it-chain": {
|
||||
@ -26894,9 +26960,9 @@
|
||||
"integrity": "sha512-TAIHTHPwa9+ltKvKPWulm/beozQU41Ab+FIefRaQV1NRnpzwcV9QOe6wXQS5WLivm5Q/nlo0rl6laGkMDZE7Gw=="
|
||||
},
|
||||
"marked": {
|
||||
"version": "4.0.16",
|
||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.0.16.tgz",
|
||||
"integrity": "sha512-wahonIQ5Jnyatt2fn8KqF/nIqZM8mh3oRu2+l5EANGMhu6RFjiSG52QNE2eWzFMI94HqYSgN184NurgNG6CztA=="
|
||||
"version": "4.0.17",
|
||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz",
|
||||
"integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA=="
|
||||
},
|
||||
"material-design-icons-iconfont": {
|
||||
"version": "6.7.0",
|
||||
@ -28807,9 +28873,9 @@
|
||||
"integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc="
|
||||
},
|
||||
"prettier": {
|
||||
"version": "2.6.2",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz",
|
||||
"integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==",
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz",
|
||||
"integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==",
|
||||
"devOptional": true
|
||||
},
|
||||
"prettier-linter-helpers": {
|
||||
|
12
package.json
12
package.json
@ -27,12 +27,12 @@
|
||||
"@vuepress/plugin-pwa": "1.9.7",
|
||||
"babel-eslint": "10.1.0",
|
||||
"eslint": "7.32.0",
|
||||
"eslint-config-vuepress": "3.9.0",
|
||||
"eslint-config-vuepress": "3.10.0",
|
||||
"eslint-plugin-markdown": "2.2.1",
|
||||
"eslint-plugin-promise": "6.0.0",
|
||||
"eslint-plugin-vue": "9.1.0",
|
||||
"eslint-plugin-vue": "9.1.1",
|
||||
"node-sass": "6.0.1",
|
||||
"prettier": "2.6.2",
|
||||
"prettier": "2.7.1",
|
||||
"sass-loader": "10.2.1",
|
||||
"vuepress": "1.9.7",
|
||||
"vuepress-plugin-clean-urls": "1.1.2",
|
||||
@ -43,13 +43,13 @@
|
||||
},
|
||||
"dependencies": {
|
||||
"axios": "0.26.1",
|
||||
"@mr-hope/vuepress-plugin-sitemap": "1.28.5",
|
||||
"@mr-hope/vuepress-plugin-sitemap": "1.30.0",
|
||||
"core-js": "2.6.12",
|
||||
"docsearch.js": "2.6.3",
|
||||
"element-ui": "2.15.8",
|
||||
"element-ui": "2.15.9",
|
||||
"lodash.groupby": "4.6.0",
|
||||
"lodash.sortby": "4.7.0",
|
||||
"marked": "4.0.16",
|
||||
"marked": "4.0.17",
|
||||
"material-design-icons-iconfont": "6.7.0",
|
||||
"moment": "2.29.3",
|
||||
"vue": "2.6.14",
|
||||
|
@ -1,9 +1,3 @@
|
||||
<template>
|
||||
<div :id="name" class="slide">
|
||||
<slot />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "CarouselItem",
|
||||
@ -16,6 +10,12 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div :id="name" class="slide">
|
||||
<slot />
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style>
|
||||
.slide {
|
||||
align-items: center;
|
||||
|
@ -1,15 +1,3 @@
|
||||
<template>
|
||||
<VueAgile :id="name" :options="config">
|
||||
<slot />
|
||||
<template #prevButton>
|
||||
<MaterialIcon icon="navigate_next" />
|
||||
</template>
|
||||
<template #nextButton>
|
||||
<MaterialIcon icon="navigate_next" />
|
||||
</template>
|
||||
</VueAgile>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "CarouselWrapper",
|
||||
@ -31,6 +19,18 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<VueAgile :id="name" :options="config">
|
||||
<slot />
|
||||
<template #prevButton>
|
||||
<MaterialIcon icon="navigate_next" />
|
||||
</template>
|
||||
<template #nextButton>
|
||||
<MaterialIcon icon="navigate_next" />
|
||||
</template>
|
||||
</VueAgile>
|
||||
</template>
|
||||
|
||||
<style>
|
||||
.agile {
|
||||
background: #f0f4f8;
|
||||
|
@ -1,23 +1,3 @@
|
||||
<template>
|
||||
<div id="DownloadButtons">
|
||||
<ElButton type="success" icon="el-icon-download" @click="downloadStable" @keyup.enter="downloadStable">
|
||||
<span class="spacing">Stable</span>
|
||||
<br />
|
||||
<span class="downloadTag">{{ $data.tagName }}</span>
|
||||
</ElButton>
|
||||
<ElButton type="warning" icon="el-icon-cpu" @click="downloadPreview" @keyup.enter="downloadPreview">
|
||||
<span class="spacing">Preview</span>
|
||||
<br />
|
||||
<span class="downloadTag">{{ $data.previewTagName }}</span>
|
||||
</ElButton>
|
||||
<span class="versionNotice">
|
||||
Requires
|
||||
<strong>Android 6.0</strong>
|
||||
or higher.
|
||||
</span>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { GITHUB_PREVIEW_RELEASE, GITHUB_STABLE_RELEASE } from "../constants";
|
||||
|
||||
@ -122,6 +102,26 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div id="DownloadButtons">
|
||||
<ElButton type="success" icon="el-icon-download" @click="downloadStable" @keyup.enter="downloadStable">
|
||||
<span class="spacing">Stable</span>
|
||||
<br />
|
||||
<span class="downloadTag">{{ $data.tagName }}</span>
|
||||
</ElButton>
|
||||
<ElButton type="warning" icon="el-icon-cpu" @click="downloadPreview" @keyup.enter="downloadPreview">
|
||||
<span class="spacing">Preview</span>
|
||||
<br />
|
||||
<span class="downloadTag">{{ $data.previewTagName }}</span>
|
||||
</ElButton>
|
||||
<span class="versionNotice">
|
||||
Requires
|
||||
<strong>Android 6.0</strong>
|
||||
or higher.
|
||||
</span>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="stylus">
|
||||
#DownloadButtons
|
||||
text-align center
|
||||
|
@ -1,3 +1,33 @@
|
||||
<script>
|
||||
import { langName, simpleLangName } from "../scripts/languages";
|
||||
|
||||
export default {
|
||||
props: ["extensions"],
|
||||
emits: ["filters"],
|
||||
data() {
|
||||
return {
|
||||
filters: {
|
||||
search: "",
|
||||
lang: [],
|
||||
nsfw: "Don't care",
|
||||
sort: "Ascending",
|
||||
},
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
filters: {
|
||||
handler(value) {
|
||||
this.$emit("filters", this.filters);
|
||||
},
|
||||
deep: true,
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
simpleLangName,
|
||||
langName,
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<template>
|
||||
<span class="filters-list">
|
||||
<ElInput v-model="filters.search" placeholder="Search extensions by name or ID..." clearable />
|
||||
@ -29,36 +59,6 @@
|
||||
</div>
|
||||
</span>
|
||||
</template>
|
||||
<script>
|
||||
import { langName, simpleLangName } from "../scripts/languages";
|
||||
|
||||
export default {
|
||||
props: ["extensions"],
|
||||
emits: ["filters"],
|
||||
data() {
|
||||
return {
|
||||
filters: {
|
||||
search: "",
|
||||
lang: [],
|
||||
nsfw: "Don't care",
|
||||
sort: "Ascending",
|
||||
},
|
||||
};
|
||||
},
|
||||
watch: {
|
||||
filters: {
|
||||
handler(value) {
|
||||
this.$emit("filters", this.filters);
|
||||
},
|
||||
deep: true,
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
simpleLangName,
|
||||
langName,
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="stylus">
|
||||
.filters-list
|
||||
display flex
|
||||
|
@ -1,3 +1,22 @@
|
||||
<script>
|
||||
import { langName, simpleLangName } from "../scripts/languages";
|
||||
import ExtensionItem from "./ExtensionItem.vue";
|
||||
|
||||
export default {
|
||||
components: { ExtensionItem },
|
||||
props: ["list", "totalCount"],
|
||||
computed: {
|
||||
groupName: function () {
|
||||
const firstItem = this.list[0];
|
||||
return firstItem.lang === "en" ? simpleLangName(firstItem.lang) : langName(firstItem.lang);
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
simpleLangName,
|
||||
langName,
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<template>
|
||||
<div class="extension-group">
|
||||
<h3>
|
||||
@ -20,25 +39,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { langName, simpleLangName } from "../scripts/languages";
|
||||
import ExtensionItem from "./ExtensionItem.vue";
|
||||
|
||||
export default {
|
||||
components: { ExtensionItem },
|
||||
props: ["list", "totalCount"],
|
||||
computed: {
|
||||
groupName: function () {
|
||||
const firstItem = this.list[0];
|
||||
return firstItem.lang === "en" ? simpleLangName(firstItem.lang) : langName(firstItem.lang);
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
simpleLangName,
|
||||
langName,
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="stylus">
|
||||
.extensions-total
|
||||
float right
|
||||
|
@ -1,22 +1,3 @@
|
||||
<template>
|
||||
<div v-if="item" class="extension">
|
||||
<a :href="`#${pkgId}`" class="header-anchor" aria-hidden="true" @click.stop>#</a>
|
||||
<img class="extension-icon" :src="iconUrl" loading="lazy" width="42" height="42" />
|
||||
<div class="extension-text">
|
||||
<div class="upper">
|
||||
{{ pkgName }}
|
||||
<Badge :text="pkgVersion" />
|
||||
</div>
|
||||
<div class="lower">
|
||||
{{ pkgId }}
|
||||
</div>
|
||||
</div>
|
||||
<a :href="apkUrl" class="extension-download" title="Download APK" download>
|
||||
<MaterialIcon icon="cloud_download" />
|
||||
<span>Download</span>
|
||||
</a>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
props: ["item"],
|
||||
@ -40,6 +21,25 @@ export default {
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<template>
|
||||
<div v-if="item" class="extension">
|
||||
<a :href="`#${pkgId}`" class="header-anchor" aria-hidden="true" @click.stop>#</a>
|
||||
<img class="extension-icon" :src="iconUrl" loading="lazy" width="42" height="42" />
|
||||
<div class="extension-text">
|
||||
<div class="upper">
|
||||
{{ pkgName }}
|
||||
<Badge :text="pkgVersion" />
|
||||
</div>
|
||||
<div class="lower">
|
||||
{{ pkgId }}
|
||||
</div>
|
||||
</div>
|
||||
<a :href="apkUrl" class="extension-download" title="Download APK" download>
|
||||
<MaterialIcon icon="cloud_download" />
|
||||
<span>Download</span>
|
||||
</a>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="stylus">
|
||||
.extension
|
||||
align-items center
|
||||
|
@ -1,10 +1,3 @@
|
||||
<template>
|
||||
<div class="extension-list">
|
||||
<div v-for="group in extensions" :key="group[0].lang">
|
||||
<ExtensionGroup :list="group" :total-count="totalCount" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import ExtensionGroup from "./ExtensionGroup.vue";
|
||||
|
||||
@ -18,6 +11,13 @@ export default {
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<template>
|
||||
<div class="extension-list">
|
||||
<div v-for="group in extensions" :key="group[0].lang">
|
||||
<ExtensionGroup :list="group" :total-count="totalCount" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<style lang="stylus">
|
||||
.extension-list
|
||||
h3
|
||||
|
@ -1,10 +1,3 @@
|
||||
<template>
|
||||
<div v-if="loading" v-loading.lock="loading" style="min-height: 200px"></div>
|
||||
<div v-else>
|
||||
<ExtensionFilters :extensions="extensions" @filters="filters = $event" />
|
||||
<ExtensionList :extensions="filteredExtensions" />
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import axios from "axios";
|
||||
import groupBy from "lodash.groupby";
|
||||
@ -101,3 +94,10 @@ export default {
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<template>
|
||||
<div v-if="loading" v-loading.lock="loading" style="min-height: 200px"></div>
|
||||
<div v-else>
|
||||
<ExtensionFilters :extensions="extensions" @filters="filters = $event" />
|
||||
<ExtensionList :extensions="filteredExtensions" />
|
||||
</div>
|
||||
</template>
|
||||
|
@ -1,20 +1,3 @@
|
||||
<template>
|
||||
<div class="downloadContainer">
|
||||
<button class="downloadForkButton" :style="downloadForkStyle" @click="downloadFork">
|
||||
{{ downloadForkLabel }}
|
||||
</button>
|
||||
<button class="githubForkButton" :style="githubForkStyle" :onclick="'window.open(\'' + githubForkLink + '\')'">
|
||||
{{ githubForkLabel }}
|
||||
</button>
|
||||
<br />
|
||||
<span class="versionNotice">
|
||||
Requires
|
||||
<strong>Android {{ androidVersion }}</strong>
|
||||
or higher.
|
||||
</span>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import axios from "axios";
|
||||
|
||||
@ -97,6 +80,23 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="downloadContainer">
|
||||
<button class="downloadForkButton" :style="downloadForkStyle" @click="downloadFork">
|
||||
{{ downloadForkLabel }}
|
||||
</button>
|
||||
<button class="githubForkButton" :style="githubForkStyle" :onclick="'window.open(\'' + githubForkLink + '\')'">
|
||||
{{ githubForkLabel }}
|
||||
</button>
|
||||
<br />
|
||||
<span class="versionNotice">
|
||||
Requires
|
||||
<strong>Android {{ androidVersion }}</strong>
|
||||
or higher.
|
||||
</span>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="stylus">
|
||||
.downloadContainer
|
||||
user-select none
|
||||
|
@ -1,3 +1,12 @@
|
||||
<script>
|
||||
import PageEdit from "@theme/components/PageEdit.vue";
|
||||
import Layout from "@theme/layouts/Layout.vue";
|
||||
|
||||
export default {
|
||||
components: { PageEdit, Layout },
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<Layout :class="$frontmatter.title">
|
||||
<main class="page">
|
||||
@ -11,15 +20,6 @@
|
||||
</Layout>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import PageEdit from "@theme/components/PageEdit.vue";
|
||||
import Layout from "@theme/layouts/Layout.vue";
|
||||
|
||||
export default {
|
||||
components: { PageEdit, Layout },
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="stylus">
|
||||
.page
|
||||
padding-bottom 2rem
|
||||
|
@ -1,3 +1,45 @@
|
||||
<script>
|
||||
import AlgoliaSearchBox from "@theme/components/AlgoliaSearchBox.vue";
|
||||
import NavBar from "@theme/components/NavBar.vue";
|
||||
import ClipboardListIcon from "vue-material-design-icons/ClipboardList.vue";
|
||||
import ClipboardSearchIcon from "vue-material-design-icons/ClipboardSearch.vue";
|
||||
import DiscordIcon from "vue-material-design-icons/Discord.vue";
|
||||
import FaqIcon from "vue-material-design-icons/FrequentlyAskedQuestions.vue";
|
||||
import GithubIcon from "vue-material-design-icons/Github.vue";
|
||||
import LifebuoyIcon from "vue-material-design-icons/Lifebuoy.vue";
|
||||
import RedditIcon from "vue-material-design-icons/Reddit.vue";
|
||||
import SourceForkIcon from "vue-material-design-icons/SourceFork.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
NavBar,
|
||||
AlgoliaSearchBox,
|
||||
ClipboardListIcon,
|
||||
SourceForkIcon,
|
||||
DiscordIcon,
|
||||
RedditIcon,
|
||||
GithubIcon,
|
||||
LifebuoyIcon,
|
||||
ClipboardSearchIcon,
|
||||
FaqIcon,
|
||||
},
|
||||
|
||||
computed: {
|
||||
data() {
|
||||
return this.$page.frontmatter;
|
||||
},
|
||||
|
||||
algolia() {
|
||||
return this.$themeLocaleConfig.algolia || this.$site.themeConfig.algolia || {};
|
||||
},
|
||||
|
||||
isAlgoliaSearch() {
|
||||
return this.algolia && this.algolia.apiKey && this.algolia.indexName;
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="theme-container help-page">
|
||||
<NavBar />
|
||||
@ -87,48 +129,6 @@
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AlgoliaSearchBox from "@theme/components/AlgoliaSearchBox.vue";
|
||||
import NavBar from "@theme/components/NavBar.vue";
|
||||
import ClipboardListIcon from "vue-material-design-icons/ClipboardList.vue";
|
||||
import ClipboardSearchIcon from "vue-material-design-icons/ClipboardSearch.vue";
|
||||
import DiscordIcon from "vue-material-design-icons/Discord.vue";
|
||||
import FaqIcon from "vue-material-design-icons/FrequentlyAskedQuestions.vue";
|
||||
import GithubIcon from "vue-material-design-icons/Github.vue";
|
||||
import LifebuoyIcon from "vue-material-design-icons/Lifebuoy.vue";
|
||||
import RedditIcon from "vue-material-design-icons/Reddit.vue";
|
||||
import SourceForkIcon from "vue-material-design-icons/SourceFork.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
NavBar,
|
||||
AlgoliaSearchBox,
|
||||
ClipboardListIcon,
|
||||
SourceForkIcon,
|
||||
DiscordIcon,
|
||||
RedditIcon,
|
||||
GithubIcon,
|
||||
LifebuoyIcon,
|
||||
ClipboardSearchIcon,
|
||||
FaqIcon,
|
||||
},
|
||||
|
||||
computed: {
|
||||
data() {
|
||||
return this.$page.frontmatter;
|
||||
},
|
||||
|
||||
algolia() {
|
||||
return this.$themeLocaleConfig.algolia || this.$site.themeConfig.algolia || {};
|
||||
},
|
||||
|
||||
isAlgoliaSearch() {
|
||||
return this.algolia && this.algolia.apiKey && this.algolia.indexName;
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="stylus">
|
||||
.help-page
|
||||
.page
|
||||
|
@ -1,10 +1,3 @@
|
||||
<template>
|
||||
<i v-if="iconOnly" :class="name" class="material-icons">{{ icon }}</i>
|
||||
<div v-else :class="name" class="material-holder">
|
||||
<i class="material-icons">{{ icon }}</i>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
/**
|
||||
* For material icon references use https://material.io/resources/icons/
|
||||
@ -28,6 +21,13 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<i v-if="iconOnly" :class="name" class="material-icons">{{ icon }}</i>
|
||||
<div v-else :class="name" class="material-holder">
|
||||
<i class="material-icons">{{ icon }}</i>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
$material-design-icons-font-directory-path: "~material-design-icons-iconfont/dist/fonts/";
|
||||
@import "~material-design-icons-iconfont/src/material-design-icons";
|
||||
|
@ -1,18 +1,3 @@
|
||||
<template>
|
||||
<span v-if="nav.link" id="NavigationVue" class="app-navigation" :class="nav.class" title="App navigation">
|
||||
<a class="app-link" :href="nav.link + entry">
|
||||
<MaterialIcon v-if="nav.icon" class="app-icon" :icon="nav.icon" />
|
||||
<span class="app-label" :class="nav.internalClass">{{ nav.text }}</span>
|
||||
<slot />
|
||||
</a>
|
||||
</span>
|
||||
<span v-else id="NavigationVue" class="app-navigation" :class="nav.class" title="App navigation">
|
||||
<MaterialIcon v-if="nav.icon" class="app-icon" :icon="nav.icon" />
|
||||
<span class="app-label" :class="nav.internalClass">{{ nav.text }}</span>
|
||||
<slot />
|
||||
</span>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
/**
|
||||
* Code example: <NavigationText item="library"/>
|
||||
@ -94,6 +79,21 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<span v-if="nav.link" id="NavigationVue" class="app-navigation" :class="nav.class" title="App navigation">
|
||||
<a class="app-link" :href="nav.link + entry">
|
||||
<MaterialIcon v-if="nav.icon" class="app-icon" :icon="nav.icon" />
|
||||
<span class="app-label" :class="nav.internalClass">{{ nav.text }}</span>
|
||||
<slot />
|
||||
</a>
|
||||
</span>
|
||||
<span v-else id="NavigationVue" class="app-navigation" :class="nav.class" title="App navigation">
|
||||
<MaterialIcon v-if="nav.icon" class="app-icon" :icon="nav.icon" />
|
||||
<span class="app-label" :class="nav.internalClass">{{ nav.text }}</span>
|
||||
<slot />
|
||||
</span>
|
||||
</template>
|
||||
|
||||
<style lang="stylus">
|
||||
#NavigationVue
|
||||
&.app-navigation
|
||||
|
@ -1,17 +1,3 @@
|
||||
<template>
|
||||
<div v-if="stable" class="buildTime">
|
||||
<ElTooltip :content="stablePublishExact" placement="top" :open-delay="250">
|
||||
<span>{{ stablePublishRelative }}</span>
|
||||
</ElTooltip>
|
||||
</div>
|
||||
<div v-else-if="preview" class="buildTime">
|
||||
<ElTooltip :content="previewPublishExact" placement="bottom-end" :open-delay="250">
|
||||
<span>{{ previewPublishRelative }}</span>
|
||||
</ElTooltip>
|
||||
</div>
|
||||
<span v-else>You need to specify props.</span>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
/**
|
||||
* Code example: <ReleaseDate preview />
|
||||
@ -56,6 +42,20 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div v-if="stable" class="buildTime">
|
||||
<ElTooltip :content="stablePublishExact" placement="top" :open-delay="250">
|
||||
<span>{{ stablePublishRelative }}</span>
|
||||
</ElTooltip>
|
||||
</div>
|
||||
<div v-else-if="preview" class="buildTime">
|
||||
<ElTooltip :content="previewPublishExact" placement="bottom-end" :open-delay="250">
|
||||
<span>{{ previewPublishRelative }}</span>
|
||||
</ElTooltip>
|
||||
</div>
|
||||
<span v-else>You need to specify props.</span>
|
||||
</template>
|
||||
|
||||
<style lang="stylus" scoped>
|
||||
.buildTime
|
||||
font-weight 500
|
||||
|
@ -1,19 +1,3 @@
|
||||
<template>
|
||||
<span v-if="stable" class="downloadTag">{{ $data.tagName }}</span>
|
||||
<span v-else-if="fileName" class="fileNameContainer" title="File name">
|
||||
<MaterialIcon class="fileNameIcon" icon="get_app" />
|
||||
<span class="fileName">tachiyomi-v{{ $data.tagName }}.apk</span>
|
||||
<slot />
|
||||
</span>
|
||||
<span v-else-if="preview" class="downloadTag">{{ $data.previewTagName }}</span>
|
||||
<span v-else-if="previewFileName" class="fileNameContainer" title="File name">
|
||||
<MaterialIcon class="fileNameIcon" icon="get_app" />
|
||||
<span class="fileName">tachiyomi-{{ $data.previewTagName }}.apk</span>
|
||||
<slot />
|
||||
</span>
|
||||
<span v-else>You need to specify props.</span>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
/**
|
||||
* Code example: <VersionTag preview />
|
||||
@ -62,6 +46,22 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<span v-if="stable" class="downloadTag">{{ $data.tagName }}</span>
|
||||
<span v-else-if="fileName" class="fileNameContainer" title="File name">
|
||||
<MaterialIcon class="fileNameIcon" icon="get_app" />
|
||||
<span class="fileName">tachiyomi-v{{ $data.tagName }}.apk</span>
|
||||
<slot />
|
||||
</span>
|
||||
<span v-else-if="preview" class="downloadTag">{{ $data.previewTagName }}</span>
|
||||
<span v-else-if="previewFileName" class="fileNameContainer" title="File name">
|
||||
<MaterialIcon class="fileNameIcon" icon="get_app" />
|
||||
<span class="fileName">tachiyomi-{{ $data.previewTagName }}.apk</span>
|
||||
<slot />
|
||||
</span>
|
||||
<span v-else>You need to specify props.</span>
|
||||
</template>
|
||||
|
||||
<style lang="stylus" scoped>
|
||||
.fileNameContainer
|
||||
white-space nowrap
|
||||
|
@ -1,22 +1,3 @@
|
||||
<template>
|
||||
<div class="guide whatsNew">
|
||||
<p class="title">
|
||||
<MaterialIcon icon="new_releases" />
|
||||
What's new
|
||||
</p>
|
||||
<!-- eslint-disable-next-line vue/no-v-html -->
|
||||
<div v-html="whatsNew"></div>
|
||||
<div class="note">
|
||||
<p>
|
||||
View the full release
|
||||
<a href="https://github.com/tachiyomiorg/tachiyomi/releases/latest" target="_blank" rel="noopener">
|
||||
here
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { marked } from "marked";
|
||||
|
||||
@ -41,6 +22,25 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="guide whatsNew">
|
||||
<p class="title">
|
||||
<MaterialIcon icon="new_releases" />
|
||||
What's new
|
||||
</p>
|
||||
<!-- eslint-disable-next-line vue/no-v-html -->
|
||||
<div v-html="whatsNew"></div>
|
||||
<div class="note">
|
||||
<p>
|
||||
View the full release
|
||||
<a href="https://github.com/tachiyomiorg/tachiyomi/releases/latest" target="_blank" rel="noopener">
|
||||
here
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style lang="stylus">
|
||||
.whatsNew
|
||||
.title
|
||||
|
@ -1,9 +1,3 @@
|
||||
<template>
|
||||
<form id="search-form" class="algolia-search-wrapper search-box" role="search">
|
||||
<input id="algolia-search-input" class="search-query" :placeholder="placeholder" />
|
||||
</form>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "AlgoliaSearchBox",
|
||||
@ -70,6 +64,12 @@ export default {
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<form id="search-form" class="algolia-search-wrapper search-box" role="search">
|
||||
<input id="algolia-search-input" class="search-query" :placeholder="placeholder" />
|
||||
</form>
|
||||
</template>
|
||||
|
||||
<style lang="stylus">
|
||||
.algolia-search-wrapper
|
||||
& > span
|
||||
|
@ -1,3 +1,37 @@
|
||||
<script>
|
||||
import BookOpenVariantIcon from "vue-material-design-icons/BookOpenVariant.vue";
|
||||
import CloudDownloadIcon from "vue-material-design-icons/CloudDownload.vue";
|
||||
|
||||
export default {
|
||||
name: "Home",
|
||||
|
||||
components: {
|
||||
CloudDownloadIcon,
|
||||
BookOpenVariantIcon,
|
||||
},
|
||||
|
||||
computed: {
|
||||
data() {
|
||||
return this.$page.frontmatter;
|
||||
},
|
||||
|
||||
buttonDownload() {
|
||||
return {
|
||||
link: this.data.buttonDownloadLink,
|
||||
text: this.data.buttonDownload,
|
||||
};
|
||||
},
|
||||
|
||||
buttonGuidesLink() {
|
||||
return {
|
||||
link: this.data.buttonGuidesLink,
|
||||
text: this.data.buttonGuides,
|
||||
};
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<main class="home" aria-labelledby="main-title">
|
||||
<header class="hero">
|
||||
@ -74,40 +108,6 @@
|
||||
</main>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import BookOpenVariantIcon from "vue-material-design-icons/BookOpenVariant.vue";
|
||||
import CloudDownloadIcon from "vue-material-design-icons/CloudDownload.vue";
|
||||
|
||||
export default {
|
||||
name: "Home",
|
||||
|
||||
components: {
|
||||
CloudDownloadIcon,
|
||||
BookOpenVariantIcon,
|
||||
},
|
||||
|
||||
computed: {
|
||||
data() {
|
||||
return this.$page.frontmatter;
|
||||
},
|
||||
|
||||
buttonDownload() {
|
||||
return {
|
||||
link: this.data.buttonDownloadLink,
|
||||
text: this.data.buttonDownload,
|
||||
};
|
||||
},
|
||||
|
||||
buttonGuidesLink() {
|
||||
return {
|
||||
link: this.data.buttonGuidesLink,
|
||||
text: this.data.buttonGuides,
|
||||
};
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="stylus">
|
||||
.home
|
||||
display block
|
||||
|
@ -1,38 +1,3 @@
|
||||
<template>
|
||||
<header class="navbar">
|
||||
<!-- eslint-disable-next-line vue/require-explicit-emits -->
|
||||
<SidebarButton @toggle-sidebar="$emit('toggle-sidebar')" />
|
||||
|
||||
<RouterLink :to="$localePath" class="home-link">
|
||||
<img
|
||||
v-if="$site.themeConfig.logo"
|
||||
class="logo"
|
||||
:src="$withBase($site.themeConfig.logo)"
|
||||
:alt="$siteTitle"
|
||||
/>
|
||||
<span v-if="$siteTitle" ref="siteName" class="site-name" :class="{ 'can-hide': $site.themeConfig.logo }">
|
||||
{{ $siteTitle }}
|
||||
</span>
|
||||
</RouterLink>
|
||||
|
||||
<div
|
||||
class="links"
|
||||
:style="
|
||||
linksWrapMaxWidth
|
||||
? {
|
||||
'max-width': linksWrapMaxWidth + 'px',
|
||||
}
|
||||
: {}
|
||||
"
|
||||
>
|
||||
<div v-if="$page.frontmatter.hideSearch" />
|
||||
<AlgoliaSearchBox v-else-if="isAlgoliaSearch" :options="algolia" />
|
||||
<SearchBox v-else-if="$site.themeConfig.search !== false && $page.frontmatter.search !== false" />
|
||||
<NavLinks class="can-hide" />
|
||||
</div>
|
||||
</header>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import SearchBox from "@SearchBox";
|
||||
import NavLinks from "@theme/components/NavLinks.vue";
|
||||
@ -95,6 +60,41 @@ function css(el, property) {
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<header class="navbar">
|
||||
<!-- eslint-disable-next-line vue/require-explicit-emits -->
|
||||
<SidebarButton @toggle-sidebar="$emit('toggle-sidebar')" />
|
||||
|
||||
<RouterLink :to="$localePath" class="home-link">
|
||||
<img
|
||||
v-if="$site.themeConfig.logo"
|
||||
class="logo"
|
||||
:src="$withBase($site.themeConfig.logo)"
|
||||
:alt="$siteTitle"
|
||||
/>
|
||||
<span v-if="$siteTitle" ref="siteName" class="site-name" :class="{ 'can-hide': $site.themeConfig.logo }">
|
||||
{{ $siteTitle }}
|
||||
</span>
|
||||
</RouterLink>
|
||||
|
||||
<div
|
||||
class="links"
|
||||
:style="
|
||||
linksWrapMaxWidth
|
||||
? {
|
||||
'max-width': linksWrapMaxWidth + 'px',
|
||||
}
|
||||
: {}
|
||||
"
|
||||
>
|
||||
<div v-if="$page.frontmatter.hideSearch" />
|
||||
<AlgoliaSearchBox v-else-if="isAlgoliaSearch" :options="algolia" />
|
||||
<SearchBox v-else-if="$site.themeConfig.search !== false && $page.frontmatter.search !== false" />
|
||||
<NavLinks class="can-hide" />
|
||||
</div>
|
||||
</header>
|
||||
</template>
|
||||
|
||||
<style lang="stylus">
|
||||
$navbar-vertical-padding = 0.7rem
|
||||
$navbar-horizontal-padding = 1.5rem
|
||||
|
Loading…
Reference in New Issue
Block a user