mirror of
https://github.com/TeamPiped/Piped.git
synced 2024-12-24 14:33:35 +00:00
commit
07f5aa9c3b
2
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
2
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@ -22,7 +22,7 @@ body:
|
||||
label: Official Instance
|
||||
description: Can the bug be reproduced on the official instance?
|
||||
options:
|
||||
- label: The bug is reproducable on the [official hosted instance](http://piped.kavin.rocks/) or is API related.
|
||||
- label: The bug is reproducable on the [official hosted instance](http://piped.video/) or is API related.
|
||||
|
||||
- type: textarea
|
||||
attributes:
|
||||
|
30
.github/workflows/deploy-azure.yml
vendored
Normal file
30
.github/workflows/deploy-azure.yml
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
name: Azure Static Web Apps CI/CD
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build_and_deploy_job:
|
||||
if: github.event_name == 'push'
|
||||
runs-on: ubuntu-latest
|
||||
name: Build and Deploy Job
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true
|
||||
- name: Build And Deploy
|
||||
id: builddeploy
|
||||
uses: Azure/static-web-apps-deploy@v1
|
||||
with:
|
||||
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_LEMON_WATER_0063A7F03 }}
|
||||
repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments)
|
||||
action: "upload"
|
||||
###### Repository/Build Configurations - These values can be configured to match your app requirements. ######
|
||||
# For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig
|
||||
app_location: "/" # App source code path
|
||||
app_build_command: "yarn build && sed -i 's/fonts.gstatic.com/fonts.kavin.rocks/g' dist/assets/*.css"
|
||||
api_location: "" # Api source code path - optional
|
||||
output_location: "dist" # Built app content directory - optional
|
||||
###### End of Repository/Build Configurations ######
|
16
.github/workflows/weblate-merge.yml
vendored
Normal file
16
.github/workflows/weblate-merge.yml
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
name: Merge Weblate translations
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
types: [opened, reopened]
|
||||
|
||||
jobs:
|
||||
merge:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: AutoMerge Weblate translations
|
||||
if: github.event.pull_request.user.login == 'weblate'
|
||||
run: gh pr merge --auto --delete-branch --merge "$PR_URL"
|
||||
env:
|
||||
PR_URL: ${{github.event.pull_request.html_url}}
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
20
README.md
20
README.md
@ -2,7 +2,7 @@
|
||||
|
||||
[![AGPL v3](https://shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0.en.html)
|
||||
[![Matrix](https://img.shields.io/matrix/piped:matrix.org)](https://matrix.to/#/#piped:matrix.org)
|
||||
[![Registered Users](https://pipedapi.kavin.rocks/registered/badge)](https://piped.kavin.rocks/register)
|
||||
[![Registered Users](https://pipedapi.kavin.rocks/registered/badge)](https://piped.video/register)
|
||||
[![IPFS Build](https://github.com/TeamPiped/Piped/actions/workflows/ipfs-build.yml/badge.svg)](https://piped-ipfs.kavin.rocks/)
|
||||
[![GitHub Repo stars](https://img.shields.io/github/stars/TeamPiped/Piped-Frontend?style=social)](https://github.com/TeamPiped/Piped/stargazers)
|
||||
[![GitHub last commit](https://img.shields.io/github/last-commit/TeamPiped/Piped-Frontend)](https://github.com/TeamPiped/Piped/commits)
|
||||
@ -39,6 +39,7 @@ By using Piped, you can freely watch and listen to content without the fear of p
|
||||
- [x] [Available in many languages](src/locales), thanks to [our translators](https://hosted.weblate.org/projects/piped/frontend/)
|
||||
- [x] Embedded video support
|
||||
- [x] No age restriction
|
||||
- [x] Bypasses Geo restrictions if possible through a federated network
|
||||
|
||||
**Technical Features**
|
||||
|
||||
@ -46,7 +47,8 @@ By using Piped, you can freely watch and listen to content without the fear of p
|
||||
- [x] Performant by design, designed to handle 1000s of users concurrently
|
||||
- [x] Does not use official YouTube APIs
|
||||
- [x] Uses [NewPipeExtractor](https://github.com/TeamNewPipe/NewPipeExtractor) to extract information
|
||||
- [x] Public [JSON API](https://piped-docs.kavin.rocks/docs/api-documentation/)
|
||||
- [x] Public [JSON API](https://docs.piped.video/docs/api-documentation/)
|
||||
- [x] Federated protocol on Matrix to let instances collaborate with each other
|
||||
|
||||
## Screenshots
|
||||
|
||||
@ -61,13 +63,13 @@ By using Piped, you can freely watch and listen to content without the fear of p
|
||||
|
||||
## Self-Hosting
|
||||
|
||||
See https://piped-docs.kavin.rocks/docs/self-hosting/ for more details.
|
||||
See https://docs.piped.video/docs/self-hosting/ for more details.
|
||||
|
||||
The source code of the documentation website is available at https://github.com/TeamPiped/Documentation.
|
||||
|
||||
## Documentation
|
||||
|
||||
The documentation can be found at https://piped-docs.kavin.rocks (accessible via IPNS as well).
|
||||
The documentation can be found at https://docs.piped.video (accessible via IPNS as well).
|
||||
|
||||
## Extensions
|
||||
|
||||
@ -79,6 +81,16 @@ To redirect all YouTube links to Piped, you are highly recommended to use either
|
||||
|
||||
You can help by translating the project to a language you speak at https://hosted.weblate.org/projects/piped/frontend/
|
||||
|
||||
### Mirrors
|
||||
|
||||
- Cloudflare Pages - [cf.piped.video](https://cf.piped.video/)
|
||||
- Vercel - [vc.piped.video](https://vc.piped.video/)
|
||||
- Render - [re.piped.video](https://re.piped.video/)
|
||||
- Fleek - [fl.piped.video](https://fl.piped.video/)
|
||||
- DigitalOcean - [do.piped.video](https://do.piped.video/)
|
||||
- Netlify - [nf.piped.video](https://nf.piped.video/)
|
||||
- Azure - [az.piped.video](https://az.piped.video/)
|
||||
|
||||
### Forking, and contributing
|
||||
|
||||
- Fork the repository on GitHub: https://github.com/TeamPiped/Piped/fork
|
||||
|
44
package.json
44
package.json
@ -9,41 +9,41 @@
|
||||
"lint": "eslint --fix --color --ignore-path .gitignore --ext .js,.vue ."
|
||||
},
|
||||
"dependencies": {
|
||||
"@fortawesome/fontawesome-svg-core": "6.2.0",
|
||||
"@fortawesome/free-brands-svg-icons": "6.2.0",
|
||||
"@fortawesome/free-solid-svg-icons": "6.2.0",
|
||||
"@fortawesome/vue-fontawesome": "3.0.1",
|
||||
"@fortawesome/fontawesome-svg-core": "6.2.1",
|
||||
"@fortawesome/free-brands-svg-icons": "6.2.1",
|
||||
"@fortawesome/free-solid-svg-icons": "6.2.1",
|
||||
"@fortawesome/vue-fontawesome": "3.0.2",
|
||||
"buffer": "6.0.3",
|
||||
"dompurify": "2.4.0",
|
||||
"hotkeys-js": "3.10.0",
|
||||
"dompurify": "2.4.1",
|
||||
"hotkeys-js": "3.10.1",
|
||||
"javascript-time-ago": "2.5.9",
|
||||
"mux.js": "6.2.0",
|
||||
"shaka-player": "4.2.3",
|
||||
"shaka-player": "4.3.2",
|
||||
"stream-browserify": "3.0.0",
|
||||
"vue": "3.2.41",
|
||||
"vue": "3.2.45",
|
||||
"vue-i18n": "9.2.2",
|
||||
"vue-router": "4.1.6",
|
||||
"xml-js": "1.6.11"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@iconify/json": "2.1.132",
|
||||
"@iconify/json": "2.1.153",
|
||||
"@intlify/vite-plugin-vue-i18n": "6.0.3",
|
||||
"@unocss/preset-icons": "0.46.3",
|
||||
"@unocss/preset-web-fonts": "0.46.3",
|
||||
"@unocss/transformer-directives": "0.46.3",
|
||||
"@unocss/transformer-variant-group": "0.46.3",
|
||||
"@vitejs/plugin-legacy": "2.3.0",
|
||||
"@vitejs/plugin-vue": "3.2.0",
|
||||
"@vue/compiler-sfc": "3.2.41",
|
||||
"eslint": "8.26.0",
|
||||
"@unocss/preset-icons": "0.47.6",
|
||||
"@unocss/preset-web-fonts": "0.47.6",
|
||||
"@unocss/transformer-directives": "0.47.6",
|
||||
"@unocss/transformer-variant-group": "0.47.6",
|
||||
"@vitejs/plugin-legacy": "3.0.1",
|
||||
"@vitejs/plugin-vue": "4.0.0",
|
||||
"@vue/compiler-sfc": "3.2.45",
|
||||
"eslint": "8.29.0",
|
||||
"eslint-config-prettier": "8.5.0",
|
||||
"eslint-plugin-prettier": "4.2.1",
|
||||
"eslint-plugin-vue": "9.7.0",
|
||||
"prettier": "2.7.1",
|
||||
"unocss": "0.46.3",
|
||||
"vite": "3.2.2",
|
||||
"eslint-plugin-vue": "9.8.0",
|
||||
"prettier": "2.8.1",
|
||||
"unocss": "0.47.6",
|
||||
"vite": "3.2.5",
|
||||
"vite-plugin-eslint": "1.8.1",
|
||||
"vite-plugin-pwa": "0.13.1"
|
||||
"vite-plugin-pwa": "0.14.0"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"root": true,
|
||||
|
1
public/_redirects
Normal file
1
public/_redirects
Normal file
@ -0,0 +1 @@
|
||||
/* /index.html 200
|
@ -4,7 +4,7 @@
|
||||
<LongName>Piped Search</LongName>
|
||||
<Description>Search for videos, channels, and playlists on Piped</Description>
|
||||
<InputEncoding>UTF-8</InputEncoding>
|
||||
<Image width="48" height="48" type="image/x-icon">https://piped.kavin.rocks/favicon.ico</Image>
|
||||
<Url method="get" rel="results" type="text/html" template="https://piped.kavin.rocks/results?search_query={searchTerms}" />
|
||||
<Image width="48" height="48" type="image/x-icon">https://piped.video/favicon.ico</Image>
|
||||
<Url method="get" rel="results" type="text/html" template="https://piped.video/results?search_query={searchTerms}" />
|
||||
<Url method="get" rel="suggestions" type="application/x-suggestions+json" template="https://pipedapi.kavin.rocks/opensearch/suggestions?query={searchTerms}" />
|
||||
</OpenSearchDescription>
|
||||
|
@ -1,2 +1,2 @@
|
||||
User-agent: *
|
||||
Disallow:
|
||||
Disallow: /
|
||||
|
@ -181,7 +181,7 @@ export default {
|
||||
const App = this;
|
||||
|
||||
(async function () {
|
||||
const defaultLang = await App.defaultLangage;
|
||||
const defaultLang = await App.defaultLanguage;
|
||||
const locale = App.getPreferenceString("hl", defaultLang);
|
||||
if (locale !== App.TimeAgoConfig.locale) {
|
||||
const localeTime = await import(`../node_modules/javascript-time-ago/locale/${locale}.json`)
|
||||
|
@ -36,6 +36,7 @@
|
||||
>
|
||||
<font-awesome-icon icon="rss" />
|
||||
</a>
|
||||
<WatchOnYouTubeButton :link="`https://youtube.com/channel/${this.channel.id}`" />
|
||||
<p>|</p>
|
||||
<button
|
||||
v-for="(tab, index) in tabs"
|
||||
@ -75,11 +76,13 @@
|
||||
<script>
|
||||
import ErrorHandler from "./ErrorHandler.vue";
|
||||
import ContentItem from "./ContentItem.vue";
|
||||
import WatchOnYouTubeButton from "./WatchOnYouTubeButton.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
ErrorHandler,
|
||||
ContentItem,
|
||||
WatchOnYouTubeButton,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@ -201,23 +204,23 @@ export default {
|
||||
},
|
||||
});
|
||||
} else {
|
||||
this.handleLocalSubscriptions(this.channel.id);
|
||||
if (!this.handleLocalSubscriptions(this.channel.id)) return;
|
||||
}
|
||||
this.subscribed = !this.subscribed;
|
||||
},
|
||||
getTranslatedTabName(tabName) {
|
||||
let translatedTabName = tabName;
|
||||
switch (tabName) {
|
||||
case "Livestreams":
|
||||
case "livestreams":
|
||||
translatedTabName = this.$t("titles.livestreams");
|
||||
break;
|
||||
case "Playlists":
|
||||
case "playlists":
|
||||
translatedTabName = this.$t("titles.playlists");
|
||||
break;
|
||||
case "Channels":
|
||||
case "channels":
|
||||
translatedTabName = this.$t("titles.channels");
|
||||
break;
|
||||
case "Shorts":
|
||||
case "shorts":
|
||||
translatedTabName = this.$t("video.shorts");
|
||||
break;
|
||||
default:
|
||||
|
@ -4,7 +4,7 @@
|
||||
<font-awesome-icon :icon="['fab', 'github']" />
|
||||
<span v-t="'actions.source_code'" />
|
||||
</a>
|
||||
<a href="https://piped-docs.kavin.rocks/" target="_blank">
|
||||
<a href="https://docs.piped.video/" target="_blank">
|
||||
<font-awesome-icon :icon="['fa', 'book']" />
|
||||
<span v-t="'actions.documentation'" />
|
||||
</a>
|
||||
|
@ -159,7 +159,11 @@ export default {
|
||||
: [...new Set((this.getLocalSubscriptions() ?? []).concat(newChannels))];
|
||||
// Sort for better cache hits
|
||||
subscriptions.sort();
|
||||
localStorage.setItem("localSubscriptions", JSON.stringify(subscriptions));
|
||||
try {
|
||||
localStorage.setItem("localSubscriptions", JSON.stringify(subscriptions));
|
||||
} catch (e) {
|
||||
alert(this.$t("info.local_storage"));
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -5,7 +5,7 @@
|
||||
><img alt="logo" src="/img/icons/logo.svg" height="32" width="32" />iped</router-link
|
||||
>
|
||||
</div>
|
||||
<div class="lt-md:hidden flex flex-1 justify-start">
|
||||
<div class="lt-md:hidden flex flex-1 justify-start" style="position: relative">
|
||||
<input
|
||||
v-model="searchText"
|
||||
type="text"
|
||||
@ -54,7 +54,7 @@
|
||||
</nav>
|
||||
|
||||
<!-- search suggestions for mobile devices -->
|
||||
<div class="w-{full - 4} md:hidden mx-2">
|
||||
<div class="w-{full - 4} md:hidden mx-2" style="position: relative">
|
||||
<input
|
||||
v-model="searchText"
|
||||
type="text"
|
||||
@ -66,6 +66,7 @@
|
||||
@focus="onInputFocus"
|
||||
@blur="onInputBlur"
|
||||
/>
|
||||
<span v-if="searchText" class="delete-search" @click="searchText = ''">x</span>
|
||||
</div>
|
||||
<SearchSuggestions
|
||||
v-show="(searchText || showSearchHistory) && suggestionsVisible"
|
||||
@ -104,12 +105,29 @@
|
||||
width: auto;
|
||||
margin: 0 -5rem;
|
||||
}
|
||||
.delete-search {
|
||||
position: absolute;
|
||||
display: flex;
|
||||
right: 6rem;
|
||||
top: 5.5rem;
|
||||
height: 30rem;
|
||||
width: 30rem;
|
||||
cursor: pointer;
|
||||
background-color: var(--efy_bg1);
|
||||
border: var(--efy_border);
|
||||
border-radius: var(--efy_radius0);
|
||||
place-content: center;
|
||||
font-size: 20rem;
|
||||
color: var(--efy_text);
|
||||
flex-wrap: wrap;
|
||||
align-content: center;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
import SearchSuggestions from "./SearchSuggestions.vue";
|
||||
import hotkeys from "hotkeys-js";
|
||||
import LoginModal from "./LoginModal.vue";
|
||||
import hotkeys from "hotkeys-js";
|
||||
export default {
|
||||
components: {
|
||||
SearchSuggestions,
|
||||
@ -119,8 +137,8 @@ export default {
|
||||
return {
|
||||
searchText: "",
|
||||
suggestionsVisible: false,
|
||||
showTopNav: false,
|
||||
showLoginModal: false,
|
||||
showTopNav: false,
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
@ -138,8 +156,8 @@ export default {
|
||||
shouldShowTrending(_this) {
|
||||
return _this.getPreferenceString("homepage", "trending") != "trending";
|
||||
},
|
||||
showSearchHistory() {
|
||||
return localStorage.getItem("searchHistory") && localStorage.getItem("search_history");
|
||||
showSearchHistory(_this) {
|
||||
return _this.getPreferenceBoolean("searchHistory", false) && localStorage.getItem("search_history");
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
|
@ -14,7 +14,7 @@
|
||||
<div>
|
||||
<strong v-text="`${playlist.videos} ${$t('video.videos')}`" />
|
||||
<br />
|
||||
<button class="btn mr-1" v-if="authenticated && !isPipedPlaylist" @click="clonePlaylist">
|
||||
<button class="btn mr-1 ml-2" v-if="authenticated && !isPipedPlaylist" @click="clonePlaylist">
|
||||
{{ $t("actions.clone_playlist") }}<font-awesome-icon class="ml-3" icon="clone" />
|
||||
</button>
|
||||
<button class="btn mr-1" @click="downloadPlaylistAsTxt">
|
||||
@ -23,6 +23,7 @@
|
||||
<a class="btn" :href="getRssUrl">
|
||||
<font-awesome-icon icon="rss" />
|
||||
</a>
|
||||
<WatchOnYouTubeButton :link="`https://www.youtube.com/playlist?list=${this.$route.query.list}`" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -47,11 +48,13 @@
|
||||
<script>
|
||||
import ErrorHandler from "./ErrorHandler.vue";
|
||||
import VideoItem from "./VideoItem.vue";
|
||||
import WatchOnYouTubeButton from "./WatchOnYouTubeButton.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
ErrorHandler,
|
||||
VideoItem,
|
||||
WatchOnYouTubeButton,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@ -137,7 +140,7 @@ export default {
|
||||
downloadPlaylistAsTxt() {
|
||||
var data = "";
|
||||
this.playlist.relatedStreams.forEach(element => {
|
||||
data += "https://piped.kavin.rocks" + element.url + "\n";
|
||||
data += "https://piped.video" + element.url + "\n";
|
||||
});
|
||||
this.download(data, this.playlist.name + ".txt", "text/plain");
|
||||
},
|
||||
|
@ -3,8 +3,26 @@
|
||||
|
||||
<hr />
|
||||
|
||||
<div v-if="authenticated">
|
||||
<button v-t="'actions.create_playlist'" class="btn" @click="createPlaylist" />
|
||||
<div>
|
||||
<div class="flex justify-between">
|
||||
<button v-t="'actions.create_playlist'" class="btn mr-2" @click="onCreatePlaylist" />
|
||||
<div class="flex">
|
||||
<button
|
||||
v-if="this.playlists.length > 0"
|
||||
v-t="'actions.export_to_json'"
|
||||
class="btn"
|
||||
@click="exportPlaylists"
|
||||
/>
|
||||
<input
|
||||
id="fileSelector"
|
||||
ref="fileSelector"
|
||||
type="file"
|
||||
class="display-none"
|
||||
@change="importPlaylists"
|
||||
/>
|
||||
<label for="fileSelector" v-t="'actions.import_from_json'" class="btn ml-2" role="button" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="video-grid">
|
||||
<div v-for="playlist in playlists" :key="playlist.id" class="efy_trans_filter">
|
||||
@ -36,34 +54,18 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else class="text-center h-[65vh] flex flex-col justify-center items-center">
|
||||
<h1 v-t="'actions.not_logged_in'"></h1>
|
||||
<div class="flex mt-100 items-center children:(mx-30)">
|
||||
<button @click="showLoginModal = true" v-t="'titles.account'"></button>
|
||||
<a class="btn h-min!" href="/" v-t="'actions.back_to_home'"></a>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
|
||||
<LoginModal v-if="showLoginModal" @close="showLoginModal = !showLoginModal" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import LoginModal from "./LoginModal.vue";
|
||||
|
||||
export default {
|
||||
components: {
|
||||
LoginModal,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
playlists: [],
|
||||
showLoginModal: false,
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
if (this.authenticated) this.fetchPlaylists();
|
||||
else this.showLoginModal = true;
|
||||
else this.$router.push("/login");
|
||||
},
|
||||
activated() {
|
||||
document.title = this.$t("titles.playlists") + " - Piped";
|
||||
@ -119,22 +121,90 @@ export default {
|
||||
else this.playlists = this.playlists.filter(playlist => playlist.id !== id);
|
||||
});
|
||||
},
|
||||
createPlaylist() {
|
||||
onCreatePlaylist() {
|
||||
const name = prompt(this.$t("actions.create_playlist"));
|
||||
if (name)
|
||||
this.fetchJson(this.authApiUrl() + "/user/playlists/create", null, {
|
||||
method: "POST",
|
||||
body: JSON.stringify({
|
||||
name: name,
|
||||
}),
|
||||
headers: {
|
||||
Authorization: this.getAuthToken(),
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
}).then(json => {
|
||||
if (json.error) alert(json.error);
|
||||
else this.fetchPlaylists();
|
||||
});
|
||||
if (!name) return;
|
||||
this.createPlaylist(name).then(json => {
|
||||
if (json.error) alert(json.error);
|
||||
else this.fetchPlaylists();
|
||||
});
|
||||
},
|
||||
async createPlaylist(name) {
|
||||
let json = await this.fetchJson(this.authApiUrl() + "/user/playlists/create", null, {
|
||||
method: "POST",
|
||||
body: JSON.stringify({
|
||||
name: name,
|
||||
}),
|
||||
headers: {
|
||||
Authorization: this.getAuthToken(),
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
});
|
||||
return json;
|
||||
},
|
||||
async exportPlaylists() {
|
||||
if (!this.playlists) return;
|
||||
let json = {
|
||||
format: "Piped",
|
||||
version: 1,
|
||||
playlists: [],
|
||||
};
|
||||
let tasks = [];
|
||||
for (var i = 0; i < this.playlists.length; i++) {
|
||||
tasks.push(this.fetchPlaylistJson(this.playlists[i].id));
|
||||
}
|
||||
json.playlists = await Promise.all(tasks);
|
||||
this.download(JSON.stringify(json), "playlists.json", "application/json");
|
||||
},
|
||||
async fetchPlaylistJson(playlistId) {
|
||||
let playlist = await this.fetchJson(this.authApiUrl() + "/playlists/" + playlistId);
|
||||
let playlistJson = {
|
||||
name: playlist.name,
|
||||
// possible other types: history, watch later, ...
|
||||
type: "playlist",
|
||||
// as Invidious supports public and private playlists
|
||||
visibility: "private",
|
||||
// list of the videos, starting with "https://youtube.com" to clarify that those are YT videos
|
||||
videos: [],
|
||||
};
|
||||
for (var i = 0; i < playlist.relatedStreams.length; i++) {
|
||||
playlistJson.videos.push("https://youtube.com" + playlist.relatedStreams[i].url);
|
||||
}
|
||||
return playlistJson;
|
||||
},
|
||||
async importPlaylists() {
|
||||
const file = this.$refs.fileSelector.files[0];
|
||||
let text = await file.text();
|
||||
let playlists = JSON.parse(text).playlists;
|
||||
if (!playlists.length) {
|
||||
alert(this.$t("actions.no_valid_playlists"));
|
||||
return;
|
||||
}
|
||||
let tasks = [];
|
||||
for (var i = 0; i < playlists.length; i++) {
|
||||
tasks.push(this.createPlaylistWithVideos(playlists[i]));
|
||||
}
|
||||
await Promise.all(tasks);
|
||||
window.location.reload();
|
||||
},
|
||||
async createPlaylistWithVideos(playlist) {
|
||||
let newPlaylist = await this.createPlaylist(playlist.name);
|
||||
console.log(newPlaylist);
|
||||
let videoIds = playlist.videos.map(url => url.substr(-11));
|
||||
await this.addVideosToPlaylist(newPlaylist.playlistId, videoIds);
|
||||
},
|
||||
async addVideosToPlaylist(playlistId, videoIds) {
|
||||
await this.fetchJson(this.authApiUrl() + "/user/playlists/add", null, {
|
||||
method: "POST",
|
||||
body: JSON.stringify({
|
||||
playlistId: playlistId,
|
||||
videoIds: videoIds,
|
||||
}),
|
||||
headers: {
|
||||
Authorization: this.getAuthToken(),
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
|
@ -192,6 +192,36 @@
|
||||
@change="onChange($event)"
|
||||
/>
|
||||
</label>
|
||||
<label class="pref" for="chkMinimizeChapters">
|
||||
<strong v-t="'actions.minimize_chapters_default'" />
|
||||
<input
|
||||
id="chkMinimizeChapters"
|
||||
v-model="minimizeChapters"
|
||||
class="checkbox"
|
||||
type="checkbox"
|
||||
@change="onChange($event)"
|
||||
/>
|
||||
</label>
|
||||
<label class="pref" for="chkShowWatchOnYouTube">
|
||||
<strong v-t="'actions.show_watch_on_youtube'" />
|
||||
<input
|
||||
id="chkShowWatchOnYouTube"
|
||||
v-model="showWatchOnYouTube"
|
||||
class="checkbox"
|
||||
type="checkbox"
|
||||
@change="onChange($event)"
|
||||
/>
|
||||
</label>
|
||||
<label class="pref" for="chkStoreSearchHistory">
|
||||
<strong v-t="'actions.store_search_history'" />
|
||||
<input
|
||||
id="chkStoreSearchHistory"
|
||||
v-model="searchHistory"
|
||||
class="checkbox"
|
||||
type="checkbox"
|
||||
@change="onChange($event)"
|
||||
/>
|
||||
</label>
|
||||
<label class="pref" for="chkStoreWatchHistory">
|
||||
<strong v-t="'actions.store_watch_history'" />
|
||||
<input
|
||||
@ -202,6 +232,16 @@
|
||||
@change="onChange($event)"
|
||||
/>
|
||||
</label>
|
||||
<label v-if="watchHistory" class="pref" for="chkHideWatched">
|
||||
<strong v-t="'actions.hide_watched'" />
|
||||
<input
|
||||
id="chkHideWatched"
|
||||
v-model="hideWatched"
|
||||
class="checkbox"
|
||||
type="checkbox"
|
||||
@change="onChange($event)"
|
||||
/>
|
||||
</label>
|
||||
<label class="pref" for="ddlEnabledCodecs">
|
||||
<strong v-t="'actions.enabled_codecs'" />
|
||||
<select
|
||||
@ -419,6 +459,8 @@ export default {
|
||||
minimizeComments: false,
|
||||
minimizeDescription: false,
|
||||
minimizeRecommendations: false,
|
||||
minimizeChapters: false,
|
||||
showWatchOnYouTube: false,
|
||||
watchHistory: false,
|
||||
searchHistory: false,
|
||||
hideWatched: false,
|
||||
@ -444,6 +486,7 @@ export default {
|
||||
{ code: "hi", name: "हिंदी" },
|
||||
{ code: "id", name: "Indonesia" },
|
||||
{ code: "is", name: "Íslenska" },
|
||||
{ code: "kab", name: "Taqbaylit" },
|
||||
{ code: "hr", name: "Hrvatski" },
|
||||
{ code: "it", name: "Italiano" },
|
||||
{ code: "ja", name: "日本語" },
|
||||
@ -452,10 +495,12 @@ export default {
|
||||
{ code: "ml", name: "മലയാളം" },
|
||||
{ code: "nb_NO", name: "Norwegian Bokmål" },
|
||||
{ code: "nl", name: "Nederlands" },
|
||||
{ code: "or", name: "ଓଡ଼ିଆ" },
|
||||
{ code: "pl", name: "Polski" },
|
||||
{ code: "pt", name: "Português" },
|
||||
{ code: "pt_PT", name: "Português (Portugal)" },
|
||||
{ code: "pt_BR", name: "Português (Brasil)" },
|
||||
{ code: "ro", name: "Română" },
|
||||
{ code: "ru", name: "Русский" },
|
||||
{ code: "sr", name: "Српски" },
|
||||
{ code: "sv", name: "Svenska" },
|
||||
@ -555,9 +600,11 @@ export default {
|
||||
this.minimizeComments = this.getPreferenceBoolean("minimizeComments", false);
|
||||
this.minimizeDescription = this.getPreferenceBoolean("minimizeDescription", false);
|
||||
this.minimizeRecommendations = this.getPreferenceBoolean("minimizeRecommendations", false);
|
||||
this.minimizeChapters = this.getPreferenceBoolean("minimizeChapters", false);
|
||||
this.showWatchOnYouTube = this.getPreferenceBoolean("showWatchOnYouTube", false);
|
||||
this.watchHistory = this.getPreferenceBoolean("watchHistory", false);
|
||||
this.searchHistory = this.getPreferenceBoolean("searchHistory", false);
|
||||
this.selectedLanguage = this.getPreferenceString("hl", await this.defaultLangage);
|
||||
this.selectedLanguage = this.getPreferenceString("hl", await this.defaultLanguage);
|
||||
this.enabledCodecs = this.getPreferenceString("enabledCodecs", "vp9,avc").split(",");
|
||||
this.disableLBRY = this.getPreferenceBoolean("disableLBRY", false);
|
||||
this.proxyLBRY = this.getPreferenceBoolean("proxyLBRY", false);
|
||||
@ -581,8 +628,8 @@ export default {
|
||||
if (
|
||||
this.getPreferenceString("theme", "dark") !== this.selectedTheme ||
|
||||
this.getPreferenceBoolean("watchHistory", false) != this.watchHistory ||
|
||||
this.getPreferenceString("hl", await this.defaultLangage) !== this.selectedLanguage ||
|
||||
this.getPreferenceString("enabledCodecs", "av1,vp9,avc") !== this.enabledCodecs.join(",")
|
||||
this.getPreferenceString("hl", await this.defaultLanguage) !== this.selectedLanguage ||
|
||||
this.getPreferenceString("enabledCodecs", "vp9,avc") !== this.enabledCodecs.join(",")
|
||||
)
|
||||
shouldReload = true;
|
||||
|
||||
@ -614,6 +661,8 @@ export default {
|
||||
localStorage.setItem("minimizeComments", this.minimizeComments);
|
||||
localStorage.setItem("minimizeDescription", this.minimizeDescription);
|
||||
localStorage.setItem("minimizeRecommendations", this.minimizeRecommendations);
|
||||
localStorage.setItem("minimizeChapters", this.minimizeChapters);
|
||||
localStorage.setItem("showWatchOnYouTube", this.showWatchOnYouTube);
|
||||
localStorage.setItem("watchHistory", this.watchHistory);
|
||||
localStorage.setItem("searchHistory", this.searchHistory);
|
||||
if (!this.searchHistory) localStorage.removeItem("search_history");
|
||||
|
@ -66,8 +66,8 @@ export default {
|
||||
}
|
||||
},
|
||||
onChange() {
|
||||
this.setPreference("shareWithTimeCode", this.withTimeCode);
|
||||
this.setPreference("shareAsPipedLink", this.pipedLink);
|
||||
this.setPreference("shareWithTimeCode", this.withTimeCode, true);
|
||||
this.setPreference("shareAsPipedLink", this.pipedLink, true);
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
|
@ -9,27 +9,38 @@
|
||||
<i18n-t keypath="subscriptions.subscribed_channels_count">{{ subscriptions.length }}</i18n-t>
|
||||
</div>
|
||||
<hr />
|
||||
|
||||
<div class="grid">
|
||||
<div class="mb-3" v-for="subscription in subscriptions" :key="subscription.url">
|
||||
<div class="flex justify-center place-items-center">
|
||||
<div class="w-full flex justify-between items-center">
|
||||
<router-link :to="subscription.url" class="pp-import-channel flex font-bold">
|
||||
<img :src="subscription.avatar" width="48" height="48" />
|
||||
<span class="mx-2" v-text="subscription.name" />
|
||||
</router-link>
|
||||
<button
|
||||
class="btn w-min"
|
||||
@click="handleButton(subscription)"
|
||||
v-t="`actions.${subscription.subscribed ? 'unsubscribe' : 'subscribe'}`"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Subscriptions card list -->
|
||||
<div class="pp-subs-cards">
|
||||
<!-- channel info card -->
|
||||
<div efy_card class="pp-subs-card" v-for="subscription in subscriptions" :key="subscription.url">
|
||||
<router-link :to="subscription.url" class="pp-import-channel flex font-bold">
|
||||
<img :src="subscription.avatar" width="48" height="48" />
|
||||
<span class="mx-2" v-text="subscription.name" />
|
||||
</router-link>
|
||||
<!-- (un)subscribe btn -->
|
||||
<button
|
||||
@click="handleButton(subscription)"
|
||||
v-t="`actions.${subscription.subscribed ? 'unsubscribe' : 'subscribe'}`"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<br />
|
||||
</template>
|
||||
|
||||
<style>
|
||||
.pp-subs-cards {
|
||||
display: grid;
|
||||
gap: var(--efy_gap);
|
||||
grid-template-columns: repeat(auto-fill, minmax(240rem, 1fr));
|
||||
}
|
||||
.pp-subs-card :is(a, span) {
|
||||
-webkit-text-fill-color: var(--efy_text) !important;
|
||||
}
|
||||
.pp-subs-card button {
|
||||
margin-bottom: 0;
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
|
@ -17,6 +17,7 @@ export default {
|
||||
};
|
||||
},
|
||||
mounted() {
|
||||
if (this.$route.path == "/" && this.getPreferenceString("homepage", "trending") == "feed") return;
|
||||
let region = this.getPreferenceString("region", "US");
|
||||
|
||||
this.fetchTrending(region).then(videos => {
|
||||
|
@ -273,7 +273,11 @@ export default {
|
||||
).generate_dash_file_from_formats(streams, this.video.duration);
|
||||
|
||||
uri = "data:application/dash+xml;charset=utf-8;base64," + btoa(dash);
|
||||
} else uri = this.video.dash;
|
||||
} else {
|
||||
const url = new URL(this.video.dash);
|
||||
url.searchParams.set("rewrite", false);
|
||||
uri = url.toString();
|
||||
}
|
||||
mime = "application/dash+xml";
|
||||
} else if (lbry) {
|
||||
uri = lbry.url;
|
||||
@ -372,13 +376,13 @@ export default {
|
||||
});
|
||||
|
||||
videoEl.addEventListener("volumechange", () => {
|
||||
this.setPreference("volume", videoEl.volume);
|
||||
this.setPreference("volume", videoEl.volume, true);
|
||||
});
|
||||
|
||||
videoEl.addEventListener("ratechange", e => {
|
||||
const rate = videoEl.playbackRate;
|
||||
if (rate > 0 && !isNaN(videoEl.duration) && !isNaN(videoEl.duration - e.timeStamp / 1000))
|
||||
this.setPreference("rate", rate);
|
||||
this.setPreference("rate", rate, true);
|
||||
});
|
||||
|
||||
videoEl.addEventListener("ended", () => {
|
||||
@ -440,7 +444,14 @@ export default {
|
||||
|
||||
this.$ui = new shaka.ui.Overlay(localPlayer, this.$refs.container, videoEl);
|
||||
|
||||
const overflowMenuButtons = ["quality", "captions", "picture_in_picture", "playback_rate", "airplay"];
|
||||
const overflowMenuButtons = [
|
||||
"quality",
|
||||
"language",
|
||||
"captions",
|
||||
"picture_in_picture",
|
||||
"playback_rate",
|
||||
"airplay",
|
||||
];
|
||||
|
||||
if (this.isEmbed) {
|
||||
overflowMenuButtons.push("open_new_tab");
|
||||
@ -480,22 +491,40 @@ export default {
|
||||
if (qualityConds) this.$player.configure("abr.enabled", false);
|
||||
|
||||
player.load(uri, 0, mime).then(() => {
|
||||
const isSafari = window.navigator?.vendor?.includes("Apple");
|
||||
|
||||
if (!isSafari) {
|
||||
// Set the audio language
|
||||
const prefLang = this.getPreferenceString("hl", "en").substr(0, 2);
|
||||
var lang = "en";
|
||||
for (var l in player.getAudioLanguages()) {
|
||||
if (l == prefLang) {
|
||||
lang = l;
|
||||
return;
|
||||
}
|
||||
}
|
||||
player.selectAudioLanguage(lang);
|
||||
}
|
||||
|
||||
if (qualityConds) {
|
||||
var leastDiff = Number.MAX_VALUE;
|
||||
var bestStream = null;
|
||||
|
||||
var bestAudio = 0;
|
||||
|
||||
const tracks = player
|
||||
.getVariantTracks()
|
||||
.filter(track => track.language == lang || track.language == "und");
|
||||
|
||||
// Choose the best audio stream
|
||||
if (quality >= 480)
|
||||
player.getVariantTracks().forEach(track => {
|
||||
tracks.forEach(track => {
|
||||
const audioBandwidth = track.audioBandwidth;
|
||||
if (audioBandwidth > bestAudio) bestAudio = audioBandwidth;
|
||||
});
|
||||
|
||||
// Find best matching stream based on resolution and bitrate
|
||||
player
|
||||
.getVariantTracks()
|
||||
tracks
|
||||
.sort((a, b) => a.bandwidth - b.bandwidth)
|
||||
.forEach(stream => {
|
||||
if (stream.audioBandwidth < bestAudio) return;
|
||||
@ -706,6 +735,7 @@ html .shaka-range-element:focus {
|
||||
.material-icons-round,
|
||||
.shaka-current-time {
|
||||
-webkit-text-fill-color: #fff !important;
|
||||
filter: none !important;
|
||||
opacity: 1 !important;
|
||||
}
|
||||
.shaka-overflow-menu,
|
||||
|
24
src/components/WatchOnYouTubeButton.vue
Normal file
24
src/components/WatchOnYouTubeButton.vue
Normal file
@ -0,0 +1,24 @@
|
||||
<script>
|
||||
export default {
|
||||
props: {
|
||||
link: String,
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<template v-if="this.getPreferenceBoolean('showWatchOnYouTube', false)">
|
||||
<a :href="link" class="pp-watch-onyt-btn btn" role="button" :title="$t('player.watch_on') + 'YouTube'">
|
||||
<font-awesome-icon class="mx-1.5" :icon="['fab', 'youtube']" />
|
||||
</a>
|
||||
</template>
|
||||
</template>
|
||||
|
||||
<style>
|
||||
.pp-watch-onyt-btn {
|
||||
display: flex;
|
||||
margin-left: var(--efy_gap0);
|
||||
align-items: center;
|
||||
gap: 5rem;
|
||||
}
|
||||
</style>
|
@ -96,7 +96,8 @@
|
||||
>
|
||||
<font-awesome-icon icon="rss" />
|
||||
</a>
|
||||
<!-- watch on youtube button -->
|
||||
<WatchOnYouTubeButton :link="`https://youtu.be/${getVideoId()}`" />
|
||||
<!-- Share Dialog -->
|
||||
<button class="btn" @click="showShareModal = !showShareModal">
|
||||
<i18n-t class="lt-lg:hidden" keypath="actions.share" tag="strong"></i18n-t>
|
||||
<font-awesome-icon class="mx-1.5 ml-1" icon="fa-share" />
|
||||
@ -212,6 +213,7 @@ import ChaptersBar from "./ChaptersBar.vue";
|
||||
import PlaylistAddModal from "./PlaylistAddModal.vue";
|
||||
import ShareModal from "./ShareModal.vue";
|
||||
import PlaylistVideos from "./PlaylistVideos.vue";
|
||||
import WatchOnYouTubeButton from "./WatchOnYouTubeButton.vue";
|
||||
|
||||
export default {
|
||||
name: "App",
|
||||
@ -224,6 +226,7 @@ export default {
|
||||
PlaylistAddModal,
|
||||
ShareModal,
|
||||
PlaylistVideos,
|
||||
WatchOnYouTubeButton,
|
||||
},
|
||||
data() {
|
||||
const smallViewQuery = window.matchMedia("(max-width: 640px)");
|
||||
@ -330,6 +333,7 @@ export default {
|
||||
this.showComments = !this.getPreferenceBoolean("minimizeComments", false);
|
||||
this.showDesc = !this.getPreferenceBoolean("minimizeDescription", false);
|
||||
this.showRecs = !this.getPreferenceBoolean("minimizeRecommendations", false);
|
||||
this.showChapters = !this.getPreferenceBoolean("minimizeChapters", false);
|
||||
if (this.video.duration) {
|
||||
document.title = this.video.title + " - Piped";
|
||||
this.$refs.videoPlayer.loadVideo();
|
||||
@ -368,7 +372,7 @@ export default {
|
||||
return this.fetchJson(this.apiUrl() + "/comments/" + this.getVideoId());
|
||||
},
|
||||
onChange() {
|
||||
this.setPreference("autoplay", this.selectedAutoPlay);
|
||||
this.setPreference("autoplay", this.selectedAutoPlay, true);
|
||||
},
|
||||
async getVideoData() {
|
||||
await this.fetchVideo()
|
||||
@ -470,7 +474,7 @@ export default {
|
||||
},
|
||||
});
|
||||
} else {
|
||||
this.handleLocalSubscriptions(this.channelId);
|
||||
if (!this.handleLocalSubscriptions(this.channelId)) return;
|
||||
}
|
||||
this.subscribed = !this.subscribed;
|
||||
},
|
||||
|
@ -10,7 +10,9 @@
|
||||
"feed": "التغذية",
|
||||
"account": "الحساب",
|
||||
"instance": "الخادم",
|
||||
"player": "المشغل"
|
||||
"player": "المشغل",
|
||||
"livestreams": "البث المباشر",
|
||||
"channels": "القنوات"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "شاهد عبر"
|
||||
@ -114,7 +116,10 @@
|
||||
"hide_watched": "إخفاء مقاطع الفيديو التي تمت مشاهدتها من الخلاصة",
|
||||
"reply_count": "{count} الردود",
|
||||
"minimize_comments_default": "تصغير التعليقات بشكل افتراضي",
|
||||
"minimize_comments": "تصغير التعليقات"
|
||||
"minimize_comments": "تصغير التعليقات",
|
||||
"show_watch_on_youtube": "عرض زر مشاهدة على يوتيوب",
|
||||
"minimize_chapters_default": "تصغير الفصول بشكل افتراضي",
|
||||
"no_valid_playlists": "لا يحتوي الملف على قوائم تشغيل صالحة!"
|
||||
},
|
||||
"video": {
|
||||
"sponsor_segments": "المقاطع الإعلانية",
|
||||
@ -166,6 +171,7 @@
|
||||
"preferences_note": "ملاحظة: يتم حفظ التفضيلات في وحدة التخزين المحلية في متصفحك. سيؤدي حذف بيانات المتصفح إلى إعادة تعيينها.",
|
||||
"page_not_found": "لم يتم العثور على الصفحة",
|
||||
"copied": "نسخ!",
|
||||
"cannot_copy": "لا يمكن نسخه!"
|
||||
"cannot_copy": "لا يمكن نسخه!",
|
||||
"local_storage": "يتطلب هذا الإجراء التخزين المحلي، هل يتم تمكين ملفات تعريف الارتباط؟"
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Pleylistlər",
|
||||
"account": "Hesab",
|
||||
"instance": "Nümunə",
|
||||
"player": "Oynadıcı"
|
||||
"player": "Oynadıcı",
|
||||
"livestreams": "Canlı yayımlar",
|
||||
"channels": "Kanallar"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "{0} saytında baxın"
|
||||
@ -114,7 +116,10 @@
|
||||
"back_to_home": "Evə qayıt",
|
||||
"reply_count": "{count} cavab",
|
||||
"minimize_comments_default": "Şərhləri standart olaraq kiçilt",
|
||||
"minimize_comments": "Şərhləri Kiçilt"
|
||||
"minimize_comments": "Şərhləri Kiçilt",
|
||||
"minimize_chapters_default": "Defolt olaraq bölmələri kiçilt",
|
||||
"show_watch_on_youtube": "YouTube-da Baxış düyməsini göstər",
|
||||
"no_valid_playlists": "Faylda etibarlı pleylistlər yoxdur!"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Tərəfindən Sabitləndi {author}",
|
||||
@ -166,6 +171,7 @@
|
||||
"preferences_note": "Qeyd: Seçimlər brauzerinizin yerli yaddaşında saxlanılır. Brauzer məlumatlarınızın silinməsi onları sıfırlayacaq.",
|
||||
"page_not_found": "Səhifə tapılmadı",
|
||||
"copied": "Kopyalandı!",
|
||||
"cannot_copy": "Kopyalanmır!"
|
||||
"cannot_copy": "Kopyalanmır!",
|
||||
"local_storage": "Bu fəaliyyət localStorage tələb edir, məlumat bazası aktivdir?"
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Llistes de reproducció",
|
||||
"account": "Compte",
|
||||
"instance": "Instància",
|
||||
"player": "Reproductor"
|
||||
"player": "Reproductor",
|
||||
"livestreams": "Retransmissió en directe",
|
||||
"channels": "Canals"
|
||||
},
|
||||
"actions": {
|
||||
"channel_name_desc": "Nom del Canal (Z-A)",
|
||||
@ -108,7 +110,11 @@
|
||||
"show_chapters": "Capítols",
|
||||
"status_page": "Estat",
|
||||
"source_code": "Codi font",
|
||||
"documentation": "Documentació"
|
||||
"documentation": "Documentació",
|
||||
"show_watch_on_youtube": "Mostra el botó \"Veure a Youtube\"",
|
||||
"reply_count": "{count} respostes",
|
||||
"minimize_comments_default": "Minimitzar els comentaris per defecte",
|
||||
"minimize_comments": "Minimitza els comentaris"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Fixat per {author}",
|
||||
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Playlisty",
|
||||
"account": "Účet",
|
||||
"instance": "Instance",
|
||||
"player": "Přehrávač"
|
||||
"player": "Přehrávač",
|
||||
"livestreams": "Živé přenosy",
|
||||
"channels": "Kanály"
|
||||
},
|
||||
"actions": {
|
||||
"loop_this_video": "Přehrávat video ve smyčce",
|
||||
@ -111,7 +113,10 @@
|
||||
"status_page": "Stav",
|
||||
"reply_count": "{count} odpovědí",
|
||||
"minimize_comments_default": "Ve výchozím nastavení skrýt komentáře",
|
||||
"minimize_comments": "Skrýt komentáře"
|
||||
"minimize_comments": "Skrýt komentáře",
|
||||
"show_watch_on_youtube": "Zobrazit tlačítko Sledovat na YouTube",
|
||||
"minimize_chapters_default": "Ve výchozím nastavení skrýt kapitoly",
|
||||
"no_valid_playlists": "Soubor neobsahuje platné playlisty!"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Sledovat na {0}"
|
||||
@ -166,6 +171,7 @@
|
||||
"preferences_note": "Poznámka: předvolby se ukládají do místního úložiště prohlížeče. Vymazáním dat prohlížeče budou obnoveny.",
|
||||
"page_not_found": "Stránka nenalezena",
|
||||
"copied": "Zkopírováno!",
|
||||
"cannot_copy": "Nelze zkopírovat!"
|
||||
"cannot_copy": "Nelze zkopírovat!",
|
||||
"local_storage": "Tato akce vyžaduje localStorage, jsou povoleny cookies?"
|
||||
}
|
||||
}
|
||||
|
@ -41,7 +41,7 @@
|
||||
"minimize_description": "Beschreibung minimieren",
|
||||
"show_recommendations": "Empfehlungen anzeigen",
|
||||
"minimize_recommendations": "Empfehlungen minimieren",
|
||||
"donations": "Spenden",
|
||||
"donations": "Spenden für die Entwickler",
|
||||
"auto_play_next_video": "Nächstes Video automatisch abspielen",
|
||||
"loop_this_video": "Dieses Video wiederholen",
|
||||
"import_from_json": "Aus JSON/CSV importieren",
|
||||
@ -89,7 +89,19 @@
|
||||
"confirm_reset_preferences": "Bist du sicher, dass du deine Einstellungen zurücksetzen möchtest?",
|
||||
"backup_preferences": "Einstellungen sichern",
|
||||
"restore_preferences": "Einstellungen wiederherstellen",
|
||||
"show_chapters": "Kapitel"
|
||||
"show_chapters": "Kapitel",
|
||||
"source_code": "Quellcode",
|
||||
"store_search_history": "Suchverlauf speichern",
|
||||
"hide_watched": "Gesehene Videos im Feed ausblenden",
|
||||
"reply_count": "{count} Antworten",
|
||||
"instance_donations": "Instanz-Spenden",
|
||||
"documentation": "Dokumentation",
|
||||
"status_page": "Status",
|
||||
"minimize_chapters_default": "Kapitel standardmäßig minimieren",
|
||||
"minimize_comments_default": "Kommentare automatisch minimieren",
|
||||
"minimize_comments": "Kommentare minimieren",
|
||||
"no_valid_playlists": "Die Datei enthält keine gültigen Wiedergabelisten!",
|
||||
"show_watch_on_youtube": "Schaltfläche „Auf YouTube ansehen“ anzeigen"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Auf {0} ansehen"
|
||||
@ -105,7 +117,9 @@
|
||||
"playlists": "Wiedergabelisten",
|
||||
"account": "Konto",
|
||||
"player": "Player",
|
||||
"instance": "Instanz"
|
||||
"instance": "Instanz",
|
||||
"livestreams": "Livestreams",
|
||||
"channels": "Kanäle"
|
||||
},
|
||||
"video": {
|
||||
"sponsor_segments": "Sponsoren-Segmente",
|
||||
@ -154,6 +168,7 @@
|
||||
"preferences_note": "Achtung: Einstellung werden lokal in deinem Browser gespeichert. Wenn du deine Browserdaten löschst werden sie auch gelöscht.",
|
||||
"page_not_found": "Seite nicht gefunden",
|
||||
"copied": "Kopiert!",
|
||||
"cannot_copy": "Kopieren nicht möglich!"
|
||||
"cannot_copy": "Kopieren nicht möglich!",
|
||||
"local_storage": "Diese Aktion erfordert „localStorage“, sind Cookies aktiviert?"
|
||||
}
|
||||
}
|
||||
|
@ -90,6 +90,8 @@
|
||||
"delete_account": "Delete Account",
|
||||
"logout": "Logout from this device",
|
||||
"minimize_recommendations_default": "Minimize Recommendations by default",
|
||||
"minimize_chapters_default": "Minimize Chapters by default",
|
||||
"show_watch_on_youtube": "Show Watch on YouTube button",
|
||||
"invalidate_session": "Logout all devices",
|
||||
"different_auth_instance": "Use a different instance for authentication",
|
||||
"instance_auth_selection": "Autentication Instance Selection",
|
||||
@ -117,7 +119,7 @@
|
||||
"source_code": "Source code",
|
||||
"instance_donations": "Instance donations",
|
||||
"reply_count": "{count} replies",
|
||||
"not_logged_in": "Not logged in yet."
|
||||
"no_valid_playlists": "The file doesn't contain valid playlists!"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Pinned by {author}",
|
||||
@ -166,6 +168,7 @@
|
||||
"preferences_note": "Note: preferences are saved in the local storage of your browser. Deleting your browser data will reset them.",
|
||||
"page_not_found": "Page not found",
|
||||
"copied": "Copied!",
|
||||
"cannot_copy": "Can't copy!"
|
||||
"cannot_copy": "Can't copy!",
|
||||
"local_storage": "This action requires localStorage, are cookies enabled?"
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Ludlistoj",
|
||||
"account": "Konto",
|
||||
"player": "Ludilo",
|
||||
"instance": "Nodo"
|
||||
"instance": "Nodo",
|
||||
"channels": "Kanaloj",
|
||||
"livestreams": "Tujelsendoj"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Vidi en {0}"
|
||||
@ -114,7 +116,10 @@
|
||||
"minimize_description_default": "Defaŭlte Plejetigi Priskribon",
|
||||
"minimize_recommendations_default": "Defaŭlte Plejetigi Rekomendojn",
|
||||
"minimize_comments_default": "Defaŭlte Plejetigi Komentojn",
|
||||
"minimize_comments": "Plejetigi Komentojn"
|
||||
"minimize_comments": "Plejetigi Komentojn",
|
||||
"show_watch_on_youtube": "Montri «Vidi en Youtube»-butonon",
|
||||
"minimize_chapters_default": "Defaŭlte plejetigi ĉapitrojn",
|
||||
"no_valid_playlists": "La dosiero ne enhavas validajn ludlistojn!"
|
||||
},
|
||||
"video": {
|
||||
"chapters": "Sekcioj",
|
||||
@ -141,7 +146,8 @@
|
||||
"copied": "Kopiita!",
|
||||
"cannot_copy": "Ne povas kopii!",
|
||||
"preferences_note": "Noto: la agordoj estas konservitaj en la loka memoro de via retumilo. Forigi la datumojn de via retumilo restarigos ilin.",
|
||||
"page_not_found": "Paĝo ne trovita"
|
||||
"page_not_found": "Paĝo ne trovita",
|
||||
"local_storage": "Ĉi tiu ago postulas localStorage, ĉu kuketoj estas ebligitaj?"
|
||||
},
|
||||
"login": {
|
||||
"username": "Uzantnomo",
|
||||
|
@ -123,7 +123,10 @@
|
||||
"hide_watched": "Ocultar los vídeos vistos en el feed",
|
||||
"reply_count": "{count} respuestas",
|
||||
"minimize_comments_default": "Minimizar comentarios por defecto",
|
||||
"minimize_comments": "Minimizar comentarios"
|
||||
"minimize_comments": "Minimizar comentarios",
|
||||
"show_watch_on_youtube": "Mostrar botón Ver en YouTube",
|
||||
"minimize_chapters_default": "Minimiza capítulos por defecto",
|
||||
"no_valid_playlists": "¡El archivo no contiene listas de reproducción válidas!"
|
||||
},
|
||||
"titles": {
|
||||
"feed": "Fuente web",
|
||||
@ -136,7 +139,9 @@
|
||||
"playlists": "Listas de reproducción",
|
||||
"account": "Cuenta",
|
||||
"instance": "Instancia",
|
||||
"player": "Reproductor"
|
||||
"player": "Reproductor",
|
||||
"livestreams": "Directos",
|
||||
"channels": "Canales"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Ver en {0}"
|
||||
@ -163,6 +168,7 @@
|
||||
"preferences_note": "Nota: las preferencias se guardan en el almacenamiento local de tu navegador. Al borrar los datos del navegador se restablecerán.",
|
||||
"page_not_found": "Página no encontrada",
|
||||
"copied": "¡Copiado!",
|
||||
"cannot_copy": "¡No se puede copiar!"
|
||||
"cannot_copy": "¡No se puede copiar!",
|
||||
"local_storage": "Esta acción requiere «localStorage», ¿están activadas las «cookies»?"
|
||||
}
|
||||
}
|
||||
|
@ -89,7 +89,40 @@
|
||||
"skip_highlight": "Ohita kohokohta",
|
||||
"skip_filler_tangent": "Ohita epäolennainen",
|
||||
"enabled_codecs": "Käytössä olevat koodekit (useita)",
|
||||
"show_markers": "Näytä merkit soittimessa"
|
||||
"show_markers": "Näytä merkit soittimessa",
|
||||
"confirm_reset_preferences": "Oletko varma, että haluat palauttaa asetukset?",
|
||||
"back_to_home": "Takaisin kotisivuun",
|
||||
"minimize_recommendations_default": "Minimoi suositukset oletusarvoisesti",
|
||||
"with_timecode": "Jaa aikakoodilla",
|
||||
"documentation": "Dokumentaatio",
|
||||
"piped_link": "Piped-linkki",
|
||||
"store_search_history": "Tallenna hakuhistoria",
|
||||
"minimize_chapters_default": "Minimoi luvut oletusarvoisesti",
|
||||
"show_watch_on_youtube": "Näytä Katso YouTubessa -painike",
|
||||
"different_auth_instance": "Käytä eri instanssia todennukseen",
|
||||
"download_as_txt": "Lataa .txt-tiedostona",
|
||||
"rename_playlist": "Nimeä soittolista uudelleen",
|
||||
"show_chapters": "Luvut",
|
||||
"minimize_comments": "Minimoi kommentit",
|
||||
"minimize_comments_default": "Minimoi kommentit oletusarvoisesti",
|
||||
"delete_account": "Poista tili",
|
||||
"clone_playlist_success": "Onnistunut kloonaus!",
|
||||
"reset_preferences": "Nollaa asetukset",
|
||||
"copy_link": "Kopioi linkki",
|
||||
"status_page": "Tila",
|
||||
"source_code": "Lähdekoodi",
|
||||
"instance_donations": "Instanssille lahjoitukset",
|
||||
"no_valid_playlists": "Tiedosto ei sisällä kelvollisia soittolistoja!",
|
||||
"share": "Jaa",
|
||||
"reply_count": "{count} vastausta",
|
||||
"hide_watched": "Piilota katsotut videot syötteessä",
|
||||
"time_code": "Aikakoodi (sekunteina)",
|
||||
"follow_link": "Avaa linkki",
|
||||
"new_playlist_name": "Soittolistan uusi nimi",
|
||||
"invalidate_session": "Kirjaudu ulos kaikista laitteista",
|
||||
"logout": "Kirjaudu ulos tästä laitteesta",
|
||||
"backup_preferences": "Varmuuskopiointiasetukset",
|
||||
"restore_preferences": "Palauta asetukset"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Katso sivustolla {0}"
|
||||
@ -102,7 +135,11 @@
|
||||
"register": "Rekisteröidy",
|
||||
"login": "Kirjaudu sisään",
|
||||
"trending": "Nousussa",
|
||||
"playlists": "Soittolistat"
|
||||
"playlists": "Soittolistat",
|
||||
"player": "Toistin",
|
||||
"instance": "Instanssi",
|
||||
"account": "Tili",
|
||||
"channels": "Kanavat"
|
||||
},
|
||||
"search": {
|
||||
"did_you_mean": "Tarkoititko: {0}?",
|
||||
@ -116,6 +153,15 @@
|
||||
"music_playlists": "YT Music: Soittolistat"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Kiinnitti {author}"
|
||||
"pinned_by": "Kiinnitti {author}",
|
||||
"loading": "Ladataan kommentteja…",
|
||||
"user_disabled": "Kommentit on poistettu käytöstä asetuksista.",
|
||||
"disabled": "Lataaja on poistanut kommentit käytöstä."
|
||||
},
|
||||
"info": {
|
||||
"page_not_found": "Sivua ei löydy",
|
||||
"copied": "Kopioitu!",
|
||||
"cannot_copy": "Ei voi kopioida!",
|
||||
"local_storage": "Tämä toiminto vaatii localStorage, ovatko evästeet käytössä?"
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Listes de lecture",
|
||||
"account": "Compte",
|
||||
"instance": "Instance",
|
||||
"player": "Lecteur"
|
||||
"player": "Lecteur",
|
||||
"livestreams": "Diffusions en direct",
|
||||
"channels": "Chaînes"
|
||||
},
|
||||
"actions": {
|
||||
"subscribe": "S'abonner - {count}",
|
||||
@ -88,9 +90,9 @@
|
||||
"instance_auth_selection": "Sélection de l'instance d'authentification",
|
||||
"clone_playlist": "Cloner la liste de lecture",
|
||||
"clone_playlist_success": "Clonage réussi !",
|
||||
"download_as_txt": "Télécharger en tant que",
|
||||
"download_as_txt": "Télécharger en tant que .txt",
|
||||
"reset_preferences": "Réinitialiser les préférences",
|
||||
"confirm_reset_preferences": "Êtes-vous sûre de vouloir réinitialiser les préférences ?",
|
||||
"confirm_reset_preferences": "Êtes-vous sûr·e de vouloir réinitialiser les préférences ?",
|
||||
"restore_preferences": "Restaurer les préférences",
|
||||
"backup_preferences": "Sauvegarde des préférences",
|
||||
"with_timecode": "Partager avec l'horodatage",
|
||||
@ -111,7 +113,10 @@
|
||||
"hide_watched": "Masquer les vidéos regardées dans le flux",
|
||||
"reply_count": "{count} réponses",
|
||||
"minimize_comments_default": "Minimiser les commentaires par défaut",
|
||||
"minimize_comments": "Minimiser les commentaires"
|
||||
"minimize_comments": "Minimiser les commentaires",
|
||||
"show_watch_on_youtube": "Afficher le bouton Regarder sur YouTube",
|
||||
"minimize_chapters_default": "Minimiser les chapitres par défaut",
|
||||
"no_valid_playlists": "Le fichier ne contient pas de listes de lecture valides !"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Regarder sur {0}"
|
||||
@ -166,6 +171,7 @@
|
||||
"preferences_note": "Remarque : les préférences sont enregistrées dans la mémoire locale de votre navigateur. La suppression des données de votre navigateur les réinitialisera.",
|
||||
"page_not_found": "Page non trouvée",
|
||||
"copied": "Copié !",
|
||||
"cannot_copy": "Impossible de copier !"
|
||||
"cannot_copy": "Impossible de copier !",
|
||||
"local_storage": "Cette action nécessite localStorage, les cookies sont-ils activés ?"
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,9 @@
|
||||
"feed": "ערוץ עדכונים",
|
||||
"account": "חשבון",
|
||||
"playlists": "רשימות נגינה",
|
||||
"instance": "עותק"
|
||||
"instance": "עותק",
|
||||
"livestreams": "שידורים חיים",
|
||||
"channels": "ערוצים"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "לצפות ב־{0}"
|
||||
@ -114,7 +116,10 @@
|
||||
"instance_donations": "תרומות להפעלה",
|
||||
"reply_count": "{count} תגובות",
|
||||
"minimize_comments_default": "צמצום הערות כברירת מחדל",
|
||||
"minimize_comments": "צמצום הערות"
|
||||
"minimize_comments": "צמצום הערות",
|
||||
"minimize_chapters_default": "מזעור הפרקים כברירת מחדל",
|
||||
"show_watch_on_youtube": "הצגת כפתור לצפייה ב־YouTube",
|
||||
"no_valid_playlists": "הקובץ לא מכיל רשימות נגינה תקפות!"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "ננעץ על ידי {author}",
|
||||
@ -160,7 +165,8 @@
|
||||
"preferences_note": "לתשומת לבך: ההעדפות נשמרות באחסון המקומי של הדפדפן שלך. מחיקת נתוני הדפדפן שלך תאפס אותם.",
|
||||
"page_not_found": "העמוד לא נמצא",
|
||||
"copied": "הועתק!",
|
||||
"cannot_copy": "לא ניתן להעתיק!"
|
||||
"cannot_copy": "לא ניתן להעתיק!",
|
||||
"local_storage": "פעולה זו דורשת אחסון מקומי (localStorage), האם עוגיות פעילות?"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "נרשמת אל: {0}"
|
||||
|
@ -7,7 +7,9 @@
|
||||
"preferences": "प्राथमिकताएँ",
|
||||
"subscriptions": "सदस्यता",
|
||||
"feed": "फ़ीड",
|
||||
"playlists": "प्लेलिस्ट"
|
||||
"playlists": "प्लेलिस्ट",
|
||||
"livestreams": "लाइव स्ट्रीम",
|
||||
"channels": "चैनल"
|
||||
},
|
||||
"actions": {
|
||||
"subscribe": "सदस्यता लें - {count}",
|
||||
|
@ -121,7 +121,12 @@
|
||||
"store_search_history": "Spremi povijest pretrage",
|
||||
"hide_watched": "Sakrij gledana videa u novostima",
|
||||
"status_page": "Stanje",
|
||||
"reply_count": "{count} odgovora"
|
||||
"reply_count": "{count} odgovora",
|
||||
"minimize_comments_default": "Standardno sakrij komentare",
|
||||
"minimize_comments": "Sakrij komentare",
|
||||
"show_watch_on_youtube": "Prikaži gumb „Gledaj na YouTubeu”",
|
||||
"minimize_chapters_default": "Standardno sakrij poglavlja",
|
||||
"no_valid_playlists": "Datoteka ne sadrži ispravan popisi snimaka!"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Gledaj na {0}"
|
||||
@ -137,7 +142,9 @@
|
||||
"playlists": "Playliste",
|
||||
"account": "Račun",
|
||||
"instance": "Instanca",
|
||||
"player": "Plejer"
|
||||
"player": "Player",
|
||||
"channels": "Kanali",
|
||||
"livestreams": "Prijenosi uživo"
|
||||
},
|
||||
"login": {
|
||||
"password": "Lozinka",
|
||||
@ -164,6 +171,7 @@
|
||||
"preferences_note": "Napomena: postavke se spremaju u lokalno spremište tvog preglednika. Brisanje podataka preglednika će ih resetirati.",
|
||||
"page_not_found": "Stranica nije pronađena",
|
||||
"copied": "Kopirano!",
|
||||
"cannot_copy": "Nije moguće kopirati!"
|
||||
"cannot_copy": "Nije moguće kopirati!",
|
||||
"local_storage": "Ova radnja zahtijeva lokalno spremište. Jesu li kolačići uključeni?"
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Daftar Putar",
|
||||
"instance": "Instansi",
|
||||
"account": "Akun",
|
||||
"player": "Pemain"
|
||||
"player": "Pemain",
|
||||
"livestreams": "Siaran Langsung",
|
||||
"channels": "Saluran"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Tonton di {0}"
|
||||
@ -109,12 +111,15 @@
|
||||
"store_search_history": "Simpan riwayat pencarian",
|
||||
"documentation": "Dokumentasi",
|
||||
"instance_donations": "Donasi instansi",
|
||||
"hide_watched": "Sembunyikan video yang telah ditonton di umpan",
|
||||
"hide_watched": "Sembunyikan video yang sudah ditonton dari umpan",
|
||||
"status_page": "Status",
|
||||
"source_code": "Kode sumber",
|
||||
"reply_count": "{count} balasan",
|
||||
"minimize_comments_default": "Kecilkan Komentar secara bawaan",
|
||||
"minimize_comments": "Kecilkan Komentar"
|
||||
"minimize_comments": "Kecilkan Komentar",
|
||||
"show_watch_on_youtube": "Tampilkan tombol Tonton di YouTube",
|
||||
"minimize_chapters_default": "Kecilkan Bab secara bawaan",
|
||||
"no_valid_playlists": "Berkas ini tidak berisi daftar putar yang valid!"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Dipasangi pin oleh {author}",
|
||||
@ -126,7 +131,7 @@
|
||||
"instance_name": "Nama Instansi",
|
||||
"ssl_score": "Skor SSL",
|
||||
"instance_locations": "Lokasi Instansi",
|
||||
"has_cdn": "Mempunyai CDN?",
|
||||
"has_cdn": "Memakai CDN?",
|
||||
"up_to_date": "Sudah terkini?",
|
||||
"version": "Versi",
|
||||
"registered_users": "Pengguna Terdaftar"
|
||||
@ -166,6 +171,7 @@
|
||||
"page_not_found": "Laman tidak ditemukan",
|
||||
"preferences_note": "Catatan: preferensi disimpan dalam penyimpanan lokal peramban Anda. Menghapus data peramban Anda akan mengatur ulang.",
|
||||
"copied": "Disalin!",
|
||||
"cannot_copy": "Tidak dapat menyalin!"
|
||||
"cannot_copy": "Tidak dapat menyalin!",
|
||||
"local_storage": "Tindakan ini membutuhkan localStorage, apakah kuki diaktifkan?"
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Spilunarlistar",
|
||||
"player": "Spilari",
|
||||
"account": "Reikningur",
|
||||
"instance": "Tilvik"
|
||||
"instance": "Tilvik",
|
||||
"livestreams": "Útsendingar í beinni",
|
||||
"channels": "Rásir"
|
||||
},
|
||||
"actions": {
|
||||
"sort_by": "Raða eftir:",
|
||||
@ -111,7 +113,9 @@
|
||||
"show_chapters": "Kaflar",
|
||||
"reply_count": "{count} svör",
|
||||
"minimize_comments_default": "Fela ummæli sjálfgefið",
|
||||
"minimize_comments": "Fela ummæli"
|
||||
"minimize_comments": "Fela ummæli",
|
||||
"show_watch_on_youtube": "Sýna hnapp til að horfa á YouTube",
|
||||
"minimize_chapters_default": "Lágmarka kafla sjálfgefið"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Horfa á {0}"
|
||||
|
@ -94,7 +94,14 @@
|
||||
"status_page": "Stato",
|
||||
"documentation": "Documentazione",
|
||||
"source_code": "Codice sorgente",
|
||||
"reply_count": "{count} risposte"
|
||||
"reply_count": "{count} risposte",
|
||||
"hide_watched": "Nascondi i video guardati nel feed",
|
||||
"show_watch_on_youtube": "Mostra il bottone guarda su Youtube",
|
||||
"instance_donations": "Donazioni istanza",
|
||||
"minimize_comments_default": "Minimizza i commenti per impostazione predefinita",
|
||||
"minimize_comments": "Minimizza i commenti",
|
||||
"minimize_chapters_default": "Minimizza i capitoli per impostazione predefinita",
|
||||
"no_valid_playlists": "Il file non contiene playlist valide!"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Guarda su {0}"
|
||||
@ -110,7 +117,9 @@
|
||||
"playlists": "Playlist",
|
||||
"account": "Account",
|
||||
"instance": "Istanza",
|
||||
"player": "Riproduttore"
|
||||
"player": "Riproduttore",
|
||||
"livestreams": "Streaming live",
|
||||
"channels": "Canali"
|
||||
},
|
||||
"video": {
|
||||
"sponsor_segments": "Segmenti sponsor",
|
||||
@ -162,6 +171,7 @@
|
||||
"page_not_found": "Pagina non trovata",
|
||||
"preferences_note": "Nota: le preferenze sono salvate nella memoria locale del tuo browser. L'eliminazione dei dati del tuo browser le ripristinerà.",
|
||||
"copied": "Copiato!",
|
||||
"cannot_copy": "Impossibile copiare!"
|
||||
"cannot_copy": "Impossibile copiare!",
|
||||
"local_storage": "Questa azione richiede localStorage, i cookie sono abilitati?"
|
||||
}
|
||||
}
|
||||
|
@ -1,13 +1,18 @@
|
||||
{
|
||||
"titles": {
|
||||
"trending": "トレンド",
|
||||
"trending": "急上昇",
|
||||
"login": "ログイン",
|
||||
"register": "新規登録",
|
||||
"feed": "フィード",
|
||||
"preferences": "設定",
|
||||
"history": "履歴",
|
||||
"subscriptions": "サブスクリプション",
|
||||
"playlists": "再生リスト"
|
||||
"subscriptions": "登録チャンネル",
|
||||
"playlists": "再生リスト",
|
||||
"account": "アカウント",
|
||||
"player": "プレイヤー",
|
||||
"instance": "インスタンス",
|
||||
"channels": "チャンネル",
|
||||
"livestreams": "ライブ配信"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "{0}で見る"
|
||||
@ -15,35 +20,35 @@
|
||||
"actions": {
|
||||
"subscribe": "チャンネル登録 - {count}",
|
||||
"unsubscribe": "登録解除 - {count}",
|
||||
"view_subscriptions": "サブスクリプションを見る",
|
||||
"view_subscriptions": "登録チャンネルを見る",
|
||||
"sort_by": "表示順:",
|
||||
"most_recent": "新しい順",
|
||||
"least_recent": "古い順",
|
||||
"channel_name_asc": "チャンネル名順",
|
||||
"channel_name_desc": "チャンネル名逆順",
|
||||
"channel_name_asc": "チャンネル名 (AからZ)",
|
||||
"channel_name_desc": "チャンネル名 (ZからA)",
|
||||
"back": "戻る",
|
||||
"uses_api_from": "API使用元 ",
|
||||
"enable_sponsorblock": "広告ブロックをオン",
|
||||
"enable_sponsorblock": "SponsorBlockを有効化",
|
||||
"skip_sponsors": "広告をスキップ",
|
||||
"skip_intro": "イントロ部分をスキップする",
|
||||
"skip_outro": "クレジット部分をスキップする",
|
||||
"skip_preview": "Skip プレビュー・要約をスキップ",
|
||||
"skip_interaction": "自己宣伝シーンをスキップ",
|
||||
"skip_self_promo": "プロモーションをスキップ",
|
||||
"skip_non_music": "音楽以外のセクションをスキップ",
|
||||
"skip_intro": "インターミッション/イントロアニメーションをスキップする",
|
||||
"skip_outro": "エンドカード/クレジットをスキップする",
|
||||
"skip_preview": "プレビュー/要約をスキップ",
|
||||
"skip_interaction": "インタラクションリマインダーをスキップする (チャンネル登録)",
|
||||
"skip_self_promo": "無償/自己プロモーションをスキップ",
|
||||
"skip_non_music": "音楽: 非音楽部分をスキップ",
|
||||
"theme": "テーマ",
|
||||
"auto": "自動",
|
||||
"dark": "ダークテーマ",
|
||||
"light": "ライトテーマ",
|
||||
"autoplay_video": "自動再生",
|
||||
"dark": "ダーク",
|
||||
"light": "ライト",
|
||||
"autoplay_video": "動画を自動再生",
|
||||
"audio_only": "音声のみ",
|
||||
"default_quality": "デフォルトの画質",
|
||||
"buffering_goal": "バッファリング目標値(秒単位)",
|
||||
"buffering_goal": "バッファリング目標値 (秒)",
|
||||
"country_selection": "国の選択",
|
||||
"default_homepage": "デフォルトのホームページ",
|
||||
"show_comments": "コメントを表示",
|
||||
"minimize_description_default": "デフォルトで詳細を最小化",
|
||||
"store_watch_history": "視聴履歴を記録する",
|
||||
"minimize_description_default": "デフォルトで詳細を最小化する",
|
||||
"store_watch_history": "再生履歴を保存する",
|
||||
"language_selection": "言語の選択",
|
||||
"instances_list": "インスタンス一覧",
|
||||
"enabled_codecs": "コーデックの有効化 (複数選択)",
|
||||
@ -51,13 +56,13 @@
|
||||
"show_more": "もっと見る",
|
||||
"yes": "はい",
|
||||
"no": "いいえ",
|
||||
"export_to_json": "JSONファイルに出力",
|
||||
"import_from_json": "JSON/CSVファイルを読み込む",
|
||||
"loop_this_video": "ループ再生",
|
||||
"auto_play_next_video": "自動再生",
|
||||
"donations": "寄付",
|
||||
"minimize_description": "最小化",
|
||||
"show_description": "詳細",
|
||||
"export_to_json": "JSONに出力",
|
||||
"import_from_json": "JSON/CSVを読み込む",
|
||||
"loop_this_video": "この動画をループ再生",
|
||||
"auto_play_next_video": "次の動画を自動再生",
|
||||
"donations": "開発者に寄付",
|
||||
"minimize_description": "説明を最小化",
|
||||
"show_description": "説明を表示",
|
||||
"minimize_recommendations": "おすすめを最小化",
|
||||
"show_recommendations": "おすすめを見る",
|
||||
"disable_lbry": "ストリーミングのLBRYを無効化",
|
||||
@ -65,56 +70,105 @@
|
||||
"view_ssl_score": "SSLスコアを見る",
|
||||
"search": "検索",
|
||||
"filter": "フィルター",
|
||||
"loading": "読込中…",
|
||||
"clear_history": "履歴を消去",
|
||||
"loading": "読み込み中…",
|
||||
"clear_history": "再生履歴を削除",
|
||||
"hide_replies": "返信を非表示",
|
||||
"load_more_replies": "もっと見る",
|
||||
"load_more_replies": "リプライをもっと見る",
|
||||
"skip_filler_tangent": "無関係なコンテンツをスキップ",
|
||||
"skip_highlight": "要点をスキップ",
|
||||
"add_to_playlist": "再生リストに追加",
|
||||
"create_playlist": "新しい再生リストを作成",
|
||||
"skip_highlight": "ハイライトをスキップ",
|
||||
"add_to_playlist": "再生リストに追加する",
|
||||
"create_playlist": "再生リストを作成",
|
||||
"remove_from_playlist": "再生リストから削除",
|
||||
"delete_playlist_video_confirm": "再生リストからこの動画を削除してもよろしいですか?",
|
||||
"delete_playlist_video_confirm": "再生リストからこの動画を削除しますか?",
|
||||
"delete_playlist": "再生リストを削除",
|
||||
"please_select_playlist": "再生リストを選択してください",
|
||||
"show_markers": "プレーヤーにマーカーを表示",
|
||||
"show_markers": "プレイヤーにマーカーを表示",
|
||||
"select_playlist": "再生リストを選択",
|
||||
"delete_playlist_confirm": "再生リストを削除してもよろしいですか?"
|
||||
"delete_playlist_confirm": "再生リストを削除しますか?",
|
||||
"delete_account": "アカウントを削除する",
|
||||
"store_search_history": "検索履歴を保存する",
|
||||
"show_chapters": "チャプター",
|
||||
"status_page": "状態",
|
||||
"source_code": "ソースコード",
|
||||
"instance_donations": "インスタンスに寄付",
|
||||
"minimize_comments": "コメントを最小化する",
|
||||
"share": "共有",
|
||||
"with_timecode": "タイムコード付きで共有",
|
||||
"different_auth_instance": "認証に別のインスタンスを使う",
|
||||
"download_as_txt": ".txtでダウンロード",
|
||||
"logout": "このデバイスでログアウト",
|
||||
"minimize_recommendations_default": "デフォルトでおすすめを最小化する",
|
||||
"hide_watched": "再生済みの動画をフィードに表示しない",
|
||||
"minimize_chapters_default": "デフォルトでチャプターを最小化する",
|
||||
"show_watch_on_youtube": "\"YouTubeで見る\"ボタンを表示する",
|
||||
"invalidate_session": "すべてのデバイスでログアウトする",
|
||||
"instance_auth_selection": "認証インスタンスの選択",
|
||||
"clone_playlist_success": "複製に成功しました!",
|
||||
"backup_preferences": "設定をバックアップする",
|
||||
"restore_preferences": "設定を復元する",
|
||||
"back_to_home": "ホームに戻る",
|
||||
"copy_link": "リンクをコピーする",
|
||||
"time_code": "タイムコード (秒)",
|
||||
"documentation": "ドキュメント",
|
||||
"reset_preferences": "設定をリセット",
|
||||
"confirm_reset_preferences": "設定をリセットしますか?",
|
||||
"rename_playlist": "プレイリスト名を変更する",
|
||||
"piped_link": "Pipedリンク",
|
||||
"new_playlist_name": "新しいプレイリスト名",
|
||||
"follow_link": "リンクに従う",
|
||||
"reply_count": "{count} 件の返信",
|
||||
"clone_playlist": "プレイリストを複製",
|
||||
"minimize_comments_default": "デフォルトでコメントを最小化する",
|
||||
"no_valid_playlists": "ファイルに有効なプレイリストが含まれていません。"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "固定されたコメント {author}"
|
||||
"pinned_by": "{author} によって固定",
|
||||
"loading": "コメントを読み込み中...",
|
||||
"user_disabled": "コメントは設定で無効になっています。",
|
||||
"disabled": "コメントは投稿者によって無効化されています。"
|
||||
},
|
||||
"preferences": {
|
||||
"instance_name": "インスタンス名",
|
||||
"instance_locations": "インスタンスの場所",
|
||||
"has_cdn": "CDNの有無",
|
||||
"has_cdn": "CDNは存在する?",
|
||||
"ssl_score": "SSLスコア",
|
||||
"registered_users": "登録済みユーザー",
|
||||
"version": "バージョン",
|
||||
"up_to_date": "最新か否か"
|
||||
"up_to_date": "最新?"
|
||||
},
|
||||
"login": {
|
||||
"username": "ユーザー名",
|
||||
"password": "パスワード"
|
||||
},
|
||||
"video": {
|
||||
"videos": "ビデオ",
|
||||
"views": "{views} 視聴",
|
||||
"watched": "視聴済み",
|
||||
"videos": "動画",
|
||||
"views": "{views} 回再生",
|
||||
"watched": "再生済み",
|
||||
"sponsor_segments": "スポンサーによる広告",
|
||||
"ratings_disabled": "評価は無効化されています",
|
||||
"chapters": "チャプター",
|
||||
"live": "{0}ライブ"
|
||||
"live": "{0} ライブ配信",
|
||||
"shorts": "ショート"
|
||||
},
|
||||
"search": {
|
||||
"did_you_mean": "もしかして: {0}?",
|
||||
"all": "Youtube: 全て",
|
||||
"videos": "Youtube: ビデオ",
|
||||
"channels": "Youtube: チャンネル",
|
||||
"playlists": "Youtube: 再生リスト",
|
||||
"did_you_mean": "もしかして: {0}?",
|
||||
"all": "YouTube: すべて",
|
||||
"videos": "YouTube: 動画",
|
||||
"channels": "YouTube: チャンネル",
|
||||
"playlists": "YouTube: 再生リスト",
|
||||
"music_songs": "YT Music: 音楽",
|
||||
"music_videos": "YT Music: ビデオ",
|
||||
"music_videos": "YT Music: 動画",
|
||||
"music_albums": "YT Music: アルバム",
|
||||
"music_playlists": "YT Music: 再生リスト"
|
||||
},
|
||||
"info": {
|
||||
"page_not_found": "ページが見つかりません",
|
||||
"copied": "コピーしました!",
|
||||
"cannot_copy": "コピーできません!",
|
||||
"preferences_note": "注意: 設定はブラウザのローカルストレージに保存されます。ブラウザのデータを削除するとリセットされます。",
|
||||
"local_storage": "この操作にはlocalStorageが必要です。Cookieは有効ですか?"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "チャンネル登録: {0}"
|
||||
}
|
||||
}
|
||||
|
34
src/locales/kab.json
Normal file
34
src/locales/kab.json
Normal file
@ -0,0 +1,34 @@
|
||||
{
|
||||
"titles": {
|
||||
"login": "Aseqdac",
|
||||
"register": "Jerred",
|
||||
"preferences": "Ismenyifen",
|
||||
"history": "Amazray",
|
||||
"subscriptions": "Ijerriden",
|
||||
"account": "Amiḍan",
|
||||
"channels": "Ibuda"
|
||||
},
|
||||
"actions": {
|
||||
"dark": "Ubrik",
|
||||
"language_selection": "Afran n tutlayt",
|
||||
"yes": "Ih",
|
||||
"no": "Uhu",
|
||||
"search": "Nadi",
|
||||
"filter": "Imsizdeg",
|
||||
"loading": "Asali...",
|
||||
"delete_playlist_confirm": "Kkes tabdart-a n tɣuri?",
|
||||
"share": "Bḍu",
|
||||
"documentation": "Tasemlit",
|
||||
"status_page": "État"
|
||||
},
|
||||
"preferences": {
|
||||
"version": "Lqem"
|
||||
},
|
||||
"login": {
|
||||
"username": "Nom d'utilisateur",
|
||||
"password": "Awal n uɛeddi"
|
||||
},
|
||||
"video": {
|
||||
"videos": "Tividyutin"
|
||||
}
|
||||
}
|
@ -73,12 +73,12 @@
|
||||
"remove_from_playlist": "Pašalinti iš grojaraščio",
|
||||
"confirm_reset_preferences": "Ar tikrai norite iš naujo nustatyti nuostatas?",
|
||||
"reset_preferences": "Iš naujo nustatyti nuostatas",
|
||||
"backup_preferences": "Atsarginės kopijos nuostatos",
|
||||
"backup_preferences": "Atsarginė nuostatų kopija",
|
||||
"source_code": "Pirminis kodas",
|
||||
"documentation": "Dokumentacija",
|
||||
"with_timecode": "Dalintis su laiko kodu",
|
||||
"reply_count": "{count} atsakymų",
|
||||
"show_chapters": "Skyriai",
|
||||
"reply_count": "{count} atsakymai",
|
||||
"show_chapters": "Skirsniai",
|
||||
"piped_link": "Piped nuoroda",
|
||||
"rename_playlist": "Pervardyti grojaraštį",
|
||||
"follow_link": "Sekti nuorodą",
|
||||
@ -98,7 +98,10 @@
|
||||
"skip_highlight": "Praleisti išskirtų dalių pakartojimus",
|
||||
"time_code": "Laiko kodas (sekundėmis)",
|
||||
"minimize_comments_default": "Suskleisti komentarus automatiškai",
|
||||
"minimize_comments": "Suskleisti komentarus"
|
||||
"minimize_comments": "Suskleisti komentarus",
|
||||
"show_watch_on_youtube": "Rodyti mygtuką „Žiūrėti YouTube“",
|
||||
"minimize_chapters_default": "Suskleisti skirsnius automatiškai",
|
||||
"no_valid_playlists": "Faile nėra galiojančių grojaraščių!"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Žiūrėti per {0}"
|
||||
@ -114,7 +117,9 @@
|
||||
"playlists": "Grojaraščiai",
|
||||
"account": "Paskyra",
|
||||
"player": "Grotuvas",
|
||||
"instance": "Perdavimo šaltinis"
|
||||
"instance": "Perdavimo šaltinis",
|
||||
"livestreams": "Tiesioginės transliacijos",
|
||||
"channels": "Kanalai"
|
||||
},
|
||||
"preferences": {
|
||||
"instance_locations": "Perdavimo šaltinio vietovė",
|
||||
@ -128,7 +133,7 @@
|
||||
"comment": {
|
||||
"pinned_by": "Prisegė {author}",
|
||||
"loading": "Įkeliami komentarai...",
|
||||
"disabled": "Komentarai yra išjungti įkėlėjo.",
|
||||
"disabled": "Įkėlėjas išjungė komentarus.",
|
||||
"user_disabled": "Komentarai yra išjungti nustatymuose."
|
||||
},
|
||||
"video": {
|
||||
@ -137,7 +142,7 @@
|
||||
"sponsor_segments": "Rėmėjų segmentai",
|
||||
"watched": "Žiūrėta",
|
||||
"ratings_disabled": "Įvertinimai išjungti",
|
||||
"chapters": "Skyriai",
|
||||
"chapters": "Skirsniai",
|
||||
"live": "{0} tiesiogiai",
|
||||
"shorts": "Trumpi filmukai"
|
||||
},
|
||||
@ -160,7 +165,8 @@
|
||||
"copied": "Nukopijuota!",
|
||||
"cannot_copy": "Negalima kopijuoti!",
|
||||
"page_not_found": "Puslapis nerastas",
|
||||
"preferences_note": "Pastaba: nuostatos išsaugomos vietinėje naršyklės atmintyje. Ištrynus naršyklės duomenis, jie bus nustatyti iš naujo."
|
||||
"preferences_note": "Pastaba: nuostatos išsaugomos vietinėje naršyklės atmintyje. Ištrynus naršyklės duomenis, jos bus nustatytos iš naujo.",
|
||||
"local_storage": "Šiam veiksmui reikia localStorage, ar slapukai įjungti?"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "Prenumeruojama: {0}"
|
||||
|
174
src/locales/or.json
Normal file
174
src/locales/or.json
Normal file
@ -0,0 +1,174 @@
|
||||
{
|
||||
"titles": {
|
||||
"login": "ଲଗ୍ ଇନ୍",
|
||||
"feed": "ଫିଡ୍",
|
||||
"trending": "ଟ୍ରେଣ୍ଡିଂ",
|
||||
"register": "ପଂଜିକରଣ",
|
||||
"preferences": "ପସନ୍ଦ",
|
||||
"history": "ଇତିହାସ",
|
||||
"subscriptions": "ଅନୁସୃତ ଗୁଡ଼ିକ",
|
||||
"playlists": "ପ୍ଲେଲିଷ୍ଟ ଗୁଡ଼ିକ",
|
||||
"instance": "ଉଦାହରଣ",
|
||||
"account": "ଆକାଉଣ୍ଟ",
|
||||
"player": "ପ୍ଲେୟାର",
|
||||
"livestreams": "ସିଧାପ୍ରସାରଣ ଗୁଡ଼ିକ",
|
||||
"channels": "ସ୍ରୋତ ଗୁଡ଼ିକ"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "{0} ରେ ଦେଖନ୍ତୁ"
|
||||
},
|
||||
"actions": {
|
||||
"subscribe": "ସଦସ୍ୟତା - {count}",
|
||||
"unsubscribe": "ସଦସ୍ୟତା ରଦ୍ଦ କରନ୍ତୁ - {count}",
|
||||
"view_subscriptions": "ସଦସ୍ୟତା ଗୁଡ଼ିକ ଦେଖନ୍ତୁ",
|
||||
"sort_by": "ଏହି କ୍ରମରେ ସଜାନ୍ତୁ:",
|
||||
"most_recent": "ସଦ୍ୟତମ",
|
||||
"uses_api_from": "ରୁ API ବ୍ୟବହାର କରେ ",
|
||||
"enable_sponsorblock": "ପ୍ରଯୋଜକ ବନ୍ଦ ସକ୍ଷମ କରନ୍ତୁ",
|
||||
"skip_intro": "ଇଣ୍ଟରମିସନ୍ / ଇଣ୍ଟ୍ରୋ ଆନିମେସନ୍ ଛାଡିଦିଅ",
|
||||
"default_homepage": "ଡିଫଲ୍ଟ ମୂଳପୃଷ୍ଠା",
|
||||
"minimize_comments_default": "ଡିଫଲ୍ଟ ଭାବରେ ମନ୍ତବ୍ୟଗୁଡିକୁ କମ୍ କରନ୍ତୁ",
|
||||
"show_description": "ବର୍ଣ୍ଣନା ଦେଖାନ୍ତୁ",
|
||||
"minimize_recommendations": "ସୁପାରିଶକୁ କମ୍ କରନ୍ତୁ",
|
||||
"show_recommendations": "ସୁପାରିଶଗୁଡିକ ଦେଖାନ୍ତୁ",
|
||||
"disable_lbry": "ଷ୍ଟ୍ରିମିଂ ପାଇଁ LBRY ଅକ୍ଷମ କରନ୍ତୁ",
|
||||
"search": "ସନ୍ଧାନ କରନ୍ତୁ",
|
||||
"rename_playlist": "ପ୍ଲେ ଲିଷ୍ଟର ନାମ ପରିବର୍ତ୍ତନ କରନ୍ତୁ",
|
||||
"new_playlist_name": "ନୂତନ ପ୍ଲେଲିଷ୍ଟ ନାମ",
|
||||
"channel_name_asc": "ସ୍ରୋତ ର ନାମ (A-Z)",
|
||||
"least_recent": "ସର୍ବନିମ୍ନ ସାମ୍ପ୍ରତିକ",
|
||||
"channel_name_desc": "ସ୍ରୋତ ର ନାମ (Z-A)",
|
||||
"back": "ପଛକୁ ଯାଆନ୍ତୁ",
|
||||
"skip_sponsors": "ପ୍ରଯୋଜକମାନଙ୍କୁ ଛାଡ଼ିଦିଅ",
|
||||
"skip_outro": "ଏଣ୍ଡକାର୍ଡ / କ୍ରେଡିଟ୍ ଛାଡିଦିଅ",
|
||||
"skip_preview": "ପୂର୍ବାବଲୋକନ / ପୁନଃପ୍ରକାଶକୁ ଛାଡିଦିଅ",
|
||||
"restore_preferences": "ପସନ୍ଦଗୁଡିକ ପୁନରୁଦ୍ଧାର କରନ୍ତୁ",
|
||||
"skip_interaction": "ପାରସ୍ପରିକ ସ୍ମାରକକୁ ଏଡ଼ାଇ ଦିଅନ୍ତୁ (ସବସ୍କ୍ରାଇବ କରନ୍ତୁ)",
|
||||
"skip_self_promo": "ଅନାଦେୟ / ଆତ୍ମ ପଦୋନ୍ନତି ଛାଡିଦିଅ",
|
||||
"skip_non_music": "ସଙ୍ଗୀତ ପରିତ୍ୟାଗ କରନ୍ତୁ: ଅଣ-ସଙ୍ଗୀତ ବିଭାଗ",
|
||||
"skip_highlight": "ହାଇଲାଇଟ୍ କୁ ଛାଡିଦିଅ",
|
||||
"auto": "ସ୍ଵତଃ",
|
||||
"skip_filler_tangent": "ଫିଲର୍ ଟାଙ୍ଗେଣ୍ଟ୍ ଛାଡିଦିଅ",
|
||||
"default_quality": "ଡିଫଲ୍ଟ ଗୁଣବତ୍ତା",
|
||||
"show_markers": "ପ୍ଲେୟାରରେ ମାର୍କର୍ସ ଦେଖାନ୍ତୁ",
|
||||
"theme": "ଥିମ୍",
|
||||
"dark": "ଅନ୍ଧାର",
|
||||
"light": "ଉଜ୍ଜଳ",
|
||||
"autoplay_video": "ଅଟୋପ୍ଲେ ଭିଡିଓ",
|
||||
"enabled_codecs": "ସକ୍ଷମ କୋଡେକସ୍ (ଏକାଧିକ)",
|
||||
"audio_only": "କେବଳ ସ୍ୱର",
|
||||
"language_selection": "ଭାଷା ଚୟନ",
|
||||
"show_more": "ଅଧିକ ଦେଖାନ୍ତୁ",
|
||||
"buffering_goal": "ବଫରିଂ ଲକ୍ଷ୍ୟ (ସେକେଣ୍ଡରେ)",
|
||||
"country_selection": "ଦେଶ ଚୟନ",
|
||||
"minimize_description_default": "ଡିଫଲ୍ଟ ଭାବରେ ବର୍ଣ୍ଣନାକୁ କମ୍ କରନ୍ତୁ",
|
||||
"store_watch_history": "ଦେଖିଥିବା ଭିଡିଓ ଗୁଡ଼ିକର ଇତିହାସ ରଖନ୍ତୁ",
|
||||
"instances_list": "ଉଦାହରଣ ତାଲିକା",
|
||||
"instance_selection": "ଇନଷ୍ଟାନ୍ସ ଚୟନ",
|
||||
"yes": "ହଁ",
|
||||
"import_from_json": "JSON / CSV ରୁ ଆମଦାନୀ କରନ୍ତୁ",
|
||||
"no": "ନାହିଁ",
|
||||
"export_to_json": "JSON କୁ ରପ୍ତାନି କରନ୍ତୁ",
|
||||
"loop_this_video": "ଏହି ଭିଡିଓକୁ ଲୁପ୍ କରନ୍ତୁ",
|
||||
"auto_play_next_video": "ପରବର୍ତ୍ତୀ ଭିଡିଓ ସ୍ଵତଃ ଚଲାନ୍ତୁ",
|
||||
"donations": "ବିକାଶ ପାଇଁ ଦାନ",
|
||||
"minimize_comments": "ମନ୍ତବ୍ୟଗୁଡିକୁ କମ୍ କରନ୍ତୁ",
|
||||
"show_comments": "ମନ୍ତବ୍ୟଗୁଡିକ ଦେଖାନ୍ତୁ",
|
||||
"delete_playlist_video_confirm": "ପ୍ଲେ ଲିଷ୍ଟରୁ ଭିଡିଓ ଅପସାରଣ କରିବେ କି?",
|
||||
"minimize_description": "ବର୍ଣ୍ଣନାକୁ କମ୍ କରନ୍ତୁ",
|
||||
"view_ssl_score": "SSL ସ୍କୋର ଦେଖନ୍ତୁ",
|
||||
"loading": "ଲୋଡ୍ ହେଉଛି...",
|
||||
"enable_lbry_proxy": "LBRY ପାଇଁ ପ୍ରକ୍ସି ସକ୍ଷମ କରନ୍ତୁ",
|
||||
"filter": "ଫିଲ୍ଟର୍ କରନ୍ତୁ",
|
||||
"load_more_replies": "ଅଧିକ ଉତ୍ତର ଲୋଡ୍ କରନ୍ତୁ",
|
||||
"clear_history": "ଇତିହାସ ସଫା କରନ୍ତୁ",
|
||||
"hide_replies": "ଉତ୍ତରଗୁଡିକ ଲୁଚାନ୍ତୁ",
|
||||
"remove_from_playlist": "ପ୍ଲେ ଲିଷ୍ଟରୁ ହଟାନ୍ତୁ",
|
||||
"add_to_playlist": "ପ୍ଲେ ଲିଷ୍ଟରେ ଯୋଡନ୍ତୁ",
|
||||
"create_playlist": "ପ୍ଲେଲିଷ୍ଟ ସୃଷ୍ଟି କରନ୍ତୁ",
|
||||
"please_select_playlist": "ଦୟାକରି ଏକ ପ୍ଲେଲିଷ୍ଟ ଚୟନ କରନ୍ତୁ",
|
||||
"delete_playlist": "ପ୍ଲେ ଲିଷ୍ଟ ଡିଲିଟ୍ କରନ୍ତୁ",
|
||||
"show_watch_on_youtube": "ୟୁଟ୍ୟୁବ୍ ବଟନ୍ ରେ ୱାଚ୍ ଦେଖାନ୍ତୁ",
|
||||
"reset_preferences": "ପସନ୍ଦଗୁଡିକ ପୁନଃସେଟ୍ କରନ୍ତୁ",
|
||||
"share": "ଅଂଶୀଦାର କରନ୍ତୁ",
|
||||
"select_playlist": "ଏକ ପ୍ଲେଲିଷ୍ଟ ଚୟନ କରନ୍ତୁ",
|
||||
"delete_playlist_confirm": "ଏହି ପ୍ଲେଲିଷ୍ଟ ବିଲୋପ କରିବେ କି?",
|
||||
"delete_account": "ଖାତା ବିଲୋପ କରନ୍ତୁ",
|
||||
"logout": "ଏହି ଉପକରଣରୁ ଲଗଆଉଟ୍ କରନ୍ତୁ",
|
||||
"minimize_recommendations_default": "ଡିଫଲ୍ଟ ଭାବରେ ସୁପାରିଶକୁ କମ୍ କରନ୍ତୁ",
|
||||
"invalidate_session": "ସମସ୍ତ ଡିଭାଇସ୍ ରୁ ଲଗଆଉଟ୍ କରନ୍ତୁ",
|
||||
"download_as_txt": ".Txt ଭାବରେ ଡାଉନଲୋଡ୍ କରନ୍ତୁ",
|
||||
"instance_auth_selection": "ପ୍ରାମାଣିକିକରଣ ଇନଷ୍ଟାନ୍ସ ଚୟନ",
|
||||
"confirm_reset_preferences": "ଆପଣ ନିଶ୍ଚିତ କି ଆପଣ ଆପଣଙ୍କର ପସନ୍ଦଗୁଡିକ ପୁନଃ ସେଟ୍ କରିବାକୁ ଚାହୁଁଛନ୍ତି?",
|
||||
"status_page": "ସ୍ଥିତି",
|
||||
"different_auth_instance": "ପ୍ରାମାଣିକିକରଣ ପାଇଁ ଏକ ଭିନ୍ନ ଉଦାହରଣ ବ୍ୟବହାର କରନ୍ତୁ",
|
||||
"clone_playlist": "କ୍ଲୋନ୍ ପ୍ଲେଲିଷ୍ଟ୍",
|
||||
"clone_playlist_success": "ସଫଳତାର ସହିତ କ୍ଲୋନ ହୋଇଛି!",
|
||||
"backup_preferences": "ପସନ୍ଦ ଗୁଡ଼ିକର ନକଲ ସଂରକ୍ଷଣ କରନ୍ତୁ",
|
||||
"back_to_home": "ଘରକୁ ଫେରନ୍ତୁ",
|
||||
"show_chapters": "ଅଧ୍ୟାୟ ଗୁଡ଼ିକ",
|
||||
"store_search_history": "ସନ୍ଧାନ ଇତିହାସ ଗଚ୍ଛିତ କରନ୍ତୁ",
|
||||
"hide_watched": "ଫିଡରେ ଦେଖାଯାଇଥିବା ଭିଡିଓଗୁଡିକ ଲୁଚାନ୍ତୁ",
|
||||
"follow_link": "ଲିଙ୍କ୍ ଅନୁସରଣ କରନ୍ତୁ",
|
||||
"copy_link": "ଲିଙ୍କ୍ କପି କରନ୍ତୁ",
|
||||
"with_timecode": "ଟାଇମ୍ କୋଡ୍ ସହିତ ଅଂଶୀଦାର କରନ୍ତୁ",
|
||||
"piped_link": "ପାଇପ୍ ଲିଙ୍କ୍",
|
||||
"time_code": "ସମୟ କୋଡ୍ (ସେକେଣ୍ଡରେ)",
|
||||
"source_code": "ଉତ୍ସ କୋଡ୍",
|
||||
"reply_count": "{count} ଉତ୍ତର",
|
||||
"documentation": "ଡକ୍ୟୁମେଣ୍ଟେସନ୍",
|
||||
"instance_donations": "ଇନଷ୍ଟାଣ୍ଟ ଦାନ ଗୁଡ଼ିକ",
|
||||
"minimize_chapters_default": "ଡିଫଲ୍ଟ ଭାବରେ ଅଧ୍ୟାୟଗୁଡ଼ିକୁ କମ୍ କରନ୍ତୁ",
|
||||
"no_valid_playlists": "ଫାଇଲ୍ ଟି ବୈଧ ପ୍ଲେଲିଷ୍ଟ ଧାରଣ କରେ ନାହିଁ!"
|
||||
},
|
||||
"comment": {
|
||||
"loading": "ମନ୍ତବ୍ୟ ଲୋଡ୍ ହେଉଛି ...",
|
||||
"user_disabled": "ମନ୍ତବ୍ୟଗୁଡିକ ସେଟିଂସମୂହରେ ଅକ୍ଷମ ହୋଇଛି ।",
|
||||
"pinned_by": "{author} ଙ୍କ ଦ୍ୱାରା ପିନ୍ ହୋଇଛି",
|
||||
"disabled": "ମନ୍ତବ୍ୟଗୁଡିକ ଅପଲୋଡର୍ ଦ୍ୱାରା ଅକ୍ଷମ ହୋଇଛି ।"
|
||||
},
|
||||
"video": {
|
||||
"views": "{views} ଦୃଶ୍ୟ",
|
||||
"watched": "ଦେଖାଯାଇଛି",
|
||||
"sponsor_segments": "ପ୍ରାୟୋଜକ ଖଣ୍ଡଗୁଡିକ",
|
||||
"shorts": "ସର୍ଟସ୍",
|
||||
"videos": "ଭିଡିଓ ଗୁଡିକ",
|
||||
"ratings_disabled": "ମୂଲ୍ୟାୟନ ଅକ୍ଷମ ହୋଇଛି",
|
||||
"chapters": "ଅଧ୍ୟାୟ ଗୁଡ଼ିକ",
|
||||
"live": "{0} ସିଧାପ୍ରସାରଣ"
|
||||
},
|
||||
"search": {
|
||||
"did_you_mean": "ଆପଣ କହିବାକୁ ଚାହୁଁଛନ୍ତି କି: {0}?",
|
||||
"music_albums": "ୟୁଟିଉବ୍ ସଙ୍ଗୀତ: ଆଲବମ୍ ଗୁଡ଼ିକ",
|
||||
"music_playlists": "ୟୁଟିଉବ୍ ସଙ୍ଗୀତ: ପ୍ଲେଲିଷ୍ଟଗୁଡିକ",
|
||||
"music_videos": "ୟୁଟିଉବ୍ ସଙ୍ଗୀତ: ଭିଡିଓଗୁଡିକ",
|
||||
"all": "ୟୁଟ୍ୟୁବ୍: ସମସ୍ତ",
|
||||
"videos": "ୟୁଟ୍ୟୁବ୍: ଭିଡିଓଗୁଡିକ",
|
||||
"channels": "ୟୁଟ୍ୟୁବ୍: ଚ୍ୟାନେଲଗୁଡିକ",
|
||||
"music_songs": "ୟୁଟିଉବ୍ ସଙ୍ଗୀତ: ଗୀତ ଗୁଡ଼ିକ",
|
||||
"playlists": "ୟୁଟ୍ୟୁବ୍: ପ୍ଲେଲିଷ୍ଟଗୁଡିକ"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "ସଦସ୍ୟତା: {0}"
|
||||
},
|
||||
"info": {
|
||||
"preferences_note": "ଟିପନ୍ତୁ: ପସନ୍ଦଗୁଡିକ ଆପଣଙ୍କ ବ୍ରାଉଜରର ସ୍ଥାନୀୟ ଷ୍ଟୋରେଜ୍ ରେ ସେଭ୍ ହୋଇଛି । ଆପଣଙ୍କର ବ୍ରାଉଜର୍ ଡାଟା ଡିଲିଟ୍ କରିବା ସେଗୁଡ଼ିକୁ ପୁନଃସେଟ୍ କରିବ ।",
|
||||
"copied": "କପି ହୋଇଛି!",
|
||||
"cannot_copy": "କପି କରିପାରିବ ନାହିଁ!",
|
||||
"page_not_found": "ପୃଷ୍ଠାଟି ମିଳିଲା ନାହିଁ",
|
||||
"local_storage": "ଏହି କ୍ରିୟା ଲୋକାଲ୍ ଷ୍ଟୋରେଜ୍ ଆବଶ୍ୟକ କରେ, କୁକିଜ୍ ସକ୍ଷମ ଅଛି କି?"
|
||||
},
|
||||
"preferences": {
|
||||
"instance_name": "ଇନଷ୍ଟାନ୍ସ ନାମ",
|
||||
"registered_users": "ପଞ୍ଜୀକୃତ ଉପଭୋକ୍ତା",
|
||||
"version": "ସଂସ୍କରଣ",
|
||||
"instance_locations": "ଇନଷ୍ଟାନ୍ସ ଅବସ୍ଥାନ",
|
||||
"has_cdn": "CDN ଅଛି କି?",
|
||||
"up_to_date": "ଅଦ୍ୟାବଧି?",
|
||||
"ssl_score": "SSL ସ୍କୋର"
|
||||
},
|
||||
"login": {
|
||||
"password": "ପାସୱାର୍ଡ",
|
||||
"username": "ଉପଯୋଗକର୍ତ୍ତା ନାମ"
|
||||
}
|
||||
}
|
@ -7,14 +7,19 @@
|
||||
"preferences": "Ustawienia",
|
||||
"history": "Historia",
|
||||
"subscriptions": "Lista kanałów",
|
||||
"playlists": "Playlisty"
|
||||
"playlists": "Playlisty",
|
||||
"player": "Odtwarzacz",
|
||||
"account": "Konto",
|
||||
"instance": "Instancja",
|
||||
"livestreams": "Na żywo",
|
||||
"channels": "Kanały"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Obejrzyj na {0}"
|
||||
},
|
||||
"actions": {
|
||||
"subscribe": "Subskrybuj - {count}",
|
||||
"unsubscribe": "Anuluj subskrypcję - {count}",
|
||||
"unsubscribe": "Odsubskrybuj - {count}",
|
||||
"view_subscriptions": "Zarządzaj subskrybcjami",
|
||||
"sort_by": "Sortuj:",
|
||||
"most_recent": "Najnowsze",
|
||||
@ -26,7 +31,7 @@
|
||||
"enable_sponsorblock": "Włącz SponsorBlock",
|
||||
"skip_sponsors": "Pomijaj segmenty sponsorowane",
|
||||
"skip_intro": "Pomijaj czołówkę",
|
||||
"skip_outro": "Pomijaj tyłówkę",
|
||||
"skip_outro": "Pomiń karty końcowe / Podziękowania",
|
||||
"skip_preview": "Pomijaj podgląd/podsumowanie",
|
||||
"skip_interaction": "Pomijaj prośby o interakcję/subskrybcję",
|
||||
"skip_self_promo": "Pomijaj autopromocję",
|
||||
@ -34,7 +39,7 @@
|
||||
"skip_highlight": "Przechodź do meritum filmu",
|
||||
"skip_filler_tangent": "Pomijaj wstawki humorystyczne",
|
||||
"theme": "Motyw",
|
||||
"auto": "Automatyczny",
|
||||
"auto": "Automatyczna",
|
||||
"dark": "Ciemny",
|
||||
"light": "Jasny",
|
||||
"autoplay_video": "Autoodtwarzanie",
|
||||
@ -43,9 +48,9 @@
|
||||
"buffering_goal": "Cel buforowania (w sekundach)",
|
||||
"country_selection": "Wybór kraju",
|
||||
"default_homepage": "Domyślna strona główna",
|
||||
"show_comments": "Pokazuj komentarze",
|
||||
"minimize_description_default": "Zawsze chowaj opis",
|
||||
"store_watch_history": "Zapisuj historię oglądania",
|
||||
"show_comments": "Pokaż komentarze",
|
||||
"minimize_description_default": "Ukryj opis",
|
||||
"store_watch_history": "Zapamiętaj historię oglądania",
|
||||
"language_selection": "Wybór języka",
|
||||
"instances_list": "Lista instancji",
|
||||
"enabled_codecs": "Włączone kodeki (lista wielokrotnego wyboru)",
|
||||
@ -58,10 +63,10 @@
|
||||
"loop_this_video": "Zapętlaj ten film",
|
||||
"auto_play_next_video": "Autoodtwarzanie następnego filmu",
|
||||
"donations": "Wsparcie",
|
||||
"minimize_description": "Schowaj opis",
|
||||
"minimize_description": "Ukryj opis",
|
||||
"show_description": "Pokaż opis",
|
||||
"minimize_recommendations": "Minimalizuj rekomendacje",
|
||||
"show_recommendations": "Pokaż rekomendacje",
|
||||
"minimize_recommendations": "Ukryj proponowane",
|
||||
"show_recommendations": "Pokaż proponowane",
|
||||
"disable_lbry": "Wyłącz LBRY dla streaming-u",
|
||||
"enable_lbry_proxy": "Włącz proxy dla LBRY",
|
||||
"view_ssl_score": "Pokaż ocenę SSL",
|
||||
@ -69,25 +74,64 @@
|
||||
"filter": "Filtruj",
|
||||
"loading": "Ładowanie...",
|
||||
"clear_history": "Wyczyść historię",
|
||||
"hide_replies": "Schowaj odpowiedzi",
|
||||
"hide_replies": "Ukryj odpowiedzi",
|
||||
"load_more_replies": "Pokaż więcej odpowiedzi",
|
||||
"add_to_playlist": "Dodaj do playlisty",
|
||||
"remove_from_playlist": "Usuń z playlisty",
|
||||
"delete_playlist_video_confirm": "Czy jesteś pewien, że chcesz usunąć ten film z tej playlisty?",
|
||||
"delete_playlist_video_confirm": "Usunąć film z playlisty?",
|
||||
"create_playlist": "Stwórz playlistę",
|
||||
"delete_playlist": "Usuń playlistę",
|
||||
"select_playlist": "Wybierz playlistę",
|
||||
"delete_playlist_confirm": "Czy jesteś pewien, że chcesz usunąć tę playlistę?",
|
||||
"please_select_playlist": "Musisz wybrać playlistę"
|
||||
"delete_playlist_confirm": "Usunąć tę playlistę?",
|
||||
"please_select_playlist": "Musisz wybrać playlistę",
|
||||
"confirm_reset_preferences": "Zresetować ustawienia?",
|
||||
"show_watch_on_youtube": "Przycisk „Oglądaj na YouTube”",
|
||||
"restore_preferences": "Przywróć ustawienia z kopii zapasowej",
|
||||
"clone_playlist_success": "Pomyślnie sklonowano!",
|
||||
"copy_link": "Skopiuj link",
|
||||
"documentation": "Dokumentacja",
|
||||
"instance_donations": "Darowizny na rzecz instancji",
|
||||
"back_to_home": "Idź do strony głównej",
|
||||
"instance_auth_selection": "Wybrana instancja autoryzacyjna",
|
||||
"time_code": "Kod czasowy (w sekundach)",
|
||||
"show_markers": "Pokaż segmenty na odtwarzaczu",
|
||||
"store_search_history": "Zapamiętaj historię wyszukiwania",
|
||||
"hide_watched": "Ukryj obejrzane filmy",
|
||||
"source_code": "Kod źródłowy",
|
||||
"show_chapters": "Rozdziały",
|
||||
"minimize_chapters_default": "Ukryj rozdziały",
|
||||
"rename_playlist": "Zmień nazwę playlisty",
|
||||
"follow_link": "Otwórz link",
|
||||
"minimize_comments_default": "Ukryj sekcję komentarzy",
|
||||
"minimize_comments": "Ukryj komentarze",
|
||||
"delete_account": "Usuń konto",
|
||||
"logout": "Wyloguj się z tego urządzenia",
|
||||
"minimize_recommendations_default": "Ukryj proponowane filmy",
|
||||
"invalidate_session": "Wyloguj się ze wszystkich urządzeń",
|
||||
"different_auth_instance": "Użyj innej instancji do obsługi konta Piped",
|
||||
"clone_playlist": "Sklonuj playlistę",
|
||||
"backup_preferences": "Pobierz kopię zapasową ustawień",
|
||||
"download_as_txt": "Pobierz jako .txt",
|
||||
"reset_preferences": "Zresetuj ustawienia",
|
||||
"new_playlist_name": "Nowa nazwa playlisty",
|
||||
"share": "Udostępnij",
|
||||
"with_timecode": "Udostępnij z kodem czasowym",
|
||||
"piped_link": "Link Piped",
|
||||
"status_page": "Status",
|
||||
"reply_count": "{count} odpowiedzi",
|
||||
"no_valid_playlists": "Ten plik nie zawiera poprawnych playlist!"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Przypięty przez {author}"
|
||||
"pinned_by": "Przypięty przez {author}",
|
||||
"disabled": "Komentarze zostały wyłączone przez twórcę.",
|
||||
"loading": "Wczytywanie komentarzy...",
|
||||
"user_disabled": "Komentarze wyłączone w ustawieniach."
|
||||
},
|
||||
"preferences": {
|
||||
"instance_name": "Nazwa instancji",
|
||||
"instance_locations": "Lokalizacje instancji",
|
||||
"has_cdn": "Używa CDN?",
|
||||
"registered_users": "Il. zarej. uż.",
|
||||
"registered_users": "Zarejestrowani użytkownicy",
|
||||
"version": "Wersja",
|
||||
"up_to_date": "Aktualna?",
|
||||
"ssl_score": "Ocena SSL"
|
||||
@ -103,7 +147,8 @@
|
||||
"sponsor_segments": "Segmenty sponsorowane",
|
||||
"ratings_disabled": "Ocenianie wyłączone",
|
||||
"chapters": "Rozdziały",
|
||||
"live": "{0} Na żywo"
|
||||
"live": "{0} Na żywo",
|
||||
"shorts": "Krótkie wideo"
|
||||
},
|
||||
"search": {
|
||||
"did_you_mean": "Czy chodziło ci o: {0}?",
|
||||
@ -115,5 +160,15 @@
|
||||
"music_videos": "YT Music: Teledyski",
|
||||
"music_albums": "YT Music: Albumy",
|
||||
"music_playlists": "YT Music: Playlisty"
|
||||
},
|
||||
"info": {
|
||||
"cannot_copy": "Nie można skopiować!",
|
||||
"copied": "Skopiowano!",
|
||||
"page_not_found": "Strona nie znaleziona",
|
||||
"preferences_note": "Uwaga: ustawienia są zapisywane w lokalnej pamięci przeglądarki. Usunięcie danych przeglądarki spowoduje ich zresetowanie.",
|
||||
"local_storage": "Ta akcja wymaga dostępu do lokalnej pamięci, czy pliki cookie są włączone?"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "Licznik subskrybcji: {0}"
|
||||
}
|
||||
}
|
||||
|
@ -1,142 +1,174 @@
|
||||
{
|
||||
"titles": {
|
||||
"trending": "Tendências",
|
||||
"preferences": "Preferências",
|
||||
"preferences": "Configurações",
|
||||
"subscriptions": "Subscrições",
|
||||
"login": "Entrar",
|
||||
"login": "Iniciar Sessão",
|
||||
"register": "Registar",
|
||||
"history": "Histórico",
|
||||
"feed": "Feed",
|
||||
"playlists": "Listas de reprodução",
|
||||
"feed": "Conteúdo",
|
||||
"playlists": "Listas de Reprodução",
|
||||
"account": "Conta",
|
||||
"instance": "Instância",
|
||||
"player": "Reprodutor"
|
||||
"player": "Reprodutor",
|
||||
"livestreams": "Transmissões ao vivo",
|
||||
"channels": "Canais"
|
||||
},
|
||||
"actions": {
|
||||
"sort_by": "Ordenar por:",
|
||||
"most_recent": "Mais recentes",
|
||||
"least_recent": "Menos recentes",
|
||||
"channel_name_asc": "Nome do canal (A-Z)",
|
||||
"back": "Recuar",
|
||||
"uses_api_from": "Utiliza a API de ",
|
||||
"enable_sponsorblock": "Ativar 'Sponsorblock'",
|
||||
"skip_intro": "Ignorar intervalo/animação de abertura",
|
||||
"skip_outro": "Ignorar cartões finais/créditos",
|
||||
"skip_preview": "Ignorar pré-visualização/resumo",
|
||||
"most_recent": "Mais Recente",
|
||||
"least_recent": "Menos Recente",
|
||||
"channel_name_asc": "Nome do Canal (A-Z)",
|
||||
"back": "Voltar",
|
||||
"uses_api_from": "Utiliza a \"API\" de ",
|
||||
"enable_sponsorblock": "Ativar \"SponsorBlock\"",
|
||||
"skip_intro": "Saltar Intermissão/Animação de Introdução",
|
||||
"skip_outro": "Saltar \"Endcards\"/Créditos",
|
||||
"skip_preview": "Saltar Pré-Visualização/Recapitulação",
|
||||
"auto": "Automático",
|
||||
"dark": "Escuro",
|
||||
"autoplay_video": "Reprodução automática",
|
||||
"audio_only": "Apenas áudio",
|
||||
"default_quality": "Qualidade padrão",
|
||||
"country_selection": "Seleção de país",
|
||||
"default_homepage": "Página inicial padrão",
|
||||
"show_comments": "Mostrar comentários",
|
||||
"minimize_description_default": "Minimizar descrição por definição",
|
||||
"store_watch_history": "Guardar histórico de visualizações",
|
||||
"instances_list": "Lista de instâncias",
|
||||
"enabled_codecs": "Codificadores ativados (Vários)",
|
||||
"instance_selection": "Seleção de instância",
|
||||
"show_more": "Mostrar mais",
|
||||
"autoplay_video": "Reproduzir Vídeo Automaticamente",
|
||||
"audio_only": "Apenas Áudio",
|
||||
"default_quality": "Qualidade Padrão",
|
||||
"country_selection": "Seleção de País",
|
||||
"default_homepage": "Página Inicial Padrão",
|
||||
"show_comments": "Mostrar Comentários",
|
||||
"minimize_description_default": "Minimizar Descrição por defeito",
|
||||
"store_watch_history": "Guardar Histórico de Visualizações",
|
||||
"instances_list": "Lista de Instâncias",
|
||||
"enabled_codecs": "\"Codecs\" Activados (Vários)",
|
||||
"instance_selection": "Seleção de Instância",
|
||||
"show_more": "Mostrar Mais",
|
||||
"import_from_json": "Importar de JSON/CSV",
|
||||
"export_to_json": "Exportar para JSON",
|
||||
"loop_this_video": "Repetir este vídeo",
|
||||
"auto_play_next_video": "Reproduzir próximo vídeo automaticamente",
|
||||
"donations": "Doações",
|
||||
"minimize_description": "Minimizar descrição",
|
||||
"show_description": "Mostrar descrição",
|
||||
"show_recommendations": "Mostrar recomendações",
|
||||
"disable_lbry": "Desativar LBRY para streaming",
|
||||
"enable_lbry_proxy": "Ativar proxy para LBRY",
|
||||
"view_ssl_score": "Ver valor SSL",
|
||||
"search": "Pesquisa",
|
||||
"loop_this_video": "Repetir este Vídeo",
|
||||
"auto_play_next_video": "Reproduzir Automaticamente o próximo Vídeo",
|
||||
"donations": "Doações de desenvolvimento",
|
||||
"minimize_description": "Minimizar Descrição",
|
||||
"show_description": "Mostrar Descrição",
|
||||
"show_recommendations": "Mostrar Recomendações",
|
||||
"disable_lbry": "Desactivar \"LBRY\" para Transmissão",
|
||||
"enable_lbry_proxy": "Activar \"Proxy\" para \"LBRY\"",
|
||||
"view_ssl_score": "Ver Pontuação \"SSL\"",
|
||||
"search": "Procurar",
|
||||
"filter": "Filtrar",
|
||||
"loading": "A carregar...",
|
||||
"clear_history": "Limpar histórico",
|
||||
"loading": "A Carregar...",
|
||||
"clear_history": "Limpar Histórico",
|
||||
"subscribe": "Subscrever - {count}",
|
||||
"unsubscribe": "Cancelar subscrição - {count}",
|
||||
"view_subscriptions": "Ver subscrições",
|
||||
"channel_name_desc": "Nome do canal (Z-A)",
|
||||
"skip_sponsors": "Ignorar publicidade",
|
||||
"unsubscribe": "Anular subscrição - {count}",
|
||||
"view_subscriptions": "Ver Subscrições",
|
||||
"channel_name_desc": "Nome do Canal (Z-A)",
|
||||
"skip_sponsors": "Saltar Patrocínios",
|
||||
"yes": "Sim",
|
||||
"skip_non_music": "Música: ignorar secção não musical",
|
||||
"skip_non_music": "Saltar Música: Secção Não-Musical",
|
||||
"no": "Não",
|
||||
"theme": "Tema",
|
||||
"language_selection": "Seleção de idioma",
|
||||
"minimize_recommendations": "Minimizar recomendações",
|
||||
"language_selection": "Seleção de Idioma",
|
||||
"minimize_recommendations": "Minimizar Recomendações",
|
||||
"light": "Claro",
|
||||
"hide_replies": "Ocultar respostas",
|
||||
"load_more_replies": "Carregar mais respostas",
|
||||
"skip_highlight": "Ignorar destaques",
|
||||
"skip_interaction": "Ignorar lembrete de Interação (Subscrição)",
|
||||
"skip_self_promo": "Ignorar promoção não paga/autopromoção",
|
||||
"buffering_goal": "Objetivo de memória (segundos)",
|
||||
"skip_filler_tangent": "Ignorar cenas desnecessárias",
|
||||
"hide_replies": "Ocultar Respostas",
|
||||
"load_more_replies": "Carregar mais Respostas",
|
||||
"skip_highlight": "Saltar Destaque",
|
||||
"skip_interaction": "Saltar Lembrete de Interação (Subscreve)",
|
||||
"skip_self_promo": "Saltar Promoção Não Paga/Auto-Promoção",
|
||||
"buffering_goal": "Objetivo de \"Buffering\" (em segundos)",
|
||||
"skip_filler_tangent": "Saltar Tangente \"Filler\"",
|
||||
"add_to_playlist": "Adicionar à lista de reprodução",
|
||||
"delete_playlist": "Eliminar lista de reprodução",
|
||||
"select_playlist": "Seleccione uma lista de reprodução",
|
||||
"delete_playlist_confirm": "Eliminar esta lista de reprodução?",
|
||||
"please_select_playlist": "Selecione uma lista de reprodução",
|
||||
"delete_playlist_video_confirm": "Remover vídeo da lista de reprodução?",
|
||||
"delete_playlist": "Apagar Lista de Reprodução",
|
||||
"select_playlist": "Selecionar uma Lista de Reprodução",
|
||||
"delete_playlist_confirm": "Apagar esta lista de reprodução?",
|
||||
"please_select_playlist": "Selecionar uma lista de reprodução se faz favor",
|
||||
"delete_playlist_video_confirm": "Remover o vídeo da lista de reprodução?",
|
||||
"remove_from_playlist": "Remover da lista de reprodução",
|
||||
"create_playlist": "Criar lista de reprodução",
|
||||
"create_playlist": "Criar Lista de Reprodução",
|
||||
"clone_playlist_success": "Clonada com sucesso!",
|
||||
"clone_playlist": "Clonar lista de reprodução",
|
||||
"show_markers": "Mostrar marcas no reprodutor",
|
||||
"delete_account": "Eliminar conta",
|
||||
"logout": "Terminar sessão neste dispositivo",
|
||||
"minimize_recommendations_default": "Minimizar recomendações por definição",
|
||||
"invalidate_session": "Terminar sessão em todos os dispositivos",
|
||||
"different_auth_instance": "Use uma instância diferente para autenticação",
|
||||
"instance_auth_selection": "Seleção de instância de autenticação",
|
||||
"confirm_reset_preferences": "Tem a certeza de que deseja restaurar as preferências originais?",
|
||||
"download_as_txt": "Descarregar como txt",
|
||||
"reset_preferences": "Repor definições originais",
|
||||
"restore_preferences": "Restaurar preferências"
|
||||
"clone_playlist": "Clonar Lista de Reprodução",
|
||||
"show_markers": "Mostrar Marcadores no Leitor",
|
||||
"delete_account": "Apagar Conta",
|
||||
"logout": "Terminar sessão neste aparelho",
|
||||
"minimize_recommendations_default": "Minimizar Recomendações por defeito",
|
||||
"invalidate_session": "Terminar sessão em todos os aparelhos",
|
||||
"different_auth_instance": "Usar uma instância diferente para autenticação",
|
||||
"instance_auth_selection": "Selecção da Instância para Autenticação",
|
||||
"confirm_reset_preferences": "Tem a certeza que quer redefinir as suas configurações?",
|
||||
"download_as_txt": "Descarregar como .txt",
|
||||
"reset_preferences": "Redefinir preferências",
|
||||
"restore_preferences": "Restaurar configurações",
|
||||
"follow_link": "Seguir ligação",
|
||||
"piped_link": "Ligação do Piped",
|
||||
"backup_preferences": "Exportar configurações",
|
||||
"store_search_history": "Armazenar Histórico de Pesquisa",
|
||||
"hide_watched": "Ocultar vídeos assistidos no feed",
|
||||
"documentation": "Documentação",
|
||||
"status_page": "Estado",
|
||||
"source_code": "Código-fonte",
|
||||
"instance_donations": "Doações de instâncias",
|
||||
"minimize_chapters_default": "Minimizar Capítulos por padrão",
|
||||
"show_watch_on_youtube": "Mostrar Botão Assistir no YouTube",
|
||||
"new_playlist_name": "Novo nome da lista de reprodução",
|
||||
"minimize_comments": "Minimizar Comentários",
|
||||
"back_to_home": "Voltar ao início",
|
||||
"rename_playlist": "Renomear",
|
||||
"copy_link": "Copiar ligação",
|
||||
"time_code": "Código de tempo (em segundos)",
|
||||
"minimize_comments_default": "Minimizar Comentários por defeito",
|
||||
"share": "Partilhar",
|
||||
"with_timecode": "Partilhar com código de tempo",
|
||||
"show_chapters": "Capítulos",
|
||||
"reply_count": "{count} respostas",
|
||||
"no_valid_playlists": "O ficheiro não contém listas de reprodução válidas!"
|
||||
},
|
||||
"preferences": {
|
||||
"instance_name": "Nome da instância",
|
||||
"instance_locations": "Localizações da instância",
|
||||
"ssl_score": "Valor SSL",
|
||||
"has_cdn": "Tem CDN?",
|
||||
"instance_name": "Nome da Instância",
|
||||
"instance_locations": "Localizações da Instância",
|
||||
"ssl_score": "Pontuação \"SSL\"",
|
||||
"has_cdn": "Tem \"CDN\"?",
|
||||
"version": "Versão",
|
||||
"registered_users": "Utilizadores registados",
|
||||
"up_to_date": "Atualizado?"
|
||||
"registered_users": "Utilizadores Registados",
|
||||
"up_to_date": "Atualizada?"
|
||||
},
|
||||
"login": {
|
||||
"password": "Palavra-passe",
|
||||
"username": "Utilizador"
|
||||
"username": "Nome de utilizador"
|
||||
},
|
||||
"video": {
|
||||
"videos": "Vídeos",
|
||||
"views": "{views} visualizações",
|
||||
"watched": "Assistido",
|
||||
"sponsor_segments": "Segmentos de patrocínios",
|
||||
"ratings_disabled": "Avaliações desativadas",
|
||||
"watched": "Visto",
|
||||
"sponsor_segments": "Segmentos Patrocinados",
|
||||
"ratings_disabled": "Classificações Desactivadas",
|
||||
"chapters": "Capítulos",
|
||||
"live": "{0} em direto",
|
||||
"shorts": "Curtos"
|
||||
"live": "{0} em Direto",
|
||||
"shorts": "\"Shorts\""
|
||||
},
|
||||
"search": {
|
||||
"did_you_mean": "Será que queria dizer: {0}?",
|
||||
"did_you_mean": "Será que querias dizer: {0}?",
|
||||
"all": "YouTube: Tudo",
|
||||
"videos": "YouTube: Vídeos",
|
||||
"channels": "YouTube: Canais",
|
||||
"music_songs": "YT Music: Músicas",
|
||||
"music_videos": "YT Music: Vídeos",
|
||||
"music_albums": "YT Music: Álbuns",
|
||||
"music_playlists": "YT Music: Listas de reprodução",
|
||||
"playlists": "YouTube: Listas de reprodução"
|
||||
"music_playlists": "YT Music: Listas de Reprodução",
|
||||
"playlists": "YouTube: Listas de Reprodução"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Ver em {0}"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Fixado por {author}",
|
||||
"disabled": "Os comentários form desativados pelo publicador.",
|
||||
"loading": "Carregando comentários...",
|
||||
"user_disabled": "Os comentários estão desativados nas definições."
|
||||
"pinned_by": "Afixado por {author}",
|
||||
"disabled": "Os comentários estão desactivados pelo dono do canal.",
|
||||
"loading": "A carregar comentários...",
|
||||
"user_disabled": "Os comentários estão desactivados nas definições."
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "{0} subscrito"
|
||||
"subscribed_channels_count": "Subscrito a: {0}"
|
||||
},
|
||||
"info": {
|
||||
"copied": "Copiada!",
|
||||
"cannot_copy": "Não foi possível copiar!",
|
||||
"page_not_found": "Página não encontrada",
|
||||
"local_storage": "Esta ação requer localStorage, os cookies estão ativados?",
|
||||
"preferences_note": "Nota: as configurações são guardadas no armazenamento local to seu navegador. Eliminar os dados de navegação irá redefini-las."
|
||||
}
|
||||
}
|
||||
|
@ -9,41 +9,41 @@
|
||||
"channel_name_desc": "Nome do Canal (Z-A)",
|
||||
"dark": "Escuro",
|
||||
"light": "Claro",
|
||||
"show_comments": "Mostrar comentários",
|
||||
"show_comments": "Exibir Comentários",
|
||||
"country_selection": "Seleção de País",
|
||||
"default_homepage": "Página inicial (padrão)",
|
||||
"default_quality": "Qualidade padrão",
|
||||
"autoplay_video": "Reprodução automática",
|
||||
"minimize_description_default": "Minimizar descrição por padrão",
|
||||
"default_homepage": "Página Inicial Padrão",
|
||||
"default_quality": "Qualidade Padrão",
|
||||
"autoplay_video": "Reprodução Automática",
|
||||
"minimize_description_default": "Minimizar Descrição por padrão",
|
||||
"theme": "Tema",
|
||||
"audio_only": "Apenas áudio",
|
||||
"audio_only": "Apenas Áudio",
|
||||
"subscribe": "Inscrever-se - {count}",
|
||||
"unsubscribe": "Desinscrever-se - {count}",
|
||||
"skip_sponsors": "Pular patrocinadores",
|
||||
"skip_sponsors": "Pular Patrocinadores",
|
||||
"auto": "Automático",
|
||||
"uses_api_from": "Usa a API de ",
|
||||
"enable_sponsorblock": "Habilitar Sponsorblock",
|
||||
"enable_sponsorblock": "Ativar Sponsorblock",
|
||||
"skip_interaction": "Pular Lembrete de Interação (Inscrever-se)",
|
||||
"skip_self_promo": "Pular Promoção não paga/Autopromoção",
|
||||
"show_markers": "Exibir marcadores no player",
|
||||
"show_markers": "Exibir Marcadores no Player",
|
||||
"skip_intro": "Pular Intervalo/Introdução Animada",
|
||||
"skip_outro": "Pular Créditos/Cartões finais",
|
||||
"skip_preview": "Pular Recapitulação",
|
||||
"skip_highlight": "Pular destaque",
|
||||
"buffering_goal": "Cache de buffer (em segundos)",
|
||||
"skip_highlight": "Pular Destaque",
|
||||
"buffering_goal": "Cache de Buffer (em segundos)",
|
||||
"skip_non_music": "Pular Música: Seção não Musical",
|
||||
"skip_filler_tangent": "Pular Enchimento Tangencial",
|
||||
"enabled_codecs": "Habilitar Codecs (Múltiplos)",
|
||||
"enabled_codecs": "Codecs Ativados (Múltiplos)",
|
||||
"language_selection": "Seleção de Idioma",
|
||||
"yes": "Sim",
|
||||
"show_more": "Mostrar mais",
|
||||
"show_more": "Mostrar Mais",
|
||||
"export_to_json": "Exportar para JSON",
|
||||
"donations": "Doações de desenvolvimento",
|
||||
"minimize_recommendations": "Recolher recomendações",
|
||||
"minimize_recommendations": "Minimizar Recomendações",
|
||||
"loading": "Carregando...",
|
||||
"hide_replies": "Esconder respostas",
|
||||
"minimize_description": "Esconder descrição",
|
||||
"load_more_replies": "Exibir mais respostas",
|
||||
"hide_replies": "Ocultar Respostas",
|
||||
"minimize_description": "Minimizar Descrição",
|
||||
"load_more_replies": "Carregar mais Respostas",
|
||||
"create_playlist": "Criar Playlist",
|
||||
"delete_playlist": "Excluir Playlist",
|
||||
"select_playlist": "Selecionar uma Playlist",
|
||||
@ -53,20 +53,20 @@
|
||||
"please_select_playlist": "Por favor, selecione uma playlist",
|
||||
"remove_from_playlist": "Remover da playlist",
|
||||
"view_ssl_score": "Ver Pontuação SSL",
|
||||
"disable_lbry": "Desabilitar LBRY para Streaming",
|
||||
"enable_lbry_proxy": "Habilitar proxy para LBRY",
|
||||
"disable_lbry": "Desativar LBRY para Streaming",
|
||||
"enable_lbry_proxy": "Ativar Proxy para LBRY",
|
||||
"import_from_json": "Importar de JSON/CSV",
|
||||
"loop_this_video": "Repetir este Vídeo",
|
||||
"instances_list": "Lista de Instâncias",
|
||||
"clear_history": "Limpar Histórico",
|
||||
"search": "Pesquisar",
|
||||
"no": "Não",
|
||||
"show_description": "Exibir descrição",
|
||||
"show_description": "Exibir Descrição",
|
||||
"instance_selection": "Seleção de Instância",
|
||||
"auto_play_next_video": "Autoreproduzir vídeo seguinte",
|
||||
"auto_play_next_video": "Autorreproduzir Próximo Vídeo",
|
||||
"filter": "Filtro",
|
||||
"store_watch_history": "Salvar Histórico de Exibição",
|
||||
"show_recommendations": "Mostrar recomendações",
|
||||
"show_recommendations": "Exibir Recomendações",
|
||||
"minimize_comments_default": "Minimizar Comentários por padrão",
|
||||
"minimize_comments": "Minimizar Comentários",
|
||||
"different_auth_instance": "Use uma instância diferente para autenticação",
|
||||
@ -81,7 +81,7 @@
|
||||
"status_page": "Estado",
|
||||
"source_code": "Código fonte",
|
||||
"instance_donations": "Doações de instâncias",
|
||||
"instance_auth_selection": "Seleção de iIstância de Autenticação",
|
||||
"instance_auth_selection": "Seleção de Instância de Autenticação",
|
||||
"clone_playlist_success": "Clonada com sucesso!",
|
||||
"download_as_txt": "Baixar como .txt",
|
||||
"restore_preferences": "Restaurar preferências",
|
||||
@ -91,14 +91,17 @@
|
||||
"new_playlist_name": "Novo nome da playlist",
|
||||
"with_timecode": "Compartilhar com código de tempo",
|
||||
"piped_link": "Link do Piped",
|
||||
"follow_link": "Siguir link",
|
||||
"follow_link": "Seguir link",
|
||||
"time_code": "Código de tempo (em segundos)",
|
||||
"show_chapters": "Capítulos",
|
||||
"confirm_reset_preferences": "Tem certeza de que deseja redefinir suas preferências?",
|
||||
"reset_preferences": "Redefinir preferências",
|
||||
"documentation": "Documentação",
|
||||
"reply_count": "{count} respostas",
|
||||
"minimize_recommendations_default": "Minimizar Recomendações por padrão"
|
||||
"minimize_recommendations_default": "Minimizar Recomendações por padrão",
|
||||
"show_watch_on_youtube": "Mostrar Botão Assistir no YouTube",
|
||||
"minimize_chapters_default": "Minimizar Capítulos por padrão",
|
||||
"no_valid_playlists": "O arquivo não contém playlists válidas!"
|
||||
},
|
||||
"titles": {
|
||||
"history": "Histórico",
|
||||
@ -111,10 +114,12 @@
|
||||
"subscriptions": "Inscrições",
|
||||
"instance": "Instância",
|
||||
"player": "Player",
|
||||
"account": "Conta"
|
||||
"account": "Conta",
|
||||
"channels": "Canais",
|
||||
"livestreams": "Transmissões ao vivo"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Assistir no"
|
||||
"watch_on": "Assistir no {0}"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Fixado por {author}",
|
||||
@ -123,7 +128,7 @@
|
||||
"loading": "Carregando comentários..."
|
||||
},
|
||||
"preferences": {
|
||||
"registered_users": "Usuários cadastrados",
|
||||
"registered_users": "Usuários Registrados",
|
||||
"version": "Versão",
|
||||
"instance_name": "Nome da Instância",
|
||||
"instance_locations": "Localizações da Instância",
|
||||
@ -141,8 +146,8 @@
|
||||
"chapters": "Capítulos",
|
||||
"live": "{0} Ao vivo",
|
||||
"watched": "Assistido",
|
||||
"ratings_disabled": "Avaliações desabilitadas",
|
||||
"sponsor_segments": "Segmentos de patrocinadores",
|
||||
"ratings_disabled": "Avaliações Desativadas",
|
||||
"sponsor_segments": "Segmentos de Patrocinadores",
|
||||
"shorts": "Shorts"
|
||||
},
|
||||
"search": {
|
||||
@ -160,7 +165,8 @@
|
||||
"copied": "Copiado!",
|
||||
"cannot_copy": "Não foi possível copiar!",
|
||||
"preferences_note": "Nota: as preferências são salvas no armazenamento local do seu navegador. A exclusão dos dados do seu navegador irá redefini-los.",
|
||||
"page_not_found": "página não encontrada"
|
||||
"page_not_found": "página não encontrada",
|
||||
"local_storage": "Esta ação requer localStorage, os cookies estão ativados?"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "Inscrito em: {0}"
|
||||
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Listas de Reprodução",
|
||||
"account": "Conta",
|
||||
"instance": "Instância",
|
||||
"player": "Reprodutor"
|
||||
"player": "Reprodutor",
|
||||
"livestreams": "Transmissões ao vivo",
|
||||
"channels": "Canais"
|
||||
},
|
||||
"actions": {
|
||||
"view_subscriptions": "Ver Subscrições",
|
||||
@ -47,7 +49,7 @@
|
||||
"import_from_json": "Importar de JSON/CSV",
|
||||
"loop_this_video": "Repetir este Vídeo",
|
||||
"auto_play_next_video": "Reproduzir Automaticamente o próximo Vídeo",
|
||||
"donations": "Doações",
|
||||
"donations": "Doações de desenvolvimento",
|
||||
"minimize_description": "Minimizar Descrição",
|
||||
"show_description": "Mostrar Descrição",
|
||||
"minimize_recommendations": "Minimizar Recomendações",
|
||||
@ -101,7 +103,20 @@
|
||||
"time_code": "Código de tempo (em segundos)",
|
||||
"reset_preferences": "Redefinir preferências",
|
||||
"backup_preferences": "Exportar configurações",
|
||||
"back_to_home": "Voltar ao início"
|
||||
"back_to_home": "Voltar ao início",
|
||||
"minimize_comments_default": "Minimizar Comentários por defeito",
|
||||
"store_search_history": "Armazenar Histórico de Pesquisa",
|
||||
"minimize_chapters_default": "Minimizar Capítulos por padrão",
|
||||
"show_watch_on_youtube": "Mostrar Botão Assistir no YouTube",
|
||||
"show_chapters": "Capítulos",
|
||||
"hide_watched": "Ocultar vídeos assistidos no feed",
|
||||
"documentation": "Documentação",
|
||||
"status_page": "Estado",
|
||||
"minimize_comments": "Minimizar Comentários",
|
||||
"reply_count": "{count} respostas",
|
||||
"source_code": "Código-fonte",
|
||||
"instance_donations": "Doações de instâncias",
|
||||
"no_valid_playlists": "O ficheiro não contém listas de reprodução válidas!"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Afixado por {author}",
|
||||
@ -153,6 +168,7 @@
|
||||
"preferences_note": "Nota: as configurações são guardadas no armazenamento local to seu navegador. Eliminar os dados de navegação irá redefini-las.",
|
||||
"page_not_found": "Página não encontrada",
|
||||
"copied": "Copiada!",
|
||||
"cannot_copy": "Não foi possível copiar!"
|
||||
"cannot_copy": "Não foi possível copiar!",
|
||||
"local_storage": "Esta ação requer localStorage, os cookies estão ativados?"
|
||||
}
|
||||
}
|
||||
|
172
src/locales/ro.json
Normal file
172
src/locales/ro.json
Normal file
@ -0,0 +1,172 @@
|
||||
{
|
||||
"actions": {
|
||||
"back_to_home": "Înapoi acasă",
|
||||
"store_search_history": "Salveaza Istoric de Cautări",
|
||||
"with_timecode": "Distribuie cu cod de timp",
|
||||
"piped_link": "Link Piped",
|
||||
"time_code": "Cod de timp (secunde)",
|
||||
"show_chapters": "Capitole",
|
||||
"search": "Caută",
|
||||
"logout": "Scoate contul de pe acest dispozitiv",
|
||||
"add_to_playlist": "Adaugă în Playlist",
|
||||
"remove_from_playlist": "Șterge din Playlist",
|
||||
"create_playlist": "Creează Playlist",
|
||||
"delete_playlist": "Șterge Playlist",
|
||||
"delete_playlist_confirm": "Ștergi acest playlist?",
|
||||
"please_select_playlist": "Te rog să alegi un playlist",
|
||||
"minimize_recommendations_default": "Ascunde Recomandări ca default",
|
||||
"subscribe": "Abonează-te - {count}",
|
||||
"least_recent": "Mai puțin recente",
|
||||
"channel_name_asc": "Nume Canal (A-Z)",
|
||||
"channel_name_desc": "Nume Canal (Z-A)",
|
||||
"back": "Înapoi",
|
||||
"uses_api_from": "Folosește API de la ",
|
||||
"enable_sponsorblock": "Activează Sponsorblock",
|
||||
"skip_intro": "Sari animația de Intermisie / Intro",
|
||||
"skip_preview": "Sari Preview / Recapitulare",
|
||||
"skip_self_promo": "Sari Promoția Neplătita / Proprie",
|
||||
"skip_non_music": "Sari Muzica: Secțiunea de Non-Muzică",
|
||||
"skip_highlight": "Sari Highlight",
|
||||
"show_markers": "Arată Marcaje in Player",
|
||||
"dark": "Întunecat",
|
||||
"auto": "Auto",
|
||||
"audio_only": "Doar Audio",
|
||||
"default_quality": "Calitate Default",
|
||||
"country_selection": "Selecție Țară",
|
||||
"default_homepage": "Pagina de Acasă",
|
||||
"minimize_comments_default": "Ascunde Comentariile",
|
||||
"minimize_description_default": "Ascunde Descrierea",
|
||||
"language_selection": "Selecție Limbă",
|
||||
"instances_list": "Listă de Instanțe",
|
||||
"enabled_codecs": "Activează Codecuri (Multiple)",
|
||||
"loop_this_video": "Repornește Video-ul",
|
||||
"donations": "Donații",
|
||||
"show_recommendations": "Recomandări",
|
||||
"disable_lbry": "Oprește LBRY pentru Streaming",
|
||||
"enable_lbry_proxy": "Activează Proxy pentru LBRY",
|
||||
"view_ssl_score": "Vezi Scor SSL",
|
||||
"filter": "Filtru",
|
||||
"loading": "Se încarcă...",
|
||||
"clear_history": "Șterge Istoric",
|
||||
"hide_replies": "Ascunde răspunsuri",
|
||||
"load_more_replies": "Mai multe Răspunsuri",
|
||||
"delete_playlist_video_confirm": "Ștergi video-ul din playlist?",
|
||||
"select_playlist": "Alege un Playlist",
|
||||
"delete_account": "Șterge Contul",
|
||||
"show_watch_on_youtube": "Arata buton de Vezi pe YouTube",
|
||||
"invalidate_session": "Deconectează-te peste tot",
|
||||
"instance_auth_selection": "Selecție Instanță de Autentificare",
|
||||
"clone_playlist_success": "Clonat cu succes!",
|
||||
"reset_preferences": "Resetează preferințele",
|
||||
"confirm_reset_preferences": "Sigur vrei să îți resetezi preferințele?",
|
||||
"rename_playlist": "Redenumește playlist",
|
||||
"new_playlist_name": "Nume playlist nou",
|
||||
"share": "Distribuie",
|
||||
"follow_link": "Deschide link",
|
||||
"copy_link": "Copiază link",
|
||||
"hide_watched": "Ascunde video-urile vizionate",
|
||||
"documentation": "Documentație",
|
||||
"status_page": "Status",
|
||||
"source_code": "Cod sursă",
|
||||
"instance_donations": "Donații instanță",
|
||||
"reply_count": "{count} răspunsuri",
|
||||
"minimize_chapters_default": "Ascunde Capitole ca default",
|
||||
"skip_sponsors": "Sari Sponsori",
|
||||
"different_auth_instance": "Folosește altă instanță pentru autentificare",
|
||||
"clone_playlist": "Clonează Playlist",
|
||||
"backup_preferences": "Backup preferințe",
|
||||
"unsubscribe": "Dezabonează-te - {count}",
|
||||
"view_subscriptions": "Vezi Subscripții",
|
||||
"sort_by": "Sortează după:",
|
||||
"download_as_txt": "Descarcă ca .txt",
|
||||
"most_recent": "Cele mai Recente",
|
||||
"skip_outro": "Sari Endcards / Credite",
|
||||
"skip_interaction": "Sari Reminder de interacțiune (Subscribe)",
|
||||
"light": "Luminat",
|
||||
"restore_preferences": "Restore preferințe",
|
||||
"skip_filler_tangent": "Sari Tangenta Filler",
|
||||
"theme": "Temă",
|
||||
"autoplay_video": "Autopornește Video",
|
||||
"buffering_goal": "Buffering Goal (secunde)",
|
||||
"instance_selection": "Selecție Instanță",
|
||||
"store_watch_history": "Salvează Istoricul de Vizionare",
|
||||
"minimize_comments": "Comentarii",
|
||||
"minimize_description": "Descriere",
|
||||
"show_more": "Mai Mult",
|
||||
"no": "Nu",
|
||||
"export_to_json": "Exportă ca JSON",
|
||||
"import_from_json": "Importă din JSON/CSV",
|
||||
"auto_play_next_video": "Autopornește următorul Video",
|
||||
"minimize_recommendations": "Recomandări",
|
||||
"yes": "Da",
|
||||
"show_comments": "Comentarii",
|
||||
"show_description": "Descriere"
|
||||
},
|
||||
"preferences": {
|
||||
"ssl_score": "Scor SSL",
|
||||
"version": "Versiune",
|
||||
"up_to_date": "Actualizat?",
|
||||
"instance_name": "Nume Instanță",
|
||||
"instance_locations": "Locațiile Instanței",
|
||||
"has_cdn": "Are CDN?",
|
||||
"registered_users": "Useri Înregistrați"
|
||||
},
|
||||
"comment": {
|
||||
"user_disabled": "Comentariile sunt dezactivate în setări.",
|
||||
"pinned_by": "Pomovat de {author}",
|
||||
"disabled": "Comentariile sunt dezactivate de creator.",
|
||||
"loading": "Se incarcă comentariile..."
|
||||
},
|
||||
"video": {
|
||||
"views": "{views} vizionări",
|
||||
"chapters": "Capitole",
|
||||
"shorts": "Shorts",
|
||||
"watched": "Văzut",
|
||||
"sponsor_segments": "Segmente Sponsori",
|
||||
"ratings_disabled": "Like-uri dezactivate",
|
||||
"live": "{0} Live",
|
||||
"videos": "Video-uri"
|
||||
},
|
||||
"login": {
|
||||
"username": "Nume User",
|
||||
"password": "Parolă"
|
||||
},
|
||||
"search": {
|
||||
"videos": "YouTube: Video-uri",
|
||||
"music_playlists": "YT Music: Playlisturi",
|
||||
"did_you_mean": "Voiai să scrii: {0}?",
|
||||
"all": "YouTube: Toate",
|
||||
"channels": "YouTube: Canale",
|
||||
"playlists": "YouTube: Playlisturi",
|
||||
"music_songs": "YT Music: Cântece",
|
||||
"music_videos": "YT Music: Video-uri",
|
||||
"music_albums": "YT Music: Albume"
|
||||
},
|
||||
"info": {
|
||||
"cannot_copy": "Nu se poate copia!",
|
||||
"preferences_note": "Sfat: preferințele sunt salvate in memoria locala a browserului tău. Ștergând datele browserului le ștergi si pe ele.",
|
||||
"page_not_found": "Pagină negăsită",
|
||||
"copied": "S-a copiat!"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "Abonat la: {0}"
|
||||
},
|
||||
"titles": {
|
||||
"register": "Înregistrare",
|
||||
"history": "Istoric",
|
||||
"subscriptions": "Abonări",
|
||||
"playlists": "Playlisturi",
|
||||
"account": "Cont",
|
||||
"instance": "Instanță",
|
||||
"login": "Logare",
|
||||
"feed": "Abonări",
|
||||
"trending": "Trending",
|
||||
"livestreams": "Live-uri",
|
||||
"channels": "Canale",
|
||||
"preferences": "Preferințe",
|
||||
"player": "Player"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Vezi pe {0}"
|
||||
}
|
||||
}
|
@ -10,7 +10,9 @@
|
||||
"playlists": "Плейлисты",
|
||||
"account": "Аккаунт",
|
||||
"player": "Плеер",
|
||||
"instance": "Сервер"
|
||||
"instance": "Сервер",
|
||||
"livestreams": "Прямые трансляции",
|
||||
"channels": "Каналы"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Смотреть на {0}"
|
||||
@ -103,7 +105,7 @@
|
||||
"time_code": "Тайм-код (в секундах)",
|
||||
"reset_preferences": "Сбросить настройки",
|
||||
"confirm_reset_preferences": "Вы уверены, что хотите сбросить настройки?",
|
||||
"backup_preferences": "Настройки бэкапов",
|
||||
"backup_preferences": "Бэкап настроек",
|
||||
"restore_preferences": "Восстановить настройки",
|
||||
"back_to_home": "Вернутся на главную",
|
||||
"store_search_history": "Хранить историю поиска",
|
||||
@ -114,7 +116,10 @@
|
||||
"instance_donations": "Пожертвования сервера",
|
||||
"reply_count": "{count} ответов",
|
||||
"minimize_comments_default": "Сворачивать комментарии по умолчанию",
|
||||
"minimize_comments": "Свернуть комментарии"
|
||||
"minimize_comments": "Свернуть комментарии",
|
||||
"show_watch_on_youtube": "Показать кнопку Смотреть на YouTube",
|
||||
"minimize_chapters_default": "Скрывать главы по умолчанию",
|
||||
"no_valid_playlists": "Файл не содержит действительных списков воспроизведения!"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Прикреплено пользователем {author}",
|
||||
@ -163,6 +168,7 @@
|
||||
"preferences_note": "Примечание: настройки сохранены в локальном хранилище браузера. При удалении данных браузера они будут удалены.",
|
||||
"copied": "Скопировано!",
|
||||
"cannot_copy": "Не получилось скопировать!",
|
||||
"page_not_found": "Страница не найдена"
|
||||
"page_not_found": "Страница не найдена",
|
||||
"local_storage": "Это действие требует локального хранилища (localStorage), разрешены ли файлы cookie?"
|
||||
}
|
||||
}
|
||||
|
@ -108,7 +108,9 @@
|
||||
"new_playlist_name": "Ново име плејлисте",
|
||||
"minimize_comments_default": "Подразумевано умањи коментаре",
|
||||
"minimize_comments": "Умањи коментаре",
|
||||
"reply_count": "{count} одговора"
|
||||
"reply_count": "{count} одговора",
|
||||
"minimize_chapters_default": "Умањи поглавља подразумевано",
|
||||
"show_watch_on_youtube": "Прикажи сат на Јутјуб дугмету"
|
||||
},
|
||||
"preferences": {
|
||||
"instance_locations": "Локација инстанце",
|
||||
@ -145,7 +147,9 @@
|
||||
"playlists": "Пописи Снимака",
|
||||
"account": "Рачун",
|
||||
"instance": "Инстанца",
|
||||
"player": "Плејер"
|
||||
"player": "Плејер",
|
||||
"livestreams": "Уживо преноси",
|
||||
"channels": "Канали"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Закачено од {author}",
|
||||
@ -163,6 +167,7 @@
|
||||
"page_not_found": "Страница није пронађена",
|
||||
"copied": "Копирано!",
|
||||
"cannot_copy": "Није могуће копирати!",
|
||||
"preferences_note": "Напомена: подешавања се чувају у локалној меморији вашег претраживача. Брисање података прегледача ће их ресетовати."
|
||||
"preferences_note": "Напомена: подешавања се чувају у локалној меморији вашег претраживача. Брисање података прегледача ће их ресетовати.",
|
||||
"local_storage": "Ова радња захтева локално складиште, да ли су колачићи омогућени ?"
|
||||
}
|
||||
}
|
||||
|
@ -7,7 +7,7 @@
|
||||
"show_comments": "Yorumları Göster",
|
||||
"default_homepage": "Öntanımlı Ana Sayfa",
|
||||
"country_selection": "Ülke Seçimi",
|
||||
"buffering_goal": "Arabelleğe Alma Hedefi (saniye cinsinden)",
|
||||
"buffering_goal": "Arabelleğe Alma Hedefi (Saniye Cinsinden)",
|
||||
"default_quality": "Öntanımlı Kalite",
|
||||
"audio_only": "Yalnızca Ses",
|
||||
"autoplay_video": "Videoyu Otomatik Oynat",
|
||||
@ -31,17 +31,17 @@
|
||||
"most_recent": "En Yeni",
|
||||
"sort_by": "Sıralama ölçütü:",
|
||||
"view_subscriptions": "Abonelikleri Görüntüle",
|
||||
"unsubscribe": "Abonelikten çık - {count}",
|
||||
"subscribe": "Abone ol - {count}",
|
||||
"unsubscribe": "Abonelikten Çık - {count}",
|
||||
"subscribe": "Abone Ol - {count}",
|
||||
"enabled_codecs": "Etkin Çözücüler (Birden Çok)",
|
||||
"enable_lbry_proxy": "LBRY için Vekil Sunucuyu Etkinleştir",
|
||||
"disable_lbry": "Akış için LBRY'yi Devre Dışı Bırak",
|
||||
"show_description": "Açıklamayı Göster",
|
||||
"minimize_description": "Açıklamayı Küçült",
|
||||
"donations": "Geliştirme bağışları",
|
||||
"donations": "Geliştirme Bağışları",
|
||||
"auto_play_next_video": "Sonraki Videoyu Otomatik Oynat",
|
||||
"loop_this_video": "Bu Videoyu Döngüye Al",
|
||||
"import_from_json": "JSON/CSV dosyasından içe aktar",
|
||||
"import_from_json": "JSON/CSV Dosyasından İçe Aktar",
|
||||
"export_to_json": "JSON Olarak Dışa Aktar",
|
||||
"no": "Hayır",
|
||||
"yes": "Evet",
|
||||
@ -60,67 +60,72 @@
|
||||
"skip_filler_tangent": "Doldurma Sahnelerini Atla",
|
||||
"delete_playlist_confirm": "Bu oynatma listesi silinsin mi?",
|
||||
"delete_playlist_video_confirm": "Video oynatma listesinden kaldırılsın mı?",
|
||||
"remove_from_playlist": "Oynatma listesinden kaldır",
|
||||
"remove_from_playlist": "Oynatma Listesinden Kaldır",
|
||||
"delete_playlist": "Oynatma Listesini Sil",
|
||||
"add_to_playlist": "Oynatma listesine ekle",
|
||||
"add_to_playlist": "Oynatma Listesine Ekle",
|
||||
"create_playlist": "Oynatma Listesi Oluştur",
|
||||
"select_playlist": "Oynatma Listesi Seç",
|
||||
"please_select_playlist": "Lütfen bir oynatma listesi seçin",
|
||||
"please_select_playlist": "Lütfen Bir Oynatma Listesi Seçin",
|
||||
"show_markers": "Oynatıcıda İşaretçileri Göster",
|
||||
"delete_account": "Hesabı Sil",
|
||||
"logout": "Bu aygıttan oturumu kapat",
|
||||
"logout": "Bu Aygıttan Oturumu Kapat",
|
||||
"minimize_recommendations_default": "Önerileri Öntanımlı Olarak Küçült",
|
||||
"different_auth_instance": "Kimlik doğrulama için farklı bir örnek kullan",
|
||||
"invalidate_session": "Tüm aygıtlardan oturumu kapat",
|
||||
"different_auth_instance": "Kimlik Doğrulama İçin Farklı Bir Örnek Kullan",
|
||||
"invalidate_session": "Tüm Aygıtlardan Oturumu Kapat",
|
||||
"instance_auth_selection": "Kimlik Doğrulama Örneği Seçimi",
|
||||
"clone_playlist": "Oynatma Listesini Kopyala",
|
||||
"clone_playlist_success": "Başarıyla kopyalandı!",
|
||||
"download_as_txt": ".txt olarak indir",
|
||||
"reset_preferences": "Tercihleri sıfırla",
|
||||
"download_as_txt": ".txt Olarak İndir",
|
||||
"reset_preferences": "Tercihleri Sıfırla",
|
||||
"confirm_reset_preferences": "Tercihlerinizi sıfırlamak istediğinize emin misiniz?",
|
||||
"backup_preferences": "Tercihleri yedekle",
|
||||
"restore_preferences": "Tercihleri geri yükle",
|
||||
"back_to_home": "Ana sayfaya dön",
|
||||
"follow_link": "Bağlantıyı takip et",
|
||||
"copy_link": "Bağlantıyı kopyala",
|
||||
"time_code": "Zaman kodu (saniye cinsinden)",
|
||||
"with_timecode": "Zaman koduyla paylaş",
|
||||
"piped_link": "Piped bağlantısı",
|
||||
"backup_preferences": "Tercihleri Yedekle",
|
||||
"restore_preferences": "Tercihleri Geri Yükle",
|
||||
"back_to_home": "Ana Sayfaya Dön",
|
||||
"follow_link": "Bağlantıyı Takip Et",
|
||||
"copy_link": "Bağlantıyı Kopyala",
|
||||
"time_code": "Zaman Kodu (Saniye Cinsinden)",
|
||||
"with_timecode": "Zaman Koduyla Paylaş",
|
||||
"piped_link": "Piped Bağlantısı",
|
||||
"share": "Paylaş",
|
||||
"rename_playlist": "Oynatma listesini yeniden adlandır",
|
||||
"new_playlist_name": "Yeni oynatma listesi adı",
|
||||
"rename_playlist": "Oynatma Listesini Yeniden Adlandır",
|
||||
"new_playlist_name": "Yeni Oynatma Listesi Adı",
|
||||
"show_chapters": "Bölümler",
|
||||
"store_search_history": "Arama geçmişini sakla",
|
||||
"hide_watched": "Akışta izlenen videoları gizle",
|
||||
"source_code": "Kaynak kodu",
|
||||
"store_search_history": "Arama Geçmişini Sakla",
|
||||
"hide_watched": "Akışta İzlenen Videoları Gizle",
|
||||
"source_code": "Kaynak Kodu",
|
||||
"documentation": "Belgelendirme",
|
||||
"instance_donations": "Örnek bağışları",
|
||||
"instance_donations": "Örnek Bağışları",
|
||||
"status_page": "Durum",
|
||||
"reply_count": "{count} yanıt",
|
||||
"reply_count": "{count} Yanıt",
|
||||
"minimize_comments": "Yorumları Küçült",
|
||||
"minimize_comments_default": "Yorumları Öntanımlı Olarak Küçült"
|
||||
"minimize_comments_default": "Yorumları Öntanımlı Olarak Küçült",
|
||||
"show_watch_on_youtube": "YouTube'da İzle Düğmesini Göster",
|
||||
"minimize_chapters_default": "Bölümleri Öntanımlı Olarak Küçült",
|
||||
"no_valid_playlists": "Dosya geçerli oynatma listeleri içermiyor!"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "{0} üzerinde izle"
|
||||
"watch_on": "{0} Üzerinde İzle"
|
||||
},
|
||||
"titles": {
|
||||
"history": "Geçmiş",
|
||||
"preferences": "Tercihler",
|
||||
"feed": "Akış",
|
||||
"register": "Kaydol",
|
||||
"register": "Kayıt Ol",
|
||||
"login": "Oturum Aç",
|
||||
"trending": "Öne Çıkanlar",
|
||||
"subscriptions": "Abonelikler",
|
||||
"playlists": "Oynatma Listeleri",
|
||||
"account": "Hesap",
|
||||
"instance": "Örnek",
|
||||
"player": "Oynatıcı"
|
||||
"player": "Oynatıcı",
|
||||
"livestreams": "Canlı Yayınlar",
|
||||
"channels": "Kanallar"
|
||||
},
|
||||
"video": {
|
||||
"sponsor_segments": "Sponsorlar Bölümleri",
|
||||
"watched": "İzlendi",
|
||||
"views": "{views} izlenme",
|
||||
"videos": "Videolar",
|
||||
"views": "{views} İzlenme",
|
||||
"videos": "Video",
|
||||
"ratings_disabled": "Derecelendirmeler Devre Dışı",
|
||||
"chapters": "Bölümler",
|
||||
"live": "{0} Canlı",
|
||||
@ -133,17 +138,17 @@
|
||||
"instance_name": "Örnek Adı",
|
||||
"registered_users": "Kayıtlı Kullanıcılar",
|
||||
"version": "Sürüm",
|
||||
"up_to_date": "Güncel mi?"
|
||||
"up_to_date": "Güncel Mi?"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Şunun tarafından sabitlendi {author}",
|
||||
"pinned_by": "Şunun Tarafından Sabitlendi {author}",
|
||||
"loading": "Yorumlar yükleniyor...",
|
||||
"user_disabled": "Yorumlar ayarlarda devre dışı bırakıldı.",
|
||||
"disabled": "Yorumlar yükleyen tarafından devre dışı bırakıldı."
|
||||
},
|
||||
"login": {
|
||||
"password": "Parola",
|
||||
"username": "Kullanıcı adı"
|
||||
"username": "Kullanıcı Adı"
|
||||
},
|
||||
"search": {
|
||||
"did_you_mean": "Bunu mu demek istediniz: {0}?",
|
||||
@ -157,15 +162,16 @@
|
||||
"music_albums": "YT Müzik: Albümler"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "Abone olunan: {0}"
|
||||
"subscribed_channels_count": "Abone Olunan: {0}"
|
||||
},
|
||||
"information": {
|
||||
"preferences_note": "Not: Tercihler tarayıcınızın yerel depolama alanına kaydedilir. Tarayıcı verilerinizi silmek onları sıfırlayacaktır."
|
||||
},
|
||||
"info": {
|
||||
"preferences_note": "Not: Tercihler tarayıcınızın yerel depolama alanına kaydedilir. Tarayıcı verilerinizi silmek onları sıfırlayacaktır.",
|
||||
"page_not_found": "Sayfa bulunamadı",
|
||||
"page_not_found": "Sayfa Bulunamadı",
|
||||
"copied": "Kopyalandı!",
|
||||
"cannot_copy": "Kopyalanamıyor!"
|
||||
"cannot_copy": "Kopyalanamıyor!",
|
||||
"local_storage": "Bu eylem yerel depolama gerektirir, çerezler etkin mi?"
|
||||
}
|
||||
}
|
||||
|
@ -56,7 +56,7 @@
|
||||
"import_from_json": "Імпорт з JSON/CSV",
|
||||
"loop_this_video": "Повтор поточного відео",
|
||||
"auto_play_next_video": "Одразу програвати наступне рекомендоване відео",
|
||||
"donations": "Пожертвування",
|
||||
"donations": "Пожертвування на розробку",
|
||||
"show_description": "Показати опис",
|
||||
"disable_lbry": "Вимкнути LBRY для стримінгу",
|
||||
"filter": "Фільтр",
|
||||
@ -67,12 +67,48 @@
|
||||
"remove_from_playlist": "Видалити з плейлісту",
|
||||
"add_to_playlist": "Додати до плейлісту",
|
||||
"create_playlist": "Створити Плейліст",
|
||||
"delete_playlist_confirm": "Чи ви певні що хочете видалити цей плейліст?",
|
||||
"delete_playlist_confirm": "Видалити цей плейлист?",
|
||||
"skip_filler_tangent": "Пропускати Нерелевантне",
|
||||
"delete_playlist_video_confirm": "Чи певні ви що хочете видалити це відео з плейлісту?",
|
||||
"delete_playlist_video_confirm": "Видалити відео з плейлисту?",
|
||||
"delete_playlist": "Видалити Плейліст",
|
||||
"select_playlist": "Вибрати Плейліст",
|
||||
"please_select_playlist": "Будь ласка виберіть плейліст"
|
||||
"please_select_playlist": "Будь ласка виберіть плейліст",
|
||||
"confirm_reset_preferences": "Ви впевнені, що бажаєте скинути налаштування?",
|
||||
"show_markers": "Показувати Маркери на Програвачі",
|
||||
"minimize_recommendations_default": "Ховати Рекомендації за замовчуванням",
|
||||
"logout": "Вийти з цього пристрою",
|
||||
"backup_preferences": "Налаштування резервних копій",
|
||||
"download_as_txt": "Завантажити як .txt",
|
||||
"rename_playlist": "Перейменувати плейлист",
|
||||
"show_chapters": "Глави",
|
||||
"invalidate_session": "Вийти зі всіх пристроїв",
|
||||
"clone_playlist": "Клонувати Плейлист",
|
||||
"reset_preferences": "Скинути налаштування",
|
||||
"back_to_home": "Повернутися на головну",
|
||||
"share": "Поділитися",
|
||||
"with_timecode": "Поділитися з відміткою часу",
|
||||
"piped_link": "Покликання Piped",
|
||||
"follow_link": "Покликання підписки",
|
||||
"instance_donations": "Пожертвування інстанції",
|
||||
"copy_link": "Копіювати покликання",
|
||||
"store_search_history": "Зберігати історію Пошуку",
|
||||
"documentation": "Документація",
|
||||
"instance_auth_selection": "Вибір Інстанції для Аутентифікації",
|
||||
"minimize_chapters_default": "Ховати глави за замовчуванням",
|
||||
"show_watch_on_youtube": "Показати кнопку Дивитися на YouTube",
|
||||
"restore_preferences": "Відновити налаштування",
|
||||
"different_auth_instance": "Використовувати іншу інстанцію для аутентифікації",
|
||||
"clone_playlist_success": "Клонування пройшло успішно!",
|
||||
"hide_watched": "Сховати переглянуті відео в стрічці",
|
||||
"status_page": "Статус",
|
||||
"source_code": "Вихідний код",
|
||||
"new_playlist_name": "Нова назва плейлиста",
|
||||
"time_code": "Відмітка часу (в секундах)",
|
||||
"reply_count": "{count} відповідей",
|
||||
"minimize_comments_default": "Згортати коментарі за замовчуванням",
|
||||
"minimize_comments": "Згорнути коментарі",
|
||||
"delete_account": "Видалити Акаунт",
|
||||
"no_valid_playlists": "Файл не містить дійсних плейлистів!"
|
||||
},
|
||||
"titles": {
|
||||
"register": "Реєстрація",
|
||||
@ -82,10 +118,18 @@
|
||||
"subscriptions": "Канали, на які ви підписані",
|
||||
"trending": "Тренди",
|
||||
"login": "Логін",
|
||||
"playlists": "Плейлісти"
|
||||
"playlists": "Плейлісти",
|
||||
"instance": "Інстанція",
|
||||
"player": "Програвач",
|
||||
"account": "Акаунт",
|
||||
"livestreams": "Наживо",
|
||||
"channels": "Канали"
|
||||
},
|
||||
"comment": {
|
||||
"pinned_by": "Прикріплено користувачем {author}"
|
||||
"pinned_by": "Прикріплено користувачем {author}",
|
||||
"loading": "Завантаження коментарів...",
|
||||
"disabled": "Коментарі вимкнені автором.",
|
||||
"user_disabled": "Коментарі вимкнені в налаштуваннях."
|
||||
},
|
||||
"preferences": {
|
||||
"instance_locations": "Місцезнаходження копії сервісу",
|
||||
@ -93,7 +137,7 @@
|
||||
"instance_name": "Назва копії сервісу",
|
||||
"has_cdn": "Використовує CDN?",
|
||||
"version": "Версія",
|
||||
"up_to_date": "Версія Актуальна?",
|
||||
"up_to_date": "Версія актуальна?",
|
||||
"registered_users": "Зареєстровано Користувачей"
|
||||
},
|
||||
"video": {
|
||||
@ -103,7 +147,8 @@
|
||||
"sponsor_segments": "Рекламні сегменти",
|
||||
"ratings_disabled": "Оцінки вимкнені",
|
||||
"chapters": "Розділи",
|
||||
"live": "{0} Наживо"
|
||||
"live": "{0} Наживо",
|
||||
"shorts": "Shorts"
|
||||
},
|
||||
"search": {
|
||||
"did_you_mean": "Можливо, ви мали на увазі: {0}?",
|
||||
@ -115,5 +160,15 @@
|
||||
"music_videos": "TY Music: Відео",
|
||||
"playlists": "YouTube: Плейлісти",
|
||||
"music_albums": "YT Music: Альбоми"
|
||||
},
|
||||
"subscriptions": {
|
||||
"subscribed_channels_count": "Підписано на: {0}"
|
||||
},
|
||||
"info": {
|
||||
"copied": "Скопійовано!",
|
||||
"cannot_copy": "Не вийшло скопіювати!",
|
||||
"page_not_found": "Сторінка не знайдена",
|
||||
"preferences_note": "Зауваження: налаштування зберігаються в локальному сховищі вашого браузера. Видалення даних браузере їх скине.",
|
||||
"local_storage": "Ця дія потребує localStorage, чи ввімкнуті файли cookie?"
|
||||
}
|
||||
}
|
||||
|
@ -57,16 +57,30 @@
|
||||
"yes": "Có",
|
||||
"enabled_codecs": "Mã hóa được kích hoạt (Nhiều)",
|
||||
"export_to_json": "Xuất định dạng JSON",
|
||||
"no": "Không"
|
||||
"no": "Không",
|
||||
"remove_from_playlist": "Xóa khỏi danh sách phát",
|
||||
"add_to_playlist": "Thêm vào danh sách phát",
|
||||
"delete_playlist_video_confirm": "Bạn có chắc là muốn xóa video khỏi danh sách phát này không?",
|
||||
"delete_playlist_confirm": "Bạn có chắc là bạn muốn xóa danh sách phát này không?",
|
||||
"create_playlist": "Tạo danh sách phát",
|
||||
"delete_playlist": "Xóa danh sách phát",
|
||||
"select_playlist": "Chọn một danh sách phát",
|
||||
"please_select_playlist": "Hãy chọn một danh sách phát",
|
||||
"copy_link": "Sao chép liên kết",
|
||||
"source_code": "Mã nguồn",
|
||||
"piped_link": "Liên kết Piped"
|
||||
},
|
||||
"titles": {
|
||||
"register": "Đăng ký",
|
||||
"preferences": "Sở thích",
|
||||
"preferences": "Cài đặt",
|
||||
"history": "Lịch sử",
|
||||
"subscriptions": "Đăng ký",
|
||||
"trending": "Xu hướng",
|
||||
"login": "Đăng nhập",
|
||||
"feed": "Mới nhất"
|
||||
"feed": "Mới nhất",
|
||||
"playlists": "Danh sách phát",
|
||||
"account": "Tài khoản",
|
||||
"channels": "Kênh"
|
||||
},
|
||||
"player": {
|
||||
"watch_on": "Xem trên {0}"
|
||||
@ -106,5 +120,8 @@
|
||||
"videos": "YouTube: Video",
|
||||
"music_videos": "YT Music: Video",
|
||||
"music_albums": "YT Music: Album"
|
||||
},
|
||||
"info": {
|
||||
"copied": "Đã sao chép!"
|
||||
}
|
||||
}
|
||||
|
@ -98,7 +98,10 @@
|
||||
"documentation": "文档",
|
||||
"reply_count": "{count} 条回复",
|
||||
"minimize_comments": "最小化评论",
|
||||
"minimize_comments_default": "默认最小化评论"
|
||||
"minimize_comments_default": "默认最小化评论",
|
||||
"show_watch_on_youtube": "显示“在 YouTube 上观看”按钮",
|
||||
"minimize_chapters_default": "默认最小化章节",
|
||||
"no_valid_playlists": "此文件不含无效的播放列表!"
|
||||
},
|
||||
"video": {
|
||||
"sponsor_segments": "赞助商部分",
|
||||
@ -139,7 +142,9 @@
|
||||
"playlists": "播放列表",
|
||||
"account": "账户",
|
||||
"instance": "实例",
|
||||
"player": "播放器"
|
||||
"player": "播放器",
|
||||
"livestreams": "直播",
|
||||
"channels": "频道"
|
||||
},
|
||||
"login": {
|
||||
"password": "密码",
|
||||
@ -166,6 +171,7 @@
|
||||
"preferences_note": "注意:首选项保存在浏览器的本地存储中。删除浏览器数据会重置它们。",
|
||||
"page_not_found": "未找到页面",
|
||||
"copied": "已复制!",
|
||||
"cannot_copy": "无法复制!"
|
||||
"cannot_copy": "无法复制!",
|
||||
"local_storage": "此操作需要 localStorage,启用 cookie 了吗?"
|
||||
}
|
||||
}
|
||||
|
39
src/main.js
39
src/main.js
@ -21,7 +21,7 @@ import {
|
||||
faServer,
|
||||
faDonate,
|
||||
} from "@fortawesome/free-solid-svg-icons";
|
||||
import { faGithub, faBitcoin } from "@fortawesome/free-brands-svg-icons";
|
||||
import { faGithub, faBitcoin, faYoutube } from "@fortawesome/free-brands-svg-icons";
|
||||
import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome";
|
||||
library.add(
|
||||
faEye,
|
||||
@ -31,6 +31,7 @@ library.add(
|
||||
faCheck,
|
||||
faHeart,
|
||||
faHeadphones,
|
||||
faYoutube,
|
||||
faRss,
|
||||
faChevronLeft,
|
||||
faLevelDownAlt,
|
||||
@ -95,7 +96,17 @@ const mixin = {
|
||||
return str;
|
||||
},
|
||||
numberFormat(num) {
|
||||
const formatter = Intl.NumberFormat(undefined, { notation: "compact" });
|
||||
var loc = `${this.getPreferenceString("hl")}-${this.getPreferenceString("region")}`;
|
||||
|
||||
try {
|
||||
Intl.getCanonicalLocales(loc);
|
||||
} catch {
|
||||
loc = undefined;
|
||||
}
|
||||
|
||||
const formatter = Intl.NumberFormat(loc, {
|
||||
notation: "compact",
|
||||
});
|
||||
return formatter.format(num);
|
||||
},
|
||||
addCommas(num) {
|
||||
@ -114,8 +125,12 @@ const mixin = {
|
||||
purifyHTML(original) {
|
||||
return DOMPurify.sanitize(original);
|
||||
},
|
||||
setPreference(key, value) {
|
||||
if (localStorage) localStorage.setItem(key, value);
|
||||
setPreference(key, value, disableAlert = false) {
|
||||
try {
|
||||
localStorage.setItem(key, value);
|
||||
} catch {
|
||||
if (!disableAlert) alert(this.$t("info.local_storage"));
|
||||
}
|
||||
},
|
||||
getPreferenceBoolean(key, defaultVal) {
|
||||
var value;
|
||||
@ -200,7 +215,11 @@ const mixin = {
|
||||
}
|
||||
},
|
||||
getLocalSubscriptions() {
|
||||
return JSON.parse(localStorage.getItem("localSubscriptions"));
|
||||
try {
|
||||
return JSON.parse(localStorage.getItem("localSubscriptions"));
|
||||
} catch {
|
||||
return [];
|
||||
}
|
||||
},
|
||||
isSubscribedLocally(channelId) {
|
||||
const localSubscriptions = this.getLocalSubscriptions();
|
||||
@ -214,7 +233,13 @@ const mixin = {
|
||||
else localSubscriptions.push(channelId);
|
||||
// Sort for better cache hits
|
||||
localSubscriptions.sort();
|
||||
localStorage.setItem("localSubscriptions", JSON.stringify(localSubscriptions));
|
||||
try {
|
||||
localStorage.setItem("localSubscriptions", JSON.stringify(localSubscriptions));
|
||||
return true;
|
||||
} catch {
|
||||
alert(this.$t("info.local_storage"));
|
||||
}
|
||||
return false;
|
||||
},
|
||||
getUnauthenticatedChannels() {
|
||||
const localSubscriptions = this.getLocalSubscriptions() ?? [];
|
||||
@ -244,7 +269,7 @@ const mixin = {
|
||||
return false;
|
||||
}
|
||||
},
|
||||
async defaultLangage() {
|
||||
async defaultLanguage() {
|
||||
const languages = window.navigator.languages;
|
||||
for (let i = 0; i < languages.length; i++) {
|
||||
try {
|
||||
|
@ -58,6 +58,7 @@
|
||||
{ "code": "GY", "name": "Guyana" },
|
||||
{ "code": "HT", "name": "Haiti" },
|
||||
{ "code": "HN", "name": "Honduras" },
|
||||
{ "code": "HK", "name": "Hongkong" },
|
||||
{ "code": "IN", "name": "Indien" },
|
||||
{ "code": "ID", "name": "Indonesien" },
|
||||
{ "code": "IQ", "name": "Irak" },
|
||||
@ -168,6 +169,7 @@
|
||||
{ "code": "SR", "name": "Suriname" },
|
||||
{ "code": "SY", "name": "Syrien" },
|
||||
{ "code": "TJ", "name": "Tadschikistan" },
|
||||
{ "code": "TW", "name": "Taiwan" },
|
||||
{ "code": "TZ", "name": "Tansania" },
|
||||
{ "code": "TH", "name": "Thailand" },
|
||||
{ "code": "TG", "name": "Togo" },
|
||||
|
@ -176,6 +176,7 @@
|
||||
{ "code": "TH", "name": "Ταϊλάνδη" },
|
||||
{ "code": "TZ", "name": "Τανζανία" },
|
||||
{ "code": "TJ", "name": "Τατζικιστάν" },
|
||||
{ "code": "TW", "name": "Ταϊβάν" },
|
||||
{ "code": "JM", "name": "Τζαμάικα" },
|
||||
{ "code": "DJ", "name": "Τζιμπουτί" },
|
||||
{ "code": "TO", "name": "Τόγκα" },
|
||||
@ -191,5 +192,6 @@
|
||||
{ "code": "PH", "name": "Φιλιππίνες" },
|
||||
{ "code": "FI", "name": "Φινλανδία" },
|
||||
{ "code": "FJ", "name": "Φίτζι" },
|
||||
{ "code": "CL", "name": "Χιλή" }
|
||||
{ "code": "CL", "name": "Χιλή" },
|
||||
{ "code": "HK", "name": "Χονγκ Κονγκ" }
|
||||
]
|
||||
|
@ -73,6 +73,7 @@
|
||||
{ "code": "GY", "name": "Guyana" },
|
||||
{ "code": "HT", "name": "Haiti" },
|
||||
{ "code": "HN", "name": "Honduras" },
|
||||
{ "code": "HK", "name": "Hong Kong" },
|
||||
{ "code": "HU", "name": "Hungary" },
|
||||
{ "code": "IS", "name": "Iceland" },
|
||||
{ "code": "IN", "name": "India" },
|
||||
@ -168,6 +169,7 @@
|
||||
{ "code": "SE", "name": "Sweden" },
|
||||
{ "code": "CH", "name": "Switzerland" },
|
||||
{ "code": "SY", "name": "Syrian Arab Republic" },
|
||||
{ "code": "TW", "name": "Taiwan" },
|
||||
{ "code": "TJ", "name": "Tajikistan" },
|
||||
{ "code": "TZ", "name": "Tanzania, United Republic of" },
|
||||
{ "code": "TH", "name": "Thailand" },
|
||||
|
@ -76,6 +76,7 @@
|
||||
{ "code": "GY", "name": "Guyana" },
|
||||
{ "code": "HT", "name": "Haití" },
|
||||
{ "code": "HN", "name": "Honduras" },
|
||||
{ "code": "HK", "name": "Hong Kong" },
|
||||
{ "code": "HU", "name": "Hungría" },
|
||||
{ "code": "IN", "name": "India" },
|
||||
{ "code": "ID", "name": "Indonesia" },
|
||||
@ -171,6 +172,7 @@
|
||||
{ "code": "CH", "name": "Suiza" },
|
||||
{ "code": "SR", "name": "Surinam" },
|
||||
{ "code": "TH", "name": "Tailandia" },
|
||||
{ "code": "TW", "name": "Taiwán" },
|
||||
{ "code": "TZ", "name": "Tanzania" },
|
||||
{ "code": "TJ", "name": "Tayikistán" },
|
||||
{ "code": "TL", "name": "Timor Oriental" },
|
||||
|
@ -77,6 +77,7 @@
|
||||
{ "code": "GY", "name": "Guyana" },
|
||||
{ "code": "HT", "name": "Haïti" },
|
||||
{ "code": "HN", "name": "Honduras" },
|
||||
{ "code": "HK", "name": "Hong Kong" },
|
||||
{ "code": "HU", "name": "Hongrie" },
|
||||
{ "code": "IN", "name": "Inde" },
|
||||
{ "code": "ID", "name": "Indonésie" },
|
||||
@ -173,6 +174,7 @@
|
||||
{ "code": "SY", "name": "Syrie" },
|
||||
{ "code": "TJ", "name": "Tadjikistan" },
|
||||
{ "code": "TZ", "name": "Tanzanie" },
|
||||
{ "code": "TW", "name": "Taïwan" },
|
||||
{ "code": "TD", "name": "Tchad" },
|
||||
{ "code": "CZ", "name": "Tchéquie" },
|
||||
{ "code": "TH", "name": "Thaïlande" },
|
||||
|
@ -76,6 +76,7 @@
|
||||
{ "code": "GY", "name": "Guyana" },
|
||||
{ "code": "HT", "name": "Haiti" },
|
||||
{ "code": "HN", "name": "Honduras" },
|
||||
{ "code": "HK", "name": "Hong Kong" },
|
||||
{ "code": "IN", "name": "India" },
|
||||
{ "code": "ID", "name": "Indonesia" },
|
||||
{ "code": "IR", "name": "Iran" },
|
||||
@ -171,6 +172,7 @@
|
||||
{ "code": "CH", "name": "Svizzera" },
|
||||
{ "code": "SZ", "name": "eSwatini" },
|
||||
{ "code": "TJ", "name": "Tagikistan" },
|
||||
{ "code": "TW", "name": "Taiwan" },
|
||||
{ "code": "TZ", "name": "Tanzania" },
|
||||
{ "code": "TH", "name": "Thailandia" },
|
||||
{ "code": "TL", "name": "Timor Est" },
|
||||
|
@ -54,6 +54,7 @@
|
||||
{ "code": "GY", "name": "Gajana" },
|
||||
{ "code": "HT", "name": "Haitis" },
|
||||
{ "code": "HN", "name": "Hondūras" },
|
||||
{ "code": "HK", "name": "Honkongas" },
|
||||
{ "code": "HU", "name": "Vengrija" },
|
||||
{ "code": "IS", "name": "Islandija" },
|
||||
{ "code": "IN", "name": "Indija" },
|
||||
@ -169,6 +170,7 @@
|
||||
{ "code": "TJ", "name": "Tadžikija" },
|
||||
{ "code": "TZ", "name": "Tanzanija" },
|
||||
{ "code": "TH", "name": "Tailandas" },
|
||||
{ "code": "TW", "name": "Taivanas" },
|
||||
{ "code": "TL", "name": "Rytų Timoras" },
|
||||
{ "code": "TG", "name": "Togas" },
|
||||
{ "code": "TO", "name": "Tonga" },
|
||||
|
@ -65,6 +65,7 @@
|
||||
{ "code": "ES", "name": "Hiszpania" },
|
||||
{ "code": "NL", "name": "Holandia" },
|
||||
{ "code": "HN", "name": "Honduras" },
|
||||
{ "code": "HK", "name": "Hongkong" },
|
||||
{ "code": "IN", "name": "Indie" },
|
||||
{ "code": "ID", "name": "Indonezja" },
|
||||
{ "code": "IQ", "name": "Irak" },
|
||||
@ -166,6 +167,7 @@
|
||||
{ "code": "SE", "name": "Szwecja" },
|
||||
{ "code": "TJ", "name": "Tadżykistan" },
|
||||
{ "code": "TH", "name": "Tajlandia" },
|
||||
{ "code": "TW", "name": "Tajwan" },
|
||||
{ "code": "TZ", "name": "Tanzania" },
|
||||
{ "code": "TL", "name": "Timor Wschodni" },
|
||||
{ "code": "TG", "name": "Togo" },
|
||||
|
@ -58,6 +58,7 @@
|
||||
{ "code": "HT", "name": "Haiti" },
|
||||
{ "code": "NL", "name": "Holandsko" },
|
||||
{ "code": "HN", "name": "Honduras" },
|
||||
{ "code": "HK", "name": "Hongkong" },
|
||||
{ "code": "HR", "name": "Chorvátsko" },
|
||||
{ "code": "IN", "name": "India" },
|
||||
{ "code": "ID", "name": "Indonézia" },
|
||||
@ -172,6 +173,7 @@
|
||||
{ "code": "CH", "name": "Švajčiarsko" },
|
||||
{ "code": "SE", "name": "Švédsko" },
|
||||
{ "code": "TJ", "name": "Tadžikistan" },
|
||||
{ "code": "TW", "name": "Taiwan" },
|
||||
{ "code": "IT", "name": "Taliansko" },
|
||||
{ "code": "TZ", "name": "Tanzánia" },
|
||||
{ "code": "TH", "name": "Thajsko" },
|
||||
|
@ -73,6 +73,7 @@
|
||||
{ "code": "GY", "name": "Гајана" },
|
||||
{ "code": "HT", "name": "Хаити" },
|
||||
{ "code": "HN", "name": "Хондурас" },
|
||||
{ "code": "HK", "name": "Хонгконг" },
|
||||
{ "code": "HU", "name": "Мађарска" },
|
||||
{ "code": "IS", "name": "Исланд" },
|
||||
{ "code": "IN", "name": "Индија" },
|
||||
@ -170,6 +171,7 @@
|
||||
{ "code": "SY", "name": "Сиријска Арапска Република" },
|
||||
{ "code": "TJ", "name": "Таџикистан" },
|
||||
{ "code": "TZ", "name": "Танзанија" },
|
||||
{ "code": "TW", "name": "Тајван" },
|
||||
{ "code": "TH", "name": "Тајланд" },
|
||||
{ "code": "TL", "name": "Тимор-Лесте" },
|
||||
{ "code": "TG", "name": "Того" },
|
||||
|
@ -73,6 +73,7 @@
|
||||
{ "code": "GY", "name": "蓋亞那" },
|
||||
{ "code": "HT", "name": "海地" },
|
||||
{ "code": "HN", "name": "宏都拉斯" },
|
||||
{ "code": "HK", "name": "香港" },
|
||||
{ "code": "HU", "name": "匈牙利" },
|
||||
{ "code": "IS", "name": "冰島" },
|
||||
{ "code": "IN", "name": "印度" },
|
||||
@ -179,6 +180,7 @@
|
||||
{ "code": "TR", "name": "土耳其" },
|
||||
{ "code": "TM", "name": "土庫曼" },
|
||||
{ "code": "TV", "name": "吐瓦魯" },
|
||||
{ "code": "TW", "name": "台灣" },
|
||||
{ "code": "UG", "name": "烏干達" },
|
||||
{ "code": "UA", "name": "烏克蘭" },
|
||||
{ "code": "AE", "name": "阿聯" },
|
||||
|
@ -42,55 +42,69 @@ const DashUtils = {
|
||||
},
|
||||
generate_adaptation_set(VideoFormatArray) {
|
||||
const adaptationSets = [];
|
||||
const mimeTypes = [];
|
||||
const mimeObjects = [[]];
|
||||
// sort the formats by mime types
|
||||
|
||||
let mimeAudioObjs = [];
|
||||
|
||||
VideoFormatArray.forEach(videoFormat => {
|
||||
// the dual formats should not be used
|
||||
if (videoFormat.mimeType.indexOf("video") != -1 && !videoFormat.videoOnly) {
|
||||
return;
|
||||
}
|
||||
// if these properties are not available, then we skip it because we cannot set these properties
|
||||
//if (!(videoFormat.hasOwnProperty('initRange') && videoFormat.hasOwnProperty('indexRange'))) {
|
||||
// return
|
||||
//}
|
||||
|
||||
const audioTrackId = videoFormat.audioTrackId;
|
||||
const mimeType = videoFormat.mimeType;
|
||||
const mimeTypeIndex = mimeTypes.indexOf(mimeType);
|
||||
if (mimeTypeIndex > -1) {
|
||||
mimeObjects[mimeTypeIndex].push(videoFormat);
|
||||
} else {
|
||||
mimeTypes.push(mimeType);
|
||||
mimeObjects.push([]);
|
||||
mimeObjects[mimeTypes.length - 1].push(videoFormat);
|
||||
|
||||
for (let i = 0; i < mimeAudioObjs.length; i++) {
|
||||
const mimeAudioObj = mimeAudioObjs[i];
|
||||
|
||||
if (mimeAudioObj.audioTrackId == audioTrackId && mimeAudioObj.mimeType == mimeType) {
|
||||
mimeAudioObj.videoFormats.push(videoFormat);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
mimeAudioObjs.push({
|
||||
audioTrackId,
|
||||
mimeType,
|
||||
videoFormats: [videoFormat],
|
||||
});
|
||||
});
|
||||
// for each MimeType generate a new Adaptation set with Representations as sub elements
|
||||
for (let i = 0; i < mimeTypes.length; i++) {
|
||||
let isVideoFormat = false;
|
||||
|
||||
mimeAudioObjs.forEach(mimeAudioObj => {
|
||||
const adapSet = {
|
||||
type: "element",
|
||||
name: "AdaptationSet",
|
||||
attributes: {
|
||||
id: i,
|
||||
mimeType: mimeTypes[i],
|
||||
id: mimeAudioObj.audioTrackId,
|
||||
lang: mimeAudioObj.audioTrackId?.substr(0, 2),
|
||||
mimeType: mimeAudioObj.mimeType,
|
||||
startWithSAP: "1",
|
||||
subsegmentAlignment: "true",
|
||||
},
|
||||
elements: [],
|
||||
};
|
||||
if (!mimeTypes[i].includes("audio")) {
|
||||
adapSet.attributes.scanType = "progressive";
|
||||
|
||||
let isVideoFormat = false;
|
||||
|
||||
if (mimeAudioObj.mimeType.includes("video")) {
|
||||
isVideoFormat = true;
|
||||
}
|
||||
mimeObjects[i].forEach(format => {
|
||||
|
||||
if (isVideoFormat) {
|
||||
adapSet.attributes.scanType = "progressive";
|
||||
}
|
||||
|
||||
for (var i = 0; i < mimeAudioObj.videoFormats.length; i++) {
|
||||
const videoFormat = mimeAudioObj.videoFormats[i];
|
||||
if (isVideoFormat) {
|
||||
adapSet.elements.push(this.generate_representation_video(format));
|
||||
adapSet.elements.push(this.generate_representation_video(videoFormat));
|
||||
} else {
|
||||
adapSet.elements.push(this.generate_representation_audio(format));
|
||||
adapSet.elements.push(this.generate_representation_audio(videoFormat));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
adaptationSets.push(adapSet);
|
||||
}
|
||||
});
|
||||
return adaptationSets;
|
||||
},
|
||||
generate_representation_audio(Format) {
|
||||
|
12
vercel.json
Normal file
12
vercel.json
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
"github": {
|
||||
"silent": true
|
||||
},
|
||||
"routes": [
|
||||
{
|
||||
"src": "/[^.]+",
|
||||
"dest": "/",
|
||||
"status": 200
|
||||
}
|
||||
]
|
||||
}
|
658
yarn.lock
658
yarn.lock
@ -892,10 +892,10 @@
|
||||
dependencies:
|
||||
regenerator-runtime "^0.13.4"
|
||||
|
||||
"@babel/standalone@^7.19.6":
|
||||
version "7.19.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/standalone/-/standalone-7.19.6.tgz#88674a287d3875a635b62afb066ebf162cedf13c"
|
||||
integrity sha512-SUOBMtHlxGpXf14X85c1vtHyxYgIODBUdclntETSEGkgI274MNPBUkOVWpvFmRhMuLokK3CL07qJoK2e5CIToA==
|
||||
"@babel/standalone@^7.20.6":
|
||||
version "7.20.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/standalone/-/standalone-7.20.6.tgz#7deb7ad244176414c3cbde020aad0607afdbe2fe"
|
||||
integrity sha512-u5at/CbBLETf7kx2LOY4XdhseD79Y099WZKAOMXeT8qvd9OSR515my2UNBBLY4qIht/Qi9KySeQHQwQwxJN4Sw==
|
||||
|
||||
"@babel/template@^7.16.7":
|
||||
version "7.16.7"
|
||||
@ -955,36 +955,36 @@
|
||||
minimatch "^3.1.2"
|
||||
strip-json-comments "^3.1.1"
|
||||
|
||||
"@fortawesome/fontawesome-common-types@6.2.0":
|
||||
version "6.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.2.0.tgz#76467a94aa888aeb22aafa43eb6ff889df3a5a7f"
|
||||
integrity sha512-rBevIsj2nclStJ7AxTdfsa3ovHb1H+qApwrxcTVo+NNdeJiB9V75hsKfrkG5AwNcRUNxrPPiScGYCNmLMoh8pg==
|
||||
"@fortawesome/fontawesome-common-types@6.2.1":
|
||||
version "6.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.2.1.tgz#411e02a820744d3f7e0d8d9df9d82b471beaa073"
|
||||
integrity sha512-Sz07mnQrTekFWLz5BMjOzHl/+NooTdW8F8kDQxjWwbpOJcnoSg4vUDng8d/WR1wOxM0O+CY9Zw0nR054riNYtQ==
|
||||
|
||||
"@fortawesome/fontawesome-svg-core@6.2.0":
|
||||
version "6.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.2.0.tgz#11856eaf4dd1d865c442ddea1eed8ee855186ba2"
|
||||
integrity sha512-Cf2mAAeMWFMzpLC7Y9H1I4o3wEU+XovVJhTiNG8ZNgSQj53yl7OCJaS80K4YjrABWZzbAHVaoHE1dVJ27AAYXw==
|
||||
"@fortawesome/fontawesome-svg-core@6.2.1":
|
||||
version "6.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.2.1.tgz#e87e905e444b5e7b715af09b64d27b53d4c8f9d9"
|
||||
integrity sha512-HELwwbCz6C1XEcjzyT1Jugmz2NNklMrSPjZOWMlc+ZsHIVk+XOvOXLGGQtFBwSyqfJDNgRq4xBCwWOaZ/d9DEA==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-common-types" "6.2.0"
|
||||
"@fortawesome/fontawesome-common-types" "6.2.1"
|
||||
|
||||
"@fortawesome/free-brands-svg-icons@6.2.0":
|
||||
version "6.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-6.2.0.tgz#ce072179677f9b5d6767f918cfbf296f357cc1d0"
|
||||
integrity sha512-fm1y4NyZ2qKYNmYhdMz9VAWRw1Et7PMHNunSw3W0SVAwKwv6o0qiJworLH3Y9SnmhHzAymXJwCX1op22FFvGiA==
|
||||
"@fortawesome/free-brands-svg-icons@6.2.1":
|
||||
version "6.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-6.2.1.tgz#04a6d6f7898f7ef392aba7a65030a584d4f4c84f"
|
||||
integrity sha512-L8l4MfdHPmZlJ72PvzdfwOwbwcCAL0vx48tJRnI6u1PJXh+j2f3yDoKyQgO3qjEsgD5Fr2tQV/cPP8F/k6aUig==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-common-types" "6.2.0"
|
||||
"@fortawesome/fontawesome-common-types" "6.2.1"
|
||||
|
||||
"@fortawesome/free-solid-svg-icons@6.2.0":
|
||||
version "6.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.2.0.tgz#8dcde48109354fd7a5ece8ea48d678bb91d4b5f0"
|
||||
integrity sha512-UjCILHIQ4I8cN46EiQn0CZL/h8AwCGgR//1c4R96Q5viSRwuKVo0NdQEc4bm+69ZwC0dUvjbDqAHF1RR5FA3XA==
|
||||
"@fortawesome/free-solid-svg-icons@6.2.1":
|
||||
version "6.2.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.2.1.tgz#2290ea5adcf1537cbd0c43de6feb38af02141d27"
|
||||
integrity sha512-oKuqrP5jbfEPJWTij4sM+/RvgX+RMFwx3QZCZcK9PrBDgxC35zuc7AOFsyMjMd/PIFPeB2JxyqDr5zs/DZFPPw==
|
||||
dependencies:
|
||||
"@fortawesome/fontawesome-common-types" "6.2.0"
|
||||
"@fortawesome/fontawesome-common-types" "6.2.1"
|
||||
|
||||
"@fortawesome/vue-fontawesome@3.0.1":
|
||||
version "3.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.1.tgz#ced35cefc52b364f7db973f2fe9f50c3dd160715"
|
||||
integrity sha512-CdXZJoCS+aEPec26ZP7hWWU3SaJlQPZSCGdgpQ2qGl2HUmtUUNrI3zC4XWdn1JUmh3t5OuDeRG1qB4eGRNSD4A==
|
||||
"@fortawesome/vue-fontawesome@3.0.2":
|
||||
version "3.0.2"
|
||||
resolved "https://registry.yarnpkg.com/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.2.tgz#1b2ec546caab790c38d3dcb38407485a70703dd2"
|
||||
integrity sha512-xHVtVY8ASUeEvgcA/7vULUesENhD+pi/EirRHdMBqooHlXBqK+yrV6d8tUye1m5UKQKVgYAHMhUBfOnoiwvc8Q==
|
||||
|
||||
"@humanwhocodes/config-array@^0.11.6":
|
||||
version "0.11.6"
|
||||
@ -1005,10 +1005,10 @@
|
||||
resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
|
||||
integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
|
||||
|
||||
"@iconify/json@2.1.132":
|
||||
version "2.1.132"
|
||||
resolved "https://registry.yarnpkg.com/@iconify/json/-/json-2.1.132.tgz#a78f23fb871164580a48cb99930babe6b90977d7"
|
||||
integrity sha512-b2ddD44ufErLm18Aku0WNxKzFz1Rvtcb4rOoBtzOyQcttZUawQvE8e/wBHMLhaMRlEn0p4YlVOl6jjj0xmDYJg==
|
||||
"@iconify/json@2.1.153":
|
||||
version "2.1.153"
|
||||
resolved "https://registry.yarnpkg.com/@iconify/json/-/json-2.1.153.tgz#aaf4024766a607f579b2aaed99a4caf92595a997"
|
||||
integrity sha512-9DSzK1DIbrbjDK+LV8PTF/pTM8wJOrmRETEvVP47na093F6LEvcOQnq7Ett51e/WW0mA32GIj7LpO9opyJ/gtQ==
|
||||
dependencies:
|
||||
"@iconify/types" "*"
|
||||
pathe "^0.3.0"
|
||||
@ -1018,10 +1018,10 @@
|
||||
resolved "https://registry.yarnpkg.com/@iconify/types/-/types-2.0.0.tgz#ab0e9ea681d6c8a1214f30cd741fe3a20cc57f57"
|
||||
integrity sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==
|
||||
|
||||
"@iconify/utils@^2.0.1":
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@iconify/utils/-/utils-2.0.1.tgz#bbd29368e0a269f29abc920e375ba84e23ec3a36"
|
||||
integrity sha512-t8IyICk25wgZL4YKn/2kYfjG5MGA6EWZlaUJZ1OEIku4V+kX9V900T5E4HIqS3hLyD6/RJET0zY4vxO9pHLHHw==
|
||||
"@iconify/utils@^2.0.2":
|
||||
version "2.0.2"
|
||||
resolved "https://registry.yarnpkg.com/@iconify/utils/-/utils-2.0.2.tgz#d3986021d691c66a5fe8d29ae5113e0a0e221d71"
|
||||
integrity sha512-13B3wJxDLmSNBEIEpKleKSkJVQgdAy9ra3Xsu233i/5qD5yXBGhpOFxTB/k8cqme0xVsMKBPV5vbvq9MgQlX+w==
|
||||
dependencies:
|
||||
"@antfu/install-pkg" "^0.1.0"
|
||||
"@antfu/utils" "^0.5.2"
|
||||
@ -1139,7 +1139,7 @@
|
||||
"@jridgewell/gen-mapping" "^0.3.0"
|
||||
"@jridgewell/trace-mapping" "^0.3.9"
|
||||
|
||||
"@jridgewell/sourcemap-codec@^1.4.10":
|
||||
"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.13":
|
||||
version "1.4.14"
|
||||
resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz#add4c98d341472a289190b424efbdb096991bb24"
|
||||
integrity sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==
|
||||
@ -1214,6 +1214,14 @@
|
||||
"@rollup/pluginutils" "^3.1.0"
|
||||
magic-string "^0.25.7"
|
||||
|
||||
"@rollup/plugin-replace@^5.0.1":
|
||||
version "5.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/plugin-replace/-/plugin-replace-5.0.1.tgz#49a57af3e6df111a9e75dea3f3572741f4c5c83e"
|
||||
integrity sha512-Z3MfsJ4CK17BfGrZgvrcp/l6WXoKb0kokULO+zt/7bmcyayokDaQ2K3eDJcRLCTAlp5FPI4/gz9MHAsosz4Rag==
|
||||
dependencies:
|
||||
"@rollup/pluginutils" "^5.0.1"
|
||||
magic-string "^0.26.4"
|
||||
|
||||
"@rollup/pluginutils@^3.1.0":
|
||||
version "3.1.0"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b"
|
||||
@ -1231,10 +1239,10 @@
|
||||
estree-walker "^2.0.1"
|
||||
picomatch "^2.2.2"
|
||||
|
||||
"@rollup/pluginutils@^5.0.1":
|
||||
version "5.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.0.1.tgz#63def51f5a76dadd984689d33c7f000164152a97"
|
||||
integrity sha512-4HaCVEXXuObvcPUaUlLt4faHYHCeQOOWNj8NKFGaRSrw3ZLD0TWeAFZicV9vXjnE2nkNuaVTfTuwAnjR+6uc9A==
|
||||
"@rollup/pluginutils@^5.0.1", "@rollup/pluginutils@^5.0.2":
|
||||
version "5.0.2"
|
||||
resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.0.2.tgz#012b8f53c71e4f6f9cb317e311df1404f56e7a33"
|
||||
integrity sha512-pTd9rIsP92h+B6wWwFbW8RkZv4hiR/xKsqre4SIuAOaOEQRxi0lqLke9k2/7WegC85GgUs9pjmOjCUi3In4vwA==
|
||||
dependencies:
|
||||
"@types/estree" "^1.0.0"
|
||||
estree-walker "^2.0.2"
|
||||
@ -1295,227 +1303,227 @@
|
||||
resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.2.tgz#fc25ad9943bcac11cceb8168db4f275e0e72e756"
|
||||
integrity sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==
|
||||
|
||||
"@unocss/astro@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/astro/-/astro-0.46.3.tgz#94626e4afb53e581da9414df78afa33e67f45316"
|
||||
integrity sha512-3Of0VLh5TVWc5MXzAF+Ik/9XBDkaaUcbxKquAI6hMSehtcnGOpmmNLZNjOaBdLuFDFP4RJGZ9Kkp/MuSLPuHDQ==
|
||||
"@unocss/astro@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/astro/-/astro-0.47.6.tgz#fa6a905e156c2f4adcf0c31d8392589ae0e366b9"
|
||||
integrity sha512-8lR4KwuCeVxOTKk6g6hx6VUHhW1u+hki8oRsJaKEB0s5iUPmY6rCNtb/iaBJdceY11bZMMy5LZHJFTkod/T/zg==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/reset" "0.46.3"
|
||||
"@unocss/vite" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
"@unocss/reset" "0.47.6"
|
||||
"@unocss/vite" "0.47.6"
|
||||
|
||||
"@unocss/cli@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/cli/-/cli-0.46.3.tgz#69f29f4c2a666e77d16cba1d447a19fa42883673"
|
||||
integrity sha512-sZju0nWDRMX4mNA5fryFj3EyC1vUruEsin6rpqKoW7khRCADV1edqsr7azIQRsDDfOAUld22BrJr1cBssKWn3Q==
|
||||
"@unocss/cli@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/cli/-/cli-0.47.6.tgz#d53b0d0a299e79fb999fcf64b272c8afc9dec391"
|
||||
integrity sha512-Lwuzl6xK+67LUb4pCKlyrMv9cDuTvywhlSBiYzDj1Su+21IQVRxUagpo10b1WlLXWWQz4J3bOJZYE/e/QV2/HQ==
|
||||
dependencies:
|
||||
"@ampproject/remapping" "^2.2.0"
|
||||
"@rollup/pluginutils" "^5.0.1"
|
||||
"@unocss/config" "0.46.3"
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/preset-uno" "0.46.3"
|
||||
"@rollup/pluginutils" "^5.0.2"
|
||||
"@unocss/config" "0.47.6"
|
||||
"@unocss/core" "0.47.6"
|
||||
"@unocss/preset-uno" "0.47.6"
|
||||
cac "^6.7.14"
|
||||
chokidar "^3.5.3"
|
||||
colorette "^2.0.19"
|
||||
consola "^2.15.3"
|
||||
fast-glob "^3.2.12"
|
||||
magic-string "^0.26.7"
|
||||
pathe "^0.3.9"
|
||||
pathe "^1.0.0"
|
||||
perfect-debounce "^0.1.3"
|
||||
|
||||
"@unocss/config@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/config/-/config-0.46.3.tgz#64f5b528b0ca1af530a0ac33660f68e68786dbd7"
|
||||
integrity sha512-eecCWGeKMGVa2by0Q8xDugQLWwpA1BYP3ZORx/LYJHUDhh3aGHgf5GA6EHc97ITg3p5dK3RZSZMZnxjy5aunpg==
|
||||
"@unocss/config@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/config/-/config-0.47.6.tgz#eb6848fc16db2f4139729d8ad93303c46f273aec"
|
||||
integrity sha512-KycIrpKqPrTnrbNRLUgePuzfZUKk6afsKII6B53q9rVxxC1og4g7wCsvrn2D89lPipsJ6B9041VsdIhNqa8bFg==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
unconfig "^0.3.7"
|
||||
|
||||
"@unocss/core@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/core/-/core-0.46.3.tgz#4ddae823bbd9f7f1bc8b7f62c92b7fb157254263"
|
||||
integrity sha512-Wcyuw9KlFgxKz/QDJ+bNnQyI0h+LAWOpZWTkRQiDh1OxzLzYrBR3ljhtZe0tymKQRzQqUSpV5iBWOxJ8raJW1w==
|
||||
"@unocss/core@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/core/-/core-0.47.6.tgz#9501cb903b45e33ef86d77bd99aa6b7ad05f615b"
|
||||
integrity sha512-Pjg/NdpuTwZk2Ns3bzI/3XVPuXU+AQ78Sw+9QJyMgA56dArd3TlpNDN6UTOD9XAK6mxdPUu7rNSKpNTLpBW2og==
|
||||
|
||||
"@unocss/inspector@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/inspector/-/inspector-0.46.3.tgz#9e6f36cb67d314bca4e4fb29722b4b5101f29ab2"
|
||||
integrity sha512-WVcDTzORo7dZO7clEwzC19ENr7aLM2CsGsh75ofYiyZs2iYHvgnuZRspKv7SeXSjf4b49O0Xa9sDov7neTlMfA==
|
||||
"@unocss/inspector@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/inspector/-/inspector-0.47.6.tgz#b7cc2b9ea2d0ebb0401c30831083460acd409273"
|
||||
integrity sha512-enYQJo7+/UtSbgzpyKzL4vZU9Tz3QyoPGDmuKoHXSIt6sAtB+DQelW7vMWjcmwA19uaISxIGXx9BJPj5XV67UA==
|
||||
dependencies:
|
||||
gzip-size "^6.0.0"
|
||||
sirv "^2.0.2"
|
||||
|
||||
"@unocss/preset-attributify@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-attributify/-/preset-attributify-0.46.3.tgz#6bbc23867264a3aadf58496b8fc539e7a1e32992"
|
||||
integrity sha512-vOXHFQlSZU5QLchiGKKdwz/dDS7zH6xZlxEcwdWHxzpl+kd1RfryRFa0N7MiS/6i++ko6Whr53pUyb0etafKgw==
|
||||
"@unocss/preset-attributify@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-attributify/-/preset-attributify-0.47.6.tgz#e8b0027df337d87340c3b3ec27a18c11b2f8fdc6"
|
||||
integrity sha512-s5XB8JpBPbGCHjvzc2j+Cx9o+QQm2CjRdQ7UjL05+uQcVYb8PBjlfD3BeIA21eBH5IxXF9SdOJfx8kUWNa5WFQ==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
|
||||
"@unocss/preset-icons@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-icons/-/preset-icons-0.46.3.tgz#01827b8c30e6df58f8a50b4bc8658ec7175751b7"
|
||||
integrity sha512-n0i4LQzj7nKZ/2MF1OH5srjDbqMec3EJZdAKIFKLohuBCpEzddRlC2rZzMdP6KCYyuxg4eJ0EIEuXgX7tWHu+Q==
|
||||
"@unocss/preset-icons@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-icons/-/preset-icons-0.47.6.tgz#18cf2a0b68a55b0f44ebe107c1934d7e437fd128"
|
||||
integrity sha512-YvANR5ueN+r1E4YOfqF1llyUzS6yxROrJ+7MGNdIfyNHFcTwdHRy0f6y8uyiMYWyLc6nGGrUjjdo+DEc30obSA==
|
||||
dependencies:
|
||||
"@iconify/utils" "^2.0.1"
|
||||
"@unocss/core" "0.46.3"
|
||||
ohmyfetch "^0.4.20"
|
||||
"@iconify/utils" "^2.0.2"
|
||||
"@unocss/core" "0.47.6"
|
||||
ohmyfetch "^0.4.21"
|
||||
|
||||
"@unocss/preset-mini@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-mini/-/preset-mini-0.46.3.tgz#5cf8e724bac0c08d459a868337166b2fa89657c9"
|
||||
integrity sha512-Z9pQWYi12M+Pu/3F9OYTefcJpcZkdLAtQ7ibg1PAkL06Ua24qH8KRBhTALQr9enn4yTqpCt4OsK3KtMGp84dhw==
|
||||
"@unocss/preset-mini@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-mini/-/preset-mini-0.47.6.tgz#16fed207076f2ee427be411cc187084f9520884b"
|
||||
integrity sha512-XP7ShDB42WU0xvZA1dG4E3LnzN4TYISm6AKQee3gmITUtE0ELTp9XutMgt0sqTe5FXeTRqw9XH7axv+4EqnE3Q==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
|
||||
"@unocss/preset-tagify@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-tagify/-/preset-tagify-0.46.3.tgz#7f022759361dde59125b959fbdd5634ae1e50d5b"
|
||||
integrity sha512-u8YJEPHM0Mxd8kWaM2+IfRKBRk3KxCghOVzYo2+/1ez+c+A1LZIduLwjmN/Tb7BxR/awNfOmC59kxxx0fIT1PQ==
|
||||
"@unocss/preset-tagify@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-tagify/-/preset-tagify-0.47.6.tgz#d6dfd03f40ad10ae9eafaa81b478a5e8c9dadecb"
|
||||
integrity sha512-9MxgZAUWWEg5OPLY+fpEf/Clw88pi57HON95E9zKvRy816S5gqhbt3PSxal7pCB9WO+3JM6BFLazAJ7DHpT1qA==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
|
||||
"@unocss/preset-typography@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-typography/-/preset-typography-0.46.3.tgz#09b55fc155f87a6d3e36e976525432b2bebcae38"
|
||||
integrity sha512-o9a1QMRlCL7/9wR2FwL+ncb4ITh8nCQUCQk+yhvP8/89afn+jmpLajccDX03THcR9s3rByp1/TnuyRrJoUer+A==
|
||||
"@unocss/preset-typography@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-typography/-/preset-typography-0.47.6.tgz#a953cc85ac70bb04b293a976a00113d41c87b7d8"
|
||||
integrity sha512-/Hfsw05ogolLXqrxTu5bLFIgGGmVdRHGw5vSmY3g+YPy37HfWpbP3cOs8YEOv8r3lV9J7vzAxAKKT0MQgukiHQ==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
|
||||
"@unocss/preset-uno@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-uno/-/preset-uno-0.46.3.tgz#43a9072e2820aa9e38f34e13df7f4a2af02a8a14"
|
||||
integrity sha512-MxRDodapsIV31z5/M7yhd/rxjtj7k8Z3kZROTSfTuRma9oD4e3Z6Q3GGUcn+dkgJmYDLTW61fbQf+ntOMlVcjg==
|
||||
"@unocss/preset-uno@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-uno/-/preset-uno-0.47.6.tgz#2a81775850b8fa3e8f95abb33513b50c587b4d64"
|
||||
integrity sha512-pDRuFmPzshX6ICaWhj7UBrnoL++rYD/QY52aljg9L4yAOZsZ1m0XRUlbnoXXXsEqDjw38SYNUzA1LtYcevBRvA==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/preset-mini" "0.46.3"
|
||||
"@unocss/preset-wind" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
"@unocss/preset-mini" "0.47.6"
|
||||
"@unocss/preset-wind" "0.47.6"
|
||||
|
||||
"@unocss/preset-web-fonts@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-web-fonts/-/preset-web-fonts-0.46.3.tgz#02d218eeb82af29c1e100ed562fcf217ec486565"
|
||||
integrity sha512-sY3pGJ4CUVOiIhX4foq5t5nd7NIcSq1Xa6jUS4Bf/pt0Nn9fyP5uRUgwXT0EXler2uF+Xq8JS9iNUA/dwmD9kg==
|
||||
"@unocss/preset-web-fonts@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-web-fonts/-/preset-web-fonts-0.47.6.tgz#0e0a1291f6902572a38b40320f5b0c0c1b680ed2"
|
||||
integrity sha512-TkN/etSSl61TtqxQJSVG/zfJUccdpgIuvqYrJOf4OZMj2rLwNHU2kOJEPFCfDyHTS+UjQ7LibfnE6snFDJ3pgQ==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
ohmyfetch "^0.4.20"
|
||||
"@unocss/core" "0.47.6"
|
||||
ohmyfetch "^0.4.21"
|
||||
|
||||
"@unocss/preset-wind@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-wind/-/preset-wind-0.46.3.tgz#a9d64e17c905d2ea422d0b657b58e29d245aba21"
|
||||
integrity sha512-qI9Ta4NIL2SBJ3UlBJAB72FBAe2czOkX0EvlsY+9DxlB2l1orBJy2n5EksbtAu0dk+RSxlk2E1zfXfV02ngqmA==
|
||||
"@unocss/preset-wind@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/preset-wind/-/preset-wind-0.47.6.tgz#3844db2615aa0bb62c9f815a35ac63fb41130a99"
|
||||
integrity sha512-yl9zayR/CRfgnlM1iGEBKI3CkIVADv72UQHY+ZHqq/0VzeW8lSRG1KezqDKz2x3fMfrtbfls/fGLXQPNpD0mIw==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/preset-mini" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
"@unocss/preset-mini" "0.47.6"
|
||||
|
||||
"@unocss/reset@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/reset/-/reset-0.46.3.tgz#71086aed1fac7292f4a8c9043730a4bad9946e76"
|
||||
integrity sha512-Jb9zx3h5IPVjSAyW+cLq+/cyeTcExtRaK+Jd7Zjcw6LhgeY5uFeEAQPoFVLCX8az7BXO6FQD3cAmWvl/yogAOA==
|
||||
"@unocss/reset@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/reset/-/reset-0.47.6.tgz#cde6769bad57f839a59edf189b7e7c3ce297ac59"
|
||||
integrity sha512-bdc2dbuDg+CzgeLowEwO1URRIMdzmCE4RH4IKpCpT1Xoa+92RRubdtzK4N/9ZiSo8d4vvfWcc8fvhZko/6smPQ==
|
||||
|
||||
"@unocss/scope@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/scope/-/scope-0.46.3.tgz#ad0490565712fff8a009b21482e97cff882d4b15"
|
||||
integrity sha512-oL8dC7vuy3Z76JTmrrJGMdNaojTPSwNnspaNQrGXydqLj/jwKAsLN2GeJi0FHvsnC1vicHjXhBRJ1uNQvwm/bQ==
|
||||
"@unocss/scope@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/scope/-/scope-0.47.6.tgz#c944a6412fd91bf06e94eb2f9e64ff679d9c678b"
|
||||
integrity sha512-aI7B4Il5xYfMcr50AC90I+Igi3KB9U0JPX2yiU2/WhOaO33ZReBWJmBQ4LhBGrdgNh8vkHpeqs8ntwq/o25nbA==
|
||||
|
||||
"@unocss/transformer-attributify-jsx@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/transformer-attributify-jsx/-/transformer-attributify-jsx-0.46.3.tgz#f0c76e9572db10057d2eb83020449c10be89fa00"
|
||||
integrity sha512-VW0gNAtSGkWz4LpviFVnOuGHJkhzPdj05OFVwYBBtPDI52rnx0pg0Nfu6epYwK9EfcdHLsmtJ3Bz3Jr1ldWAfg==
|
||||
"@unocss/transformer-attributify-jsx@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/transformer-attributify-jsx/-/transformer-attributify-jsx-0.47.6.tgz#a94becbfd9e1d2200bcb3ae7e95798ee2304fba9"
|
||||
integrity sha512-1sjBPNpczbg1ZsM4OKr9SCisc3vXEpW+3aeCRlBq7UGlJId3vJlX19Yp6IV9IEnVubsUkgo/3nr0B12OD58VdQ==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
|
||||
"@unocss/transformer-compile-class@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/transformer-compile-class/-/transformer-compile-class-0.46.3.tgz#65d5eca6bdadd1f3cf91bfd84fc1432c32c6872a"
|
||||
integrity sha512-TFtfSAxjX5x1mbQT3EqbmW2X9lDgKUEp134sdX44SO09VA5UZDpg/i+iI5adMr8h44c76S5HOqoLGEKgirT51w==
|
||||
"@unocss/transformer-compile-class@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/transformer-compile-class/-/transformer-compile-class-0.47.6.tgz#63080deb4407f2252dbd6f1ce2a462b1b8045ff6"
|
||||
integrity sha512-/+O0qJlHFOF4iO+RVkK5sPLJJzWp8dkAJGH/ArBzpT4hnxe8W7c0tb0hlJxwUp5J7UcP4lDhd8VKKvlyadHkuA==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
|
||||
"@unocss/transformer-directives@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/transformer-directives/-/transformer-directives-0.46.3.tgz#857e9bf6d98ad7191db65ca66d1a7a45dc2bd931"
|
||||
integrity sha512-9h5HZ7JJco6Hk6M6Gp3e+n5+s9reMRv6zPWeoTG7Y3gzHDbYDjQgaoCi7+6fPQ9642zN2WsAIsIm7r1gVpYveQ==
|
||||
"@unocss/transformer-directives@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/transformer-directives/-/transformer-directives-0.47.6.tgz#ac714d9952c2e217dc94d7839718b94769ab28a5"
|
||||
integrity sha512-vRY9bNhE+iNlRpsnky86MtKpRb8ipk3IHvtuRkK5DSjcjn7RGmh5ZpH9pzg39NvbWtRYq5/EN19riIYQHRetnA==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
css-tree "^2.2.1"
|
||||
|
||||
"@unocss/transformer-variant-group@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/transformer-variant-group/-/transformer-variant-group-0.46.3.tgz#cc0ffd5c5b41e3c02102e7c8a68883ebbc4fdfaf"
|
||||
integrity sha512-OdOREPMEo0D2tKaJa53CYoriKUIhjNCaBwr/0XGOamDwfYclt3+YyZ92AhpQIfqrdNbzlaBArjWGXMLjGLI1OA==
|
||||
"@unocss/transformer-variant-group@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/transformer-variant-group/-/transformer-variant-group-0.47.6.tgz#aeb2f046654a232b6fbfb72885bc602dec3b185f"
|
||||
integrity sha512-+uXz0pOv6WbEzQuW5RbgDSiwO274blsOsE63PdiRBMID1eSYKffGBcmiDh875QWc9ncFpjSKml+4q8jU7I+a0w==
|
||||
dependencies:
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/core" "0.47.6"
|
||||
|
||||
"@unocss/vite@0.46.3":
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/vite/-/vite-0.46.3.tgz#b66af4305f2dda3bb2f2dcfc0c88636a1bb0cfb0"
|
||||
integrity sha512-LCq3olCaRTheit6s5oE6x9/BlODpdG5K5CJ44GP7UZei3SuHOAKkbHNq7tanmMXc1jvIUre8HOeIKhARcA5Bwg==
|
||||
"@unocss/vite@0.47.6":
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/@unocss/vite/-/vite-0.47.6.tgz#35cef2e954be69a69b0d06f698e310f4ccb3ace6"
|
||||
integrity sha512-NL3A20sJHwMyCHOaxLlFXnr71QHEd118GN82e/mtFluEh7F3WyLndaZfWQLmLEeJ3z+P4nURFCLirZJIXr4XgQ==
|
||||
dependencies:
|
||||
"@ampproject/remapping" "^2.2.0"
|
||||
"@rollup/pluginutils" "^5.0.1"
|
||||
"@unocss/config" "0.46.3"
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/inspector" "0.46.3"
|
||||
"@unocss/scope" "0.46.3"
|
||||
"@unocss/transformer-directives" "0.46.3"
|
||||
magic-string "^0.26.7"
|
||||
"@rollup/pluginutils" "^5.0.2"
|
||||
"@unocss/config" "0.47.6"
|
||||
"@unocss/core" "0.47.6"
|
||||
"@unocss/inspector" "0.47.6"
|
||||
"@unocss/scope" "0.47.6"
|
||||
"@unocss/transformer-directives" "0.47.6"
|
||||
magic-string "^0.27.0"
|
||||
|
||||
"@vitejs/plugin-legacy@2.3.0":
|
||||
version "2.3.0"
|
||||
resolved "https://registry.yarnpkg.com/@vitejs/plugin-legacy/-/plugin-legacy-2.3.0.tgz#43565bcaf0dba53c70b26a1f67797b7c09f9d04e"
|
||||
integrity sha512-Bh62i0gzQvvT8AeAAb78nOnqSYXypkRmQmOTImdPZ39meHR9e2une3AIFmVo4s1SDmcmJ6qj18Sa/lRc/14KaA==
|
||||
"@vitejs/plugin-legacy@3.0.1":
|
||||
version "3.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@vitejs/plugin-legacy/-/plugin-legacy-3.0.1.tgz#bccc0eaf15a64e1854313acebec879854e413deb"
|
||||
integrity sha512-XCtEjxoR3rmy000ujYRBp5kggWqzHz9+F20/yIMUWOzbvu0+KW1e14Fvb8h7SpNn+bfjGW1RiAs1Vrgb7Js+iQ==
|
||||
dependencies:
|
||||
"@babel/standalone" "^7.19.6"
|
||||
core-js "^3.26.0"
|
||||
magic-string "^0.26.7"
|
||||
regenerator-runtime "^0.13.10"
|
||||
"@babel/standalone" "^7.20.6"
|
||||
core-js "^3.26.1"
|
||||
magic-string "^0.27.0"
|
||||
regenerator-runtime "^0.13.11"
|
||||
systemjs "^6.13.0"
|
||||
|
||||
"@vitejs/plugin-vue@3.2.0":
|
||||
version "3.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-3.2.0.tgz#a1484089dd85d6528f435743f84cdd0d215bbb54"
|
||||
integrity sha512-E0tnaL4fr+qkdCNxJ+Xd0yM31UwMkQje76fsDVBBUCoGOUPexu2VDUYHL8P4CwV+zMvWw6nlRw19OnRKmYAJpw==
|
||||
"@vitejs/plugin-vue@4.0.0":
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@vitejs/plugin-vue/-/plugin-vue-4.0.0.tgz#93815beffd23db46288c787352a8ea31a0c03e5e"
|
||||
integrity sha512-e0X4jErIxAB5oLtDqbHvHpJe/uWNkdpYV83AOG2xo2tEVSzCzewgJMtREZM30wXnM5ls90hxiOtAuVU6H5JgbA==
|
||||
|
||||
"@vue/compiler-core@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.2.41.tgz#fb5b25f23817400f44377d878a0cdead808453ef"
|
||||
integrity sha512-oA4mH6SA78DT+96/nsi4p9DX97PHcNROxs51lYk7gb9Z4BPKQ3Mh+BLn6CQZBw857Iuhu28BfMSRHAlPvD4vlw==
|
||||
"@vue/compiler-core@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-core/-/compiler-core-3.2.45.tgz#d9311207d96f6ebd5f4660be129fb99f01ddb41b"
|
||||
integrity sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==
|
||||
dependencies:
|
||||
"@babel/parser" "^7.16.4"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/shared" "3.2.45"
|
||||
estree-walker "^2.0.2"
|
||||
source-map "^0.6.1"
|
||||
|
||||
"@vue/compiler-dom@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.2.41.tgz#dc63dcd3ce8ca8a8721f14009d498a7a54380299"
|
||||
integrity sha512-xe5TbbIsonjENxJsYRbDJvthzqxLNk+tb3d/c47zgREDa/PCp6/Y4gC/skM4H6PIuX5DAxm7fFJdbjjUH2QTMw==
|
||||
"@vue/compiler-dom@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-dom/-/compiler-dom-3.2.45.tgz#c43cc15e50da62ecc16a42f2622d25dc5fd97dce"
|
||||
integrity sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==
|
||||
dependencies:
|
||||
"@vue/compiler-core" "3.2.41"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/compiler-core" "3.2.45"
|
||||
"@vue/shared" "3.2.45"
|
||||
|
||||
"@vue/compiler-sfc@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.2.41.tgz#238fb8c48318408c856748f4116aff8cc1dc2a73"
|
||||
integrity sha512-+1P2m5kxOeaxVmJNXnBskAn3BenbTmbxBxWOtBq3mQTCokIreuMULFantBUclP0+KnzNCMOvcnKinqQZmiOF8w==
|
||||
"@vue/compiler-sfc@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-sfc/-/compiler-sfc-3.2.45.tgz#7f7989cc04ec9e7c55acd406827a2c4e96872c70"
|
||||
integrity sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==
|
||||
dependencies:
|
||||
"@babel/parser" "^7.16.4"
|
||||
"@vue/compiler-core" "3.2.41"
|
||||
"@vue/compiler-dom" "3.2.41"
|
||||
"@vue/compiler-ssr" "3.2.41"
|
||||
"@vue/reactivity-transform" "3.2.41"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/compiler-core" "3.2.45"
|
||||
"@vue/compiler-dom" "3.2.45"
|
||||
"@vue/compiler-ssr" "3.2.45"
|
||||
"@vue/reactivity-transform" "3.2.45"
|
||||
"@vue/shared" "3.2.45"
|
||||
estree-walker "^2.0.2"
|
||||
magic-string "^0.25.7"
|
||||
postcss "^8.1.10"
|
||||
source-map "^0.6.1"
|
||||
|
||||
"@vue/compiler-ssr@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.2.41.tgz#344f564d68584b33367731c04ffc949784611fcb"
|
||||
integrity sha512-Y5wPiNIiaMz/sps8+DmhaKfDm1xgj6GrH99z4gq2LQenfVQcYXmHIOBcs5qPwl7jaW3SUQWjkAPKMfQemEQZwQ==
|
||||
"@vue/compiler-ssr@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/compiler-ssr/-/compiler-ssr-3.2.45.tgz#bd20604b6e64ea15344d5b6278c4141191c983b2"
|
||||
integrity sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==
|
||||
dependencies:
|
||||
"@vue/compiler-dom" "3.2.41"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/compiler-dom" "3.2.45"
|
||||
"@vue/shared" "3.2.45"
|
||||
|
||||
"@vue/devtools-api@^6.2.1":
|
||||
version "6.2.1"
|
||||
@ -1527,53 +1535,53 @@
|
||||
resolved "https://registry.yarnpkg.com/@vue/devtools-api/-/devtools-api-6.4.5.tgz#d54e844c1adbb1e677c81c665ecef1a2b4bb8380"
|
||||
integrity sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==
|
||||
|
||||
"@vue/reactivity-transform@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/reactivity-transform/-/reactivity-transform-3.2.41.tgz#9ff938877600c97f646e09ac1959b5150fb11a0c"
|
||||
integrity sha512-mK5+BNMsL4hHi+IR3Ft/ho6Za+L3FA5j8WvreJ7XzHrqkPq8jtF/SMo7tuc9gHjLDwKZX1nP1JQOKo9IEAn54A==
|
||||
"@vue/reactivity-transform@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/reactivity-transform/-/reactivity-transform-3.2.45.tgz#07ac83b8138550c83dfb50db43cde1e0e5e8124d"
|
||||
integrity sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==
|
||||
dependencies:
|
||||
"@babel/parser" "^7.16.4"
|
||||
"@vue/compiler-core" "3.2.41"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/compiler-core" "3.2.45"
|
||||
"@vue/shared" "3.2.45"
|
||||
estree-walker "^2.0.2"
|
||||
magic-string "^0.25.7"
|
||||
|
||||
"@vue/reactivity@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.2.41.tgz#0ad3bdf76d76822da1502dc9f394dafd02642963"
|
||||
integrity sha512-9JvCnlj8uc5xRiQGZ28MKGjuCoPhhTwcoAdv3o31+cfGgonwdPNuvqAXLhlzu4zwqavFEG5tvaoINQEfxz+l6g==
|
||||
"@vue/reactivity@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/reactivity/-/reactivity-3.2.45.tgz#412a45b574de601be5a4a5d9a8cbd4dee4662ff0"
|
||||
integrity sha512-PRvhCcQcyEVohW0P8iQ7HDcIOXRjZfAsOds3N99X/Dzewy8TVhTCT4uXpAHfoKjVTJRA0O0K+6QNkDIZAxNi3A==
|
||||
dependencies:
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/shared" "3.2.45"
|
||||
|
||||
"@vue/runtime-core@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.41.tgz#775bfc00b3fadbaddab77138f23322aee3517a76"
|
||||
integrity sha512-0LBBRwqnI0p4FgIkO9q2aJBBTKDSjzhnxrxHYengkAF6dMOjeAIZFDADAlcf2h3GDALWnblbeprYYpItiulSVQ==
|
||||
"@vue/runtime-core@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/runtime-core/-/runtime-core-3.2.45.tgz#7ad7ef9b2519d41062a30c6fa001ec43ac549c7f"
|
||||
integrity sha512-gzJiTA3f74cgARptqzYswmoQx0fIA+gGYBfokYVhF8YSXjWTUA2SngRzZRku2HbGbjzB6LBYSbKGIaK8IW+s0A==
|
||||
dependencies:
|
||||
"@vue/reactivity" "3.2.41"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/reactivity" "3.2.45"
|
||||
"@vue/shared" "3.2.45"
|
||||
|
||||
"@vue/runtime-dom@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.41.tgz#cdf86be7410f7b15c29632a96ce879e5b4c9ab92"
|
||||
integrity sha512-U7zYuR1NVIP8BL6jmOqmapRAHovEFp7CSw4pR2FacqewXNGqZaRfHoNLQsqQvVQ8yuZNZtxSZy0FFyC70YXPpA==
|
||||
"@vue/runtime-dom@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/runtime-dom/-/runtime-dom-3.2.45.tgz#1a2ef6ee2ad876206fbbe2a884554bba2d0faf59"
|
||||
integrity sha512-cy88YpfP5Ue2bDBbj75Cb4bIEZUMM/mAkDMfqDTpUYVgTf/kuQ2VQ8LebuZ8k6EudgH8pYhsGWHlY0lcxlvTwA==
|
||||
dependencies:
|
||||
"@vue/runtime-core" "3.2.41"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/runtime-core" "3.2.45"
|
||||
"@vue/shared" "3.2.45"
|
||||
csstype "^2.6.8"
|
||||
|
||||
"@vue/server-renderer@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.2.41.tgz#ca64552c05878f94e8d191ac439141c06c0fb2ad"
|
||||
integrity sha512-7YHLkfJdTlsZTV0ae5sPwl9Gn/EGr2hrlbcS/8naXm2CDpnKUwC68i1wGlrYAfIgYWL7vUZwk2GkYLQH5CvFig==
|
||||
"@vue/server-renderer@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/server-renderer/-/server-renderer-3.2.45.tgz#ca9306a0c12b0530a1a250e44f4a0abac6b81f3f"
|
||||
integrity sha512-ebiMq7q24WBU1D6uhPK//2OTR1iRIyxjF5iVq/1a5I1SDMDyDu4Ts6fJaMnjrvD3MqnaiFkKQj+LKAgz5WIK3g==
|
||||
dependencies:
|
||||
"@vue/compiler-ssr" "3.2.41"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/compiler-ssr" "3.2.45"
|
||||
"@vue/shared" "3.2.45"
|
||||
|
||||
"@vue/shared@3.2.41":
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.2.41.tgz#fbc95422df654ea64e8428eced96ba6ad555d2bb"
|
||||
integrity sha512-W9mfWLHmJhkfAmV+7gDjcHeAWALQtgGT3JErxULl0oz6R6+3ug91I7IErs93eCFhPCZPHBs4QJS7YWEV7A3sxw==
|
||||
"@vue/shared@3.2.45":
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/@vue/shared/-/shared-3.2.45.tgz#a3fffa7489eafff38d984e23d0236e230c818bc2"
|
||||
integrity sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==
|
||||
|
||||
acorn-jsx@^5.2.0, acorn-jsx@^5.3.2:
|
||||
version "5.3.2"
|
||||
@ -1885,10 +1893,10 @@ core-js-compat@^3.20.2, core-js-compat@^3.21.0:
|
||||
browserslist "^4.19.1"
|
||||
semver "7.0.0"
|
||||
|
||||
core-js@^3.26.0:
|
||||
version "3.26.0"
|
||||
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.26.0.tgz#a516db0ed0811be10eac5d94f3b8463d03faccfe"
|
||||
integrity sha512-+DkDrhoR4Y0PxDz6rurahuB+I45OsEUv8E1maPTB6OuHRohMMcznBq9TMpdpDMm/hUPob/mJJS3PqgbHpMTQgw==
|
||||
core-js@^3.26.1:
|
||||
version "3.26.1"
|
||||
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.26.1.tgz#7a9816dabd9ee846c1c0fe0e8fcad68f3709134e"
|
||||
integrity sha512-21491RRQVzUn0GGM9Z1Jrpr6PNPxPi+Za8OM9q4tksTSnlbXXGKK1nXNg/QvwFYettXvSX6zWKCtHHfjN4puyA==
|
||||
|
||||
cross-spawn@^7.0.2, cross-spawn@^7.0.3:
|
||||
version "7.0.3"
|
||||
@ -1951,10 +1959,10 @@ defu@^6.1.0:
|
||||
resolved "https://registry.yarnpkg.com/defu/-/defu-6.1.0.tgz#7a5411655da73335c7d933256911f17c74443e2d"
|
||||
integrity sha512-pOFYRTIhoKujrmbTRhcW5lYQLBXw/dlTwfI8IguF1QCDJOcJzNH1w+YFjxqy6BAuJrClTy6MUE8q+oKJ2FLsIw==
|
||||
|
||||
destr@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/destr/-/destr-1.1.1.tgz#910457d10a2f2f247add4ca4fdb4a03adcc49079"
|
||||
integrity sha512-QqkneF8LrYmwATMdnuD2MLI3GHQIcBnG6qFC2q9bSH430VTCDAVjcspPmUaKhPGtAtPAftIUFqY1obQYQuwmbg==
|
||||
destr@^1.2.0:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/destr/-/destr-1.2.1.tgz#03f2e7cbcd01f9190938d05718948de9d7dfb71a"
|
||||
integrity sha512-ud8w0qMLlci6iFG7CNgeRr8OcbUWMsbfjtWft1eJ5Luqrz/M8Ebqk/KCzne8rKUlIQWWfLv0wD6QHrqOf4GshA==
|
||||
|
||||
doctrine@^3.0.0:
|
||||
version "3.0.0"
|
||||
@ -1968,10 +1976,10 @@ dom-walk@^0.1.0:
|
||||
resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84"
|
||||
integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==
|
||||
|
||||
dompurify@2.4.0:
|
||||
version "2.4.0"
|
||||
resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.4.0.tgz#c9c88390f024c2823332615c9e20a453cf3825dd"
|
||||
integrity sha512-Be9tbQMZds4a3C6xTmz68NlMfeONA//4dOavl/1rNw50E+/QO0KVpbcU0PcaW0nsQxurXls9ZocqFxk8R2mWEA==
|
||||
dompurify@2.4.1:
|
||||
version "2.4.1"
|
||||
resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.4.1.tgz#f9cb1a275fde9af6f2d0a2644ef648dd6847b631"
|
||||
integrity sha512-ewwFzHzrrneRjxzmK6oVz/rZn9VWspGFRDb4/rRtIsM1n36t9AKma/ye8syCpcw+XJ25kOK/hOG7t1j2I2yBqA==
|
||||
|
||||
duplexer@^0.1.2:
|
||||
version "0.1.2"
|
||||
@ -2185,10 +2193,10 @@ eslint-plugin-prettier@4.2.1:
|
||||
dependencies:
|
||||
prettier-linter-helpers "^1.0.0"
|
||||
|
||||
eslint-plugin-vue@9.7.0:
|
||||
version "9.7.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.7.0.tgz#d391b9864f128ea2d1ee4dabeafb5f7c0cea981f"
|
||||
integrity sha512-DrOO3WZCZEwcLsnd3ohFwqCoipGRSTKTBTnLwdhqAbYZtzWl0o7D+D8ZhlmiZvABKTEl8AFsqH1GHGdybyoQmw==
|
||||
eslint-plugin-vue@9.8.0:
|
||||
version "9.8.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-plugin-vue/-/eslint-plugin-vue-9.8.0.tgz#91de2aabbee8cdbef078ccd4f650a9ecfa445f4f"
|
||||
integrity sha512-E/AXwcTzunyzM83C2QqDHxepMzvI2y6x+mmeYHbVDQlKFqmKYvRrhaVixEeeG27uI44p9oKDFiyCRw4XxgtfHA==
|
||||
dependencies:
|
||||
eslint-utils "^3.0.0"
|
||||
natural-compare "^1.4.0"
|
||||
@ -2235,10 +2243,10 @@ eslint-visitor-keys@^3.3.0:
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"
|
||||
integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==
|
||||
|
||||
eslint@8.26.0:
|
||||
version "8.26.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.26.0.tgz#2bcc8836e6c424c4ac26a5674a70d44d84f2181d"
|
||||
integrity sha512-kzJkpaw1Bfwheq4VXUezFriD1GxszX6dUekM7Z3aC2o4hju+tsR/XyTC3RcoSD7jmy9VkPU3+N6YjVU2e96Oyg==
|
||||
eslint@8.29.0:
|
||||
version "8.29.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.29.0.tgz#d74a88a20fb44d59c51851625bc4ee8d0ec43f87"
|
||||
integrity sha512-isQ4EEiyUjZFbEKvEGJKKGBwXtvXX+zJbkVKCgTuB9t/+jUBcy8avhkEwWJecI15BkRkOYmvIM5ynbhRjEkoeg==
|
||||
dependencies:
|
||||
"@eslint/eslintrc" "^1.3.3"
|
||||
"@humanwhocodes/config-array" "^0.11.6"
|
||||
@ -2366,7 +2374,7 @@ fast-diff@^1.1.2:
|
||||
resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03"
|
||||
integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==
|
||||
|
||||
fast-glob@^3.2.11, fast-glob@^3.2.12, fast-glob@^3.2.5:
|
||||
fast-glob@^3.2.12, fast-glob@^3.2.5:
|
||||
version "3.2.12"
|
||||
resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80"
|
||||
integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==
|
||||
@ -2590,10 +2598,10 @@ has@^1.0.3:
|
||||
dependencies:
|
||||
function-bind "^1.1.1"
|
||||
|
||||
hotkeys-js@3.10.0:
|
||||
version "3.10.0"
|
||||
resolved "https://registry.yarnpkg.com/hotkeys-js/-/hotkeys-js-3.10.0.tgz#2bbd13de4aa002fa916c34e3859239924311e35a"
|
||||
integrity sha512-20xeVdOqcgTkMox0+BqFwADZP7+5dy/9CFPpAinSMh2d0s3b0Hs2V2D+lMh4Hphkf7VE9pwnOl58eP1te+REcg==
|
||||
hotkeys-js@3.10.1:
|
||||
version "3.10.1"
|
||||
resolved "https://registry.yarnpkg.com/hotkeys-js/-/hotkeys-js-3.10.1.tgz#0c67e72298f235c9200e421ab112d156dc81356a"
|
||||
integrity sha512-mshqjgTqx8ee0qryHvRgZaZDxTwxam/2yTQmQlqAWS3+twnq1jsY9Yng9zB7lWq6WRrjTbTOc7knNwccXQiAjQ==
|
||||
|
||||
human-signals@^2.1.0:
|
||||
version "2.1.0"
|
||||
@ -2963,13 +2971,20 @@ magic-string@^0.25.0, magic-string@^0.25.7:
|
||||
dependencies:
|
||||
sourcemap-codec "^1.4.8"
|
||||
|
||||
magic-string@^0.26.7:
|
||||
magic-string@^0.26.4, magic-string@^0.26.7:
|
||||
version "0.26.7"
|
||||
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.26.7.tgz#caf7daf61b34e9982f8228c4527474dac8981d6f"
|
||||
integrity sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==
|
||||
dependencies:
|
||||
sourcemap-codec "^1.4.8"
|
||||
|
||||
magic-string@^0.27.0:
|
||||
version "0.27.0"
|
||||
resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.27.0.tgz#e4a3413b4bab6d98d2becffd48b4a257effdbbf3"
|
||||
integrity sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==
|
||||
dependencies:
|
||||
"@jridgewell/sourcemap-codec" "^1.4.13"
|
||||
|
||||
mdn-data@2.0.28:
|
||||
version "2.0.28"
|
||||
resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.28.tgz#5ec48e7bef120654539069e1ae4ddc81ca490eba"
|
||||
@ -3101,15 +3116,15 @@ object.assign@^4.1.0, object.assign@^4.1.2:
|
||||
has-symbols "^1.0.1"
|
||||
object-keys "^1.1.1"
|
||||
|
||||
ohmyfetch@^0.4.20:
|
||||
version "0.4.20"
|
||||
resolved "https://registry.yarnpkg.com/ohmyfetch/-/ohmyfetch-0.4.20.tgz#735895d396c6d2fbf5705625db1196bd3f29be16"
|
||||
integrity sha512-+c3/l+X91owrT1reTos1R13rb2j8NGZpKi0bRWwrnxIHlr1FZ8NzghIsNBKpUvk9nsnFoNK4phw+nTnXrcALzA==
|
||||
ohmyfetch@^0.4.21:
|
||||
version "0.4.21"
|
||||
resolved "https://registry.yarnpkg.com/ohmyfetch/-/ohmyfetch-0.4.21.tgz#6850db751fc7bbf08153aa8b11ff1ef45fcfd963"
|
||||
integrity sha512-VG7f/JRvqvBOYvL0tHyEIEG7XHWm7OqIfAs6/HqwWwDfjiJ1g0huIpe5sFEmyb+7hpFa1EGNH2aERWR72tlClw==
|
||||
dependencies:
|
||||
destr "^1.1.1"
|
||||
destr "^1.2.0"
|
||||
node-fetch-native "^0.1.8"
|
||||
ufo "^0.8.6"
|
||||
undici "^5.11.0"
|
||||
undici "^5.12.0"
|
||||
|
||||
once@^1.3.0:
|
||||
version "1.4.0"
|
||||
@ -3178,11 +3193,16 @@ path-parse@^1.0.7:
|
||||
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
|
||||
integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
|
||||
|
||||
pathe@^0.3.0, pathe@^0.3.9:
|
||||
pathe@^0.3.0:
|
||||
version "0.3.9"
|
||||
resolved "https://registry.yarnpkg.com/pathe/-/pathe-0.3.9.tgz#4baff768f37f03e3d9341502865fb93116f65191"
|
||||
integrity sha512-6Y6s0vT112P3jD8dGfuS6r+lpa0qqNrLyHPOwvXMnyNTQaYiwgau2DP3aNDsR13xqtGj7rrPo+jFUATpU6/s+g==
|
||||
|
||||
pathe@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/pathe/-/pathe-1.0.0.tgz#135fc11464fc57c84ef93d5c5ed21247e24571df"
|
||||
integrity sha512-nPdMG0Pd09HuSsr7QOKUXO2Jr9eqaDiZvDwdyIhNG5SHYujkQHYKDfGQkulBxvbDHz8oHLsTgKN86LSwYzSHAg==
|
||||
|
||||
perfect-debounce@^0.1.3:
|
||||
version "0.1.3"
|
||||
resolved "https://registry.yarnpkg.com/perfect-debounce/-/perfect-debounce-0.1.3.tgz#ff6798ea543a3ba1f0efeeaf97c0340f5c8871ce"
|
||||
@ -3236,10 +3256,10 @@ prettier-linter-helpers@^1.0.0:
|
||||
dependencies:
|
||||
fast-diff "^1.1.2"
|
||||
|
||||
prettier@2.7.1:
|
||||
version "2.7.1"
|
||||
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.7.1.tgz#e235806850d057f97bb08368a4f7d899f7760c64"
|
||||
integrity sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==
|
||||
prettier@2.8.1:
|
||||
version "2.8.1"
|
||||
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.1.tgz#4e1fd11c34e2421bc1da9aea9bd8127cd0a35efc"
|
||||
integrity sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==
|
||||
|
||||
pretty-bytes@^5.3.0:
|
||||
version "5.6.0"
|
||||
@ -3301,10 +3321,10 @@ regenerate@^1.4.2:
|
||||
resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
|
||||
integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
|
||||
|
||||
regenerator-runtime@^0.13.10:
|
||||
version "0.13.10"
|
||||
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.10.tgz#ed07b19616bcbec5da6274ebc75ae95634bfc2ee"
|
||||
integrity sha512-KepLsg4dU12hryUO7bp/axHAKvwGOCV0sGloQtpagJ12ai+ojVDqkeGSiRX1zlq+kjIMZ1t7gpze+26QqtdGqw==
|
||||
regenerator-runtime@^0.13.11:
|
||||
version "0.13.11"
|
||||
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9"
|
||||
integrity sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==
|
||||
|
||||
regenerator-runtime@^0.13.4:
|
||||
version "0.13.9"
|
||||
@ -3417,13 +3437,20 @@ rollup@^2.43.1, rollup@^2.77.2:
|
||||
optionalDependencies:
|
||||
fsevents "~2.3.2"
|
||||
|
||||
rollup@^2.79.0, rollup@^2.79.1:
|
||||
rollup@^2.79.1:
|
||||
version "2.79.1"
|
||||
resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.79.1.tgz#bedee8faef7c9f93a2647ac0108748f497f081c7"
|
||||
integrity sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==
|
||||
optionalDependencies:
|
||||
fsevents "~2.3.2"
|
||||
|
||||
rollup@^3.7.2:
|
||||
version "3.7.3"
|
||||
resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.7.3.tgz#d440adff5f89099fd1f552e4e4333045e3bc71d4"
|
||||
integrity sha512-7e68MQbAWCX6mI4/0lG1WHd+NdNAlVamg0Zkd+8LZ/oXojligdGnCNyHlzXqXCZObyjs5FRc3AH0b17iJESGIQ==
|
||||
optionalDependencies:
|
||||
fsevents "~2.3.2"
|
||||
|
||||
run-parallel@^1.1.9:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
|
||||
@ -3470,10 +3497,10 @@ serialize-javascript@^4.0.0:
|
||||
dependencies:
|
||||
randombytes "^2.1.0"
|
||||
|
||||
shaka-player@4.2.3:
|
||||
version "4.2.3"
|
||||
resolved "https://registry.yarnpkg.com/shaka-player/-/shaka-player-4.2.3.tgz#696eddb7e25b082b3a75d2452956bc4d8eaa9f76"
|
||||
integrity sha512-R6JGpYfn/0yuYoFvqE+INFx9z4fgDaGJWQdHc6yDQ6GryCnkw6PmaIFHnInYqTgoufGgXuB392Xl9frB/s2f8w==
|
||||
shaka-player@4.3.2:
|
||||
version "4.3.2"
|
||||
resolved "https://registry.yarnpkg.com/shaka-player/-/shaka-player-4.3.2.tgz#4c255f93ca6f0452231903a4f0fe068b89f43056"
|
||||
integrity sha512-sHGDKhKJTPeTks5BiASqr+E+daPHrLYSznEasHR2b7VR34D1OcAcVJk3WQXQiV03tWFFydFGHrgxQDmj1hIA+Q==
|
||||
dependencies:
|
||||
eme-encryption-scheme-polyfill "^2.1.1"
|
||||
|
||||
@ -3747,10 +3774,10 @@ unconfig@^0.3.7:
|
||||
defu "^6.1.0"
|
||||
jiti "^1.16.0"
|
||||
|
||||
undici@^5.11.0:
|
||||
version "5.11.0"
|
||||
resolved "https://registry.yarnpkg.com/undici/-/undici-5.11.0.tgz#1db25f285821828fc09d3804b9e2e934ae86fc13"
|
||||
integrity sha512-oWjWJHzFet0Ow4YZBkyiJwiK5vWqEYoH7BINzJAJOLedZ++JpAlCbUktW2GQ2DS2FpKmxD/JMtWUUWl1BtghGw==
|
||||
undici@^5.12.0:
|
||||
version "5.13.0"
|
||||
resolved "https://registry.yarnpkg.com/undici/-/undici-5.13.0.tgz#56772fba89d8b25e39bddc8c26a438bd73ea69bb"
|
||||
integrity sha512-UDZKtwb2k7KRsK4SdXWG7ErXiL7yTGgLWvk2AXO1JMjgjh404nFo6tWSCM2xMpJwMPx3J8i/vfqEh1zOqvj82Q==
|
||||
dependencies:
|
||||
busboy "^1.6.0"
|
||||
|
||||
@ -3789,28 +3816,28 @@ universalify@^2.0.0:
|
||||
resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
|
||||
integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==
|
||||
|
||||
unocss@0.46.3:
|
||||
version "0.46.3"
|
||||
resolved "https://registry.yarnpkg.com/unocss/-/unocss-0.46.3.tgz#28a13638b5def55dfce3dd86d21c9eb16018d936"
|
||||
integrity sha512-9ICDcmCkNH2jp6NVR7kMYe4rvfIc4INv7u5g4G2yQx00YYfGc8PCY7VqWlJsHoD7eUuqUOSwBbd9gsg3cvNn4A==
|
||||
unocss@0.47.6:
|
||||
version "0.47.6"
|
||||
resolved "https://registry.yarnpkg.com/unocss/-/unocss-0.47.6.tgz#530e9e952b782e7d14638d69c622c397183ca910"
|
||||
integrity sha512-cc+m2h/Iky24zwAKir9ElmIhkPYNjZEUTemInctWlVN8QX9qpzsRZahAl7ZmKsBorXPFtux/JYoUCCtXftyxOw==
|
||||
dependencies:
|
||||
"@unocss/astro" "0.46.3"
|
||||
"@unocss/cli" "0.46.3"
|
||||
"@unocss/core" "0.46.3"
|
||||
"@unocss/preset-attributify" "0.46.3"
|
||||
"@unocss/preset-icons" "0.46.3"
|
||||
"@unocss/preset-mini" "0.46.3"
|
||||
"@unocss/preset-tagify" "0.46.3"
|
||||
"@unocss/preset-typography" "0.46.3"
|
||||
"@unocss/preset-uno" "0.46.3"
|
||||
"@unocss/preset-web-fonts" "0.46.3"
|
||||
"@unocss/preset-wind" "0.46.3"
|
||||
"@unocss/reset" "0.46.3"
|
||||
"@unocss/transformer-attributify-jsx" "0.46.3"
|
||||
"@unocss/transformer-compile-class" "0.46.3"
|
||||
"@unocss/transformer-directives" "0.46.3"
|
||||
"@unocss/transformer-variant-group" "0.46.3"
|
||||
"@unocss/vite" "0.46.3"
|
||||
"@unocss/astro" "0.47.6"
|
||||
"@unocss/cli" "0.47.6"
|
||||
"@unocss/core" "0.47.6"
|
||||
"@unocss/preset-attributify" "0.47.6"
|
||||
"@unocss/preset-icons" "0.47.6"
|
||||
"@unocss/preset-mini" "0.47.6"
|
||||
"@unocss/preset-tagify" "0.47.6"
|
||||
"@unocss/preset-typography" "0.47.6"
|
||||
"@unocss/preset-uno" "0.47.6"
|
||||
"@unocss/preset-web-fonts" "0.47.6"
|
||||
"@unocss/preset-wind" "0.47.6"
|
||||
"@unocss/reset" "0.47.6"
|
||||
"@unocss/transformer-attributify-jsx" "0.47.6"
|
||||
"@unocss/transformer-compile-class" "0.47.6"
|
||||
"@unocss/transformer-directives" "0.47.6"
|
||||
"@unocss/transformer-variant-group" "0.47.6"
|
||||
"@unocss/vite" "0.47.6"
|
||||
|
||||
upath@^1.2.0:
|
||||
version "1.2.0"
|
||||
@ -3838,22 +3865,23 @@ vite-plugin-eslint@1.8.1:
|
||||
"@types/eslint" "^8.4.5"
|
||||
rollup "^2.77.2"
|
||||
|
||||
vite-plugin-pwa@0.13.1:
|
||||
version "0.13.1"
|
||||
resolved "https://registry.yarnpkg.com/vite-plugin-pwa/-/vite-plugin-pwa-0.13.1.tgz#345133f947d4fc8252a1fd96f2fcb0e17c4201ae"
|
||||
integrity sha512-NR3dIa+o2hzlzo4lF4Gu0cYvoMjSw2DdRc6Epw1yjmCqWaGuN86WK9JqZie4arNlE1ZuWT3CLiMdiX5wcmmUmg==
|
||||
vite-plugin-pwa@0.14.0:
|
||||
version "0.14.0"
|
||||
resolved "https://registry.yarnpkg.com/vite-plugin-pwa/-/vite-plugin-pwa-0.14.0.tgz#6782874c397cbea4212681db752b43076b56cc99"
|
||||
integrity sha512-3wZx47PLWTckOQhc8Y6YZjAbNZ89Ovh4TdCT97MGhgl7aFd2LUekVnAmIgFwgMqyxzJ93nmkPF/ALpEW/i2qCg==
|
||||
dependencies:
|
||||
"@rollup/plugin-replace" "^5.0.1"
|
||||
debug "^4.3.4"
|
||||
fast-glob "^3.2.11"
|
||||
fast-glob "^3.2.12"
|
||||
pretty-bytes "^6.0.0"
|
||||
rollup "^2.79.0"
|
||||
rollup "^3.7.2"
|
||||
workbox-build "^6.5.4"
|
||||
workbox-window "^6.5.4"
|
||||
|
||||
vite@3.2.2:
|
||||
version "3.2.2"
|
||||
resolved "https://registry.yarnpkg.com/vite/-/vite-3.2.2.tgz#280762bfaf47bcea1d12698427331c0009ac7c1f"
|
||||
integrity sha512-pLrhatFFOWO9kS19bQ658CnRYzv0WLbsPih6R+iFeEEhDOuYgYCX2rztUViMz/uy/V8cLCJvLFeiOK7RJEzHcw==
|
||||
vite@3.2.5:
|
||||
version "3.2.5"
|
||||
resolved "https://registry.yarnpkg.com/vite/-/vite-3.2.5.tgz#dee5678172a8a0ab3e547ad4148c3d547f90e86a"
|
||||
integrity sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ==
|
||||
dependencies:
|
||||
esbuild "^0.15.9"
|
||||
postcss "^8.4.18"
|
||||
@ -3892,16 +3920,16 @@ vue-router@4.1.6:
|
||||
dependencies:
|
||||
"@vue/devtools-api" "^6.4.5"
|
||||
|
||||
vue@3.2.41:
|
||||
version "3.2.41"
|
||||
resolved "https://registry.yarnpkg.com/vue/-/vue-3.2.41.tgz#ed452b8a0f7f2b962f055c8955139c28b1c06806"
|
||||
integrity sha512-uuuvnrDXEeZ9VUPljgHkqB5IaVO8SxhPpqF2eWOukVrBnRBx2THPSGQBnVRt0GrIG1gvCmFXMGbd7FqcT1ixNQ==
|
||||
vue@3.2.45:
|
||||
version "3.2.45"
|
||||
resolved "https://registry.yarnpkg.com/vue/-/vue-3.2.45.tgz#94a116784447eb7dbd892167784619fef379b3c8"
|
||||
integrity sha512-9Nx/Mg2b2xWlXykmCwiTUCWHbWIj53bnkizBxKai1g61f2Xit700A1ljowpTIM11e3uipOeiPcSqnmBg6gyiaA==
|
||||
dependencies:
|
||||
"@vue/compiler-dom" "3.2.41"
|
||||
"@vue/compiler-sfc" "3.2.41"
|
||||
"@vue/runtime-dom" "3.2.41"
|
||||
"@vue/server-renderer" "3.2.41"
|
||||
"@vue/shared" "3.2.41"
|
||||
"@vue/compiler-dom" "3.2.45"
|
||||
"@vue/compiler-sfc" "3.2.45"
|
||||
"@vue/runtime-dom" "3.2.45"
|
||||
"@vue/server-renderer" "3.2.45"
|
||||
"@vue/shared" "3.2.45"
|
||||
|
||||
webidl-conversions@^4.0.2:
|
||||
version "4.0.2"
|
||||
|
Loading…
Reference in New Issue
Block a user