@appium/support 7.2.1 → 7.2.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.
@@ -42,9 +42,9 @@ export declare function createPlist(object: object, binary?: boolean): Buffer |
42
42
  /**
43
43
  * Parses a buffer or string into a JS object
44
44
  *
45
- * @param data - The plist as a string or Buffer
45
+ * @param data - The plist as a string, Buffer, Uint8Array, or ArrayBuffer
46
46
  * @returns Parsed plist as a JS object
47
47
  * @throws Will throw an error if the plist type is unknown
48
48
  */
49
- export declare function parsePlist(data: string | Buffer): object;
49
+ export declare function parsePlist(data: string | Buffer | Uint8Array | ArrayBuffer): object;
50
50
  //# sourceMappingURL=plist.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plist.d.ts","sourceRoot":"","sources":["../../lib/plist.ts"],"names":[],"mappings":"AAgBA;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,MAAM,EACb,SAAS,UAAO,EAChB,KAAK,UAAO,GACX,OAAO,CAAC,MAAM,CAAC,CAmCjB;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,MAAM,UAAO,EACb,SAAS,UAAO,EAChB,KAAK,UAAO,GACX,OAAO,CAAC,IAAI,CAAC,CAiBf;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEvD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,UAAQ,GAAG,MAAM,GAAG,MAAM,CAK3E;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAcxD"}
