import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs2/core-js/object/get-own-property-descriptor";
import _inheritsLoose from "../../inheritsLoose";
import _defineProperty from "@babel/runtime-corejs2/helpers/defineProperty";
import _applyDecoratedDescriptor from "@babel/runtime-corejs2/helpers/applyDecoratedDescriptor";

var _dec, _class, _init, _class2, _temp;

import Intact from 'intact-angular';
import template from './item.vdt';
import { findRouter, isExternalLink } from '../utils';
var BreadcrumbItem = (_dec = Intact.template(), (_class = (_temp = _class2 =
/*#__PURE__*/
function (_Intact) {
  _inheritsLoose(BreadcrumbItem, _Intact);

  function BreadcrumbItem() {
    return _Intact.apply(this, arguments) || this;
  }

  var _proto = BreadcrumbItem.prototype;

  _proto.defaults = function defaults() {
    return {
      to: undefined,
      separator: '>'
    };
  };

  _proto._mount = function _mount() {
    this.$router = findRouter(this);
  };

  _proto.onClick = function onClick() {
    var to = this.get('to');

    if (to) {
      var $router = this.$router;

      if ($router && !isExternalLink(to)) {
        $router.push(to);
      } else {
        window.location.href = to;
      }
    }
  };

  return BreadcrumbItem;
}(Intact), _defineProperty(_class2, "template", template), _defineProperty(_class2, "propTypes", {
  to: [String, Object],
  separator: [String, Intact.VNode, Array]
}), _defineProperty(_class2, "blocks", ['separator']), _temp), (_applyDecoratedDescriptor(_class, "template", [_dec], (_init = _Object$getOwnPropertyDescriptor(_class, "template"), _init = _init ? _init.value : undefined, {
  enumerable: true,
  configurable: true,
  writable: true,
  initializer: function initializer() {
    return _init;
  }
}), _class)), _class));
export { BreadcrumbItem as default };