f10dced11b996f6957b666e73ba54e81e62ac4226d34662c1e54984f33e1f817499c2c315359a5a447850387117e0caa3ec5872a502bf824f8c3359396290c 40 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669
  1. /* Element Chalk Variables */
  2. @use 'sass:math';
  3. @use 'sass:map';
  4. @use 'sass:color';
  5. @use '../mixins/function.scss' as *;
  6. // Special comment for theme configurator
  7. // type|skipAutoTranslation|Category|Order
  8. // skipAutoTranslation 1
  9. // types
  10. $types: primary, success, warning, danger, error, info;
  11. // Color
  12. $colors: () !default;
  13. $colors: map.deep-merge(
  14. (
  15. 'white': #ffffff,
  16. 'black': #000000,
  17. 'primary': (
  18. 'base': #409eff,
  19. ),
  20. 'success': (
  21. 'base': #67c23a,
  22. ),
  23. 'warning': (
  24. 'base': #e6a23c,
  25. ),
  26. 'danger': (
  27. 'base': #f56c6c,
  28. ),
  29. 'error': (
  30. 'base': #f56c6c,
  31. ),
  32. 'info': (
  33. 'base': #909399,
  34. ),
  35. ),
  36. $colors
  37. );
  38. $color-white: map.get($colors, 'white') !default;
  39. $color-black: map.get($colors, 'black') !default;
  40. $color-primary: map.get($colors, 'primary', 'base') !default;
  41. $color-success: map.get($colors, 'success', 'base') !default;
  42. $color-warning: map.get($colors, 'warning', 'base') !default;
  43. $color-danger: map.get($colors, 'danger', 'base') !default;
  44. $color-error: map.get($colors, 'error', 'base') !default;
  45. $color-info: map.get($colors, 'info', 'base') !default;
  46. // https://sass-lang.com/documentation/values/maps#immutability
  47. // mix colors with white/black to generate light/dark level
  48. @mixin set-color-mix-level(
  49. $type,
  50. $number,
  51. $mode: 'light',
  52. $mix-color: $color-white
  53. ) {
  54. $colors: map.deep-merge(
  55. (
  56. $type: (
  57. '#{$mode}-#{$number}':
  58. roundColor(
  59. color.mix(
  60. $mix-color,
  61. map.get($colors, $type, 'base'),
  62. math.percentage(math.div($number, 10))
  63. )
  64. ),
  65. ),
  66. ),
  67. $colors
  68. ) !global;
  69. }
  70. // $colors.primary.light-i
  71. // --el-color-primary-light-i
  72. // 10% 53a8ff
  73. // 20% 66b1ff
  74. // 30% 79bbff
  75. // 40% 8cc5ff
  76. // 50% a0cfff
  77. // 60% b3d8ff
  78. // 70% c6e2ff
  79. // 80% d9ecff
  80. // 90% ecf5ff
  81. @each $type in $types {
  82. @for $i from 1 through 9 {
  83. @include set-color-mix-level($type, $i, 'light', $color-white);
  84. }
  85. }
  86. // --el-color-primary-dark-2
  87. @each $type in $types {
  88. @include set-color-mix-level($type, 2, 'dark', $color-black);
  89. }
  90. $text-color: () !default;
  91. $text-color: map.merge(
  92. (
  93. 'primary': #303133,
  94. 'regular': #606266,
  95. 'secondary': #909399,
  96. 'placeholder': #a8abb2,
  97. 'disabled': #c0c4cc,
  98. ),
  99. $text-color
  100. );
  101. $border-color: () !default;
  102. $border-color: map.merge(
  103. (
  104. '': #dcdfe6,
  105. 'light': #e4e7ed,
  106. 'lighter': #ebeef5,
  107. 'extra-light': #f2f6fc,
  108. 'dark': #d4d7de,
  109. 'darker': #cdd0d6,
  110. ),
  111. $border-color
  112. );
  113. $fill-color: () !default;
  114. $fill-color: map.merge(
  115. (
  116. '': #f0f2f5,
  117. 'light': #f5f7fa,
  118. 'lighter': #fafafa,
  119. 'extra-light': #fafcff,
  120. 'dark': #ebedf0,
  121. 'darker': #e6e8eb,
  122. 'blank': #ffffff,
  123. ),
  124. $fill-color
  125. );
  126. // Background
  127. $bg-color: () !default;
  128. $bg-color: map.merge(
  129. (
  130. '': #ffffff,
  131. 'page': #f2f3f5,
  132. 'overlay': #ffffff,
  133. ),
  134. $bg-color
  135. );
  136. // Border
  137. $border-width: 1px !default;
  138. $border-style: solid !default;
  139. $border-color-hover: getCssVar('text-color', 'disabled') !default;
  140. $border-radius: () !default;
  141. $border-radius: map.merge(
  142. (
  143. 'base': 4px,
  144. 'small': 2px,
  145. 'round': 20px,
  146. 'circle': 100%,
  147. ),
  148. $border-radius
  149. );
  150. // Box-shadow
  151. $box-shadow: () !default;
  152. $box-shadow: map.merge(
  153. (
  154. '': (
  155. 0px 12px 32px 4px rgba(0, 0, 0, 0.04),
  156. 0px 8px 20px rgba(0, 0, 0, 0.08),
  157. ),
  158. 'light': (
  159. 0px 0px 12px rgba(0, 0, 0, 0.12),
  160. ),
  161. 'lighter': (
  162. 0px 0px 6px rgba(0, 0, 0, 0.12),
  163. ),
  164. 'dark': (
  165. 0px 16px 48px 16px rgba(0, 0, 0, 0.08),
  166. 0px 12px 32px rgba(0, 0, 0, 0.12),
  167. 0px 8px 16px -8px rgba(0, 0, 0, 0.16),
  168. ),
  169. ),
  170. $box-shadow
  171. );
  172. // Typography
  173. $font-family: () !default;
  174. $font-family: map.merge(
  175. (
  176. // default family
  177. '':
  178. "'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif"
  179. ),
  180. $font-family
  181. );
  182. $font-size: () !default;
  183. $font-size: map.merge(
  184. (
  185. 'extra-large': 20px,
  186. 'large': 18px,
  187. 'medium': 16px,
  188. 'base': 14px,
  189. 'small': 13px,
  190. 'extra-small': 12px,
  191. ),
  192. $font-size
  193. );
  194. // zIndex
  195. $z-index: () !default;
  196. $z-index: map.merge(
  197. (
  198. 'normal': 1,
  199. 'top': 1000,
  200. 'popper': 2000,
  201. ),
  202. $z-index
  203. );
  204. // Disable default
  205. $disabled: () !default;
  206. $disabled: map.merge(
  207. (
  208. 'bg-color': getCssVar('fill-color', 'light'),
  209. 'text-color': getCssVar('text-color', 'placeholder'),
  210. 'border-color': getCssVar('border-color', 'light'),
  211. ),
  212. $disabled
  213. );
  214. $common-component-size: () !default;
  215. $common-component-size: map.merge(
  216. (
  217. 'large': 40px,
  218. 'default': 32px,
  219. 'small': 24px,
  220. ),
  221. $common-component-size
  222. );
  223. // overlay
  224. $overlay-color: () !default;
  225. $overlay-color: map.merge(
  226. (
  227. '': rgba(0, 0, 0, 0.8),
  228. 'light': rgba(0, 0, 0, 0.7),
  229. 'lighter': rgba(0, 0, 0, 0.5),
  230. ),
  231. $overlay-color
  232. );
  233. // mask
  234. $mask-color: () !default;
  235. $mask-color: map.merge(
  236. (
  237. '': rgba(255, 255, 255, 0.9),
  238. 'extra-light': rgba(255, 255, 255, 0.3),
  239. ),
  240. $mask-color
  241. );
  242. // Components
  243. // ---
  244. // Checkbox
  245. // css3 var in packages/theme-chalk/src/checkbox.scss
  246. $checkbox: () !default;
  247. $checkbox: map.merge(
  248. (
  249. 'font-size': 14px,
  250. 'font-weight': getCssVar('font-weight-primary'),
  251. 'text-color': getCssVar('text-color-regular'),
  252. 'input-height': 14px,
  253. 'input-width': 14px,
  254. 'border-radius': getCssVar('border-radius-small'),
  255. 'bg-color': getCssVar('fill-color', 'blank'),
  256. 'input-border': getCssVar('border'),
  257. 'disabled-border-color': getCssVar('border-color'),
  258. 'disabled-input-fill': getCssVar('fill-color', 'light'),
  259. 'disabled-icon-color': getCssVar('text-color-placeholder'),
  260. 'disabled-checked-input-fill': getCssVar('border-color-extra-light'),
  261. 'disabled-checked-input-border-color': getCssVar('border-color'),
  262. 'disabled-checked-icon-color': getCssVar('text-color-placeholder'),
  263. 'checked-text-color': getCssVar('color-primary'),
  264. 'checked-input-border-color': getCssVar('color-primary'),
  265. 'checked-bg-color': getCssVar('color-primary'),
  266. 'checked-icon-color': getCssVar('color', 'white'),
  267. 'input-border-color-hover': getCssVar('color-primary'),
  268. ),
  269. $checkbox
  270. );
  271. $checkbox-button: () !default;
  272. $checkbox-button: map.merge(
  273. (
  274. 'checked-bg-color': getCssVar('color-primary'),
  275. 'checked-text-color': getCssVar('color-white'),
  276. 'checked-border-color': getCssVar('color-primary'),
  277. ),
  278. $checkbox-button
  279. );
  280. $checkbox-bordered-padding-left: () !default;
  281. $checkbox-bordered-padding-left: map.merge(
  282. (
  283. 'large': 12px,
  284. 'default': 10px,
  285. 'small': 8px,
  286. ),
  287. $checkbox-bordered-padding-left
  288. );
  289. $checkbox-bordered-padding-right: () !default;
  290. $checkbox-bordered-padding-right: map.merge(
  291. (
  292. 'large': 20px,
  293. 'default': 16px,
  294. 'small': 12px,
  295. ),
  296. $checkbox-bordered-padding-right
  297. );
  298. // Radio
  299. /// fontSize||Font|1
  300. $radio: () !default;
  301. $radio: map.merge(
  302. (
  303. 'font-size': getCssVar('font-size-base'),
  304. 'text-color': getCssVar('text-color-regular'),
  305. 'font-weight': getCssVar('font-weight-primary'),
  306. 'input-height': 14px,
  307. 'input-width': 14px,
  308. 'input-border-radius': getCssVar('border-radius-circle'),
  309. 'input-bg-color': getCssVar('fill-color', 'blank'),
  310. 'input-border': getCssVar('border'),
  311. 'input-border-color': getCssVar('border-color'),
  312. 'input-border-color-hover': getCssVar('color-primary'),
  313. ),
  314. $radio
  315. );
  316. $radio-height: () !default;
  317. $radio-height: map.merge($common-component-size, $radio-height);
  318. $radio-button: () !default;
  319. $radio-button: map.merge(
  320. (
  321. 'checked-bg-color': getCssVar('color-primary'),
  322. 'checked-text-color': getCssVar('color-white'),
  323. 'checked-border-color': getCssVar('color-primary'),
  324. 'disabled-checked-fill': getCssVar('border-color-extra-light'),
  325. ),
  326. $radio-button
  327. );
  328. $radio-disabled: () !default;
  329. $radio-disabled: map.merge(
  330. (
  331. 'input-border-color': getCssVar('disabled-border-color'),
  332. 'input-fill': getCssVar('disabled-bg-color'),
  333. 'icon-color': getCssVar('disabled-bg-color'),
  334. 'checked-input-border-color': getCssVar('disabled-border-color'),
  335. 'checked-input-fill': getCssVar('disabled-bg-color'),
  336. 'checked-icon-color': getCssVar('text-color-placeholder'),
  337. ),
  338. $radio-disabled
  339. );
  340. $radio-checked: () !default;
  341. $radio-checked: map.merge(
  342. (
  343. 'text-color': getCssVar('color-primary'),
  344. 'input-border-color': getCssVar('color-primary'),
  345. 'icon-color': getCssVar('color-primary'),
  346. ),
  347. $radio-checked
  348. );
  349. $radio-bordered-input-height: () !default;
  350. $radio-bordered-input-height: map.merge(
  351. (
  352. 'large': 14px,
  353. 'default': 12px,
  354. 'small': 12px,
  355. ),
  356. $radio-bordered-input-height
  357. );
  358. $radio-bordered-input-width: () !default;
  359. $radio-bordered-input-width: map.merge(
  360. (
  361. 'large': 14px,
  362. 'default': 12px,
  363. 'small': 12px,
  364. ),
  365. $radio-bordered-input-width
  366. );
  367. // Select
  368. $select: () !default;
  369. $select: map.merge(
  370. (
  371. 'border-color-hover': getCssVar('border-color-hover'),
  372. 'disabled-color': getCssVar('disabled-text-color'),
  373. 'disabled-border': getCssVar('disabled-border-color'),
  374. 'font-size': getCssVar('font-size-base'),
  375. 'close-hover-color': getCssVar('text-color-secondary'),
  376. 'input-color': getCssVar('text-color-placeholder'),
  377. 'multiple-input-color': getCssVar('text-color-regular'),
  378. 'input-focus-border-color': getCssVar('color-primary'),
  379. 'input-font-size': 14px,
  380. 'width': 100%,
  381. ),
  382. $select
  383. );
  384. $select-option: () !default;
  385. $select-option: map.merge(
  386. (
  387. 'text-color': getCssVar('text-color-regular'),
  388. 'disabled-color': getCssVar('text-color-placeholder'),
  389. 'height': 34px,
  390. 'hover-background': getCssVar('fill-color', 'light'),
  391. 'selected-text-color': getCssVar('color-primary'),
  392. ),
  393. $select-option
  394. );
  395. $select-group: () !default;
  396. $select-group: map.merge(
  397. (
  398. 'text-color': getCssVar('color-info'),
  399. 'height': 34px,
  400. 'font-size': 12px,
  401. ),
  402. $select-group
  403. );
  404. $select-dropdown: () !default;
  405. $select-dropdown: map.merge(
  406. (
  407. 'bg-color': getCssVar('bg-color', 'overlay'),
  408. 'shadow': getCssVar('box-shadow-light'),
  409. 'empty-color': getCssVar('text-color-secondary'),
  410. 'max-height': 274px,
  411. 'padding': 6px 0,
  412. 'empty-padding': 10px 0,
  413. 'header-padding': 10px,
  414. 'footer-padding': 10px,
  415. 'border': 1px solid getCssVar('border-color-light'),
  416. ),
  417. $select-dropdown
  418. );
  419. $select-wrapper-padding: () !default;
  420. $select-wrapper-padding: map.merge(
  421. (
  422. 'large': 8px 16px,
  423. 'default': 4px 12px,
  424. 'small': 2px 8px,
  425. ),
  426. $select-wrapper-padding
  427. );
  428. $select-near-margin-left: () !default;
  429. $select-near-margin-left: map.merge(
  430. (
  431. 'large': -8px,
  432. 'default': -8px,
  433. 'small': -6px,
  434. ),
  435. $select-near-margin-left
  436. );
  437. $select-item-gap: () !default;
  438. $select-item-gap: map.merge(
  439. (
  440. 'large': 6px,
  441. 'default': 6px,
  442. 'small': 4px,
  443. ),
  444. $select-item-gap
  445. );
  446. // the same height of el-tag
  447. $select-item-height: () !default;
  448. $select-item-height: map.merge(
  449. (
  450. 'large': 24px,
  451. 'default': 24px,
  452. 'small': 20px,
  453. ),
  454. $select-item-height
  455. );
  456. // Alert
  457. // css3 var in packages/theme-chalk/src/alert.scss
  458. $alert: () !default;
  459. $alert: map.merge(
  460. (
  461. 'padding': 8px 16px,
  462. 'border-radius-base': getCssVar('border-radius-base'),
  463. 'title-font-size': 14px,
  464. 'title-with-description-font-size': 16px,
  465. 'description-font-size': 14px,
  466. 'close-font-size': 16px,
  467. 'close-customed-font-size': 14px,
  468. 'icon-size': 16px,
  469. 'icon-large-size': 28px,
  470. ),
  471. $alert
  472. );
  473. // MessageBox
  474. // css3 var in packages/theme-chalk/src/message-box.scss
  475. $messagebox: () !default;
  476. $messagebox: map.merge(
  477. (
  478. 'title-color': getCssVar('text-color-primary'),
  479. 'width': 420px,
  480. 'border-radius': 4px,
  481. 'box-shadow': getCssVar('box-shadow'),
  482. 'font-size': getCssVar('font-size-large'),
  483. 'content-font-size': getCssVar('font-size-base'),
  484. 'content-color': getCssVar('text-color-regular'),
  485. 'error-font-size': 12px,
  486. 'padding-primary': 12px,
  487. 'font-line-height': getCssVar('font-line-height-primary'),
  488. ),
  489. $messagebox
  490. );
  491. // Message
  492. // css3 var in packages/theme-chalk/src/message.scss
  493. $message: () !default;
  494. $message: map.merge(
  495. (
  496. 'bg-color': getCssVar('color', 'info', 'light-9'),
  497. 'border-color': getCssVar('border-color-lighter'),
  498. 'padding': 11px 15px,
  499. 'close-size': 16px,
  500. 'close-icon-color': getCssVar('text-color-placeholder'),
  501. 'close-hover-color': getCssVar('text-color-secondary'),
  502. ),
  503. $message
  504. );
  505. // Notification
  506. // css3 var in packages/theme-chalk/src/notification.scss
  507. $notification: () !default;
  508. $notification: map.merge(
  509. (
  510. 'width': 330px,
  511. 'padding': 14px 26px 14px 13px,
  512. 'radius': 8px,
  513. 'shadow': getCssVar('box-shadow-light'),
  514. 'border-color': getCssVar('border-color-lighter'),
  515. 'icon-size': 24px,
  516. 'close-font-size':
  517. var(
  518. #{getCssVarName('message-close-size')},
  519. map.get($message, 'close-size')
  520. ),
  521. 'group-margin-left': 13px,
  522. 'group-margin-right': 8px,
  523. 'content-font-size': getCssVar('font-size-base'),
  524. 'content-color': getCssVar('text-color-regular'),
  525. 'title-font-size': 16px,
  526. 'title-color': getCssVar('text-color-primary'),
  527. 'close-color': getCssVar('text-color-secondary'),
  528. 'close-hover-color': getCssVar('text-color-regular'),
  529. ),
  530. $notification
  531. );
  532. // Input
  533. // css3 var in packages/theme-chalk/src/input.scss
  534. $input: () !default;
  535. $input: map.merge(
  536. (
  537. 'text-color': getCssVar('text-color-regular'),
  538. 'border': getCssVar('border'),
  539. 'hover-border': getCssVar('border-color-hover'),
  540. 'focus-border': getCssVar('color-primary'),
  541. 'transparent-border': 0 0 0 1px transparent inset,
  542. 'border-color': getCssVar('border-color'),
  543. 'border-radius': getCssVar('border-radius-base'),
  544. 'bg-color': getCssVar('fill-color', 'blank'),
  545. 'icon-color': getCssVar('text-color-placeholder'),
  546. 'placeholder-color': getCssVar('text-color-placeholder'),
  547. 'hover-border-color': getCssVar('border-color-hover'),
  548. 'clear-hover-color': getCssVar('text-color-secondary'),
  549. 'focus-border-color': getCssVar('color-primary'),
  550. 'width': 100%,
  551. ),
  552. $input
  553. );
  554. $input-disabled: () !default;
  555. $input-disabled: map.merge(
  556. (
  557. 'fill': getCssVar('disabled-bg-color'),
  558. 'border': getCssVar('disabled-border-color'),
  559. 'text-color': getCssVar('disabled-text-color'),
  560. 'placeholder-color': getCssVar('text-color-placeholder'),
  561. ),
  562. $input-disabled
  563. );
  564. $input-font-size: () !default;
  565. $input-font-size: map.merge(
  566. (
  567. 'large': 14px,
  568. 'default': 14px,
  569. 'small': 12px,
  570. ),
  571. $input-font-size
  572. );
  573. $input-height: () !default;
  574. $input-height: map.merge($common-component-size, $input-height);
  575. $input-line-height: () !default;
  576. $input-line-height: map.merge($common-component-size, $input-line-height);
  577. $input-number-width: () !default;
  578. $input-number-width: map.merge(
  579. (
  580. 'large': 180px,
  581. 'default': 150px,
  582. 'small': 120px,
  583. ),
  584. $input-number-width
  585. );
  586. $input-padding-horizontal: () !default;
  587. $input-padding-horizontal: map.merge(
  588. (
  589. 'large': 16px,
  590. 'default': 12px,
  591. 'small': 8px,
  592. ),
  593. $input-padding-horizontal
  594. );
  595. // Cascader
  596. // css3 var in packages/theme-chalk/src/cascader.scss
  597. $cascader: () !default;
  598. $cascader: map.merge(
  599. (
  600. 'menu-text-color': getCssVar('text-color-regular'),
  601. 'menu-selected-text-color': getCssVar('color-primary'),
  602. 'menu-fill': getCssVar('bg-color', 'overlay'),
  603. 'menu-font-size': getCssVar('font-size-base'),
  604. 'menu-radius': getCssVar('border-radius-base'),
  605. 'menu-border': solid 1px getCssVar('border-color-light'),
  606. 'menu-shadow': getCssVar('box-shadow-light'),
  607. 'node-background-hover': getCssVar('fill-color', 'light'),
  608. 'node-color-disabled': getCssVar('text-color-placeholder'),
  609. 'color-empty': getCssVar('text-color-placeholder'),
  610. 'tag-background': getCssVar('fill-color'),
  611. ),
  612. $cascader
  613. );
  614. $cascader-item-gap: () !default;
  615. $cascader-item-gap: map.merge(
  616. (
  617. 'large': 6px,
  618. 'default': 6px,
  619. 'small': 4px,
  620. ),
  621. $cascader-item-gap
  622. );
  623. $cascader-wrapper-padding: () !default;
  624. $cascader-wrapper-padding: map.merge(
  625. (
  626. 'large': 8px,
  627. 'default': 4px,
  628. 'small': 2px,
  629. ),
  630. $cascader-wrapper-padding
  631. );
  632. $cascader-item-height: () !default;
  633. $cascader-item-height: map.merge(
  634. (
  635. 'large': 24px,
  636. 'default': 24px,
  637. 'small': 20px,
  638. ),
  639. $cascader-item-height
  640. );
  641. $cascader-search-input-margin-left: () !default;
  642. $cascader-search-input-margin-left: map.merge(
  643. (
  644. 'large': 7px,
  645. 'default': 7px,
  646. 'small': 5px,
  647. ),
  648. $cascader-search-input-margin-left
  649. );
  650. $cascader-dropdown: () !default;
  651. $cascader-dropdown: map.merge(
  652. (
  653. 'header-padding': 10px,
  654. 'footer-padding': 10px,
  655. 'border': 1px solid getCssVar('border-color-light'),
  656. ),
  657. $cascader-dropdown
  658. );
  659. //statistic
  660. // css3 var in packages/theme-chalk/src/statistic.scss
  661. $statistic: () !default;
  662. $statistic: map.merge(
  663. (
  664. 'title-font-weight': 400,
  665. 'title-font-size': getCssVar('font-size', 'extra-small'),
  666. 'title-color': getCssVar('text-color', 'regular'),
  667. 'content-font-weight': 400,
  668. 'content-font-size': getCssVar('font-size', 'extra-large'),
  669. 'content-color': getCssVar('text-color', 'primary'),
  670. ),
  671. $statistic
  672. );
  673. // Button
  674. // css3 var in packages/theme-chalk/src/button.scss
  675. $button: () !default;
  676. $button: map.merge(
  677. (
  678. 'font-weight': getCssVar('font-weight-primary'),
  679. 'border-color': getCssVar('border-color'),
  680. 'bg-color': getCssVar('fill-color', 'blank'),
  681. 'text-color': getCssVar('text-color', 'regular'),
  682. 'disabled-text-color': getCssVar('disabled-text-color'),
  683. 'disabled-bg-color': getCssVar('fill-color', 'blank'),
  684. 'disabled-border-color': getCssVar('border-color-light'),
  685. 'divide-border-color': rgba($color-white, 0.5),
  686. 'hover-text-color': getCssVar('color-primary'),
  687. 'hover-bg-color': getCssVar('color-primary', 'light-9'),
  688. 'hover-border-color': getCssVar('color-primary-light-7'),
  689. 'active-text-color': getCssVar('button-hover-text-color'),
  690. 'active-border-color': getCssVar('color-primary'),
  691. 'active-bg-color': getCssVar('button', 'hover-bg-color'),
  692. 'outline-color': getCssVar('color-primary', 'light-5'),
  693. 'hover-link-text-color': getCssVar('text-color', 'secondary'),
  694. 'active-color': getCssVar('text-color', 'primary'),
  695. ),
  696. $button
  697. );
  698. $button-border-width: $border-width !default;
  699. // need mix, so do not use css var
  700. $button-hover-tint-percent: 20%;
  701. $button-active-shade-percent: 10%;
  702. $button-border-color: () !default;
  703. $button-bg-color: () !default;
  704. $button-text-color: () !default;
  705. @each $type in $types {
  706. $button-border-color: map.merge(
  707. (
  708. $type: map.get($colors, $type, 'base'),
  709. ),
  710. $button-border-color
  711. ) !global;
  712. $button-bg-color: map.merge(
  713. (
  714. $type: map.get($colors, $type, 'base'),
  715. ),
  716. $button-bg-color
  717. ) !global;
  718. }
  719. $button-font-size: () !default;
  720. $button-font-size: map.merge(
  721. (
  722. 'large': getCssVar('font-size', 'base'),
  723. 'default': getCssVar('font-size', 'base'),
  724. 'small': 12px,
  725. ),
  726. $button-font-size
  727. );
  728. $button-border-radius: () !default;
  729. $button-border-radius: map.merge(
  730. (
  731. 'large': getCssVar('border-radius', 'base'),
  732. 'default': getCssVar('border-radius', 'base'),
  733. 'small': calc(#{getCssVar('border-radius', 'base')} - 1px),
  734. ),
  735. $button-border-radius
  736. );
  737. $button-padding-vertical: () !default;
  738. $button-padding-vertical: map.merge(
  739. (
  740. 'large': 13px,
  741. 'default': 9px,
  742. 'small': 6px,
  743. ),
  744. $button-padding-vertical
  745. );
  746. $button-padding-horizontal: () !default;
  747. $button-padding-horizontal: map.merge(
  748. (
  749. 'large': 20px,
  750. 'default': 16px,
  751. 'small': 12px,
  752. ),
  753. $button-padding-horizontal
  754. );
  755. // Switch
  756. // css3 var in packages/theme-chalk/src/switch.scss
  757. $switch: () !default;
  758. $switch: map.merge(
  759. (
  760. 'on-color': getCssVar('color-primary'),
  761. 'off-color': getCssVar('border-color'),
  762. ),
  763. $switch
  764. );
  765. // Dialog
  766. // css3 var in packages/theme-chalk/src/dialog.scss
  767. $dialog: () !default;
  768. $dialog: map.merge(
  769. (
  770. 'width': 50%,
  771. 'margin-top': 15vh,
  772. 'bg-color': getCssVar('bg-color'),
  773. 'box-shadow': getCssVar('box-shadow'),
  774. 'title-font-size': getCssVar('font-size-large'),
  775. 'content-font-size': 14px,
  776. 'font-line-height': getCssVar('font-line-height-primary'),
  777. 'padding-primary': 16px,
  778. 'border-radius': getCssVar('border-radius-base'),
  779. ),
  780. $dialog
  781. );
  782. // Tour
  783. // css3 var in packages/theme-chalk/src/tour.scss
  784. $tour: () !default;
  785. $tour: map.merge(
  786. (
  787. 'width': 520px,
  788. 'padding-primary': 12px,
  789. 'font-line-height': getCssVar('font-line-height-primary'),
  790. 'title-font-size': 16px,
  791. 'title-text-color': getCssVar('text-color-primary'),
  792. 'title-font-weight': 400,
  793. 'close-color': getCssVar('color-info'),
  794. 'font-size': 14px,
  795. 'color': getCssVar('text-color-primary'),
  796. 'bg-color': getCssVar('bg-color'),
  797. 'border-radius': 4px,
  798. ),
  799. $tour
  800. );
  801. // Anchor
  802. // css3 var in packages/theme-chalk/src/anchor.scss
  803. $anchor: () !default;
  804. $anchor: map.merge(
  805. (
  806. 'bg-color': getCssVar('bg-color'),
  807. 'padding-indent': 14px,
  808. 'line-height': 22px,
  809. 'font-size': 12px,
  810. 'color': getCssVar('text-color-secondary'),
  811. 'active-color': getCssVar('color-primary'),
  812. 'marker-bg-color': getCssVar('color-primary'),
  813. ),
  814. $anchor
  815. );
  816. // Segmented
  817. // css3 var in packages/theme-chalk/src/segmented.scss
  818. $segmented: () !default;
  819. $segmented: map.merge(
  820. (
  821. 'color': getCssVar('text-color', 'regular'),
  822. 'bg-color': getCssVar('fill-color', 'light'),
  823. 'padding': 2px,
  824. 'item-selected-color': getCssVar('color-white'),
  825. 'item-selected-bg-color': getCssVar('color-primary'),
  826. 'item-selected-disabled-bg-color': getCssVar('color-primary', 'light-5'),
  827. 'item-hover-color': getCssVar('text-color', 'primary'),
  828. 'item-hover-bg-color': getCssVar('fill-color', 'dark'),
  829. 'item-active-bg-color': getCssVar('fill-color', 'darker'),
  830. 'item-disabled-color': getCssVar('text-color', 'placeholder'),
  831. ),
  832. $segmented
  833. );
  834. // Mention
  835. // css3 var in packages/theme-chalk/src/mention.scss
  836. $mention: () !default;
  837. $mention: map.merge(
  838. (
  839. 'font-size': getCssVar('font-size-base'),
  840. 'bg-color': getCssVar('bg-color', 'overlay'),
  841. 'shadow': getCssVar('box-shadow-light'),
  842. 'border': 1px solid getCssVar('border-color-light'),
  843. 'option-color': getCssVar('text-color-regular'),
  844. 'option-height': 34px,
  845. 'option-min-width': 100px,
  846. 'option-hover-background': getCssVar('fill-color', 'light'),
  847. 'option-selected-color': getCssVar('color-primary'),
  848. 'option-disabled-color': getCssVar('text-color-placeholder'),
  849. 'option-loading-color': getCssVar('text-color-secondary'),
  850. 'option-loading-padding': 10px 0,
  851. 'max-height': 174px,
  852. 'padding': 6px 0,
  853. 'header-padding': 10px,
  854. 'footer-padding': 10px,
  855. ),
  856. $mention
  857. );
  858. // InputTag
  859. // css3 var in packages/theme-chalk/src/input-tag.scss
  860. $input-tag: () !default;
  861. $input-tag: map.merge(
  862. (
  863. 'border-color-hover': getCssVar('border-color-hover'),
  864. 'placeholder-color': getCssVar('text-color-placeholder'),
  865. 'disabled-color': getCssVar('disabled-text-color'),
  866. 'disabled-border': getCssVar('disabled-border-color'),
  867. 'font-size': getCssVar('font-size-base'),
  868. 'close-hover-color': getCssVar('text-color-secondary'),
  869. 'text-color': getCssVar('text-color-regular'),
  870. 'input-focus-border-color': getCssVar('color-primary'),
  871. 'width': 100%,
  872. ),
  873. $input-tag
  874. );
  875. $input-tag-padding: () !default;
  876. $input-tag-padding: map.merge(
  877. (
  878. 'large': 8px,
  879. 'default': 4px,
  880. 'small': 2px,
  881. ),
  882. $input-tag-padding
  883. );
  884. $input-tag-inner-padding: () !default;
  885. $input-tag-inner-padding: map.merge(
  886. (
  887. 'large': 8px,
  888. 'default': 8px,
  889. 'small': 6px,
  890. ),
  891. $input-tag-inner-padding
  892. );
  893. $input-tag-gap: () !default;
  894. $input-tag-gap: map.merge(
  895. (
  896. 'large': 6px,
  897. 'default': 6px,
  898. 'small': 4px,
  899. ),
  900. $input-tag-gap
  901. );
  902. // Table
  903. // css3 var in packages/theme-chalk/src/table.scss
  904. $table: () !default;
  905. $table: map.merge(
  906. (
  907. 'border-color': getCssVar('border-color-lighter'),
  908. 'border': 1px solid getCssVar('table-border-color'),
  909. 'text-color': getCssVar('text-color-regular'),
  910. 'header-text-color': getCssVar('text-color-secondary'),
  911. 'row-hover-bg-color': getCssVar('fill-color', 'light'),
  912. 'current-row-bg-color': getCssVar('color-primary-light-9'),
  913. 'header-bg-color': getCssVar('bg-color'),
  914. 'fixed-box-shadow': getCssVar('box-shadow', 'light'),
  915. 'bg-color': getCssVar('fill-color', 'blank'),
  916. 'tr-bg-color': getCssVar('bg-color'),
  917. 'expanded-cell-bg-color': getCssVar('fill-color', 'blank'),
  918. 'fixed-left-column': inset 10px 0 10px -10px rgb(0 0 0 / 15%),
  919. 'fixed-right-column': inset -10px 0 10px -10px rgb(0 0 0 / 15%),
  920. 'index': getCssVar('index-normal'),
  921. ),
  922. $table
  923. );
  924. $table-font-size: () !default;
  925. $table-font-size: map.merge(
  926. (
  927. 'large': getCssVar('font-size', 'base'),
  928. 'default': getCssVar('font-size', 'base'),
  929. 'small': getCssVar('font-size', 'extra-small'),
  930. ),
  931. $table-font-size
  932. );
  933. $table-padding: () !default;
  934. $table-padding: map.merge(
  935. (
  936. 'large': 12px 0,
  937. 'default': 8px 0,
  938. 'small': 4px 0,
  939. ),
  940. $table-padding
  941. );
  942. $table-cell-padding: () !default;
  943. $table-cell-padding: map.merge(
  944. (
  945. 'large': 0 16px,
  946. 'default': 0 12px,
  947. 'small': 0 8px,
  948. ),
  949. $table-cell-padding
  950. );
  951. // Pagination
  952. // css3 var in packages/theme-chalk/src/pagination.scss
  953. $pagination: () !default;
  954. $pagination: map.merge(
  955. (
  956. 'font-size': 14px,
  957. 'bg-color': getCssVar('fill-color', 'blank'),
  958. 'text-color': getCssVar('text-color-primary'),
  959. 'border-radius': 2px,
  960. 'button-color': getCssVar('text-color-primary'),
  961. 'button-width': 32px,
  962. 'button-height': 32px,
  963. 'button-disabled-color': getCssVar('text-color-placeholder'),
  964. 'button-disabled-bg-color': getCssVar('fill-color', 'blank'),
  965. 'button-bg-color': getCssVar('fill-color'),
  966. 'hover-color': getCssVar('color-primary'),
  967. 'font-size-small': 12px,
  968. 'button-width-small': 24px,
  969. 'button-height-small': 24px,
  970. 'button-width-large': 40px,
  971. 'button-height-large': 40px,
  972. 'item-gap': 16px,
  973. ),
  974. $pagination
  975. );
  976. // Popup
  977. // css3 var in packages/theme-chalk/src/popup.scss
  978. $popup: () !default;
  979. $popup: map.merge(
  980. (
  981. 'modal-bg-color': getCssVar('color-black'),
  982. 'modal-opacity': 0.5,
  983. ),
  984. $popup
  985. );
  986. // Popover
  987. // css3 var in packages/theme-chalk/src/popover.scss
  988. $popover: () !default;
  989. $popover: map.merge(
  990. (
  991. 'bg-color': getCssVar('bg-color', 'overlay'),
  992. 'font-size': getCssVar('font-size-base'),
  993. 'border-color': getCssVar('border-color-lighter'),
  994. 'padding': 12px,
  995. 'padding-large': 18px 20px,
  996. 'title-font-size': 16px,
  997. 'title-text-color': getCssVar('text-color-primary'),
  998. 'border-radius': 4px,
  999. ),
  1000. $popover
  1001. );
  1002. // popper
  1003. // Pay attention to the difference between 'popper' and 'popover'
  1004. $popper: () !default;
  1005. $popper: map.merge(
  1006. (
  1007. 'border-radius': var(#{getCssVarName('popover-border-radius')}, 4px),
  1008. ),
  1009. $popper
  1010. );
  1011. // skeleton
  1012. $skeleton: () !default;
  1013. $skeleton: map.merge(
  1014. (
  1015. 'color': getCssVar('fill-color'),
  1016. 'to-color': getCssVar('fill-color', 'darker'),
  1017. ),
  1018. $skeleton
  1019. );
  1020. // Tag
  1021. // css3 var in packages/theme-chalk/src/tag.scss
  1022. $tag: () !default;
  1023. $tag: map.merge(
  1024. (
  1025. 'font-size': 12px,
  1026. 'border-radius': 4px,
  1027. 'border-radius-rounded': 9999px,
  1028. ),
  1029. $tag
  1030. );
  1031. $tag-height: () !default;
  1032. $tag-height: map.merge(
  1033. (
  1034. 'large': 32px,
  1035. 'default': 24px,
  1036. 'small': 20px,
  1037. ),
  1038. $tag-height
  1039. );
  1040. $tag-padding: () !default;
  1041. $tag-padding: map.merge(
  1042. (
  1043. 'large': 12px,
  1044. 'default': 10px,
  1045. 'small': 8px,
  1046. ),
  1047. $tag-padding
  1048. );
  1049. $tag-icon-size: () !default;
  1050. $tag-icon-size: map.merge(
  1051. (
  1052. 'large': 16px,
  1053. 'default': 14px,
  1054. 'small': 12px,
  1055. ),
  1056. $tag-icon-size
  1057. );
  1058. // Text
  1059. // css3 var in packages/theme-chalk/src/text.scss
  1060. $text: () !default;
  1061. $text: map.merge(
  1062. (
  1063. 'font-size': getCssVar('font-size', 'base'),
  1064. 'color': getCssVar('text-color', 'regular'),
  1065. ),
  1066. $text
  1067. );
  1068. $text-font-size: () !default;
  1069. $text-font-size: map.merge(
  1070. (
  1071. 'large': getCssVar('font-size', 'medium'),
  1072. 'default': getCssVar('font-size', 'base'),
  1073. 'small': getCssVar('font-size', 'extra-small'),
  1074. ),
  1075. $text-font-size
  1076. );
  1077. // Tree
  1078. // css3 var in packages/theme-chalk/src/tree.scss
  1079. $tree: () !default;
  1080. $tree: map.merge(
  1081. (
  1082. 'node-content-height': 26px,
  1083. 'node-hover-bg-color': getCssVar('fill-color', 'light'),
  1084. 'text-color': getCssVar('text-color-regular'),
  1085. 'expand-icon-color': getCssVar('text-color-placeholder'),
  1086. ),
  1087. $tree
  1088. );
  1089. // Dropdown
  1090. $dropdown: () !default;
  1091. $dropdown: map.merge(
  1092. (
  1093. 'menu-box-shadow': getCssVar('box-shadow-light'),
  1094. 'menuItem-hover-fill': getCssVar('color-primary-light-9'),
  1095. 'menuItem-hover-color': getCssVar('color-primary'),
  1096. 'menu-index': 10,
  1097. ),
  1098. $dropdown
  1099. );
  1100. // drawer
  1101. $drawer: () !default;
  1102. $drawer: map.merge(
  1103. (
  1104. 'bg-color':
  1105. var(#{getCssVarName('dialog', 'bg-color')}, #{getCssVar('bg-color')}),
  1106. 'padding-primary': var(#{getCssVarName('dialog', 'padding-primary')}, 20px),
  1107. 'dragger-size': 8px,
  1108. ),
  1109. $drawer
  1110. );
  1111. // Badge
  1112. // css3 var in packages/theme-chalk/src/badge.scss
  1113. $badge: () !default;
  1114. $badge: map.merge(
  1115. (
  1116. 'bg-color': getCssVar('color-danger'),
  1117. 'radius': 10px,
  1118. 'font-size': 12px,
  1119. 'padding': 6px,
  1120. 'size': 18px,
  1121. ),
  1122. $badge
  1123. );
  1124. // Card
  1125. $card: () !default;
  1126. $card: map.merge(
  1127. (
  1128. 'border-color': getCssVar('border-color', 'light'),
  1129. 'border-radius': 4px,
  1130. 'padding': 20px,
  1131. 'bg-color': getCssVar('fill-color', 'blank'),
  1132. ),
  1133. $card
  1134. );
  1135. // Slider
  1136. // css3 var in packages/theme-chalk/src/slider.scss
  1137. $slider: () !default;
  1138. $slider: map.merge(
  1139. (
  1140. 'main-bg-color': getCssVar('color-primary'),
  1141. 'runway-bg-color': getCssVar('border-color-light'),
  1142. 'stop-bg-color': getCssVar('color-white'),
  1143. 'disabled-color': getCssVar('text-color-placeholder'),
  1144. 'border-radius': 3px,
  1145. 'height': 6px,
  1146. 'button-size': 20px,
  1147. 'button-wrapper-size': 36px,
  1148. 'button-wrapper-offset': -15px,
  1149. ),
  1150. $slider
  1151. );
  1152. // Menu
  1153. // css3 var in packages/theme-chalk/src/menu.scss
  1154. $menu: () !default;
  1155. $menu: map.merge(
  1156. (
  1157. 'active-color': getCssVar('color-primary'),
  1158. 'text-color': getCssVar('text-color-primary'),
  1159. 'hover-text-color': getCssVar('color-primary'),
  1160. 'bg-color': getCssVar('fill-color', 'blank'),
  1161. 'hover-bg-color': getCssVar('color-primary-light-9'),
  1162. 'item-height': 56px,
  1163. 'sub-item-height': calc(#{getCssVar('menu-item-height')} - 6px),
  1164. 'horizontal-height': 60px,
  1165. 'horizontal-sub-item-height': 36px,
  1166. 'item-font-size': getCssVar('font-size-base'),
  1167. 'item-hover-fill': getCssVar('color-primary-light-9'),
  1168. 'border-color': getCssVar('border-color'),
  1169. 'base-level-padding': 20px,
  1170. 'level-padding': 20px,
  1171. 'icon-width': 24px,
  1172. ),
  1173. $menu
  1174. );
  1175. // Rate
  1176. $rate: () !default;
  1177. $rate: map.merge(
  1178. (
  1179. 'height': 20px,
  1180. 'font-size': getCssVar('font-size-base'),
  1181. 'icon-size': 18px,
  1182. 'icon-margin': 6px,
  1183. // seems not be used, to be removed
  1184. // 'icon-color': getCssVar('text-color-placeholder),
  1185. 'void-color': getCssVar('border-color', 'darker'),
  1186. 'fill-color': #f7ba2a,
  1187. 'disabled-void-color': getCssVar('fill-color'),
  1188. 'text-color': getCssVar('text-color', 'primary'),
  1189. 'outline-color': getCssVar('color-primary', 'light-5'),
  1190. ),
  1191. $rate
  1192. );
  1193. // DatePicker
  1194. // css3 var packages/theme-chalk/src/date-picker/var.scss
  1195. $datepicker: () !default;
  1196. $datepicker: map.merge(
  1197. (
  1198. 'text-color': getCssVar('text-color-regular'),
  1199. 'off-text-color': getCssVar('text-color-placeholder'),
  1200. 'header-text-color': getCssVar('text-color-regular'),
  1201. 'icon-color': getCssVar('text-color-primary'),
  1202. 'border-color': getCssVar('disabled-border-color'),
  1203. 'inner-border-color': getCssVar('border-color-light'),
  1204. 'inrange-bg-color': getCssVar('border-color-extra-light'),
  1205. 'inrange-hover-bg-color': getCssVar('border-color-extra-light'),
  1206. 'active-color': getCssVar('color-primary'),
  1207. 'hover-text-color': getCssVar('color-primary'),
  1208. ),
  1209. $datepicker
  1210. );
  1211. $date-editor: () !default;
  1212. $date-editor: map.merge(
  1213. (
  1214. 'width': 220px,
  1215. 'monthrange-width': 300px,
  1216. 'daterange-width': 350px,
  1217. 'datetimerange-width': 400px,
  1218. ),
  1219. $date-editor
  1220. );
  1221. // Loading
  1222. // css3 var in packages/theme-chalk/src/loading.scss
  1223. $loading: () !default;
  1224. $loading: map.merge(
  1225. (
  1226. 'spinner-size': 42px,
  1227. 'fullscreen-spinner-size': 50px,
  1228. ),
  1229. $loading
  1230. );
  1231. // Scrollbar
  1232. // css3 var in packages/theme-chalk/src/scrollbar.scss
  1233. $scrollbar: () !default;
  1234. $scrollbar: map.merge(
  1235. (
  1236. 'opacity': 0.3,
  1237. 'bg-color': getCssVar('text-color-secondary'),
  1238. 'hover-opacity': 0.5,
  1239. 'hover-bg-color': getCssVar('text-color-secondary'),
  1240. ),
  1241. $scrollbar
  1242. );
  1243. // Carousel
  1244. // css3 var in packages/theme-chalk/src/carousel.scss
  1245. $carousel: () !default;
  1246. $carousel: map.merge(
  1247. (
  1248. 'arrow-font-size': 12px,
  1249. 'arrow-size': 36px,
  1250. 'arrow-background': rgba(31, 45, 61, 0.11),
  1251. 'arrow-hover-background': rgba(31, 45, 61, 0.23),
  1252. 'indicator-width': 30px,
  1253. 'indicator-height': 2px,
  1254. 'indicator-padding-horizontal': 4px,
  1255. 'indicator-padding-vertical': 12px,
  1256. 'indicator-out-color': getCssVar('border-color-hover'),
  1257. ),
  1258. $carousel
  1259. );
  1260. // Collapse
  1261. // css3 var in packages/theme-chalk/src/collapse.scss
  1262. $collapse: () !default;
  1263. $collapse: map.merge(
  1264. (
  1265. 'border-color': getCssVar('border-color-lighter'),
  1266. 'header-height': 48px,
  1267. 'header-bg-color': getCssVar('fill-color', 'blank'),
  1268. 'header-text-color': getCssVar('text-color-primary'),
  1269. 'header-font-size': 13px,
  1270. 'content-bg-color': getCssVar('fill-color', 'blank'),
  1271. 'content-font-size': 13px,
  1272. 'content-text-color': getCssVar('text-color-primary'),
  1273. ),
  1274. $collapse
  1275. );
  1276. // Transfer
  1277. // css3 var in packages/theme-chalk/src/transfer.scss
  1278. $transfer: () !default;
  1279. $transfer: map.merge(
  1280. (
  1281. 'border-color': getCssVar('border-color-lighter'),
  1282. 'border-radius': getCssVar('border-radius-base'),
  1283. 'panel-width': 200px,
  1284. 'panel-header-height': 40px,
  1285. 'panel-header-bg-color': getCssVar('fill-color', 'light'),
  1286. 'panel-footer-height': 40px,
  1287. 'panel-body-height': 278px,
  1288. 'item-height': 30px,
  1289. 'filter-height': 32px,
  1290. ),
  1291. $transfer
  1292. );
  1293. // Timeline
  1294. // css3 var in packages/theme-chalk/src/timeline-item.scss
  1295. $timeline: () !default;
  1296. $timeline: map.merge(
  1297. (
  1298. 'node-size-normal': 12px,
  1299. 'node-size-large': 14px,
  1300. 'node-color': getCssVar('border-color-light'),
  1301. ),
  1302. $timeline
  1303. );
  1304. // Tabs
  1305. // css3 var in packages/theme-chalk/src/tabs.scss
  1306. $tabs: () !default;
  1307. $tabs: map.merge(
  1308. (
  1309. 'header-height': 40px,
  1310. ),
  1311. $tabs
  1312. );
  1313. // Backtop
  1314. // css3 var in packages/theme-chalk/src/backtop.scss
  1315. $backtop: () !default;
  1316. $backtop: map.merge(
  1317. (
  1318. 'bg-color': getCssVar('bg-color', 'overlay'),
  1319. 'text-color': getCssVar('color-primary'),
  1320. 'hover-bg-color': getCssVar('border-color-extra-light'),
  1321. ),
  1322. $backtop
  1323. );
  1324. // Link
  1325. // css3 var in packages/theme-chalk/src/link.scss
  1326. $link: () !default;
  1327. $link: map.merge(
  1328. (
  1329. 'font-size': getCssVar('font-size-base'),
  1330. 'font-weight': getCssVar('font-weight-primary'),
  1331. 'text-color': getCssVar('text-color-regular'),
  1332. 'hover-text-color': getCssVar('color-primary'),
  1333. 'disabled-text-color': getCssVar('text-color-placeholder'),
  1334. ),
  1335. $link
  1336. );
  1337. $link-text-color: () !default;
  1338. @each $type in $types {
  1339. $link-text-color: map.merge(
  1340. $link-text-color,
  1341. (
  1342. $type: map.get($colors, $type, 'base'),
  1343. )
  1344. ) !global;
  1345. }
  1346. // Calendar
  1347. // css3 var in packages/theme-chalk/src/calendar.scss
  1348. $calendar: () !default;
  1349. $calendar: map.merge(
  1350. (
  1351. 'border':
  1352. var(
  1353. #{getCssVarName('table-border')},
  1354. 1px solid #{getCssVar('border-color-lighter')}
  1355. ),
  1356. 'header-border-bottom': getCssVar('calendar-border'),
  1357. 'selected-bg-color': getCssVar('color', 'primary', 'light-9'),
  1358. 'cell-width': 85px,
  1359. ),
  1360. $calendar
  1361. );
  1362. // Form
  1363. // css3 var in packages/theme-chalk/src/form.scss
  1364. $form: () !default;
  1365. $form: map.merge(
  1366. (
  1367. 'label-font-size': getCssVar('font-size-base'),
  1368. 'inline-content-width': 220px,
  1369. ),
  1370. $form
  1371. );
  1372. // Avatar
  1373. // css3 var in packages/theme-chalk/src/avatar.scss
  1374. $avatar: () !default;
  1375. $avatar: map.merge(
  1376. (
  1377. 'text-color': getCssVar('color-white'),
  1378. 'bg-color': getCssVar('text-color', 'disabled'),
  1379. 'text-size': 14px,
  1380. 'icon-size': 18px,
  1381. 'border-radius': getCssVar('border-radius-base'),
  1382. ),
  1383. $avatar
  1384. );
  1385. $avatar-size: () !default;
  1386. $avatar-size: map.merge(
  1387. (
  1388. 'large': 56px,
  1389. 'default': 40px,
  1390. 'small': 24px,
  1391. ),
  1392. $avatar-size
  1393. );
  1394. // Empty
  1395. // css3 var in packages/theme-chalk/src/empty.scss
  1396. $empty: () !default;
  1397. $empty: map.merge(
  1398. (
  1399. 'padding': 40px 0,
  1400. 'image-width': 160px,
  1401. 'description-margin-top': 20px,
  1402. 'bottom-margin-top': 20px,
  1403. 'fill-color-0': getCssVar('color-white'),
  1404. 'fill-color-1': #fcfcfd,
  1405. 'fill-color-2': #f8f9fb,
  1406. 'fill-color-3': #f7f8fc,
  1407. 'fill-color-4': #eeeff3,
  1408. 'fill-color-5': #edeef2,
  1409. 'fill-color-6': #e9ebef,
  1410. 'fill-color-7': #e5e7e9,
  1411. 'fill-color-8': #e0e3e9,
  1412. 'fill-color-9': #d5d7de,
  1413. ),
  1414. $empty
  1415. );
  1416. // Descriptions
  1417. // css3 var in packages/theme-chalk/src/descriptions.scss
  1418. $descriptions: () !default;
  1419. $descriptions: map.merge(
  1420. (
  1421. 'table-border': 1px solid getCssVar('border-color-lighter'),
  1422. 'item-bordered-label-background': getCssVar('fill-color', 'light'),
  1423. ),
  1424. $descriptions
  1425. );
  1426. // Result
  1427. // css3 var in packages/theme-chalk/src/result.scss
  1428. $result: () !default;
  1429. $result: map.merge(
  1430. (
  1431. 'padding': 40px 30px,
  1432. 'icon-font-size': 64px,
  1433. 'title-font-size': 20px,
  1434. 'title-margin-top': 20px,
  1435. 'subtitle-margin-top': 10px,
  1436. 'extra-margin-top': 30px,
  1437. ),
  1438. $result
  1439. );
  1440. // Upload
  1441. // css3 var in packages/theme-chalk/src/upload.scss
  1442. $upload: () !default;
  1443. $upload: map.merge(
  1444. (
  1445. 'dragger-padding-horizontal': 40px,
  1446. 'dragger-padding-vertical': 10px,
  1447. ),
  1448. $upload
  1449. );
  1450. // transition
  1451. $transition: () !default;
  1452. $transition: map.merge(
  1453. (
  1454. 'all': all getCssVar('transition-duration')
  1455. getCssVar('transition-function-ease-in-out-bezier'),
  1456. 'fade': opacity getCssVar('transition-duration')
  1457. getCssVar('transition-function-fast-bezier'),
  1458. 'md-fade': (
  1459. transform getCssVar('transition-duration')
  1460. getCssVar('transition-function-fast-bezier'),
  1461. opacity getCssVar('transition-duration')
  1462. getCssVar('transition-function-fast-bezier'),
  1463. ),
  1464. 'fade-linear': opacity getCssVar('transition-duration-fast') linear,
  1465. 'border': border-color getCssVar('transition-duration-fast')
  1466. getCssVar('transition-function-ease-in-out-bezier'),
  1467. 'box-shadow': box-shadow getCssVar('transition-duration-fast')
  1468. getCssVar('transition-function-ease-in-out-bezier'),
  1469. 'color': color getCssVar('transition-duration-fast')
  1470. getCssVar('transition-function-ease-in-out-bezier'),
  1471. ),
  1472. $transition
  1473. );
  1474. $transition-duration: () !default;
  1475. $transition-duration: map.merge(
  1476. (
  1477. '': 0.3s,
  1478. 'fast': 0.2s,
  1479. ),
  1480. $transition-duration
  1481. );
  1482. $transition-function: () !default;
  1483. $transition-function: map.merge(
  1484. (
  1485. 'ease-in-out-bezier': cubic-bezier(0.645, 0.045, 0.355, 1),
  1486. 'fast-bezier': cubic-bezier(0.23, 1, 0.32, 1),
  1487. ),
  1488. $transition-function
  1489. );
  1490. // header
  1491. $header: () !default;
  1492. $header: map.merge(
  1493. (
  1494. 'padding': 0 20px,
  1495. 'height': 60px,
  1496. ),
  1497. $header
  1498. );
  1499. // main
  1500. $main: () !default;
  1501. $main: map.merge(
  1502. (
  1503. 'padding': 20px,
  1504. ),
  1505. $main
  1506. );
  1507. // footer
  1508. $footer: () !default;
  1509. $footer: map.merge(
  1510. (
  1511. 'padding': 0 20px,
  1512. 'height': 60px,
  1513. ),
  1514. $footer
  1515. );
  1516. // Break-point
  1517. $sm: 768px !default;
  1518. $md: 992px !default;
  1519. $lg: 1200px !default;
  1520. $xl: 1920px !default;
  1521. $breakpoints: (
  1522. 'xs': '(max-width: #{$sm - 1})',
  1523. 'sm': '(min-width: #{$sm})',
  1524. 'md': '(min-width: #{$md})',
  1525. 'lg': '(min-width: #{$lg})',
  1526. 'xl': '(min-width: #{$xl})',
  1527. ) !default;
  1528. $breakpoints-spec: (
  1529. 'xs-only': '(max-width: #{$sm - 1})',
  1530. 'sm-and-up': '(min-width: #{$sm})',
  1531. 'sm-only': '(min-width: #{$sm}) and (max-width: #{$md - 1})',
  1532. 'sm-and-down': '(max-width: #{$md - 1})',
  1533. 'md-and-up': '(min-width: #{$md})',
  1534. 'md-only': '(min-width: #{$md}) and (max-width: #{$lg - 1})',
  1535. 'md-and-down': '(max-width: #{$lg - 1})',
  1536. 'lg-and-up': '(min-width: #{$lg})',
  1537. 'lg-only': '(min-width: #{$lg}) and (max-width: #{$xl - 1})',
  1538. 'lg-and-down': '(max-width: #{$xl - 1})',
  1539. 'xl-only': '(min-width: #{$xl})',
  1540. ) !default;