@unlk/keymaster 1.0.11 → 1.0.13

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 (70) hide show
  1. package/CHANGELOG.md +11 -4
  2. package/dist/css/keymaster.css +24315 -26427
  3. package/dist/css/keymaster.css.map +1 -1
  4. package/dist/css/keymaster.min.css +69 -29
  5. package/dist/css/keymaster.min.css.map +1 -1
  6. package/dist/js/keymaster.js +35 -31
  7. package/dist/js/keymaster.js.map +1 -1
  8. package/dist/js/keymaster.min.js +25 -25
  9. package/dist/js/keymaster.min.js.map +1 -1
  10. package/fonts/fa-brands-400.woff2 +0 -0
  11. package/fonts/fa-duotone-900.woff2 +0 -0
  12. package/fonts/fa-duotone-light-300.woff2 +0 -0
  13. package/fonts/fa-duotone-regular-400.woff2 +0 -0
  14. package/fonts/fa-duotone-thin-100.woff2 +0 -0
  15. package/fonts/fa-light-300.woff2 +0 -0
  16. package/fonts/fa-regular-400.woff2 +0 -0
  17. package/fonts/fa-sharp-duotone-light-300.woff2 +0 -0
  18. package/fonts/fa-sharp-duotone-regular-400.woff2 +0 -0
  19. package/fonts/fa-sharp-duotone-solid-900.woff2 +0 -0
  20. package/fonts/fa-sharp-duotone-thin-100.woff2 +0 -0
  21. package/fonts/fa-sharp-light-300.woff2 +0 -0
  22. package/fonts/fa-sharp-regular-400.woff2 +0 -0
  23. package/fonts/fa-sharp-solid-900.woff2 +0 -0
  24. package/fonts/fa-sharp-thin-100.woff2 +0 -0
  25. package/fonts/fa-solid-900.woff2 +0 -0
  26. package/fonts/fa-thin-100.woff2 +0 -0
  27. package/fonts/fa-v4compatibility.woff2 +0 -0
  28. package/package.json +2 -2
  29. package/scss/_fontawesome.scss +21 -0
  30. package/scss/assets/bootstrap5/_card.scss +8 -8
  31. package/scss/assets/bootstrap5/mixins/_banner.scss +1 -1
  32. package/scss/assets/bootstrap5/mixins/_box-shadow.scss +11 -5
  33. package/scss/assets/bootstrap5/mixins/_visually-hidden.scss +5 -0
  34. package/scss/assets/fontawesome/_animated.scss +86 -88
  35. package/scss/assets/fontawesome/_bordered.scss +24 -0
  36. package/scss/assets/fontawesome/_core.scss +119 -130
  37. package/scss/assets/fontawesome/_fa.scss +3 -0
  38. package/scss/assets/fontawesome/_functions.scss +3 -52
  39. package/scss/assets/fontawesome/_icons.scss +7 -5
  40. package/scss/assets/fontawesome/_list.scss +7 -6
  41. package/scss/assets/fontawesome/_mixins.scss +14 -75
  42. package/scss/assets/fontawesome/_pulled.scss +15 -0
  43. package/scss/assets/fontawesome/_rotated-flipped.scss +10 -9
  44. package/scss/assets/fontawesome/_shims.scss +1557 -942
  45. package/scss/assets/fontawesome/_sizing.scss +6 -4
  46. package/scss/assets/fontawesome/_stacked.scss +11 -10
  47. package/scss/assets/fontawesome/_variables.scss +10495 -9713
  48. package/scss/assets/fontawesome/_widths.scss +12 -0
  49. package/scss/assets/fontawesome/brands.scss +29 -14
  50. package/scss/assets/fontawesome/duotone-light.scss +66 -39
  51. package/scss/assets/fontawesome/duotone-regular.scss +66 -39
  52. package/scss/assets/fontawesome/duotone-thin.scss +66 -39
  53. package/scss/assets/fontawesome/duotone.scss +56 -34
  54. package/scss/assets/fontawesome/fontawesome.scss +12 -15
  55. package/scss/assets/fontawesome/light.scss +37 -13
  56. package/scss/assets/fontawesome/regular.scss +37 -13
  57. package/scss/assets/fontawesome/sharp-duotone-light.scss +66 -39
  58. package/scss/assets/fontawesome/sharp-duotone-regular.scss +66 -39
  59. package/scss/assets/fontawesome/sharp-duotone-solid.scss +66 -47
  60. package/scss/assets/fontawesome/sharp-duotone-thin.scss +66 -39
  61. package/scss/assets/fontawesome/sharp-light.scss +37 -13
  62. package/scss/assets/fontawesome/sharp-regular.scss +37 -13
  63. package/scss/assets/fontawesome/sharp-solid.scss +37 -13
  64. package/scss/assets/fontawesome/sharp-thin.scss +37 -13
  65. package/scss/assets/fontawesome/solid.scss +37 -13
  66. package/scss/assets/fontawesome/thin.scss +37 -13
  67. package/scss/assets/fontawesome/v4-shims.scss +5 -5
  68. package/scss/keymaster.scss +1 -8
  69. package/scss/theme/_typography.scss +5 -5
  70. package/scss/theme/_variables-overrides.scss +1 -3
