hy-app 0.4.13 → 0.5.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 (211) hide show
  1. package/components/hy-action-sheet/hy-action-sheet.vue +155 -238
  2. package/components/hy-action-sheet/props.ts +68 -15
  3. package/components/hy-action-sheet/typing.d.ts +115 -115
  4. package/components/hy-address-picker/hy-address-picker.vue +185 -289
  5. package/components/hy-address-picker/props.ts +97 -21
  6. package/components/hy-address-picker/typing.d.ts +90 -89
  7. package/components/hy-avatar/hy-avatar.vue +121 -204
  8. package/components/hy-avatar/props.ts +76 -18
  9. package/components/hy-avatar/typing.d.ts +63 -62
  10. package/components/hy-back-top/hy-back-top.vue +65 -120
  11. package/components/hy-back-top/props.ts +57 -16
  12. package/components/hy-back-top/typing.d.ts +43 -42
  13. package/components/hy-badge/hy-badge.vue +66 -138
  14. package/components/hy-badge/props.ts +73 -17
  15. package/components/hy-badge/typing.d.ts +59 -58
  16. package/components/hy-button/hy-button.vue +226 -375
  17. package/components/hy-button/props.ts +129 -158
  18. package/components/hy-calendar/header.vue +48 -64
  19. package/components/hy-calendar/hy-calendar.vue +274 -438
  20. package/components/hy-calendar/month.vue +508 -516
  21. package/components/hy-calendar/props.ts +157 -35
  22. package/components/hy-calendar/typing.d.ts +129 -128
  23. package/components/hy-card/hy-card.vue +118 -240
  24. package/components/hy-card/index.scss +1 -2
  25. package/components/hy-card/props.ts +122 -27
  26. package/components/hy-card/typing.d.ts +119 -118
  27. package/components/hy-cell/hy-cell.vue +176 -258
  28. package/components/hy-cell/props.ts +71 -17
  29. package/components/hy-cell/typing.d.ts +87 -86
  30. package/components/hy-check-button/hy-check-button.vue +69 -139
  31. package/components/hy-check-button/props.ts +72 -18
  32. package/components/hy-check-button/typing.d.ts +74 -73
  33. package/components/hy-checkbox/hy-checkbox.vue +170 -263
  34. package/components/hy-checkbox/props.ts +94 -24
  35. package/components/hy-checkbox/typing.d.ts +72 -72
  36. package/components/hy-checkbox-group/hy-checkbox-group.vue +25 -100
  37. package/components/hy-checkbox-group/props.ts +80 -0
  38. package/components/hy-checkbox-group/typing.d.ts +65 -65
  39. package/components/hy-checkbox-item/hy-checkbox-item.vue +140 -177
  40. package/components/hy-checkbox-item/props.ts +24 -0
  41. package/components/hy-checkbox-item/typing.d.ts +4 -3
  42. package/components/hy-code-input/hy-code-input.vue +179 -262
  43. package/components/hy-code-input/props.ts +84 -18
  44. package/components/hy-code-input/typing.d.ts +71 -71
  45. package/components/hy-config-provider/hy-config-provider.vue +28 -50
  46. package/components/hy-config-provider/props.ts +26 -11
  47. package/components/hy-config-provider/typing.d.ts +20 -20
  48. package/components/hy-count-down/hy-count-down.vue +103 -131
  49. package/components/hy-count-down/props.ts +30 -8
  50. package/components/hy-count-down/typing.d.ts +25 -25
  51. package/components/hy-count-to/hy-count-to.vue +148 -213
  52. package/components/hy-count-to/props.ts +60 -15
  53. package/components/hy-count-to/typing.d.ts +46 -46
  54. package/components/hy-coupon/README.md +133 -0
  55. package/components/hy-coupon/hy-coupon.vue +180 -0
  56. package/components/hy-coupon/index.scss +553 -0
  57. package/components/hy-coupon/props.ts +129 -0
  58. package/components/hy-coupon/typing.d.ts +146 -0
  59. package/components/hy-datetime-picker/hy-datetime-picker.vue +415 -580
  60. package/components/hy-datetime-picker/props.ts +142 -32
  61. package/components/hy-datetime-picker/typing.d.ts +132 -132
  62. package/components/hy-divider/hy-divider.vue +90 -169
  63. package/components/hy-divider/props.ts +78 -19
  64. package/components/hy-divider/typing.d.ts +60 -60
  65. package/components/hy-dropdown/hy-dropdown.vue +37 -71
  66. package/components/hy-dropdown/props.ts +38 -15
  67. package/components/hy-dropdown/typing.d.ts +44 -44
  68. package/components/hy-dropdown-item/hy-dropdown-item.vue +141 -173
  69. package/components/hy-dropdown-item/props.ts +19 -8
  70. package/components/hy-empty/hy-empty.vue +75 -129
  71. package/components/hy-empty/props.ts +57 -15
  72. package/components/hy-empty/typing.d.ts +84 -84
  73. package/components/hy-flex/hy-flex.vue +33 -88
  74. package/components/hy-flex/props.ts +58 -0
  75. package/components/hy-flex/typing.d.ts +14 -16
  76. package/components/hy-float-button/hy-float-button.vue +289 -406
  77. package/components/hy-float-button/props.ts +109 -25
  78. package/components/hy-folding-panel/hy-folding-panel.vue +86 -374
  79. package/components/hy-folding-panel/props.ts +40 -15
  80. package/components/hy-folding-panel/typing.d.ts +52 -63
  81. package/components/hy-folding-panel-item/hy-folding-panel-item.vue +186 -228
  82. package/components/hy-folding-panel-item/index.scss +87 -0
  83. package/components/hy-folding-panel-item/props.ts +81 -0
  84. package/components/hy-folding-panel-item/typing.d.ts +23 -0
  85. package/components/hy-form/hy-form.vue +172 -212
  86. package/components/hy-form/props.ts +37 -0
  87. package/components/hy-form/typing.d.ts +68 -61
  88. package/components/hy-form-group/typing.d.ts +74 -74
  89. package/components/hy-form-item/hy-form-item.vue +100 -129
  90. package/components/hy-form-item/props.ts +25 -0
  91. package/components/hy-form-item/typing.d.ts +40 -37
  92. package/components/hy-grid/hy-grid.vue +76 -132
  93. package/components/hy-grid/props.ts +58 -16
  94. package/components/hy-grid/typing.d.ts +66 -66
  95. package/components/hy-icon/hy-icon.vue +84 -161
  96. package/components/hy-icon/props.ts +76 -22
  97. package/components/hy-icon/typing.d.ts +83 -82
  98. package/components/hy-image/hy-image.vue +142 -272
  99. package/components/hy-image/props.ts +105 -23
  100. package/components/hy-image/typing.d.ts +84 -87
  101. package/components/hy-input/hy-input.vue +230 -421
  102. package/components/hy-input/props.ts +183 -35
  103. package/components/hy-input/typing.d.ts +169 -169
  104. package/components/hy-line/hy-line.vue +34 -72
  105. package/components/hy-line/props.ts +41 -10
  106. package/components/hy-line/typing.d.ts +29 -29
  107. package/components/hy-line-progress/hy-line-progress.vue +66 -101
  108. package/components/hy-line-progress/props.ts +31 -10
  109. package/components/hy-line-progress/typing.d.ts +29 -29
  110. package/components/hy-list/hy-list.vue +151 -220
  111. package/components/hy-list/props.ts +67 -16
  112. package/components/hy-list/typing.d.ts +52 -52
  113. package/components/hy-loading/hy-loading.vue +63 -119
  114. package/components/hy-loading/props.ts +63 -15
  115. package/components/hy-loading/typing.d.ts +49 -49
  116. package/components/hy-menu/hy-menu.vue +124 -166
  117. package/components/hy-menu/props.ts +42 -10
  118. package/components/hy-menu/typing.d.ts +60 -60
  119. package/components/hy-modal/hy-modal.vue +127 -218
  120. package/components/hy-modal/props.ts +89 -24
  121. package/components/hy-navbar/hy-navbar.vue +104 -177
  122. package/components/hy-navbar/props.ts +76 -22
  123. package/components/hy-navbar/typing.d.ts +81 -81
  124. package/components/hy-notice-bar/hy-notice-bar.vue +67 -144
  125. package/components/hy-notice-bar/props.ts +80 -19
  126. package/components/hy-notice-bar/typing.d.ts +62 -62
  127. package/components/hy-notify/hy-notify.vue +128 -177
  128. package/components/hy-notify/props.ts +49 -12
  129. package/components/hy-notify/typing.d.ts +45 -41
  130. package/components/hy-number-step/hy-number-step.vue +281 -394
  131. package/components/hy-number-step/props.ts +110 -27
  132. package/components/hy-number-step/typing.d.ts +120 -120
  133. package/components/hy-overlay/hy-overlay.vue +39 -66
  134. package/components/hy-overlay/props.ts +31 -8
  135. package/components/hy-pagination/hy-pagination.vue +100 -155
  136. package/components/hy-pagination/props.ts +53 -13
  137. package/components/hy-picker/hy-picker.vue +309 -430
  138. package/components/hy-picker/index.scss +8 -12
  139. package/components/hy-picker/props.ts +110 -26
  140. package/components/hy-popover/hy-popover.vue +190 -252
  141. package/components/hy-popover/props.ts +48 -10
  142. package/components/hy-popup/hy-popup.vue +162 -248
  143. package/components/hy-popup/props.ts +82 -18
  144. package/components/hy-price/hy-price.vue +45 -104
  145. package/components/hy-price/props.ts +52 -12
  146. package/components/hy-price/typing.d.ts +41 -36
  147. package/components/hy-qrcode/hy-qrcode.vue +115 -185
  148. package/components/hy-qrcode/props.ts +68 -18
  149. package/components/hy-qrcode/typing.d.ts +67 -66
  150. package/components/hy-radio/hy-radio.vue +161 -259
  151. package/components/hy-radio/props.ts +95 -25
  152. package/components/hy-radio/typing.d.ts +85 -84
  153. package/components/hy-rate/hy-rate.vue +185 -270
  154. package/components/hy-rate/props.ts +76 -18
  155. package/components/hy-rate/typing.d.ts +61 -60
  156. package/components/hy-read-more/hy-read-more.vue +93 -136
  157. package/components/hy-read-more/props.ts +43 -13
  158. package/components/hy-scroll-list/hy-scroll-list.vue +81 -102
  159. package/components/hy-scroll-list/props.ts +22 -11
  160. package/components/hy-search/hy-search.vue +155 -284
  161. package/components/hy-search/props.ts +130 -25
  162. package/components/hy-signature/hy-signature.vue +491 -635
  163. package/components/hy-signature/props.ts +115 -26
  164. package/components/hy-signature/typing.d.ts +138 -138
  165. package/components/hy-slider/hy-slider.vue +388 -477
  166. package/components/hy-slider/props.ts +75 -19
  167. package/components/hy-steps/hy-steps.vue +212 -279
  168. package/components/hy-steps/props.ts +47 -13
  169. package/components/hy-submit-bar/hy-submit-bar.vue +137 -222
  170. package/components/hy-submit-bar/props.ts +89 -20
  171. package/components/hy-submit-bar/typing.d.ts +86 -85
  172. package/components/hy-subsection/hy-subsection.vue +132 -185
  173. package/components/hy-subsection/props.ts +50 -17
  174. package/components/hy-subsection/typing.d.ts +52 -52
  175. package/components/hy-swipe-action/hy-swipe-action.vue +228 -283
  176. package/components/hy-swipe-action/props.ts +43 -18
  177. package/components/hy-swipe-action/typing.d.ts +46 -46
  178. package/components/hy-swiper/hy-swiper.vue +159 -286
  179. package/components/hy-swiper/props.ts +126 -28
  180. package/components/hy-swiper/typing.d.ts +115 -115
  181. package/components/hy-switch/hy-switch.vue +112 -176
  182. package/components/hy-switch/props.ts +60 -15
  183. package/components/hy-switch/typing.d.ts +63 -63
  184. package/components/hy-tabBar/hy-tabBar.vue +64 -60
  185. package/components/hy-tabs/hy-tabs.vue +277 -380
  186. package/components/hy-tabs/props.ts +75 -18
  187. package/components/hy-tag/hy-tag.vue +111 -204
  188. package/components/hy-tag/props.ts +81 -19
  189. package/components/hy-text/hy-text.vue +200 -322
  190. package/components/hy-text/props.ts +107 -28
  191. package/components/hy-textarea/hy-textarea.vue +147 -256
  192. package/components/hy-textarea/props.ts +112 -25
  193. package/components/hy-textarea/typing.d.ts +42 -42
  194. package/components/hy-toast/hy-toast.vue +135 -143
  195. package/components/hy-tooltip/hy-tooltip.vue +220 -306
  196. package/components/hy-tooltip/props.ts +79 -15
  197. package/components/hy-transition/hy-transition.vue +111 -138
  198. package/components/hy-transition/props.ts +30 -8
  199. package/components/hy-upload/hy-upload.vue +320 -469
  200. package/components/hy-upload/props.ts +130 -27
  201. package/components/hy-warn/hy-warn.vue +80 -129
  202. package/components/hy-warn/props.ts +47 -12
  203. package/components/hy-waterfall/hy-waterfall.vue +139 -163
  204. package/components/hy-waterfall/props.ts +19 -7
  205. package/components/hy-watermark/hy-watermark.vue +762 -870
  206. package/components/hy-watermark/props.ts +103 -22
  207. package/global.d.ts +2 -0
  208. package/libs/css/theme.scss +3 -3
  209. package/package.json +2 -2
  210. package/web-types.json +1 -1
  211. package/components/hy-folding-panel/index.scss +0 -9
@@ -1,214 +1,141 @@
1
1
  <template>
2
- <view :class="['hy-navbar', customClass]" :style="customStyle">
3
- <view
4
- class="hy-navbar__placeholder"
5
- v-if="fixed && placeholder"
6
- :style="{
7
- height: addUnit(getPx(height) + statusBarHeight),
8
- }"
9
- ></view>
10
- <view :class="[fixed && 'hy-navbar__fixed']">
11
- <HyStatusBar v-if="safeAreaInsetTop" :bgColor="bgColor"></HyStatusBar>
12
- <view
13
- :class="[border && 'hy-border__bottom', 'hy-navbar__content']"
14
- :style="{
15
- height: addUnit(height),
16
- backgroundColor: bgColor,
17
- }"
18
- >
19
- <!-- 左边 -->
20
- <slot v-if="$slots.left" name="left"></slot>
2
+ <view :class="['hy-navbar', customClass]" :style="customStyle">
21
3
  <view
22
- v-else
23
- class="hy-navbar__content__left"
24
- hover-class="hy-navbar__content__left--hover"
25
- hover-start-time="150"
26
- @tap="leftClick"
27
- >
28
- <HyIcon
29
- v-if="leftIcon"
30
- :name="leftIcon"
31
- :size="leftIconSize"
32
- :color="leftIconColor"
33
- ></HyIcon>
34
- <text
35
- v-if="leftText"
4
+ class="hy-navbar__placeholder"
5
+ v-if="fixed && placeholder"
36
6
  :style="{
37
- color: leftIconColor,
7
+ height: addUnit(getPx(height) + statusBarHeight)
38
8
  }"
39
- class="hy-navbar__content__left--text"
40
- >
41
- {{ leftText }}
42
- </text>
43
- </view>
44
- <!-- 左边 -->
9
+ ></view>
10
+ <view :class="[fixed && 'hy-navbar__fixed']">
11
+ <hy-status-bar v-if="safeAreaInsetTop" :bgColor="bgColor"></hy-status-bar>
12
+ <view
13
+ :class="[border && 'hy-border__bottom', 'hy-navbar__content']"
14
+ :style="{
15
+ height: addUnit(height),
16
+ backgroundColor: bgColor
17
+ }"
18
+ >
19
+ <!-- 左边 -->
20
+ <slot v-if="$slots.left" name="left"></slot>
21
+ <view
22
+ v-else
23
+ class="hy-navbar__content__left"
24
+ hover-class="hy-navbar__content__left--hover"
25
+ hover-start-time="150"
26
+ @tap="leftClick"
27
+ >
28
+ <hy-icon
29
+ v-if="leftIcon"
30
+ :name="leftIcon"
31
+ :size="leftIconSize"
32
+ :color="leftIconColor"
33
+ ></hy-icon>
34
+ <text
35
+ v-if="leftText"
36
+ :style="{
37
+ color: leftIconColor
38
+ }"
39
+ class="hy-navbar__content__left--text"
40
+ >
41
+ {{ leftText }}
42
+ </text>
43
+ </view>
44
+ <!-- 左边 -->
45
45
 
