blue-web 1.19.1 → 1.20.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/js/button.bundle.js +1 -0
- package/dist/js/button.d.ts +6 -0
- package/dist/js/button.js +16 -0
- package/dist/js/dialog.bundle.js +1 -1
- package/dist/js/dxf-viewer.js +129 -0
- package/dist/js/shared.js +3 -1
- package/dist/merged.scss +370 -296
- package/dist/style.css +78 -161
- package/dist/style.css.map +1 -1
- package/dist/style.min.css +4 -4
- package/dist/style.scss +7 -1
- package/dist/styles/_anchor.scss +12 -23
- package/dist/styles/_button-icon-wrapper.scss +4 -0
- package/dist/styles/_collapse.scss +8 -3
- package/dist/styles/_inter.scss +2 -7
- package/dist/styles/_menu-item.scss +200 -116
- package/dist/styles/_variables.scss +4 -0
- package/dist/styles/mixins/_menu-item.scss +136 -136
- package/dist/styles/mixins/_misc.scss +0 -13
- package/dist/tailwind-main.css +737 -0
- package/package.json +7 -6
package/dist/style.scss
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Blue Web v1.
|
|
2
|
+
* Blue Web v1.20.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
|
|
|
@@ -53,3 +53,9 @@
|
|
|
53
53
|
|
|
54
54
|
@import "./styles/devexpress";
|
|
55
55
|
@import "./styles/inter";
|
|
56
|
+
|
|
57
|
+
*,
|
|
58
|
+
*:before,
|
|
59
|
+
*:after {
|
|
60
|
+
corner-shape: var(--blue-corner-shape);
|
|
61
|
+
}
|
package/dist/styles/_anchor.scss
CHANGED
|
@@ -1,36 +1,25 @@
|
|
|
1
|
-
.blue-anchor {
|
|
2
|
-
anchor-name: var(--blue-anchor-name, --anchor-1);
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
@position-try --blue-anchored-below {
|
|
6
|
-
top: anchor(var(--blue-anchor-name, --anchor-1) bottom);
|
|
7
|
-
bottom: unset;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
@position-try --blue-anchored-above {
|
|
11
|
-
bottom: anchor(var(--blue-anchor-name, --anchor-1) top);
|
|
12
|
-
top: unset;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
1
|
.blue-anchored {
|
|
16
|
-
|
|
17
|
-
position-
|
|
2
|
+
position-try: flip-inline;
|
|
3
|
+
position-area: bottom span-right;
|
|
4
|
+
position: fixed;
|
|
5
|
+
|
|
6
|
+
// Normalize popover
|
|
7
|
+
&[popover] {
|
|
8
|
+
margin: 0;
|
|
9
|
+
padding: 0;
|
|
10
|
+
border: 0;
|
|
11
|
+
}
|
|
18
12
|
}
|
|
19
13
|
|
|
20
14
|
.blue-anchored-start {
|
|
21
|
-
|
|
15
|
+
position-area: bottom span-right;
|
|
22
16
|
}
|
|
23
17
|
|
|
24
18
|
.blue-anchored-end {
|
|
25
|
-
|
|
26
|
-
translate: -100%;
|
|
19
|
+
position-area: bottom span-left;
|
|
27
20
|
}
|
|
28
21
|
|
|
29
22
|
@supports not (anchor-name: --anchor-1) {
|
|
30
|
-
.blue-anchored-end {
|
|
31
|
-
translate: none;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
23
|
.blue-anchored-fallback {
|
|
35
24
|
left: 50%;
|
|
36
25
|
top: 50%;
|
|
@@ -14,8 +14,7 @@
|
|
|
14
14
|
transition: transform 0.2s;
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
&[open] > summary
|
|
18
|
-
&[open] > summary > .blue-collapse-chevron {
|
|
17
|
+
&[open] > summary .blue-collapse-chevron {
|
|
19
18
|
--blue-collapse-chevron-rotate: 90deg;
|
|
20
19
|
transform: rotate(var(--blue-collapse-chevron-rotate));
|
|
21
20
|
}
|
|
@@ -46,6 +45,12 @@
|
|
|
46
45
|
}
|
|
47
46
|
}
|
|
48
47
|
|
|
48
|
+
.blue-collapse-indent {
|
|
49
|
+
// 0.5em is half of icon width
|
|
50
|
+
--margin-inline-start: calc(#{$input-btn-padding-x} + 0.5em + #{$input-btn-border-width});
|
|
51
|
+
margin-inline-start: var(--margin-inline-start);
|
|
52
|
+
}
|
|
53
|
+
|
|
49
54
|
// Let's you group a collapse together with another UI element like a button that should come before the collapse summary.
|
|
50
55
|
.blue-collapse-group {
|
|
51
56
|
display: grid;
|
|
@@ -60,7 +65,7 @@
|
|
|
60
65
|
grid-column: 2;
|
|
61
66
|
|
|
62
67
|
& + * {
|
|
63
|
-
width: calc(100% +
|
|
68
|
+
width: calc(100% + var(--margin-inline-start) - 3px);
|
|
64
69
|
}
|
|
65
70
|
}
|
|
66
71
|
}
|
package/dist/styles/_inter.scss
CHANGED
|
@@ -1,12 +1,7 @@
|
|
|
1
1
|
:root {
|
|
2
2
|
--bs-font-sans-serif: Inter, #{$font-family-sans-serif};
|
|
3
|
-
font-feature-settings:
|
|
4
|
-
|
|
5
|
-
"calt" 1,
|
|
6
|
-
"cv05" 1,
|
|
7
|
-
"cv07" 1,
|
|
8
|
-
"tnum" 1,
|
|
9
|
-
"zero" 1;
|
|
3
|
+
--blue-font-feature-settings: "liga" 1, "calt" 1, "cv05" 1, "cv07" 1, "tnum" 1, "zero" 1;
|
|
4
|
+
font-feature-settings: var(--blue-font-feature-settings);
|
|
10
5
|
font-size: 14px;
|
|
11
6
|
}
|
|
12
7
|
@supports (font-variation-settings: normal) {
|
|
@@ -1,81 +1,27 @@
|
|
|
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
1
|
.blue-menu-item {
|
|
2
|
+
display: inline-flex;
|
|
3
|
+
align-items: center;
|
|
20
4
|
transition:
|
|
21
5
|
width 0.5s,
|
|
22
6
|
background-color 0.3s,
|
|
23
7
|
color 0.15s,
|
|
24
8
|
box-shadow 0.3s,
|
|
25
9
|
opacity 0.3s !important;
|
|
10
|
+
color: inherit;
|
|
11
|
+
border-color: transparent;
|
|
12
|
+
--bs-btn-active-border-color: transparent;
|
|
13
|
+
--bs-btn-disabled-border-color: transparent;
|
|
26
14
|
|
|
27
15
|
@media (prefers-reduced-motion) {
|
|
28
16
|
transition: none !important;
|
|
29
17
|
}
|
|
30
18
|
|
|
31
|
-
& {
|
|
32
|
-
border: none;
|
|
33
|
-
box-shadow: none;
|
|
34
|
-
background-image: none;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
&:focus {
|
|
38
|
-
box-shadow: none;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
19
|
&:focus-visible {
|
|
42
20
|
&,
|
|
43
21
|
&.active {
|
|
44
22
|
box-shadow: inset 0 0 0 0.25rem color-mix(in srgb, currentColor 15%, transparent);
|
|
45
23
|
}
|
|
46
24
|
}
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
.blue-menu-item-icon {
|
|
50
|
-
display: inline-block;
|
|
51
|
-
|
|
52
|
-
& > * {
|
|
53
|
-
display: block;
|
|
54
|
-
width: 1.5rem;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
.blue-menu-item-icon.iconForActive {
|
|
59
|
-
display: none;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
.blue-menu-item.active {
|
|
63
|
-
.blue-menu-item-icon.hasIconForActive {
|
|
64
|
-
display: none;
|
|
65
|
-
}
|
|
66
|
-
.blue-menu-item-icon.iconForActive {
|
|
67
|
-
display: inline-block;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
.blue-menu-item-dropdown {
|
|
72
|
-
margin-left: 1rem;
|
|
73
|
-
animation: blue-menu-item-dropdown 0.15s;
|
|
74
|
-
position: relative;
|
|
75
|
-
|
|
76
|
-
@media (prefers-reduced-motion) {
|
|
77
|
-
animation-duration: 0s;
|
|
78
|
-
}
|
|
79
25
|
|
|
80
26
|
&::before {
|
|
81
27
|
content: "";
|
|
@@ -84,88 +30,226 @@
|
|
|
84
30
|
right: 0.125rem;
|
|
85
31
|
bottom: 0.125rem;
|
|
86
32
|
left: 0.125rem;
|
|
33
|
+
background-color: currentColor;
|
|
87
34
|
border-radius: $border-radius;
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
&[popover] {
|
|
94
|
-
position: fixed;
|
|
95
|
-
margin: 0;
|
|
96
|
-
padding: 0;
|
|
97
|
-
z-index: 1000;
|
|
98
|
-
border: none;
|
|
99
|
-
background: transparent;
|
|
100
|
-
border-radius: calc(#{$border-radius} + 0.1rem);
|
|
101
|
-
box-shadow: $box-shadow;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
.blue-menu-item {
|
|
106
|
-
color: inherit;
|
|
107
|
-
width: auto;
|
|
108
|
-
height: $normal-size;
|
|
109
|
-
font-size: $bla-btn-font-size;
|
|
110
|
-
display: flex;
|
|
111
|
-
align-items: center;
|
|
112
|
-
border-color: transparent;
|
|
113
|
-
--bs-btn-padding-x: 0.437rem;
|
|
114
|
-
@include slide-transition();
|
|
35
|
+
transform: scale(0.9);
|
|
36
|
+
opacity: 0;
|
|
37
|
+
transition: all 0.2s;
|
|
115
38
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
&[draggable] {
|
|
121
|
-
cursor: grab;
|
|
122
|
-
|
|
123
|
-
&:active {
|
|
124
|
-
box-shadow: inset 0 0 0.25rem;
|
|
39
|
+
@media (prefers-reduced-motion) {
|
|
40
|
+
transition: none;
|
|
125
41
|
}
|
|
126
42
|
}
|
|
127
43
|
|
|
128
44
|
&:hover,
|
|
129
45
|
&:active,
|
|
130
|
-
&.
|
|
46
|
+
&.active,
|
|
131
47
|
&:has(+ :popover-open) {
|
|
132
|
-
color: inherit;
|
|
133
|
-
border-color: transparent;
|
|
134
|
-
|
|
135
48
|
&::before {
|
|
136
49
|
transform: scale(1);
|
|
137
50
|
opacity: 0.25;
|
|
138
51
|
}
|
|
139
52
|
}
|
|
140
53
|
|
|
141
|
-
&.
|
|
54
|
+
&.active,
|
|
142
55
|
&:has(+ :popover-open) {
|
|
143
56
|
&::before {
|
|
144
57
|
opacity: 0.16;
|
|
145
58
|
}
|
|
146
59
|
}
|
|
147
60
|
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
&::
|
|
151
|
-
|
|
61
|
+
&.current {
|
|
62
|
+
position: relative;
|
|
63
|
+
&::after {
|
|
64
|
+
@include blue-menu-item-indicator();
|
|
152
65
|
}
|
|
153
66
|
}
|
|
67
|
+
}
|
|
154
68
|
|
|
155
|
-
|
|
156
|
-
|
|
69
|
+
.blue-horizontal {
|
|
70
|
+
.blue-menu-item.current::after {
|
|
71
|
+
@include blue-menu-item-indicator-horizontal();
|
|
157
72
|
}
|
|
73
|
+
}
|
|
158
74
|
|
|
159
|
-
|
|
160
|
-
|
|
75
|
+
.blue-menu-item-current-hidden {
|
|
76
|
+
&:is(:where(.blue-menu-item):is(.current) *) {
|
|
77
|
+
display: none !important;
|
|
161
78
|
}
|
|
162
79
|
}
|
|
163
|
-
|
|
164
|
-
.blue-menu-item
|
|
165
|
-
|
|
80
|
+
.blue-menu-item-default-hidden {
|
|
81
|
+
&:is(:where(.blue-menu-item):is(:not(.current)) *) {
|
|
82
|
+
display: none !important;
|
|
83
|
+
}
|
|
166
84
|
}
|
|
167
85
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
}
|
|
86
|
+
// @keyframes blue-menu-item-indicator-in-from-side {
|
|
87
|
+
// from {
|
|
88
|
+
// transform: translateX(-100%);
|
|
89
|
+
// }
|
|
90
|
+
// to {
|
|
91
|
+
// transform: translateX(1);
|
|
92
|
+
// }
|
|
93
|
+
// }
|
|
94
|
+
|
|
95
|
+
// @keyframes blue-menu-item-indicator-in-from-below {
|
|
96
|
+
// from {
|
|
97
|
+
// transform: translateY(100%);
|
|
98
|
+
// }
|
|
99
|
+
// to {
|
|
100
|
+
// transform: translateY(1);
|
|
101
|
+
// }
|
|
102
|
+
// }
|
|
103
|
+
|
|
104
|
+
// .blue-menu-item {
|
|
105
|
+
// transition:
|
|
106
|
+
// width 0.5s,
|
|
107
|
+
// background-color 0.3s,
|
|
108
|
+
// color 0.15s,
|
|
109
|
+
// box-shadow 0.3s,
|
|
110
|
+
// opacity 0.3s !important;
|
|
111
|
+
|
|
112
|
+
// @media (prefers-reduced-motion) {
|
|
113
|
+
// transition: none !important;
|
|
114
|
+
// }
|
|
115
|
+
|
|
116
|
+
// & {
|
|
117
|
+
// border: none;
|
|
118
|
+
// box-shadow: none;
|
|
119
|
+
// background-image: none;
|
|
120
|
+
// }
|
|
121
|
+
|
|
122
|
+
// &:focus {
|
|
123
|
+
// box-shadow: none;
|
|
124
|
+
// }
|
|
125
|
+
|
|
126
|
+
// &:focus-visible {
|
|
127
|
+
// &,
|
|
128
|
+
// &.active {
|
|
129
|
+
// box-shadow: inset 0 0 0 0.25rem color-mix(in srgb, currentColor 15%, transparent);
|
|
130
|
+
// }
|
|
131
|
+
// }
|
|
132
|
+
// }
|
|
133
|
+
|
|
134
|
+
// .blue-menu-item-icon {
|
|
135
|
+
// display: inline-block;
|
|
136
|
+
|
|
137
|
+
// & > * {
|
|
138
|
+
// display: block;
|
|
139
|
+
// width: 1.5rem;
|
|
140
|
+
// }
|
|
141
|
+
// }
|
|
142
|
+
|
|
143
|
+
// .blue-menu-item-icon.iconForActive {
|
|
144
|
+
// display: none;
|
|
145
|
+
// }
|
|
146
|
+
|
|
147
|
+
// .blue-menu-item.active {
|
|
148
|
+
// .blue-menu-item-icon.hasIconForActive {
|
|
149
|
+
// display: none;
|
|
150
|
+
// }
|
|
151
|
+
// .blue-menu-item-icon.iconForActive {
|
|
152
|
+
// display: inline-block;
|
|
153
|
+
// }
|
|
154
|
+
// }
|
|
155
|
+
|
|
156
|
+
// .blue-menu-item-dropdown {
|
|
157
|
+
// margin-left: 1rem;
|
|
158
|
+
// animation: blue-menu-item-dropdown 0.15s;
|
|
159
|
+
// position: relative;
|
|
160
|
+
|
|
161
|
+
// @media (prefers-reduced-motion) {
|
|
162
|
+
// animation-duration: 0s;
|
|
163
|
+
// }
|
|
164
|
+
|
|
165
|
+
// &::before {
|
|
166
|
+
// content: "";
|
|
167
|
+
// position: absolute;
|
|
168
|
+
// top: 0.125rem;
|
|
169
|
+
// right: 0.125rem;
|
|
170
|
+
// bottom: 0.125rem;
|
|
171
|
+
// left: 0.125rem;
|
|
172
|
+
// border-radius: $border-radius;
|
|
173
|
+
// box-shadow: $box-shadow;
|
|
174
|
+
// border: 1px solid color-mix(in srgb, currentColor 15%, transparent);
|
|
175
|
+
// background-color: var(--blue-menu-item-dropdown-bg);
|
|
176
|
+
// }
|
|
177
|
+
|
|
178
|
+
// &[popover] {
|
|
179
|
+
// position: fixed;
|
|
180
|
+
// margin: 0;
|
|
181
|
+
// padding: 0;
|
|
182
|
+
// z-index: 1000;
|
|
183
|
+
// border: none;
|
|
184
|
+
// background: transparent;
|
|
185
|
+
// border-radius: calc(#{$border-radius} + 0.1rem);
|
|
186
|
+
// box-shadow: $box-shadow;
|
|
187
|
+
// }
|
|
188
|
+
// }
|
|
189
|
+
|
|
190
|
+
// .blue-menu-item {
|
|
191
|
+
// color: inherit;
|
|
192
|
+
// width: auto;
|
|
193
|
+
// height: $normal-size;
|
|
194
|
+
// font-size: $bla-btn-font-size;
|
|
195
|
+
// display: flex;
|
|
196
|
+
// align-items: center;
|
|
197
|
+
// border-color: transparent;
|
|
198
|
+
// --bs-btn-padding-x: 0.437rem;
|
|
199
|
+
|
|
200
|
+
// &::before {
|
|
201
|
+
// @include blue-menu-item-background();
|
|
202
|
+
// }
|
|
203
|
+
|
|
204
|
+
// &[draggable] {
|
|
205
|
+
// cursor: grab;
|
|
206
|
+
|
|
207
|
+
// &:active {
|
|
208
|
+
// box-shadow: inset 0 0 0.25rem;
|
|
209
|
+
// }
|
|
210
|
+
// }
|
|
211
|
+
|
|
212
|
+
// &:hover,
|
|
213
|
+
// &:active,
|
|
214
|
+
// &.highlighted,
|
|
215
|
+
// &:has(+ :popover-open) {
|
|
216
|
+
// color: inherit;
|
|
217
|
+
// border-color: transparent;
|
|
218
|
+
|
|
219
|
+
// &::before {
|
|
220
|
+
// transform: scale(1);
|
|
221
|
+
// opacity: 0.25;
|
|
222
|
+
// }
|
|
223
|
+
// }
|
|
224
|
+
|
|
225
|
+
// &.highlighted,
|
|
226
|
+
// &:has(+ :popover-open) {
|
|
227
|
+
// &::before {
|
|
228
|
+
// opacity: 0.16;
|
|
229
|
+
// }
|
|
230
|
+
// }
|
|
231
|
+
|
|
232
|
+
// &:hover,
|
|
233
|
+
// &:active {
|
|
234
|
+
// &::before {
|
|
235
|
+
// opacity: 0.25;
|
|
236
|
+
// }
|
|
237
|
+
// }
|
|
238
|
+
|
|
239
|
+
// &.active::after {
|
|
240
|
+
// @include blue-menu-item-indicator();
|
|
241
|
+
// }
|
|
242
|
+
|
|
243
|
+
// & > * + .blue-menu-item-label {
|
|
244
|
+
// margin-left: 0.5rem;
|
|
245
|
+
// }
|
|
246
|
+
// }
|
|
247
|
+
|
|
248
|
+
// .blue-menu-item-wrapper {
|
|
249
|
+
// display: contents;
|
|
250
|
+
// }
|
|
251
|
+
|
|
252
|
+
// .blue-menu-item-dropdown > .blue-menu-item-wrapper > .blue-menu-item,
|
|
253
|
+
// .blue-menu-item-dropdown > .blue-menu-item {
|
|
254
|
+
// width: 100%;
|
|
255
|
+
// }
|
|
@@ -90,6 +90,8 @@ $sidebar-shrink-breakpoint: 600px !default;
|
|
|
90
90
|
// Breakpoint for sidebar fully expanded
|
|
91
91
|
$sidebar-expanded-breakpoint: 1400px !default;
|
|
92
92
|
|
|
93
|
+
$corner-shape: #{round} !default;
|
|
94
|
+
|
|
93
95
|
:root {
|
|
94
96
|
--blue-app-bg: #{$app-bg};
|
|
95
97
|
|
|
@@ -107,6 +109,8 @@ $sidebar-expanded-breakpoint: 1400px !default;
|
|
|
107
109
|
--blue-action-link-bg-color: var(--blue-theme);
|
|
108
110
|
--blue-menu-item-indicator-bg: #{$sidebar-indicator-color};
|
|
109
111
|
--blue-menu-item-height: #{$normal-size};
|
|
112
|
+
|
|
113
|
+
--blue-corner-shape: #{$corner-shape};
|
|
110
114
|
}
|
|
111
115
|
|
|
112
116
|
@include color-mode(dark, true) {
|