@@ -1,27 +1,51 @@
1
1
  /*!
2
- * Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.0.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
- * Copyright 2024 Fonticons, Inc.
4
+ * Copyright 2025 Fonticons, Inc.
5
5
  */
6
- @import 'functions';
7
- @import 'variables';
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
8
9
 
9
10
  :root, :host {
10
- --#{$fa-css-prefix}-style-family-classic: '#{ $fa-style-family }';
11
- --#{$fa-css-prefix}-font-light: normal 300 1em/1 '#{ $fa-style-family }';
11
+ --#{v.$css-prefix}-family-classic: '#{ v.$family }';
12
+ --#{v.$css-prefix}-font-light: normal 300 1em/1 var(--#{v.$css-prefix}-family-classic);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-classic: var(--#{v.$css-prefix}-family-classic);
12
16
  }
13
17
 
14
18
 
15
19
  @font-face {
16
- font-family: 'Font Awesome 6 Pro';
20
+ font-family: 'Font Awesome 7 Pro';
17
21
  font-style: normal;
18
22
  font-weight: 300;
19
- font-display: $fa-font-display;
20
- src: url('#{$fa-font-path}/fa-light-300.woff2') format('woff2'),
21
- url('#{$fa-font-path}/fa-light-300.ttf') format('truetype');
23
+ font-display: v.$font-display;
24
+ src: url('#{v.$font-path}/fa-light-300.woff2');
22
25
  }
23
26
 
24
- .fal,
25
- .#{$fa-css-prefix}-light {
26
- font-weight: 300;
27
+
28
+ .fal {
29
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
30
+ --#{v.$css-prefix}-style: 300;
31
+ }
32
+
33
+ .#{v.$css-prefix}-classic {
34
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
35
+ }
36
+
37
+ .#{v.$css-prefix}-light {
38
+ --#{v.$css-prefix}-style: 300;
39
+ }
40
+
41
+ // convenience mixin for declaring pseudo-elements by CSS variable,
42
+ // including all style-specific font properties and ::before elements.
43
+ @mixin icon($var) {
44
+ @include m.fa-icon(Font Awesome 7 Pro);
45
+ @extend .#{v.$css-prefix}-light;
46
+ @extend .#{v.$css-prefix}-classic;
47
+
48
+ &::before {
49
+ content: string.unquote("\"#{ $var }\"");
50
+ }
27
51
  }
@@ -1,27 +1,51 @@
1
1
  /*!
2
- * Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.0.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
- * Copyright 2024 Fonticons, Inc.
4
+ * Copyright 2025 Fonticons, Inc.
5
5
  */
6
- @import 'functions';
7
- @import 'variables';
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
8
9
 
