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,79 +0,0 @@
1
- /**
2
- * Banner 模式默认画布与模块
3
- * @author qiuye
4
- * @email yjk150@qq.com
5
- * @date 2026-08-16
6
- */
7
- import type { CanvasKitDoc, DataModuleDef } from '../types'
8
- import { cloneBuiltinModules } from '../modules/dataRegistry'
9
-
10
- export const BANNER_DEFAULT_MODULES: DataModuleDef[] = cloneBuiltinModules().map((m) => ({
11
- ...m,
12
- enabled: ['school', 'competition'].includes(m.id),
13
- }))
14
-
15
- export function createBannerDoc(partial?: Partial<CanvasKitDoc>): CanvasKitDoc {
16
- return {
17
- version: 1,
18
- mode: 'banner',
19
- canvas: {
20
- widthMm: 320,
21
- heightMm: 90,
22
- widthPx: 1200,
23
- heightPx: 340,
24
- unit: 'px',
25
- background: '#0f766e',
26
- showBorder: false,
27
- },
28
- elements: [
29
- {
30
- id: 'banner-title',
31
- type: 'text',
32
- zIndex: 2,
33
- xMm: 20,
34
- yMm: 25,
35
- wMm: 200,
36
- hMm: 20,
37
- text: '{{school.name}}',
38
- fontSize: 28,
39
- fontFamily: 'Microsoft YaHei, sans-serif',
40
- color: '#ffffff',
41
- link: { href: 'https://example.com', target: '_blank' },
42
- },
43
- {
44
- id: 'banner-sub',
45
- type: 'text',
46
- zIndex: 2,
47
- xMm: 20,
48
- yMm: 50,
49
- wMm: 240,
50
- hMm: 14,
51
- text: '{{competition.name}}',
52
- fontSize: 14,
53
- fontFamily: 'Microsoft YaHei, sans-serif',
54
- color: '#ccfbf1',
55
- },
56
- ],
57
- dataModules: BANNER_DEFAULT_MODULES,
58
- ...partial,
59
- }
60
- }
61
-
62
- export function createBadgeDoc(partial?: Partial<CanvasKitDoc>): CanvasKitDoc {
63
- return {
64
- version: 1,
65
- mode: 'badge',
66
- canvas: {
67
- widthMm: 90,
68
- heightMm: 130,
69
- unit: 'mm',
70
- background: '#ffffff',
71
- showBorder: true,
72
- borderColor: '#334155',
73
- borderWidthMm: 0.35,
74
- },
75
- elements: [],
76
- dataModules: cloneBuiltinModules(),
77
- ...partial,
78
- }
79
- }
@@ -1,138 +0,0 @@
1
- /**
2
- * QiuCanvasKit 类型:统一证件 / 桌签 / Banner 画布文档
3
- * @author qiuye
4
- * @email yjk150@qq.com
5
- * @date 2026-08-16
6
- */
7
-
8
- export type CanvasKitMode = 'badge' | 'desk' | 'banner'
9
-
10
- export type DataFieldType = 'string' | 'number' | 'image' | 'url'
11
-
12
- export type DataFieldDef = {
13
- key: string
14
- label: string
15
- type?: DataFieldType
16
- }
17
-
18
- export type DataModuleDef = {
19
- id: string
20
- label: string
21
- fields: DataFieldDef[]
22
- sample?: Record<string, string>
23
- /** 内置模块不可删;自定义可删 */
24
- builtin?: boolean
25
- enabled?: boolean
26
- }
27
-
28
- /** 嵌套合并上下文:{ student: { name }, classroom: { name } } */
29
- export type MergeContext = Record<string, Record<string, string> | string>
30
-
31
- export type ElementLink = {
32
- href: string
33
- target?: '_blank' | '_self'
34
- }
35
-
36
- export interface CanvasKitCanvas {
37
- widthMm: number
38
- heightMm: number
39
- /** Banner 可用 px;与 widthMm 二选一优先 px */
40
- widthPx?: number
41
- heightPx?: number
42
- background?: string
43
- backgroundImage?: string
44
- showBorder?: boolean
45
- borderColor?: string
46
- borderWidthMm?: number
47
- unit?: 'mm' | 'px'
48
- }
49
-
50
- export interface CanvasKitRegion {
51
- id: string
52
- name: string
53
- xMm: number
54
- yMm: number
55
- wMm: number
56
- hMm: number
57
- background?: string
58
- backgroundImage?: string
59
- }
60
-
61
- export interface CanvasKitElementBase {
62
- id: string
63
- zIndex: number
64
- xMm: number
65
- yMm: number
66
- wMm: number
67
- hMm: number
68
- rotation?: number
69
- flipX?: boolean
70
- flipY?: boolean
71
- groupId?: string
72
- regionId?: string
73
- align?: string
74
- link?: ElementLink
75
- }
76
-
77
- export interface CanvasKitTextElement extends CanvasKitElementBase {
78
- type: 'text'
79
- text: string
80
- fontSize: number
81
- fontFamily: string
82
- color: string
83
- textDirection?: 'horizontal' | 'vertical'
84
- }
85
-
86
- export interface CanvasKitImageElement extends CanvasKitElementBase {
87
- type: 'image' | 'seal'
88
- src: string
89
- clipboardSource?: 'clipboard'
90
- clipboardUploadState?: 'pending' | 'uploaded'
91
- clipboardUploadKey?: string
92
- clipboardImageId?: number
93
- clipboardOrigName?: string
94
- }
95
-
96
- export interface CanvasKitShapeElement extends CanvasKitElementBase {
97
- type: 'shape'
98
- shape: 'rect' | 'circle' | 'triangle' | 'line' | 'polygon' | 'trapezoid'
99
- background?: string
100
- lockAspectRatio?: boolean
101
- showStroke?: boolean
102
- strokeColor?: string
103
- strokeWidthMm?: number
104
- opacity?: number
105
- polygonSides?: number
106
- }
107
-
108
- export type CanvasKitElement =
109
- | CanvasKitTextElement
110
- | CanvasKitImageElement
111
- | CanvasKitShapeElement
112
-
113
- export interface CanvasKitGuideLine {
114
- id: string
115
- axis: 'horizontal' | 'vertical'
116
- offsetMm: number
117
- }
118
-
119
- export interface CanvasKitDoc {
120
- version: number
121
- mode?: CanvasKitMode
122
- canvas: CanvasKitCanvas
123
- elements: CanvasKitElement[]
124
- guides?: CanvasKitGuideLine[]
125
- regions?: CanvasKitRegion[]
126
- /** 模板级数据模块(启用/自定义) */
127
- dataModules?: DataModuleDef[]
128
- }
129
-
130
- /** 兼容旧证件模板类型别名 */
131
- export type BadgeTemplateDoc = CanvasKitDoc
132
- export type BadgeElement = CanvasKitElement
133
- export type BadgeTextElement = CanvasKitTextElement
134
- export type BadgeImageElement = CanvasKitImageElement
135
- export type BadgeShapeElement = CanvasKitShapeElement
136
- export type BadgeTemplateCanvas = CanvasKitCanvas
137
- export type BadgeCanvasRegion = CanvasKitRegion
138
- export type BadgeGuideLine = CanvasKitGuideLine
@@ -1,104 +0,0 @@
1
- <template>
2
- <div class="qiu-card" :class="[`qiu-card--shadow-${shadow}`]">
3
- <div v-if="$slots.header || title" class="qiu-card__header">
4
- <slot v-if="$slots.header" name="header" />
5
- <template v-else>{{ title }}</template>
6
- </div>
7
- <div class="qiu-card__body" :class="bodyClass" :style="bodyStyle">
8
- <qiu-skeleton v-if="skeleton" animated :loading="skeletonShow" :rows="skeletonRows">
9
- <slot />
10
- </qiu-skeleton>
11
- <slot v-else />
12
- </div>
13
- <div v-if="$slots.footer" class="qiu-card__footer">
14
- <slot name="footer" />
15
- </div>
16
- </div>
17
- </template>
18
-
19
- <script lang="ts" setup>
20
- defineOptions({
21
- name: 'QiuCard',
22
- })
23
-
24
- const props = defineProps({
25
- bodyClass: {
26
- type: String,
27
- default: '',
28
- },
29
- bodyStyle: {
30
- type: [Object, String] as () => Record<string, string> | string,
31
- default: () => ({}),
32
- },
33
- shadow: {
34
- type: String as () => 'never' | 'hover' | 'always',
35
- default: 'never',
36
- },
37
- skeleton: {
38
- type: Boolean,
39
- default: false,
40
- },
41
- skeletonRows: {
42
- type: Number,
43
- default: 5,
44
- },
45
- title: {
46
- type: String,
47
- default: '',
48
- },
49
- })
50
-
51
- const skeletonShow = ref<boolean>(true)
52
-
53
- const timer: ReturnType<typeof setTimeout> = setTimeout(() => {
54
- skeletonShow.value = false
55
- }, 500)
56
-
57
- onBeforeUnmount(() => {
58
- clearTimeout(timer)
59
- })
60
- </script>
61
-
62
- <style lang="scss" scoped>
63
- .qiu-card {
64
- overflow: hidden;
65
- background: var(--qiu-bg-color, #fff);
66
- border: 1px solid var(--qiu-border-color-light, #e4e7ed);
67
- border-radius: var(--qiu-border-radius-base, 4px);
68
- transition: box-shadow 0.3s ease;
69
-
70
- &--shadow-always {
71
- box-shadow: var(--qiu-box-shadow-light, 0 2px 12px 0 rgb(0 0 0 / 10%));
72
- }
73
-
74
- &--shadow-hover:hover {
75
- box-shadow: var(--qiu-box-shadow-light, 0 2px 12px 0 rgb(0 0 0 / 10%));
76
- }
77
-
78
- &__header {
79
- padding: calc(var(--qiu-card-padding, 20px) - 2px) var(--qiu-card-padding, 20px);
80
- font-weight: 500;
81
- border-bottom: 1px solid var(--qiu-border-color-light, #e4e7ed);
82
-
83
- :deep([class*='ri-']) {
84
- background-image: linear-gradient(120deg, #bd34fe 30%, var(--qiu-color-primary));
85
- background-clip: text;
86
- -webkit-text-fill-color: transparent;
87
- }
88
- }
89
-
90
- &__body {
91
- padding: var(--qiu-card-padding, 20px);
92
- }
93
-
94
- &__footer {
95
- padding: calc(var(--qiu-card-padding, 20px) - 2px) var(--qiu-card-padding, 20px);
96
- border-top: 1px solid var(--qiu-border-color-light, #e4e7ed);
97
- }
98
-
99
- :deep(.qiu-skeleton) {
100
- height: 100%;
101
- overflow: hidden;
102
- }
103
- }
104
- </style>
@@ -1,16 +0,0 @@
1
- import type { InjectionKey, Ref } from 'vue'
2
-
3
- export interface QiuCarouselItemRegistration {
4
- uid: number
5
- name?: string | number
6
- }
7
-
8
- export interface QiuCarouselContext {
9
- activeIndex: Ref<number>
10
- itemCount: Ref<number>
11
- registerItem: (item: QiuCarouselItemRegistration) => number
12
- unregisterItem: (uid: number) => void
13
- loop: Ref<boolean>
14
- }
15
-
16
- export const QIU_CAROUSEL_KEY: InjectionKey<QiuCarouselContext> = Symbol('QiuCarousel')
@@ -1,343 +0,0 @@
1
- <template>
2
- <div
3
- class="qiu-carousel"
4
- :class="[`qiu-carousel--arrow-${arrow}`]"
5
- :style="rootStyle"
6
- @mouseenter="onMouseEnter"
7
- @mouseleave="onMouseLeave"
8
- >
9
- <div class="qiu-carousel__container">
10
- <Transition :name="transitionName" mode="out-in">
11
- <div :key="activeIndex" class="qiu-carousel__slide">
12
- <component :is="currentVNode" v-if="currentVNode" />
13
- </div>
14
- </Transition>
15
-
16
- <button
17
- v-if="arrow !== 'never'"
18
- type="button"
19
- class="qiu-carousel__arrow qiu-carousel__arrow--left"
20
- aria-label="previous"
21
- @click="prev"
22
- >
23
- <qiu-icon icon="arrow-left-s-line" />
24
- </button>
25
- <button
26
- v-if="arrow !== 'never'"
27
- type="button"
28
- class="qiu-carousel__arrow qiu-carousel__arrow--right"
29
- aria-label="next"
30
- @click="next"
31
- >
32
- <qiu-icon icon="arrow-right-s-line" />
33
- </button>
34
- </div>
35
-
36
- <div
37
- v-if="indicatorPosition !== 'none'"
38
- class="qiu-carousel__indicators"
39
- :class="`qiu-carousel__indicators--${indicatorPosition}`"
40
- >
41
- <button
42
- v-for="(_, idx) in itemCount"
43
- :key="idx"
44
- type="button"
45
- class="qiu-carousel__indicator"
46
- :class="{ 'is-active': idx === activeIndex }"
47
- :aria-label="`slide ${idx + 1}`"
48
- @click="goTo(idx)"
49
- />
50
- </div>
51
-
52
- <div class="qiu-carousel__items" aria-hidden="true">
53
- <slot />
54
- </div>
55
- </div>
56
- </template>
57
-
58
- <script lang="ts" setup>
59
- import type { QiuCarouselContext, QiuCarouselItemRegistration } from './context'
60
- import { QIU_CAROUSEL_KEY } from './context'
61
-
62
- defineOptions({ name: 'QiuCarousel' })
63
-
64
- const props = withDefaults(
65
- defineProps<{
66
- modelValue?: number
67
- autoplay?: boolean
68
- interval?: number
69
- height?: string | number
70
- indicatorPosition?: 'outside' | 'inside' | 'none'
71
- arrow?: 'always' | 'hover' | 'never'
72
- loop?: boolean
73
- }>(),
74
- {
75
- modelValue: 0,
76
- autoplay: true,
77
- interval: 3000,
78
- height: '',
79
- indicatorPosition: 'inside',
80
- arrow: 'hover',
81
- loop: true,
82
- }
83
- )
84
-
85
- const emit = defineEmits<{
86
- 'update:modelValue': [number]
87
- change: [number]
88
- }>()
89
-
90
- const items = ref<QiuCarouselItemRegistration[]>([])
91
- const itemRenders = ref<Map<number, () => any>>(new Map())
92
- const hover = ref(false)
93
- const direction = ref<'next' | 'prev'>('next')
94
- let timer: ReturnType<typeof setInterval> | null = null
95
-
96
- const itemCount = computed(() => items.value.length)
97
-
98
- const activeIndex = computed({
99
- get() {
100
- if (!itemCount.value) return 0
101
- const idx = props.modelValue ?? 0
102
- return ((idx % itemCount.value) + itemCount.value) % itemCount.value
103
- },
104
- set(val: number) {
105
- emit('update:modelValue', val)
106
- emit('change', val)
107
- },
108
- })
109
-
110
- const rootStyle = computed(() => {
111
- if (!props.height && props.height !== 0) return undefined
112
- const h = typeof props.height === 'number' ? `${props.height}px` : props.height
113
- return { height: h }
114
- })
115
-
116
- const transitionName = computed(() =>
117
- direction.value === 'next' ? 'qiu-carousel-slide-next' : 'qiu-carousel-slide-prev'
118
- )
119
-
120
- const currentUid = computed(() => items.value[activeIndex.value]?.uid)
121
- const currentVNode = computed(() => {
122
- const uid = currentUid.value
123
- if (uid === undefined) return null
124
- const render = itemRenders.value.get(uid)
125
- return render ? render : null
126
- })
127
-
128
- const registerItem = (item: QiuCarouselItemRegistration) => {
129
- const idx = items.value.findIndex((i) => i.uid === item.uid)
130
- if (idx >= 0) items.value[idx] = item
131
- else items.value.push(item)
132
- return items.value.findIndex((i) => i.uid === item.uid)
133
- }
134
-
135
- const unregisterItem = (uid: number) => {
136
- items.value = items.value.filter((i) => i.uid !== uid)
137
- itemRenders.value.delete(uid)
138
- }
139
-
140
- provide<QiuCarouselContext>(QIU_CAROUSEL_KEY, {
141
- activeIndex: activeIndex as Ref<number>,
142
- itemCount,
143
- registerItem,
144
- unregisterItem,
145
- loop: toRef(props, 'loop'),
146
- })
147
-
148
- provide('qiuCarouselRegisterRender', (uid: number, render: () => any) => {
149
- itemRenders.value.set(uid, render)
150
- })
151
-
152
- const goTo = (idx: number) => {
153
- if (!itemCount.value) return
154
- direction.value = idx >= activeIndex.value ? 'next' : 'prev'
155
- activeIndex.value = idx
156
- }
157
-
158
- const next = () => {
159
- if (!itemCount.value) return
160
- direction.value = 'next'
161
- if (activeIndex.value >= itemCount.value - 1) {
162
- activeIndex.value = props.loop ? 0 : itemCount.value - 1
163
- } else {
164
- activeIndex.value = activeIndex.value + 1
165
- }
166
- }
167
-
168
- const prev = () => {
169
- if (!itemCount.value) return
170
- direction.value = 'prev'
171
- if (activeIndex.value <= 0) {
172
- activeIndex.value = props.loop ? itemCount.value - 1 : 0
173
- } else {
174
- activeIndex.value = activeIndex.value - 1
175
- }
176
- }
177
-
178
- const startAutoplay = () => {
179
- stopAutoplay()
180
- if (!props.autoplay || itemCount.value <= 1) return
181
- timer = setInterval(() => next(), props.interval)
182
- }
183
-
184
- const stopAutoplay = () => {
185
- if (timer) {
186
- clearInterval(timer)
187
- timer = null
188
- }
189
- }
190
-
191
- const onMouseEnter = () => {
192
- hover.value = true
193
- stopAutoplay()
194
- }
195
-
196
- const onMouseLeave = () => {
197
- hover.value = false
198
- startAutoplay()
199
- }
200
-
201
- watch(
202
- () => [props.autoplay, props.interval, itemCount.value] as const,
203
- () => startAutoplay(),
204
- { immediate: true }
205
- )
206
-
207
- onBeforeUnmount(stopAutoplay)
208
-
209
- defineExpose({ next, prev, goTo })
210
- </script>
211
-
212
- <style lang="scss" scoped>
213
- .qiu-carousel {
214
- position: relative;
215
- width: 100%;
216
- overflow: hidden;
217
- background: var(--qiu-bg-color, var(--qiu-bg-color, #fff));
218
- border-radius: var(--qiu-border-radius, var(--qiu-border-radius-base, 4px));
219
-
220
- &__container {
221
- position: relative;
222
- width: 100%;
223
- height: 100%;
224
- min-height: 180px;
225
- }
226
-
227
- &__slide {
228
- width: 100%;
229
- height: 100%;
230
- min-height: inherit;
231
- }
232
-
233
- &__items {
234
- display: none;
235
- }
236
-
237
- &__arrow {
238
- position: absolute;
239
- top: 50%;
240
- z-index: 2;
241
- display: inline-flex;
242
- align-items: center;
243
- justify-content: center;
244
- width: 36px;
245
- height: 36px;
246
- font-size: 18px;
247
- color: var(--qiu-text-color-primary, var(--qiu-text-color-primary, #303133));
248
- cursor: pointer;
249
- background: rgb(255 255 255 / 85%);
250
- border: 0;
251
- border-radius: 50%;
252
- box-shadow: 0 2px 8px rgb(0 0 0 / 12%);
253
- transform: translateY(-50%);
254
- transition: opacity 0.2s, background 0.2s;
255
-
256
- &:hover {
257
- background: #fff;
258
- }
259
-
260
- &--left {
261
- left: 12px;
262
- }
263
-
264
- &--right {
265
- right: 12px;
266
- }
267
- }
268
-
269
- &--arrow-hover &__arrow {
270
- opacity: 0;
271
- pointer-events: none;
272
- }
273
-
274
- &--arrow-hover:hover &__arrow {
275
- opacity: 1;
276
- pointer-events: auto;
277
- }
278
-
279
- &__indicators {
280
- display: flex;
281
- gap: 8px;
282
- justify-content: center;
283
- padding: 10px 0;
284
-
285
- &--inside {
286
- position: absolute;
287
- right: 0;
288
- bottom: 8px;
289
- left: 0;
290
- z-index: 2;
291
- padding: 0;
292
- }
293
-
294
- &--outside {
295
- position: static;
296
- }
297
- }
298
-
299
- &__indicator {
300
- width: 8px;
301
- height: 8px;
302
- padding: 0;
303
- cursor: pointer;
304
- background: rgb(255 255 255 / 55%);
305
- border: 1px solid var(--qiu-border-color, var(--qiu-border-color, #dcdfe6));
306
- border-radius: 50%;
307
- transition: background 0.2s, transform 0.2s;
308
-
309
- &.is-active {
310
- background: var(--qiu-color-primary, var(--qiu-color-primary, #409eff));
311
- border-color: var(--qiu-color-primary, var(--qiu-color-primary, #409eff));
312
- transform: scale(1.15);
313
- }
314
- }
315
- }
316
-
317
- .qiu-carousel-slide-next-enter-active,
318
- .qiu-carousel-slide-next-leave-active,
319
- .qiu-carousel-slide-prev-enter-active,
320
- .qiu-carousel-slide-prev-leave-active {
321
- transition: opacity 0.35s ease, transform 0.35s ease;
322
- }
323
-
324
- .qiu-carousel-slide-next-enter-from {
325
- opacity: 0;
326
- transform: translateX(24px);
327
- }
328
-
329
- .qiu-carousel-slide-next-leave-to {
330
- opacity: 0;
331
- transform: translateX(-24px);
332
- }
333
-
334
- .qiu-carousel-slide-prev-enter-from {
335
- opacity: 0;
336
- transform: translateX(-24px);
337
- }
338
-
339
- .qiu-carousel-slide-prev-leave-to {
340
- opacity: 0;
341
- transform: translateX(24px);
342
- }
343
- </style>