foucui 1.0.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/README.md +8 -8
  2. package/README.publish.md +19 -0
  3. package/dist/components/{QiuAnchor → FouAnchor}/context.d.ts +4 -4
  4. package/dist/components/{QiuBadge → FouBadge}/composables/useTableHostHeight.d.ts +1 -1
  5. package/dist/components/FouBadge/index.d.ts +18 -0
  6. package/dist/components/{QiuBadge → FouBadge}/shared/BadgeTemplateRenderer.vue.d.ts +1 -1
  7. package/dist/components/{QiuBadge → FouBadge}/shared/badgeTemplate.d.ts +1 -1
  8. package/dist/components/{QiuButton → FouButton}/index.vue.d.ts +4 -4
  9. package/dist/components/{QiuCanvasKit/QiuCanvasEditor.vue.d.ts → FouCanvasKit/FouCanvasEditor.vue.d.ts} +4 -2
  10. package/dist/components/{QiuCanvasKit → FouCanvasKit}/components/DataModulesPanel.vue.d.ts +1 -0
  11. package/dist/components/{QiuCanvasKit → FouCanvasKit}/index.d.ts +4 -4
  12. package/dist/components/{QiuCanvasKit → FouCanvasKit}/types.d.ts +1 -1
  13. package/dist/components/{QiuCarousel → FouCarousel}/context.d.ts +4 -4
  14. package/dist/components/{QiuCascader → FouCascader}/types.d.ts +7 -7
  15. package/dist/components/{QiuCheckbox → FouCheckbox}/types.d.ts +1 -1
  16. package/dist/components/{QiuCollapse → FouCollapse}/context.d.ts +2 -2
  17. package/dist/components/{QiuDescriptions → FouDescriptions}/context.d.ts +4 -4
  18. package/dist/components/{QiuDropdown → FouDropdown}/context.d.ts +2 -2
  19. package/dist/components/{QiuForm → FouForm}/types.d.ts +10 -10
  20. package/dist/components/FouLoading/index.d.ts +26 -0
  21. package/dist/components/{QiuLoading → FouLoading}/spinner.vue.d.ts +3 -3
  22. package/dist/components/{QiuLoading → FouLoading}/types.d.ts +2 -2
  23. package/dist/components/{QiuMenu → FouMenu}/context.d.ts +2 -2
  24. package/dist/components/{QiuMenuNav → FouMenuNav}/context.d.ts +2 -2
  25. package/dist/components/{QiuMsg/QiuMsgItem.vue.d.ts → FouMsg/FouMsgItem.vue.d.ts} +3 -3
  26. package/dist/components/FouMsg/index.d.ts +30 -0
  27. package/dist/components/{QiuMsg → FouMsg}/types.d.ts +5 -5
  28. package/dist/components/{QiuMsgBox → FouMsgBox}/index.d.ts +3 -3
  29. package/dist/components/{QiuNotification/QiuNotificationItem.vue.d.ts → FouNotification/FouNotificationItem.vue.d.ts} +3 -3
  30. package/dist/components/FouNotification/index.d.ts +30 -0
  31. package/dist/components/FouNotification/types.d.ts +12 -0
  32. package/dist/components/{QiuRadio → FouRadio}/types.d.ts +1 -1
  33. package/dist/components/FouRow/types.d.ts +4 -0
  34. package/dist/components/{QiuSelect → FouSelect}/index.vue.d.ts +3 -3
  35. package/dist/components/{QiuSelect → FouSelect}/types.d.ts +3 -3
  36. package/dist/components/{QiuStep → FouStep}/index.vue.d.ts +1 -1
  37. package/dist/components/{QiuSteps → FouSteps}/context.d.ts +5 -5
  38. package/dist/components/{QiuTabBar → FouTabBar}/index.vue.d.ts +3 -3
  39. package/dist/components/{QiuTabBar → FouTabBar}/types.d.ts +5 -5
  40. package/dist/components/{QiuTable → FouTable}/export.d.ts +5 -5
  41. package/dist/components/FouTable/index.d.ts +3 -0
  42. package/dist/components/{QiuTable → FouTable}/index.vue.d.ts +60 -60
  43. package/dist/components/FouTable/registry.d.ts +39 -0
  44. package/dist/components/{QiuTable → FouTable}/types.d.ts +60 -60
  45. package/dist/components/{QiuTable → FouTable}/useArea.d.ts +10 -10
  46. package/dist/components/{QiuTable → FouTable}/useColumns.d.ts +5 -5
  47. package/dist/components/FouTable/useEdit.d.ts +36 -0
  48. package/dist/components/{QiuTable → FouTable}/useHistory.d.ts +5 -5
  49. package/dist/components/{QiuTable → FouTable}/useMerge.d.ts +6 -6
  50. package/dist/components/{QiuTable → FouTable}/useScrollSync.d.ts +1 -1
  51. package/dist/components/{QiuTable → FouTable}/utils.d.ts +17 -17
  52. package/dist/components/FouTree/types.d.ts +13 -0
  53. package/dist/components/{QiuUpload → FouUpload}/index.vue.d.ts +17 -17
  54. package/dist/foucui.css +1 -1
  55. package/dist/foucui.js +10749 -10646
  56. package/dist/foucui.umd.cjs +40 -40
  57. package/dist/index.d.ts +43 -43
  58. package/dist/src/bridge/@/config/index.d.ts +1 -1
  59. package/dist/src/bridge/@fou/plugins/shortcuts.d.ts +2 -0
  60. package/package.json +27 -15
  61. package/components/QiuAffix/index.vue +0 -186
  62. package/components/QiuAlert/index.vue +0 -208
  63. package/components/QiuAnchor/context.ts +0 -18
  64. package/components/QiuAnchor/index.vue +0 -180
  65. package/components/QiuAnchorLink/index.vue +0 -67
  66. package/components/QiuApp/index.vue +0 -9
  67. package/components/QiuAutocomplete/index.vue +0 -408
  68. package/components/QiuAvatar/index.vue +0 -140
  69. package/components/QiuBacktop/index.vue +0 -121
  70. package/components/QiuBadge/api/index.ts +0 -389
  71. package/components/QiuBadge/components/BadgeImagePickerDialog.vue +0 -243
  72. package/components/QiuBadge/components/BadgeLibraryManagerDialog.vue +0 -30
  73. package/components/QiuBadge/components/BadgeLibraryPanel.vue +0 -182
  74. package/components/QiuBadge/composables/useTableHostHeight.ts +0 -53
  75. package/components/QiuBadge/index.ts +0 -18
  76. package/components/QiuBadge/shared/BadgeTemplateRenderer.vue +0 -32
  77. package/components/QiuBadge/shared/assetUrl.ts +0 -26
  78. package/components/QiuBadge/shared/badgeTemplate.ts +0 -309
  79. package/components/QiuBadge/utils/chinaAreaData.ts +0 -44
  80. package/components/QiuBadge/utils/hostRegion.ts +0 -22
  81. package/components/QiuBadge/utils/pca-code.json +0 -1
  82. package/components/QiuBadge/utils/pdfFromElement.ts +0 -348
  83. package/components/QiuBadge/views/BadgeLibraryView.vue +0 -32
  84. package/components/QiuBadge/views/BadgeManageView.vue +0 -1364
  85. package/components/QiuBadge/views/BadgeTemplateEditorView.vue +0 -10
  86. package/components/QiuBadge/views/BadgeTemplateListView.vue +0 -229
  87. package/components/QiuBadge/views/DeskLabelTemplateListView.vue +0 -227
  88. package/components/QiuBadge/views/DeskLabelView.vue +0 -683
  89. package/components/QiuBadgeDot/index.vue +0 -87
  90. package/components/QiuButton/index.vue +0 -247
  91. package/components/QiuButtonGroup/index.vue +0 -63
  92. package/components/QiuCanvasKit/QiuCanvasEditor.vue +0 -5503
  93. package/components/QiuCanvasKit/QiuCanvasRenderer.vue +0 -348
  94. package/components/QiuCanvasKit/assetUrl.ts +0 -11
  95. package/components/QiuCanvasKit/components/DataModulesPanel.vue +0 -352
  96. package/components/QiuCanvasKit/export/html.ts +0 -132
  97. package/components/QiuCanvasKit/export/pdf.ts +0 -48
  98. package/components/QiuCanvasKit/export/png.ts +0 -50
  99. package/components/QiuCanvasKit/index.ts +0 -20
  100. package/components/QiuCanvasKit/modules/badgeCompat.ts +0 -84
  101. package/components/QiuCanvasKit/modules/dataRegistry.ts +0 -207
  102. package/components/QiuCanvasKit/modules/merge.ts +0 -71
  103. package/components/QiuCanvasKit/presets/badge.ts +0 -67
  104. package/components/QiuCanvasKit/presets/banner.ts +0 -79
  105. package/components/QiuCanvasKit/types.ts +0 -138
  106. package/components/QiuCard/index.vue +0 -104
  107. package/components/QiuCarousel/context.ts +0 -16
  108. package/components/QiuCarousel/index.vue +0 -343
  109. package/components/QiuCarouselItem/index.vue +0 -47
  110. package/components/QiuCascader/index.vue +0 -879
  111. package/components/QiuCascader/types.ts +0 -48
  112. package/components/QiuCheckbox/QiuCheckboxGroup.vue +0 -78
  113. package/components/QiuCheckbox/index.vue +0 -231
  114. package/components/QiuCheckbox/types.ts +0 -8
  115. package/components/QiuCode/index.vue +0 -64
  116. package/components/QiuCol/col.scss +0 -55
  117. package/components/QiuCol/index.vue +0 -64
  118. package/components/QiuCollapse/context.ts +0 -10
  119. package/components/QiuCollapse/index.vue +0 -70
  120. package/components/QiuCollapseItem/index.vue +0 -167
  121. package/components/QiuColorField/index.vue +0 -296
  122. package/components/QiuColorPicker/README.md +0 -118
  123. package/components/QiuColorPicker/index.vue +0 -60
  124. package/components/QiuColorfulCard/index.vue +0 -101
  125. package/components/QiuCombobox/index.vue +0 -277
  126. package/components/QiuConfigProvider/index.vue +0 -31
  127. package/components/QiuContextMenu/index.vue +0 -209
  128. package/components/QiuDate/index.vue +0 -1134
  129. package/components/QiuDescriptions/context.ts +0 -20
  130. package/components/QiuDescriptions/index.vue +0 -115
  131. package/components/QiuDescriptionsItem/index.vue +0 -103
  132. package/components/QiuDialog/index.vue +0 -828
  133. package/components/QiuDigitalCard/index.vue +0 -159
  134. package/components/QiuDivider/index.vue +0 -185
  135. package/components/QiuDot/index.vue +0 -83
  136. package/components/QiuDrawer/index.vue +0 -350
  137. package/components/QiuDropdown/QiuDropdownItem.vue +0 -74
  138. package/components/QiuDropdown/QiuDropdownMenu.vue +0 -22
  139. package/components/QiuDropdown/context.ts +0 -9
  140. package/components/QiuDropdown/index.vue +0 -189
  141. package/components/QiuEmpty/index.vue +0 -73
  142. package/components/QiuForm/index.vue +0 -172
  143. package/components/QiuForm/types.ts +0 -39
  144. package/components/QiuFormItem/index.vue +0 -276
  145. package/components/QiuFullscreen/index.vue +0 -11
  146. package/components/QiuGrid/index.vue +0 -408
  147. package/components/QiuHoverCard/index.vue +0 -192
  148. package/components/QiuIcon/index.vue +0 -117
  149. package/components/QiuIconPicker/iconify.libraries.ts +0 -182
  150. package/components/QiuIconPicker/icons.catalog.ts +0 -3072
  151. package/components/QiuIconPicker/index.vue +0 -488
  152. package/components/QiuImage/index.vue +0 -177
  153. package/components/QiuInput/index.vue +0 -328
  154. package/components/QiuInputNumber/index.vue +0 -295
  155. package/components/QiuInputOtp/index.vue +0 -190
  156. package/components/QiuKbd/index.vue +0 -57
  157. package/components/QiuLayoutContainer/index.vue +0 -50
  158. package/components/QiuLinkPreview/index.vue +0 -224
  159. package/components/QiuLoading/index.ts +0 -176
  160. package/components/QiuLoading/spinner.vue +0 -820
  161. package/components/QiuLoading/types.ts +0 -44
  162. package/components/QiuMention/index.vue +0 -299
  163. package/components/QiuMenu/QiuMenuRoot.vue +0 -241
  164. package/components/QiuMenu/components/QiuMenuItem.vue +0 -340
  165. package/components/QiuMenu/components/QiuSubMenu.vue +0 -504
  166. package/components/QiuMenu/context.ts +0 -21
  167. package/components/QiuMenu/index.vue +0 -43
  168. package/components/QiuMenuNav/QiuMenuNavItem.vue +0 -100
  169. package/components/QiuMenuNav/QiuMenuNavSub.vue +0 -120
  170. package/components/QiuMenuNav/context.ts +0 -14
  171. package/components/QiuMenuNav/index.vue +0 -148
  172. package/components/QiuMsg/QiuMsgItem.vue +0 -180
  173. package/components/QiuMsg/index.ts +0 -158
  174. package/components/QiuMsg/types.ts +0 -23
  175. package/components/QiuMsgBox/index.ts +0 -147
  176. package/components/QiuNotification/QiuNotificationItem.vue +0 -168
  177. package/components/QiuNotification/index.ts +0 -155
  178. package/components/QiuNotification/types.ts +0 -14
  179. package/components/QiuPage/index.vue +0 -12
  180. package/components/QiuPageHeader/index.vue +0 -115
  181. package/components/QiuPageMain/index.vue +0 -78
  182. package/components/QiuPagination/index.vue +0 -421
  183. package/components/QiuPasswordStrength/index.vue +0 -101
  184. package/components/QiuPopconfirm/index.vue +0 -196
  185. package/components/QiuPopover/index.vue +0 -277
  186. package/components/QiuProgress/index.vue +0 -235
  187. package/components/QiuQrcode/index.vue +0 -302
  188. package/components/QiuQueryForm/components/QiuQueryFormBottomPanel.vue +0 -13
  189. package/components/QiuQueryForm/components/QiuQueryFormLeftPanel.vue +0 -37
  190. package/components/QiuQueryForm/components/QiuQueryFormRightPanel.vue +0 -37
  191. package/components/QiuQueryForm/components/QiuQueryFormTopPanel.vue +0 -13
  192. package/components/QiuQueryForm/index.vue +0 -117
  193. package/components/QiuRadio/QiuRadioGroup.vue +0 -75
  194. package/components/QiuRadio/index.vue +0 -191
  195. package/components/QiuRadio/types.ts +0 -9
  196. package/components/QiuRate/index.vue +0 -184
  197. package/components/QiuRefresh/index.vue +0 -32
  198. package/components/QiuResult/index.vue +0 -103
  199. package/components/QiuRow/index.vue +0 -60
  200. package/components/QiuRow/types.ts +0 -5
  201. package/components/QiuScrollbar/index.vue +0 -107
  202. package/components/QiuSearchBar/index.vue +0 -154
  203. package/components/QiuSegmented/index.vue +0 -120
  204. package/components/QiuSelect/QiuOption.vue +0 -93
  205. package/components/QiuSelect/index.vue +0 -452
  206. package/components/QiuSelect/types.ts +0 -15
  207. package/components/QiuSkeleton/index.vue +0 -78
  208. package/components/QiuSlider/index.vue +0 -266
  209. package/components/QiuSpace/index.vue +0 -95
  210. package/components/QiuSparkline/index.vue +0 -92
  211. package/components/QiuStatistic/index.vue +0 -4
  212. package/components/QiuStatistics/index.vue +0 -123
  213. package/components/QiuStep/index.vue +0 -220
  214. package/components/QiuSteps/context.ts +0 -25
  215. package/components/QiuSteps/index.vue +0 -84
  216. package/components/QiuSwitch/index.vue +0 -145
  217. package/components/QiuTabBar/index.vue +0 -218
  218. package/components/QiuTabBar/types.ts +0 -19
  219. package/components/QiuTabPane/index.vue +0 -82
  220. package/components/QiuTable/columns.ts +0 -16
  221. package/components/QiuTable/export.ts +0 -102
  222. package/components/QiuTable/index.ts +0 -24
  223. package/components/QiuTable/index.vue +0 -3503
  224. package/components/QiuTable/registry.ts +0 -75
  225. package/components/QiuTable/styles/table.scss +0 -1230
  226. package/components/QiuTable/types.ts +0 -413
  227. package/components/QiuTable/useArea.ts +0 -202
  228. package/components/QiuTable/useColumns.ts +0 -325
  229. package/components/QiuTable/useEdit.ts +0 -136
  230. package/components/QiuTable/useExtras.ts +0 -115
  231. package/components/QiuTable/useHistory.ts +0 -77
  232. package/components/QiuTable/useMerge.ts +0 -105
  233. package/components/QiuTable/useResize.ts +0 -86
  234. package/components/QiuTable/useScrollSync.ts +0 -152
  235. package/components/QiuTable/useVirtual.ts +0 -97
  236. package/components/QiuTable/utils.ts +0 -165
  237. package/components/QiuTableColumn/index.vue +0 -101
  238. package/components/QiuTag/index.vue +0 -143
  239. package/components/QiuText/index.vue +0 -99
  240. package/components/QiuTime/index.vue +0 -548
  241. package/components/QiuTimeAgo/index.vue +0 -103
  242. package/components/QiuTimeline/index.vue +0 -54
  243. package/components/QiuTimelineItem/index.vue +0 -140
  244. package/components/QiuTips/index.vue +0 -323
  245. package/components/QiuTooltip/index.vue +0 -237
  246. package/components/QiuTransfer/index.vue +0 -277
  247. package/components/QiuTree/QiuTreeNode.vue +0 -146
  248. package/components/QiuTree/index.vue +0 -143
  249. package/components/QiuTree/types.ts +0 -30
  250. package/components/QiuTreeSelect/index.vue +0 -259
  251. package/components/QiuTrend/index.vue +0 -92
  252. package/components/QiuUpload/index.vue +0 -628
  253. package/components/QiuUploadCrop/index.vue +0 -1267
  254. package/components/QiuWatermark/index.vue +0 -121
  255. package/components/useBodyScrollLock.ts +0 -28
  256. package/dist/components/QiuBadge/index.d.ts +0 -18
  257. package/dist/components/QiuBadge/utils/pca-code.json.d.ts +0 -3
  258. package/dist/components/QiuLoading/index.d.ts +0 -26
  259. package/dist/components/QiuMsg/index.d.ts +0 -30
  260. package/dist/components/QiuNotification/index.d.ts +0 -30
  261. package/dist/components/QiuNotification/types.d.ts +0 -12
  262. package/dist/components/QiuRow/types.d.ts +0 -4
  263. package/dist/components/QiuTable/index.d.ts +0 -3
  264. package/dist/components/QiuTable/registry.d.ts +0 -39
  265. package/dist/components/QiuTable/useEdit.d.ts +0 -36
  266. package/dist/components/QiuTree/types.d.ts +0 -13
  267. package/dist/src/bridge/@qiu/plugins/shortcuts.d.ts +0 -2
  268. package/plugins/qiu.ts +0 -83
  269. package/plugins/shortcuts.ts +0 -69
  270. package/src/bridge/@/api/media.ts +0 -8
  271. package/src/bridge/@/api/notice.ts +0 -5
  272. package/src/bridge/@/config/index.ts +0 -38
  273. package/src/bridge/@/config/media.config.ts +0 -37
  274. package/src/bridge/@/config/security.config.ts +0 -8
  275. package/src/bridge/@/i18n/index.ts +0 -6
  276. package/src/bridge/@/store/modules/bing.ts +0 -9
  277. package/src/bridge/@/store/modules/errorLog.ts +0 -9
  278. package/src/bridge/@/store/modules/media.ts +0 -10
  279. package/src/bridge/@/store/modules/routes.ts +0 -10
  280. package/src/bridge/@/store/modules/settings.ts +0 -9
  281. package/src/bridge/@/store/modules/tabs.ts +0 -9
  282. package/src/bridge/@/store/modules/user.ts +0 -9
  283. package/src/bridge/@/utils/convertToCamelCase.ts +0 -11
  284. package/src/bridge/@/utils/index.ts +0 -9
  285. package/src/bridge/@/utils/pageTitle.ts +0 -4
  286. package/src/bridge/@/utils/routes.ts +0 -14
  287. package/src/bridge/@/utils/validate.ts +0 -17
  288. package/src/bridge/@qiu/plugins/shortcuts.ts +0 -3
  289. package/src/i18n.ts +0 -8
  290. package/src/icons/qiu-logo.svg +0 -1
  291. package/styles/dark.scss +0 -194
  292. package/styles/normalize.css +0 -349
  293. package/styles/plain.scss +0 -423
  294. package/styles/qiu-tokens.scss +0 -40
  295. package/styles/qiu.scss +0 -1149
  296. package/styles/technology.scss +0 -452
  297. package/styles/var.scss +0 -382
  298. package/styles/variables.scss +0 -77
  299. /package/dist/components/{QiuAnchorLink → FouAnchorLink}/index.vue.d.ts +0 -0
  300. /package/dist/components/{QiuBadge → FouBadge}/api/index.d.ts +0 -0
  301. /package/dist/components/{QiuBadge → FouBadge}/components/BadgeImagePickerDialog.vue.d.ts +0 -0
  302. /package/dist/components/{QiuBadge → FouBadge}/components/BadgeLibraryManagerDialog.vue.d.ts +0 -0
  303. /package/dist/components/{QiuBadge → FouBadge}/components/BadgeLibraryPanel.vue.d.ts +0 -0
  304. /package/dist/components/{QiuBadge → FouBadge}/shared/assetUrl.d.ts +0 -0
  305. /package/dist/components/{QiuBadge → FouBadge}/utils/chinaAreaData.d.ts +0 -0
  306. /package/dist/components/{QiuBadge → FouBadge}/utils/hostRegion.d.ts +0 -0
  307. /package/dist/components/{QiuBadge → FouBadge}/utils/pdfFromElement.d.ts +0 -0
  308. /package/dist/components/{QiuBadge → FouBadge}/views/BadgeLibraryView.vue.d.ts +0 -0
  309. /package/dist/components/{QiuBadge → FouBadge}/views/BadgeManageView.vue.d.ts +0 -0
  310. /package/dist/components/{QiuBadge → FouBadge}/views/BadgeTemplateListView.vue.d.ts +0 -0
  311. /package/dist/components/{QiuBadge → FouBadge}/views/DeskLabelTemplateListView.vue.d.ts +0 -0
  312. /package/dist/components/{QiuBadge → FouBadge}/views/DeskLabelView.vue.d.ts +0 -0
  313. /package/dist/components/{QiuCanvasKit/QiuCanvasRenderer.vue.d.ts → FouCanvasKit/FouCanvasRenderer.vue.d.ts} +0 -0
  314. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/assetUrl.d.ts +0 -0
  315. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/export/html.d.ts +0 -0
  316. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/export/pdf.d.ts +0 -0
  317. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/export/png.d.ts +0 -0
  318. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/modules/badgeCompat.d.ts +0 -0
  319. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/modules/dataRegistry.d.ts +0 -0
  320. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/modules/merge.d.ts +0 -0
  321. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/presets/badge.d.ts +0 -0
  322. /package/dist/components/{QiuCanvasKit → FouCanvasKit}/presets/banner.d.ts +0 -0
  323. /package/dist/components/{QiuCarouselItem → FouCarouselItem}/index.vue.d.ts +0 -0
  324. /package/dist/components/{QiuCheckbox/QiuCheckboxGroup.vue.d.ts → FouCheckbox/FouCheckboxGroup.vue.d.ts} +0 -0
  325. /package/dist/components/{QiuCheckbox → FouCheckbox}/index.vue.d.ts +0 -0
  326. /package/dist/components/{QiuCode → FouCode}/index.vue.d.ts +0 -0
  327. /package/dist/components/{QiuCollapseItem → FouCollapseItem}/index.vue.d.ts +0 -0
  328. /package/dist/components/{QiuColorField → FouColorField}/index.vue.d.ts +0 -0
  329. /package/dist/components/{QiuColorPicker → FouColorPicker}/index.vue.d.ts +0 -0
  330. /package/dist/components/{QiuCombobox → FouCombobox}/index.vue.d.ts +0 -0
  331. /package/dist/components/{QiuContextMenu → FouContextMenu}/index.vue.d.ts +0 -0
  332. /package/dist/components/{QiuDescriptionsItem → FouDescriptionsItem}/index.vue.d.ts +0 -0
  333. /package/dist/components/{QiuDigitalCard → FouDigitalCard}/index.vue.d.ts +0 -0
  334. /package/dist/components/{QiuDropdown/QiuDropdownItem.vue.d.ts → FouDropdown/FouDropdownItem.vue.d.ts} +0 -0
  335. /package/dist/components/{QiuDropdown/QiuDropdownMenu.vue.d.ts → FouDropdown/FouDropdownMenu.vue.d.ts} +0 -0
  336. /package/dist/components/{QiuDropdown → FouDropdown}/index.vue.d.ts +0 -0
  337. /package/dist/components/{QiuHoverCard → FouHoverCard}/index.vue.d.ts +0 -0
  338. /package/dist/components/{QiuIcon → FouIcon}/index.vue.d.ts +0 -0
  339. /package/dist/components/{QiuIconPicker → FouIconPicker}/iconify.libraries.d.ts +0 -0
  340. /package/dist/components/{QiuIconPicker → FouIconPicker}/icons.catalog.d.ts +0 -0
  341. /package/dist/components/{QiuInput → FouInput}/index.vue.d.ts +0 -0
  342. /package/dist/components/{QiuInputNumber → FouInputNumber}/index.vue.d.ts +0 -0
  343. /package/dist/components/{QiuInputOtp → FouInputOtp}/index.vue.d.ts +0 -0
  344. /package/dist/components/{QiuKbd → FouKbd}/index.vue.d.ts +0 -0
  345. /package/dist/components/{QiuLayoutContainer → FouLayoutContainer}/index.vue.d.ts +0 -0
  346. /package/dist/components/{QiuLinkPreview → FouLinkPreview}/index.vue.d.ts +0 -0
  347. /package/dist/components/{QiuMention → FouMention}/index.vue.d.ts +0 -0
  348. /package/dist/components/{QiuMenu/QiuMenuRoot.vue.d.ts → FouMenu/FouMenuRoot.vue.d.ts} +0 -0
  349. /package/dist/components/{QiuMenuNav/QiuMenuNavItem.vue.d.ts → FouMenuNav/FouMenuNavItem.vue.d.ts} +0 -0
  350. /package/dist/components/{QiuMenuNav/QiuMenuNavSub.vue.d.ts → FouMenuNav/FouMenuNavSub.vue.d.ts} +0 -0
  351. /package/dist/components/{QiuMenuNav → FouMenuNav}/index.vue.d.ts +0 -0
  352. /package/dist/components/{QiuPageMain → FouPageMain}/index.vue.d.ts +0 -0
  353. /package/dist/components/{QiuPagination → FouPagination}/index.vue.d.ts +0 -0
  354. /package/dist/components/{QiuPasswordStrength → FouPasswordStrength}/index.vue.d.ts +0 -0
  355. /package/dist/components/{QiuQrcode → FouQrcode}/index.vue.d.ts +0 -0
  356. /package/dist/components/{QiuRadio/QiuRadioGroup.vue.d.ts → FouRadio/FouRadioGroup.vue.d.ts} +0 -0
  357. /package/dist/components/{QiuSearchBar → FouSearchBar}/index.vue.d.ts +0 -0
  358. /package/dist/components/{QiuSelect/QiuOption.vue.d.ts → FouSelect/FouOption.vue.d.ts} +0 -0
  359. /package/dist/components/{QiuSparkline → FouSparkline}/index.vue.d.ts +0 -0
  360. /package/dist/components/{QiuSwitch → FouSwitch}/index.vue.d.ts +0 -0
  361. /package/dist/components/{QiuTabPane → FouTabPane}/index.vue.d.ts +0 -0
  362. /package/dist/components/{QiuTable → FouTable}/columns.d.ts +0 -0
  363. /package/dist/components/{QiuTable → FouTable}/useExtras.d.ts +0 -0
  364. /package/dist/components/{QiuTable → FouTable}/useResize.d.ts +0 -0
  365. /package/dist/components/{QiuTable → FouTable}/useVirtual.d.ts +0 -0
  366. /package/dist/components/{QiuTime → FouTime}/index.vue.d.ts +0 -0
  367. /package/dist/components/{QiuTimeAgo → FouTimeAgo}/index.vue.d.ts +0 -0
  368. /package/dist/components/{QiuTimelineItem → FouTimelineItem}/index.vue.d.ts +0 -0
  369. /package/dist/components/{QiuTooltip → FouTooltip}/index.vue.d.ts +0 -0
  370. /package/dist/components/{QiuTrend → FouTrend}/index.vue.d.ts +0 -0
  371. /package/dist/components/{QiuUploadCrop → FouUploadCrop}/index.vue.d.ts +0 -0
