@randstad-design/orbit-multitheme
Version:
multitheme Front-end code based on Randstad Human Forward components
1 lines • 12.8 kB
Source Map (JSON)
{"version":3,"sources":["../scss/04_organisms/_quote.scss","00_helpers/mixins/grid/_grid-columns.scss","00_helpers/mixins/_font-style.scss","00_helpers/variables/_fonts.scss","00_helpers/mixins/_media-queries.scss","00_helpers/variables/_spacing.scss"],"names":[],"mappings":"AAAA;EACE,wBAAuB;EAAvB,+BAAuB;EAAvB,qBAAuB;EAAvB,uBAAuB;EACvB,oBAAa;EAAb,qBAAa;EAAb,oBAAa;EAAb,aAAa,EAAA;EAFf;IAMM,0BCuBuD,EAAA;ED7B7D;IAUM,iBAAiB;IACjB,2BCkBuD,EAAA;ED7B7D;IE4BE,oDCXmE;IDYnE,eCmBiB;IDlBjB,oBCoBsB;IDnBtB,iBCkBmB;IHjCf,SAAS,EAAA;II8CX;MJ9DJ;QE4BE,oDCXmE;QDYnE,eC+BiB;QD9BjB,yBCgC2B;QD/B3B,iBC8BmB,EAAA,EH5ChB;EAjBL;IE4BE,0CCb+C;IDc/C,eCaiB;IDZjB,oBCcsB;IDbtB,iBCYmB;IHtBf,gBAAwB,EAAA;;AIyC1B;EJlCF;IAEI,0BCDuD,EAAA;EDD3D;IAMI,2BCLuD,EAAA;EDD3D;IAUI,gBK1BoB,EAAA,EL2BrB;;AAIL;EAEI,WAAW,EAAA;;AIiBX;EJZF;IACE,aKrCsB,EAAA,ELsCvB","file":"quote.css","sourcesContent":[".quote--s {\n align-items: flex-start;\n display: flex;\n\n .quote {\n &__media {\n width: grid-columns(1, 6);\n }\n\n &__content {\n margin-left: auto;\n width: grid-columns(5, 6);\n }\n\n &__text {\n @include font-style('title--xs', 'title--s');\n margin: 0;\n }\n\n &__author {\n @include font-style('body--l');\n margin: $spacing--xs 0 0;\n }\n }\n}\n\n// viewport l\n@include viewport--l {\n .quote--s .quote {\n &__media {\n width: grid-columns(1, 7);\n }\n\n &__content {\n width: grid-columns(6, 7);\n }\n\n &__author {\n margin-top: $spacing--s;\n }\n }\n}\n\n.quote--xs {\n img {\n width: 60px;\n }\n}\n\n@include viewport--l {\n .quote--xs {\n padding: $spacing--l;\n }\n}\n","// @grid-columns($columns, $columns-total, $grid-gutter)\n\n// grid for viewport S & M:\n// 6 columns / 28 units\n//\n// | | | | | | | | | | | |\n// | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 |\n// | | | | | | | | | | | |\n//\n//\n// grid for vieport L:\n// 12 columns / 58 units\n//\n// | | | | | | | | | | | | | | | | | | | | | | | |\n// | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 | 2 | 3 |\n// | | | | | | | | | | | | | | | | | | | | | | | |\n\n@function grid-columns($columns, $columns-total, $grid-gutter: null) {\n $column-gutter-diff: ($grid-column-units - $grid-gutter-units);\n\n $column-units: ($columns * $grid-column-units) + (($columns - $column-gutter-diff) * $grid-gutter-units);\n $columns-total: ($columns-total * $grid-column-units) + (($columns-total - $column-gutter-diff) * $grid-gutter-units);\n\n // if grid gutter is provided use it in calculation\n @if ($grid-gutter) {\n @return calc(((#{$column-units} + (#{$grid-gutter} * #{$grid-gutter-units})) /#{$columns-total}) * 100%);\n }\n // if grid-gutter is not provided return default calculation\n @else {\n @return calc((#{$column-units}/#{$columns-total}) * 100%);\n }\n}\n","// @font-style($font-style-small, $font-style-large)\n\n// $font-style-small - Desired type size for small/medium viewport.\n// $font-style-large - Desired type size for large viewport. This includes default fallback\n// for the S/M viewport.\n\n//\n// | viewport S | viewport M | viewport L | default mapping |\n// |------------------|------------------|-----------------|-----------------|\n// | title l | 40 | title l | 40 | title xxl | 80 | default |\n// | title m | 32 | title m | 32 | title xl | 60 | default |\n// | title s | 26 | title s | 26 | title l | 40 | |\n// | title s | 26 | title s | 26 | title m | 32 | default |\n// | title xs | 20 | title xs | 20 | title s | 26 | |\n// | title xs | 20 | title xs | 20 | title xs | 20 | default |\n// | title xxs | 18 | title xxs | 18 | title xxs | 18 | |\n// | | | | | | | |\n// | body l | 18 | body l | 18 | body l | 18 | |\n// | body m | 16 | body m | 16 | body m | 16 | |\n// | body s | 12 | body s | 12 | body s | 12 | |\n\n// import variables needed for the mixins\n@import '../variables/__variables.scss';\n\n// mixin to get applicable properties for chosen type size\n@mixin typeset($type) {\n $type: map-get($types, $type);\n\n font-family: (map-get($type, font-family));\n font-size: (map-get($type, font-size));\n text-transform: (map-get($type, text-transform));\n line-height: (map-get($type, line-height));\n}\n\n// get correct font characteristics based on font\n@mixin type-size($size) {\n $size: map-get($type-sizes, $size);\n @include typeset($size);\n}\n\n// mixin to get font-size\n@mixin font-style($font-style-small: 'body--l', $font-style-large: null) {\n // if both arguments are added\n @if ($font-style-large != null) {\n // make sure $font-style-small & $font-style-large are not equal\n @if ($font-style-small != $font-style-large) {\n @include type-size($font-style-small);\n\n @include viewport--l {\n @include type-size($font-style-large);\n }\n } @else {\n @include type-size($font-style-small);\n }\n } @else {\n @include type-size($font-style-small);\n // default font style mappings\n @if ($font-style-small == 'title--l') {\n @include viewport--l {\n @include type-size('title--xxl');\n }\n } @else if ($font-style-small == 'title--m') {\n @include viewport--l {\n @include type-size('title--xl');\n }\n } @else if ($font-style-small == 'title--s') {\n @include viewport--l {\n @include type-size('title--m');\n }\n }\n }\n}\n","// | viewport S | viewport M | viewport L | default mapping |\n// |------------------|------------------|-----------------|-----------------|\n// | title l | 40 | title l | 40 | title xxl | 80 | default |\n// | title m | 32 | title m | 32 | title xl | 60 | default |\n// | title s | 26 | title s | 26 | title l | 40 | |\n// | title s | 26 | title s | 26 | title m | 32 | default |\n// | title xs | 20 | title xs | 20 | title s | 26 | |\n// | title xs | 20 | title xs | 20 | title xs | 20 | default |\n// | title xxs | 18 | title xxs | 18 | title xxs | 18 | |\n// | | | | | | | |\n// | body l | 18 | body l | 18 | body l | 18 | |\n// | body m | 16 | body m | 16 | body m | 16 | |\n// | body s | 12 | body s | 12 | body s | 12 | |\n\n// font family\n$font-family-theme: Montserrat, arial, sans-serif;\n$font-family-theme-semibold: Montserrat-SemiBold, arial, sans-serif;\n$font-family-theme-extrabold: Montserrat-ExtraBold, arial, sans-serif;\n// assets path to font\n// this path is overwritten in component CSS\n\n// font mappings - font-size / line-height / letter-spacing\n$types: (\n 12: (\n font-size: 12px,\n line-height: 15px,\n text-transform: none,\n font-family: $font-family-theme\n ),\n 14: (\n font-size: 14px,\n line-height: 25px,\n text-transform: none,\n font-family: $font-family-theme\n ),\n 16: (\n font-size: 16px,\n line-height: 25px,\n text-transform: none,\n font-family: $font-family-theme\n ),\n 18: (\n font-size: 18px,\n line-height: 30px,\n text-transform: none,\n font-family: $font-family-theme\n ),\n 20: (\n font-size: 20px,\n line-height: 30px,\n text-transform: none,\n font-family: $font-family-theme-extrabold\n ),\n 20s: (\n font-size: 20px,\n line-height: 30px,\n text-transform: none,\n font-family: $font-family-theme-semibold\n ),\n 26: (\n font-size: 26px,\n line-height: 30px,\n text-transform: uppercase,\n font-family: $font-family-theme-extrabold\n ),\n 26s: (\n font-size: 26px,\n line-height: 30px,\n text-transform: none,\n font-family: $font-family-theme-semibold\n ),\n 32: (\n font-size: 32px,\n line-height: 40px,\n text-transform: uppercase,\n font-family: $font-family-theme-extrabold\n ),\n 32s: (\n font-size: 32px,\n line-height: 40px,\n text-transform: none,\n font-family: $font-family-theme-semibold\n ),\n 40: (\n font-size: 40px,\n line-height: 45px,\n text-transform: uppercase,\n font-family: $font-family-theme-extrabold\n ),\n 40s: (\n font-size: 40px,\n line-height: 45px,\n text-transform: none,\n font-family: $font-family-theme-semibold\n ),\n 60: (\n font-size: 60px,\n line-height: 60px,\n text-transform: uppercase,\n font-family: $font-family-theme-extrabold\n ),\n 80: (\n font-size: 80px,\n line-height: 80px,\n text-transform: uppercase,\n font-family: $font-family-theme-extrabold\n )\n);\n\n// type-sizes - links the type-size to correct font mapping\n$type-sizes: (\n title--xxl: 80,\n title--xl: 60,\n title--l: 40,\n title--l-slim: 40s,\n title--m: 32,\n title--m-slim: 32s,\n title--s: 26,\n title--s-slim: 26s,\n title--xs: 20,\n title--xs-slim: 20s,\n title--xxs: 18,\n body--l: 18,\n body--m: 16,\n body--s: 14,\n body--xs: 12\n);\n","// @viewport--x($reversed)\n\n// viewport s\n@mixin viewport--s($type: null) {\n // inversed\n @if ($type == 'inversed') {\n @media (max-width: #{($breakpoint-viewport--s - 1)}) {\n @content;\n }\n }\n // range\n @else if ($type== 'range') {\n @media (min-width:0) and (max-width: #{($breakpoint-viewport--s - 1)}) {\n @content;\n }\n }\n // default\n @else {\n @media (min-width: #{$breakpoint-viewport--s}) {\n @content;\n }\n }\n}\n\n// viewport m\n@mixin viewport--m($type: null) {\n // inversed\n @if ($type == 'inversed') {\n @media (max-width: #{($breakpoint-viewport--m - 1)}) {\n @content;\n }\n }\n // range\n @else if ($type== 'range') {\n @media (min-width: $breakpoint-viewport--m) and (max-width: #{($breakpoint-viewport--l - 1)}) {\n @content;\n }\n }\n // default\n @else {\n @media (min-width: #{$breakpoint-viewport--m}) {\n @content;\n }\n }\n}\n\n// viewport l\n@mixin viewport--l($type: null) {\n // inversed\n @if ($type == 'inversed') {\n @media (max-width: #{($breakpoint-viewport--l - 1)}) {\n @content;\n }\n }\n // range\n @else if ($type== 'range') {\n @media (min-width: $breakpoint-viewport--l) and (max-width: #{($breakpoint-viewport--xl - 1)}) {\n @content;\n }\n }\n // default\n @else {\n @media (min-width: #{$breakpoint-viewport--l}) {\n @content;\n }\n }\n}\n\n// viewport xl\n@mixin viewport--xl($type: null) {\n @if ($type == 'inversed') {\n @media (max-width: #{($breakpoint-viewport--xl - 1)}) {\n @content;\n }\n }\n // range\n @else if ($type== 'range') {\n @media (min-width: $breakpoint-viewport--xl) and (max-width: #{($breakpoint-viewport--xxl - 1)}) {\n @content;\n }\n }\n // default\n @else {\n @media (min-width: #{$breakpoint-viewport--xl}) {\n @content;\n }\n }\n}\n\n// viewport xxl\n@mixin viewport--xxl($type: null) {\n // inversed\n @if ($type == 'inversed') {\n @media (max-width: #{($breakpoint-viewport--xxl - 1)}) {\n @content;\n }\n }\n // default\n @else {\n @media (min-width: #{$breakpoint-viewport--xxl}) {\n @content;\n }\n }\n}\n\n// viewport range\n@mixin viewport--range($viewport1, $viewport2) {\n @media (min-width: #{($viewport1)}) and (max-width: #{($viewport2 - 1)}) {\n @content;\n }\n}\n\n// Internet Explorer 10 + 11\n@mixin internet-explorer-10-11 {\n @media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {\n @content;\n }\n}\n","// | variable | size | calculation |\n// |---------------|-------|-----------------|\n// | $spacing--xxs | 5px | $baseline * 0.5 |\n// | $spacing--xs | 10px | $baseline * 1 |\n// | $spacing--s | 20px | $baseline * 2 |\n// | $spacing--m | 30px | $baseline * 3 |\n// | $spacing--l | 50px | $baseline * 5 |\n// | $spacing--xl | 80px | $baseline * 8 |\n// | $spacing--xxl | 130px | $baseline * 13 |\n\n$spacing--xxs: $baseline * 0.5;\n$spacing--xs: $baseline * 1;\n$spacing--s: $baseline * 2;\n$spacing--m: $baseline * 3;\n$spacing--l: $baseline * 5;\n$spacing--xl: $baseline * 8;\n$spacing--xxl: $baseline * 13;\n\n// grid spacings\n$grid-margin--s: 25px;\n$grid-margin--m: 50px;\n$grid-margin--l: 100px;\n"]}