@orangesk/orange-design-system 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/build/app.css +1 -1
  2. package/build/app.css.map +1 -1
  3. package/build/app.js +1 -1
  4. package/build/app.js.map +1 -1
  5. package/build/asset-manifest.json +1 -1
  6. package/build/components/Accordion/style.css.map +1 -1
  7. package/build/components/Alert/style.css +1 -1
  8. package/build/components/Alert/style.css.map +1 -1
  9. package/build/components/Breadcrumbs/style.css.map +1 -1
  10. package/build/components/Card/style.css +1 -1
  11. package/build/components/Card/style.css.map +1 -1
  12. package/build/components/Carousel/style.css.map +1 -1
  13. package/build/components/CarouselPromotions/style.css.map +1 -1
  14. package/build/components/CartTable/style.css.map +1 -1
  15. package/build/components/Dropdown/style.css.map +1 -1
  16. package/build/components/Forms/Autocomplete/style.css.map +1 -1
  17. package/build/components/Forms/Checkbox/style.css.map +1 -1
  18. package/build/components/Forms/DatePicker/style.css.map +1 -1
  19. package/build/components/Forms/Field/style.css.map +1 -1
  20. package/build/components/Forms/Group/style.css.map +1 -1
  21. package/build/components/Forms/InputStepper/style.css.map +1 -1
  22. package/build/components/Forms/RangeSlider/style.css.map +1 -1
  23. package/build/components/Forms/TextInput/style.css.map +1 -1
  24. package/build/components/Forms/style.css.map +1 -1
  25. package/build/components/Gauge/style.css.map +1 -1
  26. package/build/components/Hero/style.css.map +1 -1
  27. package/build/components/IconList/style.css.map +1 -1
  28. package/build/components/Loader/style.css.map +1 -1
  29. package/build/components/Modal/style.css.map +1 -1
  30. package/build/components/Pagination/style.css.map +1 -1
  31. package/build/components/PromotionCard/style.css +1 -1
  32. package/build/components/PromotionCard/style.css.map +1 -1
  33. package/build/components/SkipLink/style.css.map +1 -1
  34. package/build/components/Table/style.css.map +1 -1
  35. package/build/components/Testimonial/style.css.map +1 -1
  36. package/build/components/Tile/style.css +1 -1
  37. package/build/components/Tile/style.css.map +1 -1
  38. package/build/components/Tooltip/style.css.map +1 -1
  39. package/build/components/style.css +1 -1
  40. package/build/components/style.css.map +1 -1
  41. package/build/index.css +1 -1
  42. package/build/index.css.map +1 -1
  43. package/build/index.js +1 -1
  44. package/build/index.js.map +1 -1
  45. package/build/lib/after-components.css +1 -1
  46. package/build/lib/after-components.css.map +1 -1
  47. package/build/lib/before-components.css.map +1 -1
  48. package/build/lib/breadcrumbs.css.map +1 -1
  49. package/build/lib/components.css +1 -1
  50. package/build/lib/components.css.map +1 -1
  51. package/build/lib/style.css +1 -1
  52. package/build/lib/style.css.map +1 -1
  53. package/build/lib/testingIframe.js +1 -1
  54. package/build/lib/testingIframe.js.map +1 -1
  55. package/build/{precache-manifest.1b49f5229be3f6990cf43f769094a074.js → precache-manifest.0d7dc03429ddd3ea2f6a224750ba57a9.js} +60 -60
  56. package/build/{precache-manifest.0874713a8090cb11d4d33b21e451a587.js → precache-manifest.726de66e3b25011c90fb350f15dd075e.js} +17 -17
  57. package/build/service-worker.js +1 -1
  58. package/build/sprite.svg +1 -1
  59. package/package.json +1 -1
  60. package/src/assets/icons/top-up-time.svg +1 -0
  61. package/src/components/Alert/styles/config.scss +3 -3
  62. package/src/components/Card/Card.mdx +8 -0
  63. package/src/components/Card/styles/mixins.scss +4 -0
  64. package/src/components/Card/styles/style.scss +4 -0
  65. package/src/components/Icon/iconSearchTags.js +1 -0
  66. package/src/styles/tokens/color.scss +2 -0
  67. package/src/styles/utilities/color.scss +46 -15
  68. package/src/styles/utilities/layout.scss +7 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../Button/styles/style.scss","../../../styles/tools/generate.scss","../../Button/styles/mixins.scss","../../Button/styles/config.scss","style.scss","../../Typography/styles/mixins.scss","mixins.scss","../../../styles/tokens/color.scss","config.scss","../../../styles/tokens/breakpoint.scss"],"names":[],"mappings":"AAIA,KCuBI,4BAAA,CAAA,kBAAA,CAAA,eAAA,CAAA,eAAA,CAAA,uBAAA,CAAA,sCAAA,CAAA,uDAAA,CCfF,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,iBAAA,CACA,oBAAA,CACA,gBAAA,CACA,sBAAA,CACA,cAAA,CAuBA,qBAAA,CAjBA,2BDEE,wBAAA,CCEA,SAAA,CAGF,wCAIE,kBAAA,CAQF,sBACE,oBAAA,CFlCF,KCgBE,iBAAA,CAAA,wBAAA,CDhBF,YCgBE,mBAAA,CAAA,uBAAA,CDhBF,YCgBE,mBAAA,CAAA,uBAAA,CDRF,iCCQE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CC6BF,6CD7BE,UAAA,CAAA,qBAAA,CAAA,wBAAA,CCgCA,SAAA,CAGF,oGDnCE,UAAA,CAAA,kBAAA,CAAA,wBAAA,CCuCA,SAAA,CAGF,8HD1CE,UAAA,CAAA,iBAAA,CAAA,wBAAA,CDRF,mDCQE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CC6BF,+DD7BE,UAAA,CAAA,qBAAA,CAAA,wBAAA,CCgCA,SAAA,CAGF,wIDnCE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CCuCA,SAAA,CAGF,kKD1CE,UAAA,CAAA,qBAAA,CAAA,iBAAA,CDRF,6CCQE,UAAA,CAAA,qBAAA,CAAA,wBAAA,CC6BF,yDD7BE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CCgCA,SAAA,CAGF,4HDnCE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CCuCA,SAAA,CAGF,sJD1CE,UAAA,CAAA,qBAAA,CAAA,iBAAA,CDRF,+CCQE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CC6BF,2DD7BE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CCgCA,SAAA,CAGF,gIDnCE,aAAA,CAAA,wBAAA,CAAA,iBAAA,CCuCA,SAAA,CAGF,0JD1CE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CAAA,uBAAA,UAAA,CAAA,wBAAA,CAAA,iBAAA,CC6BF,mCD7BE,UAAA,CAAA,qBAAA,CAAA,wBAAA,CCgCA,SAAA,CAGF,gFDnCE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CCuCA,SAAA,CAGF,0GD1CE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CAAA,yCAAA,UAAA,CAAA,wBAAA,CAAA,wBAAA,CC6BF,qDAGE,SAAA,CAGF,oHDnCE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CCuCA,SAAA,CAGF,8ID1CE,UAAA,CAAA,qBAAA,CAAA,iBAAA,CAAA,mCAAA,UAAA,CAAA,qBAAA,CAAA,wBAAA,CC6BF,+CD7BE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CCgCA,SAAA,CAGF,wGDnCE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CCuCA,SAAA,CAGF,kID1CE,UAAA,CAAA,qBAAA,CAAA,iBAAA,CAAA,qCAAA,UAAA,CAAA,wBAAA,CAAA,wBAAA,CC6BF,iDD7BE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CCgCA,SAAA,CAGF,4GDnCE,aAAA,CAAA,wBAAA,CAAA,iBAAA,CCuCA,SAAA,CAGF,sID1CE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CDMJ,aE+CE,mBAAA,CACA,aAAA,CACA,aAAA,CACA,sBAAA,CACA,kBAAA,CACA,SAAA,CACA,aAAA,CFjDE,iBEuDF,YAFO,CAGP,aAHO,CFrDL,wBEuDF,cAFO,CAGP,eAHO,CFrDL,wBEuDF,cAFO,CAGP,eAHO,CF/CT,gBEsDE,0BAAA,CAGE,kBCoJoB,CDnJpB,iBCoJoB,CH1MxB,iBEkDE,0BAAA,CAQE,gBCgJoB,CD/IpB,mBC8IoB,CHrMxB,yBE6DE,oBAAA,CACA,uBAAA,CE9GF,YCuEE,eAAA,CACA,8BAAA,CAGA,SAAA,CCrEA,YAAA,CACA,cAAA,CACA,kBAAA,CDqEA,eACE,eAAA,CAGA,sBACE,WAAA,CACA,iBAAA,CACA,OAAA,CACA,QAAA,CDlFJ,uBESA,eAAA,CACA,UAAA,CACA,iBAAA,CFPA,yCEWA,oBAAA,CACA,eAAA,CFPA,6BEWA,cAAA,CFPA,kBEWA,eAAA,CFRE,0BEYF,UC9BM,CD+BN,qBChCM,CDiCN,iBCjCM,CHCR,MECE,iBAAA,CACA,SAAA,CACA,UAAA,CACA,0BAAA,CAOM,aACE,UEbF,CFcE,WEdF,CFYA,cACE,YEbF,CFcE,aEdF,CFYA,aACE,UEbF,CFcE,WEdF,CFYA,cACE,YEbF,CFcE,aEdF,CFYA,eACE,UEbF,CFcE,WEdF,CFYA,YACE,YEbF,CFcE,aEdF,CC2BF,oCHfE,cACE,UEbF,CFcE,WEdF,CFYA,eACE,UEbF,CFcE,WEdF,CFYA,YACE,UEbF,CFcE,WEdF,CAAA,CFuBJ,YACE,aERG,CFOL,eACE,aERG,CFOL,eACE,UERG,CFOL,cACE,aERG,CJTT,IACE,mBAAA","file":"style.css","sourcesContent":["@use '../../../styles/tools/generate';\n@use './config';\n@use './mixins';\n\n.btn {\n @include mixins.base;\n @include mixins.layout;\n}\n\n// button sizes\n@each $name, $props in config.$sizes {\n .btn#{generate.variant-name($name)} {\n @include mixins.size($name);\n }\n}\n\n\n// inverse button styles\n@each $name, $props in config.$inverse-styles {\n .bg-black .btn#{generate.variant-name($name)},\n .btn--inverse.btn#{generate.variant-name($name)} {\n @include mixins.style($name, config.$inverse-styles);\n }\n}\n\n// button styles\n@each $name, $props in config.$styles {\n .btn#{generate.variant-name($name)},\n .btn--default.btn#{generate.variant-name($name)} {\n @include mixins.style($name);\n }\n}\n\n.btn--square {\n @include mixins.square-base;\n\n @each $name, $props in config.$sizes {\n &.btn#{generate.variant-name($name)} {\n @include mixins.square-size($name);\n }\n }\n}\n\n.btn__icon-left {\n @include mixins.icon('left');\n}\n\n.btn__icon-right {\n @include mixins.icon('right');\n}\n\n.btn--large .icon--large {\n @include mixins.large-button-large-icon-size-fix();\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n","@use '../../../styles/tokens/base';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tools/map';\n@use './config';\n\n/// Applies base button styles used for every button-base\n/// @param {map} $states - Map of button states\n@mixin base($states: config.$base) {\n @include generate.css-map($states, 'default');\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n text-decoration: none;\n line-height: 1.25;\n vertical-align: baseline;\n cursor: pointer;\n\n &:hover {\n @include generate.css-map($states, 'hover');\n }\n\n &:active,\n &.is-active {\n @include generate.css-map($states, 'active');\n\n z-index: 2;\n }\n\n &[aria-disabled='true'],\n &[disabled] {\n @include generate.css-map($states, 'disabled');\n\n cursor: not-allowed;\n }\n}\n\n// Layout rules. Adds space between adjacent buttons and applies vertical spacing after a button.\n@mixin layout {\n margin-bottom: space.get();\n\n &:not(:last-child) {\n margin-right: space.get('small');\n }\n}\n\n/// Styles our button appropriately\n/// @param {map} $states - Map of button states\n@mixin style($name, $config: config.$styles) {\n $states: map-get($config, $name);\n\n @include generate.css-map($states, 'default');\n\n &:hover {\n @include generate.css-map($states, 'hover');\n\n z-index: 2;\n }\n\n &:active,\n &.is-active {\n @include generate.css-map($states, 'active');\n\n z-index: 2;\n }\n\n &[aria-disabled='true'],\n &[disabled] {\n @include generate.css-map($states, 'disabled');\n }\n}\n\n@mixin size($name, $config: config.$sizes) {\n @include generate.css-map($config, $name);\n}\n\n@mixin square-base {\n display: inline-flex;\n flex: 0 0 auto;\n flex-flow: row;\n justify-content: center;\n align-items: center;\n padding: 0;\n line-height: 0;\n}\n\n@mixin square-size($name, $config: config.$sizes) {\n $size: map-get(map-get($config, $name), 'min-height');\n\n width: $size;\n height: $size;\n}\n\n@mixin icon($position) {\n backface-visibility: hidden;\n\n @if ($position == 'left') {\n margin-left: config.$icon-offset-from-edge;\n margin-right: config.$icon-offset-from-text;\n }\n\n @if ($position == 'right') {\n margin-left: config.$icon-offset-from-text;\n margin-right: config.$icon-offset-from-edge;\n }\n}\n\n// Fixes issue when a large icon in large button increases its height\n@mixin large-button-large-icon-size-fix() {\n margin-top: convert.to-rem(-3px);\n margin-bottom: convert.to-rem(-3px);\n}\n","@use '../../../styles/tokens/color';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/convert';\n\n$base: (\n default: (\n border: 2px solid transparent,\n font-size: convert.to-rem(18px),\n font-weight: bold,\n line-height: 1.4,\n transition-duration: 200ms,\n transition-timing-function: ease-in-out,\n transition-property: (\n border-color,\n background-color,\n color,\n ),\n ),\n active: (\n transition-property: none,\n ),\n);\n\n/// Generates button sizes. Each key is a suffix added to btn- (except default), and each value is the button font size.\n/// @type Map\n/// @prop {Length} button-size.font-size\n$sizes: (\n default: (\n min-height: convert.to-rem(40px),\n padding: convert.to-rem(6px) convert.to-rem(15px),\n ),\n small: (\n min-height: convert.to-rem(30px),\n padding: convert.to-rem(2px) convert.to-rem(10px),\n ),\n large: (\n min-height: convert.to-rem(50px),\n padding: space.get('small') convert.to-rem(20px),\n ),\n);\n\n/// Generates button color/style variants.\n/// @type Map\n/// @prop {Map} variant - Variant name (\".btn__primary\"). \"default\" is applied to generic \".btn\" class\n/// all props in styles.variant are settings of the button style mixin. @mixin style\n/// @example\n/// $styles:\n/// primary: (\n/// default: (\n/// text-color: white\n/// background: primary\n/// ),\n/// active: (...),\n/// ...\n/// ), // primary color bg and border, white text and default shadow\n/// );\n$styles: (\n default: (\n default: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n hover: (\n color: color.$white,\n background-color: color.$black,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$gray-700,\n background-color: transparent,\n border-color: color.$gray-600,\n ),\n ),\n primary: (\n default: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n active: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n disabled: (\n color: color.$white,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n fill: (\n default: (\n color: color.$white,\n background-color: color.$black,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$white,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n ghost: (\n default: (\n color: color.$black,\n background-color: transparent,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$gray-500,\n ),\n active: (\n color: color.$orange-dark,\n background-color: transparent,\n border-color: color.$gray-500,\n ),\n disabled: (\n color: color.$gray-700,\n background-color: transparent,\n border-color: color.$gray-600,\n ),\n ),\n);\n\n/// Generates inverse button color/style variants.\n/// @type Map\n/// @prop {Map} variant - Button variant name (\".btn-primary\"). \"default\" is applied to generic \".btn\" class\n/// all props in styles.variant are settings of the button style mixin. @mixin style\n/// @example\n/// $inverse-styles:\n/// primary: (\n/// default: (\n/// text-color: white\n/// background: primary\n/// ),\n/// active: (...),\n/// ...\n/// ), // primary color bg and border, white text and default shadow\n/// );\n$inverse-styles: (\n default: (\n default: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n hover: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$gray-600,\n border-color: color.$gray-600,\n background-color: transparent,\n ),\n ),\n primary: (\n default: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n disabled: (\n color: color.$black,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n fill: (\n default: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n hover: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$black,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n ghost: (\n default: (\n color: color.$white,\n background-color: transparent,\n border-color: transparent,\n ),\n active: (\n color: color.$orange-dark,\n background-color: transparent,\n border-color: color.$gray-700,\n ),\n hover: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$gray-700,\n ),\n disabled: (\n color: color.$gray-600,\n background-color: transparent,\n border-color: transparent,\n ),\n ),\n);\n\n$icon-offset-from-edge: -0.25em;\n$icon-offset-from-text: 0.5em;\n","@use './mixins';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/space';\n\n.icon {\n @include mixins.base;\n @include mixins.sizes;\n @include mixins.colors;\n}\n\nuse {\n pointer-events: none;\n}\n","@use 'sass:map';\n@use 'sass:list';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tools/text';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tokens/color';\n@use 'config';\n\n@mixin text-readable {\n max-width: 35em;\n}\n\n@mixin text-narrow {\n max-width: 22em;\n}\n\n@mixin text-fullwidth {\n max-width: none;\n}\n\n@mixin headings-base($heading-config, $selector-pattern, $base-styles) {\n $selector: ();\n\n @each $heading-level in map.keys($heading-config) {\n $selector: list.append(\n $selector,\n #{text.str-replace($selector-pattern, '$', $heading-level)},\n 'comma'\n );\n }\n\n #{$selector} {\n @include generate.css-map($base-styles);\n }\n}\n\n@mixin headings($config, $selector-pattern) {\n @each $heading, $breakpoints in $config {\n #{text.str-replace($selector-pattern, '$', $heading)} {\n @include generate.responsive-css-map($breakpoints);\n }\n }\n}\n\n@mixin body-text($config) {\n html {\n @include generate.css-map(map.get($config, default));\n }\n\n p {\n margin-top: 0;\n margin-bottom: space.get();\n }\n\n cite {\n font-style: normal;\n }\n\n hr {\n margin-top: space.get();\n margin-bottom: space.get();\n border: 0;\n border-top: 1px solid color.$gray-300;\n }\n}\n\n@mixin readability() {\n p {\n @include text-readable;\n }\n}\n\n@mixin list-unstyled() {\n list-style: none;\n list-style-type: none !important;\n max-width: none;\n margin: 0;\n padding: 0;\n\n > li {\n margin-bottom: 0;\n\n /* Fixes VoiceOver no announcing unordered lists */\n &::before {\n content: ' ';\n position: absolute;\n width: 0;\n height: 0;\n }\n }\n}\n\n@mixin list-base() {\n margin: 0 0 space.get() 0;\n padding-left: space.get('large');\n @include text-readable;\n}\n\n@mixin list-spacing($space, $config: config.$list-spacing) {\n > *:where(li) {\n margin-bottom: map-get($config, $space);\n\n > *:where(ul, ol) {\n margin-top: map-get($config, $space);\n }\n }\n}\n\n@mixin ul-list-base() {\n list-style-type: square;\n ul {\n list-style-type: disc;\n ul {\n list-style-type: circle;\n } \n } \n}\n\n@mixin list-circle() {\n list-style-type: disc !important;\n ul {\n list-style-type: circle;\n ul {\n list-style-type: square;\n } \n } \n}\n\n@mixin list-square() {\n list-style-type: square !important;\n ul {\n list-style-type: disc;\n ul {\n list-style-type: circle;\n } \n } \n}\n\n@mixin list-no-offset() {\n padding-left: space.get();\n list-style-position: outside;\n}\n\n@mixin list-inline() {\n @include list-unstyled();\n\n > li {\n display: inline-block;\n\n &:not(:last-child) {\n margin-right: space.get('small');\n }\n }\n}\n","@use './config';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/generate';\n\n@mixin base() {\n fill: currentColor;\n width: 1em;\n height: 1em;\n vertical-align: text-bottom;\n}\n\n@mixin sizes($sizes: config.$sizes) {\n @each $breakpoint, $props in $sizes {\n @include breakpoint.get($breakpoint) {\n @each $variant, $size in $props {\n &#{generate.variant-name($variant)} {\n width: $size;\n height: $size;\n }\n }\n }\n }\n}\n\n@mixin colors($colors: config.$colors) {\n @each $variant, $color in $colors {\n &#{generate.variant-name($variant)} {\n color: $color;\n }\n }\n}\n","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n","@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/color';\n\n$sizes: (\n default: (\n small: convert.to-rem(16px),\n medium: convert.to-rem(24px),\n large: convert.to-rem(32px),\n xlarge: convert.to-rem(40px),\n xxlarge: convert.to-rem(48px),\n huge: convert.to-rem(56px),\n ),\n md: (\n xlarge: convert.to-rem(48px),\n xxlarge: convert.to-rem(64px),\n huge: convert.to-rem(80px),\n ),\n);\n\n$colors: (\n info: color.$info,\n success: color.$success,\n warning: color.$warning,\n danger: color.$danger,\n);\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["../../Button/styles/style.scss","../../../styles/tools/generate.scss","../../Button/styles/mixins.scss","../../Button/styles/config.scss","style.scss","../../Typography/styles/mixins.scss","mixins.scss","../../../styles/tokens/color.scss","config.scss","../../../styles/tokens/breakpoint.scss"],"names":[],"mappings":"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","file":"style.css","sourcesContent":["@use '../../../styles/tools/generate';\n@use './config';\n@use './mixins';\n\n.btn {\n @include mixins.base;\n @include mixins.layout;\n}\n\n// button sizes\n@each $name, $props in config.$sizes {\n .btn#{generate.variant-name($name)} {\n @include mixins.size($name);\n }\n}\n\n\n// inverse button styles\n@each $name, $props in config.$inverse-styles {\n .bg-black .btn#{generate.variant-name($name)},\n .btn--inverse.btn#{generate.variant-name($name)} {\n @include mixins.style($name, config.$inverse-styles);\n }\n}\n\n// button styles\n@each $name, $props in config.$styles {\n .btn#{generate.variant-name($name)},\n .btn--default.btn#{generate.variant-name($name)} {\n @include mixins.style($name);\n }\n}\n\n.btn--square {\n @include mixins.square-base;\n\n @each $name, $props in config.$sizes {\n &.btn#{generate.variant-name($name)} {\n @include mixins.square-size($name);\n }\n }\n}\n\n.btn__icon-left {\n @include mixins.icon('left');\n}\n\n.btn__icon-right {\n @include mixins.icon('right');\n}\n\n.btn--large .icon--large {\n @include mixins.large-button-large-icon-size-fix();\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n","@use '../../../styles/tokens/base';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tools/map';\n@use './config';\n\n/// Applies base button styles used for every button-base\n/// @param {map} $states - Map of button states\n@mixin base($states: config.$base) {\n @include generate.css-map($states, 'default');\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n text-decoration: none;\n line-height: 1.25;\n vertical-align: baseline;\n cursor: pointer;\n\n &:hover {\n @include generate.css-map($states, 'hover');\n }\n\n &:active,\n &.is-active {\n @include generate.css-map($states, 'active');\n\n z-index: 2;\n }\n\n &[aria-disabled='true'],\n &[disabled] {\n @include generate.css-map($states, 'disabled');\n\n cursor: not-allowed;\n }\n}\n\n// Layout rules. Adds space between adjacent buttons and applies vertical spacing after a button.\n@mixin layout {\n margin-bottom: space.get();\n\n &:not(:last-child) {\n margin-right: space.get('small');\n }\n}\n\n/// Styles our button appropriately\n/// @param {map} $states - Map of button states\n@mixin style($name, $config: config.$styles) {\n $states: map-get($config, $name);\n\n @include generate.css-map($states, 'default');\n\n &:hover {\n @include generate.css-map($states, 'hover');\n\n z-index: 2;\n }\n\n &:active,\n &.is-active {\n @include generate.css-map($states, 'active');\n\n z-index: 2;\n }\n\n &[aria-disabled='true'],\n &[disabled] {\n @include generate.css-map($states, 'disabled');\n }\n}\n\n@mixin size($name, $config: config.$sizes) {\n @include generate.css-map($config, $name);\n}\n\n@mixin square-base {\n display: inline-flex;\n flex: 0 0 auto;\n flex-flow: row;\n justify-content: center;\n align-items: center;\n padding: 0;\n line-height: 0;\n}\n\n@mixin square-size($name, $config: config.$sizes) {\n $size: map-get(map-get($config, $name), 'min-height');\n\n width: $size;\n height: $size;\n}\n\n@mixin icon($position) {\n backface-visibility: hidden;\n\n @if ($position == 'left') {\n margin-left: config.$icon-offset-from-edge;\n margin-right: config.$icon-offset-from-text;\n }\n\n @if ($position == 'right') {\n margin-left: config.$icon-offset-from-text;\n margin-right: config.$icon-offset-from-edge;\n }\n}\n\n// Fixes issue when a large icon in large button increases its height\n@mixin large-button-large-icon-size-fix() {\n margin-top: convert.to-rem(-3px);\n margin-bottom: convert.to-rem(-3px);\n}\n","@use '../../../styles/tokens/color';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/convert';\n\n$base: (\n default: (\n border: 2px solid transparent,\n font-size: convert.to-rem(18px),\n font-weight: bold,\n line-height: 1.4,\n transition-duration: 200ms,\n transition-timing-function: ease-in-out,\n transition-property: (\n border-color,\n background-color,\n color,\n ),\n ),\n active: (\n transition-property: none,\n ),\n);\n\n/// Generates button sizes. Each key is a suffix added to btn- (except default), and each value is the button font size.\n/// @type Map\n/// @prop {Length} button-size.font-size\n$sizes: (\n default: (\n min-height: convert.to-rem(40px),\n padding: convert.to-rem(6px) convert.to-rem(15px),\n ),\n small: (\n min-height: convert.to-rem(30px),\n padding: convert.to-rem(2px) convert.to-rem(10px),\n ),\n large: (\n min-height: convert.to-rem(50px),\n padding: space.get('small') convert.to-rem(20px),\n ),\n);\n\n/// Generates button color/style variants.\n/// @type Map\n/// @prop {Map} variant - Variant name (\".btn__primary\"). \"default\" is applied to generic \".btn\" class\n/// all props in styles.variant are settings of the button style mixin. @mixin style\n/// @example\n/// $styles:\n/// primary: (\n/// default: (\n/// text-color: white\n/// background: primary\n/// ),\n/// active: (...),\n/// ...\n/// ), // primary color bg and border, white text and default shadow\n/// );\n$styles: (\n default: (\n default: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n hover: (\n color: color.$white,\n background-color: color.$black,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$gray-700,\n background-color: transparent,\n border-color: color.$gray-600,\n ),\n ),\n primary: (\n default: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n active: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n disabled: (\n color: color.$white,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n fill: (\n default: (\n color: color.$white,\n background-color: color.$black,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$white,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n ghost: (\n default: (\n color: color.$black,\n background-color: transparent,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$gray-500,\n ),\n active: (\n color: color.$orange-dark,\n background-color: transparent,\n border-color: color.$gray-500,\n ),\n disabled: (\n color: color.$gray-700,\n background-color: transparent,\n border-color: color.$gray-600,\n ),\n ),\n);\n\n/// Generates inverse button color/style variants.\n/// @type Map\n/// @prop {Map} variant - Button variant name (\".btn-primary\"). \"default\" is applied to generic \".btn\" class\n/// all props in styles.variant are settings of the button style mixin. @mixin style\n/// @example\n/// $inverse-styles:\n/// primary: (\n/// default: (\n/// text-color: white\n/// background: primary\n/// ),\n/// active: (...),\n/// ...\n/// ), // primary color bg and border, white text and default shadow\n/// );\n$inverse-styles: (\n default: (\n default: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n hover: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$gray-600,\n border-color: color.$gray-600,\n background-color: transparent,\n ),\n ),\n primary: (\n default: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n disabled: (\n color: color.$black,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n fill: (\n default: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n hover: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$black,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n ghost: (\n default: (\n color: color.$white,\n background-color: transparent,\n border-color: transparent,\n ),\n active: (\n color: color.$orange-dark,\n background-color: transparent,\n border-color: color.$gray-700,\n ),\n hover: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$gray-700,\n ),\n disabled: (\n color: color.$gray-600,\n background-color: transparent,\n border-color: transparent,\n ),\n ),\n);\n\n$icon-offset-from-edge: -0.25em;\n$icon-offset-from-text: 0.5em;\n","@use './mixins';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/space';\n\n.icon {\n @include mixins.base;\n @include mixins.sizes;\n @include mixins.colors;\n}\n\nuse {\n pointer-events: none;\n}\n","@use 'sass:map';\n@use 'sass:list';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tools/text';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tokens/color';\n@use 'config';\n\n@mixin text-readable {\n max-width: 35em;\n}\n\n@mixin text-narrow {\n max-width: 22em;\n}\n\n@mixin text-fullwidth {\n max-width: none;\n}\n\n@mixin headings-base($heading-config, $selector-pattern, $base-styles) {\n $selector: ();\n\n @each $heading-level in map.keys($heading-config) {\n $selector: list.append(\n $selector,\n #{text.str-replace($selector-pattern, '$', $heading-level)},\n 'comma'\n );\n }\n\n #{$selector} {\n @include generate.css-map($base-styles);\n }\n}\n\n@mixin headings($config, $selector-pattern) {\n @each $heading, $breakpoints in $config {\n #{text.str-replace($selector-pattern, '$', $heading)} {\n @include generate.responsive-css-map($breakpoints);\n }\n }\n}\n\n@mixin body-text($config) {\n html {\n @include generate.css-map(map.get($config, default));\n }\n\n p {\n margin-top: 0;\n margin-bottom: space.get();\n }\n\n cite {\n font-style: normal;\n }\n\n hr {\n margin-top: space.get();\n margin-bottom: space.get();\n border: 0;\n border-top: 1px solid color.$gray-300;\n }\n}\n\n@mixin readability() {\n p {\n @include text-readable;\n }\n}\n\n@mixin list-unstyled() {\n list-style: none;\n list-style-type: none !important;\n max-width: none;\n margin: 0;\n padding: 0;\n\n > li {\n margin-bottom: 0;\n\n /* Fixes VoiceOver no announcing unordered lists */\n &::before {\n content: ' ';\n position: absolute;\n width: 0;\n height: 0;\n }\n }\n}\n\n@mixin list-base() {\n margin: 0 0 space.get() 0;\n padding-left: space.get('large');\n @include text-readable;\n}\n\n@mixin list-spacing($space, $config: config.$list-spacing) {\n > *:where(li) {\n margin-bottom: map-get($config, $space);\n\n > *:where(ul, ol) {\n margin-top: map-get($config, $space);\n }\n }\n}\n\n@mixin ul-list-base() {\n list-style-type: square;\n ul {\n list-style-type: disc;\n ul {\n list-style-type: circle;\n } \n } \n}\n\n@mixin list-circle() {\n list-style-type: disc !important;\n ul {\n list-style-type: circle;\n ul {\n list-style-type: square;\n } \n } \n}\n\n@mixin list-square() {\n list-style-type: square !important;\n ul {\n list-style-type: disc;\n ul {\n list-style-type: circle;\n } \n } \n}\n\n@mixin list-no-offset() {\n padding-left: space.get();\n list-style-position: outside;\n}\n\n@mixin list-inline() {\n @include list-unstyled();\n\n > li {\n display: inline-block;\n\n &:not(:last-child) {\n margin-right: space.get('small');\n }\n }\n}\n","@use './config';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/generate';\n\n@mixin base() {\n fill: currentColor;\n width: 1em;\n height: 1em;\n vertical-align: text-bottom;\n}\n\n@mixin sizes($sizes: config.$sizes) {\n @each $breakpoint, $props in $sizes {\n @include breakpoint.get($breakpoint) {\n @each $variant, $size in $props {\n &#{generate.variant-name($variant)} {\n width: $size;\n height: $size;\n }\n }\n }\n }\n}\n\n@mixin colors($colors: config.$colors) {\n @each $variant, $color in $colors {\n &#{generate.variant-name($variant)} {\n color: $color;\n }\n }\n}\n","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n$yellow-lighter: #fff6b6;\n$red: #ff4d4d;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n","@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/color';\n\n$sizes: (\n default: (\n small: convert.to-rem(16px),\n medium: convert.to-rem(24px),\n large: convert.to-rem(32px),\n xlarge: convert.to-rem(40px),\n xxlarge: convert.to-rem(48px),\n huge: convert.to-rem(56px),\n ),\n md: (\n xlarge: convert.to-rem(48px),\n xxlarge: convert.to-rem(64px),\n huge: convert.to-rem(80px),\n ),\n);\n\n$colors: (\n info: color.$info,\n success: color.$success,\n warning: color.$warning,\n danger: color.$danger,\n);\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n"]}
