diff --git a/src/DependencyInjection/Configuration.php b/src/DependencyInjection/Configuration.php index d1db8c0..e416a59 100644 --- a/src/DependencyInjection/Configuration.php +++ b/src/DependencyInjection/Configuration.php @@ -41,6 +41,11 @@ public function getConfigTreeBuilder() ->useAttributeAsKey('name') ->variablePrototype()->end() ->end() + ->arrayNode('tunes') + ->normalizeKeys(false) + ->useAttributeAsKey('name') + ->variablePrototype()->end() + ->end() ->end() ->end() ->end() diff --git a/src/DependencyInjection/TbmatukaEditorjsExtension.php b/src/DependencyInjection/TbmatukaEditorjsExtension.php index 8485ffd..e27a97e 100644 --- a/src/DependencyInjection/TbmatukaEditorjsExtension.php +++ b/src/DependencyInjection/TbmatukaEditorjsExtension.php @@ -37,6 +37,7 @@ public function load(array $configs, ContainerBuilder $container): void 'inlineToolbar', 'toolbox', 'config', + 'tunes', ]; foreach ($config['tools'] as $toolName => $toolConfig) { diff --git a/src/Editor/ToolConfig.php b/src/Editor/ToolConfig.php index 90fe476..638e858 100644 --- a/src/Editor/ToolConfig.php +++ b/src/Editor/ToolConfig.php @@ -39,6 +39,11 @@ class ToolConfig */ private $config = []; + /** + * @var array + */ + private $tunes = []; + /** * @param bool|array|null|mixed $inlineToolbar */ @@ -49,7 +54,8 @@ public function __construct( ?string $shortcut = null, $inlineToolbar = null, ?array $toolbox = [], - ?array $config = [] + ?array $config = [], + ?array $tunes = [] ) { $this->name = $name; $this->className = $className; @@ -76,6 +82,10 @@ public function __construct( if (is_array($config)) { $this->config = $config; } + + if (is_array($tunes)) { + $this->tunes = $tunes; + } } public function getName(): string @@ -115,4 +125,9 @@ public function getConfig(): array { return $this->config; } + + public function getTunes(): array + { + return $this->tunes; + } }