### Required

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L11-L11)[\[2\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L25-L25)
Unexpected console statement. Only these console methods are allowed: warn, error, debug.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L19-L19)
A method that is not declared with `this: void` may cause unintentional scoping of `this` when separated from its object.
Consider using an arrow function or explicitly `.bind()`ing the method to avoid calling the method with an unintended `this` value. 
If a function does not access `this`, it can be annotated with `this: void`.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L69-L69)[\[2\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L121-L121)[\[3\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/settings.ts#L84-L84)[\[4\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/settings.ts#L145-L145)[\[5\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/types/js-yaml.d.ts#L2-L2)[\[6\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/types/js-yaml.d.ts#L3-L3)
Unexpected any. Specify a different type.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L119-L119)
Empty block statement.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L191-L191)
Unexpected use of 'fetch'. Use the built-in `requestUrl` function instead of `fetch` for network requests in Obsidian.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/settings.ts#L65-L65)
Use sentence case for UI text.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/settings.ts#L175-L175)[\[2\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/settings.ts#L253-L253)
Avoid setting styles directly via `element.style.display`. Use CSS classes for better theming and maintainability.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/settings.ts#L249-L249)
Promise returned in function argument where a void return was expected.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/settings.ts#L251-L251)
This assertion is unnecessary since it does not change the type of the expression.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/settings.ts#L274-L274)
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.



---

### Optional

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L1-L1)
'App' is defined but never used.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L108-L108)[\[2\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L119-L119)[\[3\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L154-L154)[\[4\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L166-L166)
'e' is defined but never used.

[\[1\]](https://github.com/BDZendure/domain-image-sorter/blob/0211c5236bb290e16715734485b1ea8c68c51bf4/src/main.ts#L117-L117)
Use 'FileManager.trashFile()' instead of 'Vault.delete()' to respect the user's file deletion preference.

