Compare commits
18 Commits
5ffa9c1a7d
...
fbb214cd40
Author | SHA1 | Date |
---|---|---|
renovate[bot] | fbb214cd40 | |
Bnyro | c30062eb94 | |
Bnyro | adeb0a92bd | |
Bnyro | afd5c5b3b8 | |
Bnyro | ba4e946dc2 | |
Bnyro | ca5e39dfd8 | |
Bnyro | c31f9fbb54 | |
Bnyro | 9762542596 | |
Bnyro | 1440eea4a0 | |
Bnyro | c0a9b16aa8 | |
github-actions[bot] | 3b18da84b1 | |
Kārlis Korlašs | 1262dfa596 | |
github-actions[bot] | e5e31aed5e | |
Ghost of Sparta | 6513170ab2 | |
maboroshin | a996997e28 | |
github-actions[bot] | aadcb467cd | |
Priit Jõerüüt | 7f99a31312 | |
renovate[bot] | eccf4d1f78 |
|
@ -11,7 +11,7 @@
|
|||
"lint": "eslint --fix --color --ignore-path .gitignore --ext .js,.vue ."
|
||||
},
|
||||
"dependencies": {
|
||||
"dompurify": "3.1.2",
|
||||
"dompurify": "3.1.3",
|
||||
"fast-xml-parser": "4.3.6",
|
||||
"hotkeys-js": "3.13.7",
|
||||
"javascript-time-ago": "2.5.10",
|
||||
|
@ -37,7 +37,7 @@
|
|||
"@vitejs/plugin-legacy": "5.4.0",
|
||||
"@vitejs/plugin-vue": "5.0.4",
|
||||
"@vue/compiler-sfc": "3.4.25",
|
||||
"eslint": "8.57.0",
|
||||
"eslint": "9.2.0",
|
||||
"eslint-config-prettier": "9.1.0",
|
||||
"eslint-plugin-prettier": "5.1.3",
|
||||
"eslint-plugin-vue": "9.25.0",
|
||||
|
|
183
pnpm-lock.yaml
183
pnpm-lock.yaml
|
@ -6,8 +6,8 @@ settings:
|
|||
|
||||
dependencies:
|
||||
dompurify:
|
||||
specifier: 3.1.2
|
||||
version: 3.1.2
|
||||
specifier: 3.1.3
|
||||
version: 3.1.3
|
||||
fast-xml-parser:
|
||||
specifier: 4.3.6
|
||||
version: 4.3.6
|
||||
|
@ -51,7 +51,7 @@ devDependencies:
|
|||
version: 4.0.0(rollup@2.79.1)(vue-i18n@9.13.1)
|
||||
'@unocss/eslint-config':
|
||||
specifier: 0.58.9
|
||||
version: 0.58.9(eslint@8.57.0)(typescript@5.4.5)
|
||||
version: 0.58.9(eslint@9.2.0)(typescript@5.4.5)
|
||||
'@unocss/preset-icons':
|
||||
specifier: 0.58.9
|
||||
version: 0.58.9
|
||||
|
@ -80,17 +80,17 @@ devDependencies:
|
|||
specifier: 3.4.25
|
||||
version: 3.4.25
|
||||
eslint:
|
||||
specifier: 8.57.0
|
||||
version: 8.57.0
|
||||
specifier: 9.2.0
|
||||
version: 9.2.0
|
||||
eslint-config-prettier:
|
||||
specifier: 9.1.0
|
||||
version: 9.1.0(eslint@8.57.0)
|
||||
version: 9.1.0(eslint@9.2.0)
|
||||
eslint-plugin-prettier:
|
||||
specifier: 5.1.3
|
||||
version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5)
|
||||
version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@9.2.0)(prettier@3.2.5)
|
||||
eslint-plugin-vue:
|
||||
specifier: 9.25.0
|
||||
version: 9.25.0(eslint@8.57.0)
|
||||
version: 9.25.0(eslint@9.2.0)
|
||||
lightningcss:
|
||||
specifier: 1.24.1
|
||||
version: 1.24.1
|
||||
|
@ -105,7 +105,7 @@ devDependencies:
|
|||
version: 5.2.11(lightningcss@1.24.1)(terser@5.31.0)
|
||||
vite-plugin-eslint:
|
||||
specifier: 1.8.1
|
||||
version: 1.8.1(eslint@8.57.0)(vite@5.2.11)
|
||||
version: 1.8.1(eslint@9.2.0)(vite@5.2.11)
|
||||
vite-plugin-pwa:
|
||||
specifier: 0.20.0
|
||||
version: 0.20.0(vite@5.2.11)(workbox-build@7.1.0)(workbox-window@7.1.0)
|
||||
|
@ -1573,13 +1573,13 @@ packages:
|
|||
dev: true
|
||||
optional: true
|
||||
|
||||
/@eslint-community/eslint-utils@4.4.0(eslint@8.57.0):
|
||||
/@eslint-community/eslint-utils@4.4.0(eslint@9.2.0):
|
||||
resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
|
||||
dependencies:
|
||||
eslint: 8.57.0
|
||||
eslint: 9.2.0
|
||||
eslint-visitor-keys: 3.4.3
|
||||
dev: true
|
||||
|
||||
|
@ -1588,14 +1588,14 @@ packages:
|
|||
engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
|
||||
dev: true
|
||||
|
||||
/@eslint/eslintrc@2.1.4:
|
||||
resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
/@eslint/eslintrc@3.0.2:
|
||||
resolution: {integrity: sha512-wV19ZEGEMAC1eHgrS7UQPqsdEiCIbTKTasEfcXAigzoXICcqZSjBZEHlZwNVvKg6UBCjSlos84XiLqsRJnIcIg==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
dependencies:
|
||||
ajv: 6.12.6
|
||||
debug: 4.3.4
|
||||
espree: 9.6.1
|
||||
globals: 13.24.0
|
||||
espree: 10.0.1
|
||||
globals: 14.0.0
|
||||
ignore: 5.3.1
|
||||
import-fresh: 3.3.0
|
||||
js-yaml: 4.1.0
|
||||
|
@ -1605,13 +1605,13 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@eslint/js@8.57.0:
|
||||
resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
/@eslint/js@9.2.0:
|
||||
resolution: {integrity: sha512-ESiIudvhoYni+MdsI8oD7skpprZ89qKocwRM2KEvhhBJ9nl5MRh7BXU5GTod7Mdygq+AUl+QzId6iWJKR/wABA==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
dev: true
|
||||
|
||||
/@humanwhocodes/config-array@0.11.14:
|
||||
resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==}
|
||||
/@humanwhocodes/config-array@0.13.0:
|
||||
resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==}
|
||||
engines: {node: '>=10.10.0'}
|
||||
dependencies:
|
||||
'@humanwhocodes/object-schema': 2.0.3
|
||||
|
@ -1630,6 +1630,11 @@ packages:
|
|||
resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==}
|
||||
dev: true
|
||||
|
||||
/@humanwhocodes/retry@0.2.4:
|
||||
resolution: {integrity: sha512-Ttl/jHpxfS3st5sxwICYfk4pOH0WrLI1SpW283GgQL7sCWU7EHIOhX4b4fkIxr3tkfzwg8+FNojtzsIEE7Ecgg==}
|
||||
engines: {node: '>=18.18'}
|
||||
dev: true
|
||||
|
||||
/@iconify-json/fa6-brands@1.1.19:
|
||||
resolution: {integrity: sha512-3Dl0D1gtFwIj7/GT2xJbkM9D/LjuozsgfLrqRWP6B5xuajtsyEvR1wD0Z06y3iaNtASpgWPWyYbml+AHQ3Hw0g==}
|
||||
dependencies:
|
||||
|
@ -2099,19 +2104,19 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@typescript-eslint/utils@7.8.0(eslint@8.57.0)(typescript@5.4.5):
|
||||
/@typescript-eslint/utils@7.8.0(eslint@9.2.0)(typescript@5.4.5):
|
||||
resolution: {integrity: sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ==}
|
||||
engines: {node: ^18.18.0 || >=20.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^8.56.0
|
||||
dependencies:
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0)
|
||||
'@types/json-schema': 7.0.15
|
||||
'@types/semver': 7.5.8
|
||||
'@typescript-eslint/scope-manager': 7.8.0
|
||||
'@typescript-eslint/types': 7.8.0
|
||||
'@typescript-eslint/typescript-estree': 7.8.0(typescript@5.4.5)
|
||||
eslint: 8.57.0
|
||||
eslint: 9.2.0
|
||||
semver: 7.6.2
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
@ -2126,10 +2131,6 @@ packages:
|
|||
eslint-visitor-keys: 3.4.3
|
||||
dev: true
|
||||
|
||||
/@ungap/structured-clone@1.2.0:
|
||||
resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
|
||||
dev: true
|
||||
|
||||
/@unocss/astro@0.58.9(rollup@2.79.1)(vite@5.2.11):
|
||||
resolution: {integrity: sha512-VWfHNC0EfawFxLfb3uI+QcMGBN+ju+BYtutzeZTjilLKj31X2UpqIh8fepixL6ljgZzB3fweqg2xtUMC0gMnoQ==}
|
||||
peerDependencies:
|
||||
|
@ -2180,22 +2181,22 @@ packages:
|
|||
resolution: {integrity: sha512-wYpPIPPsOIbIoMIDuH8ihehJk5pAZmyFKXIYO/Kro98GEOFhz6lJoLsy6/PZuitlgp2/TSlubUuWGjHWvp5osw==}
|
||||
dev: true
|
||||
|
||||
/@unocss/eslint-config@0.58.9(eslint@8.57.0)(typescript@5.4.5):
|
||||
/@unocss/eslint-config@0.58.9(eslint@9.2.0)(typescript@5.4.5):
|
||||
resolution: {integrity: sha512-7Cf9NVPQqdhd6rbe2JDlqY9bBwuFfxvZOmeEUcKaI10QNNrDNvnMKd8rToxCdm5RToSjNeuj66V/scl8Kv8rfQ==}
|
||||
engines: {node: '>=14'}
|
||||
dependencies:
|
||||
'@unocss/eslint-plugin': 0.58.9(eslint@8.57.0)(typescript@5.4.5)
|
||||
'@unocss/eslint-plugin': 0.58.9(eslint@9.2.0)(typescript@5.4.5)
|
||||
transitivePeerDependencies:
|
||||
- eslint
|
||||
- supports-color
|
||||
- typescript
|
||||
dev: true
|
||||
|
||||
/@unocss/eslint-plugin@0.58.9(eslint@8.57.0)(typescript@5.4.5):
|
||||
/@unocss/eslint-plugin@0.58.9(eslint@9.2.0)(typescript@5.4.5):
|
||||
resolution: {integrity: sha512-StlHO850jow2w/PTA01opkGAD6WO+iu65fxel062gp/aeoO/cRwVlQntVX7Z8QHDGXnftjW83RjvX9LqW8+iLw==}
|
||||
engines: {node: '>=14'}
|
||||
dependencies:
|
||||
'@typescript-eslint/utils': 7.8.0(eslint@8.57.0)(typescript@5.4.5)
|
||||
'@typescript-eslint/utils': 7.8.0(eslint@9.2.0)(typescript@5.4.5)
|
||||
'@unocss/config': 0.58.9
|
||||
'@unocss/core': 0.58.9
|
||||
magic-string: 0.30.10
|
||||
|
@ -2930,15 +2931,8 @@ packages:
|
|||
path-type: 4.0.0
|
||||
dev: true
|
||||
|
||||
/doctrine@3.0.0:
|
||||
resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
|
||||
engines: {node: '>=6.0.0'}
|
||||
dependencies:
|
||||
esutils: 2.0.3
|
||||
dev: true
|
||||
|
||||
/dompurify@3.1.2:
|
||||
resolution: {integrity: sha512-hLGGBI1tw5N8qTELr3blKjAML/LY4ANxksbS612UiJyDfyf/2D092Pvm+S7pmeTGJRqvlJkFzBoHBQKgQlOQVg==}
|
||||
/dompurify@3.1.3:
|
||||
resolution: {integrity: sha512-5sOWYSNPaxz6o2MUPvtyxTTqR4D3L77pr5rUQoWgD5ROQtVIZQgJkXbo1DLlK3vj11YGw5+LnF4SYti4gZmwng==}
|
||||
dev: false
|
||||
|
||||
/duplexer@0.1.2:
|
||||
|
@ -3120,16 +3114,16 @@ packages:
|
|||
source-map: 0.6.1
|
||||
dev: true
|
||||
|
||||
/eslint-config-prettier@9.1.0(eslint@8.57.0):
|
||||
/eslint-config-prettier@9.1.0(eslint@9.2.0):
|
||||
resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
eslint: '>=7.0.0'
|
||||
dependencies:
|
||||
eslint: 8.57.0
|
||||
eslint: 9.2.0
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5):
|
||||
/eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0)(eslint@9.2.0)(prettier@3.2.5):
|
||||
resolution: {integrity: sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
|
@ -3143,27 +3137,27 @@ packages:
|
|||
eslint-config-prettier:
|
||||
optional: true
|
||||
dependencies:
|
||||
eslint: 8.57.0
|
||||
eslint-config-prettier: 9.1.0(eslint@8.57.0)
|
||||
eslint: 9.2.0
|
||||
eslint-config-prettier: 9.1.0(eslint@9.2.0)
|
||||
prettier: 3.2.5
|
||||
prettier-linter-helpers: 1.0.0
|
||||
synckit: 0.8.8
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-vue@9.25.0(eslint@8.57.0):
|
||||
/eslint-plugin-vue@9.25.0(eslint@9.2.0):
|
||||
resolution: {integrity: sha512-tDWlx14bVe6Bs+Nnh3IGrD+hb11kf2nukfm6jLsmJIhmiRQ1SUaksvwY9U5MvPB0pcrg0QK0xapQkfITs3RKOA==}
|
||||
engines: {node: ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0
|
||||
dependencies:
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
|
||||
eslint: 8.57.0
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0)
|
||||
eslint: 9.2.0
|
||||
globals: 13.24.0
|
||||
natural-compare: 1.4.0
|
||||
nth-check: 2.1.1
|
||||
postcss-selector-parser: 6.0.16
|
||||
semver: 7.6.2
|
||||
vue-eslint-parser: 9.4.2(eslint@8.57.0)
|
||||
vue-eslint-parser: 9.4.2(eslint@9.2.0)
|
||||
xml-name-validator: 4.0.0
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
@ -3177,46 +3171,55 @@ packages:
|
|||
estraverse: 5.3.0
|
||||
dev: true
|
||||
|
||||
/eslint-scope@8.0.1:
|
||||
resolution: {integrity: sha512-pL8XjgP4ZOmmwfFE8mEhSxA7ZY4C+LWyqjQ3o4yWkkmD0qcMT9kkW3zWHOczhWcjTSgqycYAgwSlXvZltv65og==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
dependencies:
|
||||
esrecurse: 4.3.0
|
||||
estraverse: 5.3.0
|
||||
dev: true
|
||||
|
||||
/eslint-visitor-keys@3.4.3:
|
||||
resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
dev: true
|
||||
|
||||
/eslint@8.57.0:
|
||||
resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
/eslint-visitor-keys@4.0.0:
|
||||
resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
dev: true
|
||||
|
||||
/eslint@9.2.0:
|
||||
resolution: {integrity: sha512-0n/I88vZpCOzO+PQpt0lbsqmn9AsnsJAQseIqhZFI8ibQT0U1AkEKRxA3EVMos0BoHSXDQvCXY25TUjB5tr8Og==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
|
||||
'@eslint-community/eslint-utils': 4.4.0(eslint@9.2.0)
|
||||
'@eslint-community/regexpp': 4.10.0
|
||||
'@eslint/eslintrc': 2.1.4
|
||||
'@eslint/js': 8.57.0
|
||||
'@humanwhocodes/config-array': 0.11.14
|
||||
'@eslint/eslintrc': 3.0.2
|
||||
'@eslint/js': 9.2.0
|
||||
'@humanwhocodes/config-array': 0.13.0
|
||||
'@humanwhocodes/module-importer': 1.0.1
|
||||
'@humanwhocodes/retry': 0.2.4
|
||||
'@nodelib/fs.walk': 1.2.8
|
||||
'@ungap/structured-clone': 1.2.0
|
||||
ajv: 6.12.6
|
||||
chalk: 4.1.2
|
||||
cross-spawn: 7.0.3
|
||||
debug: 4.3.4
|
||||
doctrine: 3.0.0
|
||||
escape-string-regexp: 4.0.0
|
||||
eslint-scope: 7.2.2
|
||||
eslint-visitor-keys: 3.4.3
|
||||
espree: 9.6.1
|
||||
eslint-scope: 8.0.1
|
||||
eslint-visitor-keys: 4.0.0
|
||||
espree: 10.0.1
|
||||
esquery: 1.5.0
|
||||
esutils: 2.0.3
|
||||
fast-deep-equal: 3.1.3
|
||||
file-entry-cache: 6.0.1
|
||||
file-entry-cache: 8.0.0
|
||||
find-up: 5.0.0
|
||||
glob-parent: 6.0.2
|
||||
globals: 13.24.0
|
||||
graphemer: 1.4.0
|
||||
ignore: 5.3.1
|
||||
imurmurhash: 0.1.4
|
||||
is-glob: 4.0.3
|
||||
is-path-inside: 3.0.3
|
||||
js-yaml: 4.1.0
|
||||
json-stable-stringify-without-jsonify: 1.0.1
|
||||
levn: 0.4.1
|
||||
lodash.merge: 4.6.2
|
||||
|
@ -3229,6 +3232,15 @@ packages:
|
|||
- supports-color
|
||||
dev: true
|
||||
|
||||
/espree@10.0.1:
|
||||
resolution: {integrity: sha512-MWkrWZbJsL2UwnjxTX3gG8FneachS/Mwg7tdGXce011sJd5b0JG54vat5KHnfSBODZ3Wvzd2WnjxyzsRoVv+ww==}
|
||||
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
|
||||
dependencies:
|
||||
acorn: 8.11.3
|
||||
acorn-jsx: 5.3.2(acorn@8.11.3)
|
||||
eslint-visitor-keys: 4.0.0
|
||||
dev: true
|
||||
|
||||
/espree@9.6.1:
|
||||
resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
|
@ -3330,11 +3342,11 @@ packages:
|
|||
reusify: 1.0.4
|
||||
dev: true
|
||||
|
||||
/file-entry-cache@6.0.1:
|
||||
resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
|
||||
engines: {node: ^10.12.0 || >=12.0.0}
|
||||
/file-entry-cache@8.0.0:
|
||||
resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
|
||||
engines: {node: '>=16.0.0'}
|
||||
dependencies:
|
||||
flat-cache: 3.2.0
|
||||
flat-cache: 4.0.1
|
||||
dev: true
|
||||
|
||||
/filelist@1.0.4:
|
||||
|
@ -3366,13 +3378,12 @@ packages:
|
|||
path-exists: 4.0.0
|
||||
dev: true
|
||||
|
||||
/flat-cache@3.2.0:
|
||||
resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
|
||||
engines: {node: ^10.12.0 || >=12.0.0}
|
||||
/flat-cache@4.0.1:
|
||||
resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
|
||||
engines: {node: '>=16'}
|
||||
dependencies:
|
||||
flatted: 3.3.1
|
||||
keyv: 4.5.4
|
||||
rimraf: 3.0.2
|
||||
dev: true
|
||||
|
||||
/flatted@3.3.1:
|
||||
|
@ -3501,6 +3512,11 @@ packages:
|
|||
type-fest: 0.20.2
|
||||
dev: true
|
||||
|
||||
/globals@14.0.0:
|
||||
resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
|
||||
engines: {node: '>=18'}
|
||||
dev: true
|
||||
|
||||
/globalthis@1.0.4:
|
||||
resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
|
||||
engines: {node: '>= 0.4'}
|
||||
|
@ -3531,10 +3547,6 @@ packages:
|
|||
resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
|
||||
dev: true
|
||||
|
||||
/graphemer@1.4.0:
|
||||
resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
|
||||
dev: true
|
||||
|
||||
/gzip-size@6.0.0:
|
||||
resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
|
||||
engines: {node: '>=10'}
|
||||
|
@ -4504,13 +4516,6 @@ packages:
|
|||
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/rimraf@3.0.2:
|
||||
resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
glob: 7.2.3
|
||||
dev: true
|
||||
|
||||
/rollup@2.79.1:
|
||||
resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==}
|
||||
engines: {node: '>=10.0.0'}
|
||||
|
@ -5085,7 +5090,7 @@ packages:
|
|||
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
|
||||
dev: true
|
||||
|
||||
/vite-plugin-eslint@1.8.1(eslint@8.57.0)(vite@5.2.11):
|
||||
/vite-plugin-eslint@1.8.1(eslint@9.2.0)(vite@5.2.11):
|
||||
resolution: {integrity: sha512-PqdMf3Y2fLO9FsNPmMX+//2BF5SF8nEWspZdgl4kSt7UvHDRHVVfHvxsD7ULYzZrJDGRxR81Nq7TOFgwMnUang==}
|
||||
peerDependencies:
|
||||
eslint: '>=7'
|
||||
|
@ -5093,7 +5098,7 @@ packages:
|
|||
dependencies:
|
||||
'@rollup/pluginutils': 4.2.1
|
||||
'@types/eslint': 8.56.10
|
||||
eslint: 8.57.0
|
||||
eslint: 9.2.0
|
||||
rollup: 2.79.1
|
||||
vite: 5.2.11(lightningcss@1.24.1)(terser@5.31.0)
|
||||
dev: true
|
||||
|
@ -5157,14 +5162,14 @@ packages:
|
|||
fsevents: 2.3.3
|
||||
dev: true
|
||||
|
||||
/vue-eslint-parser@9.4.2(eslint@8.57.0):
|
||||
/vue-eslint-parser@9.4.2(eslint@9.2.0):
|
||||
resolution: {integrity: sha512-Ry9oiGmCAK91HrKMtCrKFWmSFWvYkpGglCeFAIqDdr9zdXmMMpJOmUJS7WWsW7fX81h6mwHmUZCQQ1E0PkSwYQ==}
|
||||
engines: {node: ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: '>=6.0.0'
|
||||
dependencies:
|
||||
debug: 4.3.4
|
||||
eslint: 8.57.0
|
||||
eslint: 9.2.0
|
||||
eslint-scope: 7.2.2
|
||||
eslint-visitor-keys: 3.4.3
|
||||
espree: 9.6.1
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
<!-- eslint-disable-next-line vue/no-v-html -->
|
||||
<span v-if="showFullText" class="contentText" v-html="fullText()" />
|
||||
<!-- eslint-disable-next-line vue/no-v-html -->
|
||||
<span v-else v-html="colapsedText()" />
|
||||
<span v-else v-html="collapsedText()" />
|
||||
<span v-if="text.length > visibleLimit && !showFullText">...</span>
|
||||
<button
|
||||
v-if="text.length > visibleLimit"
|
||||
|
@ -38,7 +38,7 @@ export default {
|
|||
fullText() {
|
||||
return purifyHTML(rewriteDescription(this.text));
|
||||
},
|
||||
colapsedText() {
|
||||
collapsedText() {
|
||||
return purifyHTML(rewriteDescription(this.text.slice(0, this.visibleLimit)));
|
||||
},
|
||||
},
|
||||
|
|
|
@ -33,8 +33,13 @@
|
|||
<div class="comment-footer my-1 flex items-center gap-3">
|
||||
<div class="i-fa6-solid:thumbs-up" />
|
||||
<span v-text="numberFormat(comment.likeCount)" />
|
||||
<i v-if="comment.hearted" class="i-fa6-solid:heart" />
|
||||
<img v-if="comment.creatorReplied" :src="uploaderAvatarUrl" class="h-5 w-5 rounded-full" />
|
||||
<i v-if="comment.hearted" class="i-fa6-solid:heart" :title="$t('actions.creator_liked')" />
|
||||
<img
|
||||
v-if="comment.creatorReplied"
|
||||
:src="uploaderAvatarUrl"
|
||||
class="h-5 w-5 rounded-full"
|
||||
:title="$t('actions.creator_replied')"
|
||||
/>
|
||||
</div>
|
||||
<template v-if="comment.repliesPage && (!loadingReplies || !showingReplies)">
|
||||
<div class="cursor-pointer" @click="loadReplies">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="flex justify-center">
|
||||
<h1 v-t="'titles.login'" class="my-4 text-center font-bold" />
|
||||
<TooltipIcon class="mb-6" icon="i-fa6-solid:circle-info" :tooltip="$t('info.login_note')" />
|
||||
<i class="i-fa6-solid:circle-info ml-2 mt-6 cursor-pointer" :title="$t('info.login_note')" />
|
||||
</div>
|
||||
<hr />
|
||||
<div class="w-full flex items-center justify-center text-center">
|
||||
|
@ -36,12 +36,7 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import TooltipIcon from "./TooltipIcon.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
TooltipIcon,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
username: null,
|
||||
|
|
|
@ -6,10 +6,10 @@
|
|||
|
||||
<CollapsableText v-if="playlist?.description" :text="playlist.description" />
|
||||
|
||||
<div class="mt-1 flex <md:flex-col md:items-center justify-between">
|
||||
<div class="mt-1 flex justify-between <md:flex-col md:items-center">
|
||||
<div>
|
||||
<router-link class="link flex items-center gap-3" :to="playlist.uploaderUrl || '/'">
|
||||
<img loading="lazy" :src="playlist.uploaderAvatar" class="rounded-full h-12" />
|
||||
<img loading="lazy" :src="playlist.uploaderAvatar" class="h-12 rounded-full" />
|
||||
<strong v-text="playlist.uploader" />
|
||||
</router-link>
|
||||
</div>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="flex justify-center">
|
||||
<h1 v-t="'titles.register'" class="my-4 text-center font-bold" />
|
||||
<TooltipIcon class="mb-6" icon="i-fa6-solid:circle-info" :tooltip="$t('info.register_note')" />
|
||||
<i class="i-fa6-solid:circle-info ml-2 mt-6 cursor-pointer" :title="$t('info.register_note')" />
|
||||
</div>
|
||||
<hr />
|
||||
<div class="flex flex-col items-center justify-center text-center">
|
||||
|
@ -20,7 +20,7 @@
|
|||
<div class="flex justify-center">
|
||||
<input
|
||||
v-model="password"
|
||||
class="input w-full"
|
||||
class="input h-auto w-full"
|
||||
:type="showPassword ? 'text' : 'password'"
|
||||
autocomplete="password"
|
||||
:placeholder="$t('login.password')"
|
||||
|
@ -34,7 +34,7 @@
|
|||
<div class="flex justify-center">
|
||||
<input
|
||||
v-model="passwordConfirm"
|
||||
class="input w-full"
|
||||
class="input h-auto w-full"
|
||||
:type="showConfirmPassword ? 'text' : 'password'"
|
||||
autocomplete="password"
|
||||
:placeholder="$t('login.password_confirm')"
|
||||
|
@ -65,10 +65,9 @@
|
|||
<script>
|
||||
import { isEmail } from "../utils/Misc.js";
|
||||
import ConfirmModal from "./ConfirmModal.vue";
|
||||
import TooltipIcon from "./TooltipIcon.vue";
|
||||
|
||||
export default {
|
||||
components: { ConfirmModal, TooltipIcon },
|
||||
components: { ConfirmModal },
|
||||
data() {
|
||||
return {
|
||||
username: null,
|
||||
|
|
|
@ -1,29 +0,0 @@
|
|||
<template>
|
||||
<div id="container" class="m-2 self-center">
|
||||
<div :class="icon" class="cursor-pointer"></div>
|
||||
<p id="tooltip" class="absolute mr-[20vw] mt-2 hidden rounded-l bg-gray-800 px-2 py-1 text-gray-200">
|
||||
{{ tooltip }}
|
||||
</p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
icon: {
|
||||
type: String, // the class name of a font awesome icon
|
||||
required: true,
|
||||
},
|
||||
tooltip: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style>
|
||||
#container:hover #tooltip {
|
||||
display: block;
|
||||
}
|
||||
</style>
|
|
@ -546,33 +546,13 @@ export default {
|
|||
this.fetchSponsors().then(data => (this.sponsors = data));
|
||||
},
|
||||
async getComments() {
|
||||
this.fetchComments().then(data => {
|
||||
this.rewriteComments(data.comments);
|
||||
this.comments = data;
|
||||
});
|
||||
this.comments = await this.fetchComments();
|
||||
},
|
||||
async fetchSubscribedStatus() {
|
||||
if (!this.channelId) return;
|
||||
|
||||
this.subscribed = await this.fetchSubscriptionStatus(this.channelId);
|
||||
},
|
||||
rewriteComments(data) {
|
||||
data.forEach(comment => {
|
||||
const parser = new DOMParser();
|
||||
const xmlDoc = parser.parseFromString(comment.commentText, "text/html");
|
||||
xmlDoc.querySelectorAll("a").forEach(elem => {
|
||||
if (!elem.innerText.match(/(?:[\d]{1,2}:)?(?:[\d]{1,2}):(?:[\d]{1,2})/))
|
||||
elem.outerHTML = elem.getAttribute("href");
|
||||
});
|
||||
comment.commentText = xmlDoc
|
||||
.querySelector("body")
|
||||
.innerHTML.replaceAll(/(?:http(?:s)?:\/\/)?(?:www\.)?youtube\.com(\/[/a-zA-Z0-9_?=&-]*)/gm, "$1")
|
||||
.replaceAll(
|
||||
/(?:http(?:s)?:\/\/)?(?:www\.)?youtu\.be\/(?:watch\?v=)?([/a-zA-Z0-9_?=&-]*)/gm,
|
||||
"/watch?v=$1",
|
||||
);
|
||||
});
|
||||
},
|
||||
subscribeHandler() {
|
||||
this.toggleSubscriptionState(this.channelId, this.subscribed).then(success => {
|
||||
if (success) this.subscribed = !this.subscribed;
|
||||
|
@ -616,7 +596,6 @@ export default {
|
|||
}).then(json => {
|
||||
this.comments.nextpage = json.nextpage;
|
||||
this.loading = false;
|
||||
this.rewriteComments(json.comments);
|
||||
this.comments.comments = this.comments.comments.concat(json.comments);
|
||||
});
|
||||
}
|
||||
|
|
|
@ -156,7 +156,9 @@
|
|||
"concurrent_prefetch_limit": "Concurrent Stream Prefetch Limit",
|
||||
"customize": "Customize",
|
||||
"invalid_url": "Invalid URL!",
|
||||
"add": "Add"
|
||||
"add": "Add",
|
||||
"creator_replied": "Creator replied",
|
||||
"creator_liked": "Creator liked"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Pinned by {author}",
|
||||
|
@ -227,4 +229,4 @@
|
|||
"register_note": "Register an account for this Piped instance. This will allow you to sync your subscriptions and playlists with your account, so they're stored on the server side. You can use all features without an account, but all data will be stored in your browser's local cache. Please make sure you do NOT use an email address as your username and choose a secure password that you do not use elsewhere.",
|
||||
"login_note": "Log in with an account created on this instance."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -98,7 +98,7 @@
|
|||
"with_playlist": "Jaga koos esitusloendiga",
|
||||
"playlist_bookmarked": "Lisatud järjehoidjaks",
|
||||
"dismiss": "Katkesta",
|
||||
"create_group": "Loo rühm",
|
||||
"create_group": "Loo grupp",
|
||||
"okay": "Sobib",
|
||||
"show_search_suggestions": "Näita otsingusoovitusi",
|
||||
"instance_auth_selection": "Vaheserver autentimiseks",
|
||||
|
@ -120,7 +120,7 @@
|
|||
"share": "Jaga",
|
||||
"source_code": "Lähtekood",
|
||||
"no_valid_playlists": "Selles failis ei leidu korrektseid esitusloendeid!",
|
||||
"group_name": "Rühma nimi",
|
||||
"group_name": "Grupi nimi",
|
||||
"minimize_comments": "Minimeeri kommentaarid",
|
||||
"auto_display_captions": "Kuva tiitrid automaatselt",
|
||||
"delete_account": "Kustuta konto",
|
||||
|
@ -151,11 +151,12 @@
|
|||
"reply_count": "{count} vastust",
|
||||
"bookmark_playlist": "Järjehoidja",
|
||||
"download_frame": "Laadi alla kaader",
|
||||
"add_to_group": "Lisa rühma",
|
||||
"add_to_group": "Lisa gruppi",
|
||||
"instance_privacy_policy": "Privaatsuspoliitika",
|
||||
"customize": "Kohanda",
|
||||
"invalid_url": "Vigane URL!",
|
||||
"add": "Lisa"
|
||||
"add": "Lisa",
|
||||
"delete_group_confirm": "Kas kustutame selle grupi?"
|
||||
},
|
||||
"preferences": {
|
||||
"has_cdn": "CDN'i olek?",
|
||||
|
|
|
@ -151,7 +151,8 @@
|
|||
"download_frame": "Keret letöltése",
|
||||
"customize": "Testreszab",
|
||||
"invalid_url": "Érvénytelen URL!",
|
||||
"add": "Hozzáadás"
|
||||
"add": "Hozzáadás",
|
||||
"delete_group_confirm": "Törli ezt a csoportot?"
|
||||
},
|
||||
"video": {
|
||||
"ratings_disabled": "Értékelések Letiltva",
|
||||
|
|
|
@ -155,7 +155,8 @@
|
|||
"concurrent_prefetch_limit": "同時に先読みするストリーム数上限",
|
||||
"add": "追加",
|
||||
"invalid_url": "無効なURLです!",
|
||||
"customize": "追加"
|
||||
"customize": "追加",
|
||||
"delete_group_confirm": "このグループを削除しますか?"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "{author} によって固定",
|
||||
|
|
|
@ -127,7 +127,12 @@
|
|||
"clone_playlist": "Klonēt Atskaņošanas Saturu",
|
||||
"uses_api_from": "Izmanto API no ",
|
||||
"add_to_playlist": "Pievienot Atskaņošanas Sarakstam",
|
||||
"instances_not_shown": "Publiskās instances, kas šeit nav redzamas, pašlaik nav pieejamas."
|
||||
"instances_not_shown": "Publiskās instances, kas šeit nav redzamas, pašlaik nav pieejamas.",
|
||||
"delete_group_confirm": "Vai vēlaties dzēst šo grupu?",
|
||||
"concurrent_prefetch_limit": "Vienlaicīgu Straumju Ielādes Limits",
|
||||
"customize": "Pielāgot",
|
||||
"invalid_url": "Nederīgs URL!",
|
||||
"add": "Pievienot"
|
||||
},
|
||||
"search": {
|
||||
"all": "YouTube: Visi",
|
||||
|
@ -161,7 +166,9 @@
|
|||
"playlists": "Atskaņošanas saraksts",
|
||||
"register": "Reģistrēties",
|
||||
"player": "Atskaņotājs",
|
||||
"dearrow": "DeArrow"
|
||||
"dearrow": "DeArrow",
|
||||
"albums": "Albumi",
|
||||
"custom_instances": "Pielāgotas instances"
|
||||
},
|
||||
"video": {
|
||||
"all": "Visi",
|
||||
|
@ -207,7 +214,9 @@
|
|||
"has_cdn": "Vai ir satura piegādes tīkls?",
|
||||
"instance_name": "Instances Nosaukums",
|
||||
"registered_users": "Reģistrētie Lietotāji",
|
||||
"instance_locations": "Instances Atrašanās Vietas"
|
||||
"instance_locations": "Instances Atrašanās Vietas",
|
||||
"uptime_30d": "Darbspējas laiks (30d)",
|
||||
"api_url": "Api URL"
|
||||
},
|
||||
"login": {
|
||||
"username": "Lietotājvārds",
|
||||
|
|
Loading…
Reference in New Issue