amis-editor 4.2.0-beta.2 → 5.1.9-beta.0

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 (220) hide show
  1. package/dist/6dbcbb49b6fd405190a9.png +0 -0
  2. package/dist/component/Editor.d.ts +16 -0
  3. package/dist/component/RegionWrapper.d.ts +10 -0
  4. package/dist/component/VRenderer.d.ts +10 -0
  5. package/dist/component/base/BackTop.d.ts +1 -1
  6. package/dist/component/control/APIControl.d.ts +1158 -0
  7. package/dist/component/control/ActionAPIControl.d.ts +1158 -0
  8. package/dist/component/control/BadgeControl.d.ts +133 -0
  9. package/dist/component/control/BaseControl.d.ts +248 -0
  10. package/dist/component/control/DataBindingControl.d.ts +14 -0
  11. package/dist/component/control/DataPickerControl.d.ts +13 -0
  12. package/dist/component/control/DateShortCutControl.d.ts +83 -0
  13. package/dist/component/control/FormulaControl.d.ts +51 -0
  14. package/dist/component/{Control → control}/OptionControl.d.ts +23 -34
  15. package/dist/component/{Control → control}/PopoverEdit.d.ts +0 -0
  16. package/dist/component/control/StatusControl.d.ts +44 -0
  17. package/dist/component/control/SwitchMoreControl.d.ts +224 -0
  18. package/dist/component/control/ValidationControl.d.ts +65 -0
  19. package/dist/component/control/ValidationItem.d.ts +46 -0
  20. package/dist/component/control/style-control/Background.d.ts +17 -0
  21. package/dist/component/control/style-control/Border.d.ts +18 -0
  22. package/dist/component/control/style-control/BoxModel.d.ts +17 -0
  23. package/dist/component/control/style-control/BoxShadow.d.ts +18 -0
  24. package/dist/component/control/style-control/Display.d.ts +14 -0
  25. package/dist/component/control/style-control/Font.d.ts +16 -0
  26. package/dist/component/control/style-control/font-family.d.ts +11 -0
  27. package/dist/component/control/style-control/transformation.d.ts +29 -0
  28. package/dist/component/control/style-control/types.d.ts +8 -0
  29. package/dist/component/schemaTpl.d.ts +8 -0
  30. package/dist/component/validator.d.ts +62 -0
  31. package/dist/dnd/index.d.ts +1 -1
  32. package/dist/event-action/action-config-panel.d.ts +8 -0
  33. package/dist/event-action/actions.d.ts +3 -0
  34. package/dist/event-action/comp-action-select.d.ts +11 -0
  35. package/dist/event-action/config.d.ts +13 -0
  36. package/dist/event-action/index.d.ts +459 -0
  37. package/dist/event-action/schema.d.ts +32 -0
  38. package/dist/exports.min.js +1 -1
  39. package/dist/index.d.ts +23 -5
  40. package/dist/index.min.js +1 -1
  41. package/dist/manager.d.ts +46 -1
  42. package/dist/plugin/Alert.d.ts +4 -2
  43. package/dist/plugin/Button.d.ts +5 -1
  44. package/dist/plugin/ButtonGroup.d.ts +13 -34
  45. package/dist/plugin/ButtonToolbar.d.ts +4 -10
  46. package/dist/plugin/CRUD.d.ts +2 -0
  47. package/dist/plugin/Chart.d.ts +2 -0
  48. package/dist/plugin/Collapse.d.ts +1 -0
  49. package/dist/plugin/CollapseGroup.d.ts +28 -4
  50. package/dist/plugin/Container.d.ts +2 -1
  51. package/dist/plugin/Dialog.d.ts +12 -2
  52. package/dist/plugin/Drawer.d.ts +12 -2
  53. package/dist/plugin/DropDownButton.d.ts +11 -11
  54. package/dist/plugin/Form/ButtonGroupSelect.d.ts +7 -2
  55. package/dist/plugin/Form/ButtonToolbar.d.ts +8 -7
  56. package/dist/plugin/Form/ChainedSelect.d.ts +3 -0
  57. package/dist/plugin/Form/Checkbox.d.ts +7 -2
  58. package/dist/plugin/Form/Checkboxes.d.ts +8 -2
  59. package/dist/plugin/Form/CodeEditor.d.ts +7 -22
  60. package/dist/plugin/Form/Combo.d.ts +3 -0
  61. package/dist/plugin/Form/Control.d.ts +6 -2
  62. package/dist/plugin/Form/DiffEditor.d.ts +7 -1
  63. package/dist/plugin/Form/Form.d.ts +6 -0
  64. package/dist/plugin/Form/Formula.d.ts +1 -25
  65. package/dist/plugin/Form/InputDate.d.ts +8 -2
  66. package/dist/plugin/Form/InputDateRange.d.ts +8 -2
  67. package/dist/plugin/Form/InputDateTime.d.ts +4 -4
  68. package/dist/plugin/Form/InputDateTimeRange.d.ts +4 -4
  69. package/dist/plugin/Form/InputEmail.d.ts +1 -0
  70. package/dist/plugin/Form/InputExcel.d.ts +6 -41
  71. package/dist/plugin/Form/InputFile.d.ts +7 -3
  72. package/dist/plugin/Form/InputKV.d.ts +6 -0
  73. package/dist/plugin/Form/InputMonth.d.ts +1 -0
  74. package/dist/plugin/Form/InputMonthRange.d.ts +4 -4
  75. package/dist/plugin/Form/InputPassword.d.ts +1 -0
  76. package/dist/plugin/Form/InputQuarter.d.ts +1 -0
  77. package/dist/plugin/Form/InputQuarterRange.d.ts +4 -4
  78. package/dist/plugin/Form/InputRange.d.ts +3 -0
  79. package/dist/plugin/Form/InputRating.d.ts +9 -3
  80. package/dist/plugin/Form/InputText.d.ts +24 -2
  81. package/dist/plugin/Form/InputTime.d.ts +3 -3
  82. package/dist/plugin/Form/InputTimeRange.d.ts +20 -0
  83. package/dist/plugin/Form/InputTree.d.ts +6 -2
  84. package/dist/plugin/Form/InputURL.d.ts +1 -0
  85. package/dist/plugin/Form/InputYear.d.ts +1 -0
  86. package/dist/plugin/Form/InputYearRange.d.ts +20 -0
  87. package/dist/plugin/Form/ListSelect.d.ts +6 -2
  88. package/dist/plugin/Form/LocationPicker.d.ts +1 -31
  89. package/dist/plugin/Form/NestedSelect.d.ts +5 -2
  90. package/dist/plugin/Form/Radios.d.ts +7 -2
  91. package/dist/plugin/Form/Select.d.ts +7 -2
  92. package/dist/plugin/Form/Switch.d.ts +7 -2
  93. package/dist/plugin/Form/TabsTransfer.d.ts +5 -2
  94. package/dist/plugin/Form/Textarea.d.ts +7 -1
  95. package/dist/plugin/Form/Transfer.d.ts +5 -2
  96. package/dist/plugin/Form/TreeSelect.d.ts +6 -2
  97. package/dist/plugin/IFrame.d.ts +2 -2
  98. package/dist/plugin/Nav.d.ts +1 -116
  99. package/dist/plugin/Others/Action.d.ts +5 -1
  100. package/dist/plugin/Page.d.ts +5 -2
  101. package/dist/plugin/Progress.d.ts +5 -1
  102. package/dist/plugin/Table.d.ts +2 -0
  103. package/dist/plugin/Tabs.d.ts +33 -2
  104. package/dist/plugin/TooltipWrapper.d.ts +10 -0
  105. package/dist/plugin/Tpl.d.ts +2 -1
  106. package/dist/plugin/Wizard.d.ts +4 -1
  107. package/dist/plugin.d.ts +37 -1
  108. package/dist/store/editor.d.ts +55 -28
  109. package/dist/store/node.d.ts +16 -0
  110. package/dist/style.css +1 -1
  111. package/dist/util.d.ts +36 -3
  112. package/package.json +14 -8
  113. package/src/component/schemaTpl.tsx +1209 -474
  114. package/src/plugin/Alert.tsx +69 -48
  115. package/src/plugin/AnchorNav.tsx +1 -0
  116. package/src/plugin/Audio.tsx +9 -15
  117. package/src/plugin/Avatar.tsx +2 -1
  118. package/src/plugin/Breadcrumb.tsx +2 -1
  119. package/src/plugin/Button.tsx +257 -188
  120. package/src/plugin/ButtonGroup.tsx +99 -38
  121. package/src/plugin/ButtonToolbar.tsx +7 -13
  122. package/src/plugin/CRUD.tsx +78 -136
  123. package/src/plugin/Card.tsx +1 -0
  124. package/src/plugin/Cards.tsx +8 -14
  125. package/src/plugin/Carousel.tsx +1 -1
  126. package/src/plugin/Chart.tsx +26 -14
  127. package/src/plugin/Collapse.tsx +78 -78
  128. package/src/plugin/CollapseGroup.tsx +165 -83
  129. package/src/plugin/Container.tsx +59 -6
  130. package/src/plugin/Custom.tsx +2 -8
  131. package/src/plugin/CustomRegion.tsx +4 -3
  132. package/src/plugin/Dialog.tsx +55 -24
  133. package/src/plugin/Drawer.tsx +65 -35
  134. package/src/plugin/DropDownButton.tsx +95 -79
  135. package/src/plugin/Flex.tsx +123 -65
  136. package/src/plugin/Form/ButtonGroupSelect.tsx +114 -26
  137. package/src/plugin/Form/ButtonToolbar.tsx +62 -55
  138. package/src/plugin/Form/ChainedSelect.tsx +45 -0
  139. package/src/plugin/Form/Checkbox.tsx +122 -33
  140. package/src/plugin/Form/Checkboxes.tsx +154 -87
  141. package/src/plugin/Form/CodeEditor.tsx +163 -34
  142. package/src/plugin/Form/Combo.tsx +104 -65
  143. package/src/plugin/Form/Control.tsx +16 -70
  144. package/src/plugin/Form/DiffEditor.tsx +158 -54
  145. package/src/plugin/Form/FieldSet.tsx +6 -11
  146. package/src/plugin/Form/Form.tsx +277 -70
  147. package/src/plugin/Form/Formula.tsx +8 -14
  148. package/src/plugin/Form/InputArray.tsx +7 -16
  149. package/src/plugin/Form/InputCity.tsx +1 -1
  150. package/src/plugin/Form/InputDate.tsx +344 -121
  151. package/src/plugin/Form/InputDateRange.tsx +303 -161
  152. package/src/plugin/Form/InputDateTime.tsx +6 -150
  153. package/src/plugin/Form/InputDateTimeRange.tsx +7 -187
  154. package/src/plugin/Form/InputEmail.tsx +1 -0
  155. package/src/plugin/Form/InputExcel.tsx +70 -27
  156. package/src/plugin/Form/InputFile.tsx +326 -152
  157. package/src/plugin/Form/InputImage.tsx +1 -1
  158. package/src/plugin/Form/InputKV.tsx +61 -0
  159. package/src/plugin/Form/InputMonth.tsx +3 -1
  160. package/src/plugin/Form/InputMonthRange.tsx +6 -160
  161. package/src/plugin/Form/InputNumber.tsx +1 -1
  162. package/src/plugin/Form/InputPassword.tsx +2 -0
  163. package/src/plugin/Form/InputQuarter.tsx +3 -1
  164. package/src/plugin/Form/InputQuarterRange.tsx +6 -160
  165. package/src/plugin/Form/InputRange.tsx +74 -4
  166. package/src/plugin/Form/InputRating.tsx +347 -35
  167. package/src/plugin/Form/InputRichText.tsx +2 -3
  168. package/src/plugin/Form/InputTable.tsx +33 -49
  169. package/src/plugin/Form/InputTag.tsx +1 -1
  170. package/src/plugin/Form/InputText.tsx +310 -132
  171. package/src/plugin/Form/InputTime.tsx +4 -53
  172. package/src/plugin/Form/InputTimeRange.tsx +41 -0
  173. package/src/plugin/Form/InputTree.tsx +196 -46
  174. package/src/plugin/Form/InputURL.tsx +2 -0
  175. package/src/plugin/Form/InputYear.tsx +2 -0
  176. package/src/plugin/Form/InputYearRange.tsx +41 -0
  177. package/src/plugin/Form/Item.tsx +17 -18
  178. package/src/plugin/Form/ListSelect.tsx +75 -20
  179. package/src/plugin/Form/LocationPicker.tsx +2 -7
  180. package/src/plugin/Form/MatrixCheckboxes.tsx +1 -1
  181. package/src/plugin/Form/NestedSelect.tsx +110 -43
  182. package/src/plugin/Form/Picker.tsx +2 -5
  183. package/src/plugin/Form/Radios.tsx +122 -52
  184. package/src/plugin/Form/Select.tsx +239 -168
  185. package/src/plugin/Form/Static.tsx +1 -1
  186. package/src/plugin/Form/Switch.tsx +170 -58
  187. package/src/plugin/Form/TabsTransfer.tsx +175 -79
  188. package/src/plugin/Form/Textarea.tsx +146 -36
  189. package/src/plugin/Form/Transfer.tsx +295 -233
  190. package/src/plugin/Form/TreeSelect.tsx +287 -146
  191. package/src/plugin/Grid.tsx +340 -312
  192. package/src/plugin/HBox.tsx +1 -0
  193. package/src/plugin/IFrame.tsx +21 -12
  194. package/src/plugin/Image.tsx +7 -12
  195. package/src/plugin/Images.tsx +7 -12
  196. package/src/plugin/Link.tsx +6 -12
  197. package/src/plugin/List.tsx +6 -10
  198. package/src/plugin/ListItem.tsx +1 -0
  199. package/src/plugin/Nav.tsx +7 -9
  200. package/src/plugin/Others/Action.tsx +16 -10
  201. package/src/plugin/Others/BasicToolbar.tsx +4 -1
  202. package/src/plugin/Others/TableCell.tsx +19 -39
  203. package/src/plugin/Page.tsx +315 -229
  204. package/src/plugin/Panel.tsx +6 -7
  205. package/src/plugin/Plain.tsx +3 -6
  206. package/src/plugin/Progress.tsx +234 -94
  207. package/src/plugin/Service.tsx +10 -6
  208. package/src/plugin/Table.tsx +49 -20
  209. package/src/plugin/TableView.tsx +212 -106
  210. package/src/plugin/Tabs.tsx +306 -146
  211. package/src/plugin/TooltipWrapper.tsx +231 -135
  212. package/src/plugin/Tpl.tsx +68 -52
  213. package/src/plugin/Video.tsx +9 -20
  214. package/src/plugin/Wizard.tsx +537 -336
  215. package/src/plugin/Wrapper.tsx +82 -61
  216. package/src/plugin.ts +66 -4
  217. package/static/empty.png +0 -0
  218. package/dist/component/Control/APIControl.d.ts +0 -504
  219. package/dist/component/Control/ValidationControl.d.ts +0 -30
  220. package/dist/component/remarkTpl.d.ts +0 -150
