@speechos/client 0.2.0 → 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.
- package/dist/config.d.ts +68 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/form-detector.d.ts +17 -1
- package/dist/form-detector.d.ts.map +1 -0
- package/dist/form-detector.test.d.ts +5 -0
- package/dist/form-detector.test.d.ts.map +1 -0
- package/dist/index.cjs +6847 -317
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +20 -3
- package/dist/index.d.ts.map +1 -0
- package/dist/index.iife.js +6761 -1713
- package/dist/index.iife.js.map +1 -1
- package/dist/index.iife.min.js +2126 -392
- package/dist/index.iife.min.js.map +1 -1
- package/dist/index.js +6766 -250
- package/dist/index.js.map +1 -1
- package/dist/speechos.d.ts +48 -5
- package/dist/speechos.d.ts.map +1 -0
- package/dist/speechos.test.d.ts +5 -0
- package/dist/speechos.test.d.ts.map +1 -0
- package/dist/stores/audio-settings.d.ts +45 -0
- package/dist/stores/audio-settings.d.ts.map +1 -0
- package/dist/stores/index.d.ts +15 -0
- package/dist/stores/index.d.ts.map +1 -0
- package/dist/stores/language-settings.d.ts +106 -0
- package/dist/stores/language-settings.d.ts.map +1 -0
- package/dist/stores/snippets-store.d.ts +72 -0
- package/dist/stores/snippets-store.d.ts.map +1 -0
- package/dist/stores/snippets-store.test.d.ts +5 -0
- package/dist/stores/snippets-store.test.d.ts.map +1 -0
- package/dist/stores/transcript-store.d.ts +54 -0
- package/dist/stores/transcript-store.d.ts.map +1 -0
- package/dist/stores/transcript-store.test.d.ts +5 -0
- package/dist/stores/transcript-store.test.d.ts.map +1 -0
- package/dist/stores/vocabulary-store.d.ts +63 -0
- package/dist/stores/vocabulary-store.d.ts.map +1 -0
- package/dist/stores/vocabulary-store.test.d.ts +5 -0
- package/dist/stores/vocabulary-store.test.d.ts.map +1 -0
- package/dist/text-input-handler.d.ts +73 -0
- package/dist/text-input-handler.d.ts.map +1 -0
- package/dist/text-input-handler.test.d.ts +5 -0
- package/dist/text-input-handler.test.d.ts.map +1 -0
- package/dist/ui/action-bubbles.d.ts +6 -1
- package/dist/ui/action-bubbles.d.ts.map +1 -0
- package/dist/ui/audio-level-meter.d.ts +31 -0
- package/dist/ui/audio-level-meter.d.ts.map +1 -0
- package/dist/ui/audio-visualizer.d.ts +29 -0
- package/dist/ui/audio-visualizer.d.ts.map +1 -0
- package/dist/ui/icons.d.ts +31 -0
- package/dist/ui/icons.d.ts.map +1 -0
- package/dist/ui/index.d.ts +5 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/mic-button.d.ts +3 -0
- package/dist/ui/mic-button.d.ts.map +1 -0
- package/dist/ui/settings-button.d.ts +1 -0
- package/dist/ui/settings-button.d.ts.map +1 -0
- package/dist/ui/settings-modal.d.ts +14 -14
- package/dist/ui/settings-modal.d.ts.map +1 -0
- package/dist/ui/styles/modal-styles.d.ts +10 -0
- package/dist/ui/styles/modal-styles.d.ts.map +1 -0
- package/dist/ui/styles/theme.d.ts +1 -0
- package/dist/ui/styles/theme.d.ts.map +1 -0
- package/dist/ui/tabs/about-tab.d.ts +14 -0
- package/dist/ui/tabs/about-tab.d.ts.map +1 -0
- package/dist/ui/tabs/help-tab.d.ts +14 -0
- package/dist/ui/tabs/help-tab.d.ts.map +1 -0
- package/dist/ui/tabs/history-tab.d.ts +26 -0
- package/dist/ui/tabs/history-tab.d.ts.map +1 -0
- package/dist/ui/tabs/index.d.ts +10 -0
- package/dist/ui/tabs/index.d.ts.map +1 -0
- package/dist/ui/tabs/settings-tab.d.ts +42 -0
- package/dist/ui/tabs/settings-tab.d.ts.map +1 -0
- package/dist/ui/tabs/snippets-tab.d.ts +34 -0
- package/dist/ui/tabs/snippets-tab.d.ts.map +1 -0
- package/dist/ui/tabs/vocabulary-tab.d.ts +30 -0
- package/dist/ui/tabs/vocabulary-tab.d.ts.map +1 -0
- package/dist/ui/widget.d.ts +23 -0
- package/dist/ui/widget.d.ts.map +1 -0
- package/dist/ui/widget.test.d.ts +6 -0
- package/dist/ui/widget.test.d.ts.map +1 -0
- package/package.json +8 -9
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client configuration for SpeechOS
|
|
3
|
+
* Extends core config with UI/widget-specific options
|
|
4
|
+
*/
|
|
5
|
+
import type { SpeechOSCoreConfig, CommandDefinition } from "@speechos/core";
|
|
6
|
+
import type { FormDetectorInterface } from "./form-detector.js";
|
|
7
|
+
import type { TextInputHandlerInterface } from "./text-input-handler.js";
|
|
8
|
+
/**
|
|
9
|
+
* Configuration options for SpeechOS Client
|
|
10
|
+
* Extends core config with widget-specific options
|
|
11
|
+
*/
|
|
12
|
+
export interface SpeechOSClientConfig extends SpeechOSCoreConfig {
|
|
13
|
+
/** Command definitions for voice command matching. If provided, shows Command button in widget. */
|
|
14
|
+
commands?: CommandDefinition[];
|
|
15
|
+
/** Custom z-index for widget overlay (default: 999999) */
|
|
16
|
+
zIndex?: number;
|
|
17
|
+
/**
|
|
18
|
+
* Form detection behavior:
|
|
19
|
+
* - true (default): Enable automatic form field detection
|
|
20
|
+
* - false: Disable automatic detection (manual control only)
|
|
21
|
+
* - FormDetectorInterface: Custom implementation
|
|
22
|
+
*/
|
|
23
|
+
formDetection?: boolean | FormDetectorInterface;
|
|
24
|
+
/**
|
|
25
|
+
* Custom text input handler for cursor/selection detection and text operations.
|
|
26
|
+
* Default: handles input, textarea, and contenteditable elements.
|
|
27
|
+
*/
|
|
28
|
+
textInputHandler?: TextInputHandlerInterface;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Resolved client config with defaults applied
|
|
32
|
+
*/
|
|
33
|
+
export interface ResolvedClientConfig {
|
|
34
|
+
commands: CommandDefinition[];
|
|
35
|
+
zIndex: number;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Validate and resolve client-specific config
|
|
39
|
+
* @param config - User-provided configuration
|
|
40
|
+
* @returns Resolved client configuration
|
|
41
|
+
*/
|
|
42
|
+
export declare function validateClientConfig(config: SpeechOSClientConfig): ResolvedClientConfig;
|
|
43
|
+
/**
|
|
44
|
+
* Set the client configuration
|
|
45
|
+
* @param config - Client configuration to set
|
|
46
|
+
*/
|
|
47
|
+
export declare function setClientConfig(config: SpeechOSClientConfig): void;
|
|
48
|
+
/**
|
|
49
|
+
* Get the current client configuration
|
|
50
|
+
*/
|
|
51
|
+
export declare function getClientConfig(): ResolvedClientConfig;
|
|
52
|
+
/**
|
|
53
|
+
* Reset client configuration to defaults
|
|
54
|
+
*/
|
|
55
|
+
export declare function resetClientConfig(): void;
|
|
56
|
+
/**
|
|
57
|
+
* Check if commands are configured (for showing Command button in widget)
|
|
58
|
+
*/
|
|
59
|
+
export declare function hasCommands(): boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Get configured commands
|
|
62
|
+
*/
|
|
63
|
+
export declare function getCommands(): CommandDefinition[];
|
|
64
|
+
/**
|
|
65
|
+
* Get widget z-index
|
|
66
|
+
*/
|
|
67
|
+
export declare function getZIndex(): number;
|
|
68
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB;IAC9D,mGAAmG;IACnG,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC/B,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,qBAAqB,CAAC;IAChD;;;OAGG;IACH,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAeD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,GAAG,oBAAoB,CAevF;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAElE;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,oBAAoB,CAEtD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,iBAAiB,EAAE,CAEjD;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC"}
|
package/dist/form-detector.d.ts
CHANGED
|
@@ -2,13 +2,28 @@
|
|
|
2
2
|
* Form field focus detection for SpeechOS Client SDK
|
|
3
3
|
* Detects when users focus on form fields and manages widget visibility
|
|
4
4
|
*/
|
|
5
|
+
/**
|
|
6
|
+
* Interface for form detector implementations
|
|
7
|
+
* Allows swapping out the default form detection behavior
|
|
8
|
+
*/
|
|
9
|
+
export interface FormDetectorInterface {
|
|
10
|
+
/** Start detecting form field focus events */
|
|
11
|
+
start(): void;
|
|
12
|
+
/** Stop detecting form field focus events */
|
|
13
|
+
stop(): void;
|
|
14
|
+
/** Whether the detector is currently active */
|
|
15
|
+
readonly active: boolean;
|
|
16
|
+
}
|
|
5
17
|
/**
|
|
6
18
|
* Form detector class that manages focus tracking
|
|
7
19
|
*/
|
|
8
|
-
export declare class FormDetector {
|
|
20
|
+
export declare class FormDetector implements FormDetectorInterface {
|
|
9
21
|
private isActive;
|
|
10
22
|
private focusHandler;
|
|
11
23
|
private blurHandler;
|
|
24
|
+
private touchHandler;
|
|
25
|
+
private mouseDownHandler;
|
|
26
|
+
private isWidgetBeingInteracted;
|
|
12
27
|
/**
|
|
13
28
|
* Start detecting form field focus events
|
|
14
29
|
*/
|
|
@@ -23,3 +38,4 @@ export declare class FormDetector {
|
|
|
23
38
|
get active(): boolean;
|
|
24
39
|
}
|
|
25
40
|
export declare const formDetector: FormDetector;
|
|
41
|
+
//# sourceMappingURL=form-detector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-detector.d.ts","sourceRoot":"","sources":["../src/form-detector.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA8CH;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,8CAA8C;IAC9C,KAAK,IAAI,IAAI,CAAC;IACd,6CAA6C;IAC7C,IAAI,IAAI,IAAI,CAAC;IACb,+CAA+C;IAC/C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,YAAa,YAAW,qBAAqB;IACxD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,WAAW,CAA8C;IACjE,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,gBAAgB,CAA8C;IACtE,OAAO,CAAC,uBAAuB,CAAS;IAExC;;OAEG;IACH,KAAK,IAAI,IAAI;IA4Ib;;OAEG;IACH,IAAI,IAAI,IAAI;IAkCZ;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;CACF;AAGD,eAAO,MAAM,YAAY,EAAE,YAAiC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-detector.test.d.ts","sourceRoot":"","sources":["../src/form-detector.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|