novo-elements 13.2.0-next.3 → 13.2.0-next.5

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 (31) hide show
  1. package/elements/checkbox/CheckList.scss +69 -0
  2. package/elements/checkbox/Checkbox.scss +104 -0
  3. package/elements/data-table/pagination/data-table-pagination.component.scss +73 -0
  4. package/elements/dropdown/Dropdown.scss +0 -1
  5. package/elements/header/Header.scss +1 -1
  6. package/elements/list/list-item-content.scss +7 -15
  7. package/elements/search/SearchBox.scss +21 -2
  8. package/elements/search/index.d.ts +23 -18
  9. package/elements/switch/Switch.scss +39 -3
  10. package/fesm2022/novo-elements-elements-breadcrumbs.mjs +1 -1
  11. package/fesm2022/novo-elements-elements-breadcrumbs.mjs.map +1 -1
  12. package/fesm2022/novo-elements-elements-checkbox.mjs +4 -4
  13. package/fesm2022/novo-elements-elements-checkbox.mjs.map +1 -1
  14. package/fesm2022/novo-elements-elements-data-table.mjs +3 -3
  15. package/fesm2022/novo-elements-elements-data-table.mjs.map +1 -1
  16. package/fesm2022/novo-elements-elements-dropdown.mjs +2 -2
  17. package/fesm2022/novo-elements-elements-dropdown.mjs.map +1 -1
  18. package/fesm2022/novo-elements-elements-header.mjs +2 -2
  19. package/fesm2022/novo-elements-elements-header.mjs.map +1 -1
  20. package/fesm2022/novo-elements-elements-list.mjs +2 -2
  21. package/fesm2022/novo-elements-elements-list.mjs.map +1 -1
  22. package/fesm2022/novo-elements-elements-search.mjs +66 -47
  23. package/fesm2022/novo-elements-elements-search.mjs.map +1 -1
  24. package/fesm2022/novo-elements-elements-simple-table.mjs +1 -1
  25. package/fesm2022/novo-elements-elements-simple-table.mjs.map +1 -1
  26. package/fesm2022/novo-elements-elements-switch.mjs +2 -2
  27. package/fesm2022/novo-elements-elements-switch.mjs.map +1 -1
  28. package/fesm2022/novo-elements-utils.mjs +9 -5
  29. package/fesm2022/novo-elements-utils.mjs.map +1 -1
  30. package/package.json +1 -1
  31. package/utils/index.d.ts +1 -1
@@ -88,3 +88,72 @@
88
88
  }
89
89
  }
90
90
  }
91
+
92
+ // bh2026: CSS-based checkbox rendering — replaces icon font glyphs
93
+ :host-context([data-theme='bh2026']) {
94
+ .novo-checkbox-group {
95
+ label i.bhi-checkbox-empty,
96
+ label i.bhi-checkbox-filled {
97
+ font-size: 0;
98
+ display: inline-flex;
99
+ align-self: center;
100
+ width: 16px;
101
+ height: 16px;
102
+ position: relative;
103
+ flex-shrink: 0;
104
+ }
105
+
106
+ label i.bhi-checkbox-empty {
107
+ &::before {
108
+ content: '';
109
+ position: absolute;
110
+ inset: 0;
111
+ border: 1px solid var(--color-border-control);
112
+ border-radius: 2px;
113
+ background: white;
114
+ }
115
+ }
116
+
117
+ label i.bhi-checkbox-filled {
118
+ &::before {
119
+ content: '';
120
+ position: absolute;
121
+ inset: 0;
122
+ background: var(--color-background-utility-positive);
123
+ border: 1px solid var(--color-utility-blue-600);
124
+ border-radius: 2px;
125
+ }
126
+ &::after {
127
+ content: '';
128
+ position: absolute;
129
+ left: 3px;
130
+ top: 4px;
131
+ width: 9px;
132
+ height: 5px;
133
+ border-left: 2px solid var(--color-utility-blue-600);
134
+ border-bottom: 2px solid var(--color-utility-blue-600);
135
+ transform: rotate(-45deg);
136
+ }
137
+ }
138
+
139
+ &.disabled {
140
+ label {
141
+ opacity: 1;
142
+ }
143
+ label i.bhi-checkbox-empty {
144
+ &::before {
145
+ background: var(--color-background-utility-positive);
146
+ border-color: var(--color-border-input-disabled);
147
+ }
148
+ }
149
+ label i.bhi-checkbox-filled {
150
+ &::before {
151
+ border-color: var(--color-border-input-disabled);
152
+ }
153
+ &::after {
154
+ border-color: var(--color-border-input-disabled);
155
+ }
156
+ }
157
+ }
158
+ }
159
+ }
@@ -91,3 +91,107 @@
91
91
  }
