@flighthq/host-capacitor 0.5.0-next.1944.cd6b6e7 → 0.5.1-edge.638.d4dbd4e
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 +3 -3
- package/dist/capacitorApp.d.ts +5 -2
- package/dist/capacitorApp.d.ts.map +1 -1
- package/dist/capacitorApp.js +27 -153
- package/dist/capacitorApp.js.map +1 -1
- package/dist/capacitorClipboard.d.ts +4 -2
- package/dist/capacitorClipboard.d.ts.map +1 -1
- package/dist/capacitorClipboard.js +6 -61
- package/dist/capacitorClipboard.js.map +1 -1
- package/dist/capacitorConnectivity.d.ts +4 -2
- package/dist/capacitorConnectivity.d.ts.map +1 -1
- package/dist/capacitorConnectivity.js +90 -44
- package/dist/capacitorConnectivity.js.map +1 -1
- package/dist/capacitorDevice.d.ts +2 -2
- package/dist/capacitorDevice.d.ts.map +1 -1
- package/dist/capacitorDevice.js +3 -2
- package/dist/capacitorDevice.js.map +1 -1
- package/dist/capacitorDialog.d.ts +3 -2
- package/dist/capacitorDialog.d.ts.map +1 -1
- package/dist/capacitorDialog.js +11 -18
- package/dist/capacitorDialog.js.map +1 -1
- package/dist/capacitorFileSystem.d.ts +2 -2
- package/dist/capacitorFileSystem.d.ts.map +1 -1
- package/dist/capacitorFileSystem.js +5 -62
- package/dist/capacitorFileSystem.js.map +1 -1
- package/dist/capacitorGeolocation.d.ts +2 -2
- package/dist/capacitorGeolocation.d.ts.map +1 -1
- package/dist/capacitorGeolocation.js +16 -23
- package/dist/capacitorGeolocation.js.map +1 -1
- package/dist/capacitorKeyboard.d.ts +8 -2
- package/dist/capacitorKeyboard.d.ts.map +1 -1
- package/dist/capacitorKeyboard.js +96 -51
- package/dist/capacitorKeyboard.js.map +1 -1
- package/dist/capacitorNotification.d.ts +2 -2
- package/dist/capacitorNotification.d.ts.map +1 -1
- package/dist/capacitorNotification.js +250 -153
- package/dist/capacitorNotification.js.map +1 -1
- package/dist/capacitorProtocol.d.ts +3 -0
- package/dist/capacitorProtocol.d.ts.map +1 -0
- package/dist/capacitorProtocol.js +27 -0
- package/dist/capacitorProtocol.js.map +1 -0
- package/dist/capacitorRegister.d.ts +11 -2
- package/dist/capacitorRegister.d.ts.map +1 -1
- package/dist/capacitorRegister.js +78 -36
- package/dist/capacitorRegister.js.map +1 -1
- package/dist/capacitorShare.d.ts +2 -2
- package/dist/capacitorShare.d.ts.map +1 -1
- package/dist/capacitorShare.js +22 -41
- package/dist/capacitorShare.js.map +1 -1
- package/dist/capacitorStatusBar.d.ts +2 -2
- package/dist/capacitorStatusBar.d.ts.map +1 -1
- package/dist/capacitorStatusBar.js +5 -8
- package/dist/capacitorStatusBar.js.map +1 -1
- package/dist/contract.d.ts +1 -0
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +1 -0
- package/dist/contract.js.map +1 -1
- package/package.json +14 -15
- package/src/capacitorApp.test.ts +41 -47
- package/src/capacitorClipboard.test.ts +2 -10
- package/src/capacitorConnectivity.test.ts +101 -31
- package/src/capacitorDevice.test.ts +5 -0
- package/src/capacitorDialog.test.ts +23 -15
- package/src/capacitorFileSystem.test.ts +16 -7
- package/src/capacitorGeolocation.test.ts +10 -6
- package/src/capacitorKeyboard.test.ts +182 -31
- package/src/capacitorNotification.test.ts +120 -76
- package/src/capacitorProtocol.test.ts +41 -0
- package/src/capacitorRegister.test.ts +91 -37
- package/src/capacitorShare.test.ts +38 -38
- package/src/capacitorStatusBar.test.ts +5 -0
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @flighthq/host-capacitor
|
|
2
2
|
|
|
3
|
-
Capacitor
|
|
3
|
+
Capacitor host providers and compatibility registration over an injected CapacitorApi
|
|
4
4
|
|
|
5
5
|
## Install
|
|
6
6
|
|
|
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/host-capacitor`. The
|
|
|
13
13
|
This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
|
|
14
14
|
|
|
15
15
|
- [Flight project](https://github.com/flighthq/flight)
|
|
16
|
-
- [Source for @flighthq/host-capacitor@0.5.
|
|
17
|
-
- [License](https://github.com/flighthq/flight/blob/
|
|
16
|
+
- [Source for @flighthq/host-capacitor@0.5.1-edge.638.d4dbd4e](https://github.com/flighthq/flight/tree/d4dbd4e347dc8be10b180c85a766ab50333dcb51/packages/host-capacitor)
|
|
17
|
+
- [License](https://github.com/flighthq/flight/blob/d4dbd4e347dc8be10b180c85a766ab50333dcb51/LICENSE.md)
|
package/dist/capacitorApp.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare function
|
|
1
|
+
import type { CapacitorApi, CapacitorAndroidAppCapabilities, CapacitorAppCapabilitiesFor, CapacitorCommonAppCapabilities, MobileOsProfile } from '@flighthq/types/contract';
|
|
2
|
+
export declare function createCapacitorAppCapabilities<Profile extends MobileOsProfile>(capacitor: CapacitorApi, profile: Profile): CapacitorAppCapabilitiesFor<Profile>;
|
|
3
|
+
export declare function createCapacitorAppCapabilities(capacitor: CapacitorApi, profile: 'android'): CapacitorAndroidAppCapabilities;
|
|
4
|
+
export declare function createCapacitorAppCapabilities(capacitor: CapacitorApi, profile: 'ios'): CapacitorCommonAppCapabilities;
|
|
5
|
+
export declare function createCapacitorAppCapabilities(capacitor: CapacitorApi, profile: MobileOsProfile): CapacitorAndroidAppCapabilities | CapacitorCommonAppCapabilities;
|
|
3
6
|
//# sourceMappingURL=capacitorApp.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacitorApp.d.ts","sourceRoot":"","sources":["../src/capacitorApp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capacitorApp.d.ts","sourceRoot":"","sources":["../src/capacitorApp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,+BAA+B,EAC/B,2BAA2B,EAC3B,8BAA8B,EAE9B,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAElC,wBAAgB,8BAA8B,CAAC,OAAO,SAAS,eAAe,EAC5E,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,OAAO,GACf,2BAA2B,CAAC,OAAO,CAAC,CAAC;AACxC,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,SAAS,GACjB,+BAA+B,CAAC;AACnC,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,GAAG,8BAA8B,CAAC;AACxH,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,eAAe,GACvB,+BAA+B,GAAG,8BAA8B,CAAC"}
|
package/dist/capacitorApp.js
CHANGED
|
@@ -1,172 +1,46 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
// '' until the first probe resolves. Control methods fire the async Capacitor call and forget: `quit`
|
|
7
|
-
// maps to `exitApp` and `hideApp` to `minimizeApp` (both Android-only; no-ops elsewhere). Activation
|
|
8
|
-
// and app-url events wire through `addListener` (subscribeActivate ← appStateChange isActive,
|
|
9
|
-
// subscribeOpenFile ← appUrlOpen). The desktop-only surface — recent documents, dock, badge, attention,
|
|
10
|
-
// login item, single-instance, command line, executable paths — has no Capacitor call and reports the
|
|
11
|
-
// contract sentinels (''/[]/false/-1/no-op/inert unsubscribe). Locale is not exposed by `@capacitor/app`
|
|
12
|
-
// (it lives on `@capacitor/device`), so the locale getters report the '' / [] sentinels.
|
|
13
|
-
export function createCapacitorAppBackend(capacitor) {
|
|
14
|
-
const app = capacitor.app;
|
|
15
|
-
// Sync getters over async Capacitor: prefetch once, serve the cached value.
|
|
16
|
-
let cachedName = '';
|
|
17
|
-
let cachedVersion = '';
|
|
18
|
-
app
|
|
1
|
+
import { createEntity } from '@flighthq/entity/contract';
|
|
2
|
+
export function createCapacitorAppCapabilities(capacitor, profile) {
|
|
3
|
+
let name = '';
|
|
4
|
+
let version = '';
|
|
5
|
+
void capacitor.app
|
|
19
6
|
.getInfo()
|
|
20
7
|
.then((info) => {
|
|
21
|
-
|
|
22
|
-
|
|
8
|
+
name = info.name;
|
|
9
|
+
version = info.version;
|
|
23
10
|
})
|
|
24
|
-
.catch(() => {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
addRecentDocument() {
|
|
29
|
-
// No Capacitor recent-documents API.
|
|
30
|
-
},
|
|
31
|
-
bounceDock() {
|
|
32
|
-
return -1;
|
|
33
|
-
},
|
|
34
|
-
cancelAttention() {
|
|
35
|
-
// No attention request to cancel.
|
|
36
|
-
},
|
|
37
|
-
cancelDockBounce() {
|
|
38
|
-
// No dock bounce to cancel.
|
|
39
|
-
},
|
|
40
|
-
clearRecentDocuments() {
|
|
41
|
-
// No Capacitor recent-documents API.
|
|
42
|
-
},
|
|
43
|
-
focus() {
|
|
44
|
-
// No Capacitor app-focus call; a mobile app is foregrounded by the OS.
|
|
45
|
-
},
|
|
46
|
-
getAppDirectoryPath() {
|
|
47
|
-
// App-relative paths come from `@capacitor/filesystem` directories; not bridged into this getter.
|
|
48
|
-
return '';
|
|
49
|
-
},
|
|
50
|
-
getAppPath() {
|
|
51
|
-
return '';
|
|
52
|
-
},
|
|
53
|
-
getCommandLine() {
|
|
54
|
-
return [];
|
|
55
|
-
},
|
|
56
|
-
getExecutablePath() {
|
|
57
|
-
return '';
|
|
58
|
-
},
|
|
59
|
-
getLocale() {
|
|
60
|
-
// Locale is a `@capacitor/device` concern, not `@capacitor/app`; report the '' sentinel.
|
|
61
|
-
return '';
|
|
62
|
-
},
|
|
63
|
-
getLoginItem() {
|
|
64
|
-
const out = { openAtLogin: false, openAsHidden: false, path: '', args: [] };
|
|
65
|
-
return out;
|
|
66
|
-
},
|
|
67
|
-
getName() {
|
|
68
|
-
return cachedName;
|
|
69
|
-
},
|
|
70
|
-
getPreferredSystemLanguages() {
|
|
71
|
-
return [];
|
|
72
|
-
},
|
|
73
|
-
getSystemLocale() {
|
|
74
|
-
return '';
|
|
75
|
-
},
|
|
76
|
-
getVersion() {
|
|
77
|
-
return cachedVersion;
|
|
78
|
-
},
|
|
79
|
-
hasSingleInstanceLock() {
|
|
80
|
-
return false;
|
|
81
|
-
},
|
|
82
|
-
hideApp() {
|
|
83
|
-
app.minimizeApp().catch(() => { });
|
|
84
|
-
return true;
|
|
85
|
-
},
|
|
86
|
-
isAppHidden() {
|
|
87
|
-
return false;
|
|
88
|
-
},
|
|
89
|
-
quit() {
|
|
90
|
-
app.exitApp().catch(() => { });
|
|
91
|
-
},
|
|
92
|
-
relaunch() {
|
|
93
|
-
// Capacitor has no relaunch API.
|
|
94
|
-
},
|
|
95
|
-
releaseSingleInstanceLock() {
|
|
96
|
-
// No single-instance lock held.
|
|
97
|
-
},
|
|
98
|
-
requestAttention() {
|
|
99
|
-
return -1;
|
|
100
|
-
},
|
|
101
|
-
requestSingleInstanceLock() {
|
|
102
|
-
// A mobile app is single-instance by the OS model; report held.
|
|
103
|
-
return true;
|
|
104
|
-
},
|
|
105
|
-
setActivationPolicy() {
|
|
106
|
-
// No Capacitor activation-policy call.
|
|
107
|
-
},
|
|
108
|
-
setBadgeCount() {
|
|
109
|
-
return false;
|
|
110
|
-
},
|
|
111
|
-
setDockBadge() {
|
|
112
|
-
// No dock on mobile.
|
|
113
|
-
},
|
|
114
|
-
setDockMenu() {
|
|
115
|
-
// No dock on mobile.
|
|
116
|
-
},
|
|
117
|
-
setLoginItem() {
|
|
118
|
-
return false;
|
|
119
|
-
},
|
|
120
|
-
setName() {
|
|
121
|
-
// The Capacitor app name is fixed at build time; report unsupported.
|
|
122
|
-
return false;
|
|
123
|
-
},
|
|
124
|
-
setUserModelId() {
|
|
125
|
-
return false;
|
|
126
|
-
},
|
|
127
|
-
showApp() {
|
|
128
|
-
// Capacitor has no bring-to-foreground call; report unsupported.
|
|
129
|
-
return false;
|
|
130
|
-
},
|
|
131
|
-
subscribeActivate(listener) {
|
|
132
|
-
return toUnsubscribe(app.addListener('appStateChange', (state) => {
|
|
11
|
+
.catch(() => { });
|
|
12
|
+
const common = createEntity({
|
|
13
|
+
activate: createEntity({
|
|
14
|
+
subscribe: (listener) => toCapacitorUnsubscribe(capacitor.app.addListener('appStateChange', (state) => {
|
|
133
15
|
if (state.isActive)
|
|
134
16
|
listener();
|
|
135
|
-
}))
|
|
136
|
-
},
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
},
|
|
146
|
-
|
|
147
|
-
return () => { };
|
|
148
|
-
},
|
|
149
|
-
subscribeSecondInstance() {
|
|
150
|
-
return () => { };
|
|
151
|
-
},
|
|
152
|
-
};
|
|
17
|
+
})),
|
|
18
|
+
}),
|
|
19
|
+
name: createEntity({ getName: () => name }),
|
|
20
|
+
version: createEntity({ getVersion: () => version }),
|
|
21
|
+
});
|
|
22
|
+
if (profile === 'ios')
|
|
23
|
+
return common;
|
|
24
|
+
return createEntity({
|
|
25
|
+
...common,
|
|
26
|
+
hide: createEntity({ hideApp: () => void capacitor.app.minimizeApp().catch(() => { }) }),
|
|
27
|
+
quit: createEntity({ quit: () => void capacitor.app.exitApp().catch(() => { }) }),
|
|
28
|
+
});
|
|
153
29
|
}
|
|
154
|
-
|
|
155
|
-
// registration, adopt the handle when it resolves, and remove it (immediately if already resolved).
|
|
156
|
-
function toUnsubscribe(handlePromise) {
|
|
30
|
+
function toCapacitorUnsubscribe(handlePromise) {
|
|
157
31
|
let removed = false;
|
|
158
32
|
let handle = null;
|
|
159
|
-
handlePromise
|
|
33
|
+
void handlePromise
|
|
160
34
|
.then((resolved) => {
|
|
161
35
|
handle = resolved;
|
|
162
36
|
if (removed)
|
|
163
|
-
handle.remove().catch(() => { });
|
|
37
|
+
void handle.remove().catch(() => { });
|
|
164
38
|
})
|
|
165
39
|
.catch(() => { });
|
|
166
40
|
return () => {
|
|
167
41
|
removed = true;
|
|
168
42
|
if (handle !== null)
|
|
169
|
-
handle.remove().catch(() => { });
|
|
43
|
+
void handle.remove().catch(() => { });
|
|
170
44
|
};
|
|
171
45
|
}
|
|
172
46
|
//# sourceMappingURL=capacitorApp.js.map
|
package/dist/capacitorApp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacitorApp.js","sourceRoot":"","sources":["../src/capacitorApp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capacitorApp.js","sourceRoot":"","sources":["../src/capacitorApp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAuBzD,MAAM,UAAU,8BAA8B,CAC5C,SAAuB,EACvB,OAAwB;IAExB,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,KAAK,SAAS,CAAC,GAAG;SACf,OAAO,EAAE;SACT,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACb,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACjB,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IACzB,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACnB,MAAM,MAAM,GAAmC,YAAY,CAAC;QAC1D,QAAQ,EAAE,YAAY,CAAC;YACrB,SAAS,EAAE,CAAC,QAAoB,EAAE,EAAE,CAClC,sBAAsB,CACpB,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE;gBACpD,IAAI,KAAK,CAAC,QAAQ;oBAAE,QAAQ,EAAE,CAAC;YACjC,CAAC,CAAC,CACH;SACJ,CAAC;QACF,IAAI,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;QAC3C,OAAO,EAAE,YAAY,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;KACrD,CAAC,CAAC;IACH,IAAI,OAAO,KAAK,KAAK;QAAE,OAAO,MAAM,CAAC;IACrC,OAAO,YAAY,CAAC;QAClB,GAAG,MAAM;QACT,IAAI,EAAE,YAAY,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,EAAE,CAAC;QACvF,IAAI,EAAE,YAAY,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,EAAE,CAAC;KACjF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,sBAAsB,CAAC,aAAqD;IACnF,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,MAAM,GAAyC,IAAI,CAAC;IACxD,KAAK,aAAa;SACf,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,MAAM,GAAG,QAAQ,CAAC;QAClB,IAAI,OAAO;YAAE,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACnB,OAAO,GAAG,EAAE;QACV,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,MAAM,KAAK,IAAI;YAAE,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC5D,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
1
|
+
import type { CapacitorApi, ClipboardImageBackend, ClipboardTextBackend } from '@flighthq/types/contract';
|
|
2
|
+
type CapacitorClipboardBackend = ClipboardImageBackend & ClipboardTextBackend;
|
|
3
|
+
export declare function createCapacitorClipboardBackend(capacitor: CapacitorApi): CapacitorClipboardBackend;
|
|
4
|
+
export {};
|
|
3
5
|
//# sourceMappingURL=capacitorClipboard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacitorClipboard.d.ts","sourceRoot":"","sources":["../src/capacitorClipboard.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capacitorClipboard.d.ts","sourceRoot":"","sources":["../src/capacitorClipboard.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EAErB,MAAM,0BAA0B,CAAC;AAElC,KAAK,yBAAyB,GAAG,qBAAqB,GAAG,oBAAoB,CAAC;AAI9E,wBAAgB,+BAA+B,CAAC,SAAS,EAAE,YAAY,GAAG,yBAAyB,CA4DlG"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
// HTML/RTF/bookmark read, no arbitrary MIME flavors, no file list, and no change counter — those methods
|
|
5
|
-
// report the contract's sentinels ('' / false / null / [] / -1). Reads resolve to sentinels on failure
|
|
6
|
-
// instead of throwing.
|
|
1
|
+
import { createEntity } from '@flighthq/entity/contract';
|
|
2
|
+
// Capacitor covers the text/clear and image clipboard vectors. Other capability slots are
|
|
3
|
+
// deliberately absent from its returned host rather than simulated by sentinels.
|
|
7
4
|
export function createCapacitorClipboardBackend(capacitor) {
|
|
8
5
|
const clipboard = capacitor.clipboard;
|
|
9
|
-
return {
|
|
6
|
+
return createEntity({
|
|
10
7
|
async readText() {
|
|
11
8
|
try {
|
|
12
9
|
const result = await clipboard.read();
|
|
@@ -25,14 +22,6 @@ export function createCapacitorClipboardBackend(capacitor) {
|
|
|
25
22
|
return false;
|
|
26
23
|
}
|
|
27
24
|
},
|
|
28
|
-
async readHtml() {
|
|
29
|
-
// Capacitor's clipboard exposes no HTML read; report the empty sentinel.
|
|
30
|
-
return '';
|
|
31
|
-
},
|
|
32
|
-
async writeHtml() {
|
|
33
|
-
// Capacitor's clipboard exposes no HTML write; report unsupported.
|
|
34
|
-
return false;
|
|
35
|
-
},
|
|
36
25
|
async hasText() {
|
|
37
26
|
try {
|
|
38
27
|
const result = await clipboard.read();
|
|
@@ -68,44 +57,8 @@ export function createCapacitorClipboardBackend(capacitor) {
|
|
|
68
57
|
return false;
|
|
69
58
|
}
|
|
70
59
|
},
|
|
71
|
-
async readRTF() {
|
|
72
|
-
return '';
|
|
73
|
-
},
|
|
74
|
-
async writeRTF() {
|
|
75
|
-
return false;
|
|
76
|
-
},
|
|
77
|
-
async readBookmark() {
|
|
78
|
-
return null;
|
|
79
|
-
},
|
|
80
|
-
async writeBookmark() {
|
|
81
|
-
return false;
|
|
82
|
-
},
|
|
83
|
-
async readFormat() {
|
|
84
|
-
return '';
|
|
85
|
-
},
|
|
86
|
-
async writeFormat() {
|
|
87
|
-
return false;
|
|
88
|
-
},
|
|
89
|
-
async hasFormat() {
|
|
90
|
-
return false;
|
|
91
|
-
},
|
|
92
|
-
async getFormats() {
|
|
93
|
-
return [];
|
|
94
|
-
},
|
|
95
|
-
async readItems() {
|
|
96
|
-
return {};
|
|
97
|
-
},
|
|
98
|
-
async writeItems() {
|
|
99
|
-
return false;
|
|
100
|
-
},
|
|
101
|
-
async readFiles() {
|
|
102
|
-
return [];
|
|
103
|
-
},
|
|
104
|
-
async writeFiles() {
|
|
105
|
-
return false;
|
|
106
|
-
},
|
|
107
60
|
async clear() {
|
|
108
|
-
// Capacitor has no
|
|
61
|
+
// Capacitor has no clear call; overwriting with empty text is the closest honest equivalent.
|
|
109
62
|
try {
|
|
110
63
|
await clipboard.write({ string: '' });
|
|
111
64
|
return true;
|
|
@@ -114,14 +67,6 @@ export function createCapacitorClipboardBackend(capacitor) {
|
|
|
114
67
|
return false;
|
|
115
68
|
}
|
|
116
69
|
},
|
|
117
|
-
|
|
118
|
-
// Capacitor exposes no clipboard change counter; -1 sentinel per the contract.
|
|
119
|
-
return -1;
|
|
120
|
-
},
|
|
121
|
-
subscribeClipboardChange() {
|
|
122
|
-
// Capacitor emits no clipboard-change event; inert unsubscribe.
|
|
123
|
-
return () => { };
|
|
124
|
-
},
|
|
125
|
-
};
|
|
70
|
+
});
|
|
126
71
|
}
|
|
127
72
|
//# sourceMappingURL=capacitorClipboard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacitorClipboard.js","sourceRoot":"","sources":["../src/capacitorClipboard.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capacitorClipboard.js","sourceRoot":"","sources":["../src/capacitorClipboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAUzD,0FAA0F;AAC1F,iFAAiF;AACjF,MAAM,UAAU,+BAA+B,CAAC,SAAuB;IACrE,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;IACtC,OAAO,YAAY,CAAC;QAClB,KAAK,CAAC,QAAQ;YACZ,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;gBACtC,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YAC7D,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QACD,KAAK,CAAC,SAAS,CAAC,IAAI;YAClB,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxC,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,KAAK,CAAC,OAAO;YACX,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;gBACtC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YACrE,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,KAAK,CAAC,SAAS;YACb,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;gBACtC,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,OAAO;YACtB,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC1C,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,KAAK,CAAC,QAAQ;YACZ,IAAI,CAAC;gBACH,OAAO,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC3D,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,KAAK,CAAC,KAAK;YACT,6FAA6F;YAC7F,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;gBACtC,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;KACiE,CAAC,CAAC;AACxE,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
1
|
+
import type { CapacitorApi, ConnectivityChangeBackend, ConnectivityStatusBackend } from '@flighthq/types/contract';
|
|
2
|
+
type CapacitorConnectivityBackend = ConnectivityStatusBackend & ConnectivityChangeBackend;
|
|
3
|
+
export declare function createCapacitorConnectivityBackend(capacitor: CapacitorApi): CapacitorConnectivityBackend;
|
|
4
|
+
export {};
|
|
3
5
|
//# sourceMappingURL=capacitorConnectivity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacitorConnectivity.d.ts","sourceRoot":"","sources":["../src/capacitorConnectivity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capacitorConnectivity.d.ts","sourceRoot":"","sources":["../src/capacitorConnectivity.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EAGZ,yBAAyB,EAGzB,yBAAyB,EAE1B,MAAM,0BAA0B,CAAC;AAElC,KAAK,4BAA4B,GAAG,yBAAyB,GAAG,yBAAyB,CAAC;AAM1F,wBAAgB,kCAAkC,CAAC,SAAS,EAAE,YAAY,GAAG,4BAA4B,CAyExG"}
|
|
@@ -1,42 +1,106 @@
|
|
|
1
|
-
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
// reports only connectivity + a coarse type, so downlink/rtt and the other fine-grained fields report
|
|
7
|
-
// their -1 / '' sentinels; `metered` is derived (cellular or offline-save has no signal here).
|
|
1
|
+
import { createEntity } from '@flighthq/entity/contract';
|
|
2
|
+
// Capacitor's async getStatus cannot truthfully fill a synchronous snapshot during construction, so
|
|
3
|
+
// the mirror starts UNKNOWN (`online: null`) rather than making an unmeasured offline claim. One native
|
|
4
|
+
// listener owns the mirror and fans out to every core entity; per-entity unsubscribe only leaves that
|
|
5
|
+
// local subscriber set. Provider destroy owns the one native handle.
|
|
8
6
|
export function createCapacitorConnectivityBackend(capacitor) {
|
|
9
7
|
const network = capacitor.network;
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
const subscribers = new Set();
|
|
9
|
+
const mirror = unknownStatus();
|
|
10
|
+
let destroyed = false;
|
|
11
|
+
let nativeChangeObserved = false;
|
|
12
|
+
let handle = null;
|
|
13
|
+
let handleRemoved = false;
|
|
14
|
+
const removeHandle = () => {
|
|
15
|
+
if (handle === null || handleRemoved)
|
|
16
|
+
return;
|
|
17
|
+
handleRemoved = true;
|
|
18
|
+
void handle.remove().catch(() => { });
|
|
19
|
+
};
|
|
20
|
+
const notify = () => {
|
|
21
|
+
for (const listener of [...subscribers])
|
|
22
|
+
listener();
|
|
23
|
+
};
|
|
24
|
+
const update = (status) => {
|
|
25
|
+
mirror.online = status.connected;
|
|
26
|
+
mirror.type = toConnectionType(status.connectionType);
|
|
27
|
+
mirror.metered = mirror.type === 'cellular';
|
|
28
|
+
};
|
|
29
|
+
// Register the event source before starting the initial query. If an event wins the race, its newer
|
|
30
|
+
// state must not be overwritten by a late getStatus result captured before that event.
|
|
31
|
+
network
|
|
32
|
+
.addListener('networkStatusChange', (status) => {
|
|
33
|
+
if (destroyed)
|
|
34
|
+
return;
|
|
35
|
+
nativeChangeObserved = true;
|
|
36
|
+
update(status);
|
|
37
|
+
notify();
|
|
38
|
+
})
|
|
39
|
+
.then((resolved) => {
|
|
40
|
+
handle = resolved;
|
|
41
|
+
if (destroyed)
|
|
42
|
+
removeHandle();
|
|
43
|
+
})
|
|
44
|
+
.catch(() => { });
|
|
12
45
|
network
|
|
13
46
|
.getStatus()
|
|
14
47
|
.then((status) => {
|
|
15
|
-
|
|
48
|
+
if (destroyed || nativeChangeObserved)
|
|
49
|
+
return;
|
|
50
|
+
update(status);
|
|
51
|
+
// Initial readiness is a real unknown→measured transition. Subscribers must see it so core can
|
|
52
|
+
// emit online/offline truthfully instead of retaining its pre-ready baseline forever.
|
|
53
|
+
notify();
|
|
16
54
|
})
|
|
17
55
|
.catch(() => {
|
|
18
|
-
|
|
56
|
+
// Failure leaves the status unknown. Unknown means wait; it is not an offline observation.
|
|
19
57
|
});
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
58
|
+
return createEntity({
|
|
59
|
+
destroy() {
|
|
60
|
+
if (destroyed)
|
|
61
|
+
return;
|
|
62
|
+
destroyed = true;
|
|
63
|
+
subscribers.clear();
|
|
64
|
+
removeHandle();
|
|
65
|
+
},
|
|
26
66
|
getStatus(out) {
|
|
27
|
-
out
|
|
28
|
-
out.type = toConnectionType(mirror.connectionType);
|
|
29
|
-
out.downlink = -1;
|
|
30
|
-
out.downlinkMax = -1;
|
|
31
|
-
out.effectiveType = '';
|
|
32
|
-
out.rtt = -1;
|
|
33
|
-
out.saveData = false;
|
|
34
|
-
out.metered = out.type === 'cellular';
|
|
67
|
+
copyStatus(out, mirror);
|
|
35
68
|
return out;
|
|
36
69
|
},
|
|
37
70
|
subscribe(listener) {
|
|
38
|
-
|
|
71
|
+
if (destroyed)
|
|
72
|
+
return null;
|
|
73
|
+
subscribers.add(listener);
|
|
74
|
+
let active = true;
|
|
75
|
+
return () => {
|
|
76
|
+
if (!active)
|
|
77
|
+
return;
|
|
78
|
+
active = false;
|
|
79
|
+
subscribers.delete(listener);
|
|
80
|
+
};
|
|
39
81
|
},
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
function copyStatus(out, source) {
|
|
85
|
+
out.online = source.online;
|
|
86
|
+
out.type = source.type;
|
|
87
|
+
out.downlink = source.downlink;
|
|
88
|
+
out.downlinkMax = source.downlinkMax;
|
|
89
|
+
out.effectiveType = source.effectiveType;
|
|
90
|
+
out.rtt = source.rtt;
|
|
91
|
+
out.saveData = source.saveData;
|
|
92
|
+
out.metered = source.metered;
|
|
93
|
+
}
|
|
94
|
+
function unknownStatus() {
|
|
95
|
+
return {
|
|
96
|
+
downlink: -1,
|
|
97
|
+
downlinkMax: -1,
|
|
98
|
+
effectiveType: '',
|
|
99
|
+
metered: false,
|
|
100
|
+
online: null,
|
|
101
|
+
rtt: -1,
|
|
102
|
+
saveData: false,
|
|
103
|
+
type: 'unknown',
|
|
40
104
|
};
|
|
41
105
|
}
|
|
42
106
|
function toConnectionType(connectionType) {
|
|
@@ -48,22 +112,4 @@ function toConnectionType(connectionType) {
|
|
|
48
112
|
return 'none';
|
|
49
113
|
return 'unknown';
|
|
50
114
|
}
|
|
51
|
-
// Bridges Capacitor's Promise<PluginListenerHandle> to Flight's synchronous unsubscribe: fire the
|
|
52
|
-
// registration, adopt the handle when it resolves, and remove it (immediately if already resolved).
|
|
53
|
-
function toUnsubscribe(handlePromise) {
|
|
54
|
-
let removed = false;
|
|
55
|
-
let handle = null;
|
|
56
|
-
handlePromise
|
|
57
|
-
.then((resolved) => {
|
|
58
|
-
handle = resolved;
|
|
59
|
-
if (removed)
|
|
60
|
-
handle.remove().catch(() => { });
|
|
61
|
-
})
|
|
62
|
-
.catch(() => { });
|
|
63
|
-
return () => {
|
|
64
|
-
removed = true;
|
|
65
|
-
if (handle !== null)
|
|
66
|
-
handle.remove().catch(() => { });
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
115
|
//# sourceMappingURL=capacitorConnectivity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacitorConnectivity.js","sourceRoot":"","sources":["../src/capacitorConnectivity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capacitorConnectivity.js","sourceRoot":"","sources":["../src/capacitorConnectivity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAczD,oGAAoG;AACpG,wGAAwG;AACxG,sGAAsG;AACtG,qEAAqE;AACrE,MAAM,UAAU,kCAAkC,CAAC,SAAuB;IACxE,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;IAClC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAc,CAAC;IAC1C,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,oBAAoB,GAAG,KAAK,CAAC;IACjC,IAAI,MAAM,GAAyC,IAAI,CAAC;IACxD,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,MAAM,KAAK,IAAI,IAAI,aAAa;YAAE,OAAO;QAC7C,aAAa,GAAG,IAAI,CAAC;QACrB,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvC,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,WAAW,CAAC;YAAE,QAAQ,EAAE,CAAC;IACtD,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,MAAiC,EAAE,EAAE;QACnD,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC;QACjC,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC;IAC9C,CAAC,CAAC;IAEF,oGAAoG;IACpG,uFAAuF;IACvF,OAAO;SACJ,WAAW,CAAC,qBAAqB,EAAE,CAAC,MAAM,EAAE,EAAE;QAC7C,IAAI,SAAS;YAAE,OAAO;QACtB,oBAAoB,GAAG,IAAI,CAAC;QAC5B,MAAM,CAAC,MAAM,CAAC,CAAC;QACf,MAAM,EAAE,CAAC;IACX,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,MAAM,GAAG,QAAQ,CAAC;QAClB,IAAI,SAAS;YAAE,YAAY,EAAE,CAAC;IAChC,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAEnB,OAAO;SACJ,SAAS,EAAE;SACX,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QACf,IAAI,SAAS,IAAI,oBAAoB;YAAE,OAAO;QAC9C,MAAM,CAAC,MAAM,CAAC,CAAC;QACf,+FAA+F;QAC/F,sFAAsF;QACtF,MAAM,EAAE,CAAC;IACX,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE;QACV,2FAA2F;IAC7F,CAAC,CAAC,CAAC;IAEL,OAAO,YAAY,CAAC;QAClB,OAAO;YACL,IAAI,SAAS;gBAAE,OAAO;YACtB,SAAS,GAAG,IAAI,CAAC;YACjB,WAAW,CAAC,KAAK,EAAE,CAAC;YACpB,YAAY,EAAE,CAAC;QACjB,CAAC;QACD,SAAS,CAAC,GAAG;YACX,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACxB,OAAO,GAAG,CAAC;QACb,CAAC;QACD,SAAS,CAAC,QAAQ;YAChB,IAAI,SAAS;gBAAE,OAAO,IAAI,CAAC;YAC3B,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC1B,IAAI,MAAM,GAAG,IAAI,CAAC;YAClB,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,MAAM;oBAAE,OAAO;gBACpB,MAAM,GAAG,KAAK,CAAC;gBACf,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC,CAAC;QACJ,CAAC;KACoE,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,UAAU,CAAC,GAAuB,EAAE,MAAoC;IAC/E,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3B,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IACvB,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC/B,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACrC,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IACzC,GAAG,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IACrB,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC/B,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;AAC/B,CAAC;AAED,SAAS,aAAa;IACpB,OAAO;QACL,QAAQ,EAAE,CAAC,CAAC;QACZ,WAAW,EAAE,CAAC,CAAC;QACf,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,IAAI;QACZ,GAAG,EAAE,CAAC,CAAC;QACP,QAAQ,EAAE,KAAK;QACf,IAAI,EAAE,SAAS;KAChB,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,cAAsB;IAC9C,IAAI,cAAc,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAC7C,IAAI,cAAc,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC;IACrD,IAAI,cAAc,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAC7C,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import type { CapacitorApi, DeviceBackend } from '@flighthq/types/contract';
|
|
2
|
-
export declare function createCapacitorDeviceBackend(capacitor: CapacitorApi): DeviceBackend;
|
|
1
|
+
import type { CapacitorApi, DeviceBackend, Entity } from '@flighthq/types/contract';
|
|
2
|
+
export declare function createCapacitorDeviceBackend(capacitor: CapacitorApi): DeviceBackend & Entity;
|
|
3
3
|
//# sourceMappingURL=capacitorDevice.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacitorDevice.d.ts","sourceRoot":"","sources":["../src/capacitorDevice.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capacitorDevice.d.ts","sourceRoot":"","sources":["../src/capacitorDevice.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,YAAY,EAEZ,aAAa,EAIb,MAAM,EAEP,MAAM,0BAA0B,CAAC;AAUlC,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,YAAY,GAAG,aAAa,GAAG,MAAM,CAiF5F"}
|
package/dist/capacitorDevice.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createEntity } from '@flighthq/entity/contract';
|
|
1
2
|
import { DeviceFormFactorPhone, DeviceFormFactorUnknown } from '@flighthq/types/contract';
|
|
2
3
|
// Maps Flight's DeviceBackend onto Capacitor's `@capacitor/device`. DeviceBackend reads are synchronous
|
|
3
4
|
// out-fills, whereas Capacitor's getInfo/getId are async, so the adapter prefetches both once at
|
|
@@ -27,7 +28,7 @@ export function createCapacitorDeviceBackend(capacitor) {
|
|
|
27
28
|
.catch(() => {
|
|
28
29
|
/* leave '' */
|
|
29
30
|
});
|
|
30
|
-
return {
|
|
31
|
+
return createEntity({
|
|
31
32
|
getCapabilities(out) {
|
|
32
33
|
// `@capacitor/device` reports no input capabilities; report the false sentinels.
|
|
33
34
|
out.hasKeyboard = false;
|
|
@@ -86,7 +87,7 @@ export function createCapacitorDeviceBackend(capacitor) {
|
|
|
86
87
|
out.left = 0;
|
|
87
88
|
return out;
|
|
88
89
|
},
|
|
89
|
-
};
|
|
90
|
+
});
|
|
90
91
|
}
|
|
91
92
|
// Capacitor's platform is 'ios' | 'android' | 'web'; a mobile platform is a phone (no tablet signal),
|
|
92
93
|
// otherwise unknown. A native host that classifies tablets can override this backend.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capacitorDevice.js","sourceRoot":"","sources":["../src/capacitorDevice.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"capacitorDevice.js","sourceRoot":"","sources":["../src/capacitorDevice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAWzD,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAE1F,wGAAwG;AACxG,iGAAiG;AACjG,wGAAwG;AACxG,kGAAkG;AAClG,sGAAsG;AACtG,uGAAuG;AACvG,qEAAqE;AACrE,MAAM,UAAU,4BAA4B,CAAC,SAAuB;IAClE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;IAChC,yFAAyF;IACzF,IAAI,UAAU,GAA+B,IAAI,CAAC;IAClD,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,MAAM;SACH,OAAO,EAAE;SACT,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACb,UAAU,GAAG,IAAI,CAAC;IACpB,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE;QACV,4BAA4B;IAC9B,CAAC,CAAC,CAAC;IACL,MAAM;SACH,KAAK,EAAE;SACP,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;QACX,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC;IAC3B,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE;QACV,cAAc;IAChB,CAAC,CAAC,CAAC;IACL,OAAO,YAAY,CAAC;QAClB,eAAe,CAAC,GAAuB;YACrC,iFAAiF;YACjF,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;YACxB,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;YACrB,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC;YACtB,OAAO,GAAG,CAAC;QACb,CAAC;QACD,iBAAiB,CAAC,GAAyB;YACzC,sEAAsE;YACtE,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACpB,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACpB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;YACvB,GAAG,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YACtB,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;YACxB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;YACvB,GAAG,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACpB,OAAO,GAAG,CAAC;QACb,CAAC;QACD,KAAK;YACH,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,OAAO,CAAC,GAAe;YACrB,MAAM,IAAI,GAAG,UAAU,CAAC;YACxB,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC;YACd,GAAG,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;YACzB,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC;YACnB,GAAG,CAAC,UAAU,GAAG,EAAE,CAAC;YACpB,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAClB,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YACnB,GAAG,CAAC,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YACpC,GAAG,CAAC,WAAW,GAAG,EAAE,CAAC;YACrB,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC;YACnB,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;YAClB,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC;YACzB,GAAG,CAAC,cAAc,GAAG,KAAK,CAAC;YAC3B,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC;YACrB,GAAG,CAAC,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,KAAK,CAAC;YACzC,GAAG,CAAC,YAAY,GAAG,IAAI,EAAE,YAAY,IAAI,EAAE,CAAC;YAC5C,GAAG,CAAC,aAAa,GAAG,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;YACrC,GAAG,CAAC,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAC9B,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;YACjB,GAAG,CAAC,MAAM,GAAG,IAAI,EAAE,eAAe,IAAI,EAAE,CAAC;YACzC,GAAG,CAAC,SAAS,GAAG,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;YACtC,GAAG,CAAC,cAAc,GAAG,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC;YAC1C,GAAG,CAAC,WAAW,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YACpC,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC;YACvB,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;YACrB,GAAG,CAAC,cAAc,GAAG,IAAI,EAAE,cAAc,IAAI,EAAE,CAAC;YAChD,OAAO,GAAG,CAAC;QACb,CAAC;QACD,iBAAiB,CAAC,GAAmB;YACnC,gEAAgE;YAChE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;YACZ,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;YACd,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;YACf,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YACb,OAAO,GAAG,CAAC;QACb,CAAC;KACsB,CAAC,CAAC;AAC7B,CAAC;AAED,sGAAsG;AACtG,sFAAsF;AACtF,SAAS,YAAY,CAAC,IAA0C;IAC9D,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,uBAAuB,CAAC;IAClD,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,qBAAqB,CAAC;IACzF,OAAO,uBAAuB,CAAC;AACjC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare function
|
|
1
|
+
import type { CapacitorApi, Entity, MessageDialogBackend, PromptDialogBackend } from '@flighthq/types/contract';
|
|
2
|
+
export declare function createCapacitorMessageDialogBackend(capacitor: CapacitorApi): MessageDialogBackend & Entity;
|
|
3
|
+
export declare function createCapacitorPromptDialogBackend(capacitor: CapacitorApi): PromptDialogBackend & Entity;
|
|
3
4
|
//# sourceMappingURL=capacitorDialog.d.ts.map
|