@robono/messaging-react-native 0.11.1 → 0.13.0
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 +10 -0
- package/README.md +66 -7
- package/SBOM.spdx.json +242 -98
- package/dist/account.d.ts +1 -0
- package/dist/account.js +1 -1
- package/dist/expo-media.js +18 -4
- package/dist/expo-messenger.d.ts +5 -0
- package/dist/expo-messenger.js +3 -3
- package/dist/expo-screen.d.ts +10 -2
- package/dist/expo-screen.js +15 -7
- package/dist/expo-thumbnails.d.ts +0 -1
- package/dist/expo-thumbnails.js +17 -26
- package/dist/expo.d.ts +2 -0
- package/dist/expo.js +2 -0
- package/dist/group-editor.d.ts +1 -0
- package/dist/group-editor.js +1 -1
- package/dist/inbox.d.ts +1 -0
- package/dist/inbox.js +2 -2
- package/dist/index.d.ts +11 -1
- package/dist/index.js +15 -12
- package/dist/media-controller.d.ts +9 -2
- package/dist/media-controller.js +15 -10
- package/dist/media-screening.js +9 -3
- package/dist/preview-cache.d.ts +24 -0
- package/dist/preview-cache.js +59 -0
- package/dist/recording-permission.d.ts +12 -0
- package/dist/recording-permission.js +34 -0
- package/dist/sign-in.d.ts +76 -0
- package/dist/sign-in.js +46 -0
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
## 0.12.0 — unpublished candidate
|
|
2
|
+
|
|
3
|
+
## 0.13.0
|
|
4
|
+
|
|
5
|
+
- Share the Messenger sign-in, country/phone controls and loading/recovery screen with website integrations.
|
|
6
|
+
- Require the messaging core update for direct hosted routing and clearer connection errors.
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
Keep Android recording alive through microphone permission dialogs; process two bounded thumbnails concurrently with permission-safe reuse. Add authenticated host downloads and host-controlled links/addresses. Keep Expo 55 audio handling compatible. Add self-chat and consumer integration hooks, stable forwarded-message delivery states and group-invitation eligibility.
|
|
10
|
+
|
|
1
11
|
## 0.10.0 — release candidate
|
|
2
12
|
|
|
3
13
|
## 0.11.1
|
package/README.md
CHANGED
|
@@ -168,7 +168,21 @@ Install native dependencies with your Expo project's installer so their versions
|
|
|
168
168
|
npx expo install expo-audio expo-image-picker expo-document-picker expo-file-system expo-sharing expo-video expo-crypto react-native-safe-area-context react-native-svg
|
|
169
169
|
```
|
|
170
170
|
|
|
171
|
-
This entry targets Expo SDK 55–56; the core components do not require Expo.
|
|
171
|
+
This entry targets Expo SDK 55–56; the core components do not require Expo.
|
|
172
|
+
|
|
173
|
+
| Project | Supplied integration |
|
|
174
|
+
| --- | --- |
|
|
175
|
+
| Expo 55 or 56 | Use the `/expo` entry and `npx expo install` for matching native packages. |
|
|
176
|
+
| Expo 54 or earlier | The supplied Expo adapter is not supported. Upgrade Expo before running setup; do not force incompatible peer dependencies. |
|
|
177
|
+
| React Native without Expo | Use the core UI and documented device/storage adapters. The Expo version range does not apply to these components. |
|
|
178
|
+
|
|
179
|
+
The installer checks the Expo version before changing files. Pin the Robono version
|
|
180
|
+
in your lockfile and update through the setup command so required native changes
|
|
181
|
+
are reported. Optional calling and background movement require a rebuilt native
|
|
182
|
+
app; Expo Go does not include those modules. A successful package installation is
|
|
183
|
+
not a guarantee that unsupported Expo versions will work.
|
|
184
|
+
|
|
185
|
+
Configure the `expo-audio` plugin's `microphonePermission` with your app's explanation (for example, “Allow microphone access to record voice messages”). Keep background recording disabled. Native dependency or permission changes need a new development/store build; screen changes do not. The standard system photo picker does not require full photo-library access. Documents use the platform's file picker, without broad storage access.
|
|
172
186
|
|
|
173
187
|
```tsx
|
|
174
188
|
import {
|
|
@@ -310,10 +324,7 @@ in `media.waveform`. The playback track remains seekable when the waveform is
|
|
|
310
324
|
hidden. Managed storage computes waveform data independently of this preference.
|
|
311
325
|
|
|
312
326
|
Groups offer polls; direct chats offer a recipient-only Yes/No question whose
|
|
313
|
-
first answer is final. Both use the same app-height popup frame as tracking and social previews.
|
|
314
|
-
`20261101017400_messaging_captions_questions.sql` and the updated messaging handler
|
|
315
|
-
before releasing these SDK changes. Deploy the updated media inspector before the
|
|
316
|
-
updated managed-media handler. These source changes have not been published.
|
|
327
|
+
first answer is final. Both use the same app-height popup frame as tracking and social previews. The hosted service supplies the required message and media support.
|
|
317
328
|
|
|
318
329
|
### Optional downloads in the viewer
|
|
319
330
|
|
|
@@ -419,8 +430,9 @@ sender. Times are stored in UTC and displayed in the device's current time zone.
|
|
|
419
430
|
Scheduling uploads selected attachments before confirming the queue; closing the
|
|
420
431
|
app does not prevent server delivery afterward. The selected time is approximate
|
|
421
432
|
to the minute. Current access, screening and spending rules still apply at send
|
|
422
|
-
time.
|
|
423
|
-
|
|
433
|
+
time. Stop a voice recording to stage it, then hold Send to schedule it just like
|
|
434
|
+
a photo, video or file. Poll creation sends immediately; custom composers can
|
|
435
|
+
schedule finalized content through the same API.
|
|
424
436
|
|
|
425
437
|
### Screen sharing in the complete messenger
|
|
426
438
|
|
|
@@ -457,3 +469,50 @@ Robono hosts optional call recording and transcription. Enable recording once in
|
|
|
457
469
|
The supplied adapters also offer camera/microphone/speaker checks and camera background blur. Screen sharing is separate. Phone blur requires rebuilding the native app; browser blur downloads its model only when selected and needs the documented content-security policy. Background processing stays on the device.
|
|
458
470
|
|
|
459
471
|
See the [recording and call tools guide](https://robono.com/guides/call-recording.html) for prices, retention, short-lived downloads, deletion, platform requirements and label customization. Captions arrive in short batches with several seconds of delay and can be inaccurate; incomplete transcripts are marked.
|
|
472
|
+
|
|
473
|
+
### Customer-controlled links, downloads and account actions
|
|
474
|
+
|
|
475
|
+
`linkHandling` can disable URLs/addresses independently or route their taps through
|
|
476
|
+
`openUrl(url, message)` / `openAddress(address, message)`. A disabled link renders
|
|
477
|
+
as ordinary text. Host overrides also suppress social/tracking shortcuts that
|
|
478
|
+
would otherwise bypass the host's navigation policy.
|
|
479
|
+
|
|
480
|
+
`onDownloadAttachment({file,message,signal})` changes the standard viewer's Download
|
|
481
|
+
action to a host-owned destination. Enable `appearance.showDownloadButton`. The
|
|
482
|
+
SDK rechecks access, supplies a private temporary file, and cleans it up afterward;
|
|
483
|
+
copy it to your destination before resolving the callback. Do not retain its URI
|
|
484
|
+
as a permanent saved file. Cancellation and permission changes still apply.
|
|
485
|
+
|
|
486
|
+
`ExpoMessenger` offers `onNewConversation` and `inboxOverlay` for a host-owned
|
|
487
|
+
contact picker using the exported `MessagingPopup`. Account callbacks include
|
|
488
|
+
`onEditProfile`, `onDeleteAccount`, and `onSignOut`; the host supplies its own
|
|
489
|
+
confirmation and account service. These optional callbacks do not grant service
|
|
490
|
+
permissions or delete an account by themselves.
|
|
491
|
+
|
|
492
|
+
### Shared sign-in presentation
|
|
493
|
+
|
|
494
|
+
`MessagingSignIn`, `MessagingPhoneInput` and `MessagingChoicePicker` are optional
|
|
495
|
+
shared UI components, also exported by `@robono/messaging-web`. Robono's new
|
|
496
|
+
consumer app uses these same components. The card, code cells, consent row,
|
|
497
|
+
buttons and field proportions follow the existing Messenger.
|
|
498
|
+
|
|
499
|
+
Continue using your existing login when embedding Messenger. These components
|
|
500
|
+
add **no second account, SMS provider, credential storage or authentication
|
|
501
|
+
service**. Your host controls `stage`, field values, validation, busy/error state,
|
|
502
|
+
verification expiry and `onSubmit`. Supply your own company logo/name through
|
|
503
|
+
`logo` or `appearance`, your colors through `appearance.colors`, consent copy and
|
|
504
|
+
policy links through `consent`, and translated text through `labels`.
|
|
505
|
+
|
|
506
|
+
Render your `MessagingPhoneInput` and its `MessagingChoicePicker` together inside
|
|
507
|
+
`MessagingSignIn.phoneField`; profile choices belong in `profileFields`. This
|
|
508
|
+
keeps website pickers inside the sign-in container. The host supplies supported
|
|
509
|
+
countries and validates/normalizes numbers with its own authentication provider.
|
|
510
|
+
Use `secondsRemaining` only with an expiry returned by that provider. An expired
|
|
511
|
+
code changes the submit action to “Send a new code”; the host performs that action.
|
|
512
|
+
Never include private integration keys in these props.
|
|
513
|
+
|
|
514
|
+
`MessagingConnectionState` is the shared waiting/recovery screen used by customer
|
|
515
|
+
starters and Robono Messenger. Pass `error`, `onRetry`, optional `onSignOut`,
|
|
516
|
+
`appearance`, and translated `labels`. Account actions appear only on failure,
|
|
517
|
+
never during normal connection startup. The hosted connection selects Robono's
|
|
518
|
+
approved direct transport automatically; no extra phone setup is required.
|