@carbon/themes 10.27.0-rc.0 → 10.28.0

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.
package/README.md CHANGED
@@ -108,11 +108,12 @@ import {
108
108
  } from '@carbon/themes';
109
109
  ```
110
110
 
111
- ## 📖 API Documentation
111
+ ## 📚 Examples
112
112
 
113
- If you're looking for `@carbon/themes` API documentation, check out:
113
+ If you're looking for more examples on how to use `@carbon/themes`, we have some
114
+ examples that you can check out:
114
115
 
115
- - [Sass](./docs/sass.md)
116
+ - [sass-modules](./examples/sass-modules)
116
117
 
117
118
  ## 🙌 Contributing
118
119
 
package/es/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import Color from 'color';
2
- import { blue60, gray80, white as white$1, gray10, gray20, gray50, gray100, gray70, gray40, gray60, red60, blue40, green50, yellow, blue70, red50, green40, blue50, rgba, blue80, gray30, red80, purple60, blue20, blue10, gray90, red40, blue30, purple40, red30 } from '@carbon/colors';
2
+ import { blue60, gray80, white as white$1, gray10, gray20, gray50, gray100, gray70, gray40, gray60, red60, blue70, blue40, green50, yellow, red50, green40, blue50, rgba, blue80, gray30, red80, purple60, blue20, blue10, gray90, red40, blue30, purple40, red30 } from '@carbon/colors';
3
3
  import { caption01, label01, helperText01, bodyShort01, bodyLong01, bodyShort02, bodyLong02, code01, code02, heading01, productiveHeading01, heading02, productiveHeading02, productiveHeading03, productiveHeading04, productiveHeading05, productiveHeading06, productiveHeading07, expressiveHeading01, expressiveHeading02, expressiveHeading03, expressiveHeading04, expressiveHeading05, expressiveHeading06, expressiveParagraph01, quotation01, quotation02, display01, display02, display03, display04, unstable_tokens } from '@carbon/type';
4
4
  export { bodyLong01, bodyLong02, bodyShort01, bodyShort02, caption01, code01, code02, display01, display02, display03, display04, expressiveHeading01, expressiveHeading02, expressiveHeading03, expressiveHeading04, expressiveHeading05, expressiveHeading06, expressiveParagraph01, heading01, heading02, helperText01, label01, productiveHeading01, productiveHeading02, productiveHeading03, productiveHeading04, productiveHeading05, productiveHeading06, productiveHeading07, quotation01, quotation02 } from '@carbon/type';
5
5
  import { spacing01, spacing02, spacing03, spacing04, spacing05, spacing06, spacing07, spacing08, spacing09, spacing10, spacing11, spacing12, fluidSpacing01, fluidSpacing02, fluidSpacing03, fluidSpacing04, layout01, layout02, layout03, layout04, layout05, layout06, layout07, container01, container02, container03, container04, container05, iconSize01, iconSize02, unstable_tokens as unstable_tokens$1 } from '@carbon/layout';
@@ -97,6 +97,7 @@ var icon01 = gray100;
97
97
  var icon02 = gray70;
98
98
  var icon03 = white$1;
99
99
  var link01 = blue60;
100
+ var link02 = blue70;
100
101
  var inverseLink = blue40;
101
102
  var field01 = gray10;
102
103
  var field02 = white$1;
@@ -173,6 +174,7 @@ var white = /*#__PURE__*/Object.freeze({
173
174
  icon02: icon02,
174
175
  icon03: icon03,
175
176
  link01: link01,
177
+ link02: link02,
176
178
  inverseLink: inverseLink,
177
179
  field01: field01,
178
180
  field02: field02,
@@ -313,6 +315,7 @@ var icon01$1 = gray100;
313
315
  var icon02$1 = gray70;
314
316
  var icon03$1 = white$1;
315
317
  var link01$1 = blue60;
318
+ var link02$1 = blue70;
316
319
  var inverseLink$1 = blue40;
317
320
  var field01$1 = white$1;
318
321
  var field02$1 = gray10;
@@ -389,6 +392,7 @@ var g10 = /*#__PURE__*/Object.freeze({
389
392
  icon02: icon02$1,
390
393
  icon03: icon03$1,
391
394
  link01: link01$1,
395
+ link02: link02$1,
392
396
  inverseLink: inverseLink$1,
393
397
  field01: field01$1,
394
398
  field02: field02$1,
@@ -529,6 +533,7 @@ var icon01$2 = gray10;
529
533
  var icon02$2 = gray30;
530
534
  var icon03$2 = white$1;
531
535
  var link01$2 = blue40;
536
+ var link02$2 = blue30;
532
537
  var inverseLink$2 = blue60;
533
538
  var field01$2 = gray90;
534
539
  var field02$2 = gray80;
@@ -574,7 +579,7 @@ var highlight$2 = blue80;
574
579
  var decorative01$2 = gray70;
575
580
  var buttonSeparator$2 = '#161616';
576
581
  var skeleton01$2 = '#353535';
577
- var skeleton02$2 = gray80;
582
+ var skeleton02$2 = gray70;
578
583
 
579
584
  var brand01$2 = interactive01$2;
580
585
  var brand02$2 = interactive02$2;
@@ -605,6 +610,7 @@ var g100 = /*#__PURE__*/Object.freeze({
605
610
  icon02: icon02$2,
606
611
  icon03: icon03$2,
607
612
  link01: link01$2,
613
+ link02: link02$2,
608
614
  inverseLink: inverseLink$2,
609
615
  field01: field01$2,
610
616
  field02: field02$2,
@@ -745,6 +751,7 @@ var icon01$3 = gray10;
745
751
  var icon02$3 = gray30;
746
752
  var icon03$3 = white$1;
747
753
  var link01$3 = blue40;
754
+ var link02$3 = blue30;
748
755
  var inverseLink$3 = blue60;
749
756
  var field01$3 = gray80;
750
757
  var field02$3 = gray70;
@@ -821,6 +828,7 @@ var g90 = /*#__PURE__*/Object.freeze({
821
828
  icon02: icon02$3,
822
829
  icon03: icon03$3,
823
830
  link01: link01$3,
831
+ link02: link02$3,
824
832
  inverseLink: inverseLink$3,
825
833
  field01: field01$3,
826
834
  field02: field02$3,
@@ -961,6 +969,7 @@ var icon01$4 = '#3d70b2';
961
969
  var icon02$4 = '#5a6872';
962
970
  var icon03$4 = white$1;
963
971
  var link01$4 = '#3d70b2';
972
+ var link02$4 = '#3d70b2';
964
973
  var inverseLink$4 = '#5596e6';
965
974
  var field01$4 = white$1;
966
975
  var field02$4 = '#f4f7fb';
@@ -1037,6 +1046,7 @@ var v9 = /*#__PURE__*/Object.freeze({
1037
1046
  icon02: icon02$4,
1038
1047
  icon03: icon03$4,
1039
1048
  link01: link01$4,
1049
+ link02: link02$4,
1040
1050
  inverseLink: inverseLink$4,
1041
1051
  field01: field01$4,
1042
1052
  field02: field02$4,
@@ -1160,7 +1170,7 @@ var v9 = /*#__PURE__*/Object.freeze({
1160
1170
  // exported as in JavaScript
1161
1171
 
1162
1172
  var colors = [// Core
1163
- 'interactive01', 'interactive02', 'interactive03', 'interactive04', 'uiBackground', 'ui01', 'ui02', 'ui03', 'ui04', 'ui05', 'text01', 'text02', 'text03', 'text04', 'text05', 'textError', 'icon01', 'icon02', 'icon03', 'link01', 'inverseLink', 'field01', 'field02', 'inverse01', 'inverse02', 'support01', 'support02', 'support03', 'support04', 'inverseSupport01', 'inverseSupport02', 'inverseSupport03', 'inverseSupport04', 'overlay01', 'danger01', 'danger02', // Interactive states
1173
+ 'interactive01', 'interactive02', 'interactive03', 'interactive04', 'uiBackground', 'ui01', 'ui02', 'ui03', 'ui04', 'ui05', 'text01', 'text02', 'text03', 'text04', 'text05', 'textError', 'icon01', 'icon02', 'icon03', 'link01', 'link02', 'inverseLink', 'field01', 'field02', 'inverse01', 'inverse02', 'support01', 'support02', 'support03', 'support04', 'inverseSupport01', 'inverseSupport02', 'inverseSupport03', 'inverseSupport04', 'overlay01', 'danger01', 'danger02', // Interactive states
1164
1174
  'focus', 'inverseFocusUi', 'hoverPrimary', 'activePrimary', 'hoverPrimaryText', 'hoverSecondary', 'activeSecondary', 'hoverTertiary', 'activeTertiary', 'hoverUI', 'hoverLightUI', 'hoverSelectedUI', 'activeUI', 'activeLightUI', 'selectedUI', 'selectedLightUI', 'inverseHoverUI', 'hoverDanger', 'activeDanger', 'hoverRow', 'visitedLink', 'disabled01', 'disabled02', 'disabled03', 'highlight', 'decorative01', 'buttonSeparator', 'skeleton01', 'skeleton02', // Deprecated
1165
1175
  'brand01', 'brand02', 'brand03', 'active01', 'hoverField', 'danger'];
1166
1176
  var numbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];
@@ -1210,7 +1220,7 @@ var tokens = {
1210
1220
  var unstable__meta = {
1211
1221
  colors: [{
1212
1222
  type: 'core',
1213
- tokens: ['uiBackground', 'interactive01', 'interactive02', 'interactive03', 'interactive04', 'brand01', 'brand02', 'brand03', 'danger', 'danger01', 'danger02', 'ui01', 'ui02', 'ui03', 'ui04', 'ui05', 'text01', 'text02', 'text03', 'text04', 'text05', 'textError', 'link01', 'icon01', 'icon02', 'icon03', 'field01', 'field02', 'inverse01', 'inverse02', 'inverseLink', 'support01', 'support02', 'support03', 'support04', 'inverseSupport01', 'inverseSupport02', 'inverseSupport03', 'inverseSupport04', 'overlay01']
1223
+ tokens: ['uiBackground', 'interactive01', 'interactive02', 'interactive03', 'interactive04', 'brand01', 'brand02', 'brand03', 'danger', 'danger01', 'danger02', 'ui01', 'ui02', 'ui03', 'ui04', 'ui05', 'text01', 'text02', 'text03', 'text04', 'text05', 'textError', 'link01', 'link02', 'icon01', 'icon02', 'icon03', 'field01', 'field02', 'inverse01', 'inverse02', 'inverseLink', 'support01', 'support02', 'support03', 'support04', 'inverseSupport01', 'inverseSupport02', 'inverseSupport03', 'inverseSupport04', 'overlay01']
1214
1224
  }, {
1215
1225
  type: 'interactive',
1216
1226
  tokens: ['focus', 'inverseFocusUi', 'hoverPrimary', 'hoverPrimaryText', 'hoverSecondary', 'hoverTertiary', 'hoverUI', 'hoverLightUI', 'hoverSelectedUI', 'hoverDanger', 'hoverRow', 'activePrimary', 'activeSecondary', 'activeTertiary', 'activeUI', 'activeLightUI', 'activeDanger', 'selectedUI', 'selectedLightUI', 'highlight', 'skeleton01', 'skeleton02', 'visitedLink', 'disabled01', 'disabled02', 'disabled03', 'inverseHoverUI', 'active01', 'hoverField', 'decorative01', 'buttonSeparator']
@@ -1232,4 +1242,4 @@ var themes = {
1232
1242
  v9: v9
1233
1243
  };
1234
1244
 
1235
- export { active01, activeDanger, activeLightUI, activePrimary, activeSecondary, activeTertiary, activeUI, brand01, brand02, brand03, buttonSeparator, danger, danger01, danger02, decorative01, disabled01, disabled02, disabled03, field01, field02, focus, formatTokenName, g10, g100, g90, highlight, hoverDanger, hoverField, hoverLightUI, hoverPrimary, hoverPrimaryText, hoverRow, hoverSecondary, hoverSelectedUI, hoverTertiary, hoverUI, icon01, icon02, icon03, interactive01, interactive02, interactive03, interactive04, inverse01, inverse02, inverseFocusUi, inverseHoverUI, inverseLink, inverseSupport01, inverseSupport02, inverseSupport03, inverseSupport04, link01, overlay01, selectedLightUI, selectedUI, skeleton01, skeleton02, support01, support02, support03, support04, text01, text02, text03, text04, text05, textError, themes, tokens, ui01, ui02, ui03, ui04, ui05, uiBackground, unstable__meta, v9, visitedLink, white };
1245
+ export { active01, activeDanger, activeLightUI, activePrimary, activeSecondary, activeTertiary, activeUI, brand01, brand02, brand03, buttonSeparator, danger, danger01, danger02, decorative01, disabled01, disabled02, disabled03, field01, field02, focus, formatTokenName, g10, g100, g90, highlight, hoverDanger, hoverField, hoverLightUI, hoverPrimary, hoverPrimaryText, hoverRow, hoverSecondary, hoverSelectedUI, hoverTertiary, hoverUI, icon01, icon02, icon03, interactive01, interactive02, interactive03, interactive04, inverse01, inverse02, inverseFocusUi, inverseHoverUI, inverseLink, inverseSupport01, inverseSupport02, inverseSupport03, inverseSupport04, link01, link02, overlay01, selectedLightUI, selectedUI, skeleton01, skeleton02, support01, support02, support03, support04, text01, text02, text03, text04, text05, textError, themes, tokens, ui01, ui02, ui03, ui04, ui05, uiBackground, unstable__meta, v9, visitedLink, white };
package/index.scss ADDED
@@ -0,0 +1,9 @@
1
+ //
2
+ // Copyright IBM Corp. 2018, 2018
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @forward 'scss/modules/themes';
9
+ @forward 'scss/modules/theme';
package/lib/index.js CHANGED
@@ -103,6 +103,7 @@ var icon01 = colors$1.gray100;
103
103
  var icon02 = colors$1.gray70;
104
104
  var icon03 = colors$1.white;
105
105
  var link01 = colors$1.blue60;
106
+ var link02 = colors$1.blue70;
106
107
  var inverseLink = colors$1.blue40;
107
108
  var field01 = colors$1.gray10;
108
109
  var field02 = colors$1.white;
@@ -179,6 +180,7 @@ var white = /*#__PURE__*/Object.freeze({
179
180
  icon02: icon02,
180
181
  icon03: icon03,
181
182
  link01: link01,
183
+ link02: link02,
182
184
  inverseLink: inverseLink,
183
185
  field01: field01,
184
186
  field02: field02,
@@ -319,6 +321,7 @@ var icon01$1 = colors$1.gray100;
319
321
  var icon02$1 = colors$1.gray70;
320
322
  var icon03$1 = colors$1.white;
321
323
  var link01$1 = colors$1.blue60;
324
+ var link02$1 = colors$1.blue70;
322
325
  var inverseLink$1 = colors$1.blue40;
323
326
  var field01$1 = colors$1.white;
324
327
  var field02$1 = colors$1.gray10;
@@ -395,6 +398,7 @@ var g10 = /*#__PURE__*/Object.freeze({
395
398
  icon02: icon02$1,
396
399
  icon03: icon03$1,
397
400
  link01: link01$1,
401
+ link02: link02$1,
398
402
  inverseLink: inverseLink$1,
399
403
  field01: field01$1,
400
404
  field02: field02$1,
@@ -535,6 +539,7 @@ var icon01$2 = colors$1.gray10;
535
539
  var icon02$2 = colors$1.gray30;
536
540
  var icon03$2 = colors$1.white;
537
541
  var link01$2 = colors$1.blue40;
542
+ var link02$2 = colors$1.blue30;
538
543
  var inverseLink$2 = colors$1.blue60;
539
544
  var field01$2 = colors$1.gray90;
540
545
  var field02$2 = colors$1.gray80;
@@ -580,7 +585,7 @@ var highlight$2 = colors$1.blue80;
580
585
  var decorative01$2 = colors$1.gray70;
581
586
  var buttonSeparator$2 = '#161616';
582
587
  var skeleton01$2 = '#353535';
583
- var skeleton02$2 = colors$1.gray80;
588
+ var skeleton02$2 = colors$1.gray70;
584
589
 
585
590
  var brand01$2 = interactive01$2;
586
591
  var brand02$2 = interactive02$2;
@@ -611,6 +616,7 @@ var g100 = /*#__PURE__*/Object.freeze({
611
616
  icon02: icon02$2,
612
617
  icon03: icon03$2,
613
618
  link01: link01$2,
619
+ link02: link02$2,
614
620
  inverseLink: inverseLink$2,
615
621
  field01: field01$2,
616
622
  field02: field02$2,
@@ -751,6 +757,7 @@ var icon01$3 = colors$1.gray10;
751
757
  var icon02$3 = colors$1.gray30;
752
758
  var icon03$3 = colors$1.white;
753
759
  var link01$3 = colors$1.blue40;
760
+ var link02$3 = colors$1.blue30;
754
761
  var inverseLink$3 = colors$1.blue60;
755
762
  var field01$3 = colors$1.gray80;
756
763
  var field02$3 = colors$1.gray70;
@@ -827,6 +834,7 @@ var g90 = /*#__PURE__*/Object.freeze({
827
834
  icon02: icon02$3,
828
835
  icon03: icon03$3,
829
836
  link01: link01$3,
837
+ link02: link02$3,
830
838
  inverseLink: inverseLink$3,
831
839
  field01: field01$3,
832
840
  field02: field02$3,
@@ -967,6 +975,7 @@ var icon01$4 = '#3d70b2';
967
975
  var icon02$4 = '#5a6872';
968
976
  var icon03$4 = colors$1.white;
969
977
  var link01$4 = '#3d70b2';
978
+ var link02$4 = '#3d70b2';
970
979
  var inverseLink$4 = '#5596e6';
971
980
  var field01$4 = colors$1.white;
972
981
  var field02$4 = '#f4f7fb';
@@ -1043,6 +1052,7 @@ var v9 = /*#__PURE__*/Object.freeze({
1043
1052
  icon02: icon02$4,
1044
1053
  icon03: icon03$4,
1045
1054
  link01: link01$4,
1055
+ link02: link02$4,
1046
1056
  inverseLink: inverseLink$4,
1047
1057
  field01: field01$4,
1048
1058
  field02: field02$4,
@@ -1166,7 +1176,7 @@ var v9 = /*#__PURE__*/Object.freeze({
1166
1176
  // exported as in JavaScript
1167
1177
 
1168
1178
  var colors = [// Core
1169
- 'interactive01', 'interactive02', 'interactive03', 'interactive04', 'uiBackground', 'ui01', 'ui02', 'ui03', 'ui04', 'ui05', 'text01', 'text02', 'text03', 'text04', 'text05', 'textError', 'icon01', 'icon02', 'icon03', 'link01', 'inverseLink', 'field01', 'field02', 'inverse01', 'inverse02', 'support01', 'support02', 'support03', 'support04', 'inverseSupport01', 'inverseSupport02', 'inverseSupport03', 'inverseSupport04', 'overlay01', 'danger01', 'danger02', // Interactive states
1179
+ 'interactive01', 'interactive02', 'interactive03', 'interactive04', 'uiBackground', 'ui01', 'ui02', 'ui03', 'ui04', 'ui05', 'text01', 'text02', 'text03', 'text04', 'text05', 'textError', 'icon01', 'icon02', 'icon03', 'link01', 'link02', 'inverseLink', 'field01', 'field02', 'inverse01', 'inverse02', 'support01', 'support02', 'support03', 'support04', 'inverseSupport01', 'inverseSupport02', 'inverseSupport03', 'inverseSupport04', 'overlay01', 'danger01', 'danger02', // Interactive states
1170
1180
  'focus', 'inverseFocusUi', 'hoverPrimary', 'activePrimary', 'hoverPrimaryText', 'hoverSecondary', 'activeSecondary', 'hoverTertiary', 'activeTertiary', 'hoverUI', 'hoverLightUI', 'hoverSelectedUI', 'activeUI', 'activeLightUI', 'selectedUI', 'selectedLightUI', 'inverseHoverUI', 'hoverDanger', 'activeDanger', 'hoverRow', 'visitedLink', 'disabled01', 'disabled02', 'disabled03', 'highlight', 'decorative01', 'buttonSeparator', 'skeleton01', 'skeleton02', // Deprecated
1171
1181
  'brand01', 'brand02', 'brand03', 'active01', 'hoverField', 'danger'];
1172
1182
  var numbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];
@@ -1216,7 +1226,7 @@ var tokens = {
1216
1226
  var unstable__meta = {
1217
1227
  colors: [{
1218
1228
  type: 'core',
1219
- tokens: ['uiBackground', 'interactive01', 'interactive02', 'interactive03', 'interactive04', 'brand01', 'brand02', 'brand03', 'danger', 'danger01', 'danger02', 'ui01', 'ui02', 'ui03', 'ui04', 'ui05', 'text01', 'text02', 'text03', 'text04', 'text05', 'textError', 'link01', 'icon01', 'icon02', 'icon03', 'field01', 'field02', 'inverse01', 'inverse02', 'inverseLink', 'support01', 'support02', 'support03', 'support04', 'inverseSupport01', 'inverseSupport02', 'inverseSupport03', 'inverseSupport04', 'overlay01']
1229
+ tokens: ['uiBackground', 'interactive01', 'interactive02', 'interactive03', 'interactive04', 'brand01', 'brand02', 'brand03', 'danger', 'danger01', 'danger02', 'ui01', 'ui02', 'ui03', 'ui04', 'ui05', 'text01', 'text02', 'text03', 'text04', 'text05', 'textError', 'link01', 'link02', 'icon01', 'icon02', 'icon03', 'field01', 'field02', 'inverse01', 'inverse02', 'inverseLink', 'support01', 'support02', 'support03', 'support04', 'inverseSupport01', 'inverseSupport02', 'inverseSupport03', 'inverseSupport04', 'overlay01']
1220
1230
  }, {
1221
1231
  type: 'interactive',
1222
1232
  tokens: ['focus', 'inverseFocusUi', 'hoverPrimary', 'hoverPrimaryText', 'hoverSecondary', 'hoverTertiary', 'hoverUI', 'hoverLightUI', 'hoverSelectedUI', 'hoverDanger', 'hoverRow', 'activePrimary', 'activeSecondary', 'activeTertiary', 'activeUI', 'activeLightUI', 'activeDanger', 'selectedUI', 'selectedLightUI', 'highlight', 'skeleton01', 'skeleton02', 'visitedLink', 'disabled01', 'disabled02', 'disabled03', 'inverseHoverUI', 'active01', 'hoverField', 'decorative01', 'buttonSeparator']
@@ -1657,6 +1667,7 @@ exports.inverseSupport02 = inverseSupport02;
1657
1667
  exports.inverseSupport03 = inverseSupport03;
1658
1668
  exports.inverseSupport04 = inverseSupport04;
1659
1669
  exports.link01 = link01;
1670
+ exports.link02 = link02;
1660
1671
  exports.overlay01 = overlay01;
1661
1672
  exports.selectedLightUI = selectedLightUI;
1662
1673
  exports.selectedUI = selectedUI;
package/metadata.yml CHANGED
@@ -73,6 +73,9 @@ tokens:
73
73
  role:
74
74
  - Primary links
75
75
  - Ghost button
76
+ - name: link02
77
+ role:
78
+ - Secondary link color for lower contrast backgrounds
76
79
  - name: field01
77
80
  role:
78
81
  - Default input fields
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/themes",
3
3
  "description": "Themes for applying color in the Carbon Design System",
4
- "version": "10.27.0-rc.0",
4
+ "version": "10.28.0",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -24,20 +24,21 @@
24
24
  "access": "public"
25
25
  },
26
26
  "scripts": {
27
+ "ci-check": "carbon-cli check \"scss/**/*.scss\" -i \"**/generated/**\"",
27
28
  "clean": "rimraf es lib umd scss/generated",
28
- "build": "yarn clean && carbon-cli bundle src/index.js --name CarbonThemes && node tasks/build.js && carbon-cli check \"scss/*.scss\" && carbon-cli sassdoc \"scss/**/*.scss\""
29
+ "build": "yarn clean && carbon-cli bundle src/index.js --name CarbonThemes && node tasks/build.js && carbon-cli check \"scss/*.scss\""
29
30
  },
30
31
  "dependencies": {
31
- "@carbon/colors": "^10.20.0-rc.0",
32
- "@carbon/layout": "^10.18.0-rc.0",
33
- "@carbon/type": "^10.21.0-rc.0",
32
+ "@carbon/colors": "^10.21.0",
33
+ "@carbon/layout": "^10.19.0",
34
+ "@carbon/type": "^10.22.0",
34
35
  "color": "^3.1.2"
35
36
  },
36
37
  "devDependencies": {
37
- "@carbon/cli": "^10.19.0-rc.0",
38
+ "@carbon/cli": "^10.20.0",
38
39
  "@carbon/cli-reporter": "^10.4.0",
39
- "@carbon/scss-generator": "^10.12.0",
40
- "@carbon/test-utils": "^10.14.0",
40
+ "@carbon/scss-generator": "^10.13.0",
41
+ "@carbon/test-utils": "^10.15.0",
41
42
  "change-case": "^4.1.1",
42
43
  "core-js": "^3.6.5",
43
44
  "fs-extra": "^8.1.0",
@@ -45,5 +46,5 @@
45
46
  "node-sass": "^4.13.1",
46
47
  "rimraf": "^3.0.0"
47
48
  },
48
- "gitHead": "f20d953bfdd69fd024f2b202fd7e62f3139d431c"
49
+ "gitHead": "f4f5ac5a33f77b799d9e4533287db8912e40cd1b"
49
50
  }
@@ -58,6 +58,7 @@
58
58
  $icon-02: map-get($theme, 'icon-02') !global;
59
59
  $icon-03: map-get($theme, 'icon-03') !global;
60
60
  $link-01: map-get($theme, 'link-01') !global;
61
+ $link-02: map-get($theme, 'link-02') !global;
61
62
  $inverse-link: map-get($theme, 'inverse-link') !global;
62
63
  $field-01: map-get($theme, 'field-01') !global;
63
64
  $field-02: map-get($theme, 'field-02') !global;
@@ -254,6 +255,10 @@
254
255
  --#{$custom-property-prefix}-link-01,
255
256
  map-get($theme, 'link-01')
256
257
  ) !global;
258
+ $link-02: var(
259
+ --#{$custom-property-prefix}-link-02,
260
+ map-get($theme, 'link-02')
261
+ ) !global;
257
262
  $inverse-link: var(
258
263
  --#{$custom-property-prefix}-inverse-link,
259
264
  map-get($theme, 'inverse-link')
@@ -711,6 +716,10 @@
711
716
  @include custom-property('link-01', map-get($theme, 'link-01'));
712
717
  }
713
718
 
719
+ @if should-emit($theme, $parent-carbon-theme, 'link-02', $emit-difference) {
720
+ @include custom-property('link-02', map-get($theme, 'link-02'));
721
+ }
722
+
714
723
  @if should-emit(
715
724
  $theme,
716
725
  $parent-carbon-theme,
@@ -27,6 +27,7 @@ $carbon--theme--white: (
27
27
  icon-02: #525252,
28
28
  icon-03: #ffffff,
29
29
  link-01: #0f62fe,
30
+ link-02: #0043ce,
30
31
  inverse-link: #78a9ff,
31
32
  field-01: #f4f4f4,
32
33
  field-02: #ffffff,
@@ -303,13 +304,15 @@ $carbon--theme--white: (
303
304
  font-weight: 300,
304
305
  line-height: 1.334,
305
306
  letter-spacing: 0,
306
- lg: (
307
- font-size: 1.75rem,
308
- line-height: 1.29,
309
- ),
310
- max: (
311
- font-size: 2rem,
312
- line-height: 1.25,
307
+ breakpoints: (
308
+ lg: (
309
+ font-size: 1.75rem,
310
+ line-height: 1.29,
311
+ ),
312
+ max: (
313
+ font-size: 2rem,
314
+ line-height: 1.25,
315
+ ),
313
316
  ),
314
317
  ),
315
318
  quotation-01: (
@@ -535,6 +538,7 @@ $carbon--theme--g90: map-merge(
535
538
  icon-01: #f4f4f4,
536
539
  icon-02: #c6c6c6,
537
540
  link-01: #78a9ff,
541
+ link-02: #a6c8ff,
538
542
  inverse-link: #0f62fe,
539
543
  field-01: #393939,
540
544
  field-02: #525252,
@@ -604,6 +608,7 @@ $carbon--theme--g100: map-merge(
604
608
  icon-01: #f4f4f4,
605
609
  icon-02: #c6c6c6,
606
610
  link-01: #78a9ff,
611
+ link-02: #a6c8ff,
607
612
  inverse-link: #0f62fe,
608
613
  field-01: #262626,
609
614
  field-02: #393939,
@@ -640,7 +645,7 @@ $carbon--theme--g100: map-merge(
640
645
  decorative-01: #525252,
641
646
  button-separator: #161616,
642
647
  skeleton-01: #353535,
643
- skeleton-02: #393939,
648
+ skeleton-02: #525252,
644
649
  brand-02: #6f6f6f,
645
650
  brand-03: #ffffff,
646
651
  active-01: #525252,
@@ -673,6 +678,7 @@ $carbon--theme--v9: map-merge(
673
678
  icon-01: #3d70b2,
674
679
  icon-02: #5a6872,
675
680
  link-01: #3d70b2,
681
+ link-02: #3d70b2,
676
682
  inverse-link: #5596e6,
677
683
  field-01: #ffffff,
678
684
  field-02: #f4f7fb,
@@ -847,6 +853,12 @@ $carbon--theme: (
847
853
  $link-01,
848
854
  map-get($carbon--theme--white, 'link-01')
849
855
  ),
856
+ link-02:
857
+ if(
858
+ global-variable-exists('link-02'),
859
+ $link-02,
860
+ map-get($carbon--theme--white, 'link-02')
861
+ ),
850
862
  inverse-link:
851
863
  if(
852
864
  global-variable-exists('inverse-link'),
@@ -224,6 +224,17 @@ $link-01: if(
224
224
  #0f62fe
225
225
  ) !default;
226
226
 
227
+ /// Secondary link color for lower contrast backgrounds
228
+ /// @type {undefined}
229
+ /// @access public
230
+ /// @group @carbon/themes
231
+ $link-02: if(
232
+ global-variable-exists('carbon--theme') and
233
+ map-has-key($carbon--theme, 'link-02'),
234
+ map-get($carbon--theme, 'link-02'),
235
+ #0043ce
236
+ ) !default;
237
+
227
238
  /// @type {undefined}
228
239
  /// @access public
229
240
  /// @group @carbon/themes
@@ -1227,13 +1238,15 @@ $expressive-paragraph-01: if(
1227
1238
  font-weight: 300,
1228
1239
  line-height: 1.334,
1229
1240
  letter-spacing: 0,
1230
- lg: (
1231
- font-size: 1.75rem,
1232
- line-height: 1.29,
1233
- ),
1234
- max: (
1235
- font-size: 2rem,
1236
- line-height: 1.25,
1241
+ breakpoints: (
1242
+ lg: (
1243
+ font-size: 1.75rem,
1244
+ line-height: 1.29,
1245
+ ),
1246
+ max: (
1247
+ font-size: 2rem,
1248
+ line-height: 1.25,
1249
+ ),
1237
1250
  ),
1238
1251
  )
1239
1252
  ) !default;
@@ -0,0 +1,50 @@
1
+ //
2
+ // Copyright IBM Corp. 2018, 2018
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @use 'sass:map';
9
+ @use 'sass:meta';
10
+ @use 'themes';
11
+
12
+ $theme: themes.$white !default;
13
+ $-custom-property-prefix: 'cds';
14
+
15
+ /// @access public
16
+ /// @group @carbon/themes
17
+ @mixin theme($active-theme: $theme) {
18
+ $parent-theme: $theme;
19
+ $theme: $active-theme !global;
20
+
21
+ @each $token, $value in $theme {
22
+ @include -custom-property($token, $value);
23
+ }
24
+
25
+ @content;
26
+
27
+ $theme: $parent-theme !global;
28
+ }
29
+
30
+ /// @access public
31
+ /// @group @carbon/themes
32
+ @mixin set($active-theme) {
33
+ $theme: $active-theme !global;
34
+ }
35
+
36
+ /// @access private
37
+ /// @group @carbon/themes
38
+ @mixin -custom-property($name, $value, $prefix: $-custom-property-prefix) {
39
+ @if meta.type-of($value) == map {
40
+ @each $property, $property-value in $value {
41
+ // Only support one-level of depth for values that are maps. This is to
42
+ // avoid bringing properties like `breakpoints` on type tokens
43
+ @if type-of($property-value) != map {
44
+ @include -custom-property('#{$name}-#{$property}', $property-value);
45
+ }
46
+ }
47
+ } @else {
48
+ --#{$prefix}-#{$name}: #{$value};
49
+ }
50
+ }
@@ -0,0 +1,8 @@
1
+ //
2
+ // Copyright IBM Corp. 2018, 2018
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @forward 'generated/themes';
@@ -0,0 +1,18 @@
1
+ //
2
+ // Copyright IBM Corp. 2018, 2018
3
+ //
4
+ // This source code is licensed under the Apache-2.0 license found in the
5
+ // LICENSE file in the root directory of this source tree.
6
+ //
7
+
8
+ @use 'sass:map';
9
+
10
+ /// @access private
11
+ /// @group @carbon/themes
12
+ @function merge($map, $maps...) {
13
+ $result: $map;
14
+ @each $map in $maps {
15
+ $result: map.merge($result, $map);
16
+ }
17
+ @return $result;
18
+ }