@ibiz-template/mob-vue3-components 0.7.41-alpha.12 → 0.7.41-alpha.13
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-yGM1h2Ma.js → index-TTGYeV0q.js} +13 -13
- package/dist/index-TTGYeV0q.js.map +1 -0
- package/dist/index.min.css +3 -3
- package/dist/index.system.min.js +1 -1
- package/dist/{quill-editor-Nndlb9WE.js → quill-editor-VqApoQJq.js} +2 -2
- package/dist/{quill-editor-Nndlb9WE.js.map → quill-editor-VqApoQJq.js.map} +1 -1
- package/dist/{quill-editor-preview-GUdcFmjn.js → quill-editor-preview-G0MpMJzC.js} +2 -2
- package/dist/{quill-editor-preview-GUdcFmjn.js.map → quill-editor-preview-G0MpMJzC.js.map} +1 -1
- package/dist/{quill-7fiycnP7.js → quill-wfN-3C_3.js} +2 -2
- package/dist/{quill-7fiycnP7.js.map → quill-wfN-3C_3.js.map} +1 -1
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.controller.d.ts +54 -0
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.controller.mjs +76 -0
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.css +1 -0
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.d.ts +43 -0
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.mjs +80 -0
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.provider.d.ts +14 -0
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.provider.mjs +21 -0
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.state.d.ts +10 -0
- package/es/panel-component/index-blank-placeholder/index-blank-placeholder.state.mjs +7 -0
- package/es/panel-component/index-blank-placeholder/index.d.ts +25 -0
- package/es/panel-component/index-blank-placeholder/index.mjs +19 -0
- package/es/panel-component/index.mjs +2 -0
- package/lib/panel-component/index-blank-placeholder/index-blank-placeholder.cjs +82 -0
- package/lib/panel-component/index-blank-placeholder/index-blank-placeholder.controller.cjs +78 -0
- package/lib/panel-component/index-blank-placeholder/index-blank-placeholder.css +1 -0
- package/lib/panel-component/index-blank-placeholder/index-blank-placeholder.provider.cjs +23 -0
- package/lib/panel-component/index-blank-placeholder/index-blank-placeholder.state.cjs +9 -0
- package/lib/panel-component/index-blank-placeholder/index.cjs +25 -0
- package/lib/panel-component/index.cjs +2 -0
- package/package.json +5 -5
- package/dist/index-yGM1h2Ma.js.map +0 -1
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { AppMenuController, PanelItemController } from '@ibiz-template/runtime';
|
|
2
|
+
import { IPanelContainer } from '@ibiz/model-core';
|
|
3
|
+
import { IndexBlankPlaceholderState } from './index-blank-placeholder.state';
|
|
4
|
+
import { NavPosIndexController } from '../nav-pos-index';
|
|
5
|
+
/**
|
|
6
|
+
* 首页空白占位控制器
|
|
7
|
+
*
|
|
8
|
+
* @export
|
|
9
|
+
* @class IndexBlankPlaceholderController
|
|
10
|
+
* @extends {PanelItemController<IPanelContainer>}
|
|
11
|
+
*/
|
|
12
|
+
export declare class IndexBlankPlaceholderController extends PanelItemController<IPanelContainer> {
|
|
13
|
+
state: IndexBlankPlaceholderState;
|
|
14
|
+
protected createState(): IndexBlankPlaceholderState;
|
|
15
|
+
/**
|
|
16
|
+
* @description 当前视图路由层级
|
|
17
|
+
* @exposedoc
|
|
18
|
+
* @readonly
|
|
19
|
+
* @type {(number | undefined)}
|
|
20
|
+
* @memberof IndexBlankPlaceholderController
|
|
21
|
+
*/
|
|
22
|
+
get routeDepth(): number | undefined;
|
|
23
|
+
/**
|
|
24
|
+
* @description 应用菜单
|
|
25
|
+
* @exposedoc
|
|
26
|
+
* @readonly
|
|
27
|
+
* @type {(AppMenuController | undefined)}
|
|
28
|
+
* @memberof IndexBlankPlaceholderController
|
|
29
|
+
*/
|
|
30
|
+
get appmenu(): AppMenuController | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* @description 首页导航栏
|
|
33
|
+
* @exposedoc
|
|
34
|
+
* @readonly
|
|
35
|
+
* @type {(NavPosIndexController | undefined)}
|
|
36
|
+
* @memberof IndexBlankPlaceholderController
|
|
37
|
+
*/
|
|
38
|
+
get navPos(): NavPosIndexController | undefined;
|
|
39
|
+
/**
|
|
40
|
+
* 初始化
|
|
41
|
+
*
|
|
42
|
+
* @protected
|
|
43
|
+
* @return {*} {Promise<void>}
|
|
44
|
+
* @memberof IndexBlankPlaceholderController
|
|
45
|
+
*/
|
|
46
|
+
protected onInit(): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* @description 设置显示状态
|
|
49
|
+
* @exposedoc
|
|
50
|
+
* @param {boolean} state
|
|
51
|
+
* @memberof IndexBlankPlaceholderController
|
|
52
|
+
*/
|
|
53
|
+
setVisible(state: boolean): void;
|
|
54
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { PanelItemController } from '@ibiz-template/runtime';
|
|
2
|
+
import { IndexBlankPlaceholderState } from './index-blank-placeholder.state.mjs';
|
|
3
|
+
|
|
4
|
+
"use strict";
|
|
5
|
+
class IndexBlankPlaceholderController extends PanelItemController {
|
|
6
|
+
createState() {
|
|
7
|
+
var _a;
|
|
8
|
+
return new IndexBlankPlaceholderState((_a = this.parent) == null ? void 0 : _a.state);
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* @description 当前视图路由层级
|
|
12
|
+
* @exposedoc
|
|
13
|
+
* @readonly
|
|
14
|
+
* @type {(number | undefined)}
|
|
15
|
+
* @memberof IndexBlankPlaceholderController
|
|
16
|
+
*/
|
|
17
|
+
get routeDepth() {
|
|
18
|
+
return this.panel.view.modal.routeDepth;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* @description 应用菜单
|
|
22
|
+
* @exposedoc
|
|
23
|
+
* @readonly
|
|
24
|
+
* @type {(AppMenuController | undefined)}
|
|
25
|
+
* @memberof IndexBlankPlaceholderController
|
|
26
|
+
*/
|
|
27
|
+
get appmenu() {
|
|
28
|
+
return this.panel.getController("appmenu");
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* @description 首页导航栏
|
|
32
|
+
* @exposedoc
|
|
33
|
+
* @readonly
|
|
34
|
+
* @type {(NavPosIndexController | undefined)}
|
|
35
|
+
* @memberof IndexBlankPlaceholderController
|
|
36
|
+
*/
|
|
37
|
+
get navPos() {
|
|
38
|
+
return this.panel.panelItems.nav_pos_index;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* 初始化
|
|
42
|
+
*
|
|
43
|
+
* @protected
|
|
44
|
+
* @return {*} {Promise<void>}
|
|
45
|
+
* @memberof IndexBlankPlaceholderController
|
|
46
|
+
*/
|
|
47
|
+
async onInit() {
|
|
48
|
+
await super.onInit();
|
|
49
|
+
this.state.keepAlive = true;
|
|
50
|
+
this.state.visible = false;
|
|
51
|
+
this.panel.evt.on("onMounted", async () => {
|
|
52
|
+
var _a;
|
|
53
|
+
if (this.navPos)
|
|
54
|
+
this.navPos.state.keepAlive = true;
|
|
55
|
+
const appViewId = (_a = this.appmenu) == null ? void 0 : _a.getDefaultOpenView();
|
|
56
|
+
if (appViewId) {
|
|
57
|
+
const appView = await ibiz.hub.config.view.get(appViewId);
|
|
58
|
+
const { openMode = "INDEXVIEWTAB" } = appView;
|
|
59
|
+
this.state.visible = !openMode.startsWith("INDEXVIEWTAB");
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* @description 设置显示状态
|
|
65
|
+
* @exposedoc
|
|
66
|
+
* @param {boolean} state
|
|
67
|
+
* @memberof IndexBlankPlaceholderController
|
|
68
|
+
*/
|
|
69
|
+
setVisible(state) {
|
|
70
|
+
this.state.visible = state;
|
|
71
|
+
if (this.navPos)
|
|
72
|
+
this.navPos.state.visible = !state;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export { IndexBlankPlaceholderController };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-index-blank-placeholder{width:100%;height:100%}.ibiz-index-blank-placeholder>.ibiz-row{height:100%;overflow:hidden auto}.ibiz-index-blank-placeholder.is-hidden{display:none}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { IPanelContainer } from '@ibiz/model-core';
|
|
2
|
+
import { PropType } from 'vue';
|
|
3
|
+
import { IndexBlankPlaceholderController } from './index-blank-placeholder.controller';
|
|
4
|
+
import './index-blank-placeholder.scss';
|
|
5
|
+
/**
|
|
6
|
+
* 空白占位
|
|
7
|
+
* @primary
|
|
8
|
+
* @description 首页空白占位组件,当菜单未进行导航时,首页显示此容器内的内容。
|
|
9
|
+
*/
|
|
10
|
+
export declare const IndexBlankPlaceholder: import("vue").DefineComponent<{
|
|
11
|
+
/**
|
|
12
|
+
* @description 空白占位模型数据
|
|
13
|
+
*/
|
|
14
|
+
modelData: {
|
|
15
|
+
type: PropType<IPanelContainer>;
|
|
16
|
+
required: true;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* @description 空白占位控制器
|
|
20
|
+
*/
|
|
21
|
+
controller: {
|
|
22
|
+
type: PropType<IndexBlankPlaceholderController>;
|
|
23
|
+
required: true;
|
|
24
|
+
};
|
|
25
|
+
}, {
|
|
26
|
+
ns: import("@ibiz-template/core").Namespace;
|
|
27
|
+
classArr: import("vue").ComputedRef<(string | false)[]>;
|
|
28
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
29
|
+
/**
|
|
30
|
+
* @description 空白占位模型数据
|
|
31
|
+
*/
|
|
32
|
+
modelData: {
|
|
33
|
+
type: PropType<IPanelContainer>;
|
|
34
|
+
required: true;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* @description 空白占位控制器
|
|
38
|
+
*/
|
|
39
|
+
controller: {
|
|
40
|
+
type: PropType<IndexBlankPlaceholderController>;
|
|
41
|
+
required: true;
|
|
42
|
+
};
|
|
43
|
+
}>>, {}, {}>;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { isVNode, computed, resolveComponent, createVNode, defineComponent } from 'vue';
|
|
2
|
+
import { useNamespace, onRouteChange } from '@ibiz-template/vue3-util';
|
|
3
|
+
import './index-blank-placeholder.css';
|
|
4
|
+
|
|
5
|
+
"use strict";
|
|
6
|
+
function _isSlot(s) {
|
|
7
|
+
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
8
|
+
}
|
|
9
|
+
const IndexBlankPlaceholder = /* @__PURE__ */ defineComponent({
|
|
10
|
+
name: "IBizIndexBlankPlaceholder",
|
|
11
|
+
props: {
|
|
12
|
+
/**
|
|
13
|
+
* @description 空白占位模型数据
|
|
14
|
+
*/
|
|
15
|
+
modelData: {
|
|
16
|
+
type: Object,
|
|
17
|
+
required: true
|
|
18
|
+
},
|
|
19
|
+
/**
|
|
20
|
+
* @description 空白占位控制器
|
|
21
|
+
*/
|
|
22
|
+
controller: {
|
|
23
|
+
type: Object,
|
|
24
|
+
required: true
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
setup(props) {
|
|
28
|
+
const c = props.controller;
|
|
29
|
+
const ns = useNamespace("index-blank-placeholder");
|
|
30
|
+
const {
|
|
31
|
+
id
|
|
32
|
+
} = props.modelData;
|
|
33
|
+
const classArr = computed(() => {
|
|
34
|
+
let result = [ns.b(), ns.m(id)];
|
|
35
|
+
result = [...result, ...props.controller.containerClass, ns.is("hidden", !props.controller.state.visible)];
|
|
36
|
+
return result;
|
|
37
|
+
});
|
|
38
|
+
if (c.routeDepth) {
|
|
39
|
+
onRouteChange((args) => {
|
|
40
|
+
c.setVisible(!args.currentKey);
|
|
41
|
+
}, c.routeDepth + 1);
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
ns,
|
|
45
|
+
classArr
|
|
46
|
+
};
|
|
47
|
+
},
|
|
48
|
+
render() {
|
|
49
|
+
var _a, _b;
|
|
50
|
+
let _slot;
|
|
51
|
+
const defaultSlots = ((_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a)) || [];
|
|
52
|
+
const content = createVNode(resolveComponent("iBizRow"), {
|
|
53
|
+
"slot": "content",
|
|
54
|
+
"layout": this.modelData.layout
|
|
55
|
+
}, _isSlot(_slot = defaultSlots.map((slot) => {
|
|
56
|
+
const props = slot.props;
|
|
57
|
+
if (!props || !props.controller) {
|
|
58
|
+
return slot;
|
|
59
|
+
}
|
|
60
|
+
return createVNode(resolveComponent("iBizCol"), {
|
|
61
|
+
"layoutPos": props.modelData.layoutPos,
|
|
62
|
+
"state": props.controller.state
|
|
63
|
+
}, _isSlot(slot) ? slot : {
|
|
64
|
+
default: () => [slot]
|
|
65
|
+
});
|
|
66
|
+
})) ? _slot : {
|
|
67
|
+
default: () => [_slot]
|
|
68
|
+
});
|
|
69
|
+
return createVNode("div", {
|
|
70
|
+
"class": this.classArr,
|
|
71
|
+
"onClick": () => {
|
|
72
|
+
this.controller.onClick();
|
|
73
|
+
}
|
|
74
|
+
}, [this.controller.model.cssStyle ? createVNode("style", {
|
|
75
|
+
"type": "text/css"
|
|
76
|
+
}, [this.controller.model.cssStyle]) : null, content]);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
export { IndexBlankPlaceholder };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { IPanelItemProvider, PanelController, PanelItemController } from '@ibiz-template/runtime';
|
|
2
|
+
import { IPanelContainer } from '@ibiz/model-core';
|
|
3
|
+
import { IndexBlankPlaceholderController } from './index-blank-placeholder.controller';
|
|
4
|
+
/**
|
|
5
|
+
* 首页空白占位适配器
|
|
6
|
+
*
|
|
7
|
+
* @export
|
|
8
|
+
* @class IndexBlankPlaceholderProvider
|
|
9
|
+
* @implements {IPanelItemProvider}
|
|
10
|
+
*/
|
|
11
|
+
export declare class IndexBlankPlaceholderProvider implements IPanelItemProvider {
|
|
12
|
+
component: string;
|
|
13
|
+
createController(panelItem: IPanelContainer, panel: PanelController, parent: PanelItemController | undefined): Promise<IndexBlankPlaceholderController>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { IndexBlankPlaceholderController } from './index-blank-placeholder.controller.mjs';
|
|
2
|
+
|
|
3
|
+
"use strict";
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __publicField = (obj, key, value) => {
|
|
7
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
8
|
+
return value;
|
|
9
|
+
};
|
|
10
|
+
class IndexBlankPlaceholderProvider {
|
|
11
|
+
constructor() {
|
|
12
|
+
__publicField(this, "component", "IBizIndexBlankPlaceholder");
|
|
13
|
+
}
|
|
14
|
+
async createController(panelItem, panel, parent) {
|
|
15
|
+
const c = new IndexBlankPlaceholderController(panelItem, panel, parent);
|
|
16
|
+
await c.init();
|
|
17
|
+
return c;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export { IndexBlankPlaceholderProvider };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { IndexBlankPlaceholderController } from './index-blank-placeholder.controller';
|
|
2
|
+
export { IndexBlankPlaceholderController };
|
|
3
|
+
export declare const IBizIndexBlankPlaceholder: import("@ibiz-template/vue3-util").TypeWithInstall<import("vue").DefineComponent<{
|
|
4
|
+
modelData: {
|
|
5
|
+
type: import("vue").PropType<import("@ibiz/model-core").IPanelContainer>;
|
|
6
|
+
required: true;
|
|
7
|
+
};
|
|
8
|
+
controller: {
|
|
9
|
+
type: import("vue").PropType<IndexBlankPlaceholderController>;
|
|
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").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
16
|
+
modelData: {
|
|
17
|
+
type: import("vue").PropType<import("@ibiz/model-core").IPanelContainer>;
|
|
18
|
+
required: true;
|
|
19
|
+
};
|
|
20
|
+
controller: {
|
|
21
|
+
type: import("vue").PropType<IndexBlankPlaceholderController>;
|
|
22
|
+
required: true;
|
|
23
|
+
};
|
|
24
|
+
}>>, {}, {}>>;
|
|
25
|
+
export default IBizIndexBlankPlaceholder;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { registerPanelItemProvider } from '@ibiz-template/runtime';
|
|
2
|
+
import { withInstall } from '@ibiz-template/vue3-util';
|
|
3
|
+
import { IndexBlankPlaceholder } from './index-blank-placeholder.mjs';
|
|
4
|
+
import { IndexBlankPlaceholderProvider } from './index-blank-placeholder.provider.mjs';
|
|
5
|
+
export { IndexBlankPlaceholderController } from './index-blank-placeholder.controller.mjs';
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
const IBizIndexBlankPlaceholder = withInstall(
|
|
9
|
+
IndexBlankPlaceholder,
|
|
10
|
+
function(v) {
|
|
11
|
+
v.component(IndexBlankPlaceholder.name, IndexBlankPlaceholder);
|
|
12
|
+
registerPanelItemProvider(
|
|
13
|
+
"CONTAINER_INDEX_BLANK_PLACEHOLDER",
|
|
14
|
+
() => new IndexBlankPlaceholderProvider()
|
|
15
|
+
);
|
|
16
|
+
}
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
export { IBizIndexBlankPlaceholder, IBizIndexBlankPlaceholder as default };
|
|
@@ -15,6 +15,7 @@ import { IBizMobAsyncAction } from './async-action/index.mjs';
|
|
|
15
15
|
import { IBizPanelButtonList } from './panel-button-list/index.mjs';
|
|
16
16
|
import { IBizAuthSso } from './auth-sso/index.mjs';
|
|
17
17
|
import { IBizPanelAppTitle } from './panel-app-title/index.mjs';
|
|
18
|
+
import { IBizIndexBlankPlaceholder } from './index-blank-placeholder/index.mjs';
|
|
18
19
|
|
|
19
20
|
"use strict";
|
|
20
21
|
const IBizPanelComponents = {
|
|
@@ -49,6 +50,7 @@ const IBizPanelComponents = {
|
|
|
49
50
|
v.use(IBizAuthSso);
|
|
50
51
|
v.use(IBizAuthWxmpQrcode);
|
|
51
52
|
v.use(IBizPanelAppTitle);
|
|
53
|
+
v.use(IBizIndexBlankPlaceholder);
|
|
52
54
|
}
|
|
53
55
|
};
|
|
54
56
|
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var vue = require('vue');
|
|
4
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
5
|
+
require('./index-blank-placeholder.css');
|
|
6
|
+
|
|
7
|
+
"use strict";
|
|
8
|
+
function _isSlot(s) {
|
|
9
|
+
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !vue.isVNode(s);
|
|
10
|
+
}
|
|
11
|
+
const IndexBlankPlaceholder = /* @__PURE__ */ vue.defineComponent({
|
|
12
|
+
name: "IBizIndexBlankPlaceholder",
|
|
13
|
+
props: {
|
|
14
|
+
/**
|
|
15
|
+
* @description 空白占位模型数据
|
|
16
|
+
*/
|
|
17
|
+
modelData: {
|
|
18
|
+
type: Object,
|
|
19
|
+
required: true
|
|
20
|
+
},
|
|
21
|
+
/**
|
|
22
|
+
* @description 空白占位控制器
|
|
23
|
+
*/
|
|
24
|
+
controller: {
|
|
25
|
+
type: Object,
|
|
26
|
+
required: true
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
setup(props) {
|
|
30
|
+
const c = props.controller;
|
|
31
|
+
const ns = vue3Util.useNamespace("index-blank-placeholder");
|
|
32
|
+
const {
|
|
33
|
+
id
|
|
34
|
+
} = props.modelData;
|
|
35
|
+
const classArr = vue.computed(() => {
|
|
36
|
+
let result = [ns.b(), ns.m(id)];
|
|
37
|
+
result = [...result, ...props.controller.containerClass, ns.is("hidden", !props.controller.state.visible)];
|
|
38
|
+
return result;
|
|
39
|
+
});
|
|
40
|
+
if (c.routeDepth) {
|
|
41
|
+
vue3Util.onRouteChange((args) => {
|
|
42
|
+
c.setVisible(!args.currentKey);
|
|
43
|
+
}, c.routeDepth + 1);
|
|
44
|
+
}
|
|
45
|
+
return {
|
|
46
|
+
ns,
|
|
47
|
+
classArr
|
|
48
|
+
};
|
|
49
|
+
},
|
|
50
|
+
render() {
|
|
51
|
+
var _a, _b;
|
|
52
|
+
let _slot;
|
|
53
|
+
const defaultSlots = ((_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a)) || [];
|
|
54
|
+
const content = vue.createVNode(vue.resolveComponent("iBizRow"), {
|
|
55
|
+
"slot": "content",
|
|
56
|
+
"layout": this.modelData.layout
|
|
57
|
+
}, _isSlot(_slot = defaultSlots.map((slot) => {
|
|
58
|
+
const props = slot.props;
|
|
59
|
+
if (!props || !props.controller) {
|
|
60
|
+
return slot;
|
|
61
|
+
}
|
|
62
|
+
return vue.createVNode(vue.resolveComponent("iBizCol"), {
|
|
63
|
+
"layoutPos": props.modelData.layoutPos,
|
|
64
|
+
"state": props.controller.state
|
|
65
|
+
}, _isSlot(slot) ? slot : {
|
|
66
|
+
default: () => [slot]
|
|
67
|
+
});
|
|
68
|
+
})) ? _slot : {
|
|
69
|
+
default: () => [_slot]
|
|
70
|
+
});
|
|
71
|
+
return vue.createVNode("div", {
|
|
72
|
+
"class": this.classArr,
|
|
73
|
+
"onClick": () => {
|
|
74
|
+
this.controller.onClick();
|
|
75
|
+
}
|
|
76
|
+
}, [this.controller.model.cssStyle ? vue.createVNode("style", {
|
|
77
|
+
"type": "text/css"
|
|
78
|
+
}, [this.controller.model.cssStyle]) : null, content]);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
exports.IndexBlankPlaceholder = IndexBlankPlaceholder;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var runtime = require('@ibiz-template/runtime');
|
|
4
|
+
var indexBlankPlaceholder_state = require('./index-blank-placeholder.state.cjs');
|
|
5
|
+
|
|
6
|
+
"use strict";
|
|
7
|
+
class IndexBlankPlaceholderController extends runtime.PanelItemController {
|
|
8
|
+
createState() {
|
|
9
|
+
var _a;
|
|
10
|
+
return new indexBlankPlaceholder_state.IndexBlankPlaceholderState((_a = this.parent) == null ? void 0 : _a.state);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* @description 当前视图路由层级
|
|
14
|
+
* @exposedoc
|
|
15
|
+
* @readonly
|
|
16
|
+
* @type {(number | undefined)}
|
|
17
|
+
* @memberof IndexBlankPlaceholderController
|
|
18
|
+
*/
|
|
19
|
+
get routeDepth() {
|
|
20
|
+
return this.panel.view.modal.routeDepth;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* @description 应用菜单
|
|
24
|
+
* @exposedoc
|
|
25
|
+
* @readonly
|
|
26
|
+
* @type {(AppMenuController | undefined)}
|
|
27
|
+
* @memberof IndexBlankPlaceholderController
|
|
28
|
+
*/
|
|
29
|
+
get appmenu() {
|
|
30
|
+
return this.panel.getController("appmenu");
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* @description 首页导航栏
|
|
34
|
+
* @exposedoc
|
|
35
|
+
* @readonly
|
|
36
|
+
* @type {(NavPosIndexController | undefined)}
|
|
37
|
+
* @memberof IndexBlankPlaceholderController
|
|
38
|
+
*/
|
|
39
|
+
get navPos() {
|
|
40
|
+
return this.panel.panelItems.nav_pos_index;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* 初始化
|
|
44
|
+
*
|
|
45
|
+
* @protected
|
|
46
|
+
* @return {*} {Promise<void>}
|
|
47
|
+
* @memberof IndexBlankPlaceholderController
|
|
48
|
+
*/
|
|
49
|
+
async onInit() {
|
|
50
|
+
await super.onInit();
|
|
51
|
+
this.state.keepAlive = true;
|
|
52
|
+
this.state.visible = false;
|
|
53
|
+
this.panel.evt.on("onMounted", async () => {
|
|
54
|
+
var _a;
|
|
55
|
+
if (this.navPos)
|
|
56
|
+
this.navPos.state.keepAlive = true;
|
|
57
|
+
const appViewId = (_a = this.appmenu) == null ? void 0 : _a.getDefaultOpenView();
|
|
58
|
+
if (appViewId) {
|
|
59
|
+
const appView = await ibiz.hub.config.view.get(appViewId);
|
|
60
|
+
const { openMode = "INDEXVIEWTAB" } = appView;
|
|
61
|
+
this.state.visible = !openMode.startsWith("INDEXVIEWTAB");
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* @description 设置显示状态
|
|
67
|
+
* @exposedoc
|
|
68
|
+
* @param {boolean} state
|
|
69
|
+
* @memberof IndexBlankPlaceholderController
|
|
70
|
+
*/
|
|
71
|
+
setVisible(state) {
|
|
72
|
+
this.state.visible = state;
|
|
73
|
+
if (this.navPos)
|
|
74
|
+
this.navPos.state.visible = !state;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
exports.IndexBlankPlaceholderController = IndexBlankPlaceholderController;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ibiz-index-blank-placeholder{width:100%;height:100%}.ibiz-index-blank-placeholder>.ibiz-row{height:100%;overflow:hidden auto}.ibiz-index-blank-placeholder.is-hidden{display:none}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var indexBlankPlaceholder_controller = require('./index-blank-placeholder.controller.cjs');
|
|
4
|
+
|
|
5
|
+
"use strict";
|
|
6
|
+
var __defProp = Object.defineProperty;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __publicField = (obj, key, value) => {
|
|
9
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
10
|
+
return value;
|
|
11
|
+
};
|
|
12
|
+
class IndexBlankPlaceholderProvider {
|
|
13
|
+
constructor() {
|
|
14
|
+
__publicField(this, "component", "IBizIndexBlankPlaceholder");
|
|
15
|
+
}
|
|
16
|
+
async createController(panelItem, panel, parent) {
|
|
17
|
+
const c = new indexBlankPlaceholder_controller.IndexBlankPlaceholderController(panelItem, panel, parent);
|
|
18
|
+
await c.init();
|
|
19
|
+
return c;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
exports.IndexBlankPlaceholderProvider = IndexBlankPlaceholderProvider;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var runtime = require('@ibiz-template/runtime');
|
|
6
|
+
var vue3Util = require('@ibiz-template/vue3-util');
|
|
7
|
+
var indexBlankPlaceholder = require('./index-blank-placeholder.cjs');
|
|
8
|
+
var indexBlankPlaceholder_provider = require('./index-blank-placeholder.provider.cjs');
|
|
9
|
+
var indexBlankPlaceholder_controller = require('./index-blank-placeholder.controller.cjs');
|
|
10
|
+
|
|
11
|
+
"use strict";
|
|
12
|
+
const IBizIndexBlankPlaceholder = vue3Util.withInstall(
|
|
13
|
+
indexBlankPlaceholder.IndexBlankPlaceholder,
|
|
14
|
+
function(v) {
|
|
15
|
+
v.component(indexBlankPlaceholder.IndexBlankPlaceholder.name, indexBlankPlaceholder.IndexBlankPlaceholder);
|
|
16
|
+
runtime.registerPanelItemProvider(
|
|
17
|
+
"CONTAINER_INDEX_BLANK_PLACEHOLDER",
|
|
18
|
+
() => new indexBlankPlaceholder_provider.IndexBlankPlaceholderProvider()
|
|
19
|
+
);
|
|
20
|
+
}
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
exports.IndexBlankPlaceholderController = indexBlankPlaceholder_controller.IndexBlankPlaceholderController;
|
|
24
|
+
exports.IBizIndexBlankPlaceholder = IBizIndexBlankPlaceholder;
|
|
25
|
+
exports.default = IBizIndexBlankPlaceholder;
|
|
@@ -19,6 +19,7 @@ var index$c = require('./async-action/index.cjs');
|
|
|
19
19
|
var index$d = require('./panel-button-list/index.cjs');
|
|
20
20
|
var index$e = require('./auth-sso/index.cjs');
|
|
21
21
|
var index$f = require('./panel-app-title/index.cjs');
|
|
22
|
+
var index$g = require('./index-blank-placeholder/index.cjs');
|
|
22
23
|
|
|
23
24
|
"use strict";
|
|
24
25
|
const IBizPanelComponents = {
|
|
@@ -53,6 +54,7 @@ const IBizPanelComponents = {
|
|
|
53
54
|
v.use(index$e.IBizAuthSso);
|
|
54
55
|
v.use(vue3Util.IBizAuthWxmpQrcode);
|
|
55
56
|
v.use(index$f.IBizPanelAppTitle);
|
|
57
|
+
v.use(index$g.IBizIndexBlankPlaceholder);
|
|
56
58
|
}
|
|
57
59
|
};
|
|
58
60
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibiz-template/mob-vue3-components",
|
|
3
|
-
"version": "0.7.41-alpha.
|
|
3
|
+
"version": "0.7.41-alpha.13",
|
|
4
4
|
"description": "移动端组件库(vue3)",
|
|
5
5
|
"main": "lib/index.cjs",
|
|
6
6
|
"module": "es/index.mjs",
|
|
@@ -27,11 +27,11 @@
|
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@floating-ui/dom": "^1.5.3",
|
|
29
29
|
"@ibiz-template-package/vs-tree-ex": "^0.1.1",
|
|
30
|
-
"@ibiz-template/core": "0.7.41-alpha.
|
|
31
|
-
"@ibiz-template/model-helper": "0.7.41-alpha.
|
|
32
|
-
"@ibiz-template/runtime": "0.7.41-alpha.
|
|
30
|
+
"@ibiz-template/core": "0.7.41-alpha.23",
|
|
31
|
+
"@ibiz-template/model-helper": "0.7.41-alpha.23",
|
|
32
|
+
"@ibiz-template/runtime": "0.7.41-alpha.23",
|
|
33
33
|
"@ibiz-template/theme": "0.7.39",
|
|
34
|
-
"@ibiz-template/vue3-util": "0.7.41-alpha.
|
|
34
|
+
"@ibiz-template/vue3-util": "0.7.41-alpha.23",
|
|
35
35
|
"@ibiz-template/devtool": "0.0.11",
|
|
36
36
|
"@ibiz/model-core": "^0.1.81",
|
|
37
37
|
"@ibiz-template/mob-theme": "3.0.0",
|