using System; using System.Collections.Generic; using Robust.Shared.GameObjects; using Robust.Shared.Serialization; namespace Content.Shared.Configurable { public class SharedConfigurationComponent : Component { public override string Name => "Configuration"; [Serializable, NetSerializable] public class ConfigurationBoundUserInterfaceState : BoundUserInterfaceState { public Dictionary Config { get; } public ConfigurationBoundUserInterfaceState(Dictionary config) { Config = config; } } /// /// Message sent to other components on this entity when DeviceNetwork configuration updated. /// public class ConfigUpdatedComponentMessage : ComponentMessage { public Dictionary Config { get; } public ConfigUpdatedComponentMessage(Dictionary config) { Config = config; } } /// /// Message data sent from client to server when the device configuration is updated. /// [Serializable, NetSerializable] public class ConfigurationUpdatedMessage : BoundUserInterfaceMessage { public Dictionary Config { get; } public ConfigurationUpdatedMessage(Dictionary config) { Config = config; } } [Serializable, NetSerializable] public class ValidationUpdateMessage : BoundUserInterfaceMessage { public string ValidationString { get; } public ValidationUpdateMessage(string validationString) { ValidationString = validationString; } } [Serializable, NetSerializable] public enum ConfigurationUiKey { Key } } }