Module: Ghub::Responses

Defined in:
lib/ghub/responses/link.rb,
lib/ghub/responses/team.rb,
lib/ghub/responses/user.rb,
lib/ghub/responses/label.rb,
lib/ghub/responses/links.rb,
lib/ghub/responses/branch.rb,
lib/ghub/responses/review.rb,
lib/ghub/responses/license.rb,
lib/ghub/responses/permission.rb,
lib/ghub/responses/repository.rb,
lib/ghub/responses/application.rb,
lib/ghub/responses/restriction.rb,
lib/ghub/responses/boolean_link.rb,
lib/ghub/responses/status_check.rb,
lib/ghub/responses/dismissal_restriction.rb

Constant Summary collapse

Dry::Schema.Params { required(:href).filled :string }
Team =

Defines a team.

Dry::Schema.Params do
  required(:description).filled :string
  required(:id).filled :integer
  required(:members_url).filled :string
  required(:name).filled :string
  required(:node_id).filled :string
  required(:parent).maybe :string
  required(:permission).filled :string
  required(:privacy).filled :string
  required(:repositories_url).filled :string
  required(:slug).filled :string
  required(:url).filled :string
end
User =

Defines a user.

Dry::Schema.Params do
  required(:avatar_url).filled(:string)
  required(:events_url).filled(:string)
  required(:followers_url).filled(:string)
  required(:following_url).filled(:string)
  required(:gists_url).filled(:string)
  required(:gravatar_id).maybe(:string)
  required(:html_url).filled(:string)
  required(:id).filled(:integer)
  required(:login).filled(:string)
  required(:node_id).filled(:string)
  required(:organizations_url).filled(:string)
  required(:received_events_url).filled(:string)
  required(:repos_url).filled(:string)
  required(:site_admin).filled(:bool)
  required(:starred_url).filled(:string)
  required(:subscriptions_url).filled(:string)
  required(:type).filled(:string)
  required(:url).filled(:string)
end
Label =

Defines a label.

Dry::Schema.Params do
  required(:color).filled :string
  required(:default).filled :bool
  required(:description).maybe :string
  required(:id).filled :integer
  required(:name).filled :string
  required(:node_id).filled :string
  required(:url).filled :string
end
Dry::Schema.Params do
  required(:self).hash(Link)
  required(:html).hash(Link)
  required(:issue).hash(Link)
  required(:comments).hash(Link)
  required(:review_comments).hash(Link)
  required(:review_comment).hash(Link)
  required(:commits).hash(Link)
  required(:statuses).hash(Link)
end
Branch =

Defines a branch.

Dry::Schema.Params do
  required(:label).filled :string
  required(:ref).filled :string
  required(:sha).filled :string
  required(:user).hash(Ghub::Responses::User)
  required(:repo).hash(Ghub::Responses::Repository)
end
Review =

Defines a review.

Dry::Schema.Params do
  required(:dismiss_stale_reviews).filled :bool
  required(:require_code_owner_reviews).filled :bool
  required(:required_approving_review_count).filled :integer
  required(:url).filled :string

  optional(:dismissal_restrictions).hash(DismissalRestriction)
end
License =

Defines a license.

Dry::Schema.Params do
  required(:key).filled :string
  required(:name).filled :string
  required(:node_id).filled :string
  required(:spdx_id).filled :string
  required(:url).maybe :string
end
Permission =

Defines a permission.

Dry::Schema.Params do
  required(:admin).filled :bool
  required(:maintain).filled :bool
  required(:pull).filled :bool
  required(:push).filled :bool
  required(:triage).filled :bool
end
Repository =

Defines a repository.

