@gct-paas/design 0.1.6-dev.3 → 0.1.6-dev.30

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.
Files changed (88) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/loader.esm.min.js +2 -1
  3. package/es/components/field-transfer/components/field-transfer-modal.vue.mjs +2 -2
  4. package/es/components/field-transfer/components/field-transfer-modal.vue_vue_type_style_index_0_scoped_2f34388d_lang.css +8 -0
  5. package/es/components/index.d.ts +0 -4
  6. package/es/components/index.mjs +0 -5
  7. package/es/components/mobile-container/mobile-container.d.ts +2 -2
  8. package/es/components/user-occupy/index.d.ts +0 -1
  9. package/es/components/user-occupy/index.mjs +0 -1
  10. package/es/components/user-occupy/user-lock.vue.mjs +2 -2
  11. package/es/components/user-occupy/user-lock.vue_vue_type_script_setup_true_lang.mjs +2 -1
  12. package/es/components/user-occupy/user-lock.vue_vue_type_style_index_0_scoped_143659f6_lang.css +29 -0
  13. package/es/components/user-occupy/user-occupy.vue.mjs +2 -2
  14. package/es/components/user-occupy/user-occupy.vue_vue_type_script_setup_true_lang.mjs +2 -1
  15. package/es/components/user-occupy/{user-occupy.vue_vue_type_style_index_0_scoped_9b136922_lang.css → user-occupy.vue_vue_type_style_index_0_scoped_1234af11_lang.css} +6 -6
  16. package/es/constant/index.d.ts +5 -0
  17. package/es/constant/index.mjs +6 -1
  18. package/es/constant/page-designer.d.ts +9 -36
  19. package/es/constant/page-designer.mjs +2 -32
  20. package/es/create-app-vue.d.ts +1 -1
  21. package/es/create-app-vue.mjs +1 -1
  22. package/es/{components/user-occupy → hooks/design-view/components}/useUserOccupy.d.ts +3 -3
  23. package/es/{components/user-occupy → hooks/design-view/components}/useUserOccupy.mjs +48 -27
  24. package/es/hooks/design-view/design-state.d.ts +91 -1
  25. package/es/hooks/design-view/design-state.mjs +7 -7
  26. package/es/hooks/design-view/designer/useDesignCache.mjs +2 -3
  27. package/es/hooks/design-view/designer/useDesignPreview.mjs +11 -5
  28. package/es/hooks/design-view/designer/useDesignSave.d.ts +2 -2
  29. package/es/hooks/design-view/designer/useDesignSave.mjs +131 -21
  30. package/es/hooks/design-view/layout/useToolkit.d.ts +1 -1
  31. package/es/hooks/design-view/layout/useToolkit.mjs +123 -82
  32. package/es/hooks/design-view/page/usePage.d.ts +12 -7
  33. package/es/hooks/design-view/page/usePage.mjs +131 -8
  34. package/es/hooks/design-view/useDesigner.d.ts +6 -2
  35. package/es/hooks/design-view/useDesigner.mjs +14 -3
  36. package/es/hooks/design-view/widget/useSelectedWidget.mjs +55 -28
  37. package/es/hooks/design-view/widget/useWidget.mjs +2 -1
  38. package/es/hooks/index.d.ts +1 -1
  39. package/es/hooks/index.mjs +1 -1
  40. package/es/index.d.ts +1 -0
  41. package/es/index.mjs +10 -12
  42. package/es/interface/index.d.ts +0 -1
  43. package/es/locale/auto-register.d.ts +2 -0
  44. package/es/locale/auto-register.mjs +25 -0
  45. package/es/locale/sys/app.mjs +6 -0
  46. package/es/locale/sys/appDesigner.mjs +9 -0
  47. package/es/locale/sys/cardDesign.d.ts +4 -4
  48. package/es/locale/sys/cardDesign.mjs +17 -0
  49. package/es/locale/sys/component.mjs +21 -0
  50. package/es/locale/sys/model.mjs +10 -0
  51. package/es/locale/sys/pageDesigner.mjs +32 -0
  52. package/es/locale/sys/platform.mjs +11 -0
  53. package/es/locale/sys.d.ts +7 -5
  54. package/es/locale/sys.mjs +26 -0
  55. package/es/props/design-plugin-props.d.ts +64 -0
  56. package/es/props/design-plugin-props.mjs +59 -0
  57. package/es/props/index.d.ts +1 -0
  58. package/es/register/designer-register/designer-register.d.ts +6 -3
  59. package/es/register/designer-register/designer-register.mjs +20 -14
  60. package/es/register/index.d.ts +1 -0
  61. package/es/register/index.mjs +1 -0
  62. package/es/register/props-editor/props-editor.register.d.ts +24 -0
  63. package/es/register/props-editor/props-editor.register.mjs +30 -0
  64. package/es/schema/begin-drag/begin-drag.mjs +1 -1
  65. package/es/schema/field/index.mjs +17 -3
  66. package/es/setup-app.d.ts +2 -1
  67. package/es/setup-app.mjs +3 -1
  68. package/es/types/index.d.ts +2 -1
  69. package/package.json +11 -11
  70. package/es/components/design-save-tip/design-save-tip.css +0 -107
  71. package/es/components/design-save-tip/design-save-tip.d.ts +0 -44
  72. package/es/components/design-save-tip/design-save-tip.mjs +0 -81
  73. package/es/components/design-step-check/design-step-check.css +0 -133
  74. package/es/components/design-step-check/design-step-check.d.ts +0 -30
  75. package/es/components/design-step-check/design-step-check.mjs +0 -96
  76. package/es/components/design-view-layout/design-view-layout.css +0 -157
  77. package/es/components/design-view-layout/design-view-layout.d.ts +0 -1
  78. package/es/components/design-view-layout/design-view-layout.mjs +0 -139
  79. package/es/components/field-transfer/components/field-transfer-modal.vue_vue_type_style_index_0_scoped_711e6992_lang.css +0 -8
  80. package/es/components/modal-name-editor/modal-name-editor.css +0 -117
  81. package/es/components/modal-name-editor/modal-name-editor.d.ts +0 -34
  82. package/es/components/modal-name-editor/modal-name-editor.mjs +0 -124
  83. package/es/components/user-occupy/occupy.const.d.ts +0 -4
  84. package/es/components/user-occupy/occupy.const.mjs +0 -7
  85. package/es/components/user-occupy/user-lock.vue_vue_type_style_index_0_scoped_b40d46ff_lang.css +0 -29
  86. package/es/hooks/develop/useKeyParser.d.ts +0 -16
  87. package/es/hooks/develop/useKeyParser.mjs +0 -79
  88. package/es/interface/i-view-step/i-view-step.d.ts +0 -32