9
10
  :root, :host {
10
- --#{$fa-css-prefix}-style-family-classic: '#{ $fa-style-family }';
11
- --#{$fa-css-prefix}-font-regular: normal 400 1em/1 '#{ $fa-style-family }';
11
+ --#{v.$css-prefix}-family-classic: '#{ v.$family }';
12
+ --#{v.$css-prefix}-font-regular: normal 400 1em/1 var(--#{v.$css-prefix}-family-classic);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-classic: var(--#{v.$css-prefix}-family-classic);
12
16
  }
13
17
 
14
18
 
15
19
  @font-face {
16
- font-family: 'Font Awesome 6 Pro';
20
+ font-family: 'Font Awesome 7 Pro';
17
21
  font-style: normal;
18
22
  font-weight: 400;
19
- font-display: $fa-font-display;
20
- src: url('#{$fa-font-path}/fa-regular-400.woff2') format('woff2'),
21
- url('#{$fa-font-path}/fa-regular-400.ttf') format('truetype');
23
+ font-display: v.$font-display;
24
+ src: url('#{v.$font-path}/fa-regular-400.woff2');
22
25
  }
23
26
 
24
- .far,
25
- .#{$fa-css-prefix}-regular {
26
- font-weight: 400;
27
+
28
+ .far {
29
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
30
+ --#{v.$css-prefix}-style: 400;
31
+ }
32
+
33
+ .#{v.$css-prefix}-classic {
34
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
35
+ }
36
+
37
+ .#{v.$css-prefix}-regular {
38
+ --#{v.$css-prefix}-style: 400;
39
+ }
40
+
41
+ // convenience mixin for declaring pseudo-elements by CSS variable,
42
+ // including all style-specific font properties and ::before elements.
43
+ @mixin icon($var) {
44
+ @include m.fa-icon(Font Awesome 7 Pro);
45
+ @extend .#{v.$css-prefix}-regular;
46
+ @extend .#{v.$css-prefix}-classic;
47
+
48
+ &::before {
49
+ content: string.unquote("\"#{ $var }\"");
50
+ }
27
51
  }
@@ -1,69 +1,96 @@
1
1
  /*!
2
- * Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.0.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
- * Copyright 2024 Fonticons, Inc.
4
+ * Copyright 2025 Fonticons, Inc.
5
5
  */
6
- @import 'functions';
7
- @import 'variables';
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
8
9
 
9
10
  :root, :host {
10
- --#{$fa-css-prefix}-style-family-sharp-duotone: 'Font Awesome 6 Sharp Duotone';
11
- --#{$fa-css-prefix}-font-sharp-duotone-light: normal 300 1em/1 'Font Awesome 6 Sharp Duotone';
11
+ --#{v.$css-prefix}-family-sharp-duotone: 'Font Awesome 7 Sharp Duotone';
12
+ --#{v.$css-prefix}-font-sharp-duotone-light: normal 300 1em/1 var(--#{v.$css-prefix}-family-sharp-duotone);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-sharp-duotone: var(--#{v.$css-prefix}-family-sharp-duotone);
12
16
  }
13
17
 
14
18
  @font-face {
15
- font-family: 'Font Awesome 6 Sharp Duotone';
19
+ font-family: 'Font Awesome 7 Sharp Duotone';
16
20
  font-style: normal;
17
21
  font-weight: 300;
18
- font-display: $fa-font-display;
19
- src: url('#{$fa-font-path}/fa-sharp-duotone-light-300.woff2') format('woff2'),
20
- url('#{$fa-font-path}/fa-sharp-duotone-light-300.ttf') format('truetype');
22
+ font-display: v.$font-display;
23
+ src: url('#{v.$font-path}/fa-sharp-duotone-light-300.woff2');
21
24
  }
22
25
 
23
- .fasdl,
24
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light {
26
+
27
+ .fasdl {
28
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-sharp-duotone);
29
+ --#{v.$css-prefix}-style: 300;
30
+ position: relative;
31
+ letter-spacing: normal;
32
+ }
33
+
34
+ .#{v.$css-prefix}-sharp-duotone {
35
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-sharp-duotone);
25
36
  position: relative;
26
- font-weight: 300;
27
37
  letter-spacing: normal;
28
38
  }
29
39
 
