import React, {Fragment} from 'react'; import ls from './Expressions.less'; import cmn from 'ui/styles/common.less'; import ToolButton from 'ui/components/ToolButton'; import Fa from 'ui/components/Fa'; import Row from 'ui/components/Row'; import connect from 'ui/connect'; import mapContext from 'ui/mapContext'; import bind from 'ui/bind'; import cx from 'classnames'; import {actionDecorator} from '../actions/actionDecorators'; import {combine} from 'lstream'; import Folder from 'ui/components/Folder'; import Stack from '../../../../modules/ui/components/Stack'; @connect(streams => combine(streams.expressions.synced, streams.expressions.errors) .map(([synced, errors])=> ({synced, errors}))) @mapContext(ctx => ({ reevaluateExpressions: ctx.services.expressions.reevaluateExpressions })) export default class Expressions extends React.Component { state = { activeTab: 'Script' }; render() { let {errors, synced, table, reevaluateExpressions} = this.props; const tabBtn = (name, icon) => { return this.setState({activeTab: name})} pressed={this.state.activeTab === name}>{icon} {name}; }; return
{tabBtn('Script', )} {tabBtn('Table', )} {errors.length > 0 && } {!synced && }
{this.state.activeTab === 'Script' &&