unified-ble-manager 4.0.11 → 4.0.13
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/CHANGELOG.md +45 -0
- package/MIGRATION_4.0.md +1 -1
- package/README.md +13 -1
- package/RELEASE.md +37 -8
- package/ROADMAP.4.0.md +4 -0
- package/SBOM.cdx.json +4 -4
- package/THIRD_PARTY_LICENSES.json +1 -1
- package/android/src/main/java/com/sfourdrinier/unifiedblemanager/protocol/UnifiedBleProtocolAndroidDispatcher.kt +11 -4
- package/android/src/main/java/com/sfourdrinier/unifiedblemanager/protocol/UnifiedBleProtocolControlModule.java +6 -5
- package/android/src/main/java/com/sfourdrinier/unifiedblemanager/protocol/UnifiedBleProtocolJsiBinding.java +4 -4
- package/android/src/main/java/com/sfourdrinier/unifiedblemanager/protocol/generated/NativeProtocolV2Schema.kt +7 -1
- package/android/src/main/jni/UnifiedBleProtocolJsiBinding.cpp +10 -5
- package/android/src/test/java/com/sfourdrinier/unifiedblemanager/protocol/UnifiedBleProtocolAndroidDispatcherLifecycleTest.kt +15 -0
- package/docs/AGENTS.md +33 -0
- package/docs/ELECTRON.md +1 -1
- package/docs/EXPO_PLUGIN.md +1 -1
- package/docs/GAPS.4.0.md +1 -1
- package/docs/GETTING_STARTED.md +3 -3
- package/docs/NODE.md +1 -1
- package/docs/README.md +178 -0
- package/docs/WEB.md +1 -1
- package/docs/generated/PLATFORM_SUPPORT.md +1 -1
- package/ios/Generated/NativeProtocolV2Schema.swift +7 -1
- package/lib/commonjs/backends/corebluetooth/corebluetooth-backend.js +6 -4
- package/lib/commonjs/backends/corebluetooth/corebluetooth-backend.js.map +1 -1
- package/lib/commonjs/backends/corebluetooth/corebluetooth-gatt-operations.js +5 -2
- package/lib/commonjs/backends/corebluetooth/corebluetooth-gatt-operations.js.map +1 -1
- package/lib/commonjs/backends/corebluetooth/corebluetooth-handles.js +20 -0
- package/lib/commonjs/backends/corebluetooth/corebluetooth-handles.js.map +1 -1
- package/lib/commonjs/implementation-version.js +1 -1
- package/lib/commonjs/native-protocol/generated/native-protocol-v2-schema.js +5 -3
- package/lib/commonjs/native-protocol/generated/native-protocol-v2-schema.js.map +1 -1
- package/lib/commonjs/native-protocol/rn-android-boundary.js +32 -16
- package/lib/commonjs/native-protocol/rn-android-boundary.js.map +1 -1
- package/lib/module/backends/corebluetooth/corebluetooth-backend.js +6 -4
- package/lib/module/backends/corebluetooth/corebluetooth-backend.js.map +1 -1
- package/lib/module/backends/corebluetooth/corebluetooth-gatt-operations.js +5 -2
- package/lib/module/backends/corebluetooth/corebluetooth-gatt-operations.js.map +1 -1
- package/lib/module/backends/corebluetooth/corebluetooth-handles.js +20 -0
- package/lib/module/backends/corebluetooth/corebluetooth-handles.js.map +1 -1
- package/lib/module/implementation-version.js +1 -1
- package/lib/module/native-protocol/generated/native-protocol-v2-schema.js +4 -2
- package/lib/module/native-protocol/generated/native-protocol-v2-schema.js.map +1 -1
- package/lib/module/native-protocol/rn-android-boundary.js +32 -16
- package/lib/module/native-protocol/rn-android-boundary.js.map +1 -1
- package/lib/typescript/commonjs/src/backends/bluez/bluez-backend-provider.d.ts +1 -1
- package/lib/typescript/commonjs/src/backends/corebluetooth/corebluetooth-backend.d.ts +2 -1
- package/lib/typescript/commonjs/src/backends/corebluetooth/corebluetooth-backend.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/backends/corebluetooth/corebluetooth-boundary.d.ts +4 -0
- package/lib/typescript/commonjs/src/backends/corebluetooth/corebluetooth-boundary.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/backends/corebluetooth/corebluetooth-gatt-operations.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/backends/corebluetooth/corebluetooth-handles.d.ts +2 -1
- package/lib/typescript/commonjs/src/backends/corebluetooth/corebluetooth-handles.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/backends/corebluetooth/corebluetooth-identity.d.ts +1 -1
- package/lib/typescript/commonjs/src/backends/reactnative/react-native-android-provider.d.ts +1 -1
- package/lib/typescript/commonjs/src/backends/reactnative/react-native-apple-provider.d.ts +1 -1
- package/lib/typescript/commonjs/src/backends/winrt/winrt-provider.d.ts +1 -1
- package/lib/typescript/commonjs/src/implementation-version.d.ts +1 -1
- package/lib/typescript/commonjs/src/native-protocol/generated/native-protocol-v2-schema.d.ts +3 -1
- package/lib/typescript/commonjs/src/native-protocol/generated/native-protocol-v2-schema.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/native-protocol/rn-android-boundary.d.ts +2 -1
- package/lib/typescript/commonjs/src/native-protocol/rn-android-boundary.d.ts.map +1 -1
- package/lib/typescript/module/src/backends/bluez/bluez-backend-provider.d.ts +1 -1
- package/lib/typescript/module/src/backends/corebluetooth/corebluetooth-backend.d.ts +2 -1
- package/lib/typescript/module/src/backends/corebluetooth/corebluetooth-backend.d.ts.map +1 -1
- package/lib/typescript/module/src/backends/corebluetooth/corebluetooth-boundary.d.ts +4 -0
- package/lib/typescript/module/src/backends/corebluetooth/corebluetooth-boundary.d.ts.map +1 -1
- package/lib/typescript/module/src/backends/corebluetooth/corebluetooth-gatt-operations.d.ts.map +1 -1
- package/lib/typescript/module/src/backends/corebluetooth/corebluetooth-handles.d.ts +2 -1
- package/lib/typescript/module/src/backends/corebluetooth/corebluetooth-handles.d.ts.map +1 -1
- package/lib/typescript/module/src/backends/corebluetooth/corebluetooth-identity.d.ts +1 -1
- package/lib/typescript/module/src/backends/reactnative/react-native-android-provider.d.ts +1 -1
- package/lib/typescript/module/src/backends/reactnative/react-native-apple-provider.d.ts +1 -1
- package/lib/typescript/module/src/backends/winrt/winrt-provider.d.ts +1 -1
- package/lib/typescript/module/src/implementation-version.d.ts +1 -1
- package/lib/typescript/module/src/native-protocol/generated/native-protocol-v2-schema.d.ts +3 -1
- package/lib/typescript/module/src/native-protocol/generated/native-protocol-v2-schema.d.ts.map +1 -1
- package/lib/typescript/module/src/native-protocol/rn-android-boundary.d.ts +2 -1
- package/lib/typescript/module/src/native-protocol/rn-android-boundary.d.ts.map +1 -1
- package/native/AGENTS.md +18 -0
- package/native/PREBUILDS.json +5 -5
- package/native/electron/corebluetooth/index.js +12 -0
- package/native/electron/corebluetooth/prebuilds/darwin-arm64/unified_ble_corebluetooth.node +0 -0
- package/native/electron/corebluetooth/prebuilds/darwin-x64/unified_ble_corebluetooth.node +0 -0
- package/native/electron/winrt/prebuilds/win32-arm64/unified_ble_winrt.node +0 -0
- package/native/electron/winrt/prebuilds/win32-x64/unified_ble_winrt.node +0 -0
- package/native/protocol/generated/NativeProtocolV2Schema.hpp +11 -3
- package/native/protocol/schema/native-protocol-v2-abi.json +4 -2
- package/native/protocol/schema/native-protocol-v2.json +4 -2
- package/native/protocol/src/NativeProtocolV2Codec.cpp +3 -1
- package/package.json +2 -2
- package/src/backends/corebluetooth/corebluetooth-backend.ts +9 -5
- package/src/backends/corebluetooth/corebluetooth-boundary.ts +9 -0
- package/src/backends/corebluetooth/corebluetooth-gatt-operations.ts +8 -2
- package/src/backends/corebluetooth/corebluetooth-handles.ts +36 -1
- package/src/implementation-version.ts +1 -1
- package/src/native-protocol/generated/native-protocol-v2-schema.ts +6 -1
- package/src/native-protocol/rn-android-boundary.ts +53 -20
package/docs/README.md
ADDED
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
# Documentation map
|
|
2
|
+
|
|
3
|
+
Every document in this repository, what it is for, and whether it is live.
|
|
4
|
+
This index is the entry point for humans and AI agents alike: read the one-line
|
|
5
|
+
description, check the status, and open only what you need. The index is
|
|
6
|
+
machine-verified — `pnpm docs:check` fails when a document is missing from this
|
|
7
|
+
map, when a listed document does not exist, or when a row lacks a status.
|
|
8
|
+
|
|
9
|
+
Consumers of the published package should start with
|
|
10
|
+
[`../README.md`](../README.md) and [`../llms.txt`](../llms.txt). Contributors
|
|
11
|
+
and coding agents should read [`../AGENTS.md`](../AGENTS.md) first.
|
|
12
|
+
|
|
13
|
+
## Status taxonomy
|
|
14
|
+
|
|
15
|
+
- **Current** — live guidance. If it disagrees with the code, one of the two is
|
|
16
|
+
a defect.
|
|
17
|
+
- **Historical** — a finished-lifecycle record (audit, fix tracker, delivered
|
|
18
|
+
plan, superseded lineage doc). Never act on it as guidance; it is kept
|
|
19
|
+
because the project treats its own history as evidence.
|
|
20
|
+
- **Generated** — owned by a generator. Never hand-edit; change the source of
|
|
21
|
+
truth and rerun the generator (see [`AGENTS.md`](AGENTS.md) in this
|
|
22
|
+
directory).
|
|
23
|
+
|
|
24
|
+
## Start here (consumers)
|
|
25
|
+
|
|
26
|
+
| Document | What it is | Status |
|
|
27
|
+
| --- | --- | --- |
|
|
28
|
+
| [`../README.md`](../README.md) | Product overview, install, entrypoint table, one complete React Native loop, method index | Current |
|
|
29
|
+
| [`../llms.txt`](../llms.txt) | Machine-readable package overview for AI coding agents: contract facts, entrypoints, curated doc links | Current |
|
|
30
|
+
| [`GETTING_STARTED.md`](GETTING_STARTED.md) | Host chooser and the first scan/connect/read/notify/teardown path | Current |
|
|
31
|
+
| [`TUTORIALS.md`](TUTORIALS.md) | Public API recipes: scan, connect, discover, read/write, subscribe, tear down | Current |
|
|
32
|
+
| [`HELPERS.md`](HELPERS.md) | Application helper recipes — `find`, scoped connections, GATT objects, notifications | Current |
|
|
33
|
+
| [`PROFILES_AND_COMMANDS.md`](PROFILES_AND_COMMANDS.md) | SIG profile codecs (heart rate, battery, DIS, thermometer, blood pressure) and GATT command helpers | Current |
|
|
34
|
+
| [`PEERS.md`](PEERS.md) | `PeerReference` peer directories, persistence, resolve-then-reconnect semantics | Current |
|
|
35
|
+
| [`CONNECTION_MANAGER.md`](CONNECTION_MANAGER.md) | Connection ownership, leases, generations, application-owned reconnect policy | Current |
|
|
36
|
+
| [`BONDING.md`](BONDING.md) | Pairing, bonding, encryption, and authentication semantics via `manager.security` | Current |
|
|
37
|
+
| [`../MIGRATION_4.0.md`](../MIGRATION_4.0.md) | Side-by-side migration map from `react-native-ble-plx` 3.x to 4.0 | Current |
|
|
38
|
+
|
|
39
|
+
## Host guides
|
|
40
|
+
|
|
41
|
+
| Document | What it is | Status |
|
|
42
|
+
| --- | --- | --- |
|
|
43
|
+
| [`WEB.md`](WEB.md) | Web Bluetooth host: chooser, HTTPS, user activation, lifecycle | Current |
|
|
44
|
+
| [`NODE.md`](NODE.md) | Node hosts: CoreBluetooth, WinRT, and BlueZ entrypoints, prebuilds, `dbus-next` peer | Current |
|
|
45
|
+
| [`ELECTRON.md`](ELECTRON.md) | Electron main/renderer split, IPC router, composition sequence | Current |
|
|
46
|
+
| [`ELECTRON_SECURITY_MODEL.md`](ELECTRON_SECURITY_MODEL.md) | Electron ownership and threat boundary; renderer permission snapshot rules | Current |
|
|
47
|
+
| [`TAURI.md`](TAURI.md) | Tauri v2 host: `createTauriBleManager()` and the Rust plugin install recipe | Current |
|
|
48
|
+
| [`EXPO_PLUGIN.md`](EXPO_PLUGIN.md) | Expo config-plugin option reference and development-build install | Current |
|
|
49
|
+
| [`CLI.md`](CLI.md) | `ubm` CLI command surface: `doctor`, `inspect`, `init`, `support-bundle`, `trace` | Current |
|
|
50
|
+
|
|
51
|
+
## Contract, architecture, and backend authoring
|
|
52
|
+
|
|
53
|
+
| Document | What it is | Status |
|
|
54
|
+
| --- | --- | --- |
|
|
55
|
+
| [`UNIFIED_SEMANTICS.md`](UNIFIED_SEMANTICS.md) | Normative behavior contract (MUST/MUST NOT) for any conforming unified BLE implementation | Current |
|
|
56
|
+
| [`UNIFIED_BLE_4.0_IMPLEMENTATION_PLAN.md`](UNIFIED_BLE_4.0_IMPLEMENTATION_PLAN.md) | Clean-baseline architecture authority for the 4.0 package | Current |
|
|
57
|
+
| [`BACKEND_AUTHORING.md`](BACKEND_AUTHORING.md) | Authoring a third-party backend against `unified-ble-manager/backend-sdk` | Current |
|
|
58
|
+
| [`TCK.md`](TCK.md) | Backend TCK: required scenarios and running `runBackendAuthorTck` externally | Current |
|
|
59
|
+
| [`DISCOVERY_AND_PROFILES.md`](DISCOVERY_AND_PROFILES.md) | Discovery helpers and the profile subpath import map (inherited helpers marked transitional) | Current |
|
|
60
|
+
| [`FORK.md`](FORK.md) | Project lineage from `react-native-ble-plx` and the 4.x authority boundary | Current |
|
|
61
|
+
| [`ADR/2026-07-4.0-backend-contract.md`](ADR/2026-07-4.0-backend-contract.md) | ADR: one versioned host-neutral `BleCentralBackend` contract | Current |
|
|
62
|
+
| [`ADR/2026-07-4.0-boundary.md`](ADR/2026-07-4.0-boundary.md) | ADR: native/IPC wire projections and boundary protocol rules | Current |
|
|
63
|
+
| [`ADR/2026-07-4.0-capability-registry.md`](ADR/2026-07-4.0-capability-registry.md) | ADR: runtime capability registry, four states, evidence binding | Current |
|
|
64
|
+
| [`ADR/2026-07-4.0-open-source-governance.md`](ADR/2026-07-4.0-open-source-governance.md) | ADR: evidence-governed support claims, certification, deprecation | Current |
|
|
65
|
+
| [`ADR/2026-07-4.0-packaging.md`](ADR/2026-07-4.0-packaging.md) | ADR: ESM-first package, inert root, strict subpath exports | Current |
|
|
66
|
+
| [`ADR/2026-07-4.0-public-api.md`](ADR/2026-07-4.0-public-api.md) | ADR: clean-baseline public API, no 3.x emulation | Current |
|
|
67
|
+
| [`ADR/2026-07-4.0-rn-restoration-bootstrap.md`](ADR/2026-07-4.0-rn-restoration-bootstrap.md) | ADR: native-owned Apple restoration bootstrap before JS manager construction | Current |
|
|
68
|
+
| [`ADR/2026-08-4.0-public-contract-reset.md`](ADR/2026-08-4.0-public-contract-reset.md) | ADR: stable application boundary; supersedes RC1 provisional names | Current |
|
|
69
|
+
|
|
70
|
+
## Platform support, evidence, and performance
|
|
71
|
+
|
|
72
|
+
| Document | What it is | Status |
|
|
73
|
+
| --- | --- | --- |
|
|
74
|
+
| [`PLATFORMS.md`](PLATFORMS.md) | Platform support as an evidence index — label definitions, not a static matrix | Current |
|
|
75
|
+
| [`generated/PLATFORM_SUPPORT.md`](generated/PLATFORM_SUPPORT.md) | Platform support evidence projection for the current package version | Generated |
|
|
76
|
+
| [`generated/BACKEND_SDK_REFERENCE.md`](generated/BACKEND_SDK_REFERENCE.md) | Capability states, evidence levels, and required TCK scenario IDs | Generated |
|
|
77
|
+
| [`GAPS.4.0.md`](GAPS.4.0.md) | Platform/CI/evidence inventory — what proof exists per platform | Current |
|
|
78
|
+
| [`PERFORMANCE.md`](PERFORMANCE.md) | Performance and resource verification harness and its evidence limits | Current |
|
|
79
|
+
| [`evidence/react-native-apple-physical-device-readiness.md`](evidence/react-native-apple-physical-device-readiness.md) | What is proven before Apple hardware exists; what a live-radio receipt adds | Current |
|
|
80
|
+
| [`platforms/META_QUEST_4.1_SCOPE.md`](platforms/META_QUEST_4.1_SCOPE.md) | Maintainer decision deferring Meta Quest support to 4.1 | Current |
|
|
81
|
+
|
|
82
|
+
## Policy, security, and process
|
|
83
|
+
|
|
84
|
+
| Document | What it is | Status |
|
|
85
|
+
| --- | --- | --- |
|
|
86
|
+
| [`../AGENTS.md`](../AGENTS.md) | Single source of agent/contributor principles for this repository | Current |
|
|
87
|
+
| [`../CLAUDE.md`](../CLAUDE.md) | One-line import shim for `AGENTS.md` so the two cannot drift | Current |
|
|
88
|
+
| [`AGENTS.md`](AGENTS.md) | Documentation-tree conventions: status taxonomy, index maintenance, generated artifacts | Current |
|
|
89
|
+
| [`../scripts/AGENTS.md`](../scripts/AGENTS.md) | Script-tree conventions: generators own their outputs; verification commands | Current |
|
|
90
|
+
| [`../native/AGENTS.md`](../native/AGENTS.md) | Native-tree conventions: ABI exactness, versioned protocols, prebuild authority | Current |
|
|
91
|
+
| [`../CONTRIBUTING.md`](../CONTRIBUTING.md) | Dev setup, canonical pre-PR checks, branch and PR flow | Current |
|
|
92
|
+
| [`../GOVERNANCE.md`](../GOVERNANCE.md) | Maintainer roles, decision process, ADR requirement | Current |
|
|
93
|
+
| [`../RELEASE.md`](../RELEASE.md) | Canonical tag-driven release procedure and invariants | Current |
|
|
94
|
+
| [`../SECURITY.md`](../SECURITY.md) | Vulnerability reporting policy | Current |
|
|
95
|
+
| [`../SUPPORT.md`](../SUPPORT.md) | Support policy: package SemVer vs evidence-backed backend labels | Current |
|
|
96
|
+
| [`security/UNIFIED_BLE_4.0_THREAT_MODEL.md`](security/UNIFIED_BLE_4.0_THREAT_MODEL.md) | Repo-wide threat model: trust boundaries, attacker classes, objectives | Current |
|
|
97
|
+
| [`DEPENDENCY_AND_ARTIFACT_POLICY.md`](DEPENDENCY_AND_ARTIFACT_POLICY.md) | SBOM and third-party license generation and policy | Current |
|
|
98
|
+
| [`../CHANGELOG.md`](../CHANGELOG.md) | Active 4.x changelog | Current |
|
|
99
|
+
|
|
100
|
+
## Historical records
|
|
101
|
+
|
|
102
|
+
Kept as evidence of how the project got here. Nothing below is guidance.
|
|
103
|
+
|
|
104
|
+
### Lineage and superseded scope
|
|
105
|
+
|
|
106
|
+
| Document | What it is | Status |
|
|
107
|
+
| --- | --- | --- |
|
|
108
|
+
| [`../CHANGELOG_HISTORY.md`](../CHANGELOG_HISTORY.md) | Archived 4.0.0-alpha prerelease changelog entries | Historical |
|
|
109
|
+
| [`../CHANGELOG-pre-3.0.0.md`](../CHANGELOG-pre-3.0.0.md) | Changelog of the `react-native-ble-plx` 1.x–2.x lineage | Historical |
|
|
110
|
+
| [`../ROADMAP.md`](../ROADMAP.md) | 3.x product roadmap for the forked `react-native-ble-plx`; does not govern 4.0 | Historical |
|
|
111
|
+
| [`../ROADMAP.4.0.md`](../ROADMAP.4.0.md) | 4.0 product scope decision record; scope delivered | Historical |
|
|
112
|
+
| [`../TVOS_SUPPORT_SPEC.md`](../TVOS_SUPPORT_SPEC.md) | Spec for adding tvOS support to the 3.x fork | Historical |
|
|
113
|
+
| [`README_V1.md`](README_V1.md) | Original `react-native-ble-plx` v1 README | Historical |
|
|
114
|
+
| [`MIGRATION_V1.md`](MIGRATION_V1.md) | 1.1.0 → 2.0.0 Podfile migration note | Historical |
|
|
115
|
+
| [`BACKGROUND.md`](BACKGROUND.md) | Background/restoration behavior characterization of inherited source; transitional, not 4.0 semantics | Historical |
|
|
116
|
+
| [`TVOS.md`](TVOS.md) | tvOS current-source characterization; not a 4.0 support claim | Historical |
|
|
117
|
+
|
|
118
|
+
### Fix trackers and review rounds
|
|
119
|
+
|
|
120
|
+
| Document | What it is | Status |
|
|
121
|
+
| --- | --- | --- |
|
|
122
|
+
| [`FIX_TRACKER.4.0.md`](FIX_TRACKER.4.0.md) | E2E review round-1 fix tracker | Historical |
|
|
123
|
+
| [`FIX_TRACKER.4.0-round2.md`](FIX_TRACKER.4.0-round2.md) | E2E review round-2 fix tracker | Historical |
|
|
124
|
+
| [`FIX_TRACKER.4.0-round3.md`](FIX_TRACKER.4.0-round3.md) | E2E review round-3 confirmed findings | Historical |
|
|
125
|
+
| [`review/README.md`](review/README.md) | What the review directory holds and why it is frozen | Current |
|
|
126
|
+
| [`review/2026-08-19-pr-26-external-review.md`](review/2026-08-19-pr-26-external-review.md) | Verbatim external review of PR #26 at rc.0 | Historical |
|
|
127
|
+
| [`review/2026-08-19-pr-26-external-review-verification.md`](review/2026-08-19-pr-26-external-review-verification.md) | Multi-agent verification of that review with per-item verdicts | Historical |
|
|
128
|
+
|
|
129
|
+
The `review/` directory also holds machine-readable findings data
|
|
130
|
+
(`findings-4.0.json`, `findings-4.0-round2.json`,
|
|
131
|
+
`findings-4.0-round3-confirmed.json`), frozen alongside the rounds above.
|
|
132
|
+
|
|
133
|
+
### Audits
|
|
134
|
+
|
|
135
|
+
| Document | What it is | Status |
|
|
136
|
+
| --- | --- | --- |
|
|
137
|
+
| [`audits/README.md`](audits/README.md) | What the audits directory holds and why it is frozen | Current |
|
|
138
|
+
| [`audits/2026-08-21-post-pr5-audit-disposition.md`](audits/2026-08-21-post-pr5-audit-disposition.md) | Post-PR5 audit disposition and continuation ledger | Historical |
|
|
139
|
+
| [`audits/2026-08-22-pr41-review-inventory.md`](audits/2026-08-22-pr41-review-inventory.md) | PR41 reviewer-finding table with dispositions | Historical |
|
|
140
|
+
| [`audits/2026-08-23-pr10-review-inventory.md`](audits/2026-08-23-pr10-review-inventory.md) | PR10 (first-class Expo host) review disposition ledger | Historical |
|
|
141
|
+
| [`audits/2026-08-24-rc3-audit-current-inventory.md`](audits/2026-08-24-rc3-audit-current-inventory.md) | RC3 external review verified against RC4, per-finding verdicts | Historical |
|
|
142
|
+
| [`audits/ECOSYSTEM_BACKEND_AUTHOR_AUDIT.md`](audits/ECOSYSTEM_BACKEND_AUTHOR_AUDIT.md) | Phase 0 clean-room ecosystem/backend-author audit | Historical |
|
|
143
|
+
| [`audits/FIRST_CONSUMER_AUDIT.md`](audits/FIRST_CONSUMER_AUDIT.md) | Audit of the first consumer and its live BLE host families | Historical |
|
|
144
|
+
| [`audits/HOST_BACKEND_PACKAGE_AUDIT.md`](audits/HOST_BACKEND_PACKAGE_AUDIT.md) | Non-RN host, backend, and package-isolation audit | Historical |
|
|
145
|
+
| [`audits/REACT_NATIVE_FULL_SURFACE_AUDIT.md`](audits/REACT_NATIVE_FULL_SURFACE_AUDIT.md) | Full React Native surface inventory as Phase 0 ADR input | Historical |
|
|
146
|
+
|
|
147
|
+
### Early evidence reports
|
|
148
|
+
|
|
149
|
+
| Document | What it is | Status |
|
|
150
|
+
| --- | --- | --- |
|
|
151
|
+
| [`evidence/g0/core-model-correction-report.md`](evidence/g0/core-model-correction-report.md) | G0 spike: core model corrections after the draft-root adapter pass | Historical |
|
|
152
|
+
| [`evidence/g0/draft-contract-correction-report.md`](evidence/g0/draft-contract-correction-report.md) | Draft-types correction report on the declaration fixture | Historical |
|
|
153
|
+
| [`evidence/g0/draft-contract-coverage.md`](evidence/g0/draft-contract-coverage.md) | Draft-types coverage table: contract concerns to compile proof | Historical |
|
|
154
|
+
|
|
155
|
+
### Delivered plans and specs
|
|
156
|
+
|
|
157
|
+
| Document | What it is | Status |
|
|
158
|
+
| --- | --- | --- |
|
|
159
|
+
| [`superpowers/README.md`](superpowers/README.md) | What the plans/specs directory holds and why it is frozen | Current |
|
|
160
|
+
| [`superpowers/plans/2026-07-08-expo57-turbomodule-cng.md`](superpowers/plans/2026-07-08-expo57-turbomodule-cng.md) | Plan: Expo SDK 57 / RN 0.86 TurboModule modernization of the 3.x fork | Historical |
|
|
161
|
+
| [`superpowers/plans/2026-07-23-3.9.0-gated-cm-restored-state.md`](superpowers/plans/2026-07-23-3.9.0-gated-cm-restored-state.md) | Plan: 3.9.0 gated ConnectionManager and iOS restored-state handoff | Historical |
|
|
162
|
+
| [`superpowers/plans/2026-08-17-markdown-first-docs.md`](superpowers/plans/2026-08-17-markdown-first-docs.md) | Plan: markdown-first 4.x consumer docs rewrite | Historical |
|
|
163
|
+
| [`superpowers/plans/2026-08-19-rc1-review-response.md`](superpowers/plans/2026-08-19-rc1-review-response.md) | Master plan for landing the PR #26 review and cutting rc.1 | Historical |
|
|
164
|
+
| [`superpowers/plans/2026-08-19-rc1-slice-a-docs.md`](superpowers/plans/2026-08-19-rc1-slice-a-docs.md) | RC1 Slice A: documentation correctness pass | Historical |
|
|
165
|
+
| [`superpowers/plans/2026-08-19-rc1-slice-b-api.md`](superpowers/plans/2026-08-19-rc1-slice-b-api.md) | RC1 Slice B: pre-stable API and example corrections | Historical |
|
|
166
|
+
| [`superpowers/plans/2026-08-19-rc1-slice-c-tests.md`](superpowers/plans/2026-08-19-rc1-slice-c-tests.md) | RC1 Slice C: documentation verification tests | Historical |
|
|
167
|
+
| [`superpowers/plans/2026-08-19-rc1-slice-d-hosts.md`](superpowers/plans/2026-08-19-rc1-slice-d-hosts.md) | RC1 Slice D: host factories, adapter-state stream, host guides | Historical |
|
|
168
|
+
| [`superpowers/plans/2026-08-20-handoff-rc1-to-stable-4.0.md`](superpowers/plans/2026-08-20-handoff-rc1-to-stable-4.0.md) | Agent handoff operating procedure from rc.1 to stable 4.0.0 | Historical |
|
|
169
|
+
| [`superpowers/plans/2026-08-20-next-12-prs.md`](superpowers/plans/2026-08-20-next-12-prs.md) | "Next 12 Pull Requests" product plan from rc.1 to stable 4.0.0 | Historical |
|
|
170
|
+
| [`superpowers/plans/2026-08-22-android-phy-runtime-capability.md`](superpowers/plans/2026-08-22-android-phy-runtime-capability.md) | Plan: Android `connection:phy` capability truth via protocol-v2 handshake | Historical |
|
|
171
|
+
| [`superpowers/plans/2026-08-22-pr8-write-when-ready-remediation.md`](superpowers/plans/2026-08-22-pr8-write-when-ready-remediation.md) | Plan: bound and correct the frozen `writeWhenReady` path | Historical |
|
|
172
|
+
| [`superpowers/plans/2026-08-24-lifecycle-correctness-master.md`](superpowers/plans/2026-08-24-lifecycle-correctness-master.md) | Master plan sequencing lifecycle-correctness Plans A/B/C | Historical |
|
|
173
|
+
| [`superpowers/plans/2026-08-24-pr-a-ipc-lifecycle-and-clone.md`](superpowers/plans/2026-08-24-pr-a-ipc-lifecycle-and-clone.md) | Plan A: IPC lifecycle, stream close, clone/prototype safety | Historical |
|
|
174
|
+
| [`superpowers/plans/2026-08-24-pr-b-backend-unregister.md`](superpowers/plans/2026-08-24-pr-b-backend-unregister.md) | Plan B: backend stream unregister and overflow native release | Historical |
|
|
175
|
+
| [`superpowers/plans/2026-08-24-pr-c-react-hooks.md`](superpowers/plans/2026-08-24-pr-c-react-hooks.md) | Plan C: React hooks and adapter store ownership fixes | Historical |
|
|
176
|
+
| [`superpowers/plans/2026-08-30-web-bluetooth-example.md`](superpowers/plans/2026-08-30-web-bluetooth-example.md) | Plan: TypeScript/Vite Web Bluetooth example and `docs/WEB.md` | Historical |
|
|
177
|
+
| [`superpowers/specs/2026-07-23-ios-tvos-ci-design.md`](superpowers/specs/2026-07-23-ios-tvos-ci-design.md) | Design spec: CI iOS and tvOS compile checks | Historical |
|
|
178
|
+
| [`superpowers/specs/2026-08-30-web-bluetooth-example-design.md`](superpowers/specs/2026-08-30-web-bluetooth-example-design.md) | Design spec for the Web Bluetooth TypeScript example | Historical |
|
package/docs/WEB.md
CHANGED
|
@@ -6,7 +6,7 @@ Use `unified-ble-manager/web` to run the public UBM manager directly in a browse
|
|
|
6
6
|
|
|
7
7
|
The complete runnable TypeScript/Vite application is in [`example-web/`](../example-web/).
|
|
8
8
|
|
|
9
|
-
This guide targets `4.0.
|
|
9
|
+
This guide targets `4.0.13`. Web Bluetooth support still depends on the browser, operating system, adapter, and peripheral. UBM reports those runtime boundaries; it does not fabricate a fallback backend.
|
|
10
10
|
|
|
11
11
|
## Requirements
|
|
12
12
|
|
|
@@ -6,7 +6,7 @@ This page is generated by `scripts/docs/generate-platform-support.js` from valid
|
|
|
6
6
|
|
|
7
7
|
## Current package
|
|
8
8
|
|
|
9
|
-
`unified-ble-manager@4.0.
|
|
9
|
+
`unified-ble-manager@4.0.13`
|
|
10
10
|
|
|
11
11
|
No evidence record is bound to this exact package version and artifact. Consequently, this generated page makes no Preview, Live Preview, Supported, or Reliability-qualified platform claim for the current package.
|
|
12
12
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import Foundation
|
|
4
4
|
|
|
5
5
|
public let nativeProtocolVersion: UInt32 = 2
|
|
6
|
-
public let nativeProtocolABIVersion: UInt32 =
|
|
6
|
+
public let nativeProtocolABIVersion: UInt32 = 7
|
|
7
7
|
public let nativeProtocolControlSurfaceVersion: UInt32 = 2
|
|
8
8
|
public let maximumControlRecordBytes: Int = 262144
|
|
9
9
|
public let maximumBinaryPayloadBytes: Int = 524288
|
|
@@ -119,6 +119,11 @@ public enum WriteModes: UInt16, CaseIterable, Sendable {
|
|
|
119
119
|
case withoutResponse = 2
|
|
120
120
|
}
|
|
121
121
|
|
|
122
|
+
public enum NotificationDeliveryModes: UInt16, CaseIterable, Sendable {
|
|
123
|
+
case notification = 1
|
|
124
|
+
case indication = 2
|
|
125
|
+
}
|
|
126
|
+
|
|
122
127
|
public enum ConnectionPriorities: UInt16, CaseIterable, Sendable {
|
|
123
128
|
case lowPower = 1
|
|
124
129
|
case balanced = 2
|
|
@@ -271,6 +276,7 @@ public let nativeProtocolFields: [FieldDescriptor] = [
|
|
|
271
276
|
FieldDescriptor(record: .command, fieldID: 18, name: "phyRx", type: "enum:connectionPhys", required: false),
|
|
272
277
|
FieldDescriptor(record: .command, fieldID: 19, name: "pairTransport", type: "enum:pairTransports", required: false),
|
|
273
278
|
FieldDescriptor(record: .command, fieldID: 20, name: "connectionIntent", type: "enum:connectionIntents", required: false),
|
|
279
|
+
FieldDescriptor(record: .command, fieldID: 21, name: "notificationDeliveryMode", type: "enum:notificationDeliveryModes", required: false),
|
|
274
280
|
FieldDescriptor(record: .terminal, fieldID: 1, name: "correlation", type: "record:operationCorrelation", required: true),
|
|
275
281
|
FieldDescriptor(record: .terminal, fieldID: 2, name: "outcome", type: "enum:terminalOutcomes", required: true),
|
|
276
282
|
FieldDescriptor(record: .terminal, fieldID: 3, name: "cause", type: "string", required: false),
|
|
@@ -786,7 +786,7 @@ class CoreBluetoothBackend {
|
|
|
786
786
|
});
|
|
787
787
|
return (0, _corebluetoothCleanup.withCoreBluetoothCleanupTimeout)(() => nativeCompletion, operation).catch(error => (0, _corebluetoothHandles.cleanupFailure)('connection', operation, error));
|
|
788
788
|
}
|
|
789
|
-
handleDisconnect(nativePeerId,
|
|
789
|
+
handleDisconnect(nativePeerId, _safeMessage) {
|
|
790
790
|
const record = this.connectionsByNativeId.get(nativePeerId);
|
|
791
791
|
if (record === undefined || record.state === 'disconnected' || record.state === 'lost') {
|
|
792
792
|
return;
|
|
@@ -811,9 +811,11 @@ class CoreBluetoothBackend {
|
|
|
811
811
|
ingressOrdinal: this.nextIngressOrdinal
|
|
812
812
|
});
|
|
813
813
|
this.nextIngressOrdinal += 1;
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
814
|
+
// Link loss is a normal, typed lifecycle outcome (notably for
|
|
815
|
+
// when-available sensors such as Dexcom). Consumers receive it through the
|
|
816
|
+
// canonical event and terminal streams above. Logging it as console.error
|
|
817
|
+
// made every expected sensor wake-cycle termination an application error
|
|
818
|
+
// and, in Expo development builds, a blocking LogBox.
|
|
817
819
|
}
|
|
818
820
|
handleDatabaseChanged(nativePeerId) {
|
|
819
821
|
if (this.admissionClosed || this.destroyed) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_advertisement","require","_errors","_identity","_primitives","_boundedStream","_corebluetoothOperationDispatcher","_corebluetoothOperationLifecycle","_corebluetoothIdentifiers","_corebluetoothAdvertisementObservation","_corebluetoothOperationAdmission","_corebluetoothAttachmentLifecycle","_corebluetoothHandles","_corebluetoothGattOperations","_corebluetoothConnectionControls","_corebluetoothProvider","_corebluetoothIdentity","_corebluetoothStreamLimits","_ownedBoundedStream","_corebluetoothAdapterLossCleanup","_corebluetoothCleanup","_corebluetoothLateConnectCleanup","_corebluetoothRuntimeCapabilities","_corebluetoothScanPlanner","_serviceUuidScanPlanner","nextBackendInstance","radioAddressFromNativePeerId","nativePeerId","Object","freeze","value","canonicalBleAddress","type","allocateBackendInstance","current","throwCoreBluetoothGattSnapshotMalformed","field","contractError","isCoreBluetoothGattRecord","Array","isArray","prototype","getPrototypeOf","requireCoreBluetoothGattRecord","resource","allowedFields","key","Reflect","ownKeys","includes","descriptor","getOwnPropertyDescriptor","undefined","hasOwnProperty","call","error","BackendContractError","requireCoreBluetoothGattArray","requireCoreBluetoothGattProperty","record","property","requireCoreBluetoothGattArrayLength","array","Number","isSafeInteger","requireCoreBluetoothGattArrayEntry","index","String","requireCoreBluetoothGattUuid","test","requireCoreBluetoothGattOccurrence","requireCoreBluetoothGattBoolean","assertCoreBluetoothGattIdentity","identities","uuid","occurrence","identity","has","add","coreBluetoothStreamOwnershipInspectors","WeakMap","inspectCoreBluetoothStreamOwnershipForTests","backend","inspect","get","Error","CoreBluetoothBackend","eventStreams","Set","stateStreams","peerIdsByNativeId","Map","nativeIdsByPeerId","connectionsByNativeId","subscriptions","attached","admissionClosed","destroyed","destroyResult","adapterLossCleanup","adapterLossPending","adapterLossActive","adapterLossRetryScheduled","connectionLossRetryTimers","scanGroup","nextPeer","nextScan","nextConnection","nextLease","nextDatabase","nextSubscription","nextIngressOrdinal","constructor","boundary","now","hostKind","identityOptions","coreBluetoothIdentityOptions","runtimeFeatures","createCoreBluetoothRuntimeFeatureRegistry","existingFeatures","features","implementationVersion","resolveNativePeerId","connectionId","connectionGeneration","operation","nativePeerIdForRuntimeCapability","backendInstanceId","opaqueId","backendInstancePrefix","attachmentScope","dispatcher","CoreBluetoothOperationDispatcher","operationLifecycle","CoreBluetoothOperationLifecycle","attachmentLifecycle","CoreBluetoothAttachmentLifecycle","adapterSnapshot","gattOperations","CoreBluetoothGattOperations","connectionControls","CoreBluetoothConnectionControls","adapter","currentState","adapterState","watchState","watchAdapterState","scanner","plan","query","diagnosticCoreBluetoothScanPlan","start","options","clientId","startScan","join","leaseId","token","joinScan","connections","connect","peerId","readRssi","connection","request","requestMtu","effectiveMtu","requestPriority","readPhy","requestPhy","maximumWriteLength","writeWithoutResponseReadiness","gatt","discover","read","path","write","readDescriptor","writeDescriptor","subscribe","unsubscribe","subscription","disconnectListener","onDisconnect","safeMessage","handleDisconnect","databaseChangedListener","onDatabaseChanged","handleDatabaseChanged","scanFailureListener","onScanFailure","handleScanFailure","adapterStateListener","onAdapterState","state","handleAdapterState","set","stateWatchers","size","refreshRuntimeFeatureRegistry","attachment","registeredBackendId","registeredPlatformId","versions","negotiateCoreVersions","coreBluetoothCompatibility","runtime","diagnostics","attach","assertUsable","coreCompatibility","events","stream","OwnedCoreBoundedStream","backendEventLimits","delete","resourceCounters","subscriptionConsumers","retainedByteBuffers","physical","values","consumers","consumer","retainedPayloadBytes","activeScanControllers","resourceCount","scanConsumers","chooserSessions","connectionLeases","filter","lease","length","physicalLinks","databaseSnapshots","database","physicalCccdEnablements","queuedOperations","dispatchedOperations","activeCount","restorationRecords","orphanedIpcOwners","destroy","destruction","destroyInternal","then","result","refreshAttachmentState","assertCoreBluetoothUsable","assertOperational","assertCoreBluetoothOperational","monotonicNow","registerReadinessWatch","close","readinessWatchClosures","diagnosticTag","scope","adapterStateLimits","initial","transitions","identifiers","createCoreBluetoothIdentifiers","_clientId","assertScanFilter","nativeFilter","trustedServiceUuidFilter","planCoreBluetoothScan","serviceUuids","deviceAddresses","failedScanGroup","cleanup","stopNativeScan","clear","platformError","assertAdmission","ordinal","scanSessionId","shareToken","sharing","allowSharing","scanShareToken","CoreBoundedStream","delivery","overflowPolicy","abort","deadlineTimer","terminalCause","group","ownerLeaseId","nativeStop","stopScanConsumer","console","failures","catch","deadline","signal","addEventListener","once","setTimeout","Math","max","advertisement","handleAdvertisement","platform","releaseScanConsumerAdmission","detail","scanStartTerminalError","aborted","CoreBluetoothScanLease","owner","isTerminal","closeWithReason","releasedCleanup","cleanupFailure","stopScan","nativeCompletion","withCoreBluetoothCleanupTimeout","domain","code","metadata","removeEventListener","clearTimeout","peerIdForNativeId","observation","createCoreBluetoothObservation","deviceIdentity","matchesScan","push","emit","advertisementByteLength","terminated","intent","connectionIntentCapabilities","whenAvailable","nativePeerIdForPeerId","existing","released","releaseLateCoreBluetoothConnection","ownerClientId","nativeDisconnect","awaitBoundaryOperation","terminalCancellation","normalized","disconnect","CoreBluetoothConnection","CoreBluetoothConnectionLease","releaseConnectionLease","connectionKey","activeFailures","activeOperationCleanupFailures","subscriptionCleanup","removeConnectionSubscriptions","nativeCleanup","disconnectNative","preservePhysicalSubscriptions","invalidateRecord","connectionPath","connectionPathFor","scheduleConnectionLossSubscriptionRetry","broadcastEvent","attachmentId","kind","ingressOrdinal","invalidate","updateAdapterState","adapterLost","availability","isAuthorizationBlocking","authorization","power","startAdapterLossCleanup","snapshot","backendGeneration","cancelAll","reportAdapterLossCleanupFailure","scheduleAdapterLossRetry","releaseAdapterLossResources","scheduleAdapterLossRetryAfterNativeSettlements","lateFailures","advanceGeneration","serializationKey","resourceKind","Promise","all","waitForIdle","pendingSettlements","map","nativeRemoval","settlement","releaseCoreBluetoothAdapterLossResources","clearScanGroup","closeConnectionReadinessWatches","markReleased","address","removed","retry","reason","stopPhysicalSubscription","requireConnection","attachmentRecordsEqual","databaseForPath","matchesPath","assertCurrent","peerIdForKnownNativeId","peerFromAddress","generation","assertGattSnapshot","snapshotRecord","services","serviceIdentities","serviceCount","serviceIndex","serviceValue","service","serviceUuid","serviceOccurrence","characteristics","characteristicIdentities","characteristicCount","characteristicIndex","characteristicValue","characteristic","characteristicUuid","characteristicOccurrence","indicatable","descriptors","descriptorIdentities","descriptorCount","descriptorIndex","descriptorValue","descriptorUuid","descriptorOccurrence","event","exports"],"sourceRoot":"../../../../src","sources":["backends/corebluetooth/corebluetooth-backend.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_advertisement","require","_errors","_identity","_primitives","_boundedStream","_corebluetoothOperationDispatcher","_corebluetoothOperationLifecycle","_corebluetoothIdentifiers","_corebluetoothAdvertisementObservation","_corebluetoothOperationAdmission","_corebluetoothAttachmentLifecycle","_corebluetoothHandles","_corebluetoothGattOperations","_corebluetoothConnectionControls","_corebluetoothProvider","_corebluetoothIdentity","_corebluetoothStreamLimits","_ownedBoundedStream","_corebluetoothAdapterLossCleanup","_corebluetoothCleanup","_corebluetoothLateConnectCleanup","_corebluetoothRuntimeCapabilities","_corebluetoothScanPlanner","_serviceUuidScanPlanner","nextBackendInstance","radioAddressFromNativePeerId","nativePeerId","Object","freeze","value","canonicalBleAddress","type","allocateBackendInstance","current","throwCoreBluetoothGattSnapshotMalformed","field","contractError","isCoreBluetoothGattRecord","Array","isArray","prototype","getPrototypeOf","requireCoreBluetoothGattRecord","resource","allowedFields","key","Reflect","ownKeys","includes","descriptor","getOwnPropertyDescriptor","undefined","hasOwnProperty","call","error","BackendContractError","requireCoreBluetoothGattArray","requireCoreBluetoothGattProperty","record","property","requireCoreBluetoothGattArrayLength","array","Number","isSafeInteger","requireCoreBluetoothGattArrayEntry","index","String","requireCoreBluetoothGattUuid","test","requireCoreBluetoothGattOccurrence","requireCoreBluetoothGattBoolean","assertCoreBluetoothGattIdentity","identities","uuid","occurrence","identity","has","add","coreBluetoothStreamOwnershipInspectors","WeakMap","inspectCoreBluetoothStreamOwnershipForTests","backend","inspect","get","Error","CoreBluetoothBackend","eventStreams","Set","stateStreams","peerIdsByNativeId","Map","nativeIdsByPeerId","connectionsByNativeId","subscriptions","attached","admissionClosed","destroyed","destroyResult","adapterLossCleanup","adapterLossPending","adapterLossActive","adapterLossRetryScheduled","connectionLossRetryTimers","scanGroup","nextPeer","nextScan","nextConnection","nextLease","nextDatabase","nextSubscription","nextIngressOrdinal","constructor","boundary","now","hostKind","identityOptions","coreBluetoothIdentityOptions","runtimeFeatures","createCoreBluetoothRuntimeFeatureRegistry","existingFeatures","features","implementationVersion","resolveNativePeerId","connectionId","connectionGeneration","operation","nativePeerIdForRuntimeCapability","backendInstanceId","opaqueId","backendInstancePrefix","attachmentScope","dispatcher","CoreBluetoothOperationDispatcher","operationLifecycle","CoreBluetoothOperationLifecycle","attachmentLifecycle","CoreBluetoothAttachmentLifecycle","adapterSnapshot","gattOperations","CoreBluetoothGattOperations","connectionControls","CoreBluetoothConnectionControls","adapter","currentState","adapterState","watchState","watchAdapterState","scanner","plan","query","diagnosticCoreBluetoothScanPlan","start","options","clientId","startScan","join","leaseId","token","joinScan","connections","connect","peerId","readRssi","connection","request","requestMtu","effectiveMtu","requestPriority","readPhy","requestPhy","maximumWriteLength","writeWithoutResponseReadiness","gatt","discover","read","path","write","readDescriptor","writeDescriptor","subscribe","unsubscribe","subscription","disconnectListener","onDisconnect","safeMessage","handleDisconnect","databaseChangedListener","onDatabaseChanged","handleDatabaseChanged","scanFailureListener","onScanFailure","handleScanFailure","adapterStateListener","onAdapterState","state","handleAdapterState","set","stateWatchers","size","refreshRuntimeFeatureRegistry","attachment","registeredBackendId","registeredPlatformId","versions","negotiateCoreVersions","coreBluetoothCompatibility","runtime","diagnostics","attach","assertUsable","coreCompatibility","events","stream","OwnedCoreBoundedStream","backendEventLimits","delete","resourceCounters","subscriptionConsumers","retainedByteBuffers","physical","values","consumers","consumer","retainedPayloadBytes","activeScanControllers","resourceCount","scanConsumers","chooserSessions","connectionLeases","filter","lease","length","physicalLinks","databaseSnapshots","database","physicalCccdEnablements","queuedOperations","dispatchedOperations","activeCount","restorationRecords","orphanedIpcOwners","destroy","destruction","destroyInternal","then","result","refreshAttachmentState","assertCoreBluetoothUsable","assertOperational","assertCoreBluetoothOperational","monotonicNow","registerReadinessWatch","close","readinessWatchClosures","diagnosticTag","scope","adapterStateLimits","initial","transitions","identifiers","createCoreBluetoothIdentifiers","_clientId","assertScanFilter","nativeFilter","trustedServiceUuidFilter","planCoreBluetoothScan","serviceUuids","deviceAddresses","failedScanGroup","cleanup","stopNativeScan","clear","platformError","assertAdmission","ordinal","scanSessionId","shareToken","sharing","allowSharing","scanShareToken","CoreBoundedStream","delivery","overflowPolicy","abort","deadlineTimer","terminalCause","group","ownerLeaseId","nativeStop","stopScanConsumer","console","failures","catch","deadline","signal","addEventListener","once","setTimeout","Math","max","advertisement","handleAdvertisement","platform","releaseScanConsumerAdmission","detail","scanStartTerminalError","aborted","CoreBluetoothScanLease","owner","isTerminal","closeWithReason","releasedCleanup","cleanupFailure","stopScan","nativeCompletion","withCoreBluetoothCleanupTimeout","domain","code","metadata","removeEventListener","clearTimeout","peerIdForNativeId","observation","createCoreBluetoothObservation","deviceIdentity","matchesScan","push","emit","advertisementByteLength","terminated","intent","connectionIntentCapabilities","whenAvailable","nativePeerIdForPeerId","existing","released","releaseLateCoreBluetoothConnection","ownerClientId","nativeDisconnect","awaitBoundaryOperation","terminalCancellation","normalized","disconnect","CoreBluetoothConnection","CoreBluetoothConnectionLease","releaseConnectionLease","connectionKey","activeFailures","activeOperationCleanupFailures","subscriptionCleanup","removeConnectionSubscriptions","nativeCleanup","disconnectNative","preservePhysicalSubscriptions","invalidateRecord","_safeMessage","connectionPath","connectionPathFor","scheduleConnectionLossSubscriptionRetry","broadcastEvent","attachmentId","kind","ingressOrdinal","invalidate","updateAdapterState","adapterLost","availability","isAuthorizationBlocking","authorization","power","startAdapterLossCleanup","snapshot","backendGeneration","cancelAll","reportAdapterLossCleanupFailure","scheduleAdapterLossRetry","releaseAdapterLossResources","scheduleAdapterLossRetryAfterNativeSettlements","lateFailures","advanceGeneration","serializationKey","resourceKind","Promise","all","waitForIdle","pendingSettlements","map","nativeRemoval","settlement","releaseCoreBluetoothAdapterLossResources","clearScanGroup","closeConnectionReadinessWatches","markReleased","address","removed","retry","reason","stopPhysicalSubscription","requireConnection","attachmentRecordsEqual","databaseForPath","matchesPath","assertCurrent","peerIdForKnownNativeId","peerFromAddress","generation","assertGattSnapshot","snapshotRecord","services","serviceIdentities","serviceCount","serviceIndex","serviceValue","service","serviceUuid","serviceOccurrence","characteristics","characteristicIdentities","characteristicCount","characteristicIndex","characteristicValue","characteristic","characteristicUuid","characteristicOccurrence","indicatable","descriptors","descriptorIdentities","descriptorCount","descriptorIndex","descriptorValue","descriptorUuid","descriptorOccurrence","event","exports"],"sourceRoot":"../../../../src","sources":["backends/corebluetooth/corebluetooth-backend.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -97,8 +97,9 @@ class CoreBluetoothGattOperations {
|
|
|
97
97
|
this.backend.assertOperational('direct-gatt.gatt.subscribe');
|
|
98
98
|
const database = this.backend.databaseForPath(path, 'direct-gatt.gatt.subscribe');
|
|
99
99
|
const address = database.addressFor(path, 'direct-gatt.gatt.subscribe');
|
|
100
|
+
const mode = database.notificationDeliveryModeFor(path, 'direct-gatt.gatt.subscribe', request.options.deliveryMode);
|
|
100
101
|
return this.backend.dispatcher.dispatch(request.operation, 'direct-gatt.gatt.subscribe', async execution => {
|
|
101
|
-
const key = (0, _corebluetoothHandles.addressKey)(address)
|
|
102
|
+
const key = `${(0, _corebluetoothHandles.addressKey)(address)}|${mode}`;
|
|
102
103
|
let physical = this.backend.subscriptions.get(key);
|
|
103
104
|
if (physical?.state === 'removing') {
|
|
104
105
|
if (physical.removal === null) {
|
|
@@ -124,6 +125,7 @@ class CoreBluetoothGattOperations {
|
|
|
124
125
|
physical = {
|
|
125
126
|
key,
|
|
126
127
|
address,
|
|
128
|
+
mode,
|
|
127
129
|
consumers: new Set(),
|
|
128
130
|
state: 'enabling',
|
|
129
131
|
nativeStart: null,
|
|
@@ -137,7 +139,8 @@ class CoreBluetoothGattOperations {
|
|
|
137
139
|
enabling.consumers.add(subscription);
|
|
138
140
|
let nativeStart = null;
|
|
139
141
|
try {
|
|
140
|
-
|
|
142
|
+
const onValue = bytes => this.emitNotification(enabling, bytes);
|
|
143
|
+
nativeStart = this.backend.boundary.startNotifyWithMode === undefined ? this.backend.boundary.startNotify(address, onValue) : this.backend.boundary.startNotifyWithMode(address, enabling.mode, onValue);
|
|
141
144
|
enabling.nativeStart = nativeStart;
|
|
142
145
|
await nativeStart;
|
|
143
146
|
if (enabling.nativeStart === nativeStart) {
|