@iflyrpa/playwright 1.1.2-beta.1 → 1.1.2-beta.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/dist/index.d.ts CHANGED
@@ -1,86 +1,93 @@
1
- import { Action } from '@iflyrpa/actions';
2
- export { ActionMethodParams } from '@iflyrpa/actions';
3
- import * as playwright_core from 'playwright-core';
4
- import { LoggerImplement, AutomateTask, ElectronApplication, PageParams } from '@iflyrpa/share';
5
-
6
- declare class Logger implements LoggerImplement {
7
- static instance: Logger | null;
8
- private stream;
9
- constructor(cachePath: string);
10
- static getInstance(cachePath: string): Logger;
11
- debug(...msg: any[]): void;
12
- info(...msg: any[]): void;
13
- warn(...msg: any[]): void;
14
- error(prefix: string, err?: unknown): void;
15
- close(): void;
16
- }
17
-
18
- declare class PackageManager {
19
- private task;
20
- constructor(task: Task);
21
- private getManifest;
22
- private extract;
23
- require(module: string): any;
24
- install(name: string, version: string): Promise<void>;
25
- update(name: string): Promise<string>;
26
- }
27
-
28
- interface TaskParams {
29
- debug?: boolean;
30
- cachePath: string;
31
- forceUpdate?: boolean;
32
- }
33
- declare class Task implements AutomateTask {
34
- logger: Logger;
35
- cachePath: string;
36
- debug: boolean;
37
- packagesDir: string;
38
- packageManager: PackageManager;
39
- private playwrightPackage;
40
- private electronPackage;
41
- private _electronApp;
42
- /**
43
- * 应用是否已关闭
44
- */
45
- isClosed: boolean;
46
- constructor({ cachePath, debug }: TaskParams);
47
- /**
48
- * 安装 playwright
49
- * @returns
50
- */
51
- private installPlaywright;
52
- /**
53
- * 安装 electron
54
- * @returns
55
- */
56
- private installElectron;
57
- /**
58
- * 启动 Electron
59
- * @returns
60
- */
61
- launchApp(): Promise<ElectronApplication>;
62
- /**
63
- * 临时文件目录
64
- * @returns
65
- */
66
- getTmpPath(): string;
67
- /**
68
- * 清空临时文件
69
- */
70
- private clearTmpPath;
71
- /**
72
- * 关闭 playwright 启动的 electron 客户端
73
- * @returns
74
- */
75
- close(): Promise<void>;
76
- createPage(pageParams: PageParams): Promise<playwright_core.Page>;
77
- }
78
-
79
- declare class RpaTask extends Task {
80
- actions: Action;
81
- constructor(params: TaskParams);
82
- private update;
83
- }
84
- declare const version: string;
85
-
86
- export { RpaTask, version };
1
+ import { Action } from '@iflyrpa/actions';
2
+ import { ActionMethodParams } from '@iflyrpa/actions';
3
+ import type { AutomateTask } from '@iflyrpa/share';
4
+ import type { ElectronApplication } from '@iflyrpa/share';
5
+ import { LoggerImplement } from '@iflyrpa/share';
6
+ import { Page } from 'playwright-core';
7
+ import type { PageParams } from '@iflyrpa/share';
8
+
9
+ export { ActionMethodParams }
10
+
11
+ declare class Logger implements LoggerImplement {
12
+ static instance: Logger | null;
13
+ private stream;
14
+ constructor(cachePath: string);
15
+ static getInstance(cachePath: string): Logger;
16
+ debug(...msg: any[]): void;
17
+ info(...msg: any[]): void;
18
+ warn(...msg: any[]): void;
19
+ error(prefix: string, err?: unknown): void;
20
+ close(): void;
21
+ }
22
+
23
+ declare class PackageManager {
24
+ private task;
25
+ constructor(task: Task);
26
+ private getManifest;
27
+ private extract;
28
+ require(module: string): any;
29
+ install(name: string, version: string): Promise<void>;
30
+ update(name: string): Promise<string>;
31
+ }
32
+
33
+ export declare class RpaTask extends Task {
34
+ actions: Action;
35
+ constructor(params: TaskParams);
36
+ private update;
37
+ }
38
+
39
+ declare class Task implements AutomateTask {
40
+ logger: Logger;
41
+ cachePath: string;
42
+ debug: boolean;
43
+ packagesDir: string;
44
+ packageManager: PackageManager;
45
+ private playwrightPackage;
46
+ private electronPackage;
47
+ private _electronApp;
48
+ /**
49
+ * 应用是否已关闭
50
+ */
51
+ isClosed: boolean;
52
+ constructor({ cachePath, debug }: TaskParams);
53
+ /**
54
+ * 安装 playwright
55
+ * @returns
56
+ */
57
+ private installPlaywright;
58
+ /**
59
+ * 安装 electron
60
+ * @returns
61
+ */
62
+ private installElectron;
63
+ /**
64
+ * 启动 Electron
65
+ * @returns
66
+ */
67
+ launchApp(): Promise<ElectronApplication>;
68
+ /**
69
+ * 临时文件目录
70
+ * @returns
71
+ */
72
+ getTmpPath(): string;
73
+ /**
74
+ * 清空临时文件
75
+ */
76
+ private clearTmpPath;
77
+ /**
78
+ * 关闭 playwright 启动的 electron 客户端
79
+ * @returns
80
+ */
81
+ close(): Promise<void>;
82
+ createPage(pageParams: PageParams): Promise<Page>;
83
+ }
84
+
85
+ declare interface TaskParams {
86
+ debug?: boolean;
87
+ cachePath: string;
88
+ forceUpdate?: boolean;
89
+ }
90
+
91
+ export declare const version: string;
92
+
93
+ export { }
package/dist/index.js ADDED
@@ -0,0 +1,391 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE__iflyrpa_actions_bd801d6f__ from "@iflyrpa/actions";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__ from "node:fs";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__ from "node:path";
4
+ import * as __WEBPACK_EXTERNAL_MODULE_node_child_process_27f17141__ from "node:child_process";
5
+ import * as __WEBPACK_EXTERNAL_MODULE_node_os_74b4b876__ from "node:os";
6
+ import * as __WEBPACK_EXTERNAL_MODULE__electron_get_e4875702__ from "@electron/get";
7
+ import * as __WEBPACK_EXTERNAL_MODULE_extract_zip_c4acec5a__ from "extract-zip";
8
+ import * as __WEBPACK_EXTERNAL_MODULE__iflyrpa_share_f7afdc8c__ from "@iflyrpa/share";
9
+ import * as __WEBPACK_EXTERNAL_MODULE_loglevel__ from "loglevel";
10
+ import * as __WEBPACK_EXTERNAL_MODULE__sentry_node_4658624b__ from "@sentry/node";
11
+ import * as __WEBPACK_EXTERNAL_MODULE__iflyrpa_pacote_56da1cff__ from "@iflyrpa/pacote";
12
+ var package_namespaceObject = JSON.parse('{"i8":"1.1.2-beta.3"}');
13
+ function _define_property(obj, key, value) {
14
+ if (key in obj) Object.defineProperty(obj, key, {
15
+ value: value,
16
+ enumerable: true,
17
+ configurable: true,
18
+ writable: true
19
+ });
20
+ else obj[key] = value;
21
+ return obj;
22
+ }
23
+ const ELECTRON_MIRROR = "http://npmmirror.com/mirrors/electron/";
24
+ const ELECTRON_VERSION = "22.3.27";
25
+ class ElectronInstall {
26
+ isInstalled() {
27
+ try {
28
+ if (__WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].readFileSync(__WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(this.rootDir, "version"), "utf-8").replace(/^v/, "") !== this.version) return false;
29
+ } catch (ignored) {
30
+ return false;
31
+ }
32
+ const electronPath = process.env.ELECTRON_OVERRIDE_DIST_PATH || __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(this.rootDir, this.platformPath);
33
+ return __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].existsSync(electronPath);
34
+ }
35
+ getPlatformPath() {
36
+ const platform = process.env.npm_config_platform || __WEBPACK_EXTERNAL_MODULE_node_os_74b4b876__["default"].platform();
37
+ switch(platform){
38
+ case "mas":
39
+ case "darwin":
40
+ return "Electron.app/Contents/MacOS/Electron";
41
+ case "freebsd":
42
+ case "openbsd":
43
+ case "linux":
44
+ return "electron";
45
+ case "win32":
46
+ return "electron.exe";
47
+ default:
48
+ throw new Error(`Electron builds are not available on platform: ${platform}`);
49
+ }
50
+ }
51
+ async install() {
52
+ const installed = this.isInstalled();
53
+ this.task.logger.info(`electron@${this.version} 是否已安装:${installed}`);
54
+ if (installed) return this.electronPath;
55
+ const platform = process.env.npm_config_platform || process.platform;
56
+ let arch = process.env.npm_config_arch || process.arch;
57
+ if ("darwin" === platform && "darwin" === process.platform && "x64" === arch && void 0 === process.env.npm_config_arch) try {
58
+ const output = __WEBPACK_EXTERNAL_MODULE_node_child_process_27f17141__["default"].execSync("sysctl -in sysctl.proc_translated");
59
+ if ("1" === output.toString().trim()) arch = "arm64";
60
+ } catch {}
61
+ try {
62
+ this.task.logger.info(`electron@${this.version} 开始下载资源`);
63
+ const zipPath = await (0, __WEBPACK_EXTERNAL_MODULE__electron_get_e4875702__.downloadArtifact)({
64
+ version: this.version,
65
+ artifactName: "electron",
66
+ force: "true" === process.env.force_no_cache,
67
+ cacheRoot: process.env.electron_config_cache,
68
+ checksums: void 0,
69
+ mirrorOptions: {
70
+ mirror: ELECTRON_MIRROR
71
+ },
72
+ platform,
73
+ arch
74
+ });
75
+ this.task.logger.info(`electron@${this.version} 开始解压资源`);
76
+ process.noAsar = true;
77
+ await (0, __WEBPACK_EXTERNAL_MODULE_extract_zip_c4acec5a__["default"])(zipPath, {
78
+ dir: this.rootDir
79
+ });
80
+ this.task.logger.info(`electron@${this.version} 下载成功`);
81
+ return this.electronPath;
82
+ } catch (error) {
83
+ this.task.logger.error(`electron@${this.version} 下载失败`, error);
84
+ throw error;
85
+ }
86
+ }
87
+ constructor(task){
88
+ _define_property(this, "task", void 0);
89
+ _define_property(this, "rootDir", void 0);
90
+ _define_property(this, "electronPath", void 0);
91
+ _define_property(this, "platformPath", void 0);
92
+ _define_property(this, "version", void 0);
93
+ this.task = task;
94
+ this.version = ELECTRON_VERSION;
95
+ this.platformPath = this.getPlatformPath();
96
+ this.rootDir = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(task.packagesDir, `electron@${this.version}`);
97
+ this.electronPath = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(this.rootDir, this.platformPath);
98
+ }
99
+ }
100
+ function sentry_define_property(obj, key, value) {
101
+ if (key in obj) Object.defineProperty(obj, key, {
102
+ value: value,
103
+ enumerable: true,
104
+ configurable: true,
105
+ writable: true
106
+ });
107
+ else obj[key] = value;
108
+ return obj;
109
+ }
110
+ class SentryInstance {
111
+ captureException(error) {
112
+ var _this_sentry;
113
+ null === (_this_sentry = this.sentry) || void 0 === _this_sentry || _this_sentry.captureException(error);
114
+ }
115
+ constructor(dsn){
116
+ sentry_define_property(this, "sentry", void 0);
117
+ if (!dsn) return;
118
+ this.sentry = new __WEBPACK_EXTERNAL_MODULE__sentry_node_4658624b__.NodeClient({
119
+ dsn,
120
+ defaultIntegrations: false
121
+ });
122
+ }
123
+ }
124
+ const sentry = new SentryInstance(process.env.RPA_SENTRY_DSN);
125
+ function logger_define_property(obj, key, value) {
126
+ if (key in obj) Object.defineProperty(obj, key, {
127
+ value: value,
128
+ enumerable: true,
129
+ configurable: true,
130
+ writable: true
131
+ });
132
+ else obj[key] = value;
133
+ return obj;
134
+ }
135
+ class Logger {
136
+ static getInstance(cachePath) {
137
+ if (!Logger.instance) Logger.instance = new Logger(cachePath);
138
+ return Logger.instance;
139
+ }
140
+ debug(...msg) {
141
+ __WEBPACK_EXTERNAL_MODULE_loglevel__["default"].debug(...msg);
142
+ }
143
+ info(...msg) {
144
+ __WEBPACK_EXTERNAL_MODULE_loglevel__["default"].info(...msg);
145
+ }
146
+ warn(...msg) {
147
+ __WEBPACK_EXTERNAL_MODULE_loglevel__["default"].warn(...msg);
148
+ }
149
+ error(prefix, err) {
150
+ const error = err || prefix;
151
+ if (err instanceof Error) err.message = `${prefix}:${err.message}`;
152
+ __WEBPACK_EXTERNAL_MODULE_loglevel__["default"].error(error);
153
+ sentry.captureException(error);
154
+ }
155
+ close() {
156
+ this.stream.end();
157
+ }
158
+ constructor(cachePath){
159
+ logger_define_property(this, "stream", void 0);
160
+ if (Logger.instance) return Logger.instance;
161
+ const logFile = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(cachePath, "rpa.log");
162
+ (0, __WEBPACK_EXTERNAL_MODULE__iflyrpa_share_f7afdc8c__.ensureFileSync)(logFile);
163
+ this.stream = __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].createWriteStream(logFile, {
164
+ flags: "a"
165
+ });
166
+ __WEBPACK_EXTERNAL_MODULE_loglevel__["default"].setLevel("debug");
167
+ __WEBPACK_EXTERNAL_MODULE_loglevel__["default"].methodFactory = (methodName)=>(message)=>{
168
+ this.stream.write(`[${new Date().toLocaleString()}] ${methodName.toUpperCase()}: ${message}\n`);
169
+ };
170
+ __WEBPACK_EXTERNAL_MODULE_loglevel__["default"].setLevel(__WEBPACK_EXTERNAL_MODULE_loglevel__["default"].getLevel());
171
+ Logger.instance = this;
172
+ }
173
+ }
174
+ logger_define_property(Logger, "instance", null);
175
+ const template = `
176
+ const { app } = require("electron");
177
+
178
+ app.whenReady().then(() => {});
179
+
180
+ app.on("window-all-closed", (e) => e.preventDefault());
181
+ `;
182
+ const generateFile = async (dir)=>{
183
+ const filePath = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(dir, "main.js");
184
+ const isPathExists = await (0, __WEBPACK_EXTERNAL_MODULE__iflyrpa_share_f7afdc8c__.pathExists)(filePath);
185
+ if (!isPathExists) {
186
+ await (0, __WEBPACK_EXTERNAL_MODULE__iflyrpa_share_f7afdc8c__.ensureFile)(filePath);
187
+ await (0, __WEBPACK_EXTERNAL_MODULE__iflyrpa_share_f7afdc8c__.writeFile)(filePath, template);
188
+ }
189
+ return filePath;
190
+ };
191
+ const launchElectronApp = async (cachePath, playwright, electronPath)=>{
192
+ const logger = Logger.getInstance(cachePath);
193
+ try {
194
+ const mainPath = await generateFile(cachePath);
195
+ const electronApp = await playwright._electron.launch({
196
+ executablePath: electronPath,
197
+ args: [
198
+ mainPath
199
+ ],
200
+ cwd: cachePath
201
+ });
202
+ logger.info(`electron 启动成功:${electronPath} ${mainPath}`);
203
+ return electronApp;
204
+ } catch (error) {
205
+ logger.error("electron 启动失败:", error);
206
+ throw error;
207
+ }
208
+ };
209
+ function packageManager_define_property(obj, key, value) {
210
+ if (key in obj) Object.defineProperty(obj, key, {
211
+ value: value,
212
+ enumerable: true,
213
+ configurable: true,
214
+ writable: true
215
+ });
216
+ else obj[key] = value;
217
+ return obj;
218
+ }
219
+ const NPM_REGISTRY = "https://registry.npmmirror.com/";
220
+ class PackageManager {
221
+ async getManifest(module) {
222
+ try {
223
+ return __WEBPACK_EXTERNAL_MODULE__iflyrpa_pacote_56da1cff__["default"].manifest(module, {
224
+ registry: NPM_REGISTRY
225
+ });
226
+ } catch (error) {
227
+ this.task.logger.error("获取依赖信息失败", error);
228
+ throw error;
229
+ }
230
+ }
231
+ async extract(name, version = "latest") {
232
+ const packageName = `${name}@${version}`;
233
+ try {
234
+ this.task.logger.info(`${packageName} 开始安装`);
235
+ await __WEBPACK_EXTERNAL_MODULE__iflyrpa_pacote_56da1cff__["default"].extract(packageName, __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(this.task.packagesDir, packageName), {
236
+ registry: NPM_REGISTRY
237
+ });
238
+ this.task.logger.info(`${packageName} 安装成功`);
239
+ } catch (error) {
240
+ this.task.logger.error(`${packageName} 安装失败`, error);
241
+ }
242
+ }
243
+ require(module) {
244
+ try {
245
+ return require(__WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(this.task.packagesDir, module));
246
+ } catch (error) {
247
+ return null;
248
+ }
249
+ }
250
+ async install(name, version) {
251
+ const packageName = `${name}@${version}`;
252
+ const plugin = this.require(packageName);
253
+ this.task.logger.info(`${packageName} 是否已安装:${!!plugin}`);
254
+ if (!plugin) await this.extract(name, version);
255
+ }
256
+ async update(name) {
257
+ const manifest = await this.getManifest(`${name}@latest`);
258
+ const version = manifest.version;
259
+ const plugin = this.require(`${name}@${version}`);
260
+ if (!plugin) await this.extract(name, version);
261
+ return version;
262
+ }
263
+ constructor(task){
264
+ packageManager_define_property(this, "task", void 0);
265
+ this.task = task;
266
+ }
267
+ }
268
+ function task_define_property(obj, key, value) {
269
+ if (key in obj) Object.defineProperty(obj, key, {
270
+ value: value,
271
+ enumerable: true,
272
+ configurable: true,
273
+ writable: true
274
+ });
275
+ else obj[key] = value;
276
+ return obj;
277
+ }
278
+ const PLAYWRIGHT_VERSION = "1.46.1";
279
+ const PLAYWRIGHT_NAME = "playwright-core";
280
+ class Task {
281
+ async installPlaywright() {
282
+ const packageName = `${PLAYWRIGHT_NAME}@${PLAYWRIGHT_VERSION}`;
283
+ await this.packageManager.install(PLAYWRIGHT_NAME, PLAYWRIGHT_VERSION);
284
+ return this.packageManager.require(packageName);
285
+ }
286
+ installElectron() {
287
+ return new ElectronInstall(this).install();
288
+ }
289
+ async launchApp() {
290
+ if (!this._electronApp) {
291
+ const [playwright, electronPath] = await Promise.all([
292
+ this.playwrightPackage,
293
+ this.electronPackage
294
+ ]);
295
+ this._electronApp = await launchElectronApp(this.cachePath, playwright, electronPath);
296
+ }
297
+ return this._electronApp;
298
+ }
299
+ getTmpPath() {
300
+ return __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(this.cachePath, "tmp");
301
+ }
302
+ clearTmpPath() {
303
+ const tmpPath = this.getTmpPath();
304
+ return __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].rm(tmpPath, {
305
+ recursive: true,
306
+ force: true
307
+ }, (err)=>{
308
+ if (err) this.logger.error("删除临时文件失败,", err);
309
+ else this.logger.info("删除临时文件成功");
310
+ });
311
+ }
312
+ async close() {
313
+ var _this__electronApp;
314
+ this.logger.info("关闭应用");
315
+ this.clearTmpPath();
316
+ this.logger.close();
317
+ await (null === (_this__electronApp = this._electronApp) || void 0 === _this__electronApp ? void 0 : _this__electronApp.close());
318
+ this.isClosed = true;
319
+ this._electronApp = null;
320
+ }
321
+ async createPage(pageParams) {
322
+ const electronApp = await this.launchApp();
323
+ const [page] = await Promise.all([
324
+ electronApp.waitForEvent("window"),
325
+ electronApp.evaluate(async (electron, { pageParams })=>{
326
+ await electron.app.whenReady();
327
+ const window = new electron.BrowserWindow({
328
+ show: pageParams.show,
329
+ width: 1500,
330
+ height: 800,
331
+ webPreferences: {
332
+ nodeIntegration: true,
333
+ contextIsolation: false
334
+ }
335
+ });
336
+ if (pageParams.cookies) await Promise.all(pageParams.cookies.map((cookie)=>electron.session.defaultSession.cookies.set(cookie)));
337
+ await window.loadURL(pageParams.url);
338
+ }, {
339
+ pageParams
340
+ })
341
+ ]);
342
+ return page;
343
+ }
344
+ constructor({ cachePath, debug }){
345
+ task_define_property(this, "logger", void 0);
346
+ task_define_property(this, "cachePath", void 0);
347
+ task_define_property(this, "debug", void 0);
348
+ task_define_property(this, "packagesDir", void 0);
349
+ task_define_property(this, "packageManager", void 0);
350
+ task_define_property(this, "playwrightPackage", void 0);
351
+ task_define_property(this, "electronPackage", void 0);
352
+ task_define_property(this, "_electronApp", null);
353
+ task_define_property(this, "isClosed", false);
354
+ this.cachePath = cachePath;
355
+ this.packagesDir = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(cachePath, "packages");
356
+ this.debug = debug || false;
357
+ this.logger = Logger.getInstance(cachePath);
358
+ this.packageManager = new PackageManager(this);
359
+ this.playwrightPackage = this.installPlaywright();
360
+ this.electronPackage = this.installElectron();
361
+ }
362
+ }
363
+ function src_define_property(obj, key, value) {
364
+ if (key in obj) Object.defineProperty(obj, key, {
365
+ value: value,
366
+ enumerable: true,
367
+ configurable: true,
368
+ writable: true
369
+ });
370
+ else obj[key] = value;
371
+ return obj;
372
+ }
373
+ class RpaTask extends Task {
374
+ async update() {
375
+ try {
376
+ const name = "@iflyrpa/actions";
377
+ const version = await this.packageManager.update(name);
378
+ const actionPackage = this.packageManager.require(`${name}@${version}`);
379
+ (null == actionPackage ? void 0 : actionPackage.actions) && (this.actions = actionPackage.actions);
380
+ } catch (error) {
381
+ this.logger.error("更新依赖失败", error);
382
+ }
383
+ }
384
+ constructor(params){
385
+ super(params), src_define_property(this, "actions", void 0);
386
+ this.actions = new __WEBPACK_EXTERNAL_MODULE__iflyrpa_actions_bd801d6f__.Action(this);
387
+ params.forceUpdate && this.update();
388
+ }
389
+ }
390
+ const src_version = package_namespaceObject.i8;
391
+ export { RpaTask, src_version as version };
package/package.json CHANGED
@@ -1,38 +1,38 @@
1
1
  {
2
2
  "name": "@iflyrpa/playwright",
3
3
  "type": "module",
4
- "version": "1.1.2-beta.1",
4
+ "version": "1.1.2-beta.3",
5
+ "exports": {
6
+ ".": {
7
+ "types": "./dist/index.d.ts",
8
+ "import": "./dist/index.js",
9
+ "require": "./dist/index.cjs"
10
+ }
11
+ },
5
12
  "main": "./dist/index.cjs",
6
- "module": "./dist/index.mjs",
13
+ "module": "./dist/index.js",
7
14
  "types": "./dist/index.d.ts",
8
- "author": "bijinfeng",
9
- "license": "ISC",
10
15
  "files": [
11
16
  "dist"
12
17
  ],
13
- "peerDependencies": {
14
- "playwright": "^1.46.1"
15
- },
16
18
  "devDependencies": {
17
- "@types/pacote": "^11.1.8",
18
- "esno": "^4.7.0",
19
- "pacote": "^20.0.0",
20
- "playwright": "^1.46.1",
21
- "typescript": "^5.5.2",
22
- "unbuild": "^2.0.0",
23
- "@iflyrpa/share": "0.0.2"
19
+ "@microsoft/api-extractor": "^7.49.1",
20
+ "@rslib/core": "^0.3.1",
21
+ "@types/node": "^22.8.1",
22
+ "playwright-core": "^1.46.1",
23
+ "typescript": "^5.5.2"
24
24
  },
25
25
  "dependencies": {
26
26
  "@electron/get": "^2.0.0",
27
27
  "@sentry/node": "^5.5.0",
28
28
  "extract-zip": "^2.0.1",
29
29
  "loglevel": "^1.9.2",
30
+ "@iflyrpa/pacote": "1.0.0",
30
31
  "@iflyrpa/actions": "1.0.2",
31
32
  "@iflyrpa/share": "0.0.2"
32
33
  },
33
34
  "scripts": {
34
- "build": "unbuild",
35
- "dev": "unbuild --stub",
36
- "start": "esno src/index.ts"
35
+ "build": "rslib build",
36
+ "dev": "rslib build --watch"
37
37
  }
38
38
  }