const f = {
  all: {
    name: "All",
    characters: [
      "€",
      "£",
      "¥",
      "¢",
      "₹",
      "₽",
      "₩",
      "₿",
      "₺",
      "₴",
      "₦",
      "₨",
      "₪",
      "₫",
      "₭",
      "₮",
      "₯",
      "₰",
      "₱",
      "₲",
      "₳",
      "₴",
      "₵",
      "₶",
      "₷",
      "₹",
      "₺",
      "₼",
      "₽",
      "₾",
      "₿",
      '"',
      "'",
      "«",
      "»",
      "„",
      "‟",
      "‹",
      "›",
      "‚",
      "‛",
      "〝",
      "〞",
      "〟",
      "‟",
      "„",
      "©",
      "®",
      "™",
      "°",
      "§",
      "¶",
      "†",
      "‡",
      "•",
      "‣",
      "⁃",
      "‰",
      "‱",
      "′",
      "″",
      "‴",
      "‵",
      "‶",
      "‷",
      "※",
      "‼",
      "‽",
      "‾",
      "‿",
      "⁀",
      "⁁",
      "⁂",
      "⁃",
      "⁇",
      "⁈",
      "⁉",
      "+",
      "-",
      "×",
      "÷",
      "=",
      "≠",
      "≈",
      "≡",
      "≤",
      "≥",
      "<",
      ">",
      "±",
      "∓",
      "∴",
      "∵",
      "∶",
      "∷",
      "∸",
      "∹",
      "∺",
      "∻",
      "∼",
      "∽",
      "∾",
      "∿",
      "≀",
      "≁",
      "≂",
      "≃",
      "≄",
      "≅",
      "≆",
      "≇",
      "≈",
      "≉",
      "≊",
      "≋",
      "≌",
      "≍",
      "≎",
      "≏",
      "≐",
      "≑",
      "≒",
      "≓",
      "≔",
      "≕",
      "≖",
      "≗",
      "≘",
      "≙",
      "≚",
      "≛",
      "≜",
      "≝",
      "≞",
      "≟",
      "≠",
      "≡",
      "≢",
      "≣",
      "≤",
      "≥",
      "≦",
      "≧",
      "≨",
      "≩",
      "≪",
      "≫",
      "≬",
      "≭",
      "≮",
      "≯",
      "≰",
      "≱",
      "≲",
      "≳",
      "≴",
      "≵",
      "≶",
      "≷",
      "≸",
      "≹",
      "≺",
      "≻",
      "≼",
      "≽",
      "≾",
      "≿",
      "À",
      "Á",
      "Â",
      "Ã",
      "Ä",
      "Å",
      "Æ",
      "Ç",
      "È",
      "É",
      "Ê",
      "Ë",
      "Ì",
      "Í",
      "Î",
      "Ï",
      "Ð",
      "Ñ",
      "Ò",
      "Ó",
      "Ô",
      "Õ",
      "Ö",
      "×",
      "Ø",
      "Ù",
      "Ú",
      "Û",
      "Ü",
      "Ý",
      "Þ",
      "ß",
      "à",
      "á",
      "â",
      "ã",
      "ä",
      "å",
      "æ",
      "ç",
      "è",
      "é",
      "ê",
      "ë",
      "ì",
      "í",
      "î",
      "ï",
      "ð",
      "ñ",
      "ò",
      "ó",
      "ô",
      "õ",
      "ö",
      "÷",
      "ø",
      "ù",
      "ú",
      "û",
      "ü",
      "ý",
      "þ",
      "ÿ",
      "¡",
      "¿",
      "‽",
      "‼",
      "⁇",
      "⁈",
      "⁉",
      "※",
      "‾",
      "‿",
      "⁀",
      "⁁",
      "⁂",
      "⁃",
      "←",
      "↑",
      "→",
      "↓",
      "↔",
      "↕",
      "↖",
      "↗",
      "↘",
      "↙",
      "↚",
      "↛",
      "↜",
      "↝",
      "↞",
      "↟",
      "↠",
      "↡",
      "↢",
      "↣",
      "↤",
      "↥",
      "↦",
      "↧",
      "↨",
      "↩",
      "↪",
      "↫",
      "↬",
      "↭",
      "↮",
      "↯",
      "↰",
      "↱",
      "↲",
      "↳",
      "↴",
      "↵",
      "↶",
      "↷",
      "↸",
      "↹",
      "↺",
      "↻",
      "↼",
      "↽",
      "↾",
      "↿",
      "⇀",
      "⇁",
      "⇂",
      "⇃",
      "⇄",
      "⇅",
      "⇆",
      "⇇",
      "⇈",
      "⇉",
      "⇊",
      "⇋",
      "⇌",
      "⇍",
      "⇎",
      "⇏",
      "⇐",
      "⇑",
      "⇒",
      "⇓",
      "⇔",
      "⇕",
      "⇖",
      "⇗",
      "⇘",
      "⇙",
      "⇚",
      "⇛",
      "⇜",
      "⇝",
      "⇞",
      "⇟",
      "⇠",
      "⇡",
      "⇢",
      "⇣",
      "⇤",
      "⇥",
      "⇦",
      "⇧",
      "⇨",
      "⇩",
      "⇪",
      "⇫",
      "⇬",
      "⇭",
      "⇮",
      "⇯",
      "⇰",
      "⇱",
      "⇲",
      "⇳",
      "⇴",
      "⇵",
      "⇶",
      "⇷",
      "⇸",
      "⇹",
      "⇺",
      "⇻",
      "⇼",
      "⇽",
      "⇾",
      "⇿"
    ]
  },
  currency: {
    name: "Currency",
    characters: ["€", "£", "¥", "¢", "₹", "₽", "₩", "₿", "₺", "₴", "₦", "₨", "₪", "₫", "₭", "₮", "₯", "₰", "₱", "₲", "₳", "₵", "₶", "₷", "₼", "₾", "₿"]
  },
  text: {
    name: "Text",
    characters: ["©", "®", "™", "°", "§", "¶", "†", "‡", "•", "‣", "⁃", "‰", "‱", "′", "″", "‴", "‵", "‶", "‷", "※", "‼", "‽", "‾", "‿", "⁀", "⁁", "⁂"]
  },
  quotation: {
    name: "Quotation",
    characters: ['"', "'", "«", "»", "„", "‟", "‹", "›", "‚", "‛", "〝", "〞", "〟"]
  },
  mathematical: {
    name: "Mathematical",
    characters: ["+", "-", "×", "÷", "=", "≠", "≈", "≡", "≤", "≥", "<", ">", "±", "∓", "∴", "∵", "∶", "∷", "∸", "∹", "∺", "∻", "∼", "∽", "∾", "∿", "≀", "≁", "≂", "≃", "≄", "≅", "≆", "≇", "≉", "≊", "≋", "≌", "≍", "≎", "≏", "≐", "≑", "≒", "≓", "≔", "≕", "≖", "≗", "≘", "≙", "≚", "≛", "≜", "≝", "≞", "≟", "≢", "≣", "≦", "≧", "≨", "≩", "≪", "≫", "≬", "≭", "≮", "≯", "≰", "≱", "≲", "≳", "≴", "≵", "≶", "≷", "≸", "≹", "≺", "≻", "≼", "≽", "≾", "≿"]
  },
  "extended-latin": {
    name: "Extended Latin",
    characters: ["À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï", "Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "×", "Ø", "Ù", "Ú", "Û", "Ü", "Ý", "Þ", "ß", "à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ", "ö", "÷", "ø", "ù", "ú", "û", "ü", "ý", "þ", "ÿ"]
  },
  symbols: {
    name: "Symbols",
    characters: ["¡", "¿", "‽", "‼", "⁇", "⁈", "⁉", "※", "‾", "‿", "⁀", "⁁", "⁂", "⁃"]
  },
  arrows: {
    name: "Arrows",
    characters: ["←", "↑", "→", "↓", "↔", "↕", "↖", "↗", "↘", "↙", "↚", "↛", "↜", "↝", "↞", "↟", "↠", "↡", "↢", "↣", "↤", "↥", "↦", "↧", "↨", "↩", "↪", "↫", "↬", "↭", "↮", "↯", "↰", "↱", "↲", "↳", "↴", "↵", "↶", "↷", "↸", "↹", "↺", "↻", "↼", "↽", "↾", "↿", "⇀", "⇁", "⇂", "⇃", "⇄", "⇅", "⇆", "⇇", "⇈", "⇉", "⇊", "⇋", "⇌", "⇍", "⇎", "⇏", "⇐", "⇑", "⇒", "⇓", "⇔", "⇕", "⇖", "⇗", "⇘", "⇙", "⇚", "⇛", "⇜", "⇝", "⇞", "⇟", "⇠", "⇡", "⇢", "⇣", "⇤", "⇥", "⇦", "⇧", "⇨", "⇩", "⇪", "⇫", "⇬", "⇭", "⇮", "⇯", "⇰", "⇱", "⇲", "⇳", "⇴", "⇵", "⇶", "⇷", "⇸", "⇹", "⇺", "⇻", "⇼", "⇽", "⇾", "⇿"]
  }
}, y = {
  "€": "euro",
  "£": "pound",
  "¥": "yen",
  "¢": "cent",
  "₹": "rupee",
  "₽": "ruble",
  "₩": "won",
  "₿": "bitcoin",
  '"': "quote",
  "'": "apostrophe",
  "«": "left angle quote",
  "»": "right angle quote",
  "„": "low quote",
  "©": "copyright",
  "®": "registered",
  "™": "trademark",
  "°": "degree",
  "§": "section",
  "¶": "paragraph",
  "†": "dagger",
  "‡": "double dagger",
  "•": "bullet",
  "‰": "per mille",
  "′": "prime",
  "″": "double prime",
  "+": "plus",
  "-": "minus",
  "×": "multiplication",
  "÷": "division",
  "=": "equals",
  "≠": "not equal",
  "≈": "approximately",
  "≡": "identical",
  "≤": "less or equal",
  "≥": "greater or equal",
  "±": "plus minus",
  À: "a grave",
  Á: "a acute",
  Â: "a circumflex",
  Ã: "a tilde",
  Ä: "a diaeresis",
  Ç: "c cedilla",
  "←": "left arrow",
  "↑": "up arrow",
  "→": "right arrow",
  "↓": "down arrow",
  "↔": "left right arrow"
};
let v = !1;
const z = '[data-theme="dark"], .dark, .editora-theme-dark', S = (r) => r ? r.nodeType === Node.ELEMENT_NODE ? r : r.parentElement : null, b = () => {
  const r = window.getSelection();
  return !r || r.rangeCount === 0 ? null : S(r.getRangeAt(0).startContainer)?.closest('.rte-content, .editora-content, [contenteditable="true"]') || null;
}, A = (r) => {
  const e = window.getSelection();
  if (!e || e.rangeCount === 0) return null;
  const a = e.getRangeAt(0);
  return !r.contains(a.startContainer) || !r.contains(a.endContainer) ? null : a.cloneRange();
}, L = (r) => {
  const e = document.createRange();
  return e.selectNodeContents(r), e.collapse(!1), e;
}, T = (r, e, a) => {
  if (e !== a) {
    if (typeof window.execEditorCommand == "function") {
      window.execEditorCommand("recordDomTransaction", r, e, a);
      return;
    }
    if (typeof window.executeEditorCommand == "function")
      try {
        window.executeEditorCommand("recordDomTransaction", { editor: r, beforeHTML: e, afterHTML: a });
      } catch {
      }
  }
}, q = (r) => {
  const e = r || b();
  return e ? !!e.closest(z) : !1;
}, N = () => {
  if (typeof document > "u") return;
  const r = "special-characters-plugin-styles";
  if (document.getElementById(r)) return;
  const e = document.createElement("style");
  e.id = r, e.textContent = `
    .special-characters-overlay {
      --rte-sc-overlay-bg: rgba(15, 23, 36, 0.56);
      --rte-sc-dialog-bg: #ffffff;
      --rte-sc-dialog-text: #101828;
      --rte-sc-border: #d6dbe4;
      --rte-sc-subtle-bg: #f7f9fc;
      --rte-sc-subtle-hover: #eef2f7;
      --rte-sc-muted-text: #5f6b7d;
      --rte-sc-accent: #1f75fe;
      --rte-sc-accent-strong: #165fd6;
      --rte-sc-ring: rgba(31, 117, 254, 0.18);
      --rte-picker-dialog-width: min(640px, 96vw);
      --rte-picker-dialog-max-height: min(560px, 86vh);
      --rte-picker-dialog-radius: 12px;
      --rte-picker-search-wrap-padding: 12px;
      --rte-picker-search-height: 38px;
      --rte-picker-search-font-size: 13px;
      --rte-picker-search-radius: 8px;
      --rte-picker-tabs-width: 156px;
      --rte-picker-tab-padding-y: 10px;
      --rte-picker-tab-padding-x: 12px;
      --rte-picker-tab-font-size: 13px;
      --rte-picker-grid-padding: 12px;
      --rte-picker-grid-gap: 6px;
      --rte-picker-cell-size: 34px;
      --rte-picker-cell-font-size: 17px;
      --rte-picker-cell-radius: 7px;
      --rte-picker-mobile-tab-min-width: 82px;
      --rte-picker-mobile-cell-size: 32px;
      --rte-picker-mobile-grid-gap: 5px;
      --rte-picker-mobile-dialog-max-height: 88vh;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: var(--rte-sc-overlay-bg);
      backdrop-filter: blur(2px);
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 10000;
      padding: 16px;
      box-sizing: border-box;
    }

    .special-characters-overlay.rte-ui-theme-dark {
      --rte-sc-overlay-bg: rgba(2, 8, 20, 0.72);
      --rte-sc-dialog-bg: #202938;
      --rte-sc-dialog-text: #e8effc;
      --rte-sc-border: #49566c;
      --rte-sc-subtle-bg: #2a3444;
      --rte-sc-subtle-hover: #344256;
      --rte-sc-muted-text: #a5b1c5;
      --rte-sc-accent: #58a6ff;
      --rte-sc-accent-strong: #4598f4;
      --rte-sc-ring: rgba(88, 166, 255, 0.22);
    }

    .special-characters-dialog {
      background: var(--rte-sc-dialog-bg);
      color: var(--rte-sc-dialog-text);
      border: 1px solid var(--rte-sc-border);
      border-radius: var(--rte-picker-dialog-radius);
      box-shadow: 0 24px 48px rgba(10, 15, 24, 0.28);
      width: var(--rte-picker-dialog-width);
      max-height: var(--rte-picker-dialog-max-height);
      display: flex;
      flex-direction: column;
      overflow: hidden;
    }

    .special-characters-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 16px 20px;
      border-bottom: 1px solid var(--rte-sc-border);
      background: linear-gradient(180deg, rgba(127, 154, 195, 0.08) 0%, rgba(127, 154, 195, 0) 100%);
    }

    .special-characters-header h2 {
      margin: 0;
      font-size: 18px;
      font-weight: 600;
      color: var(--rte-sc-dialog-text);
    }

    .special-characters-close {
      background: none;
      border: none;
      font-size: 24px;
      cursor: pointer;
      color: var(--rte-sc-muted-text);
      padding: 0;
      width: 32px;
      height: 32px;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 8px;
      transition: background-color 0.16s ease, color 0.16s ease;
    }

    .special-characters-close:hover {
      background-color: var(--rte-sc-subtle-hover);
      color: var(--rte-sc-dialog-text);
    }

    .special-characters-content {
      display: flex;
      flex: 1;
      overflow: hidden;
    }

    .special-characters-main-content {
      flex: 1;
      display: flex;
      flex-direction: column;
      overflow: hidden;
      min-width: 0;
    }

    .special-characters-search {
      padding: var(--rte-picker-search-wrap-padding) var(--rte-picker-search-wrap-padding) 0 var(--rte-picker-search-wrap-padding);
    }

    .special-characters-search-input {
      width: 100%;
      height: var(--rte-picker-search-height);
      padding: 8px 12px;
      border: 1px solid var(--rte-sc-border);
      border-radius: var(--rte-picker-search-radius);
      font-size: var(--rte-picker-search-font-size);
      color: var(--rte-sc-dialog-text);
      background-color: var(--rte-sc-subtle-bg);
      transition: border-color 0.2s ease, box-shadow 0.2s ease;
      box-sizing: border-box;
    }

    .special-characters-search-input::placeholder {
      color: var(--rte-sc-muted-text);
    }

    .special-characters-search-input:focus {
      outline: none;
      border-color: var(--rte-sc-accent);
      box-shadow: 0 0 0 3px var(--rte-sc-ring);
    }

    .special-characters-tabs {
      display: flex;
      flex-direction: column;
      width: var(--rte-picker-tabs-width);
      border-right: 1px solid var(--rte-sc-border);
      background-color: var(--rte-sc-subtle-bg);
      overflow-y: auto;
    }

    .special-characters-tab {
      padding: var(--rte-picker-tab-padding-y) var(--rte-picker-tab-padding-x);
      border: none;
      background: none;
      text-align: left;
      cursor: pointer;
      font-size: var(--rte-picker-tab-font-size);
      color: var(--rte-sc-muted-text);
      border-bottom: 1px solid var(--rte-sc-border);
      transition: all 0.2s ease;
      line-height: 1.25;
    }

    .special-characters-tab:hover {
      background-color: var(--rte-sc-subtle-hover);
      color: var(--rte-sc-dialog-text);
    }

    .special-characters-tab.active {
      background-color: var(--rte-sc-accent);
      color: #fff;
      font-weight: 500;
    }

    .special-characters-grid {
      padding: var(--rte-picker-grid-padding);
      overflow-y: auto;
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(var(--rte-picker-cell-size), 1fr));
      gap: var(--rte-picker-grid-gap);
      contain: content;
    }

    .special-characters-item {
      width: var(--rte-picker-cell-size);
      height: var(--rte-picker-cell-size);
      display: flex;
      align-items: center;
      justify-content: center;
      border: 1px solid var(--rte-sc-border);
      background: var(--rte-sc-subtle-bg);
      border-radius: var(--rte-picker-cell-radius);
      cursor: pointer;
      font-size: var(--rte-picker-cell-font-size);
      transition: all 0.2s ease;
      color: var(--rte-sc-dialog-text);
    }

    .special-characters-item:hover {
      background-color: var(--rte-sc-accent);
      border-color: var(--rte-sc-accent);
      color: #fff;
      transform: scale(1.05);
    }

    .special-characters-item:active {
      transform: scale(0.95);
    }

    .special-characters-no-results {
      grid-column: 1 / -1;
      text-align: center;
      color: var(--rte-sc-muted-text);
      font-size: 14px;
      padding: 40px 20px;
      background-color: var(--rte-sc-subtle-bg);
      border-radius: 8px;
      border: 1px solid var(--rte-sc-border);
    }

    @media (max-width: 768px) {
      .special-characters-dialog {
        width: 96%;
        max-height: var(--rte-picker-mobile-dialog-max-height);
      }

      .special-characters-content {
        flex-direction: column;
      }

      .special-characters-tabs {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid var(--rte-sc-border);
        flex-direction: row;
        overflow-x: auto;
      }

      .special-characters-tab {
        border-bottom: none;
        border-right: 1px solid var(--rte-sc-border);
        white-space: nowrap;
        min-width: var(--rte-picker-mobile-tab-min-width);
      }

      .special-characters-grid {
        grid-template-columns: repeat(auto-fill, minmax(var(--rte-picker-mobile-cell-size), 1fr));
        gap: var(--rte-picker-mobile-grid-gap);
      }

      .special-characters-item {
        width: var(--rte-picker-mobile-cell-size);
        height: var(--rte-picker-mobile-cell-size);
        font-size: 16px;
      }
    }
  `, document.head.appendChild(e);
}, D = (r, e, a) => {
  const c = e || b();
  if (!c) return;
  const l = a && c.contains(a.commonAncestorContainer) ? a : L(c), d = c.innerHTML;
  l.deleteContents();
  const i = document.createTextNode(r);
  l.insertNode(i), l.setStartAfter(i), l.setEndAfter(i);
  const o = window.getSelection();
  o && (o.removeAllRanges(), o.addRange(l));
  const h = c.innerHTML;
  T(c, d, h), c.dispatchEvent(new window.Event("input", { bubbles: !0 })), c.focus();
}, R = (r) => {
  if (typeof window > "u" || v) return;
  v = !0, N();
  const e = r || b(), a = e ? A(e) : null;
  let c = "all", l = "", d = null;
  const i = document.createElement("div");
  i.className = "special-characters-overlay", q(r) && i.classList.add("rte-ui-theme-dark");
  const o = document.createElement("div");
  o.className = "special-characters-dialog", o.setAttribute("role", "dialog"), o.setAttribute("aria-modal", "true"), o.innerHTML = `
    <div class="special-characters-header">
      <h2>Insert Special Characters</h2>
      <button class="special-characters-close">×</button>
    </div>
    <div class="special-characters-content">
      <div class="special-characters-tabs">
        ${Object.keys(f).map((t) => `
          <button class="special-characters-tab ${c === t ? "active" : ""}" data-category="${t}">
            ${f[t].name}
          </button>
        `).join("")}
      </div>
      <div class="special-characters-main-content">
        <div class="special-characters-search">
          <input
            type="text"
            placeholder="Search characters..."
            class="special-characters-search-input"
          >
        </div>
        <div class="special-characters-grid"></div>
      </div>
    </div>
  `;
  const h = o.querySelector(".special-characters-tabs"), u = o.querySelector(".special-characters-grid"), x = o.querySelector(".special-characters-search-input"), E = o.querySelector(".special-characters-close"), C = () => f[c].characters.filter((t) => {
    if (!l.trim()) return !0;
    const s = l.toLowerCase();
    return t.toLowerCase().includes(s) || (y[t] || "").toLowerCase().includes(s);
  }), w = () => {
    h?.querySelectorAll(".special-characters-tab").forEach((t) => {
      t.classList.toggle("active", t.getAttribute("data-category") === c);
    });
  }, m = () => {
    if (!u) return;
    const t = C();
    if (u.textContent = "", t.length === 0) {
      const s = document.createElement("div");
      s.className = "special-characters-no-results", s.textContent = `No characters found for "${l}"`, u.appendChild(s);
      return;
    }
    t.forEach((s) => {
      const n = document.createElement("button");
      n.type = "button", n.className = "special-characters-item", n.dataset.char = s, n.title = y[s] || s, n.textContent = s, u.appendChild(n);
    });
  }, g = () => {
    d !== null && (window.clearTimeout(d), d = null), i.parentNode && i.parentNode.removeChild(i), v = !1, document.removeEventListener("keydown", k, !0);
  }, k = (t) => {
    t.key === "Escape" && (t.preventDefault(), t.stopPropagation(), g());
  };
  E?.addEventListener("click", g), h?.addEventListener("click", (t) => {
    const n = t.target.closest(".special-characters-tab");
    if (!n) return;
    const p = n.getAttribute("data-category");
    !p || c === p || (c = p, w(), m());
  }), x?.addEventListener("input", (t) => {
    l = t.target.value, d !== null && window.clearTimeout(d), d = window.setTimeout(() => {
      d = null, m();
    }, 90);
  }), u?.addEventListener("click", (t) => {
    const n = t.target.closest(".special-characters-item");
    if (!n) return;
    const p = n.dataset.char;
    p && (D(p, e, a), g());
  }), i.addEventListener("click", (t) => {
    t.target === i && g();
  }), document.addEventListener("keydown", k, !0), w(), m(), i.appendChild(o), document.body.appendChild(i), requestAnimationFrame(() => x?.focus());
}, j = () => ({
  name: "specialCharacters",
  toolbar: [{
    label: "Special Characters",
    command: "insertSpecialCharacter",
    icon: '<svg width="24" height="24" focusable="false"><path d="M15 18h4l1-2v4h-6v-3.3l1.4-1a6 6 0 0 0 1.8-2.9 6.3 6.3 0 0 0-.1-4.1 5.8 5.8 0 0 0-3-3.2c-.6-.3-1.3-.5-2.1-.5a5.1 5.1 0 0 0-3.9 1.8 6.3 6.3 0 0 0-1.3 6 6.2 6.2 0 0 0 1.8 3l1.4.9V20H4v-4l1 2h4v-.5l-2-1L5.4 15A6.5 6.5 0 0 1 4 11c0-1 .2-1.9.6-2.7A7 7 0 0 1 6.3 6C7.1 5.4 8 5 9 4.5c1-.3 2-.5 3.1-.5a8.8 8.8 0 0 1 5.7 2 7 7 0 0 1 1.7 2.3 6 6 0 0 1 .2 4.8c-.2.7-.6 1.3-1 1.9a7.6 7.6 0 0 1-3.6 2.5v.5Z" fill-rule="evenodd"></path></svg>'
  }],
  commands: {
    insertSpecialCharacter: (r, e) => {
      const a = e?.contentElement instanceof HTMLElement ? e.contentElement : b();
      return R(a), !0;
    }
  },
  keymap: {}
});
export {
  j as SpecialCharactersPlugin
};
