1.0.10 • Published 5 years ago
@waynecz/session-recorder v1.0.10
Session Recorder
Imagine that a video camera continuously record the whole page
See also Session-Player(developing) consuming Recorder's data
Record list:
- DOM mutation
- Network(xhr, fetch, beacon)
- Global Error, Unhandled rejection
- Mouse, Scroll
- Console
Output like:
[
{"t": 0, "type": "snapshot", "snapshot": "#document snapshot", "scroll": ... },
{ "t": 1, "type": "node", "add": [{ "html": "<div id>textContent</div>" }], "target": 6 },
{ "t": 2, "type": "form", "target": 16, "k": "value", "v": "2312" },
{ "t": 3, "type": "attr", "target": 14, "attr": { "k": "class", "v": "a" } },
{ "t": 4, "type": "scroll", "x": 0, "y": 10 },
{ "t": 5, "type": "click", "x": 71, "y": 13 },
{ "t": 6, "type": "form", "target": 19, "k": "checked", "v": true },
{ "t": 7, "type": "jserr", "msg": "Type Error: ...", "url": "...", "err": "..." },
{ "t": 8, "type": "xhr", "url": "...", "method": "GET", "id": "21asdcxz" },
{ "t": 9, "type": "xhrend", "status": 503, "id": "21asdcxz" },
{ "t": 10, "type": "move", "x": 38, "y": 510 },
{ "t": 11, "type": "console", "l": "warn", "msg": "..." }
]
Code intergration:
import SessionRecorder from '@wayne/session-recorder'
const myReocrder = new SessionRecorder()
myReocrder.start() // make sure start after DOMContentLoaded
myReocrder.end() // stop record
TODO
- VDOM
- Using WebWorker store trail data
- Input's default value
- Unbubble click
Build Setup
# serve file with hot reload at http://localhost:8000/index.js
npm run dev
# build with tsc, complie into ESModule
npm run build
Document (constructing)
1.0.10
5 years ago
1.0.9
5 years ago
1.0.8
5 years ago
1.0.7
5 years ago
1.0.6
5 years ago
1.0.5
5 years ago
1.0.4
5 years ago
1.0.3
5 years ago
1.0.2
5 years ago
1.0.2-alpha.2
5 years ago
1.0.1-alpha.2
5 years ago
1.0.1-alpha.1
5 years ago
1.0.1
5 years ago
1.0.0
5 years ago
0.0.2-alpha.9
5 years ago
0.0.2-alpha.8
5 years ago
0.0.2-alpha.7
5 years ago
0.0.2-alpha.6
5 years ago
0.0.2-alpha.5
5 years ago
0.0.2-alpha.4
5 years ago
0.0.2-alpha.3
5 years ago
0.0.2-alpha.2
5 years ago
0.0.2-alpha.1
5 years ago
0.0.1-beta.6
5 years ago
0.0.1-beta.5
5 years ago
0.0.1-beta.4
5 years ago
0.0.1-beta.3
5 years ago
0.0.1-beta.2
5 years ago
0.0.1-beta.1
5 years ago