frontend: align types to backend, playout HLS, rm Jellyfin proxy (#12)
This commit is contained in:
@@ -8,7 +8,7 @@ import type {
|
||||
LogoPosition,
|
||||
ProgrammingBlock,
|
||||
MediaFilter,
|
||||
RecyclePolicy,
|
||||
RotationPolicy,
|
||||
Weekday,
|
||||
} from "@/lib/types";
|
||||
import { WEEKDAYS } from "@/lib/types";
|
||||
@@ -51,7 +51,7 @@ export function defaultBlock(startMins = 20 * 60, durationMins = 60): Programmin
|
||||
duration_mins: durationMins,
|
||||
content: { type: "algorithmic", filter: defaultFilter(), strategy: "random" },
|
||||
loop_on_finish: true,
|
||||
ignore_recycle_policy: false,
|
||||
ignore_rotation_policy: false,
|
||||
access_mode: "public",
|
||||
};
|
||||
}
|
||||
@@ -67,7 +67,7 @@ export function useChannelForm(channel: ChannelResponse | null) {
|
||||
const [description, setDescription] = useState("");
|
||||
const [timezone, setTimezone] = useState("UTC");
|
||||
const [dayBlocks, setDayBlocks] = useState<Record<Weekday, ProgrammingBlock[]>>(emptyDayBlocks);
|
||||
const [recyclePolicy, setRecyclePolicy] = useState<RecyclePolicy>({
|
||||
const [rotationPolicy, setRotationPolicy] = useState<RotationPolicy>({
|
||||
cooldown_days: null,
|
||||
cooldown_generations: null,
|
||||
min_available_ratio: 0.1,
|
||||
@@ -96,12 +96,12 @@ export function useChannelForm(channel: ChannelResponse | null) {
|
||||
...emptyDayBlocks(),
|
||||
...channel.schedule_config.day_blocks,
|
||||
});
|
||||
setRecyclePolicy(channel.recycle_policy);
|
||||
setRotationPolicy(channel.rotation_policy);
|
||||
setAutoSchedule(channel.auto_schedule);
|
||||
setAccessMode(channel.access_mode ?? "public");
|
||||
setAccessMode((channel.access_mode as AccessMode) ?? "public");
|
||||
setAccessPassword("");
|
||||
setLogo(channel.logo ?? null);
|
||||
setLogoPosition(channel.logo_position ?? "top_right");
|
||||
setLogoPosition((channel.logo_position as LogoPosition) ?? "top_right");
|
||||
setLogoOpacity(Math.round((channel.logo_opacity ?? 1) * 100));
|
||||
setWebhookUrl(channel.webhook_url ?? "");
|
||||
setWebhookPollInterval(channel.webhook_poll_interval_secs ?? 5);
|
||||
@@ -164,7 +164,7 @@ export function useChannelForm(channel: ChannelResponse | null) {
|
||||
// Blocks (day-keyed)
|
||||
dayBlocks, setDayBlocks,
|
||||
selectedBlockId, setSelectedBlockId,
|
||||
recyclePolicy, setRecyclePolicy,
|
||||
rotationPolicy, setRotationPolicy,
|
||||
addBlock,
|
||||
updateBlock,
|
||||
removeBlock,
|
||||
|
||||
Reference in New Issue
Block a user