@mediahub-bg/ott-objects 0.5.35 → 0.5.37
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/web/types.ts +107 -0
package/package.json
CHANGED
package/web/types.ts
CHANGED
|
@@ -992,3 +992,110 @@ export interface BanEntry {
|
|
|
992
992
|
banTime: number /* int64 */;
|
|
993
993
|
expire: number /* int64 */;
|
|
994
994
|
}
|
|
995
|
+
|
|
996
|
+
//////////
|
|
997
|
+
// source: usersettings_pub.go
|
|
998
|
+
/*
|
|
999
|
+
Copyright (C) MediaHub Ltd - All Rights Reserved
|
|
1000
|
+
* Unauthorized copying of this file, via any medium is strictly prohibited
|
|
1001
|
+
* Proprietary and confidential
|
|
1002
|
+
* Written by Peter Gerasimov <gerasimov@mediahub.eu>, June 2026
|
|
1003
|
+
*/
|
|
1004
|
+
|
|
1005
|
+
export interface DeviceSettingsChannel {
|
|
1006
|
+
id: string;
|
|
1007
|
+
audio: string; // language code | "und" default
|
|
1008
|
+
audioIsChangedByUser: boolean; // user set audio explicitly
|
|
1009
|
+
subtitles: string; // language code | "und" default | "zxx" off
|
|
1010
|
+
areSubtitlesChangedByUser: boolean; // user set subtitles explicitly
|
|
1011
|
+
resolution: string; // "auto" | "WIDTHxHEIGHT"
|
|
1012
|
+
resolutionIsChangedByUser: boolean; // user set resolution explicitly
|
|
1013
|
+
}
|
|
1014
|
+
export interface DeviceChannelSettings {
|
|
1015
|
+
visible?: boolean;
|
|
1016
|
+
locked?: boolean; // requires PIN
|
|
1017
|
+
timeshift?: boolean;
|
|
1018
|
+
position?: number /* int */; // order in the channel list
|
|
1019
|
+
favoritePosition?: number /* int */; // order in favorites
|
|
1020
|
+
hasBeenReordered?: boolean; // ott-client-flutter only
|
|
1021
|
+
}
|
|
1022
|
+
export interface DeviceSettingsChannelItem {
|
|
1023
|
+
channelInfo: DeviceSettingsChannel;
|
|
1024
|
+
channelSettings: DeviceChannelSettings;
|
|
1025
|
+
}
|
|
1026
|
+
export interface EpgFavoriteInfo {
|
|
1027
|
+
channelId: string;
|
|
1028
|
+
start: number /* int64 */; // program start, unix
|
|
1029
|
+
stop: number /* int64 */; // program stop, unix
|
|
1030
|
+
timestamp: number /* int64 */; // when the favorite was saved, unix
|
|
1031
|
+
}
|
|
1032
|
+
export interface DeviceSettings {
|
|
1033
|
+
password?: string; // parental PIN
|
|
1034
|
+
languageCode?: string; // UI language
|
|
1035
|
+
channelPreffs?: { [key: string]: DeviceChannelSettings}; // per-channel state, keyed by channel id
|
|
1036
|
+
favoriteAssets?: EpgFavoriteInfo[]; // saved EPG favorites
|
|
1037
|
+
unlock_channel_period?: number /* int64 */; // re-lock timeout
|
|
1038
|
+
is_clock_always_on?: boolean;
|
|
1039
|
+
DeviceSettingsItemList?: DeviceSettingsChannelItem[];
|
|
1040
|
+
}
|
|
1041
|
+
export interface MobileSettings {
|
|
1042
|
+
is_clock_always_on?: boolean;
|
|
1043
|
+
languageCode?: string; // UI language
|
|
1044
|
+
password?: string; // parental PIN
|
|
1045
|
+
unlock_channel_period?: number /* int */; // re-lock timeout
|
|
1046
|
+
resolution?: string; // "auto" | "WIDTHxHEIGHT"
|
|
1047
|
+
DeviceSettingsItemList?: DeviceSettingsChannelItem[];
|
|
1048
|
+
favoriteAssets?: EpgFavoriteInfo[]; // saved EPG favorites
|
|
1049
|
+
isWelcomeScreenShownOnMobile?: boolean;
|
|
1050
|
+
isOldClient?: boolean;
|
|
1051
|
+
}
|
|
1052
|
+
export interface ReactChannelSetting {
|
|
1053
|
+
favoritePosition: number /* int */; // 0 = not a favorite
|
|
1054
|
+
favorite?: boolean;
|
|
1055
|
+
visible?: boolean;
|
|
1056
|
+
audio?: string; // null = inherit global
|
|
1057
|
+
resolution?: string; // null = inherit global
|
|
1058
|
+
subtitles?: string; // null = inherit global
|
|
1059
|
+
position?: number /* int */; // manual order; null = original
|
|
1060
|
+
locked?: boolean; // requires PIN
|
|
1061
|
+
}
|
|
1062
|
+
export interface ReactTVSettings {
|
|
1063
|
+
resolution: string; // "auto" | "WIDTHxHEIGHT"
|
|
1064
|
+
subtitles: string; // code | "und" default | "zxx" off
|
|
1065
|
+
audio: string; // code | "und" default
|
|
1066
|
+
channels: { [key: string]: ReactChannelSetting}; // per-channel overrides, keyed by channel id
|
|
1067
|
+
lockPeriod: number /* int64 */; // parental-lock period in ms; -1 = always, -2 = session
|
|
1068
|
+
clockPosition: string; // "in-menu" | "always"
|
|
1069
|
+
}
|
|
1070
|
+
export interface WebChannelInfo {
|
|
1071
|
+
id: string;
|
|
1072
|
+
name?: string; // recomputed from the channel list on read
|
|
1073
|
+
}
|
|
1074
|
+
export interface WebChannelSettings {
|
|
1075
|
+
favoritePosition?: number /* int */;
|
|
1076
|
+
timeshift?: boolean;
|
|
1077
|
+
visible?: boolean;
|
|
1078
|
+
audio?: string; // null = inherit global
|
|
1079
|
+
resolution?: string; // null = inherit global
|
|
1080
|
+
subtitles?: string; // null = inherit global
|
|
1081
|
+
position?: number /* int */;
|
|
1082
|
+
locked?: boolean; // requires PIN
|
|
1083
|
+
}
|
|
1084
|
+
export interface WebDeviceSettingsItem {
|
|
1085
|
+
channelInfo: WebChannelInfo;
|
|
1086
|
+
channelSettings: WebChannelSettings;
|
|
1087
|
+
}
|
|
1088
|
+
export interface WebSettings {
|
|
1089
|
+
filterTypeRecorded: boolean; // show recorded content
|
|
1090
|
+
filterTypeLive: boolean; // show live content
|
|
1091
|
+
isVerticalLayout: boolean;
|
|
1092
|
+
resolution: string; // "auto" | "WIDTHxHEIGHT"
|
|
1093
|
+
subtitles: string; // code | "und" default | "zxx" off
|
|
1094
|
+
audio: string; // code | "und" default
|
|
1095
|
+
DeviceSettingsItemList: WebDeviceSettingsItem[];
|
|
1096
|
+
lockPeriod: number /* int64 */; // parental-lock period in ms; -1 = always, -2 = session
|
|
1097
|
+
}
|
|
1098
|
+
export interface ProfileSettings {
|
|
1099
|
+
react_tv_settings?: ReactTVSettings; // react-tv-app (ClearReact)
|
|
1100
|
+
web_settings?: WebSettings; // mediahub-web-portal (ClearWeb)
|
|
1101
|
+
}
|