Skip to content

Commit d7efc04

Browse files
authored
Use styles from site-shared/dash_design (#8280)
1 parent 515b42d commit d7efc04

File tree

3 files changed

+29
-6
lines changed

3 files changed

+29
-6
lines changed

pkg/web_css/lib/src/_variables.scss

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,18 @@
1616
// - `[property]` may be `color`, `opacity` for specific values, or a `value` for multi-part properties.
1717

1818
:root {
19+
@include dash_variables.light-theme;
20+
1921
--pub-color-white: #ffffff;
2022
--pub-color-snowWhite: #fafafa; // slight deviation from official snow-white (fffafa)
2123
--pub-color-smokeWhite: #f5f5f7; // slight deviation from official white-smoke (f5f5f5)
2224
--pub-color-bubblesBlue: #e7f8ff; // slight deviation from official bubbles-blue (e7feff)
23-
--pub-color-gunpowderGray: #4a4a4a; // hsl(0, 0%, 29%);
2425

2526
--pub-color-dangerRed: #ff4242;
2627

2728
--pub-neutral-bgColor: var(--pub-color-white);
2829
--pub-neutral-borderColor: var(--pub-color-smokeWhite);
29-
--pub-neutral-textColor: var(--pub-color-gunpowderGray);
30+
--pub-neutral-textColor: var(--dash-surface-fgColor);
3031
--pub-neutral-hover-bgColor: var(--pub-color-snowWhite);
3132
--pub-inset-bgColor: var(--pub-color-smokeWhite);
3233
--pub-selected-bgColor: var(--pub-color-bubblesBlue);
@@ -115,15 +116,16 @@
115116
}
116117

117118
.dark-theme {
119+
@include dash_variables.dark-theme;
120+
118121
--pub-color-darkGunmetal: #1f262a; // close to #1d2026
119122
--pub-color-shadowBlack: #373737;
120123
--pub-color-anchorBlack: #41424c;
121124
--pub-color-nipponUltraBlue: #23607f;
122-
--pub-color-gainsboro: #dcdcdc;
123125

124126
--pub-neutral-bgColor: var(--pub-color-darkGunmetal);
125127
--pub-neutral-borderColor: var(--pub-color-anchorBlack);
126-
--pub-neutral-textColor: var(--pub-color-gainsboro);
128+
--pub-neutral-textColor: var(--dash-surface-fgColor);
127129
--pub-neutral-hover-bgColor: var(--pub-color-shadowBlack);
128130
--pub-inset-bgColor: var(--pub-color-anchorBlack);
129131
--pub-selected-bgColor: var(--pub-color-nipponUltraBlue);

pkg/web_css/lib/style.scss

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22
// to reduce the number of HTTP requests.
33
@use '../../../third_party/css/github-markdown.css';
44

5+
@use '../../../third_party/site-shared/dash_design/lib/styles/variables.scss' as dash_variables;
6+
57
.light-theme {
68
@import "../../../third_party/highlight/github";
79
}

pkg/web_css/test/variables_test.dart

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,33 @@ void main() {
3333
});
3434

3535
group('CSS variables', () {
36+
final dashVariables = <String>{};
3637
late Set<String> variables;
3738

38-
setUp(() async {
39-
variables = (await File('lib/src/_variables.scss').readAsLines())
39+
Iterable<String> extractVariables(List<String> lines) {
40+
return lines
4041
.map((l) => l.trim())
4142
.where((l) => l.startsWith('--') && l.contains(':'))
4243
.map((l) => l.split(':').first.trim())
4344
.where((v) => v.isNotEmpty)
4445
.toSet();
46+
}
47+
48+
setUpAll(() async {
49+
variables =
50+
extractVariables(await File('lib/src/_variables.scss').readAsLines())
51+
.toSet();
4552

4653
// remove Material design variables
4754
variables.removeWhere((v) => v.startsWith('--mdc-'));
55+
56+
for (final f
57+
in Directory('../../third_party/site-shared/dash_design/lib/')
58+
.listSync(recursive: true)
59+
.whereType<File>()
60+
.where((f) => f.path.endsWith('.scss'))) {
61+
dashVariables.addAll(extractVariables(f.readAsLinesSync()));
62+
}
4863
});
4964

5065
test('variables are present', () {
@@ -92,6 +107,10 @@ void main() {
92107
if (name.startsWith('--mdc-')) {
93108
continue;
94109
}
110+
// exempt known dash variables
111+
if (name.startsWith('--dash-') && dashVariables.contains(name)) {
112+
continue;
113+
}
95114

96115
fail('${file.path} references `$name` without definition.');
97116
}

0 commit comments

Comments
 (0)