@gct-paas/design 0.1.6-dev.27 → 0.1.6-dev.28
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/loader.esm.min.js +2 -2
- package/es/components/mobile-container/mobile-container.d.ts +2 -2
- package/es/hooks/design-view/layout/useToolkit.mjs +7 -0
- package/es/hooks/design-view/page/usePage.mjs +3 -0
- package/es/hooks/design-view/useDesigner.mjs +2 -0
- package/es/hooks/design-view/widget/useSelectedWidget.d.ts +2 -2
- package/es/hooks/design-view/widget/useSelectedWidget.mjs +21 -6
- package/es/schema/field/index.mjs +17 -3
- package/package.json +9 -9
|
@@ -9,7 +9,7 @@ export declare const MobileContainer: import('vue').DefineComponent<import('vue'
|
|
|
9
9
|
};
|
|
10
10
|
title: {
|
|
11
11
|
type: StringConstructor;
|
|
12
|
-
default: () =>
|
|
12
|
+
default: () => string | undefined;
|
|
13
13
|
};
|
|
14
14
|
}>, {
|
|
15
15
|
ns: import('@gct-paas/core').Namespace;
|
|
@@ -25,7 +25,7 @@ export declare const MobileContainer: import('vue').DefineComponent<import('vue'
|
|
|
25
25
|
};
|
|
26
26
|
title: {
|
|
27
27
|
type: StringConstructor;
|
|
28
|
-
default: () =>
|
|
28
|
+
default: () => string | undefined;
|
|
29
29
|
};
|
|
30
30
|
}>> & Readonly<{}>, {
|
|
31
31
|
headerBgColor: boolean;
|
|
@@ -108,6 +108,12 @@ var instance = class ComponentUtils {
|
|
|
108
108
|
FormComponents.LeftRightColumns,
|
|
109
109
|
FormComponents.Tabs
|
|
110
110
|
],
|
|
111
|
+
[CategoryTypeEnum.BUTTON]: [
|
|
112
|
+
FormComponents.CustomButton,
|
|
113
|
+
FormComponents.SubmitButton,
|
|
114
|
+
FormComponents.RefreshButton,
|
|
115
|
+
FormComponents.ResetButton
|
|
116
|
+
],
|
|
111
117
|
[CategoryTypeEnum.DATA]: [FormComponents.DataTable, FormComponents.Descriptions]
|
|
112
118
|
}
|
|
113
119
|
};
|
|
@@ -129,6 +135,7 @@ var instance = class ComponentUtils {
|
|
|
129
135
|
if (this.groupType === ComponentUtils.TxnPageGroup) return [
|
|
130
136
|
CategoryTypeEnum.FORM,
|
|
131
137
|
CategoryTypeEnum.LAYOUT,
|
|
138
|
+
CategoryTypeEnum.BUTTON,
|
|
132
139
|
CategoryTypeEnum.DATA
|
|
133
140
|
];
|
|
134
141
|
return [
|
|
@@ -209,6 +209,8 @@ async function loadTxnPageInfo(app) {
|
|
|
209
209
|
loadPageDesignHistoryList();
|
|
210
210
|
pagePermissions.value = await _api.apaas.permission.getList({ relationId: _gct.store.context.pid }) || [];
|
|
211
211
|
if (!pid.startsWith("___new___")) initLockState();
|
|
212
|
+
pageJson.pageConfig.unitType = "%";
|
|
213
|
+
pageJson.pageConfig.pageWidth = 80;
|
|
212
214
|
savePageJsonSnapshot();
|
|
213
215
|
}
|
|
214
216
|
/**
|
|
@@ -239,6 +241,7 @@ async function toggleTxnPageInfo(mode) {
|
|
|
239
241
|
* 初始化界面占用信息
|
|
240
242
|
*/
|
|
241
243
|
function initLockState() {
|
|
244
|
+
if (_gct.store.context.scene === "txn") return;
|
|
242
245
|
initOccupy({
|
|
243
246
|
id: _gct.store.context.pid || "",
|
|
244
247
|
type: (platform.value === Platform.WEB ? PageTypeEnum.WEB : platform.value === Platform.PAD ? PageTypeEnum.PAD : PageTypeEnum.MOBILE).toString()
|
|
@@ -52,6 +52,8 @@ function useDesigner() {
|
|
|
52
52
|
initMethodMap(pageJson.js).then((map) => {
|
|
53
53
|
methodMap.value = map;
|
|
54
54
|
});
|
|
55
|
+
if (!pageJson.pageConfig.unitType) pageJson.pageConfig.unitType = "%";
|
|
56
|
+
if (!pageJson.pageConfig.pageWidth) pageJson.pageConfig.pageWidth = 80;
|
|
55
57
|
cache.emitCache();
|
|
56
58
|
}
|
|
57
59
|
/** 检查是否可以拖拽进入的方法,比如某些组件不能拖到某些组件内 */
|
|
@@ -7,8 +7,8 @@ export declare function useSelectedWidget(): {
|
|
|
7
7
|
resetSelectedModal: () => void;
|
|
8
8
|
setSelectedWidget: (widget: Partial<LowCodeWidget.BasicSchema>, scope?: SCOPE) => void;
|
|
9
9
|
resetSelectedWidget: (scope?: SCOPE) => void;
|
|
10
|
-
selectedAllPropEditors: import('vue').ComputedRef<import('@gct-paas/schema').IPropEditor[]
|
|
11
|
-
selectedAllStyleEditors: import('vue').ComputedRef<import('@gct-paas/schema').IStyleEditor[]
|
|
10
|
+
selectedAllPropEditors: import('vue').ComputedRef<import('@gct-paas/schema').IPropEditor[]>;
|
|
11
|
+
selectedAllStyleEditors: import('vue').ComputedRef<import('@gct-paas/schema').IStyleEditor[]>;
|
|
12
12
|
selectedAllEvents: import('vue').ComputedRef<IObject[]>;
|
|
13
13
|
selectedEvents: import('vue').WritableComputedRef<import('@gct-paas/schema').IBasicEvents, import('@gct-paas/schema').IBasicEvents>;
|
|
14
14
|
selectedProps: import('vue').ComputedRef<import('@gct-paas/schema').ICommonProps & import('@gct-paas/schema').IWidgetProps>;
|
|
@@ -139,8 +139,13 @@ function useSelectedWidget() {
|
|
|
139
139
|
defaultEvents = provider.events || [];
|
|
140
140
|
}
|
|
141
141
|
if (selectedRef.value.props.fieldReadonly) return defaultEvents.filter((event) => event.name === "onClick");
|
|
142
|
-
|
|
143
|
-
|
|
142
|
+
if (materialType) {
|
|
143
|
+
const overrideEvents = FieldEditorOverrideRegistry.get(materialType)?.events;
|
|
144
|
+
if (overrideEvents) {
|
|
145
|
+
const items = overrideEvents(selectedRef.value, defaultEvents);
|
|
146
|
+
if (items) return items;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
144
149
|
return defaultEvents;
|
|
145
150
|
});
|
|
146
151
|
/**被选择的组件/弹框拥有的所有属性编辑器的描述集合 */
|
|
@@ -164,8 +169,13 @@ function useSelectedWidget() {
|
|
|
164
169
|
}
|
|
165
170
|
defaultPropEditors = provider.propEditors || [];
|
|
166
171
|
}
|
|
167
|
-
|
|
168
|
-
|
|
172
|
+
if (materialType) {
|
|
173
|
+
const overridePropEditor = FieldEditorOverrideRegistry.get(materialType)?.propEditor;
|
|
174
|
+
if (overridePropEditor) {
|
|
175
|
+
const items = overridePropEditor(selectedRef.value, defaultPropEditors, preCompInfo);
|
|
176
|
+
if (items) return items;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
169
179
|
return defaultPropEditors;
|
|
170
180
|
});
|
|
171
181
|
/**被选择的组件/弹框拥有的所有样式编辑器的描述集合 */
|
|
@@ -181,8 +191,13 @@ function useSelectedWidget() {
|
|
|
181
191
|
}
|
|
182
192
|
defaultStyleEditors = provider.styleEditors || [];
|
|
183
193
|
}
|
|
184
|
-
|
|
185
|
-
|
|
194
|
+
if (materialType) {
|
|
195
|
+
const overrideStyleEditor = FieldEditorOverrideRegistry.get(materialType)?.styleEditor;
|
|
196
|
+
if (overrideStyleEditor) {
|
|
197
|
+
const items = overrideStyleEditor(selectedRef.value, defaultStyleEditors);
|
|
198
|
+
if (items) return items;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
186
201
|
return defaultStyleEditors;
|
|
187
202
|
});
|
|
188
203
|
/**被选择的组件所有设计相关配置信息集合 */
|
|
@@ -29,18 +29,27 @@ function setupOverride() {
|
|
|
29
29
|
console.debug("正在注册字段编辑器覆写配置");
|
|
30
30
|
FieldEditorOverrideRegistry.register(MaterialEnum.MaterialTableField, {
|
|
31
31
|
propEditor: (selectedRef, defaultList) => {
|
|
32
|
+
if (selectedRef.isField !== true) return;
|
|
32
33
|
return FieldOverrideUtil.tableVTablePropEditor(selectedRef, defaultList);
|
|
33
34
|
},
|
|
34
|
-
styleEditor: (
|
|
35
|
+
styleEditor: (selectedRef, _defaultWidget) => {
|
|
36
|
+
if (selectedRef.isField !== true) return;
|
|
37
|
+
return runStyleEditor();
|
|
38
|
+
}
|
|
35
39
|
});
|
|
36
40
|
FieldEditorOverrideRegistry.register(MaterialEnum.MaterialEmbedTableField, {
|
|
37
41
|
propEditor: (selectedRef, defaultList) => {
|
|
42
|
+
if (selectedRef.isField !== true) return;
|
|
38
43
|
return FieldOverrideUtil.tableVTablePropEditor(selectedRef, defaultList);
|
|
39
44
|
},
|
|
40
|
-
styleEditor: (
|
|
45
|
+
styleEditor: (selectedRef, _defaultWidget) => {
|
|
46
|
+
if (selectedRef.isField !== true) return;
|
|
47
|
+
return runStyleEditor();
|
|
48
|
+
}
|
|
41
49
|
});
|
|
42
50
|
FieldEditorOverrideRegistry.register(MaterialEnum.MaterialSubTableField, {
|
|
43
51
|
propEditor: (selectedRef, defaultList, preCompInfo) => {
|
|
52
|
+
if (selectedRef.isField !== true) return;
|
|
44
53
|
if (preCompInfo && preCompInfo.props?.editMode === SUB_TABLE_EDIT_MODE.MODAL) return FieldOverrideUtil.runTableSelectPropEditor(selectedRef, "subTable2Field");
|
|
45
54
|
const { platform } = selectedRef;
|
|
46
55
|
if (platform === Platform.PAD) {
|
|
@@ -50,14 +59,19 @@ function setupOverride() {
|
|
|
50
59
|
if (platform === Platform.WEB) return webRunPropEditor(defaultList);
|
|
51
60
|
},
|
|
52
61
|
styleEditor: (selectedRef, _defaultWidget) => {
|
|
62
|
+
if (selectedRef.isField !== true) return;
|
|
53
63
|
return selectedRef.platform === Platform.WEB ? runStyleEditor() : mobileRunSubTableStyleEditor();
|
|
54
64
|
}
|
|
55
65
|
});
|
|
56
66
|
FieldEditorOverrideRegistry.register(MaterialEnum.MaterialTableSelectField, {
|
|
57
67
|
propEditor: (selectedRef, _defaultList) => {
|
|
68
|
+
if (selectedRef.isField !== true) return;
|
|
58
69
|
return FieldOverrideUtil.runTableSelectPropEditor(selectedRef);
|
|
59
70
|
},
|
|
60
|
-
styleEditor: (
|
|
71
|
+
styleEditor: (selectedRef, _defaultWidget) => {
|
|
72
|
+
if (selectedRef.isField !== true) return;
|
|
73
|
+
return runStyleEditor();
|
|
74
|
+
}
|
|
61
75
|
});
|
|
62
76
|
}
|
|
63
77
|
setupOverride();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gct-paas/design",
|
|
3
|
-
"version": "0.1.6-dev.
|
|
3
|
+
"version": "0.1.6-dev.28",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "paas 平台设计界面底包",
|
|
6
6
|
"loader": "dist/loader.esm.min.js",
|
|
@@ -51,10 +51,10 @@
|
|
|
51
51
|
"react-dnd-html5-backend": "^16.0.1",
|
|
52
52
|
"vue": "^3.5.30",
|
|
53
53
|
"vue3-dnd": "^2.1.0",
|
|
54
|
-
"@gct-paas/core": "0.1.6-dev.
|
|
55
|
-
"@gct-paas/core-web": "0.1.6-dev.
|
|
56
|
-
"@gct-paas/schema": "0.1.6-dev.
|
|
57
|
-
"@gct-paas/scss": "0.1.6-dev.
|
|
54
|
+
"@gct-paas/core": "0.1.6-dev.28",
|
|
55
|
+
"@gct-paas/core-web": "0.1.6-dev.28",
|
|
56
|
+
"@gct-paas/schema": "0.1.6-dev.28",
|
|
57
|
+
"@gct-paas/scss": "0.1.6-dev.28"
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"@types/babel__core": "^7.20.5",
|
|
@@ -64,10 +64,10 @@
|
|
|
64
64
|
"peerDependencies": {
|
|
65
65
|
"@gct-paas/api": "^0.1.6-dev.14",
|
|
66
66
|
"vue": ">=3",
|
|
67
|
-
"@gct-paas/core
|
|
68
|
-
"@gct-paas/
|
|
69
|
-
"@gct-paas/
|
|
70
|
-
"@gct-paas/
|
|
67
|
+
"@gct-paas/core": "0.1.6-dev.28",
|
|
68
|
+
"@gct-paas/core-web": "0.1.6-dev.28",
|
|
69
|
+
"@gct-paas/schema": "0.1.6-dev.28",
|
|
70
|
+
"@gct-paas/scss": "0.1.6-dev.28"
|
|
71
71
|
},
|
|
72
72
|
"scripts": {
|
|
73
73
|
"dev": "cross-env NODE_ENV=development vite build --watch --config vite.dev.config.ts",
|