@ibiz-template/runtime 0.4.3-dev.1 → 0.4.4
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.esm.js +224 -29
- package/dist/index.system.min.js +2 -2
- package/dist/index.system.min.js.map +1 -1
- package/out/controller/common/control/md-control.controller.d.ts.map +1 -1
- package/out/controller/common/control/md-control.controller.js +5 -1
- package/out/controller/control/chart/generator/chart-options-generator.d.ts.map +1 -1
- package/out/controller/control/chart/generator/chart-options-generator.js +3 -0
- package/out/controller/control/exp-bar/tree-exp-bar.controller.d.ts +8 -0
- package/out/controller/control/exp-bar/tree-exp-bar.controller.d.ts.map +1 -1
- package/out/controller/control/exp-bar/tree-exp-bar.controller.js +17 -0
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.js +9 -3
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts.map +1 -1
- package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.js +7 -2
- package/out/controller/control/grid/grid/grid.controller.d.ts +8 -0
- package/out/controller/control/grid/grid/grid.controller.d.ts.map +1 -1
- package/out/controller/control/grid/grid/grid.controller.js +15 -0
- package/out/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.d.ts.map +1 -1
- package/out/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.js +5 -0
- package/out/controller/control/tree/tree.controller.d.ts +8 -0
- package/out/controller/control/tree/tree.controller.d.ts.map +1 -1
- package/out/controller/control/tree/tree.controller.js +38 -0
- package/out/controller/control/tree/tree.service.js +1 -1
- package/out/global/global-util/global-util.d.ts +8 -1
- package/out/global/global-util/global-util.d.ts.map +1 -1
- package/out/global/global-util/global-util.js +8 -1
- package/out/interface/common/i-plugin-factory/i-plugin-factory.d.ts +4 -5
- package/out/interface/common/i-plugin-factory/i-plugin-factory.d.ts.map +1 -1
- package/out/interface/controller/state/control/i-tree.state.d.ts +14 -0
- package/out/interface/controller/state/control/i-tree.state.d.ts.map +1 -1
- package/out/platform/provider/platform-provider-base.d.ts.map +1 -1
- package/out/platform/provider/platform-provider-base.js +1 -0
- package/out/ui-action/provider/front-ui-action-provider.d.ts.map +1 -1
- package/out/ui-action/provider/front-ui-action-provider.js +7 -3
- package/out/ui-logic/ui-logic-context.d.ts +10 -1
- package/out/ui-logic/ui-logic-context.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-context.js +11 -0
- package/out/ui-logic/ui-logic-node/index.d.ts +1 -0
- package/out/ui-logic/ui-logic-node/index.d.ts.map +1 -1
- package/out/ui-logic/ui-logic-node/index.js +1 -0
- package/out/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.d.ts +8 -0
- package/out/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.d.ts.map +1 -0
- package/out/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.js +13 -0
- package/out/ui-logic/ui-logic.d.ts.map +1 -1
- package/out/ui-logic/ui-logic.js +4 -1
- package/out/utils/index.d.ts +1 -0
- package/out/utils/index.d.ts.map +1 -1
- package/out/utils/index.js +1 -0
- package/out/utils/script/script-function.d.ts.map +1 -1
- package/out/utils/script/script-function.js +22 -16
- package/out/utils/theme-util/theme-util.d.ts +46 -0
- package/out/utils/theme-util/theme-util.d.ts.map +1 -0
- package/out/utils/theme-util/theme-util.js +61 -0
- package/package.json +4 -4
- package/src/controller/common/control/md-control.controller.ts +5 -1
- package/src/controller/control/chart/generator/chart-options-generator.ts +4 -1
- package/src/controller/control/exp-bar/tree-exp-bar.controller.ts +18 -0
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-form.controller.ts +8 -3
- package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts +6 -2
- package/src/controller/control/grid/grid/grid.controller.ts +17 -0
- package/src/controller/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.controller.ts +6 -0
- package/src/controller/control/tree/tree.controller.ts +45 -0
- package/src/controller/control/tree/tree.service.ts +1 -1
- package/src/global/global-util/global-util.ts +9 -0
- package/src/interface/common/i-plugin-factory/i-plugin-factory.ts +4 -5
- package/src/interface/controller/state/control/i-tree.state.ts +16 -0
- package/src/platform/provider/platform-provider-base.ts +1 -0
- package/src/ui-action/provider/front-ui-action-provider.ts +7 -3
- package/src/ui-logic/ui-logic-context.ts +13 -1
- package/src/ui-logic/ui-logic-node/index.ts +1 -0
- package/src/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.ts +22 -0
- package/src/ui-logic/ui-logic.ts +4 -0
- package/src/utils/index.ts +1 -0
- package/src/utils/script/script-function.ts +22 -16
- package/src/utils/theme-util/theme-util.ts +64 -0
package/src/ui-logic/ui-logic.ts
CHANGED
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
MsgBoxNode,
|
|
17
17
|
PFPluginNode,
|
|
18
18
|
PrepareJSParamNode,
|
|
19
|
+
RawJSCodeNode,
|
|
19
20
|
RenewParamNode,
|
|
20
21
|
ResetParamNode,
|
|
21
22
|
SortParamNode,
|
|
@@ -127,6 +128,9 @@ export class UILogic {
|
|
|
127
128
|
case 'PFPLUGIN': // 前端插件调用
|
|
128
129
|
logicNode = new PFPluginNode(node);
|
|
129
130
|
break;
|
|
131
|
+
case 'RAWJSCODE':
|
|
132
|
+
logicNode = new RawJSCodeNode(node);
|
|
133
|
+
break;
|
|
130
134
|
default:
|
|
131
135
|
throw new ModelError(node, `未支持的逻辑节点类型: ${logicNodeType}`);
|
|
132
136
|
}
|
package/src/utils/index.ts
CHANGED
|
@@ -12,5 +12,6 @@ export * from './modal/modal';
|
|
|
12
12
|
export * from './value-rule/value-rule';
|
|
13
13
|
export * from './script/index';
|
|
14
14
|
export { TextUtil } from './text-util/text-util';
|
|
15
|
+
export { ThemeUtil } from './theme-util/theme-util';
|
|
15
16
|
export { RawValueUtil } from './raw-value-util/raw-value-util';
|
|
16
17
|
export { handleAllSettled } from './promise/promise';
|
|
@@ -136,7 +136,6 @@ export class ScriptFunction {
|
|
|
136
136
|
* @param {IParams} param
|
|
137
137
|
*/
|
|
138
138
|
protected fillDefaultParams(key: string, param: IParams): void {
|
|
139
|
-
const view = param.view as IViewController | undefined;
|
|
140
139
|
switch (key) {
|
|
141
140
|
case 'util': // 工具类
|
|
142
141
|
param.util = {
|
|
@@ -156,27 +155,34 @@ export class ScriptFunction {
|
|
|
156
155
|
case 'app': // 应用级的控制器
|
|
157
156
|
param.app = ibiz.hub.controller;
|
|
158
157
|
break;
|
|
159
|
-
case 'parent': // 父容器控制器
|
|
160
|
-
param.parent = view?.parentView;
|
|
161
|
-
break;
|
|
162
|
-
case 'topView': // 顶级视图控制器
|
|
163
|
-
param.topView = view?.getTopView();
|
|
164
|
-
break;
|
|
165
|
-
case 'parentView': // 父级视图控制器
|
|
166
|
-
param.parentView = view?.parentView;
|
|
167
|
-
break;
|
|
168
|
-
case 'topViewSession': // 顶级视图共享数据对象
|
|
169
|
-
param.topViewSession = view?.getTopView().session;
|
|
170
|
-
break;
|
|
171
|
-
case 'viewSession': // 当前视图共享数据对象
|
|
172
|
-
param.viewSession = view?.session;
|
|
173
|
-
break;
|
|
174
158
|
case 'appSession': // 全局共享数据对象
|
|
175
159
|
param.appSession = ibiz.hub.controller.session;
|
|
176
160
|
break;
|
|
177
161
|
default:
|
|
178
162
|
break;
|
|
179
163
|
}
|
|
164
|
+
const view = param.view as IViewController | undefined;
|
|
165
|
+
if (view) {
|
|
166
|
+
switch (key) {
|
|
167
|
+
case 'parent': // 父容器控制器
|
|
168
|
+
param.parent = view.parentView;
|
|
169
|
+
break;
|
|
170
|
+
case 'topView': // 顶级视图控制器
|
|
171
|
+
param.topView = view.getTopView();
|
|
172
|
+
break;
|
|
173
|
+
case 'parentView': // 父级视图控制器
|
|
174
|
+
param.parentView = view.parentView;
|
|
175
|
+
break;
|
|
176
|
+
case 'topViewSession': // 顶级视图共享数据对象
|
|
177
|
+
param.topViewSession = view.getTopView().session;
|
|
178
|
+
break;
|
|
179
|
+
case 'viewSession': // 当前视图共享数据对象
|
|
180
|
+
param.viewSession = view.session;
|
|
181
|
+
break;
|
|
182
|
+
default:
|
|
183
|
+
break;
|
|
184
|
+
}
|
|
185
|
+
}
|
|
180
186
|
}
|
|
181
187
|
|
|
182
188
|
/**
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { IAppUITheme, ISysPFPlugin } from '@ibiz/model-core';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* 主题工具类
|
|
5
|
+
*
|
|
6
|
+
* @author chitanda
|
|
7
|
+
* @date 2023-12-02 23:12:15
|
|
8
|
+
* @export
|
|
9
|
+
* @class ThemeUtil
|
|
10
|
+
*/
|
|
11
|
+
export class ThemeUtil {
|
|
12
|
+
/**
|
|
13
|
+
* 主题设置元素 html
|
|
14
|
+
*
|
|
15
|
+
* @author chitanda
|
|
16
|
+
* @date 2023-12-02 23:12:26
|
|
17
|
+
* @protected
|
|
18
|
+
* @type {HTMLElement}
|
|
19
|
+
*/
|
|
20
|
+
protected html: HTMLElement = document.getElementsByTagName('html')[0];
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* 加载主题插件
|
|
24
|
+
*
|
|
25
|
+
* @author chitanda
|
|
26
|
+
* @date 2023-12-03 01:12:44
|
|
27
|
+
* @param {IAppUITheme} theme
|
|
28
|
+
* @return {*} {Promise<void>}
|
|
29
|
+
*/
|
|
30
|
+
async loadTheme(theme: IAppUITheme): Promise<void> {
|
|
31
|
+
const data = theme.themeParams || {};
|
|
32
|
+
await ibiz.plugin.loadPlugin({
|
|
33
|
+
runtimeObject: true,
|
|
34
|
+
rtobjectName: theme.name,
|
|
35
|
+
rtobjectRepo: data['theme-package-path'],
|
|
36
|
+
} as unknown as ISysPFPlugin);
|
|
37
|
+
this.setTheme(theme.themeTag!);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* 设置主题
|
|
42
|
+
*
|
|
43
|
+
* @author chitanda
|
|
44
|
+
* @date 2023-12-02 23:12:37
|
|
45
|
+
* @param {string} tag
|
|
46
|
+
*/
|
|
47
|
+
setTheme(tag: string): void {
|
|
48
|
+
const theme = this.getTheme();
|
|
49
|
+
this.html.classList.remove(theme);
|
|
50
|
+
this.html.setAttribute('theme', tag);
|
|
51
|
+
this.html.classList.add(tag);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* 获取当前主题
|
|
56
|
+
*
|
|
57
|
+
* @author chitanda
|
|
58
|
+
* @date 2023-12-02 23:12:10
|
|
59
|
+
* @return {*} {string}
|
|
60
|
+
*/
|
|
61
|
+
getTheme(): string {
|
|
62
|
+
return this.html.getAttribute('theme')!;
|
|
63
|
+
}
|
|
64
|
+
}
|