@office-iss/react-native-win32 0.77.0-preview.1 → 0.77.0-preview.3
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/CHANGELOG.json +31 -1
- package/CHANGELOG.md +20 -4
- package/Libraries/Animated/NativeAnimatedAllowlist.js +4 -4
- package/Libraries/Animated/animations/Animation.js +1 -1
- package/Libraries/Animated/nodes/AnimatedProps.js +9 -1
- package/Libraries/Animated/nodes/AnimatedStyle.js +9 -1
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Network/FormData.js +11 -3
- package/overrides.json +1 -1
- package/package.json +10 -10
- package/src/private/animated/useAnimatedPropsMemo.js +12 -4
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,37 @@
|
|
|
2
2
|
"name": "@office-iss/react-native-win32",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
5
|
+
"date": "Mon, 13 Jan 2025 16:30:43 GMT",
|
|
6
|
+
"version": "0.77.0-preview.3",
|
|
7
|
+
"tag": "@office-iss/react-native-win32_v0.77.0-preview.3",
|
|
8
|
+
"comments": {
|
|
9
|
+
"prerelease": [
|
|
10
|
+
{
|
|
11
|
+
"author": "email not defined",
|
|
12
|
+
"package": "@office-iss/react-native-win32",
|
|
13
|
+
"commit": "3a58db4f992f73beeab329959e650a2b03df60c8",
|
|
14
|
+
"comment": "integrate 0.77.0-rc.6"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"date": "Tue, 07 Jan 2025 01:01:23 GMT",
|
|
21
|
+
"version": "0.77.0-preview.2",
|
|
22
|
+
"tag": "@office-iss/react-native-win32_v0.77.0-preview.2",
|
|
23
|
+
"comments": {
|
|
24
|
+
"prerelease": [
|
|
25
|
+
{
|
|
26
|
+
"author": "email not defined",
|
|
27
|
+
"package": "@office-iss/react-native-win32",
|
|
28
|
+
"commit": "e70d4987c0929e4eb4125342c53cf6566e19af00",
|
|
29
|
+
"comment": "integrate rn 0.77.0-rc.4"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"date": "Fri, 20 Dec 2024 18:21:24 GMT",
|
|
6
36
|
"version": "0.77.0-preview.1",
|
|
7
37
|
"tag": "@office-iss/react-native-win32_v0.77.0-preview.1",
|
|
8
38
|
"comments": {
|
package/CHANGELOG.md
CHANGED
|
@@ -1,17 +1,33 @@
|
|
|
1
1
|
# Change Log - @office-iss/react-native-win32
|
|
2
2
|
|
|
3
|
-
<!-- This log was last generated on
|
|
3
|
+
<!-- This log was last generated on Mon, 13 Jan 2025 16:30:43 GMT and should not be manually modified. -->
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
-
## 0.77.0-preview.
|
|
7
|
+
## 0.77.0-preview.3
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Mon, 13 Jan 2025 16:30:43 GMT
|
|
10
10
|
|
|
11
11
|
### Changes
|
|
12
12
|
|
|
13
|
-
-
|
|
13
|
+
- integrate 0.77.0-rc.6 (email not defined)
|
|
14
14
|
|
|
15
|
+
## 0.77.0-preview.2
|
|
16
|
+
|
|
17
|
+
Tue, 07 Jan 2025 01:01:23 GMT
|
|
18
|
+
|
|
19
|
+
### Changes
|
|
20
|
+
|
|
21
|
+
- integrate rn 0.77.0-rc.4 (email not defined)
|
|
22
|
+
|
|
23
|
+
## 0.77.0-preview.1
|
|
24
|
+
|
|
25
|
+
Fri, 20 Dec 2024 18:21:24 GMT
|
|
26
|
+
|
|
27
|
+
### Changes
|
|
28
|
+
|
|
29
|
+
- Promote 0.77 to preview (email not defined)
|
|
30
|
+
|
|
15
31
|
## 0.0.0-canary.276
|
|
16
32
|
|
|
17
33
|
Wed, 18 Dec 2024 06:22:23 GMT
|
|
@@ -106,17 +106,17 @@ export function allowTransformProp(prop: string): void {
|
|
|
106
106
|
}
|
|
107
107
|
|
|
108
108
|
export function isSupportedColorStyleProp(prop: string): boolean {
|
|
109
|
-
return
|
|
109
|
+
return SUPPORTED_COLOR_STYLES.hasOwnProperty(prop);
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
export function isSupportedInterpolationParam(param: string): boolean {
|
|
113
|
-
return
|
|
113
|
+
return SUPPORTED_INTERPOLATION_PARAMS.hasOwnProperty(param);
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
export function isSupportedStyleProp(prop: string): boolean {
|
|
117
|
-
return
|
|
117
|
+
return SUPPORTED_STYLES.hasOwnProperty(prop);
|
|
118
118
|
}
|
|
119
119
|
|
|
120
120
|
export function isSupportedTransformProp(prop: string): boolean {
|
|
121
|
-
return
|
|
121
|
+
return SUPPORTED_TRANSFORMS.hasOwnProperty(prop);
|
|
122
122
|
}
|
|
@@ -37,7 +37,7 @@ function createAnimatedProps(
|
|
|
37
37
|
const key = keys[ii];
|
|
38
38
|
const value = inputProps[key];
|
|
39
39
|
|
|
40
|
-
if (allowlist == null ||
|
|
40
|
+
if (allowlist == null || hasOwn(allowlist, key)) {
|
|
41
41
|
let node;
|
|
42
42
|
if (key === 'style') {
|
|
43
43
|
node = AnimatedStyle.from(value, allowlist?.style);
|
|
@@ -271,3 +271,11 @@ export default class AnimatedProps extends AnimatedNode {
|
|
|
271
271
|
};
|
|
272
272
|
}
|
|
273
273
|
}
|
|
274
|
+
|
|
275
|
+
// Supported versions of JSC do not implement the newer Object.hasOwn. Remove
|
|
276
|
+
// this shim when they do.
|
|
277
|
+
// $FlowIgnore[method-unbinding]
|
|
278
|
+
const _hasOwnProp = Object.prototype.hasOwnProperty;
|
|
279
|
+
const hasOwn: (obj: $ReadOnly<{...}>, prop: string) => boolean =
|
|
280
|
+
// $FlowIgnore[method-unbinding]
|
|
281
|
+
Object.hasOwn ?? ((obj, prop) => _hasOwnProp.call(obj, prop));
|
|
@@ -35,7 +35,7 @@ function createAnimatedStyle(
|
|
|
35
35
|
const key = keys[ii];
|
|
36
36
|
const value = inputStyle[key];
|
|
37
37
|
|
|
38
|
-
if (allowlist == null ||
|
|
38
|
+
if (allowlist == null || hasOwn(allowlist, key)) {
|
|
39
39
|
let node;
|
|
40
40
|
if (value != null && key === 'transform') {
|
|
41
41
|
node = ReactNativeFeatureFlags.shouldUseAnimatedObjectForTransform()
|
|
@@ -241,3 +241,11 @@ export default class AnimatedStyle extends AnimatedWithChildren {
|
|
|
241
241
|
};
|
|
242
242
|
}
|
|
243
243
|
}
|
|
244
|
+
|
|
245
|
+
// Supported versions of JSC do not implement the newer Object.hasOwn. Remove
|
|
246
|
+
// this shim when they do.
|
|
247
|
+
// $FlowIgnore[method-unbinding]
|
|
248
|
+
const _hasOwnProp = Object.prototype.hasOwnProperty;
|
|
249
|
+
const hasOwn: (obj: $ReadOnly<{...}>, prop: string) => boolean =
|
|
250
|
+
// $FlowIgnore[method-unbinding]
|
|
251
|
+
Object.hasOwn ?? ((obj, prop) => _hasOwnProp.call(obj, prop));
|
|
@@ -28,6 +28,15 @@ type FormDataPart =
|
|
|
28
28
|
...
|
|
29
29
|
};
|
|
30
30
|
|
|
31
|
+
/**
|
|
32
|
+
* Encode a FormData filename compliant with RFC 2183
|
|
33
|
+
*
|
|
34
|
+
* https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition#directives
|
|
35
|
+
*/
|
|
36
|
+
function encodeFilename(filename: string): string {
|
|
37
|
+
return encodeURIComponent(filename.replace(/\//g, '_'));
|
|
38
|
+
}
|
|
39
|
+
|
|
31
40
|
/**
|
|
32
41
|
* Polyfill for XMLHttpRequest2 FormData API, allowing multipart POST requests
|
|
33
42
|
* with mixed data (string, native files) to be submitted via XMLHttpRequest.
|
|
@@ -82,9 +91,8 @@ class FormData {
|
|
|
82
91
|
// content type (cf. web Blob interface.)
|
|
83
92
|
if (typeof value === 'object' && !Array.isArray(value) && value) {
|
|
84
93
|
if (typeof value.name === 'string') {
|
|
85
|
-
headers['content-disposition'] +=
|
|
86
|
-
value.name
|
|
87
|
-
}"; filename*=utf-8''${encodeURI(value.name)}`;
|
|
94
|
+
headers['content-disposition'] +=
|
|
95
|
+
`; filename="${encodeFilename(value.name)}"`;
|
|
88
96
|
}
|
|
89
97
|
if (typeof value.type === 'string') {
|
|
90
98
|
headers['content-type'] = value.type;
|
package/overrides.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@office-iss/react-native-win32",
|
|
3
|
-
"version": "0.77.0-preview.
|
|
3
|
+
"version": "0.77.0-preview.3",
|
|
4
4
|
"description": "Implementation of react native on top of Office's Win32 platform.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -30,13 +30,13 @@
|
|
|
30
30
|
"@react-native-community/cli-platform-android": "15.0.0-alpha.2",
|
|
31
31
|
"@react-native-community/cli-platform-ios": "15.0.0-alpha.2",
|
|
32
32
|
"@react-native/assets": "1.0.0",
|
|
33
|
-
"@react-native/assets-registry": "0.77.0-rc.
|
|
34
|
-
"@react-native/codegen": "0.77.0-rc.
|
|
35
|
-
"@react-native/community-cli-plugin": "0.77.0-rc.
|
|
36
|
-
"@react-native/gradle-plugin": "0.77.0-rc.
|
|
37
|
-
"@react-native/js-polyfills": "0.77.0-rc.
|
|
38
|
-
"@react-native/normalize-colors": "0.77.0-rc.
|
|
39
|
-
"@react-native/virtualized-lists": "0.77.0-rc.
|
|
33
|
+
"@react-native/assets-registry": "0.77.0-rc.6",
|
|
34
|
+
"@react-native/codegen": "0.77.0-rc.6",
|
|
35
|
+
"@react-native/community-cli-plugin": "0.77.0-rc.6",
|
|
36
|
+
"@react-native/gradle-plugin": "0.77.0-rc.6",
|
|
37
|
+
"@react-native/js-polyfills": "0.77.0-rc.6",
|
|
38
|
+
"@react-native/normalize-colors": "0.77.0-rc.6",
|
|
39
|
+
"@react-native/virtualized-lists": "0.77.0-rc.6",
|
|
40
40
|
"abort-controller": "^3.0.0",
|
|
41
41
|
"anser": "^1.4.9",
|
|
42
42
|
"ansi-regex": "^5.0.0",
|
|
@@ -90,14 +90,14 @@
|
|
|
90
90
|
"just-scripts": "^1.3.3",
|
|
91
91
|
"prettier": "2.8.8",
|
|
92
92
|
"react": "18.3.1",
|
|
93
|
-
"react-native": "0.77.0-rc.
|
|
93
|
+
"react-native": "0.77.0-rc.6",
|
|
94
94
|
"react-native-platform-override": "^1.9.49",
|
|
95
95
|
"typescript": "5.0.4"
|
|
96
96
|
},
|
|
97
97
|
"peerDependencies": {
|
|
98
98
|
"@types/react": "^18.2.6",
|
|
99
99
|
"react": "^18.2.0",
|
|
100
|
-
"react-native": "0.77.0-rc.
|
|
100
|
+
"react-native": "0.77.0-rc.6"
|
|
101
101
|
},
|
|
102
102
|
"beachball": {
|
|
103
103
|
"defaultNpmTag": "preview",
|
|
@@ -113,7 +113,7 @@ export function createCompositeKeyForProps(
|
|
|
113
113
|
const key = keys[ii];
|
|
114
114
|
const value = props[key];
|
|
115
115
|
|
|
116
|
-
if (allowlist == null ||
|
|
116
|
+
if (allowlist == null || hasOwn(allowlist, key)) {
|
|
117
117
|
let compositeKeyComponent;
|
|
118
118
|
if (key === 'style') {
|
|
119
119
|
// $FlowFixMe[incompatible-call] - `style` is a valid argument.
|
|
@@ -205,7 +205,7 @@ function createCompositeKeyForObject(
|
|
|
205
205
|
for (let ii = 0, length = keys.length; ii < length; ii++) {
|
|
206
206
|
const key = keys[ii];
|
|
207
207
|
|
|
208
|
-
if (allowlist == null ||
|
|
208
|
+
if (allowlist == null || hasOwn(allowlist, key)) {
|
|
209
209
|
const value = object[key];
|
|
210
210
|
|
|
211
211
|
let compositeKeyComponent;
|
|
@@ -250,7 +250,7 @@ export function areCompositeKeysEqual(
|
|
|
250
250
|
}
|
|
251
251
|
for (let ii = 0; ii < length; ii++) {
|
|
252
252
|
const key = keys[ii];
|
|
253
|
-
if (!
|
|
253
|
+
if (!hasOwn(next, key)) {
|
|
254
254
|
return false;
|
|
255
255
|
}
|
|
256
256
|
const prevComponent = prev[key];
|
|
@@ -336,7 +336,7 @@ function areCompositeKeyComponentsEqual(
|
|
|
336
336
|
for (let ii = 0; ii < length; ii++) {
|
|
337
337
|
const key = keys[ii];
|
|
338
338
|
if (
|
|
339
|
-
!
|
|
339
|
+
!hasOwn(nullthrows(next), key) ||
|
|
340
340
|
!areCompositeKeyComponentsEqual(prev[key], next[key])
|
|
341
341
|
) {
|
|
342
342
|
return false;
|
|
@@ -346,3 +346,11 @@ function areCompositeKeyComponentsEqual(
|
|
|
346
346
|
}
|
|
347
347
|
return false;
|
|
348
348
|
}
|
|
349
|
+
|
|
350
|
+
// Supported versions of JSC do not implement the newer Object.hasOwn. Remove
|
|
351
|
+
// this shim when they do.
|
|
352
|
+
// $FlowIgnore[method-unbinding]
|
|
353
|
+
const _hasOwnProp = Object.prototype.hasOwnProperty;
|
|
354
|
+
const hasOwn: (obj: $ReadOnly<{...}>, prop: string) => boolean =
|
|
355
|
+
// $FlowIgnore[method-unbinding]
|
|
356
|
+
Object.hasOwn ?? ((obj, prop) => _hasOwnProp.call(obj, prop));
|