Sha256: 7449ddf268fb602a039c3b9118369302cc110575157e828d3220f7f64b351095
Contents?: true
Size: 780 Bytes
Versions: 4
Compression:
Stored size: 780 Bytes
Contents
require 'uri' class PDFKit class Source SOURCE_FROM_STDIN = '-' def initialize(url_file_or_html) @source = url_file_or_html end def url? @is_url ||= @source.is_a?(String) && @source.match(/\Ahttp/) end def file? @is_file ||= @source.kind_of?(File) end def html? @is_html ||= !(url? || file?) end def to_input_for_command if file? @source.path elsif url? %{"#{shell_safe_url}"} else SOURCE_FROM_STDIN end end def to_s file? ? @source.path : @source end private def shell_safe_url url_needs_escaping? ? URI::escape(@source) : @source end def url_needs_escaping? URI::decode(@source) == @source end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
pdfkit-0.8.4.1 | lib/pdfkit/source.rb |
pdfkit-0.8.4 | lib/pdfkit/source.rb |
pdfkit-0.8.3 | lib/pdfkit/source.rb |
pdfkit-0.8.2 | lib/pdfkit/source.rb |