annotate default/assets/scss/vendors/bourbon/utilities/_font-source-declaration.scss @ 0:1d038bc9b3d2 default tip

Up:default
author Liny <dev@neowd.com>
date Sat, 31 May 2025 09:21:51 +0800
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
1 @charset "UTF-8";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
3 /// Builds the `src` list for an `@font-face` declaration.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
4 ///
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
5 /// @link http://goo.gl/Ru1bKP
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
6 ///
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
7 /// @argument {string} $font-family
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
8 ///
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
9 /// @argument {string} $file-path
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
10 ///
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
11 /// @argument {boolean} $asset-pipeline
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
12 ///
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
13 /// @argument {list} $file-formats
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
14 ///
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
15 /// @return {list}
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
16 ///
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
17 /// @require {function} _contains
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
18 ///
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
19 /// @access private
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
20
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
21 @function _font-source-declaration(
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
22 $font-family,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
23 $file-path,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
24 $asset-pipeline,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
25 $file-formats
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
26 ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
27
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
28 $src: ();
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
29
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
30 $formats-map: (
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
31 eot: "#{$file-path}.eot?#iefix" format("embedded-opentype"),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
32 woff2: "#{$file-path}.woff2" format("woff2"),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
33 woff: "#{$file-path}.woff" format("woff"),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
34 ttf: "#{$file-path}.ttf" format("truetype"),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
35 svg: "#{$file-path}.svg##{$font-family}" format("svg"),
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
36 );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
37
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
38 @each $key, $values in $formats-map {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
39 @if _contains($file-formats, $key) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
40 $file-path: nth($values, 1);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
41 $font-format: nth($values, 2);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
42
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
43 @if $asset-pipeline == true {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
44 $src: append($src, font-url($file-path) $font-format, comma);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
45 } @else {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
46 $src: append($src, url($file-path) $font-format, comma);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
47 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
48 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
49 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
50
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
51 @return $src;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
52 }