From 78959df05d68f40d376cebb4f93f62e05d9fe610 Mon Sep 17 00:00:00 2001 From: Yanzhen Yu Date: Wed, 1 Apr 2026 12:00:00 +0800 Subject: [PATCH] Release 0.7.19 --- package.json | 2 +- typings/index.d.ts | 6 +++--- typings/record/index.d.ts | 1 + typings/types.d.ts | 12 ++++++++++-- typings/utils.d.ts | 2 +- 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 1df0bfcb..da65f0ae 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rrweb", - "version": "0.7.18", + "version": "0.7.19", "description": "record and replay the web", "scripts": { "test": "npm run bundle:browser && cross-env TS_NODE_CACHE=false TS_NODE_FILES=true mocha -r ts-node/register test/**/*.test.ts", diff --git a/typings/index.d.ts b/typings/index.d.ts index 3c0afc67..a378a656 100644 --- a/typings/index.d.ts +++ b/typings/index.d.ts @@ -1,5 +1,5 @@ -import record from './record'; +import record, { addCustomEvent } from './record'; import { Replayer } from './replay'; import { mirror } from './utils'; -export { EventType, IncrementalSource, MouseInteractions, ReplayerEvents } from './types'; -export { record, Replayer, mirror }; +export { EventType, IncrementalSource, MouseInteractions, ReplayerEvents, } from './types'; +export { record, addCustomEvent, Replayer, mirror }; diff --git a/typings/record/index.d.ts b/typings/record/index.d.ts index 3dbb11b5..acf2d9f4 100644 --- a/typings/record/index.d.ts +++ b/typings/record/index.d.ts @@ -1,3 +1,4 @@ import { recordOptions, listenerHandler } from '../types'; +export declare function addCustomEvent(tag: string, payload: T): void; declare function record(options?: recordOptions): listenerHandler | undefined; export default record; diff --git a/typings/types.d.ts b/typings/types.d.ts index e653d694..18600e9f 100644 --- a/typings/types.d.ts +++ b/typings/types.d.ts @@ -4,7 +4,8 @@ export declare enum EventType { Load = 1, FullSnapshot = 2, IncrementalSnapshot = 3, - Meta = 4 + Meta = 4, + Custom = 5 } export declare type domContentLoadedEvent = { type: EventType.DomContentLoaded; @@ -36,6 +37,13 @@ export declare type metaEvent = { height: number; }; }; +export declare type customEvent = { + type: EventType.Custom; + data: { + tag: string; + payload: T; + }; +}; export declare enum IncrementalSource { Mutation = 0, MouseMove = 1, @@ -65,7 +73,7 @@ export declare type inputData = { id: number; } & inputValue; export declare type incrementalData = mutationData | mousemoveData | mouseInteractionData | scrollData | viewportResizeData | inputData; -export declare type event = domContentLoadedEvent | loadedEvent | fullSnapshotEvent | incrementalSnapshotEvent | metaEvent; +export declare type event = domContentLoadedEvent | loadedEvent | fullSnapshotEvent | incrementalSnapshotEvent | metaEvent | customEvent; export declare type eventWithTime = event & { timestamp: number; delay?: number; diff --git a/typings/utils.d.ts b/typings/utils.d.ts index d0367170..1df115e9 100644 --- a/typings/utils.d.ts +++ b/typings/utils.d.ts @@ -3,7 +3,7 @@ import { INode } from 'rrweb-snapshot'; export declare function on(type: string, fn: EventListenerOrEventListenerObject, target?: Document | Window): listenerHandler; export declare const mirror: Mirror; export declare function throttle(func: (arg: T) => void, wait: number, options?: throttleOptions): () => void; -export declare function hookSetter(target: T, key: string | number | symbol, d: PropertyDescriptor): hookResetter; +export declare function hookSetter(target: T, key: string | number | symbol, d: PropertyDescriptor, isRevoked?: boolean): hookResetter; export declare function getWindowHeight(): number; export declare function getWindowWidth(): number; export declare function isBlocked(node: Node | null, blockClass: blockClass): boolean;