diff --git a/Pf2e/Common/Documentation.cs b/Pf2e/Common/Documentation.cs
new file mode 100644
index 0000000..f76bcc9
--- /dev/null
+++ b/Pf2e/Common/Documentation.cs
@@ -0,0 +1,7 @@
+namespace Pf2e.Common
+{
+ ///
+ /// Общие методы и классы для проекта.
+ ///
+ internal static class NamespaceDoc { }
+}
diff --git a/Pf2e/Scrapper/Helpers/EntityView.cs b/Pf2e/Common/FullEntity.cs
similarity index 96%
rename from Pf2e/Scrapper/Helpers/EntityView.cs
rename to Pf2e/Common/FullEntity.cs
index a41657c..1b6f098 100644
--- a/Pf2e/Scrapper/Helpers/EntityView.cs
+++ b/Pf2e/Common/FullEntity.cs
@@ -1,19 +1,16 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore;
using Pf2e.Database;
using Pf2e.Database.Model;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
-namespace Pf2e.Scrapper.Helpers;
+namespace Pf2e.Common;
///
/// Класс, обрабатывающий запросы к сущностям и подключающий необходимые данные.
///
-public class EntityView
+public class FullEntity
{
///
/// Корневая сущность.
@@ -36,7 +33,7 @@ public class EntityView
/// Контекст базы данных.
/// Тип запрашиваемой сущности.
/// Идентификатор запрашиваемой сущности.
- public EntityView(Pf2eDbContext context, EntityType type, int id)
+ public FullEntity(Pf2eDbContext context, EntityType type, int id)
{
Context = context;
Entity = GetEntity(type, id);
@@ -48,7 +45,7 @@ public class EntityView
///
/// Контекст базы данных.
/// Сущность, которую нужно обработать.
- public EntityView(Pf2eDbContext context, Entity entity)
+ public FullEntity(Pf2eDbContext context, Entity entity)
{
Context = context;
Entity = entity;
diff --git a/Pf2e/Common/Pf2e.Common.csproj b/Pf2e/Common/Pf2e.Common.csproj
new file mode 100644
index 0000000..25389c9
--- /dev/null
+++ b/Pf2e/Common/Pf2e.Common.csproj
@@ -0,0 +1,10 @@
+
+
+ net9.0
+ enable
+ enable
+
+
+
+
+
diff --git a/Pf2e/Scrapper/ApplicationSettings.cs b/Pf2e/Scrapper/ApplicationSettings.cs
index 7291b16..f95488d 100644
--- a/Pf2e/Scrapper/ApplicationSettings.cs
+++ b/Pf2e/Scrapper/ApplicationSettings.cs
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper;
///
/// Настройки программы.
///
-internal class ApplicationSettings
+public class ApplicationSettings
{
///
/// Конструктор класса .
diff --git a/Pf2e/Scrapper/Helpers/ILogger.cs b/Pf2e/Scrapper/Helpers/ILogger.cs
index a18fb5c..4fde47f 100644
--- a/Pf2e/Scrapper/Helpers/ILogger.cs
+++ b/Pf2e/Scrapper/Helpers/ILogger.cs
@@ -1,6 +1,6 @@
namespace Pf2e.Scrapper.Helpers;
-internal abstract class AbstractLogger
+public abstract class AbstractLogger
{
public abstract void Message(LogLevel level, string message);
@@ -13,7 +13,7 @@ internal abstract class AbstractLogger
public void Progress(string message) => Message(LogLevel.Progress, message);
}
-internal enum LogLevel
+public enum LogLevel
{
Important,
Warning,
diff --git a/Pf2e/Scrapper/Helpers/ProcessProgress.cs b/Pf2e/Scrapper/Helpers/ProcessProgress.cs
index 2908813..9206de3 100644
--- a/Pf2e/Scrapper/Helpers/ProcessProgress.cs
+++ b/Pf2e/Scrapper/Helpers/ProcessProgress.cs
@@ -2,7 +2,10 @@
namespace Pf2e.Scrapper.Helpers;
-internal class ProcessProgress : AbstractLogger
+///
+/// Класс для отслеживания прогресса обработки данных.
+///
+public class ProcessProgress : AbstractLogger
{
///
/// Прогресс обработки обработчиков .
@@ -31,138 +34,54 @@ internal class ProcessProgress : AbstractLogger
ProgressUpdate?.Invoke(this);
}
+ ///
+ /// Событие сообщения.
+ ///
+ /// Уровень сообщения.
+ ///
public override void Message(LogLevel level, string message)
{
ProgressMessage?.Invoke(this, level, message);
}
+ ///
+ /// Событие завершения процесса.
+ ///
public void Complete()
{
ProgressComplete?.Invoke(this);
}
+ ///
+ /// Делегат для события обновления прогресса.
+ ///
+ /// Объект, вызвавший событие.
public delegate void ProgressUpdateDelegate(ProcessProgress sender);
+
+ ///
+ /// Событие обновления прогресса.
+ ///
public event ProgressUpdateDelegate? ProgressUpdate;
+ ///
+ /// Событие завершения процесса.
+ ///
public event ProgressUpdateDelegate? ProgressComplete;
+ ///
+ /// Делегат для события сообщения прогресса.
+ ///
+ /// Объект, вызвавший событие.
+ /// Уровень сообщения.
+ /// Сообщение.
public delegate void ProgressMessageDelegate(
ProcessProgress sender,
LogLevel level,
string message
);
- public event ProgressMessageDelegate? ProgressMessage;
///
- /// Класс прогресса.
+ /// Событие сообщения.
///
- public class ProgressItem
- {
- ///
- /// Количество обрабатываемых процессов.
- ///
- public int Count
- {
- get => _count;
- set
- {
- _count = value;
- Update?.Invoke();
- }
- }
- private int _count;
-
- ///
- /// Индекс текущего обрабатываемого процесса.
- ///
- public int Current
- {
- get => _current;
- set
- {
- _current = value;
- Update?.Invoke();
- }
- }
- private int _current;
-
- ///
- /// Название текущего обрабатываемого процесса.
- ///
- public string Text
- {
- get => _text;
- set
- {
- _text = value;
- Update?.Invoke();
- }
- }
- private string _text = "";
-
- ///
- /// Значение прогресса.
- ///
- public double Percent => Count > 0 ? 1.0 * Current / Count : 1.0;
-
- ///
- /// Сброс прогресса до нуля и установка нового максимального значения.
- ///
- ///
- public void Reset(int max = 0)
- {
- _count = max;
- _current = 0;
- _text = "";
- Update?.Invoke();
- }
-
- ///
- /// Отмечает начало работы над процессом, описываемым строкой .
- ///
- /// Строка, описывающая процесс.
- public void Start(string text)
- {
- _text = text;
- Update?.Invoke();
- }
-
- ///
- /// Отмечает конец работы над процессом и увеличивает значение прогресса.
- ///
- public void End()
- {
- _current++;
- Update?.Invoke();
- }
-
- ///
- /// Отмечает прогресс завершённым.
- ///
- public void Complete()
- {
- _current = _count;
- _text = "Готово!";
- Update?.Invoke();
- }
-
- ///
- /// Получение строкового представления прогресса.
- ///
- /// Строковое представление прогресса.
- public override string ToString()
- {
- return $"{Text} [{Current} / {Count}; {Percent:P}]";
- }
-
- ///
- /// Делегат события обновления.
- ///
- public delegate void UpdateDelegate();
-
- ///
- /// Событие обновление.
- ///
- public event UpdateDelegate? Update;
- }
+ public event ProgressMessageDelegate? ProgressMessage;
}
diff --git a/Pf2e/Scrapper/Helpers/ProgressItem.cs b/Pf2e/Scrapper/Helpers/ProgressItem.cs
new file mode 100644
index 0000000..8917177
--- /dev/null
+++ b/Pf2e/Scrapper/Helpers/ProgressItem.cs
@@ -0,0 +1,114 @@
+namespace Pf2e.Scrapper.Helpers;
+
+///
+/// Класс прогресса.
+///
+public class ProgressItem
+{
+ ///
+ /// Количество обрабатываемых процессов.
+ ///
+ public int Count
+ {
+ get => _count;
+ set
+ {
+ _count = value;
+ Update?.Invoke();
+ }
+ }
+ private int _count;
+
+ ///
+ /// Индекс текущего обрабатываемого процесса.
+ ///
+ public int Current
+ {
+ get => _current;
+ set
+ {
+ _current = value;
+ Update?.Invoke();
+ }
+ }
+ private int _current;
+
+ ///
+ /// Название текущего обрабатываемого процесса.
+ ///
+ public string Text
+ {
+ get => _text;
+ set
+ {
+ _text = value;
+ Update?.Invoke();
+ }
+ }
+ private string _text = "";
+
+ ///
+ /// Значение прогресса.
+ ///
+ public double Percent => Count > 0 ? 1.0 * Current / Count : 1.0;
+
+ ///
+ /// Сброс прогресса до нуля и установка нового максимального значения.
+ ///
+ /// Максимальное значение прогресса.
+ public void Reset(int max = 0)
+ {
+ _count = max;
+ _current = 0;
+ _text = "";
+ Update?.Invoke();
+ }
+
+ ///
+ /// Отмечает начало работы над процессом, описываемым строкой .
+ ///
+ /// Строка, описывающая процесс.
+ public void Start(string text)
+ {
+ _text = text;
+ Update?.Invoke();
+ }
+
+ ///
+ /// Отмечает конец работы над процессом и увеличивает значение прогресса.
+ ///
+ public void End()
+ {
+ _current++;
+ Update?.Invoke();
+ }
+
+ ///
+ /// Отмечает прогресс завершённым.
+ ///
+ public void Complete()
+ {
+ _current = _count;
+ _text = "Готово!";
+ Update?.Invoke();
+ }
+
+ ///
+ /// Получение строкового представления прогресса.
+ ///
+ /// Строковое представление прогресса.
+ public override string ToString()
+ {
+ return $"{Text} [{Current} / {Count}; {Percent:P}]";
+ }
+
+ ///
+ /// Делегат события обновления.
+ ///
+ public delegate void UpdateDelegate();
+
+ ///
+ /// Событие обновление.
+ ///
+ public event UpdateDelegate? Update;
+}
diff --git a/Pf2e/Scrapper/ImportApplication.cs b/Pf2e/Scrapper/ImportApplication.cs
index 34fcf52..be680c6 100644
--- a/Pf2e/Scrapper/ImportApplication.cs
+++ b/Pf2e/Scrapper/ImportApplication.cs
@@ -2,18 +2,15 @@
using System.ComponentModel;
using System.Windows;
using Microsoft.Extensions.DependencyInjection;
+using Pf2e.Database;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Collection;
-using Pf2e.Scrapper.WPF.EntityViewer;
-using Pf2e.Scrapper.WPF.ProgressForm;
-using Pf2e.Scrapper.WPF.StartForm;
-using Pf2e.Database;
using Slugify;
namespace Pf2e.Scrapper;
-internal sealed class ImportApplication : Application
+public sealed class ImportApplication : Application
{
public ImportApplication(
IServiceProvider serviceProvider,
@@ -209,7 +206,7 @@ internal sealed class ImportApplication : Application
#endregion
}
-internal enum ApplicationStage
+public enum ApplicationStage
{
BootUp,
InitialSettings,
diff --git a/Pf2e/Scrapper/Importers/AbstractCompendium.cs b/Pf2e/Scrapper/Importers/AbstractCompendium.cs
index 4554a3e..8c3c843 100644
--- a/Pf2e/Scrapper/Importers/AbstractCompendium.cs
+++ b/Pf2e/Scrapper/Importers/AbstractCompendium.cs
@@ -8,7 +8,7 @@ namespace Pf2e.Scrapper.Importers;
///
/// Компендиум данных.
///
-internal abstract class AbstractCompendium
+public abstract class AbstractCompendium
{
///
/// Репозиторий данных.
diff --git a/Pf2e/Scrapper/Importers/AbstractCompendiumItem.cs b/Pf2e/Scrapper/Importers/AbstractCompendiumItem.cs
index 0aa3343..2da25f8 100644
--- a/Pf2e/Scrapper/Importers/AbstractCompendiumItem.cs
+++ b/Pf2e/Scrapper/Importers/AbstractCompendiumItem.cs
@@ -3,7 +3,7 @@
///
/// Абстрактная ссылка на сущность.
///
-internal abstract class AbstractCompendiumItem
+public abstract class AbstractCompendiumItem
{
///
/// Идентификатор сущности.
diff --git a/Pf2e/Scrapper/Importers/AbstractImporter.cs b/Pf2e/Scrapper/Importers/AbstractImporter.cs
index 43d73fb..fd28967 100644
--- a/Pf2e/Scrapper/Importers/AbstractImporter.cs
+++ b/Pf2e/Scrapper/Importers/AbstractImporter.cs
@@ -5,7 +5,7 @@ namespace Pf2e.Scrapper.Importers;
///
/// Абстрактный класс импортёра.
///
-internal abstract class AbstractImporter
+public abstract class AbstractImporter
{
///
/// Отображаемое имя импортёра.
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/AonprdImporter.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/AonprdImporter.cs
index 8d8555d..06d6646 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/AonprdImporter.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/AonprdImporter.cs
@@ -10,7 +10,7 @@ using StringHelper = Helpers.StringHelper;
///
/// Класс обработки данных с сайта Архивов Нефеса.
///
-internal class AonprdImporter : AbstractImporter
+public class AonprdImporter : AbstractImporter
{
///
/// Название внешней ссылки.
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/AonprdRepository.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/AonprdRepository.cs
index 4ed9459..fb5c541 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/AonprdRepository.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/AonprdRepository.cs
@@ -12,7 +12,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd;
///
/// Основной класс для работы с репозиторием данных Aonprd.
///
-internal class AonprdRepository(AonprdImporter importer) : AbstractImporterRepository(importer)
+public class AonprdRepository(AonprdImporter importer) : AbstractImporterRepository(importer)
{
///
/// URL для доступа к API Aonprd.
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Compendium/AonprdCompendium.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Compendium/AonprdCompendium.cs
index 5edf10a..965af21 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Compendium/AonprdCompendium.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Compendium/AonprdCompendium.cs
@@ -10,7 +10,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Compendium;
///
/// Класс хранения данных компендиума.
///
-internal sealed class AonprdCompendium(AonprdRepository repository) : AbstractCompendium
+public sealed class AonprdCompendium(AonprdRepository repository) : AbstractCompendium
{
///
public override AonprdRepository Repository { get; } = repository;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Compendium/AonprdCompendiumItem.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Compendium/AonprdCompendiumItem.cs
index 9b96024..e4d9606 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Compendium/AonprdCompendiumItem.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Compendium/AonprdCompendiumItem.cs
@@ -5,7 +5,7 @@
///
/// Идентификатор сущности.
/// Имя файла.
-internal class AonprdCompendiumItem(string id, string file) : AbstractCompendiumItem
+public class AonprdCompendiumItem(string id, string file) : AbstractCompendiumItem
{
///
/// Идентификатор сущности.
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/AonprdBuilderGlobals.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/AonprdBuilderGlobals.cs
index 5dedd02..3ad6a57 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/AonprdBuilderGlobals.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/AonprdBuilderGlobals.cs
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
///
/// Класс-помощник, хранящий необходимые глобальные данные.
///
-internal class AonprdBuilderGlobals
+public class AonprdBuilderGlobals
{
///
/// Цель внешних ссылок Архивов Нефисов.
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/AonprdProcessorInputExtension.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/AonprdProcessorInputExtension.cs
index 0e78900..d98114d 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/AonprdProcessorInputExtension.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/AonprdProcessorInputExtension.cs
@@ -1,11 +1,14 @@
using System.Collections.Generic;
using Microsoft.Extensions.DependencyInjection;
-using Pf2e.Scrapper.Processors;
using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.Processors;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-internal static class AonprdProcessorInputExtension
+///
+/// Класс-расширение для .
+///
+public static class AonprdProcessorInputExtension
{
///
/// Обработать строку, содержащую информацию о количестве действий.
@@ -121,8 +124,12 @@ internal static class AonprdProcessorInputExtension
public bool TwoRounds { get; set; }
}
+ ///
+ /// Разрешитель перечисления .
+ ///
public class SourceCategorySolver : EnumSolver
{
+ ///
public override Dictionary Data { get; } =
new()
{
@@ -136,8 +143,12 @@ internal static class AonprdProcessorInputExtension
};
}
+ ///
+ /// Разрешитель перечисления .
+ ///
public class VisionEnumSolver : EnumSolver
{
+ ///
public override Dictionary Data { get; } =
new()
{
@@ -146,8 +157,12 @@ internal static class AonprdProcessorInputExtension
};
}
+ ///
+ /// Разрешитель перечисления .
+ ///
public class AttributeValuesSolver : EnumSolver
{
+ ///
public override Dictionary Data { get; } =
new()
{
@@ -157,8 +172,12 @@ internal static class AonprdProcessorInputExtension
};
}
+ ///
+ /// Разрешитель перечисления .
+ ///
public class ActionEnumSolver : EnumSolver
{
+ ///
public override Dictionary Data { get; } =
new()
{
@@ -187,6 +206,10 @@ internal static class AonprdProcessorInputExtension
};
}
+ ///
+ /// Регистрирует службы разрешителей перечислений в контейнере служб.
+ ///
+ /// Коллекция служб.
public static void RegisterServices(IServiceCollection serviceCollection)
{
serviceCollection.AddTransient();
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/RuleToc.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/RuleToc.cs
index 9decbf9..f4b9284 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/RuleToc.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/RuleToc.cs
@@ -10,7 +10,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
/// Класс коллекции книг, содержащих правила.
/// Реализует шаблон Singleton.
///
-internal class RuleTocCollection
+public class RuleTocCollection
{
///
/// Список книг, содержащих правила.
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/StringHelper.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/StringHelper.cs
index 916ca41..84cc4a3 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/StringHelper.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Helpers/StringHelper.cs
@@ -8,7 +8,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
/// Класс-помощник, для обработки строкового ввода с Архивов Нефиса.
/// Реализует шаблон Singleton.
///
-internal partial class StringHelper
+public partial class StringHelper
{
///
/// Конструктор класса
@@ -88,7 +88,7 @@ internal partial class StringHelper
///
/// Класс структуры, содеражащая информацию разбиении строки по ссылкам.
///
-internal class MarkdownLinkSplit
+public class MarkdownLinkSplit
{
///
/// Список содержащихся ссылок.
@@ -104,7 +104,7 @@ internal class MarkdownLinkSplit
///
/// Информация о ссылке в строке.
///
-internal class MarkdownLink
+public class MarkdownLink
{
///
/// Данные, содержащиеся до ссылки.
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/AbstractEntityProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/AbstractEntityProcessor.cs
index 93aa9da..71e6708 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/AbstractEntityProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/AbstractEntityProcessor.cs
@@ -2,11 +2,6 @@
using System.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model;
using Pf2e.Database.Model.Base;
@@ -15,8 +10,12 @@ using Pf2e.Database.Model.Base.Targets;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Definitions;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
-using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors;
@@ -30,7 +29,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors;
/// [DI] Помощник работы с БД.
/// [DI] Глобальные параметра обработки Архивов Нефиса.
///
-internal abstract class AbstractEntityProcessor(
+public abstract class AbstractEntityProcessor(
ProcessorInput input,
Helpers_StringHelper stringHelper,
DatabaseHelper helper,
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/AbstractSubclassProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/AbstractSubclassProcessor.cs
index 35dfff2..bb3fcee 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/AbstractSubclassProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/AbstractSubclassProcessor.cs
@@ -1,15 +1,15 @@
using System.Collections.Generic;
using System.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -20,7 +20,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors;
/// Класс предназначен для обработки данных с помощью различных обработчиков,
/// для которых указан атрибут .
///
-internal abstract class AbstractSubclassProcessor(
+public abstract class AbstractSubclassProcessor(
ProcessorInput input,
Helpers_StringHelper stringHelper,
DatabaseHelper helper,
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Finalization/LegacyRemasterProcessors.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Finalization/LegacyRemasterProcessors.cs
index bab57d8..0672f2f 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Finalization/LegacyRemasterProcessors.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Finalization/LegacyRemasterProcessors.cs
@@ -2,12 +2,13 @@
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Base.Targets;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Finalization;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Finalization/MissingLegacyRemasterProcessorFactory.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Finalization/MissingLegacyRemasterProcessorFactory.cs
index 71499ea..57ef102 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Finalization/MissingLegacyRemasterProcessorFactory.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Finalization/MissingLegacyRemasterProcessorFactory.cs
@@ -3,14 +3,15 @@ using System.Collections.Generic;
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.DependencyInjection;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
-using Pf2e.Scrapper.Processors.Factory;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Base.Targets;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
+using Pf2e.Scrapper.Processors.Factory;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Finalization;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/CompendiumLoadProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/CompendiumLoadProcessor.cs
index 3119413..e4fdaef 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/CompendiumLoadProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/CompendiumLoadProcessor.cs
@@ -6,6 +6,7 @@ using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Compendium;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/ExternalProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/ExternalProcessor.cs
index 66dbc0d..fa54ba0 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/ExternalProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/ExternalProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
-using Pf2e.Database;
+using Pf2e.Database;
using Pf2e.Database.Model.Base.Targets;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/RepositoryUpdateProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/RepositoryUpdateProcessor.cs
index d6f2810..d513e14 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/RepositoryUpdateProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/RepositoryUpdateProcessor.cs
@@ -1,5 +1,6 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SchemaBuildProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SchemaBuildProcessor.cs
index 8d4271c..a8f8b55 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SchemaBuildProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SchemaBuildProcessor.cs
@@ -5,6 +5,7 @@ using System.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Compendium;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.SchemaBuilder;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SkillProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SkillProcessor.cs
index 6e3e638..736e63a 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SkillProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SkillProcessor.cs
@@ -1,10 +1,11 @@
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
-using Pf2e.Database;
+using Pf2e.Database;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SourceProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SourceProcessor.cs
index e747332..c022786 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SourceProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Preparation/SourceProcessor.cs
@@ -1,11 +1,12 @@
using System;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model.Base.Source;
using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Preparation;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ApparitionProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ApparitionProcessor.cs
index 02d6de4..50c20c4 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ApparitionProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ApparitionProcessor.cs
@@ -1,11 +1,12 @@
using System.Linq;
using System.Text.RegularExpressions;
+using Pf2e.Database.Model.Base;
+using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Base;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ArcaneSchoolProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ArcaneSchoolProcessor.cs
index 41dbc54..2e721b6 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ArcaneSchoolProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ArcaneSchoolProcessor.cs
@@ -1,11 +1,12 @@
using System.Collections.Generic;
using System.Linq;
+using Pf2e.Database.Model.Base;
+using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Base;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ArcaneThesisProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ArcaneThesisProcessor.cs
index b32d9f8..a3ce535 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ArcaneThesisProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ArcaneThesisProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/BloodlineProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/BloodlineProcessor.cs
index 145222f..8855948 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/BloodlineProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/BloodlineProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/CauseProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/CauseProcessor.cs
index 882ad9b..4ca499c 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/CauseProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/CauseProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ConsciousMindProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ConsciousMindProcessor.cs
index 5a1132d..14775e6 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ConsciousMindProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ConsciousMindProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/DoctrineProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/DoctrineProcessor.cs
index ab37ffe..3db4b01 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/DoctrineProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/DoctrineProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/DruidicOrderProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/DruidicOrderProcessor.cs
index 3453ce0..abef417 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/DruidicOrderProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/DruidicOrderProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/EidolonProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/EidolonProcessor.cs
index 88ba59a..a6570a4 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/EidolonProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/EidolonProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ElementProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ElementProcessor.cs
index 17fbf24..4ad4bc2 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ElementProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ElementProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/EpithetProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/EpithetProcessor.cs
index f98b665..4bd6440 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/EpithetProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/EpithetProcessor.cs
@@ -1,17 +1,18 @@
using System.Collections.Generic;
using System.Linq;
using Microsoft.EntityFrameworkCore;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Collection;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/HuntersEdgeProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/HuntersEdgeProcessor.cs
index e32bba7..0c01cf6 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/HuntersEdgeProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/HuntersEdgeProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/HybridStudyProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/HybridStudyProcessor.cs
index 0103f9e..da03434 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/HybridStudyProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/HybridStudyProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/IkonProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/IkonProcessor.cs
index 02060a5..fc70c84 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/IkonProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/IkonProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ImplementProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ImplementProcessor.cs
index 0a629c5..6cc34c9 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ImplementProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ImplementProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/InnovationProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/InnovationProcessor.cs
index 1bf90e8..7f32808 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/InnovationProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/InnovationProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/InstinctProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/InstinctProcessor.cs
index 73da388..465a993 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/InstinctProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/InstinctProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/LessonProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/LessonProcessor.cs
index d2216d6..fa4e6a3 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/LessonProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/LessonProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MethodologyProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MethodologyProcessor.cs
index efac203..6658c93 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MethodologyProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MethodologyProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MuseProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MuseProcessor.cs
index 41c87e5..f450616 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MuseProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MuseProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MysteryProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MysteryProcessor.cs
index a4d7822..00a9a8a 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MysteryProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/MysteryProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/PatronProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/PatronProcessor.cs
index 5ea25a7..39d4b45 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/PatronProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/PatronProcessor.cs
@@ -1,17 +1,18 @@
using System.Collections.Generic;
using System.Linq;
using Microsoft.EntityFrameworkCore;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Collection;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/PracticeProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/PracticeProcessor.cs
index 06a8a6a..39a391c 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/PracticeProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/PracticeProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/RacketProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/RacketProcessor.cs
index 2dd0bab..4ce1157 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/RacketProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/RacketProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ResearchFieldProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ResearchFieldProcessor.cs
index 3f5dc1e..f8a2907 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ResearchFieldProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/ResearchFieldProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/StyleProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/StyleProcessor.cs
index 4c44c8a..9b7d0f7 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/StyleProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/StyleProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/SubclassGroupProcessorFactory.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/SubclassGroupProcessorFactory.cs
index 08fa89b..1f7de8c 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/SubclassGroupProcessorFactory.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/SubclassGroupProcessorFactory.cs
@@ -2,16 +2,17 @@
using System.Collections.Generic;
using System.Linq;
using Microsoft.Extensions.DependencyInjection;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
-using Pf2e.Scrapper.Processors.Factory;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
+using Pf2e.Scrapper.Processors.Factory;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Subclasses;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/SubconsciousMindProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/SubconsciousMindProcessor.cs
index bb5eb90..e82b71c 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/SubconsciousMindProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/SubconsciousMindProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/TenetProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/TenetProcessor.cs
index e5b068d..4ad68db 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/TenetProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/TenetProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/WayProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/WayProcessor.cs
index 9927812..c5e4b6c 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/WayProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Subclasses/WayProcessor.cs
@@ -1,8 +1,9 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ActionProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ActionProcessor.cs
index 5fef509..481626b 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ActionProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ActionProcessor.cs
@@ -2,12 +2,13 @@
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
+using Pf2e.Database.Model.Common.I18n;
+using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Common.I18n;
-using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/AncestryProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/AncestryProcessor.cs
index 65fe2c7..83a6977 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/AncestryProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/AncestryProcessor.cs
@@ -2,13 +2,14 @@
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json.Linq;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ArchetypeProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ArchetypeProcessor.cs
index 698905b..bd77c1c 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ArchetypeProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ArchetypeProcessor.cs
@@ -1,10 +1,11 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/BackgroundProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/BackgroundProcessor.cs
index bf98a1a..adc82f4 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/BackgroundProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/BackgroundProcessor.cs
@@ -1,12 +1,13 @@
using Newtonsoft.Json.Linq;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Database.Model.Structure.BackgroundRelation;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
-using Pf2e.Database.Model.Structure.BackgroundRelation;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ClassProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ClassProcessor.cs
index ef67ad6..745d5b3 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ClassProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/ClassProcessor.cs
@@ -3,16 +3,17 @@ using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.ClassRelation;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using static System.Text.RegularExpressions.Regex;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DeityCategoryProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DeityCategoryProcessor.cs
index 7df4078..870a55e 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DeityCategoryProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DeityCategoryProcessor.cs
@@ -1,12 +1,13 @@
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
@@ -50,7 +51,7 @@ internal class DeityCategoryProcessor(
// Получаем markdown с описанием из summary_markdown или другого поля
// В данных deity-category.yaml нет summary_markdown, используем пустую строку
string descriptionMarkdown = string.Empty;
-
+
// Преобразуем markdown в текст (можно добавить более сложную обработку)
// Пока просто сохраняем как есть
Object.Description[LocaleType.English] = descriptionMarkdown;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DeityProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DeityProcessor.cs
index b434b44..0f63d9d 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DeityProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DeityProcessor.cs
@@ -1,16 +1,17 @@
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.DeityRelation;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
@@ -48,7 +49,7 @@ internal partial class DeityProcessor(
// Установка категории божества
string categoryName = Input.GetRequired("deity_category");
Object.Category = categoryName;
-
+
// Связываем с сущностью категории
ProcessCategory(categoryName);
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DomainProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DomainProcessor.cs
index 8d03a98..b77adbf 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DomainProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/DomainProcessor.cs
@@ -1,13 +1,14 @@
using System;
using System.Linq;
using System.Text.RegularExpressions;
+using Pf2e.Database;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/FeatProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/FeatProcessor.cs
index 72d0544..6f24c07 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/FeatProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/FeatProcessor.cs
@@ -1,12 +1,13 @@
using System.Linq;
using Newtonsoft.Json.Linq;
+using Pf2e.Database;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/HeritageProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/HeritageProcessor.cs
index e1a5d51..6295d25 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/HeritageProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/HeritageProcessor.cs
@@ -3,12 +3,13 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/LanguageProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/LanguageProcessor.cs
index 9fe2735..efbc493 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/LanguageProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/LanguageProcessor.cs
@@ -1,9 +1,10 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/RitualProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/RitualProcessor.cs
index 42a8a7f..50ce946 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/RitualProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/RitualProcessor.cs
@@ -3,15 +3,16 @@ using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.RitualRelation;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RuleProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RuleProcessor.cs
index 88c32b0..17f16d1 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RuleProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RuleProcessor.cs
@@ -1,13 +1,14 @@
using System.Linq;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Base.Source;
using Pf2e.Database.Model.Base.Targets;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using Rule = Pf2e.Database.Model.Structure.Rule;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesOrderProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesOrderProcessor.cs
index 9a2e557..9ca3139 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesOrderProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesOrderProcessor.cs
@@ -7,10 +7,11 @@
using System.Collections.Generic;
using System.Linq;
+using Pf2e.Database;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
-using Pf2e.Database;
using Rule = Pf2e.Database.Model.Structure.Rule;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types.Rules;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesTocProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesTocProcessor.cs
index 4cf9358..69548d1 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesTocProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/Rules/RulesTocProcessor.cs
@@ -4,11 +4,12 @@ using System.Text.RegularExpressions;
using System.Web;
using AngleSharp;
using AngleSharp.Dom;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model.Base.Source;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types.Rules;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/SkillActionsProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/SkillActionsProcessor.cs
index 10480af..c54d994 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/SkillActionsProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/SkillActionsProcessor.cs
@@ -3,11 +3,12 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/SpellProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/SpellProcessor.cs
index d288908..41395f1 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/SpellProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/SpellProcessor.cs
@@ -1,14 +1,15 @@
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.SpellRelation;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/TraitAlignmentsProcessorFactory.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/TraitAlignmentsProcessorFactory.cs
index bc20826..aaa9185 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/TraitAlignmentsProcessorFactory.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/TraitAlignmentsProcessorFactory.cs
@@ -1,16 +1,17 @@
using System;
using System.Collections.Generic;
using Microsoft.Extensions.DependencyInjection;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
-using Pf2e.Scrapper.Processors.Factory;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Subclasses;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Subclasses;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
+using Pf2e.Scrapper.Processors.Factory;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/TraitProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/TraitProcessor.cs
index 9cb4918..9d9fce5 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/TraitProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/TraitProcessor.cs
@@ -1,10 +1,11 @@
-using Pf2e.Scrapper.Helpers;
+using Pf2e.Database.Model.Common.I18n;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Common.I18n;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Helpers_StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
using StringHelper = Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers.StringHelper;
diff --git a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/VersitileHeritageProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/VersitileHeritageProcessor.cs
index e37129f..35bd4be 100644
--- a/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/VersitileHeritageProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/Aonprd/Processors/Types/VersitileHeritageProcessor.cs
@@ -3,12 +3,13 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.Aonprd.Processors.Types;
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Compendium/FoundryEnCompendium.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Compendium/FoundryEnCompendium.cs
index e8df2a1..bbb9bc3 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Compendium/FoundryEnCompendium.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Compendium/FoundryEnCompendium.cs
@@ -11,7 +11,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
/// Загрузчик данных компендиума.
///
///
-internal sealed class FoundryEnCompendium(FoundryEnRepository repository) : AbstractCompendium
+public sealed class FoundryEnCompendium(FoundryEnRepository repository) : AbstractCompendium
{
///
public override FoundryEnRepository Repository { get; } = repository;
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Compendium/FoundryEnCompendiumItem.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Compendium/FoundryEnCompendiumItem.cs
index 299a8e6..4754845 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Compendium/FoundryEnCompendiumItem.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Compendium/FoundryEnCompendiumItem.cs
@@ -6,7 +6,7 @@
/// Идентификатор сущности.
/// Тип сущности.
/// Имя файла, в котором хранится сущность.
-internal class FoundryEnCompendiumItem(string id, string type, string file) : AbstractCompendiumItem
+public class FoundryEnCompendiumItem(string id, string type, string file) : AbstractCompendiumItem
{
///
/// Идентификатор сущности.
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/FoundryEnImporter.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/FoundryEnImporter.cs
index 4bcf643..9544934 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/FoundryEnImporter.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/FoundryEnImporter.cs
@@ -1,14 +1,13 @@
using Microsoft.Extensions.DependencyInjection;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
-using Pf2e.Scrapper.Importers.Repositories;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn;
///
/// Импортёр для модуля Pf2e FoundryVTT.
///
-internal class FoundryEnImporter : AbstractImporter
+public class FoundryEnImporter : AbstractImporter
{
///
/// Название внешней ссылки.
@@ -27,6 +26,10 @@ internal class FoundryEnImporter : AbstractImporter
#region "Внедрение зависимостей"
+ ///
+ /// Регистрация сервисов импортёра в контейнере зависимостей.
+ ///
+ /// Коллекция сервисов.
public static void RegisterServices(IServiceCollection services)
{
services.AddSingleton();
@@ -39,16 +42,3 @@ internal class FoundryEnImporter : AbstractImporter
#endregion
}
-
-///
-/// Git-репозиторий данных FoundryVTT-модуля "pf2e".
-///
-///
-internal class FoundryEnRepository(FoundryEnImporter importer) : AbstractGitHubRepository(importer)
-{
- ///
- public override string Repository => "foundryvtt/pf2e";
-
- ///
- public override string AssetName => "json-assets.zip";
-}
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/FoundryEnRepository.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/FoundryEnRepository.cs
new file mode 100644
index 0000000..3047605
--- /dev/null
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/FoundryEnRepository.cs
@@ -0,0 +1,16 @@
+using Pf2e.Scrapper.Importers.Repositories;
+
+namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn;
+
+///
+/// Git-репозиторий данных FoundryVTT-модуля "pf2e".
+///
+///
+public class FoundryEnRepository(FoundryEnImporter importer) : AbstractGitHubRepository(importer)
+{
+ ///
+ public override string Repository => "foundryvtt/pf2e";
+
+ ///
+ public override string AssetName => "json-assets.zip";
+}
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Helpers/FoundryEnGlobals.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Helpers/FoundryEnGlobals.cs
index 4c6c442..3129f6f 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Helpers/FoundryEnGlobals.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Helpers/FoundryEnGlobals.cs
@@ -10,7 +10,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
///
/// Глобальные константы и утилиты для импорта данных в формате Foundry En.
///
-internal class FoundryEnGlobals
+public class FoundryEnGlobals
{
///
/// Цель внешних ссылок для Foundry En.
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/ActionProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/ActionProcessor.cs
index 9fbe1a8..fd0e982 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/ActionProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/ActionProcessor.cs
@@ -2,13 +2,14 @@
using System.Linq;
using System.Text.RegularExpressions;
using Newtonsoft.Json.Linq;
+using Pf2e.Database;
+using Pf2e.Database.Model.Common.I18n;
+using Pf2e.Database.Model.Enum;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Database;
-using Pf2e.Database.Model.Common.I18n;
-using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
@@ -21,7 +22,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
Active = false
)]
[ProcessorDependencies(["foundry-en:compendium", "foundry-en:external"])]
-internal partial class ActionProcessor(
+public partial class ActionProcessor(
DatabaseHelper databaseHelper,
Pf2eDbContext context,
FoundryEnGlobals globals,
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/ConditionProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/ConditionProcessor.cs
index 8335a20..0d7ece3 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/ConditionProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/ConditionProcessor.cs
@@ -1,12 +1,13 @@
using Newtonsoft.Json.Linq;
+using Pf2e.Database;
+using Pf2e.Database.Model.Enum;
+using Pf2e.Database.Model.Structure;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
using Pf2e.Scrapper.Processors;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
-using Pf2e.Database;
-using Pf2e.Database.Model.Enum;
-using Pf2e.Database.Model.Structure;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
@@ -19,7 +20,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
Active = false
)]
[ProcessorDependencies(["foundry-en:compendium"])]
-internal class ConditionProcessor(
+public class ConditionProcessor(
DatabaseHelper databaseHelper,
Pf2eDbContext context,
FoundryEnGlobals globals,
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/DeityProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/DeityProcessor.cs
index c6a82f4..41c9c11 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/DeityProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Entities/DeityProcessor.cs
@@ -1,14 +1,15 @@
using System.Collections.Generic;
using System.Linq;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
using Pf2e.Database;
using Pf2e.Database.Model.Enum;
using Pf2e.Database.Model.Structure;
using Pf2e.Database.Model.Structure.DeityRelation;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
@@ -21,7 +22,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Entities;
Active = true
)]
[ProcessorDependencies(["foundry-en:compendium", "foundry-en:external"])]
-internal class DeityProcessor(
+public class DeityProcessor(
DatabaseHelper databaseHelper,
Pf2eDbContext context,
FoundryEnGlobals globals,
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/FoundryEnAbstractProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/FoundryEnAbstractProcessor.cs
index 724da5b..70c7142 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/FoundryEnAbstractProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/FoundryEnAbstractProcessor.cs
@@ -3,17 +3,17 @@ using System.Collections.Generic;
using System.Linq;
using Microsoft.EntityFrameworkCore;
using Newtonsoft.Json.Linq;
-using Pf2e.Scrapper.Helpers;
-using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
-using Pf2e.Scrapper.Processors;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Database;
using Pf2e.Database.Model;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Base.Targets;
using Pf2e.Database.Model.Common.I18n;
using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
+using Pf2e.Scrapper.Processors;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors;
@@ -27,7 +27,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors;
/// [DI]
/// [DI]
/// Объект обработки вводимого JSON.
-internal abstract class FoundryEnAbstractProcessor(
+public abstract class FoundryEnAbstractProcessor(
DatabaseHelper databaseHelper,
Pf2eDbContext context,
FoundryEnGlobals globals,
@@ -52,7 +52,7 @@ internal abstract class FoundryEnAbstractProcessor(
///
/// Представление сущности, которое будет использоваться для обработки данных.
///
- public EntityView View { get; private set; } = null!;
+ public FullEntity View { get; private set; } = null!;
///
/// Основная сущность, которая будет использоваться для обработки данных.
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/CompendiumProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/CompendiumProcessor.cs
index 737d004..8f98259 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/CompendiumProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/CompendiumProcessor.cs
@@ -5,6 +5,7 @@ using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -16,7 +17,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparati
Active = false
)]
[ProcessorDependencies(["foundry-en:repository"])]
-internal class CompendiumProcessor(
+public class CompendiumProcessor(
FoundryEnRepository repository,
FoundryEnCompendium compendium,
ProcessProgress progress
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/ExternalProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/ExternalProcessor.cs
index 8ee809a..d708ada 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/ExternalProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/ExternalProcessor.cs
@@ -1,9 +1,10 @@
-using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
-using Pf2e.Scrapper.Processors.Attributes;
-using Pf2e.Scrapper.Processors.Definitions;
-using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
-using Pf2e.Database;
+using Pf2e.Database;
using Pf2e.Database.Model.Base.Targets;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd.Helpers;
+using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Helpers;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
+using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -13,7 +14,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparati
Group = ProcessorGroupEnum.FoundryEnPreparation
)]
[ProcessorDependencies(["foundry-en:repository"])]
-internal class ExternalProcessor(FoundryEnGlobals enGlobals) : AbstractSimpleProcessor
+public class ExternalProcessor(FoundryEnGlobals enGlobals) : AbstractSimpleProcessor
{
public Pf2eDbContext Context { get; } = new();
public FoundryEnGlobals EnGlobals { get; } = enGlobals;
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/RepositoryUpdateProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/RepositoryUpdateProcessor.cs
index 5260cb7..d317270 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/RepositoryUpdateProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/RepositoryUpdateProcessor.cs
@@ -1,5 +1,6 @@
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -10,7 +11,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparati
Group = ProcessorGroupEnum.FoundryEnPreparation,
Active = false
)]
-internal class RepositoryUpdateProcessor(FoundryEnRepository repository, ProcessProgress progress)
+public class RepositoryUpdateProcessor(FoundryEnRepository repository, ProcessProgress progress)
: IProcessor
{
public FoundryEnRepository Repository { get; } = repository;
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaBuildProcessor.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaBuildProcessor.cs
index 6a4597e..177e93d 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaBuildProcessor.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaBuildProcessor.cs
@@ -5,6 +5,7 @@ using System.Linq;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.SchemaBuilder;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
@@ -16,7 +17,7 @@ namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparati
Active = false
)]
[ProcessorDependencies(["foundry-en:compendium"])]
-internal class SchemaBuildProcessor(
+public class SchemaBuildProcessor(
FoundryEnImporter importer,
FoundryEnRepository repository,
FoundryEnCompendium compendium,
diff --git a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaTypeResolver.cs b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaTypeResolver.cs
index eb5d4f8..5b40abf 100644
--- a/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaTypeResolver.cs
+++ b/Pf2e/Scrapper/Importers/Implementations/FoundryEn/Processors/Preparation/SchemaTypeResolver.cs
@@ -5,16 +5,30 @@ using Pf2e.Scrapper.SchemaBuilder.Types;
namespace Pf2e.Scrapper.Importers.Implementations.FoundryEn.Processors.Preparation;
-internal class SchemaTypeResolver : TypeResolver
+///
+/// Класс для определения типов полей в схеме данных Foundry PF2e.
+///
+public class SchemaTypeResolver : TypeResolver
{
+ ///
+ /// Класс для представления типа поля, содержащего правила Foundry.
+ ///
+ /// Родительский элемент схемы данных.
public class FoundryRulesSchemaType(SchemaNode parent) : IgnoreSchemaType(parent)
{
+ ///
+ /// Отображаемое имя типа.
+ ///
+ /// Строковое представоение типа элемента.
public override string GetTypeName()
{
return "ignored (Foundry rules object)";
}
}
+ ///
+ /// Пути к полям, которые должны быть представлены как словари.
+ ///
protected readonly List DictionaryPaths =
[
"character.items.[].system.items",
@@ -41,11 +55,11 @@ internal class SchemaTypeResolver : TypeResolver
];
///
- /// Частное определение типа поля.
+ /// Частное определение типа поля.
///
/// Поле схемы данных, для которого создаётся тип.
/// Добавляемое значение.
- /// Новый тип для схемы данных. `null`, что бы использовать значение по умолчанию
+ /// Новый тип для схемы данных. `null`, что бы использовать значение по умолчанию.
protected override AbstractSchemaType? CustomResolve(SchemaNode node, JToken? value)
{
return CheckPath(node, DictionaryPaths) ? new DictionarySchemaType(node)
diff --git a/Pf2e/Scrapper/Importers/Repositories/AbstractGitHubRepository.cs b/Pf2e/Scrapper/Importers/Repositories/AbstractGitHubRepository.cs
index af79173..c444ee5 100644
--- a/Pf2e/Scrapper/Importers/Repositories/AbstractGitHubRepository.cs
+++ b/Pf2e/Scrapper/Importers/Repositories/AbstractGitHubRepository.cs
@@ -10,7 +10,7 @@ using Pf2e.Scrapper.Helpers;
namespace Pf2e.Scrapper.Importers.Repositories;
-internal abstract class AbstractGitHubRepository(AbstractImporter importer)
+public abstract class AbstractGitHubRepository(AbstractImporter importer)
: AbstractImporterRepository(importer)
{
public abstract string Repository { get; }
diff --git a/Pf2e/Scrapper/Importers/Repositories/AbstractImporterRepository.cs b/Pf2e/Scrapper/Importers/Repositories/AbstractImporterRepository.cs
index ff75e17..bb5229b 100644
--- a/Pf2e/Scrapper/Importers/Repositories/AbstractImporterRepository.cs
+++ b/Pf2e/Scrapper/Importers/Repositories/AbstractImporterRepository.cs
@@ -7,7 +7,7 @@ namespace Pf2e.Scrapper.Importers.Repositories;
/// Класс абстрактного репозитория.
///
/// Импортёр, использующий репозиторий.
-internal abstract class AbstractImporterRepository(AbstractImporter importer)
+public abstract class AbstractImporterRepository(AbstractImporter importer)
{
///
/// Импортёр, использующий репозиторий.
diff --git a/Pf2e/Scrapper/Importers/Repositories/GitRepository.cs b/Pf2e/Scrapper/Importers/Repositories/GitRepository.cs
index 492dbbb..4116d88 100644
--- a/Pf2e/Scrapper/Importers/Repositories/GitRepository.cs
+++ b/Pf2e/Scrapper/Importers/Repositories/GitRepository.cs
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper.Importers.Repositories;
///
/// Импортёр, использующий репозиторий.
/// Ссылка на GIT-репозиторий.
-internal class GitRepository(AbstractImporter importer, string url)
+public class GitRepository(AbstractImporter importer, string url)
: AbstractImporterRepository(importer)
{
///
diff --git a/Pf2e/Scrapper/Pf2e.Scrapper.csproj b/Pf2e/Scrapper/Pf2e.Scrapper.csproj
index 6465e28..7e1403f 100644
--- a/Pf2e/Scrapper/Pf2e.Scrapper.csproj
+++ b/Pf2e/Scrapper/Pf2e.Scrapper.csproj
@@ -1,9 +1,7 @@
- WinExe
- net9.0-windows7.0
+ net9.0-windows
enable
- False
disable
True
true
@@ -16,7 +14,6 @@
-
@@ -27,13 +24,13 @@
runtime; build; native; contentfiles; analyzers; buildtransitive
all
-
+
diff --git a/Pf2e/Scrapper/Processors/Attributes/AbstractProcessorAttribute.cs b/Pf2e/Scrapper/Processors/Attributes/AbstractProcessorAttribute.cs
index 9cabc16..c14cf4b 100644
--- a/Pf2e/Scrapper/Processors/Attributes/AbstractProcessorAttribute.cs
+++ b/Pf2e/Scrapper/Processors/Attributes/AbstractProcessorAttribute.cs
@@ -1,4 +1,5 @@
using System;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Processors.Attributes;
@@ -6,7 +7,7 @@ namespace Pf2e.Scrapper.Processors.Attributes;
/// Абстрактный аттрибут обработчика.
///
[AttributeUsage(AttributeTargets.Class)]
-internal class AbstractProcessorAttribute(string name) : Attribute
+public class AbstractProcessorAttribute(string name) : Attribute
{
///
/// Название обработчика.
diff --git a/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorCompendiumEnum.cs b/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorCompendiumEnum.cs
new file mode 100644
index 0000000..6bffaa0
--- /dev/null
+++ b/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorCompendiumEnum.cs
@@ -0,0 +1,17 @@
+namespace Pf2e.Scrapper.Processors.Attributes.Enum;
+
+///
+/// Перечисление для типов компендиумов обработчиков.
+///
+public enum ProcessorCompendiumEnum
+{
+ ///
+ /// Компедиум Архивов Нефиса.
+ ///
+ Aonprd,
+
+ ///
+ /// Компедиум Foundry EN.
+ ///
+ FoundryEn,
+}
diff --git a/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorFactoryTypeEnum.cs b/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorFactoryTypeEnum.cs
new file mode 100644
index 0000000..fc19053
--- /dev/null
+++ b/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorFactoryTypeEnum.cs
@@ -0,0 +1,22 @@
+namespace Pf2e.Scrapper.Processors.Attributes.Enum;
+
+///
+/// Перечисление для типов фабрик обработчиков.
+///
+public enum ProcessorFactoryTypeEnum
+{
+ ///
+ /// Простая фабрика одиночного обработчика.
+ ///
+ Simple,
+
+ ///
+ /// Фабрика для создания обработчиков, которые могут обрабатывать типы данных компедиума.
+ ///
+ Compendium,
+
+ ///
+ /// Фабрика для создания обработчиков, которые могут обрабатывать итераторы данных.
+ ///
+ Iterator,
+}
diff --git a/Pf2e/Scrapper/Processors/Attributes/ProcessorGroupEnum.cs b/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorGroupEnum.cs
similarity index 51%
rename from Pf2e/Scrapper/Processors/Attributes/ProcessorGroupEnum.cs
rename to Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorGroupEnum.cs
index a02904a..92baf68 100644
--- a/Pf2e/Scrapper/Processors/Attributes/ProcessorGroupEnum.cs
+++ b/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorGroupEnum.cs
@@ -1,7 +1,7 @@
using System.ComponentModel;
using System.Reflection;
-namespace Pf2e.Scrapper.Processors.Attributes;
+namespace Pf2e.Scrapper.Processors.Attributes.Enum;
///
/// Перечисление для групп обработчиков.
@@ -50,60 +50,3 @@ public enum ProcessorGroupEnum
[Description("Foundry EN: Основные сущности")]
FoundryEnEntities,
}
-
-///
-/// Перечисление для типов компендиумов обработчиков.
-///
-public enum ProcessorCompendiumEnum
-{
- ///
- /// Компедиум Архивов Нефиса.
- ///
- Aonprd,
-
- ///
- /// Компедиум Foundry EN.
- ///
- FoundryEn,
-}
-
-///
-/// Перечисление для типов фабрик обработчиков.
-///
-public enum ProcessorFactoryTypeEnum
-{
- ///
- /// Простая фабрика одиночного обработчика.
- ///
- Simple,
-
- ///
- /// Фабрика для создания обработчиков, которые могут обрабатывать типы данных компедиума.
- ///
- Compendium,
-
- ///
- /// Фабрика для создания обработчиков, которые могут обрабатывать итераторы данных.
- ///
- Iterator,
-}
-
-///
-/// Расширение для перечисления .
-///
-public static class ProcessorGroupEnumExtension
-{
- ///
- /// Получает описание группы обработчика из атрибута .
- ///
- /// Перечисление группы обработчика.
- /// Строка с описанием группы обработчика.
- public static string GetDescription(this ProcessorGroupEnum group)
- {
- return group
- .GetType()
- .GetField(group.ToString())
- ?.GetCustomAttribute()
- ?.Description ?? group.ToString();
- }
-}
diff --git a/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorGroupEnumExtension.cs b/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorGroupEnumExtension.cs
new file mode 100644
index 0000000..9067105
--- /dev/null
+++ b/Pf2e/Scrapper/Processors/Attributes/Enum/ProcessorGroupEnumExtension.cs
@@ -0,0 +1,24 @@
+using System.ComponentModel;
+using System.Reflection;
+
+namespace Pf2e.Scrapper.Processors.Attributes.Enum;
+
+///
+/// Расширение для перечисления .
+///
+public static class ProcessorGroupEnumExtension
+{
+ ///
+ /// Получает описание группы обработчика из атрибута .
+ ///
+ /// Перечисление группы обработчика.
+ /// Строка с описанием группы обработчика.
+ public static string GetDescription(this ProcessorGroupEnum group)
+ {
+ return group
+ .GetType()
+ .GetField(group.ToString())
+ ?.GetCustomAttribute()
+ ?.Description ?? group.ToString();
+ }
+}
diff --git a/Pf2e/Scrapper/Processors/Attributes/ProcessorAttribute.cs b/Pf2e/Scrapper/Processors/Attributes/ProcessorAttribute.cs
index c6b4937..20dcbc5 100644
--- a/Pf2e/Scrapper/Processors/Attributes/ProcessorAttribute.cs
+++ b/Pf2e/Scrapper/Processors/Attributes/ProcessorAttribute.cs
@@ -7,4 +7,4 @@ namespace Pf2e.Scrapper.Processors.Attributes;
///
/// Название обработчика.
[AttributeUsage(AttributeTargets.Class)]
-internal class ProcessorAttribute(string name) : AbstractProcessorAttribute(name) { }
+public class ProcessorAttribute(string name) : AbstractProcessorAttribute(name) { }
diff --git a/Pf2e/Scrapper/Processors/Attributes/ProcessorCollectionAttribute.cs b/Pf2e/Scrapper/Processors/Attributes/ProcessorCollectionAttribute.cs
index fbbaf41..7e37554 100644
--- a/Pf2e/Scrapper/Processors/Attributes/ProcessorCollectionAttribute.cs
+++ b/Pf2e/Scrapper/Processors/Attributes/ProcessorCollectionAttribute.cs
@@ -1,4 +1,5 @@
using System;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
namespace Pf2e.Scrapper.Processors.Attributes;
@@ -7,7 +8,7 @@ namespace Pf2e.Scrapper.Processors.Attributes;
///
/// Название обработчика.
[AttributeUsage(AttributeTargets.Class)]
-internal class ProcessorCollectionAttribute(string name) : AbstractProcessorAttribute(name)
+public class ProcessorCollectionAttribute(string name) : AbstractProcessorAttribute(name)
{
///
/// Название типов, который обрабатывает этот оброботчик.
diff --git a/Pf2e/Scrapper/Processors/Attributes/ProcessorFactoryAttribute.cs b/Pf2e/Scrapper/Processors/Attributes/ProcessorFactoryAttribute.cs
index b63088f..5046c19 100644
--- a/Pf2e/Scrapper/Processors/Attributes/ProcessorFactoryAttribute.cs
+++ b/Pf2e/Scrapper/Processors/Attributes/ProcessorFactoryAttribute.cs
@@ -2,7 +2,7 @@
namespace Pf2e.Scrapper.Processors.Attributes;
-internal class ProcessorFactoryAttribute(string name) : AbstractProcessorAttribute(name)
+public class ProcessorFactoryAttribute(string name) : AbstractProcessorAttribute(name)
{
///
/// Тип обрабатывающего процессора
diff --git a/Pf2e/Scrapper/Processors/Collection/ProcessorCollection.cs b/Pf2e/Scrapper/Processors/Collection/ProcessorCollection.cs
index 8f3d07f..ebb600a 100644
--- a/Pf2e/Scrapper/Processors/Collection/ProcessorCollection.cs
+++ b/Pf2e/Scrapper/Processors/Collection/ProcessorCollection.cs
@@ -5,6 +5,7 @@ using System.Reflection;
using LinqToDB;
using Microsoft.Extensions.DependencyInjection;
using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Processors.Factory;
@@ -13,7 +14,7 @@ namespace Pf2e.Scrapper.Processors.Collection;
///
/// Класс с коллекцией обработчиков.
///
-internal class ProcessorCollection
+public class ProcessorCollection
{
public IServiceProvider ServiceProvider { get; }
diff --git a/Pf2e/Scrapper/Processors/Collection/ProcessorRecord.cs b/Pf2e/Scrapper/Processors/Collection/ProcessorRecord.cs
index f432e2b..b6dd737 100644
--- a/Pf2e/Scrapper/Processors/Collection/ProcessorRecord.cs
+++ b/Pf2e/Scrapper/Processors/Collection/ProcessorRecord.cs
@@ -1,6 +1,6 @@
using System;
using System.Collections.Generic;
-using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Factory;
namespace Pf2e.Scrapper.Processors.Collection;
@@ -8,7 +8,7 @@ namespace Pf2e.Scrapper.Processors.Collection;
///
/// Элемент коллекции обработчиков.
///
-internal class ProcessorRecord
+public class ProcessorRecord
{
///
/// Название обработчика.
diff --git a/Pf2e/Scrapper/Processors/Definitions/AbstractInputProcessor.cs b/Pf2e/Scrapper/Processors/Definitions/AbstractInputProcessor.cs
index 182805c..53a0839 100644
--- a/Pf2e/Scrapper/Processors/Definitions/AbstractInputProcessor.cs
+++ b/Pf2e/Scrapper/Processors/Definitions/AbstractInputProcessor.cs
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper.Processors.Definitions;
///
/// Входные данные обработчика.
///
-internal abstract class AbstractInputProcessor(ProcessorInput input) : IProcessor
+public abstract class AbstractInputProcessor(ProcessorInput input) : IProcessor
{
///
/// Входные данные обработчика.
diff --git a/Pf2e/Scrapper/Processors/Definitions/AbstractSimpleProcessor.cs b/Pf2e/Scrapper/Processors/Definitions/AbstractSimpleProcessor.cs
index 69bf9e6..fbd646e 100644
--- a/Pf2e/Scrapper/Processors/Definitions/AbstractSimpleProcessor.cs
+++ b/Pf2e/Scrapper/Processors/Definitions/AbstractSimpleProcessor.cs
@@ -8,7 +8,7 @@ namespace Pf2e.Scrapper.Processors.Definitions;
/// для которых указан атрибут .
///
///
-internal abstract class AbstractSimpleProcessor : IProcessor
+public abstract class AbstractSimpleProcessor : IProcessor
{
///
/// Основной метод обработки данных.
diff --git a/Pf2e/Scrapper/Processors/Factory/AbstractProcessorFactory.cs b/Pf2e/Scrapper/Processors/Factory/AbstractProcessorFactory.cs
index dca6269..1ff48a3 100644
--- a/Pf2e/Scrapper/Processors/Factory/AbstractProcessorFactory.cs
+++ b/Pf2e/Scrapper/Processors/Factory/AbstractProcessorFactory.cs
@@ -1,14 +1,14 @@
using System;
using System.Collections.Generic;
-using Pf2e.Scrapper.Processors.Definitions;
using Pf2e.Scrapper.Processors.Collection;
+using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Processors.Factory;
///
/// Абстрактная фабрика создания процессоров.
///
-internal abstract class AbstractProcessorFactory
+public abstract class AbstractProcessorFactory
{
///
/// Подготовить фабрику к работе.
diff --git a/Pf2e/Scrapper/Processors/Factory/CompendiumProcessorFactory.cs b/Pf2e/Scrapper/Processors/Factory/CompendiumProcessorFactory.cs
index 89c453b..b1c40b5 100644
--- a/Pf2e/Scrapper/Processors/Factory/CompendiumProcessorFactory.cs
+++ b/Pf2e/Scrapper/Processors/Factory/CompendiumProcessorFactory.cs
@@ -5,13 +5,13 @@ using Newtonsoft.Json.Linq;
using Pf2e.Scrapper.Importers;
using Pf2e.Scrapper.Importers.Implementations.Aonprd.Compendium;
using Pf2e.Scrapper.Importers.Implementations.FoundryEn.Compendium;
-using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Collection;
using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Processors.Factory;
-internal class CompendiumProcessorFactory(ProcessorRecord item, IServiceProvider serviceProvider)
+public class CompendiumProcessorFactory(ProcessorRecord item, IServiceProvider serviceProvider)
: AbstractProcessorFactory
{
public ProcessorRecord Item { get; } = item;
diff --git a/Pf2e/Scrapper/Processors/Factory/SimpleProcessorFactory.cs b/Pf2e/Scrapper/Processors/Factory/SimpleProcessorFactory.cs
index 45382df..c9a5b72 100644
--- a/Pf2e/Scrapper/Processors/Factory/SimpleProcessorFactory.cs
+++ b/Pf2e/Scrapper/Processors/Factory/SimpleProcessorFactory.cs
@@ -6,7 +6,7 @@ using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.Processors.Factory;
-internal class SimpleProcessorFactory(ProcessorRecord item, IServiceProvider serviceProvider)
+public class SimpleProcessorFactory(ProcessorRecord item, IServiceProvider serviceProvider)
: AbstractProcessorFactory
{
public ProcessorRecord Item { get; } = item;
diff --git a/Pf2e/Scrapper/Processors/General/DatabaseTruncateProcessor.cs b/Pf2e/Scrapper/Processors/General/DatabaseTruncateProcessor.cs
index 1b5812d..0bde423 100644
--- a/Pf2e/Scrapper/Processors/General/DatabaseTruncateProcessor.cs
+++ b/Pf2e/Scrapper/Processors/General/DatabaseTruncateProcessor.cs
@@ -1,11 +1,12 @@
-using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Database;
+using Pf2e.Scrapper.Processors.Attributes;
+using Pf2e.Scrapper.Processors.Attributes.Enum;
using Pf2e.Scrapper.Processors.Definitions;
-using Pf2e.Database;
namespace Pf2e.Scrapper.Processors.General;
[Processor("truncate", Description = "Отчистка таблиц БД", Group = ProcessorGroupEnum.General)]
-internal class DatabaseTruncateProcessor : IProcessor
+public class DatabaseTruncateProcessor : IProcessor
{
public void Process()
{
diff --git a/Pf2e/Scrapper/Processors/ProcessorExecutor.cs b/Pf2e/Scrapper/Processors/ProcessorExecutor.cs
index 9820fb9..c4740de 100644
--- a/Pf2e/Scrapper/Processors/ProcessorExecutor.cs
+++ b/Pf2e/Scrapper/Processors/ProcessorExecutor.cs
@@ -15,7 +15,7 @@ namespace Pf2e.Scrapper.Processors;
/// [DI]
/// [DI]
/// [DI]
-internal sealed class ProcessorExecutor(
+public sealed class ProcessorExecutor(
ProcessorCollection collection,
ProcessProgress progress,
ApplicationSettings settings
diff --git a/Pf2e/Scrapper/Processors/ProcessorInput.cs b/Pf2e/Scrapper/Processors/ProcessorInput.cs
index 0555114..ba4224f 100644
--- a/Pf2e/Scrapper/Processors/ProcessorInput.cs
+++ b/Pf2e/Scrapper/Processors/ProcessorInput.cs
@@ -15,7 +15,7 @@ namespace Pf2e.Scrapper.Processors;
/// Название объекта, ассоциированного с вводом.
/// JSON-объект, который будет использоваться для доступа к данным.
/// [DI] Набор интерфейсов, разрешающих значения перечислений.
-internal class ProcessorInput(string name, JObject input, IEnumerable enumSolvers)
+public class ProcessorInput(string name, JObject input, IEnumerable enumSolvers)
{
///
/// Название объекта, ассоциированного с вводом.
@@ -211,7 +211,7 @@ internal class ProcessorInput(string name, JObject input, IEnumerable
/// Интерфейс для решения значений перечислений.
///
-internal interface IEnumSolver { }
+public interface IEnumSolver { }
///
/// Абстрактный класс для разрешения значений перечислений.
diff --git a/Pf2e/Scrapper/Program.cs b/Pf2e/Scrapper/Program.cs
index b576ce0..24d2a75 100644
--- a/Pf2e/Scrapper/Program.cs
+++ b/Pf2e/Scrapper/Program.cs
@@ -7,7 +7,7 @@ using Pf2e.Scrapper.WPF;
namespace Pf2e.Scrapper;
-internal static class Program
+public static class Program
{
///
/// The main entry point for the application.
diff --git a/Pf2e/Scrapper/SchemaBuilder/AbstractSchemaBuildProcessor.cs b/Pf2e/Scrapper/SchemaBuilder/AbstractSchemaBuildProcessor.cs
index 2624cd2..5657665 100644
--- a/Pf2e/Scrapper/SchemaBuilder/AbstractSchemaBuildProcessor.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/AbstractSchemaBuildProcessor.cs
@@ -8,7 +8,7 @@ using Pf2e.Scrapper.Processors.Definitions;
namespace Pf2e.Scrapper.SchemaBuilder;
-internal abstract class AbstractSchemaBuildProcessor : IProcessor
+public abstract class AbstractSchemaBuildProcessor : IProcessor
{
///
/// Связаный компендиум
diff --git a/Pf2e/Scrapper/SchemaBuilder/SchemaNode.cs b/Pf2e/Scrapper/SchemaBuilder/SchemaNode.cs
index 067169d..10c242f 100644
--- a/Pf2e/Scrapper/SchemaBuilder/SchemaNode.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/SchemaNode.cs
@@ -16,7 +16,7 @@ namespace Pf2e.Scrapper.SchemaBuilder;
/// schema.AddValue(data); // Добавление данных
///
///
-internal class SchemaNode
+public class SchemaNode
{
///
/// Отображаемое имя элемента.
diff --git a/Pf2e/Scrapper/SchemaBuilder/TypeResolver.cs b/Pf2e/Scrapper/SchemaBuilder/TypeResolver.cs
index 47b50e6..40b5fa6 100644
--- a/Pf2e/Scrapper/SchemaBuilder/TypeResolver.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/TypeResolver.cs
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper.SchemaBuilder;
///
/// Класс для определения типа поля в схеме данных.
///
-internal class TypeResolver
+public class TypeResolver
{
///
/// Проверка соответствия пути.
diff --git a/Pf2e/Scrapper/SchemaBuilder/Types/AbstractSchemaType.cs b/Pf2e/Scrapper/SchemaBuilder/Types/AbstractSchemaType.cs
index b6f9ff8..9430099 100644
--- a/Pf2e/Scrapper/SchemaBuilder/Types/AbstractSchemaType.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/Types/AbstractSchemaType.cs
@@ -7,7 +7,7 @@ namespace Pf2e.Scrapper.SchemaBuilder.Types;
/// Абстрактный тип представоления данных в схеме.
///
/// Элемент, к которому добавляется тип.
-internal abstract class AbstractSchemaType(SchemaNode parent)
+public abstract class AbstractSchemaType(SchemaNode parent)
{
///
/// Элемент схемы данных, к которому относится тип.
diff --git a/Pf2e/Scrapper/SchemaBuilder/Types/ArraySchemaType.cs b/Pf2e/Scrapper/SchemaBuilder/Types/ArraySchemaType.cs
index 9242a6b..1ed927e 100644
--- a/Pf2e/Scrapper/SchemaBuilder/Types/ArraySchemaType.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/Types/ArraySchemaType.cs
@@ -8,7 +8,7 @@ namespace Pf2e.Scrapper.SchemaBuilder.Types;
/// Тип представоления массива в схеме.
///
/// Элемент, к которому добавляется тип.
-internal class ArraySchemaType(SchemaNode parent) : AbstractSchemaType(parent)
+public class ArraySchemaType(SchemaNode parent) : AbstractSchemaType(parent)
{
///
/// Минимальное количество элементов в массиве.
diff --git a/Pf2e/Scrapper/SchemaBuilder/Types/DictionarySchemaType.cs b/Pf2e/Scrapper/SchemaBuilder/Types/DictionarySchemaType.cs
index dfd48fc..655c839 100644
--- a/Pf2e/Scrapper/SchemaBuilder/Types/DictionarySchemaType.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/Types/DictionarySchemaType.cs
@@ -7,7 +7,7 @@ namespace Pf2e.Scrapper.SchemaBuilder.Types;
/// Тип представоления словаря в схеме.
///
/// Элемент, к которому добавляется тип.
-internal class DictionarySchemaType(SchemaNode parent) : AbstractSchemaType(parent)
+public class DictionarySchemaType(SchemaNode parent) : AbstractSchemaType(parent)
{
///
/// Схема ключей словаря.
diff --git a/Pf2e/Scrapper/SchemaBuilder/Types/IgnoreSchemaType.cs b/Pf2e/Scrapper/SchemaBuilder/Types/IgnoreSchemaType.cs
index 649da83..84f79e9 100644
--- a/Pf2e/Scrapper/SchemaBuilder/Types/IgnoreSchemaType.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/Types/IgnoreSchemaType.cs
@@ -7,7 +7,7 @@ namespace Pf2e.Scrapper.SchemaBuilder.Types;
/// Тип, указывающий, что данные игнорируются.
///
/// Элемент, к которому добавляется тип.
-internal class IgnoreSchemaType(SchemaNode parent) : AbstractSchemaType(parent)
+public class IgnoreSchemaType(SchemaNode parent) : AbstractSchemaType(parent)
{
///
/// Проверка, что значение совместимо с текущим типом.
diff --git a/Pf2e/Scrapper/SchemaBuilder/Types/ObjectSchemaType.cs b/Pf2e/Scrapper/SchemaBuilder/Types/ObjectSchemaType.cs
index 21d7aeb..8a6c1d6 100644
--- a/Pf2e/Scrapper/SchemaBuilder/Types/ObjectSchemaType.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/Types/ObjectSchemaType.cs
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper.SchemaBuilder.Types;
/// Тип представоления объектов в схеме.
///
/// Элемент, к которому добавляется тип.
-internal class ObjectSchemaType(SchemaNode parent) : AbstractSchemaType(parent)
+public class ObjectSchemaType(SchemaNode parent) : AbstractSchemaType(parent)
{
///
/// Элемнты полей объекта.
diff --git a/Pf2e/Scrapper/SchemaBuilder/Types/StaticSchemaType.cs b/Pf2e/Scrapper/SchemaBuilder/Types/StaticSchemaType.cs
index 7acf853..23cdb85 100644
--- a/Pf2e/Scrapper/SchemaBuilder/Types/StaticSchemaType.cs
+++ b/Pf2e/Scrapper/SchemaBuilder/Types/StaticSchemaType.cs
@@ -9,7 +9,7 @@ namespace Pf2e.Scrapper.SchemaBuilder.Types;
///
/// Элемент, к которому добавляется тип.
/// Тип значения.
-internal class StaticSchemaType(SchemaNode parent, JTokenType type) : AbstractSchemaType(parent)
+public class StaticSchemaType(SchemaNode parent, JTokenType type) : AbstractSchemaType(parent)
{
///
/// Тип значения.
diff --git a/Pf2e/Scrapper/WPF/StartForm/StartForm.xaml.cs b/Pf2e/Scrapper/WPF/StartForm/StartForm.xaml.cs
deleted file mode 100644
index d7a77cd..0000000
--- a/Pf2e/Scrapper/WPF/StartForm/StartForm.xaml.cs
+++ /dev/null
@@ -1,32 +0,0 @@
-using System.Windows;
-using Pf2e.Scrapper.Processors.Collection;
-
-namespace Pf2e.Scrapper.WPF.StartForm;
-
-internal partial class StartForm : Window
-{
- public ProcessorCollection Collection { get; }
-
- public StartForm(ProcessorCollection collection)
- {
- Collection = collection;
- InitializeComponent();
- }
-
- private void Window_Loaded(object sender, RoutedEventArgs e)
- {
- ProcessorCollectionControl.Collection = Collection;
- }
-
- private void ViewerButton_Click(object sender, RoutedEventArgs e)
- {
- ApplicationStateChange?.Invoke(this, ApplicationStage.Viewer);
- }
-
- private void StartButton_Click(object sender, RoutedEventArgs e)
- {
- ApplicationStateChange?.Invoke(this, ApplicationStage.ImportProcess);
- }
-
- public event ImportApplication.ApplicationStateChangeDelegate? ApplicationStateChange;
-}
diff --git a/Pf2e/Scrapper/WPF/ViewModelBase.cs b/Pf2e/Scrapper/WPF/ViewModelBase.cs
deleted file mode 100644
index ba73445..0000000
--- a/Pf2e/Scrapper/WPF/ViewModelBase.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Runtime.CompilerServices;
-
-namespace Pf2e.Scrapper.WPF;
-
-internal abstract class ViewModelBase : INotifyPropertyChanged
-{
- public event PropertyChangedEventHandler? PropertyChanged;
-
- protected virtual void OnPropertyChanged([CallerMemberName] string? propertyName = null)
- {
- PropertyChanged?.Invoke(this, new(propertyName));
- }
-
- protected bool SetField(ref T field, T value, [CallerMemberName] string? propertyName = null)
- {
- if (EqualityComparer.Default.Equals(field, value))
- return false;
- field = value;
- OnPropertyChanged(propertyName);
- return true;
- }
-}
diff --git a/Pf2e/WPF/AssemblyInfo.cs b/Pf2e/WPF/AssemblyInfo.cs
new file mode 100644
index 0000000..b0ec827
--- /dev/null
+++ b/Pf2e/WPF/AssemblyInfo.cs
@@ -0,0 +1,10 @@
+using System.Windows;
+
+[assembly: ThemeInfo(
+ ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
+ //(used if a resource is not found in the page,
+ // or application resource dictionaries)
+ ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
+ //(used if a resource is not found in the page,
+ // app, or any theme specific resource dictionaries)
+)]
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/Component/EntityListControl.xaml b/Pf2e/WPF/EntityViewer/Component/EntityListControl.xaml
similarity index 96%
rename from Pf2e/Scrapper/WPF/EntityViewer/Component/EntityListControl.xaml
rename to Pf2e/WPF/EntityViewer/Component/EntityListControl.xaml
index 81a84b2..5e65b13 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/Component/EntityListControl.xaml
+++ b/Pf2e/WPF/EntityViewer/Component/EntityListControl.xaml
@@ -1,10 +1,10 @@
/// Логика взаимодействия для DbEntityListControl.xaml
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/Component/ViewControl.xaml b/Pf2e/WPF/EntityViewer/Component/ViewControl.xaml
similarity index 96%
rename from Pf2e/Scrapper/WPF/EntityViewer/Component/ViewControl.xaml
rename to Pf2e/WPF/EntityViewer/Component/ViewControl.xaml
index 063da7b..a06ec17 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/Component/ViewControl.xaml
+++ b/Pf2e/WPF/EntityViewer/Component/ViewControl.xaml
@@ -1,13 +1,13 @@
/// Логика взаимодействия для ViewLadder.xaml
@@ -32,7 +32,7 @@ internal partial class ViewLadder : UserControl
public double DepthSize
{
get { return (double)GetValue(DepthSizeProperty); }
- set { SetValue(DepthSizeProperty, value); }
+ set { SetValue(DepthSizeProperty, value); }
}
public static readonly DependencyProperty DepthSizeProperty = DependencyProperty.Register(
"DepthSize",
@@ -44,19 +44,22 @@ internal partial class ViewLadder : UserControl
public IEnumerable Ladder
{
get { return (IEnumerable)GetValue(LadderProperty); }
- set
- {
- SetValue(LadderProperty, value);
- }
+ set { SetValue(LadderProperty, value); }
}
public static readonly DependencyProperty LadderProperty = DependencyProperty.Register(
"Ladder",
typeof(IEnumerable),
typeof(ViewLadder),
- new FrameworkPropertyMetadata(Array.Empty(), new PropertyChangedCallback(OnValueChanged))
+ new FrameworkPropertyMetadata(
+ Array.Empty(),
+ new PropertyChangedCallback(OnValueChanged)
+ )
);
- private static void OnValueChanged(DependencyObject obj, DependencyPropertyChangedEventArgs args)
+ private static void OnValueChanged(
+ DependencyObject obj,
+ DependencyPropertyChangedEventArgs args
+ )
{
ViewLadder control = (ViewLadder)obj;
control.Rebuild();
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/EntityForm.xaml b/Pf2e/WPF/EntityViewer/EntityForm.xaml
similarity index 92%
rename from Pf2e/Scrapper/WPF/EntityViewer/EntityForm.xaml
rename to Pf2e/WPF/EntityViewer/EntityForm.xaml
index 98a70f8..aafb340 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/EntityForm.xaml
+++ b/Pf2e/WPF/EntityViewer/EntityForm.xaml
@@ -1,11 +1,11 @@
/// Тип лестницы глубины.
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureBuilder.cs b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureBuilder.cs
similarity index 98%
rename from Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureBuilder.cs
rename to Pf2e/WPF/EntityViewer/EntityViewStructure/StructureBuilder.cs
index 5ca6734..446232f 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureBuilder.cs
+++ b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureBuilder.cs
@@ -2,7 +2,7 @@
using System.Collections.Generic;
using System.Linq;
-namespace Pf2e.Scrapper.WPF.EntityViewer.EntityViewStructure;
+namespace Pf2e.WPF.EntityViewer.EntityViewStructure;
///
/// Класс для построения структуры данных класса.
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureField.cs b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureField.cs
similarity index 99%
rename from Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureField.cs
rename to Pf2e/WPF/EntityViewer/EntityViewStructure/StructureField.cs
index 09770ec..fa397d8 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureField.cs
+++ b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureField.cs
@@ -4,7 +4,7 @@ using System.ComponentModel;
using System.Linq;
using System.Runtime.CompilerServices;
-namespace Pf2e.Scrapper.WPF.EntityViewer.EntityViewStructure;
+namespace Pf2e.WPF.EntityViewer.EntityViewStructure;
///
/// Базовый класс для полей структуры.
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureFieldComplex.cs b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureFieldComplex.cs
similarity index 99%
rename from Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureFieldComplex.cs
rename to Pf2e/WPF/EntityViewer/EntityViewStructure/StructureFieldComplex.cs
index 0b16287..c9335b1 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureFieldComplex.cs
+++ b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureFieldComplex.cs
@@ -6,7 +6,7 @@ using System.Reflection;
using LinqToDB.Extensions;
using Pf2e.Database.Model.Common.I18n;
-namespace Pf2e.Scrapper.WPF.EntityViewer.EntityViewStructure;
+namespace Pf2e.WPF.EntityViewer.EntityViewStructure;
///
/// Поле стркутуры с объектом.
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureFieldType.cs b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureFieldType.cs
similarity index 89%
rename from Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureFieldType.cs
rename to Pf2e/WPF/EntityViewer/EntityViewStructure/StructureFieldType.cs
index cbe7a23..63fbfc4 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureFieldType.cs
+++ b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureFieldType.cs
@@ -1,4 +1,4 @@
-namespace Pf2e.Scrapper.WPF.EntityViewer.EntityViewStructure;
+namespace Pf2e.WPF.EntityViewer.EntityViewStructure;
///
/// Тип поля структуры.
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureProcessedObject.cs b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureProcessedObject.cs
similarity index 93%
rename from Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureProcessedObject.cs
rename to Pf2e/WPF/EntityViewer/EntityViewStructure/StructureProcessedObject.cs
index f58cf09..1b56d87 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureProcessedObject.cs
+++ b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureProcessedObject.cs
@@ -1,6 +1,6 @@
using System.Collections.Generic;
-namespace Pf2e.Scrapper.WPF.EntityViewer.EntityViewStructure;
+namespace Pf2e.WPF.EntityViewer.EntityViewStructure;
///
/// Класс для хранения обработанного объекта.
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureRow.cs b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureRow.cs
similarity index 99%
rename from Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureRow.cs
rename to Pf2e/WPF/EntityViewer/EntityViewStructure/StructureRow.cs
index 6636068..c8b38ce 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/EntityViewStructure/StructureRow.cs
+++ b/Pf2e/WPF/EntityViewer/EntityViewStructure/StructureRow.cs
@@ -10,7 +10,7 @@ using System.Windows.Media;
using FontAwesome.Sharp;
using Color = System.Windows.Media.Color;
-namespace Pf2e.Scrapper.WPF.EntityViewer.EntityViewStructure;
+namespace Pf2e.WPF.EntityViewer.EntityViewStructure;
///
/// Строка структуры, представляющая поле сущности.
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/Stores/SelectedEntityStore.cs b/Pf2e/WPF/EntityViewer/Stores/SelectedEntityStore.cs
similarity index 93%
rename from Pf2e/Scrapper/WPF/EntityViewer/Stores/SelectedEntityStore.cs
rename to Pf2e/WPF/EntityViewer/Stores/SelectedEntityStore.cs
index fb12bc4..d312432 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/Stores/SelectedEntityStore.cs
+++ b/Pf2e/WPF/EntityViewer/Stores/SelectedEntityStore.cs
@@ -1,7 +1,7 @@
using System;
using Pf2e.Database.Model.Base;
-namespace Pf2e.Scrapper.WPF.EntityViewer.Stores;
+namespace Pf2e.WPF.EntityViewer.Stores;
///
/// Хранилище выбранной сущности.
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/Stores/SelectedEntityTypeStore.cs b/Pf2e/WPF/EntityViewer/Stores/SelectedEntityTypeStore.cs
similarity index 89%
rename from Pf2e/Scrapper/WPF/EntityViewer/Stores/SelectedEntityTypeStore.cs
rename to Pf2e/WPF/EntityViewer/Stores/SelectedEntityTypeStore.cs
index a43b67d..78ea4fd 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/Stores/SelectedEntityTypeStore.cs
+++ b/Pf2e/WPF/EntityViewer/Stores/SelectedEntityTypeStore.cs
@@ -1,7 +1,7 @@
using System;
using Pf2e.Database.Model.Enum;
-namespace Pf2e.Scrapper.WPF.EntityViewer.Stores;
+namespace Pf2e.WPF.EntityViewer.Stores;
internal class SelectedEntityTypeStore
{
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/ViewModel/EntityFormViewModel.cs b/Pf2e/WPF/EntityViewer/ViewModel/EntityFormViewModel.cs
similarity index 97%
rename from Pf2e/Scrapper/WPF/EntityViewer/ViewModel/EntityFormViewModel.cs
rename to Pf2e/WPF/EntityViewer/ViewModel/EntityFormViewModel.cs
index bb8128b..ed2c990 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/ViewModel/EntityFormViewModel.cs
+++ b/Pf2e/WPF/EntityViewer/ViewModel/EntityFormViewModel.cs
@@ -1,12 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using Pf2e.Scrapper.WPF.EntityViewer.Stores;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.WPF.EntityViewer.Stores;
-namespace Pf2e.Scrapper.WPF.EntityViewer.ViewModel;
+namespace Pf2e.WPF.EntityViewer.ViewModel;
internal class EntityFormViewModel : ViewModelBase
{
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/ViewModel/EntityListViewModel.cs b/Pf2e/WPF/EntityViewer/ViewModel/EntityListViewModel.cs
similarity index 99%
rename from Pf2e/Scrapper/WPF/EntityViewer/ViewModel/EntityListViewModel.cs
rename to Pf2e/WPF/EntityViewer/ViewModel/EntityListViewModel.cs
index a049bd9..f90f9d8 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/ViewModel/EntityListViewModel.cs
+++ b/Pf2e/WPF/EntityViewer/ViewModel/EntityListViewModel.cs
@@ -2,12 +2,12 @@
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
-using Pf2e.Scrapper.WPF.EntityViewer.Stores;
using Pf2e.Database;
using Pf2e.Database.Model.Base;
using Pf2e.Database.Model.Enum;
+using Pf2e.Scrapper.WPF.EntityViewer.Stores;
-namespace Pf2e.Scrapper.WPF.EntityViewer.ViewModel;
+namespace Pf2e.WPF.EntityViewer.ViewModel;
internal class EntityListViewModel : ViewModelBase
{
diff --git a/Pf2e/Scrapper/WPF/EntityViewer/ViewModel/ViewViewModel.cs b/Pf2e/WPF/EntityViewer/ViewModel/ViewViewModel.cs
similarity index 96%
rename from Pf2e/Scrapper/WPF/EntityViewer/ViewModel/ViewViewModel.cs
rename to Pf2e/WPF/EntityViewer/ViewModel/ViewViewModel.cs
index 0fc6f43..0be6be3 100644
--- a/Pf2e/Scrapper/WPF/EntityViewer/ViewModel/ViewViewModel.cs
+++ b/Pf2e/WPF/EntityViewer/ViewModel/ViewViewModel.cs
@@ -1,19 +1,19 @@
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
+using Pf2e.Database;
using Pf2e.Scrapper.Helpers;
using Pf2e.Scrapper.WPF.EntityViewer.EntityViewStructure;
using Pf2e.Scrapper.WPF.EntityViewer.Stores;
-using Pf2e.Database;
-namespace Pf2e.Scrapper.WPF.EntityViewer.ViewModel;
+namespace Pf2e.WPF.EntityViewer.ViewModel;
internal class ViewViewModel : ViewModelBase
{
public Pf2eDbContext Context { get; }
public SelectedEntityStore SelectedEntityStore { get; }
- public EntityView? CurrentEntityView
+ public FullEntity? CurrentEntityView
{
get => _currentEntityView;
set
@@ -22,7 +22,7 @@ internal class ViewViewModel : ViewModelBase
OnPropertyChanged();
}
}
- private EntityView? _currentEntityView;
+ private FullEntity? _currentEntityView;
public ObservableCollection Rows
{
diff --git a/Pf2e/WPF/Pf2e.WPF.csproj b/Pf2e/WPF/Pf2e.WPF.csproj
new file mode 100644
index 0000000..a051278
--- /dev/null
+++ b/Pf2e/WPF/Pf2e.WPF.csproj
@@ -0,0 +1,46 @@
+
+
+ WinExe
+ net9.0-windows
+ enable
+ enable
+ true
+ true
+ ..\..\Documentation\$(MSBuildProjectName)
+ Name
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Code
+
+
+ Code
+
+
+ Code
+
+
+ Code
+
+
+ Code
+
+
+ Code
+
+
+
diff --git a/Pf2e/WPF/ProcessApplication.xaml b/Pf2e/WPF/ProcessApplication.xaml
new file mode 100644
index 0000000..8148a98
--- /dev/null
+++ b/Pf2e/WPF/ProcessApplication.xaml
@@ -0,0 +1,6 @@
+
+
+
diff --git a/Pf2e/WPF/ProcessApplication.xaml.cs b/Pf2e/WPF/ProcessApplication.xaml.cs
new file mode 100644
index 0000000..1947fe8
--- /dev/null
+++ b/Pf2e/WPF/ProcessApplication.xaml.cs
@@ -0,0 +1,8 @@
+using System.Windows;
+
+namespace Pf2e.WPF;
+
+///
+/// Interaction logic for ProcessApplication.xaml
+///
+public partial class ProcessApplication : Application { }
diff --git a/Pf2e/WPF/Program.cs b/Pf2e/WPF/Program.cs
new file mode 100644
index 0000000..24d2a75
--- /dev/null
+++ b/Pf2e/WPF/Program.cs
@@ -0,0 +1,53 @@
+using System;
+using System.Windows;
+using Microsoft.Extensions.DependencyInjection;
+using Pf2e.Scrapper.Importers.Implementations.Aonprd;
+using Pf2e.Scrapper.Importers.Implementations.FoundryEn;
+using Pf2e.Scrapper.WPF;
+
+namespace Pf2e.Scrapper;
+
+public static class Program
+{
+ ///
+ /// The main entry point for the application.
+ ///
+ [STAThread]
+ public static void Main()
+ {
+ // To customize application configuration such as set high DPI settings or default font,
+ // see https://aka.ms/applicationconfiguration.
+ ApplicationConfiguration.Initialize();
+
+ // Application.SetHighDpiMode(HighDpiMode.SystemAware);
+ /*
+#pragma warning disable WFO5001
+ Application.SetColorMode(SystemColorMode.System);
+#pragma warning restore WFO5001
+ */
+ IServiceCollection services = RegisterServices();
+
+ IServiceProvider serviceProvider = services.BuildServiceProvider();
+
+ ImportApplication app = ActivatorUtilities.CreateInstance(
+ serviceProvider
+ );
+
+ app.Run();
+ // Application.Run(app);
+ }
+
+ private static IServiceCollection RegisterServices()
+ {
+ IServiceCollection services = new ServiceCollection();
+
+ services.RegisterWpfServices();
+
+ ImportApplication.RegisterServices(services);
+
+ AonprdImporter.RegisterServices(services);
+ FoundryEnImporter.RegisterServices(services);
+
+ return services;
+ }
+}
diff --git a/Pf2e/Scrapper/WPF/ProgressForm/ProgressForm.xaml b/Pf2e/WPF/ProgressForm/ProgressForm.xaml
similarity index 96%
rename from Pf2e/Scrapper/WPF/ProgressForm/ProgressForm.xaml
rename to Pf2e/WPF/ProgressForm/ProgressForm.xaml
index 1bd22dd..467f33d 100644
--- a/Pf2e/Scrapper/WPF/ProgressForm/ProgressForm.xaml
+++ b/Pf2e/WPF/ProgressForm/ProgressForm.xaml
@@ -1,9 +1,8 @@
/// Логика взаимодействия для ProgressFormWpf.xaml
diff --git a/Pf2e/Scrapper/WPF/StartForm/Components/ProcessorCollectionControl.xaml b/Pf2e/WPF/StartForm/Components/ProcessorCollectionControl.xaml
similarity index 100%
rename from Pf2e/Scrapper/WPF/StartForm/Components/ProcessorCollectionControl.xaml
rename to Pf2e/WPF/StartForm/Components/ProcessorCollectionControl.xaml
diff --git a/Pf2e/Scrapper/WPF/StartForm/Components/ProcessorCollectionControl.xaml.cs b/Pf2e/WPF/StartForm/Components/ProcessorCollectionControl.xaml.cs
similarity index 100%
rename from Pf2e/Scrapper/WPF/StartForm/Components/ProcessorCollectionControl.xaml.cs
rename to Pf2e/WPF/StartForm/Components/ProcessorCollectionControl.xaml.cs
diff --git a/Pf2e/Scrapper/WPF/StartForm/StartForm.xaml b/Pf2e/WPF/StartForm/StartForm.xaml
similarity index 91%
rename from Pf2e/Scrapper/WPF/StartForm/StartForm.xaml
rename to Pf2e/WPF/StartForm/StartForm.xaml
index 99c5c50..8a53887 100644
--- a/Pf2e/Scrapper/WPF/StartForm/StartForm.xaml
+++ b/Pf2e/WPF/StartForm/StartForm.xaml
@@ -1,10 +1,9 @@
+/// Класс начальной формы приложения.
+///
+internal partial class StartForm : Window
+{
+ ///
+ /// Коллекция обработчиков.
+ ///
+ public ProcessorCollection Collection { get; }
+
+ ///
+ /// Конструктор класса .
+ ///
+ /// [DI] Коллекция обработчиков.
+ public StartForm(ProcessorCollection collection)
+ {
+ Collection = collection;
+ InitializeComponent();
+ }
+
+ ///
+ /// Событие загрузки формы.
+ ///
+ /// Отправитель события.
+ /// Аргументы события.
+ private void Window_Loaded(object sender, RoutedEventArgs e)
+ {
+ ProcessorCollectionControl.Collection = Collection;
+ }
+
+ ///
+ /// Событие нажатия на кнопку просмотра сущностей.
+ ///
+ /// Отправитель события.
+ /// Аргументы события.
+ private void ViewerButton_Click(object sender, RoutedEventArgs e)
+ {
+ ApplicationStateChange?.Invoke(this, ApplicationStage.Viewer);
+ }
+
+ ///
+ /// Событие нажатия кнопки начала процесса импорта.
+ ///
+ /// Отправитель события.
+ /// Аргументы события.
+ private void StartButton_Click(object sender, RoutedEventArgs e)
+ {
+ ApplicationStateChange?.Invoke(this, ApplicationStage.ImportProcess);
+ }
+
+ ///
+ /// Событие изменения состояния приложения.
+ ///
+ public event ImportApplication.ApplicationStateChangeDelegate? ApplicationStateChange;
+}
diff --git a/Pf2e/WPF/ViewModelBase.cs b/Pf2e/WPF/ViewModelBase.cs
new file mode 100644
index 0000000..7431e92
--- /dev/null
+++ b/Pf2e/WPF/ViewModelBase.cs
@@ -0,0 +1,41 @@
+using System.ComponentModel;
+using System.Runtime.CompilerServices;
+
+namespace Pf2e.WPF;
+
+///
+/// Базовый класс для ViewModel, реализующий INotifyPropertyChanged.
+///
+internal abstract class ViewModelBase : INotifyPropertyChanged
+{
+ ///
+ /// Событие, возникающее при изменении свойства.
+ ///
+ public event PropertyChangedEventHandler? PropertyChanged;
+
+ ///
+ /// Вызывает событие PropertyChanged для указанного свойства.
+ ///
+ /// Название свойства (заполняется автоматически).
+ protected virtual void OnPropertyChanged([CallerMemberName] string? propertyName = null)
+ {
+ PropertyChanged?.Invoke(this, new(propertyName));
+ }
+
+ ///
+ /// Устанавливает значение поля и вызывает событие PropertyChanged, если значение изменилось.
+ ///
+ /// Тип поля.
+ /// Поле, которое нужно установить.
+ /// Значение, которое нужно установить.
+ /// Название свойства (заполняется автоматически).
+ /// Истина, если значение изменилось, иначе ложь.
+ protected bool SetField(ref T field, T value, [CallerMemberName] string? propertyName = null)
+ {
+ if (EqualityComparer.Default.Equals(field, value))
+ return false;
+ field = value;
+ OnPropertyChanged(propertyName);
+ return true;
+ }
+}
diff --git a/Pf2e/Scrapper/WPF/WpfServiceProviderExtension.cs b/Pf2e/WPF/WpfServiceProviderExtension.cs
similarity index 97%
rename from Pf2e/Scrapper/WPF/WpfServiceProviderExtension.cs
rename to Pf2e/WPF/WpfServiceProviderExtension.cs
index b273b07..d25b7ec 100644
--- a/Pf2e/Scrapper/WPF/WpfServiceProviderExtension.cs
+++ b/Pf2e/WPF/WpfServiceProviderExtension.cs
@@ -2,7 +2,7 @@
using Pf2e.Scrapper.WPF.EntityViewer.Stores;
using Pf2e.Scrapper.WPF.EntityViewer.ViewModel;
-namespace Pf2e.Scrapper.WPF;
+namespace Pf2e.WPF;
///
/// Расширение для IServiceCollection, позволяющее регистрировать сервисы WPF.
diff --git a/Pf2eDataScrapper.sln b/Pf2eDataScrapper.sln
index 0758606..2fd1a73 100644
--- a/Pf2eDataScrapper.sln
+++ b/Pf2eDataScrapper.sln
@@ -21,6 +21,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Pf2e.Database", "Pf2e\Datab
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Pf2e.Web", "Pf2e\Web\Pf2e.Web.csproj", "{B2EDB12D-ED1E-4590-8CDC-BABB2926524F}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Pf2e.Common", "Pf2e\Common\Pf2e.Common.csproj", "{B2F0B006-958D-478F-8356-ACAC8111EFD1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Pf2e.WPF", "Pf2e\WPF\Pf2e.WPF.csproj", "{04DAB830-4639-46EC-92E6-147232C8BED5}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -39,6 +43,14 @@ Global
{B2EDB12D-ED1E-4590-8CDC-BABB2926524F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B2EDB12D-ED1E-4590-8CDC-BABB2926524F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B2EDB12D-ED1E-4590-8CDC-BABB2926524F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {B2F0B006-958D-478F-8356-ACAC8111EFD1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {B2F0B006-958D-478F-8356-ACAC8111EFD1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B2F0B006-958D-478F-8356-ACAC8111EFD1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {B2F0B006-958D-478F-8356-ACAC8111EFD1}.Release|Any CPU.Build.0 = Release|Any CPU
+ {04DAB830-4639-46EC-92E6-147232C8BED5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {04DAB830-4639-46EC-92E6-147232C8BED5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {04DAB830-4639-46EC-92E6-147232C8BED5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {04DAB830-4639-46EC-92E6-147232C8BED5}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE