hy-app 0.5.3 → 0.5.5
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.
- package/components/hy-action-sheet/typing.d.ts +1 -63
- package/components/hy-address-picker/hy-address-picker.vue +7 -6
- package/components/hy-address-picker/typing.d.ts +0 -84
- package/components/hy-avatar/hy-avatar.vue +4 -3
- package/components/hy-avatar/typing.d.ts +0 -66
- package/components/hy-back-top/typing.d.ts +0 -47
- package/components/hy-badge/hy-badge.vue +3 -3
- package/components/hy-badge/index.scss +0 -1
- package/components/hy-badge/props.ts +6 -1
- package/components/hy-badge/typing.d.ts +0 -62
- package/components/hy-button/typing.d.ts +28 -162
- package/components/hy-calendar/hy-calendar.vue +2 -2
- package/components/hy-calendar/typing.d.ts +0 -128
- package/components/hy-card/hy-card.vue +12 -12
- package/components/hy-card/index.scss +17 -5
- package/components/hy-card/props.ts +1 -2
- package/components/hy-card/typing.d.ts +1 -114
- package/components/hy-cell/props.ts +1 -1
- package/components/hy-cell/typing.d.ts +0 -55
- package/components/hy-check-button/typing.d.ts +0 -43
- package/components/hy-checkbox/typing.d.ts +1 -73
- package/components/hy-checkbox-group/typing.d.ts +0 -65
- package/components/hy-code-input/typing.d.ts +0 -70
- package/components/hy-count-down/typing.d.ts +1 -20
- package/components/hy-count-to/typing.d.ts +0 -47
- package/components/hy-coupon/index.scss +7 -2
- package/components/hy-coupon/props.ts +7 -4
- package/components/hy-coupon/typing.d.ts +1 -134
- package/components/hy-datetime-picker/props.ts +1 -3
- package/components/hy-datetime-picker/typing.d.ts +0 -119
- package/components/hy-dropdown-item/typing.d.ts +12 -31
- package/components/hy-empty/typing.d.ts +1 -59
- package/components/hy-float-button/typing.d.ts +24 -113
- package/components/hy-folding-panel/props.ts +1 -1
- package/components/hy-folding-panel/typing.d.ts +0 -38
- package/components/hy-folding-panel-item/hy-folding-panel-item.vue +2 -3
- package/components/hy-folding-panel-item/typing.d.ts +14 -0
- package/components/hy-form/typing.d.ts +0 -27
- package/components/hy-form-item/hy-form-item.vue +7 -5
- package/components/hy-form-item/typing.d.ts +0 -19
- package/components/hy-grid/typing.d.ts +0 -43
- package/components/hy-icon/hy-icon.vue +3 -8
- package/components/hy-icon/typing.d.ts +0 -86
- package/components/hy-image/typing.d.ts +0 -80
- package/components/hy-input/typing.d.ts +0 -149
- package/components/hy-list/props.ts +1 -1
- package/components/hy-list/typing.d.ts +0 -51
- package/components/hy-menu/typing.d.ts +0 -35
- package/components/hy-modal/typing.d.ts +9 -84
- package/components/hy-navbar/typing.d.ts +0 -81
- package/components/hy-notice-bar/typing.d.ts +2 -65
- package/components/hy-number-step/typing.d.ts +0 -110
- package/components/hy-overlay/typing.d.ts +2 -27
- package/components/hy-pagination/typing.d.ts +6 -49
- package/components/hy-picker/typing.d.ts +27 -124
- package/components/hy-popover/typing.d.ts +25 -66
- package/components/hy-popup/hy-popup.vue +0 -1
- package/components/hy-popup/typing.d.ts +8 -77
- package/components/hy-price/typing.d.ts +0 -41
- package/components/hy-qrcode/hy-qrcode.vue +67 -2
- package/components/hy-qrcode/index.scss +3 -4
- package/components/hy-qrcode/typing.d.ts +0 -66
- package/components/hy-radio/typing.d.ts +1 -86
- package/components/hy-rate/typing.d.ts +0 -62
- package/components/hy-read-more/typing.d.ts +4 -49
- package/components/hy-scroll-list/typing.d.ts +4 -33
- package/components/hy-search/typing.d.ts +19 -120
- package/components/hy-signature/hy-signature.vue +25 -22
- package/components/hy-signature/index.scss +0 -4
- package/components/hy-signature/typing.d.ts +0 -101
- package/components/hy-slider/typing.d.ts +8 -77
- package/components/hy-steps/typing.d.ts +16 -60
- package/components/hy-submit-bar/typing.d.ts +0 -72
- package/components/hy-subsection/typing.d.ts +0 -49
- package/components/hy-swipe-action/index.ts +13 -22
- package/components/hy-swipe-action/typing.d.ts +1 -38
- package/components/hy-swiper/typing.d.ts +0 -101
- package/components/hy-switch/typing.d.ts +0 -62
- package/components/hy-tabbar/hy-tabbar.vue +137 -0
- package/components/{hy-tabBar → hy-tabbar}/index.scss +31 -31
- package/components/hy-tabbar/props.ts +59 -0
- package/components/hy-tabbar/typing.d.ts +21 -0
- package/components/hy-tabbar-group/hy-tabbar-group.vue +87 -0
- package/components/hy-tabbar-group/index.scss +57 -0
- package/components/hy-tabbar-group/props.ts +78 -0
- package/components/hy-tabbar-group/typing.ts +16 -0
- package/components/hy-tabbar-item/hy-tabbar-item.vue +103 -0
- package/components/hy-tabbar-item/index.scss +43 -0
- package/components/hy-tabbar-item/props.ts +24 -0
- package/components/hy-tabbar-item/typing.ts +10 -0
- package/components/hy-tabs/typing.d.ts +25 -92
- package/components/hy-tag/props.ts +8 -2
- package/components/hy-tag/typing.d.ts +9 -78
- package/components/hy-text/props.ts +8 -2
- package/components/hy-text/typing.d.ts +3 -100
- package/components/hy-textarea/props.ts +4 -1
- package/components/hy-textarea/typing.d.ts +0 -27
- package/components/hy-tooltip/props.ts +1 -4
- package/components/hy-tooltip/typing.d.ts +2 -55
- package/components/hy-transition/typing.d.ts +14 -43
- package/components/hy-upload/props.ts +1 -1
- package/components/hy-upload/typing.d.ts +56 -164
- package/components/hy-warn/typing.d.ts +4 -45
- package/components/index.ts +177 -177
- package/global.d.ts +87 -85
- package/package.json +2 -2
- package/web-types.json +1 -1
- package/components/hy-config-provider/typing.d.ts +0 -24
- package/components/hy-divider/typing.d.ts +0 -64
- package/components/hy-dropdown/typing.d.ts +0 -48
- package/components/hy-form-group/typing.d.ts +0 -0
- package/components/hy-line/typing.d.ts +0 -32
- package/components/hy-line-progress/typing.d.ts +0 -32
- package/components/hy-loading/typing.d.ts +0 -52
- package/components/hy-notify/typing.d.ts +0 -48
- package/components/hy-status-bar/typing.d.ts +0 -12
- package/components/hy-tabBar/hy-tabBar.vue +0 -109
- package/components/hy-tabBar/props.ts +0 -13
- package/components/hy-tabBar/typing.d.ts +0 -54
- package/components/hy-waterfall/typing.d.ts +0 -14
- package/components/hy-watermark/typing.d.ts +0 -76
|
@@ -1,124 +1,35 @@
|
|
|
1
|
-
import type { CSSProperties } from 'vue'
|
|
2
|
-
|
|
3
1
|
interface MenusVo {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
2
|
+
/**
|
|
3
|
+
* @description 显示菜单文本
|
|
4
|
+
* */
|
|
5
|
+
label?: string
|
|
6
|
+
/**
|
|
7
|
+
* @description 跳转路径
|
|
8
|
+
* */
|
|
9
|
+
url?: string
|
|
12
10
|
}
|
|
13
11
|
|
|
14
12
|
export type MenusType = MenusVo | string
|
|
15
13
|
export type IGap = {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
left?: number
|
|
15
|
+
right?: number
|
|
16
|
+
top?: number
|
|
17
|
+
bottom?: number
|
|
20
18
|
}
|
|
21
19
|
|
|
22
20
|
export type FloatPositionVo =
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
export default interface HyFloatButtonProps {
|
|
33
|
-
/**
|
|
34
|
-
* @description 菜单栏集合
|
|
35
|
-
* */
|
|
36
|
-
menus?: MenusType[]
|
|
37
|
-
/**
|
|
38
|
-
* @description 打开方向,row-横向;column-纵向
|
|
39
|
-
* */
|
|
40
|
-
direction?: HyApp.DirectionType
|
|
41
|
-
/**
|
|
42
|
-
* @description 按钮显示的图标
|
|
43
|
-
* */
|
|
44
|
-
icon?: string
|
|
45
|
-
/**
|
|
46
|
-
* @description 按钮图标大小
|
|
47
|
-
* */
|
|
48
|
-
iconSize?: string | number
|
|
49
|
-
/**
|
|
50
|
-
* @description 按钮图标颜色
|
|
51
|
-
* */
|
|
52
|
-
iconColor?: string
|
|
53
|
-
/**
|
|
54
|
-
* @description 到边框最小距离
|
|
55
|
-
* */
|
|
56
|
-
gap?: IGap
|
|
57
|
-
/**
|
|
58
|
-
* @description 层级(默认:10086)
|
|
59
|
-
* */
|
|
60
|
-
zIndex?: number
|
|
61
|
-
/**
|
|
62
|
-
* @description 按钮背景颜色
|
|
63
|
-
* */
|
|
64
|
-
bgColor?: string
|
|
65
|
-
/**
|
|
66
|
-
* @description 按钮文字
|
|
67
|
-
* */
|
|
68
|
-
text?: string
|
|
69
|
-
/**
|
|
70
|
-
* @description 按钮文字大小
|
|
71
|
-
* */
|
|
72
|
-
fontSize?: string | number
|
|
73
|
-
/**
|
|
74
|
-
* @description 按钮文字的颜色
|
|
75
|
-
* */
|
|
76
|
-
textColor?: string
|
|
77
|
-
/**
|
|
78
|
-
* @description 按钮的尺寸
|
|
79
|
-
* */
|
|
80
|
-
size?: HyApp.SizeType | string | number
|
|
81
|
-
/**
|
|
82
|
-
* @description 按钮的形状
|
|
83
|
-
* */
|
|
84
|
-
shape?: HyApp.ShapeType
|
|
85
|
-
/**
|
|
86
|
-
* @description 按钮的透明度
|
|
87
|
-
* */
|
|
88
|
-
opacity?: number
|
|
89
|
-
/**
|
|
90
|
-
* @description 是否显示阴影(默认:true)
|
|
91
|
-
* */
|
|
92
|
-
shadow?: boolean
|
|
93
|
-
/**
|
|
94
|
-
* @description 是否显示漂浮的动画(默认:true)
|
|
95
|
-
* */
|
|
96
|
-
float?: boolean
|
|
97
|
-
/**
|
|
98
|
-
* @description 是否固定位置(默认:true)
|
|
99
|
-
* */
|
|
100
|
-
fixed?: boolean
|
|
101
|
-
/**
|
|
102
|
-
* @description 是否能拖动(默认:true)
|
|
103
|
-
* */
|
|
104
|
-
draggable?: boolean
|
|
105
|
-
/**
|
|
106
|
-
* @description 悬浮按钮位置 (默认:right-bottom)
|
|
107
|
-
* */
|
|
108
|
-
position?: FloatPositionVo
|
|
109
|
-
/**
|
|
110
|
-
* @description 禁用点击打开菜单栏
|
|
111
|
-
* */
|
|
112
|
-
expandable?: boolean
|
|
113
|
-
/**
|
|
114
|
-
* @description 定义需要用到的外部样式
|
|
115
|
-
* */
|
|
116
|
-
customStyle?: CSSProperties
|
|
117
|
-
}
|
|
21
|
+
| 'left-top'
|
|
22
|
+
| 'left-bottom'
|
|
23
|
+
| 'right-top'
|
|
24
|
+
| 'right-bottom'
|
|
25
|
+
| 'left-center'
|
|
26
|
+
| 'right-center'
|
|
27
|
+
| 'top-center'
|
|
28
|
+
| 'bottom-center'
|
|
118
29
|
|
|
119
30
|
export interface IFloatButtonEmits {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
31
|
+
/** 点击悬浮按钮触发 */
|
|
32
|
+
(e: 'click'): void
|
|
33
|
+
/** 点击菜单按钮触发 */
|
|
34
|
+
(e: 'clickItem', item: MenusType, index: number): void
|
|
124
35
|
}
|
|
@@ -1,41 +1,3 @@
|
|
|
1
|
-
import type { Ref, ToRefs } from 'vue'
|
|
2
|
-
|
|
3
|
-
// 折叠面板组组件的Props接口
|
|
4
|
-
export interface HyFoldingPanelGroupProps {
|
|
5
|
-
/**
|
|
6
|
-
* 当前激活的面板索引,支持v-model
|
|
7
|
-
*/
|
|
8
|
-
modelValue?: number
|
|
9
|
-
/**
|
|
10
|
-
* 是否手风琴模式,默认false
|
|
11
|
-
*/
|
|
12
|
-
accordion?: boolean
|
|
13
|
-
/**
|
|
14
|
-
* 是否禁用整个折叠面板组
|
|
15
|
-
*/
|
|
16
|
-
disabled?: boolean
|
|
17
|
-
/**
|
|
18
|
-
* 是否显示边框,默认true
|
|
19
|
-
*/
|
|
20
|
-
border?: boolean
|
|
21
|
-
/**
|
|
22
|
-
* 面板大小 large, medium, small
|
|
23
|
-
*/
|
|
24
|
-
size?: HyApp.SizeType
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
// 父组件提供给子组件的配置接口
|
|
28
|
-
export interface HyFoldingPanelGroupConfig extends ToRefs<HyFoldingPanelGroupProps> {
|
|
29
|
-
/**
|
|
30
|
-
* 当前激活的索引
|
|
31
|
-
*/
|
|
32
|
-
activeIndex: Ref<number | string>
|
|
33
|
-
/**
|
|
34
|
-
* 更新激活索引的方法
|
|
35
|
-
*/
|
|
36
|
-
updateActiveIndex: (index: number | string) => void
|
|
37
|
-
}
|
|
38
|
-
|
|
39
1
|
// 折叠面板组组件的事件接口
|
|
40
2
|
export interface IFoldingPanelGroupEmits {
|
|
41
3
|
/**
|
|
@@ -67,8 +67,7 @@ export default {
|
|
|
67
67
|
|
|
68
68
|
<script setup lang="ts">
|
|
69
69
|
import { ref, computed, inject, onMounted } from 'vue'
|
|
70
|
-
import type { IFoldingPanelItemEmits } from './typing'
|
|
71
|
-
import type { HyFoldingPanelGroupConfig } from '../hy-folding-panel/typing'
|
|
70
|
+
import type { IFoldingPanelConfig, IFoldingPanelItemEmits } from './typing'
|
|
72
71
|
import { addUnit, IconConfig } from '../../libs'
|
|
73
72
|
import foldingPanelItemProps from './props'
|
|
74
73
|
// 组件
|
|
@@ -86,7 +85,7 @@ const props = defineProps(foldingPanelItemProps)
|
|
|
86
85
|
const emit = defineEmits<IFoldingPanelItemEmits>()
|
|
87
86
|
|
|
88
87
|
// 尝试从父组件注入配置
|
|
89
|
-
const groupConfig = inject<
|
|
88
|
+
const groupConfig = inject<IFoldingPanelConfig>('hy-folding-panel')
|
|
90
89
|
|
|
91
90
|
// 内部展开状态
|
|
92
91
|
const expanded = ref(props.defaultOpen)
|
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
import foldingPanelProps from '../hy-folding-panel/props'
|
|
2
|
+
import type { ExtractPropTypes, ToRefs } from 'vue'
|
|
3
|
+
|
|
4
|
+
export interface IFoldingPanelConfig extends ToRefs<ExtractPropTypes<typeof foldingPanelProps>> {
|
|
5
|
+
/**
|
|
6
|
+
* 当前激活的索引
|
|
7
|
+
*/
|
|
8
|
+
activeIndex: Ref<number | string>
|
|
9
|
+
/**
|
|
10
|
+
* 更新激活索引的方法
|
|
11
|
+
*/
|
|
12
|
+
updateActiveIndex: (index: number | string) => void
|
|
13
|
+
}
|
|
14
|
+
|
|
1
15
|
// 折叠面板项组件的事件接口
|
|
2
16
|
export interface IFoldingPanelItemEmits {
|
|
3
17
|
/**
|
|
@@ -33,33 +33,6 @@ export interface FormItemRule {
|
|
|
33
33
|
[key: string]: FormRule | FormRule[]
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
export default interface HyFormSimpleProps {
|
|
37
|
-
/**
|
|
38
|
-
* 表单数据对象
|
|
39
|
-
*/
|
|
40
|
-
model?: Record<string, any>
|
|
41
|
-
/**
|
|
42
|
-
* 验证规则
|
|
43
|
-
*/
|
|
44
|
-
rules?: FormItemRule
|
|
45
|
-
/**
|
|
46
|
-
* 标签宽度
|
|
47
|
-
*/
|
|
48
|
-
labelWidth?: string | number
|
|
49
|
-
/**
|
|
50
|
-
* 标签位置
|
|
51
|
-
*/
|
|
52
|
-
labelPosition?: 'left' | 'top'
|
|
53
|
-
/**
|
|
54
|
-
* 标签对齐方式
|
|
55
|
-
*/
|
|
56
|
-
labelAlign?: 'left' | 'center' | 'right'
|
|
57
|
-
/**
|
|
58
|
-
* 表单列底部边框
|
|
59
|
-
* */
|
|
60
|
-
border: boolean
|
|
61
|
-
}
|
|
62
|
-
|
|
63
36
|
export interface IFormEmits {
|
|
64
37
|
/** 提交表单 */
|
|
65
38
|
(e: 'submit', data: FormRule): void
|
|
@@ -4,11 +4,13 @@
|
|
|
4
4
|
<text v-if="isRequired" class="hy-form-item__label--required">*</text>
|
|
5
5
|
{{ label }}
|
|
6
6
|
</view>
|
|
7
|
-
<view
|
|
8
|
-
<
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
<view class="hy-form-item__content">
|
|
8
|
+
<view :class="[formContext.border.value && 'hy-border__bottom']">
|
|
9
|
+
<slot></slot>
|
|
10
|
+
</view>
|
|
11
|
+
<view v-if="errorMessage" class="hy-form-item__error">
|
|
12
|
+
{{ errorMessage }}
|
|
13
|
+
</view>
|
|
12
14
|
</view>
|
|
13
15
|
</view>
|
|
14
16
|
</template>
|
|
@@ -22,25 +22,6 @@ export interface FormItemContext {
|
|
|
22
22
|
handleChange: (value: string | number) => void
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
export default interface HyFormItemProps {
|
|
26
|
-
/**
|
|
27
|
-
* 标签文本
|
|
28
|
-
*/
|
|
29
|
-
label?: string
|
|
30
|
-
/**
|
|
31
|
-
* 表单字段名
|
|
32
|
-
*/
|
|
33
|
-
prop?: string
|
|
34
|
-
/**
|
|
35
|
-
* 是否必填
|
|
36
|
-
*/
|
|
37
|
-
required?: boolean
|
|
38
|
-
/**
|
|
39
|
-
* 验证规则
|
|
40
|
-
*/
|
|
41
|
-
rules?: any
|
|
42
|
-
}
|
|
43
|
-
|
|
44
25
|
export interface IFormItemEmits {
|
|
45
26
|
/** 提交表单 */
|
|
46
27
|
(e: 'change', value: any): void
|
|
@@ -30,49 +30,6 @@ export interface CustomKeysVo {
|
|
|
30
30
|
icon: string
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
export default interface HyGridProps {
|
|
34
|
-
/**
|
|
35
|
-
* @description 数据集
|
|
36
|
-
* */
|
|
37
|
-
list: GridItemVo[]
|
|
38
|
-
/**
|
|
39
|
-
* @description 自定义键值
|
|
40
|
-
* */
|
|
41
|
-
customKeys?: CustomKeysVo
|
|
42
|
-
/**
|
|
43
|
-
* @description 宫格的列数(默认 3 )
|
|
44
|
-
* */
|
|
45
|
-
col?: number
|
|
46
|
-
/**
|
|
47
|
-
* @description 是否显示宫格的边框(默认 false )
|
|
48
|
-
* */
|
|
49
|
-
border?: boolean
|
|
50
|
-
/**
|
|
51
|
-
* @description 单个宫格高度(默认 60px )
|
|
52
|
-
* */
|
|
53
|
-
itemHeight?: number | string
|
|
54
|
-
/**
|
|
55
|
-
* @description 宫格对齐方式,表现为数量少的时候,靠左,居中,还是靠右 (默认 'left' )
|
|
56
|
-
* */
|
|
57
|
-
align?: 'center' | HyApp.LeftRightType
|
|
58
|
-
/**
|
|
59
|
-
* @description 间隔(默认 0px)
|
|
60
|
-
* */
|
|
61
|
-
gap?: number | string
|
|
62
|
-
/**
|
|
63
|
-
* @description 宫格的背景颜色 (默认 'transparent' )
|
|
64
|
-
* */
|
|
65
|
-
bgColor?: string
|
|
66
|
-
/**
|
|
67
|
-
* @description 图标属性api配置集合
|
|
68
|
-
* */
|
|
69
|
-
iconConfig?: Partial<HyIconProps>
|
|
70
|
-
/**
|
|
71
|
-
* @description 定义需要用到的外部样式
|
|
72
|
-
* */
|
|
73
|
-
customStyle?: CSSProperties
|
|
74
|
-
}
|
|
75
|
-
|
|
76
33
|
export interface IGridEmits {
|
|
77
34
|
/** 点击小菜单触发 */
|
|
78
35
|
(e: 'click', name: string | Record<string, any>): void
|
|
@@ -7,12 +7,7 @@
|
|
|
7
7
|
:mode="imgMode"
|
|
8
8
|
:style="[imgStyle, customStyle]"
|
|
9
9
|
></image>
|
|
10
|
-
<text
|
|
11
|
-
v-else
|
|
12
|
-
class="hy-icon__icon"
|
|
13
|
-
:class="uClasses"
|
|
14
|
-
:style="[iconStyle, customStyle]"
|
|
15
|
-
></text>
|
|
10
|
+
<text v-else :class="uClasses" :style="[iconStyle, customStyle]"></text>
|
|
16
11
|
<!-- 这里进行空字符串判断,如果仅仅是v-if="label",可能会出现传递0的时候,结果也无法显示 -->
|
|
17
12
|
<text
|
|
18
13
|
v-if="label"
|
|
@@ -58,9 +53,9 @@ const emit = defineEmits<IIconEmits>()
|
|
|
58
53
|
|
|
59
54
|
const uClasses = computed(() => {
|
|
60
55
|
let classes: string | string[] = [
|
|
56
|
+
'hy-icon__icon',
|
|
61
57
|
'iconfont',
|
|
62
|
-
`${props.customPrefix}-${props.name}
|
|
63
|
-
props.customPrefix
|
|
58
|
+
`${props.customPrefix}-${props.name}`
|
|
64
59
|
]
|
|
65
60
|
if (props.isRotate) classes.push('hy-rotate')
|
|
66
61
|
if (props.color)
|
|
@@ -1,89 +1,3 @@
|
|
|
1
|
-
import { CSSProperties } from 'vue'
|
|
2
|
-
|
|
3
|
-
export default interface HyIconProps {
|
|
4
|
-
/**
|
|
5
|
-
* @description 图标名称,见示例图标集
|
|
6
|
-
* */
|
|
7
|
-
name: string | HyIconConfig
|
|
8
|
-
/**
|
|
9
|
-
* @description 图标颜色
|
|
10
|
-
* */
|
|
11
|
-
color?: string
|
|
12
|
-
/**
|
|
13
|
-
* @description 图标字体大小,单位px (默认 '16px' )
|
|
14
|
-
* */
|
|
15
|
-
size?: string | number
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* @description 是否显示粗体 (默认 false )
|
|
19
|
-
* */
|
|
20
|
-
bold?: boolean
|
|
21
|
-
/**
|
|
22
|
-
* @description 点击图标的时候传递事件出去的index(用于区分点击了哪一个)
|
|
23
|
-
* */
|
|
24
|
-
index?: string | number
|
|
25
|
-
/**
|
|
26
|
-
* @description 自定义扩展前缀,方便用户扩展自己的图标库 (默认 'hy-icon' )
|
|
27
|
-
* */
|
|
28
|
-
customPrefix?: string
|
|
29
|
-
/**
|
|
30
|
-
* @description 图标右侧的label文字
|
|
31
|
-
* */
|
|
32
|
-
label?: string
|
|
33
|
-
/**
|
|
34
|
-
* @description label相对于图标的位置,只能right或bottom (默认 'right' )
|
|
35
|
-
* */
|
|
36
|
-
labelPos?: 'right' | 'bottom'
|
|
37
|
-
/**
|
|
38
|
-
* @description label字体大小,单位px (默认 '15px' )
|
|
39
|
-
* */
|
|
40
|
-
labelSize?: string | number
|
|
41
|
-
/**
|
|
42
|
-
* @description 图标右侧的label文字颜色
|
|
43
|
-
* */
|
|
44
|
-
labelColor?: string
|
|
45
|
-
/**
|
|
46
|
-
* @description label与图标的距离,单位px (默认 '3px' )
|
|
47
|
-
* */
|
|
48
|
-
space?: string | number
|
|
49
|
-
/**
|
|
50
|
-
* @description 图片的mode
|
|
51
|
-
* */
|
|
52
|
-
imgMode?: string
|
|
53
|
-
/**
|
|
54
|
-
* @description 显示图片小图标时的宽度
|
|
55
|
-
* */
|
|
56
|
-
width?: string | number
|
|
57
|
-
/**
|
|
58
|
-
* @description 显示图片小图标时的高度
|
|
59
|
-
* */
|
|
60
|
-
height?: string | number
|
|
61
|
-
/**
|
|
62
|
-
* @description 图标在垂直方向上的定位 用于解决某些情况下,让图标垂直居中的用途 (默认 0 )
|
|
63
|
-
* */
|
|
64
|
-
top?: number | string
|
|
65
|
-
/**
|
|
66
|
-
* @description 是否阻止事件传播 (默认 false )
|
|
67
|
-
* */
|
|
68
|
-
stop?: boolean
|
|
69
|
-
/**
|
|
70
|
-
* @description 是否旋转 (默认 false )
|
|
71
|
-
* */
|
|
72
|
-
isRotate?: boolean
|
|
73
|
-
/**
|
|
74
|
-
* @description 图标圆角
|
|
75
|
-
* */
|
|
76
|
-
round?: string | number
|
|
77
|
-
/**
|
|
78
|
-
* @description 自定义样式
|
|
79
|
-
* */
|
|
80
|
-
customStyle?: CSSProperties
|
|
81
|
-
/**
|
|
82
|
-
* @description 自定义类名
|
|
83
|
-
* */
|
|
84
|
-
customClass?: string
|
|
85
|
-
}
|
|
86
|
-
|
|
87
1
|
export interface IIconEmits {
|
|
88
2
|
/** 点击图标触发 */
|
|
89
3
|
(e: 'click', index: string, e: Event): void
|
|
@@ -1,85 +1,5 @@
|
|
|
1
|
-
import type { CSSProperties } from 'vue'
|
|
2
1
|
import type { ImageOnErrorEvent, ImageOnLoadEvent } from '@uni-helper/uni-types'
|
|
3
2
|
|
|
4
|
-
export default interface HyImageProps {
|
|
5
|
-
/**
|
|
6
|
-
* @description 图片地址
|
|
7
|
-
* */
|
|
8
|
-
src?: string
|
|
9
|
-
/**
|
|
10
|
-
* @description 裁剪模式,见官网说明 (默认 'aspectFill' )
|
|
11
|
-
* */
|
|
12
|
-
mode?: HyApp.ImageModeVo
|
|
13
|
-
/**
|
|
14
|
-
* @description 宽度,单位任意,如果为数值,则为px单位 (默认 '300' )
|
|
15
|
-
* */
|
|
16
|
-
width?: string | number
|
|
17
|
-
/**
|
|
18
|
-
* @description 高度,单位任意,如果为数值,则为px单位 (默认 '225' )
|
|
19
|
-
* */
|
|
20
|
-
height?: string | number
|
|
21
|
-
/**
|
|
22
|
-
* @description 图片形状,circle-圆形,square-方形 (默认 'square' )
|
|
23
|
-
* */
|
|
24
|
-
shape?: HyApp.ShapeType
|
|
25
|
-
/**
|
|
26
|
-
* @description 圆角值,单位任意,如果为数值,则为px单位 (默认 0 )
|
|
27
|
-
* */
|
|
28
|
-
radius?: number | string
|
|
29
|
-
/**
|
|
30
|
-
* @description 是否懒加载,仅微信小程序、App、百度小程序、字节跳动小程序有效 (默认 true )
|
|
31
|
-
* */
|
|
32
|
-
lazyLoad?: boolean
|
|
33
|
-
/**
|
|
34
|
-
* @description 是否开启长按图片显示识别小程序码菜单,仅微信小程序有效 (默认 true )
|
|
35
|
-
* */
|
|
36
|
-
showMenuByLongPress?: boolean
|
|
37
|
-
/**
|
|
38
|
-
* @description 加载中的图标,或者小图片 (默认 'photo' )
|
|
39
|
-
* */
|
|
40
|
-
loadingIcon?: string
|
|
41
|
-
/**
|
|
42
|
-
* @description 加载失败的图标,或者小图片 (默认 'error-circle' )
|
|
43
|
-
* */
|
|
44
|
-
errorIcon?: string
|
|
45
|
-
/**
|
|
46
|
-
* @description 是否显示加载中的图标或者自定义的slot (默认 true )
|
|
47
|
-
* */
|
|
48
|
-
showLoading?: boolean
|
|
49
|
-
/**
|
|
50
|
-
* @description 是否显示加载错误的图标或者自定义的slot (默认 true )
|
|
51
|
-
* */
|
|
52
|
-
showError?: boolean
|
|
53
|
-
/**
|
|
54
|
-
* @description 是否需要淡入效果 (默认 true )
|
|
55
|
-
* */
|
|
56
|
-
fade?: boolean
|
|
57
|
-
/**
|
|
58
|
-
* @description 只支持网络资源,只对微信小程序有效 (默认 false )
|
|
59
|
-
* */
|
|
60
|
-
webp?: boolean
|
|
61
|
-
/**
|
|
62
|
-
* @description 搭配fade参数的过渡时间,单位ms (默认 500 )
|
|
63
|
-
* */
|
|
64
|
-
duration?: number
|
|
65
|
-
/**
|
|
66
|
-
* @description 背景颜色,用于深色页面加载图片时,为了和背景色融合 (默认 '#f3f4f6' )
|
|
67
|
-
* */
|
|
68
|
-
bgColor?: string
|
|
69
|
-
/**
|
|
70
|
-
* @description 是否模糊图片 (默认 false )
|
|
71
|
-
* */
|
|
72
|
-
indistinct?: boolean
|
|
73
|
-
/**
|
|
74
|
-
* @description 是否预览图片 (默认 false )
|
|
75
|
-
* */
|
|
76
|
-
previewImage?: boolean
|
|
77
|
-
/**
|
|
78
|
-
* @description 定义需要用到的外部样式
|
|
79
|
-
* */
|
|
80
|
-
customStyle?: CSSProperties
|
|
81
|
-
}
|
|
82
|
-
|
|
83
3
|
export interface IImageEmits {
|
|
84
4
|
/** 点击触发 */
|
|
85
5
|
(e: 'click'): void
|