bulma-rails 0.9.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (140) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +49 -14
  3. data/app/assets/stylesheets/bulma.scss +4 -0
  4. data/app/assets/stylesheets/sass/_index.scss +10 -0
  5. data/app/assets/stylesheets/sass/base/_index.scss +6 -0
  6. data/app/assets/stylesheets/sass/base/animations.scss +15 -0
  7. data/app/assets/stylesheets/sass/base/generic.scss +239 -0
  8. data/app/assets/stylesheets/sass/base/minireset.scss +92 -0
  9. data/app/assets/stylesheets/sass/base/skeleton.scss +126 -0
  10. data/app/assets/stylesheets/sass/components/_index.scss +13 -0
  11. data/app/assets/stylesheets/sass/components/breadcrumb.scss +139 -0
  12. data/app/assets/stylesheets/sass/components/card.scss +162 -0
  13. data/app/assets/stylesheets/sass/components/dropdown.scss +188 -0
  14. data/app/assets/stylesheets/sass/components/menu.scss +165 -0
  15. data/app/assets/stylesheets/sass/components/message.scss +183 -0
  16. data/app/assets/stylesheets/sass/components/modal.scss +164 -0
  17. data/app/assets/stylesheets/sass/components/navbar.scss +788 -0
  18. data/app/assets/stylesheets/sass/components/pagination.scss +379 -0
  19. data/app/assets/stylesheets/sass/components/panel.scss +218 -0
  20. data/app/assets/stylesheets/sass/components/tabs.scss +273 -0
  21. data/app/assets/stylesheets/sass/elements/_index.scss +16 -0
  22. data/app/assets/stylesheets/sass/elements/block.scss +6 -0
  23. data/app/assets/stylesheets/sass/elements/box.scss +59 -0
  24. data/app/assets/stylesheets/sass/elements/button.scss +640 -0
  25. data/app/assets/stylesheets/sass/elements/content.scss +283 -0
  26. data/app/assets/stylesheets/sass/elements/delete.scss +6 -0
  27. data/app/assets/stylesheets/sass/elements/icon.scss +67 -0
  28. data/app/assets/stylesheets/sass/elements/image.scss +62 -0
  29. data/app/assets/stylesheets/sass/elements/loader.scss +15 -0
  30. data/app/assets/stylesheets/sass/elements/notification.scss +105 -0
  31. data/app/assets/stylesheets/sass/elements/progress.scss +115 -0
  32. data/app/assets/stylesheets/sass/elements/table.scss +261 -0
  33. data/app/assets/stylesheets/sass/elements/tag.scss +219 -0
  34. data/app/assets/stylesheets/sass/elements/title.scss +128 -0
  35. data/app/assets/stylesheets/sass/form/_index.scss +9 -0
  36. data/app/assets/stylesheets/sass/form/checkbox-radio.scss +32 -0
  37. data/app/assets/stylesheets/sass/form/file.scss +330 -0
  38. data/app/assets/stylesheets/sass/form/input-textarea.scss +123 -0
  39. data/app/assets/stylesheets/sass/form/select.scss +143 -0
  40. data/app/assets/stylesheets/sass/form/shared.scss +172 -0
  41. data/app/assets/stylesheets/sass/form/tools.scss +341 -0
  42. data/app/assets/stylesheets/sass/grid/_index.scss +5 -0
  43. data/app/assets/stylesheets/sass/grid/columns-v2.scss +957 -0
  44. data/app/assets/stylesheets/sass/grid/columns.scss +877 -0
  45. data/app/assets/stylesheets/sass/grid/grid.scss +209 -0
  46. data/app/assets/stylesheets/sass/helpers/_index.scss +15 -0
  47. data/app/assets/stylesheets/sass/helpers/aspect-ratio.scss +10 -0
  48. data/app/assets/stylesheets/sass/helpers/border.scss +15 -0
  49. data/app/assets/stylesheets/sass/helpers/color.scss +364 -0
  50. data/app/assets/stylesheets/sass/helpers/flexbox.scss +62 -0
  51. data/app/assets/stylesheets/sass/helpers/float.scss +28 -0
  52. data/app/assets/stylesheets/sass/helpers/gap.scss +24 -0
  53. data/app/assets/stylesheets/sass/helpers/other.scss +19 -0
  54. data/app/assets/stylesheets/sass/helpers/overflow.scss +21 -0
  55. data/app/assets/stylesheets/sass/helpers/position.scss +19 -0
  56. data/app/assets/stylesheets/sass/helpers/spacing.scss +64 -0
  57. data/app/assets/stylesheets/sass/helpers/typography.scss +168 -0
  58. data/app/assets/stylesheets/sass/helpers/visibility.scss +221 -0
  59. data/app/assets/stylesheets/sass/layout/_index.scss +9 -0
  60. data/app/assets/stylesheets/sass/layout/container.scss +51 -0
  61. data/app/assets/stylesheets/sass/layout/footer.scss +23 -0
  62. data/app/assets/stylesheets/sass/layout/hero.scss +270 -0
  63. data/app/assets/stylesheets/sass/layout/level.scss +107 -0
  64. data/app/assets/stylesheets/sass/layout/media.scss +106 -0
  65. data/app/assets/stylesheets/sass/layout/section.scss +34 -0
  66. data/app/assets/stylesheets/sass/themes/_index.scss +35 -0
  67. data/app/assets/stylesheets/sass/themes/dark.scss +56 -0
  68. data/app/assets/stylesheets/sass/themes/light.scss +145 -0
  69. data/app/assets/stylesheets/sass/themes/setup.scss +174 -0
  70. data/app/assets/stylesheets/sass/utilities/_index.scss +7 -0
  71. data/app/assets/stylesheets/sass/utilities/controls.scss +85 -0
  72. data/app/assets/stylesheets/sass/utilities/css-variables.scss +425 -0
  73. data/app/assets/stylesheets/sass/utilities/derived-variables.scss +86 -106
  74. data/app/assets/stylesheets/sass/utilities/extends.scss +34 -0
  75. data/app/assets/stylesheets/sass/utilities/functions.scss +258 -0
  76. data/app/assets/stylesheets/sass/utilities/initial-variables.scss +155 -0
  77. data/app/assets/stylesheets/sass/utilities/mixins.scss +460 -0
  78. data/bulma-rails.gemspec +4 -6
  79. metadata +80 -67
  80. data/app/assets/stylesheets/bulma.sass +0 -10
  81. data/app/assets/stylesheets/sass/base/_all.sass +0 -4
  82. data/app/assets/stylesheets/sass/base/generic.sass +0 -142
  83. data/app/assets/stylesheets/sass/base/helpers.sass +0 -1
  84. data/app/assets/stylesheets/sass/base/minireset.sass +0 -79
  85. data/app/assets/stylesheets/sass/components/_all.sass +0 -14
  86. data/app/assets/stylesheets/sass/components/breadcrumb.sass +0 -75
  87. data/app/assets/stylesheets/sass/components/card.sass +0 -79
  88. data/app/assets/stylesheets/sass/components/dropdown.sass +0 -81
  89. data/app/assets/stylesheets/sass/components/level.sass +0 -77
  90. data/app/assets/stylesheets/sass/components/media.sass +0 -52
  91. data/app/assets/stylesheets/sass/components/menu.sass +0 -57
  92. data/app/assets/stylesheets/sass/components/message.sass +0 -99
  93. data/app/assets/stylesheets/sass/components/modal.sass +0 -113
  94. data/app/assets/stylesheets/sass/components/navbar.sass +0 -441
  95. data/app/assets/stylesheets/sass/components/pagination.sass +0 -150
  96. data/app/assets/stylesheets/sass/components/panel.sass +0 -119
  97. data/app/assets/stylesheets/sass/components/tabs.sass +0 -174
  98. data/app/assets/stylesheets/sass/elements/_all.sass +0 -15
  99. data/app/assets/stylesheets/sass/elements/box.sass +0 -24
  100. data/app/assets/stylesheets/sass/elements/button.sass +0 -323
  101. data/app/assets/stylesheets/sass/elements/container.sass +0 -24
  102. data/app/assets/stylesheets/sass/elements/content.sass +0 -155
  103. data/app/assets/stylesheets/sass/elements/form.sass +0 -1
  104. data/app/assets/stylesheets/sass/elements/icon.sass +0 -21
  105. data/app/assets/stylesheets/sass/elements/image.sass +0 -71
  106. data/app/assets/stylesheets/sass/elements/notification.sass +0 -48
  107. data/app/assets/stylesheets/sass/elements/other.sass +0 -39
  108. data/app/assets/stylesheets/sass/elements/progress.sass +0 -67
  109. data/app/assets/stylesheets/sass/elements/table.sass +0 -129
  110. data/app/assets/stylesheets/sass/elements/tag.sass +0 -136
  111. data/app/assets/stylesheets/sass/elements/title.sass +0 -70
  112. data/app/assets/stylesheets/sass/form/_all.sass +0 -8
  113. data/app/assets/stylesheets/sass/form/checkbox-radio.sass +0 -21
  114. data/app/assets/stylesheets/sass/form/file.sass +0 -180
  115. data/app/assets/stylesheets/sass/form/input-textarea.sass +0 -64
  116. data/app/assets/stylesheets/sass/form/select.sass +0 -85
  117. data/app/assets/stylesheets/sass/form/shared.sass +0 -55
  118. data/app/assets/stylesheets/sass/form/tools.sass +0 -213
  119. data/app/assets/stylesheets/sass/grid/_all.sass +0 -4
  120. data/app/assets/stylesheets/sass/grid/columns.sass +0 -504
  121. data/app/assets/stylesheets/sass/grid/tiles.sass +0 -34
  122. data/app/assets/stylesheets/sass/helpers/_all.sass +0 -10
  123. data/app/assets/stylesheets/sass/helpers/color.sass +0 -37
  124. data/app/assets/stylesheets/sass/helpers/float.sass +0 -8
  125. data/app/assets/stylesheets/sass/helpers/other.sass +0 -8
  126. data/app/assets/stylesheets/sass/helpers/overflow.sass +0 -2
  127. data/app/assets/stylesheets/sass/helpers/position.sass +0 -5
  128. data/app/assets/stylesheets/sass/helpers/spacing.sass +0 -28
  129. data/app/assets/stylesheets/sass/helpers/typography.sass +0 -98
  130. data/app/assets/stylesheets/sass/helpers/visibility.sass +0 -122
  131. data/app/assets/stylesheets/sass/layout/_all.sass +0 -5
  132. data/app/assets/stylesheets/sass/layout/footer.sass +0 -9
  133. data/app/assets/stylesheets/sass/layout/hero.sass +0 -145
  134. data/app/assets/stylesheets/sass/layout/section.sass +0 -13
  135. data/app/assets/stylesheets/sass/utilities/_all.sass +0 -8
  136. data/app/assets/stylesheets/sass/utilities/animations.sass +0 -5
  137. data/app/assets/stylesheets/sass/utilities/controls.sass +0 -50
  138. data/app/assets/stylesheets/sass/utilities/functions.sass +0 -115
  139. data/app/assets/stylesheets/sass/utilities/initial-variables.sass +0 -78
  140. data/app/assets/stylesheets/sass/utilities/mixins.sass +0 -285
