mirror of
https://github.com/AzuraCast/AzuraCast.git
synced 2024-06-13 12:46:41 +00:00
More ESLint fixes.
This commit is contained in:
parent
64fbbe6fd8
commit
38f480f72b
|
@ -32,8 +32,8 @@
|
||||||
|
|
||||||
<b-list-group>
|
<b-list-group>
|
||||||
<b-list-group-item
|
<b-list-group-item
|
||||||
v-for="(item, key) in panel.items"
|
v-for="(item, itemKey) in panel.items"
|
||||||
:key="key"
|
:key="itemKey"
|
||||||
:href="item.url"
|
:href="item.url"
|
||||||
>
|
>
|
||||||
{{
|
{{
|
||||||
|
|
|
@ -18,11 +18,15 @@ const props = defineProps({
|
||||||
},
|
},
|
||||||
data: {
|
data: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
labels: {
|
labels: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -17,11 +17,15 @@ const props = defineProps({
|
||||||
},
|
},
|
||||||
data: {
|
data: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
labels: {
|
labels: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
aspectRatio: {
|
aspectRatio: {
|
||||||
type: Number,
|
type: Number,
|
||||||
|
|
|
@ -20,7 +20,9 @@ const props = defineProps({
|
||||||
},
|
},
|
||||||
data: {
|
data: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -49,7 +49,7 @@
|
||||||
debounce="200"
|
debounce="200"
|
||||||
type="search"
|
type="search"
|
||||||
class="search-field form-control"
|
class="search-field form-control"
|
||||||
:placeholder="langSearch"
|
:placeholder="$gettext('Search')"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -58,8 +58,7 @@
|
||||||
<b-button
|
<b-button
|
||||||
v-b-tooltip.hover
|
v-b-tooltip.hover
|
||||||
variant="default"
|
variant="default"
|
||||||
title="Refresh"
|
:title="$gettext('Refresh rows')"
|
||||||
:title="langRefreshTooltip"
|
|
||||||
@click="onClickRefresh"
|
@click="onClickRefresh"
|
||||||
>
|
>
|
||||||
<icon icon="refresh" />
|
<icon icon="refresh" />
|
||||||
|
@ -69,7 +68,7 @@
|
||||||
v-b-tooltip.hover
|
v-b-tooltip.hover
|
||||||
variant="default"
|
variant="default"
|
||||||
:text="perPageLabel"
|
:text="perPageLabel"
|
||||||
:title="langPerPageTooltip"
|
:title="$gettext('Rows per page')"
|
||||||
>
|
>
|
||||||
<b-dropdown-item
|
<b-dropdown-item
|
||||||
v-for="pageOption in pageOptions"
|
v-for="pageOption in pageOptions"
|
||||||
|
@ -84,7 +83,7 @@
|
||||||
v-if="selectFields"
|
v-if="selectFields"
|
||||||
v-b-tooltip.hover
|
v-b-tooltip.hover
|
||||||
variant="default"
|
variant="default"
|
||||||
:title="langSelectFieldsTooltip"
|
:title="$gettext('Select displayed fields')"
|
||||||
>
|
>
|
||||||
<template #button-content>
|
<template #button-content>
|
||||||
<icon icon="filter_list" />
|
<icon icon="filter_list" />
|
||||||
|
@ -133,8 +132,8 @@
|
||||||
:per-page="perPage"
|
:per-page="perPage"
|
||||||
:items="itemProvider"
|
:items="itemProvider"
|
||||||
:fields="visibleFields"
|
:fields="visibleFields"
|
||||||
:empty-text="langNoRecords"
|
:empty-text="$gettext('No records to display.')"
|
||||||
:empty-filtered-text="langNoRecords"
|
:empty-filtered-text="$gettext('No records to display.')"
|
||||||
:responsive="responsive"
|
:responsive="responsive"
|
||||||
:no-provider-paging="handleClientSide"
|
:no-provider-paging="handleClientSide"
|
||||||
:no-provider-sorting="handleClientSide"
|
:no-provider-sorting="handleClientSide"
|
||||||
|
@ -150,7 +149,7 @@
|
||||||
>
|
>
|
||||||
<template #head(selected)="data">
|
<template #head(selected)="data">
|
||||||
<b-form-checkbox
|
<b-form-checkbox
|
||||||
:aria-label="langSelectAll"
|
:aria-label="$gettext('Select all visible rows')"
|
||||||
:checked="allSelected"
|
:checked="allSelected"
|
||||||
@change="toggleSelected"
|
@change="toggleSelected"
|
||||||
/>
|
/>
|
||||||
|
@ -158,11 +157,11 @@
|
||||||
<template #cell(selected)="{ rowSelected }">
|
<template #cell(selected)="{ rowSelected }">
|
||||||
<div class="text-muted">
|
<div class="text-muted">
|
||||||
<template v-if="rowSelected">
|
<template v-if="rowSelected">
|
||||||
<span class="sr-only">{{ langDeselectRow }}</span>
|
<span class="sr-only">{{ $gettext('Deselect') }}</span>
|
||||||
<icon icon="check_box" />
|
<icon icon="check_box" />
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<span class="sr-only">{{ langSelectRow }}</span>
|
<span class="sr-only">{{ $gettext('Select') }}</span>
|
||||||
<icon icon="check_box_outline_blank" />
|
<icon icon="check_box_outline_blank" />
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
@ -187,7 +186,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{ langLoading }}
|
{{ $gettext('Loading...') }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -217,7 +216,7 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import store from 'store';
|
import store from 'store';
|
||||||
import {forEach, filter, map} from 'lodash';
|
import {forEach, filter, map, defaultTo, includes} from 'lodash';
|
||||||
import Icon from './Icon.vue';
|
import Icon from './Icon.vue';
|
||||||
import {defineComponent} from "vue";
|
import {defineComponent} from "vue";
|
||||||
|
|
||||||
|
@ -319,33 +318,6 @@ export default defineComponent({
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
langRefreshTooltip() {
|
|
||||||
return this.$gettext('Refresh rows');
|
|
||||||
},
|
|
||||||
langPerPageTooltip() {
|
|
||||||
return this.$gettext('Rows per page');
|
|
||||||
},
|
|
||||||
langSelectFieldsTooltip() {
|
|
||||||
return this.$gettext('Select displayed fields');
|
|
||||||
},
|
|
||||||
langSelectAll() {
|
|
||||||
return this.$gettext('Select all visible rows');
|
|
||||||
},
|
|
||||||
langSelectRow() {
|
|
||||||
return this.$gettext('Select');
|
|
||||||
},
|
|
||||||
langDeselectRow() {
|
|
||||||
return this.$gettext('Deselect');
|
|
||||||
},
|
|
||||||
langSearch() {
|
|
||||||
return this.$gettext('Search');
|
|
||||||
},
|
|
||||||
langNoRecords() {
|
|
||||||
return this.$gettext('No records to display.');
|
|
||||||
},
|
|
||||||
langLoading() {
|
|
||||||
return this.$gettext('Loading...');
|
|
||||||
},
|
|
||||||
visibleFields() {
|
visibleFields() {
|
||||||
let fields = this.allFields.slice();
|
let fields = this.allFields.slice();
|
||||||
|
|
||||||
|
@ -411,10 +383,10 @@ export default defineComponent({
|
||||||
if (store.enabled && store.get(this.storeKey) !== undefined) {
|
if (store.enabled && store.get(this.storeKey) !== undefined) {
|
||||||
let settings = store.get(this.storeKey);
|
let settings = store.get(this.storeKey);
|
||||||
|
|
||||||
this.perPage = _.defaultTo(settings.perPage, this.defaultPerPage);
|
this.perPage = defaultTo(settings.perPage, this.defaultPerPage);
|
||||||
|
|
||||||
forEach(this.selectableFields, (field) => {
|
forEach(this.selectableFields, (field) => {
|
||||||
field.visible = _.includes(settings.visibleFields, field.key);
|
field.visible = includes(settings.visibleFields, field.key);
|
||||||
});
|
});
|
||||||
|
|
||||||
if (settings.sortBy) {
|
if (settings.sortBy) {
|
||||||
|
|
|
@ -30,6 +30,7 @@ const emit = defineEmits(['click']);
|
||||||
const onEventDidMount = (info) => {
|
const onEventDidMount = (info) => {
|
||||||
let desc = info?.event?.extendedProps?.description || null;
|
let desc = info?.event?.extendedProps?.description || null;
|
||||||
if (desc !== null) {
|
if (desc !== null) {
|
||||||
|
// eslint-ignore-line no-undef
|
||||||
$(info.el).tooltip({
|
$(info.el).tooltip({
|
||||||
title: desc,
|
title: desc,
|
||||||
placement: 'top',
|
placement: 'top',
|
||||||
|
|
|
@ -18,17 +18,14 @@
|
||||||
class="form-control log-viewer"
|
class="form-control log-viewer"
|
||||||
spellcheck="false"
|
spellcheck="false"
|
||||||
readonly
|
readonly
|
||||||
>{{ logs }}</textarea>
|
:value="logs"
|
||||||
|
/>
|
||||||
</b-overlay>
|
</b-overlay>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
import BWrappedFormCheckbox from "~/components/Form/BWrappedFormCheckbox";
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'StreamingLogView',
|
name: 'StreamingLogView',
|
||||||
components: {BWrappedFormCheckbox},
|
|
||||||
props: {
|
props: {
|
||||||
logUrl: {
|
logUrl: {
|
||||||
type: String,
|
type: String,
|
||||||
|
|
|
@ -322,7 +322,6 @@
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import TimeSeriesChart from '~/components/Common/Charts/TimeSeriesChart.vue';
|
import TimeSeriesChart from '~/components/Common/Charts/TimeSeriesChart.vue';
|
||||||
import DataTable from '~/components/Common/DataTable';
|
|
||||||
import store from 'store';
|
import store from 'store';
|
||||||
import Icon from '~/components/Common/Icon';
|
import Icon from '~/components/Common/Icon';
|
||||||
import Avatar from '~/components/Common/Avatar';
|
import Avatar from '~/components/Common/Avatar';
|
||||||
|
@ -330,7 +329,7 @@ import PlayButton from "~/components/Common/PlayButton";
|
||||||
import AlbumArt from "~/components/Common/AlbumArt";
|
import AlbumArt from "~/components/Common/AlbumArt";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: {PlayButton, Avatar, Icon, DataTable, TimeSeriesChart, AlbumArt},
|
components: {PlayButton, Avatar, Icon, TimeSeriesChart, AlbumArt},
|
||||||
props: {
|
props: {
|
||||||
userUrl: {
|
userUrl: {
|
||||||
type: String,
|
type: String,
|
||||||
|
|
|
@ -81,7 +81,7 @@ import AudioPlayer from '~/components/Common/AudioPlayer.vue';
|
||||||
import formatTime from '~/functions/formatTime.js';
|
import formatTime from '~/functions/formatTime.js';
|
||||||
import Icon from '~/components/Common/Icon.vue';
|
import Icon from '~/components/Common/Icon.vue';
|
||||||
import {usePlayerStore} from "~/store.js";
|
import {usePlayerStore} from "~/store.js";
|
||||||
import {useMounted, useStorage} from "@vueuse/core";
|
import {useStorage} from "@vueuse/core";
|
||||||
import {computed, ref, toRef} from "vue";
|
import {computed, ref, toRef} from "vue";
|
||||||
|
|
||||||
const store = usePlayerStore();
|
const store = usePlayerStore();
|
||||||
|
@ -90,7 +90,6 @@ const current = toRef(store, 'current');
|
||||||
|
|
||||||
const volume = useStorage('player_volume', 55);
|
const volume = useStorage('player_volume', 55);
|
||||||
const isMuted = useStorage('player_is_muted', false);
|
const isMuted = useStorage('player_is_muted', false);
|
||||||
const isMounted = useMounted();
|
|
||||||
const $player = ref(); // AudioPlayer
|
const $player = ref(); // AudioPlayer
|
||||||
|
|
||||||
const duration = computed(() => {
|
const duration = computed(() => {
|
||||||
|
|
|
@ -31,7 +31,9 @@ import {DateTime} from "luxon";
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
history: {
|
history: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
showAlbumArt: {
|
showAlbumArt: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
|
|
|
@ -20,7 +20,9 @@ import SongHistory from './SongHistory';
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
history: {
|
history: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
showAlbumArt: {
|
showAlbumArt: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
|
|
|
@ -105,7 +105,9 @@ const props = defineProps({
|
||||||
},
|
},
|
||||||
customFields: {
|
customFields: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
showDownloadButton: {
|
showDownloadButton: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
|
|
|
@ -248,7 +248,6 @@ const currentTimeTotalDisplay = computed(() => {
|
||||||
return ($currentTrackDuration) ? formatTime($currentTrackDuration) : null;
|
return ($currentTrackDuration) ? formatTime($currentTrackDuration) : null;
|
||||||
});
|
});
|
||||||
|
|
||||||
const isMounted = useMounted();
|
|
||||||
const $player = ref(); // Template ref
|
const $player = ref(); // Template ref
|
||||||
|
|
||||||
const volume = useStorage('player_volume', 55);
|
const volume = useStorage('player_volume', 55);
|
||||||
|
|
|
@ -64,7 +64,9 @@ export default {
|
||||||
},
|
},
|
||||||
libUrls: {
|
libUrls: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
baseUri: {
|
baseUri: {
|
||||||
type: String,
|
type: String,
|
||||||
|
|
|
@ -319,7 +319,9 @@ export default {
|
||||||
},
|
},
|
||||||
libUrls: {
|
libUrls: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
baseUri: {
|
baseUri: {
|
||||||
type: String,
|
type: String,
|
||||||
|
|
|
@ -167,7 +167,9 @@ export default {
|
||||||
},
|
},
|
||||||
playlists: {
|
playlists: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
batchUrl: {
|
batchUrl: {
|
||||||
type: String,
|
type: String,
|
||||||
|
|
|
@ -51,7 +51,9 @@ export default {
|
||||||
},
|
},
|
||||||
scheduleItems: {
|
scheduleItems: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|
|
@ -61,7 +61,9 @@
|
||||||
class="full-width form-control text-preformatted"
|
class="full-width form-control text-preformatted"
|
||||||
spellcheck="false"
|
spellcheck="false"
|
||||||
style="height: 100px;"
|
style="height: 100px;"
|
||||||
>{{ embedCode }}</textarea>
|
readonly
|
||||||
|
:value="embedCode"
|
||||||
|
/>
|
||||||
<copy-to-clipboard-button :text="embedCode" />
|
<copy-to-clipboard-button :text="embedCode" />
|
||||||
</b-card-body>
|
</b-card-body>
|
||||||
</b-card>
|
</b-card>
|
||||||
|
|
|
@ -8,7 +8,8 @@
|
||||||
class="form-control log-viewer"
|
class="form-control log-viewer"
|
||||||
spellcheck="false"
|
spellcheck="false"
|
||||||
readonly
|
readonly
|
||||||
>{{ logs }}</textarea>
|
:value="logs"
|
||||||
|
/>
|
||||||
|
|
||||||
<template #modal-footer>
|
<template #modal-footer>
|
||||||
<b-button
|
<b-button
|
||||||
|
|
|
@ -37,7 +37,9 @@ const props = defineProps({
|
||||||
},
|
},
|
||||||
listeners: {
|
listeners: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -32,14 +32,12 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import PlaylistTime from '~/components/Common/TimeCode';
|
|
||||||
import Icon from '~/components/Common/Icon';
|
import Icon from '~/components/Common/Icon';
|
||||||
import BWrappedFormGroup from "~/components/Form/BWrappedFormGroup";
|
|
||||||
import StreamersFormScheduleRow from "~/components/Stations/Streamers/Form/ScheduleRow.vue";
|
import StreamersFormScheduleRow from "~/components/Stations/Streamers/Form/ScheduleRow.vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'StreamerFormSchedule',
|
name: 'StreamerFormSchedule',
|
||||||
components: {StreamersFormScheduleRow, BWrappedFormGroup, Icon, PlaylistTime},
|
components: {StreamersFormScheduleRow, Icon},
|
||||||
props: {
|
props: {
|
||||||
form: {
|
form: {
|
||||||
type: Object,
|
type: Object,
|
||||||
|
@ -51,7 +49,9 @@ export default {
|
||||||
},
|
},
|
||||||
scheduleItems: {
|
scheduleItems: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: []
|
default: () => {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user