@highlight-run/rrweb 2.0.4 → 2.0.7

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 (56) hide show
  1. package/dist/plugins/console-record.js +12 -454
  2. package/dist/plugins/console-record.min.js +1 -1
  3. package/dist/plugins/console-record.min.js.map +1 -1
  4. package/dist/plugins/console-replay.js +4 -164
  5. package/dist/plugins/console-replay.min.js.map +1 -1
  6. package/dist/plugins/sequential-id-record.js +1 -30
  7. package/dist/plugins/sequential-id-replay.js +1 -33
  8. package/dist/record/rrweb-record-pack.js +3 -664
  9. package/dist/record/rrweb-record-pack.min.js.map +1 -1
  10. package/dist/record/rrweb-record.js +4 -3202
  11. package/dist/record/rrweb-record.min.js +3 -3
  12. package/dist/record/rrweb-record.min.js.map +1 -1
  13. package/dist/replay/rrweb-replay-unpack.css +1 -0
  14. package/dist/replay/rrweb-replay-unpack.js +5 -4914
  15. package/dist/replay/rrweb-replay-unpack.min.css +2 -0
  16. package/dist/replay/rrweb-replay-unpack.min.css.map +1 -0
  17. package/dist/replay/rrweb-replay-unpack.min.js +4 -4
  18. package/dist/replay/rrweb-replay-unpack.min.js.map +1 -1
  19. package/dist/replay/rrweb-replay.css +1 -0
  20. package/dist/replay/rrweb-replay.js +5 -4506
  21. package/dist/replay/rrweb-replay.min.css +2 -0
  22. package/dist/replay/rrweb-replay.min.css.map +1 -0
  23. package/dist/replay/rrweb-replay.min.js +3 -3
  24. package/dist/replay/rrweb-replay.min.js.map +1 -1
  25. package/dist/rrweb-all.css +1 -0
  26. package/dist/rrweb-all.js +16 -8877
  27. package/dist/rrweb-all.min.css +2 -0
  28. package/dist/rrweb-all.min.css.map +1 -0
  29. package/dist/rrweb-all.min.js +12 -12
  30. package/dist/rrweb-all.min.js.map +1 -1
  31. package/dist/rrweb.css +1 -0
  32. package/dist/rrweb.js +6 -7546
  33. package/dist/rrweb.min.css +2 -0
  34. package/dist/rrweb.min.css.map +1 -0
  35. package/dist/rrweb.min.js +5 -5
  36. package/dist/rrweb.min.js.map +1 -1
  37. package/es/rrweb/all.css +1 -0
  38. package/es/rrweb/packages/rrweb/src/record/index.js +5 -2
  39. package/es/rrweb/packages/rrweb/src/record/mutation.js +23 -11
  40. package/es/rrweb/packages/rrweb/src/record/observer.js +6 -6
  41. package/es/rrweb/packages/rrweb/src/record/observers/canvas/2d.js +1 -1
  42. package/es/rrweb/packages/rrweb/src/record/observers/canvas/canvas.js +2 -2
  43. package/es/rrweb/packages/rrweb/src/record/observers/canvas/webgl.js +1 -2
  44. package/es/rrweb/packages/rrweb/src/utils.js +16 -23
  45. package/es/rrweb/packages/rrweb-snapshot/es/rrweb-snapshot.js +283 -243
  46. package/lib/record/rrweb-record.js +333 -286
  47. package/lib/replay/rrweb-replay-unpack.css +1 -0
  48. package/lib/replay/rrweb-replay-unpack.js +1 -1
  49. package/lib/replay/rrweb-replay.css +1 -0
  50. package/lib/replay/rrweb-replay.js +1 -1
  51. package/lib/rrweb-all.css +1 -0
  52. package/lib/rrweb-all.js +334 -287
  53. package/lib/rrweb.css +1 -0
  54. package/lib/rrweb.js +334 -287
  55. package/package.json +4 -4
  56. package/typings/utils.d.ts +1 -1
