import s, { sticky as r } from "tippy.js";
const d = [
  "bottom",
  "bottom-start",
  "bottom-end",
  "right",
  "right-start",
  "right-end",
  "left",
  "left-start",
  "left-end",
  "top",
  "top-start",
  "top-end"
], m = [!0, !1, "reference", "popper"], a = (e, t) => {
  const { contentElement: n } = { ...t };
  return delete t.contentElement, s(e, {
    ...t,
    plugins: [r],
    render: () => c(n)
  });
}, u = (e, t) => s(e, {
  ...t,
  plugins: [r]
}), f = ({
  boundary: e = "clippingParents",
  fallbackPlacements: t = [],
  onChangePlacement: n = () => {
  },
  hasHideModifierEnabled: i = !1,
  // If set to false the dialog will display over top of the anchor when there is insufficient space.
  // if set to true it will never move from its position relative to the anchor and will clip instead.
  tether: o = !0
} = {}) => ({
  modifiers: [
    {
      name: "flip",
      options: {
        fallbackPlacements: t,
        boundary: e
      }
    },
    {
      name: "hide",
      enabled: i
    },
    {
      name: "preventOverflow",
      options: {
        altAxis: !o,
        tether: o
      }
    }
  ]
}), p = (e) => {
  const t = document.createElement("span");
  return t.innerText = e.innerText || "", e.innerText = "", e.appendChild(t), t;
}, g = (e) => {
  const t = e == null ? void 0 : e.children[0];
  return t || p(e);
}, c = (e) => {
  const t = document.createElement("div");
  return t.className = "tippy-box d-ps-absolute", t.appendChild(e), {
    popper: t
  };
};
export {
  d as BASE_TIPPY_DIRECTIONS,
  m as TIPPY_STICKY_VALUES,
  u as createTippy,
  a as createTippyPopover,
  g as getAnchor,
  c as getContentWrapper,
  f as getPopperOptions
};
//# sourceMappingURL=tippy-utils.js.map
