Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.message {
color: var(--tertiary-text-color);
inline-size: fit-content;
margin-inline: auto;
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,20 @@
<template>
<p
v-if="forceRssFeeds"
class="message"
>
{{ t('Subscriptions.Posts.Forced RSS Message') }}
</p>
<p
v-else-if="useRssFeeds"
class="message"
>
{{ t('Subscriptions.Posts.RSS Message', {
setting: t('Settings.Subscription Settings.Fetch Feeds from RSS'
)}) }}
</p>
<SubscriptionsTabUi
v-else
:is-loading="isLoading"
:video-list="postList"
:error-channels="errorChannels"
Expand All @@ -14,15 +29,15 @@

<script setup>
import { computed, onMounted, ref, shallowRef, watch } from 'vue'
import { useI18n } from '../composables/use-i18n-polyfill'
import { useI18n } from '../../composables/use-i18n-polyfill'

import SubscriptionsTabUi from './SubscriptionsTabUi/SubscriptionsTabUi.vue'
import SubscriptionsTabUi from '../SubscriptionsTabUi/SubscriptionsTabUi.vue'

import store from '../store/index'
import store from '../../store/index'

import { copyToClipboard, getRelativeTimeFromDate, showToast } from '../helpers/utils'
import { getLocalChannelCommunity } from '../helpers/api/local'
import { invidiousGetCommunityPosts } from '../helpers/api/invidious'
import { copyToClipboard, getRelativeTimeFromDate, showToast } from '../../helpers/utils'
import { getLocalChannelCommunity } from '../../helpers/api/local'
import { invidiousGetCommunityPosts } from '../../helpers/api/invidious'

const { t } = useI18n()

Expand All @@ -47,8 +62,13 @@ const subscriptionCacheReady = computed(() => store.getters.getSubscriptionCache
/** @type {import('vue').ComputedRef<boolean>} */
const fetchSubscriptionsAutomatically = computed(() => store.getters.getFetchSubscriptionsAutomatically)

/** @type {import('vue').ComputedRef<boolean>} */
const useRssFeeds = computed(() => store.getters.getUseRssFeeds)

const activeSubscriptionList = computed(() => store.getters.getActiveProfile.subscriptions)

const forceRssFeeds = computed(() => store.getters.getActiveProfile.subscriptions.length >= 125)

const cacheEntriesForAllActiveProfileChannels = computed(() => {
const postsCache = store.getters.getPostsCache
const entries = []
Expand Down Expand Up @@ -114,9 +134,11 @@ if (!subscriptionCacheReady.value) {
})
}

onMounted(() => {
loadPostsFromRemoteFirstPerWindowSometimes()
})
if (!useRssFeeds.value && !forceRssFeeds.value) {
onMounted(() => {
loadPostsFromRemoteFirstPerWindowSometimes()
})
}

function loadPostsFromRemoteFirstPerWindowSometimes() {
if (
Expand Down Expand Up @@ -292,3 +314,5 @@ async function getChannelPostsInvidious(channel) {
}
}
</script>

<style scoped src="./SubscriptionPosts.css" />
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,9 @@
/>
<FtToggleSwitch
:label="$t('Settings.Subscription Settings.Fetch Feeds from RSS')"
:default-value="useRssFeeds"
:default-value="useRssFeeds || forceRssFeeds"
:tooltip="$t('Tooltips.Subscription Settings.Fetch Feeds from RSS')"
:disabled="forceRssFeeds"
compact
@change="updateUseRssFeeds"
/>
Expand Down Expand Up @@ -70,6 +71,8 @@ function updateFetchSubscriptionsAutomatically(value) {
/** @type {import('vue').ComputedRef<boolean>} */
const useRssFeeds = computed(() => store.getters.getUseRssFeeds)

const forceRssFeeds = computed(() => store.getters.getActiveProfile.subscriptions.length >= 125)

/**
* @param {boolean} value
*/
Expand Down
2 changes: 1 addition & 1 deletion src/renderer/components/SubscriptionsLive.vue
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ async function loadVideosForSubscriptionsFromRemote() {
let useRss = useRssFeeds.value
if (channelsToLoadFromRemote.length >= 125 && !useRss) {
showToast(
t('Subscriptions["This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting"]'),
t('Subscriptions["RSS is forced for profiles with 125 or more subscriptions to avoid rate limiting"]'),
10000
)
useRss = true
Expand Down
2 changes: 1 addition & 1 deletion src/renderer/components/SubscriptionsVideos.vue
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ async function loadVideosForSubscriptionsFromRemote() {
let useRss = useRssFeeds.value
if (channelsToLoadFromRemote.length >= 125 && !useRss) {
showToast(
t('Subscriptions["This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting"]'),
t('Subscriptions["RSS is forced for profiles with 125 or more subscriptions to avoid rate limiting"]'),
10000
)
useRss = true
Expand Down
17 changes: 3 additions & 14 deletions src/renderer/views/Subscriptions/Subscriptions.vue
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@
</div>
<!-- eslint-disable-next-line vuejs-accessibility/interactive-supports-focus -->
<div
v-if="visibleTabs.includes('community')"
v-if="!hideSubscriptionsCommunity"
ref="communityTab"
class="tab"
role="tab"
Expand Down Expand Up @@ -133,7 +133,7 @@ import FtFlexBox from '../../components/ft-flex-box/ft-flex-box.vue'
import SubscriptionsVideos from '../../components/SubscriptionsVideos.vue'
import SubscriptionsLive from '../../components/SubscriptionsLive.vue'
import SubscriptionsShorts from '../../components/SubscriptionsShorts.vue'
import SubscriptionsPosts from '../../components/SubscriptionsPosts.vue'
import SubscriptionsPosts from '../../components/SubscriptionPosts/SubscriptionsPosts.vue'

import store from '../../store/index'

Expand All @@ -157,16 +157,6 @@ const hideSubscriptionsCommunity = computed(() => {
return store.getters.getHideSubscriptionsCommunity
})

/** @type {import('vue').ComputedRef<any[]>} */
const activeSubscriptionList = computed(() => {
return store.getters.getActiveProfile.subscriptions
})

/** @type {import('vue').ComputedRef<boolean>} */
const useRssFeeds = computed(() => {
return store.getters.getUseRssFeeds
})

/** @type {import('vue').Ref<'videos' | 'shorts' | 'live' | 'community' | null>} */
const currentTab = ref('videos')

Expand Down Expand Up @@ -195,8 +185,7 @@ const visibleTabs = computed(() => {
tabs.push('live')
}

// community does not support rss
if (!hideSubscriptionsCommunity.value && !useRssFeeds.value && activeSubscriptionList.value.length < 125) {
if (!hideSubscriptionsCommunity.value) {
tabs.push('community')
}

Expand Down
1 change: 0 additions & 1 deletion static/locales/af.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,6 @@ Subscriptions:
Subscriptions: ''
# channels that were likely deleted
Error Channels: ''
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: ''
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': ''
Disabled Automatic Fetching: ''
Empty Channels: ''
Expand Down
1 change: 0 additions & 1 deletion static/locales/ar.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,6 @@ Subscriptions:
Subscriptions: 'الاشتراكات'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'قائمة اشتراكك فارغة حاليًا. إذا كنت ترغب في استيراد اشتراكاتك، فيمكنك الانتقال إلى إعدادات البيانات وتحديد استيراد الاشتراكات أو يمكنك البحث عن قناة والاشتراك فيها.'
Load More Videos: حمّل المزيد من الفيديوهات
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: لدى هذا الملف الشخصي عدد كبير من الاشتراكات. يتم فرض وضع RSS لتجنب تقييد الوصول للاشتراكات
Error Channels: القنوات التي بها أخطاء
Disabled Automatic Fetching: لقد قمت بتعطيل الجلب التلقائي للاشتراك. قم بتحديث الاشتراكات لرؤيتها هنا.
Empty Channels: لا تحتوي قنواتك التي اشتركت فيها حاليا على أي مقاطع فيديو.
Expand Down
3 changes: 0 additions & 3 deletions static/locales/awa.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -123,9 +123,6 @@ Subscriptions:
Subscriptions: 'सब्सक्रिप्सन'
# channels that were likely deleted
Error Channels: 'गलती वाले चैनल'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 'यहि
प्रोफ़ाइल के पास ढेर सब्सक्रिप्शनस है। RSS का जोर से परयोग कइके रेट लिमिटिंग
से बचावा'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'तोहाय
सदस्सता सूची येह समय खाली अहै। अगर तू आपन सदस्यता इम्पोर्ट करै चाहत हैं तौ तू
डेटा सेटिंग्स मा जाइ सकत हौ अउर सदस्सता इम्पोर्ट करै का चुनि सकत हौ या तू एक चैनल
Expand Down
1 change: 0 additions & 1 deletion static/locales/az.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,6 @@ Search Filters:
Subscriptions:
# On Subscriptions Page
Subscriptions: 'Abunəliklər'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 'Bu profilin çoxlu sayda abunəsi var. Sürət məhdudiyyətinin qarşısını almaq üçün RSS-i zorlanır'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Abunəlik siyahınız hazırda boşdur. Abunəliklərinizi idxal etmək istəyirsinizsə, Məlumat Parametrlərinə gedib ''Abunəlikləri İdxal Et'' seçimini edə bilərsiniz və ya bir kanal axtarıb abunə ola bilərsiniz.'
Load More Videos: 'Daha çox Video Yüklə'
Error Channels: Xətalı Kanallar
Expand Down
1 change: 0 additions & 1 deletion static/locales/be.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,6 @@ Subscriptions:
Subscriptions: 'Падпіскі'
# channels that were likely deleted
Error Channels: 'Каналы з памылкамі'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 'У гэтага профілю вялікая колькасць падпісак. Прымусовае выкарыстанне RSS, каб пазбегнуць абмежавання хуткасці'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Ваш спіс падпісак зараз пусты. Калі вы хочаце імпартаваць свае падпіскі, вы можаце перайсці ў Налады даных і выбраць Імпартаваць падпіскі або вы можаце знайсці каналы і падпісацца на іх.'
Disabled Automatic Fetching: 'Вы адключылі аўтаматычнае загрузку падпісак. Каб убачыць іх тут, абнавіце падпіскі.'
Empty Channels: 'На каналах, на якія вы падпісаны, зараз няма відэа.'
Expand Down
1 change: 0 additions & 1 deletion static/locales/bg.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,6 @@ Subscriptions:
# On Subscriptions Page
Subscriptions: 'Абонаменти'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Списъкът с абонаменти е празен. Ако искате да внесете абонаментите си, отидете в "Настройки на данни" и изберете "Внасяне на абонаменти" или можете да потърсите канал и да се абонирате за него.'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Този профил има голям брой абонаменти. Принудително използване на RSS за заобикаляне на ограниченията
Load More Videos: Зареждане на още видеа
Error Channels: Канали с грешки
Disabled Automatic Fetching: Автоматичното извличане на абонаменти е деактивирано. Обновете абонаментите, за да ги видите тук.
Expand Down
1 change: 0 additions & 1 deletion static/locales/bn.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@ Subscriptions:
All Subscription Tabs Hidden: সকল সাবস্ক্রিপশন ট্যা গোপন করা হয়েছে ।এখানে কনটেন্ট দেখতে কিছু ট্যাব আনহাইড করুন"{subsection}"এর "{settingsSection}"।
Load More Videos: অতিরিক্ত ভিডিও লোড করুন
Disabled Automatic Fetching: আপনি সাবস্ক্রিপশন পেচ বন্ধ করে রেখেছেন। সাবস্ক্রিপশন রিফ্রেশ করুন দেখার জন্য।
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: এই প্রোফাইলের অনেক সাবস্ক্রাইবার রয়েছে। জোরপূর্বক লিমিট এড়ানোর চেষ্টা করা হচ্ছে
Trending:
Trending: 'চলছে'
Gaming: গেমিং
Expand Down
1 change: 0 additions & 1 deletion static/locales/br.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,6 @@ Subscriptions:
Subscriptions: 'Koumanantoù'
# channels that were likely deleted
Error Channels: 'Chadennoù gant fazioù'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 'Ur bochad koumanantoù en deus ar profil-mañ. Ar wazh RSS a yelo en tu all d''ar vevenn lakaet'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Goullo eo ho roll koumanantoù. Ma faot deoc''h enporzhiañ ho koumanantoù, e c''hellit mont da Arventennoù ar Roadennoù ha choaz Enporzhiañ ho koumanantoù, mod all e c''hellit klask chadennoù da goumanantiñ dezho.'
Disabled Automatic Fetching: 'Diweredekaet ho peus an adtapout koumanantoù ent emgefreek. Hizivaat ar c''houmanantoù evit gwelet anezho.'
Empty Channels: 'N''eus video ebet gant ar chadennoù heuliet ganeoc''h evit poent.'
Expand Down
1 change: 0 additions & 1 deletion static/locales/bs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,6 @@ Search Filters:
Subscriptions:
# On Subscriptions Page
Subscriptions: 'Pretplate'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 'Ovaj profil ima veliki broj pretplata. Prisiljavanje RSS-a da izbjegne ograničenje brzine'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Vaša lista pretplata je trenutno prazna. Počnite dodavati pretplate da biste ih vidjeli ovdje.'
Load More Videos: 'Očitaj više videozapisa'
Trending:
Expand Down
1 change: 0 additions & 1 deletion static/locales/ca.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@ Subscriptions:
Subscriptions: 'Subscripcions'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'La teva llista de subscripcions està buida. Afegeix subscripcions per veure-les aquí.'
Load More Videos: Carregar més vídeos
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Aquest perfil té un gran nombre de subscripcions. Forçant RSS per evitar la limitació fixada
Error Channels: Canals amb errors
Trending:
Trending: 'Tendències'
Expand Down
1 change: 0 additions & 1 deletion static/locales/ckb.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,6 @@ Subscriptions:
Subscriptions: ''
# channels that were likely deleted
Error Channels: ''
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: ''
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': ''
Disabled Automatic Fetching: ''
Empty Channels: 'کەناڵە بەشداربووەکانت هێشتا هیچ ڤیدیۆیەکیان نییە.'
Expand Down
1 change: 0 additions & 1 deletion static/locales/cs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,6 @@ Search Filters:
Subscriptions:
# On Subscriptions Page
Subscriptions: 'Odběry'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 'Tento profil má velký počet odběrů. Vynucení RSS, aby se zabránilo omezení rychlosti'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Váš seznam odběrů je prázdný. Pokud chcete importovat své odběry, přejděte do Nastavení dat a vyberte Importovat odběry. Můžete také jednoduše vyhledat kanál a přihlásit se u něj k odběru.'
Load More Videos: 'Načíst více videí'
Error Channels: Kanály s chybami
Expand Down
1 change: 0 additions & 1 deletion static/locales/cy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,6 @@ Subscriptions:
Subscriptions: 'Tanysgrifiadau'
# channels that were likely deleted
Error Channels: 'Sianeli gyda Gwallau'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: 'Mae gan y proffil hwn nifer fawr o danysgrifiadau. Yn gorfodi RSS i osgoi cyfyngu ar gyfraddau'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Mae eich rhestr Tanysgrifio yn wag ar hyn o bryd. Os ydych chi am fewnforio''ch tanysgrifiadau gallwch fynd i Gosodiadau Data a dewis Mewnforio Tanysgrifiadau neu gallwch chwilio am sianel a thanysgrifio iddyn nhw.'
Disabled Automatic Fetching: 'Rydych wedi analluogi cyrchu tanysgrifiad awtomatig. Adnewyddwch danysgrifiadau i''w gweld yma.'
Empty Channels: 'Nid oes gan eich sianeli tanysgrifio unrhyw fideos ar hyn o bryd.'
Expand Down
1 change: 0 additions & 1 deletion static/locales/da.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,6 @@ Subscriptions:
Subscriptions: 'Abonnenter'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Din abonnementsliste er tom. Hvis du vil importere dine abonnementer, gå til "Dataindstillinger" og vælg "Importér Abonnementer" – eller søg efter en kanal og abonner på den.'
Load More Videos: Indlæs flere videoer
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Denne profil har et stort antal abonnenter. Gennemtvinger RSS for at undgå adgangsbegrænsning
Error Channels: Kanaler med fejl
Empty Channels: De kanaler, du abonnerer på, har i øjeblikket ingen videoer.
Disabled Automatic Fetching: Du har deaktiveret automatisk hentning af abonnenter. Opdatér abonnenter for at se dem her.
Expand Down
1 change: 0 additions & 1 deletion static/locales/de-DE.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,6 @@ Subscriptions:
# On Subscriptions Page
Subscriptions: Abos
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': Deine Aboliste ist derzeit leer. Wenn du deine Abos importieren möchtest, wähle in den Einstellungen unter dem Bereich „Daten“ „Abos importieren“. Alternativ kannst du nach einem Kanal suchen und diesen abonnieren.
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Dieses Profil hat eine große Anzahl von Abos. RSS zur Vermeidung von Geschwindigkeitsbeschränkungen erzwingen
Load More Videos: Weitere Videos laden
Error Channels: Kanäle mit Fehlern
Disabled Automatic Fetching: Du hast den automatischen Abruf von Abos deaktiviert. Aktualisiere die Abos, um sie hier zu sehen.
Expand Down
1 change: 0 additions & 1 deletion static/locales/el.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,6 @@ Subscriptions:
# On Subscriptions Page
Subscriptions: 'συνδρομές'
'Your Subscription list is currently empty. Start adding subscriptions to see them here.': 'Η λίστα Συνδρομών σας είναι προς το παρόν κενή. Αν θέλετε να εισάγετε τις συνδρομές σας μπορείτε να μεταβείτε στις Ρυθμίσεις Δεδομένων και να επιλέξετε Εισαγωγή Συνδρομών ή μπορείτε να αναζητήσετε ένα κανάλι και να εγγραφείτε σε αυτό.'
This profile has a large number of subscriptions. Forcing RSS to avoid rate limiting: Αυτό το προφίλ διαθέτει ήδη ένα μεγάλο αριθμό Συνδρομών. Εξαναγκασμένη εναλλαγή σε λειτουργία RSS για αποφυγή περιορισμού των κλήσεων
Load More Videos: Φόρτωση περισσότερων Βίντεο
Error Channels: Κανάλια με προβλήματα
Disabled Automatic Fetching: Έχετε απενεργοποιήσει την αυτόματη ανάκτηση Συνδρομών. Ανανεώστε τις Συνδρομές για να τις δείτε εδώ.
Expand Down
Loading