hy-app 0.1.3 → 0.1.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.
Files changed (136) hide show
  1. package/components/hy-address-picker/hy-address-picker.vue +20 -10
  2. package/components/hy-address-picker/props.ts +1 -3
  3. package/components/hy-address-picker/typing.d.ts +4 -11
  4. package/components/hy-avatar/typing.d.ts +1 -1
  5. package/components/hy-back-top/hy-back-top.vue +15 -1
  6. package/components/hy-back-top/props.ts +1 -6
  7. package/components/hy-back-top/typing.d.ts +4 -7
  8. package/components/hy-badge/typing.d.ts +1 -1
  9. package/components/hy-button/hy-button.vue +36 -18
  10. package/components/hy-button/props.ts +1 -2
  11. package/components/hy-button/typing.d.ts +5 -8
  12. package/components/hy-calendar/typing.d.ts +1 -1
  13. package/components/hy-card/typing.d.ts +1 -1
  14. package/components/hy-cell/hy-cell.vue +35 -6
  15. package/components/hy-cell/props.ts +2 -2
  16. package/components/hy-cell/typing.d.ts +8 -11
  17. package/components/hy-check-button/typing.d.ts +1 -1
  18. package/components/hy-checkbox/hy-checkbox.vue +3 -2
  19. package/components/hy-checkbox/props.ts +1 -1
  20. package/components/hy-checkbox/typing.d.ts +2 -2
  21. package/components/hy-count-down/typing.d.ts +1 -1
  22. package/components/hy-count-to/typing.d.ts +1 -3
  23. package/components/hy-datetime-picker/hy-datetime-picker.vue +18 -14
  24. package/components/hy-datetime-picker/props.ts +1 -3
  25. package/components/hy-datetime-picker/typing.d.ts +6 -13
  26. package/components/hy-divider/index.scss +1 -0
  27. package/components/hy-divider/typing.d.ts +1 -1
  28. package/components/hy-dropdown/typing.d.ts +1 -1
  29. package/components/hy-dropdown-item/typing.d.ts +1 -3
  30. package/components/hy-empty/typing.d.ts +1 -1
  31. package/components/hy-float-button/hy-float-button.vue +19 -3
  32. package/components/hy-float-button/index.scss +0 -2
  33. package/components/hy-float-button/typing.d.ts +1 -1
  34. package/components/hy-folding-panel/typing.d.ts +1 -1
  35. package/components/hy-form/hy-form.vue +189 -27
  36. package/components/hy-form/index.scss +1 -1
  37. package/components/hy-form/props.ts +0 -2
  38. package/components/hy-form/typing.d.ts +26 -8
  39. package/components/hy-grid/hy-grid.vue +16 -5
  40. package/components/hy-grid/props.ts +1 -3
  41. package/components/hy-grid/typing.d.ts +13 -16
  42. package/components/hy-icon/hy-icon.vue +6 -10
  43. package/components/hy-icon/typing.d.ts +1 -1
  44. package/components/hy-image/hy-image.vue +5 -1
  45. package/components/hy-image/typing.d.ts +1 -1
  46. package/components/hy-input/hy-input.vue +27 -16
  47. package/components/hy-input/props.ts +2 -4
  48. package/components/hy-input/typing.d.ts +5 -12
  49. package/components/hy-line/typing.d.ts +1 -1
  50. package/components/hy-line-progress/typing.d.ts +1 -1
  51. package/components/hy-list/typing.d.ts +1 -1
  52. package/components/hy-loading/typing.d.ts +2 -2
  53. package/components/hy-login/TheUserLogin.vue +5 -73
  54. package/components/hy-login/hy-login.vue +267 -265
  55. package/components/hy-login/typing.d.ts +1 -1
  56. package/components/hy-modal/typing.d.ts +1 -1
  57. package/components/hy-navbar/typing.d.ts +1 -2
  58. package/components/hy-notice-bar/hy-row-notice.vue +12 -3
  59. package/components/hy-notice-bar/typing.d.ts +1 -1
  60. package/components/hy-number-step/hy-number-step.vue +25 -10
  61. package/components/hy-number-step/typing.d.ts +8 -3
  62. package/components/hy-overlay/typing.d.ts +1 -1
  63. package/components/hy-parse/hy-parse.vue +499 -0
  64. package/components/hy-parse/index.scss +9 -0
  65. package/components/hy-parse/node/node.vue +584 -0
  66. package/components/hy-parse/parser.js +1337 -0
  67. package/components/hy-parse/props.ts +19 -0
  68. package/components/hy-parse/typing.d.ts +68 -0
  69. package/components/hy-picker/hy-picker.vue +18 -8
  70. package/components/hy-picker/props.ts +1 -4
  71. package/components/hy-picker/typing.d.ts +4 -15
  72. package/components/hy-popup/typing.d.ts +1 -1
  73. package/components/hy-price/hy-price.vue +6 -8
  74. package/components/hy-price/index.scss +6 -6
  75. package/components/hy-price/props.ts +4 -3
  76. package/components/hy-price/typing.d.ts +9 -5
  77. package/components/hy-qrcode/typing.d.ts +1 -1
  78. package/components/hy-radio/hy-radio.vue +6 -2
  79. package/components/hy-radio/props.ts +1 -1
  80. package/components/hy-radio/typing.d.ts +2 -2
  81. package/components/hy-rate/typing.d.ts +1 -1
  82. package/components/hy-read-more/typing.d.ts +1 -1
  83. package/components/hy-scroll-list/typing.d.ts +1 -1
  84. package/components/hy-search/hy-search.vue +12 -3
  85. package/components/hy-search/props.ts +1 -3
  86. package/components/hy-search/typing.d.ts +6 -13
  87. package/components/hy-slider/hy-slider.vue +4 -3
  88. package/components/hy-slider/typing.d.ts +1 -1
  89. package/components/hy-status-bar/typing.d.ts +1 -1
  90. package/components/hy-steps/typing.d.ts +1 -1
  91. package/components/hy-submitBar/Index.vue +17 -0
  92. package/components/hy-submitBar/hy-submitBar.vue +216 -0
  93. package/components/hy-submitBar/index.scss +9 -0
  94. package/components/hy-submitBar/props.ts +22 -0
  95. package/components/hy-submitBar/typing.d.ts +88 -0
  96. package/components/hy-subsection/typing.d.ts +1 -1
  97. package/components/hy-swipe-action/typing.d.ts +1 -1
  98. package/components/hy-swiper/typing.d.ts +2 -5
  99. package/components/hy-switch/hy-switch.vue +11 -2
  100. package/components/hy-switch/props.ts +0 -1
  101. package/components/hy-switch/typing.d.ts +3 -2
  102. package/components/hy-tabs/typing.d.ts +1 -1
  103. package/components/hy-tag/hy-tag.vue +42 -14
  104. package/components/hy-tag/index.scss +3 -2
  105. package/components/hy-tag/props.ts +1 -2
  106. package/components/hy-tag/typing.d.ts +3 -10
  107. package/components/hy-text/typing.d.ts +2 -2
  108. package/components/hy-textarea/hy-textarea.vue +1 -1
  109. package/components/hy-textarea/typing.d.ts +2 -2
  110. package/components/hy-toast/hy-toast.vue +175 -0
  111. package/components/hy-toast/index.scss +77 -0
  112. package/components/hy-toast/props.ts +3 -0
  113. package/components/hy-toast/typing.d.ts +38 -0
  114. package/components/hy-tooltip/typing.d.ts +1 -1
  115. package/components/hy-transition/typing.d.ts +1 -1
  116. package/components/hy-upload/typing.d.ts +1 -1
  117. package/components/hy-warn/hy-warn.vue +2 -21
  118. package/components/hy-warn/typing.d.ts +1 -1
  119. package/components/hy-waterfall/hy-waterfall.vue +168 -38
  120. package/components/hy-waterfall/index.scss +9 -75
  121. package/components/hy-waterfall/props.ts +4 -5
  122. package/components/hy-waterfall/typing.d.ts +6 -12
  123. package/components/index.ts +2 -2
  124. package/composables/index.ts +1 -0
  125. package/composables/useShare.ts +27 -0
  126. package/config/color.ts +1 -1
  127. package/config/icon.ts +21 -1
  128. package/index.ts +9 -8
  129. package/package.json +4 -3
  130. package/store/userInfo.ts +25 -25
  131. package/theme.scss +1 -1
  132. package/typing/index.ts +1 -1
  133. package/typing/modules/common.d.ts +22 -2
  134. package/typing/modules/form.ts +29 -14
  135. package/utils/inspect.ts +50 -1
  136. package/utils/utils.ts +9 -7
