From 5169567c0f31a5e6e6091ddbefb851555474574d Mon Sep 17 00:00:00 2001 From: "jlj05024111@163.com" Date: Mon, 28 Apr 2025 09:59:47 +0800 Subject: [PATCH 1/3] =?UTF-8?q?feat:=20=E6=9B=B4=E6=96=B0=E9=9D=A2?= =?UTF-8?q?=E6=9D=BF=E9=A1=B9=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 4 ++ src/control/app-menu/app-menu.tsx | 4 +- src/editor/array/ibiz-array/ibiz-array.tsx | 2 +- .../auth-captcha/auth-captcha.controller.ts | 7 +-- .../auth-captcha/auth-captcha.state.ts | 24 ++++---- .../auth-captcha/auth-captcha.tsx | 11 ++++ src/panel-component/auth-sso/auth-sso.tsx | 11 ++++ .../auth-userinfo/auth-userinfo.tsx | 11 ++++ .../coop-pos/coop-pos.controller.ts | 13 ++++- .../coop-pos/coop-pos.state.ts | 14 +++-- src/panel-component/coop-pos/coop-pos.tsx | 18 ++++-- .../data-import/data-import-shell.tsx | 11 ++++ .../global-search/global-search.controller.ts | 30 +++++----- .../global-search/global-search.state.ts | 20 +++---- .../global-search/global-search.tsx | 13 +++++ .../index-actions/index-actions.tsx | 12 ++++ .../index-blank-placeholder.controller.ts | 16 +++--- .../index-blank-placeholder.tsx | 11 ++++ .../nav-breadcrumb.controller.ts | 20 +++++-- .../nav-breadcrumb/nav-breadcrumb.state.ts | 1 + .../nav-breadcrumb/nav-breadcrumb.tsx | 11 ++++ .../nav-tabs/nav-tabs.controller.ts | 57 ++++++++----------- .../nav-tabs/nav-tabs.state.ts | 9 ++- src/panel-component/nav-tabs/nav-tabs.tsx | 11 ++++ .../panel-app-header/panel-app-header.tsx | 11 ++++ .../panel-app-login-view.tsx | 12 +++- .../panel-app-title.controller.ts | 11 ++-- .../panel-app-title/panel-app-title.state.ts | 28 ++++----- .../panel-app-title/panel-app-title.tsx | 11 ++++ .../panel-button-list.controller.ts | 9 ++- .../panel-button-list.state.ts | 4 +- .../panel-button-list/panel-button-list.tsx | 13 +++++ .../panel-exp-header/panel-exp-header.tsx | 11 ++++ .../panel-index-view-search.tsx | 11 ++++ .../panel-remember-me/panel-remember-me.tsx | 11 ++++ .../panel-static-carousel.tsx | 11 ++++ .../panel-tab-panel.controller.ts | 7 +-- .../panel-tab-panel/panel-tab-panel.state.ts | 7 +-- .../panel-tab-panel/panel-tab-panel.tsx | 11 ++++ .../panel-view-content/panel-view-content.tsx | 13 +++++ .../panel-view-header/panel-view-header.tsx | 11 ++++ .../searchform-buttons.controller.ts | 23 ++++---- .../searchform-buttons/searchform-buttons.tsx | 11 ++++ src/panel-component/short-cut/short-cut.tsx | 11 ++++ .../split-container.controller.ts | 24 ++++---- .../split-container/split-container.state.ts | 12 ++-- .../split-container/split-container.tsx | 11 ++++ .../user-action/user-action.tsx | 13 +++++ .../user-message/user-message.tsx | 11 ++++ .../view-message/view-message.tsx | 13 +++++ .../view-msg-pos/view-msg-pos.tsx | 11 ++++ 51 files changed, 504 insertions(+), 169 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ab8abf526..5a6430a83 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ ## [Unreleased] +### Changed + +- 更新面板项注释 + ### Fixed - 修复菜单项svg图标样式异常 diff --git a/src/control/app-menu/app-menu.tsx b/src/control/app-menu/app-menu.tsx index 360537d5a..c9ebe6fbe 100644 --- a/src/control/app-menu/app-menu.tsx +++ b/src/control/app-menu/app-menu.tsx @@ -358,11 +358,11 @@ export const AppMenuControl = defineComponent({ /** * @description 是否折叠 */ - collapse: Boolean, + collapse: { type: Boolean }, /** * @description 当前路径(已弃用) */ - currentPath: String, + currentPath: { type: String }, }, setup(props) { const c = useControlController((...args) => new AppMenuController(...args)); diff --git a/src/editor/array/ibiz-array/ibiz-array.tsx b/src/editor/array/ibiz-array/ibiz-array.tsx index 03e59f413..e88e82084 100644 --- a/src/editor/array/ibiz-array/ibiz-array.tsx +++ b/src/editor/array/ibiz-array/ibiz-array.tsx @@ -17,7 +17,7 @@ import { ArrayEditorController } from '../array-editor.controller'; * @editorparams {name:editorStyle,parameterType:'default' | 'url' | 'img',defaultvalue:'default',description:当设置为 'url' 时,输入框会显示内容的前缀和后缀;设置为 'img' 时,鼠标移入输入框的提示信息将以图片形式展示} * @editorparams {name:size,parameterType:'large' | 'default' | 'small',defaultvalue:'default',description:设置输入框的尺寸大小} * @editorparams {name:limit,parameterType:number,defaultvalue:0,description:默认不限制输入项数量,若设置了非零的限制数,当输入项数量超出该限制时,自增按钮将隐藏} - * @editorparams {name:maxLength,parameterType:number,description:设置单个输入框可输入内容的最大长度} + * @editorparams {name:maxLength,defaultvalue:-,parameterType:number,description:设置单个输入框可输入内容的最大长度} * @editorparams {name:showWordLimit,parameterType:boolean,defaultvalue:false,description:是否显示统计字数,仅在 editorStyle 参数设置为 'url' 并且数据类型为 'text' 时生效} * @editorparams {name:prepend,parameterType:string,description:该配置内容会显示在每个输入框的头部,仅在 editorStyle 参数设置为 'url' 时生效} * @editorparams {name:append,parameterType:string,description:该配置内容会显示在每个输入框的尾部,仅在 editorStyle 参数设置为 'url' 时生效} diff --git a/src/panel-component/auth-captcha/auth-captcha.controller.ts b/src/panel-component/auth-captcha/auth-captcha.controller.ts index a60db9b96..048947c02 100644 --- a/src/panel-component/auth-captcha/auth-captcha.controller.ts +++ b/src/panel-component/auth-captcha/auth-captcha.controller.ts @@ -10,8 +10,7 @@ import axios, { AxiosRequestConfig } from 'axios'; import { AuthCaptchaState } from './auth-captcha.state'; /** - * 人机识别控制器 - * + * @description 主要是用于生成验证码并展示。 * @export * @class AuthCaptchaController * @extends {PanelItemController} @@ -113,8 +112,8 @@ export class AuthCaptchaController extends PanelItemController { } /** - * 加载验证码 - * + * @description 加载验证码 + * @exposedoc * @return {*} {Promise}ss * @memberof AuthCaptchaController */ diff --git a/src/panel-component/auth-captcha/auth-captcha.state.ts b/src/panel-component/auth-captcha/auth-captcha.state.ts index 9139babc9..1dabc8e8c 100644 --- a/src/panel-component/auth-captcha/auth-captcha.state.ts +++ b/src/panel-component/auth-captcha/auth-captcha.state.ts @@ -2,48 +2,50 @@ import { PanelItemState } from '@ibiz-template/runtime'; /** * 人机识别状态 - * + * @description 人机识别状态 * @export + * @primary * @class AuthCaptchaState * @extends {PanelItemState} */ export class AuthCaptchaState extends PanelItemState { /** - * 验证码 - * + * @description 验证码 + * @exposedoc + * @description '' * @type {string} * @memberof AuthCaptchaState */ code: string = ''; /** - * 验证图片 - * + * @description 验证图片 + * @exposedoc * @type {string} * @memberof AuthCaptchaState */ image: string = ''; /** - * 验证UUID码 - * + * @description 验证UUID码 + * @exposedoc * @type {string} * @memberof AuthCaptchaState */ state: string = ''; /** - * 加载状态 - * + * @description 加载状态 + * @exposedoc * @type {boolean} * @memberof AuthCaptchaState */ loading: boolean = false; /** - * 错误信息 - * + * @description 错误信息 * @type {string} + * @exposedoc * @memberof AuthCaptchaState */ error?: string; diff --git a/src/panel-component/auth-captcha/auth-captcha.tsx b/src/panel-component/auth-captcha/auth-captcha.tsx index 035ecaf21..6f391b350 100644 --- a/src/panel-component/auth-captcha/auth-captcha.tsx +++ b/src/panel-component/auth-captcha/auth-captcha.tsx @@ -5,13 +5,24 @@ import { showTitle } from '@ibiz-template/core'; import { AuthCaptchaController } from './auth-captcha.controller'; import './auth-captcha.scss'; +/** + * 人机识别控件 + * @description 主要是用来生成验证码并展示的。 + * @primary + */ export const AuthCaptcha = defineComponent({ name: 'IBizAuthCaptcha', props: { + /** + * @description 人机识别控件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 控件控制器 + */ controller: { type: AuthCaptchaController, required: true, diff --git a/src/panel-component/auth-sso/auth-sso.tsx b/src/panel-component/auth-sso/auth-sso.tsx index 8d59b8340..806bb51f0 100644 --- a/src/panel-component/auth-sso/auth-sso.tsx +++ b/src/panel-component/auth-sso/auth-sso.tsx @@ -4,13 +4,24 @@ import { IPanelRawItem } from '@ibiz/model-core'; import { useNamespace } from '@ibiz-template/vue3-util'; import './auth-sso.scss'; +/** + * 第三方登录 + * @description 提供了钉钉和企业微信的第三方登录能力。 + * @primary + */ export const AuthSso = defineComponent({ name: 'IBizAuthSsO', props: { + /** + * @description 第三方登录控件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 第三方登录控件控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/auth-userinfo/auth-userinfo.tsx b/src/panel-component/auth-userinfo/auth-userinfo.tsx index 735b0ea23..49dd4a801 100644 --- a/src/panel-component/auth-userinfo/auth-userinfo.tsx +++ b/src/panel-component/auth-userinfo/auth-userinfo.tsx @@ -5,13 +5,24 @@ import './auth-userinfo.scss'; import { IPanelRawItem } from '@ibiz/model-core'; import { PanelItemController, CTX } from '@ibiz-template/runtime'; +/** + * 用户信息 + * @description 提供用户的基本信息显示以及登出功能。 + * @primary + */ export const AuthUserinfo = defineComponent({ name: 'IBizAuthUserinfo', props: { + /** + * @description 用户信息控件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 用户信息控件控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/coop-pos/coop-pos.controller.ts b/src/panel-component/coop-pos/coop-pos.controller.ts index 0c09750f0..ffc5615fe 100644 --- a/src/panel-component/coop-pos/coop-pos.controller.ts +++ b/src/panel-component/coop-pos/coop-pos.controller.ts @@ -7,12 +7,18 @@ import { IPanelRawItem } from '@ibiz/model-core'; import { createUUID, notNilEmpty } from 'qx-util'; import { CoopPosState } from './coop-pos.state'; +/** + * @description 云系统操作者控制器 + * + * @export + * @class CoopPosController + * @extends {PanelItemController} + */ export class CoopPosController extends PanelItemController { declare state: CoopPosState; /** - *云系统操作者 - * + * @description 云系统操作者 * @memberof CoopPosController */ public operator: readonly CodeListItem[] = []; @@ -20,6 +26,7 @@ export class CoopPosController extends PanelItemController { /** * @description 自定义补充参数 * @type {IData} + * @exposedoc * @memberof CoopPosController */ rawItemParams: IData = {}; @@ -27,6 +34,7 @@ export class CoopPosController extends PanelItemController { /** * @description 显示模式 * @type {('avatar' | 'default')} + * @exposedoc * @memberof CoopPosController */ public showMode: 'avatar' | 'default' = 'default'; @@ -112,6 +120,7 @@ export class CoopPosController extends PanelItemController { /** * @description 获取云系统操作者代码表 * @return {*} {Promise} + * @exposedoc * @memberof CoopPosController */ async getOperator(): Promise { diff --git a/src/panel-component/coop-pos/coop-pos.state.ts b/src/panel-component/coop-pos/coop-pos.state.ts index f6f48f063..2aefc506f 100644 --- a/src/panel-component/coop-pos/coop-pos.state.ts +++ b/src/panel-component/coop-pos/coop-pos.state.ts @@ -1,13 +1,19 @@ import { IAlertParams, PanelItemState } from '@ibiz-template/runtime'; import { createUUID } from 'qx-util'; +/** + * @description 协同位置状态 + * @primary + * @export + * @class CoopPosState + * @extends {PanelItemState} + */ export class CoopPosState extends PanelItemState { /** - * alert标识 - * - * @author zhanghengfeng - * @date 2024-04-03 17:04:04 + * @description alert标识 + * @exposedoc * @type {string} + * @memberof CoopPosState */ key: string = createUUID(); diff --git a/src/panel-component/coop-pos/coop-pos.tsx b/src/panel-component/coop-pos/coop-pos.tsx index e25929154..393e047b3 100644 --- a/src/panel-component/coop-pos/coop-pos.tsx +++ b/src/panel-component/coop-pos/coop-pos.tsx @@ -5,22 +5,30 @@ import { CoopPosController } from './coop-pos.controller'; import './coop-pos.scss'; /** - * 协同消息占位 - * - 该组件有两种呈现模式,默认是Alert呈现,当视图配置【标记数据打开模式】勾选【显示操作人员】时以用户头像呈现 - * - 该组件会根据【标记数据打开模式】的配置计算需要呈现的用户消息,默认显示当前用户 - * 1. 只勾选了【显示操作人员】时,所有的操作类型的用户都会呈现 - * 2. 勾选其他的【标记数据打开模式】时,会根据勾选项过滤操作用户 + * 消息协同占位 + * @primary + * @description 该组件有两种呈现模式,默认是Alert呈现,当视图配置【标记数据打开模式】勾选【显示操作人员】时以用户头像呈现 + * 1. 该组件会根据【标记数据打开模式】的配置计算需要呈现的用户消息,默认显示当前用户 + * 2. 只勾选了【显示操作人员】时,所有的操作类型的用户都会呈现 + * 3. 勾选其他的【标记数据打开模式】时,会根据勾选项过滤操作用户 * 勾选【登记打开数据】 -> 显示浏览用户 * 勾选【登记更新数据】 -> 显示编辑用户 * 勾选【提示刷新数据】 -> 显示更新用户 + * */ export const CoopPos = defineComponent({ name: 'IBizCoopPos', props: { + /** + * @description 协同占位控件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 协同占位控件控制器 + */ controller: { type: CoopPosController, required: true, diff --git a/src/panel-component/data-import/data-import-shell.tsx b/src/panel-component/data-import/data-import-shell.tsx index f9fce25bd..9281210d8 100644 --- a/src/panel-component/data-import/data-import-shell.tsx +++ b/src/panel-component/data-import/data-import-shell.tsx @@ -7,13 +7,24 @@ import { } from '@ibiz-template/runtime'; import './data-import-shell.scss'; +/** + * 数据导入壳 + * @primary + * @description 用于数据导入 + */ export const DataImportShell = defineComponent({ name: 'IBizDataImportShell', props: { + /** + * @description 数据导入模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 数据导入控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/global-search/global-search.controller.ts b/src/panel-component/global-search/global-search.controller.ts index a35e86ff8..cde7e952b 100644 --- a/src/panel-component/global-search/global-search.controller.ts +++ b/src/panel-component/global-search/global-search.controller.ts @@ -23,24 +23,24 @@ export class GlobalSearchController extends PanelItemController { declare state: GlobalSearchState; /** - * 主键属性名称 - * + * @description 主键属性名称 + * @exposedoc * @type {string} * @memberof GlobalSearchController */ public keyName: string = 'srfkey'; /** - * 主文本属性名称 - * + * @description 主文本属性名称 + * @exposedoc * @type {string} * @memberof GlobalSearchController */ public textName: string = 'srfmajortext'; /** - * 自定义参数 - * + * @description 自定义参数 + * @exposedoc * @protected * @type {IData} * @memberof GlobalSearchController @@ -48,8 +48,7 @@ export class GlobalSearchController extends PanelItemController { protected rawItemParams: IData = {}; /** - * 搜索历史缓存标识 - * + * @description 搜索历史缓存标识 * @protected * @type {string} * @memberof GlobalSearchController @@ -57,8 +56,7 @@ export class GlobalSearchController extends PanelItemController { protected historyCacheKey: string = 'global-search-history'; /** - * 最大历史记录 - * - 默认7条 + * @description 最大历史记录,默认7条 * @protected * @type {number} * @memberof GlobalSearchController @@ -66,8 +64,8 @@ export class GlobalSearchController extends PanelItemController { protected maxHistory: number = 7; /** - * 单次查询最大数量 - * - 默认100条 + * @description 单次查询最大数量,默认100条 + * @exposedoc * @type {number} * @memberof GlobalSearchController */ @@ -289,8 +287,8 @@ export class GlobalSearchController extends PanelItemController { } /** - * 清除历史 - * + * @description 清除历史 + * @exposedoc * @memberof GlobalSearchController */ clearHistory(): void { @@ -302,8 +300,8 @@ export class GlobalSearchController extends PanelItemController { } /** - * 搜索 - * + * @description 搜索 + * @exposedoc * @return {*} {Promise} * @memberof GlobalSearchController */ diff --git a/src/panel-component/global-search/global-search.state.ts b/src/panel-component/global-search/global-search.state.ts index c7ae677b9..3c50ac748 100644 --- a/src/panel-component/global-search/global-search.state.ts +++ b/src/panel-component/global-search/global-search.state.ts @@ -40,40 +40,40 @@ export interface ISearchItem { */ export class GlobalSearchState extends PanelItemState { /** - * 当前快速搜索值 - * + * @description 当前快速搜索值 + * @exposedoc * @type {string} * @memberof GlobalSearchState */ query: string = ''; /** - * 自填模式全局搜索项 - * + * @description 自填模式全局搜索项 * * @type {ISearchItem[]} + * @exposedoc * @memberof GlobalSearchState */ items: ISearchItem[] = []; /** - * 搜索历史记录 - * + * @description 搜索历史记录 * @type {string[]} + * @exposedoc * @memberof GlobalSearchState */ histories: string[] = []; /** - * 搜索列表 - * + * @description 搜索列表 + * @exposedoc * @type {IData[]} * @memberof GlobalSearchState */ list: IData[] = []; /** - * 是否在加载中 - * + * @description 是否在加载中 + * @exposedoc * @type {boolean} * @memberof GlobalSearchState */ diff --git a/src/panel-component/global-search/global-search.tsx b/src/panel-component/global-search/global-search.tsx index caca9d772..ec3390a9c 100644 --- a/src/panel-component/global-search/global-search.tsx +++ b/src/panel-component/global-search/global-search.tsx @@ -17,13 +17,26 @@ import { ISearchItem } from './global-search.state'; import { VirtualList } from './virtual-list/virtual-list'; import './global-search.scss'; +/** + * 全局搜索组件 + * @primary + * @description 全局搜索组件,监听页面快捷键Ctrl+K弹出搜索框。 + * @export + * @class GlobalSearch + */ export const GlobalSearch = defineComponent({ name: 'IBizGlobalSearch', props: { + /** + * @description 模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 全局搜索控件控制器 + */ controller: { type: Object as PropType, required: true, diff --git a/src/panel-component/index-actions/index-actions.tsx b/src/panel-component/index-actions/index-actions.tsx index e1707eef7..8705c9893 100644 --- a/src/panel-component/index-actions/index-actions.tsx +++ b/src/panel-component/index-actions/index-actions.tsx @@ -6,13 +6,25 @@ import { IPanelContainer } from '@ibiz/model-core'; import { computed, defineComponent, PropType, VNode } from 'vue'; import './index-actions.scss'; +/** + * 容器组件 + * @description 容器组件 + * @param {IPanelContainer} props + * @returns + */ export const IndexActions = defineComponent({ name: 'IBizIndexActions', props: { + /** + * @description 容器模型 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 容器控制器 + */ controller: { type: PanelContainerController, required: true, diff --git a/src/panel-component/index-blank-placeholder/index-blank-placeholder.controller.ts b/src/panel-component/index-blank-placeholder/index-blank-placeholder.controller.ts index 4f879125c..d378c3360 100644 --- a/src/panel-component/index-blank-placeholder/index-blank-placeholder.controller.ts +++ b/src/panel-component/index-blank-placeholder/index-blank-placeholder.controller.ts @@ -18,8 +18,8 @@ export class IndexBlankPlaceholderController extends PanelItemController, required: true, }, + /** + * @description 空白占位控件控制器 + */ controller: { type: Object as PropType, required: true, diff --git a/src/panel-component/nav-breadcrumb/nav-breadcrumb.controller.ts b/src/panel-component/nav-breadcrumb/nav-breadcrumb.controller.ts index 684cd5526..247335197 100644 --- a/src/panel-component/nav-breadcrumb/nav-breadcrumb.controller.ts +++ b/src/panel-component/nav-breadcrumb/nav-breadcrumb.controller.ts @@ -39,6 +39,7 @@ export class NavBreadcrumbController extends PanelItemController /** * @description 面包屑分割符 + * @exposedoc * @type {string} * @memberof NavBreadcrumbController */ @@ -46,6 +47,7 @@ export class NavBreadcrumbController extends PanelItemController /** * @description 导航模式(路由、菜单、缓存) + * @exposedoc * @type {('router' | 'menu' | 'store')} * @memberof NavBreadcrumbController */ @@ -53,6 +55,7 @@ export class NavBreadcrumbController extends PanelItemController /** * @description 是否显示应用标题 + * @exposedoc * @type {boolean} * @memberof NavBreadcrumbController */ @@ -61,12 +64,14 @@ export class NavBreadcrumbController extends PanelItemController /** * @description 面包屑服务 * @type {NavBreadcrumbService} + * @exposedoc * @memberof NavBreadcrumbController */ service!: NavBreadcrumbService; /** * @description 自定义补充参数 + * @exposedoc * @type {IData} * @memberof NavBreadcrumbController */ @@ -74,6 +79,7 @@ export class NavBreadcrumbController extends PanelItemController /** * @description 应用菜单控制器 + * @exposedoc * @readonly * @type {(IAppMenuController | undefined)} * @memberof NavBreadcrumbController @@ -85,6 +91,7 @@ export class NavBreadcrumbController extends PanelItemController /** * @description 首页导航栏 * @readonly + * @exposedoc * @type {(NavPosIndexController | undefined)} * @memberof NavBreadcrumbController */ @@ -154,6 +161,7 @@ export class NavBreadcrumbController extends PanelItemController /** * @description 重置面包屑数据 + * @exposedoc * @memberof NavBreadcrumbController */ resetBreadcrumbs(): void { @@ -161,11 +169,12 @@ export class NavBreadcrumbController extends PanelItemController } /** - * 更新视图信息 - * @author lxm - * @date 2023-05-09 01:40:34 - * @param {string} key - * @param {{ caption?: string; dataInfo?: string }} info + * @description 更新视图信息 + * @exposedoc + * @param {string} fullPath + * @param {{ viewName: string; caption?: string; dataInfo?: string }} info + * @return {*} {void} + * @memberof NavBreadcrumbController */ updateViewInfo( fullPath: string, @@ -183,6 +192,7 @@ export class NavBreadcrumbController extends PanelItemController /** * @description 删除缓存数据 + * @exposedoc * @param {string} fullPath * @memberof NavBreadcrumbController */ diff --git a/src/panel-component/nav-breadcrumb/nav-breadcrumb.state.ts b/src/panel-component/nav-breadcrumb/nav-breadcrumb.state.ts index 2521c8599..a152cd71b 100644 --- a/src/panel-component/nav-breadcrumb/nav-breadcrumb.state.ts +++ b/src/panel-component/nav-breadcrumb/nav-breadcrumb.state.ts @@ -21,6 +21,7 @@ export interface BreadcrumbMsg { export class NavBreadcrumbState extends PanelItemState { /** * @description 面包屑导航项 + * @exposedoc * @type {BreadcrumbMsg[]} * @memberof NavBreadcrumbState */ diff --git a/src/panel-component/nav-breadcrumb/nav-breadcrumb.tsx b/src/panel-component/nav-breadcrumb/nav-breadcrumb.tsx index ff4ced32c..91069acaa 100644 --- a/src/panel-component/nav-breadcrumb/nav-breadcrumb.tsx +++ b/src/panel-component/nav-breadcrumb/nav-breadcrumb.tsx @@ -10,13 +10,24 @@ export interface dropdownAction { value?: string; } +/** + * 面包屑导航 + * @primary + * @description 根据视图层级显示链路,可通过点击对应的层级返回 + */ export const NavBreadcrumb = defineComponent({ name: 'IBizNavBreadcrumb', props: { + /** + * @description 面包屑导航数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 面包屑导航控制器 + */ controller: { type: NavBreadcrumbController, required: true, diff --git a/src/panel-component/nav-tabs/nav-tabs.controller.ts b/src/panel-component/nav-tabs/nav-tabs.controller.ts index 2424fba87..71251cd39 100644 --- a/src/panel-component/nav-tabs/nav-tabs.controller.ts +++ b/src/panel-component/nav-tabs/nav-tabs.controller.ts @@ -20,9 +20,8 @@ export class NavTabsController extends PanelItemController { } /** - * 当前视图的路由层级,非路由模式不存在。 - * @author lxm - * @date 2023-05-09 12:46:26 + * @description 当前视图的路由层级,非路由模式不存在。 + * @exposedoc * @readonly */ get routeDepth(): number | undefined { @@ -30,9 +29,8 @@ export class NavTabsController extends PanelItemController { } /** - * 导航占位控制器 - * @author lxm - * @date 2023-05-09 02:35:48 + * @description 导航占位控制器 + * @exposedoc * @readonly * @type {(NavPosIndexController | undefined)} */ @@ -41,9 +39,8 @@ export class NavTabsController extends PanelItemController { } /** - * 获取tabItem - * @author lxm - * @date 2023-05-09 02:04:11 + * @description 获取tabItem + * @exposedoc * @param {string} key * @return {*} */ @@ -52,9 +49,8 @@ export class NavTabsController extends PanelItemController { } /** - * 点击处理 - * @author lxm - * @date 2023-05-25 01:31:04 + * @description 点击处理 + * @exposedoc * @param {string} key */ onTabClick(key: string): void { @@ -62,11 +58,11 @@ export class NavTabsController extends PanelItemController { } /** - * 更新视图信息 - * @author lxm - * @date 2023-05-09 01:40:34 + * @description 更新视图信息 + * @exposedoc * @param {string} key * @param {{ caption?: string; dataInfo?: string; sysImage?: ISysImage }} info + * @memberof NavTabsController */ updateViewInfo( key: string, @@ -83,10 +79,8 @@ export class NavTabsController extends PanelItemController { } /** - * 删除某个key对应的数据 - * 仅处理组件自身维护的数据 - * @author lxm - * @date 2023-05-25 03:18:20 + * @description 删除某个key对应的数据,仅处理组件自身维护的数据 + * @exposedoc * @param {string} key */ removeCache(key: string): void { @@ -97,9 +91,8 @@ export class NavTabsController extends PanelItemController { } /** - * 删除分页 - * @author lxm - * @date 2023-05-09 02:08:46 + * @description 删除分页 + * @exposedoc * @param {string} key */ onTabRemove(key: string): void { @@ -107,9 +100,9 @@ export class NavTabsController extends PanelItemController { } /** - * 删除其他所有的标签页 - * @author lxm - * @date 2023-05-09 02:19:55 + * @description 删除其他所有的标签页 + * @exposedoc + * @memberof NavTabsController */ removeOther(): void { const currentKey = this.state.currentKey; @@ -125,9 +118,9 @@ export class NavTabsController extends PanelItemController { } /** - * 删除所有的标签页 - * @author lxm - * @date 2023-05-09 02:50:01 + * @description 删除所有的标签页 + * @exposedoc + * @memberof NavTabsController */ removeAll(): void { const removeKeys: string[] = this.state.tabItems.map(item => item.key); @@ -137,10 +130,10 @@ export class NavTabsController extends PanelItemController { } /** - * 刷新项(解决主信息更新之后界面ui未刷新) - * - * @author tony001 - * @date 2024-06-28 08:06:11 + * @description 刷新项(解决主信息更新之后界面ui未刷新) + * @exposedoc + * @param {string} key + * @memberof NavTabsController */ public refreshItemUI(key: string): void { const tempItem = { diff --git a/src/panel-component/nav-tabs/nav-tabs.state.ts b/src/panel-component/nav-tabs/nav-tabs.state.ts index b3a9f45e7..6f4b6e420 100644 --- a/src/panel-component/nav-tabs/nav-tabs.state.ts +++ b/src/panel-component/nav-tabs/nav-tabs.state.ts @@ -19,7 +19,8 @@ export interface TabMsg { */ export class NavTabsState extends PanelItemState { /** - * 当前路由key + * @description 当前路由key + * @exposedoc * @return {*} * @author: zhujiamin * @Date: 2023-10-20 16:23:42 @@ -27,7 +28,8 @@ export class NavTabsState extends PanelItemState { currentKey: string = ''; /** - * 分页标签项 + * @description 分页标签项 + * @exposedoc * @return {*} * @author: zhujiamin * @Date: 2023-10-20 16:23:26 @@ -35,7 +37,8 @@ export class NavTabsState extends PanelItemState { tabItems: TabMsg[] = []; /** - * 当前激活tab + * @description 当前激活tab + * @exposedoc * @return {*} * @author: zhujiamin * @Date: 2023-10-20 16:23:17 diff --git a/src/panel-component/nav-tabs/nav-tabs.tsx b/src/panel-component/nav-tabs/nav-tabs.tsx index bb382d97f..e1d0b7669 100644 --- a/src/panel-component/nav-tabs/nav-tabs.tsx +++ b/src/panel-component/nav-tabs/nav-tabs.tsx @@ -10,13 +10,24 @@ export interface dropdownAction { value?: string; } +/** + * 分页导航 + * @primary + * @description 提供一个分页导航组件,切换分页时会通知路由组件更新视图。 + */ export const NavTabs = defineComponent({ name: 'IBizNavTabs', props: { + /** + * @description 分页导航模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * type: 分页导航控制器 + */ controller: { type: NavTabsController, required: true, diff --git a/src/panel-component/panel-app-header/panel-app-header.tsx b/src/panel-component/panel-app-header/panel-app-header.tsx index 47ee59686..e8768ede9 100644 --- a/src/panel-component/panel-app-header/panel-app-header.tsx +++ b/src/panel-component/panel-app-header/panel-app-header.tsx @@ -4,13 +4,24 @@ import { IPanelContainer } from '@ibiz/model-core'; import { computed, defineComponent, PropType, ref, VNode } from 'vue'; import './panel-app-header.scss'; +/** + * 面板容器(应用头部) + * @primary + * @description 用于首页视图布局头部区域的绘制 + */ export const PanelAppHeader = defineComponent({ name: 'IBizPanelAppHeader', props: { + /** + * @description 面板头部模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 面板头部控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/panel-app-login-view/panel-app-login-view.tsx b/src/panel-component/panel-app-login-view/panel-app-login-view.tsx index 8d87eeab4..b3ba53520 100644 --- a/src/panel-component/panel-app-login-view/panel-app-login-view.tsx +++ b/src/panel-component/panel-app-login-view/panel-app-login-view.tsx @@ -3,14 +3,24 @@ import { IPanelContainer } from '@ibiz/model-core'; import { computed, defineComponent, PropType, VNode } from 'vue'; import { PanelAppLoginViewController } from './panel-app-login-view.controller'; import './panel-app-login-view.scss'; - +/** + * 面板容器(应用登录视图) + * @primary + * @description 用于包裹绘制自定义布局应用登录视图。 + */ export const PanelAppLoginView = defineComponent({ name: 'IBizPanelAppLoginView', props: { + /** + * @description 面板容器(应用登录视图)模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 面板容器(应用登录视图)控制器 + */ controller: { type: PanelAppLoginViewController, required: true, diff --git a/src/panel-component/panel-app-title/panel-app-title.controller.ts b/src/panel-component/panel-app-title/panel-app-title.controller.ts index 17a29c2e6..08959619f 100644 --- a/src/panel-component/panel-app-title/panel-app-title.controller.ts +++ b/src/panel-component/panel-app-title/panel-app-title.controller.ts @@ -20,23 +20,24 @@ export class PanelAppTitleController extends PanelItemController } /** - * 面板控制器 - * + * @description 面板控制器 + * @exposedoc * @type {ViewLayoutPanelController} * @memberof PanelAppTitleController */ declare panel: ViewLayoutPanelController; /** - * 分隔符,用于分割收缩与未收缩的标题 + * @description 分隔符,用于分割收缩与未收缩的标题 + * @exposedoc * @return {*} - * @author: zhujiamin - * @Date: 2023-10-18 18:24:06 + * @memberof PanelAppTitleController */ private captionSplit = '|'; /** * @description 自定义补充参数 + * @exposedoc * @type {IData} * @memberof PanelAppTitleController */ diff --git a/src/panel-component/panel-app-title/panel-app-title.state.ts b/src/panel-component/panel-app-title/panel-app-title.state.ts index 6f8284e3a..a2d0fbf44 100644 --- a/src/panel-component/panel-app-title/panel-app-title.state.ts +++ b/src/panel-component/panel-app-title/panel-app-title.state.ts @@ -11,8 +11,8 @@ import { PanelItemState } from '@ibiz-template/runtime'; */ export class PanelAppTitleState extends PanelItemState { /** - * 应用标题 - * + * @description 应用标题 + * @exposedoc * @author chitanda * @date 2023-07-20 17:07:22 * @type {string} @@ -20,8 +20,8 @@ export class PanelAppTitleState extends PanelItemState { caption: string = ''; /** - * 应用标题(收缩时) - * + * @description 应用标题(收缩时) + * @exposedoc * @author chitanda * @date 2023-07-20 17:07:22 * @type {string} @@ -29,8 +29,8 @@ export class PanelAppTitleState extends PanelItemState { caption2: string = ''; /** - * 应用子标题 - * + * @description 应用子标题 + * @exposedocs * @author chitanda * @date 2023-07-20 17:07:22 * @type {string} @@ -38,8 +38,8 @@ export class PanelAppTitleState extends PanelItemState { subCaption?: string = ''; /** - * 应用子标题(收缩时) - * + * @description 应用子标题(收缩时) + * @exposedocs * @author chitanda * @date 2023-07-20 17:07:22 * @type {string} @@ -47,8 +47,8 @@ export class PanelAppTitleState extends PanelItemState { subCaption2?: string = ''; /** - * 应用 logo 图片地址 - * + * @description 应用 logo 图片地址 + * @exposedoc * @author chitanda * @date 2023-07-20 17:07:11 * @type {string} @@ -56,8 +56,8 @@ export class PanelAppTitleState extends PanelItemState { icon: string = ''; /** - * 应用 logo 图片2地址(收缩时) - * + * @description 应用 logo 图片2地址(收缩时) + * @exposedoc * @author chitanda * @date 2023-07-20 17:07:11 * @type {string} @@ -65,8 +65,8 @@ export class PanelAppTitleState extends PanelItemState { icon2: string = ''; /** - * 是否为 svg 图标 - * + * @description 是否为 svg 图标 + * @exposedoc * @author chitanda * @date 2023-07-20 17:07:26 * @type {boolean} diff --git a/src/panel-component/panel-app-title/panel-app-title.tsx b/src/panel-component/panel-app-title/panel-app-title.tsx index a17bde12e..7c11d963c 100644 --- a/src/panel-component/panel-app-title/panel-app-title.tsx +++ b/src/panel-component/panel-app-title/panel-app-title.tsx @@ -11,13 +11,24 @@ import { PanelAppTitleController } from './panel-app-title.controller'; import './panel-app-title.scss'; +/** + * 面板应用标题 + * @description 用于绘制应用logo,应用标题,提供点击标题跳转首页的能力。 + * @primary + */ export const PanelAppTitle = defineComponent({ name: 'IBizPanelAppTitle', props: { + /** + * @description 面板应用标题模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 面板应用标题控制器 + */ controller: { type: PanelAppTitleController, required: true, diff --git a/src/panel-component/panel-button-list/panel-button-list.controller.ts b/src/panel-component/panel-button-list/panel-button-list.controller.ts index 63d90c7e4..3ce5dab2f 100644 --- a/src/panel-component/panel-button-list/panel-button-list.controller.ts +++ b/src/panel-component/panel-button-list/panel-button-list.controller.ts @@ -29,10 +29,9 @@ export class PanelButtonListController extends PanelItemController} diff --git a/src/panel-component/panel-button-list/panel-button-list.state.ts b/src/panel-component/panel-button-list/panel-button-list.state.ts index aad73271e..485e5992f 100644 --- a/src/panel-component/panel-button-list/panel-button-list.state.ts +++ b/src/panel-component/panel-button-list/panel-button-list.state.ts @@ -9,8 +9,8 @@ import { IButtonContainerState, PanelItemState } from '@ibiz-template/runtime'; */ export class PanelButtonListState extends PanelItemState { /** - * 按钮组状态 - * + * @description 按钮组状态 + * @exposedoc * @type {IButtonContainerState} * @memberof PanelButtonListState */ diff --git a/src/panel-component/panel-button-list/panel-button-list.tsx b/src/panel-component/panel-button-list/panel-button-list.tsx index 7e0b926c0..9d263b029 100644 --- a/src/panel-component/panel-button-list/panel-button-list.tsx +++ b/src/panel-component/panel-button-list/panel-button-list.tsx @@ -5,13 +5,26 @@ import { defineComponent, PropType } from 'vue'; import { PanelButtonListController } from './panel-button-list.controller'; import './panel-button-list.scss'; +/** + * 面板按钮组 + * @primary + * @description 绘制按钮组组件,并接收抛出的点击事件后调用控制器的方法执行按钮对应的行为。 + * @export + * @class PanelButtonList + */ export const PanelButtonList = defineComponent({ name: 'IBizPanelButtonList', props: { + /** + * @description 面板按钮组模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 面板按钮组控制器 + */ controller: { type: PanelButtonListController, required: true, diff --git a/src/panel-component/panel-exp-header/panel-exp-header.tsx b/src/panel-component/panel-exp-header/panel-exp-header.tsx index a58682866..83ed45b89 100644 --- a/src/panel-component/panel-exp-header/panel-exp-header.tsx +++ b/src/panel-component/panel-exp-header/panel-exp-header.tsx @@ -4,13 +4,24 @@ import { computed, defineComponent, PropType, ref, VNode } from 'vue'; import { PanelItemController } from '@ibiz-template/runtime'; import './panel-exp-header.scss'; +/** + * 面板容器(导航部件视图头部) + * @primary + * @description 导航部件视图 header 区呈现容器。 + */ export const PanelExpHeader = defineComponent({ name: 'IBizPanelExpHeader', props: { + /** + * @description 面板容器(导航部件视图头部)模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 面板容器(导航部件视图头部)控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/panel-index-view-search/panel-index-view-search.tsx b/src/panel-component/panel-index-view-search/panel-index-view-search.tsx index 89e6286f5..2d8e3f4c0 100644 --- a/src/panel-component/panel-index-view-search/panel-index-view-search.tsx +++ b/src/panel-component/panel-index-view-search/panel-index-view-search.tsx @@ -10,13 +10,24 @@ import { import { debounce } from 'lodash-es'; import './panel-index-view-search.scss'; +/** + * 首页搜索 + * @primary + * @description 输入搜索词点击搜索后,会仿真点击菜单上指定的某一项来打开全局搜索界面。 + */ export const PanelIndexViewSearch = defineComponent({ name: 'IBizPanelIndexViewSearch', props: { + /** + * @description 首页搜索模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 首页搜索控件控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/panel-remember-me/panel-remember-me.tsx b/src/panel-component/panel-remember-me/panel-remember-me.tsx index a2d41262a..05fc7b5ae 100644 --- a/src/panel-component/panel-remember-me/panel-remember-me.tsx +++ b/src/panel-component/panel-remember-me/panel-remember-me.tsx @@ -3,13 +3,24 @@ import { IPanelContainer } from '@ibiz/model-core'; import { computed, defineComponent, PropType } from 'vue'; import { PanelRememberMeController } from './panel-remember-me.controller'; +/** + * 记住我 + * @primary + * @description 登录前勾选记住我后,登录时会向后台传递一个rememberme=true的值,并且登录成功后会将延长登录token存储时间。 + */ export const PanelRememberMe = defineComponent({ name: 'IBizPanelRememberMe', props: { + /** + * @description 记住我控件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 记住我控件控制器 + */ controller: { type: PanelRememberMeController, required: true, diff --git a/src/panel-component/panel-static-carousel/panel-static-carousel.tsx b/src/panel-component/panel-static-carousel/panel-static-carousel.tsx index c84fa6c30..0ec952711 100644 --- a/src/panel-component/panel-static-carousel/panel-static-carousel.tsx +++ b/src/panel-component/panel-static-carousel/panel-static-carousel.tsx @@ -4,13 +4,24 @@ import { IControlItemParam, IPanelRawItem } from '@ibiz/model-core'; import { defineComponent, PropType, ref, Ref } from 'vue'; import './panel-static-carousel.scss'; +/** + * 静态轮播组件 + * @description 静态轮播组件,可配置静态图片用于轮播展示。 + * @primary + */ export const PanelStaticCarousel = defineComponent({ name: 'IBizPanelStaticCarousel', props: { + /** + * @description 静态轮播组件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 静态轮播组件控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/panel-tab-panel/panel-tab-panel.controller.ts b/src/panel-component/panel-tab-panel/panel-tab-panel.controller.ts index f0b489d15..cf55336b6 100644 --- a/src/panel-component/panel-tab-panel/panel-tab-panel.controller.ts +++ b/src/panel-component/panel-tab-panel/panel-tab-panel.controller.ts @@ -30,11 +30,10 @@ export class PanelTabPanelController extends PanelItemController } /** - * 分页点击切换处理 - * - * @author tony001 - * @date 2024-05-12 14:05:11 + * @description 分页点击切换处理 + * @exposedoc * @param {string} tabId + * @memberof PanelTabPanelController */ onTabChange(tabId: string): void { this.state.activeTab = tabId; diff --git a/src/panel-component/panel-tab-panel/panel-tab-panel.state.ts b/src/panel-component/panel-tab-panel/panel-tab-panel.state.ts index f96a6d732..851950025 100644 --- a/src/panel-component/panel-tab-panel/panel-tab-panel.state.ts +++ b/src/panel-component/panel-tab-panel/panel-tab-panel.state.ts @@ -11,11 +11,10 @@ import { PanelItemState } from '@ibiz-template/runtime'; */ export class PanelTabPanelState extends PanelItemState { /** - * 当前激活分页 - * - * @author tony001 - * @date 2024-05-12 14:05:36 + * @description 当前激活分页 + * @exposedoc * @type {string} + * @memberof PanelTabPanelState */ activeTab: string = ''; } diff --git a/src/panel-component/panel-tab-panel/panel-tab-panel.tsx b/src/panel-component/panel-tab-panel/panel-tab-panel.tsx index ce211683d..5b790c4a5 100644 --- a/src/panel-component/panel-tab-panel/panel-tab-panel.tsx +++ b/src/panel-component/panel-tab-panel/panel-tab-panel.tsx @@ -4,13 +4,24 @@ import { computed, defineComponent, PropType, VNode } from 'vue'; import './panel-tab-panel.scss'; import { PanelTabPanelController } from './panel-tab-panel.controller'; +/** + * 分页面板 + * @primary + * @description 面板分页面板。 + */ export const PanelTabPanel = defineComponent({ name: 'IBizPanelTabPanel', props: { + /** + * @description 分页面板模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 分页面板控制器 + */ controller: { type: PanelTabPanelController, required: true, diff --git a/src/panel-component/panel-view-content/panel-view-content.tsx b/src/panel-component/panel-view-content/panel-view-content.tsx index 911751dda..d6bf3176c 100644 --- a/src/panel-component/panel-view-content/panel-view-content.tsx +++ b/src/panel-component/panel-view-content/panel-view-content.tsx @@ -4,13 +4,26 @@ import { computed, defineComponent, PropType, ref, VNode } from 'vue'; import { PanelItemController } from '@ibiz-template/runtime'; import './panel-view-content.scss'; +/** + * 面板视图内容区容器 + * @primary + * @description 用于视图布局视图内容区的绘制。 + * @export + * @class PanelViewContent + */ export const PanelViewContent = defineComponent({ name: 'IBizPanelViewContent', props: { + /** + * @description 面板视图内容区容器模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 面板视图内容区容器控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/panel-view-header/panel-view-header.tsx b/src/panel-component/panel-view-header/panel-view-header.tsx index 023779ea4..b9c28cd4f 100644 --- a/src/panel-component/panel-view-header/panel-view-header.tsx +++ b/src/panel-component/panel-view-header/panel-view-header.tsx @@ -4,13 +4,24 @@ import { computed, defineComponent, PropType, ref, VNode } from 'vue'; import { PanelItemController } from '@ibiz-template/runtime'; import './panel-view-header.scss'; +/** + * 面板视图头部区域容器 + * @primary + * @description 用于视图布局视图头部区的绘制。 + */ export const PanelViewHeader = defineComponent({ name: 'IBizPanelViewHeader', props: { + /** + * @description 容器模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 容器控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/searchform-buttons/searchform-buttons.controller.ts b/src/panel-component/searchform-buttons/searchform-buttons.controller.ts index a582e3448..0f9bae1f0 100644 --- a/src/panel-component/searchform-buttons/searchform-buttons.controller.ts +++ b/src/panel-component/searchform-buttons/searchform-buttons.controller.ts @@ -16,31 +16,32 @@ import { */ export class SearchFormButtonsController extends PanelItemController { /** - * 搜索按钮样式 - * @author lxm - * @date 2023-11-21 03:25:31 - * @type {(string | 'DEFAULT' | 'NONE' | 'SEARCHONLY' | 'USER' | 'USER2')} + * @description 搜索按钮样式 + * @exposedoc + * @readonly + * @type {string} + * @memberof SearchFormButtonsController */ get searchButtonStyle(): string { return this.searchFrom.model.searchButtonStyle || 'DEFAULT'; } /** - * 保存的过滤条件 - * @author lxm - * @date 2023-11-27 04:33:42 + * @description 保存的过滤条件 + * @exposedoc * @readonly * @type {StoredFilter[]} + * @memberof SearchFormButtonsController */ get storedFilters(): StoredFilter[] { return this.searchFrom?.state.storedFilters || []; } /** - * 搜索表单控制器 - * @author lxm - * @date 2023-11-21 04:32:58 + * @description 搜索表单控制器 + * @exposedoc * @type {ISearchFormController} + * @memberof SearchFormButtonsController */ searchFrom!: ISearchFormController; @@ -57,7 +58,7 @@ export class SearchFormButtonsController extends PanelItemController { } /** - * 点击搜索按钮 + * @description 点击搜索按钮 * @author lxm * @date 2023-11-21 04:31:55 */ diff --git a/src/panel-component/searchform-buttons/searchform-buttons.tsx b/src/panel-component/searchform-buttons/searchform-buttons.tsx index 3a29bb5dd..7b7bb166d 100644 --- a/src/panel-component/searchform-buttons/searchform-buttons.tsx +++ b/src/panel-component/searchform-buttons/searchform-buttons.tsx @@ -5,13 +5,24 @@ import { IPanelRawItem } from '@ibiz/model-core'; import { ElMessageBox } from 'element-plus'; import { SearchFormButtonsController } from './searchform-buttons.controller'; +/** + * 搜索表单按钮 + * @primary + * @description 提供了搜索按钮,重置按钮以及保存搜索条件按钮,根据配置显示对应的按钮。 + */ export const SearchFormButtons = defineComponent({ name: 'IBizSearchFormButtons', props: { + /** + * @description 搜索表单按钮模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 搜索表单按钮控制器 + */ controller: { type: SearchFormButtonsController, required: true, diff --git a/src/panel-component/short-cut/short-cut.tsx b/src/panel-component/short-cut/short-cut.tsx index 153dc7831..3c5c915de 100644 --- a/src/panel-component/short-cut/short-cut.tsx +++ b/src/panel-component/short-cut/short-cut.tsx @@ -19,16 +19,27 @@ import draggable from 'vuedraggable'; import { IBizContext, showTitle } from '@ibiz-template/core'; import './short-cut.scss'; +/** + * 快捷操作 + * @primary + * @description 快捷方式组件,用于显示模态视图最小化后快捷打开方式。 + */ export const ShortCut = defineComponent({ name: 'IBizShortCut', components: { draggable, }, props: { + /** + * @description 快捷操作组件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 快捷操作组件控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/split-container/split-container.controller.ts b/src/panel-component/split-container/split-container.controller.ts index 979fc7fb4..ac7fd399c 100644 --- a/src/panel-component/split-container/split-container.controller.ts +++ b/src/panel-component/split-container/split-container.controller.ts @@ -13,8 +13,8 @@ import { SplitContainerState } from './split-container.state'; */ export class SplitContainerController extends PanelItemController { /** - * 分割面板容器状态 - * + * @description 分割面板容器状态 + * @exposedoc * @author zhanghengfeng * @date 2023-10-08 17:10:25 * @type {SplitContainerState} @@ -22,8 +22,8 @@ export class SplitContainerController extends PanelItemController, required: true, }, + /** + * @description 分割容器控制器 + */ controller: { type: SplitContainerController, required: true, diff --git a/src/panel-component/user-action/user-action.tsx b/src/panel-component/user-action/user-action.tsx index e54fd4602..702ebc651 100644 --- a/src/panel-component/user-action/user-action.tsx +++ b/src/panel-component/user-action/user-action.tsx @@ -9,13 +9,26 @@ import { IAppMenuItem, IPanelRawItem } from '@ibiz/model-core'; import { showTitle } from '@ibiz-template/core'; import './user-action.scss'; +/** + * 首页面板预置按钮 + * @primary + * @description 内置了3种按钮类型,包含Setting、Helper、Custom,可配置对应的菜单项,点击当前按钮时,打开对应的应用功能。 + * @export + * @class UserAction + */ export const UserAction = defineComponent({ name: 'IBizUserAction', props: { + /** + * @description 面板预置按钮模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 面板预置按钮控制器 + */ controller: { type: Object as PropType, required: true, diff --git a/src/panel-component/user-message/user-message.tsx b/src/panel-component/user-message/user-message.tsx index dfea03fcc..e8e2525c7 100644 --- a/src/panel-component/user-message/user-message.tsx +++ b/src/panel-component/user-message/user-message.tsx @@ -9,13 +9,24 @@ import { InternalMessageTab } from './internal-message'; import { InternalMessageDefaultProvider } from './internal-message/common'; import './user-message.scss'; +/** + * 用户消息组件 + * @primary + * @description 用户消息组件,用于显示网站内关于用户的通知消息。 + */ export const UserMessage = defineComponent({ name: 'IBizUserMessage', props: { + /** + * @description 用户消息组件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 用户消息组件控制器 + */ controller: { type: Object as PropType, required: true, diff --git a/src/panel-component/view-message/view-message.tsx b/src/panel-component/view-message/view-message.tsx index d49ca303d..1a32beeab 100644 --- a/src/panel-component/view-message/view-message.tsx +++ b/src/panel-component/view-message/view-message.tsx @@ -3,13 +3,26 @@ import { useCtx, useNamespace } from '@ibiz-template/vue3-util'; import { IPanelRawItem } from '@ibiz/model-core'; import { PanelItemController } from '@ibiz-template/runtime'; +/** + * 视图消息 + * @primary + * @description 用于显示视图消息。 + * @param {*} + * @return {*} + */ export const ViewMessage = defineComponent({ name: 'IBizViewMessage', props: { + /** + * @description 视图消息组件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 视图消息组件控制器 + */ controller: { type: PanelItemController, required: true, diff --git a/src/panel-component/view-msg-pos/view-msg-pos.tsx b/src/panel-component/view-msg-pos/view-msg-pos.tsx index bbaba4b33..b19bc0c4e 100644 --- a/src/panel-component/view-msg-pos/view-msg-pos.tsx +++ b/src/panel-component/view-msg-pos/view-msg-pos.tsx @@ -3,13 +3,24 @@ import { useCtx, useNamespace } from '@ibiz-template/vue3-util'; import { IPanelRawItem } from '@ibiz/model-core'; import { ViewMsgPosController } from './view-msg-pos.controller'; +/** + * 视图消息占位控件 + * @primary + * @description 视图消息占位控件,用于在界面中给视图消息提供一个显示位置。 + */ export const ViewMsgPos = defineComponent({ name: 'IBizViewMsgPos', props: { + /** + * @description 视图消息占位控件模型数据 + */ modelData: { type: Object as PropType, required: true, }, + /** + * @description 视图消息占位控件控制器 + */ controller: { type: ViewMsgPosController, required: true, -- Gitee From a60ad62565fb89b57fc4b4a6d04100d7e63e40e6 Mon Sep 17 00:00:00 2001 From: "jlj05024111@163.com" Date: Mon, 28 Apr 2025 10:02:50 +0800 Subject: [PATCH 2/3] =?UTF-8?q?feat:=20=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/panel-component/auth-captcha/auth-captcha.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/panel-component/auth-captcha/auth-captcha.tsx b/src/panel-component/auth-captcha/auth-captcha.tsx index 6f391b350..8611b0305 100644 --- a/src/panel-component/auth-captcha/auth-captcha.tsx +++ b/src/panel-component/auth-captcha/auth-captcha.tsx @@ -7,7 +7,7 @@ import './auth-captcha.scss'; /** * 人机识别控件 - * @description 主要是用来生成验证码并展示的。 + * @description 主要是用来加载验证码图片并要求用户输入验证码的。 * @primary */ export const AuthCaptcha = defineComponent({ -- Gitee From 62f4063d649241cf122f9908d6f7c0cf8e651228 Mon Sep 17 00:00:00 2001 From: "jlj05024111@163.com" Date: Mon, 28 Apr 2025 10:05:45 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=88=86=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E6=9D=BF=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/panel-component/panel-tab-panel/panel-tab-panel.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/panel-component/panel-tab-panel/panel-tab-panel.tsx b/src/panel-component/panel-tab-panel/panel-tab-panel.tsx index 5b790c4a5..33300d314 100644 --- a/src/panel-component/panel-tab-panel/panel-tab-panel.tsx +++ b/src/panel-component/panel-tab-panel/panel-tab-panel.tsx @@ -7,7 +7,7 @@ import { PanelTabPanelController } from './panel-tab-panel.controller'; /** * 分页面板 * @primary - * @description 面板分页面板。 + * @description 可用于显示多个分页,每个分页有自己的内容。 */ export const PanelTabPanel = defineComponent({ name: 'IBizPanelTabPanel', -- Gitee