qapture2 0.7.3 → 0.7.4
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/README.md +9 -3
- package/dist/{chunk-C5WJFSMN.cjs → chunk-7WHQBMVP.cjs} +24 -4
- package/dist/{chunk-BM3ESR2O.js → chunk-ZAWR5VJR.js} +24 -4
- package/dist/index.cjs +5 -5
- package/dist/index.js +1 -1
- package/dist/next.cjs +4 -4
- package/dist/next.js +1 -1
- package/dist/standalone.cjs +2 -2
- package/dist/standalone.js +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -351,9 +351,15 @@ Because by default it is. The DOM engine re-draws your page; fonts shift,
|
|
|
351
351
|
shadows and gradients flatten, `<canvas>` and video come out blank. From
|
|
352
352
|
v0.7.3 a redrawn capture says so under the preview and offers a one-tap **Use
|
|
353
353
|
real screenshots**, which grants tab-share and re-shoots the same selection
|
|
354
|
-
with the exact engine below.
|
|
355
|
-
|
|
356
|
-
|
|
354
|
+
with the exact engine below.
|
|
355
|
+
|
|
356
|
+
That upgrade is Chromium-only, because it depends on `preferCurrentTab`. On
|
|
357
|
+
Safari and Firefox the redraw is the only engine there is — so from v0.7.4 the
|
|
358
|
+
card says so outright and points you at Chrome, rather than leaving you to
|
|
359
|
+
conclude the tool is broken. **If your app draws anything with inline SVG, a
|
|
360
|
+
`<canvas>`, or video, do your screenshot QA in Chrome.** A redraw will render
|
|
361
|
+
an SVG chart as bare outlines and a canvas as a blank box, every time, in any
|
|
362
|
+
tool built this way.
|
|
357
363
|
|
|
358
364
|
### `exact` — opt-in, pixel-for-pixel
|
|
359
365
|
|
|
@@ -1784,6 +1784,7 @@ var STR = {
|
|
|
1784
1784
|
exact_hint: "Screenshots become a real photo of the tab instead of a redraw. Asks once to share this tab; nothing leaves your device.",
|
|
1785
1785
|
redraw_notice: "This is a redraw of the page, not a real photo.",
|
|
1786
1786
|
redraw_action: "Use real screenshots",
|
|
1787
|
+
redraw_no_engine: "This browser cannot photograph a tab, so charts and canvases may come out wrong. Open the app in Chrome, Edge or Brave for true screenshots.",
|
|
1787
1788
|
exact_on: "Pixel-exact screenshots on",
|
|
1788
1789
|
exact_off: "Back to redrawn screenshots",
|
|
1789
1790
|
exact_declined: "Staying on redrawn screenshots",
|
|
@@ -1980,6 +1981,7 @@ var STR = {
|
|
|
1980
1981
|
exact_hint: "\u062A\u0635\u0628\u062D \u0627\u0644\u0644\u0642\u0637\u0629 \u0635\u0648\u0631\u0629 \u062D\u0642\u064A\u0642\u064A\u0629 \u0644\u0644\u062A\u0628\u0648\u064A\u0628 \u0628\u062F\u0644 \u0625\u0639\u0627\u062F\u0629 \u0631\u0633\u0645\u0647. \u064A\u064F\u0637\u0644\u0628 \u0627\u0644\u0625\u0630\u0646 \u0645\u0631\u0629 \u0648\u0627\u062D\u062F\u0629\u060C \u0648\u0644\u0627 \u0634\u064A\u0621 \u064A\u063A\u0627\u062F\u0631 \u062C\u0647\u0627\u0632\u0643.",
|
|
1981
1982
|
redraw_notice: "\u0647\u0630\u0647 \u0625\u0639\u0627\u062F\u0629 \u0631\u0633\u0645 \u0644\u0644\u0635\u0641\u062D\u0629\u060C \u0648\u0644\u064A\u0633\u062A \u0635\u0648\u0631\u0629 \u062D\u0642\u064A\u0642\u064A\u0629.",
|
|
1982
1983
|
redraw_action: "\u0627\u0633\u062A\u062E\u062F\u0645 \u0644\u0642\u0637\u0627\u062A \u062D\u0642\u064A\u0642\u064A\u0629",
|
|
1984
|
+
redraw_no_engine: "\u0644\u0627 \u064A\u0633\u062A\u0637\u064A\u0639 \u0647\u0630\u0627 \u0627\u0644\u0645\u062A\u0635\u0641\u062D \u062A\u0635\u0648\u064A\u0631 \u0627\u0644\u062A\u0628\u0648\u064A\u0628\u060C \u0644\u0630\u0627 \u0642\u062F \u062A\u0638\u0647\u0631 \u0627\u0644\u0645\u062E\u0637\u0637\u0627\u062A \u0648\u0627\u0644\u0644\u0648\u062D\u0627\u062A \u0628\u0634\u0643\u0644 \u062E\u0627\u0637\u0626. \u0627\u0641\u062A\u062D \u0627\u0644\u062A\u0637\u0628\u064A\u0642 \u0641\u064A Chrome \u0623\u0648 Edge \u0623\u0648 Brave \u0644\u0644\u062D\u0635\u0648\u0644 \u0639\u0644\u0649 \u0644\u0642\u0637\u0627\u062A \u062D\u0642\u064A\u0642\u064A\u0629.",
|
|
1983
1985
|
exact_on: "\u062A\u0645 \u062A\u0641\u0639\u064A\u0644 \u0627\u0644\u0644\u0642\u0637\u0627\u062A \u0627\u0644\u0645\u0637\u0627\u0628\u0642\u0629",
|
|
1984
1986
|
exact_off: "\u0627\u0644\u0639\u0648\u062F\u0629 \u0625\u0644\u0649 \u0627\u0644\u0644\u0642\u0637\u0627\u062A \u0627\u0644\u0645\u064F\u0639\u0627\u062F \u0631\u0633\u0645\u0647\u0627",
|
|
1985
1987
|
exact_declined: "\u0633\u0646\u0628\u0642\u0649 \u0639\u0644\u0649 \u0627\u0644\u0644\u0642\u0637\u0627\u062A \u0627\u0644\u0645\u064F\u0639\u0627\u062F \u0631\u0633\u0645\u0647\u0627",
|
|
@@ -9758,7 +9760,7 @@ function CaptureMode() {
|
|
|
9758
9760
|
)
|
|
9759
9761
|
] })
|
|
9760
9762
|
) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "qa-py-4 qa-text-xs qa-text-slate-400", children: t("no_shot") }),
|
|
9761
|
-
shotUrl && shotEngine === "dom" && exactShots.
|
|
9763
|
+
shotUrl && shotEngine === "dom" && (exactShots.status !== "live" && exactShots.supported ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
9762
9764
|
"span",
|
|
9763
9765
|
{
|
|
9764
9766
|
"data-qa-redraw-offer": "true",
|
|
@@ -9784,7 +9786,25 @@ function CaptureMode() {
|
|
|
9784
9786
|
)
|
|
9785
9787
|
]
|
|
9786
9788
|
}
|
|
9787
|
-
)
|
|
9789
|
+
) : !exactShots.supported ? (
|
|
9790
|
+
// Safari and Firefox have no way to photograph the tab, so
|
|
9791
|
+
// there is nothing to offer — but saying NOTHING was the real
|
|
9792
|
+
// failure. A tester watching an SVG chart come back as bare
|
|
9793
|
+
// outlines concludes the tool is broken and files it as a bug,
|
|
9794
|
+
// over and over. Name the limit and name the way out.
|
|
9795
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
9796
|
+
"span",
|
|
9797
|
+
{
|
|
9798
|
+
"data-qa-redraw-note": "true",
|
|
9799
|
+
className: "qa-mt-1.5 qa-block qa-text-center qa-text-10 qa-text-mid",
|
|
9800
|
+
children: [
|
|
9801
|
+
t("redraw_notice"),
|
|
9802
|
+
" ",
|
|
9803
|
+
t("redraw_no_engine")
|
|
9804
|
+
]
|
|
9805
|
+
}
|
|
9806
|
+
)
|
|
9807
|
+
) : null)
|
|
9788
9808
|
]
|
|
9789
9809
|
}
|
|
9790
9810
|
),
|
|
@@ -10079,5 +10099,5 @@ function Qapture({ config }) {
|
|
|
10079
10099
|
exports.Qapture = Qapture;
|
|
10080
10100
|
exports.deleteQaDatabase = deleteQaDatabase;
|
|
10081
10101
|
exports.initQaStudio = initQaStudio;
|
|
10082
|
-
//# sourceMappingURL=chunk-
|
|
10083
|
-
//# sourceMappingURL=chunk-
|
|
10102
|
+
//# sourceMappingURL=chunk-7WHQBMVP.cjs.map
|
|
10103
|
+
//# sourceMappingURL=chunk-7WHQBMVP.cjs.map
|
|
@@ -1777,6 +1777,7 @@ var STR = {
|
|
|
1777
1777
|
exact_hint: "Screenshots become a real photo of the tab instead of a redraw. Asks once to share this tab; nothing leaves your device.",
|
|
1778
1778
|
redraw_notice: "This is a redraw of the page, not a real photo.",
|
|
1779
1779
|
redraw_action: "Use real screenshots",
|
|
1780
|
+
redraw_no_engine: "This browser cannot photograph a tab, so charts and canvases may come out wrong. Open the app in Chrome, Edge or Brave for true screenshots.",
|
|
1780
1781
|
exact_on: "Pixel-exact screenshots on",
|
|
1781
1782
|
exact_off: "Back to redrawn screenshots",
|
|
1782
1783
|
exact_declined: "Staying on redrawn screenshots",
|
|
@@ -1973,6 +1974,7 @@ var STR = {
|
|
|
1973
1974
|
exact_hint: "\u062A\u0635\u0628\u062D \u0627\u0644\u0644\u0642\u0637\u0629 \u0635\u0648\u0631\u0629 \u062D\u0642\u064A\u0642\u064A\u0629 \u0644\u0644\u062A\u0628\u0648\u064A\u0628 \u0628\u062F\u0644 \u0625\u0639\u0627\u062F\u0629 \u0631\u0633\u0645\u0647. \u064A\u064F\u0637\u0644\u0628 \u0627\u0644\u0625\u0630\u0646 \u0645\u0631\u0629 \u0648\u0627\u062D\u062F\u0629\u060C \u0648\u0644\u0627 \u0634\u064A\u0621 \u064A\u063A\u0627\u062F\u0631 \u062C\u0647\u0627\u0632\u0643.",
|
|
1974
1975
|
redraw_notice: "\u0647\u0630\u0647 \u0625\u0639\u0627\u062F\u0629 \u0631\u0633\u0645 \u0644\u0644\u0635\u0641\u062D\u0629\u060C \u0648\u0644\u064A\u0633\u062A \u0635\u0648\u0631\u0629 \u062D\u0642\u064A\u0642\u064A\u0629.",
|
|
1975
1976
|
redraw_action: "\u0627\u0633\u062A\u062E\u062F\u0645 \u0644\u0642\u0637\u0627\u062A \u062D\u0642\u064A\u0642\u064A\u0629",
|
|
1977
|
+
redraw_no_engine: "\u0644\u0627 \u064A\u0633\u062A\u0637\u064A\u0639 \u0647\u0630\u0627 \u0627\u0644\u0645\u062A\u0635\u0641\u062D \u062A\u0635\u0648\u064A\u0631 \u0627\u0644\u062A\u0628\u0648\u064A\u0628\u060C \u0644\u0630\u0627 \u0642\u062F \u062A\u0638\u0647\u0631 \u0627\u0644\u0645\u062E\u0637\u0637\u0627\u062A \u0648\u0627\u0644\u0644\u0648\u062D\u0627\u062A \u0628\u0634\u0643\u0644 \u062E\u0627\u0637\u0626. \u0627\u0641\u062A\u062D \u0627\u0644\u062A\u0637\u0628\u064A\u0642 \u0641\u064A Chrome \u0623\u0648 Edge \u0623\u0648 Brave \u0644\u0644\u062D\u0635\u0648\u0644 \u0639\u0644\u0649 \u0644\u0642\u0637\u0627\u062A \u062D\u0642\u064A\u0642\u064A\u0629.",
|
|
1976
1978
|
exact_on: "\u062A\u0645 \u062A\u0641\u0639\u064A\u0644 \u0627\u0644\u0644\u0642\u0637\u0627\u062A \u0627\u0644\u0645\u0637\u0627\u0628\u0642\u0629",
|
|
1977
1979
|
exact_off: "\u0627\u0644\u0639\u0648\u062F\u0629 \u0625\u0644\u0649 \u0627\u0644\u0644\u0642\u0637\u0627\u062A \u0627\u0644\u0645\u064F\u0639\u0627\u062F \u0631\u0633\u0645\u0647\u0627",
|
|
1978
1980
|
exact_declined: "\u0633\u0646\u0628\u0642\u0649 \u0639\u0644\u0649 \u0627\u0644\u0644\u0642\u0637\u0627\u062A \u0627\u0644\u0645\u064F\u0639\u0627\u062F \u0631\u0633\u0645\u0647\u0627",
|
|
@@ -9751,7 +9753,7 @@ function CaptureMode() {
|
|
|
9751
9753
|
)
|
|
9752
9754
|
] })
|
|
9753
9755
|
) : /* @__PURE__ */ jsx("span", { className: "qa-py-4 qa-text-xs qa-text-slate-400", children: t("no_shot") }),
|
|
9754
|
-
shotUrl && shotEngine === "dom" && exactShots.
|
|
9756
|
+
shotUrl && shotEngine === "dom" && (exactShots.status !== "live" && exactShots.supported ? /* @__PURE__ */ jsxs(
|
|
9755
9757
|
"span",
|
|
9756
9758
|
{
|
|
9757
9759
|
"data-qa-redraw-offer": "true",
|
|
@@ -9777,7 +9779,25 @@ function CaptureMode() {
|
|
|
9777
9779
|
)
|
|
9778
9780
|
]
|
|
9779
9781
|
}
|
|
9780
|
-
)
|
|
9782
|
+
) : !exactShots.supported ? (
|
|
9783
|
+
// Safari and Firefox have no way to photograph the tab, so
|
|
9784
|
+
// there is nothing to offer — but saying NOTHING was the real
|
|
9785
|
+
// failure. A tester watching an SVG chart come back as bare
|
|
9786
|
+
// outlines concludes the tool is broken and files it as a bug,
|
|
9787
|
+
// over and over. Name the limit and name the way out.
|
|
9788
|
+
/* @__PURE__ */ jsxs(
|
|
9789
|
+
"span",
|
|
9790
|
+
{
|
|
9791
|
+
"data-qa-redraw-note": "true",
|
|
9792
|
+
className: "qa-mt-1.5 qa-block qa-text-center qa-text-10 qa-text-mid",
|
|
9793
|
+
children: [
|
|
9794
|
+
t("redraw_notice"),
|
|
9795
|
+
" ",
|
|
9796
|
+
t("redraw_no_engine")
|
|
9797
|
+
]
|
|
9798
|
+
}
|
|
9799
|
+
)
|
|
9800
|
+
) : null)
|
|
9781
9801
|
]
|
|
9782
9802
|
}
|
|
9783
9803
|
),
|
|
@@ -10070,5 +10090,5 @@ function Qapture({ config }) {
|
|
|
10070
10090
|
}
|
|
10071
10091
|
|
|
10072
10092
|
export { Qapture, deleteQaDatabase, initQaStudio };
|
|
10073
|
-
//# sourceMappingURL=chunk-
|
|
10074
|
-
//# sourceMappingURL=chunk-
|
|
10093
|
+
//# sourceMappingURL=chunk-ZAWR5VJR.js.map
|
|
10094
|
+
//# sourceMappingURL=chunk-ZAWR5VJR.js.map
|
package/dist/index.cjs
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk7WHQBMVP_cjs = require('./chunk-7WHQBMVP.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
Object.defineProperty(exports, "QaStudio", {
|
|
8
8
|
enumerable: true,
|
|
9
|
-
get: function () { return
|
|
9
|
+
get: function () { return chunk7WHQBMVP_cjs.Qapture; }
|
|
10
10
|
});
|
|
11
11
|
Object.defineProperty(exports, "Qapture", {
|
|
12
12
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
13
|
+
get: function () { return chunk7WHQBMVP_cjs.Qapture; }
|
|
14
14
|
});
|
|
15
15
|
Object.defineProperty(exports, "deleteQaDatabase", {
|
|
16
16
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
17
|
+
get: function () { return chunk7WHQBMVP_cjs.deleteQaDatabase; }
|
|
18
18
|
});
|
|
19
19
|
Object.defineProperty(exports, "initQaStudio", {
|
|
20
20
|
enumerable: true,
|
|
21
|
-
get: function () { return
|
|
21
|
+
get: function () { return chunk7WHQBMVP_cjs.initQaStudio; }
|
|
22
22
|
});
|
|
23
23
|
//# sourceMappingURL=index.cjs.map
|
|
24
24
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.js
CHANGED
package/dist/next.cjs
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var chunk7WHQBMVP_cjs = require('./chunk-7WHQBMVP.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "QaStudio", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunk7WHQBMVP_cjs.Qapture; }
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "Qapture", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunk7WHQBMVP_cjs.Qapture; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "initQaStudio", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunk7WHQBMVP_cjs.initQaStudio; }
|
|
19
19
|
});
|
|
20
20
|
//# sourceMappingURL=next.cjs.map
|
|
21
21
|
//# sourceMappingURL=next.cjs.map
|
package/dist/next.js
CHANGED
package/dist/standalone.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk7WHQBMVP_cjs = require('./chunk-7WHQBMVP.cjs');
|
|
4
4
|
|
|
5
5
|
// src/standalone.ts
|
|
6
6
|
if (typeof window !== "undefined" && typeof customElements !== "undefined" && !customElements.get("qapture-widget")) {
|
|
@@ -38,7 +38,7 @@ if (typeof window !== "undefined" && typeof customElements !== "undefined" && !c
|
|
|
38
38
|
|
|
39
39
|
Object.defineProperty(exports, "initQaStudio", {
|
|
40
40
|
enumerable: true,
|
|
41
|
-
get: function () { return
|
|
41
|
+
get: function () { return chunk7WHQBMVP_cjs.initQaStudio; }
|
|
42
42
|
});
|
|
43
43
|
//# sourceMappingURL=standalone.cjs.map
|
|
44
44
|
//# sourceMappingURL=standalone.cjs.map
|
package/dist/standalone.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "qapture2",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.4",
|
|
4
4
|
"description": "Drop-in, AI-aware in-browser QA capture widget. A tester annotates the live app (element/region + auto-screenshot + note), tracks a graded testing journey, and exports a ZIP your own coding agent reads. Ships zero AI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -90,6 +90,7 @@
|
|
|
90
90
|
"browser-test": "node scripts/browser-test.mjs",
|
|
91
91
|
"capture-accuracy-test": "node scripts/capture-accuracy-test.mjs",
|
|
92
92
|
"element-capture-test": "node scripts/element-capture-test.mjs",
|
|
93
|
+
"svg-vars-test": "node scripts/svg-vars-test.mjs",
|
|
93
94
|
"loop-features-test": "node scripts/loop-features-test.mjs",
|
|
94
95
|
"walk-test": "node scripts/walk-test.mjs",
|
|
95
96
|
"modern-css-test": "node scripts/modern-css-test.mjs",
|