@@ -1,164 +1,4 @@
1
- var rrwebConsoleReplay = (function (exports) {
2
- 'use strict';
3
-
4
- var NodeType;
5
- (function(NodeType2) {
6
- NodeType2[NodeType2["Document"] = 0] = "Document";
7
- NodeType2[NodeType2["DocumentType"] = 1] = "DocumentType";
8
- NodeType2[NodeType2["Element"] = 2] = "Element";
9
- NodeType2[NodeType2["Text"] = 3] = "Text";
10
- NodeType2[NodeType2["CDATA"] = 4] = "CDATA";
11
- NodeType2[NodeType2["Comment"] = 5] = "Comment";
12
- })(NodeType || (NodeType = {}));
13
-
14
- const DEPARTED_MIRROR_ACCESS_WARNING = "Please stop import mirror directly. Instead of that,\r\nnow you can use replayer.getMirror() to access the mirror instance of a replayer,\r\nor you can use record.mirror to access the mirror instance during recording.";
15
- let _mirror = {
16
- map: {},
17
- getId() {
18
- console.error(DEPARTED_MIRROR_ACCESS_WARNING);
19
- return -1;
20
- },
21
- getNode() {
22
- console.error(DEPARTED_MIRROR_ACCESS_WARNING);
23
- return null;
24
- },
25
- removeNodeFromMap() {
26
- console.error(DEPARTED_MIRROR_ACCESS_WARNING);
27
- },
28
- has() {
29
- console.error(DEPARTED_MIRROR_ACCESS_WARNING);
30
- return false;
31
- },
32
- reset() {
33
- console.error(DEPARTED_MIRROR_ACCESS_WARNING);
34
- }
35
- };
36
- if (typeof window !== "undefined" && window.Proxy && window.Reflect) {
37
- _mirror = new Proxy(_mirror, {
38
- get(target, prop, receiver) {
39
- if (prop === "map") {
40
- console.error(DEPARTED_MIRROR_ACCESS_WARNING);
41
- }
42
- return Reflect.get(target, prop, receiver);
43
- }
44
- });
45
- }
46
-
47
- const PLUGIN_NAME = "rrweb/console@1";
48
-
49
- var EventType = /* @__PURE__ */ ((EventType2) => {
50
- EventType2[EventType2["DomContentLoaded"] = 0] = "DomContentLoaded";
51
- EventType2[EventType2["Load"] = 1] = "Load";
52
- EventType2[EventType2["FullSnapshot"] = 2] = "FullSnapshot";
53
- EventType2[EventType2["IncrementalSnapshot"] = 3] = "IncrementalSnapshot";
54
- EventType2[EventType2["Meta"] = 4] = "Meta";
55
- EventType2[EventType2["Custom"] = 5] = "Custom";
56
- EventType2[EventType2["Plugin"] = 6] = "Plugin";
57
- return EventType2;
58
- })(EventType || {});
59
- var IncrementalSource = /* @__PURE__ */ ((IncrementalSource2) => {
60
- IncrementalSource2[IncrementalSource2["Mutation"] = 0] = "Mutation";
61
- IncrementalSource2[IncrementalSource2["MouseMove"] = 1] = "MouseMove";
62
- IncrementalSource2[IncrementalSource2["MouseInteraction"] = 2] = "MouseInteraction";
63
- IncrementalSource2[IncrementalSource2["Scroll"] = 3] = "Scroll";
64
- IncrementalSource2[IncrementalSource2["ViewportResize"] = 4] = "ViewportResize";
65
- IncrementalSource2[IncrementalSource2["Input"] = 5] = "Input";
66
- IncrementalSource2[IncrementalSource2["TouchMove"] = 6] = "TouchMove";
67
- IncrementalSource2[IncrementalSource2["MediaInteraction"] = 7] = "MediaInteraction";
68
- IncrementalSource2[IncrementalSource2["StyleSheetRule"] = 8] = "StyleSheetRule";
69
- IncrementalSource2[IncrementalSource2["CanvasMutation"] = 9] = "CanvasMutation";
70
- IncrementalSource2[IncrementalSource2["Font"] = 10] = "Font";
71
- IncrementalSource2[IncrementalSource2["Log"] = 11] = "Log";
72
- IncrementalSource2[IncrementalSource2["Drag"] = 12] = "Drag";
73
- IncrementalSource2[IncrementalSource2["StyleDeclaration"] = 13] = "StyleDeclaration";
74
- return IncrementalSource2;
75
- })(IncrementalSource || {});
76
-
77
- const ORIGINAL_ATTRIBUTE_NAME = "__rrweb_original__";
78
- const defaultLogConfig = {
79
- level: [
80
- "assert",
81
- "clear",
82
- "count",
83
- "countReset",
84
- "debug",
85
- "dir",
86
- "dirxml",
87
- "error",
88
- "group",
89
- "groupCollapsed",
90
- "groupEnd",
91
- "info",
92
- "log",
93
- "table",
94
- "time",
95
- "timeEnd",
96
- "timeLog",
97
- "trace",
98
- "warn"
99
- ],
100
- replayLogger: void 0
101
- };
102
- class LogReplayPlugin {
103
- constructor(config) {
104
- this.config = Object.assign(defaultLogConfig, config);
105
- }
106
- getConsoleLogger() {
107
- const replayLogger = {};
108
- for (const level of this.config.level) {
109
- if (level === "trace") {
110
- replayLogger[level] = (data) => {
111
- const logger = console.log[ORIGINAL_ATTRIBUTE_NAME] ? console.log[ORIGINAL_ATTRIBUTE_NAME] : console.log;
112
- logger(...data.payload.map((s) => JSON.parse(s)), this.formatMessage(data));
113
- };
114
- } else {
115
- replayLogger[level] = (data) => {
116
- const logger = console[level][ORIGINAL_ATTRIBUTE_NAME] ? console[level][ORIGINAL_ATTRIBUTE_NAME] : console[level];
117
- logger(...data.payload.map((s) => JSON.parse(s)), this.formatMessage(data));
118
- };
119
- }
120
- }
121
- return replayLogger;
122
- }
123
- formatMessage(data) {
124
- if (data.trace.length === 0) {
125
- return "";
126
- }
127
- const stackPrefix = "\n at ";
128
- let result = stackPrefix;
129
- result += data.trace.join(stackPrefix);
130
- return result;
131
- }
132
- }
133
- const getReplayConsolePlugin = (options) => {
134
- const replayLogger = (options == null ? void 0 : options.replayLogger) || new LogReplayPlugin(options).getConsoleLogger();
135
- return {
136
- handler(event, _isSync, context) {
137
- let logData = null;
138
- if (event.type === EventType.IncrementalSnapshot && event.data.source === IncrementalSource.Log) {
139
- logData = event.data;
140
- } else if (event.type === EventType.Plugin && event.data.plugin === PLUGIN_NAME) {
141
- logData = event.data.payload;
142
- }
143
- if (logData) {
144
- try {
145
- if (typeof replayLogger[logData.level] === "function") {
146
- replayLogger[logData.level](logData);
147
- }
148
- } catch (error) {
149
- if (context.replayer.config.showWarning) {
150
- console.warn(error);
151
- }
152
- }
153
- }
154
- }
155
- };
156
- };
157
-
158
- exports.getReplayConsolePlugin = getReplayConsolePlugin;
159
-
160
- Object.defineProperty(exports, '__esModule', { value: true });
161
-
162
- return exports;
163
-
164
- })({});
1
+ var rrwebConsoleReplay=function(c){"use strict";var i;(function(e){e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment"})(i||(i={}));const r=`Please stop import mirror directly. Instead of that,\r
2
+ now you can use replayer.getMirror() to access the mirror instance of a replayer,\r
3
+ or you can use record.mirror to access the mirror instance during recording.`;let d={map:{},getId(){return console.error(r),-1},getNode(){return console.error(r),null},removeNodeFromMap(){console.error(r)},has(){return console.error(r),!1},reset(){console.error(r)}};typeof window<"u"&&window.Proxy&&window.Reflect&&(d=new Proxy(d,{get(e,t,o){return t==="map"&&console.error(r),Reflect.get(e,t,o)}}));const g="rrweb/console@1";var u=(e=>(e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e))(u||{}),p=(e=>(e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e))(p||{}),m=(e=>(e[e.MouseUp=0]="MouseUp",e[e.MouseDown=1]="MouseDown",e[e.Click=2]="Click",e[e.ContextMenu=3]="ContextMenu",e[e.DblClick=4]="DblClick",e[e.Focus=5]="Focus",e[e.Blur=6]="Blur",e[e.TouchStart=7]="TouchStart",e[e.TouchMove_Departed=8]="TouchMove_Departed",e[e.TouchEnd=9]="TouchEnd",e[e.TouchCancel=10]="TouchCancel",e))(m||{}),h=(e=>(e[e["2D"]=0]="2D",e[e.WebGL=1]="WebGL",e[e.WebGL2=2]="WebGL2",e))(h||{}),y=(e=>(e[e.Play=0]="Play",e[e.Pause=1]="Pause",e[e.Seeked=2]="Seeked",e[e.VolumeChange=3]="VolumeChange",e))(y||{}),M=(e=>(e.Start="start",e.Pause="pause",e.Resume="resume",e.Resize="resize",e.Finish="finish",e.FullsnapshotRebuilded="fullsnapshot-rebuilded",e.LoadStylesheetStart="load-stylesheet-start",e.LoadStylesheetEnd="load-stylesheet-end",e.SkipStart="skip-start",e.SkipEnd="skip-end",e.MouseInteraction="mouse-interaction",e.EventCast="event-cast",e.CustomEvent="custom-event",e.Flush="flush",e.StateChange="state-change",e.PlayBack="play-back",e))(M||{});const s="__rrweb_original__",C={level:["assert","clear","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],replayLogger:void 0};class S{constructor(t){this.config=Object.assign(C,t)}getConsoleLogger(){const t={};for(const o of this.config.level)o==="trace"?t[o]=n=>{(console.log[s]?console.log[s]:console.log)(...n.payload.map(l=>JSON.parse(l)),this.formatMessage(n))}:t[o]=n=>{(console[o][s]?console[o][s]:console[o])(...n.payload.map(l=>JSON.parse(l)),this.formatMessage(n))};return t}formatMessage(t){if(t.trace.length===0)return"";const o=`
4
+ at `;let n=o;return n+=t.trace.join(o),n}}const v=e=>{const t=e?.replayLogger||new S(e).getConsoleLogger();return{handler(o,n,l){let a=null;if(o.type===u.IncrementalSnapshot&&o.data.source===p.Log?a=o.data:o.type===u.Plugin&&o.data.plugin===g&&(a=o.data.payload),a)try{typeof t[a.level]=="function"&&t[a.level](a)}catch(f){l.replayer.config.showWarning&&console.warn(f)}}}};return c.getReplayConsolePlugin=v,Object.defineProperty(c,"__esModule",{value:!0}),c}({});