1
+ {"version":3,"file":"plist.d.ts","sourceRoot":"","sources":["../../lib/plist.ts"],"names":[],"mappings":"AAgBA;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,MAAM,EACb,SAAS,UAAO,EAChB,KAAK,UAAO,GACX,OAAO,CAAC,MAAM,CAAC,CAmCjB;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,MAAM,UAAO,EACb,SAAS,UAAO,EAChB,KAAK,UAAO,GACX,OAAO,CAAC,IAAI,CAAC,CAiBf;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAEvD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,UAAQ,GAAG,MAAM,GAAG,MAAM,CAK3E;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,MAAM,CAcnF"}
@@ -129,7 +129,7 @@ function createPlist(object, binary = false) {
129
129
  /**
130
130
  * Parses a buffer or string into a JS object
131
131
  *
132
- * @param data - The plist as a string or Buffer
132
+ * @param data - The plist as a string, Buffer, Uint8Array, or ArrayBuffer
133
133
  * @returns Parsed plist as a JS object
134
134
  * @throws Will throw an error if the plist type is unknown
135
135
  */
@@ -152,9 +152,10 @@ function getXmlPlist(data) {
152
152
  if (typeof data === 'string' && data.startsWith(PLIST_IDENTIFIER.TEXT)) {
153
153
  return data;
154
154
  }
155
- if (Buffer.isBuffer(data) &&
156
- PLIST_IDENTIFIER.BUFFER.compare(data, 0, PLIST_IDENTIFIER.BUFFER.length) === 0) {
157
- return data.toString();
155
+ const binaryData = toBufferIfBinaryLike(data);
156
+ if (binaryData &&
157
+ PLIST_IDENTIFIER.BUFFER.compare(binaryData, 0, PLIST_IDENTIFIER.BUFFER.length) === 0) {
158
+ return binaryData.toString();
158
159
  }
159
160
  return null;
160
161
  }
@@ -162,10 +163,23 @@ function getBinaryPlist(data) {
162
163
  if (typeof data === 'string' && data.startsWith(BPLIST_IDENTIFIER.TEXT)) {
163
164
  return Buffer.from(data);
164
165
  }
165
- if (Buffer.isBuffer(data) &&
166
- BPLIST_IDENTIFIER.BUFFER.compare(data, 0, BPLIST_IDENTIFIER.BUFFER.length) === 0) {
166
+ const binaryData = toBufferIfBinaryLike(data);
167
+ if (binaryData &&
168
+ BPLIST_IDENTIFIER.BUFFER.compare(binaryData, 0, BPLIST_IDENTIFIER.BUFFER.length) === 0) {
169
+ return binaryData;
170
+ }
171
+ return null;
172
+ }
173
+ function toBufferIfBinaryLike(data) {
174
+ if (Buffer.isBuffer(data)) {
167
175
  return data;
168
176
  }
177
+ if (data instanceof Uint8Array) {
178
+ return Buffer.from(data.buffer, data.byteOffset, data.byteLength);
179
+ }
180
+ if (data instanceof ArrayBuffer) {
181
+ return Buffer.from(data);
182
+ }
169
183
  return null;
170
184
  }
171
185
  //# sourceMappingURL=plist.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plist.js","sourceRoot":"","sources":["../../lib/plist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plist.js","sourceRoot":"","sources":["../../lib/plist.ts"],"names":[],"mappings":"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"}
package/lib/plist.ts CHANGED
@@ -134,11 +134,11 @@ export function createPlist(object: object, binary = false): Buffer | string {
134
134
  /**
135
135
  * Parses a buffer or string into a JS object
136
136
  *
137
- * @param data - The plist as a string or Buffer
137
+ * @param data - The plist as a string, Buffer, Uint8Array, or ArrayBuffer
138
138
  * @returns Parsed plist as a JS object
139
139
  * @throws Will throw an error if the plist type is unknown
140
140
  */
141
- export function parsePlist(data: string | Buffer): object {
141
+ export function parsePlist(data: string | Buffer | Uint8Array | ArrayBuffer): object {
142
142
  const textPlist = getXmlPlist(data);
143
143
  if (textPlist) {
144
144
  return plistParse(textPlist);
@@ -159,29 +159,44 @@ async function parseXmlPlistFile(plistFilename: string): Promise<object> {
159
159
  return plistParse(xmlContent);
160
160
  }
161
161
 
162
- function getXmlPlist(data: string | Buffer): string | null {
162
+ function getXmlPlist(data: string | Buffer | Uint8Array | ArrayBuffer): string | null {
163
163
  if (typeof data === 'string' && data.startsWith(PLIST_IDENTIFIER.TEXT)) {
164
164
  return data;
165
165
  }
166
+ const binaryData = toBufferIfBinaryLike(data);
166
167
  if (
167
- Buffer.isBuffer(data) &&
168
- PLIST_IDENTIFIER.BUFFER.compare(data, 0, PLIST_IDENTIFIER.BUFFER.length) === 0
168
+ binaryData &&
169
+ PLIST_IDENTIFIER.BUFFER.compare(binaryData, 0, PLIST_IDENTIFIER.BUFFER.length) === 0
169
170
  ) {
170
- return data.toString();
171
+ return binaryData.toString();
171
172
  }
172
173
  return null;
173
174
  }
174
175
 
175
- function getBinaryPlist(data: string | Buffer): Buffer | null {
176
+ function getBinaryPlist(data: string | Buffer | Uint8Array | ArrayBuffer): Buffer | null {
176
177
  if (typeof data === 'string' && data.startsWith(BPLIST_IDENTIFIER.TEXT)) {
177
178
  return Buffer.from(data);
178
179
  }
179
180
 
181
+ const binaryData = toBufferIfBinaryLike(data);
180
182
  if (
181
- Buffer.isBuffer(data) &&
182
- BPLIST_IDENTIFIER.BUFFER.compare(data, 0, BPLIST_IDENTIFIER.BUFFER.length) === 0
183
+ binaryData &&
184
+ BPLIST_IDENTIFIER.BUFFER.compare(binaryData, 0, BPLIST_IDENTIFIER.BUFFER.length) === 0
183
185
  ) {
186
+ return binaryData;
187
+ }
188
+ return null;
189
+ }
190
+
191
+ function toBufferIfBinaryLike(data: unknown): Buffer | null {
192
+ if (Buffer.isBuffer(data)) {
184
193
  return data;
185
194
  }
195
+ if (data instanceof Uint8Array) {
196
+ return Buffer.from(data.buffer, data.byteOffset, data.byteLength);
197
+ }
198
+ if (data instanceof ArrayBuffer) {
199
+ return Buffer.from(data);
200
+ }
186
201
  return null;
187
202
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appium/support",
3
- "version": "7.2.1",
3
+ "version": "7.2.2",
4
4
  "description": "Support libs used across Appium packages",
5
5
  "keywords": [
6
6
  "automation",
@@ -84,5 +84,5 @@
84
84
  "publishConfig": {
85
85
  "access": "public"
86
86
  },
87
- "gitHead": "fd6dbe9eff4b52bd5436811ae71b0425c0ebfff4"
87
+ "gitHead": "f5369c65a8dfe5f9a590c31d38b12b33e6e58fde"
88
88
  }