1use oauth2_client::re_exports::{Deserialize_enum_str, Scope, Serialize_enum_str};
2
3pub const TOKEN_URL: &str = "https://github.com/login/oauth/access_token";
4pub const AUTHORIZATION_URL: &str = "https://github.com/login/oauth/authorize";
5pub const DEVICE_AUTHORIZATION_URL: &str = "https://github.com/login/device/code";
6
7pub mod authorization_code_grant;
8pub mod device_authorization_grant;
9
10pub use authorization_code_grant::GithubProviderWithWebApplication;
11pub use device_authorization_grant::GithubProviderWithDevice;
12
13pub mod extensions;
14pub use extensions::GithubExtensionsBuilder;
15
16#[derive(Deserialize_enum_str, Serialize_enum_str, Debug, Clone, PartialEq, Eq)]
17pub enum GithubScope {
18 #[serde(rename = "repo")]
20 Repo,
21 #[serde(rename = "repo:status")]
22 RepoStatus,
23 #[serde(rename = "repo_deployment")]
24 RepoDeployment,
25 #[serde(rename = "public_repo")]
26 PublicRepo,
27 #[serde(rename = "repo:invite")]
28 RepoInvite,
29 #[serde(rename = "security_events")]
30 SecurityEvents,
31 #[serde(rename = "admin:repo_hook")]
33 AdminRepoHook,
34 #[serde(rename = "write:repo_hook")]
35 WriteRepoHook,
36 #[serde(rename = "read:repo_hook")]
37 ReadRepoHook,
38 #[serde(rename = "admin:org")]
40 AdminOrg,
41 #[serde(rename = "write:org")]
42 WriteOrg,
43 #[serde(rename = "read:org")]
44 ReadOrg,
45 #[serde(rename = "admin:public_key")]
47 AdminPublicKey,
48 #[serde(rename = "write:public_key")]
49 WritePublicKey,
50 #[serde(rename = "read:public_key")]
51 ReadPublicKey,
52 #[serde(rename = "admin:org_hook")]
54 AdminOrgHook,
55 #[serde(rename = "gist")]
57 Gist,
58 #[serde(rename = "notifications")]
60 Notifications,
61 #[serde(rename = "user")]
63 User,
64 #[serde(rename = "read:user")]
65 ReadUser,
66 #[serde(rename = "user:email")]
67 UserEmail,
68 #[serde(rename = "user:follow")]
69 UserFollow,
70 #[serde(rename = "delete_repo")]
72 DeleteRepo,
73 #[serde(rename = "write:discussion")]
75 WriteDiscussion,
76 #[serde(rename = "read:discussion")]
77 ReadDiscussion,
78 #[serde(rename = "write:packages")]
80 WritePackages,
81 #[serde(rename = "read:packages")]
82 ReadPackages,
83 #[serde(rename = "delete:packages")]
84 DeletePackages,
85 #[serde(rename = "admin:gpg_key")]
87 AdminGpgKey,
88 #[serde(rename = "write:gpg_key")]
89 WriteGpgKey,
90 #[serde(rename = "read:gpg_key")]
91 ReadGpgKey,
92 #[serde(rename = "codespace")]
94 Codespace,
95 #[serde(rename = "workflow")]
97 Workflow,
98 #[serde(other)]
102 Other(String),
103}
104impl Scope for GithubScope {}