@easy-editor/materials-dashboard-image 0.0.2

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/.vite/plugins/vite-plugin-external-deps.ts +224 -0
  2. package/.vite/plugins/vite-plugin-material-dev.ts +218 -0
  3. package/CHANGELOG.md +7 -0
  4. package/LICENSE +9 -0
  5. package/dist/component.esm.js +105 -0
  6. package/dist/component.esm.js.map +1 -0
  7. package/dist/component.js +114 -0
  8. package/dist/component.js.map +1 -0
  9. package/dist/component.min.js +2 -0
  10. package/dist/component.min.js.map +1 -0
  11. package/dist/index.cjs +427 -0
  12. package/dist/index.cjs.map +1 -0
  13. package/dist/index.esm.js +424 -0
  14. package/dist/index.esm.js.map +1 -0
  15. package/dist/index.js +432 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/index.min.js +2 -0
  18. package/dist/index.min.js.map +1 -0
  19. package/dist/meta.esm.js +323 -0
  20. package/dist/meta.esm.js.map +1 -0
  21. package/dist/meta.js +334 -0
  22. package/dist/meta.js.map +1 -0
  23. package/dist/meta.min.js +2 -0
  24. package/dist/meta.min.js.map +1 -0
  25. package/dist/src/component.d.ts +31 -0
  26. package/dist/src/configure.d.ts +7 -0
  27. package/dist/src/constants.d.ts +16 -0
  28. package/dist/src/index.d.ts +6 -0
  29. package/dist/src/meta.d.ts +7 -0
  30. package/dist/src/snippets.d.ts +7 -0
  31. package/package.json +67 -0
  32. package/rollup.config.js +222 -0
  33. package/src/assets/default.png +0 -0
  34. package/src/component.module.css +122 -0
  35. package/src/component.tsx +99 -0
  36. package/src/configure.ts +285 -0
  37. package/src/constants.ts +18 -0
  38. package/src/index.tsx +7 -0
  39. package/src/meta.ts +28 -0
  40. package/src/snippets.ts +49 -0
  41. package/src/type.d.ts +13 -0
  42. package/tsconfig.build.json +12 -0
  43. package/tsconfig.json +9 -0
  44. package/tsconfig.test.json +7 -0
  45. package/vite.config.ts +54 -0