92
92
  }
93
93
  }
94
+
95
+ // bh2026: CSS-based checkbox rendering — replaces icon font glyphs
96
+ :host-context([data-theme='bh2026']) {
97
+ .novo-checkbox-group {
98
+ // Suppress glyph and establish box dimensions for all box-style states
99
+ label i.bhi-checkbox-empty,
100
+ label i.bhi-checkbox-filled,
101
+ label i.bhi-checkbox-indeterminate {
102
+ font-size: 0;
103
+ display: inline-flex;
104
+ align-self: center;
105
+ width: 16px;
106
+ height: 16px;
107
+ position: relative;
108
+ flex-shrink: 0;
109
+ }
110
+
111
+ // Unchecked: white box with gray border
112
+ label i.bhi-checkbox-empty {
113
+ &::before {
114
+ content: '';
115
+ position: absolute;
116
+ inset: 0;
117
+ border: 1px solid var(--color-border-control);
118
+ border-radius: 2px;
119
+ background: white;
120
+ }
121
+ }
122
+
123
+ // Checked: light-blue box with brand-blue border and checkmark
124
+ label i.bhi-checkbox-filled {
125
+ &::before {
126
+ content: '';
127
+ position: absolute;
128
+ inset: 0;
129
+ background: var(--color-background-utility-positive);
130
+ border: 1px solid var(--color-utility-blue-600);
131
+ border-radius: 2px;
132
+ }
133
+ &::after {
134
+ content: '';
135
+ position: absolute;
136
+ left: 3px;
137
+ top: 4px;
138
+ width: 9px;
139
+ height: 5px;
140
+ border-left: 2px solid var(--color-utility-blue-600);
141
+ border-bottom: 2px solid var(--color-utility-blue-600);
142
+ transform: rotate(-45deg);
143
+ }
144
+ }
145
+
146
+ // Indeterminate: light-blue box with brand-blue border and dash
147
+ label i.bhi-checkbox-indeterminate {
148
+ &::before {
149
+ content: '';
150
+ position: absolute;
151
+ inset: 0;
152
+ background: var(--color-background-utility-positive);
153
+ border: 1px solid var(--color-utility-blue-600);
154
+ border-radius: 2px;
155
+ }
156
+ &::after {
157
+ content: '';
158
+ position: absolute;
159
+ left: 4px;
160
+ top: 50%;
161
+ transform: translateY(-50%);
162
+ width: 8px;
163
+ height: 2px;
164
+ background: var(--color-utility-blue-600);
165
+ }
166
+ }
167
+
168
+ // Disabled: override the base opacity:0.4 and use explicit muted colors
169
+ &.disabled {
170
+ label {
171
+ opacity: 1;
172
+ }
173
+ label i.bhi-checkbox-empty {
174
+ &::before {
175
+ background: var(--color-background-utility-positive);
176
+ border-color: var(--color-border-input-disabled);
177
+ }
178
+ }
179
+ label i.bhi-checkbox-filled {
180
+ &::before {
181
+ border-color: var(--color-border-input-disabled);
182
+ }
183
+ &::after {
184
+ border-color: var(--color-border-input-disabled);
185
+ }
186
+ }
187
+ label i.bhi-checkbox-indeterminate {
188
+ &::before {
189
+ border-color: var(--color-border-input-disabled);
190
+ }
191
+ &::after {
192
+ background: var(--color-border-input-disabled);
193
+ }
194
+ }
195
+ }
196
+ }
197
+ }
@@ -107,6 +107,7 @@ $breakpoint: 1000px;
107
107
  font-size: var(--font-size-text);
108
108
  border-radius: var(--border-radius-xsm, 2px);
