github library Null safety

Do a conditional export of the right cross platform pieces depending on if dart.html or dart.io is available.

Classes

ActivityService
The ActivityService handles communication with activity related methods of the GitHub API. [...]
APIStatus
Model class for the GitHub api status.
Authentication
Authentication information.
Authorization
Model class for an authorization.
AuthorizationApplication
Model class for an application of an Authorization.
AuthorizationsService
The AuthorizationsService handles communication with authorizations related methods of the GitHub API. [...]
AutoTriggerChecks
Branch
Model class for a branch.
CheckRun
CheckRunAction
CheckRunAnnotation
CheckRunAnnotationLevel
CheckRunConclusion
CheckRunFilter
CheckRunImage
CheckRunOutput
CheckRunStatus
ChecksService
Contains methods to interact with the Checks API. [...]
CheckSuite
CodeSearchItem
CodeSearchResults
Collaborator
The response from listing collaborators on a repo.
CombinedRepositoryStatus
Model class for the combined status of a repository.
CommitComment
Model class for a commit comment. [...]
CommitData
CommitDataUser
CommitFile
Model class of a file that was changed in a commit.
CommitInfo
CommitStats
Model class for commit statistics.
CommitUser
Model class for a committer of a commit.
ContentCreation
Model class for the response of a content creation.
Contributor
The response from listing contributors on a repo. [...]
ContributorParticipation
Model class for contributor participation.
ContributorStatistics
Model class for a contributor's statistics for a repository.
ContributorWeekStatistics
Model class to represent the number of additions, deletions and commits a contributor made in a given week.
CreateAuthorization
CreateFile
Model class for a new file to be created.
CreateFork
Model class for a new fork to be created.
CreateGistComment
Model class for a new gist comment to be created.
CreateGitBlob
Model class for a new blob to be created. [...]
CreateGitCommit
Model class for a new commit to be created.
CreateGitTag
Model class for a new tag to be created.
CreateGitTree
Model class for a new tree to be created.
CreateGitTreeEntry
Model class for a new tree entry to be created.
CreateHook
Model class for a new hook to be created.
CreateMerge
Model class for a new merge to be created.
CreateMilestone
Model class for a new milestone to be created.
CreatePublicKey
Model class for a new public key to be created.
CreatePullRequest
Model class for a pull request to be created.
CreatePullRequestComment
Model class for a pull request comment to be created.
CreateRelease
Model class for a new release to be created.
CreateReleaseAsset
CreateRepository
Model class for a new repository to be created.
CreateStatus
Model class for a new repository status to be created.
CurrentUser
The Currently Authenticated User
EnumWithValue
A Json encodable class that mimics an enum, but with a String value that is used for serialization.
Event
Model class for an event.
EventPoller
ExchangeResponse
Represents a response for exchanging a code for a token.
Gist
Model class for gists.
GistComment
Model class for gist comments.
GistFile
Model class for a gist file.
GistFork
Model class for a gist fork.
GistHistoryEntry
Model class for a gits history entry.
GistsService
The GistsService handles communication with gist methods of the GitHub API. [...]
GitBlob
Model class for a blob.
GitCommit
Model class for a git commit. [...]
GitCommitUser
Model class for an author or committer of a commit. The GitCommitUser may not correspond to a GitHub User.
GitHub
The Main GitHub Client [...]
GitHubComparison
GitHubFile
Model class for a file on GitHub.
GitHubJson
Internal class for Json encoding that should be used instead of dart:convert. [...]
GitignoreTemplate
Model class for a Gitignore Template.
GitObject
Model class for an object referenced by GitReference and GitTag.
GitReference
Model class for a reference.
GitService
The GitService handles communication with git related methods of the GitHub API. [...]
GitTag
Model class for a tag.
GitTree
Model class for a GitHub tree.
GitTreeEntry
Model class for the contents of a tree structure. GitTreeEntry can represent either a blog, a commit (in the case of a submodule), or another tree.
Hook
Model class for a repository hook.
HookConfig
Issue
Model class for an issue on the tracker.
IssueComment
Model class for an issue comment.
IssueLabel
Model class for an issue label.
IssuePullRequest
Model class for a pull request for an issue.
IssueRequest
Model class for a request to create/edit an issue.
IssuesService
The IssuesService handles communication with issues related methods of the GitHub API. [...]
LanguageBreakdown
A Breakdown of the Languages a repository uses.
LicenseDetails
LicenseKind
Milestone
Model class for a milestone.
MiscService
The MiscService handles communication with misc related methods of the GitHub API. [...]
Notification
Model class for notifications.
NotificationSubject
Model class for a notification subject.
NotReadyYet
Marks something as not being ready or complete.
OAuth2Flow
OAuth2 Flow Helper [...]
Octocat
OnlyWhen
Specifies that something should be only used when the specified condition is met.
Organization
Model class for a GitHub organization.
OrganizationMembership
Model class for organization membership.
OrganizationsService
The OrganizationsService handles communication with organization methods of the GitHub API. [...]
PageBuild
PageBuildError
PageBuildPusher
PaginationHelper
Internal Helper for dealing with GitHub Pagination.
PublicKey
Model class for a public key. [...]
PullRequest
Model class for a Pull Request.
PullRequestComment
Model class for a pull request comment.
PullRequestFile
PullRequestHead
Model class for a Pull Request Head.
PullRequestMerge
Model class for a pull request merge.
PullRequestsService
The PullRequestsService handles communication with pull request methods of the GitHub API. [...]
PunchcardEntry
Model Class for a Punchcard Entry
RateLimit
Model class for GitHub Rate Limit Information.
Reaction
This API is currently in preview. It may break. [...]
ReactionType
Release
Model class for a release.
ReleaseAsset
Model class for a release asset.
RepositoriesService
The RepositoriesService handles communication with repository related methods of the GitHub API. [...]
Repository
Model class for a repository.
RepositoryCommit
Model class for a commit in a repository. [...]
RepositoryContents
Model class for a file or directory.
RepositoryCrawler
RepositoryPages
GitHub Pages Information
RepositoryPermissions
Model class for repository permissions.
RepositorySlug
A Repository Slug
RepositoryStatus
Model class for the status of a repository at a particular reference.
RepositorySubscription
Model class for a repository subscription.
SearchResults<T>
SearchService
The SearchService handles communication with search related methods of the GitHub API. [...]
Service
Superclass for all services.
StatusCodes
Tag
Team
Model class for a GitHub team.
TeamMember
Model class for a team member.
TeamMembershipState
Model class for the team membership state.
UrlShortenerService
The UrlShortenerService provides a handy method to access GitHub's url shortener. [...]
User
Model class for a user.
UserEmail
Model class for a user's email address.
UserInformation
User Information
UserPlan
A Users GitHub Plan
UsersService
The UsersService handles communication with user related methods of the GitHub API. [...]
WeeklyChangesCount
Model class for a weekly change count.
YearCommitCountWeek
Model class for a week in a full year commit count.

