relay-compiler 1.3.0 → 1.5.0
Sign up to get free protection for your applications and to get access to all the features.
- package/LICENSE +16 -26
- package/bin/relay-compiler +7348 -5939
- package/index.js +3 -6
- package/lib/{FileParser.js → ASTCache.js} +17 -14
- package/lib/ASTConvert.js +84 -70
- package/lib/CodegenDirectory.js +122 -28
- package/lib/{RelayCodegenRunner.js → CodegenRunner.js} +110 -186
- package/lib/CodegenTypes.js +12 -0
- package/lib/{RelayCodegenWatcher.js → CodegenWatcher.js} +53 -43
- package/lib/DefaultHandleKey.js +2 -4
- package/lib/DotGraphQLParser.js +27 -0
- package/lib/FilterDirectivesTransform.js +11 -11
- package/lib/FindGraphQLTags.js +33 -52
- package/lib/FlattenTransform.js +197 -0
- package/lib/GraphQLCompilerContext.js +158 -0
- package/lib/GraphQLCompilerProfiler.js +271 -0
- package/lib/GraphQLCompilerPublic.js +27 -22
- package/lib/GraphQLCompilerUserError.js +26 -0
- package/lib/GraphQLConsoleReporter.js +58 -0
- package/lib/GraphQLIR.js +12 -0
- package/lib/{RelayPrinter.js → GraphQLIRPrinter.js} +42 -38
- package/lib/{RelayIRTransformer.js → GraphQLIRTransformer.js} +47 -38
- package/lib/GraphQLIRTransforms.js +6 -15
- package/lib/{RelayIRVisitor.js → GraphQLIRVisitor.js} +7 -6
- package/lib/GraphQLMultiReporter.js +50 -0
- package/lib/GraphQLParser.js +743 -0
- package/lib/GraphQLReporter.js +12 -0
- package/lib/GraphQLSchemaUtils.js +10 -36
- package/lib/GraphQLValidator.js +13 -15
- package/lib/{RelayWatchmanClient.js → GraphQLWatchmanClient.js} +15 -17
- package/lib/InlineFragmentsTransform.js +48 -0
- package/lib/PatchedBabelGenerator.js +58 -0
- package/lib/RelayApplyFragmentArgumentTransform.js +37 -18
- package/lib/RelayCodeGenerator.js +130 -60
- package/lib/RelayCompilerBin.js +80 -35
- package/lib/RelayCompilerCache.js +18 -11
- package/lib/RelayCompilerPublic.js +24 -10
- package/lib/RelayCompilerScope.js +2 -4
- package/lib/RelayConcreteNode.js +31 -14
- package/lib/RelayConnectionConstants.js +2 -4
- package/lib/RelayConnectionTransform.js +34 -38
- package/lib/RelayDefaultHandleKey.js +2 -4
- package/lib/RelayDeferrableFragmentTransform.js +464 -0
- package/lib/RelayError.js +2 -6
- package/lib/RelayFieldHandleTransform.js +15 -11
- package/lib/RelayFileWriter.js +119 -98
- package/lib/RelayFlowBabelFactories.js +113 -0
- package/lib/RelayFlowGenerator.js +180 -200
- package/lib/RelayFlowTypeTransformers.js +109 -0
- package/lib/RelayGenerateIDFieldTransform.js +131 -0
- package/lib/RelayGenerateTypeNameTransform.js +75 -0
- package/lib/RelayGraphQLEnumsGenerator.js +65 -0
- package/lib/RelayIRTransforms.js +19 -23
- package/lib/RelayInternalTypes.js +2 -5
- package/lib/RelayInternals.js +2 -5
- package/lib/RelayJSModuleParser.js +64 -0
- package/lib/RelayMaskTransform.js +129 -0
- package/lib/RelayMetricsRecorder.js +9 -9
- package/lib/RelayMockRenderer.js +3 -8
- package/lib/RelayNetworkDebug.js +4 -7
- package/lib/RelayParser.js +28 -645
- package/lib/RelayProfiler.js +7 -7
- package/lib/RelayQueryCaching.js +2 -5
- package/lib/RelayRelayDirectiveTransform.js +47 -33
- package/lib/RelayRuntimeTypes.js +22 -0
- package/lib/RelayShallowMock.js +4 -7
- package/lib/RelaySkipHandleFieldTransform.js +13 -11
- package/lib/RelayTaskQueue.js +2 -5
- package/lib/RelayTransformUtils.js +20 -0
- package/lib/RelayTypes.js +2 -5
- package/lib/RelayValidator.js +9 -8
- package/lib/RelayViewerHandleTransform.js +22 -18
- package/lib/SkipClientFieldTransform.js +36 -53
- package/lib/SkipRedundantNodesTransform.js +22 -29
- package/lib/SkipUnreachableNodeTransform.js +57 -36
- package/lib/SourceControl.js +61 -0
- package/lib/StripUnusedVariablesTransform.js +86 -41
- package/lib/areEqualOSS.js +2 -4
- package/lib/compileRelayArtifacts.js +72 -0
- package/lib/dedent.js +2 -5
- package/lib/dedupeJSONStringify.js +132 -0
- package/lib/deepFreeze.js +3 -5
- package/lib/deepMergeAssignments.js +68 -0
- package/lib/filterContextForNode.js +5 -7
- package/lib/formatGeneratedModule.js +5 -9
- package/lib/{getIdentifierForRelayArgumentValue.js → getIdentifierForArgumentValue.js} +8 -10
- package/lib/getIdentifierForSelection.js +37 -0
- package/lib/getLiteralArgumentValues.js +26 -0
- package/lib/getModuleName.js +2 -4
- package/lib/getRelayHandleKey.js +2 -4
- package/lib/isCompatibleRelayFragmentType.js +2 -5
- package/lib/isEquivalentType.js +55 -0
- package/lib/isPromise.js +2 -5
- package/lib/isScalarAndEqual.js +3 -5
- package/lib/murmurHash.js +2 -4
- package/lib/nullthrowsOSS.js +7 -5
- package/lib/recycleNodesInto.js +2 -4
- package/lib/relayUnstableBatchedUpdates.js +2 -5
- package/lib/relayUnstableBatchedUpdates.native.js +2 -5
- package/lib/requestsForOperation.js +75 -0
- package/lib/simpleClone.js +2 -4
- package/lib/stableCopy.js +35 -0
- package/lib/testEditDistance.js +2 -5
- package/lib/throwFailedPromise.js +2 -5
- package/lib/writeRelayGeneratedFile.js +84 -50
- package/package.json +16 -15
- package/relay-compiler.js +7208 -5872
- package/relay-compiler.min.js +7200 -5867
- package/ARCHITECTURE.md +0 -94
- package/PATENTS +0 -33
- package/lib/AutoAliasTransform.js +0 -80
- package/lib/GraphQLFileParser.js +0 -27
- package/lib/GraphQLTextParser.js +0 -46
- package/lib/RelayCodegenTypes.js +0 -14
- package/lib/RelayCompiledTypes.js +0 -13
- package/lib/RelayCompiler.js +0 -144
- package/lib/RelayCompilerContext.js +0 -133
- package/lib/RelayCompilerUserError.js +0 -30
- package/lib/RelayConsoleReporter.js +0 -40
- package/lib/RelayFileIRParser.js +0 -66
- package/lib/RelayFlattenTransform.js +0 -278
- package/lib/RelayFlowParser.js +0 -188
- package/lib/RelayGenerateRequisiteFieldsTransform.js +0 -189
- package/lib/RelayIR.js +0 -14
- package/lib/RelayMultiReporter.js +0 -40
- package/lib/RelayReporter.js +0 -14
- package/lib/RelayTestSchema.js +0 -21
- package/lib/formatStorageKey.js +0 -37
- package/lib/getIdentifierForRelaySelection.js +0 -54
- package/lib/getRelayLiteralArgumentValues.js +0 -28
- package/lib/parseGraphQLText.js +0 -33
- package/lib/prettyStringify.js +0 -35
- package/lib/printFlowTypes.js +0 -282
- package/lib/stableJSONStringify.js +0 -45
- package/lib/stableJSONStringifyOSS.js +0 -44
- package/lib/transformInputObjectToIR.js +0 -85
- package/lib/writeLegacyFlowFile.js +0 -24
package/lib/RelayConcreteNode.js
CHANGED
@@ -1,10 +1,8 @@
|
|
1
1
|
/**
|
2
2
|
* Copyright (c) 2013-present, Facebook, Inc.
|
3
|
-
* All rights reserved.
|
4
3
|
*
|
5
|
-
* This source code is licensed under the
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
7
|
-
* of patent rights can be found in the PATENTS file in the same directory.
|
4
|
+
* This source code is licensed under the MIT license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
8
6
|
*
|
9
7
|
* @providesModule RelayConcreteNode
|
10
8
|
*
|
@@ -14,19 +12,27 @@
|
|
14
12
|
'use strict';
|
15
13
|
|
16
14
|
/**
|
17
|
-
* Represents a
|
18
|
-
*
|
19
|
-
*
|
20
|
-
*
|
15
|
+
* Represents a common GraphQL request with `text` (or persisted `id`) can be
|
16
|
+
* used to execute it, an `operation` containing information to normalize the
|
17
|
+
* results, and a `fragment` derived from that operation to read the response
|
18
|
+
* data (masking data from child fragments).
|
19
|
+
*/
|
20
|
+
|
21
|
+
/**
|
22
|
+
* An experimental wrapper around many operations to request in a batched
|
23
|
+
* network request. The composed indivual GraphQL requests should be submitted
|
24
|
+
* as a single networked request, e.g. in the case of deferred nodes or
|
25
|
+
* for streaming connections that are represented as distinct compiled concrete
|
26
|
+
* operations but are still conceptually tied to one source operation.
|
21
27
|
*
|
22
|
-
*
|
23
|
-
*
|
24
|
-
* are part of the same batch, e.g. in the case of deferred nodes or
|
25
|
-
* for streaming connections that are represented as distinct concrete roots but
|
26
|
-
* are still conceptually tied to one source query.
|
28
|
+
* Individual requests within the batch may contain data describing their
|
29
|
+
* dependencies on other requests or themselves.
|
27
30
|
*/
|
28
31
|
var RelayConcreteNode = {
|
32
|
+
BATCH_REQUEST: 'BatchRequest',
|
29
33
|
CONDITION: 'Condition',
|
34
|
+
DEFERRABLE_FRAGMENT_SPREAD: 'DeferrableFragmentSpread',
|
35
|
+
DEFERRABLE_OPERATION: 'DeferrableOperation',
|
30
36
|
FRAGMENT: 'Fragment',
|
31
37
|
FRAGMENT_SPREAD: 'FragmentSpread',
|
32
38
|
INLINE_FRAGMENT: 'InlineFragment',
|
@@ -34,11 +40,22 @@ var RelayConcreteNode = {
|
|
34
40
|
LINKED_HANDLE: 'LinkedHandle',
|
35
41
|
LITERAL: 'Literal',
|
36
42
|
LOCAL_ARGUMENT: 'LocalArgument',
|
37
|
-
|
43
|
+
OPERATION: 'Operation',
|
38
44
|
ROOT_ARGUMENT: 'RootArgument',
|
45
|
+
REQUEST: 'Request',
|
39
46
|
SCALAR_FIELD: 'ScalarField',
|
40
47
|
SCALAR_HANDLE: 'ScalarHandle',
|
41
48
|
VARIABLE: 'Variable'
|
42
49
|
};
|
50
|
+
/**
|
51
|
+
* Represents a single operation used to processing and normalize runtime
|
52
|
+
* request results.
|
53
|
+
*/
|
54
|
+
|
55
|
+
/**
|
56
|
+
* Argument in the provided operation to be derived via the results of
|
57
|
+
* other requests in the batch.
|
58
|
+
*/
|
59
|
+
|
43
60
|
|
44
61
|
module.exports = RelayConcreteNode;
|
@@ -1,10 +1,8 @@
|
|
1
1
|
/**
|
2
2
|
* Copyright (c) 2013-present, Facebook, Inc.
|
3
|
-
* All rights reserved.
|
4
3
|
*
|
5
|
-
* This source code is licensed under the
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
7
|
-
* of patent rights can be found in the PATENTS file in the same directory.
|
4
|
+
* This source code is licensed under the MIT license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
8
6
|
*
|
9
7
|
* @providesModule RelayConnectionConstants
|
10
8
|
*
|
@@ -1,10 +1,8 @@
|
|
1
1
|
/**
|
2
2
|
* Copyright (c) 2013-present, Facebook, Inc.
|
3
|
-
* All rights reserved.
|
4
3
|
*
|
5
|
-
* This source code is licensed under the
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
7
|
-
* of patent rights can be found in the PATENTS file in the same directory.
|
4
|
+
* This source code is licensed under the MIT license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
8
6
|
*
|
9
7
|
*
|
10
8
|
* @providesModule RelayConnectionTransform
|
@@ -25,6 +23,8 @@ var _require = require('./RelayConnectionConstants'),
|
|
25
23
|
FIRST = _require.FIRST,
|
26
24
|
KEY = _require.KEY,
|
27
25
|
LAST = _require.LAST;
|
26
|
+
// TODO T21875029 ../../../relay-runtime/RelayRuntime
|
27
|
+
|
28
28
|
|
29
29
|
var _require2 = require('relay-runtime'),
|
30
30
|
ConnectionInterface = _require2.ConnectionInterface;
|
@@ -38,6 +38,14 @@ var _require3 = require('graphql'),
|
|
38
38
|
GraphQLUnionType = _require3.GraphQLUnionType,
|
39
39
|
parse = _require3.parse;
|
40
40
|
|
41
|
+
var _require4 = require('./GraphQLCompilerPublic'),
|
42
|
+
getLiteralArgumentValues = _require4.getLiteralArgumentValues,
|
43
|
+
IRTransformer = _require4.IRTransformer,
|
44
|
+
SchemaUtils = _require4.SchemaUtils;
|
45
|
+
|
46
|
+
// TODO T21875029 ../../../relay-runtime/handlers/connection/RelayConnectionHandler
|
47
|
+
|
48
|
+
|
41
49
|
var CONNECTION = 'connection';
|
42
50
|
|
43
51
|
/**
|
@@ -50,16 +58,16 @@ var CONNECTION = 'connection';
|
|
50
58
|
* - Inserts a sub-fragment on the field to ensure that standard connection
|
51
59
|
* fields are fetched (e.g. cursors, node ids, page info).
|
52
60
|
*/
|
53
|
-
function
|
54
|
-
return
|
61
|
+
function relayConnectionTransform(context) {
|
62
|
+
return IRTransformer.transform(context, {
|
55
63
|
Fragment: visitFragmentOrRoot,
|
56
64
|
LinkedField: visitLinkedField,
|
57
65
|
Root: visitFragmentOrRoot
|
58
|
-
}, function () {
|
66
|
+
}, function (node) {
|
59
67
|
return {
|
60
68
|
path: [],
|
61
69
|
connectionMetadata: [],
|
62
|
-
definitionName:
|
70
|
+
definitionName: node.name
|
63
71
|
};
|
64
72
|
});
|
65
73
|
}
|
@@ -70,11 +78,8 @@ var SCHEMA_EXTENSION = 'directive @connection(key: String!, filters: [String]) o
|
|
70
78
|
* @internal
|
71
79
|
*/
|
72
80
|
function visitFragmentOrRoot(node, options) {
|
73
|
-
var
|
74
|
-
|
75
|
-
});
|
76
|
-
var transformedNode = this.traverse(node, passedOptions);
|
77
|
-
var connectionMetadata = passedOptions.connectionMetadata;
|
81
|
+
var transformedNode = this.traverse(node, options);
|
82
|
+
var connectionMetadata = options.connectionMetadata;
|
78
83
|
if (connectionMetadata.length) {
|
79
84
|
return (0, _extends3['default'])({}, transformedNode, {
|
80
85
|
metadata: (0, _extends3['default'])({}, transformedNode.metadata, {
|
@@ -89,7 +94,7 @@ function visitFragmentOrRoot(node, options) {
|
|
89
94
|
* @internal
|
90
95
|
*/
|
91
96
|
function visitLinkedField(field, options) {
|
92
|
-
var isPlural =
|
97
|
+
var isPlural = SchemaUtils.getNullableType(field.type) instanceof GraphQLList;
|
93
98
|
options.path.push(isPlural ? null : field.alias || field.name);
|
94
99
|
var transformedField = this.traverse(field, options);
|
95
100
|
var connectionDirective = field.directives.find(function (directive) {
|
@@ -101,7 +106,6 @@ function visitLinkedField(field, options) {
|
|
101
106
|
}
|
102
107
|
var definitionName = options.definitionName;
|
103
108
|
|
104
|
-
require('fbjs/lib/invariant')(definitionName, 'RelayConnectionTransform: Transform error, expected a name to have ' + 'been set by the parent operation or fragment definition.');
|
105
109
|
validateConnectionSelection(definitionName, transformedField);
|
106
110
|
validateConnectionType(definitionName, transformedField.type);
|
107
111
|
|
@@ -130,9 +134,9 @@ function visitLinkedField(field, options) {
|
|
130
134
|
});
|
131
135
|
options.path.pop();
|
132
136
|
|
133
|
-
var
|
134
|
-
key =
|
135
|
-
filters =
|
137
|
+
var _getLiteralArgumentVa = getLiteralArgumentValues(connectionDirective.args),
|
138
|
+
key = _getLiteralArgumentVa.key,
|
139
|
+
filters = _getLiteralArgumentVa.filters;
|
136
140
|
|
137
141
|
require('fbjs/lib/invariant')(typeof key === 'string', 'RelayConnectionTransform: Expected the %s argument to @%s to ' + 'be a string literal for field %s', KEY, CONNECTION, field.name);
|
138
142
|
var postfix = '' + (field.alias || field.name);
|
@@ -187,7 +191,7 @@ function generateConnectionFragment(context, type, direction) {
|
|
187
191
|
PAGE_INFO = _ConnectionInterface$.PAGE_INFO,
|
188
192
|
START_CURSOR = _ConnectionInterface$.START_CURSOR;
|
189
193
|
|
190
|
-
var compositeType = assertCompositeType(
|
194
|
+
var compositeType = assertCompositeType(SchemaUtils.getNullableType(type));
|
191
195
|
|
192
196
|
var pageInfo = PAGE_INFO;
|
193
197
|
if (direction === 'forward') {
|
@@ -201,7 +205,7 @@ function generateConnectionFragment(context, type, direction) {
|
|
201
205
|
var ast = parse(fragmentString);
|
202
206
|
var fragmentAST = ast.definitions[0];
|
203
207
|
require('fbjs/lib/invariant')(fragmentAST && fragmentAST.kind === 'FragmentDefinition', 'RelayConnectionTransform: Expected a fragment definition AST.');
|
204
|
-
var fragment = require('./RelayParser').transform(context.
|
208
|
+
var fragment = require('./RelayParser').transform(context.clientSchema, fragmentAST);
|
205
209
|
require('fbjs/lib/invariant')(fragment && fragment.kind === 'Fragment', 'RelayConnectionTransform: Expected a connection fragment.');
|
206
210
|
return {
|
207
211
|
directives: [],
|
@@ -261,46 +265,38 @@ function validateConnectionType(definitionName, type) {
|
|
261
265
|
PAGE_INFO = _ConnectionInterface$3.PAGE_INFO,
|
262
266
|
START_CURSOR = _ConnectionInterface$3.START_CURSOR;
|
263
267
|
|
264
|
-
var typeWithFields =
|
268
|
+
var typeWithFields = SchemaUtils.assertTypeWithFields(SchemaUtils.getNullableType(type));
|
265
269
|
var typeFields = typeWithFields.getFields();
|
266
270
|
var edges = typeFields[EDGES];
|
267
271
|
|
268
272
|
require('fbjs/lib/invariant')(edges, 'RelayConnectionTransform: Expected type `%s` to have an %s field in ' + 'document `%s`.', type, EDGES, definitionName);
|
269
273
|
|
270
|
-
var edgesType =
|
274
|
+
var edgesType = SchemaUtils.getNullableType(edges.type);
|
271
275
|
require('fbjs/lib/invariant')(edgesType instanceof GraphQLList, 'RelayConnectionTransform: Expected `%s` field on type `%s` to be a ' + 'list type in document `%s`.', EDGES, type, definitionName);
|
272
|
-
var edgeType =
|
276
|
+
var edgeType = SchemaUtils.getNullableType(edgesType.ofType);
|
273
277
|
require('fbjs/lib/invariant')(edgeType instanceof GraphQLObjectType, 'RelayConnectionTransform: Expected %s field on type `%s` to be a list ' + 'of objects in document `%s`.', EDGES, type, definitionName);
|
274
278
|
|
275
279
|
var node = edgeType.getFields()[NODE];
|
276
280
|
require('fbjs/lib/invariant')(node, 'RelayConnectionTransform: Expected type `%s` to have an %s.%s field in ' + 'document `%s`.', type, EDGES, NODE, definitionName);
|
277
|
-
var nodeType =
|
278
|
-
|
279
|
-
require('fbjs/lib/invariant')(false, 'RelayConnectionTransform: Expected type `%s` to have an %s.%s field' + 'for which the type is an interface, object, or union in document `%s`.', type, EDGES, NODE, definitionName);
|
280
|
-
}
|
281
|
+
var nodeType = SchemaUtils.getNullableType(node.type);
|
282
|
+
require('fbjs/lib/invariant')(nodeType instanceof GraphQLInterfaceType || nodeType instanceof GraphQLUnionType || nodeType instanceof GraphQLObjectType, 'RelayConnectionTransform: Expected type `%s` to have an %s.%s field' + 'for which the type is an interface, object, or union in document `%s`.', type, EDGES, NODE, definitionName);
|
281
283
|
|
282
284
|
var cursor = edgeType.getFields()[CURSOR];
|
283
|
-
|
284
|
-
require('fbjs/lib/invariant')(false, 'RelayConnectionTransform: Expected type `%s` to have an ' + '%s.%s field for which the type is a scalar in document `%s`.', type, EDGES, CURSOR, definitionName);
|
285
|
-
}
|
285
|
+
require('fbjs/lib/invariant')(cursor && SchemaUtils.getNullableType(cursor.type) instanceof GraphQLScalarType, 'RelayConnectionTransform: Expected type `%s` to have an ' + '%s.%s field for which the type is a scalar in document `%s`.', type, EDGES, CURSOR, definitionName);
|
286
286
|
|
287
287
|
var pageInfo = typeFields[PAGE_INFO];
|
288
288
|
require('fbjs/lib/invariant')(pageInfo, 'RelayConnectionTransform: Expected type `%s` to have a %s field ' + 'in document `%s`.', type, PAGE_INFO, definitionName);
|
289
|
-
var pageInfoType =
|
290
|
-
|
291
|
-
require('fbjs/lib/invariant')(false, 'RelayConnectionTransform: Expected type `%s` to have a %s field for ' + 'which the type is an object in document `%s`.', type, PAGE_INFO, definitionName);
|
292
|
-
}
|
289
|
+
var pageInfoType = SchemaUtils.getNullableType(pageInfo.type);
|
290
|
+
require('fbjs/lib/invariant')(pageInfoType instanceof GraphQLObjectType, 'RelayConnectionTransform: Expected type `%s` to have a %s field for ' + 'which the type is an object in document `%s`.', type, PAGE_INFO, definitionName);
|
293
291
|
|
294
292
|
[END_CURSOR, HAS_NEXT_PAGE, HAS_PREV_PAGE, START_CURSOR].forEach(function (fieldName) {
|
295
293
|
var pageInfoField = pageInfoType.getFields()[fieldName];
|
296
|
-
|
297
|
-
require('fbjs/lib/invariant')(false, 'RelayConnectionTransform: Expected type `%s` to have an ' + '%s field for which the type is an scalar in document `%s`.', pageInfo.type, fieldName, definitionName);
|
298
|
-
}
|
294
|
+
require('fbjs/lib/invariant')(pageInfoField && SchemaUtils.getNullableType(pageInfoField.type) instanceof GraphQLScalarType, 'RelayConnectionTransform: Expected type `%s` to have an ' + '%s field for which the type is an scalar in document `%s`.', pageInfo.type, fieldName, definitionName);
|
299
295
|
});
|
300
296
|
}
|
301
297
|
|
302
298
|
module.exports = {
|
303
299
|
CONNECTION: CONNECTION,
|
304
300
|
SCHEMA_EXTENSION: SCHEMA_EXTENSION,
|
305
|
-
transform:
|
301
|
+
transform: relayConnectionTransform
|
306
302
|
};
|
@@ -1,10 +1,8 @@
|
|
1
1
|
/**
|
2
2
|
* Copyright (c) 2013-present, Facebook, Inc.
|
3
|
-
* All rights reserved.
|
4
3
|
*
|
5
|
-
* This source code is licensed under the
|
6
|
-
* LICENSE file in the root directory of this source tree.
|
7
|
-
* of patent rights can be found in the PATENTS file in the same directory.
|
4
|
+
* This source code is licensed under the MIT license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
8
6
|
*
|
9
7
|
* @providesModule RelayDefaultHandleKey
|
10
8
|
*
|