@gct-paas/schema 0.1.4-dev.12 → 0.1.4-dev.14

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.
@@ -0,0 +1,26 @@
1
+ /**
2
+ * 节点模式
3
+ *
4
+ * @author zhanghanrui
5
+ * @date 2024-07-06 12:07:24
6
+ * @export
7
+ * @enum {number}
8
+ */
9
+ export declare enum DesignNodeMode {
10
+ /**
11
+ * 主页面模式
12
+ */
13
+ PAGE = "PAGE",
14
+ /**
15
+ * 主页面模式
16
+ */
17
+ PAGE_LOWER = "page",
18
+ /**
19
+ * 容器模式
20
+ */
21
+ CONTAINER = "container",
22
+ /**
23
+ * 子项模式
24
+ */
25
+ ITEM = "item"
26
+ }
@@ -0,0 +1,30 @@
1
+ //#region src/constants/design.ts
2
+ /**
3
+ * 节点模式
4
+ *
5
+ * @author zhanghanrui
6
+ * @date 2024-07-06 12:07:24
7
+ * @export
8
+ * @enum {number}
9
+ */
10
+ var DesignNodeMode = /* @__PURE__ */ function(DesignNodeMode) {
11
+ /**
12
+ * 主页面模式
13
+ */
14
+ DesignNodeMode["PAGE"] = "PAGE";
15
+ /**
16
+ * 主页面模式
17
+ */
18
+ DesignNodeMode["PAGE_LOWER"] = "page";
19
+ /**
20
+ * 容器模式
21
+ */
22
+ DesignNodeMode["CONTAINER"] = "container";
23
+ /**
24
+ * 子项模式
25
+ */
26
+ DesignNodeMode["ITEM"] = "item";
27
+ return DesignNodeMode;
28
+ }({});
29
+ //#endregion
30
+ export { DesignNodeMode };
@@ -25,4 +25,4 @@ type SearchType = Record<string | 'more', {
25
25
  }>;
26
26
  /**字段对应的算子 */
27
27
  export declare const SEARCH_TYPE: SearchType;
28
- export {};
28
+ export * from './design';
@@ -1,3 +1,4 @@
1
+ import "./design.mjs";
1
2
  import { FIELD_TYPE, FormComponents, SEARCH_SERVICE } from "@gct-paas/core";
2
3
  //#region src/constants/index.ts