46
- <!-- 中间 -->
47
- <slot v-if="$slots.center" name="center"></slot>
48
- <view v-else class="hy-navbar__content__center">
49
- <text
50
- class="hy-navbar__content__center--title"
51
- :style="[
52
- {
53
- width: addUnit(titleWidth),
54
- color: titleColor,
55
- },
56
- titleStyle,
57
- ]"
58
- >
59
- {{ title }}
60
- </text>
61
- <text
62
- class="hy-navbar__content__center--sub"
63
- :style="[
64
- {
65
- width: addUnit(titleWidth),
66
- color: titleColor,
67
- },
68
- titleStyle,
69
- ]"
70
- >
71
- {{ sub }}
72
- </text>
73
- </view>
74
- <!-- 中间 -->
46
+ <!-- 中间 -->
47
+ <slot v-if="$slots.center" name="center"></slot>
48
+ <view v-else class="hy-navbar__content__center">
49
+ <text
50
+ class="hy-navbar__content__center--title"
51
+ :style="[
52
+ {
53
+ width: addUnit(titleWidth),
54
+ color: titleColor
55
+ },
56
+ titleStyle
57
+ ]"
58
+ >
59
+ {{ title }}
60
+ </text>
61
+ <text
62
+ class="hy-navbar__content__center--sub"
63
+ :style="[
64
+ {
65
+ width: addUnit(titleWidth),
66
+ color: titleColor
67
+ },
68
+ titleStyle
69
+ ]"
70
+ >
71
+ {{ sub }}
72
+ </text>
73
+ </view>
74
+ <!-- 中间 -->
75
75
 
