<?php namespace App\Services\History\Detector; use App\Models\Enums\CustomFieldGroup; use App\Services\History\Converter\ContainerConverter; use App\Services\History\Converter\CustomFieldSelectConverter; use App\Services\History\Converter\EmailConverter; use App\Services\History\Converter\ModelEnumConverter; use App\Services\History\Converter\NamingRuleConverter; use App\Services\History\Converter\WhitelistConverter; class ContainerDetector extends DetectorAbstract { public static function fields(): array { return [ 'library_id', 'naming_rule_id', 'task_type', 'doc_stage', 'acl', 'whitelist', 'description', 'mailto', 'email_subject', ]; } public static function diffFields(): array { return [ 'description', ]; } public static function arrayFields(): array { return [ 'mailto', ]; } public static function converters(): array { return [ "whitelist" => new WhitelistConverter(), "acl" => new ModelEnumConverter("container.acl"), "doc_stage" => new CustomFieldSelectConverter(CustomFieldGroup::CONTAINER->value, "doc_stage"), "doc_type" => new CustomFieldSelectConverter(CustomFieldGroup::CONTAINER->value, "doc_type"), "naming_rule_id" => new NamingRuleConverter(), "library_id" => new ContainerConverter(), "mailto" => new EmailConverter(), ]; } }