Sha256: 81bfc5889627a9af11e7d50eed98786f4df3f465f511d59ce8853bc9102c69f2

Contents?: true

Size: 1.01 KB

Versions: 44

Compression:

Stored size: 1.01 KB

Contents

require_relative "base_decorator"
require "pact_broker/api/decorators/webhook_decorator"

module PactBroker
  module Api
    module Decorators
      class WebhooksDecorator < BaseDecorator

        link :self do | context |
          {
            title: context[:resource_title],
            href: context[:resource_url]
          }
        end

        link :'pb:create' do | context |
          {
            title: "POST to create a webhook",
            href: context[:resource_url]
          }
        end

        links :'pb:webhooks' do | context |
          represented.entries.collect do | webhook |
            {
              title: webhook.scope_description,
              name: webhook.display_description,
              href: webhook_url(webhook.uuid, context[:base_url])
            }
          end
        end

        curies do | context |
          [{
            name: :pb,
            href: context[:base_url] + "/doc/webhooks-{rel}",
            templated: true
          }]
        end
      end
    end
  end
end

Version data entries

44 entries across 44 versions & 1 rubygems

Version Path
pact_broker-2.83.0 lib/pact_broker/api/decorators/webhooks_decorator.rb
pact_broker-2.82.0 lib/pact_broker/api/decorators/webhooks_decorator.rb
pact_broker-2.81.0 lib/pact_broker/api/decorators/webhooks_decorator.rb
pact_broker-2.80.0 lib/pact_broker/api/decorators/webhooks_decorator.rb