diff --git a/src/control/search-bar/quick-search-select/quick-search-select.tsx b/src/control/search-bar/quick-search-select/quick-search-select.tsx
index 80ee3773335f150ae8aa9e7a88aad2bbc6bd8fe4..b6fc080a9d41aa5867e0b11064b485580d1c96a5 100644
--- a/src/control/search-bar/quick-search-select/quick-search-select.tsx
+++ b/src/control/search-bar/quick-search-select/quick-search-select.tsx
@@ -36,7 +36,12 @@ export const QuickSearchSelect = defineComponent({
>
{{
default: () => (
-
+
),
diff --git a/src/locale/en/index.ts b/src/locale/en/index.ts
index 07ce0aafaf154fa177872a96c05209543c1695d3..0c2c0b34681ba5ba4cd3c0cb444dd946aca30344 100644
--- a/src/locale/en/index.ts
+++ b/src/locale/en/index.ts
@@ -422,6 +422,9 @@ export default {
dialogCancel: 'Cancel',
dialogDetermine: 'Determine',
},
+ quickSearchSelect: {
+ searchField: 'Selective search field',
+ },
},
toolbar: {
exportExcel: {
diff --git a/src/locale/zh-CN/index.ts b/src/locale/zh-CN/index.ts
index c6a78d1392f732285021cb62b2c6501e6729919b..8d51fece4442f29447b679e2b27fb242c9bf51a3 100644
--- a/src/locale/zh-CN/index.ts
+++ b/src/locale/zh-CN/index.ts
@@ -391,6 +391,9 @@ export default {
dialogCancel: '取 消',
dialogDetermine: '确 定',
},
+ quickSearchSelect: {
+ searchField: '选择搜索属性',
+ },
},
toolbar: {
exportExcel: {
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 ff46a8706eaac0e50a1a22fc171ceb15c9bb32f5..5be36f0a77252ca0d25439a8fdec5389f0464896 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
@@ -2,7 +2,7 @@ import {
PanelItemController,
ViewLayoutPanelController,
} from '@ibiz-template/runtime';
-import { IPanelField, IAppIndexView } from '@ibiz/model-core';
+import { IPanelRawItem, IAppIndexView } from '@ibiz/model-core';
import { PanelAppTitleState } from './panel-app-title.state';
/**
@@ -10,9 +10,9 @@ import { PanelAppTitleState } from './panel-app-title.state';
*
* @export
* @class PanelAppTitleController
- * @extends {PanelItemController
}
+ * @extends {PanelItemController}
*/
-export class PanelAppTitleController extends PanelItemController {
+export class PanelAppTitleController extends PanelItemController {
declare state: PanelAppTitleState;
protected createState(): PanelAppTitleState {
@@ -35,6 +35,13 @@ export class PanelAppTitleController extends PanelItemController {
*/
private captionSplit = '|';
+ /**
+ * @description 自定义补充参数
+ * @type {IData}
+ * @memberof PanelAppTitleController
+ */
+ rawItemParams: IData = {};
+
/**
* 初始化
*
@@ -43,6 +50,7 @@ export class PanelAppTitleController extends PanelItemController {
*/
async onInit(): Promise {
await super.onInit();
+ this.handleRawItemParams();
const indexViewModel: IAppIndexView = this.panel.view.model;
// 抬头
if (indexViewModel.title) {
@@ -83,4 +91,25 @@ export class PanelAppTitleController extends PanelItemController {
this.state.isSvg = true;
}
}
+
+ /**
+ * 处理自定义补充参数 [{key:'name',value:'data'}] => {name:'data'}
+ *
+ * @author zk
+ * @date 2023-09-27 03:09:55
+ * @protected
+ * @memberof NavPosController
+ */
+ protected handleRawItemParams(): void {
+ const rawItemParams = this.model.rawItem?.rawItemParams;
+ if (Array.isArray(rawItemParams)) {
+ rawItemParams.forEach(item => {
+ const key = item.key;
+ const value = item.value;
+ if (key && value) {
+ this.rawItemParams[key.toLowerCase()] = value;
+ }
+ });
+ }
+ }
}
diff --git a/src/panel-component/panel-app-title/panel-app-title.scss b/src/panel-component/panel-app-title/panel-app-title.scss
index c2d2dfea1c6db84aaba0fe6aed61004828445d1d..6d7e17d1e6a157c6776f8d7f987324e64c14fad4 100644
--- a/src/panel-component/panel-app-title/panel-app-title.scss
+++ b/src/panel-component/panel-app-title/panel-app-title.scss
@@ -2,7 +2,7 @@ $panel-app-title: (
'color': getCssVar(color, text, 0),
'font-size': getCssVar(font-size, header-3),
'font-weight': getCssVar(font-weight, bold),
- 'padding': 0 getCssVar(spacing, loose),
+ 'padding': 0 getCssVar(spacing, base, tight),
'collapse-padding': 0 getCssVar(spacing, tight),
);
@@ -40,6 +40,14 @@ $panel-app-title: (
svg {
fill: getCssVar('panel-app-title', 'color');
}
+ @include m('expand') {
+ width: 66px;
+ height: 66px;
+
+ &+svg {
+ width: calc(100% - 66px);
+ }
+ }
}
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 f1a1b02d007dbb36f37e5ba6ab51eb86f920ec46..2455343f5deed32d2e91d054e31ebeaa7ae76691 100644
--- a/src/panel-component/panel-app-title/panel-app-title.tsx
+++ b/src/panel-component/panel-app-title/panel-app-title.tsx
@@ -103,10 +103,67 @@ export const PanelAppTitle = defineComponent({
);
}
+ } else if (this.c.rawItemParams.showexpandicon === 'true' && icon) {
+ let tempIcon = null;
+ if (isSvg) {
+ tempIcon = (
+