@vtj/materials 0.9.30 → 0.10.1-alpha.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 (56) hide show
  1. package/dist/assets/antdv/index.umd.js +2 -2
  2. package/dist/assets/charts/index.umd.js +2 -2
  3. package/dist/assets/element/index.umd.js +2 -2
  4. package/dist/assets/ui/index.umd.js +2 -2
  5. package/dist/assets/uni-h5/index.umd.js +7 -0
  6. package/dist/assets/vant/index.umd.js +5 -5
  7. package/dist/deps/@vtj/charts/index.umd.js +2 -2
  8. package/dist/deps/@vtj/icons/index.umd.js +2 -2
  9. package/dist/deps/@vtj/icons/style.css +1 -1
  10. package/dist/deps/@vtj/ui/index.umd.js +2 -2
  11. package/dist/deps/@vtj/uni/index.umd.js +7 -0
  12. package/dist/deps/@vtj/uni/style.css +1 -0
  13. package/dist/deps/@vtj/utils/index.umd.js +2 -2
  14. package/dist/deps/@vueuse/core/index.iife.min.js +1 -1
  15. package/dist/deps/uni-app/index.umd.js +1 -0
  16. package/dist/deps/uni-h5/index.umd.js +19 -0
  17. package/dist/deps/uni-h5/style.css +1 -0
  18. package/dist/deps/uni-h5-vue/index.umd.js +8 -0
  19. package/package.json +15 -8
  20. package/src/uni-app/index.ts +1 -0
  21. package/src/uni-h5/components/Switch.ts +36 -0
  22. package/src/uni-h5/components/audio.ts +69 -0
  23. package/src/uni-h5/components/button.ts +206 -0
  24. package/src/uni-h5/components/canvas.ts +50 -0
  25. package/src/uni-h5/components/checkbox.ts +81 -0
  26. package/src/uni-h5/components/coverImage.ts +18 -0
  27. package/src/uni-h5/components/coverView.ts +19 -0
  28. package/src/uni-h5/components/editor.ts +49 -0
  29. package/src/uni-h5/components/form.ts +53 -0
  30. package/src/uni-h5/components/icon.ts +44 -0
  31. package/src/uni-h5/components/image.ts +80 -0
  32. package/src/uni-h5/components/index.ts +119 -0
  33. package/src/uni-h5/components/input.ts +220 -0
  34. package/src/uni-h5/components/label.ts +17 -0
  35. package/src/uni-h5/components/map.ts +207 -0
  36. package/src/uni-h5/components/matchMedia.ts +59 -0
  37. package/src/uni-h5/components/movableArea.ts +31 -0
  38. package/src/uni-h5/components/movableView.ts +97 -0
  39. package/src/uni-h5/components/navigator.ts +90 -0
  40. package/src/uni-h5/components/picker.ts +81 -0
  41. package/src/uni-h5/components/pickerView.ts +163 -0
  42. package/src/uni-h5/components/progress.ts +71 -0
  43. package/src/uni-h5/components/radio.ts +127 -0
  44. package/src/uni-h5/components/richText.ts +67 -0
  45. package/src/uni-h5/components/scrollView.ts +157 -0
  46. package/src/uni-h5/components/slider.ts +75 -0
  47. package/src/uni-h5/components/swiper.ts +220 -0
  48. package/src/uni-h5/components/text.ts +38 -0
  49. package/src/uni-h5/components/textarea.ts +169 -0
  50. package/src/uni-h5/components/video.ts +276 -0
  51. package/src/uni-h5/components/view.ts +39 -0
  52. package/src/uni-h5/components/webView.ts +54 -0
  53. package/src/uni-h5/index.ts +11 -0
  54. package/src/uni-h5/style.scss +59 -0
  55. package/src/uni-h5-vue/index.ts +2 -0
  56. package/src/version.ts +2 -2
