Releases: SATOSprod/Voice-to-Text
Releases · SATOSprod/Voice-to-Text
Release list
2.1.2
2.1.1
2.1.0
| Problem | Solution |
|---|---|
| no-unsupported-api (createFolder) | Vault.createFolder throws an exception on an existing folder since version 1.4.0 — the API is incompatible with minAppVersion: 0.15.0. Raised minAppVersion to 1.4.0 in manifest.json and package.json docs.obsidian. |
| Unsafe innerHTML | Replaced with safe DOM node creation via DOMParser and appendChild, without directly writing the HTML string. |
| HTML headings (h2/h3) | Replaced with new Setting(containerEl).setName(...).setHeading() obsidian. |
| Static styles (style.cssText) | Moved to the .vtt-clear-btn CSS class in styles.css. |
| fetch instead of requestUrl | Replaced both requests with requestUrl from the Obsidian API docs.obsidian. For Groq (multipart/form-data), manually assembled the request body, as requestUrl doesn't support FormData. |
| Unsafe any/error types | API responses are typed via unknown + explicit interfaces (DeepgramResponse, GroqResponse) with type checks. |
| Non-waiting promises | Added void before startRecording() calls, wrapped clipboard.writeText in a try/catch with .catch. |
| document → activeDocument | Replaced all calls. |
| setTimeout/clearTimeout | Replaced with window.setTimeout/window.clearTimeout. |
| Promise in void callbacks | Asynchronous logic is wrapped in void (async () => {...})(). |
| builtin-modules in package.json | Dependency removed (not needed, as the plugin doesn't directly use Node.js builtin modules at runtime). |
| Unused MIC_SVG/REC_SVG | Removed (the status bar doesn't use them anyway—the code was commented out). |
| display() deprecated | Since minAppVersion is now 1.4.0 (< 1.13.0), the no-deprecated-display rule doesn't apply—display() is required for versions below 1.13.0 obsidian. |