blue-web 1.6.4 → 1.7.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.
package/dist/style.scss CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Blue Web v1.6.4 (https://bruegmann.github.io/blue-web)
2
+ * Blue Web v1.7.0 (https://bruegmann.github.io/blue-web)
3
3
  * Licensed under GNU General Public License v3.0 (https://github.com/bruegmann/blue-web/blob/master/LICENSE).
4
4
  */
5
5
 
@@ -22,12 +22,9 @@
22
22
 
23
23
  @import "./styles/text-icons";
24
24
  @import "./styles/general";
25
- @import "./styles/router";
26
25
  @import "./styles/status";
27
- @import "./styles/layout";
28
- @import "./styles/grid-layout";
29
26
  @import "./styles/menu-item";
30
- @import "./styles/sidebar";
27
+ @import "./styles/page-header";
31
28
  @import "./styles/search";
32
29
  @import "./styles/action-menu";
33
30
  @import "./styles/caret";
@@ -1,10 +1,3 @@
1
- @include blue-custom-scrollbar(
2
- transparent,
3
- rgba(var(--blue-scrollbar-thumb-color-rgb), 0.5),
4
- rgba(var(--blue-scrollbar-thumb-color-rgb), 0.6),
5
- rgba(var(--blue-scrollbar-thumb-color-rgb), 0.7)
6
- );
7
-
8
1
  * {
9
2
  scrollbar-width: thin;
10
3
  }
@@ -1,3 +1,227 @@
1
+ @keyframes blue-menu-item-indicator-in-from-side {
2
+ from {
3
+ transform: translateX(-100%);
4
+ }
5
+ to {
6
+ transform: translateX(1);
7
+ }
8
+ }
9
+
10
+ @keyframes blue-menu-item-indicator-in-from-below {
11
+ from {
12
+ transform: translateY(100%);
13
+ }
14
+ to {
15
+ transform: translateY(1);
16
+ }
17
+ }
18
+
19
+ .blue-menu-item {
20
+ transition: width 0.5s, background-color 0.3s, color 0.15s, box-shadow 0.3s, opacity 0.3s !important;
21
+
22
+ @media (prefers-reduced-motion) {
23
+ transition: none !important;
24
+ }
25
+
26
+ padding: 0.5rem 0.75rem;
27
+ border: none;
28
+
29
+ &:focus {
30
+ box-shadow: none;
31
+ }
32
+
33
+ &:focus-visible {
34
+ &,
35
+ &.active {
36
+ box-shadow: inset 0 0 0.25rem;
37
+ }
38
+ }
39
+ }
40
+
41
+ .blue-menu-item-icon {
42
+ display: inline-block;
43
+
44
+ & > * {
45
+ display: block;
46
+ width: 1.5rem;
47
+ }
48
+ }
49
+
50
+ .blue-menu-item-icon.iconForActive {
51
+ display: none;
52
+ }
53
+
54
+ .blue-menu-item.active {
55
+ .blue-menu-item-icon.hasIconForActive {
56
+ display: none;
57
+ }
58
+ .blue-menu-item-icon.iconForActive {
59
+ display: inline-block;
60
+ }
61
+ }
62
+
63
+ .blue-menu-item-dropdown {
64
+ margin-left: 1rem;
65
+ animation: blue-menu-item-dropdown 0.15s;
66
+
67
+ @media (prefers-reduced-motion) {
68
+ animation-duration: 0s;
69
+ }
70
+
71
+ position: relative;
72
+
73
+ &::before {
74
+ content: "";
75
+ position: absolute;
76
+ top: 0.125rem;
77
+ right: 0.125rem;
78
+ bottom: 0.125rem;
79
+ left: 0.125rem;
80
+ border-radius: $border-radius;
81
+ box-shadow: $box-shadow;
82
+ border: 1px solid color-mix(in srgb, currentColor 15%, transparent);
83
+ }
84
+ }
85
+
86
+ .blue-sidebar .blue-menu-item-dropdown {
87
+ --blue-sidebar-bg: var(--blue-sidebar-depth-1-bg, #{$sidebar-deep-bg});
88
+
89
+ &::before {
90
+ background-color: var(--blue-sidebar-bg);
91
+ box-shadow: 0 0.5rem 1rem $black;
92
+ opacity: 0.15;
93
+ border-color: currentColor;
94
+ }
95
+
96
+ .blue-menu-item-dropdown {
97
+ --blue-sidebar-bg: var(--blue-sidebar-depth-2-bg, #{darken($sidebar-deep-bg, 4%)});
98
+
99
+ .blue-menu-item-dropdown {
100
+ --blue-sidebar-bg: var(--blue-sidebar-depth-3-bg, #{darken($sidebar-deep-bg, 8%)});
101
+
102
+ .blue-menu-item-dropdown {
103
+ --blue-sidebar-bg: var(--blue-sidebar-depth-4-bg, #{darken($sidebar-deep-bg, 12%)});
104
+
105
+ .blue-menu-item-dropdown {
106
+ --blue-sidebar-bg: var(--blue-sidebar-depth-5-bg, #{darken($sidebar-deep-bg, 16%)});
107
+
108
+ .blue-menu-item-dropdown {
109
+ --blue-sidebar-bg: var(--blue-sidebar-depth-6-bg, #{darken($sidebar-deep-bg, 20%)});
110
+ }
111
+ }
112
+ }
113
+ }
114
+ }
115
+ }
116
+
117
+ .blue-header .blue-menu-item-dropdown {
118
+ --blue-sidebar-bg: #{$header-deep-bg};
119
+
120
+ &::before {
121
+ background-color: var(--blue-header-bg);
122
+ }
123
+
124
+ .blue-menu-item-dropdown {
125
+ --blue-sidebar-bg: #{darken($header-deep-bg, 4%)};
126
+
127
+ .blue-menu-item-dropdown {
128
+ --blue-sidebar-bg: #{darken($header-deep-bg, 8%)};
129
+
130
+ .blue-menu-item-dropdown {
131
+ --blue-sidebar-bg: #{darken($header-deep-bg, 12%)};
132
+
133
+ .blue-menu-item-dropdown {
134
+ --blue-sidebar-bg: #{darken($header-deep-bg, 16%)};
135
+
136
+ .blue-menu-item-dropdown {
137
+ --blue-sidebar-bg: #{darken($header-deep-bg, 20%)};
138
+ }
139
+ }
140
+ }
141
+ }
142
+ }
143
+ }
144
+
145
+ .blue-menu-item-dropdown-caret.blue-caret {
146
+ display: none;
147
+ position: absolute;
148
+ right: 1.5rem;
149
+ top: 50%;
150
+ transform: translateY(-50%);
151
+ align-items: center;
152
+ }
153
+
154
+ .blue-menu-item {
155
+ color: inherit;
156
+ width: auto;
157
+ height: $normal-size;
158
+ padding: 0.25rem 0.75rem;
159
+ font-size: $bla-btn-font-size;
160
+ display: flex;
161
+ align-items: center;
162
+ border-color: transparent;
163
+ @include slide-transition();
164
+
165
+ &::before {
166
+ content: "";
167
+ position: absolute;
168
+ top: 0.25rem;
169
+ right: 0.25rem;
170
+ bottom: 0.25rem;
171
+ left: 0.25rem;
172
+ background-color: currentColor;
173
+ border-radius: $border-radius;
174
+ transform: scale(0.9);
175
+ opacity: 0;
176
+ transition: all 0.2s;
177
+
178
+ @media (prefers-reduced-motion) {
179
+ transition: none;
180
+ }
181
+ }
182
+
183
+ &[draggable] {
184
+ cursor: move;
185
+
186
+ &:active {
187
+ box-shadow: inset 0 0 0.25rem;
188
+ }
189
+ }
190
+
191
+ &:hover,
192
+ &:active,
193
+ &.highlighted {
194
+ color: inherit;
195
+ border-color: transparent;
196
+
197
+ &::before {
198
+ transform: scale(1);
199
+ opacity: 0.25;
200
+ }
201
+ }
202
+
203
+ &.highlighted {
204
+ &::before {
205
+ opacity: 0.16;
206
+ }
207
+ }
208
+
209
+ &:hover,
210
+ &:active {
211
+ &::before {
212
+ opacity: 0.25;
213
+ }
214
+ }
215
+
216
+ &.active::after {
217
+ @include blue-menu-item-indicator();
218
+ }
219
+
220
+ & > * + .blue-menu-item-label {
221
+ margin-left: 0.5rem;
222
+ }
223
+ }
224
+
1
225
  .blue-menu-item-wrapper {
2
226
  display: contents;
3
227
  }
@@ -1,6 +1,5 @@
1
1
  @import "./mixins/misc";
2
2
  @import "./mixins/menu-item";
3
- @import "./mixins/sidebar";
4
3
  @import "./mixins/action-menu";
5
4
  @import "./mixins/switch";
6
5
  @import "./mixins/custom-property";
@@ -0,0 +1,63 @@
1
+ .blue-header {
2
+ @include header-bg();
3
+ color: var(--blue-header-color);
4
+ }
5
+
6
+ .blue-header {
7
+ height: $normal-size;
8
+ position: fixed;
9
+ top: 0;
10
+ left: $normal-size;
11
+ right: 0;
12
+ z-index: 4;
13
+
14
+ @media screen and (min-width: 768px) {
15
+ right: $scrollbar-size;
16
+ }
17
+
18
+ .navbar-nav {
19
+ margin: 0;
20
+
21
+ > li {
22
+ float: left;
23
+
24
+ > a {
25
+ background-color: transparent;
26
+ color: var(--blue-header-color);
27
+ padding: $bla-header-nav-padding;
28
+
29
+ &:hover,
30
+ &:focus {
31
+ background-color: $bla-button-bg-hover;
32
+ }
33
+ }
34
+ }
35
+ }
36
+
37
+ .navbar-left {
38
+ float: left !important;
39
+ }
40
+
41
+ .navbar-right {
42
+ float: right !important;
43
+ }
44
+
45
+ .blue-search {
46
+ width: 16rem;
47
+ }
48
+ }
49
+
50
+ .blue-header-title {
51
+ a {
52
+ color: inherit;
53
+
54
+ &:focus {
55
+ text-decoration: none;
56
+ }
57
+ }
58
+ }
59
+
60
+ .blue-header-title-image {
61
+ width: 2rem;
62
+ height: 2rem;
63
+ }
@@ -15,8 +15,6 @@
15
15
  }
16
16
 
17
17
  .blue-status-alert {
18
- @extend .blue-normal-scrollbar;
19
-
20
18
  &:after {
21
19
  content: "";
22
20
  display: block;
@@ -1,40 +1,3 @@
1
- /**
2
- @deprecated Will be removed in a future version. Please use `blue-custom-scrollbar` instead!
3
- */
4
- @mixin custom-scrollbar($thumb-color, $bg-color, $track-border-radius: 0) {
5
- @include blue-custom-scrollbar(
6
- $bg-color,
7
- rgba($thumb-color, 0.5),
8
- rgba($thumb-color, 0.6),
9
- rgba($thumb-color, 0.7),
10
- $track-border-radius
11
- );
12
- }
13
-
14
- @mixin blue-custom-scrollbar(
15
- $bg-color,
16
- $thumb-color,
17
- $thumb-color-hover: $thumb-color,
18
- $thumb-color-focus: $thumb-color,
19
- $track-border-radius: 0
20
- ) {
21
- ::-webkit-scrollbar-thumb {
22
- background-color: $thumb-color;
23
- box-shadow: inset 1px 1px 0 rgba(white, 0.2), inset 0 -1px 0 rgba(white, 0.17);
24
- }
25
- ::-webkit-scrollbar-thumb:hover {
26
- background-color: $thumb-color-hover;
27
- }
28
- ::-webkit-scrollbar-thumb:active {
29
- background-color: $thumb-color-focus;
30
- }
31
-
32
- ::-webkit-scrollbar-track {
33
- background-color: $bg-color;
34
- border-radius: $track-border-radius;
35
- }
36
- }
37
-
38
1
  @mixin slide-transition() {
39
2
  $slide-transition: width 0.5s;
40
3
  transition: $slide-transition;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blue-web",
3
- "version": "1.6.4",
3
+ "version": "1.7.0",
4
4
  "description": "UI components built on top of Bootstrap 5",
5
5
  "license": "LGPL-3.0-or-later",
6
6
  "homepage": "https://bruegmann.github.io/blue-web/v1",
@@ -51,7 +51,7 @@
51
51
  "@types/react-router-dom": "^5.3.3",
52
52
  "@types/react-syntax-highlighter": "^13.5.0",
53
53
  "autoprefixer": "^10.3.6",
54
- "blue-react": "^9.9.3",
54
+ "blue-react": "file:../blue-react/blue-react-10.0.0.tgz",
55
55
  "gh-pages": "^3.1.0",
56
56
  "license-report": "^6.2.0",
57
57
  "lint-staged": "^11.1.2",