@gct-paas/core 0.1.4-dev.10 → 0.1.4-dev.11

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 (196) hide show
  1. package/dist/index.esm.min.mjs +13345 -3124
  2. package/dist/index.min.cjs +22 -15
  3. package/dist/index.system.min.js +22 -15
  4. package/es/constants/default-date-type/default-date-type.d.ts +70 -0
  5. package/es/constants/default-date-type/default-date-type.mjs +22 -0
  6. package/es/constants/expression-type/BuiltOperators.mjs +2 -0
  7. package/es/constants/index.d.ts +2 -1
  8. package/es/constants/page-designer/model.d.ts +4 -0
  9. package/es/constants/page-designer/model.mjs +7 -0
  10. package/es/enums/globalEnum.d.ts +15 -0
  11. package/es/enums/globalEnum.mjs +13 -1
  12. package/es/enums/page-designer/widget.d.ts +5 -0
  13. package/es/enums/page-designer/widget.mjs +6 -1
  14. package/es/global/gct/gct.d.ts +9 -3
  15. package/es/global/gct/gct.mjs +11 -6
  16. package/es/hooks/index.d.ts +0 -2
  17. package/es/index.d.ts +1 -3
  18. package/es/index.mjs +15 -35
  19. package/es/interface/i-dictionary/i-dictionary-item.d.ts +6 -0
  20. package/es/interface/i-global-register/i-global-register.d.ts +8 -0
  21. package/es/interface/i-pinia-action/i-global-actions.d.ts +4 -0
  22. package/es/interface/i-pinia-getter/i-global-getters.d.ts +2 -0
  23. package/es/interface/i-pinia-state/i-global-state.d.ts +12 -1
  24. package/es/interface/index.d.ts +3 -6
  25. package/es/interface/model-desginer/entity.d.ts +110 -0
  26. package/es/interface/provider/index.d.ts +0 -2
  27. package/es/modules/mqtt/constants/mqtt.const.d.ts +33 -0
  28. package/es/modules/mqtt/constants/mqtt.const.mjs +27 -0
  29. package/es/modules/mqtt/enums/mqtt-status.enum.d.ts +20 -0
  30. package/es/modules/mqtt/enums/mqtt-status.enum.mjs +10 -0
  31. package/es/modules/mqtt/index.d.ts +5 -0
  32. package/es/modules/mqtt/interfaces/i-mqtt.d.ts +139 -0
  33. package/es/modules/mqtt/mqtt-client.d.ts +117 -0
  34. package/es/modules/mqtt/mqtt-client.mjs +262 -0
  35. package/es/modules/mqtt/mqtt-manager.d.ts +87 -0
  36. package/es/modules/mqtt/mqtt-manager.mjs +78 -0
  37. package/es/modules/platform-config/enums/platform.enum.d.ts +0 -15
  38. package/es/modules/platform-config/enums/platform.enum.mjs +1 -13
  39. package/es/modules/platform-config/interfaces/index.d.ts +0 -1
  40. package/es/modules/platform-config/store.mjs +4 -1
  41. package/es/modules/user-stores/store/user.store.d.ts +74 -0
  42. package/es/modules/user-stores/store/user.store.mjs +16 -1
  43. package/es/modules/user-stores/types/user.d.ts +1 -0
  44. package/es/setup-app.mjs +11 -0
  45. package/es/state/global-pinia-state/global-pinia-state.d.ts +15 -1
  46. package/es/state/global-pinia-state/global-pinia-state.mjs +14 -0
  47. package/es/state/index.d.ts +0 -9
  48. package/es/store/global-store.mjs +14 -0
  49. package/es/utils/design/design.d.ts +11 -0
  50. package/es/utils/design/design.mjs +15 -0
  51. package/es/utils/file/base64Conver.d.ts +9 -0
  52. package/es/utils/file/base64Conver.mjs +35 -0
  53. package/es/utils/file/download.d.ts +44 -0
  54. package/es/utils/file/download.mjs +107 -0
  55. package/es/utils/index.d.ts +6 -2
  56. package/es/utils/permission.d.ts +19 -0
  57. package/es/utils/permission.mjs +38 -0
  58. package/es/utils/uploader/uploader.d.ts +20 -0
  59. package/es/utils/uploader/uploader.mjs +120 -0
  60. package/es/utils/validate.d.ts +5 -0
  61. package/es/utils/validate.mjs +25 -0
  62. package/package.json +5 -4
  63. package/es/constants/editor-type/editor-type.d.ts +0 -244
  64. package/es/constants/editor-type/editor-type.mjs +0 -63
  65. package/es/controller/edit-form/edit-form.controller.d.ts +0 -28
  66. package/es/controller/edit-form/edit-form.controller.mjs +0 -47
  67. package/es/controller/editor/color-editor.controller.d.ts +0 -13
  68. package/es/controller/editor/color-editor.controller.mjs +0 -6
  69. package/es/controller/editor/length-unit-editor.controller.d.ts +0 -13
  70. package/es/controller/editor/length-unit-editor.controller.mjs +0 -6
  71. package/es/controller/editor-item/editor-item.controller.d.ts +0 -14
  72. package/es/controller/editor-item/editor-item.controller.mjs +0 -8
  73. package/es/controller/form/form.controller.d.ts +0 -76
  74. package/es/controller/form/form.controller.mjs +0 -147
  75. package/es/controller/form-collapse/form-collapse.controller.d.ts +0 -18
  76. package/es/controller/form-collapse/form-collapse.controller.mjs +0 -14
  77. package/es/controller/form-collapse-pane/form-collapse-pane.controller.d.ts +0 -18
  78. package/es/controller/form-collapse-pane/form-collapse-pane.controller.mjs +0 -14
  79. package/es/controller/form-edit-item/form-edit-item.controller.d.ts +0 -27
  80. package/es/controller/form-edit-item/form-edit-item.controller.mjs +0 -74
  81. package/es/controller/form-group/form-group.controller.d.ts +0 -18
  82. package/es/controller/form-group/form-group.controller.mjs +0 -14
  83. package/es/controller/form-item/form-item.controller.d.ts +0 -21
  84. package/es/controller/form-item/form-item.controller.mjs +0 -43
  85. package/es/controller/form-item-basic/form-item-basic.controller.d.ts +0 -57
  86. package/es/controller/form-item-basic/form-item-basic.controller.mjs +0 -49
  87. package/es/controller/form-item-hidden/form-item-hidden.controller.d.ts +0 -17
  88. package/es/controller/form-item-hidden/form-item-hidden.controller.mjs +0 -7
  89. package/es/controller/form-tab/form-tab.controller.d.ts +0 -18
  90. package/es/controller/form-tab/form-tab.controller.mjs +0 -14
  91. package/es/controller/form-tab-pane/form-tab-pane.controller.d.ts +0 -18
  92. package/es/controller/form-tab-pane/form-tab-pane.controller.mjs +0 -14
  93. package/es/controller/gct-form/gct-form.controller.d.ts +0 -101
  94. package/es/controller/gct-form/gct-form.controller.mjs +0 -214
  95. package/es/controller/index.d.ts +0 -15
  96. package/es/hooks/use-form/use-form.d.ts +0 -10
  97. package/es/hooks/use-form/use-form.mjs +0 -8
  98. package/es/hooks/use-gct-form-value/use-gct-form-value.d.ts +0 -22
  99. package/es/hooks/use-gct-form-value/use-gct-form-value.mjs +0 -89
  100. package/es/hooks/use-overlay-scrollbars/use-overlay-scrollbars.d.ts +0 -11
  101. package/es/interface/controller/edit-form/edit-form.controller.d.ts +0 -26
  102. package/es/interface/controller/editor/i-color-editor.controller.d.ts +0 -11
  103. package/es/interface/controller/editor/i-length-unit-editor.controller.d.ts +0 -11
  104. package/es/interface/controller/editor-item/editor-item.controller.d.ts +0 -19
  105. package/es/interface/controller/form/form.controller.d.ts +0 -121
  106. package/es/interface/controller/form-collapse/form-collapse.controller.d.ts +0 -23
  107. package/es/interface/controller/form-collapse-pane/form-collapse-pane.controller.d.ts +0 -23
  108. package/es/interface/controller/form-edit-item/form-edit-item.controller.d.ts +0 -59
  109. package/es/interface/controller/form-group/form-group.controller.d.ts +0 -24
  110. package/es/interface/controller/form-hidden-item/form-hidden-item.controller.d.ts +0 -24
  111. package/es/interface/controller/form-item/form-item.controller.d.ts +0 -40
  112. package/es/interface/controller/form-item-basic/form-item-basic.controller.d.ts +0 -51
  113. package/es/interface/controller/form-tab/form-tab.controller.d.ts +0 -23
  114. package/es/interface/controller/form-tab-pane/form-tab-pane.controller.d.ts +0 -23
  115. package/es/interface/controller/index.d.ts +0 -14
  116. package/es/interface/events/form/i-form.event.d.ts +0 -11
  117. package/es/interface/events/index.d.ts +0 -1
  118. package/es/interface/form/i-editor/i-check-switch.d.ts +0 -29
  119. package/es/interface/form/i-editor/i-checkbox-editor.d.ts +0 -9
  120. package/es/interface/form/i-editor/i-color-editor.d.ts +0 -13
  121. package/es/interface/form/i-editor/i-editor-basic.d.ts +0 -87
  122. package/es/interface/form/i-editor/i-icon-select-editor.d.ts +0 -21
  123. package/es/interface/form/i-editor/i-info-editor.d.ts +0 -21
  124. package/es/interface/form/i-editor/i-length-unit-editor.d.ts +0 -13
  125. package/es/interface/form/i-editor/i-model-field-select-editor.d.ts +0 -18
  126. package/es/interface/form/i-editor/i-number-editor.d.ts +0 -21
  127. package/es/interface/form/i-editor/i-picker-editor.d.ts +0 -30
  128. package/es/interface/form/i-editor/i-radio-editor.d.ts +0 -21
  129. package/es/interface/form/i-editor/i-select-editor.d.ts +0 -14
  130. package/es/interface/form/i-editor/i-span-editor.d.ts +0 -30
  131. package/es/interface/form/i-editor/i-switch-editor.d.ts +0 -14
  132. package/es/interface/form/i-editor/i-text-editor.d.ts +0 -46
  133. package/es/interface/form/i-editor/i-textarea-editor.d.ts +0 -25
  134. package/es/interface/form/i-form/i-edit-form.d.ts +0 -48
  135. package/es/interface/form/i-form/i-form-collapse-pane.d.ts +0 -30
  136. package/es/interface/form/i-form/i-form-collapse.d.ts +0 -35
  137. package/es/interface/form/i-form/i-form-container.d.ts +0 -53
  138. package/es/interface/form/i-form/i-form-edit-item.d.ts +0 -140
  139. package/es/interface/form/i-form/i-form-group-container.d.ts +0 -24
  140. package/es/interface/form/i-form/i-form-group.d.ts +0 -35
  141. package/es/interface/form/i-form/i-form-hidden-item.d.ts +0 -11
  142. package/es/interface/form/i-form/i-form-item-basic.d.ts +0 -126
  143. package/es/interface/form/i-form/i-form-item.d.ts +0 -11
  144. package/es/interface/form/i-form/i-form-tab-pane.d.ts +0 -23
  145. package/es/interface/form/i-form/i-form-tab.d.ts +0 -21
  146. package/es/interface/form/i-form/i-form.d.ts +0 -79
  147. package/es/interface/form/index.d.ts +0 -29
  148. package/es/interface/layout/i-flex-layout/i-flex-container.d.ts +0 -75
  149. package/es/interface/layout/i-flex-layout/i-flex-item.d.ts +0 -51
  150. package/es/interface/layout/i-grid-layout/i-grid-container.d.ts +0 -29
  151. package/es/interface/layout/i-grid-layout/i-grid-item-span.d.ts +0 -54
  152. package/es/interface/layout/i-grid-layout/i-grid-item.d.ts +0 -37
  153. package/es/interface/layout/i-layout-basis/i-layout-container-basis.d.ts +0 -11
  154. package/es/interface/layout/index.d.ts +0 -6
  155. package/es/interface/provider/i-editor-provider/i-editor-provider.d.ts +0 -24
  156. package/es/interface/provider/i-form-item-provider/i-form-item-provider.d.ts +0 -44
  157. package/es/interface/state/form/form.state.d.ts +0 -53
  158. package/es/interface/state/form-collapse/form-collapse.state.d.ts +0 -11
  159. package/es/interface/state/form-collapse-pane/form-collapse-pane.state.d.ts +0 -11
  160. package/es/interface/state/form-edit-item/form-edit-item.state.d.ts +0 -38
  161. package/es/interface/state/form-group/form-group.state.d.ts +0 -21
  162. package/es/interface/state/form-hidden-item/form-hidden-item.state.d.ts +0 -5
  163. package/es/interface/state/form-item/form-item.state.d.ts +0 -20
  164. package/es/interface/state/form-item-basic/form-item-basic.state.d.ts +0 -63
  165. package/es/interface/state/form-tab/form-tab.state.d.ts +0 -19
  166. package/es/interface/state/form-tab-pane/form-tab-pane.state.d.ts +0 -11
  167. package/es/interface/state/index.d.ts +0 -10
  168. package/es/modules/platform-config/interfaces/global-setting.interface.d.ts +0 -7
  169. package/es/register/editor-register/editor-register.d.ts +0 -49
  170. package/es/register/editor-register/editor-register.mjs +0 -57
  171. package/es/register/form-item-register/form-item-register.d.ts +0 -36
  172. package/es/register/form-item-register/form-item-register.mjs +0 -42
  173. package/es/register/index.d.ts +0 -14
  174. package/es/state/form/form.state.d.ts +0 -24
  175. package/es/state/form/form.state.mjs +0 -16
  176. package/es/state/form-collapse/form-collapse.state.d.ts +0 -14
  177. package/es/state/form-collapse/form-collapse.state.mjs +0 -6
  178. package/es/state/form-collapse-pane/form-collapse-pane.state.d.ts +0 -14
  179. package/es/state/form-collapse-pane/form-collapse-pane.state.mjs +0 -6
  180. package/es/state/form-edit-item/form-edit-item.state.d.ts +0 -17
  181. package/es/state/form-edit-item/form-edit-item.state.mjs +0 -10
  182. package/es/state/form-group/form-group.state.d.ts +0 -21
  183. package/es/state/form-group/form-group.state.mjs +0 -14
  184. package/es/state/form-item/form-item.state.d.ts +0 -14
  185. package/es/state/form-item/form-item.state.mjs +0 -6
  186. package/es/state/form-item-basic/form-item-basic.state.d.ts +0 -17
  187. package/es/state/form-item-basic/form-item-basic.state.mjs +0 -9
  188. package/es/state/form-tab/form-tab.state.d.ts +0 -15
  189. package/es/state/form-tab/form-tab.state.mjs +0 -7
  190. package/es/state/form-tab-pane/form-tab-pane.state.d.ts +0 -14
  191. package/es/state/form-tab-pane/form-tab-pane.state.mjs +0 -6
  192. package/es/utils/props/gct-form-item/gct-form-item.props.d.ts +0 -63
  193. package/es/utils/props/gct-form-item/gct-form-item.props.mjs +0 -66
  194. package/es/utils/props/index.d.ts +0 -1
  195. package/es/utils/width-install/width-install.d.ts +0 -17
  196. package/es/utils/width-install/width-install.mjs +0 -23