@@ -0,0 +1,119 @@
1
+ import type {
2
+ Material,
3
+ MaterialCategory,
4
+ MaterialDescription
5
+ } from '@vtj/core';
6
+ import { version } from '../../version';
7
+ import { setPackageName } from '../../shared';
8
+ // container 视图容器
9
+ import view from './view';
10
+ import scrollView from './scrollView';
11
+ import swiper from './swiper';
12
+ import matchMedia from './matchMedia';
13
+ import matchArea from './movableArea';
14
+ import movableView from './movableView';
15
+ import coverView from './coverView';
16
+ import coverImage from './coverImage';
17
+
18
+ // basic 基础内容
19
+ import icon from './icon';
20
+ import text from './text';
21
+ import richText from './richText';
22
+ import progress from './progress';
23
+
24
+ //form 表单组件
25
+ import button from './button';
26
+ import checkbox from './checkbox';
27
+ import editor from './editor';
28
+ import form from './form';
29
+ import input from './input';
30
+ import label from './label';
31
+ import picker from './picker';
32
+ import pickerView from './pickerView';
33
+ import radio from './radio';
34
+ import slider from './slider';
35
+ import Switch from './Switch';
36
+ import textarea from './textarea';
37
+
38
+ // nav
39
+ import navigator from './navigator';
40
+ import audio from './audio';
41
+ import image from './image';
42
+ import video from './video';
43
+ import map from './map';
44
+ import canvas from './canvas';
45
+ import webView from './webView';
46
+
47
+ const name = '@dcloudio/uni-h5';
48
+ const components: MaterialDescription[] = [
49
+ // container
50
+ view,
51
+ scrollView,
52
+ swiper,
53
+ matchMedia,
54
+ matchArea,
55
+ movableView,
56
+ coverView,
57
+ coverImage,
58
+ // basic
59
+ icon,
60
+ text,
61
+ richText,
62
+ progress,
63
+ // form
64
+ button,
65
+ checkbox,
66
+ editor,
67
+ form,
68
+ input,
69
+ label,
70
+ picker,
71
+ pickerView,
72
+ radio,
73
+ slider,
74
+ Switch,
75
+ textarea,
76
+ //nav
77
+ navigator,
78
+ audio,
79
+ image,
80
+ video,
81
+ map,
82
+ canvas,
83
+ webView
84
+ ].flat();
85
+
86
+ const categories: MaterialCategory[] = [
87
+ {
88
+ id: 'container',
89
+ category: '视图组件'
90
+ },
91
+ {
92
+ id: 'basic',
93
+ category: '基础内容'
94
+ },
95
+ {
96
+ id: 'form',
97
+ category: '表单'
98
+ },
99
+ {
100
+ id: 'nav',
101
+ category: '路由与页面跳转'
102
+ },
103
+ {
104
+ id: 'media',
105
+ category: '媒体'
106
+ }
107
+ ];
108
+
109
+ const material: Material = {
110
+ name,
111
+ version,
112
+ label: 'UniApp',
113
+ library: 'UniH5Material',
114
+ order: 4,
115
+ categories,
116
+ components: setPackageName(components, name)
117
+ };
118
+
119
+ export default material;
@@ -0,0 +1,220 @@
1
+ import type { MaterialDescription } from '@vtj/core';
2
+
3
+ const desc: MaterialDescription = {
4
+ name: 'Input',
5
+ label: '单行输入框',
6
+ categoryId: 'form',
7
+ props: [
8
+ {
9
+ name: 'value',
10
+ title: '输入框的初始内容',
11
+ setters: 'StringSetter'
12
+ },
13
+ {
14
+ name: 'type',
15
+ title: 'input 的类型 有效值',
16
+ defaultValue: 'text',
17
+ setters: 'SelectSetter',
18
+ options: [
19
+ 'text',
20
+ 'number',
21
+ 'idcard',
22
+ 'digit',
23
+ 'tel',
24
+ 'safe-password',
25
+ 'nickname'
26
+ ]
27
+ },
28
+ {
29
+ name: 'text-content-type',
30
+ title: '文本区域的语义,根据类型自动填充 有效值',
31
+ setters: 'StringSetter'
32
+ },
33
+ {
34
+ name: 'password',
35
+ title: '是否是密码类型',
36
+ defaultValue: false,
37
+ setters: 'BooleanSetter'
38
+ },
39
+ {
40
+ name: 'placeholder',
41
+ title: '输入框为空时占位符',
42
+ setters: 'StringSetter'
43
+ },
44
+ {
45
+ name: 'placeholder-style',
46
+ title: '指定 placeholder 的样式',
47
+ setters: 'StringSetter'
48
+ },
49
+ {
50
+ name: 'placeholder-class',
51
+ title: '指定 placeholder 的样式类',
52
+ defaultValue: 'input-placeholder',
53
+ setters: 'StringSetter'
54
+ },
55
+ {
56
+ name: 'disabled',
57
+ title: '是否禁用',
58
+ defaultValue: false,
59
+ setters: 'BooleanSetter'
60
+ },
61
+ {
62
+ name: 'maxlength',
63
+ title: '最大输入长度,设置为 -1 的时候不限制最大长度',
64
+ defaultValue: 140,
65
+ setters: 'NumberSetter'
66
+ },
67
+ {
68
+ name: 'cursor-spacing',
69
+ title: '指定光标与键盘的距离',
70
+ defaultValue: 0,
71
+ setters: 'NumberSetter'
72
+ },
73
+ {
74
+ name: 'focus',
75
+ title: '获取焦点',
76
+ defaultValue: false,
77
+ setters: 'BooleanSetter'
78
+ },
79
+ {
80
+ name: 'confirm-type',
81
+ title: '设置键盘右下角按钮的文字,仅在 type="text" 时生效。有效值',
82
+ defaultValue: 'done',
83
+ setters: 'SelectSetter',
84
+ options: ['send', 'search', 'next', 'go', 'done']
85
+ },
86
+ {
87
+ name: 'confirm-hold',
88
+ title: '点击键盘右下角按钮时是否保持键盘不收起',
89
+ defaultValue: false,
90
+ setters: 'BooleanSetter'
91
+ },
92
+ {
93
+ name: 'cursor',
94
+ title: '指定focus时的光标位置',
95
+ setters: 'NumberSetter'
96
+ },
97
+ {
98
+ name: 'cursor-color',
99
+ title: '光标颜色',
100
+ setters: 'StringSetter'
101
+ },
102
+ {
103
+ name: 'selection-start',
104
+ title: '光标起始位置,自动聚集时有效,需与selection-end搭配使用',
105
+ defaultValue: -1,
106
+ setters: 'NumberSetter'
107
+ },
108
+ {
109
+ name: 'selection-end',
110
+ title: '光标结束位置,自动聚集时有效,需与selection-start搭配使用',
111
+ defaultValue: -1,
112
+ setters: 'NumberSetter'
113
+ },
114
+ {
115
+ name: 'adjust-position',
116
+ title: '键盘弹起时,是否自动上推页面',
117
+ defaultValue: true,
118
+ setters: 'BooleanSetter'
119
+ },
120
+ {
121
+ name: 'auto-blur',
122
+ title: '键盘收起时,是否自动失去焦点',
123
+ defaultValue: false,
124
+ setters: 'BooleanSetter'
125
+ },
126
+ {
127
+ name: 'ignoreCompositionEvent',
128
+ title: '是否忽略组件内对文本合成系统事件的处理',
129
+ defaultValue: true,
130
+ setters: 'BooleanSetter'
131
+ },
132
+ {
133
+ name: 'always-embed',
134
+ title:
135
+ '强制 input 处于同层状态,默认 focus 时 input 会切到非同层状态 (仅在 iOS 下生效)',
136
+ defaultValue: false,
137
+ setters: 'BooleanSetter'
138
+ },
139
+ {
140
+ name: 'hold-keyboard',
141
+ title: 'focus时,点击页面的时候不收起键盘',
142
+ defaultValue: false,
143
+ setters: 'BooleanSetter'
144
+ },
145
+ {
146
+ name: 'safe-password-cert-path',
147
+ title: '安全键盘加密公钥的路径,只支持包内路径',
148
+ setters: 'StringSetter'
149
+ },
150
+ {
151
+ name: 'safe-password-length',
152
+ title: '安全键盘输入密码长度',
153
+ setters: 'NumberSetter'
154
+ },
155
+ {
156
+ name: 'safe-password-time-stamp',
157
+ title: '安全键盘加密时间戳',
158
+ setters: 'NumberSetter'
159
+ },
160
+ {
161
+ name: 'safe-password-nonce',
162
+ title: '安全键盘加密盐值',
163
+ setters: 'StringSetter'
164
+ },
165
+ {
166
+ name: 'safe-password-salt',
167
+ title: '安全键盘计算 hash 盐值,若指定custom-hash 则无效',
168
+ setters: 'StringSetter'
169
+ },
170
+ {
171
+ name: 'safe-password-custom-hash',
172
+ title: '安全键盘计算 hash 的算法表达式',
173
+ setters: 'StringSetter'
174
+ },
175
+ {
176
+ name: 'random-number',
177
+ title: '当 type 为 number, digit, idcard 数字键盘是否随机排列',
178
+ defaultValue: false,
179
+ setters: 'BooleanSetter'
180
+ },
181
+ {
182
+ name: 'controlled',
183
+ title: '是否为受控组件。为 true 时,value 内容会完全受 setData 控制',
184
+ defaultValue: false,
185
+ setters: 'BooleanSetter'
186
+ },
187
+ {
188
+ name: 'always-system',
189
+ title:
190
+ '是否强制使用系统键盘和 Web-view 创建的 input 元素。为 true 时,confirm-type、confirm-hold 可能失效',
191
+ defaultValue: false,
192
+ setters: 'BooleanSetter'
193
+ },
194
+ {
195
+ name: 'inputmode',
196
+ title:
197
+ '是一个枚举属性,它提供了用户在编辑元素或其内容时可能输入的数据类型的提示',
198
+ defaultValue: 'text',
199
+ setters: 'SelectSetter',
200
+ options: [
201
+ 'none',
202
+ 'text',
203
+ 'decimal',
204
+ 'numeric',
205
+ 'tel',
206
+ 'search',
207
+ 'email',
208
+ 'url'
209
+ ]
210
+ }
211
+ ],
212
+ events: ['input', 'focus', 'blur', 'confirm'],
213
+ snippet: {
214
+ props: {
215
+ placeholder: '这个是一个输入框'
216
+ }
217
+ }
218
+ };
219
+
220
+ export default desc;
@@ -0,0 +1,17 @@
1
+ import type { MaterialDescription } from '@vtj/core';
2
+
3
+ const desc: MaterialDescription = {
4
+ name: 'Label',
5
+ label: '标签',
6
+ categoryId: 'form',
7
+ props: [
8
+ {
9
+ name: 'for',
10
+ title: '绑定控件的 id',
11
+ setters: 'StringSetter'
12
+ }
13
+ ],
14
+ snippet: {}
15
+ };
16
+
17
+ export default desc;
@@ -0,0 +1,207 @@
1
+ import type { MaterialDescription } from '@vtj/core';
2
+
3
+ const desc: MaterialDescription = {
4
+ name: 'Map',
5
+ label: '地图组件',
6
+ categoryId: 'media',
7
+ props: [
8
+ {
9
+ name: 'longitude',
10
+ title: '中心经度',
11
+ setters: 'NumberSetter'
12
+ },
13
+ {
14
+ name: 'latitude',
15
+ title: '中心纬度',
16
+ setters: 'NumberSetter'
17
+ },
18
+ {
19
+ name: 'scale',
20
+ title: '缩放级别,取值范围为3-20',
21
+ defaultValue: 16,
22
+ setters: 'NumberSetter'
23
+ },
24
+ {
25
+ name: 'theme',
26
+ title: '主题',
27
+ defaultValue: 'normal',
28
+ setters: 'SelectSetter',
29
+ options: ['satellite', 'normal']
30
+ },
31
+ {
32
+ name: 'min-scale',
33
+ title: '最小缩放级别',
34
+ defaultValue: 3,
35
+ setters: 'NumberSetter'
36
+ },
37
+ {
38
+ name: 'max-scale',
39
+ title: '最大缩放级别',
40
+ defaultValue: 20,
41
+ setters: 'NumberSetter'
42
+ },
43
+ {
44
+ name: 'layer-style',
45
+ title: '个性化地图',
46
+ defaultValue: 1,
47
+ setters: ['NumberSetter', 'StringSetter']
48
+ },
49
+ {
50
+ name: 'markers',
51
+ title: '标记点',
52
+ setters: 'ArraySetter'
53
+ },
54
+ {
55
+ name: 'polyline',
56
+ title: '路线',
57
+ setters: 'ArraySetter'
58
+ },
59
+ {
60
+ name: 'circles',
61
+ title: '圆',
62
+ setters: 'ArraySetter'
63
+ },
64
+ {
65
+ name: 'controls',
66
+ title: '控件',
67
+ setters: 'ArraySetter'
68
+ },
69
+ {
70
+ name: 'include-points',
71
+ title: '缩放视野以包含所有给定的坐标点',
72
+ setters: 'ArraySetter'
73
+ },
74
+ {
75
+ name: 'zIndex',
76
+ title: '显示层级',
77
+ defaultValue: false,
78
+ setters: 'NumberSetter'
79
+ },
80
+ {
81
+ name: 'enable-3D',
82
+ title: '是否显示3D楼块',
83
+ defaultValue: false,
84
+ setters: 'BooleanSetter'
85
+ },
86
+ {
87
+ name: 'show-compass',
88
+ title: '是否显示指南针',
89
+ defaultValue: false,
90
+ setters: 'BooleanSetter'
91
+ },
92
+ {
93
+ name: 'enable-zoom',
94
+ title: '是否支持缩放',
95
+ defaultValue: true,
96
+ setters: 'BooleanSetter'
97
+ },
98
+ {
99
+ name: 'enable-scroll',
100
+ title: '是否支持拖动',
101
+ defaultValue: true,
102
+ setters: 'BooleanSetter'
103
+ },
104
+ {
105
+ name: 'enable-rotate',
106
+ title: '是否支持旋转',
107
+ defaultValue: false,
108
+ setters: 'BooleanSetter'
109
+ },
110
+ {
111
+ name: 'rotate',
112
+ title: '旋转角度(范围0-360)地图正北和设备 y 轴角度的夹角',
113
+ defaultValue: 0,
114
+ setters: 'NumberSetter'
115
+ },
116
+ {
117
+ name: 'skew',
118
+ title: '倾斜角度,范围 0 ~ 40 , 关于 z 轴的倾角',
119
+ defaultValue: 0,
120
+ setters: 'NumberSetter'
121
+ },
122
+ {
123
+ name: 'enable-overlooking',
124
+ title: '是否开启俯视',
125
+ defaultValue: false,
126
+ setters: 'BooleanSetter'
127
+ },
128
+ {
129
+ name: 'enable-satellite',
130
+ title: '是否开启卫星图',
131
+ defaultValue: false,
132
+ setters: 'BooleanSetter'
133
+ },
134
+ {
135
+ name: 'enable-traffic',
136
+ title: '是否开启实时路况',
137
+ defaultValue: false,
138
+ setters: 'BooleanSetter'
139
+ },
140
+ {
141
+ name: 'enable-poi',
142
+ title: '是否展示 POI 点',
143
+ defaultValue: false,
144
+ setters: 'BooleanSetter'
145
+ },
146
+ {
147
+ name: 'enable-building',
148
+ title: '是否展示建筑物',
149
+ defaultValue: false,
150
+ setters: 'BooleanSetter'
151
+ },
152
+ {
153
+ name: 'show-location',
154
+ title: '显示带有方向的当前定位点',
155
+ setters: 'BooleanSetter'
156
+ },
157
+ {
158
+ name: 'polygons',
159
+ title: '多边形',
160
+ setters: 'ArraySetter'
161
+ },
162
+ {
163
+ name: 'polygon',
164
+ title: '多边形(支付宝)',
165
+ setters: 'ArraySetter'
166
+ },
167
+ {
168
+ name: 'enable-indoorMap',
169
+ title: '是否展示室内地图',
170
+ defaultValue: false,
171
+ setters: 'BooleanSetter'
172
+ }
173
+ ],
174
+ events: [
175
+ 'markertap',
176
+ 'labeltap',
177
+ 'callouttap',
178
+ 'controltap',
179
+ 'regionchange',
180
+ 'tap',
181
+ 'updated',
182
+ 'anchorpointtap',
183
+ 'poitap'
184
+ ],
185
+ snippet: {
186
+ props: {
187
+ style: {
188
+ width: '100%',
189
+ height: '300px'
190
+ },
191
+ latitude: '39.909',
192
+ longitude: '116.39742',
193
+ markers: [
194
+ {
195
+ latitude: 39.909,
196
+ longitude: 116.39742
197
+ },
198
+ {
199
+ latitude: 39.9,
200
+ longitude: 116.39
201
+ }
202
+ ]
203
+ }
204
+ }
205
+ };
206
+
207
+ export default desc;
@@ -0,0 +1,59 @@
1
+ import type { MaterialDescription } from '@vtj/core';
2
+
3
+ const desc: MaterialDescription = {
4
+ name: 'MatchMedia',
5
+ label: '适配大屏小屏',
6
+ categoryId: 'container',
7
+ props: [
8
+ {
9
+ name: 'min-width',
10
+ title: '页面最小宽度( px 为单位)',
11
+ setters: 'NumberSetter'
12
+ },
13
+ {
14
+ name: 'max-width',
15
+ title: '页面最大宽度( px 为单位)',
16
+ setters: 'NumberSetter'
17
+ },
18
+ {
19
+ name: 'width',
20
+ title: '页面宽度( px 为单位)',
21
+ setters: 'NumberSetter'
22
+ },
23
+ {
24
+ name: 'min-height',
25
+ title: '页面最小高度( px 为单位)',
26
+ setters: 'NumberSetter'
27
+ },
28
+ {
29
+ name: 'max-height',
30
+ title: '页面最大高度( px 为单位)',
31
+ setters: 'NumberSetter'
32
+ },
33
+ {
34
+ name: 'height',
35
+ title: '页面高度( px 为单位)',
36
+ setters: 'NumberSetter'
37
+ },
38
+ {
39
+ name: 'orientation',
40
+ title: '屏幕方向',
41
+ setters: 'SelectSetter',
42
+ options: ['landscape', 'portrait']
43
+ }
44
+ ],
45
+ snippet: {
46
+ props: {
47
+ 'min-width': '375',
48
+ 'max-width': '800'
49
+ },
50
+ children: [
51
+ {
52
+ name: 'View',
53
+ children: '当页面最小宽度 375px, 页面宽度最大 800px 时显示'
54
+ }
55
+ ]
56
+ }
57
+ };
58
+
59
+ export default desc;
@@ -0,0 +1,31 @@
1
+ import type { MaterialDescription } from '@vtj/core';
2
+
3
+ const desc: MaterialDescription = {
4
+ name: 'MovableArea',
5
+ label: '可拖动区域',
6
+ categoryId: 'container',
7
+ props: [
8
+ {
9
+ name: 'scale-area',
10
+ title:
11
+ '当里面的 movable-view 设置为支持双指缩放时,设置此值可将缩放手势生效区域修改为整个 movable-area',
12
+ defaultValue: false,
13
+ setters: 'BooleanSetter'
14
+ },
15
+ {
16
+ name: 'width',
17
+ title: '宽度 *',
18
+ defaultValue: '10px',
19
+ setters: 'StringSetter'
20
+ },
21
+ {
22
+ name: 'height',
23
+ title: '高度 *',
24
+ defaultValue: '10px',
25
+ setters: 'StringSetter'
26
+ }
27
+ ],
28
+ snippet: {}
29
+ };
30
+
31
+ export default desc;