Skip to main content

sofie_engine/asset/
island_bundle.rs

1/// The area's bundle the app's build script wrote to `OUT_DIR/islands`, with its compressed copies when built with them.
2#[macro_export]
3macro_rules! island_bundle {
4    ($area:literal) => {{
5        let bundle = $crate::islands::IslandBundle::new(
6            $area,
7            include_bytes!(concat!(env!("OUT_DIR"), "/islands/", $area, ".js")),
8            include_bytes!(concat!(env!("OUT_DIR"), "/islands/", $area, ".css")),
9        );
10        $crate::islands::IslandBundle {
11            script: $crate::compressed_asset!(
12                bundle.script,
13                concat!(env!("OUT_DIR"), "/islands/", $area, ".js")
14            ),
15            stylesheet: $crate::compressed_asset!(
16                bundle.stylesheet,
17                concat!(env!("OUT_DIR"), "/islands/", $area, ".css")
18            ),
19            ..bundle
20        }
21    }};
22}