@@ -1,23 +1,20 @@
1
1
  import { PageTypeEnum } from "../../../constant/page-designer.mjs";
2
- import "../../../constant/index.mjs";
2
+ import { newKeyTag } from "../../../constant/index.mjs";
3
3
  import { platform } from "../../../utils/design-view/index.mjs";
4
4
  import { DesignPluginPgkUtil } from "../../../utils/design-plugin-pkg-util/design-plugin-pkg-util.mjs";
5
5
  import { createWidgetByType } from "../../../utils/schema/index.mjs";
6
6
  import "../../../utils/index.mjs";
7
- import "../design-state.mjs";
7
+ import { pageInfo } from "../design-state.mjs";
8
+ import { useUserOccupy } from "../components/useUserOccupy.mjs";
8
9
  import { useCacheHistory } from "../../develop/useCacheHistory.mjs";
9
10
  import { useToolkit } from "../layout/useToolkit.mjs";
10
11
  import { useDesigner } from "../useDesigner.mjs";
11
- import { useUserOccupy } from "../../../components/user-occupy/useUserOccupy.mjs";
12
- import "../../../components/index.mjs";
13
12
  import { isEmpty, isNil } from "lodash-es";
14
- import { FormComponents, KitPkgUtil, PanelEnum, Platform, t } from "@gct-paas/core";
13
+ import { ButtonSize, ButtonStyle, FormComponents, KitPkgUtil, PanelEnum, Platform, t } from "@gct-paas/core";
15
14
  import { computed, createVNode, ref } from "vue";
16
15
  import { ExclamationCircleOutlined } from "@ant-design/icons-vue";
17
16
  import { Modal } from "ant-design-vue";
18
17
  //#region src/hooks/design-view/page/usePage.ts
19
- var newKeyTag = "___new___";
20
- var pageInfo = ref({});
21
18
  var pagePermissions = ref([]);
22
19
  var { setLockInfo, initOccupy, loadOccupyInfo } = useUserOccupy();