3
4
  /**
package/es/index.mjs CHANGED
@@ -1,4 +1,5 @@
1
1
  import { getWidgetInfo, mobileWidgetInfo, padWidgetInfo, registerMobilePluginWidgetItem, registerMobileWidgetItem, registerPadPluginWidgetItem, registerPadWidgetItem, registerPluginWidgetItem, registerWebPluginWidgetItem, registerWebWidgetItem, registerWidgetItem, webWidgetInfo } from "./utils/widget-info/widget-info.mjs";
2
+ import { DesignNodeMode } from "./constants/design.mjs";
2
3
  import { DatepickerTypes, SEARCH_TYPE, padVTableSupportEditFieldTypes } from "./constants/index.mjs";
3
4
  import { convertMappingType, flatten, transformMappingField, transformMappingField4Auto } from "./utils/schema/utils.mjs";
4
5
  import { cloneWidget, createdSearchField, deepFindNotField, getCompPos, isFormFieldType, setChildrenId, transformI18n } from "./utils/schema/index.mjs";
@@ -7,4 +8,4 @@ import "./utils/index.mjs";
7
8
  //#region src/index.ts
8
9
  var src_default = { install() {} };
9
10
  //#endregion
10
- export { ALIGN_TO_FLEX_MAP, DatepickerTypes, SEARCH_TYPE, addImportant, addPxUnit, cloneWidget, convertMappingType, createdSearchField, deepFindNotField, src_default as default, extractFontStyle, flatten, formatBorder, generateBorderStyles, generatePositionStyles, generateSpacingStyles, generateWrapperStyle, getCompPos, getWidgetInfo, isFormFieldType, makeStyleProp, mobileWidgetInfo, padVTableSupportEditFieldTypes, padWidgetInfo, propsToStyle, pxToVw, registerMobilePluginWidgetItem, registerMobileWidgetItem, registerPadPluginWidgetItem, registerPadWidgetItem, registerPluginWidgetItem, registerWebPluginWidgetItem, registerWebWidgetItem, registerWidgetItem, setChildrenId, transAlign2flex, transformI18n, transformMappingField, transformMappingField4Auto, webWidgetInfo };
11
+ export { ALIGN_TO_FLEX_MAP, DatepickerTypes, DesignNodeMode, SEARCH_TYPE, addImportant, addPxUnit, cloneWidget, convertMappingType, createdSearchField, deepFindNotField, src_default as default, extractFontStyle, flatten, formatBorder, generateBorderStyles, generatePositionStyles, generateSpacingStyles, generateWrapperStyle, getCompPos, getWidgetInfo, isFormFieldType, makeStyleProp, mobileWidgetInfo, padVTableSupportEditFieldTypes, padWidgetInfo, propsToStyle, pxToVw, registerMobilePluginWidgetItem, registerMobileWidgetItem, registerPadPluginWidgetItem, registerPadWidgetItem, registerPluginWidgetItem, registerWebPluginWidgetItem, registerWebWidgetItem, registerWidgetItem, setChildrenId, transAlign2flex, transformI18n, transformMappingField, transformMappingField4Auto, webWidgetInfo };
@@ -0,0 +1,13 @@
1
+ import { IDesignNode } from './i-design-node';
2
+ import { IDesignNodeData } from './i-design-node-data';
3
+ /**
4
+ * 容器节点
5
+ *
6
+ * @author zhanghanrui
7
+ * @date 2024-07-12 17:07:56
8
+ * @export
9
+ * @interface IDesignContainerNode
10
+ * @extends {IDesignNode<T>}
11
+ * @template T
12
+ */
13
+ export type IDesignContainerNode<T extends IDesignNodeData = IDesignNodeData> = IDesignNode<T>;
@@ -0,0 +1,44 @@
1
+ import { IDesignNode } from './i-design-node';
2
+ import { IDesignTreeItem } from './i-design-tree-item';
3
+ /**
4
+ * 设计 json
5
+ *
6
+ * @author zhanghanrui
7
+ * @date 2024-07-11 17:07:54
8
+ * @export
9
+ * @interface IDesignData
10
+ */
11
+ export interface IDesignData {
12
+ /**
13
+ * 设计界面类型
14
+ *
15
+ * @author zhanghanrui
16
+ * @date 2024-10-12 09:10:39
17
+ * @type {string}
18
+ */
19
+ type: string;
20
+ /**
21
+ * 页面节点
22
+ *
23
+ * @author zhanghanrui
24
+ * @date 2024-07-24 10:07:39
25
+ * @type {IDesignNode | null}
26
+ */
27
+ pageNode: IDesignNode | null;
28
+ /**
29
+ * 设计元素节点
30
+ *
31
+ * @author zhanghanrui
32
+ * @date 2024-07-11 17:07:01
33
+ * @type {IDesignNode[]}
34
+ */
35
+ nodes: IDesignNode[];
36
+ /**
37
+ * 层级树
38
+ *
39
+ * @author zhanghanrui
40
+ * @date 2024-08-20 10:08:11
41
+ * @type {IDesignTreeItem[]}
42
+ */
43
+ tree: IDesignTreeItem[];
44
+ }
@@ -0,0 +1,20 @@
1
+ import { IDesignNodeData } from './i-design-node-data';
2
+ /**
3
+ * 设计编辑器数据接口
4
+ *
5
+ * @author chitanda
6
+ * @date 2025-07-07 15:07:57
7
+ * @export
8
+ * @interface IDesignEditorData
9
+ * @extends {IDesignNodeData}
10
+ */
11
+ export interface IDesignEditorData extends IDesignNodeData {
12
+ /**
13
+ * 属性配置
14
+ *
15
+ * @author chitanda
16
+ * @date 2025-07-07 15:07:03
17
+ * @type {IObject}
18
+ */
19
+ field: IObject;
20
+ }
@@ -0,0 +1,15 @@
1
+ import { IDesignEditorData } from './i-design-editor-data';
2
+ import { IDesignNode } from './i-design-node';
3
+ /**
4
+ * 设计编辑器节点接口
5
+ *
6
+ * @author chitanda
7
+ * @date 2025-07-07 15:07:25
8
+ * @export
9
+ * @interface IDesignEditorNode
10
+ * @extends {IDesignNode<T>}
11
+ * @template T
12
+ */
13
+ export interface IDesignEditorNode<T extends IDesignEditorData = IDesignEditorData> extends IDesignNode<T> {
14
+ [key: string]: any;
15
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * 设计节点数据
3
+ *
4
+ * @author zhanghanrui
5
+ * @date 2024-07-09 16:07:29
6
+ * @export
7
+ * @interface IDesignNodeData
8
+ */
9
+ export interface IDesignNodeData {
10
+ [key: string | symbol]: any;
11
+ /**
12
+ * 设计节点名称
13
+ *
14
+ * @author zhanghanrui
15
+ * @date 2024-07-12 11:07:05
16
+ * @type {string}
17
+ */
18
+ name?: string;
19
+ }
@@ -0,0 +1,80 @@
1
+ import { IDesignNodeData } from './i-design-node-data';
2
+ /**
3
+ * 设计节点
4
+ *
5
+ * @author zhanghanrui
6
+ * @date 2024-07-09 16:07:21
7
+ * @export
8
+ * @interface IDesignNode
9
+ * @template T
10
+ */
11
+ export interface IDesignNode<T extends IDesignNodeData = IDesignNodeData> {
12
+ /**
13
+ * 节点唯一标识
14
+ *
15
+ * @author zhanghanrui
16
+ * @date 2024-07-05 13:07:46
17
+ * @type {string}
18
+ */
19
+ id: string;
20
+ /**
21
+ * 排序值
22
+ * 2024年8月23日15:10:19 - 改版后 order 不再使用
23
+ *
24
+ * @deprecated
25
+ * @author zhanghanrui
26
+ * @date 2024-07-12 14:07:40
27
+ * @type {number}
28
+ */
29
+ order?: number;
30
+ /**
31
+ * 名称
32
+ *
33
+ * @author zhanghanrui
34
+ * @date 2024-07-05 15:07:37
35
+ * @type {string}
36
+ */
37
+ label: string;
38
+ /**
39
+ * 节点类型
40
+ *
41
+ * @author zhanghanrui
42
+ * @date 2024-07-05 13:07:46
43
+ * @type {string}
44
+ */
45
+ type: string;
46
+ /**
47
+ * 数据更新时间戳
48
+ *
49
+ * @author zhanghanrui
50
+ * @date 2024-07-05 17:07:02
51
+ * @type {number}
52
+ */
53
+ updateDate: number;
54
+ /**
55
+ * 设计项的数据
56
+ *
57
+ * @author zhanghanrui
58
+ * @date 2024-07-09 16:07:47
59
+ * @type {T}
60
+ */
61
+ data: T;
62
+ /**
63
+ * 父节点标识
64
+ * 2024年8月23日15:10:19 - 改版后 parentId 不再使用
65
+ *
66
+ * @deprecated
67
+ * @author zhanghanrui
68
+ * @date 2024-07-05 13:07:38
69
+ * @type {string}
70
+ */
71
+ parentId?: string;
72
+ /**
73
+ * 克隆
74
+ *
75
+ * @author zhanghanrui
76
+ * @date 2024-07-12 13:07:44
77
+ * @return {*} {IDesignNode}
78
+ */
79
+ clone(): IDesignNode;
80
+ }
@@ -0,0 +1,15 @@
1
+ import { IDesignNodeData } from './i-design-node-data';
2
+ /**
3
+ * 设计界面节点
4
+ *
5
+ * @author zhanghanrui
6
+ * @date 2024-07-24 10:07:27
7
+ * @export
8
+ * @interface IDesignPageNode
9
+ * @extends {IDesignNode}
10
+ */
11
+ export interface IDesignPageNodeData extends IDesignNodeData {
12
+ background: string;
13
+ padding: string;
14
+ headerBgColor?: boolean;
15
+ }
@@ -0,0 +1,26 @@
1
+ /**
2
+ * 设计树项
3
+ *
4
+ * @author zhanghanrui
5
+ * @date 2024-08-20 10:08:36
6
+ * @export
7
+ * @interface IDesignTreeItem
8
+ */
9
+ export interface IDesignTreeItem {
10
+ /**
11
+ * 标识
12
+ *
13
+ * @author zhanghanrui
14
+ * @date 2024-08-20 10:08:48
15
+ * @type {string}
16
+ */
17
+ id: string;
18
+ /**
19
+ * 子项
20
+ *
21
+ * @author zhanghanrui
22
+ * @date 2024-08-20 10:08:56
23
+ * @type {IDesignTreeItem[]}
24
+ */
25
+ children?: IDesignTreeItem[];
26
+ }
@@ -0,0 +1,46 @@
1
+ import { IDesignNode } from './i-design-node';
2
+ /**
3
+ * 拖拽数据项
4
+ *
5
+ * @export
6
+ * @interface IDragDataItem
7
+ * @template O
8
+ */
9
+ export interface IDragDataItem<O extends IDesignNode = IDesignNode> {
10
+ /**
11
+ * 当前数据标识,如果是新数据则主键为空
12
+ *
13
+ * @type {string}
14
+ */
15
+ id: string;
16
+ /**
17
+ * 拖拽分组实例标识
18
+ *
19
+ * @type {string}
20
+ */
21
+ group: string;
22
+ /**
23
+ * 拖拽项原位置索引
24
+ *
25
+ * @type {number}
26
+ */
27
+ index: number;
28
+ /**
29
+ * 当前拖拽数据
30
+ *
31
+ * @type {O}
32
+ */
33
+ data: O;
34
+ /**
35
+ * 数据模式
36
+ *
37
+ * @type {('create' | 'move')} 新建 | 移动
38
+ */
39
+ mode: 'create' | 'move';
40
+ /**
41
+ * 包含自身 + 所有子的类型,目前主要用于拖拽限制
42
+ *
43
+ * @type {string[]}
44
+ */
45
+ types: string[];
46
+ }
@@ -0,0 +1,9 @@
1
+ export type { IDesignContainerNode } from './i-design-container-node';
2
+ export type { IDesignPageNodeData } from './i-design-page-node-data';
3
+ export type { IDesignData } from './i-design-data';
4
+ export type { IDesignEditorData } from './i-design-editor-data';
5
+ export type { IDesignEditorNode } from './i-design-editor-node';
6
+ export type { IDesignNodeData } from './i-design-node-data';
7
+ export type { IDesignNode } from './i-design-node';
8
+ export type { IDesignTreeItem } from './i-design-tree-item';
9
+ export type { IDragDataItem } from './i-drag-data-item';
@@ -4,3 +4,5 @@ export type * from './schema';
4
4
  export type * from './widget';
5
5
  export type * from './widget-info';
6
6
  export type * from './designer';
7
+ export type * from './relationship-diagram-config';
8
+ export type * from './design';
@@ -0,0 +1,82 @@
1
+ /**
2
+ * 节点
3
+ *
4
+ * @author zhanghanrui
5
+ * @date 2024-06-25 10:06:53
6
+ * @export
7
+ * @interface IRelationshipDiagramNode
8
+ */
9
+ export interface IRelationshipDiagramNode {
10
+ /**
11
+ * 节点唯一标识
12
+ *
13
+ * @author zhanghanrui
14
+ * @date 2024-06-25 13:06:35
15
+ * @type {string}
16
+ */
17
+ id: string;
18
+ /**
19
+ * 字段唯一标识
20
+ *
21
+ * @author zhanghanrui
22
+ * @date 2024-07-05 10:07:11
23
+ * @type {string | null}
24
+ */
25
+ id_: string | null;
26
+ /**
27
+ * 节点类型
28
+ *
29
+ * @author zhanghanrui
30
+ * @date 2024-06-25 13:06:44
31
+ * @type {string}
32
+ */
33
+ type: string;
34
+ /**
35
+ * 当前模型标识
36
+ *
37
+ * @author zhanghanrui
38
+ * @date 2024-06-26 16:06:15
39
+ * @type {string | null}
40
+ */
41
+ modelKey: string | null;
42
+ /**
43
+ * 模型类型
44
+ *
45
+ * @author zhanghanrui
46
+ * @date 2024-06-26 16:06:30
47
+ * @type {string | null}
48
+ */
49
+ modelCategory: string | null;
50
+ /**
51
+ * 属性key
52
+ *
53
+ * @author zhanghanrui
54
+ * @date 2024-06-26 16:06:46
55
+ * @type {string | null}
56
+ */
57
+ value: string | null;
58
+ /**
59
+ * 属性文本
60
+ *
61
+ * @author zhanghanrui
62
+ * @date 2024-06-26 16:06:56
63
+ * @type {string | null}
64
+ */
65
+ label: string | null;
66
+ /**
67
+ * 是否为反向节点
68
+ *
69
+ * @author zhanghanrui
70
+ * @date 2024-06-28 15:06:46
71
+ * @type {boolean}
72
+ */
73
+ reverse?: boolean;
74
+ /**
75
+ * 禁止选择属性
76
+ *
77
+ * @author zhanghanrui
78
+ * @date 2024-06-28 13:06:52
79
+ * @type {boolean}
80
+ */
81
+ noSelectField?: boolean;
82
+ }
@@ -0,0 +1,135 @@
1
+ import { IRelationshipDiagramNode } from './i-relationship-diagram-node';
2
+ /**
3
+ * 设计 json
4
+ *
5
+ * @author zhanghanrui
6
+ * @date 2024-06-29 17:06:51
7
+ * @export
8
+ * @interface IDesignJson
9
+ */
10
+ export interface IDesignJson {
11
+ /**
12
+ * 前置信息
13
+ *
14
+ * @author zhanghanrui
15
+ * @date 2024-06-29 17:06:58
16
+ * @type {IData}
17
+ */
18
+ before?: IData;
19
+ /**
20
+ * 节点信息
21
+ *
22
+ * @author zhanghanrui
23
+ * @date 2024-06-29 17:06:10
24
+ * @type {IRelationshipDiagramNode[]}
25
+ */
26
+ nodes: IRelationshipDiagramNode[];
27
+ /**
28
+ * 后置信息
29
+ *
30
+ * @author zhanghanrui
31
+ * @date 2024-06-29 17:06:08
32
+ * @type {IData}
33
+ */
34
+ after?: IData;
35
+ }
36
+ export interface INodeData {
37
+ /**
38
+ * 模型标识
39
+ *
40
+ * @author zhanghanrui
41
+ * @date 2024-06-29 17:06:38
42
+ * @type {string}
43
+ */
44
+ modelKey: string;
45
+ /**
46
+ * 模型类型
47
+ *
48
+ * @author zhanghanrui
49
+ * @date 2024-06-29 17:06:06
50
+ * @type {string}
51
+ */
52
+ modelCategory: string;
53
+ /**
54
+ * 属性标识
55
+ *
56
+ * @author zhanghanrui
57
+ * @date 2024-06-29 17:06:42
58
+ * @type {string}
59
+ */
60
+ fieldKey: string;
61
+ /**
62
+ * 节点方向
63
+ *
64
+ * @author zhanghanrui
65
+ * @date 2024-06-29 17:06:47
66
+ * @type {('forward' | 'backward' | '')}
67
+ */
68
+ direction: 'forward' | 'backward' | '';
69
+ }
70
+ /**
71
+ * 数据联动 ruleConfig 配置清单
72
+ *
73
+ * @author zhanghanrui
74
+ * @date 2024-06-29 17:06:29
75
+ * @export
76
+ * @interface IRuleConfig
77
+ */
78
+ export interface IRuleConfig {
79
+ /**
80
+ * 设计 json 配置
81
+ *
82
+ * @author zhanghanrui
83
+ * @date 2024-06-29 17:06:31
84
+ * @type {IDesignJson}
85
+ */
86
+ designJson: IDesignJson;
87
+ /**
88
+ * 是否强依赖
89
+ *
90
+ * @author zhanghanrui
91
+ * @date 2024-09-02 15:09:15
92
+ * @type {boolean}
93
+ */
94
+ strongDependence: boolean;
95
+ /**
96
+ * 主查字段名称
97
+ *
98
+ * @author zhanghanrui
99
+ * @date 2024-06-29 19:06:48
100
+ * @type {string}
101
+ */
102
+ modelKey: string;
103
+ /**
104
+ * 属性标识(不是所有场景都有)
105
+ *
106
+ * @author zhanghanrui
107
+ * @date 2024-07-05 11:07:25
108
+ * @type {string}
109
+ */
110
+ fieldId?: string;
111
+ /**
112
+ * 属性标识(不是所有场景都有)
113
+ *
114
+ * @author zhanghanrui
115
+ * @date 2024-06-29 17:06:47
116
+ * @type {string}
117
+ */
118
+ fieldKey?: string;
119
+ /**
120
+ * 属性名称
121
+ *
122
+ * @author zhanghanrui
123
+ * @date 2024-06-29 19:06:24
124
+ * @type {string}
125
+ */
126
+ fieldLabel?: string;
127
+ /**
128
+ * 给后台使用的 nodes 清单
129
+ *
130
+ * @author zhanghanrui
131
+ * @date 2024-06-29 17:06:41
132
+ * @type {INodeData[]}
133
+ */
134
+ nodes: INodeData[];
135
+ }
@@ -0,0 +1,2 @@
1
+ export type * from './i-relationship-diagram-node';
2
+ export type * from './i-rule-config';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gct-paas/schema",
3
- "version": "0.1.4-dev.12",
3
+ "version": "0.1.4-dev.14",
4
4
  "type": "module",
5
5
  "description": "paas 平台 schema 架构包",
6
6
  "main": "dist/index.min.cjs",
@@ -52,13 +52,9 @@
52
52
  },
53
53
  "dependencies": {
54
54
  "@gct-paas/api": "0.1.1",
55
- "@gct-paas/core": "0.1.4-dev.12",
55
+ "@gct-paas/core": "0.1.4-dev.14",
56
56
  "lodash-es": "^4.17.23",
57
- "vue": "^3.5.29"
57
+ "vue": "^3.5.30"
58
58
  },
59
- "devDependencies": {
60
- "@gct-paas/build": "^0.1.6-dev.1",
61
- "vitest": "^4.0.18"
62
- },
63
- "gitHead": "0a7f1a0388cb21eb1c3a4868b14d664a5a3152ed"
59
+ "gitHead": "d03e6d5c7bd1c3edf73777ce40e0c0ed4982622f"
64
60
  }