# m3e/textarea_autosize

TextareaAutosize is a non-visual element used to automatically resize a `textarea` to fit its content.

This file was generated: By: m3e/generator version 0.1.0 At: 2026-05-05T14:38:23+10:00

         DO NOT EDIT

# Types

## Config

</>

Config is a public record for configuring this component.

    pub type Config {
      Config(
        disabled: Disabled,
        for: option.Option(String),
        max_rows: Float,
        min_rows: Float,
      )
    }

### Constructors

-     Config(
        disabled: Disabled,
        for: option.Option(String),
        max_rows: Float,
        min_rows: Float,
      )

## Disabled

</>

Disabled is whether auto-sizing is disabled.

    pub type Disabled {
      IsDisabled
      IsNotDisabled
    }

### Constructors

-     IsDisabled

-     IsNotDisabled

## TextareaAutosize

opaque </>

TextareaAutosize is a View Model for this component

## Fields:

- disabled: Whether auto-sizing is disabled.
- for: The identifier of the interactive control to which this element is attached.
- max_rows: The maximum amount of rows in the `textarea`.
- min_rows: The minimum amount of rows in the `textarea`.

    pub opaque type TextareaAutosize

# Values

## default_config

</>

    pub fn default_config() -> Config

default_config is the default configuration for this component.

## default_disabled

</>

    pub const default_disabled: Disabled

## default_for

</>

    pub const default_for: option.Option(String)

## default_max_rows

</>

    pub const default_max_rows: Float

## default_min_rows

</>

    pub const default_min_rows: Float

## disabled

</>

    pub fn disabled(
      record: TextareaAutosize,
      disabled: Disabled,
    ) -> TextareaAutosize

disabled sets the value of disabled for this TextareaAutosize.

## for

</>

    pub fn for(
      record: TextareaAutosize,
      for: option.Option(String),
    ) -> TextareaAutosize

for sets the value of for for this TextareaAutosize.

## from_config

</>

    pub fn from_config(config: Config) -> TextareaAutosize

from_config creates a new TextareaAutosize from the given configuration.

## max_rows

</>

    pub fn max_rows(
      record: TextareaAutosize,
      max_rows: Float,
    ) -> TextareaAutosize

max_rows sets the value of max_rows for this TextareaAutosize.

## min_rows

</>

    pub fn min_rows(
      record: TextareaAutosize,
      min_rows: Float,
    ) -> TextareaAutosize

min_rows sets the value of min_rows for this TextareaAutosize.

## new

</>

    pub fn new() -> TextareaAutosize

new creates a new TextareaAutosize with the default configuration.

## render

</>

    pub fn render(
      model: TextareaAutosize,
      attributes: List(attribute.Attribute(msg)),
      children: List(element.Element(msg)),
    ) -> element.Element(msg)

render creates a Lustre Element for a TextareaAutosize

## render_config

</>

    pub fn render_config(
      c: Config,
      attributes: List(attribute.Attribute(msg)),
      children: List(element.Element(msg)),
    ) -> element.Element(msg)

render_config creates a Lustre Element from a TextareaAutosize Config

✨