@spotify/backstage-plugin-soundcheck-backend-module-github 0.4.2 → 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -5
- package/README.md +20 -17
- package/dist/index.cjs.js +1 -1
- package/package.json +7 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @spotify/backstage-plugin-soundcheck-backend-module-github
|
|
2
2
|
|
|
3
|
+
## 0.4.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- "Expands identification of 304 and 404 errors to alleiviate log spam."
|
|
8
|
+
|
|
9
|
+
## 0.4.3
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Upgraded Backstage to `v1.20.2`.
|
|
14
|
+
- Updated `README`s to make it more clear how to install the GitHub, SCM, and TechInsights Soundcheck backend modules.
|
|
15
|
+
- Improved rate limit utilization.
|
|
16
|
+
- Updated dependencies
|
|
17
|
+
- @spotify/backstage-plugin-soundcheck-common@0.9.1
|
|
18
|
+
- @spotify/backstage-plugin-soundcheck-node@0.4.4
|
|
19
|
+
|
|
3
20
|
## 0.4.2
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
|
@@ -28,9 +45,6 @@
|
|
|
28
45
|
### Patch Changes
|
|
29
46
|
|
|
30
47
|
- Upgraded Backstage to v1.18.1
|
|
31
|
-
- Updated dependencies
|
|
32
|
-
- Updated dependencies
|
|
33
|
-
- Updated dependencies
|
|
34
48
|
- Updated dependencies
|
|
35
49
|
- @spotify/backstage-plugin-soundcheck-common@0.8.0
|
|
36
50
|
- @spotify/backstage-plugin-soundcheck-node@0.4.1
|
|
@@ -47,7 +61,6 @@
|
|
|
47
61
|
- Updated dependency `@octokit/request-error` to `^5.0.0`.
|
|
48
62
|
Updated dependency `@octokit/rest` to `^20.0.0`.
|
|
49
63
|
- Minor improvements to `GithubFactCollector::getDataSchema`.
|
|
50
|
-
- Updated dependencies
|
|
51
64
|
- Updated dependencies
|
|
52
65
|
- @spotify/backstage-plugin-soundcheck-common@0.7.1
|
|
53
66
|
- @spotify/backstage-plugin-soundcheck-node@0.4.0
|
|
@@ -98,7 +111,6 @@
|
|
|
98
111
|
### Patch Changes
|
|
99
112
|
|
|
100
113
|
- Upgraded Backstage to `v1.13.0`.
|
|
101
|
-
- Updated dependencies
|
|
102
114
|
- Updated dependencies
|
|
103
115
|
- @spotify/backstage-plugin-soundcheck-common@0.4.1
|
|
104
116
|
- @spotify/backstage-plugin-soundcheck-node@0.2.1
|
package/README.md
CHANGED
|
@@ -55,25 +55,28 @@ Follow the [instructions](https://backstage.io/docs/integrations/github/location
|
|
|
55
55
|
|
|
56
56
|
### Add the GitHubFactCollector to Soundcheck
|
|
57
57
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
import {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
)
|
|
72
|
-
|
|
73
|
-
|
|
58
|
+
First add the package: `yarn workspace backend add @spotify/backstage-plugin-soundcheck-backend-module-github`
|
|
59
|
+
|
|
60
|
+
Then in `packages/backend/src/plugins/soundcheck.ts`, add the `GitHubFactCollector`:
|
|
61
|
+
|
|
62
|
+
```diff
|
|
63
|
+
import { SoundcheckBuilder } from '@spotify/backstage-plugin-soundcheck-backend';
|
|
64
|
+
import { Router } from 'express';
|
|
65
|
+
import { PluginEnvironment } from '../types';
|
|
66
|
+
+ import { GithubFactCollector } from '@spotify/backstage-plugin-soundcheck-backend-module-github';
|
|
67
|
+
|
|
68
|
+
export default async function createPlugin(
|
|
69
|
+
env: PluginEnvironment,
|
|
70
|
+
): Promise<Router> {
|
|
71
|
+
return SoundcheckBuilder.create({ ...env })
|
|
72
|
+
+ .addFactCollectors(
|
|
73
|
+
+ GithubFactCollector.create(env.config, env.logger, env.cache),
|
|
74
|
+
+ )
|
|
75
|
+
.build();
|
|
76
|
+
}
|
|
74
77
|
```
|
|
75
78
|
|
|
76
|
-
See the the soundcheck-backend [documentation](https://www.npmjs.com/package/@spotify/backstage-plugin-soundcheck-backend#
|
|
79
|
+
See the the soundcheck-backend [documentation](https://www.npmjs.com/package/@spotify/backstage-plugin-soundcheck-backend#2-install-soundcheck-backend)
|
|
77
80
|
for additional details on creating the Soundcheck backend.
|
|
78
81
|
|
|
79
82
|
## Plugin Configuration
|
package/dist/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var l=require("@spotify/backstage-plugin-soundcheck-common"),He=require("@backstage/catalog-model"),K=require("@octokit/request-error"),qe=require("@octokit/rest"),pe=require("@backstage/integration"),m=require("zod"),ke=require("@backstage/errors"),Re=require("git-url-parse"),Me=require("zod-to-json-schema");function ne(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var Se=ne(Re),Pe=ne(Me),Ie=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},E=(t,e,r)=>(Ie(t,e,"read from private field"),r?r.call(t):e.get(t)),Ge=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},g;function ue(t){return`Extractor with type '${t}' is not allowed. You may need to update collectors configuration at 'soundcheck.collectors.github'`}class Oe{constructor(){Ge(this,g,[])}register(e){E(this,g).push(e)}async extract(e,r,s){for(const{predicate:o,extractor:i}of E(this,g))if(o(e))return i.extract(e,r,s);throw new Error(ue(e.type))}getDataSchema(e){for(const{predicate:r,extractor:s}of E(this,g))if(r(e))return s.getDataSchema(e);throw new Error(ue(e.type))}toString(){return`predicateMux{extractors=${E(this,g).map(e=>e.extractor).join(",")}`}}g=new WeakMap;class ze{static create(e){const{logger:r,branchHelper:s,factories:o}=e,i=new Oe;for(const p of o!=null?o:[]){const N=p({logger:r,branchHelper:s});i.register(N)}return i}}var je="Branch Protection",Ae="Branch Protection",Be="object",Le={url:{type:"string"},enabled:{type:"boolean"},required_status_checks:{title:"Protected Branch Required Status Check",description:"Protected Branch Required Status Check",type:"object",properties:{url:{type:"string"},enforcement_level:{type:"string"},contexts:{type:"array",items:{type:"string"}},checks:{type:"array",items:{type:"object",properties:{context:{type:"string"},app_id:{type:["integer","null"]}},required:["context","app_id"]}},contexts_url:{type:"string"},strict:{type:"boolean"}},required:["contexts","checks"]},enforce_admins:{title:"Protected Branch Admin Enforced",description:"Protected Branch Admin Enforced",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins"]},enabled:{type:"boolean",examples:[!0]}},required:["url","enabled"]},required_pull_request_reviews:{title:"Protected Branch Pull Request Review",description:"Protected Branch Pull Request Review",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions"]},dismissal_restrictions:{type:"object",properties:{users:{description:"The list of users with review dismissal access.",type:"array",items:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}},teams:{description:"The list of teams with review dismissal access.",type:"array",items:{title:"Team",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},permissions:{type:"object",properties:{pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"},admin:{type:"boolean"}},required:["pull","triage","push","maintain","admin"]},url:{type:"string",format:"uri"},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},members_url:{type:"string"},repositories_url:{type:"string",format:"uri"},parent:{anyOf:[{type:"null"},{title:"Team Simple",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{description:"Unique identifier of the team",type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VGVhbTE="]},url:{description:"URL for the team",type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1"]},members_url:{type:"string",examples:["https://api.github.com/organizations/1/team/1/members{/member}"]},name:{description:"Name of the team",type:"string",examples:["Justice League"]},description:{description:"Description of the team",type:["string","null"],examples:["A great team."]},permission:{description:"Permission that the team will have for its repositories",type:"string",examples:["admin"]},privacy:{description:"The level of privacy this team should have",type:"string",examples:["closed"]},notification_setting:{description:"The notification setting the team has set",type:"string",examples:["notifications_enabled"]},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},repositories_url:{type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1/repos"]},slug:{type:"string",examples:["justice-league"]},ldap_dn:{description:"Distinguished Name (DN) that team maps to within LDAP environment",type:"string",examples:["uid=example,ou=users,dc=github,dc=com"]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug"]}]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug","parent"]}},apps:{description:"The list of apps with review dismissal access.",type:"array",items:{title:"GitHub app",description:"GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.",type:"object",properties:{id:{description:"Unique identifier of the GitHub app",type:"integer",examples:[37]},slug:{description:"The slug name of the GitHub app",type:"string",examples:["probot-owners"]},node_id:{type:"string",examples:["MDExOkludGVncmF0aW9uMQ=="]},owner:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},name:{description:"The name of the GitHub app",type:"string",examples:["Probot Owners"]},description:{type:["string","null"],examples:["The description of the app."]},external_url:{type:"string",format:"uri",examples:["https://example.com"]},html_url:{type:"string",format:"uri",examples:["https://github.com/apps/super-ci"]},created_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},updated_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},permissions:{description:"The set of permissions for the GitHub app",type:"object",properties:{issues:{type:"string"},checks:{type:"string"},metadata:{type:"string"},contents:{type:"string"},deployments:{type:"string"}},additionalProperties:{type:"string"},example:{issues:"read",deployments:"write"}},events:{description:"The list of events for the GitHub app",type:"array",items:{type:"string"},examples:["label","deployment"]},installations_count:{description:"The number of installations associated with the GitHub app",type:"integer",examples:[5]},client_id:{type:"string",examples:['"Iv1.25b5d1e65ffc4022"']},client_secret:{type:"string",examples:['"1d4b2097ac622ba702d19de498f005747a8b21d3"']},webhook_secret:{type:["string","null"],examples:['"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"']},pem:{type:"string",examples:['"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n"']}},required:["id","node_id","owner","name","description","external_url","html_url","created_at","updated_at","permissions","events"]}},url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions"']},users_url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users"']},teams_url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams"']}}},bypass_pull_request_allowances:{type:"object",description:"Allow specific users, teams, or apps to bypass pull request requirements.",properties:{users:{description:"The list of users allowed to bypass pull request requirements.",type:"array",items:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}},teams:{description:"The list of teams allowed to bypass pull request requirements.",type:"array",items:{title:"Team",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},permissions:{type:"object",properties:{pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"},admin:{type:"boolean"}},required:["pull","triage","push","maintain","admin"]},url:{type:"string",format:"uri"},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},members_url:{type:"string"},repositories_url:{type:"string",format:"uri"},parent:{anyOf:[{type:"null"},{title:"Team Simple",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{description:"Unique identifier of the team",type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VGVhbTE="]},url:{description:"URL for the team",type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1"]},members_url:{type:"string",examples:["https://api.github.com/organizations/1/team/1/members{/member}"]},name:{description:"Name of the team",type:"string",examples:["Justice League"]},description:{description:"Description of the team",type:["string","null"],examples:["A great team."]},permission:{description:"Permission that the team will have for its repositories",type:"string",examples:["admin"]},privacy:{description:"The level of privacy this team should have",type:"string",examples:["closed"]},notification_setting:{description:"The notification setting the team has set",type:"string",examples:["notifications_enabled"]},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},repositories_url:{type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1/repos"]},slug:{type:"string",examples:["justice-league"]},ldap_dn:{description:"Distinguished Name (DN) that team maps to within LDAP environment",type:"string",examples:["uid=example,ou=users,dc=github,dc=com"]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug"]}]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug","parent"]}},apps:{description:"The list of apps allowed to bypass pull request requirements.",type:"array",items:{title:"GitHub app",description:"GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.",type:"object",properties:{id:{description:"Unique identifier of the GitHub app",type:"integer",examples:[37]},slug:{description:"The slug name of the GitHub app",type:"string",examples:["probot-owners"]},node_id:{type:"string",examples:["MDExOkludGVncmF0aW9uMQ=="]},owner:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},name:{description:"The name of the GitHub app",type:"string",examples:["Probot Owners"]},description:{type:["string","null"],examples:["The description of the app."]},external_url:{type:"string",format:"uri",examples:["https://example.com"]},html_url:{type:"string",format:"uri",examples:["https://github.com/apps/super-ci"]},created_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},updated_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},permissions:{description:"The set of permissions for the GitHub app",type:"object",properties:{issues:{type:"string"},checks:{type:"string"},metadata:{type:"string"},contents:{type:"string"},deployments:{type:"string"}},additionalProperties:{type:"string"},example:{issues:"read",deployments:"write"}},events:{description:"The list of events for the GitHub app",type:"array",items:{type:"string"},examples:["label","deployment"]},installations_count:{description:"The number of installations associated with the GitHub app",type:"integer",examples:[5]},client_id:{type:"string",examples:['"Iv1.25b5d1e65ffc4022"']},client_secret:{type:"string",examples:['"1d4b2097ac622ba702d19de498f005747a8b21d3"']},webhook_secret:{type:["string","null"],examples:['"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"']},pem:{type:"string",examples:['"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n"']}},required:["id","node_id","owner","name","description","external_url","html_url","created_at","updated_at","permissions","events"]}}}},dismiss_stale_reviews:{type:"boolean",examples:[!0]},require_code_owner_reviews:{type:"boolean",examples:[!0]},required_approving_review_count:{type:"integer",minimum:0,maximum:6,examples:[2]},require_last_push_approval:{description:"Whether the most recent push must be approved by someone other than the person who pushed it.",type:"boolean",default:!1,examples:[!0]}},required:["dismiss_stale_reviews","require_code_owner_reviews"]},restrictions:{title:"Branch Restriction Policy",description:"Branch Restriction Policy",type:"object",properties:{url:{type:"string",format:"uri"},users_url:{type:"string",format:"uri"},teams_url:{type:"string",format:"uri"},apps_url:{type:"string",format:"uri"},users:{type:"array",items:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}}},teams:{type:"array",items:{type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},members_url:{type:"string"},repositories_url:{type:"string"},parent:{type:["string","null"]}}}},apps:{type:"array",items:{type:"object",properties:{id:{type:"integer"},slug:{type:"string"},node_id:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},hooks_url:{type:"string"},issues_url:{type:"string"},members_url:{type:"string"},public_members_url:{type:"string"},avatar_url:{type:"string"},description:{type:"string"},gravatar_id:{type:"string",examples:['""']},html_url:{type:"string",examples:['"https://github.com/testorg-ea8ec76d71c3af4b"']},followers_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers"']},following_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}"']},gists_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}"']},starred_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}"']},subscriptions_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions"']},organizations_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs"']},received_events_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events"']},type:{type:"string",examples:['"Organization"']},site_admin:{type:"boolean",examples:[!1]}}},name:{type:"string"},description:{type:"string"},external_url:{type:"string"},html_url:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{metadata:{type:"string"},contents:{type:"string"},issues:{type:"string"},single_file:{type:"string"}}},events:{type:"array",items:{type:"string"}}}}}},required:["url","users_url","teams_url","apps_url","users","teams","apps"]},required_linear_history:{type:"object",properties:{enabled:{type:"boolean"}}},allow_force_pushes:{type:"object",properties:{enabled:{type:"boolean"}}},allow_deletions:{type:"object",properties:{enabled:{type:"boolean"}}},block_creations:{type:"object",properties:{enabled:{type:"boolean"}}},required_conversation_resolution:{type:"object",properties:{enabled:{type:"boolean"}}},name:{type:"string",examples:['"branch/with/protection"']},protection_url:{type:"string",examples:['"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection"']},required_signatures:{type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures"]},enabled:{type:"boolean",examples:[!0]}},required:["url","enabled"]},lock_branch:{type:"object",description:"Whether to set the branch as read-only. If this is true, users will not be able to push to the branch.",properties:{enabled:{default:!1,type:"boolean"}}},allow_fork_syncing:{type:"object",description:"Whether users can pull changes from upstream when the branch is locked. Set to `true` to allow fork syncing. Set to `false` to prevent fork syncing.",properties:{enabled:{default:!1,type:"boolean"}}}},De={title:je,description:Ae,type:Be,properties:Le};function H(t){return t instanceof K.RequestError?t.response?`${t.name} ${t.response.status}: ${JSON.stringify(t.response.data)}`:`${t.name} ${t.status}: ${t.message}`:JSON.stringify(t)}function Ce(t){var e,r;return t instanceof K.RequestError&&t.status===403&&(((e=t.response)==null?void 0:e.headers["retry-after"])!==void 0||((r=t.response)==null?void 0:r.headers["x-ratelimit-remaining"])==="0")}function Ne(t){return t instanceof K.RequestError&&t.status===404}function q(t,e,r,s){return Ce(r)?(e&&t.error(s),!1):(t.error(s),!0)}var Ke=Object.defineProperty,Ze=(t,e,r)=>e in t?Ke(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,$e=(t,e,r)=>(Ze(t,typeof e!="symbol"?e+"":e,r),r),Z=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},$=(t,e,r)=>(Z(t,e,"read from private field"),r?r.call(t):e.get(t)),k=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},h=(t,e,r,s)=>(Z(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),Ue=(t,e,r)=>(Z(t,e,"access private method"),r),R,M,c,U,ce;const Y=class{constructor(e,r){k(this,U),k(this,R,void 0),k(this,M,void 0),k(this,c,void 0),h(this,R,e),h(this,M,r),h(this,c,!0)}async extract(e,r,s){const o={owner:r.owner,repo:r.name,branch:await Ue(this,U,ce).call(this,e,r,s)};try{const i=await s.rest.repos.getBranchProtection(o);return h(this,c,!0),i.data}catch(i){if(Ne(i))return h(this,c,!0),{};const p=`[BranchProtections] fact extraction failed with: ${H(i)}. Request parameters: ${JSON.stringify(o)}`;h(this,c,q($(this,R),$(this,c),i,p));return}}getDataSchema(e){return JSON.stringify(De)}};R=new WeakMap,M=new WeakMap,c=new WeakMap,U=new WeakSet,ce=async function(t,e,r){return t.branch?t.branch:$(this,M).getDefaultBranch(e,r)},$e(Y,"factory",({logger:t,branchHelper:e})=>{const r=new Y(t,e);return{predicate:s=>s.type==="BranchProtections",extractor:r}});let Ye=Y;var Qe="Full Repository",Je="Full Repository",Fe="object",Ve={id:{type:"integer",examples:[1296269]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{type:"string",examples:["Hello-World"]},full_name:{type:"string",examples:["octocat/Hello-World"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"},examples:["octocat","atom","electron","API"]},has_issues:{type:"boolean",examples:[!0]},has_projects:{type:"boolean",examples:[!0]},has_wiki:{type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{type:"boolean",examples:[!0]},has_discussions:{type:"boolean",examples:[!0]},archived:{type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",type:"string",examples:["public"]},pushed_at:{type:"string",format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:"string",format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:"string",format:"date-time",examples:["2011-01-26T19:14:43Z"]},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}},required:["admin","pull","push"]},allow_rebase_merge:{type:"boolean",examples:[!0]},template_repository:{anyOf:[{type:"null"},{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]}]},temp_clone_token:{type:["string","null"]},allow_squash_merge:{type:"boolean",examples:[!0]},allow_auto_merge:{type:"boolean",examples:[!1]},delete_branch_on_merge:{type:"boolean",examples:[!1]},allow_merge_commit:{type:"boolean",examples:[!0]},allow_update_branch:{type:"boolean",examples:[!0]},use_squash_pr_title_as_default:{type:"boolean",examples:[!1]},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).",examples:["PR_TITLE"]},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.",examples:["PR_BODY"]},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).",examples:["PR_TITLE"]},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.",examples:["PR_BODY"]},allow_forking:{type:"boolean",examples:[!0]},web_commit_signoff_required:{type:"boolean",examples:[!1]},subscribers_count:{type:"integer",examples:[42]},network_count:{type:"integer",examples:[0]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},parent:{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]},source:{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]},forks:{type:"integer"},master_branch:{type:"string"},open_issues:{type:"integer"},watchers:{type:"integer"},anonymous_access_enabled:{description:"Whether anonymous git access is allowed.",default:!0,type:"boolean"},code_of_conduct:{title:"Code Of Conduct Simple",description:"Code of Conduct Simple",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/github/docs/community/code_of_conduct"]},key:{type:"string",examples:["citizen_code_of_conduct"]},name:{type:"string",examples:["Citizen Code of Conduct"]},html_url:{type:["string","null"],format:"uri",examples:["https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md"]}},required:["url","key","name","html_url"]},security_and_analysis:{type:["object","null"],properties:{advanced_security:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}},secret_scanning:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}},secret_scanning_push_protection:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}}}}},Xe=["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","has_discussions","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at","network_count","subscribers_count"],et={title:Qe,description:Je,type:Fe,properties:Ve,required:Xe},tt=Object.defineProperty,rt=(t,e,r)=>e in t?tt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,st=(t,e,r)=>(rt(t,typeof e!="symbol"?e+"":e,r),r),me=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},ge=(t,e,r)=>(me(t,e,"read from private field"),r?r.call(t):e.get(t)),he=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},S=(t,e,r,s)=>(me(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),P,_;const Q=class{constructor(e){he(this,P,void 0),he(this,_,void 0),S(this,P,e),S(this,_,!0)}async extract(e,r,s){const o={owner:r.owner,repo:r.name};try{const i=await s.rest.repos.get(o);return S(this,_,!0),i.data}catch(i){const p=`[RepositoryDetails] fact extraction failed with: ${H(i)}. Request parameters: ${JSON.stringify(o)}`;S(this,_,q(ge(this,P),ge(this,_),i,p));return}}getDataSchema(e){return JSON.stringify(et)}};P=new WeakMap,_=new WeakMap,st(Q,"factory",({logger:t})=>{const e=new Q(t);return{predicate:r=>r.type==="RepositoryDetails",extractor:e}});let it=Q;const ot=l.BaseFactExtractorSchema.and(m.z.object({type:m.z.string().regex(new RegExp("BranchProtections"))})),at=l.BaseFactExtractorSchema.and(m.z.object({type:m.z.string().regex(new RegExp("RepositoryDetails"))})),lt=l.BaseFactExtractorSchema.and(m.z.object({type:m.z.string().regex(new RegExp("RepositoryLanguages"))})),pt=ot.or(at).or(lt),_e=l.buildFactCollectorSchema(pt);var J=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},I=(t,e,r)=>(J(t,e,"read from private field"),r?r.call(t):e.get(t)),G=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},F=(t,e,r,s)=>(J(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),nt=(t,e,r)=>(J(t,e,"access private method"),r),O,f,z,V,ye;const ut=class Te{constructor(e){G(this,V),G(this,O,void 0),G(this,f,{}),G(this,z,void 0),F(this,z,e)}static create(e){return new Te(e)}getConfig(){return I(this,O)}setConfig(e){F(this,O,e),F(this,f,nt(this,V,ye).call(this,e))}getExtractorConfig(e){return I(this,f)[e]}getExtractorConfigs(){return Object.values(I(this,f))}};O=new WeakMap,f=new WeakMap,z=new WeakMap,V=new WeakSet,ye=function(t){const e=_e.safeParse(t);if(!e.success)throw I(this,z).error("Failed to parse GithubFactCollector from schema."),new ke.InputError(e.error.message);return l.buildExtractorConfigMap(e.data)};let ct=ut;var de=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},j=(t,e,r)=>(de(t,e,"read from private field"),r?r.call(t):e.get(t)),X=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},x=(t,e,r,s)=>(de(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),A,v,y;const mt=class We{constructor(e,r){X(this,A,void 0),X(this,v,void 0),X(this,y,void 0),x(this,A,e),x(this,v,r),x(this,y,!0)}static create(e,r){return new We(e,r)}async getDefaultBranch(e,r){let s=await j(this,v).get(e.full_name);if(s!==void 0)return s;const o={owner:e.owner,repo:e.name};try{s=(await r.rest.repos.get(o)).data.default_branch,x(this,y,!0),await j(this,v).set(e.full_name,s)}catch(i){e.ref?s=e.ref:s="main";const p=`Failed to get default branch name with: ${H(i)}. Request parameters: ${JSON.stringify(o)}. Falling back to using [${s}] as default branch`;x(this,y,q(j(this,A),j(this,y),i,p))}return s}};A=new WeakMap,v=new WeakMap,y=new WeakMap;let gt=mt;var ht="Language",_t="Language",yt="object",dt={type:"integer"},bt={title:ht,description:_t,type:yt,additionalProperties:dt},ft=Object.defineProperty,xt=(t,e,r)=>e in t?ft(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,vt=(t,e,r)=>(xt(t,typeof e!="symbol"?e+"":e,r),r),be=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},fe=(t,e,r)=>(be(t,e,"read from private field"),r?r.call(t):e.get(t)),xe=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},B=(t,e,r,s)=>(be(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),L,d;const ee=class{constructor(e){xe(this,L,void 0),xe(this,d,void 0),B(this,L,e),B(this,d,!0)}async extract(e,r,s){const o={owner:r.owner,repo:r.name};try{const i=await s.rest.repos.listLanguages(o);return B(this,d,!0),i.data}catch(i){const p=`[RepositoryLanguages] fact extraction failed with: ${H(i)}. Request parameters: ${JSON.stringify(o)}`;B(this,d,q(fe(this,L),fe(this,d),i,p));return}}getDataSchema(e){return JSON.stringify(bt)}};L=new WeakMap,d=new WeakMap,vt(ee,"factory",({logger:t})=>{const e=new ee(t);return{predicate:r=>r.type==="RepositoryLanguages",extractor:e}});let wt=ee;var Tt=Object.defineProperty,Wt=(t,e,r)=>e in t?Tt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,D=(t,e,r)=>(Wt(t,typeof e!="symbol"?e+"":e,r),r),te=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},a=(t,e,r)=>(te(t,e,"read from private field"),r?r.call(t):e.get(t)),b=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},w=(t,e,r,s)=>(te(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),Et=(t,e,r)=>(te(t,e,"access private method"),r),u,T,C,W,n,re,ve;const we=class se{constructor(e,r,s){b(this,re),b(this,u,void 0),b(this,T,void 0),b(this,C,void 0),b(this,W,void 0),b(this,n,void 0),D(this,"id",se.ID),D(this,"name","Github"),D(this,"description","Collects facts about your Github repositories."),w(this,u,r.child({target:this.id})),w(this,T,pe.ScmIntegrations.fromConfig(e)),w(this,C,pe.DefaultGithubCredentialsProvider.fromIntegrations(a(this,T))),w(this,W,ze.create({logger:a(this,u),branchHelper:gt.create(a(this,u),s.getClient({defaultTtl:60*60*1e3})),factories:[Ye.factory,it.factory,wt.factory]})),w(this,n,ct.create(a(this,u)))}static create(e,r,s){return new se(e,r,s)}async collect(e,r){const s=Et(this,re,ve).call(this,r);return Promise.all(e.filter(o=>l.isScmEntity(o)).map(async o=>{const i=He.stringifyEntityRef(o),p=l.getEntityScmUrl(o),N=Se.default(p),ie=await this.getOctokit(p);return ie?Promise.all(s.map(async oe=>{const ae=l.getFactRef(this.id,oe),le=await a(this,W).extract(oe,N,ie).catch(Ee=>{a(this,u).error(`Failed to collect ${ae} fact data for ${i} entity: ${Ee}`)});if(le!==void 0)return l.buildFact(i,ae,le)})):Promise.resolve()})).then(o=>o.flat().filter(i=>!!i))}async getOctokit(e){try{const{token:r}=await a(this,C).getCredentials({url:e}),s=a(this,T).github.byUrl(e);return new qe.Octokit({auth:r,baseUrl:s==null?void 0:s.config.apiBaseUrl})}catch{a(this,u).error(`Cannot collect github information from url ${e}`);return}}async getCollectionConfigs(){return l.buildCollectionConfigs(this.id,a(this,n).getExtractorConfigs())}async getFactNames(){return a(this,n).getExtractorConfigs().map(e=>e.factName)}async getDataSchema(e){const r=l.parseFactRef(e,{defaultSource:this.id,defaultScope:l.DEFAULT_SCOPE}),s=a(this,n).getExtractorConfigs().find(o=>{const i=l.parseFactRef(l.getFactRef(this.id,o));return r.source===i.source&&r.name===i.name});if(s)return a(this,W).getDataSchema(s)}async getConfig(){return a(this,n).getConfig()}async setConfig(e){a(this,n).setConfig(e)}async getConfigSchema(){return JSON.stringify(Pe.default(_e))}};u=new WeakMap,T=new WeakMap,C=new WeakMap,W=new WeakMap,n=new WeakMap,re=new WeakSet,ve=function(t){return t!=null&&t.factRefs?a(this,n).getExtractorConfigs().filter(e=>{var r,s;return(s=(r=t==null?void 0:t.factRefs)==null?void 0:r.map(l.stringifyFactRef))==null?void 0:s.includes(l.getFactRef(this.id,e))}):a(this,n).getExtractorConfigs()},D(we,"ID","github");let Ht=we;exports.GithubFactCollector=Ht;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n=require("@spotify/backstage-plugin-soundcheck-common"),Ie=require("@backstage/catalog-model"),be=require("@octokit/request-error"),Oe=require("@octokit/rest"),fe=require("@backstage/integration"),x=require("zod"),Ge=require("@backstage/errors"),Ae=require("git-url-parse"),ze=require("zod-to-json-schema");function xe(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var je=xe(Ae),Be=xe(ze),Ce=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},B=(t,e,r)=>(Ce(t,e,"read from private field"),r?r.call(t):e.get(t)),Le=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},v;function ve(t){return`Extractor with type '${t}' is not allowed. You may need to update collectors configuration at 'soundcheck.collectors.github'`}class De{constructor(){Le(this,v,[])}register(e){B(this,v).push(e)}async extract(e,r,s,a){for(const{predicate:o,extractor:l}of B(this,v))if(o(e))return l.extract(e,r,s,a);throw new Error(ve(e.type))}getDataSchema(e){for(const{predicate:r,extractor:s}of B(this,v))if(r(e))return s.getDataSchema(e);throw new Error(ve(e.type))}toString(){return`predicateMux{extractors=${B(this,v).map(e=>e.extractor).join(",")}`}}v=new WeakMap;class Ne{static create(e){const{logger:r,cache:s,branchHelper:a,factories:o}=e,l=new De;for(const u of o!=null?o:[]){const m=u({logger:r,cache:s,branchHelper:a});l.register(m)}return l}}var $e="Branch Protection",Ke="Branch Protection",Ze="object",Ue={url:{type:"string"},enabled:{type:"boolean"},required_status_checks:{title:"Protected Branch Required Status Check",description:"Protected Branch Required Status Check",type:"object",properties:{url:{type:"string"},enforcement_level:{type:"string"},contexts:{type:"array",items:{type:"string"}},checks:{type:"array",items:{type:"object",properties:{context:{type:"string"},app_id:{type:["integer","null"]}},required:["context","app_id"]}},contexts_url:{type:"string"},strict:{type:"boolean"}},required:["contexts","checks"]},enforce_admins:{title:"Protected Branch Admin Enforced",description:"Protected Branch Admin Enforced",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/enforce_admins"]},enabled:{type:"boolean",examples:[!0]}},required:["url","enabled"]},required_pull_request_reviews:{title:"Protected Branch Pull Request Review",description:"Protected Branch Pull Request Review",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions"]},dismissal_restrictions:{type:"object",properties:{users:{description:"The list of users with review dismissal access.",type:"array",items:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}},teams:{description:"The list of teams with review dismissal access.",type:"array",items:{title:"Team",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},permissions:{type:"object",properties:{pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"},admin:{type:"boolean"}},required:["pull","triage","push","maintain","admin"]},url:{type:"string",format:"uri"},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},members_url:{type:"string"},repositories_url:{type:"string",format:"uri"},parent:{anyOf:[{type:"null"},{title:"Team Simple",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{description:"Unique identifier of the team",type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VGVhbTE="]},url:{description:"URL for the team",type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1"]},members_url:{type:"string",examples:["https://api.github.com/organizations/1/team/1/members{/member}"]},name:{description:"Name of the team",type:"string",examples:["Justice League"]},description:{description:"Description of the team",type:["string","null"],examples:["A great team."]},permission:{description:"Permission that the team will have for its repositories",type:"string",examples:["admin"]},privacy:{description:"The level of privacy this team should have",type:"string",examples:["closed"]},notification_setting:{description:"The notification setting the team has set",type:"string",examples:["notifications_enabled"]},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},repositories_url:{type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1/repos"]},slug:{type:"string",examples:["justice-league"]},ldap_dn:{description:"Distinguished Name (DN) that team maps to within LDAP environment",type:"string",examples:["uid=example,ou=users,dc=github,dc=com"]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug"]}]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug","parent"]}},apps:{description:"The list of apps with review dismissal access.",type:"array",items:{title:"GitHub app",description:"GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.",type:"object",properties:{id:{description:"Unique identifier of the GitHub app",type:"integer",examples:[37]},slug:{description:"The slug name of the GitHub app",type:"string",examples:["probot-owners"]},node_id:{type:"string",examples:["MDExOkludGVncmF0aW9uMQ=="]},owner:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},name:{description:"The name of the GitHub app",type:"string",examples:["Probot Owners"]},description:{type:["string","null"],examples:["The description of the app."]},external_url:{type:"string",format:"uri",examples:["https://example.com"]},html_url:{type:"string",format:"uri",examples:["https://github.com/apps/super-ci"]},created_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},updated_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},permissions:{description:"The set of permissions for the GitHub app",type:"object",properties:{issues:{type:"string"},checks:{type:"string"},metadata:{type:"string"},contents:{type:"string"},deployments:{type:"string"}},additionalProperties:{type:"string"},example:{issues:"read",deployments:"write"}},events:{description:"The list of events for the GitHub app",type:"array",items:{type:"string"},examples:["label","deployment"]},installations_count:{description:"The number of installations associated with the GitHub app",type:"integer",examples:[5]},client_id:{type:"string",examples:['"Iv1.25b5d1e65ffc4022"']},client_secret:{type:"string",examples:['"1d4b2097ac622ba702d19de498f005747a8b21d3"']},webhook_secret:{type:["string","null"],examples:['"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"']},pem:{type:"string",examples:['"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n"']}},required:["id","node_id","owner","name","description","external_url","html_url","created_at","updated_at","permissions","events"]}},url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions"']},users_url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users"']},teams_url:{type:"string",examples:['"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams"']}}},bypass_pull_request_allowances:{type:"object",description:"Allow specific users, teams, or apps to bypass pull request requirements.",properties:{users:{description:"The list of users allowed to bypass pull request requirements.",type:"array",items:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}},teams:{description:"The list of teams allowed to bypass pull request requirements.",type:"array",items:{title:"Team",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},permissions:{type:"object",properties:{pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"},admin:{type:"boolean"}},required:["pull","triage","push","maintain","admin"]},url:{type:"string",format:"uri"},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},members_url:{type:"string"},repositories_url:{type:"string",format:"uri"},parent:{anyOf:[{type:"null"},{title:"Team Simple",description:"Groups of organization members that gives permissions on specified repositories.",type:"object",properties:{id:{description:"Unique identifier of the team",type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VGVhbTE="]},url:{description:"URL for the team",type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1"]},members_url:{type:"string",examples:["https://api.github.com/organizations/1/team/1/members{/member}"]},name:{description:"Name of the team",type:"string",examples:["Justice League"]},description:{description:"Description of the team",type:["string","null"],examples:["A great team."]},permission:{description:"Permission that the team will have for its repositories",type:"string",examples:["admin"]},privacy:{description:"The level of privacy this team should have",type:"string",examples:["closed"]},notification_setting:{description:"The notification setting the team has set",type:"string",examples:["notifications_enabled"]},html_url:{type:"string",format:"uri",examples:["https://github.com/orgs/rails/teams/core"]},repositories_url:{type:"string",format:"uri",examples:["https://api.github.com/organizations/1/team/1/repos"]},slug:{type:"string",examples:["justice-league"]},ldap_dn:{description:"Distinguished Name (DN) that team maps to within LDAP environment",type:"string",examples:["uid=example,ou=users,dc=github,dc=com"]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug"]}]}},required:["id","node_id","url","members_url","name","description","permission","html_url","repositories_url","slug","parent"]}},apps:{description:"The list of apps allowed to bypass pull request requirements.",type:"array",items:{title:"GitHub app",description:"GitHub apps are a new way to extend GitHub. They can be installed directly on organizations and user accounts and granted access to specific repositories. They come with granular permissions and built-in webhooks. GitHub apps are first class actors within GitHub.",type:"object",properties:{id:{description:"Unique identifier of the GitHub app",type:"integer",examples:[37]},slug:{description:"The slug name of the GitHub app",type:"string",examples:["probot-owners"]},node_id:{type:"string",examples:["MDExOkludGVncmF0aW9uMQ=="]},owner:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},name:{description:"The name of the GitHub app",type:"string",examples:["Probot Owners"]},description:{type:["string","null"],examples:["The description of the app."]},external_url:{type:"string",format:"uri",examples:["https://example.com"]},html_url:{type:"string",format:"uri",examples:["https://github.com/apps/super-ci"]},created_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},updated_at:{type:"string",format:"date-time",examples:["2017-07-08T16:18:44-04:00"]},permissions:{description:"The set of permissions for the GitHub app",type:"object",properties:{issues:{type:"string"},checks:{type:"string"},metadata:{type:"string"},contents:{type:"string"},deployments:{type:"string"}},additionalProperties:{type:"string"},example:{issues:"read",deployments:"write"}},events:{description:"The list of events for the GitHub app",type:"array",items:{type:"string"},examples:["label","deployment"]},installations_count:{description:"The number of installations associated with the GitHub app",type:"integer",examples:[5]},client_id:{type:"string",examples:['"Iv1.25b5d1e65ffc4022"']},client_secret:{type:"string",examples:['"1d4b2097ac622ba702d19de498f005747a8b21d3"']},webhook_secret:{type:["string","null"],examples:['"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"']},pem:{type:"string",examples:['"-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\\n-----END RSA PRIVATE KEY-----\\n"']}},required:["id","node_id","owner","name","description","external_url","html_url","created_at","updated_at","permissions","events"]}}}},dismiss_stale_reviews:{type:"boolean",examples:[!0]},require_code_owner_reviews:{type:"boolean",examples:[!0]},required_approving_review_count:{type:"integer",minimum:0,maximum:6,examples:[2]},require_last_push_approval:{description:"Whether the most recent push must be approved by someone other than the person who pushed it.",type:"boolean",default:!1,examples:[!0]}},required:["dismiss_stale_reviews","require_code_owner_reviews"]},restrictions:{title:"Branch Restriction Policy",description:"Branch Restriction Policy",type:"object",properties:{url:{type:"string",format:"uri"},users_url:{type:"string",format:"uri"},teams_url:{type:"string",format:"uri"},apps_url:{type:"string",format:"uri"},users:{type:"array",items:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}}},teams:{type:"array",items:{type:"object",properties:{id:{type:"integer"},node_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},name:{type:"string"},slug:{type:"string"},description:{type:["string","null"]},privacy:{type:"string"},notification_setting:{type:"string"},permission:{type:"string"},members_url:{type:"string"},repositories_url:{type:"string"},parent:{type:["string","null"]}}}},apps:{type:"array",items:{type:"object",properties:{id:{type:"integer"},slug:{type:"string"},node_id:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},hooks_url:{type:"string"},issues_url:{type:"string"},members_url:{type:"string"},public_members_url:{type:"string"},avatar_url:{type:"string"},description:{type:"string"},gravatar_id:{type:"string",examples:['""']},html_url:{type:"string",examples:['"https://github.com/testorg-ea8ec76d71c3af4b"']},followers_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/followers"']},following_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/following{/other_user}"']},gists_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/gists{/gist_id}"']},starred_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/starred{/owner}{/repo}"']},subscriptions_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/subscriptions"']},organizations_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/orgs"']},received_events_url:{type:"string",examples:['"https://api.github.com/users/testorg-ea8ec76d71c3af4b/received_events"']},type:{type:"string",examples:['"Organization"']},site_admin:{type:"boolean",examples:[!1]}}},name:{type:"string"},description:{type:"string"},external_url:{type:"string"},html_url:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{metadata:{type:"string"},contents:{type:"string"},issues:{type:"string"},single_file:{type:"string"}}},events:{type:"array",items:{type:"string"}}}}}},required:["url","users_url","teams_url","apps_url","users","teams","apps"]},required_linear_history:{type:"object",properties:{enabled:{type:"boolean"}}},allow_force_pushes:{type:"object",properties:{enabled:{type:"boolean"}}},allow_deletions:{type:"object",properties:{enabled:{type:"boolean"}}},block_creations:{type:"object",properties:{enabled:{type:"boolean"}}},required_conversation_resolution:{type:"object",properties:{enabled:{type:"boolean"}}},name:{type:"string",examples:['"branch/with/protection"']},protection_url:{type:"string",examples:['"https://api.github.com/repos/owner-79e94e2d36b3fd06a32bb213/AAA_Public_Repo/branches/branch/with/protection/protection"']},required_signatures:{type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World/branches/master/protection/required_signatures"]},enabled:{type:"boolean",examples:[!0]}},required:["url","enabled"]},lock_branch:{type:"object",description:"Whether to set the branch as read-only. If this is true, users will not be able to push to the branch.",properties:{enabled:{default:!1,type:"boolean"}}},allow_fork_syncing:{type:"object",description:"Whether users can pull changes from upstream when the branch is locked. Set to `true` to allow fork syncing. Set to `false` to prevent fork syncing.",properties:{enabled:{default:!1,type:"boolean"}}}},Ye={title:$e,description:Ke,type:Ze,properties:Ue};function C(t){return t instanceof be.RequestError?t.response?`${t.name} ${t.response.status}: ${JSON.stringify(t.response.data)}`:`${t.name} ${t.status}: ${t.message}`:JSON.stringify(t)}function Je(t){var e,r;return t instanceof be.RequestError&&t.status===403&&(((e=t.response)==null?void 0:e.headers["retry-after"])!==void 0||((r=t.response)==null?void 0:r.headers["x-ratelimit-remaining"])==="0")}function ee(t){return"status"in t&&t.status===304}function te(t){return"status"in t&&t.status===404}function L(t,e,r,s){return Je(r)?(e&&t.error(s),!1):(t.error(s),!0)}const re=async(t,e)=>{let r;const s=await t.get(e);return s&&(r={"If-None-Match":s.etag,"If-Modified-Since":s.lastModified}),r};var Qe=Object.defineProperty,Ve=(t,e,r)=>e in t?Qe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Fe=(t,e,r)=>(Ve(t,typeof e!="symbol"?e+"":e,r),r),se=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},H=(t,e,r)=>(se(t,e,"read from private field"),r?r.call(t):e.get(t)),q=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},d=(t,e,r,s)=>(se(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),Xe=(t,e,r)=>(se(t,e,"access private method"),r),D,k,N,y,ie,we;const oe=class{constructor(e,r,s){q(this,ie),q(this,D,void 0),q(this,k,void 0),q(this,N,void 0),q(this,y,void 0),d(this,D,e),d(this,k,r),d(this,N,s),d(this,y,!0)}async extract(e,r,s,a){var o,l;const u=`github:branch_protections:${r.owner}:${r.name}`,m=a?void 0:await re(H(this,k),u),c={owner:r.owner,repo:r.name,branch:await Xe(this,ie,we).call(this,e,r,s),headers:m};try{const i=await s.rest.repos.getBranchProtection(c);return d(this,y,!0),await H(this,k).set(u,{etag:(o=i.headers)==null?void 0:o.etag,lastModified:(l=i.headers)==null?void 0:l.date}),i.data}catch(i){if(ee(i))return;if(te(i))return d(this,y,!0),{};const h=`[BranchProtections] fact extraction failed with: ${C(i)}. Request parameters: ${JSON.stringify(c)}`;d(this,y,L(H(this,D),H(this,y),i,h));return}}getDataSchema(e){return JSON.stringify(Ye)}};D=new WeakMap,k=new WeakMap,N=new WeakMap,y=new WeakMap,ie=new WeakSet,we=async function(t,e,r){return t.branch?t.branch:H(this,N).getDefaultBranch(e,r)},Fe(oe,"factory",({logger:t,cache:e,branchHelper:r})=>{const s=new oe(t,e,r);return{predicate:a=>a.type==="BranchProtections",extractor:s}});let et=oe;var tt="Full Repository",rt="Full Repository",st="object",it={id:{type:"integer",examples:[1296269]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{type:"string",examples:["Hello-World"]},full_name:{type:"string",examples:["octocat/Hello-World"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"},examples:["octocat","atom","electron","API"]},has_issues:{type:"boolean",examples:[!0]},has_projects:{type:"boolean",examples:[!0]},has_wiki:{type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{type:"boolean",examples:[!0]},has_discussions:{type:"boolean",examples:[!0]},archived:{type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",type:"string",examples:["public"]},pushed_at:{type:"string",format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:"string",format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:"string",format:"date-time",examples:["2011-01-26T19:14:43Z"]},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}},required:["admin","pull","push"]},allow_rebase_merge:{type:"boolean",examples:[!0]},template_repository:{anyOf:[{type:"null"},{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]}]},temp_clone_token:{type:["string","null"]},allow_squash_merge:{type:"boolean",examples:[!0]},allow_auto_merge:{type:"boolean",examples:[!1]},delete_branch_on_merge:{type:"boolean",examples:[!1]},allow_merge_commit:{type:"boolean",examples:[!0]},allow_update_branch:{type:"boolean",examples:[!0]},use_squash_pr_title_as_default:{type:"boolean",examples:[!1]},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit).",examples:["PR_TITLE"]},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message.",examples:["PR_BODY"]},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n - `PR_TITLE` - default to the pull request's title.\n - `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).",examples:["PR_TITLE"]},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message.",examples:["PR_BODY"]},allow_forking:{type:"boolean",examples:[!0]},web_commit_signoff_required:{type:"boolean",examples:[!1]},subscribers_count:{type:"integer",examples:[42]},network_count:{type:"integer",examples:[0]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},parent:{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]},source:{title:"Repository",description:"A repository on GitHub.",type:"object",properties:{id:{description:"Unique identifier of the repository",type:"integer",examples:[42]},node_id:{type:"string",examples:["MDEwOlJlcG9zaXRvcnkxMjk2MjY5"]},name:{description:"The name of the repository.",type:"string",examples:["Team Environment"]},full_name:{type:"string",examples:["octocat/Hello-World"]},license:{anyOf:[{type:"null"},{title:"License Simple",description:"License Simple",type:"object",properties:{key:{type:"string",examples:["mit"]},name:{type:"string",examples:["MIT License"]},url:{type:["string","null"],format:"uri",examples:["https://api.github.com/licenses/mit"]},spdx_id:{type:["string","null"],examples:["MIT"]},node_id:{type:"string",examples:["MDc6TGljZW5zZW1pdA=="]},html_url:{type:"string",format:"uri"}},required:["key","name","url","spdx_id","node_id"]}]},organization:{anyOf:[{type:"null"},{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]}]},forks:{type:"integer"},permissions:{type:"object",properties:{admin:{type:"boolean"},pull:{type:"boolean"},triage:{type:"boolean"},push:{type:"boolean"},maintain:{type:"boolean"}},required:["admin","pull","push"]},owner:{title:"Simple User",description:"A GitHub user.",type:"object",properties:{name:{type:["string","null"]},email:{type:["string","null"]},login:{type:"string",examples:["octocat"]},id:{type:"integer",examples:[1]},node_id:{type:"string",examples:["MDQ6VXNlcjE="]},avatar_url:{type:"string",format:"uri",examples:["https://github.com/images/error/octocat_happy.gif"]},gravatar_id:{type:["string","null"],examples:["41d064eb2195891e12d0413f63227ea7"]},url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat"]},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat"]},followers_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/followers"]},following_url:{type:"string",examples:["https://api.github.com/users/octocat/following{/other_user}"]},gists_url:{type:"string",examples:["https://api.github.com/users/octocat/gists{/gist_id}"]},starred_url:{type:"string",examples:["https://api.github.com/users/octocat/starred{/owner}{/repo}"]},subscriptions_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/subscriptions"]},organizations_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/orgs"]},repos_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/repos"]},events_url:{type:"string",examples:["https://api.github.com/users/octocat/events{/privacy}"]},received_events_url:{type:"string",format:"uri",examples:["https://api.github.com/users/octocat/received_events"]},type:{type:"string",examples:["User"]},site_admin:{type:"boolean"},starred_at:{type:"string",examples:['"2020-07-09T00:17:55Z"']}},required:["avatar_url","events_url","followers_url","following_url","gists_url","gravatar_id","html_url","id","node_id","login","organizations_url","received_events_url","repos_url","site_admin","starred_url","subscriptions_url","type","url"]},private:{description:"Whether the repository is private or public.",default:!1,type:"boolean"},html_url:{type:"string",format:"uri",examples:["https://github.com/octocat/Hello-World"]},description:{type:["string","null"],examples:["This your first repo!"]},fork:{type:"boolean"},url:{type:"string",format:"uri",examples:["https://api.github.com/repos/octocat/Hello-World"]},archive_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}"]},assignees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/assignees{/user}"]},blobs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}"]},branches_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/branches{/branch}"]},collaborators_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}"]},comments_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/comments{/number}"]},commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/commits{/sha}"]},compare_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}"]},contents_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/contents/{+path}"]},contributors_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/contributors"]},deployments_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/deployments"]},downloads_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/downloads"]},events_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/events"]},forks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/forks"]},git_commits_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/commits{/sha}"]},git_refs_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/refs{/sha}"]},git_tags_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/tags{/sha}"]},git_url:{type:"string",examples:["git:github.com/octocat/Hello-World.git"]},issue_comment_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/comments{/number}"]},issue_events_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues/events{/number}"]},issues_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/issues{/number}"]},keys_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/keys{/key_id}"]},labels_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/labels{/name}"]},languages_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/languages"]},merges_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/merges"]},milestones_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/milestones{/number}"]},notifications_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}"]},pulls_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/pulls{/number}"]},releases_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/releases{/id}"]},ssh_url:{type:"string",examples:["git@github.com:octocat/Hello-World.git"]},stargazers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/stargazers"]},statuses_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/statuses/{sha}"]},subscribers_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscribers"]},subscription_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/subscription"]},tags_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/tags"]},teams_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/teams"]},trees_url:{type:"string",examples:["http://api.github.com/repos/octocat/Hello-World/git/trees{/sha}"]},clone_url:{type:"string",examples:["https://github.com/octocat/Hello-World.git"]},mirror_url:{type:["string","null"],format:"uri",examples:["git:git.example.com/octocat/Hello-World"]},hooks_url:{type:"string",format:"uri",examples:["http://api.github.com/repos/octocat/Hello-World/hooks"]},svn_url:{type:"string",format:"uri",examples:["https://svn.github.com/octocat/Hello-World"]},homepage:{type:["string","null"],format:"uri",examples:["https://github.com"]},language:{type:["string","null"]},forks_count:{type:"integer",examples:[9]},stargazers_count:{type:"integer",examples:[80]},watchers_count:{type:"integer",examples:[80]},size:{description:"The size of the repository. Size is calculated hourly. When a repository is initially created, the size is 0.",type:"integer",examples:[108]},default_branch:{description:"The default branch of the repository.",type:"string",examples:["master"]},open_issues_count:{type:"integer",examples:[0]},is_template:{description:"Whether this repository acts as a template that can be used to generate new repositories.",default:!1,type:"boolean",examples:[!0]},topics:{type:"array",items:{type:"string"}},has_issues:{description:"Whether issues are enabled.",default:!0,type:"boolean",examples:[!0]},has_projects:{description:"Whether projects are enabled.",default:!0,type:"boolean",examples:[!0]},has_wiki:{description:"Whether the wiki is enabled.",default:!0,type:"boolean",examples:[!0]},has_pages:{type:"boolean"},has_downloads:{description:"Whether downloads are enabled.",default:!0,type:"boolean",examples:[!0]},has_discussions:{description:"Whether discussions are enabled.",default:!1,type:"boolean",examples:[!0]},archived:{description:"Whether the repository is archived.",default:!1,type:"boolean"},disabled:{type:"boolean",description:"Returns whether or not this repository disabled."},visibility:{description:"The repository visibility: public, private, or internal.",default:"public",type:"string"},pushed_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:06:43Z"]},created_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:01:12Z"]},updated_at:{type:["string","null"],format:"date-time",examples:["2011-01-26T19:14:43Z"]},allow_rebase_merge:{description:"Whether to allow rebase merges for pull requests.",default:!0,type:"boolean",examples:[!0]},template_repository:{type:["object","null"],properties:{id:{type:"integer"},node_id:{type:"string"},name:{type:"string"},full_name:{type:"string"},owner:{type:"object",properties:{login:{type:"string"},id:{type:"integer"},node_id:{type:"string"},avatar_url:{type:"string"},gravatar_id:{type:"string"},url:{type:"string"},html_url:{type:"string"},followers_url:{type:"string"},following_url:{type:"string"},gists_url:{type:"string"},starred_url:{type:"string"},subscriptions_url:{type:"string"},organizations_url:{type:"string"},repos_url:{type:"string"},events_url:{type:"string"},received_events_url:{type:"string"},type:{type:"string"},site_admin:{type:"boolean"}}},private:{type:"boolean"},html_url:{type:"string"},description:{type:"string"},fork:{type:"boolean"},url:{type:"string"},archive_url:{type:"string"},assignees_url:{type:"string"},blobs_url:{type:"string"},branches_url:{type:"string"},collaborators_url:{type:"string"},comments_url:{type:"string"},commits_url:{type:"string"},compare_url:{type:"string"},contents_url:{type:"string"},contributors_url:{type:"string"},deployments_url:{type:"string"},downloads_url:{type:"string"},events_url:{type:"string"},forks_url:{type:"string"},git_commits_url:{type:"string"},git_refs_url:{type:"string"},git_tags_url:{type:"string"},git_url:{type:"string"},issue_comment_url:{type:"string"},issue_events_url:{type:"string"},issues_url:{type:"string"},keys_url:{type:"string"},labels_url:{type:"string"},languages_url:{type:"string"},merges_url:{type:"string"},milestones_url:{type:"string"},notifications_url:{type:"string"},pulls_url:{type:"string"},releases_url:{type:"string"},ssh_url:{type:"string"},stargazers_url:{type:"string"},statuses_url:{type:"string"},subscribers_url:{type:"string"},subscription_url:{type:"string"},tags_url:{type:"string"},teams_url:{type:"string"},trees_url:{type:"string"},clone_url:{type:"string"},mirror_url:{type:"string"},hooks_url:{type:"string"},svn_url:{type:"string"},homepage:{type:"string"},language:{type:"string"},forks_count:{type:"integer"},stargazers_count:{type:"integer"},watchers_count:{type:"integer"},size:{type:"integer"},default_branch:{type:"string"},open_issues_count:{type:"integer"},is_template:{type:"boolean"},topics:{type:"array",items:{type:"string"}},has_issues:{type:"boolean"},has_projects:{type:"boolean"},has_wiki:{type:"boolean"},has_pages:{type:"boolean"},has_downloads:{type:"boolean"},archived:{type:"boolean"},disabled:{type:"boolean"},visibility:{type:"string"},pushed_at:{type:"string"},created_at:{type:"string"},updated_at:{type:"string"},permissions:{type:"object",properties:{admin:{type:"boolean"},maintain:{type:"boolean"},push:{type:"boolean"},triage:{type:"boolean"},pull:{type:"boolean"}}},allow_rebase_merge:{type:"boolean"},temp_clone_token:{type:"string"},allow_squash_merge:{type:"boolean"},allow_auto_merge:{type:"boolean"},delete_branch_on_merge:{type:"boolean"},allow_update_branch:{type:"boolean"},use_squash_pr_title_as_default:{type:"boolean"},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"}}},temp_clone_token:{type:"string"},allow_squash_merge:{description:"Whether to allow squash merges for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_auto_merge:{description:"Whether to allow Auto-merge to be used on pull requests.",default:!1,type:"boolean",examples:[!1]},delete_branch_on_merge:{description:"Whether to delete head branches when pull requests are merged",default:!1,type:"boolean",examples:[!1]},allow_update_branch:{description:"Whether or not a pull request head branch that is behind its base branch can always be updated even if it is not required to be up to date before merging.",default:!1,type:"boolean",examples:[!1]},use_squash_pr_title_as_default:{type:"boolean",description:"Whether a squash merge commit can use the pull request title as default. **This property has been deprecated. Please use `squash_merge_commit_title` instead.",default:!1,deprecated:!0},squash_merge_commit_title:{type:"string",enum:["PR_TITLE","COMMIT_OR_PR_TITLE"],description:"The default value for a squash merge commit title:\n\n- `PR_TITLE` - default to the pull request's title.\n- `COMMIT_OR_PR_TITLE` - default to the commit's title (if only one commit) or the pull request's title (when more than one commit)."},squash_merge_commit_message:{type:"string",enum:["PR_BODY","COMMIT_MESSAGES","BLANK"],description:"The default value for a squash merge commit message:\n\n- `PR_BODY` - default to the pull request's body.\n- `COMMIT_MESSAGES` - default to the branch's commit messages.\n- `BLANK` - default to a blank commit message."},merge_commit_title:{type:"string",enum:["PR_TITLE","MERGE_MESSAGE"],description:"The default value for a merge commit title.\n\n- `PR_TITLE` - default to the pull request's title.\n- `MERGE_MESSAGE` - default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name)."},merge_commit_message:{type:"string",enum:["PR_BODY","PR_TITLE","BLANK"],description:"The default value for a merge commit message.\n\n- `PR_TITLE` - default to the pull request's title.\n- `PR_BODY` - default to the pull request's body.\n- `BLANK` - default to a blank commit message."},allow_merge_commit:{description:"Whether to allow merge commits for pull requests.",default:!0,type:"boolean",examples:[!0]},allow_forking:{description:"Whether to allow forking this repo",type:"boolean"},web_commit_signoff_required:{description:"Whether to require contributors to sign off on web-based commits",default:!1,type:"boolean"},subscribers_count:{type:"integer"},network_count:{type:"integer"},open_issues:{type:"integer"},watchers:{type:"integer"},master_branch:{type:"string"},starred_at:{type:"string",examples:['"2020-07-09T00:17:42Z"']},anonymous_access_enabled:{type:"boolean",description:"Whether anonymous git access is enabled for this repository"}},required:["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at"]},forks:{type:"integer"},master_branch:{type:"string"},open_issues:{type:"integer"},watchers:{type:"integer"},anonymous_access_enabled:{description:"Whether anonymous git access is allowed.",default:!0,type:"boolean"},code_of_conduct:{title:"Code Of Conduct Simple",description:"Code of Conduct Simple",type:"object",properties:{url:{type:"string",format:"uri",examples:["https://api.github.com/repos/github/docs/community/code_of_conduct"]},key:{type:"string",examples:["citizen_code_of_conduct"]},name:{type:"string",examples:["Citizen Code of Conduct"]},html_url:{type:["string","null"],format:"uri",examples:["https://github.com/github/docs/blob/main/CODE_OF_CONDUCT.md"]}},required:["url","key","name","html_url"]},security_and_analysis:{type:["object","null"],properties:{advanced_security:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}},secret_scanning:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}},secret_scanning_push_protection:{type:"object",properties:{status:{type:"string",enum:["enabled","disabled"]}}}}}},ot=["archive_url","assignees_url","blobs_url","branches_url","collaborators_url","comments_url","commits_url","compare_url","contents_url","contributors_url","deployments_url","description","downloads_url","events_url","fork","forks_url","full_name","git_commits_url","git_refs_url","git_tags_url","hooks_url","html_url","id","node_id","issue_comment_url","issue_events_url","issues_url","keys_url","labels_url","languages_url","merges_url","milestones_url","name","notifications_url","owner","private","pulls_url","releases_url","stargazers_url","statuses_url","subscribers_url","subscription_url","tags_url","teams_url","trees_url","url","clone_url","default_branch","forks","forks_count","git_url","has_downloads","has_issues","has_projects","has_wiki","has_pages","has_discussions","homepage","language","archived","disabled","mirror_url","open_issues","open_issues_count","license","pushed_at","size","ssh_url","stargazers_count","svn_url","watchers","watchers_count","created_at","updated_at","network_count","subscribers_count"],at={title:tt,description:rt,type:st,properties:it,required:ot},lt=Object.defineProperty,pt=(t,e,r)=>e in t?lt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,nt=(t,e,r)=>(pt(t,typeof e!="symbol"?e+"":e,r),r),Te=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},$=(t,e,r)=>(Te(t,e,"read from private field"),r?r.call(t):e.get(t)),ae=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},w=(t,e,r,s)=>(Te(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),K,R,b;const le=class{constructor(e,r){ae(this,K,void 0),ae(this,R,void 0),ae(this,b,void 0),w(this,K,e),w(this,b,!0),w(this,R,r)}async extract(e,r,s,a){var o,l;const u=`github:repository_details:${r.owner}:${r.name}`,m=a?void 0:await re($(this,R),u),c={owner:r.owner,repo:r.name,headers:m};try{const i=await s.rest.repos.get(c);return await $(this,R).set(u,{etag:(o=i.headers)==null?void 0:o.etag,lastModified:(l=i.headers)==null?void 0:l.date}),w(this,b,!0),i.data}catch(i){if(ee(i))return;if(te(i))return w(this,b,!0),{};const h=`[RepositoryDetails] fact extraction failed with: ${C(i)}. Request parameters: ${JSON.stringify(c)}`;w(this,b,L($(this,K),$(this,b),i,h));return}}getDataSchema(e){return JSON.stringify(at)}};K=new WeakMap,R=new WeakMap,b=new WeakMap,nt(le,"factory",({logger:t,cache:e})=>{const r=new le(t,e);return{predicate:s=>s.type==="RepositoryDetails",extractor:r}});let ut=le;const ct=n.BaseFactExtractorSchema.and(x.z.object({type:x.z.string().regex(new RegExp("BranchProtections"))})),mt=n.BaseFactExtractorSchema.and(x.z.object({type:x.z.string().regex(new RegExp("RepositoryDetails"))})),gt=n.BaseFactExtractorSchema.and(x.z.object({type:x.z.string().regex(new RegExp("RepositoryLanguages"))})),ht=ct.or(mt).or(gt),We=n.buildFactCollectorSchema(ht);var pe=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},M=(t,e,r)=>(pe(t,e,"read from private field"),r?r.call(t):e.get(t)),Z=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},ne=(t,e,r,s)=>(pe(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),_t=(t,e,r)=>(pe(t,e,"access private method"),r),U,S,P,ue,Ee;const dt=class Me{constructor(e){Z(this,ue),Z(this,U,void 0),Z(this,S,{}),Z(this,P,void 0),ne(this,P,e)}static create(e){return new Me(e)}getConfig(){return M(this,U)}setConfig(e){ne(this,U,e),ne(this,S,_t(this,ue,Ee).call(this,e))}getExtractorConfig(e){return M(this,S)[e]}getExtractorConfigs(){return Object.values(M(this,S))}};U=new WeakMap,S=new WeakMap,P=new WeakMap,ue=new WeakSet,Ee=function(t){const e=We.safeParse(t);if(!e.success)throw M(this,P).error("Failed to parse GithubFactCollector from schema."),new Ge.InputError(e.error.message);return M(this,P).info("VALID GITHUB COLLECTOR SCHEMA"),n.buildExtractorConfigMap(e.data)};let yt=dt;var He=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},Y=(t,e,r)=>(He(t,e,"read from private field"),r?r.call(t):e.get(t)),ce=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},I=(t,e,r,s)=>(He(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),J,O,T;const bt=class Se{constructor(e,r){ce(this,J,void 0),ce(this,O,void 0),ce(this,T,void 0),I(this,J,e),I(this,O,r),I(this,T,!0)}static create(e,r){return new Se(e,r)}async getDefaultBranch(e,r){let s=await Y(this,O).get(e.full_name);if(s!==void 0)return s;const a={owner:e.owner,repo:e.name};try{s=(await r.rest.repos.get(a)).data.default_branch,I(this,T,!0),await Y(this,O).set(e.full_name,s)}catch(o){e.ref?s=e.ref:s="main";const l=`Failed to get default branch name with: ${C(o)}. Request parameters: ${JSON.stringify(a)}. Falling back to using [${s}] as default branch`;I(this,T,L(Y(this,J),Y(this,T),o,l))}return s}};J=new WeakMap,O=new WeakMap,T=new WeakMap;let ft=bt;var xt="Language",vt="Language",wt="object",Tt={type:"integer"},Wt={title:xt,description:vt,type:wt,additionalProperties:Tt},Et=Object.defineProperty,Ht=(t,e,r)=>e in t?Et(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,qt=(t,e,r)=>(Ht(t,typeof e!="symbol"?e+"":e,r),r),qe=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},Q=(t,e,r)=>(qe(t,e,"read from private field"),r?r.call(t):e.get(t)),me=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},W=(t,e,r,s)=>(qe(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),V,G,f;const ge=class{constructor(e,r){me(this,V,void 0),me(this,G,void 0),me(this,f,void 0),W(this,V,e),W(this,f,!0),W(this,G,r)}async extract(e,r,s,a){var o,l;const u=`github:repository_languages:${r.owner}:${r.name}`,m=a?void 0:await re(Q(this,G),u),c={owner:r.owner,repo:r.name,headers:m};try{const i=await s.rest.repos.listLanguages(c);return await Q(this,G).set(u,{etag:(o=i.headers)==null?void 0:o.etag,lastModified:(l=i.headers)==null?void 0:l.date}),W(this,f,!0),i.data}catch(i){if(ee(i))return;if(te(i))return W(this,f,!0),{};const h=`[RepositoryLanguages] fact extraction failed with: ${C(i)}. Request parameters: ${JSON.stringify(c)}`;W(this,f,L(Q(this,V),Q(this,f),i,h));return}}getDataSchema(e){return JSON.stringify(Wt)}};V=new WeakMap,G=new WeakMap,f=new WeakMap,qt(ge,"factory",({logger:t,cache:e})=>{const r=new ge(t,e);return{predicate:s=>s.type==="RepositoryLanguages",extractor:r}});let kt=ge;var Rt=Object.defineProperty,Mt=(t,e,r)=>e in t?Rt(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,F=(t,e,r)=>(Mt(t,typeof e!="symbol"?e+"":e,r),r),he=(t,e,r)=>{if(!e.has(t))throw TypeError("Cannot "+r)},p=(t,e,r)=>(he(t,e,"read from private field"),r?r.call(t):e.get(t)),E=(t,e,r)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,r)},A=(t,e,r,s)=>(he(t,e,"write to private field"),s?s.call(t,r):e.set(t,r),r),St=(t,e,r)=>(he(t,e,"access private method"),r),_,z,X,j,g,_e,ke;const Re=class de{constructor(e,r,s){E(this,_e),E(this,_,void 0),E(this,z,void 0),E(this,X,void 0),E(this,j,void 0),E(this,g,void 0),F(this,"id",de.ID),F(this,"name","Github"),F(this,"description","Collects facts about your Github repositories."),A(this,_,r.child({target:this.id})),A(this,z,fe.ScmIntegrations.fromConfig(e)),A(this,X,fe.DefaultGithubCredentialsProvider.fromIntegrations(p(this,z))),A(this,j,Ne.create({logger:p(this,_),cache:s.getClient(),branchHelper:ft.create(p(this,_),s.getClient({defaultTtl:60*60*1e3})),factories:[et.factory,ut.factory,kt.factory]})),A(this,g,yt.create(p(this,_)))}static create(e,r,s){return new de(e,r,s)}async collect(e,r){const s=St(this,_e,ke).call(this,r);return Promise.all(e.filter(a=>n.isScmEntity(a)).map(async a=>{const o=Ie.stringifyEntityRef(a),l=n.getEntityScmUrl(a),u=je.default(l),m=await this.getOctokit(l);return m?Promise.all(s.map(async c=>{var i;const h=n.getFactRef(this.id,c),ye=await p(this,j).extract(c,u,m,!!((i=r==null?void 0:r.refresh)!=null&&i.includes(h))).catch(Pe=>{p(this,_).error(`Failed to collect ${h} fact data for ${o} entity: ${Pe}`)});if(ye!==void 0)return n.buildFact(o,h,ye)})):Promise.resolve()})).then(a=>a.flat().filter(o=>!!o))}async getOctokit(e){try{const{token:r}=await p(this,X).getCredentials({url:e}),s=p(this,z).github.byUrl(e);return new Oe.Octokit({auth:r,baseUrl:s==null?void 0:s.config.apiBaseUrl})}catch{p(this,_).error(`Cannot collect github information from url ${e}`);return}}async getCollectionConfigs(){return n.buildCollectionConfigs(this.id,p(this,g).getExtractorConfigs())}async getFactNames(){return p(this,g).getExtractorConfigs().map(e=>e.factName)}async getDataSchema(e){const r=n.parseFactRef(e,{defaultSource:this.id,defaultScope:n.DEFAULT_SCOPE}),s=p(this,g).getExtractorConfigs().find(a=>{const o=n.parseFactRef(n.getFactRef(this.id,a));return r.source===o.source&&r.name===o.name});if(s)return p(this,j).getDataSchema(s)}async getConfig(){return p(this,g).getConfig()}async setConfig(e){p(this,g).setConfig(e)}async getConfigSchema(){return JSON.stringify(Be.default(We))}};_=new WeakMap,z=new WeakMap,X=new WeakMap,j=new WeakMap,g=new WeakMap,_e=new WeakSet,ke=function(t){return t!=null&&t.factRefs?p(this,g).getExtractorConfigs().filter(e=>{var r,s;return(s=(r=t==null?void 0:t.factRefs)==null?void 0:r.map(n.stringifyFactRef))==null?void 0:s.includes(n.getFactRef(this.id,e))}):p(this,g).getExtractorConfigs()},F(Re,"ID","github");let Pt=Re;exports.GithubFactCollector=Pt;
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spotify/backstage-plugin-soundcheck-backend-module-github",
|
|
3
3
|
"description": "Soundcheck 3rd party integration with Github",
|
|
4
|
-
"version": "0.4.
|
|
4
|
+
"version": "0.4.4",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.md",
|
|
6
6
|
"homepage": "https://backstage.spotify.com",
|
|
7
7
|
"main": "dist/index.cjs.js",
|
|
@@ -22,20 +22,21 @@
|
|
|
22
22
|
"postpack": "backstage-cli package postpack"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@backstage/cli": "^0.
|
|
25
|
+
"@backstage/cli": "^0.24.0",
|
|
26
26
|
"@types/git-url-parse": "^9.0.0"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@backstage/backend-common": "^0.19.
|
|
29
|
+
"@backstage/backend-common": "^0.19.9",
|
|
30
|
+
"@backstage/backend-plugin-api": "^0.6.7",
|
|
30
31
|
"@backstage/catalog-model": "^1.4.3",
|
|
31
32
|
"@backstage/config": "^1.1.1",
|
|
32
33
|
"@backstage/errors": "^1.2.3",
|
|
33
|
-
"@backstage/integration": "^1.7.
|
|
34
|
+
"@backstage/integration": "^1.7.2",
|
|
34
35
|
"@backstage/types": "^1.1.1",
|
|
35
36
|
"@octokit/request-error": "^5.0.0",
|
|
36
37
|
"@octokit/rest": "^20.0.0",
|
|
37
|
-
"@spotify/backstage-plugin-soundcheck-common": "^0.9.
|
|
38
|
-
"@spotify/backstage-plugin-soundcheck-node": "^0.4.
|
|
38
|
+
"@spotify/backstage-plugin-soundcheck-common": "^0.9.1",
|
|
39
|
+
"@spotify/backstage-plugin-soundcheck-node": "^0.4.4",
|
|
39
40
|
"git-url-parse": "^13.0.0",
|
|
40
41
|
"lodash": "^4.17.21",
|
|
41
42
|
"winston": "^3.2.1",
|