1 | import { UnavailabilityError } from '@unimodules/core';
|
2 |
|
3 | import Sharing from './ExpoSharing';
|
4 |
|
5 | export type SharingOptions = {
|
6 | mimeType?: string;
|
7 | UTI?: string;
|
8 | dialogTitle?: string;
|
9 | };
|
10 |
|
11 | export async function isAvailableAsync(): Promise<boolean> {
|
12 | if (Sharing) {
|
13 | if (Sharing.isAvailableAsync) {
|
14 | return await Sharing.isAvailableAsync();
|
15 | }
|
16 | return true;
|
17 | }
|
18 |
|
19 | return false;
|
20 | }
|
21 |
|
22 | export async function shareAsync(url: string, options: SharingOptions = {}): Promise<object> {
|
23 | if (!Sharing || !Sharing.shareAsync) {
|
24 | throw new UnavailabilityError('Sharing', 'shareAsync');
|
25 | }
|
26 | return await Sharing.shareAsync(url, options);
|
27 | }
|