/
LoginPrompt.jsx
79 lines (69 loc) · 1.75 KB
/
LoginPrompt.jsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
import React, { Component } from 'react'
export class LoginPrompt extends Component {
state = {
username: '',
password: ''
}
handleInputChanged = event => this.setState({ [event.target.name]: event.target.value })
handleFormSubmit = event => {
this.props.onSendData &&
this.props.onSendData({
type: 'login_prompt',
text: 'Provided login information',
username: this.state.username,
password: this.state.password,
sensitive: ['password']
})
event.preventDefault()
}
render_bot_active() {
return (
<form className={'bpw-form-container'} onSubmit={this.handleFormSubmit}>
<label>
<input
id="login_username"
type="input"
name="username"
placeholder="Username"
className="bpw-input"
onChange={this.handleInputChanged}
/>
</label>
<label>
<input
id="login_password"
type="password"
name="password"
placeholder="Password"
className="bpw-input"
onChange={this.handleInputChanged}
/>
</label>
<input id="login_submit" className={'bpw-button-alt'} type="submit" value="Submit" />
</form>
)
}
render_bot_past() {
return (
<div className={'bpw-special-action'}>
<p>* Login form *</p>
</div>
)
}
render_user() {
return (
<div className={'bpw-special-action'}>
<p>* Provided credentials *</p>
</div>
)
}
render() {
if (!this.props.isBotMessage) {
return this.render_user()
}
if (this.props.isLastMessage) {
return this.render_bot_active()
}
return this.render_bot_past()
}
}