Dry::Schema.Params do
  required(:allow_forking).filled :bool
  required(:archive_url).filled :string
  required(:archived).filled :bool
  required(:assignees_url).filled :string
  required(:blobs_url).filled :string
  required(:branches_url).filled :string
  required(:clone_url).filled :string
  required(:collaborators_url).filled :string
  required(:comments_url).filled :string
  required(:commits_url).filled :string
  required(:compare_url).filled :string
  required(:contents_url).filled :string
  required(:contributors_url).filled :string
  required(:created_at).filled :date_time
  required(:default_branch).filled :string
  required(:deployments_url).filled :string
  required(:description).maybe :string
  required(:disabled).filled :bool
  required(:downloads_url).filled :string
  required(:events_url).filled :string
  required(:fork).filled :bool
  required(:forks).filled :integer
  required(:forks_count).filled :integer
  required(:forks_url).filled :string
  required(:full_name).filled :string
  required(:git_commits_url).filled :string
  required(:git_refs_url).filled :string
  required(:git_tags_url).filled :string
  required(:git_url).filled :string
  required(:has_downloads).filled :bool
  required(:has_issues).filled :bool
  required(:has_pages).filled :bool
  required(:has_projects).filled :bool
  required(:has_wiki).filled :bool
  required(:homepage).maybe :string
  required(:hooks_url).filled :string
  required(:html_url).filled :string
  required(:id).filled :integer
  required(:is_template).filled :bool
  required(:issue_comment_url).filled :string
  required(:issue_events_url).filled :string
  required(:issues_url).filled :string
  required(:keys_url).filled :string
  required(:labels_url).filled :string
  required(:language).maybe :string
  required(:languages_url).filled :string
  required(:license).maybe :hash, License
  required(:merges_url).filled :string
  required(:milestones_url).filled :string
  required(:mirror_url).maybe :string
  required(:name).filled :string
  required(:node_id).filled :string
  required(:notifications_url).filled :string
  required(:open_issues).filled :integer
  required(:open_issues_count).filled :integer
  required(:owner).hash User
  required(:private).filled :bool
  required(:pulls_url).filled :string
  required(:pushed_at).filled :date_time
  required(:releases_url).filled :string
  required(:size).filled :integer
  required(:ssh_url).filled :string
  required(:stargazers_count).filled :integer
  required(:stargazers_url).filled :string
  required(:statuses_url).filled :string
  required(:subscribers_url).filled :string
  required(:subscription_url).filled :string
  required(:svn_url).filled :string
  required(:tags_url).filled :string
  required(:teams_url).filled :string
  required(:topics).array(:str?)
  required(:trees_url).filled :string
  required(:updated_at).filled :date_time
  required(:url).filled :string
  required(:visibility).filled :string
  required(:watchers).filled :integer
  required(:watchers_count).filled :integer
  required(:web_commit_signoff_required).filled :bool

  optional(:organization).hash User
  optional(:permissions).hash Permission
end
Application =

Defines an application.

Dry::Schema.Params do
  required(:created_at).filled :date_time
  required(:description).filled :string
  required(:events).array(:str?)
  required(:external_url).filled :string
  required(:html_url).filled :string
  required(:id).filled :integer
  required(:name).filled :string
  required(:node_id).filled :string

  required(:owner).hash do
    required(:login).filled :string
    required(:id).filled :integer
    required(:node_id).filled :string
    required(:url).filled :string
    required(:repos_url).filled :string
    required(:events_url).filled :string
    required(:hooks_url).filled :string
    required(:issues_url).filled :string
    required(:members_url).filled :string
    required(:public_members_url).filled :string
    required(:avatar_url).filled :string
    required(:description).filled :string
  end

  required(:permissions).hash do
    required(:metadata).filled :string
    required(:contents).filled :string
    required(:issues).filled :string
    required(:single_file).filled :string
  end

  required(:slug).filled :string
  required(:updated_at).filled :date_time
end
Restriction =

Defines a restriction.

Dry::Schema.Params do
  required(:apps).array(Application)
  required(:apps_url).filled :string
  required(:teams).array(Team)
  required(:teams_url).filled :string
  required(:url).filled :string
  required(:users).array(User)
  required(:users_url).filled :string
end
Dry::Schema.Params do
  required(:enabled).filled :bool
  required(:url).filled :string
end
StatusCheck =

Defines a status check.

Dry::Schema.Params do
  required(:url).filled :string
  required(:strict).filled :bool
  required(:contexts).array(:str?)
  required(:contexts_url).filled :string

  required(:checks).array(:hash) do
    required(:context).filled :string
    required(:app_id).maybe :integer
  end

  optional(:enforcement_level).filled :string
end
DismissalRestriction =

Defines a dismissal restriction.

Dry::Schema.Params do
  required(:apps).array(Application)
  required(:teams).array(Team)
  required(:teams_url).filled :string
  required(:url).filled :string
  required(:users).array(User)
  required(:users_url).filled :string
end