vite-plugin-ai-annotator 1.1.25 → 1.1.27
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.
|
@@ -7222,9 +7222,9 @@
|
|
|
7222
7222
|
},
|
|
7223
7223
|
captureScreenshot(handler) {
|
|
7224
7224
|
checkDisposed();
|
|
7225
|
-
const listener = async (type, selector,
|
|
7225
|
+
const listener = async (type, selector, quality, callback) => {
|
|
7226
7226
|
try {
|
|
7227
|
-
const result = await handler(type, selector,
|
|
7227
|
+
const result = await handler(type, selector, quality);
|
|
7228
7228
|
callback(result);
|
|
7229
7229
|
} catch (error) {
|
|
7230
7230
|
console.error("[captureScreenshot] Handler error:", error);
|
|
@@ -7467,7 +7467,7 @@
|
|
|
7467
7467
|
async (mode, selector, selectorType) => this.triggerSelection(mode, selector, selectorType)
|
|
7468
7468
|
);
|
|
7469
7469
|
this.rpc.handle.captureScreenshot(
|
|
7470
|
-
async (type, selector,
|
|
7470
|
+
async (type, selector, quality) => this.captureScreenshot(type, selector, quality)
|
|
7471
7471
|
);
|
|
7472
7472
|
this.rpc.handle.clearSelection(async () => this.clearSelection());
|
|
7473
7473
|
this.rpc.handle.ping(async () => "pong");
|
|
@@ -7557,31 +7557,29 @@
|
|
|
7557
7557
|
};
|
|
7558
7558
|
}
|
|
7559
7559
|
}
|
|
7560
|
-
async captureScreenshot(type, selector,
|
|
7560
|
+
async captureScreenshot(type, selector, quality = 0.7) {
|
|
7561
7561
|
try {
|
|
7562
7562
|
let targetElement = document.body;
|
|
7563
7563
|
if (type === "element" && selector) {
|
|
7564
7564
|
const element = document.querySelector(selector);
|
|
7565
7565
|
if (!element) {
|
|
7566
|
-
|
|
7566
|
+
this.log(`Element not found for selector: ${selector}`);
|
|
7567
7567
|
return { success: false, error: `Element not found: ${selector}` };
|
|
7568
7568
|
}
|
|
7569
7569
|
targetElement = element;
|
|
7570
7570
|
}
|
|
7571
|
-
|
|
7571
|
+
this.log(`Capturing screenshot of ${type === "element" ? selector : "viewport"}`);
|
|
7572
7572
|
const blob = await toBlob(targetElement, {
|
|
7573
7573
|
quality,
|
|
7574
|
-
type:
|
|
7574
|
+
type: "image/webp",
|
|
7575
7575
|
cacheBust: true,
|
|
7576
|
-
// Avoid caching issues
|
|
7577
7576
|
skipFonts: true
|
|
7578
|
-
// Avoid font loading issues that can cause failures
|
|
7579
7577
|
});
|
|
7580
7578
|
if (!blob) {
|
|
7581
|
-
|
|
7579
|
+
this.log("toBlob returned null - screenshot capture failed");
|
|
7582
7580
|
return { success: false, error: "Failed to capture screenshot (toBlob returned null)" };
|
|
7583
7581
|
}
|
|
7584
|
-
|
|
7582
|
+
this.log(`Screenshot captured, blob size: ${blob.size} bytes`);
|
|
7585
7583
|
const reader = new FileReader();
|
|
7586
7584
|
const base64 = await new Promise((resolve, reject) => {
|
|
7587
7585
|
reader.onload = () => {
|
|
@@ -7595,7 +7593,7 @@
|
|
|
7595
7593
|
return { success: true, base64 };
|
|
7596
7594
|
} catch (error) {
|
|
7597
7595
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
7598
|
-
|
|
7596
|
+
this.log(`Screenshot error: ${errorMessage}`, error);
|
|
7599
7597
|
return {
|
|
7600
7598
|
success: false,
|
|
7601
7599
|
error: errorMessage
|