76
- <!-- 右边 -->
77
- <slot v-if="$slots.right" name="right"></slot>
78
- <view class="hy-navbar__content__right" v-else @tap="rightClick">
79
- <HyIcon v-if="rightIcon" :name="rightIcon" size="20"></HyIcon>
80
- <text v-if="rightText" class="hy-navbar__content__right--text">{{
81
- rightText
82
- }}</text>
76
+ <!-- 右边 -->
77
+ <slot v-if="$slots.right" name="right"></slot>
78
+ <view class="hy-navbar__content__right" v-else @tap="rightClick">
79
+ <hy-icon v-if="rightIcon" :name="rightIcon" size="20"></hy-icon>
80
+ <text v-if="rightText" class="hy-navbar__content__right--text">{{
81
+ rightText
82
+ }}</text>
83
+ </view>
84
+ <!-- 右边 -->
85
+ </view>
83
86
  </view>
84
- <!-- 右边 -->
85
- </view>
86
87
  </view>
87
- </view>
88
88
  </template>
89
89
 
90
90
  <script lang="ts">
91
91
  export default {
92
- name: "hy-navbar",
93
- options: {
94
- addGlobalClass: true,
95
- virtualHost: true,
96
- styleIsolation: "shared",
97
- },
98
- };
92
+ name: 'hy-navbar',
93
+ options: {
94
+ addGlobalClass: true,
95
+ virtualHost: true,
96
+ styleIsolation: 'shared'
97
+ }
98
+ }
99
99
  </script>
100
100
 
101
101
  <script setup lang="ts">
102
- import type { CSSProperties, PropType } from "vue";
103
- import type { INavbarEmits } from "./typing";
104
- import { addUnit, getPx, getWindowInfo, IconConfig } from "../../libs";
102
+ import type { INavbarEmits } from './typing'
103
+ import { addUnit, getPx, getWindowInfo } from '../../libs'
104
+ import navbarProps from './props'
105
105
  // 组件
106
- import HyIcon from "../hy-icon/hy-icon.vue";
107
- import HyStatusBar from "../hy-status-bar/hy-status-bar.vue";
106
+ import HyIcon from '../hy-icon/hy-icon.vue'
107
+ import HyStatusBar from '../hy-status-bar/hy-status-bar.vue'
108
108
 
109
109
  /**
110
110
  * 一般用于在特殊情况下,需要自定义导航栏的时候用到,一般建议使用uni-app带的导航栏。
111
111
  * @displayName hy-navbar
112
112
  */
113
- defineOptions({});
113
+ defineOptions({})
114
114
 
