@iqx-limited/quick-pdf 1.8.0 → 1.8.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.
package/dist/index.cjs CHANGED
@@ -7,15 +7,16 @@ var promises = require('node:fs/promises');
7
7
  var puppeteer = require('puppeteer');
8
8
  var os = require('node:os');
9
9
  var node_child_process = require('node:child_process');
10
- var node_fs = require('node:fs');
11
10
  var imageSize = require('image-size');
12
11
  var PDFDocument = require('pdfkit');
12
+ var node_fs = require('node:fs');
13
13
  var htmlValidate = require('html-validate');
14
14
 
15
15
  let firefox = null;
16
16
  let chrome = null;
17
17
  let isRemoteBrowser = false;
18
18
  let devMode = false;
19
+ const registryPath = node_path.join(process.cwd(), ".puppeteer-launches.json");
19
20
  const BROWSER_PATHS = {
20
21
  chrome: {
21
22
  linux: "/usr/bin/google-chrome",
@@ -28,136 +29,81 @@ const BROWSER_PATHS = {
28
29
  windows: node_path.join("C:", "Program Files", "Mozilla Firefox", "firefox.exe")
29
30
  }
30
31
  };
31
- const getOS = () => {
32
- if (process.platform === "win32")
33
- return "windows";
34
- if (process.platform === "darwin")
35
- return "mac";
36
- return "linux";
32
+ let launching = null;
33
+ const RESOURCE_LIMIT = 100;
34
+ let resourceCount = 0;
35
+ let firefoxPagePool = [];
36
+ let chromePagePool = [];
37
+ const isProcessAlive = (pid) => {
38
+ try {
39
+ process.kill(pid, 0);
40
+ return true;
41
+ }
42
+ catch {
43
+ return false;
44
+ }
37
45
  };
38
- function escapeForShellRegex(path) {
39
- return path.replace(/\\/g, "\\\\").replace(/\//g, "\\/");
40
- }
41
- const BROWSER_DATA_DIR = node_path.join(process.cwd(), "browser-data");
42
- const LAUNCH_ID_ARG = "--quickpdf-launch-id=";
43
- const cleanupPuppeteerBrowsers = () => {
44
- console.log("Cleaning up orphaned Puppeteer browser instances...");
45
- const platform = os.platform();
46
- let pidsToKill = [];
47
- const escapedDataDir = escapeForShellRegex(BROWSER_DATA_DIR);
46
+ const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
47
+ const killProcess = (pid, force = false) => {
48
+ const isWin = os.platform() === "win32";
48
49
  try {
49
- if (platform === "win32") {
50
- const args = [
51
- "-Command",
52
- `Get-CimInstance Win32_Process | Where-Object {
53
-           ($_.Name -eq 'chrome.exe' -or $_.Name -eq 'firefox.exe') -and
54
-           ($_.CommandLine -like '*-user-data-dir=*${escapedDataDir}*' -or $_.CommandLine -like '*${LAUNCH_ID_ARG}*')
55
-         } | Select-Object -ExpandProperty ProcessId`
56
- ];
57
- const output = node_child_process.spawnSync("powershell", args, { encoding: "utf8" });
58
- pidsToKill = output.stdout.trim().split(os.EOL).filter(Boolean);
50
+ if (isWin) {
51
+ const signal = force ? "/F" : "";
52
+ node_child_process.execSync(`taskkill ${signal} /PID ${pid}`);
59
53
  }
60
54
  else {
61
- const args = [
62
- "aux",
63
- "|", "grep", "-E", "'[c]hrome|[f]irefox'",
64
- "|", "grep", "-E", `-- '-user-data-dir=.+${escapedDataDir}' | ${LAUNCH_ID_ARG}`,
65
- "|", "awk", "'{print $2}'"
66
- ];
67
- const output = node_child_process.spawnSync("ps", args, { encoding: "utf8" });
68
- pidsToKill = output.stdout.trim().split(os.EOL).filter(Boolean);
69
- }
70
- if (pidsToKill.length === 0) {
71
- console.log("No orphaned Puppeteer browser instances found matching user data dir or launch ID.");
72
- return;
73
- }
74
- console.log(`Found ${pidsToKill.length} orphaned browser processes: ${pidsToKill.join(", ")}`);
75
- let killedCount = 0;
76
- for (const pid of pidsToKill) {
77
- try {
78
- const numericPid = Number(pid);
79
- if (isNaN(numericPid)) {
80
- console.warn(`Skipping invalid PID: ${pid}`);
81
- continue;
82
- }
83
- if (platform === "win32") {
84
- node_child_process.execSync(`taskkill /PID ${numericPid} /F /T`);
85
- }
86
- else {
87
- try {
88
- process.kill(numericPid, "SIGTERM");
89
- node_child_process.execSync(`sleep 0.5`);
90
- }
91
- catch (e) {
92
- if (e.code !== "ESRCH") {
93
- throw e;
94
- }
95
- }
96
- try {
97
- process.kill(numericPid, 0);
98
- process.kill(numericPid, "SIGKILL");
99
- }
100
- catch (e) {
101
- if (e.code !== "ESRCH") {
102
- throw e;
103
- }
104
- }
105
- }
106
- killedCount++;
107
- }
108
- catch (e) {
109
- if (e.message.includes("not found") || e.code === "ESRCH") {
110
- console.log(`Process ${pid} already terminated.`);
111
- }
112
- else {
113
- console.warn(`⚠️ Failed to kill process ${pid}: ${e.message}`);
114
- }
115
- }
55
+ process.kill(pid, force ? "SIGKILL" : "SIGTERM");
116
56
  }
117
- console.log(`✅ Attempted to clean up ${killedCount} orphaned Puppeteer browser instances.`);
57
+ return true;
118
58
  }
119
- catch (e) {
120
- console.error(`Error during cleanup: ${e.message}`);
59
+ catch {
60
+ return false;
121
61
  }
122
- finally {
123
- let processesUsingDir = false;
124
- const escapedDataDir = escapeForShellRegex(BROWSER_DATA_DIR);
125
- try {
126
- const platform = os.platform();
127
- if (platform === "win32") {
128
- const args = [
129
- "-Command",
130
- `Get-Process | Where-Object { $_.Modules | Where-Object { $_.FileName -like '*${escapedDataDir}*' } } | Select-Object -ExpandProperty Id`
131
- ];
132
- const output = node_child_process.spawnSync("powershell", args, { encoding: "utf8" });
133
- processesUsingDir = output.stdout.trim().length > 0;
134
- }
135
- else {
136
- const command = `lsof +D "${BROWSER_DATA_DIR}" 2>/dev/null | grep -v COMMAND | wc -l`;
137
- const output = node_child_process.execSync(command, { encoding: "utf8" });
138
- processesUsingDir = parseInt(output.trim()) > 0;
62
+ };
63
+ const cleanupOrphanedBrowsers = async () => {
64
+ let registry = {};
65
+ try {
66
+ const data = await promises.readFile(registryPath, "utf8");
67
+ registry = JSON.parse(data);
68
+ }
69
+ catch {
70
+ registry = {};
71
+ }
72
+ const launchIds = Object.keys(registry);
73
+ for (const launchId of launchIds) {
74
+ const { pid, ownerPid } = registry[launchId];
75
+ if (!isProcessAlive(ownerPid)) {
76
+ try {
77
+ killProcess(pid);
139
78
  }
140
- }
141
- catch (e) {
142
- console.log(`Could not check if processes are using browser-data directory: ${e.message}`);
143
- }
144
- if (node_fs.existsSync(BROWSER_DATA_DIR)) {
145
- if (!processesUsingDir) {
146
- try {
147
- node_fs.rmSync(BROWSER_DATA_DIR, { recursive: true, force: true });
148
- console.log(`🧹 Cleaned up browser-data directory: ${BROWSER_DATA_DIR}`);
149
- }
150
- catch {
151
- console.warn(`⚠️ Could not delete browser-data directory, it may be in use: ${BROWSER_DATA_DIR}`);
79
+ catch { }
80
+ await sleep(500);
81
+ try {
82
+ if (isProcessAlive(pid)) {
83
+ killProcess(pid, true);
152
84
  }
153
85
  }
86
+ catch { }
87
+ delete registry[launchId];
88
+ console.log(`🧹 Cleaned up orphaned browser PID ${pid} (launchId: ${launchId})`);
154
89
  }
155
90
  }
91
+ await promises.writeFile(registryPath, JSON.stringify(registry, null, 2));
92
+ };
93
+ const getOS = () => {
94
+ if (process.platform === "win32")
95
+ return "windows";
96
+ if (process.platform === "darwin")
97
+ return "mac";
98
+ return "linux";
156
99
  };
157
100
  const setDevMode = (mode) => {
158
101
  devMode = mode;
159
102
  if (devMode) {
160
103
  console.log("Quick-PDF: Dev Mode Enabled");
104
+ cleanupOrphanedBrowsers().catch(err => {
105
+ console.error("Error during cleanup of orphaned browsers:", err);
106
+ });
161
107
  }
162
108
  };
163
109
  const isBrowserInstalled = async (browser) => {
@@ -171,11 +117,6 @@ const isBrowserInstalled = async (browser) => {
171
117
  return false;
172
118
  }
173
119
  };
174
- let launching = null;
175
- const RESOURCE_LIMIT = 100;
176
- let resourceCount = 0;
177
- let firefoxPagePool = [];
178
- let chromePagePool = [];
179
120
  async function launchPages(browser, type) {
180
121
  let pool = type === "chrome" ? chromePagePool : firefoxPagePool;
181
122
  if (!browser?.connected) {
@@ -270,7 +211,6 @@ async function restorePage(type, page) {
270
211
  firefoxPagePool.push(page);
271
212
  }
272
213
  }
273
- let cleanupRunning = false;
274
214
  async function launchBrowser(browserType, wsURL) {
275
215
  const isBrowserValid = (browser) => {
276
216
  try {
@@ -291,14 +231,12 @@ async function launchBrowser(browserType, wsURL) {
291
231
  return { browser: chrome, type: "chrome" };
292
232
  }
293
233
  else {
294
- const [firefox, chrome] = await Promise.all([
295
- launchBrowser("firefox", wsURL).catch(() => null),
296
- launchBrowser("chrome", wsURL).catch(() => null)
297
- ]);
234
+ const firefox = await launchBrowser("firefox", wsURL).catch(() => null);
298
235
  if (firefox) {
299
236
  return firefox;
300
237
  }
301
- else if (chrome) {
238
+ const chrome = await launchBrowser("chrome", wsURL).catch(() => null);
239
+ if (chrome) {
302
240
  return chrome;
303
241
  }
304
242
  throw new Error("No browser launched yet");
@@ -316,20 +254,6 @@ async function launchBrowser(browserType, wsURL) {
316
254
  type: "chrome"
317
255
  };
318
256
  }
319
- if (cleanupRunning) {
320
- while (cleanupRunning) {
321
- await new Promise(resolve => setTimeout(resolve, 100));
322
- }
323
- }
324
- else {
325
- cleanupRunning = true;
326
- try {
327
- await cleanupPuppeteerBrowsers();
328
- }
329
- finally {
330
- cleanupRunning = false;
331
- }
332
- }
333
257
  if (!(await isBrowserInstalled(browserType))) {
334
258
  throw new Error(`${browserType.toUpperCase()} is not installed.`);
335
259
  }
@@ -349,10 +273,11 @@ async function launchBrowser(browserType, wsURL) {
349
273
  }
350
274
  else {
351
275
  console.log(`Launching local ${browserType.toUpperCase()} browser...`);
276
+ node_path.join(os.tmpdir(), `puppeteer-${Date.now()}-${process.pid}`);
352
277
  browser = await puppeteer.launch({
353
278
  browser: browserType,
354
279
  headless: "shell",
355
- userDataDir: node_path.join(process.cwd(), "browser-data"),
280
+ userDataDir: undefined,
356
281
  executablePath: BROWSER_PATHS[browserType][getOS()],
357
282
  args: [
358
283
  "--no-sandbox",
@@ -360,7 +285,26 @@ async function launchBrowser(browserType, wsURL) {
360
285
  `--quickpdf-launch-id=${Date.now()}`
361
286
  ]
362
287
  });
288
+ if (devMode) {
289
+ console.log(`${browserType.toUpperCase()} launched with PID: ${browser.process()?.pid}`);
290
+ }
291
+ }
292
+ let registry = {};
293
+ try {
294
+ const data = await promises.readFile(registryPath, "utf8");
295
+ registry = JSON.parse(data);
296
+ }
297
+ catch {
298
+ }
299
+ const pid = browser.process()?.pid;
300
+ if (pid) {
301
+ registry[pid] = {
302
+ pid: pid,
303
+ ownerPid: process.pid,
304
+ started: Date.now()
305
+ };
363
306
  }
307
+ await promises.writeFile(registryPath, JSON.stringify(registry, null, 2));
364
308
  await launchPages(browser, browserType);
365
309
  console.log(`${browserType.toUpperCase()} browser is ready for usage.`);
366
310
  if (browserType === "chrome") {
@@ -370,7 +314,7 @@ async function launchBrowser(browserType, wsURL) {
370
314
  });
371
315
  chrome.on("disconnected", () => {
372
316
  chrome = null;
373
- console.warn("Browser disconnected unexpectedly");
317
+ console.warn("Browser disconnected");
374
318
  });
375
319
  }
376
320
  else {
@@ -380,7 +324,7 @@ async function launchBrowser(browserType, wsURL) {
380
324
  });
381
325
  firefox.on("disconnected", () => {
382
326
  firefox = null;
383
- console.warn("Browser disconnected unexpectedly");
327
+ console.warn("Browser disconnected");
384
328
  });
385
329
  }
386
330
  launching = null;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/browsers.ts","../src/modules/pdf2img.ts","../src/utilies.ts","../src/modules/img2pdf.ts","../src/modules/html2pdf.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["join","spawnSync","execSync","existsSync","rmSync","access","resolve","pathToFileURL","writeFile","unlink","readFileSync","imageSize","HtmlValidate","satisfies"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/browsers.ts","../src/modules/pdf2img.ts","../src/utilies.ts","../src/modules/img2pdf.ts","../src/modules/html2pdf.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null],"names":["join","platform","execSync","readFile","writeFile","access","resolve","pathToFileURL","unlink","existsSync","readFileSync","imageSize","HtmlValidate","satisfies"],"mappings":";;;;;;;;;;;;;;AAKA,IAAI,OAAO,GAAmB,IAAI;AAClC,IAAI,MAAM,GAAmB,IAAI;AACjC,IAAI,eAAe,GAAG,KAAK;AAE3B,IAAI,OAAO,GAAY,KAAK;AAG5B,MAAM,YAAY,GAAGA,cAAI,CAAG,OAAO,CAAC,GAAG,EAAI,EAAE,0BAA0B,CAAE;AAEzE,MAAM,aAAa,GAAG;AACpB,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,wBAAwB;AAC/B,QAAA,GAAG,EAAE,8DAA8D;AACnE,QAAA,OAAO,EAAEA,cAAI,CAAG,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY;AACvF,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,KAAK,EAAE,kBAAkB;AACzB,QAAA,GAAG,EAAE,kDAAkD;QACvD,OAAO,EAAEA,cAAI,CAAG,IAAI,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa;AACxE;CACF;AAGD,IAAI,SAAS,GAGD,IAAI;AAChB,MAAM,cAAc,GAAG,GAAG;AAC1B,IAAI,aAAa,GAAG,CAAC;AAErB,IAAI,eAAe,GAAa,EAAG;AACnC,IAAI,cAAc,GAAa,EAAG;AAGlC,MAAM,cAAc,GAAG,CAAE,GAAW,KAAK;AACvC,IAAA,IAAI;AACF,QAAA,OAAO,CAAC,IAAI,CAAG,GAAG,EAAE,CAAC,CAAE;AACvB,QAAA,OAAO,IAAI;IACb;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,KAAK;IACd;AACF,CAAC;AAGD,MAAM,KAAK,GAAG,CAAE,EAAU,KAAM,IAAI,OAAO,CAAG,OAAO,IAAI,UAAU,CAAG,OAAO,EAAE,EAAE,CAAE,CAAE;AAKrF,MAAM,WAAW,GAAG,CAAE,GAAW,EAAE,KAAK,GAAG,KAAK,KAAK;AACnD,IAAA,MAAM,KAAK,GAAGC,WAAQ,EAAI,KAAK,OAAO;AAEtC,IAAA,IAAI;QACF,IAAK,KAAK,EAAG;YAEX,MAAM,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,EAAE;AAChC,YAAAC,2BAAQ,CAAG,CAAA,SAAA,EAAY,MAAM,SAAS,GAAG,CAAA,CAAE,CAAE;QAC/C;aAAO;AAEL,YAAA,OAAO,CAAC,IAAI,CAAG,GAAG,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,CAAE;QACrD;AACA,QAAA,OAAO,IAAI;IACb;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,KAAK;IACd;AACF,CAAC;AAEM,MAAM,uBAAuB,GAAG,YAAY;IACjD,IAAI,QAAQ,GAAuE,EAAG;AAEtF,IAAA,IAAI;QACF,MAAM,IAAI,GAAG,MAAMC,iBAAQ,CAAG,YAAY,EAAE,MAAM,CAAE;AACpD,QAAA,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAG,IAAI,CAAE;IAChC;AAAE,IAAA,MAAM;QAEN,QAAQ,GAAG,EAAG;IAChB;IAEA,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAG,QAAQ,CAAE;AAC1C,IAAA,KAAM,MAAM,QAAQ,IAAI,SAAS,EAAG;QAClC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAG,QAAQ,CAAE;AAE/C,QAAA,IAAK,CAAC,cAAc,CAAG,QAAQ,CAAE,EAAG;AAElC,YAAA,IAAI;gBACF,WAAW,CAAG,GAAG,CAAE;YACrB;YAAE,MAAM,EAAE;AAGV,YAAA,MAAM,KAAK,CAAG,GAAG,CAAE;AAEnB,YAAA,IAAI;AACF,gBAAA,IAAK,cAAc,CAAG,GAAG,CAAE,EAAG;AAC5B,oBAAA,WAAW,CAAG,GAAG,EAAE,IAAI,CAAE;gBAC3B;YACF;YAAE,MAAM,EAAE;AAGV,YAAA,OAAO,QAAQ,CAAG,QAAQ,CAAE;YAC5B,OAAO,CAAC,GAAG,CAAG,CAAA,mCAAA,EAAsC,GAAG,CAAA,YAAA,EAAe,QAAQ,CAAA,CAAA,CAAG,CAAE;QACrF;IACF;AAGA,IAAA,MAAMC,kBAAS,CAAG,YAAY,EAAE,IAAI,CAAC,SAAS,CAAG,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAE,CAAE;AACxE,CAAC;AAGD,MAAM,KAAK,GAAG,MAAM;AAClB,IAAA,IAAK,OAAO,CAAC,QAAQ,KAAK,OAAO;AAAG,QAAA,OAAO,SAAS;AACpD,IAAA,IAAK,OAAO,CAAC,QAAQ,KAAK,QAAQ;AAAG,QAAA,OAAO,KAAK;AACjD,IAAA,OAAO,OAAO;AAChB,CAAC;AAEM,MAAM,UAAU,GAAG,CAAE,IAAa,KAAK;IAC5C,OAAO,GAAG,IAAI;IACd,IAAK,OAAO,EAAG;AACb,QAAA,OAAO,CAAC,GAAG,CAAG,6BAA6B,CAAE;AAE7C,QAAA,uBAAuB,EAAI,CAAC,KAAK,CAAG,GAAG,IAAG;AACxC,YAAA,OAAO,CAAC,KAAK,CAAG,4CAA4C,EAAE,GAAG,CAAE;AACrE,QAAA,CAAC,CAAE;IACL;AACF;AAUA,MAAM,kBAAkB,GAAG,OAAQ,OAA6B,KAAK;AACnE,IAAA,MAAM,EAAE,GAAG,KAAK,EAAI;IACpB,MAAM,WAAW,GAAG,aAAa,CAAG,OAAO,CAAE,CAAG,EAAE,CAAE;AACpD,IAAA,IAAI;AACF,QAAA,MAAMC,eAAM,CAAG,WAAW,CAAE;AAC5B,QAAA,OAAO,IAAI;IACb;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,KAAK;IACd;AACF,CAAC;AAED,eAAe,WAAW,CAAG,OAAuB,EAAE,IAA0B,EAAA;AAC9E,IAAA,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,GAAG,cAAc,GAAG,eAAe;AAE/D,IAAA,IAAK,CAAC,OAAO,EAAE,SAAS,EAAG;AACzB,QAAA,MAAM,IAAI,KAAK,CAAG,sBAAsB,CAAE;IAC5C;AAEA,IAAA,IAAK,IAAI,CAAC,MAAM,GAAG,CAAC,EAAG;AACrB,QAAA,OAAO,IAAI;IACb;AAEA,IAAA,IAAI,GAAG;QACL,MAAM,UAAU,CAAG,OAAO,CAAE;QAC5B,MAAM,UAAU,CAAG,OAAO,CAAE;QAC5B,MAAM,UAAU,CAAG,OAAO,CAAE;QAC5B,MAAM,UAAU,CAAG,OAAO,CAAE;QAC5B,MAAM,UAAU,CAAG,OAAO;KAC3B;AAED,IAAA,IAAK,IAAI,KAAK,QAAQ,EAAG;QACvB,cAAc,GAAG,IAAI;IACvB;SAAO;QACL,eAAe,GAAG,IAAI;IACxB;AAEA,IAAA,OAAO,IAAI;AACb;AAEA,eAAe,UAAU,CAAG,OAAuB,EAAA;AACjD,IAAA,IAAI;AACF,QAAA,MAAM,OAAO,GAAG,OAAO,EAAE,qBAAqB,EAAI,IAAI,MAAM,OAAO,EAAE,oBAAoB,EAAI;AAI7F,QAAA,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE,OAAO,EAAI;QAEvC,IAAK,CAAC,IAAI,EAAG;AACX,YAAA,MAAM,IAAI,KAAK,CAAG,6BAA6B,CAAE;QACnD;AAEA,QAAA,MAAM,IAAI,CAAC,sBAAsB,CAAG,IAAI,CAAE;AAC1C,QAAA,MAAM,IAAI,CAAC,2BAA2B,CAAG,KAAK,CAAE;AAChD,QAAA,MAAM,IAAI,CAAC,IAAI,CAAG,aAAa,CAAE;QACjC,IAAI,CAAC,EAAE,CAAG,SAAS,EAAE,CAAE,OAAY,KAAK;AACtC,YAAA,aAAa,EAAE;AACf,YAAA,IAAK,aAAa,GAAG,cAAc,EAAG;gBACpC,IAAI,CAAC,MAAM,EAAI;gBACf,aAAa,GAAG,CAAC;YACnB;iBAAO;gBACL,OAAO,CAAC,QAAQ,EAAI;YACtB;AACF,QAAA,CAAC,CAAE;AACH,QAAA,IAAI,CAAC,EAAE,CAAG,OAAO,EAAE,GAAG,IAAG;AACvB,YAAA,OAAO,CAAC,KAAK,CAAG,aAAa,EAAE,GAAG,CAAE;AACtC,QAAA,CAAC,CAAE;AACH,QAAA,IAAI,CAAC,EAAE,CAAG,WAAW,EAAE,GAAG,IAAG;AAC3B,YAAA,OAAO,CAAC,KAAK,CAAG,aAAa,EAAE,GAAG,CAAE;AACtC,QAAA,CAAC,CAAE;AACH,QAAA,OAAO,IAAI;IACb;IAAE,OAAQ,GAAG,EAAG;QACd,IAAK,OAAO,EAAG;AACb,YAAA,OAAO,CAAC,GAAG,CAAG,yCAAyC,OAAO,EAAE,OAAO,EAAI,GAAG,QAAQ,GAAG,MAAM,CAAA,CAAE,CAAE;YACnG,OAAO,CAAC,GAAG,CAAG,CAAA,qBAAA,EAAwB,OAAO,EAAE,OAAO,EAAI,GAAG,OAAO,CAAC,OAAO,EAAI,EAAE,GAAG,GAAG,KAAK,CAAA,CAAE,CAAE;AACjG,YAAA,OAAO,CAAC,GAAG,CAAG,CAAA,kBAAA,EAAqB,OAAO,EAAE,eAAe,EAAI,CAAC,MAAM,IAAI,CAAC,CAAA,CAAE,CAAE;YAC/E,OAAO,CAAC,GAAG,CAAG,CAAA,mBAAA,EAAsB,OAAO,EAAE,SAAS,CAAA,CAAE,CAAE;YAC1D,OAAO,CAAC,GAAG,CAAG,CAAA,oBAAA,EAAuB,MAAM,OAAO,EAAE,SAAS,EAAI,CAAA,CAAE,CAAE;YACrE,OAAO,CAAC,GAAG,CAAG,CAAA,iBAAA,EAAoB,MAAM,OAAO,EAAE,OAAO,EAAI,CAAA,CAAE,CAAE;YAChE,KAAM,MAAM,OAAO,IAAI,OAAO,EAAE,eAAgB,IAAK,IAAI,EAAE,EAAG;gBAC5D,OAAO,CAAC,GAAG,CAAG,CAAA,gBAAA,EAAmB,OAAO,CAAC,EAAE,IAAI,SAAS,CAAA,CAAE,CAAE;YAC9D;AACA,YAAA,OAAO,CAAC,GAAG,CAAG,YAAY,OAAO,EAAE,OAAO,EAAI,EAAE,SAAS,EAAE,IAAI,CAAG,GAAG,CAAE,IAAI,gBAAgB,CAAA,CAAE,CAAE;YAC/F,MAAM,OAAO,GAAG,OAAO,EAAE,OAAQ,IAAK,IAAI,EAAE;YAC5C,OAAO,CAAC,GAAG,CAAG,CAAA,SAAA,EAAY,OAAO,CAAC,MAAM,CAAA,CAAE,CAAE;AAC5C,YAAA,OAAO,CAAC,OAAO,CAAG,CAAC,IAAG;AACpB,gBAAA,OAAO,CAAC,GAAG,CAAG,CAAA,iBAAA,EAAoB,CAAC,CAAC,IAAI,EAAG,CAAA,OAAA,EAAU,CAAC,CAAC,GAAG,EAAG,CAAA,CAAE,CAAE;AACnE,YAAA,CAAC,CAAE;QACL;AACA,QAAA,MAAM,GAAG;IACX;AACF;AAEO,eAAe,OAAO,CAAG,IAA0B,EAAA;AACxD,IAAA,MAAM,OAAO,GAAG,IAAI,KAAK,QAAQ,GAAG,MAAM,GAAG,OAAO;AACpD,IAAA,MAAM,WAAW,CAAG,OAAO,EAAE,IAAI,CAAE;AACnC,IAAA,MAAM,IAAI,GAAG,IAAI,KAAK,QAAQ,GAAG,cAAc,GAAG,eAAe;AACjE,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAI;AACzB,IAAA,IAAK,CAAC,IAAI;AAAG,QAAA,OAAO,MAAM,UAAU,CAAG,OAAO,CAAE;AAChD,IAAA,OAAO,IAAI;AACb;AAEO,eAAe,WAAW,CAAG,IAA0B,EAAE,IAAU,EAAA;IACxE,MAAM,IAAI,CAAC,WAAW,CAAG;AACvB,QAAA,KAAK,EAAE,GAAG;AACV,QAAA,MAAM,EAAE,GAAG;AACX,QAAA,iBAAiB,EAAE;AACpB,KAAA,CAAE;AACH,IAAA,IAAK,IAAI,KAAK,QAAQ,EAAG;AACvB,QAAA,cAAc,CAAC,IAAI,CAAG,IAAI,CAAE;IAC9B;AAAO,SAAA,IAAK,IAAI,KAAK,SAAS,EAAG;AAC/B,QAAA,eAAe,CAAC,IAAI,CAAG,IAAI,CAAE;IAC/B;AACF;AAEA,eAAe,aAAa,CAAG,WAAkC,EAAE,KAAc,EAAA;AAI/E,IAAA,MAAM,cAAc,GAAG,CAAE,OAAuB,KAAK;AACnD,QAAA,IAAI;YACF,IAAK,OAAO,IAAI,OAAO,CAAC,eAAe,EAAI,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,EAAI,KAAK,IAAI,EAAG;AACxG,gBAAA,OAAO,IAAI;YACb;AACA,YAAA,OAAO,KAAK;QACd;AAAE,QAAA,MAAM;AACN,YAAA,OAAO,KAAK;QACd;AACF,IAAA,CAAC;IACD,IAAK,CAAC,WAAW,EAAG;AAClB,QAAA,IAAK,cAAc,CAAG,OAAO,CAAE,EAAG;YAChC,OAAO,EAAE,OAAO,EAAE,OAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;QAC/C;AAAO,aAAA,IAAK,cAAc,CAAG,MAAM,CAAE,EAAG;YACtC,OAAO,EAAE,OAAO,EAAE,MAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7C;aAAO;AAEL,YAAA,MAAM,OAAO,GAAG,MAAM,aAAa,CAAG,SAAS,EAAE,KAAK,CAAE,CAAC,KAAK,CAAG,MAAO,IAAI,CAAE;YAC9E,IAAK,OAAO,EAAG;AACb,gBAAA,OAAO,OAAO;YAChB;AACA,YAAA,MAAM,MAAM,GAAG,MAAM,aAAa,CAAG,QAAQ,EAAE,KAAK,CAAE,CAAC,KAAK,CAAG,MAAO,IAAI,CAAE;YAC5E,IAAK,MAAM,EAAG;AACZ,gBAAA,OAAO,MAAM;YACf;AACA,YAAA,MAAM,IAAI,KAAK,CAAG,yBAAyB,CAAE;QAC/C;IACF;IAEA,IAAK,WAAW,KAAK,SAAS,IAAI,cAAc,CAAG,OAAO,CAAE,EAAG;QAC7D,OAAO;AACL,YAAA,OAAO,EAAE,OAAQ;AACjB,YAAA,IAAI,EAAE;SACP;IACH;SAAO,IAAK,WAAW,KAAK,QAAQ,IAAI,cAAc,CAAG,MAAM,CAAE,EAAG;QAClE,OAAO;AACL,YAAA,OAAO,EAAE,MAAO;AAChB,YAAA,IAAI,EAAE;SACP;IACH;IAEA,IAAK,EAAG,MAAM,kBAAkB,CAAG,WAAW,CAAE,CAAE,EAAG;QACnD,MAAM,IAAI,KAAK,CAAG,CAAA,EAAG,WAAW,CAAC,WAAW,EAAI,CAAA,kBAAA,CAAoB,CAAE;IACxE;IAEA,IAAK,SAAS,EAAG;AACf,QAAA,MAAM,SAAS;AACf,QAAA,OAAO,aAAa,CAAG,WAAW,EAAE,KAAK,CAAE;IAC7C;AAEA,IAAA,SAAS,GAAG,CAAE,YAAY;AACxB,QAAA,eAAe,GAAG,CAAC,CAAC,KAAK;AACzB,QAAA,IAAI,OAAgB;QACpB,IAAK,KAAK,EAAG;YACX,OAAO,CAAC,GAAG,CAAG,CAAA,iBAAA,EAAoB,WAAW,CAAC,WAAW,EAAI,CAAA,WAAA,CAAa,CAAE;AAC5E,YAAA,OAAO,GAAG,MAAM,SAAS,CAAC,OAAO,CAAG;AAClC,gBAAA,iBAAiB,EAAE,KAAK;AACxB,gBAAA,mBAAmB,EAAE;AACtB,aAAA,CAAE;QACL;aAAO;YACL,OAAO,CAAC,GAAG,CAAG,CAAA,gBAAA,EAAmB,WAAW,CAAC,WAAW,EAAI,CAAA,WAAA,CAAa,CAAE;YACvDL,cAAI,CAAG,EAAE,CAAC,MAAM,EAAI,EAAE,CAAA,UAAA,EAAa,IAAI,CAAC,GAAG,EAAI,CAAA,CAAA,EAAI,OAAO,CAAC,GAAG,CAAA,CAAE;AACpF,YAAA,OAAO,GAAG,MAAM,SAAS,CAAC,MAAM,CAAG;AACjC,gBAAA,OAAO,EAAE,WAAW;AACpB,gBAAA,QAAQ,EAAE,OAAO;gBACjB,WAAW,EAAwC,SAAS;gBAC5D,cAAc,EAAE,aAAa,CAAG,WAAW,CAAE,CAAG,KAAK,EAAI,CAAE;AAC3D,gBAAA,IAAI,EAAE;oBACJ,cAAc;oBACd,0BAA0B;AAC1B,oBAAA,CAAA,qBAAA,EAAwB,IAAI,CAAC,GAAG,EAAG,CAAA;AACpC;AACF,aAAA,CAAE;YACH,IAAK,OAAO,EAAG;AACb,gBAAA,OAAO,CAAC,GAAG,CAAG,CAAA,EAAG,WAAW,CAAC,WAAW,EAAI,CAAA,oBAAA,EAAuB,OAAO,CAAC,OAAO,EAAI,EAAE,GAAG,CAAA,CAAE,CAAE;YACjG;QAIF;QAGA,IAAI,QAAQ,GAAuE,EAAG;AACtF,QAAA,IAAI;YACF,MAAM,IAAI,GAAG,MAAMG,iBAAQ,CAAG,YAAY,EAAE,MAAM,CAAE;AACpD,YAAA,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAG,IAAI,CAAE;QAChC;AAAE,QAAA,MAAM;QAER;QAEA,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,EAAI,EAAE,GAAG;QACpC,IAAK,GAAG,EAAG;YACT,QAAQ,CAAG,GAAG,CAAE,GAAG;AACjB,gBAAA,GAAG,EAAE,GAAG;gBACR,QAAQ,EAAE,OAAO,CAAC,GAAG;AACrB,gBAAA,OAAO,EAAE,IAAI,CAAC,GAAG;aAClB;QACH;AAEA,QAAA,MAAMC,kBAAS,CAAG,YAAY,EAAE,IAAI,CAAC,SAAS,CAAG,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAE,CAAE;AAEtE,QAAA,MAAM,WAAW,CAAG,OAAO,EAAE,WAAW,CAAE;QAE1C,OAAO,CAAC,GAAG,CAAG,CAAA,EAAG,WAAW,CAAC,WAAW,EAAI,CAAA,4BAAA,CAA8B,CAAE;AAE5E,QAAA,IAAK,WAAW,KAAK,QAAQ,EAAG;YAC9B,MAAM,GAAG,OAAO;AAChB,YAAA,MAAM,CAAC,EAAE,CAAG,iBAAiB,EAAE,MAAM,IAAG;gBACtC,OAAO,CAAC,GAAG,CAAG,CAAA,kBAAA,EAAqB,MAAM,CAAC,GAAG,EAAG,CAAA,CAAE,CAAE;AACtD,YAAA,CAAC,CAAE;AACH,YAAA,MAAM,CAAC,EAAE,CAAG,cAAc,EAAE,MAAM;gBAChC,MAAM,GAAG,IAAI;AACb,gBAAA,OAAO,CAAC,IAAI,CAAG,sBAAsB,CAAE;AACzC,YAAA,CAAC,CAAE;QACL;aAAO;YACL,OAAO,GAAG,OAAO;AACjB,YAAA,OAAO,CAAC,EAAE,CAAG,iBAAiB,EAAE,MAAM,IAAG;gBACvC,OAAO,CAAC,GAAG,CAAG,CAAA,kBAAA,EAAqB,MAAM,CAAC,GAAG,EAAG,CAAA,CAAE,CAAE;AACtD,YAAA,CAAC,CAAE;AACH,YAAA,OAAO,CAAC,EAAE,CAAG,cAAc,EAAE,MAAM;gBACjC,OAAO,GAAG,IAAI;AACd,gBAAA,OAAO,CAAC,IAAI,CAAG,sBAAsB,CAAE;AACzC,YAAA,CAAC,CAAE;QACL;QAEA,SAAS,GAAG,IAAI;QAChB,OAAO;YACL,OAAO;AACP,YAAA,IAAI,EAAE;SACP;IACH,CAAC,GAAM;AAEP,IAAA,OAAO,SAAS;AAClB;AAGA,eAAe,YAAY,GAAA;AACzB,IAAA,IAAI;AACF,QAAA,IAAK,MAAM,EAAE,SAAS,EAAG;AACvB,YAAA,MAAM,MAAM,CAAC,UAAU,EAAI;QAC7B;AACA,QAAA,IAAK,OAAO,EAAE,SAAS,EAAG;AACxB,YAAA,MAAM,OAAO,CAAC,UAAU,EAAI;QAC9B;QAEA,IAAK,CAAC,eAAe,EAAG;YACtB,IAAK,MAAM,EAAG;AACZ,gBAAA,MAAM,MAAM,CAAC,KAAK,EAAI;YACxB;YACA,IAAK,OAAO,EAAG;AACb,gBAAA,MAAM,OAAO,CAAC,KAAK,EAAI;YACzB;QACF;AACA,QAAA,OAAO,CAAC,GAAG,CAAG,8BAA8B,CAAE;QAC9C,MAAM,GAAG,IAAI;QACb,OAAO,GAAG,IAAI;IAChB;IAAE,OAAQ,GAAG,EAAG;AACd,QAAA,OAAO,CAAC,KAAK,CAAG,oDAAoD,EAAE,GAAG,CAAE;IAC7E;AACF;AAGA,OAAO,CAAC,EAAE,CAAG,MAAM,EAAE,YAAY;IAC/B,MAAM,YAAY,EAAI;AACxB,CAAC,CAAE;AAGH,OAAO,CAAC,EAAE,CAAG,QAAQ,EAAE,YAAY;AACjC,IAAA,OAAO,CAAC,GAAG,CAAG,sCAAsC,CAAE;IACtD,MAAM,YAAY,EAAI;AACxB,CAAC,CAAE;AAEH,OAAO,CAAC,EAAE,CAAG,SAAS,EAAE,YAAY;AAClC,IAAA,OAAO,CAAC,GAAG,CAAG,uCAAuC,CAAE;IACvD,MAAM,YAAY,EAAI;AACxB,CAAC,CAAE;AAEH,OAAO,CAAC,EAAE,CAAG,mBAAmB,EAAE,YAAY;IAC5C,MAAM,YAAY,EAAI;AACxB,CAAC,CAAE;;ACpYI,MAAM,OAAO,GAAG,OACrB,KAA4B,EAC5B,OAAA,GAAmB,EAAG,KACpB;IACF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,aAAa,CAAG,SAAS,CAAE;AAErD,IAAA,IAAK,CAAC,OAAO,EAAE,SAAS,EAAG;AACzB,QAAA,MAAM,IAAI,KAAK,CAAG,uBAAuB,CAAE;IAC7C;AAEA,IAAA,MAAM,IAAI,GAAG,MAAM,OAAO,CAAG,SAAS,CAAE;IAExC,IAAI,IAAI,GAAW,EAAE;IACrB,IAAI,OAAO,GAAW,EAAE;IACxB,IAAI,QAAQ,GAAY,KAAK;AAE7B,IAAA,IAAK,MAAM,CAAC,QAAQ,CAAG,KAAK,CAAE,EAAG;QAC/B,IAAI,GAAGE,iBAAO,CAAG,OAAO,CAAC,GAAG,EAAI,EAAE,UAAU,CAAE;QAC9C,OAAO,GAAGC,sBAAa,CAAG,IAAI,CAAE,CAAC,QAAQ,EAAI;QAC7C,QAAQ,GAAG,IAAI;AACf,QAAA,MAAMH,kBAAS,CAAG,IAAI,EAAE,KAAK,CAAE;IACjC;SAAO;AACL,QAAA,IAAK,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAG,MAAM,CAAE,EAAG;YAC9D,IAAI,GAAG,KAAK;YACZ,OAAO,GAAG,IAAI;QAChB;aAAO;YACL,IAAI,GAAGE,iBAAO,CAAG,KAAK,CAAC,QAAQ,EAAI,CAAE;YACrC,OAAO,GAAGC,sBAAa,CAAG,IAAI,CAAE,CAAC,QAAQ,EAAI;QAC/C;IACF;AAEA,IAAA,IAAI;AACF,QAAA,MAAM,IAAI,CAAC,IAAI,CAAG,OAAO,CAAE;AAE3B,QAAA,IAAK,OAAO,CAAC,QAAQ,EAAG;AACtB,YAAA,IAAI;AAEF,gBAAA,MAAM,IAAI,CAAC,eAAe,CAAG,wBAAwB,EAAE;AACrD,oBAAA,OAAO,EAAE,IAAI;AACb,oBAAA,OAAO,EAAE;AACV,iBAAA,CAAE;AAGH,gBAAA,OAAO,CAAC,GAAG,CAAG,gDAAgD,CAAE;AAChE,gBAAA,MAAM,IAAI,CAAC,IAAI,CAAG,wBAAwB,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAE;gBACpE,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAG,OAAO,CAAE;YACvC;YAAE,MAAM,EAAE;QACZ;AAEA,QAAA,MAAM,IAAI,CAAC,eAAe,CAAG,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAE;QAE1D,MAAM,YAAY,GAAG,EAAG;QAExB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAG,MAAM;AAC5C,YAAA,IAAO,MAAe,CAAC,oBAAoB,EAAG;AAC5C,gBAAA,OAAS,MAAe,CAAC,oBAAoB,CAAC,UAAU;YAC1D;AACA,YAAA,OAAO,CAAC;AACV,QAAA,CAAC,CAAE;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAG,MAAM;AAC3C,YAAA,MAAM,GAAG,GAAK,MAAe,CAAC,oBAAoB;AAClD,YAAA,IAAK,GAAG,IAAI,GAAG,CAAC,WAAW,EAAG;AAC5B,gBAAA,OAAO,GAAG,CAAC,YAAY,IAAI,EAAG;YAChC;AACA,YAAA,OAAO,EAAG;AACZ,QAAA,CAAC,CAAE;QAGH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAG,MAAM;YAC1C,MAAM,MAAM,GAAQ,QAAQ,CAAC,aAAa,CAAG,QAAQ,CAAE;YACvD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,qBAAqB,EAAI;AAC1D,YAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE;AAC1B,QAAA,CAAC,CAAE;QAGH,MAAM,IAAI,CAAC,WAAW,CAAG;YACvB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;AACtB,YAAA,iBAAiB,EAAE;AACpB,SAAA,CAAE;AAEH,QAAA,IAAK,OAAO,CAAC,IAAI,EAAG;AAClB,YAAA,IAAK,OAAO,CAAC,IAAI,GAAG,CAAC,IAAI,OAAO,CAAC,IAAI,GAAG,SAAS,EAAG;gBAClD,MAAM,IAAI,KAAK,CAAG,CAAA,YAAA,EAAe,OAAO,CAAC,IAAI,CAAA,2BAAA,EAA8B,SAAS,CAAA,OAAA,CAAS,CAAE;YACjG;AACA,YAAA,YAAY,CAAC,IAAI,CAAG,MAAM,UAAU,CAAG,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAE,CAAE;QACxE;aAAO;AACL,YAAA,KAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,EAAE,EAAG;AACrC,gBAAA,YAAY,CAAC,IAAI,CAAG,MAAM,UAAU,CAAG,IAAI,EAAE,CAAC,EAAE,OAAO,CAAE,CAAE;YAC7D;QACF;QAEA,IAAK,QAAQ,EAAG;AACd,YAAA,MAAMC,eAAM,CAAG,IAAI,CAAE;QACvB;AAEA,QAAA,MAAM,WAAW,CAAG,SAAS,EAAE,IAAI,CAAE;QAGrC,OAAO;AACL,YAAA,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,QAAQ,CAAC,IAAI;AACvB,YAAA,KAAK,EAAE;SACR;IACH;IAAE,OAAQ,KAAK,EAAG;QAChB,IAAK,QAAQ,EAAG;AACd,YAAA,MAAMA,eAAM,CAAG,IAAI,CAAE;QACvB;AAEA,QAAA,MAAM,WAAW,CAAG,SAAS,EAAE,IAAI,CAAE;AAErC,QAAA,MAAM,KAAK;IACb;YAAU;AACR,QAAA,IAAK,OAAO,CAAC,YAAY,EAAG;YAC1B,MAAM,YAAY,EAAI;QACxB;IACF;AACF;AAEA,MAAM,UAAU,GAAG,OAAQ,IAAU,EAAE,UAAkB,EAAE,OAAgB,KAAsB;AAE/F,IAAA,MAAM,IAAI,CAAC,QAAQ,CAAG,CAAE,OAAO,KAAK;AAClC,QAAA,IAAO,MAAe,CAAC,oBAAoB,EAAG;AAC1C,YAAA,MAAe,CAAC,oBAAoB,CAAC,IAAI,GAAG,OAAO;QACvD;IACF,CAAC,EAAE,UAAU,CAAE;AAEf,IAAA,MAAM,IAAI,CAAC,eAAe,CAAG,2BAA2B,UAAU,CAAA,EAAA,CAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAE;AAE3F,IAAA,MAAM,IAAI,CAAC,eAAe,CAAG,CAAE,OAAO,KAAK;QACzC,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAG,CAAA,wBAAA,EAA2B,OAAO,CAAA,EAAA,CAAI,CAAE;AACvF,QAAA,IAAK,CAAC,aAAa;AAAG,YAAA,OAAO,IAAI;AACjC,QAAA,OAAO,CAAC,aAAa,CAAC,aAAa,CAAG,cAAc,CAAE;AACxD,IAAA,CAAC,EAAE,EAAE,EAAE,UAAU,CAAE;IAEnB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAG,CAAE,OAAO,KAAK;QAC1D,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAG,CAAA,wBAAA,EAA2B,OAAO,CAAA,EAAA,CAAI,CAAE;AACvF,QAAA,IAAK,CAAC,aAAa;AAAG,YAAA,MAAM,IAAI,KAAK,CAAG,2BAA2B,OAAO,CAAA,UAAA,CAAY,CAAE;QACxF,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa,CAAG,QAAQ,CAAE;AACvD,QAAA,IAAK,CAAC,MAAM;AAAG,YAAA,MAAM,IAAI,KAAK,CAAG,mBAAmB,OAAO,CAAA,UAAA,CAAY,CAAE;AACzE,QAAA,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,qBAAqB,EAAI;QAChE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE;IAChC,CAAC,EAAE,UAAU,CAAE;AAEf,IAAA,MAAM,iBAAiB,GAAsB;AAC3C,QAAA,QAAQ,EAAE,KAAK;AACf,QAAA,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,KAAK;AAC3B,QAAA,IAAI,EAAE;YACJ,CAAC,EAAE,eAAe,CAAC,CAAC;YACpB,CAAC,EAAE,eAAe,CAAC,CAAC;YACpB,KAAK,EAAE,eAAe,CAAC,KAAK;YAC5B,MAAM,EAAE,eAAe,CAAC;AACzB;KACF;IAED,IAAK,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAG;QAC5C,iBAAiB,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,GAAG;IACpD;AAEA,IAAA,IAAI;QACF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAG,iBAAiB,CAAE;AAE9D,QAAA,OAAO,MAAM,CAAC,IAAI,CAAG,UAAU,CAAE;IACnC;AAAE,IAAA,MAAM;AACN,QAAA,MAAM,IAAI,KAAK,CAAG,yBAAyB,UAAU,CAAA,WAAA,CAAa,CAAE;IACtE;AACF,CAAC;;ACtMM,eAAe,SAAS,CAAG,KAA4B,EAAA;AAC5D,IAAA,IAAK,KAAK,YAAY,MAAM,EAAG;AAC7B,QAAA,OAAO,KAAK;IACd;AAEA,IAAA,OAAO,KAAK,CAAG,KAAK,CAAC,QAAQ,EAAI;SAC9B,IAAI,CAAG,GAAG,IAAG;AACZ,QAAA,IAAK,GAAG,CAAC,EAAE,EAAG;AACZ,YAAA,OAAO,GAAG,CAAC,WAAW,EAAI;QAC5B;aAAO;AACL,YAAA,MAAM,IAAI,KAAK,CAAG,0BAA0B,CAAE;QAChD;AACF,IAAA,CAAC;SACA,IAAI,CAAG,KAAK,IAAI,MAAM,CAAC,IAAI,CAAG,KAAK,CAAE;SACrC,KAAK,CAAG,MAAM;QACb,IAAKC,kBAAU,CAAG,KAAK,CAAC,QAAQ,EAAI,CAAE,EAAG;AACvC,YAAA,OAAOC,oBAAY,CAAG,KAAK,CAAC,QAAQ,EAAI,CAAE;QAC5C;AACA,QAAA,MAAM,IAAI,KAAK,CAAG,0BAA0B,CAAE;AAChD,IAAA,CAAC,CAAE;AACP;AASO,MAAM,gBAAgB,GAAG,OAAQ,GAAW,KAAK;AACtD,IAAA,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAG,GAAG,CAAE;AACpC,IAAA,IAAK,CAAC,QAAQ,CAAC,EAAE,EAAG;AAClB,QAAA,MAAM,IAAI,KAAK,CAAG,qCAAqC,GAAG,CAAA,CAAE,CAAE;IAChE;AACA,IAAA,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAI;AAChC,CAAC;AASM,MAAM,oBAAoB,GAAG,OAAQ,QAAgB,KAAK;AAC/D,IAAA,OAAOA,oBAAY,CAAG,QAAQ,EAAE,OAAO,CAAE;AAC3C,CAAC;;ACtBM,MAAM,OAAO,GAAG,OACrB,KAA4B,EAC5B,OAAA,GAAmB,EAAE,KACnB;IACF,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,OAAS,WAAW,CAAE;IAC3D,OAAO,IAAI,OAAO,CAAW,CAAE,OAAO,EAAE,MAAM,KAAK;QACjD,SAAS,CAAG,KAAK,CAAE,CAAC,IAAI,CAAG,OAAQ,GAAG,KAAK;AACzC,YAAA,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAG,GAAG,CAAE;AAC7C,YAAA,IAAK,IAAI,EAAE,IAAI,KAAK,YAAY,IAAI,IAAI,EAAE,IAAI,KAAK,WAAW,EAAG;AAC/D,gBAAA,MAAM,IAAI,KAAK,CAAG,uCAAuC,CAAE;YAC7D;YAEA,MAAM,UAAU,GAAU,EAAE;AAC5B,YAAA,MAAM,OAAO,GAAGC,mBAAS,CAAG,GAAG,CAAE;YACjC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,KAAK;AAE1F,YAAA,MAAM,GAAG,GAAG,IAAI,WAAW,CAAG;AAC5B,gBAAA,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU;AAC5C,gBAAA,OAAO,EAAE;AACP,oBAAA,GAAG,EAAE,CAAC;AACN,oBAAA,MAAM,EAAE,CAAC;AACT,oBAAA,IAAI,EAAE,CAAC;AACP,oBAAA,KAAK,EAAE;AACR;AACF,aAAA,CAAE;YAEH,GAAG,CAAC,EAAE,CAAG,MAAM,EAAE,CAAE,IAAI,KAAK;AAC1B,gBAAA,UAAU,CAAC,IAAI,CAAG,IAAI,CAAE;AAC1B,YAAA,CAAC,CAAE;AAEH,YAAA,GAAG,CAAC,EAAE,CAAG,KAAK,EAAE,MAAK;gBACnB,OAAO,CAAG,MAAM,CAAC,MAAM,CAAG,UAAU,CAAE,CAAE;AAC1C,YAAA,CAAC,CAAE;YAEH,GAAG,CAAC,QAAQ,CAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAE;AAEvC,YAAA,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,CAAC;AACzC,YAAA,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,CAAC;YAC5C,MAAM,WAAW,GAAG,EAAE;YACtB,MAAM,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,GAAG,YAAY;AAE9D,YAAA,IAAK,OAAO,CAAC,MAAM,EAAG;AACpB,gBAAA,GAAG,CAAC,IAAI,CAAG,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,GAAG,CAAC,GAAG,CAAC,EAAE;AACzD,oBAAA,KAAK,EAAE,QAAQ;AACf,oBAAA,QAAQ,EAAE,KAAK;oBACf,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,WAAW;oBACvC,MAAM,EAAE,SAAS,GAAG,CAAC;AACrB,oBAAA,QAAQ,EAAE;AACX,iBAAA,CAAE,CAAC,QAAQ,CAAG,GAAG,CAAE;YACtB;YAEA,GAAG,CAAC,KAAK,CAAG,GAAG,EAAE,CAAC,EAAE,SAAS,EAAE;AAC7B,gBAAA,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK;AACrB,gBAAA,MAAM,EAAE;AACT,aAAA,CAAE;AAEH,YAAA,IAAK,OAAO,CAAC,MAAM,EAAG;gBACpB,GAAG,CAAC,IAAI,CAAG,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,YAAY,GAAG,CAAC,GAAG,CAAC,EAAE;AAC9E,oBAAA,KAAK,EAAE,QAAQ;oBACf,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,WAAW;oBACvC,MAAM,EAAE,YAAY,GAAG,CAAC;AACxB,oBAAA,QAAQ,EAAE;AACX,iBAAA,CAAE;YACL;YAEA,GAAG,CAAC,GAAG,EAAG;AACZ,QAAA,CAAC,CAAE,CAAC,KAAK,CAAG,CAAE,CAAC,KAAK;YAClB,MAAM,CAAG,CAAC,CAAE;AACd,QAAA,CAAC,CAAE,CAAC,OAAO,CAAG,YAAY;AACxB,YAAA,IAAK,OAAO,CAAC,YAAY,EAAG;gBAC1B,MAAM,YAAY,EAAI;YACxB;AACF,QAAA,CAAC,CAAE;AACL,IAAA,CAAC,CAAE;AACL;;AC3EO,MAAM,QAAQ,GAAG,OACtB,KAAmB,EACnB,OAAA,GAAmB,EAAG,KACpB;IACF,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,aAAa,EAAI;IAEjD,MAAM,SAAS,GAAG,IAAIC,yBAAY,CAAG,OAAO,CAAC,KAAK,IAAI;QACpD,OAAO,EAAE,CAAE,wBAAwB,CAAE;AACrC,QAAA,KAAK,EAAE;AACL,YAAA,wBAAwB,EAAE;AAC3B;AACF,KAAA,CAAE;AAEH,IAAA,IAAI,WAAW,GAAG,KAAK,CAAC,QAAQ,EAAI;AAGpC,IAAA,IAAK,WAAW,CAAC,UAAU,CAAG,SAAS,CAAE,IAAI,WAAW,CAAC,UAAU,CAAG,UAAU,CAAE,EAAG;AACnF,QAAA,WAAW,GAAG,MAAM,gBAAgB,CAAG,WAAW,CAAE;IACtD;AAEK,SAAA,IAAKH,kBAAU,CAAG,KAAK,CAAE,EAAG;AAC/B,QAAA,WAAW,GAAG,MAAM,oBAAoB,CAAG,WAAW,CAAE;IAC1D;AAEA,IAAA,IAAK,CAAC,OAAO,EAAE,SAAS,EAAG;AACzB,QAAA,MAAM,IAAI,KAAK,CAAG,uBAAuB,CAAE;IAC7C;AAEA,IAAA,MAAM,IAAI,GAAG,MAAM,OAAO,CAAG,IAAI,CAAE;IAEnC,MAAM,UAAU,IAAK,OAAO,CAAC,UAAU,IAAI,IAAI,CAAE;AACjD,IAAA,IAAI;QACF,MAAM,GAAG,GAAG,UAAU,GAAG,MAAM,SAAS,CAAC,cAAc,CAAG,WAAW,CAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE;AACzF,QAAA,IAAK,GAAG,CAAC,KAAK,EAAG;AACf,YAAA,MAAM,IAAI,CAAC,UAAU,CAAG,WAAW,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAE;AAC5D,YAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAG;AAC3B,gBAAA,MAAM,EAAE,IAAI;AACZ,gBAAA,eAAe,EAAE;AAClB,aAAA,CAAE;YAEH,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAG,GAAG,CAAE;AACrC,YAAA,IAAK,OAAO,CAAC,MAAM,IAAI,KAAK,EAAG;AAC7B,gBAAA,OAAO,SAAS,CAAC,QAAQ,CAAG,QAAQ,CAAE;YACxC;AACA,YAAA,OAAO,SAAS;QAClB;aAAO;YAEL,MAAM;AACJ,gBAAA,KAAK,EAAE,KAAK;AACZ,gBAAA,KAAK,EAAE;oBACL,MAAM,EAAI,GAAe,CAAC,UAAU;oBACpC,QAAQ,EAAI,GAAe,CAAC;AAC7B,iBAAA;gBACD,UAAU,EAAI,GAAe,CAAC,OAAO,CAAC,GAAG,CAAG,GAAG,IAAG;oBAChD,OAAO;wBACL,IAAI,EAAE,GAAG,CAAC,QAAQ;AAClB,wBAAA,KAAK,EAAE;4BACL,MAAM,EAAE,GAAG,CAAC,UAAU;4BACtB,QAAQ,EAAE,GAAG,CAAC;AACf,yBAAA;wBACD,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAG,GAAG,IAAG;4BACjC,OAAO;gCACL,OAAO,EAAE,GAAG,CAAC,OAAO;gCACpB,IAAI,EAAE,GAAG,CAAC,IAAI;gCACd,MAAM,EAAE,GAAG,CAAC,MAAM;gCAClB,MAAM,EAAE,GAAG,CAAC;6BACb;AACH,wBAAA,CAAC;qBACF;AACH,gBAAA,CAAC;aACF;QACH;IACF;YAAU;AACR,QAAA,MAAM,WAAW,CAAG,IAAI,EAAE,IAAI,CAAE;AAChC,QAAA,IAAK,OAAO,CAAC,YAAY,EAAG;YAC1B,MAAM,YAAY,EAAI;QACxB;IACF;AACF;;ACpHA,MAAM,eAAe,GAAG,UAAU;AAElC,IAAK,CAACI,gBAAS,CAAG,OAAO,CAAC,OAAO,EAAE,eAAe,CAAE,EAAG;IACrD,OAAO,CAAC,KAAK,CACX,CAAA,yBAAA,EAA4B,eAAe,CAAA,4BAAA,EAA+B,OAAO,CAAC,OAAO,CAAA,GAAA,CAAK,CAC/F;AACD,IAAA,OAAO,CAAC,IAAI,CAAG,CAAC,CAAE;AACpB;;;;;;;;;"}
package/dist/index.mjs CHANGED
@@ -1,19 +1,20 @@
1
1
  import { satisfies } from 'semver';
2
2
  import { pathToFileURL } from 'node:url';
3
3
  import { join, resolve } from 'node:path';
4
- import { access, writeFile, unlink } from 'node:fs/promises';
4
+ import { readFile, writeFile, access, unlink } from 'node:fs/promises';
5
5
  import puppeteer from 'puppeteer';
6
- import os from 'node:os';
7
- import { spawnSync, execSync } from 'node:child_process';
8
- import { existsSync, rmSync, readFileSync } from 'node:fs';
6
+ import os, { platform } from 'node:os';
7
+ import { execSync } from 'node:child_process';
9
8
  import { imageSize } from 'image-size';
10
9
  import PDFDocument from 'pdfkit';
10
+ import { existsSync, readFileSync } from 'node:fs';
11
11
  import { HtmlValidate } from 'html-validate';
12
12
 
13
13
  let firefox = null;
14
14
  let chrome = null;
15
15
  let isRemoteBrowser = false;
16
16
  let devMode = false;
17
+ const registryPath = join(process.cwd(), ".puppeteer-launches.json");
17
18
  const BROWSER_PATHS = {
18
19
  chrome: {
19
20
  linux: "/usr/bin/google-chrome",
@@ -26,136 +27,81 @@ const BROWSER_PATHS = {
26
27
  windows: join("C:", "Program Files", "Mozilla Firefox", "firefox.exe")
27
28
  }
28
29
  };
29
- const getOS = () => {
30
- if (process.platform === "win32")
31
- return "windows";
32
- if (process.platform === "darwin")
33
- return "mac";
34
- return "linux";
30
+ let launching = null;
31
+ const RESOURCE_LIMIT = 100;
32
+ let resourceCount = 0;
33
+ let firefoxPagePool = [];
34
+ let chromePagePool = [];
35
+ const isProcessAlive = (pid) => {
36
+ try {
37
+ process.kill(pid, 0);
38
+ return true;
39
+ }
40
+ catch {
41
+ return false;
42
+ }
35
43
  };
36
- function escapeForShellRegex(path) {
37
- return path.replace(/\\/g, "\\\\").replace(/\//g, "\\/");
38
- }
39
- const BROWSER_DATA_DIR = join(process.cwd(), "browser-data");
40
- const LAUNCH_ID_ARG = "--quickpdf-launch-id=";
41
- const cleanupPuppeteerBrowsers = () => {
42
- console.log("Cleaning up orphaned Puppeteer browser instances...");
43
- const platform = os.platform();
44
- let pidsToKill = [];
45
- const escapedDataDir = escapeForShellRegex(BROWSER_DATA_DIR);
44
+ const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
45
+ const killProcess = (pid, force = false) => {
46
+ const isWin = platform() === "win32";
46
47
  try {
47
- if (platform === "win32") {
48
- const args = [
49
- "-Command",
50
- `Get-CimInstance Win32_Process | Where-Object {
51
-           ($_.Name -eq 'chrome.exe' -or $_.Name -eq 'firefox.exe') -and
52
-           ($_.CommandLine -like '*-user-data-dir=*${escapedDataDir}*' -or $_.CommandLine -like '*${LAUNCH_ID_ARG}*')
53
-         } | Select-Object -ExpandProperty ProcessId`
54
- ];
55
- const output = spawnSync("powershell", args, { encoding: "utf8" });
56
- pidsToKill = output.stdout.trim().split(os.EOL).filter(Boolean);
48
+ if (isWin) {
49
+ const signal = force ? "/F" : "";
50
+ execSync(`taskkill ${signal} /PID ${pid}`);
57
51
  }
58
52
  else {
59
- const args = [
60
- "aux",
61
- "|", "grep", "-E", "'[c]hrome|[f]irefox'",
62
- "|", "grep", "-E", `-- '-user-data-dir=.+${escapedDataDir}' | ${LAUNCH_ID_ARG}`,
63
- "|", "awk", "'{print $2}'"
64
- ];
65
- const output = spawnSync("ps", args, { encoding: "utf8" });
66
- pidsToKill = output.stdout.trim().split(os.EOL).filter(Boolean);
67
- }
68
- if (pidsToKill.length === 0) {
69
- console.log("No orphaned Puppeteer browser instances found matching user data dir or launch ID.");
70
- return;
71
- }
72
- console.log(`Found ${pidsToKill.length} orphaned browser processes: ${pidsToKill.join(", ")}`);
73
- let killedCount = 0;
74
- for (const pid of pidsToKill) {
75
- try {
76
- const numericPid = Number(pid);
77
- if (isNaN(numericPid)) {
78
- console.warn(`Skipping invalid PID: ${pid}`);
79
- continue;
80
- }
81
- if (platform === "win32") {
82
- execSync(`taskkill /PID ${numericPid} /F /T`);
83
- }
84
- else {
85
- try {
86
- process.kill(numericPid, "SIGTERM");
87
- execSync(`sleep 0.5`);
88
- }
89
- catch (e) {
90
- if (e.code !== "ESRCH") {
91
- throw e;
92
- }
93
- }
94
- try {
95
- process.kill(numericPid, 0);
96
- process.kill(numericPid, "SIGKILL");
97
- }
98
- catch (e) {
99
- if (e.code !== "ESRCH") {
100
- throw e;
101
- }
102
- }
103
- }
104
- killedCount++;
105
- }
106
- catch (e) {
107
- if (e.message.includes("not found") || e.code === "ESRCH") {
108
- console.log(`Process ${pid} already terminated.`);
109
- }
110
- else {
111
- console.warn(`⚠️ Failed to kill process ${pid}: ${e.message}`);
112
- }
113
- }
53
+ process.kill(pid, force ? "SIGKILL" : "SIGTERM");
114
54
  }
115
- console.log(`✅ Attempted to clean up ${killedCount} orphaned Puppeteer browser instances.`);
55
+ return true;
56
+ }
57
+ catch {
58
+ return false;
116
59
  }
117
- catch (e) {
118
- console.error(`Error during cleanup: ${e.message}`);
60
+ };
61
+ const cleanupOrphanedBrowsers = async () => {
62
+ let registry = {};
63
+ try {
64
+ const data = await readFile(registryPath, "utf8");
65
+ registry = JSON.parse(data);
119
66
  }
120
- finally {
121
- let processesUsingDir = false;
122
- const escapedDataDir = escapeForShellRegex(BROWSER_DATA_DIR);
123
- try {
124
- const platform = os.platform();
125
- if (platform === "win32") {
126
- const args = [
127
- "-Command",
128
- `Get-Process | Where-Object { $_.Modules | Where-Object { $_.FileName -like '*${escapedDataDir}*' } } | Select-Object -ExpandProperty Id`
129
- ];
130
- const output = spawnSync("powershell", args, { encoding: "utf8" });
131
- processesUsingDir = output.stdout.trim().length > 0;
132
- }
133
- else {
134
- const command = `lsof +D "${BROWSER_DATA_DIR}" 2>/dev/null | grep -v COMMAND | wc -l`;
135
- const output = execSync(command, { encoding: "utf8" });
136
- processesUsingDir = parseInt(output.trim()) > 0;
67
+ catch {
68
+ registry = {};
69
+ }
70
+ const launchIds = Object.keys(registry);
71
+ for (const launchId of launchIds) {
72
+ const { pid, ownerPid } = registry[launchId];
73
+ if (!isProcessAlive(ownerPid)) {
74
+ try {
75
+ killProcess(pid);
137
76
  }
138
- }
139
- catch (e) {
140
- console.log(`Could not check if processes are using browser-data directory: ${e.message}`);
141
- }
142
- if (existsSync(BROWSER_DATA_DIR)) {
143
- if (!processesUsingDir) {
144
- try {
145
- rmSync(BROWSER_DATA_DIR, { recursive: true, force: true });
146
- console.log(`🧹 Cleaned up browser-data directory: ${BROWSER_DATA_DIR}`);
147
- }
148
- catch {
149
- console.warn(`⚠️ Could not delete browser-data directory, it may be in use: ${BROWSER_DATA_DIR}`);
77
+ catch { }
78
+ await sleep(500);
79
+ try {
80
+ if (isProcessAlive(pid)) {
81
+ killProcess(pid, true);
150
82
  }
151
83
  }
84
+ catch { }
85
+ delete registry[launchId];
86
+ console.log(`🧹 Cleaned up orphaned browser PID ${pid} (launchId: ${launchId})`);
152
87
  }
153
88
  }
89
+ await writeFile(registryPath, JSON.stringify(registry, null, 2));
90
+ };
91
+ const getOS = () => {
92
+ if (process.platform === "win32")
93
+ return "windows";
94
+ if (process.platform === "darwin")
95
+ return "mac";
96
+ return "linux";
154
97
  };
155
98
  const setDevMode = (mode) => {
156
99
  devMode = mode;
157
100
  if (devMode) {
158
101
  console.log("Quick-PDF: Dev Mode Enabled");
102
+ cleanupOrphanedBrowsers().catch(err => {
103
+ console.error("Error during cleanup of orphaned browsers:", err);
104
+ });
159
105
  }
160
106
  };
161
107
  const isBrowserInstalled = async (browser) => {
@@ -169,11 +115,6 @@ const isBrowserInstalled = async (browser) => {
169
115
  return false;
170
116
  }
171
117
  };
172
- let launching = null;
173
- const RESOURCE_LIMIT = 100;
174
- let resourceCount = 0;
175
- let firefoxPagePool = [];
176
- let chromePagePool = [];
177
118
  async function launchPages(browser, type) {
178
119
  let pool = type === "chrome" ? chromePagePool : firefoxPagePool;
179
120
  if (!browser?.connected) {
@@ -268,7 +209,6 @@ async function restorePage(type, page) {
268
209
  firefoxPagePool.push(page);
269
210
  }
270
211
  }
271
- let cleanupRunning = false;
272
212
  async function launchBrowser(browserType, wsURL) {
273
213
  const isBrowserValid = (browser) => {
274
214
  try {
@@ -289,14 +229,12 @@ async function launchBrowser(browserType, wsURL) {
289
229
  return { browser: chrome, type: "chrome" };
290
230
  }
291
231
  else {
292
- const [firefox, chrome] = await Promise.all([
293
- launchBrowser("firefox", wsURL).catch(() => null),
294
- launchBrowser("chrome", wsURL).catch(() => null)
295
- ]);
232
+ const firefox = await launchBrowser("firefox", wsURL).catch(() => null);
296
233
  if (firefox) {
297
234
  return firefox;
298
235
  }
299
- else if (chrome) {
236
+ const chrome = await launchBrowser("chrome", wsURL).catch(() => null);
237
+ if (chrome) {
300
238
  return chrome;
301
239
  }
302
240
  throw new Error("No browser launched yet");
@@ -314,20 +252,6 @@ async function launchBrowser(browserType, wsURL) {
314
252
  type: "chrome"
315
253
  };
316
254
  }
317
- if (cleanupRunning) {
318
- while (cleanupRunning) {
319
- await new Promise(resolve => setTimeout(resolve, 100));
320
- }
321
- }
322
- else {
323
- cleanupRunning = true;
324
- try {
325
- await cleanupPuppeteerBrowsers();
326
- }
327
- finally {
328
- cleanupRunning = false;
329
- }
330
- }
331
255
  if (!(await isBrowserInstalled(browserType))) {
332
256
  throw new Error(`${browserType.toUpperCase()} is not installed.`);
333
257
  }
@@ -347,10 +271,11 @@ async function launchBrowser(browserType, wsURL) {
347
271
  }
348
272
  else {
349
273
  console.log(`Launching local ${browserType.toUpperCase()} browser...`);
274
+ join(os.tmpdir(), `puppeteer-${Date.now()}-${process.pid}`);
350
275
  browser = await puppeteer.launch({
351
276
  browser: browserType,
352
277
  headless: "shell",
353
- userDataDir: join(process.cwd(), "browser-data"),
278
+ userDataDir: undefined,
354
279
  executablePath: BROWSER_PATHS[browserType][getOS()],
355
280
  args: [
356
281
  "--no-sandbox",
@@ -358,7 +283,26 @@ async function launchBrowser(browserType, wsURL) {
358
283
  `--quickpdf-launch-id=${Date.now()}`
359
284
  ]
360
285
  });
286
+ if (devMode) {
287
+ console.log(`${browserType.toUpperCase()} launched with PID: ${browser.process()?.pid}`);
288
+ }
289
+ }
290
+ let registry = {};
291
+ try {
292
+ const data = await readFile(registryPath, "utf8");
293
+ registry = JSON.parse(data);
294
+ }
295
+ catch {
296
+ }
297
+ const pid = browser.process()?.pid;
298
+ if (pid) {
299
+ registry[pid] = {
300
+ pid: pid,
301
+ ownerPid: process.pid,
302
+ started: Date.now()
303
+ };
361
304
  }
305
+ await writeFile(registryPath, JSON.stringify(registry, null, 2));
362
306
  await launchPages(browser, browserType);
363
307
  console.log(`${browserType.toUpperCase()} browser is ready for usage.`);
364
308
  if (browserType === "chrome") {
@@ -368,7 +312,7 @@ async function launchBrowser(browserType, wsURL) {
368
312
  });
369
313
  chrome.on("disconnected", () => {
370
314
  chrome = null;
371
- console.warn("Browser disconnected unexpectedly");
315
+ console.warn("Browser disconnected");
372
316
  });
373
317
  }
374
318
  else {
@@ -378,7 +322,7 @@ async function launchBrowser(browserType, wsURL) {
378
322
  });
379
323
  firefox.on("disconnected", () => {
380
324
  firefox = null;
381
- console.warn("Browser disconnected unexpectedly");
325
+ console.warn("Browser disconnected");
382
326
  });
383
327
  }
384
328
  launching = null;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/browsers.ts","../src/modules/pdf2img.ts","../src/utilies.ts","../src/modules/img2pdf.ts","../src/modules/html2pdf.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/browsers.ts","../src/modules/pdf2img.ts","../src/utilies.ts","../src/modules/img2pdf.ts","../src/modules/html2pdf.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { Browser, Page } from "puppeteer";
2
- export declare const cleanupPuppeteerBrowsers: () => void;
2
+ export declare const cleanupOrphanedBrowsers: () => Promise<void>;
3
3
  export declare const setDevMode: (mode: boolean) => void;
4
+ export declare const setDataDir: (mode: boolean) => void;
4
5
  export declare function getPage(type: "chrome" | "firefox"): Promise<Page>;
5
6
  export declare function restorePage(type: "chrome" | "firefox", page: Page): Promise<void>;
6
7
  declare function launchBrowser(browserType?: "firefox" | "chrome", wsURL?: string): Promise<{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iqx-limited/quick-pdf",
3
- "version": "1.8.0",
3
+ "version": "1.8.2",
4
4
  "author": "IQX",
5
5
  "description": "Converting PDFs to images (📃 to 📸)",
6
6
  "type": "module",
@@ -50,7 +50,7 @@
50
50
  "image-size": "^2.0.2",
51
51
  "path2d-polyfill": "^3.2.1",
52
52
  "pdfkit": "^0.17.2",
53
- "puppeteer": "^24.26.1",
53
+ "puppeteer": "^24.27.0",
54
54
  "rollup-plugin-node-externals": "^8.1.1",
55
55
  "semver": "^7.7.3"
56
56
  },
@@ -60,7 +60,7 @@
60
60
  "@rollup/plugin-node-resolve": "^16.0.3",
61
61
  "@rollup/plugin-typescript": "^12.3.0",
62
62
  "@stylistic/eslint-plugin": "^5.5.0",
63
- "@types/node": "^24.9.1",
63
+ "@types/node": "^24.9.2",
64
64
  "@types/pdfkit": "^0.17.3",
65
65
  "@types/semver": "^7.7.1",
66
66
  "eslint": "^9.38.0",