jekyll-theme-flow 0.1.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 (102) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +18 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +313 -0
  5. data/_includes/archive_versions.html +36 -0
  6. data/_includes/footer.html +5 -0
  7. data/_includes/head.html +9 -0
  8. data/_includes/icon.html +10 -0
  9. data/_includes/nav_tree.html +38 -0
  10. data/_includes/navbar.html +55 -0
  11. data/_includes/search_slot.html +19 -0
  12. data/_includes/shells/bare.html +5 -0
  13. data/_includes/shells/sidebar-left.html +18 -0
  14. data/_includes/shells/sidebar-right.html +18 -0
  15. data/_includes/shells/topnav.html +8 -0
  16. data/_includes/sidebar.html +10 -0
  17. data/_layouts/archive-index.html +26 -0
  18. data/_layouts/archive.html +14 -0
  19. data/_layouts/bare.html +5 -0
  20. data/_layouts/default.html +14 -0
  21. data/_layouts/search.html +15 -0
  22. data/_layouts/sidebar-left.html +5 -0
  23. data/_layouts/sidebar-right.html +5 -0
  24. data/_layouts/topnav.html +5 -0
  25. data/_sass/bulma/_index.scss +10 -0
  26. data/_sass/bulma/base/_index.scss +6 -0
  27. data/_sass/bulma/base/animations.scss +15 -0
  28. data/_sass/bulma/base/generic.scss +240 -0
  29. data/_sass/bulma/base/minireset.scss +92 -0
  30. data/_sass/bulma/base/skeleton.scss +114 -0
  31. data/_sass/bulma/components/_index.scss +13 -0
  32. data/_sass/bulma/components/breadcrumb.scss +139 -0
  33. data/_sass/bulma/components/card.scss +162 -0
  34. data/_sass/bulma/components/dropdown.scss +188 -0
  35. data/_sass/bulma/components/menu.scss +165 -0
  36. data/_sass/bulma/components/message.scss +183 -0
  37. data/_sass/bulma/components/modal.scss +164 -0
  38. data/_sass/bulma/components/navbar.scss +799 -0
  39. data/_sass/bulma/components/pagination.scss +379 -0
  40. data/_sass/bulma/components/panel.scss +218 -0
  41. data/_sass/bulma/components/tabs.scss +273 -0
  42. data/_sass/bulma/elements/_index.scss +16 -0
  43. data/_sass/bulma/elements/block.scss +6 -0
  44. data/_sass/bulma/elements/box.scss +59 -0
  45. data/_sass/bulma/elements/button.scss +659 -0
  46. data/_sass/bulma/elements/content.scss +289 -0
  47. data/_sass/bulma/elements/delete.scss +6 -0
  48. data/_sass/bulma/elements/icon.scss +67 -0
  49. data/_sass/bulma/elements/image.scss +64 -0
  50. data/_sass/bulma/elements/loader.scss +15 -0
  51. data/_sass/bulma/elements/notification.scss +105 -0
  52. data/_sass/bulma/elements/progress.scss +115 -0
  53. data/_sass/bulma/elements/table.scss +261 -0
  54. data/_sass/bulma/elements/tag.scss +219 -0
  55. data/_sass/bulma/elements/title.scss +130 -0
  56. data/_sass/bulma/form/_index.scss +9 -0
  57. data/_sass/bulma/form/checkbox-radio.scss +36 -0
  58. data/_sass/bulma/form/file.scss +330 -0
  59. data/_sass/bulma/form/input-textarea.scss +115 -0
  60. data/_sass/bulma/form/select.scss +144 -0
  61. data/_sass/bulma/form/shared.scss +178 -0
  62. data/_sass/bulma/form/tools.scss +352 -0
  63. data/_sass/bulma/grid/_index.scss +5 -0
  64. data/_sass/bulma/grid/columns.scss +961 -0
  65. data/_sass/bulma/grid/grid.scss +209 -0
  66. data/_sass/bulma/helpers/_index.scss +15 -0
  67. data/_sass/bulma/helpers/aspect-ratio.scss +12 -0
  68. data/_sass/bulma/helpers/border.scss +15 -0
  69. data/_sass/bulma/helpers/color.scss +344 -0
  70. data/_sass/bulma/helpers/flexbox.scss +62 -0
  71. data/_sass/bulma/helpers/float.scss +28 -0
  72. data/_sass/bulma/helpers/gap.scss +24 -0
  73. data/_sass/bulma/helpers/other.scss +19 -0
  74. data/_sass/bulma/helpers/overflow.scss +21 -0
  75. data/_sass/bulma/helpers/position.scss +19 -0
  76. data/_sass/bulma/helpers/spacing.scss +64 -0
  77. data/_sass/bulma/helpers/typography.scss +174 -0
  78. data/_sass/bulma/helpers/visibility.scss +221 -0
  79. data/_sass/bulma/layout/_index.scss +9 -0
  80. data/_sass/bulma/layout/container.scss +59 -0
  81. data/_sass/bulma/layout/footer.scss +23 -0
  82. data/_sass/bulma/layout/hero.scss +273 -0
  83. data/_sass/bulma/layout/level.scss +107 -0
  84. data/_sass/bulma/layout/media.scss +106 -0
  85. data/_sass/bulma/layout/section.scss +38 -0
  86. data/_sass/bulma/themes/_index.scss +36 -0
  87. data/_sass/bulma/themes/dark.scss +57 -0
  88. data/_sass/bulma/themes/light.scss +147 -0
  89. data/_sass/bulma/themes/setup.scss +174 -0
  90. data/_sass/bulma/utilities/_index.scss +7 -0
  91. data/_sass/bulma/utilities/controls.scss +85 -0
  92. data/_sass/bulma/utilities/css-variables.scss +502 -0
  93. data/_sass/bulma/utilities/derived-variables.scss +112 -0
  94. data/_sass/bulma/utilities/extends.scss +34 -0
  95. data/_sass/bulma/utilities/functions.scss +310 -0
  96. data/_sass/bulma/utilities/initial-variables.scss +157 -0
  97. data/_sass/bulma/utilities/mixins.scss +462 -0
  98. data/_sass/flow.scss +131 -0
  99. data/assets/css/theme.scss +3 -0
  100. data/assets/js/alpine.min.js +21 -0
  101. data/lib/jekyll-theme-flow.rb +38 -0
  102. metadata +209 -0
