@boostdev/design-system-components 2.7.0 → 2.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 (87) hide show
  1. package/AGENTS.md +102 -2
  2. package/dist/client.cjs +52 -52
  3. package/dist/client.css +548 -548
  4. package/dist/client.js +52 -52
  5. package/dist/index.cjs +52 -52
  6. package/dist/index.css +548 -548
  7. package/dist/index.js +52 -52
  8. package/dist/web-components/{chunk-T6AETZRP.js → chunk-3GFWLSLS.js} +1 -1
  9. package/dist/web-components/{chunk-N6IMUOY4.js → chunk-65JXQOBA.js} +3 -3
  10. package/dist/web-components/{chunk-7FMR53BW.js → chunk-7YURXHTS.js} +35 -15
  11. package/dist/web-components/{chunk-5TFWOPLH.js → chunk-A3RLT3AS.js} +3 -3
  12. package/dist/web-components/{chunk-X3FKVHLK.js → chunk-ARMKC4BQ.js} +2 -2
  13. package/dist/web-components/{chunk-ZTC6GRP7.js → chunk-BKIHQYJR.js} +1 -0
  14. package/dist/web-components/{chunk-EBJM3VD4.js → chunk-DZOEPVFT.js} +2 -2
  15. package/dist/web-components/{chunk-57TRNCWQ.js → chunk-FSZRP43R.js} +1 -1
  16. package/dist/web-components/{chunk-UFFCKVZE.js → chunk-FXURM6D5.js} +1 -1
  17. package/dist/web-components/{chunk-HHHRF2PS.js → chunk-JYYRJS2D.js} +3 -3
  18. package/dist/web-components/{chunk-OCODKRVZ.js → chunk-KUI55GFB.js} +2 -2
  19. package/dist/web-components/{chunk-ZNKEZIYE.js → chunk-NCPQ7AF3.js} +3 -2
  20. package/dist/web-components/chunk-OF6FFGOT.js +167 -0
  21. package/dist/web-components/{chunk-GER5UJOF.js → chunk-ORC56MDY.js} +6 -8
  22. package/dist/web-components/{chunk-RTOS7LLG.js → chunk-PC3IOQAH.js} +3 -8
  23. package/dist/web-components/{chunk-JUKB3BUP.js → chunk-PXZWYO6Z.js} +1 -1
  24. package/dist/web-components/{chunk-5R6IFELV.js → chunk-QLT6MTZF.js} +1 -1
  25. package/dist/web-components/{chunk-ECW3HHWA.js → chunk-TQ7IQ4GZ.js} +7 -2
  26. package/dist/web-components/{chunk-QLZ2362S.js → chunk-UUKSDCYS.js} +2 -2
  27. package/dist/web-components/{chunk-ITHLKR7Q.js → chunk-X3NQMBAQ.js} +2 -2
  28. package/dist/web-components/{chunk-AJSXNDAP.js → chunk-X46KL5BK.js} +19 -18
  29. package/dist/web-components/{chunk-HGBNDR22.js → chunk-Y7V7LM6R.js} +1 -1
  30. package/dist/web-components/index.js +35 -31
  31. package/dist/web-components/interaction/bds-accordion-item.js +1 -1
  32. package/dist/web-components/interaction/bds-accordion.js +1 -1
  33. package/dist/web-components/interaction/bds-button.js +1 -1
  34. package/dist/web-components/interaction/bds-dialog.js +1 -1
  35. package/dist/web-components/interaction/bds-drawer.js +1 -1
  36. package/dist/web-components/interaction/bds-popover.js +1 -1
  37. package/dist/web-components/interaction/bds-tooltip.js +1 -1
  38. package/dist/web-components/interaction/form/bds-checkbox.js +1 -1
  39. package/dist/web-components/interaction/form/bds-combobox.js +1 -1
  40. package/dist/web-components/interaction/form/bds-number-input.js +1 -1
  41. package/dist/web-components/interaction/form/bds-radio.js +1 -1
  42. package/dist/web-components/interaction/form/bds-select.js +1 -1
  43. package/dist/web-components/interaction/form/bds-slider.js +1 -1
  44. package/dist/web-components/interaction/form/bds-switch.js +1 -1
  45. package/dist/web-components/interaction/form/bds-textarea.js +1 -1
  46. package/dist/web-components/ui/bds-alert.js +1 -1
  47. package/dist/web-components/ui/bds-avatar.js +1 -1
  48. package/dist/web-components/ui/bds-card.d.ts +3 -9
  49. package/dist/web-components/ui/bds-card.js +1 -1
  50. package/dist/web-components/ui/bds-icon-wrapper.js +1 -1
  51. package/dist/web-components/ui/bds-loading.js +1 -1
  52. package/dist/web-components/ui/bds-notification-banner.js +1 -1
  53. package/dist/web-components/ui/bds-progress.js +1 -1
  54. package/package.json +2 -1
  55. package/src/components/layout/IconWrapper/IconWrapper.module.css +2 -2
  56. package/src/test/token-contract.spec.ts +86 -0
  57. package/src/web-components/interaction/bds-accordion-item.ts +1 -1
  58. package/src/web-components/interaction/bds-accordion.ts +1 -0
  59. package/src/web-components/interaction/bds-button.ts +6 -8
  60. package/src/web-components/interaction/bds-dialog.ts +3 -3
  61. package/src/web-components/interaction/bds-drawer.ts +2 -2
  62. package/src/web-components/interaction/bds-popover.ts +7 -2
  63. package/src/web-components/interaction/bds-tooltip.ts +1 -1
  64. package/src/web-components/interaction/form/bds-checkbox.ts +1 -1
  65. package/src/web-components/interaction/form/bds-combobox.ts +2 -2
  66. package/src/web-components/interaction/form/bds-form-input.ts +1 -1
  67. package/src/web-components/interaction/form/bds-number-input.ts +1 -1
  68. package/src/web-components/interaction/form/bds-radio.ts +3 -3
  69. package/src/web-components/interaction/form/bds-select.ts +2 -2
  70. package/src/web-components/interaction/form/bds-slider.ts +35 -15
  71. package/src/web-components/interaction/form/bds-switch.ts +73 -39
  72. package/src/web-components/interaction/form/bds-textarea.ts +2 -2
  73. package/src/web-components/ui/BdsCard.mdx +4 -3
  74. package/src/web-components/ui/BdsCard.stories.tsx +7 -11
  75. package/src/web-components/ui/BdsSkeleton.stories.tsx +4 -4
  76. package/src/web-components/ui/bds-alert.ts +3 -2
  77. package/src/web-components/ui/bds-avatar.ts +1 -1
  78. package/src/web-components/ui/bds-card.spec.ts +3 -5
  79. package/src/web-components/ui/bds-card.ts +5 -12
  80. package/src/web-components/ui/bds-carousel.ts +7 -7
  81. package/src/web-components/ui/bds-icon-wrapper.ts +3 -3
  82. package/src/web-components/ui/bds-loading.ts +1 -1
  83. package/src/web-components/ui/bds-notification-banner.ts +19 -18
  84. package/src/web-components/ui/bds-pagination.ts +1 -1
  85. package/src/web-components/ui/bds-progress.ts +2 -2
  86. package/src/web-components/ui/bds-table.ts +4 -0
  87. package/dist/web-components/chunk-XNA6WTXG.js +0 -133
