-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathGithubPermalinkRscConfig.ts
More file actions
39 lines (31 loc) · 1011 Bytes
/
GithubPermalinkRscConfig.ts
File metadata and controls
39 lines (31 loc) · 1011 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import { BaseConfiguration } from "./BaseConfiguration";
import { defaultGetIssueFn, defaultGetPermalinkFn } from "./defaultFunctions";
const defaultConfiguration = {
getDataFn: defaultGetPermalinkFn,
getIssueFn: defaultGetIssueFn,
};
class GithubPermalinkRscConfig {
private baseConfiguration: BaseConfiguration = defaultConfiguration;
public setConfig(options?: Partial<BaseConfiguration>) {
this.baseConfiguration = {
...defaultConfiguration,
...(options ?? {}),
};
}
public getPermalinkFn() {
return this.baseConfiguration.getDataFn;
}
public getIssueFn() {
return this.baseConfiguration.getIssueFn;
}
public getGithubToken() {
return this.baseConfiguration.githubToken;
}
public getOnError() {
return this.baseConfiguration.onError;
}
public getInitiallyExpandGithubPermalinks() {
return this.baseConfiguration.initiallyExpandGithubPermalinks ?? true;
}
}
export const githubPermalinkRscConfig = new GithubPermalinkRscConfig();