camofox-browser 2.1.1 → 2.4.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.
Files changed (102) hide show
  1. package/CHANGELOG.md +150 -0
  2. package/README.md +310 -34
  3. package/dist/src/cli/commands/content.d.ts.map +1 -1
  4. package/dist/src/cli/commands/content.js +37 -0
  5. package/dist/src/cli/commands/content.js.map +1 -1
  6. package/dist/src/cli/commands/core.d.ts.map +1 -1
  7. package/dist/src/cli/commands/core.js +21 -4
  8. package/dist/src/cli/commands/core.js.map +1 -1
  9. package/dist/src/cli/commands/interaction.d.ts.map +1 -1
  10. package/dist/src/cli/commands/interaction.js +5 -14
  11. package/dist/src/cli/commands/interaction.js.map +1 -1
  12. package/dist/src/cli/commands/navigation.d.ts.map +1 -1
  13. package/dist/src/cli/commands/navigation.js +12 -6
  14. package/dist/src/cli/commands/navigation.js.map +1 -1
  15. package/dist/src/cli/commands/server.d.ts.map +1 -1
  16. package/dist/src/cli/commands/server.js +9 -3
  17. package/dist/src/cli/commands/server.js.map +1 -1
  18. package/dist/src/cli/commands/session.d.ts.map +1 -1
  19. package/dist/src/cli/commands/session.js +23 -5
  20. package/dist/src/cli/commands/session.js.map +1 -1
  21. package/dist/src/cli/server/manager.d.ts +1 -0
  22. package/dist/src/cli/server/manager.d.ts.map +1 -1
  23. package/dist/src/cli/server/manager.js +7 -12
  24. package/dist/src/cli/server/manager.js.map +1 -1
  25. package/dist/src/middleware/lifecycle-activity.d.ts +9 -0
  26. package/dist/src/middleware/lifecycle-activity.d.ts.map +1 -0
  27. package/dist/src/middleware/lifecycle-activity.js +21 -0
  28. package/dist/src/middleware/lifecycle-activity.js.map +1 -0
  29. package/dist/src/openapi/spec.d.ts +4 -0
  30. package/dist/src/openapi/spec.d.ts.map +1 -0
  31. package/dist/src/openapi/spec.js +730 -0
  32. package/dist/src/openapi/spec.js.map +1 -0
  33. package/dist/src/routes/core.d.ts.map +1 -1
  34. package/dist/src/routes/core.js +545 -58
  35. package/dist/src/routes/core.js.map +1 -1
  36. package/dist/src/routes/docs.d.ts +3 -0
  37. package/dist/src/routes/docs.d.ts.map +1 -0
  38. package/dist/src/routes/docs.js +23 -0
  39. package/dist/src/routes/docs.js.map +1 -0
  40. package/dist/src/routes/openclaw.d.ts.map +1 -1
  41. package/dist/src/routes/openclaw.js +317 -90
  42. package/dist/src/routes/openclaw.js.map +1 -1
  43. package/dist/src/server.js +55 -4
  44. package/dist/src/server.js.map +1 -1
  45. package/dist/src/services/context-pool.d.ts +21 -4
  46. package/dist/src/services/context-pool.d.ts.map +1 -1
  47. package/dist/src/services/context-pool.js +290 -71
  48. package/dist/src/services/context-pool.js.map +1 -1
  49. package/dist/src/services/download.d.ts +2 -0
  50. package/dist/src/services/download.d.ts.map +1 -1
  51. package/dist/src/services/download.js +110 -80
  52. package/dist/src/services/download.js.map +1 -1
  53. package/dist/src/services/lifecycle-controller.d.ts +40 -0
  54. package/dist/src/services/lifecycle-controller.d.ts.map +1 -0
  55. package/dist/src/services/lifecycle-controller.js +106 -0
  56. package/dist/src/services/lifecycle-controller.js.map +1 -0
  57. package/dist/src/services/resource-extractor.d.ts +1 -0
  58. package/dist/src/services/resource-extractor.d.ts.map +1 -1
  59. package/dist/src/services/resource-extractor.js +7 -0
  60. package/dist/src/services/resource-extractor.js.map +1 -1
  61. package/dist/src/services/session.d.ts +109 -4
  62. package/dist/src/services/session.d.ts.map +1 -1
  63. package/dist/src/services/session.js +622 -64
  64. package/dist/src/services/session.js.map +1 -1
  65. package/dist/src/services/structured-extractor.d.ts +39 -0
  66. package/dist/src/services/structured-extractor.d.ts.map +1 -0
  67. package/dist/src/services/structured-extractor.js +487 -0
  68. package/dist/src/services/structured-extractor.js.map +1 -0
  69. package/dist/src/services/tab.d.ts +30 -3
  70. package/dist/src/services/tab.d.ts.map +1 -1
  71. package/dist/src/services/tab.js +872 -124
  72. package/dist/src/services/tab.js.map +1 -1
  73. package/dist/src/services/tracing.d.ts +7 -0
  74. package/dist/src/services/tracing.d.ts.map +1 -1
  75. package/dist/src/services/tracing.js +200 -19
  76. package/dist/src/services/tracing.js.map +1 -1
  77. package/dist/src/services/vnc.d.ts.map +1 -1
  78. package/dist/src/services/vnc.js +5 -3
  79. package/dist/src/services/vnc.js.map +1 -1
  80. package/dist/src/services/youtube.js +1 -1
  81. package/dist/src/services/youtube.js.map +1 -1
  82. package/dist/src/types.d.ts +71 -1
  83. package/dist/src/types.d.ts.map +1 -1
  84. package/dist/src/utils/config.d.ts +79 -3
  85. package/dist/src/utils/config.d.ts.map +1 -1
  86. package/dist/src/utils/config.js +145 -3
  87. package/dist/src/utils/config.js.map +1 -1
  88. package/dist/src/utils/presets.d.ts.map +1 -1
  89. package/dist/src/utils/presets.js +3 -1
  90. package/dist/src/utils/presets.js.map +1 -1
  91. package/dist/src/utils/proxy-profiles.d.ts +18 -0
  92. package/dist/src/utils/proxy-profiles.d.ts.map +1 -0
  93. package/dist/src/utils/proxy-profiles.js +197 -0
  94. package/dist/src/utils/proxy-profiles.js.map +1 -0
  95. package/dist/src/utils/sidecar-version.d.ts +12 -0
  96. package/dist/src/utils/sidecar-version.d.ts.map +1 -0
  97. package/dist/src/utils/sidecar-version.js +63 -0
  98. package/dist/src/utils/sidecar-version.js.map +1 -0
  99. package/dist/tsconfig.tsbuildinfo +1 -1
  100. package/openclaw.plugin.json +39 -0
  101. package/package.json +16 -4
  102. package/plugin.ts +949 -0
