### Required

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/_base/constants/regex.ts#L5-L5)
Unnecessary escape character: \[.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/_base/services/audio/AudioService.ts#L24-L24)[2](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/_base/services/audio/AudioService.ts#L27-L27)
Expected the Promise rejection reason to be an Error.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/_base/services/transcription/TranscriptionService.ts#L31-L31)
Unexpected `await` of a non-Promise (non-"Thenable") value.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/_base/ui/TranscriptionProgressView.ts#L40-L40)
Async method 'onOpen' has no 'await' expression.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/_base/ui/TranscriptionProgressView.ts#L90-L90)
Async method 'onClose' has no 'await' expression.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L151-L151)[2](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L205-L205)[3](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L210-L210)[4](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/main.ts#L43-L43)
Unsafe assignment of an `any` value.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L151-L151)[2](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L155-L155)[3](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L204-L204)[4](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L205-L205)[5](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L208-L208)[6](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L209-L209)[7](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L210-L210)
Unsafe member access .message on an `any` value.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L204-L204)[2](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L209-L209)
Unsafe argument of type `any` assigned to a parameter of type `string | DocumentFragment`.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L217-L217)[2](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L226-L226)[3](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L233-L233)[4](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/main.ts#L35-L35)
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/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/main.ts#L32-L32)
The command ID should not include the plugin ID.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/manifest.json#L6-L6)
The 'description' property should be concise and follow the submission requirements.



---

### Optional

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L1-L1)
'MarkdownView' is defined but never used.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L1-L1)
'TAbstractFile' is defined but never used.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L6-L6)
'ProgressEvent' is defined but never used.

[1](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/controllers/TranscriptionController.ts#L62-L62)[2](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/main.ts#L73-L73)[3](https://github.com/cha-yh/transcription-audio-obsidian-plugin/blob/def9ca00ad5310c1a304c55bd9f80ea79635dadd/main.ts#L74-L74)
Use sentence case for UI text.

