Thank you for your submission, an automated scan of your plugin code's revealed the following issues:

### Required

[[1](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L210)][[2](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L213)][[3](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L216)][[4](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L219)][[5](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L222)][[6](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L229)][[7](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L232)][[8](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L235)][[9](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L238)][[10](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L241)][[11](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L447)][[12](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L463)][[13](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L468)][[14](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/settings.ts#L478)][[15](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/import-button-text.test.ts#L30)][[16](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/settings.test.ts#L26)]:Using `innerHTML`, `outerHTML` or similar API's is a security risk. Instead, use the DOM API or the Obsidian helper functions: <https://docs.obsidian.md/Plugins/User+interface/HTML+elements>

[[1](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/tooltip-manager.ts#L93)][[2](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/tooltip-manager.ts#L94)][[3](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/tooltip-manager.ts#L95)][[4](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/tooltip-manager.ts#L96)][[5](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/tooltip-manager.ts#L97)][[6](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L36)][[7](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L91)][[8](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L130)][[9](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L141)][[10](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L149)][[11](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L157)][[12](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L170)][[13](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L172)][[14](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L174)][[15](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L176)][[16](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L182)][[17](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L192)][[18](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L205)][[19](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L295)][[20](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L330)][[21](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L499)][[22](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L508)][[23](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L514)][[24](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L523)][[25](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L532)][[26](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L558)][[27](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L569)][[28](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L579)][[29](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L583)][[30](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-options-modal.ts#L587)] and more :You should avoid assigning styles via JavaScript or in HTML and instead move all these styles into CSS so that they are more easily adaptable by themes and snippets.


[[1](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/main.ts#L58)]:The command name should not include the plugin name.

[[1](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/logger.ts#L49)][[2](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L44)][[3](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L74)][[4](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L78)][[5](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L113)][[6](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L120)][[7](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L140)][[8](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L153)][[9](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L174)][[10](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L228)][[11](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L248)][[12](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L304)][[13](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L319)][[14](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L332)][[15](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L344)][[16](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/logger.test.ts#L351)][[17](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/source-url-import-test.test.ts#L55)][[18](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/source-url-import-test.test.ts#L79)][[19](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/source-url-import-test.test.ts#L99)][[20](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/source-url-import-test.test.ts#L119)][[21](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/source-url-import-test.test.ts#L146)]:You should consider limiting the number of `console.log`s in your code, to not pollute the dev console.



---

### Optional

[[1](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-service.ts#L45)][[2](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-service.ts#L439)][[3](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/src/import-service.ts#L444)][[4](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/main.ts#L150)][[5](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/main.ts#L151)][[6](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L90)][[7](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L102)][[8](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L114)][[9](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L133)][[10](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L148)][[11](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L163)][[12](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L180)][[13](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L192)][[14](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L204)][[15](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L216)][[16](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L254)][[17](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L278)][[18](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/command-integration.test.ts#L298)][[19](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/error-handling-integration.test.ts#L83)][[20](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/import-workflow.test.ts#L44)][[21](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/integration/search-workflow.test.ts#L38)][[22](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/api-source-url-test.test.ts#L17-L23)][[23](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/command-functionality.test.ts#L73)][[24](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/command-functionality.test.ts#L101)][[25](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/command-functionality.test.ts#L122)][[26](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/command-functionality.test.ts#L139)][[27](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/command-functionality.test.ts#L160)][[28](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/command-functionality.test.ts#L186)][[29](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/command-functionality.test.ts#L199)][[30](https://github.com/eristoddle/joplin-portal/blob/2e0d3456d034d77fe96a6e991e9d01fce7dae5f4/tests/unit/command-functionality.test.ts#L211)] and more :Casting to `any` should be avoided as much as possible.



---



Do <b>NOT</b> open a new PR for re-validation.
Once you have pushed all of the required changes to your repo, the bot will update the labels on this PR within 6 hours.
If you think some of the required changes are incorrect, please comment with `/skip` and the reason why you think the results are incorrect.