use std::borrow::Cow;
use bevy::prelude::*;
use bevy_cobweb::prelude::*;
use crate::prelude::*;
pub struct CobwebUiPlugin;
impl Plugin for CobwebUiPlugin
{
fn build(&self, app: &mut App)
{
if !app.is_plugin_added::<ReactPlugin>() {
app.add_plugins(ReactPlugin);
}
if !app.is_plugin_added::<BevyCobwebUiCorePlugin>() {
app.add_plugins(BevyCobwebUiCorePlugin);
}
app.register_type::<Cow<str>>()
.register_type_data::<Cow<str>, ReflectDeserialize>()
.add_plugins(crate::builtin::BuiltinPlugin)
.add_plugins(ReactExtPlugin)
.add_plugins(BevyExtPlugin)
.add_plugins(LocalizationPlugin)
.add_plugins(SickleExtPlugin)
.add_plugins(ToolsPlugin)
.add_plugins(AssetsExtPlugin)
.add_plugins(CobwebBevyUiPlugin);
#[cfg(feature = "editor")]
app.add_plugins(crate::editor::CobEditorPlugin);
}
}