diff --git a/Directory.Build.props b/Directory.Build.props
index ffb513d..bdbc726 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -1,6 +1,6 @@
- 3.0.0
- 3.0.0-preview9.19465.2
+ 3.1.0
+ 3.1.0-preview4.19579.2
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..3d7871a
--- /dev/null
+++ b/README.md
@@ -0,0 +1,48 @@
+# RazorComponents.MaterialDesign
+
+## Buttons & Indicators
+- [x] Button
+- [ ] Chip
+- [ ] FAB
+- [ ] Icon
+- [ ] IconButton
+- [x] ProgressBar
+- [ ] Ripple
+
+## Form Controls
+- [ ] Autocomplete
+- [x] Checkbox
+- [ ] DatePicker
+- [ ] NumericUpDownField
+- [ ] RadioButton
+- [x] Select
+- [ ] Slider
+- [ ] SlideToggle
+- [x] Switch
+- [x] TextArea (new! alpha2)
+- [x] TextField
+
+## Navigation
+- [ ] AppBar (* TopAppBar)
+- [x] Drawer
+- [x] Nav Menu (* NavLink)
+
+## Layout
+- [ ] Card
+- [ ] Divider
+- [ ] Elevation
+- [ ] Expansion Panel
+- [ ] Hidden
+- [ ] Layout Grid
+- [x] List
+- [ ] Menu
+- [ ] Tab
+- [ ] Table
+- [ ] Themes
+- [x] Typography
+
+## Popups & Modals
+- [x] Dialog
+- [ ] Snackbar
+- [ ] Toast
+- [ ] Tooltip
diff --git a/samples/BlazorApp/BlazorApp.csproj b/samples/BlazorApp/BlazorApp.csproj
index 84104a9..0c7df3d 100644
--- a/samples/BlazorApp/BlazorApp.csproj
+++ b/samples/BlazorApp/BlazorApp.csproj
@@ -1,9 +1,9 @@
- netstandard2.0
+ netstandard2.1
Exe
- 7.3
+ 8.0
3.0
diff --git a/samples/BlazorApp/Pages/TextFieldSample.razor b/samples/BlazorApp/Pages/TextFieldSample.razor
index 5140917..8ab3d2b 100644
--- a/samples/BlazorApp/Pages/TextFieldSample.razor
+++ b/samples/BlazorApp/Pages/TextFieldSample.razor
@@ -4,13 +4,35 @@
See TextField.cshtml for sources.
-
+
+
-@if (currentValue != null)
-{
-
You typed: @currentValue
-}
+ @if (currentText != null)
+ {
+ You typed: @currentText
+ }
+
+
+
+
+
+ @if (currentPassword != null)
+ {
+
You typed: @currentPassword
+ }
+
+
+
+
+
+ @if (currentMultiLine != null)
+ {
+
You typed: @currentMultiLine
+ }
+
@functions {
- string currentValue;
+ string currentText;
+ string currentPassword;
+ string currentMultiLine;
}
diff --git a/samples/RazorComponentsApp/RazorComponentsApp.csproj b/samples/RazorComponentsApp/RazorComponentsApp.csproj
index 6ec7ab4..120a303 100644
--- a/samples/RazorComponentsApp/RazorComponentsApp.csproj
+++ b/samples/RazorComponentsApp/RazorComponentsApp.csproj
@@ -1,8 +1,8 @@
- netcoreapp3.0
- 7.3
+ netcoreapp3.1
+ 8.0
diff --git a/src/RazorComponents.MaterialDesign/MdcTextArea.razor b/src/RazorComponents.MaterialDesign/MdcTextArea.razor
new file mode 100644
index 0000000..cc55ee3
--- /dev/null
+++ b/src/RazorComponents.MaterialDesign/MdcTextArea.razor
@@ -0,0 +1,23 @@
+@inherits MdcInputComponentBase
+@inject IJSRuntime jsRuntime
+
+
+
+@functions {
+ string id = Guid.NewGuid().ToString();
+ ElementReference textFieldElem;
+
+ [Parameter] public string Label { get; set; }
+ [Parameter] public int Rows { get; set; } = 4;
+ [Parameter] public int Cols { get; set; } = 40;
+
+ protected async override Task OnAfterFirstRenderAsync()
+ => await jsRuntime.InvokeAsync