115
- // const props = withDefaults(defineProps<IProps>(), defaultProps)
116
- const props = defineProps({
117
- /** 是否开启顶部安全区适配 */
118
- safeAreaInsetTop: {
119
- type: Boolean,
120
- default: true,
121
- },
122
- /** 固定在顶部时,是否生成一个等高元素,以防止塌陷 */
123
- placeholder: {
124
- type: Boolean,
125
- default: false,
126
- },
127
- /** 导航栏是否固定在顶部 */
128
- fixed: {
129
- type: Boolean,
130
- default: true,
131
- },
132
- /** 导航栏底部是否显示下边框 */
133
- border: {
134
- type: Boolean,
135
- default: false,
136
- },
137
- /** 左边返回图标的名称,只能为uview-pls自带的图标 */
138
- leftIcon: {
139
- type: String,
140
- default: IconConfig.LEFT,
141
- },
142
- /** 左边的提示文字 */
143
- leftText: String,
144
- /** 右边的提示文字 */
145
- rightText: String,
146
- /** 右边返回图标的名称,只能为uview-plus自带的图标 */
147
- rightIcon: String,
148
- /** 导航栏标题,如设置为空字符,将会隐藏标题占位区域 */
149
- title: String,
150
- /** 导航栏副标题 */
151
- sub: String,
152
- /** 文字颜色 */
153
- titleColor: String,
154
- /** 导航栏背景设置 */
155
- bgColor: String,
156
- /** 导航栏标题的最大宽度,内容超出会以省略号隐藏 */
157
- titleWidth: {
158
- type: [String, Number],
159
- default: "400rpx",
160
- },
161
- /** 导航栏高度(不包括状态栏高度在内,内部自动加上) */
162
- height: {
163
- type: [String, Number],
164
- default: "44px",
165
- },
166
- /** 左侧返回图标的大小 */
167
- leftIconSize: {
168
- type: [String, Number],
169
- default: 20,
170
- },
171
- /** 左侧返回图标的颜色 */
172
- leftIconColor: String,
173
- /** 点击左侧区域(返回图标),是否自动返回上一页(默认 false ) */
174
- autoBack: {
175
- type: Boolean,
176
- default: false,
177
- },
178
- /** 标题的样式,对象或字符串 */
179
- titleStyle: {
180
- type: Object as PropType<CSSProperties>,
181
- },
182
- /** 定义需要用到的外部样式 */
183
- customStyle: {
184
- type: Object as PropType<CSSProperties>,
185
- },
186
- /** 自定义外部类名 */
187
- customClass: String,
188
- });
189
- const emit = defineEmits<INavbarEmits>();
115
+ const props = defineProps(navbarProps)
116
+ const emit = defineEmits<INavbarEmits>()
190
117
 
191
118
  // 获取状态栏高度
192
- const { statusBarHeight } = getWindowInfo();
119
+ const { statusBarHeight } = getWindowInfo()
193
120
 
194
121
  /**
195
122
  * @description 点击左侧区域
196
123
  * */
197
124
  const leftClick = () => {
198
- // 如果配置了autoBack,自动返回上一页
199
- emit("leftClick");
200
- if (props.autoBack) {
201
- uni.navigateBack();
202
- }
203
- };
125
+ // 如果配置了autoBack,自动返回上一页
126
+ emit('leftClick')
127
+ if (props.autoBack) {
128
+ uni.navigateBack()
129
+ }
130
+ }
204
131
  /**
205
132
  * @description 点击右侧区域
206
133
  * */
207
134
  const rightClick = () => {
208
- emit("rightClick");
209
- };
135
+ emit('rightClick')
136
+ }
210
137
  </script>
211
138
 
212
139
  <style lang="scss" scoped>
213
- @import "./index.scss";
140
+ @import './index.scss';
214
141
  </style>
@@ -1,24 +1,78 @@
1
- import type IProps from "./typing";
2
- import { IconConfig } from "../../libs/config";
1
+ import { IconConfig } from '../../libs/config'
2
+ import type { CSSProperties, PropType } from 'vue'
3
3
 