@@ -1,18 +1,8 @@
1
- import {relativeValueRe} from 'amis';
2
- import {
3
- defaultValue,
4
- getSchemaTpl,
5
- valuePipeOut
6
- } from '../../component/schemaTpl';
7
1
  import {registerEditorPlugin} from '../../manager';
8
- import {
9
- BasePlugin,
10
- BasicSubRenderInfo,
11
- RendererEventContext,
12
- SubRendererInfo
13
- } from '../../plugin';
14
2
 
15
- export class MonthRangeControlPlugin extends BasePlugin {
3
+ import {DateRangeControlPlugin} from './InputDateRange';
4
+
5
+ export class MonthRangeControlPlugin extends DateRangeControlPlugin {
16
6
  // 关联渲染器名字
17
7
  rendererName = 'input-month-range';
18
8
  $schema = '/schemas/MonthRangeControlSchema.json';
@@ -29,7 +19,7 @@ export class MonthRangeControlPlugin extends BasePlugin {
29
19
  tags = ['表单项'];
30
20
  scaffold = {
31
21
  type: 'input-month-range',
32
- label: '月份范围',
22
+ label: '日期范围',
33
23
  name: 'month-range'
34
24
  };
35
25
  previewSchema: any = {
@@ -44,152 +34,8 @@ export class MonthRangeControlPlugin extends BasePlugin {
44
34
  ]
45
35
  };
46
36
 
47
- panelTitle = '月份范围';
48
- panelBody = [
49
- getSchemaTpl('placeholder', {
50
- pipeIn: defaultValue('请选择月份范围')
51
- }),
52
-
53
- {
54
- type: 'input-text',
55
- name: 'format',
56
- label: '值格式',
57
- description:
58
- '请参考 <a href="https://momentjs.com/" target="_blank">moment</a> 中的格式用法。',
59
- pipeIn: defaultValue('X')
60
- },
61
-
62
- getSchemaTpl('switchDefaultValue'),
63
-
64
- {
65
- type: 'input-text',
66
- name: 'value',
67
- label: '默认值',
68
- visibleOn: 'typeof this.value !== "undefined"',
69
- placeholder: '请输入相对值',
70
- description:
71
- '支持 <code>now、+1day、-2weeks</code>这种相对值用法,由于包含开始和结束时间,请用逗号隔开。'
72
- },
73
-
74
- {
75
- type: 'fieldSet',
76
- title: '使用固定值',
77
- visibleOn: 'typeof this.value !== "undefined"',
78
- collapsed: true,
79
- collapsable: true,
80
- className: 'fieldset',
81
- body: [
82
- {
83
- type: 'input-month-range',
84
- name: 'value',
85
- pipeIn: (value: any) =>
86
- value
87
- ? value
88
- .split(',')
89
- .map((item: any) =>
90
- relativeValueRe.test(item) ||
91
- ~['now', 'today'].indexOf(item)
92
- ? ''
93
- : item
94
- )
95
- : ''
96
- }
97
- ]
98
- },
99
- getSchemaTpl('clearable', {
100
- pipeIn: defaultValue(true)
101
- }),
102
- {
103
- type: 'input-text',
104
- name: 'minDate',
105
- label: '最小日期',
106
- placeholder: '请输入相对值',
107
- description:
108
- '支持 <code>now、+1day、-2weeks</code>这种相对值用法,同时支持变量如<code>\\${start_date}</code>'
109
- },
110
-
111
- {
112
- type: 'fieldSet',
113
- title: '使用固定值',
114
- collapsed: true,
115
- collapsable: true,
116
- className: 'fieldset',
117
- body: [
118
- {
119
- type: 'input-date',
120
- name: 'minDate',
121
- pipeIn: (value: any) =>
122
- relativeValueRe.test(value) || ~['now', 'today'].indexOf(value)
123
- ? ''
124
- : value
125
- }
126
- ]
127
- },
128
-
129
- {
130
- type: 'divider'
131
- },
132
-
133
- {
134
- type: 'input-text',
135
- name: 'maxDate',
136
- label: '最大日期',
137
- placeholder: '请输入相对值',
138
- description:
139
- '支持 <code>now、+1day、-2weeks</code>这种相对值用法,同时支持变量如<code>\\${start_date}</code>'
140
- },
141
-
142
- {
143
- type: 'fieldSet',
144
- title: '使用固定值',
145
- collapsed: true,
146
- collapsable: true,
147
- className: 'fieldset',
148
- body: [
149
- {
150
- type: 'input-date',
151
- name: 'maxDate',
152
- pipeIn: (value: any) =>
153
- relativeValueRe.test(value) || ~['now', 'today'].indexOf(value)
154
- ? ''
155
- : value
156
- }
157
- ]
158
- },
159
- {
160
- type: 'input-text',
161
- name: 'minDuration',
162
- label: '限制最小跨度',
163
- description: '比如 2days'
164
- },
165
- {
166
- type: 'input-text',
167
- name: 'maxDuration',
168
- label: '限制最大跨度',
169
- description: '比如 1year'
170
- },
171
- {
172
- name: 'utc',
173
- label: '是否使用 UTC 时间',
174
- type: 'switch',
175
- mode: 'inline',
176
- className: 'block'
177
- },
178
- {
179
- name: 'clearable',
180
- label: '是否可清除',
181
- type: 'switch',
182
- mode: 'inline',
183
- className: 'block'
184
- },
185
- {
186
- name: 'embed',
187
- label: '是否内嵌模式',
188
- type: 'switch',
189
- mode: 'inline',
190
- className: 'block'
191
- }
192
- ];
37
+ disabledRendererPlugin = true;
38
+ notRenderFormZone = true;
193
39
  }
194
40
 
195
41
  registerEditorPlugin(MonthRangeControlPlugin);
@@ -86,4 +86,4 @@ export class NumberControlPlugin extends BasePlugin {
86
86
  ];
87
87
  }
88
88
 
89
- registerEditorPlugin(NumberControlPlugin);
89
+ registerEditorPlugin(NumberControlPlugin);
@@ -17,6 +17,8 @@ export class PasswordControlPlugin extends TextControlPlugin {
17
17
  name: 'password'
18
18
  };
19
19
 
20
+ disabledRendererPlugin = true;
21
+
20
22
  previewSchema = {
21
23
  type: 'form',
22
24
  className: 'text-left',
@@ -8,7 +8,7 @@ export class InputQuarterPlugin extends DateControlPlugin {
8
8
  $schema = '/schemas/QuarterControlSchema.json';
9
9
 
10
10
  // 组件名称
11
- name = 'Quarter';
11
+ name = '季度';
12
12
  isBaseComponent = true;
13
13
  icon = 'fa fa-calendar';
14
14
  description = `季度选择`;
@@ -19,6 +19,8 @@ export class InputQuarterPlugin extends DateControlPlugin {
19
19
  type: 'input-quarter',
20
20
  name: 'month'
21
21
  };
22
+
23
+ disabledRendererPlugin = true;
22
24
  previewSchema: any = {
23
25
  type: 'form',
24
26
  wrapWithPanel: false,
@@ -1,18 +1,8 @@
1
- import {relativeValueRe} from 'amis';
2
- import {
3
- defaultValue,
4
- getSchemaTpl,
5
- valuePipeOut
6
- } from '../../component/schemaTpl';
7
1
  import {registerEditorPlugin} from '../../manager';
8
- import {
9
- BasePlugin,
10
- BasicSubRenderInfo,
11
- RendererEventContext,
12
- SubRendererInfo
13
- } from '../../plugin';
14
2
 
15
- export class QuarterRangePlugin extends BasePlugin {
3
+ import {DateRangeControlPlugin} from './InputDateRange';
4
+
5
+ export class QuarterRangePlugin extends DateRangeControlPlugin {
16
6
  // 关联渲染器名字
17
7
  rendererName = 'input-quarter-range';
18
8
  $schema = '/schemas/MonthRangeControlSchema.json';
@@ -29,7 +19,7 @@ export class QuarterRangePlugin extends BasePlugin {
29
19
  tags = ['表单项'];
30
20
  scaffold = {
31
21
  type: 'input-quarter-range',
32
- label: '季度范围',
22
+ label: '日期范围',
33
23
  name: 'quarter-range'
34
24
  };
35
25
  previewSchema: any = {
@@ -44,152 +34,8 @@ export class QuarterRangePlugin extends BasePlugin {
44
34
  ]
45
35
  };
46
36
 
47
- panelTitle = '季度范围';
48
- panelBody = [
49
- getSchemaTpl('placeholder', {
50
- pipeIn: defaultValue('请选择月份范围')
51
- }),
52
-
53
- {
54
- type: 'input-text',
55
- name: 'format',
56
- label: '值格式',
57
- description:
58
- '请参考 <a href="https://momentjs.com/" target="_blank">moment</a> 中的格式用法。',
59
- pipeIn: defaultValue('X')
60
- },
61
-
62
- getSchemaTpl('switchDefaultValue'),
63
-
64
- {
65
- type: 'input-text',
66
- name: 'value',
67
- label: '默认值',
68
- visibleOn: 'typeof this.value !== "undefined"',
69
- placeholder: '请输入相对值',
70
- description:
71
- '支持 <code>now、+1day、-2weeks</code>这种相对值用法,由于包含开始和结束时间,请用逗号隔开。'
72
- },
73
-
74
- {
75
- type: 'fieldSet',
76
- title: '使用固定值',
77
- visibleOn: 'typeof this.value !== "undefined"',
78
- collapsed: true,
79
- collapsable: true,
80
- className: 'fieldset',
81
- body: [
82
- {
83
- type: 'input-quarter-range',
84
- name: 'value',
85
- pipeIn: (value: any) =>
86
- value
87
- ? value
88
- .split(',')
89
- .map((item: any) =>
90
- relativeValueRe.test(item) ||
91
- ~['now', 'today'].indexOf(item)
92
- ? ''
93
- : item
94
- )
95
- : ''
96
- }
97
- ]
98
- },
99
- getSchemaTpl('clearable', {
100
- pipeIn: defaultValue(true)
101
- }),
102
- {
103
- type: 'input-text',
104
- name: 'minDate',
105
- label: '最小日期',
106
- placeholder: '请输入相对值',
107
- description:
108
- '支持 <code>now、+1day、-2weeks</code>这种相对值用法,同时支持变量如<code>\\${start_date}</code>'
109
- },
110
-
111
- {
112
- type: 'fieldSet',
113
- title: '使用固定值',
114
- collapsed: true,
115
- collapsable: true,
116
- className: 'fieldset',
117
- body: [
118
- {
119
- type: 'input-date',
120
- name: 'minDate',
121
- pipeIn: (value: any) =>
122
- relativeValueRe.test(value) || ~['now', 'today'].indexOf(value)
123
- ? ''
124
- : value
125
- }
126
- ]
127
- },
128
-
129
- {
130
- type: 'divider'
131
- },
132
-
133
- {
134
- type: 'input-text',
135
- name: 'maxDate',
136
- label: '最大日期',
137
- placeholder: '请输入相对值',
138
- description:
139
- '支持 <code>now、+1day、-2weeks</code>这种相对值用法,同时支持变量如<code>\\${start_date}</code>'
140
- },
141
-
142
- {
143
- type: 'fieldSet',
144
- title: '使用固定值',
145
- collapsed: true,
146
- collapsable: true,
147
- className: 'fieldset',
148
- body: [
149
- {
150
- type: 'input-date',
151
- name: 'maxDate',
152
- pipeIn: (value: any) =>
153
- relativeValueRe.test(value) || ~['now', 'today'].indexOf(value)
154
- ? ''
155
- : value
156
- }
157
- ]
158
- },
159
- {
160
- type: 'input-text',
161
- name: 'minDuration',
162
- label: '限制最小跨度',
163
- description: '比如 2days'
164
- },
165
- {
166
- type: 'input-text',
167
- name: 'maxDuration',
168
- label: '限制最大跨度',
169
- description: '比如 1year'
170
- },
171
- {
172
- name: 'utc',
173
- label: '是否使用 UTC 时间',
174
- type: 'switch',
175
- mode: 'inline',
176
- className: 'block'
177
- },
178
- {
179
- name: 'clearable',
180
- label: '是否可清除',
181
- type: 'switch',
182
- mode: 'inline',
183
- className: 'block'
184
- },
185
- {
186
- name: 'embed',
187
- label: '是否内嵌模式',
188
- type: 'switch',
189
- mode: 'inline',
190
- className: 'block'
191
- }
192
- ];
37
+ disabledRendererPlugin = true;
38
+ notRenderFormZone = true;
193
39
  }
194
40
 
195
41
  registerEditorPlugin(QuarterRangePlugin);
@@ -1,3 +1,4 @@
1
+ import {RendererAction, RendererEvent} from '../../event-action';
1
2
  import {defaultValue, getSchemaTpl} from '../../component/schemaTpl';
2
3
  import {registerEditorPlugin} from '../../manager';
3
4
  import {BasePlugin} from '../../plugin';
@@ -31,6 +32,77 @@ export class RangeControlPlugin extends BasePlugin {
31
32
  ]
32
33
  };
33
34
 
35
+ // 事件定义
36
+ events: RendererEvent[] = [
37
+ {
38
+ eventName: 'change',
39
+ eventLabel: '值变化',
40
+ description: '滑块值变化时触发',
41
+ dataSchema: [
42
+ {
43
+ type: 'object',
44
+ properties: {
45
+ 'event.data.value': {
46
+ type: 'string',
47
+ title: '当前值'
48
+ }
49
+ }
50
+ }
51
+ ]
52
+ },
53
+ {
54
+ eventName: 'focus',
55
+ eventLabel: '获取焦点',
56
+ description: '当设置 showInput 为 true 时,输入框获取焦点时触发',
57
+ dataSchema: [
58
+ {
59
+ type: 'object',
60
+ properties: {
61
+ 'event.data.value': {
62
+ type: 'string',
63
+ title: '滑块当前值'
64
+ }
65
+ }
66
+ }
67
+ ]
68
+ },
69
+ {
70
+ eventName: 'blur',
71
+ eventLabel: '失去焦点',
72
+ description: '当设置 showInput 为 true 时,输入框失去焦点时触发',
73
+ dataSchema: [
74
+ {
75
+ type: 'object',
76
+ properties: {
77
+ 'event.data.value': {
78
+ type: 'string',
79
+ title: '滑块当前值'
80
+ }
81
+ }
82
+ }
83
+ ]
84
+ }
85
+ ];
86
+
87
+ // 动作定义
88
+ actions: RendererAction[] = [
89
+ {
90
+ actionType: 'clear',
91
+ actionLabel: '清空',
92
+ description: '清除输入框'
93
+ },
94
+ {
95
+ actionType: 'reset',
96
+ actionLabel: '重置',
97
+ description: '将值重置为resetValue,若没有配置resetValue,则清空'
98
+ },
99
+ {
100
+ actionType: 'setValue',
101
+ actionLabel: '赋值',
102
+ description: '触发组件数据更新'
103
+ }
104
+ ];
105
+
34
106
  panelTitle = '滑块';
35
107
  panelBody = [
36
108
  getSchemaTpl('switchDefaultValue'),
@@ -101,13 +173,11 @@ export class RangeControlPlugin extends BasePlugin {
101
173
  value: ''
102
174
  },
103
175
 
104
- {
105
- type: 'switch',
176
+ getSchemaTpl('switch', {
106
177
  name: 'showInput',
107
- mode: 'inline',
108
178
  label: '是否显示输入框',
109
179
  value: false
110
- },
180
+ }),
111
181
 
112
182
  getSchemaTpl('clearable'),
113
183
  getSchemaTpl('multiple', {