Skip to content

Commit 92c3278

Browse files
marcoww6meta-codesync[bot]
authored andcommitted
Transform $ReadOnlyArray to ReadonlyArray 18/n (#55152)
Summary: Pull Request resolved: #55152 We are transforming the following utility types to be more consistent with typescript and better AI integration: * `$NonMaybeType` -> `NonNullable` * `$ReadOnly` -> `Readonly` * `$ReadOnlyArray` -> `ReadonlyArray` * `$ReadOnlyMap` -> `ReadonlyMap` * `$ReadOnlySet` -> `ReadonlySet` * `$Keys` -> `keyof` * `$Values` -> `Values` * `mixed` -> `unknown` See details in https://fb.workplace.com/groups/flowlang/permalink/1837907750148213/. drop-conflicts Command: `js1 flow-runner codemod flow/transformUtilityType --legacy-type='$ReadOnlyArray'` Reviewed By: SamChou19815 Differential Revision: D90424826 fbshipit-source-id: 207e1abebb50671e8eb2a7f79ecfeaf4569b5b3e
1 parent 7051a07 commit 92c3278

167 files changed

Lines changed: 416 additions & 417 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

packages/react-native-codegen/src/parsers/parsers-primitives.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -435,8 +435,8 @@ function emitUnion(
435435
translateTypeAnnotation: $FlowFixMe,
436436
parser: Parser,
437437
): Nullable<NativeModuleUnionTypeAnnotation> {
438-
const unparsedMemberTypes: $ReadOnlyArray<$FlowFixMe> =
439-
(typeAnnotation.types: $ReadOnlyArray<$FlowFixMe>);
438+
const unparsedMemberTypes: ReadonlyArray<$FlowFixMe> =
439+
(typeAnnotation.types: ReadonlyArray<$FlowFixMe>);
440440

441441
const memberTypes = unparsedMemberTypes.map(
442442
(memberType: $FlowFixMe): NativeModuleUnionTypeAnnotationMemberType => {

packages/react-native-codegen/src/parsers/schema.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,10 @@ import type {
2323
export type ComponentSchemaBuilderConfig = Readonly<{
2424
filename: string,
2525
componentName: string,
26-
extendsProps: $ReadOnlyArray<ExtendsPropsShape>,
27-
events: $ReadOnlyArray<EventTypeShape>,
28-
props: $ReadOnlyArray<NamedShape<PropTypeAnnotation>>,
29-
commands: $ReadOnlyArray<NamedShape<CommandTypeAnnotation>>,
26+
extendsProps: ReadonlyArray<ExtendsPropsShape>,
27+
events: ReadonlyArray<EventTypeShape>,
28+
props: ReadonlyArray<NamedShape<PropTypeAnnotation>>,
29+
commands: ReadonlyArray<NamedShape<CommandTypeAnnotation>>,
3030
options?: ?OptionsShape,
3131
}>;
3232

packages/react-native-codegen/src/parsers/typescript/components/commands.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -205,10 +205,10 @@ function buildCommandSchema(
205205
}
206206

207207
function getCommands(
208-
commandTypeAST: $ReadOnlyArray<EventTypeAST>,
208+
commandTypeAST: ReadonlyArray<EventTypeAST>,
209209
types: TypeDeclarationMap,
210210
parser: Parser,
211-
): $ReadOnlyArray<NamedShape<CommandTypeAnnotation>> {
211+
): ReadonlyArray<NamedShape<CommandTypeAnnotation>> {
212212
return commandTypeAST
213213
.filter(
214214
property =>

packages/react-native-codegen/src/parsers/typescript/components/componentsUtils.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -476,10 +476,10 @@ function getSchemaInfo(
476476
}
477477

478478
function flattenProperties(
479-
typeDefinition: $ReadOnlyArray<PropAST>,
479+
typeDefinition: ReadonlyArray<PropAST>,
480480
types: TypeDeclarationMap,
481481
parser: Parser,
482-
): $ReadOnlyArray<PropAST> {
482+
): ReadonlyArray<PropAST> {
483483
return typeDefinition
484484
.map(property => {
485485
if (property.type === 'TSPropertySignature') {

packages/react-native-codegen/src/parsers/typescript/components/events.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ function findEventArgumentsAndType(
178178
bubblingType: void | 'direct' | 'bubble',
179179
paperName: ?$FlowFixMe,
180180
): {
181-
argumentProps: ?$ReadOnlyArray<$FlowFixMe>,
181+
argumentProps: ?ReadonlyArray<$FlowFixMe>,
182182
paperTopLevelNameDeprecated: ?$FlowFixMe,
183183
bubblingType: ?'direct' | 'bubble',
184184
} {
@@ -280,10 +280,10 @@ function buildEventSchema(
280280
}
281281

282282
function getEvents(
283-
eventTypeAST: $ReadOnlyArray<EventTypeAST>,
283+
eventTypeAST: ReadonlyArray<EventTypeAST>,
284284
types: TypeDeclarationMap,
285285
parser: Parser,
286-
): $ReadOnlyArray<EventTypeShape> {
286+
): ReadonlyArray<EventTypeShape> {
287287
return eventTypeAST
288288
.map(property => buildEventSchema(types, property, parser))
289289
.filter(Boolean);

packages/react-native-codegen/src/parsers/typescript/components/extends.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ function isEvent(typeAnnotation: $FlowFixMe, parser: Parser): boolean {
2727
type PropsAST = Object;
2828

2929
function categorizeProps(
30-
typeDefinition: $ReadOnlyArray<PropsAST>,
30+
typeDefinition: ReadonlyArray<PropsAST>,
3131
types: TypeDeclarationMap,
3232
events: Array<PropsAST>,
3333
parser: Parser,

packages/react-native-codegen/src/parsers/typescript/modules/__tests__/typescript-module-parser-e2e-test.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ type PrimitiveTypeAnnotationType =
3535
| 'FloatTypeAnnotation'
3636
| 'BooleanTypeAnnotation';
3737

38-
const PRIMITIVES: $ReadOnlyArray<[string, PrimitiveTypeAnnotationType]> = [
38+
const PRIMITIVES: ReadonlyArray<[string, PrimitiveTypeAnnotationType]> = [
3939
['string', 'StringTypeAnnotation'],
4040
['number', 'NumberTypeAnnotation'],
4141
['Int32', 'Int32TypeAnnotation'],
@@ -44,9 +44,7 @@ const PRIMITIVES: $ReadOnlyArray<[string, PrimitiveTypeAnnotationType]> = [
4444
['boolean', 'BooleanTypeAnnotation'],
4545
];
4646

47-
const RESERVED_FUNCTION_VALUE_TYPE_NAME: $ReadOnlyArray<'RootTag'> = [
48-
'RootTag',
49-
];
47+
const RESERVED_FUNCTION_VALUE_TYPE_NAME: ReadonlyArray<'RootTag'> = ['RootTag'];
5048

5149
const MODULE_NAME = 'NativeFoo';
5250

packages/react-native-codegen/src/parsers/typescript/modules/index.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,9 +57,9 @@ function translateObjectTypeAnnotation(
5757
*/
5858
typeScriptTypeAnnotation: $FlowFixMe,
5959
nullable: boolean,
60-
objectMembers: $ReadOnlyArray<$FlowFixMe>,
60+
objectMembers: ReadonlyArray<$FlowFixMe>,
6161
typeResolutionStatus: TypeResolutionStatus,
62-
baseTypes: $ReadOnlyArray<string>,
62+
baseTypes: ReadonlyArray<string>,
6363
types: TypeDeclarationMap,
6464
aliasMap: {...NativeModuleAliasMap},
6565
enumMap: {...NativeModuleEnumMap},

packages/react-native-codegen/src/parsers/typescript/parser.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ class TypeScriptParser implements Parser {
157157

158158
getFunctionTypeAnnotationParameters(
159159
functionTypeAnnotation: $FlowFixMe,
160-
): $ReadOnlyArray<$FlowFixMe> {
160+
): ReadonlyArray<$FlowFixMe> {
161161
return functionTypeAnnotation.parameters;
162162
}
163163

@@ -248,7 +248,7 @@ class TypeScriptParser implements Parser {
248248

249249
parseEnumMembers(
250250
typeAnnotation: $FlowFixMe,
251-
): $ReadOnlyArray<NativeModuleEnumMember> {
251+
): ReadonlyArray<NativeModuleEnumMember> {
252252
return typeAnnotation.members.map(member => {
253253
const value =
254254
member.initializer?.operator === '-'
@@ -385,7 +385,7 @@ class TypeScriptParser implements Parser {
385385
return annotatedElement.typeAnnotation.members;
386386
}
387387

388-
bodyProperties(typeAlias: TypeDeclarationMap): $ReadOnlyArray<$FlowFixMe> {
388+
bodyProperties(typeAlias: TypeDeclarationMap): ReadonlyArray<$FlowFixMe> {
389389
return typeAlias.body.body;
390390
}
391391

@@ -516,11 +516,11 @@ class TypeScriptParser implements Parser {
516516
}
517517

518518
getProps(
519-
typeDefinition: $ReadOnlyArray<PropAST>,
519+
typeDefinition: ReadonlyArray<PropAST>,
520520
types: TypeDeclarationMap,
521521
): {
522-
props: $ReadOnlyArray<NamedShape<PropTypeAnnotation>>,
523-
extendsProps: $ReadOnlyArray<ExtendsPropsShape>,
522+
props: ReadonlyArray<NamedShape<PropTypeAnnotation>>,
523+
extendsProps: ReadonlyArray<ExtendsPropsShape>,
524524
} {
525525
const extendsProps: Array<ExtendsPropsShape> = [];
526526
const componentPropAsts: Array<PropAST> = [];

packages/react-native-compatibility-check/src/ComparisonResult.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,8 @@ export type FunctionComparisonResult = {
8181
// Array<NamedShape<Nullable<NativeModuleBaseTypeAnnotation>>>
8282

8383
export type PropertiesComparisonResult = {
84-
addedProperties?: $ReadOnlyArray<NamedShape<CompleteTypeAnnotation>>,
85-
missingProperties?: $ReadOnlyArray<NamedShape<CompleteTypeAnnotation>>,
84+
addedProperties?: ReadonlyArray<NamedShape<CompleteTypeAnnotation>>,
85+
missingProperties?: ReadonlyArray<NamedShape<CompleteTypeAnnotation>>,
8686
errorProperties?: Array<{
8787
property: string,
8888
fault?: TypeComparisonError,

0 commit comments

Comments
 (0)