@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 CHANGED
@@ -2,7 +2,37 @@
2
2
  "name": "@office-iss/react-native-win32",
3
3
  "entries": [
4
4
  {
5
- "date": "Fri, 20 Dec 2024 18:20:31 GMT",
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 Fri, 20 Dec 2024 18:20:31 GMT and should not be manually modified. -->
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.1
7
+ ## 0.77.0-preview.3
8
8
 
9
- Fri, 20 Dec 2024 18:20:31 GMT
9
+ Mon, 13 Jan 2025 16:30:43 GMT
10
10
 
11
11
  ### Changes
12
12
 
13
- - Promote 0.77 to preview (email not defined)
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 Object.hasOwn(SUPPORTED_COLOR_STYLES, prop);
109
+ return SUPPORTED_COLOR_STYLES.hasOwnProperty(prop);
110
110
  }
111
111
 
112
112
  export function isSupportedInterpolationParam(param: string): boolean {
113
- return Object.hasOwn(SUPPORTED_INTERPOLATION_PARAMS, param);
113
+ return SUPPORTED_INTERPOLATION_PARAMS.hasOwnProperty(param);
114
114
  }
115
115
 
116
116
  export function isSupportedStyleProp(prop: string): boolean {
117
- return Object.hasOwn(SUPPORTED_STYLES, prop);
117
+ return SUPPORTED_STYLES.hasOwnProperty(prop);
118
118
  }
119
119
 
120
120
  export function isSupportedTransformProp(prop: string): boolean {
121
- return Object.hasOwn(SUPPORTED_TRANSFORMS, prop);
121
+ return SUPPORTED_TRANSFORMS.hasOwnProperty(prop);
122
122
  }
@@ -165,7 +165,7 @@ export default class Animation {
165
165
  const callback = this.#onEnd;
166
166
  if (callback != null) {
167
167
  this.#onEnd = null;
168
- queueMicrotask(() => callback(result));
168
+ callback(result);
169
169
  }
170
170
  }
171
171
  }
@@ -37,7 +37,7 @@ function createAnimatedProps(
37
37
  const key = keys[ii];
38
38
  const value = inputProps[key];
39
39
 
40
- if (allowlist == null || Object.hasOwn(allowlist, key)) {
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 || Object.hasOwn(allowlist, key)) {
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));
@@ -17,7 +17,7 @@ const version: $ReadOnly<{
17
17
  major: 0,
18
18
  minor: 77,
19
19
  patch: 0,
20
- prerelease: 'rc.0',
20
+ prerelease: 'rc.6',
21
21
  };
22
22
 
23
23
  module.exports = {version};
@@ -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'] += `; filename="${
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
@@ -7,7 +7,7 @@
7
7
  "**/__snapshots__/**",
8
8
  "src-win/rntypes/**"
9
9
  ],
10
- "baseVersion": "0.77.0-rc.0",
10
+ "baseVersion": "0.77.0-rc.6",
11
11
  "overrides": [
12
12
  {
13
13
  "type": "derived",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@office-iss/react-native-win32",
3
- "version": "0.77.0-preview.1",
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.0",
34
- "@react-native/codegen": "0.77.0-rc.0",
35
- "@react-native/community-cli-plugin": "0.77.0-rc.0",
36
- "@react-native/gradle-plugin": "0.77.0-rc.0",
37
- "@react-native/js-polyfills": "0.77.0-rc.0",
38
- "@react-native/normalize-colors": "0.77.0-rc.0",
39
- "@react-native/virtualized-lists": "0.77.0-rc.0",
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.0",
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.0"
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 || Object.hasOwn(allowlist, key)) {
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 || Object.hasOwn(allowlist, key)) {
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 (!Object.hasOwn(next, key)) {
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
- !Object.hasOwn(nullthrows(next), key) ||
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));