refactor🎨: (阅读代码):webviewMessages.ts增加注释

master
yetao 2 weeks ago
parent 820c5196b3
commit 8c3f169824

@ -1,71 +1,203 @@
// 导入 ConfigLocation 和 FileSystemConfig 类型
import type { ConfigLocation, FileSystemConfig } from './fileSystemConfig';
/* Type of messages*/
/**
*
* @interface RequestDataMessage
* @property {string} type - 'requestData'
* @property {boolean} [reload] - false
*/
export interface RequestDataMessage {
// 消息类型,固定值为 'requestData'
type: 'requestData';
// 是否重新加载数据,可选参数,默认值为 false
reload?: boolean;
}
/**
*
* @interface ResponseDataMessage
* @property {string} type - 'responseData'
* @property {FileSystemConfig[]} configs -
* @property {ConfigLocation[]} locations -
*/
export interface ResponseDataMessage {
// 消息类型,固定值为 'responseData'
type: 'responseData';
// 文件系统配置数组
configs: FileSystemConfig[];
// 配置位置数组
locations: ConfigLocation[];
}
/**
*
* @interface SaveConfigMessage
* @property {string} type - 'saveConfig'
* @property {FileSystemConfig} config -
* @property {string} [name] -
* @property {string} [uniqueId] -
* @property {boolean} [remove] - false
*/
export interface SaveConfigMessage {
// 消息类型,固定值为 'saveConfig'
type: 'saveConfig';
// 要保存的文件系统配置
config: FileSystemConfig;
// 配置的名称,可选参数
name?: string;
// 配置的唯一标识符,可选参数
uniqueId?: string;
// 是否删除配置,可选参数,默认值为 false
remove?: boolean;
}
/**
*
* @interface SaveConfigResultMessage
* @property {string} type - 'saveConfigResult'
* @property {string} [error] -
* @property {FileSystemConfig} config -
* @property {string} [uniqueId] -
*/
export interface SaveConfigResultMessage {
// 消息类型,固定值为 'saveConfigResult'
type: 'saveConfigResult';
// 保存配置时发生的错误信息,可选参数
error?: string;
// 保存的文件系统配置
config: FileSystemConfig;
// 配置的唯一标识符,可选参数
uniqueId?: string;
}
/**
*
* @interface PromptPathMessage
* @property {string} type - 'promptPath'
* @property {string} [uniqueId] -
*/
export interface PromptPathMessage {
// 消息类型,固定值为 'promptPath'
type: 'promptPath';
// 提示路径的唯一标识符,可选参数
uniqueId?: string;
}
/**
*
* @interface PromptPathResultMessage
* @property {string} type - 'promptPathResult'
* @property {string} [error] -
* @property {string} [path] -
* @property {string} [uniqueId] -
*/
export interface PromptPathResultMessage {
// 消息类型,固定值为 'promptPathResult'
type: 'promptPathResult';
// 提示路径时发生的错误信息,可选参数
error?: string;
// 用户选择的路径,可选参数
path?: string;
// 提示路径的唯一标识符,可选参数
uniqueId?: string;
}
/**
*
* @interface NavigateMessage
* @property {string} type - 'navigate'
* @property {Navigation} navigation -
*/
export interface NavigateMessage {
// 消息类型,固定值为 'navigate'
type: 'navigate';
// 导航对象,包含导航的类型和相关配置
navigation: Navigation;
}
/**
*
* @interface NavigatedMessage
* @property {string} type - 'navigated'
* @property {string} view - 'startscreen', 'newconfig', 'configeditor', 'configlocator'
*/
export interface NavigatedMessage {
// 消息类型,固定值为 'navigated'
type: 'navigated';
// 导航的视图类型,如 'startscreen', 'newconfig', 'configeditor', 'configlocator'
view: string;
}
/**
*
* @type MessageTypes
* @property {RequestDataMessage} requestData -
* @property {ResponseDataMessage} responseData -
* @property {SaveConfigMessage} saveConfig -
* @property {SaveConfigResultMessage} saveConfigResult -
* @property {PromptPathMessage} promptPath -
* @property {PromptPathResultMessage} promptPathResult -
* @property {NavigateMessage} navigate -
* @property {NavigatedMessage} navigated -
*/
export interface MessageTypes {
// 请求数据消息类型
requestData: RequestDataMessage;
// 响应数据消息类型
responseData: ResponseDataMessage;
// 保存配置消息类型
saveConfig: SaveConfigMessage;
// 保存配置结果消息类型
saveConfigResult: SaveConfigResultMessage;
// 提示路径消息类型
promptPath: PromptPathMessage;
// 提示路径结果消息类型
promptPathResult: PromptPathResultMessage;
// 导航消息类型
navigate: NavigateMessage;
// 导航完成消息类型
navigated: NavigatedMessage;
}
/**
*
* @type Message
* @property {MessageTypes[keyof MessageTypes]} value - MessageTypes
*/
export type Message = MessageTypes[keyof MessageTypes];
/* Types related to NavigateMessage */
/**
*
* @interface NewConfigNavigation
* @property {string} type - 'newconfig'
*/
export interface NewConfigNavigation {
// 导航类型,固定值为 'newconfig'
type: 'newconfig';
}
/**
*
* @interface EditConfigNavigation
* @property {string} type - 'editconfig'
* @property {FileSystemConfig | FileSystemConfig[]} config -
*/
export interface EditConfigNavigation {
// 导航类型,固定值为 'editconfig'
type: 'editconfig';
// 要编辑的文件系统配置,可以是单个配置或配置数组
config: FileSystemConfig | FileSystemConfig[];
}
/**
*
* @type Navigation
* @property {NewConfigNavigation} newconfig -
* @property {EditConfigNavigation} editconfig -
*/
export type Navigation = NewConfigNavigation | EditConfigNavigation;

Loading…
Cancel
Save