Commit Graph

1190 Commits

Author SHA1 Message Date
Eoghan Murray
aa4c7f9820 Reduce verbosity/redundancy of new pointerType attribute (#1206)
* Reduce verbosity/redundancy of output of new pointerType attribute by confining it only to clicks (and to a MouseDown/MouseUp from a PointerTypes.Pen, as these don't yet have a dedicated PendDown/PenUp)

* Update how the changeset will read for the next release based on the trimming in this PR

* Prefer triple equals

* The assignment to the outer `pointerType` variable in an anonymous function was somehow missed by the `typings` check

* Apply formatting changes

* Update packages/rrweb/src/record/observer.ts

* Update packages/rrweb/src/record/observer.ts

---------

Co-authored-by: Yun Feng <yun.feng0817@gmail.com>
2026-04-01 12:00:00 +08:00
Ben White
ec5e536891 feat: Added support maskInputFn with HTMLElement (#1188) 2026-04-01 12:00:00 +08:00
Justin Halsall
23388f2d00 Add gold sponsors (#1207)
* Add gold sponsors

* Create empty-bikes-cheer.md
2026-04-01 12:00:00 +08:00
re-fort
4ba3fd84bf fix: change default value of input type from null to text (#1200)
* fix: change default value of input type from null to text

* Apply formatting changes

* add changeset

* add a comment related to the type of input element
2026-04-01 12:00:00 +08:00
Eoghan Murray
87b95bfc14 Merge pull request #1201 from eoghanmurray/pointerTypeFixups
Pointer type fixups
2026-04-01 12:00:00 +08:00
Eoghan Murray
f83168ddba Merge pull request #1129 from eoghanmurray/pointerType
Record pointerType on clicks
2026-04-01 12:00:00 +08:00
Justin Halsall
94d0838202 Create fair-dragons-greet.md 2026-04-01 12:00:00 +08:00
Charlie Gracie
781ca8de91 fix: Set finished=false in goto instead of handleProgressClick (#1198)
* Reset the finished flag in goto

If the player finishes a replaying a video the `finished` boolean is set to true. This allows the video to be restarted at the beginning if the controller is toggled again. If a user clicks on the progress bar the `finished` boolean is reset so if the `toggle` API is called it starts at the right place. If a user programatically calls `goto` which is the underlying API that handling the progress click calls the next invocation of `toggle` will start the video at the beginning instead of the proper location.

* Create controller-finish-flag.md

* Update controller-finish-flag.md
2026-04-01 12:00:00 +08:00
eoghanmurray
29d0d3a659 Apply formatting changes 2026-04-01 12:00:00 +08:00
Eoghan Murray
84452653bf eslint was giving an error here 2026-04-01 12:00:00 +08:00
Francesco Novy
6360042d33 fix: Fix input.type check (#1184)
* fix: Fix input.type check

Actually I noticed that `el.type` returns `text` when type is not explicitly set, so this is slightly incorrect.

* fix linting

* Apply formatting changes
2026-04-01 12:00:00 +08:00
Eoghan Murray
11c973efb0 Make the pointerType into an Enum to be consistent with other values in events 2026-04-01 12:00:00 +08:00
Eoghan Murray
3c425397fb Get puppeteer to produce a touch event - this also uncovered an error where a subsequent click would be picked up as a touch (see thisEventKey change) 2026-04-01 12:00:00 +08:00
Yun Feng
ea9033fc08 improve: add try catch to snapshot.ts 's masking text function (#1148)
* improve: add try catch to snapshot.ts to make it robust

* add change log
2026-04-01 12:00:00 +08:00
eoghanmurray
78127d72ab Apply formatting changes 2026-04-01 12:00:00 +08:00
Eoghan Murray
488949a5e3 Add a baseline test for clicking links 2026-04-01 12:00:00 +08:00
xujiujiu
3c61ec91b5 fix: doc fix canvas-webrtc link (#1193) 2026-04-01 12:00:00 +08:00
Eoghan Murray
e3bb1666d4 Create little-suits-leave.md 2026-04-01 12:00:00 +08:00
Eoghan Murray
1051a9b878 pointerType shows up in clicks in these tests on my machine; 0=PointerTypes.Mouse is expected 2026-04-01 12:00:00 +08:00
github-actions[bot]
fbdf82729c Version Packages (alpha) (#1175)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2026-04-01 12:00:00 +08:00
eoghanmurray
1c069aac77 Apply formatting changes 2026-04-01 12:00:00 +08:00
Eoghan Murray
9622e5dc9d The type system was complaining about the remote possibility that e ended up as a TouchEvent instead of an individual Touch object I think 2026-04-01 12:00:00 +08:00
Yun Feng
78935ea820 move rrvideo to monorepo (#1181)
* first commit

* rrvideo v0.1.0

First version of rrvideo.

1. Use as a Node.JS lib.
2. Use as a CLI.

Features are implemented via puppeteer, ffmpeg and rrweb-player.

* add readme

* update publish script

* add node env in cli file and change package.json bin to same like README (#4)

Co-authored-by: Xu Yinjie <xuyinjie@xiaobangtouzi.com>

* release 0.2.0

* fix #6 avoid assign undefined to config

* Fix: Solve the inconsistency between rrvideo and the real recorded page rendering when rendering the page with a headless browser (https://github.com/rrweb-io/rrvideo/pull/26)

Author: xujiujiu <906784584@qq.com>

---------

Co-authored-by: xujiujiu <906784584@qq.com>

* refactor rrvideo

1. refactor code
2. change monorepo config
3. remove separate TS dependencies

* add changeset

* fix: eslint errors

---------

Co-authored-by: Yanzhen Yu <yanzhen@smartx.com>
Co-authored-by: xyj <593500664@qq.com>
Co-authored-by: Xu Yinjie <xuyinjie@xiaobangtouzi.com>
Co-authored-by: xujiujiu <906784584@qq.com>
2026-04-01 12:00:00 +08:00
Eoghan Murray
5a7b6d60ea Record pointerType on clicks - could be useful for displaying e.g. a circle rather than a point during replay
- We have to switch to 'onpointerdown' & 'onpointerup' in order to actually capture `e.pointerType`
 - this replaces 4 event listeners (MouseDown/MouseUp/TouchStart/TouchEnd) with 2 pointer ones which should fire in all 4 scenarios. We still output the old types according to the MouseInteractions enum
 - there is no Pointer equivalent of Click, so we leave that is, but use the last Pointer event to attach a pointerType to (only) the click event, where it is most useful
 - we can fallback to the old method for any browsers not supporting `window.PointerEvent`, in which case \`pointerType\` will be absent from all events
2026-04-01 12:00:00 +08:00
Eoghan Murray
58ee89dd36 Fixup type errors 2026-04-01 12:00:00 +08:00
Justin Halsall
031a72721c Fix: Trigger mouse movement & hover with mouse up/down in sync mode (#1191)
* Trigger mouse movement & hover with mouse up/down in sync mode

* Trigger touchActive and mouseDown on flush
2026-04-01 12:00:00 +08:00
yz-yu
f294045517 Update FUNDING.yml 2026-04-01 12:00:00 +08:00
Yun Feng
4bf30efbf3 Fix: processed-node-manager is created even in the environment that doesn't need a recorder (#1186)
* Fix: processed-node-manager is created even in the environment that doesn't need a recorder

* apply Justin's suggestion

End the RAF loop when the recorder stops
2026-04-01 12:00:00 +08:00
Francesco Novy
74411fc544 feat: Allow to pass errorHandler as record option (#1107)
* feat: Allow to pass `errorHandler` as record option

* add docs

* Apply formatting changes
2026-04-01 12:00:00 +08:00
Francesco Novy
271501b7b9 feat: Ensure password inputs are masked when switching type (#1170)
* feat: Ensure password inputs are masked when switching type


Apply formatting changes

use data- attribute


ref: Ensure type is always lowercased


add changeset

* extract into util

* Apply formatting changes
2026-04-01 12:00:00 +08:00
Eoghan Murray
65ef257d33 Extend the suppression of warnings to take into account anscestors (#1145)
* Extend the suppression of warnings to take account that a prior removal may not have been against the immediate parent of a subsequent removal, but rather some anscestor

* Create proud-experts-jam.md

* Apply formatting changes
2026-04-01 12:00:00 +08:00
fukang wang
fcac68383c fix: worker_thread warning (#1179)
* fix: worker_thread warning

* Create fast-chefs-smell.md

* Apply formatting changes

* Update fast-chefs-smell.md
2026-04-01 12:00:00 +08:00
fukang wang
18d7456ed7 fix: Cannot set property attributeName of #<MutationRecord> which has only a getter (#1173)
* fix: Cannot set property attributeName of #<MutationRecord> which has only a getter

* fix: attributeName readonly
2026-04-01 12:00:00 +08:00
sky
1c5acb69be improve: some websites rebuild imcomplete (#1163)
* improve: mutation.ts, loop use Set replace Array

* improve: add a try-catch to utils.ts to make it robust

* Create yellow-mails-cheat.md

---------

Co-authored-by: Yun Feng <yun.feng0817@gmail.com>
2026-04-01 12:00:00 +08:00
fukang wang
6855705445 fix: inline images onload (#1174)
* fix: inline images onload

* add integration test case

* Apply formatting changes

* Create small-olives-arrive.md

---------

Co-authored-by: Yun Feng <yun.feng0817@gmail.com>
2026-04-01 12:00:00 +08:00
github-actions[bot]
d4d840122a Version Packages (alpha) (#1138) 2026-04-01 12:00:00 +08:00
Justin Halsall
48de8e1e9e Fix changesets patch level of PR #1159 (#1169)
* Fix changesets patch level of PR #1159

* Create twenty-planets-repeat.md

* Apply formatting changes
2026-04-01 12:00:00 +08:00
Justin Halsall
cbf68f2490 Add tsdoc/jsdoc deprecated notice to Mirror (#1168) 2026-04-01 12:00:00 +08:00
Yun Feng
5256e63fd1 Fix: Switch to real dom before rebuilding fullsnapshot (#1139) 2026-04-01 12:00:00 +08:00
Eoghan Murray
6a272b7b16 Update CONTRIBUTING.md (#1165)
* Update CONTRIBUTING.md

Add info about Changesets

* Apply formatting changes
2026-04-01 12:00:00 +08:00
Francesco Novy
42c9f53602 feat: Ignore autoplay attribute on video/audio elements (#1152)
* feat: Ignore `autoplay` attribute on video/auto elements

This element leads to weird issues when replaying, so it's better to strip this out.

* add changeset

* fix check


fix typo

* Apply formatting changes

---------

Co-authored-by: mydea <mydea@users.noreply.github.com>
2026-04-01 12:00:00 +08:00
Eoghan Murray
e4f8b7c022 Set userTriggered to false on Input attribute modifications (#1159)
* Set userTriggered to false on Input attribute modifications

 - the fact we are intercepting them via hook rather than an event suggests to me that they could well be programmatic

* Create young-timers-grow.md
2026-04-01 12:00:00 +08:00
Francesco Novy
8b55751a40 fix: Explicitly handle null attribute values (#1157)
* fix: Explicitly handle removed attributes

The attribute `value` can be null when a mutation observer triggers due to a removed attribute. This is currently not reflected by types and code.

* Apply formatting changes

* fix

* add changeset
2026-04-01 12:00:00 +08:00
Pravin Tiwari
7dca0f37c4 fix the statement which is getting changed by Microbundle (#1156)
* fix the statement which is getting changed by microbundle

* Create chatty-cherries-train.md

* fix formatting.

* fix position of comment

---------

Co-authored-by: Justin Halsall <Juice10@users.noreply.github.com>
2026-04-01 12:00:00 +08:00
Eoghan Murray
acffc1a1e2 Replay fix for Firefox — add <head> and <body> separately (#1133)
* Firefox fix: Allow the <head> and <body> to be added in two stages so that (presumably) stylesheet rules are ready to be applied when the body appears

The css which triggered the bug was simply

{
  margin-left: 220px;
  transition: margin-left .448s;
}

* Add a test case which can only be appreciated if you record against this file://, save the events to a html file, and then open the file in Firefox (without this PR applied)

* Apply formatting changes

* Ensure we don't apply this branch when using rrdom, where it is not necessary

* Apply formatting changes

* Rewrite insertion in order to be compatible with rrdom

Also easier to understand

* Delete transition.html

* Create grumpy-ways-own.md

---------

Co-authored-by: Yun Feng <yun.feng0817@gmail.com>
2026-04-01 12:00:00 +08:00
Neil Han
9ccc8b3e69 chore: web-extension vite.config.ts needs these changes to work for node 14 (#1146) 2026-04-01 12:00:00 +08:00
Yun Feng
0d6be523a4 fix: isCheckout is not included in fullsnapshot event (#1141)
* fix: isCheckout is not included in fullsnapshot event

* add change log
2026-04-01 12:00:00 +08:00
Ben White
7a372f1017 fix: Recursive logging bug with console recording (#1136)
* fix: Recursive logging bug with console recording

* Create violet-melons-itch.md
2026-04-01 12:00:00 +08:00
Prateek Karnal
678ba5b467 Fix relative path detection in stylesheet URLs (#1130)
* Fix relative path detection in stylesheet URLs

* Add a check for www.

* Update packages/rrweb-snapshot/src/snapshot.ts

* Update packages/rrweb-snapshot/src/snapshot.ts

* Create large-ants-prove.md

* Update large-ants-prove.md

---------

Co-authored-by: Justin Halsall <Juice10@users.noreply.github.com>
Co-authored-by: Yun Feng <yun.feng0817@gmail.com>
2026-04-01 12:00:00 +08:00
github-actions[bot]
f0240ff80c Version Packages (alpha) (#1135) 2026-04-01 12:00:00 +08:00