@react-native/codegen 0.72.2 → 0.72.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/CodegenSchema.d.ts +10 -10
- package/lib/CodegenSchema.js.flow +6 -1
- package/lib/SchemaValidator.d.ts +1 -1
- package/lib/generators/RNCodegen.d.ts +98 -0
- package/lib/generators/RNCodegen.js +33 -4
- package/lib/generators/RNCodegen.js.flow +35 -4
- package/lib/generators/components/ComponentsGeneratorUtils.js +2 -0
- package/lib/generators/components/ComponentsGeneratorUtils.js.flow +2 -0
- package/lib/generators/components/CppHelpers.js +2 -0
- package/lib/generators/components/CppHelpers.js.flow +2 -0
- package/lib/generators/components/GeneratePropsH.js +2 -0
- package/lib/generators/components/GeneratePropsH.js.flow +2 -0
- package/lib/generators/components/GeneratePropsJavaDelegate.js +2 -0
- package/lib/generators/components/GeneratePropsJavaDelegate.js.flow +2 -0
- package/lib/generators/components/GeneratePropsJavaInterface.js +2 -0
- package/lib/generators/components/GeneratePropsJavaInterface.js.flow +2 -0
- package/lib/generators/components/GeneratePropsJavaPojo/PojoCollector.js.flow +3 -1
- package/lib/generators/components/GeneratePropsJavaPojo/serializePojo.js +5 -0
- package/lib/generators/components/GeneratePropsJavaPojo/serializePojo.js.flow +6 -0
- package/lib/generators/components/GenerateViewConfigJs.js +1 -0
- package/lib/generators/components/GenerateViewConfigJs.js.flow +1 -0
- package/lib/generators/components/JavaHelpers.js +7 -0
- package/lib/generators/components/JavaHelpers.js.flow +8 -0
- package/lib/generators/components/__test_fixtures__/fixtures.js +29 -0
- package/lib/generators/components/__test_fixtures__/fixtures.js.flow +30 -0
- package/lib/parsers/error-utils.js +50 -15
- package/lib/parsers/error-utils.js.flow +57 -15
- package/lib/parsers/flow/components/__test_fixtures__/fixtures.js +5 -1
- package/lib/parsers/flow/components/__test_fixtures__/fixtures.js.flow +5 -1
- package/lib/parsers/flow/components/componentsUtils.js +4 -0
- package/lib/parsers/flow/components/componentsUtils.js.flow +4 -0
- package/lib/parsers/flow/components/index.js +27 -126
- package/lib/parsers/flow/components/index.js.flow +22 -52
- package/lib/parsers/flow/modules/__test_fixtures__/fixtures.js +4 -4
- package/lib/parsers/flow/modules/__test_fixtures__/fixtures.js.flow +4 -4
- package/lib/parsers/flow/modules/index.js +41 -317
- package/lib/parsers/flow/modules/index.js.flow +19 -247
- package/lib/parsers/flow/parser.js +119 -12
- package/lib/parsers/flow/parser.js.flow +124 -3
- package/lib/parsers/flow/utils.js +0 -38
- package/lib/parsers/flow/utils.js.flow +0 -38
- package/lib/parsers/parser.d.ts +2 -2
- package/lib/parsers/parser.js.flow +84 -0
- package/lib/parsers/parserMock.js +58 -0
- package/lib/parsers/parserMock.js.flow +72 -0
- package/lib/parsers/parsers-commons.js +362 -5
- package/lib/parsers/parsers-commons.js.flow +351 -8
- package/lib/parsers/parsers-primitives.js +119 -3
- package/lib/parsers/parsers-primitives.js.flow +128 -3
- package/lib/parsers/schema/index.d.ts +1 -1
- package/lib/parsers/{typescript/components/schema.js.flow → schema.js.flow} +1 -1
- package/lib/parsers/typescript/components/__test_fixtures__/fixtures.js +5 -1
- package/lib/parsers/typescript/components/__test_fixtures__/fixtures.js.flow +5 -1
- package/lib/parsers/typescript/components/componentsUtils.js +8 -0
- package/lib/parsers/typescript/components/componentsUtils.js.flow +8 -0
- package/lib/parsers/typescript/components/index.js +28 -127
- package/lib/parsers/typescript/components/index.js.flow +24 -54
- package/lib/parsers/typescript/modules/index.js +103 -434
- package/lib/parsers/typescript/modules/index.js.flow +85 -299
- package/lib/parsers/typescript/parser.js +113 -12
- package/lib/parsers/typescript/parser.js.flow +115 -3
- package/lib/parsers/typescript/utils.js +0 -31
- package/lib/parsers/typescript/utils.js.flow +0 -31
- package/lib/parsers/utils.js +4 -0
- package/lib/parsers/utils.js.flow +3 -0
- package/package.json +1 -1
- package/lib/parsers/flow/Visitor.js +0 -37
- package/lib/parsers/flow/Visitor.js.flow +0 -41
- package/lib/parsers/flow/components/options.js +0 -72
- package/lib/parsers/flow/components/options.js.flow +0 -87
- package/lib/parsers/flow/components/schema.js +0 -106
- package/lib/parsers/flow/components/schema.js.flow +0 -62
- package/lib/parsers/typescript/Visitor.js +0 -42
- package/lib/parsers/typescript/Visitor.js.flow +0 -47
- package/lib/parsers/typescript/components/options.js +0 -72
- package/lib/parsers/typescript/components/options.js.flow +0 -87
- /package/lib/parsers/{typescript/components/schema.js → schema.js} +0 -0
|
@@ -10,68 +10,6 @@
|
|
|
10
10
|
|
|
11
11
|
'use strict';
|
|
12
12
|
|
|
13
|
-
function ownKeys(object, enumerableOnly) {
|
|
14
|
-
var keys = Object.keys(object);
|
|
15
|
-
if (Object.getOwnPropertySymbols) {
|
|
16
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
17
|
-
enumerableOnly &&
|
|
18
|
-
(symbols = symbols.filter(function (sym) {
|
|
19
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
20
|
-
})),
|
|
21
|
-
keys.push.apply(keys, symbols);
|
|
22
|
-
}
|
|
23
|
-
return keys;
|
|
24
|
-
}
|
|
25
|
-
function _objectSpread(target) {
|
|
26
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
27
|
-
var source = null != arguments[i] ? arguments[i] : {};
|
|
28
|
-
i % 2
|
|
29
|
-
? ownKeys(Object(source), !0).forEach(function (key) {
|
|
30
|
-
_defineProperty(target, key, source[key]);
|
|
31
|
-
})
|
|
32
|
-
: Object.getOwnPropertyDescriptors
|
|
33
|
-
? Object.defineProperties(
|
|
34
|
-
target,
|
|
35
|
-
Object.getOwnPropertyDescriptors(source),
|
|
36
|
-
)
|
|
37
|
-
: ownKeys(Object(source)).forEach(function (key) {
|
|
38
|
-
Object.defineProperty(
|
|
39
|
-
target,
|
|
40
|
-
key,
|
|
41
|
-
Object.getOwnPropertyDescriptor(source, key),
|
|
42
|
-
);
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
return target;
|
|
46
|
-
}
|
|
47
|
-
function _defineProperty(obj, key, value) {
|
|
48
|
-
key = _toPropertyKey(key);
|
|
49
|
-
if (key in obj) {
|
|
50
|
-
Object.defineProperty(obj, key, {
|
|
51
|
-
value: value,
|
|
52
|
-
enumerable: true,
|
|
53
|
-
configurable: true,
|
|
54
|
-
writable: true,
|
|
55
|
-
});
|
|
56
|
-
} else {
|
|
57
|
-
obj[key] = value;
|
|
58
|
-
}
|
|
59
|
-
return obj;
|
|
60
|
-
}
|
|
61
|
-
function _toPropertyKey(arg) {
|
|
62
|
-
var key = _toPrimitive(arg, 'string');
|
|
63
|
-
return typeof key === 'symbol' ? key : String(key);
|
|
64
|
-
}
|
|
65
|
-
function _toPrimitive(input, hint) {
|
|
66
|
-
if (typeof input !== 'object' || input === null) return input;
|
|
67
|
-
var prim = input[Symbol.toPrimitive];
|
|
68
|
-
if (prim !== undefined) {
|
|
69
|
-
var res = prim.call(input, hint || 'default');
|
|
70
|
-
if (typeof res !== 'object') return res;
|
|
71
|
-
throw new TypeError('@@toPrimitive must return a primitive value.');
|
|
72
|
-
}
|
|
73
|
-
return (hint === 'string' ? String : Number)(input);
|
|
74
|
-
}
|
|
75
13
|
function _slicedToArray(arr, i) {
|
|
76
14
|
return (
|
|
77
15
|
_arrayWithHoles(arr) ||
|
|
@@ -140,60 +78,33 @@ function _iterableToArrayLimit(arr, i) {
|
|
|
140
78
|
function _arrayWithHoles(arr) {
|
|
141
79
|
if (Array.isArray(arr)) return arr;
|
|
142
80
|
}
|
|
143
|
-
const _require = require('
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
resolveTypeAnnotation = _require2.resolveTypeAnnotation,
|
|
149
|
-
getTypes = _require2.getTypes;
|
|
150
|
-
const _require3 = require('../../parsers-commons'),
|
|
151
|
-
unwrapNullable = _require3.unwrapNullable,
|
|
152
|
-
wrapNullable = _require3.wrapNullable,
|
|
81
|
+
const _require = require('../utils'),
|
|
82
|
+
resolveTypeAnnotation = _require.resolveTypeAnnotation;
|
|
83
|
+
const _require2 = require('../../parsers-commons'),
|
|
84
|
+
unwrapNullable = _require2.unwrapNullable,
|
|
85
|
+
wrapNullable = _require2.wrapNullable,
|
|
153
86
|
assertGenericTypeAnnotationHasExactlyOneTypeParameter =
|
|
154
|
-
|
|
155
|
-
parseObjectProperty =
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
emitMixed = _require4.emitMixed,
|
|
173
|
-
emitUnion = _require4.emitUnion,
|
|
174
|
-
typeAliasResolution = _require4.typeAliasResolution,
|
|
175
|
-
typeEnumResolution = _require4.typeEnumResolution;
|
|
176
|
-
const _require5 = require('../../errors'),
|
|
87
|
+
_require2.assertGenericTypeAnnotationHasExactlyOneTypeParameter,
|
|
88
|
+
parseObjectProperty = _require2.parseObjectProperty;
|
|
89
|
+
const _require3 = require('../../parsers-primitives'),
|
|
90
|
+
emitArrayType = _require3.emitArrayType,
|
|
91
|
+
emitBoolean = _require3.emitBoolean,
|
|
92
|
+
emitFunction = _require3.emitFunction,
|
|
93
|
+
emitNumber = _require3.emitNumber,
|
|
94
|
+
emitGenericObject = _require3.emitGenericObject,
|
|
95
|
+
emitPromise = _require3.emitPromise,
|
|
96
|
+
emitRootTag = _require3.emitRootTag,
|
|
97
|
+
emitVoid = _require3.emitVoid,
|
|
98
|
+
emitString = _require3.emitString,
|
|
99
|
+
emitMixed = _require3.emitMixed,
|
|
100
|
+
emitUnion = _require3.emitUnion,
|
|
101
|
+
emitCommonTypes = _require3.emitCommonTypes,
|
|
102
|
+
typeAliasResolution = _require3.typeAliasResolution,
|
|
103
|
+
typeEnumResolution = _require3.typeEnumResolution;
|
|
104
|
+
const _require4 = require('../../errors'),
|
|
177
105
|
UnsupportedTypeAnnotationParserError =
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
_require5.IncorrectModuleRegistryCallArgumentTypeParserError,
|
|
181
|
-
UnsupportedGenericParserError = _require5.UnsupportedGenericParserError;
|
|
182
|
-
const _require6 = require('../../error-utils'),
|
|
183
|
-
throwIfModuleInterfaceNotFound = _require6.throwIfModuleInterfaceNotFound,
|
|
184
|
-
throwIfModuleInterfaceIsMisnamed = _require6.throwIfModuleInterfaceIsMisnamed,
|
|
185
|
-
throwIfUnusedModuleInterfaceParserError =
|
|
186
|
-
_require6.throwIfUnusedModuleInterfaceParserError,
|
|
187
|
-
throwIfWrongNumberOfCallExpressionArgs =
|
|
188
|
-
_require6.throwIfWrongNumberOfCallExpressionArgs,
|
|
189
|
-
throwIfMoreThanOneModuleRegistryCalls =
|
|
190
|
-
_require6.throwIfMoreThanOneModuleRegistryCalls,
|
|
191
|
-
throwIfIncorrectModuleRegistryCallTypeParameterParserError =
|
|
192
|
-
_require6.throwIfIncorrectModuleRegistryCallTypeParameterParserError,
|
|
193
|
-
throwIfUntypedModule = _require6.throwIfUntypedModule,
|
|
194
|
-
throwIfMoreThanOneModuleInterfaceParserError =
|
|
195
|
-
_require6.throwIfMoreThanOneModuleInterfaceParserError;
|
|
196
|
-
const language = 'Flow';
|
|
106
|
+
_require4.UnsupportedTypeAnnotationParserError,
|
|
107
|
+
UnsupportedGenericParserError = _require4.UnsupportedGenericParserError;
|
|
197
108
|
function translateTypeAnnotation(
|
|
198
109
|
hasteModuleName,
|
|
199
110
|
/**
|
|
@@ -271,59 +182,26 @@ function translateTypeAnnotation(
|
|
|
271
182
|
isParamNullable = _unwrapNullable2[1];
|
|
272
183
|
return wrapNullable(nullable || isParamNullable, paramType);
|
|
273
184
|
}
|
|
274
|
-
case 'Stringish': {
|
|
275
|
-
return emitStringish(nullable);
|
|
276
|
-
}
|
|
277
|
-
case 'Int32': {
|
|
278
|
-
return emitInt32(nullable);
|
|
279
|
-
}
|
|
280
|
-
case 'Double': {
|
|
281
|
-
return emitDouble(nullable);
|
|
282
|
-
}
|
|
283
|
-
case 'Float': {
|
|
284
|
-
return emitFloat(nullable);
|
|
285
|
-
}
|
|
286
|
-
case 'UnsafeObject':
|
|
287
|
-
case 'Object': {
|
|
288
|
-
return emitGenericObject(nullable);
|
|
289
|
-
}
|
|
290
|
-
case '$Partial': {
|
|
291
|
-
if (typeAnnotation.typeParameters.params.length !== 1) {
|
|
292
|
-
throw new Error(
|
|
293
|
-
'Partials only support annotating exactly one parameter.',
|
|
294
|
-
);
|
|
295
|
-
}
|
|
296
|
-
const annotatedElement =
|
|
297
|
-
types[typeAnnotation.typeParameters.params[0].id.name];
|
|
298
|
-
if (!annotatedElement) {
|
|
299
|
-
throw new Error(
|
|
300
|
-
'Partials only support annotating a type parameter.',
|
|
301
|
-
);
|
|
302
|
-
}
|
|
303
|
-
const properties = annotatedElement.right.properties.map(prop => {
|
|
304
|
-
return {
|
|
305
|
-
name: prop.key.name,
|
|
306
|
-
optional: true,
|
|
307
|
-
typeAnnotation: translateTypeAnnotation(
|
|
308
|
-
hasteModuleName,
|
|
309
|
-
prop.value,
|
|
310
|
-
types,
|
|
311
|
-
aliasMap,
|
|
312
|
-
enumMap,
|
|
313
|
-
tryParse,
|
|
314
|
-
cxxOnly,
|
|
315
|
-
parser,
|
|
316
|
-
),
|
|
317
|
-
};
|
|
318
|
-
});
|
|
319
|
-
return emitObject(nullable, properties);
|
|
320
|
-
}
|
|
321
185
|
default: {
|
|
322
|
-
|
|
186
|
+
const commonType = emitCommonTypes(
|
|
323
187
|
hasteModuleName,
|
|
188
|
+
types,
|
|
324
189
|
typeAnnotation,
|
|
190
|
+
aliasMap,
|
|
191
|
+
enumMap,
|
|
192
|
+
tryParse,
|
|
193
|
+
cxxOnly,
|
|
194
|
+
nullable,
|
|
325
195
|
parser,
|
|
326
196
|
);
|
|
197
|
+
if (!commonType) {
|
|
198
|
+
throw new UnsupportedGenericParserError(
|
|
199
|
+
hasteModuleName,
|
|
200
|
+
typeAnnotation,
|
|
201
|
+
parser,
|
|
202
|
+
);
|
|
203
|
+
}
|
|
204
|
+
return commonType;
|
|
327
205
|
}
|
|
328
206
|
}
|
|
329
207
|
}
|
|
@@ -430,7 +308,6 @@ function translateTypeAnnotation(
|
|
|
430
308
|
typeResolutionStatus,
|
|
431
309
|
nullable,
|
|
432
310
|
hasteModuleName,
|
|
433
|
-
language,
|
|
434
311
|
enumMap,
|
|
435
312
|
parser,
|
|
436
313
|
);
|
|
@@ -439,164 +316,11 @@ function translateTypeAnnotation(
|
|
|
439
316
|
throw new UnsupportedTypeAnnotationParserError(
|
|
440
317
|
hasteModuleName,
|
|
441
318
|
typeAnnotation,
|
|
442
|
-
language,
|
|
319
|
+
parser.language(),
|
|
443
320
|
);
|
|
444
321
|
}
|
|
445
322
|
}
|
|
446
323
|
}
|
|
447
|
-
function isModuleInterface(node) {
|
|
448
|
-
return (
|
|
449
|
-
node.type === 'InterfaceDeclaration' &&
|
|
450
|
-
node.extends.length === 1 &&
|
|
451
|
-
node.extends[0].type === 'InterfaceExtends' &&
|
|
452
|
-
node.extends[0].id.name === 'TurboModule'
|
|
453
|
-
);
|
|
454
|
-
}
|
|
455
|
-
function buildModuleSchema(
|
|
456
|
-
hasteModuleName,
|
|
457
|
-
/**
|
|
458
|
-
* TODO(T71778680): Flow-type this node.
|
|
459
|
-
*/
|
|
460
|
-
ast,
|
|
461
|
-
tryParse,
|
|
462
|
-
parser,
|
|
463
|
-
) {
|
|
464
|
-
const types = getTypes(ast);
|
|
465
|
-
const moduleSpecs = Object.values(types).filter(isModuleInterface);
|
|
466
|
-
throwIfModuleInterfaceNotFound(
|
|
467
|
-
moduleSpecs.length,
|
|
468
|
-
hasteModuleName,
|
|
469
|
-
ast,
|
|
470
|
-
language,
|
|
471
|
-
);
|
|
472
|
-
throwIfMoreThanOneModuleInterfaceParserError(
|
|
473
|
-
hasteModuleName,
|
|
474
|
-
moduleSpecs,
|
|
475
|
-
language,
|
|
476
|
-
);
|
|
477
|
-
const _moduleSpecs = _slicedToArray(moduleSpecs, 1),
|
|
478
|
-
moduleSpec = _moduleSpecs[0];
|
|
479
|
-
throwIfModuleInterfaceIsMisnamed(hasteModuleName, moduleSpec.id, language);
|
|
480
|
-
|
|
481
|
-
// Parse Module Name
|
|
482
|
-
const moduleName = (() => {
|
|
483
|
-
const callExpressions = [];
|
|
484
|
-
visit(ast, {
|
|
485
|
-
CallExpression(node) {
|
|
486
|
-
if (isModuleRegistryCall(node)) {
|
|
487
|
-
callExpressions.push(node);
|
|
488
|
-
}
|
|
489
|
-
},
|
|
490
|
-
});
|
|
491
|
-
throwIfUnusedModuleInterfaceParserError(
|
|
492
|
-
hasteModuleName,
|
|
493
|
-
moduleSpec,
|
|
494
|
-
callExpressions,
|
|
495
|
-
);
|
|
496
|
-
throwIfMoreThanOneModuleRegistryCalls(
|
|
497
|
-
hasteModuleName,
|
|
498
|
-
callExpressions,
|
|
499
|
-
callExpressions.length,
|
|
500
|
-
);
|
|
501
|
-
const callExpression = callExpressions[0];
|
|
502
|
-
const typeArguments = callExpression.typeArguments;
|
|
503
|
-
const methodName = callExpression.callee.property.name;
|
|
504
|
-
throwIfWrongNumberOfCallExpressionArgs(
|
|
505
|
-
hasteModuleName,
|
|
506
|
-
callExpression,
|
|
507
|
-
methodName,
|
|
508
|
-
callExpression.arguments.length,
|
|
509
|
-
);
|
|
510
|
-
if (callExpression.arguments[0].type !== 'Literal') {
|
|
511
|
-
const type = callExpression.arguments[0].type;
|
|
512
|
-
throw new IncorrectModuleRegistryCallArgumentTypeParserError(
|
|
513
|
-
hasteModuleName,
|
|
514
|
-
callExpression.arguments[0],
|
|
515
|
-
methodName,
|
|
516
|
-
type,
|
|
517
|
-
);
|
|
518
|
-
}
|
|
519
|
-
const $moduleName = callExpression.arguments[0].value;
|
|
520
|
-
throwIfUntypedModule(
|
|
521
|
-
typeArguments,
|
|
522
|
-
hasteModuleName,
|
|
523
|
-
callExpression,
|
|
524
|
-
methodName,
|
|
525
|
-
$moduleName,
|
|
526
|
-
);
|
|
527
|
-
throwIfIncorrectModuleRegistryCallTypeParameterParserError(
|
|
528
|
-
hasteModuleName,
|
|
529
|
-
typeArguments,
|
|
530
|
-
methodName,
|
|
531
|
-
$moduleName,
|
|
532
|
-
parser,
|
|
533
|
-
);
|
|
534
|
-
return $moduleName;
|
|
535
|
-
})();
|
|
536
|
-
|
|
537
|
-
// Some module names use platform suffix to indicate platform-exclusive modules.
|
|
538
|
-
// Eventually this should be made explicit in the Flow type itself.
|
|
539
|
-
// Also check the hasteModuleName for platform suffix.
|
|
540
|
-
// Note: this shape is consistent with ComponentSchema.
|
|
541
|
-
const _verifyPlatforms = verifyPlatforms(hasteModuleName, moduleName),
|
|
542
|
-
cxxOnly = _verifyPlatforms.cxxOnly,
|
|
543
|
-
excludedPlatforms = _verifyPlatforms.excludedPlatforms;
|
|
544
|
-
|
|
545
|
-
// $FlowFixMe[missing-type-arg]
|
|
546
|
-
return moduleSpec.body.properties
|
|
547
|
-
.filter(property => property.type === 'ObjectTypeProperty')
|
|
548
|
-
.map(property => {
|
|
549
|
-
const aliasMap = {};
|
|
550
|
-
const enumMap = {};
|
|
551
|
-
return tryParse(() => ({
|
|
552
|
-
aliasMap: aliasMap,
|
|
553
|
-
enumMap: enumMap,
|
|
554
|
-
propertyShape: buildPropertySchema(
|
|
555
|
-
hasteModuleName,
|
|
556
|
-
property,
|
|
557
|
-
types,
|
|
558
|
-
aliasMap,
|
|
559
|
-
enumMap,
|
|
560
|
-
tryParse,
|
|
561
|
-
cxxOnly,
|
|
562
|
-
resolveTypeAnnotation,
|
|
563
|
-
translateTypeAnnotation,
|
|
564
|
-
parser,
|
|
565
|
-
),
|
|
566
|
-
}));
|
|
567
|
-
})
|
|
568
|
-
.filter(Boolean)
|
|
569
|
-
.reduce(
|
|
570
|
-
(moduleSchema, {aliasMap, enumMap, propertyShape}) => ({
|
|
571
|
-
type: 'NativeModule',
|
|
572
|
-
aliasMap: _objectSpread(
|
|
573
|
-
_objectSpread({}, moduleSchema.aliasMap),
|
|
574
|
-
aliasMap,
|
|
575
|
-
),
|
|
576
|
-
enumMap: _objectSpread(
|
|
577
|
-
_objectSpread({}, moduleSchema.enumMap),
|
|
578
|
-
enumMap,
|
|
579
|
-
),
|
|
580
|
-
spec: {
|
|
581
|
-
properties: [...moduleSchema.spec.properties, propertyShape],
|
|
582
|
-
},
|
|
583
|
-
moduleName: moduleSchema.moduleName,
|
|
584
|
-
excludedPlatforms: moduleSchema.excludedPlatforms,
|
|
585
|
-
}),
|
|
586
|
-
{
|
|
587
|
-
type: 'NativeModule',
|
|
588
|
-
aliasMap: {},
|
|
589
|
-
enumMap: {},
|
|
590
|
-
spec: {
|
|
591
|
-
properties: [],
|
|
592
|
-
},
|
|
593
|
-
moduleName,
|
|
594
|
-
excludedPlatforms:
|
|
595
|
-
excludedPlatforms.length !== 0 ? [...excludedPlatforms] : undefined,
|
|
596
|
-
},
|
|
597
|
-
);
|
|
598
|
-
}
|
|
599
324
|
module.exports = {
|
|
600
|
-
buildModuleSchema,
|
|
601
325
|
flowTranslateTypeAnnotation: translateTypeAnnotation,
|
|
602
326
|
};
|