@@ -0,0 +1,323 @@
1
+ /* @easy-editor/materials-dashboard-image v0.0.1 (meta, esm) */
2
+ const MaterialGroup = {
3
+ MEDIA: 'media'};
4
+
5
+ const COMPONENT_NAME = 'EasyEditorMaterialsImage';
6
+ const PACKAGE_NAME = '@easy-editor/materials-dashboard-image';
7
+
8
+ const configure = {
9
+ props: [{
10
+ type: 'group',
11
+ title: '属性',
12
+ setter: 'TabSetter',
13
+ items: [{
14
+ type: 'group',
15
+ key: 'config',
16
+ title: '配置',
17
+ setter: {
18
+ componentName: 'CollapseSetter',
19
+ props: {
20
+ icon: false
21
+ }
22
+ },
23
+ items: [
24
+ {
25
+ name: 'id',
26
+ title: 'ID',
27
+ setter: 'NodeIdSetter',
28
+ extraProps: {
29
+ label: false
30
+ }
31
+ }, {
32
+ name: 'title',
33
+ title: '标题',
34
+ setter: 'StringSetter',
35
+ extraProps: {
36
+ getValue(target) {
37
+ return target.getExtraPropValue('title');
38
+ },
39
+ setValue(target, value) {
40
+ target.setExtraPropValue('title', value);
41
+ }
42
+ }
43
+ }, {
44
+ type: 'group',
45
+ title: '基础属性',
46
+ setter: {
47
+ componentName: 'CollapseSetter',
48
+ props: {
49
+ icon: false
50
+ }
51
+ },
52
+ items: [{
53
+ name: 'rect',
54
+ title: '位置尺寸',
55
+ setter: 'RectSetter',
56
+ extraProps: {
57
+ getValue(target) {
58
+ return target.getExtraPropValue('$dashboard.rect');
59
+ },
60
+ setValue(target, value) {
61
+ target.setExtraPropValue('$dashboard.rect', value);
62
+ }
63
+ }
64
+ }]
65
+ },
66
+ {
67
+ type: 'group',
68
+ title: '内容',
69
+ setter: {
70
+ componentName: 'CollapseSetter',
71
+ props: {
72
+ icon: false
73
+ }
74
+ },
75
+ items: [{
76
+ name: '__upload',
77
+ title: '上传',
78
+ setter: {
79
+ componentName: 'UploadSetter',
80
+ props: {
81
+ accept: '.jpg,.jpeg,.png,.gif,.svg'
82
+ }
83
+ },
84
+ extraProps: {
85
+ setValue(target, value) {
86
+ if (value) {
87
+ const {
88
+ base64,
89
+ raw
90
+ } = value;
91
+ if (base64) {
92
+ target.parent.setPropValue('src', base64);
93
+ }
94
+ if (raw?.width) {
95
+ target.parent.setExtraPropValue('$dashboard.rect.width', raw.width);
96
+ }
97
+ if (raw?.height) {
98
+ target.parent.setExtraPropValue('$dashboard.rect.height', raw.height);
99
+ }
100
+ } else {
101
+ target.parent.clearPropValue('src');
102
+ }
103
+ }
104
+ }
105
+ }, {
106
+ name: 'src',
107
+ title: '图片地址',
108
+ setter: 'StringSetter'
109
+ }, {
110
+ name: 'alt',
111
+ title: '替代文本',
112
+ setter: 'StringSetter'
113
+ }]
114
+ }, {
115
+ type: 'group',
116
+ title: '加载',
117
+ setter: {
118
+ componentName: 'CollapseSetter',
119
+ props: {
120
+ icon: false
121
+ }
122
+ },
123
+ items: [{
124
+ name: 'lazyLoad',
125
+ title: '懒加载',
126
+ setter: 'SwitchSetter',
127
+ extraProps: {
128
+ defaultValue: false
129
+ }
130
+ }, {
131
+ name: 'lazyLoadThreshold',
132
+ title: '懒加载阈值',
133
+ setter: {
134
+ componentName: 'SliderSetter',
135
+ props: {
136
+ min: 0,
137
+ max: 500,
138
+ step: 50,
139
+ suffix: 'px'
140
+ }
141
+ },
142
+ extraProps: {
143
+ defaultValue: 100
144
+ }
145
+ }, {
146
+ name: 'placeholder',
147
+ title: '占位图',
148
+ setter: 'StringSetter'
149
+ }]
150
+ }, {
151
+ type: 'group',
152
+ title: '样式',
153
+ setter: {
154
+ componentName: 'CollapseSetter',
155
+ props: {
156
+ icon: false
157
+ }
158
+ },
159
+ items: [{
160
+ name: 'objectFit',
161
+ title: '填充方式',
162
+ setter: {
163
+ componentName: 'SelectSetter',
164
+ props: {
165
+ options: [{
166
+ label: '覆盖',
167
+ value: 'cover'
168
+ }, {
169
+ label: '包含',
170
+ value: 'contain'
171
+ }, {
172
+ label: '填充',
173
+ value: 'fill'
174
+ }, {
175
+ label: '无',
176
+ value: 'none'
177
+ }]
178
+ }
179
+ },
180
+ extraProps: {
181
+ defaultValue: 'cover'
182
+ }
183
+ }, {
184
+ name: 'borderRadius',
185
+ title: '圆角',
186
+ setter: 'NumberSetter',
187
+ extraProps: {
188
+ defaultValue: 0
189
+ }
190
+ }, {
191
+ name: 'borderStyle',
192
+ title: '边框样式',
193
+ setter: {
194
+ componentName: 'SelectSetter',
195
+ props: {
196
+ options: [{
197
+ label: '无',
198
+ value: 'none'
199
+ }, {
200
+ label: '霓虹',
201
+ value: 'neon'
202
+ }, {
203
+ label: '渐变',
204
+ value: 'gradient'
205
+ }, {
206
+ label: '科技感',
207
+ value: 'tech'
208
+ }]
209
+ }
210
+ },
211
+ extraProps: {
212
+ defaultValue: 'none'
213
+ }
214
+ }, {
215
+ name: 'borderColor',
216
+ title: '边框颜色',
217
+ setter: 'ColorSetter',
218
+ extraProps: {
219
+ defaultValue: '#00d4ff'
220
+ }
221
+ }, {
222
+ name: 'shadow',
223
+ title: '启用阴影',
224
+ setter: 'SwitchSetter',
225
+ extraProps: {
226
+ defaultValue: false
227
+ }
228
+ }, {
229
+ name: 'shadowColor',
230
+ title: '阴影颜色',
231
+ setter: 'ColorSetter',
232
+ extraProps: {
233
+ defaultValue: 'rgba(0, 212, 255, 0.3)'
234
+ }
235
+ }]
236
+ }]
237
+ }, {
238
+ type: 'group',
239
+ key: 'data',
240
+ title: '数据',
241
+ items: [{
242
+ name: 'dataBinding',
243
+ title: '数据绑定',
244
+ setter: 'DataBindingSetter'
245
+ }]
246
+ }, {
247
+ type: 'group',
248
+ key: 'advanced',
249
+ title: '高级',
250
+ items: [{
251
+ name: 'condition',
252
+ title: '显隐控制',
253
+ setter: 'SwitchSetter',
254
+ extraProps: {
255
+ defaultValue: true,
256
+ supportVariable: true
257
+ }
258
+ }]
259
+ }]
260
+ }],
261
+ component: {},
262
+ supports: {},
263
+ advanced: {}
264
+ };
265
+
266
+ const snippets = [{
267
+ title: '普通图片',
268
+ screenshot: '',
269
+ schema: {
270
+ componentName: COMPONENT_NAME,
271
+ props: {
272
+ alt: '图片',
273
+ objectFit: 'contain',
274
+ borderRadius: 0
275
+ },
276
+ $dashboard: {
277
+ rect: {
278
+ width: 200,
279
+ height: 180
280
+ }
281
+ }
282
+ }
283
+ }, {
284
+ title: '圆角图片',
285
+ screenshot: '',
286
+ schema: {
287
+ componentName: COMPONENT_NAME,
288
+ props: {
289
+ alt: '圆角图片',
290
+ objectFit: 'contain',
291
+ borderRadius: 100,
292
+ borderStyle: 'tech'
293
+ },
294
+ $dashboard: {
295
+ rect: {
296
+ width: 200,
297
+ height: 200
298
+ }
299
+ }
300
+ }
301
+ }];
302
+
303
+ var version = "0.0.1";
304
+ var pkg = {
305
+ version: version};
306
+
307
+ const meta = {
308
+ componentName: COMPONENT_NAME,
309
+ title: '图片',
310
+ group: MaterialGroup.MEDIA,
311
+ devMode: 'proCode',
312
+ npm: {
313
+ package: PACKAGE_NAME,
314
+ version: pkg.version,
315
+ globalName: COMPONENT_NAME,
316
+ componentName: COMPONENT_NAME
317
+ },
318
+ snippets,
319
+ configure
320
+ };
321
+
322
+ export { meta as default, meta };
323
+ //# sourceMappingURL=meta.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta.esm.js","sources":["../../../../shared/src/index.ts","../src/constants.ts","../src/configure.ts","../src/snippets.ts","../src/meta.ts"],"sourcesContent":["/**\n * Shared types, components and utilities for EasyEditor materials\n * @package @easy-editor/materials-shared\n */\n\n// 物料分组常量\nexport const MaterialGroup = {\n /** 内置 */\n INNER: 'inner',\n /** 基础 */\n BASIC: 'basic',\n /** 图表 */\n CHART: 'chart',\n /** 数据展示 */\n DISPLAY: 'display',\n /** 媒体 */\n MEDIA: 'media',\n /** 交互 */\n INTERACTION: 'interaction',\n /** 地图 */\n MAP: 'map',\n} as const\n\nexport type MaterialGroup = (typeof MaterialGroup)[keyof typeof MaterialGroup]\n\n// 工具函数\nexport { cn } from './lib/utils'\n\nexport * from './types'\n","/**\n * 物料常量配置\n * 统一管理全局变量名等配置,确保 meta.ts 和 rollup.config.js 使用相同的值\n */\n\n/**\n * UMD 全局变量基础名称\n * 用于构建:\n * - 元数据:${GLOBAL_NAME}Meta (例如: EasyEditorMaterialsImageMeta)\n * - 组件:${GLOBAL_NAME}Component (例如: EasyEditorMaterialsImageComponent)\n * - 完整构建:${GLOBAL_NAME} (例如: EasyEditorMaterialsImage)\n */\nexport const COMPONENT_NAME = 'EasyEditorMaterialsImage'\n\n/**\n * 包名\n */\nexport const PACKAGE_NAME = '@easy-editor/materials-dashboard-image'\n","/**\n * Image Configure\n * 图片组件配置\n */\n\nimport type { Configure } from '@easy-editor/core'\nimport type { UploadValue } from '@easy-editor/materials-shared'\n\nexport const configure: Configure = {\n props: [\n {\n type: 'group',\n title: '属性',\n setter: 'TabSetter',\n items: [\n {\n type: 'group',\n key: 'config',\n title: '配置',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n // 基础配置\n {\n name: 'id',\n title: 'ID',\n setter: 'NodeIdSetter',\n extraProps: {\n // @ts-expect-error label is not a valid extra prop\n label: false,\n },\n },\n {\n name: 'title',\n title: '标题',\n setter: 'StringSetter',\n extraProps: {\n getValue(target) {\n return target.getExtraPropValue('title')\n },\n setValue(target, value) {\n target.setExtraPropValue('title', value)\n },\n },\n },\n {\n type: 'group',\n title: '基础属性',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'rect',\n title: '位置尺寸',\n setter: 'RectSetter',\n extraProps: {\n getValue(target) {\n return target.getExtraPropValue('$dashboard.rect')\n },\n setValue(target, value) {\n target.setExtraPropValue('$dashboard.rect', value)\n },\n },\n },\n ],\n },\n // 组件配置\n {\n type: 'group',\n title: '内容',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: '__upload',\n title: '上传',\n setter: {\n componentName: 'UploadSetter',\n props: {\n accept: '.jpg,.jpeg,.png,.gif,.svg',\n },\n },\n extraProps: {\n setValue(target, value: UploadValue) {\n if (value) {\n const { base64, raw } = value\n if (base64) {\n target.parent.setPropValue('src', base64)\n }\n if (raw?.width) {\n target.parent.setExtraPropValue('$dashboard.rect.width', raw.width)\n }\n if (raw?.height) {\n target.parent.setExtraPropValue('$dashboard.rect.height', raw.height)\n }\n } else {\n target.parent.clearPropValue('src')\n }\n },\n },\n },\n {\n name: 'src',\n title: '图片地址',\n setter: 'StringSetter',\n },\n {\n name: 'alt',\n title: '替代文本',\n setter: 'StringSetter',\n },\n ],\n },\n {\n type: 'group',\n title: '加载',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'lazyLoad',\n title: '懒加载',\n setter: 'SwitchSetter',\n extraProps: {\n defaultValue: false,\n },\n },\n {\n name: 'lazyLoadThreshold',\n title: '懒加载阈值',\n setter: {\n componentName: 'SliderSetter',\n props: {\n min: 0,\n max: 500,\n step: 50,\n suffix: 'px',\n },\n },\n extraProps: {\n defaultValue: 100,\n },\n },\n {\n name: 'placeholder',\n title: '占位图',\n setter: 'StringSetter',\n },\n ],\n },\n {\n type: 'group',\n title: '样式',\n setter: {\n componentName: 'CollapseSetter',\n props: {\n icon: false,\n },\n },\n items: [\n {\n name: 'objectFit',\n title: '填充方式',\n setter: {\n componentName: 'SelectSetter',\n props: {\n options: [\n { label: '覆盖', value: 'cover' },\n { label: '包含', value: 'contain' },\n { label: '填充', value: 'fill' },\n { label: '无', value: 'none' },\n ],\n },\n },\n extraProps: {\n defaultValue: 'cover',\n },\n },\n {\n name: 'borderRadius',\n title: '圆角',\n setter: 'NumberSetter',\n extraProps: {\n defaultValue: 0,\n },\n },\n {\n name: 'borderStyle',\n title: '边框样式',\n setter: {\n componentName: 'SelectSetter',\n props: {\n options: [\n { label: '无', value: 'none' },\n { label: '霓虹', value: 'neon' },\n { label: '渐变', value: 'gradient' },\n { label: '科技感', value: 'tech' },\n ],\n },\n },\n extraProps: {\n defaultValue: 'none',\n },\n },\n {\n name: 'borderColor',\n title: '边框颜色',\n setter: 'ColorSetter',\n extraProps: {\n defaultValue: '#00d4ff',\n },\n },\n {\n name: 'shadow',\n title: '启用阴影',\n setter: 'SwitchSetter',\n extraProps: {\n defaultValue: false,\n },\n },\n {\n name: 'shadowColor',\n title: '阴影颜色',\n setter: 'ColorSetter',\n extraProps: {\n defaultValue: 'rgba(0, 212, 255, 0.3)',\n },\n },\n ],\n },\n ],\n },\n {\n type: 'group',\n key: 'data',\n title: '数据',\n items: [\n {\n name: 'dataBinding',\n title: '数据绑定',\n setter: 'DataBindingSetter',\n },\n ],\n },\n {\n type: 'group',\n key: 'advanced',\n title: '高级',\n items: [\n {\n name: 'condition',\n title: '显隐控制',\n setter: 'SwitchSetter',\n extraProps: {\n defaultValue: true,\n supportVariable: true,\n },\n },\n ],\n },\n ],\n },\n ],\n component: {},\n supports: {},\n advanced: {},\n}\n\nexport default configure\n","/**\n * Image Snippets\n * 图片组件代码片段\n */\n\nimport type { Snippet } from '@easy-editor/core'\nimport { COMPONENT_NAME } from './constants'\n\nexport const snippets: Snippet[] = [\n {\n title: '普通图片',\n screenshot: '',\n schema: {\n componentName: COMPONENT_NAME,\n props: {\n alt: '图片',\n objectFit: 'contain',\n borderRadius: 0,\n },\n $dashboard: {\n rect: {\n width: 200,\n height: 180,\n },\n },\n },\n },\n {\n title: '圆角图片',\n screenshot: '',\n schema: {\n componentName: COMPONENT_NAME,\n props: {\n alt: '圆角图片',\n objectFit: 'contain',\n borderRadius: 100,\n borderStyle: 'tech',\n },\n $dashboard: {\n rect: {\n width: 200,\n height: 200,\n },\n },\n },\n },\n]\n\nexport default snippets\n","/**\n * Image Meta\n * 图片组件元数据\n */\n\nimport type { ComponentMetadata } from '@easy-editor/core'\nimport { MaterialGroup } from '@easy-editor/materials-shared'\nimport { COMPONENT_NAME, PACKAGE_NAME } from './constants'\nimport configure from './configure'\nimport snippets from './snippets'\nimport pkg from '../package.json'\n\nexport const meta: ComponentMetadata = {\n componentName: COMPONENT_NAME,\n title: '图片',\n group: MaterialGroup.MEDIA,\n devMode: 'proCode',\n npm: {\n package: PACKAGE_NAME,\n version: pkg.version,\n globalName: COMPONENT_NAME,\n componentName: COMPONENT_NAME,\n },\n snippets,\n configure,\n}\n\nexport default meta\n"],"names":["MaterialGroup","INNER","MEDIA","COMPONENT_NAME","PACKAGE_NAME","configure","props","type","title","setter","items","key","componentName","icon","name","extraProps","label","getValue","target","getExtraPropValue","setValue","value","setExtraPropValue","accept","base64","raw","parent","setPropValue","width","height","clearPropValue","defaultValue","min","max","step","suffix","options","supportVariable","component","supports","advanced","snippets","screenshot","schema","alt","objectFit","borderRadius","$dashboard","rect","borderStyle","meta","group","devMode","npm","package","version","pkg","globalName"],"mappings":"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"}
package/dist/meta.js ADDED
@@ -0,0 +1,334 @@
1
+ /* @easy-editor/materials-dashboard-image v0.0.1 (meta) */
2
+ (function (global, factory) {
3
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
4
+ typeof define === 'function' && define.amd ? define(['exports'], factory) :
5
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory(global.EasyEditorMaterialsImageMeta = {}));
6
+ })(this, (function (exports) { 'use strict';
7
+
8
+ const MaterialGroup = {
9
+ MEDIA: 'media'};
10
+
11
+ const COMPONENT_NAME = 'EasyEditorMaterialsImage';
12
+ const PACKAGE_NAME = '@easy-editor/materials-dashboard-image';
13
+
14
+ const configure = {
15
+ props: [{
16
+ type: 'group',
17
+ title: '属性',
18
+ setter: 'TabSetter',
19
+ items: [{
20
+ type: 'group',
21
+ key: 'config',
22
+ title: '配置',
23
+ setter: {
24
+ componentName: 'CollapseSetter',
25
+ props: {
26
+ icon: false
27
+ }
28
+ },
29
+ items: [
30
+ {
31
+ name: 'id',
32
+ title: 'ID',
33
+ setter: 'NodeIdSetter',
34
+ extraProps: {
35
+ label: false
36
+ }
37
+ }, {
38
+ name: 'title',
39
+ title: '标题',
40
+ setter: 'StringSetter',
41
+ extraProps: {
42
+ getValue(target) {
43
+ return target.getExtraPropValue('title');
44
+ },
45
+ setValue(target, value) {
46
+ target.setExtraPropValue('title', value);
47
+ }
48
+ }
49
+ }, {
50
+ type: 'group',
51
+ title: '基础属性',
52
+ setter: {
53
+ componentName: 'CollapseSetter',
54
+ props: {
55
+ icon: false
56
+ }
57
+ },
58
+ items: [{
59
+ name: 'rect',
60
+ title: '位置尺寸',
61
+ setter: 'RectSetter',
62
+ extraProps: {
63
+ getValue(target) {
64
+ return target.getExtraPropValue('$dashboard.rect');
65
+ },
66
+ setValue(target, value) {
67
+ target.setExtraPropValue('$dashboard.rect', value);
68
+ }
69
+ }
70
+ }]
71
+ },
72
+ {
73
+ type: 'group',
74
+ title: '内容',
75
+ setter: {
76
+ componentName: 'CollapseSetter',
77
+ props: {
78
+ icon: false
79
+ }
80
+ },
81
+ items: [{
82
+ name: '__upload',
83
+ title: '上传',
84
+ setter: {
85
+ componentName: 'UploadSetter',
86
+ props: {
87
+ accept: '.jpg,.jpeg,.png,.gif,.svg'
88
+ }
89
+ },
90
+ extraProps: {
91
+ setValue(target, value) {
92
+ if (value) {
93
+ const {
94
+ base64,
95
+ raw
96
+ } = value;
97
+ if (base64) {
98
+ target.parent.setPropValue('src', base64);
99
+ }
100
+ if (raw?.width) {
101
+ target.parent.setExtraPropValue('$dashboard.rect.width', raw.width);
102
+ }
103
+ if (raw?.height) {
104
+ target.parent.setExtraPropValue('$dashboard.rect.height', raw.height);
105
+ }
106
+ } else {
107
+ target.parent.clearPropValue('src');
108
+ }
109
+ }
110
+ }
111
+ }, {
112
+ name: 'src',
113
+ title: '图片地址',
114
+ setter: 'StringSetter'
115
+ }, {
116
+ name: 'alt',
117
+ title: '替代文本',
118
+ setter: 'StringSetter'
119
+ }]
120
+ }, {
121
+ type: 'group',
122
+ title: '加载',
123
+ setter: {
124
+ componentName: 'CollapseSetter',
125
+ props: {
126
+ icon: false
127
+ }
128
+ },
129
+ items: [{
130
+ name: 'lazyLoad',
131
+ title: '懒加载',
132
+ setter: 'SwitchSetter',
133
+ extraProps: {
134
+ defaultValue: false
135
+ }
136
+ }, {
137
+ name: 'lazyLoadThreshold',
138
+ title: '懒加载阈值',
139
+ setter: {
140
+ componentName: 'SliderSetter',
141
+ props: {
142
+ min: 0,
143
+ max: 500,
144
+ step: 50,
145
+ suffix: 'px'
146
+ }
147
+ },
148
+ extraProps: {
149
+ defaultValue: 100
150
+ }
151
+ }, {
152
+ name: 'placeholder',
153
+ title: '占位图',
154
+ setter: 'StringSetter'
155
+ }]
156
+ }, {
157
+ type: 'group',
158
+ title: '样式',
159
+ setter: {
160
+ componentName: 'CollapseSetter',
161
+ props: {
162
+ icon: false
163
+ }
164
+ },
165
+ items: [{
166
+ name: 'objectFit',
167
+ title: '填充方式',
168
+ setter: {
169
+ componentName: 'SelectSetter',
170
+ props: {
171
+ options: [{
172
+ label: '覆盖',
173
+ value: 'cover'
174
+ }, {
175
+ label: '包含',
176
+ value: 'contain'
177
+ }, {
178
+ label: '填充',
179
+ value: 'fill'
180
+ }, {
181
+ label: '无',
182
+ value: 'none'
183
+ }]
184
+ }
185
+ },
186
+ extraProps: {
187
+ defaultValue: 'cover'
188
+ }
189
+ }, {
190
+ name: 'borderRadius',
191
+ title: '圆角',
192
+ setter: 'NumberSetter',
193
+ extraProps: {
194
+ defaultValue: 0
195
+ }
196
+ }, {
197
+ name: 'borderStyle',
198
+ title: '边框样式',
199
+ setter: {
200
+ componentName: 'SelectSetter',
201
+ props: {
202
+ options: [{
203
+ label: '无',
204
+ value: 'none'
205
+ }, {
206
+ label: '霓虹',
207
+ value: 'neon'
208
+ }, {
209
+ label: '渐变',
210
+ value: 'gradient'
211
+ }, {
212
+ label: '科技感',
213
+ value: 'tech'
214
+ }]
215
+ }
216
+ },
217
+ extraProps: {
218
+ defaultValue: 'none'
219
+ }
220
+ }, {
221
+ name: 'borderColor',
222
+ title: '边框颜色',
223
+ setter: 'ColorSetter',
224
+ extraProps: {
225
+ defaultValue: '#00d4ff'
226
+ }
227
+ }, {
228
+ name: 'shadow',
229
+ title: '启用阴影',
230
+ setter: 'SwitchSetter',
231
+ extraProps: {
232
+ defaultValue: false
233
+ }
234
+ }, {
235
+ name: 'shadowColor',
236
+ title: '阴影颜色',
237
+ setter: 'ColorSetter',
238
+ extraProps: {
239
+ defaultValue: 'rgba(0, 212, 255, 0.3)'
240
+ }
241
+ }]
242
+ }]
243
+ }, {
244
+ type: 'group',
245
+ key: 'data',
246
+ title: '数据',
247
+ items: [{
248
+ name: 'dataBinding',
249
+ title: '数据绑定',
250
+ setter: 'DataBindingSetter'
251
+ }]
252
+ }, {
253
+ type: 'group',
254
+ key: 'advanced',
255
+ title: '高级',
256
+ items: [{
257
+ name: 'condition',
258
+ title: '显隐控制',
259
+ setter: 'SwitchSetter',
260
+ extraProps: {
261
+ defaultValue: true,
262
+ supportVariable: true
263
+ }
264
+ }]
265
+ }]
266
+ }],
267
+ component: {},
268
+ supports: {},
269
+ advanced: {}
270
+ };
271
+
272
+ const snippets = [{
273
+ title: '普通图片',
274
+ screenshot: '',
275
+ schema: {
276
+ componentName: COMPONENT_NAME,
277
+ props: {
278
+ alt: '图片',
279
+ objectFit: 'contain',
280
+ borderRadius: 0
281
+ },
282
+ $dashboard: {
283
+ rect: {
284
+ width: 200,
285
+ height: 180
286
+ }
287
+ }
288
+ }
289
+ }, {
290
+ title: '圆角图片',
291
+ screenshot: '',
292
+ schema: {
293
+ componentName: COMPONENT_NAME,
294
+ props: {
295
+ alt: '圆角图片',
296
+ objectFit: 'contain',
297
+ borderRadius: 100,
298
+ borderStyle: 'tech'
299
+ },
300
+ $dashboard: {
301
+ rect: {
302
+ width: 200,
303
+ height: 200
304
+ }
305
+ }
306
+ }
307
+ }];
308
+
309
+ var version = "0.0.1";
310
+ var pkg = {
311
+ version: version};
312
+
313
+ const meta = {
314
+ componentName: COMPONENT_NAME,
315
+ title: '图片',
316
+ group: MaterialGroup.MEDIA,
317
+ devMode: 'proCode',
318
+ npm: {
319
+ package: PACKAGE_NAME,
320
+ version: pkg.version,
321
+ globalName: COMPONENT_NAME,
322
+ componentName: COMPONENT_NAME
323
+ },
324
+ snippets,
325
+ configure
326
+ };
327
+
328
+ exports.default = meta;
329
+ exports.meta = meta;
330
+
331
+ Object.defineProperty(exports, '__esModule', { value: true });
332
+
333
+ }));
334
+ //# sourceMappingURL=meta.js.map