@@ -1,101 +0,0 @@
1
- <template>
2
- <div
3
- class="qiu-colorful-card"
4
- :class="[`qiu-colorful-card--shadow-${shadow}`]"
5
- :style="cardStyle"
6
- >
7
- <div v-if="$slots.header" class="qiu-colorful-card__header">
8
- <slot name="header" />
9
- </div>
10
- <div class="qiu-colorful-card__body" :style="bodyStyle">
11
- <qiu-icon v-if="icon" class="qiu-colorful-card__icon" :icon="icon" />
12
- <slot />
13
- </div>
14
- </div>
15
- </template>
16
-
17
- <script lang="ts" setup>
18
- defineOptions({
19
- name: 'QiuColorfulCard',
20
- })
21
-
22
- const props = defineProps({
23
- bodyStyle: {
24
- type: [Object, String] as () => Record<string, string> | string,
25
- default: () => ({}),
26
- },
27
- shadow: {
28
- type: String as () => 'never' | 'hover' | 'always',
29
- default: 'never',
30
- },
31
- colorFrom: {
32
- type: String,
33
- default: '',
34
- },
35
- colorTo: {
36
- type: String,
37
- default: '',
38
- },
39
- title: {
40
- type: String,
41
- default: '',
42
- },
43
- icon: {
44
- type: String,
45
- default: '',
46
- },
47
- style: {
48
- type: Object as () => Record<string, string>,
49
- default: () => ({}),
50
- },
51
- })
52
-
53
- const cardStyle = computed(() => {
54
- if (props.style && Object.keys(props.style).length > 0) {
55
- return props.style
56
- }
57
- return {
58
- background: `linear-gradient(120deg, ${props.colorFrom} 10%, ${props.colorTo})`,
59
- }
60
- })
61
- </script>
62
-
63
- <style lang="scss" scoped>
64
- .qiu-colorful-card {
65
- position: relative;
66
- min-height: 120px;
67
- overflow: hidden;
68
- cursor: pointer;
69
- border-radius: var(--qiu-border-radius-base, 4px);
70
- transition: box-shadow 0.3s ease;
71
-
72
- &--shadow-always {
73
- box-shadow: var(--qiu-box-shadow-light, 0 2px 12px 0 rgb(0 0 0 / 10%));
74
- }
75
-
76
- &--shadow-hover:hover {
77
- box-shadow: var(--qiu-box-shadow-light, 0 2px 12px 0 rgb(0 0 0 / 10%));
78
- }
79
-
80
- &__header {
81
- padding: calc(var(--qiu-card-padding, 20px) - 2px) var(--qiu-card-padding, 20px);
82
- color: var(--qiu-color-white, #fff);
83
- border-bottom: 1px solid rgb(255 255 255 / 20%);
84
- }
85
-
86
- &__body {
87
- position: relative;
88
- padding: var(--qiu-card-padding, 20px);
89
- color: var(--qiu-color-white, #fff);
90
- }
91
-
92
- &__icon {
93
- position: absolute;
94
- top: 20px;
95
- right: 20px;
96
- font-size: 60px;
97
- opacity: 0.35;
98
- transform: rotate(15deg);
99
- }
100
- }
101
- </style>
@@ -1,277 +0,0 @@
1
- <template>
2
- <div ref="rootRef" class="qiu-combobox" :class="[`qiu-combobox--${size}`, { 'is-open': open, 'is-disabled': disabled }]">
3
- <div class="qiu-combobox__control" @click="toggle">
4
- <input
5
- class="qiu-combobox__input"
6
- :value="query"
7
- :placeholder="placeholder"
8
- :disabled="disabled"
9
- @input="onInput"
10
- @keydown.down.prevent="onDown"
11
- @keydown.up.prevent="onUp"
12
- @keydown.enter.prevent="onEnter"
13
- @keydown.esc="close"
14
- />
15
- <qiu-icon icon="arrow-down-s-line" class="qiu-combobox__arrow" :class="{ 'is-open': open }" />
16
- </div>
17
- <Teleport to="body">
18
- <div v-show="open" ref="panelRef" class="qiu-combobox__panel" :style="panelStyle">
19
- <ul v-if="filtered.length" class="qiu-combobox__list">
20
- <li
21
- v-for="(opt, i) in filtered"
22
- :key="opt.value"
23
- class="qiu-combobox__option"
24
- :class="{ 'is-active': i === activeIndex, 'is-selected': opt.value === modelValue }"
25
- @mouseenter="activeIndex = i"
26
- @click="select(opt)"
27
- >
28
- <slot name="option" :option="opt">{{ opt.label }}</slot>
29
- </li>
30
- </ul>
31
- <div v-else class="qiu-combobox__empty">无匹配项</div>
32
- </div>
33
- </Teleport>
34
- </div>
35
- </template>
36
-
37
- <script lang="ts" setup>
38
- import { computed, nextTick, ref, watch } from 'vue'
39
-
40
- defineOptions({ name: 'QiuCombobox' })
41
-
42
- interface Option {
43
- label: string
44
- value: string | number
45
- disabled?: boolean
46
- }
47
-
48
- const props = withDefaults(
49
- defineProps<{
50
- modelValue?: string | number
51
- options?: Option[]
52
- placeholder?: string
53
- size?: 'small' | 'default' | 'large'
54
- disabled?: boolean
55
- /** 允许输入非选项值 */
56
- allowFree?: boolean
57
- filterable?: boolean
58
- }>(),
59
- {
60
- modelValue: '',
61
- options: () => [],
62
- placeholder: '请选择',
63
- size: 'default',
64
- disabled: false,
65
- allowFree: false,
66
- filterable: true,
67
- }
68
- )
69
-
70
- const emit = defineEmits<{
71
- 'update:modelValue': [string | number]
72
- change: [Option | null]
73
- }>()
74
-
75
- const rootRef = ref<HTMLElement | null>(null)
76
- const panelRef = ref<HTMLElement | null>(null)
77
- const open = ref(false)
78
- const query = ref('')
79
- const activeIndex = ref(0)
80
- const panelStyle = ref<Record<string, string>>({})
81
-
82
- const selectedLabel = computed(() => {
83
- const f = props.options.find((o) => o.value === props.modelValue)
84
- return f ? f.label : ''
85
- })
86
-
87
- const filtered = computed(() => {
88
- if (!props.filterable || !query.value) return props.options
89
- const q = query.value.toLowerCase()
90
- return props.options.filter((o) => o.label.toLowerCase().includes(q))
91
- })
92
-
93
- watch(
94
- () => props.modelValue,
95
- () => {
96
- query.value = selectedLabel.value
97
- },
98
- { immediate: true }
99
- )
100
-
101
- const updatePanel = () => {
102
- const trigger = rootRef.value
103
- const panel = panelRef.value
104
- if (!trigger || !panel) return
105
- const rect = trigger.getBoundingClientRect()
106
- const panelRect = panel.getBoundingClientRect()
107
- const gap = 4
108
- let top = rect.bottom + gap
109
- if (top + panelRect.height > window.innerHeight - 4) top = rect.top - panelRect.height - gap
110
- const left = Math.min(Math.max(4, rect.left), window.innerWidth - panelRect.width - 4)
111
- panelStyle.value = {
112
- position: 'fixed',
113
- top: `${Math.max(4, top)}px`,
114
- left: `${left}px`,
115
- width: `${rect.width}px`,
116
- zIndex: '2100',
117
- }
118
- }
119
-
120
- const openPanel = async () => {
121
- if (props.disabled) return
122
- open.value = true
123
- activeIndex.value = 0
124
- await nextTick()
125
- updatePanel()
126
- }
127
-
128
- const close = () => {
129
- if (!open.value) return
130
- open.value = false
131
- query.value = selectedLabel.value
132
- }
133
-
134
- const toggle = () => (open.value ? close() : openPanel())
135
-
136
- const onInput = (e: Event) => {
137
- query.value = (e.target as HTMLInputElement).value
138
- if (!open.value) openPanel()
139
- }
140
-
141
- const onDown = () => {
142
- if (!open.value) return openPanel()
143
- if (activeIndex.value < filtered.value.length - 1) activeIndex.value++
144
- }
145
- const onUp = () => {
146
- if (activeIndex.value > 0) activeIndex.value--
147
- }
148
- const onEnter = () => {
149
- const opt = filtered.value[activeIndex.value]
150
- if (opt) select(opt)
151
- }
152
-
153
- const select = (opt: Option) => {
154
- emit('update:modelValue', opt.value)
155
- emit('change', opt)
156
- query.value = opt.label
157
- open.value = false
158
- }
159
-
160
- const onDocClick = (e: MouseEvent) => {
161
- if (!open.value) return
162
- const t = e.target as Node
163
- if (rootRef.value?.contains(t) || panelRef.value?.contains(t)) return
164
- close()
165
- }
166
-
167
- watch(open, (v) => {
168
- if (v) document.addEventListener('mousedown', onDocClick, true)
169
- else document.removeEventListener('mousedown', onDocClick, true)
170
- })
171
-
172
- onBeforeUnmount(() => document.removeEventListener('mousedown', onDocClick, true))
173
- </script>
174
-
175
- <style lang="scss" scoped>
176
- .qiu-combobox {
177
- display: inline-flex;
178
- width: 100%;
179
- max-width: 100%;
180
- vertical-align: middle;
181
-
182
- &.is-disabled {
183
- opacity: 0.6;
184
- pointer-events: none;
185
- }
186
- }
187
-
188
- .qiu-combobox__control {
189
- display: inline-flex;
190
- align-items: center;
191
- box-sizing: border-box;
192
- width: 100%;
193
- padding: 0 8px 0 12px;
194
- background: var(--qiu-bg-color, #fff);
195
- border: 1px solid var(--qiu-border-color, #dcdfe6);
196
- border-radius: var(--qiu-border-radius-base, 4px);
197
- cursor: pointer;
198
- transition: border-color 0.2s ease, box-shadow 0.2s ease;
199
-
200
- .qiu-combobox.is-open & {
201
- border-color: var(--qiu-color-primary, #409eff);
202
- box-shadow: 0 0 0 1px color-mix(in srgb, var(--qiu-color-primary, #409eff) 25%, transparent);
203
- }
204
- }
205
-
206
- .qiu-combobox__input {
207
- flex: 1;
208
- min-width: 0;
209
- height: 100%;
210
- padding: 0;
211
- font-size: 14px;
212
- color: var(--qiu-text-color-primary, #303133);
213
- background: transparent;
214
- border: 0;
215
- outline: none;
216
-
217
- &::placeholder {
218
- color: var(--qiu-text-color-placeholder, #a8abb2);
219
- }
220
- }
221
-
222
- .qiu-combobox__arrow {
223
- flex-shrink: 0;
224
- color: var(--qiu-text-color-placeholder, #a8abb2);
225
- transition: transform 0.2s ease;
226
-
227
- &.is-open {
228
- transform: rotate(180deg);
229
- }
230
- }
231
-
232
- .qiu-combobox__panel {
233
- box-sizing: border-box;
234
- max-height: 240px;
235
- overflow-y: auto;
236
- background: var(--qiu-bg-color-overlay, #fff);
237
- border: 1px solid var(--qiu-border-color-light, #e4e7ed);
238
- border-radius: var(--qiu-border-radius-base, 4px);
239
- box-shadow: var(--qiu-box-shadow-light, 0 4px 12px rgba(0, 0, 0, 0.1));
240
- }
241
-
242
- .qiu-combobox__list {
243
- margin: 0;
244
- padding: 4px;
245
- list-style: none;
246
- }
247
-
248
- .qiu-combobox__option {
249
- padding: 7px 10px;
250
- font-size: 14px;
251
- color: var(--qiu-text-color-regular, #606266);
252
- cursor: pointer;
253
- border-radius: 4px;
254
-
255
- &:hover,
256
- &.is-active {
257
- color: var(--qiu-color-primary, #409eff);
258
- background: var(--qiu-color-primary-light-9, #ecf5ff);
259
- }
260
-
261
- &.is-selected {
262
- font-weight: 600;
263
- color: var(--qiu-color-primary, #409eff);
264
- }
265
- }
266
-
267
- .qiu-combobox__empty {
268
- padding: 12px;
269
- font-size: 13px;
270
- text-align: center;
271
- color: var(--qiu-text-color-placeholder, #a8abb2);
272
- }
273
-
274
- .qiu-combobox--small .qiu-combobox__control { height: 30px; }
275
- .qiu-combobox--default .qiu-combobox__control { height: 36px; }
276
- .qiu-combobox--large .qiu-combobox__control { height: 42px; }
277
- </style>
@@ -1,31 +0,0 @@
1
- <template>
2
- <slot />
3
- </template>
4
-
5
- <script lang="ts" setup>
6
- export interface QiuConfigProviderContext {
7
- size: Ref<'large' | 'default' | 'small'>
8
- locale: Ref<Record<string, string> | undefined>
9
- zIndex: Ref<number>
10
- }
11
-
12
- defineOptions({ name: 'QiuConfigProvider' })
13
-
14
- const props = withDefaults(
15
- defineProps<{
16
- size?: 'large' | 'default' | 'small'
17
- locale?: Record<string, string>
18
- zIndex?: number
19
- }>(),
20
- {
21
- size: 'default',
22
- zIndex: 2000,
23
- }
24
- )
25
-
26
- provide<QiuConfigProviderContext>('qiuConfigProvider', {
27
- size: toRef(props, 'size'),
28
- locale: toRef(props, 'locale'),
29
- zIndex: toRef(props, 'zIndex'),
30
- })
31
- </script>
@@ -1,209 +0,0 @@
1
- <template>
2
- <span
3
- ref="triggerRef"
4
- class="qiu-context-menu"
5
- @contextmenu.prevent="onContextMenu"
6
- >
7
- <slot />
8
- </span>
9
-
10
- <Teleport to="body">
11
- <Transition name="qiu-context-menu-fade">
12
- <div
13
- v-if="visible"
14
- ref="menuRef"
15
- class="qiu-context-menu__panel"
16
- :style="panelStyle"
17
- @contextmenu.prevent
18
- @click.stop
19
- >
20
- <ul class="qiu-context-menu__list">
21
- <template v-for="(item, i) in items" :key="i">
22
- <li v-if="item.divider" class="qiu-context-menu__divider" role="separator" />
23
- <li
24
- v-else
25
- class="qiu-context-menu__item"
26
- :class="{ 'is-disabled': item.disabled }"
27
- @click="onItemClick(item)"
28
- >
29
- <qiu-icon v-if="item.icon" :icon="item.icon" class="qiu-context-menu__icon" />
30
- <span class="qiu-context-menu__label">{{ item.label }}</span>
31
- <span v-if="item.shortcut" class="qiu-context-menu__shortcut">{{ item.shortcut }}</span>
32
- </li>
33
- </template>
34
- <slot name="items" />
35
- </ul>
36
- </div>
37
- </Transition>
38
- </Teleport>
39
- </template>
40
-
41
- <script lang="ts" setup>
42
- import { nextTick, ref } from 'vue'
43
-
44
- defineOptions({ name: 'QiuContextMenu' })
45
-
46
- interface MenuItem {
47
- label: string
48
- icon?: string
49
- shortcut?: string
50
- disabled?: boolean
51
- /** 自定义标识,点击时回传 */
52
- command?: string | number
53
- divider?: boolean
54
- }
55
-
56
- const props = withDefaults(
57
- defineProps<{
58
- items?: MenuItem[]
59
- }>(),
60
- {
61
- items: () => [],
62
- }
63
- )
64
-
65
- const emit = defineEmits<{
66
- select: [MenuItem]
67
- command: [string | number]
68
- visibleChange: [boolean]
69
- }>()
70
-
71
- const triggerRef = ref<HTMLElement | null>(null)
72
- const menuRef = ref<HTMLElement | null>(null)
73
- const visible = ref(false)
74
- const panelStyle = ref<Record<string, string>>({})
75
-
76
- const onContextMenu = async (e: MouseEvent) => {
77
- e.preventDefault()
78
- visible.value = true
79
- emit('visibleChange', true)
80
- await nextTick()
81
- updatePosition(e.clientX, e.clientY)
82
- }
83
-
84
- const updatePosition = (x: number, y: number) => {
85
- const menu = menuRef.value
86
- if (!menu) return
87
- const rect = menu.getBoundingClientRect()
88
- const vw = window.innerWidth
89
- const vh = window.innerHeight
90
- let left = Math.min(x, vw - rect.width - 4)
91
- let top = Math.min(y, vh - rect.height - 4)
92
- left = Math.max(4, left)
93
- top = Math.max(4, top)
94
- panelStyle.value = { position: 'fixed', top: `${top}px`, left: `${left}px`, zIndex: '3000' }
95
- }
96
-
97
- const close = () => {
98
- if (!visible.value) return
99
- visible.value = false
100
- emit('visibleChange', false)
101
- }
102
-
103
- const onItemClick = (item: MenuItem) => {
104
- if (item.disabled) return
105
- emit('select', item)
106
- if (item.command !== undefined) emit('command', item.command)
107
- close()
108
- }
109
-
110
- const onDocClick = (e: MouseEvent) => {
111
- if (menuRef.value?.contains(e.target as Node)) return
112
- close()
113
- }
114
-
115
- const onScrollOrResize = () => close()
116
-
117
- watch(visible, (v) => {
118
- if (v) {
119
- document.addEventListener('mousedown', onDocClick, true)
120
- window.addEventListener('scroll', onScrollOrResize, true)
121
- window.addEventListener('resize', onScrollOrResize)
122
- } else {
123
- document.removeEventListener('mousedown', onDocClick, true)
124
- window.removeEventListener('scroll', onScrollOrResize, true)
125
- window.removeEventListener('resize', onScrollOrResize)
126
- }
127
- })
128
-
129
- onBeforeUnmount(() => {
130
- document.removeEventListener('mousedown', onDocClick, true)
131
- window.removeEventListener('scroll', onScrollOrResize, true)
132
- window.removeEventListener('resize', onScrollOrResize)
133
- })
134
- </script>
135
-
136
- <style lang="scss" scoped>
137
- .qiu-context-menu {
138
- display: inline-block;
139
- }
140
-
141
- .qiu-context-menu__panel {
142
- box-sizing: border-box;
143
- min-width: 160px;
144
- padding: 4px;
145
- background: var(--qiu-bg-color-overlay, #fff);
146
- border: 1px solid var(--qiu-border-color-light, #e4e7ed);
147
- border-radius: 6px;
148
- box-shadow: var(--qiu-box-shadow-light, 0 4px 12px rgba(0, 0, 0, 0.12));
149
- }
150
-
151
- .qiu-context-menu__list {
152
- margin: 0;
153
- padding: 0;
154
- list-style: none;
155
- }
156
-
157
- .qiu-context-menu__item {
158
- display: flex;
159
- align-items: center;
160
- gap: 8px;
161
- padding: 7px 10px;
162
- font-size: 13px;
163
- color: var(--qiu-text-color-regular, #606266);
164
- cursor: pointer;
165
- border-radius: 4px;
166
-
167
- &:hover {
168
- color: var(--qiu-color-primary, #409eff);
169
- background: var(--qiu-color-primary-light-9, #ecf5ff);
170
- }
171
-
172
- &.is-disabled {
173
- color: var(--qiu-text-color-placeholder, #a8abb2);
174
- cursor: not-allowed;
175
- background: transparent;
176
- }
177
- }
178
-
179
- .qiu-context-menu__icon {
180
- flex-shrink: 0;
181
- font-size: 14px;
182
- }
183
-
184
- .qiu-context-menu__label {
185
- flex: 1;
186
- }
187
-
188
- .qiu-context-menu__shortcut {
189
- font-size: 12px;
190
- color: var(--qiu-text-color-placeholder, #a8abb2);
191
- }
192
-
193
- .qiu-context-menu__divider {
194
- height: 1px;
195
- margin: 4px 6px;
196
- background: var(--qiu-border-color-lighter, #ebeef5);
197
- }
198
-
199
- .qiu-context-menu-fade-enter-active,
200
- .qiu-context-menu-fade-leave-active {
201
- transition: opacity 0.12s ease, transform 0.12s ease;
202
- }
203
-
204
- .qiu-context-menu-fade-enter-from,
205
- .qiu-context-menu-fade-leave-to {
206
- opacity: 0;
207
- transform: scale(0.96);
208
- }
209
- </style>