@@ -3,6 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.markDownloadsStaged = markDownloadsStaged;
7
+ exports.commitStagedDownloads = commitStagedDownloads;
6
8
  exports.buildContentUrl = buildContentUrl;
7
9
  exports.registerDownloadListener = registerDownloadListener;
8
10
  exports.upsertDownload = upsertDownload;
@@ -20,15 +22,24 @@ const node_fs_1 = __importDefault(require("node:fs"));
20
22
  const node_path_1 = __importDefault(require("node:path"));
21
23
  const config_1 = require("../utils/config");
22
24
  const download_helpers_1 = require("../utils/download-helpers");
25
+ const sidecar_version_1 = require("../utils/sidecar-version");
23
26
  const logging_1 = require("../middleware/logging");
24
27
  const CONFIG = (0, config_1.loadConfig)();
25
28
  // In-memory registry of downloads (persisted to disk)
26
29
  const downloads = new Map();
30
+ // Tab IDs with staged (uncommitted) downloads - hidden from external queries.
31
+ const stagedTabIds = new Set();
27
32
  const REGISTRY_FILE = node_path_1.default.join(CONFIG.downloadsDir, 'registry.json');
28
33
  let saveTimer = null;
29
34
  let registryInitialized = false;
30
35
  let cleanupInterval = null;
31
36
  const pagesWithListener = new WeakSet();
37
+ function markDownloadsStaged(tabId) {
38
+ stagedTabIds.add(String(tabId));
39
+ }
40
+ function commitStagedDownloads(tabId) {
41
+ stagedTabIds.delete(String(tabId));
42
+ }
32
43
  function buildContentUrl(id, userId) {
33
44
  return `/downloads/${String(id)}/content?userId=${encodeURIComponent(String(userId))}`;
34
45
  }
@@ -64,9 +75,7 @@ function saveRegistryToDisk() {
64
75
  normalizeDownloadInfo(info);
65
76
  obj[String(id)] = info;
66
77
  }
67
- const tmp = `${REGISTRY_FILE}.tmp`;
68
- node_fs_1.default.writeFileSync(tmp, JSON.stringify(obj, null, 2));
69
- node_fs_1.default.renameSync(tmp, REGISTRY_FILE);
78
+ (0, sidecar_version_1.writeVersionedSidecar)(REGISTRY_FILE, 1, obj);
70
79
  }
