Class: Banzai::Filter::ColorFilter
- Inherits:
-
HTML::Pipeline::Filter
- Object
- HTML::Pipeline::Filter
- Banzai::Filter::ColorFilter
- Defined in:
- lib/banzai/filter/color_filter.rb
Overview
HTML filter that renders color followed by a color “chip”.
Constant Summary collapse
- COLOR_CHIP_CLASS =
'gfm-color_chip'- CSS =
'code'- XPATH =
Gitlab::Utils::Nokogiri.css_to_xpath(CSS).freeze
- BACKSLASH_PREFIX =
'\\'
Constants included from Banzai::Filter::Concerns::PipelineTimingCheck
Banzai::Filter::Concerns::PipelineTimingCheck::MAX_PIPELINE_SECONDS
Instance Method Summary collapse
Methods included from Banzai::Filter::Concerns::PipelineTimingCheck
Instance Method Details
#call ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/banzai/filter/color_filter.rb', line 16 def call doc.xpath(XPATH).each do |node| unescaped = node.content.delete_prefix(BACKSLASH_PREFIX) color = ColorParser.parse(unescaped) if node.content.start_with?(BACKSLASH_PREFIX) && color node.content = unescaped elsif color node << color_chip(color) end end doc end |