@qynpm/ui 1.0.25 → 1.0.27

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/README.md +313 -27
  2. package/dist/index.cjs +10 -4
  3. package/dist/index.mjs +69 -42
  4. package/dist/qy-action-bar/index.cjs +1 -1
  5. package/dist/qy-action-bar/index.mjs +1 -1
  6. package/dist/qy-alert/index.cjs +1 -0
  7. package/dist/qy-alert/index.mjs +7 -0
  8. package/dist/qy-avatar/index.cjs +1 -0
  9. package/dist/qy-avatar/index.mjs +7 -0
  10. package/dist/qy-badge/index.cjs +1 -0
  11. package/dist/qy-badge/index.mjs +7 -0
  12. package/dist/qy-button/index.cjs +1 -1
  13. package/dist/qy-button/index.mjs +1 -1
  14. package/dist/qy-card/index.cjs +1 -0
  15. package/dist/qy-card/index.mjs +7 -0
  16. package/dist/qy-cascader/index.cjs +1 -0
  17. package/dist/qy-cascader/index.mjs +7 -0
  18. package/dist/qy-checkbox/index.cjs +1 -1
  19. package/dist/qy-checkbox/index.mjs +1 -1
  20. package/dist/qy-checkbox-group/index.cjs +1 -1
  21. package/dist/qy-checkbox-group/index.mjs +1 -1
  22. package/dist/qy-collapse/index.cjs +1 -0
  23. package/dist/qy-collapse/index.mjs +7 -0
  24. package/dist/qy-collapse-item/index.cjs +1 -0
  25. package/dist/qy-collapse-item/index.mjs +7 -0
  26. package/dist/qy-descriptions/index.cjs +1 -0
  27. package/dist/qy-descriptions/index.mjs +7 -0
  28. package/dist/qy-descriptions-item/index.cjs +1 -0
  29. package/dist/qy-descriptions-item/index.mjs +7 -0
  30. package/dist/qy-dialog/index.cjs +1 -1
  31. package/dist/qy-dialog/index.mjs +1 -1
  32. package/dist/qy-divider/index.cjs +1 -0
  33. package/dist/qy-divider/index.mjs +7 -0
  34. package/dist/qy-dropdown/index.cjs +1 -1
  35. package/dist/qy-dropdown/index.mjs +1 -1
  36. package/dist/qy-empty/index.cjs +1 -0
  37. package/dist/qy-empty/index.mjs +7 -0
  38. package/dist/qy-file-picker/index.cjs +1 -1
  39. package/dist/qy-file-picker/index.mjs +1 -1
  40. package/dist/qy-form-section/index.cjs +1 -1
  41. package/dist/qy-form-section/index.mjs +2 -2
  42. package/dist/qy-image/index.cjs +1 -1
  43. package/dist/qy-image/index.mjs +1 -1
  44. package/dist/qy-image-upload/index.cjs +1 -1
  45. package/dist/qy-image-upload/index.mjs +1 -1
  46. package/dist/qy-input-number/index.cjs +1 -1
  47. package/dist/qy-input-number/index.mjs +3 -4
  48. package/dist/qy-legacy-selection-dialog/index.cjs +1 -1
  49. package/dist/qy-legacy-selection-dialog/index.mjs +2 -2
  50. package/dist/qy-link/index.cjs +1 -0
  51. package/dist/qy-link/index.mjs +7 -0
  52. package/dist/qy-menu-actions/index.cjs +1 -1
  53. package/dist/qy-menu-actions/index.mjs +1 -1
  54. package/dist/qy-money-input/index.cjs +1 -1
  55. package/dist/qy-money-input/index.mjs +1 -1
  56. package/dist/qy-popover/index.cjs +1 -1
  57. package/dist/qy-popover/index.mjs +1 -1
  58. package/dist/qy-progress/index.cjs +1 -0
  59. package/dist/qy-progress/index.mjs +7 -0
  60. package/dist/qy-radio/index.cjs +1 -1
  61. package/dist/qy-radio/index.mjs +1 -1
  62. package/dist/qy-radio-group/index.cjs +1 -1
  63. package/dist/qy-radio-group/index.mjs +1 -1
  64. package/dist/qy-record-quote-search/index.cjs +1 -1
  65. package/dist/qy-record-quote-search/index.mjs +1 -1
  66. package/dist/qy-remark-image/index.cjs +1 -1
  67. package/dist/qy-remark-image/index.mjs +1 -1
  68. package/dist/qy-remote-select/index.cjs +1 -1
  69. package/dist/qy-remote-select/index.mjs +1 -1
  70. package/dist/qy-scrollbar/index.cjs +1 -0
  71. package/dist/qy-scrollbar/index.mjs +7 -0
  72. package/dist/qy-search-input/index.cjs +1 -1
  73. package/dist/qy-search-input/index.mjs +1 -1
  74. package/dist/qy-select/index.cjs +1 -1
  75. package/dist/qy-select/index.mjs +1 -1
  76. package/dist/qy-selection-dialog/index.cjs +1 -1
  77. package/dist/qy-selection-dialog/index.mjs +1 -1
  78. package/dist/qy-skeleton/index.cjs +1 -0
  79. package/dist/qy-skeleton/index.mjs +7 -0
  80. package/dist/qy-skeleton-item/index.cjs +1 -0
  81. package/dist/qy-skeleton-item/index.mjs +7 -0
  82. package/dist/qy-step/index.cjs +1 -0
  83. package/dist/qy-step/index.mjs +7 -0
  84. package/dist/qy-steps/index.cjs +1 -0
  85. package/dist/qy-steps/index.mjs +7 -0
  86. package/dist/qy-switch/index.cjs +1 -1
  87. package/dist/qy-switch/index.mjs +1 -1
  88. package/dist/qy-tab-pane/index.cjs +1 -0
  89. package/dist/qy-tab-pane/index.mjs +7 -0
  90. package/dist/qy-table-column-settings/index.cjs +1 -1
  91. package/dist/qy-table-column-settings/index.mjs +1 -1
  92. package/dist/qy-tabs/index.cjs +1 -0
  93. package/dist/qy-tabs/index.mjs +7 -0
  94. package/dist/qy-tag/index.cjs +1 -1
  95. package/dist/qy-tag/index.mjs +1 -1
  96. package/dist/qy-tooltip/index.cjs +1 -1
  97. package/dist/qy-tooltip/index.mjs +1 -1
  98. package/dist/qy-tree/index.cjs +1 -0
  99. package/dist/qy-tree/index.mjs +7 -0
  100. package/dist/qy-tree-select/index.cjs +1 -1
  101. package/dist/qy-tree-select/index.mjs +5 -4
  102. package/dist/qy-upload/index.cjs +1 -1
  103. package/dist/qy-upload/index.mjs +1 -1
  104. package/dist/shared/{index-9v7CIwzO.cjs → index-B9RYNZUh.cjs} +1 -1
  105. package/dist/shared/{index-B7uyWUhS.mjs → index-C7V-LeFg.mjs} +1 -1
  106. package/dist/shared/{index-Du2IqeCI.mjs → index-CYn7TvRx.mjs} +1 -1
  107. package/dist/shared/index-CnZNcnTs.cjs +1 -0
  108. package/dist/shared/{index-DmhpD4Cp.cjs → index-CpvFUems.cjs} +1 -1
  109. package/dist/shared/{index-C1YwUATr.cjs → index-DEkng5wh.cjs} +1 -1
  110. package/dist/shared/index-DHJf8Zto.mjs +377 -0
  111. package/dist/shared/index-DjyaOKUS.cjs +1 -0
  112. package/dist/shared/{index-DvQdcj7u.mjs → index-T9Om5Csd.mjs} +1197 -1134
  113. package/dist/shared/{index-DZroPZ8B.mjs → index-hEy-3mcr.mjs} +8 -8
  114. package/dist/shared/index.vue_vue_type_script_lang-69zSOotQ.mjs +47 -0
  115. package/dist/shared/index.vue_vue_type_script_lang-BGAdXWIL.mjs +78 -0
  116. package/dist/shared/index.vue_vue_type_script_lang-BO9Ju_i0.cjs +1 -0
  117. package/dist/shared/index.vue_vue_type_script_lang-Bc3tktk9.cjs +1 -0
  118. package/dist/shared/index.vue_vue_type_script_lang-BkoqbceR.cjs +1 -0
  119. package/dist/shared/index.vue_vue_type_script_lang-C4JHCuXz.mjs +54 -0
  120. package/dist/shared/index.vue_vue_type_script_lang-C9X0V5AK.mjs +71 -0
  121. package/dist/shared/index.vue_vue_type_script_lang-CIOi2ahp.cjs +1 -0
  122. package/dist/shared/index.vue_vue_type_script_lang-CZK0hDYa.mjs +77 -0
  123. package/dist/shared/index.vue_vue_type_script_lang-Cv4Pf58E.cjs +1 -0
  124. package/dist/shared/index.vue_vue_type_script_lang-CwrbII5c.cjs +1 -0
  125. package/dist/shared/index.vue_vue_type_script_lang-D42aRlO2.cjs +1 -0
  126. package/dist/shared/index.vue_vue_type_script_lang-D7b9ABei.mjs +113 -0
  127. package/dist/shared/index.vue_vue_type_script_lang-D7nzeBUR.mjs +35 -0
  128. package/dist/shared/index.vue_vue_type_script_lang-DIKHRo0o.mjs +72 -0
  129. package/dist/shared/index.vue_vue_type_script_lang-DLmUPDR5.cjs +1 -0
  130. package/dist/shared/index.vue_vue_type_script_lang-DMrpLmWN.cjs +1 -0
  131. package/dist/shared/index.vue_vue_type_script_lang-DOOT2grg.mjs +54 -0
  132. package/dist/shared/index.vue_vue_type_script_lang-Dfq7D3mJ.mjs +18 -0
  133. package/dist/shared/index.vue_vue_type_script_lang-DpSaB5eg.cjs +1 -0
  134. package/dist/shared/index.vue_vue_type_script_lang-WJ63_A7F.cjs +1 -0
  135. package/dist/shared/index.vue_vue_type_script_lang-chBiq2cG.mjs +31 -0
  136. package/dist/shared/index.vue_vue_type_script_setup_true_lang-4KZSABSM.cjs +1 -0
  137. package/dist/shared/index.vue_vue_type_script_setup_true_lang-B4JrNUDc.mjs +43 -0
  138. package/dist/shared/index.vue_vue_type_script_setup_true_lang-BJe7Uo6S.mjs +42 -0
  139. package/dist/shared/index.vue_vue_type_script_setup_true_lang-BWi3g3mb.cjs +1 -0
  140. package/dist/shared/index.vue_vue_type_script_setup_true_lang-Bdz9oDDW.mjs +62 -0
  141. package/dist/shared/index.vue_vue_type_script_setup_true_lang-C96ZaggL.cjs +1 -0
  142. package/dist/shared/{index.vue_vue_type_script_setup_true_lang-CKZHI_y-.mjs → index.vue_vue_type_script_setup_true_lang-CUox3Lm-.mjs} +1 -1
  143. package/dist/shared/index.vue_vue_type_script_setup_true_lang-CmQLfhRo.cjs +1 -0
  144. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DUEhuwGQ.cjs +1 -0
  145. package/dist/shared/{index.vue_vue_type_script_setup_true_lang-C3F8M9sD.cjs → index.vue_vue_type_script_setup_true_lang-DXGjuA2f.cjs} +1 -1
  146. package/dist/shared/{index.vue_vue_type_script_setup_true_lang-N12Nn2uu.mjs → index.vue_vue_type_script_setup_true_lang-DXtovY1E.mjs} +1 -1
  147. package/dist/shared/index.vue_vue_type_script_setup_true_lang-Dd_nKJvH.mjs +19 -0
  148. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DobP199g.mjs +63 -0
  149. package/dist/shared/{index.vue_vue_type_script_setup_true_lang-CsKjCWIN.cjs → index.vue_vue_type_script_setup_true_lang-kje3Rtlw.cjs} +1 -1
  150. package/dist/shared/index.vue_vue_type_style_index_0_lang-B-FeHatv.mjs +98 -0
  151. package/dist/shared/index.vue_vue_type_style_index_0_lang-BXTkWo5P.cjs +1 -0
  152. package/dist/shared/index.vue_vue_type_style_index_0_lang-C1n-zAZh.mjs +67 -0
  153. package/dist/shared/index.vue_vue_type_style_index_0_lang-Cb4yMk-r.cjs +1 -0
  154. package/dist/shared/index.vue_vue_type_style_index_0_lang-Cn3P9d4L.cjs +1 -0
  155. package/dist/shared/index.vue_vue_type_style_index_0_lang-CnL4aeg1.cjs +1 -0
  156. package/dist/shared/index.vue_vue_type_style_index_0_lang-DIMCVnQm.mjs +286 -0
  157. package/dist/shared/index.vue_vue_type_style_index_0_lang-DOfJV2oz.cjs +1 -0
  158. package/dist/shared/index.vue_vue_type_style_index_0_lang-DzfGx6ce.mjs +298 -0
  159. package/dist/shared/index.vue_vue_type_style_index_0_lang-dLpQXf6x.mjs +87 -0
  160. package/index.d.ts +272 -24
  161. package/package.json +128 -2
  162. package/qy-alert/index.d.ts +64 -0
  163. package/qy-autocomplete/index.d.ts +5 -5
  164. package/qy-avatar/index.d.ts +67 -0
  165. package/qy-badge/index.d.ts +63 -0
  166. package/qy-card/index.d.ts +64 -0
  167. package/qy-cascader/index.d.ts +198 -0
  168. package/qy-collapse/index.d.ts +59 -0
  169. package/qy-collapse-item/index.d.ts +45 -0
  170. package/qy-descriptions/index.d.ts +47 -0
  171. package/qy-descriptions-item/index.d.ts +46 -0
  172. package/qy-divider/index.d.ts +53 -0
  173. package/qy-empty/index.d.ts +51 -0
  174. package/qy-image/index.d.ts +28 -28
  175. package/qy-image-preview/index.d.ts +20 -20
  176. package/qy-link/index.d.ts +69 -0
  177. package/qy-menu-actions/index.d.ts +29 -29
  178. package/qy-progress/index.d.ts +74 -0
  179. package/qy-scrollbar/index.d.ts +85 -0
  180. package/qy-skeleton/index.d.ts +54 -0
  181. package/qy-skeleton-item/index.d.ts +48 -0
  182. package/qy-step/index.d.ts +55 -0
  183. package/qy-steps/index.d.ts +62 -0
  184. package/qy-tab-pane/index.d.ts +40 -0
  185. package/qy-table-column-settings/index.d.ts +18 -18
  186. package/qy-tabs/index.d.ts +84 -0
  187. package/qy-tree/index.d.ts +132 -0
  188. package/qy-tree-select/index.d.ts +123 -5
  189. package/dist/shared/index-528z_q7d.cjs +0 -1
  190. package/dist/shared/index.vue_vue_type_script_setup_true_lang-C-Pf9TJ0.mjs +0 -152
  191. package/dist/shared/index.vue_vue_type_script_setup_true_lang-DWS8bsiP.cjs +0 -1
  192. /package/dist/shared/{index-C1p86ezL.cjs → index-BDdhBEFr.cjs} +0 -0
  193. /package/dist/shared/{index-R5B1rjXo.mjs → index-BbDWedqW.mjs} +0 -0
  194. /package/dist/shared/{index-QQkDJv3q.cjs → index-BqV6vW9P.cjs} +0 -0
  195. /package/dist/shared/{index-DrJuMzr1.mjs → index-CUITnlPr.mjs} +0 -0
  196. /package/dist/shared/{index-CuusBxhR.cjs → index-DA3GVIZY.cjs} +0 -0
  197. /package/dist/shared/{index-BYLXkIxS.mjs → index-DEZF-Fkt.mjs} +0 -0
  198. /package/dist/shared/{index-ClUqUsAv.cjs → index-DIs6iPjF.cjs} +0 -0
  199. /package/dist/shared/{index-EGnVOaC9.cjs → index-DMiZy6gD.cjs} +0 -0
  200. /package/dist/shared/{index-Cl5cuyVG.mjs → index-DvA3Wy_F.mjs} +0 -0
  201. /package/dist/shared/{index-BcCZMWAj.cjs → index-PlyLRNmb.cjs} +0 -0
  202. /package/dist/shared/{index-zJN0M-bx.cjs → index-UGOgNLvm.cjs} +0 -0
  203. /package/dist/shared/{index-yf2Ijz_G.mjs → index-WP9Dbscv.mjs} +0 -0
  204. /package/dist/shared/{index-CbCpXtYr.mjs → index-YsBzyp9n.mjs} +0 -0
  205. /package/dist/shared/{index-BTPk2zzq.cjs → index-ceTTRCGJ.cjs} +0 -0
  206. /package/dist/shared/{index-C6jcSQSF.mjs → index-mTWXYnLm.mjs} +0 -0
  207. /package/dist/shared/{index-Cy_Glkc-.mjs → index-seQHtqdh.mjs} +0 -0
  208. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-BZQLyvw8.cjs → index.vue_vue_type_style_index_0_lang-C6urLjSf.cjs} +0 -0
  209. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-ztD-It-2.mjs → index.vue_vue_type_style_index_0_lang-CVxWn-Vs.mjs} +0 -0
  210. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-1cTut9Ql.cjs → index.vue_vue_type_style_index_0_lang-CWz689KH.cjs} +0 -0
  211. /package/dist/shared/{index.vue_vue_type_style_index_0_lang-DSur831A.mjs → index.vue_vue_type_style_index_0_lang-D1kpIund.mjs} +0 -0
