react-native-windows 0.76.0-preview.1 → 0.76.0-preview.2
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/Libraries/Components/Keyboard/KeyboardAvoidingView.js +17 -0
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +3 -0
- package/Libraries/Components/ScrollView/ScrollViewNativeComponent.windows.js +3 -0
- package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +10 -0
- package/Libraries/Components/View/ReactNativeStyleAttributes.js +2 -2
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Core/setUpDeveloperTools.js +5 -1
- package/Libraries/NativeComponent/BaseViewConfig.android.js +2 -2
- package/Libraries/NativeComponent/BaseViewConfig.ios.js +11 -2
- package/Libraries/NativeComponent/BaseViewConfig.windows.js +11 -2
- package/Libraries/ReactNative/getNativeComponentAttributes.js +4 -0
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +98 -5
- package/Libraries/StyleSheet/StyleSheetTypes.js +5 -5
- package/Libraries/StyleSheet/processBoxShadow.js +5 -7
- package/Libraries/StyleSheet/processFilter.js +4 -4
- package/Libraries/Utilities/HMRClient.js +6 -5
- package/PropertySheets/Generated/PackageVersion.g.props +2 -2
- package/package.json +21 -17
- package/src/private/components/SafeAreaView_INTERNAL_DO_NOT_USE.js +11 -9
- package/types/experimental.d.ts +0 -105
- package/Common/packages.lock.json +0 -26
- package/Folly/packages.lock.json +0 -23
- package/Microsoft.ReactNative/packages.fabric.lock.json +0 -159
- package/Microsoft.ReactNative/packages.lock.json +0 -131
- package/Microsoft.ReactNative.Managed/packages.lock.json +0 -373
- package/Microsoft.ReactNative.Managed.CodeGen/packages.lock.json +0 -3197
- package/ReactCommon/packages.lock.json +0 -30
- package/fmt/packages.lock.json +0 -13
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
11
|
import type {ViewStyleProp} from '../../StyleSheet/StyleSheet';
|
|
12
|
+
import type {DimensionsPayload} from '../../Utilities/NativeDeviceInfo';
|
|
12
13
|
import type {
|
|
13
14
|
ViewLayout,
|
|
14
15
|
ViewLayoutEvent,
|
|
@@ -18,6 +19,7 @@ import type {KeyboardEvent, KeyboardMetrics} from './Keyboard';
|
|
|
18
19
|
|
|
19
20
|
import LayoutAnimation from '../../LayoutAnimation/LayoutAnimation';
|
|
20
21
|
import StyleSheet from '../../StyleSheet/StyleSheet';
|
|
22
|
+
import Dimensions from '../../Utilities/Dimensions';
|
|
21
23
|
import Platform from '../../Utilities/Platform';
|
|
22
24
|
import {type EventSubscription} from '../../vendor/emitter/EventEmitter';
|
|
23
25
|
import AccessibilityInfo from '../AccessibilityInfo/AccessibilityInfo';
|
|
@@ -66,6 +68,7 @@ class KeyboardAvoidingView extends React.Component<Props, State> {
|
|
|
66
68
|
viewRef: {current: React.ElementRef<typeof View> | null, ...};
|
|
67
69
|
_initialFrameHeight: number = 0;
|
|
68
70
|
_bottom: number = 0;
|
|
71
|
+
_windowWidth: number = Dimensions.get('window').width;
|
|
69
72
|
|
|
70
73
|
constructor(props: Props) {
|
|
71
74
|
super(props);
|
|
@@ -130,6 +133,10 @@ class KeyboardAvoidingView extends React.Component<Props, State> {
|
|
|
130
133
|
}
|
|
131
134
|
};
|
|
132
135
|
|
|
136
|
+
_onDimensionsChange = ({window}: DimensionsPayload) => {
|
|
137
|
+
this._windowWidth = window?.width ?? 0;
|
|
138
|
+
};
|
|
139
|
+
|
|
133
140
|
// Avoid unnecessary renders if the KeyboardAvoidingView is disabled.
|
|
134
141
|
_setBottom = (value: number) => {
|
|
135
142
|
const enabled = this.props.enabled ?? true;
|
|
@@ -145,6 +152,15 @@ class KeyboardAvoidingView extends React.Component<Props, State> {
|
|
|
145
152
|
return;
|
|
146
153
|
}
|
|
147
154
|
|
|
155
|
+
if (
|
|
156
|
+
Platform.OS === 'ios' &&
|
|
157
|
+
this._windowWidth !== this._keyboardEvent.endCoordinates.width
|
|
158
|
+
) {
|
|
159
|
+
// The keyboard is not the standard bottom-of-the-screen keyboard. For example, floating keyboard on iPadOS.
|
|
160
|
+
this._setBottom(0);
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
163
|
+
|
|
148
164
|
const {duration, easing, endCoordinates} = this._keyboardEvent;
|
|
149
165
|
const height = await this._relativeKeyboardHeight(endCoordinates);
|
|
150
166
|
|
|
@@ -178,6 +194,7 @@ class KeyboardAvoidingView extends React.Component<Props, State> {
|
|
|
178
194
|
if (Platform.OS === 'ios') {
|
|
179
195
|
this._subscriptions = [
|
|
180
196
|
Keyboard.addListener('keyboardWillChangeFrame', this._onKeyboardChange),
|
|
197
|
+
Dimensions.addEventListener('change', this._onDimensionsChange),
|
|
181
198
|
];
|
|
182
199
|
} else {
|
|
183
200
|
this._subscriptions = [
|
|
@@ -160,6 +160,9 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig =
|
|
|
160
160
|
snapToInterval: true,
|
|
161
161
|
snapToOffsets: true,
|
|
162
162
|
snapToStart: true,
|
|
163
|
+
verticalScrollIndicatorInsets: {
|
|
164
|
+
diff: require('../../Utilities/differ/insetsDiffer'),
|
|
165
|
+
},
|
|
163
166
|
zoomScale: true,
|
|
164
167
|
...ConditionallyIgnoredEventHandlers({
|
|
165
168
|
onScrollBeginDrag: true,
|
|
@@ -161,6 +161,9 @@ export const __INTERNAL_VIEW_CONFIG: PartialViewConfig =
|
|
|
161
161
|
snapToInterval: true,
|
|
162
162
|
snapToOffsets: true,
|
|
163
163
|
snapToStart: true,
|
|
164
|
+
verticalScrollIndicatorInsets: {
|
|
165
|
+
diff: require('../../Utilities/differ/insetsDiffer'),
|
|
166
|
+
},
|
|
164
167
|
zoomScale: true,
|
|
165
168
|
...ConditionallyIgnoredEventHandlers({
|
|
166
169
|
onScrollBeginDrag: true,
|
|
@@ -85,8 +85,15 @@ const RCTTextInputViewConfig = {
|
|
|
85
85
|
topContentSizeChange: {
|
|
86
86
|
registrationName: 'onContentSizeChange',
|
|
87
87
|
},
|
|
88
|
+
topChangeSync: {
|
|
89
|
+
registrationName: 'onChangeSync',
|
|
90
|
+
},
|
|
91
|
+
topKeyPressSync: {
|
|
92
|
+
registrationName: 'onKeyPressSync',
|
|
93
|
+
},
|
|
88
94
|
},
|
|
89
95
|
validAttributes: {
|
|
96
|
+
dynamicTypeRamp: true,
|
|
90
97
|
fontSize: true,
|
|
91
98
|
fontWeight: true,
|
|
92
99
|
fontVariant: true,
|
|
@@ -97,6 +104,7 @@ const RCTTextInputViewConfig = {
|
|
|
97
104
|
textTransform: true,
|
|
98
105
|
textAlign: true,
|
|
99
106
|
fontFamily: true,
|
|
107
|
+
lineBreakModeIOS: true,
|
|
100
108
|
lineHeight: true,
|
|
101
109
|
isHighlighted: true,
|
|
102
110
|
writingDirection: true,
|
|
@@ -150,6 +158,8 @@ const RCTTextInputViewConfig = {
|
|
|
150
158
|
onSelectionChange: true,
|
|
151
159
|
onContentSizeChange: true,
|
|
152
160
|
onScroll: true,
|
|
161
|
+
onChangeSync: true,
|
|
162
|
+
onKeyPressSync: true,
|
|
153
163
|
}),
|
|
154
164
|
},
|
|
155
165
|
};
|
|
@@ -120,7 +120,7 @@ const ReactNativeStyleAttributes: {[string]: AnyAttributeType, ...} = {
|
|
|
120
120
|
/**
|
|
121
121
|
* Filter
|
|
122
122
|
*/
|
|
123
|
-
|
|
123
|
+
filter: {process: processFilter},
|
|
124
124
|
|
|
125
125
|
/**
|
|
126
126
|
* MixBlendMode
|
|
@@ -135,7 +135,7 @@ const ReactNativeStyleAttributes: {[string]: AnyAttributeType, ...} = {
|
|
|
135
135
|
/*
|
|
136
136
|
* BoxShadow
|
|
137
137
|
*/
|
|
138
|
-
|
|
138
|
+
boxShadow: {process: processBoxShadow},
|
|
139
139
|
|
|
140
140
|
/**
|
|
141
141
|
* Linear Gradient
|
|
@@ -42,9 +42,13 @@ if (__DEV__) {
|
|
|
42
42
|
if (!Platform.isTesting) {
|
|
43
43
|
const HMRClient = require('../Utilities/HMRClient');
|
|
44
44
|
|
|
45
|
+
// [0.76 only] When under React Native DevTools, log "JavaScript logs will
|
|
46
|
+
// be removed from Metro..." warning, and continue to forward logs.
|
|
45
47
|
if (global.__FUSEBOX_HAS_FULL_CONSOLE_SUPPORT__) {
|
|
46
48
|
HMRClient.unstable_notifyFuseboxConsoleEnabled();
|
|
47
|
-
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
if (console._isPolyfilled) {
|
|
48
52
|
// We assume full control over the console and send JavaScript logs to Metro.
|
|
49
53
|
[
|
|
50
54
|
'trace',
|
|
@@ -169,10 +169,10 @@ const validAttributesForNonEventProps = {
|
|
|
169
169
|
experimental_backgroundImage: {
|
|
170
170
|
process: require('../StyleSheet/processBackgroundImage').default,
|
|
171
171
|
},
|
|
172
|
-
|
|
172
|
+
boxShadow: {
|
|
173
173
|
process: require('../StyleSheet/processBoxShadow').default,
|
|
174
174
|
},
|
|
175
|
-
|
|
175
|
+
filter: {
|
|
176
176
|
process: require('../StyleSheet/processFilter').default,
|
|
177
177
|
},
|
|
178
178
|
experimental_mixBlendMode: true,
|
|
@@ -198,6 +198,7 @@ const validAttributesForNonEventProps = {
|
|
|
198
198
|
testID: true,
|
|
199
199
|
backgroundColor: {process: require('../StyleSheet/processColor').default},
|
|
200
200
|
backfaceVisibility: true,
|
|
201
|
+
cursor: true,
|
|
201
202
|
opacity: true,
|
|
202
203
|
shadowColor: {process: require('../StyleSheet/processColor').default},
|
|
203
204
|
shadowOffset: {diff: require('../Utilities/differ/sizesDiffer')},
|
|
@@ -216,16 +217,18 @@ const validAttributesForNonEventProps = {
|
|
|
216
217
|
role: true,
|
|
217
218
|
borderRadius: true,
|
|
218
219
|
borderColor: {process: require('../StyleSheet/processColor').default},
|
|
220
|
+
borderBlockColor: {process: require('../StyleSheet/processColor').default},
|
|
219
221
|
borderCurve: true,
|
|
220
222
|
borderWidth: true,
|
|
223
|
+
borderBlockWidth: true,
|
|
221
224
|
borderStyle: true,
|
|
222
225
|
hitSlop: {diff: require('../Utilities/differ/insetsDiffer')},
|
|
223
226
|
collapsable: true,
|
|
224
227
|
collapsableChildren: true,
|
|
225
|
-
|
|
228
|
+
filter: {
|
|
226
229
|
process: require('../StyleSheet/processFilter').default,
|
|
227
230
|
},
|
|
228
|
-
|
|
231
|
+
boxShadow: {
|
|
229
232
|
process: require('../StyleSheet/processBoxShadow').default,
|
|
230
233
|
},
|
|
231
234
|
experimental_mixBlendMode: true,
|
|
@@ -240,9 +243,15 @@ const validAttributesForNonEventProps = {
|
|
|
240
243
|
borderLeftWidth: true,
|
|
241
244
|
borderLeftColor: {process: require('../StyleSheet/processColor').default},
|
|
242
245
|
borderStartWidth: true,
|
|
246
|
+
borderBlockStartWidth: true,
|
|
243
247
|
borderStartColor: {process: require('../StyleSheet/processColor').default},
|
|
248
|
+
borderBlockStartColor: {
|
|
249
|
+
process: require('../StyleSheet/processColor').default,
|
|
250
|
+
},
|
|
244
251
|
borderEndWidth: true,
|
|
252
|
+
borderBlockEndWidth: true,
|
|
245
253
|
borderEndColor: {process: require('../StyleSheet/processColor').default},
|
|
254
|
+
borderBlockEndColor: {process: require('../StyleSheet/processColor').default},
|
|
246
255
|
|
|
247
256
|
borderTopLeftRadius: true,
|
|
248
257
|
borderTopRightRadius: true,
|
|
@@ -218,6 +218,7 @@ const validAttributesForNonEventProps = {
|
|
|
218
218
|
testID: true,
|
|
219
219
|
backgroundColor: {process: require('../StyleSheet/processColor').default},
|
|
220
220
|
backfaceVisibility: true,
|
|
221
|
+
cursor: true,
|
|
221
222
|
opacity: true,
|
|
222
223
|
shadowColor: {process: require('../StyleSheet/processColor').default},
|
|
223
224
|
shadowOffset: {diff: require('../Utilities/differ/sizesDiffer')},
|
|
@@ -236,16 +237,18 @@ const validAttributesForNonEventProps = {
|
|
|
236
237
|
role: true,
|
|
237
238
|
borderRadius: true,
|
|
238
239
|
borderColor: {process: require('../StyleSheet/processColor').default},
|
|
240
|
+
borderBlockColor: {process: require('../StyleSheet/processColor').default},
|
|
239
241
|
borderCurve: true,
|
|
240
242
|
borderWidth: true,
|
|
243
|
+
borderBlockWidth: true,
|
|
241
244
|
borderStyle: true,
|
|
242
245
|
hitSlop: {diff: require('../Utilities/differ/insetsDiffer')},
|
|
243
246
|
collapsable: true,
|
|
244
247
|
collapsableChildren: true,
|
|
245
|
-
|
|
248
|
+
filter: {
|
|
246
249
|
process: require('../StyleSheet/processFilter').default,
|
|
247
250
|
},
|
|
248
|
-
|
|
251
|
+
boxShadow: {
|
|
249
252
|
process: require('../StyleSheet/processBoxShadow').default,
|
|
250
253
|
},
|
|
251
254
|
experimental_mixBlendMode: true,
|
|
@@ -260,9 +263,15 @@ const validAttributesForNonEventProps = {
|
|
|
260
263
|
borderLeftWidth: true,
|
|
261
264
|
borderLeftColor: {process: require('../StyleSheet/processColor').default},
|
|
262
265
|
borderStartWidth: true,
|
|
266
|
+
borderBlockStartWidth: true,
|
|
263
267
|
borderStartColor: {process: require('../StyleSheet/processColor').default},
|
|
268
|
+
borderBlockStartColor: {
|
|
269
|
+
process: require('../StyleSheet/processColor').default,
|
|
270
|
+
},
|
|
264
271
|
borderEndWidth: true,
|
|
272
|
+
borderBlockEndWidth: true,
|
|
265
273
|
borderEndColor: {process: require('../StyleSheet/processColor').default},
|
|
274
|
+
borderBlockEndColor: {process: require('../StyleSheet/processColor').default},
|
|
266
275
|
|
|
267
276
|
borderTopLeftRadius: true,
|
|
268
277
|
borderTopRightRadius: true,
|
|
@@ -188,6 +188,10 @@ function getProcessorForType(typeName: string): ?(nextProp: any) => any {
|
|
|
188
188
|
case 'UIImage':
|
|
189
189
|
case 'RCTImageSource':
|
|
190
190
|
return resolveAssetSource;
|
|
191
|
+
case 'BoxShadowArray':
|
|
192
|
+
return processBoxShadow;
|
|
193
|
+
case 'FilterArray':
|
|
194
|
+
return processFilter;
|
|
191
195
|
// Android Types
|
|
192
196
|
case 'Color':
|
|
193
197
|
return processColor;
|
|
@@ -110,11 +110,102 @@ export interface FlexStyle {
|
|
|
110
110
|
top?: DimensionValue | undefined;
|
|
111
111
|
width?: DimensionValue | undefined;
|
|
112
112
|
zIndex?: number | undefined;
|
|
113
|
+
direction?: 'inherit' | 'ltr' | 'rtl' | undefined;
|
|
113
114
|
|
|
114
115
|
/**
|
|
115
|
-
*
|
|
116
|
+
* Equivalent to `top`, `bottom`, `right` and `left`
|
|
116
117
|
*/
|
|
117
|
-
|
|
118
|
+
inset?: DimensionValue | undefined;
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Equivalent to `top`, `bottom`
|
|
122
|
+
*/
|
|
123
|
+
insetBlock?: DimensionValue | undefined;
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Equivalent to `bottom`
|
|
127
|
+
*/
|
|
128
|
+
insetBlockEnd?: DimensionValue | undefined;
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Equivalent to `top`
|
|
132
|
+
*/
|
|
133
|
+
insetBlockStart?: DimensionValue | undefined;
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Equivalent to `right` and `left`
|
|
137
|
+
*/
|
|
138
|
+
insetInline?: DimensionValue | undefined;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Equivalent to `right` or `left`
|
|
142
|
+
*/
|
|
143
|
+
insetInlineEnd?: DimensionValue | undefined;
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Equivalent to `right` or `left`
|
|
147
|
+
*/
|
|
148
|
+
insetInlineStart?: DimensionValue | undefined;
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* Equivalent to `marginVertical`
|
|
152
|
+
*/
|
|
153
|
+
marginBlock?: DimensionValue | undefined;
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Equivalent to `marginBottom`
|
|
157
|
+
*/
|
|
158
|
+
marginBlockEnd?: DimensionValue | undefined;
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* Equivalent to `marginTop`
|
|
162
|
+
*/
|
|
163
|
+
marginBlockStart?: DimensionValue | undefined;
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Equivalent to `marginHorizontal`
|
|
167
|
+
*/
|
|
168
|
+
marginInline?: DimensionValue | undefined;
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* Equivalent to `marginEnd`
|
|
172
|
+
*/
|
|
173
|
+
marginInlineEnd?: DimensionValue | undefined;
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* Equivalent to `marginStart`
|
|
177
|
+
*/
|
|
178
|
+
marginInlineStart?: DimensionValue | undefined;
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* Equivalent to `paddingVertical`
|
|
182
|
+
*/
|
|
183
|
+
paddingBlock?: DimensionValue | undefined;
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Equivalent to `paddingBottom`
|
|
187
|
+
*/
|
|
188
|
+
paddingBlockEnd?: DimensionValue | undefined;
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* Equivalent to `paddingTop`
|
|
192
|
+
*/
|
|
193
|
+
paddingBlockStart?: DimensionValue | undefined;
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* Equivalent to `paddingHorizontal`
|
|
197
|
+
*/
|
|
198
|
+
paddingInline?: DimensionValue | undefined;
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Equivalent to `paddingEnd`
|
|
202
|
+
*/
|
|
203
|
+
paddingInlineEnd?: DimensionValue | undefined;
|
|
204
|
+
|
|
205
|
+
/**
|
|
206
|
+
* Equivalent to `paddingStart`
|
|
207
|
+
*/
|
|
208
|
+
paddingInlineStart?: DimensionValue | undefined;
|
|
118
209
|
}
|
|
119
210
|
|
|
120
211
|
export interface ShadowStyleIOS {
|
|
@@ -239,16 +330,16 @@ export type FilterFunction =
|
|
|
239
330
|
| {opacity: number | string}
|
|
240
331
|
| {saturate: number | string}
|
|
241
332
|
| {sepia: number | string}
|
|
242
|
-
| {dropShadow:
|
|
333
|
+
| {dropShadow: DropShadowValue | string};
|
|
243
334
|
|
|
244
|
-
export type
|
|
335
|
+
export type DropShadowValue = {
|
|
245
336
|
offsetX: number | string;
|
|
246
337
|
offsetY: number | string;
|
|
247
338
|
standardDeviation?: number | string | undefined;
|
|
248
339
|
color?: ColorValue | number | undefined;
|
|
249
340
|
};
|
|
250
341
|
|
|
251
|
-
export type
|
|
342
|
+
export type BoxShadowValue = {
|
|
252
343
|
offsetX: number | string;
|
|
253
344
|
offsetY: number | string;
|
|
254
345
|
color?: string | undefined;
|
|
@@ -336,6 +427,8 @@ export interface ViewStyle extends FlexStyle, ShadowStyleIOS, TransformsStyle {
|
|
|
336
427
|
pointerEvents?: 'box-none' | 'none' | 'box-only' | 'auto' | undefined;
|
|
337
428
|
isolation?: 'auto' | 'isolate' | undefined;
|
|
338
429
|
cursor?: CursorValue | undefined;
|
|
430
|
+
boxShadow?: ReadonlyArray<BoxShadowValue> | string | undefined;
|
|
431
|
+
filter?: ReadonlyArray<FilterFunction> | string | undefined;
|
|
339
432
|
}
|
|
340
433
|
|
|
341
434
|
export type FontVariant =
|
|
@@ -700,9 +700,9 @@ export type FilterFunction =
|
|
|
700
700
|
| {opacity: number | string}
|
|
701
701
|
| {saturate: number | string}
|
|
702
702
|
| {sepia: number | string}
|
|
703
|
-
| {dropShadow:
|
|
703
|
+
| {dropShadow: DropShadowValue | string};
|
|
704
704
|
|
|
705
|
-
export type
|
|
705
|
+
export type DropShadowValue = {
|
|
706
706
|
offsetX: number | string,
|
|
707
707
|
offsetY: number | string,
|
|
708
708
|
standardDeviation?: number | string,
|
|
@@ -719,7 +719,7 @@ export type GradientValue = {
|
|
|
719
719
|
}>,
|
|
720
720
|
};
|
|
721
721
|
|
|
722
|
-
export type
|
|
722
|
+
export type BoxShadowValue = {
|
|
723
723
|
offsetX: number | string,
|
|
724
724
|
offsetY: number | string,
|
|
725
725
|
color?: ____ColorValue_Internal,
|
|
@@ -788,8 +788,8 @@ export type ____ViewStyle_InternalCore = $ReadOnly<{
|
|
|
788
788
|
elevation?: number,
|
|
789
789
|
pointerEvents?: 'auto' | 'none' | 'box-none' | 'box-only',
|
|
790
790
|
cursor?: CursorValue,
|
|
791
|
-
|
|
792
|
-
|
|
791
|
+
boxShadow?: $ReadOnlyArray<BoxShadowValue> | string,
|
|
792
|
+
filter?: $ReadOnlyArray<FilterFunction> | string,
|
|
793
793
|
experimental_mixBlendMode?: ____BlendMode_Internal,
|
|
794
794
|
experimental_backgroundImage?: $ReadOnlyArray<GradientValue> | string,
|
|
795
795
|
isolation?: 'auto' | 'isolate',
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
12
|
import type {ProcessedColorValue} from './processColor';
|
|
13
|
-
import type {
|
|
13
|
+
import type {BoxShadowValue} from './StyleSheetTypes';
|
|
14
14
|
|
|
15
15
|
import processColor from './processColor';
|
|
16
16
|
|
|
@@ -24,7 +24,7 @@ export type ParsedBoxShadow = {
|
|
|
24
24
|
};
|
|
25
25
|
|
|
26
26
|
export default function processBoxShadow(
|
|
27
|
-
rawBoxShadows: ?($ReadOnlyArray<
|
|
27
|
+
rawBoxShadows: ?($ReadOnlyArray<BoxShadowValue> | string),
|
|
28
28
|
): Array<ParsedBoxShadow> {
|
|
29
29
|
const result: Array<ParsedBoxShadow> = [];
|
|
30
30
|
if (rawBoxShadows == null) {
|
|
@@ -106,16 +106,14 @@ export default function processBoxShadow(
|
|
|
106
106
|
return result;
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
function parseBoxShadowString(
|
|
110
|
-
|
|
111
|
-
): Array<BoxShadowPrimitive> {
|
|
112
|
-
let result: Array<BoxShadowPrimitive> = [];
|
|
109
|
+
function parseBoxShadowString(rawBoxShadows: string): Array<BoxShadowValue> {
|
|
110
|
+
let result: Array<BoxShadowValue> = [];
|
|
113
111
|
|
|
114
112
|
for (const rawBoxShadow of rawBoxShadows
|
|
115
113
|
.split(/,(?![^()]*\))/) // split by comma that is not in parenthesis
|
|
116
114
|
.map(bS => bS.trim())
|
|
117
115
|
.filter(bS => bS !== '')) {
|
|
118
|
-
const boxShadow:
|
|
116
|
+
const boxShadow: BoxShadowValue = {
|
|
119
117
|
offsetX: 0,
|
|
120
118
|
offsetY: 0,
|
|
121
119
|
};
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
'use strict';
|
|
13
13
|
|
|
14
14
|
import type {ColorValue} from './StyleSheet';
|
|
15
|
-
import type {
|
|
15
|
+
import type {DropShadowValue, FilterFunction} from './StyleSheetTypes';
|
|
16
16
|
|
|
17
17
|
import processColor from './processColor';
|
|
18
18
|
|
|
@@ -179,7 +179,7 @@ function _getFilterAmount(filterName: string, filterArgs: mixed): ?number {
|
|
|
179
179
|
}
|
|
180
180
|
|
|
181
181
|
function parseDropShadow(
|
|
182
|
-
rawDropShadow: string |
|
|
182
|
+
rawDropShadow: string | DropShadowValue,
|
|
183
183
|
): ?ParsedDropShadow {
|
|
184
184
|
const dropShadow =
|
|
185
185
|
typeof rawDropShadow === 'string'
|
|
@@ -248,8 +248,8 @@ function parseDropShadow(
|
|
|
248
248
|
return parsedDropShadow;
|
|
249
249
|
}
|
|
250
250
|
|
|
251
|
-
function parseDropShadowString(rawDropShadow: string): ?
|
|
252
|
-
const dropShadow:
|
|
251
|
+
function parseDropShadowString(rawDropShadow: string): ?DropShadowValue {
|
|
252
|
+
const dropShadow: DropShadowValue = {
|
|
253
253
|
offsetX: 0,
|
|
254
254
|
offsetY: 0,
|
|
255
255
|
};
|
|
@@ -153,11 +153,12 @@ const HMRClient: HMRClientNativeInterface = {
|
|
|
153
153
|
level: 'info',
|
|
154
154
|
data: [
|
|
155
155
|
'\n' +
|
|
156
|
-
'\
|
|
157
|
-
' \
|
|
158
|
-
'
|
|
159
|
-
'
|
|
160
|
-
'
|
|
156
|
+
'\u001B[7m' +
|
|
157
|
+
' \u001B[1m💡 JavaScript logs will be removed from Metro in React ' +
|
|
158
|
+
'Native 0.77!\u001B[22m Please use React Native DevTools as your ' +
|
|
159
|
+
'default tool. Tip: Type \u001B[1mj\u001B[22m in the terminal to ' +
|
|
160
|
+
'open (requires Google Chrome or Microsoft Edge).' +
|
|
161
|
+
'\u001B[27m' +
|
|
161
162
|
'\n',
|
|
162
163
|
],
|
|
163
164
|
}),
|
|
@@ -10,11 +10,11 @@
|
|
|
10
10
|
-->
|
|
11
11
|
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
12
12
|
<PropertyGroup>
|
|
13
|
-
<ReactNativeWindowsVersion>0.76.0-preview.
|
|
13
|
+
<ReactNativeWindowsVersion>0.76.0-preview.2</ReactNativeWindowsVersion>
|
|
14
14
|
<ReactNativeWindowsMajor>0</ReactNativeWindowsMajor>
|
|
15
15
|
<ReactNativeWindowsMinor>76</ReactNativeWindowsMinor>
|
|
16
16
|
<ReactNativeWindowsPatch>0</ReactNativeWindowsPatch>
|
|
17
17
|
<ReactNativeWindowsCanary>false</ReactNativeWindowsCanary>
|
|
18
|
-
<ReactNativeWindowsCommitId>
|
|
18
|
+
<ReactNativeWindowsCommitId>c1536386579b67da32092327aacbb821730dab02</ReactNativeWindowsCommitId>
|
|
19
19
|
</PropertyGroup>
|
|
20
20
|
</Project>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-windows",
|
|
3
|
-
"version": "0.76.0-preview.
|
|
3
|
+
"version": "0.76.0-preview.2",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -23,21 +23,23 @@
|
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@babel/runtime": "^7.0.0",
|
|
25
25
|
"@jest/create-cache-key-function": "^29.6.3",
|
|
26
|
-
"@react-native-community/cli": "
|
|
27
|
-
"@react-native-community/cli-platform-android": "
|
|
28
|
-
"@react-native-community/cli-platform-ios": "
|
|
29
|
-
"@react-native-windows/cli": "0.76.0-preview.
|
|
26
|
+
"@react-native-community/cli": "15.0.0-alpha.2",
|
|
27
|
+
"@react-native-community/cli-platform-android": "15.0.0-alpha.2",
|
|
28
|
+
"@react-native-community/cli-platform-ios": "15.0.0-alpha.2",
|
|
29
|
+
"@react-native-windows/cli": "0.76.0-preview.2",
|
|
30
30
|
"@react-native/assets": "1.0.0",
|
|
31
|
-
"@react-native/assets-registry": "0.76.0-rc.
|
|
32
|
-
"@react-native/codegen": "0.76.0-rc.
|
|
33
|
-
"@react-native/community-cli-plugin": "0.76.0-rc.
|
|
34
|
-
"@react-native/gradle-plugin": "0.76.0-rc.
|
|
35
|
-
"@react-native/js-polyfills": "0.76.0-rc.
|
|
36
|
-
"@react-native/normalize-colors": "0.76.0-rc.
|
|
37
|
-
"@react-native/virtualized-lists": "0.76.0-rc.
|
|
31
|
+
"@react-native/assets-registry": "0.76.0-rc.4",
|
|
32
|
+
"@react-native/codegen": "0.76.0-rc.4",
|
|
33
|
+
"@react-native/community-cli-plugin": "0.76.0-rc.4",
|
|
34
|
+
"@react-native/gradle-plugin": "0.76.0-rc.4",
|
|
35
|
+
"@react-native/js-polyfills": "0.76.0-rc.4",
|
|
36
|
+
"@react-native/normalize-colors": "0.76.0-rc.4",
|
|
37
|
+
"@react-native/virtualized-lists": "0.76.0-rc.4",
|
|
38
38
|
"abort-controller": "^3.0.0",
|
|
39
39
|
"anser": "^1.4.9",
|
|
40
40
|
"ansi-regex": "^5.0.0",
|
|
41
|
+
"babel-jest": "^29.7.0",
|
|
42
|
+
"babel-plugin-syntax-hermes-parser": "^0.23.1",
|
|
41
43
|
"base64-js": "^1.5.1",
|
|
42
44
|
"chalk": "^4.0.0",
|
|
43
45
|
"commander": "^12.0.0",
|
|
@@ -48,8 +50,8 @@
|
|
|
48
50
|
"jest-environment-node": "^29.6.3",
|
|
49
51
|
"jsc-android": "^250231.0.0",
|
|
50
52
|
"memoize-one": "^5.0.0",
|
|
51
|
-
"metro-runtime": "^0.
|
|
52
|
-
"metro-source-map": "^0.
|
|
53
|
+
"metro-runtime": "^0.81.0-alpha.2",
|
|
54
|
+
"metro-source-map": "^0.81.0-alpha.2",
|
|
53
55
|
"mkdirp": "^0.5.1",
|
|
54
56
|
"nullthrows": "^1.1.1",
|
|
55
57
|
"pretty-format": "^29.7.0",
|
|
@@ -84,7 +86,7 @@
|
|
|
84
86
|
"just-scripts": "^1.3.3",
|
|
85
87
|
"prettier": "2.8.8",
|
|
86
88
|
"react": "18.3.1",
|
|
87
|
-
"react-native": "0.76.0-rc.
|
|
89
|
+
"react-native": "0.76.0-rc.4",
|
|
88
90
|
"react-native-platform-override": "^1.9.46",
|
|
89
91
|
"react-refresh": "^0.14.0",
|
|
90
92
|
"typescript": "5.0.4"
|
|
@@ -92,7 +94,7 @@
|
|
|
92
94
|
"peerDependencies": {
|
|
93
95
|
"@types/react": "^18.2.6",
|
|
94
96
|
"react": "^18.2.0",
|
|
95
|
-
"react-native": "0.76.0-rc.
|
|
97
|
+
"react-native": "0.76.0-rc.4"
|
|
96
98
|
},
|
|
97
99
|
"beachball": {
|
|
98
100
|
"defaultNpmTag": "preview",
|
|
@@ -144,7 +146,9 @@
|
|
|
144
146
|
"/metro-react-native-platform.js",
|
|
145
147
|
"/metro.config.js",
|
|
146
148
|
"/react-native.config.js",
|
|
147
|
-
"/rn-get-polyfills.js"
|
|
149
|
+
"/rn-get-polyfills.js",
|
|
150
|
+
"!packages.lock.json",
|
|
151
|
+
"!packages.fabric.lock.json"
|
|
148
152
|
],
|
|
149
153
|
"promoteRelease": true,
|
|
150
154
|
"engines": {
|
|
@@ -13,15 +13,17 @@ import type {ViewProps} from '../../../Libraries/Components/View/ViewPropTypes';
|
|
|
13
13
|
import Platform from '../../../Libraries/Utilities/Platform';
|
|
14
14
|
import View from '../../../Libraries/Components/View/View';
|
|
15
15
|
import * as React from 'react';
|
|
16
|
-
export * from '../../../src/private/specs/components/RCTSafeAreaViewNativeComponent';
|
|
17
|
-
import RCTSafeAreaViewNativeComponent from '../../../src/private/specs/components/RCTSafeAreaViewNativeComponent';
|
|
18
16
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
17
|
+
const exported: React.AbstractComponent<
|
|
18
|
+
ViewProps,
|
|
19
|
+
React.ElementRef<typeof View>,
|
|
20
|
+
> = Platform.select({
|
|
21
|
+
ios: require('../../../src/private/specs/components/RCTSafeAreaViewNativeComponent')
|
|
22
|
+
.default,
|
|
23
|
+
android:
|
|
24
|
+
require('../../../src/private/specs/components/RCTSafeAreaViewNativeComponent')
|
|
25
|
+
.default,
|
|
26
|
+
default: View,
|
|
27
|
+
});
|
|
26
28
|
|
|
27
29
|
export default exported;
|