Sha256: 7479b1b7867b7365efe8db103f980af7d6cfe13e346c8027d3198e4f0a72ace0
Contents?: true
Size: 1.06 KB
Versions: 1
Compression:
Stored size: 1.06 KB
Contents
# frozen_string_literal: true module Cosensee class TailwindRenderer ParsedLine = Data.define(:content, :project) do include HtmlEncodable include RenderClassFindable def render result = if content.line_content? find_renderer_class(content.line_content).new(content: content.line_content, project:).render else content.content.map do |c| if c.is_a?(String) escape_html(c) else TailwindRenderer.new(content: c, project:).render end end.join end level = content.indent_level * 2 result = ' ' if result == '' if level > 0 %(<div class="relative pl-[#{level}rem]"><span class="absolute left-[#{level - 1}rem] top-1/2 -translate-y-1/2 w-1.5 h-1.5 rounded-full bg-gray-800"></span>#{result}</div>) else %(<div class="relative pl-[#{level}rem]">#{result}</div>) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
cosensee-0.8.0 | lib/cosensee/tailwind_renderer/parsed_line.rb |