Auto-commit 2026-04-29 16:31
This commit is contained in:
58
node_modules/next-auth/providers/todoist.js
generated
vendored
Normal file
58
node_modules/next-auth/providers/todoist.js
generated
vendored
Normal file
@@ -0,0 +1,58 @@
|
||||
"use strict";
|
||||
|
||||
Object.defineProperty(exports, "__esModule", {
|
||||
value: true
|
||||
});
|
||||
exports.default = TodoistProvider;
|
||||
function TodoistProvider(options) {
|
||||
return {
|
||||
id: "todoist",
|
||||
name: "Todoist",
|
||||
type: "oauth",
|
||||
authorization: {
|
||||
url: "https://todoist.com/oauth/authorize",
|
||||
params: {
|
||||
scope: "data:read"
|
||||
}
|
||||
},
|
||||
token: "https://todoist.com/oauth/access_token",
|
||||
client: {
|
||||
token_endpoint_auth_method: "client_secret_post"
|
||||
},
|
||||
userinfo: {
|
||||
request: async ({
|
||||
tokens
|
||||
}) => {
|
||||
const res = await fetch("https://api.todoist.com/sync/v9/sync", {
|
||||
method: "POST",
|
||||
headers: {
|
||||
Authorization: `Bearer ${tokens.access_token}`,
|
||||
"Content-Type": "application/json"
|
||||
},
|
||||
body: JSON.stringify({
|
||||
sync_token: "*",
|
||||
resource_types: '["user"]'
|
||||
})
|
||||
});
|
||||
const {
|
||||
user: profile
|
||||
} = await res.json();
|
||||
return profile;
|
||||
}
|
||||
},
|
||||
profile: async profile => {
|
||||
return {
|
||||
id: profile.id,
|
||||
email: profile.email,
|
||||
name: profile.full_name,
|
||||
image: profile.avatar_big
|
||||
};
|
||||
},
|
||||
style: {
|
||||
logo: "/todoist.svg",
|
||||
text: "#000",
|
||||
bg: "#E44332"
|
||||
},
|
||||
...options
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user