@qynpm/ui 1.0.34 → 1.0.36

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 (126) hide show
  1. package/README.md +91 -56
  2. package/dist/index.cjs +7 -6
  3. package/dist/index.mjs +63 -61
  4. package/dist/qy-action-bar/index.cjs +1 -1
  5. package/dist/qy-action-bar/index.mjs +1 -1
  6. package/dist/qy-dialog/index.cjs +1 -1
  7. package/dist/qy-dialog/index.mjs +1 -1
  8. package/dist/qy-drawer/index.cjs +1 -1
  9. package/dist/qy-drawer/index.mjs +1 -1
  10. package/dist/qy-file-picker/index.cjs +1 -1
  11. package/dist/qy-file-picker/index.mjs +1 -1
  12. package/dist/qy-form-section/index.cjs +1 -1
  13. package/dist/qy-form-section/index.mjs +1 -1
  14. package/dist/qy-iframe/index.cjs +1 -1
  15. package/dist/qy-iframe/index.mjs +1 -1
  16. package/dist/qy-image/index.cjs +1 -1
  17. package/dist/qy-image/index.mjs +1 -1
  18. package/dist/qy-image-preview/index.cjs +1 -1
  19. package/dist/qy-image-preview/index.mjs +2 -2
  20. package/dist/qy-image-upload/index.cjs +1 -1
  21. package/dist/qy-image-upload/index.mjs +1 -1
  22. package/dist/qy-input-number/index.cjs +1 -1
  23. package/dist/qy-input-number/index.mjs +1 -1
  24. package/dist/qy-input-tag/index.cjs +1 -0
  25. package/dist/qy-input-tag/index.mjs +7 -0
  26. package/dist/qy-legacy-selection-dialog/index.cjs +1 -1
  27. package/dist/qy-legacy-selection-dialog/index.mjs +1 -1
  28. package/dist/qy-menu-actions/index.cjs +1 -1
  29. package/dist/qy-menu-actions/index.mjs +1 -1
  30. package/dist/qy-money-input/index.cjs +1 -1
  31. package/dist/qy-money-input/index.mjs +5 -2
  32. package/dist/qy-popover/index.cjs +1 -1
  33. package/dist/qy-popover/index.mjs +1 -1
  34. package/dist/qy-record-quote-search/index.cjs +1 -1
  35. package/dist/qy-record-quote-search/index.mjs +1 -1
  36. package/dist/qy-remark-image/index.cjs +1 -1
  37. package/dist/qy-remark-image/index.mjs +1 -1
  38. package/dist/qy-remote-select/index.cjs +1 -1
  39. package/dist/qy-remote-select/index.mjs +1 -1
  40. package/dist/qy-search-input/index.cjs +1 -1
  41. package/dist/qy-search-input/index.mjs +1 -1
  42. package/dist/qy-selection-dialog/index.cjs +1 -1
  43. package/dist/qy-selection-dialog/index.mjs +1 -1
  44. package/dist/qy-tree-select/index.cjs +1 -1
  45. package/dist/qy-tree-select/index.mjs +1 -1
  46. package/dist/qy-upload/index.cjs +1 -1
  47. package/dist/qy-upload/index.mjs +5 -2
  48. package/dist/shared/{index-IXbvJ9d7.mjs → index-4SkLDBra.mjs} +1 -1
  49. package/dist/shared/index-BYX0biqw.mjs +766 -0
  50. package/dist/shared/{index-n04hARNG.cjs → index-Bli6Gx5d.cjs} +1 -1
  51. package/dist/shared/{index-BBZQowyp.mjs → index-BuUtJrIy.mjs} +9 -9
  52. package/dist/shared/index-BxxwEr52.mjs +107 -0
  53. package/dist/shared/index-C1i-hd-W.cjs +1 -0
  54. package/dist/shared/{index-Dyyp1ix9.cjs → index-C7lRQtzs.cjs} +1 -1
  55. package/dist/shared/{index-C_adKysL.mjs → index-CdnHMuo3.mjs} +1 -1
  56. package/dist/shared/index-D654b42n.mjs +2754 -0
  57. package/dist/shared/{index-D6-K5xSD.cjs → index-DlGwHshu.cjs} +1 -1
  58. package/dist/shared/{index-BeubtXXl.cjs → index-DnHfk7NM.cjs} +1 -1
  59. package/dist/shared/index-DnNIseRJ.cjs +1 -0
  60. package/dist/shared/{index-ccugL1Ie.mjs → index-Dr-Q5krU.mjs} +4 -4
  61. package/dist/shared/index-aIqtIYsu.cjs +1 -0
  62. package/dist/shared/index.vue_vue_type_script_setup_true_lang-BiIgNax-.cjs +1 -0
  63. package/dist/shared/index.vue_vue_type_script_setup_true_lang-CqSJ_8hG.cjs +1 -0
  64. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DIWWHODS.mjs +197 -0
  65. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DwFGEW4B.mjs +143 -0
  66. package/dist/shared/{index.vue_vue_type_script_setup_true_lang-DoL8xnpo.mjs → index.vue_vue_type_script_setup_true_lang-IyZesuKm.mjs} +9 -9
  67. package/dist/shared/index.vue_vue_type_script_setup_true_lang-ccFLNRry.cjs +1 -0
  68. package/dist/shared/index.vue_vue_type_style_index_0_lang-B1FgJZbw.mjs +148 -0
  69. package/dist/shared/index.vue_vue_type_style_index_0_lang-DHK86rdP.cjs +1 -0
  70. package/dist/shared/index.vue_vue_type_style_index_0_lang-DVXf-yUs.cjs +1 -0
  71. package/dist/shared/{index.vue_vue_type_style_index_0_lang-BJXS2dVf.mjs → index.vue_vue_type_style_index_0_lang-DsOg_Rum.mjs} +19 -17
  72. package/dist/shared/utils-BjEXwY3L.cjs +1 -0
  73. package/dist/shared/utils-DoyI5oM8.mjs +148 -0
  74. package/index.d.ts +113 -56
  75. package/package.json +489 -483
  76. package/qy-alert/index.d.ts +64 -64
  77. package/qy-autocomplete/index.d.ts +5 -5
  78. package/qy-avatar/index.d.ts +67 -67
  79. package/qy-badge/index.d.ts +63 -63
  80. package/qy-card/index.d.ts +64 -64
  81. package/qy-cascader/index.d.ts +198 -198
  82. package/qy-collapse/index.d.ts +59 -59
  83. package/qy-collapse-item/index.d.ts +45 -45
  84. package/qy-descriptions/index.d.ts +47 -47
  85. package/qy-descriptions-item/index.d.ts +46 -46
  86. package/qy-dialog/index.d.ts +63 -63
  87. package/qy-divider/index.d.ts +53 -53
  88. package/qy-drawer/index.d.ts +55 -55
  89. package/qy-empty/index.d.ts +51 -51
  90. package/qy-file-picker/index.d.ts +4 -1
  91. package/qy-iframe/index.d.ts +66 -66
  92. package/qy-image/index.d.ts +28 -28
  93. package/qy-image-preview/index.d.ts +20 -20
  94. package/qy-image-upload/index.d.ts +69 -12
  95. package/qy-input/index.d.ts +76 -18
  96. package/qy-input-number/index.d.ts +64 -30
  97. package/qy-input-tag/index.d.ts +69 -0
  98. package/qy-link/index.d.ts +69 -69
  99. package/qy-loading/index.d.ts +25 -25
  100. package/qy-menu-actions/index.d.ts +29 -29
  101. package/qy-money-input/index.d.ts +87 -12
  102. package/qy-progress/index.d.ts +74 -74
  103. package/qy-result/index.d.ts +64 -64
  104. package/qy-scrollbar/index.d.ts +85 -85
  105. package/qy-skeleton/index.d.ts +54 -54
  106. package/qy-skeleton-item/index.d.ts +48 -48
  107. package/qy-step/index.d.ts +55 -55
  108. package/qy-steps/index.d.ts +62 -62
  109. package/qy-tab-pane/index.d.ts +40 -40
  110. package/qy-table-column-settings/index.d.ts +18 -18
  111. package/qy-tabs/index.d.ts +84 -84
  112. package/qy-tree/index.d.ts +132 -132
  113. package/qy-tree-select/index.d.ts +123 -123
  114. package/qy-upload/index.d.ts +99 -5
  115. package/dist/shared/index-BkX9xlbI.cjs +0 -1
  116. package/dist/shared/index-C_1KP3l9.mjs +0 -129
  117. package/dist/shared/index-Dw5upK-A.cjs +0 -1
  118. package/dist/shared/index-fh9l84rU.mjs +0 -3541
  119. package/dist/shared/index.vue_vue_type_script_setup_true_lang-5gku7Zwv.cjs +0 -1
  120. package/dist/shared/index.vue_vue_type_style_index_0_lang-B0CXLnL1.mjs +0 -132
  121. package/dist/shared/index.vue_vue_type_style_index_0_lang-DccRGtZE.cjs +0 -1
  122. package/dist/shared/index.vue_vue_type_style_index_0_lang-M0qKRXd2.cjs +0 -1
  123. package/dist/shared/utils-D2KAQCCB.cjs +0 -1
  124. package/dist/shared/utils-DUntDntI.mjs +0 -112
  125. /package/dist/shared/{index.vue_vue_type_script_setup_true_lang-q37rBg6Z.mjs → index.vue_vue_type_script_setup_true_lang-CGsXVhJy.mjs} +0 -0
  126. /package/dist/shared/{index.vue_vue_type_script_setup_true_lang-CglCPcj-.cjs → index.vue_vue_type_script_setup_true_lang-Dk83TGiU.cjs} +0 -0