40
+ .#{v.$css-prefix}-light {
41
+ --#{v.$css-prefix}-style: 300;
42
+ }
43
+
30
44
  .fasdl::before,
31
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light::before {
45
+ .#{v.$css-prefix}-sharp-duotone::before {
32
46
  position: absolute;
33
- color: var(--#{$fa-css-prefix}-primary-color, inherit);
34
- opacity: var(--#{$fa-css-prefix}-primary-opacity, #{$fa-primary-opacity});
47
+ color: var(--#{v.$css-prefix}-primary-color, currentColor);
48
+ opacity: var(--#{v.$css-prefix}-primary-opacity, #{v.$primary-opacity});
35
49
  }
36
50
 
37
51
  .fasdl::after,
38
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light::after {
39
- color: var(--#{$fa-css-prefix}-secondary-color, inherit);
40
- opacity: var(--#{$fa-css-prefix}-secondary-opacity, #{$fa-secondary-opacity});
52
+ .#{v.$css-prefix}-sharp-duotone::after {
53
+ color: var(--#{v.$css-prefix}-secondary-color, currentColor);
54
+ opacity: var(--#{v.$css-prefix}-secondary-opacity, #{v.$secondary-opacity});
41
55
  }
42
56
 
43
- .#{$fa-css-prefix}-swap-opacity .fasdl::before,
44
- .#{$fa-css-prefix}-swap-opacity .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light::before,
45
- .fasdl.#{$fa-css-prefix}-swap-opacity::before,
46
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-swap-opacity::before,
47
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light.#{$fa-css-prefix}-swap-opacity::before {
48
- opacity: var(--#{$fa-css-prefix}-secondary-opacity, #{$fa-secondary-opacity});
57
+ .#{v.$css-prefix}-swap-opacity .fasdl::before,
58
+ .#{v.$css-prefix}-swap-opacity .#{v.$css-prefix}-sharp-duotone::before,
59
+ .#{v.$css-prefix}-swap-opacity.fasdl::before,
60
+ .#{v.$css-prefix}-swap-opacity.#{v.$css-prefix}-sharp-duotone::before {
61
+ opacity: var(--#{v.$css-prefix}-secondary-opacity, #{v.$secondary-opacity});
49
62
  }
50
63
 
51
- .#{$fa-css-prefix}-swap-opacity .fasdl::after,
52
- .#{$fa-css-prefix}-swap-opacity .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light::after,
53
- .fasdl.#{$fa-css-prefix}-swap-opacity::after,
54
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-swap-opacity::after,
55
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light.#{$fa-css-prefix}-swap-opacity::after {
56
- opacity: var(--#{$fa-css-prefix}-primary-opacity, #{$fa-primary-opacity});
64
+ .#{v.$css-prefix}-swap-opacity .fasdl::after,
65
+ .#{v.$css-prefix}-swap-opacity .#{v.$css-prefix}-sharp-duotone::after,
66
+ .#{v.$css-prefix}-swap-opacity.fasdl::after,
67
+ .#{v.$css-prefix}-swap-opacity.#{v.$css-prefix}-sharp-duotone::after {
68
+ opacity: var(--#{v.$css-prefix}-primary-opacity, #{v.$primary-opacity});
57
69
  }
58
70
 
59
- .fasdl.#{$fa-css-prefix}-inverse,
60
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light.#{$fa-css-prefix}-inverse {
61
- color: var(--#{$fa-css-prefix}-inverse, $fa-inverse);
71
+ .#{v.$css-prefix}-li.fasdl,
72
+ .#{v.$css-prefix}-li.#{v.$css-prefix}-sharp-duotone,
73
+ .#{v.$css-prefix}-stack-1x.fasdl,
74
+ .#{v.$css-prefix}-stack-1x.#{v.$css-prefix}-sharp-duotone,
75
+ .#{v.$css-prefix}-stack-2x.fasdl,
76
+ .#{v.$css-prefix}-stack-2x.#{v.$css-prefix}-sharp-duotone {
77
+ position: absolute;
62
78
  }
63
79
 
64
- .fasdl.#{$fa-css-prefix}-stack-1x,
65
- .fasdl.#{$fa-css-prefix}-stack-2x,
66
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light.#{$fa-css-prefix}-stack-1x,
67
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-light.#{$fa-css-prefix}-stack-2x {
68
- position: absolute;
80
+ // convenience mixins for declaring pseudo-elements by CSS variable,
81
+ // including all style-specific font properties, and both the ::before
82
+ // and ::after elements in the duotone case.
83
+ @mixin icon($var) {
84
+ @include m.fa-icon(Font Awesome 7 Sharp Duotone);
85
+ @extend .#{v.$css-prefix}-sharp-duotone;
86
+ @extend .#{v.$css-prefix}-light;
87
+
88
+ &::before {
89
+ content: string.unquote("\"#{ $var }\"");
90
+ }
91
+
92
+ &::after {
93
+ content: string.unquote("\"#{ $var }\"");
94
+ font-feature-settings: "ss01";
95
+ }
69
96
  }
@@ -1,69 +1,96 @@
1
1
  /*!
2
- * Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.0.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
- * Copyright 2024 Fonticons, Inc.
4
+ * Copyright 2025 Fonticons, Inc.
5
5
  */
6
- @import 'functions';
7
- @import 'variables';
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
8
9
 
9
10
  :root, :host {
10
- --#{$fa-css-prefix}-style-family-sharp-duotone: 'Font Awesome 6 Sharp Duotone';
11
- --#{$fa-css-prefix}-font-sharp-duotone-regular: normal 400 1em/1 'Font Awesome 6 Sharp Duotone';
11
+ --#{v.$css-prefix}-family-sharp-duotone: 'Font Awesome 7 Sharp Duotone';
12
+ --#{v.$css-prefix}-font-sharp-duotone-regular: normal 400 1em/1 var(--#{v.$css-prefix}-family-sharp-duotone);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-sharp-duotone: var(--#{v.$css-prefix}-family-sharp-duotone);
12
16
  }
13
17
 
14
18
  @font-face {
15
- font-family: 'Font Awesome 6 Sharp Duotone';
19
+ font-family: 'Font Awesome 7 Sharp Duotone';
16
20
  font-style: normal;
17
21
  font-weight: 400;
18
- font-display: $fa-font-display;
19
- src: url('#{$fa-font-path}/fa-sharp-duotone-regular-400.woff2') format('woff2'),
20
- url('#{$fa-font-path}/fa-sharp-duotone-regular-400.ttf') format('truetype');
22
+ font-display: v.$font-display;
23
+ src: url('#{v.$font-path}/fa-sharp-duotone-regular-400.woff2');
21
24
  }
22
25
 
23
- .fasdr,
24
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular {
26
+
27
+ .fasdr {
28
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-sharp-duotone);
29
+ --#{v.$css-prefix}-style: 400;
30
+ position: relative;
31
+ letter-spacing: normal;
32
+ }
33
+
34
+ .#{v.$css-prefix}-sharp-duotone {
35
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-sharp-duotone);
25
36
  position: relative;
26
- font-weight: 400;
27
37
  letter-spacing: normal;
28
38
  }
29
39
 
40
+ .#{v.$css-prefix}-regular {
41
+ --#{v.$css-prefix}-style: 400;
42
+ }
43
+
30
44
  .fasdr::before,
31
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular::before {
45
+ .#{v.$css-prefix}-sharp-duotone::before {
32
46
  position: absolute;
33
- color: var(--#{$fa-css-prefix}-primary-color, inherit);
34
- opacity: var(--#{$fa-css-prefix}-primary-opacity, #{$fa-primary-opacity});
47
+ color: var(--#{v.$css-prefix}-primary-color, currentColor);
48
+ opacity: var(--#{v.$css-prefix}-primary-opacity, #{v.$primary-opacity});
35
49
  }
36
50
 
37
51
  .fasdr::after,
38
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular::after {
39
- color: var(--#{$fa-css-prefix}-secondary-color, inherit);
40
- opacity: var(--#{$fa-css-prefix}-secondary-opacity, #{$fa-secondary-opacity});
52
+ .#{v.$css-prefix}-sharp-duotone::after {
53
+ color: var(--#{v.$css-prefix}-secondary-color, currentColor);
54
+ opacity: var(--#{v.$css-prefix}-secondary-opacity, #{v.$secondary-opacity});
41
55
  }
42
56
 
43
- .#{$fa-css-prefix}-swap-opacity .fasdr::before,
44
- .#{$fa-css-prefix}-swap-opacity .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular::before,
45
- .fasdr.#{$fa-css-prefix}-swap-opacity::before,
46
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-swap-opacity::before,
47
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular.#{$fa-css-prefix}-swap-opacity::before {
48
- opacity: var(--#{$fa-css-prefix}-secondary-opacity, #{$fa-secondary-opacity});
57
+ .#{v.$css-prefix}-swap-opacity .fasdr::before,
58
+ .#{v.$css-prefix}-swap-opacity .#{v.$css-prefix}-sharp-duotone::before,
59
+ .#{v.$css-prefix}-swap-opacity.fasdr::before,
60
+ .#{v.$css-prefix}-swap-opacity.#{v.$css-prefix}-sharp-duotone::before {
61
+ opacity: var(--#{v.$css-prefix}-secondary-opacity, #{v.$secondary-opacity});
49
62
  }
50
63
 
51
- .#{$fa-css-prefix}-swap-opacity .fasdr::after,
52
- .#{$fa-css-prefix}-swap-opacity .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular::after,
53
- .fasdr.#{$fa-css-prefix}-swap-opacity::after,
54
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-swap-opacity::after,
55
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular.#{$fa-css-prefix}-swap-opacity::after {
56
- opacity: var(--#{$fa-css-prefix}-primary-opacity, #{$fa-primary-opacity});
64
+ .#{v.$css-prefix}-swap-opacity .fasdr::after,
65
+ .#{v.$css-prefix}-swap-opacity .#{v.$css-prefix}-sharp-duotone::after,
66
+ .#{v.$css-prefix}-swap-opacity.fasdr::after,
67
+ .#{v.$css-prefix}-swap-opacity.#{v.$css-prefix}-sharp-duotone::after {
68
+ opacity: var(--#{v.$css-prefix}-primary-opacity, #{v.$primary-opacity});
57
69
  }
58
70
 
59
- .fasdr.#{$fa-css-prefix}-inverse,
60
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular.#{$fa-css-prefix}-inverse {
61
- color: var(--#{$fa-css-prefix}-inverse, $fa-inverse);
71
+ .#{v.$css-prefix}-li.fasdr,
72
+ .#{v.$css-prefix}-li.#{v.$css-prefix}-sharp-duotone,
73
+ .#{v.$css-prefix}-stack-1x.fasdr,
74
+ .#{v.$css-prefix}-stack-1x.#{v.$css-prefix}-sharp-duotone,
75
+ .#{v.$css-prefix}-stack-2x.fasdr,
76
+ .#{v.$css-prefix}-stack-2x.#{v.$css-prefix}-sharp-duotone {
77
+ position: absolute;
62
78
  }
63
79
 
64
- .fasdr.#{$fa-css-prefix}-stack-1x,
65
- .fasdr.#{$fa-css-prefix}-stack-2x,
66
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular.#{$fa-css-prefix}-stack-1x,
67
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-regular.#{$fa-css-prefix}-stack-2x {
68
- position: absolute;
80
+ // convenience mixins for declaring pseudo-elements by CSS variable,
81
+ // including all style-specific font properties, and both the ::before
82
+ // and ::after elements in the duotone case.
83
+ @mixin icon($var) {
84
+ @include m.fa-icon(Font Awesome 7 Sharp Duotone);
85
+ @extend .#{v.$css-prefix}-sharp-duotone;
86
+ @extend .#{v.$css-prefix}-regular;
87
+
88
+ &::before {
89
+ content: string.unquote("\"#{ $var }\"");
90
+ }
91
+
92
+ &::after {
93
+ content: string.unquote("\"#{ $var }\"");
94
+ font-feature-settings: "ss01";
95
+ }
69
96
  }
@@ -1,77 +1,96 @@
1
1
  /*!
2
- * Font Awesome Pro 6.7.2 by @fontawesome - https://fontawesome.com
2
+ * Font Awesome Pro 7.0.0 by @fontawesome - https://fontawesome.com
3
3
  * License - https://fontawesome.com/license (Commercial License)
4
- * Copyright 2024 Fonticons, Inc.
4
+ * Copyright 2025 Fonticons, Inc.
5
5
  */
6
- @import 'functions';
7
- @import 'variables';
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
8
9
 
9
10
  :root, :host {
10
- --#{$fa-css-prefix}-style-family-sharp-duotone: 'Font Awesome 6 Sharp Duotone';
11
- --#{$fa-css-prefix}-font-sharp-duotone-solid: normal 900 1em/1 'Font Awesome 6 Sharp Duotone';
11
+ --#{v.$css-prefix}-family-sharp-duotone: 'Font Awesome 7 Sharp Duotone';
12
+ --#{v.$css-prefix}-font-sharp-duotone-solid: normal 900 1em/1 var(--#{v.$css-prefix}-family-sharp-duotone);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-sharp-duotone: var(--#{v.$css-prefix}-family-sharp-duotone);
12
16
  }
13
17
 
14
18
  @font-face {
15
- font-family: 'Font Awesome 6 Sharp Duotone';
19
+ font-family: 'Font Awesome 7 Sharp Duotone';
16
20
  font-style: normal;
17
21
  font-weight: 900;
18
- font-display: $fa-font-display;
19
- src: url('#{$fa-font-path}/fa-sharp-duotone-solid-900.woff2') format('woff2'),
20
- url('#{$fa-font-path}/fa-sharp-duotone-solid-900.ttf') format('truetype');
22
+ font-display: v.$font-display;
23
+ src: url('#{v.$font-path}/fa-sharp-duotone-solid-900.woff2');
21
24
  }
22
25
 
23
- .fasds,
24
- .#{$fa-css-prefix}-sharp-duotone,
25
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid {
26
+
27
+ .fasds {
28
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-sharp-duotone);
29
+ --#{v.$css-prefix}-style: 900;
30
+ position: relative;
31
+ letter-spacing: normal;
32
+ }
33
+
34
+ .#{v.$css-prefix}-sharp-duotone {
35
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-sharp-duotone);
26
36
  position: relative;
27
- font-weight: 900;
28
37
  letter-spacing: normal;
29
38
  }
30
39
 
40
+ .#{v.$css-prefix}-solid {
41
+ --#{v.$css-prefix}-style: 900;
42
+ }
43
+
31
44
  .fasds::before,
32
- .#{$fa-css-prefix}-sharp-duotone::before,
33
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid::before {
45
+ .#{v.$css-prefix}-sharp-duotone::before {
34
46
  position: absolute;
35
- color: var(--#{$fa-css-prefix}-primary-color, inherit);
36
- opacity: var(--#{$fa-css-prefix}-primary-opacity, #{$fa-primary-opacity});
47
+ color: var(--#{v.$css-prefix}-primary-color, currentColor);
48
+ opacity: var(--#{v.$css-prefix}-primary-opacity, #{v.$primary-opacity});
37
49
  }
38
50
 
39
51
  .fasds::after,
40
- .#{$fa-css-prefix}-sharp-duotone::after,
41
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid::after {
42
- color: var(--#{$fa-css-prefix}-secondary-color, inherit);
43
- opacity: var(--#{$fa-css-prefix}-secondary-opacity, #{$fa-secondary-opacity});
52
+ .#{v.$css-prefix}-sharp-duotone::after {
53
+ color: var(--#{v.$css-prefix}-secondary-color, currentColor);
54
+ opacity: var(--#{v.$css-prefix}-secondary-opacity, #{v.$secondary-opacity});
44
55
  }
45
56
 
46
- .#{$fa-css-prefix}-swap-opacity .fasds::before,
47
- .#{$fa-css-prefix}-swap-opacity .#{$fa-css-prefix}-sharp-duotone::before,
48
- .#{$fa-css-prefix}-swap-opacity .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid::before,
49
- .fasds.#{$fa-css-prefix}-swap-opacity::before,
50
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-swap-opacity::before,
51
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid.#{$fa-css-prefix}-swap-opacity::before {
52
- opacity: var(--#{$fa-css-prefix}-secondary-opacity, #{$fa-secondary-opacity});
57
+ .#{v.$css-prefix}-swap-opacity .fasds::before,
58
+ .#{v.$css-prefix}-swap-opacity .#{v.$css-prefix}-sharp-duotone::before,
59
+ .#{v.$css-prefix}-swap-opacity.fasds::before,
60
+ .#{v.$css-prefix}-swap-opacity.#{v.$css-prefix}-sharp-duotone::before {
61
+ opacity: var(--#{v.$css-prefix}-secondary-opacity, #{v.$secondary-opacity});
53
62
  }
54
63
 
55
- .#{$fa-css-prefix}-swap-opacity .fasds::after,
56
- .#{$fa-css-prefix}-swap-opacity .#{$fa-css-prefix}-sharp-duotone::after,
57
- .#{$fa-css-prefix}-swap-opacity .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid::after,
58
- .fasds.#{$fa-css-prefix}-swap-opacity::after,
59
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-swap-opacity::after,
60
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid.#{$fa-css-prefix}-swap-opacity::after {
61
- opacity: var(--#{$fa-css-prefix}-primary-opacity, #{$fa-primary-opacity});
64
+ .#{v.$css-prefix}-swap-opacity .fasds::after,
65
+ .#{v.$css-prefix}-swap-opacity .#{v.$css-prefix}-sharp-duotone::after,
66
+ .#{v.$css-prefix}-swap-opacity.fasds::after,
67
+ .#{v.$css-prefix}-swap-opacity.#{v.$css-prefix}-sharp-duotone::after {
68
+ opacity: var(--#{v.$css-prefix}-primary-opacity, #{v.$primary-opacity});
62
69
  }
63
70
 
64
- .fasds.#{$fa-css-prefix}-inverse,
65
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-inverse,
66
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid.#{$fa-css-prefix}-inverse {
67
- color: var(--#{$fa-css-prefix}-inverse, $fa-inverse);
71
+ .#{v.$css-prefix}-li.fasds,
72
+ .#{v.$css-prefix}-li.#{v.$css-prefix}-sharp-duotone,
73
+ .#{v.$css-prefix}-stack-1x.fasds,
74
+ .#{v.$css-prefix}-stack-1x.#{v.$css-prefix}-sharp-duotone,
75
+ .#{v.$css-prefix}-stack-2x.fasds,
76
+ .#{v.$css-prefix}-stack-2x.#{v.$css-prefix}-sharp-duotone {
77
+ position: absolute;
68
78
  }
69
79
 
70
- .fasds.#{$fa-css-prefix}-stack-1x,
71
- .fasds.#{$fa-css-prefix}-stack-2x,
72
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-stack-1x,
73
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid.#{$fa-css-prefix}-stack-1x,
74
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-stack-2x,
75
- .#{$fa-css-prefix}-sharp-duotone.#{$fa-css-prefix}-solid.#{$fa-css-prefix}-stack-2x {
76
- position: absolute;
80
+ // convenience mixins for declaring pseudo-elements by CSS variable,
81
+ // including all style-specific font properties, and both the ::before
82
+ // and ::after elements in the duotone case.
83
+ @mixin icon($var) {
84
+ @include m.fa-icon(Font Awesome 7 Sharp Duotone);
85
+ @extend .#{v.$css-prefix}-sharp-duotone;
86
+ @extend .#{v.$css-prefix}-solid;
87
+
88
+ &::before {
89
+ content: string.unquote("\"#{ $var }\"");
90
+ }
91
+
92
+ &::after {
93
+ content: string.unquote("\"#{ $var }\"");
94
+ font-feature-settings: "ss01";
95
+ }
77
96
  }