@wwtdev/bsds-css 1.6.5 → 1.8.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 (51) hide show
  1. package/dist/components/_accordions.scss +3 -3
  2. package/dist/components/_badge.scss +13 -11
  3. package/dist/components/_banner.scss +2 -10
  4. package/dist/components/_buttons.scss +11 -5
  5. package/dist/components/_circle-buttons.scss +6 -6
  6. package/dist/components/_dropdown-options.scss +119 -0
  7. package/dist/components/_dropdown.scss +29 -154
  8. package/dist/components/_form-booleans.scss +8 -8
  9. package/dist/components/_form-character-count.scss +2 -2
  10. package/dist/components/_form-elements.scss +4 -4
  11. package/dist/components/_form-hints.scss +3 -2
  12. package/dist/components/_form-input-composite.scss +1 -1
  13. package/dist/components/_form-labels.scss +2 -2
  14. package/dist/components/_form-switches.scss +6 -6
  15. package/dist/components/_form-text-fields.scss +12 -10
  16. package/dist/components/_loader.scss +89 -0
  17. package/dist/components/_modal.scss +36 -0
  18. package/dist/components/_overlay.scss +22 -0
  19. package/dist/components/_pills.scss +9 -11
  20. package/dist/components/_profile-layout.scss +1 -5
  21. package/dist/components/_tables.scss +1 -1
  22. package/dist/components/_toast.scss +19 -25
  23. package/dist/components/_tooltip.scss +2 -2
  24. package/dist/components/accordions.css +3 -3
  25. package/dist/components/badge.css +12 -10
  26. package/dist/components/banner.css +2 -10
  27. package/dist/components/buttons.css +11 -5
  28. package/dist/components/circle-buttons.css +6 -6
  29. package/dist/components/dropdown-options.css +115 -0
  30. package/dist/components/dropdown.css +29 -154
  31. package/dist/components/form-booleans.css +8 -8
  32. package/dist/components/form-character-count.css +2 -2
  33. package/dist/components/form-elements.css +4 -4
  34. package/dist/components/form-hints.css +3 -2
  35. package/dist/components/form-input-composite.css +1 -1
  36. package/dist/components/form-labels.css +2 -2
  37. package/dist/components/form-switches.css +6 -6
  38. package/dist/components/form-text-fields.css +12 -10
  39. package/dist/components/loader.css +85 -0
  40. package/dist/components/modal.css +32 -0
  41. package/dist/components/overlay.css +18 -0
  42. package/dist/components/pills.css +9 -11
  43. package/dist/components/profile-layout.css +1 -5
  44. package/dist/components/tables.css +1 -1
  45. package/dist/components/toast.css +19 -25
  46. package/dist/components/tooltip.css +2 -2
  47. package/dist/wwt-bsds-preset.js +5 -2
  48. package/dist/wwt-bsds-wc-base.css +110 -15
  49. package/dist/wwt-bsds.css +408 -201
  50. package/dist/wwt-bsds.min.css +1 -1
  51. package/package.json +1 -1
@@ -0,0 +1,18 @@
1
+ .bs-overlay {
2
+ backdrop-filter: blur(4px);
3
+ background: rgba(29, 30, 72, 0.05);
4
+ bottom: 0;
5
+ left: 0;
6
+ opacity: 0;
7
+ position: fixed;
8
+ right: 0;
9
+ top: 0;
10
+ transition-duration: 75ms;
11
+ transition-property: opacity;
12
+ transition-timing-function: ease-in-out;
13
+ z-index: 9998;
14
+ }
15
+
16
+ .bs-overlay:where([data-shown]) {
17
+ opacity: 1;
18
+ }
@@ -1,7 +1,7 @@
1
1
  .bs-pill {
2
- --pill-background: var(--bs-bg-subtle);
2
+ --pill-background: var(--bs-bg-medium);
3
3
  --pill-border: transparent;
4
- --pill-text: var(--bs-royal-400);
4
+ --pill-text: var(--bs-royal-base);
5
5
  --pill-gap: var(--bs-space-2);
6
6
 
7
7
  align-items: center;
@@ -18,9 +18,7 @@
18
18
  text-decoration: none;
19
19
  vertical-align: middle;
20
20
  }
