### Required

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/AttachmentCollector.ts#L93)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/AttachmentCollector.ts#L106)[\[3\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Plugin.ts#L145)[\[4\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Plugin.ts#L327)
Unused eslint-disable directive (no problems were reported from '@typescript-eslint/no-unnecessary-condition').

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/AttachmentCollector.ts#L147)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/AttachmentCollector.ts#L197)[\[3\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/AttachmentPath.ts#L49)
Unused eslint-disable directive (no problems were reported from 'require-atomic-updates').

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/AttachmentCollector.ts#L284-L284)
Avoid casting to 'TFile'. Use an 'instanceof TFile' check to safely narrow the type.

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Plugin.ts#L13-L13)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Substitutions.ts#L8-L8)
'moment' import is restricted from being used. The 'moment' package is bundled with Obsidian. Please import it from 'obsidian' instead.

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Plugin.ts#L128-L128)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Plugin.ts#L479-L479)[\[3\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Plugin.ts#L542-L542)
Unexpected aliasing of 'this' to local variable.

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Plugin.ts#L260-L260)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L64-L64)[\[3\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L65-L65)
Unexpected var, use let or const instead.

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Plugin.ts#L597-L597)
Unexpected use of 'fetch'. Use the built-in `requestUrl` function instead of `fetch` for network requests in Obsidian.

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettings.ts#L44)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettings.ts#L54)[\[3\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsManager.ts#L32)[\[4\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsManager.ts#L156)[\[5\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsManager.ts#L187)[\[6\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsManager.ts#L465)
Unused eslint-disable directive (no problems were reported from 'no-template-curly-in-string').

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettings.ts#L56)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettings.ts#L66)
Unused eslint-disable directive (no problems were reported from 'no-magic-numbers').

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L133-L133)
Async arrow function has no 'await' expression.

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L135-L135)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L151-L151)[\[3\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L159-L159)[\[4\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L167-L167)
Promises must be awaited, end with a call to .catch, end with a call to .then with a rejection handler or be explicitly marked as ignored with the `void` operator.

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L146-L146)[\[2\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L147-L147)[\[3\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L148-L148)[\[4\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PluginSettingsTab.ts#L196-L196)
Use sentence case for UI text.

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PrismComponent.ts#L56)
Unused eslint-disable directive (no problems were reported from '@typescript-eslint/no-dynamic-delete').

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/Substitutions.ts#L100)
Unused eslint-disable directive (no problems were reported from 'no-new-func').



---

### Optional

[\[1\]](https://github.com/cnzf1/obsidian-paste-image/blob/23963ebad95ccefbf7eff28523b83338b71a1460/src/PromptWithPreviewModal.ts#L39-L39)
Use 'FileManager.trashFile()' instead of 'Vault.delete()' to respect the user's file deletion preference.

