-
Hello!! I was wondering if this could be modified to fetch assignments from Blackboard the same way it does with Canvas? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Heyo, apologies for the slow response. As I don't really have the bandwidth to continue active maintenance of this extension (eg the addition of new features), I'll point you to a Discord message that I sent when someone asked about a similar integration with Google Calendar. If you are not yet already, you will need to join the Discord server for the above message link to work. In shortIn short, I do not believe that it would be too difficult to genericise this extension with a strategy pattern—my original message is copied below. As above, I do not have the time to do this myself—but you are welcome to make these changes and open a PR if you wish.
interface Service {
authenticate(): string;
validateAuthentication(token: string): boolean;
fetchExisting(): SomeLogicalReturnType;
importAssignments(assignments: SomeLogicalInputType): SomeLogicalResponseType;
}
class NotionClient implements Service {
public authenticate() { ... }
public validateAuthentication(token: string) { ... }
public fetchExisting() { ... }
public importAssignments(assignments: SomeLogicalInputType) { ... }
}
class GoogleClient implements Service {
public authenticate() { ... }
public validateAuthentication(token: string) { ... }
public fetchExisting() { ... }
public importAssignments(assignments: SomeLogicalInputType) { ... }
}
class ClientFactory {
// maybe use an enum here, but the idea is this would probably be saved in browser storage
public static getClient(service: 'notion' | 'google'): Service { ... }
}
const importer = ClientFactory.getClient('notion');
importer.importAssignments(...); |
Beta Was this translation helpful? Give feedback.
Heyo, apologies for the slow response.
As I don't really have the bandwidth to continue active maintenance of this extension (eg the addition of new features), I'll point you to a Discord message that I sent when someone asked about a similar integration with Google Calendar.
If you are not yet already, you will need to join the Discord server for the above message link to work.
In short
In short, I do not believe that it would be too difficult to genericise this extension with a strategy pattern—my original message is copied below.
As above, I do not have the time to do this myself—but you are welcome to make these changes and open a PR if you wish.