diff --git a/Libraries/Blob/FileReader.js b/Libraries/Blob/FileReader.js index 7d8116fce9c..b9113966f1a 100644 --- a/Libraries/Blob/FileReader.js +++ b/Libraries/Blob/FileReader.js @@ -12,7 +12,7 @@ const EventTarget = require('event-target-shim'); const Blob = require('./Blob'); -const {FileReaderModule} = require('../BatchedBridge/NativeModules'); +import NativeFileReaderModule from './NativeFileReaderModule'; type ReadyState = | 0 // EMPTY @@ -87,7 +87,7 @@ class FileReader extends EventTarget(...READER_EVENTS) { readAsDataURL(blob: Blob) { this._aborted = false; - FileReaderModule.readAsDataURL(blob.data).then( + NativeFileReaderModule.readAsDataURL(blob.data).then( (text: string) => { if (this._aborted) { return; @@ -108,7 +108,7 @@ class FileReader extends EventTarget(...READER_EVENTS) { readAsText(blob: Blob, encoding: string = 'UTF-8') { this._aborted = false; - FileReaderModule.readAsText(blob.data, encoding).then( + NativeFileReaderModule.readAsText(blob.data, encoding).then( (text: string) => { if (this._aborted) { return; diff --git a/Libraries/Blob/NativeFileReaderModule.js b/Libraries/Blob/NativeFileReaderModule.js new file mode 100644 index 00000000000..b784d8c6f82 --- /dev/null +++ b/Libraries/Blob/NativeFileReaderModule.js @@ -0,0 +1,21 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + * + * @flow + * @format + */ + +'use strict'; + +import type {TurboModule} from 'RCTExport'; +import * as TurboModuleRegistry from 'TurboModuleRegistry'; + +export interface Spec extends TurboModule { + +readAsDataURL: (data: Object) => Promise; + +readAsText: (data: Object, encoding: string) => Promise; +} + +export default TurboModuleRegistry.getEnforcing('FileReaderModule');