109
109
  list-style-type: none;
110
+ margin-top: 3px;
110
111
  cursor: pointer;
111
112
  color: var(--color-company);
112
113
  &.disabled {
@@ -126,3 +127,75 @@ $breakpoint: 1000px;
126
127
  }
127
128
  }
128
129
  }
130
+
131
+ :host-context([data-theme='bh2026']) {
132
+ &.standard {
133
+ align-items: center;
134
+ border-top: 1px solid var(--pagination-color-border-default, var(--border));
135
+ padding: var(--spacing-padding-sm) var(--spacing-padding-sm) 0 var(--spacing-padding-md);
136
+
137
+ > * {
138
+ margin: 0;
139
+ }
140
+
141
+ h5.rows {
142
+ color: var(--pagination-color-content-label, var(--text-muted));
143
+ font-size: var(--typography-font-size-12);
144
+ font-weight: var(--typography-meta-sm-font-weight);
145
+ letter-spacing: var(--typography-meta-sm-letter-spacing);
146
+ line-height: var(--typography-meta-sm-line-height);
147
+ margin-right: var(--spacing-gap-sm);
148
+ opacity: 1;
149
+ padding: 0;
150
+ text-transform: uppercase;
151
+ white-space: nowrap;
152
+ }
153
+
154
+ novo-select {
155
+ color: var(--text-muted);
156
+ max-width: 60px;
157
+ min-width: 60px;
158
+ margin-right: var(--spacing-gap-sm);
159
+
160
+ ::ng-deep .novo-select-trigger {
161
+ height: var(--spacing-padding-xlg);
162
+ width: 5rem;
163
+
164
+ i.bhi-collapse::before {
165
+ content: "\f226"; // bhi-sort-desc - all code points are fixed in bullhorn-icons
166
+ }
167
+
168
+ span.text-ellipsis {
169
+ color: var(--button-color-select-color-content-value, var(--text-secondary));
170
+ font-size: var(--typography-button-default-font-size, var(--font-size-body));
171
+ font-weight: var(--typography-button-default-font-weight, var(--typography-body-default-font-weight));
172
+ letter-spacing: var(--typography-button-default-letter-spacing, var(--typography-body-default-letter-spacing));
173
+ line-height: var(--typography-button-default-line-height, var(--typography-line-height-20));
174
+ }
175
+ }
176
+ }
177
+
178
+ .novo-data-table-of-total-amount {
179
+ color: var(--pagination-color-content-label, var(--text-muted));
180
+ font-size: var(--typography-font-size-12);
181
+ font-weight: var(--typography-meta-sm-font-weight);
182
+ }
183
+
184
+ .pager {
185
+ gap: var(--data-table-spacing-gap, 0);
186
+
187
+ .page {
188
+ border-radius: var(--border-radius-xsm);
189
+ color: var(--pagination-color-content-label, var(--text-muted));
190
+ font-size: var(--typography-font-size-12);
191
+ font-weight: var(--typography-meta-sm-font-weight);
192
+
193
+ &.active {
194
+ background: var(--color-background-subtle, var(--background-muted));
195
+ border: 1px solid var(--pagination-color-border-default, var(--border));
196
+ opacity: 1;
197
+ }
198
+ }
199
+ }
200
+ }
201
+ }
@@ -39,7 +39,6 @@
39
39
  .dropdown-container {
40
40
  background-color: var(--background-bright, $color-bright);
41
41
  border-radius: var(--border-radius-sm);
42
- overflow: hidden;
43
42
  list-style: none;
44
43
  margin: 0;
45
44
  padding: 0;
@@ -168,7 +168,7 @@
168
168
  }
169
169
 
