foucui 1.0.1

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 (378) hide show
  1. package/README.md +43 -0
  2. package/components/QiuAffix/index.vue +186 -0
  3. package/components/QiuAlert/index.vue +208 -0
  4. package/components/QiuAnchor/context.ts +18 -0
  5. package/components/QiuAnchor/index.vue +180 -0
  6. package/components/QiuAnchorLink/index.vue +67 -0
  7. package/components/QiuApp/index.vue +9 -0
  8. package/components/QiuAutocomplete/index.vue +408 -0
  9. package/components/QiuAvatar/index.vue +140 -0
  10. package/components/QiuBacktop/index.vue +121 -0
  11. package/components/QiuBadge/api/index.ts +389 -0
  12. package/components/QiuBadge/components/BadgeImagePickerDialog.vue +243 -0
  13. package/components/QiuBadge/components/BadgeLibraryManagerDialog.vue +30 -0
  14. package/components/QiuBadge/components/BadgeLibraryPanel.vue +182 -0
  15. package/components/QiuBadge/composables/useTableHostHeight.ts +53 -0
  16. package/components/QiuBadge/index.ts +18 -0
  17. package/components/QiuBadge/shared/BadgeTemplateRenderer.vue +32 -0
  18. package/components/QiuBadge/shared/assetUrl.ts +26 -0
  19. package/components/QiuBadge/shared/badgeTemplate.ts +309 -0
  20. package/components/QiuBadge/utils/chinaAreaData.ts +44 -0
  21. package/components/QiuBadge/utils/hostRegion.ts +22 -0
  22. package/components/QiuBadge/utils/pca-code.json +1 -0
  23. package/components/QiuBadge/utils/pdfFromElement.ts +348 -0
  24. package/components/QiuBadge/views/BadgeLibraryView.vue +32 -0
  25. package/components/QiuBadge/views/BadgeManageView.vue +1364 -0
  26. package/components/QiuBadge/views/BadgeTemplateEditorView.vue +10 -0
  27. package/components/QiuBadge/views/BadgeTemplateListView.vue +229 -0
  28. package/components/QiuBadge/views/DeskLabelTemplateListView.vue +227 -0
  29. package/components/QiuBadge/views/DeskLabelView.vue +683 -0
  30. package/components/QiuBadgeDot/index.vue +87 -0
  31. package/components/QiuButton/index.vue +247 -0
  32. package/components/QiuButtonGroup/index.vue +63 -0
  33. package/components/QiuCanvasKit/QiuCanvasEditor.vue +5503 -0
  34. package/components/QiuCanvasKit/QiuCanvasRenderer.vue +348 -0
  35. package/components/QiuCanvasKit/assetUrl.ts +11 -0
  36. package/components/QiuCanvasKit/components/DataModulesPanel.vue +352 -0
  37. package/components/QiuCanvasKit/export/html.ts +132 -0
  38. package/components/QiuCanvasKit/export/pdf.ts +48 -0
  39. package/components/QiuCanvasKit/export/png.ts +50 -0
  40. package/components/QiuCanvasKit/index.ts +20 -0
  41. package/components/QiuCanvasKit/modules/badgeCompat.ts +84 -0
  42. package/components/QiuCanvasKit/modules/dataRegistry.ts +207 -0
  43. package/components/QiuCanvasKit/modules/merge.ts +71 -0
  44. package/components/QiuCanvasKit/presets/badge.ts +67 -0
  45. package/components/QiuCanvasKit/presets/banner.ts +79 -0
  46. package/components/QiuCanvasKit/types.ts +138 -0
  47. package/components/QiuCard/index.vue +104 -0
  48. package/components/QiuCarousel/context.ts +16 -0
  49. package/components/QiuCarousel/index.vue +343 -0
  50. package/components/QiuCarouselItem/index.vue +47 -0
  51. package/components/QiuCascader/index.vue +879 -0
  52. package/components/QiuCascader/types.ts +48 -0
  53. package/components/QiuCheckbox/QiuCheckboxGroup.vue +78 -0
  54. package/components/QiuCheckbox/index.vue +231 -0
  55. package/components/QiuCheckbox/types.ts +8 -0
  56. package/components/QiuCode/index.vue +64 -0
  57. package/components/QiuCol/col.scss +55 -0
  58. package/components/QiuCol/index.vue +64 -0
  59. package/components/QiuCollapse/context.ts +10 -0
  60. package/components/QiuCollapse/index.vue +70 -0
  61. package/components/QiuCollapseItem/index.vue +167 -0
  62. package/components/QiuColorField/index.vue +296 -0
  63. package/components/QiuColorPicker/README.md +118 -0
  64. package/components/QiuColorPicker/index.vue +60 -0
  65. package/components/QiuColorfulCard/index.vue +101 -0
  66. package/components/QiuCombobox/index.vue +277 -0
  67. package/components/QiuConfigProvider/index.vue +31 -0
  68. package/components/QiuContextMenu/index.vue +209 -0
  69. package/components/QiuDate/index.vue +1134 -0
  70. package/components/QiuDescriptions/context.ts +20 -0
  71. package/components/QiuDescriptions/index.vue +115 -0
  72. package/components/QiuDescriptionsItem/index.vue +103 -0
  73. package/components/QiuDialog/index.vue +828 -0
  74. package/components/QiuDigitalCard/index.vue +159 -0
  75. package/components/QiuDivider/index.vue +185 -0
  76. package/components/QiuDot/index.vue +83 -0
  77. package/components/QiuDrawer/index.vue +350 -0
  78. package/components/QiuDropdown/QiuDropdownItem.vue +74 -0
  79. package/components/QiuDropdown/QiuDropdownMenu.vue +22 -0
  80. package/components/QiuDropdown/context.ts +9 -0
  81. package/components/QiuDropdown/index.vue +189 -0
  82. package/components/QiuEmpty/index.vue +73 -0
  83. package/components/QiuForm/index.vue +172 -0
  84. package/components/QiuForm/types.ts +39 -0
  85. package/components/QiuFormItem/index.vue +276 -0
  86. package/components/QiuFullscreen/index.vue +11 -0
  87. package/components/QiuGrid/index.vue +408 -0
  88. package/components/QiuHoverCard/index.vue +192 -0
  89. package/components/QiuIcon/index.vue +117 -0
  90. package/components/QiuIconPicker/iconify.libraries.ts +182 -0
  91. package/components/QiuIconPicker/icons.catalog.ts +3072 -0
  92. package/components/QiuIconPicker/index.vue +488 -0
  93. package/components/QiuImage/index.vue +177 -0
  94. package/components/QiuInput/index.vue +328 -0
  95. package/components/QiuInputNumber/index.vue +295 -0
  96. package/components/QiuInputOtp/index.vue +190 -0
  97. package/components/QiuKbd/index.vue +57 -0
  98. package/components/QiuLayoutContainer/index.vue +50 -0
  99. package/components/QiuLinkPreview/index.vue +224 -0
  100. package/components/QiuLoading/index.ts +176 -0
  101. package/components/QiuLoading/spinner.vue +820 -0
  102. package/components/QiuLoading/types.ts +44 -0
  103. package/components/QiuMention/index.vue +299 -0
  104. package/components/QiuMenu/QiuMenuRoot.vue +241 -0
  105. package/components/QiuMenu/components/QiuMenuItem.vue +340 -0
  106. package/components/QiuMenu/components/QiuSubMenu.vue +504 -0
  107. package/components/QiuMenu/context.ts +21 -0
  108. package/components/QiuMenu/index.vue +43 -0
  109. package/components/QiuMenuNav/QiuMenuNavItem.vue +100 -0
  110. package/components/QiuMenuNav/QiuMenuNavSub.vue +120 -0
  111. package/components/QiuMenuNav/context.ts +14 -0
  112. package/components/QiuMenuNav/index.vue +148 -0
  113. package/components/QiuMsg/QiuMsgItem.vue +180 -0
  114. package/components/QiuMsg/index.ts +158 -0
  115. package/components/QiuMsg/types.ts +23 -0
  116. package/components/QiuMsgBox/index.ts +147 -0
  117. package/components/QiuNotification/QiuNotificationItem.vue +168 -0
  118. package/components/QiuNotification/index.ts +155 -0
  119. package/components/QiuNotification/types.ts +14 -0
  120. package/components/QiuPage/index.vue +12 -0
  121. package/components/QiuPageHeader/index.vue +115 -0
  122. package/components/QiuPageMain/index.vue +78 -0
  123. package/components/QiuPagination/index.vue +421 -0
  124. package/components/QiuPasswordStrength/index.vue +101 -0
  125. package/components/QiuPopconfirm/index.vue +196 -0
  126. package/components/QiuPopover/index.vue +277 -0
  127. package/components/QiuProgress/index.vue +235 -0
  128. package/components/QiuQrcode/index.vue +302 -0
  129. package/components/QiuQueryForm/components/QiuQueryFormBottomPanel.vue +13 -0
  130. package/components/QiuQueryForm/components/QiuQueryFormLeftPanel.vue +37 -0
  131. package/components/QiuQueryForm/components/QiuQueryFormRightPanel.vue +37 -0
  132. package/components/QiuQueryForm/components/QiuQueryFormTopPanel.vue +13 -0
  133. package/components/QiuQueryForm/index.vue +117 -0
  134. package/components/QiuRadio/QiuRadioGroup.vue +75 -0
  135. package/components/QiuRadio/index.vue +191 -0
  136. package/components/QiuRadio/types.ts +9 -0
  137. package/components/QiuRate/index.vue +184 -0
  138. package/components/QiuRefresh/index.vue +32 -0
  139. package/components/QiuResult/index.vue +103 -0
  140. package/components/QiuRow/index.vue +60 -0
  141. package/components/QiuRow/types.ts +5 -0
  142. package/components/QiuScrollbar/index.vue +107 -0
  143. package/components/QiuSearchBar/index.vue +154 -0
  144. package/components/QiuSegmented/index.vue +120 -0
  145. package/components/QiuSelect/QiuOption.vue +93 -0
  146. package/components/QiuSelect/index.vue +452 -0
  147. package/components/QiuSelect/types.ts +15 -0
  148. package/components/QiuSkeleton/index.vue +78 -0
  149. package/components/QiuSlider/index.vue +266 -0
  150. package/components/QiuSpace/index.vue +95 -0
  151. package/components/QiuSparkline/index.vue +92 -0
  152. package/components/QiuStatistic/index.vue +4 -0
  153. package/components/QiuStatistics/index.vue +123 -0
  154. package/components/QiuStep/index.vue +220 -0
  155. package/components/QiuSteps/context.ts +25 -0
  156. package/components/QiuSteps/index.vue +84 -0
  157. package/components/QiuSwitch/index.vue +145 -0
  158. package/components/QiuTabBar/index.vue +218 -0
  159. package/components/QiuTabBar/types.ts +19 -0
  160. package/components/QiuTabPane/index.vue +82 -0
  161. package/components/QiuTable/columns.ts +16 -0
  162. package/components/QiuTable/export.ts +102 -0
  163. package/components/QiuTable/index.ts +24 -0
  164. package/components/QiuTable/index.vue +3503 -0
  165. package/components/QiuTable/registry.ts +75 -0
  166. package/components/QiuTable/styles/table.scss +1230 -0
  167. package/components/QiuTable/types.ts +413 -0
  168. package/components/QiuTable/useArea.ts +202 -0
  169. package/components/QiuTable/useColumns.ts +325 -0
  170. package/components/QiuTable/useEdit.ts +136 -0
  171. package/components/QiuTable/useExtras.ts +115 -0
  172. package/components/QiuTable/useHistory.ts +77 -0
  173. package/components/QiuTable/useMerge.ts +105 -0
  174. package/components/QiuTable/useResize.ts +86 -0
  175. package/components/QiuTable/useScrollSync.ts +152 -0
  176. package/components/QiuTable/useVirtual.ts +97 -0
  177. package/components/QiuTable/utils.ts +165 -0
  178. package/components/QiuTableColumn/index.vue +101 -0
  179. package/components/QiuTag/index.vue +143 -0
  180. package/components/QiuText/index.vue +99 -0
  181. package/components/QiuTime/index.vue +548 -0
  182. package/components/QiuTimeAgo/index.vue +103 -0
  183. package/components/QiuTimeline/index.vue +54 -0
  184. package/components/QiuTimelineItem/index.vue +140 -0
  185. package/components/QiuTips/index.vue +323 -0
  186. package/components/QiuTooltip/index.vue +237 -0
  187. package/components/QiuTransfer/index.vue +277 -0
  188. package/components/QiuTree/QiuTreeNode.vue +146 -0
  189. package/components/QiuTree/index.vue +143 -0
  190. package/components/QiuTree/types.ts +30 -0
  191. package/components/QiuTreeSelect/index.vue +259 -0
  192. package/components/QiuTrend/index.vue +92 -0
  193. package/components/QiuUpload/index.vue +628 -0
  194. package/components/QiuUploadCrop/index.vue +1267 -0
  195. package/components/QiuWatermark/index.vue +121 -0
  196. package/components/useBodyScrollLock.ts +28 -0
  197. package/dist/components/QiuAnchor/context.d.ts +15 -0
  198. package/dist/components/QiuAnchorLink/index.vue.d.ts +23 -0
  199. package/dist/components/QiuBadge/api/index.d.ts +110 -0
  200. package/dist/components/QiuBadge/components/BadgeImagePickerDialog.vue.d.ts +16 -0
  201. package/dist/components/QiuBadge/components/BadgeLibraryManagerDialog.vue.d.ts +9 -0
  202. package/dist/components/QiuBadge/components/BadgeLibraryPanel.vue.d.ts +5 -0
  203. package/dist/components/QiuBadge/composables/useTableHostHeight.d.ts +7 -0
  204. package/dist/components/QiuBadge/index.d.ts +18 -0
  205. package/dist/components/QiuBadge/shared/BadgeTemplateRenderer.vue.d.ts +14 -0
  206. package/dist/components/QiuBadge/shared/assetUrl.d.ts +1 -0
  207. package/dist/components/QiuBadge/shared/badgeTemplate.d.ts +132 -0
  208. package/dist/components/QiuBadge/utils/chinaAreaData.d.ts +9 -0
  209. package/dist/components/QiuBadge/utils/hostRegion.d.ts +3 -0
  210. package/dist/components/QiuBadge/utils/pca-code.json.d.ts +3 -0
  211. package/dist/components/QiuBadge/utils/pdfFromElement.d.ts +14 -0
  212. package/dist/components/QiuBadge/views/BadgeLibraryView.vue.d.ts +2 -0
  213. package/dist/components/QiuBadge/views/BadgeManageView.vue.d.ts +7 -0
  214. package/dist/components/QiuBadge/views/BadgeTemplateListView.vue.d.ts +4 -0
  215. package/dist/components/QiuBadge/views/DeskLabelTemplateListView.vue.d.ts +4 -0
  216. package/dist/components/QiuBadge/views/DeskLabelView.vue.d.ts +4 -0
  217. package/dist/components/QiuButton/index.vue.d.ts +52 -0
  218. package/dist/components/QiuCanvasKit/QiuCanvasEditor.vue.d.ts +24 -0
  219. package/dist/components/QiuCanvasKit/QiuCanvasRenderer.vue.d.ts +13 -0
  220. package/dist/components/QiuCanvasKit/assetUrl.d.ts +7 -0
  221. package/dist/components/QiuCanvasKit/components/DataModulesPanel.vue.d.ts +23 -0
  222. package/dist/components/QiuCanvasKit/export/html.d.ts +12 -0
  223. package/dist/components/QiuCanvasKit/export/pdf.d.ts +9 -0
  224. package/dist/components/QiuCanvasKit/export/png.d.ts +8 -0
  225. package/dist/components/QiuCanvasKit/index.d.ts +19 -0
  226. package/dist/components/QiuCanvasKit/modules/badgeCompat.d.ts +8 -0
  227. package/dist/components/QiuCanvasKit/modules/dataRegistry.d.ts +23 -0
  228. package/dist/components/QiuCanvasKit/modules/merge.d.ts +12 -0
  229. package/dist/components/QiuCanvasKit/presets/badge.d.ts +12 -0
  230. package/dist/components/QiuCanvasKit/presets/banner.d.ts +4 -0
  231. package/dist/components/QiuCanvasKit/types.d.ts +119 -0
  232. package/dist/components/QiuCarousel/context.d.ts +13 -0
  233. package/dist/components/QiuCarouselItem/index.vue.d.ts +20 -0
  234. package/dist/components/QiuCascader/types.d.ts +25 -0
  235. package/dist/components/QiuCheckbox/QiuCheckboxGroup.vue.d.ts +33 -0
  236. package/dist/components/QiuCheckbox/index.vue.d.ts +38 -0
  237. package/dist/components/QiuCheckbox/types.d.ts +7 -0
  238. package/dist/components/QiuCode/index.vue.d.ts +15 -0
  239. package/dist/components/QiuCollapse/context.d.ts +8 -0
  240. package/dist/components/QiuCollapseItem/index.vue.d.ts +30 -0
  241. package/dist/components/QiuColorField/index.vue.d.ts +23 -0
  242. package/dist/components/QiuColorPicker/index.vue.d.ts +21 -0
  243. package/dist/components/QiuCombobox/index.vue.d.ts +54 -0
  244. package/dist/components/QiuContextMenu/index.vue.d.ts +46 -0
  245. package/dist/components/QiuDescriptions/context.d.ts +16 -0
  246. package/dist/components/QiuDescriptionsItem/index.vue.d.ts +25 -0
  247. package/dist/components/QiuDigitalCard/index.vue.d.ts +45 -0
  248. package/dist/components/QiuDropdown/QiuDropdownItem.vue.d.ts +30 -0
  249. package/dist/components/QiuDropdown/QiuDropdownMenu.vue.d.ts +17 -0
  250. package/dist/components/QiuDropdown/context.d.ts +7 -0
  251. package/dist/components/QiuDropdown/index.vue.d.ts +46 -0
  252. package/dist/components/QiuForm/types.d.ts +31 -0
  253. package/dist/components/QiuHoverCard/index.vue.d.ts +44 -0
  254. package/dist/components/QiuIcon/index.vue.d.ts +18 -0
  255. package/dist/components/QiuIconPicker/iconify.libraries.d.ts +18 -0
  256. package/dist/components/QiuIconPicker/icons.catalog.d.ts +12 -0
  257. package/dist/components/QiuInput/index.vue.d.ts +71 -0
  258. package/dist/components/QiuInputNumber/index.vue.d.ts +38 -0
  259. package/dist/components/QiuInputOtp/index.vue.d.ts +28 -0
  260. package/dist/components/QiuKbd/index.vue.d.ts +22 -0
  261. package/dist/components/QiuLayoutContainer/index.vue.d.ts +29 -0
  262. package/dist/components/QiuLinkPreview/index.vue.d.ts +43 -0
  263. package/dist/components/QiuLoading/index.d.ts +26 -0
  264. package/dist/components/QiuLoading/spinner.vue.d.ts +14 -0
  265. package/dist/components/QiuLoading/types.d.ts +2 -0
  266. package/dist/components/QiuMention/index.vue.d.ts +35 -0
  267. package/dist/components/QiuMenu/QiuMenuRoot.vue.d.ts +36 -0
  268. package/dist/components/QiuMenu/context.d.ts +19 -0
  269. package/dist/components/QiuMenuNav/QiuMenuNavItem.vue.d.ts +26 -0
  270. package/dist/components/QiuMenuNav/QiuMenuNavSub.vue.d.ts +25 -0
  271. package/dist/components/QiuMenuNav/context.d.ts +12 -0
  272. package/dist/components/QiuMenuNav/index.vue.d.ts +35 -0
  273. package/dist/components/QiuMsg/QiuMsgItem.vue.d.ts +15 -0
  274. package/dist/components/QiuMsg/index.d.ts +30 -0
  275. package/dist/components/QiuMsg/types.d.ts +12 -0
  276. package/dist/components/QiuMsgBox/index.d.ts +14 -0
  277. package/dist/components/QiuNotification/QiuNotificationItem.vue.d.ts +16 -0
  278. package/dist/components/QiuNotification/index.d.ts +30 -0
  279. package/dist/components/QiuNotification/types.d.ts +12 -0
  280. package/dist/components/QiuPageMain/index.vue.d.ts +27 -0
  281. package/dist/components/QiuPagination/index.vue.d.ts +44 -0
  282. package/dist/components/QiuPasswordStrength/index.vue.d.ts +9 -0
  283. package/dist/components/QiuQrcode/index.vue.d.ts +20 -0
  284. package/dist/components/QiuRadio/QiuRadioGroup.vue.d.ts +33 -0
  285. package/dist/components/QiuRadio/types.d.ts +8 -0
  286. package/dist/components/QiuRow/types.d.ts +4 -0
  287. package/dist/components/QiuSearchBar/index.vue.d.ts +38 -0
  288. package/dist/components/QiuSelect/QiuOption.vue.d.ts +24 -0
  289. package/dist/components/QiuSelect/index.vue.d.ts +52 -0
  290. package/dist/components/QiuSelect/types.d.ts +13 -0
  291. package/dist/components/QiuSparkline/index.vue.d.ts +18 -0
  292. package/dist/components/QiuStep/index.vue.d.ts +31 -0
  293. package/dist/components/QiuSteps/context.d.ts +21 -0
  294. package/dist/components/QiuSwitch/index.vue.d.ts +25 -0
  295. package/dist/components/QiuTabBar/index.vue.d.ts +32 -0
  296. package/dist/components/QiuTabBar/types.d.ts +16 -0
  297. package/dist/components/QiuTabPane/index.vue.d.ts +25 -0
  298. package/dist/components/QiuTable/columns.d.ts +1 -0
  299. package/dist/components/QiuTable/export.d.ts +18 -0
  300. package/dist/components/QiuTable/index.d.ts +3 -0
  301. package/dist/components/QiuTable/index.vue.d.ts +322 -0
  302. package/dist/components/QiuTable/registry.d.ts +39 -0
  303. package/dist/components/QiuTable/types.d.ts +353 -0
  304. package/dist/components/QiuTable/useArea.d.ts +51 -0
  305. package/dist/components/QiuTable/useColumns.d.ts +67 -0
  306. package/dist/components/QiuTable/useEdit.d.ts +36 -0
  307. package/dist/components/QiuTable/useExtras.d.ts +38 -0
  308. package/dist/components/QiuTable/useHistory.d.ts +44 -0
  309. package/dist/components/QiuTable/useMerge.d.ts +28 -0
  310. package/dist/components/QiuTable/useResize.d.ts +19 -0
  311. package/dist/components/QiuTable/useScrollSync.d.ts +25 -0
  312. package/dist/components/QiuTable/useVirtual.d.ts +30 -0
  313. package/dist/components/QiuTable/utils.d.ts +54 -0
  314. package/dist/components/QiuTime/index.vue.d.ts +43 -0
  315. package/dist/components/QiuTimeAgo/index.vue.d.ts +35 -0
  316. package/dist/components/QiuTimelineItem/index.vue.d.ts +35 -0
  317. package/dist/components/QiuTooltip/index.vue.d.ts +38 -0
  318. package/dist/components/QiuTree/types.d.ts +13 -0
  319. package/dist/components/QiuTrend/index.vue.d.ts +34 -0
  320. package/dist/components/QiuUpload/index.vue.d.ts +86 -0
  321. package/dist/components/QiuUploadCrop/index.vue.d.ts +136 -0
  322. package/dist/components/useBodyScrollLock.d.ts +4 -0
  323. package/dist/foucui.css +1 -0
  324. package/dist/foucui.js +26509 -0
  325. package/dist/foucui.umd.cjs +125 -0
  326. package/dist/index.d.ts +46 -0
  327. package/dist/src/bridge/@/api/media.d.ts +7 -0
  328. package/dist/src/bridge/@/api/notice.d.ts +5 -0
  329. package/dist/src/bridge/@/config/index.d.ts +29 -0
  330. package/dist/src/bridge/@/config/media.config.d.ts +15 -0
  331. package/dist/src/bridge/@/config/security.config.d.ts +7 -0
  332. package/dist/src/bridge/@/i18n/index.d.ts +7 -0
  333. package/dist/src/bridge/@/store/modules/bing.d.ts +3 -0
  334. package/dist/src/bridge/@/store/modules/errorLog.d.ts +3 -0
  335. package/dist/src/bridge/@/store/modules/media.d.ts +4 -0
  336. package/dist/src/bridge/@/store/modules/routes.d.ts +3 -0
  337. package/dist/src/bridge/@/store/modules/settings.d.ts +3 -0
  338. package/dist/src/bridge/@/store/modules/tabs.d.ts +3 -0
  339. package/dist/src/bridge/@/store/modules/user.d.ts +3 -0
  340. package/dist/src/bridge/@/utils/convertToCamelCase.d.ts +2 -0
  341. package/dist/src/bridge/@/utils/index.d.ts +5 -0
  342. package/dist/src/bridge/@/utils/pageTitle.d.ts +1 -0
  343. package/dist/src/bridge/@/utils/routes.d.ts +11 -0
  344. package/dist/src/bridge/@/utils/validate.d.ts +13 -0
  345. package/dist/src/bridge/@qiu/plugins/shortcuts.d.ts +2 -0
  346. package/dist/src/i18n.d.ts +2 -0
  347. package/package.json +83 -0
  348. package/plugins/qiu.ts +83 -0
  349. package/plugins/shortcuts.ts +69 -0
  350. package/src/bridge/@/api/media.ts +8 -0
  351. package/src/bridge/@/api/notice.ts +5 -0
  352. package/src/bridge/@/config/index.ts +38 -0
  353. package/src/bridge/@/config/media.config.ts +37 -0
  354. package/src/bridge/@/config/security.config.ts +8 -0
  355. package/src/bridge/@/i18n/index.ts +6 -0
  356. package/src/bridge/@/store/modules/bing.ts +9 -0
  357. package/src/bridge/@/store/modules/errorLog.ts +9 -0
  358. package/src/bridge/@/store/modules/media.ts +10 -0
  359. package/src/bridge/@/store/modules/routes.ts +10 -0
  360. package/src/bridge/@/store/modules/settings.ts +9 -0
  361. package/src/bridge/@/store/modules/tabs.ts +9 -0
  362. package/src/bridge/@/store/modules/user.ts +9 -0
  363. package/src/bridge/@/utils/convertToCamelCase.ts +11 -0
  364. package/src/bridge/@/utils/index.ts +9 -0
  365. package/src/bridge/@/utils/pageTitle.ts +4 -0
  366. package/src/bridge/@/utils/routes.ts +14 -0
  367. package/src/bridge/@/utils/validate.ts +17 -0
  368. package/src/bridge/@qiu/plugins/shortcuts.ts +3 -0
  369. package/src/i18n.ts +8 -0
  370. package/src/icons/qiu-logo.svg +1 -0
  371. package/styles/dark.scss +194 -0
  372. package/styles/normalize.css +349 -0
  373. package/styles/plain.scss +423 -0
  374. package/styles/qiu-tokens.scss +40 -0
  375. package/styles/qiu.scss +1149 -0
  376. package/styles/technology.scss +452 -0
  377. package/styles/var.scss +382 -0
  378. package/styles/variables.scss +77 -0
