diff --git a/assets/components/atoms/progress/progress-height.twig b/assets/components/atoms/progress/progress-height.twig new file mode 100644 index 000000000..482396dfc --- /dev/null +++ b/assets/components/atoms/progress/progress-height.twig @@ -0,0 +1,6 @@ +
+ +
+
+ +
diff --git a/assets/components/atoms/progress/progress-indeterminate.twig b/assets/components/atoms/progress/progress-indeterminate.twig new file mode 100644 index 000000000..afb52cfc2 --- /dev/null +++ b/assets/components/atoms/progress/progress-indeterminate.twig @@ -0,0 +1 @@ + diff --git a/assets/components/atoms/progress/progress.scss b/assets/components/atoms/progress/progress.scss new file mode 100644 index 000000000..13d5e8417 --- /dev/null +++ b/assets/components/atoms/progress/progress.scss @@ -0,0 +1,54 @@ +@charset 'utf-8'; + +progress { + display: block; + width: 100%; + border: 0; + border-radius: 0; + background-color: $gray-100; + height: 0.5rem; +} + +progress::-webkit-progress-bar { + background-color: transparent; +} + +progress::-webkit-progress-value { + background-color: $red; + transition: width 0.6s ease; +} + +progress::-moz-progress-bar { + background-color: $red; + transition: width 0.6s ease; +} + +progress:indeterminate { + animation-duration: 1.5s; + animation-iteration-count: infinite; + animation-name: moveIndeterminate; + animation-timing-function: linear; + background-color: $gray-100; + background-image: linear-gradient(to right, $red 100%, $gray-100 100%); + background-position: top left; + background-repeat: no-repeat; + background-size: 200% 200%; + &::-webkit-progress-bar { + background-color: transparent; + } + &::-moz-progress-bar { + background-color: transparent; + } + &::-ms-fill { + animation-name: none; + } +} + +@keyframes moveIndeterminate { + from { + background-position: 200% 0; + } + to { + background-position: -200% 0; + } +} diff --git a/assets/components/atoms/progress/progress.twig b/assets/components/atoms/progress/progress.twig new file mode 100644 index 000000000..01893fb2b --- /dev/null +++ b/assets/components/atoms/progress/progress.twig @@ -0,0 +1,15 @@ +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
diff --git a/assets/components/atoms/progress/progress.yml b/assets/components/atoms/progress/progress.yml new file mode 100644 index 000000000..466e315c5 --- /dev/null +++ b/assets/components/atoms/progress/progress.yml @@ -0,0 +1,8 @@ +title: Progress +name: progress +variants: + - name: height + title: Height + - name: indeterminate + title: Indeterminate + notes: Omit the `value` property completely, set it to `undefined` or leave blank diff --git a/assets/components/entrypoint.scss b/assets/components/entrypoint.scss index b9822a3a6..adb82a499 100644 --- a/assets/components/entrypoint.scss +++ b/assets/components/entrypoint.scss @@ -41,6 +41,7 @@ @import 'atoms/dropdown/dropdown'; @import 'atoms/nav-toggle/nav-toggle'; @import 'atoms/popover/popover'; +@import 'atoms/progress/progress'; @import 'atoms/trapeze/trapeze'; @import 'atoms/definition-list/definition-list'; @import 'atoms/figure/figure';