Skip to content

Commit 48c994a

Browse files
committed
fix(textarea/input): remove prefix/suffix part if hidden
1 parent 6f1bbec commit 48c994a

File tree

5 files changed

+23
-21
lines changed

5 files changed

+23
-21
lines changed

src/components/input/input-base.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,10 +52,16 @@ export abstract class IgcInputBaseComponent extends FormAssociatedRequiredMixin(
5252
@queryAssignedElements({ slot: 'helper-text' })
5353
protected _helperText!: Array<HTMLElement>;
5454

55-
@queryAssignedElements({ slot: 'prefix' })
55+
@queryAssignedElements({
56+
slot: 'prefix',
57+
selector: '[slot="prefix"]:not([hidden])',
58+
})
5659
protected prefixes!: Array<HTMLElement>;
5760

58-
@queryAssignedElements({ slot: 'suffix' })
61+
@queryAssignedElements({
62+
slot: 'suffix',
63+
selector: '[slot="suffix"]:not([hidden])',
64+
})
5965
protected suffixes!: Array<HTMLElement>;
6066

6167
protected get _isMaterial() {

src/components/textarea/textarea.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,10 +103,16 @@ export default class IgcTextareaComponent extends FormAssociatedRequiredMixin(
103103
@queryAssignedNodes({ flatten: true })
104104
private projected!: Array<Node>;
105105

106-
@queryAssignedElements({ slot: 'prefix' })
106+
@queryAssignedElements({
107+
slot: 'prefix',
108+
selector: '[slot="prefix"]:not([hidden])',
109+
})
107110
protected prefixes!: Array<HTMLElement>;
108111

109-
@queryAssignedElements({ slot: 'suffix' })
112+
@queryAssignedElements({
113+
slot: 'suffix',
114+
selector: '[slot="suffix"]:not([hidden])',
115+
})
110116
protected suffixes!: Array<HTMLElement>;
111117

112118
@query('textarea', true)

src/components/textarea/themes/shared/textarea.indigo.scss

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,9 +109,7 @@ textarea {
109109

110110
[part~='prefixed'] [part='prefix'],
111111
[part~='suffixed'] [part='suffix'] {
112-
::slotted(*) {
113-
padding-inline: pad-inline(rem(2px), rem(4px), rem(6px));
114-
}
112+
padding-inline: pad-inline(rem(2px), rem(4px), rem(6px));
115113
}
116114

117115
[part~='prefixed'] textarea {

src/components/textarea/themes/shared/textarea.material.scss

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -211,17 +211,13 @@ textarea {
211211

212212
[part~='prefixed'] {
213213
[part~='prefix'] {
214-
::slotted(*) {
215-
padding-inline: pad-inline(rem(12px), rem(14px), rem(16px));
216-
}
214+
padding-inline: pad-inline(rem(12px), rem(14px), rem(16px));
217215
}
218216
}
219217

220218
[part~='suffixed'] {
221219
[part~='suffix'] {
222-
::slotted(*) {
223-
padding-inline: pad-inline(rem(12px), rem(14px), rem(16px));
224-
}
220+
padding-inline: pad-inline(rem(12px), rem(14px), rem(16px));
225221
}
226222
}
227223

src/components/textarea/themes/textarea.base.scss

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -92,21 +92,17 @@ textarea {
9292

9393
[part~='prefixed'] {
9494
[part='prefix'] {
95-
grid-area: 1 / 1 / auto / auto;
95+
@extend %prefix;
9696

97-
::slotted(*) {
98-
@extend %prefix;
99-
}
97+
grid-area: 1 / 1 / auto / auto;
10098
}
10199
}
102100

103101
[part~='suffixed'] {
104102
[part='suffix'] {
105-
grid-area: 1 / 3 / auto / auto;
103+
@extend %suffix;
106104

107-
::slotted(*) {
108-
@extend %suffix;
109-
}
105+
grid-area: 1 / 3 / auto / auto;
110106
}
111107
}
112108

0 commit comments

Comments
 (0)