@@ -1,2 +1,2 @@
1
- .card{position:relative;display:flex;flex-direction:column;background-color:#fff;margin-bottom:1.25rem}.card>:not([class*=mb-]){margin-bottom:0;flex-shrink:0}.card--bordered{border:2px solid #000}.card--shadow{box-shadow:3px 6px 11px rgba(0,0,0,.25)}.card__section{flex:0 1 auto;padding:1.25rem}.card__section>:last-child{margin-bottom:0}.card__section--fill{flex-grow:1}.card__header{flex:0 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:.625rem 1.25rem;background-color:#000;color:#fff;font-weight:700}.card__header--gray{background-color:#ddd;color:#000}.promotion-card{display:flex;flex-direction:column}@media screen and (min-width:768px){.promotion-card{flex-direction:row;align-items:flex-end;margin:1.25rem 0}}.promotion-card__section{display:flex;flex-direction:column;align-items:flex-start;grid-gap:1.25rem;gap:1.25rem}@media screen and (min-width:768px){.promotion-card__section{flex:0 1 50%}}.promotion-card__content{display:flex;flex-direction:column;align-items:flex-start;grid-gap:10px;gap:10px}.promotion-card__image-wrapper{height:12.25rem;padding-top:1.25rem}.promotion-card__image-wrapper picture{display:inline}.promotion-card__image-wrapper img{width:100%;height:100%;object-fit:cover;object-position:top;margin-bottom:0}@media screen and (min-width:768px){.promotion-card__image-wrapper{flex:0 1 50%}}.promotion-card__title{margin-bottom:0}@media screen and (min-width:768px){.promotion-card__title{display:inline-block}}
1
+ .card{position:relative;display:flex;flex-direction:column;background-color:#fff;margin-bottom:1.25rem}.card>:not([class*=mb-]){margin-bottom:0;flex-shrink:0}.card--bordered{border:2px solid #000}.card--shadow{box-shadow:3px 6px 11px rgba(0,0,0,.25)}.card__section{flex:0 1 auto;padding:1.25rem}.card__section>:last-child{margin-bottom:0}.card__section--fill{flex-grow:1}.card__header{flex:0 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:.625rem 1.25rem;background-color:#000;color:#fff;font-weight:700}.card__header--wrap{white-space:normal}.card__header--gray{background-color:#ddd;color:#000}.promotion-card{display:flex;flex-direction:column}@media screen and (min-width:768px){.promotion-card{flex-direction:row;align-items:flex-end;margin:1.25rem 0}}.promotion-card__section{display:flex;flex-direction:column;align-items:flex-start;grid-gap:1.25rem;gap:1.25rem}@media screen and (min-width:768px){.promotion-card__section{flex:0 1 50%}}.promotion-card__content{display:flex;flex-direction:column;align-items:flex-start;grid-gap:10px;gap:10px}.promotion-card__image-wrapper{height:12.25rem;padding-top:1.25rem}.promotion-card__image-wrapper picture{display:inline}.promotion-card__image-wrapper img{width:100%;height:100%;object-fit:cover;object-position:top;margin-bottom:0}@media screen and (min-width:768px){.promotion-card__image-wrapper{flex:0 1 50%}}.promotion-card__title{margin-bottom:0}@media screen and (min-width:768px){.promotion-card__title{display:inline-block}}
2
2
  /*# sourceMappingURL=style.css.map */
@@ -1 +1 @@
1
- {"version":3,"sources":["style.scss","mixins.scss","../../../styles/tools/generate.scss","config.scss","../../../styles/tokens/breakpoint.scss"],"names":[],"mappings":"AAEA,MCEE,iBAAA,CACA,YAAA,CACA,qBAAA,CCqBE,qBAAA,CAAA,qBAAA,CDnBF,yBACE,eAAA,CACA,aAAA,CDLF,gBC0BA,qBEnBY,CHHZ,cEkBE,uCAAA,CFdF,eCIA,aAAA,CCUE,eAAA,CDNF,2BACE,eAAA,CDNA,qBCWF,WAAA,CDNA,cCkBA,aAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CCfE,uBAAA,CAAA,qBAAA,CAAA,UAAA,CAAA,eAAA,CFHA,oBEGA,qBAAA,CAAA,UAAA,CFvBJ,gBCIE,YAAA,CACA,qBAAA,CGqBI,oCJ1BN,gBCQI,kBAAA,CACA,oBAAA,CACA,gBAAA,CAAA,CDPF,yBCYA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,gBAAA,CAAA,WAAA,CGQI,oCJvBJ,yBCkBE,YAAA,CAAA,CDdF,yBCmBA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,aAAA,CAAA,QAAA,CDlBA,+BCsBE,eAAA,CACA,mBAAA,CAEA,uCACE,cAAA,CAGF,mCACE,UAAA,CACA,WAAA,CACA,gBAAA,CACA,mBAAA,CACA,eAAA,CGnBA,oCJfJ,+BCsCI,YAAA,CAAA,CDlCJ,uBCuCA,eAAA,CG5BI,oCJXJ,uBC0CE,oBAAA,CAAA","file":"style.css","sourcesContent":["@use '../../../styles/tools/generate';\n@use './config';\n@use './mixins';\n\n.promotion-card {\n @include mixins.base;\n\n &__section {\n @include mixins.section;\n }\n\n &__content {\n @include mixins.content;\n }\n\n &__image-wrapper {\n @include mixins.image-wrapper;\n }\n\n &__title {\n @include mixins.title;\n }\n}\n","@use '../../../styles/tokens/space';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/convert';\n@use '../../Typography/styles/config' as typography;\n@use './config';\n\n@mixin base {\n display: flex;\n flex-direction: column;\n\n @include breakpoint.get('md'){\n flex-direction: row;\n align-items: flex-end;\n margin: space.get('medium') 0;\n }\n}\n\n@mixin section {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: space.get('medium');\n\n @include breakpoint.get('md'){\n flex: 0 50%;\n }\n}\n\n@mixin content {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 10px;\n}\n\n@mixin image-wrapper {\n height: convert.to-rem(196px);\n padding-top: space.get('medium');\n\n picture {\n display: inline;\n }\n\n img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: top;\n margin-bottom: 0;\n }\n\n @include breakpoint.get('md'){\n flex: 0 50%;\n }\n}\n\n@mixin title {\n margin-bottom: 0;\n\n @include breakpoint.get('md'){\n display: inline-block;\n }\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n","@use '../../../styles/tokens/color';\n@use '../../../styles/tokens/space';\n\n$card-base: (\n background-color: color.$white,\n margin-bottom: space.get(),\n);\n\n$card-section: (\n padding: space.get(),\n);\n\n$card-border: 2px solid color.$black;\n\n$header-base: (\n padding: space.get(),\n padding-top: space.get('small'),\n padding-bottom: space.get('small'),\n background-color: color.$black,\n color: color.$white,\n font-weight: bold,\n);\n\n$card-shadow: (\n box-shadow: 3px 6px 11px rgba(0,0,0,0.25),\n);\n\n$header-gray: (\n background-color: color.$gray-400,\n color: color.$black,\n)\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["style.scss","mixins.scss","../../../styles/tools/generate.scss","config.scss","../../../styles/tokens/breakpoint.scss"],"names":[],"mappings":"AAEA,MCEE,iBAAA,CACA,YAAA,CACA,qBAAA,CCqBE,qBAAA,CAAA,qBAAA,CDnBF,yBACE,eAAA,CACA,aAAA,CDLF,gBC0BA,qBEnBY,CHHZ,cEkBE,uCAAA,CFdF,eCIA,aAAA,CCUE,eAAA,CDNF,2BACE,eAAA,CDNA,qBCWF,WAAA,CDNA,cCkBA,aAAA,CACA,eAAA,CACA,kBAAA,CACA,sBAAA,CCfE,uBAAA,CAAA,qBAAA,CAAA,UAAA,CAAA,eAAA,CFHA,oBC4BF,kBAAA,CDxBE,oBEDA,qBAAA,CAAA,UAAA,CFvBJ,gBCIE,YAAA,CACA,qBAAA,CGqBI,oCJ1BN,gBCQI,kBAAA,CACA,oBAAA,CACA,gBAAA,CAAA,CDPF,yBCYA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,gBAAA,CAAA,WAAA,CGQI,oCJvBJ,yBCkBE,YAAA,CAAA,CDdF,yBCmBA,YAAA,CACA,qBAAA,CACA,sBAAA,CACA,aAAA,CAAA,QAAA,CDlBA,+BCsBE,eAAA,CACA,mBAAA,CAEA,uCACE,cAAA,CAGF,mCACE,UAAA,CACA,WAAA,CACA,gBAAA,CACA,mBAAA,CACA,eAAA,CGnBA,oCJfJ,+BCsCI,YAAA,CAAA,CDlCJ,uBCuCA,eAAA,CG5BI,oCJXJ,uBC0CE,oBAAA,CAAA","file":"style.css","sourcesContent":["@use '../../../styles/tools/generate';\n@use './config';\n@use './mixins';\n\n.promotion-card {\n @include mixins.base;\n\n &__section {\n @include mixins.section;\n }\n\n &__content {\n @include mixins.content;\n }\n\n &__image-wrapper {\n @include mixins.image-wrapper;\n }\n\n &__title {\n @include mixins.title;\n }\n}\n","@use '../../../styles/tokens/space';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/convert';\n@use '../../Typography/styles/config' as typography;\n@use './config';\n\n@mixin base {\n display: flex;\n flex-direction: column;\n\n @include breakpoint.get('md'){\n flex-direction: row;\n align-items: flex-end;\n margin: space.get('medium') 0;\n }\n}\n\n@mixin section {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: space.get('medium');\n\n @include breakpoint.get('md'){\n flex: 0 50%;\n }\n}\n\n@mixin content {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 10px;\n}\n\n@mixin image-wrapper {\n height: convert.to-rem(196px);\n padding-top: space.get('medium');\n\n picture {\n display: inline;\n }\n\n img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n object-position: top;\n margin-bottom: 0;\n }\n\n @include breakpoint.get('md'){\n flex: 0 50%;\n }\n}\n\n@mixin title {\n margin-bottom: 0;\n\n @include breakpoint.get('md'){\n display: inline-block;\n }\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n","@use '../../../styles/tokens/color';\n@use '../../../styles/tokens/space';\n\n$card-base: (\n background-color: color.$white,\n margin-bottom: space.get(),\n);\n\n$card-section: (\n padding: space.get(),\n);\n\n$card-border: 2px solid color.$black;\n\n$header-base: (\n padding: space.get(),\n padding-top: space.get('small'),\n padding-bottom: space.get('small'),\n background-color: color.$black,\n color: color.$white,\n font-weight: bold,\n);\n\n$card-shadow: (\n box-shadow: 3px 6px 11px rgba(0,0,0,0.25),\n);\n\n$header-gray: (\n background-color: color.$gray-400,\n color: color.$black,\n)\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["style.scss","../../../styles/tokens/color.scss"],"names":[],"mappings":"AAGA,WACE,wBAAA,CACA,kBCJO,CDKP,UCHM,CDIN,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,2BAAA,CACA,iCAAA,CAGF,iBACE,cAAA","file":"style.css","sourcesContent":["@use '../../../styles/tokens/color';\n@use '../../../styles/tokens/space';\n\n.skip-link {\n padding: space.get('xsmall') space.get('small');\n background: color.$orange;\n color: color.$black;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 12;\n transform: translateY(-100%);\n transition: transform 0.2s ease-out;\n}\n\n.skip-link:focus {\n transform: none;\n}\n","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n"]}
1
+ {"version":3,"sources":["style.scss","../../../styles/tokens/color.scss"],"names":[],"mappings":"AAGA,WACE,wBAAA,CACA,kBCJO,CDKP,UCHM,CDIN,iBAAA,CACA,KAAA,CACA,MAAA,CACA,UAAA,CACA,2BAAA,CACA,iCAAA,CAGF,iBACE,cAAA","file":"style.css","sourcesContent":["@use '../../../styles/tokens/color';\n@use '../../../styles/tokens/space';\n\n.skip-link {\n padding: space.get('xsmall') space.get('small');\n background: color.$orange;\n color: color.$black;\n position: absolute;\n top: 0;\n left: 0;\n z-index: 12;\n transform: translateY(-100%);\n transition: transform 0.2s ease-out;\n}\n\n.skip-link:focus {\n transform: none;\n}\n","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n$yellow-lighter: #fff6b6;\n$red: #ff4d4d;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["style.scss","mixins.scss","../../../styles/tokens/color.scss","config.scss","../../../styles/tokens/breakpoint.scss","../../../styles/tools/generate.scss"],"names":[],"mappings":"AAIA,OCEE,UAAA,CACA,qBAAA,CACA,UCLM,CDMN,qBCLM,CFGN,oBCMA,iCAAA,CACA,qBAAA,CACA,iBAAA,CACA,mBAAA,CDJA,gBCQA,qBAAA,CACA,eAAA,CACA,4BAAA,CACA,eAAA,CDPA,UCWA,mBAAA,CACA,4BAAA,CDRA,gBCYA,uBE7BgB,CHqBhB,gBCYA,eAAA,CDRA,yBCYA,oBAAA,CDRA,mBCYA,yBAAA,CDRA,gBCYA,qBAAA,CACA,yBAAA,CAEA,kCACE,qBCpCO,CFwBT,0CCiBA,wBExDc,CH2Cd,gBCqEA,UAAA,CD/DI,kBCWJ,aAAA,CACA,UAAA,CACA,eAAA,CACA,gCAAA,CGzBE,uCJWE,sBCWJ,aAAA,CACA,UAAA,CACA,eAAA,CACA,gCAAA,CAAA,CGzBE,uCJWE,sBCWJ,aAAA,CACA,UAAA,CACA,eAAA,CACA,gCAAA,CAAA,CGzBE,wCJWE,sBCWJ,aAAA,CACA,UAAA,CACA,eAAA,CACA,gCAAA,CAAA,CGzBE,wCJWE,sBCWJ,aAAA,CACA,UAAA,CACA,eAAA,CACA,gCAAA,CAAA,CDRA,oBCYA,iBAAA,CACA,oBAAA,CACA,aAAA,CACA,cAAA,CACA,qBAAA,CACA,cAAA,CDdE,qDCkBF,UAAA,CACA,iBAAA,CACA,aAAA,CACA,iCAAA,CACA,kCAAA,CACA,8BAAA,CDlBE,2BCsBF,OAAA,CACA,4BAAA,CDnBE,0BCuBF,QAAA,CACA,yBAAA,CDhBE,kGCoBF,UAAA,CDfA,eCmBA,qBCtFS,CFuET,sCCmBA,wBAAA,CDfA,qBCmBA,yBAAA,CACA,0BAAA,CDhBA,qBACE,SAAA,CAGF,mBACE,UAAA,CA9FJ,MCCE,iBAAA,CACA,SAAA,CACA,UAAA,CACA,0BAAA,CAOM,aACE,UEbF,CFcE,WEdF,CFYA,cACE,YEbF,CFcE,aEdF,CFYA,aACE,UEbF,CFcE,WEdF,CFYA,cACE,YEbF,CFcE,aEdF,CFYA,eACE,UEbF,CFcE,WEdF,CFYA,YACE,YEbF,CFcE,aEdF,CC2BF,oCHfE,cACE,UEbF,CFcE,WEdF,CFYA,eACE,UEbF,CFcE,WEdF,CFYA,YACE,UEbF,CFcE,WEdF,CAAA,CFuBJ,YACE,aERG,CFOL,eACE,aERG,CFOL,eACE,UERG,CFOL,cACE,aERG,CHTT,IACE,mBAAA,CAPF,KKuBI,4BAAA,CAAA,kBAAA,CAAA,eAAA,CAAA,eAAA,CAAA,uBAAA,CAAA,sCAAA,CAAA,uDAAA,CJfF,mBAAA,CACA,kBAAA,CACA,sBAAA,CACA,iBAAA,CACA,oBAAA,CACA,gBAAA,CACA,sBAAA,CACA,cAAA,CAuBA,qBAAA,CAjBA,2BIEE,wBAAA,CJEA,SAAA,CAGF,wCAIE,kBAAA,CAQF,sBACE,oBAAA,CDlCF,KKgBE,iBAAA,CAAA,wBAAA,CLhBF,YKgBE,mBAAA,CAAA,uBAAA,CLhBF,YKgBE,mBAAA,CAAA,uBAAA,CLRF,iCKQE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CJ6BF,6CI7BE,UAAA,CAAA,qBAAA,CAAA,wBAAA,CJgCA,SAAA,CAGF,oGInCE,UAAA,CAAA,kBAAA,CAAA,wBAAA,CJuCA,SAAA,CAGF,8HI1CE,UAAA,CAAA,iBAAA,CAAA,wBAAA,CLRF,mDKQE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CJ6BF,+DI7BE,UAAA,CAAA,qBAAA,CAAA,wBAAA,CJgCA,SAAA,CAGF,wIInCE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CJuCA,SAAA,CAGF,kKI1CE,UAAA,CAAA,qBAAA,CAAA,iBAAA,CLRF,6CKQE,UAAA,CAAA,qBAAA,CAAA,wBAAA,CJ6BF,yDI7BE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CJgCA,SAAA,CAGF,4HInCE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CJuCA,SAAA,CAGF,sJI1CE,UAAA,CAAA,qBAAA,CAAA,iBAAA,CLRF,+CKQE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CJ6BF,2DI7BE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CJgCA,SAAA,CAGF,gIInCE,aAAA,CAAA,wBAAA,CAAA,iBAAA,CJuCA,SAAA,CAGF,0JI1CE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CAAA,uBAAA,UAAA,CAAA,wBAAA,CAAA,iBAAA,CJ6BF,mCI7BE,UAAA,CAAA,qBAAA,CAAA,wBAAA,CJgCA,SAAA,CAGF,gFInCE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CJuCA,SAAA,CAGF,0GI1CE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CAAA,yCAAA,UAAA,CAAA,wBAAA,CAAA,wBAAA,CJ6BF,qDAGE,SAAA,CAGF,oHInCE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CJuCA,SAAA,CAGF,8II1CE,UAAA,CAAA,qBAAA,CAAA,iBAAA,CAAA,mCAAA,UAAA,CAAA,qBAAA,CAAA,wBAAA,CJ6BF,+CI7BE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CJgCA,SAAA,CAGF,wGInCE,UAAA,CAAA,wBAAA,CAAA,wBAAA,CJuCA,SAAA,CAGF,kII1CE,UAAA,CAAA,qBAAA,CAAA,iBAAA,CAAA,qCAAA,UAAA,CAAA,wBAAA,CAAA,wBAAA,CJ6BF,iDI7BE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CJgCA,SAAA,CAGF,4GInCE,aAAA,CAAA,wBAAA,CAAA,iBAAA,CJuCA,SAAA,CAGF,sII1CE,UAAA,CAAA,wBAAA,CAAA,iBAAA,CLMJ,aC+CE,mBAAA,CACA,aAAA,CACA,aAAA,CACA,sBAAA,CACA,kBAAA,CACA,SAAA,CACA,aAAA,CDjDE,iBCuDF,YAFO,CAGP,aAHO,CDrDL,wBCuDF,cAFO,CAGP,eAHO,CDrDL,wBCuDF,cAFO,CAGP,eAHO,CD/CT,gBCsDE,0BAAA,CAGE,kBEoJoB,CFnJpB,iBEoJoB,CH1MxB,iBCkDE,0BAAA,CAQE,gBEgJoB,CF/IpB,mBE8IoB,CHrMxB,yBC6DE,oBAAA,CACA,uBAAA","file":"style.css","sourcesContent":["@use '../../../styles/tools/generate';\n@use './config';\n@use './mixins';\n\n.btn {\n @include mixins.base;\n @include mixins.layout;\n}\n\n// button sizes\n@each $name, $props in config.$sizes {\n .btn#{generate.variant-name($name)} {\n @include mixins.size($name);\n }\n}\n\n\n// inverse button styles\n@each $name, $props in config.$inverse-styles {\n .bg-black .btn#{generate.variant-name($name)},\n .btn--inverse.btn#{generate.variant-name($name)} {\n @include mixins.style($name, config.$inverse-styles);\n }\n}\n\n// button styles\n@each $name, $props in config.$styles {\n .btn#{generate.variant-name($name)},\n .btn--default.btn#{generate.variant-name($name)} {\n @include mixins.style($name);\n }\n}\n\n.btn--square {\n @include mixins.square-base;\n\n @each $name, $props in config.$sizes {\n &.btn#{generate.variant-name($name)} {\n @include mixins.square-size($name);\n }\n }\n}\n\n.btn__icon-left {\n @include mixins.icon('left');\n}\n\n.btn__icon-right {\n @include mixins.icon('right');\n}\n\n.btn--large .icon--large {\n @include mixins.large-button-large-icon-size-fix();\n}\n","@use '../../../styles/tokens/base';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tools/map';\n@use './config';\n\n/// Applies base button styles used for every button-base\n/// @param {map} $states - Map of button states\n@mixin base($states: config.$base) {\n @include generate.css-map($states, 'default');\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n text-decoration: none;\n line-height: 1.25;\n vertical-align: baseline;\n cursor: pointer;\n\n &:hover {\n @include generate.css-map($states, 'hover');\n }\n\n &:active,\n &.is-active {\n @include generate.css-map($states, 'active');\n\n z-index: 2;\n }\n\n &[aria-disabled='true'],\n &[disabled] {\n @include generate.css-map($states, 'disabled');\n\n cursor: not-allowed;\n }\n}\n\n// Layout rules. Adds space between adjacent buttons and applies vertical spacing after a button.\n@mixin layout {\n margin-bottom: space.get();\n\n &:not(:last-child) {\n margin-right: space.get('small');\n }\n}\n\n/// Styles our button appropriately\n/// @param {map} $states - Map of button states\n@mixin style($name, $config: config.$styles) {\n $states: map-get($config, $name);\n\n @include generate.css-map($states, 'default');\n\n &:hover {\n @include generate.css-map($states, 'hover');\n\n z-index: 2;\n }\n\n &:active,\n &.is-active {\n @include generate.css-map($states, 'active');\n\n z-index: 2;\n }\n\n &[aria-disabled='true'],\n &[disabled] {\n @include generate.css-map($states, 'disabled');\n }\n}\n\n@mixin size($name, $config: config.$sizes) {\n @include generate.css-map($config, $name);\n}\n\n@mixin square-base {\n display: inline-flex;\n flex: 0 0 auto;\n flex-flow: row;\n justify-content: center;\n align-items: center;\n padding: 0;\n line-height: 0;\n}\n\n@mixin square-size($name, $config: config.$sizes) {\n $size: map-get(map-get($config, $name), 'min-height');\n\n width: $size;\n height: $size;\n}\n\n@mixin icon($position) {\n backface-visibility: hidden;\n\n @if ($position == 'left') {\n margin-left: config.$icon-offset-from-edge;\n margin-right: config.$icon-offset-from-text;\n }\n\n @if ($position == 'right') {\n margin-left: config.$icon-offset-from-text;\n margin-right: config.$icon-offset-from-edge;\n }\n}\n\n// Fixes issue when a large icon in large button increases its height\n@mixin large-button-large-icon-size-fix() {\n margin-top: convert.to-rem(-3px);\n margin-bottom: convert.to-rem(-3px);\n}\n","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n","@use '../../../styles/tokens/color';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/convert';\n\n$base: (\n default: (\n border: 2px solid transparent,\n font-size: convert.to-rem(18px),\n font-weight: bold,\n line-height: 1.4,\n transition-duration: 200ms,\n transition-timing-function: ease-in-out,\n transition-property: (\n border-color,\n background-color,\n color,\n ),\n ),\n active: (\n transition-property: none,\n ),\n);\n\n/// Generates button sizes. Each key is a suffix added to btn- (except default), and each value is the button font size.\n/// @type Map\n/// @prop {Length} button-size.font-size\n$sizes: (\n default: (\n min-height: convert.to-rem(40px),\n padding: convert.to-rem(6px) convert.to-rem(15px),\n ),\n small: (\n min-height: convert.to-rem(30px),\n padding: convert.to-rem(2px) convert.to-rem(10px),\n ),\n large: (\n min-height: convert.to-rem(50px),\n padding: space.get('small') convert.to-rem(20px),\n ),\n);\n\n/// Generates button color/style variants.\n/// @type Map\n/// @prop {Map} variant - Variant name (\".btn__primary\"). \"default\" is applied to generic \".btn\" class\n/// all props in styles.variant are settings of the button style mixin. @mixin style\n/// @example\n/// $styles:\n/// primary: (\n/// default: (\n/// text-color: white\n/// background: primary\n/// ),\n/// active: (...),\n/// ...\n/// ), // primary color bg and border, white text and default shadow\n/// );\n$styles: (\n default: (\n default: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n hover: (\n color: color.$white,\n background-color: color.$black,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$gray-700,\n background-color: transparent,\n border-color: color.$gray-600,\n ),\n ),\n primary: (\n default: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n active: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n disabled: (\n color: color.$white,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n fill: (\n default: (\n color: color.$white,\n background-color: color.$black,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$white,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n ghost: (\n default: (\n color: color.$black,\n background-color: transparent,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$gray-500,\n ),\n active: (\n color: color.$orange-dark,\n background-color: transparent,\n border-color: color.$gray-500,\n ),\n disabled: (\n color: color.$gray-700,\n background-color: transparent,\n border-color: color.$gray-600,\n ),\n ),\n);\n\n/// Generates inverse button color/style variants.\n/// @type Map\n/// @prop {Map} variant - Button variant name (\".btn-primary\"). \"default\" is applied to generic \".btn\" class\n/// all props in styles.variant are settings of the button style mixin. @mixin style\n/// @example\n/// $inverse-styles:\n/// primary: (\n/// default: (\n/// text-color: white\n/// background: primary\n/// ),\n/// active: (...),\n/// ...\n/// ), // primary color bg and border, white text and default shadow\n/// );\n$inverse-styles: (\n default: (\n default: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n hover: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$gray-600,\n border-color: color.$gray-600,\n background-color: transparent,\n ),\n ),\n primary: (\n default: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n disabled: (\n color: color.$black,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n fill: (\n default: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n hover: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$black,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n ghost: (\n default: (\n color: color.$white,\n background-color: transparent,\n border-color: transparent,\n ),\n active: (\n color: color.$orange-dark,\n background-color: transparent,\n border-color: color.$gray-700,\n ),\n hover: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$gray-700,\n ),\n disabled: (\n color: color.$gray-600,\n background-color: transparent,\n border-color: transparent,\n ),\n ),\n);\n\n$icon-offset-from-edge: -0.25em;\n$icon-offset-from-text: 0.5em;\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n"]}
1
+ {"version":3,"sources":["style.scss","mixins.scss","../../../styles/tokens/color.scss","config.scss","../../../styles/tokens/breakpoint.scss","../../../styles/tools/generate.scss"],"names":[],"mappings":"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","file":"style.css","sourcesContent":["@use '../../../styles/tools/generate';\n@use './config';\n@use './mixins';\n\n.btn {\n @include mixins.base;\n @include mixins.layout;\n}\n\n// button sizes\n@each $name, $props in config.$sizes {\n .btn#{generate.variant-name($name)} {\n @include mixins.size($name);\n }\n}\n\n\n// inverse button styles\n@each $name, $props in config.$inverse-styles {\n .bg-black .btn#{generate.variant-name($name)},\n .btn--inverse.btn#{generate.variant-name($name)} {\n @include mixins.style($name, config.$inverse-styles);\n }\n}\n\n// button styles\n@each $name, $props in config.$styles {\n .btn#{generate.variant-name($name)},\n .btn--default.btn#{generate.variant-name($name)} {\n @include mixins.style($name);\n }\n}\n\n.btn--square {\n @include mixins.square-base;\n\n @each $name, $props in config.$sizes {\n &.btn#{generate.variant-name($name)} {\n @include mixins.square-size($name);\n }\n }\n}\n\n.btn__icon-left {\n @include mixins.icon('left');\n}\n\n.btn__icon-right {\n @include mixins.icon('right');\n}\n\n.btn--large .icon--large {\n @include mixins.large-button-large-icon-size-fix();\n}\n","@use '../../../styles/tokens/base';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tools/map';\n@use './config';\n\n/// Applies base button styles used for every button-base\n/// @param {map} $states - Map of button states\n@mixin base($states: config.$base) {\n @include generate.css-map($states, 'default');\n\n display: inline-flex;\n align-items: center;\n justify-content: center;\n text-align: center;\n text-decoration: none;\n line-height: 1.25;\n vertical-align: baseline;\n cursor: pointer;\n\n &:hover {\n @include generate.css-map($states, 'hover');\n }\n\n &:active,\n &.is-active {\n @include generate.css-map($states, 'active');\n\n z-index: 2;\n }\n\n &[aria-disabled='true'],\n &[disabled] {\n @include generate.css-map($states, 'disabled');\n\n cursor: not-allowed;\n }\n}\n\n// Layout rules. Adds space between adjacent buttons and applies vertical spacing after a button.\n@mixin layout {\n margin-bottom: space.get();\n\n &:not(:last-child) {\n margin-right: space.get('small');\n }\n}\n\n/// Styles our button appropriately\n/// @param {map} $states - Map of button states\n@mixin style($name, $config: config.$styles) {\n $states: map-get($config, $name);\n\n @include generate.css-map($states, 'default');\n\n &:hover {\n @include generate.css-map($states, 'hover');\n\n z-index: 2;\n }\n\n &:active,\n &.is-active {\n @include generate.css-map($states, 'active');\n\n z-index: 2;\n }\n\n &[aria-disabled='true'],\n &[disabled] {\n @include generate.css-map($states, 'disabled');\n }\n}\n\n@mixin size($name, $config: config.$sizes) {\n @include generate.css-map($config, $name);\n}\n\n@mixin square-base {\n display: inline-flex;\n flex: 0 0 auto;\n flex-flow: row;\n justify-content: center;\n align-items: center;\n padding: 0;\n line-height: 0;\n}\n\n@mixin square-size($name, $config: config.$sizes) {\n $size: map-get(map-get($config, $name), 'min-height');\n\n width: $size;\n height: $size;\n}\n\n@mixin icon($position) {\n backface-visibility: hidden;\n\n @if ($position == 'left') {\n margin-left: config.$icon-offset-from-edge;\n margin-right: config.$icon-offset-from-text;\n }\n\n @if ($position == 'right') {\n margin-left: config.$icon-offset-from-text;\n margin-right: config.$icon-offset-from-edge;\n }\n}\n\n// Fixes issue when a large icon in large button increases its height\n@mixin large-button-large-icon-size-fix() {\n margin-top: convert.to-rem(-3px);\n margin-bottom: convert.to-rem(-3px);\n}\n","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n$yellow-lighter: #fff6b6;\n$red: #ff4d4d;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n","@use '../../../styles/tokens/color';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/convert';\n\n$base: (\n default: (\n border: 2px solid transparent,\n font-size: convert.to-rem(18px),\n font-weight: bold,\n line-height: 1.4,\n transition-duration: 200ms,\n transition-timing-function: ease-in-out,\n transition-property: (\n border-color,\n background-color,\n color,\n ),\n ),\n active: (\n transition-property: none,\n ),\n);\n\n/// Generates button sizes. Each key is a suffix added to btn- (except default), and each value is the button font size.\n/// @type Map\n/// @prop {Length} button-size.font-size\n$sizes: (\n default: (\n min-height: convert.to-rem(40px),\n padding: convert.to-rem(6px) convert.to-rem(15px),\n ),\n small: (\n min-height: convert.to-rem(30px),\n padding: convert.to-rem(2px) convert.to-rem(10px),\n ),\n large: (\n min-height: convert.to-rem(50px),\n padding: space.get('small') convert.to-rem(20px),\n ),\n);\n\n/// Generates button color/style variants.\n/// @type Map\n/// @prop {Map} variant - Variant name (\".btn__primary\"). \"default\" is applied to generic \".btn\" class\n/// all props in styles.variant are settings of the button style mixin. @mixin style\n/// @example\n/// $styles:\n/// primary: (\n/// default: (\n/// text-color: white\n/// background: primary\n/// ),\n/// active: (...),\n/// ...\n/// ), // primary color bg and border, white text and default shadow\n/// );\n$styles: (\n default: (\n default: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n hover: (\n color: color.$white,\n background-color: color.$black,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$gray-700,\n background-color: transparent,\n border-color: color.$gray-600,\n ),\n ),\n primary: (\n default: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n active: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n disabled: (\n color: color.$white,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n fill: (\n default: (\n color: color.$white,\n background-color: color.$black,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$black,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$white,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n ghost: (\n default: (\n color: color.$black,\n background-color: transparent,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: transparent,\n border-color: color.$gray-500,\n ),\n active: (\n color: color.$orange-dark,\n background-color: transparent,\n border-color: color.$gray-500,\n ),\n disabled: (\n color: color.$gray-700,\n background-color: transparent,\n border-color: color.$gray-600,\n ),\n ),\n);\n\n/// Generates inverse button color/style variants.\n/// @type Map\n/// @prop {Map} variant - Button variant name (\".btn-primary\"). \"default\" is applied to generic \".btn\" class\n/// all props in styles.variant are settings of the button style mixin. @mixin style\n/// @example\n/// $inverse-styles:\n/// primary: (\n/// default: (\n/// text-color: white\n/// background: primary\n/// ),\n/// active: (...),\n/// ...\n/// ), // primary color bg and border, white text and default shadow\n/// );\n$inverse-styles: (\n default: (\n default: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n hover: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$gray-600,\n border-color: color.$gray-600,\n background-color: transparent,\n ),\n ),\n primary: (\n default: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n hover: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n active: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n disabled: (\n color: color.$black,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n fill: (\n default: (\n color: color.$black,\n background-color: color.$white,\n border-color: transparent,\n ),\n hover: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$white,\n ),\n active: (\n color: color.$white,\n background-color: color.$orange-dark,\n border-color: transparent,\n ),\n disabled: (\n color: color.$black,\n background-color: color.$gray-600,\n border-color: color.$gray-600,\n ),\n ),\n ghost: (\n default: (\n color: color.$white,\n background-color: transparent,\n border-color: transparent,\n ),\n active: (\n color: color.$orange-dark,\n background-color: transparent,\n border-color: color.$gray-700,\n ),\n hover: (\n color: color.$white,\n background-color: transparent,\n border-color: color.$gray-700,\n ),\n disabled: (\n color: color.$gray-600,\n background-color: transparent,\n border-color: transparent,\n ),\n ),\n);\n\n$icon-offset-from-edge: -0.25em;\n$icon-offset-from-text: 0.5em;\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["style.scss","mixins.scss","../../../styles/tokens/color.scss","../../../styles/tools/generate.scss"],"names":[],"mappings":"AAMA,aCCI,uCAAA,CACA,sBAAA,CAAA,iBAAA,CAIA,iBAAA,CACA,iBAAA,CACA,uCAEI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,eAAA,CACA,aAAA,CACA,2BAAA,CACA,qBCnBA,CDqBJ,oBEGA,msBAAA,CAAA,2rBAAA,CAAA,MAAA,CAAA,QAAA,CFCA,mBEDA,2qBAAA,CAAA,mrBAAA,CAAA,KAAA,CAAA,OAAA,CFQA,uDAEI,wBCnCM","file":"style.css","sourcesContent":["@use './config';\n@use './mixins';\n@use '../../../styles/tokens/color';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tokens/breakpoint';\n\n.testimonial {\n @include mixins.base;\n @include mixins.quotation-mark;\n}\n\n.testimonial--orange {\n @include mixins.orange;\n}","@use './config';\n@use '../../../styles/tokens/base';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tools/convert';\n\n@mixin base {\n padding: space.get('small') space.get('large') space.get('small') convert.to-rem(40px);\n width: fit-content;\n}\n\n@mixin quotation-mark {\n font-size: convert.to-rem(14px);\n position: relative;\n &::before,\n &::after {\n content: \"\";\n display: block;\n position: absolute;\n height: convert.to-rem(18px);\n width: convert.to-rem(20px);\n background-repeat: no-repeat;\n background-color: config.$black;\n }\n &::before {\n @include generate.css-map(config.$quotation-mark-bottom);\n @include generate.css-map(config.$quotation-mark-bottom-position, 'default');\n }\n &::after {\n @include generate.css-map(config.$quotation-mark-top);\n @include generate.css-map(config.$quotation-mark-top-position, 'default');\n }\n}\n\n@mixin orange {\n &::before,\n &::after {\n background-color: config.$orange;\n }\n}","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n"]}
1
+ {"version":3,"sources":["style.scss","mixins.scss","../../../styles/tokens/color.scss","../../../styles/tools/generate.scss"],"names":[],"mappings":"AAMA,aCCI,uCAAA,CACA,sBAAA,CAAA,iBAAA,CAIA,iBAAA,CACA,iBAAA,CACA,uCAEI,UAAA,CACA,aAAA,CACA,iBAAA,CACA,eAAA,CACA,aAAA,CACA,2BAAA,CACA,qBCnBA,CDqBJ,oBEGA,msBAAA,CAAA,2rBAAA,CAAA,MAAA,CAAA,QAAA,CFCA,mBEDA,2qBAAA,CAAA,mrBAAA,CAAA,KAAA,CAAA,OAAA,CFQA,uDAEI,wBCnCM","file":"style.css","sourcesContent":["@use './config';\n@use './mixins';\n@use '../../../styles/tokens/color';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tokens/breakpoint';\n\n.testimonial {\n @include mixins.base;\n @include mixins.quotation-mark;\n}\n\n.testimonial--orange {\n @include mixins.orange;\n}","@use './config';\n@use '../../../styles/tokens/base';\n@use '../../../styles/tokens/space';\n@use '../../../styles/tools/generate';\n@use '../../../styles/tools/convert';\n\n@mixin base {\n padding: space.get('small') space.get('large') space.get('small') convert.to-rem(40px);\n width: fit-content;\n}\n\n@mixin quotation-mark {\n font-size: convert.to-rem(14px);\n position: relative;\n &::before,\n &::after {\n content: \"\";\n display: block;\n position: absolute;\n height: convert.to-rem(18px);\n width: convert.to-rem(20px);\n background-repeat: no-repeat;\n background-color: config.$black;\n }\n &::before {\n @include generate.css-map(config.$quotation-mark-bottom);\n @include generate.css-map(config.$quotation-mark-bottom-position, 'default');\n }\n &::after {\n @include generate.css-map(config.$quotation-mark-top);\n @include generate.css-map(config.$quotation-mark-top-position, 'default');\n }\n}\n\n@mixin orange {\n &::before,\n &::after {\n background-color: config.$orange;\n }\n}","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n$yellow-lighter: #fff6b6;\n$red: #ff4d4d;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n"]}
@@ -1,2 +1,2 @@
1
- img,picture{display:inline-block;vertical-align:middle;max-width:100%;height:auto}.img{margin-bottom:1.25rem}.icon{fill:currentColor;width:1em;height:1em;vertical-align:text-bottom}.icon--small{width:1rem;height:1rem}.icon--medium{width:1.5rem;height:1.5rem}.icon--large{width:2rem;height:2rem}.icon--xlarge{width:2.5rem;height:2.5rem}.icon--xxlarge{width:3rem;height:3rem}.icon--huge{width:3.5rem;height:3.5rem}@media screen and (min-width:768px){.icon--xlarge{width:3rem;height:3rem}.icon--xxlarge{width:4rem;height:4rem}.icon--huge{width:5rem;height:5rem}}.icon--info{color:#527edb}.icon--success{color:#32c832}.icon--warning{color:#fc0}.icon--danger{color:#cd3c14}use{pointer-events:none}.mb{margin-bottom:1.25rem}.mb-xsmall{margin-bottom:5px!important}.mb-small{margin-bottom:10px!important}.mb-medium{margin-bottom:20px!important}.mb-large{margin-bottom:30px!important}.mb-xlarge{margin-bottom:60px!important}.mb-none{margin-bottom:0!important}@media screen and (min-width:480px){.mb-sm-xsmall{margin-bottom:5px!important}.mb-sm-small{margin-bottom:10px!important}.mb-sm-medium{margin-bottom:20px!important}.mb-sm-large{margin-bottom:30px!important}.mb-sm-xlarge{margin-bottom:60px!important}.mb-sm-none{margin-bottom:0!important}}@media screen and (min-width:768px){.mb-md-xsmall{margin-bottom:5px!important}.mb-md-small{margin-bottom:10px!important}.mb-md-medium{margin-bottom:20px!important}.mb-md-large{margin-bottom:30px!important}.mb-md-xlarge{margin-bottom:60px!important}.mb-md-none{margin-bottom:0!important}}@media screen and (min-width:992px){.mb-lg-xsmall{margin-bottom:5px!important}.mb-lg-small{margin-bottom:10px!important}.mb-lg-medium{margin-bottom:20px!important}.mb-lg-large{margin-bottom:30px!important}.mb-lg-xlarge{margin-bottom:60px!important}.mb-lg-none{margin-bottom:0!important}}@media screen and (min-width:1240px){.mb-xl-xsmall{margin-bottom:5px!important}.mb-xl-small{margin-bottom:10px!important}.mb-xl-medium{margin-bottom:20px!important}.mb-xl-large{margin-bottom:30px!important}.mb-xl-xlarge{margin-bottom:60px!important}.mb-xl-none{margin-bottom:0!important}}@media screen and (min-width:1380px){.mb-xxl-xsmall{margin-bottom:5px!important}.mb-xxl-small{margin-bottom:10px!important}.mb-xxl-medium{margin-bottom:20px!important}.mb-xxl-large{margin-bottom:30px!important}.mb-xxl-xlarge{margin-bottom:60px!important}.mb-xxl-none{margin-bottom:0!important}}.mt-none{margin-top:0!important}.pt-none{padding-top:0!important}.mr-none{margin-right:0!important}.pr-none{padding-right:0!important}.pb-none{padding-bottom:0!important}.ml-none{margin-left:0!important}.pl-none{padding-left:0!important}.no-mrg{margin:0!important}.no-pad{padding:0!important}.clearfix:after,.clearfix:before{content:"";display:table}.clear,.clearfix:after{clear:both}.justify-content-start{justify-content:flex-start}.justify-content-end{justify-content:flex-end}.justify-content-center{justify-content:center}.justify-content-space-around{justify-content:space-around}.justify-content-space-between{justify-content:space-between}.align-items-start{align-items:flex-start}.align-items-end{align-items:flex-end}.align-items-center{align-items:center}.align-items-stretch{align-items:stretch}.align-self-left{margin-left:0;margin-right:auto}.align-self-right{margin-left:auto;margin-right:0}.align-self-center{margin-left:auto;margin-right:auto}.align-self-top{align-self:flex-start}.align-self-bottom{align-self:flex-end}.align-self-middle{align-self:center}.align-self-stretch{align-self:stretch}.align-self-last{order:999}@media screen and (min-width:480px){.align-self-last--sm{order:999}}@media screen and (min-width:768px){.align-self-last--md{order:999}}@media screen and (min-width:992px){.align-self-last--lg{order:999}}@media screen and (min-width:1240px){.align-self-last--xl{order:999}}@media screen and (min-width:1380px){.align-self-last--xxl{order:999}}.aspect-ratio-21-9{max-width:100%;border:0;aspect-ratio:21/9}.aspect-ratio-16-9{max-width:100%;border:0;aspect-ratio:16/9}.aspect-ratio-4-3{max-width:100%;border:0;aspect-ratio:4/3}.aspect-ratio-1-1{max-width:100%;border:0;aspect-ratio:1/1}.d-block{display:block}.d-inline-block{display:inline-block}.d-inline{display:inline}.fullwidth{width:100%!important}.fullheight{height:100%!important}.center-block{margin-left:auto!important;margin-right:auto!important}.tile{position:relative;overflow:hidden;width:100%;height:0;padding-bottom:100%;background-color:#fff;color:#000}.tile--black{background-color:#000;color:#fff}.tile__body{position:absolute;display:flex;flex-direction:column;align-items:flex-start;top:0;left:0;width:100%;height:100%;z-index:1;padding:.625rem}@media screen and (min-width:480px){.tile__body{padding:.625rem}}@media screen and (min-width:768px){.tile__body{padding:1.25rem}}.tile__bg,.tile__icon{position:absolute;bottom:0;left:50%;width:100%;transform:translateX(-50%);margin-bottom:0}.tile__icon{width:50%;height:50%;margin-bottom:.625rem}
1
+ img,picture{display:inline-block;vertical-align:middle;max-width:100%;height:auto}.img{margin-bottom:1.25rem}.icon{fill:currentColor;width:1em;height:1em;vertical-align:text-bottom}.icon--small{width:1rem;height:1rem}.icon--medium{width:1.5rem;height:1.5rem}.icon--large{width:2rem;height:2rem}.icon--xlarge{width:2.5rem;height:2.5rem}.icon--xxlarge{width:3rem;height:3rem}.icon--huge{width:3.5rem;height:3.5rem}@media screen and (min-width:768px){.icon--xlarge{width:3rem;height:3rem}.icon--xxlarge{width:4rem;height:4rem}.icon--huge{width:5rem;height:5rem}}.icon--info{color:#527edb}.icon--success{color:#32c832}.icon--warning{color:#fc0}.icon--danger{color:#cd3c14}use{pointer-events:none}.mb{margin-bottom:1.25rem}.mb-xsmall{margin-bottom:5px!important}.mb-small{margin-bottom:10px!important}.mb-medium{margin-bottom:20px!important}.mb-large{margin-bottom:30px!important}.mb-xlarge{margin-bottom:60px!important}.mb-none{margin-bottom:0!important}@media screen and (min-width:480px){.mb-sm-xsmall{margin-bottom:5px!important}.mb-sm-small{margin-bottom:10px!important}.mb-sm-medium{margin-bottom:20px!important}.mb-sm-large{margin-bottom:30px!important}.mb-sm-xlarge{margin-bottom:60px!important}.mb-sm-none{margin-bottom:0!important}}@media screen and (min-width:768px){.mb-md-xsmall{margin-bottom:5px!important}.mb-md-small{margin-bottom:10px!important}.mb-md-medium{margin-bottom:20px!important}.mb-md-large{margin-bottom:30px!important}.mb-md-xlarge{margin-bottom:60px!important}.mb-md-none{margin-bottom:0!important}}@media screen and (min-width:992px){.mb-lg-xsmall{margin-bottom:5px!important}.mb-lg-small{margin-bottom:10px!important}.mb-lg-medium{margin-bottom:20px!important}.mb-lg-large{margin-bottom:30px!important}.mb-lg-xlarge{margin-bottom:60px!important}.mb-lg-none{margin-bottom:0!important}}@media screen and (min-width:1240px){.mb-xl-xsmall{margin-bottom:5px!important}.mb-xl-small{margin-bottom:10px!important}.mb-xl-medium{margin-bottom:20px!important}.mb-xl-large{margin-bottom:30px!important}.mb-xl-xlarge{margin-bottom:60px!important}.mb-xl-none{margin-bottom:0!important}}@media screen and (min-width:1380px){.mb-xxl-xsmall{margin-bottom:5px!important}.mb-xxl-small{margin-bottom:10px!important}.mb-xxl-medium{margin-bottom:20px!important}.mb-xxl-large{margin-bottom:30px!important}.mb-xxl-xlarge{margin-bottom:60px!important}.mb-xxl-none{margin-bottom:0!important}}.mt-none{margin-top:0!important}.pt-none{padding-top:0!important}.mr-none{margin-right:0!important}.pr-none{padding-right:0!important}.pb-none{padding-bottom:0!important}.ml-none{margin-left:0!important}.pl-none{padding-left:0!important}.no-mrg{margin:0!important}.no-pad{padding:0!important}.clearfix:after,.clearfix:before{content:"";display:table}.clear,.clearfix:after{clear:both}.justify-content-start{justify-content:flex-start}.justify-content-end{justify-content:flex-end}.justify-content-center{justify-content:center}.justify-content-space-around{justify-content:space-around}.justify-content-space-between{justify-content:space-between}.align-items-start{align-items:flex-start}.align-items-end{align-items:flex-end}.align-items-center{align-items:center}.align-items-stretch{align-items:stretch}.align-self-left{margin-left:0;margin-right:auto}.align-self-right{margin-left:auto;margin-right:0}.align-self-center{margin-left:auto;margin-right:auto}.align-self-top{align-self:flex-start}.align-self-bottom{align-self:flex-end}.align-self-middle{align-self:center}.align-self-stretch{align-self:stretch}.align-self-last{order:999}@media screen and (min-width:480px){.align-self-last--sm{order:999}}@media screen and (min-width:768px){.align-self-last--md{order:999}}@media screen and (min-width:992px){.align-self-last--lg{order:999}}@media screen and (min-width:1240px){.align-self-last--xl{order:999}}@media screen and (min-width:1380px){.align-self-last--xxl{order:999}}.aspect-ratio-21-9{max-width:100%;border:0;aspect-ratio:21/9}.aspect-ratio-16-9{max-width:100%;border:0;aspect-ratio:16/9}.aspect-ratio-4-3{max-width:100%;border:0;aspect-ratio:4/3}.aspect-ratio-1-1{max-width:100%;border:0;aspect-ratio:1/1}.d-block{display:block}.d-inline-block{display:inline-block}.d-inline{display:inline}.d-flex{display:flex}.d-inline-flex{display:inline-flex}.fullwidth{width:100%!important}.fullheight{height:100%!important}.center-block{margin-left:auto!important;margin-right:auto!important}.tile{position:relative;overflow:hidden;width:100%;height:0;padding-bottom:100%;background-color:#fff;color:#000}.tile--black{background-color:#000;color:#fff}.tile__body{position:absolute;display:flex;flex-direction:column;align-items:flex-start;top:0;left:0;width:100%;height:100%;z-index:1;padding:.625rem}@media screen and (min-width:480px){.tile__body{padding:.625rem}}@media screen and (min-width:768px){.tile__body{padding:1.25rem}}.tile__bg,.tile__icon{position:absolute;bottom:0;left:50%;width:100%;transform:translateX(-50%);margin-bottom:0}.tile__icon{width:50%;height:50%;margin-bottom:.625rem}
2
2
  /*# sourceMappingURL=style.css.map */
@@ -1 +1 @@
1
- {"version":3,"sources":["style.scss","mixins.scss","config.scss","../../../styles/tokens/breakpoint.scss","../../../styles/utilities/layout.scss","../../../styles/tools/layout.scss","../../../styles/tools/generate.scss"],"names":[],"mappings":"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","file":"style.css","sourcesContent":["@use '../../../styles/tokens/space';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/generate';\n@use '../../../styles/utilities/layout';\n@use './config';\n\n.tile {\n position: relative;\n overflow: hidden;\n width: 100%;\n height: 0;\n padding-bottom: 100%;\n\n @include generate.variants(config.$colors);\n\n &__body {\n position: absolute;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 1;\n\n @each $breakpoint, $space in config.$spacing {\n @include breakpoint.get($breakpoint) {\n padding: $space;\n }\n }\n }\n\n &__bg,\n &__icon {\n position: absolute;\n bottom: 0;\n left: 50%;\n width: 100%;\n transform: translateX(-50%);\n margin-bottom: 0;\n }\n\n &__icon {\n width: 50%;\n height: 50%;\n margin-bottom: space.get('small');\n }\n}\n","@use './config';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/generate';\n\n@mixin base() {\n fill: currentColor;\n width: 1em;\n height: 1em;\n vertical-align: text-bottom;\n}\n\n@mixin sizes($sizes: config.$sizes) {\n @each $breakpoint, $props in $sizes {\n @include breakpoint.get($breakpoint) {\n @each $variant, $size in $props {\n &#{generate.variant-name($variant)} {\n width: $size;\n height: $size;\n }\n }\n }\n }\n}\n\n@mixin colors($colors: config.$colors) {\n @each $variant, $color in $colors {\n &#{generate.variant-name($variant)} {\n color: $color;\n }\n }\n}\n","@use '../../../styles/tokens/space';\n@use '../../../styles/tokens/color';\n\n$colors: (\n default: (\n background-color: color.$white,\n color: color.$black,\n ),\n black: (\n background-color: color.$black,\n color: color.$white,\n ),\n);\n\n$spacing: (\n xs: space.get('small'),\n sm: space.get('small'),\n md: space.get('medium'),\n);\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n","@use '../tokens/space';\n@use '../tokens/breakpoint';\n@use '../tools/generate';\n@use '../tools/layout';\n\n@mixin spacing-utilities() {\n $directions: (\n 'top': 't',\n 'right': 'r',\n 'bottom': 'b',\n 'left': 'l',\n );\n\n .mb {\n margin-bottom: space.get();\n }\n\n @include breakpoint.each using ($breakpoint) {\n @each $spaceName, $spaceSize in space.$map {\n .mb#{generate.variant-name($breakpoint, '-')}#{generate.variant-name($spaceName, '-')} {\n margin-bottom: $spaceSize !important;\n }\n }\n .mb#{generate.variant-name($breakpoint, '-')}-none {\n margin-bottom: 0 !important;\n }\n }\n\n @each $directionName, $directionSelector in $directions {\n @if $directionName != bottom {\n .m#{generate.variant-name($directionSelector, '')}-none {\n margin-#{$directionName}: 0 !important;\n }\n }\n\n .p#{generate.variant-name($directionSelector, '')}-none {\n padding-#{$directionName}: 0 !important;\n }\n }\n\n .no-mrg {\n margin: 0 !important;\n }\n\n .no-pad {\n padding: 0 !important;\n }\n}\n\n@include spacing-utilities;\n\n.clearfix {\n @include layout.clearfix;\n}\n.clear {\n clear: both;\n}\n\n// Flexbox alignment classes\n@mixin alignment-classes() {\n // Children justify\n .justify-content-start {\n justify-content: flex-start;\n }\n .justify-content-end {\n justify-content: flex-end;\n }\n .justify-content-center {\n justify-content: center;\n }\n .justify-content-space-around {\n justify-content: space-around;\n }\n .justify-content-space-between {\n justify-content: space-between;\n }\n\n // Children align\n .align-items-start {\n align-items: flex-start;\n }\n .align-items-end {\n align-items: flex-end;\n }\n .align-items-center {\n align-items: center;\n }\n .align-items-stretch {\n align-items: stretch;\n }\n\n // Selft horizontal alignmnet\n .align-self-left {\n margin-left: 0;\n margin-right: auto;\n }\n\n .align-self-right {\n margin-left: auto;\n margin-right: 0;\n }\n\n .align-self-center {\n margin-left: auto;\n margin-right: auto;\n }\n\n // Self vertical alignmnet\n .align-self-top {\n align-self: flex-start;\n }\n .align-self-bottom {\n align-self: flex-end;\n }\n .align-self-middle {\n align-self: center;\n }\n .align-self-stretch {\n align-self: stretch;\n }\n\n .align-self-last {\n @each $breakpoint, $w in breakpoint.$map {\n @include breakpoint.get($breakpoint) {\n &#{generate.variant-name($breakpoint)} {\n order: 999;\n }\n }\n }\n }\n}\n\n@include alignment-classes;\n\n@mixin aspect-ratio-classes() {\n .aspect-ratio-21-9 {\n max-width: 100%;\n border: 0;\n aspect-ratio: 21 / 9;\n }\n\n .aspect-ratio-16-9 {\n max-width: 100%;\n border: 0;\n aspect-ratio: 16 / 9;\n }\n\n .aspect-ratio-4-3 {\n max-width: 100%;\n border: 0;\n aspect-ratio: 4 / 3;\n }\n\n .aspect-ratio-1-1 {\n max-width: 100%;\n border: 0;\n aspect-ratio: 1 / 1;\n }\n}\n\n@include aspect-ratio-classes;\n\n@mixin display-classes {\n .d-block {\n display: block;\n }\n .d-inline-block {\n display: inline-block;\n }\n .d-inline {\n display: inline;\n }\n}\n\n@include display-classes;\n\n@mixin block-classes {\n .fullwidth {\n width: 100% !important;\n }\n\n .fullheight {\n height: 100% !important;\n }\n\n .center-block {\n margin-left: auto !important;\n margin-right: auto !important;\n }\n}\n\n@include block-classes();","@use '../tokens/base';\n\n// -- Nicolas Gallagher's micro clearfix\n@mixin clearfix {\n &::before,\n &::after {\n // For modern browsers\n content: '';\n display: table;\n }\n\n &::after {\n clear: both;\n }\n}\n\n/**\n * Resets margin-bottom of the last child to zero\n */\n@mixin reset-last-child-margin-bottom {\n > :not([class*='mb\\-']):last-child {\n margin-bottom: 0;\n }\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n"]}
1
+ {"version":3,"sources":["style.scss","mixins.scss","config.scss","../../../styles/tokens/breakpoint.scss","../../../styles/utilities/layout.scss","../../../styles/tools/layout.scss","../../../styles/tools/generate.scss"],"names":[],"mappings":"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","file":"style.css","sourcesContent":["@use '../../../styles/tokens/space';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/generate';\n@use '../../../styles/utilities/layout';\n@use './config';\n\n.tile {\n position: relative;\n overflow: hidden;\n width: 100%;\n height: 0;\n padding-bottom: 100%;\n\n @include generate.variants(config.$colors);\n\n &__body {\n position: absolute;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 1;\n\n @each $breakpoint, $space in config.$spacing {\n @include breakpoint.get($breakpoint) {\n padding: $space;\n }\n }\n }\n\n &__bg,\n &__icon {\n position: absolute;\n bottom: 0;\n left: 50%;\n width: 100%;\n transform: translateX(-50%);\n margin-bottom: 0;\n }\n\n &__icon {\n width: 50%;\n height: 50%;\n margin-bottom: space.get('small');\n }\n}\n","@use './config';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/generate';\n\n@mixin base() {\n fill: currentColor;\n width: 1em;\n height: 1em;\n vertical-align: text-bottom;\n}\n\n@mixin sizes($sizes: config.$sizes) {\n @each $breakpoint, $props in $sizes {\n @include breakpoint.get($breakpoint) {\n @each $variant, $size in $props {\n &#{generate.variant-name($variant)} {\n width: $size;\n height: $size;\n }\n }\n }\n }\n}\n\n@mixin colors($colors: config.$colors) {\n @each $variant, $color in $colors {\n &#{generate.variant-name($variant)} {\n color: $color;\n }\n }\n}\n","@use '../../../styles/tokens/space';\n@use '../../../styles/tokens/color';\n\n$colors: (\n default: (\n background-color: color.$white,\n color: color.$black,\n ),\n black: (\n background-color: color.$black,\n color: color.$white,\n ),\n);\n\n$spacing: (\n xs: space.get('small'),\n sm: space.get('small'),\n md: space.get('medium'),\n);\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n","@use '../tokens/space';\n@use '../tokens/breakpoint';\n@use '../tools/generate';\n@use '../tools/layout';\n\n@mixin spacing-utilities() {\n $directions: (\n 'top': 't',\n 'right': 'r',\n 'bottom': 'b',\n 'left': 'l',\n );\n\n .mb {\n margin-bottom: space.get();\n }\n\n @include breakpoint.each using ($breakpoint) {\n @each $spaceName, $spaceSize in space.$map {\n .mb#{generate.variant-name($breakpoint, '-')}#{generate.variant-name($spaceName, '-')} {\n margin-bottom: $spaceSize !important;\n }\n }\n .mb#{generate.variant-name($breakpoint, '-')}-none {\n margin-bottom: 0 !important;\n }\n }\n\n @each $directionName, $directionSelector in $directions {\n @if $directionName != bottom {\n .m#{generate.variant-name($directionSelector, '')}-none {\n margin-#{$directionName}: 0 !important;\n }\n }\n\n .p#{generate.variant-name($directionSelector, '')}-none {\n padding-#{$directionName}: 0 !important;\n }\n }\n\n .no-mrg {\n margin: 0 !important;\n }\n\n .no-pad {\n padding: 0 !important;\n }\n}\n\n@include spacing-utilities;\n\n.clearfix {\n @include layout.clearfix;\n}\n.clear {\n clear: both;\n}\n\n// Flexbox alignment classes\n@mixin alignment-classes() {\n // Children justify\n .justify-content-start {\n justify-content: flex-start;\n }\n .justify-content-end {\n justify-content: flex-end;\n }\n .justify-content-center {\n justify-content: center;\n }\n .justify-content-space-around {\n justify-content: space-around;\n }\n .justify-content-space-between {\n justify-content: space-between;\n }\n\n // Children align\n .align-items-start {\n align-items: flex-start;\n }\n .align-items-end {\n align-items: flex-end;\n }\n .align-items-center {\n align-items: center;\n }\n .align-items-stretch {\n align-items: stretch;\n }\n\n // Selft horizontal alignmnet\n .align-self-left {\n margin-left: 0;\n margin-right: auto;\n }\n\n .align-self-right {\n margin-left: auto;\n margin-right: 0;\n }\n\n .align-self-center {\n margin-left: auto;\n margin-right: auto;\n }\n\n // Self vertical alignmnet\n .align-self-top {\n align-self: flex-start;\n }\n .align-self-bottom {\n align-self: flex-end;\n }\n .align-self-middle {\n align-self: center;\n }\n .align-self-stretch {\n align-self: stretch;\n }\n\n .align-self-last {\n @each $breakpoint, $w in breakpoint.$map {\n @include breakpoint.get($breakpoint) {\n &#{generate.variant-name($breakpoint)} {\n order: 999;\n }\n }\n }\n }\n}\n\n@include alignment-classes;\n\n@mixin aspect-ratio-classes() {\n .aspect-ratio-21-9 {\n max-width: 100%;\n border: 0;\n aspect-ratio: 21 / 9;\n }\n\n .aspect-ratio-16-9 {\n max-width: 100%;\n border: 0;\n aspect-ratio: 16 / 9;\n }\n\n .aspect-ratio-4-3 {\n max-width: 100%;\n border: 0;\n aspect-ratio: 4 / 3;\n }\n\n .aspect-ratio-1-1 {\n max-width: 100%;\n border: 0;\n aspect-ratio: 1 / 1;\n }\n}\n\n@include aspect-ratio-classes;\n\n@mixin display-classes {\n .d-block {\n display: block;\n }\n .d-inline-block {\n display: inline-block;\n }\n .d-inline {\n display: inline;\n }\n .d-flex {\n display: flex;\n }\n .d-inline-flex {\n display: inline-flex;\n }\n}\n\n@include display-classes;\n\n@mixin block-classes {\n .fullwidth {\n width: 100% !important;\n }\n\n .fullheight {\n height: 100% !important;\n }\n\n .center-block {\n margin-left: auto !important;\n margin-right: auto !important;\n }\n}\n\n@include block-classes();\n","@use '../tokens/base';\n\n// -- Nicolas Gallagher's micro clearfix\n@mixin clearfix {\n &::before,\n &::after {\n // For modern browsers\n content: '';\n display: table;\n }\n\n &::after {\n clear: both;\n }\n}\n\n/**\n * Resets margin-bottom of the last child to zero\n */\n@mixin reset-last-child-margin-bottom {\n > :not([class*='mb\\-']):last-child {\n margin-bottom: 0;\n }\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["style.scss","mixins.scss","../../../styles/tools/generate.scss","config.scss","../../../styles/tools/layout.scss","../../../styles/tokens/color.scss","../../../styles/tokens/base.scss","../../../styles/tokens/breakpoint.scss"],"names":[],"mappings":"AAIA,SCIE,iBAAA,CACA,SAAA,CACA,+BAAA,CACA,uBAAA,CCgBE,YAAA,CAAA,aAAA,CDZF,qBACE,eAAA,CAIA,qCACE,sBEEG,CFHL,uCACE,oBEEG,CFHL,wCACE,mBEEG,CFHL,sCACE,qBEEG,CHhBP,oBCoBA,SAAA,CDhBA,iBEgBE,oBAAA,CAAA,kBAAA,CAAA,eAAA,CAAA,qBAAA,CAAA,qBAAA,CEPF,+CACE,eAAA,CJNF,gBCgCA,aAAA,CAEA,uBACE,UAAA,CACA,aAAA,CACA,aEpBS,CFqBT,cErBS,CFsBT,qBIlDI,CJmDJ,2BAAA,CACA,qBE/CK,CFgDL,uBAAA,CAIA,6CACE,qBAjBa,CAgBf,+CACE,mBAjBa,CAgBf,gDACE,kBAjBa,CAgBf,8CACE,oBAjBa,CAsBf,oDAEI,4BAAA,CAAA,6BAAA,CAFJ,uDAEI,+BAAA,CAAA,8BAAA,CAFJ,qDAEI,+BAAA,CAAA,6BAAA,CAFJ,sDAEI,4BAAA,CAAA,8BAAA,CDjDR,cCwDE,iBAAA,CACA,mBAAA,CACA,oBAAA,CKzBA,kBAAA,CAQA,gDACE,yBAAA,CACA,mCAAA,CACA,2CAlDW,CAqDb,wCACE,yBAAA,CACA,mCAAA,CACA,eAAA,CLWF,qBACE,UAAA,CACA,iBAAA,CACA,YAAA,CACA,aAAA,CACA,0BAAA,CACA,2BAAA,CDhEF,oFCqEA,aI3FO,CLGT,MCCE,iBAAA,CACA,SAAA,CACA,UAAA,CACA,0BAAA,CAOM,aACE,UEbF,CFcE,WEdF,CFYA,cACE,YEbF,CFcE,aEdF,CFYA,aACE,UEbF,CFcE,WEdF,CFYA,cACE,YEbF,CFcE,aEdF,CFYA,eACE,UEbF,CFcE,WEdF,CFYA,YACE,YEbF,CFcE,aEdF,CI2BF,oCNfE,cACE,UEbF,CFcE,WEdF,CFYA,eACE,UEbF,CFcE,WEdF,CFYA,YACE,UEbF,CFcE,WEdF,CAAA,CFuBJ,YACE,aERG,CFOL,eACE,aERG,CFOL,eACE,UERG,CFOL,cACE,aERG,CHTT,IACE,mBAAA","file":"style.css","sourcesContent":["@use './mixins';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/space';\n\n.icon {\n @include mixins.base;\n @include mixins.sizes;\n @include mixins.colors;\n}\n\nuse {\n pointer-events: none;\n}\n","@use './config';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/generate';\n\n@mixin base() {\n fill: currentColor;\n width: 1em;\n height: 1em;\n vertical-align: text-bottom;\n}\n\n@mixin sizes($sizes: config.$sizes) {\n @each $breakpoint, $props in $sizes {\n @include breakpoint.get($breakpoint) {\n @each $variant, $size in $props {\n &#{generate.variant-name($variant)} {\n width: $size;\n height: $size;\n }\n }\n }\n }\n}\n\n@mixin colors($colors: config.$colors) {\n @each $variant, $color in $colors {\n &#{generate.variant-name($variant)} {\n color: $color;\n }\n }\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n","@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/color';\n\n$sizes: (\n default: (\n small: convert.to-rem(16px),\n medium: convert.to-rem(24px),\n large: convert.to-rem(32px),\n xlarge: convert.to-rem(40px),\n xxlarge: convert.to-rem(48px),\n huge: convert.to-rem(56px),\n ),\n md: (\n xlarge: convert.to-rem(48px),\n xxlarge: convert.to-rem(64px),\n huge: convert.to-rem(80px),\n ),\n);\n\n$colors: (\n info: color.$info,\n success: color.$success,\n warning: color.$warning,\n danger: color.$danger,\n);\n","@use '../tokens/base';\n\n// -- Nicolas Gallagher's micro clearfix\n@mixin clearfix {\n &::before,\n &::after {\n // For modern browsers\n content: '';\n display: table;\n }\n\n &::after {\n clear: both;\n }\n}\n\n/**\n * Resets margin-bottom of the last child to zero\n */\n@mixin reset-last-child-margin-bottom {\n > :not([class*='mb\\-']):last-child {\n margin-bottom: 0;\n }\n}\n","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n","@use 'sass:color' as sasscolor;\n@use './color';\n\n$font-family: helvneueorange, 'Helvetica Neue', helvetica, arial, sans-serif;\n$font-size: 16px;\n$line-height: 1.25;\n\n$background: color.$white;\n$text-color: color.$black;\n\n$focusring-color: color.$info;\n$focusring-width: 2px;\n$focusring-offset: 2px;\n$focus-outline: $focusring-width solid $focusring-color;\n$focus-shadow: 0 0 0 2px #fff, 0 0 0 4px $focusring-color;\n\n$selection-background: sasscolor.adjust(color.$orange-dark, $alpha: -0.1);\n\n@mixin focusring {\n &:focus {\n outline: $focus-outline;\n outline-offset: $focusring-offset;\n }\n\n &:focus-visible {\n outline: $focus-outline;\n outline-offset: $focusring-offset;\n }\n\n &:focus:not(:focus-visible) {\n outline-width: 0;\n outline-color: transparent;\n }\n}\n\n@mixin focusring-flush {\n &:focus {\n outline: $focus-outline;\n outline-offset: 0 !important;\n }\n\n &:focus-visible {\n outline: $focus-outline;\n outline-offset: 0 !important;\n }\n\n &:focus:not(:focus-visible) {\n outline-width: 0;\n outline-color: transparent;\n }\n}\n\n@mixin focusring-round {\n border-radius: 100%;\n\n &:focus {\n outline-width: 0 !important;\n outline-color: transparent !important;\n box-shadow: $focus-shadow;\n }\n\n &:focus-visible {\n outline-width: 0 !important;\n outline-color: transparent !important;\n box-shadow: $focus-shadow;\n }\n\n &:focus:not(:focus-visible) {\n outline-width: 0 !important;\n outline-color: transparent !important;\n box-shadow: none;\n }\n}\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n"]}
1
+ {"version":3,"sources":["style.scss","mixins.scss","../../../styles/tools/generate.scss","config.scss","../../../styles/tools/layout.scss","../../../styles/tokens/color.scss","../../../styles/tokens/base.scss","../../../styles/tokens/breakpoint.scss"],"names":[],"mappings":"AAIA,SCIE,iBAAA,CACA,SAAA,CACA,+BAAA,CACA,uBAAA,CCgBE,YAAA,CAAA,aAAA,CDZF,qBACE,eAAA,CAIA,qCACE,sBEEG,CFHL,uCACE,oBEEG,CFHL,wCACE,mBEEG,CFHL,sCACE,qBEEG,CHhBP,oBCoBA,SAAA,CDhBA,iBEgBE,oBAAA,CAAA,kBAAA,CAAA,eAAA,CAAA,qBAAA,CAAA,qBAAA,CEPF,+CACE,eAAA,CJNF,gBCgCA,aAAA,CAEA,uBACE,UAAA,CACA,aAAA,CACA,aEpBS,CFqBT,cErBS,CFsBT,qBIlDI,CJmDJ,2BAAA,CACA,qBE/CK,CFgDL,uBAAA,CAIA,6CACE,qBAjBa,CAgBf,+CACE,mBAjBa,CAgBf,gDACE,kBAjBa,CAgBf,8CACE,oBAjBa,CAsBf,oDAEI,4BAAA,CAAA,6BAAA,CAFJ,uDAEI,+BAAA,CAAA,8BAAA,CAFJ,qDAEI,+BAAA,CAAA,6BAAA,CAFJ,sDAEI,4BAAA,CAAA,8BAAA,CDjDR,cCwDE,iBAAA,CACA,mBAAA,CACA,oBAAA,CKzBA,kBAAA,CAQA,gDACE,yBAAA,CACA,mCAAA,CACA,2CAlDW,CAqDb,wCACE,yBAAA,CACA,mCAAA,CACA,eAAA,CLWF,qBACE,UAAA,CACA,iBAAA,CACA,YAAA,CACA,aAAA,CACA,0BAAA,CACA,2BAAA,CDhEF,oFCqEA,aI3FO,CLGT,MCCE,iBAAA,CACA,SAAA,CACA,UAAA,CACA,0BAAA,CAOM,aACE,UEbF,CFcE,WEdF,CFYA,cACE,YEbF,CFcE,aEdF,CFYA,aACE,UEbF,CFcE,WEdF,CFYA,cACE,YEbF,CFcE,aEdF,CFYA,eACE,UEbF,CFcE,WEdF,CFYA,YACE,YEbF,CFcE,aEdF,CI2BF,oCNfE,cACE,UEbF,CFcE,WEdF,CFYA,eACE,UEbF,CFcE,WEdF,CFYA,YACE,UEbF,CFcE,WEdF,CAAA,CFuBJ,YACE,aERG,CFOL,eACE,aERG,CFOL,eACE,UERG,CFOL,cACE,aERG,CHTT,IACE,mBAAA","file":"style.css","sourcesContent":["@use './mixins';\n@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/space';\n\n.icon {\n @include mixins.base;\n @include mixins.sizes;\n @include mixins.colors;\n}\n\nuse {\n pointer-events: none;\n}\n","@use './config';\n@use '../../../styles/tokens/breakpoint';\n@use '../../../styles/tools/generate';\n\n@mixin base() {\n fill: currentColor;\n width: 1em;\n height: 1em;\n vertical-align: text-bottom;\n}\n\n@mixin sizes($sizes: config.$sizes) {\n @each $breakpoint, $props in $sizes {\n @include breakpoint.get($breakpoint) {\n @each $variant, $size in $props {\n &#{generate.variant-name($variant)} {\n width: $size;\n height: $size;\n }\n }\n }\n }\n}\n\n@mixin colors($colors: config.$colors) {\n @each $variant, $color in $colors {\n &#{generate.variant-name($variant)} {\n color: $color;\n }\n }\n}\n","@use '../tokens/breakpoint';\n@use './map' as *;\n\n/// Get css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// background-color: #fff,\n/// color: #000\n/// );\n///\n/// .example {\n/// @include css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// background-color: #fff;\n/// color: #000;\n/// }\n@mixin css-map($_map, $keys...) {\n $map: if($keys, map-deep-get($_map, $keys...), $_map);\n\n @each $prop, $value in $map {\n #{$prop}: #{$value};\n }\n}\n\n/// Get responsive css propeties from map\n///\n/// @param {Map} $map - Map\n/// @param {Arglist} $keys - Keys to fetch\n///\n/// @example\n/// $map: (\n/// default: (\n/// color: red,\n/// ),\n/// xl: (\n/// color: blue,\n/// ),\n/// );\n///\n/// .example {\n/// @include responsive-css-map($map);\n/// }\n///\n/// Output:\n/// .example {\n/// color: red;\n/// @media only screen and (min-width: 1240px) {\n/// color: blue;\n/// }\n/// }\n@mixin responsive-css-map($map) {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include css-map($props);\n }\n }\n}\n\n/// Get variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin variants($map, $className: '', $classSuffix: '') {\n @each $variant, $props in $map {\n #{if(&, \"&\", \"\")}#{$className + variant-name($variant) + $classSuffix} {\n @include css-map($props);\n }\n }\n}\n\n/// Get responsive variants of elemnt from map\n///\n/// @param {Map} $map - map\n/// @param {Map} $className - class name of element\n/// @param {Map} $classSuffix - suffix for class name of element\n@mixin responsive-variants($map, $className: '', $classSuffix: '') {\n @each $breakpoint, $props in $map {\n @include breakpoint.get($breakpoint) {\n @include variants($props, $className, $classSuffix);\n }\n }\n}\n\n/// Get prefixed variant name\n/// @param {String} $name - Variant name\n/// @return {String} - Return a prefixed variant name or empty string, for default variants\n/// @example scss\n/// variant-name('primary')\n/// // -primary\n/// variant-name('default')\n///\n@function variant-name($name, $prefix: '--', $suffix: '') {\n @if not $name or $name == default or $name == xs {\n @return '';\n }\n\n @return #{$prefix + $name + $suffix};\n}\n","@use '../../../styles/tools/convert';\n@use '../../../styles/tokens/color';\n\n$sizes: (\n default: (\n small: convert.to-rem(16px),\n medium: convert.to-rem(24px),\n large: convert.to-rem(32px),\n xlarge: convert.to-rem(40px),\n xxlarge: convert.to-rem(48px),\n huge: convert.to-rem(56px),\n ),\n md: (\n xlarge: convert.to-rem(48px),\n xxlarge: convert.to-rem(64px),\n huge: convert.to-rem(80px),\n ),\n);\n\n$colors: (\n info: color.$info,\n success: color.$success,\n warning: color.$warning,\n danger: color.$danger,\n);\n","@use '../tokens/base';\n\n// -- Nicolas Gallagher's micro clearfix\n@mixin clearfix {\n &::before,\n &::after {\n // For modern browsers\n content: '';\n display: table;\n }\n\n &::after {\n clear: both;\n }\n}\n\n/**\n * Resets margin-bottom of the last child to zero\n */\n@mixin reset-last-child-margin-bottom {\n > :not([class*='mb\\-']):last-child {\n margin-bottom: 0;\n }\n}\n","// core (brand)\n$orange: #ff7900;\n$orange-dark: #f16e00;\n$black: #000;\n$white: #fff;\n\n// supporting color\n$blue: #4bb4e6;\n$green: #50be87;\n$pink: #ffb4e6;\n$violet: #a885d8;\n$yellow: #ffd200;\n$yellow-lighter: #fff6b6;\n$red: #ff4d4d;\n\n// functional\n$gray-300: #eee;\n$gray-400: #ddd;\n$gray-500: #ccc;\n$gray-600: #999;\n$gray-700: #666;\n$gray-800: #595959;\n$gray-900: #333;\n$success: #32c832;\n$danger: #cd3c14;\n$info: #527edb;\n$warning: #fc0;\n","@use 'sass:color' as sasscolor;\n@use './color';\n\n$font-family: helvneueorange, 'Helvetica Neue', helvetica, arial, sans-serif;\n$font-size: 16px;\n$line-height: 1.25;\n\n$background: color.$white;\n$text-color: color.$black;\n\n$focusring-color: color.$info;\n$focusring-width: 2px;\n$focusring-offset: 2px;\n$focus-outline: $focusring-width solid $focusring-color;\n$focus-shadow: 0 0 0 2px #fff, 0 0 0 4px $focusring-color;\n\n$selection-background: sasscolor.adjust(color.$orange-dark, $alpha: -0.1);\n\n@mixin focusring {\n &:focus {\n outline: $focus-outline;\n outline-offset: $focusring-offset;\n }\n\n &:focus-visible {\n outline: $focus-outline;\n outline-offset: $focusring-offset;\n }\n\n &:focus:not(:focus-visible) {\n outline-width: 0;\n outline-color: transparent;\n }\n}\n\n@mixin focusring-flush {\n &:focus {\n outline: $focus-outline;\n outline-offset: 0 !important;\n }\n\n &:focus-visible {\n outline: $focus-outline;\n outline-offset: 0 !important;\n }\n\n &:focus:not(:focus-visible) {\n outline-width: 0;\n outline-color: transparent;\n }\n}\n\n@mixin focusring-round {\n border-radius: 100%;\n\n &:focus {\n outline-width: 0 !important;\n outline-color: transparent !important;\n box-shadow: $focus-shadow;\n }\n\n &:focus-visible {\n outline-width: 0 !important;\n outline-color: transparent !important;\n box-shadow: $focus-shadow;\n }\n\n &:focus:not(:focus-visible) {\n outline-width: 0 !important;\n outline-color: transparent !important;\n box-shadow: none;\n }\n}\n","@use 'sass:map' as sassmap;\n@use '../tools/map';\n\n$map: (\n xs: 0,\n sm: 480px,\n md: 768px,\n lg: 992px,\n xl: 1240px,\n xxl: 1380px,\n);\n\n@mixin get( $breakpoint, $param: false) {\n @if (not map-has-key($map, $breakpoint) and $breakpoint != 'default') {\n @warn 'Breakpoint \"#{$breakpoint}\" is not defined.';\n\n @debug 'Available breakpoints:'; // stylelint-disable-line at-rule-disallowed-list\n @debug $map; // stylelint-disable-line at-rule-disallowed-list\n }\n\n @if (\n ($breakpoint == nth(map-keys($map), 1) and not $param) or\n ( not $breakpoint ) or\n ( $breakpoint == 'default' )\n ) {\n @content;\n } @else if not $param {\n // no param, just a standard mobile first media query\n @if map-has-key( $map, $breakpoint ) {\n // breakpoint is in breakpoint map, let's use stored value\n @media screen and (min-width: map-get($map, $breakpoint)) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) { @content; };\n }\n } @else if (\n $param == 'down' and\n map.next($map, $breakpoint)\n ) {\n @media screen and (max-width: map.next($map, $breakpoint) - 0.02px) {\n @content;\n }\n } @else if (\n $param == 'down' and\n not map_has_key($map, $breakpoint)\n ) {\n @media screen and (max-width: $breakpoint) { @content; };\n } @else if (\n $param == 'only' and\n map.next($map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map.next($map, $breakpoint) - 0.02px) { @content; };\n } @else if (\n map-has-key( $map, $param) and\n map-has-key( $map, $breakpoint)\n ) {\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: map-get($map, $param) - 0.02px) { @content; };\n } @else if (\n $param == 'downfrom' and\n map-get($map, $breakpoint) > 0 and\n $breakpoint != 'xs'\n ) {\n @media screen and (max-width: map-get($map, $breakpoint) - 0.02px) {\n @content;\n } // -1\n } @else if (type-of($param) == 'number') {\n @if map-has-key($map, $breakpoint) {\n // breakpoint is in breakpoint map\n @media screen and\n (min-width: map-get($map, $breakpoint)) and\n (max-width: $param) { @content; };\n } @else {\n // breakpoint is not in breakpoint map, let's use custom value\n @media screen and (min-width: $breakpoint) and (max-width: $param) { @content; }\n }\n } @else if (\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'down') and\n not ($breakpoint == nth(map-keys($map), -1) and $param == 'only') and\n not ($breakpoint == nth(map-keys($map), 1) and $param == 'downfrom')\n ) {\n // do nothing on known edge cases. we just dont generate any code.\n @warn 'Breakpoint is not configured properly #{$breakpoint}, #{$param}';\n }\n}\n\n@mixin each() {\n @each $breakpoint, $size in $map {\n @include get($breakpoint) {\n @content($breakpoint);\n }\n }\n}\n"]}