diff --git a/src/lib/progress-bar/_progress-bar-theme.scss b/src/lib/progress-bar/_progress-bar-theme.scss
index 5e6e01c74e7..89a701b2b89 100644
--- a/src/lib/progress-bar/_progress-bar-theme.scss
+++ b/src/lib/progress-bar/_progress-bar-theme.scss
@@ -7,50 +7,19 @@
$accent: map-get($theme, accent);
$warn: map-get($theme, warn);
- // TODO(josephperrott): Find better way to inline svgs.
- // In buffer mode a repeated SVG object is used as a background.
- // Each of the following defines the SVG object for each of the class defined colors.
- //
- // Each string is a URL encoded version of:
- //
- //
- //
- $buffer-bubbles-primary-url: url(
- 'data:image/svg+xml;charset=UTF-8,%3Csvg%20version%3D%271.1%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27' +
- '%20xmlns%3Axlink%3D%27http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%27%20x%3D%270px%27%20y%3D%270px%27%20enable-backgroun' +
- 'd%3D%27new%200%200%205%202%27%20xml%3Aspace%3D%27preserve%27%20viewBox%3D%270%200%205%202%27%20preserveAspectRatio' +
- '%3D%27none%20slice%27%3E%3Ccircle%20cx%3D%271%27%20cy%3D%271%27%20r%3D%271%27%20fill%3D%27' +
- md-color($primary, 100) + '%27%2F%3E%3C%2Fsvg%3E') !default;
- $buffer-bubbles-accent-url: url(
- 'data:image/svg+xml;charset=UTF-8,%3Csvg%20version%3D%271.1%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27' +
- '%20xmlns%3Axlink%3D%27http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%27%20x%3D%270px%27%20y%3D%270px%27%20enable-backgroun' +
- 'd%3D%27new%200%200%205%202%27%20xml%3Aspace%3D%27preserve%27%20viewBox%3D%270%200%205%202%27%20preserveAspectRatio' +
- '%3D%27none%20slice%27%3E%3Ccircle%20cx%3D%271%27%20cy%3D%271%27%20r%3D%271%27%20fill%3D%27' +
- md-color($accent, 100) + '%27%2F%3E%3C%2Fsvg%3E') !default;
- $buffer-bubbles-warn-url: url(
- 'data:image/svg+xml;charset=UTF-8,%3Csvg%20version%3D%271.1%27%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27' +
- '%20xmlns%3Axlink%3D%27http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%27%20x%3D%270px%27%20y%3D%270px%27%20enable-backgroun' +
- 'd%3D%27new%200%200%205%202%27%20xml%3Aspace%3D%27preserve%27%20viewBox%3D%270%200%205%202%27%20preserveAspectRatio' +
- '%3D%27none%20slice%27%3E%3Ccircle%20cx%3D%271%27%20cy%3D%271%27%20r%3D%271%27%20fill%3D%27' +
- md-color($warn, 100) + '%27%2F%3E%3C%2Fsvg%3E') !default;
-
.md-progress-bar-background {
- background: $buffer-bubbles-primary-url;
+ background: #{_md-progress-bar-buffer($primary, 100)};
}
-
+
.md-progress-bar-buffer {
background-color: md-color($primary, 100);
}
-
+
md-progress-bar[color='accent'] {
.md-progress-bar-background {
- background: $buffer-bubbles-accent-url;
+ background: #{_md-progress-bar-buffer($accent, 100)};
}
-
+
.md-progress-bar-buffer {
background-color: md-color($accent, 100);
}
@@ -58,12 +27,12 @@
background-color: md-color($accent, 600);
}
}
-
+
md-progress-bar[color='warn'] {
.md-progress-bar-background {
- background: $buffer-bubbles-warn-url;
+ background: #{_md-progress-bar-buffer($warn, 100)};
}
-
+
.md-progress-bar-buffer {
background-color: md-color($warn, 100);
}
@@ -76,3 +45,26 @@
background-color: md-color($primary, 600);
}
}
+
+// TODO(josephperrott): Find better way to inline svgs.
+// In buffer mode a repeated SVG object is used as a background.
+// Each of the following defines the SVG object for each of the class defined colors.
+//
+// The string is a URL encoded version of:
+//
+//
+@function _md-progress-bar-buffer($palette, $hue) {
+ $result: '' +
+ 'data:image/svg+xml;charset=UTF-8,%3Csvg%20version%3D%271.1%27%20xmlns%3D%27http%3A%2F%2F' +
+ 'www.w3.org%2F2000%2Fsvg%27%20xmlns%3Axlink%3D%27http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%2' +
+ '7%20x%3D%270px%27%20y%3D%270px%27%20enable-background%3D%27new%200%200%205%202%27%20xml%' +
+ '3Aspace%3D%27preserve%27%20viewBox%3D%270%200%205%202%27%20preserveAspectRatio%3D%27none' +
+ '%20slice%27%3E%3Ccircle%20cx%3D%271%27%20cy%3D%271%27%20r%3D%271%27%20fill%3D%27' +
+ md-color($palette, $hue) + '%27%2F%3E%3C%2Fsvg%3E';
+
+ @return url($result);
+}