@@ -1,6 +0,0 @@
1
- import { EditorController } from '../editor-item/editor-item.controller.mjs';
2
-
3
- class LengthUnitEditorController extends EditorController {
4
- }
5
-
6
- export { LengthUnitEditorController };
@@ -1,14 +0,0 @@
1
- import { IEditorBasic, IEditorController } from '../../interface';
2
- /**
3
- * 编辑器控制器
4
- *
5
- * @author zhanghanrui
6
- * @date 2024-04-02 13:04:55
7
- * @export
8
- * @class EditorController
9
- * @implements {IEditorController}
10
- */
11
- export declare class EditorController<M extends IEditorBasic = IEditorBasic> implements IEditorController<M> {
12
- readonly model: M;
13
- constructor(model: M);
14
- }
@@ -1,8 +0,0 @@
1
- class EditorController {
2
- model;
3
- constructor(model) {
4
- this.model = model;
5
- }
6
- }
7
-
8
- export { EditorController };
@@ -1,76 +0,0 @@
1
- import { IForm, IFormState, IFormController, IFormItemBasic, IFormItemProvider, IFormItemBasicController, IFormEvent } from '../../interface';
2
- import { QXEvent } from 'qx-util';
3
- /**
4
- * 表单控制器
5
- *
6
- * @author zhanghanrui
7
- * @date 2024-03-27 09:03:56
8
- * @export
9
- * @class FormController
10
- */
11
- export declare class FormController implements IFormController {
12
- readonly model: IForm;
13
- readonly evt: QXEvent<IFormEvent>;
14
- context: IParams;
15
- params: IParams;
16
- state: IFormState;
17
- item: Record<string, IFormItemBasicController>;
18
- provider: Record<string, IFormItemProvider>;
19
- constructor(model: IForm);
20
- load(): Promise<IData>;
21
- loaded(): void;
22
- destroy(): void;
23
- validate(): Promise<boolean>;
24
- validateItem(_key: string): Promise<boolean>;
25
- mounted(): void;
26
- /**
27
- * 表单初始化
28
- *
29
- * @author zhanghanrui
30
- * @date 2024-04-01 13:04:27
31
- * @protected
32
- */
33
- protected init(): void;
34
- /**
35
- * 初始化表单事件订阅相关
36
- *
37
- * @author zhanghanrui
38
- * @date 2024-04-02 14:04:31
39
- * @protected
40
- */
41
- protected initEvent(): void;
42
- /**
43
- * 初始化表单项控制器
44
- *
45
- * @author zhanghanrui
46
- * @date 2024-04-01 13:04:38
47
- * @protected
48
- * @param {IFormItemBasic[]} models
49
- */
50
- protected initFormItems(models: IFormItemBasic[]): void;
51
- /**
52
- * 获取当前表单数据
53
- *
54
- * @author zhanghanrui
55
- * @date 2024-03-27 18:03:33
56
- * @return {*} {IData}
57
- */
58
- getData(): IData;
59
- /**
60
- * 重置表单数据
61
- *
62
- * @author zhanghanrui
63
- * @date 2024-03-27 18:03:09
64
- */
65
- resetData(): void;
66
- }
67
- /**
68
- * 获取表单控制器实例
69
- *
70
- * @author zhanghanrui
71
- * @date 2024-03-27 10:03:30
72
- * @export
73
- * @param {IForm} model
74
- * @return {*} {FormController}
75
- */
76
- export declare function useFormController(model: IForm): IFormController;
@@ -1,147 +0,0 @@
1
- import { reactive } from 'vue';
2
- import '../../enums/app-designer/index.mjs';
3
- import '../../enums/page-designer/designer.mjs';
4
- import '../../enums/breakpointEnum.mjs';
5
- import { FormState } from '../../state/form/form.state.mjs';
6
- import { QXEvent } from 'qx-util';
7
-
8
- class FormController {
9
- constructor(model) {
10
- this.model = model;
11
- this.init();
12
- }
13
- evt = new QXEvent();
14
- context = {};
15
- params = {};
16
- state = new FormState();
17
- item = {};
18
- provider = {};
19
- load() {
20
- throw new Error("Method not implemented.");
21
- }
22
- loaded() {
23
- throw new Error("Method not implemented.");
24
- }
25
- destroy() {
26
- throw new Error("Method not implemented.");
27
- }
28
- validate() {
29
- throw new Error("Method not implemented.");
30
- }
31
- validateItem(_key) {
32
- throw new Error("Method not implemented.");
33
- }
34
- mounted() {
35
- throw new Error("Method not implemented.");
36
- }
37
- /**
38
- * 表单初始化
39
- *
40
- * @author zhanghanrui
41
- * @date 2024-04-01 13:04:27
42
- * @protected
43
- */
44
- init() {
45
- if (this.model.children) {
46
- this.initFormItems(this.model.children);
47
- }
48
- this.initEvent();
49
- }
50
- /**
51
- * 初始化表单事件订阅相关
52
- *
53
- * @author zhanghanrui
54
- * @date 2024-04-02 14:04:31
55
- * @protected
56
- */
57
- initEvent() {
58
- }
59
- /**
60
- * 初始化表单项控制器
61
- *
62
- * @author zhanghanrui
63
- * @date 2024-04-01 13:04:38
64
- * @protected
65
- * @param {IFormItemBasic[]} models
66
- */
67
- initFormItems(models) {
68
- models.forEach((model) => {
69
- let provider = null;
70
- if (model.type === "item") {
71
- provider = _gct.register.formItem.create(
72
- `${model.type}___${model.editor.type}___${model.name}`
73
- );
74
- if (!provider) {
75
- provider = _gct.register.formItem.create(
76
- `${model.type}___${model.editor.type}`
77
- );
78
- }
79
- }
80
- if (!provider) {
81
- provider = _gct.register.formItem.create(model.type);
82
- }
83
- if (!provider) {
84
- console.error(`未找到表单项提供者:${model.type}`, model);
85
- return;
86
- }
87
- this.provider[model.name] = provider;
88
- if (model.type === "item") {
89
- const item = model;
90
- this.item[item.name] = provider.createController(
91
- this,
92
- model
93
- );
94
- } else if (model.type === "container") {
95
- const container = model;
96
- this.item[model.name] = provider.createController(
97
- this,
98
- model
99
- );
100
- if (container.children) {
101
- this.initFormItems(container.children);
102
- }
103
- }
104
- });
105
- }
106
- /**
107
- * 获取当前表单数据
108
- *
109
- * @author zhanghanrui
110
- * @date 2024-03-27 18:03:33
111
- * @return {*} {IData}
112
- */
113
- getData() {
114
- const data = {};
115
- return data;
116
- }
117
- /**
118
- * 重置表单数据
119
- *
120
- * @author zhanghanrui
121
- * @date 2024-03-27 18:03:09
122
- */
123
- resetData() {
124
- const keys = Object.keys(this.state.data);
125
- keys.forEach((key) => {
126
- const val = this.state.data[key];
127
- if (val) {
128
- if (typeof val === "object") {
129
- if (Array.isArray(val)) {
130
- this.state.data[key] = [];
131
- } else {
132
- this.state.data[key] = {};
133
- }
134
- } else {
135
- this.state.data[key] = null;
136
- }
137
- }
138
- });
139
- }
140
- }
141
- function useFormController(model) {
142
- const c = new FormController(model);
143
- c.state = reactive(c.state);
144
- return c;
145
- }
146
-
147
- export { FormController, useFormController };
@@ -1,18 +0,0 @@
1
- import { IFormCollapse, IFormCollapseController, IFormCollapseState } from '../../interface';
2
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller';
3
- /**
4
- * 表单折叠面板控制器
5
- *
6
- * @author lxm
7
- * @date 2024-07-15 09:07:23
8
- * @export
9
- * @class FormCollapseController
10
- * @extends {FormItemBasicController}
11
- * @implements {IFormCollapseController}
12
- */
13
- export declare class FormCollapseController extends FormItemBasicController implements IFormCollapseController {
14
- readonly type = "collapse";
15
- model: IFormCollapse;
16
- state: IFormCollapseState;
17
- protected crateItemState(): IFormCollapseState;
18
- }
@@ -1,14 +0,0 @@
1
- import '../../enums/app-designer/index.mjs';
2
- import '../../enums/page-designer/designer.mjs';
3
- import '../../enums/breakpointEnum.mjs';
4
- import { FormCollapseState } from '../../state/form-collapse/form-collapse.state.mjs';
5
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller.mjs';
6
-
7
- class FormCollapseController extends FormItemBasicController {
8
- type = "collapse";
9
- crateItemState() {
10
- return new FormCollapseState();
11
- }
12
- }
13
-
14
- export { FormCollapseController };
@@ -1,18 +0,0 @@
1
- import { IFormCollapsePane, IFormCollapsePaneController, IFormCollapsePaneState } from '../../interface';
2
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller';
3
- /**
4
- * 表单折叠面板项控制器
5
- *
6
- * @author lxm
7
- * @date 2024-07-15 09:07:23
8
- * @export
9
- * @class FormCollapsePaneController
10
- * @extends {FormItemBasicController}
11
- * @implements {IFormCollapsePaneController}
12
- */
13
- export declare class FormCollapsePaneController extends FormItemBasicController implements IFormCollapsePaneController {
14
- readonly type = "collapse-pane";
15
- model: IFormCollapsePane;
16
- state: IFormCollapsePaneState;
17
- protected crateItemState(): IFormCollapsePaneState;
18
- }
@@ -1,14 +0,0 @@
1
- import '../../enums/app-designer/index.mjs';
2
- import '../../enums/page-designer/designer.mjs';
3
- import '../../enums/breakpointEnum.mjs';
4
- import { FormCollapsePaneState } from '../../state/form-collapse-pane/form-collapse-pane.state.mjs';
5
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller.mjs';
6
-
7
- class FormCollapsePaneController extends FormItemBasicController {
8
- type = "collapse-pane";
9
- crateItemState() {
10
- return new FormCollapsePaneState();
11
- }
12
- }
13
-
14
- export { FormCollapsePaneController };
@@ -1,27 +0,0 @@
1
- import { IFormEditItem, IFormEditItemController, IFormEditItemState } from '../../interface';
2
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller';
3
- /**
4
- * 表单编辑项控制器
5
- *
6
- * @author zhanghanrui
7
- * @date 2024-04-02 20:04:00
8
- * @export
9
- * @abstract
10
- * @class FormEditItemController
11
- * @extends {FormItemBasicController}
12
- * @implements {IFormEditItemController}
13
- */
14
- export declare abstract class FormEditItemController extends FormItemBasicController implements IFormEditItemController {
15
- model: IFormEditItem;
16
- state: IFormEditItemState;
17
- get key(): string;
18
- get value(): any;
19
- set value(value: any);
20
- get editorValue(): any;
21
- set editorValue(v: any);
22
- protected init(): void;
23
- defaultValue(): void;
24
- reset(): void;
25
- blur(): void;
26
- protected crateItemState(): IFormEditItemState;
27
- }
@@ -1,74 +0,0 @@
1
- import { cloneDeep } from 'lodash-es';
2
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller.mjs';
3
- import '../../enums/app-designer/index.mjs';
4
- import '../../enums/page-designer/designer.mjs';
5
- import '../../enums/breakpointEnum.mjs';
6
- import { FormEditItemState } from '../../state/form-edit-item/form-edit-item.state.mjs';
7
-
8
- class FormEditItemController extends FormItemBasicController {
9
- get key() {
10
- return this.model.field ?? this.model.name;
11
- }
12
- get value() {
13
- return this.form.state.data[this.key];
14
- }
15
- set value(value) {
16
- const oldValue = cloneDeep(this.form.state.data[this.key]);
17
- this.form.state.data[this.key] = value;
18
- this.form.evt.emit("change", this.key, value, oldValue);
19
- this.state.value = value;
20
- }
21
- get editorValue() {
22
- if (this.model.fields) {
23
- return this.model.fields.map((key) => {
24
- return this.form.item[key].value;
25
- });
26
- }
27
- return this.value;
28
- }
29
- set editorValue(v) {
30
- if (this.model.fields) {
31
- this.model.fields.forEach((key, i) => {
32
- this.form.item[key].value = v?.[i];
33
- });
34
- } else {
35
- this.value = v;
36
- }
37
- }
38
- init() {
39
- super.init();
40
- if (this.model.type !== "hidden") {
41
- const { editor } = this.model;
42
- this.state.readonly = editor.readonly;
43
- if (editor.disabled != null) {
44
- this.state.disabled = editor.disabled;
45
- }
46
- }
47
- if (this.model.dictionary) {
48
- const { mode } = this.model.dictionary;
49
- if (mode === "static") {
50
- this.state.options = this.model.dictionary.items || [];
51
- }
52
- }
53
- }
54
- defaultValue() {
55
- if (this.form.state.data[this.key] === void 0 && this.model.defaultValue !== void 0) {
56
- this.form.state.data[this.key] = this.model.defaultValue;
57
- }
58
- }
59
- reset() {
60
- if (this.model.defaultValue !== void 0) {
61
- this.value = this.model.defaultValue;
62
- } else {
63
- this.value = void 0;
64
- }
65
- }
66
- blur() {
67
- console.warn("FormEditItemController.blur not implemented");
68
- }
69
- crateItemState() {
70
- return new FormEditItemState();
71
- }
72
- }
73
-
74
- export { FormEditItemController };
@@ -1,18 +0,0 @@
1
- import { IFormGroup, IFormGroupController, IFormGroupState } from '../../interface';
2
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller';
3
- /**
4
- * 表单分组控制器
5
- *
6
- * @author zhanghanrui
7
- * @date 2024-04-01 14:04:00
8
- * @export
9
- * @class FormGroupController
10
- * @extends {FormItemBasicController}
11
- * @implements {IFormGroupController}
12
- */
13
- export declare class FormGroupController extends FormItemBasicController implements IFormGroupController {
14
- readonly type = "group";
15
- model: IFormGroup;
16
- state: IFormGroupState;
17
- protected crateItemState(): IFormGroupState;
18
- }
@@ -1,14 +0,0 @@
1
- import '../../enums/app-designer/index.mjs';
2
- import '../../enums/page-designer/designer.mjs';
3
- import '../../enums/breakpointEnum.mjs';
4
- import { FormGroupState } from '../../state/form-group/form-group.state.mjs';
5
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller.mjs';
6
-
7
- class FormGroupController extends FormItemBasicController {
8
- type = "group";
9
- crateItemState() {
10
- return new FormGroupState();
11
- }
12
- }
13
-
14
- export { FormGroupController };
@@ -1,21 +0,0 @@
1
- import { IDictionaryItem, IFormItem, IFormItemController, IFormItemState } from '../../interface';
2
- import { FormEditItemController } from '../form-edit-item/form-edit-item.controller';
3
- /**
4
- * 表单项控制器
5
- *
6
- * @author zhanghanrui
7
- * @date 2024-04-02 20:04:03
8
- * @export
9
- * @class FormItemController
10
- * @extends {FormEditItemController}
11
- * @implements {IFormItemController}
12
- */
13
- export declare class FormItemController extends FormEditItemController implements IFormItemController {
14
- readonly type = "item";
15
- model: IFormItem;
16
- state: IFormItemState;
17
- loadDictionary(params?: IParams): Promise<IDictionaryItem[]>;
18
- clearDictionary(): void;
19
- blur(): void;
20
- protected crateItemState(): IFormItemState;
21
- }
@@ -1,43 +0,0 @@
1
- import '../../enums/app-designer/index.mjs';
2
- import '../../enums/page-designer/designer.mjs';
3
- import '../../enums/breakpointEnum.mjs';
4
- import { FormItemState } from '../../state/form-item/form-item.state.mjs';
5
- import { FormEditItemController } from '../form-edit-item/form-edit-item.controller.mjs';
6
-
7
- class FormItemController extends FormEditItemController {
8
- type = "item";
9
- async loadDictionary(params) {
10
- if (this.state.options.length > 0) {
11
- return this.state.options;
12
- }
13
- this.state.options = [];
14
- this.state.loading = true;
15
- try {
16
- if (this.model.dictionary) {
17
- this.state.options = await _gct.dictionary.asyncGetByConfig(
18
- this.model.dictionary,
19
- params
20
- );
21
- } else if (this.model.dictionaryTag) {
22
- this.state.options = await _gct.dictionary.asyncGet(
23
- this.model.dictionaryTag,
24
- params
25
- );
26
- }
27
- return this.state.options;
28
- } finally {
29
- this.state.loading = false;
30
- }
31
- }
32
- clearDictionary() {
33
- this.state.options = [];
34
- }
35
- blur() {
36
- console.warn("FormEditItemController.blur not implemented");
37
- }
38
- crateItemState() {
39
- return new FormItemState();
40
- }
41
- }
42
-
43
- export { FormItemController };
@@ -1,57 +0,0 @@
1
- import { IFormController, IFormItemBasic, IFormItemBasicController, IFormItemBasicState } from '../../interface';
2
- /**
3
- * 表单项基础控制器
4
- *
5
- * @author zhanghanrui
6
- * @date 2024-04-01 14:04:08
7
- * @export
8
- * @abstract
9
- * @class FormItemBasicController
10
- * @implements {IFormItemBasicController}
11
- */
12
- export declare abstract class FormItemBasicController implements IFormItemBasicController {
13
- protected readonly form: IFormController;
14
- readonly model: IFormItemBasic;
15
- /**
16
- * 表单项类型
17
- *
18
- * @author zhanghanrui
19
- * @date 2024-04-01 14:04:45
20
- * @abstract
21
- * @type {string}
22
- */
23
- abstract readonly type: string;
24
- /**
25
- * 表单项基础状态
26
- *
27
- * @description 禁止直接重写new实例,如果要覆盖重写 crateItemState 方法
28
- * @author zhanghanrui
29
- * @date 2024-04-02 22:04:07
30
- * @type {IFormItemBasicState}
31
- */
32
- state: IFormItemBasicState;
33
- get data(): any;
34
- /**
35
- * Creates an instance of FormItemBasicController.
36
- *
37
- * @author zhanghanrui
38
- * @date 2024-04-02 09:04:55
39
- * @param {IFormController} form
40
- * @param {IFormItemBasic} model
41
- */
42
- constructor(form: IFormController, model: IFormItemBasic);
43
- protected init(): void;
44
- destroy(): void;
45
- protected crateItemState(): IFormItemBasicState;
46
- }
47
- /**
48
- * 加载表单项控制器实例
49
- *
50
- * @author zhanghanrui
51
- * @date 2024-04-02 22:04:51
52
- * @export
53
- * @template T
54
- * @param {() => T} fn
55
- * @return {*} {T}
56
- */
57
- export declare function useFormItemController<T extends IFormItemBasicController = IFormItemBasicController>(fn: () => T): T;
@@ -1,49 +0,0 @@
1
- import { reactive } from 'vue';
2
- import '../../enums/app-designer/index.mjs';
3
- import '../../enums/page-designer/designer.mjs';
4
- import '../../enums/breakpointEnum.mjs';
5
- import { FormItemBasicState } from '../../state/form-item-basic/form-item-basic.state.mjs';
6
-
7
- class FormItemBasicController {
8
- /**
9
- * Creates an instance of FormItemBasicController.
10
- *
11
- * @author zhanghanrui
12
- * @date 2024-04-02 09:04:55
13
- * @param {IFormController} form
14
- * @param {IFormItemBasic} model
15
- */
16
- constructor(form, model) {
17
- this.form = form;
18
- this.model = model;
19
- this.init();
20
- }
21
- /**
22
- * 表单项基础状态
23
- *
24
- * @description 禁止直接重写new实例,如果要覆盖重写 crateItemState 方法
25
- * @author zhanghanrui
26
- * @date 2024-04-02 22:04:07
27
- * @type {IFormItemBasicState}
28
- */
29
- state = this.crateItemState();
30
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
31
- get data() {
32
- return this.form.state.data;
33
- }
34
- init() {
35
- }
36
- destroy() {
37
- this.state.destroyed = true;
38
- }
39
- crateItemState() {
40
- return new FormItemBasicState();
41
- }
42
- }
43
- function useFormItemController(fn) {
44
- const c = fn();
45
- c.state = reactive(c.state);
46
- return c;
47
- }
48
-
49
- export { FormItemBasicController, useFormItemController };
@@ -1,17 +0,0 @@
1
- import { IFormHiddenItem, IFormHiddenItemController, IFormHiddenItemState } from '../../interface';
2
- import { FormEditItemController } from '../form-edit-item/form-edit-item.controller';
3
- /**
4
- * 表单分组控制器
5
- *
6
- * @author zhanghanrui
7
- * @date 2024-04-01 14:04:00
8
- * @export
9
- * @class FormHiddenItemController
10
- * @extends {FormEditItemController}
11
- * @implements {IFormGroupController}
12
- */
13
- export declare class FormHiddenItemController extends FormEditItemController implements IFormHiddenItemController {
14
- readonly type = "hidden";
15
- model: IFormHiddenItem;
16
- state: IFormHiddenItemState;
17
- }
@@ -1,7 +0,0 @@
1
- import { FormEditItemController } from '../form-edit-item/form-edit-item.controller.mjs';
2
-
3
- class FormHiddenItemController extends FormEditItemController {
4
- type = "hidden";
5
- }
6
-
7
- export { FormHiddenItemController };
@@ -1,18 +0,0 @@
1
- import { IFormTab, IFormTabController, IFormTabState } from '../../interface';
2
- import { FormItemBasicController } from '../form-item-basic/form-item-basic.controller';
3
- /**
4
- * 表单分组控制器
5
- *
6
- * @author zhanghanrui
7
- * @date 2024-04-01 14:04:00
8
- * @export
9
- * @class FormTabController
10
- * @extends {FormItemBasicController}
11
- * @implements {IFormTabController}
12
- */
13
- export declare class FormTabController extends FormItemBasicController implements IFormTabController {
14
- readonly type = "tab";
15
- model: IFormTab;
16
- state: IFormTabState;
17
- protected crateItemState(): IFormTabState;
18
- }