@easy-editor/materials-dashboard-gauge-chart 0.0.2 → 0.0.3

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 (45) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/component.min.js +2 -3
  3. package/dist/index.min.js +2 -3
  4. package/dist/meta.min.js +1 -2
  5. package/easypack.config.ts +10 -0
  6. package/package.json +4 -8
  7. package/src/component.tsx +225 -180
  8. package/src/configure.ts +140 -285
  9. package/src/index.tsx +7 -7
  10. package/src/meta.ts +23 -23
  11. package/src/snippets.ts +69 -55
  12. package/tsconfig.json +20 -9
  13. package/.vite/plugins/vite-plugin-external-deps.ts +0 -224
  14. package/.vite/plugins/vite-plugin-material-dev.ts +0 -218
  15. package/dist/component.esm.js +0 -28857
  16. package/dist/component.esm.js.map +0 -1
  17. package/dist/component.js +0 -28864
  18. package/dist/component.js.map +0 -1
  19. package/dist/component.min.js.map +0 -1
  20. package/dist/index.cjs +0 -29174
  21. package/dist/index.cjs.map +0 -1
  22. package/dist/index.esm.js +0 -29171
  23. package/dist/index.esm.js.map +0 -1
  24. package/dist/index.js +0 -29178
  25. package/dist/index.js.map +0 -1
  26. package/dist/index.min.js.map +0 -1
  27. package/dist/meta.esm.js +0 -319
  28. package/dist/meta.esm.js.map +0 -1
  29. package/dist/meta.js +0 -329
  30. package/dist/meta.js.map +0 -1
  31. package/dist/meta.min.js.map +0 -1
  32. package/dist/src/component.d.ts +0 -19
  33. package/dist/src/configure.d.ts +0 -7
  34. package/dist/src/constants.d.ts +0 -28
  35. package/dist/src/index.d.ts +0 -6
  36. package/dist/src/meta.d.ts +0 -3
  37. package/dist/src/snippets.d.ts +0 -3
  38. package/dist/src/types.d.ts +0 -50
  39. package/dist/src/utils.d.ts +0 -28
  40. package/rollup.config.js +0 -212
  41. package/src/types.ts +0 -55
  42. package/src/utils.ts +0 -57
  43. package/tsconfig.build.json +0 -12
  44. package/tsconfig.test.json +0 -7
  45. package/vite.config.ts +0 -54
