import "choerodon-ui/lib/icon/style";
import _Icon from "choerodon-ui/lib/icon";

function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }

function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }

import React, { useEffect } from 'react';
import "./index.less";
import StatusTag from "../StatusTag";

var detailHeader = function detailHeader(_ref) {
  var viewId = _ref.viewId,
      status = _ref.status,
      triggerRef = _ref.triggerRef,
      appServiceName = _ref.appServiceName,
      aHref = _ref.aHref,
      mainStore = _ref.mainStore,
      appServiceId = _ref.appServiceId,
      projectId = _ref.projectId;

  function linkToGitlab() {
    return _linkToGitlab.apply(this, arguments);
  }

  function _linkToGitlab() {
    _linkToGitlab = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
      return regeneratorRuntime.wrap(function _callee$(_context) {
        while (1) {
          switch (_context.prev = _context.next) {
            case 0:
              _context.prev = 0;
              _context.next = 3;
              return mainStore.checkLinkToGitlab(projectId, appServiceId);

            case 3:
              window.open("".concat(aHref, "/commits/").concat(triggerRef));
              _context.next = 9;
              break;

            case 6:
              _context.prev = 6;
              _context.t0 = _context["catch"](0);
              throw new Error(_context.t0);

            case 9:
            case "end":
              return _context.stop();
          }
        }
      }, _callee, null, [[0, 6]]);
    }));
    return _linkToGitlab.apply(this, arguments);
  }

  return /*#__PURE__*/React.createElement("div", {
    className: "c7ncd-pipelineManage-optsDetail-header"
  }, /*#__PURE__*/React.createElement("span", null, "#", "".concat(viewId)), appServiceName && triggerRef && /*#__PURE__*/React.createElement("span", null, "(", /*#__PURE__*/React.createElement(_Icon, {
    type: "widgets_line"
  }), /*#__PURE__*/React.createElement("span", null, appServiceName), ' ', "-", /*#__PURE__*/React.createElement(_Icon, {
    type: "branch"
  }), /*#__PURE__*/React.createElement("span", {
    role: "none",
    onClick: linkToGitlab,
    className: "c7ncd-pipelineManage-optsDetail-header-ref"
  }, triggerRef), ")"), /*#__PURE__*/React.createElement(StatusTag, {
    status: status,
    size: 12
  }));
};

export default detailHeader;