1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
use serde::Deserialize;
use stremio_core::runtime::msg::{Action, Event};
use stremio_core::types::resource::Stream;

#[derive(Deserialize)]
#[serde(tag = "event", content = "args")]
pub enum UIEvent {
    #[serde(rename_all = "camelCase")]
    LocationPathChanged {
        prev_path: String,
    },
    #[serde(rename_all = "camelCase")]
    Search {
        query: String,
        responses_count: u32,
    },
    Share {
        url: String,
    },
    StreamClicked {
        stream: Box<Stream>,
    },
}

pub enum WebEvent {
    CoreAction(Box<Action>),
    CoreEvent(Box<Event>),
    UIEvent(UIEvent),
}