@@ -3,18 +3,27 @@
3
3
  <view
4
4
  v-if="hasInput"
5
5
  class="u-datetime-picker__has-input"
6
- @click="onShowByClickInput"
6
+ @tap="onShowByClickInput"
7
7
  >
8
8
  <slot name="trigger" :value="inputValue">
9
9
  <HyInput
10
- :placeholder="placeholder"
11
- :readonly="true"
12
10
  v-model="inputValue"
13
- :disabled="disabled"
14
- :shape="shape"
15
- :border="border"
16
- :disabledColor="disabledColor"
17
- :customStyle="customStyle"
11
+ :readonly="true"
12
+ :disabled="input?.disabled"
13
+ :disabledColor="input?.disabledColor"
14
+ :shape="input?.shape"
15
+ :border="input?.border"
16
+ :prefixIcon="input?.prefixIcon"
17
+ :suffixIcon="input?.suffixIcon"
18
+ :color="input?.color"
19
+ :fontSize="input?.fontSize"
20
+ :inputAlign="input?.inputAlign"
21
+ :placeholder="input?.placeholder || '请选择地址'"
22
+ :placeholderStyle="input?.placeholderStyle"
23
+ :placeholderClass="input?.placeholderClass"
24
+ :customStyle="
25
+ Object.assign({ 'pointer-events': 'none' }, input?.customStyle)
26
+ "
18
27
  ></HyInput>
