@speechos/client 0.2.1 → 0.2.3

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 (87) hide show
  1. package/dist/config.d.ts +68 -0
  2. package/dist/config.d.ts.map +1 -0
  3. package/dist/form-detector.d.cts +25 -0
  4. package/dist/form-detector.d.ts +16 -1
  5. package/dist/form-detector.d.ts.map +1 -1
  6. package/dist/index.cjs +5584 -1525
  7. package/dist/index.cjs.map +1 -1
  8. package/dist/index.d.cts +13 -0
  9. package/dist/index.d.ts +19 -3
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.iife.js +6761 -1713
  12. package/dist/index.iife.js.map +1 -1
  13. package/dist/index.iife.min.js +2126 -392
  14. package/dist/index.iife.min.js.map +1 -1
  15. package/dist/index.js +5528 -1520
  16. package/dist/index.js.map +1 -1
  17. package/dist/speechos.d.cts +74 -0
  18. package/dist/speechos.d.ts +47 -5
  19. package/dist/speechos.d.ts.map +1 -1
  20. package/dist/speechos.test.d.ts +5 -0
  21. package/dist/speechos.test.d.ts.map +1 -0
  22. package/dist/stores/audio-settings.d.ts +45 -0
  23. package/dist/stores/audio-settings.d.ts.map +1 -0
  24. package/dist/stores/index.d.ts +15 -0
  25. package/dist/stores/index.d.ts.map +1 -0
  26. package/dist/stores/language-settings.d.ts +106 -0
  27. package/dist/stores/language-settings.d.ts.map +1 -0
  28. package/dist/stores/snippets-store.d.ts +72 -0
  29. package/dist/stores/snippets-store.d.ts.map +1 -0
  30. package/dist/stores/snippets-store.test.d.ts +5 -0
  31. package/dist/stores/snippets-store.test.d.ts.map +1 -0
  32. package/dist/stores/transcript-store.d.ts +54 -0
  33. package/dist/stores/transcript-store.d.ts.map +1 -0
  34. package/dist/stores/transcript-store.test.d.ts +5 -0
  35. package/dist/stores/transcript-store.test.d.ts.map +1 -0
  36. package/dist/stores/vocabulary-store.d.ts +63 -0
  37. package/dist/stores/vocabulary-store.d.ts.map +1 -0
  38. package/dist/stores/vocabulary-store.test.d.ts +5 -0
  39. package/dist/stores/vocabulary-store.test.d.ts.map +1 -0
  40. package/dist/text-input-handler.d.ts +73 -0
  41. package/dist/text-input-handler.d.ts.map +1 -0
  42. package/dist/text-input-handler.test.d.ts +5 -0
  43. package/dist/text-input-handler.test.d.ts.map +1 -0
  44. package/dist/ui/action-bubbles.d.cts +17 -0
  45. package/dist/ui/action-bubbles.d.ts +5 -1
  46. package/dist/ui/action-bubbles.d.ts.map +1 -1
  47. package/dist/ui/audio-level-meter.d.ts +31 -0
  48. package/dist/ui/audio-level-meter.d.ts.map +1 -0
  49. package/dist/ui/audio-visualizer.d.ts +29 -0
  50. package/dist/ui/audio-visualizer.d.ts.map +1 -0
  51. package/dist/ui/icons.d.cts +88 -0
  52. package/dist/ui/icons.d.ts +30 -0
  53. package/dist/ui/icons.d.ts.map +1 -1
  54. package/dist/ui/index.d.cts +20 -0
  55. package/dist/ui/index.d.ts +4 -0
  56. package/dist/ui/index.d.ts.map +1 -1
  57. package/dist/ui/mic-button.d.cts +34 -0
  58. package/dist/ui/mic-button.d.ts +2 -0
  59. package/dist/ui/mic-button.d.ts.map +1 -1
  60. package/dist/ui/settings-button.d.cts +16 -0
  61. package/dist/ui/settings-button.d.ts.map +1 -1
  62. package/dist/ui/settings-modal.d.cts +34 -0
  63. package/dist/ui/settings-modal.d.ts +13 -14
  64. package/dist/ui/settings-modal.d.ts.map +1 -1
  65. package/dist/ui/styles/modal-styles.d.ts +10 -0
  66. package/dist/ui/styles/modal-styles.d.ts.map +1 -0
  67. package/dist/ui/styles/theme.d.cts +17 -0
  68. package/dist/ui/tabs/about-tab.d.ts +14 -0
  69. package/dist/ui/tabs/about-tab.d.ts.map +1 -0
  70. package/dist/ui/tabs/help-tab.d.ts +14 -0
  71. package/dist/ui/tabs/help-tab.d.ts.map +1 -0
  72. package/dist/ui/tabs/history-tab.d.ts +26 -0
  73. package/dist/ui/tabs/history-tab.d.ts.map +1 -0
  74. package/dist/ui/tabs/index.d.ts +10 -0
  75. package/dist/ui/tabs/index.d.ts.map +1 -0
  76. package/dist/ui/tabs/settings-tab.d.ts +42 -0
  77. package/dist/ui/tabs/settings-tab.d.ts.map +1 -0
  78. package/dist/ui/tabs/snippets-tab.d.ts +34 -0
  79. package/dist/ui/tabs/snippets-tab.d.ts.map +1 -0
  80. package/dist/ui/tabs/vocabulary-tab.d.ts +30 -0
  81. package/dist/ui/tabs/vocabulary-tab.d.ts.map +1 -0
  82. package/dist/ui/widget.d.cts +64 -0
  83. package/dist/ui/widget.d.ts +22 -0
  84. package/dist/ui/widget.d.ts.map +1 -1
  85. package/dist/ui/widget.test.d.ts +6 -0
  86. package/dist/ui/widget.test.d.ts.map +1 -0
  87. package/package.json +5 -4
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Text input handler for SpeechOS Client SDK
3
+ * Abstracts cursor/selection detection and text insertion/replacement operations
4
+ */
5
+ /**
6
+ * Selection/cursor position info from an element
7
+ */
8
+ export interface SelectionInfo {
9
+ /** Start position of cursor/selection */
10
+ start: number | null;
11
+ /** End position of cursor/selection */
12
+ end: number | null;
13
+ /** Selected text (empty string if just cursor) */
14
+ text: string;
15
+ }
16
+ /**
17
+ * Interface for handling text input operations (cursor detection, text insertion)
18
+ * Allows customization of how the widget interacts with form elements
19
+ */
20
+ export interface TextInputHandlerInterface {
21
+ /**
22
+ * Get the current cursor/selection position from an element
23
+ */
24
+ getSelection(element: HTMLElement): SelectionInfo;
25
+ /**
26
+ * Get content from an element (selected portion if selection exists, otherwise full content)
27
+ */
28
+ getContent(element: HTMLElement, selection?: SelectionInfo): string;
29
+ /**
30
+ * Insert text at the cursor position (for dictation)
31
+ */
32
+ insertText(element: HTMLElement, text: string, cursorPosition?: SelectionInfo): void;
33
+ /**
34
+ * Replace content/selection with new text (for edit)
35
+ */
36
+ replaceContent(element: HTMLElement, text: string, selection?: SelectionInfo): void;
37
+ }
38
+ /**
39
+ * Default implementation of TextInputHandler
40
+ * Handles input, textarea, and contenteditable elements
41
+ */
42
+ export declare class DefaultTextInputHandler implements TextInputHandlerInterface {
43
+ /**
44
+ * Get the current cursor/selection position from an element
45
+ */
46
+ getSelection(element: HTMLElement): SelectionInfo;
47
+ /**
48
+ * Get content from an element (selected portion if selection exists, otherwise full content)
49
+ */
50
+ getContent(element: HTMLElement, selection?: SelectionInfo): string;
51
+ /**
52
+ * Insert text at the cursor position (for dictation)
53
+ */
54
+ insertText(element: HTMLElement, text: string, cursorPosition?: SelectionInfo): void;
55
+ /**
56
+ * Replace content/selection with new text (for edit)
57
+ */
58
+ replaceContent(element: HTMLElement, text: string, selection?: SelectionInfo): void;
59
+ }
60
+ export declare const defaultTextInputHandler: TextInputHandlerInterface;
61
+ /**
62
+ * Set the text input handler
63
+ */
64
+ export declare function setTextInputHandler(handler: TextInputHandlerInterface): void;
65
+ /**
66
+ * Get the current text input handler
67
+ */
68
+ export declare function getTextInputHandler(): TextInputHandlerInterface;
69
+ /**
70
+ * Reset to default text input handler
71
+ */
72
+ export declare function resetTextInputHandler(): void;
73
+ //# sourceMappingURL=text-input-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-input-handler.d.ts","sourceRoot":"","sources":["../src/text-input-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,uCAAuC;IACvC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa,CAAC;IAElD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;IAEpE;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAErF;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CACrF;AAaD;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,yBAAyB;IACvE;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,aAAa;IAmCjD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,aAAa,GAAG,MAAM;IA6BnE;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,aAAa,GAAG,IAAI;IA0CpF;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI;CA4CpF;AAGD,eAAO,MAAM,uBAAuB,EAAE,yBAAyD,CAAC;AAKhG;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,yBAAyB,GAAG,IAAI,CAE5E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,yBAAyB,CAE/D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Tests for TextInputHandler
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=text-input-handler.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-input-handler.test.d.ts","sourceRoot":"","sources":["../src/text-input-handler.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Action bubbles component
3
+ * Displays available actions (Dictate, Edit) above the mic button
4
+ */
5
+ import { LitElement, type CSSResultGroup } from "lit";
6
+ export declare class SpeechOSActionBubbles extends LitElement {
7
+ static styles: CSSResultGroup;
8
+ visible: boolean;
9
+ private actions;
10
+ private handleActionClick;
11
+ render(): import("lit").TemplateResult | string;
12
+ }
13
+ declare global {
14
+ interface HTMLElementTagNameMap {
15
+ "speechos-action-bubbles": SpeechOSActionBubbles;
16
+ }
17
+ }
@@ -6,7 +6,11 @@ import { LitElement, type CSSResultGroup } from "lit";
6
6
  export declare class SpeechOSActionBubbles extends LitElement {
7
7
  static styles: CSSResultGroup;
8
8
  visible: boolean;
9
- private actions;
9
+ /**
10
+ * Get the list of available actions based on configuration.
11
+ * Command button only appears if commands are configured.
12
+ */
13
+ private get actions();
10
14
  private handleActionClick;
11
15
  render(): import("lit").TemplateResult | string;
12
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"action-bubbles.d.ts","sourceRoot":"","sources":["../../src/ui/action-bubbles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAYjE,qBACa,qBAAsB,SAAQ,UAAU;IACnD,MAAM,CAAC,MAAM,EAAE,cAAc,CAmF3B;IAGF,OAAO,UAAS;IAEhB,OAAO,CAAC,OAAO,CAWb;IAEF,OAAO,CAAC,iBAAiB;IAgBzB,MAAM,IAAI,OAAO,KAAK,EAAE,cAAc,GAAG,MAAM;CAuBhD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,yBAAyB,EAAE,qBAAqB,CAAC;KAClD;CACF"}
1
+ {"version":3,"file":"action-bubbles.d.ts","sourceRoot":"","sources":["../../src/ui/action-bubbles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAajE,qBACa,qBAAsB,SAAQ,UAAU;IACnD,MAAM,CAAC,MAAM,EAAE,cAAc,CAoH3B;IAGF,OAAO,UAAS;IAEhB;;;OAGG;IACH,OAAO,KAAK,OAAO,GAyBlB;IAED,OAAO,CAAC,iBAAiB;IAgBzB,MAAM,IAAI,OAAO,KAAK,EAAE,cAAc,GAAG,MAAM;CAuBhD;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,yBAAyB,EAAE,qBAAqB,CAAC;KAClD;CACF"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Audio level meter component
3
+ * Displays real-time audio amplitude visualization for microphone input
4
+ */
5
+ import { LitElement, type CSSResultGroup } from "lit";
6
+ export declare class SpeechOSAudioLevelMeter extends LitElement {
7
+ static styles: CSSResultGroup;
8
+ active: boolean;
9
+ deviceId: string;
10
+ private levels;
11
+ private error;
12
+ private mediaStream;
13
+ private audioContext;
14
+ private analyser;
15
+ private animationId;
16
+ private dataArray;
17
+ private smoothedLevels;
18
+ updated(changedProperties: Map<string, unknown>): void;
19
+ disconnectedCallback(): void;
20
+ private startMonitoring;
21
+ private stopMonitoring;
22
+ private updateLevels;
23
+ private getBarClass;
24
+ render(): import("lit-html").TemplateResult<1>;
25
+ }
26
+ declare global {
27
+ interface HTMLElementTagNameMap {
28
+ "speechos-audio-level-meter": SpeechOSAudioLevelMeter;
29
+ }
30
+ }
31
+ //# sourceMappingURL=audio-level-meter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio-level-meter.d.ts","sourceRoot":"","sources":["../../src/ui/audio-level-meter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAOjE,qBACa,uBAAwB,SAAQ,UAAU;IACrD,MAAM,CAAC,MAAM,EAAE,cAAc,CA8C3B;IAGF,MAAM,UAAS;IAGf,QAAQ,SAAM;IAGd,OAAO,CAAC,MAAM,CAAyC;IAGvD,OAAO,CAAC,KAAK,CAAuB;IAEpC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,cAAc,CAAyC;IAE/D,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAUtD,oBAAoB,IAAI,IAAI;YAKd,eAAe;IA+C7B,OAAO,CAAC,cAAc;IA2BtB,OAAO,CAAC,YAAY;IAwCpB,OAAO,CAAC,WAAW;IAKnB,MAAM;CA0BP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,4BAA4B,EAAE,uBAAuB,CAAC;KACvD;CACF"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Compact audio visualizer component
3
+ * A minimal inline audio amplitude visualization for the listening state
4
+ */
5
+ import { LitElement, type CSSResultGroup } from "lit";
6
+ export declare class SpeechOSAudioVisualizer extends LitElement {
7
+ static styles: CSSResultGroup;
8
+ active: boolean;
9
+ private levels;
10
+ private mediaStream;
11
+ private audioContext;
12
+ private analyser;
13
+ private animationId;
14
+ private dataArray;
15
+ private smoothedLevels;
16
+ updated(changedProperties: Map<string, unknown>): void;
17
+ disconnectedCallback(): void;
18
+ private startMonitoring;
19
+ private stopMonitoring;
20
+ private updateLevels;
21
+ private getBarClass;
22
+ render(): import("lit-html").TemplateResult<1>;
23
+ }
24
+ declare global {
25
+ interface HTMLElementTagNameMap {
26
+ "speechos-audio-visualizer": SpeechOSAudioVisualizer;
27
+ }
28
+ }
29
+ //# sourceMappingURL=audio-visualizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio-visualizer.d.ts","sourceRoot":"","sources":["../../src/ui/audio-visualizer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAQjE,qBACa,uBAAwB,SAAQ,UAAU;IACrD,MAAM,CAAC,MAAM,EAAE,cAAc,CAgC3B;IAGF,MAAM,UAAS;IAGf,OAAO,CAAC,MAAM,CAAyC;IAEvD,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,QAAQ,CAA6B;IAC7C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,cAAc,CAAyC;IAE/D,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAUtD,oBAAoB,IAAI,IAAI;YAKd,eAAe;IAoC7B,OAAO,CAAC,cAAc;IA2BtB,OAAO,CAAC,YAAY;IAwCpB,OAAO,CAAC,WAAW;IAKnB,MAAM;CAkBP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,2BAA2B,EAAE,uBAAuB,CAAC;KACtD;CACF"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Icon imports and templates using inline SVG
3
+ */
4
+ import { type TemplateResult } from "lit";
5
+ /**
6
+ * Microphone icon for the main button
7
+ * Lucide Mic icon paths
8
+ */
9
+ export declare const micIcon: (size?: number) => TemplateResult;
10
+ /**
11
+ * Message square icon for dictate action
12
+ * Lucide MessageSquare icon paths
13
+ */
14
+ export declare const dictateIcon: (size?: number) => TemplateResult;
15
+ /**
16
+ * Pencil icon for edit action
17
+ * Lucide Pencil icon paths
18
+ */
19
+ export declare const editIcon: (size?: number) => TemplateResult;
20
+ /**
21
+ * Stop/Square icon for stopping recording
22
+ * Lucide Square icon (filled)
23
+ */
24
+ export declare const stopIcon: (size?: number) => TemplateResult;
25
+ /**
26
+ * Loader/spinner icon for connecting state
27
+ */
28
+ export declare const loaderIcon: (size?: number) => TemplateResult;
29
+ /**
30
+ * Check icon for "Keep" action
31
+ * Lucide Check icon paths
32
+ */
33
+ export declare const checkIcon: (size?: number) => TemplateResult;
34
+ /**
35
+ * Undo icon for "Undo" action
36
+ * Lucide Undo2 icon paths
37
+ */
38
+ export declare const undoIcon: (size?: number) => TemplateResult;
39
+ /**
40
+ * Refresh icon for "Continue editing" action
41
+ * Lucide RefreshCw icon paths
42
+ */
43
+ export declare const refreshIcon: (size?: number) => TemplateResult;
44
+ /**
45
+ * X icon for cancel action
46
+ * Lucide X icon paths
47
+ */
48
+ export declare const xIcon: (size?: number) => TemplateResult;
49
+ /**
50
+ * More vertical (three dots) icon for settings button
51
+ * Lucide MoreVertical icon paths
52
+ */
53
+ export declare const moreVerticalIcon: (size?: number) => TemplateResult;
54
+ /**
55
+ * Clipboard/list icon for transcripts tab
56
+ * Lucide ClipboardList icon paths
57
+ */
58
+ export declare const clipboardIcon: (size?: number) => TemplateResult;
59
+ /**
60
+ * Help circle icon for help tab
61
+ * Lucide HelpCircle icon paths
62
+ */
63
+ export declare const helpCircleIcon: (size?: number) => TemplateResult;
64
+ /**
65
+ * Info icon for about tab
66
+ * Lucide Info icon paths
67
+ */
68
+ export declare const infoIcon: (size?: number) => TemplateResult;
69
+ /**
70
+ * Settings/cog icon for settings tab
71
+ * Lucide Settings icon paths
72
+ */
73
+ export declare const settingsIcon: (size?: number) => TemplateResult;
74
+ /**
75
+ * Trash icon for delete action
76
+ * Lucide Trash2 icon paths
77
+ */
78
+ export declare const trashIcon: (size?: number) => TemplateResult;
79
+ /**
80
+ * External link icon
81
+ * Lucide ExternalLink icon paths
82
+ */
83
+ export declare const externalLinkIcon: (size?: number) => TemplateResult;
84
+ /**
85
+ * Copy icon
86
+ * Lucide Copy icon paths
87
+ */
88
+ export declare const copyIcon: (size?: number) => TemplateResult;
@@ -86,4 +86,34 @@ export declare const externalLinkIcon: (size?: number) => TemplateResult;
86
86
  * Lucide Copy icon paths
87
87
  */
88
88
  export declare const copyIcon: (size?: number) => TemplateResult;
89
+ /**
90
+ * Globe icon for language selection
91
+ * Lucide Globe icon paths
92
+ */
93
+ export declare const globeIcon: (size?: number) => TemplateResult;
94
+ /**
95
+ * Scissors icon for snippets
96
+ * Lucide Scissors icon paths
97
+ */
98
+ export declare const scissorsIcon: (size?: number) => TemplateResult;
99
+ /**
100
+ * Book open icon for vocabulary
101
+ * Lucide BookOpen icon paths
102
+ */
103
+ export declare const bookOpenIcon: (size?: number) => TemplateResult;
104
+ /**
105
+ * Plus icon for add buttons
106
+ * Lucide Plus icon paths
107
+ */
108
+ export declare const plusIcon: (size?: number) => TemplateResult;
109
+ /**
110
+ * Sparkles icon for AI/smart features
111
+ * Lucide Sparkles icon paths
112
+ */
113
+ export declare const sparklesIcon: (size?: number) => TemplateResult;
114
+ /**
115
+ * Zap/lightning icon for command action
116
+ * Lucide Zap icon paths - represents quick command execution
117
+ */
118
+ export declare const commandIcon: (size?: number) => TemplateResult;
89
119
  //# sourceMappingURL=icons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/ui/icons.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AA2BhD;;;GAGG;AACH,eAAO,MAAM,OAAO,GAAI,aAAS,KAAG,cAIjC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,aAAS,KAAG,cAIrC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAIlC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAepC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,aAAS,KAAG,cAkBtC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,aAAS,KAAG,cACW,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAIlC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,aAAS,KAAG,cAIrC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,aAAS,KAAG,cACgC,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,aAAS,KAAG,cAI1C,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,aAAS,KAAG,cAIvC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,aAAS,KAAG,cAIxC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAIlC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,aAAS,KAAG,cAItC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,aAAS,KAAG,cAInC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,aAAS,KAAG,cAI1C,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAIlC,CAAC"}
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/ui/icons.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AA2BhD;;;GAGG;AACH,eAAO,MAAM,OAAO,GAAI,aAAS,KAAG,cAIjC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,aAAS,KAAG,cAIrC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAIlC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAepC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,aAAS,KAAG,cAkBtC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,aAAS,KAAG,cACW,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAIlC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,aAAS,KAAG,cAIrC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,aAAS,KAAG,cACgC,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,aAAS,KAAG,cAI1C,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,aAAS,KAAG,cAIvC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,aAAS,KAAG,cAIxC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAIlC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,aAAS,KAAG,cAItC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,aAAS,KAAG,cAInC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,aAAS,KAAG,cAI1C,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cAIlC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,aAAS,KAAG,cAInC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,aAAS,KAAG,cAItC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,aAAS,KAAG,cAItC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,aAAS,KAAG,cACyB,CAAC;AAE/D;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,aAAS,KAAG,cAItC,CAAC;AAEJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,aAAS,KAAG,cAIrC,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * UI module exports
3
+ * Lit-based Shadow DOM components
4
+ */
5
+ import "./widget.js";
6
+ import "./mic-button.js";
7
+ import "./action-bubbles.js";
8
+ import "./settings-button.js";
9
+ import "./settings-modal.js";
10
+ export { SpeechOSWidget } from "./widget.js";
11
+ export { SpeechOSMicButton } from "./mic-button.js";
12
+ export { SpeechOSActionBubbles } from "./action-bubbles.js";
13
+ export { SpeechOSSettingsButton } from "./settings-button.js";
14
+ export { SpeechOSSettingsModal } from "./settings-modal.js";
15
+ /**
16
+ * Register all custom elements
17
+ * This is automatically called when importing this module,
18
+ * but can be called explicitly if needed
19
+ */
20
+ export declare function registerComponents(): void;
@@ -7,11 +7,15 @@ import "./mic-button.js";
7
7
  import "./action-bubbles.js";
8
8
  import "./settings-button.js";
9
9
  import "./settings-modal.js";
10
+ import "./audio-level-meter.js";
11
+ import "./audio-visualizer.js";
10
12
  export { SpeechOSWidget } from "./widget.js";
11
13
  export { SpeechOSMicButton } from "./mic-button.js";
12
14
  export { SpeechOSActionBubbles } from "./action-bubbles.js";
13
15
  export { SpeechOSSettingsButton } from "./settings-button.js";
14
16
  export { SpeechOSSettingsModal } from "./settings-modal.js";
17
+ export { SpeechOSAudioLevelMeter } from "./audio-level-meter.js";
18
+ export { SpeechOSAudioVisualizer } from "./audio-visualizer.js";
15
19
  /**
16
20
  * Register all custom elements
17
21
  * This is automatically called when importing this module,
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,aAAa,CAAC;AACrB,OAAO,iBAAiB,CAAC;AACzB,OAAO,qBAAqB,CAAC;AAC7B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,qBAAqB,CAAC;AAG7B,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAMzC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,aAAa,CAAC;AACrB,OAAO,iBAAiB,CAAC;AACzB,OAAO,qBAAqB,CAAC;AAC7B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,wBAAwB,CAAC;AAChC,OAAO,uBAAuB,CAAC;AAG/B,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAMzC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Microphone button component
3
+ * A circular button that toggles the action bubbles and handles recording states
4
+ */
5
+ import { LitElement, type CSSResultGroup, type TemplateResult } from "lit";
6
+ import type { RecordingState, SpeechOSAction } from "@speechos/core";
7
+ export declare class SpeechOSMicButton extends LitElement {
8
+ static styles: CSSResultGroup;
9
+ expanded: boolean;
10
+ recordingState: RecordingState;
11
+ activeAction: SpeechOSAction | null;
12
+ editPreviewText: string;
13
+ errorMessage: string | null;
14
+ private handleClick;
15
+ private handleCancel;
16
+ private stopEvent;
17
+ private handleClose;
18
+ private handleRetry;
19
+ private getButtonClass;
20
+ private renderIcon;
21
+ private getAriaLabel;
22
+ /**
23
+ * Truncate and format preview text for display
24
+ */
25
+ private formatPreviewText;
26
+ private getStatusLabel;
27
+ private getStatusClass;
28
+ render(): TemplateResult;
29
+ }
30
+ declare global {
31
+ interface HTMLElementTagNameMap {
32
+ "speechos-mic-button": SpeechOSMicButton;
33
+ }
34
+ }
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { LitElement, type CSSResultGroup, type TemplateResult } from "lit";
6
6
  import type { RecordingState, SpeechOSAction } from "@speechos/core";
7
+ import "./audio-visualizer.js";
7
8
  export declare class SpeechOSMicButton extends LitElement {
8
9
  static styles: CSSResultGroup;
9
10
  expanded: boolean;
@@ -24,6 +25,7 @@ export declare class SpeechOSMicButton extends LitElement {
24
25
  */
25
26
  private formatPreviewText;
26
27
  private getStatusLabel;
28
+ private shouldShowVisualizer;
27
29
  private getStatusClass;
28
30
  render(): TemplateResult;
29
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mic-button.d.ts","sourceRoot":"","sources":["../../src/ui/mic-button.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,UAAU,EAGV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAIb,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErE,qBACa,iBAAkB,SAAQ,UAAU;IAC/C,MAAM,CAAC,MAAM,EAAE,cAAc,CAwX3B;IAGF,QAAQ,UAAS;IAGjB,cAAc,EAAE,cAAc,CAAU;IAGxC,YAAY,EAAE,cAAc,GAAG,IAAI,CAAQ;IAG3C,eAAe,EAAE,MAAM,CAAM;IAG7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEnC,OAAO,CAAC,WAAW;IAiCnB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,YAAY;IAepB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,cAAc;IAwBtB,OAAO,CAAC,cAAc;IAOtB,MAAM,IAAI,cAAc;CAmEzB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,qBAAqB,EAAE,iBAAiB,CAAC;KAC1C;CACF"}
1
+ {"version":3,"file":"mic-button.d.ts","sourceRoot":"","sources":["../../src/ui/mic-button.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,UAAU,EAGV,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,KAAK,CAAC;AAIb,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,uBAAuB,CAAC;AAE/B,qBACa,iBAAkB,SAAQ,UAAU;IAC/C,MAAM,CAAC,MAAM,EAAE,cAAc,CA0zB3B;IAGF,QAAQ,UAAS;IAGjB,cAAc,EAAE,cAAc,CAAU;IAGxC,YAAY,EAAE,cAAc,GAAG,IAAI,CAAQ;IAG3C,eAAe,EAAE,MAAM,CAAM;IAG7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAEnC,OAAO,CAAC,WAAW;IAiCnB,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,cAAc;IAqBtB,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,YAAY;IAepB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,cAAc;IAkBtB,OAAO,CAAC,oBAAoB;IAQ5B,OAAO,CAAC,cAAc;IAOtB,MAAM,IAAI,cAAc;CAgGzB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,qBAAqB,EAAE,iBAAiB,CAAC;KAC1C;CACF"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Settings button component
3
+ * A small gear icon button that opens the settings modal
4
+ */
5
+ import { LitElement, type CSSResultGroup } from "lit";
6
+ export declare class SpeechOSSettingsButton extends LitElement {
7
+ static styles: CSSResultGroup;
8
+ visible: boolean;
9
+ private handleClick;
10
+ render(): import("lit").TemplateResult;
11
+ }
12
+ declare global {
13
+ interface HTMLElementTagNameMap {
14
+ "speechos-settings-button": SpeechOSSettingsButton;
15
+ }
16
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"settings-button.d.ts","sourceRoot":"","sources":["../../src/ui/settings-button.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAKjE,qBACa,sBAAuB,SAAQ,UAAU;IACpD,MAAM,CAAC,MAAM,EAAE,cAAc,CA6C3B;IAGF,OAAO,UAAS;IAEhB,OAAO,CAAC,WAAW;IAYnB,MAAM,IAAI,OAAO,KAAK,EAAE,cAAc;CAYvC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,0BAA0B,EAAE,sBAAsB,CAAC;KACpD;CACF"}
1
+ {"version":3,"file":"settings-button.d.ts","sourceRoot":"","sources":["../../src/ui/settings-button.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAKjE,qBACa,sBAAuB,SAAQ,UAAU;IACpD,MAAM,CAAC,MAAM,EAAE,cAAc,CAyD3B;IAGF,OAAO,UAAS;IAEhB,OAAO,CAAC,WAAW;IAYnB,MAAM,IAAI,OAAO,KAAK,EAAE,cAAc;CAYvC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,0BAA0B,EAAE,sBAAsB,CAAC;KACpD;CACF"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Settings modal component
3
+ * Displays transcript history, help, about, and settings in a tabbed interface
4
+ */
5
+ import { LitElement, type CSSResultGroup } from "lit";
6
+ export declare class SpeechOSSettingsModal extends LitElement {
7
+ static styles: CSSResultGroup;
8
+ open: boolean;
9
+ private activeTab;
10
+ private transcripts;
11
+ private tabs;
12
+ connectedCallback(): void;
13
+ updated(changedProperties: Map<string, unknown>): void;
14
+ private loadTranscripts;
15
+ private handleOverlayClick;
16
+ private handleClose;
17
+ private close;
18
+ private handleTabClick;
19
+ private handleDeleteTranscript;
20
+ private handleClearAll;
21
+ private handleCopyTranscript;
22
+ private formatTime;
23
+ private renderTranscriptsTab;
24
+ private renderHelpTab;
25
+ private renderAboutTab;
26
+ private renderSettingsTab;
27
+ private renderTabContent;
28
+ render(): import("lit").TemplateResult;
29
+ }
30
+ declare global {
31
+ interface HTMLElementTagNameMap {
32
+ "speechos-settings-modal": SpeechOSSettingsModal;
33
+ }
34
+ }
@@ -1,31 +1,30 @@
1
1
  /**
2
2
  * Settings modal component
3
- * Displays transcript history, help, about, and settings in a tabbed interface
3
+ * Main orchestrator for the settings modal with sidebar navigation
4
4
  */
5
5
  import { LitElement, type CSSResultGroup } from "lit";
6
+ import "./tabs/history-tab.js";
7
+ import "./tabs/help-tab.js";
8
+ import "./tabs/about-tab.js";
9
+ import "./tabs/settings-tab.js";
10
+ import "./tabs/snippets-tab.js";
11
+ import "./tabs/vocabulary-tab.js";
6
12
  export declare class SpeechOSSettingsModal extends LitElement {
7
13
  static styles: CSSResultGroup;
8
14
  open: boolean;
9
15
  private activeTab;
10
- private transcripts;
11
- private tabs;
12
- connectedCallback(): void;
16
+ private mainTabs;
17
+ private bottomTabs;
13
18
  updated(changedProperties: Map<string, unknown>): void;
14
- private loadTranscripts;
19
+ private refreshActiveTab;
20
+ private resetTabs;
21
+ private getTabElement;
15
22
  private handleOverlayClick;
16
23
  private handleClose;
17
24
  private close;
18
25
  private handleTabClick;
19
- private handleDeleteTranscript;
20
- private handleClearAll;
21
- private handleCopyTranscript;
22
- private formatTime;
23
- private renderTranscriptsTab;
24
- private renderHelpTab;
25
- private renderAboutTab;
26
- private renderSettingsTab;
27
26
  private renderTabContent;
28
- render(): import("lit").TemplateResult;
27
+ render(): import("lit-html").TemplateResult<1>;
29
28
  }
30
29
  declare global {
31
30
  interface HTMLElementTagNameMap {
@@ -1 +1 @@
1
- {"version":3,"file":"settings-modal.d.ts","sourceRoot":"","sources":["../../src/ui/settings-modal.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AA4BjE,qBACa,qBAAsB,SAAQ,UAAU;IACnD,MAAM,CAAC,MAAM,EAAE,cAAc,CAyX3B;IAGF,IAAI,UAAS;IAGb,OAAO,CAAC,SAAS,CAAwB;IAGzC,OAAO,CAAC,WAAW,CAAyB;IAE5C,OAAO,CAAC,IAAI,CAKV;IAEF,iBAAiB,IAAI,IAAI;IAKzB,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAMtD,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,KAAK;IASb,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,cAAc;YAKR,oBAAoB;IA6BlC,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,oBAAoB;IAoD5B,OAAO,CAAC,aAAa;IA0BrB,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,gBAAgB;IAaxB,MAAM,IAAI,OAAO,KAAK,EAAE,cAAc;CAqCvC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,yBAAyB,EAAE,qBAAqB,CAAC;KAClD;CACF"}
1
+ {"version":3,"file":"settings-modal.d.ts","sourceRoot":"","sources":["../../src/ui/settings-modal.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAQ,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAe5D,OAAO,uBAAuB,CAAC;AAC/B,OAAO,oBAAoB,CAAC;AAC5B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,wBAAwB,CAAC;AAChC,OAAO,wBAAwB,CAAC;AAChC,OAAO,0BAA0B,CAAC;AAgBlC,qBACa,qBAAsB,SAAQ,UAAU;IACnD,MAAM,CAAC,MAAM,EAAE,cAAc,CAAoC;IAGjE,IAAI,UAAS;IAGb,OAAO,CAAC,SAAS,CAAqB;IAEtC,OAAO,CAAC,QAAQ,CAMd;IAEF,OAAO,CAAC,UAAU,CAEhB;IAEF,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAUtD,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,SAAS;IAiBjB,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,KAAK;IASb,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,gBAAgB;IAiBxB,MAAM;CAqEP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,yBAAyB,EAAE,qBAAqB,CAAC;KAClD;CACF"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Shared styles for settings modal and tabs
3
+ */
4
+ /** Base modal layout styles */
5
+ export declare const modalLayoutStyles: import("lit").CSSResult;
6
+ /** Shared tab content styles */
7
+ export declare const tabContentStyles: import("lit").CSSResult;
8
+ /** Form styles for add/edit forms */
9
+ export declare const formStyles: import("lit").CSSResult;
10
+ //# sourceMappingURL=modal-styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modal-styles.d.ts","sourceRoot":"","sources":["../../../src/ui/styles/modal-styles.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,+BAA+B;AAC/B,eAAO,MAAM,iBAAiB,yBAkO7B,CAAC;AAEF,gCAAgC;AAChC,eAAO,MAAM,gBAAgB,yBAmF5B,CAAC;AAEF,qCAAqC;AACrC,eAAO,MAAM,UAAU,yBA4KtB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Shared styles and CSS variables for SpeechOS UI components
3
+ */
4
+ import { type CSSResult } from 'lit';
5
+ /**
6
+ * CSS variables and theme tokens
7
+ * These can be customized by the host application
8
+ */
9
+ export declare const themeStyles: CSSResult;
10
+ /**
11
+ * Common animation keyframes
12
+ */
13
+ export declare const animations: CSSResult;
14
+ /**
15
+ * Utility styles for common patterns
16
+ */
17
+ export declare const utilityStyles: CSSResult;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * About tab component - Shows SpeechOS branding and links
3
+ */
4
+ import { LitElement, type CSSResultGroup } from "lit";
5
+ export declare class SpeechOSAboutTab extends LitElement {
6
+ static styles: CSSResultGroup;
7
+ render(): import("lit-html").TemplateResult<1>;
8
+ }
9
+ declare global {
10
+ interface HTMLElementTagNameMap {
11
+ "speechos-about-tab": SpeechOSAboutTab;
12
+ }
13
+ }
14
+ //# sourceMappingURL=about-tab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"about-tab.d.ts","sourceRoot":"","sources":["../../../src/ui/tabs/about-tab.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAKjE,qBACa,gBAAiB,SAAQ,UAAU;IAC9C,MAAM,CAAC,MAAM,EAAE,cAAc,CAgF3B;IAEF,MAAM;CAqCP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,oBAAoB,EAAE,gBAAgB,CAAC;KACxC;CACF"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Help tab component - Shows usage instructions for dictate and edit modes
3
+ */
4
+ import { LitElement, type CSSResultGroup } from "lit";
5
+ export declare class SpeechOSHelpTab extends LitElement {
6
+ static styles: CSSResultGroup;
7
+ render(): import("lit-html").TemplateResult<1>;
8
+ }
9
+ declare global {
10
+ interface HTMLElementTagNameMap {
11
+ "speechos-help-tab": SpeechOSHelpTab;
12
+ }
13
+ }
14
+ //# sourceMappingURL=help-tab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help-tab.d.ts","sourceRoot":"","sources":["../../../src/ui/tabs/help-tab.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAKjE,qBACa,eAAgB,SAAQ,UAAU;IAC7C,MAAM,CAAC,MAAM,EAAE,cAAc,CAoE3B;IAEF,MAAM;CA4CP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,mBAAmB,EAAE,eAAe,CAAC;KACtC;CACF"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * History tab component - Shows transcript history with copy/delete actions
3
+ */
4
+ import { LitElement, type CSSResultGroup } from "lit";
5
+ export declare class SpeechOSHistoryTab extends LitElement {
6
+ static styles: CSSResultGroup;
7
+ private transcripts;
8
+ connectedCallback(): void;
9
+ /** Reload transcripts from store */
10
+ refresh(): void;
11
+ private loadTranscripts;
12
+ private formatTime;
13
+ private handleDelete;
14
+ private handleClearAll;
15
+ private handleCopy;
16
+ private getActionIcon;
17
+ private renderCommandDetails;
18
+ private getCopyText;
19
+ render(): import("lit-html").TemplateResult<1>;
20
+ }
21
+ declare global {
22
+ interface HTMLElementTagNameMap {
23
+ "speechos-history-tab": SpeechOSHistoryTab;
24
+ }
25
+ }
26
+ //# sourceMappingURL=history-tab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-tab.d.ts","sourceRoot":"","sources":["../../../src/ui/tabs/history-tab.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAa,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AAcjE,qBACa,kBAAmB,SAAQ,UAAU;IAChD,MAAM,CAAC,MAAM,EAAE,cAAc,CAwI3B;IAGF,OAAO,CAAC,WAAW,CAAyB;IAE5C,iBAAiB,IAAI,IAAI;IAKzB,oCAAoC;IACpC,OAAO,IAAI,IAAI;IAIf,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,cAAc;YAKR,UAAU;IAwBxB,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,WAAW;IAOnB,MAAM;CAqDP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,sBAAsB,EAAE,kBAAkB,CAAC;KAC5C;CACF"}