Merge branch 'VueTubeApp:main' into main

This commit is contained in:
fullmull 2022-08-30 00:18:54 +02:00 committed by GitHub
commit fe7b665a6a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
99 changed files with 764 additions and 1844 deletions

View File

@ -2,10 +2,10 @@ blank_issues_enabled: false
contact_links:
- name: 💬 Discord
url: https://vuetube.app/discord
about: Join the Discord server to chat and ask questions
about: Join the Discord server to chat and ask questions (recommended)
- name: 💬 Telegram
url: https://t.me/vuetube
about: Join the Telegram group to chat and ask questions
- name: 💬 VueTube website
- name: 🌐 VueTube website
url: https://vuetube.app/
about: For example, to check FAQ before asking frecuently asked questions (wait... then they won't be frequently asked questions?)

View File

@ -34,8 +34,8 @@ export default {
async mounted() {
const releases = await this.$vuetube.releases;
const appVersion = process.env.appVersion;
const appChannel = process.env.release;
const appVersion = process.env.version;
const appChannel = process.env.channel;
if (appVersion !== releases[0].tag_name && appVersion !== "dev-local" && appChannel !== "Unstable") {
this.updateSnackbar = true;
}

View File

@ -8,8 +8,8 @@
export default {
//--- VueTube Stuff ---//
env: {
release: "Unstable",
appVersion: "dev-local",
channel: "Unstable",
version: "dev-local",
},
target: "static",

View File

@ -92,7 +92,7 @@ export default {
this.stage++;
if (!this.$refs["stage" + this.stage]) {
localStorage.setItem("lastRunVersion", process.env.appVersion);
localStorage.setItem("lastRunVersion", process.env.version);
localStorage.setItem("firstTimeSetupComplete", true);
this.$router.replace("/");
}

View File

@ -40,11 +40,11 @@ export default {
this.lang = this.$lang("events");
this.oldVer = localStorage.getItem("lastRunVersion").substring(0, 7);
this.newVer = process.env.appVersion.substring(0, 7);
this.newVer = process.env.version.substring(0, 7);
},
methods: {
okay() {
localStorage.setItem("lastRunVersion", process.env.appVersion);
localStorage.setItem("lastRunVersion", process.env.version);
this.$router.replace("/");
},
},

View File

@ -30,7 +30,7 @@ export default {
await this.theming();
//--- Update Screen ---//
if ( (localStorage.getItem("lastRunVersion") != null) && (localStorage.getItem("lastRunVersion") != process.env.appVersion) ) return this.$router.replace("/activities/update");
if ( (localStorage.getItem("lastRunVersion") != null) && (localStorage.getItem("lastRunVersion") != process.env.version) ) return this.$router.replace("/activities/update");
//--- Start Innertube Connection ---//
await this.$youtube.getAPI();

View File

@ -22,10 +22,13 @@
"
:style="{ borderRadius: `${roundTweak / 2}rem` }"
>
<v-card-title><v-icon style="margin-right: 0.5em;">mdi-cog-box</v-icon>{{ lang.appinformation }}</v-card-title>
<v-card-title>
<v-icon style="margin-right: 0.5em">mdi-cog-box</v-icon>
{{ lang.appinformation }}
</v-card-title>
<v-card-text>
<h3>{{ lang.appversion }}</h3>
{{ version.substring(0, 7) || "Unknown" }} ({{ release }})
{{ version.substring(0, 7) || "Unknown" }} ({{ release }})
</v-card-text>
</v-card>
<!-- End App Information -->
@ -39,7 +42,10 @@
"
:style="{ borderRadius: `${roundTweak / 2}rem` }"
>
<v-card-title><v-icon style="margin-right: 0.5em;">mdi-cellphone-information</v-icon>{{ lang.deviceinformation }}</v-card-title>
<v-card-title
><v-icon style="margin-right: 0.5em">mdi-cellphone-information</v-icon
>{{ lang.deviceinformation }}</v-card-title
>
<v-card-text>
<h3>{{ lang.platform }}</h3>
{{ deviceInfo.platform || "Unknown" }}<br />
@ -93,8 +99,8 @@ import { Device } from "@capacitor/device";
export default {
data() {
return {
version: process.env.appVersion,
release: process.env.release,
version: process.env.version,
release: process.env.channel,
deviceInfo: "",
lang: {},
};

View File

@ -2,9 +2,9 @@
<div>
<!-- Top Notice -->
<center style="margin: 2em">
<h1>Registry Editor</h1>
<h1>{{ lang.registryeditor }}</h1>
<v-alert text outlined type="warning">
CHANGING ENTRIES MAY CAUSE YOUR APP TO BREAK!
{{ lang.registrywarning }}
</v-alert>
</center>
@ -18,7 +18,7 @@
"
>
<v-icon style="margin-right: 0.25em">mdi-plus</v-icon>
Create Entry
{{ lang.createentry }}
</v-btn>
</center>
@ -53,18 +53,20 @@
$vuetify.theme.dark ? 'background lighten-1' : 'background darken-1'
"
>
<v-card-title class="text-h5">Confirm Delete</v-card-title>
<v-card-title class="text-h5">{{ lang.confirmdelete }}</v-card-title>
<v-card-text
>Are you sure that you want to delete
>{{ lang.areyousure }}
<span class="highlight" v-text="selectedKey" />?</v-card-text
>
<v-divider />
<v-card-actions>
<v-spacer></v-spacer>
<v-btn color="primary" text @click="deleteDialog = false"
>Cancel</v-btn
>
<v-btn color="primary" text @click="deleteKey()">Delete</v-btn>
<v-btn color="primary" text @click="deleteDialog = false">
{{ lang.cancel }}
</v-btn>
<v-btn color="primary" text @click="deleteKey()">
{{ lang.delete }}
</v-btn>
</v-card-actions>
</v-card>
</v-dialog>
@ -84,8 +86,12 @@
<v-divider />
<v-card-actions>
<v-spacer></v-spacer>
<v-btn color="primary" text @click="editDialog = false">Cancel</v-btn>
<v-btn color="primary" text @click="updateKey()">Change</v-btn>
<v-btn color="primary" text @click="editDialog = false">
{{ lang.cancel }}
</v-btn>
<v-btn color="primary" text @click="updateKey()">
{{ lang.change }}
</v-btn>
</v-card-actions>
</v-card>
</v-dialog>
@ -98,12 +104,12 @@
$vuetify.theme.dark ? 'background lighten-1' : 'background darken-1'
"
>
<v-card-title class="text-h5">Create Registry Entry</v-card-title>
<v-card-title class="text-h5">{{ lang.createentryfull }}</v-card-title>
<v-card-text>
<v-text-field v-model="selectedKey" label="Key" solo />
<v-text-field v-model="selectedKey" :label="lang.key" solo />
<v-text-field
v-model="selectedKeyData"
label="Value"
:label="lang.value"
solo
style="margin-bottom: -2em"
/>
@ -111,8 +117,12 @@
<v-divider />
<v-card-actions>
<v-spacer></v-spacer>
<v-btn color="primary" text @click="addDialog = false">Cancel</v-btn>
<v-btn color="primary" text @click="createKey()">Create</v-btn>
<v-btn color="primary" text @click="addDialog = false">
{{ lang.cancel }}
</v-btn>
<v-btn color="primary" text @click="createKey()">
{{ lang.create }}
</v-btn>
</v-card-actions>
</v-card>
</v-dialog>
@ -121,14 +131,9 @@
<script>
export default {
computed: {
roundTweak() {
return this.$store.state.tweaks.roundTweak;
},
},
data() {
return {
lang: {},
keys: [],
selectedKey: null,
@ -138,8 +143,15 @@ export default {
addDialog: false,
};
},
computed: {
roundTweak() {
return this.$store.state.tweaks.roundTweak;
},
},
mounted() {
this.syncRegistry();
const lang = this.$lang();
this.lang = lang.mods.developer;
},
methods: {

View File

@ -20,18 +20,16 @@ export default {
components: {
language,
},
data() {
return {
lang: {},
};
},
computed: {
roundTweak() {
return this.$store.state.tweaks.roundTweak;
},
},
data() {
return {
lang: { mods: { general: { language: "" } } },
};
},
mounted() {
const lang = this.$lang();
this.lang = lang.mods.general;

View File

@ -42,7 +42,7 @@ export default {
data() {
return {
plugins: [],
installedVersion: process.env.appVersion,
installedVersion: process.env.version,
};
},
async mounted() {

View File

@ -1,12 +1,23 @@
<template>
<div style="padding: 2em;">
<v-icon x-large color="primary" style="padding-bottom: 0.25em;">mdi-cellphone-arrow-down</v-icon>
<div style="padding: 2em">
<v-icon x-large color="primary" style="padding-bottom: 0.25em">
mdi-cellphone-arrow-down
</v-icon>
<div v-if="status == 'checking'">
<h1>{{ lang.checking }}</h1>
<div>{{ lang.installed }}: {{ installedVersion }}</div>
<div>
{{ lang.installed }}:
{{ installedVersion.substring(0, 7) || "Unknown" }}
({{ installedChannel }})
</div>
<center>
<v-progress-circular indeterminate color="primary" size="75" style="padding-top: 10em;" />
<v-progress-circular
indeterminate
style="padding-top: 10em"
color="primary"
size="75"
/>
</center>
</div>
@ -15,46 +26,77 @@
<p>{{ lang.noupdatemessage }}</p>
<div class="bottom">
<v-btn rounded @click="getLatest">{{ lang.refresh }}</v-btn>
<v-btn rounded color="primary" @click="$router.go(-1)">{{ lang.okay }}</v-btn>
<v-btn
rounded
depressed
color="primary"
class="background--text"
@click="$router.go(-1)"
>
{{ lang.okay }}
</v-btn>
</div>
</div>
<div v-if="status == 'available'">
<h1 v-if="!downloading">{{ lang.available }}</h1>
<h1 v-if="downloading">{{ lang.updating }}</h1>
<div>{{ lang.installed }}: {{ installedVersion }}</div>
<div>
{{ lang.installed }}:
{{ installedVersion.substring(0, 7) || "Unknown" }}
({{ installedChannel }})
</div>
<div>{{ lang.latest }}: {{ latestVersion.tag_name }}</div>
<div style="margin-top: 1em; color: #999;">
<div>{{ lang.published }}: {{ new Date(update.created_at).toLocaleString() }}</div>
<div>{{ lang.size }}: {{ require("~/plugins/utils").humanFileSize(update.size) }}</div>
<div style="margin-top: 1em; color: #999">
<div>
{{ lang.published }}:
{{ new Date(update.created_at).toLocaleString() }}
</div>
<div>
{{ lang.size }}:
{{ require("~/plugins/utils").humanFileSize(update.size) }}
</div>
<div>{{ lang.users }}: {{ update.download_count }}</div>
</div>
<div style="margin-top: 1em; color: #999"><b>Changelog</b></div>
<p style="white-space: pre-line; color: #999">
{{ latestVersion.body.trim() }}
</p>
<div style="margin-top: 1em; color: #999;"><b>Changelog</b></div>
<p style="white-space: pre-line; color: #999;">{{ latestVersion.body.trim() }}</p>
<v-progress-linear
v-if="downloading"
style="position: absolute; top: 0; width: 100%; left: 0"
color="primary"
indeterminate
/>
<v-progress-linear indeterminate color="primary" v-if="downloading" style="position: absolute; top: 0; width: 100%; left: 0;" />
<div class="bottom" v-if="!downloading">
<v-btn rounded @click="$router.go(-1)">{{ lang.later }}</v-btn>
<v-btn rounded color="primary" @click="install()">{{ lang.update }}</v-btn>
<div v-if="!downloading" class="bottom">
<v-btn
rounded
depressed
:class="
$vuetify.theme.dark ? 'background lighten-1' : 'background darken-1'
"
@click="$router.go(-1)"
>
{{ lang.later }}
</v-btn>
<v-btn
rounded
depressed
class="background--text ml-2"
color="primary"
@click="install()"
>
{{ lang.update }}
</v-btn>
</div>
</div>
</div>
</template>
<style scoped>
.bottom {
position: absolute;
bottom: 0;
right: 0;
padding: 2em;
}
</style>
<script>
import { Device } from "@capacitor/device";
@ -62,7 +104,8 @@ export default {
layout: "empty",
data() {
return {
installedVersion: process.env.appVersion,
installedVersion: process.env.version,
installedChannel: process.env.channel,
latestVersion: "",
lang: {},
status: "checking",
@ -78,7 +121,6 @@ export default {
},
methods: {
async getUpdate() {
const device = await Device.getInfo();
const platform = device.platform;
@ -92,29 +134,29 @@ export default {
//--- Pick String For Platform From Above Array ---//
if (platform == "ios") {
this.update = downloads.filter(m => m.includes('.ipa'))[0];
this.update = downloads.filter((m) => m.includes(".ipa"))[0];
} else {
this.update = downloads.filter(m => m.includes('.apk'))[0];
this.update = downloads.filter((m) => m.includes(".apk"))[0];
}
//--- Set Update As Full Data ---//
for (const i in this.latestVersion.assets) {
const asset = this.latestVersion.assets[i];
if (asset.browser_download_url == this.update) {
return this.update = asset;
return (this.update = asset);
}
}
},
async getLatest() {
//--- Get Latest Version ---//
//--- Get Latest Version ---//
this.status = "checking";
const releases = await this.$vuetube.releases;
this.latestVersion = releases[0];
//--- Wait like 2 seconds because if people don't see loading, they think it didn't refresh properly ---//
if (!this.$route.query.nowait) await require("~/plugins/utils").delay(2000);
if (!this.$route.query.nowait)
await require("~/plugins/utils").delay(2000);
//--- Get Proper File ---//
this.getUpdate();
@ -129,10 +171,20 @@ export default {
async install() {
this.downloading = true;
await this.$update(this.update.browser_download_url).catch(() => { this.downloading = false; });
await this.$update(this.update.browser_download_url).catch(() => {
this.downloading = false;
});
//window.open(this.update.browser_download_url, '_blank');
}
}
},
},
};
</script>
<style scoped>
.bottom {
position: absolute;
padding: 2em;
bottom: 0;
right: 0;
}
</style>

View File

@ -12,6 +12,7 @@ const packs = {
"french-fr": require("./languages/french-fr"),
german: require("./languages/german"),
hindi: require("./languages/hindi"),
marathi: require("./languages/marathi"),
hungarian: require("./languages/hungarian"),
indonesian: require("./languages/indonesian"),
italian: require("./languages/italian"),
@ -21,6 +22,7 @@ const packs = {
polish: require("./languages/polish"),
romanian: require("./languages/romanian"),
russian: require("./languages/russian"),
serbian: require("./languages/serbian"),
spanish: require("./languages/spanish"),
tamil: require("./languages/tamil"),
turkish: require("./languages/turkish"),

View File

@ -7,8 +7,9 @@ module.exports = {
library: "Library",
restart: "Restart",
later: "Later",
settingRestart: "Modifying this setting requires the app to restart for the changes to be applied.",
okay: "Okay"
settingRestart:
"Modifying this setting requires the app to restart for the changes to be applied.",
okay: "Okay",
},
index: {
@ -59,7 +60,8 @@ module.exports = {
checking: "Checking for updates",
available: "Update available",
noupdate: "No updates available",
noupdatemessage: "You're using the most recent version of VueTube. Check back later for updates.",
noupdatemessage:
"You're using the most recent version of VueTube. Check back later for updates.",
installed: "Installed Version",
latest: "Latest Version",
@ -88,6 +90,20 @@ module.exports = {
github: "GitHub",
discord: "Discord",
},
developer: {
registryeditor: "Registry editor",
registrywarning: "CHANGING ENTRIES MAY CAUSE YOUR APP TO BREAK!",
createentry: "Create entry",
createentryfull: "Create registry entry",
cancel: "Cancel",
create: "Create",
key: "Key",
value: "Value",
confirmdelete: "Confirm delete",
areyousure: "Are you sure that you want to delete",
delete: "Delete",
change: "Change",
},
},
events: {
@ -102,6 +118,6 @@ module.exports = {
enablespb: "Enable SponsorBlock",
thanks: "Thanks for Using VueTube",
enjoy: "We hope you have an amazing experience",
packageinstaller: "Select a Package to Download"
packageinstaller: "Select a Package to Download",
},
};

View File

@ -1,102 +1,105 @@
module.exports = {
name: "हिन्दी",
global: {
home: "होम",
subscriptions: "सदस्यता",
library: "लाइब्रेरी",
restart: "पुनरारंभ",
name: "हिन्दी",
global: {
home: "होम",
subscriptions: "सदस्यता",
library: "लाइब्रेरी",
restart: "पुनरारंभ",
later: "बाद में",
settingRestart:
"ये सेटिंग मै बदलाव लाने के बाद, परिवर्तन देखने के लिए ऐप को पुनरारंभ करना होगा।",
okay: "ठीक है",
},
index: {
connecting: "कनेक्टिंग",
plugins: "प्लग-इन लोड किये जा रहे हैं",
launching: "लॉन्चिंग",
},
settings: {
general: "सामान्य",
theme: "थीम",
player: "प्लेयर",
uitweaker: "यूआई ट्वीकर",
startupoptions: "चालू करने के विकल्प",
plugins: "प्लग-इन",
updates: "अपडेट",
logs: "लॉग",
about: "बारे में",
devmode: "डेवलपर मोड",
},
mods: {
general: {
language: "भाषा",
},
theme: {
normal: "सामान्य",
adaptive: "अनुकूली",
custom: "कस्टम",
dark: "डार्क",
black: "काला",
darkmode: "डार्क मोड",
darkmodetagline: "ब्रावो सिक्स, गोइंग डार्क।",
},
tweaks: {
fullscreen: "फ़ुल स्क्रीन",
navbarblur: "नेवबार धुंधला",
roundedcorners: "गोल कोने",
roundthumbnails: "गोल थंबनेल",
roundwatchpagecomponents: "गोल वॉच पेज कंपोनेंट्स",
radius: "रेडियस",
},
startup: {
defaultpage: "निर्धारित पेज",
},
updates: {
updating: "अपडेट डाउनलोड हो रहा है",
checking: "अपडेट की जाँच हो रही है",
available: "अपडेट उपलब्ध",
noupdate: "अपडेट उपलब्ध नहीं है",
noupdatemessage:
"आप VueTube का सबसे हाल ही का संस्करण इस्तमाल कर रहे हों। अपडेट के लिए बादमे आय।",
installed: "इंस्टॉल संस्करण",
latest: "नवीनतम संस्करण",
okay: "ठीक है",
refresh: "रिफ्रेश",
update: "अपडेट",
later: "बाद में",
settingRestart: "ये सेटिंग मै बदलाव लाने के बाद, परिवर्तन देखने के लिए ऐप को पुनरारंभ करना होगा।",
okay: "ठीक है"
},
index: {
connecting: "कनेक्टिंग",
plugins: "प्लग-इन लोड किये जा रहे हैं",
launching: "लॉन्चिंग",
logs: {
more: "और",
},
settings: {
general: "सामान्य",
theme: "थीम",
player: "प्लेयर",
uitweaker: "यूआई ट्वीकर",
startupoptions: "चालू करने के विकल्प",
plugins: "प्लग-इन",
updates: "अपडेट",
logs: "लॉग",
about: "बारे में",
devmode: "रजिस्ट्रि संपादक",
about: {
appinformation: "ऐप की जानकारी",
appversion: "ऐप संस्करण",
deviceinformation: "डिवाइस की जानकारी",
platform: "प्लेटफार्मों",
os: "ऑपरेटिंग सिस्टम",
model: "मॉडल",
manufacturer: "उत्पादक",
emulator: "एम्यूलेटर",
github: "GitHub",
discord: "Discord",
},
mods: {
general: {
language: "भाषा",
},
theme: {
normal: "सामान्य",
adaptive: "अनुकूली",
custom: "कस्टम",
dark: "डार्क",
black: "काला",
darkmode: "डार्क मोड",
darkmodetagline: "ब्रावो सिक्स, गोइंग डार्क।",
},
tweaks: {
fullscreen: "फ़ुल स्क्रीन",
navbarblur: "नेवबार धुंधला",
roundedcorners: "गोल कोने",
roundthumbnails: "गोल थंबनेल",
roundwatchpagecomponents: "गोल वॉच पेज कंपोनेंट्स",
radius: "रेडियस",
},
startup: {
defaultpage: "निर्धारित पेज",
},
updates: {
checking: "अपडेट की जाँच हो रही है",
available: "अपडेट उपलब्ध",
noupdate: "अपडेट उपलब्ध नहीं है",
noupdatemessage: "आप VueTube का सबसे हाल ही का संस्करण इस्तमाल कर रहे हों। अपडेट के लिए बादमे आय।",
installed: "इंस्टॉल संस्करण",
latest: "नवीनतम संस्करण",
okay: "ठीक है",
update: "अपडेट",
later: "बाद में",
},
logs: {
more: "और",
},
about: {
appinformation: "ऐप की जानकारी",
appversion: "ऐप संस्करण",
deviceinformation: "डिवाइस की जानकारी",
platform: "प्लेटफार्मों",
os: "ऑपरेटिंग सिस्टम",
model: "मॉडल",
manufacturer: "उत्पादक",
emulator: "एम्यूलेटर",
github: "GitHub",
discord: "Discord",
},
},
events: {
welcome: "VueTube में आपका स्वागत हैं!",
tagline: "वीडियो स्ट्रीमिंग का भविष्य",
next: "अगला",
updated: "VueTube को अपडेट किया गया है",
awesome: "बहुत बढ़िया",
langsetup: "आइए एक भाषा चुनते हैं!",
featuresetup: "आइए कुछ सुविधाएं चुनें!",
enableryd: "Return YouTube Dislike को चालू करे",
enablespb: "SponsorBlock को चालू करे",
thanks: "VueTube इस्तेमाल करने के लिए धन्यवाद!",
enjoy: "हमें उम्मीद है कि आपको अद्भुत अनुभव मिला होगा",
packageinstaller: "डाउनलोड करने के लिए पैकेज चुनें"
},
};
},
events: {
welcome: "VueTube में आपका स्वागत हैं!",
tagline: "वीडियो स्ट्रीमिंग का भविष्य",
next: "अगला",
updated: "VueTube को अपडेट किया गया है",
awesome: "बहुत बढ़िया",
langsetup: "आइए एक भाषा चुनते हैं!",
featuresetup: "आइए कुछ सुविधाएं चुनें!",
enableryd: "Return YouTube Dislike को चालू करे",
enablespb: "SponsorBlock को चालू करे",
thanks: "VueTube इस्तेमाल करने के लिए धन्यवाद!",
enjoy: "हमें उम्मीद है कि आपको अद्भुत अनुभव मिला होगा",
packageinstaller: "डाउनलोड करने के लिए पैकेज चुनें",
},
};

View File

@ -7,8 +7,9 @@ module.exports = {
library: "Könyvtár",
restart: "Újraindítás",
later: "Később",
settingRestart: "Ennek a beállításnak az igénybevételéhez újra kell indítani az applikációt.",
okay: "Oké"
settingRestart:
"Ennek a beállításnak az igénybevételéhez újra kell indítani az applikációt.",
okay: "Oké",
},
index: {
@ -35,7 +36,7 @@ module.exports = {
language: "Nyelv",
},
theme: {
normal: "Normal",
normal: "Normál",
adaptive: "Alkalmazkodó",
custom: "Egyéni",
dark: "Sötét",
@ -59,7 +60,8 @@ module.exports = {
checking: "Frissítések keresése",
available: "Frissítés elérhető",
noupdate: "Nincs elérhető frissítés",
noupdatemessage: "A legújabb verzióját használod a VueTube-nak. Nézz vissza később a frissítésekért.",
noupdatemessage:
"A legújabb verzióját használod a VueTube-nak. Nézz vissza később a frissítésekért.",
installed: "Telepített Verzió",
latest: "Legújabb Verzió",
@ -88,6 +90,20 @@ module.exports = {
github: "GitHub",
discord: "Discord",
},
developer: {
registryeditor: "Beállításszerkesztő",
registrywarning: "A BEJEGYZÉSEK MÓDOSÍTÁSA AZ ALKALMAZÁS NEM MŰKÖDÉSÉT OKOZHATJA!",
createentry: "Bejegyzés létrehozása",
createentryfull: "Beállításszerkesztő létrehozása",
cancel: "Mégse",
create: "Létrehozás",
key: "Kulcs",
value: "Érték",
confirmdelete: "Törlés jóváhagyása",
areyousure: "Biztos benne, hogy törölni szeretné?",
delete: "Törlés",
change: "Változás",
},
},
events: {

View File

@ -25,7 +25,7 @@ module.exports = {
startupoptions: "Opsi Startup",
plugins: "Plugin",
updates: "Pembaruan",
logs: "Log",
logs: "Catatan",
about: "Tentang",
devmode: "Mode pengembang",
},
@ -37,7 +37,7 @@ module.exports = {
theme: {
normal: "Normal",
adaptive: "Adaptif",
custom: "Custom",
custom: "Kustom",
dark: "Gelap",
black: "Hitam",
darkmode: "Mode Gelap",
@ -88,6 +88,20 @@ module.exports = {
github: "GitHub",
discord: "Discord",
},
developer: {
registryeditor: "Editor registri",
registrywarning: "MENGUBAH ENTRI DAPAT MENYEBABKAN APLIKASI ANDA RUSAK!",
createentry: "Buat entri",
createentryfull: "Buat entri registri",
cancel: "Batal",
create: "Buat",
key: "Kunci",
value: "Nilai",
confirmdelete: "Konfirmasi penghapusan",
areyousure: "Apakah kamu yakin ingin menghapus",
delete: "Hapus",
change: "Ubah",
},
},
events: {

View File

@ -7,7 +7,8 @@ module.exports = {
library: "Pustaka",
restart: "Mulakan semula",
later: "Kemudian",
settingRestart: "Mengubah tetapan ini memerlukan apl untuk dimulakan semula untuk menerapkan tetapan."
settingRestart: "Mengubah tetapan ini memerlukan apl untuk dimulakan semula untuk menerapkan tetapan.",
okay: "OK",
},
index: {
@ -67,6 +68,7 @@ module.exports = {
size: "Saiz kemaskini",
okay: "OK",
refresh: "Muat semula",
update: "Kemaskini",
later: "Kemudian",
},
@ -92,7 +94,7 @@ module.exports = {
tagline: "Masa hadapan penstriman video",
next: "Seterusnya",
updated: "VueTube telah dikemaskini!",
awesome: "Hebat!",
awesome: "Hebat",
langsetup: "Sila pilih bahasa anda",
featuresetup: "Sila pilih beberapa ciri",
enableryd: "Dayakan Return YouTube Dislike",

View File

@ -0,0 +1,105 @@
module.exports = {
name: "मराठी",
global: {
home: "होम",
subscriptions: "सदस्यता",
library: "लाइब्रेरी",
restart: "पुन्हा सुरू करा",
later: "नंतर",
settingRestart:
"या सेटिंगमध्ये बदल करण्‍यासाठी अ‍ॅपला बदल लागू करण्‍यासाठी रीस्टार्ट करणे आवश्‍यक आहे.",
okay: "ठीक आहे",
},
index: {
connecting: "कनेक्ट करत आहे",
plugins: "प्लग-इन लोड करत आहे",
launching: "प्रक्षेपण",
},
settings: {
general: "सामान्य",
theme: "थीम",
player: "प्लेयर",
uitweaker: "यूआई ट्वीकर",
startupoptions: "स्टार्टअप पर्याय",
plugins: "प्लग-इन",
updates: "अद्यतने",
logs: "लॉग",
about: "विषयी",
devmode: "विकसक मोड",
},
mods: {
general: {
language: "भाषा",
},
theme: {
normal: "सामान्य",
adaptive: "अनुकूली",
custom: "कस्टम",
dark: "डार्क",
black: "काळा",
darkmode: "डार्क मोड",
darkmodetagline: "ब्रावो सिक्स, गोइंग डार्क।",
},
tweaks: {
fullscreen: "फ़ुल स्क्रीन",
navbarblur: "नेवबार अस्पष्ट",
roundedcorners: "गोलाकार कोपरे",
roundthumbnails: "गोलाकार थंबनेल",
roundwatchpagecomponents: "गोल वॉच पृष्ठ कंपोनेंट्स",
radius: "रेडियस",
},
startup: {
defaultpage: "डीफॉल्ट पृष्ठ",
},
updates: {
updating: "अपडेट डाउनलोड करत आहे",
checking: "अपडेट तपासत आहे",
available: "अपडेट उपलब्ध आहे",
noupdate: "अपडेट उपलब्ध नाही",
noupdatemessage:
"तुम्ही VueTube ची नवीनतम आवृत्ती वापरत आहात. अपडेटसाठी नंतर परत तपासा.",
installed: "इंस्टॉल केलेली आवृत्ती",
latest: "नवीनतम आवृत्ती",
okay: "ठीक आहे",
refresh: "रिफ्रेश",
update: "अपडेट",
later: "नंतर",
},
logs: {
more: "अधिक",
},
about: {
appinformation: "ऐप माहिती",
appversion: "ऐप आवृत्ती",
deviceinformation: "डिवाइस माहिती",
platform: "प्लेटफार्मों",
os: "ऑपरेटिंग सिस्टम",
model: "मॉडल",
manufacturer: "उत्पादक",
emulator: "एम्यूलेटर",
github: "GitHub",
discord: "Discord",
},
},
events: {
welcome: "VueTube वर आपले स्वागत आहे!",
tagline: "व्हिडिओ स्ट्रीमिंगचे भविष्य",
next: "पुढे",
updated: "VueTube अद्यतनित केले होते",
awesome: "छान",
langsetup: "चला एक भाषा निवडा!",
featuresetup: "चला काही वैशिष्ट्ये निवडा!",
enableryd: "Return YouTube Dislike चालू करा",
enablespb: "SponsorBlock चालू करा",
thanks: "VueTube वापरल्याबद्दल धन्यवाद!",
enjoy: "आम्हाला आशा आहे की तुम्हाला एक आश्चर्यकारक अनुभव मिळेल",
packageinstaller: "डाउनलोड करण्यासाठी पॅकेज निवडा",
},
};

View File

@ -89,6 +89,20 @@ module.exports = {
github: "GitHub",
discord: "Discord",
},
developer: {
registryeditor: "Editor del registro",
registrywarning: "¡CAMBIAR ENTRADAS PODRÍA ROMPER LA APLICACIÓN!",
createentry: "Crear entrada",
createentryfull: "Crear entrada del registro",
cancel: "Cancelar",
create: "Crear",
key: "Clave",
value: "Valor",
confirmdelete: "Confirmar borrado",
areyousure: "¿Estás seguro de que quieres eliminar",
delete: "Borrar",
change: "Cambiar",
},
},
events: {

View File

@ -1,7 +1 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="100%" height="100%" viewBox="0 0 512 512" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
<g transform="matrix(1.99234,0,0,1.99234,52.4337,-0.543689)">
<path d="M157.768,142.391C168.454,136.236 168.454,120.814 157.766,114.66L157.761,114.658L121.527,93.811L161.399,75.218L175.714,83.453L175.736,83.466L216.392,106.857C233.102,116.471 233.102,140.582 216.392,150.196L175.743,173.582L175.714,173.599L158.778,183.343L118.905,164.75L157.761,142.395L157.768,142.391ZM36,163.605L36,184.79C36.005,197.092 49.314,204.788 59.979,198.652L82.89,185.471L122.763,204.063L77.932,229.856L77.903,229.873L37.467,253.137C20.801,262.726 0,250.695 0,231.467L0,146.818L36,163.605ZM125.384,54.497L85.512,73.09L59.979,58.4L59.964,58.392C49.3,52.27 36,59.968 36,72.269L36,96.178L0,112.965L0,25.585C0,6.357 20.801,-5.673 37.467,3.916L77.917,27.187L77.932,27.196L125.384,54.497Z" style="fill:white;"/>
</g>
</svg>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100%" height="100%" version="1.1" viewBox="0 0 512 512" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2"><g><path d="M157.768,142.391C168.454,136.236 168.454,120.814 157.766,114.66L157.761,114.658L121.527,93.811L161.399,75.218L175.714,83.453L175.736,83.466L216.392,106.857C233.102,116.471 233.102,140.582 216.392,150.196L175.743,173.582L175.714,173.599L158.778,183.343L118.905,164.75L157.761,142.395L157.768,142.391ZM36,163.605L36,184.79C36.005,197.092 49.314,204.788 59.979,198.652L82.89,185.471L122.763,204.063L77.932,229.856L77.903,229.873L37.467,253.137C20.801,262.726 0,250.695 0,231.467L0,146.818L36,163.605ZM125.384,54.497L85.512,73.09L59.979,58.4L59.964,58.392C49.3,52.27 36,59.968 36,72.269L36,96.178L0,112.965L0,25.585C0,6.357 20.801,-5.673 37.467,3.916L77.917,27.187L77.932,27.196L125.384,54.497Z" transform="matrix(1.99234,0,0,1.99234,52.4337,-0.543689)" style="fill:#fff"/></g></svg>

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -99,7 +99,14 @@ Plans
You can suggest your own feature opening a feature request issue in this repository.
## Screenshots
<h2 align="left">
<sub>
<img src="resources/readme_icon_screenshots.png"
height="30"
width="30">
</sub>
Screenshots
</h2>
[View them on our website](https://www.vuetube.app/info/screenshots) or click below to display them.
@ -113,7 +120,29 @@ You can suggest your own feature opening a feature request issue in this reposit
</details>
## Progress
<h2 align="left">
<sub>
<img src="resources/readme_icon_community.png"
height="30"
width="30">
</sub>
Community
</h2>
We use several different platforms to connect with our community. You can actively participate in the development of VueTube or simply keep up to date with all the news joining these groups:
- Discord server (https://vuetube.app/discord)
- Telegram group (https://t.me/vuetube)
- Reddit page (https://www.reddit.com/r/vuetube)
<h2 align="left">
<sub>
<img src="resources/readme_icon_progress.png"
height="30"
width="30">
</sub>
Progress
</h2>
<details>
<summary> 🖱️ Click to display progress </summary>
@ -160,7 +189,14 @@ Thank you for being interested on contributing! Please read our website on how t
If you want to translate the app, [click here](/NUXT/plugins/languages) and read the instructions. If GitHub is hard or uncomfortable to you, you can also send the fields translated in a text file on our [Discord](https://vuetube.app/discord) and we will implement them. Don't worry!
## GitHub Contributors
<h2 align="left">
<sub>
<img src="resources/readme_icon_github.png"
height="30"
width="30">
</sub>
GitHub contributors
</h2>
<a href="https://github.com/VueTubeApp/VueTube/graphs/contributors">
<img src="https://contrib.rocks/image?repo=VueTubeApp/VueTube" />
@ -168,14 +204,28 @@ If you want to translate the app, [click here](/NUXT/plugins/languages) and read
<sub>Dashboard made automatically with [contrib.rocks](https://contrib.rocks). </sub>
## Acknowledgements
<h2 align="left">
<sub>
<img src="resources/readme_icon_acknowledgements.png"
height="30"
width="30">
</sub>
Acknowledgements
</h2>
- Emojis by the [Twemoji team](https://twemoji.twitter.com/), Licensed under [CC-BY 4.0](https://creativecommons.org/licenses/by/4.0/).
- VueTube Logo by [@afnzmn](https://github.com/afnzmn).
- Public YouTube dislike data provided by [Return Youtube Dislike](https://returnyoutubedislike.com).
- Ajay & Community for providing the [Sponsorblock API](https://sponsor.ajay.app), Licensed under [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/).
## Donate
<h2 align="left">
<sub>
<img src="resources/readme_icon_donate.png"
height="30"
width="30">
</sub>
Donate
</h2>
VueTube is and always will be free and open source, but you can support our devs with a donation that will help to maintain the project and develop new features. Every kind of help is welcome! These are the donating options avaiable:
@ -183,12 +233,47 @@ VueTube is and always will be free and open source, but you can support our devs
[Donate to PickleNik on GitHub](https://github.com/sponsors/PickleNik) (Maintainer)
## Disclaimer
<h2 align="left">
<sub>
<img src="resources/readme_icon_disclaimer.png"
height="30"
width="30">
</sub>
Disclaimer
</h2>
The VueTube project and its contents are not affiliated with, funded, authorized, endorsed by, or in any way accociated with YouTube, Google LLC or any of its affiliates and subsidaries. The official YouTube website can be found at [youtube.com](https://www.youtube.com).
Any trademark, service mark, trade name, or other intellectual property rights used in the VueTube project are owned by the respective owners.
<h2 align="left">
<sub>
<img src="resources/readme_icon_otherrepos.png"
height="30"
width="30">
</sub>
Other VueTube repos
</h2>
<details>
<summary> 🖱️ Click to display repos </summary>
<br>
[![VueTube Extractor](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=VueTube-Extractor)](https://github.com/VueTubeApp/VueTube-Extractor)
**VueTube Extractor** is a library designed to extract data from streaming services, designed for use in VueTube App.
[![VueTube Translator](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=VueTube-Translator)](https://github.com/VueTubeApp/VueTube-Translator)
**VueTube Translator** is a tool for translating fields of Github files like JSON or JS and export the result with the correct structure. It was created to help VueTube translators but it can be used for any other purpose.
[![VueTube HTTP](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=vuetube-http)](https://github.com/VueTubeApp/vuetube-http)
**VueTube HTTP** is a plugin for native HTTP requests, file download/uploads, and cookie management. It's a fork of the [original HTTP project](https://github.com/capacitor-community/http) from Capacitor Community, with additions by the VueTube Team.
</details>
<hr>
<p align="center">

View File

@ -99,7 +99,14 @@ Tervek
Tudsz ajánlani funkciókat egy funkció kérés issue-val a projekt repository-ával.
## Képernyőképek
<h2 align="left">
<sub>
<img src="https://raw.githubusercontent.com/VueTubeApp/VueTube/main/resources/readme_icon_screenshots.png"
height="30"
width="30">
</sub>
Képernyőképek
</h2>
[Nézze meg őket a weboldalunkon](https://www.vuetube.app/info/screenshots) vagy nyomjon rá a lenti szövegre.
@ -113,7 +120,29 @@ Tudsz ajánlani funkciókat egy funkció kérés issue-val a projekt repository-
</details>
## Folyamat
<h2 align="left">
<sub>
<img src="https://raw.githubusercontent.com/VueTubeApp/VueTube/main/resources/readme_icon_community.png"
height="30"
width="30">
</sub>
Közösség
</h2>
Számos különböző platformot használunk a közösségünkkel való kapcsolattartásra. Aktívan részt vehet a VueTube fejlesztésében, vagy egyszerűen csak értesülhet az összes hírről az alábbi csoportokhoz csatlakozva:
- Discord szerver (https://vuetube.app/discord)
- Telegram group (https://t.me/vuetube)
- Subreddit (https://www.reddit.com/r/vuetube)
<h2 align="left">
<sub>
<img src="https://raw.githubusercontent.com/VueTubeApp/VueTube/main/resources/readme_icon_progress.png"
height="30"
width="30">
</sub>
Folyamat
</h2>
<details>
<summary> 🖱️ Kattintson ide a folyamat megjelenítéséhez </summary>
@ -160,7 +189,14 @@ Köszönjük, hogy érdeklődik a közreműködés iránt! Kérjük, olvassa el
Ha le szeretné fordítani az alkalmazást, [nyomjon ide](/NUXT/plugins/languages) és olvassa el az instrukciókat. Ha a GitHub használata nehéz vagy kényelmetlen számára, a mezőket szöveges fájlban is elküldheti a mi [Discordunkon](https://vuetube.app/discord) és mi megvalósítjuk őket. Ne aggódj!
## GitHub Contributors
<h2 align="left">
<sub>
<img src="https://raw.githubusercontent.com/VueTubeApp/VueTube/main/resources/readme_icon_github.png"
height="30"
width="30">
</sub>
Github Contributorok
</h2>
<a href="https://github.com/VueTubeApp/VueTube/graphs/contributors">
<img src="https://contrib.rocks/image?repo=VueTubeApp/VueTube" />
@ -168,14 +204,28 @@ Ha le szeretné fordítani az alkalmazást, [nyomjon ide](/NUXT/plugins/language
<sub>A műszerfal automatikusan készült ezzel: [contrib.rocks](https://contrib.rocks). </sub>
## Köszönetnyilvánítás
<h2 align="left">
<sub>
<img src="https://raw.githubusercontent.com/VueTubeApp/VueTube/main/resources/readme_icon_acknowledgements.png"
height="30"
width="30">
</sub>
Köszönetnyilvánítás
</h2>
- Emojik [Twemoji team](https://twemoji.twitter.com/) által, [CC-BY 4.0](https://creativecommons.org/licenses/by/4.0/) alatt engedélyezett.
- VueTube Logo [@afnzmn](https://github.com/afnzmn) által.
- Publikus YouTube dislike adat [Return Youtube Dislike](https://returnyoutubedislike.com) által.
- Ajay & közzössége által [Sponsorblock API](https://sponsor.ajay.app), [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) alatt engedélyezett.
## Támogatás
<h2 align="left">
<sub>
<img src="https://raw.githubusercontent.com/VueTubeApp/VueTube/main/resources/readme_icon_donate.png"
height="30"
width="30">
</sub>
Támogatás
</h2>
A VueTube ingyenes és nyílt forráskódú lesz örökké, de ez nem azt jelenti, hogy nem támogathatsz minket egy adománnyal amely segít fenntartani a projektet és új funkciókat fejleszteni. Mindenféle segítséget szívesen fogadunk! Ezek az adományozási lehetőségek:
@ -183,7 +233,14 @@ A VueTube ingyenes és nyílt forráskódú lesz örökké, de ez nem azt jelent
[Donate PickleNik-nek GitHub-on](https://github.com/sponsors/PickleNik) (Karbantartó)
## Figyelmeztető
<h2 align="left">
<sub>
<img src="https://raw.githubusercontent.com/VueTubeApp/VueTube/main/resources/readme_icon_disclaimer.png"
height="30"
width="30">
</sub>
Figyelmeztető
</h2>
A VueTube projekt és annak tartalma nem kapcsolódik a YouTube-hoz, a Google LLC-hez vagy annak leányvállalataihoz, nem finanszírozza, nem engedélyezi, nem támogatja, illetve semmilyen módon nem kapcsolódik azokhoz. A hivatalos YouTube webhely a [youtube.com](https://www.youtube.com) címen található.
@ -191,6 +248,36 @@ A VueTube projektben használt bármely védjegy, szolgáltatási védjegy, kere
<hr>
<h2 align="left">
<sub>
<img src="https://github.com/VueTubeApp/VueTube/blob/main/resources/readme_icon_otherrepos.png?raw=true"
height="30"
width="30">
</sub>
Egyéb VueTube repók
</h2>
<details>
<summary> 🖱️ Kattintson a repók megjelenítéséhez </summary>
<br>
[![VueTube Extractor](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=VueTube-Extractor)](https://github.com/VueTubeApp/VueTube-Extractor)
**VueTube Extractor** egy olyan könyvtár, amely adatok kinyerésére szolgál a streaming szolgáltatásokból, és a VueTube alkalmazásban használható.
[![VueTube Translator](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=VueTube-Translator)](https://github.com/VueTubeApp/VueTube-Translator)
**VueTube Translator** egy eszköz a Github-fájlok (például JSON vagy JS) mezőinek lefordításához, és az eredmény exportálásához a megfelelő szerkezettel. A VueTube fordítók segítésére hozták létre, de bármilyen más célra is használható.
[![VueTube HTTP](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=vuetube-http)](https://github.com/VueTubeApp/vuetube-http)
**VueTube HTTP** egy beépülő modul natív HTTP-kérésekhez, fájlletöltésekhez/-feltöltésekhez és cookie-kezeléshez. Ez a Capacitor Community [eredeti HTTP-projektjének](https://github.com/capacitor-community/http) elágazása, a VueTube csapatának kiegészítésével.
</details>
<hr>
<p align="center">
<sub>VueTube, boldoggá teszi az embereket és lelkesíti a szívüket 2022 óta.</sub>
<sub>VueTube, amely 2022 óta teszi boldoggá az embereket, és inspirálja a szívüket.</sub>
</p>

View File

@ -7,9 +7,9 @@
<sub>Terjemahan oleh <a href="https://github.com/QuickValve">@QuickValve</a></sub>
</br>
</br>
<strong>Sebuah klien video streaming FOSS yang bertujuan untuk membuat ulang SEMUA fitur dari aplikasi yang dibuat ulang fiturnya (dan lebih banyak lagi).</strong>
<strong>Sebuah klien streaming video sederhana dan sumber terbuka yang bertujuan untuk membuat ulang SEMUA fitur dari aplikasi yang berhubung (dan banyak lagi!)</strong>
</br>
Disebut View Tube (<code>/ˈvjuːˌtjuːb/</code>)
Dilafalkan View Tube (<code>/ˈvjuːˌtjuːb/</code>)
</p>
<p align="center">
@ -21,40 +21,42 @@ Disebut View Tube (<code>/ˈvjuːˌtjuːb/</code>)
<a href="https://twitter.com/VueTubeApp" alt="Twitter"><img src="https://img.shields.io/twitter/follow/VueTubeApp?label=Follow&style=flat&logo=twitter"></img></a>
</p>
Baca ini di bahasa lain: [English,](/readme.md) [Español,](readme.es.md) [简体中文,](readme.zh-hans.md) [繁體中文,](readme.zh-hant.md) [日本語,](readme.ja.md) [עִברִית,](readme.he.md) [Nederlands,](readme.nl.md) [தமிழ்,](readme.ta.md) [Bahasa Melayu,](readme.ms.md) [Македонски,](readme.mk.md) [Français,](readme.fr.md) [Português Brasileiro,](readme.pt-br.md) [Bahasa Indonesia,](readme.id.md) [Polski,](readme.pl.md) [Български,](readme.bg.md) [Italiano,](readme.it.md) [Magyar,](readme.hu.md) [한국어,](readme.kr.md) [Tiếng Việt,](readme.vi.md) [Română](readme.ro.md)
**Baca halaman ini di bahasa lain**: [English,](/readme.md) [Español,](readme.es.md) [简体中文,](readme.zh-hans.md) [繁體中文,](readme.zh-hant.md) [日本語,](readme.ja.md) [עִברִית,](readme.he.md) [Nederlands,](readme.nl.md) [தமிழ்,](readme.ta.md) [Bahasa Melayu,](readme.ms.md) [Македонски,](readme.mk.md) [Français,](readme.fr.md) [Português Brasileiro,](readme.pt-br.md) [Bahasa Indonesia,](readme.id.md) [Polski,](readme.pl.md) [Български,](readme.bg.md) [Italiano,](readme.it.md) [Magyar,](readme.hu.md) [한국어,](readme.kr.md) [Tiếng Việt,](readme.vi.md) [Română](readme.ro.md)
## Fitur
<img src="../resources/readme-id/Features.id.svg" alt="VueTube icon" height="100"/>
- 🎨 Tema: Terang, Gelap, OLED, Semua warna yang ada di dunia
- 🖌️ UI yang bisa di sesuaikan: Kamu bisa menyesuaikan warna aksen, dan bagian UI lainnya untuk menonaktifkan fitur yang tidak kamu gunakan!
- ⬆️ Pembaharuan Otomatis: Kamu akan diberitahu saat pembaharuan baru tersedia & kembali ke versi lama jika kamu tidak menyukainya!
- 👁️ Perlindungan dari Pelacakan: Tidak ada telemetri (informasi pribadi) yang dikirim dari perangkatmu secara bawaan
- 📺 Pemutar video custom
- 👎 Return YouTube Dislike
- 🎨 **Tema**: Terang, gelap, OLED, dan semua warna pelangi! Atur aksen dan warna latar belakang sesuai dengan preferensi kamu.
- 🖌️ **UI yang bisa disesuaikan**: Sesuaikan tombol, sudut, dan nonaktifkan bagian UI yang tidak kamu butuhkan agar mendapat pengalaman yang optimal.
- ⬆️ **Pembaruan otomatis**: Kamu akan diberitahu saat pembaruan tersedia, unduh melalui aplikasi dan kembali ke versi lama jika kamu tidak menyukainya!
- 👁️ **Perlindungan dari pelacakan**: Tidak ada data telemetri (informasi pribadi) yang dikirim dari perangkatmu secara bawaan dan kami tidak menggunakan API eksternal. Privasi dibutuhkan!
- 📺 **Pemutar video khusus**: Ada pemutar yang terintegrasi dalam aplikasi dengan semua yang kamu butuhkan, seperti kecepatan 16x.
- 🌍 **Terjemahan**: Aplikasi tersedia lebih dari 25 bahasa! Bahasa bawaan ditentukan sesuai dengan konfigurasi perangkat kamu.
- 👎 **Mengembalikan dislike YouTube**: Aktifkan penghitung dislike di video. [_Info lebih lanjut_](https://returnyoutubedislike.com)
- 💰 **SponsorBlock**: Lewati secara otomatis sponsor dan segmen yang mengganggu dalam video. [_Info lebih lanjut_](https://sponsor.ajay.app)
## Instalasi
<img src="../resources/readme-id/Install.id.svg" alt="VueTube icon" height="100"/>
Untuk menginstal aplikasi silahkan kunjungi www.vuetube.app/install
Untuk menginstal aplikasi, silakan kunjungi [vuetube.app/install](https://www.vuetube.app/install) atau periksa semua versi yang tersedia di bawah:
<details>
<summary>Atau klik disini untuk menampilkan semua versi yang ada</summary>
<summary>🖱️ Klik untuk menampilkan versi</summary>
<br />
### Android
| <a href=https://nightly.link/VueTubeApp/VueTube/workflows/ci/main/android.zip><img id="im" width="200" src=../resources/getunstable.png></a> | <a href=https://github.com/VueTubeApp/VueTube/releases/download/0.2/VueTube-Canary-June-15-2022.apk><img id="im" width="200" src=../resources/getcanary.png></a> | <a href=https://vuetube.app/install><img id="im" width="200" src=../resources/getstable.png></a> |
| <a href=https://nightly.link/VueTubeApp/VueTube/workflows/ci/main/android.zip><img id="im" width="200" src=../resources/getunstable.png></a> | <a href=https://github.com/VueTubeApp/VueTube/releases/tag/0.4.2><img id="im" width="200" src=../resources/getcanary.png></a> | <a href=https://vuetube.app/install><img id="im" width="200" src=../resources/getstable.png></a> |
| ------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| Banyak bug, tetapi akses awal ke fitur baru | Lebih sedikit bug dari unstable, sedikit lebih banyak fitur dari stable | Belum tersedia sampai aplikasi dikembangkan lebih jauh |
| Banyak bug, tapi kamu mendapatkan akses awal ke fitur baru. | Lebih sedikit bug dari unstable, sedikit lebih banyak fitur dari stable. | Belum tersedia. |
### iOS
| <a href=https://nightly.link/VueTubeApp/VueTube/workflows/ci/main/iOS.zip><img id="im" width="200" src=../resources/getunstable.png></a> | <a href=https://cdn.discordapp.com/attachments/949908267855921163/972164558930198528/VueTube-Canary-May-6-2022.ipa><img id="im" width="200" src=../resources/getcanary.png></a> | <a href=https://vuetube.app/install><img id="im" width="200" src=../resources/getstable.png></a> |
| --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------- |
| Banyak bug, tetapi akses awal ke fitur baru | Lebih sedikit bug dari unstable, sedikit lebih banyak fitur dari stable | Belum tersedia sampai aplikasi dikembangkan lebih jauh |
| Banyak bug, tapi kamu mendapatkan akses awal ke fitur baru. | Lebih sedikit bug dari unstable, sedikit lebih banyak fitur dari stable. | Belum tersedia. |
</details>
@ -62,19 +64,21 @@ Untuk menginstal aplikasi silahkan kunjungi www.vuetube.app/install
<img src="../resources/readme-id/Plans.id.svg" alt="VueTube icon" height="100"/>
- 🔍 Pencarian Lanjutan
- 🗞️ Simpan riwayat tontonan secara lokal (di perangkatmu)
- ✂️ Shorts
- 🧑 Masuk dengan akun Google
- 🖼️ Mode picture-in-picture
- 🔍 **Pencarian lanjutan**: Urutkan hasil berdasarkan tanggal, durasi, dan like atau faktor lainnya.
- 🗞️ **Riwayat history lokal**: Dapatkan video terakhir yang kamu lihat tanpa login.
- ✂️ **YouTube Shorts**: Video vertikal kecil yang berdurasi antara 15 hingga 60 detik.
- 🖼️ **Mode picture-in-picture**: Memungkinkan kamu menonton video di jendela mengambang saat menggunakan aplikasi lain.
- 🧩 **Plugin**: Instal plugin pihak ketiga yang dibuat oleh komunitas dengan berbagai fitur yang bermanfaat!
- Dan masih banyak lagi!
## Screenshot aplikasi
Kamu dapat menyarankan fitur kamu sendiri dengan membuka *issues* di repositori ini.
Kunjungi website kami: www.vuetube.app/info/screenshots
## Tangkapan layar
[Lihat di situs web kami](https://www.vuetube.app/info/screenshots) atau klik di bawah ini untuk menampilkannya.
<details>
<summary> Atau klik disini untuk menampilkan screenshot-screenshot aplikasi </summary>
<summary> 🖱️ Klik untuk menampilkan tangkapan layar </summary>
<br />
<img src="https://vuetube.app/wtch.png" width="400">
@ -83,36 +87,51 @@ Kunjungi website kami: www.vuetube.app/info/screenshots
</details>
### Teknologi yang dipakai
### Teknologi yang digunakan
<a href="https://capacitorjs.com/solution/vue"><img src="https://cdn.discordapp.com/attachments/953538236716814356/955694368742834176/Capacitator-Dark.svg" height=40/></a> <a href="https://vuetifyjs.com/"><img src="https://cdn.discordapp.com/attachments/810799100940255260/973719873467342908/Vuetify-Dark.svg" height=40/></a> <a href="https://nuxtjs.org/"><img src="https://github.com/tandpfun/skill-icons/raw/main/icons/NuxtJS-Dark.svg" height=40/></a> <a href="https://vuejs.org/"><img src="https://github.com/tandpfun/skill-icons/raw/main/icons/VueJS-Dark.svg" height=40/></a> <a href="https://javascript.com/"><img src="https://github.com/tandpfun/skill-icons/raw/main/icons/JavaScript.svg" height=40/></a> <a href="https://java.com/"><img src="https://github.com/tandpfun/skill-icons/raw/main/icons/Java-Dark.svg" height=40/></a> <a href="https://gradle.com/"><img src="https://cdn.discordapp.com/attachments/810799100940255260/955691550560636958/Gradle.svg" height=40/></a> <a href="https://developer.apple.com/swift/"><img src="https://github.com/tandpfun/skill-icons/raw/main/icons/Swift.svg" height=40/></a>
### Kenapa saya melakukan ini?
### Kenapa kami melakukan ini?
Ide ini telah dilempar di server discord Return Youtube Dislike untuk beberapa waktu, jadi saya pikir saya harus mencoba membuatnya!
VueTube dibuat dengan tujuan menyediakan alternatif lintas platform gratis, sumber terbuka, dan lengkap dengan opsi yang dapat disesuaikan. Proyek ini berkembang, menarik ribuan pengguna dan kontributor di seluruh dunia. Kamu dapat bergabung dengan kami dan berkontribusi pada proyek ini dengan cara apa pun.
### Ingin berkontribusi?
Silakan baca website kami untuk cara melakukannya: www.vuetube.app/contributing
Terima kasih telah tertarik untuk berkontribusi! Silakan baca situs web kami tentang cara melakukannya: [vuetube.app/contributing](https://www.vuetube.app/contributing).
Jika kamu ingin menerjemahkan aplikasi ini, [klik disini](/NUXT/plugins/languages) dan baca bagaimana cara melakukannya
Jika kamu ingin menerjemahkan aplikasi ini, [klik disini](/NUXT/plugins/languages) dan baca petunjuknya. Jika GitHub sulit atau tidak nyaman bagi kamu, kamu juga dapat mengirim terjemahan dalam file teks di [Discord](https://vuetube.app/discord) kami, dan kami akan menerapkannya. Jangan khawatir!
## Kontributor
## Kontributor GitHub
<a href="https://github.com/VueTubeApp/VueTube/graphs/contributors">
<img src="https://contrib.rocks/image?repo=VueTubeApp/VueTube" />
</a>
<sub>Dibuat dengan [contrib.rocks](https://contrib.rocks). </sub>
<sub>Dasbor dibuat secara otomatis dengan [contrib.rocks](https://contrib.rocks). </sub>
## Pengakuan / Penghargaan
## Ucapan Terima Kasih
- Emoji oleh [tim Twemoji](https://twemoji.twitter.com/), Dilisensikan dibawah [CC-BY 4.0](https://creativecommons.org/licenses/by/4.0/)
- Logo VueTube oleh [@afnzmn](https://github.com/afnzmn)
- Data dislike YouTube publik disediakan oleh [Return Youtube Dislike](https://returnyoutubedislike.com)
- Emoji oleh [tim Twemoji](https://twemoji.twitter.com/), Dilisensikan dibawah [CC-BY 4.0](https://creativecommons.org/licenses/by/4.0/).
- Logo VueTube oleh [@afnzmn](https://github.com/afnzmn).
- Data publik dislike YouTube disediakan oleh [Return Youtube Dislike](https://returnyoutubedislike.com).
- Ajay & komunitas untuk menyediakan [API Sponsorblock](https://sponsor.ajay.app), Dilisensikan dibawah [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/).
## Donasi
VueTube akan selalu gratis dan sumber terbuka, tapi kamu dapat mendukung pengembang kami dengan donasi yang akan membantu memelihara proyek dan mengembangkan fitur baru. Setiap jenis bantuan diterima! Berikut opsi donasi yang tersedia:
[Donasi di Ko-Fi.com](https://ko-fi.com/vuetube) (Resmi)
[Donasi ke PickleNik di GitHub](https://github.com/sponsors/PickleNik) (Pengelola)
## Peringatan
Proyek VueTube dan isinya tidak beraffiliasi dengan, didanai, diberi izin, didukung oleh, atau dengan cara apapun terkait dengan YouTube, Google LLC atau segala afiliasi dan anak perusahaannya. Website YouTube resmi bisa ditemukan di [www.youtube.com](https://www.youtube.com).
Proyek VueTube dan kontennya tidak berafiliasi dengan didanai, disahkan, didukung, atau dengan cara apa pun berafiliasi dengan YouTube, Google LLC atau afiliasi dan anak perusahaannya. Situs web resmi YouTube dapat ditemukan di [youtube.com](https://www.youtube.com).
Semua merek dagang, merek jasa, atau properti intelektual lainnya yang dipakai di proyek VueTube dimiliki oleh pemiliknya masing-masing.
Setiap merek dagang, merek layanan, nama dagang, atau hak kekayaan intelektual lainnya yang digunakan dalam proyek VueTube dimiliki oleh masing-masing pemilik.
<hr>
<p align="center">
<sub>VueTube, membuat orang bahagia dan menginspirasi hati mereka sejak 2022.</sub>
</p>

View File

@ -29,14 +29,14 @@ Baca ini dalam bahasa lain: [English,](/readme.md) [Español,](readme.es.md) [
<h2 align="left">
<sub>
<img src="resources/readme_icon_features.png"
<img src="/resources/readme_icon_features.png"
height="30"
width="30">
</sub>
Ciri-ciri
</h2>
<img src="../resources/readme-ms/Features.ms.svg" alt="VueTube icon" height="100"/>
<img src="/resources/readme-ms/Features.ms.svg" alt="VueTube icon" height="100"/>
- 🎨 **Tema:** Cerah, Gelap, OLED, dan semua warna pelangi! Tetapkan warna aksen dan latar belakang mengikut pilihan anda.
- 🖌️ **UI yang diboleh suaikan:** Sesuaikan butang, sudut dan nyahdayakan beberapa bahagian UI yang anda tidak gunakan untuk mendapat pengalaman optimum.
@ -49,14 +49,14 @@ Ciri-ciri
<h2 align="left">
<sub>
<img src="resources/readme_icon_install.png"
<img src="/resources/readme_icon_install.png"
height="30"
width="30">
</sub>
Pasang
</h2>
<img src="../resources/readme-ms/Install.ms.svg" alt="VueTube icon" height="100"/>
<img src="/resources/readme-ms/Install.ms.svg" alt="VueTube icon" height="100"/>
Untuk memasang aplikasi VueTube, sila lawati www.vuetube.app/install
@ -66,13 +66,13 @@ Untuk memasang aplikasi VueTube, sila lawati www.vuetube.app/install
### Android
| <a href=https://nightly.link/VueTubeApp/VueTube/workflows/ci/main/android.zip><img id="im" width="200" src=../resources/getunstable.png></a> | <a href=https://github.com/VueTubeApp/VueTube/releases/download/0.2/VueTube-Canary-June-15-2022.apk><img id="im" width="200" src=../resources/getcanary.png></a> | <a href=https://vuetube.app/install><img id="im" width="200" src=../resources/getstable.png></a> |
| <a href=https://nightly.link/VueTubeApp/VueTube/workflows/ci/main/android.zip><img id="im" width="200" src=./resources/getunstable.png></a> | <a href=https://github.com/VueTubeApp/VueTube/releases/tag/0.4.2><img id="im" width="200" src=./resources/getcanary.png></a> | <a href=https://vuetube.app/install><img id="im" width="200" src=./resources/getstable.png></a> |
| ------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| Agak tidak stabil, tetapi anda boleh mendapat akses awal kepada ciri-ciri baharu | Kurang pepijat daripada tidak stabil sementara mempunyai lebih banyak ciri daripada stabil | Belum tersedia lagi |
### iOS
| <a href=https://nightly.link/VueTubeApp/VueTube/workflows/ci/main/iOS.zip><img id="im" width="200" src=../resources/getunstable.png></a> | <a href=https://cdn.discordapp.com/attachments/949908267855921163/972164558930198528/VueTube-Canary-May-6-2022.ipa><img id="im" width="200" src=../resources/getcanary.png></a> | <a href=https://vuetube.app/install><img id="im" width="200" src=../resources/getstable.png></a> |
| <a href=https://nightly.link/VueTubeApp/VueTube/workflows/ci/main/iOS.zip><img id="im" width="200" src=./resources/getunstable.png></a> | <a href=https://cdn.discordapp.com/attachments/949908267855921163/972164558930198528/VueTube-Canary-May-6-2022.ipa><img id="im" width="200" src=./resources/getcanary.png></a> | <a href=https://vuetube.app/install><img id="im" width="200" src=./resources/getstable.png></a> |
| --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------- |
| Agak tidak stabil, tetapi anda boleh mendapat akses awal kepada ciri-ciri baharu | Kurang pepijat daripada tidak stabil sementara mempunyai lebih banyak ciri daripada stabil | Belum tersedia lagi |
@ -80,14 +80,14 @@ Untuk memasang aplikasi VueTube, sila lawati www.vuetube.app/install
<h2 align="left">
<sub>
<img src="resources/readme_icon_plans.png"
<img src="/resources/readme_icon_plans.png"
height="30"
width="30">
</sub>
Pelan
</h2>
<img src="../resources/readme-ms/Plans.ms.svg" alt="VueTube icon" height="100"/>
<img src="/resources/readme-ms/Plans.ms.svg" alt="VueTube icon" height="100"/>
- 🔍 **Carian lanjutan:** Susun hasil mengikut tarikh, tempoh, suka atau apa-apa faktor lain.
- 🗞️ **Sejarah tontonan tempatan:** Dapatkan semula video tontonan terakhir anda tanpa log masuk.
@ -156,8 +156,7 @@ VueTube dibuat dengan tujuan untuk menyediakan sebuah alternatif yang percuma, s
### Berminat untuk menyumbang?
Terima kasih kerana berminat untuk menyumbang! Sila baca di laman sesawang kami untuk mengetahui bagaimana anda boleh melakukannya:
[vuetube.app/contributing](https://www.vuetube.app/contributing)
Terima kasih kerana berminat untuk menyumbang! Sila baca di laman sesawang kami untuk mengetahui bagaimana anda boleh melakukannya: [vuetube.app/contributing](https://www.vuetube.app/contributing)
Sekiranya anda mahu menterjemahkan aplikasi ini, [klik di sini](/NUXT/plugins/languages) dan baca arahan. Jika GitHub itu sukar atau anda tidak selesa menggunakannya, anda boleh hantarkan medan yang diterjemahkan dalam satu fail teks pada [pelayan Discord](https://vuetube.app/discord) kami dan kami akan melaksanakannya. Jangan bimbang!
@ -190,6 +189,27 @@ Projek VueTube dan kandungannya tidak bergabung dengan, dibiayai, diberi izin, d
Sebarang tanda dagangan, tanda perkhidmatan, nama dagangan atau hak harta intelek lain yang digunakan dalam projek VueTube dimiliki oleh pemilik masing-masing.
## Repositori VueTube yang lain
<details>
<summary> 🖱Klik untuk menunjukkan repositori </summary>
<br>
[![VueTube Extractor](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=VueTube-Extractor)](https://github.com/VueTubeApp/VueTube-Extractor)
**VueTube Extractor** ialah sejenis pustaka yang direka untuk mengekstrak data dari perkhidmatan penstriman, direka untuk digunakan dengan apl VueTube.
[![VueTube Translator](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=VueTube-Translator)](https://github.com/VueTubeApp/VueTube-Translator)
**VueTube Translator** ialah sejenis alat untuk menterjemahkan medan fail GitHub seperti JSON atau JS dan mengeksport hasil dengan struktur yang betul. Ia dibuat untuk membantu penterjemah-penterjemah VueTube tetapi ia boleh digunakan untuk tujuan lain.
[![VueTube HTTP](https://github-readme-stats.vercel.app/api/pin/?username=VueTubeApp&repo=vuetube-http)](https://github.com/VueTubeApp/vuetube-http)
**VueTube HTTP** ialah sejenis pemalam (_plugin_) untuk permintaan HTTP _native_, muat naik/turun fail, dan pengurusan kuki. Ia adalah sejenis _fork_ daripada [projek HTTP asal](https://github.com/capacitor-community/http) daripada Capacitor Community dengan sedikit penambahan daripada kumpulan VueTube.
</details>
<hr>
<p align="center">

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 39 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 9.8 KiB

After

Width:  |  Height:  |  Size: 9.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 9.4 KiB

After

Width:  |  Height:  |  Size: 9.4 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 8.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 9.7 KiB

After

Width:  |  Height:  |  Size: 9.7 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 21 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB