diff options
author | geireann <geireann.lindfield@gmail.com> | 2021-10-14 15:01:19 -0400 |
---|---|---|
committer | geireann <geireann.lindfield@gmail.com> | 2021-10-14 15:01:19 -0400 |
commit | 5bbd1b35d2c3855eae8405e26deb0c6679cc7c26 (patch) | |
tree | c9d999f36b078d7fd8f55a74c94ce495c9fa8d4e /src/client/views/nodes/button/toggleButton/ToggleButton.tsx | |
parent | be4fd2492ad706f30af28f33133a4df0e8049e12 (diff) | |
parent | ed68bbec549dedeb89bcb584151b097863b52d0d (diff) |
Merge branch 'master' into schema-view-En-Hua
Diffstat (limited to 'src/client/views/nodes/button/toggleButton/ToggleButton.tsx')
-rw-r--r-- | src/client/views/nodes/button/toggleButton/ToggleButton.tsx | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/client/views/nodes/button/toggleButton/ToggleButton.tsx b/src/client/views/nodes/button/toggleButton/ToggleButton.tsx new file mode 100644 index 000000000..dca6487d8 --- /dev/null +++ b/src/client/views/nodes/button/toggleButton/ToggleButton.tsx @@ -0,0 +1,34 @@ +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import React, { Component } from 'react'; +import { BoolCast } from '../../../../../fields/Types'; +import { Colors } from '../../../global/globalEnums'; +import { IButtonProps } from '../ButtonInterface'; + +export class ToggleButton extends Component<IButtonProps> { + render() { + const type = this.props.type; + // Determine the type of toggle button + const switchToggle: boolean = BoolCast(this.props.rootDoc.switchToggle); + + if (switchToggle) { + return ( + <div className={`menuButton ${type} ${'switch'}`}> + <label className="switch"> + <input type="checkbox" + checked={this.props.backgroundColor === Colors.MEDIUM_BLUE} + /> + <span className="slider round"></span> + </label> + </div> + ); + } else { + return ( + <div className={`menuButton ${type}`} + style={{ opacity: 1, backgroundColor: this.props.backgroundColor, color: this.props.color }}> + <FontAwesomeIcon className={`fontIconBox-icon-${type}`} icon={this.props.icon} color={this.props.color} /> + {this.props.label} + </div> + ); + } + } +}
\ No newline at end of file |