mirror of
https://github.com/joBr99/nspanel-lovelace-ui.git
synced 2026-02-22 05:58:39 +01:00
Compare commits
7 Commits
8eae83c8ba
...
d6c21cad90
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d6c21cad90 | ||
|
|
44640f33d2 | ||
|
|
2ae3b9bd8e | ||
|
|
2db991a371 | ||
|
|
2e52abd76c | ||
|
|
c26b277c56 | ||
|
|
127671047f |
@@ -44,6 +44,8 @@ Using a 6th entity will automatically activate the alternative layout.
|
||||
type: 0
|
||||
- entity: weather.demo_weather_north
|
||||
type: 1
|
||||
- entity: weather.demo_weather_north
|
||||
type: 2
|
||||
- entity: sensor.energy_usage
|
||||
- entity: delete
|
||||
- entity: sensor.indoor_temp
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*-----------------------------------------------------------------------
|
||||
TypeScript v4.3.3.42 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar / @TT-Tom / @ticaki / @Britzelpuf / @Sternmiere / @ravenS0ne
|
||||
TypeScript v4.3.3.43 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar / @TT-Tom / @ticaki / @Britzelpuf / @Sternmiere / @ravenS0ne
|
||||
- abgestimmt auf TFT 53 / v4.3.3 / BerryDriver 9 / Tasmota 13.3.0
|
||||
@joBr99 Projekt: https://github.com/joBr99/nspanel-lovelace-ui/tree/main/ioBroker
|
||||
NsPanelTs.ts (dieses TypeScript in ioBroker) Stable: https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts
|
||||
@@ -112,9 +112,10 @@ ReleaseNotes:
|
||||
- 06.02.2024 - v4.3.3.41 Fix: activeBrightness -> null
|
||||
- 06.02.2024 - v4.3.3.41 Fix: bHome -> corrected PageId
|
||||
- 07.02.2024 - v4.3.3.42 Minor Fixes
|
||||
- 09.02.2024 - v4.3.3.42 Change pageId with Alias in Communication with HMI (cardMedia)
|
||||
- 09.02.2024 - v4.3.3.42 spotiffy Media-Player: Dynamic loading of the speaker list, playlist, tracklist, fix repeat, add seek, add elapsed/duration
|
||||
|
||||
- 09.02.2024 - v4.3.3.42 Change pageId with Alias in Communication with HMI
|
||||
- 09.02.2024 - v4.3.3.42 Spotify Media-Player: Dynamic loading of the speaker list, playlist, tracklist, fix repeat, add seek, add elapsed/duration
|
||||
- 10.02.2024 - v4.3.3.42 Spotify Minor Fixes; Add miValue / maxValue to Volume-Slider
|
||||
- 10.02.2024 - v4.3.3.43 Fix: cardGrid2 => 9 Entities for Layout 'us-p' issue #1167
|
||||
|
||||
Todo:
|
||||
- XX.XX.XXXX - v5.0.0 Change the bottomScreensaverEntity (rolling) if more than 6 entries are defined
|
||||
@@ -212,6 +213,7 @@ Upgrades in Konsole:
|
||||
---------------------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
|
||||
/******************************* Begin CONFIG Parameter *******************************/
|
||||
|
||||
// DE: liefert bei true detailliertere Meldundgen im Log.
|
||||
@@ -981,7 +983,7 @@ export const config: Config = {
|
||||
// _________________________________ DE: Ab hier keine Konfiguration mehr _____________________________________
|
||||
// _________________________________ EN: No more configuration from here _____________________________________
|
||||
|
||||
const scriptVersion: string = 'v4.3.3.42';
|
||||
const scriptVersion: string = 'v4.3.3.43';
|
||||
const tft_version: string = 'v4.3.3';
|
||||
const desired_display_firmware_version = 53;
|
||||
const berry_driver_version = 9;
|
||||
@@ -3382,7 +3384,11 @@ function GeneratePageElements(page: PageType): string {
|
||||
maxItems = 6;
|
||||
break;
|
||||
case 'cardGrid2':
|
||||
maxItems = 8;
|
||||
if (getState(NSPanel_Path + 'NSPanel_Version').val == 'us-p') {
|
||||
maxItems = 9;
|
||||
} else {
|
||||
maxItems = 8;
|
||||
};
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -4773,7 +4779,7 @@ function subscribeMediaSubscriptions(id: string): void {
|
||||
GeneratePage(activePage!);
|
||||
setTimeout(async function () {
|
||||
GeneratePage(activePage!);
|
||||
}, 3000);
|
||||
}, 1500);
|
||||
}
|
||||
},50)
|
||||
});
|
||||
@@ -5304,12 +5310,16 @@ function GenerateMediaPage(page: NSPanel.PageMedia): NSPanel.Payload[] {
|
||||
media_icon = Icons.GetIcon('spotify');
|
||||
name = getState(id + '.CONTEXT_DESCRIPTION').val;
|
||||
let nameLength = name.length;
|
||||
if (name.substring(0,9) == 'Playlist:') {
|
||||
if (name.substring(0,17) == 'Playlist: This Is') {
|
||||
name = name.slice(18, 34) + '...';
|
||||
} else if (name.substring(0,9) == 'Playlist:') {
|
||||
name = name.slice(10, 26) + '...';
|
||||
} else if (name.substring(0,6) == 'Album:') {
|
||||
name = name.slice(7, 23) + '...';
|
||||
} else if (name.substring(0,6) == 'Track') {
|
||||
name = 'Spotify-Premium';
|
||||
} else if (name.substring(0,6) == 'Track:') {
|
||||
name = name.slice(7, 23) + '...';
|
||||
} else if (name.substring(0,7) == 'Artist:') {
|
||||
name = name.slice(8, 24) + '...';
|
||||
}
|
||||
if (nameLength == 0) {
|
||||
name = 'Spotify-Premium';
|
||||
@@ -5407,7 +5417,7 @@ function GenerateMediaPage(page: NSPanel.PageMedia): NSPanel.Payload[] {
|
||||
name = page.heading;
|
||||
}
|
||||
|
||||
let volume = getState(id + '.VOLUME').val;
|
||||
let volume = scale(getState(id + '.VOLUME').val, activePage.items[0].minValue ?? 0, activePage.items[0].maxValue ?? 100, 100, 0);
|
||||
let iconplaypause = Icons.GetIcon('pause'); //pause
|
||||
let shuffle_icon = Icons.GetIcon('shuffle-variant'); //shuffle
|
||||
let onoffbutton = 1374;
|
||||
@@ -5614,7 +5624,7 @@ function GenerateMediaPage(page: NSPanel.PageMedia): NSPanel.Payload[] {
|
||||
let tempTrackList = JSON.parse(getState(page.items[0].adapterPlayerInstance + 'player.playlist.trackListArray').val);
|
||||
globalTracklist = tempTrackList;
|
||||
} catch {
|
||||
log('Hello Mr. Developer something went wrong in tracklist!', 'warn')
|
||||
log('Hello Mr. Developer something went wrong in tracklist!', 'debug')
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5692,11 +5702,6 @@ function GenerateMediaPage(page: NSPanel.PageMedia): NSPanel.Payload[] {
|
||||
repeatIcon = Icons.GetIcon('repeat');
|
||||
repeatIconCol = rgb_dec565(HMIOn);
|
||||
}
|
||||
/*
|
||||
else {
|
||||
repeatIcon = Icons.GetIcon('repeat-off');
|
||||
}
|
||||
*/
|
||||
} else if (v2Adapter == 'volumio') { /* Volumio: only Repeat true/false with API */
|
||||
if (getState(id + '.REPEAT').val == true) {
|
||||
repeatIcon = Icons.GetIcon('repeat-variant');
|
||||
@@ -7043,12 +7048,13 @@ function HandleButtonEvent(words: any): void {
|
||||
pageCounter = -1;
|
||||
(function () { if (timeoutSlider) { clearTimeout(timeoutSlider); timeoutSlider = null; } })();
|
||||
timeoutSlider = setTimeout(async function () {
|
||||
setIfExists(id + '.VOLUME', parseInt(words[4]));
|
||||
setTimeout(async function () {
|
||||
let vVolume = scale(parseInt(words[4]), 100, 0, activePage.items[0].minValue ?? 0, activePage.items[0].maxValue ?? 100);
|
||||
setIfExists(id + '.VOLUME', Math.floor(vVolume));
|
||||
pageCounter = 1;
|
||||
GeneratePage(activePage!);
|
||||
}, 3000);
|
||||
}, 20);
|
||||
}, 10);
|
||||
}, 50);
|
||||
break;
|
||||
case 'mode-speakerlist':
|
||||
let pageItem = findPageItem(id);
|
||||
@@ -8960,7 +8966,7 @@ function HandleScreensaverUpdate(): void {
|
||||
val = parseFloat(val);
|
||||
}
|
||||
let iconColor = rgb_dec565(White);
|
||||
let icon;
|
||||
let icon;
|
||||
if (config.bottomScreensaverEntity[i].ScreensaverEntityIconOn && existsObject(config.bottomScreensaverEntity[i].ScreensaverEntityIconOn!)) {
|
||||
let iconName = getState(config.bottomScreensaverEntity[i].ScreensaverEntityIconOn!).val;
|
||||
icon = Icons.GetIcon(iconName);
|
||||
@@ -10124,7 +10130,7 @@ namespace NSPanel {
|
||||
|
||||
export type PageGrid2 = {
|
||||
type: 'cardGrid2',
|
||||
items: [PageItem?, PageItem?, PageItem?, PageItem?, PageItem?, PageItem?, PageItem?, PageItem?],
|
||||
items: [PageItem?, PageItem?, PageItem?, PageItem?, PageItem?, PageItem?, PageItem?, PageItem?, PageItem?],
|
||||
} & PageBaseType
|
||||
|
||||
export type PageThermo = {
|
||||
|
||||
Reference in New Issue
Block a user