@christianriedl/media 1.0.149 → 1.0.150
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/views/MusicPage.vue +1 -1
- package/src/views/OnlineRadiosPage.vue +1 -1
- package/src/views/OnlineTVsPage.vue +2 -2
- package/src/views/PhotosGridPage.vue +3 -3
- package/src/views/PhotosPage.vue +1 -1
- package/src/views/RecordedVideosPage.vue +1 -1
- package/src/views/ThumbnailsPage.vue +2 -2
- package/src/views/VideosPage.vue +6 -6
package/package.json
CHANGED
package/src/views/MusicPage.vue
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
const playerNames = reactive<string[]>(['Local']);
|
|
24
24
|
const currentPlayer = ref('Local');
|
|
25
25
|
const items: IMediaItem[] = reactive([]);
|
|
26
|
-
const selected = ref<IMediaItem>({
|
|
26
|
+
const selected = ref<IMediaItem>({ name: 'Root', itemType: EItemType.Root } as IMediaFolder);
|
|
27
27
|
const playingTrackUrl = ref("");
|
|
28
28
|
const playingTrack = ref<IAudioFile | null>(null);
|
|
29
29
|
const playItems: IAudioFile[] = [];
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
const items: IMediaItem[] = reactive([]);
|
|
19
19
|
const itemIndex = ref(0);
|
|
20
20
|
const playIndex = ref(-1);
|
|
21
|
-
const selected = ref<IMediaItem>({
|
|
21
|
+
const selected = ref<IMediaItem>({ name: 'Root', itemType: EItemType.Root } as IMediaFolder);
|
|
22
22
|
const listHeight = ref(0);
|
|
23
23
|
const listhead = ref<ComponentPublicInstance|null>(null);
|
|
24
24
|
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
|
|
20
20
|
const items: IMediaItem[] = reactive([]);
|
|
21
21
|
const itemIndex = ref(0);
|
|
22
|
-
const selected = ref<IMediaItem>({
|
|
22
|
+
const selected = ref<IMediaItem>({ name: 'Root', itemType: EItemType.Root } as IMediaFolder);
|
|
23
23
|
const listHeight = ref(0);
|
|
24
24
|
const listhead = ref<ComponentPublicInstance | null>(null);
|
|
25
25
|
const audioStreams: IValueText[] = reactive([]);
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
url += `&width=${params.width}&height=${params.height}&videoBitRate=${params.videoBitRate}&audioBitRate=${params.audioBitRate}`;
|
|
68
68
|
}
|
|
69
69
|
else {
|
|
70
|
-
url = await epgCache.epg.requestChannelStream(selected.value.
|
|
70
|
+
url = await epgCache.epg.requestChannelStream(selected.value.name, 'mp4', undefined, params.videoBitRate, params.scaleFactor);
|
|
71
71
|
url = buildServerUrl(url, 'video/mp4');
|
|
72
72
|
}
|
|
73
73
|
if (url)
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
}
|
|
87
87
|
function getClass(folder: IMediaFolder): string[] {
|
|
88
88
|
let classes: string[] = [];
|
|
89
|
-
if (folder.
|
|
89
|
+
if (folder.creatorIdx >= 0) {
|
|
90
90
|
const pictureLocations = mediaService.pictureLocation;
|
|
91
91
|
if (folder.altColor) {
|
|
92
92
|
if (appConfig.theme !== 'light')
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
classes.push('italic');
|
|
99
99
|
classes.push('bold');
|
|
100
100
|
}
|
|
101
|
-
else if (pictureLocations.parents![folder.
|
|
101
|
+
else if (pictureLocations.parents![folder.creatorIdx] < 0) {
|
|
102
102
|
classes.push('bold');
|
|
103
103
|
}
|
|
104
104
|
}
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
if (folder.year && folder.year > 0)
|
|
124
124
|
selectedYear.value = folder.year;
|
|
125
125
|
selectedName.value = folder.name;
|
|
126
|
-
if (folder.
|
|
126
|
+
if (folder.creatorIdx >= 0 && !folder.populated) {
|
|
127
127
|
LocationHelper.populateParentFolder(mediaService, folder, mediaAppConfig.pictureParentLimit);
|
|
128
128
|
}
|
|
129
129
|
backVisible.value = selected.selected.itemType != EItemType.PictureGenreType;
|
package/src/views/PhotosPage.vue
CHANGED
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
116
|
function listBack() {
|
|
117
|
-
const parent = mediaService.getFolder(selected.selected.
|
|
117
|
+
const parent = mediaService.getFolder(selected.selected.dlnaParentId);
|
|
118
118
|
const index = parent.folders.indexOf(selected.selected);
|
|
119
119
|
const folders = setSelected(parent);
|
|
120
120
|
if (index)
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
|
|
19
19
|
const items: IMediaItem[] = reactive([]);
|
|
20
20
|
const itemIndex = ref(0);
|
|
21
|
-
const selected = ref<IMediaItem>({
|
|
21
|
+
const selected = ref<IMediaItem>({ name: 'Root', itemType: EItemType.Root } as IMediaFolder);
|
|
22
22
|
const listHeight = ref(0);
|
|
23
23
|
const listhead = ref<ComponentPublicInstance|null>(null);
|
|
24
24
|
const audioStreams: IValueText[] = reactive([]);
|
|
@@ -84,9 +84,9 @@
|
|
|
84
84
|
showDownload.value = false;
|
|
85
85
|
}
|
|
86
86
|
function getThumbnailUrl(image: IPictureFile) : string {
|
|
87
|
-
let url = `https://www.christian-riedl.com/media/apiimage/Thumbnail?image=${folder.value!.
|
|
87
|
+
let url = `https://www.christian-riedl.com/media/apiimage/Thumbnail?image=${folder.value!.url}${image.url}&tresX=${image.thumbWidth}&tresY=${image.thumbHeight}`;
|
|
88
88
|
if (image.orientation && (image.orientation === EOrientation.BottomLeft || image.orientation === EOrientation.TopRight))
|
|
89
|
-
url += '&orientation=' + Number(image.
|
|
89
|
+
url += '&orientation=' + Number(image.orientation);
|
|
90
90
|
return encodeURI(url);
|
|
91
91
|
}
|
|
92
92
|
</script>
|
package/src/views/VideosPage.vue
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
|
|
29
29
|
const items: IMediaItem[] = reactive([]);
|
|
30
30
|
const itemIndex = ref(0);
|
|
31
|
-
const selected = ref<IMediaItem>({
|
|
31
|
+
const selected = ref<IMediaItem>({ name: 'Root', itemType: EItemType.Root } as IMediaFolder);
|
|
32
32
|
const listHeight = ref(0);
|
|
33
33
|
const listhead = ref<any>(null);
|
|
34
34
|
const dialog = ref(false);
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
mediaService.getVideos(folder)
|
|
140
140
|
.then((videos) => {
|
|
141
141
|
selected.value = videos;
|
|
142
|
-
items.splice(0, items.length, ...videos.
|
|
142
|
+
items.splice(0, items.length, ...videos.files);
|
|
143
143
|
window.history.pushState({ noBackExitsApp: true }, '')
|
|
144
144
|
computeListHeight();
|
|
145
145
|
});
|
|
@@ -179,14 +179,14 @@
|
|
|
179
179
|
return "";
|
|
180
180
|
}
|
|
181
181
|
function getCreator(item: IVideoFile): string {
|
|
182
|
-
if (item.
|
|
183
|
-
return mediaService.getListEntry("Video.Director", item.
|
|
182
|
+
if (item.creatorIdx >= 0) {
|
|
183
|
+
return mediaService.getListEntry("Video.Director", item.creatorIdx);
|
|
184
184
|
}
|
|
185
185
|
return "";
|
|
186
186
|
}
|
|
187
187
|
function getGenre(item: IVideoFile): string {
|
|
188
|
-
if (item.
|
|
189
|
-
return mediaService.getListEntry("Video.Genre", item.
|
|
188
|
+
if (item.genreIdx >= 0) {
|
|
189
|
+
return mediaService.getListEntry("Video.Genre", item.genreIdx);
|
|
190
190
|
}
|
|
191
191
|
return "";
|
|
192
192
|
}
|