render()

in modules/manifold/src/components/ui/segment-filters-control/segment-panel.js [78:121]


  render() {
    const {
      nSegments,
      segmentId,
      filters,
      columnDefs,
      onRemoveSegment,
      onUpdateFilterValue,
    } = this.props;
    const {isOpen} = this.state;

    return (
      <Container isOpen={isOpen}>
        <Header isOpen={isOpen}>
          <HeaderTextGroup onClick={this._onToggleOpen}>
            <IconButton>
              {isOpen ? <ChevronDown size={22} /> : <ChevronRight size={22} />}
            </IconButton>
            {`segment ${segmentId}`}
          </HeaderTextGroup>
          <IconButton
            disabled={nSegments <= 2}
            onClick={() => onRemoveSegment(segmentId)}
          >
            <Delete size={18} />
          </IconButton>
        </Header>
        {isOpen && (
          <div>
            {filters.map((filter, i) => (
              <SegmentFilter
                key={filter.key}
                segmentId={segmentId}
                filterId={i}
                filter={filter}
                columnDef={columnDefs[filter.key]}
                onUpdateFilterValue={onUpdateFilterValue}
              />
            ))}
          </div>
        )}
      </Container>
    );
  }