appium-safari-driver 4.1.11 → 4.1.13
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.md +12 -0
- package/build/lib/commands/record-screen.d.ts +32 -32
- package/build/lib/commands/record-screen.d.ts.map +1 -1
- package/build/lib/commands/record-screen.js +23 -23
- package/build/lib/commands/record-screen.js.map +1 -1
- package/build/lib/driver.d.ts +9 -9
- package/build/lib/driver.d.ts.map +1 -1
- package/build/lib/driver.js +7 -7
- package/build/lib/driver.js.map +1 -1
- package/build/lib/safari.d.ts.map +1 -1
- package/build/lib/safari.js +1 -1
- package/build/lib/safari.js.map +1 -1
- package/build/lib/utils.d.ts +5 -0
- package/build/lib/utils.d.ts.map +1 -1
- package/build/lib/utils.js +5 -0
- package/build/lib/utils.js.map +1 -1
- package/lib/commands/record-screen.ts +72 -72
- package/lib/driver.ts +13 -12
- package/lib/safari.ts +2 -1
- package/lib/utils.ts +5 -0
- package/npm-shrinkwrap.json +2238 -0
- package/package.json +3 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## [4.1.13](https://github.com/appium/appium-safari-driver/compare/v4.1.12...v4.1.13) (2026-05-01)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
* lint ([#165](https://github.com/appium/appium-safari-driver/issues/165)) ([1c062e8](https://github.com/appium/appium-safari-driver/commit/1c062e8460697db4daa38bb8d1303b1e711c424e))
|
|
6
|
+
|
|
7
|
+
## [4.1.12](https://github.com/appium/appium-safari-driver/compare/v4.1.11...v4.1.12) (2026-04-17)
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* Add missing shrinkwrap ([2d86a90](https://github.com/appium/appium-safari-driver/commit/2d86a90dfdf39d6ab9c90028d3f096c521206457))
|
|
12
|
+
|
|
1
13
|
## [4.1.11](https://github.com/appium/appium-safari-driver/compare/v4.1.10...v4.1.11) (2026-04-10)
|
|
2
14
|
|
|
3
15
|
### Miscellaneous Chores
|
|
@@ -1,28 +1,5 @@
|
|
|
1
1
|
import type { AppiumLogger } from '@appium/types';
|
|
2
2
|
import type { SafariDriver } from '../driver';
|
|
3
|
-
interface ScreenRecorderOptions {
|
|
4
|
-
codec?: string;
|
|
5
|
-
display?: string;
|
|
6
|
-
mask?: string;
|
|
7
|
-
timeLimit?: string | number;
|
|
8
|
-
}
|
|
9
|
-
export declare class ScreenRecorder {
|
|
10
|
-
private log;
|
|
11
|
-
private _process;
|
|
12
|
-
private _udid;
|
|
13
|
-
private _videoPath;
|
|
14
|
-
private _codec?;
|
|
15
|
-
private _display?;
|
|
16
|
-
private _mask?;
|
|
17
|
-
private _timeLimitMs;
|
|
18
|
-
private _timer;
|
|
19
|
-
constructor(udid: string, videoPath: string, log: AppiumLogger, opts?: ScreenRecorderOptions);
|
|
20
|
-
getVideoPath(): Promise<string>;
|
|
21
|
-
get isRunning(): boolean;
|
|
22
|
-
start(): Promise<void>;
|
|
23
|
-
stop(force?: boolean): Promise<string>;
|
|
24
|
-
private _enforceTermination;
|
|
25
|
-
}
|
|
26
3
|
export interface StartRecordingOptions {
|
|
27
4
|
/** Specifies the codec type: "h264" or "hevc" */
|
|
28
5
|
codec?: string;
|
|
@@ -41,15 +18,6 @@ export interface StartRecordingOptions {
|
|
|
41
18
|
*/
|
|
42
19
|
forceRestart?: boolean;
|
|
43
20
|
}
|
|
44
|
-
/**
|
|
45
|
-
* Record the Simulator's display in background while the automated test is running.
|
|
46
|
-
* This method uses `xcrun simctl io recordVideo` helper under the hood.
|
|
47
|
-
* Check the output of `xcrun simctl io` command for more details.
|
|
48
|
-
*
|
|
49
|
-
* @param options - The available options.
|
|
50
|
-
* @throws {Error} If screen recording has failed to start or is not supported for the destination device.
|
|
51
|
-
*/
|
|
52
|
-
export declare function startRecordingScreen(this: SafariDriver, options?: StartRecordingOptions): Promise<void>;
|
|
53
21
|
export interface StopRecordingOptions {
|
|
54
22
|
/** The path to the remote location, where the resulting video should be uploaded.
|
|
55
23
|
* The following protocols are supported: http/https, ftp.
|
|
@@ -72,6 +40,38 @@ export interface StopRecordingOptions {
|
|
|
72
40
|
/** Additional form fields for multipart http(s) uploads */
|
|
73
41
|
formFields?: Record<string, string> | Array<[string, string]>;
|
|
74
42
|
}
|
|
43
|
+
interface ScreenRecorderOptions {
|
|
44
|
+
codec?: string;
|
|
45
|
+
display?: string;
|
|
46
|
+
mask?: string;
|
|
47
|
+
timeLimit?: string | number;
|
|
48
|
+
}
|
|
49
|
+
export declare class ScreenRecorder {
|
|
50
|
+
private log;
|
|
51
|
+
private _process;
|
|
52
|
+
private _udid;
|
|
53
|
+
private _videoPath;
|
|
54
|
+
private _codec?;
|
|
55
|
+
private _display?;
|
|
56
|
+
private _mask?;
|
|
57
|
+
private _timeLimitMs;
|
|
58
|
+
private _timer;
|
|
59
|
+
constructor(udid: string, videoPath: string, log: AppiumLogger, opts?: ScreenRecorderOptions);
|
|
60
|
+
get isRunning(): boolean;
|
|
61
|
+
getVideoPath(): Promise<string>;
|
|
62
|
+
start(): Promise<void>;
|
|
63
|
+
stop(force?: boolean): Promise<string>;
|
|
64
|
+
private _enforceTermination;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Record the Simulator's display in background while the automated test is running.
|
|
68
|
+
* This method uses `xcrun simctl io recordVideo` helper under the hood.
|
|
69
|
+
* Check the output of `xcrun simctl io` command for more details.
|
|
70
|
+
*
|
|
71
|
+
* @param options - The available options.
|
|
72
|
+
* @throws {Error} If screen recording has failed to start or is not supported for the destination device.
|
|
73
|
+
*/
|
|
74
|
+
export declare function startRecordingScreen(this: SafariDriver, options?: StartRecordingOptions): Promise<void>;
|
|
75
75
|
/**
|
|
76
76
|
* Stop recording the screen.
|
|
77
77
|
* If no screen recording has been started before then the method returns an empty string.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-screen.d.ts","sourceRoot":"","sources":["../../../lib/commands/record-screen.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,YAAY,EAAe,MAAM,eAAe,CAAC;AAC9D,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,WAAW,CAAC;AAiD5C,
|
|
1
|
+
{"version":3,"file":"record-screen.d.ts","sourceRoot":"","sources":["../../../lib/commands/record-screen.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,YAAY,EAAe,MAAM,eAAe,CAAC;AAC9D,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,WAAW,CAAC;AAiD5C,MAAM,WAAW,qBAAqB;IACpC,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6FAA6F;IAC7F,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC;;;;;;OAMG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,mGAAmG;IACnG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC/D;AAED,UAAU,qBAAqB;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC7B;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,KAAK,CAAC,CAAS;IACvB,OAAO,CAAC,YAAY,CAAiC;IACrD,OAAO,CAAC,MAAM,CAA+B;gBAG3C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,YAAY,EACjB,IAAI,GAAE,qBAA0B;IAgBlC,IAAI,SAAS,IAAI,OAAO,CAEvB;IAEK,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAQ/B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiEtB,IAAI,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,MAAM,CAAC;YA6BrC,mBAAmB;CAelC;AAED;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,YAAY,EAClB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,YAAY,EAClB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAmBjB"}
|
|
@@ -65,6 +65,9 @@ class ScreenRecorder {
|
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
+
get isRunning() {
|
|
69
|
+
return !!this._process?.isRunning;
|
|
70
|
+
}
|
|
68
71
|
async getVideoPath() {
|
|
69
72
|
if (await support_1.fs.exists(this._videoPath)) {
|
|
70
73
|
VIDEO_FILES.add(this._videoPath);
|
|
@@ -72,9 +75,6 @@ class ScreenRecorder {
|
|
|
72
75
|
}
|
|
73
76
|
return '';
|
|
74
77
|
}
|
|
75
|
-
get isRunning() {
|
|
76
|
-
return !!this._process?.isRunning;
|
|
77
|
-
}
|
|
78
78
|
async start() {
|
|
79
79
|
const args = [this._udid, 'recordVideo'];
|
|
80
80
|
if (this._display) {
|
|
@@ -179,26 +179,6 @@ class ScreenRecorder {
|
|
|
179
179
|
}
|
|
180
180
|
}
|
|
181
181
|
exports.ScreenRecorder = ScreenRecorder;
|
|
182
|
-
async function extractSimulatorUdid(caps) {
|
|
183
|
-
if (caps['safari:useSimulator'] === false) {
|
|
184
|
-
return null;
|
|
185
|
-
}
|
|
186
|
-
const allDevices = lodash_1.default.flatMap(lodash_1.default.values(await new node_simctl_1.Simctl().getDevices(null, 'iOS')));
|
|
187
|
-
for (const { name, udid, state, sdk } of allDevices) {
|
|
188
|
-
if (state !== 'Booted') {
|
|
189
|
-
continue;
|
|
190
|
-
}
|
|
191
|
-
if (lodash_1.default.toLower(caps['safari:deviceUDID']) === lodash_1.default.toLower(udid)) {
|
|
192
|
-
return udid;
|
|
193
|
-
}
|
|
194
|
-
if (lodash_1.default.toLower(caps['safari:deviceName']) === lodash_1.default.toLower(name) &&
|
|
195
|
-
((caps['safari:platformVersion'] && caps['safari:platformVersion'] === sdk) ||
|
|
196
|
-
!caps['safari:platformVersion'])) {
|
|
197
|
-
return udid;
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
return null;
|
|
201
|
-
}
|
|
202
182
|
/**
|
|
203
183
|
* Record the Simulator's display in background while the automated test is running.
|
|
204
184
|
* This method uses `xcrun simctl io recordVideo` helper under the hood.
|
|
@@ -270,4 +250,24 @@ async function stopRecordingScreen(options) {
|
|
|
270
250
|
}
|
|
271
251
|
return await uploadRecordedMedia(videoPath, options?.remotePath ?? null, options ?? {});
|
|
272
252
|
}
|
|
253
|
+
async function extractSimulatorUdid(caps) {
|
|
254
|
+
if (caps['safari:useSimulator'] === false) {
|
|
255
|
+
return null;
|
|
256
|
+
}
|
|
257
|
+
const allDevices = lodash_1.default.flatMap(lodash_1.default.values(await new node_simctl_1.Simctl().getDevices(null, 'iOS')));
|
|
258
|
+
for (const { name, udid, state, sdk } of allDevices) {
|
|
259
|
+
if (state !== 'Booted') {
|
|
260
|
+
continue;
|
|
261
|
+
}
|
|
262
|
+
if (lodash_1.default.toLower(caps['safari:deviceUDID']) === lodash_1.default.toLower(udid)) {
|
|
263
|
+
return udid;
|
|
264
|
+
}
|
|
265
|
+
if (lodash_1.default.toLower(caps['safari:deviceName']) === lodash_1.default.toLower(name) &&
|
|
266
|
+
((caps['safari:platformVersion'] && caps['safari:platformVersion'] === sdk) ||
|
|
267
|
+
!caps['safari:platformVersion'])) {
|
|
268
|
+
return udid;
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
return null;
|
|
272
|
+
}
|
|
273
273
|
//# sourceMappingURL=record-screen.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record-screen.js","sourceRoot":"","sources":["../../../lib/commands/record-screen.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"record-screen.js","sourceRoot":"","sources":["../../../lib/commands/record-screen.ts"],"names":[],"mappings":"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"}
|
package/build/lib/driver.d.ts
CHANGED
|
@@ -5,11 +5,8 @@ import { type SafariConstraints } from './desired-caps';
|
|
|
5
5
|
import * as cookieCommands from './commands/cookies';
|
|
6
6
|
import * as findCommands from './commands/find';
|
|
7
7
|
import * as recordScreenCommands from './commands/record-screen';
|
|
8
|
+
type W3CSafariDriverCaps = W3CDriverCaps<SafariConstraints>;
|
|
8
9
|
export declare class SafariDriver extends BaseDriver<SafariConstraints, StringRecord> implements ExternalDriver<SafariConstraints, string, StringRecord> {
|
|
9
|
-
private isProxyActive;
|
|
10
|
-
private _safari;
|
|
11
|
-
proxyReqRes: ((...args: any[]) => any) | null;
|
|
12
|
-
_screenRecorder: recordScreenCommands.ScreenRecorder | null;
|
|
13
10
|
static newMethodMap: {
|
|
14
11
|
readonly '/session/:sessionId/appium/start_recording_screen': {
|
|
15
12
|
readonly POST: {
|
|
@@ -28,6 +25,14 @@ export declare class SafariDriver extends BaseDriver<SafariConstraints, StringRe
|
|
|
28
25
|
};
|
|
29
26
|
};
|
|
30
27
|
};
|
|
28
|
+
proxyReqRes: ((...args: any[]) => any) | null;
|
|
29
|
+
_screenRecorder: recordScreenCommands.ScreenRecorder | null;
|
|
30
|
+
deleteCookies: typeof cookieCommands.deleteCookies;
|
|
31
|
+
findElOrEls: typeof findCommands.findElOrEls;
|
|
32
|
+
startRecordingScreen: typeof recordScreenCommands.startRecordingScreen;
|
|
33
|
+
stopRecordingScreen: typeof recordScreenCommands.stopRecordingScreen;
|
|
34
|
+
private isProxyActive;
|
|
35
|
+
private _safari;
|
|
31
36
|
constructor(opts?: InitialOpts);
|
|
32
37
|
get safari(): SafariDriverServer;
|
|
33
38
|
proxyActive(): boolean;
|
|
@@ -36,11 +41,6 @@ export declare class SafariDriver extends BaseDriver<SafariConstraints, StringRe
|
|
|
36
41
|
createSession(w3cCaps1: W3CSafariDriverCaps, w3cCaps2?: W3CSafariDriverCaps, w3cCaps3?: W3CSafariDriverCaps, driverData?: DriverData[]): Promise<DefaultCreateSessionResult<SafariConstraints>>;
|
|
37
42
|
deleteSession(): Promise<void>;
|
|
38
43
|
private resetState;
|
|
39
|
-
deleteCookies: typeof cookieCommands.deleteCookies;
|
|
40
|
-
findElOrEls: typeof findCommands.findElOrEls;
|
|
41
|
-
startRecordingScreen: typeof recordScreenCommands.startRecordingScreen;
|
|
42
|
-
stopRecordingScreen: typeof recordScreenCommands.stopRecordingScreen;
|
|
43
44
|
}
|
|
44
45
|
export default SafariDriver;
|
|
45
|
-
type W3CSafariDriverCaps = W3CDriverCaps<SafariConstraints>;
|
|
46
46
|
//# sourceMappingURL=driver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,kBAAkB,EAAC,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAwB,KAAK,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,cAAc,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,oBAAoB,MAAM,0BAA0B,CAAC;AAajE,qBAAa,YACX,SAAQ,UAAU,CAAC,iBAAiB,EAAE,YAAY,CAClD,YAAW,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE,YAAY,CAAC;IAElE,
|
|
1
|
+
{"version":3,"file":"driver.d.ts","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,0BAA0B,EAC1B,UAAU,EACV,WAAW,EACX,YAAY,EACZ,cAAc,EACd,aAAa,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,kBAAkB,EAAC,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAwB,KAAK,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,KAAK,cAAc,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,YAAY,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,oBAAoB,MAAM,0BAA0B,CAAC;AAajE,KAAK,mBAAmB,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC;AAE5D,qBAAa,YACX,SAAQ,UAAU,CAAC,iBAAiB,EAAE,YAAY,CAClD,YAAW,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE,YAAY,CAAC;IAElE,MAAM,CAAC,YAAY;;;;;;;;;;;;;;;;;MAAgB;IAEnC,WAAW,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC;IAC9C,eAAe,EAAE,oBAAoB,CAAC,cAAc,GAAG,IAAI,CAAC;IAE5D,aAAa,sCAAgC;IAE7C,WAAW,kCAA4B;IAEvC,oBAAoB,mDAA6C;IACjE,mBAAmB,kDAA4C;IAE/D,OAAO,CAAC,aAAa,CAAU;IAC/B,OAAO,CAAC,OAAO,CAA4B;gBAE/B,IAAI,GAAE,WAA+B;IAgBjD,IAAI,MAAM,IAAI,kBAAkB,CAK/B;IAEQ,WAAW,IAAI,OAAO;IAItB,iBAAiB,IAAI,YAAY,EAAE;IAInC,QAAQ,IAAI,OAAO;IAIb,aAAa,CAC1B,QAAQ,EAAE,mBAAmB,EAC7B,QAAQ,CAAC,EAAE,mBAAmB,EAC9B,QAAQ,CAAC,EAAE,mBAAmB,EAC9B,UAAU,CAAC,EAAE,UAAU,EAAE,GACxB,OAAO,CAAC,0BAA0B,CAAC,iBAAiB,CAAC,CAAC;IAgB1C,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAS7C,OAAO,CAAC,UAAU;CAMnB;AAED,eAAe,YAAY,CAAC"}
|
package/build/lib/driver.js
CHANGED
|
@@ -50,11 +50,15 @@ const NO_PROXY = [
|
|
|
50
50
|
['DELETE', new RegExp('^/session/[^/]+/cookie$')],
|
|
51
51
|
];
|
|
52
52
|
class SafariDriver extends driver_1.BaseDriver {
|
|
53
|
-
|
|
54
|
-
_safari;
|
|
53
|
+
static newMethodMap = method_map_1.newMethodMap;
|
|
55
54
|
proxyReqRes;
|
|
56
55
|
_screenRecorder;
|
|
57
|
-
|
|
56
|
+
deleteCookies = cookieCommands.deleteCookies;
|
|
57
|
+
findElOrEls = findCommands.findElOrEls;
|
|
58
|
+
startRecordingScreen = recordScreenCommands.startRecordingScreen;
|
|
59
|
+
stopRecordingScreen = recordScreenCommands.stopRecordingScreen;
|
|
60
|
+
isProxyActive;
|
|
61
|
+
_safari;
|
|
58
62
|
constructor(opts = {}) {
|
|
59
63
|
super(opts);
|
|
60
64
|
this.desiredCapConstraints = desired_caps_1.desiredCapConstraints;
|
|
@@ -114,10 +118,6 @@ class SafariDriver extends driver_1.BaseDriver {
|
|
|
114
118
|
this.isProxyActive = false;
|
|
115
119
|
this._screenRecorder = null;
|
|
116
120
|
}
|
|
117
|
-
deleteCookies = cookieCommands.deleteCookies;
|
|
118
|
-
findElOrEls = findCommands.findElOrEls;
|
|
119
|
-
startRecordingScreen = recordScreenCommands.startRecordingScreen;
|
|
120
|
-
stopRecordingScreen = recordScreenCommands.stopRecordingScreen;
|
|
121
121
|
}
|
|
122
122
|
exports.SafariDriver = SafariDriver;
|
|
123
123
|
exports.default = SafariDriver;
|
package/build/lib/driver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.js","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,0CAAyC;AACzC,qCAA4C;AAC5C,iDAA6E;AAC7E,mEAAqD;AACrD,8DAAgD;AAChD,+EAAiE;AACjE,mCAA4C;AAC5C,6CAA0C;AAE1C,MAAM,QAAQ,GAAmB;IAC/B,CAAC,KAAK,EAAE,IAAI,MAAM,CAAC,wBAAwB,CAAC,CAAC;IAC7C,CAAC,MAAM,EAAE,IAAI,MAAM,CAAC,wBAAwB,CAAC,CAAC;IAC9C,CAAC,MAAM,EAAE,IAAI,MAAM,CAAC,0CAA0C,CAAC,CAAC;IAChE,CAAC,MAAM,EAAE,IAAI,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAElD,CAAC,QAAQ,EAAE,IAAI,MAAM,CAAC,yBAAyB,CAAC,CAAC;CAClD,CAAC;
|
|
1
|
+
{"version":3,"file":"driver.js","sourceRoot":"","sources":["../../lib/driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safari.d.ts","sourceRoot":"","sources":["../../lib/safari.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAC;AAM9C,OAAO,KAAK,EAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAYpF,cAAM,WAAY,SAAQ,OAAO;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAE,QAAe;CASnF;
|
|
1
|
+
{"version":3,"file":"safari.d.ts","sourceRoot":"","sources":["../../lib/safari.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,OAAO,EAAS,MAAM,eAAe,CAAC;AAM9C,OAAO,KAAK,EAAC,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAC,MAAM,eAAe,CAAC;AAYpF,cAAM,WAAY,SAAQ,OAAO;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IAEV,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,GAAE,QAAe;CASnF;AA0ED,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAEvB,GAAG,EAAE,YAAY;IAI7B,IAAI,KAAK,IAAI,WAAW,CAKvB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAEK,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,GAAE,cAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8DnE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAc5B;AAED,eAAe,kBAAkB,CAAC"}
|
package/build/lib/safari.js
CHANGED
package/build/lib/safari.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safari.js","sourceRoot":"","sources":["../../lib/safari.ts"],"names":[],"mappings":";;;;;;AAAA,sDAAyB;AACzB,0DAA6B;AAC7B,0CAA8C;AAC9C,4CAAgD;AAChD,+CAAwC;AACxC,uCAA0C;AAC1C,6CAA8C;AAC9C,2DAA4C;AAG5C,MAAM,SAAS,GAAG,cAAc,CAAC;AACjC,MAAM,eAAe,GAAG,KAAK,CAAC,CAAC,UAAU;AACzC,MAAM,iBAAiB,GAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACzD,oCAAoC;AACpC,4EAA4E;AAC5E,MAAM,mBAAmB,GAAG,cAAI,CAAC,gBAAgB,CAC/C,mBAAI,CAAC,OAAO,CAAC,iBAAE,CAAC,MAAM,EAAE,EAAE,0BAA0B,CAAC,EACrD,EAAC,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,EAAC,CAChC,CAAC;AAEF,MAAM,WAAY,SAAQ,gBAAO;IAC/B,cAAc,CAAW;IAEhB,KAAK,CAAC,YAAY,CAAC,GAAW,EAAE,MAAkB,EAAE,OAAiB,IAAI;QAChF,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,IAAI,eAAM,CAAC,mBAAmB,CAClC,IAAI,MAAM,IAAI,GAAG,sDAAsD;gBACrE,sFAAsF,CACzF,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;CACF;AAED,MAAM,mBAAmB;
|
|
1
|
+
{"version":3,"file":"safari.js","sourceRoot":"","sources":["../../lib/safari.ts"],"names":[],"mappings":"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"}
|
package/build/lib/utils.d.ts
CHANGED
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import type { StringRecord } from '@appium/types';
|
|
2
|
+
/**
|
|
3
|
+
* Formats the given capabilities for use with Safari Driver Server.
|
|
4
|
+
* @param caps - The capabilities to format.
|
|
5
|
+
* @returns The formatted capabilities.
|
|
6
|
+
*/
|
|
2
7
|
declare function formatCapsForServer(caps: StringRecord): StringRecord;
|
|
3
8
|
export { formatCapsForServer };
|
|
4
9
|
//# sourceMappingURL=utils.d.ts.map
|
package/build/lib/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAIhD,iBAAS,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAc7D;AAED,OAAO,EAAC,mBAAmB,EAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAIhD;;;;GAIG;AACH,iBAAS,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAc7D;AAED,OAAO,EAAC,mBAAmB,EAAC,CAAC"}
|
package/build/lib/utils.js
CHANGED
|
@@ -7,6 +7,11 @@ exports.formatCapsForServer = formatCapsForServer;
|
|
|
7
7
|
const driver_1 = require("appium/driver");
|
|
8
8
|
const lodash_1 = __importDefault(require("lodash"));
|
|
9
9
|
const SAFARI_CAP_PREFIXES = ['safari:', 'webkit:'];
|
|
10
|
+
/**
|
|
11
|
+
* Formats the given capabilities for use with Safari Driver Server.
|
|
12
|
+
* @param caps - The capabilities to format.
|
|
13
|
+
* @returns The formatted capabilities.
|
|
14
|
+
*/
|
|
10
15
|
function formatCapsForServer(caps) {
|
|
11
16
|
const result = {
|
|
12
17
|
browserName: 'Safari',
|
package/build/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../lib/utils.ts"],"names":[],"mappings":";;;;;AA2BQ,kDAAmB;AA3B3B,0CAA4C;AAC5C,oDAAuB;AAGvB,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAEnD;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,IAAkB;IAC7C,MAAM,MAAM,GAAiB;QAC3B,WAAW,EAAE,QAAQ;QACrB,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,KAAK;KACzC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,gBAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAClE,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACvB,CAAC;aAAM,IAAI,CAAC,gBAAC,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,sBAAa,CAAC,GAAG,CAAC,IAAW,CAAC,EAAE,CAAC;YAClE,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -53,6 +53,48 @@ process.on('exit', () => {
|
|
|
53
53
|
}
|
|
54
54
|
});
|
|
55
55
|
|
|
56
|
+
export interface StartRecordingOptions {
|
|
57
|
+
/** Specifies the codec type: "h264" or "hevc" */
|
|
58
|
+
codec?: string;
|
|
59
|
+
/** Supports "internal" or "external". Default is "internal" */
|
|
60
|
+
display?: string;
|
|
61
|
+
/** For non-rectangular displays, handle the mask by policy:
|
|
62
|
+
* - ignored: The mask is ignored and the unmasked framebuffer is saved.
|
|
63
|
+
* - alpha: Not supported, but retained for compatibility; the mask is rendered black.
|
|
64
|
+
* - black: The mask is rendered black.
|
|
65
|
+
*/
|
|
66
|
+
mask?: string;
|
|
67
|
+
/** The maximum recording time, in seconds. The default value is 600 seconds (10 minutes). */
|
|
68
|
+
timeLimit?: string | number;
|
|
69
|
+
/** Whether to ignore the call if a screen recording is currently running
|
|
70
|
+
* (`false`) or to start a new recording immediately and terminate the existing one if running (`true`).
|
|
71
|
+
*/
|
|
72
|
+
forceRestart?: boolean;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export interface StopRecordingOptions {
|
|
76
|
+
/** The path to the remote location, where the resulting video should be uploaded.
|
|
77
|
+
* The following protocols are supported: http/https, ftp.
|
|
78
|
+
* Null or empty string value (the default setting) means the content of resulting
|
|
79
|
+
* file should be encoded as Base64 and passed as the endpoint response value.
|
|
80
|
+
* An exception will be thrown if the generated media file is too big to
|
|
81
|
+
* fit into the available process memory.
|
|
82
|
+
*/
|
|
83
|
+
remotePath?: string;
|
|
84
|
+
/** The name of the user for the remote authentication. */
|
|
85
|
+
user?: string;
|
|
86
|
+
/** The password for the remote authentication. */
|
|
87
|
+
pass?: string;
|
|
88
|
+
/** The http multipart upload method name. The 'PUT' one is used by default. */
|
|
89
|
+
method?: string;
|
|
90
|
+
/** Additional headers mapping for multipart http(s) uploads */
|
|
91
|
+
headers?: Record<string, string>;
|
|
92
|
+
/** The name of the form field, where the file content BLOB should be stored for http(s) uploads */
|
|
93
|
+
fileFieldName?: string;
|
|
94
|
+
/** Additional form fields for multipart http(s) uploads */
|
|
95
|
+
formFields?: Record<string, string> | Array<[string, string]>;
|
|
96
|
+
}
|
|
97
|
+
|
|
56
98
|
interface ScreenRecorderOptions {
|
|
57
99
|
codec?: string;
|
|
58
100
|
display?: string;
|
|
@@ -91,6 +133,10 @@ export class ScreenRecorder {
|
|
|
91
133
|
}
|
|
92
134
|
}
|
|
93
135
|
|
|
136
|
+
get isRunning(): boolean {
|
|
137
|
+
return !!this._process?.isRunning;
|
|
138
|
+
}
|
|
139
|
+
|
|
94
140
|
async getVideoPath(): Promise<string> {
|
|
95
141
|
if (await fs.exists(this._videoPath)) {
|
|
96
142
|
VIDEO_FILES.add(this._videoPath);
|
|
@@ -99,10 +145,6 @@ export class ScreenRecorder {
|
|
|
99
145
|
return '';
|
|
100
146
|
}
|
|
101
147
|
|
|
102
|
-
get isRunning(): boolean {
|
|
103
|
-
return !!this._process?.isRunning;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
148
|
async start(): Promise<void> {
|
|
107
149
|
const args: string[] = [this._udid, 'recordVideo'];
|
|
108
150
|
if (this._display) {
|
|
@@ -214,51 +256,6 @@ export class ScreenRecorder {
|
|
|
214
256
|
}
|
|
215
257
|
}
|
|
216
258
|
|
|
217
|
-
async function extractSimulatorUdid(caps: StringRecord): Promise<string | null> {
|
|
218
|
-
if (caps['safari:useSimulator'] === false) {
|
|
219
|
-
return null;
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
const allDevices = _.flatMap(_.values(await new Simctl().getDevices(null, 'iOS')));
|
|
223
|
-
for (const {name, udid, state, sdk} of allDevices) {
|
|
224
|
-
if (state !== 'Booted') {
|
|
225
|
-
continue;
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
if (_.toLower(caps['safari:deviceUDID']) === _.toLower(udid)) {
|
|
229
|
-
return udid;
|
|
230
|
-
}
|
|
231
|
-
if (
|
|
232
|
-
_.toLower(caps['safari:deviceName']) === _.toLower(name) &&
|
|
233
|
-
((caps['safari:platformVersion'] && caps['safari:platformVersion'] === sdk) ||
|
|
234
|
-
!caps['safari:platformVersion'])
|
|
235
|
-
) {
|
|
236
|
-
return udid;
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
return null;
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
export interface StartRecordingOptions {
|
|
244
|
-
/** Specifies the codec type: "h264" or "hevc" */
|
|
245
|
-
codec?: string;
|
|
246
|
-
/** Supports "internal" or "external". Default is "internal" */
|
|
247
|
-
display?: string;
|
|
248
|
-
/** For non-rectangular displays, handle the mask by policy:
|
|
249
|
-
* - ignored: The mask is ignored and the unmasked framebuffer is saved.
|
|
250
|
-
* - alpha: Not supported, but retained for compatibility; the mask is rendered black.
|
|
251
|
-
* - black: The mask is rendered black.
|
|
252
|
-
*/
|
|
253
|
-
mask?: string;
|
|
254
|
-
/** The maximum recording time, in seconds. The default value is 600 seconds (10 minutes). */
|
|
255
|
-
timeLimit?: string | number;
|
|
256
|
-
/** Whether to ignore the call if a screen recording is currently running
|
|
257
|
-
* (`false`) or to start a new recording immediately and terminate the existing one if running (`true`).
|
|
258
|
-
*/
|
|
259
|
-
forceRestart?: boolean;
|
|
260
|
-
}
|
|
261
|
-
|
|
262
259
|
/**
|
|
263
260
|
* Record the Simulator's display in background while the automated test is running.
|
|
264
261
|
* This method uses `xcrun simctl io recordVideo` helper under the hood.
|
|
@@ -309,29 +306,6 @@ export async function startRecordingScreen(
|
|
|
309
306
|
}
|
|
310
307
|
}
|
|
311
308
|
|
|
312
|
-
export interface StopRecordingOptions {
|
|
313
|
-
/** The path to the remote location, where the resulting video should be uploaded.
|
|
314
|
-
* The following protocols are supported: http/https, ftp.
|
|
315
|
-
* Null or empty string value (the default setting) means the content of resulting
|
|
316
|
-
* file should be encoded as Base64 and passed as the endpoint response value.
|
|
317
|
-
* An exception will be thrown if the generated media file is too big to
|
|
318
|
-
* fit into the available process memory.
|
|
319
|
-
*/
|
|
320
|
-
remotePath?: string;
|
|
321
|
-
/** The name of the user for the remote authentication. */
|
|
322
|
-
user?: string;
|
|
323
|
-
/** The password for the remote authentication. */
|
|
324
|
-
pass?: string;
|
|
325
|
-
/** The http multipart upload method name. The 'PUT' one is used by default. */
|
|
326
|
-
method?: string;
|
|
327
|
-
/** Additional headers mapping for multipart http(s) uploads */
|
|
328
|
-
headers?: Record<string, string>;
|
|
329
|
-
/** The name of the form field, where the file content BLOB should be stored for http(s) uploads */
|
|
330
|
-
fileFieldName?: string;
|
|
331
|
-
/** Additional form fields for multipart http(s) uploads */
|
|
332
|
-
formFields?: Record<string, string> | Array<[string, string]>;
|
|
333
|
-
}
|
|
334
|
-
|
|
335
309
|
/**
|
|
336
310
|
* Stop recording the screen.
|
|
337
311
|
* If no screen recording has been started before then the method returns an empty string.
|
|
@@ -366,3 +340,29 @@ export async function stopRecordingScreen(
|
|
|
366
340
|
}
|
|
367
341
|
return await uploadRecordedMedia(videoPath, options?.remotePath ?? null, options ?? {});
|
|
368
342
|
}
|
|
343
|
+
|
|
344
|
+
async function extractSimulatorUdid(caps: StringRecord): Promise<string | null> {
|
|
345
|
+
if (caps['safari:useSimulator'] === false) {
|
|
346
|
+
return null;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
const allDevices = _.flatMap(_.values(await new Simctl().getDevices(null, 'iOS')));
|
|
350
|
+
for (const {name, udid, state, sdk} of allDevices) {
|
|
351
|
+
if (state !== 'Booted') {
|
|
352
|
+
continue;
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
if (_.toLower(caps['safari:deviceUDID']) === _.toLower(udid)) {
|
|
356
|
+
return udid;
|
|
357
|
+
}
|
|
358
|
+
if (
|
|
359
|
+
_.toLower(caps['safari:deviceName']) === _.toLower(name) &&
|
|
360
|
+
((caps['safari:platformVersion'] && caps['safari:platformVersion'] === sdk) ||
|
|
361
|
+
!caps['safari:platformVersion'])
|
|
362
|
+
) {
|
|
363
|
+
return udid;
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
return null;
|
|
368
|
+
}
|
package/lib/driver.ts
CHANGED
|
@@ -25,16 +25,26 @@ const NO_PROXY: RouteMatcher[] = [
|
|
|
25
25
|
['DELETE', new RegExp('^/session/[^/]+/cookie$')],
|
|
26
26
|
];
|
|
27
27
|
|
|
28
|
+
type W3CSafariDriverCaps = W3CDriverCaps<SafariConstraints>;
|
|
29
|
+
|
|
28
30
|
export class SafariDriver
|
|
29
31
|
extends BaseDriver<SafariConstraints, StringRecord>
|
|
30
32
|
implements ExternalDriver<SafariConstraints, string, StringRecord>
|
|
31
33
|
{
|
|
32
|
-
|
|
33
|
-
|
|
34
|
+
static newMethodMap = newMethodMap;
|
|
35
|
+
|
|
34
36
|
proxyReqRes: ((...args: any[]) => any) | null;
|
|
35
37
|
_screenRecorder: recordScreenCommands.ScreenRecorder | null;
|
|
36
38
|
|
|
37
|
-
|
|
39
|
+
deleteCookies = cookieCommands.deleteCookies;
|
|
40
|
+
|
|
41
|
+
findElOrEls = findCommands.findElOrEls;
|
|
42
|
+
|
|
43
|
+
startRecordingScreen = recordScreenCommands.startRecordingScreen;
|
|
44
|
+
stopRecordingScreen = recordScreenCommands.stopRecordingScreen;
|
|
45
|
+
|
|
46
|
+
private isProxyActive: boolean;
|
|
47
|
+
private _safari: SafariDriverServer | null;
|
|
38
48
|
|
|
39
49
|
constructor(opts: InitialOpts = {} as InitialOpts) {
|
|
40
50
|
super(opts);
|
|
@@ -107,15 +117,6 @@ export class SafariDriver
|
|
|
107
117
|
this.isProxyActive = false;
|
|
108
118
|
this._screenRecorder = null;
|
|
109
119
|
}
|
|
110
|
-
|
|
111
|
-
deleteCookies = cookieCommands.deleteCookies;
|
|
112
|
-
|
|
113
|
-
findElOrEls = findCommands.findElOrEls;
|
|
114
|
-
|
|
115
|
-
startRecordingScreen = recordScreenCommands.startRecordingScreen;
|
|
116
|
-
stopRecordingScreen = recordScreenCommands.stopRecordingScreen;
|
|
117
120
|
}
|
|
118
121
|
|
|
119
122
|
export default SafariDriver;
|
|
120
|
-
|
|
121
|
-
type W3CSafariDriverCaps = W3CDriverCaps<SafariConstraints>;
|
package/lib/safari.ts
CHANGED
|
@@ -33,10 +33,11 @@ class SafariProxy extends JWProxy {
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
class SafariDriverProcess {
|
|
36
|
-
private readonly log: AppiumLogger;
|
|
37
36
|
public port: number | null = null;
|
|
38
37
|
public proc: SubProcess | null = null;
|
|
39
38
|
|
|
39
|
+
private readonly log: AppiumLogger;
|
|
40
|
+
|
|
40
41
|
constructor() {
|
|
41
42
|
this.log = logger.getLogger('SafariDriverProcess');
|
|
42
43
|
}
|