@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
package/README.md
CHANGED
|
@@ -13,7 +13,11 @@ three things:
|
|
|
13
13
|
`console`, `performance`, `fetch` with `Headers`, `Request`, `Response`
|
|
14
14
|
and `AbortController`, `URL`, `URLSearchParams`, `TextEncoder`,
|
|
15
15
|
`TextDecoder`, `atob`, `btoa`, `crypto.getRandomValues` and `randomUUID`,
|
|
16
|
-
`localStorage`, `structuredClone`, `navigator
|
|
16
|
+
`localStorage`, `structuredClone`, `navigator` (with `onLine` from the
|
|
17
|
+
host's path monitor, and the `online` and `offline` events; with
|
|
18
|
+
`wakeLock` over the host's idle timer; with `geolocation` over the host's
|
|
19
|
+
location manager), `speechSynthesis` and `SpeechRecognition` over the
|
|
20
|
+
system's voices and recognizer, `Image` over the host's
|
|
17
21
|
image loader, for the size of a picture without drawing it, which is how
|
|
18
22
|
`AsyncImage`'s `placeholder` and `failure` show natively). React's
|
|
19
23
|
scheduler reads some of these when it loads, so the bundle starts with the
|
|
@@ -100,8 +104,39 @@ parser, enough for absolute and relative URLs and query strings, not the
|
|
|
100
104
|
whole WHATWG algorithm; `URL.createObjectURL` gives a `data:` URL. `WebSocket`
|
|
101
105
|
runs on `URLSessionWebSocketTask`, `crypto.subtle` digests (SHA-1 to
|
|
102
106
|
SHA-512) and signs HMACs on CryptoKit, `matchMedia` answers the
|
|
103
|
-
`prefers-color-scheme` queries from the host's environment,
|
|
104
|
-
`navigator.vibrate` plays a haptic.
|
|
107
|
+
`prefers-color-scheme` queries from the host's environment,
|
|
108
|
+
`navigator.vibrate` plays a haptic, and `navigator.onLine` is the network
|
|
109
|
+
path's status from `NWPathMonitor`, with the `online` and `offline` events
|
|
110
|
+
on the global (`addEventListener('offline', …)`, as there is no `window`;
|
|
111
|
+
`ononline` and `onoffline` handlers too). `navigator.wakeLock.request('screen')`
|
|
112
|
+
keeps the screen awake while its sentinel is held
|
|
113
|
+
(`UIApplication.isIdleTimerDisabled`; a native sentinel stays held in the
|
|
114
|
+
background, where the system owns the screen, and holds again on return).
|
|
115
|
+
`signInWithApple` and `SignInWithAppleButton` show the system's Sign in with
|
|
116
|
+
Apple sheet (`ASAuthorizationController`, with the app's
|
|
117
|
+
`com.apple.developer.applesignin` entitlement) and answer the credential;
|
|
118
|
+
`appleCredentialState` asks the provider.
|
|
119
|
+
`fileManager` reaches the app's sandbox through `files` requests, and its
|
|
120
|
+
iCloud Drive container (`iCloudDirectory()`) where the app has the
|
|
121
|
+
entitlement: the container's files are read and written under file
|
|
122
|
+
coordination, downloaded first when another device wrote them, and their
|
|
123
|
+
changes come to `__sbFilesChanged` for `fileManager.watch`.
|
|
124
|
+
`navigator.geolocation` asks `CLLocationManager`: `getCurrentPosition` for
|
|
125
|
+
one fix, `watchPosition` for every fix until `clearWatch`, with the API's
|
|
126
|
+
`GeolocationPositionError` codes (the first ask prompts the viewer; the
|
|
127
|
+
app's Info.plist names `NSLocationWhenInUseUsageDescription`).
|
|
128
|
+
`speechSynthesis.speak(new SpeechSynthesisUtterance(text))` reads through
|
|
129
|
+
`AVSpeechSynthesizer` (the utterance's `lang`, `rate`, `pitch` and `volume`,
|
|
130
|
+
its `start`, `boundary`, `pause`, `resume`, `end` and `error` events;
|
|
131
|
+
`cancel`, `pause` and `resume` on the queue), and `new SpeechRecognition()`
|
|
132
|
+
listens through `SFSpeechRecognizer` (`lang`, `continuous`,
|
|
133
|
+
`interimResults`; `start`, `stop`, `abort`; `result` events with
|
|
134
|
+
`results[i][0].transcript` and `isFinal`, `error` and `end`; the app's
|
|
135
|
+
Info.plist names `NSSpeechRecognitionUsageDescription` and
|
|
136
|
+
`NSMicrophoneUsageDescription`).
|
|
137
|
+
A page's `useScenePhase()` is
|
|
138
|
+
the app's scene phase here (`active`, `inactive`, `background`), as
|
|
139
|
+
`NativeRootView` sends it.
|
|
105
140
|
|
|
106
141
|
## Workers
|
|
107
142
|
|
|
@@ -228,11 +263,12 @@ too (docs/ops-protocol.md, "Push notifications").
|
|
|
228
263
|
|
|
229
264
|
## Sharing, picking, the clipboard and signing in
|
|
230
265
|
|
|
231
|
-
`ShareLink`, `fileImporter`, the clipboard and the color
|
|
232
|
-
`@swiftbrowser/react` ask the browser for a share sheet, a file
|
|
233
|
-
pasteboard and a color picker; in the native app
|
|
234
|
-
with `UIActivityViewController`, the photo picker
|
|
235
|
-
or the document picker
|
|
266
|
+
`ShareLink`, `fileImporter`, `fileExporter`, the clipboard and the color
|
|
267
|
+
chooser from `@swiftbrowser/react` ask the browser for a share sheet, a file
|
|
268
|
+
chooser, a save dialog, the pasteboard and a color picker; in the native app
|
|
269
|
+
the host answers instead, with `UIActivityViewController`, the photo picker
|
|
270
|
+
(for pictures and videos) or the document picker (which also saves an export
|
|
271
|
+
to Files), `UIPasteboard` and `UIColorPickerViewController`.
|
|
236
272
|
Nothing to write: `run` fills the web renderer's environment with what the
|
|
237
273
|
page has nothing for, so a screen written for the page shares and picks as
|
|
238
274
|
it did. Picked files are `File`s with their bytes.
|
|
@@ -331,6 +367,35 @@ NativeRegistry.register("MapView") { context in
|
|
|
331
367
|
}
|
|
332
368
|
```
|
|
333
369
|
|
|
370
|
+
Swift that is not a view registers as a function, before the bundle loads
|
|
371
|
+
(`swiftbrowser native init` writes an `ios/NativeFunctions.swift` for them):
|
|
372
|
+
|
|
373
|
+
```swift
|
|
374
|
+
NativeFunctions.register("purchase") { call in // async
|
|
375
|
+
let product = try await Product.products(for: [call["id"].string ?? ""]).first
|
|
376
|
+
...
|
|
377
|
+
return ["state": "purchased"]
|
|
378
|
+
}
|
|
379
|
+
NativeFunctions.registerSync("deviceName") { _ in .string(UIDevice.current.name) }
|
|
380
|
+
NativeFunctions.send("transaction", ["id": "pro"]) // Swift reporting on its own
|
|
381
|
+
```
|
|
382
|
+
|
|
383
|
+
```ts
|
|
384
|
+
import { callNative, callNativeSync, onNativeEvent, hasNativeFunction, nativeFunctions } from '@swiftbrowser/native';
|
|
385
|
+
|
|
386
|
+
const { state } = await callNative<{ state: string }>('purchase', { id: 'pro' });
|
|
387
|
+
const name = callNativeSync<string>('deviceName');
|
|
388
|
+
const stop = onNativeEvent('transaction', (value) => console.log('bought', value));
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
Params and results cross as JSON (`call["id"]` reads a member, `call.decode(MyParams.self)` the
|
|
392
|
+
whole object). An error a function throws rejects the promise with its description;
|
|
393
|
+
`NativeFunctionCancelled` rejects with an `AbortError`, as the system pickers' cancellations do.
|
|
394
|
+
`callNative` is a host request (`app:<name>`), so it needs nothing the other requests do not;
|
|
395
|
+
`callNativeSync` runs inline, for a cheap lookup used during render. On the web build of the same
|
|
396
|
+
app `callNative` rejects `unsupported:`, `nativeFunctions()` is empty and `hasNativeFunction(name)`
|
|
397
|
+
is false, so the app can fall back to the web's way. Everything runs on the main actor.
|
|
398
|
+
|
|
334
399
|
## Testing without a device
|
|
335
400
|
|
|
336
401
|
`installRuntime(native, target)` installs the runtime on any object over
|
package/dist/bridge.d.ts
CHANGED
|
@@ -5,7 +5,9 @@
|
|
|
5
5
|
* package defines (`__sbTimerFired`, `__sbFetchResult`, `__sbImageProbed`,
|
|
6
6
|
* `__sbWorkerMessage`, `__sbOpenURL`, `__sbMediaSessionCommand`,
|
|
7
7
|
* `__sbNotificationPermission`, `__sbPushRegistered`, `__sbNotification`,
|
|
8
|
-
* `__sbWebSocketEvent`, `__sbHostResponse`, `__sbUndoCommand`
|
|
8
|
+
* `__sbWebSocketEvent`, `__sbHostResponse`, `__sbUndoCommand`, `__sbOnline`,
|
|
9
|
+
* `__sbGeolocation`, `__sbSpeechEvent`, `__sbRecognition`,
|
|
10
|
+
* `__sbFilesChanged`, `__sbNativeEvent`).
|
|
9
11
|
*/
|
|
10
12
|
export interface NativeBridge {
|
|
11
13
|
/** Applies a render pass's ops (a JSON array). Returns an error message, or nothing. */
|
|
@@ -71,13 +73,73 @@ export interface NativeBridge {
|
|
|
71
73
|
hmac?(algorithm: string, key: string, data: string): string | null | undefined;
|
|
72
74
|
/** `navigator.vibrate`: a haptic (`impact`, `selection`, `success`, `warning`, `error`). Hosts before 0.20 lack it. */
|
|
73
75
|
haptic?(kind: string): void;
|
|
76
|
+
/**
|
|
77
|
+
* `navigator.onLine` (reachability.ts): whether the network path is
|
|
78
|
+
* satisfied, from `NWPathMonitor`; a change arrives at `__sbOnline(bool)`,
|
|
79
|
+
* which fires the `online` and `offline` events. Hosts before 0.19 lack it
|
|
80
|
+
* (and Linux and the round trip, which have no Network framework), and
|
|
81
|
+
* then the app is always online.
|
|
82
|
+
*/
|
|
83
|
+
online?(): boolean;
|
|
84
|
+
/**
|
|
85
|
+
* `navigator.wakeLock` (wakeLock.ts): keep the screen awake while `active`
|
|
86
|
+
* (`UIApplication.isIdleTimerDisabled`; a power assertion on macOS). Called
|
|
87
|
+
* when the first sentinel is taken and when the last is released. Hosts
|
|
88
|
+
* before 0.19 lack it, and then there is no `navigator.wakeLock`, as in a
|
|
89
|
+
* browser without the API.
|
|
90
|
+
*/
|
|
91
|
+
wakeLock?(active: boolean): void;
|
|
92
|
+
/**
|
|
93
|
+
* `speechSynthesis.speak`: utterance `id`, `{ text, lang, voice, rate, pitch,
|
|
94
|
+
* volume }` as JSON, queued on `AVSpeechSynthesizer`; its events arrive at
|
|
95
|
+
* `__sbSpeechEvent(id, json)`: `{ type: 'start' | 'end' | 'cancel' | 'pause'
|
|
96
|
+
* | 'resume' | 'boundary' | 'error', charIndex?, charLength?, message? }`.
|
|
97
|
+
*/
|
|
98
|
+
speak?(id: number, json: string): void;
|
|
99
|
+
/** `speechSynthesis.cancel`, `pause` and `resume`, for every utterance queued. */
|
|
100
|
+
speechControl?(action: 'cancel' | 'pause' | 'resume'): void;
|
|
101
|
+
/**
|
|
102
|
+
* `SpeechRecognition`: `start` listens to the microphone through
|
|
103
|
+
* `SFSpeechRecognizer` with `{ lang, continuous, interimResults }`, `stop`
|
|
104
|
+
* ends the audio and lets the last result come, `abort` ends it all; the
|
|
105
|
+
* events arrive at `__sbRecognition(id, json)`: `{ type: 'start' }`,
|
|
106
|
+
* `{ type: 'result', transcript, isFinal, confidence }`, `{ type: 'error',
|
|
107
|
+
* error, message }` and `{ type: 'end' }`. The first start asks for speech
|
|
108
|
+
* recognition and the microphone (`NSSpeechRecognitionUsageDescription`,
|
|
109
|
+
* `NSMicrophoneUsageDescription`).
|
|
110
|
+
*/
|
|
111
|
+
recognize?(id: number, action: 'start' | 'stop' | 'abort', json: string): void;
|
|
112
|
+
/**
|
|
113
|
+
* `navigator.geolocation` (geolocation.ts) over `CLLocationManager`:
|
|
114
|
+
* `current` asks for one fix, `watch` for every fix until `clear`, with
|
|
115
|
+
* the options `{ enableHighAccuracy, timeout, maximumAge }` as JSON. Each
|
|
116
|
+
* fix, or the failure, arrives at `__sbGeolocation(id, json)`: `{ position:
|
|
117
|
+
* { latitude, longitude, accuracy, altitude, altitudeAccuracy, heading,
|
|
118
|
+
* speed, timestamp } }` or `{ error: { code, message } }` (1 denied, 2
|
|
119
|
+
* unavailable). The first ask prompts the viewer (the app's Info.plist
|
|
120
|
+
* names `NSLocationWhenInUseUsageDescription`). Hosts before 0.19 lack it,
|
|
121
|
+
* and then there is no `navigator.geolocation`.
|
|
122
|
+
*/
|
|
123
|
+
geolocation?(id: number, action: 'current' | 'watch' | 'clear', json: string): void;
|
|
74
124
|
/**
|
|
75
125
|
* A host request of the web renderer's kinds (hostRequests.ts): `share`,
|
|
76
|
-
* `pickFiles`, `clipboard`, `pickColor` and `
|
|
126
|
+
* `pickFiles`, `exportFiles`, `clipboard`, `pickColor`, `webAuth`, `appleSignIn` and `files`, with the request's
|
|
77
127
|
* params as JSON; the answer arrives at `__sbHostResponse(id, { value } | { error })`.
|
|
128
|
+
* Once `files` resolved iCloud Drive's container (`action: 'iCloud'`), the
|
|
129
|
+
* URLs another device changes there arrive at `__sbFilesChanged(json)`.
|
|
78
130
|
* Hosts before 0.20 lack it.
|
|
79
131
|
*/
|
|
80
132
|
hostRequest?(id: number, kind: string, json: string): void;
|
|
133
|
+
/**
|
|
134
|
+
* The escape hatch's functions (nativeFunctions.ts): the names the Swift
|
|
135
|
+
* app registered with `NativeFunctions`, and a sync one run inline with its
|
|
136
|
+
* params as JSON, answering `{ value } | { error }` as JSON. The async ones
|
|
137
|
+
* go through `hostRequest` as `app:<name>`; what Swift sends with
|
|
138
|
+
* `NativeFunctions.send` arrives at `__sbNativeEvent(name, json)`. Hosts
|
|
139
|
+
* before 0.20 lack them.
|
|
140
|
+
*/
|
|
141
|
+
nativeFunctions?(): string[];
|
|
142
|
+
callNativeSync?(name: string, json: string): string;
|
|
81
143
|
/**
|
|
82
144
|
* The app's undo manager's state (undo.ts): `{ canUndo, canRedo,
|
|
83
145
|
* undoActionName, redoActionName }` as JSON, which the host mirrors on the
|
package/dist/bridge.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"}
|
package/dist/bridge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"AAqNA,kEAAkE;AAClE,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,OAAO,MAAM,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC;AAC3C,CAAC;AA0BD,yFAAyF;AACzF,MAAM,UAAU,YAAY,CAAC,IAAuB,UAAU;IAC5D,OAAQ,CAA8C,CAAC,UAAU,CAAC;AACpE,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `navigator.geolocation` over the host's location manager (`geolocation(id,
|
|
3
|
+
* action, json)` on the bridge, `CLLocationManager` on the Swift side):
|
|
4
|
+
* `getCurrentPosition` asks once (`current`), `watchPosition` keeps asking
|
|
5
|
+
* (`watch`) until `clearWatch` (`clear`). Each answer arrives at
|
|
6
|
+
* `__sbGeolocation(id, json)` as `{ position: { latitude, longitude,
|
|
7
|
+
* accuracy, altitude?, altitudeAccuracy?, heading?, speed?, timestamp } }` or
|
|
8
|
+
* `{ error: { code, message } }` with the API's codes (1 permission denied, 2
|
|
9
|
+
* position unavailable, 3 timeout). The first ask prompts the viewer; the
|
|
10
|
+
* app's Info.plist names `NSLocationWhenInUseUsageDescription`. `timeout`
|
|
11
|
+
* runs here, on the runtime's timers; `maximumAge` is left to the host, which
|
|
12
|
+
* answers with its freshest fix.
|
|
13
|
+
*/
|
|
14
|
+
import type { NativeBridge } from './bridge';
|
|
15
|
+
export interface GeolocationCoordinates {
|
|
16
|
+
latitude: number;
|
|
17
|
+
longitude: number;
|
|
18
|
+
accuracy: number;
|
|
19
|
+
altitude: number | null;
|
|
20
|
+
altitudeAccuracy: number | null;
|
|
21
|
+
heading: number | null;
|
|
22
|
+
speed: number | null;
|
|
23
|
+
}
|
|
24
|
+
export interface GeolocationPosition {
|
|
25
|
+
coords: GeolocationCoordinates;
|
|
26
|
+
/** Milliseconds since the epoch. */
|
|
27
|
+
timestamp: number;
|
|
28
|
+
}
|
|
29
|
+
export declare class GeolocationPositionError extends Error {
|
|
30
|
+
readonly code: number;
|
|
31
|
+
static readonly PERMISSION_DENIED = 1;
|
|
32
|
+
static readonly POSITION_UNAVAILABLE = 2;
|
|
33
|
+
static readonly TIMEOUT = 3;
|
|
34
|
+
readonly PERMISSION_DENIED = 1;
|
|
35
|
+
readonly POSITION_UNAVAILABLE = 2;
|
|
36
|
+
readonly TIMEOUT = 3;
|
|
37
|
+
constructor(code: number, message: string);
|
|
38
|
+
}
|
|
39
|
+
export interface PositionOptions {
|
|
40
|
+
enableHighAccuracy?: boolean;
|
|
41
|
+
timeout?: number;
|
|
42
|
+
maximumAge?: number;
|
|
43
|
+
}
|
|
44
|
+
type Success = (position: GeolocationPosition) => void;
|
|
45
|
+
type Failure = (error: GeolocationPositionError) => void;
|
|
46
|
+
/** The host's answer for request `id`. */
|
|
47
|
+
export interface NativeGeolocationResult {
|
|
48
|
+
position?: {
|
|
49
|
+
latitude: number;
|
|
50
|
+
longitude: number;
|
|
51
|
+
accuracy: number;
|
|
52
|
+
altitude?: number | null;
|
|
53
|
+
altitudeAccuracy?: number | null;
|
|
54
|
+
heading?: number | null;
|
|
55
|
+
speed?: number | null;
|
|
56
|
+
timestamp: number;
|
|
57
|
+
};
|
|
58
|
+
error?: {
|
|
59
|
+
code?: number;
|
|
60
|
+
message?: string;
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
export interface Geolocation {
|
|
64
|
+
getCurrentPosition(success: Success, failure?: Failure | null, options?: PositionOptions): void;
|
|
65
|
+
watchPosition(success: Success, failure?: Failure | null, options?: PositionOptions): number;
|
|
66
|
+
clearWatch(id: number): void;
|
|
67
|
+
}
|
|
68
|
+
export declare function createGeolocation(native: NativeBridge, target: Record<string, unknown>): {
|
|
69
|
+
geolocation: Geolocation;
|
|
70
|
+
receive(id: number, json: string): void;
|
|
71
|
+
};
|
|
72
|
+
export {};
|
|
73
|
+
//# sourceMappingURL=geolocation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geolocation.d.ts","sourceRoot":"","sources":["../src/geolocation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,wBAAyB,SAAQ,KAAK;IAQ/C,QAAQ,CAAC,IAAI,EAAE,MAAM;IAPvB,MAAM,CAAC,QAAQ,CAAC,iBAAiB,KAAK;IACtC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,KAAK;IACzC,MAAM,CAAC,QAAQ,CAAC,OAAO,KAAK;IAC5B,QAAQ,CAAC,iBAAiB,KAAK;IAC/B,QAAQ,CAAC,oBAAoB,KAAK;IAClC,QAAQ,CAAC,OAAO,KAAK;gBAEV,IAAI,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM;CAKlB;AAED,MAAM,WAAW,eAAe;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,KAAK,OAAO,GAAG,CAAC,QAAQ,EAAE,mBAAmB,KAAK,IAAI,CAAC;AACvD,KAAK,OAAO,GAAG,CAAC,KAAK,EAAE,wBAAwB,KAAK,IAAI,CAAC;AAEzD,0CAA0C;AAC1C,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACjC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7C;AAED,MAAM,WAAW,WAAW;IAC1B,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IAChG,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IAC7F,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAWD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,WAAW,EAAE,WAAW,CAAC;IAAC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAwE9J"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `navigator.geolocation` over the host's location manager (`geolocation(id,
|
|
3
|
+
* action, json)` on the bridge, `CLLocationManager` on the Swift side):
|
|
4
|
+
* `getCurrentPosition` asks once (`current`), `watchPosition` keeps asking
|
|
5
|
+
* (`watch`) until `clearWatch` (`clear`). Each answer arrives at
|
|
6
|
+
* `__sbGeolocation(id, json)` as `{ position: { latitude, longitude,
|
|
7
|
+
* accuracy, altitude?, altitudeAccuracy?, heading?, speed?, timestamp } }` or
|
|
8
|
+
* `{ error: { code, message } }` with the API's codes (1 permission denied, 2
|
|
9
|
+
* position unavailable, 3 timeout). The first ask prompts the viewer; the
|
|
10
|
+
* app's Info.plist names `NSLocationWhenInUseUsageDescription`. `timeout`
|
|
11
|
+
* runs here, on the runtime's timers; `maximumAge` is left to the host, which
|
|
12
|
+
* answers with its freshest fix.
|
|
13
|
+
*/
|
|
14
|
+
export class GeolocationPositionError extends Error {
|
|
15
|
+
code;
|
|
16
|
+
static PERMISSION_DENIED = 1;
|
|
17
|
+
static POSITION_UNAVAILABLE = 2;
|
|
18
|
+
static TIMEOUT = 3;
|
|
19
|
+
PERMISSION_DENIED = 1;
|
|
20
|
+
POSITION_UNAVAILABLE = 2;
|
|
21
|
+
TIMEOUT = 3;
|
|
22
|
+
constructor(code, message) {
|
|
23
|
+
super(message);
|
|
24
|
+
this.code = code;
|
|
25
|
+
this.name = 'GeolocationPositionError';
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export function createGeolocation(native, target) {
|
|
29
|
+
const pending = new Map();
|
|
30
|
+
let nextId = 1;
|
|
31
|
+
const timers = target;
|
|
32
|
+
const finish = (id) => {
|
|
33
|
+
const entry = pending.get(id);
|
|
34
|
+
if (!entry)
|
|
35
|
+
return;
|
|
36
|
+
pending.delete(id);
|
|
37
|
+
if (entry.timer !== null && typeof timers.clearTimeout === 'function')
|
|
38
|
+
timers.clearTimeout(entry.timer);
|
|
39
|
+
};
|
|
40
|
+
const ask = (watch, success, failure, options) => {
|
|
41
|
+
if (typeof success !== 'function')
|
|
42
|
+
throw new TypeError('geolocation: the success callback is not a function');
|
|
43
|
+
const id = nextId++;
|
|
44
|
+
const entry = { watch, success, failure: typeof failure === 'function' ? failure : null, timer: null };
|
|
45
|
+
pending.set(id, entry);
|
|
46
|
+
const timeout = options?.timeout;
|
|
47
|
+
if (typeof timeout === 'number' && timeout >= 0 && timeout !== Infinity && typeof timers.setTimeout === 'function') {
|
|
48
|
+
entry.timer = timers.setTimeout(() => {
|
|
49
|
+
// A watch times out once per fix that does not come; its wait starts over with the next answer.
|
|
50
|
+
if (!watch) {
|
|
51
|
+
finish(id);
|
|
52
|
+
native.geolocation(id, 'clear', '{}');
|
|
53
|
+
}
|
|
54
|
+
else
|
|
55
|
+
entry.timer = null;
|
|
56
|
+
entry.failure?.(new GeolocationPositionError(GeolocationPositionError.TIMEOUT, 'geolocation: timed out'));
|
|
57
|
+
}, timeout);
|
|
58
|
+
}
|
|
59
|
+
native.geolocation(id, watch ? 'watch' : 'current', JSON.stringify({ enableHighAccuracy: options?.enableHighAccuracy === true, timeout: timeout ?? null, maximumAge: options?.maximumAge ?? 0 }));
|
|
60
|
+
return id;
|
|
61
|
+
};
|
|
62
|
+
return {
|
|
63
|
+
geolocation: {
|
|
64
|
+
getCurrentPosition(success, failure, options) {
|
|
65
|
+
ask(false, success, failure, options);
|
|
66
|
+
},
|
|
67
|
+
watchPosition(success, failure, options) {
|
|
68
|
+
return ask(true, success, failure, options);
|
|
69
|
+
},
|
|
70
|
+
clearWatch(id) {
|
|
71
|
+
if (!pending.has(Number(id)))
|
|
72
|
+
return;
|
|
73
|
+
finish(Number(id));
|
|
74
|
+
native.geolocation(Number(id), 'clear', '{}');
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
receive(id, json) {
|
|
78
|
+
const entry = pending.get(id);
|
|
79
|
+
if (!entry)
|
|
80
|
+
return;
|
|
81
|
+
const result = JSON.parse(json);
|
|
82
|
+
if (!entry.watch)
|
|
83
|
+
finish(id);
|
|
84
|
+
if (result.position) {
|
|
85
|
+
const p = result.position;
|
|
86
|
+
entry.success({
|
|
87
|
+
coords: {
|
|
88
|
+
latitude: p.latitude,
|
|
89
|
+
longitude: p.longitude,
|
|
90
|
+
accuracy: p.accuracy,
|
|
91
|
+
altitude: p.altitude ?? null,
|
|
92
|
+
altitudeAccuracy: p.altitudeAccuracy ?? null,
|
|
93
|
+
heading: p.heading ?? null,
|
|
94
|
+
speed: p.speed ?? null,
|
|
95
|
+
},
|
|
96
|
+
timestamp: p.timestamp,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
const code = result.error?.code ?? GeolocationPositionError.POSITION_UNAVAILABLE;
|
|
101
|
+
// A denial ends a watch too: the host will not answer again.
|
|
102
|
+
if (entry.watch && code === GeolocationPositionError.PERMISSION_DENIED)
|
|
103
|
+
finish(id);
|
|
104
|
+
entry.failure?.(new GeolocationPositionError(code, result.error?.message ?? 'geolocation: the position is unavailable'));
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=geolocation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"geolocation.js","sourceRoot":"","sources":["../src/geolocation.ts"],"names":[],"mappings":"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"}
|
package/dist/hostRequests.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The host requests `@swiftbrowser/react` sends to the browser environment
|
|
3
|
-
* (`ShareLink`, `fileImporter`, the clipboard, a color chooser: the web
|
|
3
|
+
* (`ShareLink`, `fileImporter`, `fileExporter`, the clipboard, a color chooser: the web
|
|
4
4
|
* renderer's `performHostRequest` with its `browserEnvironment`), answered by
|
|
5
5
|
* the native app instead: the bridge's `hostRequest(id, kind, json)` performs
|
|
6
6
|
* one with UIKit (a share sheet, the photo or document picker, the
|
|
@@ -48,6 +48,8 @@ export declare function resetHostRequests(): void;
|
|
|
48
48
|
* URL it ends with; rejects with an `AbortError` when the viewer closes it.
|
|
49
49
|
*/
|
|
50
50
|
export declare function webAuthenticate(url: string, options?: WebAuthenticateOptions): Promise<string>;
|
|
51
|
+
/** The bridge's `__sbFilesChanged(json)`: the URLs another device changed in iCloud Drive (ICloudBridge.swift). */
|
|
52
|
+
export declare function receiveFilesChanged(json: string | string[]): void;
|
|
51
53
|
/** The environment fields the host answers, shaped as the web renderer's `HostRequestEnvironment`. */
|
|
52
54
|
export declare function nativeHostEnvironment(): Record<string, unknown>;
|
|
53
55
|
/** Fills what `environment` lacks with the host's answers; what the page has stays. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostRequests.d.ts","sourceRoot":"","sources":["../src/hostRequests.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAI7C,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAEnH,+EAA+E;AAC/E,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,oHAAoH;IACpH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAMD,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"hostRequests.d.ts","sourceRoot":"","sources":["../src/hostRequests.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAI7C,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAEnH,+EAA+E;AAC/E,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,oHAAoH;IACpH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAMD,yEAAyE;AACzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAGnE;AAED,mDAAmD;AACnD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAkB1G;AAED,oFAAoF;AACpF,wBAAgB,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAUlG;AAED,8DAA8D;AAC9D,wBAAgB,iBAAiB,IAAI,IAAI,CAIxC;AAWD;;;GAGG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,MAAM,CAAC,CAOxG;AA4BD,mHAAmH;AACnH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAUjE;AAqCD,sGAAsG;AACtG,wBAAgB,qBAAqB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAuD/D;AAED,uFAAuF;AACvF,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAOjF"}
|
package/dist/hostRequests.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* The host requests `@swiftbrowser/react` sends to the browser environment
|
|
3
|
-
* (`ShareLink`, `fileImporter`, the clipboard, a color chooser: the web
|
|
3
|
+
* (`ShareLink`, `fileImporter`, `fileExporter`, the clipboard, a color chooser: the web
|
|
4
4
|
* renderer's `performHostRequest` with its `browserEnvironment`), answered by
|
|
5
5
|
* the native app instead: the bridge's `hostRequest(id, kind, json)` performs
|
|
6
6
|
* one with UIKit (a share sheet, the photo or document picker, the
|
|
@@ -27,6 +27,7 @@ const pending = new Map();
|
|
|
27
27
|
/** Points the requests at the bridge (the runtime, once per install). */
|
|
28
28
|
export function installHostRequests(native) {
|
|
29
29
|
bridge = native;
|
|
30
|
+
fileWatchers.clear();
|
|
30
31
|
}
|
|
31
32
|
/** The bridge's `__sbHostResponse(id, result)`. */
|
|
32
33
|
export function receiveHostResponse(id, result) {
|
|
@@ -109,11 +110,35 @@ function appDirectories() {
|
|
|
109
110
|
}
|
|
110
111
|
return null;
|
|
111
112
|
}
|
|
112
|
-
/**
|
|
113
|
+
/** Who hears about the files iCloud Drive changed (`watch`). */
|
|
114
|
+
const fileWatchers = new Set();
|
|
115
|
+
/** The bridge's `__sbFilesChanged(json)`: the URLs another device changed in iCloud Drive (ICloudBridge.swift). */
|
|
116
|
+
export function receiveFilesChanged(json) {
|
|
117
|
+
let urls;
|
|
118
|
+
try {
|
|
119
|
+
const parsed = typeof json === 'string' ? JSON.parse(json) : json;
|
|
120
|
+
urls = Array.isArray(parsed) ? parsed.filter((url) => typeof url === 'string') : [];
|
|
121
|
+
}
|
|
122
|
+
catch {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
if (urls.length === 0)
|
|
126
|
+
return;
|
|
127
|
+
for (const listener of [...fileWatchers])
|
|
128
|
+
listener(urls);
|
|
129
|
+
}
|
|
130
|
+
/** The app's files (`files` requests): `fileManager`'s host over the sandbox, and iCloud Drive's container once asked for. */
|
|
113
131
|
function nativeFiles(directories) {
|
|
114
132
|
const files = (params) => hostRequest('files', params);
|
|
133
|
+
let iCloud = null;
|
|
115
134
|
return {
|
|
116
135
|
directories,
|
|
136
|
+
// The container's Documents (ICloudBridge.swift), resolved once; null without the entitlement or iCloud Drive.
|
|
137
|
+
iCloud: () => (iCloud ??= files({ action: 'iCloud' }).then((found) => (typeof found?.url === 'string' ? found.url : null))),
|
|
138
|
+
watch: (listener) => {
|
|
139
|
+
fileWatchers.add(listener);
|
|
140
|
+
return () => void fileWatchers.delete(listener);
|
|
141
|
+
},
|
|
117
142
|
read: async (url) => base64Decode((await files({ action: 'read', url }))?.data ?? ''),
|
|
118
143
|
write: (url, data) => files({ action: 'write', url, data: base64Encode(data) }).then(() => undefined),
|
|
119
144
|
remove: (url) => files({ action: 'remove', url }).then(() => undefined),
|
|
@@ -123,12 +148,18 @@ function nativeFiles(directories) {
|
|
|
123
148
|
const found = await files({ action: 'attributes', url });
|
|
124
149
|
if (!found || typeof found.size !== 'number')
|
|
125
150
|
return null;
|
|
126
|
-
return {
|
|
151
|
+
return {
|
|
152
|
+
size: found.size,
|
|
153
|
+
modified: typeof found.modified === 'number' ? found.modified : null,
|
|
154
|
+
created: typeof found.created === 'number' ? found.created : null,
|
|
155
|
+
directory: found.directory === true,
|
|
156
|
+
type: typeof found.type === 'string' ? found.type : '',
|
|
157
|
+
};
|
|
127
158
|
},
|
|
128
159
|
move: (from, to) => files({ action: 'move', from, to }).then(() => undefined),
|
|
129
160
|
copy: (from, to) => files({ action: 'copy', from, to }).then(() => undefined),
|
|
130
|
-
// AVPlayer and UIImage read the file themselves.
|
|
131
|
-
loadURL: async (url) => url,
|
|
161
|
+
// AVPlayer and UIImage read the file themselves, once it is on the device (a file another device put in iCloud Drive is downloaded first).
|
|
162
|
+
loadURL: async (url) => (await files({ action: 'download', url }))?.url ?? url,
|
|
132
163
|
};
|
|
133
164
|
}
|
|
134
165
|
/** The environment fields the host answers, shaped as the web renderer's `HostRequestEnvironment`. */
|
|
@@ -158,6 +189,11 @@ export function nativeHostEnvironment() {
|
|
|
158
189
|
void hostRequest('share', { files: [{ name: filename, type: blob.type, data: base64Encode(blob.bytes()) }] }).catch(() => undefined);
|
|
159
190
|
},
|
|
160
191
|
pickFiles: async (options) => filesOf(await hostRequest('pickFiles', { accept: options.accept, multiple: options.multiple })),
|
|
192
|
+
// `fileExporter`: the document picker, saving the files where the viewer chooses.
|
|
193
|
+
exportFiles: async (files) => {
|
|
194
|
+
const result = await hostRequest('exportFiles', { files: await Promise.all(files.map(bridgedFile)) });
|
|
195
|
+
return { outcome: result?.outcome ?? 'cancelled', ...(result?.urls ? { urls: result.urls } : {}) };
|
|
196
|
+
},
|
|
161
197
|
objectURL: (file) => objectURL(file),
|
|
162
198
|
clipboard: {
|
|
163
199
|
writeText: (text) => hostRequest('clipboard', { action: 'write', text }).then(() => undefined),
|
|
@@ -168,6 +204,11 @@ export function nativeHostEnvironment() {
|
|
|
168
204
|
readText: async () => (await hostRequest('clipboard', { action: 'readText' }))?.text ?? '',
|
|
169
205
|
},
|
|
170
206
|
pickColor: async (color) => (await hostRequest('pickColor', { color }))?.color ?? null,
|
|
207
|
+
// Sign in with Apple (AppleSignInBridge.swift): the system sheet, and the credential's state.
|
|
208
|
+
appleSignIn: {
|
|
209
|
+
signIn: (options) => hostRequest('appleSignIn', { action: 'signIn', ...options }),
|
|
210
|
+
credentialState: async (user) => (await hostRequest('appleSignIn', { action: 'credentialState', user }))?.state ?? 'unknown',
|
|
211
|
+
},
|
|
171
212
|
// `AVAudioRecorder` (AudioRecorderBridge.swift): a recording ends as a file URL in Documents; `trim` writes another.
|
|
172
213
|
audioRecorder: {
|
|
173
214
|
start: () => hostRequest('audioRecord', { action: 'start' }).then(() => undefined),
|
package/dist/hostRequests.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hostRequests.js","sourceRoot":"","sources":["../src/hostRequests.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hostRequests.js","sourceRoot":"","sources":["../src/hostRequests.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
*/
|
|
13
13
|
export { run, type RunOptions, type Running } from './run';
|
|
14
14
|
export { Native, type NativeProps } from './native';
|
|
15
|
+
export { callNative, callNativeSync, nativeFunctions, hasNativeFunction, onNativeEvent } from './nativeFunctions';
|
|
15
16
|
export { installRuntime, type InstallOptions } from './runtime';
|
|
16
17
|
export { nativeBridge, launchArguments, type NativeBridge, type NativeFetchRequest, type NativeFetchResult, type WorkerEngine } from './bridge';
|
|
17
18
|
export { SimpleHeaders, SimpleRequest, SimpleResponse, SimpleAbortController, SimpleAbortSignal, createFetch } from './fetch';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,GAAG,EAAE,KAAK,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAChJ,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC9H,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,KAAK,sBAAsB,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC5J,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACtH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,mBAAmB,EAAE,KAAK,UAAU,EAAE,KAAK,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC3L,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,iBAAiB,EAAE,KAAK,yBAAyB,EAAE,KAAK,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACvJ,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,GAAG,EAAE,KAAK,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClH,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAChJ,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC9H,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,KAAK,sBAAsB,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC5J,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACtH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,mBAAmB,EAAE,KAAK,UAAU,EAAE,KAAK,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC3L,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,KAAK,iBAAiB,EAAE,KAAK,yBAAyB,EAAE,KAAK,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACvJ,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,KAAK,kBAAkB,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,KAAK,kBAAkB,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
*/
|
|
13
13
|
export { run } from './run';
|
|
14
14
|
export { Native } from './native';
|
|
15
|
+
export { callNative, callNativeSync, nativeFunctions, hasNativeFunction, onNativeEvent } from './nativeFunctions';
|
|
15
16
|
export { installRuntime } from './runtime';
|
|
16
17
|
export { nativeBridge, launchArguments } from './bridge';
|
|
17
18
|
export { SimpleHeaders, SimpleRequest, SimpleResponse, SimpleAbortController, SimpleAbortSignal, createFetch } from './fetch';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,GAAG,EAAiC,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAoB,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,cAAc,EAAuB,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAyF,MAAM,UAAU,CAAC;AAChJ,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC9H,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC5F,OAAO,EAAE,eAAe,EAA6B,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAyB,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,qBAAqB,EAAE,sBAAsB,EAAiD,MAAM,gBAAgB,CAAC;AAC5J,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAsB,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACtH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAA6F,MAAM,UAAU,CAAC;AAC3L,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAuF,MAAM,iBAAiB,CAAC;AACvJ,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAA8H,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,GAAG,EAAiC,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAoB,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClH,OAAO,EAAE,cAAc,EAAuB,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,eAAe,EAAyF,MAAM,UAAU,CAAC;AAChJ,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC9H,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAC5F,OAAO,EAAE,eAAe,EAA6B,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAyB,MAAM,cAAc,CAAC;AACzF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,qBAAqB,EAAE,sBAAsB,EAAiD,MAAM,gBAAgB,CAAC;AAC5J,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAsB,MAAM,iBAAiB,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACtH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAA6F,MAAM,UAAU,CAAC;AAC3L,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAuF,MAAM,iBAAiB,CAAC;AACvJ,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAA8H,MAAM,gBAAgB,CAAC"}
|