expo-callkit-telecom 0.2.3 → 0.2.4
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 +12 -0
- package/README.md +18 -1
- package/package.json +11 -4
- package/typedoc.json +19 -0
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,17 @@ All notable changes to `expo-callkit-telecom` are documented here.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.2.4] — 2026-05-16
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- Documentation site at https://mfairley.github.io/expo-callkit-telecom/ — VitePress with auto-generated typedoc API reference, deployed via a GitHub Actions workflow on push to `main`.
|
|
12
|
+
- "Verified against" matrix in the README and docs site, listing the iOS / Android / Expo SDK / React Native / New Architecture / media-transport versions exercised end-to-end on real devices in each release.
|
|
13
|
+
- `docs:dev` / `docs:build` / `docs:preview` / `docs:api` scripts.
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
- Reframed the `react-native-callkeep` comparison around architectural choices (Jetpack `androidx.core:core-telecom`, Swift + Kotlin, Expo Modules API, `RTCAudioSession` manual-audio coordination, native VoIP push parsing) — framing tied to platform recommendations rather than to any other library's release cadence.
|
|
17
|
+
- `docs/` and `marketing/` excluded from the npm tarball.
|
|
18
|
+
|
|
8
19
|
## [0.2.3] — 2026-05-16
|
|
9
20
|
|
|
10
21
|
### Added
|
|
@@ -42,6 +53,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
42
53
|
- Config plugin: entitlements, background modes, microphone permission, ringtone/dialtone bundling, FCM service registration.
|
|
43
54
|
- CI: trusted publishing on Node 24 / npm 11.
|
|
44
55
|
|
|
56
|
+
[0.2.4]: https://github.com/mfairley/expo-callkit-telecom/releases/tag/v0.2.4
|
|
45
57
|
[0.2.3]: https://github.com/mfairley/expo-callkit-telecom/releases/tag/v0.2.3
|
|
46
58
|
[0.2.2]: https://github.com/mfairley/expo-callkit-telecom/releases/tag/v0.2.2
|
|
47
59
|
[0.2.1]: https://github.com/mfairley/expo-callkit-telecom/releases/tag/v0.2.1
|
package/README.md
CHANGED
|
@@ -23,6 +23,21 @@ The module is opinionated about *system integration* and unopinionated about *me
|
|
|
23
23
|
- 🗣️ **Call intents on iOS** — Recents list, Siri ("call Jane")
|
|
24
24
|
- 🧩 **Typed TypeScript API** with a single `CallSession` object that tracks state across the call lifecycle
|
|
25
25
|
|
|
26
|
+
## 🧪 Verified against
|
|
27
|
+
|
|
28
|
+
This release is exercised end-to-end on real devices via the runnable `example/` app.
|
|
29
|
+
|
|
30
|
+
| | Tested against |
|
|
31
|
+
| --- | --- |
|
|
32
|
+
| iOS | 26 (minimum 15.1) |
|
|
33
|
+
| Android | 15 (minimum API 26) |
|
|
34
|
+
| Expo SDK | 55 |
|
|
35
|
+
| React Native | 0.83 |
|
|
36
|
+
| New Architecture | Yes |
|
|
37
|
+
| Media transport | LiveKit RN SDK |
|
|
38
|
+
|
|
39
|
+
Each release updates this table — so the recency signal is the version number on npm, not a promise in prose.
|
|
40
|
+
|
|
26
41
|
## 📦 Install
|
|
27
42
|
|
|
28
43
|
```sh
|
|
@@ -196,5 +211,7 @@ This module hands the OS a CallKit/Telecom call, which keeps the *process* alive
|
|
|
196
211
|
|
|
197
212
|
## 🆚 Comparison with `react-native-callkeep`
|
|
198
213
|
|
|
199
|
-
|
|
214
|
+
[`react-native-callkeep`](https://github.com/react-native-webrtc/react-native-callkeep) is the long-standing React Native library in this space. `expo-callkit-telecom` solves the same problem but is built on the current generation of platform APIs: Jetpack `androidx.core:core-telecom` on Android, Swift + Kotlin, the Expo Modules API with a config plugin, and `RTCAudioSession` coordination for manual-audio WebRTC stacks like LiveKit. It also parses APNs VoIP and FCM data payloads natively, so the cold-start incoming-call case works without app-side glue.
|
|
215
|
+
|
|
216
|
+
Full side-by-side, compatibility matrix, and migration notes: **[docs/vs-callkeep.md](docs/vs-callkeep.md)**.
|
|
200
217
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-callkit-telecom",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4",
|
|
4
4
|
"description": "CallKit + Jetpack Core-Telecom for Expo / React Native — native call UI, VoIP push, LiveKit-friendly audio. A modern react-native-callkeep alternative.",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"types": "build/index.d.ts",
|
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
"prepublishOnly": "expo-module prepublishOnly",
|
|
15
15
|
"expo-module": "expo-module",
|
|
16
16
|
"open:ios": "xed example/client/ios",
|
|
17
|
-
"open:android": "open -a \"Android Studio\" example/client/android"
|
|
17
|
+
"open:android": "open -a \"Android Studio\" example/client/android",
|
|
18
|
+
"docs:api": "typedoc",
|
|
19
|
+
"docs:dev": "bun run docs:api && vitepress dev docs",
|
|
20
|
+
"docs:build": "bun run docs:api && vitepress build docs",
|
|
21
|
+
"docs:preview": "vitepress preview docs"
|
|
18
22
|
},
|
|
19
23
|
"keywords": [
|
|
20
24
|
"react-native",
|
|
@@ -51,10 +55,13 @@
|
|
|
51
55
|
"dependencies": {},
|
|
52
56
|
"devDependencies": {
|
|
53
57
|
"@types/react": "~19.2.14",
|
|
54
|
-
"expo-module-scripts": "^55.0.2",
|
|
55
58
|
"expo": "^55.0.24",
|
|
59
|
+
"expo-module-scripts": "^55.0.2",
|
|
56
60
|
"react": "19.2.0",
|
|
57
|
-
"react-native": "0.83.6"
|
|
61
|
+
"react-native": "0.83.6",
|
|
62
|
+
"typedoc": "^0.28.19",
|
|
63
|
+
"typedoc-plugin-markdown": "^4.11.0",
|
|
64
|
+
"vitepress": "^1.6.4"
|
|
58
65
|
},
|
|
59
66
|
"peerDependencies": {
|
|
60
67
|
"expo": "*",
|
package/typedoc.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://typedoc-plugin-markdown.org/schema.json",
|
|
3
|
+
"entryPoints": ["src/index.ts"],
|
|
4
|
+
"out": "docs/api",
|
|
5
|
+
"plugin": ["typedoc-plugin-markdown"],
|
|
6
|
+
"readme": "none",
|
|
7
|
+
"githubPages": false,
|
|
8
|
+
"skipErrorChecking": true,
|
|
9
|
+
"excludePrivate": true,
|
|
10
|
+
"excludeInternal": true,
|
|
11
|
+
"hideBreadcrumbs": true,
|
|
12
|
+
"hidePageHeader": true,
|
|
13
|
+
"useCodeBlocks": true,
|
|
14
|
+
"expandObjects": true,
|
|
15
|
+
"parametersFormat": "table",
|
|
16
|
+
"indexFormat": "table",
|
|
17
|
+
"entryFileName": "index.md",
|
|
18
|
+
"fileExtension": ".md"
|
|
19
|
+
}
|