@@ -1,98 +0,0 @@
1
- =typography-size($target:'')
2
- @each $size in $sizes
3
- $i: index($sizes, $size)
4
- .is-size-#{$i}#{if($target == '', '', '-' + $target)}
5
- font-size: $size !important
6
-
7
- +typography-size()
8
-
9
- +mobile
10
- +typography-size('mobile')
11
-
12
- +tablet
13
- +typography-size('tablet')
14
-
15
- +touch
16
- +typography-size('touch')
17
-
18
- +desktop
19
- +typography-size('desktop')
20
-
21
- +widescreen
22
- +typography-size('widescreen')
23
-
24
- +fullhd
25
- +typography-size('fullhd')
26
-
27
- $alignments: ('centered': 'center', 'justified': 'justify', 'left': 'left', 'right': 'right')
28
-
29
- @each $alignment, $text-align in $alignments
30
- .has-text-#{$alignment}
31
- text-align: #{$text-align} !important
32
-
33
- @each $alignment, $text-align in $alignments
34
- +mobile
35
- .has-text-#{$alignment}-mobile
36
- text-align: #{$text-align} !important
37
- +tablet
38
- .has-text-#{$alignment}-tablet
39
- text-align: #{$text-align} !important
40
- +tablet-only
41
- .has-text-#{$alignment}-tablet-only
42
- text-align: #{$text-align} !important
43
- +touch
44
- .has-text-#{$alignment}-touch
45
- text-align: #{$text-align} !important
46
- +desktop
47
- .has-text-#{$alignment}-desktop
48
- text-align: #{$text-align} !important
49
- +desktop-only
50
- .has-text-#{$alignment}-desktop-only
51
- text-align: #{$text-align} !important
52
- +widescreen
53
- .has-text-#{$alignment}-widescreen
54
- text-align: #{$text-align} !important
55
- +widescreen-only
56
- .has-text-#{$alignment}-widescreen-only
57
- text-align: #{$text-align} !important
58
- +fullhd
59
- .has-text-#{$alignment}-fullhd
60
- text-align: #{$text-align} !important
61
-
62
- .is-capitalized
63
- text-transform: capitalize !important
64
-
65
- .is-lowercase
66
- text-transform: lowercase !important
67
-
68
- .is-uppercase
69
- text-transform: uppercase !important
70
-
71
- .is-italic
72
- font-style: italic !important
73
-
74
- .has-text-weight-light
75
- font-weight: $weight-light !important
76
- .has-text-weight-normal
77
- font-weight: $weight-normal !important
78
- .has-text-weight-medium
79
- font-weight: $weight-medium !important
80
- .has-text-weight-semibold
81
- font-weight: $weight-semibold !important
82
- .has-text-weight-bold
83
- font-weight: $weight-bold !important
84
-
85
- .is-family-primary
86
- font-family: $family-primary !important
87
-
88
- .is-family-secondary
89
- font-family: $family-secondary !important
90
-
91
- .is-family-sans-serif
92
- font-family: $family-sans-serif !important
93
-
94
- .is-family-monospace
95
- font-family: $family-monospace !important
96
-
97
- .is-family-code
98
- font-family: $family-code !important
@@ -1,122 +0,0 @@
1
-
2
-
3
- $displays: 'block' 'flex' 'inline' 'inline-block' 'inline-flex'
4
-
5
- @each $display in $displays
6
- .is-#{$display}
7
- display: #{$display} !important
8
- +mobile
9
- .is-#{$display}-mobile
10
- display: #{$display} !important
11
- +tablet
12
- .is-#{$display}-tablet
13
- display: #{$display} !important
14
- +tablet-only
15
- .is-#{$display}-tablet-only
16
- display: #{$display} !important
17
- +touch
18
- .is-#{$display}-touch
19
- display: #{$display} !important
20
- +desktop
21
- .is-#{$display}-desktop
22
- display: #{$display} !important
23
- +desktop-only
24
- .is-#{$display}-desktop-only
25
- display: #{$display} !important
26
- +widescreen
27
- .is-#{$display}-widescreen
28
- display: #{$display} !important
29
- +widescreen-only
30
- .is-#{$display}-widescreen-only
31
- display: #{$display} !important
32
- +fullhd
33
- .is-#{$display}-fullhd
34
- display: #{$display} !important
35
-
36
- .is-hidden
37
- display: none !important
38
-
39
- .is-sr-only
40
- border: none !important
41
- clip: rect(0, 0, 0, 0) !important
42
- height: 0.01em !important
43
- overflow: hidden !important
44
- padding: 0 !important
45
- position: absolute !important
46
- white-space: nowrap !important
47
- width: 0.01em !important
48
-
49
- +mobile
50
- .is-hidden-mobile
51
- display: none !important
52
-
53
- +tablet
54
- .is-hidden-tablet
55
- display: none !important
56
-
57
- +tablet-only
58
- .is-hidden-tablet-only
59
- display: none !important
60
-
61
- +touch
62
- .is-hidden-touch
63
- display: none !important
64
-
65
- +desktop
66
- .is-hidden-desktop
67
- display: none !important
68
-
69
- +desktop-only
70
- .is-hidden-desktop-only
71
- display: none !important
72
-
73
- +widescreen
74
- .is-hidden-widescreen
75
- display: none !important
76
-
77
- +widescreen-only
78
- .is-hidden-widescreen-only
79
- display: none !important
80
-
81
- +fullhd
82
- .is-hidden-fullhd
83
- display: none !important
84
-
85
- .is-invisible
86
- visibility: hidden !important
87
-
88
- +mobile
89
- .is-invisible-mobile
90
- visibility: hidden !important
91
-
92
- +tablet
93
- .is-invisible-tablet
94
- visibility: hidden !important
95
-
96
- +tablet-only
97
- .is-invisible-tablet-only
98
- visibility: hidden !important
99
-
100
- +touch
101
- .is-invisible-touch
102
- visibility: hidden !important
103
-
104
- +desktop
105
- .is-invisible-desktop
106
- visibility: hidden !important
107
-
108
- +desktop-only
109
- .is-invisible-desktop-only
110
- visibility: hidden !important
111
-
112
- +widescreen
113
- .is-invisible-widescreen
114
- visibility: hidden !important
115
-
116
- +widescreen-only
117
- .is-invisible-widescreen-only
118
- visibility: hidden !important
119
-
120
- +fullhd
121
- .is-invisible-fullhd
122
- visibility: hidden !important
@@ -1,5 +0,0 @@
1
- @charset "utf-8"
2
-
3
- @import "hero.sass"
4
- @import "section.sass"
5
- @import "footer.sass"
@@ -1,9 +0,0 @@
1
- $footer-background-color: $scheme-main-bis !default
2
- $footer-color: false !default
3
- $footer-padding: 3rem 1.5rem 6rem !default
4
-
5
- .footer
6
- background-color: $footer-background-color
7
- padding: $footer-padding
8
- @if $footer-color
9
- color: $footer-color
@@ -1,145 +0,0 @@
1
- $hero-body-padding: 3rem 1.5rem !default
2
- $hero-body-padding-small: 1.5rem !default
3
- $hero-body-padding-medium: 9rem 1.5rem !default
4
- $hero-body-padding-large: 18rem 1.5rem !default
5
-
6
- // Main container
7
- .hero
8
- align-items: stretch
9
- display: flex
10
- flex-direction: column
11
- justify-content: space-between
12
- .navbar
13
- background: none
14
- .tabs
15
- ul
16
- border-bottom: none
17
- // Colors
18
- @each $name, $pair in $colors
19
- $color: nth($pair, 1)
20
- $color-invert: nth($pair, 2)
21
- &.is-#{$name}
22
- background-color: $color
23
- color: $color-invert
24
- a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),
25
- strong
26
- color: inherit
27
- .title
28
- color: $color-invert
29
- .subtitle
30
- color: bulmaRgba($color-invert, 0.9)
31
- a:not(.button),
32
- strong
33
- color: $color-invert
34
- .navbar-menu
35
- +touch
36
- background-color: $color
37
- .navbar-item,
38
- .navbar-link
39
- color: bulmaRgba($color-invert, 0.7)
40
- a.navbar-item,
41
- .navbar-link
42
- &:hover,
43
- &.is-active
44
- background-color: bulmaDarken($color, 5%)
45
- color: $color-invert
46
- .tabs
47
- a
48
- color: $color-invert
49
- opacity: 0.9
50
- &:hover
51
- opacity: 1
52
- li
53
- &.is-active a
54
- opacity: 1
55
- &.is-boxed,
56
- &.is-toggle
57
- a
58
- color: $color-invert
59
- &:hover
60
- background-color: bulmaRgba($scheme-invert, 0.1)
61
- li.is-active a
62
- &,
63
- &:hover
64
- background-color: $color-invert
65
- border-color: $color-invert
66
- color: $color
67
- // Modifiers
68
- @if type-of($color) == 'color'
69
- &.is-bold
70
- $gradient-top-left: darken(saturate(adjust-hue($color, -10deg), 10%), 10%)
71
- $gradient-bottom-right: lighten(saturate(adjust-hue($color, 10deg), 5%), 5%)
72
- background-image: linear-gradient(141deg, $gradient-top-left 0%, $color 71%, $gradient-bottom-right 100%)
73
- +mobile
74
- .navbar-menu
75
- background-image: linear-gradient(141deg, $gradient-top-left 0%, $color 71%, $gradient-bottom-right 100%)
76
- // Sizes
77
- &.is-small
78
- .hero-body
79
- padding: $hero-body-padding-small
80
- &.is-medium
81
- +tablet
82
- .hero-body
83
- padding: $hero-body-padding-medium
84
- &.is-large
85
- +tablet
86
- .hero-body
87
- padding: $hero-body-padding-large
88
- &.is-halfheight,
89
- &.is-fullheight,
90
- &.is-fullheight-with-navbar
91
- .hero-body
92
- align-items: center
93
- display: flex
94
- & > .container
95
- flex-grow: 1
96
- flex-shrink: 1
97
- &.is-halfheight
98
- min-height: 50vh
99
- &.is-fullheight
100
- min-height: 100vh
101
-
102
- // Components
103
-
104
- .hero-video
105
- @extend %overlay
106
- overflow: hidden
107
- video
108
- left: 50%
109
- min-height: 100%
110
- min-width: 100%
111
- position: absolute
112
- top: 50%
113
- transform: translate3d(-50%, -50%, 0)
114
- // Modifiers
115
- &.is-transparent
116
- opacity: 0.3
117
- // Responsiveness
118
- +mobile
119
- display: none
120
-
121
- .hero-buttons
122
- margin-top: 1.5rem
123
- // Responsiveness
124
- +mobile
125
- .button
126
- display: flex
127
- &:not(:last-child)
128
- margin-bottom: 0.75rem
129
- +tablet
130
- display: flex
131
- justify-content: center
132
- .button:not(:last-child)
133
- +ltr-property("margin", 1.5rem)
134
-
135
- // Containers
136
-
137
- .hero-head,
138
- .hero-foot
139
- flex-grow: 0
140
- flex-shrink: 0
141
-
142
- .hero-body
143
- flex-grow: 1
144
- flex-shrink: 0
145
- padding: $hero-body-padding
@@ -1,13 +0,0 @@
1
- $section-padding: 3rem 1.5rem !default
2
- $section-padding-medium: 9rem 1.5rem !default
3
- $section-padding-large: 18rem 1.5rem !default
4
-
5
- .section
6
- padding: $section-padding
7
- // Responsiveness
8
- +desktop
9
- // Sizes
10
- &.is-medium
11
- padding: $section-padding-medium
12
- &.is-large
13
- padding: $section-padding-large
@@ -1,8 +0,0 @@
1
- @charset "utf-8"
2
-
3
- @import "initial-variables.sass"
4
- @import "functions.sass"
5
- @import "derived-variables.scss"
6
- @import "animations.sass"
7
- @import "mixins.sass"
8
- @import "controls.sass"
@@ -1,5 +0,0 @@
1
- @keyframes spinAround
2
- from
3
- transform: rotate(0deg)
4
- to
5
- transform: rotate(359deg)
@@ -1,50 +0,0 @@
1
- $control-radius: $radius !default
2
- $control-radius-small: $radius-small !default
3
-
4
- $control-border-width: 1px !default
5
-
6
- $control-height: 2.5em !default
7
- $control-line-height: 1.5 !default
8
-
9
- $control-padding-vertical: calc(0.5em - #{$control-border-width}) !default
10
- $control-padding-horizontal: calc(0.75em - #{$control-border-width}) !default
11
-
12
- =control
13
- -moz-appearance: none
14
- -webkit-appearance: none
15
- align-items: center
16
- border: $control-border-width solid transparent
17
- border-radius: $control-radius
18
- box-shadow: none
19
- display: inline-flex
20
- font-size: $size-normal
21
- height: $control-height
22
- justify-content: flex-start
23
- line-height: $control-line-height
24
- padding-bottom: $control-padding-vertical
25
- padding-left: $control-padding-horizontal
26
- padding-right: $control-padding-horizontal
27
- padding-top: $control-padding-vertical
28
- position: relative
29
- vertical-align: top
30
- // States
31
- &:focus,
32
- &.is-focused,
33
- &:active,
34
- &.is-active
35
- outline: none
36
- &[disabled],
37
- fieldset[disabled] &
38
- cursor: not-allowed
39
-
40
- %control
41
- +control
42
-
43
- // The controls sizes use mixins so they can be used at different breakpoints
44
- =control-small
45
- border-radius: $control-radius-small
46
- font-size: $size-small
47
- =control-medium
48
- font-size: $size-medium
49
- =control-large
50
- font-size: $size-large
@@ -1,115 +0,0 @@
1
- @function mergeColorMaps($bulma-colors, $custom-colors)
2
- // We return at least Bulma's hard-coded colors
3
- $merged-colors: $bulma-colors
4
-
5
- // We want a map as input
6
- @if type-of($custom-colors) == 'map'
7
- @each $name, $components in $custom-colors
8
- // The color name should be a string
9
- // and the components either a single color
10
- // or a colors list with at least one element
11
- @if type-of($name) == 'string' and (type-of($components) == 'list' or type-of($components) == 'color') and length($components) >= 1
12
- $color-base: null
13
- $color-invert: null
14
- $color-light: null
15
- $color-dark: null
16
- $value: null
17
-
18
- // The param can either be a single color
19
- // or a list of 2 colors
20
- @if type-of($components) == 'color'
21
- $color-base: $components
22
- $color-invert: findColorInvert($color-base)
23
- $color-light: findLightColor($color-base)
24
- $color-dark: findDarkColor($color-base)
25
- @else if type-of($components) == 'list'
26
- $color-base: nth($components, 1)
27
- // If Invert, Light and Dark are provided
28
- @if length($components) > 3
29
- $color-invert: nth($components, 2)
30
- $color-light: nth($components, 3)
31
- $color-dark: nth($components, 4)
32
- // If only Invert and Light are provided
33
- @else if length($components) > 2
34
- $color-invert: nth($components, 2)
35
- $color-light: nth($components, 3)
36
- $color-dark: findDarkColor($color-base)
37
- // If only Invert is provided
38
- @else
39
- $color-invert: nth($components, 2)
40
- $color-light: findLightColor($color-base)
41
- $color-dark: findDarkColor($color-base)
42
-
43
- $value: ($color-base, $color-invert, $color-light, $color-dark)
44
-
45
- // We only want to merge the map if the color base is an actual color
46
- @if type-of($color-base) == 'color'
47
- // We merge this colors elements as map with Bulma's colors map
48
- // (we can override them this way, no multiple definition for the same name)
49
- // $merged-colors: map_merge($merged-colors, ($name: ($color-base, $color-invert, $color-light, $color-dark)))
50
- $merged-colors: map_merge($merged-colors, ($name: $value))
51
-
52
- @return $merged-colors
53
-
54
- @function powerNumber($number, $exp)
55
- $value: 1
56
- @if $exp > 0
57
- @for $i from 1 through $exp
58
- $value: $value * $number
59
- @else if $exp < 0
60
- @for $i from 1 through -$exp
61
- $value: $value / $number
62
- @return $value
63
-
64
- @function colorLuminance($color)
65
- @if type-of($color) != 'color'
66
- @return 0.55
67
- $color-rgb: ('red': red($color),'green': green($color),'blue': blue($color))
68
- @each $name, $value in $color-rgb
69
- $adjusted: 0
70
- $value: $value / 255
71
- @if $value < 0.03928
72
- $value: $value / 12.92
73
- @else
74
- $value: ($value + .055) / 1.055
75
- $value: powerNumber($value, 2)
76
- $color-rgb: map-merge($color-rgb, ($name: $value))
77
- @return (map-get($color-rgb, 'red') * .2126) + (map-get($color-rgb, 'green') * .7152) + (map-get($color-rgb, 'blue') * .0722)
78
-
79
- @function findColorInvert($color)
80
- @if (colorLuminance($color) > 0.55)
81
- @return rgba(#000, 0.7)
82
- @else
83
- @return #fff
84
-
85
- @function findLightColor($color)
86
- @if type-of($color) == 'color'
87
- $l: 96%
88
- @if lightness($color) > 96%
89
- $l: lightness($color)
90
- @return change-color($color, $lightness: $l)
91
- @return $background
92
-
93
- @function findDarkColor($color)
94
- @if type-of($color) == 'color'
95
- $base-l: 29%
96
- $luminance: colorLuminance($color)
97
- $luminance-delta: (0.53 - $luminance)
98
- $target-l: round($base-l + ($luminance-delta * 53))
99
- @return change-color($color, $lightness: max($base-l, $target-l))
100
- @return $text-strong
101
-
102
- @function bulmaRgba($color, $alpha)
103
- @if type-of($color) != 'color'
104
- @return $color
105
- @return rgba($color, $alpha)
106
-
107
- @function bulmaDarken($color, $amount)
108
- @if type-of($color) != 'color'
109
- @return $color
110
- @return darken($color, $amount)
111
-
112
- @function bulmaLighten($color, $amount)
113
- @if type-of($color) != 'color'
114
- @return $color
115
- @return lighten($color, $amount)
@@ -1,78 +0,0 @@
1
- // Colors
2
-
3
- $black: hsl(0, 0%, 4%) !default
4
- $black-bis: hsl(0, 0%, 7%) !default
5
- $black-ter: hsl(0, 0%, 14%) !default
6
-
7
- $grey-darker: hsl(0, 0%, 21%) !default
8
- $grey-dark: hsl(0, 0%, 29%) !default
9
- $grey: hsl(0, 0%, 48%) !default
10
- $grey-light: hsl(0, 0%, 71%) !default
11
- $grey-lighter: hsl(0, 0%, 86%) !default
12
- $grey-lightest: hsl(0, 0%, 93%) !default
13
-
14
- $white-ter: hsl(0, 0%, 96%) !default
15
- $white-bis: hsl(0, 0%, 98%) !default
16
- $white: hsl(0, 0%, 100%) !default
17
-
18
- $orange: hsl(14, 100%, 53%) !default
19
- $yellow: hsl(48, 100%, 67%) !default
20
- $green: hsl(141, 53%, 53%) !default
21
- $turquoise: hsl(171, 100%, 41%) !default
22
- $cyan: hsl(204, 71%, 53%) !default
23
- $blue: hsl(217, 71%, 53%) !default
24
- $purple: hsl(271, 100%, 71%) !default
25
- $red: hsl(348, 86%, 61%) !default
26
-
27
- // Typography
28
-
29
- $family-sans-serif: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !default
30
- $family-monospace: monospace !default
31
- $render-mode: optimizeLegibility !default
32
-
33
- $size-1: 3rem !default
34
- $size-2: 2.5rem !default
35
- $size-3: 2rem !default
36
- $size-4: 1.5rem !default
37
- $size-5: 1.25rem !default
38
- $size-6: 1rem !default
39
- $size-7: 0.75rem !default
40
-
41
- $weight-light: 300 !default
42
- $weight-normal: 400 !default
43
- $weight-medium: 500 !default
44
- $weight-semibold: 600 !default
45
- $weight-bold: 700 !default
46
-
47
- // Spacing
48
-
49
- $block-spacing: 1.5rem !default
50
-
51
- // Responsiveness
52
-
53
- // The container horizontal gap, which acts as the offset for breakpoints
54
- $gap: 32px !default
55
- // 960, 1152, and 1344 have been chosen because they are divisible by both 12 and 16
56
- $tablet: 769px !default
57
- // 960px container + 4rem
58
- $desktop: 960px + (2 * $gap) !default
59
- // 1152px container + 4rem
60
- $widescreen: 1152px + (2 * $gap) !default
61
- $widescreen-enabled: true !default
62
- // 1344px container + 4rem
63
- $fullhd: 1344px + (2 * $gap) !default
64
- $fullhd-enabled: true !default
65
-
66
- // Miscellaneous
67
-
68
- $easing: ease-out !default
69
- $radius-small: 2px !default
70
- $radius: 4px !default
71
- $radius-large: 6px !default
72
- $radius-rounded: 290486px !default
73
- $speed: 86ms !default
74
-
75
- // Flags
76
-
77
- $variable-columns: true !default
78
- $rtl: false !default