4
- const defaultProps: IProps = {
5
- safeAreaInsetTop: true,
6
- placeholder: false,
7
- fixed: true,
8
- border: false,
9
- leftIcon: IconConfig.LEFT,
10
- leftText: "",
11
- rightText: "",
12
- rightIcon: "",
13
- title: "",
14
- sub: "",
15
- titleColor: "",
16
- bgColor: "",
17
- titleWidth: "400rpx",
18
- height: "44px",
19
- leftIconSize: 20,
20
- leftIconColor: "",
21
- autoBack: false,
22
- };
4
+ const navbarProps = {
5
+ /** 是否开启顶部安全区适配 */
6
+ safeAreaInsetTop: {
7
+ type: Boolean,
8
+ default: true
9
+ },
10
+ /** 固定在顶部时,是否生成一个等高元素,以防止塌陷 */
11
+ placeholder: {
12
+ type: Boolean,
13
+ default: false
14
+ },
15
+ /** 导航栏是否固定在顶部 */
16
+ fixed: {
17
+ type: Boolean,
18
+ default: true
19
+ },
20
+ /** 导航栏底部是否显示下边框 */
21
+ border: {
22
+ type: Boolean,
23
+ default: false
24
+ },
25
+ /** 左边返回图标的名称,只能组件自带的图标 */
26
+ leftIcon: {
27
+ type: String,
28
+ default: IconConfig.LEFT
29
+ },
30
+ /** 左边的提示文字 */
31
+ leftText: String,
32
+ /** 右边的提示文字 */
33
+ rightText: String,
34
+ /** 右边返回图标的名称,只能组件自带的图标 */
35
+ rightIcon: String,
36
+ /** 导航栏标题,如设置为空字符,将会隐藏标题占位区域 */
37
+ title: String,
38
+ /** 导航栏副标题 */
39
+ sub: String,
40
+ /** 文字颜色 */
41
+ titleColor: String,
42
+ /** 导航栏背景设置 */
43
+ bgColor: String,
44
+ /** 导航栏标题的最大宽度,内容超出会以省略号隐藏 */
45
+ titleWidth: {
46
+ type: [String, Number],
47
+ default: '400rpx'
48
+ },
49
+ /** 导航栏高度(不包括状态栏高度在内,内部自动加上) */
50
+ height: {
51
+ type: [String, Number],
52
+ default: '44px'
53
+ },
54
+ /** 左侧返回图标的大小 */
55
+ leftIconSize: {
56
+ type: [String, Number],
57
+ default: 20
58
+ },
59
+ /** 左侧返回图标的颜色 */
60
+ leftIconColor: String,
61
+ /** 点击左侧区域(返回图标),是否自动返回上一页(默认 false ) */
62
+ autoBack: {
63
+ type: Boolean,
64
+ default: false
65
+ },
66
+ /** 标题的样式,对象或字符串 */
67
+ titleStyle: {
68
+ type: Object as PropType<CSSProperties>
69
+ },
70
+ /** 定义需要用到的外部样式 */
71
+ customStyle: {
72
+ type: Object as PropType<CSSProperties>
73
+ },
74
+ /** 自定义外部类名 */
75
+ customClass: String
76
+ }
23
77
 
24
- export default defaultProps;
78
+ export default navbarProps
@@ -1,87 +1,87 @@
1
- import type { CSSProperties } from "vue";
1
+ import type { CSSProperties } from 'vue'
2
2
 
