@react-native/codegen 0.81.0-nightly-20250705-dcd430721 → 0.81.0-nightly-20250707-255977a7b

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.
@@ -61,6 +61,7 @@ function generatePropsDiffString(className, componentName, component) {
61
61
  case 'StringTypeAnnotation':
62
62
  case 'Int32TypeAnnotation':
63
63
  case 'BooleanTypeAnnotation':
64
+ case 'MixedTypeAnnotation':
64
65
  return `
65
66
  if (${prop.name} != oldProps->${prop.name}) {
66
67
  result["${prop.name}"] = ${prop.name};
@@ -70,6 +71,14 @@ function generatePropsDiffString(className, componentName, component) {
70
71
  return `
71
72
  if ((${prop.name} != oldProps->${prop.name}) && !(std::isnan(${prop.name}) && std::isnan(oldProps->${prop.name}))) {
72
73
  result["${prop.name}"] = ${prop.name};
74
+ }`;
75
+ case 'ArrayTypeAnnotation':
76
+ case 'ObjectTypeAnnotation':
77
+ case 'StringEnumTypeAnnotation':
78
+ case 'Int32EnumTypeAnnotation':
79
+ return `
80
+ if (${prop.name} != oldProps->${prop.name}) {
81
+ result["${prop.name}"] = toDynamic(${prop.name});
73
82
  }`;
74
83
  case 'ReservedPropTypeAnnotation':
75
84
  switch (typeAnnotation.name) {
@@ -79,6 +88,9 @@ function generatePropsDiffString(className, componentName, component) {
79
88
  result["${prop.name}"] = *${prop.name};
80
89
  }`;
81
90
  case 'ImageSourcePrimitive':
91
+ case 'PointPrimitive':
92
+ case 'EdgeInsetsPrimitive':
93
+ case 'DimensionPrimitive':
82
94
  return `
83
95
  if (${prop.name} != oldProps->${prop.name}) {
84
96
  result["${prop.name}"] = toDynamic(${prop.name});
@@ -88,52 +100,11 @@ function generatePropsDiffString(className, componentName, component) {
88
100
  throw new Error(
89
101
  'ImageRequestPrimitive should not be used in Props',
90
102
  );
91
- case 'PointPrimitive':
92
- return `
93
- if (${prop.name} != oldProps->${prop.name}) {
94
- result["${prop.name}"] = toDynamic(${prop.name});
95
- }`;
96
- case 'EdgeInsetsPrimitive':
97
- return `
98
- if (${prop.name} != oldProps->${prop.name}) {
99
- result["${prop.name}"] = toDynamic(${prop.name});
100
- }`;
101
- case 'DimensionPrimitive':
102
- return `
103
- if (${prop.name} != oldProps->${prop.name}) {
104
- result["${prop.name}"] = toDynamic(${prop.name});
105
- }`;
106
103
  default:
107
104
  typeAnnotation.name;
108
105
  throw new Error('Received unknown ReservedPropTypeAnnotation');
109
106
  }
110
- case 'ArrayTypeAnnotation':
111
- return `
112
- if (${prop.name} != oldProps->${prop.name}) {
113
- result["${prop.name}"] = toDynamic(${prop.name});
114
- }`;
115
- case 'ObjectTypeAnnotation':
116
- return `
117
- if (${prop.name} != oldProps->${prop.name}) {
118
- result["${prop.name}"] = toDynamic(${prop.name});
119
- }`;
120
- case 'StringEnumTypeAnnotation':
121
- return `
122
- if (${prop.name} != oldProps->${prop.name}) {
123
- result["${prop.name}"] = toDynamic(${prop.name});
124
- }`;
125
- case 'Int32EnumTypeAnnotation':
126
- return `
127
- if (${prop.name} != oldProps->${prop.name}) {
128
- result["${prop.name}"] = toDynamic(${prop.name});
129
- }`;
130
- case 'MixedTypeAnnotation':
131
- return `
132
- if (${prop.name} != oldProps->${prop.name}) {
133
- result["${prop.name}"] = ${prop.name};
134
- }`;
135
107
  default:
136
- // TODO: Implement diffProps for complex types
137
108
  return '';
138
109
  }
139
110
  })
@@ -85,6 +85,7 @@ function generatePropsDiffString(
85
85
  case 'StringTypeAnnotation':
86
86
  case 'Int32TypeAnnotation':
87
87
  case 'BooleanTypeAnnotation':
88
+ case 'MixedTypeAnnotation':
88
89
  return `
89
90
  if (${prop.name} != oldProps->${prop.name}) {
90
91
  result["${prop.name}"] = ${prop.name};
@@ -94,6 +95,14 @@ function generatePropsDiffString(
94
95
  return `
95
96
  if ((${prop.name} != oldProps->${prop.name}) && !(std::isnan(${prop.name}) && std::isnan(oldProps->${prop.name}))) {
96
97
  result["${prop.name}"] = ${prop.name};
98
+ }`;
99
+ case 'ArrayTypeAnnotation':
100
+ case 'ObjectTypeAnnotation':
101
+ case 'StringEnumTypeAnnotation':
102
+ case 'Int32EnumTypeAnnotation':
103
+ return `
104
+ if (${prop.name} != oldProps->${prop.name}) {
105
+ result["${prop.name}"] = toDynamic(${prop.name});
97
106
  }`;
98
107
  case 'ReservedPropTypeAnnotation':
99
108
  switch (typeAnnotation.name) {
@@ -103,6 +112,9 @@ function generatePropsDiffString(
103
112
  result["${prop.name}"] = *${prop.name};
104
113
  }`;
105
114
  case 'ImageSourcePrimitive':
115
+ case 'PointPrimitive':
116
+ case 'EdgeInsetsPrimitive':
117
+ case 'DimensionPrimitive':
106
118
  return `
107
119
  if (${prop.name} != oldProps->${prop.name}) {
108
120
  result["${prop.name}"] = toDynamic(${prop.name});
@@ -112,52 +124,11 @@ function generatePropsDiffString(
112
124
  throw new Error(
113
125
  'ImageRequestPrimitive should not be used in Props',
114
126
  );
115
- case 'PointPrimitive':
116
- return `
117
- if (${prop.name} != oldProps->${prop.name}) {
118
- result["${prop.name}"] = toDynamic(${prop.name});
119
- }`;
120
- case 'EdgeInsetsPrimitive':
121
- return `
122
- if (${prop.name} != oldProps->${prop.name}) {
123
- result["${prop.name}"] = toDynamic(${prop.name});
124
- }`;
125
- case 'DimensionPrimitive':
126
- return `
127
- if (${prop.name} != oldProps->${prop.name}) {
128
- result["${prop.name}"] = toDynamic(${prop.name});
129
- }`;
130
127
  default:
131
128
  (typeAnnotation.name: empty);
132
129
  throw new Error('Received unknown ReservedPropTypeAnnotation');
133
130
  }
134
- case 'ArrayTypeAnnotation':
135
- return `
136
- if (${prop.name} != oldProps->${prop.name}) {
137
- result["${prop.name}"] = toDynamic(${prop.name});
138
- }`;
139
- case 'ObjectTypeAnnotation':
140
- return `
141
- if (${prop.name} != oldProps->${prop.name}) {
142
- result["${prop.name}"] = toDynamic(${prop.name});
143
- }`;
144
- case 'StringEnumTypeAnnotation':
145
- return `
146
- if (${prop.name} != oldProps->${prop.name}) {
147
- result["${prop.name}"] = toDynamic(${prop.name});
148
- }`;
149
- case 'Int32EnumTypeAnnotation':
150
- return `
151
- if (${prop.name} != oldProps->${prop.name}) {
152
- result["${prop.name}"] = toDynamic(${prop.name});
153
- }`;
154
- case 'MixedTypeAnnotation':
155
- return `
156
- if (${prop.name} != oldProps->${prop.name}) {
157
- result["${prop.name}"] = ${prop.name};
158
- }`;
159
131
  default:
160
- // TODO: Implement diffProps for complex types
161
132
  return '';
162
133
  }
163
134
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-native/codegen",
3
- "version": "0.81.0-nightly-20250705-dcd430721",
3
+ "version": "0.81.0-nightly-20250707-255977a7b",
4
4
  "description": "Code generation tools for React Native",
5
5
  "license": "MIT",
6
6
  "repository": {