content: [package]
  name = "bevy_proto"
  version = "0.11.0"
  edition = "2021"
  authors = ["Gino Valente <gino.valente.code@gmail.com>"]
  description = "Create config files for entities in Bevy"
  repository = "https://github.com/MrGVSV/bevy_proto"
  license = "MIT OR Apache-2.0"
  keywords = ["bevy", "prefab", "blueprint", "config", "entity"]
  readme = "README.md"
  exclude = ["assets/**/*", ".github/**/*"]
  
  [workspace]
  members = ["bevy_proto_derive", "bevy_proto_backend"]
  
  [features]
  default = [
      # Crate Features
      "auto_name",
      "custom_schematics",
      "ron",
      # Bevy Features
      "bevy_animation",
      "bevy_audio",
      "bevy_core_pipeline",
      "bevy_gltf",
      "bevy_pbr",
      "bevy_render",
      "bevy_scene",
      "bevy_sprite",
      "bevy_text",
      "bevy_ui",
  ]
  
  # When enabled, entities will automatically use a prototype's ID as its `Name`
  auto_name = ["bevy_proto_backend/auto_name"]
  # When enabled, some custom schematics will be available to use.
  custom_schematics = []
  # Enables RON deserialization
  ron = ["dep:ron"]
  # Enables YAML deserialization
  yaml = ["dep:serde_yaml"]
  
  # Enables registrations for types available with Bevy's bevy_animation feature
  bevy_animation = ["bevy/bevy_animation", "bevy_proto_backend/bevy_animation"]
  # Enables registrations for types available with Bevy's bevy_audio feature
  bevy_audio = ["bevy/bevy_audio", "bevy_proto_backend/bevy_audio"]
  # Enables registrations for types available with Bevy's bevy_core_pipeline feature
  bevy_core_pipeline = [
      "bevy/bevy_core_pipeline",
      "bevy_proto_backend/bevy_core_pipeline",
      "bevy_render",
  ]
  # Enables registrations for types available with Bevy's bevy_gltf feature
  bevy_gltf = [
      "bevy/bevy_gltf",
      "bevy_proto_backend/bevy_gltf",
      "bevy_core_pipeline",
      "bevy_pbr",
      "bevy_render",
      "bevy_scene",
  ]
  # Enables registrations for types available with Bevy's bevy_pbr feature
  bevy_pbr = [
      "bevy/bevy_pbr",
      "bevy_proto_backend/bevy_pbr",
      "bevy_core_pipeline",
  ]
  # Enables registrations for types available with Bevy's bevy_render feature
  bevy_render = ["bevy/bevy_render", "bevy_proto_backend/bevy_render"]
  # Enables registrations for types available with Bevy's bevy_scene feature
  bevy_scene = [
      "bevy/bevy_scene",
      "bevy_proto_backend/bevy_scene",
      "bevy_render",
  ]
  # Enables registrations for types available with Bevy's bevy_sprite feature
  bevy_sprite = [
      "bevy/bevy_sprite",
      "bevy_proto_backend/bevy_sprite",
      "bevy_render",
      "bevy_core_pipeline",
  ]
  # Enables registrations for types available with Bevy's bevy_text feature
  bevy_text = [
      "bevy/bevy_text",
      "bevy_proto_backend/bevy_text",
      "bevy_sprite",
      "bevy_render",
  ]
  # Enables registrations for types available with Bevy's bevy_ui feature
  bevy_ui = [
      "bevy/bevy_ui",
      "bevy_proto_backend/bevy_ui",
      "bevy_sprite",
      "bevy_render",
      "bevy_core_pipeline",
      "bevy_text",
  ]
  
  [dependencies]
  bevy_proto_backend = { version = "0.4", path = "./bevy_proto_backend", default-features = false }
  bevy = { version = "0.11", default-features = false, features = ["bevy_asset"] }
  anyhow = "1.0"
  serde = "1.0"
  thiserror = "1.0"
  path-clean = "1.0"
  ron = { version = "0.8", optional = true, default-features = false }
  serde_yaml = { version = "0.9", optional = true, default-features = false }
  
  [dev-dependencies]
  ron = "0.8"
  serde_yaml = "0.9"
  bevy = "0.11.0"
  bevy_prototype_lyon = "0.9.0"
  trybuild = "1.0.71"
  
  [[example]]
  name = "asset_schematic"
  path = "examples/asset_schematic.rs"
  required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite"]
  
  [[example]]
  name = "basic_schematic"
  path = "examples/basic_schematic.rs"
  required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite"]
  
  [[example]]
  name = "custom_config"
  path = "examples/custom_config.rs"
  required-features = ["ron", "auto_name"]
  
  [[example]]
  name = "custom_loader"
  path = "examples/custom_loader.rs"
  required-features = ["ron", "auto_name"]
  
  [[example]]
  name = "custom_schematic"
  path = "examples/custom_schematic.rs"
  required-features = ["ron", "auto_name"]
  
  [[example]]
  name = "cycles"
  path = "examples/cycles.rs"
  required-features = ["ron", "auto_name"]
  
  [[example]]
  name = "derive_schematic"
  path = "examples/derive_schematic.rs"
  required-features = []
  
  [[example]]
  name = "hierarchy"
  path = "examples/hierarchy.rs"
  required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite"]
  
  [[example]]
  name = "hot_reload"
  path = "examples/hot_reload.rs"
  required-features = ["ron", "custom_schematics", "auto_name", "bevy_sprite"]
  
  [[example]]
  name = "loading"
  path = "examples/loading.rs"
  required-features = ["ron", "auto_name"]
  
  [[example]]
  name = "templates"
  path = "examples/templates.rs"
  required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite", "yaml"]
  
  [[example]]
  name = "bevy_asset_loading"
  path = "examples/bevy/asset_loading.rs"
  required-features = ["ron", "auto_name", "custom_schematics"]
  
  [[example]]
  name = "bevy_sprite_sheet"
  path = "examples/bevy/sprite_sheet.rs"
  required-features = ["ron", "auto_name", "custom_schematics", "bevy_sprite"]
  
  [[example]]
  name = "bevy_ui"
  path = "examples/bevy/ui.rs"
  required-features = ["ron", "auto_name", "custom_schematics"]
  
  [[test]]
  name = "compile_tests"
  path = "tests/compile_tests.rs"