Bump dependencies

This commit is contained in:
arkon 2022-06-28 09:19:19 -04:00
parent 65f05f55ad
commit 78e482d269
21 changed files with 494 additions and 428 deletions

242
package-lock.json generated
View File

@ -9,14 +9,14 @@
"version": "1.0.0", "version": "1.0.0",
"license": "MPL-2.0", "license": "MPL-2.0",
"dependencies": { "dependencies": {
"@mr-hope/vuepress-plugin-sitemap": "1.28.5", "@mr-hope/vuepress-plugin-sitemap": "1.30.0",
"axios": "0.26.1", "axios": "0.26.1",
"core-js": "2.6.12", "core-js": "2.6.12",
"docsearch.js": "2.6.3", "docsearch.js": "2.6.3",
"element-ui": "2.15.8", "element-ui": "2.15.9",
"lodash.groupby": "4.6.0", "lodash.groupby": "4.6.0",
"lodash.sortby": "4.7.0", "lodash.sortby": "4.7.0",
"marked": "4.0.16", "marked": "4.0.17",
"material-design-icons-iconfont": "6.7.0", "material-design-icons-iconfont": "6.7.0",
"moment": "2.29.3", "moment": "2.29.3",
"vue": "2.6.14", "vue": "2.6.14",
@ -35,12 +35,12 @@
"@vuepress/plugin-pwa": "1.9.7", "@vuepress/plugin-pwa": "1.9.7",
"babel-eslint": "10.1.0", "babel-eslint": "10.1.0",
"eslint": "7.32.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-markdown": "2.2.1",
"eslint-plugin-promise": "6.0.0", "eslint-plugin-promise": "6.0.0",
"eslint-plugin-vue": "9.1.0", "eslint-plugin-vue": "9.1.1",
"node-sass": "6.0.1", "node-sass": "6.0.1",
"prettier": "2.6.2", "prettier": "2.7.1",
"sass-loader": "10.2.1", "sass-loader": "10.2.1",
"vuepress": "1.9.7", "vuepress": "1.9.7",
"vuepress-plugin-clean-urls": "1.1.2", "vuepress-plugin-clean-urls": "1.1.2",
@ -1828,11 +1828,11 @@
} }
}, },
"node_modules/@mr-hope/vuepress-plugin-sitemap": { "node_modules/@mr-hope/vuepress-plugin-sitemap": {
"version": "1.28.5", "version": "1.30.0",
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-1.28.5.tgz", "resolved": "https://registry.npmjs.org/@mr-hope/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-1.30.0.tgz",
"integrity": "sha512-8G+7Ya36uYKUNzTi+bJV14E6P3P1huE4lO8+WeOJ/rIe5NNCS3Z4AkB7zDTeWGMbvAWLMLMJfGFJ/EAUSf3plg==", "integrity": "sha512-RWpyvsB8y4WlAc4jh84uogw03U4mGUsmSy/nf7m+kD3fPHQEfyL4CI/Boh1LDc//D6SsuZeL0QVUB/T+bJKz4A==",
"dependencies": { "dependencies": {
"@mr-hope/vuepress-types": "1.28.3", "@mr-hope/vuepress-types": "1.30.0",
"@types/fs-extra": "^9.0.13", "@types/fs-extra": "^9.0.13",
"chalk": "^4.1.2", "chalk": "^4.1.2",
"fs-extra": "^10.1.0", "fs-extra": "^10.1.0",
@ -1840,9 +1840,9 @@
} }
}, },
"node_modules/@mr-hope/vuepress-types": { "node_modules/@mr-hope/vuepress-types": {
"version": "1.28.3", "version": "1.30.0",
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-types/-/vuepress-types-1.28.3.tgz", "resolved": "https://registry.npmjs.org/@mr-hope/vuepress-types/-/vuepress-types-1.30.0.tgz",
"integrity": "sha512-c/adRtW6G4B5dA8k2pbQF+8LenzPbjEmmQnIJ/7zfkhw81XboRN0v3EgBW5T2l4xggOJQCPwG+/4XNLXOGPENg==", "integrity": "sha512-XsPxmevdUxrKKx5l/1JS/wkzzRWMcd1wGrQaahETUbeZ9HuxUCNrLnUc9aH8ngss91LZ01qPiAx69zxIBQUcOw==",
"dependencies": { "dependencies": {
"@types/express": "^4.17.13", "@types/express": "^4.17.13",
"@types/markdown-it": "^10.0.3", "@types/markdown-it": "^10.0.3",
@ -4220,9 +4220,9 @@
"integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug="
}, },
"node_modules/builtins": { "node_modules/builtins": {
"version": "4.1.0", "version": "5.0.1",
"resolved": "https://registry.npmjs.org/builtins/-/builtins-4.1.0.tgz", "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz",
"integrity": "sha512-1bPRZQtmKaO6h7qV1YHXNtr6nCK28k0Zo95KM4dXfILcZZwoHJBN1m3lfLv9LPkcOZlrSr+J1bzMaZFO98Yq0w==", "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"semver": "^7.0.0" "semver": "^7.0.0"
@ -4771,7 +4771,7 @@
"node_modules/chokidar/node_modules/glob-parent": { "node_modules/chokidar/node_modules/glob-parent": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "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": { "dependencies": {
"is-glob": "^3.1.0", "is-glob": "^3.1.0",
"path-dirname": "^1.0.0" "path-dirname": "^1.0.0"
@ -5432,7 +5432,7 @@
"node_modules/copy-webpack-plugin/node_modules/glob-parent": { "node_modules/copy-webpack-plugin/node_modules/glob-parent": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "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": { "dependencies": {
"is-glob": "^3.1.0", "is-glob": "^3.1.0",
"path-dirname": "^1.0.0" "path-dirname": "^1.0.0"
@ -6488,9 +6488,9 @@
"integrity": "sha512-mfBcbqc0qc6RlxrsIgLG2wCqkiPAjEezHxGTu7p3dHHFOurH4EjS9rFZndX5axC8264rI1Pcbw8uQP39oZckeA==" "integrity": "sha512-mfBcbqc0qc6RlxrsIgLG2wCqkiPAjEezHxGTu7p3dHHFOurH4EjS9rFZndX5axC8264rI1Pcbw8uQP39oZckeA=="
}, },
"node_modules/element-ui": { "node_modules/element-ui": {
"version": "2.15.8", "version": "2.15.9",
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.8.tgz", "resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.9.tgz",
"integrity": "sha512-N54zxosRFqpYax3APY3GeRmtOZwIls6Z756WM0kdPZ5Q92PIeKHnZgF1StlamIg9bLxP1k+qdhTZvIeQlim09A==", "integrity": "sha512-dx45nQLt4Hn87/Z9eRr3ex6KFZbxlFAwEU3QoW3wA5EsYftvHTyL9Pq7VnXXD7hu1Eiaup2jcs6kp+/VSFmXuA==",
"dependencies": { "dependencies": {
"async-validator": "~1.8.1", "async-validator": "~1.8.1",
"babel-helper-vue-jsx-merge-props": "^2.0.0", "babel-helper-vue-jsx-merge-props": "^2.0.0",
@ -7045,18 +7045,18 @@
} }
}, },
"node_modules/eslint-config-vuepress": { "node_modules/eslint-config-vuepress": {
"version": "3.9.0", "version": "3.10.0",
"resolved": "https://registry.npmjs.org/eslint-config-vuepress/-/eslint-config-vuepress-3.9.0.tgz", "resolved": "https://registry.npmjs.org/eslint-config-vuepress/-/eslint-config-vuepress-3.10.0.tgz",
"integrity": "sha512-zraEmHRt2BNc4k0/PkD6HrNXVdg4x5gbMHAZ3CycksOItVJoW7Qe2vq6bR5bEjYt4G4Ks9HeW9LEAgGIFSGE2Q==", "integrity": "sha512-Aej2ifGTxqigU08oLxxBjLbulPxe1KOcTz7mZRLbyzfPmS1nxlUd0d6LEFeEmBoiOOPw1+zoJWhI4FafO3TRbQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"eslint-config-prettier": "^8.5.0", "eslint-config-prettier": "^8.5.0",
"eslint-config-standard": "^17.0.0", "eslint-config-standard": "^17.0.0",
"eslint-plugin-import": "^2.26.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-prettier": "^4.0.0",
"eslint-plugin-promise": "^6.0.0", "eslint-plugin-promise": "^6.0.0",
"eslint-plugin-vue": "^9.0.1" "eslint-plugin-vue": "^9.1.0"
}, },
"peerDependencies": { "peerDependencies": {
"@babel/core": "^7.18.2", "@babel/core": "^7.18.2",
@ -7484,19 +7484,19 @@
} }
}, },
"node_modules/eslint-plugin-n": { "node_modules/eslint-plugin-n": {
"version": "15.2.0", "version": "15.2.3",
"resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.0.tgz", "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.3.tgz",
"integrity": "sha512-lWLg++jGwC88GDGGBX3CMkk0GIWq0y41aH51lavWApOKcMQcYoL3Ayd0lEdtD3SnQtR+3qBvWQS3qGbR2BxRWg==", "integrity": "sha512-H+KC7U5R+3IWTeRnACm/4wlqLvS1Q7M6t7BGhn89qXDkZan8HTAEv3ouIONA0ifDwc2YzPFmyPzHuNLddNK4jw==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"builtins": "^4.0.0", "builtins": "^5.0.1",
"eslint-plugin-es": "^4.1.0", "eslint-plugin-es": "^4.1.0",
"eslint-utils": "^3.0.0", "eslint-utils": "^3.0.0",
"ignore": "^5.1.1", "ignore": "^5.1.1",
"is-core-module": "^2.3.0", "is-core-module": "^2.9.0",
"minimatch": "^3.0.4", "minimatch": "^3.1.2",
"resolve": "^1.10.1", "resolve": "^1.10.1",
"semver": "^6.3.0" "semver": "^7.3.7"
}, },
"engines": { "engines": {
"node": ">=12.22.0" "node": ">=12.22.0"
@ -7544,6 +7544,45 @@
"node": ">= 4" "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": { "node_modules/eslint-plugin-prettier": {
"version": "4.0.0", "version": "4.0.0",
"resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz", "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.0.0.tgz",
@ -7578,9 +7617,9 @@
} }
}, },
"node_modules/eslint-plugin-vue": { "node_modules/eslint-plugin-vue": {
"version": "9.1.0", "version": "9.1.1",
"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.1.0.tgz", "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.1.1.tgz",
"integrity": "sha512-EPCeInPicQ/YyfOWJDr1yfEeSNoFCMzUus107lZyYi37xejdOolNzS5MXGXp8+9bkoKZMdv/1AcZzQebME6r+g==", "integrity": "sha512-W9n5PB1X2jzC7CK6riG0oAcxjmKrjTF6+keL1rni8n57DZeilx/Fulz+IRJK3lYseLNAygN0I62L7DvioW40Tw==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"eslint-utils": "^3.0.0", "eslint-utils": "^3.0.0",
@ -8334,7 +8373,7 @@
"node_modules/fast-glob/node_modules/glob-parent": { "node_modules/fast-glob/node_modules/glob-parent": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "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": { "dependencies": {
"is-glob": "^3.1.0", "is-glob": "^3.1.0",
"path-dirname": "^1.0.0" "path-dirname": "^1.0.0"
@ -9006,7 +9045,7 @@
"node_modules/generate-robotstxt/node_modules/trim-newlines": { "node_modules/generate-robotstxt/node_modules/trim-newlines": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz",
"integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", "integrity": "sha512-MTBWv3jhVjTU7XR3IQHllbiJs8sc75a80OEhB6or/q7pLTWgQ0bMGQXXYQSrSuXe6WiKWDZ5txXY5P59a/coVA==",
"engines": { "engines": {
"node": ">=4" "node": ">=4"
} }
@ -11047,9 +11086,9 @@
} }
}, },
"node_modules/markdown-it-anchor": { "node_modules/markdown-it-anchor": {
"version": "8.6.2", "version": "8.6.4",
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.2.tgz", "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz",
"integrity": "sha512-JNaekTlIwwyYGBN3zifZDxgz4bSL8sbEj58fdTZGmPSMMGXBZapFjcZk2I33Jy79c1fvCKHpF7MA/67FOTjvzA==", "integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==",
"peerDependencies": { "peerDependencies": {
"@types/markdown-it": "*", "@types/markdown-it": "*",
"markdown-it": "*" "markdown-it": "*"
@ -11120,9 +11159,9 @@
} }
}, },
"node_modules/marked": { "node_modules/marked": {
"version": "4.0.16", "version": "4.0.17",
"resolved": "https://registry.npmjs.org/marked/-/marked-4.0.16.tgz", "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz",
"integrity": "sha512-wahonIQ5Jnyatt2fn8KqF/nIqZM8mh3oRu2+l5EANGMhu6RFjiSG52QNE2eWzFMI94HqYSgN184NurgNG6CztA==", "integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA==",
"bin": { "bin": {
"marked": "bin/marked.js" "marked": "bin/marked.js"
}, },
@ -13516,9 +13555,9 @@
} }
}, },
"node_modules/prettier": { "node_modules/prettier": {
"version": "2.6.2", "version": "2.7.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz",
"integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==", "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==",
"devOptional": true, "devOptional": true,
"bin": { "bin": {
"prettier": "bin-prettier.js" "prettier": "bin-prettier.js"
@ -19649,11 +19688,11 @@
} }
}, },
"@mr-hope/vuepress-plugin-sitemap": { "@mr-hope/vuepress-plugin-sitemap": {
"version": "1.28.5", "version": "1.30.0",
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-1.28.5.tgz", "resolved": "https://registry.npmjs.org/@mr-hope/vuepress-plugin-sitemap/-/vuepress-plugin-sitemap-1.30.0.tgz",
"integrity": "sha512-8G+7Ya36uYKUNzTi+bJV14E6P3P1huE4lO8+WeOJ/rIe5NNCS3Z4AkB7zDTeWGMbvAWLMLMJfGFJ/EAUSf3plg==", "integrity": "sha512-RWpyvsB8y4WlAc4jh84uogw03U4mGUsmSy/nf7m+kD3fPHQEfyL4CI/Boh1LDc//D6SsuZeL0QVUB/T+bJKz4A==",
"requires": { "requires": {
"@mr-hope/vuepress-types": "1.28.3", "@mr-hope/vuepress-types": "1.30.0",
"@types/fs-extra": "^9.0.13", "@types/fs-extra": "^9.0.13",
"chalk": "^4.1.2", "chalk": "^4.1.2",
"fs-extra": "^10.1.0", "fs-extra": "^10.1.0",
@ -19661,9 +19700,9 @@
} }
}, },
"@mr-hope/vuepress-types": { "@mr-hope/vuepress-types": {
"version": "1.28.3", "version": "1.30.0",
"resolved": "https://registry.npmjs.org/@mr-hope/vuepress-types/-/vuepress-types-1.28.3.tgz", "resolved": "https://registry.npmjs.org/@mr-hope/vuepress-types/-/vuepress-types-1.30.0.tgz",
"integrity": "sha512-c/adRtW6G4B5dA8k2pbQF+8LenzPbjEmmQnIJ/7zfkhw81XboRN0v3EgBW5T2l4xggOJQCPwG+/4XNLXOGPENg==", "integrity": "sha512-XsPxmevdUxrKKx5l/1JS/wkzzRWMcd1wGrQaahETUbeZ9HuxUCNrLnUc9aH8ngss91LZ01qPiAx69zxIBQUcOw==",
"requires": { "requires": {
"@types/express": "^4.17.13", "@types/express": "^4.17.13",
"@types/markdown-it": "^10.0.3", "@types/markdown-it": "^10.0.3",
@ -21665,9 +21704,9 @@
"integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug="
}, },
"builtins": { "builtins": {
"version": "4.1.0", "version": "5.0.1",
"resolved": "https://registry.npmjs.org/builtins/-/builtins-4.1.0.tgz", "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz",
"integrity": "sha512-1bPRZQtmKaO6h7qV1YHXNtr6nCK28k0Zo95KM4dXfILcZZwoHJBN1m3lfLv9LPkcOZlrSr+J1bzMaZFO98Yq0w==", "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"semver": "^7.0.0" "semver": "^7.0.0"
@ -22080,7 +22119,7 @@
"glob-parent": { "glob-parent": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "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": { "requires": {
"is-glob": "^3.1.0", "is-glob": "^3.1.0",
"path-dirname": "^1.0.0" "path-dirname": "^1.0.0"
@ -22613,7 +22652,7 @@
"glob-parent": { "glob-parent": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "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": { "requires": {
"is-glob": "^3.1.0", "is-glob": "^3.1.0",
"path-dirname": "^1.0.0" "path-dirname": "^1.0.0"
@ -23468,9 +23507,9 @@
"integrity": "sha512-mfBcbqc0qc6RlxrsIgLG2wCqkiPAjEezHxGTu7p3dHHFOurH4EjS9rFZndX5axC8264rI1Pcbw8uQP39oZckeA==" "integrity": "sha512-mfBcbqc0qc6RlxrsIgLG2wCqkiPAjEezHxGTu7p3dHHFOurH4EjS9rFZndX5axC8264rI1Pcbw8uQP39oZckeA=="
}, },
"element-ui": { "element-ui": {
"version": "2.15.8", "version": "2.15.9",
"resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.8.tgz", "resolved": "https://registry.npmjs.org/element-ui/-/element-ui-2.15.9.tgz",
"integrity": "sha512-N54zxosRFqpYax3APY3GeRmtOZwIls6Z756WM0kdPZ5Q92PIeKHnZgF1StlamIg9bLxP1k+qdhTZvIeQlim09A==", "integrity": "sha512-dx45nQLt4Hn87/Z9eRr3ex6KFZbxlFAwEU3QoW3wA5EsYftvHTyL9Pq7VnXXD7hu1Eiaup2jcs6kp+/VSFmXuA==",
"requires": { "requires": {
"async-validator": "~1.8.1", "async-validator": "~1.8.1",
"babel-helper-vue-jsx-merge-props": "^2.0.0", "babel-helper-vue-jsx-merge-props": "^2.0.0",
@ -23924,18 +23963,18 @@
"requires": {} "requires": {}
}, },
"eslint-config-vuepress": { "eslint-config-vuepress": {
"version": "3.9.0", "version": "3.10.0",
"resolved": "https://registry.npmjs.org/eslint-config-vuepress/-/eslint-config-vuepress-3.9.0.tgz", "resolved": "https://registry.npmjs.org/eslint-config-vuepress/-/eslint-config-vuepress-3.10.0.tgz",
"integrity": "sha512-zraEmHRt2BNc4k0/PkD6HrNXVdg4x5gbMHAZ3CycksOItVJoW7Qe2vq6bR5bEjYt4G4Ks9HeW9LEAgGIFSGE2Q==", "integrity": "sha512-Aej2ifGTxqigU08oLxxBjLbulPxe1KOcTz7mZRLbyzfPmS1nxlUd0d6LEFeEmBoiOOPw1+zoJWhI4FafO3TRbQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"eslint-config-prettier": "^8.5.0", "eslint-config-prettier": "^8.5.0",
"eslint-config-standard": "^17.0.0", "eslint-config-standard": "^17.0.0",
"eslint-plugin-import": "^2.26.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-prettier": "^4.0.0",
"eslint-plugin-promise": "^6.0.0", "eslint-plugin-promise": "^6.0.0",
"eslint-plugin-vue": "^9.0.1" "eslint-plugin-vue": "^9.1.0"
}, },
"dependencies": { "dependencies": {
"@eslint/eslintrc": { "@eslint/eslintrc": {
@ -24244,19 +24283,19 @@
} }
}, },
"eslint-plugin-n": { "eslint-plugin-n": {
"version": "15.2.0", "version": "15.2.3",
"resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.0.tgz", "resolved": "https://registry.npmjs.org/eslint-plugin-n/-/eslint-plugin-n-15.2.3.tgz",
"integrity": "sha512-lWLg++jGwC88GDGGBX3CMkk0GIWq0y41aH51lavWApOKcMQcYoL3Ayd0lEdtD3SnQtR+3qBvWQS3qGbR2BxRWg==", "integrity": "sha512-H+KC7U5R+3IWTeRnACm/4wlqLvS1Q7M6t7BGhn89qXDkZan8HTAEv3ouIONA0ifDwc2YzPFmyPzHuNLddNK4jw==",
"dev": true, "dev": true,
"requires": { "requires": {
"builtins": "^4.0.0", "builtins": "^5.0.1",
"eslint-plugin-es": "^4.1.0", "eslint-plugin-es": "^4.1.0",
"eslint-utils": "^3.0.0", "eslint-utils": "^3.0.0",
"ignore": "^5.1.1", "ignore": "^5.1.1",
"is-core-module": "^2.3.0", "is-core-module": "^2.9.0",
"minimatch": "^3.0.4", "minimatch": "^3.1.2",
"resolve": "^1.10.1", "resolve": "^1.10.1",
"semver": "^6.3.0" "semver": "^7.3.7"
}, },
"dependencies": { "dependencies": {
"eslint-utils": { "eslint-utils": {
@ -24279,6 +24318,33 @@
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz",
"integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==",
"dev": true "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": {} "requires": {}
}, },
"eslint-plugin-vue": { "eslint-plugin-vue": {
"version": "9.1.0", "version": "9.1.1",
"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.1.0.tgz", "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-9.1.1.tgz",
"integrity": "sha512-EPCeInPicQ/YyfOWJDr1yfEeSNoFCMzUus107lZyYi37xejdOolNzS5MXGXp8+9bkoKZMdv/1AcZzQebME6r+g==", "integrity": "sha512-W9n5PB1X2jzC7CK6riG0oAcxjmKrjTF6+keL1rni8n57DZeilx/Fulz+IRJK3lYseLNAygN0I62L7DvioW40Tw==",
"dev": true, "dev": true,
"requires": { "requires": {
"eslint-utils": "^3.0.0", "eslint-utils": "^3.0.0",
@ -24791,7 +24857,7 @@
"glob-parent": { "glob-parent": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "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": { "requires": {
"is-glob": "^3.1.0", "is-glob": "^3.1.0",
"path-dirname": "^1.0.0" "path-dirname": "^1.0.0"
@ -25307,7 +25373,7 @@
"trim-newlines": { "trim-newlines": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz",
"integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=" "integrity": "sha512-MTBWv3jhVjTU7XR3IQHllbiJs8sc75a80OEhB6or/q7pLTWgQ0bMGQXXYQSrSuXe6WiKWDZ5txXY5P59a/coVA=="
}, },
"universalify": { "universalify": {
"version": "0.1.2", "version": "0.1.2",
@ -26849,9 +26915,9 @@
} }
}, },
"markdown-it-anchor": { "markdown-it-anchor": {
"version": "8.6.2", "version": "8.6.4",
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.2.tgz", "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.4.tgz",
"integrity": "sha512-JNaekTlIwwyYGBN3zifZDxgz4bSL8sbEj58fdTZGmPSMMGXBZapFjcZk2I33Jy79c1fvCKHpF7MA/67FOTjvzA==", "integrity": "sha512-Ul4YVYZNxMJYALpKtu+ZRdrryYt/GlQ5CK+4l1bp/gWXOG2QWElt6AqF3Mih/wfUKdZbNAZVXGR73/n6U/8img==",
"requires": {} "requires": {}
}, },
"markdown-it-chain": { "markdown-it-chain": {
@ -26894,9 +26960,9 @@
"integrity": "sha512-TAIHTHPwa9+ltKvKPWulm/beozQU41Ab+FIefRaQV1NRnpzwcV9QOe6wXQS5WLivm5Q/nlo0rl6laGkMDZE7Gw==" "integrity": "sha512-TAIHTHPwa9+ltKvKPWulm/beozQU41Ab+FIefRaQV1NRnpzwcV9QOe6wXQS5WLivm5Q/nlo0rl6laGkMDZE7Gw=="
}, },
"marked": { "marked": {
"version": "4.0.16", "version": "4.0.17",
"resolved": "https://registry.npmjs.org/marked/-/marked-4.0.16.tgz", "resolved": "https://registry.npmjs.org/marked/-/marked-4.0.17.tgz",
"integrity": "sha512-wahonIQ5Jnyatt2fn8KqF/nIqZM8mh3oRu2+l5EANGMhu6RFjiSG52QNE2eWzFMI94HqYSgN184NurgNG6CztA==" "integrity": "sha512-Wfk0ATOK5iPxM4ptrORkFemqroz0ZDxp5MWfYA7H/F+wO17NRWV5Ypxi6p3g2Xmw2bKeiYOl6oVnLHKxBA0VhA=="
}, },
"material-design-icons-iconfont": { "material-design-icons-iconfont": {
"version": "6.7.0", "version": "6.7.0",
@ -28807,9 +28873,9 @@
"integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc="
}, },
"prettier": { "prettier": {
"version": "2.6.2", "version": "2.7.1",
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.7.1.tgz",
"integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==", "integrity": "sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==",
"devOptional": true "devOptional": true
}, },
"prettier-linter-helpers": { "prettier-linter-helpers": {

View File

@ -27,12 +27,12 @@
"@vuepress/plugin-pwa": "1.9.7", "@vuepress/plugin-pwa": "1.9.7",
"babel-eslint": "10.1.0", "babel-eslint": "10.1.0",
"eslint": "7.32.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-markdown": "2.2.1",
"eslint-plugin-promise": "6.0.0", "eslint-plugin-promise": "6.0.0",
"eslint-plugin-vue": "9.1.0", "eslint-plugin-vue": "9.1.1",
"node-sass": "6.0.1", "node-sass": "6.0.1",
"prettier": "2.6.2", "prettier": "2.7.1",
"sass-loader": "10.2.1", "sass-loader": "10.2.1",
"vuepress": "1.9.7", "vuepress": "1.9.7",
"vuepress-plugin-clean-urls": "1.1.2", "vuepress-plugin-clean-urls": "1.1.2",
@ -43,13 +43,13 @@
}, },
"dependencies": { "dependencies": {
"axios": "0.26.1", "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", "core-js": "2.6.12",
"docsearch.js": "2.6.3", "docsearch.js": "2.6.3",
"element-ui": "2.15.8", "element-ui": "2.15.9",
"lodash.groupby": "4.6.0", "lodash.groupby": "4.6.0",
"lodash.sortby": "4.7.0", "lodash.sortby": "4.7.0",
"marked": "4.0.16", "marked": "4.0.17",
"material-design-icons-iconfont": "6.7.0", "material-design-icons-iconfont": "6.7.0",
"moment": "2.29.3", "moment": "2.29.3",
"vue": "2.6.14", "vue": "2.6.14",

View File

@ -1,9 +1,3 @@
<template>
<div :id="name" class="slide">
<slot />
</div>
</template>
<script> <script>
export default { export default {
name: "CarouselItem", name: "CarouselItem",
@ -16,6 +10,12 @@ export default {
}; };
</script> </script>
<template>
<div :id="name" class="slide">
<slot />
</div>
</template>
<style> <style>
.slide { .slide {
align-items: center; align-items: center;

View File

@ -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> <script>
export default { export default {
name: "CarouselWrapper", name: "CarouselWrapper",
@ -31,6 +19,18 @@ export default {
}; };
</script> </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> <style>
.agile { .agile {
background: #f0f4f8; background: #f0f4f8;

View File

@ -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> <script>
import { GITHUB_PREVIEW_RELEASE, GITHUB_STABLE_RELEASE } from "../constants"; import { GITHUB_PREVIEW_RELEASE, GITHUB_STABLE_RELEASE } from "../constants";
@ -122,6 +102,26 @@ export default {
}; };
</script> </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"> <style lang="stylus">
#DownloadButtons #DownloadButtons
text-align center text-align center

View File

@ -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> <template>
<span class="filters-list"> <span class="filters-list">
<ElInput v-model="filters.search" placeholder="Search extensions by name or ID..." clearable /> <ElInput v-model="filters.search" placeholder="Search extensions by name or ID..." clearable />
@ -29,36 +59,6 @@
</div> </div>
</span> </span>
</template> </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"> <style lang="stylus">
.filters-list .filters-list
display flex display flex

View File

@ -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> <template>
<div class="extension-group"> <div class="extension-group">
<h3> <h3>
@ -20,25 +39,6 @@
</div> </div>
</div> </div>
</template> </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"> <style lang="stylus">
.extensions-total .extensions-total
float right float right

View File

@ -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> <script>
export default { export default {
props: ["item"], props: ["item"],
@ -40,6 +21,25 @@ export default {
}, },
}; };
</script> </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"> <style lang="stylus">
.extension .extension
align-items center align-items center

View File

@ -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> <script>
import ExtensionGroup from "./ExtensionGroup.vue"; import ExtensionGroup from "./ExtensionGroup.vue";
@ -18,6 +11,13 @@ export default {
}, },
}; };
</script> </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"> <style lang="stylus">
.extension-list .extension-list
h3 h3

View File

@ -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> <script>
import axios from "axios"; import axios from "axios";
import groupBy from "lodash.groupby"; import groupBy from "lodash.groupby";
@ -101,3 +94,10 @@ export default {
}, },
}; };
</script> </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>

View File

@ -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> <script>
import axios from "axios"; import axios from "axios";
@ -97,6 +80,23 @@ export default {
}; };
</script> </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"> <style lang="stylus">
.downloadContainer .downloadContainer
user-select none user-select none

View File

@ -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> <template>
<Layout :class="$frontmatter.title"> <Layout :class="$frontmatter.title">
<main class="page"> <main class="page">
@ -11,15 +20,6 @@
</Layout> </Layout>
</template> </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"> <style lang="stylus">
.page .page
padding-bottom 2rem padding-bottom 2rem

View File

@ -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> <template>
<div class="theme-container help-page"> <div class="theme-container help-page">
<NavBar /> <NavBar />
@ -87,48 +129,6 @@
</div> </div>
</template> </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"> <style lang="stylus">
.help-page .help-page
.page .page

View File

@ -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> <script>
/** /**
* For material icon references use https://material.io/resources/icons/ * For material icon references use https://material.io/resources/icons/
@ -28,6 +21,13 @@ export default {
}; };
</script> </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"> <style lang="scss">
$material-design-icons-font-directory-path: "~material-design-icons-iconfont/dist/fonts/"; $material-design-icons-font-directory-path: "~material-design-icons-iconfont/dist/fonts/";
@import "~material-design-icons-iconfont/src/material-design-icons"; @import "~material-design-icons-iconfont/src/material-design-icons";

View File

@ -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> <script>
/** /**
* Code example: <NavigationText item="library"/> * Code example: <NavigationText item="library"/>
@ -94,6 +79,21 @@ export default {
}; };
</script> </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"> <style lang="stylus">
#NavigationVue #NavigationVue
&.app-navigation &.app-navigation

View File

@ -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> <script>
/** /**
* Code example: <ReleaseDate preview /> * Code example: <ReleaseDate preview />
@ -56,6 +42,20 @@ export default {
}; };
</script> </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> <style lang="stylus" scoped>
.buildTime .buildTime
font-weight 500 font-weight 500

View File

@ -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> <script>
/** /**
* Code example: <VersionTag preview /> * Code example: <VersionTag preview />
@ -62,6 +46,22 @@ export default {
}; };
</script> </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> <style lang="stylus" scoped>
.fileNameContainer .fileNameContainer
white-space nowrap white-space nowrap

View File

@ -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> <script>
import { marked } from "marked"; import { marked } from "marked";
@ -41,6 +22,25 @@ export default {
}; };
</script> </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"> <style lang="stylus">
.whatsNew .whatsNew
.title .title

View File

@ -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> <script>
export default { export default {
name: "AlgoliaSearchBox", name: "AlgoliaSearchBox",
@ -70,6 +64,12 @@ export default {
}; };
</script> </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"> <style lang="stylus">
.algolia-search-wrapper .algolia-search-wrapper
& > span & > span

View File

@ -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> <template>
<main class="home" aria-labelledby="main-title"> <main class="home" aria-labelledby="main-title">
<header class="hero"> <header class="hero">
@ -74,40 +108,6 @@
</main> </main>
</template> </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"> <style lang="stylus">
.home .home
display block display block

View File

@ -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> <script>
import SearchBox from "@SearchBox"; import SearchBox from "@SearchBox";
import NavLinks from "@theme/components/NavLinks.vue"; import NavLinks from "@theme/components/NavLinks.vue";
@ -95,6 +60,41 @@ function css(el, property) {
} }
</script> </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"> <style lang="stylus">
$navbar-vertical-padding = 0.7rem $navbar-vertical-padding = 0.7rem
$navbar-horizontal-padding = 1.5rem $navbar-horizontal-padding = 1.5rem