mirror of
https://github.com/TeamPiped/Piped.git
synced 2024-11-25 06:57:22 +00:00
Changes for Preferences menu and cleanup.
This commit is contained in:
parent
a9e7d79121
commit
fb3ac51cd8
@ -1,5 +1,5 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html style="background: #0F0F0F" lang="en">
|
<html style="background: #0f0f0f" lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
||||||
@ -25,5 +25,4 @@
|
|||||||
</noscript>
|
</noscript>
|
||||||
<div id="app"></div>
|
<div id="app"></div>
|
||||||
<script type="module" src="/src/main.js"></script>
|
<script type="module" src="/src/main.js"></script>
|
||||||
<!-- built files will be auto injected -->
|
|
||||||
</html>
|
</html>
|
||||||
|
23
src/App.vue
23
src/App.vue
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="w-full min-h-screen h-full px-1vw reset" :class="[theme]">
|
<div class="w-full min-h-screen px-1vw reset" :class="[theme]">
|
||||||
<Navigation />
|
<Navigation />
|
||||||
<router-view v-slot="{ Component }">
|
<router-view v-slot="{ Component }">
|
||||||
<keep-alive :max="5">
|
<keep-alive :max="5">
|
||||||
@ -134,7 +134,11 @@ b {
|
|||||||
.input,
|
.input,
|
||||||
.select,
|
.select,
|
||||||
.btn {
|
.btn {
|
||||||
@apply w-auto h-full text-gray-600 bg-gray-300;
|
@apply w-auto h-8 text-gray-600 bg-gray-300;
|
||||||
|
}
|
||||||
|
|
||||||
|
.checkbox {
|
||||||
|
@apply h-4 w-4;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dark .input,
|
.dark .input,
|
||||||
@ -165,8 +169,21 @@ hr {
|
|||||||
@apply dark:border-dark-100;
|
@apply dark:border-dark-100;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
h1,
|
||||||
|
h2 {
|
||||||
|
@apply m-0 font-bold;
|
||||||
|
}
|
||||||
|
|
||||||
h1 {
|
h1 {
|
||||||
@apply m-0 !text-5xl font-bold;
|
@apply !text-5xl;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
@apply !text-3xl;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table {
|
||||||
|
@apply w-full text-lg text-left font-light border;
|
||||||
}
|
}
|
||||||
|
|
||||||
.link {
|
.link {
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<img v-if="channel.bannerUrl" :src="channel.bannerUrl" class="w-full pb-1.5" loading="lazy" />
|
<img v-if="channel.bannerUrl" :src="channel.bannerUrl" class="w-full pb-1.5" loading="lazy" />
|
||||||
<!-- eslint-disable-next-line vue/no-v-html -->
|
<!-- eslint-disable-next-line vue/no-v-html -->
|
||||||
<p style="white-space: pre-wrap">
|
<p class="whitespace-pre-wrap">
|
||||||
<span v-html="purifyHTML(urlify(channel.description))" />
|
<span v-html="purifyHTML(urlify(channel.description))" />
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
@ -11,33 +11,33 @@
|
|||||||
|
|
||||||
<div class="comment-content pl-2">
|
<div class="comment-content pl-2">
|
||||||
<div class="comment-header">
|
<div class="comment-header">
|
||||||
<div v-if="comment.pinned" class="comment-pinned uk-text-meta">
|
<div v-if="comment.pinned" class="comment-pinned">
|
||||||
<font-awesome-icon icon="thumbtack" />
|
<font-awesome-icon icon="thumbtack" />
|
||||||
<span class="ml-1.5" v-text="$t('comment.pinned_by')" />
|
<span class="ml-1.5" v-text="$t('comment.pinned_by')" />
|
||||||
<span v-text="uploader" />
|
<span v-text="uploader" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="comment-author">
|
<div class="comment-author">
|
||||||
<router-link class="font-bold uk-text-small" :to="comment.commentorUrl" v-text="comment.author" />
|
<router-link class="font-bold link" :to="comment.commentorUrl" v-text="comment.author" />
|
||||||
<font-awesome-icon class="ml-1.5" v-if="comment.verified" icon="check" />
|
<font-awesome-icon class="ml-1.5" v-if="comment.verified" icon="check" />
|
||||||
</div>
|
</div>
|
||||||
<div class="comment-meta uk-text-meta uk-margin-small-bottom" v-text="comment.commentedTime" />
|
<div class="comment-meta text-sm mb-1.5" v-text="comment.commentedTime" />
|
||||||
</div>
|
</div>
|
||||||
<div class="whitespace-pre-wrap" v-text="comment.commentText" />
|
<div class="whitespace-pre-wrap" v-text="comment.commentText" />
|
||||||
<div class="comment-footer uk-margin-small-top uk-text-meta">
|
<div class="comment-footer mt-1">
|
||||||
<font-awesome-icon icon="thumbs-up" />
|
<font-awesome-icon icon="thumbs-up" />
|
||||||
<span class="ml-1" v-text="numberFormat(comment.likeCount)" />
|
<span class="ml-1" v-text="numberFormat(comment.likeCount)" />
|
||||||
<font-awesome-icon class="ml-1" v-if="comment.hearted" icon="heart" />
|
<font-awesome-icon class="ml-1" v-if="comment.hearted" icon="heart" />
|
||||||
</div>
|
</div>
|
||||||
<template v-if="comment.repliesPage && (!loadingReplies || !showingReplies)">
|
<template v-if="comment.repliesPage && (!loadingReplies || !showingReplies)">
|
||||||
<div @click="loadReplies">
|
<div @click="loadReplies">
|
||||||
<a class="uk-link-text" v-t="'actions.show_replies'" />
|
<a v-t="'actions.show_replies'" />
|
||||||
<font-awesome-icon class="ml-1.5" icon="level-down-alt" />
|
<font-awesome-icon class="ml-1.5" icon="level-down-alt" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="showingReplies">
|
<template v-if="showingReplies">
|
||||||
<div @click="hideReplies">
|
<div @click="hideReplies">
|
||||||
<a class="uk-link-text" v-t="'actions.hide_replies'" />
|
<a v-t="'actions.hide_replies'" />
|
||||||
<font-awesome-icon class="ml-1.5" icon="level-up-alt" />
|
<font-awesome-icon class="ml-1.5" icon="level-up-alt" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -46,7 +46,7 @@
|
|||||||
<Comment :comment="reply" :uploader="uploader" :video-id="videoId" />
|
<Comment :comment="reply" :uploader="uploader" :video-id="videoId" />
|
||||||
</div>
|
</div>
|
||||||
<div v-if="nextpage" @click="loadReplies">
|
<div v-if="nextpage" @click="loadReplies">
|
||||||
<a class="uk-link-text" v-t="'actions.load_more_replies'" />
|
<a v-t="'actions.load_more_replies'" />
|
||||||
<font-awesome-icon class="ml-1.5" icon="level-down-alt" />
|
<font-awesome-icon class="ml-1.5" icon="level-down-alt" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
<strong v-text="`Selected Subscriptions: ${selectedSubscriptions}`" />
|
<strong v-text="`Selected Subscriptions: ${selectedSubscriptions}`" />
|
||||||
</div>
|
</div>
|
||||||
<div class="uk-form-row">
|
<div class="uk-form-row">
|
||||||
<strong>Override: <input v-model="override" class="uk-checkbox" type="checkbox" /></strong>
|
<strong>Override: <input v-model="override" class="checkbox" type="checkbox" /></strong>
|
||||||
</div>
|
</div>
|
||||||
<div class="uk-form-row">
|
<div class="uk-form-row">
|
||||||
<a class="uk-width-1-1 btn uk-button-large w-auto" @click="handleImport">Import</a>
|
<a class="uk-width-1-1 btn uk-button-large w-auto" @click="handleImport">Import</a>
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="uk-vertical-align text-center uk-height-1-1">
|
<div class="uk-vertical-align text-center">
|
||||||
<form class="uk-panel uk-panel-box">
|
<h1 v-t="'titles.login'" />
|
||||||
|
<form class="uk-panel uk-panel-box children:pb-3">
|
||||||
<div class="uk-form-row">
|
<div class="uk-form-row">
|
||||||
<input
|
<input
|
||||||
v-model="username"
|
v-model="username"
|
||||||
@ -22,7 +23,7 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="uk-form-row">
|
<div class="uk-form-row">
|
||||||
<a class="uk-width-1-1 uk-button uk-button-large w-auto" @click="login" v-text="$t('titles.login')" />
|
<a class="btn w-auto" @click="login" v-text="$t('titles.login')" />
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<nav class="flex flex-wrap items-center justify-between px-2 sm:px-4 py-2.5 w-full relative">
|
<nav class="flex flex-wrap items-center justify-center px-2 sm:px-4 py-2.5 w-full relative">
|
||||||
<div>
|
<div class="flex-1">
|
||||||
<router-link class="flex font-bold text-3xl items-center font-sans font-bold" to="/"
|
<router-link class="flex font-bold text-3xl items-center font-sans font-bold" to="/"
|
||||||
><img
|
><img
|
||||||
alt="logo"
|
alt="logo"
|
||||||
@ -25,7 +25,7 @@
|
|||||||
@blur="onInputBlur"
|
@blur="onInputBlur"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="float-right">
|
<div class="flex-1 flex justify-end">
|
||||||
<ul class="flex text-1xl children:pl-3">
|
<ul class="flex text-1xl children:pl-3">
|
||||||
<li>
|
<li>
|
||||||
<router-link v-t="'titles.preferences'" to="/preferences" />
|
<router-link v-t="'titles.preferences'" to="/preferences" />
|
||||||
@ -81,7 +81,8 @@ export default {
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.onSearchTextChange(new URLSearchParams(window.location.search).get("search_query"));
|
const query = new URLSearchParams(window.location.search).get("search_query");
|
||||||
|
if (query) this.onSearchTextChange(query);
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
shouldShowLogin(_this) {
|
shouldShowLogin(_this) {
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<div class="grid grid-cols-2">
|
<div class="grid grid-cols-2">
|
||||||
<div>
|
<div>
|
||||||
<router-link class="uk-text-justify" :to="playlist.uploaderUrl || '/'">
|
<router-link class="link" :to="playlist.uploaderUrl || '/'">
|
||||||
<img :src="playlist.uploaderAvatar" loading="lazy" class="rounded-full" />
|
<img :src="playlist.uploaderAvatar" loading="lazy" class="rounded-full" />
|
||||||
<strong v-text="playlist.uploader" />
|
<strong v-text="playlist.uploader" />
|
||||||
</router-link>
|
</router-link>
|
||||||
|
@ -1,66 +1,63 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="uk-flex uk-flex-between uk-flex-middle">
|
<div class="flex">
|
||||||
<button class="uk-button uk-button-text" @click="$router.go(-1) || $router.push('/')">
|
<button @click="$router.go(-1) || $router.push('/')">
|
||||||
<font-awesome-icon icon="chevron-left" /><span class="ml-1.5" v-text="$t('actions.back')" />
|
<font-awesome-icon icon="chevron-left" /><span class="ml-1.5" v-text="$t('actions.back')" />
|
||||||
</button>
|
</button>
|
||||||
<span><h1 v-t="'titles.preferences'" class="font-bold text-center" /></span>
|
|
||||||
<span />
|
|
||||||
</div>
|
</div>
|
||||||
|
<h1 v-t="'titles.preferences'" class="font-bold text-center" />
|
||||||
<hr />
|
<hr />
|
||||||
<h2>SponsorBlock</h2>
|
<h2>SponsorBlock</h2>
|
||||||
<p><span v-text="$t('actions.uses_api_from')" /><a href="https://sponsor.ajay.app/">sponsor.ajay.app</a></p>
|
<p>
|
||||||
|
<span v-text="$t('actions.uses_api_from')" /><a class="link" href="https://sponsor.ajay.app/"
|
||||||
|
>sponsor.ajay.app</a
|
||||||
|
>
|
||||||
|
</p>
|
||||||
<label for="chkEnableSponsorblock"><strong v-t="'actions.enable_sponsorblock'" /></label>
|
<label for="chkEnableSponsorblock"><strong v-t="'actions.enable_sponsorblock'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input
|
<input
|
||||||
id="chkEnableSponsorblock"
|
id="chkEnableSponsorblock"
|
||||||
v-model="sponsorBlock"
|
v-model="sponsorBlock"
|
||||||
class="uk-checkbox"
|
class="checkbox"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
@change="onChange($event)"
|
@change="onChange($event)"
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<label for="chkSkipSponsors"><strong v-t="'actions.skip_sponsors'" /></label>
|
<label for="chkSkipSponsors"><strong v-t="'actions.skip_sponsors'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input id="chkSkipSponsors" v-model="skipSponsor" class="uk-checkbox" type="checkbox" @change="onChange($event)" />
|
<input id="chkSkipSponsors" v-model="skipSponsor" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
<br />
|
<br />
|
||||||
<label for="chkSkipIntro"><strong v-t="'actions.skip_intro'" /></label>
|
<label for="chkSkipIntro"><strong v-t="'actions.skip_intro'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input id="chkSkipIntro" v-model="skipIntro" class="uk-checkbox" type="checkbox" @change="onChange($event)" />
|
<input id="chkSkipIntro" v-model="skipIntro" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
<br />
|
<br />
|
||||||
<label for="chkSkipOutro"><strong v-t="'actions.skip_outro'" /></label>
|
<label for="chkSkipOutro"><strong v-t="'actions.skip_outro'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input id="chkSkipOutro" v-model="skipOutro" class="uk-checkbox" type="checkbox" @change="onChange($event)" />
|
<input id="chkSkipOutro" v-model="skipOutro" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
<br />
|
<br />
|
||||||
<label for="chkSkipPreview"><strong v-t="'actions.skip_preview'" /></label>
|
<label for="chkSkipPreview"><strong v-t="'actions.skip_preview'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input id="chkSkipPreview" v-model="skipPreview" class="uk-checkbox" type="checkbox" @change="onChange($event)" />
|
<input id="chkSkipPreview" v-model="skipPreview" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
<br />
|
<br />
|
||||||
<label for="chkSkipInteraction"><strong v-t="'actions.skip_interaction'" /></label>
|
<label for="chkSkipInteraction"><strong v-t="'actions.skip_interaction'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input
|
<input
|
||||||
id="chkSkipInteraction"
|
id="chkSkipInteraction"
|
||||||
v-model="skipInteraction"
|
v-model="skipInteraction"
|
||||||
class="uk-checkbox"
|
class="checkbox"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
@change="onChange($event)"
|
@change="onChange($event)"
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<label for="chkSkipSelfPromo"><strong v-t="'actions.skip_self_promo'" /></label>
|
<label for="chkSkipSelfPromo"><strong v-t="'actions.skip_self_promo'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input
|
<input id="chkSkipSelfPromo" v-model="skipSelfPromo" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
id="chkSkipSelfPromo"
|
|
||||||
v-model="skipSelfPromo"
|
|
||||||
class="uk-checkbox"
|
|
||||||
type="checkbox"
|
|
||||||
@change="onChange($event)"
|
|
||||||
/>
|
|
||||||
<br />
|
<br />
|
||||||
<label for="chkSkipNonMusic"><strong v-t="'actions.skip_non_music'" /></label>
|
<label for="chkSkipNonMusic"><strong v-t="'actions.skip_non_music'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input
|
<input
|
||||||
id="chkSkipNonMusic"
|
id="chkSkipNonMusic"
|
||||||
v-model="skipMusicOffTopic"
|
v-model="skipMusicOffTopic"
|
||||||
class="uk-checkbox"
|
class="checkbox"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
@change="onChange($event)"
|
@change="onChange($event)"
|
||||||
/>
|
/>
|
||||||
@ -75,17 +72,11 @@
|
|||||||
<br />
|
<br />
|
||||||
<label for="chkAutoPlayVideo"><strong v-t="'actions.autoplay_video'" /></label>
|
<label for="chkAutoPlayVideo"><strong v-t="'actions.autoplay_video'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input
|
<input id="chkAutoPlayVideo" v-model="autoPlayVideo" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
id="chkAutoPlayVideo"
|
|
||||||
v-model="autoPlayVideo"
|
|
||||||
class="uk-checkbox"
|
|
||||||
type="checkbox"
|
|
||||||
@change="onChange($event)"
|
|
||||||
/>
|
|
||||||
<br />
|
<br />
|
||||||
<label for="chkAudioOnly"><strong v-t="'actions.audio_only'" /></label>
|
<label for="chkAudioOnly"><strong v-t="'actions.audio_only'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input id="chkAudioOnly" v-model="listen" class="uk-checkbox" type="checkbox" @change="onChange($event)" />
|
<input id="chkAudioOnly" v-model="listen" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
<br />
|
<br />
|
||||||
<label for="ddlDefaultQuality"><strong v-t="'actions.default_quality'" /></label>
|
<label for="ddlDefaultQuality"><strong v-t="'actions.default_quality'" /></label>
|
||||||
<br />
|
<br />
|
||||||
@ -113,14 +104,14 @@
|
|||||||
<br />
|
<br />
|
||||||
<label for="chkShowComments"><strong v-t="'actions.show_comments'" /></label>
|
<label for="chkShowComments"><strong v-t="'actions.show_comments'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input id="chkShowComments" v-model="showComments" class="uk-checkbox" type="checkbox" @change="onChange($event)" />
|
<input id="chkShowComments" v-model="showComments" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
<br />
|
<br />
|
||||||
<label for="chkMinimizeDescription"><strong v-t="'actions.minimize_description_default'" /></label>
|
<label for="chkMinimizeDescription"><strong v-t="'actions.minimize_description_default'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input
|
<input
|
||||||
id="chkMinimizeDescription"
|
id="chkMinimizeDescription"
|
||||||
v-model="minimizeDescription"
|
v-model="minimizeDescription"
|
||||||
class="uk-checkbox"
|
class="checkbox"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
@change="onChange($event)"
|
@change="onChange($event)"
|
||||||
/>
|
/>
|
||||||
@ -130,7 +121,7 @@
|
|||||||
<input
|
<input
|
||||||
id="chkStoreWatchHistory"
|
id="chkStoreWatchHistory"
|
||||||
v-model="watchHistory"
|
v-model="watchHistory"
|
||||||
class="uk-checkbox"
|
class="checkbox"
|
||||||
type="checkbox"
|
type="checkbox"
|
||||||
@change="onChange($event)"
|
@change="onChange($event)"
|
||||||
/>
|
/>
|
||||||
@ -151,13 +142,13 @@
|
|||||||
<br />
|
<br />
|
||||||
<label for="chkDisableLBRY"><strong v-t="'actions.disable_lbry'" /></label>
|
<label for="chkDisableLBRY"><strong v-t="'actions.disable_lbry'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input id="chkDisableLBRY" v-model="disableLBRY" class="uk-checkbox" type="checkbox" @change="onChange($event)" />
|
<input id="chkDisableLBRY" v-model="disableLBRY" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
<br />
|
<br />
|
||||||
<label for="chkEnableLBRYProxy"><strong v-t="'actions.enable_lbry_proxy'" /></label>
|
<label for="chkEnableLBRYProxy"><strong v-t="'actions.enable_lbry_proxy'" /></label>
|
||||||
<br />
|
<br />
|
||||||
<input id="chkEnableLBRYProxy" v-model="proxyLBRY" class="uk-checkbox" type="checkbox" @change="onChange($event)" />
|
<input id="chkEnableLBRYProxy" v-model="proxyLBRY" class="checkbox" type="checkbox" @change="onChange($event)" />
|
||||||
<h2 v-t="'actions.instances_list'" />
|
<h2 v-t="'actions.instances_list'" />
|
||||||
<table class="uk-table">
|
<table class="table">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th v-text="$t('preferences.instance_name')" />
|
<th v-text="$t('preferences.instance_name')" />
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="uk-vertical-align text-center uk-height-1-1">
|
<div class="uk-vertical-align text-center uk-height-1-1">
|
||||||
<form class="uk-panel uk-panel-box">
|
<form class="uk-panel uk-panel-box children:pb-3">
|
||||||
<div class="uk-form-row">
|
<div class="uk-form-row">
|
||||||
<input
|
<input
|
||||||
v-model="username"
|
v-model="username"
|
||||||
|
@ -61,13 +61,13 @@
|
|||||||
<font-awesome-icon class="ml-1.5" v-if="video.uploaderVerified" icon="check" />
|
<font-awesome-icon class="ml-1.5" v-if="video.uploaderVerified" icon="check" />
|
||||||
</router-link>
|
</router-link>
|
||||||
|
|
||||||
<strong v-if="video.views >= 0 || video.uploadedDate" class="uk-text-small">
|
<strong v-if="video.views >= 0 || video.uploadedDate" class="text-sm">
|
||||||
<span v-if="video.views >= 0">
|
<span v-if="video.views >= 0">
|
||||||
<font-awesome-icon icon="eye" />
|
<font-awesome-icon icon="eye" />
|
||||||
<span v-text="`${numberFormat(video.views)} •`" />
|
<span class="pl-0.5" v-text="`${numberFormat(video.views)} •`" />
|
||||||
</span>
|
</span>
|
||||||
<span v-if="video.uploadedDate" v-text="video.uploadedDate" />
|
<span v-if="video.uploadedDate" class="pl-0.5" v-text="video.uploadedDate" />
|
||||||
<span v-if="video.uploaded" v-text="timeAgo(video.uploaded)" />
|
<span v-if="video.uploaded" class="pl-0.5" v-text="timeAgo(video.uploaded)" />
|
||||||
</strong>
|
</strong>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user