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

### Required

[[1](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/views/playground.ts#L1)][[2](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/views/playground.ts#L13)][[3](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/views/playground.ts#L23)][[4](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/PlaygroundSelect.ts#L3)][[5](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/PlaygroundSelect.ts#L15)][[6](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/PlaygroundSelect.ts#L21)][[7](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/StarterSelect.ts#L3)][[8](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/StarterSelect.ts#L17)][[9](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/StarterSelect.ts#L33)][[10](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/LanguageSelect.ts#L3)][[11](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/LanguageSelect.ts#L20)][[12](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/LanguageSelect.ts#L36)]:This class is only available on desktop, which means that this will throw errors on mobile (that's a problem since you have `isDesktopOnly` marked as `false` in your manifest.json file.

[[1](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/views/playground.ts#L23)][[2](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/PlaygroundSelect.ts#L21)][[3](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/StarterSelect.ts#L33)][[4](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/LanguageSelect.ts#L36)][[5](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L663)][[6](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L669)][[7](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L675)]:You should not cast this, instead use a `instanceof` check to make sure that it's actually a file/folder

[[1](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/settings/index.ts#L672)][[2](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/StarterSelect.ts#L84)][[3](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/StarterSelect.ts#L85)][[4](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/LanguageSelect.ts#L79)][[5](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/utils/index.ts#L23)][[6](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L217)][[7](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L220)][[8](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L232)][[9](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L537)][[10](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L555)][[11](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L556)][[12](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L657)][[13](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L658)][[14](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L670)][[15](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L671)][[16](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L682)][[17](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L685)][[18](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L779)][[19](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L793)][[20](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L794)][[21](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L806)][[22](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L807)][[23](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L819)][[24](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L820)][[25](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L827)][[26](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L828)][[27](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L893)][[28](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/main.ts#L894)][[29](https://github.com/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/editor/codeblockProcessor.ts#L10)]: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/gapmiss/livecodes-playground/blob/f944445a2c19f81a53a25c98d1a37b0f9774a687/src/modals/PlaygroundSelect.ts#L38)]:You should change all instances of `var` to either `const` or `let`. `var` has function-level scope, so it can easily lead to bugs if you're not careful. Here's a pretty good guide with examples of why not to use `var`: [why `var` is obsolete](https://javascript.plainenglish.io/4-reasons-why-var-is-considered-obsolete-in-modern-javascript-a30296b5f08f)



---



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.