Skip to content
Snippets Groups Projects
TrackCommentOptions.js 917 B
Newer Older
import React, { useMemo } from 'react';
import { injectable, inject } from 'inversify';
chris's avatar
chris committed
import { TrackChangeOptionsTool } from 'wax-prosemirror-components';
import { isEmpty } from 'lodash';
import styled from 'styled-components';
import { v4 as uuidv4 } from 'uuid';
import ToolGroup from '../../lib/ToolGroup';

@injectable()
class TrackCommentOptions extends ToolGroup {
  tools = [];
  toolGroups = [];

chris's avatar
chris committed
  constructor(@inject('TrackOptions') trackOptions) {
    super();
    this.toolGroups = [
      {
chris's avatar
chris committed
        groups: [trackOptions],
      },
    ];
  }

  renderTools(view) {
    if (isEmpty(view)) return null;
chris's avatar
chris committed
    return (
      <TrackChangeOptionsTool
chris's avatar
chris committed
        key={uuidv4()}
chris's avatar
chris committed
        view={view}
        groups={this._toolGroups[0].groups.map(group => ({
          //   groupName: group.title.props.title,
          items: group._tools,
        }))}
      />
    );
  }
}

export default TrackCommentOptions;