@@ -1,66 +1,66 @@
1
- import type {
2
- ComponentOptionsMixin,
3
- DefineComponent,
4
- Plugin,
5
- PublicProps
6
- } from 'vue'
7
- import type { StyleValue } from 'vue'
8
-
9
- export type QyIframeLoading = 'eager' | 'lazy'
10
- export type QyIframeReferrerPolicy =
11
- | 'no-referrer'
12
- | 'no-referrer-when-downgrade'
13
- | 'origin'
14
- | 'origin-when-cross-origin'
15
- | 'same-origin'
16
- | 'strict-origin'
17
- | 'strict-origin-when-cross-origin'
18
- | 'unsafe-url'
19
-
20
- export interface QyIframeProps {
21
- src: string
22
- title: string
23
- reloadKey?: string | number
24
- loading?: QyIframeLoading
25
- sandbox?: string
26
- allow?: string
27
- referrerPolicy?: QyIframeReferrerPolicy
28
- allowFullscreen?: boolean
29
- }
30
-
31
- export interface QyIframeAttrs {
32
- tabindex?: string | number
33
- class?: unknown
34
- style?: StyleValue
35
- id?: string
36
- role?: string
37
- [key: `data-${string}`]: unknown
38
- [key: `aria-${string}`]: unknown
39
- }
40
-
41
- export type QyIframeEmits = {
42
- load: () => unknown
43
- error: () => unknown
44
- }
45
-
46
- type QyIframeComponentProps = QyIframeProps & QyIframeAttrs & {
47
- onLoad?: QyIframeEmits['load']
48
- onError?: QyIframeEmits['error']
49
- }
50
-
51
- declare const QyIframe: DefineComponent<
52
- QyIframeProps,
53
- {},
54
- {},
55
- {},
56
- {},
57
- ComponentOptionsMixin,
58
- ComponentOptionsMixin,
59
- QyIframeEmits,
60
- string,
61
- PublicProps,
62
- QyIframeComponentProps
63
- > & Plugin
64
-
65
- export { QyIframe }
66
- export default QyIframe
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin,
5
+ PublicProps
6
+ } from 'vue'
7
+ import type { StyleValue } from 'vue'
8
+
9
+ export type QyIframeLoading = 'eager' | 'lazy'
10
+ export type QyIframeReferrerPolicy =
11
+ | 'no-referrer'
12
+ | 'no-referrer-when-downgrade'
13
+ | 'origin'
14
+ | 'origin-when-cross-origin'
15
+ | 'same-origin'
16
+ | 'strict-origin'
17
+ | 'strict-origin-when-cross-origin'
18
+ | 'unsafe-url'
19
+
20
+ export interface QyIframeProps {
21
+ src: string
22
+ title: string
23
+ reloadKey?: string | number
24
+ loading?: QyIframeLoading
25
+ sandbox?: string
26
+ allow?: string
27
+ referrerPolicy?: QyIframeReferrerPolicy
28
+ allowFullscreen?: boolean
29
+ }
30
+
31
+ export interface QyIframeAttrs {
32
+ tabindex?: string | number
33
+ class?: unknown
34
+ style?: StyleValue
35
+ id?: string
36
+ role?: string
37
+ [key: `data-${string}`]: unknown
38
+ [key: `aria-${string}`]: unknown
39
+ }
40
+
41
+ export type QyIframeEmits = {
42
+ load: () => unknown
43
+ error: () => unknown
44
+ }
45
+
46
+ type QyIframeComponentProps = QyIframeProps & QyIframeAttrs & {
47
+ onLoad?: QyIframeEmits['load']
48
+ onError?: QyIframeEmits['error']
49
+ }
50
+
51
+ declare const QyIframe: DefineComponent<
52
+ QyIframeProps,
53
+ {},
54
+ {},
55
+ {},
56
+ {},
57
+ ComponentOptionsMixin,
58
+ ComponentOptionsMixin,
59
+ QyIframeEmits,
60
+ string,
61
+ PublicProps,
62
+ QyIframeComponentProps
63
+ > & Plugin
64
+
65
+ export { QyIframe }
66
+ export default QyIframe
@@ -1,28 +1,28 @@
1
- import type { DefineComponent, Plugin } from 'vue'
2
-
3
- export type QyImageFit = 'fill' | 'contain' | 'cover' | 'none' | 'scale-down'
4
-
5
- export type QyImageCompressor =
6
- | boolean
7
- | {
8
- w?: number
9
- h?: number
10
- q?: number
11
- }
12
-
13
- declare const QyImage: DefineComponent<{
14
- src?: string
15
- width?: number | string
16
- height?: number | string
17
- size?: number
18
- fit?: QyImageFit
19
- placeholder?: boolean
20
- lazy?: boolean
21
- compressor?: QyImageCompressor
22
- preview?: boolean
23
- previewList?: string[]
24
- initialIndex?: number
25
- }> &
26
- Plugin
27
-
28
- export default QyImage
1
+ import type { DefineComponent, Plugin } from 'vue'
2
+
3
+ export type QyImageFit = 'fill' | 'contain' | 'cover' | 'none' | 'scale-down'
4
+
5
+ export type QyImageCompressor =
6
+ | boolean
7
+ | {
8
+ w?: number
9
+ h?: number
10
+ q?: number
11
+ }
12
+
13
+ declare const QyImage: DefineComponent<{
14
+ src?: string
15
+ width?: number | string
16
+ height?: number | string
17
+ size?: number
18
+ fit?: QyImageFit
19
+ placeholder?: boolean
20
+ lazy?: boolean
21
+ compressor?: QyImageCompressor
22
+ preview?: boolean
23
+ previewList?: string[]
24
+ initialIndex?: number
25
+ }> &
26
+ Plugin
27
+
28
+ export default QyImage
@@ -1,20 +1,20 @@
1
- import type { DefineComponent, Plugin } from 'vue'
2
-
3
- declare const QyImagePreview: DefineComponent<{
4
- open?: boolean
5
- urlList?: string[]
6
- initialIndex?: number
7
- hideOnClickModal?: boolean
8
- }> &
9
- Plugin
10
-
11
- export function openQyImagePreview(options: {
12
- url?: string
13
- urlList?: string[]
14
- initialIndex?: number
15
- hideOnClickModal?: boolean
16
- }): {
17
- close(): void
18
- }
19
-
20
- export default QyImagePreview
1
+ import type { DefineComponent, Plugin } from 'vue'
2
+
3
+ declare const QyImagePreview: DefineComponent<{
4
+ open?: boolean
5
+ urlList?: string[]
6
+ initialIndex?: number
7
+ hideOnClickModal?: boolean
8
+ }> &
9
+ Plugin
10
+
11
+ export function openQyImagePreview(options: {
12
+ url?: string
13
+ urlList?: string[]
14
+ initialIndex?: number
15
+ hideOnClickModal?: boolean
16
+ }): {
17
+ close(): void
18
+ }
19
+
20
+ export default QyImagePreview
@@ -1,12 +1,69 @@
1
- import type { DefineComponent, Plugin } from 'vue'
2
-
3
- /**
4
- * QyImageUpload 单组件入口类型声明。
5
- *
6
- * 这里同时声明 DefineComponent Plugin:
7
- * - DefineComponent 用于模板、TSX 或局部 components 注册时获得组件类型。
8
- * - Plugin 用于 app.use(QyImageUpload) 时通过 Vue 插件类型校验。
9
- */
10
- declare const QyImageUpload: DefineComponent<any, any, any> & Plugin
11
-
12
- export default QyImageUpload
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin
5
+ } from 'vue'
6
+ import type { QyUploadRequest, QyUploadValue } from '../qy-upload'
7
+
8
+ export type QyImageUploadMode = 'default' | 'voucher'
9
+
10
+ export interface QyImageUploadProps {
11
+ modelValue?: string | string[]
12
+ api?: string
13
+ name?: string
14
+ disabled?: boolean
15
+ multiple?: boolean
16
+ /** @deprecated 旧 CopyImgUpload 凭证桥接;新页面使用普通图片配置。 */
17
+ mode?: QyImageUploadMode
18
+ /** @deprecated 旧 CopyImgUpload 凭证桥接;新页面使用普通图片配置。 */
19
+ voucher?: boolean
20
+ fileType?: string[]
21
+ fileSize?: number
22
+ isShowTip?: boolean
23
+ limit?: number
24
+ tokenKey?: string
25
+ supportVideo?: boolean
26
+ size?: string
27
+ disableDrag?: boolean
28
+ showPasteInput?: boolean
29
+ pastePlaceholder?: string
30
+ callBack?: (value: QyUploadValue) => void
31
+ extraData?: Record<string, unknown>
32
+ uploadRequest?: QyUploadRequest
33
+ }
34
+
35
+ export interface QyImageUploadExposed {
36
+ openFileDialog(): void
37
+ clearFiles(): void
38
+ getPathList(): string[]
39
+ /** @deprecated 旧 CopyImgUpload 读值桥接。 */
40
+ getFullPathList(): string[]
41
+ /** @deprecated 旧 CopyImgUpload 读值桥接。 */
42
+ readonly fullPathList: string[]
43
+ readonly pathList: string[]
44
+ getValue(): string | string[]
45
+ }
46
+
47
+ export type QyImageUploadEmits = {
48
+ 'update:modelValue': (value: string | string[]) => void
49
+ change: (value: string | string[]) => void
50
+ success: (value: string | string[], response: unknown) => void
51
+ error: (error: unknown) => void
52
+ remove: (file: unknown, files: unknown[]) => void
53
+ /** @deprecated 旧 CopyImgUpload 成功通知桥接。 */
54
+ updateImg: (url: string) => void
55
+ }
56
+
57
+ declare const QyImageUpload: DefineComponent<
58
+ QyImageUploadProps,
59
+ QyImageUploadExposed,
60
+ {},
61
+ {},
62
+ {},
63
+ ComponentOptionsMixin,
64
+ ComponentOptionsMixin,
65
+ QyImageUploadEmits
66
+ > &
67
+ Plugin
68
+
69
+ export default QyImageUpload
@@ -1,21 +1,79 @@
1
- import type { InputAutoSize, InputProps, InputType } from 'element-plus'
2
- import type { DefineComponent, Plugin } from 'vue'
3
-
4
- export type QyInputValue = string
5
- export type QyInputModelValue = string | number | null | undefined
6
- export type QyInputType = InputType
7
- export type QyInputSize = 'small' | 'default' | 'large'
8
- export type QyInputTrimMode = 'none' | 'blur' | 'change'
9
-
10
- export interface QyInputProps
11
- extends Omit<InputProps, 'modelValue' | 'type' | 'size' | 'autosize'> {
12
- modelValue?: QyInputModelValue
13
- type?: QyInputType
14
- size?: QyInputSize
15
- autosize?: InputAutoSize
16
- removeSpace?: boolean
17
- trimMode?: QyInputTrimMode
18
- }
1
+ import type { Component, DefineComponent, Plugin, StyleValue } from 'vue'
2
+
3
+ export type QyInputValue = string
4
+ export type QyInputModelValue = string | number | null | undefined
5
+ export type QyInputType =
6
+ | 'text'
7
+ | 'textarea'
8
+ | 'number'
9
+ | 'password'
10
+ | 'email'
11
+ | 'search'
12
+ | 'tel'
13
+ | 'url'
14
+ | (string & {})
15
+ export type QyInputSize = 'small' | 'default' | 'large'
16
+ export type QyInputTrimMode = 'none' | 'blur' | 'change'
17
+ export type QyInputAutoSize =
18
+ | {
19
+ minRows?: number
20
+ maxRows?: number
21
+ }
22
+ | boolean
23
+ export type QyInputIcon = string | Component
24
+ export type QyInputInputMode =
25
+ | 'none'
26
+ | 'text'
27
+ | 'tel'
28
+ | 'url'
29
+ | 'email'
30
+ | 'numeric'
31
+ | 'decimal'
32
+ | 'search'
33
+ export type QyInputModelModifiers = {
34
+ lazy?: true
35
+ number?: true
36
+ trim?: true
37
+ }
38
+ export type QyInputStyle = StyleValue
39
+
40
+ export interface QyInputProps {
41
+ id?: string
42
+ disabled?: boolean
43
+ modelValue?: QyInputModelValue
44
+ modelModifiers?: QyInputModelModifiers
45
+ maxlength?: string | number
46
+ minlength?: string | number
47
+ type?: QyInputType
48
+ size?: QyInputSize
49
+ resize?: 'none' | 'both' | 'horizontal' | 'vertical'
50
+ autosize?: QyInputAutoSize
51
+ autocomplete?: string
52
+ formatter?: (value: string) => string
53
+ parser?: (value: string) => string
54
+ placeholder?: string
55
+ form?: string
56
+ readonly?: boolean
57
+ clearable?: boolean
58
+ clearIcon?: QyInputIcon
59
+ showPassword?: boolean
60
+ showWordLimit?: boolean
61
+ wordLimitPosition?: 'inside' | 'outside'
62
+ suffixIcon?: QyInputIcon
63
+ prefixIcon?: QyInputIcon
64
+ containerRole?: string
65
+ tabindex?: string | number
66
+ validateEvent?: boolean
67
+ inputStyle?: QyInputStyle
68
+ autofocus?: boolean
69
+ rows?: number
70
+ ariaLabel?: string
71
+ inputmode?: QyInputInputMode
72
+ name?: string
73
+ countGraphemes?: (value: string) => number
74
+ removeSpace?: boolean
75
+ trimMode?: QyInputTrimMode
76
+ }
19
77
 
