@swiftbrowser/native 0.18.1 → 0.18.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/README.md +73 -8
- package/dist/bridge.d.ts +64 -2
- package/dist/bridge.d.ts.map +1 -1
- package/dist/bridge.js.map +1 -1
- package/dist/geolocation.d.ts +73 -0
- package/dist/geolocation.d.ts.map +1 -0
- package/dist/geolocation.js +109 -0
- package/dist/geolocation.js.map +1 -0
- package/dist/hostRequests.d.ts +3 -1
- package/dist/hostRequests.d.ts.map +1 -1
- package/dist/hostRequests.js +46 -5
- package/dist/hostRequests.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/nativeFunctions.d.ts +35 -0
- package/dist/nativeFunctions.d.ts.map +1 -0
- package/dist/nativeFunctions.js +90 -0
- package/dist/nativeFunctions.js.map +1 -0
- package/dist/reachability.d.ts +24 -0
- package/dist/reachability.d.ts.map +1 -0
- package/dist/reachability.js +41 -0
- package/dist/reachability.js.map +1 -0
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +3 -1
- package/dist/run.js.map +1 -1
- package/dist/runtime.d.ts +9 -2
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +62 -5
- package/dist/runtime.js.map +1 -1
- package/dist/speech.d.ts +148 -0
- package/dist/speech.d.ts.map +1 -0
- package/dist/speech.js +243 -0
- package/dist/speech.js.map +1 -0
- package/dist/wakeLock.d.ts +32 -0
- package/dist/wakeLock.d.ts.map +1 -0
- package/dist/wakeLock.js +60 -0
- package/dist/wakeLock.js.map +1 -0
- package/package.json +3 -3
- package/src/bridge.ts +70 -2
- package/src/geolocation.ts +160 -0
- package/src/hostRequests.ts +47 -7
- package/src/index.ts +1 -0
- package/src/nativeFunctions.ts +94 -0
- package/src/reachability.ts +49 -0
- package/src/run.ts +5 -3
- package/src/runtime.ts +58 -5
- package/src/speech.ts +312 -0
- package/src/wakeLock.ts +63 -0
- package/swift/Sources/SwiftBrowserNative/Host/AppleSignInBridge.swift +139 -0
- package/swift/Sources/SwiftBrowserNative/Host/AudioRecorderBridge.swift +5 -0
- package/swift/Sources/SwiftBrowserNative/Host/FilesBridge.swift +83 -12
- package/swift/Sources/SwiftBrowserNative/Host/GeolocationBridge.swift +150 -0
- package/swift/Sources/SwiftBrowserNative/Host/HostBridge.swift +131 -2
- package/swift/Sources/SwiftBrowserNative/Host/HostRequestBridge.swift +81 -11
- package/swift/Sources/SwiftBrowserNative/Host/ICloudBridge.swift +112 -0
- package/swift/Sources/SwiftBrowserNative/Host/ReachabilityBridge.swift +47 -0
- package/swift/Sources/SwiftBrowserNative/Host/SpeechBridge.swift +106 -0
- package/swift/Sources/SwiftBrowserNative/Host/SpeechRecognitionBridge.swift +198 -0
- package/swift/Sources/SwiftBrowserNative/Host/WorkerHost.swift +14 -5
- package/swift/Sources/SwiftBrowserNative/Runtime/NativeFunctions.swift +134 -0
- package/swift/Sources/SwiftBrowserNative/Views/ElementView.swift +1 -0
- package/swift/Sources/SwiftBrowserNative/Views/Kinds/Controls.swift +2 -0
- package/swift/Sources/SwiftBrowserNative/Views/Kinds/TextInputHints.swift +105 -0
- package/swift/Sources/SwiftBrowserNative/Views/Kinds/Touches.swift +102 -0
- package/swift/Sources/SwiftBrowserProtocol/Props.swift +13 -0
- package/swift/Sources/SwiftBrowserProtocol/RendererEvent.swift +9 -0
- package/wasm/SwiftBrowserNative.wasm +2 -2
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Swift the app calls: the function half of the escape hatch (docs/native.md;
|
|
3
|
+
* `<Native>` in native.ts is the view half). The Swift app registers
|
|
4
|
+
* functions with `NativeFunctions.register(name) { call in ... }`
|
|
5
|
+
* (Native/Sources/SwiftBrowserNative/Runtime/NativeFunctions.swift);
|
|
6
|
+
* `callNative(name, params)` runs one and resolves with what it returned,
|
|
7
|
+
* through the host request `app:<name>` (hostRequests.ts), `callNativeSync`
|
|
8
|
+
* runs a sync one inline over the bridge's `callNativeSync(name, json)`, and
|
|
9
|
+
* `nativeFunctions()` lists them over `nativeFunctions()`. What Swift sends
|
|
10
|
+
* with `NativeFunctions.send(name, value)` arrives at `__sbNativeEvent(name,
|
|
11
|
+
* json)` and reaches `onNativeEvent(name)`'s listeners.
|
|
12
|
+
*
|
|
13
|
+
* On a page, or in a host without the functions, `callNative` rejects and
|
|
14
|
+
* `callNativeSync` throws `unsupported:`, and `nativeFunctions()` is empty:
|
|
15
|
+
* an app checks `hasNativeFunction(name)` and falls back to the web's way.
|
|
16
|
+
* A function that throws `NativeFunctionCancelled` rejects with an
|
|
17
|
+
* `AbortError`, as the system pickers' cancellations do.
|
|
18
|
+
*/
|
|
19
|
+
import type { NativeBridge } from './bridge';
|
|
20
|
+
export type NativeFunctionsBridge = Pick<NativeBridge, 'nativeFunctions' | 'callNativeSync'>;
|
|
21
|
+
/** Points the functions at the bridge (the runtime, once per install); null forgets it. */
|
|
22
|
+
export declare function installNativeFunctions(native: NativeFunctionsBridge | null): void;
|
|
23
|
+
/** The names the Swift app registered; empty on a page. */
|
|
24
|
+
export declare function nativeFunctions(): string[];
|
|
25
|
+
/** Whether the Swift app registered `name`. */
|
|
26
|
+
export declare function hasNativeFunction(name: string): boolean;
|
|
27
|
+
/** Runs the function registered under `name` with `params`; resolves with what it returned. */
|
|
28
|
+
export declare function callNative<T = unknown>(name: string, params?: Record<string, unknown>): Promise<T>;
|
|
29
|
+
/** Runs the sync function registered under `name` inline; returns what it returned. */
|
|
30
|
+
export declare function callNativeSync<T = unknown>(name: string, params?: Record<string, unknown>): T;
|
|
31
|
+
/** Listens for what Swift sends under `name` (`NativeFunctions.send`); returns the function that stops listening. */
|
|
32
|
+
export declare function onNativeEvent<T = unknown>(name: string, listener: (value: T) => void): () => void;
|
|
33
|
+
/** The bridge's `__sbNativeEvent(name, json)`. */
|
|
34
|
+
export declare function receiveNativeEvent(name: string, value: unknown): void;
|
|
35
|
+
//# sourceMappingURL=nativeFunctions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nativeFunctions.d.ts","sourceRoot":"","sources":["../src/nativeFunctions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG7C,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,YAAY,EAAE,iBAAiB,GAAG,gBAAgB,CAAC,CAAC;AAK7F,2FAA2F;AAC3F,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,qBAAqB,GAAG,IAAI,GAAG,IAAI,CAGjF;AAED,2DAA2D;AAC3D,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAE1C;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,+FAA+F;AAC/F,wBAAgB,UAAU,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAEtG;AAED,uFAAuF;AACvF,wBAAgB,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,CAAC,CAcjG;AAED,qHAAqH;AACrH,wBAAgB,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,MAAM,IAAI,CAYjG;AAED,kDAAkD;AAClD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAYrE"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Swift the app calls: the function half of the escape hatch (docs/native.md;
|
|
3
|
+
* `<Native>` in native.ts is the view half). The Swift app registers
|
|
4
|
+
* functions with `NativeFunctions.register(name) { call in ... }`
|
|
5
|
+
* (Native/Sources/SwiftBrowserNative/Runtime/NativeFunctions.swift);
|
|
6
|
+
* `callNative(name, params)` runs one and resolves with what it returned,
|
|
7
|
+
* through the host request `app:<name>` (hostRequests.ts), `callNativeSync`
|
|
8
|
+
* runs a sync one inline over the bridge's `callNativeSync(name, json)`, and
|
|
9
|
+
* `nativeFunctions()` lists them over `nativeFunctions()`. What Swift sends
|
|
10
|
+
* with `NativeFunctions.send(name, value)` arrives at `__sbNativeEvent(name,
|
|
11
|
+
* json)` and reaches `onNativeEvent(name)`'s listeners.
|
|
12
|
+
*
|
|
13
|
+
* On a page, or in a host without the functions, `callNative` rejects and
|
|
14
|
+
* `callNativeSync` throws `unsupported:`, and `nativeFunctions()` is empty:
|
|
15
|
+
* an app checks `hasNativeFunction(name)` and falls back to the web's way.
|
|
16
|
+
* A function that throws `NativeFunctionCancelled` rejects with an
|
|
17
|
+
* `AbortError`, as the system pickers' cancellations do.
|
|
18
|
+
*/
|
|
19
|
+
import { hostRequest } from './hostRequests';
|
|
20
|
+
let bridge = null;
|
|
21
|
+
const listeners = new Map();
|
|
22
|
+
/** Points the functions at the bridge (the runtime, once per install); null forgets it. */
|
|
23
|
+
export function installNativeFunctions(native) {
|
|
24
|
+
bridge = native;
|
|
25
|
+
listeners.clear();
|
|
26
|
+
}
|
|
27
|
+
/** The names the Swift app registered; empty on a page. */
|
|
28
|
+
export function nativeFunctions() {
|
|
29
|
+
return bridge?.nativeFunctions?.() ?? [];
|
|
30
|
+
}
|
|
31
|
+
/** Whether the Swift app registered `name`. */
|
|
32
|
+
export function hasNativeFunction(name) {
|
|
33
|
+
return nativeFunctions().includes(name);
|
|
34
|
+
}
|
|
35
|
+
/** Runs the function registered under `name` with `params`; resolves with what it returned. */
|
|
36
|
+
export function callNative(name, params = {}) {
|
|
37
|
+
return hostRequest(`app:${name}`, params);
|
|
38
|
+
}
|
|
39
|
+
/** Runs the sync function registered under `name` inline; returns what it returned. */
|
|
40
|
+
export function callNativeSync(name, params = {}) {
|
|
41
|
+
if (!bridge?.callNativeSync)
|
|
42
|
+
throw new Error(`unsupported: no native host for ${name}`);
|
|
43
|
+
let result;
|
|
44
|
+
try {
|
|
45
|
+
result = JSON.parse(bridge.callNativeSync(name, JSON.stringify(params)));
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
throw new Error(`${name}: malformed response`);
|
|
49
|
+
}
|
|
50
|
+
if (typeof result.error === 'string') {
|
|
51
|
+
const error = new Error(result.error);
|
|
52
|
+
if (result.error.startsWith('cancelled'))
|
|
53
|
+
error.name = 'AbortError';
|
|
54
|
+
throw error;
|
|
55
|
+
}
|
|
56
|
+
return result.value;
|
|
57
|
+
}
|
|
58
|
+
/** Listens for what Swift sends under `name` (`NativeFunctions.send`); returns the function that stops listening. */
|
|
59
|
+
export function onNativeEvent(name, listener) {
|
|
60
|
+
let set = listeners.get(name);
|
|
61
|
+
if (!set) {
|
|
62
|
+
set = new Set();
|
|
63
|
+
listeners.set(name, set);
|
|
64
|
+
}
|
|
65
|
+
const entry = listener;
|
|
66
|
+
set.add(entry);
|
|
67
|
+
return () => {
|
|
68
|
+
set.delete(entry);
|
|
69
|
+
if (set.size === 0)
|
|
70
|
+
listeners.delete(name);
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
/** The bridge's `__sbNativeEvent(name, json)`. */
|
|
74
|
+
export function receiveNativeEvent(name, value) {
|
|
75
|
+
const set = listeners.get(name);
|
|
76
|
+
if (!set)
|
|
77
|
+
return;
|
|
78
|
+
let parsed = value;
|
|
79
|
+
if (typeof value === 'string') {
|
|
80
|
+
try {
|
|
81
|
+
parsed = JSON.parse(value);
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
for (const listener of [...set])
|
|
88
|
+
listener(parsed);
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=nativeFunctions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nativeFunctions.js","sourceRoot":"","sources":["../src/nativeFunctions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `navigator.onLine` and the `online` and `offline` events over the host's
|
|
3
|
+
* path monitor (`online()` on the bridge, `__sbOnline(bool)` back). The
|
|
4
|
+
* value is what the host last said (`NWPathMonitor`'s path status, true
|
|
5
|
+
* where the host has no monitor); the events reach listeners on the global
|
|
6
|
+
* (`addEventListener('online', …)`, which the runtime defines in the app's
|
|
7
|
+
* context, where a page's `window` would take them) and the global's
|
|
8
|
+
* `ononline` and `onoffline` handlers.
|
|
9
|
+
*/
|
|
10
|
+
import type { NativeBridge } from './bridge';
|
|
11
|
+
type Listener = (event: {
|
|
12
|
+
type: 'online' | 'offline';
|
|
13
|
+
}) => void;
|
|
14
|
+
export interface Reachability {
|
|
15
|
+
/** `navigator.onLine`. */
|
|
16
|
+
readonly onLine: boolean;
|
|
17
|
+
addEventListener(type: string, listener: Listener): void;
|
|
18
|
+
removeEventListener(type: string, listener: Listener): void;
|
|
19
|
+
/** `__sbOnline(online)`: the host's path changed. */
|
|
20
|
+
receive(online: boolean): void;
|
|
21
|
+
}
|
|
22
|
+
export declare function createReachability(native: NativeBridge, target: Record<string, unknown>): Reachability;
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=reachability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reachability.d.ts","sourceRoot":"","sources":["../src/reachability.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,KAAK,QAAQ,GAAG,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAA;CAAE,KAAK,IAAI,CAAC;AAEhE,MAAM,WAAW,YAAY;IAC3B,0BAA0B;IAC1B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IACzD,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC5D,qDAAqD;IACrD,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CAChC;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,YAAY,CAyBtG"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `navigator.onLine` and the `online` and `offline` events over the host's
|
|
3
|
+
* path monitor (`online()` on the bridge, `__sbOnline(bool)` back). The
|
|
4
|
+
* value is what the host last said (`NWPathMonitor`'s path status, true
|
|
5
|
+
* where the host has no monitor); the events reach listeners on the global
|
|
6
|
+
* (`addEventListener('online', …)`, which the runtime defines in the app's
|
|
7
|
+
* context, where a page's `window` would take them) and the global's
|
|
8
|
+
* `ononline` and `onoffline` handlers.
|
|
9
|
+
*/
|
|
10
|
+
export function createReachability(native, target) {
|
|
11
|
+
let online = native.online?.() ?? true;
|
|
12
|
+
const listeners = { online: new Set(), offline: new Set() };
|
|
13
|
+
const isKind = (type) => type === 'online' || type === 'offline';
|
|
14
|
+
return {
|
|
15
|
+
get onLine() {
|
|
16
|
+
return online;
|
|
17
|
+
},
|
|
18
|
+
addEventListener(type, listener) {
|
|
19
|
+
if (isKind(type) && typeof listener === 'function')
|
|
20
|
+
listeners[type].add(listener);
|
|
21
|
+
},
|
|
22
|
+
removeEventListener(type, listener) {
|
|
23
|
+
if (isKind(type))
|
|
24
|
+
listeners[type].delete(listener);
|
|
25
|
+
},
|
|
26
|
+
receive(next) {
|
|
27
|
+
const value = Boolean(next);
|
|
28
|
+
if (value === online)
|
|
29
|
+
return;
|
|
30
|
+
online = value;
|
|
31
|
+
const type = value ? 'online' : 'offline';
|
|
32
|
+
const event = { type };
|
|
33
|
+
const handler = target[value ? 'ononline' : 'onoffline'];
|
|
34
|
+
if (typeof handler === 'function')
|
|
35
|
+
handler(event);
|
|
36
|
+
for (const listener of [...listeners[type]])
|
|
37
|
+
listener(event);
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=reachability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reachability.js","sourceRoot":"","sources":["../src/reachability.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAeH,MAAM,UAAU,kBAAkB,CAAC,MAAoB,EAAE,MAA+B;IACtF,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,IAAI,CAAC;IACvC,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,IAAI,GAAG,EAAY,EAAE,OAAO,EAAE,IAAI,GAAG,EAAY,EAAE,CAAC;IAChF,MAAM,MAAM,GAAG,CAAC,IAAY,EAAgC,EAAE,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,CAAC;IACvG,OAAO;QACL,IAAI,MAAM;YACR,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,gBAAgB,CAAC,IAAI,EAAE,QAAQ;YAC7B,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,OAAO,QAAQ,KAAK,UAAU;gBAAE,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpF,CAAC;QACD,mBAAmB,CAAC,IAAI,EAAE,QAAQ;YAChC,IAAI,MAAM,CAAC,IAAI,CAAC;gBAAE,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,CAAC,IAAI;YACV,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,KAAK,KAAK,MAAM;gBAAE,OAAO;YAC7B,MAAM,GAAG,KAAK,CAAC;YACf,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1C,MAAM,KAAK,GAAG,EAAE,IAAI,EAAW,CAAC;YAChC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACzD,IAAI,OAAO,OAAO,KAAK,UAAU;gBAAG,OAAoB,CAAC,KAAK,CAAC,CAAC;YAChE,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;gBAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAA4D,KAAK,WAAW,EAA6B,MAAM,qBAAqB,CAAC;AAC5I,OAAO,KAAK,EAAM,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAI3D,MAAM,WAAW,UAAU;IACzB,wEAAwE;IACxE,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,sFAAsF;IACtF,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,wDAAwD;IACxD,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAAC;IAC9C,OAAO,IAAI,IAAI,CAAC;CACjB;AAaD,wBAAgB,GAAG,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CA2EzE"}
|
package/dist/run.js
CHANGED
|
@@ -64,9 +64,11 @@ export function run(element, options = {}) {
|
|
|
64
64
|
updateMediaEnvironment({ colorScheme: fields.colorScheme });
|
|
65
65
|
}
|
|
66
66
|
if (fields.dynamicTypeSize)
|
|
67
|
-
next
|
|
67
|
+
next.dynamicTypeSize = fields.dynamicTypeSize;
|
|
68
68
|
if (fields.horizontalSizeClass)
|
|
69
69
|
next.horizontalSizeClass = fields.horizontalSizeClass;
|
|
70
|
+
if (fields.scenePhase)
|
|
71
|
+
next.scenePhase = fields.scenePhase;
|
|
70
72
|
if (Object.keys(next).length > 0)
|
|
71
73
|
root.setEnvironment(next);
|
|
72
74
|
return;
|
package/dist/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -11,12 +11,19 @@
|
|
|
11
11
|
* `atob`, `btoa`, `fetch` with `Headers`, `Request`, `Response`,
|
|
12
12
|
* `AbortController` and `AbortSignal`, `URL`, `URLSearchParams`, `crypto`
|
|
13
13
|
* (`getRandomValues`, `randomUUID`), `localStorage`, `structuredClone`,
|
|
14
|
-
* `navigator` (with `
|
|
14
|
+
* `navigator` (with `onLine` from the host's path monitor, reachability.ts,
|
|
15
|
+
* whose `online` and `offline` events `addEventListener` on the global takes
|
|
16
|
+
* with the bridge's `__sbOnline`; with `wakeLock` and `WakeLockSentinel` on
|
|
17
|
+
* a bridge with `wakeLock`, wakeLock.ts; with `geolocation` and
|
|
18
|
+
* `GeolocationPositionError` on a bridge with `geolocation`, geolocation.ts,
|
|
19
|
+
* with the bridge's `__sbGeolocation`; with `mediaSession` and `MediaMetadata` on a bridge with
|
|
15
20
|
* `mediaSession`, mediaSession.ts), `Image` (image.ts, on a bridge with `probeImage`) with the
|
|
16
21
|
* bridge's `__sbImageProbed`, `Worker` (worker.ts) with the bridge's
|
|
17
22
|
* `__sbWorkerMessage` and `__sbWorkerError`, `__sbOpenURL` (openURL.ts),
|
|
18
23
|
* `__sbNotificationPermission`, `__sbPushRegistered` and `__sbNotification` (notifications.ts),
|
|
19
|
-
* `__sbUndoCommand` (undo.ts, on a bridge with `undoState`),
|
|
24
|
+
* `__sbUndoCommand` (undo.ts, on a bridge with `undoState`), `speechSynthesis`,
|
|
25
|
+
* `SpeechSynthesisUtterance` and `__sbSpeechEvent` on a bridge with `speak`,
|
|
26
|
+
* `SpeechRecognition` and `__sbRecognition` on one with `recognize` (speech.ts),
|
|
20
27
|
* and the bridge's callbacks `__sbTimerFired` and `__sbFetchResult`. In a
|
|
21
28
|
* worker's own context (its bridge has
|
|
22
29
|
* `workerPostMessage`), `self`, `postMessage`, `addEventListener` and
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAsB3D,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAQzC,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,GAAE,SAA8C,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,EAAE,CAoSnJ"}
|
package/dist/runtime.js
CHANGED
|
@@ -11,12 +11,19 @@
|
|
|
11
11
|
* `atob`, `btoa`, `fetch` with `Headers`, `Request`, `Response`,
|
|
12
12
|
* `AbortController` and `AbortSignal`, `URL`, `URLSearchParams`, `crypto`
|
|
13
13
|
* (`getRandomValues`, `randomUUID`), `localStorage`, `structuredClone`,
|
|
14
|
-
* `navigator` (with `
|
|
14
|
+
* `navigator` (with `onLine` from the host's path monitor, reachability.ts,
|
|
15
|
+
* whose `online` and `offline` events `addEventListener` on the global takes
|
|
16
|
+
* with the bridge's `__sbOnline`; with `wakeLock` and `WakeLockSentinel` on
|
|
17
|
+
* a bridge with `wakeLock`, wakeLock.ts; with `geolocation` and
|
|
18
|
+
* `GeolocationPositionError` on a bridge with `geolocation`, geolocation.ts,
|
|
19
|
+
* with the bridge's `__sbGeolocation`; with `mediaSession` and `MediaMetadata` on a bridge with
|
|
15
20
|
* `mediaSession`, mediaSession.ts), `Image` (image.ts, on a bridge with `probeImage`) with the
|
|
16
21
|
* bridge's `__sbImageProbed`, `Worker` (worker.ts) with the bridge's
|
|
17
22
|
* `__sbWorkerMessage` and `__sbWorkerError`, `__sbOpenURL` (openURL.ts),
|
|
18
23
|
* `__sbNotificationPermission`, `__sbPushRegistered` and `__sbNotification` (notifications.ts),
|
|
19
|
-
* `__sbUndoCommand` (undo.ts, on a bridge with `undoState`),
|
|
24
|
+
* `__sbUndoCommand` (undo.ts, on a bridge with `undoState`), `speechSynthesis`,
|
|
25
|
+
* `SpeechSynthesisUtterance` and `__sbSpeechEvent` on a bridge with `speak`,
|
|
26
|
+
* `SpeechRecognition` and `__sbRecognition` on one with `recognize` (speech.ts),
|
|
20
27
|
* and the bridge's callbacks `__sbTimerFired` and `__sbFetchResult`. In a
|
|
21
28
|
* worker's own context (its bridge has
|
|
22
29
|
* `workerPostMessage`), `self`, `postMessage`, `addEventListener` and
|
|
@@ -39,7 +46,12 @@ import { NativeWebSocket } from './webSocket';
|
|
|
39
46
|
import { createSubtleCrypto } from './subtle';
|
|
40
47
|
import { matchMedia } from './matchMedia';
|
|
41
48
|
import { createUndoHost, installUndoHost } from './undo';
|
|
42
|
-
import { installHostRequests, receiveHostResponse } from './hostRequests';
|
|
49
|
+
import { installHostRequests, receiveFilesChanged, receiveHostResponse } from './hostRequests';
|
|
50
|
+
import { installNativeFunctions, receiveNativeEvent } from './nativeFunctions';
|
|
51
|
+
import { createReachability } from './reachability';
|
|
52
|
+
import { createWakeLock, WakeLockSentinel } from './wakeLock';
|
|
53
|
+
import { createGeolocation, GeolocationPositionError } from './geolocation';
|
|
54
|
+
import { createSpeechSynthesis, SpeechRecognition, SpeechSynthesisUtterance } from './speech';
|
|
43
55
|
/**
|
|
44
56
|
* Installs the runtime on `target` (the global object) over `native`.
|
|
45
57
|
* Returns what it installed, by name.
|
|
@@ -194,6 +206,16 @@ export function installRuntime(native, target = globalThis, options = {}) {
|
|
|
194
206
|
if (native.hostRequest && !native.workerPostMessage) {
|
|
195
207
|
installHostRequests({ hostRequest: native.hostRequest.bind(native), ...(native.appDirectories ? { appDirectories: native.appDirectories.bind(native) } : {}) });
|
|
196
208
|
define('__sbHostResponse', receiveHostResponse);
|
|
209
|
+
define('__sbFilesChanged', receiveFilesChanged);
|
|
210
|
+
// The escape hatch's functions (nativeFunctions.ts): `callNative` rides `hostRequest`.
|
|
211
|
+
installNativeFunctions({
|
|
212
|
+
...(native.nativeFunctions ? { nativeFunctions: native.nativeFunctions.bind(native) } : {}),
|
|
213
|
+
...(native.callNativeSync ? { callNativeSync: native.callNativeSync.bind(native) } : {}),
|
|
214
|
+
});
|
|
215
|
+
define('__sbNativeEvent', receiveNativeEvent);
|
|
216
|
+
}
|
|
217
|
+
else {
|
|
218
|
+
installNativeFunctions(null);
|
|
197
219
|
}
|
|
198
220
|
// The window's undo manager (undo.ts), mirroring the app's: the system's undo comes to `__sbUndoCommand`.
|
|
199
221
|
if (native.undoState && !native.workerPostMessage) {
|
|
@@ -239,11 +261,15 @@ export function installRuntime(native, target = globalThis, options = {}) {
|
|
|
239
261
|
};
|
|
240
262
|
define('localStorage', storage);
|
|
241
263
|
define('structuredClone', (value) => (value === undefined ? value : JSON.parse(JSON.stringify(value))));
|
|
264
|
+
// Reachability (reachability.ts): `navigator.onLine` from the host's path monitor.
|
|
265
|
+
const reachability = createReachability(native, target);
|
|
242
266
|
const navigator = {
|
|
243
267
|
userAgent: 'SwiftBrowserNative',
|
|
244
268
|
language: native.locale().replace('_', '-'),
|
|
245
269
|
languages: [native.locale().replace('_', '-')],
|
|
246
|
-
onLine
|
|
270
|
+
get onLine() {
|
|
271
|
+
return reachability.onLine;
|
|
272
|
+
},
|
|
247
273
|
platform: 'iOS',
|
|
248
274
|
hardwareConcurrency: 1,
|
|
249
275
|
// A haptic for a vibration; the pattern's length does not matter.
|
|
@@ -257,6 +283,14 @@ export function installRuntime(native, target = globalThis, options = {}) {
|
|
|
257
283
|
return true;
|
|
258
284
|
},
|
|
259
285
|
};
|
|
286
|
+
// The screen wake lock (wakeLock.ts) over the host's idle timer; not in a worker.
|
|
287
|
+
const wakeLock = native.wakeLock && !native.workerPostMessage ? createWakeLock(native) : null;
|
|
288
|
+
if (wakeLock)
|
|
289
|
+
navigator['wakeLock'] = wakeLock;
|
|
290
|
+
// The viewer's position (geolocation.ts) over the host's location manager; not in a worker.
|
|
291
|
+
const geolocation = native.geolocation && !native.workerPostMessage ? createGeolocation(native, target) : null;
|
|
292
|
+
if (geolocation)
|
|
293
|
+
navigator['geolocation'] = geolocation.geolocation;
|
|
260
294
|
// What plays, for the lock screen and the media keys (mediaSession.ts); not in a worker.
|
|
261
295
|
const mediaSession = native.mediaSession && !native.workerPostMessage ? createMediaSession(native) : null;
|
|
262
296
|
if (mediaSession)
|
|
@@ -269,6 +303,25 @@ export function installRuntime(native, target = globalThis, options = {}) {
|
|
|
269
303
|
navigator['clearAppBadge'] = notifications.clearAppBadge;
|
|
270
304
|
}
|
|
271
305
|
define('navigator', navigator);
|
|
306
|
+
if (wakeLock)
|
|
307
|
+
define('WakeLockSentinel', WakeLockSentinel);
|
|
308
|
+
if (geolocation) {
|
|
309
|
+
define('GeolocationPositionError', GeolocationPositionError);
|
|
310
|
+
define('__sbGeolocation', geolocation.receive);
|
|
311
|
+
}
|
|
312
|
+
// Speech (speech.ts): synthesis on AVSpeechSynthesizer, recognition on SFSpeechRecognizer; not in a worker.
|
|
313
|
+
if (native.speak && native.speechControl && !native.workerPostMessage) {
|
|
314
|
+
const synthesis = createSpeechSynthesis(native);
|
|
315
|
+
define('speechSynthesis', synthesis.speechSynthesis);
|
|
316
|
+
define('SpeechSynthesisUtterance', SpeechSynthesisUtterance);
|
|
317
|
+
define('__sbSpeechEvent', synthesis.receive);
|
|
318
|
+
}
|
|
319
|
+
if (native.recognize && !native.workerPostMessage) {
|
|
320
|
+
SpeechRecognition.install({ recognize: native.recognize.bind(native) });
|
|
321
|
+
define('SpeechRecognition', SpeechRecognition);
|
|
322
|
+
define('webkitSpeechRecognition', SpeechRecognition);
|
|
323
|
+
define('__sbRecognition', SpeechRecognition.receive);
|
|
324
|
+
}
|
|
272
325
|
if (mediaSession) {
|
|
273
326
|
define('MediaMetadata', NativeMediaMetadata);
|
|
274
327
|
define('__sbMediaSessionCommand', mediaSession.receive);
|
|
@@ -283,8 +336,12 @@ export function installRuntime(native, target = globalThis, options = {}) {
|
|
|
283
336
|
installed.push(...installWorkerScope(native, target));
|
|
284
337
|
}
|
|
285
338
|
else {
|
|
286
|
-
// The app's context: the URLs it is opened with (openURL.ts),
|
|
339
|
+
// The app's context: the URLs it is opened with (openURL.ts), the
|
|
340
|
+
// `online` and `offline` events (a page's `window` takes them), and workers.
|
|
287
341
|
define('__sbOpenURL', receiveOpenURL);
|
|
342
|
+
define('addEventListener', reachability.addEventListener);
|
|
343
|
+
define('removeEventListener', reachability.removeEventListener);
|
|
344
|
+
define('__sbOnline', reachability.receive);
|
|
288
345
|
if (native.workerStart) {
|
|
289
346
|
define('Worker', NativeWorker);
|
|
290
347
|
define('__sbWorkerMessage', NativeWorker.receive);
|
package/dist/runtime.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/speech.d.ts
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Web Speech API over the host: `speechSynthesis` and
|
|
3
|
+
* `SpeechSynthesisUtterance` on `AVSpeechSynthesizer` (the bridge's
|
|
4
|
+
* `speak(id, json)` and `speechControl(action)`, events at
|
|
5
|
+
* `__sbSpeechEvent(id, json)`), and `SpeechRecognition` on
|
|
6
|
+
* `SFSpeechRecognizer` (`recognize(id, action, json)`, events at
|
|
7
|
+
* `__sbRecognition(id, json)`; the app's Info.plist names
|
|
8
|
+
* `NSSpeechRecognitionUsageDescription` and `NSMicrophoneUsageDescription`).
|
|
9
|
+
* The shapes apps use: an utterance's `text`, `lang`, `rate`, `pitch`,
|
|
10
|
+
* `volume` and its `start`, `end`, `error`, `pause`, `resume` and `boundary`
|
|
11
|
+
* events; a recognition's `lang`, `continuous`, `interimResults`, `start()`,
|
|
12
|
+
* `stop()`, `abort()` and its `start`, `result` (with `results[i][0].transcript`
|
|
13
|
+
* and `isFinal`), `error` (`error`: `not-allowed`, `audio-capture`,
|
|
14
|
+
* `no-speech`, `network`, `aborted`) and `end` events.
|
|
15
|
+
*/
|
|
16
|
+
import type { NativeBridge } from './bridge';
|
|
17
|
+
type Listener<E> = (event: E) => void;
|
|
18
|
+
/** Handlers and listeners by event type, as the DOM's targets have them. */
|
|
19
|
+
declare class Target<E extends {
|
|
20
|
+
type: string;
|
|
21
|
+
}> {
|
|
22
|
+
private readonly handlers;
|
|
23
|
+
private readonly listeners;
|
|
24
|
+
constructor(handlers: Record<string, unknown>);
|
|
25
|
+
add(type: string, listener: Listener<E>): void;
|
|
26
|
+
remove(type: string, listener: Listener<E>): void;
|
|
27
|
+
fire(event: E): void;
|
|
28
|
+
}
|
|
29
|
+
export interface SpeechSynthesisEvent {
|
|
30
|
+
type: 'start' | 'end' | 'error' | 'pause' | 'resume' | 'boundary';
|
|
31
|
+
utterance: SpeechSynthesisUtterance;
|
|
32
|
+
charIndex: number;
|
|
33
|
+
charLength: number;
|
|
34
|
+
elapsedTime: number;
|
|
35
|
+
name: string;
|
|
36
|
+
error?: string;
|
|
37
|
+
}
|
|
38
|
+
export declare class SpeechSynthesisUtterance {
|
|
39
|
+
text: string;
|
|
40
|
+
lang: string;
|
|
41
|
+
voice: {
|
|
42
|
+
name: string;
|
|
43
|
+
lang: string;
|
|
44
|
+
} | null;
|
|
45
|
+
volume: number;
|
|
46
|
+
rate: number;
|
|
47
|
+
pitch: number;
|
|
48
|
+
onstart: Listener<SpeechSynthesisEvent> | null;
|
|
49
|
+
onend: Listener<SpeechSynthesisEvent> | null;
|
|
50
|
+
onerror: Listener<SpeechSynthesisEvent> | null;
|
|
51
|
+
onpause: Listener<SpeechSynthesisEvent> | null;
|
|
52
|
+
onresume: Listener<SpeechSynthesisEvent> | null;
|
|
53
|
+
onboundary: Listener<SpeechSynthesisEvent> | null;
|
|
54
|
+
onmark: Listener<SpeechSynthesisEvent> | null;
|
|
55
|
+
/** @internal */
|
|
56
|
+
readonly target: Target<SpeechSynthesisEvent>;
|
|
57
|
+
constructor(text?: string);
|
|
58
|
+
addEventListener(type: string, listener: Listener<SpeechSynthesisEvent>): void;
|
|
59
|
+
removeEventListener(type: string, listener: Listener<SpeechSynthesisEvent>): void;
|
|
60
|
+
}
|
|
61
|
+
export interface SpeechSynthesis {
|
|
62
|
+
readonly speaking: boolean;
|
|
63
|
+
readonly pending: boolean;
|
|
64
|
+
readonly paused: boolean;
|
|
65
|
+
onvoiceschanged: (() => void) | null;
|
|
66
|
+
speak(utterance: SpeechSynthesisUtterance): void;
|
|
67
|
+
cancel(): void;
|
|
68
|
+
pause(): void;
|
|
69
|
+
resume(): void;
|
|
70
|
+
getVoices(): {
|
|
71
|
+
name: string;
|
|
72
|
+
lang: string;
|
|
73
|
+
default: boolean;
|
|
74
|
+
localService: boolean;
|
|
75
|
+
voiceURI: string;
|
|
76
|
+
}[];
|
|
77
|
+
addEventListener(type: string, listener: () => void): void;
|
|
78
|
+
removeEventListener(type: string, listener: () => void): void;
|
|
79
|
+
}
|
|
80
|
+
/** The host's event for utterance `id`. */
|
|
81
|
+
export interface NativeSpeechEvent {
|
|
82
|
+
type: 'start' | 'end' | 'cancel' | 'pause' | 'resume' | 'boundary' | 'error';
|
|
83
|
+
charIndex?: number;
|
|
84
|
+
charLength?: number;
|
|
85
|
+
message?: string;
|
|
86
|
+
}
|
|
87
|
+
export declare function createSpeechSynthesis(native: NativeBridge): {
|
|
88
|
+
speechSynthesis: SpeechSynthesis;
|
|
89
|
+
receive(id: number, json: string): void;
|
|
90
|
+
};
|
|
91
|
+
export interface SpeechRecognitionAlternative {
|
|
92
|
+
transcript: string;
|
|
93
|
+
confidence: number;
|
|
94
|
+
}
|
|
95
|
+
export interface SpeechRecognitionResult {
|
|
96
|
+
readonly isFinal: boolean;
|
|
97
|
+
readonly length: number;
|
|
98
|
+
[index: number]: SpeechRecognitionAlternative;
|
|
99
|
+
item(index: number): SpeechRecognitionAlternative;
|
|
100
|
+
}
|
|
101
|
+
export interface SpeechRecognitionEvent {
|
|
102
|
+
type: 'start' | 'audiostart' | 'result' | 'error' | 'end' | 'audioend' | 'nomatch';
|
|
103
|
+
resultIndex: number;
|
|
104
|
+
results: SpeechRecognitionResult[];
|
|
105
|
+
error?: string;
|
|
106
|
+
message?: string;
|
|
107
|
+
}
|
|
108
|
+
/** The host's event for recognition `id`. */
|
|
109
|
+
export interface NativeRecognitionEvent {
|
|
110
|
+
type: 'start' | 'result' | 'error' | 'end';
|
|
111
|
+
transcript?: string;
|
|
112
|
+
isFinal?: boolean;
|
|
113
|
+
confidence?: number;
|
|
114
|
+
error?: string;
|
|
115
|
+
message?: string;
|
|
116
|
+
}
|
|
117
|
+
export type RecognitionBridge = Required<Pick<NativeBridge, 'recognize'>>;
|
|
118
|
+
export declare class SpeechRecognition {
|
|
119
|
+
lang: string;
|
|
120
|
+
continuous: boolean;
|
|
121
|
+
interimResults: boolean;
|
|
122
|
+
maxAlternatives: number;
|
|
123
|
+
onstart: Listener<SpeechRecognitionEvent> | null;
|
|
124
|
+
onaudiostart: Listener<SpeechRecognitionEvent> | null;
|
|
125
|
+
onresult: Listener<SpeechRecognitionEvent> | null;
|
|
126
|
+
onerror: Listener<SpeechRecognitionEvent> | null;
|
|
127
|
+
onend: Listener<SpeechRecognitionEvent> | null;
|
|
128
|
+
onaudioend: Listener<SpeechRecognitionEvent> | null;
|
|
129
|
+
onnomatch: Listener<SpeechRecognitionEvent> | null;
|
|
130
|
+
private readonly target;
|
|
131
|
+
private id;
|
|
132
|
+
/** The final results so far in this session, then the interim one (if any) last. */
|
|
133
|
+
private results;
|
|
134
|
+
static install(bridge: RecognitionBridge): void;
|
|
135
|
+
start(): void;
|
|
136
|
+
/** Stops listening; what was heard is still delivered, then `end`. */
|
|
137
|
+
stop(): void;
|
|
138
|
+
/** Stops listening and keeps nothing more. */
|
|
139
|
+
abort(): void;
|
|
140
|
+
addEventListener(type: string, listener: Listener<SpeechRecognitionEvent>): void;
|
|
141
|
+
removeEventListener(type: string, listener: Listener<SpeechRecognitionEvent>): void;
|
|
142
|
+
/** `__sbRecognition(id, json)`. */
|
|
143
|
+
static receive(id: number, json: string): void;
|
|
144
|
+
private event;
|
|
145
|
+
private handle;
|
|
146
|
+
}
|
|
147
|
+
export {};
|
|
148
|
+
//# sourceMappingURL=speech.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"speech.d.ts","sourceRoot":"","sources":["../src/speech.ts"],"names":[],"mappings":"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"}
|