@appium/support 6.0.3 → 6.0.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"mjpeg.d.ts","sourceRoot":"","sources":["../../lib/mjpeg.js"],"names":[],"mappings":"AA+BA,+DAA+D;AAC/D;IAME;;;;;;OAMG;IACH,sBALW,MAAM,qCAGN,MAAM,EAQhB;IAlBD;;OAEG;IACH,aAFU,MAAM,CAEA;IAYd,uBAAgC;IAChC,YAAmB;IAIrB;;;;;OAKG;IACH,uBAHc,MAAM,OAAA,CAQnB;IAED;;;;;OAKG;IACH,gBAHa,OAAO,CAAC,MAAM,OAAC,CAAC,CAc5B;IAED;;;;;OAKG;IACH,sBAHa,OAAO,CAAC,MAAM,OAAC,CAAC,CAM5B;IAED;;OAEG;IACH,cAOC;IANC,4EAAgC;IAChC,iEAAgC;IAChC,oBAA0B;IAC1B,cAAoB;IACpB,sDAAqB;IAIvB;;OAEG;IACH,6CAwDC;IAED;;;OAGG;IACH,aAWC;IAED;;;;;OAKG;IACH,qBAFW,MAAM,WAYhB;CACF;yBAvMsB,QAAQ"}
1
+ {"version":3,"file":"mjpeg.d.ts","sourceRoot":"","sources":["../../lib/mjpeg.js"],"names":[],"mappings":"AA+BA,+DAA+D;AAC/D;IAME;;;;;;OAMG;IACH,sBALW,MAAM,qCAGN,MAAM,EAQhB;IAlBD;;OAEG;IACH,aAFU,MAAM,CAEA;IAYd,uBAAgC;IAChC,YAAmB;IAIrB;;;;;OAKG;IACH,uBAHc,MAAM,OAAA,CAQnB;IAED;;;;;OAKG;IACH,gBAHa,OAAO,CAAC,MAAM,OAAC,CAAC,CAc5B;IAED;;;;;OAKG;IACH,sBAHa,OAAO,CAAC,MAAM,OAAC,CAAC,CAM5B;IAED;;OAEG;IACH,cAOC;IANC,4EAAgC;IAChC,iEAAgC;IAChC,oBAA0B;IAC1B,cAAoB;IACpB,sDAAqB;IAIvB;;OAEG;IACH,6CAyDC;IAED;;;OAGG;IACH,aAWC;IAED;;;;;OAKG;IACH,qBAFW,MAAM,WAYhB;CACF;yBAxMsB,QAAQ"}
@@ -108,17 +108,19 @@ class MJpegStream extends stream_1.Writable {
108
108
  this.stop();
109
109
  await initMJpegConsumer();
110
110
  this.consumer = new MJpegConsumer();
111
- // use the deferred pattern so we can wait for the start of the stream
112
- // based on what comes in from an external pipe
113
- const startPromise = new bluebird_1.default((res, rej) => {
114
- this.registerStartSuccess = res;
115
- this.registerStartFailure = rej;
116
- })
117
- // start a timeout so that if the server does not return data, we don't
118
- // block forever.
119
- .timeout(serverTimeout, `Waited ${serverTimeout}ms but the MJPEG server never sent any images`);
120
111
  const url = this.url;
121
- const onErr = (err) => {
112
+ try {
113
+ this.responseStream = (await (0, axios_1.default)({
114
+ url,
115
+ responseType: 'stream',
116
+ timeout: serverTimeout,
117
+ })).data;
118
+ }
119
+ catch (e) {
120
+ throw new Error(`Cannot connect to the MJPEG stream at ${url}. ` +
121
+ `Original error: ${lodash_1.default.has(e, 'response') ? JSON.stringify(e.response) : /** @type {Error} */ (e).message}`);
122
+ }
123
+ const onErr = (/** @type {Error} */ err) => {
122
124
  // Make sure we don't get an outdated screenshot if there was an error
123
125
  this.lastChunk = null;
124
126
  logger_1.default.error(`Error getting MJpeg screenshot chunk: ${err.message}`);
@@ -131,16 +133,15 @@ class MJpegStream extends stream_1.Writable {
131
133
  logger_1.default.debug(`The connection to MJPEG server at ${url} has been closed`);
132
134
  this.lastChunk = null;
133
135
  };
134
- try {
135
- this.responseStream = (await (0, axios_1.default)({
136
- url,
137
- responseType: 'stream',
138
- timeout: serverTimeout,
139
- })).data;
140
- }
141
- catch (e) {
142
- return onErr(e);
143
- }
136
+ // use the deferred pattern so we can wait for the start of the stream
137
+ // based on what comes in from an external pipe
138
+ const startPromise = new bluebird_1.default((res, rej) => {
139
+ this.registerStartSuccess = res;
140
+ this.registerStartFailure = rej;
141
+ })
142
+ // start a timeout so that if the server does not return data, we don't
143
+ // block forever.
144
+ .timeout(serverTimeout, `Waited ${serverTimeout}ms but the MJPEG server never sent any images`);
144
145
  this.responseStream
145
146
  .once('close', onClose)
146
147
  .on('error', onErr) // ensure we do something with errors
@@ -1 +1 @@
1
- {"version":3,"file":"mjpeg.js","sourceRoot":"","sources":["../../lib/mjpeg.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mjpeg.js","sourceRoot":"","sources":["../../lib/mjpeg.js"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AACvB,sDAA2B;AAC3B,wDAAyB;AACzB,6CAA0C;AAC1C,mCAAgC;AAChC,iCAAsC;AACtC,kDAA0B;AAE1B,+CAA+C;AAC/C,IAAI,aAAa,GAAG,IAAI,CAAC;AAEzB;;GAEG;AACH,KAAK,UAAU,iBAAiB;IAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,IAAI,CAAC;YACH,aAAa,GAAG,MAAM,IAAA,qBAAc,EAAC,gBAAgB,CAAC,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IACD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CACb,qEAAqE;YACnE,uEAAuE,CAC1E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,2DAA2D;AAC3D,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAEtC,+DAA+D;AAC/D,MAAM,WAAY,SAAQ,iBAAQ;IAMhC;;;;;;OAMG;IACH,YAAY,QAAQ,EAAE,YAAY,GAAG,gBAAC,CAAC,IAAI,EAAE,OAAO,GAAG,EAAE;QACvD,KAAK,CAAC,OAAO,CAAC,CAAC;QAbjB;;WAEG;QACH,gBAAW,GAAG,CAAC,CAAC;QAYd,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC;QACpB,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,IAAI,eAAe;QACjB,MAAM,SAAS,GAAG,qBAAqB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzD,OAAO,CAAC,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,gBAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAC7D,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC9B,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,SAAS,GAAG,qBAAqB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzD,IAAI,gBAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACnD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAA,yBAAY,GAAE,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,kBAAkB;QACtB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACtC,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,aAAa,GAAG,uBAAuB;QACjD,mCAAmC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;QAEZ,MAAM,iBAAiB,EAAE,CAAC;QAE1B,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,CAAC,cAAc,GAAG,CACpB,MAAM,IAAA,eAAK,EAAC;gBACV,GAAG;gBACH,YAAY,EAAE,QAAQ;gBACtB,OAAO,EAAE,aAAa;aACvB,CAAC,CACH,CAAC,IAAI,CAAC;QACT,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,yCAAyC,GAAG,IAAI;gBAChD,mBAAmB,gBAAC,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAC1G,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,oBAAoB,CAAC,GAAG,EAAE,EAAE;YACzC,sEAAsE;YACtE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAEtB,gBAAG,CAAC,KAAK,CAAC,yCAAyC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAClE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC9B,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YACjC,CAAC;QACH,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,gBAAG,CAAC,KAAK,CAAC,qCAAqC,GAAG,kBAAkB,CAAC,CAAC;YACtE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC,CAAC;QACF,sEAAsE;QACtE,+CAA+C;QAC/C,MAAM,YAAY,GAAG,IAAI,kBAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACtC,IAAI,CAAC,oBAAoB,GAAG,GAAG,CAAC;YAChC,IAAI,CAAC,oBAAoB,GAAG,GAAG,CAAC;QAClC,CAAC,CAAC;YACA,uEAAuE;YACvE,iBAAiB;aAChB,OAAO,CACN,aAAa,EACb,UAAU,aAAa,+CAA+C,CACvE,CAAC;QAEJ,IAAI,CAAC,cAAc;aAChB,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;aACtB,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,qCAAqC;aACxD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,+CAA+C;aACnE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAmC;QAElD,MAAM,YAAY,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,IAAI;QACF,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC5C,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC9B,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAEO,kCAAW"}
package/lib/mjpeg.js CHANGED
@@ -116,22 +116,23 @@ class MJpegStream extends Writable {
116
116
  await initMJpegConsumer();
117
117
 
118
118
  this.consumer = new MJpegConsumer();
119
-
120
- // use the deferred pattern so we can wait for the start of the stream
121
- // based on what comes in from an external pipe
122
- const startPromise = new B((res, rej) => {
123
- this.registerStartSuccess = res;
124
- this.registerStartFailure = rej;
125
- })
126
- // start a timeout so that if the server does not return data, we don't
127
- // block forever.
128
- .timeout(
129
- serverTimeout,
130
- `Waited ${serverTimeout}ms but the MJPEG server never sent any images`
119
+ const url = this.url;
120
+ try {
121
+ this.responseStream = (
122
+ await axios({
123
+ url,
124
+ responseType: 'stream',
125
+ timeout: serverTimeout,
126
+ })
127
+ ).data;
128
+ } catch (e) {
129
+ throw new Error(
130
+ `Cannot connect to the MJPEG stream at ${url}. ` +
131
+ `Original error: ${_.has(e, 'response') ? JSON.stringify(e.response) : /** @type {Error} */ (e).message}`
131
132
  );
133
+ }
132
134
 
133
- const url = this.url;
134
- const onErr = (err) => {
135
+ const onErr = (/** @type {Error} */ err) => {
135
136
  // Make sure we don't get an outdated screenshot if there was an error
136
137
  this.lastChunk = null;
137
138
 
@@ -145,18 +146,18 @@ class MJpegStream extends Writable {
145
146
  log.debug(`The connection to MJPEG server at ${url} has been closed`);
146
147
  this.lastChunk = null;
147
148
  };
148
-
149
- try {
150
- this.responseStream = (
151
- await axios({
152
- url,
153
- responseType: 'stream',
154
- timeout: serverTimeout,
155
- })
156
- ).data;
157
- } catch (e) {
158
- return onErr(e);
159
- }
149
+ // use the deferred pattern so we can wait for the start of the stream
150
+ // based on what comes in from an external pipe
151
+ const startPromise = new B((res, rej) => {
152
+ this.registerStartSuccess = res;
153
+ this.registerStartFailure = rej;
154
+ })
155
+ // start a timeout so that if the server does not return data, we don't
156
+ // block forever.
157
+ .timeout(
158
+ serverTimeout,
159
+ `Waited ${serverTimeout}ms but the MJPEG server never sent any images`
160
+ );
160
161
 
161
162
  this.responseStream
162
163
  .once('close', onClose)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appium/support",
3
- "version": "6.0.3",
3
+ "version": "6.0.4",
4
4
  "description": "Support libs used across appium packages",
5
5
  "keywords": [
6
6
  "automation",
@@ -43,30 +43,15 @@
43
43
  "dependencies": {
44
44
  "@appium/logger": "^1.6.1",
45
45
  "@appium/tsconfig": "^0.3.3",
46
- "@appium/types": "^0.24.0",
46
+ "@appium/types": "^0.25.0",
47
47
  "@colors/colors": "1.6.0",
48
- "@types/archiver": "6.0.3",
49
- "@types/base64-stream": "1.0.5",
50
- "@types/find-root": "1.1.4",
51
- "@types/jsftp": "2.1.5",
52
- "@types/klaw": "3.0.6",
53
- "@types/lockfile": "1.0.4",
54
- "@types/mv": "2.1.4",
55
- "@types/ncp": "2.0.8",
56
- "@types/pluralize": "0.0.33",
57
- "@types/semver": "7.5.8",
58
- "@types/shell-quote": "1.7.5",
59
- "@types/supports-color": "8.1.3",
60
- "@types/teen_process": "2.0.4",
61
- "@types/uuid": "10.0.0",
62
- "@types/which": "3.0.4",
63
48
  "archiver": "7.0.1",
64
49
  "axios": "1.7.9",
65
50
  "base64-stream": "1.0.0",
66
51
  "bluebird": "3.7.2",
67
52
  "bplist-creator": "0.1.1",
68
53
  "bplist-parser": "0.3.2",
69
- "form-data": "4.0.1",
54
+ "form-data": "4.0.2",
70
55
  "get-stream": "6.0.1",
71
56
  "glob": "10.4.5",
72
57
  "jsftp": "2.1.3",
@@ -77,20 +62,19 @@
77
62
  "moment": "2.30.1",
78
63
  "mv": "2.1.1",
79
64
  "ncp": "2.0.0",
80
- "opencv-bindings": "4.5.5",
81
65
  "pkg-dir": "5.0.0",
82
66
  "plist": "3.1.0",
83
67
  "pluralize": "8.0.0",
84
68
  "read-pkg": "5.2.0",
85
69
  "resolve-from": "5.0.0",
86
70
  "sanitize-filename": "1.6.3",
87
- "semver": "7.6.3",
71
+ "semver": "7.7.1",
88
72
  "shell-quote": "1.8.2",
89
73
  "source-map-support": "0.5.21",
90
74
  "supports-color": "8.1.1",
91
75
  "teen_process": "2.2.3",
92
- "type-fest": "4.31.0",
93
- "uuid": "11.0.4",
76
+ "type-fest": "4.35.0",
77
+ "uuid": "11.0.5",
94
78
  "which": "4.0.0",
95
79
  "yauzl": "3.2.0"
96
80
  },
@@ -104,5 +88,5 @@
104
88
  "publishConfig": {
105
89
  "access": "public"
106
90
  },
107
- "gitHead": "a7ce83e169e101ae497bab11204a73703fd54e99"
91
+ "gitHead": "ea00e3aa18aff3c51d1c19eea6c4d1c8c2483740"
108
92
  }