@midscene/webdriver 0.30.10 → 1.0.0

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/dist/es/index.mjs CHANGED
@@ -91,14 +91,14 @@ class WDAManager extends BaseServiceManager {
91
91
  if (await this.isWDARunning()) return void debugWDA(`WebDriverAgent is already running on port ${this.config.port}`);
92
92
  throw new Error(`WebDriverAgent is not running on ${this.config.host}:${this.config.port}. Please start WebDriverAgent manually:
93
93
 
94
- \u{1F527} Setup Instructions:
94
+ 🔧 Setup Instructions:
95
95
  1. Install WebDriverAgent: npm install appium-webdriveragent
96
96
  2. Build and run WebDriverAgent:
97
97
  - For simulators: Use Xcode to run WebDriverAgentRunner on your target simulator
98
98
  - For real devices: Build WebDriverAgentRunner and install on your device
99
99
  3. Ensure WebDriverAgent is listening on ${this.config.host}:${this.config.port}
100
100
 
101
- \u{1F4A1} Alternative: You can also specify a different host/port where WebDriverAgent is running.`);
101
+ 💡 Alternative: You can also specify a different host/port where WebDriverAgent is running.`);
102
102
  }
103
103
  async isWDARunning() {
104
104
  try {
@@ -173,13 +173,13 @@ async function makeWebDriverRequest(baseUrl, method, endpoint, data, timeout = 3
173
173
  clearTimeout(timeoutId);
174
174
  let responseData;
175
175
  const contentType = response.headers.get('content-type');
176
- if (null == contentType ? void 0 : contentType.includes('application/json')) responseData = await response.json();
176
+ if (contentType?.includes('application/json')) responseData = await response.json();
177
177
  else {
178
178
  const textData = await response.text();
179
179
  responseData = textData;
180
180
  }
181
181
  if (!response.ok) {
182
- const errorMessage = (null == responseData ? void 0 : responseData.error) || (null == responseData ? void 0 : responseData.message) || `HTTP ${response.status}`;
182
+ const errorMessage = responseData?.error || responseData?.message || `HTTP ${response.status}`;
183
183
  throw new WebDriverRequestError(`WebDriver request failed: ${errorMessage}`, response.status, responseData);
184
184
  }
185
185
  return responseData;
@@ -212,7 +212,6 @@ class WebDriverClient {
212
212
  }
213
213
  async createSession(capabilities) {
214
214
  try {
215
- var _response_value, _response_value1;
216
215
  const response = await this.makeRequest('POST', '/session', {
217
216
  capabilities: {
218
217
  alwaysMatch: {
@@ -220,12 +219,12 @@ class WebDriverClient {
220
219
  }
221
220
  }
222
221
  });
223
- this.sessionId = response.sessionId || (null == (_response_value = response.value) ? void 0 : _response_value.sessionId);
222
+ this.sessionId = response.sessionId || response.value?.sessionId;
224
223
  if (!this.sessionId) throw new Error('Failed to get session ID from response');
225
224
  debugClient(`Created session: ${this.sessionId}`);
226
225
  return {
227
226
  sessionId: this.sessionId,
228
- capabilities: response.capabilities || (null == (_response_value1 = response.value) ? void 0 : _response_value1.capabilities) || {}
227
+ capabilities: response.capabilities || response.value?.capabilities || {}
229
228
  };
230
229
  } catch (error) {
231
230
  debugClient(`Failed to create session: ${error}`);
@@ -260,7 +259,7 @@ class WebDriverClient {
260
259
  async getDeviceInfo() {
261
260
  try {
262
261
  const statusResponse = await this.makeRequest('GET', '/status');
263
- if (null == statusResponse ? void 0 : statusResponse.device) return {
262
+ if (statusResponse?.device) return {
264
263
  udid: statusResponse.device.udid || statusResponse.device.identifier || '',
265
264
  name: statusResponse.device.name || '',
266
265
  model: statusResponse.device.model || statusResponse.device.productName || ''
package/dist/lib/index.js CHANGED
@@ -24,11 +24,11 @@ var __webpack_require__ = {};
24
24
  var __webpack_exports__ = {};
25
25
  __webpack_require__.r(__webpack_exports__);
26
26
  __webpack_require__.d(__webpack_exports__, {
27
- WebDriverRequestError: ()=>WebDriverRequestError,
28
27
  WDAManager: ()=>WDAManager,
28
+ makeWebDriverRequest: ()=>makeWebDriverRequest,
29
+ WebDriverRequestError: ()=>WebDriverRequestError,
29
30
  WebDriverClient: ()=>WebDriverClient,
30
- BaseServiceManager: ()=>BaseServiceManager,
31
- makeWebDriverRequest: ()=>makeWebDriverRequest
31
+ BaseServiceManager: ()=>BaseServiceManager
32
32
  });
33
33
  function _define_property(obj, key, value) {
34
34
  if (key in obj) Object.defineProperty(obj, key, {
@@ -123,14 +123,14 @@ class WDAManager extends BaseServiceManager {
123
123
  if (await this.isWDARunning()) return void debugWDA(`WebDriverAgent is already running on port ${this.config.port}`);
124
124
  throw new Error(`WebDriverAgent is not running on ${this.config.host}:${this.config.port}. Please start WebDriverAgent manually:
125
125
 
126
- \u{1F527} Setup Instructions:
126
+ 🔧 Setup Instructions:
127
127
  1. Install WebDriverAgent: npm install appium-webdriveragent
128
128
  2. Build and run WebDriverAgent:
129
129
  - For simulators: Use Xcode to run WebDriverAgentRunner on your target simulator
130
130
  - For real devices: Build WebDriverAgentRunner and install on your device
131
131
  3. Ensure WebDriverAgent is listening on ${this.config.host}:${this.config.port}
132
132
 
133
- \u{1F4A1} Alternative: You can also specify a different host/port where WebDriverAgent is running.`);
133
+ 💡 Alternative: You can also specify a different host/port where WebDriverAgent is running.`);
134
134
  }