23
20
  var unlockAvailable = computed(() => {
@@ -113,12 +110,138 @@ async function loadPageInfo(app) {
113
110
  loadPageDesignHistoryList();
114
111
  pagePermissions.value = await _api.apaas.permission.getList({ relationId: _gct.store.context.pid }) || [];
115
112
  if (!pid.startsWith("___new___")) initLockState();
113
+ pageJson.pageConfig.title = "新建页";
116
114
  savePageJsonSnapshot();
117
115
  }
118
116
  /**
117
+ * 加载页面信息
118
+ * @returns
119
+ */
120
+ async function loadTxnPageInfo(app) {
121
+ const { initToolkitWidgets } = useToolkit();
122
+ const { setPageJson, loadPageDesignHistoryList, emitCache, pageJson, setPluginConfigs, savePageJsonSnapshot } = useDesigner();
123
+ const { historyUtils } = useCacheHistory();
124
+ platform.value = _gct.store.context.platform || Platform.WEB;
125
+ const baseid = _gct.store.context.baseid || "";
126
+ const pid = _gct.store.context.pid || "";
127
+ if (baseid) {
128
+ const res = await _api.apaas.transaction.getGetVersionById({ id: baseid });
129
+ pageInfo.value = {
130
+ id: newKeyTag,
131
+ name: res.name,
132
+ key: res.key,
133
+ modelKey: res.modelKey,
134
+ designerJson: "",
135
+ _designerJson: "",
136
+ detailDesignerJson: "",
137
+ txnPageMode: "create",
138
+ baseId: baseid
139
+ };
140
+ } else if (pid.startsWith("___new___")) pageInfo.value = {
141
+ id: newKeyTag,
142
+ name: "",
143
+ key: pid.replace(`${newKeyTag}:`, ""),
144
+ designerJson: "",
145
+ _designerJson: "",
146
+ detailDesignerJson: "",
147
+ txnPageMode: "create"
148
+ };
149
+ else {
150
+ const pageInfoRes = await _api.apaas.transaction.getInfo({ id: _gct.store.context.pid });
151
+ pageInfo.value = pageInfoRes;
152
+ pageInfo.value._designerJson = pageInfoRes.designerJson;
153
+ pageInfo.value.txnPageMode = "create";
154
+ }
155
+ const all = [];
156
+ if (_gct.store.appInfo.suiteKey) all.push(KitPkgUtil.loadDesign(_gct.store.appInfo.suiteKey).then((module) => {
157
+ if (module) module.setupApp(app);
158
+ }));
159
+ const _configs = [];
160
+ all.push(DesignPluginPgkUtil.loadDesignPlugin(app, platform.value, _gct.store.appInfo.suiteKey ? [_gct.store.appInfo.suiteKey] : void 0).then(([configs]) => {
161
+ _configs.push(...configs);
162
+ setPluginConfigs(configs);
163
+ }));
164
+ await Promise.all(all);
165
+ if (!historyUtils.isHistoryInfoExist(_gct.store.context.pid)) historyUtils.init({ historyId: _gct.store.context.pid ?? "" });
166
+ if (pageInfo.value.designerJson && !isNil(pageInfo.value.designerJson) && !isEmpty(pageInfo.value.designerJson)) {
167
+ const _json = JSON.parse(pageInfo.value.designerJson);
168
+ if (_json && _json.plugins) {
169
+ const items = _json.plugins.filter((item) => {
170
+ return _configs.findIndex((config) => config.key === item.key) === -1;
171
+ });
172
+ await DesignPluginPgkUtil.loadDesignDeletedPlugins(platform.value, items);
173
+ }
174
+ if (!_json.pageConfig) _json.pageConfig = {
175
+ title: "",
176
+ i18n: {},
177
+ hasFooter: false
178
+ };
179
+ setPageJson({
180
+ ..._json,
181
+ id: pageInfo.value.id
182
+ }, true);
183
+ } else {
184
+ emitCache();
185
+ setPageJson({
186
+ newDesigner: true,
187
+ style: {
188
+ paddingAll: "",
189
+ paddingTop: "",
190
+ paddingRight: "16",
191
+ paddingBottom: "16",
192
+ paddingLeft: "16"
193
+ }
194
+ }, true);
195
+ }
196
+ if (!pageJson.widgets.some((item) => item.type === FormComponents.BottomButtonContainer)) {
197
+ const bottomBtnWidget = createWidgetByType(FormComponents.BottomButtonContainer);
198
+ [FormComponents.TxnCancelButton, FormComponents.TxnConfirmButton].forEach((e) => {
199
+ const data = createWidgetByType(e);
200
+ data.props.parentWidgetId = bottomBtnWidget.id;
201
+ data.props.buttonStyle = ButtonStyle.ORDINARY;
202
+ data.props.size = ButtonSize.DEFAULT;
203
+ data.props.noDelete = true;
204
+ bottomBtnWidget.children?.push(data);
205
+ });
206
+ pageJson.widgets.push(bottomBtnWidget);
207
+ }
208
+ initToolkitWidgets();
209
+ loadPageDesignHistoryList();
210
+ pagePermissions.value = await _api.apaas.permission.getList({ relationId: _gct.store.context.pid }) || [];
211
+ if (!pid.startsWith("___new___")) initLockState();
212
+ pageJson.pageConfig.unitType = "%";
213
+ pageJson.pageConfig.pageWidth = 80;
214
+ savePageJsonSnapshot();
215
+ }
216
+ /**
217
+ * @param mode 切换模式
218
+ */
219
+ async function toggleTxnPageInfo(mode) {
220
+ const { setTxnPageJson, pageJson } = useDesigner();
221
+ if (mode === "create") {
222
+ pageInfo.value.detailDesignerJson = JSON.stringify(pageJson);
223
+ pageInfo.value.txnPageMode = mode;
224
+ setTxnPageJson({ ...JSON.parse(pageInfo.value._designerJson) });
225
+ } else {
226
+ pageInfo.value._designerJson = JSON.stringify(pageJson);
227
+ pageInfo.value.txnPageMode = mode;
228
+ setTxnPageJson({ ...pageInfo.value.detailDesignerJson ? JSON.parse(pageInfo.value.detailDesignerJson) : {
229
+ newDesigner: true,
230
+ style: {
231
+ paddingAll: "",
232
+ paddingTop: "",
233
+ paddingRight: "16",
234
+ paddingBottom: "16",
235
+ paddingLeft: "16"
236
+ }
237
+ } });
238
+ }
239
+ }
240
+ /**
119
241
  * 初始化界面占用信息
120
242
  */
121
243
  function initLockState() {
244
+ if (_gct.store.context.scene === "txn") return;
122
245
  initOccupy({
123
246
  id: _gct.store.context.pid || "",
124
247
  type: (platform.value === Platform.WEB ? PageTypeEnum.WEB : platform.value === Platform.PAD ? PageTypeEnum.PAD : PageTypeEnum.MOBILE).toString()
@@ -166,4 +289,4 @@ function usePage() {
166
289
  };
167
290
  }
168
291
  //#endregion
169
- export { currentPanel, loadPageInfo, lockPage, newKeyTag, pageInfo, pagePermissions, togglePanel, unlockAvailable, usePage };
292
+ export { currentPanel, loadPageInfo, loadTxnPageInfo, lockPage, pagePermissions, togglePanel, toggleTxnPageInfo, unlockAvailable, usePage };
@@ -1069,6 +1069,9 @@ export declare function useDesigner(): {
1069
1069
  title?: string | undefined;
1070
1070
  } | undefined;
1071
1071
  hasFooter?: boolean | undefined;
1072
+ unitType?: "px" | "%" | undefined;
1073
+ pageWidth?: number | undefined;
1074
+ independentDetailPage?: boolean | undefined;
1072
1075
  };
1073
1076
  pageVars: {
1074
1077
  id: string;
@@ -1091,8 +1094,9 @@ export declare function useDesigner(): {
1091
1094
  methodMap: import('vue').Ref<import('@gct-paas/schema').ExportMethod, import('@gct-paas/schema').ExportMethod>;
1092
1095
  checkWidgetMove: () => boolean;
1093
1096
  handleAddDrag: (newIndex: number, childrenList: LowCodeWidget.BasicSchema[], scope: SCOPE, formID?: string) => void;
1094
- setPageJson: (json: PageJson) => Promise<void>;
1095
- save: (flag?: boolean, showSuccess?: boolean) => Promise<boolean>;
1097
+ setPageJson: (json: PageJson, hasFooter?: boolean) => Promise<void>;
1098
+ setTxnPageJson: (json: PageJson, hasFooter?: boolean) => Promise<void>;
1099
+ save: (flag?: boolean, showSuccess?: boolean, isTxn?: boolean) => Promise<boolean>;
1096
1100
  savePageJsonSnapshot: (json?: PageJson) => void;
1097
1101
  emitCache: () => void;
1098
1102
  undoOrRestore: (content: string) => void;
@@ -1,7 +1,7 @@
1
1
  import { platform } from "../../utils/design-view/index.mjs";
2
2
  import { initMethodMap } from "../../utils/transform-js/transform-js.mjs";
3
3
  import "../../utils/index.mjs";
4
- import { methodMap, pageJson } from "./design-state.mjs";
4
+ import { defaultPageJson, methodMap, pageJson } from "./design-state.mjs";
5
5
  import { useDesignModal } from "./designer/useDesignModal.mjs";
6
6
  import { useDesignPreview } from "./designer/useDesignPreview.mjs";
7
7
  import { useWidgetRegistry } from "./widget/useWidgetRegistry.mjs";
@@ -38,14 +38,24 @@ function useDesigner() {
38
38
  /**
39
39
  * 设置设计器的 pageJSON
40
40
  */
41
- async function setPageJson(json) {
42
- pageJson.pageConfig.hasFooter = platform.value === Platform.MOBILE || platform.value === Platform.PAD;
41
+ async function setPageJson(json, hasFooter = false) {
42
+ pageJson.pageConfig.hasFooter = hasFooter || platform.value === Platform.MOBILE || platform.value === Platform.PAD;
43
43
  Object.assign(pageJson, json);
44
44
  initMethodMap(pageJson.js).then((map) => {
45
45
  methodMap.value = map;
46
46
  });
47
47
  cache.emitCache();
48
48
  }
49
+ async function setTxnPageJson(json, hasFooter = false) {
50
+ pageJson.pageConfig.hasFooter = hasFooter || platform.value === Platform.MOBILE || platform.value === Platform.PAD;
51
+ Object.assign(pageJson, defaultPageJson, json);
52
+ initMethodMap(pageJson.js).then((map) => {
53
+ methodMap.value = map;
54
+ });
55
+ if (!pageJson.pageConfig.unitType) pageJson.pageConfig.unitType = "%";
56
+ if (!pageJson.pageConfig.pageWidth) pageJson.pageConfig.pageWidth = 80;
57
+ cache.emitCache();
58
+ }
49
59
  /** 检查是否可以拖拽进入的方法,比如某些组件不能拖到某些组件内 */
50
60
  function checkWidgetMove() {
51
61
  return true;
@@ -66,6 +76,7 @@ function useDesigner() {
66
76
  checkWidgetMove,
67
77
  handleAddDrag,
68
78
  setPageJson,
79
+ setTxnPageJson,
69
80
  save: saveHook.save,
70
81
  savePageJsonSnapshot: saveHook.savePageJsonSnapshot,
71
82
  emitCache: cache.emitCache,
@@ -126,22 +126,31 @@ function useSelectedWidget() {
126
126
  });
127
127
  /**被选择的组件/弹框拥有的所有事件 */
128
128
  const selectedAllEvents = computed(() => {
129
- const { type } = selectedRef.value;
129
+ const { type, materialType } = selectedRef.value;
130
130
  const widgetEvents = widgetInfo.value.events;
131
- if (widgetEvents[type] && isArray(widgetEvents[type])) return widgetEvents[type];
132
- const provider = designRegister.value.getProvider(type);
133
- if (!provider) {
134
- console.warn(`selectedAllEvents 未找到组件 ${type} 的设计器项配置信息,请确保该组件已正确注册`);
135
- return [];
131
+ let defaultEvents = [];
132
+ if (widgetEvents[type] && isArray(widgetEvents[type])) defaultEvents = widgetEvents[type];
133
+ if (defaultEvents.length === 0) {
134
+ const provider = designRegister.value.getProvider(type);
135
+ if (!provider) {
136
+ console.warn(`selectedAllEvents 未找到组件 ${type} 的设计器项配置信息,请确保该组件已正确注册`);
137
+ return [];
138
+ }
139
+ defaultEvents = provider.events || [];
136
140
  }
137
- if (selectedRef.value.props.fieldReadonly) return (provider.events || []).filter((event) => event.name === "onClick");
138
- const overrideEvents = FieldEditorOverrideRegistry.get(type)?.events;
139
- const defaultEvents = provider.events || [];
140
- return overrideEvents?.(selectedRef.value, defaultEvents) || defaultEvents;
141
+ if (selectedRef.value.props.fieldReadonly) return defaultEvents.filter((event) => event.name === "onClick");
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
+ }
149
+ return defaultEvents;
141
150
  });
142
151
  /**被选择的组件/弹框拥有的所有属性编辑器的描述集合 */
143
152
  const selectedAllPropEditors = computed(() => {
144
- const { type } = selectedRef.value;
153
+ const { type, materialType } = selectedRef.value;
145
154
  const widgetPropsEditors = widgetInfo.value.propEditors;
146
155
  let preCompInfo;
147
156
  if (has(selectedRef.value, "preLocation")) {
@@ -150,28 +159,46 @@ function useSelectedWidget() {
150
159
  return widget.id === get(selectedRef.value, "preLocation");
151
160
  });
152
161
  }
153
- if (widgetPropsEditors[type] && isArray(widgetPropsEditors[type])) return widgetPropsEditors[type];
154
- const provider = designRegister.value.getProvider(type);
155
- if (!provider) {
156
- console.warn(`selectedAllPropEditors 未找到组件 ${type} 的设计器项配置信息,请确保该组件已正确注册`);
157
- return [];
162
+ let defaultPropEditors = [];
163
+ if (widgetPropsEditors[type] && isArray(widgetPropsEditors[type])) defaultPropEditors = widgetPropsEditors[type];
164
+ if (defaultPropEditors.length === 0) {
165
+ const provider = designRegister.value.getProvider(type);
166
+ if (!provider) {
167
+ console.warn(`selectedAllPropEditors 未找到组件 ${type} 的设计器项配置信息,请确保该组件已正确注册`);
168
+ return [];
169
+ }
170
+ defaultPropEditors = provider.propEditors || [];
171
+ }
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
+ }
158
178
  }
159
- const overridePropEditor = FieldEditorOverrideRegistry.get(type)?.propEditor;
160
- const defaultPropEditors = provider.propEditors || [];
161
- return overridePropEditor?.(selectedRef.value, defaultPropEditors, preCompInfo) || defaultPropEditors;
179
+ return defaultPropEditors;
162
180
  });
163
181
  /**被选择的组件/弹框拥有的所有样式编辑器的描述集合 */
164
182
  const selectedAllStyleEditors = computed(() => {
165
- const { type } = selectedRef.value;
166
- if (widgetInfo.value.styleEditors[type] && isArray(widgetInfo.value.styleEditors[type])) return widgetInfo.value.styleEditors[type];
167
- const provider = designRegister.value.getProvider(type);
168
- if (!provider) {
169
- console.warn(`selectedAllStyleEditors 未找到组件 ${type} 的设计器项配置信息,请确保该组件已正确注册`);
170
- return [];
183
+ const { type, materialType } = selectedRef.value;
184
+ let defaultStyleEditors = [];
185
+ if (widgetInfo.value.styleEditors[type] && isArray(widgetInfo.value.styleEditors[type])) defaultStyleEditors = widgetInfo.value.styleEditors[type];
186
+ if (defaultStyleEditors.length === 0) {
187
+ const provider = designRegister.value.getProvider(type);
188
+ if (!provider) {
189
+ console.warn(`selectedAllStyleEditors 未找到组件 ${type} 的设计器项配置信息,请确保该组件已正确注册`);
190
+ return [];
191
+ }
192
+ defaultStyleEditors = provider.styleEditors || [];
193
+ }
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
+ }
171
200
  }
172
- const overrideStyleEditor = FieldEditorOverrideRegistry.get(type)?.styleEditor;
173
- const defaultStyleEditors = provider.styleEditors || [];
174
- return overrideStyleEditor?.(selectedRef.value, defaultStyleEditors) || defaultStyleEditors;
201
+ return defaultStyleEditors;
175
202
  });
176
203
  /**被选择的组件所有设计相关配置信息集合 */
177
204
  const selectedAllDesingerConfig = computed(() => {
@@ -34,7 +34,8 @@ var NotMask = [
34
34
  FormComponents.Descriptions,
35
35
  FormComponents.BottomButtonContainer,
36
36
  FormComponents.ButtonProcessContainer,
37
- FormComponents.ApprovalHistory
37
+ FormComponents.ApprovalHistory,
38
+ FormComponents.MedProRdoTable
38
39
  ];
39
40
  function useWidget(props) {
40
41
  const { selectedWidget } = useSelectedWidget();
@@ -1,4 +1,5 @@
1
1
  export { isModified, loading, methodMap, modalDesignId, modalDesignState, modalInfo, noMore, pageDesignHistoryList, pageJson, pageJsonSnapshot, pageNo, pluginConfigs, regRoot, subTableModalId, subTableModalState, transformPageJson, wfNodesModalId, wfNodesModalState, workflowModalId, workflowModalState, widgetInfo, } from './design-view/design-state';
2
+ export * from './design-view/components/useUserOccupy';
2
3
  export * from './design-view/useDesigner';
3
4
  export * from './design-view/designer/useDesignModal';
4
5
  export * from './design-view/designer/useDesignHistory';
@@ -19,7 +20,6 @@ export * from './design-view/layout/useScope';
19
20
  export * from './design-view/layout/useToolkit';
20
21
  export * from './design-view/utils/field-schema.util';
21
22
  export * from './develop/useCacheHistory';
22
- export * from './develop/useKeyParser';
23
23
  export * from './use-model-field/use-model-field';
24
24
  export * from './use-design-view-controller/use-design-view-controller';
25
25
  export * from './widgets/useAsyncFields';
@@ -1,4 +1,5 @@
1
1
  import "./design-view/design-state.mjs";
2
+ import "./design-view/components/useUserOccupy.mjs";
2
3
  import "./design-view/layout/useScope.mjs";
3
4
  import "./design-view/global/useGlobal.mjs";
4
5
  import "./design-view/designer/useDesignModal.mjs";
@@ -21,7 +22,6 @@ import "./design-view/constants/style-editor.const.mjs";
21
22
  import "./design-view/editor/useStyleEditor.mjs";
22
23
  import "./design-view/editor/useStyle.mjs";
23
24
  import "./design-view/utils/field-schema.util.mjs";
24
- import "./develop/useKeyParser.mjs";
25
25
  import "./use-model-field/use-model-field.mjs";
26
26
  import "./designer.hooks.mjs";
27
27
  import "./use-design-view-controller/use-design-view-controller.mjs";
package/es/index.d.ts CHANGED
@@ -4,6 +4,7 @@ export * from './controller';
4
4
  export * from './data';
5
5
  export * from './hooks';
6
6
  export * from './interface';
7
+ export * from './props';
7
8
  export * from './provider';
8
9
  export * from './register';
9
10
  export * from './schema';
package/es/index.mjs CHANGED
@@ -1,9 +1,10 @@
1
1
  import { DesignerRegister } from "./register/designer-register/designer-register.mjs";
2
2
  import { DesignEditorType } from "./constant/design-editor-type.mjs";
3
- import { CategoryEnum, MenuClickEvent, ModelTypeEnum, PageTypeEnum, ProcessTypeEnum, ScriptTypeEnum } from "./constant/page-designer.mjs";
4
- import { ControllerType, DesignItemActionTag, DesignItemAttribute, DesignNodePrefix, DesignNodeType, DesignViewPrefix, InsertNodeMode, MaterialGroup } from "./constant/index.mjs";
3
+ import { CategoryEnum, MenuClickEvent, PageTypeEnum } from "./constant/page-designer.mjs";
4
+ import { ControllerType, DesignItemActionTag, DesignItemAttribute, DesignNodePrefix, DesignNodeType, DesignViewPrefix, InsertNodeMode, MaterialGroup, OCCUPY_MQTT_KEY, newKeyTag } from "./constant/index.mjs";
5
5
  import { MaterialRegister } from "./register/material/material.register.mjs";
6
6
  import { NodeRegister } from "./register/node/node.register.mjs";
7
+ import { PropsEditorRegister } from "./register/props-editor/props-editor.register.mjs";
7
8
  import "./register/index.mjs";
8
9
  import { isCanCrop } from "./utils/can-drop/can-drop.mjs";
9
10
  import { designInterceptors } from "./utils/design-interceptors/design-interceptors.mjs";
@@ -38,7 +39,8 @@ import { FieldOverrideUtil, setupOverride } from "./schema/field/index.mjs";
38
39
  import { BaseSearch, getSearchOptions } from "./schema/search/BaseSearch.mjs";
39
40
  import { BaseDate } from "./schema/search/BaseDate.mjs";
40
41
  import "./schema/index.mjs";
41
- import { isModified, loading, methodMap, modalDesignId, modalDesignState, modalInfo, noMore, pageDesignHistoryList, pageJson, pageJsonSnapshot, pageNo, pluginConfigs, regRoot, subTableModalId, subTableModalState, transformPageJson, wfNodesModalId, wfNodesModalState, widgetInfo, workflowModalId, workflowModalState } from "./hooks/design-view/design-state.mjs";
42
+ import { isModified, loading, methodMap, modalDesignId, modalDesignState, modalInfo, noMore, pageDesignHistoryList, pageInfo, pageJson, pageJsonSnapshot, pageNo, pluginConfigs, regRoot, subTableModalId, subTableModalState, transformPageJson, wfNodesModalId, wfNodesModalState, widgetInfo, workflowModalId, workflowModalState } from "./hooks/design-view/design-state.mjs";
43
+ import { useUserOccupy } from "./hooks/design-view/components/useUserOccupy.mjs";
42
44
  import { useScope } from "./hooks/design-view/layout/useScope.mjs";
43
45
  import { useGlobal } from "./hooks/design-view/global/useGlobal.mjs";
44
46
  import { useDesignModal } from "./hooks/design-view/designer/useDesignModal.mjs";
@@ -46,7 +48,7 @@ import { useDesignPreview } from "./hooks/design-view/designer/useDesignPreview.
46
48
  import { useCacheHistory, useCacheHistoryInner } from "./hooks/develop/useCacheHistory.mjs";
47
49
  import { useWidgetRegistry } from "./hooks/design-view/widget/useWidgetRegistry.mjs";
48
50
  import { useToolkit } from "./hooks/design-view/layout/useToolkit.mjs";
49
- import { currentPanel, loadPageInfo, lockPage, newKeyTag, pageInfo, pagePermissions, togglePanel, unlockAvailable, usePage } from "./hooks/design-view/page/usePage.mjs";
51
+ import { currentPanel, loadPageInfo, loadTxnPageInfo, lockPage, pagePermissions, togglePanel, toggleTxnPageInfo, unlockAvailable, usePage } from "./hooks/design-view/page/usePage.mjs";
50
52
  import { useWidgetQuery } from "./hooks/design-view/widget/useWidgetQuery.mjs";
51
53
  import { useSelectedWidget } from "./hooks/design-view/widget/useSelectedWidget.mjs";
52
54
  import { useDesignCache } from "./hooks/design-view/designer/useDesignCache.mjs";
@@ -61,7 +63,6 @@ import { BTN_TYPE_COLOR, PRESET_COLOR } from "./hooks/design-view/constants/styl
61
63
  import { styleEditorProps, useStyleEditor } from "./hooks/design-view/editor/useStyleEditor.mjs";
62
64
  import { propsToStyle, schemaToStyle, useStyle } from "./hooks/design-view/editor/useStyle.mjs";
63
65
  import { FieldSchema, initFieldWidgetRuntime } from "./hooks/design-view/utils/field-schema.util.mjs";
64
- import { useKeyParser } from "./hooks/develop/useKeyParser.mjs";
65
66
  import { useModelField } from "./hooks/use-model-field/use-model-field.mjs";
66
67
  import { useDesignViewStore } from "./store/view/design-view.store.mjs";
67
68
  import "./store/index.mjs";
@@ -76,13 +77,8 @@ import DesignContent from "./components/design/design-content/design-content.mjs
76
77
  import { DesignItemPreview } from "./components/design/design-item-preview/design-item-preview.mjs";
77
78
  import { MaterialContent } from "./components/material/material-content/material-content.mjs";
78
79
  import { PanelContent } from "./components/panel/panel-content/panel-content.mjs";
79
- import { DesignSaveTip } from "./components/design-save-tip/design-save-tip.mjs";
80
- import { DesignStepCheck } from "./components/design-step-check/design-step-check.mjs";
81
- import { ModalNameEditor } from "./components/modal-name-editor/modal-name-editor.mjs";
82
- import { DesignViewLayout } from "./components/design-view-layout/design-view-layout.mjs";
83
80
  import FieldCascader_default from "./components/field-transfer/components/Cascader/FieldCascader.mjs";
84
81
  import { useFieldTransfer } from "./components/field-transfer/useFieldTransfer.mjs";
85
- import { useUserOccupy } from "./components/user-occupy/useUserOccupy.mjs";
86
82
  import user_lock_default from "./components/user-occupy/user-lock.vue.mjs";
87
83
  import user_occupy_default from "./components/user-occupy/user-occupy.vue.mjs";
88
84
  import multi_field_display_default from "./components/multi-field/multi-field-display.vue.mjs";
@@ -91,6 +87,7 @@ import { DesignNode } from "./data/design-node/design-node.mjs";
91
87
  import { DesignContainerNode } from "./data/design-container-node/design-container-node.mjs";
92
88
  import { DesignEditorNode } from "./data/design-editor-node/design-editor-node.mjs";
93
89
  import "./data/index.mjs";
90
+ import { nodeContainerProps, nodeEditorProps, nodeProps } from "./props/design-plugin-props.mjs";
94
91
  import { NodeBaseProvider } from "./provider/node-base/node-base.provider.mjs";
95
92
  import { DesignEditorNodeProvider } from "./provider/design-editor-node/design-editor-node.provider.mjs";
96
93
  import "./provider/index.mjs";
@@ -101,10 +98,11 @@ function onInit() {
101
98
  if (!_gct.register.designer) _gct.register.designer = {
102
99
  pad: new DesignerRegister(),
103
100
  mobile: new DesignerRegister(),
104
- web: new DesignerRegister()
101
+ web: new DesignerRegister(),
102
+ propsEditor: new PropsEditorRegister()
105
103
  };
106
104
  else console.warn("设计器注册已存在,可能存在重复注册问题,请检查是否有重复引入设计器包的情况");
107
105
  }
108
106
  onInit();
109
107
  //#endregion
110
- export { BaseDate, BaseSearch, CategoryEnum, ControllerType, DesignContainerNode, DesignContent, DesignEditorNode, DesignEditorNodeProvider, DesignEditorType, DesignItemActionTag, DesignItemAttribute, DesignItemPreview, DesignNode, DesignNodePrefix, DesignNodeType, DesignPluginPgkUtil, DesignSaveTip, DesignStepCheck, DesignViewController, DesignViewHooks, DesignViewLayout, DesignViewPrefix, DesignerRegister, FieldCascader_default as FieldCascader, FieldOverrideUtil, FieldSchema, InsertNodeMode, MaterialContent, MaterialGroup, MaterialRegister, MenuClickEvent, ModalNameEditor, ModelTypeEnum, multi_field_display_default as MultiFieldDisplay, NodeBaseProvider, NodeRegister, NotMask, PageTypeEnum, PanelContent, ProcessTypeEnum, SCREditorUtils, ScriptTypeEnum, user_lock_default as UserLock, user_occupy_default as UserOccupy, asyncIdentify, baseBtnEditor, baseBtnProp, basicAttrsUtils, basicFieldEditor, beginDrag, BTN_TYPE_COLOR as btnTypeColor, buildRunJs, buildRuntimeJson, buttonEditor, buttonProps, buttonStyleEditor, changeCmpData, commonStyle, createWidgetByType, createWidgetProvider, createdSearchField, currentPanel, customMenu, deptFilter, designCreateAppVue, designInterceptors, designRegister, designSetupApp, destroyOccupyTimer, deviceEvent, displayEditor, displayProps, explainEditor, findAllChildrenTypes, fixedAlignEditor, flatten, formItemProps, formulaFilter, getAutofillEditor, getBindCmpTypeEditor, getInputAttrEditor, getSearchOptions, hiddenButtonProps, initFieldWidgetRuntime, initMethodMap, isCanCrop, isModified, loadPageInfo, loadPageOccupyInfo, loading, lockPage, methodMap, modal_exports as modalCfg, modalDesignId, modalDesignState, modalInfo, multiFieldEditor, newKeyTag, noMore, notNeedPxStyle, occupyPage, onWidgetInfoInit, openFormulaEditorByDesign, pageDesignHistoryList, pageInfo, pageJson, pageJsonSnapshot, pageNo, pageOccupyInfo, pagePermissions, permissionEditor, placeholderEditor, platform, pluginConfigs, PRESET_COLOR as presetColor, propEditorProps, propsToStyle, regRoot, regexEditor, rgba2hex, schemaToStyle, setupOverride, shadeColor, styleEditorProps, subTableModalId, subTableModalState, submitInHideEditor, togglePanel, transformField2Component, transformPageJson, unlockAvailable, uploadDraggerEditor, useAsyncFieldConfig, useAsyncFileAttrs, useAsyncOperateField, useCacheHistory, useCacheHistoryInner, useDesignCache, useDesignHistory, useDesignModal, useDesignPreview, useDesignSave, useDesignViewController, useDesignViewStore, useDesigner, useDesignerController, useFieldTransfer, useGlobal, useKeyParser, useModelField, usePage, usePageOccupy, usePropEditor, useScope, useSelectedWidget, useStyle, useStyleEditor, useToolkit, useUserOccupy, useWidget, useWidgetQuery, useWidgetRegistry, validatorEditor, wfNodesModalId, wfNodesModalState, widgetInfo, widgetProps, widgetWrapperProps, workflowModalId, workflowModalState };
108
+ export { BaseDate, BaseSearch, CategoryEnum, ControllerType, DesignContainerNode, DesignContent, DesignEditorNode, DesignEditorNodeProvider, DesignEditorType, DesignItemActionTag, DesignItemAttribute, DesignItemPreview, DesignNode, DesignNodePrefix, DesignNodeType, DesignPluginPgkUtil, DesignViewController, DesignViewHooks, DesignViewPrefix, DesignerRegister, FieldCascader_default as FieldCascader, FieldOverrideUtil, FieldSchema, InsertNodeMode, MaterialContent, MaterialGroup, MaterialRegister, MenuClickEvent, multi_field_display_default as MultiFieldDisplay, NodeBaseProvider, NodeRegister, NotMask, OCCUPY_MQTT_KEY, PageTypeEnum, PanelContent, PropsEditorRegister, SCREditorUtils, user_lock_default as UserLock, user_occupy_default as UserOccupy, asyncIdentify, baseBtnEditor, baseBtnProp, basicAttrsUtils, basicFieldEditor, beginDrag, BTN_TYPE_COLOR as btnTypeColor, buildRunJs, buildRuntimeJson, buttonEditor, buttonProps, buttonStyleEditor, changeCmpData, commonStyle, createWidgetByType, createWidgetProvider, createdSearchField, currentPanel, customMenu, deptFilter, designCreateAppVue, designInterceptors, designRegister, designSetupApp, destroyOccupyTimer, deviceEvent, displayEditor, displayProps, explainEditor, findAllChildrenTypes, fixedAlignEditor, flatten, formItemProps, formulaFilter, getAutofillEditor, getBindCmpTypeEditor, getInputAttrEditor, getSearchOptions, hiddenButtonProps, initFieldWidgetRuntime, initMethodMap, isCanCrop, isModified, loadPageInfo, loadPageOccupyInfo, loadTxnPageInfo, loading, lockPage, methodMap, modal_exports as modalCfg, modalDesignId, modalDesignState, modalInfo, multiFieldEditor, newKeyTag, noMore, nodeContainerProps, nodeEditorProps, nodeProps, notNeedPxStyle, occupyPage, onWidgetInfoInit, openFormulaEditorByDesign, pageDesignHistoryList, pageInfo, pageJson, pageJsonSnapshot, pageNo, pageOccupyInfo, pagePermissions, permissionEditor, placeholderEditor, platform, pluginConfigs, PRESET_COLOR as presetColor, propEditorProps, propsToStyle, regRoot, regexEditor, rgba2hex, schemaToStyle, setupOverride, shadeColor, styleEditorProps, subTableModalId, subTableModalState, submitInHideEditor, togglePanel, toggleTxnPageInfo, transformField2Component, transformPageJson, unlockAvailable, uploadDraggerEditor, useAsyncFieldConfig, useAsyncFileAttrs, useAsyncOperateField, useCacheHistory, useCacheHistoryInner, useDesignCache, useDesignHistory, useDesignModal, useDesignPreview, useDesignSave, useDesignViewController, useDesignViewStore, useDesigner, useDesignerController, useFieldTransfer, useGlobal, useModelField, usePage, usePageOccupy, usePropEditor, useScope, useSelectedWidget, useStyle, useStyleEditor, useToolkit, useUserOccupy, useWidget, useWidgetQuery, useWidgetRegistry, validatorEditor, wfNodesModalId, wfNodesModalState, widgetInfo, widgetProps, widgetWrapperProps, workflowModalId, workflowModalState };
@@ -11,7 +11,6 @@ export type { IDropCollect } from './i-drop-collect/i-drop-collect';
11
11
  export type { IDropResult, IDropResultData, } from './i-drop-result/i-drop-result';
12
12
  export type { IMaterialData } from './i-material-data/i-material-data';
13
13
  export type { IMaterialGroup } from './i-material-group/i-material-group';
14
- export type { IViewStep } from './i-view-step/i-view-step';
15
14
  export type { IDesignViewController } from './controller/i-design-view.controller';
16
15
  export type * from './i-vue3-dnd-item-options/i-vue3-dnd-item-options';
17
16
  export type { NewEvent, ToolkitWidgetGroup } from './page-designer/toolkit';
@@ -0,0 +1,2 @@
1
+ /** 注册 design 包的 locale 多语言资源 */
2
+ export declare function registerDesignLocale(): void;
@@ -0,0 +1,25 @@
1
+ import { app_exports } from "./sys/app.mjs";
2
+ import { appDesigner_exports } from "./sys/appDesigner.mjs";
3
+ import { cardDesign_exports } from "./sys/cardDesign.mjs";
4
+ import { component_exports } from "./sys/component.mjs";
5
+ import { model_exports } from "./sys/model.mjs";
6
+ import { pageDesigner_exports } from "./sys/pageDesigner.mjs";
7
+ import { platform_exports } from "./sys/platform.mjs";
8
+ import { sys_exports } from "./sys.mjs";
9
+ //#region src/locale/auto-register.ts
10
+ var localeModules = /* @__PURE__ */ Object.assign({
11
+ "./sys/app.ts": app_exports,
12
+ "./sys/appDesigner.ts": appDesigner_exports,
13
+ "./sys/cardDesign.ts": cardDesign_exports,
14
+ "./sys/component.ts": component_exports,
15
+ "./sys/model.ts": model_exports,
16
+ "./sys/pageDesigner.ts": pageDesigner_exports,
17
+ "./sys/platform.ts": platform_exports,
18
+ "./sys.ts": sys_exports
19
+ });
20
+ /** 注册 design 包的 locale 多语言资源 */
21
+ function registerDesignLocale() {
22
+ _gct.i18nUtil.autoRegisterLocale(localeModules);
23
+ }
24
+ //#endregion
25
+ export { registerDesignLocale };
@@ -0,0 +1,6 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.mjs";
2
+ //#region src/locale/sys/app.ts
3
+ var app_exports = /* @__PURE__ */ __exportAll({ default: () => app_default });
4
+ var app_default = { continueEdit: "继续编辑" };
5
+ //#endregion
6
+ export { app_exports };
@@ -0,0 +1,9 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.mjs";
2
+ //#region src/locale/sys/appDesigner.ts
3
+ var appDesigner_exports = /* @__PURE__ */ __exportAll({ default: () => appDesigner_default });
4
+ var appDesigner_default = {
5
+ deleteSuccess: "删除成功",
6
+ deleteSuccess1: "删除成功xxx"
7
+ };
8
+ //#endregion
9
+ export { appDesigner_exports };
@@ -1,13 +1,13 @@
1
1
  declare const _default: {
2
+ cfg_form: {
3
+ label_style: string;
4
+ cfg_content_tag_style: string;
5
+ };
2
6
  back_info: {
3
7
  title: string;
4
8
  content: string;
5
9
  notSave: string;
6
10
  saveAndExit: string;
7
11
  };
8
- cfg_form: {
9
- label_style: string;
10
- cfg_content_tag_style: string;
11
- };
12
12
  };
13
13
  export default _default;
@@ -0,0 +1,17 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.mjs";
2
+ //#region src/locale/sys/cardDesign.ts
3
+ var cardDesign_exports = /* @__PURE__ */ __exportAll({ default: () => cardDesign_default });
4
+ var cardDesign_default = {
5
+ cfg_form: {
6
+ label_style: "标签样式",
7
+ cfg_content_tag_style: "配置内容为标签样式"
8
+ },
9
+ back_info: {
10
+ title: "当前页面未保存,是否保存?",
11
+ content: "有信息发生变动,返回会导致信息丢失,是否需要保存?",
12
+ notSave: "不保存",
13
+ saveAndExit: "保存并退出"
14
+ }
15
+ };
16
+ //#endregion
17
+ export { cardDesign_exports };
@@ -0,0 +1,21 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.mjs";
2
+ //#region src/locale/sys/component.ts
3
+ var component_exports = /* @__PURE__ */ __exportAll({ default: () => component_default });
4
+ var component_default = { fieldTransfer: {
5
+ defaultModalTitle: "选择字段",
6
+ linkModel: "关联模型",
7
+ subMainModel: "主模型",
8
+ currentModel: "当前模型",
9
+ soModelTitle: "所属模型:",
10
+ noSelect: "未选",
11
+ select: "已选",
12
+ noSearchData: "搜索无结果",
13
+ noData: "暂无数据",
14
+ term: "项",
15
+ pleaseSearch: "请输入搜索内容",
16
+ selectAllData: "全选所有",
17
+ invertCurrentPage: "反选当页",
18
+ move: "拖动"
19
+ } };
20
+ //#endregion
21
+ export { component_exports };
@@ -0,0 +1,10 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.mjs";
2
+ //#region src/locale/sys/model.ts
3
+ var model_exports = /* @__PURE__ */ __exportAll({ default: () => model_default });
4
+ var model_default = {
5
+ required: "必填",
6
+ numMaxGTMin: "最大数值不能小于最小数值",
7
+ modelKey: "模型KEY"
8
+ };
9
+ //#endregion
10
+ export { model_exports };
@@ -0,0 +1,32 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.mjs";
2
+ //#region src/locale/sys/pageDesigner.ts
3
+ var pageDesigner_exports = /* @__PURE__ */ __exportAll({ default: () => pageDesigner_default });
4
+ var pageDesigner_default = {
5
+ locked: "已锁定",
6
+ unlock: "解锁",
7
+ lock: "锁定",
8
+ designing: "正在设计",
9
+ modelField: "关联模型字段",
10
+ selectModelFields: "选择模型字段",
11
+ embeddedSearch: "内嵌搜索",
12
+ widget: "组件",
13
+ prop: "属性",
14
+ defaultValue: "默认值",
15
+ codeError: "语法错误请检查!",
16
+ topBorder: "上边框",
17
+ leftBorder: "左边框",
18
+ bottomBorder: "下边框",
19
+ rightBorder: "右边框",
20
+ whole: "全部",
21
+ upLeft: "左上角",
22
+ upRight: "右上角",
23
+ downLeft: "左下角",
24
+ downRight: "右下角",
25
+ radius: "圆角",
26
+ bold: "加粗",
27
+ italic: "倾斜",
28
+ underline: "下划线",
29
+ linethrough: "删除线"
30
+ };
31
+ //#endregion
32
+ export { pageDesigner_exports };