module CKEditor5::Rails::Presets::Concerns::PluginMethods
def external_plugin(name, **kwargs)
def external_plugin(name, **kwargs) register_plugin(Editor::PropsExternalPlugin.new(name, **kwargs)) end
def inline_plugin(name, code)
def inline_plugin(name, code) register_plugin(Editor::PropsInlinePlugin.new(name, code)) end
def plugin(name, **kwargs)
def plugin(name, **kwargs) premium(true) if kwargs[:premium] && respond_to?(:premium) register_plugin(PluginsBuilder.create_plugin(name, **kwargs)) end
def plugins(*names, **kwargs, &block)
def plugins(*names, **kwargs, &block) config[:plugins] ||= [] names.each { |name| plugin(name, **kwargs) } unless names.empty? builder = PluginsBuilder.new(config[:plugins]) builder.instance_eval(&block) if block_given? builder end
def register_plugin(plugin_obj)
def register_plugin(plugin_obj) config[:plugins] << plugin_obj plugin_obj end