Impl record iframe (#481)
* Impl record iframe * iframe observe * temp: add bundle file to git * update bundle * update with pick * update bundle * fix fragment map remove * feat: add an option to determine whether to pause CSS animation when playback is paused (#428) set pauseAnimation to true by default * fix: elements would lose some states like scroll position because of "virtual parent" optimization (#427) * fix: elements would lose some state like scroll position because of "virtual parent" optimization * refactor: the bugfix code bug: elements would lose some state like scroll position because of "virtual parent" optimization * fix: an error occured at applyMutation(remove nodes part) error message: Uncaught (in promise) DOMException: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node * pick fixes * revert ignore file * re-impl iframe record * re-impl iframe replay * code housekeeping * move multi layer dimension calculation to replay side * update test cases * teardown test server * upgrade rrweb-snapshot with iframe load timeout Co-authored-by: Lucky Feng <yun.feng@smartx.com>
This commit is contained in:
14
src/types.ts
14
src/types.ts
@@ -7,6 +7,7 @@ import {
|
||||
} from 'rrweb-snapshot';
|
||||
import { PackFn, UnpackFn } from './packer/base';
|
||||
import { FontFaceDescriptors } from 'css-font-loading-module';
|
||||
import { IframeManager } from './record/iframe-manager';
|
||||
|
||||
export enum EventType {
|
||||
DomContentLoaded,
|
||||
@@ -101,7 +102,7 @@ export type scrollData = {
|
||||
|
||||
export type viewportResizeData = {
|
||||
source: IncrementalSource.ViewportResize;
|
||||
} & viewportResizeDimention;
|
||||
} & viewportResizeDimension;
|
||||
|
||||
export type inputData = {
|
||||
source: IncrementalSource.Input;
|
||||
@@ -224,6 +225,8 @@ export type observerParam = {
|
||||
recordCanvas: boolean;
|
||||
collectFonts: boolean;
|
||||
slimDOMOptions: SlimDOMOptions;
|
||||
doc: Document;
|
||||
iframeManager: IframeManager;
|
||||
};
|
||||
|
||||
export type hooksParam = {
|
||||
@@ -430,12 +433,12 @@ export type fontCallback = (p: fontParam) => void;
|
||||
|
||||
export type logCallback = (p: LogParam) => void;
|
||||
|
||||
export type viewportResizeDimention = {
|
||||
export type viewportResizeDimension = {
|
||||
width: number;
|
||||
height: number;
|
||||
};
|
||||
|
||||
export type viewportResizeCallback = (d: viewportResizeDimention) => void;
|
||||
export type viewportResizeCallback = (d: viewportResizeDimension) => void;
|
||||
|
||||
export type inputValue = {
|
||||
text: string;
|
||||
@@ -456,6 +459,11 @@ export type mediaInteractionParam = {
|
||||
|
||||
export type mediaInteractionCallback = (p: mediaInteractionParam) => void;
|
||||
|
||||
export type DocumentDimension = {
|
||||
x: number;
|
||||
y: number;
|
||||
};
|
||||
|
||||
export type Mirror = {
|
||||
map: idNodeMap;
|
||||
getId: (n: INode) => number;
|
||||
|
||||
Reference in New Issue
Block a user