diff --git a/Configurations/Entities/XAiConversationMappingAction.cs b/Configurations/Entities/XAiConversationMappingAction.cs new file mode 100644 index 0000000..92f30a6 --- /dev/null +++ b/Configurations/Entities/XAiConversationMappingAction.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using AutoMapper; +using xAiModels.Models.Dtos; +using xAiModels.Models.Entities; + +namespace xAiModels.Configurations.Entities +{ + public class XAiConversationMappingAction : IMappingAction + { + public void Process( + XAiConversation source, + XAiConversationDto destination, + ResolutionContext context + ) + { + throw new NotImplementedException(); + } + } +} \ No newline at end of file diff --git a/Configurations/Entities/XAiMessageMappingAction.cs b/Configurations/Entities/XAiMessageMappingAction.cs new file mode 100644 index 0000000..33c5b3b --- /dev/null +++ b/Configurations/Entities/XAiMessageMappingAction.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using AutoMapper; +using xAiModels.Models.Dtos; +using xAiModels.Models.Entities; + +namespace xAiModels.Configurations.Entities +{ + public class XAiMessageMappingAction : IMappingAction + { + public void Process( + XAiMessage source, + XAiMessageDto destination, + ResolutionContext context + ) + { + // + // Retrieve Owner ... + // Retrieve Conversation ... + throw new NotImplementedException(); + } + } +} \ No newline at end of file diff --git a/Configurations/Entities/XAiProjectMappingAction.cs b/Configurations/Entities/XAiProjectMappingAction.cs new file mode 100644 index 0000000..a4af258 --- /dev/null +++ b/Configurations/Entities/XAiProjectMappingAction.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using AutoMapper; +using xAiModels.Models.Dtos; +using xAiModels.Models.Entities; + +namespace xAiModels.Configurations.Entities +{ + public class XAiProjectMappingAction : IMappingAction + { + public void Process( + XAiProject source, + XAiProjectDto destination, + ResolutionContext context + ) + { + // + // Retrieve Owner ... + // Retrieve Title Resources ... + // Retrieve Description Resources ... + throw new NotImplementedException(); + } + } +} \ No newline at end of file diff --git a/Configurations/XAiApiConfiguration.cs b/Configurations/XAiApiConfiguration.cs index 28ef6ef..3c9686e 100644 --- a/Configurations/XAiApiConfiguration.cs +++ b/Configurations/XAiApiConfiguration.cs @@ -8,5 +8,15 @@ namespace xAiModels.Configurations /// Model Providers ... /// public XAiModelDescriptor[] Models { get; set; } = []; + + /// + /// Each User must Has a Default Project ... + /// + public string DefaultProjectResource { get; set; } + + /// + /// Each User must Has a Default Conversation ... + /// + public string DefaultConversationResource { get; set; } } } \ No newline at end of file diff --git a/Configurations/XAiModelMappersProfile.cs b/Configurations/XAiModelMappersProfile.cs new file mode 100644 index 0000000..70322a4 --- /dev/null +++ b/Configurations/XAiModelMappersProfile.cs @@ -0,0 +1,28 @@ +using AutoMapper; +using xAiModels.Configurations.Entities; +using xAiModels.Models.Dtos; +using xAiModels.Models.Entities; + +namespace xAiModels.Configurations +{ + public class XAiModelMappersProfile : Profile + { + public XAiModelMappersProfile() + { + // + // XAiMessage ... + CreateMap() + .AfterMap(); + + // + // XAiProject ... + CreateMap() + .AfterMap(); + + // + // XAiConversation ... + CreateMap() + .AfterMap(); + } + } +} \ No newline at end of file diff --git a/Interfaces/IXAiDataProvider.cs b/Interfaces/IXAiDataProvider.cs new file mode 100644 index 0000000..38ffced --- /dev/null +++ b/Interfaces/IXAiDataProvider.cs @@ -0,0 +1,10 @@ +namespace xAiModels.Interfaces +{ + /// + /// All Data Manipulation Requirements ... + /// + public interface IXAiDataProvider + { + + } +} \ No newline at end of file