19
28
  <view class="input-cover"></view>
20
29
  </slot>
@@ -64,7 +73,7 @@ import HyInput from "../hy-input/hy-input.vue";
64
73
  import HyPicker from "../hy-picker/hy-picker.vue";
65
74
 
66
75
  const props = withDefaults(defineProps<IProps>(), defaultProps);
67
- const { show, modelValue, hasInput, disabled, separator, closeOnClickOverlay } =
76
+ const { show, modelValue, hasInput, input, separator, closeOnClickOverlay } =
68
77
  toRefs(props);
69
78
  const emit = defineEmits([
70
79
  "close",
@@ -223,7 +232,8 @@ const change = (e: any) => {
223
232
  };
224
233
 
225
234
  const onShowByClickInput = () => {
226
- if (!disabled.value) {
235
+ console.log(input.value?.disabled);
236
+ if (!input.value?.disabled) {
227
237
  showByClickInput.value = !showByClickInput.value;
228
238
  }
229
239
  };
@@ -16,10 +16,8 @@ const defaultProps: IProps = {
16
16
  visibleItemCount: 5,
17
17
  closeOnClickOverlay: false,
18
18
  defaultIndex: [],
19
- disabled: false,
20
19
  hasInput: false,
21
- placeholder: "请选择地址",
22
- disabledColor: "#F5F5F5",
20
+ input: {},
23
21
  toolbarRightSlot: false,
24
22
  };
25
23
 
@@ -1,6 +1,7 @@
1
1
  import type { CSSProperties } from "vue";
2
+ import type HyInputProps from "../hy-input/typing";
2
3
 
3
- export default interface IProps {
4
+ export default interface HyAddressPickerProps {
4
5
  /**
5
6
  * @description 用于控制选择器的弹出和收起 ( 默认 false )
6
7
  * */
@@ -62,22 +63,14 @@ export default interface IProps {
62
63
  * @note 类型有问题,需要调整
63
64
  * */
64
65
  defaultIndex?: Array<any>;
65
- /**
66
- * @description 是否禁用输入框 ( 默认 false )
67
- * */
68
- disabled?: boolean;
69
66
  /**
70
67
  * @description 输入框是否显示边框 ( 默认 false )
71
68
  * */
72
69
  hasInput?: boolean;
73
70
  /**
74
- * @description 输入框提示信息
75
- * */
76
- placeholder?: string;
77
- /**
78
- * @description 禁用时候输入框颜色
71
+ * @description 输入框集合属性
79
72
  * */
80
- disabledColor?: string;
73
+ input?: Partial<HyInputProps>;
81
74
  /**
82
75
  * @description 右边插槽
83
76
  * */
@@ -1,6 +1,6 @@
1
1
  import type { CSSProperties } from "vue";
2
2
 
3
- export default interface IProps {
3
+ export default interface HyAvatarProps {
4
4
  /**
5
5
  * @description 头像路径,如加载失败,将会显示默认头像(不能为相对路径)
6
6
  * */
@@ -2,7 +2,20 @@
2
2
  <HyTransition mode="fade" :customStyle="backTopStyle" :show="show">
3
3
  <slot>
4
4
  <view class="hy-back-top" :style="contentStyle" @click="backToTop">
5
- <HyIcon :name="icon" :custom-style="iconStyle"></HyIcon>
5
+ <HyIcon
6
+ :name="icon?.name || IconConfig.DOWNLOAD"
7
+ :color="icon?.color"
8
+ :size="icon?.size"
9
+ :bold="icon?.bold"
10
+ :customPrefix="icon?.customPrefix"
11
+ :imgMode="icon?.imgMode"
12
+ :width="icon?.width"
13
+ :height="icon?.height"
14
+ :top="icon?.top"
15
+ :stop="icon?.stop"
16
+ :round="icon?.round"
17
+ :customStyle="icon?.customStyle"
18
+ ></HyIcon>
6
19
  <text v-if="text" class="hy-back-top__text">{{ text }}</text>
7
20
  </view>
8
21
  </slot>
@@ -17,6 +30,7 @@ import type IProps from "./typing";
17
30
  import HyTransition from "../hy-transition/hy-transition.vue";
18
31
  import HyIcon from "../hy-icon/hy-icon.vue";
19
32
  import { addUnit, getPx } from "../../utils";
33
+ import { IconConfig } from "@/package";
20
34
 
21
35
  const props = withDefaults(defineProps<IProps>(), defaultProps);
22
36
  const { customStyle, duration, mode, bottom, right, top, scrollTop } =
@@ -1,9 +1,8 @@
1
1
  import type IProps from "./typing";
2
- import { IconConfig } from "../../config";
3
2
 
4
3
  const defaultProps: IProps = {
5
4
  mode: "circle",
6
- icon: IconConfig.DOWNLOAD,
5
+ icon: {},
7
6
  text: "",
8
7
  duration: 500,
9
8
  scrollTop: 0,
@@ -11,10 +10,6 @@ const defaultProps: IProps = {
11
10
  bottom: 100,
12
11
  right: 20,
13
12
  zIndex: 888,
14
- iconStyle: {
15
- color: "#909399",
16
- fontSize: "19px",
17
- },
18
13
  customStyle: {
19
14
  transform: "rotate(180deg)",
20
15
  },
@@ -1,14 +1,15 @@
1
1
  import type { CSSProperties } from "vue";
2
+ import type HyIconProps from "../hy-icon/typing";
2
3
 
3
- export default interface IProps {
4
+ export default interface HyBackTopProps {
4
5
  /**
5
6
  * @description 返回顶部的形状,circle-圆形,square-方形 (默认 'circle' )
6
7
  * */
7
8
  mode?: HyApp.ShapeType;
8
9
  /**
9
- * @description 自定义图标 (默认 'arrow-upward' ) 见官方文档示例
10
+ * @description 自定义图标属性集合
10
11
  * */
11
- icon?: string;
12
+ icon?: Partial<HyIconProps>;
12
13
  /**
13
14
  * @description 提示文字
14
15
  * */
@@ -37,10 +38,6 @@ export default interface IProps {
37
38
  * @description 层级 (默认 888 )
38
39
  * */
39
40
  zIndex?: number;
40
- /**
41
- * @description 图标的样式,对象形式 (默认 {color: '#909399',fontSize: '19px'})
42
- * */
43
- iconStyle?: CSSProperties;
44
41
  /**
45
42
  * @description 定义需要用到的外部样式(默认{transform: "rotate(180deg)"})
46
43
  * */
@@ -1,6 +1,6 @@
1
1
  import type { CSSProperties } from "vue";
2
2
 
3
- export default interface IProps {
3
+ export default interface HyBadgeProps {
4
4
  /**
5
5
  * @description 是否显示圆点 (默认 false )
6
6
  * */
@@ -27,13 +27,11 @@
27
27
  :class="bemClass"
28
28
  >
29
29
  <template v-if="loading">
30
- <HyIcon
30
+ <HyLoading
31
31
  :mode="loadingMode"
32
- :is-rotate="true"
33
- :name="IconConfig.LOADING"
34
32
  :size="loadingSize"
35
33
  :color="loadingColor"
36
- ></HyIcon>
34
+ ></HyLoading>
37
35
  <text
38
36
  class="hy-button__loading-text"
39
37
  :style="[{ fontSize: textSize + 'px' }]"
@@ -42,11 +40,19 @@
42
40
  </template>
43
41
  <template v-else>
44
42
  <HyIcon
45
- v-if="icon"
46
- :name="icon"
43
+ v-if="icon?.name"
44
+ :name="icon?.name"
47
45
  :color="iconColorCom"
48
- :size="textSize * 1.35"
49
- :customStyle="{ marginRight: '2px' }"
46
+ :size="icon?.size || textSize * 1.35"
47
+ :bold="icon?.bold"
48
+ :customPrefix="icon?.customPrefix"
49
+ :imgMode="icon?.imgMode"
50
+ :width="icon?.width"
51
+ :height="icon?.height"
52
+ :top="icon?.top"
53
+ :stop="icon?.stop"
54
+ :round="icon?.round"
55
+ :customStyle="icon?.customStyle || { marginRight: '2px' }"
50
56
  ></HyIcon>
51
57
  <slot>
52
58
  <text
@@ -76,11 +82,11 @@
76
82
  :style="[baseColor, customStyle]"
77
83
  >
78
84
  <template v-if="loading">
79
- <up-loading-icon
85
+ <HyLoading
80
86
  :mode="loadingMode"
81
- :size="loadingSize * 1.15"
87
+ :size="loadingSize"
82
88
  :color="loadingColor"
83
- ></up-loading-icon>
89
+ ></HyLoading>
84
90
  <text
85
91
  class="hy-button__loading-text"
86
92
  :style="[nvueTextStyle]"
@@ -90,10 +96,19 @@
90
96
  </template>
91
97
  <template v-else>
92
98
  <HyIcon
93
- v-if="icon"
94
- :name="icon"
99
+ v-if="icon?.name"
100
+ :name="icon?.name"
95
101
  :color="iconColorCom"
96
- :size="textSize * 1.35"
102
+ :size="icon?.size || textSize * 1.35"
103
+ :bold="icon?.bold"
104
+ :customPrefix="icon?.customPrefix"
105
+ :imgMode="icon?.imgMode"
106
+ :width="icon?.width"
107
+ :height="icon?.height"
108
+ :top="icon?.top"
109
+ :stop="icon?.stop"
110
+ :round="icon?.round"
111
+ :customStyle="icon?.customStyle || { marginRight: '2px' }"
97
112
  ></HyIcon>
98
113
  <text
99
114
  class="hy-button__text"
@@ -115,10 +130,13 @@
115
130
  import { computed, type CSSProperties, toRefs } from "vue";
116
131
  import { bem, throttle } from "../../utils";
117
132
  import defaultProps from "./props";
118
- import { ColorConfig, IconConfig } from "../../config";
119
- import HyIcon from "../hy-icon/hy-icon.vue";
133
+ import { ColorConfig } from "../../config";
120
134
  import type IProps from "./typing";
121
135
 
136
+ // 组件
137
+ import HyIcon from "../hy-icon/hy-icon.vue";
138
+ import HyLoading from "../hy-loading/hy-loading.vue";
139
+
122
140
  const props = withDefaults(defineProps<IProps>(), defaultProps);
123
141
  const {
124
142
  disabled,
@@ -129,7 +147,7 @@ const {
129
147
  type,
130
148
  plain,
131
149
  color,
132
- iconColor,
150
+ icon,
133
151
  } = toRefs(props);
134
152
  const emit = defineEmits([
135
153
  "click",
@@ -180,7 +198,7 @@ const loadingColor = computed(() => {
180
198
  const iconColorCom = computed((): string => {
181
199
  // 如果是镂空状态,设置了color就用color值,否则使用主题颜色,
182
200
  // u-icon的color能接受一个主题颜色的值
183
- if (iconColor.value) return iconColor.value;
201
+ if (icon.value?.color) return icon.value?.color;
184
202
  if (plain.value) {
185
203
  return color.value ? color.value : textColor;
186
204
  } else {
@@ -26,8 +26,7 @@ const defaultProps: IProps = {
26
26
  hoverStartTime: 0,
27
27
  hoverStayTime: 200,
28
28
  text: "",
29
- icon: "",
30
- iconColor: "",
29
+ icon: {},
31
30
  color: "",
32
31
  stop: true,
33
32
  };
@@ -1,6 +1,7 @@
1
1
  import type { CSSProperties } from "vue";
2
+ import type HyIconProps from "../hy-icon/typing";
2
3
 
3
- export default interface IProps {
4
+ export default interface HyButtonProps {
4
5
  /**
5
6
  * @description 是否显示按钮的细边框 (默认 true )
6
7
  * */
@@ -36,7 +37,7 @@ export default interface IProps {
36
37
  /**
37
38
  * @description 加载状态图标类型 (默认 'spinner' )
38
39
  * */
39
- loadingMode?: "spinner" | "text";
40
+ loadingMode?: HyApp.LoadingMode;
40
41
  /**
41
42
  * @description 加载图标大小 (默认 13 )
42
43
  * */
@@ -102,13 +103,9 @@ export default interface IProps {
102
103
  * */
103
104
  text?: string;
104
105
  /**
105
- * @description 按钮图标
106
+ * @description 按钮图标api集合
106
107
  * */
107
- icon?: string | HyIconConfig;
108
- /**
109
- * @description 按钮图标颜色
110
- * */
111
- iconColor?: string;
108
+ icon?: Partial<HyIconProps>;
112
109
  /**
113
110
  * @description 按钮颜色,支持传入linear-gradient渐变色
114
111
  * */
@@ -1,4 +1,4 @@
1
- export default interface IProps {
1
+ export default interface HyCalendarProps {
2
2
  /**
3
3
  * @description 是否显示日历弹窗 (默认 false )
4
4
  * */
@@ -1,6 +1,6 @@
1
1
  import type { CSSProperties } from "vue";
2
2
 
3
- export default interface IProps {
3
+ export default interface HyCardProps {
4
4
  /**
5
5
  * @description 卡片与屏幕两侧是否留空隙(默认false)
6
6
  * */
@@ -31,8 +31,19 @@
31
31
  <slot name="icon" :icon="item?.icon">
32
32
  <HyIcon
33
33
  :size="iconSize"
34
- :name="item?.icon"
35
- :color="disabled || item?.disabled ? '#c0c0c0' : ''"
34
+ :name="item?.icon?.name"
35
+ :color="
36
+ disabled || item?.disabled ? '#c0c0c0' : item?.icon?.color
37
+ "
38
+ :bold="item?.icon?.bold"
39
+ :customPrefix="item?.icon?.customPrefix"
40
+ :imgMode="item?.icon?.imgMode"
41
+ :width="item?.icon?.width"
42
+ :height="item?.icon?.height"
43
+ :top="item?.icon?.top"
44
+ :stop="item?.icon?.stop"
45
+ :round="item?.icon?.round"
46
+ :customStyle="item?.icon?.customStyle"
36
47
  ></HyIcon>
37
48
  </slot>
38
49
  </view>
@@ -86,10 +97,27 @@
86
97
  >
87
98
  <slot name="right-icon" :icon="item?.rightIcon || rightIcon">
88
99
  <HyIcon
89
- :name="item?.rightIcon || rightIcon"
90
- :custom-style="rightIconStyle"
91
- :color="disabled || item?.disabled ? '#c0c0c0' : 'info'"
92
- :size="iconSize"
100
+ :name="
101
+ item?.rightIcon?.name || rightIcon?.name || IconConfig.RIGHT
102
+ "
103
+ :color="
104
+ disabled || item?.disabled
105
+ ? '#c0c0c0'
106
+ : item?.rightIcon?.color || rightIcon?.color
107
+ "
108
+ :bold="item?.rightIcon?.bold || rightIcon?.bold"
109
+ :customPrefix="
110
+ item?.rightIcon?.customPrefix || rightIcon?.customPrefix
111
+ "
112
+ :imgMode="item?.rightIcon?.imgMode || rightIcon?.imgMode"
113
+ :width="item?.rightIcon?.width || rightIcon?.width"
114
+ :height="item?.rightIcon?.height || rightIcon?.height"
115
+ :top="item?.rightIcon?.top || rightIcon?.name"
116
+ :stop="item?.rightIcon?.stop || rightIcon?.stop"
117
+ :round="item?.rightIcon?.round || rightIcon?.round"
118
+ :customStyle="
119
+ item?.rightIcon?.customStyle || rightIcon?.customStyle
120
+ "
93
121
  ></HyIcon>
94
122
  </slot>
95
123
  </view>
@@ -106,6 +134,7 @@
106
134
  import defaultProps from "./props";
107
135
  import type IProps from "./typing";
108
136
  import type { CellContentVo } from "./typing";
137
+ import { IconConfig } from "../../config";
109
138
 
110
139
  import HyIcon from "../hy-icon/hy-icon.vue";
111
140
  import { computed, toRefs } from "vue";
@@ -1,5 +1,5 @@
1
1
  import type IProps from "./typing";
2
- import { ColorConfig, IconConfig } from "../../config";
2
+ import { ColorConfig } from "../../config";
3
3
 
4
4
  const defaultProps: IProps = {
5
5
  list: [],
@@ -13,7 +13,7 @@ const defaultProps: IProps = {
13
13
  size: "medium",
14
14
  value: "",
15
15
  arrange: "right",
16
- rightIcon: IconConfig.RIGHT,
16
+ rightIcon: {},
17
17
  arrowDirection: "right",
18
18
  };
19
19
 
@@ -1,11 +1,12 @@
1
1
  import type { CSSProperties } from "vue";
2
2
  import { HyApp } from "@/package/typing/modules/common";
3
+ import type HyIconProps from "../hy-icon/typing";
3
4
 
4
5
  export interface CellContentVo extends AnyObject {
5
6
  /**
6
7
  * @description 单元格左图标
7
8
  * */
8
- icon?: string;
9
+ icon?: Partial<HyIconProps>;
9
10
  /**
10
11
  * @description 单元格标题
11
12
  * */
@@ -19,9 +20,9 @@ export interface CellContentVo extends AnyObject {
19
20
  * */
20
21
  disabled?: boolean;
21
22
  /**
22
- * @description 单元格右图标
23
+ * @description 单元格右图标集合
23
24
  * */
24
- rightIcon?: string;
25
+ rightIcon?: Partial<HyIconProps>;
25
26
  /**
26
27
  * @description 单元格值
27
28
  * */
@@ -31,11 +32,11 @@ export interface CellContentVo extends AnyObject {
31
32
  * */
32
33
  url?: string;
33
34
  /**
34
- * @description 单元格右侧箭头的方向,可选值为:left,up,down
35
+ * @description 单元格右侧箭头的方向,可选值为:left,up,down,right
35
36
  * */
36
37
  arrowDirection?: HyApp.RotateType;
37
38
  }
38
- export default interface IProps {
39
+ export default interface HyCellProps {
39
40
  /**
40
41
  * @description cell列表数据
41
42
  * */
@@ -81,17 +82,13 @@ export default interface IProps {
81
82
  * */
82
83
  arrange?: HyApp.LeftRightType | "center";
83
84
  /**
84
- * @description 右侧的图标箭头 (默认 'right')
85
+ * @description 右侧的图标箭头icon集合
85
86
  * */
86
- rightIcon?: string;
87
+ rightIcon?: Partial<HyIconProps>;
87
88
  /**
88
89
  * @description 右侧箭头的方向,可选值为:left,up,down
89
90
  * */
90
91
  arrowDirection?: "left" | "up" | "down" | "right";
91
- /**
92
- * @description 自定义右侧icon样式
93
- * */
94
- rightIconStyle?: CSSProperties;
95
92
  /**
96
93
  * @description 定义需要用到的外部样式
97
94
  * */
@@ -35,7 +35,7 @@ export type FieldNamesType = {
35
35
  [key in keyof IFieldNames as IFieldNames[key]]?: string | number | boolean;
36
36
  };
37
37
 
38
- export default interface IProps {
38
+ export default interface HyCheckButtonProps {
39
39
  /**
40
40
  * @description 选中得值,radio是字符串,checkbox是数组
41
41
  * */
@@ -72,6 +72,7 @@ const {
72
72
  customStyle,
73
73
  borderBottom,
74
74
  placement,
75
+ labelDisabled,
75
76
  } = toRefs(props);
76
77
  const emit = defineEmits(["change", "update:modelValue"]);
77
78
 
@@ -172,7 +173,7 @@ const iconClickHandler = (e: Event, temp: CheckboxColumnsVo) => {
172
173
  * */
173
174
  const wrapperClickHandler = (e: Event, temp: CheckboxColumnsVo) => {
174
175
  e.stopPropagation();
175
- if (!isDisabled(temp?.disabled)) {
176
+ if (!isDisabled(temp?.disabled) || !labelDisabled.value) {
176
177
  setRadioCheckedStatus(temp);
177
178
  }
178
179
  };
@@ -181,7 +182,7 @@ const wrapperClickHandler = (e: Event, temp: CheckboxColumnsVo) => {
181
182
  * */
182
183
  const labelClickHandler = (e: Event, temp: CheckboxColumnsVo) => {
183
184
  e.stopPropagation();
184
- if (!isDisabled(temp?.disabled)) {
185
+ if (!isDisabled(temp?.disabled) || !labelDisabled.value) {
185
186
  setRadioCheckedStatus(temp);
186
187
  }
187
188
  };
@@ -20,7 +20,7 @@ const defaultProps: IProps = {
20
20
  borderBottom: false,
21
21
  labelSize: "",
22
22
  labelColor: "",
23
- labelDisabled: "",
23
+ labelDisabled: false,
24
24
  placement: "row",
25
25
  };
26
26
 
@@ -1,7 +1,7 @@
1
1
  import type { CSSProperties } from "vue";
2
2
  import type { CheckboxColumnsVo, IFieldNames } from "../hy-check-button/typing";
3
3
 
4
- export default interface IProps {
4
+ export default interface HyCheckboxProps {
5
5
  /**
6
6
  * @description 双向绑定值,数组类型
7
7
  * */
@@ -61,7 +61,7 @@ export default interface IProps {
61
61
  /**
62
62
  * @description 是否禁止点击提示语选中复选框
63
63
  * */
64
- labelDisabled?: string;
64
+ labelDisabled?: boolean;
65
65
  /**
66
66
  * @description 定义需要用到的外部样式
67
67
  * */
@@ -1,6 +1,6 @@
1
1
  import type { CSSProperties } from "vue";
2
2
 
3
- export default interface IProps {
3
+ export default interface HyCountDownProps {
4
4
  /**
5
5
  * @description 倒计时时长,单位ms (默认 0 )
6
6
  * */
@@ -1,6 +1,4 @@
1
- import type { CSSProperties } from "vue";
2
-
3
- export default interface IProps {
1
+ export default interface HyCountToProps {
4
2
  /**
5
3
  * @description 开始的数值,默认从0增长到某一个数(默认 0 )
6
4
  * */
@@ -7,14 +7,23 @@
7
7
  >
8
8
  <slot name="trigger" :value="inputValue">
9
9
  <HyInput
10
- :placeholder="placeholder"
11
- :readonly="true"
12
10
  v-model="inputValue"
13
- :disabled="disabled"
14
- :disabledColor="disabledColor"
15
- :shape="shape"
16
- :border="border"
17
- :customStyle="customStyle"
11
+ :readonly="true"
12
+ :disabled="input?.disabled"
13
+ :disabledColor="input?.disabledColor"
14
+ :shape="input?.shape"
15
+ :border="input?.border"
16
+ :prefixIcon="input?.prefixIcon"
17
+ :suffixIcon="input?.suffixIcon"
18
+ :color="input?.color"
19
+ :fontSize="input?.fontSize"
20
+ :inputAlign="input?.inputAlign"
21
+ :placeholder="input?.placeholder || '请选择时间'"
22
+ :placeholderStyle="input?.placeholderStyle"
23
+ :placeholderClass="input?.placeholderClass"
24
+ :customStyle="
25
+ Object.assign({ 'pointer-events': 'none' }, input?.customStyle)
26
+ "
18
27
  ></HyInput>
19
28
  <view class="input-cover"></view>
20
29
  </slot>
@@ -68,7 +77,7 @@ const {
68
77
  show,
69
78
  modelValue,
70
79
  hasInput,
71
- disabled,
80
+ input,
72
81
  formatter,
73
82
  filter,
74
83
  format,
@@ -416,11 +425,6 @@ const getOriginColumns = () => {
416
425
  if (filter.value) {
417
426
  values = filter.value(type, values);
418
427
  if (!values || (values && values.length == 0)) {
419
- // uni.showToast({
420
- // title: '日期filter结果不能为空',
421
- // icon: 'error',
422
- // mask: true
423
- // })
424
428
  error("日期filter结果不能为空");
425
429
  }
426
430
  }
@@ -547,7 +551,7 @@ const getBoundary = (type: string, innerVal: string | number) => {
547
551
  };
548
552
  };
549
553
  const onShowByClickInput = () => {
550
- if (!disabled.value) {
554
+ if (!input.value.disabled) {
551
555
  showByClickInput.value = !showByClickInput.value;
552
556
  }
553
557
  };
@@ -25,11 +25,9 @@ const defaultProps: IProps = {
25
25
  visibleItemCount: 5,
26
26
  closeOnClickOverlay: false,
27
27
  defaultIndex: [],
28
- disabled: false,
29
28
  hasInput: false,
29
+ input: {},
30
30
  format: "",
31
- placeholder: "请选择日期",
32
- disabledColor: "#F5F5F5",
33
31
  toolbarRightSlot: false,
34
32
  };
35
33