// Generated from WebIDL - DO NOT EDIT
// Source: @webref/idl/capture-handle-identity
///|
/// CaptureHandleConfig dictionary
pub(all) struct CaptureHandleConfig {
exposeOrigin : Bool?
handle : String?
permittedOrigins : Array[String]?
}
///|
/// Create a new CaptureHandleConfig with default values
pub fn CaptureHandleConfig::default() -> CaptureHandleConfig {
CaptureHandleConfig::{
exposeOrigin: None,
handle: None,
permittedOrigins: None,
}
}
///|
extern "js" fn CaptureHandleConfig::to_js_ffi(
self : CaptureHandleConfig,
) -> JsValue =
#| (self) => ({
#| exposeOrigin: (self.exposeOrigin === -1 ? undefined : self.exposeOrigin),
#| handle: self.handle,
#| permittedOrigins: ((() => { const v = self.permittedOrigins; if (v === undefined || v.$tag !== 1) return undefined; return v._0; })())
#| })
///|
/// Convert to JsValue
pub fn CaptureHandleConfig::to_js(self : CaptureHandleConfig) -> JsValue {
CaptureHandleConfig::to_js_ffi(self)
}
///|
extern "js" fn CaptureHandleConfig::from_js_ffi(
value : JsValue,
) -> CaptureHandleConfig =
#| (v) => ({
#| exposeOrigin: (v.exposeOrigin === undefined ? -1 : v.exposeOrigin),
#| handle: v.handle,
#| permittedOrigins: (v.permittedOrigins === undefined ? { $tag: 0 } : { $tag: 1, _0: v.permittedOrigins })
#| })
///|
/// Convert from JsValue
pub fn CaptureHandleConfig::from_js(value : JsValue) -> CaptureHandleConfig {
CaptureHandleConfig::from_js_ffi(value)
}
///|
/// CaptureHandle dictionary
pub(all) struct CaptureHandle {
origin : String?
handle : String?
}
///|
/// Create a new CaptureHandle with default values
pub fn CaptureHandle::default() -> CaptureHandle {
CaptureHandle::{ origin: None, handle: None }
}
///|
extern "js" fn CaptureHandle::to_js_ffi(self : CaptureHandle) -> JsValue =
#| (self) => ({
#| origin: self.origin,
#| handle: self.handle
#| })
///|
/// Convert to JsValue
pub fn CaptureHandle::to_js(self : CaptureHandle) -> JsValue {
CaptureHandle::to_js_ffi(self)
}
///|
extern "js" fn CaptureHandle::from_js_ffi(value : JsValue) -> CaptureHandle =
#| (v) => ({
#| origin: v.origin,
#| handle: v.handle
#| })
///|
/// Convert from JsValue
pub fn CaptureHandle::from_js(value : JsValue) -> CaptureHandle {
CaptureHandle::from_js_ffi(value)
}