Sha256: 8118357642ec6f26a28881565e62b2222e628d034ffb9f68ecaa1f4c5871b322

Contents?: true

Size: 598 Bytes

Versions: 7

Compression:

Stored size: 598 Bytes

Contents

module Onebox
  module Engine
    class GithubGistOnebox
      include Engine

      matches do
        http
        with("gist.")
        domain("github")
        tld("com")
      end

      def url
        "https://api.github.com/gists/#{match[:sha]}"
      end

      def to_html
        "<script src=\"http://gist.github.com/#{match[:sha]}.js\"></script>"
      end

      private

      def data
        { sha: match[:sha], title: match[:sha], link: @url }
      end

      def match
        @match ||= @url.match(%r{gist\.github\.com/([^/]+/)?(?<sha>[0-9a-f]+)})
      end

    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
onebox-1.2.6 lib/onebox/engine/github_gist_onebox.rb
onebox-1.2.5 lib/onebox/engine/github_gist_onebox.rb
onebox-1.2.4 lib/onebox/engine/github_gist_onebox.rb
onebox-1.2.3 lib/onebox/engine/github_gist_onebox.rb
onebox-1.2.2 lib/onebox/engine/github_gist_onebox.rb
onebox-1.2.1 lib/onebox/engine/github_gist_onebox.rb
onebox-1.2.0 lib/onebox/engine/github_gist_onebox.rb