"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});

var _reactIntl = require("react-intl");

const template = pluginContext => {
  const React = pluginContext.lib.React;
  var _pluginContext$layout = pluginContext.layoutComponents;
  const Col = _pluginContext$layout.Col,
        Cols = _pluginContext$layout.Cols,
        Panel = _pluginContext$layout.Panel,
        Row = _pluginContext$layout.Row;
  var _pluginContext$record = pluginContext.recordComponents;
  const Field = _pluginContext$record.Field,
        InputTable = _pluginContext$record.InputTable;


  return React.createElement(
    Field,
    { name: "document" },
    React.createElement(
      Panel,
      { name: "info", collapsible: true },
      React.createElement(
        Field,
        { name: "taxonTermGroupList" },
        React.createElement(
          Field,
          { name: "taxonTermGroup" },
          React.createElement(
            Panel,
            null,
            React.createElement(
              Row,
              null,
              React.createElement(Field, { name: "termDisplayName" }),
              React.createElement(Field, { name: "termFormattedDisplayName" }),
              React.createElement(Field, { name: "termQualifier" }),
              React.createElement(Field, { name: "termStatus" })
            ),
            React.createElement(
              Row,
              null,
              React.createElement(Field, { name: "termType" }),
              React.createElement(Field, { name: "termFlag" }),
              React.createElement(Field, { name: "taxonomicStatus" }),
              React.createElement(Field, { name: "termLanguage" }),
              React.createElement(Field, { name: "termPrefForLang" })
            ),
            React.createElement(
              InputTable,
              { name: "termSource" },
              React.createElement(Field, { name: "termSource" }),
              React.createElement(Field, { name: "termSourceDetail" }),
              React.createElement(Field, { name: "termSourceID" }),
              React.createElement(Field, { name: "termSourceNote" })
            )
          )
        )
      ),
      React.createElement(
        Row,
        null,
        React.createElement(Field, { name: "taxonRank" }),
        React.createElement(Field, { name: "taxonCurrency" })
      ),
      React.createElement(
        Field,
        { name: "taxonAuthorGroupList" },
        React.createElement(
          Field,
          { name: "taxonAuthorGroup" },
          React.createElement(Field, { name: "taxonAuthor" }),
          React.createElement(Field, { name: "taxonAuthorType" })
        )
      ),
      React.createElement(
        Cols,
        null,
        React.createElement(
          Col,
          null,
          React.createElement(Field, { name: "taxonYear" }),
          React.createElement(Field, { name: "taxonIsNamedHybrid" })
        ),
        React.createElement(
          Col,
          null,
          React.createElement(
            Field,
            { name: "taxonCitationList" },
            React.createElement(Field, { name: "taxonCitation" })
          )
        )
      ),
      React.createElement(Field, { name: "taxonNote" }),
      React.createElement(
        Field,
        { name: "commonNameGroupList" },
        React.createElement(
          Field,
          { name: "commonNameGroup" },
          React.createElement(Field, { name: "commonName" }),
          React.createElement(Field, { name: "commonNameLanguage" }),
          React.createElement(Field, { name: "commonNameSource" }),
          React.createElement(Field, { name: "commonNameSourceDetail" })
        )
      )
    ),
    React.createElement(
      Panel,
      { name: "hierarchy", collapsible: true, collapsed: true },
      React.createElement(Field, { name: "relation-list-item", subpath: "rel:relations-common-list" })
    )
  );
};

exports.default = pluginContext => ({
  messages: (0, _reactIntl.defineMessages)({
    name: {
      "id": "form.taxon.default.name",
      "defaultMessage": "Standard Template"
    }
  }),
  template: template(pluginContext)
});