Sha256: 814243fb3ffa3a6f8e9b2221c8c0fb7358c532c6a8a1ead5f5878223f63ce420

Contents?: true

Size: 828 Bytes

Versions: 19

Compression:

Stored size: 828 Bytes

Contents

module Onebox
  module Engine
    class GithubCommitOnebox
      include Engine
      include LayoutSupport
      include JSON

      matches do
        http
        maybe("www.")
        domain("github")
        tld("com")
        anything
        with("/commit/")
      end

      def url
        "https://api.github.com/repos/#{match[:owner]}/#{match[:repository]}/commits/#{match[:sha]}"
      end

      private

      def match
        @match ||= @url.match(%{github\.com/(?<owner>[^/]+)/(?<repository>[^/]+)/commit/(?<sha>[^/]+)})
      end

      def data
        result = raw.clone
        result['link'] = link
        result['title'] = result['commit']['message']
        result['commit_date'] = Time.parse(result['commit']['author']['date']).strftime("%I:%M%p - %d %b %y")
        result
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
onebox-1.3.8 lib/onebox/engine/github_commit_onebox.rb
onebox-1.3.7 lib/onebox/engine/github_commit_onebox.rb
onebox-1.3.6 lib/onebox/engine/github_commit_onebox.rb
onebox-1.3.5 lib/onebox/engine/github_commit_onebox.rb
onebox-1.3.4 lib/onebox/engine/github_commit_onebox.rb
onebox-1.3.3 lib/onebox/engine/github_commit_onebox.rb
onebox-1.3.2 lib/onebox/engine/github_commit_onebox.rb
onebox-1.3.1 lib/onebox/engine/github_commit_onebox.rb
onebox-1.3.0 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.9 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.8 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.7 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.6 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.5 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.4 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.3 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.2 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.1 lib/onebox/engine/github_commit_onebox.rb
onebox-1.2.0 lib/onebox/engine/github_commit_onebox.rb