diff --git a/api/Models/Requests/CaptchaVerifyRequest.cs b/api-models/Requests/CaptchaVerifyRequest.cs similarity index 81% rename from api/Models/Requests/CaptchaVerifyRequest.cs rename to api-models/Requests/CaptchaVerifyRequest.cs index b8ce081..bf58dc2 100644 --- a/api/Models/Requests/CaptchaVerifyRequest.cs +++ b/api-models/Requests/CaptchaVerifyRequest.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Requests +namespace Models.Requests { public class CaptchaVerifyRequest { diff --git a/api/Models/Requests/ContactRequest.cs b/api-models/Requests/ContactRequest.cs similarity index 95% rename from api/Models/Requests/ContactRequest.cs rename to api-models/Requests/ContactRequest.cs index 4837706..a104a86 100644 --- a/api/Models/Requests/ContactRequest.cs +++ b/api-models/Requests/ContactRequest.cs @@ -1,6 +1,6 @@ using System.ComponentModel.DataAnnotations; -namespace Api.Models.Requests +namespace Models.Requests { public sealed class ContactRequest { diff --git a/api/Models/Requests/JobMatchRequest.cs b/api-models/Requests/JobMatchRequest.cs similarity index 89% rename from api/Models/Requests/JobMatchRequest.cs rename to api-models/Requests/JobMatchRequest.cs index 9f3bd35..4c009cc 100644 --- a/api/Models/Requests/JobMatchRequest.cs +++ b/api-models/Requests/JobMatchRequest.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Requests; +namespace Models.Requests; public sealed class JobMatchRequest { diff --git a/api/Models/Requests/SubscribeRequest.cs b/api-models/Requests/SubscribeRequest.cs similarity index 91% rename from api/Models/Requests/SubscribeRequest.cs rename to api-models/Requests/SubscribeRequest.cs index 4967011..e165332 100644 --- a/api/Models/Requests/SubscribeRequest.cs +++ b/api-models/Requests/SubscribeRequest.cs @@ -1,6 +1,6 @@ using System.ComponentModel.DataAnnotations; -namespace Api.Models.Requests +namespace Models.Requests { public sealed class SubscribeRequest { diff --git a/api/Models/Requests/UploadCvRequest.cs b/api-models/Requests/UploadCvRequest.cs similarity index 67% rename from api/Models/Requests/UploadCvRequest.cs rename to api-models/Requests/UploadCvRequest.cs index b98b503..70c6b7a 100644 --- a/api/Models/Requests/UploadCvRequest.cs +++ b/api-models/Requests/UploadCvRequest.cs @@ -1,6 +1,7 @@ -using System.ComponentModel.DataAnnotations; +using Microsoft.AspNetCore.Http; +using System.ComponentModel.DataAnnotations; -namespace Api.Models.Requests +namespace Models.Requests { public sealed class UploadCvRequest { diff --git a/api/Models/Settings/CaptchaSettings.cs b/api-models/Settings/CaptchaSettings.cs similarity index 94% rename from api/Models/Settings/CaptchaSettings.cs rename to api-models/Settings/CaptchaSettings.cs index e9ca5cc..4281e6f 100644 --- a/api/Models/Settings/CaptchaSettings.cs +++ b/api-models/Settings/CaptchaSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings +namespace Models.Settings { public sealed class CaptchaSettings { diff --git a/api/Models/Settings/ContactSettings.cs b/api-models/Settings/ContactSettings.cs similarity index 83% rename from api/Models/Settings/ContactSettings.cs rename to api-models/Settings/ContactSettings.cs index 14d9080..93bf03d 100644 --- a/api/Models/Settings/ContactSettings.cs +++ b/api-models/Settings/ContactSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings +namespace Models.Settings { public sealed class ContactSettings { diff --git a/api/Models/Settings/FileStorageSettings.cs b/api-models/Settings/FileStorageSettings.cs similarity index 90% rename from api/Models/Settings/FileStorageSettings.cs rename to api-models/Settings/FileStorageSettings.cs index 0820b3c..31c1af6 100644 --- a/api/Models/Settings/FileStorageSettings.cs +++ b/api-models/Settings/FileStorageSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings +namespace Models.Settings { public sealed class FileStorageSettings { diff --git a/api/Models/Settings/GoogleSettings.cs b/api-models/Settings/GoogleSettings.cs similarity index 82% rename from api/Models/Settings/GoogleSettings.cs rename to api-models/Settings/GoogleSettings.cs index cdcfc70..4d5b59d 100644 --- a/api/Models/Settings/GoogleSettings.cs +++ b/api-models/Settings/GoogleSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings +namespace Models.Settings { public sealed class GoogleSettings { diff --git a/api/Models/Settings/KeyVaultSettings.cs b/api-models/Settings/KeyVaultSettings.cs similarity index 84% rename from api/Models/Settings/KeyVaultSettings.cs rename to api-models/Settings/KeyVaultSettings.cs index 0c2b54f..7239240 100644 --- a/api/Models/Settings/KeyVaultSettings.cs +++ b/api-models/Settings/KeyVaultSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings +namespace Models.Settings { public sealed class KeyVaultSettings { diff --git a/api/Models/Settings/SmtpSettings.cs b/api-models/Settings/SmtpSettings.cs similarity index 89% rename from api/Models/Settings/SmtpSettings.cs rename to api-models/Settings/SmtpSettings.cs index 0f87be3..d719a29 100644 --- a/api/Models/Settings/SmtpSettings.cs +++ b/api-models/Settings/SmtpSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings +namespace Models.Settings { public class SmtpSettings { diff --git a/api/Models/Settings/SubscribeSettings.cs b/api-models/Settings/SubscribeSettings.cs similarity index 84% rename from api/Models/Settings/SubscribeSettings.cs rename to api-models/Settings/SubscribeSettings.cs index c33361e..e802671 100644 --- a/api/Models/Settings/SubscribeSettings.cs +++ b/api-models/Settings/SubscribeSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings +namespace Models.Settings { public sealed class SubscribeSettings { diff --git a/api-models/api-models.csproj b/api-models/api-models.csproj new file mode 100644 index 0000000..d7c7a21 --- /dev/null +++ b/api-models/api-models.csproj @@ -0,0 +1,14 @@ + + + + net10.0 + Models + enable + enable + + + + + + + diff --git a/api/Clients/Api/Contracts/ICvMatcherApi.cs b/api/Clients/Api/Contracts/ICvMatcherApi.cs index 236fb1d..390e829 100644 --- a/api/Clients/Api/Contracts/ICvMatcherApi.cs +++ b/api/Clients/Api/Contracts/ICvMatcherApi.cs @@ -1,5 +1,5 @@ using Refit; -using Api.Models.Requests; +using Models.Requests; namespace Api.Clients.Api.Contracts; diff --git a/api/Controllers/CaptchaController.cs b/api/Controllers/CaptchaController.cs index 4ac7520..5e22a2e 100644 --- a/api/Controllers/CaptchaController.cs +++ b/api/Controllers/CaptchaController.cs @@ -1,9 +1,9 @@ using Api.Services.Contracts; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; -using Api.Models.Settings; +using Models.Settings; using Swashbuckle.AspNetCore.Annotations; -using Api.Models.Requests; +using Models.Requests; namespace Api.Controllers { diff --git a/api/Controllers/ContactController.cs b/api/Controllers/ContactController.cs index cc2fea6..bbb35e0 100644 --- a/api/Controllers/ContactController.cs +++ b/api/Controllers/ContactController.cs @@ -4,8 +4,8 @@ using Microsoft.AspNetCore.Cors; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.RateLimiting; using Microsoft.Extensions.Options; -using Api.Models.Settings; -using Api.Models.Requests; +using Models.Settings; +using Models.Requests; namespace Api.Controllers { diff --git a/api/Controllers/CvMatcherController.cs b/api/Controllers/CvMatcherController.cs index 98d3941..07488dc 100644 --- a/api/Controllers/CvMatcherController.cs +++ b/api/Controllers/CvMatcherController.cs @@ -1,5 +1,5 @@ using Api.Clients.Api.Contracts; -using Api.Models.Requests; +using Models.Requests; using Api.Services.Contracts; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.RateLimiting; diff --git a/api/Controllers/FileDownloadController.cs b/api/Controllers/FileDownloadController.cs index 3989a3b..4ac6f7f 100644 --- a/api/Controllers/FileDownloadController.cs +++ b/api/Controllers/FileDownloadController.cs @@ -1,4 +1,4 @@ -using Api.Models.Settings; +using Models.Settings; using Api.Services.Contracts; using Microsoft.AspNetCore.Cors; using Microsoft.AspNetCore.Mvc; diff --git a/api/Controllers/GoogleController.cs b/api/Controllers/GoogleController.cs index dacc712..6ae78ca 100644 --- a/api/Controllers/GoogleController.cs +++ b/api/Controllers/GoogleController.cs @@ -1,4 +1,4 @@ -using Api.Models.Settings; +using Models.Settings; using Microsoft.AspNetCore.Cors; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; diff --git a/api/Program.cs b/api/Program.cs index 14e4b9b..171224d 100644 --- a/api/Program.cs +++ b/api/Program.cs @@ -1,4 +1,4 @@ -using Api.Models.Settings; +using Models.Settings; using Api.Services; using Api.Services.Contracts; using Azure.Identity; diff --git a/api/Services/Contracts/IEmailSender.cs b/api/Services/Contracts/IEmailSender.cs index 0f11430..ddd422a 100644 --- a/api/Services/Contracts/IEmailSender.cs +++ b/api/Services/Contracts/IEmailSender.cs @@ -1,4 +1,4 @@ -using Api.Models.Requests; +using Models.Requests; namespace Api.Services.Contracts { diff --git a/api/Services/RecaptchaVerifier.cs b/api/Services/RecaptchaVerifier.cs index 975fdb0..b5659be 100644 --- a/api/Services/RecaptchaVerifier.cs +++ b/api/Services/RecaptchaVerifier.cs @@ -1,7 +1,7 @@ using Api.Services.Contracts.Models; using Api.Services.Contracts; using Microsoft.Extensions.Options; -using Api.Models.Settings; +using Models.Settings; namespace Api.Services { diff --git a/api/Services/SmtpEmailSender.cs b/api/Services/SmtpEmailSender.cs index deccfcf..1860921 100644 --- a/api/Services/SmtpEmailSender.cs +++ b/api/Services/SmtpEmailSender.cs @@ -3,8 +3,8 @@ using Microsoft.Extensions.Options; using MailKit.Net.Smtp; using MailKit.Security; using MimeKit; -using Api.Models.Settings; -using Api.Models.Requests; +using Models.Settings; +using Models.Requests; namespace Api.Services { diff --git a/api/api.csproj b/api/api.csproj index 16d2827..7d05a8c 100644 --- a/api/api.csproj +++ b/api/api.csproj @@ -34,4 +34,8 @@ + + + + diff --git a/cv-matcher-api/Models/Requests/FindJobsRequest.cs b/cv-matcher-api-models/Requests/FindJobsRequest.cs similarity index 83% rename from cv-matcher-api/Models/Requests/FindJobsRequest.cs rename to cv-matcher-api-models/Requests/FindJobsRequest.cs index 42f702c..37370ee 100644 --- a/cv-matcher-api/Models/Requests/FindJobsRequest.cs +++ b/cv-matcher-api-models/Requests/FindJobsRequest.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Requests +namespace CvMatcher.Models.Requests { public sealed class FindJobsRequest { diff --git a/cv-matcher-api/Models/Requests/MatchJobRequest.cs b/cv-matcher-api-models/Requests/MatchJobRequest.cs similarity index 89% rename from cv-matcher-api/Models/Requests/MatchJobRequest.cs rename to cv-matcher-api-models/Requests/MatchJobRequest.cs index 63bd70a..3f72363 100644 --- a/cv-matcher-api/Models/Requests/MatchJobRequest.cs +++ b/cv-matcher-api-models/Requests/MatchJobRequest.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Requests +namespace CvMatcher.Models.Requests { public sealed class MatchJobRequest { diff --git a/cv-matcher-api/Models/Requests/RagSearchRequest.cs b/cv-matcher-api-models/Requests/RagSearchRequest.cs similarity index 85% rename from cv-matcher-api/Models/Requests/RagSearchRequest.cs rename to cv-matcher-api-models/Requests/RagSearchRequest.cs index 9375590..8c4bd56 100644 --- a/cv-matcher-api/Models/Requests/RagSearchRequest.cs +++ b/cv-matcher-api-models/Requests/RagSearchRequest.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Requests +namespace CvMatcher.Models.Requests { public sealed class RagSearchRequest { diff --git a/cv-matcher-api/Models/Responses/CvUploadResponse.cs b/cv-matcher-api-models/Responses/CvUploadResponse.cs similarity index 92% rename from cv-matcher-api/Models/Responses/CvUploadResponse.cs rename to cv-matcher-api-models/Responses/CvUploadResponse.cs index f6daff8..4befa8f 100644 --- a/cv-matcher-api/Models/Responses/CvUploadResponse.cs +++ b/cv-matcher-api-models/Responses/CvUploadResponse.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Responses +namespace CvMatcher.Models.Responses { public sealed class CvUploadResponse { diff --git a/cv-matcher-api/Models/Responses/FindJobsResponse.cs b/cv-matcher-api-models/Responses/FindJobsResponse.cs similarity index 82% rename from cv-matcher-api/Models/Responses/FindJobsResponse.cs rename to cv-matcher-api-models/Responses/FindJobsResponse.cs index 8f95ce8..f92f1a5 100644 --- a/cv-matcher-api/Models/Responses/FindJobsResponse.cs +++ b/cv-matcher-api-models/Responses/FindJobsResponse.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Responses +namespace CvMatcher.Models.Responses { public sealed class FindJobsResponse { diff --git a/cv-matcher-api/Models/Responses/JobMatchResponse.cs b/cv-matcher-api-models/Responses/JobMatchResponse.cs similarity index 92% rename from cv-matcher-api/Models/Responses/JobMatchResponse.cs rename to cv-matcher-api-models/Responses/JobMatchResponse.cs index 6a04cf5..8ef3e1d 100644 --- a/cv-matcher-api/Models/Responses/JobMatchResponse.cs +++ b/cv-matcher-api-models/Responses/JobMatchResponse.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Responses +namespace CvMatcher.Models.Responses { public sealed class JobMatchResponse { diff --git a/cv-matcher-api/Models/Responses/RagIndexResponse.cs b/cv-matcher-api-models/Responses/RagIndexResponse.cs similarity index 92% rename from cv-matcher-api/Models/Responses/RagIndexResponse.cs rename to cv-matcher-api-models/Responses/RagIndexResponse.cs index ce108e4..673753e 100644 --- a/cv-matcher-api/Models/Responses/RagIndexResponse.cs +++ b/cv-matcher-api-models/Responses/RagIndexResponse.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Responses +namespace CvMatcher.Models.Responses { public sealed class RagIndexResponse { diff --git a/cv-matcher-api/Models/Responses/RagSearchResponse.cs b/cv-matcher-api-models/Responses/RagSearchResponse.cs similarity index 96% rename from cv-matcher-api/Models/Responses/RagSearchResponse.cs rename to cv-matcher-api-models/Responses/RagSearchResponse.cs index 0a07add..d6cf723 100644 --- a/cv-matcher-api/Models/Responses/RagSearchResponse.cs +++ b/cv-matcher-api-models/Responses/RagSearchResponse.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Responses +namespace CvMatcher.Models.Responses { public sealed class RagSearchResponse { diff --git a/cv-matcher-api/Models/Settings/AiSettings.cs b/cv-matcher-api-models/Settings/AiSettings.cs similarity index 84% rename from cv-matcher-api/Models/Settings/AiSettings.cs rename to cv-matcher-api-models/Settings/AiSettings.cs index 4f12563..9c7c429 100644 --- a/cv-matcher-api/Models/Settings/AiSettings.cs +++ b/cv-matcher-api-models/Settings/AiSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace CvMatcher.Models.Settings; public sealed class AiSettings { diff --git a/cv-matcher-api/Models/Settings/InternalApiSettings.cs b/cv-matcher-api-models/Settings/InternalApiSettings.cs similarity index 80% rename from cv-matcher-api/Models/Settings/InternalApiSettings.cs rename to cv-matcher-api-models/Settings/InternalApiSettings.cs index 7d05ef8..333df69 100644 --- a/cv-matcher-api/Models/Settings/InternalApiSettings.cs +++ b/cv-matcher-api-models/Settings/InternalApiSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace CvMatcher.Models.Settings; public sealed class InternalApiSettings { diff --git a/cv-matcher-api/Models/Settings/MatcherSettings.cs b/cv-matcher-api-models/Settings/MatcherSettings.cs similarity index 83% rename from cv-matcher-api/Models/Settings/MatcherSettings.cs rename to cv-matcher-api-models/Settings/MatcherSettings.cs index 75c7fab..86fedb4 100644 --- a/cv-matcher-api/Models/Settings/MatcherSettings.cs +++ b/cv-matcher-api-models/Settings/MatcherSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace CvMatcher.Models.Settings; public sealed class MatcherSettings { diff --git a/cv-matcher-api/Models/Settings/OllamaSettings.cs b/cv-matcher-api-models/Settings/OllamaSettings.cs similarity index 85% rename from cv-matcher-api/Models/Settings/OllamaSettings.cs rename to cv-matcher-api-models/Settings/OllamaSettings.cs index 421d4ab..f6f60c4 100644 --- a/cv-matcher-api/Models/Settings/OllamaSettings.cs +++ b/cv-matcher-api-models/Settings/OllamaSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace CvMatcher.Models.Settings; public sealed class OllamaSettings { diff --git a/cv-matcher-api/Models/Settings/OpenAiSettings.cs b/cv-matcher-api-models/Settings/OpenAiSettings.cs similarity index 84% rename from cv-matcher-api/Models/Settings/OpenAiSettings.cs rename to cv-matcher-api-models/Settings/OpenAiSettings.cs index b90e6d1..29c9b17 100644 --- a/cv-matcher-api/Models/Settings/OpenAiSettings.cs +++ b/cv-matcher-api-models/Settings/OpenAiSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace CvMatcher.Models.Settings; public sealed class OpenAiSettings { diff --git a/cv-matcher-api/Models/Settings/RagApiSettings.cs b/cv-matcher-api-models/Settings/RagApiSettings.cs similarity index 82% rename from cv-matcher-api/Models/Settings/RagApiSettings.cs rename to cv-matcher-api-models/Settings/RagApiSettings.cs index 8f2251a..8aefaee 100644 --- a/cv-matcher-api/Models/Settings/RagApiSettings.cs +++ b/cv-matcher-api-models/Settings/RagApiSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace CvMatcher.Models.Settings; public sealed class RagApiSettings { diff --git a/cv-matcher-api/Models/Settings/SmtpSettings.cs b/cv-matcher-api-models/Settings/SmtpSettings.cs similarity index 91% rename from cv-matcher-api/Models/Settings/SmtpSettings.cs rename to cv-matcher-api-models/Settings/SmtpSettings.cs index 3d76c8b..2d523e7 100644 --- a/cv-matcher-api/Models/Settings/SmtpSettings.cs +++ b/cv-matcher-api-models/Settings/SmtpSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace CvMatcher.Models.Settings; public sealed class SmtpSettings { diff --git a/cv-matcher-api-models/cv-matcher-api-models.csproj b/cv-matcher-api-models/cv-matcher-api-models.csproj new file mode 100644 index 0000000..7065269 --- /dev/null +++ b/cv-matcher-api-models/cv-matcher-api-models.csproj @@ -0,0 +1,10 @@ + + + + net10.0 + CvMatcher.Models + enable + enable + + + diff --git a/cv-matcher-api/Clients/Ai/MatcherAiClient.cs b/cv-matcher-api/Clients/Ai/MatcherAiClient.cs index 1d2f4a4..e5e8374 100644 --- a/cv-matcher-api/Clients/Ai/MatcherAiClient.cs +++ b/cv-matcher-api/Clients/Ai/MatcherAiClient.cs @@ -4,7 +4,7 @@ using System.Text.Json; using System.Text.Json.Serialization; using Api.Clients.Ai.Contracts; using Api.Data.Repositories.Contracts; -using Api.Models.Settings; +using CvMatcher.Models.Settings; using Microsoft.Extensions.Options; namespace Api.Clients.Ai; diff --git a/cv-matcher-api/Clients/Api/Contracts/IRagApiClient.cs b/cv-matcher-api/Clients/Api/Contracts/IRagApiClient.cs index 3af9722..99390de 100644 --- a/cv-matcher-api/Clients/Api/Contracts/IRagApiClient.cs +++ b/cv-matcher-api/Clients/Api/Contracts/IRagApiClient.cs @@ -1,5 +1,5 @@ -using Api.Models.Requests; -using Api.Models.Responses; +using CvMatcher.Models.Requests; +using CvMatcher.Models.Responses; namespace Api.Clients.Api.Contracts; diff --git a/cv-matcher-api/Clients/Api/Contracts/IRefitRagApi.cs b/cv-matcher-api/Clients/Api/Contracts/IRefitRagApi.cs index 85315c7..9de216b 100644 --- a/cv-matcher-api/Clients/Api/Contracts/IRefitRagApi.cs +++ b/cv-matcher-api/Clients/Api/Contracts/IRefitRagApi.cs @@ -1,6 +1,6 @@ using Refit; -using Api.Models.Responses; -using Api.Models.Requests; +using CvMatcher.Models.Responses; +using CvMatcher.Models.Requests; namespace Api.Clients.Api.Contracts; diff --git a/cv-matcher-api/Clients/Api/RagApiClient.cs b/cv-matcher-api/Clients/Api/RagApiClient.cs index f7f8cfa..247fe89 100644 --- a/cv-matcher-api/Clients/Api/RagApiClient.cs +++ b/cv-matcher-api/Clients/Api/RagApiClient.cs @@ -2,9 +2,9 @@ using System.Net; using Refit; using Microsoft.Extensions.Options; using Api.Clients.Api.Contracts; -using Api.Models.Responses; -using Api.Models.Settings; -using Api.Models.Requests; +using CvMatcher.Models.Responses; +using CvMatcher.Models.Settings; +using CvMatcher.Models.Requests; namespace Api.Clients.Api; diff --git a/cv-matcher-api/Controllers/CvController.cs b/cv-matcher-api/Controllers/CvController.cs index 9a6da9e..1f4e44d 100644 --- a/cv-matcher-api/Controllers/CvController.cs +++ b/cv-matcher-api/Controllers/CvController.cs @@ -1,4 +1,4 @@ -using Api.Models.Requests; +using CvMatcher.Models.Requests; using Api.Services.Contracts; using Microsoft.AspNetCore.Mvc; diff --git a/cv-matcher-api/Data/Repositories/Contracts/IMatcherRepository.cs b/cv-matcher-api/Data/Repositories/Contracts/IMatcherRepository.cs index 628921f..c4c4493 100644 --- a/cv-matcher-api/Data/Repositories/Contracts/IMatcherRepository.cs +++ b/cv-matcher-api/Data/Repositories/Contracts/IMatcherRepository.cs @@ -1,4 +1,4 @@ -using Api.Models.Responses; +using CvMatcher.Models.Responses; namespace Api.Data.Repositories.Contracts; diff --git a/cv-matcher-api/Data/Repositories/EfMatcherRepository.cs b/cv-matcher-api/Data/Repositories/EfMatcherRepository.cs index 4c3c1ac..7354eda 100644 --- a/cv-matcher-api/Data/Repositories/EfMatcherRepository.cs +++ b/cv-matcher-api/Data/Repositories/EfMatcherRepository.cs @@ -2,7 +2,7 @@ using System.Text.Json; using Api.Data; using Api.Data.Entities; using Api.Data.Repositories.Contracts; -using Api.Models.Responses; +using CvMatcher.Models.Responses; using Microsoft.EntityFrameworkCore; namespace Api.Data.Repositories; diff --git a/cv-matcher-api/Program.cs b/cv-matcher-api/Program.cs index 6a43f87..792770d 100644 --- a/cv-matcher-api/Program.cs +++ b/cv-matcher-api/Program.cs @@ -15,7 +15,7 @@ using Api.Clients.Api; using Api.Clients.Api.Contracts; using Api.Clients.Ai; using Api.Clients.Ai.Contracts; -using Api.Models.Settings; +using CvMatcher.Models.Settings; DotNetEnv.Env.Load(); diff --git a/cv-matcher-api/Services/Contracts/ICvMatcherService.cs b/cv-matcher-api/Services/Contracts/ICvMatcherService.cs index 7f85bb2..86ac599 100644 --- a/cv-matcher-api/Services/Contracts/ICvMatcherService.cs +++ b/cv-matcher-api/Services/Contracts/ICvMatcherService.cs @@ -1,5 +1,5 @@ -using Api.Models.Requests; -using Api.Models.Responses; +using CvMatcher.Models.Requests; +using CvMatcher.Models.Responses; namespace Api.Services.Contracts; diff --git a/cv-matcher-api/Services/CvMatcherService.cs b/cv-matcher-api/Services/CvMatcherService.cs index 4a50bc1..3225344 100644 --- a/cv-matcher-api/Services/CvMatcherService.cs +++ b/cv-matcher-api/Services/CvMatcherService.cs @@ -2,9 +2,9 @@ using System.Text.Json; using Api.Clients.Ai.Contracts; using Api.Clients.Api.Contracts; using Api.Data.Repositories.Contracts; -using Api.Models.Requests; -using Api.Models.Responses; -using Api.Models.Settings; +using CvMatcher.Models.Requests; +using CvMatcher.Models.Responses; +using CvMatcher.Models.Settings; using Api.Services.Contracts; using Microsoft.Extensions.Options; diff --git a/cv-matcher-api/Services/EmailService.cs b/cv-matcher-api/Services/EmailService.cs index f3f1e29..ff407e1 100644 --- a/cv-matcher-api/Services/EmailService.cs +++ b/cv-matcher-api/Services/EmailService.cs @@ -1,4 +1,4 @@ -using Api.Models.Settings; +using CvMatcher.Models.Settings; using Api.Services.Contracts; using MailKit.Net.Smtp; using MailKit.Security; diff --git a/cv-matcher-api/Services/JobTextExtractor.cs b/cv-matcher-api/Services/JobTextExtractor.cs index 7f476b5..668e018 100644 --- a/cv-matcher-api/Services/JobTextExtractor.cs +++ b/cv-matcher-api/Services/JobTextExtractor.cs @@ -1,6 +1,6 @@ using System.Net; using System.Text.RegularExpressions; -using Api.Models.Settings; +using CvMatcher.Models.Settings; using Api.Services.Contracts; using Microsoft.Extensions.Options; diff --git a/cv-matcher-api/cv-matcher-api.csproj b/cv-matcher-api/cv-matcher-api.csproj index ae13c82..499b8dd 100644 --- a/cv-matcher-api/cv-matcher-api.csproj +++ b/cv-matcher-api/cv-matcher-api.csproj @@ -75,4 +75,8 @@ + + + + diff --git a/myAi.sln b/myAi.sln index 3fb28a4..f627bf3 100644 --- a/myAi.sln +++ b/myAi.sln @@ -12,6 +12,16 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "cv-matcher-api", "cv-matche EndProject Project("{E53339B2-1760-4266-BCC7-CA923CBCF16C}") = "docker-compose", "docker-compose\docker-compose.dcproj", "{81DDED9D-158B-E303-5F62-77A2896D2A5A}" EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Apis", "Apis", "{0FE6558F-2157-47F2-A835-558416CE0E2B}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Models", "Models", "{E08A1D43-24A3-4F93-B66A-4230FD8261BA}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "cv-matcher-api-models", "cv-matcher-api-models\cv-matcher-api-models.csproj", "{D09DA1C2-3DC5-48E7-9F5B-739CA41174F1}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "api-models", "api-models\api-models.csproj", "{FB5EAA9E-1B83-41E4-A3BC-F4B7D1AA0769}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "rag-api-models", "rag-api-models\rag-api-models.csproj", "{6A1ADA81-28E9-4A64-A32D-0755876D5EB7}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -38,10 +48,30 @@ Global {81DDED9D-158B-E303-5F62-77A2896D2A5A}.Debug|Any CPU.Build.0 = Debug|Any CPU {81DDED9D-158B-E303-5F62-77A2896D2A5A}.Release|Any CPU.ActiveCfg = Release|Any CPU {81DDED9D-158B-E303-5F62-77A2896D2A5A}.Release|Any CPU.Build.0 = Release|Any CPU + {D09DA1C2-3DC5-48E7-9F5B-739CA41174F1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D09DA1C2-3DC5-48E7-9F5B-739CA41174F1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D09DA1C2-3DC5-48E7-9F5B-739CA41174F1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D09DA1C2-3DC5-48E7-9F5B-739CA41174F1}.Release|Any CPU.Build.0 = Release|Any CPU + {FB5EAA9E-1B83-41E4-A3BC-F4B7D1AA0769}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FB5EAA9E-1B83-41E4-A3BC-F4B7D1AA0769}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FB5EAA9E-1B83-41E4-A3BC-F4B7D1AA0769}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FB5EAA9E-1B83-41E4-A3BC-F4B7D1AA0769}.Release|Any CPU.Build.0 = Release|Any CPU + {6A1ADA81-28E9-4A64-A32D-0755876D5EB7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6A1ADA81-28E9-4A64-A32D-0755876D5EB7}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6A1ADA81-28E9-4A64-A32D-0755876D5EB7}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6A1ADA81-28E9-4A64-A32D-0755876D5EB7}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {16F8CA9D-341F-47B8-8E34-F4C5B3E72F3C} = {0FE6558F-2157-47F2-A835-558416CE0E2B} + {A63E1C1A-4A78-49F4-9F5C-D43783294861} = {0FE6558F-2157-47F2-A835-558416CE0E2B} + {C40F5025-B0A6-4B25-B4A2-7EA568E06C40} = {0FE6558F-2157-47F2-A835-558416CE0E2B} + {D09DA1C2-3DC5-48E7-9F5B-739CA41174F1} = {E08A1D43-24A3-4F93-B66A-4230FD8261BA} + {FB5EAA9E-1B83-41E4-A3BC-F4B7D1AA0769} = {E08A1D43-24A3-4F93-B66A-4230FD8261BA} + {6A1ADA81-28E9-4A64-A32D-0755876D5EB7} = {E08A1D43-24A3-4F93-B66A-4230FD8261BA} + EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {6246A67B-299E-4E64-8DBE-1A66771E7C67} EndGlobalSection diff --git a/rag-api/Models/DocumentClassification.cs b/rag-api-models/DocumentClassification.cs similarity index 93% rename from rag-api/Models/DocumentClassification.cs rename to rag-api-models/DocumentClassification.cs index c2fa5dc..808bed0 100644 --- a/rag-api/Models/DocumentClassification.cs +++ b/rag-api-models/DocumentClassification.cs @@ -1,4 +1,4 @@ -namespace Api.Models +namespace Rag.Models { public sealed class DocumentClassification { diff --git a/rag-api/Models/RagChunkRecord.cs b/rag-api-models/RagChunkRecord.cs similarity index 93% rename from rag-api/Models/RagChunkRecord.cs rename to rag-api-models/RagChunkRecord.cs index 945c811..8ec5b8c 100644 --- a/rag-api/Models/RagChunkRecord.cs +++ b/rag-api-models/RagChunkRecord.cs @@ -1,4 +1,4 @@ -namespace Api.Models +namespace Rag.Models { public sealed class RagChunkRecord { diff --git a/rag-api/Models/RagDocumentDetails.cs b/rag-api-models/RagDocumentDetails.cs similarity index 95% rename from rag-api/Models/RagDocumentDetails.cs rename to rag-api-models/RagDocumentDetails.cs index 1f90dcf..8c87330 100644 --- a/rag-api/Models/RagDocumentDetails.cs +++ b/rag-api-models/RagDocumentDetails.cs @@ -1,4 +1,4 @@ -namespace Api.Models +namespace Rag.Models { public sealed class RagDocumentDetails { diff --git a/rag-api/Models/RagDocumentRecord.cs b/rag-api-models/RagDocumentRecord.cs similarity index 96% rename from rag-api/Models/RagDocumentRecord.cs rename to rag-api-models/RagDocumentRecord.cs index f32fa57..199126c 100644 --- a/rag-api/Models/RagDocumentRecord.cs +++ b/rag-api-models/RagDocumentRecord.cs @@ -1,4 +1,4 @@ -namespace Api.Models +namespace Rag.Models { public sealed class RagDocumentRecord { diff --git a/rag-api/Models/Requests/IndexDocumentRequest.cs b/rag-api-models/Requests/IndexDocumentRequest.cs similarity index 91% rename from rag-api/Models/Requests/IndexDocumentRequest.cs rename to rag-api-models/Requests/IndexDocumentRequest.cs index 43ec61c..422ca95 100644 --- a/rag-api/Models/Requests/IndexDocumentRequest.cs +++ b/rag-api-models/Requests/IndexDocumentRequest.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Requests +namespace Rag.Models.Requests { public sealed class IndexDocumentRequest { diff --git a/rag-api/Models/Requests/SearchRequest.cs b/rag-api-models/Requests/SearchRequest.cs similarity index 88% rename from rag-api/Models/Requests/SearchRequest.cs rename to rag-api-models/Requests/SearchRequest.cs index 80480a3..8613c58 100644 --- a/rag-api/Models/Requests/SearchRequest.cs +++ b/rag-api-models/Requests/SearchRequest.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Requests +namespace Rag.Models.Requests { public sealed class SearchRequest { diff --git a/rag-api/Models/Responses/IndexDocumentResponse.cs b/rag-api-models/Responses/IndexDocumentResponse.cs similarity index 93% rename from rag-api/Models/Responses/IndexDocumentResponse.cs rename to rag-api-models/Responses/IndexDocumentResponse.cs index 18a90f9..76f15d3 100644 --- a/rag-api/Models/Responses/IndexDocumentResponse.cs +++ b/rag-api-models/Responses/IndexDocumentResponse.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Responses +namespace Rag.Models.Responses { public sealed class IndexDocumentResponse { diff --git a/rag-api/Models/Responses/SearchResponse.cs b/rag-api-models/Responses/SearchResponse.cs similarity index 96% rename from rag-api/Models/Responses/SearchResponse.cs rename to rag-api-models/Responses/SearchResponse.cs index 3a359eb..9b33476 100644 --- a/rag-api/Models/Responses/SearchResponse.cs +++ b/rag-api-models/Responses/SearchResponse.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Responses +namespace Rag.Models.Responses { public sealed class SearchResponse { diff --git a/rag-api/Models/SearchCandidateChunk.cs b/rag-api-models/SearchCandidateChunk.cs similarity index 91% rename from rag-api/Models/SearchCandidateChunk.cs rename to rag-api-models/SearchCandidateChunk.cs index 89b6238..88ea46e 100644 --- a/rag-api/Models/SearchCandidateChunk.cs +++ b/rag-api-models/SearchCandidateChunk.cs @@ -1,4 +1,4 @@ -namespace Api.Models +namespace Rag.Models { public sealed class SearchCandidateChunk { diff --git a/rag-api/Models/Settings/AiSettings.cs b/rag-api-models/Settings/AiSettings.cs similarity index 87% rename from rag-api/Models/Settings/AiSettings.cs rename to rag-api-models/Settings/AiSettings.cs index 9c3d2ee..cf7a396 100644 --- a/rag-api/Models/Settings/AiSettings.cs +++ b/rag-api-models/Settings/AiSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace Rag.Models.Settings; public sealed class AiSettings { diff --git a/rag-api/Models/Settings/InternalApiSettings.cs b/rag-api-models/Settings/InternalApiSettings.cs similarity index 83% rename from rag-api/Models/Settings/InternalApiSettings.cs rename to rag-api-models/Settings/InternalApiSettings.cs index 7d05ef8..9361c66 100644 --- a/rag-api/Models/Settings/InternalApiSettings.cs +++ b/rag-api-models/Settings/InternalApiSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace Rag.Models.Settings; public sealed class InternalApiSettings { diff --git a/rag-api/Models/Settings/OllamaProviderSettings.cs b/rag-api-models/Settings/OllamaProviderSettings.cs similarity index 90% rename from rag-api/Models/Settings/OllamaProviderSettings.cs rename to rag-api-models/Settings/OllamaProviderSettings.cs index 0bc1b90..9e744c7 100644 --- a/rag-api/Models/Settings/OllamaProviderSettings.cs +++ b/rag-api-models/Settings/OllamaProviderSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace Rag.Models.Settings; public sealed class OllamaProviderSettings { diff --git a/rag-api/Models/Settings/OpenAiProviderSettings.cs b/rag-api-models/Settings/OpenAiProviderSettings.cs similarity index 90% rename from rag-api/Models/Settings/OpenAiProviderSettings.cs rename to rag-api-models/Settings/OpenAiProviderSettings.cs index a865043..dc0c649 100644 --- a/rag-api/Models/Settings/OpenAiProviderSettings.cs +++ b/rag-api-models/Settings/OpenAiProviderSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace Rag.Models.Settings; public sealed class OpenAiProviderSettings { diff --git a/rag-api/Models/Settings/RagSettings.cs b/rag-api-models/Settings/RagSettings.cs similarity index 92% rename from rag-api/Models/Settings/RagSettings.cs rename to rag-api-models/Settings/RagSettings.cs index 795665b..23f6a50 100644 --- a/rag-api/Models/Settings/RagSettings.cs +++ b/rag-api-models/Settings/RagSettings.cs @@ -1,4 +1,4 @@ -namespace Api.Models.Settings; +namespace Rag.Models.Settings; public sealed class RagSettings { diff --git a/rag-api-models/rag-api-models.csproj b/rag-api-models/rag-api-models.csproj new file mode 100644 index 0000000..ed75cf1 --- /dev/null +++ b/rag-api-models/rag-api-models.csproj @@ -0,0 +1,10 @@ + + + + net10.0 + Rag.Models + enable + enable + + + diff --git a/rag-api/Clients/Ai/CachedAiClient.cs b/rag-api/Clients/Ai/CachedAiClient.cs index b30e28d..22a472f 100644 --- a/rag-api/Clients/Ai/CachedAiClient.cs +++ b/rag-api/Clients/Ai/CachedAiClient.cs @@ -1,5 +1,5 @@ using Microsoft.Extensions.Options; -using Api.Models.Settings; +using Rag.Models.Settings; using Api.Data.Repositories.Contracts; using Api.Clients.Ai.Contracts; diff --git a/rag-api/Clients/Ai/RawAiClient.cs b/rag-api/Clients/Ai/RawAiClient.cs index 360fe05..2ce5e59 100644 --- a/rag-api/Clients/Ai/RawAiClient.cs +++ b/rag-api/Clients/Ai/RawAiClient.cs @@ -3,7 +3,7 @@ using System.Text; using System.Text.Json; using System.Text.Json.Serialization; using Microsoft.Extensions.Options; -using Api.Models.Settings; +using Rag.Models.Settings; using Api.Clients.Ai.Contracts; namespace Api.Clients.Ai; diff --git a/rag-api/Controllers/RagController.cs b/rag-api/Controllers/RagController.cs index dea2671..802c24e 100644 --- a/rag-api/Controllers/RagController.cs +++ b/rag-api/Controllers/RagController.cs @@ -1,6 +1,6 @@ using Microsoft.AspNetCore.Mvc; using Api.Services.Contracts; -using Api.Models.Requests; +using Rag.Models.Requests; namespace Api.Controllers; diff --git a/rag-api/Data/Repositories/Contracts/IRagRepository.cs b/rag-api/Data/Repositories/Contracts/IRagRepository.cs index 16e3847..2837287 100644 --- a/rag-api/Data/Repositories/Contracts/IRagRepository.cs +++ b/rag-api/Data/Repositories/Contracts/IRagRepository.cs @@ -1,4 +1,4 @@ -using Api.Models; +using Rag.Models; namespace Api.Data.Repositories.Contracts; diff --git a/rag-api/Data/Repositories/EfRagRepository.cs b/rag-api/Data/Repositories/EfRagRepository.cs index 17cbce3..df2b1e5 100644 --- a/rag-api/Data/Repositories/EfRagRepository.cs +++ b/rag-api/Data/Repositories/EfRagRepository.cs @@ -2,7 +2,7 @@ using Api.Data; using Api.Data.Entities; using Microsoft.EntityFrameworkCore; using Api.Data.Repositories.Contracts; -using Api.Models; +using Rag.Models; namespace Api.Data.Repositories; diff --git a/rag-api/Program.cs b/rag-api/Program.cs index b71bf5d..b75fb77 100644 --- a/rag-api/Program.cs +++ b/rag-api/Program.cs @@ -6,7 +6,7 @@ using Api.Services.Contracts; using Serilog; using System.Reflection; using Microsoft.EntityFrameworkCore; -using Api.Models.Settings; +using Rag.Models.Settings; using Api.Data.Repositories.Contracts; using Api.Data.Repositories; using Api.Clients.Ai.Contracts; diff --git a/rag-api/Services/Contracts/IDocumentClassifier.cs b/rag-api/Services/Contracts/IDocumentClassifier.cs index 5822909..00766ab 100644 --- a/rag-api/Services/Contracts/IDocumentClassifier.cs +++ b/rag-api/Services/Contracts/IDocumentClassifier.cs @@ -1,4 +1,4 @@ -using Api.Models; +using Rag.Models; namespace Api.Services.Contracts; diff --git a/rag-api/Services/Contracts/IRagService.cs b/rag-api/Services/Contracts/IRagService.cs index 1ab183d..3358e6c 100644 --- a/rag-api/Services/Contracts/IRagService.cs +++ b/rag-api/Services/Contracts/IRagService.cs @@ -1,6 +1,6 @@ -using Api.Models; -using Api.Models.Requests; -using Api.Models.Responses; +using Rag.Models; +using Rag.Models.Requests; +using Rag.Models.Responses; namespace Api.Services.Contracts; diff --git a/rag-api/Services/DocumentClassifier.cs b/rag-api/Services/DocumentClassifier.cs index 4d07422..ae64279 100644 --- a/rag-api/Services/DocumentClassifier.cs +++ b/rag-api/Services/DocumentClassifier.cs @@ -1,6 +1,6 @@ using System.Text.RegularExpressions; using Api.Services.Contracts; -using Api.Models; +using Rag.Models; namespace Api.Services; diff --git a/rag-api/Services/RagService.cs b/rag-api/Services/RagService.cs index cf92f57..63c3842 100644 --- a/rag-api/Services/RagService.cs +++ b/rag-api/Services/RagService.cs @@ -1,13 +1,13 @@ using System.Text.Json; using Microsoft.Extensions.Options; using Api.Services.Contracts; -using Api.Models.Requests; -using Api.Models.Responses; -using Api.Models.Settings; +using Rag.Models.Requests; +using Rag.Models.Responses; +using Rag.Models.Settings; using Api.Data.Repositories.Contracts; using Api.Clients.Ai.Contracts; using Api.Clients.Ai; -using Api.Models; +using Rag.Models; namespace Api.Services; diff --git a/rag-api/rag-api.csproj b/rag-api/rag-api.csproj index 7389421..e7f9373 100644 --- a/rag-api/rag-api.csproj +++ b/rag-api/rag-api.csproj @@ -75,4 +75,8 @@ + + + +