Merge branch 'master' of https://git.loafle.net/overflow/overflow_app
This commit is contained in:
commit
847baee964
|
@ -23,6 +23,7 @@
|
||||||
"@types/auth0-lock": "^10.16.0",
|
"@types/auth0-lock": "^10.16.0",
|
||||||
"@types/history": "^4.6.0",
|
"@types/history": "^4.6.0",
|
||||||
"@types/jest": "^19.2.4",
|
"@types/jest": "^19.2.4",
|
||||||
|
"@types/lodash": "^4.14.69",
|
||||||
"@types/prop-types": "^15.5.1",
|
"@types/prop-types": "^15.5.1",
|
||||||
"@types/react": "^15.0.38",
|
"@types/react": "^15.0.38",
|
||||||
"@types/react-addons-test-utils": "^0.14.19",
|
"@types/react-addons-test-utils": "^0.14.19",
|
||||||
|
@ -72,6 +73,7 @@
|
||||||
"history": "^4.6.3",
|
"history": "^4.6.3",
|
||||||
"immutable": "^3.8.1",
|
"immutable": "^3.8.1",
|
||||||
"inversify": "^4.2.0",
|
"inversify": "^4.2.0",
|
||||||
|
"lodash": "^4.17.4",
|
||||||
"prop-types": "^15.5.10",
|
"prop-types": "^15.5.10",
|
||||||
"react": "^15.6.1",
|
"react": "^15.6.1",
|
||||||
"react-dom": "^15.6.1",
|
"react-dom": "^15.6.1",
|
||||||
|
|
BIN
public/asset/image/overFlow_CI_blue_180.png
Normal file
BIN
public/asset/image/overFlow_CI_blue_180.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.1 KiB |
|
@ -16,7 +16,7 @@
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div id="appContainer"></div>
|
<div id="appContainer" class="fullHeight"></div>
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
|
@ -28,8 +28,8 @@ export class LogoBar extends React.Component<any, any> {
|
||||||
<Container fluid style={{ background: '#f8f8f8', 'paddingRight': '7px' }}>
|
<Container fluid style={{ background: '#f8f8f8', 'paddingRight': '7px' }}>
|
||||||
<Menu borderless secondary >
|
<Menu borderless secondary >
|
||||||
<Menu.Item name='logo'>
|
<Menu.Item name='logo'>
|
||||||
{/* <Image src='https://lh3.googleusercontent.com/EaEViB7RYr3Rhhez8zY0TYsNsS5Rv2i63kyiQ5ym0rhQh38KRXBh7BDFo4mjDTDU_Hm6FAVg35247ZM1wE6cO-TuBP4wxYW2SG4hYoojqkUomu587xg3t50VGUSceK17-LUZhM-5XoCsXUXBHtfXVMqMZ2rUb23tgm7Kuv7eTgZZz0o9_dB0lApoi57EBVBNX8_qIDSH3YmGfvqhnKeh5AYnnBG_QXlTg1JExwtMehCe8KgXs4-vLuVicPCCuJ2AXSoWFpVXL9TVhrrMOkeuGd-6PGAFiNxeTG6NylQKwbQikx3Mx7KmGq3iSc8mqp0AmwjptG2DtS7nqwNaAZAi1DtraHYgJcE_tfpEgnZfFSWmVYQYcUe98pfZR11OfJErdJxE3w-mL1b4MoyufB0VkSlFM1BpMlfP3OsnnDIdNAXthT6MuLtI2iLv_CNeoDKi3fdH-zIcSmoArgAFrAo0-9oYUfvQDdaC_8MMddc97b_L78fzFOPRGIf52Ajr-Ia6sjdyDFdJ46-wPKfMW8XHnFfA96NsIcA-HYRZ7GTteJOzVq6HEabwnurZdTxdmCjzGHcb7OEu00DkVMhM6WbWZ0L8HWpIk92sy-sKbprHe-9oh_9WaxJzPrlG=w180-h30-no'
|
{/*<Image src='../asset/image/overFlow_CI_blue_180.png'
|
||||||
style={{width:'120px'}} onClick={this.handleLogoClick} /> */}
|
style={{width:'120px'}} onClick={this.handleLogoClick} /> */}
|
||||||
</Menu.Item>
|
</Menu.Item>
|
||||||
<Popup trigger={<Menu.Item
|
<Popup trigger={<Menu.Item
|
||||||
position='right'
|
position='right'
|
||||||
|
|
|
@ -7,7 +7,7 @@ import TitleBarContainer from './TitleBarContainer';
|
||||||
import LeftMenu from './LeftMenu';
|
import LeftMenu from './LeftMenu';
|
||||||
|
|
||||||
import TargetDetail from '../../views/infrastructure/target/Detail';
|
import TargetDetail from '../../views/infrastructure/target/Detail';
|
||||||
import ProbeHistory from '../../views/monitoring/probe/History';
|
import SensorList from '../../views/monitoring/sensor/List';
|
||||||
|
|
||||||
|
|
||||||
export interface Props extends RouteComponentProps<any> {
|
export interface Props extends RouteComponentProps<any> {
|
||||||
|
@ -30,11 +30,11 @@ export class TargetDetailLayout extends React.Component<Props, State> {
|
||||||
const sub = [
|
const sub = [
|
||||||
{
|
{
|
||||||
'name': 'Info',
|
'name': 'Info',
|
||||||
'path': this.state.currUrl + 'info',
|
'path': this.state.currUrl + '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'name': 'History',
|
'name': 'Sensor',
|
||||||
'path': this.state.currUrl + 'history',
|
'path': this.state.currUrl + '/sensor',
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
return (
|
return (
|
||||||
|
@ -45,7 +45,7 @@ export class TargetDetailLayout extends React.Component<Props, State> {
|
||||||
<TitleBarContainer title='Target Details' sub={sub} location={this.props.location.pathname} />
|
<TitleBarContainer title='Target Details' sub={sub} location={this.props.location.pathname} />
|
||||||
<Switch>
|
<Switch>
|
||||||
<Route exact={true} path={`${this.props.match.url}/:id`} component={TargetDetail} />
|
<Route exact={true} path={`${this.props.match.url}/:id`} component={TargetDetail} />
|
||||||
<Route exact={true} path={`${this.props.match.url}/:id/history`} component={ProbeHistory} />
|
<Route exact={true} path={`${this.props.match.url}/:id/sensor`} component={SensorList} />
|
||||||
</Switch>
|
</Switch>
|
||||||
<Footer />
|
<Footer />
|
||||||
</Segment>
|
</Segment>
|
||||||
|
|
|
@ -144,8 +144,15 @@ export class DiscoveryTable extends React.Component<Props, State> {
|
||||||
<Table.Cell><Input tabIndex='6' placeholder='End Port' onChange={this.handleInput.bind(this)} /></Table.Cell>
|
<Table.Cell><Input tabIndex='6' placeholder='End Port' onChange={this.handleInput.bind(this)} /></Table.Cell>
|
||||||
</Table.Row>
|
</Table.Row>
|
||||||
</Table.Body>
|
</Table.Body>
|
||||||
|
<Table.Footer>
|
||||||
|
<Table.Row>
|
||||||
|
<Table.HeaderCell colSpan='2'>
|
||||||
|
<Button icon='find' floated='right' labelPosition='left'
|
||||||
|
content='Start' primary onClick={this.discoveryStartHandler.bind(this)} />
|
||||||
|
</Table.HeaderCell>
|
||||||
|
</Table.Row>
|
||||||
|
</Table.Footer>
|
||||||
</Table>
|
</Table>
|
||||||
<Button floated='right' primary onClick={this.discoveryStartHandler.bind(this)}> Start </Button>
|
|
||||||
</Container>
|
</Container>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,29 +37,23 @@ export class PWChange extends React.Component<Props, State> {
|
||||||
public render(): JSX.Element {
|
public render(): JSX.Element {
|
||||||
return (
|
return (
|
||||||
<Container fluid>
|
<Container fluid>
|
||||||
<Grid>
|
<Grid centered verticalAlign='middle'>
|
||||||
<Grid.Row>
|
<Grid.Column mobile={16} tablet={6} computer={5}>
|
||||||
<Grid.Column mobile={16} tablet={5} computer={5}>
|
<Form>
|
||||||
</Grid.Column>
|
<Form.Input placeholder='Password' type='password' onChange={
|
||||||
<Grid.Column mobile={16} tablet={6} computer={6}>
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
<Form>
|
this.setState({ pass: data.value });
|
||||||
<Form.Input placeholder='Password' type='password' onChange={
|
}} />
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
<Form.Input placeholder='Password Confirm' type='password' onChange={
|
||||||
this.setState({ pass: data.value });
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
}} />
|
this.setState({ passCon: data.value });
|
||||||
<Form.Input placeholder='Password Confirm' type='password' onChange={
|
}} />
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
<Form.Group>
|
||||||
this.setState({ passCon: data.value });
|
<Button primary fluid style={{margin:'7'}} onClick={this.passChangeClick}> Submit </Button>
|
||||||
}} />
|
<Button fluid style={{margin:'7'}}> Cancel </Button>
|
||||||
<Form.Group>
|
</Form.Group>
|
||||||
<Button primary fluid style={{margin:'7'}} onClick={this.passChangeClick}> Submit </Button>
|
</Form>
|
||||||
<Button fluid style={{margin:'7'}}> Cancel </Button>
|
</Grid.Column>
|
||||||
</Form.Group>
|
|
||||||
</Form>
|
|
||||||
</Grid.Column>
|
|
||||||
<Grid.Column mobile={16} tablet={4} computer={5}>
|
|
||||||
</Grid.Column>
|
|
||||||
</Grid.Row>
|
|
||||||
</Grid>
|
</Grid>
|
||||||
</Container>
|
</Container>
|
||||||
);
|
);
|
||||||
|
|
|
@ -50,68 +50,57 @@ export class SignIn extends React.Component<Props, State> {
|
||||||
|
|
||||||
public render(): JSX.Element {
|
public render(): JSX.Element {
|
||||||
return (
|
return (
|
||||||
<Container fluid>
|
<Grid textAlign='center' className='fullHeight' verticalAlign='middle'>
|
||||||
<Grid>
|
<Grid.Column mobile={16} tablet={6} computer={5}>
|
||||||
<Grid.Row>
|
<Form>
|
||||||
<Grid.Column mobile={16} tablet={5} computer={5}>
|
<Form.Input fluid placeholder='Email' onChange={
|
||||||
</Grid.Column>
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
<Grid.Column mobile={16} tablet={6} computer={6}>
|
this.setState({ email: data.value });
|
||||||
<Form>
|
}} />
|
||||||
<Form.Input fluid placeholder='Email' onChange={
|
<Form.Input fluid placeholder='Password' type='password' onChange={
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
this.setState({ email: data.value });
|
this.setState({ pass: data.value });
|
||||||
}} />
|
}} />
|
||||||
<Form.Input fluid placeholder='Password' type='password' onChange={
|
<div style={{textAlign:'right'}}>
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
<a style={{fontSize:10}} onClick={this.forgotPopupOpen}>Forgot Password</a>
|
||||||
this.setState({ pass: data.value });
|
</div>
|
||||||
}} />
|
<Form.Group>
|
||||||
<div style={{textAlign:'right'}}>
|
<Button fluid primary style={{margin:'7'}} onClick={ this.signInClick.bind(this) }> Sign In </Button>
|
||||||
<a style={{fontSize:10}} onClick={this.forgotPopupOpen}>Forgot Password</a>
|
<Button fluid style={{margin:'7'}} href='/#/test2'> Sign Up </Button>
|
||||||
</div>
|
</Form.Group>
|
||||||
<Form.Group>
|
</Form>
|
||||||
<Button fluid primary style={{margin:'7'}} onClick={ this.signInClick.bind(this) }> Sign In </Button>
|
|
||||||
<Button fluid style={{margin:'7'}} href='/#/test2'> Sign Up </Button>
|
|
||||||
</Form.Group>
|
|
||||||
</Form>
|
|
||||||
</Grid.Column>
|
|
||||||
<Grid.Column mobile={16} tablet={4} computer={5}>
|
|
||||||
</Grid.Column>
|
|
||||||
</Grid.Row>
|
|
||||||
</Grid>
|
|
||||||
|
|
||||||
<Modal size='small' open={this.state.forgotPopup} onClose={this.PopupClose}>
|
<Modal size='small' open={this.state.forgotPopup} onClose={this.PopupClose}>
|
||||||
<Modal.Header>Change your password</Modal.Header>
|
<Modal.Header>Change your password</Modal.Header>
|
||||||
<Modal.Content >
|
<Modal.Content >
|
||||||
Enter email address
|
Enter email address
|
||||||
<Grid>
|
<Grid centered>
|
||||||
<Grid.Column mobile={16} tablet={3} computer={4}>
|
<Grid.Column mobile={14} tablet={8} computer={6}>
|
||||||
</Grid.Column>
|
<Input fluid placeholder='Email' />
|
||||||
<Grid.Column mobile={16} tablet={10} computer={8}>
|
</Grid.Column>
|
||||||
<Input fluid placeholder='Email' />
|
</Grid>
|
||||||
</Grid.Column>
|
</Modal.Content>
|
||||||
<Grid.Column mobile={16} tablet={3} computer={4}>
|
<Modal.Actions>
|
||||||
</Grid.Column>
|
<Button primary onClick={this.sendComOpen}> Submit </Button>
|
||||||
</Grid>
|
<Button onClick={this.PopupClose}> Cancel </Button>
|
||||||
</Modal.Content>
|
</Modal.Actions>
|
||||||
<Modal.Actions>
|
</Modal>
|
||||||
<Button primary onClick={this.sendComOpen}> Submit </Button>
|
|
||||||
<Button onClick={this.PopupClose}> Cancel </Button>
|
|
||||||
</Modal.Actions>
|
|
||||||
</Modal>
|
|
||||||
|
|
||||||
<Modal size='small' open={this.state.sendComPopup} onClose={this.PopupClose}>
|
<Modal size='small' open={this.state.sendComPopup} onClose={this.PopupClose}>
|
||||||
<Modal.Header>Send Complete</Modal.Header>
|
<Modal.Header>Send Complete</Modal.Header>
|
||||||
<Modal.Content>
|
<Modal.Content>
|
||||||
<Modal.Description>
|
<Modal.Description>
|
||||||
<Header>비밀번호 변경이 신청 되었습니다.</Header>
|
<Header>비밀번호 변경이 신청 되었습니다.</Header>
|
||||||
<p>수신하신 메일의 주소에서 비밀번호 변경을 완료 하시기 바랍니다.</p>
|
<p>수신하신 메일의 주소에서 비밀번호 변경을 완료 하시기 바랍니다.</p>
|
||||||
</Modal.Description>
|
</Modal.Description>
|
||||||
</Modal.Content>
|
</Modal.Content>
|
||||||
<Modal.Actions>
|
<Modal.Actions>
|
||||||
<Button primary onClick={this.PopupClose}> Ok </Button>
|
<Button primary onClick={this.PopupClose}> Ok </Button>
|
||||||
</Modal.Actions>
|
</Modal.Actions>
|
||||||
</Modal>
|
</Modal>
|
||||||
</Container>
|
|
||||||
|
</Grid.Column>
|
||||||
|
</Grid>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,55 +58,49 @@ export class SignUp extends React.Component<Props, State> {
|
||||||
public render(): JSX.Element {
|
public render(): JSX.Element {
|
||||||
return (
|
return (
|
||||||
<Container fluid>
|
<Container fluid>
|
||||||
<Grid>
|
<Grid centered verticalAlign='middle'>
|
||||||
<Grid.Row>
|
<Grid.Column mobile={16} tablet={6} computer={5}>
|
||||||
<Grid.Column mobile={16} tablet={5} computer={5}>
|
<Form>
|
||||||
</Grid.Column>
|
<Form.Input fluid value={this.state.email} placeholder='Email' onChange={
|
||||||
<Grid.Column mobile={16} tablet={6} computer={6}>
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
<Form>
|
this.setState({ email: data.value });
|
||||||
<Form.Input fluid value={this.state.email} placeholder='Email' onChange={
|
}} />
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
<Form.Input fluid placeholder='Name' onChange= {
|
||||||
this.setState({ email: data.value });
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
}} />
|
this.setState({ name: data.value });
|
||||||
<Form.Input fluid placeholder='Name' onChange= {
|
}
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
}/>
|
||||||
this.setState({ name: data.value });
|
<Form.Input fluid placeholder='Password' type='password' onChange={
|
||||||
}
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
}/>
|
this.setState({ pass: data.value });
|
||||||
<Form.Input fluid placeholder='Password' type='password' onChange={
|
}
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
} />
|
||||||
this.setState({ pass: data.value });
|
<Form.Input fluid placeholder='Password Confirm' type='password' onChange={
|
||||||
}
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
} />
|
this.setState({ passCon: data.value });
|
||||||
<Form.Input fluid placeholder='Password Confirm' type='password' onChange={
|
}
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
} />
|
||||||
this.setState({ passCon: data.value });
|
<Form.Input fluid placeholder='Company' onChange={
|
||||||
}
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
} />
|
this.setState({ company: data.value });
|
||||||
<Form.Input fluid placeholder='Company' onChange={
|
}
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
}/>
|
||||||
this.setState({ company: data.value });
|
<Form.Select fluid value={this.state.country} placeholder='Select your country' options={options} onChange={
|
||||||
}
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
}/>
|
this.setState({ country: data.value });
|
||||||
<Form.Select fluid value={this.state.country} placeholder='Select your country' options={options} onChange={
|
}
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
} />
|
||||||
this.setState({ country: data.value });
|
<Form.Input fluid placeholder='phone' onChange={
|
||||||
}
|
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
||||||
} />
|
this.setState({ phone: data.value });
|
||||||
<Form.Input fluid placeholder='phone' onChange={
|
}
|
||||||
(event: React.SyntheticEvent<HTMLInputElement>, data: InputOnChangeData) => {
|
} />
|
||||||
this.setState({ phone: data.value });
|
<Form.Group>
|
||||||
}
|
<Button primary fluid style={{margin:'7'}} onClick={this.signUpClick}> Sign Up </Button>
|
||||||
} />
|
<Button fluid style={{margin:'7'}}> Cancel </Button>
|
||||||
<Form.Group>
|
</Form.Group>
|
||||||
<Button primary fluid style={{margin:'7'}} onClick={this.signUpClick}> Sign Up </Button>
|
</Form>
|
||||||
<Button fluid style={{margin:'7'}}> Cancel </Button>
|
</Grid.Column>
|
||||||
</Form.Group>
|
|
||||||
</Form>
|
|
||||||
</Grid.Column>
|
|
||||||
<Grid.Column mobile={16} tablet={4} computer={5}>
|
|
||||||
</Grid.Column>
|
|
||||||
</Grid.Row>
|
|
||||||
</Grid>
|
</Grid>
|
||||||
</Container>
|
</Container>
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ export function mapDispatchToProps(dispatch: Dispatch<any>): DispatchProps {
|
||||||
return {
|
return {
|
||||||
onRead: (id: string) => {
|
onRead: (id: string) => {
|
||||||
dispatch(targetDetailActions.request(id));
|
dispatch(targetDetailActions.request(id));
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -86,7 +86,7 @@ export class TargetDetail extends React.Component<Props, State> {
|
||||||
return (
|
return (
|
||||||
<Container fluid>
|
<Container fluid>
|
||||||
<TargetBasicInfo target={this.state.targetTemp} />
|
<TargetBasicInfo target={this.state.targetTemp} />
|
||||||
<SensorList target={this.props.target} />
|
{/*<SensorList target={this.props.target} />*/}
|
||||||
</Container>
|
</Container>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user