Constants

COMMON_GITHUB_TOKEN_ENV_KEYS → const List<String>
['GITHUB_ADMIN_TOKEN', 'GITHUB_DART_TOKEN', 'GITHUB_API_TOKEN', 'GITHUB_TOKEN', 'HOMEBREW_GITHUB_API_TOKEN', 'MACHINE_GITHUB_API_TOKEN']
languageColors → const Map<String, String>
<String, String>{'1C Enterprise' : '#814CCC', '4D' : '#EDEDED', 'ABAP' : '#E8274B', 'ABAP CDS' : '#555E25', 'ABNF' : '…
v3ApiMimeType → const String
'application/vnd.github.v3+json'

Properties

githubDateRemoveRegExp RegExp
final

Functions

buildQueryString(Map<String, dynamic> params) String
copyOf(dynamic input) → dynamic
createNonNullMap<K, V>(Map<K, V> input, {bool recursive = true}) Map<K, V?>
Returns a new map containing only the entries of input whose value is not null. [...]
dateToGitHubIso8601(DateTime? date) String?
Converts the date to GitHub's ISO-8601 format: [...]
findAuthenticationFromEnvironment() Authentication
Looks for GitHub Authentication information from the current environment. [...]
findAuthenticationInMap(Map map) Authentication?
Checks the passed in map for keys in COMMON_GITHUB_TOKEN_ENV_KEYS. The first one that exists is used as the github token to call Authentication.withToken with. If the above fails, the GITHUB_USERNAME and GITHUB_PASSWORD keys will be checked. If those keys both exist, then Authentication.basic will be used.
getResponseDate(Object obj) DateTime?
getResponseEtag(Object obj) String?
mapToList(Map input) List<MapEntry>
parseFancyNumber(String input) int
parseLinkHeader(String input) Map<String, String>
putValue(String name, dynamic value, Map<String, dynamic> map) → void
Puts a name and value into the map if value is not null. If value is null, nothing is added.
slugFromAPIUrl(String url) RepositorySlug

Typedefs

JSONConverter<S, T> = T Function(S input)
Creates a Model Object from the JSON input

Exceptions / Errors

AccessForbidden
Access was forbidden to a resource
BadRequest
GitHubError
Error Generated by GitHub
InvalidJSON
NotAuthenticated
GitHub Client was not authenticated
NotFound
GitHub Entity was not found
NotReady
OrganizationNotFound
GitHub Organization was not found
RateLimitHit
Client hit the rate limit.
ReleaseNotFound
Release not found
RepositoryNotFound
GitHub Repository was not found
ServerError
A GitHub Server Error
TeamNotFound
GitHub Team was not found
UnknownError
An Unknown Error
UserNotFound
GitHub User was not found
ValidationFailed