@@ -26,14 +26,14 @@ export class BdsIconWrapper extends LitElement {
26
26
  inline-size: 2em;
27
27
  block-size: 2em;
28
28
  font-size: 3em;
29
- border-radius: 50%;
29
+ border-radius: var(--icon-wrapper-radius, var(--bds-border_radius--circle));
30
30
  display: flex;
31
31
  align-items: center;
32
32
  justify-content: center;
33
33
  margin: var(--bds-space_l) auto var(--bds-space_m);
34
34
  background: var(--icon-wrapper-color, var(--bds-color_bg));
35
- color: var(--bds-on-icon-wrapper-color, var(--bds-color_on-bg));
36
- fill: var(--bds-on-icon-wrapper-color, var(--bds-color_on-bg));
35
+ color: var(--icon-wrapper_on-color, var(--bds-on-icon-wrapper-color, var(--bds-color_on-bg)));
36
+ fill: currentcolor;
37
37
  position: relative;
38
38
  transition: var(--bds-animation_transition);
39
39
  }
@@ -23,7 +23,7 @@ export class BdsLoading extends LitElement {
23
23
  block-size: 2.5em;
24
24
  border: 4px solid var(--bds-color_bg);
25
25
  border-block-start: 4px solid var(--bds-color_interactive);
26
- border-radius: 50%;
26
+ border-radius: var(--loading_radius, var(--bds-border_radius--circle));
27
27
  animation: spin 1s linear infinite;
28
28
  }
29
29
 