3
3
  export default interface HyNavbarProps {
4
- /**
5
- * @description 是否开启顶部安全区适配 (默认 true )
6
- * */
7
- safeAreaInsetTop?: boolean;
8
- /**
9
- * @description 固定在顶部时,是否生成一个等高元素,以防止塌陷 (默认 false )
10
- * */
11
- placeholder?: boolean;
12
- /**
13
- * @description 导航栏是否固定在顶部 (默认 true )
14
- * */
15
- fixed?: boolean;
16
- /**
17
- * @description 导航栏底部是否显示下边框 (默认 false )
18
- * */
19
- border?: boolean;
20
- /**
21
- * @description 左边返回图标的名称,只能为uview-pls自带的图标 (默认 'left' )
22
- * */
23
- leftIcon?: string;
24
- /**
25
- * @description 左边的提示文字
26
- * */
27
- leftText?: string;
28
- /**
29
- * @description 右边的提示文字
30
- * */
31
- rightText?: string;
32
- /**
33
- * @description 右边返回图标的名称,只能为uview-plus自带的图标
34
- * */
35
- rightIcon?: string;
36
- /**
37
- * @description 导航栏标题,如设置为空字符,将会隐藏标题占位区域
38
- * */
39
- title?: string;
40
- /**
41
- * @description 导航栏副标题
42
- * */
43
- sub?: string;
44
- /**
45
- * @description 文字颜色 (默认 '' )
46
- * */
47
- titleColor?: string;
48
- /**
49
- * @description 导航栏背景设置 (默认 '#ffffff' )
50
- * */
51
- bgColor?: string;
52
- /**
53
- * @description 导航栏标题的最大宽度,内容超出会以省略号隐藏 (默认 '400rpx' )
54
- * */
55
- titleWidth?: string | number;
56
- /**
57
- * @description 导航栏高度(不包括状态栏高度在内,内部自动加上)(默认 '44px' )
58
- * */
59
- height?: string | number;
60
- /**
61
- * @description 左侧返回图标的大小(默认 20px )
62
- * */
63
- leftIconSize?: string | number;
64
- /**
65
- * @description 左侧返回图标的颜色(默认 #303133 )
66
- * */
67
- leftIconColor?: string;
68
- /**
69
- * @description 点击左侧区域(返回图标),是否自动返回上一页(默认 false )
70
- * */
71
- autoBack?: boolean;
72
- /**
73
- * @description 标题的样式,对象或字符串
74
- * */
75
- titleStyle?: CSSProperties;
76
- /**
77
- * @description 定义需要用到的外部样式
78
- * */
79
- customStyle?: CSSProperties;
4
+ /**
5
+ * @description 是否开启顶部安全区适配 (默认 true )
6
+ * */
7
+ safeAreaInsetTop?: boolean
8
+ /**
9
+ * @description 固定在顶部时,是否生成一个等高元素,以防止塌陷 (默认 false )
10
+ * */
11
+ placeholder?: boolean
12
+ /**
13
+ * @description 导航栏是否固定在顶部 (默认 true )
14
+ * */
15
+ fixed?: boolean
16
+ /**
17
+ * @description 导航栏底部是否显示下边框 (默认 false )
18
+ * */
19
+ border?: boolean
20
+ /**
21
+ * @description 左边返回图标的名称,只能为uview-pls自带的图标 (默认 'left' )
22
+ * */
23
+ leftIcon?: string
24
+ /**
25
+ * @description 左边的提示文字
26
+ * */
27
+ leftText?: string
28
+ /**
29
+ * @description 右边的提示文字
30
+ * */
31
+ rightText?: string
32
+ /**
33
+ * @description 右边返回图标的名称,只能为uview-plus自带的图标
34
+ * */
35
+ rightIcon?: string
36
+ /**
37
+ * @description 导航栏标题,如设置为空字符,将会隐藏标题占位区域
38
+ * */
39
+ title?: string
40
+ /**
41
+ * @description 导航栏副标题
42
+ * */
43
+ sub?: string
44
+ /**
45
+ * @description 文字颜色 (默认 '' )
46
+ * */
47
+ titleColor?: string
48
+ /**
49
+ * @description 导航栏背景设置 (默认 '#ffffff' )
50
+ * */
51
+ bgColor?: string
52
+ /**
53
+ * @description 导航栏标题的最大宽度,内容超出会以省略号隐藏 (默认 '400rpx' )
54
+ * */
55
+ titleWidth?: string | number
56
+ /**
57
+ * @description 导航栏高度(不包括状态栏高度在内,内部自动加上)(默认 '44px' )
58
+ * */
59
+ height?: string | number
60
+ /**
61
+ * @description 左侧返回图标的大小(默认 20px )
62
+ * */
63
+ leftIconSize?: string | number
64
+ /**
65
+ * @description 左侧返回图标的颜色(默认 #303133 )
66
+ * */
67
+ leftIconColor?: string
68
+ /**
69
+ * @description 点击左侧区域(返回图标),是否自动返回上一页(默认 false )
70
+ * */
71
+ autoBack?: boolean
72
+ /**
73
+ * @description 标题的样式,对象或字符串
74
+ * */
75
+ titleStyle?: CSSProperties
76
+ /**
77
+ * @description 定义需要用到的外部样式
78
+ * */
79
+ customStyle?: CSSProperties
80
80
  }
81
81
 
82
82
  export interface INavbarEmits {
83
- /** 点击导航栏左边 */
84
- (e: "leftClick"): void;
85
- /** 点击导航栏右边 */
86
- (e: "rightClick"): void;
83
+ /** 点击导航栏左边 */
84
+ (e: 'leftClick'): void
85
+ /** 点击导航栏右边 */
86
+ (e: 'rightClick'): void
87
87
  }