You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

647 lines
14 KiB

3 years ago
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
  1. // Utilities
  2. $utilities: () !default;
  3. // stylelint-disable-next-line scss/dollar-variable-default
  4. $utilities: map-merge(
  5. (
  6. // scss-docs-start utils-vertical-align
  7. "align": (
  8. property: vertical-align,
  9. class: align,
  10. values: baseline top middle bottom text-bottom text-top
  11. ),
  12. // scss-docs-end utils-vertical-align
  13. // scss-docs-start utils-float
  14. "float": (
  15. responsive: true,
  16. property: float,
  17. values: (
  18. start: left,
  19. end: right,
  20. none: none,
  21. )
  22. ),
  23. // scss-docs-end utils-float
  24. // Opacity utilities
  25. // scss-docs-start utils-opacity
  26. "opacity": (
  27. property: opacity,
  28. values: (
  29. 0: 0,
  30. 25: .25,
  31. 50: .5,
  32. 75: .75,
  33. 100: 1,
  34. )
  35. ),
  36. // scss-docs-end utils-opacity
  37. // scss-docs-start utils-overflow
  38. "overflow": (
  39. property: overflow,
  40. values: auto hidden visible scroll,
  41. ),
  42. // scss-docs-end utils-overflow
  43. // scss-docs-start utils-display
  44. "display": (
  45. responsive: true,
  46. print: true,
  47. property: display,
  48. class: d,
  49. values: inline inline-block block grid table table-row table-cell flex inline-flex none
  50. ),
  51. // scss-docs-end utils-display
  52. // scss-docs-start utils-shadow
  53. "shadow": (
  54. property: box-shadow,
  55. class: shadow,
  56. values: (
  57. null: $box-shadow,
  58. sm: $box-shadow-sm,
  59. lg: $box-shadow-lg,
  60. none: none,
  61. )
  62. ),
  63. // scss-docs-end utils-shadow
  64. // scss-docs-start utils-position
  65. "position": (
  66. property: position,
  67. values: static relative absolute fixed sticky
  68. ),
  69. "top": (
  70. property: top,
  71. values: $position-values
  72. ),
  73. "bottom": (
  74. property: bottom,
  75. values: $position-values
  76. ),
  77. "start": (
  78. property: left,
  79. class: start,
  80. values: $position-values
  81. ),
  82. "end": (
  83. property: right,
  84. class: end,
  85. values: $position-values
  86. ),
  87. "translate-middle": (
  88. property: transform,
  89. class: translate-middle,
  90. values: (
  91. null: translate(-50%, -50%),
  92. x: translateX(-50%),
  93. y: translateY(-50%),
  94. )
  95. ),
  96. // scss-docs-end utils-position
  97. // scss-docs-start utils-borders
  98. "border": (
  99. property: border,
  100. values: (
  101. null: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color),
  102. 0: 0,
  103. )
  104. ),
  105. "border-top": (
  106. property: border-top,
  107. values: (
  108. null: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color),
  109. 0: 0,
  110. )
  111. ),
  112. "border-end": (
  113. property: border-right,
  114. class: border-end,
  115. values: (
  116. null: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color),
  117. 0: 0,
  118. )
  119. ),
  120. "border-bottom": (
  121. property: border-bottom,
  122. values: (
  123. null: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color),
  124. 0: 0,
  125. )
  126. ),
  127. "border-start": (
  128. property: border-left,
  129. class: border-start,
  130. values: (
  131. null: var(--#{$prefix}border-width) var(--#{$prefix}border-style) var(--#{$prefix}border-color),
  132. 0: 0,
  133. )
  134. ),
  135. "border-color": (
  136. property: border-color,
  137. class: border,
  138. local-vars: (
  139. "border-opacity": 1
  140. ),
  141. values: $utilities-border-colors
  142. ),
  143. "border-width": (
  144. css-var: true,
  145. css-variable-name: border-width,
  146. class: border,
  147. values: $border-widths
  148. ),
  149. "border-opacity": (
  150. css-var: true,
  151. class: border-opacity,
  152. values: (
  153. 10: .1,
  154. 25: .25,
  155. 50: .5,
  156. 75: .75,
  157. 100: 1
  158. )
  159. ),
  160. // scss-docs-end utils-borders
  161. // Sizing utilities
  162. // scss-docs-start utils-sizing
  163. "width": (
  164. property: width,
  165. class: w,
  166. values: (
  167. 25: 25%,
  168. 50: 50%,
  169. 75: 75%,
  170. 100: 100%,
  171. auto: auto
  172. )
  173. ),
  174. "max-width": (
  175. property: max-width,
  176. class: mw,
  177. values: (100: 100%)
  178. ),
  179. "viewport-width": (
  180. property: width,
  181. class: vw,
  182. values: (100: 100vw)
  183. ),
  184. "min-viewport-width": (
  185. property: min-width,
  186. class: min-vw,
  187. values: (100: 100vw)
  188. ),
  189. "height": (
  190. property: height,
  191. class: h,
  192. values: (
  193. 25: 25%,
  194. 50: 50%,
  195. 75: 75%,
  196. 100: 100%,
  197. auto: auto
  198. )
  199. ),
  200. "max-height": (
  201. property: max-height,
  202. class: mh,
  203. values: (100: 100%)
  204. ),
  205. "viewport-height": (
  206. property: height,
  207. class: vh,
  208. values: (100: 100vh)
  209. ),
  210. "min-viewport-height": (
  211. property: min-height,
  212. class: min-vh,
  213. values: (100: 100vh)
  214. ),
  215. // scss-docs-end utils-sizing
  216. // Flex utilities
  217. // scss-docs-start utils-flex
  218. "flex": (
  219. responsive: true,
  220. property: flex,
  221. values: (fill: 1 1 auto)
  222. ),
  223. "flex-direction": (
  224. responsive: true,
  225. property: flex-direction,
  226. class: flex,
  227. values: row column row-reverse column-reverse
  228. ),
  229. "flex-grow": (
  230. responsive: true,
  231. property: flex-grow,
  232. class: flex,
  233. values: (
  234. grow-0: 0,
  235. grow-1: 1,
  236. )
  237. ),
  238. "flex-shrink": (
  239. responsive: true,
  240. property: flex-shrink,
  241. class: flex,
  242. values: (
  243. shrink-0: 0,
  244. shrink-1: 1,
  245. )
  246. ),
  247. "flex-wrap": (
  248. responsive: true,
  249. property: flex-wrap,
  250. class: flex,
  251. values: wrap nowrap wrap-reverse
  252. ),
  253. "justify-content": (
  254. responsive: true,
  255. property: justify-content,
  256. values: (
  257. start: flex-start,
  258. end: flex-end,
  259. center: center,
  260. between: space-between,
  261. around: space-around,
  262. evenly: space-evenly,
  263. )
  264. ),
  265. "align-items": (
  266. responsive: true,
  267. property: align-items,
  268. values: (
  269. start: flex-start,
  270. end: flex-end,
  271. center: center,
  272. baseline: baseline,
  273. stretch: stretch,
  274. )
  275. ),
  276. "align-content": (
  277. responsive: true,
  278. property: align-content,
  279. values: (
  280. start: flex-start,
  281. end: flex-end,
  282. center: center,
  283. between: space-between,
  284. around: space-around,
  285. stretch: stretch,
  286. )
  287. ),
  288. "align-self": (
  289. responsive: true,
  290. property: align-self,
  291. values: (
  292. auto: auto,
  293. start: flex-start,
  294. end: flex-end,
  295. center: center,
  296. baseline: baseline,
  297. stretch: stretch,
  298. )
  299. ),
  300. "order": (
  301. responsive: true,
  302. property: order,
  303. values: (
  304. first: -1,
  305. 0: 0,
  306. 1: 1,
  307. 2: 2,
  308. 3: 3,
  309. 4: 4,
  310. 5: 5,
  311. last: 6,
  312. ),
  313. ),
  314. // scss-docs-end utils-flex
  315. // Margin utilities
  316. // scss-docs-start utils-spacing
  317. "margin": (
  318. responsive: true,
  319. property: margin,
  320. class: m,
  321. values: map-merge($spacers, (auto: auto))
  322. ),
  323. "margin-x": (
  324. responsive: true,
  325. property: margin-right margin-left,
  326. class: mx,
  327. values: map-merge($spacers, (auto: auto))
  328. ),
  329. "margin-y": (
  330. responsive: true,
  331. property: margin-top margin-bottom,
  332. class: my,
  333. values: map-merge($spacers, (auto: auto))
  334. ),
  335. "margin-top": (
  336. responsive: true,
  337. property: margin-top,
  338. class: mt,
  339. values: map-merge($spacers, (auto: auto))
  340. ),
  341. "margin-end": (
  342. responsive: true,
  343. property: margin-right,
  344. class: me,
  345. values: map-merge($spacers, (auto: auto))
  346. ),
  347. "margin-bottom": (
  348. responsive: true,
  349. property: margin-bottom,
  350. class: mb,
  351. values: map-merge($spacers, (auto: auto))
  352. ),
  353. "margin-start": (
  354. responsive: true,
  355. property: margin-left,
  356. class: ms,
  357. values: map-merge($spacers, (auto: auto))
  358. ),
  359. // Negative margin utilities
  360. "negative-margin": (
  361. responsive: true,
  362. property: margin,
  363. class: m,
  364. values: $negative-spacers
  365. ),
  366. "negative-margin-x": (
  367. responsive: true,
  368. property: margin-right margin-left,
  369. class: mx,
  370. values: $negative-spacers
  371. ),
  372. "negative-margin-y": (
  373. responsive: true,
  374. property: margin-top margin-bottom,
  375. class: my,
  376. values: $negative-spacers
  377. ),
  378. "negative-margin-top": (
  379. responsive: true,
  380. property: margin-top,
  381. class: mt,
  382. values: $negative-spacers
  383. ),
  384. "negative-margin-end": (
  385. responsive: true,
  386. property: margin-right,
  387. class: me,
  388. values: $negative-spacers
  389. ),
  390. "negative-margin-bottom": (
  391. responsive: true,
  392. property: margin-bottom,
  393. class: mb,
  394. values: $negative-spacers
  395. ),
  396. "negative-margin-start": (
  397. responsive: true,
  398. property: margin-left,
  399. class: ms,
  400. values: $negative-spacers
  401. ),
  402. // Padding utilities
  403. "padding": (
  404. responsive: true,
  405. property: padding,
  406. class: p,
  407. values: $spacers
  408. ),
  409. "padding-x": (
  410. responsive: true,
  411. property: padding-right padding-left,
  412. class: px,
  413. values: $spacers
  414. ),
  415. "padding-y": (
  416. responsive: true,
  417. property: padding-top padding-bottom,
  418. class: py,
  419. values: $spacers
  420. ),
  421. "padding-top": (
  422. responsive: true,
  423. property: padding-top,
  424. class: pt,
  425. values: $spacers
  426. ),
  427. "padding-end": (
  428. responsive: true,
  429. property: padding-right,
  430. class: pe,
  431. values: $spacers
  432. ),
  433. "padding-bottom": (
  434. responsive: true,
  435. property: padding-bottom,
  436. class: pb,
  437. values: $spacers
  438. ),
  439. "padding-start": (
  440. responsive: true,
  441. property: padding-left,
  442. class: ps,
  443. values: $spacers
  444. ),
  445. // Gap utility
  446. "gap": (
  447. responsive: true,
  448. property: gap,
  449. class: gap,
  450. values: $spacers
  451. ),
  452. // scss-docs-end utils-spacing
  453. // Text
  454. // scss-docs-start utils-text
  455. "font-family": (
  456. property: font-family,
  457. class: font,
  458. values: (monospace: var(--#{$prefix}font-monospace))
  459. ),
  460. "font-size": (
  461. rfs: true,
  462. property: font-size,
  463. class: fs,
  464. values: $font-sizes
  465. ),
  466. "font-style": (
  467. property: font-style,
  468. class: fst,
  469. values: italic normal
  470. ),
  471. "font-weight": (
  472. property: font-weight,
  473. class: fw,
  474. values: (
  475. light: $font-weight-light,
  476. lighter: $font-weight-lighter,
  477. normal: $font-weight-normal,
  478. bold: $font-weight-bold,
  479. semibold: $font-weight-semibold,
  480. bolder: $font-weight-bolder
  481. )
  482. ),
  483. "line-height": (
  484. property: line-height,
  485. class: lh,
  486. values: (
  487. 1: 1,
  488. sm: $line-height-sm,
  489. base: $line-height-base,
  490. lg: $line-height-lg,
  491. )
  492. ),
  493. "text-align": (
  494. responsive: true,
  495. property: text-align,
  496. class: text,
  497. values: (
  498. start: left,
  499. end: right,
  500. center: center,
  501. )
  502. ),
  503. "text-decoration": (
  504. property: text-decoration,
  505. values: none underline line-through
  506. ),
  507. "text-transform": (
  508. property: text-transform,
  509. class: text,
  510. values: lowercase uppercase capitalize
  511. ),
  512. "white-space": (
  513. property: white-space,
  514. class: text,
  515. values: (
  516. wrap: normal,
  517. nowrap: nowrap,
  518. )
  519. ),
  520. "word-wrap": (
  521. property: word-wrap word-break,
  522. class: text,
  523. values: (break: break-word),
  524. rtl: false
  525. ),
  526. // scss-docs-end utils-text
  527. // scss-docs-start utils-color
  528. "color": (
  529. property: color,
  530. class: text,
  531. local-vars: (
  532. "text-opacity": 1
  533. ),
  534. values: map-merge(
  535. $utilities-text-colors,
  536. (
  537. "muted": $text-muted,
  538. "black-50": rgba($black, .5), // deprecated
  539. "white-50": rgba($white, .5), // deprecated
  540. "reset": inherit,
  541. )
  542. )
  543. ),
  544. "text-opacity": (
  545. css-var: true,
  546. class: text-opacity,
  547. values: (
  548. 25: .25,
  549. 50: .5,
  550. 75: .75,
  551. 100: 1
  552. )
  553. ),
  554. // scss-docs-end utils-color
  555. // scss-docs-start utils-bg-color
  556. "background-color": (
  557. property: background-color,
  558. class: bg,
  559. local-vars: (
  560. "bg-opacity": 1
  561. ),
  562. values: map-merge(
  563. $utilities-bg-colors,
  564. (
  565. "transparent": transparent
  566. )
  567. )
  568. ),
  569. "bg-opacity": (
  570. css-var: true,
  571. class: bg-opacity,
  572. values: (
  573. 10: .1,
  574. 25: .25,
  575. 50: .5,
  576. 75: .75,
  577. 100: 1
  578. )
  579. ),
  580. // scss-docs-end utils-bg-color
  581. "gradient": (
  582. property: background-image,
  583. class: bg,
  584. values: (gradient: var(--#{$prefix}gradient))
  585. ),
  586. // scss-docs-start utils-interaction
  587. "user-select": (
  588. property: user-select,
  589. values: all auto none
  590. ),
  591. "pointer-events": (
  592. property: pointer-events,
  593. class: pe,
  594. values: none auto,
  595. ),
  596. // scss-docs-end utils-interaction
  597. // scss-docs-start utils-border-radius
  598. "rounded": (
  599. property: border-radius,
  600. class: rounded,
  601. values: (
  602. null: var(--#{$prefix}border-radius),
  603. 0: 0,
  604. 1: var(--#{$prefix}border-radius-sm),
  605. 2: var(--#{$prefix}border-radius),
  606. 3: var(--#{$prefix}border-radius-lg),
  607. 4: var(--#{$prefix}border-radius-xl),
  608. 5: var(--#{$prefix}border-radius-2xl),
  609. circle: 50%,
  610. pill: var(--#{$prefix}border-radius-pill)
  611. )
  612. ),
  613. "rounded-top": (
  614. property: border-top-left-radius border-top-right-radius,
  615. class: rounded-top,
  616. values: (null: var(--#{$prefix}border-radius))
  617. ),
  618. "rounded-end": (
  619. property: border-top-right-radius border-bottom-right-radius,
  620. class: rounded-end,
  621. values: (null: var(--#{$prefix}border-radius))
  622. ),
  623. "rounded-bottom": (
  624. property: border-bottom-right-radius border-bottom-left-radius,
  625. class: rounded-bottom,
  626. values: (null: var(--#{$prefix}border-radius))
  627. ),
  628. "rounded-start": (
  629. property: border-bottom-left-radius border-top-left-radius,
  630. class: rounded-start,
  631. values: (null: var(--#{$prefix}border-radius))
  632. ),
  633. // scss-docs-end utils-border-radius
  634. // scss-docs-start utils-visibility
  635. "visibility": (
  636. property: visibility,
  637. class: null,
  638. values: (
  639. visible: visible,
  640. invisible: hidden,
  641. )
  642. )
  643. // scss-docs-end utils-visibility
  644. ),
  645. $utilities
  646. );