21
- :where(.dark) .bs-pill {
22
- --pill-text: var(--bs-royal-100);
23
- }
21
+
24
22
  :where(.bs-pill > svg) {
25
23
  height: 1rem;
26
24
  }
@@ -46,7 +44,7 @@
46
44
  --pill-background: var(--bs-bg-base);
47
45
  }
48
46
  :where(.box[data-invert]) .bs-pill {
49
- --pill-background: var(--bs-bg-invert-subtle);
47
+ --pill-background: var(--bs-bg-invert-base-subtle);
50
48
  --pill-text: var(--bs-gray-100);
51
49
  }
52
50
  :where(.box[data-invert]) :is(a, button).bs-pill:is(:hover, :focus) {
@@ -61,7 +59,7 @@
61
59
 
62
60
  /* ------------------------------ Status Styles ------------------------------ */
63
61
  .bs-pill:where([data-status]) {
64
- --status-color: var(--bs-blue-400);
62
+ --status-color: var(--bs-blue-base);
65
63
  }
66
64
  .bs-pill:where([data-status])::before {
67
65
  background-color: var(--status-color);
@@ -73,7 +71,7 @@
73
71
 
74
72
  /* ----- Status Colors ----- */
75
73
  .bs-pill:where([data-status^="active"]) {
76
- --status-color: var(--bs-blue-400);
74
+ --status-color: var(--bs-blue-base);
77
75
  }
78
76
  .bs-pill:where([data-status^="complete"]) {
79
77
  --status-color: var(--bs-purple-400);
@@ -135,7 +133,7 @@
135
133
 
136
134
  /* ----- Filter Active Styles ----- */
137
135
  .bs-pill:where([data-variant^="filter"][data-active]) {
138
- --pill-background: var(--bs-blue-400);
136
+ --pill-background: var(--bs-blue-base);
139
137
  --pill-border: transparent;
140
138
  --pill-text: var(--bs-white);
141
139
  }
@@ -177,8 +175,8 @@
177
175
  /* ----- Disabled Styles ----- */
178
176
  .bs-pill:is(:disabled, [aria-disabled="true"]) {
179
177
  pointer-events: none;
180
- color: var(--bs-gray-400);
181
- background-color: var(--bs-gray-200);
178
+ color: var(--bs-ink-disabled);
179
+ background-color: var(--bs-bg-disabled);
182
180
  }
183
181
 
184
182
  .bs-pill:where([data-variant^="filter"]):not([data-active]):is(:disabled, [aria-disabled="true"]) {
@@ -17,13 +17,9 @@ a.bs-profile:where([data-layout]) {
17
17
  }
18
18
 
19
19
  a.bs-profile:where([data-layout]) .bs-profile-details > *:first-child {
20
- --profile-name-color: var(--bs-blue-500);
20
+ --profile-name-color: var(--bs-ink-blue);
21
21
  }
22
22
 
23
23
  a.bs-profile:where([data-layout]):hover .bs-profile-details > *:first-child {
24
24
  text-decoration: underline;
25
25
  }
26
-
27
- .dark a.bs-profile:where([data-layout]) .bs-profile-details > *:first-child {
28
- --profile-name-color: var(--bs-blue-200);
29
- }
@@ -39,7 +39,7 @@ table[data-borders^="all"] th {
39
39
 
40
40
  /* Table Rows */
41
41
  table:where([data-rows^="striped"]) tbody > tr:nth-child(even) {
42
- background-color: var(--bs-bg-subtle);
42
+ background-color: var(--bs-bg-medium);
43
43
  }
44
44
 
45
45
  /* Table Cells */
@@ -1,7 +1,7 @@
1
1
  /* Base Toast Styles */
2
2
  .bs-toast {
3
- background-color: var(--bs-white);
4
- border-top: 4px solid var(--bs-blue-400);
3
+ background-color: var(--bs-bg-base-elevated);
4
+ border-top: 4px solid var(--bs-blue-base);
5
5
  bottom: 1.5rem;
6
6
  box-shadow: var(--bs-shadow-contentMedium);
7
7
  left: 0;
@@ -47,11 +47,6 @@
47
47
  }
48
48
  }
49
49
 
50
- /* Dark mode toast */
51
- :where(.dark) .bs-toast {
52
- background-color: var(--bs-navy-400);
53
- }
54
-
55
50
  .bs-toast:where([data-shown]) {
56
51
  /* Small delay on load to alow for HTML element to exist */
57
52
  animation-delay: 10ms;
@@ -62,50 +57,52 @@
62
57
  }
63
58
 
64
59
  .bs-toast:where([data-dismissed]) {
65
- animation-duration: 200ms;
60
+ animation-duration: 200ms;
66
61
  animation-fill-mode: forwards;
67
62
  animation-name: slideDown;
68
63
  animation-timing-function: ease;
69
64
  }
70
65
 
71
- .bs-toast :where(.bs-toast-header) {
66
+ .bs-toast-header {
72
67
  align-items: center;
73
68
  color: var(--bs-ink-base);
74
69
  display: flex;
75
70
  gap: 0.5rem;
76
- padding-left: 1rem;
77
- padding-right: 1rem;
78
- padding-top: 1rem;
71
+ padding: 1rem;
79
72
  }
80
73
 
81
- .bs-toast :where(.bs-toast-header .bs-toast-header-icon) {
82
- color: var(--bs-blue-400);
74
+ .bs-toast-header :where(.bs-toast-header-icon) {
75
+ color: var(--bs-blue-base);
83
76
  }
84
77
 
85
- .bs-toast :where(h5) {
78
+ .bs-toast-header :where(h5) {
86
79
  font-weight: 400;
87
80
  }
88
81
 
89
- .bs-toast :where(.bs-toast-content) {
82
+ .bs-toast-body {
90
83
  border-bottom: 1px solid var(--bs-border);
91
84
  color: var(--bs-ink-light);
92
85
  padding-bottom: 1rem;
93
86
  padding-left: 1rem;
94
87
  padding-right: 1rem;
95
- padding-top: 0.25rem;
96
88
  }
97
89
 
98
- .bs-toast :where(.bs-toast-actions) {
90
+ .bs-toast-actions {
99
91
  /* Mobile - Buttons will be stacked */
100
92
  display: flex;
101
- flex-direction: column-reverse;
93
+ flex-direction: row;
102
94
  gap: 1rem;
95
+ justify-content: flex-end;
103
96
  padding-bottom: 0.5rem;
104
97
  padding-left: 1rem;
105
98
  padding-right: 1rem;
106
99
  padding-top: 0.5rem;
107
100
  }
108
101
 
102
+ .bs-toast-actions:where([data-stacked]) {
103
+ flex-direction: column-reverse;
104
+ }
105
+
109
106
  /* Warning Toast Styles */
110
107
  .bs-toast:where([data-variant^='warning']) {
111
108
  border-top: 4px solid var(--bs-orange-warning);
@@ -162,7 +159,7 @@
162
159
  }
163
160
 
164
161
  .bs-toast:where([data-dismissed]) {
165
- animation-duration: 200ms;
162
+ animation-duration: 200ms;
166
163
  animation-fill-mode: forwards;
167
164
  animation-name: slideRight;
168
165
  animation-timing-function: ease;
@@ -179,7 +176,7 @@
179
176
  transform: translateX(calc(100% + 1.5rem));
180
177
  }
181
178
  }
182
-
179
+
183
180
  @keyframes slideLeft {
184
181
  0% {
185
182
  opacity: 0;
@@ -191,10 +188,7 @@
191
188
  }
192
189
  }
193
190
 
194
- .bs-toast :where(.bs-toast-actions) {
195
- /* Non-mobile - Buttons will be side-by-side */
191
+ .bs-toast-actions:where([data-stacked]) {
196
192
  flex-direction: row;
197
- justify-content: flex-end;
198
193
  }
199
-
200
194
  }
@@ -6,10 +6,10 @@
6
6
 
7
7
  .bs-tooltip :where(.bs-tooltip-text) {
8
8
  align-items: center;
9
- background-color: var(--bs-bg-base);
9
+ background-color: var(--bs-bg-base-elevated);
10
10
  border-radius: 4px;
11
11
  box-shadow: var(--bs-shadow-contentLowCenter);
12
- color: var(--bs-violet-400);
12
+ color: var(--bs-violet-base);
13
13
  display: flex;
14
14
  font-size: var(--bs-text-sm);
15
15
  justify-content: center;
@@ -56,7 +56,8 @@ module.exports = {
56
56
  200: "#8D8EA1",
57
57
  300: "#555775",
58
58
  400: "#1D1E48",
59
- 500: "#131431"
59
+ 500: "#131431",
60
+ 600: "#070822"
60
61
  },
61
62
  orange: {
62
63
  10: "rgba(250, 70, 22, 0.1)",
@@ -64,7 +65,8 @@ module.exports = {
64
65
  200: "#FDA58D",
65
66
  300: "#FC7755",
66
67
  400: "#FA4616",
67
- warning: "#EA6712"
68
+ 500: "#EA6712",
69
+ warning: "#EA6712" // leaving here for compatibility
68
70
  },
69
71
  pink: {
70
72
  100: "#F6CBE0",
@@ -81,6 +83,7 @@ module.exports = {
81
83
  400: "#8212C4"
82
84
  },
83
85
  gray: {
86
+ 50: "#F7F7FC",
84
87
  100: "#F0F0FA",
85
88
  200: "#C9CAD9",
86
89
  300: "#A3A4B7",
@@ -37,11 +37,13 @@
37
37
  --bs-navy-300: #555775;
38
38
  --bs-navy-400: #1d1e48;
39
39
  --bs-navy-500: #131431;
40
+ --bs-navy-600: #070822;
40
41
  --bs-orange-10: rgba(250, 70, 22, 0.1);
41
42
  --bs-orange-100: #fed1c5;
42
43
  --bs-orange-200: #fda58d;
43
44
  --bs-orange-300: #fc7755;
44
45
  --bs-orange-400: #fa4616;
46
+ --bs-orange-500: #ea6712;
45
47
  --bs-orange-warning: #ea6712;
46
48
  --bs-pink-100: #f6cbe0;
47
49
  --bs-pink-200: #eb7eaf;
@@ -53,6 +55,7 @@
53
55
  --bs-purple-200: #bf8adf;
54
56
  --bs-purple-300: #a154d0;
55
57
  --bs-purple-400: #8212c4;
58
+ --bs-gray-50: #f7f7fc;
56
59
  --bs-gray-100: #f0f0fa;
57
60
  --bs-gray-200: #c9cad9;
58
61
  --bs-gray-300: #a3a4b7;
@@ -279,15 +282,71 @@ button {
279
282
  :root,
280
283
  :host {
281
284
  --bs-bg-base: var(--bs-white);
282
- --bs-bg-subtle: var(--bs-gray-100);
283
- --bs-bg-invert: var(--bs-navy-500);
284
- --bs-bg-invert-subtle: var(--bs-navy-400);
285
+ --bs-bg-base-elevated: var(--bs-white);
286
+ --bs-bg-light: var(--bs-gray-50);
287
+ --bs-bg-medium: var(--bs-gray-100);
288
+ --bs-bg-invert-base: var(--bs-navy-500);
289
+ --bs-bg-invert-medium: var(--bs-navy-400);
290
+ --bs-bg-disabled: var(--bs-gray-200);
291
+
285
292
  --bs-ink-base: var(--bs-black);
286
293
  --bs-ink-medium: var(--bs-gray-500);
287
294
  --bs-ink-light: var(--bs-gray-400);
288
295
  --bs-ink-accent: var(--bs-plum-400);
289
- --bs-ink-invert: var(--bs-white);
290
- --bs-border: var(--bs-gray-200);
296
+ --bs-ink-invert: var(--bs-gray-100);
297
+ --bs-ink-invert-medium: var(--bs-gray-200);
298
+ --bs-ink-blue: var(--bs-blue-500);
299
+ --bs-ink-red: var(--bs-red-500);
300
+ --bs-ink-pink: var(--bs-pink-500);
301
+ --bs-ink-orange: var(--bs-orange-500);
302
+ --bs-hyperlink: var(--bs-purple-400);
303
+ --bs-ink-disabled: var(--bs-gray-400);
304
+
305
+ --bs-blue-base: var(--bs-blue-400);
306
+ --bs-blue-medium: var(--bs-blue-300);
307
+ --bs-blue-light: var(--bs-blue-200);
308
+ --bs-blue-lightest: var(--bs-blue-100);
309
+ --bs-plum-base: var(--bs-plum-400);
310
+ --bs-plum-medium: var(--bs-plum-300);
311
+ --bs-plum-light: var(--bs-plum-200);
312
+ --bs-plum-lightest: var(--bs-plum-100);
313
+ --bs-red-base: var(--bs-red-400);
314
+ --bs-red-medium: var(--bs-red-300);
315
+ --bs-red-light: var(--bs-red-200);
316
+ --bs-red-lightest: var(--bs-red-100);
317
+ --bs-royal-base: var(--bs-royal-400);
318
+ --bs-royal-medium: var(--bs-royal-300);
319
+ --bs-royal-light: var(--bs-royal-200);
320
+ --bs-royal-lightest: var(--bs-royal-100);
321
+ --bs-navy-base: var(--bs-navy-400);
322
+ --bs-navy-medium: var(--bs-navy-300);
323
+ --bs-navy-light: var(--bs-navy-200);
324
+ --bs-navy-lightest: var(--bs-navy-100);
325
+ --bs-pink-base: var(--bs-pink-400);
326
+ --bs-pink-medium: var(--bs-pink-300);
327
+ --bs-pink-light: var(--bs-pink-200);
328
+ --bs-pink-lightest: var(--bs-pink-100);
329
+ --bs-violet-base: var(--bs-violet-400);
330
+ --bs-violet-medium: var(--bs-violet-300);
331
+ --bs-violet-light: var(--bs-violet-200);
332
+ --bs-violet-lightest: var(--bs-violet-100);
333
+ --bs-orange-base: var(--bs-orange-400);
334
+ --bs-orange-medium: var(--bs-orange-300);
335
+ --bs-orange-light: var(--bs-orange-200);
336
+ --bs-orange-lightest: var(--bs-orange-100);
337
+ --bs-purple-base: var(--bs-purple-400);
338
+ --bs-purple-medium: var(--bs-purple-300);
339
+ --bs-purple-light: var(--bs-purple-200);
340
+ --bs-purple-lightest: var(--bs-purple-100);
341
+ --bs-gray-dark: var(--bs-gray-500);
342
+ --bs-gray-base: var(--bs-gray-400);
343
+ --bs-gray-medium: var(--bs-gray-300);
344
+ --bs-gray-light: var(--bs-gray-200);
345
+ --bs-gray-lightest: var(--bs-gray-100);
346
+
347
+ --bs-border-dark: var(--bs-gray-400);
348
+ --bs-border-base: var(--bs-gray-200);
349
+ --bs-border-light: var(--bs-gray-100);
291
350
 
292
351
  /* Spacing */
293
352
  --bs-content-top: 4rem;
@@ -296,20 +355,50 @@ button {
296
355
  /* Type */
297
356
  --bs-font-normal: 400;
298
357
  --bs-font-bold: 600;
358
+
359
+ /* deprecate / phase out.. */
360
+ --bs-bg-subtle: var(--bs-gray-100);
361
+ --bs-bg-invert: var(--bs-navy-500);
362
+ --bs-bg-invert-subtle: var(--bs-navy-400);
363
+ --bs-border: var(--bs-gray-200);
299
364
  }
300
365
 
301
366
  .dark,
302
367
  .dark :where(:host) {
303
- --bs-bg-base: var(--bs-navy-500);
304
- --bs-bg-subtle: #2F2F51;
305
- --bs-bg-invert: var(--bs-white);
306
- --bs-bg-invert-subtle: var(--bs-gray-100);
307
- --bs-ink-base: var(--bs-white);
308
- --bs-ink-medium: var(--bs-gray-100);
309
- --bs-ink-light: var(--bs-gray-200);
310
- --bs-ink-accent: var(--bs-plum-100);
368
+ --bs-bg-base: var(--bs-navy-600);
369
+ --bs-bg-base-elevated: var(--bs-navy-500);
370
+ --bs-bg-light: var(--bs-navy-500);
371
+ --bs-bg-medium: var(--bs-navy-400);
372
+ --bs-bg-invert-base: var(--bs-gray-100);
373
+ --bs-bg-invert-medium: var(--bs-gray-50);
374
+ --bs-bg-disabled: var(--bs-gray-500);
375
+
376
+ --bs-ink-base: var(--bs-gray-100);
377
+ --bs-ink-medium: var(--bs-gray-200);
378
+ --bs-ink-light: var(--bs-gray-300);
379
+ --bs-ink-accent: var(--bs-gray-100);
311
380
  --bs-ink-invert: var(--bs-black);
312
- --bs-border: var(--bs-gray-400);
381
+ --bs-ink-invert-medium: var(--bs-gray-500);
382
+ --bs-ink-blue: var(--bs-blue-200);
383
+ --bs-ink-red: var(--bs-red-100);
384
+ --bs-ink-pink: var(--bs-pink-200);
385
+ --bs-hyperlink: var(--bs-purple-200);
386
+ --bs-ink-disabled: var(--bs-gray-300);
387
+
388
+ --bs-navy-base: var(--bs-navy-200);
389
+ --bs-plum-base: var(--bs-plum-100);
390
+ --bs-purple-base: var(--bs-purple-200);
391
+ --bs-royal-base: var(--bs-royal-200);
392
+ --bs-violet-base: var(--bs-violet-200);
393
+ --bs-gray-dark: var(--bs-gray-100);
394
+ --bs-gray-base: var(--bs-gray-200);
395
+ --bs-gray-light: var(--bs-gray-400);
396
+ --bs-gray-lightest: var(--bs-gray-500);
397
+
398
+ --bs-border-dark: var(--bs-gray-400);
399
+ --bs-border-base: var(--bs-gray-200);
400
+ --bs-border-light: var(--bs-gray-100);
401
+
313
402
  --bs-shadow-base: rgba(0, 0, 0, 0.06);
314
403
  --bs-shadow-invert: rgba(10, 11, 25, 0.60);
315
404
  --bs-shadow: -4px 4px 12px var(--bs-shadow-base),
@@ -326,6 +415,12 @@ button {
326
415
  -16px 16px 32px var(--bs-shadow-invert);
327
416
  --bs-shadow-drawerRight: -12px 12px 24px var(--bs-shadow-base),
328
417
  16px 16px 32px var(--bs-shadow-invert);
418
+
419
+ /* deprecate / phase out.. */
420
+ --bs-bg-subtle: #2F2F51;
421
+ --bs-bg-invert: var(--bs-white);
422
+ --bs-bg-invert-subtle: var(--bs-gray-100);
423
+ --bs-border: var(--bs-gray-400);
329
424
  }
330
425
 
331
426
  body,
@@ -862,7 +957,7 @@ table[data-borders^="all"] th {
862
957
  /* Table Rows */
863
958
 
864
959
  table:where([data-rows^="striped"]) tbody > tr:nth-child(even) {
865
- background-color: var(--bs-bg-subtle);
960
+ background-color: var(--bs-bg-medium);
866
961
  }
867
962
 
868
963
  /* Table Cells */