71
80
  catch (err) {
72
81
  const message = err instanceof Error ? err.message : String(err);
@@ -86,79 +95,81 @@ function scheduleSaveRegistry() {
86
95
  function loadRegistryFromDisk() {
87
96
  let loaded = 0;
88
97
  let removed = 0;
89
- try {
90
- if (!node_fs_1.default.existsSync(REGISTRY_FILE))
91
- return { loaded: 0, removed: 0 };
92
- const raw = node_fs_1.default.readFileSync(REGISTRY_FILE, 'utf-8');
93
- const parsed = JSON.parse(raw);
94
- if (!parsed || typeof parsed !== 'object')
95
- return { loaded: 0, removed: 0 };
96
- const record = parsed;
97
- for (const [idKey, value] of Object.entries(record)) {
98
- if (!value || typeof value !== 'object') {
99
- removed++;
100
- continue;
101
- }
102
- const anyInfo = value;
103
- const id = String(anyInfo.id ?? idKey);
104
- const userId = String(anyInfo.userId ?? '');
105
- const savedFilename = String(anyInfo.savedFilename ?? '');
106
- if (!id || !userId || !savedFilename) {
107
- removed++;
108
- continue;
109
- }
110
- const filePath = node_path_1.default.join((0, download_helpers_1.safeUserDir)(CONFIG.downloadsDir, userId), savedFilename);
111
- if (!node_fs_1.default.existsSync(filePath)) {
112
- removed++;
113
- continue;
114
- }
115
- let statSize = -1;
116
- let statMtime = Date.now();
117
- try {
118
- const stat = node_fs_1.default.statSync(filePath);
119
- statSize = stat.size;
120
- statMtime = typeof stat.mtimeMs === 'number' ? stat.mtimeMs : Date.now();
121
- }
122
- catch {
123
- // ignore
124
- }
125
- const suggested = String(anyInfo.suggestedFilename ?? savedFilename.replace(/^([0-9a-f-]{36})_/, '')) || 'download';
126
- const mimeType = String(anyInfo.mimeType ?? (0, download_helpers_1.guessMimeType)(suggested));
127
- const size = typeof anyInfo.size === 'number' && Number.isFinite(anyInfo.size) ? anyInfo.size : statSize;
128
- const createdAt = typeof anyInfo.createdAt === 'number' && Number.isFinite(anyInfo.createdAt) ? anyInfo.createdAt : statMtime;
129
- const completedAt = typeof anyInfo.completedAt === 'number' && Number.isFinite(anyInfo.completedAt) ? anyInfo.completedAt : statMtime;
130
- const statusRaw = String(anyInfo.status ?? 'completed');
131
- const status = ['pending', 'completed', 'failed', 'canceled'].includes(statusRaw)
132
- ? statusRaw
133
- : 'completed';
134
- const error = typeof anyInfo.error === 'string' ? anyInfo.error : undefined;
135
- const url = typeof anyInfo.url === 'string' ? anyInfo.url : '';
136
- const tabId = typeof anyInfo.tabId === 'string' ? anyInfo.tabId : 'unknown';
137
- const info = {
138
- id,
139
- contentUrl: buildContentUrl(id, userId),
140
- tabId,
141
- userId,
142
- suggestedFilename: suggested,
143
- savedFilename,
144
- mimeType,
145
- size,
146
- status,
147
- error,
148
- url,
149
- createdAt,
150
- completedAt,
151
- };
152
- normalizeDownloadInfo(info);
153
- downloads.set(String(info.id), info);
154
- loaded++;
98
+ const result = (0, sidecar_version_1.readVersionedSidecar)(REGISTRY_FILE, {
99
+ currentVersion: 1,
100
+ migrations: {
101
+ 0: (raw) => raw,
102
+ },
103
+ label: 'download registry',
104
+ });
105
+ if (result === null) {
106
+ if (node_fs_1.default.existsSync(REGISTRY_FILE)) {
107
+ throw new Error(`Download registry at ${REGISTRY_FILE} has invalid payload (null or missing data section). Delete the file to reset.`);
155
108
  }
156
- }
157
- catch (err) {
158
- const message = err instanceof Error ? err.message : String(err);
159
- (0, logging_1.log)('warn', 'download registry load failed', { error: message });
160
109
  return { loaded: 0, removed: 0 };
161
110
  }
111
+ if (typeof result !== 'object' || Array.isArray(result)) {
112
+ throw new Error(`Download registry at ${REGISTRY_FILE} has invalid payload shape (expected object map). Delete the file to reset.`);
113
+ }
114
+ for (const [idKey, value] of Object.entries(result)) {
115
+ if (!value || typeof value !== 'object') {
116
+ removed++;
117
+ continue;
118
+ }
119
+ const anyInfo = value;
120
+ const id = String(anyInfo.id ?? idKey);
121
+ const userId = String(anyInfo.userId ?? '');
122
+ const savedFilename = String(anyInfo.savedFilename ?? '');
123
+ if (!id || !userId || !savedFilename) {
124
+ removed++;
125
+ continue;
126
+ }
127
+ const filePath = node_path_1.default.join((0, download_helpers_1.safeUserDir)(CONFIG.downloadsDir, userId), savedFilename);
128
+ if (!node_fs_1.default.existsSync(filePath)) {
129
+ removed++;
130
+ continue;
131
+ }
132
+ let statSize = -1;
133
+ let statMtime = Date.now();
134
+ try {
135
+ const stat = node_fs_1.default.statSync(filePath);
136
+ statSize = stat.size;
137
+ statMtime = typeof stat.mtimeMs === 'number' ? stat.mtimeMs : Date.now();
138
+ }
139
+ catch {
140
+ // ignore
141
+ }
142
+ const suggested = String(anyInfo.suggestedFilename ?? savedFilename.replace(/^([0-9a-f-]{36})_/, '')) || 'download';
143
+ const mimeType = String(anyInfo.mimeType ?? (0, download_helpers_1.guessMimeType)(suggested));
144
+ const size = typeof anyInfo.size === 'number' && Number.isFinite(anyInfo.size) ? anyInfo.size : statSize;
145
+ const createdAt = typeof anyInfo.createdAt === 'number' && Number.isFinite(anyInfo.createdAt) ? anyInfo.createdAt : statMtime;
146
+ const completedAt = typeof anyInfo.completedAt === 'number' && Number.isFinite(anyInfo.completedAt) ? anyInfo.completedAt : statMtime;
147
+ const statusRaw = String(anyInfo.status ?? 'completed');
148
+ const status = ['pending', 'completed', 'failed', 'canceled'].includes(statusRaw)
149
+ ? statusRaw
150
+ : 'completed';
151
+ const error = typeof anyInfo.error === 'string' ? anyInfo.error : undefined;
152
+ const url = typeof anyInfo.url === 'string' ? anyInfo.url : '';
153
+ const tabId = typeof anyInfo.tabId === 'string' ? anyInfo.tabId : 'unknown';
154
+ const info = {
155
+ id,
156
+ contentUrl: buildContentUrl(id, userId),
157
+ tabId,
158
+ userId,
159
+ suggestedFilename: suggested,
160
+ savedFilename,
161
+ mimeType,
162
+ size,
163
+ status,
164
+ error,
165
+ url,
166
+ createdAt,
167
+ completedAt,
168
+ };
169
+ normalizeDownloadInfo(info);
170
+ downloads.set(String(info.id), info);
171
+ loaded++;
172
+ }
162
173
  return { loaded, removed };
163
174
  }
164
175
  function scanOrphanedFiles() {
@@ -227,12 +238,26 @@ function initializeRegistry() {
227
238
  if (registryInitialized)
228
239
  return;
229
240
  registryInitialized = true;
230
- const { loaded, removed } = loadRegistryFromDisk();
231
- const added = scanOrphanedFiles();
232
- if (loaded || removed || added) {
233
- (0, logging_1.log)('info', 'download registry initialized', { loaded, removed, added });
234
- // Persist cleaned/rebuilt registry immediately.
235
- saveRegistryToDisk();
241
+ let loaded = 0;
242
+ let removed = 0;
243
+ let registryCorrupt = false;
244
+ try {
245
+ ({ loaded, removed } = loadRegistryFromDisk());
246
+ }
247
+ catch (err) {
248
+ const message = err instanceof Error ? err.message : String(err);
249
+ (0, logging_1.log)('error', 'download registry load failed; existing downloads unavailable until registry is fixed or deleted', {
250
+ error: message,
251
+ registryFile: REGISTRY_FILE,
252
+ });
253
+ registryCorrupt = true;
254
+ }
255
+ if (!registryCorrupt) {
256
+ const added = scanOrphanedFiles();
257
+ if (loaded || removed || added) {
258
+ (0, logging_1.log)('info', 'download registry initialized', { loaded, removed, added });
259
+ saveRegistryToDisk();
260
+ }
236
261
  }
237
262
  }
238
263
  initializeRegistry();
@@ -395,6 +420,8 @@ function deleteDownloadEntry(id, info) {
395
420
  scheduleSaveRegistry();
396
421
  }
397
422
  function matchFilters(info, filters) {
423
+ if (stagedTabIds.has(String(info.tabId)))
424
+ return false;
398
425
  if (String(info.userId) !== String(filters.userId))
399
426
  return false;
400
427
  if (filters.tabId && String(info.tabId) !== String(filters.tabId))
@@ -449,6 +476,8 @@ function getDownload(id, userId) {
449
476
  return null;
450
477
  if (String(info.userId) !== String(userId))
451
478
  return null;
479
+ if (stagedTabIds.has(String(info.tabId)))
480
+ return null;
452
481
  return info;
453
482
  }
454
483
  function getDownloadPath(id, userId) {
@@ -485,7 +514,7 @@ function deleteDownload(id, userId) {
485
514
  }
486
515
  function getRecentDownloads(tabId, windowMs) {
487
516
  const now = Date.now();
488
- return Array.from(downloads.values()).filter((d) => d.tabId === String(tabId) && now - d.createdAt <= windowMs);
517
+ return Array.from(downloads.values()).filter((d) => d.tabId === String(tabId) && now - d.createdAt <= windowMs && !stagedTabIds.has(String(d.tabId)));
489
518
  }
490
519
  function cleanupExpiredDownloads(ttlMs) {
491
520
  const now = Date.now();
@@ -518,6 +547,7 @@ function cleanupUserDownloads(userId) {
518
547
  for (const [id, info] of downloads) {
519
548
  if (String(info.userId) !== uid)
520
549
  continue;
550
+ stagedTabIds.delete(String(info.tabId));
521
551
  const filePath = node_path_1.default.join((0, download_helpers_1.safeUserDir)(CONFIG.downloadsDir, uid), info.savedFilename);
522
552
  try {
523
553
  node_fs_1.default.unlinkSync(filePath);
@@ -1 +1 @@
1
- {"version":3,"file":"download.js","sourceRoot":"","sources":["../../../src/services/download.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"download.js","sourceRoot":"","sources":["../../../src/services/download.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Lifecycle state machine for idle cleanup and graceful exit.
3
+ */
4
+ export interface LifecycleLiveState {
5
+ liveSessions: number;
6
+ liveTabs: number;
7
+ launchingContexts: number;
8
+ stagedCreates: number;
9
+ }
10
+ type CleanupState = 'idle' | 'in_progress' | 'finished';
11
+ export declare class LifecycleController {
12
+ private readonly cfg;
13
+ private lastActivityMs;
14
+ private cleanupFinishedMs;
15
+ private cleanupState;
16
+ private liveState;
17
+ constructor(cfg: {
18
+ idleCleanupTimeoutMs: number;
19
+ idleExitTimeoutMs: number;
20
+ now?: () => number;
21
+ });
22
+ private now;
23
+ recordRequestStart(): void;
24
+ recordRequestEnd(): void;
25
+ recordInteractiveActivity(): void;
26
+ syncLiveState(state: LifecycleLiveState): void;
27
+ private hasLiveActivity;
28
+ private hasLaunchingOrStagedWork;
29
+ shouldRunCleanup(now?: number): boolean;
30
+ shouldExit(now?: number): boolean;
31
+ markCleanupStarted(_now?: number): void;
32
+ markCleanupFinished(result: 'success' | 'aborted' | 'failed', now?: number): void;
33
+ snapshot(): {
34
+ cleanupState: CleanupState;
35
+ liveState: LifecycleLiveState;
36
+ };
37
+ }
38
+ export declare const lifecycleController: LifecycleController;
39
+ export {};
40
+ //# sourceMappingURL=lifecycle-controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle-controller.d.ts","sourceRoot":"","sources":["../../../src/services/lifecycle-controller.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,YAAY,GAAG,MAAM,GAAG,aAAa,GAAG,UAAU,CAAC;AAExD,qBAAa,mBAAmB;IAY5B,OAAO,CAAC,QAAQ,CAAC,GAAG;IAXtB,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,SAAS,CAKf;gBAGiB,GAAG,EAAE;QACpB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;KACpB;IAKH,OAAO,CAAC,GAAG;IAIX,kBAAkB,IAAI,IAAI;IAK1B,gBAAgB,IAAI,IAAI;IAIxB,yBAAyB,IAAI,IAAI;IAQjC,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAW9C,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,wBAAwB;IAOhC,gBAAgB,CAAC,GAAG,SAAa,GAAG,OAAO;IAc3C,UAAU,CAAC,GAAG,SAAa,GAAG,OAAO;IAQrC,kBAAkB,CAAC,IAAI,SAAa,GAAG,IAAI;IAI3C,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,EAAE,GAAG,SAAa,GAAG,IAAI;IASrF,QAAQ,IAAI;QAAE,YAAY,EAAE,YAAY,CAAC;QAAC,SAAS,EAAE,kBAAkB,CAAA;KAAE;CAM1E;AAGD,eAAO,MAAM,mBAAmB,qBAG9B,CAAC"}
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ /**
3
+ * Lifecycle state machine for idle cleanup and graceful exit.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.lifecycleController = exports.LifecycleController = void 0;
7
+ const config_1 = require("../utils/config");
8
+ const CONFIG = (0, config_1.loadConfig)();
9
+ class LifecycleController {
10
+ cfg;
11
+ lastActivityMs;
12
+ cleanupFinishedMs = null;
13
+ cleanupState = 'idle';
14
+ liveState = {
15
+ liveSessions: 0,
16
+ liveTabs: 0,
17
+ launchingContexts: 0,
18
+ stagedCreates: 0,
19
+ };
20
+ constructor(cfg) {
21
+ this.cfg = cfg;
22
+ this.lastActivityMs = this.now();
23
+ }
24
+ now() {
25
+ return this.cfg.now ? this.cfg.now() : Date.now();
26
+ }
27
+ recordRequestStart() {
28
+ this.lastActivityMs = this.now();
29
+ this.cleanupFinishedMs = null;
30
+ }
31
+ recordRequestEnd() {
32
+ this.lastActivityMs = this.now();
33
+ }
34
+ recordInteractiveActivity() {
35
+ this.lastActivityMs = this.now();
36
+ this.cleanupFinishedMs = null;
37
+ if (this.cleanupState === 'in_progress') {
38
+ this.cleanupState = 'idle';
39
+ }
40
+ }
41
+ syncLiveState(state) {
42
+ this.liveState = state;
43
+ if (this.hasLiveActivity()) {
44
+ this.lastActivityMs = this.now();
45
+ this.cleanupFinishedMs = null;
46
+ }
47
+ else if (this.liveState.liveSessions > 0) {
48
+ // Empty sessions don't reset cleanup timer but DO disarm pending exit
49
+ this.cleanupFinishedMs = null;
50
+ }
51
+ }
52
+ hasLiveActivity() {
53
+ return (this.liveState.liveTabs > 0 ||
54
+ this.liveState.launchingContexts > 0 ||
55
+ this.liveState.stagedCreates > 0);
56
+ }
57
+ hasLaunchingOrStagedWork() {
58
+ return (this.liveState.launchingContexts > 0 ||
59
+ this.liveState.stagedCreates > 0);
60
+ }
61
+ shouldRunCleanup(now = this.now()) {
62
+ if (this.cleanupState === 'in_progress') {
63
+ return false;
64
+ }
65
+ if (this.cleanupFinishedMs !== null) {
66
+ return false;
67
+ }
68
+ if (this.hasLaunchingOrStagedWork()) {
69
+ return false;
70
+ }
71
+ const idleMs = now - this.lastActivityMs;
72
+ return idleMs >= this.cfg.idleCleanupTimeoutMs;
73
+ }
74
+ shouldExit(now = this.now()) {
75
+ if (this.cleanupFinishedMs === null) {
76
+ return false;
77
+ }
78
+ const idleSinceCleanupMs = now - this.cleanupFinishedMs;
79
+ return idleSinceCleanupMs >= this.cfg.idleExitTimeoutMs;
80
+ }
81
+ markCleanupStarted(_now = this.now()) {
82
+ this.cleanupState = 'in_progress';
83
+ }
84
+ markCleanupFinished(result, now = this.now()) {
85
+ if (result === 'success') {
86
+ this.cleanupFinishedMs = now;
87
+ this.cleanupState = 'finished';
88
+ }
89
+ else {
90
+ this.cleanupState = 'idle';
91
+ }
92
+ }
93
+ snapshot() {
94
+ return {
95
+ cleanupState: this.cleanupState,
96
+ liveState: { ...this.liveState },
97
+ };
98
+ }
99
+ }
100
+ exports.LifecycleController = LifecycleController;
101
+ // Singleton instance for server-wide lifecycle management
102
+ exports.lifecycleController = new LifecycleController({
103
+ idleCleanupTimeoutMs: CONFIG.idleTimeoutMs,
104
+ idleExitTimeoutMs: CONFIG.idleExitTimeoutMs,
105
+ });
106
+ //# sourceMappingURL=lifecycle-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle-controller.js","sourceRoot":"","sources":["../../../src/services/lifecycle-controller.ts"],"names":[],"mappings":"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"}
@@ -5,4 +5,5 @@ export declare function resolveBlob(page: Page, blobUrl: string): Promise<{
5
5
  mimeType: string;
6
6
  } | null>;
7
7
  export declare function extractResources(page: Page, params: ExtractResourcesParams): Promise<ExtractResourcesResult>;
8
+ export declare function extractImages(page: Page, params: Pick<ExtractResourcesParams, 'selector' | 'extensions' | 'resolveBlobs' | 'triggerLazyLoad'>): Promise<ExtractResourcesResult>;
8
9
  //# sourceMappingURL=resource-extractor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-extractor.d.ts","sourceRoot":"","sources":["../../../src/services/resource-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAa/E,wBAAsB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAsBnH;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAoTlH"}
1
+ {"version":3,"file":"resource-extractor.d.ts","sourceRoot":"","sources":["../../../src/services/resource-extractor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAa/E,wBAAsB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAsBnH;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAoTlH;AAED,wBAAsB,aAAa,CAClC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,UAAU,GAAG,YAAY,GAAG,cAAc,GAAG,iBAAiB,CAAC,GAClG,OAAO,CAAC,sBAAsB,CAAC,CAKjC"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.resolveBlob = resolveBlob;
4
4
  exports.extractResources = extractResources;
5
+ exports.extractImages = extractImages;
5
6
  const download_helpers_1 = require("../utils/download-helpers");
6
7
  const TYPE_ALIASES = {
7
8
  image: 'images',
@@ -324,4 +325,10 @@ async function extractResources(page, params) {
324
325
  },
325
326
  };
326
327
  }
328
+ async function extractImages(page, params) {
329
+ return extractResources(page, {
330
+ ...params,
331
+ types: ['images'],
332
+ });
333
+ }
327
334
  //# sourceMappingURL=resource-extractor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-extractor.js","sourceRoot":"","sources":["../../../src/services/resource-extractor.ts"],"names":[],"mappings":";;AAeA,kCAsBC;AAED,4CAoTC;AAxVD,gEAAgE;AAEhE,MAAM,YAAY,GAA2B;IAC5C,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,WAAW;IACrB,SAAS,EAAE,WAAW;CACtB,CAAC;AAEK,KAAK,UAAU,WAAW,CAAC,IAAU,EAAE,OAAe;IAC5D,IAAI,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAChD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,0BAA0B,CAAC;YACzD,MAAM,OAAO,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7D,MAAM,cAAc,GAAI,UAAwD,CAAC,UAAU,CAAC;gBAC5F,IAAI,CAAC,cAAc;oBAAE,OAAO,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;gBAC1E,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;gBACpC,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBAC9D,MAAM,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC9D,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QAC9B,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;QACtG,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,0BAA0B,CAAC,EAAE,CAAC;IACpG,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAAC,IAAU,EAAE,MAA8B;IAChF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC;IAC3C,MAAM,cAAc,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CACrF,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CACzD,CAAC;IACF,MAAM,UAAU,GAAG,IAAA,sCAAmB,EAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE1D,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAC3B,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC5B,IAAI,CAAC;YACJ,kBAAkB,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChD,MAAM,GAAG,GAAI,UAA2C,CAAC,QAAQ,CAAC;gBAClE,MAAM,SAAS,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,CAAQ,CAAC;gBAChD,IAAI,CAAC,SAAS;oBAAE,OAAO,CAAC,CAAC;gBAEzB,IAAI,SAAS,GAAG,CAAC,CAAC;gBAClB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAU,CAAC;gBACpE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;oBACrC,IAAI,CAAC;wBACJ,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;wBAC3D,SAAS,EAAE,CAAC;oBACb,CAAC;oBAAC,MAAM,CAAC;wBACR,SAAS;oBACV,CAAC;gBACF,CAAC;gBACD,OAAO,SAAS,CAAC;YAClB,CAAC,EAAE,QAAQ,CAAC,CAAC;YACb,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACR,kBAAkB,GAAG,CAAC,CAAC;QACxB,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CACjC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE;QAC3D,MAAM,GAAG,GAAI,UAA2C,CAAC,QAAQ,CAAC;QAClE,MAAM,GAAG,GAAI,UAAyC,CAAC,MAAM,CAAC;QAC9D,MAAM,SAAS,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,CAAQ,CAAC;QAChD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE;gBAC5D,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;gBAC9D,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAc,EAAE;aACnC,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,GAAW,EAAW,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,CAAC,GAAW,EAAiB,EAAE;YACnD,IAAI,CAAC;gBACJ,IAAI,CAAC,GAAG;oBAAE,OAAO,IAAI,CAAC;gBACtB,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAAE,OAAO,GAAG,CAAC;gBACnE,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1C,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;YACrB,CAAC;YAAC,MAAM,CAAC;gBACR,OAAO,IAAI,CAAC;YACb,CAAC;QACF,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,QAAuB,EAAW,EAAE;YAC/D,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAC5C,MAAM,IAAI,GAAG,QAAQ,IAAI,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAClC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YAE3C,IAAI,CAAC;gBACJ,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1C,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;gBAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACnC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtC,CAAC;YAAC,MAAM,CAAC;gBACR,OAAO,KAAK,CAAC;YACd,CAAC;QACF,CAAC,CAAC;QAmBF,MAAM,GAAG,GAAwF;YAChG,MAAM,EAAE,EAAE;YACV,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,EAAE;YACT,SAAS,EAAE,EAAE;SACb,CAAC;QAEF,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,MAAM,IAAI,GAAG,CAAC,MAAwB,EAAE,CAAW,EAAQ,EAAE;YAC5D,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC;gBAAE,OAAO;YACtC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,CAAC,MAAM;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACjC,CAAC,CAAC;QAEF,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAU,CAAC;YACpE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACxB,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrF,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,CAAC;wBACJ,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC1C,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAkB,CAAC;oBAC/D,CAAC;oBAAC,MAAM,CAAC;wBACR,OAAO,IAAI,CAAC;oBACb,CAAC;gBACF,CAAC,CAAC,EAAE,CAAC;gBACL,IAAI,CAAC,QAAQ,EAAE;oBACd,GAAG;oBACH,QAAQ;oBACR,QAAQ,EAAE,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC;oBAClC,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,OAAO;oBACb,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC;oBAC5B,KAAK,EAAE,GAAG,CAAC,YAAY,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBACjG,MAAM,EAAE,GAAG,CAAC,aAAa,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;oBACrG,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAC/B,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAClC,eAAe,EAAE,KAAK;oBACtB,IAAI,EAAE,IAAI;oBACV,GAAG,EAAE,IAAI;oBACT,cAAc,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;iBAClF,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAU,CAAC;YAC3E,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC5D,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,CAAC;wBACJ,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC1C,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAkB,CAAC;oBAC/D,CAAC;oBAAC,MAAM,CAAC;wBACR,OAAO,IAAI,CAAC;oBACb,CAAC;gBACF,CAAC,CAAC,EAAE,CAAC;gBAEL,IAAI,CAAC,OAAO,EAAE;oBACb,GAAG;oBACH,QAAQ;oBACR,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,GAAG;oBACZ,IAAI,EAAE,MAAM;oBACZ,GAAG,EAAE,IAAI;oBACT,KAAK,EAAE,IAAI;oBACX,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAC/B,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAClC,eAAe,EAAE,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC;oBAC3C,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI;oBACxD,GAAG,EAAE,IAAI;oBACT,cAAc,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;iBAC9E,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,mCAAmC,CAAC,CAEvF,CAAC;YACF,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACvB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjD,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,CAAC;wBACJ,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC1C,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAkB,CAAC;oBAC/D,CAAC;oBAAC,MAAM,CAAC;wBACR,OAAO,IAAI,CAAC;oBACb,CAAC;gBACF,CAAC,CAAC,EAAE,CAAC;gBACL,IAAI,CAAC,OAAO,EAAE;oBACb,GAAG;oBACH,QAAQ;oBACR,QAAQ,EAAG,CAAS,CAAC,IAAI,IAAI,IAAI;oBACjC,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,IAAI,EAAE,OAAO;oBACb,GAAG,EAAE,IAAI;oBACT,KAAK,EAAE,IAAI;oBACX,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAC/B,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAClC,eAAe,EAAE,KAAK;oBACtB,IAAI,EAAE,IAAI;oBACV,GAAG,EAAE,IAAI;oBACT,cAAc,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;iBAC9E,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAU,CAAC;YAC1F,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;gBACxB,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC/I,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7C,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,CAAC;wBACJ,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC1C,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAkB,CAAC;oBAC/D,CAAC;oBAAC,MAAM,CAAC;wBACR,OAAO,IAAI,CAAC;oBACb,CAAC;gBACF,CAAC,CAAC,EAAE,CAAC;gBACL,IAAI,CAAC,WAAW,EAAE;oBACjB,GAAG;oBACH,QAAQ;oBACR,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;oBAChC,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,IAAI,EAAE,UAAU;oBAChB,GAAG,EAAE,IAAI;oBACT,KAAK,EAAE,IAAI;oBACX,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAC/B,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;oBAClC,eAAe,EAAE,KAAK;oBACtB,IAAI,EAAE,IAAI;oBACV,GAAG,EAAE,IAAI;oBACT,cAAc,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;iBAC9E,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,OAAO;YACN,EAAE,EAAE,IAAI;YACR,SAAS,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC7G,SAAS,EAAE,GAAG;YACd,QAAQ,EAAE,EAAE,KAAK,EAAE;SACnB,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,CACxC,CAAC;IAEF,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAiD,CAAC;IAClF,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,EAAE,QAAQ,EAAE,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5F,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvE,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ;gBAAE,SAAS;YACxB,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;YACzF,aAAa,EAAE,CAAC;QACjB,CAAC;IACF,CAAC;IAED,IAAI,MAAM,EAAE,EAAE,IAAI,gBAAgB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,CAAC,SAA+F,EAAQ,EAAE;YACvH,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBACzC,IAAI,CAAC,IAAI;oBAAE,SAAS;gBACpB,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;gBACrB,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;gBACjB,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,CAAC,CAAC,QAAQ;oBAAE,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC7C,CAAC;QACF,CAAC,CAAC;QACF,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC/B,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACtD,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAE9D,MAAM,MAAM,GAAG;QACd,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,KAAK,EAAE,KAAK,CAAC,MAAM;QACnB,KAAK,EAAE,KAAK,CAAC,MAAM;QACnB,SAAS,EAAE,SAAS,CAAC,MAAM;QAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;KACrE,CAAC;IAEF,OAAO;QACN,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE;QACf,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE;QAC9C,MAAM;QACN,QAAQ,EAAE;YACT,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;YACpC,kBAAkB;YAClB,aAAa;SACb;KACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"resource-extractor.js","sourceRoot":"","sources":["../../../src/services/resource-extractor.ts"],"names":[],"mappings":"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"}