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

### Required

[[1](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/dailynote/DailyNoteProvider.ts#L71)][[2](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L312)][[3](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/core/EventCache.test.ts#L299)][[4](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/core/EventCache.test.ts#L619)][[5](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/core/EventStore.test.ts#L17)][[6](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/test_helpers/AppBuilder.test.ts#L81)][[7](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/test_helpers/AppBuilder.test.ts#L91)][[8](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/test_helpers/AppBuilder.test.ts#L158)][[9](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/test_helpers/AppBuilder.test.ts#L178)][[10](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/test_helpers/AppBuilder.test.ts#L207)][[11](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/test_helpers/AppBuilder.test.ts#L259)]:You should not cast this, instead use a `instanceof` check to make sure that it's actually a file/folder.

[[1](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/calendar.ts#L340)][[2](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/calendar.ts#L341)][[3](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/plotter.ts#L567)][[4](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/plotter.ts#L589)][[5](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/ui.ts#L83)][[6](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/ui.ts#L101)][[7](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/ui.ts#L106)][[8](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/ui.ts#L143)][[9](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/ui.ts#L149)][[10](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/ui.ts#L151)][[11](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/components/DetailPopup.ts#L94)][[12](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/components/DetailPopup.ts#L100)][[13](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/UIService.ts#L480)][[14](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/UIService.ts#L485)]: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/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/dom.ts#L6)][[2](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/plotter.ts#L37)][[3](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/components/InsightsRenderer.ts#L24)][[4](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/components/InsightsRenderer.ts#L26)][[5](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/chrono_analyser/ui/components/InsightsRenderer.ts#L162)]: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/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/main.ts#L280)][[2](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/main.ts#L281)]:Do not detach leaves with your custom view in `onunload`, this is an antipattern, see: <https://docs.obsidian.md/Plugins/Releasing/Plugin+guidelines#Don't+detach+leaves+in+%60onunload%60>



---

### Optional

[[1](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/features/recur_events/RecurringEventManager.ts#L182)][[2](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/features/recur_events/RecurringEventManager.ts#L305)][[3](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/features/recur_events/RecurringEventManager.ts#L469)][[4](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/features/recur_events/RecurringEventManager.ts#L509)][[5](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/core/EventCache.ts#L144)][[6](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/core/EventCache.ts#L229)][[7](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/core/EventCache.ts#L254)][[8](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/core/EventCache.ts#L986)][[9](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/features/google_auth/GoogleAuthManager.ts#L191)][[10](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/google/GoogleProvider.ts#L52)][[11](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/google/GoogleProvider.ts#L119)][[12](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/google/GoogleProvider.ts#L139)][[13](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/google/GoogleProvider.ts#L176)][[14](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/google/GoogleProvider.ts#L187)][[15](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/google/GoogleProvider.ts#L224)][[16](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L64)][[17](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L73)][[18](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L106)][[19](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L116)][[20](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L275)][[21](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L349)][[22](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L407)][[23](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/providers/ProviderRegistry.ts#L411)][[24](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/settings/LazySettingsTab.ts#L43)][[25](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/calendar.ts#L76)][[26](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/calendar.ts#L254)][[27](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/calendar.ts#L255)][[28](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/calendar.ts#L256)][[29](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/calendar.ts#L257)][[30](https://github.com/YouFoundJK/plugin-full-calendar/blob/1733b06b731570c8185a64918e4a6fc1d271751e/src/ui/calendar.ts#L258)] 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.