@@ -34,9 +34,9 @@ export class BdsNotificationBanner extends LitElement {
34
34
  align-items: center;
35
35
  gap: var(--bds-space_m);
36
36
  padding: var(--bds-space_s) var(--bds-space_m);
37
- background-color: var(--banner_bg, var(--bds-color_blue--subtle));
38
- color: var(--banner_text, var(--bds-color_on-blue--subtle));
39
- border-block-end: 3px solid var(--banner_border, var(--bds-color_blue));
37
+ background-color: var(--banner_bg, var(--banner_bg--variant, var(--bds-color_blue--subtle)));
38
+ color: var(--banner_text, var(--banner_text--variant, var(--bds-color_on-blue--subtle)));
39
+ border-block-end: 3px solid var(--banner_border, var(--banner_border--variant, var(--bds-color_blue)));
40
40
  font-size: var(--bds-font_size--body);
41
41
  line-height: var(--bds-font_line-height--body);
42
42
  inline-size: 100%;
@@ -44,27 +44,27 @@ export class BdsNotificationBanner extends LitElement {
44
44
  }
45
45
 
46
46
  :host([variant='info']) .banner {
47
- --banner_bg: var(--bds-color_blue--subtle);
48
- --banner_text: var(--bds-color_on-blue--subtle);
49
- --banner_border: var(--bds-color_blue);
47
+ --banner_bg--variant: var(--banner_bg--info, var(--bds-color_blue--subtle));
48
+ --banner_text--variant: var(--banner_text--info, var(--bds-color_on-blue--subtle));
49
+ --banner_border--variant: var(--banner_border--info, var(--bds-color_blue));
50
50
  }
51
51
 
52
52
  :host([variant='success']) .banner {
53
- --banner_bg: var(--bds-color_success--subtle);
54
- --banner_text: var(--bds-color_on-success--subtle);
55
- --banner_border: var(--bds-color_success);
53
+ --banner_bg--variant: var(--banner_bg--success, var(--bds-color_success--subtle));
54
+ --banner_text--variant: var(--banner_text--success, var(--bds-color_on-success--subtle));
55
+ --banner_border--variant: var(--banner_border--success, var(--bds-color_success));
56
56
  }
57
57
 
58
58
  :host([variant='warning']) .banner {
59
- --banner_bg: var(--bds-color_orange--subtle);
60
- --banner_text: var(--bds-color_on-orange--subtle);
61
- --banner_border: var(--bds-color_warning);
59
+ --banner_bg--variant: var(--banner_bg--warning, var(--bds-color_orange--subtle));
60
+ --banner_text--variant: var(--banner_text--warning, var(--bds-color_on-orange--subtle));
61
+ --banner_border--variant: var(--banner_border--warning, var(--bds-color_warning));
62
62
  }
63
63
 
64
64
  :host([variant='error']) .banner {
65
- --banner_bg: rgb(from var(--bds-color_error) r g b / 12%);
66
- --banner_text: var(--bds-color_on-bg);
67
- --banner_border: var(--bds-color_error);
65
+ --banner_bg--variant: var(--banner_bg--error, rgb(from var(--bds-color_error) r g b / 12%));
66
+ --banner_text--variant: var(--banner_text--error, var(--bds-color_on-bg));
67
+ --banner_border--variant: var(--banner_border--error, var(--bds-color_error));
68
68
  }
69
69
 
70
70
  .content {
@@ -88,9 +88,10 @@ export class BdsNotificationBanner extends LitElement {
88
88
  flex-shrink: 0;
89
89
  cursor: pointer;
90
90
  color: currentcolor;
91
- border-radius: 50%;
91
+ border-radius: var(--banner_dismiss-radius, var(--bds-border_radius--circle));
92
+ border: var(--banner_dismiss-border, none);
92
93
  transition: var(--bds-animation_transition);
93
- --bdc_color: currentcolor;
94
+ --bdc_color: var(--notification-banner_dismiss-border-color, currentcolor);
94
95
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
95
96
  }
96
97
 
@@ -106,7 +107,7 @@ export class BdsNotificationBanner extends LitElement {
106
107
 
107
108
  @media (hover: hover) and (pointer: fine) {
108
109
  .dismiss:hover {
109
- opacity: 0.7;
110
+ opacity: var(--banner_dismiss-opacity--hover, 0.7);
110
111
  }
111
112
  }
112
113
  `;
@@ -65,7 +65,7 @@ export class BdsPagination extends LitElement {
65
65
  cursor: pointer;
66
66
  color: var(--bds-color_on-bg);
67
67
  transition: var(--bds-animation_transition);
68
- --bdc_color: transparent;
68
+ --bdc_color: var(--pagination_border-color, transparent);
69
69
  --bdc-outline_radius: var(--bds-border_radius--xs);
70
70
  box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color), var(--bdc-outline_shadow);
71
71
  }
@@ -42,7 +42,7 @@ export class BdsProgress extends LitElement {
42
42
  inline-size: 100%;
43
43
  block-size: var(--progress_height, var(--bds-space_xs));
44
44
  background-color: var(--bds-color_bg--subtle);
45
- border-radius: 999px;
45
+ border-radius: var(--progress_radius, var(--bds-border_radius--full));
46
46
  overflow: hidden;
47
47
  }
48
48
 
@@ -53,7 +53,7 @@ export class BdsProgress extends LitElement {
53
53
  .fill {
54
54
  block-size: 100%;
55
55
  background-color: var(--progress_color-active, var(--bdc-color_active));
56
- border-radius: 999px;
56
+ border-radius: var(--progress_radius, var(--bds-border_radius--full));
57
57
  transition: inline-size var(--bds-animation_transition-duration) var(--bds-animation_easing);
58
58
  }
59
59
 
@@ -29,6 +29,10 @@ export class BdsTable extends LitElement {
29
29
  .wrapper {
30
30
  overflow-inline: auto;
31
31
  -webkit-overflow-scrolling: touch;
32
+ border: var(--table_border, none);
33
+ border-radius: var(--table_radius, var(--bds-border_radius--s));
34
+ --bdc_color: var(--bds-color_bg--subtle);
35
+ box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
32
36
  }
33
37
 
34
38
  ::slotted(table) {
@@ -1,133 +0,0 @@
1
- import {
2
- T,
3
- i,
4
- i2
5
- } from "./chunk-LGEZYFUU.js";
6
-
7
- // src/web-components/interaction/form/bds-switch.ts
8
- var BdsSwitch = class extends i2 {
9
- static formAssociated = true;
10
- static styles = i`
11
- :host {
12
- display: inline-flex;
13
- align-items: center;
14
- gap: var(--bds-space_xs);
15
- cursor: pointer;
16
- font-size: var(--bds-font_size--body);
17
- font-family: var(--bds-font_family--body);
18
- color: var(--bds-color_on-bg);
19
- }
20
-
21
- :host([disabled]) {
22
- opacity: 0.5;
23
- cursor: not-allowed;
24
- pointer-events: none;
25
- }
26
-
27
- .track {
28
- position: relative;
29
- inline-size: 2.75rem;
30
- block-size: 1.5rem;
31
- border-radius: 999px;
32
- background-color: var(--switch_color_bg, var(--bds-color_bg--subtle));
33
- --bdc_color: currentcolor;
34
-
35
- box-shadow: inset 0 0 0 var(--bdc-outline_width) var(--bdc_color);
36
- transition: background-color 0.2s ease;
37
- flex-shrink: 0;
38
- }
39
-
40
- .thumb {
41
- position: absolute;
42
- inset-block-start: 0.2rem;
43
- inset-inline-start: 0.2rem;
44
- inline-size: 1.1rem;
45
- block-size: 1.1rem;
46
- border-radius: 50%;
47
- background-color: var(--switch_thumb_color, var(--bds-color_interactive));
48
- transition: inset-inline-start 0.2s ease;
49
- }
50
-
51
- .input {
52
- position: absolute;
53
- opacity: 0;
54
- inline-size: 0;
55
- block-size: 0;
56
- margin: 0;
57
- }
58
-
59
- .input:checked + .track {
60
- background-color: var(--switch_color-active, var(--bdc-color_active--subtle));
61
- }
62
-
63
- .input:checked + .track .thumb {
64
- inset-inline-start: calc(100% - 1.3rem);
65
- }
66
-
67
- .input:focus-visible + .track {
68
- outline: var(--bds-outline_default);
69
- outline-offset: var(--bds-outline_offset);
70
- }
71
-
72
- label {
73
- cursor: pointer;
74
- }
75
- `;
76
- static properties = {
77
- name: { type: String, reflect: true },
78
- value: { type: String },
79
- checked: { type: Boolean, reflect: true },
80
- required: { type: Boolean, reflect: true },
81
- disabled: { type: Boolean, reflect: true }
82
- };
83
- _internals;
84
- _uid = Math.random().toString(36).slice(2, 8);
85
- constructor() {
86
- super();
87
- this._internals = this.attachInternals();
88
- this.name = "";
89
- this.value = "on";
90
- this.checked = false;
91
- this.required = false;
92
- this.disabled = false;
93
- }
94
- updated(changed) {
95
- super.updated(changed);
96
- if (changed.has("checked") || changed.has("value")) {
97
- this._internals.setFormValue?.(this.checked ? this.value : null);
98
- }
99
- }
100
- formResetCallback() {
101
- this.checked = false;
102
- this._internals.setFormValue?.(null);
103
- }
104
- _handleChange(e) {
105
- this.checked = e.target.checked;
106
- }
107
- render() {
108
- const id = `bds-switch-${this._uid}`;
109
- return T`
110
- <input
111
- id=${id}
112
- type="checkbox"
113
- role="switch"
114
- class="input"
115
- .checked=${this.checked}
116
- ?required=${this.required}
117
- ?disabled=${this.disabled}
118
- @change=${this._handleChange}
119
- />
120
- <label for=${id}>
121
- <span class="track">
122
- <span class="thumb"></span>
123
- </span>
124
- <slot></slot>
125
- </label>
126
- `;
127
- }
128
- };
129
- customElements.define("bds-switch", BdsSwitch);
130
-
131
- export {
132
- BdsSwitch
133
- };