vite-uni-dev-tool
Version:
vite-uni-dev-tool, debug, uni-app, 一处编写,到处调试
127 lines (126 loc) • 4.03 kB
TypeScript
import { Plugin } from 'vite';
export type CaptureList = readonly ('tap' | 'touchstart' | 'touchmove' | 'touchend')[][];
type UploadAbnormalUV = {
/** 上传地址 */
url: string;
/** 请求头 */
header?: {
'dev-tool-sponsor'?: any;
[key: string]: string;
};
/** 超时时间 ms 默认 3 * 1000 */
timerOut?: number;
/** 上报间隔 ms 默认 10 * 1000 */
duration?: number;
/**
* 上传的附加信息
* 自动增加 devUV 字段,工具内部异常数据
*/
payload?: {
/** 内部 uv 数据, 外部传入无效 */
devUV?: Record<string, any>;
[key: string]: any;
};
};
/**
* vite-uni-dev-tool 插件
*
* 自动在 main.ts|js 中注入调试插件,并在每个页面的模板中注入 DevTool 组件。
*
* 如果组件不是用 template 定义的,则不会被该插件添加。
*
*
* @export
* @param {{
* pages: {
* pages: {
* path: string;
* }[];
* };
* }} {
* pages,
* }
* @return {*} {Plugin}
*/
export default function uniDevTool({ pages, sourceFileServers, importConsole, vueVersion, excludeImportConsole, excludeImportDevTool, captureList, injectDevTool, ...reset }: {
/** 是否拦截Promise.reject 最好不要拦截 默认禁用 */
enableInterceptPromiseReject?: boolean;
/** 打开窗口时隐藏按钮 */
openWindowHideButton?: boolean;
/** 最大的console条数 */
consoleMaxSize?: number;
/** 最大的网络请求条数 */
networkMaxSize?: number;
/** 最大的上传文件条数 */
uploadMaxSize?: number;
/** 最大的套接字消息条数 */
wsDataMaxSize?: number;
/** 最大占用缓存空间 bytes */
cacheMaxSize?: number;
/** 最大时间列表条数 */
eventListMaxSize?: number;
/** 最大截屏记录条数 */
captureScreenMaxSize?: number;
/** 按钮大小 */
buttonSize?: number;
/** 按钮文本 */
buttonText?: string;
/** 按钮文本颜色 */
buttonColor?: string;
/** 按钮字体大小 */
buttonFontSize?: string;
/** 按钮背景颜色 */
buttonBackgroundColor?: string;
/** 初始化时是否显示调试按钮,默认显示 */
initShowDevTool?: boolean;
/** 调试弹窗层级默认 998 */
zIndex?: number;
/**
* 该属性处于实验当中,谨慎使用
* 读取开发环境 source file,source map,默认 禁用
*/
useDevSource?: boolean;
/**
* 该属性处于实验当中,谨慎使用
* 开发环境 source file 服务器地址,默认 [] ,配合 useDevSource 使用
*/
sourceFileServers?: string[];
/** 是否导入 console 默认不导入, 只会捕获 error 和 warn , */
importConsole?: boolean;
/**
* 该属性处于实验当中,目前只支持 vue3
* vue版本 默认 3 , 配置为 3 ,将使用 ts + setup + hooks 语法
*
*/
vueVersion?: number;
/** 页面配置 用于读取路由 */
pages: {
pages: {
path: string;
}[];
subPackages?: {
root: string;
pages: {
path: string;
}[];
}[];
};
/** 排除导入 console 的目录 */
excludeImportConsole?: string[];
/** 排除导入 DevTool 的目录 */
excludeImportDevTool?: string[];
/**
* 捕获列表
*/
captureList?: CaptureList;
/** 需要捕获的 data-xxx, 优先级高于 `excludeCaptureElDataSet` 默认空 捕获全部 */
includeCaptureElDataSet?: string[];
/** 排除捕获的 data-xxx, 优先级低于 includeCaptureElDataSet` */
excludeCaptureElDataSet?: string[];
/** 注入 DevTool 默认开启 */
injectDevTool?: boolean;
/** 异常上报 */
uploadAbnormalUV?: UploadAbnormalUV;
}): Plugin;
export {};
//# sourceMappingURL=uniDevTool.d.ts.map