Skip to content

Commit f2d73da

Browse files
devversionkara
authored andcommitted
fix(autosize): export md-autosize directive (#2432)
Closes #2419
1 parent 93b0bc9 commit f2d73da

File tree

4 files changed

+19
-7
lines changed

4 files changed

+19
-7
lines changed

src/demo-app/input/input-container-demo.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -260,11 +260,11 @@ <h4>Textarea</h4>
260260
<md-card class="demo-card demo-basic">
261261
<md-toolbar color="primary">Textarea Autosize</md-toolbar>
262262
<md-card-content>
263-
<textarea md-autosize class="demo-textarea"></textarea>
263+
<textarea mdTextareaAutosize class="demo-textarea"></textarea>
264264
<div>
265265
<md-input-container>
266266
<textarea mdInput
267-
md-autosize
267+
mdTextareaAutosize
268268
placeholder="Autosized textarea"></textarea>
269269
</md-input-container>
270270
</div>

src/demo-app/input/input-demo.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,5 +178,5 @@ <h4>Textarea</h4>
178178

179179
<md-card>
180180
<h2>textarea autosize</h2>
181-
<textarea md-autosize class="demo-textarea"></textarea>
181+
<textarea mdTextareaAutosize class="demo-textarea"></textarea>
182182
</md-card>

src/lib/input/autosize.spec.ts

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {Component} from '@angular/core';
1+
import {Component, ViewChild} from '@angular/core';
22
import {ComponentFixture, TestBed, async} from '@angular/core/testing';
33
import {By} from '@angular/platform-browser';
44
import {MdInputModule} from './input';
@@ -97,6 +97,12 @@ describe('MdTextareaAutosize', () => {
9797
expect(parseInt(textarea.style.maxHeight))
9898
.toBeGreaterThan(previousMaxHeight, 'Expected increased max-height with maxRows increase.');
9999
});
100+
101+
it('should export the mdAutosize reference', () => {
102+
expect(fixture.componentInstance.autosize).toBeTruthy();
103+
expect(fixture.componentInstance.autosize.resizeToFitContent).toBeTruthy();
104+
});
105+
100106
});
101107

102108

@@ -109,17 +115,22 @@ const textareaStyleReset = `
109115
}`;
110116

111117
@Component({
112-
template: `<textarea md-autosize [minRows]="minRows" [maxRows]="maxRows">{{content}}</textarea>`,
118+
template: `
119+
<textarea mdTextareaAutosize [minRows]="minRows" [maxRows]="maxRows"
120+
#autosize="mdTextareaAutosize">
121+
{{content}}
122+
</textarea>`,
113123
styles: [textareaStyleReset],
114124
})
115125
class AutosizeTextAreaWithContent {
126+
@ViewChild('autosize') autosize: MdTextareaAutosize;
116127
minRows: number = null;
117128
maxRows: number = null;
118129
content: string = '';
119130
}
120131

121132
@Component({
122-
template: `<textarea md-autosize [value]="value"></textarea>`,
133+
template: `<textarea mdTextareaAutosize [value]="value"></textarea>`,
123134
styles: [textareaStyleReset],
124135
})
125136
class AutosizeTextAreaWithValue {

src/lib/input/autosize.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@ import {Directive, ElementRef, Input, OnInit} from '@angular/core';
55
* Directive to automatically resize a textarea to fit its content.
66
*/
77
@Directive({
8-
selector: 'textarea[md-autosize], textarea[mat-autosize]',
8+
selector: 'textarea[md-autosize], textarea[mat-autosize], textarea[mdTextareaAutosize]',
9+
exportAs: 'mdTextareaAutosize',
910
host: {
1011
'(input)': 'resizeToFitContent()',
1112
'[style.min-height]': '_minHeight',

0 commit comments

Comments
 (0)