opencode-groq-dictate 1.1.8 → 1.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +3 -3
  2. package/package.json +1 -1
  3. package/tui.tsx +10 -11
package/README.md CHANGED
@@ -68,17 +68,17 @@ clone out of `~/.config/opencode/plugins/` before installing from npm.
68
68
  |-----|--------|
69
69
  | `alt+v` | start recording, press again to stop and transcribe |
70
70
  | `ctrl+alt+v` | same, but the prompt is submitted as soon as the text lands |
71
- | click on `🎤 Groq Dictate` or on the `state` row | same as `alt+v` |
71
+ | click on `Groq Dictate` or on the `state` row | same as `alt+v` |
72
72
  | `ctrl+click` on the same two | same as `ctrl+alt+v` |
73
73
  | `esc` | cancel the take: no upload, no request, no cost |
74
74
  | `/dictate` | same as `alt+v`, from the command palette |
75
- | `⚙` next to the title | open the settings panel |
75
+ | `settings` next to the title | open the settings panel |
76
76
 
77
77
  A take stops on its own after 60 seconds. Everything else is in the palette under
78
78
  **Voice**: `Dictate (Groq) and submit`, `Dictation model`, `Dictation language`,
79
79
  `Dictation quota`, `Dictation settings`.
80
80
 
81
- The `⚙` panel (or `Dictation settings` in the palette) holds the four things worth
81
+ The `settings` panel (or `Dictation settings` in the palette) holds the four things worth
82
82
  changing: the two shortcuts, the model and the language. Click a row, write the new
83
83
  value, and it applies at once — the keymap layer reads the stored config, so a new
84
84
  combination works without restarting OpenCode. A blank shortcut disables the key but
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-groq-dictate",
3
- "version": "1.1.8",
3
+ "version": "1.1.10",
4
4
  "description": "Groq dictation in the OpenCode v2 TUI: alt+v records, transcribes with whisper-large-v3-turbo, and pastes the text into the prompt.",
5
5
  "private": false,
6
6
  "type": "module",
package/tui.tsx CHANGED
@@ -468,12 +468,13 @@ export default Plugin.define({
468
468
  // dot sits next to them and disappears when there is nothing to report.
469
469
  context.ui.slot({
470
470
  append: "prompt.footer.status",
471
+ // Always return an element: the host reads .length on what the render
472
+ // returns, and a <Show> that resolves to nothing hands it undefined,
473
+ // which crashes the slot ("evaluating 'e.length'") on v2.1.0.
471
474
  render: () => (
472
- <Show when={recording() || busy()}>
473
- <text fg={recording() ? red() : amber()}>
474
- {recording() ? `● REC ${elapsed()}s` : "● …"}
475
- </text>
476
- </Show>
475
+ <text fg={recording() ? red() : amber()}>
476
+ {recording() ? `● REC ${elapsed()}s` : busy() ? "● …" : ""}
477
+ </text>
477
478
  ),
478
479
  })
479
480
 
@@ -511,12 +512,10 @@ export default Plugin.define({
511
512
  return (
512
513
  <box flexDirection="column">
513
514
  <box flexDirection="row" gap={1}>
514
- <text fg={muted()} onMouseUp={(event) => toggle(wantsSubmit(event))}>
515
- {"🎤 Groq Dictate"}
516
- </text>
517
- <text fg={muted()} onMouseUp={() => openSettings()}>
518
- {"⚙"}
519
- </text>
515
+ {/* Plain glyphs: the emoji did not render in every terminal font. */}
516
+ <text fg={state()}>{"■"}</text>
517
+ <text onMouseUp={(event) => toggle(wantsSubmit(event))}>{"Groq Dictate"}</text>
518
+ <text fg={muted()} onMouseUp={() => openSettings()}>{"settings"}</text>
520
519
  </box>
521
520
  {row(
522
521
  "state",