135
135
  async isWDARunning() {
136
136
  try {
@@ -205,13 +205,13 @@ async function makeWebDriverRequest(baseUrl, method, endpoint, data, timeout = 3
205
205
  clearTimeout(timeoutId);
206
206
  let responseData;
207
207
  const contentType = response.headers.get('content-type');
208
- if (null == contentType ? void 0 : contentType.includes('application/json')) responseData = await response.json();
208
+ if (contentType?.includes('application/json')) responseData = await response.json();
209
209
  else {
210
210
  const textData = await response.text();
211
211
  responseData = textData;
212
212
  }
213
213
  if (!response.ok) {
214
- const errorMessage = (null == responseData ? void 0 : responseData.error) || (null == responseData ? void 0 : responseData.message) || `HTTP ${response.status}`;
214
+ const errorMessage = responseData?.error || responseData?.message || `HTTP ${response.status}`;
215
215
  throw new WebDriverRequestError(`WebDriver request failed: ${errorMessage}`, response.status, responseData);
216
216
  }
217
217
  return responseData;
@@ -244,7 +244,6 @@ class WebDriverClient {
244
244
  }
245
245
  async createSession(capabilities) {
246
246
  try {
247
- var _response_value, _response_value1;
248
247
  const response = await this.makeRequest('POST', '/session', {
249
248
  capabilities: {
250
249
  alwaysMatch: {
@@ -252,12 +251,12 @@ class WebDriverClient {
252
251
  }
253
252
  }
254
253
  });
255
- this.sessionId = response.sessionId || (null == (_response_value = response.value) ? void 0 : _response_value.sessionId);
254
+ this.sessionId = response.sessionId || response.value?.sessionId;
256
255
  if (!this.sessionId) throw new Error('Failed to get session ID from response');
257
256
  debugClient(`Created session: ${this.sessionId}`);
258
257
  return {
259
258
  sessionId: this.sessionId,
260
- capabilities: response.capabilities || (null == (_response_value1 = response.value) ? void 0 : _response_value1.capabilities) || {}
259
+ capabilities: response.capabilities || response.value?.capabilities || {}
261
260
  };
262
261
  } catch (error) {
263
262
  debugClient(`Failed to create session: ${error}`);
@@ -292,7 +291,7 @@ class WebDriverClient {
292
291
  async getDeviceInfo() {
293
292
  try {
294
293
  const statusResponse = await this.makeRequest('GET', '/status');
295
- if (null == statusResponse ? void 0 : statusResponse.device) return {
294
+ if (statusResponse?.device) return {
296
295
  udid: statusResponse.device.udid || statusResponse.device.identifier || '',
297
296
  name: statusResponse.device.name || '',
298
297
  model: statusResponse.device.model || statusResponse.device.productName || ''
@@ -327,13 +326,13 @@ exports.WDAManager = __webpack_exports__.WDAManager;
327
326
  exports.WebDriverClient = __webpack_exports__.WebDriverClient;
328
327
  exports.WebDriverRequestError = __webpack_exports__.WebDriverRequestError;
329
328
  exports.makeWebDriverRequest = __webpack_exports__.makeWebDriverRequest;
330
- for(var __webpack_i__ in __webpack_exports__)if (-1 === [
329
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
331
330
  "BaseServiceManager",
332
331
  "WDAManager",
333
332
  "WebDriverClient",
334
333
  "WebDriverRequestError",
335
334
  "makeWebDriverRequest"
336
- ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
335
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
337
336
  Object.defineProperty(exports, '__esModule', {
338
337
  value: true
339
338
  });
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "@midscene/webdriver",
3
- "version": "0.30.10",
3
+ "version": "1.0.0",
4
4
  "description": "WebDriver protocol implementation for Midscene automation",
5
5
  "main": "dist/lib/index.js",
6
6
  "module": "dist/es/index.mjs",
7
7
  "types": "dist/types/index.d.ts",
8
8
  "dependencies": {
9
9
  "node-fetch": "^3.3.2",
10
- "@midscene/shared": "0.30.10"
10
+ "@midscene/shared": "1.0.0"
11
11
  },
12
12
  "devDependencies": {
13
- "@rslib/core": "^0.11.2",
13
+ "@rslib/core": "^0.18.3",
14
14
  "@types/node": "^18.0.0",
15
15
  "typescript": "^5.8.3",
16
16
  "vitest": "3.0.5"
@@ -32,8 +32,9 @@
32
32
  "mobile"
33
33
  ],
34
34
  "scripts": {
35
+ "dev": "npm run build:watch",
35
36
  "build": "rslib build",
36
- "dev": "rslib build --watch",
37
+ "build:watch": "rslib build --watch --no-clean",
37
38
  "test": "vitest",
38
39
  "lint": "biome check .",
39
40
  "lint:fix": "biome check . --write"