import dash
from dash.dependencies import Input, Output
import dash_html_components as html
import dash_core_components as dcc

app = dash.Dash(__name__)

app.layout = html.Div([
    dcc.Textarea(
        id='textarea-example',
        value='Textarea content initialized\nwith multiple lines of text',
        style={'width': '100%', 'height': 300},
    ),
    html.Div(id='textarea-example-output', style={'whiteSpace': 'pre-line'})
])

@app.callback(
    Output('textarea-example-output', 'children'),
    [Input('textarea-example', 'value')]
)
def update_output(value):
    return 'You have entered: \n{}'.format(value)

if __name__ == '__main__':
    app.run_server(debug=True)

[((6, 6, 6, 25), 'dash.Dash', 'dash.Dash', ({(6, 16, 6, 24): '__name__'}, {}), '(__name__)', False, 'import dash\n'), ((18, 4, 18, 49), 'dash.dependencies.Output', 'Output', ({(18, 11, 18, 36): '"""textarea-example-output"""', (18, 38, 18, 48): '"""children"""'}, {}), "('textarea-example-output', 'children')", False, 'from dash.dependencies import Input, Output\n'), ((9, 4, 13, 5), 'dash_core_components.Textarea', 'dcc.Textarea', (), '', True, 'import dash_core_components as dcc\n'), ((14, 4, 14, 76), 'dash_html_components.Div', 'html.Div', (), '', True, 'import dash_html_components as html\n'), ((19, 5, 19, 39), 'dash.dependencies.Input', 'Input', ({(19, 11, 19, 29): '"""textarea-example"""', (19, 31, 19, 38): '"""value"""'}, {}), "('textarea-example', 'value')", False, 'from dash.dependencies import Input, Output\n')]