170
170
  &[class*='novo-accent-'] {
171
- background: var(--color-transparency-white-90);
171
+ background: var(--header-background, var(--color-transparency-white-90));
172
172
  backdrop-filter: blur(12px);
173
173
  box-shadow: 0 1px 2px var(--color-transparency-black-10);
174
174
  padding-top: var(--spacing-md);
@@ -3,12 +3,7 @@
3
3
  @include theme-colors() using ($name, $color, $contrast, $tint, $shade, $pale) {
4
4
  // Wonky deprecation: For 2026, stringently avoid using * selectors to apply font/color changes - prefer inherit functionality
5
5
  // This setup made it very hard to provide overrides.
6
- :host-context([theme="#{$name}"]):host-context(:root:not([data-theme='bh2026'])) {
7
- &.novo-item-content > ::ng-deep *:not(.xxxx) {
8
- color: rgba(#fff, 0.65);
9
- }
10
- }
11
- :host-context([theme="#{$name}"]):host-context(:root[data-theme='bh2026']).novo-item-content {
6
+ :host-context([theme="#{$name}"]).novo-item-content {
12
7
  color: rgba(#fff, 0.65);
13
8
  }
14
9
  }
@@ -21,16 +16,13 @@
21
16
  display: flex;
22
17
  margin-left: 0.2em;
23
18
 
24
- :root:not([data-theme='bh2026']) &.novo-item-content > ::ng-deep *:not(.yyy) {
19
+ &.novo-item-content {
25
20
  color: rgba(#434343, 0.85);
26
- }
27
- :root[data-theme='bh2026'] &.novo-item-content {
28
- color: rgba(#434343, 0.85);
29
- }
30
- &.novo-item-content ::ng-deep i {
31
- @include theme-colors() using ($name, $color, $contrast, $tint, $shade, $pale) {
32
- &.#{$name} {
33
- color: getCssVarname($name);
21
+ ::ng-deep i {
22
+ @include theme-colors() using ($name, $color, $contrast, $tint, $shade, $pale) {
23
+ &.#{$name} {
24
+ color: getCssVarname($name);
25
+ }
34
26
  }
35
27
  }
36
28
  }
@@ -70,7 +70,7 @@
70
70
  }
71
71
  }
72
72
 
73
- :host(.has-search-button) {
73
+ :host(.has-border) {
74
74
  display: flex;
75
75
  align-items: center;
76
76
  gap: var(--spacing-8, 0.8rem);
@@ -86,6 +86,19 @@
86
86
  color: var(--color-text-subtle, var(--text-muted));
87
87
  }
88
88
 
89
+ [novo-search-trailing-action] {
90
+ flex-shrink: 0;
91
+ cursor: pointer;
92
+ color: var(--color-text-subtle, var(--text-muted));
93
+ }
94
+
95
+ ::ng-deep [novo-search-leading-content] {
96
+ flex: 1;
97
+ min-width: 0;
98
+ display: flex;
99
+ align-items: center;
100
+ }
101
+
89
102
  > input {
90
103
  flex: 1 1 0;
91
104
  min-width: 0;
@@ -97,8 +110,14 @@
97
110
  }
98
111
  }
99
112
 
113
+ :host(.has-border.has-leading-content) {
114
+ > input {
115
+ display: none;
116
+ }
117
+ }
118
+
100
119
  :host-context([data-theme='bh2026']) {
101
- &.has-search-button {
120
+ &.has-border {
102
121
  border: 1px solid var(--color-border-default);
103
122
  border-radius: var(--button-radius);
104
123
  }
@@ -1,15 +1,22 @@
1
1
  import * as i0 from '@angular/core';
2
- import { OnInit, ElementRef, EventEmitter, ChangeDetectorRef, NgZone } from '@angular/core';
2
+ import { OnInit, AfterContentChecked, ElementRef, EventEmitter, ChangeDetectorRef, NgZone } from '@angular/core';
3
3
  import { ControlValueAccessor } from '@angular/forms';
4
4
  import { NovoLabelService } from 'novo-elements/services';
5
5
  import * as i2 from '@angular/common';
6
- import * as i3 from 'novo-elements/elements/button';
7
- import * as i4 from 'novo-elements/elements/icon';
8
- import * as i5 from 'novo-elements/elements/picker';
9
- import * as i6 from 'novo-elements/elements/tooltip';
10
- import * as i7 from 'novo-elements/elements/common';
6
+ import * as i3 from 'novo-elements/elements/icon';
7
+ import * as i4 from 'novo-elements/elements/picker';
8
+ import * as i5 from 'novo-elements/elements/tooltip';
9
+ import * as i6 from 'novo-elements/elements/common';
11
10
 
12
- declare class NovoSearchBoxElement implements ControlValueAccessor, OnInit {
11
+ /**
12
+ * Marker directive for content projected into the leading (left) area of `novo-search`.
13
+ * When present, the text input is hidden and the projected content fills its space.
14
+ */
15
+ declare class NovoSearchLeadingContentDirective {
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<NovoSearchLeadingContentDirective, never>;
17
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NovoSearchLeadingContentDirective, "[novo-search-leading-content]", never, {}, {}, never, never, false, never>;
18
+ }
19
+ declare class NovoSearchBoxElement implements ControlValueAccessor, OnInit, AfterContentChecked {
13
20
  element: ElementRef;
14
21
  labels: NovoLabelService;
15
22
  private _changeDetectorRef;
@@ -19,9 +26,8 @@ declare class NovoSearchBoxElement implements ControlValueAccessor, OnInit {
19
26
  position: string;
20
27
  placeholder: string;
21
28
  alwaysOpen: boolean;
22
- submitButton: boolean;
23
- submitLabel: string;
24
- submitButtonAutomationId: string;
29
+ bordered: boolean;
30
+ get hasBorder(): boolean;
25
31
  theme: string;
26
32
  color: string;
27
33
  closeOnSelect: boolean;
@@ -36,6 +42,8 @@ declare class NovoSearchBoxElement implements ControlValueAccessor, OnInit {
36
42
  applySearch: EventEmitter<KeyboardEvent>;
37
43
  focused: boolean;
38
44
  value: any;
45
+ leadingContent: NovoSearchLeadingContentDirective;
46
+ get hasLeadingContent(): boolean;
39
47
  /** View -> model callback called when value changes */
40
48
  _onChange: (value: any) => void;
41
49
  /** View -> model callback called when autocomplete has been touched */
@@ -44,12 +52,10 @@ declare class NovoSearchBoxElement implements ControlValueAccessor, OnInit {
44
52
  overlay: any;
45
53
  input: any;
46
54
  private debounceSearchChange;
55
+ private _hasLeadingContent;
47
56
  constructor(element: ElementRef, labels: NovoLabelService, _changeDetectorRef: ChangeDetectorRef, _zone: NgZone);
48
57
  ngOnInit(): void;
49
- /**
50
- * @name showFasterFind
51
- * @description This function shows the picker and adds the active class (for animation)
52
- */
58
+ ngAfterContentChecked(): void;
53
59
  showSearch(event?: any, forceClose?: boolean): void;
54
60
  onFocus(): void;
55
61
  onBlur(): void;
@@ -60,7 +66,6 @@ declare class NovoSearchBoxElement implements ControlValueAccessor, OnInit {
60
66
  get panelOpen(): boolean;
61
67
  get active(): boolean;
62
68
  /** END: Convenient Panel Methods. */
63
- onSubmitClick(event: MouseEvent): void;
64
69
  _handleKeydown(event: KeyboardEvent): void;
65
70
  _handleInput(event: KeyboardEvent): void;
66
71
  writeValue(value: any): void;
@@ -78,13 +83,13 @@ declare class NovoSearchBoxElement implements ControlValueAccessor, OnInit {
78
83
  */
79
84
  clearValue(skip: any): void;
80
85
  static ɵfac: i0.ɵɵFactoryDeclaration<NovoSearchBoxElement, never>;
81
- static ɵcmp: i0.ɵɵComponentDeclaration<NovoSearchBoxElement, "novo-search", never, { "name": { "alias": "name"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "position": { "alias": "position"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "alwaysOpen": { "alias": "alwaysOpen"; "required": false; }; "submitButton": { "alias": "submitButton"; "required": false; }; "submitLabel": { "alias": "submitLabel"; "required": false; }; "submitButtonAutomationId": { "alias": "submitButtonAutomationId"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "color": { "alias": "color"; "required": false; }; "closeOnSelect": { "alias": "closeOnSelect"; "required": false; }; "displayField": { "alias": "displayField"; "required": false; }; "displayValue": { "alias": "displayValue"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "keepOpen": { "alias": "keepOpen"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "allowPropagation": { "alias": "allowPropagation"; "required": false; }; "overrideElement": { "alias": "overrideElement"; "required": false; }; }, { "searchChanged": "searchChanged"; "applySearch": "applySearch"; }, never, ["*"], false, never>;
86
+ static ɵcmp: i0.ɵɵComponentDeclaration<NovoSearchBoxElement, "novo-search", never, { "name": { "alias": "name"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "position": { "alias": "position"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "alwaysOpen": { "alias": "alwaysOpen"; "required": false; }; "bordered": { "alias": "bordered"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "color": { "alias": "color"; "required": false; }; "closeOnSelect": { "alias": "closeOnSelect"; "required": false; }; "displayField": { "alias": "displayField"; "required": false; }; "displayValue": { "alias": "displayValue"; "required": false; }; "hint": { "alias": "hint"; "required": false; }; "keepOpen": { "alias": "keepOpen"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "allowPropagation": { "alias": "allowPropagation"; "required": false; }; "overrideElement": { "alias": "overrideElement"; "required": false; }; }, { "searchChanged": "searchChanged"; "applySearch": "applySearch"; }, ["leadingContent"], ["[novo-search-leading-content]", "[novo-search-trailing-action]", "*"], false, never>;
82
87
  }
83
88
 
84
89
  declare class NovoSearchBoxModule {
85
90
  static ɵfac: i0.ɵɵFactoryDeclaration<NovoSearchBoxModule, never>;
86
- static ɵmod: i0.ɵɵNgModuleDeclaration<NovoSearchBoxModule, [typeof NovoSearchBoxElement], [typeof i2.CommonModule, typeof i3.NovoButtonModule, typeof i4.NovoIconModule, typeof i5.NovoPickerModule, typeof i6.NovoTooltipModule, typeof i7.NovoOverlayModule], [typeof NovoSearchBoxElement]>;
91
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NovoSearchBoxModule, [typeof NovoSearchBoxElement, typeof NovoSearchLeadingContentDirective], [typeof i2.CommonModule, typeof i3.NovoIconModule, typeof i4.NovoPickerModule, typeof i5.NovoTooltipModule, typeof i6.NovoOverlayModule], [typeof NovoSearchBoxElement, typeof NovoSearchLeadingContentDirective]>;
87
92
  static ɵinj: i0.ɵɵInjectorDeclaration<NovoSearchBoxModule>;
88
93
  }
89
94
 
90
- export { NovoSearchBoxElement, NovoSearchBoxModule };
95
+ export { NovoSearchBoxElement, NovoSearchBoxModule, NovoSearchLeadingContentDirective };
@@ -142,10 +142,46 @@ $switch-thumb-size: 20px !default;
142
142
  }
143
143
  }
144
144
 
145
- // bh2026: outlined toggle — white track + 1px neutral border in the off state
145
+ // bh2026: 32×20 pill track, 16×16 thumb, always white per Figma spec
146
146
  :host-context([data-theme='bh2026']) {
147
+ .novo-switch-container {
148
+ width: 32px;
149
+ height: 20px;
150
+ }
147
151
  .novo-switch-bar {
148
- background-color: var(--toggle-color-background, #ffffff);
149
- border: 1px solid var(--toggle-color-border, var(--color-border-default, #f0f5f9));
152
+ top: 0;
153
+ left: 0;
154
+ width: 32px;
155
+ height: 20px;
156
+ border-radius: 10px;
157
+ background-color: white;
158
+ border: 1px solid var(--color-border-input);
159
+ }
160
+ .novo-switch-thumb-container {
161
+ top: 2px;
162
+ left: 2px;
163
+ width: 12px; // travel: 32 - 16 - 4px padding = 12px
164
+ }
165
+ .novo-switch-thumb {
166
+ height: 16px;
167
+ width: 16px;
168
+ background-color: white;
169
+ border: 1px solid var(--color-border-input);
170
+ box-shadow: 0px 2px 4px 0px var(--color-transparency-charcoal-04);
171
+
172
+ novo-icon {
173
+ display: none;
174
+ }
175
+ }
176
+
177
+ &[aria-checked="true"] {
178
+ .novo-switch-bar {
179
+ background-color: var(--color-utility-blue-600);
180
+ border: none;
181
+ }
182
+ .novo-switch-thumb {
183
+ background-color: white;
184
+ border: none;
185
+ }
150
186
  }
151
187
  }