"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 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: "citationTermGroupList" },
        React.createElement(
          Field,
          { name: "citationTermGroup" },
          React.createElement(
            Panel,
            null,
            React.createElement(
              Row,
              null,
              React.createElement(Field, { name: "termDisplayName" }),
              React.createElement(Field, { name: "termStatus" })
            ),
            React.createElement(
              Row,
              null,
              React.createElement(Field, { name: "termType" }),
              React.createElement(Field, { name: "termFlag" }),
              React.createElement(Field, { name: "termLanguage" }),
              React.createElement(Field, { name: "termPrefForLang" })
            ),
            React.createElement(Field, { name: "termFullCitation" }),
            React.createElement(Field, { name: "termTitle" }),
            React.createElement(Field, { name: "termSubTitle" }),
            React.createElement(
              Row,
              null,
              React.createElement(Field, { name: "termSectionTitle" }),
              React.createElement(Field, { name: "termVolume" }),
              React.createElement(Field, { name: "termIssue" })
            ),
            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(
        Field,
        { name: "citationPublicationInfoGroupList" },
        React.createElement(
          Field,
          { name: "citationPublicationInfoGroup" },
          React.createElement(Field, { name: "publisher" }),
          React.createElement(Field, { name: "publicationPlace" }),
          React.createElement(Field, { name: "publicationDate" }),
          React.createElement(Field, { name: "edition" }),
          React.createElement(Field, { name: "pages" })
        )
      ),
      React.createElement(
        Field,
        { name: "citationAgentInfoGroupList" },
        React.createElement(
          Field,
          { name: "citationAgentInfoGroup" },
          React.createElement(Field, { name: "agent" }),
          React.createElement(Field, { name: "role" }),
          React.createElement(Field, { name: "note" })
        )
      ),
      React.createElement(Field, { name: "citationNote" }),
      React.createElement(
        Field,
        { name: "citationResourceIdentGroupList" },
        React.createElement(
          Field,
          { name: "citationResourceIdentGroup" },
          React.createElement(Field, { name: "resourceIdent" }),
          React.createElement(Field, { name: "type" }),
          React.createElement(Field, { name: "captureDate" })
        )
      ),
      React.createElement(
        Field,
        { name: "citationRelatedTermsGroupList" },
        React.createElement(
          Field,
          { name: "citationRelatedTermsGroup" },
          React.createElement(Field, { name: "relatedTerm" }),
          React.createElement(Field, { name: "relationType" })
        )
      )
    ),
    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.citation.default.name",
      "defaultMessage": "Standard Template"
    }
  }),
  template: template(pluginContext)
});