@@ -0,0 +1,84 @@
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin,
5
+ PublicProps,
6
+ SlotsType
7
+ } from 'vue'
8
+
9
+ export type QyTabName = string | number
10
+ export type QyTabsType = '' | 'card' | 'border-card'
11
+ export type QyTabsPosition = 'top' | 'right' | 'bottom' | 'left'
12
+ export type QyTabsBeforeLeave = (
13
+ newName: QyTabName,
14
+ oldName: QyTabName
15
+ ) => boolean | void | Promise<boolean | void>
16
+
17
+ export interface QyTabPaneSnapshot {
18
+ readonly name?: QyTabName
19
+ readonly label: string
20
+ readonly disabled: boolean
21
+ readonly closable: boolean
22
+ readonly lazy: boolean
23
+ readonly active: boolean
24
+ readonly index?: string
25
+ }
26
+
27
+ export interface QyTabsProps {
28
+ modelValue?: QyTabName
29
+ defaultValue?: QyTabName
30
+ type?: QyTabsType
31
+ tabPosition?: QyTabsPosition
32
+ stretch?: boolean
33
+ closable?: boolean
34
+ addable?: boolean
35
+ editable?: boolean
36
+ beforeLeave?: QyTabsBeforeLeave
37
+ tabindex?: string | number
38
+ }
39
+
40
+ export interface QyTabsSlots {
41
+ default?: () => unknown
42
+ 'add-icon'?: () => unknown
43
+ }
44
+
45
+ export type QyTabsEmits = {
46
+ 'update:modelValue': (name: QyTabName) => void
47
+ 'tab-change': (name: QyTabName) => void
48
+ 'tab-click': (pane: QyTabPaneSnapshot, event: Event) => void
49
+ 'tab-remove': (name: QyTabName) => void
50
+ 'tab-add': () => void
51
+ edit: (name: QyTabName | undefined, action: 'add' | 'remove') => void
52
+ }
53
+
54
+ type QyTabsComponentProps = QyTabsProps & {
55
+ 'onUpdate:modelValue'?: QyTabsEmits['update:modelValue']
56
+ 'onTab-change'?: QyTabsEmits['tab-change']
57
+ onTabChange?: QyTabsEmits['tab-change']
58
+ 'onTab-click'?: QyTabsEmits['tab-click']
59
+ onTabClick?: QyTabsEmits['tab-click']
60
+ 'onTab-remove'?: QyTabsEmits['tab-remove']
61
+ onTabRemove?: QyTabsEmits['tab-remove']
62
+ 'onTab-add'?: QyTabsEmits['tab-add']
63
+ onTabAdd?: QyTabsEmits['tab-add']
64
+ onEdit?: QyTabsEmits['edit']
65
+ }
66
+
67
+ declare const QyTabs: DefineComponent<
68
+ QyTabsProps,
69
+ {},
70
+ {},
71
+ {},
72
+ {},
73
+ ComponentOptionsMixin,
74
+ ComponentOptionsMixin,
75
+ QyTabsEmits,
76
+ string,
77
+ PublicProps,
78
+ QyTabsComponentProps,
79
+ {},
80
+ SlotsType<QyTabsSlots>
81
+ > & Plugin
82
+
83
+ export { QyTabs }
84
+ export default QyTabs
@@ -0,0 +1,132 @@
1
+ import type {
2
+ Component,
3
+ ComponentOptionsMixin,
4
+ DefineComponent,
5
+ Plugin,
6
+ PublicProps,
7
+ SlotsType
8
+ } from 'vue'
9
+
10
+ export type QyTreeKey = string | number
11
+ export type QyTreeNodeData = Record<string, unknown>
12
+ export type QyTreeDropPosition = 'before' | 'after' | 'inner'
13
+
14
+ export interface QyTreeNodeSnapshot {
15
+ readonly key: QyTreeKey | null
16
+ readonly parentKey: QyTreeKey | null
17
+ readonly data: QyTreeNodeData
18
+ readonly label: string
19
+ readonly level: number
20
+ readonly expanded: boolean
21
+ readonly checked: boolean
22
+ readonly indeterminate: boolean
23
+ readonly disabled: boolean
24
+ readonly leaf: boolean
25
+ readonly visible: boolean
26
+ readonly loading: boolean
27
+ readonly loaded: boolean
28
+ readonly childCount: number
29
+ }
30
+
31
+ export interface QyTreeNodeProps {
32
+ children?: string
33
+ label?: string | ((data: QyTreeNodeData) => string)
34
+ disabled?: string | ((data: QyTreeNodeData) => boolean)
35
+ isLeaf?: string | ((data: QyTreeNodeData) => boolean)
36
+ class?: string | ((data: QyTreeNodeData, node: QyTreeNodeSnapshot) => string | Record<string, boolean>)
37
+ }
38
+
39
+ export interface QyTreeCheckedInfo {
40
+ checkedKeys: QyTreeKey[]
41
+ checkedNodes: QyTreeNodeData[]
42
+ halfCheckedKeys: QyTreeKey[]
43
+ halfCheckedNodes: QyTreeNodeData[]
44
+ }
45
+
46
+ export interface QyTreeProps {
47
+ data?: QyTreeNodeData[]
48
+ emptyText?: string
49
+ nodeKey?: string
50
+ props?: QyTreeNodeProps
51
+ renderAfterExpand?: boolean
52
+ defaultExpandAll?: boolean
53
+ expandOnClickNode?: boolean
54
+ autoExpandParent?: boolean
55
+ defaultExpandedKeys?: QyTreeKey[]
56
+ accordion?: boolean
57
+ indent?: number
58
+ icon?: string | Component
59
+ highlightCurrent?: boolean
60
+ currentNodeKey?: QyTreeKey
61
+ showCheckbox?: boolean
62
+ checkStrictly?: boolean
63
+ checkOnClickNode?: boolean
64
+ checkOnClickLeaf?: boolean
65
+ checkDescendants?: boolean
66
+ defaultCheckedKeys?: QyTreeKey[]
67
+ filterNodeMethod?: (value: unknown, data: QyTreeNodeData, node: QyTreeNodeSnapshot) => boolean
68
+ lazy?: boolean
69
+ load?: (node: QyTreeNodeSnapshot, resolve: (data: QyTreeNodeData[]) => void, reject: () => void) => void
70
+ draggable?: boolean
71
+ allowDrag?: (node: QyTreeNodeSnapshot) => boolean
72
+ allowDrop?: (draggingNode: QyTreeNodeSnapshot, dropNode: QyTreeNodeSnapshot, position: QyTreeDropPosition) => boolean
73
+ }
74
+
75
+ export interface QyTreeSlots {
76
+ default?: (props: { data: QyTreeNodeData; node: QyTreeNodeSnapshot }) => unknown
77
+ empty?: () => unknown
78
+ }
79
+
80
+ export type QyTreeEmits = {
81
+ 'node-click': (data: QyTreeNodeData, node: QyTreeNodeSnapshot, event: MouseEvent) => void
82
+ 'node-contextmenu': (event: Event, data: QyTreeNodeData, node: QyTreeNodeSnapshot) => void
83
+ 'current-change': (data: QyTreeNodeData | null, node: QyTreeNodeSnapshot | null) => void
84
+ 'node-expand': (data: QyTreeNodeData, node: QyTreeNodeSnapshot) => void
85
+ 'node-collapse': (data: QyTreeNodeData, node: QyTreeNodeSnapshot) => void
86
+ 'check-change': (data: QyTreeNodeData, checked: boolean, indeterminate: boolean) => void
87
+ check: (data: QyTreeNodeData, info: QyTreeCheckedInfo) => void
88
+ 'node-drag-start': (node: QyTreeNodeSnapshot, event: DragEvent) => void
89
+ 'node-drag-enter': (draggingNode: QyTreeNodeSnapshot, dropNode: QyTreeNodeSnapshot, event: DragEvent) => void
90
+ 'node-drag-over': (draggingNode: QyTreeNodeSnapshot, dropNode: QyTreeNodeSnapshot, event: DragEvent) => void
91
+ 'node-drag-leave': (draggingNode: QyTreeNodeSnapshot, dropNode: QyTreeNodeSnapshot, event: DragEvent) => void
92
+ 'node-drag-end': (draggingNode: QyTreeNodeSnapshot, dropNode: QyTreeNodeSnapshot | null, position: QyTreeDropPosition | 'none', event: DragEvent) => void
93
+ 'node-drop': (draggingNode: QyTreeNodeSnapshot, dropNode: QyTreeNodeSnapshot, position: QyTreeDropPosition, event: DragEvent) => void
94
+ }
95
+
96
+ export interface QyTreeRef {
97
+ filter(value: unknown): void
98
+ getNode(value: QyTreeKey | QyTreeNodeData): QyTreeNodeSnapshot | null
99
+ getNodePath(value: QyTreeKey | QyTreeNodeData): QyTreeNodeData[]
100
+ getCheckedKeys(leafOnly?: boolean): QyTreeKey[]
101
+ getCheckedNodes(leafOnly?: boolean, includeHalfChecked?: boolean): QyTreeNodeData[]
102
+ getHalfCheckedKeys(): QyTreeKey[]
103
+ getHalfCheckedNodes(): QyTreeNodeData[]
104
+ setChecked(value: QyTreeKey | QyTreeNodeData, checked: boolean, deep?: boolean): void
105
+ setCheckedKeys(keys: QyTreeKey[], leafOnly?: boolean): void
106
+ setCheckedNodes(nodes: QyTreeNodeData[], leafOnly?: boolean): void
107
+ getCurrentKey(): QyTreeKey | null
108
+ getCurrentNode(): QyTreeNodeData | null
109
+ setCurrentKey(key: QyTreeKey | null, shouldAutoExpandParent?: boolean): void
110
+ setCurrentNode(node: QyTreeNodeData, shouldAutoExpandParent?: boolean): void
111
+ }
112
+
113
+ type QyTreeComponentProps = QyTreeProps & {
114
+ 'onNode-click'?: QyTreeEmits['node-click']
115
+ 'onNode-contextmenu'?: QyTreeEmits['node-contextmenu']
116
+ 'onCurrent-change'?: QyTreeEmits['current-change']
117
+ 'onNode-expand'?: QyTreeEmits['node-expand']
118
+ 'onNode-collapse'?: QyTreeEmits['node-collapse']
119
+ 'onCheck-change'?: QyTreeEmits['check-change']
120
+ onCheck?: QyTreeEmits['check']
121
+ 'onNode-drag-start'?: QyTreeEmits['node-drag-start']
122
+ 'onNode-drag-enter'?: QyTreeEmits['node-drag-enter']
123
+ 'onNode-drag-over'?: QyTreeEmits['node-drag-over']
124
+ 'onNode-drag-leave'?: QyTreeEmits['node-drag-leave']
125
+ 'onNode-drag-end'?: QyTreeEmits['node-drag-end']
126
+ 'onNode-drop'?: QyTreeEmits['node-drop']
127
+ }
128
+
129
+ declare const QyTree: DefineComponent<QyTreeProps, QyTreeRef, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, QyTreeEmits, string, PublicProps, QyTreeComponentProps, {}, SlotsType<QyTreeSlots>> & Plugin
130
+
131
+ export { QyTree }
132
+ export default QyTree
@@ -1,5 +1,123 @@
1
- import type { DefineComponent, Plugin } from 'vue'
2
-
3
- declare const QyTreeSelect: DefineComponent<any, any, any> & Plugin
4
-
5
- export default QyTreeSelect
1
+ import type {
2
+ ComponentOptionsMixin,
3
+ DefineComponent,
4
+ Plugin,
5
+ PublicProps,
6
+ SlotsType
7
+ } from 'vue'
8
+ import type { QyTreeCheckedInfo, QyTreeNodeSnapshot } from '../qy-tree'
9
+
10
+ export type QyTreeSelectPrimitive = string | number | boolean
11
+ export type QyTreeSelectObjectValue = Record<string, unknown>
12
+ export type QyTreeSelectValue = QyTreeSelectPrimitive | QyTreeSelectObjectValue
13
+ export type QyTreeSelectModelValue = QyTreeSelectValue | QyTreeSelectValue[] | null | undefined
14
+ export type QyTreeSelectKey = string | number
15
+ export type QyTreeSelectNodeData = object
16
+ export type QyTreeSelectNodeSnapshot = QyTreeNodeSnapshot
17
+
18
+ export type QyTreeSelectNodeProps = {
19
+ value?: string | ((data: QyTreeSelectNodeData) => unknown)
20
+ label?: string | ((data: QyTreeSelectNodeData) => string | number)
21
+ children?: string | ((data: QyTreeSelectNodeData) => object[] | undefined)
22
+ disabled?: string | ((data: QyTreeSelectNodeData) => boolean)
23
+ isLeaf?: string | ((data: QyTreeSelectNodeData) => boolean)
24
+ class?: string | ((data: QyTreeSelectNodeData, node: QyTreeSelectNodeSnapshot) => string | Record<string, boolean>)
25
+ }
26
+
27
+ export interface QyTreeSelectTagSnapshot {
28
+ readonly value: QyTreeSelectValue
29
+ readonly label: string
30
+ readonly data?: QyTreeSelectNodeData
31
+ readonly closable: boolean
32
+ remove(): void
33
+ }
34
+
35
+ export interface QyTreeSelectProps {
36
+ modelValue?: QyTreeSelectModelValue
37
+ data?: QyTreeSelectNodeData[]
38
+ options?: QyTreeSelectNodeData[]
39
+ labelKey?: string
40
+ valueKey?: string
41
+ childrenKey?: string
42
+ disabledKey?: string
43
+ props?: QyTreeSelectNodeProps
44
+ nodeKey?: string
45
+ placeholder?: string
46
+ disabled?: boolean
47
+ clearable?: boolean
48
+ filterable?: boolean
49
+ filterMethod?: (keyword: string) => void
50
+ remote?: boolean
51
+ remoteMethod?: (keyword: string) => void
52
+ remoteShowSuffix?: boolean
53
+ loading?: boolean
54
+ multiple?: boolean
55
+ multipleLimit?: number
56
+ collapseTags?: boolean
57
+ collapseTagsTooltip?: boolean
58
+ checkStrictly?: boolean
59
+ showCheckbox?: boolean
60
+ defaultExpandAll?: boolean
61
+ renderAfterExpand?: boolean
62
+ expandOnClickNode?: boolean
63
+ checkOnClickNode?: boolean
64
+ checkOnClickLeaf?: boolean
65
+ checkDescendants?: boolean
66
+ defaultExpandedKeys?: QyTreeSelectKey[]
67
+ defaultCheckedKeys?: QyTreeSelectKey[]
68
+ accordion?: boolean
69
+ indent?: number
70
+ highlightCurrent?: boolean
71
+ lazy?: boolean
72
+ load?: (node: QyTreeSelectNodeSnapshot, resolve: (data: QyTreeSelectNodeData[]) => void, reject: () => void) => void
73
+ cacheData?: QyTreeSelectNodeData[]
74
+ filterNodeMethod?: (value: unknown, data: QyTreeSelectNodeData, node: QyTreeSelectNodeSnapshot) => boolean
75
+ size?: 'small' | 'default' | 'large'
76
+ teleported?: boolean
77
+ appendTo?: string | HTMLElement
78
+ fitInputWidth?: boolean
79
+ popperClass?: string
80
+ }
81
+
82
+ export type QyTreeSelectEmits = {
83
+ 'update:modelValue': (value: QyTreeSelectModelValue) => void
84
+ change: (value: QyTreeSelectModelValue) => void
85
+ clear: () => void
86
+ 'visible-change': (visible: boolean) => void
87
+ focus: (event: FocusEvent) => void
88
+ blur: (event: FocusEvent) => void
89
+ 'node-click': (data: QyTreeSelectNodeData, node: QyTreeSelectNodeSnapshot) => void
90
+ 'node-expand': (data: QyTreeSelectNodeData, node: QyTreeSelectNodeSnapshot) => void
91
+ 'node-collapse': (data: QyTreeSelectNodeData, node: QyTreeSelectNodeSnapshot) => void
92
+ 'check-change': (data: QyTreeSelectNodeData, checked: boolean, indeterminate: boolean) => void
93
+ check: (data: QyTreeSelectNodeData, info: QyTreeCheckedInfo) => void
94
+ }
95
+
96
+ export interface QyTreeSelectExposed { focus(): void; blur(): void }
97
+
98
+ export interface QyTreeSelectSlots {
99
+ prefix?: () => unknown
100
+ empty?: () => unknown
101
+ loading?: () => unknown
102
+ default?: (props: { data: QyTreeSelectNodeData; node: QyTreeSelectNodeSnapshot }) => unknown
103
+ tag?: (props: { data: readonly QyTreeSelectTagSnapshot[] }) => unknown
104
+ }
105
+
106
+ type QyTreeSelectComponentProps = QyTreeSelectProps & {
107
+ 'onUpdate:modelValue'?: QyTreeSelectEmits['update:modelValue']
108
+ onChange?: QyTreeSelectEmits['change']
109
+ onClear?: QyTreeSelectEmits['clear']
110
+ 'onVisible-change'?: QyTreeSelectEmits['visible-change']
111
+ onFocus?: QyTreeSelectEmits['focus']
112
+ onBlur?: QyTreeSelectEmits['blur']
113
+ 'onNode-click'?: QyTreeSelectEmits['node-click']
114
+ 'onNode-expand'?: QyTreeSelectEmits['node-expand']
115
+ 'onNode-collapse'?: QyTreeSelectEmits['node-collapse']
116
+ 'onCheck-change'?: QyTreeSelectEmits['check-change']
117
+ onCheck?: QyTreeSelectEmits['check']
118
+ }
119
+
120
+ declare const QyTreeSelect: DefineComponent<QyTreeSelectProps, QyTreeSelectExposed, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, QyTreeSelectEmits, string, PublicProps, QyTreeSelectComponentProps, {}, SlotsType<QyTreeSelectSlots>> & Plugin
121
+
122
+ export { QyTreeSelect }
123
+ export default QyTreeSelect
@@ -1 +0,0 @@
1
- "use strict";const de=require("element-plus"),e=require("vue"),dt=require("@element-plus/icons-vue"),V=require("element-plus"),me=require("./_plugin-vue_export-helper-BHFhmbuH.cjs"),bt=require("./index-DmhpD4Cp.cjs"),kt=require("./index.vue_vue_type_script_setup_true_lang-5gku7Zwv.cjs"),xt=require("clsx"),ft=require("@vueuse/core"),Vt=require("./index-ClUqUsAv.cjs"),St=require("./index-C1p86ezL.cjs"),Ct=require("./index.vue_vue_type_style_index_0_lang-Dm1r1WBK.cjs"),Bt=require("./index.vue_vue_type_style_index_0_lang-BtbAft4t.cjs"),Et=require("./index.vue_vue_type_style_index_0_lang-Q2gFF0PP.cjs"),qt=require("./index-BcCZMWAj.cjs"),Nt=require("./index.vue_vue_type_script_setup_true_lang-C3F8M9sD.cjs"),$t=require("./index-QQkDJv3q.cjs"),It=require("./index.vue_vue_type_script_setup_true_lang-CKp87br2.cjs"),Qt=require("./index-C1YwUATr.cjs"),Mt=require("./index-9v7CIwzO.cjs"),zt=require("./index.vue_vue_type_script_setup_true_lang-CsKjCWIN.cjs"),qe=require("./index-BTPk2zzq.cjs"),pt=require("./index.vue_vue_type_script_setup_true_lang-DWS8bsiP.cjs"),Ve=require("./index-zJN0M-bx.cjs"),Tt=require("./index-EGnVOaC9.cjs"),At=require("./index-CuusBxhR.cjs"),Ft=require("./index.vue_vue_type_style_index_0_lang-1cTut9Ql.cjs"),Rt=require("./index.vue_vue_type_style_index_0_lang-BZQLyvw8.cjs"),D=require("./install-c8il9DQv.cjs"),Pt=require("./utils-D2KAQCCB.cjs");/*! js-cookie v3.0.8 | MIT */function we(o){for(var N=1;N<arguments.length;N++){var O=arguments[N];for(var t in O)t!=="__proto__"&&(o[t]=O[t])}return o}var Dt={read:function(o){return o[0]==='"'&&(o=o.slice(1,-1)),o.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(o){return encodeURIComponent(o).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function Se(o,N){function O(r,R,f){if(!(typeof document>"u")){f=we({},N,f),typeof f.expires=="number"&&(f.expires=new Date(Date.now()+f.expires*864e5)),f.expires&&(f.expires=f.expires.toUTCString()),r=encodeURIComponent(r).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var y="";for(var m in f)f[m]&&(y+="; "+m,f[m]!==!0&&(y+="="+f[m].split(";")[0]));return document.cookie=r+"="+o.write(R,r)+y}}function t(r){if(!(typeof document>"u"||arguments.length&&!r)){for(var R=document.cookie?document.cookie.split("; "):[],f={},y=0;y<R.length;y++){var m=R[y].split("="),E=m.slice(1).join("=");try{var x=decodeURIComponent(m[0]);if(x in f||(f[x]=o.read(E,x)),r===x)break}catch{}}return r?f[r]:f}}return Object.create({set:O,get:t,remove:function(r,R){O(r,"",we({},R,{expires:-1}))},withAttributes:function(r){return Se(this.converter,we({},this.attributes,r))},withConverter:function(r){return Se(we({},this.converter,r),this.attributes)}},{attributes:{value:Object.freeze(N)},converter:{value:Object.freeze(o)}})}var yt=Se(Dt,{path:"/"});const Ot="Admin-Token";function _t(o=Ot){return yt.get(o)}const Ut={class:"qy-upload__hint"},Kt=["placeholder","disabled"],Lt=["src"],jt={key:1,class:"qy-upload__tip"},Ht={class:"error"},Zt={class:"error"},Wt=Object.assign({name:"QyUpload"},{__name:"index",props:{modelValue:{type:[Object,Array,String],default:void 0},defaultValue:{type:Object,default:()=>({files:"",text:""})},valueFormat:{type:String,default:"object"},showText:{type:Boolean,default:!0},showPasteInput:{type:Boolean,default:!1},pastePlaceholder:{type:String,default:"输入文字"},multiple:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},fileType:{type:Array,default:()=>[]},fileSize:{type:Number,default:10},limit:{type:Number,default:9},isShowTip:{type:Boolean,default:!1},api:{type:String,default:"/permission-api/common/uploads"},name:{type:String,default:"file"},tokenKey:{type:String,default:"Admin-Token"},supportVideo:{type:Boolean,default:!1},size:{type:String,default:"default"},disableDrag:{type:Boolean,default:!1},callBack:{type:Function,default:null},extraData:{type:Object,default:()=>({})},uploadRequest:{type:Function,default:null}},emits:["update:modelValue","change","success","error","remove"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.ref(null),f=e.ref([]),y=e.ref(null),m=e.ref(null),E=[];let x=!1;const I=e.ref(!1),T=e.ref([]),$=e.ref(0),A=e.ref(!1),_=e.ref(""),q=e.ref(""),Q=new Set,Z=e.ref(!1),U=e.ref(""),K=e.ref(!1);e.onMounted(()=>{t.modelValue===void 0&&g(t.defaultValue)});const G=e.computed(()=>({large:"160px",default:"140px",small:"80px"})[t.size]??t.size),X=e.computed(()=>t.disabled),J=e.computed(()=>{var n;return t.isShowTip&&(t.fileSize||((n=P.value)==null?void 0:n.length))}),P=e.computed(()=>{var n;return(n=t.fileType)!=null&&n.length?t.fileType.map(s=>s.toLowerCase()):t.supportVideo?["mp4","mov","avi"]:["jpg","jpeg","png","gif","webp"]}),v=e.computed(()=>{const n=t.supportVideo?1:t.limit;return f.value.length>=n}),C=e.computed(()=>P.value.map(n=>`.${n}`).join(",")),l=e.computed(()=>({"qy-upload--reached-limit":v.value,"qy-upload--disabled":t.disabled,"qy-upload--video":t.supportVideo,"qy-upload--without-text":!t.showText&&!t.showPasteInput}));e.watch(U,()=>{x||Y()}),e.watch(()=>t.modelValue,n=>{n!==void 0&&g(n)},{immediate:!0,deep:!0});function a(n){return Array.isArray(n)?n.filter(Boolean):n?String(n).split(",").filter(Boolean):[]}function M(n){return Array.isArray(n)?{files:n,text:""}:typeof n=="string"?{files:a(n),text:""}:n&&typeof n=="object"?{files:a(n.files),text:n.text??""}:{files:[],text:""}}function H(n=[]){return n.map((s,b)=>({name:String(s).split("/").pop()||`file-${b}`,url:s,status:"success",uid:Date.now()+b}))}function u(n){const s=new Set(n.map(k=>k.url)),b=f.value.filter(k=>k.status==="uploading"&&!s.has(k.url));return[...n,...b]}function g(n){const s=M(n);x=!0,U.value=s.text,f.value=u(H(s.files)),e.nextTick(()=>{x=!1})}function S(n){return t.valueFormat==="array"?n.files:t.valueFormat==="string"?n.files.join(","):n}function h(){var n;(n=y.value)==null||n.focus()}function B(n){n.target.value=""}function Y(n){const k={files:(n??f.value).filter(z=>z.status==="success"&&z.url).map(z=>z.url),text:U.value};r("update:modelValue",S(k)),r("change",k),t.callBack&&t.callBack(k)}function oe(n,s){Y(s),r("remove",n,s)}function ne(n){var b;const s=(n==null?void 0:n.name)||"";return s.includes(".")&&((b=s.split(".").pop())==null?void 0:b.toLowerCase())||""}function se(n){var z,W,ee;const s=((W=(z=n==null?void 0:n.type)==null?void 0:z.toLowerCase)==null?void 0:W.call(z))||"",b={"image/jpeg":["jpg","jpeg"],"image/png":["png"],"image/gif":["gif"],"image/bmp":["bmp"],"image/webp":["webp"],"video/mp4":["mp4"],"video/quicktime":["mov"],"video/x-msvideo":["avi"],"video/webm":["webm"]};if(b[s])return b[s];const k=(ee=s.split("/")[1])==null?void 0:ee.split("+")[0];return k?[k]:[]}function p(n){const s=ne(n),b=se(n);return[s,...b].some(k=>P.value.includes(k))}function L(n){return n.size/1024/1024<t.fileSize?p(n)?!0:(V.ElMessage.warning(`格式不支持,仅允许: ${P.value.join("/")}`),!1):(V.ElMessage.warning(`文件大小不能超过${t.fileSize}M`),!1)}async function i(n,s,b,k){const z=w(n);try{const W=await t.uploadRequest({file:n,formData:z,api:t.api,name:t.name,tokenKey:t.tokenKey,extraData:t.extraData}),ee=j(W);if(!ee){const ae=new Error("上传失败,未返回文件地址");V.ElMessage.error(ae.message),r("error",ae),b==null||b(ae);return}V.ElMessage.success("上传成功"),s==null||s({...typeof W=="object"&&W?W:{},url:ee})}catch(W){V.ElMessage.error("上传失败"),r("error",W),b==null||b(W)}finally{k.close()}}function w(n){const s=new FormData;return s.append(t.name,n),t.extraData&&Object.entries(t.extraData).forEach(([b,k])=>s.append(b,k)),s}function j(n){var k,z;if(typeof n=="string")return n;const s=n||{},b=s.urls??s.url??((k=s.data)==null?void 0:k.urls)??((z=s.data)==null?void 0:z.url)??"";return Array.isArray(b)?b[0]||"":b||""}function ie(n,s,b,k){var ut,ct;const z=((ut=R.value)==null?void 0:ut.$el.querySelector(".el-upload--picture-card"))||((ct=R.value)==null?void 0:ct.$el),W=V.ElLoading.service({target:z,text:"上传中",background:"rgba(255,255,255,0.7)"});if(t.uploadRequest){i(n,b,k,W);return}const ee=t.api.startsWith("http")?t.api:window.location.origin+t.api.replace(/^([^/])/,"/$1"),ae=w(n),re=new XMLHttpRequest;E.push(re);const ce=()=>{const le=E.indexOf(re);le!==-1&&E.splice(le,1),W.close()};re.open("POST",ee);const st=_t(t.tokenKey);st&&re.setRequestHeader("Authorization",`Bearer ${st}`),re.upload.onprogress=le=>{le.total>0&&(s==null||s({percent:le.loaded/le.total*100}))},re.onload=()=>{if(ce(),re.status<200||re.status>=300){const le=`上传失败 (HTTP ${re.status})`;V.ElMessage.error(le),r("error",{msg:le,status:re.status}),k==null||k(new Error(le));return}try{const le=JSON.parse(re.responseText);le.code===200&&le.urls?(V.ElMessage.success("上传成功"),b==null||b({...le,url:le.urls})):(V.ElMessage.error(le.msg||"上传失败"),r("error",le),k==null||k(le))}catch{V.ElMessage.error("上传失败,响应格式错误"),r("error",new Error("Response parse error")),k==null||k(new Error("Response parse error"))}},re.onerror=()=>{ce(),V.ElMessage.error("上传失败,网络异常"),r("error",new Error("Network error")),k==null||k(new Error("Network error"))},re.send(ae)}function ue(n){return t.disabled?!1:L(n)}function te(n,s){const b=f.value.find(k=>{var z;return k.uid===(n==null?void 0:n.uid)||((z=k.raw)==null?void 0:z.uid)===(n==null?void 0:n.uid)});b&&(b.url=s,b.status="success")}function ge(n){ie(n.file,n.onProgress,s=>{te(n.file,s.url),n.onSuccess(s),Y(),r("success",s)},s=>n.onError(s))}function he(n){var k;if(!n.url)return;const s=((k=n.url.split(".").pop())==null?void 0:k.toLowerCase())||"";if(["mp4","mov","avi","webm"].includes(s)){_.value=n.url,q.value=n.name||"视频预览",A.value=!0;return}const b=f.value.filter(z=>{var W;return z.status==="success"&&z.url&&!["mp4","mov","avi","webm"].includes((W=z.url.split(".").pop())==null?void 0:W.toLowerCase())});T.value=b.map(z=>z.url),$.value=b.findIndex(z=>z.uid===n.uid)||0,I.value=!0}function ye(){I.value=!1,T.value=[]}function be(n,s){if(n.name&&ne(n))return n;const b=se(n).find(k=>P.value.includes(k));return b?new File([n],`paste-${Date.now()+s}.${b}`,{type:n.type,lastModified:n.lastModified}):n}function ve(n){for(let s=0;s<n.length;s++){const b=be(n[s],s);if(!ue(b))continue;const k=Date.now()+s,z=URL.createObjectURL(b);Q.add(z),f.value.push({uid:k,name:b.name||`file-${k}`,status:"uploading",percentage:0,url:z}),ie(b,W=>{const ee=f.value.find(ae=>ae.uid===k);ee&&(ee.percentage=W.percent)},W=>{const ee=f.value.find(ae=>ae.uid===k);ee&&(ee.status="success",ee.url=W.url,Y(),r("success",W))},()=>F(k))}}function ke(n){const s=Array.from((n==null?void 0:n.files)||[]).filter(W=>{var ee;return(ee=W.type)==null?void 0:ee.startsWith("image/")});if(s.length)return s;const b=n==null?void 0:n.items;if(!b)return[];const k=[],z=new Set;for(let W=0;W<b.length;W++){const ee=b[W];if(ee.kind==="file"&&ee.type.startsWith("image/")){const ae=ee.getAsFile();ae&&!z.has(ae)&&(z.add(ae),k.push(ae))}}return k}function pe(n){if(t.disabled)return;const s=ke(n.clipboardData);s.length&&(n.preventDefault(),ve(s))}function fe(){t.disabled||t.disableDrag||(Z.value=!0)}function c(){Z.value=!1}function d(n){var b;if(Z.value=!1,t.disabled||t.disableDrag||v.value)return;const s=Array.from(((b=n.dataTransfer)==null?void 0:b.files)||[]).filter(k=>{var z;return P.value.includes((z=k.name.split(".").pop())==null?void 0:z.toLowerCase())});s.length&&ve(s)}function F(n){var b;const s=f.value.findIndex(k=>k.uid===n);s!==-1&&((b=f.value[s].url)!=null&&b.startsWith("blob:")&&(URL.revokeObjectURL(f.value[s].url),Q.delete(f.value[s].url)),f.value.splice(s,1))}return e.onBeforeUnmount(()=>{E.forEach(n=>n.abort()),E.length=0,Q.forEach(n=>URL.revokeObjectURL(n)),Q.clear()}),N({openFileDialog:()=>{var n,s;t.disabled||v.value||(s=(n=R.value)==null?void 0:n.$el.querySelector('input[type="file"]'))==null||s.click()},getPathList:()=>f.value.filter(n=>n.status==="success").map(n=>n.url),clearFiles:()=>{f.value=[],U.value="",Y()},getValue:()=>({files:f.value.filter(n=>n.status==="success"&&n.url).map(n=>n.url),text:U.value}),getModelValue:()=>S({files:f.value.filter(n=>n.status==="success"&&n.url).map(n=>n.url),text:U.value})}),(n,s)=>{var re;const b=de.ElIcon,k=de.ElInput,z=de.ElPopover,W=de.ElUpload,ee=de.ElImageViewer,ae=de.ElDialog;return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["qy-upload",l.value]),style:e.normalizeStyle({"--qy-upload-size":G.value})},[e.createVNode(W,{ref_key:"uploadRef",ref:R,"file-list":f.value,"onUpdate:fileList":s[6]||(s[6]=ce=>f.value=ce),action:"#",multiple:o.supportVideo?!1:o.multiple,limit:o.supportVideo?1:o.limit,"list-type":o.supportVideo?"text":"picture-card",accept:C.value,disabled:X.value,"http-request":ge,"before-upload":ue,"on-preview":he,"on-remove":oe},{default:e.withCtx(()=>[v.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["qy-upload__trigger",{"is-dragover":Z.value}]),onPaste:pe,onDragover:e.withModifiers(fe,["prevent"]),onDragleave:e.withModifiers(c,["prevent"]),onDrop:e.withModifiers(d,["prevent"])},[e.createVNode(b,{class:"qy-upload__icon"},{default:e.withCtx(()=>[e.createVNode(e.unref(dt.Plus))]),_:1}),o.supportVideo?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s[9]||(s[9]=e.createElementVNode("span",{class:"qy-upload__label"},"点击上传视频",-1)),e.createElementVNode("span",Ut,"支持 "+e.toDisplayString(P.value.join(" / "))+",不超过 "+e.toDisplayString(o.fileSize)+"MB",1)],64)):e.createCommentVNode("",!0),o.showText?(e.openBlock(),e.createElementBlock("div",{key:1,class:"qy-upload__text",onClick:s[3]||(s[3]=e.withModifiers(()=>{},["stop"])),onPaste:e.withModifiers(pe,["stop"])},[e.createVNode(z,{visible:K.value,"onUpdate:visible":s[2]||(s[2]=ce=>K.value=ce),placement:"bottom-start",width:220,trigger:"click","popper-class":"qy-upload__text-popover",onAfterEnter:h},{reference:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["qy-upload__text-preview",{"is-placeholder":!U.value}])},e.toDisplayString(U.value||o.pastePlaceholder),3)]),default:e.withCtx(()=>[e.createVNode(k,{ref_key:"inputRef",ref:y,modelValue:U.value,"onUpdate:modelValue":s[0]||(s[0]=ce=>U.value=ce),type:"textarea",autosize:{minRows:2,maxRows:5},placeholder:o.pastePlaceholder,disabled:o.disabled,onBlur:s[1]||(s[1]=ce=>K.value=!1),onPaste:e.withModifiers(pe,["stop"])},null,8,["modelValue","placeholder","disabled"])]),_:1},8,["visible"])],32)):o.showPasteInput?(e.openBlock(),e.createElementBlock("div",{key:2,class:"qy-upload__text",onClick:s[5]||(s[5]=e.withModifiers(()=>{},["stop"])),onPaste:e.withModifiers(pe,["stop"])},[e.createElementVNode("input",{ref_key:"pasteInputRef",ref:m,class:"qy-upload__paste-input",placeholder:o.pastePlaceholder,disabled:o.disabled,onPaste:e.withModifiers(pe,["stop"]),onInput:B,onClick:s[4]||(s[4]=e.withModifiers(()=>{},["stop"]))},null,40,Kt)],32)):e.createCommentVNode("",!0)],34))]),_:1},8,["file-list","multiple","limit","list-type","accept","disabled"]),I.value?(e.openBlock(),e.createBlock(ee,{key:0,"url-list":T.value,"initial-index":$.value,onClose:ye},null,8,["url-list","initial-index"])):e.createCommentVNode("",!0),e.createVNode(ae,{modelValue:A.value,"onUpdate:modelValue":s[7]||(s[7]=ce=>A.value=ce),title:q.value,width:"640px","append-to-body":"","destroy-on-close":"",onClose:s[8]||(s[8]=ce=>A.value=!1)},{default:e.withCtx(()=>[A.value?(e.openBlock(),e.createElementBlock("video",{key:0,src:_.value,controls:"",autoplay:"",style:{width:"100%","max-height":"400px","border-radius":"4px"}},null,8,Lt)):e.createCommentVNode("",!0)]),_:1},8,["modelValue","title"]),J.value?(e.openBlock(),e.createElementBlock("div",jt,[e.createVNode(b,null,{default:e.withCtx(()=>[e.createVNode(e.unref(dt.InfoFilled))]),_:1}),e.createElementVNode("span",null,[s[12]||(s[12]=e.createTextVNode(" 请上传 ",-1)),o.fileSize?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[s[10]||(s[10]=e.createTextVNode("大小不超过 ",-1)),e.createElementVNode("b",Ht,e.toDisplayString(o.fileSize)+"MB",1)],64)):e.createCommentVNode("",!0),(re=P.value)!=null&&re.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[s[11]||(s[11]=e.createTextVNode(",格式为 ",-1)),e.createElementVNode("b",Zt,e.toDisplayString(P.value.join("/")),1)],64)):e.createCommentVNode("",!0),s[13]||(s[13]=e.createTextVNode(" 的文件。 ",-1))])])):e.createCommentVNode("",!0)],6)}}}),gt=me._export_sfc(Wt,[["__scopeId","data-v-1e380be1"]]),Gt=Object.assign({name:"QyImageUpload",inheritAttrs:!1},{__name:"index",props:{modelValue:{type:[String,Array],default:""},api:{type:String,default:"/permission-api/common/uploads"},name:{type:String,default:"files"},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},mode:{type:String,default:"default"},voucher:{type:Boolean,default:!1},fileType:{type:Array,default:()=>[]},fileSize:{type:Number,default:10},isShowTip:{type:Boolean,default:!1},limit:{type:Number,default:void 0},tokenKey:{type:String,default:"Admin-Token"},supportVideo:{type:Boolean,default:!1},size:{type:String,default:"128px"},disableDrag:{type:Boolean,default:!1},showPasteInput:{type:Boolean,default:!0},pastePlaceholder:{type:String,default:"粘贴图片上传"},callBack:{type:Function,default:null},extraData:{type:Object,default:()=>({})},uploadRequest:{type:Function,default:null}},emits:["update:modelValue","change","success","error","remove","updateImg"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.useAttrs(),f=e.ref(null),y=["jpg","jpeg","png","gif","bmp","webp"],m=e.computed(()=>t.voucher||t.mode==="voucher"),E=e.computed(()=>Array.isArray(t.modelValue)?t.modelValue.filter(Boolean):t.modelValue?String(t.modelValue).split(",").filter(Boolean):[]),x=e.computed(()=>t.supportVideo?1:m.value?t.limit??30:t.limit??(t.multiple?9:1)),I=e.computed(()=>{var l;return(l=t.fileType)!=null&&l.length?t.fileType:m.value&&!t.supportVideo?y:[]});function T(l){return Array.isArray(l)?l.filter(Boolean):[]}function $(l){const a=T(l);return t.multiple?a:a[0]||""}function A(l){r("update:modelValue",$(l))}function _(l){r("change",$(l==null?void 0:l.files))}function q(l){var H,u;if(typeof l=="string")return l;const a=l||{},M=a.url??a.urls??((H=a.data)==null?void 0:H.url)??((u=a.data)==null?void 0:u.urls)??"";return Array.isArray(M)?M[0]||"":M||""}function Q(l){const a=q(l);a&&r("updateImg",a),r("success",C(),l)}function Z(l){r("error",l)}function U(l,a){r("remove",l,a)}function K(){var l,a;(a=(l=f.value)==null?void 0:l.openFileDialog)==null||a.call(l)}function G(){var l,a;(a=(l=f.value)==null?void 0:l.clearFiles)==null||a.call(l)}function X(){var l,a;return((a=(l=f.value)==null?void 0:l.getPathList)==null?void 0:a.call(l))||[]}const J=e.computed(()=>X()),P=e.computed(()=>X());function v(){return X()}function C(){const l=X();return t.multiple?l:l[0]||""}return N({openFileDialog:K,clearFiles:G,getPathList:X,getFullPathList:v,fullPathList:J,pathList:P,getValue:C}),(l,a)=>(e.openBlock(),e.createBlock(gt,e.mergeProps({ref_key:"uploadRef",ref:f},e.unref(R),{"model-value":E.value,"value-format":"array",api:o.api,name:o.name,multiple:o.multiple,disabled:o.disabled,"file-type":I.value,"file-size":o.fileSize,limit:x.value,"is-show-tip":o.isShowTip,"token-key":o.tokenKey,"support-video":o.supportVideo,size:o.size,"disable-drag":o.disableDrag,"call-back":o.callBack,"extra-data":o.extraData,"upload-request":o.uploadRequest,"show-text":!1,"show-paste-input":o.showPasteInput,"paste-placeholder":o.pastePlaceholder,"onUpdate:modelValue":A,onChange:_,onSuccess:Q,onError:Z,onRemove:U}),null,16,["model-value","api","name","multiple","disabled","file-type","file-size","limit","is-show-tip","token-key","support-video","size","disable-drag","call-back","extra-data","upload-request","show-paste-input","paste-placeholder"]))}}),Xt={class:"text-lg flex items-center pt-2 pl-[var(--content-padding)]"},Jt={key:0},Yt={key:1},eo={key:0,class:"icon-[material-symbols--square-outline-rounded]",role:"img","aria-hidden":"true"},to={key:1,class:"icon-[tdesign--fullscreen-exit-1]",role:"img","aria-hidden":"true"},oo={key:0,class:"fixed -right-12 top-2 h-9 w-9 hover:bg-gray-600/80 transition-all"},lo={class:"flex justify-between h-[var(--footer-height)] px-[var(--content-padding)] items-center"},no={class:"flex items-center justify-between w-full pl-1 pr-4 h-full ml-2"},ao={class:"flex items-center gap-2"},ro={class:"text-sm text-gray-700 truncate max-w-[200px]"},io={class:"flex items-center gap-2"},mt=5,xe=2e3,Ce=e.defineComponent({__name:"index",props:e.mergeModels({layout:{type:[Array,String,Boolean],default:()=>["confirm","cancel"]},fullscreen:{type:Boolean,default:!1},showFullscreen:{type:Boolean,default:!1},confirmProps:{default:()=>({})},size:{default:"default"},zIndex:{default:2e3}},{modelValue:{default:!0},modelModifiers:{}}),emits:e.mergeModels(["confirm","cancel","close","opened","ok"],["update:modelValue"]),setup(o,{expose:N,emit:O}){const t=o,r=e.useSlots(),R=e.ref(!0),f=e.ref(!1),y=e.ref(xe),m=e.ref(null),x=ft.useBreakpoints({mobile:0,tablet:640,laptop:1024,desktop:1280}).isSmaller("tablet"),I=e.computed(()=>{if(Array.isArray(t.layout))return t.layout;if(typeof t.layout=="string")return t.layout.split(",").map(h=>h.trim())}),T=e.computed(()=>({CancelButton:e.createVNode(u),ConfirmButton:e.createVNode(H)})),$=e.computed(()=>r.footer||t.layout!==!1),A=e.ref(!1),_=e.ref(t.showFullscreen&&x?!0:t.fullscreen),q=O,Q=e.useModel(o,"modelValue");e.watchEffect(()=>{Q.value&&(A.value=!1)}),N({handleMinimize:S});const Z=e.useAttrs(),U=`qy-dialog-${Math.random().toString(36).slice(2,11)}`,K=e.ref(!1),G=e.ref(null);window.minimizedCount||(window.minimizedCount=0);const{x:X,y:J}=ft.useDraggable(G,{initialValue:{x:5,y:window.innerHeight-100-(window.minimizedCount||0)*60},onMove(h){var B;(B=G.value)==null||B.classList.add("dragging"),document.body.classList.add("qy-dialog--dragging"),X.value=Math.max(0,Math.min(window.innerWidth-300,h.x)),J.value=Math.max(0,Math.min(window.innerHeight-50,h.y))},onEnd(){var h;(h=G.value)==null||h.classList.remove("dragging"),document.body.classList.remove("qy-dialog--dragging")}}),P=e.computed(()=>({transform:`translate(${X.value}px, ${J.value}px)`,willChange:"transform"}));function v(h){const B=h.target,{scrollTop:Y,scrollHeight:oe,clientHeight:ne}=B;R.value=Y<=mt,f.value=oe-(Y+ne)<=mt}function C(){const h=document.querySelector(`.${U}.el-dialog`);h&&(m.value=h,h.addEventListener("scroll",v)),g(),q("opened")}function l(){_.value=!_.value,g()}function a(){A.value||(A.value=!0,K.value=!1,Q.value=!1,q("cancel"),q("close"))}function M(h){t.showFullscreen&&h.detail>=2&&l()}function H(){return e.h(V.ElButton,{...e.unref(t.confirmProps),type:"primary",class:"dialog__footerBtn",onClick:()=>{q("confirm"),q("ok")}},()=>e.unref(t.confirmProps).title||"确 认")}function u(){return e.h(V.ElButton,{class:"dialog__footerBtn",onClick:()=>a()},()=>"取 消")}e.onMounted(()=>{typeof window.qyDialogMaxZIndex>"u"&&(window.qyDialogMaxZIndex=xe),g()});function g(){var p;const h=Array.from(document.querySelectorAll(".el-overlay")).filter(L=>window.getComputedStyle(L).display!=="none"&&!L.classList.contains("is-message")),B=(p=document.querySelector(`.${U}`))==null?void 0:p.closest(".el-overlay"),Y=document.querySelector(`.${U}.el-dialog`);if(!B||!Y)return;const oe=xe;window.qyDialogMaxZIndex=window.qyDialogMaxZIndex||oe;const se=Math.max(window.qyDialogMaxZIndex,...h.map(L=>parseInt(window.getComputedStyle(L).zIndex||oe.toString())))+2;window.qyDialogMaxZIndex=se,e.nextTick(()=>{B.style.zIndex=se.toString(),Y.style.zIndex=(se+1).toString(),y.value=se+1})}e.onUnmounted(()=>{var h;(h=m.value)==null||h.removeEventListener("scroll",v),K.value&&window.minimizedCount--});function S(){var B;K.value=!K.value;const h=(B=document.querySelector(`.${U}`))==null?void 0:B.closest(".el-overlay");h&&(K.value?(h.style.display="none",window.minimizedCount++,J.value=window.innerHeight-50-(window.minimizedCount||0)*60):(h.style.display="block",window.minimizedCount--,g()))}return(h,B)=>{const Y=e.resolveComponent("Close"),oe=de.ElIcon,ne=de.ElDialog;return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(ne,e.mergeProps({ref:"dialogRef",class:["qy-dialog",[t.size==="small"&&"[&_.el-dialog__header]:!hidden",U]],"model-value":Q.value,"align-center":"","append-to-body":"",style:{"--el-dialog-padding-primary":0},"show-close":!1,fullscreen:_.value,"z-index":y.value,onClosed:a,onOpened:C,draggable:""},e.unref(Z)),e.createSlots({header:e.withCtx(()=>[t.size==="default"?(e.openBlock(),e.createElementBlock("div",{key:0,style:e.normalizeStyle({borderBottom:"1px solid",borderColor:R.value?"transparent":"var(--block-outline-color)",transition:"border-color .2s linear"}),class:"flex justify-between h-[var(--header-height)]",onDblclick:M},[e.createElementVNode("div",Xt,[e.unref(r).header?e.unref(r).header?(e.openBlock(),e.createElementBlock("div",Yt,[e.renderSlot(h.$slots,"header")])):e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",Jt,e.toDisplayString(e.unref(Z).title),1))]),e.createElementVNode("div",{class:"flex",onMousedown:B[3]||(B[3]=e.withModifiers(()=>{},["stop"]))},[t.size==="default"?(e.openBlock(),e.createElementBlock("div",{key:0,class:"qy-dialog__btn qy-dialog__btn--default",onClick:e.withModifiers(S,["stop"]),onMousedown:B[0]||(B[0]=e.withModifiers(()=>{},["stop"]))},[...B[4]||(B[4]=[e.createElementVNode("span",{class:"icon-[material-symbols--minimize] text-xl mb-3",role:"img","aria-hidden":"true"},null,-1)])],32)):e.createCommentVNode("",!0),t.showFullscreen?(e.openBlock(),e.createElementBlock("div",{key:1,class:"qy-dialog__btn qy-dialog__btn--default",onClick:e.withModifiers(l,["stop"]),onMousedown:B[1]||(B[1]=e.withModifiers(()=>{},["stop"]))},[_.value?(e.openBlock(),e.createElementBlock("span",to)):(e.openBlock(),e.createElementBlock("span",eo))],32)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"qy-dialog__btn qy-dialog__btn--danger",onClick:e.withModifiers(a,["stop"]),onMousedown:B[2]||(B[2]=e.withModifiers(()=>{},["stop"]))},[...B[5]||(B[5]=[e.createElementVNode("span",{class:"icon-[ri--close-line] text-xl",role:"img","aria-hidden":"true"},null,-1)])],32)],32)],36)):e.createCommentVNode("",!0)]),default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["qy-dialog__wrapper",e.unref(xt)(_.value&&"qy-dialog__wrapper--fullscreen")]),style:e.normalizeStyle({maxHeight:$.value?"calc(100vh - var(--header-height) - var(--footer-height) - var(--sides-gap))":"calc(100vh - var(--header-height) - var(--sides-gap))",padding:t.size==="small"?"var(--small-content-padding)":"var(--content-padding)"})},[t.size==="small"?(e.openBlock(),e.createElementBlock("div",oo,[e.createVNode(oe,{size:36,class:"cursor-pointer text-gray-100 active:scale-75 rounded-sm transition-all",onClick:a},{default:e.withCtx(()=>[e.createVNode(Y)]),_:1})])):e.createCommentVNode("",!0),e.renderSlot(h.$slots,"default")],6)]),_:2},[!h.$slots.footer&&Array.isArray(I.value)?{name:"footer",fn:e.withCtx(()=>[e.createElementVNode("div",lo,[e.createElementVNode("div",null,[e.renderSlot(h.$slots,"footer-left")]),e.createElementVNode("div",{class:e.normalizeClass([{"qy-dialog__footer--outline":f.value},"qy-dialog__footer flex items-center justify-end"])},[I.value.includes("cancel")?(e.openBlock(),e.createBlock(u,{key:0})):e.createCommentVNode("",!0),I.value.includes("confirm")?(e.openBlock(),e.createBlock(H,{key:1})):e.createCommentVNode("",!0),e.renderSlot(h.$slots,"footer-append")],2)])]),key:"0"}:$.value?{name:"footer",fn:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass([{"qy-dialog__footer--outline":f.value},"qy-dialog__footer px-[var(--content-padding)] min-h-[var(--footer-height)] flex items-center justify-end"])},[e.renderSlot(h.$slots,"footer",{layouts:T.value,layoutsNode:Object.values(T.value)})],2)]),key:"1"}:void 0]),1040,["class","model-value","fullscreen","z-index"]),e.withDirectives(e.createElementVNode("div",{ref_key:"minimizedRef",ref:G,class:"fixed left-0 top-0 bg-white rounded shadow-lg cursor-pointer z-[9999] hover:bg-gray-50",style:e.normalizeStyle([P.value,{width:"300px",height:"50px","will-change":"transform"}])},[e.createElementVNode("div",no,[e.createElementVNode("div",ao,[B[6]||(B[6]=e.createElementVNode("div",{class:"icon-[mdi--window-restore] text-gray-600"},null,-1)),e.createElementVNode("span",ro,e.toDisplayString(e.unref(Z).title),1)]),e.createElementVNode("div",io,[e.createElementVNode("div",{class:"p-1 hover:bg-gray-200 rounded",onClick:e.withModifiers(S,["stop"])},[...B[7]||(B[7]=[e.createElementVNode("div",{class:"icon-[mdi--window-maximize] text-gray-600"},null,-1)])]),e.createElementVNode("div",{class:"p-1 hover:bg-red-100 rounded",onClick:e.withModifiers(a,["stop"])},[...B[8]||(B[8]=[e.createElementVNode("div",{class:"icon-[mdi--close] text-red-600"},null,-1)])])])])],4),[[e.vShow,K.value]])])}}});function Be(o){const N=o==null?void 0:o.match(/(\[url\:(.*?)\])(.*)/);return N?{imageUrl:N[2],text:N[3]}:{imageUrl:"",text:o||""}}function ht(o){const N=String(o||"").match(/(\[url\:.*?\])([\s\S]*)/);return N?N[2]:o}function Ee(o,N){return N?`[url:${N}]${o}`:o}const so={class:"qy-remark-image__field"},uo={key:1,class:"qy-remark-image__divider"},co={class:"qy-remark-image__upload-anchor"},fo={key:0,class:"icon-[line-md--loading-twotone-loop]",role:"img","aria-hidden":"true"},mo={key:1,class:"icon-[ion--cloud-upload-outline]",role:"img","aria-hidden":"true"},po={key:2,class:"icon-[ph--images-thin]",role:"img","aria-hidden":"true"},yo={class:"qy-remark-image__popover"},go=["src"],ho={class:"qy-remark-image__popover-footer"},vo=e.defineComponent({__name:"index",props:{defaultValue:{default:""},defaultImage:{default:""},rows:{default:6},width:{default:""},autosize:{type:[Boolean,Object],default:!1},disabled:{type:Boolean,default:!1},placeholder:{default:"粘贴图片上传"},type:{default:"textarea"},layout:{default:"default"},selectValue:{type:[String,Number,Boolean],default:""},selectOptions:{default:()=>[]},selectDisabled:{type:Boolean,default:!1},api:{default:"/permission-api/common/uploads"},tokenKey:{default:"Admin-Token"},uploadName:{default:"files"},uploadRequest:{}},emits:["change","update:selectValue","select-change"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.useAttrs(),f=e.ref(null),y=e.ref(""),m=e.ref(""),E=e.ref(!1),x=e.computed(()=>t.layout==="select-prefix"),I=e.computed(()=>({"qy-remark-image--select-prefix":x.value})),T=e.computed(()=>x.value||t.type==="text"?"text":"textarea"),$=e.computed(()=>{if(t.width)return{width:typeof t.width=="number"?`${t.width}px`:t.width}});e.watch(()=>t.defaultValue,v=>{const C=Be(v||"");y.value=C.text,m.value=C.imageUrl||t.defaultImage||""},{immediate:!0}),e.watch(()=>t.defaultImage,v=>{v!==void 0&&!Be(t.defaultValue||"").imageUrl&&(m.value=v||"")},{immediate:!0}),e.onMounted(()=>{e.nextTick(_)}),e.onUnmounted(()=>{const v=A();v&&v.removeEventListener("paste",K)});function A(){var v,C;return((v=f.value)==null?void 0:v.textarea)||((C=f.value)==null?void 0:C.input)||null}function _(){const v=A();v&&(v.removeEventListener("paste",K),v.addEventListener("paste",K))}function q(v){y.value=ht(v||"")}function Q(v){r("update:selectValue",v),r("select-change",v)}function Z(){m.value="",P()}function U(){y.value="",m.value="",P()}async function K(v){var a;const l=Array.from(((a=v.clipboardData)==null?void 0:a.files)||[]).find(M=>M.type.startsWith("image/"));l&&(v.preventDefault(),await G({file:l,onError:()=>{},onProgress:()=>{},onSuccess:()=>{}}))}async function G(v){var C,l;if(v.file.size>51200*1e3)return V.ElMessage.error("图片过大"),!1;E.value=!0;try{const a=await X(v);return m.value=J(a),P(),V.ElMessage.success("上传图片成功"),(C=v.onSuccess)==null||C.call(v,a),!0}catch(a){return(l=v.onError)==null||l.call(v,a),V.ElMessage.error("上传失败"),!1}finally{E.value=!1}}async function X(v){const C=new FormData;if(C.append(t.uploadName,v.file),t.uploadRequest)return t.uploadRequest({file:v.file,formData:C,options:v,api:t.api,tokenKey:t.tokenKey});const l=yt.get(t.tokenKey);return(await fetch(t.api,{method:"POST",body:C,credentials:"include",headers:l?{Authorization:`Bearer ${l}`}:void 0})).json()}function J(v){var a,M;if(typeof v=="string")return v;const C=v,l=(C==null?void 0:C.urls)??((a=C==null?void 0:C.data)==null?void 0:a.urls)??((M=C==null?void 0:C.data)==null?void 0:M.url)??(C==null?void 0:C.url)??"";return Array.isArray(l)?l[0]||"":l||""}function P(){r("change",Ee(y.value||"",m.value||""),m.value||"")}return N({deleteImage:Z,clearContent:U,getValue:()=>({text:y.value||"",imageUrl:m.value||"",value:Ee(y.value||"",m.value||"")})}),(v,C)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["qy-remark-image",I.value]),style:e.normalizeStyle($.value)},[e.createElementVNode("div",so,[x.value?(e.openBlock(),e.createBlock(e.unref(V.ElSelect),{key:0,class:"qy-remark-image__prefix-select","model-value":o.selectValue,options:o.selectOptions,disabled:o.disabled||o.selectDisabled,size:"small","onUpdate:modelValue":Q},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.selectOptions,l=>(e.openBlock(),e.createBlock(e.unref(V.ElOption),{key:String(l.value),label:l.label,value:l.value,disabled:l.disabled},null,8,["label","value","disabled"]))),128))]),_:1},8,["model-value","options","disabled"])):e.createCommentVNode("",!0),x.value?(e.openBlock(),e.createElementBlock("span",uo)):e.createCommentVNode("",!0),e.createVNode(e.unref(V.ElInput),e.mergeProps({ref_key:"inputRef",ref:f,"model-value":y.value,type:T.value,rows:o.rows,autosize:o.autosize,disabled:o.disabled,placeholder:o.placeholder},e.unref(R),{"onUpdate:modelValue":q,onBlur:P}),null,16,["model-value","type","rows","autosize","disabled","placeholder"]),e.createVNode(e.unref(V.ElPopover),{placement:"top-start",width:400,trigger:"hover",disabled:!m.value},{reference:e.withCtx(()=>[e.createElementVNode("div",co,[e.createVNode(e.unref(V.ElUpload),{disabled:E.value||o.disabled,class:"qy-remark-image__upload","show-file-list":!1,"http-request":G},{default:e.withCtx(()=>[E.value?(e.openBlock(),e.createElementBlock("span",fo)):m.value?(e.openBlock(),e.createElementBlock("span",po)):(e.openBlock(),e.createElementBlock("span",mo))]),_:1},8,["disabled"])])]),default:e.withCtx(()=>[e.createElementVNode("div",yo,[e.createElementVNode("img",{src:m.value,class:"qy-remark-image__preview-img"},null,8,go),e.createElementVNode("div",ho,[C[1]||(C[1]=e.createElementVNode("span",{class:"qy-remark-image__popover-tip"},"再次点击按钮可更换图片",-1)),e.createVNode(e.unref(V.ElButton),{link:"",size:"small",type:"danger",disabled:o.disabled,onClick:Z},{default:e.withCtx(()=>[...C[0]||(C[0]=[e.createTextVNode(" 删除图片 ",-1)])]),_:1},8,["disabled"])])])]),_:1},8,["disabled"])])],6))}}),wo=me._export_sfc(vo,[["__scopeId","data-v-47f20c2b"]]),bo=e.defineComponent({name:"QyMoneyInput",inheritAttrs:!1,__name:"index",props:{modelValue:{default:""},precision:{default:2},min:{default:void 0},max:{default:void 0},allowNegative:{type:Boolean,default:!1},formatTrigger:{default:"blur"},emptyValue:{default:""}},emits:["update:modelValue","input","change","focus","blur","clear","enter"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.useAttrs(),f=e.ref(null),y=e.ref(E(t.modelValue)),m=e.computed(()=>E(t.modelValue));e.watch(()=>t.modelValue,l=>{y.value=E(l)});function E(l){return l==null?"":String(l)}function x(l){return Number.isFinite(l)?Math.max(0,Math.floor(l)):2}function I(l){const a=E(l);let M="",H=!1,u=!1;const g=x(t.precision);for(let S=0;S<a.length;S+=1){const h=a[S];if(h>="0"&&h<="9"){M+=h;continue}if(h==="."&&g>0&&!H){M+=h,H=!0;continue}h==="-"&&t.allowNegative&&S===0&&!u&&(M+=h,u=!0)}if(g>0&&H){const[S,h=""]=M.split(".");return`${S}.${h.slice(0,g)}`}return M}function T(l){let a=l;return typeof t.min=="number"&&Number.isFinite(t.min)&&(a=Math.max(a,t.min)),typeof t.max=="number"&&Number.isFinite(t.max)&&(a=Math.min(a,t.max)),a}function $(l){const a=I(l);if(!a||a==="-"||a===".")return E(t.emptyValue);const M=Number(a);if(Number.isNaN(M))return E(t.emptyValue);const H=x(t.precision);return T(M).toFixed(H)}function A(l){y.value=l,r("update:modelValue",l)}function _(l){const a=I(l);A(a)}function q(l){const a=I(l);y.value=a,r("input",a)}function Q(l){const a=t.formatTrigger==="change"?$(l):I(l);a!==E(t.modelValue)&&A(a),r("change",a)}function Z(l){r("focus",l)}function U(l){if(t.formatTrigger==="blur"){const a=$(y.value);a!==E(t.modelValue)&&A(a)}r("blur",l)}function K(){const l=E(t.emptyValue);y.value=l,r("update:modelValue",l),r("clear")}function G(l){r("enter",l)}function X(){var l,a;(a=(l=f.value)==null?void 0:l.focus)==null||a.call(l)}function J(){var l,a;(a=(l=f.value)==null?void 0:l.blur)==null||a.call(l)}function P(){var l,a;(a=(l=f.value)==null?void 0:l.select)==null||a.call(l)}function v(){var l,a;(a=(l=f.value)==null?void 0:l.clear)==null||a.call(l)}function C(){var l;return((l=f.value)==null?void 0:l.input)||null}return N({focus:X,blur:J,select:P,clear:v,getNativeInput:C}),(l,a)=>(e.openBlock(),e.createBlock(e.unref(V.ElInput),e.mergeProps({ref_key:"inputRef",ref:f},e.unref(R),{"model-value":m.value,inputmode:"decimal","onUpdate:modelValue":_,onInput:q,onChange:Q,onFocus:Z,onBlur:U,onClear:K,onKeydown:e.withKeys(G,["enter"])}),e.createSlots({_:2},[l.$slots.prefix?{name:"prefix",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"prefix")]),key:"0"}:void 0,l.$slots.suffix?{name:"suffix",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"suffix")]),key:"1"}:void 0,l.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"prepend")]),key:"2"}:void 0,l.$slots.append?{name:"append",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"append")]),key:"3"}:void 0]),1040,["model-value"]))}}),ko=e.defineComponent({name:"QyRemoteSelect",inheritAttrs:!1,__name:"index",props:{modelValue:{type:[String,Number,Boolean,Array,null],default:void 0},fetchMethod:{},defaultOptions:{default:()=>[]},labelKey:{default:"label"},valueKey:{default:"value"},disabledKey:{default:"disabled"},placeholder:{default:"请选择"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},multiple:{type:Boolean,default:!1},collapseTags:{type:Boolean,default:!1},collapseTagsTooltip:{type:Boolean,default:!1},autoSelectSingle:{type:Boolean,default:!1},size:{default:void 0},teleported:{type:Boolean,default:!0},appendTo:{default:"body"},fitInputWidth:{type:Boolean,default:!0},popperClass:{default:""},debounce:{default:300},minLength:{default:1},remoteOnFocus:{type:Boolean,default:!1},remoteShowSuffix:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},reserveSelectedOption:{type:Boolean,default:!0},allowCreate:{type:Boolean,default:!1},commitOnBlur:{type:Boolean,default:!1}},emits:["update:modelValue","change","clear","visible-change","focus","blur","options-change","loading-change","error"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.useAttrs(),f=e.ref(null),y=e.ref([]),m=e.ref(new Map),E=e.ref(!1),x=e.ref(""),I=e.ref("");let T=0,$=null;const A=e.computed(()=>t.loading||E.value),_=e.ref(!1),q=e.computed(()=>x.value!==""),Q=e.computed(()=>{if(q.value)return y.value;const p=new Map,L=i=>{p.set(Z(i),i)};return t.defaultOptions.forEach(L),t.reserveSelectedOption&&m.value.forEach(i=>L(i)),y.value.forEach(L),Array.from(p.values())});e.watch(()=>t.defaultOptions,p=>{p.forEach(K)},{immediate:!0}),e.watch(()=>t.modelValue,()=>{Q.value.forEach(K)},{immediate:!0});function Z(p){return(p==null?void 0:p[t.valueKey])??(p==null?void 0:p.value)??(p==null?void 0:p.label)}function U(p){return Array.isArray(t.modelValue)?t.modelValue.includes(p):t.modelValue===p}function K(p){if(!t.reserveSelectedOption)return;const L=Z(p);U(L)&&m.value.set(L,p)}function G(p){return t.disabled?!1:p?p.length>=t.minLength:t.remoteOnFocus}function X(p){E.value!==p&&(E.value=p,r("loading-change",p))}async function J(p){const L=B(p),i=++T;if(Y(L),!G(L)){y.value=[],X(!1),r("options-change",Q.value);return}X(!0);try{const w=await t.fetchMethod(L);if(i!==T)return;y.value=Array.isArray(w)?w:[],y.value.forEach(K),r("options-change",Q.value)}catch(w){if(i!==T)return;y.value=[],r("error",w),r("options-change",Q.value)}finally{i===T&&X(!1)}}function P(){_.value||(_.value=!0,J(""))}function v(p){const L=B(p);I.value=L,T+=1,Y(L),$&&(clearTimeout($),$=null),$=setTimeout(()=>{J(L)},t.debounce)}function C(){_.value=!0,J("")}function l(){J(x.value)}function a(p){I.value="",r("update:modelValue",p)}function M(p){I.value="",Q.value.forEach(K),r("change",p)}function H(){I.value="",r("clear")}function u(p){p&&t.remoteOnFocus&&!x.value&&P(),r("visible-change",p)}function g(p){t.remoteOnFocus&&!x.value&&P(),r("focus",p)}function S(p){h(),r("blur",p)}function h(){if(!t.allowCreate||!t.commitOnBlur||t.disabled)return;const p=I.value;p.trim()&&(I.value="",r("update:modelValue",p),r("change",p))}function B(p){return String(p??"")}function Y(p){x.value=p,y.value=[],r("options-change",Q.value)}function oe(){var p,L;(L=(p=f.value)==null?void 0:p.focus)==null||L.call(p)}function ne(){var p,L;(L=(p=f.value)==null?void 0:p.blur)==null||L.call(p)}function se(){r("update:modelValue",t.multiple?[]:""),r("clear")}return e.onBeforeUnmount(()=>{$&&clearTimeout($)}),N({focus:oe,blur:ne,clear:se,retryFetch:l,fetchDefaultOptions:C}),(p,L)=>(e.openBlock(),e.createBlock(qe.Select,e.mergeProps({ref_key:"selectRef",ref:f},e.unref(R),{"model-value":o.modelValue,options:Q.value,"label-key":o.labelKey,"value-key":o.valueKey,"disabled-key":o.disabledKey,placeholder:o.placeholder,disabled:o.disabled,clearable:o.clearable,filterable:!0,multiple:o.multiple,"collapse-tags":o.collapseTags,"collapse-tags-tooltip":o.collapseTagsTooltip,"auto-select-single":o.autoSelectSingle,size:o.size,teleported:o.teleported,"append-to":o.appendTo,"fit-input-width":o.fitInputWidth,"popper-class":o.popperClass,remote:"","remote-show-suffix":o.remoteShowSuffix,"remote-method":v,loading:A.value,"onUpdate:modelValue":a,onChange:M,onClear:H,onVisibleChange:u,onFocus:g,onBlur:S}),e.createSlots({default:e.withCtx(()=>[p.$slots.default?e.renderSlot(p.$slots,"default",{},void 0,void 0,0):e.createCommentVNode("",!0)]),_:2},[p.$slots.prefix?{name:"prefix",fn:e.withCtx(()=>[e.renderSlot(p.$slots,"prefix")]),key:"0"}:void 0,p.$slots.empty?{name:"empty",fn:e.withCtx(()=>[e.renderSlot(p.$slots,"empty")]),key:"1"}:void 0,p.$slots.loading?{name:"loading",fn:e.withCtx(()=>[e.renderSlot(p.$slots,"loading")]),key:"2"}:void 0,p.$slots.tag?{name:"tag",fn:e.withCtx(i=>[e.renderSlot(p.$slots,"tag",e.normalizeProps(e.guardReactiveProps(i)))]),key:"3"}:void 0]),1040,["model-value","options","label-key","value-key","disabled-key","placeholder","disabled","clearable","multiple","collapse-tags","collapse-tags-tooltip","auto-select-single","size","teleported","append-to","fit-input-width","popper-class","remote-show-suffix","loading"]))}}),xo={class:"qy-search-input__item"},Vo=["innerHTML"],So={key:0,class:"qy-search-input__item-description"},Co=e.defineComponent({name:"QySearchInput",inheritAttrs:!1,__name:"index",props:{modelValue:{default:""},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{default:"请输入搜索内容"},removeSpace:{type:Boolean,default:!1},trimMode:{default:"none"},clearable:{type:Boolean,default:!0},showButton:{type:Boolean,default:!0},buttonText:{default:"搜索"},buttonProps:{default:()=>({})},suggestions:{default:()=>[]},fetchSuggestions:{type:[Function,null],default:null},fetchSuggestionsMethod:{type:[Function,null],default:null},debounce:{default:300},minLength:{default:1},triggerOnFocus:{type:Boolean,default:!1},searchOnEnter:{type:Boolean,default:!0},searchOnSelect:{type:Boolean,default:!1},highlightKeyword:{type:Boolean,default:!0},teleported:{type:Boolean,default:!0},appendTo:{default:"body"},popperClass:{default:""},fitInputWidth:{type:Boolean,default:!0}},emits:["update:modelValue","search","clear","input","change","focus","blur","enter","select","visible-change","suggestions-change","error"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.useAttrs(),f=e.ref(null),y=e.ref(T(t.modelValue)),m=e.computed(()=>T(t.modelValue)),E=e.computed(()=>["qy-search-input__popper",t.popperClass].filter(Boolean).join(" ")),x=e.computed(()=>T(t.modelValue)),I=e.ref("");e.watch(()=>t.modelValue,i=>{y.value=T(i)});function T(i){return i==null?"":String(i)}function $(i){return t.removeSpace?i.replace(/\s+/g,""):i}function A(i,w){return t.trimMode!==w?i:i.trim()}function _(i){return $(T(i))}function q(i){y.value=i,r("update:modelValue",i)}function Q(i,w=""){return{...i,label:i.label||i.value,value:i.value||i.label,description:i.description||w}}function Z(i=[]){return i.flatMap(w=>{if(Array.isArray(w.items)){const j=w;return j.items.map(ie=>Q(ie,j.groupLabel))}return Q(w)})}function U(i){const w=i.toLowerCase();return j=>[j.label,j.value,j.description].filter(Boolean).some(ie=>String(ie).toLowerCase().includes(w))}function K(i){return i?i.length>=t.minLength:t.triggerOnFocus}function G(i){r("suggestions-change",i),r("visible-change",i.length>0)}async function X(i){if(!K(i))return G([]),[];if(t.fetchSuggestionsMethod){const ie=await new Promise(ue=>{var te;(te=t.fetchSuggestionsMethod)==null||te.call(t,i,ge=>{ue(Z(ge))})});return G(ie),ie}if(t.fetchSuggestions){const ie=await t.fetchSuggestions(i),ue=Z(Array.isArray(ie)?ie:[]);return G(ue),ue}const w=Z(t.suggestions),j=i?w.filter(U(i)):w;return G(j),j}async function J(i,w){I.value=i;try{const j=await X(i);w(j)}catch(j){r("error",j),G([]),w([])}}function P(){var i,w;I.value&&((w=(i=f.value)==null?void 0:i.getData)==null||w.call(i,I.value))}function v(i){const w=_(i);q(w)}function C(i){const w=_(i);y.value=w,r("input",w)}function l(i){const w=A(_(i),"change");w!==T(t.modelValue)&&q(w),r("change",w)}function a(i){r("focus",i)}function M(i){const w=A(y.value,"blur");w!==T(t.modelValue)&&q(w),r("blur",i),r("visible-change",!1)}function H(){y.value="",r("update:modelValue",""),r("clear"),G([])}function u(i){r("enter",i),t.searchOnEnter&&g()}function g(){r("search",T(t.modelValue))}function S(i){r("select",i),t.searchOnSelect&&r("search",i.value)}function h(i){return i.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function B(i){return i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Y(i){const w=h(i||"");if(!t.highlightKeyword||!m.value)return w;const j=B(h(m.value));return j?w.replace(new RegExp(`(${j})`,"ig"),'<mark class="qy-search-input__mark">$1</mark>'):w}function oe(){var i,w;(w=(i=f.value)==null?void 0:i.focus)==null||w.call(i)}function ne(){var i,w;(w=(i=f.value)==null?void 0:i.blur)==null||w.call(i)}function se(){var i,w,j;(j=(w=(i=f.value)==null?void 0:i.inputRef)==null?void 0:w.select)==null||j.call(w)}function p(){var i,w;(w=(i=f.value)==null?void 0:i.clear)==null||w.call(i)}function L(){var i,w;(w=(i=f.value)==null?void 0:i.close)==null||w.call(i)}return N({focus:oe,blur:ne,select:se,clear:p,closePanel:L,retryFetch:P}),(i,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["qy-search-input",{"is-disabled":o.disabled}])},[e.createVNode(e.unref(V.ElAutocomplete),e.mergeProps({ref_key:"autocompleteRef",ref:f},e.unref(R),{"model-value":x.value,disabled:o.disabled,placeholder:o.placeholder,clearable:o.clearable,debounce:o.debounce,"fetch-suggestions":J,"trigger-on-focus":o.triggerOnFocus,teleported:o.teleported,"fit-input-width":o.fitInputWidth,"popper-class":E.value,"append-to":o.appendTo,"value-key":"value","onUpdate:modelValue":v,onInput:C,onChange:l,onFocus:a,onBlur:M,onClear:H,onSelect:S,onKeydown:e.withKeys(u,["enter"])}),e.createSlots({default:e.withCtx(({item:j})=>[e.renderSlot(i.$slots,"item",{item:j,keyword:m.value},()=>[e.createElementVNode("div",xo,[e.createElementVNode("div",{class:"qy-search-input__item-label",innerHTML:Y(j.label||j.value||"")},null,8,Vo),j.description?(e.openBlock(),e.createElementBlock("div",So,e.toDisplayString(j.description),1)):e.createCommentVNode("",!0)])],!0)]),_:2},[i.$slots.prefix?{name:"prefix",fn:e.withCtx(()=>[e.renderSlot(i.$slots,"prefix",{},void 0,!0)]),key:"0"}:void 0,i.$slots.suffix?{name:"suffix",fn:e.withCtx(()=>[e.renderSlot(i.$slots,"suffix",{},void 0,!0)]),key:"1"}:void 0,i.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(i.$slots,"prepend",{},void 0,!0)]),key:"2"}:void 0,i.$slots.append||o.showButton?{name:"append",fn:e.withCtx(()=>[i.$slots.append?e.renderSlot(i.$slots,"append",{},void 0,!0,0):(e.openBlock(),e.createBlock(e.unref(V.ElButton),e.mergeProps({key:1},o.buttonProps,{loading:o.loading,disabled:o.disabled,onClick:g}),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.buttonText),1)]),_:1},16,["loading","disabled"]))]),key:"3"}:void 0]),1040,["model-value","disabled","placeholder","clearable","debounce","trigger-on-focus","teleported","fit-input-width","popper-class","append-to"])],2))}}),vt=me._export_sfc(Co,[["__scopeId","data-v-33980cea"]]),Bo={class:"qy-record-quote-search"},Eo={key:0,class:"qy-record-quote-search__header"},qo={key:0,class:"qy-record-quote-search__label"},No={key:1,class:"qy-record-quote-search__description"},$o=e.defineComponent({name:"QyRecordQuoteSearch",inheritAttrs:!1,__name:"index",props:{modelValue:{default:""},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{default:"请输入报价单号"},buttonText:{default:"查询报价单"},autoNormalize:{type:Boolean,default:!0},showStatus:{type:Boolean,default:!0},status:{default:"default"},statusText:{default:""},suggestions:{default:()=>[]},fetchSuggestions:{type:[Function,null],default:null},fetchSuggestionsMethod:{type:[Function,null],default:null},debounce:{default:300},minLength:{default:1},searchOnSelect:{type:Boolean,default:!0},searchMethod:{type:[Function,null],default:null},extractMethod:{type:[Function,null],default:null},normalizeMethod:{type:[Function,null],default:null},label:{default:"报价单号"},description:{default:""},trimMode:{default:"blur"}},emits:["update:modelValue","search","clear","normalize","enter","select","error","success"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.useAttrs(),f=e.ref(null),y=e.ref(!1),m=e.computed(()=>t.statusText||""),E=e.computed(()=>t.loading||y.value);function x(l){return l==null?"":String(l)}function I(l){const a=x(l).trim(),M=T(a),H=M.match(/BJ\d{8}[A-Z0-9]{4}/i);return H?H[0]:M}function T(l){return x(l).replace(/\s+/g,"").trim().toUpperCase()}function $(l){return t.extractMethod?t.extractMethod(l):I(l)}function A(l){return t.normalizeMethod?t.normalizeMethod(l):T(l)}function _(l,a){const M=x(l),H=$(M),u=t.autoNormalize?A(H):H;return r("normalize",{rawValue:M,code:u}),{rawValue:M,code:u,item:a}}function q(l){r("update:modelValue",l)}async function Q(l){if(r("search",l),!!t.searchMethod){y.value=!0;try{const a=await t.searchMethod(l);r("success",a)}catch(a){r("error",a)}finally{y.value=!1}}}function Z(l){const a=_(l);a.code!==x(t.modelValue)&&r("update:modelValue",a.code),Q(a)}function U(){r("clear")}function K(l){r("enter",l)}function G(l){if(r("select",l),!t.searchOnSelect)return;const a=_(l.value,l);a.code!==x(t.modelValue)&&r("update:modelValue",a.code),Q(a)}function X(l){r("error",l)}function J(){var l,a;(a=(l=f.value)==null?void 0:l.focus)==null||a.call(l)}function P(){var l,a;(a=(l=f.value)==null?void 0:l.blur)==null||a.call(l)}function v(){var l,a;(a=(l=f.value)==null?void 0:l.select)==null||a.call(l)}function C(){var l,a;(a=(l=f.value)==null?void 0:l.clear)==null||a.call(l)}return N({focus:J,blur:P,select:v,clear:C,extractQuoteOrderCode:$,normalizeQuoteOrderCode:A}),(l,a)=>(e.openBlock(),e.createElementBlock("div",Bo,[e.renderSlot(l.$slots,"label",{},()=>[o.label||o.description?(e.openBlock(),e.createElementBlock("div",Eo,[o.label?(e.openBlock(),e.createElementBlock("div",qo,e.toDisplayString(o.label),1)):e.createCommentVNode("",!0),o.description?(e.openBlock(),e.createElementBlock("div",No,e.toDisplayString(o.description),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],!0),e.createVNode(vt,e.mergeProps({ref_key:"searchRef",ref:f},e.unref(R),{"model-value":o.modelValue,loading:E.value,disabled:o.disabled,placeholder:o.placeholder,"remove-space":!0,"trim-mode":o.trimMode,"button-text":o.buttonText,suggestions:o.suggestions,"fetch-suggestions":o.fetchSuggestions,"fetch-suggestions-method":o.fetchSuggestionsMethod,debounce:o.debounce,"min-length":o.minLength,"search-on-select":!1,"onUpdate:modelValue":q,onSearch:Z,onClear:U,onEnter:K,onSelect:G,onError:X}),e.createSlots({_:2},[l.$slots.prefix?{name:"prefix",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"prefix",{},void 0,!0)]),key:"0"}:void 0,l.$slots.suffix?{name:"suffix",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"suffix",{},void 0,!0)]),key:"1"}:void 0,l.$slots.item?{name:"item",fn:e.withCtx(M=>[e.renderSlot(l.$slots,"item",e.normalizeProps(e.guardReactiveProps(M)),void 0,!0)]),key:"2"}:void 0,l.$slots.empty?{name:"empty",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"empty",{},void 0,!0)]),key:"3"}:void 0,l.$slots.loading?{name:"loading",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"loading",{},void 0,!0)]),key:"4"}:void 0]),1040,["model-value","loading","disabled","placeholder","trim-mode","button-text","suggestions","fetch-suggestions","fetch-suggestions-method","debounce","min-length"]),o.showStatus&&m.value?e.renderSlot(l.$slots,"status",{status:o.status,statusText:m.value},()=>[e.createElementVNode("div",{class:e.normalizeClass(["qy-record-quote-search__status",`is-${o.status}`])},e.toDisplayString(m.value),3)],!0,0):e.createCommentVNode("",!0)]))}}),Io=me._export_sfc($o,[["__scopeId","data-v-3a314f64"]]),Qo={class:"qy-selection-dialog"},Mo={class:"qy-selection-dialog__main"},zo={key:0,class:"qy-selection-dialog__selected"},To={class:"qy-selection-dialog__selected-tags"},Ao={key:0,class:"qy-selection-dialog__selected-actions"},Fo={key:1,class:"qy-selection-dialog__search-row"},Ro={key:0,class:"qy-selection-dialog__toolbar"},Po={key:2,class:"qy-selection-dialog__pagination"},Do={class:"qy-selection-dialog__paste-actions"},Oo=e.defineComponent({name:"QySelectionDialog",inheritAttrs:!1,__name:"index",props:{modelValue:{default:()=>[]},open:{type:Boolean,default:!0},title:{default:"选择数据"},width:{default:"1200px"},fetchMethod:{type:Function,default:void 0},query:{type:Function,default:void 0},responseFormatter:{type:Function,default:void 0},selectionMode:{default:void 0},selection:{default:"single"},selected:{default:()=>[]},rowKey:{default:"id"},mainKey:{default:void 0},labelKey:{default:"name"},tagName:{default:void 0},searchKey:{default:"conditions"},queryParams:{default:()=>({})},category:{type:[Array,Function,Boolean],default:!1},categoryFormatter:{type:[Function,Array],default:void 0},categoryOptions:{default:()=>[]},categoryFetchMethod:{type:[Function,null],default:null},type:{type:[Array,Boolean],default:!1},typeOptions:{default:()=>[]},typeSelectionProps:{default:()=>({})},typeSelectProps:{default:()=>({})},tableProps:{default:()=>({})},showSelected:{type:Boolean,default:!0},showSearch:{type:Boolean,default:!0},showPagination:{type:Boolean,default:!0},showCopyPaste:{type:Boolean,default:!1},append:{type:Boolean,default:!1},showAppend:{type:Boolean,default:!1},pageSizes:{default:()=>[10,20,50,100]}},emits:["update:modelValue","selection-change","confirm","submit","cancel","close","append","loaded"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.useAttrs(),f=e.useSlots(),y=e.getCurrentInstance(),m=e.ref(null),E=e.ref([]),x=e.ref([]),I=e.ref([]),T=e.ref(!1),$=e.ref(0),A=e.ref(!1),_=e.ref(""),q=e.reactive({category:[],type:"",page:1,pageSize:10,...t.searchKey?{[t.searchKey]:""}:{},...t.queryParams}),Q=e.computed(()=>t.selectionMode?t.selectionMode:t.selection==="multi"?"multiple":t.selection),Z=e.computed(()=>t.mainKey||t.rowKey),U=e.computed(()=>t.tagName||t.labelKey),K=e.computed(()=>t.typeOptions.length?t.typeOptions:t.type||[]),G=e.computed(()=>({...t.typeSelectionProps,...t.typeSelectProps})),X=e.computed(()=>t.tableProps||{}),J=e.computed(()=>t.showSearch||!!R["search-visible"]),P=e.computed(()=>t.showAppend||t.append),v=e.computed(()=>P.value||!!f.toolbar||!!f.bar),C=e.computed(()=>t.fetchMethod||t.query),l=e.computed(()=>a()?t.modelValue:t.selected);function a(){const c=(y==null?void 0:y.vnode.props)||{};return Object.prototype.hasOwnProperty.call(c,"modelValue")||Object.prototype.hasOwnProperty.call(c,"model-value")||Object.prototype.hasOwnProperty.call(c,"onUpdate:modelValue")}e.watch([()=>t.modelValue,()=>t.selected,()=>t.open],()=>{t.open&&(x.value=fe(l.value),j())},{immediate:!0,deep:!0}),e.watch([()=>t.categoryOptions,()=>t.category],c=>{if(Array.isArray(t.category)&&t.category.length){I.value=t.category;return}I.value=t.categoryOptions||[]},{immediate:!0}),e.watch(A,c=>{c||(_.value="")});async function M(){x.value=fe(l.value),await H(),await u(),j()}async function H(){const c=t.categoryFetchMethod||(typeof t.category=="function"?t.category:null);if(!c)return;const d=await c();I.value=oe(d)}async function u(){if(C.value){T.value=!0;try{const c=await C.value(se()),d=t.responseFormatter?await t.responseFormatter(c):c,{rows:F,total:n}=Y(d);return E.value=F,$.value=n,r("loaded",F),j(),d}finally{T.value=!1}}}function g(){return q.page=1,u()}function S(){return q.page=1,u()}function h(){return Object.assign(q,{category:[],type:"",page:1,pageSize:q.pageSize,...t.searchKey?{[t.searchKey]:""}:{},...t.queryParams}),u()}function B(){r("append")}function Y(c){if(Array.isArray(c))return{rows:c,total:c.length};const d=c==null?void 0:c.data;if(Array.isArray(d))return{rows:d,total:(c==null?void 0:c.total)??d.length};const F=(c==null?void 0:c.records)||(c==null?void 0:c.rows)||(d==null?void 0:d.records)||[],n=(c==null?void 0:c.total)??(d==null?void 0:d.total)??F.length;return{rows:F,total:n}}function oe(c){const d=(c==null?void 0:c.data)??c;if(!Array.isArray(d))return[];if(typeof t.categoryFormatter=="function")return t.categoryFormatter(d);if(Array.isArray(t.categoryFormatter)){const[F,n]=t.categoryFormatter;return d.map(s=>({...s,label:s[F],value:s[n],children:Array.isArray(s.children)?ne(s.children,F,n):s.children}))}return d}function ne(c,d,F){return c.map(n=>({...n,label:n[d],value:n[F],children:Array.isArray(n.children)?ne(n.children,d,F):n.children}))}function se(){const c={...t.queryParams,...q};return t.searchKey&&(c[t.searchKey]=String(c[t.searchKey]||"").trim()),c.category=p(),c}function p(){if(Object.prototype.hasOwnProperty.call(t.queryParams,"category"))return t.queryParams.category;const c=q.category;return Array.isArray(c)?c:c?[c]:[]}function L(c){var d,F;if(Q.value!=="none"){if(Q.value==="single"){x.value=[c],(d=m.value)==null||d.setCurrentRow(c),ye();return}ie(c)&&((F=m.value)==null||F.toggleRowSelection(c,!ue(c)))}}function i(c){if(Q.value!=="multiple")return;const d=new Set(E.value.map(te)),F=new Set(c.map(te));x.value=x.value.filter(n=>!d.has(te(n))||F.has(te(n))),c.forEach(n=>{ue(n)||x.value.push(n)}),ye()}function w(c){var F,n;x.value=x.value.filter(s=>te(s)!==te(c));const d=E.value.find(s=>te(s)===te(c));d&&(Q.value==="multiple"?(F=m.value)==null||F.toggleRowSelection(d,!1):(n=m.value)==null||n.setCurrentRow()),ye()}function j(){e.nextTick(()=>{var c;if(m.value){if(Q.value==="single"){const[d]=x.value,F=E.value.find(n=>d&&te(n)===te(d));(c=m.value)==null||c.setCurrentRow(F);return}Q.value==="multiple"&&E.value.forEach(d=>{var F;(F=m.value)==null||F.toggleRowSelection(d,ue(d))})}})}function ie(c){var F;const d=(F=X.value)==null?void 0:F.selectable;return typeof d=="function"?d(c)!==!1:!0}function ue(c){return x.value.some(d=>te(d)===te(c))}function te(c){return he(c,Z.value)}function ge(c){return he(c,U.value)??te(c)}function he(c,d){if(!(!c||!d))return d.split(".").reduce((F,n)=>F==null?void 0:F[n],c)}function ye(){const c=fe(x.value);r("selection-change",c)}function be(){const c=fe(x.value);r("update:modelValue",c),r("confirm",c),r("submit",{selection:c,rows:c,query:{...q}})}function ve(){x.value=fe(l.value),r("cancel"),r("close")}async function ke(){var d;const c=JSON.stringify(x.value);await((d=navigator.clipboard)==null?void 0:d.writeText(c)),V.ElMessage.success("复制成功")}function pe(){try{const c=JSON.parse(_.value);if(!Array.isArray(c)){V.ElMessage.error("粘贴内容需要是数组");return}c.forEach(d=>{ue(d)||x.value.push(d)}),A.value=!1,ye(),j()}catch(c){V.ElMessage.error(`粘贴错误: ${(c==null?void 0:c.message)||"内容格式错误"}`)}}function fe(c=[]){return c.map(d=>({...d}))}return N({search:g,handleSearch:u,handleQuerySearch:g,resetSearch:h,getTableRef:()=>m.value,getTableData:()=>E.value,getSelection:()=>fe(x.value)}),(c,d)=>{const F=de.ElLoadingDirective;return e.openBlock(),e.createBlock(Ce,e.mergeProps(e.unref(R),{"model-value":o.open,title:o.title,width:o.width,"destroy-on-close":"",draggable:"","align-center":"","append-to-body":"",onOpened:M,onConfirm:be,onCancel:ve}),{default:e.withCtx(()=>[e.createElementVNode("div",Qo,[e.renderSlot(c.$slots,"side",{},void 0,!0),e.createElementVNode("div",Mo,[o.showSelected?(e.openBlock(),e.createElementBlock("div",zo,[d[12]||(d[12]=e.createElementVNode("span",{class:"qy-selection-dialog__selected-label"},"已选项",-1)),e.createElementVNode("div",To,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,n=>(e.openBlock(),e.createBlock(Ve.Tag,{key:te(n),closable:"",class:"qy-selection-dialog__selected-tag",onClose:s=>w(n)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(ge(n)),1)]),_:2},1032,["onClose"]))),128)),x.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Ve.Tag,{key:0,tone:"info"},{default:e.withCtx(()=>[...d[9]||(d[9]=[e.createTextVNode("无",-1)])]),_:1}))]),o.showCopyPaste?(e.openBlock(),e.createElementBlock("div",Ao,[e.createVNode(e.unref(V.ElButton),{size:"small",onClick:ke},{default:e.withCtx(()=>[...d[10]||(d[10]=[e.createTextVNode("复制",-1)])]),_:1}),e.createVNode(e.unref(V.ElButton),{size:"small",onClick:d[0]||(d[0]=n=>A.value=!0)},{default:e.withCtx(()=>[...d[11]||(d[11]=[e.createTextVNode("粘贴",-1)])]),_:1})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),J.value?(e.openBlock(),e.createElementBlock("div",Fo,[e.createVNode(e.unref(V.ElForm),{class:"qy-selection-dialog__search",inline:"",model:q},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"search",{query:q,search:g,reset:h},()=>[I.value.length?(e.openBlock(),e.createBlock(e.unref(V.ElFormItem),{key:0,label:"分类"},{default:e.withCtx(()=>[e.createVNode(pt._sfc_main,{modelValue:q.category,"onUpdate:modelValue":d[1]||(d[1]=n=>q.category=n),class:"qy-selection-dialog__category",options:I.value,clearable:"",filterable:"","check-strictly":"","render-after-expand":!1,onChange:g},null,8,["modelValue","options"])]),_:1})):e.createCommentVNode("",!0),K.value.length?(e.openBlock(),e.createBlock(e.unref(V.ElFormItem),{key:1,label:"类型"},{default:e.withCtx(()=>[e.createVNode(qe.Select,e.mergeProps({modelValue:q.type,"onUpdate:modelValue":d[2]||(d[2]=n=>q.type=n),class:"qy-selection-dialog__type",options:K.value,placeholder:"请选择类型",clearable:""},G.value,{onChange:g}),null,16,["modelValue","options"])]),_:1})):e.createCommentVNode("",!0),o.searchKey?(e.openBlock(),e.createBlock(e.unref(V.ElFormItem),{key:2,label:"搜索"},{default:e.withCtx(()=>[e.createVNode(e.unref(V.ElInput),{modelValue:q[o.searchKey],"onUpdate:modelValue":d[3]||(d[3]=n=>q[o.searchKey]=n),clearable:"",placeholder:"请输入",class:"qy-selection-dialog__search-input",onKeydown:e.withKeys(e.withModifiers(g,["prevent"]),["enter"])},null,8,["modelValue","onKeydown"])]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(V.ElFormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(V.ElButton),{type:"primary",onClick:g},{default:e.withCtx(()=>[...d[13]||(d[13]=[e.createTextVNode("查询",-1)])]),_:1}),e.createVNode(e.unref(V.ElButton),{onClick:h},{default:e.withCtx(()=>[...d[14]||(d[14]=[e.createTextVNode("重置",-1)])]),_:1})]),_:1})],!0)]),_:3},8,["model"]),v.value?(e.openBlock(),e.createElementBlock("div",Ro,[P.value?(e.openBlock(),e.createBlock(e.unref(V.ElButton),{key:0,type:"primary",onClick:B},{default:e.withCtx(()=>[...d[15]||(d[15]=[e.createTextVNode(" 新增 ",-1)])]),_:1})):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"toolbar",{query:q,search:g},void 0,!0),e.renderSlot(c.$slots,"bar",{query:q,search:g},void 0,!0)])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.withDirectives((e.openBlock(),e.createBlock(e.unref(V.ElTable),e.mergeProps({ref_key:"tableRef",ref:m,data:E.value,"row-key":Z.value,border:"","highlight-current-row":"","max-height":"550px"},X.value,{onSelectionChange:i,onRowClick:L}),{default:e.withCtx(()=>{var n;return[Q.value==="multiple"?(e.openBlock(),e.createBlock(e.unref(V.ElTableColumn),{key:0,type:"selection","reserve-selection":"",width:"42",selectable:(n=X.value)==null?void 0:n.selectable},null,8,["selectable"])):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"columns",{},void 0,!0),e.renderSlot(c.$slots,"cols",{},void 0,!0)]}),_:3},16,["data","row-key"])),[[F,T.value]]),o.showPagination&&$.value>0?(e.openBlock(),e.createElementBlock("div",Po,[e.createVNode(e.unref(V.ElPagination),{"current-page":q.page,"onUpdate:currentPage":d[4]||(d[4]=n=>q.page=n),"page-size":q.pageSize,"onUpdate:pageSize":d[5]||(d[5]=n=>q.pageSize=n),total:$.value,"page-sizes":o.pageSizes,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:S,onCurrentChange:u},null,8,["current-page","page-size","total","page-sizes"])])):e.createCommentVNode("",!0)])]),e.createVNode(Ce,{modelValue:A.value,"onUpdate:modelValue":d[8]||(d[8]=n=>A.value=n),title:"粘贴数据",layout:!1,width:"560px"},{default:e.withCtx(()=>[e.createVNode(e.unref(V.ElInput),{modelValue:_.value,"onUpdate:modelValue":d[6]||(d[6]=n=>_.value=n),type:"textarea",rows:8},null,8,["modelValue"]),e.createElementVNode("div",Do,[e.createVNode(e.unref(V.ElButton),{onClick:d[7]||(d[7]=n=>A.value=!1)},{default:e.withCtx(()=>[...d[16]||(d[16]=[e.createTextVNode("取消",-1)])]),_:1}),e.createVNode(e.unref(V.ElButton),{type:"primary",onClick:pe},{default:e.withCtx(()=>[...d[17]||(d[17]=[e.createTextVNode("确认",-1)])]),_:1})])]),_:1},8,["modelValue"])]),_:3},16,["model-value","title","width"])}}}),wt=me._export_sfc(Oo,[["__scopeId","data-v-31ee3945"]]),_o=e.defineComponent({name:"QyLegacySelectionDialog",inheritAttrs:!1,__name:"index",props:{open:{type:Boolean,default:!0},title:{default:"选择数据"},width:{default:"1200px"},query:{type:Function,default:void 0},responseFormatter:{type:Function,default:void 0},selection:{default:"single"},selected:{default:()=>[]},mainKey:{default:""},tagName:{default:""},searchKey:{default:"conditions"},queryParams:{default:()=>({})},category:{type:[Array,Function,Boolean],default:!1},categoryFormatter:{type:[Function,Array],default:void 0},type:{type:[Array,Boolean],default:!1},typeSelectionProps:{default:()=>({})},tableProps:{default:()=>({})},append:{type:Boolean,default:!1},delete:{type:Boolean,default:!1},select:{default:null}},emits:["close","submit","openDialog","changeIndexShow"],setup(o,{expose:N,emit:O}){const t=o,r=O,R=e.useAttrs(),f=e.ref(null),y=e.reactive({category:[],code:"",...t.searchKey?{[t.searchKey]:""}:{},page:1,pageSize:10,type:"",...t.queryParams}),m=e.reactive({total:0,tableData:[],open:!1,selection:[],categories:[],types:[],tableRef:null,drag:!1,dialogOpen:!1,pasteData:"",pasteDataDialog:!1}),E=e.computed(()=>t.type||[]),x=e.computed(()=>m.categories),I=async u=>{if(!t.query)return{data:{records:[],total:0}};const g=await t.query(G(u)),S=t.responseFormatter?await t.responseFormatter(g):g;return m.total=M(S),S};e.watch(()=>t.open,u=>{m.open=u},{immediate:!0}),e.watch(E,u=>{m.types=[...u]},{immediate:!0,deep:!0}),e.watch([()=>t.selected,()=>t.open],()=>{t.open&&(m.selection=H(t.selected))},{immediate:!0,deep:!0}),e.watch(()=>t.queryParams,()=>{Object.assign(y,t.queryParams)},{deep:!0}),e.watch(()=>m.pasteDataDialog,u=>{u||(m.pasteData="")}),e.watch(()=>t.select,async()=>{t.select&&await K(t.select)},{deep:!0}),e.watch(()=>t.open,async u=>{u&&(m.dialogOpen=!1,await T())},{immediate:!0});async function T(){if(!t.category){m.categories=[];return}const u=typeof t.category=="function"?await t.category():t.category;m.categories=v(u)}async function $(){var u;return await e.nextTick(),(u=f.value)==null?void 0:u.handleQuerySearch()}function A(u){m.selection=H(u)}function _(u){var g;m.tableData=u,m.tableRef=(g=f.value)==null?void 0:g.getTableRef()}function q(u){m.selection=H(u),r("submit",m)}function Q(){r("close")}function Z(){m.dialogOpen=!0,r("openDialog")}function U(u){r("changeIndexShow",u)}async function K(u){if(!t.query||!t.searchKey||!t.mainKey)return;const g=await t.query({...y,[t.searchKey]:u[t.mainKey],category:[]}),S=t.responseFormatter?await t.responseFormatter(g):g,[h]=a(S);h&&(t.selection==="multi"?(m.selection=m.selection.filter(B=>B[t.mainKey]!==h[t.mainKey]),m.selection.push(h)):m.selection=[h])}function G(u={}){y.page=u.page??y.page,y.pageSize=u.pageSize??y.pageSize;const g={...y,category:X()};return t.searchKey&&(g[t.searchKey]=String(g[t.searchKey]||"").trim()),g}function X(){if(t.queryParams.category)return t.queryParams.category;const u=y.category;if(Array.isArray(u))return u;if(!u)return[];const g=J(m.categories,u);return g?P(g):[u]}function J(u,g){for(const S of u||[]){if(S.value===g)return S;const h=J(S.children||[],g);if(h)return h}}function P(u){return[u.value,...(u.children||[]).flatMap(P)]}function v(u){const g=(u==null?void 0:u.data)??u;if(!Array.isArray(g))return[];if(typeof t.categoryFormatter=="function")return t.categoryFormatter(g);if(Array.isArray(t.categoryFormatter)){const[S,h]=t.categoryFormatter;return l(C(g,h),S,h)}return g}function C(u,g){const S=u.map(B=>({...B})),h=[];return S.forEach(B=>{const Y=B.parentCateCode;if(!Y){h.push(B);return}const oe=S.find(ne=>ne[g]===Y);oe?(oe.children||(oe.children=[])).push(B):h.push(B)}),h}function l(u,g,S){return u.map(h=>({...h,label:h[g],value:h[S],children:Array.isArray(h.children)?l(h.children,g,S):h.children}))}function a(u){if(Array.isArray(u))return u;const g=u==null?void 0:u.data;return Array.isArray(g)?g:(u==null?void 0:u.records)||(u==null?void 0:u.rows)||(g==null?void 0:g.records)||[]}function M(u){if(Array.isArray(u))return u.length;const g=a(u),S=u==null?void 0:u.data;return(u==null?void 0:u.total)??(Array.isArray(S)?S.length:S==null?void 0:S.total)??g.length}function H(u=[]){return u.map(g=>({...g}))}return N({search:$,handleSearch:$,handleConditionChange:$,getTableRef:()=>m.tableRef,getTableData:()=>m.tableData,getSelection:()=>H(m.selection)}),(u,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(wt,e.mergeProps({ref_key:"selectionDialogRef",ref:f},e.unref(R),{modelValue:m.selection,"onUpdate:modelValue":g[3]||(g[3]=S=>m.selection=S),open:o.open,title:o.title,width:o.width,query:I,"response-formatter":o.responseFormatter,selection:o.selection,"row-key":o.mainKey,"label-key":o.tagName,"search-key":o.searchKey,"query-params":{},"category-options":x.value,"type-options":E.value,"type-select-props":o.typeSelectionProps,"table-props":o.tableProps,"show-copy-paste":!0,"show-append":o.append,onSelectionChange:A,onConfirm:q,onCancel:Q,onAppend:Z,onLoaded:_}),{side:e.withCtx(()=>[e.renderSlot(u.$slots,"side",{state:m,cate:m.categories,form:y,query:y,getData:$,search:$,changeIndexShow:U},void 0,!0)]),search:e.withCtx(()=>[e.createVNode(e.unref(V.ElForm),{inline:"",model:y},{default:e.withCtx(()=>[m.categories.length?(e.openBlock(),e.createBlock(e.unref(V.ElFormItem),{key:0,label:"分类"},{default:e.withCtx(()=>[e.createVNode(e.unref(V.ElTreeSelect),{modelValue:y.category,"onUpdate:modelValue":g[0]||(g[0]=S=>y.category=S),class:"qy-legacy-selection-dialog__category",data:m.categories,clearable:"",filterable:"","check-strictly":"","render-after-expand":!1,onChange:$},null,8,["modelValue","data"])]),_:1})):e.createCommentVNode("",!0),E.value.length?(e.openBlock(),e.createBlock(e.unref(V.ElFormItem),{key:1,label:"类型"},{default:e.withCtx(()=>[e.createVNode(e.unref(V.ElSelect),e.mergeProps({modelValue:y.type,"onUpdate:modelValue":g[1]||(g[1]=S=>y.type=S),clearable:""},o.typeSelectionProps,{onChange:$}),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(E.value,S=>(e.openBlock(),e.createBlock(e.unref(V.ElOption),{key:S.value,label:S.label,value:S.value},null,8,["label","value"]))),128))]),_:1},16,["modelValue"])]),_:1})):e.createCommentVNode("",!0),o.searchKey?(e.openBlock(),e.createBlock(e.unref(V.ElFormItem),{key:2,label:"搜索"},{default:e.withCtx(()=>[e.createVNode(e.unref(V.ElInput),{modelValue:y[o.searchKey],"onUpdate:modelValue":g[2]||(g[2]=S=>y[o.searchKey]=S),clearable:"",class:"qy-legacy-selection-dialog__search-input",onKeydown:e.withKeys(e.withModifiers($,["prevent"]),["enter"])},null,8,["modelValue","onKeydown"])]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(V.ElFormItem),null,{default:e.withCtx(()=>[e.createVNode(e.unref(V.ElButton),{type:"primary",onClick:$},{default:e.withCtx(()=>[...g[4]||(g[4]=[e.createTextVNode("查询",-1)])]),_:1})]),_:1})]),_:1},8,["model"])]),toolbar:e.withCtx(()=>[e.renderSlot(u.$slots,"bar",{query:y,search:$},void 0,!0)]),columns:e.withCtx(()=>[e.renderSlot(u.$slots,"cols",{},void 0,!0),e.renderSlot(u.$slots,"columns",{},void 0,!0)]),_:3},16,["modelValue","open","title","width","response-formatter","selection","row-key","label-key","search-key","category-options","type-options","type-select-props","table-props","show-append"]),e.renderSlot(u.$slots,"dialog",{state:m,form:y,getData:$},void 0,!0)],64))}}),Uo=me._export_sfc(_o,[["__scopeId","data-v-b54ca11b"]]),Ko={class:"qy-form-section__heading"},Lo={key:0,class:"qy-form-section__title"},jo={key:0,class:"qy-form-section__description"},Ho={class:"qy-form-section__actions"},Zo=e.defineComponent({name:"QyFormSection",__name:"index",props:{title:{default:""},description:{default:""},tip:{default:""},tipType:{default:"info"},collapsible:{type:Boolean,default:!1},defaultExpanded:{type:Boolean,default:!0},bordered:{type:Boolean,default:!0},background:{default:"white"},bodyClass:{default:""},headerClass:{default:""}},emits:["toggle"],setup(o,{emit:N}){const O=o,t=N,r=e.ref(O.defaultExpanded);e.watch(()=>O.defaultExpanded,y=>{r.value=y});function R(){O.collapsible&&(r.value=!r.value,t("toggle",r.value))}function f(){O.collapsible&&R()}return(y,m)=>(e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(["qy-form-section",[`is-bg-${o.background}`,{"is-bordered":o.bordered,"is-collapsible":o.collapsible}]])},[e.createElementVNode("header",{class:e.normalizeClass(["qy-form-section__header",o.headerClass]),onClick:f},[e.createElementVNode("div",Ko,[e.renderSlot(y.$slots,"title",{},()=>[o.title?(e.openBlock(),e.createElementBlock("div",Lo,e.toDisplayString(o.title),1)):e.createCommentVNode("",!0)],!0),e.renderSlot(y.$slots,"description",{},()=>[o.description?(e.openBlock(),e.createElementBlock("div",jo,e.toDisplayString(o.description),1)):e.createCommentVNode("",!0)],!0)]),e.createElementVNode("div",Ho,[e.renderSlot(y.$slots,"actions",{},void 0,!0),o.collapsible?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"qy-form-section__toggle",onClick:e.withModifiers(R,["stop"])},e.toDisplayString(r.value?"收起":"展开"),1)):e.createCommentVNode("",!0)])],2),e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(["qy-form-section__body",o.bodyClass])},[e.renderSlot(y.$slots,"tip",{},()=>[o.tip?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["qy-form-section__tip",`is-${o.tipType}`])},e.toDisplayString(o.tip),3)):e.createCommentVNode("",!0)],!0),e.renderSlot(y.$slots,"default",{},void 0,!0)],2),[[e.vShow,r.value]])],2))}}),Wo=me._export_sfc(Zo,[["__scopeId","data-v-8149aa01"]]),Go={key:0,class:"qy-action-bar__left"},Xo={key:1,class:"qy-action-bar__center"},Jo={key:2,class:"qy-action-bar__right"},Yo=e.defineComponent({name:"QyActionBar",__name:"index",props:{sticky:{type:Boolean,default:!0},offsetBottom:{default:0},bordered:{type:Boolean,default:!0},shadow:{type:Boolean,default:!1},wrap:{type:Boolean,default:!0},justify:{default:"between"},background:{default:"#fff"}},setup(o){const N=o,O=e.computed(()=>({bottom:`${N.offsetBottom}px`,background:N.background}));return(t,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["qy-action-bar",[`is-justify-${o.justify}`,{"is-sticky":o.sticky,"is-bordered":o.bordered,"is-shadow":o.shadow,"is-wrap":o.wrap}]]),style:e.normalizeStyle(O.value)},[t.$slots.left?(e.openBlock(),e.createElementBlock("div",Go,[e.renderSlot(t.$slots,"left",{},void 0,!0)])):e.createCommentVNode("",!0),t.$slots.default?(e.openBlock(),e.createElementBlock("div",Xo,[e.renderSlot(t.$slots,"default",{},void 0,!0)])):e.createCommentVNode("",!0),t.$slots.right?(e.openBlock(),e.createElementBlock("div",Jo,[e.renderSlot(t.$slots,"right",{},void 0,!0)])):e.createCommentVNode("",!0)],6))}}),el=me._export_sfc(Yo,[["__scopeId","data-v-ecba8f49"]]),Ne=D.withInstall(gt,"QyUpload"),$e=D.withInstall(bt.Image,"QyImage"),Ie=D.withInstall(kt._sfc_main,"QyImagePreview"),Qe=D.withInstall(Gt,"QyImageUpload"),Me=D.withInstall(Ce,"QyDialog"),ze=D.withInstall(wo,"QyRemarkImage"),Te=D.withInstall(Vt.Button,"QyButton"),Ae=D.withInstall(St.Dropdown,"QyDropdown"),Fe=D.withInstall(Ct._sfc_main,"QyInput"),Re=D.withInstall(Bt._sfc_main,"QyInputNumber"),Pe=D.withInstall(bo,"QyMoneyInput"),De=D.withInstall(Et._sfc_main,"QyDatePicker"),Oe=D.withInstall(qt.Checkbox,"QyCheckbox"),_e=D.withInstall(Nt._sfc_main,"QyCheckboxGroup"),Ue=D.withInstall($t.Radio,"QyRadio"),Ke=D.withInstall(It._sfc_main,"QyAutocomplete"),Le=D.withInstall(Qt.MenuActions,"QyMenuActions"),je=D.withInstall(Mt.TableColumnSettings,"QyTableColumnSettings"),He=D.withInstall(zt._sfc_main,"QyRadioGroup"),Ze=D.withInstall(ko,"QyRemoteSelect"),We=D.withInstall(vt,"QySearchInput"),Ge=D.withInstall(Io,"QyRecordQuoteSearch"),Xe=D.withInstall(qe.Select,"QySelect"),Je=D.withInstall(pt._sfc_main,"QyTreeSelect"),Ye=D.withInstall(wt,"QySelectionDialog"),et=D.withInstall(Uo,"QyLegacySelectionDialog"),tt=D.withInstall(Wo,"QyFormSection"),ot=D.withInstall(el,"QyActionBar"),lt=D.withInstall(Tt.FilePicker,"QyFilePicker"),nt=D.withInstall(At.Switch,"QySwitch"),at=D.withInstall(Ve.Tag,"QyTag"),rt=D.withInstall(Ft._sfc_main,"QyTooltip"),it=D.withInstall(Rt._sfc_main,"QyPopover"),tl=o=>{o.component("QyDialog",Me),o.component("QyUpload",Ne),o.component("QyImage",$e),o.component("QyImagePreview",Ie),o.component("QyImageUpload",Qe),o.component("QyRemarkImage",ze),o.component("QyButton",Te),o.component("QyDropdown",Ae),o.component("QyInput",Fe),o.component("QyInputNumber",Re),o.component("QyMoneyInput",Pe),o.component("QyDatePicker",De),o.component("QyCheckbox",Oe),o.component("QyCheckboxGroup",_e),o.component("QyRadio",Ue),o.component("QyAutocomplete",Ke),o.component("QyMenuActions",Le),o.component("QyTableColumnSettings",je),o.component("QyRadioGroup",He),o.component("QyRemoteSelect",Ze),o.component("QySearchInput",We),o.component("QyRecordQuoteSearch",Ge),o.component("QySelect",Xe),o.component("QyTreeSelect",Je),o.component("QySelectionDialog",Ye),o.component("QyLegacySelectionDialog",et),o.component("QyFormSection",tt),o.component("QyActionBar",ot),o.component("QyFilePicker",lt),o.component("QySwitch",nt),o.component("QyTag",at),o.component("QyTooltip",rt),o.component("QyPopover",it)},ol={install:tl,QyUpload:Ne,QyImage:$e,QyImagePreview:Ie,openQyImagePreview:Pt.openQyImagePreview,QyImageUpload:Qe,QyDialog:Me,QyButton:Te,QyDropdown:Ae,QyInput:Fe,QyInputNumber:Re,QyMoneyInput:Pe,QyDatePicker:De,QyCheckbox:Oe,QyCheckboxGroup:_e,QyRadio:Ue,QyAutocomplete:Ke,QyMenuActions:Le,QyTableColumnSettings:je,QyRadioGroup:He,QyRemoteSelect:Ze,QySearchInput:We,QyRecordQuoteSearch:Ge,QySelect:Xe,QyTreeSelect:Je,QySelectionDialog:Ye,QyLegacySelectionDialog:et,QyFormSection:tt,QyActionBar:ot,QyFilePicker:lt,QySwitch:nt,QyTag:at,QyTooltip:rt,QyPopover:it,QyRemarkImage:ze};exports.QyActionBar=ot;exports.QyAutocomplete=Ke;exports.QyButton=Te;exports.QyCheckbox=Oe;exports.QyCheckboxGroup=_e;exports.QyDatePicker=De;exports.QyDialog=Me;exports.QyDropdown=Ae;exports.QyFilePicker=lt;exports.QyFormSection=tt;exports.QyImage=$e;exports.QyImagePreview=Ie;exports.QyImageUpload=Qe;exports.QyInput=Fe;exports.QyInputNumber=Re;exports.QyLegacySelectionDialog=et;exports.QyMenuActions=Le;exports.QyMoneyInput=Pe;exports.QyPopover=it;exports.QyRadio=Ue;exports.QyRadioGroup=He;exports.QyRecordQuoteSearch=Ge;exports.QyRemarkImage=ze;exports.QyRemoteSelect=Ze;exports.QySearchInput=We;exports.QySelect=Xe;exports.QySelectionDialog=Ye;exports.QySwitch=nt;exports.QyTableColumnSettings=je;exports.QyTag=at;exports.QyTooltip=rt;exports.QyTreeSelect=Je;exports.QyUpload=Ne;exports.formatRemarkText=ht;exports.index=ol;exports.parseRemarkText=Be;exports.parseRemarkWithImage=Ee;