package/src/configure.ts CHANGED
@@ -1,285 +1,140 @@
1
- /**
2
- * Gauge Chart Configure
3
- * 仪表盘组件配置
4
- */
5
-
6
- import type { Configure } from '@easy-editor/core'
7
-
8
- const configure: Configure = {
9
- props: [
10
- {
11
- type: 'group',
12
- title: '属性',
13
- setter: 'TabSetter',
14
- items: [
15
- {
16
- type: 'group',
17
- key: 'config',
18
- title: '配置',
19
- setter: {
20
- componentName: 'CollapseSetter',
21
- props: {
22
- icon: false,
23
- },
24
- },
25
- items: [
26
- // 基础配置
27
- {
28
- name: 'id',
29
- title: 'ID',
30
- setter: 'NodeIdSetter',
31
- extraProps: {
32
- // @ts-expect-error label is not a valid extra prop
33
- label: false,
34
- },
35
- },
36
- {
37
- name: 'title',
38
- title: '标题',
39
- setter: 'StringSetter',
40
- extraProps: {
41
- getValue(target) {
42
- return target.getExtraPropValue('title')
43
- },
44
- setValue(target, value) {
45
- target.setExtraPropValue('title', value)
46
- },
47
- },
48
- },
49
- {
50
- type: 'group',
51
- title: '基础属性',
52
- setter: {
53
- componentName: 'CollapseSetter',
54
- props: {
55
- icon: false,
56
- },
57
- },
58
- items: [
59
- {
60
- name: 'rect',
61
- title: '位置尺寸',
62
- setter: 'RectSetter',
63
- extraProps: {
64
- getValue(target) {
65
- return target.getExtraPropValue('$dashboard.rect')
66
- },
67
- setValue(target, value) {
68
- target.setExtraPropValue('$dashboard.rect', value)
69
- },
70
- },
71
- },
72
- ],
73
- },
74
- // 组件配置
75
- {
76
- type: 'group',
77
- title: '数值',
78
- setter: {
79
- componentName: 'CollapseSetter',
80
- props: {
81
- icon: false,
82
- },
83
- },
84
- items: [
85
- {
86
- name: 'value',
87
- title: '当前值',
88
- setter: 'NumberSetter',
89
- extraProps: {
90
- defaultValue: 0,
91
- },
92
- },
93
- {
94
- name: 'min',
95
- title: '最小值',
96
- setter: 'NumberSetter',
97
- extraProps: {
98
- defaultValue: 0,
99
- },
100
- },
101
- {
102
- name: 'max',
103
- title: '最大值',
104
- setter: 'NumberSetter',
105
- extraProps: {
106
- defaultValue: 100,
107
- },
108
- },
109
- {
110
- name: 'unit',
111
- title: '单位',
112
- setter: 'StringSetter',
113
- },
114
- ],
115
- },
116
- {
117
- type: 'group',
118
- title: '数值格式',
119
- setter: {
120
- componentName: 'CollapseSetter',
121
- props: {
122
- icon: false,
123
- },
124
- },
125
- items: [
126
- {
127
- name: 'valuePrefix',
128
- title: '前缀',
129
- setter: 'StringSetter',
130
- },
131
- {
132
- name: 'valueSuffix',
133
- title: '后缀',
134
- setter: 'StringSetter',
135
- },
136
- {
137
- name: 'valueDecimals',
138
- title: '小数位数',
139
- setter: {
140
- componentName: 'NumberSetter',
141
- props: {
142
- suffix: '位',
143
- },
144
- },
145
- extraProps: {
146
- defaultValue: 0,
147
- },
148
- },
149
- {
150
- name: 'valueSeparator',
151
- title: '千分位分隔',
152
- setter: 'SwitchSetter',
153
- extraProps: {
154
- defaultValue: false,
155
- },
156
- },
157
- ],
158
- },
159
- {
160
- type: 'group',
161
- title: '刻度',
162
- setter: {
163
- componentName: 'CollapseSetter',
164
- props: {
165
- icon: false,
166
- },
167
- },
168
- items: [
169
- {
170
- name: 'showScale',
171
- title: '显示刻度',
172
- setter: 'SwitchSetter',
173
- extraProps: {
174
- defaultValue: true,
175
- },
176
- },
177
- {
178
- name: 'divisions',
179
- title: '刻度数量',
180
- setter: {
181
- componentName: 'SliderSetter',
182
- props: {
183
- min: 2,
184
- max: 20,
185
- step: 1,
186
- },
187
- },
188
- extraProps: {
189
- defaultValue: 10,
190
- },
191
- },
192
- {
193
- name: 'showLabels',
194
- title: '显示刻度值',
195
- setter: 'SwitchSetter',
196
- extraProps: {
197
- defaultValue: true,
198
- },
199
- },
200
- ],
201
- },
202
- {
203
- type: 'group',
204
- title: '样式',
205
- setter: {
206
- componentName: 'CollapseSetter',
207
- props: {
208
- icon: false,
209
- },
210
- },
211
- items: [
212
- {
213
- name: 'pointerType',
214
- title: '指针类型',
215
- setter: {
216
- componentName: 'SegmentedSetter',
217
- props: {
218
- options: [
219
- { label: '针形', value: 'needle' },
220
- { label: '三角形', value: 'triangle' },
221
- { label: '矩形', value: 'rect' },
222
- ],
223
- },
224
- },
225
- extraProps: {
226
- defaultValue: 'needle',
227
- },
228
- },
229
- {
230
- name: 'pointerColor',
231
- title: '指针颜色',
232
- setter: 'ColorSetter',
233
- extraProps: {
234
- defaultValue: '#ffffff',
235
- },
236
- },
237
- {
238
- name: 'glowEffect',
239
- title: '发光效果',
240
- setter: 'SwitchSetter',
241
- extraProps: {
242
- defaultValue: false,
243
- },
244
- },
245
- ],
246
- },
247
- ],
248
- },
249
- {
250
- type: 'group',
251
- key: 'data',
252
- title: '数据',
253
- items: [
254
- {
255
- name: 'dataBinding',
256
- title: '数据绑定',
257
- setter: 'DataBindingSetter',
258
- },
259
- ],
260
- },
261
- {
262
- type: 'group',
263
- key: 'advanced',
264
- title: '高级',
265
- items: [
266
- {
267
- name: 'condition',
268
- title: '显隐控制',
269
- setter: 'SwitchSetter',
270
- extraProps: {
271
- defaultValue: true,
272
- supportVariable: true,
273
- },
274
- },
275
- ],
276
- },
277
- ],
278
- },
279
- ],
280
- component: {},
281
- supports: {},
282
- advanced: {},
283
- }
284
-
285
- export default configure
1
+ /**
2
+ * Gauge Chart Configure
3
+ * 仪表盘组件配置
4
+ */
5
+
6
+ import type { FieldConfig } from '@easy-editor/core'
7
+ import { createCollapseGroup, createDataConfigGroup, createStandardConfigure } from '@easy-editor/materials-shared'
8
+
9
+ /** 组件配置 */
10
+ const componentConfigGroup: FieldConfig = createCollapseGroup(
11
+ '组件配置',
12
+ [
13
+ {
14
+ type: 'group',
15
+ title: '组件配置',
16
+ setter: 'SubTabSetter',
17
+ items: [
18
+ // 数值 Tab
19
+ {
20
+ type: 'group',
21
+ key: 'value',
22
+ title: '数值',
23
+ items: [
24
+ {
25
+ name: 'min',
26
+ title: '最小值',
27
+ setter: 'NumberSetter',
28
+ extraProps: {
29
+ defaultValue: 0,
30
+ },
31
+ },
32
+ {
33
+ name: 'max',
34
+ title: '最大值',
35
+ setter: 'NumberSetter',
36
+ extraProps: {
37
+ defaultValue: 100,
38
+ },
39
+ },
40
+ {
41
+ name: 'unit',
42
+ title: '单位',
43
+ setter: 'StringSetter',
44
+ },
45
+ ],
46
+ },
47
+ // 刻度 Tab
48
+ {
49
+ type: 'group',
50
+ key: 'scale',
51
+ title: '刻度',
52
+ items: [
53
+ {
54
+ name: 'showScale',
55
+ title: '显示刻度',
56
+ setter: 'SwitchSetter',
57
+ extraProps: {
58
+ defaultValue: true,
59
+ },
60
+ },
61
+ {
62
+ name: 'divisions',
63
+ title: '刻度数量',
64
+ setter: {
65
+ componentName: 'SliderSetter',
66
+ props: {
67
+ min: 2,
68
+ max: 20,
69
+ step: 1,
70
+ },
71
+ },
72
+ extraProps: {
73
+ defaultValue: 10,
74
+ },
75
+ },
76
+ {
77
+ name: 'showLabels',
78
+ title: '显示刻度值',
79
+ setter: 'SwitchSetter',
80
+ extraProps: {
81
+ defaultValue: true,
82
+ },
83
+ },
84
+ ],
85
+ },
86
+ // 样式 Tab
87
+ {
88
+ type: 'group',
89
+ key: 'style',
90
+ title: '样式',
91
+ items: [
92
+ {
93
+ name: 'pointerType',
94
+ title: '指针类型',
95
+ setter: {
96
+ componentName: 'SegmentedSetter',
97
+ props: {
98
+ options: [
99
+ { label: '针形', value: 'needle' },
100
+ { label: '三角形', value: 'triangle' },
101
+ { label: '矩形', value: 'rect' },
102
+ ],
103
+ },
104
+ },
105
+ extraProps: {
106
+ defaultValue: 'needle',
107
+ },
108
+ },
109
+ {
110
+ name: 'pointerColor',
111
+ title: '指针颜色',
112
+ setter: 'ColorSetter',
113
+ extraProps: {
114
+ defaultValue: '#00d4ff',
115
+ },
116
+ },
117
+ {
118
+ name: 'glowEffect',
119
+ title: '发光效果',
120
+ setter: 'SwitchSetter',
121
+ extraProps: {
122
+ defaultValue: true,
123
+ },
124
+ },
125
+ ],
126
+ },
127
+ ],
128
+ },
129
+ ],
130
+ {
131
+ padding: '6px 16px 12px',
132
+ },
133
+ )
134
+
135
+ /** 数据配置 */
136
+ const dataConfigGroup: FieldConfig = createDataConfigGroup([
137
+ { name: 'value', label: 'value', type: 'number', required: true, description: '当前值' },
138
+ ])
139
+
140
+ export const configure = createStandardConfigure(componentConfigGroup, dataConfigGroup)
package/src/index.tsx CHANGED
@@ -1,7 +1,7 @@
1
- /**
2
- * GaugeChart Entry
3
- * 仪表盘组件入口
4
- */
5
-
6
- export { default as component } from './component'
7
- export { default as meta } from './meta'
1
+ /**
2
+ * GaugeChart Entry
3
+ * 仪表盘组件入口
4
+ */
5
+
6
+ export { GaugeChart as component } from './component'
7
+ export { meta } from './meta'
package/src/meta.ts CHANGED
@@ -1,23 +1,23 @@
1
- import type { ComponentMetadata } from '@easy-editor/core'
2
- import { MaterialGroup } from '@easy-editor/materials-shared'
3
- import { COMPONENT_NAME, PACKAGE_NAME } from './constants'
4
- import configure from './configure'
5
- import snippets from './snippets'
6
- import pkg from '../package.json'
7
-
8
- const meta: ComponentMetadata = {
9
- componentName: COMPONENT_NAME,
10
- title: '仪表盘',
11
- group: MaterialGroup.CHART,
12
- devMode: 'proCode',
13
- npm: {
14
- package: PACKAGE_NAME,
15
- version: pkg.version,
16
- globalName: COMPONENT_NAME,
17
- componentName: COMPONENT_NAME,
18
- },
19
- snippets,
20
- configure,
21
- }
22
-
23
- export default meta
1
+ import type { ComponentMetadata } from '@easy-editor/core'
2
+ import { MaterialGroup } from '@easy-editor/materials-shared'
3
+ import { COMPONENT_NAME, PACKAGE_NAME } from './constants'
4
+ import { configure } from './configure'
5
+ import { snippets } from './snippets'
6
+ import pkg from '../package.json'
7
+
8
+ const meta: ComponentMetadata = {
9
+ componentName: COMPONENT_NAME,
10
+ title: '仪表盘',
11
+ group: MaterialGroup.CHART,
12
+ devMode: 'proCode',
13
+ npm: {
14
+ package: PACKAGE_NAME,
15
+ version: pkg.version,
16
+ globalName: COMPONENT_NAME,
17
+ componentName: COMPONENT_NAME,
18
+ },
19
+ snippets,
20
+ configure,
21
+ }
22
+
23
+ export { meta }
package/src/snippets.ts CHANGED
@@ -1,55 +1,69 @@
1
- import type { Snippet } from '@easy-editor/core'
2
- import { COMPONENT_NAME } from './constants'
3
-
4
- const snippets: Snippet[] = [
5
- {
6
- title: '仪表盘',
7
- screenshot: '',
8
- schema: {
9
- componentName: COMPONENT_NAME,
10
- props: {
11
- value: 65,
12
- min: 0,
13
- max: 100,
14
- showScale: true,
15
- divisions: 10,
16
- showLabels: true,
17
- pointerType: 'needle',
18
- pointerColor: '#ffffff',
19
- },
20
- $dashboard: {
21
- rect: {
22
- width: 220,
23
- height: 140,
24
- },
25
- },
26
- },
27
- },
28
- {
29
- title: '发光仪表盘',
30
- screenshot: '',
31
- schema: {
32
- componentName: COMPONENT_NAME,
33
- props: {
34
- value: 78,
35
- min: 0,
36
- max: 100,
37
- unit: '%',
38
- showScale: true,
39
- divisions: 10,
40
- showLabels: true,
41
- pointerType: 'needle',
42
- pointerColor: '#00ffff',
43
- glowEffect: true,
44
- },
45
- $dashboard: {
46
- rect: {
47
- width: 220,
48
- height: 140,
49
- },
50
- },
51
- },
52
- },
53
- ]
54
-
55
- export default snippets
1
+ /**
2
+ * Gauge Chart Snippets
3
+ * 仪表盘代码片段 - 使用共享数据源生成函数
4
+ */
5
+
6
+ import type { Snippet } from '@easy-editor/core'
7
+ import { generateStaticDataSource } from '@easy-editor/materials-shared'
8
+ import { COMPONENT_NAME } from './constants'
9
+
10
+ const snippets: Snippet[] = [
11
+ {
12
+ title: '仪表盘',
13
+ screenshot: '',
14
+ schema: {
15
+ componentName: COMPONENT_NAME,
16
+ title: '仪表盘',
17
+ props: {
18
+ $data: generateStaticDataSource({ value: 65 }),
19
+ min: 0,
20
+ max: 100,
21
+ showScale: true,
22
+ divisions: 10,
23
+ showLabels: true,
24
+ pointerType: 'needle',
25
+ pointerColor: '#ffffff',
26
+ rotation: 0,
27
+ opacity: 100,
28
+ background: 'transparent',
29
+ },
30
+ $dashboard: {
31
+ rect: {
32
+ width: 220,
33
+ height: 140,
34
+ },
35
+ },
36
+ },
37
+ },
38
+ {
39
+ title: '发光仪表盘',
40
+ screenshot: '',
41
+ schema: {
42
+ componentName: COMPONENT_NAME,
43
+ title: '发光仪表盘',
44
+ props: {
45
+ $data: generateStaticDataSource({ value: 78 }),
46
+ min: 0,
47
+ max: 100,
48
+ unit: '%',
49
+ showScale: true,
50
+ divisions: 10,
51
+ showLabels: true,
52
+ pointerType: 'needle',
53
+ pointerColor: '#00ffff',
54
+ glowEffect: true,
55
+ rotation: 0,
56
+ opacity: 100,
57
+ background: 'transparent',
58
+ },
59
+ $dashboard: {
60
+ rect: {
61
+ width: 220,
62
+ height: 140,
63
+ },
64
+ },
65
+ },
66
+ },
67
+ ]
68
+
69
+ export { snippets }
package/tsconfig.json CHANGED
@@ -1,9 +1,20 @@
1
- {
2
- "compilerOptions": {
3
- "jsx": "react-jsx",
4
- "esModuleInterop": true,
5
- "allowSyntheticDefaultImports": true
6
- },
7
- "extends": "./tsconfig.build.json",
8
- "include": ["./src", "./test"]
9
- }
1
+ {
2
+ "compilerOptions": {
3
+ "emitDeclarationOnly": true,
4
+ "declaration": true,
5
+ "target": "ESNext",
6
+ "newLine": "LF",
7
+ "module": "ESNext",
8
+ "moduleResolution": "Bundler",
9
+ "strict": true,
10
+ "strictNullChecks": true,
11
+ "jsx": "react-jsx",
12
+ "esModuleInterop": true,
13
+ "allowSyntheticDefaultImports": true,
14
+ "strictPropertyInitialization": false,
15
+ "outDir": "./dist",
16
+ "skipLibCheck": true,
17
+ },
18
+ "exclude": ["node_modules", "dist"],
19
+ "include": ["./src"]
20
+ }