diff --git a/scss/_semantic.scss b/scss/_semantic.scss new file mode 100644 index 0000000000000000000000000000000000000000..dbc6b2c239603efea57c33801da109bc06d18a7e --- /dev/null +++ b/scss/_semantic.scss @@ -0,0 +1,30 @@ +$semantic-selector: ".semantic" !default; + +$semantic-implications: () !default; +// stylelint-disable-next-line scss/dollar-variable-default +$semantic-implications: map-merge( + ( + ".blockquote > footer": ".blockquote-footer", + "blockquote > footer": ".blockquote-footer", + ".list-inline > li": ".list-inline-item", + ".figure > img": ".figure-img", + "figure > img": ".figure-img", + ".figure > figcaption": ".figure-caption", + "figure > figcaption": ".figure-caption", + ".breadcrumb > li": ".breadcrumb-item", + ".list-group > li": ".list-group-item", + ), + $semantic-implications +); + + +@each $selectors, $implied in $semantic-implications { + @each $selector in $selectors { + $i: str-index($selector, " ") or -1; + $selector: str-insert($selector, $semantic-selector, $i); + + #{$selector} { + @extend #{$implied}; + } + } +} diff --git a/scss/bootstrap.scss b/scss/bootstrap.scss index 7138211c48d47ceb1ae6a14c026bf233f0d08966..9a2654935f33045662eeece970195b78ff5be8bc 100644 --- a/scss/bootstrap.scss +++ b/scss/bootstrap.scss @@ -52,3 +52,7 @@ // Utilities @import "utilities/api"; + + +// Semantic styling +@import "semantic";