@ibiz-template/vue3-util 0.7.38-alpha.12 → 0.7.38-alpha.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/es/common/view-shell/view-shell.d.ts.map +1 -1
- package/es/common/view-shell/view-shell.mjs +26 -3
- package/es/index.mjs +1 -0
- package/es/panel-component/index.d.ts +1 -0
- package/es/panel-component/index.d.ts.map +1 -1
- package/es/panel-component/index.mjs +1 -0
- package/es/panel-component/panel-container/panel-container.css +1 -1
- package/es/panel-component/panel-ctrl-view-page-caption/index.d.ts +24 -0
- package/es/panel-component/panel-ctrl-view-page-caption/index.d.ts.map +1 -0
- package/es/panel-component/panel-ctrl-view-page-caption/index.mjs +19 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.controller.d.ts +29 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.controller.d.ts.map +1 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.controller.mjs +24 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.d.ts +25 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.d.ts.map +1 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.mjs +49 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.provider.d.ts +17 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.provider.d.ts.map +1 -0
- package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.provider.mjs +15 -0
- package/es/view/common/index.d.ts +1 -1
- package/es/view/common/view.d.ts +1 -1
- package/es/view/common/view.d.ts.map +1 -1
- package/es/view/common/view.mjs +1 -1
- package/lib/common/view-shell/view-shell.cjs +25 -2
- package/lib/index.cjs +25 -23
- package/lib/panel-component/index.cjs +2 -0
- package/lib/panel-component/panel-container/panel-container.css +1 -1
- package/lib/panel-component/panel-ctrl-view-page-caption/index.cjs +24 -0
- package/lib/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.cjs +51 -0
- package/lib/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.controller.cjs +26 -0
- package/lib/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.provider.cjs +17 -0
- package/lib/view/common/view.cjs +1 -1
- package/package.json +5 -5
|
@@ -2,7 +2,7 @@ import { defineComponent, ref, watch, h, resolveComponent, withDirectives, creat
|
|
|
2
2
|
import { calcDynaSysParams, getViewProvider, getErrorViewProvider } from '@ibiz-template/runtime';
|
|
3
3
|
import { RuntimeError } from '@ibiz-template/core';
|
|
4
4
|
import { createUUID } from 'qx-util';
|
|
5
|
-
import { isNil, isEmpty
|
|
5
|
+
import { clone, isNil, isEmpty } from 'ramda';
|
|
6
6
|
import '../../use/index.mjs';
|
|
7
7
|
import './view-shell.css';
|
|
8
8
|
import { useNamespace } from '../../use/namespace/namespace.mjs';
|
|
@@ -25,7 +25,9 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
25
25
|
type: String
|
|
26
26
|
}
|
|
27
27
|
},
|
|
28
|
-
setup(props
|
|
28
|
+
setup(props, {
|
|
29
|
+
attrs
|
|
30
|
+
}) {
|
|
29
31
|
const ns = useNamespace("view-shell");
|
|
30
32
|
const isComplete = ref(false);
|
|
31
33
|
const errMsg = ref("");
|
|
@@ -34,6 +36,7 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
34
36
|
const hasAuthority = ref(true);
|
|
35
37
|
const context = ref(props.context);
|
|
36
38
|
const params = ref(props.params || {});
|
|
39
|
+
let dynaViewCacheKey = "";
|
|
37
40
|
watch(() => ({
|
|
38
41
|
context: props.context,
|
|
39
42
|
params: props.params
|
|
@@ -76,6 +79,13 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
76
79
|
return checkResult;
|
|
77
80
|
};
|
|
78
81
|
let viewModel;
|
|
82
|
+
const getDynaViewCacheKey = (args) => {
|
|
83
|
+
const copyArgs = clone(args);
|
|
84
|
+
if (copyArgs.srfdatatype) {
|
|
85
|
+
delete copyArgs.srfdatatype;
|
|
86
|
+
}
|
|
87
|
+
return JSON.stringify(copyArgs);
|
|
88
|
+
};
|
|
79
89
|
const initViewModel = async () => {
|
|
80
90
|
if (props.modelData) {
|
|
81
91
|
viewModel = props.modelData;
|
|
@@ -100,7 +110,7 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
100
110
|
}));
|
|
101
111
|
}
|
|
102
112
|
const loadModelParams = await calcDynaSysParams(appDataEntityId, context.value, {
|
|
103
|
-
viewParams: params,
|
|
113
|
+
viewParams: params.value,
|
|
104
114
|
appId: viewModel.appId
|
|
105
115
|
});
|
|
106
116
|
if (params.value.srfdatatype) {
|
|
@@ -142,7 +152,15 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
142
152
|
}
|
|
143
153
|
}
|
|
144
154
|
}
|
|
155
|
+
const curDynaViewCacheKey = getDynaViewCacheKey(loadModelParams);
|
|
156
|
+
if (curDynaViewCacheKey === dynaViewCacheKey) {
|
|
157
|
+
setTimeout(() => {
|
|
158
|
+
isComplete.value = true;
|
|
159
|
+
});
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
145
162
|
viewModelData.value = await ibiz.hub.loadAppView(viewModel.appId, viewModel.id, loadModelParams);
|
|
163
|
+
dynaViewCacheKey = getDynaViewCacheKey(loadModelParams);
|
|
146
164
|
} else {
|
|
147
165
|
viewModelData.value = viewModel;
|
|
148
166
|
}
|
|
@@ -166,6 +184,11 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
166
184
|
} = redrawData;
|
|
167
185
|
Object.assign(context.value, redrawData.context);
|
|
168
186
|
Object.assign(params.value, redrawData.params);
|
|
187
|
+
const modal = attrs.modal;
|
|
188
|
+
if (modal) {
|
|
189
|
+
modal.hooks.shouldDismiss.clear();
|
|
190
|
+
modal.hooks.beforeDismiss.clear();
|
|
191
|
+
}
|
|
169
192
|
if (isReloadModel) {
|
|
170
193
|
await init();
|
|
171
194
|
} else {
|
package/es/index.mjs
CHANGED
|
@@ -58,6 +58,7 @@ export { IBizPanelItemRender } from './panel-component/panel-item-render/index.m
|
|
|
58
58
|
export { TeleportPlaceholderProvider } from './panel-component/teleport-placeholder/teleport-placeholder.provider.mjs';
|
|
59
59
|
export { IBizTeleportPlaceholder } from './panel-component/teleport-placeholder/index.mjs';
|
|
60
60
|
export { IBizPanelContainerTabs } from './panel-component/panel-container-tabs/index.mjs';
|
|
61
|
+
export { IBizPanelCtrlViewPageCaption } from './panel-component/panel-ctrl-view-page-caption/index.mjs';
|
|
61
62
|
export { AppRedirectView } from './view/app-redirect-view/app-redirect-view.mjs';
|
|
62
63
|
export { IBizView } from './view/common/index.mjs';
|
|
63
64
|
export { TodoRedirect } from './view/todo-redirect/todo-redirect.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/panel-component/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/panel-component/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC"}
|
|
@@ -14,6 +14,7 @@ export { IBizPanelTabPage } from './panel-tab-page/index.mjs';
|
|
|
14
14
|
export { IBizPanelItemRender } from './panel-item-render/index.mjs';
|
|
15
15
|
export { IBizTeleportPlaceholder } from './teleport-placeholder/index.mjs';
|
|
16
16
|
export { IBizPanelContainerTabs } from './panel-container-tabs/index.mjs';
|
|
17
|
+
export { IBizPanelCtrlViewPageCaption } from './panel-ctrl-view-page-caption/index.mjs';
|
|
17
18
|
export { PanelContainerState } from './panel-container/panel-container.state.mjs';
|
|
18
19
|
export { PanelContainerController } from './panel-container/panel-container.controller.mjs';
|
|
19
20
|
export { PanelCtrlPosController } from './panel-ctrl-pos/panel-ctrl-pos.controller.mjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-panel-container{width:100%;height:100%}.ibiz-panel-container>.ibiz-row{height:100%;overflow
|
|
1
|
+
.ibiz-panel-container{--ibiz-panel-scroll:auto;width:100%;height:100%}.ibiz-panel-container>.ibiz-row{height:100%;overflow:hidden var(--ibiz-panel-scroll)}.ibiz-panel-container.is-hidden{display:none}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare const IBizPanelCtrlViewPageCaption: import("../../util").TypeWithInstall<import("vue").DefineComponent<{
|
|
2
|
+
modelData: {
|
|
3
|
+
type: import("vue").PropType<import("@ibiz/model-core").IPanelItem>;
|
|
4
|
+
required: true;
|
|
5
|
+
};
|
|
6
|
+
controller: {
|
|
7
|
+
type: import("vue").PropType<import("./panel-ctrl-view-page-caption.controller").PanelCtrlViewPageCaptionController>;
|
|
8
|
+
required: true;
|
|
9
|
+
};
|
|
10
|
+
}, {
|
|
11
|
+
ns: import("@ibiz-template/core").Namespace;
|
|
12
|
+
classArr: import("vue").ComputedRef<(string | false)[]>;
|
|
13
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
14
|
+
modelData: {
|
|
15
|
+
type: import("vue").PropType<import("@ibiz/model-core").IPanelItem>;
|
|
16
|
+
required: true;
|
|
17
|
+
};
|
|
18
|
+
controller: {
|
|
19
|
+
type: import("vue").PropType<import("./panel-ctrl-view-page-caption.controller").PanelCtrlViewPageCaptionController>;
|
|
20
|
+
required: true;
|
|
21
|
+
};
|
|
22
|
+
}>>, {}, {}>>;
|
|
23
|
+
export default IBizPanelCtrlViewPageCaption;
|
|
24
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/panel-component/panel-ctrl-view-page-caption/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;aASxC,CAAC;AAEF,eAAe,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { registerPanelItemProvider } from '@ibiz-template/runtime';
|
|
2
|
+
import '../../util/index.mjs';
|
|
3
|
+
import { PanelCtrlViewPageCaption } from './panel-ctrl-view-page-caption.mjs';
|
|
4
|
+
import { PanelCtrlViewPageProvider } from './panel-ctrl-view-page-caption.provider.mjs';
|
|
5
|
+
import { withInstall } from '../../util/install.mjs';
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
const IBizPanelCtrlViewPageCaption = withInstall(
|
|
9
|
+
PanelCtrlViewPageCaption,
|
|
10
|
+
function(v) {
|
|
11
|
+
v.component(PanelCtrlViewPageCaption.name, PanelCtrlViewPageCaption);
|
|
12
|
+
registerPanelItemProvider(
|
|
13
|
+
"CTRLPOS_VIEW_PAGECAPTION",
|
|
14
|
+
() => new PanelCtrlViewPageProvider()
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
export { IBizPanelCtrlViewPageCaption, IBizPanelCtrlViewPageCaption as default };
|
package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.controller.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { IPanelItemState, PanelItemController } from '@ibiz-template/runtime';
|
|
2
|
+
interface viewPagecaptionState extends IPanelItemState {
|
|
3
|
+
/**
|
|
4
|
+
* 标题
|
|
5
|
+
*
|
|
6
|
+
* @type {string}
|
|
7
|
+
* @memberof viewPagecaptionState
|
|
8
|
+
*/
|
|
9
|
+
caption: string;
|
|
10
|
+
}
|
|
11
|
+
export declare class PanelCtrlViewPageCaptionController extends PanelItemController {
|
|
12
|
+
/**
|
|
13
|
+
*状态
|
|
14
|
+
*
|
|
15
|
+
* @type {viewPagecaptionState}
|
|
16
|
+
* @memberof PanelCtrlViewPageCaptionController
|
|
17
|
+
*/
|
|
18
|
+
state: viewPagecaptionState;
|
|
19
|
+
/**
|
|
20
|
+
* 初始化
|
|
21
|
+
*
|
|
22
|
+
* @protected
|
|
23
|
+
* @return {*} {Promise<void>}
|
|
24
|
+
* @memberof PanelCtrlViewPageCaptionController
|
|
25
|
+
*/
|
|
26
|
+
protected onInit(): Promise<void>;
|
|
27
|
+
}
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=panel-ctrl-view-page-caption.controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel-ctrl-view-page-caption.controller.d.ts","sourceRoot":"","sources":["../../../src/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE9E,UAAU,oBAAqB,SAAQ,eAAe;IACpD;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,kCAAmC,SAAQ,mBAAmB;IACzE;;;;;OAKG;IACH,KAAK,EAAG,oBAAoB,CAAC;IAE7B;;;;;;OAMG;cACa,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAYxC"}
|
package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.controller.mjs
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { PanelItemController } from '@ibiz-template/runtime';
|
|
2
|
+
|
|
3
|
+
"use strict";
|
|
4
|
+
class PanelCtrlViewPageCaptionController extends PanelItemController {
|
|
5
|
+
/**
|
|
6
|
+
* 初始化
|
|
7
|
+
*
|
|
8
|
+
* @protected
|
|
9
|
+
* @return {*} {Promise<void>}
|
|
10
|
+
* @memberof PanelCtrlViewPageCaptionController
|
|
11
|
+
*/
|
|
12
|
+
async onInit() {
|
|
13
|
+
await super.onInit();
|
|
14
|
+
this.state.caption = this.panel.view.model.caption || "";
|
|
15
|
+
this.panel.view.evt.on(
|
|
16
|
+
"onViewInfoChange",
|
|
17
|
+
({ caption: _caption, dataInfo }) => {
|
|
18
|
+
this.state.caption = "".concat(this.panel.view.model.caption).concat(dataInfo ? "-".concat(dataInfo) : "");
|
|
19
|
+
}
|
|
20
|
+
);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export { PanelCtrlViewPageCaptionController };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { PropType } from 'vue';
|
|
2
|
+
import { PanelCtrlViewPageCaptionController } from './panel-ctrl-view-page-caption.controller';
|
|
3
|
+
export declare const PanelCtrlViewPageCaption: import("vue").DefineComponent<{
|
|
4
|
+
modelData: {
|
|
5
|
+
type: PropType<import("@ibiz/model-core").IPanelItem>;
|
|
6
|
+
required: true;
|
|
7
|
+
};
|
|
8
|
+
controller: {
|
|
9
|
+
type: PropType<PanelCtrlViewPageCaptionController>;
|
|
10
|
+
required: true;
|
|
11
|
+
};
|
|
12
|
+
}, {
|
|
13
|
+
ns: import("@ibiz-template/core").Namespace;
|
|
14
|
+
classArr: import("vue").ComputedRef<(string | false)[]>;
|
|
15
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
16
|
+
modelData: {
|
|
17
|
+
type: PropType<import("@ibiz/model-core").IPanelItem>;
|
|
18
|
+
required: true;
|
|
19
|
+
};
|
|
20
|
+
controller: {
|
|
21
|
+
type: PropType<PanelCtrlViewPageCaptionController>;
|
|
22
|
+
required: true;
|
|
23
|
+
};
|
|
24
|
+
}>>, {}, {}>;
|
|
25
|
+
//# sourceMappingURL=panel-ctrl-view-page-caption.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel-ctrl-view-page-caption.d.ts","sourceRoot":"","sources":["../../../src/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.tsx"],"names":[],"mappings":"AACA,OAAO,EAA6B,QAAQ,EAAE,MAAM,KAAK,CAAC;AAE1D,OAAO,EAAE,kCAAkC,EAAE,MAAM,2CAA2C,CAAC;AAE/F,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;YAkDnC,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { defineComponent, computed, createVNode } from 'vue';
|
|
2
|
+
import '../../use/index.mjs';
|
|
3
|
+
import { useNamespace } from '../../use/namespace/namespace.mjs';
|
|
4
|
+
|
|
5
|
+
"use strict";
|
|
6
|
+
const PanelCtrlViewPageCaption = /* @__PURE__ */ defineComponent({
|
|
7
|
+
name: "IBizPanelCtrlViewPageCaption",
|
|
8
|
+
props: {
|
|
9
|
+
modelData: {
|
|
10
|
+
type: Object,
|
|
11
|
+
required: true
|
|
12
|
+
},
|
|
13
|
+
controller: {
|
|
14
|
+
type: Object,
|
|
15
|
+
required: true
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
setup(props) {
|
|
19
|
+
const ns = useNamespace("panel-ctrl-view-page-caption");
|
|
20
|
+
const classArr = computed(() => {
|
|
21
|
+
const {
|
|
22
|
+
id
|
|
23
|
+
} = props.modelData;
|
|
24
|
+
const result = [ns.b(), ns.m(id)];
|
|
25
|
+
result.push(...props.controller.containerClass);
|
|
26
|
+
return result;
|
|
27
|
+
});
|
|
28
|
+
return {
|
|
29
|
+
ns,
|
|
30
|
+
classArr
|
|
31
|
+
};
|
|
32
|
+
},
|
|
33
|
+
render() {
|
|
34
|
+
let editor = null;
|
|
35
|
+
if (this.controller.data) {
|
|
36
|
+
editor = createVNode("span", {
|
|
37
|
+
"class": this.ns.b("content")
|
|
38
|
+
}, [this.controller.state.caption]);
|
|
39
|
+
}
|
|
40
|
+
return createVNode("div", {
|
|
41
|
+
"class": this.classArr,
|
|
42
|
+
"onClick": () => {
|
|
43
|
+
this.controller.onClick();
|
|
44
|
+
}
|
|
45
|
+
}, [editor]);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
export { PanelCtrlViewPageCaption };
|
package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.provider.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IPanelItemProvider, PanelController, PanelItemController } from '@ibiz-template/runtime';
|
|
2
|
+
import { IPanelCtrlPos } from '@ibiz/model-core';
|
|
3
|
+
import { PanelCtrlViewPageCaptionController } from './panel-ctrl-view-page-caption.controller';
|
|
4
|
+
/**
|
|
5
|
+
* 面板控件占位适配器
|
|
6
|
+
*
|
|
7
|
+
* @author lxm
|
|
8
|
+
* @date 2022-09-19 22:09:03
|
|
9
|
+
* @export
|
|
10
|
+
* @class PanelCtrlPosProvider
|
|
11
|
+
* @implements {EditorProvider}
|
|
12
|
+
*/
|
|
13
|
+
export declare class PanelCtrlViewPageProvider implements IPanelItemProvider {
|
|
14
|
+
component: string;
|
|
15
|
+
createController(panelItem: IPanelCtrlPos, panel: PanelController, parent: PanelItemController | undefined): Promise<PanelCtrlViewPageCaptionController>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=panel-ctrl-view-page-caption.provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"panel-ctrl-view-page-caption.provider.d.ts","sourceRoot":"","sources":["../../../src/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,kCAAkC,EAAE,MAAM,2CAA2C,CAAC;AAE/F;;;;;;;;GAQG;AACH,qBAAa,yBAA0B,YAAW,kBAAkB;IAClE,SAAS,EAAE,MAAM,CAAkC;IAE7C,gBAAgB,CACpB,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,mBAAmB,GAAG,SAAS,GACtC,OAAO,CAAC,kCAAkC,CAAC;CAK/C"}
|
package/es/panel-component/panel-ctrl-view-page-caption/panel-ctrl-view-page-caption.provider.mjs
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { PanelCtrlViewPageCaptionController } from './panel-ctrl-view-page-caption.controller.mjs';
|
|
2
|
+
|
|
3
|
+
"use strict";
|
|
4
|
+
class PanelCtrlViewPageProvider {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.component = "IBizPanelCtrlViewPageCaption";
|
|
7
|
+
}
|
|
8
|
+
async createController(panelItem, panel, parent) {
|
|
9
|
+
const c = new PanelCtrlViewPageCaptionController(panelItem, panel, parent);
|
|
10
|
+
await c.init();
|
|
11
|
+
return c;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export { PanelCtrlViewPageProvider };
|
|
@@ -22,7 +22,7 @@ export declare const IBizView: import("../../util").TypeWithInstall<import("vue"
|
|
|
22
22
|
ns: import("@ibiz-template/core").Namespace;
|
|
23
23
|
controls: import("@ibiz/model-core").IControl[];
|
|
24
24
|
teleportControls: import("@ibiz/model-core").IControl[];
|
|
25
|
-
viewClassNames: import("vue").ComputedRef<(string | undefined)[]>;
|
|
25
|
+
viewClassNames: import("vue").ComputedRef<(string | string[] | undefined)[]>;
|
|
26
26
|
onLayoutPanelCreated: (controller: import("@ibiz-template/runtime").IViewLayoutPanelController) => void;
|
|
27
27
|
getCtrlProps: (ctrl: import("@ibiz/model-core").IControl, slotProps?: IData) => IParams;
|
|
28
28
|
renderControl: (ctrl: import("@ibiz/model-core").IControl, slotProps?: IData) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
package/es/view/common/view.d.ts
CHANGED
|
@@ -26,7 +26,7 @@ export declare const View: import("vue").DefineComponent<{
|
|
|
26
26
|
ns: import("@ibiz-template/core").Namespace;
|
|
27
27
|
controls: IControl[];
|
|
28
28
|
teleportControls: IControl[];
|
|
29
|
-
viewClassNames: import("vue").ComputedRef<(string | undefined)[]>;
|
|
29
|
+
viewClassNames: import("vue").ComputedRef<(string | string[] | undefined)[]>;
|
|
30
30
|
onLayoutPanelCreated: (controller: IViewLayoutPanelController) => void;
|
|
31
31
|
getCtrlProps: (ctrl: IControl, slotProps?: IData) => IParams;
|
|
32
32
|
renderControl: (ctrl: IControl, slotProps?: IData) => VNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/view/common/view.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,MAAM,EACN,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAGL,QAAQ,EAER,KAAK,EAIN,MAAM,KAAK,CAAC;AACb,OAAO,aAAa,CAAC;AAGrB,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/view/common/view.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,MAAM,EACN,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAGL,QAAQ,EAER,KAAK,EAIN,MAAM,KAAK,CAAC;AACb,OAAO,aAAa,CAAC;AAGrB,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;uCAuDC,0BAA0B,KACrC,IAAI;yBAmBqB,QAAQ,cAAa,KAAK,KAAQ,OAAO;0BAkBxC,QAAQ,cAAa,KAAK,KAAQ,KAAK;+BA/DlC,QAAQ,KAAG,MAAM,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;MAuLjE,CAAC"}
|
package/es/view/common/view.mjs
CHANGED
|
@@ -70,7 +70,7 @@ const View = /* @__PURE__ */ defineComponent({
|
|
|
70
70
|
} = c.model;
|
|
71
71
|
const typeClass = viewType.toLowerCase();
|
|
72
72
|
const sysCssName = sysCss == null ? void 0 : sysCss.cssName;
|
|
73
|
-
const viewClassNames = computed(() => [ns.b(), ns.b(typeClass), ns.m(codeName), sysCssName, c.state.viewMessages.TOP ? "has-top-message" : "", c.state.viewMessages.BOTTOM ? "has-bottom-message" : ""]);
|
|
73
|
+
const viewClassNames = computed(() => [ns.b(), ns.b(typeClass), ns.m(codeName), sysCssName, c.state.viewMessages.TOP ? "has-top-message" : "", c.state.viewMessages.BOTTOM ? "has-bottom-message" : "", c.state.presetClassList]);
|
|
74
74
|
const onLayoutPanelCreated = (controller) => {
|
|
75
75
|
c.setLayoutPanel(controller);
|
|
76
76
|
};
|
|
@@ -27,7 +27,9 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
27
27
|
type: String
|
|
28
28
|
}
|
|
29
29
|
},
|
|
30
|
-
setup(props
|
|
30
|
+
setup(props, {
|
|
31
|
+
attrs
|
|
32
|
+
}) {
|
|
31
33
|
const ns = namespace.useNamespace("view-shell");
|
|
32
34
|
const isComplete = vue.ref(false);
|
|
33
35
|
const errMsg = vue.ref("");
|
|
@@ -36,6 +38,7 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
36
38
|
const hasAuthority = vue.ref(true);
|
|
37
39
|
const context = vue.ref(props.context);
|
|
38
40
|
const params = vue.ref(props.params || {});
|
|
41
|
+
let dynaViewCacheKey = "";
|
|
39
42
|
vue.watch(() => ({
|
|
40
43
|
context: props.context,
|
|
41
44
|
params: props.params
|
|
@@ -78,6 +81,13 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
78
81
|
return checkResult;
|
|
79
82
|
};
|
|
80
83
|
let viewModel;
|
|
84
|
+
const getDynaViewCacheKey = (args) => {
|
|
85
|
+
const copyArgs = ramda.clone(args);
|
|
86
|
+
if (copyArgs.srfdatatype) {
|
|
87
|
+
delete copyArgs.srfdatatype;
|
|
88
|
+
}
|
|
89
|
+
return JSON.stringify(copyArgs);
|
|
90
|
+
};
|
|
81
91
|
const initViewModel = async () => {
|
|
82
92
|
if (props.modelData) {
|
|
83
93
|
viewModel = props.modelData;
|
|
@@ -102,7 +112,7 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
102
112
|
}));
|
|
103
113
|
}
|
|
104
114
|
const loadModelParams = await runtime.calcDynaSysParams(appDataEntityId, context.value, {
|
|
105
|
-
viewParams: params,
|
|
115
|
+
viewParams: params.value,
|
|
106
116
|
appId: viewModel.appId
|
|
107
117
|
});
|
|
108
118
|
if (params.value.srfdatatype) {
|
|
@@ -144,7 +154,15 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
144
154
|
}
|
|
145
155
|
}
|
|
146
156
|
}
|
|
157
|
+
const curDynaViewCacheKey = getDynaViewCacheKey(loadModelParams);
|
|
158
|
+
if (curDynaViewCacheKey === dynaViewCacheKey) {
|
|
159
|
+
setTimeout(() => {
|
|
160
|
+
isComplete.value = true;
|
|
161
|
+
});
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
147
164
|
viewModelData.value = await ibiz.hub.loadAppView(viewModel.appId, viewModel.id, loadModelParams);
|
|
165
|
+
dynaViewCacheKey = getDynaViewCacheKey(loadModelParams);
|
|
148
166
|
} else {
|
|
149
167
|
viewModelData.value = viewModel;
|
|
150
168
|
}
|
|
@@ -168,6 +186,11 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
168
186
|
} = redrawData;
|
|
169
187
|
Object.assign(context.value, redrawData.context);
|
|
170
188
|
Object.assign(params.value, redrawData.params);
|
|
189
|
+
const modal = attrs.modal;
|
|
190
|
+
if (modal) {
|
|
191
|
+
modal.hooks.shouldDismiss.clear();
|
|
192
|
+
modal.hooks.beforeDismiss.clear();
|
|
193
|
+
}
|
|
171
194
|
if (isReloadModel) {
|
|
172
195
|
await init();
|
|
173
196
|
} else {
|
package/lib/index.cjs
CHANGED
|
@@ -60,14 +60,15 @@ var index$d = require('./panel-component/panel-item-render/index.cjs');
|
|
|
60
60
|
var teleportPlaceholder_provider = require('./panel-component/teleport-placeholder/teleport-placeholder.provider.cjs');
|
|
61
61
|
var index$e = require('./panel-component/teleport-placeholder/index.cjs');
|
|
62
62
|
var index$f = require('./panel-component/panel-container-tabs/index.cjs');
|
|
63
|
+
var index$g = require('./panel-component/panel-ctrl-view-page-caption/index.cjs');
|
|
63
64
|
var appRedirectView = require('./view/app-redirect-view/app-redirect-view.cjs');
|
|
64
|
-
var index$
|
|
65
|
+
var index$h = require('./view/common/index.cjs');
|
|
65
66
|
var todoRedirect = require('./view/todo-redirect/todo-redirect.cjs');
|
|
66
|
-
var index$
|
|
67
|
-
var index$
|
|
68
|
-
var index$
|
|
69
|
-
var index$
|
|
70
|
-
var index$
|
|
67
|
+
var index$i = require('./view/portal-view/index.cjs');
|
|
68
|
+
var index$j = require('./view/de-redirect-view/index.cjs');
|
|
69
|
+
var index$k = require('./view/html-view/index.cjs');
|
|
70
|
+
var index$l = require('./control/panel/view-layout-panel/index.cjs');
|
|
71
|
+
var index$m = require('./control/panel/panel/index.cjs');
|
|
71
72
|
var pluginFactory = require('./plugin/plugin-factory/plugin-factory.cjs');
|
|
72
73
|
var clickOutside = require('./use/click-outside/click-outside.cjs');
|
|
73
74
|
var useControlController = require('./use/control/use-control-controller/use-control-controller.cjs');
|
|
@@ -75,11 +76,11 @@ var event = require('./use/event/event.cjs');
|
|
|
75
76
|
var focusBlur = require('./use/focus-blur/focus-blur.cjs');
|
|
76
77
|
var namespace = require('./use/namespace/namespace.cjs');
|
|
77
78
|
var route = require('./use/route/route.cjs');
|
|
78
|
-
var index$
|
|
79
|
+
var index$n = require('./use/util/index.cjs');
|
|
79
80
|
var useViewController = require('./use/view/use-view-controller/use-view-controller.cjs');
|
|
80
81
|
var vue = require('./use/vue/vue.cjs');
|
|
81
82
|
var codelistListen = require('./use/codeList-listen/codelist-listen.cjs');
|
|
82
|
-
var index$
|
|
83
|
+
var index$o = require('./use/storage/index.cjs');
|
|
83
84
|
var autofocusBlur = require('./use/autofocus-blur/autofocus-blur.cjs');
|
|
84
85
|
var overlayContainer = require('./util/overlay-container/overlay-container.cjs');
|
|
85
86
|
var overlayPopoverContainer = require('./util/overlay-popover-container/overlay-popover-container.cjs');
|
|
@@ -92,7 +93,7 @@ var render = require('./util/render/render.cjs');
|
|
|
92
93
|
var overlayViewUtil = require('./util/overlay-view-util/overlay-view-util.cjs');
|
|
93
94
|
var appStore = require('./util/store/app-store/app-store.cjs');
|
|
94
95
|
var uiStore = require('./util/store/ui-store/ui-store.cjs');
|
|
95
|
-
var index$
|
|
96
|
+
var index$p = require('./util/store/index.cjs');
|
|
96
97
|
var common = require('./props/common.cjs');
|
|
97
98
|
var textBox = require('./props/editor/text-box.cjs');
|
|
98
99
|
var span = require('./props/editor/span.cjs');
|
|
@@ -119,8 +120,8 @@ var markdown = require('./props/editor/markdown.cjs');
|
|
|
119
120
|
var array = require('./props/editor/array.cjs');
|
|
120
121
|
var cascader = require('./props/editor/cascader.cjs');
|
|
121
122
|
var colorPicker = require('./props/editor/color-picker.cjs');
|
|
122
|
-
var index$
|
|
123
|
-
var index$
|
|
123
|
+
var index$q = require('./locale/en/index.cjs');
|
|
124
|
+
var index$r = require('./locale/zh-CN/index.cjs');
|
|
124
125
|
|
|
125
126
|
"use strict";
|
|
126
127
|
|
|
@@ -173,14 +174,15 @@ exports.IBizPanelItemRender = index$d.IBizPanelItemRender;
|
|
|
173
174
|
exports.TeleportPlaceholderProvider = teleportPlaceholder_provider.TeleportPlaceholderProvider;
|
|
174
175
|
exports.IBizTeleportPlaceholder = index$e.IBizTeleportPlaceholder;
|
|
175
176
|
exports.IBizPanelContainerTabs = index$f.IBizPanelContainerTabs;
|
|
177
|
+
exports.IBizPanelCtrlViewPageCaption = index$g.IBizPanelCtrlViewPageCaption;
|
|
176
178
|
exports.AppRedirectView = appRedirectView.AppRedirectView;
|
|
177
|
-
exports.IBizView = index$
|
|
179
|
+
exports.IBizView = index$h.IBizView;
|
|
178
180
|
exports.TodoRedirect = todoRedirect.TodoRedirect;
|
|
179
|
-
exports.IBizPortalView = index$
|
|
180
|
-
exports.IBizDeRedirectView = index$
|
|
181
|
-
exports.IBizHtmlView = index$
|
|
182
|
-
exports.IBizViewLayoutPanelControl = index$
|
|
183
|
-
exports.IBizPanelControl = index$
|
|
181
|
+
exports.IBizPortalView = index$i.IBizPortalView;
|
|
182
|
+
exports.IBizDeRedirectView = index$j.IBizDeRedirectView;
|
|
183
|
+
exports.IBizHtmlView = index$k.IBizHtmlView;
|
|
184
|
+
exports.IBizViewLayoutPanelControl = index$l.IBizViewLayoutPanelControl;
|
|
185
|
+
exports.IBizPanelControl = index$m.IBizPanelControl;
|
|
184
186
|
exports.PluginFactory = pluginFactory.PluginFactory;
|
|
185
187
|
exports.useClickOutside = clickOutside.useClickOutside;
|
|
186
188
|
exports.useControlController = useControlController.useControlController;
|
|
@@ -189,8 +191,8 @@ exports.useFocusAndBlur = focusBlur.useFocusAndBlur;
|
|
|
189
191
|
exports.useNamespace = namespace.useNamespace;
|
|
190
192
|
exports.useRouteKey = route.useRouteKey;
|
|
191
193
|
exports.useRouterQuery = route.useRouterQuery;
|
|
192
|
-
exports.useCtx = index$
|
|
193
|
-
exports.useMobCtx = index$
|
|
194
|
+
exports.useCtx = index$n.useCtx;
|
|
195
|
+
exports.useMobCtx = index$n.useMobCtx;
|
|
194
196
|
exports.useViewController = useViewController.useViewController;
|
|
195
197
|
exports.EmptyVNode = vue.EmptyVNode;
|
|
196
198
|
exports.getOrigin = vue.getOrigin;
|
|
@@ -201,7 +203,7 @@ exports.useForceTogether = vue.useForceTogether;
|
|
|
201
203
|
exports.useProps = vue.useProps;
|
|
202
204
|
exports.usePropsWatch = vue.usePropsWatch;
|
|
203
205
|
exports.useCodeListListen = codelistListen.useCodeListListen;
|
|
204
|
-
exports.useLocalCacheKey = index$
|
|
206
|
+
exports.useLocalCacheKey = index$o.useLocalCacheKey;
|
|
205
207
|
exports.useAutoFocusBlur = autofocusBlur.useAutoFocusBlur;
|
|
206
208
|
exports.OverlayContainer = overlayContainer.OverlayContainer;
|
|
207
209
|
exports.OverlayPopoverContainer = overlayPopoverContainer.OverlayPopoverContainer;
|
|
@@ -228,7 +230,7 @@ exports.openViewModal = overlayViewUtil.openViewModal;
|
|
|
228
230
|
exports.openViewPopover = overlayViewUtil.openViewPopover;
|
|
229
231
|
exports.useAppStore = appStore.useAppStore;
|
|
230
232
|
exports.useUIStore = uiStore.useUIStore;
|
|
231
|
-
exports.piniaInstance = index$
|
|
233
|
+
exports.piniaInstance = index$p.piniaInstance;
|
|
232
234
|
exports.RequiredProp = common.RequiredProp;
|
|
233
235
|
exports.getGridInputIpProps = textBox.getGridInputIpProps;
|
|
234
236
|
exports.getGridInputNumberProps = textBox.getGridInputNumberProps;
|
|
@@ -286,5 +288,5 @@ exports.getCascaderProps = cascader.getCascaderProps;
|
|
|
286
288
|
exports.getGridCascaderProps = cascader.getGridCascaderProps;
|
|
287
289
|
exports.getColorPickerProps = colorPicker.getColorPickerProps;
|
|
288
290
|
exports.getGridColorPickerProps = colorPicker.getGridColorPickerProps;
|
|
289
|
-
exports.en = index$
|
|
290
|
-
exports.zhCn = index$
|
|
291
|
+
exports.en = index$q.en;
|
|
292
|
+
exports.zhCn = index$r.zhCn;
|
|
@@ -16,6 +16,7 @@ var index$c = require('./panel-tab-page/index.cjs');
|
|
|
16
16
|
var index$d = require('./panel-item-render/index.cjs');
|
|
17
17
|
var index$e = require('./teleport-placeholder/index.cjs');
|
|
18
18
|
var index$f = require('./panel-container-tabs/index.cjs');
|
|
19
|
+
var index$g = require('./panel-ctrl-view-page-caption/index.cjs');
|
|
19
20
|
var panelContainer_state = require('./panel-container/panel-container.state.cjs');
|
|
20
21
|
var panelContainer_controller = require('./panel-container/panel-container.controller.cjs');
|
|
21
22
|
var panelCtrlPos_controller = require('./panel-ctrl-pos/panel-ctrl-pos.controller.cjs');
|
|
@@ -59,6 +60,7 @@ exports.IBizPanelTabPage = index$c.IBizPanelTabPage;
|
|
|
59
60
|
exports.IBizPanelItemRender = index$d.IBizPanelItemRender;
|
|
60
61
|
exports.IBizTeleportPlaceholder = index$e.IBizTeleportPlaceholder;
|
|
61
62
|
exports.IBizPanelContainerTabs = index$f.IBizPanelContainerTabs;
|
|
63
|
+
exports.IBizPanelCtrlViewPageCaption = index$g.IBizPanelCtrlViewPageCaption;
|
|
62
64
|
exports.PanelContainerState = panelContainer_state.PanelContainerState;
|
|
63
65
|
exports.PanelContainerController = panelContainer_controller.PanelContainerController;
|
|
64
66
|
exports.PanelCtrlPosController = panelCtrlPos_controller.PanelCtrlPosController;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-panel-container{width:100%;height:100%}.ibiz-panel-container>.ibiz-row{height:100%;overflow
|
|
1
|
+
.ibiz-panel-container{--ibiz-panel-scroll:auto;width:100%;height:100%}.ibiz-panel-container>.ibiz-row{height:100%;overflow:hidden var(--ibiz-panel-scroll)}.ibiz-panel-container.is-hidden{display:none}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var runtime = require('@ibiz-template/runtime');
|
|
6
|
+
require('../../util/index.cjs');
|
|
7
|
+
var panelCtrlViewPageCaption = require('./panel-ctrl-view-page-caption.cjs');
|
|
8
|
+
var panelCtrlViewPageCaption_provider = require('./panel-ctrl-view-page-caption.provider.cjs');
|
|
9
|
+
var install = require('../../util/install.cjs');
|
|
10
|
+
|
|
11
|
+
"use strict";
|
|
12
|
+
const IBizPanelCtrlViewPageCaption = install.withInstall(
|
|
13
|
+
panelCtrlViewPageCaption.PanelCtrlViewPageCaption,
|
|
14
|
+
function(v) {
|
|
15
|
+
v.component(panelCtrlViewPageCaption.PanelCtrlViewPageCaption.name, panelCtrlViewPageCaption.PanelCtrlViewPageCaption);
|
|
16
|
+
runtime.registerPanelItemProvider(
|
|
17
|
+
"CTRLPOS_VIEW_PAGECAPTION",
|
|
18
|
+
() => new panelCtrlViewPageCaption_provider.PanelCtrlViewPageProvider()
|
|
19
|
+
);
|
|
20
|
+
}
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
exports.IBizPanelCtrlViewPageCaption = IBizPanelCtrlViewPageCaption;
|
|
24
|
+
exports.default = IBizPanelCtrlViewPageCaption;
|