@@ -0,0 +1,1149 @@
1
+ /**
2
+ * @description 全局样式
3
+ */
4
+
5
+ @use 'normalize.css' as *;
6
+ @use './dark' as *;
7
+ @use './plain' as *;
8
+ @use './technology' as *;
9
+ @use 'remixicon/fonts/remixicon.css' as *;
10
+ @use './var' as *;
11
+ @use './qiu-tokens' as *;
12
+
13
+ @mixin base-scrollbar {
14
+ &::-webkit-scrollbar {
15
+ width: 10px;
16
+ height: 10px;
17
+ }
18
+ &::-webkit-scrollbar-thumb {
19
+ background-color: rgba(#909399, 0.35);
20
+ border-radius: var(--qiu-border-radius-round);
21
+ border: 2px solid transparent;
22
+ background-clip: padding-box;
23
+ transition: var(--qiu-transition-duration) background-color;
24
+
25
+ &:hover {
26
+ background-color: rgba(#909399, 0.55);
27
+ }
28
+ }
29
+ &::-webkit-scrollbar-track {
30
+ background: transparent;
31
+ }
32
+ }
33
+
34
+ html {
35
+ text-shadow: none;
36
+ -webkit-font-smoothing: antialiased;
37
+
38
+ body {
39
+ position: relative;
40
+ box-sizing: border-box;
41
+ height: calc(var(--vh, 1vh) * 100);
42
+ padding: 0;
43
+ overflow: hidden;
44
+ font-size: var(--qiu-font-size-base);
45
+ color: var(--qiu-color-black);
46
+ background: var(--qiu-background-color);
47
+
48
+ &.color-weakness {
49
+ filter: invert(80%);
50
+ }
51
+
52
+ #app {
53
+ height: calc(var(--vh, 1vh) * 100);
54
+
55
+ @include base-scrollbar;
56
+
57
+ &:not([class*='el-scrollbar']) {
58
+ transition: var(--qiu-transition);
59
+ }
60
+
61
+ .vue-qiu-ui-box {
62
+ div:not(
63
+ .el-drawer,
64
+ .el-drawer *,
65
+ .el-dialog,
66
+ .el-dialog *,
67
+ .el-message-box,
68
+ .el-message-box *,
69
+ .el-table,
70
+ .el-table *,
71
+ .el-carousel,
72
+ .el-carousel *,
73
+ .el-pagination,
74
+ .el-pagination *,
75
+ .el-slider,
76
+ .el-slider *,
77
+ .el-card,
78
+ .el-card *,
79
+ .el-menu,
80
+ .el-menu *,
81
+ .el-form,
82
+ .el-form *,
83
+ .el-row,
84
+ .el-row *,
85
+ .el-tree,
86
+ .el-tree *,
87
+ .split,
88
+ .split *,
89
+ .card-drag,
90
+ .card-drag *,
91
+ .global-animation-disabled *,
92
+ .no-transition-container *,
93
+ .qiu-magnifier,
94
+ .qiu-magnifier *
95
+ ) {
96
+ text-shadow: none;
97
+ transition: var(--qiu-transition);
98
+ -webkit-font-smoothing: antialiased;
99
+ }
100
+
101
+ .qiu-main {
102
+ .qiu-app-main {
103
+ width: 100%;
104
+ padding: var(--qiu-padding);
105
+ overflow: hidden;
106
+
107
+ > section {
108
+ > [class*='-container'] {
109
+ min-height: var(--qiu-container-height);
110
+ padding: var(--qiu-padding);
111
+ background: var(--qiu-color-white);
112
+ border: 1px solid var(--qiu-border-color);
113
+ border-radius: var(--qiu-border-radius-base);
114
+ }
115
+ }
116
+ }
117
+ }
118
+
119
+ /* 横向布局:白盒内容区距顶栏/左右/底边固定 20px(只留这一层间距) */
120
+ .qiu-layout-horizontal {
121
+ > .qiu-main.main-padding {
122
+ box-sizing: border-box !important;
123
+ width: 100% !important;
124
+ max-width: none !important;
125
+ margin: 0 !important;
126
+ padding: 20px !important;
127
+ }
128
+
129
+ .qiu-app-main {
130
+ box-sizing: border-box !important;
131
+ width: 100% !important;
132
+ padding: 0 !important;
133
+ }
134
+
135
+ .qiu-app-main > section > [class*='-container'] {
136
+ margin: 0 !important;
137
+ }
138
+
139
+ /* 顶栏 / tabs 左右同样 20px,与内容对齐 */
140
+ .qiu-header > .qiu-main {
141
+ box-sizing: border-box !important;
142
+ width: 100% !important;
143
+ margin: 0 !important;
144
+ padding: 0 20px !important;
145
+ }
146
+
147
+ .qiu-tabs {
148
+ box-sizing: border-box !important;
149
+ width: 100% !important;
150
+ padding-right: 20px !important;
151
+ padding-left: 20px !important;
152
+ }
153
+ }
154
+ }
155
+ }
156
+
157
+ .vue-qiu-ui-box.mobile {
158
+ --qiu-margin: 16px;
159
+ --qiu-padding: 16px;
160
+ --qiu-container-height: calc(
161
+ var(--vh, 1vh) * 100 - var(--qiu-nav-height) - var(--qiu-tabs-height) - var(--qiu-padding) * 3 - var(--qiu-footer-height)
162
+ );
163
+
164
+ .ri-contract-right-line.fold-unfold {
165
+ position: fixed;
166
+ bottom: var(--qiu-margin);
167
+ left: var(--qiu-margin);
168
+ z-index: var(--qiu-z-index);
169
+ display: flex;
170
+ align-items: center;
171
+ justify-content: center;
172
+ width: 50px;
173
+ height: 50px;
174
+ color: var(--qiu-color-white);
175
+ background: var(--qiu-color-primary);
176
+ border-radius: 50%;
177
+ box-shadow: 0 2px 12px 0 var(--qiu-color-primary);
178
+ }
179
+ }
180
+
181
+ * {
182
+ box-sizing: border-box;
183
+ font-family: 'Segoe UI', system-ui, sans-serif;
184
+ outline: none !important;
185
+ -webkit-tap-highlight-color: transparent;
186
+ -webkit-font-smoothing: antialiased;
187
+
188
+ @include base-scrollbar;
189
+ }
190
+
191
+ /* 全局 * 会覆盖图标字体,必须强制回 remixicon */
192
+ [class^='ri-'],
193
+ [class*=' ri-'],
194
+ i.qiu-icon[class*='ri-'] {
195
+ font-family: remixicon !important;
196
+ font-style: normal;
197
+ -webkit-font-smoothing: antialiased;
198
+ }
199
+
200
+ [class*='ri-'] {
201
+ cursor: pointer;
202
+ }
203
+
204
+ /*a标签 */
205
+ a {
206
+ color: var(--qiu-color-primary);
207
+ text-decoration: none;
208
+ }
209
+
210
+ /*图片 */
211
+ img {
212
+ object-fit: cover;
213
+
214
+ &[src=''],
215
+ &:not([src]) {
216
+ opacity: 0;
217
+ }
218
+ }
219
+
220
+ /* qiu-dropdown下拉动画 */
221
+ .qiu-dropdown {
222
+ transition: var(--qiu-transition);
223
+
224
+ &-active {
225
+ transition: var(--qiu-transition);
226
+ transform: rotateZ(180deg);
227
+ }
228
+ }
229
+
230
+ /* qiu-query-form表单查询 */
231
+ .qiu-query-form {
232
+ .el-form-item__content {
233
+ .el-slider {
234
+ width: 190px;
235
+ }
236
+ }
237
+
238
+ .el-form {
239
+ &.el-form--inline.el-form--label-right {
240
+ .el-form-item:not(:first-child) {
241
+ .el-form-item__label {
242
+ margin-left: 10px;
243
+ }
244
+ }
245
+ }
246
+ }
247
+ }
248
+
249
+ /* qiu-data-empty占位图 */
250
+ .qiu-data-empty {
251
+ display: flex;
252
+ align-items: center;
253
+ justify-content: center;
254
+ min-height: calc(var(--qiu-container-height) - 250px);
255
+ margin: auto;
256
+ }
257
+
258
+ /* el-descriptions */
259
+ .el-descriptions {
260
+ &__title {
261
+ padding-left: 10px;
262
+ border-left: 5px solid var(--qiu-color-primary);
263
+ }
264
+ }
265
+
266
+ /* el-button按钮 */
267
+ .el-button {
268
+ border-radius: var(--qiu-border-radius-base);
269
+
270
+ &:hover,
271
+ &:focus,
272
+ &:active,
273
+ &.is-disabled {
274
+ background-clip: padding-box;
275
+ }
276
+
277
+ &.is-round {
278
+ border-radius: var(--qiu-border-radius-round);
279
+ }
280
+
281
+ &.is-circle {
282
+ border-radius: var(--qiu-border-radius-circle);
283
+ }
284
+
285
+ [class*='el-icon-'] + span,
286
+ span + [class*='el-icon-'],
287
+ [class*='ri-'] + span,
288
+ span + [class*='ri-'] {
289
+ margin-left: 3px;
290
+ }
291
+ }
292
+
293
+ /* el-select */
294
+ .el-select {
295
+ min-width: 115px;
296
+
297
+ &__wrapper {
298
+ font-size: var(--qiu-font-size-small);
299
+ }
300
+ }
301
+
302
+ a + a,
303
+ a + .el-button,
304
+ .el-button + a {
305
+ margin-left: 10px;
306
+ }
307
+
308
+ /* 毛玻璃遮罩(影响性能,默认关闭) */
309
+ .el-overlay,
310
+ .el-image-viewer__mask {
311
+ background-color: var(--qiu-overlay-color-lighter);
312
+ // backdrop-filter: blur(2.5px);
313
+ // opacity: 1;opacity
314
+
315
+ // > div {
316
+ // backdrop-filter: none;
317
+ // }
318
+ }
319
+
320
+ .v-modal {
321
+ z-index: var(--qiu-z-index);
322
+ background-color: var(--qiu-overlay-color-lighter);
323
+ //backdrop-filter: blur(2.5px);
324
+ //opacity: 1;
325
+ }
326
+
327
+ .qiu-modal {
328
+ position: fixed;
329
+ top: 0;
330
+ left: 0;
331
+ z-index: var(--qiu-z-index);
332
+ width: 100%;
333
+ height: 100%;
334
+ background-color: var(--qiu-overlay-color-lighter);
335
+ //opacity: 1;
336
+ //backdrop-filter: blur(2.5px);
337
+ }
338
+
339
+ /* el-loading-mask遮罩 */
340
+ .el-loading-mask {
341
+ z-index: calc(var(--qiu-z-index) - 10) !important;
342
+
343
+ &.is-fullscreen {
344
+ z-index: calc(var(--qiu-z-index) + 99) !important;
345
+ }
346
+ }
347
+
348
+ /* el-tag */
349
+ .el-tag {
350
+ --el-tag-font-size: var(--qiu-font-size-extra-small);
351
+
352
+ border-radius: var(--qiu-border-radius-base);
353
+ }
354
+
355
+ /* .el-badge */
356
+
357
+ .el-badge {
358
+ &__content {
359
+ border: 0;
360
+ }
361
+ }
362
+
363
+ /* .el-page-header */
364
+ .el-page-header {
365
+ margin: 0 0 var(--qiu-margin) 0;
366
+ }
367
+
368
+ /* el-alert */
369
+ .el-alert {
370
+ --el-alert-title-font-size: var(--qiu-font-size-base);
371
+ --el-alert-title-with-description-font-size: var(--qiu-font-size-medium);
372
+ --el-alert-description-font-size: var(--qiu-font-size-base);
373
+ --el-alert-close-font-size: var(--qiu-font-size-medium);
374
+ --el-alert-close-customed-font-size: var(--qiu-font-size-base);
375
+ --el-alert-icon-size: var(--qiu-font-size-medium);
376
+ --qiu-alert-icon-large-size: calc(var(--qiu-font-size-base) * 2);
377
+
378
+ margin: 0 0 var(--qiu-margin) 0;
379
+
380
+ &.is-light {
381
+ .el-alert__icon,
382
+ .el-alert__close-btn {
383
+ color: currentColor;
384
+ }
385
+ }
386
+
387
+ &--success {
388
+ &.is-light {
389
+ color: var(--qiu-color-success);
390
+ background-color: var(--qiu-color-success-lighter);
391
+ border: 1px solid var(--qiu-color-success);
392
+ }
393
+
394
+ &.is-dark {
395
+ background-color: var(--qiu-color-success);
396
+ border: 1px solid var(--qiu-color-success);
397
+ }
398
+ }
399
+
400
+ &--info {
401
+ &.is-light {
402
+ color: var(--qiu-color-primary);
403
+ background-color: var(--qiu-color-primary-light-9);
404
+ border: 1px solid var(--qiu-color-primary);
405
+ }
406
+
407
+ &.is-dark {
408
+ background-color: var(--qiu-color-primary);
409
+ border: 1px solid var(--qiu-color-primary);
410
+ }
411
+ }
412
+
413
+ &--warning {
414
+ &.is-light {
415
+ color: var(--qiu-color-warning);
416
+ background-color: var(--qiu-color-warning-lighter);
417
+ border: 1px solid var(--qiu-color-warning);
418
+ }
419
+
420
+ &.is-dark {
421
+ background-color: var(--qiu-color-warning);
422
+ border: 1px solid var(--qiu-color-warning);
423
+ }
424
+ }
425
+
426
+ &--error {
427
+ &.is-light {
428
+ color: var(--qiu-color-error);
429
+ background-color: var(--qiu-color-error-lighter);
430
+ border: 1px solid var(--qiu-color-error);
431
+ }
432
+
433
+ &.is-dark {
434
+ background-color: var(--qiu-color-error);
435
+ border: 1px solid var(--qiu-color-error);
436
+ }
437
+ }
438
+ }
439
+
440
+ /* nprogress进度条 */
441
+ #nprogress {
442
+ position: fixed;
443
+ z-index: calc(var(--qiu-z-index) + 3);
444
+
445
+ .bar {
446
+ background: var(--qiu-color-primary);
447
+ }
448
+
449
+ .peg {
450
+ box-shadow:
451
+ 0 0 10px var(--qiu-color-primary),
452
+ 0 0 5px var(--qiu-color-primary);
453
+ }
454
+ }
455
+
456
+ /* el-checkbox */
457
+ .el-checkbox {
458
+ &__label {
459
+ font-size: var(--qiu-font-size-base);
460
+ }
461
+ }
462
+
463
+ /* el-breadcrumb */
464
+ .el-breadcrumb {
465
+ font-size: var(--qiu-font-size-base);
466
+ }
467
+
468
+ /* el-collapse*/
469
+ .el-collapse {
470
+ --el-collapse-header-font-size: var(--qiu-font-size-base);
471
+ --el-collapse-content-font-size: var(--qiu-font-size-base);
472
+ }
473
+
474
+ /* el-table表格 */
475
+ .el-table {
476
+ font-size: var(--qiu-font-size-base);
477
+
478
+ td {
479
+ .cell {
480
+ .el-image {
481
+ width: 50px;
482
+ height: 50px;
483
+ cursor: pointer;
484
+ border-radius: var(--qiu-border-radius-base);
485
+ }
486
+
487
+ .el-button.is-text + .el-button.is-text {
488
+ margin-left: 0;
489
+ }
490
+ }
491
+ }
492
+ }
493
+
494
+ /* el-pagination分页 */
495
+ .el-pagination {
496
+ --el-pagination-border-radius: var(--qiu-border-radius-base);
497
+ justify-content: center;
498
+ margin-top: var(--qiu-margin);
499
+ font-size: var(--qiu-font-size-base);
500
+
501
+ * {
502
+ font-size: var(--qiu-font-size-base);
503
+ }
504
+ }
505
+
506
+ /* el-menu菜单 */
507
+ .el-menu {
508
+ user-select: none;
509
+
510
+ .el-sub-menu__title,
511
+ .el-menu-item {
512
+ svg,
513
+ [class*='ri-'] {
514
+ margin-right: 3px;
515
+ margin-left: 0;
516
+ }
517
+ }
518
+ }
519
+
520
+ /* el-tabs--top */
521
+ .el-tabs.el-tabs--top {
522
+ .el-tabs__item {
523
+ svg,
524
+ [class*='ri-'] {
525
+ margin-right: 3px;
526
+ }
527
+ }
528
+ }
529
+
530
+ /* el-breadcrumb */
531
+ .el-breadcrumb__inner {
532
+ display: flex;
533
+ align-items: center;
534
+ justify-content: center;
535
+
536
+ svg,
537
+ [class*='ri-'] {
538
+ margin-right: 3px;
539
+ }
540
+ }
541
+
542
+ /* el-tour */
543
+ .el-tour {
544
+ --qiu-tour-title-font-size: 18px;
545
+
546
+ &__header {
547
+ display: flex;
548
+ justify-items: center;
549
+ width: 100%;
550
+ height: 58px;
551
+ padding: 0 0 0 var(--qiu-padding);
552
+ margin: 0;
553
+ }
554
+
555
+ &__title {
556
+ line-height: 58px;
557
+ }
558
+
559
+ &__closebtn {
560
+ width: auto;
561
+ height: auto;
562
+ margin-top: var(--qiu-padding);
563
+ margin-right: var(--qiu-padding);
564
+ }
565
+
566
+ &__content {
567
+ max-width: 400px !important;
568
+ padding: 0;
569
+
570
+ .el-button--small {
571
+ height: 32px;
572
+ padding: 8px 15px;
573
+ font-size: var(--qiu-font-size-base);
574
+ border-radius: var(--qiu-border-radius-base);
575
+ }
576
+ }
577
+
578
+ &__body {
579
+ padding: calc(var(--qiu-padding) / 2) var(--qiu-padding) 0 var(--qiu-padding);
580
+ }
581
+
582
+ &__footer {
583
+ display: flex;
584
+ align-items: center;
585
+ padding: var(--qiu-padding);
586
+ }
587
+
588
+ @media (max-width: 768px) {
589
+ &__content {
590
+ width: calc(100% - 10vw);
591
+ }
592
+ }
593
+ }
594
+
595
+ /* el-dialog */
596
+ @media (max-width: 768px) {
597
+ .el-dialog,
598
+ .el-message-box {
599
+ width: calc(100% - 10vw);
600
+ margin-right: 5vw;
601
+ margin-left: 5vw;
602
+ }
603
+ }
604
+
605
+ .el-dialog {
606
+ --qiu-dialog-title-font-size: 18px;
607
+
608
+ padding: 0;
609
+ border-radius: var(--qiu-border-radius-base);
610
+
611
+ &--center {
612
+ .el-dialog__title {
613
+ padding-left: 0 !important;
614
+ }
615
+ }
616
+
617
+ &__header {
618
+ height: calc(var(--qiu-dialog-title-font-size) + var(--qiu-padding) * 2);
619
+ padding: 0 !important;
620
+ margin-right: 0;
621
+ line-height: calc(var(--qiu-dialog-title-font-size) + var(--qiu-padding) * 2);
622
+ border-top-left-radius: inherit;
623
+ border-top-right-radius: inherit;
624
+
625
+ .el-dialog__title {
626
+ width: 100%;
627
+ height: inherit;
628
+ padding-left: var(--qiu-padding);
629
+ line-height: inherit;
630
+ }
631
+
632
+ &btn {
633
+ right: var(--qiu-margin);
634
+ display: flex;
635
+ align-items: center;
636
+ justify-content: center;
637
+ width: 16px;
638
+ height: inherit;
639
+
640
+ &:focus {
641
+ .el-dialog__close {
642
+ color: var(--qiu-color-info);
643
+ }
644
+ }
645
+
646
+ .el-dialog__close {
647
+ color: var(--qiu-color-info);
648
+ }
649
+
650
+ .el-dialog__fullscreen {
651
+ font-size: 14px;
652
+ vertical-align: -3px;
653
+ }
654
+ }
655
+ }
656
+
657
+ &__body {
658
+ padding: var(--qiu-padding) var(--qiu-padding) 0 var(--qiu-padding);
659
+
660
+ .el-form:not(.el-form--inline):not(.el-form--label-top) {
661
+ margin-right: 30px;
662
+
663
+ .el-form-item:last-child {
664
+ margin-bottom: 0;
665
+ }
666
+
667
+ .el-date-editor,
668
+ .el-select {
669
+ width: 100%;
670
+ }
671
+ }
672
+ }
673
+
674
+ &__footer {
675
+ padding: var(--qiu-padding);
676
+ }
677
+
678
+ &.is-fullscreen {
679
+ width: 100%;
680
+ margin: 0;
681
+ border-radius: 0;
682
+
683
+ .el-dialog__body {
684
+ height: calc(var(--vh, 1vh) * 100 - var(--qiu-dialog-title-font-size) - var(--qiu-padding) * 4 - 32px);
685
+ overflow-y: auto;
686
+ }
687
+ }
688
+
689
+ &.qiu-dialog-plain {
690
+ .el-dialog__header {
691
+ background: var(--qiu-color-info-light-9);
692
+ }
693
+ }
694
+
695
+ &.qiu-dialog-primary {
696
+ .el-dialog__header {
697
+ --el-text-color-primary: var(--qiu-color-white);
698
+ --el-color-info: var(--qiu-color-white);
699
+ background: var(--qiu-color-primary);
700
+
701
+ .el-dialog__close {
702
+ --el-color-primary: var(--qiu-color-white);
703
+
704
+ &:hover {
705
+ opacity: 0.6;
706
+ }
707
+ }
708
+ }
709
+ }
710
+ }
711
+
712
+ /* el-el-message-box */
713
+ .el-message-box {
714
+ --qiu-messagebox-font-size: 18px;
715
+
716
+ padding: 0;
717
+ border-radius: var(--qiu-border-radius-base);
718
+
719
+ &__header {
720
+ height: calc(var(--qiu-messagebox-font-size) + var(--qiu-padding) * 2);
721
+ padding: 0 !important;
722
+ margin-right: 0;
723
+ line-height: calc(var(--qiu-messagebox-font-size) + var(--qiu-padding) * 2);
724
+ border-top-left-radius: inherit;
725
+ border-top-right-radius: inherit;
726
+
727
+ .el-message-box__title {
728
+ width: 100%;
729
+ height: inherit;
730
+ padding-left: var(--qiu-padding);
731
+ line-height: inherit;
732
+ }
733
+
734
+ &btn {
735
+ right: var(--qiu-margin);
736
+ width: 16px;
737
+ height: inherit;
738
+ line-height: inherit;
739
+
740
+ &:focus {
741
+ .el-message-box__close {
742
+ color: var(--qiu-color-info);
743
+ }
744
+ }
745
+
746
+ .el-message-box__close {
747
+ color: var(--qiu-color-info);
748
+ }
749
+ }
750
+ }
751
+
752
+ &__content {
753
+ padding: calc(var(--qiu-padding) / 2) var(--qiu-padding) 0 var(--qiu-padding);
754
+ }
755
+
756
+ &__btns {
757
+ padding: var(--qiu-padding);
758
+ }
759
+ }
760
+
761
+ /* el-card卡片 */
762
+ .el-card {
763
+ margin-bottom: var(--qiu-margin);
764
+ border: 1px solid var(--qiu-border-color);
765
+ border-radius: var(--qiu-border-radius-base);
766
+ transition: var(--qiu-transition) !important;
767
+
768
+ &__header {
769
+ position: relative;
770
+ display: flex;
771
+ align-items: center;
772
+ justify-content: flex-start;
773
+
774
+ [class*='ri-'] {
775
+ margin-right: 3px;
776
+ }
777
+
778
+ .card-header-tag,
779
+ .card-header-button {
780
+ position: absolute;
781
+ right: var(--qiu-margin);
782
+ }
783
+ }
784
+
785
+ &__body {
786
+ padding: var(--qiu-padding);
787
+ }
788
+ }
789
+
790
+ /* .qiu-hey-message */
791
+ .qiu-hey-message {
792
+ @mixin qiu-hey-message {
793
+ padding: 15px;
794
+ background-color: var(--qiu-color-white);
795
+ border-color: var(--qiu-color-white);
796
+ box-shadow: 0 5px 10px rgba(0, 0, 0, 0.15);
797
+
798
+ .el-message__content {
799
+ color: var(--qiu-color-grey);
800
+ }
801
+
802
+ .el-icon-close {
803
+ color: var(--qiu-color-grey);
804
+
805
+ &:hover {
806
+ opacity: 0.8;
807
+ }
808
+ }
809
+ }
810
+
811
+ &-info {
812
+ @include qiu-hey-message;
813
+
814
+ i {
815
+ color: var(--qiu-color-grey);
816
+ }
817
+ }
818
+
819
+ &-success {
820
+ @include qiu-hey-message;
821
+
822
+ i {
823
+ color: var(--qiu-color-success);
824
+ }
825
+ }
826
+
827
+ &-warning {
828
+ @include qiu-hey-message;
829
+
830
+ i {
831
+ color: var(--qiu-color-warning);
832
+ }
833
+ }
834
+
835
+ &-error {
836
+ @include qiu-hey-message;
837
+
838
+ i {
839
+ color: var(--qiu-color-error);
840
+ }
841
+ }
842
+ }
843
+
844
+ /* qiu-table-expand */
845
+ .qiu-table-expand {
846
+ padding: var(--qiu-padding);
847
+ line-height: 30px;
848
+
849
+ &-title {
850
+ display: inline-block;
851
+ width: 80px;
852
+ font-weight: bold;
853
+ }
854
+ }
855
+
856
+ /* el-color-picker */
857
+ .el-color-picker {
858
+ &__trigger {
859
+ width: 20px;
860
+ height: 20px;
861
+ padding: 0;
862
+ border-radius: 0;
863
+ }
864
+
865
+ &__color {
866
+ border: 0;
867
+ }
868
+ }
869
+
870
+ /* svg */
871
+ [fill='#6c63ff'],
872
+ [fill='#7CADF6'],
873
+ [fill='#1C85E8'],
874
+ [fill='#5CA4E6'],
875
+ [fill='#2F9BFF'] {
876
+ fill: var(--qiu-color-primary) !important;
877
+ }
878
+
879
+ [fill='#5661AE'],
880
+ [fill='#465393'] {
881
+ fill: var(--qiu-color-primary-light-1) !important;
882
+ }
883
+
884
+ [fill='#FEBB94'],
885
+ [fill='#BC775C'],
886
+ [fill='#E6A23C'] {
887
+ fill: var(--qiu-color-warning) !important;
888
+ }
889
+
890
+ .el-menu--horizontal .el-menu-item:not(.is-disabled):focus,
891
+ .el-menu--horizontal .el-menu-item:not(.is-disabled):hover {
892
+ background-color: var(--qiu-color-primary) !important;
893
+ }
894
+
895
+ .el-avatar {
896
+ background-color: var(--qiu-background-color) !important;
897
+ }
898
+
899
+ .no-background-container {
900
+ padding: 0 !important;
901
+ background: var(--qiu-background-color) !important;
902
+ border: 0 !important;
903
+ }
904
+
905
+ /* 内容全屏 */
906
+ .fullscreen-container {
907
+ position: fixed !important;
908
+ inset: 0 !important;
909
+ z-index: calc(var(--qiu-z-index) + 3) !important;
910
+ box-sizing: border-box !important;
911
+ width: 100vw !important;
912
+ height: calc(var(--vh, 1vh) * 100) !important;
913
+ overflow: auto !important;
914
+ border: 0 !important;
915
+ border-radius: 0 !important;
916
+ }
917
+
918
+ /* 数据大屏全屏 */
919
+ .qiu-data-fullscreen {
920
+ position: fixed !important;
921
+ inset: 0 !important;
922
+ z-index: calc(var(--qiu-z-index) + 3) !important;
923
+ width: 100vw !important;
924
+ height: calc(var(--vh, 1vh) * 100) !important;
925
+ padding: 0 !important;
926
+ margin: 0 !important;
927
+ border: 0 !important;
928
+ border-radius: 0 !important;
929
+ }
930
+
931
+ /* el-switch */
932
+ .el-switch {
933
+ font-size: var(--qiu-font-size-base);
934
+
935
+ &__label * {
936
+ font-size: var(--qiu-font-size-base);
937
+ }
938
+ }
939
+
940
+ /* el-upload */
941
+ .el-upload {
942
+ &.el-upload--text + .el-button {
943
+ margin-left: 10px;
944
+ }
945
+
946
+ &__tip {
947
+ margin-top: 10px;
948
+ font-size: var(--qiu-font-size-small);
949
+ }
950
+ }
951
+
952
+ /* 默认布局自动高度 */
953
+ :not(.no-background-container).auto-height-container {
954
+ display: flex;
955
+ flex-direction: column;
956
+ height: var(--qiu-container-height);
957
+
958
+ .el-table,
959
+ .qiu-table {
960
+ flex: 1;
961
+ min-height: 0;
962
+ }
963
+
964
+ .qiu-table {
965
+ display: flex;
966
+ flex-direction: column;
967
+
968
+ .qiu-table__inner,
969
+ .el-table {
970
+ flex: 1;
971
+ height: 100% !important;
972
+ }
973
+ }
974
+
975
+ .el-scrollbar {
976
+ //margin-right: -20px;
977
+
978
+ .qiu-auto-box {
979
+ flex: 1;
980
+ width: 100%;
981
+ padding: 0 var(--qiu-padding) 0 0;
982
+ }
983
+ }
984
+
985
+ @media (max-width: 1024px) {
986
+ height: auto;
987
+ }
988
+ }
989
+
990
+ /* 左右布局自动高度 */
991
+ .no-background-container.auto-height-container {
992
+ .auto-height-card {
993
+ margin-bottom: 0;
994
+
995
+ > .el-card__body {
996
+ display: flex;
997
+ flex-direction: column;
998
+ height: calc(var(--qiu-container-height) - 2px);
999
+
1000
+ .el-table {
1001
+ flex: 1;
1002
+ }
1003
+ }
1004
+
1005
+ &.has-header {
1006
+ > .el-card__body {
1007
+ height: calc(var(--qiu-container-height) - 57px);
1008
+ }
1009
+ }
1010
+ }
1011
+
1012
+ @media (max-width: 1200px) {
1013
+ margin-bottom: calc(0 - var(--qiu-margin));
1014
+
1015
+ > .el-row {
1016
+ > .el-col + .el-col {
1017
+ .auto-height-card {
1018
+ margin-bottom: 0;
1019
+ }
1020
+ }
1021
+ }
1022
+
1023
+ .auto-height-card {
1024
+ margin-bottom: var(--qiu-margin);
1025
+
1026
+ > .el-card__body {
1027
+ &:not(:has(.el-alert)) {
1028
+ height: auto;
1029
+ }
1030
+ }
1031
+
1032
+ &.has-header {
1033
+ margin-bottom: 0;
1034
+
1035
+ > .el-card__body {
1036
+ height: auto;
1037
+ min-height: calc(var(--qiu-container-height) - 57px);
1038
+ }
1039
+ }
1040
+ }
1041
+ }
1042
+
1043
+ &.fullscreen-container {
1044
+ padding: var(--qiu-padding) !important;
1045
+
1046
+ .auto-height-card {
1047
+ > .el-card__body {
1048
+ height: calc(var(--vh, 1vh) * 100 - var(--qiu-padding) * 2 - 2px);
1049
+ }
1050
+ }
1051
+ }
1052
+ }
1053
+
1054
+ :not(.auto-height-container).no-background-container {
1055
+ > .el-row:has(.el-card) {
1056
+ margin-bottom: calc(0px - var(--qiu-margin));
1057
+ }
1058
+ }
1059
+
1060
+ .jv-container.jv-light {
1061
+ background: var(--qiu-color-white);
1062
+
1063
+ .jv-key,
1064
+ .jv-item.jv-object {
1065
+ color: var(--qiu-color-black);
1066
+ }
1067
+ }
1068
+
1069
+ .qiu-logo-column .logo {
1070
+ border-right: 0 !important;
1071
+ border-bottom: 0 !important;
1072
+ }
1073
+
1074
+ .qiu-logo-column .title {
1075
+ border-bottom: 0 !important;
1076
+ }
1077
+
1078
+ .qiu-side-bar {
1079
+ margin-left: 0 !important;
1080
+ }
1081
+
1082
+ .qiu-column-bar {
1083
+ border-right: 0 !important;
1084
+ }
1085
+
1086
+ .el-space {
1087
+ &__item {
1088
+ &:empty {
1089
+ display: none;
1090
+ }
1091
+ }
1092
+ }
1093
+
1094
+ button {
1095
+ .el-icon {
1096
+ color: inherit;
1097
+ }
1098
+ svg,
1099
+ path {
1100
+ fill: inherit;
1101
+ }
1102
+
1103
+ i {
1104
+ color: inherit;
1105
+ }
1106
+
1107
+ &:hover {
1108
+ svg,
1109
+ path {
1110
+ fill: inherit;
1111
+ }
1112
+
1113
+ i {
1114
+ color: inherit;
1115
+ }
1116
+ }
1117
+ }
1118
+
1119
+ @media (max-width: 768px) {
1120
+ .el-space {
1121
+ &__item {
1122
+ &:has([class*='hidden-']) {
1123
+ display: none;
1124
+ }
1125
+ }
1126
+ }
1127
+ }
1128
+
1129
+ /* 旋转动画 */
1130
+
1131
+ @keyframes rotate {
1132
+ 0% {
1133
+ transform: rotate(0);
1134
+ }
1135
+
1136
+ 100% {
1137
+ transform: rotate(360deg);
1138
+ }
1139
+ }
1140
+
1141
+ .rotate {
1142
+ animation: rotate 1s linear infinite;
1143
+ }
1144
+
1145
+ .qiu-icon {
1146
+ --el-font-size-big: var(--qiu-font-size-medium) !important;
1147
+ }
1148
+ }
1149
+ }