@@ -0,0 +1,162 @@
1
+ @use "../utilities/css-variables" as cv;
2
+ @use "../utilities/initial-variables" as iv;
3
+ @use "../utilities/extends";
4
+ @use "../utilities/mixins" as mx;
5
+
6
+ $card-color: cv.getVar("text") !default;
7
+ $card-background-color: cv.getVar("scheme-main") !default;
8
+ $card-shadow: cv.getVar("shadow") !default;
9
+ $card-radius: 0.75rem !default;
10
+
11
+ $card-header-background-color: transparent !default;
12
+ $card-header-color: cv.getVar("text-strong") !default;
13
+ $card-header-padding: 0.75rem 1rem !default;
14
+ $card-header-shadow: 0 0.125em 0.25em
15
+ hsla(
16
+ #{cv.getVar("scheme-h")},
17
+ #{cv.getVar("scheme-s")},
18
+ #{cv.getVar("scheme-invert-l")},
19
+ 0.1
20
+ ) !default;
21
+ $card-header-weight: cv.getVar("weight-bold") !default;
22
+
23
+ $card-content-background-color: transparent !default;
24
+ $card-content-padding: 1.5rem !default;
25
+
26
+ $card-footer-background-color: transparent !default;
27
+ $card-footer-border-top: 1px solid cv.getVar("border-weak") !default;
28
+ $card-footer-padding: 0.75rem !default;
29
+
30
+ $card-media-margin: cv.getVar("block-spacing") !default;
31
+
32
+ .#{iv.$class-prefix}card {
33
+ @include cv.register-vars(
34
+ (
35
+ "card-color": #{$card-color},
36
+ "card-background-color": #{$card-background-color},
37
+ "card-shadow": #{$card-shadow},
38
+ "card-radius": #{$card-radius},
39
+ "card-header-background-color": #{$card-header-background-color},
40
+ "card-header-color": #{$card-header-color},
41
+ "card-header-padding": #{$card-header-padding},
42
+ "card-header-shadow": #{$card-header-shadow},
43
+ "card-header-weight": #{$card-header-weight},
44
+ "card-content-background-color": #{$card-content-background-color},
45
+ "card-content-padding": #{$card-content-padding},
46
+ "card-footer-background-color": #{$card-footer-background-color},
47
+ "card-footer-border-top": #{$card-footer-border-top},
48
+ "card-footer-padding": #{$card-footer-padding},
49
+ "card-media-margin": #{$card-media-margin},
50
+ )
51
+ );
52
+ }
53
+
54
+ .#{iv.$class-prefix}card {
55
+ @extend %block;
56
+ background-color: cv.getVar("card-background-color");
57
+ border-radius: cv.getVar("card-radius");
58
+ box-shadow: cv.getVar("card-shadow");
59
+ color: cv.getVar("card-color");
60
+ max-width: 100%;
61
+ position: relative;
62
+ }
63
+
64
+ %card-item {
65
+ &:first-child {
66
+ border-start-start-radius: cv.getVar("card-radius");
67
+ border-start-end-radius: cv.getVar("card-radius");
68
+ }
69
+
70
+ &:last-child {
71
+ border-end-start-radius: cv.getVar("card-radius");
72
+ border-end-end-radius: cv.getVar("card-radius");
73
+ }
74
+ }
75
+
76
+ .#{iv.$class-prefix}card-header {
77
+ @extend %card-item;
78
+ background-color: cv.getVar("card-header-background-color");
79
+ align-items: stretch;
80
+ box-shadow: cv.getVar("card-header-shadow");
81
+ display: flex;
82
+ }
83
+
84
+ .#{iv.$class-prefix}card-header-title {
85
+ align-items: center;
86
+ color: cv.getVar("card-header-color");
87
+ display: flex;
88
+ flex-grow: 1;
89
+ font-weight: cv.getVar("card-header-weight");
90
+ padding: cv.getVar("card-header-padding");
91
+
92
+ &.#{iv.$class-prefix}is-centered {
93
+ justify-content: center;
94
+ }
95
+ }
96
+
97
+ .#{iv.$class-prefix}card-header-icon {
98
+ @include mx.reset;
99
+
100
+ align-items: center;
101
+ cursor: pointer;
102
+ display: flex;
103
+ justify-content: center;
104
+ padding: cv.getVar("card-header-padding");
105
+ }
106
+
107
+ .#{iv.$class-prefix}card-image {
108
+ display: block;
109
+ position: relative;
110
+
111
+ &:first-child {
112
+ img {
113
+ border-start-start-radius: cv.getVar("card-radius");
114
+ border-start-end-radius: cv.getVar("card-radius");
115
+ }
116
+ }
117
+
118
+ &:last-child {
119
+ img {
120
+ border-end-start-radius: cv.getVar("card-radius");
121
+ border-end-end-radius: cv.getVar("card-radius");
122
+ }
123
+ }
124
+ }
125
+
126
+ .#{iv.$class-prefix}card-content {
127
+ @extend %card-item;
128
+
129
+ background-color: cv.getVar("card-content-background-color");
130
+ padding: cv.getVar("card-content-padding");
131
+ }
132
+
133
+ .#{iv.$class-prefix}card-footer {
134
+ @extend %card-item;
135
+
136
+ background-color: cv.getVar("card-footer-background-color");
137
+ border-top: cv.getVar("card-footer-border-top");
138
+ align-items: stretch;
139
+ display: flex;
140
+ }
141
+
142
+ .#{iv.$class-prefix}card-footer-item {
143
+ align-items: center;
144
+ display: flex;
145
+ flex-basis: 0;
146
+ flex-grow: 1;
147
+ flex-shrink: 0;
148
+ justify-content: center;
149
+ padding: cv.getVar("card-footer-padding");
150
+
151
+ &:not(:last-child) {
152
+ border-inline-end: cv.getVar("card-footer-border-top");
153
+ }
154
+ }
155
+
156
+ // Combinations
157
+
158
+ .#{iv.$class-prefix}card {
159
+ .#{iv.$class-prefix}media:not(:last-child) {
160
+ margin-bottom: cv.getVar("card-media-margin");
161
+ }
162
+ }
@@ -0,0 +1,188 @@
1
+ @use "../utilities/css-variables" as cv;
2
+ @use "../utilities/initial-variables" as iv;
3
+ @use "../utilities/extends";
4
+ @use "../utilities/mixins" as mx;
5
+
6
+ $dropdown-menu-min-width: 12rem !default;
7
+
8
+ $dropdown-content-background-color: cv.getVar("scheme-main") !default;
9
+ $dropdown-content-offset: 0.25rem !default;
10
+ $dropdown-content-padding-bottom: 0.5rem !default;
11
+ $dropdown-content-padding-top: 0.5rem !default;
12
+ $dropdown-content-radius: cv.getVar("radius") !default;
13
+ $dropdown-content-shadow: cv.getVar("shadow") !default;
14
+ $dropdown-content-z: 20 !default;
15
+
16
+ $dropdown-item-h: cv.getVar("scheme-h");
17
+ $dropdown-item-s: cv.getVar("scheme-s");
18
+ $dropdown-item-l: cv.getVar("scheme-main-l");
19
+ $dropdown-item-background-l: cv.getVar("scheme-main-l");
20
+ $dropdown-item-background-l-delta: 0%;
21
+ $dropdown-item-hover-background-l-delta: cv.getVar("hover-background-l-delta");
22
+ $dropdown-item-active-background-l-delta: cv.getVar(
23
+ "active-background-l-delta"
24
+ );
25
+ $dropdown-item-color-l: cv.getVar("text-strong-l");
26
+ $dropdown-item-selected-h: cv.getVar("link-h");
27
+ $dropdown-item-selected-s: cv.getVar("link-s");
28
+ $dropdown-item-selected-l: cv.getVar("link-l");
29
+ $dropdown-item-selected-background-l: cv.getVar("link-l");
30
+ $dropdown-item-selected-color-l: cv.getVar("link-invert-l");
31
+
32
+ $dropdown-divider-background-color: cv.getVar("border-weak") !default;
33
+
34
+ .#{iv.$class-prefix}dropdown {
35
+ // prettier-ignore-start
36
+ @include cv.register-vars(
37
+ (
38
+ "dropdown-menu-min-width": #{$dropdown-menu-min-width},
39
+ "dropdown-content-background-color": #{$dropdown-content-background-color},
40
+ "dropdown-content-offset": #{$dropdown-content-offset},
41
+ "dropdown-content-padding-bottom": #{$dropdown-content-padding-bottom},
42
+ "dropdown-content-padding-top": #{$dropdown-content-padding-top},
43
+ "dropdown-content-radius": #{$dropdown-content-radius},
44
+ "dropdown-content-shadow": #{$dropdown-content-shadow},
45
+ "dropdown-content-z": #{$dropdown-content-z},
46
+ "dropdown-item-h": #{$dropdown-item-h},
47
+ "dropdown-item-s": #{$dropdown-item-s},
48
+ "dropdown-item-l": #{$dropdown-item-l},
49
+ "dropdown-item-background-l": #{$dropdown-item-background-l},
50
+ "dropdown-item-background-l-delta": #{$dropdown-item-background-l-delta},
51
+ "dropdown-item-hover-background-l-delta": #{$dropdown-item-hover-background-l-delta},
52
+ "dropdown-item-active-background-l-delta": #{$dropdown-item-active-background-l-delta},
53
+ "dropdown-item-color-l": #{$dropdown-item-color-l},
54
+ "dropdown-item-selected-h": #{$dropdown-item-selected-h},
55
+ "dropdown-item-selected-s": #{$dropdown-item-selected-s},
56
+ "dropdown-item-selected-l": #{$dropdown-item-selected-l},
57
+ "dropdown-item-selected-background-l": #{$dropdown-item-selected-background-l},
58
+ "dropdown-item-selected-color-l": #{$dropdown-item-selected-color-l},
59
+ "dropdown-divider-background-color": #{$dropdown-divider-background-color},
60
+ )
61
+ );
62
+ // prettier-ignore-end
63
+ }
64
+
65
+ .#{iv.$class-prefix}dropdown {
66
+ display: inline-flex;
67
+ position: relative;
68
+ vertical-align: top;
69
+
70
+ &.#{iv.$class-prefix}is-active,
71
+ &.#{iv.$class-prefix}is-hoverable:hover {
72
+ .#{iv.$class-prefix}dropdown-menu {
73
+ display: block;
74
+ }
75
+ }
76
+
77
+ &.#{iv.$class-prefix}is-right {
78
+ .#{iv.$class-prefix}dropdown-menu {
79
+ left: auto;
80
+ right: 0;
81
+ }
82
+ }
83
+
84
+ &.#{iv.$class-prefix}is-up {
85
+ .#{iv.$class-prefix}dropdown-menu {
86
+ bottom: 100%;
87
+ padding-bottom: cv.getVar("dropdown-content-offset");
88
+ padding-top: initial;
89
+ top: auto;
90
+ }
91
+ }
92
+ }
93
+
94
+ .#{iv.$class-prefix}dropdown-menu {
95
+ display: none;
96
+ @include mx.ltr-position(0, false);
97
+ min-width: cv.getVar("dropdown-menu-min-width");
98
+ padding-top: cv.getVar("dropdown-content-offset");
99
+ position: absolute;
100
+ top: 100%;
101
+ z-index: cv.getVar("dropdown-content-z");
102
+ }
103
+
104
+ .#{iv.$class-prefix}dropdown-content {
105
+ background-color: cv.getVar("dropdown-content-background-color");
106
+ border-radius: cv.getVar("dropdown-content-radius");
107
+ box-shadow: cv.getVar("dropdown-content-shadow");
108
+ padding-bottom: cv.getVar("dropdown-content-padding-bottom");
109
+ padding-top: cv.getVar("dropdown-content-padding-top");
110
+ }
111
+
112
+ .#{iv.$class-prefix}dropdown-item {
113
+ color: hsl(
114
+ #{cv.getVar("dropdown-item-h")},
115
+ #{cv.getVar("dropdown-item-s")},
116
+ #{cv.getVar("dropdown-item-color-l")}
117
+ );
118
+ display: block;
119
+ font-size: 0.875rem;
120
+ line-height: 1.5;
121
+ padding: 0.375rem 1rem;
122
+ }
123
+
124
+ a.#{iv.$class-prefix}dropdown-item,
125
+ button.#{iv.$class-prefix}dropdown-item {
126
+ background-color: hsl(
127
+ #{cv.getVar("dropdown-item-h")},
128
+ #{cv.getVar("dropdown-item-s")},
129
+ calc(
130
+ #{cv.getVar("dropdown-item-background-l")} + #{cv.getVar(
131
+ "dropdown-item-background-l-delta"
132
+ )}
133
+ )
134
+ );
135
+ padding-inline-end: 3rem;
136
+ text-align: inherit;
137
+ white-space: nowrap;
138
+ width: 100%;
139
+
140
+ &:hover {
141
+ @include cv.register-vars(
142
+ (
143
+ "dropdown-item-background-l-delta": #{cv.getVar(
144
+ "dropdown-item-hover-background-l-delta"
145
+ )},
146
+ "dropdown-item-border-l-delta": #{cv.getVar(
147
+ "dropdown-item-hover-border-l-delta"
148
+ )},
149
+ )
150
+ );
151
+ }
152
+
153
+ &:active {
154
+ @include cv.register-vars(
155
+ (
156
+ "dropdown-item-background-l-delta": #{cv.getVar(
157
+ "dropdown-item-active-background-l-delta"
158
+ )},
159
+ "dropdown-item-border-l-delta": #{cv.getVar(
160
+ "dropdown-item-active-border-l-delta"
161
+ )},
162
+ )
163
+ );
164
+ }
165
+
166
+ &.#{iv.$class-prefix}is-active,
167
+ &.#{iv.$class-prefix}is-selected {
168
+ @include cv.register-vars(
169
+ (
170
+ "dropdown-item-h": #{cv.getVar("dropdown-item-selected-h")},
171
+ "dropdown-item-s": #{cv.getVar("dropdown-item-selected-s")},
172
+ "dropdown-item-l": #{cv.getVar("dropdown-item-selected-l")},
173
+ "dropdown-item-background-l": #{cv.getVar(
174
+ "dropdown-item-selected-background-l"
175
+ )},
176
+ "dropdown-item-color-l": #{cv.getVar("dropdown-item-selected-color-l")},
177
+ )
178
+ );
179
+ }
180
+ }
181
+
182
+ .#{iv.$class-prefix}dropdown-divider {
183
+ background-color: cv.getVar("dropdown-divider-background-color");
184
+ border: none;
185
+ display: block;
186
+ height: 1px;
187
+ margin: 0.5rem 0;
188
+ }
@@ -0,0 +1,165 @@
1
+ @use "../utilities/css-variables" as cv;
2
+ @use "../utilities/initial-variables" as iv;
3
+ @use "../utilities/extends";
4
+ @use "../utilities/mixins" as mx;
5
+
6
+ $menu-item-h: cv.getVar("scheme-h");
7
+ $menu-item-s: cv.getVar("scheme-s");
8
+ $menu-item-l: cv.getVar("scheme-main-l");
9
+ $menu-item-background-l: cv.getVar("scheme-main-l");
10
+ $menu-item-background-l-delta: 0%;
11
+ $menu-item-hover-background-l-delta: cv.getVar("hover-background-l-delta");
12
+ $menu-item-active-background-l-delta: cv.getVar("active-background-l-delta");
13
+ $menu-item-color-l: cv.getVar("text-l");
14
+ $menu-item-radius: cv.getVar("radius-small") !default;
15
+ $menu-item-selected-h: cv.getVar("link-h");
16
+ $menu-item-selected-s: cv.getVar("link-s");
17
+ $menu-item-selected-l: cv.getVar("link-l");
18
+ $menu-item-selected-background-l: cv.getVar("link-l");
19
+ $menu-item-selected-color-l: cv.getVar("link-invert-l");
20
+
21
+ $menu-list-border-left: 1px solid cv.getVar("border") !default;
22
+ $menu-list-line-height: 1.25 !default;
23
+ $menu-list-link-padding: 0.5em 0.75em !default;
24
+ $menu-nested-list-margin: 0.75em !default;
25
+ $menu-nested-list-padding-left: 0.75em !default;
26
+
27
+ $menu-label-color: cv.getVar("text-weak") !default;
28
+ $menu-label-font-size: 0.75em !default;
29
+ $menu-label-letter-spacing: 0.1em !default;
30
+ $menu-label-spacing: 1em !default;
31
+
32
+ .#{iv.$class-prefix}menu {
33
+ @include cv.register-vars(
34
+ (
35
+ "menu-item-h": #{$menu-item-h},
36
+ "menu-item-s": #{$menu-item-s},
37
+ "menu-item-l": #{$menu-item-l},
38
+ "menu-item-background-l": #{$menu-item-background-l},
39
+ "menu-item-background-l-delta": #{$menu-item-background-l-delta},
40
+ "menu-item-hover-background-l-delta": #{$menu-item-hover-background-l-delta},
41
+ "menu-item-active-background-l-delta": #{$menu-item-active-background-l-delta},
42
+ "menu-item-color-l": #{$menu-item-color-l},
43
+ "menu-item-radius": #{$menu-item-radius},
44
+ "menu-item-selected-h": #{$menu-item-selected-h},
45
+ "menu-item-selected-s": #{$menu-item-selected-s},
46
+ "menu-item-selected-l": #{$menu-item-selected-l},
47
+ "menu-item-selected-background-l": #{$menu-item-selected-background-l},
48
+ "menu-item-selected-color-l": #{$menu-item-selected-color-l},
49
+ "menu-list-border-left": #{$menu-list-border-left},
50
+ "menu-list-line-height": #{$menu-list-line-height},
51
+ "menu-list-link-padding": #{$menu-list-link-padding},
52
+ "menu-nested-list-margin": #{$menu-nested-list-margin},
53
+ "menu-nested-list-padding-left": #{$menu-nested-list-padding-left},
54
+ "menu-label-color": #{$menu-label-color},
55
+ "menu-label-font-size": #{$menu-label-font-size},
56
+ "menu-label-letter-spacing": #{$menu-label-letter-spacing},
57
+ "menu-label-spacing": #{$menu-label-spacing},
58
+ )
59
+ );
60
+ }
61
+
62
+ .#{iv.$class-prefix}menu {
63
+ font-size: cv.getVar("size-normal");
64
+
65
+ // Sizes
66
+ &.#{iv.$class-prefix}is-small {
67
+ font-size: cv.getVar("size-small");
68
+ }
69
+
70
+ &.#{iv.$class-prefix}is-medium {
71
+ font-size: cv.getVar("size-medium");
72
+ }
73
+
74
+ &.#{iv.$class-prefix}is-large {
75
+ font-size: cv.getVar("size-large");
76
+ }
77
+ }
78
+
79
+ .#{iv.$class-prefix}menu-list {
80
+ line-height: cv.getVar("menu-list-line-height");
81
+
82
+ a,
83
+ button,
84
+ .#{iv.$class-prefix}menu-item {
85
+ @extend %reset;
86
+ background-color: hsl(
87
+ #{cv.getVar("menu-item-h")},
88
+ #{cv.getVar("menu-item-s")},
89
+ calc(
90
+ #{cv.getVar("menu-item-background-l")} + #{cv.getVar(
91
+ "menu-item-background-l-delta"
92
+ )}
93
+ )
94
+ );
95
+ border-radius: cv.getVar("menu-item-radius");
96
+ color: hsl(
97
+ #{cv.getVar("menu-item-h")},
98
+ #{cv.getVar("menu-item-s")},
99
+ #{cv.getVar("menu-item-color-l")}
100
+ );
101
+ display: block;
102
+ padding: cv.getVar("menu-list-link-padding");
103
+ text-align: left;
104
+ width: 100%;
105
+
106
+ &:hover {
107
+ @include cv.register-vars(
108
+ (
109
+ "menu-item-background-l-delta": #{cv.getVar(
110
+ "menu-item-hover-background-l-delta"
111
+ )},
112
+ )
113
+ );
114
+ }
115
+
116
+ &:active {
117
+ @include cv.register-vars(
118
+ (
119
+ "menu-item-background-l-delta": #{cv.getVar(
120
+ "menu-item-active-background-l-delta"
121
+ )},
122
+ )
123
+ );
124
+ }
125
+
126
+ // Modifiers
127
+ &.#{iv.$class-prefix}is-active,
128
+ &.#{iv.$class-prefix}is-selected {
129
+ @include cv.register-vars(
130
+ (
131
+ "menu-item-h": #{cv.getVar("menu-item-selected-h")},
132
+ "menu-item-s": #{cv.getVar("menu-item-selected-s")},
133
+ "menu-item-l": #{cv.getVar("menu-item-selected-l")},
134
+ "menu-item-background-l": #{cv.getVar(
135
+ "menu-item-selected-background-l"
136
+ )},
137
+ "menu-item-color-l": #{cv.getVar("menu-item-selected-color-l")},
138
+ )
139
+ );
140
+ }
141
+ }
142
+
143
+ li {
144
+ ul {
145
+ border-inline-start: cv.getVar("menu-list-border-left");
146
+ margin: cv.getVar("menu-nested-list-margin");
147
+ padding-inline-start: cv.getVar("menu-nested-list-padding-left");
148
+ }
149
+ }
150
+ }
151
+
152
+ .#{iv.$class-prefix}menu-label {
153
+ color: cv.getVar("menu-label-color");
154
+ font-size: cv.getVar("menu-label-font-size");
155
+ letter-spacing: cv.getVar("menu-label-letter-spacing");
156
+ text-transform: uppercase;
157
+
158
+ &:not(:first-child) {
159
+ margin-top: cv.getVar("menu-label-spacing");
160
+ }
161
+
162
+ &:not(:last-child) {
163
+ margin-bottom: cv.getVar("menu-label-spacing");
164
+ }
165
+ }
@@ -0,0 +1,183 @@
1
+ @use "../utilities/css-variables" as cv;
2
+ @use "../utilities/derived-variables" as dv;
3
+ @use "../utilities/initial-variables" as iv;
4
+ @use "../utilities/extends";
5
+ @use "../utilities/mixins" as mx;
6
+
7
+ $message-h: cv.getVar("scheme-h");
8
+ $message-s: cv.getVar("scheme-s");
9
+ $message-background-l: cv.getVar("background-l");
10
+ $message-border-l: cv.getVar("border-l");
11
+ $message-border-l-delta: -20% !default;
12
+ $message-border-style: solid;
13
+ $message-border-width: 0.25em;
14
+ $message-color-l: cv.getVar("text-l");
15
+ $message-header-background-l: cv.getVar("dark-l");
16
+ $message-header-color-l: cv.getVar("text-dark-invert-l");
17
+ $message-radius: cv.getVar("radius") !default;
18
+
19
+ $message-header-weight: cv.getVar("weight-semibold") !default;
20
+ $message-header-padding: 1em 1.25em !default;
21
+ $message-header-radius: cv.getVar("radius") !default;
22
+
23
+ $message-body-border-width: 0 0 0 4px !default;
24
+ $message-body-color: cv.getVar("text") !default;
25
+ $message-body-padding: 1.25em 1.5em !default;
26
+ $message-body-radius: cv.getVar("radius-small") !default;
27
+
28
+ $message-body-pre-code-background-color: transparent !default;
29
+
30
+ $message-header-body-border-width: 0 !default;
31
+ $message-colors: dv.$colors !default;
32
+
33
+ .#{iv.$class-prefix}message {
34
+ @include cv.register-vars(
35
+ (
36
+ "message-border-l-delta": #{$message-border-l-delta},
37
+ "message-radius": #{$message-radius},
38
+ "message-header-weight": #{$message-header-weight},
39
+ "message-header-padding": #{$message-header-padding},
40
+ "message-header-radius": #{$message-header-radius},
41
+ "message-body-border-width": #{$message-body-border-width},
42
+ "message-body-color": #{$message-body-color},
43
+ "message-body-padding": #{$message-body-padding},
44
+ "message-body-radius": #{$message-body-radius},
45
+ "message-body-pre-code-background-color": #{$message-body-pre-code-background-color},
46
+ "message-header-body-border-width": #{$message-header-body-border-width},
47
+ "message-h": #{$message-h},
48
+ "message-s": #{$message-s},
49
+ "message-background-l": #{$message-background-l},
50
+ "message-border-l": #{$message-border-l},
51
+ "message-border-style": #{$message-border-style},
52
+ "message-border-width": #{$message-border-width},
53
+ "message-color-l": #{$message-color-l},
54
+ "message-header-background-l": #{$message-header-background-l},
55
+ "message-header-color-l": #{$message-header-color-l},
56
+ )
57
+ );
58
+ }
59
+
60
+ .#{iv.$class-prefix}message {
61
+ @extend %block;
62
+ border-radius: cv.getVar("message-radius");
63
+ color: hsl(
64
+ #{cv.getVar("message-h")},
65
+ #{cv.getVar("message-s")},
66
+ #{cv.getVar("message-color-l")}
67
+ );
68
+ font-size: cv.getVar("size-normal");
69
+
70
+ strong {
71
+ color: currentColor;
72
+ }
73
+
74
+ a:not(.#{iv.$class-prefix}button):not(.#{iv.$class-prefix}tag):not(
75
+ .#{iv.$class-prefix}dropdown-item
76
+ ) {
77
+ color: currentColor;
78
+ text-decoration: underline;
79
+ }
80
+
81
+ // Sizes
82
+ &.#{iv.$class-prefix}is-small {
83
+ font-size: cv.getVar("size-small");
84
+ }
85
+
86
+ &.#{iv.$class-prefix}is-medium {
87
+ font-size: cv.getVar("size-medium");
88
+ }
89
+
90
+ &.#{iv.$class-prefix}is-large {
91
+ font-size: cv.getVar("size-large");
92
+ }
93
+
94
+ // Colors
95
+ @each $name, $components in $message-colors {
96
+ &.#{iv.$class-prefix}is-#{$name} {
97
+ @include cv.register-vars(
98
+ (
99
+ "message-h": #{cv.getVar($name, "", "-h")},
100
+ "message-s": #{cv.getVar($name, "", "-s")},
101
+ "message-border-l":
102
+ calc(
103
+ #{cv.getVar($name, "", "-l")} + #{cv.getVar(
104
+ "message-border-l-delta"
105
+ )}
106
+ ),
107
+ "message-color-l": #{cv.getVar($name, "", "-on-scheme-l")},
108
+ "message-header-background-l": #{cv.getVar($name, "", "-l")},
109
+ "message-header-color-l": #{cv.getVar($name, "", "-invert-l")},
110
+ )
111
+ );
112
+ }
113
+ }
114
+ }
115
+
116
+ .#{iv.$class-prefix}message-header {
117
+ align-items: center;
118
+ background-color: hsl(
119
+ #{cv.getVar("message-h")},
120
+ #{cv.getVar("message-s")},
121
+ #{cv.getVar("message-header-background-l")}
122
+ );
123
+ border-start-start-radius: cv.getVar("message-header-radius");
124
+ border-start-end-radius: cv.getVar("message-header-radius");
125
+ color: hsl(
126
+ #{cv.getVar("message-h")},
127
+ #{cv.getVar("message-s")},
128
+ #{cv.getVar("message-header-color-l")}
129
+ );
130
+ display: flex;
131
+ font-weight: cv.getVar("message-header-weight");
132
+ justify-content: space-between;
133
+ line-height: 1.25;
134
+ padding: cv.getVar("message-header-padding");
135
+ position: relative;
136
+
137
+ .#{iv.$class-prefix}delete {
138
+ flex-grow: 0;
139
+ flex-shrink: 0;
140
+ margin-inline-start: 0.75em;
141
+ }
142
+
143
+ & + .#{iv.$class-prefix}message-body {
144
+ border-width: cv.getVar("message-header-body-border-width");
145
+ border-start-start-radius: 0;
146
+ border-start-end-radius: 0;
147
+ }
148
+ }
149
+
150
+ .#{iv.$class-prefix}message-body {
151
+ background-color: hsl(
152
+ #{cv.getVar("message-h")},
153
+ #{cv.getVar("message-s")},
154
+ #{cv.getVar("message-background-l")}
155
+ );
156
+ border-inline-start-color: hsl(
157
+ #{cv.getVar("message-h")},
158
+ #{cv.getVar("message-s")},
159
+ #{cv.getVar("message-border-l")}
160
+ );
161
+ border-inline-start-style: #{cv.getVar("message-border-style")};
162
+ border-inline-start-width: #{cv.getVar("message-border-width")};
163
+ border-radius: cv.getVar("message-body-radius");
164
+ padding: cv.getVar("message-body-padding");
165
+
166
+ code,
167
+ pre {
168
+ background-color: hsl(
169
+ #{cv.getVar("message-h")},
170
+ #{cv.getVar("message-s")},
171
+ #{cv.getVar("message-header-color-l")}
172
+ );
173
+ color: hsl(
174
+ #{cv.getVar("message-h")},
175
+ #{cv.getVar("message-s")},
176
+ #{cv.getVar("message-header-background-l")}
177
+ );
178
+ }
179
+
180
+ pre code {
181
+ background-color: cv.getVar("message-body-pre-code-background-color");
182
+ }
183
+ }