2024-11-02 18:42:52 +01:00
|
|
|
import { registerPlugin } from '@capacitor/core';
|
2026-02-18 18:51:02 +08:00
|
|
|
import type { ProviderAttempt, ProviderId } from '../lib/media-hosting/types';
|
|
|
|
|
|
2026-03-08 16:37:34 +08:00
|
|
|
interface PickAndUploadMediaOptions {
|
2026-02-18 18:51:02 +08:00
|
|
|
providerOrder: ProviderId[];
|
|
|
|
|
}
|
|
|
|
|
|
2026-03-08 16:37:34 +08:00
|
|
|
interface PickAndUploadMediaResult {
|
2026-02-18 18:51:02 +08:00
|
|
|
url: string;
|
|
|
|
|
fileName: string;
|
|
|
|
|
provider: ProviderId;
|
|
|
|
|
attempts?: ProviderAttempt[];
|
|
|
|
|
}
|
2024-11-02 18:42:52 +01:00
|
|
|
|
2026-03-08 16:37:34 +08:00
|
|
|
interface FileUploaderPlugin {
|
2026-02-18 18:51:02 +08:00
|
|
|
pickAndUploadMedia(options?: PickAndUploadMediaOptions): Promise<PickAndUploadMediaResult>;
|
2024-11-02 18:42:52 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const FileUploader = registerPlugin<FileUploaderPlugin>('FileUploader');
|
|
|
|
|
|
|
|
|
|
export default FileUploader;
|