"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var open_inline_ai_modal_exports = {};
__export(open_inline_ai_modal_exports, {
  openInlineAIModal: () => openInlineAIModal
});
module.exports = __toCommonJS(open_inline_ai_modal_exports);
var import_pos_to_dom_rect = require("./../_shared/pos-to-dom-rect.js");
var import_modal = require("./modal.js");
const openInlineAIModal = ({
  editor,
  modalService,
  positioning = {},
  interceptInlinePrompt,
  generatingLabel
}) => {
  if (modalService.isModalOpen(import_modal.INLINE_AI_MODAL_ID)) {
    return modalService.getModal(import_modal.INLINE_AI_MODAL_ID);
  }
  return modalService.openModal({
    id: import_modal.INLINE_AI_MODAL_ID,
    Component: import_modal.AiModalNg,
    componentProps: {
      interceptInlinePrompt,
      generatingLabel
    },
    layout: "manual",
    type: "exclusive",
    positioning: {
      referenceElement: (0, import_pos_to_dom_rect.getFakeReferenceElement)(editor),
      placement: "bottom",
      ...positioning
    },
    returnFocusToEditor: false
  });
};
//# sourceMappingURL=open-inline-ai-modal.js.map