20
78
  export type QyInputEmits = {
21
79
  'update:modelValue': (value: QyInputValue) => void
@@ -1,21 +1,35 @@
1
- import type { InputNumberProps } from 'element-plus'
2
- import type { DefineComponent, Plugin } from 'vue'
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin,
5
+ PublicProps,
6
+ SlotsType
7
+ } from 'vue'
3
8
 
4
9
  export type QyInputNumberValue = number | null | undefined
5
10
  export type QyInputNumberClearValue = 'min' | 'max' | number | null
6
- export type QyInputNumberControlsPosition = '' | 'right'
7
- export type QyInputNumberSize = 'small' | 'default' | 'large'
8
-
9
- export interface QyInputNumberProps
10
- extends Omit<
11
- InputNumberProps,
12
- 'modelValue' | 'valueOnClear' | 'controlsPosition' | 'size'
13
- > {
14
- modelValue?: QyInputNumberValue
15
- valueOnClear?: QyInputNumberClearValue
16
- controlsPosition?: QyInputNumberControlsPosition
17
- size?: QyInputNumberSize
18
- }
11
+ export type QyInputNumberControlsPosition = '' | 'right'
12
+ export type QyInputNumberSize = 'small' | 'default' | 'large'
13
+
14
+ export interface QyInputNumberProps {
15
+ id?: string
16
+ step?: number
17
+ stepStrictly?: boolean
18
+ max?: number
19
+ min?: number
20
+ modelValue?: QyInputNumberValue
21
+ readonly?: boolean
22
+ disabled?: boolean
23
+ size?: QyInputNumberSize
24
+ controls?: boolean
25
+ controlsPosition?: QyInputNumberControlsPosition
26
+ valueOnClear?: QyInputNumberClearValue
27
+ name?: string
28
+ placeholder?: string
29
+ precision?: number
30
+ validateEvent?: boolean
31
+ ariaLabel?: string
32
+ }
19
33
 
