jeyroik/extas-repositories-fields

There is no license information available for the latest version (0.1.1) of this package.

Package for fields adaptors creating

0.1.1 2020-04-09 16:32 UTC

This package is auto-updated.

Last update: 2024-04-10 01:17:35 UTC


README

tests codecov.io

Описание

Пакет для создания адапторов полей для Extas.

С помощью адапторов полей можно создавать обработчики, которые будут заменять или обогащать значения полей при создании/обновлении extas-совместимых сущностей.

Использование

  1. Создать плагин.
  2. В плагине реализовать адапторы.
class MyAdaptorPlugin extends \extas\components\repositories\FieldAdaptorPlugin
{
    protected function getMarkers()
    {
        return [
            new class () extends \extas\components\repositories\FieldAdaptor {
                public function isApplicable(string $value): bool
                {
                    // Проверяем подходит ли значение поля для адаптации.
                    return $value == 'my';
                }

                public function apply(string $value)
                {
                    return 'world';
                }
            }
        ];
    }
}
  1. Подключить плагин к интересуемой стадии.

В extas.json:

{
    "plugins": [
        {
            "class": "MyAdaptorPlugin",
            "stage": "extas.<entity>.create.before"
        }
    ]
}

В качестве примера можно посмотреть: