0
0
Fork 0
mirror of https://github.com/VueTubeApp/VueTube synced 2024-11-25 04:35:17 +00:00

Merge github.com-picklenik:Frontesque/VueTube

This commit is contained in:
Nikita Krupin 2022-12-12 03:41:08 -05:00
commit 0d2c1af444
11 changed files with 275 additions and 66 deletions

View file

@ -54,7 +54,7 @@
}rem 0rem 0rem !important`
: '0',
}"
:poster="getThumbnail($route.query.v)"
:poster="$youtube.getThumbnail($route.query.v, 'max', [])"
@loadedmetadata="checkDimensions()"
@click="controlsHandler()"
/>
@ -352,7 +352,6 @@ import progressbar from "~/components/Player/progressbar.vue";
import sponsorblock from "~/components/Player/sponsorblock.vue";
import backType from "~/plugins/classes/backType";
import Thumbnail from "~/plugins/thumbnail";
export default {
components: {
@ -624,11 +623,6 @@ export default {
this.$refs.player.playbackRate = speed;
this.$refs.audio.playbackRate = speed;
},
getThumbnail(query) {
const thumbnail = new Thumbnail();
return thumbnail.getThumbnail(query, "max", []);
},
checkDimensions() {
if (this.$refs.player.videoHeight > this.$refs.player.videoWidth) {
this.isVerticalVideo = true;

View file

@ -14,6 +14,7 @@
</v-card>
<!-- Backup -->
<!--
<v-card
flat
class="pb-5 background"
@ -29,6 +30,7 @@
<v-btn rounded @click="registryRestore">{{ lang.restore }}</v-btn>
</v-card-actions>
</v-card>
-->
</div>

View file

@ -262,6 +262,20 @@ class Innertube {
});
}
// Static methods
static getThumbnail(id, resolution) {
if (resolution == "max") {
const url = `https://img.youtube.com/vi/${id}/maxresdefault.jpg`;
let img = new Image();
img.src = url;
img.onload = function () {
if (img.height !== 120) return url;
};
}
return `https://img.youtube.com/vi/${id}/mqdefault.jpg`;
}
// Simple Wrappers
async getRecommendationsAsync() {
const rec = await this.browseAsync("recommendations");

View file

@ -1,4 +1,3 @@
module.exports = {
name: "Azerbaijan",
@ -6,7 +5,7 @@ module.exports = {
home: "Ev",
subscriptions: "Abunəliklər",
library: "Kitabxana",
restart: "Yenidən başladın",
restart: "Yenidən başlat",
later: "Daha sonra",
settingRestart:
"Bu seçimin dəyişdirilməsi dəyişikliklərin tətbiq edilməsi üçün tətbiqin yenidən başladılmasını tələb edir.",
@ -17,7 +16,7 @@ module.exports = {
index: "",
home: "Ev",
library: "Kitabxana",
search: "Axtarın",
search: "Axtar",
settings: "Tənzimləmələr",
subscriptions: "Abunəliklər",
watch: "İzlə",
@ -54,9 +53,9 @@ module.exports = {
mods: {
general: {
language: "Dil",
backup: "Backup",
backupinfo: "Backup or restore your application settings",
restore: "Restore"
backup: "Nüsxələ",
backupinfo: "Tətbiq tənzimləmələrinizi nüsxələyin və ya bərpa edin",
restore: "Bərpa et"
},
theme: {
normal: "Normal",
@ -91,11 +90,11 @@ module.exports = {
published: "Dərc edilmişdir",
users: "İstifadəçilər",
size: "Ölçüsünü yeniləyin",
size: "Ölçüsünü yenilə",
okay: "Oldu",
refresh: "yenilə",
update: "Yeniləyin",
update: "Yenilə",
later: "Daha sonra",
},
logs: {
@ -116,14 +115,14 @@ module.exports = {
developer: {
registryeditor: "Reyestr redaktoru",
registrywarning: "GİRİŞLƏRİN DƏYİŞİLMƏSİ TƏTBİQİNİZİN SINMASINA SƏBƏB OLA BİLƏR!",
createentry: "Giriş yaradın",
createentryfull: "Reyestr girişi yaradın",
createentry: "Giriş yarat",
createentryfull: "Reyestr girişi yarat",
cancel: "İmtina",
create: "Yaradın",
create: "Yarat",
key: "Açar",
value: "Dəyər",
confirmdelete: "Silməni təsdiqləyin",
areyousure: "Silmək istədiyinizə əminsiniz",
confirmdelete: "Silməni təsdiqlə",
areyousure: "Silmək istədiyinizə əminsiniz?",
delete: "Sil",
change: "Dəyiş",
},

View file

@ -122,7 +122,7 @@ module.exports = {
key: "Key",
value: "Value",
confirmdelete: "Confirm delete",
areyousure: "Are you sure that you want to delete",
areyousure: "Are you sure that you want to delete?",
delete: "Delete",
change: "Change",
},

View file

@ -7,14 +7,34 @@ module.exports = {
library: "Pustaka",
restart: "Mulakan semula",
later: "Kemudian",
settingRestart: "Mengubah tetapan ini memerlukan apl untuk dimulakan semula untuk menerapkan tetapan.",
okay: "OK",
settingRestart:
"Mengubah tetapan ini memerlukan apl untuk dimulakan semula untuk menerapkan tetapan.",
okay: "OK",
},
pages: {
index: "",
home: "Laman Utama",
library: "Pustaka",
search: "Cari",
settings: "Tetapan",
subscriptions: "Langganan",
watch: "Tonton",
about: "Tentang",
developer: "Pembangun",
general: "Umum",
player: "Pemain",
plugins: "Pemalam",
startup: "Permulaan",
theme: "Tema",
tweaks: "Pelarasan",
updates: "Kemaskini"
},
index: {
connecting: "Menyambung",
plugins: "Memuatkan Pemalam",
launching: "Memulakan",
launching: "Melancarkan",
},
settings: {
@ -33,6 +53,9 @@ module.exports = {
mods: {
general: {
language: "Bahasa",
backup: "Sandaran",
backupinfo: "Sandarkan atau pulihkan semula tetapan aplikasi anda",
restore: "Pulihkan semula"
},
theme: {
normal: "Normal",
@ -55,10 +78,12 @@ module.exports = {
defaultpage: "Halaman Lalai",
},
updates: {
updating: "Memuat turun kemaskini",
checking: "Menyemak kemaskini",
available: "Kemaskini Tersedia",
available: "Kemaskini tersedia",
noupdate: "Tiada kemaskini tersedia",
noupdatemessage: "Anda sedang menggunakan versi terkini VueTube. Sila periksa kemudian untuk kemaskini.",
noupdatemessage:
"Anda sedang menggunakan versi terkini VueTube. Sila periksa kemudian untuk kemaskini.",
installed: "Versi Dipasang",
latest: "Versi Terkini",
@ -87,13 +112,27 @@ module.exports = {
github: "GitHub",
discord: "Discord",
},
developer: {
registryeditor: "Editor Daftaran",
registrywarning: "MENGUBAH SEBARANG ENTRI MUNGKIN MENYEBABKAN APLIKASI ANDA ROSAK!",
createentry: "Cipta entri",
createentryfull: "Cipta entri daftaran",
cancel: "Batal",
create: "Cipta",
key: "Kunci",
value: "Nilai",
confirmdelete: "Sahkan pemadaman",
areyousure: "Adakah anda pasti untuk memadamkannya?",
delete: "Padam",
change: "Ubah",
},
},
events: {
welcome: "Selamat Datang ke VueTube",
tagline: "Masa hadapan penstriman video",
next: "Seterusnya",
updated: "VueTube telah dikemaskini!",
updated: "VueTube telah dikemaskini",
awesome: "Hebat",
langsetup: "Sila pilih bahasa anda",
featuresetup: "Sila pilih beberapa ciri",
@ -101,6 +140,6 @@ module.exports = {
enablespb: "Dayakan SponsorBlock",
thanks: "Terima Kasih kerana Menggunakan VueTube",
enjoy: "Kami harap anda mempunyai pengalaman yang menakjubkan",
packageinstaller: "Pilih salah satu pakej untuk dimuat turun"
packageinstaller: "Pilih salah satu pakej untuk dimuat turun",
},
};

View file

@ -0,0 +1,145 @@
module.exports = {
name: "മലയാളം",
global: {
home: "ഇല്ലം",
subscriptions: "വരികൾ",
library: "ലൈബ്രറി",
restart: "വീണ്ടുും തുടങ്ങുക",
later: "പിന്നീട്",
settingRestart:
"ഈ ഏർപ്പാടുകൾ മാറ്റിയാൽ, അവ നിലവിൽ വരാനായി ആപ്പ് വീണ്ടുും തുടങ്ങേണ്ടതായി വരുും.",
okay: "ശരി",
},
pages: {
index: "ചൂണ്ടി",
home: "ഇല്ലം",
library: "ലൈബ്രറി",
search: "തിരയുക",
settings: "ഏർപ്പാടുകൾ",
subscriptions: "വരികൾ",
watch: "കാണുക",
about: "കുറിച്ച്",
developer: "ചമയ്ക്കുന്നയാൾ",
general: "പൊതു",
player: "വീഡിയോകാട്ടി",
plugins: "കൂട്ടിച്ചേർക്കലുകൾ",
startup: "തുടക്കം",
theme: "ചായം",
tweaks: "മാറ്റങ്ങൾ",
updates: "മെച്ചപ്പെടുത്തലുകൾ"
},
index: {
connecting: "കൂട്ടിയിണക്കുന്നു",
plugins: "കൂട്ടിച്ചേർക്കലുകൾ കയറ്റുന്നു",
launching: "തുറക്കുന്നു",
},
settings: {
general: "പൊതു",
theme: "ചായം",
player: "വീഡിയോകാട്ടി",
uitweaker: "ഇടപഴക്കമീടു മാറ്റി",
startupoptions: "തുടക്ക ഏർപ്പാടുകൾ",
plugins: "കൂട്ടിച്ചേർക്കലുകൾ",
updates: "മെച്ചപ്പെടുത്തലുകൾ",
logs: "പതിവുകൾ",
about: "കുറിച്ച്",
devmode: "ചമയ്ക്കൽ മട്ട്",
},
mods: {
general: {
language: "മൊഴി",
backup: "പിന്തുണകൊടുക്കുക",
backupinfo: "താങ്കളുടെ ആപ്പ് ഏർപ്പാടുകൾ വീണ്ടെടുക്കുക അല്ലെങ്കിൽ പിന്തുണകൊടുക്കുക",
restore: "വീണ്ടെടുക്കുക"
},
theme: {
normal: "സാധാരണ",
adaptive: "ഇഴുകുന്ന",
custom: "ഇഷ്ട",
dark: "ഇരുൾ",
black: "കറുപ്പ്",
darkmode: "ഇരുൾ മട്ട്",
darkmodetagline: "നിങ്ങൾ ഇരുളിലേക്ക് പോകുന്നു.",
},
tweaks: {
fullscreen: "മുഴുത്തിര",
navbarblur: "നാവ്ബാർ മങ്ങൽ",
roundedcorners: "വട്ടത്തിലുള്ള മൂലകൾ",
roundthumbnails: "വട്ടത്തിലുള്ള ചെറുപടം",
roundwatchpagecomponents: "വട്ടത്തിലുള്ള കാഴ്ചാതാൾ പങ്കുകൾ",
radius: "ആരം",
},
startup: {
defaultpage: "യഥാർത്ഥ താൾ",
},
updates: {
updating: "മെച്ചപ്പെട്ട പതിപ്പ് ഇറക്കിവയ്ക്കുന്നു",
checking: "മെച്ചപ്പെട്ട പതിപ്പിനായി തിരയുന്നു",
available: "മെച്ചപ്പെട്ട പതിപ്പ് ഉണ്ട്",
noupdate: "നിലവിൽ മെച്ചപ്പെട്ട പതിപ്പുകൾ ഇല്ല",
noupdatemessage:
"താങ്കൾ വ്യൂടൂബിന്റെ ഏറ്റവുും പുതിയ പതിപ്പാണ് ഇട്ടിരിക്കുന്നത്. മെച്ചപ്പെട്ട പതിപ്പുകൾക്കായി പിന്നീട് തിരയുക.",
installed: "ഇട്ടിരിക്കുന്ന പതിപ്പ്",
latest: "ഏറ്റവും പുതിയ പതിപ്പ്",
published: "പുറത്തുവിട്ടത്",
users: "ഉപയോഗിക്കുന്നവർ",
size: "പുതുക്കൽ വലിപ്പം",
okay: "ശരി",
refresh: "പുതുക്കുക",
update: "മെച്ചപ്പെടുത്തൽ",
later: "പിന്നീട്",
},
logs: {
more: "കുടുതൽ",
},
about: {
appinformation: "ആപ്പ് വിവരം",
appversion: "ആപ്പ് പതിപ്പ്",
deviceinformation: "ഡിവൈസ് വിവരം",
platform: "തിട്ട",
os: "ഓടൽ ചുറ്റുപാട്",
model: "മാതിരി",
manufacturer: "ഉണ്ടാക്കിയത്",
emulator: "എമുലേറ്റർ",
github: "ഗിറ്റ്ഹബ്",
discord: "ഡിസ്കോർഡ്",
},
developer: {
registryeditor: "Registry editor",
registrywarning: "CHANGING ENTRIES MAY CAUSE YOUR APP TO BREAK!",
createentry: "Create entry",
createentryfull: "Create registry entry",
cancel: "വേണ്ടെന്നു വയ്ക്കുക",
create: "ഉണ്ടാക്കുക",
key: "താഴ്കോൽ",
value: "വില",
confirmdelete: "നീക്കംചെയ്യൽ ഉറപ്പിക്കുക",
areyousure: "നീക്കംചെയ്യണം എന്ന് നിങ്ങൾക്ക് ഉറപ്പാണോ?",
delete: "നീക്കംചെയ്യുക",
change: "മാറ്റുക",
},
},
events: {
welcome: "വ്യൂടൂബിലേക്ക് വരവേൽപ്പ്",
tagline: "വീഡിയോ കാണിക്കലിന്റെ പുതിയ വരുംകാലം",
next: "അടുത്തത്",
updated: "വ്യൂടൂബ് മെച്ചപ്പെടുത്തി",
awesome: "കൊള്ളാം",
langsetup: "ഒരു മൊഴി തിരഞ്ഞെടുക്കാം!",
featuresetup: "കുറച്ചു തരങ്ങൾ തിരഞ്ഞെടുക്കാം!",
enableryd: "യൂട്ര്യൂബ് ഡിസ്ലൈക്കിലേക്ക് തിരികെ പോകുക",
enablespb: "സ്പോൺസർതടയൽ ചെയ്യുക",
thanks: "വ്യൂടൂബ് ഉപയോഗിച്ചതിൽ നന്നി",
enjoy: "നിങ്ങൾക്ക് ഒരു നല്ല ഇടപഴക്കകം ഉണ്ടാകും എന്ന് ഞങ്ങൾ കരുതുന്നു",
packageinstaller: "ഇറക്കിവയ്ക്കാനായി ഒരു പൊതിക്കെട്ട് തിരഞ്ഞെടുക്കുക",
},
};

View file

@ -1,17 +0,0 @@
class Thumbnail {
getThumbnail(id, resolution, backupThumbnail) {
if (resolution == "max") {
const url = `https://img.youtube.com/vi/${id}/maxresdefault.jpg`;
let img = new Image();
img.src = url;
img.onload = function () {
if (img.height !== 120) return url;
};
}
if (backupThumbnail[backupThumbnail.length - 1])
return backupThumbnail[backupThumbnail.length - 1].url;
else return `https://img.youtube.com/vi/${id}/mqdefault.jpg`;
}
}
export default Thumbnail;

View file

@ -91,14 +91,30 @@ const innertubeModule = {
async getVid(id) {
try {
return await InnertubeAPI.VidInfoAsync(id);
} catch (error) {}
} catch (error) {
}
},
getThumbnail(id, resolution, backupThumbnail) {
if (resolution == "max") {
const url = `https://img.youtube.com/vi/${id}/maxresdefault.jpg`;
let img = new Image();
img.src = url;
img.onload = function () {
if (img.height !== 120) return url;
};
}
if (backupThumbnail[backupThumbnail.length - 1])
return backupThumbnail[backupThumbnail.length - 1].url;
else return `https://img.youtube.com/vi/${id}/mqdefault.jpg`;
},
async getChannel(url) {
try {
const response = await InnertubeAPI.getChannelAsync(url);
return response.data;
} catch (error) {}
} catch (error) {
}
},
// It just works™
@ -161,7 +177,8 @@ const innertubeModule = {
try {
const response = await InnertubeAPI.getSearchAsync(query);
return response.contents.sectionListRenderer;
} catch (err) {}
} catch (err) {
}
},
async saveApiStats(query, url) {

View file

@ -87,7 +87,7 @@ available:
Android
</h3>
| <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> |
| <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.5><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> |
| ------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- |
| Pretty unstable, but you get early access to new features. | Less bugs than unstable while having more features than stable. | Not available yet. |
@ -100,7 +100,7 @@ Android
iOS
</h3>
| <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://github.com/VueTubeApp/VueTube/releases/tag/0.3><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> |
| --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------- |
| Pretty unstable, but you get early access to new features. | Less bugs than unstable while having more features than stable. | Not available yet. |

View file

@ -6,8 +6,8 @@
<details>
<summary>Tunjukkan kredit Readme</summary>
<sub>Logo oleh <a href="https://github.com/afnzmn">@afnzmn</a></sub></br>
<sub>Penyumbang-penyumbang Readme Bahasa Melayu: <a href="https://github.com/AdamIskandarAI">@AdamIskandarAI</a></sub>
<sub>Logo oleh <a href="https://github.com/afnzmn">@afnzmn</a></sub></br>
<sub>Penyumbang-penyumbang Readme Bahasa Melayu: <a href="https://github.com/AdamIskandarAI">@AdamIskandarAI</a></sub>
</details>
<p align="center">
@ -25,7 +25,7 @@ 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 dalam bahasa lain: [English,](../readme.md) [Español,](/readme/readme.es.md) [简体中文,](/readme/readme.zh-hans.md) [繁體中文,](/readme/readme.zh-hant.md) [日本語,](/readme/readme.ja.md) [עִברִית,](/readme/readme.he.md) [Nederlands,](/readme/readme.nl.md) [தமிழ்,](/readme/readme.ta.md) [Bahasa Melayu,](/readme/readme.ms.md) [Македонски,](/readme/readme.mk.md) [Français,](/readme/readme.fr.md) [Português Brasileiro,](/readme/readme.pt-br.md) [Bahasa Indonesia,](/readme/readme.id.md) [Polski,](/readme/readme.pl.md) [Български,](/readme/readme.bg.md) [Italiano,](/readme/readme.it.md) [Magyar,](/readme/readme.hu.md) [한국어,](/readme/readme.kr.md) [Tiếng Việt,](/readme/readme.vi.md) [Română,](/readme/readme.ro.md) [Українська,](/readme/readme.ua.md) [Türkçe](/readme/readme.tr.md/)
Baca ini dalam bahasa lain: **Read this page in other languages**: [English,](readme.md) [Español,](/readme/readme.es.md) [简体中文,](/readme/readme.zh-hans.md) [繁體中文,](/readme/readme.zh-hant.md) [日本語,](/readme/readme.ja.md) [עִברִית,](/readme/readme.he.md) [Nederlands,](/readme/readme.nl.md) [தமிழ்,](/readme/readme.ta.md) [Bahasa Melayu,](/readme/readme.ms.md) [Македонски,](/readme/readme.mk.md) [Français,](/readme/readme.fr.md) [Português Brasileiro,](/readme/readme.pt-br.md) [Bahasa Indonesia,](/readme/readme.id.md) [Polski,](/readme/readme.pl.md) [Български,](/readme/readme.bg.md) [Italiano,](/readme/readme.it.md) [Magyar,](/readme/readme.hu.md) [한국어,](/readme/readme.kr.md) [Tiếng Việt,](/readme/readme.vi.md) [Română,](/readme/readme.ro.md) [Українська](/readme/readme.ua.md), [Türkçe](/readme/readme.tr.md/)
<h2 align="left">
<sub>
@ -64,18 +64,34 @@ Untuk memasang aplikasi VueTube, sila lawati www.vuetube.app/install
<summary> 🖱Klik di sini untuk menunjukkan semua versi </summary>
<br />
### Android
<h3 align="left">
<sub>
<img src="/resources/readme_icon_android.png"
height="20"
width="20">
</sub>
Android
</h3>
| <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> |
| <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.5><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
<h3 align="left">
<sub>
<img src="/resources/readme_icon_ios.png"
height="20"
width="20">
</sub>
iOS
</h3>
| <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://github.com/VueTubeApp/VueTube/releases/tag/0.3><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 |
(Apple tidak menyokong _sideloading_, iaitu pemasangan aplikasi dengan hanya menggunakan fail tanpa ia dimuat naik ke Apple App Store. Ia adalah perlu untuk menggunakan kaedah lanjutan untuk memasang VueTube pada peranti iPhone / iPad)
</details>
<h2 align="left">
@ -101,7 +117,7 @@ Anda boleh mencadangkan fungsi baru dengan membuka isu fungsi baru dalam reposit
<h2 align="left">
<sub>
<img src="resources/readme_icon_screenshots.png"
<img src="/resources/readme_icon_screenshots.png"
height="30"
width="30">
</sub>
@ -122,7 +138,7 @@ Tangkapan skrin
<h2 align="left">
<sub>
<img src="resources/readme_icon_community.png"
<img src="/resources/readme_icon_community.png"
height="30"
width="30">
</sub>
@ -137,7 +153,7 @@ Kami menggunakan beberapa platform yang berbeza untuk berhubung dengan komuniti
<h2 align="left">
<sub>
<img src="resources/readme_icon_progress.png"
<img src="/resources/readme_icon_progress.png"
height="30"
width="30">
</sub>
@ -156,7 +172,7 @@ Kemajuan
🟢 Laman Utama (100%) | 🟠 Seekbar / Scrubber (80%) | 🟢 Carian (100%)
🟢 Pengintegrasian RYD (100%) | 🟠 Skrin Penuh (80%) | 🟠 Maklumat Video (60%) |
🟢 Tema (100%) | 🟠 Pemilih Resolusi (720p, HD) (50%) | 🔴 Saluran (0%) |
🟢 Halaman Tonton (100%) | 🔴 Mini-pemain (0%) | 🔴 Komen (0%) |
🟢 Halaman Tonton (100%) | 🔴 Pemain Mini (0%) | 🔴 Komen (0%) |
🟠 Pengintegrasian SponsorBlock (95%) | 🔴 Main video di latar belakang (0%) | 🔴 Sembang Langsung (0%) |
🟠 Auto Kemaskini (50%) | 🔴 Picture in Picture (0%) | 🔴 Kandungan Trending (0%)
🟠 Halaman Saluran (50%) | 🔴 Kapsyen / Sarikata (0%) | 🔴 Interaksi (0%) |
@ -191,7 +207,7 @@ Sekiranya anda mahu menterjemahkan aplikasi ini, [klik di sini](/NUXT/plugins/la
<h2 align="left">
<sub>
<img src="resources/readme_icon_github.png"
<img src="/resources/readme_icon_github.png"
height="30"
width="30">
</sub>
@ -206,7 +222,7 @@ Penyumbang-penyumbang GitHub
<h2 align="left">
<sub>
<img src="resources/readme_icon_acknowledgements.png"
<img src="/resources/readme_icon_acknowledgements.png"
height="30"
width="30">
</sub>
@ -220,7 +236,7 @@ Penghargaan
<h2 align="left">
<sub>
<img src="resources/readme_icon_donate.png"
<img src="/resources/readme_icon_donate.png"
height="30"
width="30">
</sub>
@ -235,7 +251,7 @@ VueTube adalah dan sentiasa akan percuma dan sumber terbuka, tetapi anda boleh m
<h2 align="left">
<sub>
<img src="resources/readme_icon_disclaimer.png"
<img src="/resources/readme_icon_disclaimer.png"
height="30"
width="30">
</sub>
@ -248,7 +264,7 @@ Sebarang tanda dagangan, tanda perkhidmatan, nama dagangan atau hak harta intele
<h2 align="left">
<sub>
<img src="resources/readme_icon_otherrepos.png"
<img src="/resources/readme_icon_otherrepos.png"
height="30"
width="30">
</sub>