UNPKG

js-uploader

Version:
33 lines 1.56 kB
import { from, of } from 'rxjs'; import { map } from 'rxjs/operators'; import { OSSProvider } from '../../interface'; import { AwsS3TaskHandler } from './AwsS3TaskHandler'; import { CommonsTaskHandler } from './CommonsTaskHandler'; import { QiniuOSSTaskHandler } from './QiniuOSSTaskHandler'; import { QiniuOSSTaskHandler_v2 } from './QiniuOSSTaskHandler_v2'; function toObserverble(input) { return input && input instanceof Promise ? from(input) : of(input); } export function handle(task, uploaderOptions) { var ossOptions = uploaderOptions.ossOptions; return toObserverble(ossOptions === null || ossOptions === void 0 ? void 0 : ossOptions.enable(task)).pipe(map(function (enable) { if (enable) { switch (ossOptions === null || ossOptions === void 0 ? void 0 : ossOptions.provider) { case OSSProvider.Qiniu: return new QiniuOSSTaskHandler(task, uploaderOptions); case OSSProvider.Qiniu_v2: return new QiniuOSSTaskHandler_v2(task, uploaderOptions); case OSSProvider.S3: return new AwsS3TaskHandler(task, uploaderOptions); default: throw new Error("unkown OSSProvider:" + (ossOptions === null || ossOptions === void 0 ? void 0 : ossOptions.provider)); } } else { return new CommonsTaskHandler(task, uploaderOptions); } })); } export * from './CommonsTaskHandler'; export * from './TaskHandler'; //# sourceMappingURL=index.js.map