Add eslint. Add funding URLs.

This commit is contained in:
Evan Harmon
2023-11-05 12:03:55 -07:00
parent b41a94cbce
commit f9c98d1c6e
3 changed files with 15 additions and 10 deletions

16
main.ts
View File

@@ -98,10 +98,10 @@ export default class WikipediaData extends Plugin {
handleDisambiguation(searchTerm: string, disambiguationUrl: string) { handleDisambiguation(searchTerm: string, disambiguationUrl: string) {
// TODO: Use Obsidian DOM API instead of innerHTML? // TODO: Use Obsidian DOM API instead of innerHTML?
// Create DOM element to put a URL in the Obisidan Notice for the user to be able to open that Wikipedia disambiguation page. // Create DOM element to put a URL in the Obisidan Notice for the user to be able to open that Wikipedia disambiguation page.
let linkElement = document.createElement("a"); const linkElement = document.createElement("a");
linkElement.innerHTML = `${searchTerm} Disambiguation Page\n`; linkElement.innerHTML = `${searchTerm} Disambiguation Page\n`;
linkElement.href = `${disambiguationUrl}`; linkElement.href = `${disambiguationUrl}`;
let fragment = new DocumentFragment; const fragment = new DocumentFragment;
fragment.appendChild(linkElement); fragment.appendChild(linkElement);
new Notice(`${searchTerm} returned a disambiguation page.`, 10000) new Notice(`${searchTerm} returned a disambiguation page.`, 10000)
new Notice(fragment, 10000); new Notice(fragment, 10000);
@@ -121,7 +121,7 @@ export default class WikipediaData extends Plugin {
// Split WikiText.fullText into paragraphs, extract just the intro section, and apply paragraphTemplate to each paragraph. // Split WikiText.fullText into paragraphs, extract just the intro section, and apply paragraphTemplate to each paragraph.
formatMediaWikiActionApiIntroText(mediaWikiActionApiResponse: MediaWikiActionApiResponse, searchTerm: string): string { formatMediaWikiActionApiIntroText(mediaWikiActionApiResponse: MediaWikiActionApiResponse, searchTerm: string): string {
const text = mediaWikiActionApiResponse.fullText; const text = mediaWikiActionApiResponse.fullText;
let formattedText: string = ""; let formattedText = "";
if (this.settings.useParagraphTemplate) { if (this.settings.useParagraphTemplate) {
const split = text.split("==")[0].trim().split("\n"); const split = text.split("==")[0].trim().split("\n");
formattedText = split formattedText = split
@@ -182,7 +182,7 @@ export default class WikipediaData extends Plugin {
return parsedWikimediaApiResponse; return parsedWikimediaApiResponse;
} }
parseMediaWikiApiResponse(json: any): MediaWikiApiResponse | undefined {; parseMediaWikiApiResponse(json: any): MediaWikiApiResponse | undefined {
const parsedMediaWikiApiResponse: MediaWikiApiResponse = { const parsedMediaWikiApiResponse: MediaWikiApiResponse = {
resultCount: json.pages.length, resultCount: json.pages.length,
id: json.pages[0].id, id: json.pages[0].id,
@@ -253,10 +253,10 @@ export default class WikipediaData extends Plugin {
} }
async pasteIntoEditor(editor: Editor, searchTerm: string, wikipediaTemplateNum: number) { async pasteIntoEditor(editor: Editor, searchTerm: string, wikipediaTemplateNum: number) {
// TODO: Fix typing here that needs as WikiSearch and as WikimediaData. // TODO: Fix typing here that needs as WikiSearch and as WikimediaData?
let mediaWikiApiResponse: MediaWikiApiResponse = await this.getMediaWikiApiResponse(searchTerm) as MediaWikiApiResponse; const mediaWikiApiResponse: MediaWikiApiResponse = await this.getMediaWikiApiResponse(searchTerm) as MediaWikiApiResponse;
let wikimediaApiResponse: WikimediaApiResponse = await this.getWikimediaApiResponse(mediaWikiApiResponse.title) as WikimediaApiResponse; const wikimediaApiResponse: WikimediaApiResponse = await this.getWikimediaApiResponse(mediaWikiApiResponse.title) as WikimediaApiResponse;
let mediaWikiActionApiResponse: MediaWikiActionApiResponse = await this.getMediaWikiActionApiResponse(mediaWikiApiResponse.id) as MediaWikiActionApiResponse; const mediaWikiActionApiResponse: MediaWikiActionApiResponse = await this.getMediaWikiActionApiResponse(mediaWikiApiResponse.id) as MediaWikiActionApiResponse;
if (!mediaWikiApiResponse) { if (!mediaWikiApiResponse) {
this.handleNotFound(searchTerm); this.handleNotFound(searchTerm);
return; return;

View File

@@ -6,5 +6,9 @@
"description": "Query Wikipedia APIs and automatically insert data to your notes with custom templates.", "description": "Query Wikipedia APIs and automatically insert data to your notes with custom templates.",
"author": "Evan Harmon", "author": "Evan Harmon",
"authorUrl": "https://www.evanharmon.com", "authorUrl": "https://www.evanharmon.com",
"isDesktopOnly": false "isDesktopOnly": false,
"fundingUrl": {
"GitHub Sponsor": "https://github.com/sponsors/evanharmon1",
"Buy Me a Coffee": "https://www.buymeacoffee.com/app/dashboard"
}
} }

View File

@@ -8,7 +8,8 @@
"build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production", "build": "tsc -noEmit -skipLibCheck && node esbuild.config.mjs production",
"installPlugin": "npm run build && mkdir $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data ; cp {main.js,manifest.json} $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data/", "installPlugin": "npm run build && mkdir $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data ; cp {main.js,manifest.json} $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data/",
"installPluginHotReload": "npm run build && mkdir $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data ; cp {main.js,manifest.json} $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data/ && touch $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data/.hotreload", "installPluginHotReload": "npm run build && mkdir $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data ; cp {main.js,manifest.json} $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data/ && touch $obsidianVault/.obsidian/plugins/obsidian-wikipedia-data/.hotreload",
"version": "node version-bump.mjs && git add manifest.json versions.json" "version": "node version-bump.mjs && git add manifest.json versions.json",
"lint": "eslint main.ts"
}, },
"keywords": [], "keywords": [],
"author": "Evan Harmon", "author": "Evan Harmon",