@midscene/recorder 0.19.1 → 0.20.0
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/dist/RecordTimeline.js +7 -4
- package/dist/recorder-iife.js +4 -7
- package/dist/recorder.d.ts +4 -4
- package/dist/recorder.js +4 -7
- package/package.json +2 -2
package/dist/RecordTimeline.js
CHANGED
|
@@ -4,10 +4,6 @@ import * as __WEBPACK_EXTERNAL_MODULE_antd__ from "antd";
|
|
|
4
4
|
import "react";
|
|
5
5
|
const { Text, Title } = __WEBPACK_EXTERNAL_MODULE_antd__.Typography;
|
|
6
6
|
const RecordTimeline = ({ events, onEventClick })=>{
|
|
7
|
-
console.log('[RecordTimeline] events: ', {
|
|
8
|
-
events,
|
|
9
|
-
length: events.length
|
|
10
|
-
});
|
|
11
7
|
const getEventIcon = (type)=>{
|
|
12
8
|
switch(type){
|
|
13
9
|
case 'click':
|
|
@@ -175,6 +171,13 @@ const RecordTimeline = ({ events, onEventClick })=>{
|
|
|
175
171
|
size: "small",
|
|
176
172
|
children: event.url && /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Text, {
|
|
177
173
|
type: "secondary",
|
|
174
|
+
style: {
|
|
175
|
+
display: '-webkit-box',
|
|
176
|
+
WebkitLineClamp: 2,
|
|
177
|
+
WebkitBoxOrient: 'vertical',
|
|
178
|
+
overflow: 'hidden',
|
|
179
|
+
wordBreak: 'break-all'
|
|
180
|
+
},
|
|
178
181
|
children: event.url
|
|
179
182
|
})
|
|
180
183
|
});
|
package/dist/recorder-iife.js
CHANGED
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
this.eventCallback(navigationEvent);
|
|
77
77
|
debugLog('Added final navigation event', navigationEvent);
|
|
78
78
|
}, 0);
|
|
79
|
-
document.addEventListener('click', this.handleClick);
|
|
79
|
+
document.addEventListener('click', this.handleClick, true);
|
|
80
80
|
document.addEventListener('input', this.handleInput);
|
|
81
81
|
document.addEventListener('scroll', this.handleScroll, {
|
|
82
82
|
passive: true
|
|
@@ -106,12 +106,8 @@
|
|
|
106
106
|
if (!this.isRecording) return;
|
|
107
107
|
const target = event.target;
|
|
108
108
|
const { isLabelClick, labelInfo } = this.checkLabelClick(target);
|
|
109
|
-
|
|
109
|
+
target.getBoundingClientRect();
|
|
110
110
|
const elementRect = {
|
|
111
|
-
left: Number(rect.left.toFixed(2)),
|
|
112
|
-
top: Number(rect.top.toFixed(2)),
|
|
113
|
-
width: Number(rect.width.toFixed(2)),
|
|
114
|
-
height: Number(rect.height.toFixed(2)),
|
|
115
111
|
x: Number(event.clientX.toFixed(2)),
|
|
116
112
|
y: Number(event.clientY.toFixed(2))
|
|
117
113
|
};
|
|
@@ -180,6 +176,7 @@
|
|
|
180
176
|
handleInput = (event)=>{
|
|
181
177
|
if (!this.isRecording) return;
|
|
182
178
|
const target = event.target;
|
|
179
|
+
if ('checkbox' === target.type) return;
|
|
183
180
|
const rect = target.getBoundingClientRect();
|
|
184
181
|
const elementRect = {
|
|
185
182
|
left: Number(rect.left.toFixed(2)),
|
|
@@ -189,7 +186,7 @@
|
|
|
189
186
|
};
|
|
190
187
|
const inputEvent = {
|
|
191
188
|
type: 'input',
|
|
192
|
-
value: target.value,
|
|
189
|
+
value: 'password' !== target.type ? target.value : '*****',
|
|
193
190
|
timestamp: Date.now(),
|
|
194
191
|
hashId: generateHashId('input', {
|
|
195
192
|
...elementRect
|
package/dist/recorder.d.ts
CHANGED
|
@@ -4,10 +4,10 @@ export interface ChromeRecordedEvent {
|
|
|
4
4
|
title?: string;
|
|
5
5
|
value?: string;
|
|
6
6
|
elementRect?: {
|
|
7
|
-
left
|
|
8
|
-
top
|
|
9
|
-
width
|
|
10
|
-
height
|
|
7
|
+
left?: number;
|
|
8
|
+
top?: number;
|
|
9
|
+
width?: number;
|
|
10
|
+
height?: number;
|
|
11
11
|
x?: number;
|
|
12
12
|
y?: number;
|
|
13
13
|
};
|
package/dist/recorder.js
CHANGED
|
@@ -74,7 +74,7 @@ class EventRecorder {
|
|
|
74
74
|
this.eventCallback(navigationEvent);
|
|
75
75
|
debugLog('Added final navigation event', navigationEvent);
|
|
76
76
|
}, 0);
|
|
77
|
-
document.addEventListener('click', this.handleClick);
|
|
77
|
+
document.addEventListener('click', this.handleClick, true);
|
|
78
78
|
document.addEventListener('input', this.handleInput);
|
|
79
79
|
document.addEventListener('scroll', this.handleScroll, {
|
|
80
80
|
passive: true
|
|
@@ -104,12 +104,8 @@ class EventRecorder {
|
|
|
104
104
|
if (!this.isRecording) return;
|
|
105
105
|
const target = event.target;
|
|
106
106
|
const { isLabelClick, labelInfo } = this.checkLabelClick(target);
|
|
107
|
-
|
|
107
|
+
target.getBoundingClientRect();
|
|
108
108
|
const elementRect = {
|
|
109
|
-
left: Number(rect.left.toFixed(2)),
|
|
110
|
-
top: Number(rect.top.toFixed(2)),
|
|
111
|
-
width: Number(rect.width.toFixed(2)),
|
|
112
|
-
height: Number(rect.height.toFixed(2)),
|
|
113
109
|
x: Number(event.clientX.toFixed(2)),
|
|
114
110
|
y: Number(event.clientY.toFixed(2))
|
|
115
111
|
};
|
|
@@ -178,6 +174,7 @@ class EventRecorder {
|
|
|
178
174
|
handleInput = (event)=>{
|
|
179
175
|
if (!this.isRecording) return;
|
|
180
176
|
const target = event.target;
|
|
177
|
+
if ('checkbox' === target.type) return;
|
|
181
178
|
const rect = target.getBoundingClientRect();
|
|
182
179
|
const elementRect = {
|
|
183
180
|
left: Number(rect.left.toFixed(2)),
|
|
@@ -187,7 +184,7 @@ class EventRecorder {
|
|
|
187
184
|
};
|
|
188
185
|
const inputEvent = {
|
|
189
186
|
type: 'input',
|
|
190
|
-
value: target.value,
|
|
187
|
+
value: 'password' !== target.type ? target.value : '*****',
|
|
191
188
|
timestamp: Date.now(),
|
|
192
189
|
hashId: generateHashId('input', {
|
|
193
190
|
...elementRect
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@midscene/recorder",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.20.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"antd": "^5.21.6",
|
|
25
25
|
"dayjs": "^1.11.11",
|
|
26
26
|
"react-dom": "18.3.1",
|
|
27
|
-
"@midscene/shared": "0.
|
|
27
|
+
"@midscene/shared": "0.20.0"
|
|
28
28
|
},
|
|
29
29
|
"peerDependencies": {
|
|
30
30
|
"react": "18.3.1",
|