import {
  useCommentPinMutation
} from "./chunk-QU6MQFDR.mjs";

// tmp-babel/comments/web/CommentItem/useCommentOptions/index.js
import { LinkIcon, PenEditIcon, PinIcon } from "@baseapp-frontend/design-system/components/web/icons";
import { jsx as _jsx } from "react/jsx-runtime";
function _slicedToArray(r, e) {
  return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
}
function _nonIterableRest() {
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}
function _unsupportedIterableToArray(r, a) {
  if (r) {
    if ("string" == typeof r) return _arrayLikeToArray(r, a);
    var t = {}.toString.call(r).slice(8, -1);
    return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
  }
}
function _arrayLikeToArray(r, a) {
  (null == a || a > r.length) && (a = r.length);
  for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
  return n;
}
function _iterableToArrayLimit(r, l) {
  var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
  if (null != t) {
    var e, n, i, u, a = [], f = true, o = false;
    try {
      if (i = (t = t.call(r)).next, 0 === l) {
        if (Object(t) !== t) return;
        f = false;
      } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = true) ;
    } catch (r2) {
      o = true, n = r2;
    } finally {
      try {
        if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
      } finally {
        if (o) throw n;
      }
    }
    return a;
  }
}
function _arrayWithHoles(r) {
  if (Array.isArray(r)) return r;
}
var useCommentOptions = function useCommentOptions2(_ref) {
  var comment = _ref.comment, onEdit = _ref.onEdit;
  var _useCommentPinMutatio = useCommentPinMutation(), _useCommentPinMutatio2 = _slicedToArray(_useCommentPinMutatio, 2), pinComment = _useCommentPinMutatio2[0], isPinningComment = _useCommentPinMutatio2[1];
  var handlePinComment = function handlePinComment2() {
    pinComment({
      variables: {
        id: comment.id
      }
    });
  };
  var handleEditComment = function handleEditComment2() {
    onEdit();
  };
  return [{
    disabled: true,
    icon: /* @__PURE__ */ _jsx(LinkIcon, {}),
    label: "Share Comment",
    onClick: function onClick() {
    },
    hasPermission: true,
    closeOnClick: true
  }, {
    disabled: isPinningComment,
    icon: /* @__PURE__ */ _jsx(PinIcon, {
      sx: {
        color: comment !== null && comment !== void 0 && comment.isPinned ? "info.main" : "action.active"
      }
    }),
    label: "".concat(comment !== null && comment !== void 0 && comment.isPinned ? "Unpin" : "Pin", " Comment"),
    onClick: handlePinComment,
    hasPermission: comment === null || comment === void 0 ? void 0 : comment.canPin,
    closeOnClick: true
  }, {
    disabled: false,
    icon: /* @__PURE__ */ _jsx(PenEditIcon, {}),
    label: "Edit Comment",
    onClick: handleEditComment,
    hasPermission: comment === null || comment === void 0 ? void 0 : comment.canChange,
    closeOnClick: true
  }];
};
var useCommentOptions_default = useCommentOptions;

export {
  useCommentOptions_default
};
//# sourceMappingURL=chunk-QM4NHF2Y.mjs.map