@randstad-design/orbit-multitheme
Version:
multitheme Front-end code based on Randstad Human Forward components
1 lines • 15.4 kB
Source Map (JSON)
{"version":3,"sources":["../scss/04_organisms/notifications/_notice-in-page.scss","00_helpers/variables/_sizing.scss","00_helpers/variables/_spacing.scss","00_helpers/mixins/_media-queries.scss","00_helpers/mixins/_font-style.scss","00_helpers/variables/_fonts.scss","00_helpers/mixins/notifications/_notice-in-page.scss","../scss/00_tools/cssVartoSass.scss","00_tools/_background-variants.scss"],"names":[],"mappings":"AAAA;EACE,iBAAiB;EACjB,kBCEiB;EDDjB,oBAAa;EAAb,qBAAa;EAAb,oBAAa;EAAb,aAAa;EACb,aEQwB,EAAA;ECkDtB;IH9DJ;MAOI,gBAAyB,EAAA,EAc5B;EArBD;IAWI,kBAA6B;IAC7B,eAAwB;IACxB,gBAA4B,EAAA;EAG9B;IIYA,eCGiB;IDFjB,iBCImB;IDHnB,iBCEmB,EAAA;EC9BnB;IACE,mCCDyC,EAAA;IDA1C;;;MAMG,mCCNuC,EAAA;EDU3C;IACE,sCCXyC;IDYzC,sCCZyC,EAAA;IDU1C;MAKG,+BCfuC,EAAA;EDmB3C;IACE,sCCpByC;IDqBzC,sCCrByC,EAAA;IDmB1C;MAKG,+BCxBuC,EAAA;ED4B3C;IACE,6CC7ByC;ID8BzC,wCC9ByC,EAAA;ID4B1C;MAKG,iCCjCuC,EAAA;EDqC3C;IACE,sCCtCyC;IDuCzC,qCCvCyC,EAAA;IDqC1C;MAKG,8BC1CuC,EAAA;ED8C3C;IACE,kCC/CyC,EAAA;ICkF/B;MFhCR,yCClDuC,EAAA;MCkF/B;QF7BN,yBCrDqC,EAAA;ICkF/B;MFhCR,yCClDuC,EAAA;MCkF/B;QF7BN,yBCrDqC,EAAA;ICkF/B;MFhCR,kCClDuC,EAAA;MCkF/B;QF7BN,mCCrDqC,EAAA;ICkF/B;MFhCR,kCClDuC,EAAA;MCkF/B;QF7BN,mCCrDqC,EAAA;ICkF/B;MFhCR,mDClDuC,EAAA;MCkF/B;QF7BN,mCCrDqC,EAAA;ICkF/B;MFhCR,mDClDuC,EAAA;MCkF/B;QF7BN,6CCrDqC,EAAA;ICkF/B;MFhCR,mDClDuC,EAAA;MCkF/B;QF7BN,mCCrDqC,EAAA","file":"in-page.css","sourcesContent":[".notice-in-page {\n border: 1px solid;\n border-radius: $border-radius;\n display: flex;\n padding: $spacing--s;\n\n @include viewport--l {\n max-width: $baseline * 49;\n }\n\n .icon {\n margin-right: $baseline * 1.5;\n min-width: $baseline * 2;\n padding-top: $baseline * 0.2;\n }\n\n &__body-copy {\n @include font-style('body--m');\n }\n\n @include notice-in-page-bg-map;\n}\n","// baseline size, used for every calculation\n$baseline: 10px;\n\n// border radius\n$border-radius: 4px;\n$border-radius--s: 3px;\n$border-radius--xs: 2px;\n$border-radius--m: 5px;\n$border-radius--m-l: 6px;\n$border-radius--l: 8px;\n$border-radius--max: 30px;\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","// @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","// @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-size: (map-get($type, font-size));\n letter-spacing: (map-get($type, letter-spacing));\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 | 14 | body s | 14 | body s | 14 | |\n// | body xs | 12 | body xs | 12 | body xs | 12 | |\n\n// font family\n$font-family-theme: Graphik, Tahoma, 'sans-serif';\n\n// font mappings - font-size / line-height / letter-spacing\n$types: (\n 12: (\n font-size: 12px,\n line-height: 15px,\n letter-spacing: 0\n ),\n 14: (\n font-size: 14px,\n line-height: 25px,\n letter-spacing: 0\n ),\n 16: (\n font-size: 16px,\n line-height: 25px,\n letter-spacing: 0\n ),\n 18: (\n font-size: 18px,\n line-height: 30px,\n letter-spacing: 0\n ),\n 20: (\n font-size: 20px,\n line-height: 30px,\n letter-spacing: 0\n ),\n 26: (\n font-size: 26px,\n line-height: 30px,\n letter-spacing: -1px\n ),\n 32: (\n font-size: 32px,\n line-height: 40px,\n letter-spacing: -1px\n ),\n 40: (\n font-size: 40px,\n line-height: 45px,\n letter-spacing: -2px\n ),\n 60: (\n font-size: 60px,\n line-height: 60px,\n letter-spacing: -3px\n ),\n 80: (\n font-size: 80px,\n line-height: 80px,\n letter-spacing: -4px\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--m: 32,\n title--s: 26,\n title--xs: 20,\n title--xxs: 18,\n body--l: 18,\n body--m: 16,\n body--s: 14,\n body--xs: 12\n);\n","@mixin notice-in-page-bg-map {\n\n &__body-copy {\n color: returnColorCSSVar('brand-secondary');\n\n a,\n a:hover,\n a:focus {\n color: returnColorCSSVar('brand-secondary');\n }\n }\n\n &--negative {\n background: returnColorCSSVar('ui-negative-5');\n border-color: returnColorCSSVar('ui-negative');\n\n .icon {\n color: returnColorCSSVar('ui-negative');\n }\n }\n\n &--positive {\n background: returnColorCSSVar('ui-positive-5');\n border-color: returnColorCSSVar('ui-positive');\n\n .icon {\n color: returnColorCSSVar('ui-positive');\n }\n }\n\n &--informative {\n background: returnColorCSSVar('brand-primary-tint-7');\n border-color: returnColorCSSVar('brand-primary');\n\n .icon {\n color: returnColorCSSVar('brand-primary');\n }\n }\n\n &--warning {\n background: returnColorCSSVar('ui-warning-10');\n border-color: returnColorCSSVar('ui-warning');\n\n .icon {\n color: returnColorCSSVar('ui-warning');\n }\n }\n\n &--subtle {\n border-color: returnColorCSSVar('gray-20');\n\n @include bg-variants() {\n border-color: variant-property('divider');\n\n .notice-in-page__body-copy {\n color: variant-property('bodyPrimary');\n }\n }\n }\n}\n\n","// Returns CSS4 color variables\n@function returnColorCSSVar($color-name) {\n @return var(--color-#{$color-name});\n}\n","@import '../00_settings/background-variants-color-map';\n// Creates the .bg-variant-#{$variant} classes with the right background-color property from the background-variants-color-map\n// Use only once to set up the utilities\n// e.g.\n//\n// @include bg-variant-classes();\n@mixin bg-variant-classes($backgroundmap: $backgrounds) {\n @each $variant, $value in $backgroundmap {\n $backgroundColor: map-get($value, 'background');\n $defaultTextColor: map-get($value, 'bodyPrimary');\n\n .bg-variant-#{$variant} {\n background-color: returnColorCSSVar($backgroundColor);\n color: returnColorCSSVar($defaultTextColor);\n }\n }\n}\n\n// Iterates over all backgrounds mapped in background-variants-color-map and outputs whatever is wrapped inside it with a .bg-variant-#{$variant} class selector before it\n// .bg-variant-#{$variant} &\n// Use together with varient-property function\n// Pass the $supportedBackgrounds as a list, if you only want to create classes for certain backgrounds\n// Set the $isChained to true, if you need to have a class that is chained to the parent e.g. .block.bg-variant-brand-primary\n// e.g.\n//\n// .divider {\n// @include bg-variants(\n// $supportedBackgrounds: (\n// 'brand-primary',\n// 'brand-senary'\n// )\n// ) {\n// color: variant-property('divider');\n// }\n// }\n//\n// .divider {\n// @include bg-variants() {\n// border-color: variant-property('divider');\n// }\n// }\n@mixin bg-variants(\n $backgroundmap: $backgrounds,\n $supportedBackgrounds: null,\n $isChained: false\n) {\n @if ($supportedBackgrounds != null) {\n @each $variant in $supportedBackgrounds {\n $className: if(\n $isChained==true,\n '.bg-variant-#{$variant}#{&}',\n '.bg-variant-#{$variant} &'\n );\n\n @at-root #{$className} {\n $variant-map: () !global;\n\n $supportedMap: if(\n map-has-key($backgroundmap, $variant),\n map-get($backgroundmap, $variant),\n null\n );\n\n @each $key, $value in $supportedMap {\n $variant-map: map-merge(\n $variant-map,\n (\n $key: returnColorCSSVar($value)\n )\n ) !global;\n }\n\n @content;\n $variant-map: null !global;\n }\n }\n } @else {\n @each $variant, $map in $backgroundmap {\n $className: if(\n $isChained==true,\n '.bg-variant-#{$variant}#{&}',\n '.bg-variant-#{$variant} &'\n );\n\n @at-root #{$className} {\n // Makes a global map that can be accessed by the variant-property function\n $variant-map: () !global;\n\n @each $key, $submap in $map {\n $value: map-get(map-get($backgroundmap, $variant), '#{$key}');\n $variant-map: map-merge(\n $variant-map,\n (\n $key: returnColorCSSVar($value)\n )\n ) !global;\n }\n\n @content;\n $variant-map: null !global;\n }\n }\n }\n}\n\n// function to use inside the wrapped content and access the\n// Use together with bg-varients mixin\n// e.g.\n//\n// .divider {\n// @include bg-variants() {\n// border-color: variant-property('divider');\n// }\n// }\n@function variant-property($key) {\n $value: map-get($variant-map, $key);\n\n @if ($value != null) {\n @return map-get($variant-map, $key);\n } @else {\n @return null;\n }\n}\n"]}