1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
# frozen_string_literal: true
module Banzai
module Pipeline
class BasePipeline
def self.filters
FilterArray[]
end
def self.transform_context(context)
context
end
def self.html_pipeline
@html_pipeline ||= HTML::Pipeline.new(filters)
@html_pipeline.setup_instrumentation(name)
@html_pipeline
end
class << self
%i[call to_document to_html].each do |meth|
define_method(meth) do |text, context|
context = transform_context(context)
html_pipeline.__send__(meth, text, context) # rubocop:disable GitlabSecurity/PublicSend
end
end
end
end
end
end
|