The design has been slightly modernized in the process. jQuery was also removed as it is no longer required, resulting in faster page loading times. Gallery thumbnails were regenerated at an higher resolution to match the new design.
63 lines
2.3 KiB
Sass
63 lines
2.3 KiB
Sass
@function mergeColorMaps($bulma-colors, $custom-colors)
|
|
// we return at least bulma hardcoded colors
|
|
$merged-colors: $bulma-colors
|
|
|
|
// we want a map as input
|
|
@if type-of($custom-colors) == 'map'
|
|
@each $name, $components in $custom-colors
|
|
// color name should be a string and colors pair a list with at least one element
|
|
@if type-of($name) == 'string' and (type-of($components) == 'list' or type-of($components) == 'color') and length($components) >= 1
|
|
$color-base: null
|
|
|
|
// the param can either be a single color
|
|
// or a list of 2 colors
|
|
@if type-of($components) == 'color'
|
|
$color-base: $components
|
|
@else if type-of($components) == 'list'
|
|
$color-base: nth($components, 1)
|
|
|
|
$color-invert: null
|
|
// is an inverted color provided in the list
|
|
@if length($components) > 1
|
|
$color-invert: nth($components, 2)
|
|
|
|
// we only want a color as base color
|
|
@if type-of($color-base) == 'color'
|
|
// if inverted color is not provided or is not a color we compute it
|
|
@if type-of($color-invert) != 'color'
|
|
$color-invert: findColorInvert($color-base)
|
|
|
|
// we merge this colors elements as map with bulma colors (we can override them this way, no multiple definition for the same name)
|
|
$merged-colors: map_merge($merged-colors, ($name: ($color-base, $color-invert)))
|
|
|
|
@return $merged-colors
|
|
|
|
@function powerNumber($number, $exp)
|
|
$value: 1
|
|
@if $exp > 0
|
|
@for $i from 1 through $exp
|
|
$value: $value * $number
|
|
@else if $exp < 0
|
|
@for $i from 1 through -$exp
|
|
$value: $value / $number
|
|
@return $value
|
|
|
|
@function colorLuminance($color)
|
|
$color-rgb: ('red': red($color),'green': green($color),'blue': blue($color))
|
|
@each $name, $value in $color-rgb
|
|
$adjusted: 0
|
|
$value: $value / 255
|
|
@if $value < 0.03928
|
|
$value: $value / 12.92
|
|
@else
|
|
$value: ($value + .055) / 1.055
|
|
$value: powerNumber($value, 2)
|
|
$color-rgb: map-merge($color-rgb, ($name: $value))
|
|
@return (map-get($color-rgb, 'red') * .2126) + (map-get($color-rgb, 'green') * .7152) + (map-get($color-rgb, 'blue') * .0722)
|
|
|
|
@function findColorInvert($color)
|
|
@if (colorLuminance($color) > 0.55)
|
|
@return rgba(#000, 0.7)
|
|
@else
|
|
@return #fff
|