Created spec for SegmentFetcher native module

Summary: [General] [Added] - Simply adding spec for better enforcement of types.

Reviewed By: cpojer

Differential Revision: D14177690

fbshipit-source-id: ab4c112d1bd65fef7e37b4c1d6c44055f5576936
This commit is contained in:
Kevin Gozali
2019-02-21 20:03:10 -08:00
committed by Facebook Github Bot
parent e758435167
commit 8b7a0c2a9b
2 changed files with 24 additions and 8 deletions

View File

@@ -0,0 +1,23 @@
/**
* 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 strict-local
* @format
*/
'use strict';
import type {TurboModule} from 'RCTExport';
import * as TurboModuleRegistry from 'TurboModuleRegistry';
export interface Spec extends TurboModule {
+fetchSegment: (
segmentId: number,
options: Object, // flowlint-line unclear-type: off
callback: (error: ?Object) => void, // flowlint-line unclear-type: off
) => void;
}
export default TurboModuleRegistry.getEnforcing<Spec>('SegmentFetcher');

View File

@@ -18,14 +18,7 @@ global.__fetchSegment = function(
options: {|+otaBuildNumber: ?string|},
callback: (?Error) => void,
) {
const {SegmentFetcher} = require('NativeModules');
if (!SegmentFetcher) {
throw new Error(
'SegmentFetcher is missing. Please ensure that it is ' +
'included as a NativeModule.',
);
}
const SegmentFetcher = require('NativeSegmentFetcher').default;
SegmentFetcher.fetchSegment(
segmentId,
options,