20
34
  export type QyInputNumberEmits = {
21
35
  'update:modelValue': (value: QyInputNumberValue) => void
@@ -25,21 +39,41 @@ export type QyInputNumberEmits = {
25
39
  blur: (event: FocusEvent) => void
26
40
  }
27
41
 
28
- export interface QyInputNumberExposed {
29
- focus(): void
30
- blur(): void
31
- }
32
-
33
- declare const QyInputNumber: DefineComponent<
34
- QyInputNumberProps,
35
- QyInputNumberExposed,
36
- {},
37
- {},
38
- {},
39
- {},
40
- {},
41
- QyInputNumberEmits
42
- > & Plugin
42
+ export interface QyInputNumberExposed {
43
+ focus(): void
44
+ blur(): void
45
+ }
46
+
47
+ export interface QyInputNumberSlots {
48
+ prefix?: () => unknown
49
+ suffix?: () => unknown
50
+ 'increase-icon'?: () => unknown
51
+ 'decrease-icon'?: () => unknown
52
+ }
53
+
54
+ type QyInputNumberComponentProps = QyInputNumberProps & {
55
+ 'onUpdate:modelValue'?: QyInputNumberEmits['update:modelValue']
56
+ onInput?: QyInputNumberEmits['input']
57
+ onChange?: QyInputNumberEmits['change']
58
+ onFocus?: QyInputNumberEmits['focus']
59
+ onBlur?: QyInputNumberEmits['blur']
60
+ }
61
+
62
+ declare const QyInputNumber: DefineComponent<
63
+ QyInputNumberProps,
64
+ QyInputNumberExposed,
65
+ {},
66
+ {},
67
+ {},
68
+ ComponentOptionsMixin,
69
+ ComponentOptionsMixin,
70
+ QyInputNumberEmits,
71
+ string,
72
+ PublicProps,
73
+ QyInputNumberComponentProps,
74
+ {},
75
+ SlotsType<QyInputNumberSlots>
76
+ > & Plugin
43
77
 
44
78
  export { QyInputNumber }
45
79
  export default QyInputNumber
@@ -0,0 +1,69 @@
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin
5
+ } from 'vue'
6
+ import type { QyTagEffect, QyTagTone } from '../qy-tag'
7
+
8
+ export type QyInputTagModelValue = string[]
9
+ export type QyInputTagTone = QyTagTone
10
+ export type QyInputTagEffect = QyTagEffect
11
+ export type QyInputTagSize = 'small' | 'default' | 'large'
12
+ export type QyInputTagTrigger = 'enter' | 'space'
13
+
14
+ export interface QyInputTagProps {
15
+ modelValue?: QyInputTagModelValue
16
+ max?: number
17
+ trigger?: QyInputTagTrigger
18
+ tagTone?: QyInputTagTone
19
+ tagEffect?: QyInputTagEffect
20
+ size?: QyInputTagSize
21
+ clearable?: boolean
22
+ disabled?: boolean
23
+ readonly?: boolean
24
+ placeholder?: string
25
+ autofocus?: boolean
26
+ validateEvent?: boolean
27
+ id?: string
28
+ tabindex?: string | number
29
+ maxlength?: string | number
30
+ minlength?: string | number
31
+ autocomplete?: string
32
+ ariaLabel?: string
33
+ }
34
+
35
+ export interface QyInputTagSlots {
36
+ tag?: (props: { value: string; index: number }) => unknown
37
+ prefix?: () => unknown
38
+ suffix?: () => unknown
39
+ }
40
+
41
+ export type QyInputTagEmits = {
42
+ 'update:modelValue': (value: QyInputTagModelValue) => void
43
+ change: (value: QyInputTagModelValue) => void
44
+ input: (value: string) => void
45
+ add: (value: string) => void
46
+ remove: (value: string, index: number) => void
47
+ clear: () => void
48
+ focus: (event: FocusEvent) => void
49
+ blur: (event: FocusEvent) => void
50
+ }
51
+
52
+ export interface QyInputTagExposed {
53
+ focus(): void
54
+ blur(): void
55
+ }
56
+
57
+ declare const QyInputTag: DefineComponent<
58
+ QyInputTagProps,
59
+ QyInputTagExposed,
60
+ {},
61
+ {},
62
+ {},
63
+ ComponentOptionsMixin,
64
+ ComponentOptionsMixin,
65
+ QyInputTagEmits
66
+ > & Plugin
67
+
68
+ export { QyInputTag }
69
+ export default QyInputTag