mesurer 0.2.4 → 0.2.6
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/CHANGELOG.md +14 -0
- package/README.md +5 -3
- package/dist/{chunk-DBVWPZ7G.js → chunk-6DU6M3Z4.js} +4 -1
- package/dist/index.cjs +18029 -16231
- package/dist/index.d.cts +37 -15
- package/dist/index.d.ts +37 -15
- package/dist/index.js +18113 -16309
- package/dist/{screen-recording-gif-J4EOWLWH.js → screen-recording-gif-4B4R3ZBM.js} +1 -8
- package/dist/styles.css +1 -1
- package/package.json +12 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# mesurer
|
|
2
2
|
|
|
3
|
+
## 0.2.6
|
|
4
|
+
|
|
5
|
+
- add responsive previews (`B`): the page at several screen sizes side by side, with Inspect, Comments, Guides, and X-ray working in each
|
|
6
|
+
- add comments inside previews, copied grouped by URL and viewport
|
|
7
|
+
- change `M` to toggle Comments, not Mesurer on/off
|
|
8
|
+
- change Persist to on by default
|
|
9
|
+
- fix motion card scope, stuck trimmed video exports, and page shortcuts firing while typing in the extension
|
|
10
|
+
|
|
11
|
+
## 0.2.5
|
|
12
|
+
|
|
13
|
+
- add a toolbar dock that snaps to the edges and corners of the screen, with a vertical layout on the left and right; choose Free in Settings to keep the toolbar floating
|
|
14
|
+
- add Auto-hide in Settings, off by default: a docked toolbar tucks to a thin tab and comes back on hover or as the pointer nears its edge
|
|
15
|
+
- improve internal structure and dark mode colors
|
|
16
|
+
|
|
3
17
|
## 0.2.4
|
|
4
18
|
|
|
5
19
|
- add CSS and JavaScript motion inspection with playback, scrubbing, and previews
|
package/README.md
CHANGED
|
@@ -52,13 +52,13 @@ function App() {
|
|
|
52
52
|
| `guideHighlightEnabled` | Highlights guides when they are hovered or selected. Default `true`. |
|
|
53
53
|
| `hoverHighlightEnabled` | Disables hover highlight and deselects on click when `false`. |
|
|
54
54
|
| `layoutDetailsEnabled` | Shows gap and padding under selected dimensions. Default `true`. |
|
|
55
|
-
| `persistOnReload` | Persists workspace state across reloads
|
|
55
|
+
| `persistOnReload` | Persists workspace state across reloads; defaults to `true`. |
|
|
56
56
|
| `shortcutsEnabled` | Enables global keyboard shortcuts when `true`. Default `true`. |
|
|
57
57
|
| `persistKey` | Optional workspace storage key; default workspaces are isolated per browser tab. |
|
|
58
58
|
| `portalTarget` | Optional element or shadow root used as the overlay portal mount target. |
|
|
59
59
|
| `persistence` | Optional storage adapter for custom or extension-backed persistence. |
|
|
60
60
|
| `captureVisibleTab` | Optional function supplying a PNG of the visible tab for Screenshot capture. |
|
|
61
|
-
| `features` | Enable or disable `screenshot`, `rulers`, and `
|
|
61
|
+
| `features` | Enable or disable `screenshot`, `rulers`, `settings`, and `responsive`; each defaults to `true`. |
|
|
62
62
|
| `onPersistenceError` | Called when persistence is unavailable or a storage write fails. |
|
|
63
63
|
| `colorPickerFormats` | Color formats displayed in the picker popover, in display order. |
|
|
64
64
|
| `colorPickerClickFormat` | Format copied to the clipboard when a color is picked. |
|
|
@@ -78,7 +78,7 @@ Props are the defaults. Saved settings override them; **Use defaults** restores
|
|
|
78
78
|
|
|
79
79
|
| Shortcut | Action |
|
|
80
80
|
| ---------------------- | ----------------------------------------------------- |
|
|
81
|
-
| `M` | Toggle
|
|
81
|
+
| `M` | Toggle Comments mode. |
|
|
82
82
|
| `I` | Toggle Inspect mode. |
|
|
83
83
|
| `S` | Toggle Select mode for annotations. |
|
|
84
84
|
| `A` | Toggle Typography mode. |
|
|
@@ -93,6 +93,7 @@ Props are the defaults. Saved settings override them; **Use defaults** restores
|
|
|
93
93
|
| `G` | Toggle Guides mode. |
|
|
94
94
|
| `X` | Toggle X-ray mode. |
|
|
95
95
|
| `R` | Toggle pixel rulers along the top and left edges. |
|
|
96
|
+
| `B` | Preview the page at other screen sizes. |
|
|
96
97
|
| `H` | Set guide orientation to horizontal. |
|
|
97
98
|
| `V` | Set guide orientation to vertical. |
|
|
98
99
|
| `Alt` | Temporarily enable option/guide measurement overlays. |
|
|
@@ -120,6 +121,7 @@ Props are the defaults. Saved settings override them; **Use defaults** restores
|
|
|
120
121
|
- **Rulers** - Drag guides from pixel rulers along the top and left edges
|
|
121
122
|
- **Typography** - Inspect typography styles and pin text details
|
|
122
123
|
- **X-ray mode** - Reveal element structure without changing the page
|
|
124
|
+
- **Responsive** - Preview the page at several screen sizes side by side, from named devices or its own breakpoints
|
|
123
125
|
- **Sample color** - Sample rendered colors and copy values in your chosen format
|
|
124
126
|
- **Screenshot** - Drag a region of the visible tab and copy or download it. In a React integration without the extension, the browser may show a tab-sharing prompt.
|
|
125
127
|
- **Video recording** - Drag a region of the visible tab, record up to 60 seconds, trim the result, and export it as WebM, GIF, or MP4 when supported. The Chrome extension records the active tab without a second sharing prompt.
|
|
@@ -215,6 +215,7 @@ async function reencodeVideoClip(ownerDocument, ownerWindow, sourceUrl, startTim
|
|
|
215
215
|
if (stopped) return;
|
|
216
216
|
stopped = true;
|
|
217
217
|
source.removeEventListener("timeupdate", onTimeUpdate);
|
|
218
|
+
source.removeEventListener("ended", finish);
|
|
218
219
|
source.pause();
|
|
219
220
|
try {
|
|
220
221
|
recorder.stop();
|
|
@@ -245,18 +246,20 @@ async function reencodeVideoClip(ownerDocument, ownerWindow, sourceUrl, startTim
|
|
|
245
246
|
};
|
|
246
247
|
recorder.onerror = () => reject(new Error("Could not trim recording"));
|
|
247
248
|
source.addEventListener("timeupdate", onTimeUpdate);
|
|
249
|
+
source.addEventListener("ended", finish);
|
|
248
250
|
recorder.start(100);
|
|
249
251
|
void source.play().then(
|
|
250
252
|
() => drawFrame(),
|
|
251
253
|
() => {
|
|
252
254
|
source.removeEventListener("timeupdate", onTimeUpdate);
|
|
255
|
+
source.removeEventListener("ended", finish);
|
|
253
256
|
reject(new Error("Could not trim recording"));
|
|
254
257
|
}
|
|
255
258
|
);
|
|
256
259
|
});
|
|
257
260
|
}
|
|
258
261
|
async function encodeGifClip(ownerDocument, sourceUrl, startTime, endTime, scale) {
|
|
259
|
-
const encoder = await import("./screen-recording-gif-
|
|
262
|
+
const encoder = await import("./screen-recording-gif-4B4R3ZBM.js");
|
|
260
263
|
return encoder.encodeGifClip(ownerDocument, sourceUrl, startTime, endTime, scale);
|
|
261
264
|
}
|
|
262
265
|
|