From d32b31f3e3a801e6f1245bc0a7c72e5dcb3400be Mon Sep 17 00:00:00 2001 From: Yanzhen Yu Date: Wed, 5 Jun 2019 17:33:20 +0800 Subject: [PATCH] remove mitt typings namesapce --- index.d.ts | 6 ------ package.json | 3 +-- src/replay/index.ts | 8 +++++--- src/types.ts | 7 +++++++ tsconfig.json | 2 +- typings/index.d.ts | 1 + typings/record/collection.d.ts | 2 +- typings/replay/index.d.ts | 4 ++-- typings/types.d.ts | 5 +++++ 9 files changed, 23 insertions(+), 15 deletions(-) delete mode 100644 index.d.ts diff --git a/index.d.ts b/index.d.ts deleted file mode 100644 index 2a628ade..00000000 --- a/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -// TODO: remove this when mitt updated -declare namespace mitt { - interface MittStatic { - (all?: { [key: string]: Array }): Emitter; - } -} diff --git a/package.json b/package.json index 0b0946a6..ba5fa127 100644 --- a/package.json +++ b/package.json @@ -24,8 +24,7 @@ "dist", "lib", "es", - "typings", - "index.d.ts" + "typings" ], "author": "yanzhen@smartx.com", "license": "MIT", diff --git a/src/replay/index.ts b/src/replay/index.ts index 9539b46d..101ee519 100644 --- a/src/replay/index.ts +++ b/src/replay/index.ts @@ -18,6 +18,8 @@ import { incrementalSnapshotEvent, incrementalData, ReplayerEvents, + Handler, + Emitter, } from '../types'; import { mirror } from '../utils'; import getInjectStyleRules from './styles/inject-style'; @@ -43,7 +45,7 @@ export class Replayer { private mouse: HTMLDivElement; - private emitter: mitt.Emitter = mitt(); + private emitter: Emitter = mitt(); private baselineTime: number = 0; // record last played event timestamp when paused @@ -76,10 +78,10 @@ export class Replayer { this.timer = new Timer(this.config); smoothscroll.polyfill(); this.setupDom(); - this.emitter.on('resize', this.handleResize as mitt.Handler); + this.emitter.on('resize', this.handleResize as Handler); } - public on(event: string, handler: mitt.Handler) { + public on(event: string, handler: Handler) { this.emitter.on(event, handler); } diff --git a/src/types.ts b/src/types.ts index 41a9e3a2..105868c8 100644 --- a/src/types.ts +++ b/src/types.ts @@ -261,6 +261,13 @@ export type actionWithDelay = { delay: number; }; +export type Handler = (event?: unknown) => void; + +export type Emitter = { + on(type: string, handler: Handler): void; + emit(type: string, event?: unknown): void; +}; + export enum ReplayerEvents { Start = 'start', Pause = 'pause', diff --git a/tsconfig.json b/tsconfig.json index 0fd4e84f..d58ee546 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,5 +12,5 @@ }, "compileOnSave": true, "exclude": ["test"], - "include": ["src", "index.d.ts", "test.d.ts"] + "include": ["src", "test.d.ts"] } diff --git a/typings/index.d.ts b/typings/index.d.ts index 79016389..3c0afc67 100644 --- a/typings/index.d.ts +++ b/typings/index.d.ts @@ -1,4 +1,5 @@ import record from './record'; import { Replayer } from './replay'; import { mirror } from './utils'; +export { EventType, IncrementalSource, MouseInteractions, ReplayerEvents } from './types'; export { record, Replayer, mirror }; diff --git a/typings/record/collection.d.ts b/typings/record/collection.d.ts index c6eb7fed..1f6c5b9a 100644 --- a/typings/record/collection.d.ts +++ b/typings/record/collection.d.ts @@ -1,4 +1,4 @@ import { removedNodeMutation } from '../types'; export declare function deepDelete(addsSet: Set, n: Node): void; export declare function isParentRemoved(removes: removedNodeMutation[], n: Node): boolean; -export declare function isParentDropped(droppedSet: Set, n: Node): boolean; +export declare function isAncestorInSet(set: Set, n: Node): boolean; diff --git a/typings/replay/index.d.ts b/typings/replay/index.d.ts index 92b08acd..f509f584 100644 --- a/typings/replay/index.d.ts +++ b/typings/replay/index.d.ts @@ -1,5 +1,5 @@ import Timer from './timer'; -import { eventWithTime, playerConfig, playerMetaData } from '../types'; +import { eventWithTime, playerConfig, playerMetaData, Handler } from '../types'; import './styles/style.css'; export declare class Replayer { wrapper: HTMLDivElement; @@ -15,7 +15,7 @@ export declare class Replayer { private noramlSpeed; private missingNodeRetryMap; constructor(events: eventWithTime[], config?: Partial); - on(event: string, handler: mitt.Handler): void; + on(event: string, handler: Handler): void; setConfig(config: Partial): void; getMetaData(): playerMetaData; getTimeOffset(): number; diff --git a/typings/types.d.ts b/typings/types.d.ts index 57c53c19..0c0dba34 100644 --- a/typings/types.d.ts +++ b/typings/types.d.ts @@ -208,6 +208,11 @@ export declare type actionWithDelay = { doAction: () => void; delay: number; }; +export declare type Handler = (event?: unknown) => void; +export declare type Emitter = { + on(type: string, handler: Handler): void; + emit(type: string, event?: unknown): void; +}; export declare enum ReplayerEvents { Start = "start", Pause = "pause",